Fault Tolerant Path Following For A Quadrotor

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 6

52nd IEEE Conference on Decision and Control

December 10-13, 2013. Florence, Italy

Fault Tolerant Path Following for a Quadrotor


Adeel Akhtar, Steven L. Waslander, Christopher Nielsen

Abstract— This paper presents a path following controller trajectory tracking by following the inner-outer loop control
for a quadrotor UAV experiencing a single rotor failure. A structure.
smooth, dynamic feedback control law is proposed that allows In this work, a path following controller is proposed for
the quadrotor to follow both closed and non-closed embedded
curves while maintaining a desired velocity profile along the the case when one rotor of the quadrotor encounters a failure.
path when one out of four motors is completely disabled due to The control design process is challenging because it requires
failure. The nonlinear model of the quadrotor is transformed the controller to manage six degrees of freedom using only
into a partially linear model by a coordinate and feedback three control inputs instead of four. It is shown in this work
transformation. A path following controller is designed for that using fault tolerant path following, the system can be
transformed system that guarantees invariance of the path.
The uncontrolled nonlinear portion of the dynamics (internal made to stay precisely on the path, in other words path
dynamics) are shown to be bounded. invariance can be achieved while the quadrotor is running
only on three rotors. Unlike the previous work for the case
I. I NTRODUCTION of fault-free system [5] where the system was shown to be
A quadrotor is an aerial mobile robot with a four rotor differentially flat, the three rotor system is not differentially
setup in a cross configuration. Many indoor applications exist flat, but instead presents uncontrolled internal dynamics.
for the quadrotor, which require reliable operation in clut- Nonetheless, it is shown that the vehicle is still able to follow
tered environments. In such a scenario, the quadrotor needs the given path, maintain the desired speed along the path, and
to follow a given path precisely in order to avoid obstacles. does not rotate at an unbounded rate.
However, due to unknown disturbances and uncertainties in 1) Notation: The point-to-set distance from a point x ∈
the environment, there exists the possibility that one of the Rm to a set Γ ⊂ Rn is denoted by kxkΓ := inf p∈Γ kx − pk
rotors of a quadrotor come in contact with an obstacle. Such where k · k is the Euclidean norm. Given two vectors
accidents can cause a large imbalance in the body torques x, y ∈ Rn the inner product is denoted by hx, yi and, when
and typical controllers may result in loss of the vehicle, or n = 3, the vector (cross) product is denoted by x × y.
in an extreme case, collision with a human being. Trigonometric functions are abbreviated as Si := sin (xi ),
The dynamics of the quadrotor vehicle are nonlinear Ci := cos (xi ) and Ti := tan(xi ). Let col(xi , . . . , xk ) :=
⊤
and various works have proposed nonlinear controllers for where ⊤ denotes transpose. Given a C 1

xi · · · xk
fault-free stabilization. Feedback linearization [1]–[3] and map f : R → R and a point p ∈ Rn , the Jacobian of f
n m
backstepping [4] are the most commonly used techniques, evaluated at p is denoted dfp . If f, g : Rn → Rn and λ :
and have both been implemented and demonstrated in flight Rn → R are smooth, we use the following standard notation
in nominal hover conditions. for iterated Lie derivatives L0g λ := λ, Lkg λ := Lg (Lgk−1 λ),
Most of the controllers presented for quadrotors are tra- Lg Lf λ := Lg (Lf λ).
jectory tracking controllers. In [5] the authors present a path
following controller for a fault-free quadrotor system. The II. DYNAMIC MODEL OF THE QUADROTOR
path following controller provides certain advantages such A fault-free quadrotor is a nonlinear unmanned aerial
as path invariance, ensuring that once the system gets on the vehicle (UAV) consisting of four actuators, i.e., four motors
path it will stay on the path for all future time, which is with rotors attached. Two diagonal motors M1 and M3 rotate
beneficial when working in close proximity to obstacles. in one direction while the other two M2 and M4 rotate
Compared to the fault-free case, less research has been in the opposite direction. Because of this configuration the
done for fault tolerant control of quadrotors. In [6], [7] the gyroscopic effects and aerodynamic effects tend to balance
authors propose a fault tolerant controller for quadrotors each other. The inertial and body frames are represented,
using sliding mode control. In [8] the authors proposed respectively, by I and B. Let χ := col(xI , yI , zI ) ∈ R3
a fault tolerant controller based on trajectory linearization and χ̇ := col(ẋI , ẏI , żI ) ∈ R3 represent, respectively, the
when one rotor of the quadrotor fails. In [9] the authors position and velocity of a quadrotor in the frame I. The
applied feedback linearization and discussed the problem of attitude of the quadrotor is represented by the Euler angles
Ω := col(φ, θ, ψ) ∈ R3 . Let the body rates be represented
Supported by the Natural Sciences and Engineering Research Council of
Canada (NSERC). as ω := col(p, q, r) ∈ R3 . For a detailed discussion on
A. Akhtar and S. Waslander are with the Department of Mechani- quadrotor modelling, the reader is referred to [9]–[11]. Let
cal and Mechatronics Engineering and C. Nielsen is with the Depart- the state vector of the quadrotor be x := col(x1 , . . . , x12 ) =
ment of Electrical and Computer Engineering, University of Waterloo,
200 University Avenue West, Waterloo, Ontario, Canada, N2L 3G1. col(Ω, ω, χ, χ̇) ∈ R12 . It is shown in [9] that using an Euler-
{a5akhtar,stevenw cnielsen}@uwaterloo.ca Lagrange approach, the state space model of the quadrotor

