LabVIEW Interface Library for RIGOL/Tektronix oscilloscopes
An interface library for LabVIEW, allowing communication with selected commercially available oscilloscopes was developed. The library utilizes SCPI commands and an Ethernet connection to enhance its versatility – it can be quickly expanded to support any other oscilloscope model with a LAN port and support for SCPI. It is platform independent, and as such was tested both on PC and cRIO rugged controllers, i.e., it is compatible both with Windows and Linux RT. The library supports RIGOL MSO2000 and MSO5000 series, plus Tektronix MSO64 series of oscilloscopes. It contains a direct implementation of the majority of SCPI commands for selected oscilloscopes (over 200 functions), plus separate, bundled commands, allowing for rapid interfacing of the oscilloscopes. Via a few subVIs, a programmer can set the parameters of the connection, define most of the oscilloscope functions, trigger measurement (automatically, or via user-defined trigger), and download measured data from the oscilloscope. It is also possible to tune the acquisition process (set a buffer size, an acquisition speed, and, in the case of Tektronix devices, set ADC resolution as well). The programmer can then choose the method of data download, with the library even containing a data parser to support binary data transfer. Data from the oscilloscope can be then passed via documented named queue for additional processing. To further streamline the process of library deployment, several examples highlighting the library functionality were implemented as well. Due to the support of several commercially available oscilloscopes with the option of quick implementation of any other SCPI and Ethernet-compatible model, the library can act also as a hardware abstraction layer, simplifying and streamlining the development of any LabVIEW application requiring communication with almost any oscilloscope-type device.