0%

Models of mobile robots

This post includes kinematic and dynamic models of mobile robots.

At low speed, it is often sufficient to look only at the kinematic model of vehicles, such as two wheeled robot or bicycle model. Dynamic modeling is more involved but captures vehicle behavior more precise over a wide operating range. In some case, the dynamic model is more important because:

  • At high speed and slippery roads, vehicles do not satisfy no slip condition.
  • Forces such as drag, road friction govern requier throttle inputs.

Coordinate transformation

The inertial frame is fixed and usually relative to earth. The body frame is attached to the vehicle, origin at the center of gravity or center of rotation. The location of a point $P$ in Body frame:

,where $C_{BE}$ refers to the rotation from the inertial frame to the body frame.

Nonholonomic constrain

It is a a constraint on the rate of change of degree of freedom. Vehicle velocity always tangent to current path, i.e.:

Thus, we derive the nonholonomic constrain:

Two wheeled robot kinematic model

Kinematic constraint:

two wheeled robot pic 1 two wheeled robot pic 2

The velocity is the average of two wheel velocities. ICR refers to instantaneous center of rotation:

Kinematic model in continuous time form:

Kinematic model in discrete time form:

The kinematic bicycle model

The 2D kinematic bicycle model is also known as the simplified car model. When the reference point is at the rear wheel,

kinematic bicycle model with rear wheel reference point

Similarly, if the reference point is at the front wheel:

However, if the desired point is at the center of gravity(CG):

kinematic bicycle model with CG reference point

With $\dot{\delta} = \psi$, we can modify the CG kinematic bicycle modle to use steering rate input. Hence we have:
$State:[x, y, \theta, \delta]^T, Input:[v, \psi]$

Dynamic model