Backstepping Control of Drone †

: This work derives the models which can be used to design and implement control laws for six degrees-of-freedom (DOF) quadrotor stability. The ﬁrst part of this paper deals with the presentation of the background of quadrotor modeling; the second part describes the direct control of the drone using the backstepping control principal. This principal is based on the division of the system into several sub-systems in a cascade, which makes the control laws generated on each subsystem, in a decreasing manner, until a global control law for the whole system is generated. The simulation results for the sm controller are generated on the MATLAB/Simulink platform; the results show a good performance in both the transient and steady-state operations.


Introduction
Drones are used as a means of monitoring and following important events such as forest fires and political demonstrations; they can also be used to rescue people in earthquakes in the civilian field. Additionally, they can be used as tools for supervision and fault diagnostic in smart grid systems. Drones can also act as aerial base stations (BSs) to deliver communication services (both uplink and downlink) for the subscribers on the ground [1]. In the military field, drones reduce human losses and material; they are able to closely monitor the enemy and reveal their location without exposing individuals to danger, and can direct precise strikes, like helicopters and aircrafts.
Many control approaches were developed for unmanned aerial vehicles (UAVS) in the literature. Hence, a detailed drone description model is described in [2][3][4]. The sliding mode control strategy based on backstepping control is widely used as it can produce high performances and a faster response for drone systems in general [5][6][7][8][9] and in indoor micro-quadrotors in particular [10]. Modeling-and backstepping-based nonlinear control for a six-DOF quadrotor helicopter is proposed by [11], in addition to the proposition of an adaptive sliding mode control for a quadrotor helicopter in [12].
Quadrotor mathematical modeling is very complicated [13]. It presents non-linearity due to having six degrees of freedom (translational and rotational motion) with only four control inputs. To preserve the equilibrium or the desired attitude of the drone, a traditional PID controller is commonly used; however, it does not ensure the robustness of the quadrotor, whatever the controlling target Euler angle or angular rate is. Hence, new approaches have proposed the use of a cascade PID algorithm to provide better performance and motion stabilization [14,15]. However, the implemented system still needs to tackle the drone system's non-linearity.
Hence, to control such a system, a backstepping method is the best choice [16,17]. Backstepping control is based on the Lyapunov stability principle of dynamic systems, and it is robust to parametric variation; thus, it ensures the stability of the system and gives good performances results.
This work describes the direct control of the drone using the backstepping control principal, where the quadrotor is supposed to track the desired trajectories with an acceptable dynamic. This paper is treated in three mean parts, organized as follows: first, the mathematical model of the quadrotor is developed; in the second step, the algorithm of backstepping control is presented; in the last section, the simulation results and their interpretations are presented. Finally, the conclusion and possible future developments of the work are presented.

Quadrotor Dynamic Modeling
The quadrotor consists of four rotors in a cross-configuration, as shown in Figure 1. The four-rotor design allows the quadrotor to be relatively simple in design yet highly reliable and maneuverable. The dynamic equation of movement of the attitude could be deduced from the Euler equation. The quadrotor mathematical and state-space models are explained in the following subsections. and it is robust to parametric variation; thus, it ensures the stability of the system and gives good performances results. This work describes the direct control of the drone using the backstepping control principal, where the quadrotor is supposed to track the desired trajectories with an acceptable dynamic. This paper is treated in three mean parts, organized as follows: first, the mathematical model of the quadrotor is developed; in the second step, the algorithm of backstepping control is presented; in the last section, the simulation results and their interpretations are presented. Finally, the conclusion and possible future developments of the work are presented.

Quadrotor Dynamic Modeling
The quadrotor consists of four rotors in a cross-configuration, as shown in Figure 1. The four-rotor design allows the quadrotor to be relatively simple in design yet highly reliable and maneuverable. The dynamic equation of movement of the attitude could be deduced from the Euler equation. The quadrotor mathematical and state-space models are explained in the following subsections.