978-1-4673-5717-3/13/$31.00 ©2013 IEEE 847


can be represented as, Without loss of generality, assume the second motor M2
fails due to collision. A fault diagnosis system detects a
ẋ1 = x4 + x5 S1 T2 + x6 C1 T2
severe effect on the vehicle roll control, and triggers the
ẋ2 = x5 C1 − x6 S1 switch from the fault-free state to the faulty state and turns
ẋ3 = sec (x2 )(x5 S1 + x6 C1 ) off M2 completely. The new control inputs are τf , τq , τr ,
ẋ4 = −((Iz − Iy )/Ix )x5 x6 − (kr x4 /Ix ) + (1/Ix )τp and (2) becomes
τf 1 1 1
   
ẋ5 = −((Ix − Iz )/Iy )x4 x6 − (kr x5 /Iy ) + (1/Iy )τq  
ẋ6 = −((Iy − Ix )/Iz )x4 x5 − (kr x6 /Iz ) + (1/Iz )τr  τ   0 0 l  f1
 p  
(1) =   f3  . (3)
 
 τq   −l l 0 

ẋ7 = x10
f4
ẋ8 = x11 τr d d −d
ẋ9 = x12 The expression τp = lf4 = τf − τdr can be substituted into
ẋ10 = (−kt x10 /m) + (1/m)(C1 S2 C3 + S1 S3 )τf the quadrotor model (1). As in the fault-free case, the output
ẋ11 = (−kt x11 /m) + (1/m)(C1 S2 S3 − S1 C3 )τf of the quadrotor is the position of the center of gravity of
the quadrotor in the inertial frame
ẋ12 = (−kt x12 /m) + g − (1/m)(C1 C2 )τf ,  ⊤
y(x) = h(χ) = x7 x8 x9 . (4)
where, Ix , Iy , Iz represent inertia, m represents mass of the
quadrotor, kt and kr represent the translational and rotational IV. P ROBLEM S TATEMENT
drag coefficients and are assumed to be constant in all Most commonly, the goal in path following is to force the
directions for simplicity. The control inputs are represented output of the given system to converge and move along a
by τp , τq , τr , and τf . The acceleration due to gravity is path. The path is generally not pre-assigned a timing law
represented by g. which makes a path different from a trajectory.
The forces and torques in the body axis are given by Consider a regular, smooth curve γ ⊂ R3 in the quadro-
τf 1 1 1 1 f1 tor’s output space. Let σ : D → R3 be a unit-speed
    
 τ   0 −l 0 l   f  parameterization of γ, i.e., γ = σ(D). For non-closed curves
 p    2 
= , (2) D = R. For closed curves of length L > 0, D = R mod L
 τq   −l 0 l 0   f3 
 
and σ is L-periodic, i.e., for any λ ∈ D, σ(λ + L) = σ(L).
τr d −d d −d f4 Similar to our previous work [5], the following assumptions
where, l is the distance from the center of mass to the rotors, are imposed.
d is the ratio between the drag and the thrust coefficients of Assumption 1. The curve γ ⊂ R3 is a one-dimensional
the blade and fi for i = {1, 2, 3, 4} are the forces generated embedded submanifold. There exists a smooth map s : R3 →
by the four rotors of the quadrotor. R2 so that γ = s−1 (0) with rank (dsy ) = 2 for all y ∈ γ.
III. FAULT T OLERANT C ONTROL S YSTEM The path γ can be lifted to the quadrotor’s state space
Informally, a fault tolerant control (FTC) system is a sys- Γ := x ∈ R12 : s1 (h(x)) = s2 (h(x)) = 0 .

