Virtual and Remote Laboratory Framework Development for ...

6 downloads 130119 Views 585KB Size Report
Jul 11, 2012 - Full Text HTML; Details; Figures; References; Related ... Houston, TX 77004. E-mail: [email protected] ... TX 77004. E-mail: [email protected] ... TX 77446. E-mail: [email protected] ... E-mail: [email protected].
Earth and Space 2012 © ASCE 2012

Virtual and Remote Laboratory Framework Development for Engineering Technology Education – A Case Study Daniel Osakue1, Xuemin Chen2*, Osman Ahmed3, Darayan Shahryar4 and David Olowokere5 1

Department of Engineering Technology, Texas Southern University, 3100 Cleburne Street, Houston, TX 77004; email: [email protected] 2 Department of Engineering Technology, Texas Southern University, 3100 Cleburne Street, Houston, TX 77004; *Corresponding author; PH (713) 313-7285; FAX (713) 313-4486; email: [email protected] 3 Department of Computer Science, Texas Southern University, 3100 Cleburne Street, Houston, TX 77004; email: [email protected] 3 Department of Engineering Technology, Prairie View A&M University, P.O. Box 519, MS 2530, Prairie View, TX 77446; PH (936) 261-9869; FAX (936) 261- 9867; email: [email protected] 4 Department of Engineering Technology, Texas Southern University, 3100 Cleburne Street, Houston, TX 77004; PH (713) 313-4224; FAX (713) 313-4486; email: [email protected] 5 Department of Engineering Technology, Texas Southern University, 3100 Cleburne Street, Houston, TX 77004; *Corresponding author, PH (713) 313-7285; FAX (713) 313-4486; email: [email protected] ABSTRACT Virtual and Remote Laboratory (VR-Lab) is an inevitable necessity for Internet enabled education in Engineering Technology and other STEM fields due to the effectiveness, flexibility and cost-saving. The VR-Lab research at Texas Southern University (TSU) is to develop a software and hardware framework that allows users to simulate the experiments virtually and control physical instruments remotely via the Internet with minimal to zero-installation beyond a typical web browser. Currently, multiple web based experiments for Data Communication, DC circuit, Active Vibration Control and Digital Signal Processing (DSP) subjects are available for experimentation and coursework integration. To allow rapid development, National Instruments (NI) software and hardware is used for the programming, data acquisition, and interaction with remote devices. The programming of virtual experiments is primarily done with NI LabVIEW v8.6 as well as Java. To reduce or eliminate the need for browser plug-ins or third party software in order to operate, the VR-Lab framework uses Web 2.0 technology. The goal of the VR-Lab framework is to provide cross-browser and client-side plug-in free experiment environment for engineering and technology education. A remote Smart Vibration Platform experiment which is good for teaching active vibration control is used to demonstrate how to integrate a remote experiment into the VR-Lab framework. INTRODUCTION

1211

Earth and Space 2012 © ASCE 2012

