Fields of applications for hybrid online labs

Based on a grid concept of an interactive hybrid online laboratory we will describe different fields of applications in different learning scenarios. The infrastructure is based on a universal grid concept which guaranties a reliable, flexible as well as robust usage of this online lab. By using the REAL online lab, students are able to design control algorithms with different specification techniques to control electro-mechanical models in the online lab. Additionally, the reconfigurable rapid prototyping platform of the REAL system can be used to test all the taught topics of a given lectures in the field of digital system design. Finally, a special demonstration platform (a ball in a labyrinth on a balance plate) can be used to give the students a better feeling about the possibilities and limitations of remote control and observation via Internet and to evaluate these technologies critically. The implemented online lab infrastructure is based on the iLab architecture of the MIT, which allows to interconnect online labs and to exchange remote lab experiments among different universities worldwide.


INTRODUCTION
Our Integrated Communication Systems Group at the Ilmenau University of Technology has many years of experience in integrated hard-and software systems and over 10 years of experience in dealing with Internetsupported teaching in the field of digital system design ( [1] and [2]). We have developed a new teaching concept, called "Living Pictures" [3] that we use in several phases of the learning process. Living Pictures are highly interactive Java applets that can be used for demonstrations as well as for experimental purposes, and also serve as tools in certain steps of the design process of digital systems. To complete the learning outcomes by own experiences, the students have to pass hands on examination in a lab. A task during this examination is to design an algorithm for a control system that controls one of various physical systems, for instance an electromechanical model of an elevator or a production cell.
For all students, hands-on experiences are important to deepen their knowledge about topics they learned during lectures (see Figure 1). At our university we offer an online laboratory, which gives the students the possibility to work on real physical systems without the need to stand in line at a lab or the need to take care of opening hours.
With our hybrid 1 online lab we want to offer the students a working environment that is as close as possible 1 Hybrid online labs provide both remote experiments on real electromechanical models (physical systems) in the remote lab as well as simulation models of these physical systems in virtual labs. to a real world laboratory. Under real laboratory conditions disturbances can appear and lead to failures of the control algorithm that cannot be detected under virtual lab conditions. Therefore, it is important to include such real disruptive factors for a closer relation to practical conditions. Furthermore, the online lab should offer the students stimulus with regards to the design of safety critical control systems. By the conception of our lab (described in the next section), the virtual worlds were embedded within a real laboratory.
In principle, we would like to concentrate on giving students the chance to check their prepared control algorithms  via Web-based simulation,  via Web-based remote control of the existing physical system (that means before the tutorial course), in real environmental conditions (which can be interactively influenced by themselves) and to correct or modify the received results.
Currently, there are no common standards for the architecture of remote labs. This is the reason why universities develop their own remote lab solutions -suitable for their specific requirements, for example [4], [5], [6] and [7]. This handicaps a networking of different online labs among each other and also a usage by different institutions. Missing uniform interfaces prevent the programming of universal plug-ins and other software modules.
II. ARCHITECTURE OF THE REAL SYSTEM In the following, we will describe a hybrid interactive online lab, supporting all the design steps for complex control tasks to control various electro-mechanical models -the REAL 2 system. It was developed at the Department of Integrated Communication Systems at the Ilmenau University of Technology [8] -see Figure 2. The implemented REAL infrastructure is based on the iLab Shared Architecture of the MIT (see Figure 3) which is meanwhile established as a standardized implementation for online laboratories and will be implemented in more and more locations. Furthermore, it allows to interconnect online labs and to exchange remote lab experiments among different universities worldwide. As mentioned in many papers (e.g., [9], [10] and [11]), interactive online labs can open opportunities which allow an experimental approach for a wider audience and also an independence of opening times of the laboratory room.
Interactive labs will be used, when  an experiment requires real-time processing or  the user wants to observe the whole physical system (the electro-mechanical models) during the experiment or  some parameters (e.g., input variables to a control system) need to be changed interactively. They offer various features like visualization and animation, which allows to observe and to test all the properties of the design. In connection with formal design techniques, simulation and prototyping are used to establish a foundation for the development of a reliable system design. To check the functionality of the whole design, some special simulation and validation features are included as integral part of the REAL system. This offers various possibilities for the execution of simulations, such as: observation of real processes (e.g., in the fields of control engineering, robotics, tele-control engineering), dealing with the integrated and interactive usage of modern Internet and intranet technologies, like WWW, HTML, Java, etc.
 usage of simulation models of the physical system for visual prototyping,  step by step and parallel execution of these prototypes,  visualization of the simulation process with the tools also used for specification,  features for test pattern generation and  code generation for hardware and software synthesis. REAL offers a Web-based environment supporting the above mentioned features to generate and execute a design by using simulation models. An example will be given in Section III.A.
