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

Proceedings of the 38th Chinese Control Conference

July 27-30, 2019, Guangzhou, China

Extended State Observer based MPC for a Quadrotor Helicopter


Subject to Wind Disturbances
Tong Lv, Yanhua Yang, Li Chai
Engineering Research Center for Metallurgical Automation and Measurement Technology
Wuhan University of Science and Technology, Wuhan, 430081, P. R. China

Abstract: Tracking control problem of quadrotor helicopter with wind disturbances is addressed in this paper. A model predictive
control (MPC) method based on the extended state observer (ESO) is presented. First, considering the aerodynamic effects of
lateral wind, the quadrotor helicopter mathematical model is built by the Newton-Euler approach. In order to generate the
turbulent wind field, the Dryden model is adopted. Then, ESO based MPC controllers are designed for position tracking. For
the attitude control, the nonlinear dynamics are linearized by the feedback linearization strategy, and an MPC controller is
designed for attitude tracking which has been compensated with ESO through estimating the unmodeled dynamics and wind
disturbances. Finally, the simulation results show that the quadrotor helicopter can effectively track the reference trajectory
under wind disturbances.

Key Words: MPC, ESO, Dryden Turbulent Wind Field, Feedback Linearization, Quadrotor Helicopter

1 Introduction gration may make it not work well under quick-changing dis-
turbances. In order to make the system compensate for the
For the advantages of vertical takeoff and landing(VTOL),
disturbance quickly, reference [11] proposes an active distur-
simple structure and strong maneuverability, the quadrotor
bance rejection and predictive control strategy. An E-SSPC
helicopter has been widely used in life and military [1, 2].
is used for trajectory tracking and ESO is used to provide
However, the quadrotor helicopter is a strongly coupled,
a feedforward compensation for rejecting the disturbances.
nonlinear and under-actuated system. Furthermore, due to
Then, the active disturbance rejection control (ADRC) ap-
small size and light weight, it is susceptible to wind field-
proach is used for attitude controller. This method improves
s, which may influence the flight performance [3, 4]. Con-
the robustness for the modeling error and disturbances, but
sequently, designing a controller to guarantee flight perfor-
the influences of aerodynamical effects caused by wind are
mance of the quadrotor helicopter in windy environments is
not considered in the quadrotor dynamical model. In [12],
difficult and challenging.
the quadrotor dynamical model with wind disturbances is
In the past decades, many advanced control methods have
depicted, and an ADRC based improved ESO is designed.
been put forward to solve the trajectory tracking of quadro-
The wind disturbances are estimated by improved ESO and
tor helicopter subject to disturbances, such as robust cascade
compensated by nonlinear feedback control strategy. The
PID [5], backstepping control [6], H∞ control [7], feed-
improved ESO can not only estimate states and disturbances,
back linearization [8], model predictive control [9–11], ac-
but also filter measure noises. However, many parameters of
tive disturbance rejection control(ADRC) [12], slide model
ADRC should be carefully tuned. In addition, an ESO-based
control [13].
integral sliding-mode control for a quadrotor is introduced
Feedback linearization can make a nonlinear system be-
in [13]. The disturbance estimated by ESO is used to com-
come a closed-loop linear system by applying state feed-
pensate the adaptive integral sliding-mode control.
back. Unfortunately, feedback linearization is sensitive to
The work presented in this paper focuses on the trajec-
model uncertainties. To improve the robustness of feedback
tory tracking problem of a quadrotor subject to wind distur-
linearization, the disturbance observer-based feedback lin-
bances. The dynamic model of the quadrotor subject to wind
earization control method is provided in [8]. The simulation
disturbances is introduced, and a Dryden model which can
results show that the robustness of feedback linearization can
effectively simulate the turbulent wind field during quadro-
be strengthened by using disturbance observer.
tor flight is adopted to generate wind speed. The control sys-
For solving control problems of nonlinear systems, M-
tem can be decoupled into position and attitude subsystem-
PC is also an effective control approach. In [9], a switch-
s. The ESO based MPC controllers are separately designed
ing model predictive controller is designed for the trajec-
in both subsystems. In addition, the feedback linearization
tory tracking problem of a quadrotor. This scheme needs
method is used to linearize the attitude subsystem, and the
switch between different models which may cause fluctu-
unmodeled dynamics and wind disturbances are estimated
ation. In [10], an integral state-space predictive controller
and compensated by ESO.
based on the error model (E-SSPC) is used for tracking the
The paper is organized as follows. In Section 2, the dy-
reference trajectory and a nonlinear H∞ controller is used
namic model of quadrotor helicopter subject to wind distur-
for attitude control to stabilize the rotational actions. The
bance is depicted. In Section 3, the Dryden turbulent wind
reference tracking can be followed well under sustained dis-
field is described. Section 4 discusses the design of the MPC
turbances by integral action, but the slow action of the inte-
based on ESO controller. The simulation results are given in
This work is partially supported by National Natural Science Founda- Section 5. And the conclusions are drawn in the last Section.
tion of China (NSFC) under Grant 61703314 and 61625305. Corresponding
author: Yanhua Yang, e-mail: yangyh@wust.edu.cn

