Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Asadi2021 Article Fault-TolerantTrajectoryTracki

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

International Journal of Aeronautical and Space Sciences

https://doi.org/10.1007/s42405-021-00412-9

ORIGINAL PAPER

Fault‑tolerant Trajectory Tracking Control of a Quadcopter in Presence


of a Motor Fault
Davood Asadi1   · Karim Ahmadi1 · Seyed Yaser Nabavi1

Received: 6 March 2021 / Revised: 13 June 2021 / Accepted: 9 August 2021


© The Korean Society for Aeronautical & Space Sciences 2021

Abstract
As a part of emergency landing architecture for multi-rotor, a fault-tolerant trajectory tracking control strategy is proposed
in this paper to control a quadcopter in case of a partial motor fault. The introduction of fault-tolerant strategy includes a
lightweight fault detection and identification algorithm and a three-loop tracking controller. The lightweight fault detection
and identification algorithm identifies the fault based on the controller outputs and the angular rates calculated by a discrete
extended Kalman filter. The three-loop controller comprises a cascade structure of a discrete nonlinear adaptive algorithm
in the inner-loop and a PID algorithm in the outer-loops of the controller structure. To have more realistic simulations, the
gyroscopic effects of rotors and the airframe drag terms are considered in modeling as the model uncertainty. The simulation
results demonstrate that the proposed fault-tolerant controller can effectively control the quadcopter in presence of partial
motor fault, model uncertainties, and sensor noises. The results also demonstrate the effect of fault detection time delay on
the overall control performance.

Keywords  Fault tolerant · Nonlinear control · Motor fault · Fault detection · Autonomous Emergency Landing

1 Introduction (FTC) and fault detection and identification (FDI) modules


have the potential to improve the safety and reliability of
Increasing attention, fast development, and wide applica- multirotor and are inevitable subsystems in an Autonomous
tion of multi-rotor drones have raised the vital problem of Emergency Landing Architecture (AELA). In addition to
safety [1–3]. Motor fault might lead to a loss of control or a the FTC and FDI modules, trajectory planning and landing
crash or might endanger human beings to injury risks in the site detection are other required subsystems in the AELA
environment of operation. Therefore, it is of great impor- structure, as proposed in this paper.
tance to consider the flight safety of the multirotor in pres- Different control algorithms ranging from linear to non-
ence of motor fault and failure [3–6]. Redundancy is not a linear, sliding mode, robust, and adaptive control algo-
viable solution for multi-rotors due to addition of weight and rithms have been proposed in the literature to control the
complexity to the system. Therefore, automation enhance- faulty aerial vehicles. In [10], a controller is presented for
ment has attracted the researchers as a logical solution to the a quadcopter with single rotor failure applying robust feed-
challenging problem of flight safety of multi-rotor drones back linearization and assuming that the failure is known.
in emergency flight conditions [7–9]. Fault-tolerant control In Ref. [11], a trajectory tracking adaptive dynamic con-
troller was proposed to guide an unmanned aerial vehicle
(UAV). Stability and control of quadcopters experienc-
* Davood Asadi
dasadihendoustani@atu.edu.tr ing one, two, or three rotor failures are presented in [12].
Several control methods based on L 1 adaptive control
Karim Ahmadi
kadastgerdi@atu.edu.tr [13], robust adaptive control [14], sliding mode control
(SMC) [15], and adaptive SMC techniques [16, 17] are
Seyed Yaser Nabavi
synabavi@atu.edu.tr proposed to handle model uncertainties and faults. Con-
sidering model-based control, the authors of [18] proposed
1
Department of Aerospace Engineering, Adana Alparslan a model reference adaptive control (MRAC) technique to
Türkeş Science and Technology University, Adana 01250, control a quadcopter with parametric and non-parametric
Turkey

13
Vol.:(0123456789)
International Journal of Aeronautical and Space Sciences

uncertainties in the model. Supposing loss in the efficiency


of a quadcopter’s propeller, control algorithms are pro-
posed in [19, 20] to estimate the aerial vehicle model after
the failure, guaranteeing the stability of the platform. A
back-stepping approach is proposed in [21] for the per-
formance loss of the motors. In fault-tolerant control of
multi-rotors, the existence of a fast converging algorithm
is necessary for FDI.
Fault-detection approaches can be categorized into
model-based, signal-based, knowledge-based, and active
diagnosis techniques [22]. Amoozgar et al. [23] proposed a
two-stage Kalman filter to detect, isolate, and estimate pos-
sible faults in each motor whereas the method was evaluated
on a UAV testbed. Refrence [24]. presented a fault identifica-
tion scheme for actuator faults using nonlinear adaptive esti- Fig. 1  Autonomous Emergency Landing Architecture with subsys-
mation technique. In Ref. [25], an adaptive Thau observer tems
was developed to estimate and detect the actuator faults. An
on-line detection algorithm was proposed to detect a single constraints, trajectory planning to the desired landing area,
motor failure and a control allocation technique is proposed and control of the faulty drone toward the landing site. To
to control the drone in [26]. A parity space method with cover these challenges, the AELA is proposed according to
recursive least squares algorithm was introduced in [27], Fig. 1. The AELA is a concept of an onboard emergency
for actuator faults detection and identification of a drone. management system that monitors vehicle health and mis-
A novel fault-tolerant trajectory tracking control strategy, sion objectives to autonomously land the UAV in case of
which is considered as a part of the proposed AELA strategy fault or failure on the desired landing area without colliding
is proposed in this paper. The introduced structure includes a with a human or any obstacle. In the proposed AELA, the
three-loop nonlinear controller along with a FDI algorithm. fault detection algorithm identifies the fault based on the
Therefore, this research contribution include the develop- filtered inertial measurement unit (IMU) and GPS measure-
ment and application of a cascade nonlinear discrete-time ments applying the Kalman filter. In the meanwhile, on-line
adaptive controller along with a fast converging fault detec- images in the drone’s field of view (FOV), taken by the cam-
tion algorithm for partial motor fault detection based on the era along with image processing algorithms are implemented
extended Kalman filter estimates. A complete mathematical for suitable landing site detection as well as obstacles/human
nonlinear model considering the dynamic uncertainties due detection in the vicinity of the desired landing site.
to rotors’ gyroscopic effects and airframe drag are consid- Digital image processing techniques will be applied for
ered in the simulations. landing site detection. The area that is free from the obsta-
In Sect. 2 the AELA structure and in Sect. 3 the math- cle and closest to the center of the image is defined as the
ematical modeling is discussed. Section 4 introduces the most immediate landing zone. After characterizing a suit-
FTC algorithm. Section 5 presents the simulation results able landing site, the trajectory generation unit generates a
that validate the proposed approach. Finally, Sect. 6 points controllable trajectory toward the selected landing site. The
out the key conclusions. controller generates the required inputs to track the desired
trajectory. Flight strategies of autonomous landing depend
on several parameters including the flight phase, flight veloc-
2 Autonomous Emergency Landing ity, altitude, percentage of fault, number of faulty motors,
Architecture and surrounding obstacles. Each of them requires a specific
decision making or different control scenarios. Therefore,
Automation enhancement is the only practical solution for the existence of a high-level planner, which manages strate-
safe recovery and landing of UAVs in emergency flight gic decisions, monitors the interactions of each sub-division,
conditions when a fault or failure occurs. In fault scenarios and controls the whole architecture, is inevitable in the struc-
where the continuation of flight is not feasible, the emer- ture of the AELA.
gency flight system is triggered to recover the UAV and
safely guide it toward a suitable landing site [5]. There are
several challenges respecting the safe landing of an impaired
drone such as obstacle detection, suitable landing site detec-
tion/selection, FDI, characterizing the aircraft’s kinematic