At any time the students have the chance to adjust their algorithms in case of faults. Therefore, they are able to achieve a fault free solution (a validated control algorithm) step by step. For more details see [2], [12] and [13].
Our online lab is used for teaching practical lessons as well as giving hands-on experiences for the development of embedded electronics. This is not done using on-site lessons, but remote via the Internet. This has the advantage that courses can be offered internationally world-wide and gives students from different countries, speaking different languages, the same access and equal possibilities in the lab. Additionally, even for local students, the lab offers extended opening hours (twentyfour-seven) when compared to a regular lab. Besides the advantages for students, this also reduces the costs for academic teaching and improves the quality by offering more practical training possibilities.
One implementation challenge is to protect the physical systems in the lab against wrong control algorithms of students without defining too many constraints. Students should be free in their decisions and develop own creative solutions. They can implement their own design strategies. A reference design and a method to check the students' design against this reference is needed [14] to protect the physical system in the lab (see Figure 4). The reference design should be independent of the used control unit and the development tools. This is done by the protection unit of the physical system. Figure 5 illustrates the grid architecture of the REAL system. The server side infrastructure (remote lab) consists of three parts:  an internal serial remote lab bus to interconnect all parts of the remote lab,  a bus protection unit to interface the control units to the remote lab bus and to protect the bus from blockage, misuse and damage as well as  a physical system protection unit, which protects the physical systems (the electro-mechanical models in the remote lab) against deliberate damage or accidentally wrong control commands and which offers different access and control mechanisms. For a more detailed description of this grid concept as well as the main components see [15,16]. Figure 5. Grid architecture of the REAL system (server side) with Web-client The interconnection between the Web-control units and the selected physical systems during a remote lab work session (experiment) as well as the webcam handling is done by the lab server as part of the iLab architecture (see Figure 3). The iLab Service Broker is mainly responsible for the user management. During a running experiment, the client application will interact directly with the online lab infrastructure (see Figure 5). Details about the iLab architecture are beyond the scope of this paper. Please refer to [17] for further information.
III. FIELDS OF APPLICATIONS Based on this flexible online lab structure we offer different operation modes to test the developed control task. Simulation and visual prototyping help to find functional errors. Before starting practical work on real systems, simulations and animations in "virtual worlds" are often used to verify the developed solutions. The behavior of the physical system that should be controlled, as well as its environment, will be emulated as a simulation model. The student can influence this "virtual world" and analyze the caused reaction of his control algorithm. Fehler! Verweisquelle konnte nicht gefunden werden. Figure 6 shows an example of such a simulation model.
These steps have to be executed until no more errors are detected. But there is an essential disadvantage in this method. Real disruptive factors (e.g., failure of single components, mechanical problems or process variations) cannot be recognized by the underlying virtual environmental model. Generally, only a simulation of predetermined malfunctions is possible. After some time, all these effects are well known in the student's community. Unconsidered sources of errors lead to undetected failures of the control because the corresponding environmental situation was not simulated before [13]. That is why a fault free design algorithm finally should be tested on real physical systems (e.g., the water level control, shown in Figure 6) in the online laboratory as well. In the following we will describe possible operation modes of the REAL system based on the schematic view in Figure 4:  Via the Web-client (e.g., a Java applet running on the student's PC at home) the physical system (e.g., the electro-mechanical model of the water level control) can be controlled by using different control units (e.g., microcontroller, FPGA, PLC). By using this Webinterface, the student is able to:  handle the experiment (e.g., start, stop, reset),  change environmental variables if necessary and  watch the experiment by manipulating environmental variables inside an I/O monitor or by observing the control of the physical system directly via a webcam. Via an optional local control panel the student is able to manipulate the lab environment (e.g., the water level in the tank) or the actuators (e.g., the pump) when working on-site. Heart of this architecture is the physical hardware protection unit, which is described in detail in [15,16].

