|
Re: What do you use to program your robot?
We like LabVIEW because we like the debugging and real-time front panel tools. We use global variables to store large amounts of calibration data, and editing in real-time is really nice, especially with the large download times.
I would give it a 6.7 out of 10, for two reasons:
Builds take almost three minutes. This in itself is almost all of the problem.
The WPI library for LabVIEW is not pre-compiled, so it must be re-compiled every time it is built. It re-builds the WPI library every time it is used, causing almost all of the long build times. Also, the WPI library itself isn't the most efficient thing in the world, and some parts of it (Compressor especially) are quite inefficient, and when trying to debug and use camera tracking this can be a killer. We eventually decided that the cRio is not powerful enough to track the target all the time, something we prefer to do.
As some positives to LabVIEW, we can edit the PID gains and setpoints in real time from a global variable file, so we don't actually have to download that much. We also wrote a visual autonomous system, mirroring one that I used several years ago for LEGO, so it's really easy to write new modes and such. We also utilize several threads, and LabVIEW makes that really easy.
__________________
Kettering University - Computer Engineering
Kettering Motorsports
Williams International - Commercial Engines - Controls and Accessories
FRC 33 - The Killer Bees - 2009-2012 Student, 2013-2014 Advisor
VEX IQ 3333 - The Bumble Bees - 2014+ Mentor
"Sometimes, the elegant implementation is a function. Not a method. Not a class. Not a framework. Just a function." ~ John Carmack
|