This work focuses on the design and implementation of webexperiments based on the LabVIEW/Datasocket approach to enhance streaming of live data as well as to facilitate the interaction among the various system modules such as PC platform, digital signal processor board, client/server interface, and the experimental hardware. Besides the LabVIEW based client programwhich requires the remote PC to have LabVIEW installation, a web-browser based client plugin has also been generated for students/users who do not have programming experience with LabVIEW. Test results for multi-client access have been favorable. Reliable real time control bandwidth was detected at about 3KHz, adequate for undergraduate control experiments. The same client/server interface can also be applied to a wide range of experiments for 24/7 and multi-users global access. Other advantages of web-based experiment include: improved safety conditions, reduced cost, and broad base access for all students (full/part time, handicapped). Examples include identification of dynamic systems and DC motor control. Student response and implementation experience are also described. (I) Introduction It is well established that hands-on experience can significantly improve student learning and interest level in the course materials [1]. This is especially important in courses that are theoretical with a high degree of mathematical analysis. However, a number of constraints prevent the broad base integration of experiments into engineering courses. For examples, laboratory facilities/hours, safety issues, and software development effort are a few of the limiting factors that most instructors would encounter. With the increase in bandwidth through high speed and ISDN data lines, web-based distance experiments can play a significant role in supporting the learning process by providing a 24/7 laboratory with real time experiments so that the students can draw realistic conclusions and gain insight for real-life problem solving. A number of web-based distance experiments are already in place. Earlier systems [2], [3] rely on custom software development e.g. cgi/Perl, Java/C++, etc. Maintenance and upgrade of the codes become problematic. Furthermore, most earlier system lack realtime streaming capabilities due to the client side control privilege. The more recent implementations of the web experiments are based on existing software platforms such as LabVIEW or Matlab. In [4], [5], and [6], various web experiments are supported by the P ge 7.299.1 Wincon/Simulink combination package through TCP/IP protocol. In [7], distance experiments in process control and dynamics are made available via LabVIEW interface. In [9], monitoring of distributed processes are carried out on LabVIEW TCP/IP VI (Virtual Instrumentation) using the HTTP web server. While these approaches are meritorious and work well for the intended applications, it is the objective of this work to devise a general-purpose, distance experimental system that possesses the following characteristics: 1. Efficient interactive/multi-user operations. 2. Machine independent (currently developed for the PC platform). 3. Secure operations. 4. Graphics User Interface compatible. 5. High processing bandwidth with true real-time data streaming capabilities. 6. Low cost, user friendly interface. 7. Global resource sharing: –Intra/inter-campus –Inter-university –K-12/university –International Hence, a new software package is necessary and LabVIEW/ Datasocket is chosen to support the implementation of web experiments. A description of Datasocket is given in the following section. (II) Web Access with Datasocket The National Instruments' LabVIEW (Laboratory Virtual Instrument Engineering Workbench) has been a popular software for academic and industrial control experiments. It features graphics user interface and drivers for controlling real time processes. DataSocket, included with LabVIEW, is a new Internet programming technology that simplifies live data exchange among computers connected through a network [11], [12]. It is designed specifically for sharing, subscribing, and publishing live data in measurement and automation applications. In particular, DataSocket is designed for live data transfer to multiple clients where a URL is used by users to connect to a data source location in the DataSocket server so as to control or share data with DataSocket applications. Although DataSocket handles connections to various types of data sources and existing schemes such as http, ftp, file, and opc, the server communicates and exchanges data between two applications using the dstp (DataSocket Transfer Protocol). The three components in a DataSocket subsystem are: 1. the DataSocket Server, 2. the writer (the analog I/O board and the digital signal processing board), and 3. the reader (remote client). The advantages of being able to maintain the DataSocket Server on a separate machine other than on the writer or reader are increased robustness, scalability, and security. According to National Instruments [11], [12], DataSocket simplifies network (TCP/IP) programming by automatically managing connections to clients and automatically converting measurement data, regardless of the types of data used or the P ge 7.299.2 source of the data, to and from the stream of bytes sent across the network. This automatic conversion eliminates the need to write complicated parsing code and network complexity. Therefore, users do not have to write the parsing code. Also, users can switch between data sources just by changing a simple URL. DataSocket is an ActiveX control; thus, users can use it to develop data-sharing applications in ActiveX containers such as Visual Basic, and Visual C++. This aspect simplifies the use of DataSocket to broadcast live data. There are two modes of client operations under the DataSocket setup: 1. LabVIEW based client program where a Virtual Instrumentation (VI) program runs within the LabVIEW environment in the client computer. This is the preferred mode for research activities as the user can interactively expand on the data processing capability by adding more VIs to the system block diagram. However, this mode of operation necessitates the client to have LabVIEW software and G-programming experience. 2. Web Browser based client program where a plugin to the web browser can be downloaded by the user and the virtual instrument panels are activated within the web browser. This way, the user can operate the experiment in real time with minimum learning time. However, the interface configuration is fixed and cannot be modified. This is the preferred mode for undergraduate students who are more limited in time, resource, and programming experiences. This mode requires the experiment designer to create a DataSocket reader component (ActiveX control), using ComponentWorks and Visual Basic codes to manipulate those controls, and then insert this component into a web page. Finally, to protect from undesirable users that could misuse this application, DataSocket Server Manager can handle this problem by configuring the DataSocket server setting. Users can specify which machines can create items, write items, or read items; including access permission, number of connection and predefined data items stored in the server. Users can connect a total of 1000 readers and writers to one DataSocket Server. To create DataSocket client Web page, users have to create a DataSocket reader component with which users connect to the server. Users create that component with ActiveX controls and Visual Basic codes to manipulate those controls and save this component as an ActiveX control. After making the ActiveX control, it is plugged into a Web page. The necessary software tools to build ActiveX control include: 1. ComponentWorks 2.0 DataSocket and User Interface (UI) controls 2. Visual Basic 5.0 or higher (I use version 6.0) 3. Recent versions of Netscape or Internet Explorer. The goal is to create the DSReader component using ActiveX controls in Visual Basic, and design a component that connects to the DataSocket Server, which reads live data from the server, and displays that data on a graph. The procedure is given in [10], [11], [12]. In summary, advantages of the Datasocket approach include: P ge 7.299.3 ∑ Increased robustness, scalability, and security. ∑ Handles connections to various types of data sources and existing schemes such as http, ftp, file, and opc. ∑ Automatically managing connections to clients and automatically converting measurement data. ∑ Users can switch between data sources by changing a simple URL. ∑ Users can develop data-sharing applications in ActiveX containers such as Visual Basic, and Visual C++. ∑ Accommodates three modes of operations: o Virtual experiments: simulated experiments on server o Direct data acquisition and control: PC runs signal processing programs and processes data o Indirect data acquisition and control: PC serves as a local host to a digital signal processing system which crunches the data at very high speed. (III) Course Description Web experiments were introduced into the senior level course “EE482 Instrumentation and Control” in the 2001 academic year and has since been an integral part of this required course. The old curriculum focuses extensively on classical frequency response methods such as complex variables, frequency response methods (Bode, Nyquist, Nichols), stability assessment techniques (Routh-Hurwitz, root locus), performance criteria (sensitivity, steady accuracy, transient response), and compensation (lag, lead). Although it may be argued that the course contents possess educational values, it is generally agreed that significant revision is necessary to reflect the change in technologies and modern engineering career challenges. In particular, computer-aided analysis, state space methods, and nonlinear systems are introduced into the curriculum, replacing lag, lead
[1]
Sylviane Gentil,et al.
Simulation workshop and remote laboratory: two Web-based training approaches for control
,
2000,
Proceedings of the 2000 American Control Conference. ACC (IEEE Cat. No.00CH36334).
[2]
Lawrence A. Crowl,et al.
Distance learning applied to control engineering laboratories
,
1996
.
[3]
Chr. Schmid,et al.
A Web-based system for control engineering education
,
2000,
Proceedings of the 2000 American Control Conference. ACC (IEEE Cat. No.00CH36334).
[4]
Timothy N. Chang,et al.
Graduate Engineering Student Performance Assessment: How Learning Pattern Affects Test Score
,
2000
.
[5]
Jim Henry.
Running Laboratory Experiments Via The World Wide Web
,
1998
.
[6]
Xuemei Sun,et al.
Integrating Nanotechnology into Undergraduate Experience: A Web-based Approach*
,
2002
.
[7]
Michael S. Shur,et al.
Conducting laboratory experiments over the Internet
,
1999
.
[8]
Tong Heng Lee,et al.
Remotely operated experiment for mechatronics: monitoring of DCS on the Internet
,
2001,
2001 IEEE/ASME International Conference on Advanced Intelligent Mechatronics. Proceedings (Cat. No.01TH8556).
[9]
Chr. Schmid,et al.
Web-based remote experimentation using a laboratory-scale optical tracker
,
2000,
Proceedings of the 2000 American Control Conference. ACC (IEEE Cat. No.00CH36334).