What Is LabVIEW Programming and Why You Should Use it

LabVIEW ProgrammingLabVIEW is a programming environment and system design tool for a visual programming language, developed by American company National Instruments. If you’re an electronics, electrical or instrumentation engineer, or a budding one, LabVIEW should definitely be on your radar, if it already isn’t, that is. This powerful platform is used worldwide in hundreds of fields, and the amount of scope for a LabVIEW programmer is nothing short of enormous. Interested? Read on to find out more about LabVIEW!

History

National Instruments was founded in the early 1970’s by James Truchard, Jeff Kodosky and Bill Nowlin, who worked at the University of Texas, Austin. They were working on a U.S. Navy project, and realized that the data acquisition and collection methods they were using were highly inefficient, increasing time required to complete the project. Sometime later, they decided to create a product to ease their workload, and thus, National Instruments was born. It was 1976, and testament to the fact that every great thing starts out small, one of the biggest names in the electronics and automation industry started out from a garage.

Initially starting off with creating a GPIB (General Purpose Interface Bus) interface for the then popular PDP-11 microcomputer, the team at National Instruments found success, with ever increasing orders from all parts of the country. It took until 1981 for National Instruments to hit the $1 million sales mark, after which they moved into a much larger office. During this time, they kept creating better GPIB boards, and also took up special projects from the government.

In 1983, National Instruments reached another milestone when they created a GPIB board for IBM PCs. By that time, Apple had started producing their new Macintosh computers, and the company felt that they should be changing tracks and focusing on the new graphical user interface based computers as well. This lead to the creation of the now iconic LabVIEW development platform, which was first released for the Macintosh computer in 1986. In 1987, National Instruments then released a version for the DOS environment, called LabWindows. Over the next several years, National Instruments expanded further, adding even more new features to LabVIEW. Multiple globally well-known companies took up LabVIEW for their internal processes, and so did industries and governments. And the rest, as they say, is history.

National Instruments

The Language

LabVIEW differs from most other development platforms in the regard that it depends on ‘visual programming’ more than actual coding. In simple words, you use either predefined or custom components to complete programming tasks. For example, to create a reiterating series, all you need to do is drag and drop the corresponding loop functionality onto the block diagram. Add your conditions, outputs, connections, and you’re good to go!

Language

The language used in LabVIEW is also called ‘G’, which is completely different from the numeric control programming language G-code or G programming language. G is a dataflow programming language, which means that it models its programs on directed paths. Or simply, it is a dynamic path based language that changes outputs depending on variables in the program flow, which can be changed to reflect output changes. It is a highly versatile programming language that reflects changes in real time, suitable for real world applications.

The Programming

Using LabVIEW is deceptively easy in the beginning since it just involves connections and components, but once you dig deep, it gets much more complex. What’s even more interesting is that LabVIEW also lets you create user interfaces in the programming cycle, eliminating the need of making the code or function more ‘user friendly’. So how does it work? Here’s a lowdown.

First of all, LabVIEW programs are called ‘virtual instruments’ or Vis, even the file extension is .vi. Once you open it up and start a new project, you get two windows, namely, the front panel and block diagram. Both of these windows are used simultaneously to create your functions/programs. The front panel has components called ‘controls’ and ‘indicators’. The former refers to inputs, while the latter refers to outputs. There’s multiple forms and types, so depending on application, you can use any one, or multiple, for that matter!

Front Panel and Block Diagram

Once you’ve placed your main components, the block diagram is where you actually make all the connections and add functions. The components placed in the front panel appear in your block diagram as well, so all you have to do is add your functional components and connect them together to achieve output. Any errors will be highlighted and explained before you run it, and custom circuits can also be saved as user functions.

This is a very simple overview, of course, it’s up to the programmer to use the components to create complex functions. The beauty of LabVIEW lies in the fact that simple components and functions can be strung together to create complex programs and interfaced to devices. An expert LabVIEW programmer should have extensive knowledge of all its syntax, topology, functions and components, only then can he or she get the most out of it. As we mentioned earlier, it seems deceptively easy at first, but is difficult to master.

Advantages and Disadvantages

So you now know how versatile and easy to use, yet complex LabVIEW is. But why should you be using it? Apart from the vast possibilities, LabVIEW has a whole bunch of advantages that you might want to know about. Check them out:

  • Easy to use because of the graphical interface
  • Intuitive and easy to understand
  • Dynamic debugging
  • Multithreading and multicore support
  • Built in basic functions and components
  • Highly customizable and can be used for the simplest functions to highly complex programs
  • Easy interfacing, lets you connect multiple devices and programmable boards for development
  • Efficient coding because of code reuse
  • Addons and third party plugin support for extended functionality
  • Complexity is broken down and errors can be found easily

Sound interesting? LabVIEW sure does have a whole lot of advantages, especially for applications where visual feedback is paramount, and when programmers cannot spend months learning a new language. However, there always two sides to a coin. LabVIEW isn’t perfect, there are some shortcomings as well, like:

  • Expensive licensing for creating stand-alone applications
  • Slower application performance compared to programs written on native languages like C, most apparent in applications involving multiple components and hardware
  • Higher system requirements
  • Dependent on specific runtime environments, libraries and has prerequisites not already installed on computers
  • More suited for testing and measurement purposes
  • No international standards like C

Applications

Of course, everything has a good and bad side, so you can’t just brush off something as the best or worst. LabVIEW finds optimal usage in a couple of sectors, and is used, as mentioned earlier, all over the world. Here’s some applications of LabVIEW:

  • Wind turbine monitoring
  • Oil and gas pressure monitoring
  • Power quality monitoring
  • Machine control monitoring
  • Commercial and industrial robotics
  • Customized control and measurement
  • Machine condition monitoring
  • Data acquisition
  • Signal processing
  • Instrumentation control
  • Aerospace and transportation systems control and monitoring
  • Embedded systems testing
  • Device and component prototyping
  • Industrial automation
  • Weather monitoring and warning systems
  • UI design for instrumentation
  • Industrial and commercial result/output generation systems

There’s no doubt that LabVIEW is used in a variety of applications. Wondering about some companies that make use of it? Some of the big names include Microsoft, Lockheed Martin, NASA, GE, Siemens and many more!

Applications

Conclusion

If you were wondering what the big deal about LabVIEW was, we hope that it’s been cleared out at least a little bit. LabVIEW has huge potential in pretty much every country around the world. With the shift in focus to automation and efficient power generation systems, LabVIEW will only get more popular. Whether you’re looking to create the next big thing or simply work on some of the world’s biggest problems affecting millions of people, you just can’t go wrong with learning LabVIEW programming.

The best part is that since it’s easy to understand, you shouldn’t take too long to get a grasp of the basics. Once that’s done, dive head first into its excellent complexity to create programs and applications for use in various industries and companies today. So what are you waiting for? Get (visual) programming!