While going through the Sebastian Thrun‘s AI for Robotics class, I came across a programming assignment that required implementing basic kinematics of a simple robot in 2D space. The robot uses bicycle model. Here is the underlying geometry that give rise to the basic equations used in the class.

Figure 1: A robot (car) movement in 2D space.
As shown in Fig. 1, the robot lies in a global cartesian coordinate space and is characterized by its position and heading, , where
is the heading relative to
-axis. The length of the robot is
and its velocity along heading direction
is
.
Let’s assume the robot’s origin (center of rear axle in Fig. 1) moves a distance along the heading direction. We are interested in the turn angle that the robot incurred during the movement.