Log in

View Full Version : Implementing a Kalman Filter for Gyro+Accelerometers


nabioullinr
01-02-2010, 18:37
I am thinking of implementing a Kalman filter for estimating the heading and later the position. Would this be a good idea or are there simpler alternatives which result in almost the same accuracy?
Also, any suggestions on how to properly temperature-compensate the gyro? The datasheet stated that there is an appnote for this but I cannot find it.

Bigcheese
02-02-2010, 09:12
I've played with Kalman filtering a bit on the bot. Personally I think it could help quite a bit, as long as you get your RMS noise correctly. It would also have less lag than averaging.

As for temp compensation, doesn't that datasheet have the info for how temp effects the output? I don't know if you can change the sensitivity without resetting the accumulator however.

Joe Johnson
02-02-2010, 10:48
My experience is that simpler is better.

I haven't had that much difficulty with a simple integrator to for the gyro to turn angular rate into angular position (a virtual compass). With grippy tires on carpet (flat floor) I have been able to move down 40 ft via a serpentine path and return to home and have the virtual compass still be within a few degrees. Others claim even better performance.

As to accelerometers, I haven't personally done the double integration, but it is quite simple to implement and from what I understand it works pretty well.

For both cases, the integration gets off over time (and with high G events that overflow the sensor like a robot to robot collision) but it is surprisingly good for short time frames (like autonomous mode). You also have other sensors to help you get the integration constants right (like wheel encoders).

Good luck.

Joe J.