In terms of robotics, what are the differences between odometry and dead-reckoning?

I read that odometry uses wheel sensors to estimate position, and dead-reckoning also uses wheel sensors, but "heading sensors" as well. Can someone please elaborate on this point for me?

Deduced reckoning is figuring out where you are after starting from a known position, by using your speed, direction and time. (It's effectively integration of velocity, if you want the calculus/mathematical version).

At sea you would know your direction from a compass, speed by any one of various means, and important complications like the wind speed and direction would be estimated.

Odometry is really just doing the same thing on the ground, instead of at sea. Instead you count your "footsteps" as an estimate of your walking speed. A wheeled vehicle would instead count wheel revolutions, that's equivalent to counting footsteps.

Odometry isn't very accurate on its own as wheel slippage, carpet "springiness" and uneven floors can affect accuracy. A separate heading sensor can help with accurate headings at least, though.

For an old (1996!) but detailed account of odometry, I like Borenstein's "Where am I" technical report, which has a lot of outdated information but a still-good description of odometry and its inaccuracies. It's linked from this page: http://www-personal.umich.edu/~johannb/mypapers.htm (Beware it's quite a large download.)

• Thanks Andy. Out of curiosity, what exactly is a heading sensor? And is it commonly used on robots?
– John
May 21, 2015 at 5:57
• For a heading sensor I was thinking about, say, a digital compass. They're commonly available, I get the impression that they're not always accurate (possibly affected by the the chassis itself?) but they could be used as an alternative to tracking rotation angles purely from the encoders themselves.
– Andy
May 21, 2015 at 7:23

Dead-reckoning systems are based on estimating position relative to sensors. These sensors can be accelerometers, gyroscopes, whell encoders, infrared sensors, cameras etc. which have to placed on body of robot. So we can calculate displacement or coordinates. Odometry is a sub topic of dead-reckoning and based on wheel displacement calculations.

Dead reckoning is determining pose (position and rotation) using speed estimates from sensors. For example, you know your initial position and use sensors such as encoder, accelerometers, gyros, etc... to estimate your current position by integrating sensor measurements.

Odometer is determining the pose using only the rotation of the wheels of a robot. Sometime people talking about visual odometry, and visual odometry is the same except cameras are used instead of wheel encoders.

Basically, odometry is a type of dead reckoning.

You may have misread (or else your book misrepresented) the definition odometry; it is not a direct measurement of position, just distance travelled. Odometry may say that you travelled a mile, but whether you ended up a mile away or right back where you started will depend on other aspects of your movement.

By combining odometry with other measurements, the process of estimating your position -- "dead reckoning" -- becomes more accurate.