up:: RDL MOC
lecture04-odometry-0.pdf
Introduction
Robot Pose
For simplicty we use two-dimensional plane.
With position (xR, yR) and orientation θ.

Types of Localization
Relative Localization (also called incremental Localization or pose tracking) The change of position at successive points in time is incrementally calculated and integrated relative to the starting position.
⇒ Odometry
Global Localization The robot position is determined with respect to an external reference system, e.g. to a given map or a global coordinate system.
⇒ Localization
Odometry
Definition
“Odometry is the use of data from motion sensors to estimate the change in position over time.”
The word Odometry comes from the Greek words:
hodos meaning travel or journey, and
metron meaning measure.Odometry is also known as dead reckoning
Odometry Models
Odometry Basic Concept
Odometry is used in robotics by wheeled or legged robots to estimate their position relative to a starting location.
Basic concept:
- Develop a mathematical model of how the motion of the robot’s wheels, joints, etc. induce motion of the vehicle itself.
- Integrate (add up) these motions over time to calculate the robot current position with respect to the previous (initial) location.
What sensors can be used to measure the robot’s motion?
- Wheel Encoder (wheel odometry) → in this lecture
- Joint encoders (leg odometry)
- IMU: Accelerometer and Gyroscope (inertial odometry)
- Camera (visual odometry)
- Laser scanner (lidar odometry)
⇒ Sensor FusionThe odometry estimation varies by vehicle design:
Unicycle Model
Unicycle Model
Composed by a single upright wheel rolling without sideways slip.
This type of robot is unstable without dynamic control to maintain balance.
The robot state is described by its position (x, y) and orientation θ.
We can control its linear velocity v and angular velocity ω.
Link to original
Differential Drive Model
Setup
- It has two driveable wheels which are independently controllable, mounted along a common axis.
- One or more low-friction caster wheels are used to keep the robot horizontal.
From a point robot to two wheels Instead of a point robot, the TurtleBot is now modeled as a robot with:
- two wheels,
- two motors, and
- a motor controller.
also see: Wheel Encoder
Odometry
Wheel speed
Link to original
Bicycle model
steerable front wheel and active rear wheel
Link to original
Ackermann Steering Model
two fixed active back wheels and two passive front wheels steered at different angles
Link to original
Omnidirectional Model
three or more Swedish wheels.
Link to original
Robot Motion Constraints
Based on the motion they can perform, wheeled robots can be:
- Holonomic (omnidirectional robot)
- Nonholonomic (car-like robot)
This depends in part on the robot wheels type:
- Nonholonomic mobile robots employ conventional wheels without sideways slip.
- Holonomic mobile robots employ Swedish wheels that allow sideways sliding.
Link to original
Wheel Encoder
Overview
Pros:
- Cheap
- High frequency
Cons:
- Drift due to wheel slippage
- Only reliable on short term.
Function
The encoder outputs the number of resolutions n (tick counts) that the motor has turned in a time interval ∆t.
We know:
- the encoder number of ticks N
- angular resolution Ra = 2π/N [rad/tick]
- on-ground distance resolution Rd = 2πr/N [m/tick]
How far has the robot traveled?
Wheel Velocity
Link to original
Localization
What is Localization?
Given: Map (model) of the environment.
Task: Estimate the robot pose relative to the given map.
Robot pose:
- position (xR, yR)
- orientation θ.
Typs of Localization
with mapping ⇒ SLAM
Sensors for Localization
Proprioceptive Sensors
- Wheel Encoder → Wheel odometry
- Inertial Measurement Unit (IMU) → Inertial odometry
Exteroceptive Sensors- Camera → Visual odometry
- Laser scanner, sonar → Scan matching (SLAM)
Link to originalparticle filter
Overview
Based on Bayesian statistics.
Methods: Kalman filter, particle filter (Monte Carlo Localization).
Sensors measurements: wheel encoder, IMU, GPS, laser scanner, camera, etc.Pros:
- Model sensor noise.
- Fuse multimodal sensor data.
Cons:
- Complex algorithms and models.
- Computationally expensive.
Function Approximation
Probabilistic method used for non-parametric function approximation.
An arbitrary function can be described by a set of particles at time :
Pros
- Estimates any posterior distribution (i.e. not limited to Gaussian distribution).
- Able to cope with noisy sensor data and inaccurate odometry.
- Easy to implement.
Cons:
- Large number of particles slows down localization.
- Requires large storage space.
- High computational resources.
Further Problems
Adaptive Monte Carlo Localization
AMCL ROS Package
Link to original
Odometry Drift
Real World Problems
For our models, we assume the robot drives in a perfect world where we can measure exactly how far the robot moved.
In time, the odometry drifts away from the real robot position due to errors incrementally adding up at every time step → the error is unbounded!
A source of errors is the integration of velocity measurements over time to give position estimates (velocity is assumed to be constant for the time interval ∆t).
Problems that can occur in wheel odometry:
- Incorrect wheel size (e.g. wheel compaction).
- Wheel slippage on icy or wet surfaces.
- Losing contact to the ground. I Encoder inaccuracies (e.g. low resolution).
Odometry can be hard to obtain in different environments:
Link to original
- Wind/water currents move flying/diving robots.
- More difficult to calculate on walking robots (forward kinematics).
Summary
- Odometry provides the robot’s incremental change in position and orientation.
- For wheel odometry computation, the robot motion model is needed.
- Some of the most important wheeled robot models are the Unicycle Model, the differential drive, the Bicycle model, the Ackermann Steering Model, and the omnidirectional drive.
- Odometry Drift occurs due to time integration of velocity measurements and failures of wheel odometry (e.g. wheel slip, inaccurate wheel dimensions).
- Robots often use both local and global Localization methods
next: RDL VL 05 Mapping










































