Tracking control for an ellipsoidal submarine driven by

IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
339
Tracking Control for an Ellipsoidal Submarine
Driven by Kirchhoff’s Laws
Thomas Chambrion and Mario Sigalotti
Abstract—In this paper, we study the control of an ellipsoid
immersed in an infinite volume of ideal fluid. The dynamics of
the uncontrolled body are given by Kirchhoff’s laws. The control
system is underactuated: one control is an acceleration along an
axis of the ellipsoid and two are angular accelerations around the
other two axes. By adopting a backstepping viewpoint, we prove
that the position and the attitude of the solid can be forced to approximately follow any given path, using fast-oscillating controls.
Moreover, we prove that the controlled mechanical system (which
includes the impulses) is completely controllable in an arbitrary
small time.
Index Terms—Attitude control, hydrodynamics, position
control, underwater vehicle control.
Equations governing the motion of the solid in the fluid were
derived by Thomson et al. (see the book by Lamb [15] for
details). Due to the potential nature of the flow, the state of the
system is fully determined by a finite set of real variables. To
avoid the troublesome computation of the effects of pressure
on the solid, one considers the whole system (fluid + solid).
The classical momentum of this system is usually not defined
because of the infinite extent of the fluid. Nevertheless, one can
define a momentum-like quantity called the impulse that extends
the definition of the momentum. Denoting by (ω, v) the standard
(angular and linear) velocity of the ellipsoid with respect to a
body-fixed coordinate frame, the corresponding impulse (Π, P )
of the whole system can be expressed in the following way as
I. INTRODUCTION
HE CONTROL of autonomous unmanned underwater vehicles has gained an increasing interest in the recent past
years. Many problems concentrate on the control of very maneuverable robots. Such devices are easy to handle, but usually very slow. By comparison, relatively little is known about
the effective control of standard submarines, which are harder
to handle and much quicker. In this paper, we establish the
controllability of such a submarine driven by two directional
controls (turn left/right and turn up/down) and one velocity control (back/forward). In particular, we develop a tracking procedure of the following type: given any time-dependent, possibly
nonfeasible, evolution of both the position and the attitude of
the submarine, we determine algorithmically a family of fastoscillating controls whose corresponding trajectories converge
toward the target evolution as the frequency of the oscillation
increases.
T
A. Physical Context
We model a submarine by a neutrally buoyant ellipsoid immersed in an infinite volume (the entire space R3 ) of an inviscid
incompressible fluid in an irrotational motion. Assuming that the
ellipsoid is neutrally buoyant (that is, the center of mass of the
ellipsoid is equal to the one of the same volume of fluid) is
equivalent to neglecting the gravitational effects.
Manuscript received December 21, 2006; revised May 15, 2007 and June 14,
2007. Recommended by Associate Editor A. Astolfi.
The authors are with the Institut de Mathématiques Élie Cartan de Nancy
(IECN), l’Institut National de Recherche en Informatique et en Automatique
(INRIA), Universités de Nancy, F-54042 Vandœuvre-lès-Nancy Cedex, France
(e-mail: [email protected]; [email protected]).
Color versions of one or more of the figures in this paper are available online
at http://ieeexplore.ieee.org.
Digital Object Identifier 10.1109/TAC.2007.914958
Π
P
=M
ω
(1)
v
where the 6×6 symmetric matrix
M=
Je + Jf
D
Dt
Me + Mf
is decomposed in 3 × 3 blocks. Je is the usual inertia matrix of
the (possibly inhomogeneous) ellipsoid, Me is the 3 × 3 identity
matrix multiplied by the mass m of the ellipsoid, and Jf , Mf ,
and D are 3×3 matrices that account for the action of the fluid
on the solid. They depend on the solutions of some boundary
value problem associated with the Laplace equation, and are
independent of the mass distribution inside the ellipsoid. For
one vehicle alone in an infinite fluid, in a frame attached to the
solid, Jf , Mf , and D are constant because of the invariance of
the problem (see [15] for an explicit expression of their entries).
Moreover, since the vehicle is elliptic, all entries of D are null,
while both Jf and Mf are diagonal in the coordinate frame
whose axes are those of the ellipsoid.
In the sequel, we assume that the principal axes of inertia of
the vehicle coincide with the axes of the ellipsoid. (A physical
condition ensuring this is that the mass distribution of the submarine is symmetric with respect to at least two of the three
planes generated by pairs of axes of the ellipsoid.) The assumption ensures that, in the coordinate frame whose axes are those
of the ellipsoid, the matrices Je , and therefore, M are diagonal.
We denote the diagonal entries of Me + Mf and Je + Jf by
M1 , M2 , M3 and J1 , J2 , J3 , respectively. It is easy to check the
existence of an (inhomogeneous) ellipsoid for any arbitrarily
strictly positive prescribed sequence (M1 , M2 , M3 , J1 , J2 , J3 ).
As a consequence, we are considering here a six-parameter family of control systems.
0018-9286/$25.00 © 2008 IEEE
340
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
The dynamics of the system are governed by the Kirchhoff
equations
 dΠ

=Π×ω+P ×v+T,

dt
(2)
 dP

=P ×ω+F
dt
where × denotes the usual cross product in R3 , while T and F
denote, respectively, the external torque and the external force
applied to the body. To help the reader distinguish between
the different systems and subsystems considered throughout the
paper, we shall call “system (Π, P )” the control system (2).
The assumptions we make on T and F are that two coordinates of T and one of F are tuned by the controller, in the
following way:
 
 
u1
0
 