A. Stand-alone Mode -Visual Prototyping
In case of using finite state machines (FSM) for specification, based upon an automaton graph, a student can use the JGIFT design environment [20] of the REAL system.
Assuming the student achieved a validated design, he gets the required next state and the output equations. By accessing the Web-browser interface of the REAL system, he is able to enter his algorithm (the received equations), handle the laboratory experiment (e.g., start, stop, reset) and change environmental variables if necessary. The control algorithm is executed by an interpreter, running inside the student's client PC (e.g., implemented as Java applet). No Internet connectivity to the physical systems in the remote lab is necessary for this mode (see Figure 8).  Figure 9 gives an impression of the verification and simulation features of the Web-based environment of the REAL system. The simulation model will be driven directly through the I/O signals by the control algorithm running on the embedded interpreter within the applet.

B. Remote Control Mode -via Web-client
This operation mode is also for the FSM based specification based on equations. In this case, the physical system will be controlled via the Internet "from a distance" through the interpreter running inside the student's client PC. No additional control units in the remote lab are necessary (see Figure 10). In this case, only the input and output signals of the physical system will be transferred via Internet. An example of such a Web-client is shown in Figure 11.

C. Remote Control Mode -via Control Unit
This mode can be used to realize software or hardware oriented control tasks via connected microcontrollers or FPGAs as control units (see Figure 12). Students can implement their control algorithm directly into a microcontroller for a software-oriented implementation. Therefore, they use common (non-commercial) development tools, for example MPLAB IDE and/or C18 C-compiler by Microchip [21], or AVR Studio by Atmel [22], to develop Assembler-and/or C-coded software projects. After compilation, the generated software control algorithm is transferred via REAL Web-interface to the remote lab, where the hex code is programmed into the microcontroller (see Figure 13). Figure 13. Software-oriented design of the control task Now, the student can begin with his experiment, to check if his algorithm fulfills the requirements of the given control task.
If a student prefers an exclusive hardware-oriented design using an FPGA and applying a hardware description language like VHDL as specification technique, he can prepare his design with common development tools, for example ISE, Quartus II, Diamond or others. The generated bit file is uploaded via the REAL Web-interface to the remote lab, where the FPGA will be programmed (see Figure 14). After programming the connected FPGA, the FPGA board operates as control unit for the designed control algorithm, and the student can start his experiment.

D. Virtual Control Mode -Visual Prototyping
This mode is comparable to the operation mode A (for visual prototyping). In this case, the simulation model is not connected to the interpreter, running inside the client, but via the Internet to the real control units which are running inside the remote lab. In this case, the student can test his prepared software or hardware oriented design on the corresponding control unit (microcontroller or FPGA) without the need for a real physical system -before he will use operation mode C (remote control mode -via control unit) to test his design task on the physical system in the remote lab (see Figure 15).

E. Virtual Control Mode -Test Mode
This operation mode (see Figure 16) is mainly for debugging, testing and maintenance of the protection unit.
By using this operation mode, it is possible to check the implemented reference design (as seen in Figure 4) in the physical system protection unit without the need to use a control unit or a physical system. This will be done by transmitting input and output pattern from the Web-client to the protection unit and by analyzing its response.
Because this mode is not preferential to execute lab experiments, it is not explained in detail. Figure 16. Virtual control mode to test the protection unit

