Abstract
Since many off-the-shelf motor drives are supplied with complete control capability in the current, velocity and position loop, the robot model in the navigation control architecture can be oriented either to kinematics, interfaced with the velocity loop, or to dynamics, with the motor-current loop. Moreover, no constraints are imposed by a caster on the mobility of differential-driving mobile robots. Hence, a reduced model, containing only the platform, is sufficient for navigation control based only on the robot kinematics. However, if the multibody system model is used for navigation control based on the robot dynamics, to cope with the demands of high-speed manoeuvres and/or heavy-load operations, then the caster kinematics, especially the knowledge of the steering angle, is required to calculate the inertia matrix and the terms of Coriolis and centrifugal forces. While this angle can be measured by means of dedicated encoders to be installed for casters, the computation technique based on the existing tachometers, already mounted on the motor shafts for the servo control of the two driving wheels, is proved to be sufficient. Both a thorough kinematics model and a multibody dynamics model, including the platform and all different wheels, are formulated here for differential-driving mobile robots. Computational methods based on velocity compatibility and rigid body twists are proposed to estimate the steering angle. Simulation results of the differential-driving mobile robot moving on a smooth trajectory show the feasibility of the steering-angle computational scheme, which obviates the need of installing caster encoders. Moreover, a performance comparison on system modelling is implemented via simulation, between the differential-driving mobile robot model with and without caster dynamics. This further validates the importance of the dynamic effects of casters on the whole system model. Therefore, the multibody modelling approach for casters with the steering-angle computation technique can facilitate the navigation control architecture under dynamics conditions.
Introduction
Differential-driving mobile robots (DDMRs) are widely used in research and industry environments, for example, some well-known products like Pioneer, Roomba and KIVA. One main advantage of DDMRs is the capability of changing their direction by varying the angular velocities of their two driving wheels, without any additional steering mechanism, as opposed to car-like mobile robots 1,2 and unmanned ground vehicles. 3 When a DDMR undergoes planar motion, three wheels are sufficient to guarantee the stable balance of its platform. In order to avoid any additional constraint on the mobility of DDMRs, a caster wheel is normally used as the third wheel. 4 Although the stability and load-carrying capacity can be further improved by adding extra casters, a suspension mechanism will be required for more than three contact points on uneven terrain.
Due to their simple and reliable propulsion mechanism, DDMRs are adopted in almost all research fields: path-tracking, 5 –9 trajectory-planning, 10 –14 position-estimation, 15,16 navigation control 17 –19 and multi-robot control. 20 –22 Robot models are the indispensable basis for the various applications mentioned earlier. Generally speaking, kinematics models are more popular in applications, not only for estimation 15,16 and planning, 11,13,14 but also for control. 8,17,18,20 Most kinematics models involve differential equations due to the nonholonomic constraints of DDMRs, 7,14,15,19,22 while some kinematics models are based on geometric relations that rely on the instantaneous centre of curvature or trajectory approximation at each sampling instant. 16 –18,20 Besides the robot kinematics, it is important to consider the robot dynamics when high-speed movement and/or heavy-load operations are required in realistic work fields. 23 The dynamics models can associate platform twist with motor armature voltage, 5 or with duty ratio of pulse width modulation of motor voltage, 12 or relate wheel forces to robot acceleration. 9,21
Furthermore, the system model can be described hierarchically, corresponding to the multiple closed loops in the robot control architecture, for example, navigation control, which involves three control loops: path tracking, robot control and drive control. The system model can be either single or composite, either kinematic or dynamic. For example, three single models and one composite model were proposed by Shojaei et al.
5
The former includes a kinematics path-tracking model relating platform pose to platform
To the authors’ knowledge, in the pertinent literature, the effects of casters in the motion control models of DDMRs, either kinematic or dynamic, are neglected, although at least one caster is necessary for the stable balance of DDMRs. All robot twists in the foregoing kinematics models just refer to the robotic platform without the wheels, since casters do not constrain the mobility of DDMRs. However, when a caster steers its orientation by rotating around its offset axis, a steering torque is imposed on the robotic platform, which is not negligible, as mentioned in the literature 5 : ‘The passive caster wheel is ignored to reduce the complexity of the model. However, it is more reasonable to take the free-wheel dynamics into account to avoid a poor performance of the proposed controller in experimental results’. From this perspective, although an adaptive tracking controller promises to be robust to overcome uncertainty in the kinematic and dynamic models of DDMRs, 5,21 modelling the kinematics and dynamics of casters is extremely helpful in enhancing the performance of these adaptive controllers.
The motivation behind this article lies in bringing the effect of casters into the kinematics and dynamics modelling of DDMRs, in order to derive a precise and reliable robot model as the basis for further developments of pose estimation (localization), trajectory planning and navigation control. Our main contributions are twofold. On the one hand, a thorough kinematics model and a multibody dynamics model, including the platform and all different wheels, are formulated for DDMRs. Both kinematic and dynamic effects of the caster are taken into account. On the other hand, computational schemes based on velocity compatibility and rigid body twists, without using dedicated sensors, are investigated to estimate the steering angle, which is required to calculate the inertia matrix and the terms of Coriolis and centrifugal forces in the dynamics model.
The balance of the article is organized as follows: the thorough kinematics model is developed for DDMRs in the second section; the multi-loop navigation control architecture and the multibody dynamics model are introduced in the third section; steering-angle computational schemes are included in the fourth section; simulation results are reported in the fifth section; while conclusions and recommendations for future research are given in the sixth section.
Thorough kinematics of DDMR

