alt="equation"/>
The system of equations for this model is now fifth order. The equations provide the correct kinematic relationships among the variables for motion and rotation in the xy plane but do not include the complexity of suspension or motor dynamics. Also not included in this model are robot pitch and roll.
It may be desirable to form a discrete‐time model from these equations. This would be useful for discrete‐time simulation as well as other applications. Clearly these equations are nonlinear. Therefore, the methods used for converting a linear continuous‐time system to a discrete‐time representation are not applicable. One approach is to use the Euler integration method. This method is a first‐order, Taylor‐series approximation to integration and says that the derivative may be approximated by a finite difference
This can be re‐arranged to yield
Setting t = kT and the sampling interval Δt = T and applying this to the above equations we have
(1.6a)
(1.6b)
(1.6c)
(1.6d)
and
(1.6e)
Here the sampling interval T must be chosen to be sufficiently small depending on the dynamics of the original differential equations, i.e., the behavior of the discrete‐time model must match up with that of the original system. For a linear system, this corresponds to selecting the sampling interval to be approximately one‐fifth of the smallest time constant of the system or smaller depending on the degree of precision required. For nonlinear systems, it may be necessary to determine this limiting size empirically. This discrete‐time model may be used for analysis, control design, estimator design, and simulation.
It should be noted that more sophisticated and more robust methods exist for converting continuous‐time dynamic system models to discrete‐time models. For more information on this topic the reader is referred to Digital Simulation of Dynamic Systems by Hartley, Beale and Chicatelli.
From time to time, it will be convenient to interpret speed expressed in various units. For this reason the following equalities are presented.
1.3 Vehicles with Differential‐Drive Steering
Another common type of steering used for mobile robots is differential‐drive steering illustrated in Figure 1.2. Here the wheels on one side of the robot are controlled independently of the wheels on the other side. By coordinating the two different speeds, one can cause the robot to spin in place, move in a straight line, move in a circular path, or follow any prescribed trajectory.
The equations of motion for the robot steered via differential wheel speeds are now derived. Let R represent the instantaneous radius of curvature of the robot trajectory. The width of the vehicle, i.e., spacing between the wheels, is designated as W. From geometrical considerations we have:
(1.7a)
Figure 1.2 Schematic diagram of differential‐drive robot.
and
(1.7b)
Now subtracting the two above equations yields
so we obtain for the angular rate of the robot
(1.8)
Solving for the instantaneous radius of curvature, we have:
or
or finally
(1.9)
This results in the expression for velocity along the robot's longitudinal axis:
In summary, the equations of motion in robot coordinates are:
(1.10a)
(1.10b)
and
(1.10c)
If we convert to earth coordinates these become:
(1.11a)
(1.11b)
and
(1.11c)
As we did in the case for the robot with front‐wheel steering, we may wish to account for the fact that velocities cannot change instantaneously. Thus, we would introduce as the control variables the velocity rates:
(1.12a)
and
(1.12b)
The system of equations for this kinematic model is now fifth order.
Again we can use the Euler integration method for obtaining a discrete‐time model for this system of nonlinear equations,
(1.13a)
(1.13b)