4 - Improved Altitude Control Algorithm For Quadcopter Unmanned Aerial Vehicles PDF

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

applied

sciences
Article
Improved Altitude Control Algorithm for Quadcopter
Unmanned Aerial Vehicles
Nguyen Xuan-Mung and Sung-Kyung Hong *
Faculty of Mechanical and Aerospace Engineering, Sejong University, Seoul 143-747(05006), Korea;
[email protected]
* Correspondence: [email protected]; Tel.: +82-02-3408-3772

Received: 25 April 2019; Accepted: 20 May 2019; Published: 24 May 2019 

Abstract: Quadcopter unmanned aerial vehicles continue to play important roles in several
applications and the improvement of their control performance has been explored in a great number
of studies. In this paper, we present an altitude control algorithm for quadcopters that consists of
a combination of nonlinear and linear controllers. The smooth transition between the nonlinear
and linear modes are guaranteed through controller gains that are obtained based on mathematical
analysis. The proposed controller takes advantage and addresses some known shortcomings of the
conventional proportional–integral–derivative control method. The algorithm is simple to implement,
and we prove its stability through the Lyapunov theory. By prescribing certain flight conditions,
we use numerical simulations to compare the control performance of our control method to that of
a conventional proportional–derivative–integral approach. Furthermore, we use a DJI-F450 drone
equipped with a laser ranging sensor as the experimental quadcopter platform to evaluate the
performance of our new controller in real flight conditions. Numerical simulation and experimental
results demonstrate the effectiveness of the proposed algorithm.

Keywords: quadcopter; unmanned aerial vehicle; altitude control; position control; PID control

1. Introduction
In recent decades, unmanned aerial vehicles (UAVs) have gained popularity in the scientific
community due to their numerous advantages such as high maneuverability, diverse applicability,
reliability, and economy. UAVs are used in a broad range of applications such as scientific research,
civil engineering, military applications, aerial mapping, search and rescue operations, and risk zone
inspection [1–4]. Quadcopters are an important class of UAVs that are superior in many ways: they
have a simple structure, are quick to manufacture, and are inexpensive [4,5]. Controlling their position,
in general, and altitude, in particular, has been the subject of numerous studies [6–23] with ever more
advanced algorithms having been proposed to address the quadcopter control problem.

1.1. Related Works


Many applications of quadcopters in the real world have been discussed in recent years. The most
widely mentioned topics include autonomous landing on moving platforms [6–9], precision landing for
autonomous docking and wireless self-charging system [10,11], and autonomous delivery tasks [12–14].
These applications are all, somehow, based on a reliable altitude controller. Therefore, designing an
altitude controller with superior performance is one of the most common and important efforts that
researchers all around the world are nowadays undertaking.
To that end, several papers have addressed the altitude control problem in the literature.
Santos et al. [15] presented an algorithm to accomplish quadcopter trajectory tracking tasks by
controlling the altitude through an adaptive dynamic controller that was capable of dealing with

Appl. Sci. 2019, 9, 2122; doi:10.3390/app9102122 www.mdpi.com/journal/applsci


Appl. Sci. 2019, 9, 2122 2 of 15

uncertainties in model parameters. Jayakrishnan [16] and Xiong et al. [17] used the sliding mode
control (SMC) technique to control the horizontal position and attitude while also providing a
significant improvement of altitude control. In other studies [18–20], the second order SMC
method was also used to improve quadcopter altitude control performances. Yet another method
was presented by Muliadi et al. [21], where the authors proposed a neural network approach to
control UAV altitude dynamics. The results obtained with this method were verified through
comparisons with a conventional proportional–integral–derivative (PID) control system. However,
these approaches [15–21] have a common disadvantage in that the SMC technique generates a high
chattering control signal method which reduces the lifetime of the entire system.
Although several control methods have been proposed in the literature, PID control has become
the most widely used technique in a variety of applications all over the world because it is simple
and easy to design and typically delivers a satisfactory performance. The PID approach was used in
many studies [22–28] to achieve not only quadcopter altitude control, but also attitude stabilization
and horizontal position control. In recent studies [29–32], the authors proposed the use of a multi-loop
control architecture (i.e., inner-loop and outer-loop) to control quadcopters in specific applications.
The outer-loop controllers were designed in different ways while the inner-loop controllers were all
implemented using the PID control law.
Nevertheless, the conventional PID controller has several limitations. First, their fixed gains limit
system performance over a wider operational range. When the required range of operation is large,
the conventional PID controller is prone instability, because the nonlinearities in the system cannot
be properly dealt with. Second, as conventional PIDs are based on a linear model, their performance
may suffer in a nonlinear system like a quadcopter. Several studies have attempted to overcome
these shortcomings. Phi et al. [33] presented a gain scheduling PID controller which determines the
PID gains by linearly adjusting the gain as a function of tracking errors. In another approach [34],
the authors used a pickup table to schedule the PID gains in a quadrotor fault tolerant control task.
Both methods were able to improve the control performance under different operating conditions.
However, it is still a linear control law which means that it may not perform well in non-linear systems.
Further, scheduling the gains results in discontinuous transitions which may result in sudden jerks
or oscillations. A quadcopter self-tuning fuzzy PID controller where the gains are tuned nonlinearly
through fuzzy logic have been proposed to address this problem [35]. Goodarzi et al. [36] introduced
a nonlinear PID control to achieve asymptotic system stability under the presence of uncertainties.
Another way to cope with the difficulties in control of a nonlinear system is to represent the dynamical
system by the Takagi–Sugeno (T–S) fuzzy model [37]. Based on this approach, Liu et al. [38] addressed
the problem of finite-time stability and stabilization for a class of nonlinear systems with time-varying
delay. However, both the T–S fuzzy and linear parameter varying (LPV) approaches [39,40] require
considerably greater computational resources compared with a conventional PID controller.
The references indicate that most of the existing methods either are complex to design and
implement or require great computational resources. Meanwhile, PID control law appears to play an
important role for finding a simple and efficient control method for a variety of systems. Designing a
controller that makes use of the inherent advantages of the PID approach while tackling its shortcomings
is therefore an important and worthwhile challenge.

1.2. Main Contributions


Motivated by the above observations, in this article, we propose an altitude control algorithm
for quadcopter unmanned aerial vehicles. The main advantages of this new method are twofold:
(1) while our method inherit the advantages of the PID approach, i.e., it is simple and straightforward,
its multi-loop approach ensures that unlike other control algorithms [33–38], our controller requires
less computational resources and exhibits a smooth performance at all times; and (2) compared to
conventional PID controllers, our control algorithm delivers a greatly improved performance with
regard to both raising time and error convergence speed.
Appl. Sci. 2019, 9, 2122 3 of 15