tem that can maintain stability in the presence of particular
faults. The fault tolerant path following control considered Forcing y → γ is equivalent to making x → Γ. However, in
in this paper is based on the assumption that path following general Γ can not be made invariant, so we seek to stabilize
must be maintained in the event one of the rotors no longer a subset of Γ [5].
provides any thrust or moment. Such a scenario generally Given a path that satisfies Assumption 1, we seek a smooth
occurs when a rotor collides with a static object in the dynamic feedback law
environment, causing the rotor blade to break, a propeller ζ̇ = A(x, ζ) + B(x, ζ)u
loss, or an electrical failure. During typical operation the (5)
quadrotor flies in a fault-free fashion and the path following u = C(x, ζ) + D(x, ζ)u,
controller [5] designed in our previous work can be used. with1 ζ ∈ Rqe, u ∈ R3 and an open subset of initial conditions
However, when a failure occurs, the goal of path following in a neighborhood of the lift of the path, such that the
becomes more challenging because the requirements of path quadrotor with one damaged rotor meets the following goals,
invariance and pre-defined velocity profile tracking must be G1 The system asymptotically approaches the path,
maintained using only three motors. The controller is of kh(x(t))kγ → 0 as t → ∞.
practical importance because it allows a quadrotor to recover G2 The zero level set s(y) is output invariant for all t ≥ 0.
from a single rotor failure and maintain path invariance at the G3 On the path, the system follows a desired speed profile
expense of independent control over yaw angle. The result along the curve.
is a vehicle that spins about its body z-axis while travelling G4 The body rates p, q, r remain bounded, i.e., |p| < ∞,
along the path. The rate at which the yaw varies can be |q| < ∞, and |r| < ∞ for all t ≥ 0.
bounded, allowing for safe operation in the presence of such
a failure. 1 The dimension qe of the controller state ζ is not fixed a priori.

848
G5 The system does not spin at unbounded rate about its Assumption 1, we refine the “virtual output” function ŷ to
axis, i.e., |ψ̇| < ∞ for all t ≥ 0. be    
α1 (x7 , x8 , x9 ) s1 ◦ h(χ)
A. Dynamic Extension ŷ =  α2 (x7 , x8 , x9 )  =  s2 ◦ h(χ)  . (9)
   

As discussed in [5], [12]–[14], the largest controlled π(x7 , x8 , x9 ) ̟ ◦ h(χ)


