# U-Model-Based Sliding Mode Controller Design for Quadrotor UAV Control Systems

Authors: Rui Wang; Lei Gao; Chengrui Bai; Hui Sun
Journal: Mathematical Problems in Engineering
 (2020)

---

## Abstract

This paper proposes a U-model-based fault-tolerant controller design method in order to ensure the unmanned aerial vehicle (UAV) flight performance when subject to the actuator failures. Depending on the decoupled quadrotor model, this paper presents a sliding mode control method based on U-model in detail and realizes fault-tolerant control for the quadrotor UAV with the stability theory and simulation experiment verifications. The results show that the new controller designed by using the U-model method can simplify the controller design process which has good fault-tolerant characteristics when actuator faults occur compared with the traditional method.


---

## Body

## 1. Introduction

Quadrotor vehicle is a typical UAV and has been widely used in reconnaissance, damage assessment, agricultural inspection, express delivery, formation performance, and other multiple different functions by carrying corresponding task equipment [1, 2]. To meet the vast missions quadrotor vehicles can perform, different types of vehicles spring up and the corresponding various controllers are required to meet performance requirements and demands. In addition, quadrotor UAV may suffer various problems such as gust disturbance, mechanical vibration, and actuator failures during flight. These problems may reduce the flight performance and bring greater difficulties for controller design. Therefore, the controller design method compensating among different models will improve the development process of quadrotor UAV while ensuring the control system performance.The U-model was first proposed in 2002, and this method considers the controlled object as a unit when designing the controller and then designs a universal controller that meets the requirements of the controlled object [3]. The core process is to calculate the inverse of the object plant and integrate with the already designed universal controller to form a new controller. This universal controller is not necessary to be redesigned when fixed because of the performance requirements which are almost the same for different quadrotors. Under normal circumstances, aerial vehicle actuator failures include damage, stuck, floats, and saturation failures. These failures will affect system dynamics performances, even damage aerial vehicles [4]. In order to guarantee the safety for quadrotors, the fault-tolerant control technology has been widely employed in control system designs. Hao proposed an adaptive fault-tolerant control method for the quadrotor attitude system with portion of actuator failures [5–7]. Zhang developed the active fault-tolerant quadrotor UAV flight experiments based on sliding mode control and demonstrated that robustness of the active fault-tolerant is better than that of the passive one [8, 9]. Liu studied an improved fault-tolerant tracking controller for the quadrotor UAV which is able to compensate the efficiency loss due to actuator failures [10]. Meanwhile, multiple studies focus on generating observers to realize fault diagnosis and reconstruction. For example, Yang conducted system linear transformation and reconstructed faults by using sliding mode observers and the equivalent output injection method [11]. Gong proposed a fault diagnosis method based on the state observer technology and theoretically analyzed its robustness and fastness [12].So far, a large amount of in-depth research on controller design and system construction methods for quadrotor UAVs are improving better and better. However, in specific design process, it is still necessary to spend a lot of time to design different controllers for different models. The main contribution of this paper is to develop a general controller design method for UAVs by combining U-model and the fault-tolerant control methods. The proposed method can simplify the design process, and the designed universal controller can be reused in the design of controllers for different UAV plants as well as guarantee the great control performances.


## 2. U-Model-Based Quadrotor UAV Model

### 2.1. Preliminary about Quadrotor UAV Dynamics