8206
2 Quadrotor Helicopter Dynamic Model Subject where α is the angle between the rotor axis and the lateral
to Wind Disturbances wind axis. When the quadrotor is perturbed by the cross-
wind, the rotor’s aerodynamic torque is Mri = Mwi +
Quadrotor helicopter is a highly nonlinear underactuat-
MTi = kdrag V̂i2 , where MTi = μωi2 is the rotor torque and
ed system, which has six degree of freedom and four con-
kdrag is a constant depending on the air density of, rotor ra-
trol inputs. It is assumed that the quadrotor is a rigid body
dius, rotor shape. Thus, the aerodynamical wind torques can
and the structure is completely symmetrical. For the conve-
be expressed by τwϕ = l(fw4 − fw2 ), τwθ = l(fw3 − fw1 ),
nience of describing the quadrotor helicopter dynamic mod-
and τwψ = −Mw1 + Mw2 − Mw3 + Mw4 .
el, an inertial reference coordinate frame Oxyz relative to
the earth and a body reference coordinate frame Oxb yb zb are fZ
defined. The typical structure and these two reference coor-
dinate frames are shown in Fig.1. To describe the behavior fT
D
of the quadrotor, the absolute position vector is expressed as VZ URWRU
ζ = [x, y, z]T , body angular velocity vector is expressed
as η = [p, q, r]T and Euler angle vector is expressed as
Θ = [ϕ, θ, ψ]T . Euler angles are respectively roll angle Vl
Vd
ϕ, pitch angle θ, and yaw angle ψ with the assumption of
−π/2 < ϕ < π/2, −π/2 < θ < π/2 and −π < ψ < π. Fig. 2: Aerodynamic analysis of rotor subject to wind distur-
Since Euler angles are small during actual flight, we can as- bances
sume Θ̇ = η.
By applying the Newton-Euler approach to the quadrotor
helicopter, the following two equations can be get
 
zb mζ̈ = F
yb (4)

xb
 I η̇ = −η × Iη − Ip (η × [0, 0, ωT ]T ) + τ
z 4
where m is the quadrotor mass, F = R( i=1 fTi +
x
y  4
i=1 fwi ) − mg[0, 0, 1] is the total force vector applied
T

Fig. 1: Reference coordinate frames to the quadrotor in the inertial reference frame, g is the
gravitational acceleration, I = diag(Ix , Iy , Iz ) is the iner-
tia matrix, Ip is the rotor inertia around its axis of rotation,
The rotation matrix from the body coordinate reference
ωT = −ω1 + ω2 − ω3 + ω4 is the overall propellers speed
frame to the inertial reference coordinate frame is given by
and τ = [τϕ + τwϕ , τθ + τwθ , τψ + τwψ ] is the total torque
⎡ ⎤ vector applied the quadrotor. Thus, the quadrotor helicopter
c(ψ)c(θ) c(ψ)s(φ)s(θ) − c(φ)s(ψ) ux
R = ⎣ c(θ)s(ψ) c(φ)c(ψ) + s(φ)s(ψ)s(θ) uy ⎦ (1) dynamic model can be decoupled into position subsystem (5)
−s(θ) c(θ)s(φ) uz and attitude subsystem (6) which are expressed as follows
⎡ ⎤ ⎡ U1 ⎤
ẍ m ux + dx
where the terms c(.) and s(.) represent the cosine and sine ⎢ ⎥ ⎢ ⎥
⎣ ÿ ⎦ = ⎣ Um1 uy + dy ⎦ (5)
functions respectively, ux = s(ϕ)s(ψ) + c(ϕ)c(ψ)s(θ),
uy = c(ϕ)s(ψ)s(θ) − c(ψ)s(ϕ) and uz = c(ϕ)c(θ). z̈ U1
u
m z − g + d z
The quadrotor helicopter consists of a fuselage and four ⎡ ⎤
⎡ ⎤ Iy − I z Ip U2
rotors. In the real world applications, a quadrotor is general- θ̇ ψ̇ − θ̇ω + + d
ϕ̈ ⎢ Ix Ix
T
Ix
ϕ