Diagram of a differential-driving mobile robot.
Let
Platform kinematics
Let the radius of the three wheels be
Furthermore, the velocity of
where
All vectors in this subsection are two-dimensional. Let the distance between the two actuated wheels be 2
Hence, the scalar angular velocity of the platform is derived from equation (3) as
Let the distance between
Further, the
The differential forward kinematics model of the platform then being expressed as
with the 3 ×2
In order to derive the inverse kinematics model, equation (5) is expressed as
where the 2 × 2 matrix
Moreover
Hence
The inverse kinematics model of the platform can be readily obtained from equation (7), namely
Caster kinematics
As shown in Figure 1, the caster rolls on the ground at a rate
In this subsection, all vectors are considered three-dimensional. Let
while the scalar angular velocity of the bracket is
with
Moreover, the angular velocity of the caster can be readily expressed in the frame fixed to the bracket, namely
The velocity of the centre of the caster is
As shown in Figure 1, point
On the other hand, if point
Upon equating the right-hand sides of the above-mentioned two equations and simplifying them, we obtain a vector equation in the unactuated joint rates
Furthermore,
with the definitions given in the following
Letting
with the entries of the 2 × 2 matrix
Apparently, the kinematics model of the DDMR consists of two main elements: the platform and the caster. The former relates the planar twist of the platform to the vector of actuated joint rates, while the joint rates of the caster are associated with those of the driving wheels in the latter. Since the casters do not constrain the mobility of the DDMR, the platform kinematics can be used to represent its planar motion in many applications. On the contrary, a thorough kinematics of the DDMR has to include the caster kinematics, in order to describe its spatial motion.
Multibody dynamics of DDMRs
Either the kinematics model or the dynamics model can be used for the navigation control architecture of mobile robots. If a DDMR is actuated only at the purely kinematics level, the reduced kinematics, only containing the platform, is sufficient for navigation control. However, if the dynamics model of the multibody DDMR is employed in the navigation control architecture, the kinematics of the caster, especially the steering angle, is required for the inverse-dynamics computation.
Navigation control architecture
Since electric motors are the common actuators in most rolling robots, the motor motion control system is to be analysed before the system is integrated into the navigation control architecture of mobile robots. A typical motion control system includes a feedback system with three cascaded loops, that is, the outer position loop, the intermediate velocity loop and the inner current loop, as shown in Figure 2. The position, velocity and current controllers can be physically implemented either in a controller or in a drive. A drive, also called an amplifier, is used to amplify low-power command signals generated by the controller to high-power voltage and current levels necessary to operate a motor. 25

Multi-loop motion control system.
Motion control systems have traditionally used a velocity sensor, for example, a tachometer, and a position sensor, for example, an encoder. Motor velocity and position are measured and fed back into the controller, while motor current is closed in a control loop by the drive. Nowadays, the boundary between the functions of a controller and a drive is becoming blur. Many off-the-shelf motor drives provide the complete control capability for all three loops, which implies that there are several optional control interfaces when a motion control system is integrated into the navigation control architecture of mobile robots.
A drive control and trajectory tracking system was proposed for a robotic wheelchair.
26
A more general navigation control architecture based on the kinematics model is shown in Figure 3. This is a multi-closed-loop cascaded feedback control system, including hardware, software and algorithm blocks. Path deviations are calculated by comparing the data coming from the path generator with that from the localization system. Path-tracking is used to eliminate these path deviations by controlling the twist

