I am coding a 3pi robot to follow a precise path consisting of straight lines and 90 degree turns. I am initially finding some success in using a PID algorithm to tune the straight lines, with a target set at having the gyroscope at 0 degrees. However, I am having issues:
- I am noticing that the gyroscope drifts in a very noticeable way over time, even when I give it around 15 seconds to calibrate. Is there any fix for this? Could I perhaps combine the gyro with other IMU sensors or even just abandon it to use the magnetometer (I would rather not do this however because I don’t know how the magnetic fields might change in different settings)
- I find that my 90 degree turns (which I execute using the encoders) are a tad off. Is there a fix for this? I have been trying to feed the error back into my PID, but because the gyro drifts over time, this also seems to be off a little bit.
I know the 3pi is capable of really accurate turns and straight lines(as in this example Pololu - 8.f. Improving the Maze-Solving Code) so I am wondering if using some other sensor might be a better idea.
Thank you!
12 posts - 2 participants