ly exposed to lateral wind. Since the contact surface of the ⎢ ⎥ ⎢ ⎢ I − I I U ⎥

⎢ θ̈ ⎥ = ⎢ z x
ϕ̇ ψ̇ +
p
ϕ̇ω +
3
+ d θ ⎥ (6)
fuselage of the quadrotor with the air is small, the influence ⎣ ⎦ ⎢ Iy Iy
T
Iy ⎥
of the wind on the rotor is only considered. The impact of ⎣ Ix − Iy U4 ⎦
ψ̈ ϕ̇θ̇ + + dψ
lateral wind on quadrotor helicopter has been introduced in Iz Iz
[3, 12], so we briefly introduce the effect of wind on the rotor 4
where dx = dy = dz = i=1 fwi /m, dϕ = τwϕ /Ix , dθ =
in this paper.
τwθ /Iy and dψ = τwψ /Iz . The relation of virtual control
Under the lateral wind, the aerodynamic analysis of the
inputs and motor angular speeds is expressed as
rotor is shown in Fig. 2. The total thrust fri = fwi + fTi , ⎡ ⎤ ⎡ ⎤⎡ 2 ⎤
i = 1, 2, 3, 4, can be computed as follows U1 λ λ λ λ ω1
⎢ U2 ⎥ ⎢ 0 −λl 0 λl ⎥⎢ ω22 ⎥
⎢ ⎥ ⎢ ⎥⎢ ⎥ (7)
fri = 2ρAV̂ Vd (2) ⎣ U3 ⎦ = ⎣ −λl 0 λl 0 ⎦⎣ ω32 ⎦
U4 −μ μ −μ μ ω42
 f Ti =
where ρ is the air density and A is the propeller area,
where ω1 , ω2 , ω3 and ω4 are the motor angular speeds of
λωi2 is the rotor thrust produced by rotor i, Vd = fT
2ρA is quadrotor helicopter, λ is the propeller thrust coefficient, μ
the induced wind speed in the main propeller and V̂ is the is the propeller drag coefficient, l is the distance between the
total induced wind speed by the rotor and lateral wind Vw quadrotor center line and a propellers axis of rotation, and
can be describe as U = [U1 , U2 , U3 , U4 ]T is virtual control input vector which
includes collective thrust force, rolling moment, pitching
1
V̂ = [(Vw cos α + Vd )2 + (Vw sin α)2 ] 2 (3) moment and yawing moment.

8207
3 Dryden Turbulent Wind Field to the reference trajectory, the quadrotor control input U1
and the reference Euler angles ϕr , θr are solved by posi-
The quadrotor is susceptible to turbulent wind fields dur-
tion controller. Then, the reference Euler angles are used as
ing actual flight. Thus, in order to create realistic outdoor
the inputs of attitude controller, the quadrotor control inputs
turbulent wind fields, a relatively simple Dryden model is
U2 , U3 , U4 can be computed. Finally, the quadrotor control
used to generate wind disturbances.
input vector U is sent to the quadrotor helicopter dynamic
According to [14], the Dryden form of the power spectral
model.
densities for turbulence velocities can be get
⎧ 1
⎪ 2 Lu U
⎪ φu (ω) = σu πV 1 + ( Lu ω)2
⎪ x y  z
5HIHUHQFH xr  yr  zr 3RVLWLRQ


$WWLWXGH
4XDGURWRU M  T \

⎪ V 7UDMHFWRU\ &RQWUROOHU Mr T r &RQWUROOHU U  U  U 

⎨ \r
Lv 1 + 12( LVv ω)2
φv (ω) = σv2 (8) Fig. 3: Quadrotor control structure

⎪ πV (1 + 4( LVv ω)2 )2



⎪ 2
⎪ φw (ω) = σ 2 Lw 1 + 12( V ω)
Lw

