design and implementation of software components for a remote laboratory j. fernandez, j. crespo, r....

30
DESIGN AND IMPLEMENTATION OF SOFTWARE COMPONENTS FOR A REMOTE LABORATORY J. Fernandez, J. Crespo, R. Barber, J. Carretero University Carlos III of Madrid Computer Science and Engineering Systems Engineering and Automation Department

Upload: alberto-brownlee

Post on 16-Dec-2015

225 views

Category:

Documents


3 download

TRANSCRIPT

DESIGN AND IMPLEMENTATION OF SOFTWARE COMPONENTS FOR A REMOTE LABORATORY

J. Fernandez, J. Crespo, R. Barber, J. Carretero

University Carlos III of MadridComputer Science and Engineering

Systems Engineering and Automation Department

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

GoalsGoals Study, develop and compare Study, develop and compare different technologies for remote different technologies for remote labslabs

Study and test connectivity with Study and test connectivity with hardware in real timehardware in real time

Propose an approach of Propose an approach of architecture for development of architecture for development of remote labsremote labs

Develop main componentsDevelop main components Develop practices for control Develop practices for control studentsstudents

INTRODUCTIONINTRODUCTION

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

Real practice difficulties:Real practice difficulties:

Limited number of laboratory Limited number of laboratory resourcesresources

Limited time for laboratory Limited time for laboratory resourcesresources

Cost of software licensesCost of software licenses

VIRTUAL & REMTOTE LABSVIRTUAL & REMTOTE LABS

INTED 2013

Solution:Solution:

VIRTUAL & REMTOTE LABSVIRTUAL & REMTOTE LABS

Student Lab

Web ServerAnywhere

INTED 2013

Possibilities:Possibilities: Simulation practicesSimulation practices Remote practices with hardwareRemote practices with hardware

Advantages:Advantages: More time for practicesMore time for practices No schedulesNo schedules

VIRTUAL & REMTOTE LABSVIRTUAL & REMTOTE LABS

INTED 2013

Remote laboratoriesRemote laboratories

MWS: RECOLAB (UMH)MWS: RECOLAB (UMH) EJS: (UNED, UM)EJS: (UNED, UM) WLAB (UC)WLAB (UC)

VIRTUAL & REMOTE LABSVIRTUAL & REMOTE LABS

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

Goals to be fulfilled :Goals to be fulfilled :

Allow to remotely access physical Allow to remotely access physical resources.resources.

Compose teaching projects that require Compose teaching projects that require resources physically distributed.resources physically distributed.

Expand the resulting framework with new Expand the resulting framework with new resources and new teaching projectsresources and new teaching projects

PROPOSED ARCHITETUREPROPOSED ARCHITETURE

INTED 2013

Requirements:Requirements: The system should allow developing The system should allow developing

teaching project applications that teaching project applications that involve using remote resources involve using remote resources physically distributed.physically distributed.

The framework must allow to attach or to The framework must allow to attach or to detach new resources without stopping detach new resources without stopping the system.the system.

The project application should be able The project application should be able to send control commands to each to send control commands to each resource and to read the response and resource and to read the response and the state of the resource, all of this the state of the resource, all of this using a standard interface.using a standard interface.

The user should be able to book all the The user should be able to book all the required resources for a project before required resources for a project before executing it.executing it.

PROPOSED ARCHITETUREPROPOSED ARCHITETURE

INTED 2013

Software specifications:Software specifications:

Multiplatform architectureMultiplatform architecture Distributed architectureDistributed architecture Modular management of the Modular management of the resourcesresources

Common interfaceCommon interface Extensible frameworkExtensible framework

PROPOSED ARCHITETUREPROPOSED ARCHITETURE

INTED 2013

Computing systems:Computing systems:

Laboratory server: Laboratory server: The laboratory server The laboratory server is the computing system that is directly is the computing system that is directly attached to the hardware resource that attached to the hardware resource that is being controlled.is being controlled.

Main server: Main server: The main server is the one The main server is the one in charge of managing all the laboratory in charge of managing all the laboratory servers.servers.

Client device: Client device: It is where the teaching It is where the teaching project is run.project is run.

PROPOSED ARCHITETUREPROPOSED ARCHITETURE

INTED 2013

PROPOSED ARCHITETUREPROPOSED ARCHITETURE

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

These computing systems are classified as These computing systems are classified as follows:follows:

Laboratory server: Laboratory server: The laboratory server The laboratory server is the computing system that is directly is the computing system that is directly attached to the hardware resource that attached to the hardware resource that is being controlled.is being controlled.

