Skip to main content
The sections on wheeled robots draw heavily from chapter 13, Wheeled Mobile Robots, of Kevin Lynch and Frank Park, Modern Robotics: Mechanics, Planning, and Control (Cambridge University Press, 2017) (Kevin M. Lynch, 2017). You can download the chapter as a PDF. A wheeled robot’s chassis is a planar rigid body. The material here builds on the planar cases of rotation representations and motion representations. In each section, you derive the kinematic model for one kind of robot. The model shows which wheel speeds produce a desired chassis motion and which chassis motions are possible. You then compare the model with a physics simulation in which the wheels roll on a floor with friction. Agreement means that the model’s assumptions hold. Disagreement shows which assumption failed. The same failures cause wheel odometry to drift.

Wheels and robot types

A conventional wheel rolls in its driving direction and does not slide sideways. An omniwheel has small passive rollers around its rim. Their axes lie in the plane of the wheel, allowing the wheel to slide freely sideways. A mecanum wheel is similar, but its rollers are mounted at an angle, typically 45°45°. The free sliding direction therefore makes an angle γ\gamma with the driving direction. This difference divides wheeled robots into two families:
  • Omnidirectional robots use three or more omniwheels or mecanum wheels. Their chassis can move in any direction while rotating, so any body twist is possible at any instant.
  • Nonholonomic robots use conventional wheels, as in a differential-drive robot or a car. At each instant, the wheels prevent sideways motion. Only a two-dimensional set of body twists is possible, although the robot can still reach any configuration by maneuvering.

The chassis as a planar rigid body

The chassis frame {b}\{b\} has configuration q=(θ,x,y)q = (\theta, x, y) in the space frame {s}\{s\}. Its velocity is the body twist Vb=(ωbz,vbx,vby)\mathcal{V}_b = (\omega_{bz}, v_{bx}, v_{by}). This contains the angular velocity and the linear velocity of the origin of {b}\{b\}, expressed in {b}\{b\}. As shown in twists in the plane, the body twist and the configuration rate are related by Vb=[1000cos⁡θsin⁡θ0−sin⁡θcos⁡θ]q˙.\mathcal{V}_b = \begin{bmatrix} 1 & 0 & 0 \\ 0 & \cos\theta & \sin\theta \\ 0 & -\sin\theta & \cos\theta \end{bmatrix} \dot q . The kinematic models and simulations in both sections use Vb\mathcal{V}_b. The simulations record the chassis pose (θ,x,y)(\theta, x, y) at each frame and differentiate it numerically. They then apply this matrix, so the measured twist uses the same definition as the model.

The two sections

Omnidirectional robots

Wheel speeds from the body twist, u=H(0) Vbu = H(0)\,\mathcal{V}_b, for omniwheels and mecanum wheels, compared with a mecanum robot in simulation.

Nonholonomic robots

The differential-drive model, what happens to it on ice, and wheel odometry with calibration.

References

  • Kevin M. Lynch, F. (2017). Modern Robotics.

Found an error on this page? Report an issue.