⎩ w 4.1 Position Controller Design
πV (1 + 4( Vw ω)2 )2
L

The position controller is designed based on an inte-


where σu , σv , σw are the turbulence intensities in three di- gral E-SSPC and its ability of resisting disturbances can be
rections, Lu , Lv , Lw are the turbulence scale lengths in three strengthened by using ESO. The position controller structure
directions and V is the flight speed of the aircraft. can be seen in [11].
For quadrotor flying at low altitude, according to [15], the T
Let the augmented vector ξ = [x, ẋ, y, ẏ, z, ż] . The po-
turbulence intensities and scale lengths are calculated by sition subsystem in (5) can be rewritten as

⎪ h ⎡ ⎤

⎪ Lu = 2Lv = ẋ

⎪ (0.177 + 0.000823h)1.2 ⎢ ⎥

⎪ ⎢ ux Um1 + dx ⎥


⎨ Lw = h ⎢
˙ξ = f (ξ, uξ , df ) = ⎢ ẏ ⎥

2 (9) ⎢ u U1
+ d ⎥ (13)

⎪ ⎢ y m y ⎥

⎪ σ u σ v 1 ⎣ ż ⎦

⎪ = =

⎪ σw σu (0.177 + 0.000823h)0.4 −g + uz m + dz
U1


σw = 0.1u20
where df = [dx , dy , dz ]T is the position disturbance vector
where h is the flight altitude and u20 is the 6.096m wind and uξ = [U1 , ux , uy ]T is the control input vector.
speed. In order to reduce the error of tracking reference trajecto-
The signal y(t) can be generated by using unit white noise ry, a virtual reference vehicle without disturbances and hav-
intensity r(t) through the filter G(s), and the spectrum func- ing the same dynamic model is defined as
tion of y(t) is
  ξ˙r = f (ξr , uξr ) (14)