The rapid development of Internet technology has great impact on engineering and engineering technology education. Nowadays, computer and Internet based learning has become a common practices in high education. Based on responses from over 2,500 academic leaders, the complete survey report, "Going the Distance: Online Education in the United States, 2011", it shows that Over 6.1 million students were taking at least one online course during the fall 2010 term, an increase of 560,000 students over the previous year. (Allen and Seaman 2011). Currently, there are two approaches to conducting experiments online, namely virtual laboratory and remote laboratory. The virtual laboratory is based on software such as LabVIEW (short for Laboratory Virtual Instrumentation Engineering Workbench), Matlab/Simulink, Java Applet, Flash or other software to simulate the lab environment. Virtual labs can be used for experiments that would normally require equipment that are too expensive, unsafe (e.g. nuclear reactor) or unavailable. Virtual labs also allow students to repeat an experiment multiple times, giving them the opportunity to see how changed parameters and settings affect the outcome. One of the very important features of the virtual lab is to let the students learn from failures without causing any real damages. Remote lab, by definition, is an experiment which is conducted and controlled remotely through the Internet. The experiments use real components or instrumentation at a different location from where they are being controlled or conducted. The logistics of tailoring a real laboratory, particularly when dealing with a large number of students, is often a big problem to universities; the requirements for space, instrumentation, and human support are high. With the grant supports from National Science Foundation (NSF), a Virtual and Remote Laboratory (VR-Lab) is developing at Texas Southern University (TSU). Currently, multiple virtual experiments for Data Communication, DC circuit, and Digital Signal Processing (DSP) subjects are available for experimentation and coursework integration. A remote Smart Vibration Platform experiment is designed for learning and demonstrating the Active Control. To allow rapid development, National Instruments (NI) software and hardware is used for the programming, data acquisition, and interaction with remote devices. The programming of virtual experiments is primarily done with NI LabVIEW v8.6 as well as Java. To reduce or eliminate the need for browser plug-ins or third party software in order to operate, the VR-Lab framework uses Web 2.0 technology. The developed virtual and remote experiments are hosted on a dedicated website (http://vr-lab.engineeringtech.tsu.edu/). Now, the VR-Lab website is serving as portal for students to perform virtual and remote experiments. A large amount of research on virtual and remote laboratory technologies has been recently reported, ranging from LabVIEW and Matlab/Simulink to Java applet, Flash, Ajax and other techniques (Goffart 2007, Harward et al. 2008, Hasnim and Abdullah 2007, Ibrahim and Morsi 2005, Pastor et al. 2005). However, most of the papers focus on experiment interface design. There are few papers to discuss the web based experiment framework and to address the firewall and security issues. This paper is to provide a framework for web based experiment development with the consideration of firewall and security issues. We developed this framework for

1212

Earth and Space 2012 © ASCE 2012

engineering technology education. Actually, this framework can be applied to other Science, Technology, Engineering, and Mathematics (STEM) Education areas. VIRTUAL AND REMOTE LABORATORY SETUP The Virtual and Remote Laboratory (VR-Lab) at TSU is shown in Figure 1. The functionality of the server is to work as the web publisher, the data and database manager. Scheduler Web Server (SWS) is to manage, authenticate and schedule users and experiments. A user connects to the Scheduler Web Server with the assigned credential. The user schedule a future time slot with one of the available experiments listed on the scheduler web server. When the time comes, the user will be provided with a customized direct link to the chosen experiment. The SWS could be located in the same sub network of the experiment server or in a different one. This type of architecture allows for building decentralized experiment farm. In other words, it allows collecting currently running experiments into a single website. The experiment itself and the scheduler web server could be located anywhere there is Internet access. As a result, each experiment in the experiment farm itself must include a web service to provide the data and the interface to the client. On the other hand, the scheduler server provides access control and data logging. The workstations are used to execute the users’ requirements and control the lab devices such as the National Instruments Educational Laboratory Virtual Instrumentation Suite (NI ELVIS) to conduct the experiments. The camera will let the user to see the system response in real time. The users can use the client computers to do the experiments virtually and remotely.

Figure 1. Virtual and remote laboratory (VR-Lab) at TSU. VR-LAB FRAMEWORK AND DEVELOPMENT TOOLS The VR-Lab framework is shown in Figure 2. The framework includes three parts: hardware, software and development tool. The hardware includes the network

1213

Earth and Space 2012 © ASCE 2012

1214

infrastructure such as server and network switch, web camera, workstation, data acquisition and lab equipment. The software component provides web interface for user to conduct the virtual and remote experiments, experiment management, and experiment data management etc. Development tools are software packages we used to develop the software component for the VR-Lab framework. In the proposed VRLab as shown in Figure 1, the software packages we used include the NI LabVIEW, Java, MySQL, JavaScript, JSON, jQuery, Flot, HTML, PHP and CentOS. A brief description of each software package is listed below.

Figure 2. VR-Lab Framework. CentOS. CentOS is an Enterprise-class Linux Distribution derived from sources freely provided to the public by a prominent North American Enterprise Linux vendor. It was installed on the server to provide resources management of server and network. LabVIEW. National Instruments’ (NI) LabVIEW is popularly deployed software for academic and industrial application. It is easy to control a real time process with NI’s graphic interface, hardware and drivers. DataSocket, an Internet programming technology included in the LabVIEW package, simplifies real time data exchange among computers connected through network (Edwards 1999; Edwards 2000). DataSocket is designed specifically for sharing, subscribing, and publishing real time data to multiple clients where a Uniform Resource Locator (URL) is used by the users to connect to a data source location in the DataSocket server. It provides the capability of the remote laboratory system to be accessed by multiple clients to do different experiments simultaneously. It provides a fast virtual and remote experiments development. However, the client side has to install LabVIEW runtime engine which has platform and version compatibility issues. JavaScript. It uses syntax style influenced by C, and names and naming convention of Java, but unrelated. In this framework software package, the JavaScript was used primarily in the form of client-side JavaScript, implemented as part of a web browser

Earth and Space 2012 © ASCE 2012

in order to provide enhanced user interfaces and dynamic websites. It can be run in virtually any web browser, without additional plug-ins. JSON. JSON means JavaScript Object Notation. It is lightweight text-based open standard designed for human-readable data interchange. It is derived from JavaScript to represent simple data structures and arrays, called objects. And it is languageindependent and can be parsed into virtually every programming language. AJAX. Short for Asynchronous JavaScript and XML, is a group of interrelated web development methods on client-side to create interface web applications. It can retrieve data from server asynchronously in the background without interfering with display and behavior of the current page. Thus, you can refresh only part of the page. PHP. PHP (Personal Home Page) is a general purpose scripting language that was originally designed for web development to produce dynamic web pages. MySQL. The SQL stands for Structured Query Language. MySQL is a free, relational database management system that runs as a server providing multiuser access to a number of databases. It provides users, experiments and data management in VR-Lab framework. Flot. Flot is a pure Javascript plotting library for jQuery. It produces graphical plots of arbitrary datasets on-the-fly client-side. The focus of Flot is on simple, attractive looks and interactive features like zooming and mouse tracking. In the VR-Lab framework, all instructions from the client are sent as HTML form data, this means they use the "application/x-www-form-urlencoded" Internet-media type. All responses from the web-service are sent to the client as JSON data using the "application/javascript" Internet-media type. We use "application/javascript" to ensure browser compatibility. It should possible to use "application/json". Some webservice responses are sent as text for debugging purposes. FIREWALL AND SECURITY ISSUES As shown in Figure 1, all the computers including servers at TSU network are behind the firewall. Only few ports are open such as ports 80 (http), 22 (ssl). It is common configuration in most universities. In this case, a proxy server is required to solve this issue. Since the port 80 on server has been used for hosting website, an extra port must be open on the firewall for port forwarding. Whenever the user visits a remote experiment link, the proxy server will automatically forward the traffic to the corresponding workstation which hosts the remote experiment. However, we found the reverse proxy server on Apache server does not work with the NI LabVIEW web server. The solution is to use the Pinhole which is composed by Python. Pinhole is a simple network utility that forwards a port to the host specified. It works very well in the VR-Lab framework. The proxy service allows the client to exchange data with the remote experiment without introducing data verification or authentication in both client and experiment sides. The server will verify that the data

1215

Earth and Space 2012 © ASCE 2012

follows the developer configuration file, and that the user is authorized to interact with the experiment. In addition to the proxy service, the SWS will provide user, experiment, and data management. INTEGRATE THE SMART VIBRATION PLATFORM INTO VR-LAB FRAMEWORK Upon finishing the implementation of VR-Lab framework, a remote smart vibration platform has been integrated into the framework. A webpage to display the web camera video stream and system output, and control the motor speed, smart memory alloy (SMA), and magnetorheological (MR) damper slide bars is designed as shown in Figure 3. The output of the accelerator is displayed by using Flot technology. Some LabVIEW virtual instruments (VIs) were designed to collect data, control the SVP, record data etc., namely svpDAQ_output.vi, File Record.vi, WebRecord.vi, Web-Initalize_Close.vi. After that, the remote experiment is ready to integrate into the VR-Lab framework. The first step is to open an unused port on the firewall. We used port 5000 for the SVP experiment in this case. Then the port forwarding has to be added into the proxy server, i.e. the Pinhole proxy server. The last step is to register this remote experiment into the scheduler web server as shown in Figure 4. The user can conduct this experiment without install plug-in even the LabVIEW VIs are used to collect data and so on.

Figure 3. SVP remote experiment user interface.

Figure 4. Experiment management provided by scheduler web server.

1216

Earth and Space 2012 © ASCE 2012

CONCLUSIONS A flexible virtual and remote laboratory framework was presented in this paper. A smart vibration platform was successfully integrated into the VR-Lab framework. The user can conduct remote experiment without install any plug-in or third party product since the web 2.0 technologies were used to design the framework software package. The framework is open and scalable. It can be used for other subjects of STEM areas if the developer simply follows the procedures to let the scheduler web server manage these experiments, open an unused port on the firewall if the workstation is behind the firewall, and register this port in proxy server for port forwarding. ACKNOWLEGEMENT This work is partially supported by the National Science Foundation under Grant Numbers DUE-0942778, EEC-0935008, and HRD-0928921. REFERENCES Allen, I. E. and Seaman, J. (2011). “Going the distance: Online education in the United States, 2011.” The Sloan Consortium. Edwards, H. (1999). “Building an interactive web page with datasocket.” Application Note 127, National Instruments. Edwards, H. (2000). “Connecting measurement stdio user interface activex controls to remote data.” Application Note 151, National Instruments. Goffart, J. (2007). “Design of a web-based remote lab for a brewery process. Master thesis, HAMK University of Applied Sciences, Finland. Harward, V. J., Alamo, J. A. D., R.Lerman, S., Bailey, P. H., Carpenter, J., Delong, K., Felknor, C., Hardison, J., Harrison, B., Jabbour, I., Long, P. D., Mao, T., Naamani, L., Northbidge, J., Schulz, M., Talavera, D., Varadharajan, C., Wang, S., Yehia, K., Zbib, R., and Zych, D. (2008). “The iLab shared architecture: A web services infrastructure to build communities of internet accessible laboratories.” Proceedings of the IEEE, 96(6), 931–950. Hasnim, H. and Abdullah, M. Z. (2007). “Remote lab generator (RLGen): A software tool using auto-generating technique to develop a remote lab.” International Journal of Online Engineering, 3(4), 49–51. Ibrahim, W. and Morsi, R. (2005). “Online engineering education: A comprehensive review.” Proc., American Society for Engineering Education Annual Conference & Exposition, ASEE, Portland, Oregon. Pastor, R., Martín, C., Sánchez, J., and Dormido, S. (2005). “Development of an xmlbased lab for remote control experiments on a servo motor.” International Journal of Electrical Engineering Education, 42(2), 173–184.

1217

Suggest Documents