First, two basic coordinate systems are mentioned to obtain the mathematical model for the quadrotor, the inertial systemE (OXYZ), and the airframe coordinate system B (oxyz), as shown in Figure 1.Figure 1
Rigid body force diagram of a quadrotor.The transformation matrix for converting coordinate systems is described as follows:(1)Q=QxQyQz=cosψcosϕcosψsinθsinψcosψsinθcosϕ+sinψsinϕsinψcosθsinψsinθsinϕsinψsinθcosϕ−sinϕcosψ−sinθcosθsinϕcosθcosϕ,where Φ, θ, and ψ are the roll angle, pitch angle, and yaw angle of the three axes of the inertial coordinate system, respectively. Fx, Fy, and Fz are defined as components of F in three coordinate axes of the airframe coordinate system. F is the external force applied on the quadrotor, m is the mass of the quadrotor, V is the speed of the aircraft, and M is the sum of the torques experienced by the quadrotor. According to the physical equation,(2)F=mdVdt,M=dHdt.Gravity G, drag Di, lift of a single rotor Ti are defined as follows(3)G=mg,Di=ρCdωi22=kdωi2,Ti=ρCtωi22=ktωi2.According to the force analysis, Newton’s second law, and the dynamics and coordinate transformation (1), the linear motion equation can be obtained as follows:(4)x¨=Fx−K1x˙m=kt∑i=14ωi2cosψsinθcosϕ+sinψsinϕ−K1x˙m,y¨=Fy−K2y˙m=kt∑i=14ωi2sinsψsinϕcosϕ−cosψsinϕ−K2y˙−K2x˙m,z¨=Fz−K3z˙−mgm=kt∑i=14ωi2cosϕcosϕ−K3z˙m−g.Furthermore,(5)ϕ˙θ˙ψ˙=pcosθ+qsinϕsinθ+rcosϕsinθcosθqcosϕ+rsinϕqsinϕ+rcosϕcosθ,The angular motion equations can be derived by calculating angular momentum as follows:(6)ϕ¨θ¨ψ¨=Mx+Ix−Izθ˙ψ˙IxMy+Iz−Ixψ˙ϕ˙IyMz+Ix−Iyϕ˙θ˙Iz,where Mx, My, and Mz are three-axial angular motion and Ix, Iy, and Iz are the moments of inertia.Defineu1, u2, u3, and u4 as control inputs for four independent channels of the quadrotor, respectively:(7)u1u2u3u4=F1+F2+F3+F4F4−F2F3−F1F2+F4−F3−F1=kt∑i=14ωi2ktω42−ω22ktω32−ω12kdω12−ω22+ω32−ω42,where u1 is the vertical speed control amount, u2 is the roll input control amount, u3 is the pitch control amount, u4 is the yaw control amount, and ω is the rotor speed.The linear motion equation and the angular motion equation can be combined to obtain the nonlinear motion equation of the quadrotor. The mathematical model is described as follows:(8)x¨=cosψsinθcosϕ+sinψsinϕu1m,y¨=sinψsinϕcosϕ−cosψsinϕu1m,z¨=cosϕcosθu1m−g,ϕ¨=lu2+θ˙ψ˙Iy−IzIx,θ¨=lu3+ϕ˙ψ˙Iz−IxIy,ψ¨=u4+ϕ˙θ˙Ix−IyIz,where l is the distance from the center of the rotor to the origin of the airframe coordinate system and ki is the wind resistance coefficient. In the case of no wind and slow flight, the resistance coefficient is neglected [13, 14].The system can be decoupled into independent subsystems including linear motion and angular motion. Furthermore, angular motion is not affected by linear motion. However, linear motion is affected by angular motion. When ignoring the additional small perturbations, the equation of motion of the quadrotor (8) can be obtained as follows [14]:(9)mx˙=Ax+Bu,x=x˙y˙z˙θ˙ϕ˙ψ˙θϕψT,u=u1u2u3u4T.According to the literature [14], the parameters about the quadrotor is demonstrated in Table 1 and the corresponding continuous transfer functions for each control channel of the quadrotor system is listed in Table 2. The calculated discretized transfer functions for each control channel of the quadrotor system are listed in Table 3.Table 1
Quadrotor parameters [14].
Parameters
Values
m (kg)
1.2
l (m)
0.2
k
t × 10−5 (N·s2)
3.13
k
d × 10−7 (N·s2)
7.5
I
x × 10−3 (kg·m2)
2.353
I
y × 10−7 (kg·m2)
2.353
I
z × 10−7 (kg·m2)
5.262Table 2
Continuous transfer function of each channel [14].
Channels
Transfer functions
Pitch channel
G
1
=
θ
/
u
1
=
56.95
s
+
4391
/
s
3
+
105
s
2
+
870
s
+
4430
Roll channel
G
2
=
ϕ
/
u
2
=
65
s
+
4560
/
s
3
+
109
s
2
+
1023
s
+
2935
Yaw channel
G
3
=
ψ
/
u
3
=
105
/
s
2
+
413
s
Z-axis motion
G
4
=
z
/
u
4
=
1.63
/
s
2
+
5
sTable 3
Discrete transfer function of each channel.
Channels
Transfer functions
Pitch channel
G
1
′
=
0.1753
z
2
+
0.1199
z
−
5.78
×
10
−
4
/
z
3
−
1.128
z
2
+
0.4256
z
−
2.754
×
10
−
5
Roll channel
G
2
′
=
0.1763
z
2
+
0.1083
z
−
7.907
×
10
−
4
/
z
3
−
1.184
z
2
+
0.3666
z
−
1.846
×
10
−
5
Yaw channel
G
3
′
=
0.2481
z
+
0.006
/
z
2
+
z
−
1.158
×
10
−
18
Z-axis motion
G
4
′
=
0.006946
z
−
5.881
×
10
−
3
/
z
2
−
1.607
z
+
0.6065


### 2.2. U-Model-Based Quadrotor UAV Model

#### 2.2.1. Preliminary about U-Model

It is known that the controlled plant is considered as a unit when using the U-model to design a new controller. Then, according to the performance requirements for the plant, the new controller is formed by multiplication between the general controller and the inverse of the plant. Furthermore, the U-model is an expression for a class of smooth nonlinear objects. The nonlinear model for the system output can be expressed as a polynomial withuk−1[3]:(10)yk=∑j=0Mαjkujk−1+ek,where k is the time, k∈N+, and M is the order of the model input uk−1. Parameter αjk is a function of inputs uk−2,…,uk−n and outputs. The errors, ek,…,ek−n, are unknown and unmeasured quantities. The control portion can be expressed as a power series of inputs uk−1 with time-varying parameter αjk. In order to apply the linear control design method to obtain the controller outputs, it can be further converted into the current form, that is,(11)Uk=∑j=0Mαjkujk−1+ek.Because the U-model still keeps the characteristics of the controlled plant during inversion processes, it can improve the controller design efficiency.Combining the U-model as mentioned in equation (10) with the pole placement described in the literature [15, 16] in detail, the method of designing the U-model-based pole placement controller is presented below according to each part of Figure 2.Figure 2
Design flow of the pole configuration controller [3].Step 1.
Regard the controlled plant as a unit.Uk=yk=ydk,(12)Rydk=Owk−Syk,ydk=OR+Swk=OAcwk,(13)R+S=Ac,(14)O=Ac1,(15)R=ha+r1ha−1+⋯+ra,O=o0hb+o1hb−1+⋯+ob,S=s0hd+s1hd−1+⋯+sd,where wk is the reference input of the system. R, O, and T are polynomials about the forward operator h. a, b, and d are the highest powers in the forward operator in R, O, and S, respectively, and should satisfy d<a and b≤a. Parameters rp1,rp2,rp3∈R, where p1=1,…,a, p2=1,…,b, and p3=1,…,c. Ac is the characteristic equation polynomial of the closed-loop system, and yd is the expected output of the system. Ac needs to be set during the design process according to the performance requirements of the actual controlled object.Step 2.
Calculate the general controller output,Uk, and use the Newton–Raphson algorithm to solve the output uk−1 of the actual controller:(16)uλ+1k−1=uλk−1−ΘUλk−1−UkdΘuk−1/duk−1=uλk−1−∑j=0Mαjkuλjk−1−Ukd∑j=0Mαjkuλjk−1/duk−1ujk−1=uλjk−1.Step 3.
RegardGcGp−1 = Gc′ as the new controller of Gp. Now, uk−1 is the input of Gp which has been converted to U-model form.