φ(ω) = (G(jω)2  = G∗ (jω)G(jω) (10)
where ∗ is conjugation. The formula (8) is decomposed ac- where ξr = [xr , ẋr , yr , ẏr , zr , żr ]T , uξr = [U1r , uxr , uzr ]T .
cording to the formula (10). The transfer function of the The reference control inputs can be obtained as followes
shaping filter can be obtained as follows m(z̈r + g) mẍr mÿr
⎧  U 1r = , uxr = , uy r = (15)

⎪ Ku Lu Lu uz U 1r U 1r

⎪ Gu (s) = , Ku = σu , Tu =

⎪ T s + 1 πV V

⎨ u  In the absence of disturbance, by subtracting the virtual
Kv Lv 2Lv
Gv (s) = , Kv = σv , Tu = √ reference vehicle (14) from the system (13), the position er-

⎪ Tv s + 1  πV 3V

⎪ ror model is given by

⎪ K L 2Lw

⎩ Gw (s) =
w
, Kw = σw
w
, Tw = √
Tw s + 1 ˙
πV 3V ξ = f (ξ,
u ξ ) (16)
(11)
The transfer function of shaped filter is discretized with Δt where ξ = ξ − ξr is the state error vector and u
ξ = uξ − uξr
as simulation step size, and then a discrete sequence of y(t) is the control input error vectors.
will be generated The system (16) can be discretised into two subsystem-

⎪ s: the altitude error subsystem and the x and y motions
⎨ y(k + 1) = P y(k) + Qr(k + 1)
−Δt error subsystem, which can be discretized by using Euler’s
P = e T (T = T , T , T )
u v w (12)

⎩ Q = σ 1 − P 2 (σ = σ , σ , σ ) method.
u v w The altitude error subsystem can be expressed as
4 Controller Design 1 (k)
xz (k + 1) = Az xz (k) + Bz (k)U (17)
The controller of the quadrotor helicopter is composed 
of position controller and attitude controller, and the over- where xz = [z − zr , ż − żr , z − zr ]T stands for the altitude
all controller structure is shown in Fig. 3. First, according 1 = U1 − U1 is the control input error.
error vector, and U r

8208
Matrices Az and Bz are the following: subsystem. Then the altitude part of formula (13) can be
⎡ ⎤ ⎡ ⎤ expressed as
1 Δt 0 0 
Az = ⎣ 0 1 0 ⎦, Bz (k) = ⎣ Δt ⎦ Ẋz = Aez Xz + Bez U1 + Cez d˙z − Dez g
m uz (k) (21)
Δt 0 1 0 y z = E ez X z

where Δt is the sample time, uz is considered as time- where


⎡ ⎤ ⎡ ⎤ ⎡ ⎤
varying parameter. 0 1 0 0 0
The x and y motions error subsystem can be expressed as Aez =⎣ 0 0 1 ⎦, Bez = ⎣ bz ⎦, Cez = ⎣ 0 ⎦,
0 0 0 0 1
xxy (k + 1) = Axy xxy (k) + Bxy (k) uxy (k) (18)
 T   1
  Dez = 0 1 0 1
0 , bz = uz
, Eez = 0
where xxy = [x − xr , ẋ − ẋr , x − xr , y − yr , ẏ − ẏr , y − m
yr ]T represents the position error vector, and u xy = [ux − Therefore, the LESO can be designed as follows
uxr , uy − uyr ]T stands for control input error vector. 
Ėz = Aez Ez + Bez U1 − Dez g + Lez (yz − ŷz )
Matrices Axy and Bxy are the following: (22)
ŷz = Eez Ez
⎡ ⎤
1 Δt 0 0 0 0
⎢ 0 where Ez = [Ez1 , Ez2 , Ez3 ]T is the state vector of ESO,
⎢ 1 0 0 0 0 ⎥ ⎥
⎢ Δt 0 1 0 Lez = [3ωz , 3ωz2 , ωz3 ]T is the ESO gain vector and ŷz is the
⎢ 0 0 ⎥ ⎥
Axy = ⎢ estimation of output yz . Thus, the control input of the alti-
⎢ 0 0 0 1 Δt 0 ⎥ ⎥
⎣ 0 tude subsystem at instant k is
0 0 0 1 0 ⎦
0 0 0 Δt 0 1 ˆ
 1 (k|k) − Ez (k)/bz
U1 (k) = U1r (k) + U 3
(23)
⎡ ⎤
0 0 Then, the quadrotor control input U1 calculated by formu-
⎢ Δt ⎥
m U1 (k) 0 la (23) is substituted into U1r in formula (15).
⎢ ⎥
⎢ 0 0 ⎥ For x and y motions subsystem, the cost function comput-
Bxy (k) = ⎢


⎥ ˆ
⎢ 0 0 ⎥ ed uxy and the ESO structure of x and y motions subsystem
⎣ 0 Δt ⎦
m 1 (k)
U are similar to altitude subsystem. Thus, in the presence of
0 0 disturbances, ux and uy can be calculated as follows

where U1 is considered as time-varying parameter. ux (k) = uxr (k) + uˆ
x (k|k) − Ex3 (k)/bxy
ˆ (24)
The cost function computed U 1 is designed as follows uy (k) = uy (k) + u ˆ
y (k|k) − Ey (k)/bxy
r 3

ˆ ˆ T
ˆ ˆ ˆ
x and u ˆ
y are x and y motions error subsystem
T
Jz = [x̂z − x̂zr ] Qz [x̂z − x̂zr ]+[U 
1 − U 1r ] Rz [ U 1 − U 1r ]
where u
(19) predictive inputs, Ex3 and Ey3 are respectively ESO ob-
1
where Qz ∈ RN2z ∗N2z and Rz ∈ RNuz ∗Nuz are diagonal served disturbance outputs of x and y motions, bxy = m U1 .
2 3 T 2 3 T
positive weighting matrices, N2z is the prediction horizon Lex = [3ωx , 3ωx , ωx ] and Ley = [3ωy , 3ωy , ωy ] are re-
and Nuz is the control horizon, x̂z is the state error predic- spectively x and y motions ESO gain vectors.
ˆ Finally, the reference Euler angles can be computed as
tive vector and U 1 is the input error predictive vector. The ⎧
altitude reference vectors are ⎨ ϕr (k) = arcsin(ux (k) sin ψ(k) − uy (k) cos ψ)(k)

⎡ ⎤ θr (k) = arcsin(ux (k) cos ψ(k) + uy (k) cos ψ(k)/cosϕr (k))
xzr (k + 1|k) − xzr (k|k) ⎪

⎢ .. ⎥ ψr ≡ 0
x̂zr  ⎣ . ⎦ (25)
xzr (k + N2z |k) − xzr (k|k)
4.2 Attitude Controller Design
⎡ ⎤
U1r (k|k) − U1r (k − 1|k) The feedback linearization is used to linearize the nonlin-
ˆ ⎢ .. ⎥ ear dynamics, and MPC controller is designed for attitude
U 1r  ⎣ . ⎦
tracking which has been compensated with ESO through es-
U1r (k + Nuz −1 |k) − U1r (k − 1|k) timating the unmodeled dynamics and wind disturbances.
ˆ The attitude controller structure is shown in Fig. 4.
Minimizing the formula (19), U 1 can be computed as Let the augmented vector  = [ϕ, ϕ̇, θ, θ̇, ψ, ψ̇]T . The at-
ˆ −1
titude subsystem in (6) can be rewritten as
1 = [Hz Qz Hz + Rz ] [HzT Qz Hz + Rz ].
T
U ⎡ ⎤
(20) ϕ̇
ˆ
 −I
[HzT Qz (x̂zr (k) − Pz xz (k)) + Rz U rz ] ⎢ I I ⎥
⎢ Ix θ̇ψ̇ − Ix θ̇ωT + Ix + dϕ ⎥
y z p U 2

⎢ ⎥
⎢ θ̇ ⎥
where Hz and Pz form can been seen in [11]. ˙ = g(, τ , d ) = ⎢ Iz −Ix Ip ⎥
⎢ Iy ϕ̇ψ̇ + Iy ϕ̇ωT + Iy + dθ ⎥
U3
Since the quadrotor is disturbed by wind disturbances dur- ⎢ ⎥
ing flight, the extended state observer is designed to observe ⎣ ψ̇ ⎦
Ix −Iy
disturbance and compensate for it. Define an extended s- Iz ϕ̇θ̇ + U4
Iz + dψ
tate vector Xz = [z, ż, dz ]T , and yz is output of the altitude (26)

8209
(62 Then, the Euler angles’s disturbances are compensated by
Hr  WH H
03& 
EH VH
W H VH 4XDGURWRU ESO. The attitude ESO structure is similar to altitude ESO

VH M  T \
)HHGEDFN
OLQHDUL]DWLRQ
structure design. Thus, the output of attitude controller is

