We switched from Java to LabVIEW last year. My experience with Java was something close to an old disaster movie, except without the hero saving the day. There were many reasons why, but mainly it had to do with convoluted code structure and very painful slow debugging. Plus, the simulation and off-robot testing was practically nonexistent.
The switch to LabVIEW was fantastic. It solved so many of the structural and procedural issues we had with development of the robot.
Quote:
Originally Posted by marshall
LabVIEW for us is crazy easy to prototype ideas in and then graph outputs so we can view them. Graphs mean data and data provides answers to questions and allows us to iterate quickly with code.
|
The value of data and feedback cannot be overstated. PID tuning, which we did a lot of, was especially dependent on graphs and quick feedback (pardon the pun).
Quote:
Originally Posted by marshall
Also of note, we have an entire team dedicated to vision processing and programming in OpenCV/C so we use that as an outlet for those programmers who think LabVIEW is too simplistic for them to learn... though a lot of them come back around to after realizing how powerful it is.
|
This concept keeps the horsepower where you need it. We tried to do this as well, but with limited success in our first try. We also used an Arduino for status and "bling" lights, which added another layer of programming for another skill level.
Also, to answer the comment about Java/C++ programming jobs. Yes, there are tons of them out in the world, but not all. Our team's programmer, the one that survived (and thrived) the season, has an internship at a local company that makes industrial process machines which run on LabVIEW, like so many of them do. Lab work? Industrial machinery and processes? LabVIEW.
Just so you know where I am coming from, my background is embedded control hardware with software development in C.