L
u
_
N
T
L
q
+H
T
p = ,
where: p = L/ q is the unconstrained generalized momentum of the system; =
N
T
S(q) is the m-dimensional vector of constrained generalized forces; S(q) is a full-
rank n m matrix mapping the m-dimensional vector of external inputs [33] into
the vector of unconstrained generalized forces; N is an orthogonal complement of the
constraint matrix A that obeys eq. (2); L is the system Lagrangian; u is the vector of
m-independent generalized velocities of the system; and
L = L|
qu
, i.e.,
L is obtained
by substituting q into L using eq. (2), and is termed the constrained Lagrangian of
the system. Note that
L as well as matrix N are, in general, functions of all n
components of q. The coecient H
T
of the unconstrained generalized momentum p
in (3) is the transpose of the holonomy matrix, as introduced in [21], i.e.,
H
(Nu)
q
N
N . (4)
2.3. Quasiholonomic Systems. If the third term of the left-hand side of eq. (3)
vanishes, the system of Lagrange equations (3) simplies to
(5)
d
dt
_
L
u
_
N
T
L
q
= .
Proof version: June 2, 2005 3
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
It is now a simple matter to realize that a kinematically constrained mechanical
system M admits the simple representation (5) under two cases:
Case 1: H = O
nm
Case 2: H = O
nm
, but H
T
p = 0
m
.
where 0
m
is the m-dimensional zero vector. If, moreover, the vector of independent
generalized velocities u is chosen so that it is a total time-derivative u = s, then an
even simpler system of Lagranges equations of M can be written in the form
(6)
d
dt
_
L
s
_
L
s
= ,
which are formally identical to the Lagrange equations of an m-dof holonomic system;
we call this the virtual holonomic system of the given NH system [34].
Case 1 mentioned above leads to the integrability of the linear kinematic con-
straints, i.e., to the holonomy property of the corresponding mechanical system,
based on the Holonomy Theorem [21]:
Theorem 2.1 (Holonomy). Consider a mechanical system M and the holonomy
matrix dened in (4), the vector of independent generalized velocity u being the total
time-derivative of a m-dimensional vector s, i.e., u = s. Then, M is holonomic if
and only if its holonomy matrix vanishes.
For Case 2, we introduce the denition below [21]:
Denition 2.1. A system is quasiholonomic i H = O
nm
and H
T
p = 0
m
.
It is crucial to note that quasiholonomy is invariant with respect to changes of
independent generalized coordinates and independent generalized velocities [34], as
proven in [35]. A correct choice of variables q and u = s leading to QH is hence not
needed.
Quasiholonomic systems can be interpreted as nonholonomic system whose gener-
alized inertia force stemming from the kinematic contraints disappears. Moreover,
each entry of the holonomy matrix has the units of a generalized velocity [35].
3. Robot Description
Depicted in Fig. 1 is a sketch of Quasimoro (QUASIholonomic MObile RObot),
the rst prototype of a new family of 2-WMRs. This family is endowed with quasi-
holonomy, which is achieved by locating the mass center of the robot on the (vertical)
plane equidistant from the wheel midplanes. Moreover, in order to cope with insta-
bility, the mass center of the IB is placed below the above-mentioned line. Besides
endowing the robot with quasiholonomy, its architecture makes Quasimoro capable
of turning in place without colliding with a person or an object nearby. Moreover,
the use of hemispherical wheels, instead of conventional ones, will render the robot
immune to tilting, with apparent benets in applications on uneven terrain [36].
The main tasks of the control system are: i) positioning and orienting the pay-
load, supported by the IB, on a at surface (primary task); and ii) suppressing the
Proof version: June 2, 2005 4
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
Figure 1. Simplied model of Quasimoro
oscillations of the IB (secondary task). Now, while apparently it is possible to ac-
complish the primary task using only the wheel motors, accomplishing the secondary
task needs an in-depth controllability analysis.
4. Mathematical Model
The mathematical model of Quasimoro is formulated in the framework of the La-
grange formalism based on the holonomy matrix [35]. We assume that: i) the robot
undergoes motion on a horizontal planar surface, which we will call B; ii) during mo-
tion, the robot wheels are always in contact with B, and undergo pure-rolling motion
over B; and iii) the robot is free from dissipative forces.
With reference to Fig. 1, A is the axis passing through the centers of the wheels,
while A
a
,
= (
1
)
where = r/l,
a
= [
1
2
]
T
, P(
1
,
2
) = (r/2)[ f f ] and is the robot orienta-
tion angle, i.e., the angle between vectors i and e. Integrating the second relation in
eqs. (7) we obtain: = (
2
1
) where we have assumed = 0 when
1
=
2
.
Proof version: June 2, 2005 5
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
Further, we dene q = [ c
T
1
2
3
]
T
as the vector of generalized coordinates.
Dening 1
k
as the k k identity matrix, the rst of eqs. (7) can be rewritten as
A q = 0
3
, where A = [ 1
3
P 0
3
] is the 3 6 constraint matrix. Looking at the
number of kinematic constraints and of generalized velocities we can conclude that the
robot has 6 3 = 3 independent generalized velocities. If we dene the independent
generalized velocity vector as u =
_
T
the orthogonal complement of A
is readily derived as
N =
_
_
P 0
3
1
2
0
2
0
T
2
1
_
_
.
The holonomy matrix can be readily computed as [20]:
H =
(Nu)
q
N
N = r
_
2
e
1
e 0
3
0
3
0
3
0
3
_
,
i.e. Quasimoro is a nonholonomic robot (H = O), as one should have expected.
Without considering the constant terms, the Lagrangian of the system is given by
L = T V = m
w
c
2
+
m
w
r
2
4
(1 +
2
)(
1
)
2
+
m
w
r
2
4
(
2
1
+
2
2
) +
1
2
J
2
2
3
+
1
2
m
3
( c +d
3
h
(
1
)d sin
3
e)
2
c +m
3
dg cos
3
+
1
2
(J
3
sin
3
2
+J
1
cos
3
2
)(
1
)
2
2
.
where d is the distance between C and C
3
; g is the gravity acceleration; m
w
is the
mass of each augmented wheel, i.e. the wheel along with the shaft which actuates
it; m
3
is the augmented mass of the IB, i.e. taking into account the payload; J
2
is
the moment of inertia of the body about the A
axis;
1
; J
1
is the moment
of inertia of the IB about D; and J
3
is the moment of inertia of the body about the
axis passing through the unit vector h. Hence, the generalized momentum, obtained
computing L/ q and then substituting q into the latter using eq. (2), takes the
form:
p =
L
q
qu
=
_
_
MP
a
+m
3
d(
3
h
sin
3
e)
1/2(m
w
r
2
)
1
(H +m
3
2
d
2
sin
2
3
)
1/2(m
w
r
2
)
2
+ (H +m
3
2
d
2
sin
2
3
)
K cos
3
+
+J
2
3
_
_
,
where H 1/2[m
w
r
2
(1 +
2
) + 2
2
(J
1
cos
3
2
+ J
3
sin
3
2
)], J
2
= m
3
d
2
+ J
2
is the
moment of inertia of the IB about A, M = 2m
w
+m
3
is the overall mass of the robot,
K m
3
rd/2, and
1
+
2
. The nonholonomy term of the equations of motion
is given by
H
T
p = m
3
r
d sin
3
_
1
0
,
which becomes negligible w.r.t. the other terms of (3) when the robot controller
guarantees that
3
= 0 by keeping vector n vertical and upward. If this is indeed the
Proof version: June 2, 2005 6
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
case, as we shall assume here, then the robot is QH, its mathematical model thus
reducing to (5). Any deviations from quasiholonomy will thus give rise to inertia
forces stemming from the constraints, that can be regarded as disturbances, which
will be rejected by the controller. However, for the sake of completeness we will
keep the complete model (3), where = [
1
2
]
T
, {
i
}
2
i=1
is the array of torques
transmitted to the wheels by the actuators (wheel motors), and
L =
3
4
m
w
r
2
(
2
1
+
2
2
) +
1
2
(
m
w
r
2
2
+J
1
cos
2
3
+J
3
sin
2
3
)(
1
)
2
2
+
r
2
8
m
3
(
1
+
2
)
2
+m
3
rd
2
3
(
1
+
2
) cos
3
+
1
2
(d
2
m
3
+J
2
)
2
3
c
+m
3
dg cos
3
+
m
3
2
2
(
1
)
2
d
2
sin
2
3
.
Thus, (5) becomes
(8) I()
+C(,
)
+g() = .
where [
T
0 ]
T
, [
1
2
3
]
T
, while I() is the generalized inertia
matrix, given by
I() =
_
_
B +C
(
3
) A C
(
3
) K cos
3
A C
(
3
) B +C
(
3
) K cos
3
K cos
3
K cos
3
J
2
_
_
with A [m
3
r
2
2m
w
r
2
2
]/4, B [6m
w
r
2
+ m
3
r
2
+ 2m
w
r
2
2
]/4 and C
(
3
)
2
(m
3
d
2
sin
2
3
+ J
1
cos
2
3
+J
3
sin
2
3
). Moreover, the 3-dimensional vector of qua-
dratic terms of inertia forces is given by
C(,
)
=
_
_
(m
3
d/2)r sin
3
2
3
G
(m
3
d/2)r sin
3
2
3
+G
m
3
d
2
d sin
3
cos
3
_
_
,
where G (m
3
dr
2
sin
3
+2m
3
d
2
3
sin
3
cos
3
+2 sin
3
cos
3
(J
3
J
1
)
3
), and g()=[0 0 m
3
g(sin
3
)d]
T
representing the gravity term.
5. Controllability Analysis
Controllability is a key issue in the design and control of underactuated robotic
mechanical systems, since it provides the minimum number of actuators needed to
control the system as well as their type and location. The robot at hand is underac-
tuated by design, since it has two control inputs, namely
1
and
2
, against a number
of three independent generalized velocities. One challenge to face here is the con-
trol of the motion of the IB, which will tend to rotate about the wheel axle as the
wheels are actuated. We prove below that it is possible to completely control the ro-
bot using only the wheel motors, while tracking a desired trajectory. To this end, we
show that every linearization of the robot mathematical model around an equilibrium
Proof version: June 2, 2005 7
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
state veries the Kalman rank condition for controllability (KRCC) [37]. Therefore,
Quasimoro is small-time locally controllable (STLC) from every equilibrium state.
Moreover, applying the Lie algebra rank condition (LARC) [33] we show that Quasi-
moro is also locally accessible (LA) from any state other then those of equilibrium.
For details on the results from controllability of nonlinear systems recalled in this
section, the reader is referred to [3840].
The IB oscillations are kinematically decoupled from the robot motion on B, the
IB free being to rotate about the wheel axis by means of rolling bearings. Therefore,
the kinematic model, described by eq. (7), is not sucient to completely control
the robot without increasing the number of actuators. The robot conguration is
described in the joint space, the state vector thus being dened as
(9) x = [
1
2
3
3
]
T
,
In this light, the mathematical model of eq. (8), can be rewritten in the state-space
form [41] x(t) = k(x(t), (t)), with
(10) = [
1
2
]
T
, k(x, ) =
_
k
1
. . . k
6
T
,
where
k
1
= x
4
, k
2
= x
5
, k
3
= x
6
,
k
4
=
_
3
i=0
Q
4i
cos
i
x
3
+D
4
(
1
+
2
)
_
/C
4
k
5
= k
4
[(
1
+
2
+Q
50
)/C
5
]
k
6
= [D(
1
+
2
) +Q]/C,
while x
i
, for i = 1, 2 . . . 6, is the i-th component of x. Note that the foregoing
dierential equations are well-dened in the state space, since C
4
= 0, C
5
= 0 and
T = 0 x
3
.
5.0.1. Controllability from Equilibrium States. The set of equilibrium states X
e
of
the foregoing dynamics model is obtained by setting k(x, ) = 0
6
, with = 0
2
[42].
Hence,
X
e
={x = [ x
1
x
2
x
3
x
4
x
5
x
6
]
T
IR
6
|
x
3
= k, k ZZ and x
i
= 0 i 4}. (11)
From the structure of the vector eld k(x, u) it is apparent that every equilibrium
state is equivalent to the others for controllability test purposes. Linearizing around
a generic equilibrium state x
0
= [ x
1
x
2
x
3
0 0 0 ]
T
, we obtain x = Ax + B,
Proof version: June 2, 2005 8
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
with
1
A =
k
x
x=x
0
=
_
O
32
0
3
1
3
O
32
a O
33
_
and (12)
B =
k
x=x
0
=
_
0
3
0
3
b
1
b
2
_
, (13)
where
a =
_
_
dgm
3
K/F
dgm
3
K/F
(1)
k
(A +B)m
3
gd/F
_
_
,
b
1
=
_
_
[(1)
k
(K
2
J
1
2
J
2
BJ
2
) +TK]/E
[(1)
k
(AJ
2
J
1
2
J
2
K
2
) +TK]/E
((1)
k
K +A +B)/F
_
_
,
b
2
=
_
_
[(1)
k
(AJ
2
J
1
2
J
2
K
2
) +TK]/E
[(1)
k
(K
2
J
1
2
J
2
BJ
2
) +TK]/E
((1)
k
K +A +B)/F
_
_
,
F = (2K
2
(A + B)J
2
), E = [F(B A) + 4J
1
2
K
2
2(A + B)J
2
J
1
2
] and T =
A 2
2
J
1
B. The 6 12 controllability matrix C = [ B AB A
2
B A
3
B
A
4
B A
5
B ], is of rank 6, and hence, the linearized system is controllable according
to the KRCC. A well-known theorem in control theory states that if the linearization
of a nonlinear system at an equilibrium state is controllable, then the nonlinear system
(8) is small-time locally controllable from the equilibrium state [38]. Hence,
Result 5.1. The mathematical model of Quasimoro is small-time locally controllable.
5.0.2. Controllability from Non-Equilibrium States. The verication of the KRCC
for the linearized system is not a conclusive result because the controllability of the
system has not been investigated for every point of the state-space. Using the KRCC
to test the controllability from the non-equilibrium points we have that C is of rank
6, and hence, the linearized system is controllable according to the KRCC. Hence,
Result 5.2. The mathematical model of Quasimoro is controllable according to the
KRCC from the non-equilibrium points.
Although a general sucient condition for a nonlinear system with drift to be
STLC exists [43], STLC is impossible from nonequilibrium states. Therefore, we
limit ourselves to analyzing the non-equilibrium states in terms of local accessibility,
which is the second-most-used structural characterization of a nonlinear system with
regard to the natural form of controllability [33]. To this end, the mathematical
model of the robot, described by eq. (8), can be rewritten in the ane state-space
form
(14) x(t) = f (x(t)) +
2
i=1
g
i
(x(t))u
i
(t),
1
A is not to be confused with the constraint matrix A of Section IV.
Proof version: June 2, 2005 9
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
with x and dened as in (9) and (10), and [41]
f =
_
x
4
x
5
x
6
P
1
/S
1
P
2
/S
2
P
3
/S
3
T
, (15)
g
1
=
_
0 0 0 A
1
/C
1
A
2
/C
2
A
3
/C
3
T
, (16)
g
2
=
_
0 0 0 A
2
/C
2
A
1
/C
1
A
3
/C
3
T
. (17)
The distribution dened by the vector elds f , g
1
, and g
2
is
A
= span{f , g
1
, g
2
}.
Now we follow the procedure described in [33] in order to compute the involutive
closure of
A
, that will be indicated with
A
. The rst step is to compute the
dimension of the rst distribution
1
, dened as
(18)
1
=
A
= span{f , g
1
, g
2
}.
By looking at (15)(17) we infer that dim(
1
) = 3 x X
e
, where X
e
is the set of
equilibrium states dened in (11). The next step consists in computing
2
, namely,
2
=
1
+ [
1
,
1
] = span{f , g
1
, g
2
, [f , g
1
], [f , g
2
], [g
1
, g
2
]},
where, in the last simplication, we have applied the skew-commutativity prop-
erty. Computing the Lie brackets, we obtain that [g
1
, g
2
] = 0
6
, whence
2
=
span{f , g
1
, g
2
, [f , g
1
], [f , g
2
]}, dim(
2
) = 5 x X
e
. The distribution
3
=
2
+
[
1
,
2
] reduces to
3
= span{f , g
1
, g
2
, [f , g
1
], [f , g
2
], [g
1
, [f , g
1
]]} by applying the
skew-commutativity property, the Jacobi identity, and knowing that [g
1
, [f , g
1
]] =
[g
2
, [f , g
2
]] = [g
1
, [f , g
2
]] = [g
2
, [f , g
1
]] and that
[f , [f , g
1
]] = [f , [f , g
2
]] span{f , g
1
, g
2
, [f , g
1
], [f , g
2
], [g
1
, [f , g
1
]]}.
We thus obtain dim(
3
) = 6 x X
e
,
A
=
3
= span{f , g
1
, g
2
, [f , g
1
], [f , g
2
], [g
1
, [f , g
1
]]}, whence
Result 5.3. The mathematical model of Quasimoro is locally accessible also from
any state dierent from equilibrium.
6. Numerical Results on Robot Performance
As pointed out in Section IV, to render the robot quasiholonomic, its mass center
should lie on the vertical line passing through point C. However, due to payload vari-
tions, the position of the mass center of the augmented system (robot plus payload)
will change. Moreover, during the robot motion the IB will rotate about A [20], thus
changing the position of the foregoing mass center. In order to investigate on the
possible performance decay of the robot under payload variation and during motion,
a series of numerical analyses and simulations was conducted [44]. The results of
this study are plotted in Figs. 24, where
m
and n
m
are the motor torque and the
motor speed, respectively, while v c f and
are the driving velocity and the
steering velocity, respectively, and e
3
[
r
a
d
]
I,II
0 1 2 3 4 5
0
0.5
1
1.5
2
2.5
t[s]
v
[
m
/
s
]
I,II
(a) (b)
Figure 2. Dynamic response under dierent loading conditions: (a)
3
vs. t; (b) v vs. t.
0 5 10 15
-2
-1
0
1
2
x 10
-6
t[s]
e
[
r
a
d
/
s
]
I,III
-0.1 0 0.1 0.2 0.3
0
100
200
300
400
500
600
m
[Nm]
n
m
[
r
p
m
]
I
III
0 2 4 6 8
0
0.5
1
1.5
2
2.5
t[s]
v
[
m
/
s
]
I
III
(a) (b) (c)
Figure 3. Unmodeled dynamics uncertainty: (a) e
2
K + 2J
3
2
K 2J
1
2
K) cos x
3
3
+(J
2
J
1
2
+J
2
J
3
2
+J
2
m
3
d
2
2
) cos x
3
2
+(2m
3
d
2
2
K +AK 2J
3
2
K KB) cos x
3
J
2
m
3
d
2
2
J
2
J
3
2
+ (A B)J
2
Q
43
= 4J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+2J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
4K
2
sin x
3
2
x
6
x
5
J
1
+ 2m
2
3
d
3
sin x
3
2
Kg
+2J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
+4J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
4K
2
m
b
2
d
2
sin x
3
x
4
x
6
+ 4K
2
sin x
3
2
x
6
x
5
J
3
d
+2J
3
2
sin x
3
Km
3
gd 2J
1
2
Km
3
gd sin x
3
+4K
2
sin x
3
2
x
6
x
4
J
1
+ 4K
2
m
3
2
d
2
sin x
3
x
5
x
6
2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
4K
2
sin x
3
2
x
6
x
4
J
3
+4m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
Q
42
= m
3
2
d sin x
3
x
2
5
rK
2
2J
1
2
J
2
K sin x
3
x
2
6
2J
3
4
sin x
3
J
2
m
3
dx
4
x
5
r + 2J
1
4
J
2
m
3
d sin x
3
x
4
x
5
r
+2J
3
2
sin x
3
J
2
Kx
2
6
K
2
m
3
2
d sin x
3
x
2
4
r
+m
2
3
4
d
3
sin x
3
x
2
5
rJ
2
m
3
4
d sin x
3
x
2
5
rJ
2
J
1
+2m
3
d
2
sin x
3
2
J
2
Kx
2
6
2m
2
3
d
3
sin x
3
4
J
2
x
4
x
5
r
+mb
2
d
3
sin x
3
4
J
2
x
2
4
r J
1
4
J
2
m
3
d sin x
3
x
2
4
r
+m
3
4
d sin x
3
x
2
5
rJ
2
J
3
+J
3
4
sin x
3
J
2
m
3
dx
2
4
r
Proof version: June 2, 2005 13
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
Q
41
= K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
B
2m
2
3
d
3
sin x
3
2
Kg + 2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
+ 2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
4J
1
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
2J
1
2
sin x
3
Km
3
gd + 2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
4m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
B +AKm
3
gd sin x
3
AK
2
sin x
3
cos x
3
(J
3
+m
3
d
2
J
1
)x
2
4
AK
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
Km
3
bgd sin x
3
B + 2m
3
2
d
2
sin x
3
x
4
x
6
J
2
B
2K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
B
2 sin x
3
2
x
6
x
4
J
1
J
2
B + 2 sin x
3
2
x
6
x
4
J
3
J
2
B
+2AJ
2
sin x
3
2
x
6
x
4
J
3
2AJ
2
sin x
3
2
x
6
x
4
J
1
2AJ
2
m
3
2
d
2
sin x
3
x
5
x
6
+2AK
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+2 sin x
3
2
x
6
x
5
J
1
J
2
B 2 sin x
3
2
x
6
x
5
J
3
J
2
B
+2AJ
2
m
3
2
d
2
sin x
3
x
4
x
6
2AJ
2
sin x
3
2
x
6
x
5
J
3
2m
3
2
d
2
sin x
3
x
5
x
6
J
2
B + 2AJ
2
sin x
3
2
x
6
x
5
J
1
Q
40
= AJ
2
m
3
2
d sin x
3
x
2
4
r +m
3
2
d sin x
3
x
4
x
5
rJ
2
B
m
3
2
d sin x
3
x
2
5
rJ
2
B m
3
4
d sin x
3
x
2
5
rJ
2
J
3
+2J
3
4
sin x
3
J
2
m
3
dx
4
x
5
r +AJ
2
K sin x
3
x
2
6
+2m
2
3
d
3
sin x
3
4
J
2
x
4
x
5
r 2J
3
2
sin x
3
J
2
Kx
2
6
J
3
4
sin x
3
J
2
m
3
dx
2
4
r m
2
3
4
d
3
sin x
3
x
2
5
rJ
2
2m
3
d
2
sin x
3
2
J
2
Kx
2
6
m
2
3
d
3
sin x
3
4
J
2
x
2
4
r
K sin x
3
x
2
6
J
2
B AJ
2
m
3
2
d sin x
3
x
4
x
5
r
C
4
= (2J
1
2
+ 2m
3
d
2
2
+ 2J
3
2
) cos(x
3
)
2
+A B
2m
b
d
2
2
2J
3
2
)(2K
2
cos x
3
2
+ (A +B)J
2
Q
50
= 4 sin x
3
cos x
3
2
x
6
x
5
J
3
+ 4 sin x
3
cos x
3
2
x
6
x
4
J
3
+m
3
2
d sin x
3
x
2
4
r d sin x
3
m
3
2
x
2
5
r
+4 sin x
3
cos x
3
2
x
6
x
5
J
1
+ 4m
3
2
d
2
sin x
3
x
4
x
6
cos x
3
4 sin x
3
cos x
3
2
x
6
x
4
J
1
4m
3
2
d
2
sin x
3
x
5
x
6
cos x
3
C
5
= A 2J
1
2
cos x
3
2
B 2m
3
d
2
2
2J
3
2
+2 cos x
3
2
m
3
d
2
2
+ 2 cos x
3
2
J
3
2
Proof version: June 2, 2005 14
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
D = (B +K cos x
3
+A)
Q = (dm
b
g sin x
3
+ 2 sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
)A
+(dm
3
g sin x
3
+ 2 sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
)B
+d sin x
3
m
3
K cos x
3
2
x
2
4
r
+d sin x
3
m
3
K cos x
3
2
x
2
5
r
2d sin x
3
m
3
K cos x
3
2
x
4
x
5
r
+2K
2
cos x
3
sin(x3)x
2
6
C = 2K
2
cos x
3
2
+ (A +B)J
2
Ane state-space form.
P
i
3
j=0
P
ij
cos x
3
j
with, i = 1, 2, 3,
P
13
2J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
4K
2
sin x
3
2
x
6
x
4
J
3
2J
1
2
Km
3
gd sin x
3
+2J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
4J
1
4
K sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
+ 4 J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
+ 4K
2
sin x
3
2
x
6
x
5
J
3
4K
2
sin x
3
2
x
6
x
5
J
1
+2J
3
2
sin x
3
Km
3
gd 4K
2
m
3
2
d
2
sin x
3
x
4
x
6
+4K
2
m
3
2
d
2
sin x
3
x
5
x
6
+ 2m
2
3
d
3
sin x
3
2
Kg
2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
+4K
2
sin x
3
2
x
6
x
4
J
1
+ 4m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
Proof version: June 2, 2005 15
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
P
12
m
2
3
d
3
sin x
3
4
J
2
x
2
4
r
+m
3
4
d sin x
3
x
2
5
rJ
2
J
3
+ 2J
3
2
sin x
3
J
2
Kx
2
6
J
1
4
J
2
m
3
d sin x
3
x
2
4
r +m
2
3
4
d
3
sin x
3
x
2
5
rJ
2
+2m
3
d
2
sin x
3
2
J
2
Kx
2
6
m
3
4
d sin x
3
x
2
5
rJ
2
J
1
+J
3
4
sin x
3
J
2
m
3
dx
2
4
r K
2
m
3
2
d sin x
3
x
2
4
r
2J
1
2
J
2
K sin x
3
x
2
6
2J
3
4
sin x
3
J
2
m
3
dx
4
x
5
r
+2J
1
4
J
2
m
3
d sin x
3
x
4
x
5
r +m
3
2
d sin x
3
x
2
5
rK
2
2m
2
3
d
3
sin x
3
4
J
2
x
4
x
5
r,
P
11
2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
+ 2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
4J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+2m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
2J
3
2
sin x
3
Km
3
gd 2m
2
3
d
3
sin x
3
2
Kg
+2J
3
4
sin x
3
K cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
4m
3
d
2
sin x
3
4
K cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
+K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
B
+K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
B
+AKm
3
gd sin x
3
Km
3
gd sin x
3
B
AK
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
AK
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
2K
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
B
2 sin x
3
2
x
6
x
4
J
1
J
3
B + 2 sin x
3
2
x
6
x
4
J
3
J
2
B
+2m
3
2
d
2
sin x
3
x
4
x
6
J
2
B + 2AJ
2
sin x
3
2
x
6
x
5
J
1
+2 sin x
3
2
x
6
x
5
J
1
J
2
B 2 sin x
3
2
x
6
x
5
J
3
J
2
B
+2AJ
2
m
3
2
d
2
sin x
3
x
4
x
6
2AJ
2
sin x
3
2
x
6
x
5
J
3
+2AJ
2
sin x
3
2
x
6
x
4
J
3
2m
3
2
d
2
sin x
3
x
5
x
6
J
2
B
2AJ
2
sin x
3
2
x
6
x
4
J
1
2AJ
2
m
3
2
d
2
sin x
3
x
5
x
6
+2AK
2
sin x
3
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
,
Proof version: June 2, 2005 16
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
P
10
m
3
2
d sin x
3
x
4
x
5
rJ
2
B
+2m
2
3
d
3
sin x
3
4
J
2
x
4
x
5
r m
3
2
d sin x
3
x
2
5
rJ
2
B
m
3
4
d sin x
3
x
2
5
rJ
2
J
3
m
2
3
d
3
sin x
3
4
J
2
x
2
4
r
J
3
4
sin x
3
J
2
m
3
dx
2
4
r mb
2
4
d
3
sin x
3
x
2
5
rJ
2
+AJ
2
m
3
2
d sin x
3
x
2
4
r +AJ
2
K sin x
3
x
2
6
AJ
2
m
3
2
d sin x
3
x
4
x
5
r + 2J
3
4
sin x
3
J
2
m
3
dx
4
x
5
r
K sin x
3
x
2
6
J
2
B 2m
3
d
2
sin x
3
2
J
2
Kx
2
6
2J
3
2
sin x
3
J
2
Kx
2
6
,
S
1
S
2
((2J
1
2
+ 2m
3
d
2
2
+2J
3
2
) cos x
3
2
+A B 2m
3
d
2
2
2J
3
2
)(2K
2
cos x
3
2
+BJ
2
+AJ
2
a),
P
2
(2K
2
cos x
3
2
+BJ
2
+AJ
2
)(4 cos x
3
x
6
x
4
J
3
4 cos x
3
x
6
x
4
J
1
+ 4 cos x
3
m
3
d
2
x
4
x
6
dm
3
x
2
5
r
4 cos x
3
x
6
x
5
J
3
4 cos x
3
m
3
d
2
x
5
x
6
+ 4 cos x
3
x
6
x
5
J
1
+m
3
dx
2
4
r)
2
sin x
3
,
P
3
(d sin x
3
m
3
K
2
x
2
4
r +d sin x
3
m
3
K
2
x
2
5
r
2d sin x
3
m
3
K
2
x
4
x
5
r + 2K
2
sin x
3
x
2
6
) cos x
3
+dAm
3
g sin x
3
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
B
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
5
A +d sin x
3
Bm
3
g
+2 sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
A
+2 sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
5
x
4
B
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
B
sin x
3
2
cos x
3
(m
3
d
2
+J
3
J
1
)x
2
4
A,
S
3
2K
2
cos x
3
2
+BJ
2
+AJ
2
,
A
i
3
j=0
A
ij
cos x
3
j
with, i = 1, 2, 3,
A
13
A
23
2J
1
2
K + 2m
3
d
2
2
K + 2J
3
2
K,
A
12
J
2
J
1
2
+K
2
+J
2
J
3
2
+J
2
m
3
d
2
2
,
A
22
A
12
K
2
,
A
11
A
21
KB 2J
3
2
K 2m
3
d
2
2
K +AK,
A
10
(BJ
2
J
2
J
3
2
) J
2
m
3
d
2
2
,
A
20
A
10
+ (A +B)J
2
,
Proof version: June 2, 2005 17
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
A
3
(K cos x
3
+B +A), C
1
C
2
((4J
1
2
K
2
4J
3
2
K
2
4m
3
d
2
2
K
2
) cos x
3
4
+(2m
3
d
2
2
AJ
2
2J
1
2
BJ
2
2AK
2
+ 2BK
2
+ 4J
3
2
K
2
+4m
3
d
2
2
K
2
2J
1
2
AJ
2
+ 2J
3
2
BJ
2
+ 2m
3
d
2
2
BJ
2
+2J
3
2
AJ
2
) cos x
3
2
2m
3
d
2
2
BJ
2
+A
2
J
2
B
2
J
2
2J
3
2
BJ
2
2J
3
2
AJ
2
2m
3
d
2
2
AJ
2
),
C
3
(BJ
2
+AJ
2
2K
2
cos(x3)
2
).
References
[1] Gyro-wheel car zooms along on giant tires at 116 mph, Modern Mechanix and Inventions,
vol. 14, p. 43, June 1935.
[2] S. Wood and N. Solomon, Gyrobot a robot warrior, October 2002. [Online]. Available
at: http://freespace.virgin.net/steve.wood4/index.htm
[3] A. Qaiyumi, Moebius, 1997. [Online]. Available at: http://mil.u.edu/aqaiyumi/projects
[4] D. DeGard and C. DeGard, PhotoBot : a phototropic mobile robot, May 1999. [Online].
Available at: http://www.seattlerobotics.org/encoder/jun99/degard
[5] P. H. Batavia and I. Nourbakhsh, Path planning for the Cye personal robot, in Proc.
IEEE/RSJ Intell. Robots Syst., vol. 1, 2000, pp. 1520.
[6] T. Willingham, Guide to building a RC robot, 2002. [Online]. Available at:
http://dc.cen.uiuc.edu/
[7] J. Borenstein and I. Ulrich, The GuideCane a computerized travel aid for the active guid-
ance of blind pedestrians, in Proc. IEEE Int. Conf. Robot. Automat., Albuquerque, New
Mexico, 1997.
[8] A. Drenner, I. Burt, T. Dahlin, B. Kratochvil, C. McMillen, B. Nelson, N. P. P. Rybski,
K. Stubbs, D. Waletzko, and K. Berk Yesin, Mobility enhancements to the Scout robot plat-
form, in Proc. IEEE Int. Conf. Robot. Automat., Washington D.C., 2002.
[9] P. M achler, Robot Positioning by Supervised and Unsupervised Odometry Correction.
Lausanne, Switzerland: Ph.D. Thesis, EPFL, 1998. [Online]. Available at: http:
//www.maechler.ch/philip/ep/pemex/
[10] C. Ballard, F. Ballard, and M. Ballard, Slugger and toe-crusher, 2000. [Online]. Available
at: http://www.coolrobots.com/robots/overkill.html
[11] Noetic Design, Inc., Lil PICcy, 2002. [Online]. Available at: http://www.noeticdesign.com/
robotics/lilpiccy.html
[12] D. Adams, ICAROS modular robotic platform. [Online]. Available at: http:
//www.doc.ic.ac.uk/dja/icarosoverview.htm
[13] D. P. Anderson, nBot balancing robot, 2002. [Online]. Available at: http://www.geology.
smu.edu/dpa-www/robo/nbot/index.html
[14] L. Barello, Gyrobot a balancing robotic platform, October 2002. [Online]. Available at:
http://www.barello.net/Robots/gyrobot/index.htm
[15] F. Grasser, A. DArrigo, S. Colombi, and A. C. Rufer, Joe: A mobile, inverted pendulum,
IEEE Trans. Ind. Electron., vol. 49, no. 1, pp. 107114, 2002.
[16] Segway LLC, Segway
TM
Human Transporter Data-Sheet. [Online]. Available at: http:
//www.segway.com/
[17] D. J. Kamen, R. R. Ambrogi, R. J. Duggan, D. J. Field, R. K. Heinzmann, B. Amsbury, and
C. C. Langenfeld, Personal mobility vehicles and methods, PCT/US00/15144, Patent, Oct.
26, 2000.
Proof version: June 2, 2005 18
Modeling and Controllability of Two-Wheeled Quasiholonomic Robots
[18] ATR Intelligent Robotics and Communication Laboratories, Robovie III, 2002. [Online].
Available at: http://www.irc.atr.co.jp/m-shiomi/Robovie/
[19] J. J. E. Slotine and W. Li, Applied Nonlinear Control. Englewood Clis, NJ: Prentice Hall,
1991.
[20] A. Salerno, S. Ostrovskaya, and J. Angeles, The dynamics of a novel rolling robotanalysis
and simulation, in Proc. IFToMM 11
th
World Congress in Mechanism & Machine Science,
Tianjin, China, April 2004.
[21] S. Ostrovskaya and J. Angeles, Nonholonomic systems revisited within the framework of an-
alytical mechanics, Applied Mechanics Reviews, vol. 51, no. 7, pp. 415433, 1998.
[22] A. M. Bloch, Nonholonomic Mechanics and Control. Springer, 2003, vol. 24, Interdisciplinary
Applied Mathematics Series.
[23] G. Liu and Z. Li, A unied geometric approach to modeling and control of constrained me-
chanical systems, IEEE Trans. Robot. Automat., vol. 18, no. 4, pp. 574587, 2002.
[24] A. D. Lewis, Simple mechanical control systems with constraints, IEEE Trans. Automat.
Contr., vol. 45, no. 8, pp. 14201436, 2000.
[25] J. Cortes Monforte, Geometric, Control and Numerical Aspects of Nonholonomic Systems.
New York, NY: Lecture Notes in Mathematics, 2002, vol. 1793.
[26] E. T. Whittaker, A Treatise on the Analytical Dynamics of Particles and Rigid Bodies. Cam-
bridge University Press, 1937.
[27] J. I. Neimark and N. Fufaev, Dynamics of Nonholonomic Systems. Providence, Rhode Island:
American Mathematical Society, 1972, translations of Mathematical Monographs, 33 (originally
in Russian, 1967).
[28] R. M. Rosenberg, Analytical Dynamics of Discrete Systems. Plenum Press, 1977.
[29] L. A. Pars, A Treatise on Analytical Dynamics. OX BOW Press, 1979.
[30] H. Goldstein, C. Poole, and J. Safko, Classical Mechanics. Addison Wesley, 2002.
[31] G. Maggi, De alcune nuove forme delle equazioni della dinamica applicabli ai sistemi
anolonomi, Atti Accad. Naz. Lincei Rend Cl. Fis. Mat. Nat., vol. 10, no. 5, pp. 287291,
1901, in Italian.
[32] G. H. Golub and C. F. Van Loan, Matrix Computations. Johns Hopkins University Press,
1996.
[33] A. De Luca and G. Oriolo, Modelling and control of nonholonomic mechanical systems, in
Kinematics and Dynamics of Multibody Systems. J. Angeles and A. Kecskemethy, (Eds.),
Springer-Verlag, Vienna, 1995.
[34] A. Salerno, S. Ostrovskaya, and J. Angeles, The development of quasiholonomic wheeled
robots, in Proc. IEEE Int. Conf. Robot. Automat., Washington D.C., 2002.
[35] S. Ostrovskaya, Dynamics of Quasiholonomic and Nonholonomic Recongurable Rolling Robots.
Montreal: Ph.D. Thesis, McGill University, 2001.
[36] D. S. Nasrallah, J. Angeles, and H. Michalska, Modelling of an anti-tilting outdoor mobile
robot, McGill Centre for Intelligent Machines, Tech. Rep. TR-CIM 05.03, February 2005.
[37] C. T. Chen, Linear System Theory and Design. New York: Oxford University Press, 1999.
[38] H. Nijmeijer and A. J. van der Schaft, Nonlinear Dynamical Control Systems. Berlin: Springer-
Verlag, 1990.
[39] A. Isidori, Nonlinear Control Systems. Berlin: Springer-Verlag, 1989.
[40] S. Sastry, Nonlinear Systems: Analysis, Stability, and Control. New York: Springer, 1999.
[41] A. Salerno and J. Angeles, On the nonlinear controllability of a quasiholonomic mobile robot,
in Proc. IEEE Int. Conf. Robot. Automat., Taipei, Taiwan, September 2003.
[42] H. K. Khalil, Nonlinear Systems. Upper Saddle River, NJ: Prentice Hall, 1996.
[43] H. J. Sussmann, A general theorem on local controllability, SIAM J. Control and Optimiza-
tion, vol. 25, no. 1, pp. 158194, January 1987.
[44] A. Salerno and J. Angeles, The control of semi-autonomous two-wheeled robots undergoing
large payload-variations, in Proc. IEEE Int. Conf. Robot. Automat., New Orleans, LA, 2004.
Proof version: June 2, 2005 19