We were using the Inertial Sensor in our last competition and it ended up messing up and going past the target angle in the semifinals and got us eliminated because we went into the opposing team home zone. We think it was because we over calibrated out sensor and calibrated it before every match manually instead of putting it in pre-auton or the fact that our robot needed a firmware update. Would it still be a good sensor to use or should we try doing something else?
try overshooting slightly, and then correcting at slow speed.
How are you attempting to go to your desired angle? Are you just using a simple “if angle >= 45, then stop”? Are you using an algorithm such as PID? What we have for our robot’s autonomous turning is a PD (basically PID without the integral component) loop that uses the inertial as its feedback sensor. Usually works fairly efficiently, quickly, and reliably.
If you’re not using a movement algorithm already, I’d recommend either following muradmalik’s suggestion for a “quick and dirty” fix (get as close to the angle as possible, then correct slowly), or implement something like PID for your turns. There are many great resources on here already about PID, as well as some videos and other miscellaneous readings.
If you are already using a movement algorithm like PID, overshooting could be a sign of poorly tuned constants. If you’re using PID, I’d probably decrease your P value in order to make the turn less “aggressive”.
I hope this helps, and if you need anything else, feel free to let me know!
– Michael, 8349P
Wouldn’t it also work to increase the D value?
Yeah, probably, considering the D value “dampers” the oscillations of the P value.