Balanced-Force-Control of Underactuated Thrust

Proceedings of the
46th IEEE Conference on Decision and Control
New Orleans, LA, USA, Dec. 12-14, 2007
FrC18.5
Balanced-Force-Control of underactuated thrust-propelled vehicles
Minh-Duc Hua, Pascal Morin, Claude Samson
INRIA
2004, Route des Lucioles
06902 Sophia-Antipolis Cedex, France
E-mail address: [email protected]
Abstract— The paper sets the basics of a control framework
for underactuated thrust-propelled vehicles immersed in a fluid,
with the objective of stabilizing reference trajectories either in
velocity or in position.
I. I NTRODUCTION
What do airplanes, helicopters and other VTOL vehicles,
blimps, rockets, hydroplanes, ships, submarines, have in
common? These vehicles are basically composed of a main
body immersed in a fluid medium (air or water) or in empty
space, and they are commonly controlled via i) a propulsive
thrust force along a body-fixed privileged axis, and ii) one,
two, or three complementary independent actuators in charge
of modifying the body’s orientation, and thus the direction
of thrust. These vehicles are also underactuated in the sense
that, apart from the direction associated with the thrust force,
the other possible direction(s) of displacement, or degree(s)
of freedom, is (are) not directly actuated. More precisely, only
two independent actuators are used for vehicles moving on
a plane (e.g. thrust and rudder for a sea-ship), whereas three
actuators would be necessary for full actuation. At most four
independent actuators are used for vehicles moving in space
(e.g. thrust, rudder, elevator, and ailerons of an airplane),
whereas six actuators would be necessary for full actuation.
Note that cars and other wheeled vehicles are not strictly
speaking (and it is important to be rigorous here) underactuated, because instantaneous motion along non-actuated
directions is not possible. They belong to another class of
(so-called nonholonomic) vehicles, the control of which can
also be challenging. From now on, and for convenience, we
will refer to the former family of vehicles as the family of
underactuated thrust-propelled vehicles.
Research on the control of these vehicles has been ongoing for more than a century, and attempting a survey
is not one of the paper’s objectives. Let us just mention that aerospace and naval engineers have traditionally
considered various control modes, ranging from SingleInput-Single-Output (SISO) Control Augmentation Systems
(CAS) –associated with the regulation of a single variable
(pitch, yaw, roll angles, altitude, longitudinal velocity...)– to
Mutivariable-Input-Multi-Output (MIMO) versions of these
systems, culminating with fully automatic and autonomous
motion. Proposed feedback controllers have, for a large
This work is supported by the “Conseil régional Provence-Alpes-Côte
d’Azur”.
1-4244-1498-9/07/$25.00 ©2007 IEEE.
part, been adapted from linear systems control methods
(pole placement, H2 and H∞ optimization,...). But nonlinear
control methods (feedback linearization, backstepping, sliding mode control,...) are increasingly considered in recent
studies [1], [2], [3], [4]. Concerning the modeling and control
of ocean-ships, [5] is a well-established reference to start
with, whereas [6] and [7] contain the fundamentals about
aircraft similar issues. VTOL vehicles are also capable of
“cruising”, but they present the distinct advantage of being
better adapted for “hovering”. The literature on the control
of helicopters and other members of this sub-class of underactuated thrust-propelled vehicles has recently known an
important renaissance, certainly related to the increasing importance given to the development of small low-cost robotic
vehicles (including small airplanes or drones) capable of
performing surveillance and inspection tasks autonomously
[8], [9]. The present paper focuses on the two following
problems: i) stabilization of desired translational velocities,
and ii) stabilization of desired position-trajectories, with a
complementary constraint of practical stability upon angular
velocities. The first one typically applies to manual joystickaugmented-control situations, whereas the second problem
can be seen as an extension of the former for autonomous
motion applications. Most of the control design ingredients
considered here have already been evoked elsewhere, in a
way or another. We advocate that the originality of the
proposed approach is not to be sought at this level, but in
the way of analyzing these ingredients and assembling them
in a slightly different manner which, in the end, yields a
new perspective on the problems and their solutions. For
instance, at first glance, the approach is reminiscent of a
method described in [10], [11], [12] –for the stabilization
of hovering VTOLs– based on the idea of using the thrust
force and the vehicle’s orientation as control variables to
stabilize the vehicle’s position, and then applying a classical backstepping procedure, or a high-gain controller, to
determine torque-inputs capable of stabilizing the requested
orientation. Instead of the orientation, we use (see next
Section) the vehicle’s angular velocity as an intermediary
control input. This seemingly “small” difference is, in fact,
consequential because it alleviates a certain number of difficulties associated with control inputs which belong to a
compact manifold and enter the system’s equations in a nonaffine (or nonlinear) manner. The way energy dissipation
produced by motion reaction forces is exploited, in relation
6435
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
to the estimation of these forces, also constitutes to our
knowledge a novel interpretation, which justifies the use of
simple models and could explain observations made by other
authors in this direction [13].
The following notation is used throughout the paper. The
euclidean norm in Rn is denoted as |.|. A function y :
[to , +∞) −→ Rp is u.b. (for ultimately bounded) by a
constant c if there exists a time T such that |y(t)| ≤ c ∀t ≥
T . An output y = h(x, t) ∈ Rp is u.u.b. (for uniformly
ultimately bounded) by a constant c along the solutions
of a differential equation ẋ = f (x, t) if for any (xo , to ),
y(.) = h(x(., xo , to )) is u.b. by c, where x(t, xo , to ) denotes
the solution at time t of ẋ = f (x, t) with initial condition
xo at t = to .
Due to space limitations, the proofs of the results presented
in this paper are omitted. They can be obtained upon request
to the authors.
II. P ROBLEM STATEMENT
A. Context of the study and notation
We consider a single actuated body immersed in an
ambient fluid (air, water,...) which exerts motion reaction
forces on the body (drag and/or lift forces, typically). To
simplify the exposition, we study the planar case, i.e. motion
in the 3-d Lie group SE(2), prior to adapting the results of
this study to the spatial case, i.e. motion in the 6-d Lie group
SE(3). The notation of Figure 1 is used thereafter.
T~
θ
~ı0
~ı
O
~0
G
~
F~e
Fig. 1.
Thrust-propelled body subjected to external reaction forces
• G is the body’s center of mass and m is its mass.
• F = {G;~ı, ~} is a frame attached to the body, and
F0 = {O;~ı0 , ~0 } is a fixed (Galilean) frame w.r.t. (with
respect to) which the vehicle’s attitude (position+orientation)
is measured.
• The vector of coordinates of G in this frame is x =
(x1 , x2 )′ , with the prime symbol used for the operation of
~ = x1~ı0 + x2~0 , a relation that
transposition. Therefore, OG
~ = (~ı0 , ~0 )x.
we will also write in a more concise way as OG
• The vector of coordinates associated with the velocity
d ~
OG of G w.r.t. F0 is denoted as ẋ = (ẋ1 , ẋ2 )′ when
~v = dt
expressed in the basis of F0 , and as v = (v1 , v2 )′ when
expressed in the basis of F, i.e. ~v = (~ı0 , ~0 )ẋ = (~ı, ~)v.
• The vehicle’s orientation is characterized by the oriented
angle θ between ~ı0 and ~ı.
• The ambient fluid velocity w.r.t. F0 is ~vw = (~ı0 , ~0 )ẋw .
FrC18.5
• The “apparent velocity” ~va of the body is the difference
between the velocity of G and ~vw . Therefore, ~va = ~v −~vw =
(~ı0 , ~0 )ẋa , with ẋa = ẋ − ẋw .
• The rotation matrix of angle θ in the plane is R(θ).
• S = R(π/2) is a unitary skew-symmetric matrix.
It is further assumed that the propulsion thrust force T~ =
T~ı applies at a point little distant from the first axis {G;~ı} of
F, so that it does not create an important torque at G. Due to
the many possible ways of producing a control torque, whose
main role is to modify the body’s orientation (secondary
propeller, rudder or flap, control moment gyros,...), and since
we aim at describing control solutions which are as much as
possible independent of the means of actuation, we will just
assume that an actuating torque capable of compensating for
the action of all other (parasitic) torques –those associated
with motion reaction forces, in particular–, is available. This
in turn leads us to using the body’s angular velocity ω = θ̇ as
a control variable. This is obviously an important simplifying
assumption whose validity has to be discussed when applying
the proposed approach to a physical system.
B. Basic modeling equations and preliminary control design
considerations
All the other forces acting on the body (gravity and buoyancy forces, added-mass forces, and dissipative aerodynamic
or hydrodynamic reaction forces) are summed up in the
vector F~e = (~ı0 , ~0 )Fe . Having assumed that the torques
produced by these forces at G do not interfere with the
control of the angular velocity ω, one may as well assume
that F~e applies at G (knowing that it is impossible in most
practical cases to determine the –a priori variable– point of
application of this force precisely). In the absence of motion
reaction forces exerted by the ambient fluid on the body,
only gravity, eventually counteracted by buoyancy forces of
roughly constant magnitude, would be present in F~e . This
force could then be modeled as a constant vector parallel to
the {O;~ı0 } axis associated with the fixed frame. However,
due to aerodynamic or hydrodynamic reaction forces, this
vector generally depends on the apparent body velocity and
acceleration (via added-mass effects), i.e. on (ẋa , ẍa , ω, ω̇),
as well as on the orientation angle θ. It may also depend on
the vehicle’s position when, for instance, the characteristics
of the ambient fluid (composition, pressure,...) are not the
same everywhere. For simplicity, this latter dependence –
usually of second order importance– will not be considered
here. Moreover, whereas the dependence upon accelerations
is roughly linear, it is known that the intensities of motion
reaction forces vary like the square of |ẋa |. Therefore, the
intensity and direction of F~e can vary in large proportions as
soon as the body’s desired velocity is modified significantly,
or due to important modifications of the ambient environment
(waves, wind gusts,...). Modeling the various components of
this function is, in general, time consuming and costly. This
modeling effort is necessary for simulation purposes, and
also for the optimization of the vehicles’ geometrical and
mechanical characteristics. A model of Fe can also be of
use for control design purposes. However, the knowledge
6436
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
of a precise and well-tuned model may not be as critically
important as for simulation. Two classical reasons are that
i) a well-designed feedback control is expected to grant
robustness –in the sense of performance insensitivity– w.r.t.
model inaccuracies, and ii) using on-line measurements in
the control or, more realistically, estimates of Fe based on a
crude model, can be preferable to using a more sophisticated
but nonetheless imperfect functional model of this force.
From Newton’s second law one has
m
d
~v = T~ + F~e
dt
(1)
or, in coordinates
mẍ = T R(θ)e1 + Fe (ẋ, ẍ, θ, ω, ω̇, t)
(2)
with e1 := (1, 0)′ . These are basic modeling equations on
which any control design method is bound to rely. A rapid
inspection of these equations can already inform us about a
few control design principles and potential difficulties. For
instance, let us momentarily assume that the objective is to
have the vehicle move at a desired constant velocity. The
above equations indicate that the thrust force T~ then must
exactly oppose the force F~e produced by the environment
on the vehicle. It also indicates that the vehicle’s desired
orientation is given by the direction of F~e , and that the
thrust intensity is equal to the intensity of this force. In
fact, the equation T R(θ)e1 + Fe = 0 has generally at least
two solutions in (T, θ). This is easily understandable, for
instance by considering a ship moving with a constant speed
in a given direction. In this case, the ship can move either
“forward” in this direction (prow ahead), or “backward”
(stern ahead) with reverse propulsion. The choice of the
desired equilibrium is often made via simple physical considerations, such as energy consumption minimization related to
the actuators’ efficiency and the vehicle’s shape. A possible
complementary constraint intervening in this respect is the
non-invertibility of the thrust direction for some vehicles, like
airplanes, rockets, and various VTOL devices. The above
balanced-force equation points out an even more sensitive
issue: the desired vehicle’s orientation can no longer be
(almost uniquely) deduced from the direction of F~e when
this force vanishes at the desired velocity (since no direction
can be associated with the null vector). More precisely, when
this force does not depend upon θ (and ω), the equation
tells us that the vehicle’s orientation tends to become indeterminate for velocities which tend to nullify this force.
This in turn suggests that the nature of the control problem
becomes different for these velocities. Typically, it becomes
significantly harder because the linear approximation of the
system’s equation is not controllable at these velocities. Note
that the nullity of Fe at zero velocity does not hold for
all vehicles. For instance, in the case of VTOL vehicles,
the body’s weight is not compensated for by buoyancy and
F~e ≈ m~g (6= 0) when the vehicle is motionless. This explains
why the control of hovering phases for these vehicles can
effectively be addressed by using classical linear control
techniques. A sea current, in the case of a ship, or a constant
FrC18.5
wind, in the case of a blimp, will play a role similar to gravity
for a VTOL vehicle.
Let us now consider the case of a non-constant reference
velocity ~vr = (~ı0 , ~0 )ẋr . By denoting as ~ṽ := ~v − ~vr the
velocity-error vector, a slight generalization of (1) is
m
d~
ṽ = T~ + F~a
dt
(3)
d
with F~a := F~e − m dt
~vr (t) the apparent force resulting
from adding the “artificial weight” produced by the reference
acceleration to F~e . In coordinates, this equation can be
written as
d˜
= T R(θ)e1 + Fa (ẋ, ẍ, θ, ω, ω̇, t)
(4)
m ẋ
dt
˜ := ẋ − ẋr and Fa := Fe − mẍr . By extension of the
with ẋ
constant velocity case, the above equations point out that zero
velocity-error is obtained when the thrust force T~ opposes
the apparent force F~a exactly. The body’s orientation angle
is then given by the direction of the apparent force. Control
difficulties will also appear when the intensity of this force
tends to zero. For instance, in the case of a rocket moving in
void space (no drag forces), far away from any very massive
body (no gravity), i.e. for which Fe is identically equal to
zero, the control of the vehicle can rely on classical methods
only when a non-zero acceleration ẍr is requested.
C. Assumptions
To simplify both the control design and the analysis
associated with it, a few assumptions are now stated and
discussed. The removal, or loosening, of some of these
assumptions will be the subject of future studies.
Assumption 1 Fe depends only on the vehicle’s translational velocity ẋ and the independent time variable t. Moreover, it is continuously differentiable w.r.t. these variables,
e
and the functions t −
7 → Fe (ẋ, t), t −
7 → ∂F
∂ ẋ (ẋ, t), and
∂Fe
t−
7 → ∂t (ẋ, t) are bounded uniformly w.r.t. ẋ in compact
sets.
The non-dependence of Fe upon θ is physically justified
when the intensities of drag and (complementary) lift forces
do not depend on the body’s orientation. In this respect, the
body’s shape is clearly a deciding factor. For instance, this
assumption is clearly violated in the case of airplanes. It
better holds in the case of VTOL vehicles. As for the nondependence upon the angular velocity ω, the assumption is
better justified when i) the force F~e applies at points close to
the body’s center of gravity, ii) motion reaction forces resulting from body rotations are negligible w.r.t. those produced
by translational motion. Finally, the non-dependence upon
the acceleration variables ẍ and ω̇ is justified when addedmass effects can be neglected, a property which essentially
depends on the ambient fluid and is usually made when
gravity is not, for a large part, compensated for by buoyancy,
i.e. when the body’s mass is significantly larger than the
mass of fluid occupying the same volume. The example of a
dense spherical body whose center coincides with its center
6437
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
of mass can be used to concretize a physical situation for
which Assumption 1 holds with a good approximation.
Two complementary assumptions, much less restrictive
than the previous one, but very important for control design
and analysis purposes are the following.
Assumption 2 There exist two real numbers c1 ≥ 0, c2 > 0
such that |Fe (ẋ, t)| ≤ c1 + c2 |ẋ|2 , ∀(ẋ, t) ∈ R2 × R.
Assumption 3 There exist two real numbers c3 ≥ 0, c4 > 0
such that ẋ′ Fe (ẋ, t) ≤ c3 |ẋ| − c4 |ẋ|3 , ∀(ẋ, t) ∈ R2 × R.
Assumption 2 essentially indicates that the intensity of
F~e does not grow faster than the square of the intensity of
the body’s velocity vector. This is consistent with models of
aerodynamic and hydrodynamic drag (and lift) forces. The
constant c1 allows to take into account the force of gravity,
when it is active, and the action of bounded perturbating
forces produced e.g. by wind or sea-current. As for Assumption 3, it essentially accounts for the “dissipativity”, or “passivity”, property associated with drag forces. In particular,
it says that for large velocities, the negative work of drag
forces increases like the cube of the body’s apparent velocity
and becomes predominant. This property plays a crucial role
for the effective on-line estimation of Fe and, subsequently,
the design of control laws endowed with good stabilization
properties in a large operational domain.
Finally, to avoid non-essential technicalities in the analysis, we make the following assumption which, clearly, is
little restrictive from an application viewpoint.
Assumption 4 The reference velocity ~vr is bounded in norm
by a constant v̄r , and its first and second order derivatives
d
d2
vr and dt
vr are well defined and bounded.
2~
dt ~
III. BALANCED -F ORCE -C ONTROL DESIGN
As pointed out before, linear control methods can be (and
have been widely) used to control thrust-propelled vehicles.
Usually, a slowly-time-varying assumption is implicitly made
about the considered linear approximation of the system’s
equations. It is well justified when the desired velocity varies
itself slowly, and in the absence of strong and rapidly varying
perturbations due, for instance, to wind gusts. By nature,
the domain of stability granted by this type of control is
local. In this section, we instead propose a nonlinear control
design based on the considerations exposed in the previous
section. We have chosen to address the control objectives
“incrementally” by first considering the problem of stabilizing a desired velocity, and then complementing the obtained
control solution in order to track a desired position-trajectory.
This decomposition is not only convenient to introduce
technical complications progressively, it also corresponds to
two different control modes of practical interest.
It follows from Assumption 1 that System (2) can be
rewritten as
ẍ = ΓT R(θ)e1 + Γe (ẋ, t)
(5)
FrC18.5
with ΓT := T /m and Γe := Fe /m. To avoid the dependence
of the control expressions on the mass variable m, we will
use, from now on, ΓT , instead of T , as the thrust control
variable. Note that Assumptions 1–3 are also satisfied when
Fe is replaced by Γe and each ci is replaced by ci /m.
A. Estimation of the environment force
The information available on F~e or, equivalently, on Γe
is central to the design of effective feedback control laws.
Some of the external forces (like gravity or buoyancy) are
often known in advance with a good degree of accuracy.
Others (like drag or lift forces) are much more difficult
to model and/or measure. Unpredictable aero/hydrodynamic
effects induced, for instance, by wind gusts or sea-currents
complicate the matter even more. In practice, accelerometers
may be used to measure ẍ and, subsequently, Γe when
the thrust force and the vehicle’s orientation are themselves
available to measurement. It is also possible to design an
observer of Γe based on thrust, velocity, and orientation
measurements. This may first seem difficult, especially in
the absence of a good model of Γe . However, when the
time-derivative of Γe is bounded, a simple solution to this
problem, based on the use of large estimation gains, exists.
This boundedness property is in turn granted when the thrust
power cannot exceed the power of the dissipative forces.
More precisely, we have:
Lemma 1 Assume that ΓT is calculated according to a
feedback law such that, for some constants β1 , β2 ,
|ΓT | ≤ β1 + β2 |ẋ|
(6)
and let to denote the control initial time. Then, for any continuous time-function θ(.) defined on [t0 , ∞), the solutions
of System (5) controlled by ΓT are complete1 , and ẋ, Γe , and
Γ̇e are u.u.b. along these solutions by a value independent
of θ(.).
Consider now the following observer of Γe , assuming that
ΓT , ẋ, and θ are measured
( d
ˆ
ˆ
dt ẋ = ΓT R(θ)e1 + Γ̂e + ko (ẋ − ẋ)
(7)
˙
ˆ
Γ̂e
= a2 ko2 (ẋ − ẋ)
ˆ an estimate of ẋ, Γ̂e the estimate of Γe , and a, ko
with ẋ
some positive control gains.
Proposition 1 Assume that the solutions of System (5) are
complete and that√Γ̇e is u.u.b.
along these solutions. Then,
√
for any a ∈ (1 − 22 , 1 + 22 ),
1) The solutions of System (7) are complete,
ˆ and |Γe − Γ̂e | are u.u.b. by
2) The estimation errors |ẋ − ẋ|
a constant ε(ko ) which tends to zero when ko tends to +∞,
˙
3) Γ̂e is u.u.b. by a constant independent of ko .
Lemma 1 and Proposition 1 indicate an important property
of System (5) (under Assumptions 1 and 3). If the thrust
6438
1 i.e.,
defined for all t ≥ to .
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
control ΓT satisfies the inequality (6), and θ is well defined
at all time-instants, then one can “theoretically” obtain an arbitrarily good estimate of Γe by increasing the observer gain
ko as much as needed2 . This suggests a type of “separation
principle” allowing to address the observer and controller
design problems separately. We adopt this strategy in the
forthcoming sections dedicated to the controller design, by
assuming that Γe is perfectly known. The stability of the
obtained controllers, when Γe is replaced by Γ̂e in the control
expression, needs to –and can– be formally justified, but will
not be established here due to space limitations.
B. Velocity control
We consider the problem of asymptotically stabilizing the
velocity error ẋ − ẋr to zero, with ẋr the (desired) reference
velocity. This problem is clearly equivalent to the asymptotic
stabilization of ṽ = (ṽ1 , ṽ2 )′ = R(θ)′ (ẋ − ẋr ) to zero. It
follows from (5) that ṽ satisfies the following dynamics:
ṽ˙ = −ωSṽ + ΓT e1 + R(θ)′ Γa (ẋ, t)
(8)
Γa (ẋ, t) = Γe (ẋ, t) − ẍr
(9)
with
The control design approach here proposed relies on the
satisfaction of conditions similar to those needed for the
applicability of classical linear control techniques. As already
pointed out in Section 2, one of these conditions is that the
d
~vr or, equivalently, Γa as defined by
apparent force F~e −m dt
(9) is not equal to zero. In particular, this condition must be
satisfied when the vehicle moves with the desired velocity.
Assumption 5 There exists δ > 0 such that, for all t,
|Γa (ẋr (t), t)| > δ.
Assumption 5 ensures the existence of the desired orientation
θ∗ (t) = arctan2(Γa,2 (ẋ(t), t), Γa,1 (ẋ(t), t))
(10)
locally around the desired velocity, and the possibility of
decomposing Γa (ẋ(t), t) as follows:
Γa (ẋ(t), t) = −|Γa (ẋ(t), t)|R(θ ∗ (t))e1
= |Γa (ẋ(t), t)|R(θ ∗ (t) + π)e1
Each of the above decompositions of Γa can be associated
with a stabilizing control law which guarantees the convergence of the velocity error ṽ to zero and the one of θ
either to θ ∗ or to θ ∗ + π. These two solutions correspond
to the two possible orientations for which the equation
0 = ΓT e1 + R(θ)′ Γa admits a solution (compare with
(8)). In order to avoid the complication of dealing with two
cases, and since the adaptation of one case from the other is
straightforward, we will assume from now on that the goal
is to have θ converge to θ ∗ (rather than θ ∗ + π), this choice
being consistent with the decision of stabilizing the desired
velocity with a positive thrust T = mΓT . The convergence
2 In
practice, there are also well-known reasons (control discretization,
measurement noise,...) for not choosing these gains too large, so that a
compromise has to be found.
FrC18.5
of θ to θ ∗ is equivalent to the convergence of the orientation
error θ̃ to zero, with θ̃ ∈ (−π, π] given by3
θ̃ = arctan2(R2 (−θ)Γa (ẋ(t), t), −R1 (−θ)Γa (ẋ(t), t))
(11)
with Ri (−θ), i = 1, 2, the i-th row of R(θ)′ = R(−θ).
Let sn : S1 −→ R denote a smooth function strictly
positive on (0, π) and strictly negative on (−π, 0), and whose
derivative at zero is different from zero (thus positive). An
example of such a function is the common sine function.
Proposition 2 Suppose that i) Assumption 5 holds true, and
ii) the feedback law
½
ΓT = |Γa |(cos θ̃ − k1 ṽ1 )
(12)
ω
= θ̇∗ − |Γa |(k2 ṽ2 + k3 sn(θ̃))
with k1,2,3 > 0, is applied to System (8) complemented with
˙
the equation θ̃ = ω − θ̇∗ . Then, (ṽ, θ̃) = (0, 0) is a locally
asymptotically stable equilibrium point.
The control law (12) only ensures the local asymptotic
stability of (ṽ, θ̃) = (0, 0), and its implementation raises a
few issues when the initial errors (ṽ(0), θ̃(0)) are not small.
The first one is that the control expression is not necessarily
well defined at points where Γa (ẋ, t) vanishes. The problem
is not that θ ∗ , and thus θ̃, are not defined in this case, because
the terms |Γa | cos θ̃ and |Γa |sn(θ̃) in (12) are well-defined
by continuity when |Γa | = 0 (they are equal to zero). The
problematic term is θ̇∗ , which, in view of (10), is equal to
Γ̇a,2 (ẋ(t), t)Γa,1 (ẋ(t), t) − Γ̇a,1 (ẋ(t), t)Γa,2 (ẋ(t), t)
|Γa (ẋ, t)|2
and cannot, in general, be defined by continuity at Γa = 0.
Another issue is that Γe (and subsequently Γa ) is not a
bounded function (cf. Assumption 2–3), so that the control
law ΓT defined by (12) does not satisfy Condition (6).
Therefore, by contrast with the local case, the existence and
completeness of the system’s solutions for “large” initial
errors (ṽ(0), θ̃(0)) is not guaranteed, nor is the performance
of the observer (7) of Γe . In order to bypass these difficulties,
we propose below a modification of the control law (12).
Let Γd denote a control design time-dependent vector the
role and choice of which will be shortly commented upon
further. At this point, we only need to assume that both the
functions Γd and Γ̇d are bounded. The equation (8) can be
rewritten as
ṽ˙ = −ωSṽ + ΓT e1 + R(θ)′ Γ̄a + R(θ)′ (Γe,d − satM (Γe,d ))
(13)
with
Γe,d = Γe − Γd
Γ̄a = Γ̄a (ẋ, t) = Γd (t) + satM (Γe,d (ẋ, t)) − ẍr (t)
(14)
and satM (.) a continuous “saturation function” such that
3 Note that, by calculating θ̃ in this way, a representation singularity
(i.e. discontinuity) occurs only when the orientation error is equal to ±π
whereas, by using a standard difference θ − θ ∗ with θ, θ ∗ ∈ (−π, π], such
a singularity occurs whenever either θ or θ ∗ is equal to ±π.
6439
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
satM (γ) = γ if |γ| ≤ M ,
|satM (γ)| ≤ M̄ ∀γ,
ξ ′ satM (γ) = η(γ)ξ ′ γ, with η(γ) ≤ 1 (∀(ξ, γ)),
the function t −
7 → satM (γ(t)) is right-differentiable
along any smooth curve γ(t), and its derivative is
bounded if γ̇(t) is bounded.
A possible choice for satM (.), for which M = M̄ , is the
classical saturation function defined as
1)
2)
3)
4)
satM (γ) = γ min(1, M/|γ|)
(15)
It follows from (14), Assumption 4, and the boundedness
of Γd , that there exists ∆ > 0 such that, along any system’s
solution
|Γ̄a (ẋ(t), t)| ≤ ∆
(16)
Since Γd is bounded by assumption, it follows from
Assumptions 2–3 (recall that Γe = Fe /m) and (14) that there
exist positive constants c̄1 , . . . , c̄4 such that, ∀(ẋ, t) ∈ R2 ×R,
|Γe,d (ẋ, t)| ≤ c̄1 + c̄2 |ẋ|2 ,
ẋ Γe,d (ẋ, t) ≤ c̄3 |ẋ| − c̄4 |ẋ|3
′
(17)
Note that the c̄i ’s are independent of M (provided that Γd
itself is independent of M ).
Let us now assume that M > c̄1 + c̄2 v̄r2 (recall that v̄r
denotes an upper-bound of |~vr | = |ẋr |). Then, it follows
from (17) that |Γe,d (ẋr , t)| < M and thus, by (14) and the
properties of the function satM , that Γ̄a (ẋr , t) = Γa (ẋr , t),
so that, by Assumption 5, the desired orientation (compare
with (10))
θ∗ (t) = arctan2(Γ̄a,2 (ẋ(t), t), Γ̄a,1 (ẋ(t), t))
(18)
and the orientation error θ̃ ∈ (−π, π] given by
θ̃ = arctan2(R2 (−θ)Γ̄a (ẋ(t), t), −R1 (−θ)Γ̄a (ẋ(t), t))
(19)
are well defined around the desired velocity. Now, let us
denote by µ : [0, +∞) −→ [0, 1] the function of class C 1
defined by
½
2
sin( 2πs
δ 2 ) , if s ≤ δ/2
(20)
µ(s) =
1,
otherwise
Proposition 3 Suppose that i) Assumption 5 holds true, ii)
M > c̄1 + c̄2 v̄r2 , and iii) the feedback law
½
ΓT = |Γ̄a |(cos θ̃ − k1 ṽ1 )
(21)
ω
= µ(|Γ̄a |)θ̇∗ − |Γ̄a |(k2 ṽ2 + k3 sn(θ̃))
with k1,2,3 > 0, is applied to System (8) complemented with
˙
the equation θ̃ = ω − θ̇∗ . Then,
1) The solutions of the closed-loop system are complete.
2) ṽ and ω are u.u.b. along the solutions of this system.
3) (ṽ, θ̃) = (0, 0) is a locally asymptotically stable
equilibrium point.
Remark: Since the control law (21) ensures the uniform
ultimate boundedness of the system’s solutions and the local
asymptotic stability of (ṽ, θ̃) = (0, 0), one may wonder
whether global or semi-global asymptotic stability of this
FrC18.5
point can be obtained. A well known topological obstruction
rules out global asymptotic stability, because the control
law (21) is continuous and S1 is not simply connected.
In particular, (ṽ, θ̃) = (0, π) is also an (unstable) equilibrium point of the closed-loop system. The intensity of
the “attraction” of the desired equilibrium (ṽ, θ̃) = (0, 0)
depends on the “shape” of the function sn. In this respect, a
function whose amplitude is small in a “large” neighborhood
of θ̃ = π is not best suited. A better choice is e.g. sn(θ̃) =
(1 + n(sin(θ̃/2))2 ) sin θ̃, with n a “large” positive number.
In fact, if θ̃(0) 6= π, as long as Γ̄a does not vanish, the
continuity of the function sn is not a strict requirement and
one may set e.g. sn(θ̃) = tan(θ̃/2). Now, the size of the
attraction domain also depends on the domain on which Γ̄a
does not vanish. From (14), the satisfaction of this latter
condition in turn depends on several factors: the vehicle itself
and associated properties of Γe (in relation to the role of
gravity for VTOL vehicles, in particular), the choice of M ,
the saturation function satM , and Γd . Note also that even
when the “accidental” crossing of zero by Γ̄a cannot be ruled
out, the system may well recover from such an accident. All
these issues could be explored in future studies.
C. Velocity control with integral term
The control law (21) ensures the convergence of the
velocity error to zero provided that Γe is perfectly known.
We have seen that an observer like (7) can yield this result
(modulo an arbitrary small error) when ẋ, θ, and ΓT are
measured. However, in practice, the measurement of ΓT is
usually not perfect. For instance, the vehicle’s mass m and/or
the thrust intensity T may not be known exactly. This will
in turn yield a constant bias in the estimation of Γe when all
(vehicle, wind or current, reference) velocities are constant.
A common way to reduce the effect of such a bias consists
in complementing the control law with an integral correction
term. We show in this section how this can be done while
preserving the main properties of the control. Define
Z t
ẋ(s) − ẋr (s) ds + I0
(22)
Iv (t) =
t0
where I0 is an arbitrary constant, and let h(.) denote a
smooth positive function defined on [0, +∞) and such that,
for some constants η, β > 0,
√
∂h
(23)
s h(s) < η and |s (s)| < β
∀s > 0,
∂s
and
√
(h(s) s −→ 0) =⇒ (s −→ 0)
(24)
An example of such function is defined by h(s) = η/(1 +
√
s) with η > 0 a constant. Note that the continuity of h and
the first relation in (23) imply that h is a bounded function.
Given any such function h, Eq. (13) can be rewritten as:
ṽ˙ = −ωSṽ − R(θ)′ h(|Iv |2 )Iv + ΓT e1 + R(θ)′ Γ̄a
(25)
+ R(θ)′ (Γe,d − satM (Γe,d ))
with Γ̄a defined as (compare with (14))
6440
Γ̄a = Γd + h(|Iv |2 )Iv + satM (Γe,d ) − ẍr
(26)
46th IEEE CDC, New Orleans, USA, Dec. 12-14, 2007
FrC18.5
It follows from (23) that the term h(|Iv |2 )Iv is bounded in
norm by η so that, like in the previous section, Γ̄a so defined
satisfies the inequality (16) (for some constant ∆).
which can be rewritten as (compare with (13)–(26))
Proposition 4 Suppose that i) Assumption 5 holds true, ii)
M > c̄1 + c̄2 v̄r2 , and iii) the feedback law
½
ΓT = |Γ̄a |(cos θ̃ − k1 ṽ1 )
(27)
ω
= µ(|Γ̄a |)θ̇∗ − |Γ̄a |(k2 ṽ2 + k3 sn(θ̃))
with
with k1,2,3 > 0 and θ ∗ defined by (18,26), is applied to
˙
System (8) complemented with the equations θ̃ = ω − θ̇∗ and
d
dt Iv = R(θ)ṽ. Then,
1) The solutions of the closed-loop system are complete,
2) ṽ and ω are u.u.b. along the solutions of this system,
3) (Iv , ṽ, θ̃) = (0, 0, 0) is a locally asymptotically stable
equilibrium point.
The reason for the first inequality in (23) is to ensure, via
the choice of a sufficiently small η, the non-vanishing of Γ̄a
locally and, subsequently, the existence of θ ∗ . In practice,
η should not be chosen too small either, for the correction
term to be effective.
D. Position control
Let us now address the problem of stabilizing to zero both
the velocity error ẋ − ẋr and the position error x̃ = x − xr .
A first solution to this problem is provided by the control
law proposed in the previous section since, by setting I0 =
x(0)−xr (0) in (22), one has Iv = x̃. Now, alike the velocity
stabilization case, it can be useful in practice to complement
the control action with a position error integral term. Again,
this modification must keep the thrust intensity within some
limits and comply with the constraint of the existence of θ ∗ .
To this purpose, the integral of the position error is not, by
itself, suitable because it is not uniformly bounded a priori,
and we propose to replace it by a “bounded approximation”
based on a nonlinear dynamic extension. Let y := x̃+z with
z denoting the solution to the following system (with x̃sat
playing here the role of the system input)
½
z̈ = −βp (z − w) − βv ż
(28)
ẇ = kw x̃sat
with βp , βv , kw > 0, and x̃sat the variable defined by
(
T
x̃ − (ww2x̃)w if |w| ≥ wsat and wT x̃ ≥ 0 ,
x̃sat =
sat
x̃
otherwise
with wsat > 0. When choosing z(0) = ż(0) = w(0) = 0,
then |w(t)| ≤ wsat , ∀t, and |z|, |ż|, and |z̈| are bounded
by values proportional to wsat . When |w| is not saturated,
then x̃sat = x̃ and w is the integral of x̃ (modulo the
gain kw ). For this reason z can be viewed as a (high-order)
bounded integral of x̃, with bounded first and second order
time derivatives.
Let v̄ := ṽ + R(θ)′ ż. It follows from (8) and (28) that the
time derivative of v̄ satisfies the following equation:
v̄˙ = −ωSv̄ + ΓT e1 + R(θ)′ z̈ + R(θ)′ (Γe − ẍr )
v̄˙ = −ωSv̄ − R(θ)′ h(|y|2 )y + ΓT e1 + R(θ)′ Γ̄a
+ R(θ)′ (Γe,d − satM (Γe,d ))
(29)
Γ̄a = Γd + h(|y|2 )y + z̈ + satM (Γe,d ) − ẍr
(30)
and h : [0, +∞) −→ (0, +∞) a smooth function satisfying
(23) and (24). Note that |Γ̄a | is uniformly bounded, as for the
previous control expressions. From here, the control design
and stability analysis follow essentially the same lines as
those of Sections III-B and III-C.
Proposition 5 Suppose that i) Assumption 5 holds true, ii)
M > c̄1 + c̄2 v̄r2 , and iii) the feedback law
½
ΓT = |Γ̄a |(cos θ̃ − k1 v̄1 )
(31)
ω
= µ(|Γ̄a |)θ̇∗ − |Γ̄a |(k2 v̄2 + k3 sn(θ̃))
with k1,2,3 > 0 and θ ∗ defined by (18,30), is applied to
˙
System (8) complemented with the equations θ̃ = ω − θ̇∗ and
(28). Then,
1) The solutions of the closed-loop system are complete,
2) ṽ and ω are u.u.b.
along the solutions of this system,
R
3) If kw < βp , ( x̃, z, ż, x̃, ṽ, θ̃) = (0, 0, 0, 0, 0, 0) is a
locally asymptotically stable equilibrium point.
Acknowledgments: The authors thank Prof. T. Hamel for
sharing with them his knowledge about the control of VTOL
vehicles, and for his remarks and suggestions on this paper.
R EFERENCES
[1] J. Hauser, S. Sastry, and G. Meyer, “Nonlinear control design for
slightly non-minimum phase systems: Application to v/stol,” Automatica, vol. 28, pp. 651–670, 1992.
[2] O. Shakernia, Y. Ma, T. Koo, and S. Sastry, “Landing an unmanned
air vehicle: Vision based motion estimation and nonlinear control,”
Asian Journal of Control, vol. 1, no. 3, pp. 128–145, 1999.
[3] L. Marconi, A. Isidori, and A. Serrani, “Autonomous vertical landing
on an oscillating platform: an internal-model based approach,” Automatica, vol. 38, pp. 21–32, 2002.
[4] A. Isidori, L. Marconi, and A. Serrani, Robust autonomous guidance
: an internal model approach, ser. Advances in industrial control.
Springer Verlag, 2003.
[5] T. Fossen, Guidance and control of ocean vehicles. Wiley, 1994.
[6] B. Etkin and L. Reid, Dynamics of Flight: Stability and Control,
3rd ed. John Wiley and Sons, 1996.
[7] M. Abzug and E. Larrabee, Airplane Stability and Control, 2nd ed.
Cambridge University Press, 2002.
[8] T. Hamel, R. Mahony, R. Lozano, and J. Ostrowski, “Dynamic
modelling and configuration stabilization for an x4-flyer,” in IFAC
World Congress, 2002, pp. 200–212.
[9] S. Saripalli, J. Montgomery, and G. Sukhatme, “Vision based autonomous landing of an unmanned aerial vehicle,” in IEEE Conf. on
Robotics and Automation (ICRA), 2002, pp. 2799–2804.
[10] R. Sepulchre, M. Janković, and P. Kokotović, Constructive Nonlinear
Control. Springer-Verlag, 1997.
[11] J.-M. Pflimlin, T. Hamel, P. Soures, and R. Mahony, “A hierarchical
control strategy for the autonomous navigation of a ducted fan flying
robot,” in IEEE Conf. on Robotics and Automation (ICRA), 2006, pp.
2491– 2496.
[12] E. Frazzoli, M. D. M. A., and E. Feron, “Real-time motion planning
for agile autonomous vehicles,” AIAA Journal of Guidance Control
and Dynamics, vol. 25, no. 1, pp. 116–129, 2002.
[13] J. Refsnes, K. Pettersen, and A. Sørensen, “Control of slender body
underactuated auvs with current estimation,” in IEEE Conf. on Decision and Control (CDC), 2006, pp. 43–50.
6441