Professional Documents
Culture Documents
Nonlinear Disturbance Observer-Based Sliding Backsteppin
Nonlinear Disturbance Observer-Based Sliding Backsteppin
Nonlinear Disturbance Observer-Based Sliding Backsteppin
Control of a Quadrotor
Ning Wang1 , Qi Deng1 , Hong Zhao1 , Jianchuan Yin1 , Zhongjiu Zheng1
1. Center for Intelligent Marine Vehicles, Dalian Maritime University, Dalian, China
E-mail: n.wang.dmu.cn@gmail.com
Abstract: In this paper, the nonlinear observer based hovering control is addressed for a quadrotor with system uncer-
tainties and external disturbances. Main contributions are as follows: 1) A nonlinear observer for complex unknowns
including unmodelled dynamics and external disturbances is designed for a quadrotor, and thereby contributing to more
robustness pertaining to the closed-loop system; 2) The sliding backstepping based technique is then employed to realize
hovering control of a quadrotor, and thereby leading to the proposed controller which achieves satisfactory control per-
formance; 3) Exhaustive analyses ensure that tracking errors of the overall system can converge to a small neighborhood
of the origin. Furthermore, a large number of simulation experiments show the effectiveness of the proposed control law.
Key Words: Sliding Mode Control, Backstepping Control, Nonlinear Disturbance Observer, Quadrotor Hovering Con-
trol
978-1-5386-1243-9/18/$31.00 2018
c IEEE 3274
⎧
is used for friction compensation, independent joint con- ⎪
⎪ u1 = b(ω12 + ω22 + ω32 + ω42 )
⎪
⎨u
trol and sensorless torque control of robot manipulators. 2 = b(ω32 − ω12 )
In addition, Chen gave a systematic and comprehensive ⎪ = b(ω42 − ω22 )
⎪
⎪ u 3
overview of the perturbation observer in [25], and a com- ⎩
parative study of how to deal with external disturbances and u4 = d(ω12 − ω22 + ω32 − ω42 )
system uncertainties. Paper [26] develops a sliding-mode with Ix , Iy and Iz as the inertia moments of system and
control approach for systems with mismatched uncertain- Jr is the inertia moments of the propeller blades. l is
ties via a nonlinear disturbance observer. The switching the distance between the center of the quadrotor and the
gain is larger than the bounds of the disturbance, thus, the center of a propeller. b and d are scale factors related to air
chattering problem is solved effectively. density, rotor angle, drag coefficient, etc.
In order to improve the robustness of the system, a control Remark 1: The shape and mass of the quadrotor have
strategy combining backstepping and sliding mode control symmetrical characteristic, and assumed that the drag
is designed in this paper, and the adaptive term is designed coefficient of the quadrotor to be constant under low speed
to deal with the uncertainty of the disturbance. In addition, flight.
a nonlinear disturbance observer is considered to estimate Remark 2: The attitude angles are limited to
the unmodeled dynamics and external disturbances of the (− π2 ≤ φ ≤ π2 ), (− π2 ≤ θ ≤ π2 ) and (−π ≤ ψ ≤ π).
system. The simulation experiments of hovering control is Remark 3: The unknown disturbance term d is bounded,
given in the paper, and the effectiveness of the designed and the bounds are unknown, |d| < δ.
control rate is proved. Conclusions are drawn in the end of
this paper.
2 QUADROTOR MODEL 3 CONTROLLER DESIGN
Different models have been proposed in recent years. 3.1 Problem Statement
Quadrotor modeling is divided into two forms, Newton- From state equation of the system, the quadrotor is a mul-
Euler form and Euler-Lagrange form [2]. It has been noted tivariable, strongly coupled, nonlinear underactuated sys-
that Newton-Euler form is easy to understand. From [19], tem. Our goal is to design an adaptive controller that en-
the model of the quadrotor can be obtained via Newton- ables the quadrotors to follow a point and hover stably over
Euler approach and a simplified model is given as this point, which mean that all tracking errors asymptoti-
⎧ cally convergence to a small value.
⎪
⎪ x˙1 = x2 In this system, the quadrotor have six state (x, y, z, φ, θ, ψ),
⎪
⎪
⎪
⎪ x˙2 = (cx7 sx9 cx11 + sx7 sx11 ) um1 + d1 but only have four inputs (u1 , u2 , u3 , u4 ). Therefore, we
⎪
⎪
⎪
⎪ x˙3 = x4 can not control all of the states at the same time. To
⎪
⎪
⎪
⎪ solve this problem, we control (x, y, z, ψ) tracking desired
⎪
⎪ x˙4 = (cx7 sx9 sx11 − sx7 cx11 ) um1 + d2
⎪
⎪ signals (xd , yd , zd , ψd ), and enable (φ, θ) stable to zero
⎪
⎪ x˙5 = x6
⎪
⎪ simultaneously. We introduce two virtual control inputs
⎨x˙ = −g + (c c ) u1 + d
6 x7 x9 m 3 (ux , uy ), which represent the relation between pitch and
⎪
⎪ x˙7 = x 8 x motion, roll and y motion respectively.
⎪
⎪
⎪
⎪ x˙8 = x10 x12 a1 + x10 a2 ω + b1 u2 + d4
⎪
⎪
⎪
⎪ ux = (cos φ sin θ cos ψ + sin φ sin ψ)
⎪
⎪ x˙9 = x10 (1)
⎪
⎪ uy = (cos φ sin θ sin ψ − sin φ cos ψ)
⎪
⎪ x˙10 = x8 x12 a3 + x8 a4 ω + b2 u3 + d5
⎪
⎪
⎪
⎪x˙11 = x12
⎪
⎪ then, transforming the (1) we have
⎩
x˙12 = x8 x10 a5 + b3 u4 + d6 ⎧
⎨φd = arcsin(ux sin ψ − uy cos ψ)
where X = [x, ẋ, y, ẏ, z, ż, φ, φ̇, θ, θ̇, ψ, ψ̇]T is the state u cos ψ + uy sin ψ (2)
⎩θd = arcsin x
vector, ω = ω1 − ω2 + ω3 − ω4 , with ωi , i = 1, 2, 3, 4 cos φd
represent the number of revolutions of the ith propeller,
di , i = 1, 2, · · · , 6 are the unknown disturbance that Part of the state space model related to (x, y) can be written
contains system uncertainties and other external factors, as follows:
ai , i = 1, 2, · · · , 5 and bi , i = 1, 2, 3 are the normalized ⎧
⎪
⎪ x˙1 = x2
parameters, u1 , u2 , u3 , u4 are the control input, these ⎪
⎪
parameters are defined as ⎨x˙2 = ux u1 + d1
m (3)
⎪
⎪ x˙3 = x4
⎪
⎪
Iy − Iz Jr Iz − Ix ⎩x˙ = u u1 + d
a1 = , a2 = , a3 = 4 y
m
2
Ix Ix Iy
Jr Ix − Iy l And the state space model can be rearranged as
a 4 = − , a5 = , b1 =
Ix Iz Ix
l 1 ẋi = xj
b2 = , b3 = (4)
Iy Iz x˙j = fi (x) + gi (x)U
The 30th Chinese Control and Decision Conference (2018 CCDC) 3275
where i = 1, 3, 5, 7, 9, 11 and j = 2, 4, 6, 8, 10, 12. The 3.3 Adaptive Sliding-mode Backstepping Control
control inputs contains virtual control (ux , uy ) in ad- Design
dition to four control inputs of the quadrotor, U = For height subsystem, defining the tracking error as
[ux , uy , u1 , u2 , u3 , u4 ]T . In order to design the controller
conveniently, we have e5 = x5 − x5d (10)
u1
f1 (x) = 0, g1 (x) = Now, let us choose the Lyapunov function:
m
u1
f2 (x) = 0, g2 (x) = 1 2
m V5 = e (11)
cos x7 cos x9 2 5
f3 (x) = −g, g3 (x) =
m and its derivative with time V˙5 is as follows:
f4 (x) = x10 x12 a1 + x10 a2 ω, g4 (x) = b1
f5 (x) = x8 x12 a3 + x8 a4 ω, g5 (x) = b2 V̇5 = e5 ė5 = e5 (x6 − ẋ5d ) (12)
f6 (x) = x8 x10 a5 , g6 (x) = b3
We construct the virtual control law α5 as
3.2 Nonlinear Disturbance Observer Design
α5 = ẋ5d − c5 e5 , c5 > 0 (13)
The goal of control is to design the controller so that the
output of the system can track the given input command in then, the new error between x6 and α5 is
the presence of system uncertainties and external interfer-
ences. The nonlinear disturbance observer is designed as e6 = x6 − α5 (14)
follows [24]:
last, we define the sliding surface as
z = dˆ − p(x)
(5) s 5 = k 5 e 5 + e 6 , k5 > 0 (15)
ż = −L(x)z + L(x)(−p(x) − g(x)U − f (x))
The control law u1,eq is designed by
with dˆ represents the estimate of disturbance, p(x) is the
nonlinear function to be designed, and L(x) is the gain of 1
the nonlinear observer, they are meeting the conditions: u1,eq = [−k5 (e6 − c5 e5 ) − f3 (x) + α̇5
g3 (x)
ṗ(x) = L(x)ẋj (6) − e5 − h5 s5 − δ̂5 sign(s5 )] (16)
Generally, there is no prior knowledge of derivative of d, with h5 > 0, δ̂5 is the estimated value of upper bound of
assuming that the change of disturbance relative to the dy- uncertainty item d3 . Define estimation error δ̃5 = δ5 − δ̂5 ,
namic characteristics of the observer is slow, that is d˙ = 0. and parameter adaptive law as follows:
Defining the observation error of nonlinear observer
˙
δ̂ = γ5 |s5 |, γ5 > 0 (17)
d˜ = d − dˆ (7)
Considering the disturbance observer’s input, we conclude
Then, from (7) we have the observer dynamics the control law
˙ ˙
d˜ = d˙ − dˆ u1 =u1,eq + u1,d
˙
= −ż − p̂(x) 1
= [−k5 (e6 − c5 e5 ) − f3 (x) + α̇5
= L(x)z − L(x)(−p(x) − g(x)U − f (x)) − L(x)ẋj g3 (x)
= L(x)z + L(x)p(x) − L(x)(x˙j − g(x)U − f (x)) − e5 − h5 s5 − δ̂5 sign(s5 ) − dˆ3 ] (18)
= L(x)(z + p(x)) − L(x)d
The Lyapunov function in height subsystem is chosen as
= L(x)dˆ − L(x)d
1 2 1 2 1 ˜2 1 ˜2
= −L(x)d˜ (8) V6 = e5 + s5 + δ + d (19)
2 2 2γ5 5 2 3
From the equation (8), we can make the observer’s obser- The time derivative of V6 along (8), (10), (15) and (17) is
vation error converge exponentially by selecting L(x) > 0
properly. Usually, we choose a constant L(x) = a, a > 0 1 ˙ ˙
V˙6 =e5 e˙5 + s5 s˙5 + δ˜5 δ˜5 + d˜3 d˜3
and design p(x) = axj . The disturbance observed by the γ5
=e5 (e6 − c5 e5 ) + s5 (k5 e˙5 + e˙6 ) − δ˜5 |s5 | − L3 (x)d˜23
nonlinear observer is converted into the corresponding con-
trol amount of the input channel. Therefore, design
= − c5 e25 + e5 e6 + s5 [k5 (e6 − c5 e5 ) + f3 (x)
1 ˆ
ud = − d (9) + g (x)u + d − α˙ ] − δ˜ |s | − L (x)d˜2
3 1 3 5 5 5 5 3 (20)
g(x)
3276 The 30th Chinese Control and Decision Conference (2018 CCDC)
Combining with control law (18), we have where
⎧
V˙6 = − c5 e25 + e5 (s5 − k5 e5 ) + s5 (−e5 − h5 s5 ⎪
⎪ e7 = x7 − x7d
⎪
⎪
⎪
⎪ e 8 = x8 − α 7
− δˆ5 sign(s5 ) − dˆ3 + d3 ) − δ˜5 |s5 | − L5 (x)d˜23 ⎪
⎪
⎪
⎪
⎪ α7 = ẋ7d − c7 e7 , c7 > 0
= − c5 e2 − k5 e2 − h5 s2 − δˆ5 |s5 | + d˜3 s5 − δ˜5 |s5 | ⎪
⎪
⎪
⎪
⎨e9 = x9 − x9d
5 5 5
The 30th Chinese Control and Decision Conference (2018 CCDC) 3277
400 0.05 φ
φd
φ(rad)
0
200
u1(N)
-0.05
0 5 10 15 20 25 30
0
time(s)
θ
0.05
-200 θd
θ (rad)
0 5 10 15 20 25 30
0
time(s)
0.02 -0.05
0 5 10 15 20 25 30
0.01 time(s)
20
ψ
u2(N)
0 ψd
ψ(rad)
10
-0.01
0
-0.02 0 5 10 15 20 25 30
0 5 10 15 20 25 30
time(s)
time(s)
Figure 3: Control input for u1 , u2 Figure 2: Tracking results for φ(t), θ(t), ψ(t)
0.02 5 CONCLUSION
0 In this paper, an adaptive sliding-mode backstepping con-
u3(N)
0.5
u4(N)
0
12 3D Trajectory
Target
-0.5
0 5 10 15 20 25 30 10
time(s)
8
Figure 4: Control input for u3 , u4
z(m)
4
aircraft, and reaching the target point finally. It also can be
2
seen that disturbance observers quickly estimate the actual
disturbance by Figures 6−7. 0
6
4 6
2 4
10
x 0
2
0
xd y(m) x(m)
x(m)
0 Figure 5: 3D-Position
0 5 10 15 20 25 30
time(s)
10 y
yd 1
disturbance
y(m)
5
0 d1
0 dˆ1
0 5 10 15 20 25 30 -1
time(s) 0 5 10 15 20 25 30
20 z time(s)
zd 1
disturbance
z(m)
10
0 d2
0 dˆ2
0 5 10 15 20 25 30 -1
time(s) 0 5 10 15 20 25 30
time(s)
1
disturbance
3278 The 30th Chinese Control and Decision Conference (2018 CCDC)
International Conference on Intell Robots and Systems,
1
disturbance
2451-2456, 2004.
d4
0
dˆ4
[11] Y. Yu, G. Lu, C. Sun , et al. Robust backstepping decen-
-1 tralized tracking control for a 3-DOF helicopter, Nonlinear
0 5 10 15 20 25 30
Dynamics, Vol.82, No.1-2, 1-14, 2015.
time(s)
[12] T. Madani, A. Benallegue, Backstepping Control for a
1
disturbance
d6
Vol.83, No.3, 1247-1257, 2016.
0
dˆ6 [14] N. Cao, A. F. Lynch, InnerOuter Loop Control for Quadrotor
-1 UAVs With Input and State Constraints, IEEE Trans. Control
0 5 10 15 20 25 30
time(s) Syst. Technol., Vol.24, No.5, 1797-1804, 2016.
[15] R. Xu, U. Ozguner, Sliding Mode Control of a Quadrotor
Helicopter, IEEE Conference on Decision and Control, 4957-
Figure 7: Observation of disturbance for d4 , d5 , d6 4962, 2006.
[16] L. Besnard, Y. B. Shtessel, B. Landrum, Quadrotor ve-
hicle control via sliding mode controller driven by sliding
and external disturbances. The superiority of the algorithm
mode disturbance observer, Journal of the Franklin Institute,
is proved by simulation experiments. For future work, we
Vol.349, No.2, 658-684, 2012.
can improve the algorithm to solve the problem of quadro- [17] M. Huang, B. Xian, C. Diao, et al. Adaptive tracking con-
tor path tracking, and consider the use of other observers to trol of underactuated quadrotor unmanned aerial vehicles via
achieve better control effect. backstepping, American Control Conference, IEEE, 2076-
REFERENCES 2081, 2010.
[18] J. J. Xiong, G. B. Zhang, Global fast dynamic terminal slid-
[1] F. Kendoul, Survey of advances in guidance, navigation, and
ing mode control for a quadrotor UA, ISA Trans., Vol.66,
control of unmanned rotorcraft systems, Journal of Field
233, 2016.
Robotics, Vol.29, No.2, 315-378, 2012.
[19] F. Yacef, O. Bouhali, M. Hamerlain, Adaptive fuzzy back-
[2] X. Zhang, X. Li, K. Wang, et al. A Survey of Modelling
stepping control for trajectory tracking of unmanned aerial
and Identification of Quadrotor Robot, Abstract and Applied
quadrotor, International Conference on Unmanned Aircraft
Analysis,Vol.10, No.23, 2014.
[3] L. Li, L. Sun, J. Jin, Survey of advances in control algo- Systems, IEEE, 920-927, 2014.
rithms of quadrotor unmanned aerial vehicle, IEEE Interna- [20] T. Chingozha, O. Nyandoro, Adaptive sliding backstepping
tional Conference on Communication Technology, 107-111, control of quadrotor UAV attitude, IFAC Proceedings Vol-
2016. umes, Vol.47, No.3, 11043-11048, 2014.
[4] R. U. Amin, A. Li, S, Shamshirband, A Review of Quadrotor [21] M. Chen, W. H. Chen, Sliding mode control for a class of
UAV: Control Methodologies and Performance Evaluation, uncertain nonlinear system based on disturbance observer,
International Journal of Automation and Control, Vol.10, International Journal of Adaptive Control and Signal Pro-
No.2, 2015. cessing, Vol.24, No.1, 51-64, 2010.
[5] M. J. Reinoso, L. I. Minchala, P. Ortiz, et al. Trajectory track- [22] L. Wang, J. Su, Robust Disturbance Rejection Control for
ing of a quadrotor using sliding mode control, IEEE Latin Attitude Tracking of an Aircraft, IEEE Trans. Control Syst.
America Trans. Vol.14, No.5, 2157-2166, 2016. Technol., Vol.23, No.6, 2361-2368, 2015.
[6] T. Zhang, Y. Kang, M. Achtelik, et al, Autonomous hovering [23] F. Chen, W. Lei, K. Zhang, et al. A novel nonlinear resilient
of a vision/IMU guided quadrotor, IEEE, International Con- control for a quadrotor UAV via backstepping control and
ference on Mechatronics and Automation, 2870-2875, 2010. nonlinear disturbance observer, Nonlinear Dynamics, Vol.85,
[7] B. Xu, Composite Learning Finite-Time Control With Appli- No.2, 1281-1295, 2016.
cation to Quadrotors, IEEE Trans. Systems Man and Cyber- [24] W. H. Chen, D. J. Ballance, P. J. Gawthrop, et al. A non-
netics Systems, No.99, 1-10, 2017. linear disturbance observer for robotic manipulators, IEEE
[8] H. Du, H. Shen, W. Zhu, Control of a hovering quadrotor Trans. Ind. Electron., Vol.47, No.4, 932-938, 2000.
aircraft based finite-time attitude control algorithm, IEEE In- [25] W. H. Chen, J. Yang, L. Guo, Disturbance-Observer-Based
ternational Conference on Control and Automation 192-197, Control and Related MethodsAn Overview, IEEE Trans. Ind.
2016. Electron., Vol.63, No.2, 1083-1095, 2016.
[9] Y. Qu, Z. Xing, Y. Zhang, Wind estimation using the posi- [26] J. Yang, S. Li, X. Yu, Sliding-Mode Control for Systems
tion information from a hovering quadrotor, IEEE, Guidance, With Mismatched Uncertainties via a Disturbance Observer,
Navigation and Control Conference, 1345-1350, 2017. IEEE Trans. Ind. Electron., Vol.60, No.1, 160-169, 2013.
[10] S. Bouabdallah, A. Noth, R. Siegwart, PID vs LQ control
techniques applied to an indoor micro quadrotor, IEEE/RSJ
The 30th Chinese Control and Decision Conference (2018 CCDC) 3279