Quote:
Originally Posted by dickswan
And, AFAIK it is still the current implementation. ROBOTC maintains a map of which HiTechnic motor controllers are equipped and as part of the "program has ended" code stops them. LabVIEW does not keep such a map and relies on the 2.5 (or is it 2.0?) second watchdog timer in the motor controller to shut down. This occurs at the end of both autonomous and teleop.
I always thought that the LabVIEW implementation was unfair as it extra couple of seconds of motor movement might potentially allow a scoring activity to complete.
|
No, you're not correct. There is code in the Labview template (it's FTCDisableRobot.vi) for identifying which motors need to be shut down when the robot is disabled, but It seems to depend on what else is running as to whether that code gets time to execute.
I still feel that the FCS is not giving the programs enough time to execute the motor shutdown before it kills the program. I did some tests, and a simple program with not many other tetrix commands would shut down the drive correctly when the match ended. But once I added code for the other motors that ran all the time in a different loop the drive system didn't shut down all the time. I play with adding different delays into the other loops, but I could not get reliable operation.
I guess the trade of is, if they wait too long between disbling the robot and shuttiong down the program, the team might try to take advantage of that delay to do other stuff. Still not foolproof.
If only there was a way for the NXT Firmware (not the running program) to broadcast an automatic motor shut-down whenever a program with tetrix commands was terminated.
Phil.
__________________
Phil Malone
Garrett Engineering And Robotics Society (GEARS) founder.
http://www.GEARSinc.org
FRC1629 Mentor, FTC2818 Coach, FTC4240 Mentor, FLL NeXTGEN Mentor