LabVIEW
Basics
National Instruments LabVIEWTM is a highly productive graphical programming environment that combines easy to use graphical development with the flexibility of a powerful programming language. LabVIEW offers an intuitive environment, tightly integrated with measurement hardware, for you to quickly produce solutions for acquisition, analysis, and presentation of data.
Building the Virtual Instrument
With LabVIEW, you quickly build virtual instruments (VIs) consisting of a front panel user interface and a block diagram. These user interfaces give you interactive control of the software system. Then, to define the behavior of the system, you simply assemble a block diagram - a natural design notation for engineers and scientists.
To create the user interface for a VI, you place the controls and data displays for your system on the front panel by choosing objects from the Controls palette, such as numeric displays, knobs, meters, gauges, thermometers, tanks, LEDs, charts, and graphs. Then, you control your system at runtime by simply operating the various objects on the front panel, whether it be moving a slide, zooming in on a graph, or entering a value from the keyboard. You construct a block diagram to define the behavior of a VI without having to worry about the many syntactical details of conventional programming. You can select objects, or icons, from the Functions palette and connect them with virtual wires to pass data from one block to the next. These blocks range from simple arithmetic functions to advanced acquisition and analysis routines, to network and file I/O operations.
LabVIEW Features
LabVIEW uses a patented dataflow programming model that frees you from the linear architecture of text-based languages. Because it is the flow of data between objects on a block diagram, and not sequential lines of text, that determines execution order in LabVIEW, you can easily create diagrams that execute multiple operations simultaneously. Consequently, LabVIEW is a multitasking system capable of running multiple execution threads and multiple VIs concurrently.
LabVIEW VIs are modular in design, so any VI can run on its own or be used as part of another VI (subVI). With this modularity, you can design a whole hierarchy of VIs and subVIs that serve as building blocks in any number of applications. You can then modify, interchange, and combine VIs with ease as your application needs change.
In many applications, execution speed is a critical consideration. LabVIEW is the only graphical programming system with a compiler that generates optimized code with execution speeds comparable to compiled C programs. To further improve performance, you can analyze and optimize time-critical sections of code with the built-in Profiler. In this way, you increase productivity with graphical programming without sacrificing execution speed.
Instrument Control
The LabVIEW GPIB, VISA (Virtual Instrument Software Architecture), VXI, and Serial VI Libraries use National Instruments industry-standard device driver software for complete instrumentation control. You can control instruments with RS-232 serial interfaces or any GPIB instrument connected to a National Instruments IEEE 488.2 interface board. VISA, the I/O software interface endorsed by the VXIplug&play Systems Alliance, supplies easy programming of VXI instruments. Additionally, you can communicate with your instruments from embedded VXI controllers, PXI modular systems, or computers with a MXI or GPIB-VXI interface.
With the LabVIEW Instrument Wizard, you immediately detect any instrument connected to your computer, including GPIB, VXI, Serial, and computer-based instruments. The wizard installs appropriate instrument drivers and in minutes helps you communicate with your instruments. LabVIEW instrument drivers translate instrument capabilities into a set of high-level functions to reduce development time and simplify instrument control by eliminating the need to learn the complex low-level programming protocol for each instrument. Nearly 900 instrument drivers are available free on CD or through the Web on the Instrument Driver Network.
Data Acquisition and Control
The data acquisition (DAQ) VI library acquires waveforms and generates signals with all National Instruments plug-in and remote data acquisition products. The plug-in boards are ideal for high-speed, direct control applications. LabVIEW also has drivers for I/O devices such as PLCs, data loggers, and single-loop controllers. National Instruments offers signal conditioning and remote DAQ modules that integrate smoothly with LabVIEW. The LabVIEW DAQ Solution Wizard and the DAQ Channel Wizard combine to help generate a complete data acquisition solution step-by-step in a matter of minutes.
Data Analysis
The powerful, comprehensive analysis libraries in LabVIEW rival those of dedicated analysis packages. These libraries are complete with functions for probability and statistics, linear algebra, signal generation, time and frequency-domain algorithms, windowing, digital filtering, curve fitting, optimization, and a host of other mathematical operations.
Connectivity
LabVIEW features numerous VI Libraries to communicate with other applications. You can call any
DLL or shared library from within LabVIEW, and the ActiveX container allows programming of any ActiveX control or document. TCP/IP and UDP networking VIs are available for communication with remote applications. The Internet Developers Tools add e-mail, FTP, and Web capabilities to applications. With remote automation VIs, you can control the execution of distributed VIs on other machines. ActiveX automation or Dynamic Data Exchange (DDE) allow integration of VIs with other Windows-based applications. For Mac OS users, there are Apple Events VIs. On UNIX platforms, VIs pass data between applications via named pipes.
Standalone Applications
The LabVIEW Application Builder gives you the ability to create and distribute standalone executable applications. These executable applications run at compiled execution speeds and can be distributed free of charge in conjunction with National Instruments driver level software in most cases. For Windows platforms, the LabVIEW Application Builder features a Distribution Kit Builder for easily creating installation disks for executables.
LabVIEW Competitive Advantage
LabVIEW users report significant productivity gains when compared to traditional development tools.
LabVIEW:
- Reduces development time by a factor of 4 to 10
- Preserves capital investment in computer and instrumentation hardware
- Empowers a larger group of users to develop their own solutions
- Completes the entire application without the addition of more complicated development tools
- Simplifies complicated development tasks with powerful add-on tools for tasks such as data analysis and visualization, report generation, and corporate database connectivity
- Ensures successful development through National Instruments support services and a huge user network
See also:
LabVIEW Overview