We use the Lyapunov stability theory to validate the system’s stability. We prescribe a maximum
acceleration/deceleration of the vehicle which allows the controller to have the vehicle move at an
appropriate acceleration before fast and hard approaching a target. This contributes to a safer and
smoother flight performance of both single vehicles performing specific missions [5,14,41,42] and
multi-agent systems flying in formation or switching their inter-communication topology [43,44].
For safety reasons, we firstly evaluate the performance of our new controller with numerical simulations
and then we will conduct experimental flights to demonstrate the effectiveness of the proposed algorithm
in real flight conditions.

1.3. Organization
The remainder of this paper is organized as follows: Section 2 presents the dynamical quadcopter
model and Section 3 the control algorithm while the numerical simulation and experimental
demonstration results and their discussions are provided in Section 4, before ending with the
main conclusions.

2. Preliminaries

2.1. Quadcopter Dynamics Model


Here, we briefly summarize the quadcopter dynamics model as it has already been presented
previously [45,46].
Let φ, θ, and
ψ denote the three Euler angles roll, pitch, and yaw, respectively, where, φ < π/2,
|θ| < π/2, and ψ ≤ π (see Figure 1). The symbols x, y, and z respectively represent the position of the
quadcopter along the x, y, and z axes in an earth-fixed frame {E}. Jx , J y , and Jz denote the moments of
inertia along the x, y, and z axes, respectively; m represents the mass, l the arm length of the vehicle, and
g the gravitational acceleration. The quadcopter dynamics model can be described as follows [45,46]:

J y − Jz
!
 .. . . l
φ= θψ + U2






 Jx Jx
 !
.. Jz − Jx . . l


θ= φψ + U3



Jy Jy





Jx − J y . .
 !

 .. 1
ψ= φθ + U4





 Jz Jz (1)

 .. 1
x = (cos φ sin θ cos ψ + sin φ sin ψ)U1



m





1

 ..
y = (cos φ sin θ sin ψ − sin φ cos ψ)U1



m





1

 ..
z = g − (cos φ cos θ)U1



m

where Ui (i = 1, 2, 3, 4) denotes the control inputs which are:





 U1 = F1 + F3 + F2 + F4

 U2 = F4 − F2


(2)
U3 = F3 − F1





 U4 = C (F1 + F3 − F2 − F4 )

d

where Fi = Ct Ω2i denotes the thrust force generated by motor i; Ωi is the speed of motor i; Ct and Cd
are the thrust and drag coefficients, respectively.
Appl. Sci. 2019, 9, x 4 of 16

F2 F1
Appl. Sci. 2019, 9, 2122
Appl. Sci. 2019, 9, x φ 4 of 15
4 of 16
l x
F2 F1
{B}
F3 φθ F4
l
ψ xy
{B} z
zFE θ F4
yE 3
y
ψ
xE z
{E} z E
yE
xE
{E}Figure 1. Quadcopter configuration.
Figure 1. Quadcopter configuration.
2.2. Quadcopter Control Scheme
2.2. Quadcopter Control Scheme Figure 1. Quadcopter configuration.
The overall control scheme consists of position and attitude controllers (Figure 2). Conventional
The overallControl
controlScheme
scheme consists of position and attitude controllers (Figure 2). Conventional
PID 2.2. Quadcopter
controllers are used for both horizontal (x- and y-) position control and attitude control while a
PID controllers are used for both horizontal (x- and y-) position control and attitude control while a
new algorithm is proposed for
The overall control schemealtitude control.
consists It is and
of position worth noting
attitude that our(Figure
controllers new algorithm can also be
2). Conventional
new algorithm is proposed for altitude control. It is worth noting that our new algorithm can also be
usedPID
for controllers
used horizontal are used for
position
for horizontal
both horizontal (x- and y-) position control and attitude control while a
control.
position control.
new algorithm is proposed for altitude control. It is worth noting that our new algorithm can also be
used for horizontal position control.
U1
zd
U1
Tx φd
xd zd U2
T φθd U2 U
xd Ty x d 3
yd
Ty θd U3 U
yd ψd 4

U4
ψd φ θψ
z x y φ θψ
z x y
Figure 2. Full quadcopter controller scheme. The proposed algorithm is applied to the altitude control
Figure 2. Full
while quadcopter
conventional controller scheme. The proposed
proportional–integral–derivative algorithmare
(PID) controllers is used
applied to the altitude
for horizontal control
position
Figure 2. Full quadcopter controller scheme. The proposed algorithm is applied to the altitude control
whileandconventional proportional–integral–derivative (PID) controllers are used for horizontal
attitude control.
while conventional proportional–integral–derivative (PID) controllers are used for horizontal
position and attitude control.
3. Controller
position and Design
attitude control.

The multi-loop
3. Controller Design PID-PID control scheme for quadcopter altitude control was introduced and
3. Controller Design
verified in some existing studies [28,33,47]. In this section, we present our new altitude control
The The
multi-loop
algorithm multi-loop PID-PID
which also consistscontrol
PID-PID control
of scheme for
schemecontroller,
a multi-loop quadcopter
for quadcopter altitude
altitude
i.e., outer-loop control
control
and waswas introduced
introduced
inner-loop. We deriveandthe and
verified in
verified
outer-loopsome
in as
someexisting studies
existing studies
a multi-mode [28,33,47]. In this
[28,33,47].and linear
(i.e., nonlinear section,
this section,
modes)we we present
present
control lawour our
new
while new altitude
thealtitude iscontrol
control
inner-loop a
algorithm
algorithmwhich also
which
PID controller. consists
also consistsofofa amulti-loop
multi-loop controller,
controller, i.e., i.e.,outer-loop
outer-loop andand inner-loop.
inner-loop. We derive
We derive
the outer-loop
the outer-loop as aasmulti-mode
Let zd denote athe
multi-mode (i.e.,nonlinear
(i.e.,
desired attitude, nonlinear and linear
and
and vz represent linearthemodes)
modes)control
vertical control
velocitylaw while
oflaw
the the the
while
vehicle.inner-loop
Theinner-loop
altitude is is
a PID controller.
tracking error
a PID controller. is then given by:
Let Let z d denote
z d denote thethe desiredattitude,
desired andez vv=
attitude, and z represent
zd − z the vertical velocity of the vehicle. The (3)
z represent the vertical velocity of the vehicle. The
altitude tracking error is then given by:
altitude tracking
Then the error is then
derivative of egiven
z is: by:
. .
ezez== zzdd −− vzz (3)(4)
ez = z d − z (3)
Then the derivative of ez is:
Then the derivative of ez is:
ez = zd − vz (4)
ez = zd − vz (4)
A multi-mode control law is chosen for the outer-loop of the altitude controller as:
A multi-mode control law is chosen for the outer-loop of the altitude controller as:
Appl. Sci. 2019, 9, 2122 5 of 15
Appl. Sci. 2019, 9, x 5 of 16

