Abstract
LabVIEW™ is unusual among programming languages in that we did not intend to create a new language but rather to develop a tool for non-programmer scientists and engineers to assist them in automating their test and measurement systems.
Prior experience creating software for controlling instruments led us to the perspective that the software ought to be modeled as a hierarchy of ”virtual instruments”. The lowest level virtual instruments were simply reflections of the individual physical instruments they controlled. Higher level virtual instruments combined lower level ones to deliver more complex measurements. A frequency response virtual instrument could be implemented using a voltmeter and a sine-wave generator inside a loop that stepped through a frequency range. This was mostly an abstract concept at the time because it was hard to imagine how an existing language or tool could provide the rich yet intuitive experience of using a real instrument.
Inspired by the first Macintosh computer, we quickly realized the graphical user interface would be a natural way to interact with a virtual instrument, but it also sparked our imaginations about using graphics for creating software at a higher level of abstraction.
The February 1982 issue of IEEE Computer was devoted to data-flow models of computation, and it convinced us that graphical data-flow diagrams needed to be part of the solution. The major difficulty we saw, however, was the need to use cycles in the data-flow diagram to represent loops. Cycles increased complexity and made diagrams hard to understand and even harder to create.
This concern led to a major innovation in creating LabVIEW: merging structured programming concepts with data-flow. We represented control-flow structures as boxes in a data-flow diagram. We knew how to reason about loops, so we could introduce them as first class elements of the graphical representation rather than being constructed from lower-level elements. A box could encapsulate the semantics of the iterative behavior; it could clearly separate the body of the loop (the diagram inside the box) from the code before and after the loop (the diagram outside the box); and, its boundary could hold iteration state information.
Those fundamental concepts of ”graphical”, ”structured” and ”data-flow” enabled us to propose a software product. We staffed up a small skunkworks team to implement it. We called it LabVIEW. It was to be an engineer’s tool for automating measurement systems. At first, we were reluctant to admit that we had created a graphical programming language. When we finally did, we nicknamed it G, for Graphical language, so we could talk about the language as distinct from the integrated development environment (IDE), LabVIEW. In practice, almost everyone refers to both the language and the IDE as LabVIEW.
Without intending to do so, we created a programming language radically different from those that came before, pioneering techniques of graphically creating and viewing code, eliminating manual memory management without adding garbage collection overhead, and anticipating the massively parallel systems of the modern era. LabVIEW continues to evolve and thrive after more than 30 years.
- Samah Abu-Mahmeed, Cheryl Mccosh, Zoran Budimlić, Ken Kennedy, Kaushik Ravindran, Kevin Hogan, Paul Austin, Steve Rogers, and Jacob Kornerup. 2009. Scheduling Tasks to Maximize Usage of Aggregate Variables in Place. In Proceedings of the 18th International Conference on Compiler Construction: Held As Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009 (York, UK) (CC ’09). Springer-Verlag, Berlin, Heidelberg, 204–219. Google Scholar
Digital Library
- Mahesh L. Chugani, Abhay R. Samant, and Michael Cerna. 1998. LabVIEW Signal Processing. Prentice-Hall, Upper Saddle River, NJ, USA.Google Scholar
- Fabian Czerwinski and Lene B. Oddershede. 2011. TimeSeriesStreaming.vi: LabVIEW program for reliable data streaming of large analog time series. Computer Physics Communications 182, 2 (Feb.), 485–489. Google Scholar
Cross Ref
- Alan L. Davis and Robert M. Keller. 1982. Data flow program graphs. Computer 15, 2 (Feb.), 26–41.Google Scholar
Cross Ref
- D. D. Gajski, D. A. Padua, and D. J. Kuck. 1982. A Second Opinion on Data Flow Machines and Languages. Computer 15, 2 (Feb), 58–69. Google Scholar
Digital Library
- Per Brinch Hansen. 1975. The Programming Language Concurrent Pascal. IEEE Trans. Softw. Eng. 1, 1 (March), 199–207. Google Scholar
Digital Library
- IEEE. 1988. IEEE Standard Digital Interface for Programmable Instrumentation. ANSI/IEEE Std 488.1-1987 1, 488 (June), 1–96. Google Scholar
Cross Ref
- R. Jamal and L. Wenzel. 1995. The applicability of the visual programming language LabVIEW to large real-world applications. In Proceedings of Symposium on Visual Languages. IEEE, Darmstadt, Germany, Germany (Sep.), 99–106. Google Scholar
Cross Ref
- Gary W. Johnson and Richard Jennings. 2001. LabVIEW Graphical Programming (3rd ed.). McGraw-Hill Professional, New York, NY, USA.Google Scholar
- J. Kodosky, J. MacCrisken, and G. Rymar. 1991. Visual programming using structured data flow. In Proceedings 1991 IEEE Workshop on Visual Languages. IEEE, Kobe, Japan, Japan (Oct), 34–39. Google Scholar
Cross Ref
- Roberto Losito and Alessandro Masi. 2008. Controlling and measuring ion beams in real time - Researchers at CERN overcome unique and stringent test and measurement contraints using an integrated software and data acquisition system. R and d -Newton- 50 (04), 54–54.Google Scholar
- Alan S. Morris Morris and Reza Langari. 2016. Data Acquisition with LabVIEW. Chapter 12 of Measurement and Instrumentation: Theory and Application (2 ed.). Elsevier, North Andover, MA, USA. 347–374 pages.Google Scholar
- Barry E. Paton. 1999. Sensors, Transducers, &Amp; LabVIEW. Prentice Hall PTR, Upper Saddle River, NJ, USA.Google Scholar
- Stijn Schacht. 2018. The Materialise Control Platform: Using CompactRIO to Revolutionize 3D Printing. https://web.archive. org/web/20181002045341/http://sine.ni.com/cs/app/doc/p/id/cs-17674 . May 2018. Materialise used CompactRIO and LabVIEW to develop a ready-to-start, software-driven, embedded controller platform specifically for laser-based 3D printing applications. Accessed: 02-07-2020.Google Scholar
- Jeffrey Travis. 2000. Internet Applications in LabVIEW. Prentice Hall PTR, Upper Saddle River, NJ, USA.Google Scholar
- James J. Truchard and L. Wayne Ashby. 1978. AN/FQM-12(V) sonar test set. I: an automated acoustical measurement system. The Journal of the Acoustical Society of America 64, S1, S7–S7. Google Scholar
Cross Ref
- Zhongyuan Wang, Yongheng Shang, Jiarui Liu, and Xidong Wu. 2012. A LabVIEW based automatic test system for sieving chips. Measurement 46 (11).Google Scholar
- Kirsten N. Whitley, Laura R. Novick, and Doug Fisher. 2006. Evidence in Favor of Visual Representation for the Dataflow Paradigm: An Experiment Testing LabVIEW’s Comprehensibility. Int. J. Hum.-Comput. Stud. 64, 4 (April), 281–303. Google Scholar
Digital Library
- Michael Wiltberger. 2007. Improving Retinal Disease Treatment with LabVIEW FPGA and Intelligent DAQ. https://web. archive.org/web/20190719014626/http://sine.ni.com/cs/app/doc/p/id/cs-698 . OptiMedica developed a system for the automated delivery of precisely timed, highly accurate laser pulses to treat retinal diseases. The company used LabVIEW FPGA and intelligent data acquisition hardware to deploy a controller for its innovative pattern scan laser photocoagulator. Accessed: 02-07-2020.Google Scholar
- Pawel Wrobel, M Bogovac, H Sghaier, Juan Leani, Alessandro Migliori, Roman Padilla Alvarez, Mateusz Czyzycki, Janos Osan, Ralf Kaiser, and Andreas Karydas. 2016. LabVIEW interface with Tango control system for a multi-technique X-ray spectrometry IAEA beamline end-station at Elettra Sincrotrone Trieste. Nuclear Instruments and Methods in Physics Research Section A: Accelerators, Spectrometers, Detectors and Associated Equipment 833 (07). Google Scholar
Cross Ref
Index Terms
LabVIEW
Recommendations
Real-Time DC Servo Motor Position Control by PID Controller Using Labview
IHMSC '09: Proceedings of the 2009 International Conference on Intelligent Human-Machine Systems and Cybernetics - Volume 01This paper presents the position control of a DC servo motor using PID Control algorithms. PID controllers are designed based on labview program, and the real - time position control of the DC servo motor was realized by using DAQ device. All codes are ...
Model and Control for Coupled Tanks Using Labview
ICMEAE '13: Proceedings of the 2013 International Conference on Mechatronics, Electronics and Automotive EngineeringThis paper presents a digital proportional-integral controller implementation for a Coupled Tanks System for liquid level control. The model identification is done by sinusoidal signal at different frequencies, as result the bode plot obtained is ...
LabView based experimental validation of fractional order motion controllers
CCDC'09: Proceedings of the 21st annual international conference on Chinese Control and Decision ConferenceFractional calculus has been more and more frequently used in the control domain in recent years. But the fractional order controllers are not widely implemented on the real-time experiments because of the complexity of realization. In this paper, for ...






Comments