During the off-season, we had just switched to Rev hubs and the students spent time getting field-centric driving to work; e.g. using the built in BNO055 magnetometer for positional orientation information to use for steering, so that "up" on the stick is always "away from me" regardless of which way they are facing and such. This works well for robots with no clear "front" and especially cases where the driver orientation doesn't match the robot's direction.
The problem we have run into however is that it requires a calibration - you have to first assess "north" and then subtract everything from that from then on for everything to work. No big deal, it only takes a second and in a match, at the beginning the robot always starts facing the same direction (or 90 degrees off of that).
But - how do you deal with this at the beginning of the Teleop portion of a match? You can't accurately predict which way the robot will be facing when you start (b/c the Autonomous may or may not have ended perfectly), so if you calibrate then, your controls could be really weird. A cludgy solution is to use regular driving to point the robot "north" then recalibrate, but the students do not like the time lost to do this. Sicen we must use different programs from Auto and Teleop, we can't carry the calibration over as a variable.
So how do teams deal with this?
The problem we have run into however is that it requires a calibration - you have to first assess "north" and then subtract everything from that from then on for everything to work. No big deal, it only takes a second and in a match, at the beginning the robot always starts facing the same direction (or 90 degrees off of that).
But - how do you deal with this at the beginning of the Teleop portion of a match? You can't accurately predict which way the robot will be facing when you start (b/c the Autonomous may or may not have ended perfectly), so if you calibrate then, your controls could be really weird. A cludgy solution is to use regular driving to point the robot "north" then recalibrate, but the students do not like the time lost to do this. Sicen we must use different programs from Auto and Teleop, we can't carry the calibration over as a variable.
So how do teams deal with this?
Comment