13
International Journal of Aeronautical and Space Sciences

3 Mathematical Model

In this section, the quadcopter model, the motor model, as


well as the motor mixer equations are presented.

3.1 Quadcopter Model

The S500 frame (Fig. 2) with the EMAX MT3506 650 kV


motors with 11-inch diameter propellers have been selected
in this research. The quadcopter parameters, which is used in
the simulations are given in Table 1. Some values like mass,
dimensions, and moments of inertia are derived based on Fig. 3  Schematic representation of quadcopter
experimental tests on the S500 model and some other values
are just estimated to be used in the simulations.
Applying the rigid-body equations of motion and Euler
3.2 Dynamic Equations angle transformation (Eq. (4)), the complete dynamical model
of the quadcopter is presented as below:
The translational and rotational equations of the quadcopter in
the body frame are presented in Eqs. (1) and (2), respectively. 3.2.1 Translational dynamics
As depicted in Fig. 3, the quadcopter consists of four motors, uz kx
which motors number one and three rotate clock-wise with ẍ = (sin 𝜓 sin 𝜙 + cos 𝜓 sin 𝜃 cos 𝜙)
m m
− x,
̇
velocities Ω1 , Ω3 , respectively, whereas the other two other uz ky
motors (2, 4) rotate in the opposite (counter-clockwise) direc- ÿ = (− cos 𝜓 sin 𝜙 + sin 𝜓 sin 𝜃 cos 𝜙) − y, ̇ (1)
m m
tion with velocities Ω2 , Ω4. uz kz
z̈ = −g + (cos 𝜃 cos 𝜙) − z,̇
m m
where x, y, and z are the position of quadcopter center of
mass in inertial frame and 𝜓, 𝜃, 𝜑 are the Euler angles,
which represent the body-frame rotation with respect to the
Inertial frame. The input uz is the total lift force ( uz ) gener-
ated by propellers in z-direction. kx = ky = 5.5e − 4 N∕m∕s ,
kz = 6.3e − 4 N∕m∕s are translational drag coefficients. The
last terms in the above equation regarding the airframe drag
are applied in the equations of motion but is considered as
model uncertainty, when designing the controller algorithm.

3.2.2 Rotational dynamics
Iyy − Izz u𝜑 JT k𝜑
Fig. 2  S500 quadcopter with Pixhawk autopilot ṗ = qr + + q Ω − p2 ,
Ixx Ixx Ixx Ixx
Izz − Ixx u𝜃 J k
Table 1  Quadcopter frame specifications q̇ = pr + − T p Ω − 𝜃 q 2, (2)
Iyy Iyy Iyy Iyy
Quadcopter parameters Ixx − Iyy u𝜓 k𝜓 2
ṙ = pq + − r ,
Mass, m 1.6 kg Izz Izz Izz
Thrust coefficient, b 4.068 × ­10–7 N/rpm2
Drag coefficient, d 8.43 × ­10–9 Nm/rpm2
where Ixx, Iyy and Izz are the moment of inertia in x, y
Moment arm, l 0.243 m
and z direction, respectively. The quadcopter inputs are
Moment of inertia about x-axis, Ixx 0.0213 kg.m2
represented by u𝜑  , u𝜃   , u𝜓  , which are moments about
Moment of inertia about y-axis, Iyy 0.0221 kg.m2
x, y, z axes, respectively. k𝜑 = k𝜃 = 5.5e − 4N∕rad∕s
Moment of inertia about z-axis, Izz 0.028 kg.m2
,k𝜓 = 6.35e − 4N∕rad∕s are rotational drag coefficients. JT
Total rotational moment of inertia, JT 6.8 × ­10–5 kg.m2

13
International Journal of Aeronautical and Space Sciences

is the moment of inertia of each motor and Ω represents the 3.4 Motor Mixer
propellers total speed as below:
Given that the controller computes the intermediate control
Ω = Ω1 − Ω 2 + Ω 3 − Ω 4 . (3) inputs ( uz , u𝜑 , u𝜃 , u𝜓  ), these are transformed into the motors
The drag and gyroscopic terms in the rotational dynamics desired rotational velocities. Typically, this transformation is
equations are the unknown terms and are considered as the called motor mixing. By inverting the relationship of Eq. (7),
model uncertainty. motor mixer expression is derived as below:

⎡ 1 −1 1
;0; 2lb ; 4d ⎤
⎤ ⎢ ⎥⎡ uz ⎤
2 4b
3.2.3 Euler Equations ⎡ Ω1
⎥ ⎢⎢ ; ;0; −1 ⎥⎢ ⎥
1 1
⎢ Ω22 ⎥⎢ u𝜃 ⎥.
⎢ Ω2 ⎥=⎢ 4b 2lb 4d
(8)
𝜑̇ = p + q sin 𝜑 tan 𝜃 + r cos 𝜑 tan 𝜃,
⎢ 32 ⎥ ⎢
1
;0; 1 1
; ⎥⎢ u𝜑 ⎥
𝜃̇ = q cos 𝜑 − r sin 𝜑, ⎣ Ω4 ⎦
4b 2lb 4d
⎥⎣ u ⎦
(4) ⎢ 1 −1
; ;0; −1 ⎥ 𝜓
1 [ ] ⎣ 4b 2lb 4d ⎦
𝜓̇ = q sin 𝜑 + r cos 𝜑 .
cos 𝜃
3.5 Motor Fault Modeling
3.3 Rotor Dynamics The fault considered in this paper is an undesired thrust loss
for the i-th actuator concerning the normal operative condi-
The thrust generated by the motors are modeled as a first- tion. Damage to the propellers or specific faults on the motor
order system to account for the motors dynamic for variation (degradation) can lead to a partial loss of thrust. Therefore,
of rotational speed: the thrust and torque of the faulty motor can be expressed as
𝜔0 a parametric uncertainty as follows:
uic = K u,
S + 𝜔0 i (5)
Tif = Ti + ΔTi = b Ω2i + Δb Ω2i , Δb = −fi b,
(9)
where uic is the i-th motor input, which is the PWM reference Qif = Qi + ΔQi = d Ω2i + Δd Ω2i , Δd = −fi d,
signal to the motors, K is the motor gain, and 𝜔0 is the band-
width of the motors. The motors’ thrust force and torque where Δb , Δd are bounded variation of motor effective-
depend on the rotational velocity, propeller diameter, as well ness respecting its nominal values and can be represented as
as the aerodynamics characteristics of blades as below: −b ≤ Δb ≤ 0 , −d ≤ Δd ≤ 0 and fi is the i-th motor fault.
Therefore, the actual signal ( 𝐮 ) generated by the faulty actu-
Ti = Ct 𝜌 Ω2i D4 = b Ω2i , ator ( 𝐮f  ) is as follows:
(6)
Qi = Cd 𝜌 Ω2i D5 = k Ti = d Ω2i , k = 2.07e − 2 m,
𝐮f (t) = (1 − 𝚪) 𝐮(t) , 𝐮(t)T = [T1 , T2 , T3 , T4 ],
{
where Ct, Cd are thrust and drag coefficients, 𝜌 is air den- 0 t < tf (10)
sity, Ωi is the rotational speed of each motor in rpm, and D 𝚪= ,
diag(f1 , f2 , f3 , f4 ) t > tf
is the propeller diameter. The numerical values of b and d
are introduced in Table 1. Accordingly, the actuation inputs where 0 ≤ fi < 1 and fi = 0, fi = 1 represents the healthy and
around body-frame are expressed as follows: the fully failed actuator, respectively, and tf is the time that
fault occurs. In fact, a failure is a permanent damage such
uz = T1 + T2 + T3 + T4 = b (Ω21 + Ω 22 + Ω 23 + Ω24 ), that the actuator cannot produce any thrust.
u𝜑 = l(T2 − T4 ) = b l(Ω22 − Ω24 ),
u𝜃 = l(T3 − T1 ) = b l(Ω23 − Ω 21 ), 4 FTC Strategy
u𝜓 = k (T1 + T3 − T2 − T4 ) = d (Ω21 + Ω23 − Ω 22 − Ω24 ) . In this section, by applying the multiple-timescales approach,
(7) the rotational and translational dynamics are separated by
The autopilot outputs ( uz u𝜑 u𝜃 u𝜓  ) must be translated assuming that the rotational dynamics is much faster than the
into each motor inputs to send the signal to the quadcopter translational dynamics. In the PX4 software of the Pixhawk
speed controls then apply the related PWM signal to each autopilot, a three-loop cascade architecture composed of a
quadcopter’s motor. rate controller, an attitude controller, and a position controller

13
International Journal of Aeronautical and Space Sciences

exists to control the aerial vehicles. Thus, in order to be coin- where fp , fq , fr which illustrate loss of control moment effec-
cident and consistent with the Pixhawak software structure and tiveness around x, y, and z axes, respectively, are all smaller
having minimum required changes on the software, a three- than one ( fp , fq , fr < 1).
loop control algorithm is proposed in this paper. According to
Fig. 4, for the fast inner-loop, a discrete-time adaptive control- 4.1 Inner‑Loop Controller Design
ler is applied and for the two slow outer-loops of attitude and
position, the desired dynamics and PID algorithm similar to The Nonlinear Dynamic Inversion (NDI) is commonly used
the PX4 algorithm with some modifications is proposed. to control nonlinear systems, especially in aerospace appli-
Based on the rotational dynamics according to Eq. (2), the cations. By considering Δ𝐟(𝐱) + Δ𝐠(x)𝐔c = Δ𝐅1 , Eq. (11) is
uncertainty due to motor fault, and the fault model based on rewritten as:
Eq. (9), the nonlinear model of quadcopter can be transformed
into an affine control model as below:
𝐱̇ = 𝐟(𝐱) + 𝐠(𝐱)𝐔c + Δ𝐅1 . (15)
By considering the quadcopter nonlinear dynamics as
𝐱̇ = 𝐟(𝐱) + 𝚫𝐟(𝐱) + [𝐠 (𝐱) + 𝚫𝐠] 𝐔c . (11) x((k+1)Ts )−x(kTs )
Eq. (11), ẋ = T
 , and using the shorthand notation
The nominal model of quadcopter is described as below:
s
of indices k instead of the more precise one kTs; where Ts is the
sampling period; the discrete form of Eq. (15) is derived as
𝐱̇ = 𝐟(𝐱) + 𝐠(𝐱)𝐔c , (12)
blew:
where[ x ∈ ℜ]3 is the vector of rotational velocities
( 𝐱 = p,
𝐱(k + 1) = 𝐟1 (𝐱(k)) + 𝐠1 (𝐱(k))𝐔c (k) + Δ𝐅2 , (16)
[ q, r );𝐔c ]∈ ℜ is the3 plant control3×3
input vector
3

( 𝐔c = u𝜃 , u𝜑 , u𝜓  ); 𝐟 (𝐱) ∈ ℜ and 𝐠(𝐱) ∈ ℜ are known where 𝐟1 (𝐱(k)) = Ts 𝐟(𝐱(k)) + 𝐱(k) and 𝐠1 (𝐱(k)) = Ts 𝐠(𝐱(k))
differentiable vector functions and input matrices, respec- are discrete-time nonlinear functions and Δ𝐅2 = Ts Δ𝐅1 is
tively, 𝚫𝐠(𝐱) ∈ ℜ3×3 is the unknown bounded perturbations the fault. For nominal model if 𝐠1 (𝐱(k))−1 exists, consider-
due to the propeller damage, and Δ𝐟(𝐱) ∈ ℜ3 is an unknown ing nominal model the input 𝐔c (k) , which is can be obtained
bounded perturbation caused by propellers gyroscopic from Eq. (17) as below:
effects and frame drag terms as defined below: [ ]
Iyy −Izz
𝐮(k) = 𝐠1 (𝐱(k))−1 𝐔c (k) − 𝐟1 (𝐱(k)) . (17)
k
⎡ qr ⎤ ⎡ JT q Ω − 𝜑 p2 ⎤
⎢ Ixx
⎥ ⎢ Ixx Ixx
⎥ Using the control input described in Eq. (17), the closed
⎢ ⎥ ⎢ J ⎥
loop system dynamics of nominal model would be linear
𝐟(𝐱) = ⎢ pr ⎥, Δ𝐟(𝐱) = ⎢ − I T p Ω − I q 2 ⎥,
Izz −Ixx k𝜃
(13) ( 𝐱(k + 1) = 𝐈 𝐱(k) , 𝐈 : identity matrix). By applying the con-
⎢ Iyy ⎥ ⎢ yy yy ⎥
⎢ ⎥ ⎢ ⎥ troller input based on the nonlinear inverse dynamics and con-
⎢ Ixx −Iyy ⎥ ⎢ k𝜓 2 ⎥
⎣ I
zz
pq ⎦ ⎣ − I
r
zz
⎦ sidering Δ𝐅2 , Eq. (16) can be rewritten as below:
( )
( ) ( ) 𝐱(k + 1) = 𝐈 𝐔(k) + Δ𝐅3 𝐱(k), 𝐔c (k) , (18)
1 1 1 − fp − fq − f r
𝐠(𝐱) = diag , , , 𝚫𝐠(𝐱) = diag , , , ( )
Ixx Iyy Izz Ixx Iyy Izz where Δ𝐅3 𝐱(k), 𝐔c (k) is called the inversion dynamic
(14) error.

Fig. 4  Three-loop fault-tolerant control block diagram

13
International Journal of Aeronautical and Space Sciences

4.2 Discrete‑Time Adaptive Controller xj (k + 1) = uj (k) + Δj (k). (24)

In this section, the design procedure of discrete-time adaptive By defining uj (k) = −km xj (k) + ujad (k) , Eq. (23) is rewritten
control strategy, which improves the NDI controller perfor- as Eq. (24):
mance is described. In the following, the design procedure
of the discrete-time adaptive algorithm is just described for
xj (k + 1) = −km xj (k) + Δj (k) + ujad (k). (25)
an arbitrary state (xj). The block diagram of the proposed The z transform of Eq. (24) is introduced in Eq. (26).
discrete-time adaptive controller algorithm is given in Fig. 5. ( −1 )( ) ( )
According to Eq. (18), which describes the closed loop xj z 1 + km z−1 = z−1 ujad z−1 + z−1 Δj . (26)
airplane dynamics with the NDI controller, the jth state of
the discrete-time-invariant close loop system (Eq. 18) is con- In the above equations, km is the feedback gain and the
sidered as below: design procedure is described as below. By assuming Δj and
xj are bounded, Eq. (27) is obtained from infinity norm of
z−1 Bi (z−1 ) Eq. (26) as below:
xj = u + Δj ,
Ai (z−1 ) adj (19) ‖ ‖( ) ‖ ‖ ‖ ‖
‖xj ‖ 1 + km z−1 = z−1 ‖ujad ‖ + z−1 ‖Δj ‖. (27)
xj (0) ≠ 0, j = 1, 2, 3, ‖ ‖ ‖ ‖ ‖ ‖
‖ ‖ ‖ ‖ 𝜌 ‖ ‖ ‖ ‖
where B(z−1 ) and A(z−1 ) are the polynomials of the numera- If ‖Δj ‖ < 𝜌j , ‖xj ‖ < Cj and j < Dj , then ‖Δj ‖ < ‖xj ‖Dj is
‖ ‖ ‖ ‖ Cj ‖ ‖ ‖ ‖
tor and denominator of the discrete-time transfer function, satisfied and Eq. (27) can be rewritten as following:
which are modeled as below [31]:
‖ ‖( ( ) ) ‖ ‖
‖xj ‖ 1 + km − Dj z−1 = z−1 ‖uj ad ‖. (28)
−1
B(z ) = b0 + b1 z −1 −NB
+ ... + bNB z , b0 ≠ 0, (20) ‖ ‖ ‖ ‖
( ( ) )
For stability, km is chosen as the root of 1 + km − Dj z−1  ,
A(z−1 ) = 1 + a1 z−1 + a2 z−2 + ... + aNA z−NA . (21) which must be smaller than unity. The reference model is
defined as:
Considering NDI algorithm, the polynomials are obtained ( )
as below: ( −1 ) −1 j
Γ z−1 ( )
xm j z =z ( ) rj z−1 , (29)
C1 j z−1
b0 = 1, b1 = b2 = ... = bNB = 0, (22)
where C1j (z−1 ) and Γj (z−1 ) are the numerator and denomi-
a1 = a2 = ... = aNA = 0. (23) nator of the reference model transfer function. C1j (z−1 ) is
asymptotically stable, rj (k) is a bounded reference sequence.
Therefore, the dynamics equation is rewritten as blow: For tracking objective, the following equation should be sat-
isfied [29]:
( ) ( ) ( ) ( )
C1 j z−1 x j z−1 = z−1 Γj z−1 rj z−1 . (30)

Moreover, the error equation is defined as:


ej (k) = xj (k) − xmj (k). (31)

It is clear that the control objective is accomplished if the


following equation holds [29]:

C2 j (z−1 ) ej (k + 1) = 0, k > 0, (32)

where C2 j (z−1 ) is an asymptotic stable polynomial as


described in Eq. (32):

C2 j (z−1 ) = 1 + 𝛾1 j z−1 + 𝛾2 j z−2 + … + 𝛾n j z−Nc2 j , (33)

Fig. 5  Discrete-time adaptive control structure

13
International Journal of Aeronautical and Space Sciences

For regulation objective, the control system must reject any


disturbance in the initial moment (xj (0) ≠ 0) . Therefore, the
equation below must be satisfied [29].

C2j (z−1 ) xj (k + 1) = 0, k ≥ 0. (34)

According to Eq. (32) and using Eq. (31) the control law is


Fig. 6  Desired dynamics block diagram
obtained as follow:

1 ( )
uj ad (k) = C2j (z−1 )xmj (k + 1) − 𝜇1j (z−1 )xj (k) −𝜇2j (z−1 )uj ad (k) + C2j (z−1 ) Δj , (35)
b0j

disturbances, sensor noise, and the un-modeled dynamic are


where:
bounded ( Δf (x, u) is bounded) and therefore, Λ1 (k) , Λ2 (k)
C2 (z−1 ) = A(z−1 )S(z−1 ) + z−td 𝜇1 (z−1 ), NC2 = NA + td − 1, and Λ3 (k) are consequently bounded. According to Fig. 6,
S(z−1 ) = 1 + s1 z−1 + ⋯ + sNS z−NS , NS = td − 1, the desired dynamics block diagram is applied to track the
reference model and generating the pseudo input ẋ c . The
𝜇1 (z ) = 𝜆0 + 𝜆1 z−1 + ⋯ + 𝜆N𝜇 z−N𝜇1 , N𝜇1 = max(NA − 1, NC2 − td ),
−1
1
values km1 , km2 , Ts are considered as 0.025, 35, and 0.1,
𝜇2 (z−1 ) = B(z−1 )S(z−1 ) − b0 . respectively.
(36)
4.3 Outer Loop Controller Design
4.2.1 Stability proof
For the outer-loop position control, a discrete-time veloc-
The hyperstability concept mainly deals with the stability ity form of PID control algorithm is applied. Based on the
properties of standard feedback control systems, which satis- desired trajectory and their first and second derivatives, the
fies the below inequality [30]: dynamics of the position error can be derived as:

k1 u(t) = u(t − 1) − Kd (P(t) − 2P(t − 1) + P(t − 2)) + Kp (Pe (t) − Pe (t − 1)) + Ki Pe (t),
uT (k)y(k) ≥ −𝛾02 for all k1 ≥ k0 . (37) Pd (t) = [xd (t), yd (t), zd (t)] , Pe (t) = Pd (t) − P(t),
k=k0
(40)
Considering Popov’s hyperstability theory, the necessary where Pd is the desired position with bounded first and
and sufficient condition for asymptotic stability of a general second derivatives, Pe is the positions error, and the PID
transfer function of a linear system G(z−1 ) with a standard gains ( Kp , Kd  , Ki ) are derived based on the conditions of
feedback controller, is that G(z−1 ) must be strictly positive Routh-Hurwitz to exponentially converge the error to zero.
real. By using Eqs. (11), (35), (36) the error is obtained as Based on the desired positions and translational dynamics of
below: Eq. (1), the desired Euler angles can be derived:

⎧ e (k) = 𝜌 e (k − 1) + 𝜌 e (k − 2) + Λ (k) ⎧ � �
m̈x
⎪ 1 11 1 12 1 1 ⎪ 𝜃c = arcsin cos 𝜓d uz
⎨ e2 (k) = 𝜌21 e2 (k − 1) + 𝜌22 e2 (k − 2) + Λ2 (k) , (38) ⎨ � �, (41)
m̈y
⎪ e3 (k) = 𝜌31 e3 (k − 1) + 𝜌32 e3 (k − 2) + Λ3 (k) ⎪ 𝜑c = − arcsin cos 𝜓d uz
⎩ ⎩

where in the above equation uz = m ẍ + ÿ + (̈z + g) and the
e1 (k) 1
⎧ G1 (z−1 ) = Λ1 (k)
= 1−𝜌11 z−1 −𝜌12 z−2 desire heading angle ( 𝜓d ) is imposed by the trajectory gen-
⎪ −1 e2 (k) 1 eration module. The conventional PID control algorithm has
⎨ G2 (z ) = Λ2 (k)
= 1−𝜌21 z−1 −𝜌22 z−2
. (39)
⎪ G (z−1 ) = e3 (k) 1 the problem of integral wind up when the integral value is
⎩ 3 Λ3 (k)
= 1−𝜌31 z−1 −𝜌32 z−2 high and the error switches its sign. To remove these prob-
lems, an anti-windup filter is applied in the integral part of
As a result of Popov’s hyperstability theory, for asymp-
the PID algorithm according to Ref. [33].
totic stability, G1 (z−1 ) , G2 (z−1 ) and G3 (z−1 ) must be strictly
positive real. Therefore, following conditions must be satis-
4.4 State Estimation
fied: (1) the error transfer functions (Eq. 39) must be positive
real; (2) Λ1 (k) , Λ2 (k) and Λ3 (k) must be bounded. The first
For the purpose of state estimation, the nonlinear dynamics
condition of stability is achieved by appropriate selections
of quadcopter can be shown as below:
of model reference (Eq. 29) and C2j (z−1 ) . Since the external

13
International Journal of Aeronautical and Space Sciences

xk = f (xk−1 , uk ) + wk , where ỹ k is the measurement residual, zk is the measurement


(42) vector, Hk is 8 × 8 identity matrix, Sk is the residual covari-
zk = h(xk ) + vk ,
ance, and Kk is the Kalman gain, which is used to update the
where uk is the control input and wk and vk are the process states, while the error covariance matrix is updated after new
and output noises with assumed zero mean and with covari- measurements.
ance Qk and Rk, respectively. By linearizing the nonlinear
system about each trim condition, the linear state equation
and the error covariance matrix is derived as: 4.5 Fault Detection and Identification
x̂ k|k−1 = Fk x̂ k−1|k−1 + Bk−1 uk−1 ,
(43) The relationship between the controller output and each
Pk|k−1 = Fk Pk−1|k−1 + FkT + Qk−1 , motor thrust considering the effect of fault is as follows:

where x̂ k|k−1 is the state estimation, Fk is the transition ⎡


1
0 −1 1

4(1−f1 ) 2l(1−f1 ) 4(1−f1 )
matrix, uk−1 is the control input, Bk−1 is the control input ⎢ ⎥
matrix, and Pk|k−1 is the error covariance matrix. The lin- ⎡ T1 ⎤ ⎢ 1 1 −1 ⎥⎡ uz ⎤
⎢ T2 ⎥ ⎢⎢ ⎥⎢ ⎥
0
earized model for Kalman estimation is as:
4(1−f2 ) 2l(1−f2 ) 4(1−f2 )
⎢T ⎥ = ⎢ ⎥⎢ u𝜃 ⎥. (47)
⎢ 3⎥ ⎢ 1 1 1 ⎥⎢ u𝜑 ⎥
0 ⎥⎣ u ⎦
⎡ 𝜙k�k−1 ⎤ ⎡ 𝜙k−1�k−1 ⎤ ⎣ T4 ⎦ 4(1−f3 ) 2l(1−f3 ) 4(1−f3 )
⎢ 𝜙̇ ⎥ ⎢ 𝜙̇ ⎥ ⎢ ⎥ 𝜓
⎢ k�k−1 ⎥ ⎢ k−1�k−1 ⎥ ⎢ 1 −1 −1 ⎥
⎣ 0 ⎦
⎢ 𝜃k�k−1 ⎥ ⎢ 𝜃k−1�k−1 ⎥ ⎡ uz ⎤
4(1−f4 ) 2l(1−f4 ) 4(1−f4 )
⎢ 𝜃̇ k�k−1 ⎥ ⎢ 𝜃̇ k−1�k−1 ⎥
⎢ ⎥ = Fk ⎢ ⎥ + Bk−1 ⎢⎢ u𝜑 ⎥⎥. (44) Estimated states by Kalman filter and the controller out-
⎢ 𝜓 ⎥ ⎢ 𝜓 ⎥
k�k−1 k−1�k−1
⎢ u𝜃 ⎥ puts are used to detect and identify the partial propeller fault.
⎢ 𝜓̇ k�k−1 ⎥ ⎢ 𝜓̇ k−1�k−1 ⎥ ⎣ u𝜓 ⎦
⎢ ⎥ ⎢ ⎥ In the case of propeller damage, the objective is to detect
⎢ zk�k−1 ⎥ ⎢ zk�k−1 ⎥ the faulty motor and identify the magnitude of fault fi . The
⎢ ż ⎥ ⎢ ż ⎥ differences between the controller outputs and the angular
⎣ k�k−1 ⎦ ⎣ k�k−1 ⎦
rates after one sample time (Ts) are used for fault detection.
With Ts as the measurement sample time and the simu- The criteria for the occurrence of partial damage to each
lation time step, a discretization model according to Refs. motor is as follows:
[31, 32] is applied for derivation of transition and control
input matrices as below: • If Δu𝜃 < uthreshold and Δq < −||qthreshold ||  , number one
motor is faulty.
⎡1 Ts 0 0 0 0 0 0 ⎤ ⎡ 0 0 ⎤
• If Δu𝜑 < uthreshold and Δp > ||pthreshold || , number two motor
0 0
⎢ ⎥ ⎢ ⎥
⎢0 1 0 0 0 0 0 0 ⎥ ⎢ 0 −b T 0 b1 Ts ⎥
⎢ ⎥ ⎢
1 s
⎥ is faulty.
• If Δu𝜃 < uthreshold and Δq > ||qthreshold ||  , number three
⎢0 0 1 Ts 0 0 0 0 ⎥ ⎢ 0 0 0 0 ⎥
⎢0 0 0 1 0 0 0 0 ⎥⎥ ⎢ b T 0 −b2 Ts 0 ⎥⎥
Fk = ⎢
⎢0
, Bk = ⎢ 2 s , motor is faulty.
0 0 0 1 Ts 0 0 ⎥ ⎢ 0 0 ⎥
• If Δu𝜑 < uthreshold and Δp < −||pthreshold || , number four
0 0
⎢ ⎥ ⎢ ⎥
⎢0 0 0 0 0 1 0 0 ⎥ ⎢ −b3 Ts b3 Ts −b3 Ts b3 Ts ⎥
⎢ ⎥ ⎢ ⎥ motor is faulty.
⎢0 0 0 0 0 0 1 Ts ⎥ ⎢ 0 0 0 0 ⎥
⎢ ⎥ ⎢ � � � � ⎥
⎣0 0 0 0 0 0 0 1 ⎦ ⎣ T s m T s m T s m Ts m ⎦
where Δu𝜑,Δu𝜃 are the input change one step time before
(45)
/ / / the fault time as Δu𝜑 = u𝜑 (tf − Ts ) − u𝜑 (tf − 2Ts ) and Δp
where b1 = l Ix , b2 = l Iy , b1 = l Iz . The extended Kalman and Δq are the change of angular velocity at the time of
filter equations are applied to the above dynamics of state fault as Δp = p(tf ) − p(tf − Ts ) . The angular rates are meas-
estimations in presence of output noise as below: ured using the extended Kalman filter. The presented control
ỹ k = zk − Hk x̂ k|k−1 , architecture is able to effectively track the desired trajectory
considering uncertainty and limited amounts of propeller
Sk = Hk Pk|k−1 HkT + Rk , damage but is not able to control the system in the presence
Kk = Pk|k−1 HkT Sk−1 , (46) of severe faults. Therefore, the threshold values are deter-
x̂ k|k = x̂ k|k−1 + Kk ỹ k , mined based on the performance of the controller without
( ) fault detection algorithm. Table 2 presents a lookup table,
Pk|k = I − Kk Hk Pk|k−1 ,
which is prepared by injecting different magnitudes of the
fault and measuring the filtered variation of angular rotations

13
International Journal of Aeronautical and Space Sciences

Table 2  Look up table for Motor 10% 20% 30% 40% 50%


motor fault estimation, values
in deg/s  No. 1 Δq = −2.55 Δq = −5.1 Δq = −7.66 Δq = −9.87 Δq = −12.62
|Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold
No. 2 Δp = 2.55 Δp = 5.1 Δp = 7.66 Δp = 9.87 Δp = 12.62
|Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold
No. 3 Δq = 2.55 Δq = 5.1 Δq = 7.66 Δq = 9.87 Δq = 12.62
|Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold |Δp| < pthreshold
No. 4 Δp = −2.55 Δp = −5.1 Δp = −7.66 Δp = −9.87 Δp = −12.62
|Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold |Δq| < qthreshold

( Δp, Δq ) in the simulation. A fixed time-step of Ts = 0.01 First, the robustness of the controller is investigated with-
has been applied in the simulation. Based on the quadcopter out applying the fault detection algorithm. Next, the perfor-
rotational equations the rotational rates can be estimated as mance of the fault-tolerant control is examined for different
below: percentages of fault on different motors.
(pk − pk+1 ) l
≅ (T4 k4 − T2 k2 ), (48) 5.1 Controller without Fault Detection Algorithm
Ts Ix
The robustness of the proposed discrete-time adaptive con-
where ki = 1 − fi in the above equation. Considering each
troller is examined in the presence of 5% and 10% of the
motor thrust force equal to T4 = T2 = W∕4 in hover trim
propeller fault of number two motor. Figure 7 illustrates
condition and considering that damage occurs on one of the
the controller performance for the above cases. The fault
motors, Δkp = k4 − k2 can be estimated as below:
is introduced to the quadcopter model at t = 10 s while the
( )
4I Δp control algorithm tries to recover the quadcopter stability
Δkp ≅ x . (49) and tracking the desired inputs of position (x, y, h) and a
lW Ts
constant heading rate ( 𝜓  ). Accordingly, the proposed con-
Therefore, if Δp < 0 , then Δkp < 0 meaning that motor troller performance is satisfactory for 5% of the fault but is
number four is faulty otherwise if Δp > 0 , then Δkp > 0 and not desirable in 10% of fault. Based on the simulations it can
therefore number two motor is faulty. Since it is assumed be inferred that the proposed controller is robust for more
that only one motor is faulty, the percentage of fault magni- than 10% of the motor fault but does not have a good track-
tude is equal to f = 1 − Δkp . The same formulation can be ing performance. Therefore, the fault detection algorithm
inferred for the pitch dynamics regarding number one and will be applied for the faults bigger than 10%.
three motors. Table 2 shows the signs and magnitudes of
rotational angular velocity variation in different percentages 5.2 Fault‑tolerant Controller Performance
of fault, where the maximum fault is considered to be 50%
of motor fault. The proposed controller must recover the stability of quad-
The magnitude of thresholds in Table 2 is determined copter and track the desired trajectory in the presence of
based on the magnitudes of Δp and Δq for 5% of propeller abrupt propeller effectiveness up to 50% of damage. For the
damage. It will be shown that the proposed discrete-time propeller faults more than 50% the faulty motor will be satu-
adaptive controller is robust and has desirable performance rated and cannot generate enough thrust to control all three
for 5% of damage to any one of the motor’s propeller. rotations of quadcopter around x, y, and z axes. For more
severe faults or complete loss of one motor, which is not the
case of analysis in this paper, the control of one axis (around
5 Simulation Results z) is neglected and the other two axes (roll and pitch) are
controlled. According to the lookup table of Table 2, the var-
Several numerical simulations are considered in the presence iation of pitch and roll rates is used to detect and identify the
of partial loss of rotor effectiveness to verify the perfor- partial rotor damage. For this purpose, the extended Kalman
mance of the proposed three-loop fault-tolerant controller. filter is applied to minimize the effect of noise. Figure 8

13
International Journal of Aeronautical and Space Sciences

depicts the estimated angular rates and angles in presence


of sensor measurement noises.
The performance of the proposed fault-tolerant controller
is examined in two separate fault scenarios. 40% of fault is
introduced on motor number 2, in the first scenario. Figure 9
illustrates the tracking performance of the controller in the
first scenario.
Figure 9a represents the altitude and Euler angles track-
ing. A sudden increase in roll angle and yaw angle is experi-
enced due to the propeller damage at t = 10 s but the control-
ler satisfactorily recovers the roll and yaw angles and tracks
the desired input values. Figure 9b and c illustrates the con-
troller outputs and each motor rotational velocity that affect
the thrust force, respectively. Accordingly, the rotational
speed of the faulty motor suddenly increases to compensate
for the thrust reduction due to 40% of propeller damage.
Figure 9d illustrate the variation of estimated pitch rate,
which is used for fault estimation. At time tf = 10 s, the pitch
rate suddenly changes from around zero to 12 deg/s, which
indicates 50% of fault in the second motor as described in
Table 2. In fact, the fault of number 2 motor induces an abrupt
positive roll rate and consequently positive roll angle. Fig-
ure 9e depicts the estimated percentage of fault that occurs one
time-step ahead at t = 10.01 s. According to the described fault
detection logic, the value of fault will be determined based on
the initial jump of the angular rates bigger than a threshold
value, which is considered as 2 deg/s. In fact, this value is less
than the effect of 5% damage, which can be tackled by the
controller without fault detection and is bigger than the effect
of state and output noises.
Scenario 2, investigates the control algorithm performance
for the partial damage to the propeller of motor number one.
The fault to motor one induces a sudden negative pitch rate
according to Eq. (1).
According to Fig. 10, simulation results of different fault
cases of 30%, 40%, and 50% demonstrate the acceptable per-
formance of the proposed strategy in controlling the drone in
the presence of motor fault.
Figure 10a and b illustrates the Euler angles and the rota-
tional speeds of each motor, respectively. Accordingly, a sud-
den increase in the rotational speed of motor number one is
obvious. Figure 10c and d illustrate the fault detection proce-
dure based on the variations of angular rates and the values
presented in Table 2 for the 40% of the fault to motor number
1. At tf = 10 s, the pitch rate suddenly changes from zero to
− 10 deg/s. In fact, a negative pitch rate indicates the fault of
Fig. 7  Controller performance without fault detection algorithm for: motor one and the positive value determines the fault in motor
no fault, 5% propeller fault, and 10% of fault, a 3-D trajectory, b posi-
tion and euler angles, c controller outputs number 4.

13
International Journal of Aeronautical and Space Sciences

Fig. 8  The EKF application for state estimation of quadcopter

Fig. 9  Simulation of fault scenario 1, a quadcopter states, b controller outputs, c rotational speeds of the propellers, d variation of quadcopter
angular speeds, e fault estimation

Figure 11a and b illustrate the performance comparison of is much better than the PID controller. For higher magnitudes
the proposed controller with a proportional–integral–deriva- of fault, more than 30%, the PID controller performance is
tive (PID) algorithm in presence of 30% of fault in number one oscillatory with big overshoots and therefore, cannot be com-
motor. In both approaches, the same fault detection algorithm pared with the proposed algorithm.
is applied. Accordingly, the proposed controller performance

13
International Journal of Aeronautical and Space Sciences

Fig. 10  Simulation of fault scenario 2, a quadcopter Euler angles, b rotational speeds of the propellers, c variation of quadcopter angular speeds,
d fault estimation

13
International Journal of Aeronautical and Space Sciences

Fig. 11  Comparison of the PID and the proposed controller with 30% of no. 1 motor

6 Conclusion Acknowledgements  This research is supported by the Scientific and


Technological Research Council of Turkey (TÜBİTAK) with project
number [120M793].
This paper presents a fault-tolerant trajectory tracking con-
troller including a fault detection algorithm and a three-
loop discrete-time nonlinear adaptive controller algorithm
References
to control the drone in presence of motor fault. The fault
detection algorithm uses the filtered angular rates based 1. Chen F, Wu Q, Jiang B, Tao G (2015) A reconfiguration scheme
on the extended Kalman filter and the autopilot commands for quadrotor helicopter via simple adaptive control and quantum
to detect and identify the magnitude of partial loss of pro- logic. IEEE Trans Ind Electron 62(7):4328–4335
2. Saied M, Lussier B, Fantoni I, Francis C, Shraim H, Sanahuja G (2015)
peller effectiveness. The simulation results demonstrate
Fault diagnosis and fault-tolerant control strategy for rotor failure in
that the performance of the adaptive controller without an octa rotor. In: IEEE International Conference on Robotics and
fault detection algorithm satisfactory in presence of 10% Automation (ICRA 2015), May 2015, Seattle, Washington, United
of motor fault. Therefore, the threshold values, which States, pp 5266–5271. https://​doi.​org/​10.​1109/​ICRA.​2015.​71399​33
3. Giribet JI, Pose CD, Ghersin AS, Mas I (2018) Experimental
determine the occurrence of a fault is defined based on
validation of a fault-tolerant Hexacopter with tilted rotors. Int
10% of damage in which the controller performance with- J Electr Electron Eng Telecommun 7(2):58–65. https://​doi.​org/​
out fault detection algorithm is satisfactory. The simula- 10.​18178/​ijeetc.​7.2.​58-​65
tion results demonstrate that the proposed controller has 4. Mazeh H, Saied M, Shraim H, Francis C (2018) Fault-tolerant
control of an Hexarotor unmanned aerial vehicle applying out-
satisfactory performance considering rotor damages up
door tests and experiments. Int Fed Autom Control 51:312–317
to 50%. For more severe damages, the motor thrust satu- 5. Nguyen NP, Xuan Mung N, Hong SK (2019) Actuator fault
rates and trajectory tracking control cannot be achieved. detection and fault-tolerant control for Hexacopter. Sensors
In future research, the proposed effective algorithm will 19:4721. https://​doi.​org/​10.​3390/​s1921​4721
6. Lopez-Franco C, Gomez J, Alanis A, Daniel N, Villasenor C
be implemented on the drone in flight tests to verify the
(2017) Visual Servoing for an autonomous Hexarotor using a
performance of the algorithms in different fault scenarios.

13
International Journal of Aeronautical and Space Sciences

neural network based PID controller. Sensors 17:1865. https://​ 21. Khebbache H, Sait B, Yacef F, Soukkou Y (2012) Robust stabili-
doi.​org/​10.​3390/​s1708​1865 zation of a quadrotor aerial vehicle in presence of actuator faults.
7. Asadi D, Sabzehparvar M, Talebi HA (2013) Damaged airplane Int J Inf Technol Control Autom 2(2):1–13
flight envelope and stability evaluation. Aircr Eng Aerosp Tech- 22. Gao Z, Cecati C, Ding SX (2015) A survey of fault diagnosis
nol 85(3):186–198. https://​doi.​org/​10.​1108/​00022​66131​13136​ and fault-tolerant techniques—part I: fault diagnosis with model-
23 based and signal-based approaches. IEEE Trans Ind Electro
8. Asadi D, Sabzehparvar M, Atkins EM, Talebi HA (2014) Dam- 62(6):3757–3767
aged airplane trajectory planning based on flight envelope and 23. Amoozgar MH, Chamseddine A, Zhang Y (2013) ‘Experimental
stability of motion primitives. J Aircr 51(6):1740–1757. https://​ test of a two-stage Kalman filter for actuator fault detection and
doi.​org/​10.​2514/1.​C0324​22 diagnosis of an unmanned quadrotor helicopter.’ J Intell Robot
9. Asadi D, Atkins EM (2017) Multi-objective weight optimization Syst 70:107–117
for trajectory planning of an airplane with structural damage. J 24. Avram RC, Zhang X, Muse J (2017) ‘Quadrotor actuator fault
Intell Rob Syst. https://​doi.​org/​10.​1007/​s10846-​017-​0753-9 diagnosis and accommodation using nonlinear adaptive estima-
10. Lanzon A, Freddi A, Longhi S (2014) Flight control of a quad- tors.’ IEEE Trans Control Syst Technol 25(6):2219–2226
rotor vehicle subsequent to a rotor failure. J Guid Control Dyn 25. Cen Z, Noura H, Susilo BT, Younes YA (2014) Robust fault diag-
37:580–591 nosis for quadrotor UAVs using adaptive Thau observer. J Intell
11. Santos MCP, Rosales C, Sarapura J, Sarcinelli-Filho M, Carelli Robot Syst 73(1–4):573–588
R (2019) An adaptive dynamic controller for quadrotor to per- 26. Frangenberg M, Stephan J, Fichter W (2015) Fast actuator fault
form trajectory tracking tasks. J Intel Robot Syst 93:5–16 detection and reconfiguration for multicopters (AIAA 2015–
12. Müller MW, RD’Andrea (2014) Stability and control of a quad- 1766). In: Proceedings of the AIAA guidance, navigation, and
rocopter despite the complete loss of one, two, or three propel- control conference and exhibit,AIAA Guidance, Navigation,
lers. In: EEE International Conference on Robotics and Automa- and Control Conference, 5–9 January 2015 Kissimmee, Florida.
tion (ICRA), pp 45–52 https://​doi.​org/​10.​2514/6.​2015-​1766
13. Ahmadi K, Asadi D, Pazooki F (2017) Nonlinear L1 adaptive 27. Han W, Wang Z, Yi S (2018) ‘Fault estimation for a quadro-
control of an airplane with structural damage. Proc Inst Mech Eng tor unmanned aerial vehicle by integrating the parity space
Part G 233(1):341–353 (0954410017730088) approach with recursive least squares.’ Proc Inst Mech Eng G
14. Asadi D, Ahmadi K (2020) Nonlinear Robust adaptive control of 232(4):783–796
an airplane with structural damage. Proc Inst Mech Eng Part G. 28. Asadi D (2022) Partial engine fault detection and control of a
https://​doi.​org/​10.​1177/​09544​10020​926618 quadrotor considering model uncertainty. Turkish J Eng 6(2):106–
15. Sharifi F, Mirzaei M, Gordon BW, Zhang YM (2010) Fault-toler- 117. https://​doi.​org/​10.​31127/​tuje.​843607
ant control of a quadrotor UAV using sliding mode control. Proc 29. Landau ID, Lozano R (1981) Unification of discrete time
Conf Control Fault-tolerant Syst Nice France 6–7:239–244 explicit model reference adaptive control designs. Automatica
16. Asadi D, Bagherzadeh S (2017) Nonlinear adaptive sliding mode 17(4):593–611
tracking control of an airplane with wing damage. Proc Inst Mech 30. Popov V-M (1973) Hyperstability of control systems. Springer-
Eng 232(8):1405–1420 (0954410017690546) Verlag, New York
17. Barghandan S, Badamchizadeh MA, Jahed-Motlagh MR (2017) 31. Tarhan M, Altug E (2011) EKF based attitude estimation and
Improve adaptive fuzzy sliding mode controller for robust fault- stabilization of a quadrotor UAV using vanishing points in Cata-
tolerant of a quadrotor. Int J Control Autom Syst 15:427–441 dioptic images. J Intell Syst 62:587–607. https://​doi.​org/​10.​1007/​
18. Mohammadi M, Shahri AM (2013) Adaptive nonlinear stabiliza- s10846-​010-​9459-y
tion control for a quadrotor UAV: theory, simulation and experi- 32. Merheb AR (2016) Diagnostic and fault-tolerant control applied
mentation. J Intell Robot Syst 72(1):105–122 to an unmanned aerial vehicle, AIX Marseille University, France,
19. Ranjbaran M, Khorasani K (2010) Fault recovery of an under- Ph.D. Thesis, December 5, 2016
actuated quadrotor Aerial Vehicle. In: 49th IEEE Conference on 33. Ermeydan A, Kiyak E (2017) Fault tolerant control against actua-
Decision and Control (CDC), pp 4385–4392. https://​doi.​org/​10.​ tor faults based on enhanced PID controller for a quadrotor. Aircr
1109/​CDC.​2010.​57181​40 Eng Aerosp Technol 89(3):468–476. https://​doi.​org/​10.​1108/​
20. Zhang Y, Chamseddine A (2012) Fault-tolerant flight control tech- AEAT-​04-​2015-​0096
niques with application to a quadrotor UAV testbed. In: Lombae-
rts T (ed) Automatic flight control systems—latest developments. Publisher's Note Springer Nature remains neutral with regard to
InTech, pp 119–150 jurisdictional claims in published maps and institutional affiliations.

13

You might also like