T =  u2  , F =  0  , u1 , u2 , u3 ∈ R. (3)
u3
0
The structure of T and F imposed earlier can be physically
interpreted as follows: one control (u3 ) is an acceleration along
the third axis of the ellipsoid and two (u1 and u2 ) are angular
accelerations around the other two axes.
In the coordinate frame in which Π and P are expressed, the
submarine is identified with an ellipsoid Σ ⊂ R3 . In a fixed
reference frame, the submarine fills at time t, the subset Σ(t) =
r(t) + A(t)Σ, where r and A are, respectively, the position and
the attitude of the submarine. The equations for r and A can be
written in terms of (ω, v) using the classical formulas
dA
= AS(ω),
dt
dr
= Av
dt
(4)
where S: R3 → SO(3) is the linear bijection that associates to
each vector x ∈ R3 the antisymmetric 3 × 3 matrix S(x) such
that x × y = S(x)y for any y in R3 . We will speak of “system
(A, Π, r, P )” to refer to the control system coupling (2) and (4).
B. Statement of the Main Results
The dynamics of (2), i.e., the control of the impulses of the
submarine (seen from the perspective of the solid), have been
thoroughly studied [2], [4], [5], [16], [18]. However, up to our
knowledge, less is known about the extended control system
(A, Π, r, P ) that describes the dynamics of the solid (states
and impulses). Let us mention, for instance, the optimal-control
results on a planar version of system (A, Π, r, P ) obtained in [9]
and [10]. The results presented here are more in the spirit of the
reconfiguration algorithms (for initial and final conditions at
velocity zero) proposed in [7] and the general tracking method
for trajectories of mechanical systems obtained in [8].
In the present paper, we improve the existing results by studying how to track a given, possibly nonfeasible, trajectory (Ā, r̄):
[0, T ] → SO(3) × R3 with an arbitrary small prescribed tolerance. More precisely, we define the state-trackability as follows.
Definition 1.1: We say that system (A, Π, r, P ) is statetrackable if, for every smooth trajectory (Ā, r̄) : [0, T ] →
SO(3) × R3 , for every Π0 , P0 ∈ R3 , and for every strictly
positive tolerance , there exists a measurable bounded control u = (u1 , u2 , u3 ) : [0, T ] → R3 such that the corresponding trajectory t → (A(t), Π(t), r(t), P (t)) with initial condition (A(0), Π(0), r(0), P (0)) = (Ā(0), Π0 , r̄(0), P0 ) verifies
the tracking condition |||Ā(t) − A(t)||| + ||r̄(t) − r(t)|| < for every time t in [0, T ].
Here, and in the following, · denotes the usual Euclidean
norm in R3 , |||.||| the induced norm on the space of 3 × 3 matrices, and the word smooth is used as a synonym for belonging
to the class C ∞ .
The main result of the paper is the following theorem.
Theorem 1.2: Let (J1 − J2 )2 + (M1 − M2 )2 = 0. Then, system (A, Π, r, P ) is state-trackable.
The proof of the theorem is constructive, proving the convergence toward the target trajectory (Ā, r̄) of a sequence of
feasible trajectories corresponding to fast-oscillating controls.
The algorithmic implementation of the argument is discussed
separately in Section VII-B. Clearly, as the target trajectory is
usually unfeasible, the practical cost of tracking tends to infinity
as the tolerance goes to zero. In applications, the actual tolerance
is determined by the frequency of oscillations that the actuator
can implement.
Theorem 1.2 clearly hints at the controllability of system
(A, Π, r, P ). We are going to discuss the controllability in the
following sense.
Definition 1.3: The system (A, Π, r, P ) is called exactly controllable if for every choice of an initial and a final condition
(A0 , Π0 , r0 , P0 ) and (Af , Πf , rf , Pf ), for every strictly positive time T , there exists a measurable bounded control u =
(u1 , u2 , u3 ) : [0, T ] → R3 steering system (A, Π, r, P ) from
(A0 , Π0 , r0 , P0 ) to (Af , Πf , rf , Pf ).
It can be worth remarking that no a priori causality relation can be established for general control systems between the
trackability and the exact controllability. On one hand, tracking
capabilities guarantee controllability just in the coordinates that
are actually tracked (A and r, in our case). On the other hand,
there is no reason why a control system that is exactly controllable should admit coordinate submanifolds on which tracking is
possible (think, for instance, at the system θ̇ = 1 + u2 , u ∈ R,
with θ ∈ S 1 = R/Z).
We will, therefore, be bound to exploit the explicit structure
of the system to prove the following result.
Theorem 1.4: System (A, Π, r, P ) is exactly controllable if
and only if (J1 − J2 )2 + (M1 − M2 )2 = 0.
C. Content of the Paper
The paper is organized as follows. In Section II, we recall
a continuous dependence result for nonautonomous ODEs that
plays a fundamental role in the later construction.
Section III develops the tracking construction in the case in
which J1 and J2 are different. Specific tracking algorithms for
planar and purely angular motions are developed in Section IV.
The case where J1 = J2 and M1 = M2 is discussed in
Section V. The arguments are very similar to those seen earlier
and proofs are, therefore, slightly sketchier. A proof of Theorem
1.4 is provided in Section VI.
CHAMBRION AND SIGALOTTI: TRACKING CONTROL FOR AN ELLIPSOIDAL SUBMARINE DRIVEN BY KIRCHHOFF’S LAWS
Finally, in Section VII, we show how the tracking procedure
can be applied in practice, and we illustrate by some examples
the features of the proposed approach.
II. REMINDER: CONTINUOUS DEPENDENCE OF SOLUTIONS
OF ODES ON PARAMETERS
We next recall a known result about the dependence on the
vector field of the solutions of nonautonomous ODEs.
Proposition 2.1 (Kurzweil and Vorel, 1957): Let Ω be an
open subset of Rm , m ≥ 1, and T be a positive real number.
Denote by V the set of nonautonomous vector fields defined
on Ω, seen as functions from [0, T ] × Ω to Rm , which are
Lebesgue-measurable with respect to t ∈ [0, T ] and smooth with
respect to x ∈ Ω. Consider a sequence Xn , contained in V,
which converges to a vector field X ∈ V in the sense
t
t
Xn (τ, x)dτ →
X(τ, x)dτ
(5)
0
0
as n → ∞ uniformly with respect to (t, x) ∈ [0, T ] × Ω. Assume, moreover, that there exists a Lebesgue-integrable function
ψ : [0, T ] → R such that Xn (t, x) ≤ ψ(t) for every (t, x) ∈
[0, T ] × Ω and every n ∈ N. Then, for every > 0 and every
x0 ∈ Ω, there exists N ∈ N such that, if the Caratheodory solution x(·) of ẋ(t) = X(t, x(t)) with the initial condition x(0) =
x0 is defined and contained in Ω on the whole interval [0, T ],
then, for every n ≥ N , the same is true for the Caratheodory
solution xn (·) of ẋn (t) = Xn (t, xn (t)) with the same initial
condition xn (0) = x0 , and moreover, xn (t) − x(t) < for
every t ∈ [0, T ].
The result stated earlier (in a more general version that allows
for much less regularity of the vector fields with respect to the
variable x) is contained in [14]. Continuity results based on
convergence of vector fields of the type (5) were first introduced
by Gihman [13] (see also [3]). The role of such a notion of
convergence in control theory is remarkably discussed by Liu
and Sussmann [17].
III. TRACKING VIA BACKSTEPPING: THE CASE J1 = J2
This section contains a detailed description of the tracking
procedure under the assumption that J1 and J2 are different,
i.e.,
γ=
1
1
−
= 0.
J2
J1
Π̇3 = γΠ1 Π2 + µ3 P1 P2
Ṗ1 =
P2 Π3
P3 Π2
−
J3
J2
(9)
P3 Π1
P1 Π3
−
J1
J3
(10)
Ṗ3 =
P1 Π2
P2 Π1
−
+ u3
J2
J1
(11)
1
1
−
,
M3
M2
µ1 =
µ2 =
1
1
−
,
M1
M3
1
1
−
.
M2
M1
µ3 =
The idea, borrowed from the well-known backstepping procedure, is to look at Π1 , Π2 , and P3 , which can be directly tuned
by the components of u, as control variables in the equations
for the remaining three variables Π3 , P1 , and P2 . The structure
of such equations and the role played in them by the fictitious
control (Π1 , Π2 , P3 ) are clearly affected by the vanishing of the
coefficient γ.
Lemma 3.1: Assume that γ = 0. Let T > 0, and fix a smooth
curve (Π̄, P̄ ) : [0, T ] → R6 . Then, there exists a sequence un
contained in L∞ ([0, T ], R3 ) such that the solutions (Πn , P n )
of (6)–(11) corresponding to un and with the initial condition
(Πn (0), P n (0)) = (Π̄(0), P̄ (0)) satisfy
n
Π1 (T ), Πn2 (T ), P3n (T ) → (Π̄1 (T ), Π̄2 (T ), P̄3 (T )) (12)
n
Π3 (t), P1n (t), P2n (t) → (Π̄3 (t), P̄1 (t), P̄2 (t))
(13)
t
t
n
Π1 (τ ), Πn2 (τ ), P3n (τ ) dτ →
(Π̄1 (τ ), Π̄2 (τ ), P̄3 (τ ))dτ
0
0
(14)
as n → ∞, the last two convergences being uniform with respect
to t in [0, T ]. Moreover, there exists ψ ∈ L1 ([0, T ], R) such that
(Πn (t), P n (t)) ≤ ψ(t) for every t ∈ [0, T ] and every n ∈ N.
Proof: First notice that the lemma is proved if we can show
that its conclusion holds for a (suitable) sequence of smooth
curves t → (Π̄(n ) (t), P̄ (n ) (t)) satisfying
(n )
Π̄ (0), P̄ (n ) (0) = (Π̄(0), P̄ (0))
and converging uniformly to t → (Π̄(t), P̄ (t)). Indeed, such
being the case,
t
t
(n )
(n )
(n )
Π̄1 (τ )dτ,
Π̄2 (τ )dτ, Π̄3 (t),
0
0
(n )
(n )
P̄1 (t), P̄2 (t),
→
(8)
Ṗ2 =
where
The technical role of such a hypothesis becomes evident by fully
expanding Kirchhoff’s equations as
1
1
Π̇1 =
−
(6)
Π2 Π3 + µ1 P2 P3 + u1
J3
J2
1
1
Π̇2 =
−
(7)
Π3 Π1 + µ2 P3 P1 + u2
J1
J3
341
t
t
0
(n )
P̄3 (τ )dτ
t
Π̄1 (τ )dτ,
0
Π̄2 (τ )dτ, Π̄3 (t),
0
t
P̄1 (t), P̄2 (t),
P̄3 (τ )dτ
0
as n tends to infinity, uniformly with respect to t ∈ [0, T ]. The
conclusion for (Π̄, P̄ ) follows from a simple diagonal procedure.
We are, therefore, free to assume that (Π̄, P̄ ) is defined up to a
small C 0 perturbation that preserves the initial condition.
Since Π1 , Π2 , and P3 are directly tuned by the control, we
are justified to write
Πn1 (t) = Π̄1 (t) + v1n (t)
(15)
342
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
Πn2 (t) = Π̄2 (t) + v2n (t)
(16)
P3n (t) = P̄3 (t) + v3n (t)
(17)
n
(v1n , v2n , v3n )
and to consider v =
as control functions. The
admissibility of the control functions un is equivalent to the
Lipschitz continuity of each v n . In what follows, v n will actually
be chosen in C ∞ ([0, T ], R3 ).
We look at (Πn3 , P1n , P2n ) as the solution of the Cauchy problem

 d (Π3 , P1 , P2 )T = Y (t, Π3 , P1 , P2 , v n (t))