A multi-mode control law is chosen for the outer-loop of the altitude controller as:

 −p 2amax (−ez − e0 ) + zd. , ez < −d l
z = kez2a+max
v
 − zd ,(−e−z −
dl e≤0 )e+ z , ez < −dl
z ≤ dl (5)
  .


vz =  kez 2+a zd ,(e − −del )≤+ezz ≤ dl e > d (5)

  max z 0 d, z l
 .
ez > dl
 p
 2amax (ez − e0 ) + zd ,
where, amax is a positive constant which represents the desired maximum acceleration of the vehicle;
dl a positive
where, constantconstant
amax is a positive at which
which line (Δ)the
therepresents = kez + zmaximum
: vzdesired d to be acceleration
tangential to thevehicle;
of the curve
.
constant at which the line (∆) : vz = kez + zd to be tangential to the curve (S) : vz =
p − 2amax (−ez − e0. ) + zd , ez < − dl
dl a positive
( S ) − = max (−ez − e0 ) + zd , ez < −dl
: vz 2a ; k , e0 positive constants, and e0 < dl ; vz the control

ez > dl; k, e0 positive constants, and e0 < dl ; vz the control action

p  2amax (ez − e0. ) + zd ,

 
2amax (ez − e0 ) + zd , ez > dl
action will
which whichbe will be fed
fed into theinto the inner-loop
inner-loop (see 3)
(see Figure Figure 3) as a velocity
as a velocity reference
reference [31]. [31].

ez  − 2a ( −e − e ) + z , ez < − d l vz U1

max z 0 d
zd
vz =  ke + z , −d ≤ e ≤ d
zd
z d l z l


z  2a (e − e ) + z ,
max z 0 d
ez > d l
z

Figure
Figure 3. The multi-loop
3. The multi-loop altitude
altitude control
control scheme
scheme of
of the
the quadcopter. The proposed
quadcopter. The proposed algorithm
algorithm is
is
implemented in the outer-loop while a PID controller is used in the inner-loop.
implemented in the outer-loop while a PID controller is used in the inner-loop.
. .
Figure shows vvz as
Figure 44 shows a function of ez from Expression (5) (5) corresponding to zzd = 0. For zd , 0,
z as a function of ez from Expression . corresponding to d = 0 . For z d ≠ 0
the graphs are shifted along the vz axis an amount of zd without any change of the relations between
, the graphs are shifted along the v axis an amount of zd without any change of the relations
(S) and (∆). In order for the line (∆z ) to be tangential to the curve (S) at ez = dl , the followings
between
must ( S ) and ( Δ ) . In order for the line ( Δ ) to be tangential to the curve ( S ) at ez = dl , the
be satisfied:  p
followings must be satisfied: 

 ke z = 2amax (dl − e0 )

 √
kez = 2amax (6)

 2amax(dl − e0 )
k =
 


 p
2 2dal − e0

 max (6)
 k=
Manipulating (6) yields:   2 dl − e0
amax

 dl =
k2

Manipulating (6) yields:

(7)


 d l
 e0 =

Appl. Sci. 2019, 9, x  6 of 16
 2amax
 d l = k 2
 (7)
 evz = d l
 0 2

