Modular Instruments Software Architecture


PXI-based modular instruments from National Instruments are compatible with Windows operating systems and real-time operating systems if you require deterministic operation.

The development and operation of a Windows-based PXI or PXI Express system is no different from that of a standard Windows-based PC. Therefore, you do not have to rewrite existing application software or learn new programming techniques when moving between PC-based and PXI-based systems. Engineers who select PXI can reduce their development time and quickly automate their instruments by using NI LabVIEW, an intuitive graphical programming language that is the industry-standard for test, or NI LabWindows/CVI for C development.  Engineers can also use other programming languages such as those that are part of Visual Studio .NET, Visual Basic, and C/C++. In addition, PXI controllers can run applications developed with test management software such as NI TestStand. For more information on developing test architectures for PXI, read this white paper on developing a modular software architecture.

 

http:/sine.ni.com/cms/images/devzone/tut/100223_pxi14_20100422101105.gif

Figure 1. Reduce development time with LabVIEW graphical programming.

As an alternative to Windows-based systems, you can use a real-time software architecture for time-critical applications requiring deterministic loop rates and headless operation (no keyboard, mouse, or monitor). Real-time OSs help you prioritize tasks so that the most critical task always takes control of the processor, reducing jitter. You can simplify the development of real-time systems by using real-time versions of industry-standard development environments such as the LabVIEW Real-Time and LabWindows™/CVI Real-Time modules. Engineers building dynamic or hardware-in-the-loop test PXI systems can use real-time testing software such as NI VeriStand to further reduce development time. Visit the real-time measurements portal to learn more about deterministic test.

 

Measurement and Control Services

NI modular instruments feature robust software interfaces such as NI Measurement & Automation Explorer (MAX), NI-DAQ, Virtual Instrument Software Architecture (VISA), LabVIEW Plug&Play drivers, and Interchangeable Virtual Instrument (IVI) drivers. These measurement and control services software provide modular hardware interfaces for configuring and programming your tests. Most NI modular instruments come with soft front panels (SFP), which allow you to quickly troubleshoot or debug your instrument. These measurement and control services software help you avoid developing test programs that are permanently tied to specific hardware and channels in your test system, thus increasing the ease of code reuse. Let’s take a closer look at each of these components.

Configuration Manager
A configuration manager, such as MAX, presents a unified system view of measurement hardware. With MAX, users can define channel names to organize signals or specify scaling functions to convert digitized signals to measurement quantities. The key benefit of the configuration manager is the integration with the application development environments (ADEs). This integration gives developers the ability to integrate multiple measurements easily into a single application without tedious programming. Without these configuration tools, developers must spend needless time configuring these measurement functions programmatically.

Instrument Connectivity
Integrating existing traditional instruments into the test software framework should exploit technologies, such as Plug and Play Instrument Drivers and IVI, to facilitate the communication with these instruments and their interchangeability. A Plug and Play instrument driver is a set of functions, or VIs in the case of LabVIEW, that control a programmable instrument. Instrument drivers help users get started using their instrument from their computer and save them development time and cost because users do not need to learn the programming protocol for each instrument. With open-source, well documented instrument drivers, end users can customize their operation for better performance.

IVI implements a driver framework that facilitates instrument interchangeability. An IVI driver uses a general API for each kind of instrument and separately implements the driver to communicate with particular instruments. By separating the application programming interface (API) from the particular driver implementation of each instrument, an engineer can design a system using a particular IVI-compliant oscilloscope; once the system is deployed, he/she can change the brand and model of the instrument without having to rewrite the test application.

Programming Tools
Drivers can go one step beyond providing an easy-to-use API by adding tools to facilitate development by saving you time. I/O assistants are interactive tools for very rapidly creating a measurement or stimulus applications. An example of an I/O assistant is DAQ Assistant, which is part of the NI-DAQmx driver. DAQ Assistant presents a panel to the user for configuring common data acquisition parameters without programming. The combination of easy-to-use assistants and powerful programming environments is necessary to provide both rapid development and the capabilities to meet a breadth of application requirements.

 

Example Programs

In addition to the measurement and control services software discussed above, all NI modular instruments are shipped with several example programs. For example, NI-DCPower, an IVI-compliant instrument driver for NI precision DC sources, includes example programs that demonstrate concepts ranging from simple configuration to advanced sweeping and monitoring.

Figure 2. Example programs included with NI-DCPower