Fig. 4: The structure of attitude controller V = V̂ − E (32)

where E is the attitude ESO disturbance observer output


where τ = [U2 , U3 , U4 ] is control input vector and d =
T vector. Leϕ = [3ωϕ , 3ωϕ2 , ωϕ3 ]T , Leθ = [3ωθ , 3ωθ2 , ωθ3 ]T and
[dϕ , dθ , dψ ]T is the attitude disturbance vector. Leψ = [3ωψ , 3ωψ2 , ωψ3 ]T are respectively representing three
The nonlinear dynamics of quadrotor model are linearized Euler angles ESO gain vectors. At last, the control input
by the feedback linearization strategy, which can be ex- vector τ can be computed τ = τ (, V ) by formula(27).
pressed by
5 Simulation Results
⎡ Iy −Iz ⎤
Ix θ̇ ψ̇ + Ix
U2
The proposed control strategy has been tested by simu-
⎢ ϕ̇ψ̇ + UIy3 ⎥
V = V (, τ ) = ⎣ IzI−I y
x
⎦ (27) lation in order to check the performance attained for the
Ix −Iy path following problem of quadrotor subject to wind distur-
Iz ϕ̇θ̇ + Iz
U4
bances. The simulation results are presented below.
The quadrotor parameters used in the simulations are list-
where V = [V2 , V3 , V4 ]T is a new control input vector. Then
ed in Table 1.
the unknown or unmodeled dynamics and disturbances are
considered as new disturbances, which can be expressed by Table 1: Quadrotor Parameters
 I I 
d = [− Ixp θ̇ωT +dϕ , Iyp ϕ̇ωT +dθ , dψ ]T , where d is the new m 0.74kg
attitude disturbance vector. Therefore, a new attitude system l 0.21m
can be obtained as A 0.01m2
⎡ ⎤ Ix 0.004kg.m2
ϕ̇
⎢ V + d ⎥ Iy 0.004kg.m2
⎢ 2 ϕ ⎥ Iy 0.0084kg.m2
⎢ ⎥
 ⎢ θ̇ ⎥ Ip 7.321 × 10−5 kg.m2
˙ = g(, V , d ) = ⎢  ⎥ (28)
⎢ V3 + d θ ⎥ λ 3.2 × 10−5 N s2
⎢ ⎥
⎣ ψ̇ ⎦ μ 8.721 × 10−7 N ms2
V4 + d ψ