#### 2.2.2. Quadrotor UAV Controller Design

For the abovementioned quadrotor flight control system, a controller with a natural frequency of 1 rad/s and a damping ratio of 0.7 is designed to achieve zero steady-state error. The closed-loop characteristic equation is designed as(17)Ac=h2−1.3205h+0.4966.Therefore, substituteh = 1 into (17), and then it is obtained from (14) that(18)O=Ac1=1−1.3205+0.4966=0.1761.So, the polynomialsR and S can be expressed as(19)R=h2+r1h+r2,S=s0h+s1.Substituting the characteristic equations (17) and (19) into (13), equation (12) can be derived:(20)r2+s1=0.4966,r1+s0=−1.3205.To ensure the convergence ofU(k), let r1=−0.9andr2=0.009, and then obtain s0=−0.4205ands1=0.4876. Therefore, the output of the universal controller is(21)Uk+1=0.9Uk−0.009Uk−1+0.1761wk−1+0.4205yk−0.4876yk−1.Design controllers for each of the four channels with the abovementioned universal controller, respectively.(1)
Convert the discretized transfer function of the pitch channel to a polynomial form as(22)y1k=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1753uk−1+0.1199uk−2−5.78×10−4uk−3.The corresponding U-model form is(23)α10=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1199uk−2−5.78×10−4uk−3,α11=0.1753.The sample time is set 0.001s in this paper. The U-model-based pole placement method is used to design the output and the input responses of the pitch channel as shown in Figures3(a) and 3(b). It can be seen from Figure 3(a) that the system has a small overshoot, almost zero steady-state error, and a fast response speed, which meet the performance requirements of a quadrotor during flight. It can be seen from Figure 3(b) that the controller designed according to the idea of U-model simplifies the design process of the controller while ensuring the uniqueness of the controller.(2)
Convert the discretized transfer function of the rollover channel to a polynomial form as(24)y2k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1763uk−1+0.1083uk−2−7.907×10−4uk−3.The corresponding U-model form is(25)α20k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1083uk−2−7.907×10−4uk−3,α21=0.1763.The output and the input responses of the roll channel are designed using the U-model-based pole placement method as shown in Figures4(a) and 4(b). The comparison between Figures 4(a) and 3(a) shows that the output performance of the controlled object is the same. At the same time, it is found that the input of the controlled object is different, which proves that the designed controller is unique when comparing Figure 4(b) to Figure 3(b).(3)
Convert the discretized transfer function of the yaw channel to a polynomial form as(26)y3k=−yk−1+1.158×10−18yk−2+0.2481uk−1+0.006uk−2.The corresponding U-model form is(27)α30k=−yk−1+1.158×10−18yk−2+0.006uk−2,α31k=0.2481.The U-model-based pole placement method is used to design the output and the input responses of the yaw channel as shown in Figures5(a) and 5(b). The output of the controlled object is also the same as those in Figures 3(a) and 4(a); however, the output of the controller is different from those in Figures 3(b) and 4(b).(4)
Convert the discretized transfer function of the motion in theZ-axis direction into a polynomial form as(28)y4k=1.607yk−1−0.6065yk−2+6.946uk−1−5.881×10−3uk−2.Figure 3
(a) Output of the pitch channel. (b) Input of the pitch channel.
(a)
(b)Figure 4
(a) Output of the roll channel. (b) Input of the roll channel.
(a)
(b)Figure 5
(a) Output of the yaw channel. (b) Input of yaw channel.
(a)
(b)The corresponding U-model form is(29)α40=1.607yk−1−0.6065yk−2−5.881×10−3uk−2,α41=6.946.The U-model-based pole placement method is used to design the output and the input responses of theZ-axis motion as shown in Figures 6(a) and 6(b). The output of the controlled object is also the same as those in Figures 3(a), 4(a), and 5(a), and the inputs of the controlled objects are different.Figure 6
(a)Z-axis motion output. (b) Z-axis motion input.
(a)
(b)By comparing Figures3(a)–6(a) for simulation results, it can be seen that the output responses of the controlled object are the same when the U-model controller is used to control the controlled object. Comparing Figures 3(b)–6(b), it can be seen that the designed controller outputs are different. The newly designed controller developed by using the U-model of the object is formed by GcGp−1. Because Gp−1 varies depending upon the different plants, the newly designed controller issue is converted into calculating the inverse of the plant which simplifies the design process, meanwhile ensuring the performance requirements. Therefore, each newly designed controller works for the specific object.


