The National Instruments (NI) LabVIEW Platform is a tightly integrated suite of industry-standard hardware components and software tools for building measurement and automation applications. It is widely recognized as one of the strongest and most flexible platforms available for developing Mixed Signal I/O Systems, with broad application in the industrial measurement space. Integrating a system from a unified set of hardware and software tools brings significant benefits: The level of hardware/software integration is tight and seamless; the time from concept to deployment is reduced; the user experience is consistent across multiple systems; and support and maintenance are simplified.
LabVIEW is a programming language. It is the primary application software development tool within the NI LabVIEW Platform, but it is not the only one – the Platform also includes support for ANSI C and Microsoft Visual Studio, plus other configurable software tools that do not require programming. So, using LabVIEW is not strictly necessary – if you have staff that are competent with C, C++ or Python they can use whatever software development tool they prefer to integrate the platform hardware.
However LabVIEW does have some very unique and powerful attributes that are optimised for building measurement and automation applications – in particular, LabVIEW code inherently takes advantage of today’s multi-core processors and multi-threaded operating systems. If you would like to find out more about how LabVIEW compares with other languages like C or C++ see our Frequently Asked Questions (FAQ) page for LabVIEW.
Don’t be misled by the name. When LabVIEW was initially developed by National Instruments in the early 1980s it was conceived as an engineering “laboratory tool” – Laboratory Virtual Instrument Engineering Workbench. However, as one of the first graphical engineering applications developed for the new generation of Windows and Macintosh PCs, it was very quickly pulled by its target market (engineers) into mainstream engineering software development. It has been actively developed for the broad engineering software market ever since.
The LabVIEW Platform does not compete head-to-head with PLCs and generic PCs in the same industrial application space. Instead it complements the traditional roles of the PLC and PC, by extending the industrial application space into areas that are not well served by either the PLC or PC alone.
Specifically, it includes a family of rugged PAC (Programmable Automation Controller) devices that address industrial applications that push or exceed the boundaries that can be achieved with traditional PLC or PC tools. PACs combine the industrial ruggedness of a PLC, and the flexibility and programmability of a PC, in a single hardware device. They address application niches that are too computationally demanding for PLCs, in environments that are too harsh for PCs. And this application space is growing at an increasing rate as the demands on industrial processes and systems become more challenging.
No, National Instruments does not manufacture PLCs. However, the Platform does include tools that allow LabVIEW to read and write data in a supervisory capacity to any industry standard PLC. So a system based on the LabVIEW Platform can include industry standard PLCs within its network of I/O options, and can also act as a Master or Slave to any other traditional PLC-based SCADA System.
The LabVIEW Platform does include what is arguably the industry’s widest range of PAC products. A PAC is like a very, very smart PLC, and is increasingly replacing the PLC as the I/O device of choice for more demanding industrial measurement and automation applications.
No, you cannot use LabVIEW to program a PLC. You will continue to program your PLCs using the PLC vendor supplied tools that you or your engineering staff are familiar with. But you can read and write to your PLC code from a LabVIEW application. So a LabVIEW application could write a control loop setpoint to a PLC, and read back the system response.
You CAN use LabVIEW to program all the operations of a National Instruments PAC.
No they are not! LabVIEW is an exceptionally powerful high-level application development environment that is optimised for creating measurement and automation applications. ICON Technologies has been working with LabVIEW for over 27 years, and we have never encountered a project that we were unable to complete very effectively using LabVIEW, including full control systems for major pilot plants, and critical sub-systems of traditional plant DCS systems. On more than one occasion we have been asked by our clients to take over and complete projects that had exhausted the capabilities of their existing (C or C++ using) contractors.
In reality LabVIEW, C, and C++ are all very powerful programming tools – what you can get out of each tool is more about the skills and experience of your developer than the tool itself. For another take on the same question see this article, LabVIEW or C? (Could You Rephrase the Question).
Most IT professionals have training and expertise in IT environments, but not engineering environments. LabVIEW is an “engineering-centric” tool, so most IT professionals will not have used LabVIEW for any significant task, and will not have had the chance to properly evaluate it’s capabilities.
If they have encountered LabVIEW in their workplace, it is often code that has been created by undergraduate engineers with little or no experience in how to create properly structured LabVIEW Dataflow code.