Drone Dynamic Model
The dynamic model of the quadrotor can be defined in terms of the position vector and force expressions as given in Equations (1)-(3).
(1) Such that (x", y", z") represents the second derivative of position vector, T is the torque, and m denotes the mass of the drone.
The moment equations can be expressed in terms of the orientation angles ( ) ψ θ ϕ , , -roll, pitch, and yaw, respectively-as given in Equations (2) and (3).

Drone Dynamic Model
The dynamic model of the quadrotor can be defined in terms of the position vector and force expressions as given in Equations (1) Such that (x", y", z") represents the second derivative of position vector, T is the torque, and m denotes the mass of the drone.
The moment equations can be expressed in terms of the orientation angles (ϕ, θ, ψ) -roll, pitch, and yaw, respectively-as given in Equations (2) and (3).
τ ϕ , τ θ , and τ ψ represent the total rolling, pitching, and yawing torques, while p, q, and r represent the angular velocities in the body frame.

State-Space Model
A state-space representation is a mathematical model of a physical system as a set of inputs, outputs, and state variables related by first-order differential equations. "State space" refers to the space whose axes are the state variables. The state of the system can be represented as a vector within that space.
In this work, the state-space model of the quadrotor in the inertial frame is developed. Thus, the dynamic model of the quadrotor in the inertial frame can be expressed by the system referred to as Equation (4): The parameters a 1 , a 4 , a 7 , b 1 , b 2 , and b 3 can be calculated as follows: x , I y , and I z denote the inertias of the x-, y-, and z-axis of the quadrotor, respectively; J r denotes the z-axis inertia of the propellers' rotors. whereas To solve the given system, a backstepping control scheme is used as detailed in the following section.

Backstepping Control of Drone
The principle of backstepping is to divide the system into several sub-systems in a cascade. The control laws are then made for each subsystem, in a decreasing manner, until a global control law for the whole system is generated.

Control of the Angle ϕ
Considering the first subsystem mentioned below: The error ε 1 between the desired and actual roll angle is expressed as follows: Consider the Lyapunov function V 1 = 1 2 ε 2 1 , where the derivate of V 1 along x 1 trajectory, V', is computed as follows: Choosing ε 1 = −K 1 ε 1 (knowing that: K 1 ε 1 is positive definite function). Thus, the desired x d 2 is extracted as: Denoting ε 2 the error between desired and actual roll angle rate, so that: ε 2 = x d 2 − x 2 . Using V 2 = V 1 + 1 2 ε 2 2 as a candidate Lyapunov function, we obtain: where K 2 is a positive constant and x d . Thus, the control law is expressed by:

Control of the Angle θ
Considering the second subsystem mentioned below: Considering ε 3 is the error between the desired and actual angle θ and can be found by: using Lyapunov stability by choosing: V(ε 3 ) = 1 2 ε 2 3 . Therefore, if V' is negative, then the system trajectory is ensured to verify this condition: The error

Control of the Position z
Equation (8) represents the fourth subsystem: ε 7 is the error between the desired and actual position z, such that: The error ε 8

Control of the Position x
The last subsystem is represented by Equation (10) below: Name ε 11 the error between the desired and actual position x, such that The Lyapunov function is V( The error is defined by: x 12 ] All the previous steps of the backstepping control, used to generate a global control law for the whole system, are summarized in the block diagram shown in Figure 2. All the previous steps of the backstepping control, used to generate a global control law for the whole system, are summarized in the block diagram shown in Figure 2.

Results and Discussions
In order to validate our proposed control solution, the model is simulated under Matlab Simulink software. For that purpose, the results are obtained based on the application of the real parameters summarized on

Results and Discussions
In order to validate our proposed control solution, the model is simulated under Matlab Simulink software. For that purpose, the results are obtained based on the application of the real parameters summarized on Table 1 [2]. In this scenario, it is desired to follow a circular trajectory on the XY plane, centered in the origin. The height z increases uniformly from zero to 15 m (as shown in Figure 3b), where the drone stabilizes.

Conclusions
In this paper, a backstepping control is used to provide the dynamic control of the quadrotor. The models derived in this paper are used to design and implement control laws for six-DOF quadrotor stability. For this purpose, firstly, the mathematical model of the quadrotor was developed. Secondly, the backstepping control strategy was devised to control the position and orientation of the quadrotor subsystem. Several scenarios were performed to examine the performance of the backstepping strategy, and we noticed that the simulation results showed the effectiveness of the proposed control. For further work, this approach will be implemented on a quadrotor that will be applied for monitoring and fault diagnostic on a multi-agent-based smart grid [18].  Figure 3a shows the response of the drone controller to the xy desired value; where we see that the estimated value follows the set-point perfectly. Figure 3c illustrates that the real and the desired positions exactly meet each other in three-dimensional space. Figure 3d illustrates the response of orientation angles (roll, pitch, and yaw), where the dotted lines denote the desired values and continues-lines shows the estimated values. It is clearly demonstrated that the estimated values track the desired trajectories with an acceptable dynamic.

Conclusions
In this paper, a backstepping control is used to provide the dynamic control of the quadrotor. The models derived in this paper are used to design and implement control laws for six-DOF quadrotor stability. For this purpose, firstly, the mathematical model of the quadrotor was developed. Secondly, the backstepping control strategy was devised to control the position and orientation of the quadrotor subsystem. Several scenarios were performed to examine the performance of the backstepping strategy, and we noticed that the simulation results showed the effectiveness of the proposed control. For further work, this approach will be implemented on a quadrotor that will be applied for monitoring and fault diagnostic on a multi-agent-based smart grid [18].