ke z
e0)
(e z −
2a max
−dl −e0

O e0 dl ez
e0 )
( −e z −
− 2a ma
x

Figure
Figure 4. 4. Graphicalillustration
Graphical illustration of
ofthe curve((SS)) (blue),
thecurve (blue), the line ((Δ∆)) (green),
theline (green), and
andtheir
theirrelations.
relations.

Theorem 1. If the control law is designed as Expression (3) with the parameters satisfying (6) then the system
(1) is asymptotically stable and the tracking error is forced to zero.

Proof. Choose a Lyapunov candidate function as:

2 −ez − e0 , ez < −dl


Appl. Sci. 2019, 9, 2122 6 of 15

Theorem 1. If the control law is designed as Expression (3) with the parameters satisfying (6) then the system (1)
is asymptotically stable and the tracking error is forced to zero.

Proof. Choose a Lyapunov candidate function as:



ez < −dl



 2 −ez − e0 ,



V=
 1 2 (8)
e , −dl ≤ ez ≤ dl
2 √z



ez > dl

2 ez − e0 ,

It is clear that V > 0, ∀ez , 0. We have:


 .
−ez
, ez < −dl





.

 −ez − e0
.


V= ez ez , −dl ≤ ez ≤ dl (9)

 .
ez


, ez > dl





 ez − e0

Substituting (4) into (9) and choosing control laws as (5), we have:

− 2amax , ez < −dl




. 

V= −ke2z , −dl ≤ ez ≤ dl (10)



 √
− 2amax , ez > dl

.
Clearly, we have V < 0, ∀ez , 0 which means that the tracking error, ez , converges to zero as time
t → ∞ . This completes the proof. 

Remark 1. When ez < −dl or ez > dl , the controller generates control actions that follow the curve (S). While
this is the case, the slope of (S) is smaller than that of (∆) which means that the acceleration is limited, which in
turn results in fewer overshoots and vehicle jerks. Whereas, when −dl ≤ ez ≤ dl , the control action follows the
line (∆) which has a higher slope. This guarantees that the tracking error converges to zero in a prompt and
hard manner.

Remark 2. When −dl ≤ ez ≤ dl , the proposed controller becomes a proportional-PID (P-PID) control scheme,
which implies that the parameter k can be obtained through a conventional PID tuning process. Moreover,
at ez = –dl and ez = dl , the line (∆) becomes a tangent to the curve (S), resulting in smooth transitions when
the controller switches control modes (between nonlinear and linear modes), with regard to both acceleration
and velocity.

4. Numerical Simulation, Experimental Results and Discussions


In this section, we demonstrate the effectiveness of the proposed altitude control algorithm.
The quadcopter dynamics from Expression (1) are used to verify the stability and advanced performance
of our controller. By comparing our new method to a conventional PID controller, we highlight and
discuss the effectiveness of the new method.
4. Numerical Simulation, Experimental Results and Discussions
In this section, we demonstrate the effectiveness of the proposed altitude control algorithm. The
quadcopter dynamics from Expression (1) are used to verify the stability and advanced performance
of our
Appl. Sci.controller.
2019, 9, 2122By comparing our new method to a conventional PID controller, we highlight7 of
and15
discuss the effectiveness of the new method.

4.1. Experimental Platform Description

4.1.1. Hardware and


4.1.1. Hardware and Avionics
Avionics Devices
Devices
We
We use
use aa DJI-F450
DJI-F450 quadcopter
quadcopter as as the
the experimental
experimental platform
platform (Figure
(Figure 5)
5) which
which is is operated
operated byby an
an
onboard flight computer unit (FCU) Pixhawk [48,49]. The quadcopter attitude
onboard flight computer unit (FCU) Pixhawk [48,49]. The quadcopter attitude and acceleration are and acceleration are
provided
provided by byananinertial
inertialnavigation
navigation system
system(INS). We We
(INS). use ause
commercially available
a commercially laser ranging
available sensor
laser ranging
LidarLite V3 to measure
sensor LidarLite the altitude
V3 to measure the and a commercial
altitude global positioning
and a commercial system (GPS)
global positioning receiver
system to
(GPS)
determine the position of the vehicle. Additionally, a power supplying system
receiver to determine the position of the vehicle. Additionally, a power supplying system (including(including battery,
power
battery,adapter module),module),
power adapter a set of remote
a set of control
remote transmitter/receiver for the manual
control transmitter/receiver pilot, and
for the manual a set
pilot, of
and
radio telemetry transmitter/receiver for ground station monitoring are used. The quadcopter
a set of radio telemetry transmitter/receiver for ground station monitoring are used. The quadcopter dynamical
parameters are listed inare
dynamical parameters Table 1. in Table 1.
listed

Figure 5. Quadcopter platform used for the experimental demonstration.

Table 1. System parameters used for the simulations.

Parameter Value Unit


Table 1. System parameters used for the simulations.
m 2.0 kg
ParameterJx 0.0121
Value kg.m2 Unit
m Jy 0.0119
2.0 kg.m2 kg
Jz 0.0223 kg.m2
Jx 0.0121 m kg.m
2
l 0.23
Jy g 0.0119
9.81 m/s2 kg.m2
−6 Ns2 kg.m2
Jz Ct 7.732 (10 )
0.0223
Cb −7
1.275 (10 ) Nms2
l 0.23 m
g 9.81 m/s2
4.1.2. Software
We implemented all vehicle altitude, position, and attitude controllers on the Pixhawk FCU
running at frequencies of 100 Hz, 100 Hz, and 400 Hz, respectively. The altitude controller gains
and reference values for altitude are listed in Table 2. It is worth noting that the horizontal position
controller and attitude controller are beyond the scope of this paper and will not be presented in this
section. The system signal flows are briefly described by the block diagram in Figure 6.
4.1.2. Software
We implemented all vehicle altitude, position, and attitude controllers on the Pixhawk FCU
running at frequencies of 100 Hz, 100 Hz, and 400 Hz, respectively. The altitude controller gains and
reference values for altitude are listed in Table 2. It is worth noting that the horizontal position
controller
Appl. Sci. and attitude controller are beyond the scope of this paper and will not be presented in this8 of 15
2019, 9, 2122
section. The system signal flows are briefly described by the block diagram in Figure 6.

Table
Table 2. Controllerparameters
2. Controller parameters and
and the
thealtitude
altitudereferences.
references.
Parameters Value and Unit
Parameters Value and Unit
amax 2.5 m/s2
amax 2.5 2
k 0.7m/s
k 0.7
kp 1.1
kp 1.1
k ki
i
0.002
0.002
kdk d 0.2
0.2
zd z d 0, 15, 12, and 1010sin
0, 15, 12, and sin(0.1t)
(0.1t)mm

Figure 6. 6.The
Figure Thesystem
system signal flowblock
signal flow blockdiagram.
diagram.

4.2. Numerical Simulation


4.2. Numerical andand
Simulation Discussions
Discussions
The Theexperimental
experimental quadcopter
quadcopter parameters
parameters and and controller
controller gains
gains are for
are used usedthe for the simulation.
simulation. The
controllers are
The controllers are implemented
implemented basedbasedon onMatlab/Simulink
Matlab/Simulink with
withthethe
sampling
samplingtimetime
is chosen identically
is chosen identically
as theasoperating
the operating frequency
frequency of of
thethe controllersin
controllers inthe
the experimental
experimental system.
system.The initial
The vehicle
initial altitude
vehicle altitude
and vertical velocity are all zero, i.e., z (0) = 0 .
and 
z (0) = 0 . The vehicle is armed on a horizontal
and vertical velocity are all zero, i.e., z(0) = 0 and z(0) = 0. The vehicle is armed on a horizontal level
level
surface surface
with with the stabilization
the attitude attitude stabilization
controllercontroller
enabled.enabled.
We present two test scenarios to evaluate the effectiveness ofofour
We present two test scenarios to evaluate the effectiveness ourproposed
proposed algorithm,
algorithm, namely
namely the
the tracking of (1) a step altitude reference; and (2) a moving altitude reference. For comparison, we
tracking of (1) a step altitude reference; and (2) a moving altitude reference. For comparison, we also
also simulated the performance of a conventional PID controller for both scenarios.
simulated the performance of a conventional PID controller for both scenarios.
4.2.1. Scenario 1: Tracking Step Altitude References
4.2.1. Scenario 1: Tracking Step Altitude References
This scenario consists of three stages: (i) initialization; (ii) take-off; and (iii) descent. During the
This scenario
first five consists
seconds of three
the vehicle stages: (i)i.e.,
is initialized, initialization; (ii) take-off;
it is armed and prepares and (iii) descent.
for take-off. During the
The altitude,
first five seconds the vehicle is initialized, i.e., it is armed and prepares for take-off.
vertical velocity, and acceleration are all zero (Figures 7–10) and the control signal, U1 , increases from The altitude,
vertical
thevelocity, andofacceleration
initial value are all zero
zero to the hovering value(Figures
of about7–10)
19.62 and the control
N (Figure 11). signal, U1 , increases from
the initialDuring
value ofthezero to the
second (from tvalue
hovering
stage = 5 tooft about
= 30 s),19.62 N (Figure takes
the quadcopter 11). off and ascends to the
desired altitude
During of 15stage
the second m. The altitude
(from t = responses
5 to t = 30 ares),
nearly identical for both
the quadcopter takescontrollers during the
off and ascends to the
early stage of the flight ( 5 ≤ t < 9 s in Figure 7). Initially, the conventional
desired altitude of 15 m. The altitude responses are nearly identical for both controllers during PID controller responds
the early
stage of the flight (5 ≤ t < 9 s in Figure 7). Initially, the conventional PID controller responds slightly
faster than our new controller (see Inset 1 in Figure 7). This is reversed during the later stages of the
flight when the tracking error becomes smaller than dl (ez ≤ dl ≈ 5.1 m) and the controller smoothly
switches to the linear mode. For 9 ≤ t < 30 s our new controller exhibits a significantly superior
performance compared to the conventional PID. With our algorithm, the tracking error converges to a
small range closed to zero (ez is less than 0.5%) at t ≈ 21 s while the conventional PID only reaches
this range around t ≈ 25 s (Inset 1 in Figure 8). The velocity, acceleration, and control signal of the
conventional PID controller exhibit large amplitudes and slow converging speeds (Figures 9–11).
In order to evaluate the performance of our controller when the step amplitude is smaller than dl ,
during the third stage (30 ≤ t ≤ 50 s), the quadcopter is commanded to descend from the current altitude
of 15 m to the desired altitude of 12 m (corresponding to a step of 3 m). If we look at the insets 2 in
Figures 7 and 8, it is clearly seen that our controller aggressively responds and quickly reaches the altitude
reference at t ≈ 45 s while the conventional PID controller only reaches this reference at t ≈ 49 s.
altitude of the
d l , during m to stage
15 third the desired
( 30 ≤ taltitude
≤ 50 s),of m (corresponding
the12quadcopter to a step
is commanded to of 3 m).from
descend If wethe
look at the
current
insets 2 in Figures 7 and 8, it is clearly seen that our controller aggressively responds
altitude of 15 m to the desired altitude of 12 m (corresponding to a step of 3 m). If we look at the and quickly
reaches
insets theFigures
2 in altitude reference
7 and t ≈ 45 seen
8, it isatclearly s while
that the
our conventional PID controller
controller aggressively only and
responds reaches this
quickly
reference
reaches t ≈ 49 s.reference at t ≈ 45 s while the conventional PID controller only reaches this
at altitude
the
reference
Appl. Sci. 2019, ≈ 49
at9, t2122 s. 9 of 15
16

16
14

14
12

12
10
z (m) z (m) 15 Inset 2

108 8 Inset 1 14
15 Inset 2
altitude altitude

6 13
8 Inset 1 14
86
4
6 13 32 34 36 38
2
64 4
32 reference
34 36 38
2 5 6 7 8
conventional PID controller
42 proposed controller
reference
5 6 7 8
conventional PID controller
20 proposed controller
0 5 10 15 20 25 30 35 40 45 50

0 time (s)
0 5 10 15 20 25 30 35 40 45 50

Figure 7. Comparison of altitude performance between our new controller and a conventional PID
time (s)

controller for Scenarioof1 altitude


(tracking a step altitude reference). new controller and a conventional PID
Figure7.7.Comparison
Figure Comparison of altitudeperformance
performancebetween
betweenourour new controller and a conventional PID
controller for Scenario 1 (tracking a step altitude reference).
controller for Scenario 1 (tracking a step altitude reference).
16
conventional PID controller

14 proposed controller
16
conventional PID controller
0.4 Inset 1
12
14 proposed controller

0.2
Inset 2
10 0.4 Inset 1 0
12

0.2 0
Inset 2
108 0
-0.2
(m)

0 18 20 22 24 26
z

86
-0.2
z (m)
e

-0.4
error e error

64 18 20 22 24 26 40 42 44 46 48
-0.4
42 40 42 44 46 48

20

-2
0

-4
-2
0 5 10 15 20 25 30 35 40 45 50
-4 time (s)
0 5 10 15 20 25 30 35 40 45 50

Appl. Sci. 2019,


Figure
Figure
8. 9,Comparison
x
8. Comparison of altitude tracking error convergence between our new controller and 10
of altitude tracking errortime
convergence
(s) between our new controller and a of 16
a
conventional PID controller for Scenario 1.
conventional PID controller for Scenario 1.
Figure 8. Comparison of altitude tracking error convergence between our new controller and a
conventional PID controller for Scenario 1.
2.5
conventional PID controller
proposed controller
2

1.5
(m/s)

1
z
velocity v

0.5

-0.5

-1
0 5 10 15 20 25 30 35 40 45 50
time (s)

Figure9. 9.Comparison
Figure Comparisonofofthethevertical
verticalvelocity
velocityperformance
performancebetween
betweenour
ournew
newcontroller
controllerand
anda a
conventional PID controller for Scenario 1.
conventional PID controller for Scenario 1.

conventional PID controller


2.5
proposed controller

1.5
)
2
0 5 10 15 20 25 30 35 40 45 50
-1
time (s)
0 5 10 15 20 25 30 35 40 45 50
time (s)
Figure 9. Comparison of the vertical velocity performance between our new controller and a
conventional PID controller
Figure 9. Comparison of for
the Scenario
vertical 1.velocity performance between our new controller and a
Appl. Sci.conventional
2019, 9, 2122 PID controller for Scenario 1. 10 of 15