kdrag 0.03N m−1 s2
g 9.81ms−2
By using Euler’s method, the system (28) without distur- ρ 1.293kgm−3
bances can be discretised as
The simulation time is set as T = 40s, the turbulen-
x (k + 1) = A x (k) + B V (k) (29) t wind field action time is [10s, 25s] and the wind velocity
of 6.096m altitude is 10m/s. The turbulent wind field can
where x = [ϕ, ϕ̇, θ, θ̇, ψ, ψ̇]T be shown in Fig. 5.
Matrices A and B are the following:
⎡ ⎤ ⎡ ⎤ 0.2

1 Δt 0 0 0 0 0 0 0
u/m/s

⎢ 0 1 0 0 0 0 ⎥ ⎢ Δt 0 0 ⎥ -0.2
⎢ ⎥ ⎢ ⎥
⎢ 0 0 1 Δt 0 0 ⎥ ⎢ ⎥
⎥ , B = ⎢ 0 0 0
0 5 10 15 20 25 30 35 40

A = ⎢ ⎥ time/s

⎢ 0 0 0 1 0 0 ⎥ ⎢ 0 Δt 0 ⎥
⎢ ⎥ ⎢ ⎥ 0

⎣ 0 0 0 0 1 Δt ⎦ ⎣ 0 ⎦
v/m/s

0 0 -1

0 0 0 0 0 1 0 0 Δt -2
0 5 10 15 20
time/s
25 30 35 40

The cost function computed V̂ is designed as follows


w/m/s

-1
T
J = [x̂ − x̂r ] Q [x̂ − x̂r ] + V̂ R V̂
0 5 10 15 20 25 30 35 40
(30) time/s

Fig. 5: Turbulent wind field


where x̂ is the state predictive vector, x̂r is the state ref-
erence vector and V̂ is the control input predictive vector. The initial conditions of the quadrotor are ζ0 =
Q ∈ RN2 ∗N2 and R ∈ RNu ∗Nu are diagonal positive [0.5, 0, 0.5]T m and Θ0 = [0, 0, 0]T rad. The controller pa-
weighting matrices, N2 is the prediction horizon and Nu is rameters are listed in Table 2.
the control horizon. The reference track of quadrotor can be given as fol-
Minimize the formula (30), V̂ can be computed as follows lows: xr = 0.5 cos( 20 πt
)m, yr = 0.5 sin( 20
πt
)m, zr =
3 − 2 cos( 20 )m, ψr ≡ 0rad.
πt

V̂ = [HT Q H + R ]−1 .[HT Q (x̂r (k) − P x (k))] (31) Fig. 6 shows the performance of quadrotor tracking refer-
ence trajectory in three-dimensional space. Fig. 7 and Fig. 8
where H and P structures are similar to the altitude sys- respectively show the tracking of position and attitude an-
tem’s MPC controller. gles. It can be seen that actual trajectory of the quadrotor

