My team has ran into what appears to be a LabVIEW or NXT bug. They have had successful autonomous for several months running a queued state machine. A couple days ago they made some changes to a subVI that controls the robot movement. This VI moves straight using a while loop monitoring encoder counts or turning using a while loop monitoring compass sensor. The addition was while monitoring the encoder sensor slowing the robot down the closer it gets to its target so the move could be more accurate.
After this change the NXT is aborting the running program after 14 seconds. Their code is menu driven and they are able to select different auto tactics. No matter which tactic is selected the robot stops after 14 seconds.
We have a “feedall” watchdog in its own loop running every 500 ms. We have tried moving that into the move subVI, multiple NXTs, taking the changes out of the code, etc. All while loops have several up to 5ms waits for execution timing. We are using only the LabVIEW wait, not the NXT that has the watchdog buried in it.
Their teleop (using some of the same subVIs) runs perfectly for more than two minutes.
Any ideas are welcome.
-Steve