LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Hi, everyone..I'm working as a programmer on electron

ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioErminio:

I'm in favor of knowing as many different programming languages as possible. However, no matter how well you know your C++, for example, the NEXT guy who has to use your code probably won't know it. As I see it, the NUMERO UNO reason for using Labview over every other language is that ANYONE can understand it. I write Labview vi's not for ME but for non technical people who have to keep it running for years after I'm gone.

chutla

P.S. I have always had great respect for anyone learning English...they speak one more language than I do! 🙂
Eric P. Nichols
P.O. Box 56235
North Pole, AK 99705
0 Kudos
Message 11 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioActually, you could do the whole thing in LV nd be done with it. The robot would use LVRT running on perhaps a compact FP module, and LV on the PC. No networking problems because LV talking to LV is all built-in.

Mike...

Certified Professional Instructor
Certified LabVIEW Architect
LabVIEW Champion

"... after all, He's not a tame lion..."

For help with grief and grieving.
0 Kudos
Message 12 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioWell. LV is very easy to start for an EE.

However, many things should be also noticed. LV is very easy to make spaghetti codes and hard to be reused comparing with C++. Speed can be a major setback too if your application requires it. Another fact to concern is available programmers on the market. C++ side has many more. Memory leak problem is there in LV too until ver 7. Even ver. 7 we are not 100% sure. Do not say no memory problem. It is there and it is very hard to fix.

I am using it because the company already has large amount code developed in LV before. Not because LV is significantly better than others. If you are not a programer b4, you may feel LV is easy to start and good for a small project. However, if I were expecting to do a lot of
data manipulating and creat a complicated commercial product, I would do much
deeper comparison b4 jump in LV.
0 Kudos
Message 13 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! Erminio LV is very easy to make spaghetti codes and hard to be reused comparing with C++.

--- I disagree. The dataflow paradigm makes it easy to AVOID spaghetti code, unless you're coming from C and are determined that LV is just another way to do C code.
--- There is no reason that LV is harder to re-use that C+-
--- The biggest problem with programmers coming from other languages is finding out all THE CRAP YOU DON'T HAVE TO DO ANYMORE.

--- Once upon a time, there was an example in the NI docs of a translation of a FORTRAN routine to do averaging of an array.
--- The first iteration was a painfully exact duplication of steps. Within the loop, access DATA[i] using an INDEX ARRAY operation, add this element to the sum, add 1 to i, etc....

--- Then they started using LabVIEW features (auto-indexing, auto-loop counting, shift registers, etc.).
--- Finally it got down to three items : ADD ARRAY ELEMENTS, ARRAY SIZE, and DIVIDE.



Speed can be a major setback too if your application requires it. 
--- LabVIEW is not inherently slower at anything. Which is not to say that it can't be slowed down by a roundabout way of solving a problem.



Another fact to concern is available programmers on the market. C++ side has many more. 

--- And the point is .... ???

Memory leak problem is there in LV too until ver 7. Have built hundreds of applications since version 1.2 in 1989, and never had a memory "leak". It's practically impossible for the programmer to cause a leak (not counting CIN or DLL), simply because the programmer doesn't allocate / deallocate things explicitly.


Even ver. 7 we are not 100% sure. Do not say no memory problem. It is there and it is very hard to fix.
P
lease explain. Offer an example. Show me.
Steve Bird
Culverson Software - Elegant software that is a pleasure to use.
Culverson.com


LinkedIn

Blog for (mostly LabVIEW) programmers: Tips And Tricks

0 Kudos
Message 14 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioI crashed my computer about three times a day writing in C++, but only ever once I think with LabVIEW (While running an infinite loop with indexing array - DOH!).

Memory leaks? C++ better than LabVIEW? We`re talking about people learning the language, not 30 Year+ Veterans.

Oh, and you can re-use C++ code in LV.

Shane.
Using LV 6.1 and 8.2.1 on W2k (SP4) and WXP (SP2)
0 Kudos
Message 15 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioI guess that I run into a circle of LV lovers and made some honest but not so unpleasant comments to the limitation of the language (Not to anybody who uses it). Let me explain a little more, and hope I do not offend anyone here.

If the level of the computer programming in this world had stayed at the procedure-oriented languages such as easy to use BASIC (It used to be the most popular language in good part of 90s because VB made window programming so �easy� comparing with others), FORTRAN(Very little syntax to learn and extremely fast for scientific calculation), C(very fast partly because it provides ways to directly access memory. Side results: A programmer who does not fully understand how it work could make tons of memory problems without knowing it until crashing.), we would not have seen C++, Java, object-oriented VB and C#, the object-oriented languages that have been dominating window programming world since second half of 90s expect C# was on market in 21 century.

All I want to say here is that object-oriented languages have their reasons to be born, to stay, and to dominate. That is a fact of life, not my personal choice although I appreciate the encapsulation and inheritance parts of features that make code reuse much easier. Unfortunately, LV is not one of them. From this point of view, I raised the availability of programmers because the bottom line is the total cost of a software, including planning, coding, testing, documenting, and the most importantly, maintaining (A statistic shown that 70% or more of US programmers� time were spend on maintaining his and/or other people�s codes).

Speed issue is not always critical to every application. However, it is very easy to test so I do not need to say anything any more.

We did encounter memory problem in LV when using queue in ver 6.1 and before. There was no error message pop out anywhere in our application but we could see the system memory was eaten out by the application a little by little all the way to crash if we waited long enough. We struggled with the problem along with NI�s supports for many months but never got it fixed until 7.0 was out. The same code runs under 7.0 perfectly without changing anything. What did this tell us?

Again, I would say if we are developing a small or median size engineering program and do not have experienced in house programmers available, LV is one of good languages to learn and use by engineers. However, nobody in the world is dreaming to use LV to develop next generation of operating systems, databases, word processor, spreadsheet, and many other heavy duty calculation programs, isn�t it? I like LV too and use it in work but I have also face the reality what LV can and cannot do.
0 Kudos
Message 16 of 17
(921 Views)
ics boards using assembler and looking for a high level language (I mean, PC based) to communicate with the boards and to control. Someone suggested me C++..please, tell me: why did you choose LabView? Why could it be better than C++? Thanks a lot! ErminioThank you for your comments

Please see above for my answer.

You and I have different definition of code reuse. That is OK.
0 Kudos
Message 17 of 17
(921 Views)