You are on page 1of 7

8th International Conference on Modelling, Identification and Control (ICMIC-2016)

Algiers, Algeria- November 15-17, 2016

Quadrotor Position and Attitude Control via


Backstepping Approach

Djihad Matouk, Oussama Gherouat Foudil Abdessemed, Abdelouahab Hassam


LSI Lab, dept of Electronics LEA Lab, dept of Electronics
University of Setif University of Batna
Setif, Algeria Batna, Algeria
Djihad.matouk@hotmail.fr fodil_a@hotmail.com

Abstract—The purpose of this paper is to apply a nonlinear Up to now, many control algorithms for quadrotor
control law for an unmanned quadrotor helicopter. First, the unmanned helicopter have been put forward, while everyone
quadrotor dynamic model is established using Newton-Euler has advantages and disadvantages [4]. Algorithms like PID,
formalism and taking into account various physical phenomena feedback linearization and backstepping have mainly been
that can influence its dynamic behavior. Subsequently, applied and proved to work well with a quadrotor [5].
Backstepping controller is designed. Its job is to generate
commands to the four rotors to drive the quadrotor to track The paper is organized in the following sections. The
desired Cartesians positions and desired tilt angels. The designed dynamic model of quadrotor is presented in section II.
methodology is based on the Lyapunov’s theory of stability. This Backstepping controller is developed in section III. Simulation
method was checked satisfactorily in simulation. results are demonstrated in section IV. The performance of the
proposed controller is discussed in section V.
Keywords—quadrotor; Newton-Euler formalism;
backstepping; tracking trajectory.
II. QUADROTOR DYNAMICAL MODEL
The quadrotor helicopter is an helicopter configuration
I. INTRODUCTION with four rotors installed on the ends of a symmetrical cross,
Flying robot or unmanned aerial vehicles (UAVs) are Fig. 1. The cross is normally out of carbon fiber. The system
increasingly popular platforms. They are well adapted for the of electronics of control is usually placed in the center. The
realization of missions where risks to pilots are high, where propellers used turn at angular velocities ω1, ω2, ω3 and ω4,
beyond normal human endurance is required, or where human with fixed step. Rotors of the same branch, of the cross, turn in
presence is not necessary. Their use was initially for military a direction and the other pair turns in the opposite direction.
purposes, reconnaissance missions or of monitoring. In This neutralizes indeed the reactive couples and makes the
civilian applications they are becoming more and more flight possible without turning out of the command [2]-[3].
important due to their usefulness in surveillance, search,
mapping, rescue operations etc [1].
UAVs represent an important step in the development of
aeronautics. Among various categories of them, we will focus
on the quadrotor, a rotorcraft capable of vertical take-off and
landing. Rotorcrafts have a major advantage compared to
fixed wings aircrafts, in particular in an environment, where
the capacity to carry out a hovering is useful.
Quadrotor, as a rotorcraft, has certain advantages
compared to the conventional helicopter. Because of its
symmetry, this vehicle is dynamically elegant and simple to
build. In fact, it is easier to realize a hovering with four forces
of lift operating at the same distance from the center of mass
than to do it, only one acting on the center of mass.
The operation of X4-flyer is so particular. While varying
astutely rotors throttles, it is possible to make it go up/go
down, to incline it on the left/right (rolling motion: rotation
around x axis) or forward /back (pitching motion: rotation
around the y axis) or to make it swivel on itself (yaw motion:
rotation around z axis) [2]-[3]. Fig. 1. Structure model of quadrotor

978-0-9567157-6-0 © IEEE 2016


73

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016

The dynamic model of quadrotor is a system of equations, The translational motion is opposed by the gravity force FG
describing its attitude and position in space, which are
primarily those of a rigid body in rotation with six degrees of and the drag force FD . The torques acting on the quadrotor are:
freedom at four inputs. The four inputs represent the angular
velocities of the four rotors. The motion study of such a body the torque developed by the quadrotor τ  ,θ,ψ the aerodynamic
(position, orientation, speed and angular velocity) is reduced torque friction  a and the gyroscopic torque  g  gp   gq .
to study the movement of its center of gravity and its
orientation with respect to an inertial reference frame. From (  gp and  gq are respectively propellers gyroscopic torque and
where the need of associating a mobile frame with the solid to
the gyroscopic torque due to the quadrotor movement). Using
be studied, i.e. it follows instantaneously the movements of
this last [2]-[3]. the Newton's laws about translation and rotational motion, we
establish the mathematical model for the quadrotor UAV given
The coordinate frames and free body diagram for the by (1).
quadrotor are shown in Fig.1. The inertial frame, E, is defined
by (OE, x, y, z). The body frame, B(OB, x, y, z) is attached to
While it is convenient to have the equations of the linear
the center of mass of the quadrotor. Rotor 1 is on the positive
movement in the E frame, the equations of the rotational
x axis, 2 on the positive y axis, and the z axis is oriented to
complete a right-handed coordinate system. movement are useful in B frame, so that we can express
rotations around the center of gravity of the quadrotor.
We use the Euler angles to model the rotation of the quadrotor
in the inertial frame. The community of aeronautics generally
I
uses convention ZYX. The matrix B R allows passing from B  .. 1
to E, it is given by:  x  m  c s c  s s U z kdx x 
 ..
 y  1  c s s  s c U k y 