Kinematic navigation control architecture.
The reduced kinematics model only containing the platform can be effective in applications whereby the robot is lightweight. However, it is nearly impossible to ignore the effects of multibody dynamics for either heavy-duty robotic vehicles or for lightweight robots performing fast manoeuvres. Therefore, another solution is proposed for the navigation control architecture, as shown in Figure 4. This architecture includes an additional algorithm block for inverse dynamics, between inverse kinematics and drive control. Since a time-history of actuated joint rates can be obtained using the inverse kinematics while a mobile robot tracks the target path, actuated joint rates and their time derivatives are all known in the inverse dynamics of mobile robots, which generate the desired torques for the motors of the driving wheels. In this case, the motion control system only needs drives to close the current loop and to implement the torque feedback control. When the robot dynamics is integrated into the navigation control architecture, a multibody system model will be adopted, implying that each rigid body, including the caster and the bracket, should be taken into account. Furthermore, the inertia matrices and the terms of Coriolis and centrifugal forces of the caster and the bracket are both posture-dependent, associated with the steering angle, as discussed in the following.

Dynamic navigation control architecture.
Multibody dynamics model
First, we recall the generalized dynamics model derived from the Newton–Euler equations by means of the natural orthogonal complement for a mechanical system containing
where
Moreover
and
where
with
Since the Newton–Euler formulation applies to multibody dynamics, we distinguish five rigid bodies composing the DDMR, as shown in Figure 1. These are the left actuated wheel, the right actuated wheel, the caster, the bracket carrying the caster and the platform. These bodies are labelled from 1 to 5, in the foregoing order. The 6 × 6 inertia dyads of the three wheels are denoted by
where, from equations (1), (6) and (11)
with
Upon first substituting equations (4) and (19) into equation (12), and then substituting equations (12) and (18) into equation (13), one obtains
and hence
with
Moreover
and hence
Substitution of equations (4) and (19) into equation (12) yields
with
Let point
Upon substituting equations (18) and (38) into equation (40),
The 2 × 2 generalized inertia matrix
The coefficient matrix
Steering angle computation
In the navigation control architecture, path tracking can be a purely kinematics control technique without consideration of the effect of the caster. Only the platform twist
Angle

Off-the-shelf caster structure.
Furthermore, if the mobile robot has more than one caster, especially for the purposes of enhancing the stability and load-carrying capacity of a heavy-duty robot, the motion measurement system tends to become complex and bulky. This may explain why the kinematics navigation control architecture is more popular in research and industrial practice – only requiring a simple platform kinematics model, and without the need of additional sensors for the casters. On the contrary, dynamics control requires not only an inverse dynamics model with extra computational cost for matrices
As shown in Figure 1, the steering angle
Velocity computation based on compatibility
This problem can be handled by means of constraints on the velocity field of a rigid body. For a rigid body in planar motion, the velocity field is fully determined by the velocities of two points; the velocity of a third point can then be obtained according to the velocity-compatibility condition. By virtue of the body rigidity, the velocity components of two arbitrary points projected along the line joining them are equal
or, in a terser form
where the 2 × 2 matrix
with
Moreover
The inverse of
Upon substituting equation (47) into equation (43), one can readily solve for the velocity
Finally, the velocity
Velocity computation based on twists
If the twist of a rigid body is known, the velocity of an arbitrary point of the body, given by its position vector, is readily computed by means of the velocity field provided by the twist. For the DDMR under study, the platform twist
The velocity of point
Substitution of equations (4) and (50) into equation (51) leads to the same result of equation (49). It is thus apparent that the computational method based on the twist is more convenient than that based on compatibility, since the computation of the inverse matrix is obviated for a rigid body undergoing planar motion.
Steering angle
As shown in Figure 1, since the steering angle
The steering angle
Simulation
Simulation tests were conducted to verify the feasibility of the foregoing computational scheme for the steering angle, and further, to evaluate the significance of caster dynamics on the multibody modelling of a DDMR. The geometric parameters of the DDMR at hand are given in Table 1. In order to simplify the computation of the actuated joint rates, the scalar equations of the inverse kinematics of the platform are first derived. Both sides of equation (10) are dot-multiplied by
Geometric parameters.
The scalar equations of the inverse kinematics are readily derived by combining equations (4) and (53), namely
where the longitudinal speed is
Steering-angle computation
When the DDMR tracks a straight line, the two actuated joint rates are equal. The steering angle
where
Suppose that the DDMR starts on a straight line and accelerates to a constant speed of 0.5 m s−1. Then, the DDMR enters this Lamé curve at point
In order to simplify the computation of the curvature, the coordinates
where
Upon substituting equation (57) into equation (56), we obtain
In Lamé curves, the curvature increases gradually from zero to a maximum, and then decreases to zero again, when the orientation angle

Time histories of variables along the Lamé curve.
A set of poses of the robotic platform and the caster on typical points of the Lamé curve are depicted in Figure 7. The bold dashed lines, tangent to the curve at typical points, denote the platform heading direction. The bold solid lines connecting with the front end of the platform indicate the caster. The angle between the corresponding dashed line and the solid line is nothing but the steering angle. Since the turning motion of the caster is towed by the platform, the orientation change of the former lags behind that of the latter. The orientation difference between platform and caster, the origin of the steering angle, increases with the trajectory curvature synchronously.

