LabVIEW and LabWINDOWS (NI's version of "C") programmers would both be given the same problem and have a race to see which group finished first.
Labview alternative software#
In 20 years I have never had a LabVIEW bug stop me from finishing a project.īack in the day, NIWEEK would have a software shootout every year. It's true that you can build some programs quickly in LabVIEW, but just like any other language it takes a lot of training to learn to build a large application that is clean easy to maintain with reusable code. I was a "C" programmer before I switched to LabVIEW. I have developed, RF, Vison, high speed digital and many different flavors of mixed signal test systems. I **have been writing in LabVIEW for almost 20 years now. Right now, it's an extremely bad choice as a software development platform for large or logically complex projects. If National Instruments keeps improving it, it will be great one day as a general programming language. Labview is getting better with each new release. You have just envisioned the most natural and most efficient way to program in labview. Now imagine that all the lines cross each other a thousand times so that tracing the data flow is completely impossible. Imagine your giant software project written as a wall sized flowchart with no words on it at all. Programming in labview is like playing pictionary with the devil. These structures eat memory and destroy performance by forcing labview to make multiple copies of data in memory and perform gratuitous operations- all for the sake of keeping the graphical diagram from looking like rainbow colored spaghetti with no comments or text anywhere in sight.
Labview alternative code#
In order to keep your code from becoming a tangled, confusing mess, you must routinely (every few operations) employ structures like clusters, and sub-vis and giant type defined controls (which can stretch over multiple screens in a large project). This may sound like an exaggeration, but trust me, it's not.ģ) While it's not impossible to keep graphical code clean and well documented, Labview is designed to make these tasks both difficult and inefficient. That clears things right up, doesn't it? The problem goes much deeper in that quite often, when you ask a technical representative from national instruments to provide critical details about labview functionality or the specific behavior of mathematical functions, they simply don't know how the functions in their own library work. A user looks up the help file on the texture filter mode setting and the only thing written in the help file is "Texture Filter Mode- selects the mode used for texture filtering." Gee, thanks. More often than not, when you look for help with a labview function in the local help file you'll find a sentence that merely restates the name of the item you are trying to find some detail on. Some of these are quite serious, such as memory leaks, or mathematical errors in basic functions.Ģ) The documentation is atrocious. There are thousands of bugs that have been posted to the labview support forums that are yet to be fixed. However, the developers at NI have consistently opted to ignore the three fundamental problems that plague labview.ġ) It is unstable and riddled with bugs. It may one day be sufficiently developed to be considered as a viable alternative to text based languages. Unfortunately, it's an absolute nightmare for anything other than simple acquisition and display. Newer versions of Labview include alot of exciting features, especially for utilizing multiple processors. I have programmed mathematically dense, dynamic simulations using labview. Labview is unquestionably much more fun to use than a syntax based language. Labview can be used to author large, complex software projects. NET language with the pretty NI controls.
I suggest taking a look at Measurement Studio for Visual Studio and using your favourite. In summary, even with a couple of 24" screens, sometimes the wiring for Labview code can get too complex and becomes impossible to comment, debug, and make extensible for any future changes. In the end we ended up scrapping Labview all together and using the NI Measurement Studio for Visual Studio to give us all the lovely looking NI controls (waveform plot, tank, gauges, switches etc) with the flexibility of C#. When you start interfacing to custom devices the wiring between modules gets complicated having to do all the string manipulation work for input and output to a device.Īt my place of work, we found that we got annoyed with having to make massive, complicated VI's to interface to devices and started writing them in. Labview is fantastic if you have National Instruments hardware, and want to do something like acquire, plot and log the data.