dt
(18)

(Π3 (0), P1 (0), P2 (0)) = (Π̄3 (0), P̄1 (0), P̄2 (0))
where, for every v = (v1 , v2 , v3 ) in R3 ,
Y (t, Π3 , P1 , P2 , v)


γ(Π̄1 (t) + v1 )(Π̄2 (t) + v2 ) + µ3 P1 P2


(P̄3 (t) + v3 )(Π̄2 (t) + v2 ) 
 P2 Π3


−
=
 . (19)
J3
J2




(P̄3 (t) + v3 )(Π̄1 (t) + v1 ) P1 Π3
−
J1
J3
Let us rewrite Y in a favorable way. For every t ∈ [0, T ], define
J2
ϕ̄1 (t) = −J2 P̄˙ 1 (t) + P̄2 (t)Π̄3 (t) − Π̄2 (t)P̄3 (t)
J3
J1
ϕ̄2 (t) = J1 P̄˙ 2 (t) + P̄1 (t)Π̄3 (t) − Π̄1 (t)P̄3 (t)
J3
1˙
µ3
P̄1 (t)P̄2 (t) − Π̄1 (t)Π̄2 (t).
ϕ̄3 (t) = Π̄
3 (t) −
γ
γ
Then,

Y1 (t, Π3 , P1 , P2 , v)
(20)
(21)
(22)



Y (t, Π3 , P1 , P2 , v) =  Y2 (t, Π3 , P1 , P2 , v) 
Y3 (t, Π3 , P1 , P2 , v)
(23)
with
˙ + γ(v v − ϕ̄ ) + γ(Π̄ v + Π̄ v )
Y1 (t, Π3 , P1 , P2 , v) = Π̄
3
1 2
3
1 2
2 1
+ µ3 (P1 P2 − P̄1 P̄2 )
satisfies
n
Π3 (t), P1n (t), P2n (t) → (Π̄3 (t), P̄1 (t), P̄2 (t))
(25)
as n → ∞ uniformly with respect to t ∈ [0, T ].
Note that if the triple (ϕ1 , ϕ2 , ϕ3 ) belongs to the set
R3,+ = {(x, y, z) ∈ R3 | xyz > 0}
then, the system of algebraic equations
ϕ1 = v2 v3 ,
ϕ2 = v1 v3 ,
ϕ3 = v1 v2
has exactly two solutions
ϕ2 ϕ3
ϕ1 ϕ3
ϕ1 ϕ2
±
v (ϕ1 , ϕ2 , ϕ3 ) = ±
,
,
.
ϕ1
ϕ2
ϕ3
(26)
(27)
Assume that the curve described by ϕ̄ = (ϕ̄1 , ϕ̄2 , ϕ̄3 ) is contained in R3,+ . Let
v̄ ± (t) = v ± (ϕ̄(t)).
(28)
We look for v n in the form
v n (t) = αn (t)v̄ + (t) + (1 − αn (t))v̄ − (t)
(29)
with αn ∈ C ∞ ([0, T ], [0, 1]). Choose αn in such a way that
αn (0) =
1
= αn (T )
2
(30)
and
L({t ∈ [0, T ] | αn (t) ∈ (0, 1)}) → 0
(31)
as n → ∞, where L denotes the Lebesgue measure in R. By
imposing on αn (t) an oscillating behavior, with the frequency
tending to infinity as n does, and by distributing homogeneously
in [0, T ], the intervals on which αn (t) = 0 and those on which
αn (t) = 1, we can, in addition, assume that
t
1
n
α (τ ) −
dτ → 0
(32)
2
0
as n → ∞ uniformly with respect to t ∈ [0, T ].
From (32), we immediately deduce (24). The initial and final
conditions on v n are ensured by (30), while, according to (26)
and (31),
t
(v2n (τ )v3n (τ ), v1n (τ )v3n (τ ), v1n (τ )v2n (τ ))dτ →
1
1
Y2 (t, Π3 , P1 , P2 , v) = P̄˙ 1 − (v2 v3 − ϕ̄1) − (Π̄2 v3 + P̄3 v2)
0
J2
J2
t
1
(ϕ̄1 (τ ), ϕ̄2 (τ ), ϕ̄3 (τ ))dτ
+ (P2 Π3 − P̄2 Π̄3 )
J3
0
1
1
as n → ∞ uniformly with respect to t ∈ [0, T ]. Therefore,
Y3 (t, Π3 , P1 , P2 , v) = P̄˙ 2 + (v1 v3 − ϕ̄2 ) + (Π̄1 v3 + P̄3 v1)
t
t
J1
J1
n
Y
(τ,
Π
,
P
,
P
,
v
(τ
))dτ
→
X(τ, Π3 , P1 , P2 )dτ
3
1
2
1
0
0
− (P1 Π3 − P̄1 Π̄3 ).
J3
as n → ∞ uniformly with respect to (t, Π3 , P1 , P2 ) ∈ [0, T ] ×
n
∞
The goal is to find a sequence v in C ([0, T ], R3 ) such that Ω, where Ω is a compact neighborhood of the target trajectory
v n (0) = 0 = v n (T )
(Π̄3 , P̄1 , P̄2 ) and
t


˙ (t) + µ (P P − P̄ (t)P̄ (t))
Π̄
3
3
1 2
1
2
v n (τ )dτ → 0
(24)

 ˙
0
1

X(t, Π3 , P1 , P2 ) = 
 P̄ 1 (t) + J 3 (P2 Π3 − P̄2 (t)Π̄3 (t))  .
