Web Service and Interface for Remote Electronic Device Characterization

Remote users can control measurements and monitor results in real time from anywhere on the Internet.

A lightweight Web Service (WS) and a Web site interface have been developed that enable remote measurements of electronic devices as a “virtual laboratory.” Using standard browsers without additional plug-ins (such as Internet Explorer, Firefox, or even Safari on an iPhone), remote users can control a Keithley Instruments’ source-measurement unit and monitor results in real time from anywhere on the Internet. The present interface is flexible, and could be expanded to many other devices and instruments, such as remote measurements of bionanotechnology or micromechanical devices.

A schematic of user interaction with the remote instrument and device through the Web Service interface.
While Web-based remote instrument control has been investigated for over a decade, most implementations have been “heavyweight” approaches relying on Web servers with Java or PHP Hypertext Processor (PHP) scripts. These often require users to download a ~100 megabyte National Instruments’ LabVIEW or Java browser plug-in, in addition to having a compliant browser. Other remote laboratories require the measurement software itself, such as LabVIEW.

The server software successfully places test requests into a queue, conducts the tests in order, and provides ongoing measurement results to all connected users. Finally, in order to encourage further development of other systems based on this work, the project code has been posted online as open source.

Web Services provide a standardized means to expose the inputs and outputs of a process to a variety of other remote systems, combining standardized communication over the Hypertext Transfer Protocol (HTTP) with standardized text data in the Extensible Markup Language (XML). Development with WS has been successfully used for remote instrument control with many possible interfaces for the end user. By making use of the recently added WS capabilities in LabVIEW, virtual instrument (VI) control panels can be operated via external computers by connecting to instrument controls through familiar HTTP links. Thus, the WS for the remote-controlled instrument accepts simple HTTP requests and returns XML files with results. This enables any type of client —for example, a Web browser with JavaScript but no additional plug-ins — to run electronic measurements on a remote server.

To enable remote connectivity to the lab instruments, a user friendly Web site interface was developed with support for on-demand content loading. The Web site works on any Web browser with support for a JavaScript XML HTTP Request, a common feature in most Web browsers on all operating systems including Internet Explorer, Mozilla Firefox, and even Safari running on the iPhone. The Web site avoids the need to load a sequence of pages, as all controls and displays are on a single page.

Appropriate sourcing parameters are pre-programmed in the LabVIEW VIs, which also set the voltage and current compliances. Information about the requested measurement and associated compliance limits is determined in the Initial Request, an initiating request made by the client. While determining the information for requesting a test, data currently being collected by the remote lab instrument is displayed to all active sessions. This feature allows users to collaborate as well as view the results of other users, in order to develop a better intuition about the measurements.

As the test data is acquired by the instrument, it is made available to the client in real time. Every second, a New Data Request with no data other than the standard HTTP headers is sent, for which an XML data response is provided with the newest data points recently acquired by the lab instrument. This data is just over 500 bytes in size, which highlights the low bandwidth of the requests, due to data being sent in small packets rather than in a high-overhead Web page. The delay in transporting data over the HTTP protocol is typically ~100 ms, which is usually fast enough to receive data in real time, at a rate below ~10 Hz. This delay is largely determined by server performance.

Users view data in a separate text box for each test run while connected. The text box provides a mechanism for the data to be easily copied and pasted into a spreadsheet, and subsequently analyzed. The Web site data plot is also updated in real time. A screen capture can copy the plot for use elsewhere.

Only a basic keyboard and mouse are needed to operate the Web site because the controls are all buttons and numerical input fields. The WS server software consists of eleven VIs in LabVIEW. The three categories of VIs are: (1) software and hardware control options, (2) VIs invoked by client requests such as the queue handler, and (3) internal processes that consist of the instrument control VI and queue manager VI. Client requests such as test input selections are sent to the unique URL for a particular VI in category (2). The VI checks the request inputs against the options in category (1) and accordingly takes action by verifying or correcting the test inputs and then queuing the test using the queue manager VI in category (3). The queue manager VI runs the instrument control VI for every dequeued test, dequeuing tests in the order they entered the queue.

This work was done by Sumit Dutta, Shreya Prakash, David Estrada, and Eric Pop of the University of Illinois at Urbana-Champaign for the National Science Foundation. NSF-0001

This Brief includes a Technical Support Package (TSP).
Document cover
Web Service and Interface for Remote Electronic Device Characterization

(reference NSF-0001) is currently available for download from the TSP library.

Don't have an account? Sign up here.