8210
Table 2: Controller Parameters Firstly, the dynamic model of quadrotor helicopter under
Δt 0.01s the wind disturbances is introduced and the wind is gener-
N 2z , N u z 10 ated by Dryden model. Then, ESO based MPC controllers
Qz diag(25, 1, 2) are designed for position tracking and attitude tracking. In
Rz 0.05 addition, feedback linearization strategy is used to simplify
N2xy , Nuxy 10 the attitude system without ignoring nonlinearities. Finally,
Qxy diag(70, 8, 5, 70, 5, 3) the simulation results show the effectiveness of the proposed
Rxy diag(20, 20) method in quadrotor trajectory tracking subject to wind dis-
N2 , Nu 10
turbances.
Q diag(10, 0.5, 10, 0.5, 50, 0.5)
R diag(0.01, 0.01, 0.01) References
ωx , ω y , ω z 60
[1] C. Yuan, Y. M. Zhang, and Z. X. Liu, A survey on technologies
ωϕ , ω θ , ωψ 30
for automatic forest fire monitoring, detection, and fighting us-
ing unmanned aerial vehicles and remote sensing techniques,
Canadian Journal of Forest Research, 45(7): 783-792, 2015.
quickly tracks the reference trajectory and remains stable in
[2] K. Alexis, G. Nikolakopoulos, A. Tzes, and L. Dritsas, Coor-
general. When the turbulent wind field acts on the quadro- dination of helicopter UAVs for aerial Forest-Fire surveillance,
tor, the actual Euler angles can fast follow the trend of the In Applications of Intelligent Control to Engineering Systems,
reference Euler angles and the actual position is still stable. 2009: 169-193.
[3] Y. Chen, Y. He, and M. Zhou, Decentralized PID neural net-
work control for a quadrotor helicopter subjected to wind dis-
turbance, Journal of Central South University, 22(1): 168-179,
2015.
[4] C. Wang, B. Song, P. Huang, C. Tang, Trajectory tracking con-
trol for quadrotor robot subject to payload variation and wind
gust disturbance, Journal of Intelligent & Robotic Systems,
83(2): 315-333, 2016.
[5] J. Zhou, R. Deng, Z. Shi, and Y. Zhong, Robust Cascade PID
Attitude Control of Quadrotor Helicopters Subject to Wind
Disturbance,in Proceedings of the 36th Chinese Control Con-
ference, 2017: 6558-6563.
Fig. 6: Simulation result for path tracking [6] Z. Zhang, F. Wang, Y. Guo and C. H, Multivariable sliding
mode backstepping controller design for quadrotor UAV based
0.5
on disturbance observer, SCIENCE CHINA Information Sci-
Reference
Tracking
ences, 61(11): 155-170, 2018.
x/m

0
[7] M. Kerma, A. Mokhtari, and B. Abdelaziz, Nonlinear H∞ con-
-0.5
0 5 10 15 20 25 30 35 40 trol of a Quadrotor (UAV), using high order sliding mode dis-
time/s
0.5 turbance estimator, International Journal of Control, 85(12):
Reference
Tracking 1876-1885, 2012.
y/m

[8] A. Aboudonia, A. El-Badawy and R. Rashad, Disturbance


-0.5
0 5 10 15 20
time/s
25 30 35 40
observer-based feedback linearization control of an unmanned
5
Reference
quadrotor helicopter, Proceedings of the Institution of Mechan-
Tracking
ical, 230(9): 877-891, 2016.
z/m

0
[9] K. Alexis, G. Nikolakopoulos and A. Tzes, On trajectory track-
0 5 10 15 20 25 30 35 40
time/s ing model predictive control of an unmanned quadrotor heli-
Fig. 7: Simulation result for the position tracking copter subject to aerodynamic disturbances, Asian Journal of
Control, 16(1): 209-224, 2014.
[10] G. V. Raffo, M. G. Ortega, F. R. Rubio, An integral predic-
0.1
0.05
Reference tive/nonlinear H∞ control structure for a quadrotor helicopter,
/rad

Tracking

-0.05
0
Automatica, 46(1): 29-39, 2010.
0 5 10 15 20 25 30 35 40 [11] D. Ma, Y. Xia, T. Li and K. Chang, Active disturbance rejec-
time/s
tion and predictive control strategy for a quadrotor helicopter,
0.05 Reference
IET Control Theory & Applications, 10(17): 2213-2222, 2016.
/rad

0 Tracking

-0.05 [12] Y. Guo, B. Jiang and Y. Zhang, A novel Robust Attitude Con-
-0.1
0 5 10 15 20
time/s
25 30 35 40 trol for Quadrotor Aircraft Subject to Actuator Faults and Wind
2
10 -6 Gusts, IEEE/CAA Journal Automatica Sinica, 5(1): 292-300,
Reference
0
2018.
/rad

Tracking
-2
-4 [13] D. Yao, J. Xu and Y. Tang, Extended-State Observer-Based
0 5 10 15 20
time/s
25 30 35 40
Integral Sliding-Mode Control for a Quadrotor, in Proceedings
of the 37th Chinese Control Conference, 2018: 3078-3083.
Fig. 8: Simulation result for the attitude tracking
[14] T. R. Beal Digital Simulation of Atmospheric Turbulence for
Dryden and Von Karman Models,Journal of Guidance Con-
6 Conclusion
troland Dynamics, 16(1): 132-138, 1993.
In this paper, the problem of trajectory tracking for a [15] Y. Xiao and C. Jin, Flight theory in Atmospheric Disturbance,
quadrotor subject to wind disturbances has been studied. Beijing: National Defense Industry Press, 1993: 73-74.

8211

You might also like