There are a number of commercially available software packages, such as National Instruments' LabVIEW and Hewlett Packard's HP VEEE, that will allow a user to develop software drivers to create computer based instrumentation systems. LabVIEW is the most prevalent software instrumentation package used by both universities and corporations. National Instruments provides a large library of over 650 software drivers already written in LabVIEW for a wide array of scientific instruments, allowing for quicker development time. For these reasons, LabVIEW was chosen as the implementation platform for the methodologies developed in this paper. The front panel, which is the user interface, is comprised of pictographs representing buttons, knobs, switches and visual displays, as shown in Fig. 1 .
Variables hold the data shown by the various controls and displays on the front panel.
CINs allow for the integration of compiled code written in a different language to be used in a LabVIEW program. Sub VIs are objects that can be reused by the programmer to accomplish certain commonly occurring tasks. A VI's front panel shows a continuous representation of the scientific instrument while incremental and reversible physical actions are accomplished by manipulating virtual buttons and knobs. A LabVIEW controlled instrumentation system is illustrated in Fig. 2 . The figure shows a LabVIEW VI running on a desktop computer connected to a peripheral instrument through a serial or GPIB interface.