invariant submanifold Γ⋆ contained in Γ is called the path The next two results are presented to support our claim that
following manifold. The path following manifold is key to the extended system has a well-defined vector relative degree
solving the path following problem because by a suitable at each point of the path following manifold. The first is
choice of the control input all the associated trajectories can presented without proof as it is the well known triple product
be made to remain on the desired path. Making Γ⋆ attractive result from linear algebra.
and invariant implies the fulfilment of G1 and G2. In order
to find Γ⋆ we first define Lemma V.1 ( [16]). If v1 ,v2 ,v3 are linearly independent
" # " # vectors in R3 then hv1 , (v2 × v3 )i 6= 0.
α1 (x) s1 ◦ h(x)
α= := s ◦ h(x) = . (6) Let dχ αi := col( ∂α i ∂αi ∂αi
∂x7 , ∂x8 , ∂x9 ) for i = {1, 2} and σ
′ :=
α2 (x) s2 ◦ h(x) ∂σ ∂σ ∂σ
col( ∂λ , ∂λ , ∂λ ).
With this definition we have that Γ = α−1 (0) and as a Lemma V.2. Let α1 and α2 be as defined in (6). Then, for
result, we can apply the zero dynamics algorithm [15] to the all χ ∈ γ, span{dχ α1 , dχ α2 , σ ′ } = R3 .
function α to obtain a local characterization of Γ⋆ .
Since the faulted quadrotor has only three inputs it is Proof. We first show that each of the vectors dχ α1 , dχ α2 , σ ′
natural to augment the function (6) with one additional are non zero. By assumption, σ is regular which means σ ′ 6=
function to make the number of output functions equal to the 0. Also by Assumption 1, at each y ∈ γ, dsy has rank two.
number of control inputs and then check the relative degree Since dhx = I this shows, using the chain rule, that at each
of the system with respect to the augmented output. To this χ⋆ ∈ Γ, dχ α has rank two. Since σ ′ is a tangent vector and
end let π(x7 , x8 , x9 ) be any smooth real-valued function. It is dχ α1 , dχ α2 are non-zero gradient vectors, we conclude that
easy to show, see [5], that the “virtual” output ȳ = (α, π(x)) span{dχ α1 , dχ α2 , σ ′ } = R3 as claimed.
fails to yield a well-defined relative degree for the system (1) We claim that state x13 , which represents τf , the combined
because the decoupling matrix is always rank deficient. thrust of all the rotors can not be zero in reasonable flight
This problem is overcome by delaying the appearance of conditions. In fact, x13 is zero if an only if all the rotors of
the control input τf with the help of two integrators, which the system stop spinning at the same time. Therefore, for all
are included through two additional states x13 := τf and practical purposes x13 6= 0 is a valid assumption. Moreover,
x14 := τ̇f . Let ud = τ̈f and u = col(ud , uq , ur ) ∈ R3 , we assume that in this work the system does not encounter
where ur := τr and uq := τq . With a slight abuse of gimbal lock situation2 , i.e., φ = θ 6= ±900 .
notationPwe write the extended model compactly as ẋ =
3
f (x) + i=1 gi (x)ui . As in [5], applying the zero dynamics Lemma V.3. The extended model of the quadrotor with
algorithm to the output (6) and the extended system yields output (9) yields a well-defined vector relative degree of
the path following manifold {4, 4, 4} at each point on Γ⋆ ∩ {x ∈ R14 : x13 6= 0}.
Proof. Let x⋆ ∈ Γ⋆ ∩ {x ∈ R14 : x13 6= 0} be arbitrary. By
Γ⋆ = x ∈ R14 : Lif α(x) = 0, i = 0, 1, 2, 3, 4 . (7)

definition of Γ, and since Γ⋆ ⊆ Γ, the output h(x⋆ ) is on
the path γ. Let λ⋆ ∈ D be such that h(x⋆ ) = σ(λ⋆ ). By the
V. PATH F OLLOWING C ONTROLLER D ESIGN
definition of vector relative degree we must show that
In this work the general approach for solving path fol-
lowing problem [5], [12], [14] is applied to a quadrotor Lgi Ljf π(x) = Lgi Ljf αk (x) ≡ 0
with a failed rotor. Unlike previous cases [5], [14] where the for i ∈ {1, 2, 3}, j ∈ {0, 1, 2}, k ∈ {1, 2} in a neighbour-
system was fully feedback linearized, in this paper only a hood of x⋆ and that the 3 × 3 decoupling matrix
partially feedback linearized system is obtained. The system
Lg1 L3f α1 (x⋆ ) Lg2 L3f α1 (x⋆ ) Lg3 L3f α1 (x⋆ )
 
is therefore not differentially flat with our particular choice
of output functions. We now refine the definition of π in D(x⋆ ) =  Lg1 L3f α2 (x⋆ ) Lg2 L3f α2 (x⋆ ) Lg3 L3f α2 (x⋆ )  ,
 
the virtual output ŷ of Section IV-A by choosing a function Lg1 L3f π(x⋆ ) Lg2 L3f π(x⋆ ) Lg3 L3f π(x⋆ )
similar to the one used in the fault-free case [5]. Let γǫ ⊂ R3 (10)
be a tubular neighbourhood of the path γ and define the map is non-singular. It is easy to check, by direct computations,
that the first condition holds and
̟ :γǫ → D
(8) l(x13 )2
y 7→ arg inf ky − σ(λ)k. det (D(x)) = h−dχ α1 , (dχ α2 × σ ′ )i . (11)
λ∈D Ix Iy m3 d
The above function is smooth so long as γǫ is a sufficiently 2 The singularity associated with gimbal lock is due to our choice of
small “tube” around the curve γ. With these definitions and parameterization, i.e., Euler angles, on SO(3).

