A Vector Algebra Formulation of Mobile Robot
Velocity Kinematics
Alonzo Kelly and Neal Seegmiller
Abstract Typical formulations of the forward and inverse velocity kinematics of
wheeled mobile robots assume flat terrain, consistent constraints, and no slip at the
wheels. Such assumptions can sometimes permit the wheel constraints to be substi-
tuted into the differential equation to produce a compact, apparently unconstrained
result. However, in the general case, the terrain is not flat, the wheel constraints
cannot be eliminated in this way, and they are typically inconsistent if derived from
sensed information. In reality, the motion of a WMR is restricted to a manifold
which more-or-less satisfies the wheel slip constraints while both following the ter-
rain and responding to the inputs. To address these more realistic cases, we have
developed a formulation of WMR velocity kinematics as a differential-algebraic
system — a constrained differential equation of first order. This paper presents the
modeling part of the formulation. The Transport Theorem is used to derive a generic
3D model of the motion at the wheels which is implied by the motion of an arbi-
trarily articulated body. This wheel equation is the basis for forward and inverse
velocity kinematics and for the expression of explicit constraints of wheel slip and
terrain following. The result is a mathematically correct method for predicting mo-
tion over non-flat terrain for arbitrary wheeled vehicles on arbitrary terrain subject
to arbitrary constraints. We validate our formulation by applying it to a Mars rover
prototype with a passive suspension in a context where ground truth measurement
is easy to obtain. Our approach can constitute a key component of more informed
state estimation, motion control, and motion planning algorithms for wheeled mo-
bile robots.
Alonzo Kelly and Neal Seegmiller
Robotics Institute, Carnegie Mellon University, e-mail: {alonzo,nseegmiller}@cmu.edu
1
2 Alonzo Kelly and Neal Seegmiller
1 Introduction
Wheeled mobile robots (WMRs) are perhaps the most common configuration of ter-
restrial mobile robot, and although decades of research are behind us, little has been
revealed about how to model them effectively in anything other than flat floor envi-
ronments. The motion model of the robot is nonetheless central to pose estimation,
control, and motion planning.
Unlike for their predecessors, manipulators, modeling the articulations of the
mechanisms involved is not the fundamental issue. WMRs need to know how they
move over the terrain and such models are intrinsically differential equations. For
WMRs, these equations are also constrained, the constraints are nonholonomic, the
system is almost always overconstrained to some degree, and even if it was not, the
constraints are typically violated in ways that are only partially predictable. In this
light, it is perhaps less surprising that so little has been written on this problem.
While its importance is clear, its solution is less clear.
Our own historical approaches to the problem [6] have avoided the issues by for-
mulating inputs in state space, where constraints (and constraint consistency) are not
an issue. Terrain following was treated after the fact by integrating the unconstrained
dynamics and then forcing the constraints to be satisfied in a separate optimization
process. While this was adequate, it was hardly principled.
While service robots may operate exclusively in flat floor environments, almost
any useful field robot will have to operate competently on uneven, sloped, and slip-
pery terrain for extended periods of time. The first step toward competent autonomy
in these conditions is the incorporation of faster-than-real-time models that predict
the consequences of candidate actions well. Fast and accurate WMR models are
therefore a fundamental problem and we propose a general approach to designing
such models in this paper.
1.1 Prior Work
Muir and Newman published one of the earliest general approaches to kinematic
modeling of wheeled mobile robots [10]. Following Sheth-Uicker conventions they
assign coordinate systems and derive a graph of homogenous transforms relating
wheel and robot positions. By differentiating cascades of transforms, Jacobian ma-
trices are computed for each wheel (relating wheel and robot velocities) which are
combined to form the “composite robot equation.” They provide a “sensed forward”
solution (in which the robot velocity is determined from sensed steer angles and
wheel velocities) as well as an “actuated inverse” solution.
Several researchers extended this transformation approach to WMR kinematics
modeling. Alexander and Maddocks proposed an alternative forward solution when
rolling without slipping is impossible, derived from Coulomb’s Law of friction [1].
Rajagopalan handled the case of inclined steering columns [11]. Campion et al.
classified WMR configurations into five mobility types based on degrees of mobility
A Vector Algebra Formulation of Mobile Robot Velocity Kinematics 3
and steerability, which they define [2]. Yet others proposed geometric approaches to
WMR kinematics modeling [5][7].
However, these earlier approaches and analyses are limited to planar motion.
More recently in 2005, Tarokh and McDermott published a general approach to
modeling full 6-DOF kinematics for articulated rovers driving on uneven terrain
[13]. Their approach resembles Muir and Newman in requiring the derivation of ho-
mogenous transform graphs and the differentiation of transforms to compute wheel
Jacobians. Others have derived and simulated full-3D WMR kinematics on rough
terrain with specific objectives, such as mechanisms that enable rolling without slip-
ping [4][3], precise localization [8], and control of passively-steered rovers [12].
In contrast to prior transformation and geometric approaches, we derive the kine-
matics and constraint equations for WMR using vector algebra. This new approach
is intuitive and, unlike [13], does not require differentiation. Our method for propa-
gating velocities forward through a kinematic chain is a classical one that has also
been used in robot manipulation [9].
2 Kinematics of Wheeled Mobile Robots
In the general case, a wheeled mobile robot may be articulated in various ways and
it may roll over arbitrary terrain with any particular wheel lying either on or above
the nominal terrain surface. Assuming terrain contact is assured by geometry or a
suspension, there are two principal difficulties associated with wheeled mobile robot
(WMR) kinematic modeling: nonlinearity and overconstraint. Nonlinearity occurs
in steering control because trigonometric functions of the steer angles appear in the
mapping between body and wheel velocities. Overconstraint can occur in estimation
contexts where the set of m > n measurements of velocities and/or steer angles
lead to an inconsistent solution for the n degrees of velocity freedom available in
the vehicle state vector. This section develops solutions for both the control and
estimation problems using a vector algebraic formulation.
We will first develop the basic kinematic relationships between a) the linear and
angular velocity of a distinguished coordinate frame on the body of the mobile robot
and b) the linear velocity of an arbitrarily positioned point corresponding to a wheel.
In contrast to all prior work, we will formulate the transformation using vector al-
gebra, leading to a very straightforward expression for even the general case.
2.1 Transport Theorem
The key element of the technique is a basic theorem of physics, commonly used in
dynamics and inertial navigation theory. Known either as the Coriolis Equation or
the Transport Theorem, it concerns the dependence of measurements in physics on
the state of motion of the observer. The notation
*
u
b
a
will mean the vector quantity
4 Alonzo Kelly and Neal Seegmiller
u of frame a with respect to frame b. Let the letter f refer to a frame of reference
associated with a fixed observer, whereas m will refer to one associated with a mov-
ing observer. Due to their relative, instantaneous angular velocity
*
ω
f
m
, our observers
would compute (or measure) different time derivatives of the same vector
*
v that are
related as follows:
d
*
v
dt
f
=
d
*
v
dt
m
+
*
ω
f
m
×
*
v (1)
2.2 Velocity Transformation
Now, let these two frames have an instantaneous relative position of
*
r
f
m
. Suppose
that the moving observer measures the position
*
r
m
o
and velocity
*
v
m
o
of an object o,
and we wish to know what the fixed observer would measure for the motion of the
same object. The position vectors can be derived from vector addition thus:
*
r
f
o
=
*
r
m
o
+
*
r
f
m
(2)
The time derivative of this position vector, computed in the fixed frame is:
d
dt
f
(
*
r
f
o
) =
d
dt
f
(
*
r
m
o
+
*
r
f
m
) =
d
dt
f
(
*
r
m
o
) +
d
dt
f
(
*
r
f
m
) (3)
Now we can apply the Coriolis equation to the first term on the right to pro-
duce the general result for the transformation of apparent velocities of the object o
between two frames of reference undergoing arbitrary relative motion:
*
v
f
o
=
*
v
m
o
+
*
v
f
m
+
*
ω
f
m
×
*
r
m
o
(4)
We have used the fact that, for any frames a and b,
d
dt
b
(
*
r
b
a
) =
*
v
b
a
.
2.3 Wheel Equation
Fig. 1 Frames for WMR Kinematics. The
four frames necessary for the relation of
wheel rotation rates and to vehicle speed and
angular velocity.
We allow the point around which a wheel
may steer (frame s) to be offset from the
contact point (frame c) between the wheel
and the ground (Figure 1). In such a case,
we can write the position vector for the
wheel contact point as follows:
*
r
w
c
=
*
r
w
v
+
*
r
v
s
+
*
r
s
c
(5)
A Vector Algebra Formulation of Mobile Robot Velocity Kinematics 5
Next, we associate any ground-fixed frame with the fixed observer and the body-
fixed frame with the moving observer and we can use the above velocity transforma-
tion to write a kinematic equation for each wheel. Differentiating the position vector
in the world frame, substituting the Coriolis equation, and using
*
v
v
s
= 0 yields:
*
v
w
c
=
*
v
w
v
+
*
ω
w
v
×
*
r
v
s
+
*
ω
w
v
×
*
r
s
c
+
*
ω
v
c
×
*
r
s
c
(6)
This is important enough to give it a name: the wheel equation. In the case of no
offset, the last two terms vanish and the steer velocity (
*
ω
v
s
or
*
ω
v
c
) no longer matters.
The formula is valid in 3D and it also applies to cases with arbitrary articulations
between the v and s frames because only the vector
*
r
v
s
is relevant. In other words,
this is the general case.
2.4 Inverse Velocity Kinematics - Body to Wheels
Let the term inverse kinematics refer to the problem, relevant to control, of com-
puting the wheel velocities from the body velocity. Given the above, the problem is
solved by writing a wheel equation for each wheel. To do so, the physical vectors
*
u must be expressed in a particular coordinate system. Let
c
u
b
a
denote the vector
quantity u of frame a with respect to frame b, expressed in the coordinates of frame
c (and let u
b
a
imply
b
u
b
a
). Then, if R
v
s
is the rotation matrix that converts coordinates
from the steer frame to the vehicle frame, it becomes possible to express the wheel
equation for any wheel in the vehicle frame where many of the vectors are typically
known:
v
v
w
c
=
v
v
w
v
+
v
ω
w
v
× r
v
s
+
v
ω
w
v
× R
v
s
r
s
c
+ ω
v
c
× R
v
s
r
s
c
(7)
2.5 Wheel Steering and Drive - Control and Estimation
In a control context, the wheel equation cannot be used directly as written to find
wheel controls because the matrix R
v
s
depends on the steer angle, which is one of the
unknowns. However, the steer angle can be found by expressing the wheel velocity
in wheel coordinates and enforcing the constraint that the lateral (y) component of
the terrain relative velocity in the wheel frame must vanish. For the geometry in
Figure 1, the result is intuitive, the steer angle can be determined from the direction
of the s frame because its velocity is parallel to that of c, though not necessarily
of the same magnitude. The velocity of frame s is simply the first two terms of the
wheel equation. Then, the steer angle for the wheel is:
θ = atan2[ (
v
v
w
s
)
x
, (
v
v
w
s
)
y
] (8)