## 2.1. Preliminary about Quadrotor UAV Dynamics

First, two basic coordinate systems are mentioned to obtain the mathematical model for the quadrotor, the inertial systemE (OXYZ), and the airframe coordinate system B (oxyz), as shown in Figure 1.Figure 1
Rigid body force diagram of a quadrotor.The transformation matrix for converting coordinate systems is described as follows:(1)Q=QxQyQz=cosψcosϕcosψsinθsinψcosψsinθcosϕ+sinψsinϕsinψcosθsinψsinθsinϕsinψsinθcosϕ−sinϕcosψ−sinθcosθsinϕcosθcosϕ,where Φ, θ, and ψ are the roll angle, pitch angle, and yaw angle of the three axes of the inertial coordinate system, respectively. Fx, Fy, and Fz are defined as components of F in three coordinate axes of the airframe coordinate system. F is the external force applied on the quadrotor, m is the mass of the quadrotor, V is the speed of the aircraft, and M is the sum of the torques experienced by the quadrotor. According to the physical equation,(2)F=mdVdt,M=dHdt.Gravity G, drag Di, lift of a single rotor Ti are defined as follows(3)G=mg,Di=ρCdωi22=kdωi2,Ti=ρCtωi22=ktωi2.According to the force analysis, Newton’s second law, and the dynamics and coordinate transformation (1), the linear motion equation can be obtained as follows:(4)x¨=Fx−K1x˙m=kt∑i=14ωi2cosψsinθcosϕ+sinψsinϕ−K1x˙m,y¨=Fy−K2y˙m=kt∑i=14ωi2sinsψsinϕcosϕ−cosψsinϕ−K2y˙−K2x˙m,z¨=Fz−K3z˙−mgm=kt∑i=14ωi2cosϕcosϕ−K3z˙m−g.Furthermore,(5)ϕ˙θ˙ψ˙=pcosθ+qsinϕsinθ+rcosϕsinθcosθqcosϕ+rsinϕqsinϕ+rcosϕcosθ,The angular motion equations can be derived by calculating angular momentum as follows:(6)ϕ¨θ¨ψ¨=Mx+Ix−Izθ˙ψ˙IxMy+Iz−Ixψ˙ϕ˙IyMz+Ix−Iyϕ˙θ˙Iz,where Mx, My, and Mz are three-axial angular motion and Ix, Iy, and Iz are the moments of inertia.Defineu1, u2, u3, and u4 as control inputs for four independent channels of the quadrotor, respectively:(7)u1u2u3u4=F1+F2+F3+F4F4−F2F3−F1F2+F4−F3−F1=kt∑i=14ωi2ktω42−ω22ktω32−ω12kdω12−ω22+ω32−ω42,where u1 is the vertical speed control amount, u2 is the roll input control amount, u3 is the pitch control amount, u4 is the yaw control amount, and ω is the rotor speed.The linear motion equation and the angular motion equation can be combined to obtain the nonlinear motion equation of the quadrotor. The mathematical model is described as follows:(8)x¨=cosψsinθcosϕ+sinψsinϕu1m,y¨=sinψsinϕcosϕ−cosψsinϕu1m,z¨=cosϕcosθu1m−g,ϕ¨=lu2+θ˙ψ˙Iy−IzIx,θ¨=lu3+ϕ˙ψ˙Iz−IxIy,ψ¨=u4+ϕ˙θ˙Ix−IyIz,where l is the distance from the center of the rotor to the origin of the airframe coordinate system and ki is the wind resistance coefficient. In the case of no wind and slow flight, the resistance coefficient is neglected [13, 14].The system can be decoupled into independent subsystems including linear motion and angular motion. Furthermore, angular motion is not affected by linear motion. However, linear motion is affected by angular motion. When ignoring the additional small perturbations, the equation of motion of the quadrotor (8) can be obtained as follows [14]:(9)mx˙=Ax+Bu,x=x˙y˙z˙θ˙ϕ˙ψ˙θϕψT,u=u1u2u3u4T.According to the literature [14], the parameters about the quadrotor is demonstrated in Table 1 and the corresponding continuous transfer functions for each control channel of the quadrotor system is listed in Table 2. The calculated discretized transfer functions for each control channel of the quadrotor system are listed in Table 3.Table 1
Quadrotor parameters [14].
Parameters
Values
m (kg)
1.2
l (m)
0.2
k
t × 10−5 (N·s2)
3.13
k
d × 10−7 (N·s2)
7.5
I
x × 10−3 (kg·m2)
2.353
I
y × 10−7 (kg·m2)
2.353
I
z × 10−7 (kg·m2)
5.262Table 2
Continuous transfer function of each channel [14].
Channels
Transfer functions
Pitch channel
G
1
=
θ
/
u
1
=
56.95
s
+
4391
/
s
3
+
105
s
2
+
870
s
+
4430
Roll channel
G
2
=
ϕ
/
u
2
=
65
s
+
4560
/
s
3
+
109
s
2
+
1023
s
+
2935
Yaw channel
G
3
=
ψ
/
u
3
=
105
/
s
2
+
413
s
Z-axis motion
G
4
=
z
/
u
4
=
1.63
/
s
2
+
5
sTable 3
Discrete transfer function of each channel.
Channels
Transfer functions
Pitch channel
G
1
′
=
0.1753
z
2
+
0.1199
z
−
5.78
×
10
−
4
/
z
3
−
1.128
z
2
+
0.4256
z
−
2.754
×
10
−
5
Roll channel
G
2
′
=
0.1763
z
2
+
0.1083
z
−
7.907
×
10
−
4
/
z
3
−
1.184
z
2
+
0.3666
z
−
1.846
×
10
−
5
Yaw channel
G
3
′
=
0.2481
z
+
0.006
/
z
2
+
z
−
1.158
×
10
−
18
Z-axis motion
G
4
′
=
0.006946
z
−
5.881
×
10
−
3
/
z
2
−
1.607
z
+
0.6065