m
c c s s c  c s c s c  s s  dy 
 z
I
R   c s s s s  c c c s s  s c  (1)  .. 1
 z   c c U z  kdz z  mg 
B

  s s c c c 
 m
 .. 1
   I y  I z   U  kd   I r  
2 (3)
Where: c(-), s(-) and t(-) denote in this article cos(-), sin(-) and Ix

x y z  of the
T
tan(-) , respectively. The position vector  .. 1
   I z  I x    U  kd   I r  
2
center of mass in the inertial frame is denoted by ξ.
  [x  y z ]T is the vector of the angular speeds  Iy
 1
 ψ   I x  I y    U kd  2 
of the quadrotor wrt the axes of B frame, whose expression in ..
function of Euler’s angles speed variation is :
 Iz  
1 0  s    
 
Ω   0 c c s     (2)
 0  s c c    With:  is the signed sum of the angular velocities of the
propellers,

Supposing that the quadrotor operate with small angles, the   1   2  3   4 (4)
T
vector Ω can be assimilated to     .
It is important to note that U z , U  , U  and U are the control
A propeller that rotates in the air produces a lift force Fi and a inputs of the system. They are written according to the angular
velocities of the four rotors as follows:
moment M i around zB axis. Fi is perpendicular to the plan
of the appropriate propeller i, direction of M i is in the
opposed sense of rotation of the suitable propeller i. FT is the
total force generated by the propeller system.

978-0-9567157-6-0 © IEEE 2016


74

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016

In this section we have established the dynamic model of


 U z  kF (12  22  32  42 ) the quadrotor. It describe the nonlinear behavior, it is an under-

 U  l.k F (42  22 ) actuated system with six outputs{x, y, z, ϕ, θ, ψ} but only four

 U  l.kF (32  12 )
(5)
 
independent inputs U z ,U ,U ,U . It is also useful to note

U  kM (12  22  32  42 ) that the translation movements depend on the angles.

III. BACKSTEPPING CONTROL DESIGN
For simulation test, the physical parameters of the model have The main objective of this section is to synthesize a
been taken from [6]. backstepping control law for a quadrotor helicopter, forcing
the position {x(t), y(t), z(t)} and the angles {ϕ(t), θ(t), ψ(t)} to
track desired values {xd (t), yd(t), zd(t), ϕd(t), θd(t), ψd(t)}.
TABLE I. PHYSICAL PARAMETERS OF QUADROTOR AERIAL ROBOT
From the notes drawn in the previous section about the
quadrotor dynamic model, it is worthwhile to introduce virtual
Symbol Value Physical Significance inputs based on the tilt angles (ϕ, θ) as follows:
Quadrotor moment of inertia around X
Ix 3.8278.10-3
axis (Kg.m2)
Iy 3.8288.10-3
Quadrotor moment of inertia around Y U x   c s c  s s 

axis (Kg.m2)  (6)
Iz 7.6566.10 -3 Quadrotor moment of inertia around Z
axis (Kg.m2)
U y   c s s  s c 

Total rotational moment of inertia around
Ir 2.8385.10-5
the rotor axis (Kg.m2) The control scheme recommended is then, based on two
kF 2.9842.10-5 Lift factor (N/rad/s) cascade loops. According to the desired values xd and yd, the
kM 3.2320.10-7 Drag factor (N.m/rad/s) outer control loop calculates desired roll and pitch angles
l 0.25 Arm length (m)
(  and  ) for the inner one. The benefit of this inner control
d d
m 0.486 Total mass of the quadrotor (Kg)
g 9.806 Acceleration due to gravity (m/s2) loop is to calculate corresponding thrusts for desired altitude
Translational drage coefficient according
kdx 5.5670.10-4
to X axies (N/m/s) and attitude, then given as control inputs for the
kdy 5.5670.10-4
Translational drage coefficient according
to Y axies (N/m/s)
system U ,U ,U ,U  . In Fig. 2, the scheme illustrates this
z   

