Book contents
Contents
raw Math

Ackermann steering is used in car-like vehicles. The basic idea is to turn the inner wheel slightly sharper than the outer wheel, so that both wheels roll along circles that share a common center instead of scrubbing sideways through the turn.

lICCϕoϕϕiwr

With the track width \(w\) (the lateral wheel separation), the wheel base \(l\) (the longitudinal wheel separation), \(\phi_i\) the relative steering angle of the inner wheel, \(\phi_o\) the relative steering angle of the outer wheel and \(r\) the distance between the ICC (instantaneous center of curvature) and the center of the car.

Deriving the Steering Angles

The Ackermann steering equations follow directly from the three right triangles formed by the wheel base \(l\) and the distance from the ICC to each axle line, \(r\), \(r-\frac{w}{2}\) and \(r+\frac{w}{2}\):

\[\begin{array}{rl} \tan \phi &= \frac{l}{r}\\ \tan \phi_i &= \frac{l}{r-w/2}\\ \tan \phi_o &= \frac{l}{r+w/2}\\ \end{array}\]

Subtracting the reciprocals of the latter two equations eliminates \(r\) and gives the Ackermann steering equation, the relationship every valid pair of \((\phi_i, \phi_o)\) must satisfy regardless of the current turning radius:

\[\frac{1}{\tan \phi_o} - \frac{1}{\tan \phi_i} = \cot\phi_o - \cot\phi_i = \frac{r+w/2}{l} - \frac{r-w/2}{l} = \frac{w}{l}\]

Equivalently, both cotangents can be expressed relative to the single base angle \(\phi\) of the equivalent bicycle model:

\[\begin{array}{rl} \cot\phi_i - \cot\phi &= \frac{r-w/2}{l} - \frac{r}{l} = -\frac{w}{2l} \Leftrightarrow \cot \phi_i = \cot\phi - \frac{w}{2l}\\ \cot\phi_o - \cot\phi &= \frac{r+w/2}{l} - \frac{r}{l} = +\frac{w}{2l} \Leftrightarrow \cot \phi_o = \cot\phi + \frac{w}{2l}\\ \end{array}\]

Avoiding the Singularity at \(\phi=0\)

Both equations break down for \(\phi=0\), since \(\cot(0)\) is undefined — yet driving straight ahead is exactly the case that must not blow up. Writing \(\cot\alpha = \frac{\cos\alpha}{\sin\alpha}\) and clearing the fraction before dividing by \(\sin\phi\) removes the singularity and gives two well-behaved formulas that are also cheaper to evaluate, since they only need one \(\tan^{-1}\) each instead of a cotangent inversion:

\[\begin{array}{rl} \phi_i &= \tan^{-1}\left(\frac{2l\sin\phi}{2l\cos\phi - w\sin\phi}\right)\\ \phi_o &= \tan^{-1}\left(\frac{2l\sin\phi}{2l\cos\phi + w\sin\phi}\right)\\ \end{array}\]

Forward Kinematics for Car-Like Vehicles

The forward kinematics of a car-like vehicle predict its future state from its current configuration. The state is a quadruple \((x, y, \theta, \phi)\), with \(\theta\) the heading and \((x, y)\) the position in the world. The defining property of Ackermann steering is that the rotational center is not at the middle of the car but on the line through the rear axle. Since the car is non-holonomic, the kinematics can only be given for the derivatives. With vehicle speed \(s\), they are

\[ \dot{x} = s\cos\theta\\ \dot{y} = s\sin\theta\\ \dot{\theta} = \frac{s}{l} \tan\phi \approx \frac{s}{l}\phi \]

The last line replaces \(\tan\phi\) by \(\phi\), which keeps the model linear in the steering angle at the cost of a Taylor approximation error of about \(3^\circ\) at a steering lock of \(30^\circ\).

ϕ(x, y)θ
Press Arrow Keys!