## 2.2. U-Model-Based Quadrotor UAV Model

### 2.2.1. Preliminary about U-Model

It is known that the controlled plant is considered as a unit when using the U-model to design a new controller. Then, according to the performance requirements for the plant, the new controller is formed by multiplication between the general controller and the inverse of the plant. Furthermore, the U-model is an expression for a class of smooth nonlinear objects. The nonlinear model for the system output can be expressed as a polynomial withuk−1[3]:(10)yk=∑j=0Mαjkujk−1+ek,where k is the time, k∈N+, and M is the order of the model input uk−1. Parameter αjk is a function of inputs uk−2,…,uk−n and outputs. The errors, ek,…,ek−n, are unknown and unmeasured quantities. The control portion can be expressed as a power series of inputs uk−1 with time-varying parameter αjk. In order to apply the linear control design method to obtain the controller outputs, it can be further converted into the current form, that is,(11)Uk=∑j=0Mαjkujk−1+ek.Because the U-model still keeps the characteristics of the controlled plant during inversion processes, it can improve the controller design efficiency.Combining the U-model as mentioned in equation (10) with the pole placement described in the literature [15, 16] in detail, the method of designing the U-model-based pole placement controller is presented below according to each part of Figure 2.Figure 2
Design flow of the pole configuration controller [3].Step 1.
Regard the controlled plant as a unit.Uk=yk=ydk,(12)Rydk=Owk−Syk,ydk=OR+Swk=OAcwk,(13)R+S=Ac,(14)O=Ac1,(15)R=ha+r1ha−1+⋯+ra,O=o0hb+o1hb−1+⋯+ob,S=s0hd+s1hd−1+⋯+sd,where wk is the reference input of the system. R, O, and T are polynomials about the forward operator h. a, b, and d are the highest powers in the forward operator in R, O, and S, respectively, and should satisfy d<a and b≤a. Parameters rp1,rp2,rp3∈R, where p1=1,…,a, p2=1,…,b, and p3=1,…,c. Ac is the characteristic equation polynomial of the closed-loop system, and yd is the expected output of the system. Ac needs to be set during the design process according to the performance requirements of the actual controlled object.Step 2.
Calculate the general controller output,Uk, and use the Newton–Raphson algorithm to solve the output uk−1 of the actual controller:(16)uλ+1k−1=uλk−1−ΘUλk−1−UkdΘuk−1/duk−1=uλk−1−∑j=0Mαjkuλjk−1−Ukd∑j=0Mαjkuλjk−1/duk−1ujk−1=uλjk−1.Step 3.
RegardGcGp−1 = Gc′ as the new controller of Gp. Now, uk−1 is the input of Gp which has been converted to U-model form.


### 2.2.2. Quadrotor UAV Controller Design