Poses of the DDMR on the Lamé curve with the tangents at the inflection points making a right angle. DDMR: differential-driving mobile robot.

Matrix-element variation along the Lamé curve of Figure 7.
As mentioned earlier, the dynamics of the DDMR with casters is posture-dependent. Essentially, this dependence on the steering angle stems from the transformation matrix
It is noteworthy that the Lamé curve is not limited to blending two lines at a right angle. In fact, any two lines at an arbitrary angle can be smoothly blended by means of Lamé curves, suitably shaped by affine transformation, for example, a stretched or squeezed Lamé curve in which its tangents at the inflection points make angles of 120° or 60°, for example, as shown in Figures 9 and 10, respectively. Apparently, a stretch deformation makes the curvature of the Lamé curve smaller at each point, while its squeezed counterpart makes it larger, as illustrated in Figures 6, 11 and 12. When the orientation angle

Poses of the DDMR on the stretched Lamé curve with the tangents at the inflection points making an angle of 120°. DDMR: differential-driving mobile robot.

Poses of the DDMR on the squeezed Lamé curve with the tangents at the inflection points making an angle of 60°. DDMR: differential-driving mobile robot.

Time-histories of variables along the Lamé curve of Figure 9.

Time-histories of variables along the Lamé curve of Figure 10.
Modelling-performance comparison
As explained earlier, the dynamic effects of casters are often neglected in the system modelling of DDMRs in the literature. Possible reasons include the following: (1) casters do not constrain the mobility of DDMRs and (2) the mass of a caster is relatively small when compared with that of the platform of the DDMR, so that its effects on the inertia of the whole system can be ignored in order to reduce the complexity of the robot model. However, to the authors’ knowledge, the research work providing a justification of the claim that the caster dynamics is negligible has not been reported. A performance comparison is conducted in this subsection to evaluate the dynamic effects of casters on the whole system model, by considering the generalized inertia matrix with and without the caster and its bracket.
As shown in Figure 1, the masses of the left actuated wheel, the right actuated wheel, the caster, the bracket and the platform are assumed as:
where
According to equation (42), since the inertia dyads
Simulation is conducted to test the variation of the generalized inertia

The inertia-matrix entries of the caster.
In order to evaluate the dynamic effects of the caster on the generalized inertia matrix quantitatively, still without relying on the specific geometric and inertial parameters, the ratio of the variable inertia caused by the caster to the constant inertia reported in the literature is plotted in Figure 14. In fact, this inertia ratio also implies the relatively computational error on the generalized inertia matrix incurred when the caster dynamics is neglected in the model of DDMRs.

The inertia ratio of the caster to others.
The inertia ratio for entry (1, 2) exhibits an extremely large variation range, with a maximum value of 76.4% when
Finally, we summarize the foregoing simulation results: (1) the caster-wheel dynamics has a significant effect on the multibody modelling of a DDMR; (2) the steering angle is indispensable for the accurate dynamics model of the DDMR with casters; (3) the steering angle is readily calculated by means of the computational scheme proposed here, thereby obviating the need of dedicated encoders for casters; and (4) the steering angle is influenced by the trajectory curvature, which is addressed by means of a trajectory with a smooth curvature variation, thus easing the control task.
Conclusions
Given that many off-the-shelf motor drives are supplied with full control capability in the current, velocity and position loops, the DDMR model in the navigation control architecture can be either kinematic or dynamic. The former relates platform twist and joint rates in the velocity loop, while the latter associates joint rates with motor torques in the motor-current loop. For DDMRs with casters, a reduced model is sufficient for purely kinematic navigation control. However, the multibody system model is indispensable for dynamic navigation control of heavy-duty robotic vehicles in high-speed manoeuvres. In this case, the caster kinematics, especially the knowledge of the steering angle, is required to calculate the inertia matrix and the terms of Coriolis and centrifugal forces.
A thorough kinematics model and a multibody dynamics model, including the platform and all different wheels, are formulated for DDMRs. Computational schemes based on velocity compatibility and rigid body twists are proposed to estimate the steering angle without using dedicated encoders for casters. Lamé curves, with
Footnotes
Declaration of conflicting interests
The author(s) declared no potential conflicts of interest with respect to the research, authorship, and/or publication of this article.
Funding
The author(s) disclosed receipt of the following financial support for the research, authorship, and/or publication of this article: This work was supported by the Fundamental Research Funds for the Central Universities of China (NS2016050).
