Modeling and Control of A 4-Wheel Skid-Steering Mobile Robot
Modeling and Control of A 4-Wheel Skid-Steering Mobile Robot
4, 477496
MODELING AND CONTROL OF A 4-WHEEL SKID-STEERING MOBILE ROBOT
KRZYSZTOF KOZOWSKI
, DARIUSZ PAZDERSKI
cos sin
sin cos
v
x
v
y
. (1)
Furthermore, because of the planar motion, one can write
= .
It is obvious that Eqn. (1) does not impose any re-
strictions on the SSMRplane movement, since it describes
free-body kinematics only. Therefore it is necessary to an-
alyze the relationship between wheel velocities and local
velocities.
Suppose that the i-th wheel rotates with an angular
velocity
i
(t), where i = 1, 2, . . . , 4, which can be seen
as a control input. For simplicity, the thickness of the
wheel is neglected and is assumed to be in contact with
the plane at point P
i
as illustrated in Fig. 4. In con-
trast to most wheeled vehicles, the lateral velocity of the
SMRR, v
iy
, is generally nonzero. This property comes
from the mechanical structure of the SSMR that makes
lateral skidding necessary if the vehicle changes its orien-
tation. Therefore the wheels are tangent to the path only
if = 0, i.e., when the robot moves along a straight line.
In this description we consider only a simplied case
of the SSMR movement for which the longitudinal slip
between the wheels and the surface can be neglected. Ac-
cording to this assumption based on work done by (Pacej-
ka, 2002), the following relation can be developed:
v
ix
= r
i
i
, (2)
where v
ix
is the longitudinal component of the total ve-
locity vector v
i
of the i-th wheel expressed in the local
frame and r
i
denotes the so-called effective rolling radius
of that wheel.
To develop a kinematic model, it is necessary to take
into consideration all wheels together. In Fig. 5, the radius
vectors d
i
= [ d
ix
d
iy
]
T
and d
C
= [ d
Cx
d
Cy
]
T
v
4
x
ICR
y
ICR
d
4
d
1
d
2
d
3
d
C
v
3
v
4x
v
4y
P
4
P
3
P
2
P
1
v
3y
v
3x
y
l
Y
g
X
g
x
l
v
2x
v
1x
v
2y
v
1y
v
2
v
1
v
x
v
y
v
ICR
COM
Fig. 5. Wheel velocities.
are dened with respect to the local frame from the instan-
taneous center of rotation (ICR). Consequently, based on
the geometry of Fig. 5, the following expression can be
deduced:
v
i
d
i
=
v
d
C
= || (3)
or, in a more detailed form,
v
ix
d
iy
=
v
x
d
Cy
=
v
iy
d
ix
=
v
y
d
Cx
= , (4)
where the symbol denotes the Euclidean norm.
Dening the coordinates of the ICRin the local frame
as
ICR = (x
ICR
, y
ICR
) = (d
xC
, d
yC
) (5)
allows us to rewrite (4) as follows:
v
x
y
ICR
=
v
y
x
ICR
= . (6)
From Fig. 5 it is clear that the coordinates of vectors d
i
satisfy the following relationships:
d
1y
= d
2y
= d
Cy
+c,
d
3y
= d
4y
= d
Cy
c,
d
1x
= d
4x
= d
Cx
a,
d
2x
= d
3x
= d
Cx
+b,
(7)
where a, b and c are positive kinematic parameters of
the robot depicted in Fig. 3. After combining Eqns. (4)
and (7), the following relationships between wheel veloc-
ities can be obtained:
v
L
= v
1x
= v
2x
,
v
R
= v
3x
= v
4x
,
v
F
= v
2y
= v
3y
,
v
B
= v
1y
= v
4y
,
(8)
K. Kozowski and D. Pazderski
480
where v
L
and v
R
denote the longitudinal coordinates of
the left and right wheel velocities, v
F
and v
B
are the
lateral coordinates of the velocities of the front and rear
wheels, respectively.
Using (4)(8) it is possible to obtain the follow-
ing transformation describing the relationship between the
wheel velocities and the velocity of the robot:
v
L
v
R
v
F
v
B
1 c
1 c
0 x
ICR
+b
0 x
ICR
a
v
x
. (9)
In accordance with (2) and (8), assuming that the effective
radius is r
i
= r for each wheel, we can write
w
=
=
1
r
v
L
v
R
, (10)
where
L
are
R
are the angular velocities of the left
and right wheels, respectively.
Combining (9) and (10), the following approximated
relations between the angular wheel velocities and the ve-
locities of the robot can be developed:
=
v
x
= r
L
+
R
2
L
+
R
2c
, (11)
where is a new control input introduced at the kine-
matic level.
From the last equation it is clear that, theoretically,
the pair of velocities
L
and
R
can be treated as a con-
trol kinematic input signal as well as velocities v
x
and .
However, the accuracy of the relation (11) mostly depends
on the longitudinal slip and can be valid only if this phe-
nomenon is not dominant. In addition, the parameters r
and c may be identied experimentally to ensure a high
validity of the determination of the angular robot velocity
with respect to the angular velocities of the wheels.
To complete the kinematic model of the SSMR, the
following velocity constraint introduced in (Caracciolo
et al., 1999) from (6) can be considered:
v
y
+x
ICR
= 0. (12)
The last equation is not integrable. In consequence, it de-
scribes a nonholonomic constraint which can be rewritten
in the Pfafan form:
sin cos x
ICR
X
Y
T
=A(q) q = 0,
(13)
where Eqn. (1) has been used. Since the generalized ve-
locity q is always in the null space of A, we can write
q = S (q) , (14)
where
S
T
(q) A
T
(q) = 0 (15)
and
S (q) =
cos x
ICR
sin
sin x
ICR
cos
0 1
. (16)
It should be noted that since dim() = 2 < dim(q) = 3,
Eqn. (14) describes the kinematics of the robot, which is
underactuated. Additionally, this is a nonholonomic sys-
tem because of the constraint described by (12). It is in-
teresting to see that the analysed kinematic model of the
SSMR is quite similar to the kinematics of the two-wheel
mobile robot presented by (Kozowski and Majchrzak,
2002).
From (6) and (9) it can be seen that control of the v
y
and v
yi
velocity coordinates is not possible without the
knowledge of the x
l
-axis projection of the ICR. There-
fore, considering the linear velocity v
x
and the angular
velocity as control signals seems to have an advantage
over the previous propositions presented by (Kozowski
and Pazderski, 2003; Caracciolo et al., 1999), where in-
stead of , the velocity v
y
is used.
2.2. Dynamic Model
In this section the dynamic properties of the SSMR are de-
scribed, since the dynamic effects play an important role
for such vehicles (see Caracciolo et al., 1999). It is caused
by unknown lateral skidding ground interaction forces.
First, the wheel forces depicted in Fig. 6 are examined.
Fig. 6. Forces acting on one wheel.
The active force F
i
and reactive force N
i
are related
to the wheel torque and gravity, respectively. It is clear
Modeling and control of a 4-wheel skid-steering mobile robot
481
Fig. 7. Active and resistive forces of the vehicle.
that F
i
is linearly dependent on the wheel control input
i
, namely,
F
i
=
i
r
. (17)
According to (Pacejka, 2002) we assume that the vertical
force N
i
acts from the surface to the wheel. Considering
the four wheels of the vehicle (Fig. 7) and neglecting addi-
tional dynamic properties, we obtain the following equa-
tions of equilibrium:
N
1
a = N
2
b,
N
4
a = N
3
b, (18)
4
i=1
N
i
= mg,
where m denotes the vehicle mass and g is the gravity
acceleration. Since there is symmetry along the longitudi-
nal midline, we obtain
N
1
= N
4
=
b
2 (a +b)
mg,
(19)
N
2
= N
3
=
a
2 (a +b)
mg.
Assume that the vector F
si
results from the rolling
resistant moment
ri
and the vector F
li
denotes the lat-
eral reactive force. Based on (Caracciolo et al., 1999)
these reactive forces can be regarded as friction ones.
However, it is important to note that friction modeling is
quite complicated since it is highly nonlinear and depends
on many variables. Therefore, in most cases only a simpli-
ed approximation describing the friction F
f
as a super-
position of Coulumb and viscous friction is considered. It
can be written as
F
f
() =
c
N sgn () +
v
, (20)
where denotes the linear velocity, N is the force per-
pendicular to the surface, while
c
and
v
denote the
coefcients of Coulumb and viscous friction, respectively.
Since for the SSMR the velocity is relatively low, espe-
cially during lateral slippage, the relation
c
N |
v
|
is valid, which allows us to neglect the term
v
to sim-
plify the model. It is very important to note that the func-
tion (20) is not smooth when the velocity equals zero,
because of the sign function sgn (). It is obvious that
this function is not differentiable at = 0. Since a con-
tinuous and time differentiable model of the SSMR should
be obtained, the following approximation of this function
is proposed:
sgn () =
2
arctan (k
s
) , (21)
where k
s
1 is a constant which determines the approx-
imation accuracy according to the relation
lim
ks
2
arctan (k
s
) = sgn (x) . (22)
Based on the previous deliberations, the friction
forces for one wheel can be written as
F
li
=
lci
mgsgn (v
yi
) , (23)
F
si
=
sci
mgsgn (v
xi
) , (24)
where
lci
and
sci
denote the coefcients of the lateral
and longitudinal forces, respectively.
Using the Lagrange-Euler formula with Lagrange
multipliers to include the nonholonomic constraint (12),
the dynamic equation of the robot can be obtained. Next,
it is assumed that the potential energy of the robot
PE (q) = 0 because of the planar motion. Therefore the
Lagrangian L of the system equals the kinetic energy:
L(q, q) = T (q, q) . (25)
Considering the kinetic energy of the vehicle and neglect-
ing the energy of rotating wheels, the following equation
can be developed:
T =
1
2
mv
T
v +
1
2
I
2
, (26)
where m denotes the mass of the robot and I is the mo-
ment of inertia of the robot about the COM. For simplicity,
it is assumed that the mass distribution is homogeneous.
Since v
T
v = v
2
x
+ v
2
y
=
X
2
+
Y
2
, Eqn. (26) can be
rewritten in the following form:
T =
1
2
m
X
2
+
Y
2
+
1
2
I
2
. (27)
K. Kozowski and D. Pazderski
482
After calculating the partial derivative of kinetic energy
and its time-derivative, the inertial forces can be obtained
as
d
dt
E
k
q
m
X
m
Y
I
= M q, (28)
where
M =
m 0 0
0 m 0
0 0 I
. (29)
Consequently, the forces which cause the dissipation
of energy are considered. According to Fig. 7, the follow-
ing resultant forces expressed in the inertial frame can be
calculated:
F
rx
( q) = cos
4
i=1
F
si
(v
xi
)sin
4
i=1
F
li
(v
yi
) , (30)
F
ry
( q) = sin
4
i=1
F
si
(v
xi
)+cos
4
i=1
F
li
(v
yi
) . (31)
The resistant moment around the center of mass M
r
can
be obtained as
M
r
( q) = a
i=1,4
F
li
(v
yi
) +b
i=2,3
F
li
(v
yi
)
+c
i=1,2
F
si
(v
xi
)+
i=3,4
F
si
(v
xi
)
. (32)
To dene generalized resistive forces, the vector
R( q) =
F
rx
( q) F
ry
( q) M
r
( q)
T
(33)
is introduced. The active forces generated by the actua-
tors which make the robot move can be expressed in the
inertial frame as follows:
F
x
= cos
4
i=1
F
i
, (34)
F
y
= sin
4
i=1
F
i
. (35)
The active torque around the COM is calculated as
M = c (F
1
F
2
+F
3
+F
4
) . (36)
In consequence, the vector F of active forces has the fol-
lowing form:
F =
F
x
F
y
M
T
. (37)
Using (17), (34)(36) and assuming that the radius of
each wheel is the same, we get
F =
1
r
cos
4
i=1
i
sin
4
i=1
i
c (
1
2
+
3
+
4
)
. (38)
To simplify the notation, a new torque control input is
dened as
=
1
+
2
3
+
4
, (39)
where
L
and
R
denote the torques produced by the
wheels on the left and right sides of the vehicle, respec-
tively. Combining (38) and (39), we get
F = B(q) , (40)
where B is the input transformation matrix dened as
B(q) =
1
r
cos cos
sin sin
c c
. (41)
Next, using (28), (33) and (40), the following dynamic
model is obtained:
M (q) q +R( q) = B(q) . (42)
It should be noted that (42) describes the dynamics of
a free body only and does not include the nonholonomic
constraint (13). Therefore a constraint has to be imposed
on (42). To this end, a vector of Lagrange multipliers,
, is introduced as follows (see Caracciolo et al., 1999;
Gutowski, 1971):
M (q) q +R( q) = B(q) +A
T
(q) . (43)
For control purposes it would be more suitable to
express (43) in terms of the internal velocity vector .
Therefore, (43) is multiplied from the left by S
T
(q),
which results in
S
T
(q) M (q) q +S
T
(q) R( q)
= S (q)
T
B(q) +S
T
(q) A
T
(q) . (44)
After taking the time derivative of (14), we obtain
q =
S (q) +S (q) . (45)
Next, using (45) and (14) in (43), the dynamic equations
become
M +
C +
R =
B, (46)
Modeling and control of a 4-wheel skid-steering mobile robot
483
where
C = S
T
M
S = mx
ICR
x
ICR
(47)
M = S
T
MS =
m 0
0 mx
2
ICR
+I
, (48)
R = S
T
R =
F
rx
( q)
x
ICR
F
ry
( q) +M
r
, (49)
B = S
T
B =
1
r
1 1
c c
. (50)
2.3. Drive Model of the SSMR
In this section a model of the SSMR drive is developed. It
is assumed that the robot is driven by four DC brushed
motors with mechanical gears. In Fig. 8 a simplied
scheme of the drive on the right side of the robot is de-
picted. Considering only one drive and assuming for sim-
Fig. 8. Drive system on the right side of the vehicle.
plicity that the torque
mi
produced by the i-th motor is
linearly dependent on the rotor current i
ai
, we can write
mi
= k
i
i
ai
, (51)
where k
i
denotes a motor torque constant. The voltage
equation of the armature can be approximated by the fol-
lowing linear relationship:
u
iva
= L
a
d
dt
i
ai
+R
a
i
ai
+k
e
mi
, (52)
where L
a
and R
a
denote the series inductance and resis-
tance of the rotors, respectively, k
e
is the electromotive
force coefcient, while
mi
denotes the angular velocity
of the rotor. Since the i-th actuator is equipped with gears
characterized by a ratio n > 1, we get
i
= nk
i
i
ai
, (53)
mi
= n
i
, (54)
where some additional dynamic effects concerning inertia
and backlash of gears have been neglected. According to
Fig. 8, a new input control signal u
va
on the voltage level
is dened as
u
va
=
u
vaL
u
vaR
T
, (55)
where u
vaL
and u
vaR
denote the motor voltage signals
on the left and right sides of the vehicle, respectively.
Since each pair of motors is electrically and mechanically
coupled, we have
u
vaL
u
vaR
u
va1
+u
va2
u
va3
+u
va4
(56)
and
=
1
n
m1
m3
=
1
n
m2
m4
. (57)
Assuming that all motors and gears have the same param-
eters and using (51)(57), the following voltage-current
equations are developed:
= 2k
i
ni
a
, (58)
u
va
= 2L
a
d
dt
i
a
+ 2R
a
i
a
+ 2k
e
n
w
. (59)
3. Control Law
In this section an algorithm which solves the regulation
and trajectory tracking problem is considered. First, ac-
cording to (Caracciolo et al., 1999), an operational non-
holonomic constraint (see Gutowski, 1971) is introduced
to limit the magnitude of lateral slippage in open loop con-
trol. Second, the idea of a kinematic oscillator proposed
by (Dixon et al., 2001) is used. Finally, the proposed con-
trol scheme consists of kinematic, dynamic and motor lev-
els, which ensures a better performance of the overall al-
gorithm.
3.1. Operational Constraint
It is easy to observe that the ICR position inuences the
motion of the SSMR. In contrast to most mobile robots
where the wheels are not supposed to skid, the ICR of the
SSMR is not xed. Therefore, theoretically, it can move
K. Kozowski and D. Pazderski
484
during the robot motion. However, it can be seen from
Fig. 5 and Eqn. (9) that if the x
ICR
coordinate goes out,
of the robot wheelbase, then the robot skids into a lateral
direction and loses its stability.
To solve this problem, Caracciolo et al. (1999) pro-
posed to include an operational nonholonomic constraint
(mathematical constraint) which is based on (12). This
constraint can be written as
v
y
+x
0
= 0, (60)
where x
0
denotes a xed coordinate of the ICR which
should be selected as
x
0
(a, b) . (61)
It can be interpreted as a programmable limitation of the
SSMR lateral skidding that is done by imposing the con-
straint on the kinematic and dynamic model of the vehi-
cle. To this end, x
ICR
in (16), (47)(50) is replaced by
x
0
and it is assumed that x
ICR
= 0. In consequence, the
matrix S (q) becomes
S (q) =
cos x
0
sin
sin x
0
cos
0 1
. (62)
The value of x
0
is arbitrarily chosen and belongs to the
set dened by (61). It is not related to any structural prop-
erties of the SSMR. It is just a coefcient which allows
us to approximate the relation between the angular and
linear lateral velocities of the robot. It is interesting to see
that selecting x
0
= 0 makes the SSMR kinematics model
similar to the kinematics of a typical two-wheel robot.
3.2. Control Objective
The vector of the position and orientation error q is de-
ned as follows:
q = q q
r
=
X
Y
T
, (63)
where q
r
= [ X
r
Y
r
r
]
T
denotes the desired posi-
tion, X
r
and Y
r
, of the COM and the desired orientation
r
. It should be noted that in the case of the regulation
problem we have q
r
= const. However, for the trajec-
tory tracking problem, q
r
(t) is a vector function which
depends explicitly on time. In the second case, q
r
(t)
denotes a reference trajectory, generated by a reference
kinematic model with an operational constraint (60) as
follows:
q
r
(t) = S
q
r
(t)
r
(t) , (64)
where S () is dened by (16), and
r
(t) =
[ v
rx
(t)
r
(t) ]
T
denotes the reference velocity vec-
tor. All reference signals and their derivatives are assumed
to be bounded for all times:
r
(t) ,
r
(t) , q
r
(t) , q
r
(t) L
. (65)
The control objective is formulated as a practical stabiliza-
tion of the position and the orientation of the robot consid-
ered in (Morin and Samson, 2003) in the sense that
lim
t
q (t) , (66)
where denotes an arbitrary small positive constant.
3.3. Kinematic Transformation
In this section we introduce a kinematic transformation
which will be used later on in designing a control law.
Calculating a time derivative of (63), we obtain the fol-
lowing kinematic error equation:
q = q q
r
. (67)
Using (14) and (64), we get
q = S (q) S (q
r
)
r
. (68)
Taking into account (62), we reformulate (68) as follows:
q = g
0
+g
1
(q) v
x
+g
2
(q) , (69)
where v
x
and are control inputs, g
0
is a drift of the
system, g
1
(q) and g
2
(q) are vector eld generators:
g
0
(q
r
) = S (q
r
)
r
, (70)
g
1
(q) =
cos
sin
0
, (71)
g
2
(q) =
x
0
sin
x
0
cos
1
. (72)
From (70) it is clear that the drift is caused by the refer-
ence kinematics signals and for
r
= 0 (i.e., when the
regulation problem is considered) the system has no drift.
Furthermore, the system expressed by (69) is underactu-
ated since dim() = 2 < dim( q) = 3.
In order to build a kinematic controller based on
(Dixon et al., 2001), (68) is transformed into a form which
is similar to the nonholonomic integrator considered in
(Brockett, 1983):
w = u
T
J
T
z +f, (73)
z = u, (74)
Modeling and control of a 4-wheel skid-steering mobile robot
485
where w and z = [ z
1
z
2
]
T
denote auxiliary vari-
ables, u is an input signal and f denotes the drift, while
J is the following skew-symmetric matrix:
J =
0 1
1 0
. (75)
It should be noted that the systems described by (68),
(73) and (74) are rst-order systems (see Murray and Sas-
try, 1993). It is possible to nd the following global dif-
feomorsm that preserves the origin:
Z =
w z
1
z
2
T
= P
q. (76)
The variables w and z can be interpreted as a new aux-
iliary state vector of the system (68) described in a three-
dimensional space.
To develop the transformation matrix P(,
), the
regulation problem is considered rst, i.e., q
r
(t) =
const. Then (73) can be rewritten as
w = z
2
u
1
z
1
u
2
. (77)
Based on (De Luca and Oriolo, 1995), the following
change of coordinates is proposed:
z
1
=
, (78)
z
2
=
X cos +
Y sin . (79)
Observe that both of the new variables have a nice geo-
metric interpretation: z
1
is the orientation error and |z
2
|
denotes the length of projection of the vector [
X
Y ]
T
onto the direction determined by the actual orientation
(see Fig. 9).
R
q
r
q
~
X
~
Y
q
~
Xcos
z
2
R'
controlled robot
reference robot
q
~
Ysin
Fig. 9. Geometrical interpretation of the z2 variable.
Taking the time derivative of (78) and (79), we can
write
z
1
=
, (80)
z
2
=
d
dt
X cos +
Y sin
. (81)
Next, using (74), (80) and (81) in (77), it follows that
w =
X cos +
Y sin
d
dt
X cos +
Y sin
(82)
or
w =
d
dt
X cos +
Y sin
+ 2
X cos +
Y sin
. (83)
Therefore the variable w can be expressed as
w =
X cos +
Y sin
+ 2
(t)
X (t) cos (t)+
Y (t) sin (t)
dt. (84)
To calculate the integral in (84), it is convenient to con-
sider the expression
d
dt
X sin
Y cos
X cos +
Y sin
X sin
Y cos . (85)
Using the error kinematics given by (68) and assuming
that v
rx
= 0 and
r
= 0, we see (note that it is just
Eqn. (13) in the case of regulation) that
X sin
Y cos = x
0
. (86)
Then (85) can be rewritten as
d
dt
X sin
Y cos x
0
X cos +
Y sin
X cos +
Y sin
.
(87)
Finally, according to (84), the variable w has the fol-
lowing form:
w =
X cos +
Y sin
+ 2
X sin
Y cos x
0
. (88)
K. Kozowski and D. Pazderski
486
Next, we calculate the term f which appears in (73). To
this end, the trajectory tracking case is considered. Taking
again the time derivative of (88), we conclude that
w =
X cos +
Y sin
X sin
Y cos
X cos
Y sin
+ 2
X cos +
Y sin
+ 2
X sin
Y cos
2x
0
. (89)
Using (68), (78) and (79) in (89), we have
w =
z
2
z
1
z
2
+ 2
z
2
+ 2
x
0
v
rx
sin z
1
x
0
r
cos z
1
2x
0
+ 2x
0
r
=
z
2
+
r
z
2
2
r
z
2
+ 2
r
z
2
z
1
z
2
+ 2 (x
0
r
v
rx
sin z
1
x
0
r
cos z
1
)
=
z
2
z
1
z
2
+ 2
r
z
2
+ 2 (x
0
r
v
rx
sin z
1
x
0
r
cos z
1
)
= z
1
z
2
z
1
z
2
+ 2z
2
r
+ 2 (x
0
r
v
rx
sin z
1
x
0
r
cos z
1
) . (90)
Next, substituting (74) into Eqn. (90) results in
w = u
1
z
2
z
1
u
2
+ 2 (z
2
r
+x
0
r
v
rx
sin z
1
x
0
r
cos z
1
)
= u
1
z
2
z
1
u
2
+ 2 [v
rx
sin z
1
+
r
(x
0
+z
2
x
0
cos z
1
)], (91)
and therefore
f = 2
v
rx
sin z
1
+
r
(x
0
+z
2
x
0
cos z
1
)
. (92)
Summarizing, the matrix P in (76), which
transforms (68) into (73)(74), can be written as
P
cos +2 sin
sin 2 cos 2x
0
0 0 1
cos sin 0
.
(93)
One can easily check that this matrix is nonsingular.
The velocity transformation can be obtained
from (74) and (80)(81) as follows:
u = T
1
r
v
rx
cos z
1
x
0
r
sin z
1
, (94)
where
T
1
=
0 1
1 l
or T =
l 1
1 0
(95)
and l =
X sin
Y cos is an auxiliary variable that
has the meaning of a distance. Based on (94), the velocity
vector can be expressed as
= Tu +, (96)
where
=
v
rx
cos z
1
+
r
(x
0
sin z
1
+l)
(97)
is an auxiliary velocity vector which is nonzero only for
the trajectory tracking problem when the reference veloc-
ity vector
r
= 0.
3.4. Kinematic Control Law
In this section a kinematic control structure based on
(Dixon et al., 2001) which solves a unied tracking and
regulation problem is proposed.
The control law has the following form:
u = u
a
k
2
z, (98)
where u
a
, which introduces a time-varying feedback to
overcome Brocketts obstruction (see Brockett, 1983), is
dened as
u
a
=
k
1
w +f
2
d
Jz
d
+
1
z
d
. (99)
From (99) it is clear that the signal u
a
is modulated by an
auxiliary signal z
d
generated by the tunable oscillator de-
scribed by the following linear non-stationary differential
equation:
z
d
=
d
z
d
+
k
1
w +f
2
d
+w
1
Jz
d
, (100)
where z
d
= [ z
d1
z
d2
]
T
,
1
and
d
are auxiliary
terms dened as
1
= k
2
+
d
+w
k
1
w +f
2
d
, (101)
d
=
0
exp (
1
t) +
1
, (102)
while k
1
, k
2
,
0
,
1
and
1
are positive constant design
parameters.
It is easy to show that the envelope of z
d
(t) is
determined by the scalar function
d
. In order to prove it,
Modeling and control of a 4-wheel skid-steering mobile robot
487
we calculate the time derivative of the quadratic norm of
the vector z
d
(t) and next use (100) to obtain
d
dt
z
T
d
z
d
= 2
d
z
T
d
z
d
. (103)
The solution of (103) can be written as
z
d
(t)
T
z
d
(t) = z
d
(0)
T
z
d
(0) =
2
d
(t) . (104)
Assuming that z
d
(0)
T
z
d
(0) =
2
d
(0), the envelope of
z
d
(t) is described by
t 0 z
d
(t) =
d
(t) . (105)
Theorem 1. Provided that the reference trajectory is se-
lected to be bounded for all times t > 0 (see (65)) and
assuming that the kinematic model satises the constraint
given by (60), the kinematic control law given by (98)
(102) ensures that the position and orientation errors de-
ned by (63) are globally uniformly ultimately bounded as
follows:
q
0
exp (
1
t) +
2
1
, (106)
where
1
can be made arbitrarily small, and
0
,
1
and
2
are some positive constants.
A detailed proof of exponential stability to a small
neighborhood of the equilibrium point is given by (Dixon
et al., 2001) and is based on the Lyapunov stability the-
ory. The proposed Lyapunov function candidate has the
following form:
V
1
(w, z) =
1
2
w
2
+
1
2
z
T
z, (107)
where z = z
d
z is an auxiliary error signal.
The derivation of differential equation errors govern-
ing w and z for the closed-loop kinematic controller can
be found in (Dixon et al., 2001). Using it, we get
V
1
(w, z) = k
1
w
2
k
2
z
T
z. (108)
Since all signals of the controlled system are bounded
(Dixon et al., 2001), it can be proved that the errors w
and z are exponentially driven to zero. This means that
the signal z tends to an oscillator signal z
d
whose norm
approaches the constant
1
(c.f. (102)).
Remark 1. The parameters
0
,
1
and
1
play a
very important role in the controller tuning process.
Since (105) is satised and lim
t
z (t) = z
d
(t), the
scalar function
d
(t) allows us to inuence all transient
states. In this way,
d
(t) can be seen as a function used
for motion planning. It is essential if the initial error is
quite high and the vehicle has velocity limitations. A sim-
ilar meaning is attributed to the relation between the os-
cillator signals z
d1
and z
d2
, which determine the phase
condition. According to (105), it is convenient to intro-
duce the following parametrization:
z
d
(0) =
d
(0)
cos
sin
, (109)
where (, ].
3.5. Dynamic Control Law
In this section an extension of the presented kinematic
control law is developed by considering a dynamic model
of the SSMR. It is motivated by the desire to improve
the robustness of the control design. In this case, using
a method which relies on linearizing the dynamic equa-
tions is not possible because of unknown lateral skidding
forces. Instead, a controller which is robust to the dynamic
unmodelled disturbances is designed. Since all kinematic
signals are time differentiable, it is possible to incorporate
dynamical properties using a Lyapunov analysis and the
backstepping technique.
First, to facilitate the subsequent development and
analysis, the dynamic equation (46) is transformed by sub-
stituting every occurrence of , by u, u, respectively.
Next, multiplying (46) from the right by T
T
, we get
M u +
Cu +
R =
B, (110)
where
M=T
T
MT,
C=T
T
CT +
M
T
R=T
T
C+
M
+
R
B=T
T
B.
(111)
Remark 2. Based on the Rayleigh-Ritz theorem (Dixon
et al., 2003) and using the fact that
M is a symmetric
and positive denite matrix, the following inequality can
be written:
1
m
1
(w, z)
T
T
M
1
1
m
2
(w, z)
T
, (112)
where R
2
, m
1
(w, z) and m
2
(w, z) are positive
scalar functions dependent on the actual tracking errors
which denote the actual minimum and maximum eigen-
values of
M.
Since the transformed velocity signal u(t) is no
longer a control input, a desired velocity signal, denoted
by u
d
(t), is designed based on (98) as follows:
u
d
= u
a
k
2
z. (113)
K. Kozowski and D. Pazderski
488
Because the dynamic model (110) can be expressed
in terms of u
d
(t) and then linearly parametrized, we see
that
M u
d
+
Cu
d
+
R = Y
d
(u
d
, u
d
, q, ,
r
) , (114)
where
=
m I
s
m
l
m
T
(115)
is a vector of dynamical parameters and
Y
d
(u
d
, u
d
, q, ,
r
) =
y
d11
y
d21
y
d31
y
d41
y
d12
y
d22
y
d32
y
d42
(116)
denotes a known regression matrix which is a function of
the desired transformed velocity and acceleration. To sim-
plify the control law, it is assumed that the friction coef-
cients are the same for each wheel, i.e.,
li
=
l
and
si
=
s
.
It is clear that since the dynamical parameters of the
SSMRare not precisely determined, the actual vector is
uncertain. Dening the difference between this parameter
vector and the parameter vector
0
that denotes the best-
guess estimate for the unknown parameters in (115), we
deduce that
=
0
, (117)
where
0
=
m
0
I
0
s0
m
0
t0
m
0
T
. (118)
Assuming that
is bounded it is possible to nd a coef-
cient which fulls the following inequality:
. (119)
To develop a control law on the dynamic level, a new ve-
locity signal error is dened (Dixon et al., 2001; Mazur,
2001; Kozowski and Majchrzak, 2002; Kozowski and
Pazderski, 2003):
u = u
d
u. (120)
The differential equations governing the transformed
errors w and z for the closed-loop system have the fol-
lowing form:
w = k
1
w +u
T
a
J z + u
T
Jz, (121)
z = k
2
z +wJu
a
+ u. (122)
A detailed derivation of the closed-loop error system can
be found in (Dixon et al., 2001).
For stability analysis, the following Lyapunov func-
tion candidate is proposed:
V
2
(w, z, u) =
1
2
w
2
+
1
2
z
T
z +
1
2
u
T
M u. (123)
Taking the time derivative of V
2
yields
V
2
(w, z, u) = w w+ z
T
z+ u
T
M
u+
1
2
u
T
M u. (124)
Calculating the term
M
u from (110) and using (121),
(122) and then (108) in (124), we conclude that
V
2
(w, z, u)
=
V
1
(w, z) + u
T
wJz + z +
M u
d
+
Cu +
B +
1
2
M u
. (125)
It is easy to prove that
M =
C +
C
T
. Using this re-
lationship and adding and subtracting the term
1
2
u
T
C u
to the right-hand side of (125), the following equation is
obtained:
V
2
(w, z, u)
= k
1
w
2
k
2
z
T
z
+ u
T
wJz+ z+
M u
d
+
Cu
d
+
+
1
2
u
T
C
T
u. (126)
Since
C
T
C
T
u = 0. (127)
Using (127), the time derivative of the Lyapunov function
can be rewritten as
V
2
(w, z, u)
= k
1
w
2
k
2
z
T
z
+ u
T
wJz+ z+
M u
d
+
Cu
d
+
. (128)
Now, making use of (114) in (128) results in
V
2
(w, z, u) = k
1
w
2
k
2
z
T
z
+ u
T
wJz + z +Y
d
. (129)
To achieve robustness to the parametric uncertainty
B
1
(wJz + z +Y
d
0
+
a
+k
3
u) . (130)
According to (Spong, 1992; Dixon et al., 2001), the term
a
is dened as
a
= Y
d
2
Y
T
d
u
Y
T
d
u
+
2
, (131)
where
2
is a positive constant scalar which can be set up
as arbitrarily small.
Modeling and control of a 4-wheel skid-steering mobile robot
489
Remark 3. It is clear that the function
a
in (131) is
always time differentiable if so is Y
T
d
u. This property
is different from the typical robust control term used in
(Spong, 1992) and allows us to limit the chattering of the
control signal. It is an important property because it offers
a possibility to use a classical backstepping approach.
Using (130) and (117) in (129), we have
V
2
(w, z, u)
= k
1
w
2
k
2
z
T
z u
T
k
3
u
+
Y
T
d
u
2
Y
T
d
u
Y
T
d
u
+
2
. (132)
After some simple calculations, we can prove the follow-
ing inequality:
V
2
(w, z, u) k
1
w
2
k
2
z
T
z k
3
u
T
u
+
Y
T
d
u
Y
T
d
u
+
2
. (133)
Since the last term in (133) is bounded,
0
Y
T
d
u
Y
T
d
u
+
2
2
, (134)
we nally get
V
2
(w, z, u) k
1
w
2
k
2
z
T
z u
T
k
3
u +
2
. (135)
3.6. Control Law on the Motor Level
In this section the control law considering the drive model
which was presented in Section 2.3 is developed.
Calculating i
a
from (58) and then taking its time
derivative, we get
d
dt
i
a
= (2k
i
n)
1
. (136)
Next, using (136) in (59), we obtain
u
va
= L
a
(k
i
n)
1
+ 2R
a
i
a
+ 2k
e
n
w
. (137)
Rearranging the terms in (137), we have
= L
1
a
k
i
n(u
va
2R
a
i
a
2k
e
n
w
) . (138)
Here it is assumed that the voltage is the control signal of
the drive system. Therefore, based on (130), the following
desired torque signal
d
is designed:
d
=
B
1
(wJz + z +Y
d
0
+
a
+k
3
u) , (139)
where
a
is dened by (131).
The next step of the backstepping procedure consists
in dening an error torque signal (see Kozowski and Maj-
chrzak, 2002; Kozowski and Pazderski, 2003) as follows:
=
d
, (140)
where denotes the actual torque signal. To determine
the voltage control law on the motor level, the following
Lyapunov function candidate is proposed:
V
3
(w, z, u, ) =
1
2
w
2
+
1
2
z
T
z +
1
2
u
T
M u +
1
2
T
= V
2
+
1
2
T
. (141)
Calculating its time derivative and using (125), (140)
and (141), we get
V
3
(w, z, u)
=
V
1
(w, z)
+ u
T
wJz + z +
M u
d
+
Cu
d
+
B
d
+ u
T
B +
T
. (142)
In order to design the control voltage u
va
, it is imposed
that the following inequality is satised:
u
T
B +
T
0. (143)
Next, using (138) in (143), we get
u
T
B
+
T
d
L
1
a
k
i
n(u
va
2R
a
i
a
2k
e
n
w
)
0.
(144)
Based on (144), the following control lawon the volt-
age level is proposed:
u
va
= L
a
(k
i
n)
1
d
+k
4
+
B
T
u
+R
a
i
a
+k
e
n
w
,
(145)
where k
4
is an adjustable positive coefcient.
Using (145) in (141), we obtain
V
3
(w, z, u, ) =
V
2
(w, z, u) k
4
T
. (146)
After the substitution of (135) in (146), the following in-
equality can be obtained:
V
3
(w, z, u) k
1
w
2
k
2
z
T
zk
3
u
T
uk
4
T
+
2
.
(147)
K. Kozowski and D. Pazderski
490
Now choose the parameter k
3
high enough such that
t > 0 k
3
max {k
1
, k
2
, k
4
}
1
m
2
, (148)
where m
2
is an upper bound of the function m
2
(w, z)
which appears in (112). We have
k
min
k
1
k
min
w
2
+
k
2
k
min
z
T
z+
k
3
k
min
u
T
u+
k
4
k
min
T
k
min
w
2
+ z
T
z+ u
T
M u+
T
, (149)
where k
min
= min {k
1
, k
2
, k
4
}. Next, combining (141)
and (147) gives
V
3
(w, z, u, ) V
3
(w, z, u, ) +
2
, (150)
where = 2 min {k
1
, k
2
, k
4
}. Since all signals in the
controller and the vehicle model are bounded (it is proved
by Dixon et al., 2001; Kozowski and Majchrzak, 2002),
we have
V
3
L
. Consequently,
V
3
(w, z, u, )
V
3
(0, 0, 0, 0) exp(t) +
2
1 exp (t)
.
(151)
Using the fact that the transformation matrix P is always
invertible, the following result was proved:
Theorem 2. Assuming that the desired trajectory is se-
lected to be bounded (cf. (65)) for all times t 0 and
the conditions (60), (119) are fullled, the proposed con-
trol law given by (98)(102), (139) and (145) ensures the
position and orientation tracking error to be globally uni-
formly ultimately bounded as follows:
q
1
exp (
1
t) +
2
2
+
3
exp (
2
t) +
4
1
,
(152)
where
1
,
2
,
1
,
2
,
3
and
4
are positive constants.
4. Simulation Results
To validate the performance of the developed control law,
simulation results using the Matlab/Simulink environment
are presented. The model of the SSMR is based on a real
construction of a small experimental mobile robot consist-
ing of two MiniTracker-3 robots designed by Jedwabny et
al. (2004). The friction surface is characterized by the
functions
s
(X, Y ) and
t
(X, Y ) describing the fric-
tion coefcients. The values of the friction coefcients
are related to the actual position of the COM of the robot
(see Fig. 10). All parameters of the model and the default
parameters of the controller are collected in Table 1.
2
0
2
2
0
2
0.2
0.4
0.6
0.8
1
X [m]
Y [m]
l
(a)
2
0
2
2
0
2
0
0.05
0.1
0.15
0.2
X [m]
Y [m]
s
(b)
Fig. 10. Friction coefcients: (a)
l
(X, Y ), (b) s (X, Y ).
Table 1. Model and controller parameters.
Kinematic a = b = 39 [mm], c = 34 [mm], r = 26.5 [mm]
Dynamic m = 1 [kg], I = 0.0036 [kg m
2
]
Motors La = 0.22 [mH], Ra = 3.9 [], ke = 8.52
mVs
rad
,
ki = 8.55
mNm
A
d
(0)=1
d
(0)=1.25
d
(0)=1.5
d
(0)=2
d
(0)=2.5
d
(0)=3
d
(0)=4
(b)
0 1 2 3 4 5
0.2
0.1
0
0.1
0.2
0.3
time [s]
R
,
L
[
N
m
]
L
(c)
0 1 2 3 4 5
0.2
0.1
0
0.1
0.2
0.3
time [s]
R
,
L
[
N
m
]
L
(d)
Fig. 11. Examination of the controller with respect to z
d
(0): (a) Performed path with respect to , (b) Performed path
with respect to
d
(0), (c) Torque signal for
d
(0) = 2.5, and (d) Torque signal for
d
(0) = 1.
Therefore, the initial value z
d
(0) can be tuned to obtain
the best regulation performance from an energetic point
of view, which results in the minimization of the number
of changes in the direction movement. From Fig. 11(b)
it can be seen that the initial value of
d
(0) should not
be too low, since it demands high values of control sig-
nals (cf. (98)(100)). The limitation of the control signal
results in signal chattering with a high frequency and, as
a consequence, the regulation goal may not be reached
(for example, see the path for
d
(0) = 1 presented in
Fig. 11(b) and the torque signal for
d
(0) = 1 and
d
(0) = 2.5 in Figs. 11(c) and 11(d)). It is not sensi-
ble to force the controller to reduce the regulation error
too fast by assuming a high value of
1
.
Second, a full dynamic model with motors is exam-
ined. The following parameters of the controller have
been changed with respect to the default settings: k
1
=
0.5,
1
= 0.3,
d
(0) = 2, = 7/12. In Fig. 12(a)
the path and a series of postures of the robot at every 1 [s]
of the simulation process are presented. From Fig. 12(b)
it can be seen that the initial regulation error is highly re-
duced. The steady-state position and orientation errors are
bounded as follows:
for t > 25 [s] :
X
< 1 [mm],
X
r
[
m
]
,
Y
Y
r
[
m
]
,
r
[
r
a
d
] XX
r
YY
r
r
(b)
2
0
2
2
0
2
0
10
20
30
z
1
, z
d1
z
2
, z
d2
t
i
m
e
[
s
]
z
1
, z
2
z
d1
, z
d2
(c)
0 5 10 15 20 25 30
15
10
5
0
5
10
15
u
v
a
R
,
u
v
a
L
[
V
]
time[s]
u
vaR
u
vaL
(d)
Fig. 12. Regulation case for q(0) =
0 1 0
T
: (a) Performed path, (b) Regulation errors,
(c) Auxiliary error and oscillator signal, and (d) Voltage signal.
The results of the next simulation are obtained for
q
r
= [ 0 0 0 ]
T
, q (0) = [ 0 1 ]
T
, k
1
= 1,
1
= 0.5,
d
(0) = 3.2, = . In Figs. 13(a)(d),
the path, regulation errors, auxiliary signals and voltage
signals are shown. The regulation errors are bounded as
follows:
for t > 25 [s] :
X
< 10 [mm],
< 1 [mm]
and
1
= 0.3,
d
(0) = 1.7, = /12. The reference trajec-
tory is as follows:
X
r
(t) =
1
1 + 0.2t
cos 0.2t 1
[m],
Y
r
(t) =
1
1 + 0.2t
sin 0.2t [m],
while
r
(t) is calculated by the reference model (64).
The steady-state tracking errors are bounded as follows:
for t > 30 [s] :
X
< 5 [mm],
< 4 [mm]
and
X
r
[
m
]
,
Y
Y
r
[
m
]
,
r
[
r
a
d
]
XX
r
YY
r
r
(b)
5
0
5
2
0
2
0
20
40
60
z
1
, z
d1
z
2
, z
d2
t
i
m
e
[
s
]
z
1
, z
2
z
d1
, z
d2
(c)
0 10 20 30 40 50 60
15
10
5
0
5
10
15
u
v
a
R
,
u
v
a
L
[
V
]
time[s]
u
vaR
u
vaL
(d)
Fig. 13. Regulation case for q(0) =
0 1
T
: (a) Performed path, (b) Regulation errors,
(c) Auxiliary error and oscillator signal, and (d) Voltage signal.
In the next simulation experiment for the trajectory
tracking problem the following reference trajectory was
assumed:
X
r
(t) = [(1 + 0.2 sin 0.9t) cos 0.15t 1] [m], (153)
Y
r
(t) = (1 + 0.2 sin 0.9t) sin 0.15t [m]. (154)
The parameters of the controller different from their de-
fault values are k
3
= 10, k
4
= 10,
1
= 0.3,
d
(0) = 1.5,
= 2/3. In this simulation experiment the following
steady-state errors are recorded (cf. Fig. 15(b)):
for t > 20 [s] :
X
< 12 [mm],
< 11 [mm]
and
X
r
[
m
]
,
Y
Y
r
[
m
]
,
r
[
r
a
d
]
XX
r
YY
r
r
(b)
0 10 20 30 40 50 60
2
1
0
1
2
time [s]
d
x
/
d
t
[
m
/
s
]
,
d
/
d
t
[
r
a
d
/
s
]
dx/dt
d/dt
dx
r
/dt
d
r
/dt
(c)
0 10 20 30 40 50 60
15
10
5
0
5
10
15
U
a
R
,
U
a
L
[
V
]
time[s]
U
aR
U
aR
(d)
0 10 20 30 40 50 60
0
0.2
0.4
0.6
0.8
time [s]
l
,
s
(e)
Fig. 14. Trajectory tracking case for q(0) =
0.5 0.5 /2
T
: (a) Performed path, (b) Tracking errors,
(c) Linear and angular velocities, (d) Voltage signal, and (e) Friction coefcients.
Modeling and control of a 4-wheel skid-steering mobile robot
495
2.5 2 1.5 1 0.5 0 0.5
1.5
1
0.5
0
0.5
1
1.5
X [m]
Y
[
m
]
q(t)
q
r
(t)
q(0)
q
r
(0)
(a)
0 5 10 15 20 25 30
1.5
1
0.5
0
0.5
time [s]
X
X
r
[
m
]
,
Y
Y
r
[
m
]
,
r
[
r
a
d
]
XX
r
YY
r
r
(b)
0 5 10 15 20 25 30
2
1.5
1
0.5
0
0.5
1
1.5
time [s]
d
x
/
d
t
[
m
/
s
]
,
d
/
d
t
[
r
a
d
/
s
]
dx/dt
d/dt
dx
r
/dt
d
r
/dt
(c)
0 5 10 15 20 25 30
15
10
5
0
5
10
15
u
v
a
R
,
u
v
a
L
[
V
]
time[s]
u
vaR
u
vaL
(d)
0 5 10 15 20 25 30
0
0.2
0.4
0.6
0.8
time [s]
l
,
s
(e)
Fig. 15. Trajectory tracking case q(0) =
1 0 /4
T
: (a) Performed path, (b) Tracking errors,
(c) Linear and angular velocities, (d) Voltage signal, and (e) Friction coefcients.
K. Kozowski and D. Pazderski
496
a possibility to obtain practical stabilization in trajectory
tracking and regulation problems. It was proved that the
overall controller stabilizes the system asymptotically to
certain bounds of the position and orientation tracking er-
rors. The obtained convergence is exponential. In contrast
to the previous work done by Caracciolo et al. (1999), the
presented approach is characterized by better robustness
to dynamic parameters uncertainty. Theoretical delibera-
tions are illustrated by discussion how to tune the param-
eters of the controller.
Future work is devoted to the extension of this ap-
proach to other classes of nonholonomic systems which
have the size of the state vector greater than three (e.g., a
typical car drive kinematic model).
References
Brockett R.W. (1983): Asymptotic stability and feedback sta-
bilization, In: Differential Geometric Control Theory
(R.W. Brockett, R.S. Milman and H.J. Susmann, Eds.).
Boston: Birkhuser, pp. 181191.
Caracciolo L., De Luca A. and Iannitti S. (1999): Trajectory
tracking control of a four-wheel differentially driven mo-
bile robot. IEEE Int. Conf. Robotics and Automation,
Detroit, MI, pp. 26322638.
Campion G., Bastin G. and DAndrea-Novel B. (1996): Struc-
tural properties and classication of kinematic and dy-
namic models of wheeled mobile robots. IEEE Trans.
Robot. Automat., Vol. 12, No. 1, pp. 4762.
Dixon W.E., Dawson D.M., Zergeroglu E. and Behal A. (2001):
Nonlinear Control of Wheeled Mobile Robots. London:
Springer.
Dixon W.E., Behal A., Dawson D.M. and Nagarkatti S.P. (2003):
Nonlinear Control of Engineering Systems, A Lyapunov-
Based Approach. Boston: Birkhuser.
Gutowski R. (1971): Analytic Mechanics. Warsaw: Polish
Scientic Publishers, (in Polish).
De Luca A. and Oriolo G. (1995): Modeling and control of
nonholonomic mechanical systems, In: Kinematics and
Dynamics of Multi-Body Systems (J. Angeles and A.
Kecskemthy, Eds.). CISM Lecture Notes, No. 360,
Wien: Springer, pp. 277342.
Mazur A. (2001): Control algorithms for the kinematics and the
dynamics of mobile manipulators: A comparative study.
Arch. Contr. Sci., Vol. 11, No. 34, pp. 223244.
Morin P. and Samson C. (2003): Practical stabilization of drift-
less systems on Lie groups: The transverse function ap-
proach. IEEE Trans. Automat. Contr., Vol. 48, No. 9,
pp. 14961508.
Morin P. and Samson C. (2002): Feedback control of nonholo-
nomic wheeled vehicles: A survey. Arch. Contr. Sci.,
Vol. 12, No. 48, pp. 736.
Murray R.M. and Sastry S. (1993): Nonholonomic motion plan-
ning: Steering using sinusoids. IEEE Trans. Automat.
Contr., Vol. 38, No. 5, pp. 700716.
Jedwabny T., Kieczewski M., Kowalski M., awniczak M.,
Michalski M., Michaek M., Pazderski D. and Kozowski
K. (2004): Nonholonomic mobile robot MiniTracker re-
search and educational purposes. Proc. 35-th Int. Symp.
Robotics, Paris, France, pp. 254259.
Kozowski K. and Majchrzak J. (2002): A new control algo-
rithm for a nonholonomic mobile robot. Arch. Contr.
Sci., Vol. 12, No. 48, pp. 3769.
Kozowski K. and Pazderski D. (2003): Control of a four-wheel
vehicle using kinematic oscillator. Proc. 6-th Int. Conf.
Climbing and Walking Robots and their Supporting Tech-
nologies, CLAWAR 2003, Catania, Italy, pp. 135146.
Pacejka H.B. (2002): Tyre and Vehicle Dynamics. Oxford:
Butterworth-Heinemann.
Pazderski D., Kozowski K. and Dixon W.E. (2004): Tracking
and regulation control of a skid steering vehicle. Amer.
Nuclear Soci, 10-th Int. Topical Meeting Robotics and Re-
mote Systems, Gainesville, Florida, USA, pp. 369376.
Spong M.W. (1992): On the robust control of robot manipu-
lators. IEEE Trans. Automat. Contr., Vol. 37, No. 11,
pp. 17821786.