Developing and Implementing Online Laboratory for

7 downloads 0 Views 260KB Size Report
Abstract: - Laboratory experience plays an important role in helping students to gain concrete .... gateway (Internet) or GSM (Global System for Mobile.
Developing and Implementing Online Laboratory for Control Engineering Education Bing DUAN, Keck-Voon LING and Habib MIR M. HOSSEINI School of Electrical and Electronic Engineering Nanyang Technological University SINGAPORE {ebduan, ekvling, hosseini}@ntu.edu.sg Abstract: - Laboratory experience plays an important role in helping students to gain concrete understanding of the abstract knowledge. E-learning or web-based learning has become commonplace in the past few years. Online Laboratory extends the idea of e-Learning to traditional Lab-based subjects. OnlineLab has the advantage of overcoming geographical and temporal restrictions, so that laboratory resources can be better utilized. In this paper, we introduced two concepts: OnlineLab Framework and Online Experiment Learning Objects. This allows us to simplify implementation and to rapidly develop Learning Objects to connect to a wide variety of real apparatus. We also presented two examples in the teaching of Control Engineering: the Inverted Pendulum and Coupled Tank experiments. The Online Laboratory is scalable and can be integrated with existing e-Learning systems. Keywords: - e-Learning, Online laboratory, OnlineLab framework, Online experiment, Control engineering education

1

Introduction

With the advancement of information technology and the popularity of the Internet, online teaching and learning (eLearning) has become more popular in the last decade. Several online or remote laboratories have been developed [2-7,11-12] to bring the e-Learning concept to the lab-based courses. Numerous online or remote Laboratories have been used to supplement the traditional engineering courses with remote experiments. These systems, mainly web-based, allow students to conduct real lab experiment, as oppose to computer simulations, from anywhere and at any time. Cyberlab [2] is a typical example of such systems. At the same time, the technology of remote control of equipment via the Internet has been exploited by others in healthcare [8], robotic research [9], and product promotion[13]. However, most work in this area concentrated on the development of a particular Web -based application for a few specialized apparatus. There is no uniform and standard development environment for a variety of different experiments. As a consequence, many functionally similar and independent systems have been redeveloped again and again. On the another hand, many organizations and consortia, such as Advanced Distributed Learning (ADL) [14], Aviation Industry CBT Committee (AICC) [15], IEEE Learning Technology Standard Committee (LTSC) [16] and IMS Global Learning Consortium, Inc., [17] are developing and promoting open specifications and standards to construct e-Learning framework to facilitate cross-platform interoperability of online learning activities. Techniques such as meta-data tagging, data tracking, learner progress reporting and reusable learning objects have been proposed. Unlike traditional e-Learning, online or remote

laboratories, or OnlineLab for short, has a slightly different set of requirements and issues as it attempts to provide online or remote control of real apparatus for teaching and learning activities for engineering education. Relatively fewer research investigate the issues of a standardized framework and reusable learning object for the OnlineLab. In general, e-Learning Framework and Learning Objects form a complete e-Learning system. In this paper, we introduce two components specific to the OnlineLab: • The OnlineLab Framework and • The Online Experiment Learning Object Based on our past experiences in developing an OnlineLab in Nanyang Technological University (NTU) [18], we propose a systematic method to implement a web-based, multi-user OnlineLab Framework with the aim to minimize development effort and to maximize component reusability, so as to enhance and encourage the development, packaging and delivering of highquality e-Learning and training materials for the engineering education, especially in automatic control domain. As an illustration, we developed two examples of online experiment learning object: the Inverted Pendulum and the Coupled-Tank experiments.

2 The OnlineLab Framework The OnlineLab Framework can be considered as a container for a variety of Online Experiment Learning Objects. If a standard could be developed, then interoperability and reusability can be achieved. Every experiment located in the framework can then share the resources provided by the framework. Typical resources provided by the framework are: user account

management, experiment report generator, Socket Communication Services with physical apparatus, Queue management, SMS reminder, Live video, discussion forum, automated Q&A services, etc. The implementation of Online Laboratory framework will be discussed from following five aspects: • Application Programming Interface; • Apparatus Queue • User Load Balancing; • Multi-user Collaboration; • Advanced User Services; Three kinds of services can be supplied for different users: the Lab-manager, Course Instructor and Student. The Lab-manager is responsible for performing system maintenance, such as adding or removing an experiment, creating or deleting user accounts and failure detection and recovery. As content provider for OnlineLab, the Course Instructor develops new Experiment Learning Objects, which make use of real apparatus. For Student, the OnlineLab is an e-Learning environment with a unique feature that also allows the student to conduct experiment using real apparatus. 2.1

Application Programming Interface

In this section, two essential issues will be discussed: how to realize the sharing of the OnlineLab Framework for different experiments and how to manage these experiments online. Firstly, the OnlineLab Framework needs to interact with other external systems or experiments in a systematic manner. Secondly, the student needs to interact with OnlnieLab Framework. They can be achieved through defining an Application Programming Interface, or OnlineAPI for short. The APIs are grouped into two broad categories: • The Framework API and, • The Experiment API. The introduction of these onlineAPIs can enhance component reusability, unify the development environment and reduce the development time. The Framework API provides the interface for Course Instructor to create new experiments, add or remove user accounts. The Experiment API is responsible for interacting with the Reusable Online Experiment Learning Objects. During a lab session, the experiment status can be easily retrieved through calling these APIs. 2.2

Apparatus Queue

Considering the management of real laboratory, all students who enrolled the course share the lab resources by a scheduled timetable. In this paper, two basic and important principles are defined: • For a real lab session, only one user is permitted to conduct a particular experiment at a time, and • Any user can conduct a particular experiment in a specified time period.

Based on these principles, we have proposed a first-comefirst-serve apparatus queuing system with time-out feature to ensure this working in the OnlineLab Framework. Any user who wants to conduct a particular experiment must join the apparatus queue. For managing OnlineLab access, a unique UID corresponding to the user will be generated. After the first user who is conducting the experiment is time-out or terminated, the next user in the queue can start the experiment. The design guaranteed that only one user has the chance to access the apparatus at a time. Meanwhile, unauthorized user can’t control the apparatus due to absence of UID.

2.3

User Load Balancing

In the real world, lab resources, such as lab schedule or opening hours, equipment, lab assistants are always limited. Although lab resources can now be accessed 24 hours a day, 7 days a week through OnlineLab, lab equipments are still limited. Hence some form of Load Balancing or a Queuing System is necessary. To ensure high availability of OnlineLab to as many students as possible, we proposed that the Framework be responsible for monitoring the lab sessions to: • Terminate the experiment once time-out occurred; • Reset the apparatus for a new user; • Inform the Lab Manager in case of any hardware failure; In general, when several lab apparatus are available, the Framework could perform automatic load balancing to channel the student to t he next available apparatus according to some pre-defined rules.

2.4

Multi-user Collaboration

When conducting the online experiment, students may feel isolated from both the teacher and their classmates, especially when the students have some questions about the experiment or have problems continuing with the experiment. Hence, the OnlineLab Framework must have a mechanism for remote collaboration to allow students to conduct the experiment collaboratively. The benefits for the students working together on such remote environment are the development of teamwork and enhancing the learning experience. Collaborative environment is achieved by including session management, conferencing facilities, forum and chat services to the system. Once the instructor initiates a lab session, many students can join to the session. They could monitor the lab experiment by receiving the live video streamed by a camera which is pointed to the actual apparatus. However, at any given time, only one student is in control of the experiment apparatus. At the end of the experiment, all the students in the same lab session can download the experimental results.

2.5

Advanced User Services

In addition to the facilities introduced above, more useful features can be developed to enhance system usability. Live video, discussion forum, Q&A whiteboard and enotification (by email) can be embedded into the OnlineLab Framework. For the convenience of users, a new feature, SMS (short message service) Reminder is also introduced. SMS reminder provides an easy way to remind the students who is in the queue and when the apparatus is idle. Additionally, the administrator can get the information of the laboratory by SMS in the area without Internet access. Normally, two ways can be employed to achieve SMS function via either SMS gateway (Internet) or GSM (Global System for Mobile Communication) modem. The second way is adopted in our scheme for the future system upgrade and migration.

3

micro-controller board on the inverted pendulum apparatus. It contains an Intel N80C196KC-20 microcontroller, ROM, RAM, timer, serial ports, PWM outputs as well as A/D inputs. The OnlineLab Server can communicate with the micro-controller Fig. 2: Inverted Pendulum through the serial port. It is often used as test-bed to demonstrate the performance of difference control algorithms, from classical controllers to modern neural -fuzzy controller.

Online Laboratory Experiments

From e-Learning point of view, the learning object is “any entity, digital or non-digital, that may be used for learning, education or training”[1]. Online Experiments are Learning Objects for the OnlineLab Framework. Fig. 1 shows a common prototype of Internet-based controlled apparatus.

Actions / Commands

Actions String

Clint :

OnlineLab :

User Browser

Web Server

Feedback (Acknowledgement/ Experiment status)

Apparatus :

Controller

Experiement String

Fig. 1: Prototype of Internet Controlled Experiment

The prototype represents a systematic approach to design an OnlineLab Experiment Learning Object. As the apparatus is Web-based control equipment, the physical human -instrument interface is no longer needed. For different Learning Object, we could now design different User Interface for the apparatus. A standard set of API will facilitate this development effort and encourage reusability and interoperability. In addition, the Framework provides the necessary supporting functions such as data exchange, user actions and query of apparatus status. Thus, an Online Experiment Learning Object consists of two components: a web-controllable apparatus and a set of API for controlling the apparatus. Through this set of API, different Learning Objects could be developed. Some examples illustrating this concept are shown in the following sections.

3.1

Inverted Pendulum

The rotary inverted pendulum (see Fig. 2) is a low cost plant widely used for the teaching of advanced control system theory in the laboratory. The angle of the pendulum is measured with a potentiometer, while the speed of the motor with an encoder. There is a built -in

Fig. 3: Inverted Pendulum Web- GUI

§ § § §

The challenge is to swing up the pendulum from its downward position and balance it upright. T he WebGUI of the Inverted Pendulum was developed (see Fig. 3). It consists of the following modules:

Check driver and sensor System Identification State Feedback controller design Swing up and balance pendulum

When the lab is launched, it’ll check whether there is a Socket connection between the user Web-browser and the apparatus, otherwise an error message will be displayed and control panel will be disabled automatically. Once this initialization is done, student can proceed with the rest of the experiment by executing the desired module available in the GUI.

Check Driver and Sensor The first module is to check driver and sensors of the potentiometer and encoder on the apparatus. When it was launched, student could turn the rotating arm by varying the input Fig. 4: Check Driver and Sensor PWM signal to the motor (see Fig.4). From the video feedback, they could confirm that the apparatus is in working condition before proceeding to the next stage.

System Identification The purpose of the system identification module is to estimate the parameters that characterize the dynamics of the inverted pendulum and it’s motor. These parameters are required for the controller design at the next stage.

Upon choosing this module, a customized firmware will be downloaded to the on-board micro-controller on the apparatus. Through the web interface, student then set a particular input test signal. Once the “Start” button (see Fig. 5) is clicked, the pendulum will start to spin for a short duration and the values of the pendulum position and the arm velocity will be saved into a data file. This will be followed by another function, which performs the necessary computations to determine the pendulum parameters based on the experimental data collected. Students could also download the data file and perform the system identification calculat ion using their own program or Matlab script.

the actual inverted pendulum over the Internet. Student can refine his/her design to test the controller experimentally.

Fig. 7: Swing and Balance the Pendulum

Hence, the student can learn from this experience and improve on their design in the subsequent run.

3.2

Fig. 5: Inverted Pendulum System Identification

State Feedback controller design After obtaining the estimated parameters, the student can next proceed to design the controller to be used to balance the pendulum. For the state feedback module, the Fig. 6: Controller Design feedback gains are determined using the pole-placement technique. This module computes the open loop pole location of the pendulum model. Student would select the desired closed-loop pole locations through the GUI (see Fig. 6), and the online lab server would compute the necessary state feedback gains (using Ackermann’s formula) that would place the closed-loop poles in the specified locations.

Swing up and balance pendulum This module (see Fig. 7) first downloads the state feedback controller firmware to the on-board microcontroller on the Inverted Pendulum apparatus. It then starts the controller so that student could investigate if his/her design would be able to balance the pendulum on

Coupled Tank

The Coupled Tank Fig. 8: Coupled Tank (see Fig. 8) consists of two small perspex tower -type tanks mounted above a reservoir which functions as storage for the water. Two Fig. 8: Coupled Tank independent pumps pump water into the top of each tank. The apparatus is designed for the teaching and research of process control principle. The objective of this experiment is to maintain the water levels in the tanks. A PC running LabVIEW (Laboratory Virtual Instruments Engineering Workbench) functions as the instrument controller. Connected to the Coupled Tank through a 50-pin DAQ (Data Acquisition Card), the PC implements local control of the Coupled Tank by supplying two input voltages to the pumps of the apparatus. Fig. 9 illustrates the Coupled Tank lab experiment for an introduction to automatic control. The student interacts with the real apparatus (in this case, the Coupled -tank) through a customized Web User Interface. It allows the student to experiment with different controller, such as Manual, ON/OFF, PID (ProportionIntegral -Derivative) control, and to study the effect of adjusting the various parameter setting available in the controller. Student can download all data collected by the Online Server for further analysis when the experiment has been completed.

Fig. 9: Coupled Tank Web- GUI

With these applications developed, the undergraduates in the School of EEE, NTU can now have hands-on sessions for their control classes and acquire a better appreciation of the control theories taught in the classroom.

4 Conclusion Any e-Learning system is valuable only if it is able to facilitate learning through leveraging of Information Technology to achieve higher efficiency, reduce cost and increase the opportunity for learning for its users. In this paper, we presented the concept and the development of the OnlineLab Framework and Online Experiment Learning Object to let as many as possible people from various software or hardware companies or academic institutes to develop Lab-based learning system. We hope that this will complement the existing e-learning framework and effort in providing a more complete learning experience in higher education, especially in control engineering education. References: [1] IEEE LTSC, Final 1484.12.1 LOM Draft Standard Document, IEEE 1484.12.1-2002. [2] Lambertus Hesselink, Standford CyberLab: Internet Assisted Laboratories, Journal of Distance Education Technologies, 1(1), 22-39, Jan-Mar 2003. [3] Sanchez, J.; Morilla, F.; Dormido, S.; Aranda, J.; Ruiperez, P., Virtual and remote control labs using Java: a qualitative approach, IEEE Control Systems Magazine, Volume: 22 Issue: 2, April 2002 Page(s): 8 -20 [4] Ko, C.C.; Chen, B.M.; Jianping Chen; Zhuang, Y.; Chen Tan, K, Development of a web-based laboratory for control experiments on a coupled tank apparatus, Education, IEEE Transactions on, Volume: 44 Issue: 1, Feb 2001 Page(s): 76 -86 [5] S.H. Yang, X. Chen, J.L. Alty. (2002) Design issues and implementation of internet-based process control

systems, Control Engineering Practice 11 (2003) 709720 [6] Ling KV, Lai YK and Chew KB, An Online Internet Laboratory for Control Experiments, Preprints of IFAC/IEEE Symposium on Advances in Control Education, 17-19 Dec 2000, Australia [7] WU Sheng, LIM Choo-Min, LIM Khiang-Wee, An integrated internet based control laboratory, Preprints of IFAC/IEEE Symposium on Advances in Control Education, 17-19 Dec 2000, Australia [8] Palamas, S.; Kalivas, D.; Panou-Diamandi, O, An Internet-based system for the commerce of medical devices. A portal for improving communication between healthcare professionals and the medical device industry, IEEE Engineering in Medicine and Biology Magazine, Volume: 21 Issue: 2, March-April 2002 Page(s): 26 –32 [9] Kuk-Hyun Han, Sinn Kim, Yong-Jae Kim and JongHwan Kim, Internet Control Architecture for Internet-Based Personal Robot, Autonomous Robots Journal, Kluwer Academic Publishers, Vol. 10, No. 2, pp. 135-147, March 2001 [10] Anido, L.; Llamas, M., A contribution to the elearning standardization, Standardization and Innovation in Information Technology, 2001 2nd IEEE Conference, 2001 Page(s): 295 –309 [11] MIT iLab project: http://i-lab.mit.edu/ [12] MIT weblab Project: http://weblab.mit.edu/ [13] TechOnline Virtual Lab: http://www.techonline.com/ [14] Advaned Distributed Learning (ADL): http://www.adlnet.org [15] Aviation Industry CBT Committee (AICC): http://www.aicc.org [16] Learning Technology Standards Committee (LTSC) of IEEE: http://ltsc.ieee.org [17] IMG Global Learning Consortium (IMG): http://www.imsglobal.org [18] OnlineLab on NTU: http://www.onlinelab.eee.ntu.edu.sg:8000 /