Asadi2021 Article Fault-TolerantTrajectoryTracki
Asadi2021 Article Fault-TolerantTrajectoryTracki
Asadi2021 Article Fault-TolerantTrajectoryTracki
https://doi.org/10.1007/s42405-021-00412-9
ORIGINAL PAPER
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
13
Vol.:(0123456789)
International Journal of Aeronautical and Space Sciences
13
International Journal of Aeronautical and Space Sciences
3 Mathematical Model
3.1 Quadcopter Model
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.
13
International Journal of Aeronautical and Space Sciences
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)
13
International Journal of Aeronautical and Space Sciences
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
⎧ 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
13
International Journal of Aeronautical and Space Sciences
( Δ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
13
International Journal of Aeronautical and Space Sciences
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
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/s17081865 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/000226613113136 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.C032422 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/0954410020926618 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.5718140 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