as n → ∞ uniformly with respect to t ∈ [0, T ], and such that
P̄˙ 2 (t) − J13 (P1 Π3 − P̄1 (t)Π̄3 (t))
the sequence of solutions t → (Πn3 (t), P1n (t), P2n (t)) of (18)
CHAMBRION AND SIGALOTTI: TRACKING CONTROL FOR AN ELLIPSOIDAL SUBMARINE DRIVEN BY KIRCHHOFF’S LAWS
343
Proposition 2.1 implies that (Πn3 , P1n , P2n ) converges uniformly
to the solution of
d
(Π3 , P1 , P2 )T = X(t, Π3 , P1 , P2 )
dt
with the initial condition
Let, for every j = 1, 2, 3, Dj be the 3 × 3 diagonal matrix
diag(d1 , d2 , d3 ) satisfying di = 1 if i = j and di = −1 for i =
j. Let, in addition, D0 be the 3 × 3 identity matrix. Notice that,
by construction, Dj (R3,+ ) = R3,+ . Define
(Π3 (0), P1 (0), P2 (0)) = (Π̄3 (0), P̄1 (0), P̄2 (0)).
for t ∈ I − and j = 0, 1, 2, 3. The argument presented before
implies that each v̄ j,± belongs to L1 (I − , R3 ).
For every w = (w1 , w2 , w3 ) ∈ R3 , let
By uniqueness of solutions of regular ODEs (Π3 (t), P1 (t),
P2 (t)) = (Π̄3 (t), P̄1 (t), P̄2 (t)) for every t ∈ [0, T ]. This proves
the lemma under the hypothesis that the curve ϕ̄ is contained
in R3,+.
Dropping such an assumption requires two fixes: on one
hand, for arcs of ϕ̄ lying in R3,− = {(x, y, z) | xyz < 0}, we
consider a suitable convexification procedure; on the other
hand, we ensure that the divergence of (27) as ϕ approaches
R3,0 = R3 \(R3,+ ∪ R3,− ) does not disrupt the limiting procedure.
With an eye on this second concern, we notice that, up to a
C 0 -small perturbation of (Π̄, P̄ ), we can assume that the curve
described by ϕ̄ satisfies
ϕ̄˙ (0) ∈ R3,0
(33)
and is in general position with respect to R3,0 on (0, T ], i.e.,
for every t ∈ (0, T ] such that ϕ̄(t) ∈ R3,0 , only one of the coordinates of ϕ̄(t) is equal to zero and ϕ̄˙ (t) is transversal to the
tangent plane to R3,0 at ϕ̄(t).
Let
I = {t ∈ [0, T ] | ϕ̄(t) ∈ R3, },
= +, −, 0.
The assumption on the general position of ϕ̄ and (33) guarantee that I 0 is finite. Equation (28) defines v̄ ± on I + . Fix
t0 ∈ I 0 \{0} and denote by j, the element of {1, 2, 3} such that
ϕ̄j (t) = O(|t − t0 |). Then, for i = j, there exists ci = 0 such
that ϕ̄i (t) = ci + O(|t − t0 |). It follows from (27) that
c
+ O( |t − t0 |), t ∈ I +
(34)
v̄ ± (t) = |t − t0 |
for some c > 0. It is not hard to check that (34) is also satisfied
in the case in which t0 = 0 belongs to I 0 , thanks to (33).
In conclusion, the two maps v̄ ± : I + → R3 are Lebesgue
integrable. This property will allow us to apply Proposition 2.1,
with v̄ ± (·) in the role of ψ(·). Let us notice that v̄ ± (·) is
actually in Lp (0, T ) for p ∈ (0, 2). This remark could lead to
a different proof of the lemma, bypassing Proposition 2.1 and
exploiting instead the compactness properties of W 1,3/2 (0, T ).
The approach presented here looks preferable, since it directly
characterizes the trajectory obtained by the limiting procedure
as the solution of a Cauchy problem.
Concerning the arcs of ϕ̄ contained in R3,− , the idea is to
apply the classical relaxation-by-convexification technique to
the fictitious control system obtained through the backstepping
procedure. Although straightforward in its basic principle (the
convex hull of R3,+ is clearly R3 ), such a relaxation involves
some sensitive aspect (e.g., the equi-integrability of (Πn , P n )).
For this reason, and in order to keep the choice of the controls
as explicit as possible, we prefer to carry out the procedure in
details.
v̄ j,± (t) = Dj v ± (−ϕ̄(t))
|w| = (|w1 |, |w2 |, |w3 |)
ww = (w2 w3 , w1 w3 , w1 w2 ).
An elementary computation shows that
v̄ j,± v̄ j,± = Dj |ϕ̄|.
For every t belonging to I − , the positive cone generated by
D |ϕ̄(t)|, . . . , D3 |ϕ̄(t)| is the whole R3 . In particular, there
exists a map ˆ : R3,− → {0, 1, 2, 3} that is constant on each
connected component of R3,− , and such that
Dj |w|
w = −D̂(w ) |w| =
0
j ∈{0,1,2,3}\{̂(w )}
for every w ∈ R3,− .
We look for v n in the form

0,
if dist (t, I 0 ) < 1/n





 αn (t)v̄ + (t) + (1 − αn (t))v̄ − (t),
n
if dist (t, I 0 ) ≥ 1/n and t ∈ I +
v (t) =


3

β j,n (t)(αn (t)v̄ j,+ (t) + (1 − αn (t))v̄ j,− (t)),


 j =0
