Let's start out with a brief introduction to LabVIEW and a comparison to OpenTAP.
What is LabVIEW?
LabVIEW (Laboratory Virtual Instrument Engineering Workbench) is a graphical programming environment developed by National Instruments. It is widely used for data acquisition, instrument control, and industrial automation. LabVIEW enjoys popularity across engineering and scientific communities for developing automated test systems, validating designs, and conducting research.
Key features of LabVIEW
Graphical Programming: LabVIEW uses a visual programming language called "G" which allows users to create programs by connecting nodes with wires in a block diagram.
Data Acquisition and Instrument Control: It can connect to and control a wide range of instruments, making it ideal for test and measurement applications.
User Interface Integration: LabVIEW integrates the creation of user interfaces (front panels) into the development process, allowing for real-time monitoring and control.
Cross-Platform Support: It is hosted on various operating systems, including Windows, macOS, and Linux.
Comparing LabVIEW and OpenTAP
While both environments both enable the automation of test sequences and streamline the interface to test instruments, the approach of LabVIEW employs a WYSIWYG graphical interface. Rather than writing test plans as a series of Test Steps (as with OpenTAP and PathWave Test Automation), LabVIEW offers users a drag-and-drop, graphical representation of test operations, flow control, input/output, etc. Such an environment is perceived (especially by managers)) to foster ease-of-use and shorten the learning curve and time-to-productivity. Conversely, many test engineers regard the visual paradigm to be overly simple, with complex test operations resulting in complex, crowded and hard-to-follow graphical representations.
| Programming Model | Graphical | Textual (underlying XML) |
| License | Commercial/Proprietary | Open Source (engine) and Commercial (PathWave Test Automation) |
| Host Platforms | Windows, Linux, macOS | Windows, Linux, macOS |
| Extension | Libraries for data analysis, signal processing and more | Plugin Ecosystem, Python |
Getting Started with the OpenTAP LabVIEW Plugin
A LabVIEW program consists of .vi files containing LabVIEW code. Each file contains one functional unit - a VI function (a.k.a. a “VI”). Each VI has inputs and outputs, each of which can be executed in parallel or sequentially.
Prerequisites
To take advantage of the OpenTAP LabVIEW Plugin, you must have a functioning LabVIEW development environment and an up-to-date version of OpenTAP
LabVIEW Runtime compatible with generated assembly
OpenTAP 9.x
Mapping LabVIEW VI Functions into OpenTAP
The LabVIEW OpenTAP plugin makes it is possible to call a VI from OpenTAP, by mapping each LabVIEW VI to an OpenTAP test step. Since a VI has inputs and outputs and a VI function call takes those inputs and emits outputs as results, they are analogous to how many OpenTAP test steps work. making the conversion fairly straightforward.
How the Plugin Works
VI files are exported using the Application Builder module in LabVIEW. A type data provider (ITypeDataProvider/ITypeDataSearcher) finds DLLs which reference LabVIEW and searches them for plugins.
The VI inputs map to settings on the OpenTAP test step, while VI outputs map to output settings.
VI classes and clusters can be passed between VI steps, but they can only be created from VI steps.
Use OpenTap.LabView.Test1.dll to test various functionality (LabVIEW Examples plugin)
Resources
LabVIEW Plugin GitHub Repository