What Is LabVIEW? (and why do I care?)

By James McNally | Technologies

Powered By LabVIEWMaybe you’ve been told that you should be using LabVIEW by an engineer?

Or you’re looking at National Instruments hardware and come across LabVIEW?

But what is LabVIEW and will it suit your needs.  We have written this article to give you a quick introduction to this powerful software so you can decide if you would like to learn more.

What Is LabVIEW?

LabVIEW is a software development environment and language created by National Instruments.

Its key innovation is that it uses graphical diagrams rather than lines of text which makes it more intuitive for engineers and excellent for parallel programming.

Example of LabVIEW Code

Why Care?

When using the system as an end user, you shouldn’t.  As long as the application does what you need, the language used is not that important.  However, LabVIEW does make certain things more efficient which can reduce your training or development time and cost. Where LabVIEW excels is:

  • Developer efficiency – Being graphical and being a high-level language means that (with the right training) developers can be very efficient. A large number of application-specific toolkits such as sound and vibration analysis, electrical power analysis or digital filter design also reduce the time to develop applications.
  • Hardware support – LabVIEW has excellent support for NI hardware but also a vast array of different buses and protocols for other equipment such as serial, Modbus, TCP, OPC and many others. We can find a way to make it talk to LabVIEW.
  • Desktop and Embedded from one platform – Normally embedded targets such as real-time operating systems or FPGAs require a different skill set to develop. LabVIEW makes it possible for one developer to work with all three increasing the capabilities of the system.

How does it Work?

We build LabVIEW applications out of Virtual Instruments (VIs) which are our building blocks. These can be part of a toolkit library or custom made by the developer.

Each of these contains two parts:

  1. The Front Panel which provides the user interface including controls and indicators for different data types such as numbers or text. LabVIEW comes with a selection of displays for these, for example, a number might be on a graph or a gauge.
  2. The Block Diagram which is where we write the code. This contains different “nodes” or functions which have inputs and outputs. The developer drops these nodes and wires inputs to outputs to define the functionality. This graphical display is key. Rather than running depending on the layout (i.e. top to bottom in a text-based application), the LabVIEW compiler will allow each node to run as soon as all of it’s inputs are available. We call this data flow, and it makes LabVIEW easier to follow than text-based code and allows the compiler to optimise our system to run on parallel or multi-core hardware.

Who is Using LabVIEW?

Most large engineering companies probably have some LabVIEW code somewhere. Engineers are mostly using it in test departments as well as for laboratory measurements.

Since NI released their compactRIO platform, engineers are also using it for embedded data acquisition or control applications.

At Wiresmith Technology we focus on automated measurement systems which are used in research, development and test departments. As an example of a couple of the companies that we have worked with:

Have questions or looking for help? Contact Us or read more about our LabVIEW Consultancy.


About the Author

I founded Wiresmith Technology to help engineers improve their systems and products with quality measurement systems. I'm a Certified LabVIEW Architect, Certified LabVIEW Embedded Developer and LabVIEW Champion.

(1) comment

Add Your Reply

By continuing to use the site, you agree to the use of cookies. more information

The cookie settings on this website are set to "allow cookies" to give you the best browsing experience possible. If you continue to use this website without changing your cookie settings or you click "Accept" below then you are consenting to this.