The visual nature of LabVIEW makes it straightforward for programming novices to create applications, especially when using features such as express VIs, which replace the coding tasks with a dialogue box configuration
Electronic system-level design is an electronic design methodology that is defined as “the utilisation of appropriate abstractions in order to increase comprehension about a system, and to enhance the probability of a successful implementation of functionality in a cost-effective manner.” In other words, it makes it easier to understand an electronic system by showing only the essentials of the system. The basic premise is to model the behaviour of the entire system using a high-level language such as C, C++, LabVIEW or MATLAB, or by using graphical ‘model-based’ design tools. In this article, we look at one such system design software offering from National Instruments, called LabVIEW.
A software-based ecosystem is fast becoming one of the most talked about features for more and more T&M companies. This is, in part, due to the clear advantage of a system that has multiple test capabilities, a marked difference from the traditional instrumentation approach. The flexibility, scalability and higher testing speeds are driving this particular industry trend. To make things clearer, a modular instrument is essentially generic hardware that acquires and generates raw data while the software is stored on the user’s PC, which allows user-defined measurements and analysis. On the other hand, a successful software-defined T&M system comprises not only hardware platforms that are modular, reconfigurable and based on open industry standards but also system design software that can be used to easily define the functionality of the system.
National Instrument’s LabVIEW is one such example. It is a graphical programming platform that helps engineers scale from the design to test stage, for both small and large systems. It allows for unprecedented integration with the legacy software and hardware, while capitalising on the latest computing technologies. LabVIEW programs are called virtual instruments (VI), because their appearance and operation imitate physical instruments. LabVIEW contains a comprehensive set of tools for acquiring, analysing, displaying and storing data as well as tools to help you troubleshoot your code. The VIs contain three components—a front panel, a block diagram, and the icon and connector pane. In LabVIEW, you build a user interface, or front panel, with controls and indicators. The most common controls are knobs, dials, push buttons and other input devices. The most common indicators are graphs, LEDs and other displays. After you build the user interface, you add code using VIs and structures to control the front panel objects. The block diagram contains the code and can be considered analogous to a flowchart.
You can use LabVIEW to communicate with hardware such as vision, data acquisition and motion control devices as well as GPIB, VXI, PXI, RS-232 and RS-484 devices. It also has built-in features for connecting your application to the Web using the LabVIEW Web Server and software standards such as ActiveX and TCP/IP networking. LabVIEW lets you create test and measurement, data acquisition, data logging, measurement analysis and report generation applications. It is also possible to create stand-alone executables and shared libraries, like DLLs, because LabVIEW is a true 32-bit compiler. Let us check out some of the important features of this software.
Access to instrumentation hardware
LabVIEW scores over other development environments because it has extensive support for accessing instrumentation hardware. Abstraction layers and drivers for many different types of instruments and buses are included (or are available for inclusion). These present themselves as graphical nodes. The abstraction layers offer a set of standard software interfaces to communicate with the hardware devices. The pre-loaded driver interfaces save program development time. According to NI, the USP of LabView is that even people with limited coding experience can write programs and deploy test solutions in a reduced time frame when compared to working with more conventional or competing systems.
In terms of performance, LabVIEW includes a compiler that produces a native code for the CPU platform. The graphical code is translated into executable machine code by interpreting the syntax and compilation. The syntax of LabVIEW is strictly enforced during the editing process, and compiled into the executable machine code when requested to run or even while saving. In the latter case, the source code and the executable are merged into a single file. The executable runs with the help of the LabVIEW run-time engine, which contains some pre-compiled code to perform common tasks that are defined by the ‘G’ language. The run-time engine does the dual function of reducing compile time and also providing a consistent interface to various operating systems, graphic systems, hardware components, etc. The run-time environment is the reason the code is portable across platforms.