I'm looking for a "good" algorithm/model for wheeled odometry estimation. We have encoders on the two back wheels of the tricycle robot, and IMU on the controller board. Currently we use MEMS gyro for angular velocity estimation and encoders for linear velocity, then we integrate them to get the pose. But it's hard to calibrate gyro properly and it drifts (due to temperature or just imperfect initial calibration). How can we improve the pose estimation? Should we consider model that incorporates both encoders and gyro for heading estimation? Model slippage, sensor noise? Is there some nice standard model? Or should we just use more/better gyro? Not considering the visual odometry.


1 Answer 1


First, you can try adding encoders - you don't need to buy anything to do this. Only remember to perform UMBmark procedure first. It will allow you to get much more reliable odometry from encoders alone.

If adding encoders is not enough, try to add magnetometer. It will get you absolute heading relative to magnetic north. Unfortunately, these devices are very sensitive to interference from running motors, so try to keep them away.

As a last step I would go for a better gyro.

  • 1
    $\begingroup$ Magnetometer measurement are too bad for indoor environments, we've encoders as you might have seen in a question. $\endgroup$
    – DikobrAz
    Oct 15, 2015 at 20:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.