if dist (t, I 0 ) ≥ 1/n and t ∈ I − .
We choose, as before, the sequence αn in C ∞ ([0, T ], [0, 1])
satisfying the initial-and-final condition (30) and the asymptotic
conditions (31) and (32). In order to ensure the smoothness of v n
on [0, T ], we also require that αn (t) = 1/2 if dist (t, I 0 ) ≤ 1/n.
Further, asymptotic conditions on the restriction of αn on I −
will be required below [see (35)].
2,n
3,n
Let us turn to the sequence β n = (β 0,n , β 1,n
√ , β4 , β ),
∞ −
which will be selected in the space C (I , [0, 3] ). First of
all, we require that
β ̂( ϕ̄(t)),n (t) = 0
for every t ∈ I − and every n ∈ N, that is, we ask only three
components of β n to be active on each connected component of
I − . We assume, moreover, that “most of the time” only one (in
turn) of such three components is active, and that the three control configurations are homogeneously distributed in time. More
precisely, given 0 ≤ j ≤ 3, t ∈ [0, T ], and n ∈ N, we define
√
Btj,n = {τ ∈ (0, t) ∩ I − | β j,n (τ ) = 3, β i,n (τ ) = 0 if i = j}
and we ask that
L(Btj,n ) →
L({τ ∈ (0, t) ∩ I − | j = ˆ(ϕ̄(τ ))})
3
344
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
as n → ∞, uniformly with respect to t ∈ [0, T ]. Moreover, we
are free to assume that
1
n
α (τ ) −
dτ → 0
(35)
2
B tj , n
as n → ∞, uniformly with respect to t ∈ [0, T ].
A first consequence of the choice of αn and β j,n [and in
particular of (32) and (35)] is that (24) holds true. In addition
t
t
v n (τ )v n (τ ) dτ →
ϕ̄(τ ) dτ
0
0
as n → ∞, uniformly with respect to t ∈ [0, T ]. Upper L1 estimates on v n (·) and v n (·)v n (·) are given, respectively, by
k0 v + (|ϕ̄(·)|) and k0 ϕ̄(·), for some k0 > 0 large enough.
Proposition 2.1 ensures that the sequence (Πn3 , P1n , P2n ) converges uniformly to the solution (Π3 , P1 , P2 ) of
d
(Π3 , P1 , P2 )T = X(t, Π3 , P1 , P2 )
dt
with the initial condition
(Π3 (0), P1 (0), P2 (0)) = (Π̄3 (0), P̄1 (0), P̄2 (0)).
The uniqueness of solutions of regular ODSs allows us to conclude that
(Π3 (t), P1 (t), P2 (t)) = (Π̄3 (t), P̄1 (t), P̄2 (t))
for every t ∈ [0, T ].
In order to complete the proof, we just need to check
that the sequence (Πn (·), P n (·)) admits a common L1
bound. For what concerns the coordinates (Π3 , P1 , P2 ), such
bound is guaranteed by the uniform convergence established
here, while for the remaining coordinates, which verify (15)–
(17), the bound follows by the L1 -equiboundedness of the
sequence v n (·).
Remark 3.2: As already remarked during the proof of the
lemma, its statement could be strengthened by replacing the
claim ψ ∈ L1 ([0, T ], R) by the stronger one ψ ∈ Lp ([0, T ], R)
for p ∈ (0, 2). The former claim, however, is enough to apply
Proposition 2.1, as done next.
Corollary 3.3: If γ = 0, then system (A, Π, r, P ) is statetrackable.
Proof: Fix a smooth trajectory (Ā, r̄) : [0, T ] → SO(3) × R3
and an initial condition (Π0 , P0 ) ∈ R6 . Define Π̄, P̄ : [0, T ] →
R3 through the relations
˙ (t)),
Π̄(t) = JS −1 (Ā−1 (t)Ā
P̄ (t) = MĀ−1 (t)r̄˙ (t)
(36)
and denote by (Πn , P n ) the approximating sequence obtained
by applying Lemma 3.1 to the trajectory (Π̄, P̄ ).
In the case of matching initial conditions (Π̄(0), P̄ (0)) =
(Π0 , P0 ), the conclusion follows from Proposition 2.1 applied
to the system of equations satisfied by A and r by taking
AS(J −1 Πn (τ ))
Xn (τ, A, r) =
AM −1 P n (τ )
AS(J −1 Π̄(τ ))
X(τ, A, r) =
.
AM −1 P̄ (τ )
Now, let (Π̄(0), P̄ (0)) be possibly different from (Π0 , P0 )
and fix > 0. Let δ > 0 be such that if 0 < t < δ then
|||Ā(t) − Ā(0)||| + r̄(t) − r̄(0) < .
2
As proved earlier, there exists a control u ∈ L∞ ([δ, T ], R3 )
such that the corresponding trajectory (A, Π, r, P ) satisfying (A(δ), Π(δ), r(δ), P (δ)) = (Ā(δ), Π̄(δ), r̄(δ), P̄ (δ)) is
/3-close to the target trajectory in the coordinates (A, r) on
the interval [δ, T ].
Fixed u(·), we can chose η > 0 such that the trajectory
corresponding to u(·) and with the initial condition in a ηneighborhood of (Ā(δ), Π̄(δ), r̄(δ), P̄ (δ)) is /2-close to the
target trajectory in the coordinates (A, r).
Fix now a smooth curve (Â, r̂) : [0, δ] → SO(3) × R3 such
that
for every t ∈ [0, δ]
|||Â(t) − Ā(0)||| + r̂(t) − r̄(0) <
2
and (Â(0), r̂(0)) = (Ā(0), r̄(0)), (Π̂(0), P̂ (0)) = (Π0 , P0 ),
(Π̂(δ), P̂ (δ)) = (Π̄(δ), P̄ (δ)), where (Π̂, P̂ ) is obtained from
(Â, r̂) following (36).
Choosing such a (Â, r̂) as target on the interval [0, δ], we put
ourselves in the case of matching initial conditions. There exists, therefore, a control v ∈ L∞ ([0, δ], R3 ) whose corresponding trajectory having (Ā(0), Π0 , r̄(0), P0 ) as the initial condition min{/2, η} approximates (Â, r̂) in the coordinates (A, r)
on the interval [0, δ]. Then, the concatenation of v and u provides a control whose corresponding trajectory starting from
(Ā(0), Π0 , r̄(0), P0 ) is an approximation of (Ā, r̄) in the coordinates (A, r) on the whole interval [0, T ].
Remark 3.4: Lemma 3.1 implies approximate controllability
of Kirchhoff’s equations. An elementary computation shows,
moreover, that the family of vector fields defining such a control
system is Lie bracket generating [2, Lemma 1]. It follows from
the Krener theorem (see, for instance, [1, Cor. 8.3]) that system
(Π, P ) is completely controllable in an arbitrary small time, and
therefore, exactly controllable.
A nonsecondary asset of the construction lying behind
Lemma 3.1 is its generality, since an approximating sequence is
obtained almost algorithmically from the target trajectory. (The
only algorithmically implicit point, in which the procedure can
depend on the target, is the eventual choice of an approximating
curve (Π , P ) rendering ϕ̄ transversal to R3,0 .) However, in
some special cases, a more adapted approach looks preferable,
giving rise to more natural results.
IV. SPECIAL CASES
A. First Special Case: Planar Motion
Consider the case in which the control u1 is not active, i.e.,
u1 ≡ 0
(37)
and the submarine at time t = 0 satisfies Π1 (0) = Π3 (0) =
P2 (0) = 0. The unique solution of Kirchhoff’s Cauchy problem satisfies
Π1 ≡ Π3 ≡ P2 ≡ 0.
(38)
CHAMBRION AND SIGALOTTI: TRACKING CONTROL FOR AN ELLIPSOIDAL SUBMARINE DRIVEN BY KIRCHHOFF’S LAWS
The corresponding trajectory t → r(t) is, therefore, constrained
on a plane. (A perfectly symmetric situation is the one in which
u2 , Π2 , Π3 , and P1 are identically equal to zero.)
The case in which the target trajectory is planar and the initial
condition on the impulses satisfies (38) can be treated, instead
of using the general procedure described in the previous section,
as follows: we freeze the control u1 , i.e., we impose (37) to hold
on [0, T ], and we deal with the simplified Kirchhoff equations
Π̇2 = µ2 P1 P3 + u2
Ṗ1 = −
Ṗ3 =
P3 Π2
J2
P1 Π2
+ u3 .
J2
Using the same notations as in the proof of Lemma 3.1, it turns
out that ϕ̄2 ≡ ϕ̄3 ≡ 0 and the algebraic system of equations (26)
simplifies to
ϕ 1 = v2 v 3 .
The same backstepping approach introduced in the previous
section proves the state-trackability of planar motions by approximating trajectories that are themselves planar. Many technical difficulties in the proof, moreover, get simpler. Notice that,
since the curve ϕ̄ lies in R3,0 , the general nonplanar construction of Lemma 3.1 would give rise to a much more complicated
approximating strategy.
B. Second Special Case: Purely Rotational Motion
The second special case we consider is the one where P ≡ 0,
i.e., r is a constant and only the control T is active. Under such
restriction, the control system (A, Π, r, P ) becomes
Ȧ = AS(J −1 Π)
(39)
Π̇ = Π × ω + T
(40)
which can be written explicitly as
Ȧ = AS(J −1 Π)
1
1
Π̇1 =
−
Π2 Π3 + u1
J3
J2
1
1
Π̇2 =
−
Π3 Π1 + u2
J1
J3
(41)
Π̇3 = γΠ1 Π2 .
(44)
(Ā(0), Π0 ) verifies, for every time t in [0, T ], |||Ā(t) −
A(t)||| < . Moreover, u can be chosen in such a way that
˙ (T )) ≤ .
Π(T ) − J S −1 (Ā−1 (T )Ā
We skip the proof of Proposition 4.1, since it follows faithfully
what is done for Lemma 3.1 and Proposition 3.3. [Actually, since
the ratio between controls and coordinates is higher for system
(A, Π) than for system (A, Π, r, P ), many technical difficulties
are simplified or disappear altogether.]
Proposition 4.2: Let γ = 0. Then, system (A, Π) is exactly
controllable.
Proof: A consequence of Proposition 4.1 is that system (A, Π)
is approximately controllable in arbitrary short time. Therefore,
if we prove that the family of vector fields defining system
(A, Π) satisfies the Lie bracket generating condition, then it
follows that system (A, Π) is short-time completely controllable [and thus exactly controllable, due to the presence of the
equilibrium (Id, 0)].
The Lie bracket computation can be found in a paper by
Crouch [11], where the author proves a basically equivalent
result to Proposition 4.2, namely the complete controllability of
system (A, Π) in the case γ = 0 (T free), under the assumption
that the set of admissible controls is a bounded rectangle.
Remark 4.3: The case γ = 0 can be treated similarly, although aiming at a weaker controllability result (which will
be used in the following). Assuming that γ = 0 and fixing Π̄3 ∈ R, we can prove that system (A, Π) restricted to
SO(3) × R2 × {Π̄3 } is (well defined and) exactly controllable.
Indeed, Crouch’s computations and reasonings (in particular,
the application of a general result by Bonnard on controllability of control systems with Poisson stable drift [6]) show
that any such restricted system is completely controllable with
bounded controls. Due to the special structure of the system,
however, the set of feasible trajectories [corresponding to some
u = (u1 , u2 ) ∈ L∞ ([0, T ], R2 )] is invariant by time-rescaling,
in the sense that, for every feasible trajectory t → (A(t), Π(t))
and for every nonzero λ, t → (A(λt), λΠ(λt)) is feasible as
well.
V. STATE-TRACKABILITY: THE CASE γ = 0
(42)
(43)
We will refer to such control system as to “system (A, Π).”
System (A, Π) is clearly noncontrollable when γ = 0. We
next prove that, somehow conversely, the assumption γ = 0 is
sufficient to guarantee that system (A, Π) is state-trackable and
exactly controllable.
Proposition 4.1: Let γ = 0. Fix T > 0, Π0 ∈ R3 , and a
smooth trajectory Ā: [0, T ] → SO(3). Then, for every >
0, there exists a measurable bounded control u = (u1 , u2 ):
[0, T ] → R2 such that the corresponding solution (A(·), Π(·))
of system (A, Π) with the initial condition (A(0), Π(0)) =
345
In this section, we complete the proof of Theorem 1.2. According to Proposition 4.1, we are left to tackle the case where
γ = 0 and µ3 = 0. We start from the counterpart of Lemma
3.1. Notice that (12) and (13) are replaced here by the weaker
asymptotic relations (45) and (46).
Lemma 5.1: Assume that γ = 0 and µ3 = 0. Let T > 0 and
fix a smooth curve (Π̄, P̄ ) : [0, T ] → R6 . Then, there exists a
sequence un contained in L∞ ([0, T ], R3 ) such that the sequence
(Πn , P n ) of solutions of (6)–(11) corresponding to un , and with
the initial condition (Πn (0), P n (0)) = (Π̄(0), P̄ (0)), satisfies
Πn1 (T ), Πn2 (T ), P1n (T ), P2n (T ), P3n (T ) →
(Π̄1 (T ), Π̄2 (T ), P̄1 (T ), P̄2 (T ), P̄3 (T ))
Πn3 (t) → Π̄3 (t)
(45)
(46)
346
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
t
Πn1 (τ ), Πn2 (τ ), P1n (τ ), P2n (τ ), P3n (τ ) dτ →
0
as k → ∞ uniformly with respect to t ∈ [0, T ], where t →
(Πn3 ,k (t), P1n ,k (t), P2n ,k (t)) is the solution of
t
(Π̄1 (τ ), Π̄2 (τ ), P̄1 (τ ), P̄2 (τ ), P̄3 (τ ))dτ
(47)
0
as n → ∞, the last two convergences being uniform with respect
to t in [0, T ].
Proof: The idea, detailed later, is to apply twice the backstepping procedure developed in the proof of Lemma 3.1: first,
by interpreting P1 and P2 as control variables in the equation
for Π3 , we single out a sequence (Π̂n3 , P̂1n , P̂2n ) such that Π̂n3
converges uniformly to Π̄3 . In a second step each element of the
sequence is approximated uniformly using the three variables
(Π1 , Π2 , P3 ) as controls.
Fix a sequence of smooth curves wn = (w1n , w2n ) : [0, T ] →
2
R such that
wn (0) = 0 = wn (T )
(48)
with Y defined as in (19).
This can be done by defining
J2
˙
ϕ̂n1 (t) = −J2 P̂ 1n (t) + P̂2n (t)Π̂n3 (t) − P̄3 (t)Π̄2 (t)
J3
J1
˙n
ϕ̂n2 (t) = J1 P̂ 2 (t) + P̂1n (t)Π̂n3 (t) − P̄3 (t)Π̄1 (t)
J3
and by selecting v n ,k such that (52) and (53) hold, and in addition,
t
n
ϕ̂1 (τ ) − v2n ,k (τ )v3n ,k (τ ) dτ → 0
t
w (τ )dτ → 0
n
(49)
0
t
w1n (τ )w2n (τ )dτ
0
Π̄3 (t) − Π̄3 (0)
→
µ3
t
P̄1 (τ )P̄2 (τ )dτ
−
(50)
0
as n → ∞ uniformly with respect to t ∈ [0, T ]. Condition (50)
can be guaranteed by imposing that wn satisfies
˙ (t)/µ ) − P̄ (t)P̄ (t)
w1n (t)w2n (t) = (Π̄
3
3
1
2
(51)
on a subset of [0, T ] that converges to [0, T ] in measure as
n → ∞. The asymptotic condition (49) can be ensured by fast
oscillating between opposite-sign solutions of (51).
For every n ∈ N, define
P̂1n (t) = P̄1 (t) + w1n (t)
P̂2n (t) = P̄2 (t) + w2n (t)
t
Π̂n3 (t) = Π̄3 (0) + µ3
P̂1n (τ )P̂2n (τ )dτ.
The choice made on wn implies that Π̂n3 converges uniformly
to Π̄3 .
For every n ∈ N, we look for a sequence
v n ,k = v1n ,k , v2n ,k , v3n ,k
in C ∞ ([0, T ], R3 ) such that
0
t
0
t
ϕ̂n2 (τ ) − v1n ,k (τ )v3n ,k (τ ) dτ → 0
as k → ∞ uniformly with respect to t ∈ [0, T ]. Then, as k tends
to infinity, (Πn3 ,k (t), P1n ,k (t), P2n ,k (t)) tends uniformly with respect to t ∈ [0, T ] to the solution of

Π̇3 = µ3 P1 P2




1

˙n
n n


 Ṗ1 = P̂ 1 + J (P2 Π3 − P̂2 Π̂3 )
3
1

˙n


Ṗ2 = P̂ 2 − (P1 Π3 − P̂1n Π̂n3 )


J3



(Π3 (0), P1 (0), P2 (0)) = (Π̄3 (0), P̄1 (0), P̄2 (0)),
i.e., to (Π̂n3 (t), P̂1n (t), P̂2n (t)). The conclusion follows from a
diagonal argument.
The same proof as the one of Corollary 3.3 can be used
to prove, using Lemma 5.1, that system (A, Π, r, P ) is statetrackable in the case where γ = 0 and µ3 = 0.
VI. EXACT CONTROLLABILITY OF SYSTEM (A, Π, r, P )
0
(Π3 (0), P1 (0), P2 (0)) = (Π̄3 (0), P̄1 (0), P̄2 (0))
0
and
and
d
(Π3 , P1 , P2 )T = Y (t, Π3 , P1 , P2 , v n ,k (t))
dt
v n ,k (0) = 0 = v n ,k (T )
(52)
v n ,k (τ )dτ → 0
(53)
Πn3 ,k (t), P1n ,k (t), P2n ,k (t) → Π̂n3 (t), P̂1n (t), P̂2n (t) (54)
First notice that if γ = µ3 = 0, then, according to (8), Π̇3 ≡
0 along any feasible trajectory, ruling out controllability. In
order to prove Theorem 1.4, we, therefore, have to show that
system (A, Π, r, P ) is exactly controllable when γ 2 + µ23 = 0.
This requires a last ingredient, provided by the following lemma.
Lemma 6.1: System (Π, P ) is exactly controllable when γ =
0 and µ3 = 0.
Proof: Let γ = 0 and µ3 = 0. Lemma 5.1 guarantees approximate short-time controllability for system (Π, P ). As noticed
in Remark 3.4, exact controllability follows if we prove that the
system is Lie bracket generating.
Let X0 , X1 , X2 , X3 be the four vector fields on R6 such that
system (Π, P ) is given by
(Π̇, Ṗ ) = X0 (Π, P ) +
3
i=1
ui Xi (Π, P ).
CHAMBRION AND SIGALOTTI: TRACKING CONTROL FOR AN ELLIPSOIDAL SUBMARINE DRIVEN BY KIRCHHOFF’S LAWS
Then, a computation shows that
347
have chosen the following constants
T
1
[X1 , [X0 , X3 ]](Π, P ) = 0, 0, 0, 0, − , 0
J1
T
1
[X2 , [X0 , X3 ]](Π, P ) = 0, 0, 0, , 0, 0
J1
while
X ∗ = [[X1 , [X0 , X3 ]], [X3 , [X0 , [X0 , X2 ]]]](Π, P )
T
µ3
= 0, 0, − 2 , 0, 0, 0
.
J1
As a consequence, the six (constant) vector fields X1 , X2 , X3 ,
[X1 , [X0 , X3 ]], [X2 , [X0 , X3 ]], and X ∗ are everywhere linearly
independent.
Proof of Theorem 1.4: Fix an initial and a final condition
(A0 , Π0 , r0 , P0 ) and (Af , Πf , rf , Pf ) for system (A, Π, r, P ).
Fix, in addition, a positive time T .
From the exact controllability of Kirchhoff’s equations (see
Remark 3.4 and Lemma 6.1), it follows that there exist (A0 , r0 )
in SO(3) × R3 and an admissible control, defined on the interval [0, T /5], steering system (A, Π, r, P ) from (A0 , Π0 , r0 , P0 )
to (A0 , 0, r0 , 0). [Just take a control steering system (Π, P ) from
(Π0 , P0 ) to (0, 0) and apply it to system (A, Π, r, P ).] Similarly,
there exist (Af , rf ) in SO(3) × R3 and an admissible control,
defined on the interval [4T /5, T ], steering system (A, Π, r, P )
from (Af , 0, rf , 0) to (Af , Πf , rf , Pf ).
Proposition 4.2 and Remark 4.3, moreover, imply that, for
every choice of A0 , Af ∈ SO(3), system (A, Π, r, P ) can be
driven in the time-interval [T /5, 2T /5] from (A0 , 0, r0 , 0)
to (A0 , 0, r0 , 0) and in the time-interval [3T /5, 4T /5] from
(Af , 0, rf , 0) to (Af , 0, rf , 0).
It is now physically intuitive how to choose A0 and Af in
order to guarantee the existence of a control steering system
(A, Π, r, P ) from (A0 , 0, r0 , 0) to (Af , 0, rf , 0) in the timeinterval [2T /5, 3T /5]: we take A0 = Af to be any rotation
such that rf − r0 belongs to the axis spanned by A0 e3 , with
e3 = (0, 0, 1)T . With this choice, and taking T |[2T /5,3T /5] ≡ 0,
system (A, Π, r, P ) is nothing else that a double integrator on
the two-dimensional space A ≡ A0 , Π ≡ 0, r, v ∈ span(A0 e3 ).
It is well known that such a system is exactly controllable and
this concludes the proof of Theorem 1.4.
VII. NUMERICAL SIMULATIONS
In this section, we illustrate the methods developed in the
paper in two concrete situations. In the first one, we consider
only the (Π, P ) tracking problem, in the sense described by
the statement of Lemma 3.1. This is a direct implementation of
the algorithm presented in the paper. The second situation is a
complete (A, r) tracking problem. As already noticed, it can be
solved by reducing it to a (Π, P ) tracking problem.
A. Tracking in (Π, P )
The algorithm presented in Section III has been implemented
with Scilab, with and without feedback. For our example, we
J1 = 1,
M1 = 1,
J2 = 2,
M2 = 2,
J3 = 3
M3 = 3.
The trajectory to be tracked is given by

Π̄1 : t → 1





Π̄2 : t → 1



 Π̄ : t → 1 − 5t
3

P̄1 : t → 1 − 5t





P̄
 2 : t → 1 + 5t


P̄3 : t → 1,
for t in the unit interval [0, 1].
At time t = 0, the body is such that Π1 = Π2 = Π3 = P1 =
P2 = P3 = 1; that is, the initial conditions are the same for the
actual trajectory of the immersed body and the tracked trajectory. In the following, the oscillation functions (denoted by α
and β in the paper) are, respectively, ωα - and ωβ -periodic piecewise constant functions. We impose the further restriction that
|ui (t)| ≤ K for all (t, i) ∈ [0, 1] × {1, 2, 3} for some constant
K.
For both open-loop and closed-loop implementation, we take
ωα = 300, ωβ = 100, and K = 5000.
1) Tracking in (Π, P ): Open-Loop Implementation: The implementation of the algorithm presented in Section III is done in
the open-loop way, that is, we do not use feedback. This kind of
implementation is known to be unstable but is a good way to test
the stability of the method. The implementation is done by using
the standard Scilab routines (in particular, the ode solver of the
ODE’s). The time interval between two evaluations is forced to
be less than 10−5 . Equations are solved for time t between 0
and 1, that is, we do at least 105 evaluations of the positions,
resolutions of (26), and computations of the corresponding controls. The total computation time is shorter than 5 min using a
standard office desktop.
On the graph corresponding to the directly tuned coordinates
P3 , Π1 , and Π2 (see Fig. 2), we have represented in solid line
the evolution of P3 . On the same graphs, the evolution of the
tracked trajectory P̄3 is represented in dashed line. As expected,
the tracked trajectory is much smoother than the actual. However, the averages of the two trajectories on small time intervals
remain the same for the tracked and the tracking trajectory.
On the graph corresponding to the indirectly tuned coordinates
P1 , P2 , and Π3 (see Fig. 1) one can see that for very small
times the tracking trajectories remain close to the corresponding tracked trajectories. After a short while, the error cumulation
is too large to allow good tracking. However, in view of the good
initial behavior of the control system, one guesses that a suitable
feedback procedure will allow precise large-time tracking.
2) Closed-Loop Implementation: The feedback we adopt
takes only into account the actual values of Π3 , P1 , and P2 ,
not the past values of (Π, P ) nor the actual values of Π1 , Π2 ,
or P3 . In one sense, it is the least measurement-demanding
˙ , P̄˙ and
feedback we may consider. In practice, we replace Π̄
3
1
P̄˙ 2 in expression (23), respectively, by K3 (Π̄3 − Π3 ), K1 (P̄1 −
P1 ), and K2 (P̄2 − P2 ), where K1 , K2 , and K3 are suitably
348
IEEE TRANSACTIONS ON AUTOMATIC CONTROL, VOL. 53, NO. 1, FEBRUARY 2008
Fig. 1. Evolution of the P 1 coordinate with respect to time, with an openloop implementation (left) and closed-loop implementation (right). The target
is figured in dashed line. Similar pictures can be drawn for coordinates P 2
and Π 3 .
Fig. 3. Evolution of the position r of the center of the submarine (top) and of
the A 3 , 3 entry of the attitude matrix (bottom) with respect to time. The targets
are the straight line r̄(t) = −(t, t, t) (top) and the constant function t → 1
(bottom).
B. Tracking in (A, r)
t
Fig. 2. Evolution of the quantity 0 (P 3 (s) − P̄ 3 (s))ds for t in [0, 1], with
an open-loop implementation (top) and closed-loop implementation (bottom).
The target is the constant function t → 0. Similar pictures can be drawn for
coordinates Π 1 and Π 2 .
tuned positive constants. We choose K1 = 125, K2 = 225, and
K3 = 255.
Results are presented in Figs. 1 and 2. We have drawn the
target in dashed line and the actual trajectory in solid line. Up
to time t ≈ 0.7, the tracking is quite efficient. From this time
on, saturations phenomena on u appear, that is, the procedure
would require a control u whose components are larger than K.
Failing to apply the required control, the ellipsoid stops tracking
the assigned trajectory.
Now we turn back to our original problem. The physical
constants Mi and Ji , i = 1, 2, 3, are the same as in the previous section. We choose as a target trajectory (Ā, r̄) defined
by Ā3,3 (t) = 1 and r̄(t) = −(t, t, t) for every t in [0, 16]. The
target position of the center of the submarine r̄ is hence fully
determined, while the target attitude matrix Ā has two degrees
of freedom: we just ask the main axis of the submarine to remain parallel to the z-axis. Such trajectories are clearly nonfeasible trajectories for system (A, Π, r, P ). At time t = 0,
the actual state coincides with the target trajectory, that is,
A(0) = Id and r(0) = (0, 0, 0), but the submarine is at rest, that
is, Π(0) = P (0) = (0, 0, 0). In other words, the actual initial velocity is not the one of the target. We use the same parameters
K1 , K2 , K3 , and K as in the previous section.
The scheme of the implementation is the following.
First, we use a function that measures the actual position
(A, r), compares the result with the desired target trajectory, and
computes as a result Pic and Pc that are the constant (usually
nonfeasible) velocity we should follow to reach in a small time
(to be tuned by the user), the actual target position (Ā, r̄).
[Pic, Pc] = TargetTrajectory(t, A, r)
CHAMBRION AND SIGALOTTI: TRACKING CONTROL FOR AN ELLIPSOIDAL SUBMARINE DRIVEN BY KIRCHHOFF’S LAWS
Fig. 4. Evolution of the control with respect to time when tracking the (A, r)
trajectory of Fig. 3.
Second, we try to move the submarine with the desired impulse (Pic, Pc). Since this impulse is usually nonfeasible, we
have to use the procedure described in Section III. Computing
ϕ1 , ϕ2 , ϕ3 as in (20)–(22), we use either the simplified procedure if (ϕ1 , ϕ2 , ϕ3 ) ∈ R3,+ or the general relaxation procedure
if it is not the case. The resulting function computes the desired
control value Pi1cc, Pi2cc, and P3cc with respect to the actual
(Π, P ) and desired Pic, Pc impulse.
[Pi1cc, Pi2cc, P3cc] = ContrVal(Pi, P, Pic, Pc)
Finally, we just use a standard PID to derive the value of the
control (u1 , u2 , u3 ) from the differences between the actual and
desired values of Π1 , Π2 , P3 .
[u1, u2, u3] = Control(Pi, P, Pi1cc, Pi2cc, P3cc)
Results are presented in Fig. 3. The corresponding controls
u1 , u2 , and u3 are presented in Fig. 4.
[8] F. Bullo and A. D. Lewis, Geometric Control of Mechanical Systems.
Modeling, Analysis, and Design for Simple Mechanical Control Systems.
New York: Springer-Verlag, 2005.
[9] M. Chyba, H. Maurer, H. J. Sussmann, and G. Vossen, “Underwater
vehicles: The minimum time problem,” in Proc. IEEE Conf. Decis Control,
2004, pp. 1370–1375.
[10] M. Chyba, N. E. Leonard, and E. D. Sontag, “Singular trajectories in multiinput optimal problems: Application to controlled mechanical systems,”
J. Dyn. Control Syst., vol. 9, no. 3, pp. 73–88, 2003.
[11] P. E. Crouch, “Spacecraft attitude control and stabilization: Applications
of geometric control theory to rigid body models,” IEEE Trans. Autom.
Control, vol. AC-29, no. 4, pp. 321–331, Apr. 1984.
[12] T. I. Fossen, Guidance and Control of Ocean Vehicles. New York: Wiley,
1994.
[13] I. I. Gihman, “Concerning a theorem of N. N. Bogolyubov,” (in Russian),
Ukrain. Mat. Ž, vol. 4, pp. 215–219, 1952.
[14] J. Kurzweil and Z. Vorel, “Continuous dependence of solutions of differential equations on a parameter,” (in Russian), Czechoslovak Math. J.,
vol. 7, no. 82, pp. 568–583, 1957.
[15] H. Lamb, Hydrodynamics. Cambridge, U.K.: Cambridge Univ. Press,
1932.
[16] N. E. Leonard, “Mechanics and nonlinear control: Making underwater
vehicles ride and glide,” in Proc. 4th IFAC Nonlinear Control Design
Symp., 1998, pp. 1–6.
[17] W. Liu and H. J. Sussmann, “Continuous dependence with respect to the
input of trajectories of control-affine systems,” SIAM J. Control Optim.,
vol. 37, no. 3, pp. 777–803, 1999.
[18] S. P. Novikov and I. Shmeltser, “Periodic solutions of Kirchhoff equations
for the free motion of a rigid body in a fluid and the extended LyusternikShnirel’man-Morse theory,” Funct. Anal. Appl., vol. 15, no. 3, pp. 197–
207, 1981.
Thomas Chambrion was born in France in 1977.
He received the Ph.D. degree in applied mathematics
from the University of Burgundy, Dijon, France, in
2004.
From 2001 to 2004, he was a Lecturer in mathematics at the University of Burgundy, Dijon, France.
Since 2005, he has been teaching applied mathematics at the University of Nancy, Nancy, France. His
current research interests include geometric control
theory, especially the applications of Lie group theory to the control of finite and infinite dimensional
REFERENCES
[1] A. A. Agrachev and Yu. L. Sachkov, Control Theory from the Geometric
Viewpoint. Berlin, Germany: Springer-Verlag, 2004.
[2] A. Astolfi, D. Chhabra, and R. Ortega, “Asymptotic stabilization of some
equilibria of an underactuated underwater vehicle,” Syst. Control Lett.,
vol. 45, no. 3, pp. 193–206, 2002.
[3] D. C. Biles, “Continuous dependence of nonmonotonic discontinuous
differential equations,” Trans. Amer. Math. Soc., vol. 339, no. 2, pp. 507–
524, 1993.
[4] A. M. Bloch, P. S. Krishnaprasad, J. E. Marsden, and G. Sanchez de
Alvarez, “Stabilization of rigid body dynamics by internal and external
torques,” Autom. J. IFAC, vol. 28, no. 4, pp. 745–756, 1992.
[5] A. M. Bloch, N. E. Leonard, and J. E. Marsden, “Stabilization of mechanical systems using controlled Lagrangians,” in Proc. IEEE Conf. Decis.
Control, 1997, pp. 2356–2361.
[6] B. Bonnard, “Contrôlabilité de systèmes mécaniques sur les groupes de
Lie,” (in French), SIAM J. Control Optim., vol. 22, no. 5, pp. 711–722,
1984.
[7] F. Bullo, N. E. Leonard, and A. D. Lewis, “Controllability and motion
algorithms for underactuated Lagrangian systems on Lie groups,” IEEE
Trans. Autom. Control, vol. 45, no. 8, pp. 1437–1454, Aug. 2003.
349
systems.
Mario Sigalotti was born in Udine, Italy, in 1975. He
received the Laurea degree in mathematics in 1999
from the University of Trieste, Trieste, Italy, and the
Ph.D. degree in functional analysis and applied mathematics in 2003 from the International School for
Advanced Studies (SISSA), Trieste.
From November 2003 to October 2005, he was a
Marie Curie Intra-European Postdoctoral Researcher
at the French National Institute in Computer Science and Control (INRIA), Sophia-Antipolis, France,
where he is currently an Associate Scientist (chargé
de recherche). His current research interests include stabilization and control
of switched, hybrid, infinite-dimensional, and fluid-body systems as well as
geometric optimal control and sub-Riemannian geometry.