2012 American Control Conference
Fairmont Queen Elizabeth, Montréal, Canada
June 27-June 29, 2012
Generalized Fault Recovery of an Under-Actuated Quadrotor Aerial
Vehicle
M. Ranjbaran and K. Khorasani
Abstract— Development of an autonomous fault diagnosis
and recovery system for unmanned aerial vehicles has recently
attracted a lot of interest in the research community. Design of a
reliable control system that can cope with faults and anomalies
plays an important role in ensuring efficient performance of
small aerial vehicles due to hardware redundancy limitations.
In this paper, an autonomous fault recovery scheme is
proposed in response to multiple actuator faults in an underactuated quadrotor aerial vehicle. Such a self-recovery mechanism extends the capabilities of the quadrotor system to operate
under presence of multiple faults. The developed solution
considers a control authority management by incorporating the
actuator post-fault model. Simulation results for a quadrotor
that is subject to various levels of loss-of-effectiveness faults
in multiple control channels are presented to demonstrate the
performance of our proposed approach.
I. INTRODUCTION
Research on autonomous flying robots has recently intensified considerably due to growth of civilian and military
interests in Unmanned Aerial Vehicles (UAV). UAVs have
several basic advantages over manned systems including
increased manoeuvrability, low cost, reduced radar signatures
and less risk to crews. Quadrotors have become an exciting
new area of UAV research in the past few years. It is an
aircraft that is lifted and propelled by four rotors in a cross
configuration and its basic motions are generated by varying
the speeds of all the four rotors. The uniqueness of this
type of UAV is in its vertical landing/take-off capability,
hovering ability, great maneuverability and being simple to
manufacture. The quadrotor is a 6 Degree of Freedom (DOF)
device with only four actuators, which makes it an underactuated vehicle with unstable dynamics and highly coupled
states.
It is well-known that enhanced reliability and safety of
complex and autonomous systems due to occurrence of
faults can be accomplished by incorporating Fault Detection,
Isolation and Recovery (FDIR) schemes in the design of
control systems. The FDIR module is in charge of detecting,
identifying, isolating and generating a recovery procedure to
ensure acceptable performance specifications of the system
when it is subjected to faults. The goal of the fault recovery
module is to select an optimal possible configuration of the
non-faulty actuators, sensors, and components in the system
M. Ranjbaran was with the Department of Electrical and Computer
Engineering, Concordia University, Montreal, Quebec, H3G 1M8 Canada.
She is now with the McGill University.
K. Khorasani is with the Department of Electrical and Computer Engineering, Concordia University, Montreal, Quebec, H3G 1M8 Canada
(Email:kash@ece.concordia.ca).
978-1-4577-1096-4/12/$26.00 ©2012 AACC
that is subjected to a diagnosed fault and to maintain the
overall quality of the system performance requirements.
A number of researchers have developed control techniques to stabilize a quadrotor. The works in [1] and [2]
have used optimal Linear Quadratic Regulator (LQR) for
the controller design. Asymptotic stability of the quadrotor, under certain conditions was also shown by applying
Lyapunov theory [3], [4]. The authors in [5] and [6] have
used PD2 feedback and PID structures for controller design.
Backstepping and sliding mode control techniques have also
been used in [7], [8] and [9]. In these work the convergence
of the quadrotor internal states is guaranteed, however, the
computations required are relatively excessive.
The authors in [10] developed a nonlinear dynamic model
for a quadrator. They used an exact global feedback linearization and non-interacting control law to control the translational motion and the yaw angle. The method developed in
[10] was also used in [11]. In this work, a PD controller was
designed to control the y-axis and the yaw angle. Moreover, a
feedback linearization controller was implemented to control
the x and z-axes states (translational motions). In [12],
a feedback linearization scheme with a high-order sliding
mode observer was developed for a quadrotor. Simulation
studies showed that it is robust against wind disturbances
and noise. In [7], feedback linearization and adaptive sliding
mode controls for a quadrotor were developed and compared.
Given that the quadrotor is an under-actuated system,
possible approaches for control and fault recovery are rather
limited. For details on a hybrid fault detection and isolation
strategy for a network of quadrotor vehicles refer to our
earlier work in [13]. As shown subsequently, an adaptive
feedback linearization strategy is developed for fault recovery
that yields an acceptable performance in presence of certain
types of faults in the vehicle actuators. We have recently
shown that it is possible to recover from a certain fault in
only one of the quadrotor’s actuators [14]. In this paper, a
generalization to our previous work on the fault recovery of a
quadrotor that is subject to a fault in one or more actuators is
presented. The proposed approach for the controller design
is shown to be capable of recovering from multiple faults
in different actuators. Using this approach there is no need
to have a priori knowledge about the actuator’s dynamic
parameters and the severity of the occurred faults in the
actuators.
The remainder of this paper is organized as follows.
Section II presents the quadrotor model including the vehicle
and the actuator dynamics. Section III discusses the loss-ofeffectiveness fault modeling. An adaptive feedback lineariza-
2515
of inertia around the propeller axis. Furthermore, U1 denotes
the normalized total lift force, and U2 , U3 and U4 correspond
to the control inputs of the roll, the pitch and the yaw
moments, respectively. ΩT refers to the overall residual
propeller angular speed. These input moments are defined
according to the equations
U = LUT T
Fig. 1. Simplified quadrotor model representation at hovering and the
coordinate systems (the body and the earth reference frames).
ΩT = −Ω1 + Ω2 − Ω3 + Ω4
(2b)
T
is the movement vector
where U = U1 U2 U3 U4
T
is the thrust vector. The conand T = T1 T2 T3 T4
stant matrix LUT is defined according to
tion recovery control strategy is presented in Section IV.
Simulation results are presented in Section V followed by
concluding remarks in Section VI.
II. T HE Q UADROTOR M ODEL
The quadrotor consists of four dc motors on which propellers are mounted in a cross configuration. Each propeller
is connected to the motor through reduction gears. All the
propellers axes of rotation are fixed and parallel. The front
and the rear propellers rotate counter-clockwise, while the
left and the right ones turn clockwise.
In Figure 1, the schematic of a simplified quadrotor
structure is shown where Ωi (rads−1 ) refers to the propellers
rotational speed. While at hovering, all the four propellers
rotate at the same speed to counterbalance the acceleration
due to gravity.
Basic movements are achieved by the differences between
the propellers speeds. Vertical rotation is achieved by creating an angular speed difference between the two pairs
of rotors. Increasing or decreasing the speed of the four
propellers simultaneously permits climbing and descending.
Rotation about the longitudinal and the lateral axis and
consequently horizontal motions are achieved by tilting the
vehicle. This is possible by conversely changing the propeller
speed of one pair of rotors.
Below, we present the vehicle and actuators dynamical
models.
1) Vehicle Dynamic Model: Reference [15] provides a
mathematical model of the quadrotor that is derived from
the Newton-Euler formulation, that is
ẍ = (cos φ sin θ cos ψ + sin φ sin ψ) Um1
ÿ = (cos φ sin θ sin ψ − sin φ cos ψ) Um1
z̈ = −g + (cos φ cos θ ) U1
m
(1)
Jt p
I −I
θ̇ ΩT + UIxx2
φ̈ = θ̇ φ̇ ( yyIxx zz ) − Ixx
θ̈ = φ̇ ψ̇( Izz −Ixx ) + Jt p φ̇ ΩT + U3
Iyy
Iyy
Iyy
ψ̈ = φ̇ θ̇ ( Ixx −Iyy ) + U4
Izz
T
Izz
where x y z
represents the position of the quadrotor
T
in the inertial frame, φ θ ψ
represents the roll, the
pitch and the yaw angles, respectively, m (Kg) is the overall
mass and g refers to the gravity acceleration. Ixx , Iyy and
Izz (N m s2 ) denote the inertia moments in the body fixed
frame and Jt p (N m s2 ) denotes the total rotational moment
(2a)
LUT
1
0
= −l
− db
1
−l
0
d
b
1
0
l
− db
1
l
0
(3)
d
b
where l(m) is the distance between the center of the quadrotor and the center of a propeller, b and d denote the thrust
and the drag coefficients, and Ti is the thrust force generated
by each rotor and is proportional to the square of each
propellers’s speed, that is Ti = bΩ2i .
2) Actuator Dynamic Model: The rotors are driven by DC
motors. The details on the nonlinear and linearized dynamic
equations of the propeller angular speed Ωi (rad s−1 ) and the
thrust Ti around an operating point T0 are provided in [14]
and is summarized below in equation (4)
Ṫi = −At Ti + Bt ui +Ct
(4)
In the above equation, the parameters At , Bt and Ct are the
linearized coefficients and are functions of the rotor dynamics [14].The set point corresponding to the linearization is
determined from the fact that at hovering the total thrust
should be equal to the gravitational force effective on the
quadrotor. In other words, we have ∑4i=1 Ti = mg.
Using the linearized dynamic equation (4), it is possible to
obtain the dynamic equations from the input voltage to the
propellers to the movement moments. Towards this end, it
is useful to write the dynamic
equation (4) in
a matrix form
for the thrust vector T = T1 T2 T3 T4 T , as follows
Ṫ = −AT T + BT u +CT
(5)
where AT = At I(4×4) and BT = Bt I(4×4) are constant matrices,
T
CT = Ct 1 1 1 1
, I(4×4) denotes a 4 × 4 identity
matrix, and u = u1 u2 u3 u4 T is defined as the vector
of the input voltages to the propellers.
Pre-multiplying the transfer matrix given by equation (3)
with (5) yields
LUT Ṫ = −(LUT AT )T + (LUT BT )u + (LUT CT )
(6)
It should be noted that LUT AT = LUT (At I(4×4) ) =
At (I(4×4) )LTU = AT LUT , and LUT BT = BT LUT . From equation (2a), it is possible to rewrite equation (6) as
U̇ = −AT U + (LUT BT )u + (LUT CT )
(7)
Under the condition that the quadrotor motion can be
assumed to be close to the hovering condition, small angular
changes occur (especially for the roll and the pitch angles).
Since the rates of change in θ and φ are small, the terms due
to the gyroscopic effects appearing in the dynamic equations
2516
of φ̈ and θ̈ in (1) are also negligible and can be set to
zero (note that these assumptions have also been verified and
validated through simulation results, but are omitted due to
space limitations. Further details can be obtained from [16]).
Moreover, since the structure of the quadrotor is symmetric,
the body moments of inertia Ixx and Iyy are equal. This also
simplifies the dynamic equation of ψ̈ in (1). If the altitude z
reaches a desired set-point zd , that is z −→ zd , then z̈ −→ 0.
As stated earlier, in the hovering condition (sufficiently
small θ and φ ) the total thrust should be equal to the
gravitational force effective on the quadrotor, in other words
U1 = ∑4i=1 Ti = mg. Therefore, if z̈ −→ 0 and φ and θ are
sufficiently close to zero, then U1 −→ mg.
By assuming U1 −→ mg and ψ −→ 0, it is possible to
simplify the dynamic equations of x and y states in the model
(1). Towards this end, the dynamic equations of the quadrotor
system including the dynamic equations for the movement
vector is now given as follows
z̈ = −g + (cos φ cos θ ) Um1
ÿ = −g sin φ
ẍ = g cos φ sin θ
(8)
U3
U2
U4
φ̈
=
θ̈
=
ψ̈
=
;
;
Ixx
Iyy
Izz
U̇ = −AT U + (LUT BT )u + (LUT CT )
Our objective is now to design appropriate controls for the
actuators. Since there are only four propellers, no more than
four variables can be controlled in the loop. It is possible
to define the position of the quadrotor in space completely
by the linear position ΓE = x y z T and the yaw angle
(heading angle) ψ. In this work, these four state variables
are indeed selected for the purpose of control design.
Ṫ = AT 0 T + BT 0 u +CT
with AT 0 and BT 0 properly defined and dependent on ki .
If the thrust dynamics for all the actuators are not identical,
the dynamic equations of the movement vector U change
since AT 6= At I and BT 6= Bt I. Therefore, it is necessary
to derive the dynamic equations of the movement vector
while the actuators do not have the same characteristics, in
other words when Ati 6= At j and Bti 6= Bt j for i, j = 1, . . . , 4,
i 6= j. The relationship between the movement vector U and
T was defined earlier according to equation (2a). By premultiplying equation (10) with LUT and using equation (2a)
we get
−1
U̇ = −(LUT AT 0 LUT
)U + (LUT BT 0 )u + (LUT CT )
Ṫi = Ati Ti + Bti ui +Ct
i = 1, . . . , 4
(9)
where Ati = ki2 At and Bti = ki2 Bt . Note that we have assumed
that the only coefficients that are subject to change due to a
fault are the Ati and Bti and the Ct remains unaffected. The
term Ct is proportional to the drag as well as the inverse
square of the thrust factor, which makes it a relatively small
constant. Equation (9) can now be represented in a compact
matrix form as
(11)
If the actuators have the same parameters, Ati = At and
−1
Bti = Bt for i = 1, . . . , 4, then LUT AT 0 LUT
= AT = At I4×4 as
expected for the healthy system.
IV. G ENERALIZED A DAPTIVE F EEDBACK
L INEARIZATION R ECOVERY C ONTROL S TRATEGY
In Section III, the movement vector dynamics were derived
in equation (11). It specifies the contribution of each actuator
to the resulting movement vector. As discussed earlier, in
case of a LOE fault the parameters of the actuators also
change. A parameter estimation algorithm is now presented
in this section to provide an estimate of the faulty actuator
severity gain and to develop a nonlinear adaptive controller
to guarantee stability and recovery of the closed-loop system.
Considering equation (11), the following equations are
derived for designing the feedback linearization controller
III. L OSS OF E FFECTIVENESS (LOE) FAULT M ODELING
The focus of this work is on developing a recovery control
mechanism from the loss of effectiveness (LOE) faults in the
actuators of the quadrotor. The LOE fault is characterized by
a decrease in the actuator gain from its nominal value.
In case of a LOE fault, the speed of the quadrotor deviates
from the commanded output that is desired by the controller.
In other words, we instead have Ωi = ki Ωci for 0 < ε < ki < 1,
where Ωi refers to the actual output from the ith actuator
and Ωci is the commanded output by the controller and ki
represents the LOE fault gain. Therefore, the resulting thrust
force from this actuator changes according to the equation
Ti = bΩ2i = b(ki Ωci )2 . The dynamics of Ti as governed by
equation (4) would also change due to the LOE fault, that is
Ṫi = 2bki2 Ωci Ω̇ci = ki2 At + ki2 Bt ui + ki2Ct , or equivalently
(10)
U̇1
U1
U1
− θ̇ cos φ sin θ
+ cos φ cos θ
m
m
m
(12)
U̇2
U2
cos φ + g φ̇ sin φ + 2gφ̇ φ̈ sin φ + gφ̇ 3 cos φ
Ixx
Ixx
(13)
z(3) = −φ̇ sin φ cos θ
y(5) = −g
x(5) = g
U̇2
U̇3
(cos θ cos φ ) + g (− sin θ sin φ ) + f (.)
Iyy
Ixx
ψ (3) =
U˙4
Izz
(14)
(15)
where f (.) is defined as a function of the system states and
parameters, that is
g U3 U2
f (.) = (− + )(3(θ̇ − φ̇ ) sin (θ − φ ) + 3(θ̇ + φ̇ ) sin (θ + φ ))
2 Iyy Ixx
g
g
− (θ̇ − φ̇ )3 cos (θ − φ ) − (θ̇ + φ̇ )3 sin (θ + φ )
2
2
(16)
Note that the relative degree of the system is equal to the
order of the system and no internal dynamics exists in
designing the feedback linearization controller.
In our previous work [14], a fault recovery controller from
a LOE fault in a single actuator was developed. In this work,
we assume that the thrust dynamic parameters corresponding
to all the actuators are unknown and to be estimated and that
might have changed due to partial LOE faults. Therefore,
2517
Ṫi = −At Ti + Bt ui +Ct , where Ati = ki2 At and Bti = ki2 Bt for
i = 1, . . . , 4 .
It is possible to rewrite equation (11) to separate the
unknown parameters, namely
U̇1
U̇2
U̇3
U̇4
1
b
1
4 U1 − 2 U3 − 4d U4
0
= −At1
l
1
lb
− 4 U1 + 2 U3 + 4d U4
d
d
− 4b U1 + 2lb U3 + 14 U4
− At3
1
1
b
4 U1 + 2 U3 − 4d U4
0
1
lb
l
4 U1 + 2 U3 − 4d U4
d
d
− 4b U1 − 2lb U3 + 14 U4
Bt1
0
+
−lBt1
− db Bt1
1
1
b
4 U1 − 2l U2 + 4d U4
1
lb
l
− At2 − 4 U1 + 2 U2 − 4d U4
0
d
1
d
4b U1 − 2lb U2 + 4 U4
− At4
Bt2
Bt3
Bt4
−lBt2
0
Bt4
0
lBt3
0
d
b Bt2
− db Bt3
d
b Bt4
0
d
d
1
4b U1 + 2lb U2 + 4 U4
u1
u2
u3
u4
+ (LUT CT )
(17)
Inserting equation (17) into equations (12) to (15) and
rewriting it in a matrix form we get
z(3)
y(5)
x(5) = H0 − At1 H1 − At2 H2 − At3 H3 − At4 H4
ψ (3)
Bt1
0
0
0
u1
Bt2
0
0 u2
0
+ H5
0
0
B
0 u
0
0
Bt4
z(3)
y(5)
x(5) =
ψ (3)
u4
−φ̇ sin φ cos θ Um1 − θ̇ cos φ sin θ Um1 + 4Ct
3
2
3g U
Ixx φ̇ sin φ + gφ̇ cos φ
H0 =
f (.)
0
cos φ cos θ 1
1
b
U
U
−
U
−
4
1
3
m
4
2
4d
0
H1 = g cos θ cos φ
l
1
lb
− 4 U1 + 2 U3 + 4d U4
Iyy
d
d
1
1
−
U
U
+
U
+
Izz
4 4
4b 1
2lb 3
H2 =
cos φ cos θ 1
1
b
m 4 U1 − 2l U2 + 4d U4
−g cos φ
lb
U4
− 4l U1 + 21 U2 − 4d
Ixx
−g sin θ sin φ
l
1
lb
U
−
U
+
U
−
4
1
2
Ixx
4
2
4d
d
1
1
d
U
−
U
+
U
1
2
4
Izz 4b
4
2lb
H3 =
H4 =
cos φ cos θ
m
1
1
b
4 U1 + 2 U3 − 4d U4
0
w1
4
w2 4
+ ∑ (δAti Hi ) + ∑ (δBti Gi )
w3
i=1
i=1
w4
(22)
The control inputs w1 , w2 , w3 and w4 are defined according
to the following equations
(3)
(19b)
w1 = zd − k1z (ëz ) − k2z (ėz ) − k3z (ez )
(5)
(4)
(3)
(5)
(4)
(3)
(23a)
w2 = yd −k1y (ey )−k2y (ey )−k3y (ëy )−k4y (ė)y −k5y (ey ) (23b)
w3 = xd −k1x (ex )−k2x (ex )−k3x (ë)x −k4x (ė)x −k5x (ex ) (23c)
(19c)
(19d)
(23d)
where zd , yd , xd and ψd denote the desired output trajectories
and ez = z − zd , ey = y − yd and ex = x − xd and eψ = ψ − ψd
are defined as the tracking error signals. The gains kiz , k jy , k jx
and kiψ for i = 1, 2, 3 and j = 1, · · · , 4 are obtained from the
LQR design procedure.
Using equations (21) and (23a) to (23d), we can write the
error dynamic equations as follows
(21)
ti
W̄ = W − H0 − Ât1 H1 − Ât2 H2 − Ât3 H3 − Ât4 H4
(3)
cos φ cos θ 1
b
U4
U1 + 2l1 U2 + 4d
m
4
−g cos φ l
1
lb
U
U
+
U
+
4
1
2
Ixx
4
2
4d
−g sin θ sin φ l
1
lb
U
+
U
+
U
1
2
4
Ixx
4
2
4d
d
d
1
1
U
U
+
U
+
1
2
Izz 4b
4 4
2lb
(19f)
w4 = ψd − k1ψ (ëψ ) − k2ψ (ėψ ) − k3ψ (eψ )
where Gi = H5 Ḡi H5−1 W̄ and Ḡi is a 4 × 4 zero matrix except
for the (i, i) element which is equal to B̂1 for i = 1, · · · , 4 and
g cos θ cos φ l
1
lb
4
Iyy
4 U1 + 2 U3 − 4d U
1
d
d
1
Izz − 4b U1 − 2lb U3 + 4 U4
(19a)
0
g cos θ cos φ
l
Iyy
1
d
)
(−
Izz
b
where Âti and B̂ti denote the estimates of the unknown
parameters Ati and Bti for i = 1, . . . , 4 and
T the new control
input vector W = w1 w2 w3 w4
is to be selected
so that the stability and control (LQR based) of the feedback
linearized system is achieved.
Let the parameter estimation error δ be defined as the difference between the actual value of the unknown parameter
and its estimate, i.e. δAti = Ati − Âti and δBti = Bti − B̂ti for
i = 1, . . . , 4 . By applying the control law (20) to the system
(18), the closed-loop dynamics can be written as
where
cos φ cos θ
m
φ
− g cos
Ixx l
g sin θ sin φ
−
l
Ixx
1 d
)
(
Izz b
−1
B̂t1
0
0
0
u1
0
B̂t2
0
0
u2
u =
H5 0
0
B̂t3
0
3
u4
0
0
0
B̂t4
w1
w2
w − H0 − Ât1 H1 − Ât2 H2 − Ât3 H3 − Ât4 H4
3
w4
(20)
3
t3
0
(18)
cos φ cos θ
m
cos φ cos θ
m
g cos φ
Ixx l
g sin θ sin φ
l
Ixx
1 d
)
(
Izz b
The input signal u is selected and designed according to (20)
so that the closed-loop system becomes linear, namely
1
b
1
4 U1 + 2l U2 + 4d U4
1
lb
l
4 U1 + 2 U2 + 4d U4
0
H5 = g cos θ cos φ
l
−
Iyy
d
1
)
(−
Izz
b
cos φ cos θ
m
(19e)
(3)
ez + k1z ëz + k2z ėz + k3z ez
(5)
(3)
ey + k1y e(4)
y + k2y ey + k3y ëy + k4y ėy + k5y ey
(5)
(4)
(3)
e + k e + k e + k ë + k ė + k e
1x x
2x x
3x x
4x x
x
5x x
(3)
eψ + k1ψ ëψ + k2ψ ėψ + k3ψ eψ
4
4
=
∑ (δAti Hi ) + ∑ (δBti Gi )
i=1
2518
i=1
(24)
It is possible to represent the above equation in the statespace form. The selected state variables are as follows
h
iT
(3) (3)
(4) (4)
X = ey ex ėy ėx ez ëy ëx eψ ėz ey ex ėψ ëz ey ex ëψ
(25)
Therefore, one could express the state-space representation
of the closed-loop system according to
4
4
Ẋ = A16×16 X + ∑ δAti Hi′ + ∑ δBti G′i
i=1
(26)
i=1
where the vectors Hi′ and G′i are defined as Hi′ =
T
T
0 . . . 0 HiT 16×1 and G′i = 0 . . . 0 GTi 16×1 .
All the eigenvalues of A are negative by proper selection
of ki . In other words, A is a Hurwitz matrix. Now, let us
define the update laws for the parameter estimation errors
δAti and δBti according to:
(
δ̇Ati = − Hi′T PX + X T PHi′
T
′
δ̇Bti = − G′T
i PX + X PGi
(27)
where X is the state vector defined in equation (25), and P is
a (16 × 16) matrix that is obtained by solving the Lyapunov
equation AT P+PA = −I16×16 where I16×16 denotes a 16×16
identity matrix. It should be noted that since A is a Hurwitz
matrix, P is a positive definite matrix [17].
The following theorem provides a sufficient condition for
stability of the closed-loop system (26) and (27).
Theorem: The state trajectories of the closed-loop system
(26) with the update laws for the estimation errors δAti and
δBti for i = 1, . . . 4 given by equation (27) are globally stable
in the sense of Lyapunov.
Proof: To carry out the stability analysis, let us choose the
Lyapanov function candidate as
V = (X T PX +
1 4
1 4 2
δAti + ∑ δB2ti )
∑
2 i=1
2 i=1
(28)
The derivative of this Lyapunov function along the trajectories of the system (26) is given by
4
4
i=1
i=1
V̇ = Ẋ T PX + X T PẊ + ∑ δAti δ̇Ati + ∑ δBti δ̇Bti
(29)
Using equation (27) one arrives at V̇ = −X T X, which guarantees the negative semi-definiteness of V̇ . This implies that
the origin is a globally stable equilibrium point of the system
(26) and (27). This completes the proof of the theorem.
This theorem implies that the control of the system no
longer depends on the prior knowledge of the actuator thrust
dynamic parameters. These parameters are estimated from
the input and state measurements of the system. Therefore,
if a LOE fault occurs in one or more of the actuators, the
parameter estimation module is capable of estimating the
post fault model of the actuators and in compensating for the
resulting error effects in the system by proper commanding
the healthy and faulty actuators and guaranteeing the closedloop stability of the system.
V. S IMULATION R ESULTS
In this section, the performance of the quadrotor system
subject to our proposed fault recovery mechanism is studied
through simulation scenarios. The quadrotor model used
for simulation is the OS4 that is developed in the Ecole
Polythechnique Federal De Lausanne [15]. The mathematical
model used for control design is partially nonlinear (the
actuator dynamics is linearized for control design), however,
we have applied the controller to the fully nonlinear model
of the quadrotor and have considered the full actuator
dynamics. In simulations, additive white Gaussian noise is
also added to the input and output channels to simulate a
realistic environment. The noise power is selected so that
the signal to noise ratio is approximately 15 db.
The commanded trajectory starts at the position (x, y, z) =
(0, 0, 0) while the roll, the pitch and the yaw angles are
initially set to zero. The commanded trajectory is to fly from
the initial point to the final point (5, 5, 5)(m) in 10 seconds
and hovering at the final point.
The fault trajectory assumes occurrence of multiple LOE
faults in different actuators. The first fault is a 20% LOE
in the first actuator at t = 20 sec while the second fault is
a 35% LOE in the fourth actuator at t = 35 sec. We are
assuming that a fault detection mechanism exists [13] to
alert the fault recovery module on the occurrence of the
fault without much delay. In other words, the fault recovery
mechanism is initiated after the detection of the fault. The
performance of our fault recovery scheme is also evaluated
in case of a delayed fault detection by initiating the recovery
procedure 5 sec after the fault occurrence.
Figures 2 and 3 show the linear position and the Euler angles in response to the commanded trajectory for the healthy,
faulty and the recovered scenarios in case of multiple fault
occurrences by using our proposed fault recovery algorithm
with and without the delayed fault detection information.
Table I shows the means and the standard deviations (Stdv) of
the steady state tracking errors under four different scenarios
that the system is operating under, namely, (I) healthy condition, (II) faulty actuator and no fault recovery invoked, (III)
fault recovery mechanism invoked, and (IV) delayed fault
recovery mechanism invoked. It can be concluded that our
proposed fault recovery mechanism has a considerable effect
on the performance of the system in presence of multiple
LOE faults by reducing the steady state error between the
desired and the actual outputs. It should be noted that as
intuitively expected, the sooner the fault recovery is initiated,
the more improved performance and smaller tracking error
signals are obtained.
VI. C ONCLUSION
In this paper, a fault recovery mechanism is proposed
for reconfiguring the control system from multiple loss-ofeffectiveness (LOE) faults in the quadrotor’s actuators. An
adaptive feedback linearization technique is employed for the
controller design and global stability of the system with the
fault recovery mechanism is shown analytically. This is accomplished by developing a parameter estimation algorithm
2519
TABLE I
M EAN AND S TDV OF THE TRACKING ERRORS FOR A 20% LOE IN THE
FIRST AND A 35% LOE IN THE FOURTH ACTUATORS .
(a)
10
8
x (m)
6
4
Faulty
2
Healthy
0
0
10
20
Recovered
30
40
Delayed recovery
50
time (sec)
60
70
80
90
100
90
100
(b)
15
Healthy
Faulty
Recovered
y (m)
10
Delayed recovery
5
Faulty
Healthy
0
0
10
20
30
Recovered
40
50
time (sec)
60
Delayed recovery
70
80
Error
(I)
(II)
(III)
(IV)
ex Mean (m)
ex Stdv (m)
ey Mean (m)
ey Stdv (m)
ez Mean (m)
ez Stdv (m)
eψ Mean (rad)
eψ Stdv (rad)
-0.0537
0.2809
-0.0486
0.1632
-0.0542
0.1884
1.3461e-004
8.7942e-004
1.6942
2.9598
4.1785
5.1644
0.8837
-1.6082
0.0132
-0.0080
0.3598
0.1870
0.6126
0.3043
0.1939
-0.1190
0.0947
0.0566
1.3164
1.8977
3.2624
3.7113
0.3168
-0.5929
0.1135
-0.0752
(c)
6
z (m)
4
2
Healthy
Recovered
0
0
10
20
30
40
50
time (sec)
Delayed recovery
Faulty
60
70
80
90
100
Fig. 2. Linear position due to the commanded trajectory and a 20% LOE
fault in the first actuator at time = 20 sec and a 35% LOE fault in the fourth
actuator at time = 35 sec with and without the fault recovery invoked.
(a)
1
roll (rad)
0.5
Healthy
Faulty
Recovered
Delayed recovery
0
−0.5
−1
0
10
20
30
40
50
time (sec)
60
70
80
90
100
60
70
80
90
100
70
80
(b)
pitch (rad)
1
0.5
0
−0.5
0
10
20
30
40
50
time (sec)
(c)
0.2
yaw (rad)
0.1
0
−0.1
Healthy Recevered
−0.2
−0.3
Delayed recovery
Faulty
0
10
20
30
40
50
time (sec)
60
90
100
Fig. 3. Euler angles due to the commanded trajectory and a 20% LOE
fault in the first actuator at time = 20 sec and a 35% LOE fault in the fourth
actuator at time = 35 sec with and without the fault recovery invoked.
and by deriving proper update laws for the faulty actuator
parameters. Simulation results are presented to evaluate the
performance of our proposed fault recovery mechanism in
presence of LOE fault in one or multiple actuators. It is
observed that by employing the fault recovery algorithm the
steady state tracking errors of the system outputs reduce
considerably when compared to the responses obtained from
the faulty system that has not employed our proposed fault
recovery strategy.
R EFERENCES
[2] I. Cowling, J. Whidborne, and A. Cooke, “Optimal trajectory planning
and lqr control for a quadrotor uav,” in Proceedings of the International
Conference Control, 2006.
[3] R. L. P. Castillo and A. Dzul, “Stabilization of a mini rotorcraft
having four rotors,” in Proceedings of 2004 IEEE/RSJ International
Conference on Intelligent Robots and Systems, pp. 2693 – 2698, 2004.
[4] A. Palomino, S. Salazar-Cruz, and R. Lozano, “Trajectory tracking for
a four rotor mini-aircraft,” in Proceedings of the 44th IEEE Conference
on Decision and control, and the European Control Conference,
p. 2505 2510, 2005.
[5] A. Noth, S. Bouabdallah, and R. Siegwart, “Pid vs lq control techniques applied to an indoor micro quadrotor,” in Proceedings of
International Conference on Intelligent Robots and Systems, pp. 2451
– 2456, 2004.
[6] A. Tayebi and S. McGilvray, “Attitude stabilization of a vtol quadrotor
aircraft,” IEEE Transaction on Control System Technology, pp. 562 –
571, 2006.
[7] D. Lee, H. J. Kim, and S. Sastry, “Feedback linearization vs. adaptive
sliding mode control for a quadrotor helicopter,” International Journal
of Control, Automation, and Systems, pp. 419–428, 2009.
[8] H. Bouadi, M. Bouchoucha, and M. Tadjine, “Sliding mode control
based on backstepping approach for an uav type-quadrotor,” International Journal of. Applied Mathematics and Computer Sciences, pp. 12
– 17, 2007.
[9] R. Xu and U. Ozguner, “Sliding mode control of a quadrotor helicopter,” in Proceedings of the 45th IEEE Conference on Decision and
Control, 2006.
[10] V. Mistler, A. Benallegue, and N. M’Sirdi, “Exact linearization and
noninteracting control of a 4 rotorshelicopter via dynamic feedback,”
in Proceedings of 10th IEEE International Workshop on Robot and
Human Interactive Communication, 2001.
[11] E. Altug, J. P. Ostrowski, and R. Mahony, “Control of a quadrotor
helocopter using visual feedback,” in Proceedings of the IEEE International Conference on Robotics and Automation, pp. 72 – 77, 2002.
[12] A. Mokhtari and A. Benallegue, “Dynamic feedback controller of
euler angles and wind parameters estimation for a quadrotor unmanned
aerial vehicle,” in Proceedings of IEEE International Conference on
Robotics and Automation, 2004.
[13] N. Meskin, K. Khorasani, and C. A. Rabbath, “A hybrid fault detection
and isolation strategy for a network of unmanned vehicles in presence
of large environmental disturbances,” IEEE Transactions on Control
Systems Technology, pp. 1422–1429, 2010.
[14] M. Ranjbaran and K. Khorasani, “Fault recovery of an under-actuated
quadrotor aerial vehicle,” in Decision and Control (CDC), 2010 49th
IEEE Conference on, pp. 4385 –4392, dec. 2010.
[15] S. Bouabdallah, Design and Control of Quadrotors With Application
to Autonomous Flying. PhD thesis, Ecole Polythechnique Federale De
Lausanne, 2007.
[16] M. Ranjbaran, “Fault recovery of an under-actuated quadrotor aerial
vehicle,” Master’s thesis, Concordia University, 2010.
[17] J. J. Slotine and W. Li, Applied Nonlinear Control. Prentice Hall,
1991.
[1] J. How, B. Bethke, A. Frank, D. Dale, and J. Vian, “Real-time
indoor autonomous vehicle test environment,” IEEE Control Systems
Magazine, 2008.
2520