kdz 6.3540.10-4
Translational drage coefficient according control strategy.
to Z axies (N/m/s)
Rotational drage coefficient, Roll
kdϕ 5.5670.10-4
movement (N/rad/s)
Rotational drage coefficient, Pitch
kdθ 5.5670.10-4
movement (N/rad/s)
Rotational drage coefficient, Yaw
kdψ 6.3540.10-4
movement (N/rad/s)

Fig. 2. Synoptic scheme of the adopted control system.

978-0-9567157-6-0 © IEEE 2016


75

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016

m k 
From (6) it is easy to get desired roll and pitch angles, they are 

U x   x1d - z1 -c2 z2 -c1 z2 -c1z1  dx x2 
U m
 
calculated in the correction block according to:  z  

m k dy 


U y   x3d - z3 -c4 z4 -c4 z4 -c3 z3 
Uz 

m 4
x  

  
  d  arcsin U x sin  d  U y cos  d   


 k



 d  
 U x cos  d  U y sin  d  (7)   

Uz 
m
cos  cos 
d
 x5 - z5 -c6 z6 -c5 z6 -c5 z5  x6  g 
m
dz
 

  arcsin   



 cos  d
  
 

 I y -I z   kd  Ir

 d 
 U  I x  x7 - z7 -c8 z8 -c7 z8 -c7 z7 -

 Ix

x10 x12 
Ix
2
x8 - x10 
Ix
 
   (10)
For the state space representation, X  [ x1 , x12 ] is
T

  I z -I x  k 
2 - I r x 

considered as the state vector of the system, defined as follows:
d
U  I y  x9 - z9 -c10 z10 -c9 z10 -c9 z9 -  Iy

x8 x12  d x10
Iy Iy 8 
  

 
T
X   x, x, y, y, z , z , , , , , ,  (8)   I x -I y 
  d kd
2
 U  I z  x11 - z11 -c12 z12 -c11 z12 -c11z11 -  Iz
x8 x10   Iz
x12 
  
  
From (3) (5) and (7), the dynamic model of the quadrotor can
be rewritten in the state space form X  f  X   g  X ,U  :
Where: zi is the tracking error, ci  0 ˅ i ϵ 112
 x1  x2
 IV. SIMULATION RESULTS
1
 x2  U zU x  kdx x2  In this section, we will check the convergence of the
 m proposed controller by simulation of a UAV quadrotor with the
 x3  x4 parameters given above in Table 1.

 1 The reference trajectories used in the simulation are given in
 x4  U zU y  kdy x4  Table 2:
m

 x5  x6
 1 TABLE II. REFERENCE TRAJECTORY
 x6   c c U z  k dz x6  mg 
 m
 x7  x8 Variable Value Time (s)

 x  1  I  I  x x  U  k x 2  I x  [0, 0, 15] [0 10]
 8 Ix  y z 10 12  d 8 r 10 

 [10, 0, 15] [10 20]


 x9  x10
 1
[10, 10, 15] [20 30]
 x10   I z  I x  x8 x12  U   k d x10
2
 I r x8  [xd, yd, zd]
 Iy  [0, 10, 15] [30 40]

 x11  x12 [0, 0, 15] [40 50]
 (9)
1
 x12   I x  I y  x8 x10  U  k d x12
2

 Iz   [2Sin(0.5t), 2Cos(0.5t), -0.3t] [50 100]

Ψ Pi/6 [0 100]
Then, for the law control, we use Backstepping, as it is well
detailed in [7]-[8], to have those below:
Fig. 3 and Fig. 4 represent, respectively, the response of the
proposed controller to stabilize the quadrotor aerial robot at a
desired position and the tracking errors in x, y, z directions.
Similarly, Fig. 5 shows the stabilization of the corresponding
angles ϕ and θ, also the response to stabilize the ψ angle at a
desired value. Fig. 6 shows the tracking errors in ϕ, θ and ψ
angles.

978-0-9567157-6-0 © IEEE 2016


76

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016
15 0.1
x position (m)

x-d
10

ePhi (rad)
x
5 0
0
-5 -0.1
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100

15 0.1
y-d
y position (m)

eTheta (rad)
10 y
5 0
0
-5 -0.1
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100

20 0.05
z position (m)

z-d

ePsi (rad)
z
10 0

0 -0.05
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Time (s) Time (s)