849
The determinant goes to zero if and only if any term x⋆ to
in the numerator of (11) is zero or any term in the ξ˙ij = ξij+1
denominator is infinity. The terms Ix , Iy , d, l and m are
η̇j = ηj+1
finite constants. By assumption, at x⋆ ∈ Γ⋆ ∩ {x ∈
R14 : x13 6= 0}, the combined thrust x13 6= 0. By ξ̇14 = L4f α1 + Lg1 L3f α1 uf x=T −1 (η,ξ,µ)
Lemma V.2, span{dχ α1 , dχ α2 , σ ′ }(x⋆ ) = R3 and therefore, (15)
ξ̇24 = L4f α2 3
+ Lg2 Lf α2 ur x=T −1 (η,ξ,µ)
by Lemma V.1 h−dχ α1 , (dχ α2 × σ ′ )i 6= 0 at x⋆ . Thus we
have shown that for any x⋆ ∈ Γ⋆ ∩ {x ∈ R14 : x13 6= 0}, η̇4 = L4f π + Lg3 L3f πuq x=T −1 (η,ξ,µ)
det (D(x⋆ )) 6= 0, therefore the extended system has a well µ̇k = bk (η, ξ, µ)|x=T −1 (η,ξ,µ)
defined vector relative degree at x⋆ .
for i ∈ {1, 2}, j ∈ {1, 2, 3}, k ∈ {1, 2} and where bk are
The extended system has a well defined vector relative smooth nonlinear functions. The structure of (15) suggests
degree of {4, 4, 4}, which implies that the dimension of the the feedback transformation
 4   ξ1 
uf −Lf α1 v
 
internal dynamics is 14 − (4 + 4 + 4) = 2. Two additional
functions are needed to define a complete coordinate trans- u  −1 −L4 α  v ξ2 
 r  := D (x)  f 2  +   , (16)
formation. uq −L4f π vη
Corollary V.4. Let x⋆ ∈ Γ⋆ \{x ∈ R14 : x1 ±900 , x13 6= 0}.
where (v ξ1 , v ξ2 , v η ) are auxiliary control inputs. By
There exists a neighbourhood U ⊂ R14 containing x⋆ such
Lemma V.3 the feedback transformation (16) is well-defined
that the mapping T : U ⊂ R14 → T (U ) ⊂ R14 , defined by
in a neighborhood of every x⋆ ∈ Γ⋆ ∩ {x ∈ R14 : x13 6=
 i−1 0}. Thus in a neighborhood of x⋆ , the closed-loop system
Lf αj (x)
  
ξji is reduced to 3 decoupled chains of integrators and the
 i−1
 ηi  = T (x) =  Lf π(x)  , (12)
  