For the abovementioned quadrotor flight control system, a controller with a natural frequency of 1 rad/s and a damping ratio of 0.7 is designed to achieve zero steady-state error. The closed-loop characteristic equation is designed as(17)Ac=h2−1.3205h+0.4966.Therefore, substituteh = 1 into (17), and then it is obtained from (14) that(18)O=Ac1=1−1.3205+0.4966=0.1761.So, the polynomialsR and S can be expressed as(19)R=h2+r1h+r2,S=s0h+s1.Substituting the characteristic equations (17) and (19) into (13), equation (12) can be derived:(20)r2+s1=0.4966,r1+s0=−1.3205.To ensure the convergence ofU(k), let r1=−0.9andr2=0.009, and then obtain s0=−0.4205ands1=0.4876. Therefore, the output of the universal controller is(21)Uk+1=0.9Uk−0.009Uk−1+0.1761wk−1+0.4205yk−0.4876yk−1.Design controllers for each of the four channels with the abovementioned universal controller, respectively.(1)
Convert the discretized transfer function of the pitch channel to a polynomial form as(22)y1k=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1753uk−1+0.1199uk−2−5.78×10−4uk−3.The corresponding U-model form is(23)α10=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1199uk−2−5.78×10−4uk−3,α11=0.1753.The sample time is set 0.001s in this paper. The U-model-based pole placement method is used to design the output and the input responses of the pitch channel as shown in Figures3(a) and 3(b). It can be seen from Figure 3(a) that the system has a small overshoot, almost zero steady-state error, and a fast response speed, which meet the performance requirements of a quadrotor during flight. It can be seen from Figure 3(b) that the controller designed according to the idea of U-model simplifies the design process of the controller while ensuring the uniqueness of the controller.(2)
Convert the discretized transfer function of the rollover channel to a polynomial form as(24)y2k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1763uk−1+0.1083uk−2−7.907×10−4uk−3.The corresponding U-model form is(25)α20k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1083uk−2−7.907×10−4uk−3,α21=0.1763.The output and the input responses of the roll channel are designed using the U-model-based pole placement method as shown in Figures4(a) and 4(b). The comparison between Figures 4(a) and 3(a) shows that the output performance of the controlled object is the same. At the same time, it is found that the input of the controlled object is different, which proves that the designed controller is unique when comparing Figure 4(b) to Figure 3(b).(3)
Convert the discretized transfer function of the yaw channel to a polynomial form as(26)y3k=−yk−1+1.158×10−18yk−2+0.2481uk−1+0.006uk−2.The corresponding U-model form is(27)α30k=−yk−1+1.158×10−18yk−2+0.006uk−2,α31k=0.2481.The U-model-based pole placement method is used to design the output and the input responses of the yaw channel as shown in Figures5(a) and 5(b). The output of the controlled object is also the same as those in Figures 3(a) and 4(a); however, the output of the controller is different from those in Figures 3(b) and 4(b).(4)
Convert the discretized transfer function of the motion in theZ-axis direction into a polynomial form as(28)y4k=1.607yk−1−0.6065yk−2+6.946uk−1−5.881×10−3uk−2.Figure 3
(a) Output of the pitch channel. (b) Input of the pitch channel.
(a)
(b)Figure 4
(a) Output of the roll channel. (b) Input of the roll channel.
(a)
(b)Figure 5
(a) Output of the yaw channel. (b) Input of yaw channel.
(a)
(b)The corresponding U-model form is(29)α40=1.607yk−1−0.6065yk−2−5.881×10−3uk−2,α41=6.946.The U-model-based pole placement method is used to design the output and the input responses of theZ-axis motion as shown in Figures 6(a) and 6(b). The output of the controlled object is also the same as those in Figures 3(a), 4(a), and 5(a), and the inputs of the controlled objects are different.Figure 6
(a)Z-axis motion output. (b) Z-axis motion input.
(a)
(b)By comparing Figures3(a)–6(a) for simulation results, it can be seen that the output responses of the controlled object are the same when the U-model controller is used to control the controlled object. Comparing Figures 3(b)–6(b), it can be seen that the designed controller outputs are different. The newly designed controller developed by using the U-model of the object is formed by GcGp−1. Because Gp−1 varies depending upon the different plants, the newly designed controller issue is converted into calculating the inverse of the plant which simplifies the design process, meanwhile ensuring the performance requirements. Therefore, each newly designed controller works for the specific object.


## 2.2.1. Preliminary about U-Model

It is known that the controlled plant is considered as a unit when using the U-model to design a new controller. Then, according to the performance requirements for the plant, the new controller is formed by multiplication between the general controller and the inverse of the plant. Furthermore, the U-model is an expression for a class of smooth nonlinear objects. The nonlinear model for the system output can be expressed as a polynomial withuk−1[3]:(10)yk=∑j=0Mαjkujk−1+ek,where k is the time, k∈N+, and M is the order of the model input uk−1. Parameter αjk is a function of inputs uk−2,…,uk−n and outputs. The errors, ek,…,ek−n, are unknown and unmeasured quantities. The control portion can be expressed as a power series of inputs uk−1 with time-varying parameter αjk. In order to apply the linear control design method to obtain the controller outputs, it can be further converted into the current form, that is,(11)Uk=∑j=0Mαjkujk−1+ek.Because the U-model still keeps the characteristics of the controlled plant during inversion processes, it can improve the controller design efficiency.Combining the U-model as mentioned in equation (10) with the pole placement described in the literature [15, 16] in detail, the method of designing the U-model-based pole placement controller is presented below according to each part of Figure 2.Figure 2
Design flow of the pole configuration controller [3].Step 1.
Regard the controlled plant as a unit.Uk=yk=ydk,(12)Rydk=Owk−Syk,ydk=OR+Swk=OAcwk,(13)R+S=Ac,(14)O=Ac1,(15)R=ha+r1ha−1+⋯+ra,O=o0hb+o1hb−1+⋯+ob,S=s0hd+s1hd−1+⋯+sd,where wk is the reference input of the system. R, O, and T are polynomials about the forward operator h. a, b, and d are the highest powers in the forward operator in R, O, and S, respectively, and should satisfy d<a and b≤a. Parameters rp1,rp2,rp3∈R, where p1=1,…,a, p2=1,…,b, and p3=1,…,c. Ac is the characteristic equation polynomial of the closed-loop system, and yd is the expected output of the system. Ac needs to be set during the design process according to the performance requirements of the actual controlled object.Step 2.
Calculate the general controller output,Uk, and use the Newton–Raphson algorithm to solve the output uk−1 of the actual controller:(16)uλ+1k−1=uλk−1−ΘUλk−1−UkdΘuk−1/duk−1=uλk−1−∑j=0Mαjkuλjk−1−Ukd∑j=0Mαjkuλjk−1/duk−1ujk−1=uλjk−1.Step 3.
RegardGcGp−1 = Gc′ as the new controller of Gp. Now, uk−1 is the input of Gp which has been converted to U-model form.