3 conventional PID controller


2.5
proposed controller
conventional PID controller
2.5
2 proposed controller

2
1.5
)
2
z (m/s

1.5
)
2

1
z (m/s
accel. a

1
0.5
accel. a

0.5
0

0
-0.5

-0.5
-1
0 5 10 15 20 25 30 35 40 45 50
-1
time (s)
0 5 10 15 20 25 30 35 40 45 50
time (s)
Figure 10. Comparison of the vertical acceleration performance between our new controller and a
conventional
Figure
Figure 10.10. PID controller
Comparison
Comparison of of for
thethe Scenario
vertical
vertical 1.
acceleration
acceleration performance
performance between
between our
our new
new controller
controller and
and a a
conventional
conventional PID
PID controller
controller forfor Scenario
Scenario 1. 1.
25

25

20

20

15
U (N) 1 (N)

15
U

10
1

conventional PID controller


10 proposed controller
conventional PID controller

5 proposed controller

0
0 5 10 15 20 25 30 35 40 45 50
0
time (s)
0 5 10 15 20 25 30 35 40 45 50
time (s)
Figure11.
Figure 11.Comparison
Comparisonofofthe
thecontrol
controlsignal,
signal,U1U, 1between
, between our
our new
new controller
controller anda aconventional
and conventionalPID
PID
controller
Figure forComparison
11. Scenario 1. of the control signal, U , between our new controller and a conventional PID
controller for Scenario 1. 1

controller2:for
4.2.2. Scenario Scenarioa1.Moving Altitude Reference
Tracking
Here, the vehicle tracks a moving altitude reference using the same controller gains as in Scenario 1.
The moving altitude reference is given as a sine function of time t as:

zd = 10 sin(0.1t) (11)

Clearly, the altitude performance of our new algorithm is superior to a conventional PID controller
(Figure 12). While the moving reference altitude reaches 10 m altitude at time t ≈ 15.7 s, our controller
reaches the peak about 3.8 s later (at t ≈ 19.5 s), while the conventional PID controller lags by 9.7 m,
reaching the maximum altitude at t ≈ 21.1 s. Due to this significant delay, the conventional PID does
not even reach the full altitude. In addition, the tracking error of the PID controller exhibits large
amplitude oscillation and a slow response compared to our algorithm (Figure 13).
controller (Figure 12). While the moving reference altitude reaches 10 m altitude at time t ≈ 15.7 s,
controller lags by 9.7 m, reaching the maximum altitude at t ≈ 21.1 s. Due to this significant delay,
our controller reaches the peak about 3.8 s later (at t ≈ 19.5 s), while the conventional PID
the conventional PID does not even reach the full altitude. In addition, the tracking error of the PID
controller lags by 9.7 m, reaching the maximum altitude at t ≈ 21.1 s. Due to this significant delay,
controller exhibits large amplitude oscillation and a slow response compared to our algorithm (Figure
the conventional PID does not even reach the full altitude. In addition, the tracking error of the PID
13).
controller
Appl. Sci. 2019,exhibits
9, 2122 large amplitude oscillation and a slow response compared to our algorithm (Figure
11 of 15
13).
16 10

9.5 reference
16 10
14 normal PID controller
9
9.5 proposed controller
reference
14 8.5
12 normal PID controller
9
16 18 20 proposed controller
12 8.5
10
16 18 20
z (m) z (m)

10
8
altitudealtitude

8
6

6
4

4
2

2
0
0 5 10 15 20 25 30
0 time (s)
0 5 10 15 20 25 30

Figure 12. Comparison of altitude performances between our new controller and a conventional PID
time (s)

controller
Figure for Scenario of
12. Comparison 2 (tracking a moving altitude
altitude performances reference).
between our new controller and a conventional PID
Figure 12. Comparison of altitude performances between our new controller and a conventional PID
controller for Scenario 2 (tracking a moving altitude reference).
controller for Scenario 2 (tracking a moving altitude reference).
4

43 normal PID controller


proposed controller
normal PID controller
32
proposed controller

21
(m)

10
z
error e error(m)
e

-10
z

-1
-2

-2
-3

-3
-4

-4
-5
0 5 10 15 20 25 30
-5 time (s)
0 5 10 15 20 25 30
Figure 13.Comparison
Figure13. Comparisonofofthe
thealtitude
altitudetracking
trackingerror
time convergence
error convergencebetween
(s)
betweenour
ournew
newcontroller
controllerand
anda a
conventional PID controller in Scenario 2.
conventional PID controller in Scenario 2.
Figure 13. Comparison of the altitude tracking error convergence between our new controller and a
conventionalDemonstration
4.3. Experimental PID controller in
andScenario 2.
Discussions
In this subsection, we present the experimental results of a step-altitude-reference-tracking flight
to evaluate the performance and demonstrate the effectiveness of our new controller in real flight
conditions. After arming, the quadcopter stays on the ground and prepares for take-off during the
first ten seconds (Figure 14). The altitude reference of 15 m is commanded at time t ≈ 10 s leading the
vehicle to ascend. It is clear that, initially, the conventional PID controller performance is considerably
faster than our proposed controller. However, similarly to the simulation results, our new controller
exhibits a superior performance compared with the PID controller when the tracking error becomes
smaller. If we look at the inset in Figure 14, it is seen that the response of our proposed controller
is about 5 s faster than that of the conventional PID controller. The experimental vertical velocity
and acceleration performance (Figures 15 and 16) also prove the stability and the effectiveness of the
proposed algorithm.
errorcontroller
new becomes exhibits
smaller. aIfsuperior
we look at the inset incompared
performance Figure 14, with
it is seen that controller
the PID the response of our
when the proposed
tracking
controller
error is about
becomes 5 s If
smaller. faster thanatthat
we look the of theinconventional
inset PID
Figure 14, it is seencontroller. The experimental
that the response vertical
of our proposed
velocity and
controller acceleration
is about 5 s faster performance
than that of the(Figures 15 and
conventional PID 16)controller.
also prove
The the stability and
experimental the
vertical
effectiveness of the proposed algorithm.
velocity and acceleration performance (Figures 15 and 16) also prove the stability and the
effectiveness
Appl. of the
Sci. 2019, 9, 2122 proposed algorithm. 12 of 15
20
reference
2018 conventional PID controller
reference
proposed controller
1816 conventional PID controller
proposed controller
1614

1412

1210
altitude z (m)

15
10 8
altitude z (m)

15
86 14.8

64 14.8
14.6

42
14.6 25 30 35 40 45 50
20
25 30 35 40 45 50
0-2
0 5 10 15 20 25 30 35 40 45 50
-2
time (s)
0 5 10 15 20 25 30 35 40 45 50
time (s)
Figure 14. Comparison of experimental altitude performance between our new controller and a
conventional
Figure
Figure14. PID controller.
14. Comparison
Comparison of
of experimental
experimental altitude
altitude performance
performance between
between our
our new
newcontroller
controllerand
andaa
conventional PID controller.
conventional PID controller.
2.5

2.5 conventional PID controller


proposed controller
2
conventional PID controller
proposed controller
2

1.5
velocity v z (m/s)

1.5
velocity v z (m/s)

0.5

0.5

-0.5
0 5 10 15 20 25 30 35 40 45 50
-0.5 time (s)
0 5 10 15 20 25 30 35 40 45 50

Appl. Sci.Figure
2019, 9,15.
Figure x15. Comparison
Comparison ofof the
the experimental
experimental vertical
vertical velocity
time (s)
velocity performance
performance between
between our
our new
new 13 of 16
controller
controller
and
and a conventional
a conventional
Figure PID
PID
15. Comparison ofcontroller.
controller.
the experimental vertical velocity performance between our new controller
and13
a conventional PID controller.
conventional PID controller
proposed controller
12

11
)
2
(m/s

10
z
accel. a

7
0 5 10 15 20 25 30 35 40 45 50
time (s)

Comparison
Figure16.16.Comparison
Figure of of
thethe experimental
experimental vertical
vertical acceleration
acceleration performance
performance between
between ournew
our new
controller and a conventional PID controller.
controller and a conventional PID controller.

The way our new algorithm exhibits the performance promises a smooth system response when
the vehicle starts a movement and a fast target approaching speed when the tracking error becomes
small. These properties are useful in performing tasks that require high accuracy and smooth
performance such as precision landing, obstacle avoidance, and autonomous delivery to high
Appl. Sci. 2019, 9, 2122 13 of 15

The way our new algorithm exhibits the performance promises a smooth system response when the
vehicle starts a movement and a fast target approaching speed when the tracking error becomes small.
These properties are useful in performing tasks that require high accuracy and smooth performance
such as precision landing, obstacle avoidance, and autonomous delivery to high buildings, etc.

5. Conclusions
This paper presented a new altitude control algorithm for quadcopters. The experimental
validation and the numerical simulation results clearly demonstrated that our algorithm performs
significantly better compared to a conventional PID controller. While taking advantage of the strength
of conventional PID approaches, our method successfully tackles some of their shortcomings. Our
algorithm is simple to design and implement, and can be applied to a large range of position control
applications for unmanned vehicles. Future work is dedicated to precision landing control design with
our proposed controller for an autonomous quadcopter docking and self-charging system.

Author Contributions: Conceptualization, N.X.-M.; methodology, N.X.-M.; software, N.X.-M.; validation, N.X.-M.;
formal analysis, N.X.-M.; investigation, N.X.-M.; resources, N.X.-M.; data curation, N.X.-M.; writing—original
draft preparation, N.X.-M.; writing—review and editing, N.X.-M. and S.-K.H.; visualization, N.X.-M.; supervision,
S.-K.H.; project administration, S.-K.H.; funding acquisition, S.-K.H.
Funding: This research received no external funding.
Acknowledgments: This research was supported by The Competency Development Program for Industry
Specialists of the Korean Ministry of Trade, Industry and Energy (MOTIE), operated by Korea Institute for
Advancement of Technology (KIAT) (No. N0002431), and The MSIT (Ministry of Science and ICT), Korea, under
the ITRC (Information Technology Research Center) support program (IITP-2018-2019-0-01423) supervised by the
IITP (Institute for Information & communications Technology Promotion).
Conflicts of Interest: The authors declare no conflict of interest.

References
1. Xuan-Mung, N.; Hong, S.K. A Multicopter ground testbed for the evaluation of attitude and position
controller. Int. J. Eng. Technol. 2018, 7, 65–73. [CrossRef]
2. Yu, Y.; Ding, X. A Quadrotor test bench for six degree of freedom flight. J. Intell. Robot. Syst. 2012, 68,
323–338. [CrossRef]
3. Lee, K.U.; Choi, Y.H.; Park, J.B. Inverse optimal design for position control of a quadrotor. Appl. Sci. 2017,
7, 907. [CrossRef]
4. Nguyen, N.P.; Hong, S.K. Sliding mode thau observer for actuator fault diagnosis of quadcopter UAVs.
Appl. Sci. 2018, 8, 1893. [CrossRef]
5. Du, H.; Zhu, W.; Wen, G.; Duan, Z.; Lu, J. Distributed formation control of multiple quadrotor aircraft based
on nonsmooth consensus algorithms. IEEE Trans. Cybern. 2017, 49, 342–353. [CrossRef]
6. Borowczyk, A.; Nguyen, D.T.; Nguyen, A.P.V.; Nguyen, D.Q.; Saussié, D.; Ny, J.L. Autonomous landing of
a multirotor micro air vehicle on a high velocity ground vehicle. IFAC Pap. Online 2017, 50, 10488–10494.
[CrossRef]
7. Ghommam, J.; Saad, M. Autonomous landing of a quadrotor on a moving platform. IEEE Trans. Aerosp.
Electr. Syst. 2017, 53, 1504–1509. [CrossRef]
8. Wang, L.; Bai, X. Quadrotor autonomous approaching and landing on a vessel deck. J. Intel. Robot. Syst.
2018, 125–143. [CrossRef]
9. Croon, G.C.H.E.; Ho, H.W.; Wagter, C.; Kampen, E.; Remes, B.; Chu, Q.P. Optic-flow based slope estimation
for autonomous landing. Int. J. Micro Air Veh. 2013, 5. [CrossRef]
10. Junaid, A.B.; Konoiko, A.; Zweiri, Y.; Sahinkaya, M.N. Autonomous wireless self-charging for multi-rotor
unmanned aerial vehicles. Energies 2017, 10, 803. [CrossRef]
11. Hu, B.; Lu, L.; Mishra, S. Fast, safe and precise landing of a quadrotor on an oscillating platform. In Proceedings
of the American Control Conference, Palmer House Hilton, Chicago, IL, USA, 1–3 July 2015.
12. Faust, A.; Palunko, I.; Cruz, P.; Fierro, R.; Tapia, L. Automated aerial suspended cargo delivery through
reinforcement learning. Artif. Intell. 2017, 247, 381–398. [CrossRef]
Appl. Sci. 2019, 9, 2122 14 of 15

13. Mathew, N.; Smith, S.L.; Waslander, S.L. Planning paths for package delivery in heterogeneous multirobot
teams. IEEE Trans. Autom. Sci. Eng. 2015, 12, 1298–1308. [CrossRef]
14. Arbanas, B.; Ivanovic, A.; Car, M.; Haus, T.; Orsag, M.; Petrovic, T.; Bogdan, S. Aerial-ground robotic
system for autonomous delivery tasks. In Proceedings of the IEEE International Conference on Robotics and
Automation (ICRA), Stockholm, Sweden, 16–21 May 2016.
15. Santos, M.C.P.; Rosales, C.D.; Sarapura, J.A.; Sarcinelli-Filho, M.; Carelli, R. An adaptive dynamic controller
for quadrotor to perform trajectory tracking tasks. J. Intell. Robot. Syst. 2019, 93, 5–16. [CrossRef]
16. Jayakrishnan, H.J. Position and attitude control of a quadrotor UAV using super twisting sliding mode.
IFAC Pap. Online 2016, 49, 284–289. [CrossRef]
17. Xiong, J.J.; Zheng, E.H. Position and attitude tracking control for a quadrotor UAV. ISA Trans. 2014. [CrossRef]
18. Nadda, S.; Swarup, A. Improved quadrotor altitude control design using second-order sliding mode.
J. Aerosp. Eng. 2017, 30, 04017065. [CrossRef]
19. Moawad, N.M.; Elawady, W.M.; Sarhan, A.M. Adaptive PID sliding surface-based second order sliding
mode controller for perturbed nonlinear systems. In Proceedings of the 12th International Conference on
Computer Engineering and Systems (ICCES), Cairo, Egypt, 19–20 December 2017.
20. González, I.; Salazar, S.; Lozano, R. Chattering-free sliding mode altitude control for a quad-rotor aircraft:
Real-time application. J. Intell. Robot. Syst. 2014, 73, 137–155. [CrossRef]
21. Muliadi, J.; Kusumoputro, B. Neural network control system of UAV altitude dynamics and its comparison
with the PID control system. J. Adv. Trans. 2018, 1–18. [CrossRef]
22. Mustapa, Z.; Saat, S.; Husin, S.H.; Abas, N. Altitude controller design for multi-copter UAV. In Proceedings
of the IEEE International Conference on Computer, Communication, and Control Technology (I4CT 2014),
Langkawi, Malaysia, 2–4 September 2014.
23. Santos, M.F.; Pereira, V.S.; Ribeiro, A.C.; Silva, M.F.; Vidal, M.J.D.C.V.F.; Honorio, L.M.; Cerqueira, A.S.;
Oliveira, E.J. Simulation and comparison between a linear and nonlinear technique applied to altitude control
in quadcopters. In Proceedings of the 18th International Carpathian Control Conference (ICCC), Sinaia,
Romania, 28–31 May 2017; pp. 234–239.
24. Pounds, P.E.I.; Bersak, D.R.; Dollar, A.M. Stability of small-scale UAV helicopters and quadrotors with added
payload mass under PID control. Auton. Robots 2012, 33, 129–142. [CrossRef]
25. Salih, A.L.; Moghavvemi, M.; Mohamed, H.A.F.; Gaeid, K.F. Modelling and PID controller design for a
quadrotor unmanned air vehicle. In Proceedings of the IEEE International Conference on Automation,
Quality and Testing, Robotics (AQTR), Cluj-Napoca, Romania, 28–30 May 2010.
26. Li, J.; Li, Y. Dynamic analysis and PID control for a quadrotor. In Proceedings of the IEEE International
Conference on Mechatronics and Automation, Beijing, China, 7–10 August 2011.
27. Ahmed, A.H.; Ouda, A.N.; Kamel, A.M.; Elhalwagy, Y.Z. Attitude stabilization and altitude control of
quadrotor. In Proceedings of the 12th International Computer Engineering Conference (ICENCO), Cairo,
Egypt, 28–29 December 2016.
28. Khan, H.S.; Kadri, M.B. Attitude and altitude control of quadrotor by discrete PID control and non-linear
model Predictive control. In Proceedings of the International Conference on Information and Communication
Technologies (ICICT), Karachi, Pakistan, 12–13 December 2015.
29. Bolandi, H.; Rezaei, M.; Mohsenipour, R.; Nemati, H.; Smailzadeh, S.M. Attitude control of a quadrotor with
optimized PID controller. Intell. Control Autom. 2013, 4, 335–342. [CrossRef]
30. Thanh, H.L.N.N.; Hong, S.K. Quadcopter robust adaptive second order sliding mode control based on PID
sliding surface. IEEE Access 2018, 6, 66850–66860. [CrossRef]
31. Thanh, H.L.N.N.; Nguyen, N.P.; Hong, S.K. Simple nonlinear control of quadcopter for collision avoidance
based on geometric approach in static environment. Int. J. Adv. Robot. Syst. 2018. [CrossRef]
32. Nguyen, N.P.; Hong, S.K. Fault-tolerant control of quadcopter UAVs using robust adaptive sliding mode
approach. Energies 2019, 12, 95. [CrossRef]
33. Nguyen, N.P.; Hong, S.K. Position control of a hummingbird quadcopter augmented by gain scheduling.
Int. J. Eng. Res. Technol. 2018, 11, 1485–1498.
34. Milhim, A.B.; Zhang, Y. Gain Scheduling based PID controller for fault tolerant control of a quad-rotor UAV.
In Proceedings of the AIAA Infotech@Aerospace, Atlanta, GA, USA, 20–22 April 2010.
35. Gautam, D.; Ha, C. Control of a quadrotor using a smart self-tuning fuzzy PID controller. Int. J. Adv.
Robot. Syst. 2013, 10. [CrossRef]
Appl. Sci. 2019, 9, 2122 15 of 15

36. Goodarzi, F.; Lee, D.; Lee, T. Geometric nonlinear PID control of a quadrotor UAV on SE(3). In Proceedings
of the European Control Conference (ECC), Zürich, Switzerland, 17–19 July 2013.
37. Takagi, T.; Sugeno, M. Fuzzy identification of systems and its applications to modeling and control. IEEE Trans.
Syst. Man Cybern. 1985, 1, 116–132. [CrossRef]
38. Liu, H.; Shi, P.; Chadli, M. Finite-time stability and stabilisation for a class of nonlinear systems with
time-varying delay. Int. J. Syst. Sci. 2016, 47, 1433–1444. [CrossRef]
39. Estrada, F.R.L.; Ponsart, J.C.; Theilliol, D.; Zhang, Y. LPV Model-based tracking control and robust sensor
fault diagnosis for a quadrotor UAV. J. Intel. Robot. Syst. 2016, 84, 163–177. [CrossRef]
40. Rangajeeva, S.L.M.D.; Whidborne, J.F. Linear parameter varying control of a quadrotor. In Proceedings
of the 6th International Conference on Industrial and Information Systems, Peradeniya, Sri Lanka, 16–19
August 2011.
41. Stojcsics, D.; Molnár, A. Autonomous takeoff and landing control for small size unmanned aerial vehicles.
Comp. Inform. 2013, 32, 1117–1130.
42. Feng, Y.; Zhang, C.; Baek, S.; Rawashdeh, S.; Mohammadi, A. Autonomous landing of a UAV on a moving
platform using model predictive control. Drones 2018, 2, 34. [CrossRef]
43. Zhou, Z.; Wang, H.; Hu, Z. Event-based time varuing formation control for multiple quadrotor UAVs with
markovian switching topologies. Complexity 2018. [CrossRef]
44. Qi, Y.; Zhou, S.; Kang, Y.; Yan, S. Formation control for unmanned aerial vehicles with directed and switching
topologies. Int. J. Aerosp. Eng. 2016. [CrossRef]
45. Zhang, X.; Li, X.; Wang, K.; Lu, Y. A survey of modelling and identification of quadrotor robot. Abstr. Appl. Anal.
2014, 320526. [CrossRef]
46. Wang, H.; Ye, X.; Tian, Y.; Zheng, G.; Christov, N. Model-free–based terminal SMC of quadrotor attitude and
position. IEEE Trans. Aerosp. Electron. Syst. 2016, 52, 2519–2528. [CrossRef]
47. Zhang, D.; Qi, H.; Wu, X.; Xie, Y.; Xu, J. The quadrotor dynamic modeling and indoor target tracking control
method. Math. Probl. Eng. 2014. [CrossRef]
48. Alexis, K.; Nikolakopoulos, G.; Tzes, A. Model predictive quadrotor control: Attitude, altitude and position
experimental studies. IET Control. Theory Appl. 2012, 6, 1812–1827. [CrossRef]
49. Guruganesh, R.; Bandyopadhyay, B.; Arya, H.; Singh, G.K. Design and hardware implementation of autopilot
control laws for MAV using super twisting control. J. Intell. Robot. Syst. 2017, 90, 455–471. [CrossRef]

© 2019 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access
article distributed under the terms and conditions of the Creative Commons Attribution
(CC BY) license (http://creativecommons.org/licenses/by/4.0/).

You might also like