nonlinear internal dynamics of the system.
µk µ(x) After applying the coordinate and feedback transforma-
tions (12), (16) to the extended system the auxiliary con-
for i ∈ {1, 2, 3, 4}, j ∈ {1, 2} and k ∈ {1, 2}, is a troller design is straight forward for the linear subsystems. A
diffeomorphism. linear controller similar to [5] can be designed to stabilize the
origin of the ξ. Similarly a linear controller can be designed
Proof. The choice of (ξ, η) ∈ R12 is clear from (12). for the η−subsystem to satisfy G3.
However, the relative degree of the extended system is 2
less than the dimension of the state space. Therefore we VI. I NTERNAL DYNAMICS
must select two additional real-valued functions µ1 , µ2 to The µ-subsystem represents the internal dynamics
complete the definition of T . The distribution G0 (x) := µ̇1 (η, ξ, µ) = sec (x2 )(x6 C1 + x5 S1 )|x=T −1 (η,ξ,µ) ,
span{g1 , g2 , g3 }(x) is constant and therefore involutive. By
0.5lx13 lkr x6
[15, Proposition 5.1.2] there exist real-valued functions µ1 µ̇2 (η, ξ, µ) = − +
and µ2 whose differentials belong to the annihilator of G0 (x) Ix Iz 2Ix Iz d (17)
and complete the coordinate transformation T . Two possible kr x4 + x5 x6 (Ix − Iz )
+ .
choices are Ix Iz x=T −1 (η,ξ,µ)
µ1 := x3 , In order to prove boundedness of the internal dynamics
−x4 Lx6 (13) (Lemma VI.3), we need the following preliminary results.
µ2 := − − .
Iz 2Ix d We first analyze the stability of the set of differential equa-
tions involving the dynamics of the body rates from when
With the above choice of µ1 and µ2 it is sufficient to check the control inputs are set to zero.
the rank of the 14 × 14 Jacobian matrix. The determinant of
Jacobian matrix dT Lemma VI.1. The origin (x4 , x5 , x6 ) = (0, 0, 0) of
dx is given by
ẋ4 = −((Iz − Iy )/Ix )x5 x6 − (kr x4 )/Ix
−l(x13 )4 C1 ẋ5 = −((Ix − Iz )/Iy )x4 x6 − (kr x5 )/Iy
h−dχ α1 , (dχ α2 × σ ′ )i. (14) (18)
2Ix m6 d
ẋ6 = −((Iy − Ix )/Iz )x4 x5 − (kr x6 )/Iz .
By Lemma V.3, Equation (14) equals zero at x⋆ ∈ Γ⋆ ∩ is globally exponentially stable.
{x ∈ R14 : x13 6= 0} if and only if C1 = 0. However, by
hypothesis, the gimbal lock condition φ = θ = ±900 does Proof. We assume, without the loss of generality, that Ix ≥
not hold at x⋆ . Therefore, the Jacobian of T is non-singular in Iy ≥ Iz , and let
a neighbourhood of x⋆ and T is a local diffeomorphism. Iy − Iz Ix − Iz Ix − Iy
a1 := , a2 := , a3 :=
Ix Iy Iz
Using the coordinate transformation T from Corollary V.4, kr kr kr
k4 := , k5 := , k6 := .
the system is differentially equivalent in a neighbourhood of Ix Iy Iz
850
If Ix ≥ Iy ≥ Iz does not hold, a1 , a2 , a3 can be redefined, so a1 p1 − a2 p2 + a3 p3 = 0. Then Q := diag (k4 p1 , k5 p2 , k6 p3 )
that these constants are non-negative. With these definitions, and we have
(18) becomes V̇ = −2x⊤ Qx + 2x⊤ P Bw
ẋ4 = a1 x5 x6 − k4 x4
= −2(1 − θ)x⊤ Qx − 2θx⊤ Qx + 2x⊤ QBw, (∀ θ ∈ (0, 1))
ẋ5 = −a2 x4 x6 − k5 x5 (19)
≤ −2(1 − θ)x⊤ Qx − 2θ min {k4 p1 , k5 p2 , k6 p3 }kxk2
ẋ6 = a3 x4 x5 − k6 x6 .
+ 2x⊤ QBw
Equation (19) can be written as ẋ = f (x), for x := ≤ −2(1 − θ)x⊤ Qx − 2θ min {k4 p1 , k5 p2 , k6 p3 }kxk2
col(x4 , x5 , x6 ). Choose as a candidate Lyapunov function + 2kxkkQkkBkkwk.
V : R3 → R
Thus
kQk2 kBk2