Main server: Main server: The main server is the one The main server is the one in charge of managing all the laboratory in charge of managing all the laboratory servers.servers.

Client device: Client device: It is where the teaching It is where the teaching project is run.project is run.

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Main database: Main database: Stores the Stores the general information of general information of the system, which is the system, which is accessed and updated by accessed and updated by the framework main the framework main components. components.

The database contains all The database contains all information of the information of the laboratories and the laboratories and the resources attached to resources attached to them. them.

Also information about Also information about the authorized users of the authorized users of the systems and which the systems and which user is currently using user is currently using (exclusively) which (exclusively) which resourceresource..

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Application serverApplication server: Exports the web services : Exports the web services required by the framework (provider service required by the framework (provider service and monitor service). The provider service and monitor service). The provider service export the management functionality for each export the management functionality for each resource while the monitor service allows to resource while the monitor service allows to keep track of the current state of the system keep track of the current state of the system and the list of existing resources. and the list of existing resources.

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Laboratory manager: Laboratory manager: Act as a request Act as a request manager for all the requests that the manager for all the requests that the clients perform to the resources managed by clients perform to the resources managed by the laboratory using the web services. Each the laboratory using the web services. Each one has its own local database for local one has its own local database for local configuration but it also uses the main configuration but it also uses the main database. database.

The task of this module is mainly to launch The task of this module is mainly to launch or to stop the module that manages the or to stop the module that manages the resource requested by the client. It also resource requested by the client. It also manages the registration and deletion of manages the registration and deletion of new resources. Furthermore, it establishes new resources. Furthermore, it establishes the connection between the client and the the connection between the client and the module of the resource using a socket module of the resource using a socket interface.interface.

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Laboratory managerLaboratory manager

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Resource manager: Resource manager: This module contains the This module contains the logic that allows the user to control the logic that allows the user to control the resource, execute commands on the resource resource, execute commands on the resource and read the state of the resource. and read the state of the resource.

It can be directly attached to the hardware It can be directly attached to the hardware or it can use external applications. Each or it can use external applications. Each manager is designed specifically for each manager is designed specifically for each kind of resource.kind of resource.

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

Client application: Client application: This component can be This component can be implemented as a stand-alone program or as implemented as a stand-alone program or as a web page. The only requirement is that it a web page. The only requirement is that it should use the web services to connect with should use the web services to connect with the application server and sockets to the application server and sockets to connect with each resource manager.connect with each resource manager.

COMPONENTS & FUNCTIONALITYCOMPONENTS & FUNCTIONALITY

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Approach to the problemApproach to the problem

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

Lab equipment:Lab equipment: CC Motor 4000RPM, 24Vcc CC Motor 4000RPM, 24Vcc Advantech PCI-1711Advantech PCI-1711 PC & cameraPC & camera

Example of remote laboratoryExample of remote laboratory

INTED 2013

Example of remote laboratoryExample of remote laboratoryInterface for the tests:Interface for the tests:

INTED 2013

Example of remote laboratoryExample of remote laboratory

Remote practical session:Remote practical session: Identification of the experimental Identification of the experimental

servomotor: first order plant servomotor: first order plant

INTED 2013

CONTENTSCONTENTS

IntroductionIntroduction

Virtual and Remote LabsVirtual and Remote Labs

Approach to the problemApproach to the problem

Proposed architectureProposed architecture

Framework components and Framework components and functionalityfunctionality

Example of remote laboratoryExample of remote laboratory

ConclusionsConclusions

INTED 2013

Nowadays, the use of new Nowadays, the use of new technologies for the implementation technologies for the implementation of remote laboratories is a leading of remote laboratories is a leading research topic. research topic.

In this work a framework for remote In this work a framework for remote labs has been presented. labs has been presented.

This framework allows the This framework allows the integration of different resources integration of different resources and platforms for its use in and platforms for its use in laboratory practice, taking into laboratory practice, taking into account the management of them.account the management of them.

CONCLUSIONSCONCLUSIONS

INTED 2013

The main components that make up the The main components that make up the platform have been developed. platform have been developed. Allowing to develop a first Allowing to develop a first laboratory practice prototype of an laboratory practice prototype of an engineering subject. engineering subject.

The student can book the platform, The student can book the platform, run an experiment and display their run an experiment and display their results from home, allowing to results from home, allowing to perform the practice as many times perform the practice as many times as needed without temporal as needed without temporal restrictions and without having to restrictions and without having to travel to the educational centre or travel to the educational centre or research centre.research centre.

CONCLUSIONSCONCLUSIONS