F. Local Control Mode -via a Control Unit
Besides the possibility to work in the lab remotely, the following two operation modes explain the usage of the REAL system for on-site experiments or demonstrations.
During an on-site lab experiment students can observe the whole hardware setup as well as all the physical system and environmental variables directly in the lab room. In this case they can check their control task (running on a connected control unit). They have access to the whole lab setup via a connected control panel. Figure 17 illustrates this operation mode. In addition to its use for student experiments, this mode can also be used to demonstrate the remote lab on guided tours during open house presentations to inspire new students to study engineering courses.

G. Local Control Mode -manually
This operation mode (see Figure 18) can be used for demonstrations and maintenance of the connected physical system. This mode will also be used for hands-on usage of the demonstration system "labyrinth on ball balance plate" (see Figure 19). Figure 19. Manually local control We would like to provide this game-like experiment especially for promotional means for open house presentations at the university to attract new students in engineering disciplines.

H. Rapid Prototyping Mode
For this special operation mode a rapid-prototyping board for digital systems was developed, which is directly connected to the serial remote lab bus. In this case, no physical system protection unit is needed.
By using the REAL Web-interface, the student is able to  upload his/her design,  program the FPGA and  handle the lab procedure. The applet allows the student to manipulate all the inputs of the rapid prototyping board (slide switches, hex coding switches, and pushbuttons). He can observe the outputs of the board (7-segment displays, row of LEDs) virtually inside the Java applet. Figure 20 gives an impression of the applet's Web-interface including a "photo" (image) of the rapid prototyping board.
The manipulation of the input and output signals of the board are done virtually in the following way: For the look-and-feel of the applet, we use a "photo" of the board as background. All the inputs are realized as Java control elements and can be manipulated via the mouse interactively.
Changes are immediately sent to the rapid prototyping board and the corresponding results are displayed inside the applet. There are two general options to display the output results within the Web-interface:  Representation by Java components The graphical outputs are represented directly inside the "photo" using read-only Java components. Updates of the display only require information about the current state of the corresponding output signal. This enables students without fast Internet access to use the applet.

 Webcam based feedback
Another option is the use of a webcam to monitor the rapid prototyping board inside the lab room. The webcam image is replacing the background "photo" of the applet. This allows the user to watch the results of his/her actions directly as if present in the lab. The overlaying Java display components are not used in this option and therefore invisible. Both options can be configured using custom user settings in the corresponding tab of the applet. All actions are documented in a separate Log Tab.
For a detailed description of this operation mode see [23].

IV. CONCLUSION AND FORESIGHT
We have discussed different operation modes of the REAL system for various fields of applications -based on a new flexible grid-based online lab structure. In addition to simulation-based experiments, on-side and off-side experiments with real physical systems can be offered for students as well.
Besides the features already mentioned in this article, even more functionality can be added using the new concept of having a Web-based protection unit that checks the user input against a reference model. This protection unit can be connected to a learning management system like "moodle" to forward any experimental results of the user. For an effective usage of the REAL system within learning management systems, the reference design and a method to check the student's design against this reference design step by step will be traced by the LMS. Figure 21 shows this idea. The increasing capacity of wireless communication and the growing number of mobile devices (e.g. smartphones and tablets) on the one hand as well as modern Internet technologies like JavaScript, HTML5 and Web Sockets on the other hand provide new possibilities and challenges in the area of mobile learning (see Figure 22). In [24] a first Android client application for the iLab Shared Architecture is described. Our Integrated Communication Systems Group at the Ilmenau University of Technology is involved in different national and international e-Learning projects [25], [26] in which it is increasingly necessary to allow and organize a shared use of equipment. That is why, the main focus of the REAL system is  a Web-wide usage of different design tools and control units to control different physical systems in the lab room,  a robust, fault-protected access to any connected physical system,  an LMS-coupling for all control units and physical systems used in the remote lab as well as  a worldwide interchange of online experiments with other universities by interconnecting the iLab service Broker to an "iLab cloud" (see Figure 23), as proposed by the iLab Europe consortium, where we are involved, as well [27]. All these requirements can be fulfilled using the concept and the infrastructure presented in this paper. Figure 23. Interconnection of various iLab Broker to an "iLab cloud"