V (x) = x P x := p1 x24 + p2 x25 + p3 x26 (20) ∀ kxk ≥ kwk,
θ min {k4 p1 , k5 p2 , k6 p3 }
where P := diag (p1 , p2 , p3 ). If p1 , p2 , p3 are positive then V̇ ≤ −(1 − θ)x⊤ Qx
V is a positive definite quadratic form. The Lie derivative of
V along the vector field (19) is where θ ∈ (0, 1). This shows, by [19, Theorem 4.19],
that (21) is ISS stable.
Lf V = 2x4 x5 x6 (a1 p1 − a2 p2 + a3 p3 )
In summary, by Lemmas VI.1 and VI.2 we have shown
− 2x⊤ diag (k4 p1 , k5 p2 , k6 p3 )x. that the body rates x4 , x5 , x6 are bounded.
Now choose p1 , p2 , p3 > 0 so that a1 p1 − a2 p2 + a3 p3 = 0. Lemma VI.3. If the control inputs uf , ur , uq of the quadro-
This is always possible, for example p1 = Ix , p2 = Iy , tor are bounded and the quadrotor avoids the gimbal lock
p3 = Iz works. In summary we have that condition (x1 = x2 = ±900), then µ̇1 and µ̇2 in (17) are
bounded. Moreover, µ2 is bounded.
(i) For all x ∈ R3 ,
Proof. By Lemma VI.2 we have shown that for any bounded
min {p1 , p2 , p3 }kxk2 ≤ V (x̄) ≤ max {p1 , p2 , p3 }kxk2 inputs, the body rates x4 , x5 , x6 are bounded. By hypothesis
the system is bounded away from Euler angle singularities
(ii) For all x ∈ R3 , (x1 = x2 = ±900 ). From the expressions (17) we have that
Lf V = −2x⊤ diag (k4 p1 , k5 p2 , k6 p3 )x |µ̇1 | ≤ sec (x2 ) (|x5 | + |x6 |) ,
≤ −2 min {k4 p1 , k5 p2 , k6 p3 }kxk 2 lkr l kr
|µ̇2 | ≤ |x6 | + |x13 | + |x4 |
max {p1 , p2 , p3 } 2dI I
x z 2I I
x z Ix Iz
2
= −2 min {k4 p1 , k5 p2 , k6 p3 } kxk Iz − Ix (22)
max {p1 , p2 , p3 } + |x5 ||x6 |,
min {k4 p1 , k5 p2 , k6 p3 } Ix Iz
≤ −2 V (x) 1 l
max {p1 , p2 , p3 } |µ2 | ≤ |x4 | − |x6 |,
Iz 2dIx
Conditions (i) and (ii) imply, by [17, Theorem 3.1], that which is bounded because the body rates are bounded and
x = 0 is globally exponentially stable. x2 6= 0 during the flight.
In summary, all the goals G1-G5 are achieved. It is
interesting to note that the internal state µ1 which repre-
Next we analyze the stability the body rate equations and sent the yaw angle may become unbounded. This implies
show that they are input-to-state stable (ISS-stable) [18]. Let that the quadrotor is spinning about its body z-axis while
k7 := l/2Ix , k8 := −1/dIx , k9 := 1/Iy , k10 := 1/Iz . traveling along the path, which is not surprising as there is
Lemma VI.2. The system (21) an imbalance in torques that results when one of the four
rotors fails. However, we have shown that rate at which the
ẋ4 = a1 x5 x6 − k4 x4 + k7 x13 + k8 u2 quadrotor spins µ̇1 = ψ̇ is bounded, which is a result of the
ẋ5 = −a2 x4 x6 − k5 x5 + k9 u3 (21) rotational drag term about the body z-axis that resists overly
fast rotation, regardless of the path traveled.
ẋ6 = a3 x4 x5 − k6 x6 + k10 u2 ,
VII. S IMULATION
is input-to-state stable.
For simulation purposes, it is assumed that the quadrotor
Proof. To be consistent with the notation we used for (19), has a mass of m = 4.493 kg, and inertias Ix = Iy = 0.177
write system (21) as ẋ = f (x) + Bw where w := kg.m2 and Iz = 0.344 kg.m2, a length l = 0.1 m and
col (x13 , ur , uq ). To prove that the system (21) is ISS-stable acceleration due to gravity is g = 9.8 m/sec2 . The initial
we show that the function (20) is an ISS-Lyapunov function. position of the quadrotor is indicated by a solid dot. The
As in the proof of Lemma VI.1, choose p1 , p2 , p3 > 0 so that values of kt and kr used in the simulation are taken from

851
the rotational and translational drag models presented in [20], 30
µ̇1
[21]. 25

µ̇1 (rad/sec)
We consider a curve at varying height given by 20

sin(x7 ) + 3 units represented as σ : R → R3 , λ 7→ 15

col(λ, cos(λ), sin(λ) + 3). The implicit representation of the 10

same curve is given by γ = {s1 (y) = s2 (y) = 0}, where 5

s1 (y) = y2 − cos(y1 ) = 0 and s2 = y3 + sin(y1 ) − 3. 0


0 10 20 30 40 50 60

The quadrotor is initialized at (x7 , x8 , x9 ) = (0, 0.9, 0). The t(sec)


results are shown in Figure 1. While following the path γ
Fig. 3. The yaw rate µ̇1 remains bounded as the quadrotor traverses the
desired path.

4
[5] A. Akhtar, S. L. Waslander, and C. Nielsen, “Path following for
a quadrotor using dynamic extension and transverse feedback lin-
3 earization,” in Decision and Control (CDC), 2012 IEEE 51st Annual
Conference on, Dec. 2012, pp. 3551 –3556.
x9 = z(m)

2 [6] T. Li, “Nonlinear and fault-tolerant control techniques for a quadrotor