## 2.2.2. Quadrotor UAV Controller Design

For the abovementioned quadrotor flight control system, a controller with a natural frequency of 1 rad/s and a damping ratio of 0.7 is designed to achieve zero steady-state error. The closed-loop characteristic equation is designed as(17)Ac=h2−1.3205h+0.4966.Therefore, substituteh = 1 into (17), and then it is obtained from (14) that(18)O=Ac1=1−1.3205+0.4966=0.1761.So, the polynomialsR and S can be expressed as(19)R=h2+r1h+r2,S=s0h+s1.Substituting the characteristic equations (17) and (19) into (13), equation (12) can be derived:(20)r2+s1=0.4966,r1+s0=−1.3205.To ensure the convergence ofU(k), let r1=−0.9andr2=0.009, and then obtain s0=−0.4205ands1=0.4876. Therefore, the output of the universal controller is(21)Uk+1=0.9Uk−0.009Uk−1+0.1761wk−1+0.4205yk−0.4876yk−1.Design controllers for each of the four channels with the abovementioned universal controller, respectively.(1)
Convert the discretized transfer function of the pitch channel to a polynomial form as(22)y1k=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1753uk−1+0.1199uk−2−5.78×10−4uk−3.The corresponding U-model form is(23)α10=1.128yk−1−0.4256yk−2+2.754×10−5yk−3+0.1199uk−2−5.78×10−4uk−3,α11=0.1753.The sample time is set 0.001s in this paper. The U-model-based pole placement method is used to design the output and the input responses of the pitch channel as shown in Figures3(a) and 3(b). It can be seen from Figure 3(a) that the system has a small overshoot, almost zero steady-state error, and a fast response speed, which meet the performance requirements of a quadrotor during flight. It can be seen from Figure 3(b) that the controller designed according to the idea of U-model simplifies the design process of the controller while ensuring the uniqueness of the controller.(2)
Convert the discretized transfer function of the rollover channel to a polynomial form as(24)y2k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1763uk−1+0.1083uk−2−7.907×10−4uk−3.The corresponding U-model form is(25)α20k=1.184yk−1−0.3666yk−2+1.846×10−5yk−3+0.1083uk−2−7.907×10−4uk−3,α21=0.1763.The output and the input responses of the roll channel are designed using the U-model-based pole placement method as shown in Figures4(a) and 4(b). The comparison between Figures 4(a) and 3(a) shows that the output performance of the controlled object is the same. At the same time, it is found that the input of the controlled object is different, which proves that the designed controller is unique when comparing Figure 4(b) to Figure 3(b).(3)
Convert the discretized transfer function of the yaw channel to a polynomial form as(26)y3k=−yk−1+1.158×10−18yk−2+0.2481uk−1+0.006uk−2.The corresponding U-model form is(27)α30k=−yk−1+1.158×10−18yk−2+0.006uk−2,α31k=0.2481.The U-model-based pole placement method is used to design the output and the input responses of the yaw channel as shown in Figures5(a) and 5(b). The output of the controlled object is also the same as those in Figures 3(a) and 4(a); however, the output of the controller is different from those in Figures 3(b) and 4(b).(4)
Convert the discretized transfer function of the motion in theZ-axis direction into a polynomial form as(28)y4k=1.607yk−1−0.6065yk−2+6.946uk−1−5.881×10−3uk−2.Figure 3
(a) Output of the pitch channel. (b) Input of the pitch channel.
(a)
(b)Figure 4
(a) Output of the roll channel. (b) Input of the roll channel.
(a)
(b)Figure 5
(a) Output of the yaw channel. (b) Input of yaw channel.
(a)
(b)The corresponding U-model form is(29)α40=1.607yk−1−0.6065yk−2−5.881×10−3uk−2,α41=6.946.The U-model-based pole placement method is used to design the output and the input responses of theZ-axis motion as shown in Figures 6(a) and 6(b). The output of the controlled object is also the same as those in Figures 3(a), 4(a), and 5(a), and the inputs of the controlled objects are different.Figure 6
(a)Z-axis motion output. (b) Z-axis motion input.
(a)
(b)By comparing Figures3(a)–6(a) for simulation results, it can be seen that the output responses of the controlled object are the same when the U-model controller is used to control the controlled object. Comparing Figures 3(b)–6(b), it can be seen that the designed controller outputs are different. The newly designed controller developed by using the U-model of the object is formed by GcGp−1. Because Gp−1 varies depending upon the different plants, the newly designed controller issue is converted into calculating the inverse of the plant which simplifies the design process, meanwhile ensuring the performance requirements. Therefore, each newly designed controller works for the specific object.


## 3. U-Block-Based Fault-Tolerant Control

