Engineers and scientists can use LabVIEW to seamlessly integrate with thousands of different hardware devices, and helps save development time with convenient features and a consistent programming framework across all hardware.
System integration, getting everything setup and configured such that you begin programming a system, can be a major undertaking, often taking more time than the programming, measurement, or test you wish to perform. Integrating different hardware devices with traditional tools is littered with time-wasting steps and possible incompatibilities, increasing risk. First, you have to find the correct drivers for all of your hardware, and then you have to figure out how to install them and call them from software. Once your drivers are usable, you need them to communicate with the hardware and learn the programming model that the driver designer decided was appropriate for that particular device. LabVIEW can help save you time and frustration by eliminating some of these steps and making others markedly easier.
LabVIEW is one software tool that can span all of your hardware components. Drivers are readily available for common hardware devices. Each hardware driver shares a similar, familiar programming model, and examples of how to use the model install directly into LabVIEW.
With LabVIEW, you can use all of your hardware with a single development environment. Connectivity is made possible with driver software, which serves as the communication layer between LabVIEW and your hardware. LabVIEW driver software supplies seamless integration across multiple types of instruments, buses, and sensors, including data acquisition devices; boxed instruments; modular instruments; motion controllers and motor drives; machine vision and image processing hardware; wireless sensors; and field-programmable gate arrays (FPGAs). In the rare event that a LabVIEW driver doesn’t already exist, you also can import drivers from other programming languages or use low-level communication to implement your own driver.
Figure 1: LabVIEW seamlessly integrates thousands of measurement and control devices.
NI is a global market leader in PC-based data acquisition, with a complete family of data acquisition products for desktop, portable, industrial, and embedded applications. You can use NI-DAQmx driver software to integrate more than 200 data acquisition devices in LabVIEW on a variety of major buses and form factors, including USB, PCI, PCI Express, PXI, PXI Express, wireless, and Ethernet.
In addition to data acquisition hardware, NI also offers other specialty test, measurement, and control hardware. PXI instruments synchronize measurements, signal generation, radio frequency (RF), and switching components for automated test systems. NI programmable automation controllers combine the ruggedness of a PLC and the performance of a PC for industrial measurement and control applications. Vision devices also offer unique capabilities not found in many traditional sensors, such as verifying component positioning, counting physical elements, and reading bar codes. Each hardware type includes its own driver software for easy integration into LabVIEW. Examples include:
The drivers for all of these products were designed with LabVIEW in mind and feature convenient access to all of the available functionality of the hardware. The driver installs directly into LabVIEW and adds new functions to the Functions Palette so you waste no time locating and including support for your hardware. NI device drivers generally implement advanced features such as device name aliases and hardware simulation so you can develop software without tying yourself to a particular device. As long as your device supports the same functionality, the driver can adapt to the new device, even if the underlying technology changed dramatically, such as when moving from a PCI-based data acquisition device to a wireless device.
LabVIEW does more than just connect to NI hardware. LabVIEW also connects to thousands of third-party instruments through instrument drivers. The Instrument Driver Network (IDNet) offers more than 10,000 free drivers for instruments from more than 350 third-party vendors that make your hardware work with LabVIEW.
Because most of these drivers are certified by NI, they meet NI quality and usability standards and are supported by NI application engineers.
When you cannot find an instrument driver for your instrument or you want to add functionality to an existing driver, LabVIEW wizards can automatically generate code to quickly create the framework you need to develop your instrument driver. LabVIEW includes functions for interfacing with major instrument control standards such as GPIB, Serial (RS232, RS485, and RS422), USB, VXI, PXI, Ethernet, IEEE 1394, VISA, Modbus, and OPC Servers.
Learn more about using LabVIEW to acquire data and control instruments.
At ni.com, you can find thousands of free drivers for both NI hardware and third-party instruments. All NI hardware is shipped with free LabVIEW driver software, but if you lose the driver CD or need to upgrade, you can simply search ni.com to find the latest version. Many third-party vendors also ship LabVIEW drivers with their instruments. IDNet, which hosts nearly all of these drivers, is the largest collection of instrument drivers in the industry, covering thousands of instrument models from hundreds of vendors.
Figure 2: IDNet is the largest collection of instrument drivers in the industry.
In addition to searching IDNet, you can also use the LabVIEW Instrument Driver Finder to search for your third-party instrument. LabVIEW automatically detects connected instruments and searches IDNet for instrument drivers that match the model number reported by the instrument. The Instrument Driver Finder also downloads and installs the driver, making it available to you in a matter of seconds.
Figure 3: The LabVIEW Instrument Driver Finder detects connected instruments and searches for matching drivers.
Because all LabVIEW drivers are installed either by their own installer or the Instrument Driver Finder, you never have to worry about manually installing DLLs or other files into special locations.
After your hardware driver software is installed, it is natively integrated into LabVIEW, which provides a palette so you can conveniently access functions. You simply drag-and-drop the functions to your block diagram to configure and control your hardware device.
Figure 4: Once a driver is installed, you can access the instrument function palette.
Once installed, all of your hardware drivers are there for use and reuse without having to add special include directives or load separate files. You do not need to look for documentation—each LabVIEW function has its own contextual help entry. Simply hover your mouse over the function to see a description of what it does and what parameters it operates on.
Some driver software even includes features to help you properly set up and test your physical signal connections. The NI-DAQmx driver, for example, provides connection diagrams that illustrate the various connections you need to make a particular measurement. Although referring to the user manual is a good practice, these connection diagrams can be a great time saver.
Figure 5: Some LabVIEW drivers provide built-in connection diagrams to help you connect your signals.
In addition, the NI-DAQmx driver also includes test panels that provide an excellent way to test and troubleshoot the actual signals being acquired or generated by the device and your physical connections.
Figure 6: Use NI-DAQmx driver test panels to quickly test and troubleshoot signals.
LabVIEW drivers abstract low-level hardware commands into easy-to-understand, high-level functions. Most LabVIEW drivers also use a similar programming framework. The flow of an application typically starts with opening a connection to the hardware, configuring hardware settings, reading and writing measured data to and from the hardware, and finally closing the connection to the hardware. Since most drivers follow this framework, learning a new driver is relatively easy, saving development time.
Figure 7: LabVIEW hardware drivers use a common programming framework.
The common programming model that LabVIEW drivers use is the result of years of experience working with different measurement hardware. Typically you probably aren’t interested in exactly how measurement data is transferred back to your program, the nuances between register- and message-based hardware communication are likely not important to you, but sending the right commands and getting the right data is. This is why LabVIEW drivers typically present high-level, easy-to-understand operations such as “Read Single Point Measurement” or “Configure Sample Clock” in addition to the lower-level operations required to use more advanced features such as interdevice synchronization. You are not required to learn the specifics of how data is communicated back and forth between the hardware and LabVIEW, and even though several different protocols may be used in the same application, you only need to learn one approach.
Whether you are new to LabVIEW or a veteran programmer, the NI Example Finder is an incredibly useful development tool. You can search or browse through example programs covering everything from analysis and presentation to specific examples for your driver software. You can modify an existing example program to fit your application, or you can copy and paste from an example into your own program. With so many examples, you never have to start developing your applications from scratch.
Figure 8: The NI Example Finder lists examples for all installed drivers.
Each driver installs examples of major features and common use cases, so while you get the benefit of a common API, you do not have to struggle to make sense of vague, hardware-agnostic examples. Each driver comes with unique examples that show you how to use the hardware the driver supports.
With connectivity to thousands of different hardware devices, LabVIEW is the best way to connect hardware to your PC. In addition, LabVIEW helps save development time with convenient features and by providing a common programming framework across all hardware. However, LabVIEW is much more than just an interface to hardware. LabVIEW also offers thousands of built-in analysis functions; drag-and-drop controls for creating professional user interfaces and visualizing your data; ways to easily save data to disk and save reports; and an active worldwide community for collaboration and support. With its unrivaled hardware integration and other unparalleled features, LabVIEW is an industry-leading software environment.