1
unmanned aerial vehicle,” Concordia University, Tech. Rep., 2011.
[7] Y. Zhang and A. Chamseddine, Fault Tolerant Flight Control Tech-
0 niques with Application to a Quadrotor UAV Testbed, Automatic Flight
Control Systems. InTech, 2012.
−1
2
[8] H. Jiang, Y. Yu, X. Ding, and J. Zhu, “A fault tolerant control strategy
1 20
for quadrotor UAVs based on trajectory linearization approach,” in
0
15 Mechatronics and Automation (ICMA), 2012 International Conference
10 on, Aug. 2012, pp. 1174–1179.
−1 5
−2 0 [9] A. Freddi, A. Lanzon, and S. Longhi, “A feedback linearization
x8 = y(m) x7 = x(m) approach to fault tolerance in quadrotor vehicles,” in IFAC World
Congress, Milan, Italy, 2011, pp. 5413–5418.
[10] D. Lee and H. Kim, “Adaptive visual servo control for a quadrotor
Fig. 1. The path followed by the quadrotor is represented by a bold line helicopter,” in Control Automation and Systems (ICCAS), 2010 Inter-
and the desired path is represented by a dashed line. The initial position of national Conference on, Oct. 2010, pp. 1049–1052.
the quadrotor is represented by a solid dot. [11] G. M. Hoffmann, H. Huang, S. L. Waslander, and C. J. Tomlin,
“Precision flight control for a multi-vehicle quadrotor helicopter
the quadrotor is following the curve at a desired constant testbed,” Control Engineering Practice, vol. 19, no. 9, pp. 1023–1036,
September 2011.
speed of 0.3 m/sec, as presented in Figure 2. In Figure 3 the [12] C. Nielsen, C. Fulford, and M. Maggiore, “Path following using
transverse feedback linearization: Application to a maglev positioning
system,” Automatica, vol. 46, no. 3, pp. 585–590, March 2010.
η2 [13] L. Consolini, M. Maggiore, C. Nielsen, and M. Tosques, “Path
0.3

0.25
following for the PVTOL aircraft,” Automatica, vol. 46, no. 8, pp.
η2 (m/s)

1284–1296, August 2010.


0.2
[14] A. Akhtar and C. Nielsen, “Path following for a car-like robot using
0.15
transverse feedback linearization and tangential dynamic extension,” in
0.1
Decision and Control and European Control Conference, CDC-ECC
0.05 2011. 50th IEEE Conference on, Dec. 2011, pp. 7949 –7979.
0 [15] A. Isidori, Nonlinear Control Systems. Secaucus, NJ, U.S.A:
0 10 20 30 40 50 60
t(sec) Springer-Verlag New York, Inc., 1995.
[16] G. Strang, Linear Algebra and its applications. 111 Fifth Avenue,
New York, New York 10003: Academic Press, INC, 1976.
Fig. 2. The quadrotor is traversing the curve at the desired velocity of 0.3 [17] W. Haddad and V. Chellaboina, Nonlinear Dynamical Systems and
m/sec. Control. Prentice University Press, 2008.
[18] E. Sontag, “Smooth stabilization implies coprime factorization,” IEEE
internal state µ̇1 is shown. It represents the rate at which the Transactions on Automatic Control, vol. 34, no. 4, pp. 435–443, 1989.
[19] H. K. Khalil, Nonlinear systems, 3rd ed. Prentice Hall, 2002.
quadrotor is spinning about its axis which remains bounded. [20] P.-J. Bristeau, P. Martin, E. Salaün, and N. Petit, “The role of propeller
aerodynamics in the model of a quadrotor uav,” in European Control
Conference, 2009, pp. 683–688.
R EFERENCES [21] J. Meyer, A. Sendobry, S. Kohlbrecher, U. Klingauf, and O. von
Stryk, “Comprehensive simulation of quadrotor uavs using ros and
[1] A. Benallegue, A. Mokhtari, and L. Fridman, “Feedback linearization
gazebo,” in 3rd Int. Conf. on Simulation, Modeling and Programming
and high order sliding mode observer for a quadrotor uav,” in Variable
for Autonomous Robots (SIMPAR), 2012.
Structure Systems, 2006. VSS’06. International Workshop on, June
2006, pp. 365 –372.
[2] H. Voos, “Nonlinear control of a quadrotor micro-UAV using
feedback-linearization,” in Mechatronics, 2009. ICM 2009. IEEE In-
ternational Conference on, April 2009, pp. 1–6.
[3] D. Lee, H. Jin Kim, and S. Sastry, “Feedback linearization vs. adaptive
sliding mode control for a quadrotor helicopter,” International Journal
of Control, Automation and Systems, vol. 7, no. 3, pp. 419–428, 2009.
[4] T. Madani and A. Benallegue, “Control of a quadrotor mini-helicopter
via full state backstepping technique,” in Decision and Control, 2006
45th IEEE Conference on, Dec. 2006, pp. 1515–1520.

852

You might also like