Best ways to tune wheel odometry

What are the best ways to calibrate wheel odometry ( differential drive)? is there any ros-based tool present for that?

Details:
We create functions for converting pulses/ticks/counts from encoders to the linear and angular velocity of the robot. Then using linear and angular velocity, we figure out the odometry of the robot. Now despite the best efforts in measuring the wheelbase and wheel diameter, the accuracy of odometry still is decently poor.

I am wondering what are the popular methods to find more accurate relationships between the encoder pulses and odometry for a given robot. Any suggestions will be appreciated.

Thanks,

1 Like

I wrote a very elaborate blog on this not too long ago that should give you a sense of what ‘good odometry’ means, how to set up covariance matrices, and some ways to measure your odometry quality.
It’s good that you try to dive in - most people tend to skip that step and want to go to navigation as soon as they can

4 Likes

Best guide I’ve seen for this is Deploying on Mars: Rock solid Odometry for Wheeled Robots

2 Likes

Thanks for your question. However we ask that you please ask questions on http://answers.ros.org following our support guidelines: Support - ROS Wiki

ROS Discourse is for news and general interest discussions. ROS Answers provides a Q&A site which can be filtered by tags to make sure the relevant people can find and/or answer the question, and not overload everyone with hundreds of posts.