Drive unicycle kinematics equations through the geometry

135 Views Asked by At

Consider a unicycle model as described here. The unicycle dynamics in discrete-time can be written as:

$$ \begin{array}{l} {x_{k + 1}} = {x_k} + \Delta {s_{k + 1}} \times \cos ({\theta _{k + 1}})\\ {x_{k + 1}} = {x_k} + \Delta {s_{k + 1}} \times \sin ({\theta _{k + 1}})\\ {\theta _{k + 1}} = {\theta _{k }} + \Delta {\theta _{k + 1}} \end{array} $$

However, some researchers have introduced an additional term to the argument of the trigonometric functions above; for example see: Autonomous Land Vehicles: Steps towards Service Robots By Karsten Berns, and Ewald Puttkamer

$$ \begin{array}{l} {x_{k + 1}} = {x_k} + \Delta {s_{k + 1}} \times \cos ({\theta _{k }} + \frac{{\Delta {\theta _{k + 1}}}}{2})\\ {x_{k + 1}} = {x_k} + \Delta {s_{k + 1}} \times \sin ({\theta _{k }} + \frac{{\Delta {\theta _{k + 1}}}}{2})\\ {\theta _{k + 1}} = {\theta _{k }} + \Delta {\theta _{k + 1}} \end{array} $$

I was wondering which one is geometrically correct? In other words, how we can show that $\cos ({\theta _k} + \frac{{\Delta {\theta _{k + 1}}}}{2}) = \cos ({\theta _{k + 1}})$?

According to the following figure, we have

$$ \Delta {x_{k + 1}} = \Delta {s_{k + 1}} \times \sin (\frac{{\Delta {\theta _{k + 1}}}}{2}) $$

This may seem to be a strange result, since we said that

$$ \Delta {x_{k + 1}} = \Delta {s_{k + 1}} \times \cos ({\theta _{k + 1}} + \frac{{\Delta {\theta _{k + 1}}}}{2}) $$


Autonomous Land Vehicles: Steps towards Service Robots By Karsten Berns, Ewald Puttkamer