Fig. 3. Backstepping position control result. Fig. 6. Tracking errors in attitude.

Fig. 7 represents the control inputs of our system

0.2
U ,U ,U ,U  z   
ex (m)

0
8

-0.2
Uz
0 10 20 30 40 50 60 70 80 90 100 6

0.2 4
0 10 20 30 40 50 60 70 80 90 100
ey (m)

0.2
0
Uphi

0
-0.2
0 10 20 30 40 50 60 70 80 90 100
x 10
-3 -0.2
10 0 10 20 30 40 50 60 70 80 90 100
0.2
5
ez (m)

UTheta

0 0

-5 -0.2
0 10 20 30 40 50 60 70 80 90 100
0 10 20 30 40 50 60 70 80 90 100
Time (s)
0.1
Upsi

Fig. 4. Tracking error in position. 0

-0.1
0 10 20 30 40 50 60 70 80 90 100
Time (s)
0.5 Phi-d
Phi angle (rad)

Phi Fig. 7. Inputs control result.


0

-0.5
0 10 20 30 40 50 60 70 80 90 100
Fig. 8 represents the 3D position of quadrotor aircraft
0.5 during the flight. The simulation results given by this figure
Theta angle (rad)

Theta-d
Theta
shows a good performances and robustness towards stability
0
and trajectory tracking even after a change of path, which
explains the efficiency of the control strategy developed in this
-0.5
0 10 20 30 40 50 60 70 80 90 100 work.
1 Psi-d
Psi angle (rad)

0.5 Psi

-0.5
0 10 20 30 40 50 60 70 80 90 100
Time (s)

Fig. 5. Backstepping attitude control result.

978-0-9567157-6-0 © IEEE 2016


77

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016
[7] G. V. Raffo, M. G. Ortega, F. R. Rubio, “Backstepping and nonlinear
Desired trajectory h∞ control for path tracking of a quadrotor unmanned aerial vehicle”. In
American Control Conference, Washington, 2008, 3356-3361.
Real trajectory
[8] T. Madani, A. Benallegue, “Backstepping control for a quadrotor
helicopter”. In Proceeding of the IEEE/RSJ International Conference on
Intelligent Robots and Systems, Beijing, 2006, 3255-3260.

15

10
z (m)

0
10 10
8 8
6 6
4 4
2 2
0 0
y (m) -2 -2 x (m)

Fig. 8. Path tracking with Backstepping control.

V. CONCCLUSION AND FUTURE WORKS


In this work, a backstepping approach was proposed for
position and attitude control of a 6-DoF quadrotor UAV. In
order to further test the performance of the designed
controller, the dynamic equations of the quadrotor, along with
the controller laws are used to simulate in
MATLAB/Simulink.
The simulation results show that all the state variables
converge to their reference values, even if these last are
suddenly changed. Good performance of the proposed
controller is also validated by the comparison with published
works.
As prospects, we hope to introduce the external
disturbances with variable parameters, and make the dynamic
model close to a real system in wind field. Then the
experimental tests will be addressed.

References
[1] H. Khebbache, B. Sait, F. Yacef, “Modeling and stabilizing control laws
design taking into account the actuator faults for an UAV type
quadrotor”, J. Automation & Systems Engineering 6-2 (2012): 84-95,
2012.
[2] B. Lantos, L. Màrton, “Nonlinear control of vehicles and robots”,
Advances in Industrial Control, Spronger, 2011.
[3] P. Castillo, R. Lozano, A.E. Dzul, “Modelling and control of mini-flying
machines”, A Advances in Industrial Control, Spronger, 2005.
[4] Y. Li, S. Song, “A survey of control algorithms for quadrotor unmanned
helicopter”, IEEE fifth International Conference on Advanced
Computational Intelligence (ICACI), China, 2012.
[5] S. Gupte, P. I. T. Mohandas, “A survey of quadrotor unmanned aerial
vehicles”, Proceedings of IEEE, 2012.
[6] H. Khebbache, B. Sait, F. Yacef, “Robust fault tolerant control with
sensor faults for a four-rotor helicopter”, IJAET, Vol. 3, Issue 1, pp. 1-
13, 2012

978-0-9567157-6-0 © IEEE 2016


78

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.
8th International Conference on Modelling, Identification and Control (ICMIC-2016)
Algiers, Algeria- November 15-17, 2016

978-0-9567157-6-0 © IEEE 2016 79

Authorized licensed use limited to: Consortium - Algeria (CERIST). Downloaded on August 19,2022 at 11:27:12 UTC from IEEE Xplore. Restrictions apply.

You might also like