View Single Post
  #1   Spotlight this post!  
Unread 12-03-2008, 12:57
Shue Shue is offline
Programming Subteam
AKA: Mike Gushue
FRC #2228 (Cougar Tech)
Team Role: Mentor
 
Join Date: Mar 2008
Rookie Year: 2007
Location: Honeoye Falls, NY
Posts: 3
Shue is an unknown quantity at this point
Autonomous / Hybrid - Tethered versus Radio?

Hi!

Has anyone noted differences between running autonomous / hybrid mode while tethered (practice floor) versus running using radio (competition)?

We have been seeing very odd behavior on the competition floor at the start of autonomous, where our robot will move out from the wall from 1 to 6 feet or so, then make an immediate left turn into the wrong quadrant on the track (into oncoming traffic). We have run literally dozens of times on the practice floor at the Finger Lakes Regional and did not see this behavior once (always went the correct distance before the left turn, regardless of lane settings, starting delays, etc).

We tried a number of "experiments" to attempt to identify the cause (disabling IR command handling, changed from using gyro-controlled operation to just programmed values for "straight", slowing acceleration of the drive wheels off the line to minimize any wheelspin). The behavior was still bad, although the programmed "straight" approach did change the hard left turn to a 45 degree turn to the left on occasion... We use geartooth sensors to determine distances, but those have not been suspect since the behavior seems to track so consistently with tethered/practice versus radio/competition...

We worked with the software mentor (Mike) from Team SparX to see if anything we were doing from a software perspective was obviously wrong. He had many great suggestions, which we had either already tried or subsequently tried, but nothing that modified our robots behavior.

Mike made one point that, although surprising, could be causing our problems in some form. Specifically, we may be experiencing differences procedurally in the way we enable our robot on the practice floor versus how it is done on the competition floor. He indicated that on the competition floor, the un-asserting of "disabled" and the asserting of "autonomous" are done as two discrete operations. In our code, this will allow for a short period of teleop between the disable going away and the autonomous being asserted (both tele-init and tele-op will occur potentially). We definitely do not do this on the practice floor (just set autonomous and disabled on our competition box, reset the robot, then un-assert disabled).

Although this is surprising, the code looks like it should handle it without problems/conflicts. I did put an interlock to prevent this into the code, just for interest factor. Unfortunately, we only had one match left at Finger Lakes to see if it affected behavior, and we were bumped by another robot on a delayed start so no useful data was gathered.

We are going to the Buckeye Regional next week, and are REALLY trying to avoid getting hit with the 10 point penalty each time this occurs (for going the wrong way on the track). Disabling the autonomous / hybrid mode is only a last resort, since it works so well (when it works ).

Thanks in advance for any insight or assistance!

GO TEAMS!

-Mike