The abovementioned U-model method also works in state space form by using the method proposed in the literature [17]. This section discusses a U-model-based fault-tolerant control method employed in state space.According to the specified characteristic equationAc proposed in the U-model and the performance requirements of different controlled objects, Ac can be derived by placing reasonable poles:(30)Ac=h−ϑ1⋯h−ϑt=ht+ac1ht−1+⋯+act=0,Yhwh=Ac1ht+ac1ht−1+⋯+act.Therefore, the corresponding state equation form in a controllable implementation is(31)xk+1=Axk+Bwk,yk=Cxk.Furthermore,(32)x1k+1x2k+1⋮xt−1k+1xtk+1=010⋯0001⋯0⋮000⋯1−act−act−1−act−2⋯−ac1x1kx2k⋮xt−1kxtk+00⋮0Ac1wkyk=10000x1kx2k⋮xt−1kxtk.When an unmanned aerial vehicle drone fails, the controlled object model can be expressed as(33)x˙k=Axk+Buk+fk,x,u,yk=Cxk.The functionfk,x,u indicates that the actuator fails and is defined as(34)fk,x,u=Bξk,x,u,where ξk,x,u is an unknown and bounded function:(35)ξk,x,u≤γu+ςk,x,in which ςk,x indicates disturbances and 0≤γ<1 indicates the damage degree of actuator failure [18]. So, system (33) can be further described as(36)x˙k=Axk+BI−Γuk+Bαk,x,yk=Cxk,where Γ=diagγ1,γ2,…,γm and γi is a scalar and satisfies(37)γi=0,no fault,0<γi<1,fault onith operation surface,i=1,2,…,m.It is known that sliding mode control can realize the insensitivity and robustness of sliding mode for a kind of uncertainty and interference. Therefore, this paper employs the sliding mode control (SMC) method to design a U-model-based controller to improve the robustness of control systems subject to faults. For the second-order discrete system, let the position command bewk and dwk is the derivative of wk. Take W=wkdwkT and W1=wk+1dwk+1T, and use linear extrapolation to predict wk+1 and dwk+1, s.t.(38)wk+1=2wk−wk−1,dwk+1=2dwk−dwk−1.Design a sliding mode surface function as(39)sk=CeWk−xk,where Ce=c1.(40)sk+1=CeWk+1−xk+1=CeWk+1−Axk−Buk=CeWk+1−CeAxk−CeBuk.Therefore, the designed control law is(41)uk=CeB−1CeWk+1−CeAxk−sk+1.For continuous sliding mode variable structure control, the commonly used approach is the exponential approach law:(42)s˙t=−εsgnst−σst,ε>0,σ>0.Correspondingly, the discrete exponential approach law can be derived as(43)sk+1−skTs=−εsgnsk−σsk,sk+1−sk=−σTssk−εTssgnsk,where ε>0, σ>0, 1−σTs>0, and Ts is the sampling period.So, the discrete approach law is(44)sk+1=sk+Ts−εsgnsk−σsk.Substituting (44) into equation (40), the discrete control law, u(k), based on the exponential approach is obtained:(45)uk=CeB−1CeWk+1−CeAxk−sk−dsk,where dsk=−εTssgnsk−σTssk, and Ce=c1.Proof.
To verify the stability of the selected sliding surface, the Lyapunov function is designed as(46)Vk=12sk2.
When the conditionV˙k≤0 is satisfied, the conclusion that the system is stable can be drawn:(47)V˙k=sks˙k=sksk+1−skTs=1Tssk−σTssk−εTssgnsk=−σs2k−εsksgnsk≤−σs2k−εsk.
Sinceε > 0 and σ > 0, then V˙k≤0 is obtained.


## 4. Analysis of Simulation Results

When partial actuator failures occur in the yaw channel, the discrete sliding mode control law is applied for designing a fault-tolerant controller for each channel, respectively. The discrete yaw channel model is transformed into a U-block form using the pole placement method. According to equations (26), (44), and (45), the corresponding state space equations are derived and the corresponding model matrices are(48)A=01−0.49661.3205,B=00.1761,C=10.The parameters of the controller according to (44) are c = 50, ε = 5, and σ = 150.This paper conducts simulations when faults are inserted at time 2 s demonstrated in Figures7(a)-7(b). The simulation selects the sampling period, 0.001 s. That is, the control system operates in normal conditions from 0 s to 2 s. However, at time 2 s, the actuator experienced a 50% performance failure. Meanwhile, the designed controller brings about a great tracking performance.Figure 7
(a) Comparison between the actual output and the expected output when a fault occurs at 2 s. (b) Error between actual output and expected output.
(a)
(b)As illustrated in Figures7(a) and 7(b), it can be seen that the design controller works properly to track the desired output of the system. Even though the actuator loses 50% operation efficiency at 2 s, it still maintains good tracking performance. Figure 7(b) illustrates the control error between the actual and expected outputs and obviously shows that the error falls within 5% and satisfies the performance requirements. The simulation results verify the feasibility of the designed controller by using the U-model and, furthermore, demonstrate that the U-model-based controller can simplify the controller design process. When combining the sliding mode control method, the proposed controller presents good fault-tolerance performance, good stability, and tracking performance.


## 5. Conclusions and Future Works

In this paper, the transfer function of each channel of the quadrotor control system is decoupled and converted into the U-block form by using the pole placement method. Furthermore, the actuator failure along with partial performance loss is considered and U-model-based sliding mode controller is designed and applied to a four-rotor flight control system in this paper. The simulations verify that the designed controller provides great fault-tolerant performance for quadrotor systems. The method proposed in this paper not only guarantees the performance requirements and simplifies the controller design process but also can be extended to other plants with the same performance requirements. This method can be mixed with other controller design methods to improve the stability of the system when suffering a fault as well in the future. The physical verification of this method will also be considered and conducted in the near future.



---

*Source: 4343214-2020-04-28.xml*