Nomenclature
- UAVs
-
Unconventional Unmanned Aerial Vehicles
- PID
-
Proportional Integral Derivative
- LQR
-
Linear Quadratic Regulator
- ADRC
-
Active Disturbance Rejection Controller
- SUAV
-
Subminiature UAV
- MPC
-
Model Predictive Control
- MRAC
-
Model Reference Adaptive Control
- CoG
-
Center of Gravity
- ST
-
Super Twisting
1.0 Introduction
Automation and robotisation in the aeronautical field are opening up new perspectives in terms of rescue, observation, inspection and reconnaissance [Reference Derafa, Ouldali, Madani and Benallegue1, Reference Yuan, Wang and Xie2, Reference Mokhtari and Cherki3]. Research in this field has been very active recently, and this growing interest is due to technological advances, particularly in the field of miniaturisation of actuators and onboard electronics.
Unconventional Unmanned Aerial Vehicles (UAVs) (called reconfigurable UAVs) are a new class of drones. They have a variable structure during flight. In recent years, they have gained great popularity and have been the subject of scientific researchers, and this is due to their ability to change their morphologies to different flight conditions [Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4] and optimise their shape to achieve multitask missions [Reference Desbiez, Expert, Boyron, Diperi, Viollet and Ruffier5, Reference Derrouaoui, Bouzid, Guiatni and Belmouhoub6]. Changing the configuration during flight enables critical tasks that are difficult to complete with conventional quadrotors.
Unconventional UAVs are reliable in enclosed areas and dangerous places [Reference Falanga, Mueggler, Faessler and Scaramuzza7]. Infrastructure inspection and cave discoveries also require this type of vehicle [Reference Mintchev and Floreano8, Reference Floreano and Wood9]. Furthermore, the ability to grasp and transfer large objects without the use of extra mechanisms and with minimum energy use is a significant advantage [Reference Caballero, Suarez, Real, Vega, Bejar, Rodriguez-Castaño and Ollero10, Reference Yilmaz, Zaki and Unel11]. Another key element is that modifying the configuration allows new movements like roll, pitch, yaw, and translation to be introduced without impacting the motors’ rotation velocities [Reference Derrouaoui, Bouzid, Guiatni, Dib and Moudjari12]. Different structures have already been proposed by introducing changes to the classic drone such as the length and the number of arms [Reference Kamil, Hazry, Wan, Razlan and Shahriman13, Reference Hazry, Wan and Razlan14], control of the orientation of propellers and rotors, and other structures [Reference Derrouaoui, Bouzid, Guiatni and Dib15, Reference Sheng and Sun16].
Since the UAV is exposed to an unfavorable atmospheric environment and external conditions, reliable and robust control algorithms are required. In the literature, a large number of publications on multi-copters address this control problem. There are several control laws based on the linearisation of the dynamic model [Reference Muliadi17], although these approaches have limitations when the system moves away from its operating point. Some studies propose the development of linear controllers such as Proportional Integral Derivative (PID) and Linear Quadratic Regulator (LQR) [Reference Invernizzi, Giurato, Gattazzo and Lovera18, Reference Farrell, Jackson, Nielsen, Bidstrup and McLain19], while others suggest the development of non-linear methods to maintain the stability of the system [Reference Hamadi, Lussier, Fantoni, Francis and Shraim20, Reference Sartori, Quagliotti, Rutherford and Valavanis21]. In Ref. [Reference Gao, Wang, Tao and Ge22], Gao et al. design an Active Disturbance Rejection Controller (ADRC), which is developed from the non-linear PID controller and applied to an unconventional Subminiature UAV (SUAV) system. Authors in Ref. [Reference De Almeida and Raffo23] implement a linearisation control law based on the input-output feedback. The proposed control aims to stabilise both the tilt-rotor aircraft and the load over the entire trajectory. Another controller, Model Predictive Control (MPC), was presented by Richard et al. in reference [Reference Andrade, Raffo and Normey-Rico24] to solve the trajectory tracking problem of a linearised titled rotor drone when carrying a suspended load. Research [Reference Willis, Johnson and Beard25] shows a controller based on state-dependent LQR for the high-level and a PID control for the low-level tilt-rotor. In the work of Desbiez et al. [Reference Desbiez, Expert, Boyron, Diperi, Viollet and Ruffier5], a Model Reference Adaptive Control (MRAC) and a PID that controls the attitude have been applied to a multirotor with two independent rotating arms. The MRAC law has been used to manage the uncertainties due to the variable architecture of the quadrotors. In Ref. [Reference Wallace26], Wallace et al. opted for a controller based on a LQR to stabilise the entire model of the folding arm drone initially, and then control the vehicle in a trirotor configuration in which the vehicle can transform. This controller is supposed to provide stability to the vehicle, but it did not generate consistent returns to the origin. Barbaraci et al. [Reference Barbaraci27] also discussed the control algorithm using a LQR on a quadrotor with variable arm geometry, to stabilise the UAV and recover the error with respect to the reference, but in their case, they implemented the controller after linearising the system. Another study was made by Falanga et al. [Reference Falanga, Kleber, Mintchev, Floreano and Scaramuzza28] to ensure stable flight at all times with any morphology transition, in which they exploit an adaptive LQR controller that adapts to the drone’s morphology during the flight. A new and first design of a self-foldable and self-deployable drone is proposed by Tuna et al. [Reference Tuna, Ovur, Gokbel and Kumbasar29], where the arms are rotated at the same time by a single servomotor. Recently, optimising energy consumption during flight has become an area of interest for Xiong. To ensure a best energy efficiency, they have proposed the rotation of the quadrotor’s arms, to achieve the desired movements, while keeping the same thrust for each rotor. In Ref. [Reference Chanzy and Keane30], authors proposed a new set of morphing wings for drones, these wings provide an energy-efficient method of roll control.
The studied system in this paper is highly non-linear and has a variable structure during flight, which makes the control of this type of vehicle difficult and complex. Recent work has focused on conventional controllers for unconventional drones. The majority of the existing literature focuses on classical backstepping. However, this control law does not guarantee stability in the presence of uncertain parameters and unknown disturbances.
In this paper and following our previous work [Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4], we are interested in a nonlinear robust controller to ensure better tracking of a drone with rotating arms in the presence of unknown disturbances, taking into account the change of its Center of Gravity (CoG), the variation of the inertia, and the allocation matrix. The backstepping controller is used in combination with the Super-Twisting (ST) algorithm. The control law of ST is composed of two parts: the first one represents a convergence term, while the second one is a disturbance estimation term.
The main contributions of this work are summarised as follows:
An enhanced backstepping controller with a correction term based on the ST algorithm is proposed. It has the particularity of solving the trajectory tracking problem in finite time and ensures quicker convergence, better performance, high accuracy, and robustness against disturbances.
Tests are performed to demonstrate the performance of the developed controller. They are made under disturbances.
A quantitative and qualitative comparative study involving our control strategy with a classical backstepping controller is provided to highlight the performance of our method.
The remainder of the paper is structured as follows: In Section II, a brief modeling of the unconventional quadrotor using the Newton-Euler formalism is presented, while in Section III the proposed non-linear control based on the hierarchical robust finite-time control approach and backstepping method is designed and applied to the studied quadrotor. In Section IV, the numerical simulation results are carried out. Finally, some concluding remarks are drawn.
Notation
The following notations will be used throughout this document:
Let $\mathbb{R}$ and $\mathbb{R}_+$ denote the set of real and positive real numbers respectively.
$\mathfrak{Sig}^{\beta}(r)= \begin{bmatrix} \vert r_1 \vert^{\beta} \text{sign}(r_1) & \!\!\!\quad \vert r_2 \vert^{\beta} \text{sign}(r_2)& \!\!\!\quad \vert r_3 \vert^{\beta} \text{sign}(r_3) \end{bmatrix}^T$ , $\mathfrak{Int} (r)= \begin{bmatrix}\int \text{sign}(r_1)& \!\!\!\!\quad \int \text{sign}(r_2) & \!\!\!\!\quad \int \text{sign}(r_3) \end{bmatrix}^T$ , $ r= \begin{bmatrix} r_1 & \quad r_2 & \quad r_3\end{bmatrix}^T $ , where $\text{sign}(\Theta)=\dfrac{\Theta}{\mid \Theta \mid}$ is the standard signum function and $\vert \Theta \vert$ refers to the absolute value of $\Theta$ . The notation $\Vert r \Vert$ refers to the Euclidean norm of vector r. The symbol $\wedge$ denotes the cross product. For the symmetric matrix $P \in \mathbb{R}^{n \times n} , \delta_{{min}} (P)$ and $\delta_{{max}} (P)$ are its minimum and maximum eigenvalues, respectively. $\text{diag} (a_1, a_2, ..., a_n)$ denotes the corresponding diagonal matrix. The notations $c(.)$ and $s(.)$ symbolise the functions $\text{cos}(.)$ and $\text{sin}(.)$ , respectively.
2.0 Geometric description and modeling of the unconventional quadrotor
This section briefly presents the geometric description of the rotating arm drone and discusses its modeling.
2.1 Dynamic model of the disturbed attitude and translation of the unconventional quadrotor
The foldable drone can change the angles $\sigma_i(t)\vert_{i=1,...,4}$ between its arms via the servomotors, these latter are linked to a central body as shown in Fig. 1. Each arm contains a rotor placed at its extremity. Changing the angular velocity of the rotors $\omega_i(t)\vert_{i=1,...,4}$ and rotating the arms can change the shape of the foldable drone and produce other more complex configurations from the basic X configuration.
In this paper, we have chosen six different configurations of the quadrotor with rotating arms in this order (X, Y, YI, H, T, O) as shown in Fig. 2 and Table 1.
The quadrotor with rotating arms is considered as a rigid body of which its motion in space can be represented by two coordinate frames: $B=(o,x_m,y_m,z_m)$ is the body-fixed frame attached to the centre of gravity of the aerial vehicle and $E=(o_i,x_i,y_i,z_i)$ is the earth-fixed frame as shown in Fig. 3.
Hypothesis
The following basic hypothesis are considered in quadrotor with rotating arms modeling:
The quadrotor is a rigid body whose mass is constant.
The propellers are rigid.
The transition from one configuration to another is long so as not to generate abrupt phenomena.
The angle of manoeuverability of the arms is assumed to be small.
The rotation velocities of the arms are not too high.
We elaborate the dynamic equations of the system by using the Newton-Euler formalism.
The system can be written in the following form [Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4]:
where $\xi \in \mathbb{R}^{3}$ and $V \in \mathbb{R}^{3}$ are respectively the position and velocity of the quadrotor with rotating arms. m is the total mass of the quadrotor, which is supposed to be constant and $\Omega \in \mathbb{R}^{3}$ its angular velocity expressed in the body frame.
$F_t$ , $F_g$ and $F_d$ belong to $\mathbb{R}^{3}$ are respectively the total force generated by the four rotors, the gravity force along the z-axis and the drag force along the three axes (x,y,z).
where
with b is the aerodynamic coefficients and $K_{df(x,y,z)}$ are the translation drag coefficients.
$F_{ext} \in \mathbb{R}^{3}$ represents the disturbances according to the translation movement.
$\Gamma_f$ , $\Gamma_{gy}$ and $\Gamma_a$ belong to $\mathbb{R}^{3}$ are the moment caused by the thrust and drag forces, the gyroscopic torque of the propellers and the moment resulting from aerodynamic friction.
$J_r$ is the rotor inertia
$\Gamma_{ext}\in \mathbb{R}^{3}$ is the disturbances according to the rotation movement.
$R_\eta \in \mathbb{R}^{3\times3}$ is the rotation matrix connecting the two frames of reference, it can be parameterised by Euler angles $\eta=(\phi,\theta,\psi)$ :
$Sk \in \mathbb{R}^{3\times3}$ is the skew-symmetric matrix related to the angular velocity $\Omega$
The reconfiguration of the quadrotor, during the flight, generates a displacement of its CoG, a change of its inertia $J_{3\times3}(\sigma(t))$ and requires a readjustment of the allocation matrix. The calculation of the inertia matrix is mainly based on the theorem of Huygens-Steiner, the analytical details of calculation is presented in the works of Derrouaoui et al. [Reference Derrouaoui, Bouzid and Guiatni31, Reference Derrouaoui, Guiatni, Bouzid, Dib and Moudjari32], in which some approximations are made to simplify the development.
2.2 Developed model
Dynamic model (1) can be written in terms of position, rotation and input as follow:
with
and
The model given by (11) can be generalised for two subsystems, one is designed for the position $\Sigma_P$ and the other is for the attitude $\Sigma_A$ in which the translational and rotational dynamics are considered as disturbed non-linear second-order systems. The following subsystems will be used in the control design:
with $f_1=\begin{bmatrix} f_x & \quad f_y & \quad f_z \end{bmatrix}^T$ is written as:
and $f_2= \begin{bmatrix} f_{\phi} & \quad f_{{\theta}} & \quad f_{{\psi}} \end{bmatrix}^T$ is written as:
where $x_{\xi}=\begin{bmatrix} x_1 & \quad x_2\end{bmatrix} \in \mathbb{R}^{3 \times 2} $ is the vector of states for position, $x_1 = \begin{bmatrix} x & \quad y & \quad z\end{bmatrix}^T \in \mathbb{R}^{3}$ , $ x_2 = \begin{bmatrix} \dot{x} & \quad \dot{y} & \quad \dot{z}\end{bmatrix}^T \in \mathbb{R}^{3}$ , $T = \begin{bmatrix}U_x & \quad U_y & \quad U_1 \end{bmatrix}^T$ is the vector of control inputs and the bounded disturbance $d_1= \begin{bmatrix} d_x & \quad d_y & \quad d_z \end{bmatrix} \in \mathbb{R}^{3} $
$x_{\eta}=\begin{bmatrix} x_3 & \quad x_4\end{bmatrix} \in \mathbb{R}^{3 \times 2} $ is the vector of states for attitude, $x_3 = \begin{bmatrix} \phi & \quad \theta & \quad \psi\end{bmatrix}^T \in \mathbb{R}^{3} $ and $ x_4 = \begin{bmatrix} \dot{\phi} & \quad \dot{\theta} & \quad \dot{\psi}\end{bmatrix}^T \in \mathbb{R}^{3} $ , $U = \begin{bmatrix}U_2 & \quad U_3 & \quad U_4 \end{bmatrix}^T$ is the vector of control inputs and the bounded disturbance $d_2= \begin{bmatrix} d_{\phi} & \quad d_{\theta} & \quad d_{\psi} \end{bmatrix} \in \mathbb{R}^{3} $ . $g_1(x)$ and $g_2(x))$ belong to $\mathbb{R}^{3 \times 3}_*$ . The functions $f_{01}$ and $f_{02}$ represent the known terms of $f_1(x)$ and $f_2(x)$ respectively.
2.3 Control objective
The main objective is to design a control laws T and U such that the variable ( $x_{\xi}(t), x_{\eta}(t)$ ) track robustly the desired signals ( $x_{\xi d}(t)$ , $x_{\eta d}(t)$ ), i.e. to render the tracking error
$\begin{pmatrix}\varrho_1(t) \\[5pt] \varrho_3(t)\end{pmatrix}$ $\equiv$ $ \begin{pmatrix} x_{\xi}(t) - x_{\xi d}(t) \\[5pt] x_{\eta}(t) - x_{\eta d}(t)\end{pmatrix}$ $\equiv$ $\begin{pmatrix}0 \\[5pt] 0\end{pmatrix} $ in finite time $t_R$ .
3.0 Adopted control architecture
The dynamics of the unconventional quadrotor are strongly non-linear and relatively complex because of the difficulty of modeling aerodynamic forces (aerodynamic coefficient, air density, and apparent surface) and the uncertainty of the physical constants of the drone. Robust control techniques are used to ensure the stability of the vehicle in the presence of external disturbances, despite the complexity of the aerodynamic forces and the impossibility of directly measuring the wind speed. These unknown terms are considered disturbances.
3.1 Backstepping design
The backstepping control technique performs successive relations to make the looped system equivalent to stable cascaded first-order sub-systems in the Lyapunov sense, thus building a control law and a stabilising Lyapunov function. This method begins with the definition of the Lyapunov function. The principle is to construct at each step a gap between the current state of the system and a virtual controller that would guarantee the negativity of the derivative of the Lyapunov function. At the end of each step, the Lyapunov function compensates this gap, to ensure the convergence to zero. The process ends when the real control of the system appears, guaranteeing the convergence of the real states to the desired states.
The control laws by backstepping combined with the ST algorithm are designed as:
with
with
where $\left(\kappa_1=\text{diag} \begin{bmatrix} \kappa_x\;\;\;\; & \quad \kappa_y\;\;\;\; & \quad \kappa_z \end{bmatrix}, \kappa_2 =\text{diag} \begin{bmatrix} \kappa_{\phi}\;\;\;\; &\quad \kappa_{\theta}\;\;\;\; & \quad \kappa_{\psi} \end{bmatrix}\right) \in \mathbb{R}^{3 \times 3}_{+*}$
and $ \lambda_1 = \text{diag} \begin{bmatrix} \lambda_{1x}\;\;\;\; & \quad \lambda_{1y}\;\;\;\; & \quad \lambda_{1z} \end{bmatrix}, \lambda_2 = \text{diag} \begin{bmatrix} \lambda_{2x}\;\;\;\; & \lambda_{2y}\;\;\;\; & \quad \lambda_{2z} \end{bmatrix},\\[5pt] \lambda_3 = \text{diag} \begin{bmatrix} \lambda_{1\phi}\;\;\;\; & \quad \lambda_{1\theta}\;\;\;\; & \quad \lambda_{1\psi} \end{bmatrix}, \lambda_4 = \text{diag} \begin{bmatrix} \lambda_{2\phi}\;\;\;\; & \quad \lambda_{2\theta}\;\;\;\; & \quad \lambda_{2\psi} \end{bmatrix} $
Theorem 1. Considering the disturbed systems (14) and (15) with bounded condition (25) and the applied control inputs (18) and (20). The state variables ( $x_{\xi}$ , $x_{\eta}$ ) of systems (14) and (15), respectively, can track exactly the desired references ( $x_{\xi d}$ , $x_{\eta d}$ ) and converge in a finite time $t_R$ .
The following Lemma is used for the stability analysis
Lemma 1. [Reference Bhat and Bernstein33, Reference Bhat and Bernstein34] Considering the continuous system
We suppose that there is a continuous positive definite function V: $ \mathbb{R}^n \rightarrow \mathbb{R}^+,$ a real number $ \gamma > 0$ , $0 < \alpha < 1$ and an open $ U \subseteq \mathbb{R}^n$ in the neighbourhood of the origin so that the following inequalities are satisfied:
Then, the origin of the system (22) is a stable equilibrium in finite time. If $ U =\mathbb {R}^n $ , the origin is a globally stable equilibrium in finite time.
Moreover, the settling time is given by:
Assumption 1. The perturbation terms $d_{1}$ and $d_{2}$ are assumed to be bounded, such that:
where $h_{1{max} } $ and $h_{2{max} }$ are strictly positive constants supposed to be known.
Proof. We follow these steps to prove the previous theorem:
3.1.1 First step
Consider system (14)
Let us define the tracking error $\varrho_1$ :
The first Lyapunov candidate function $\mathcal{L}_1$ , associated with $\varrho_1$ is given by:
Its temporal derivative:
The term $(\dot{x}_{1d})$ represents the velocity set point and $\upsilon_1$ is the stabilising controller of $\varrho_1$ .
Replacing (29) in (28), we obtain:
3.1.2 Second step
The error $\varrho_2$ is defined as the difference between the real velocity and the virtual velocity control. The convergence of $\varrho_2$ will naturally lead to the convergence of $\varrho_1$ , since the velocity will tend towards the virtual velocity and the derivative of $\mathcal{L}_1$ will be strictly negative.
Let us define the error $\varrho_2$ :
We define the second Lyapunov candidate function $\mathcal{L}_2$ , associated with $\varrho_2$ .
The derivative of the Lyapunov function is given by:
The control law is given by:
Replacing (34) in (33), we obtain
We take $\upsilon_2$ as
We replace (36) in (35), we find
We make the following change of variable
Which implies
The convergence of $z_1$ and $z_2$ to zero ensures the convergence of $\varrho_2$ and $\dot{\varrho}_2$ to zero.
We choose now the following Lyapunov function to analyse the stability:
The vector v and the symmetric matrix $P \in \mathbb{R}^{2\times2}$ are given by:
this function is defined positive if $\lambda_2$ is defined positive.
where v is given by:
$\delta_{{min}} (P)$ and $\delta_{{max}}(P)$ are respectively the minimal and maximal eigenvalues of P.
Knowing that $\dot{\parallel d_1 \parallel} \leq h_{1{max} }$ (see Assumption 1), the temporal derivative of the candidate Lyapunov function verify that:
where
Using (44), we can deduce that
We find
Using (43), we can see that:
We find
To conclude on the negativity of $\dot{V}(z)$ , it is necessary that:
The matrix Q will be defined positive with a minimal eigenvalue $ \delta_{{min} }(Q) \geq h_{1{max} } || \xi || $ , $ \lambda _1$ defined positive and $h_{1{max} } > 0$ , hence:
Therefore, we get
with
The solution is
So, we have demonstrated the stability in finite time. i.e. $z_1 $ and $z_2 $ tend to zero in a finite time.
where $ \lambda _2 \;\mathfrak{Int}(z_1) $ represents the perturbation estimation term.
As soon as $z_1=z_2=0 \in \mathbb{R}_3 $ and according to Equation (56), then:
we define $\tilde{\lambda}_1={min} \lbrace \lambda_{11}, \lambda_{12}, \lambda_{13}\rbrace $ , we get
Let $\tilde{\kappa}_1=2^{\frac{3}{4}}\tilde{\lambda}_1$
with $\alpha = \frac{3}{4} \in\;[0 , 1] $
According to Lemma 1, $\mathcal{L}_2$ is stable, so the error $\varrho_2 \rightarrow 0$ .
This implies that $\dot{\mathcal{L}}_1= - \kappa_1\parallel\varrho_1\parallel^2$ is stable. Then, the error $\varrho_1 \rightarrow 0$ .
Desired Euler angles
The unconventional quadrotor can be separated into two connected subsystems, based on the hierarchical backstepping. According to (13), we can calculate the desired Euler angles $\phi_d$ and $\theta_d$ , which will introduce the next error variable:
3.1.3 Third step
Consider system (15), a new error variable is defined as:
Consider the Lyapunov candidate function $\mathcal{L}_3$ , associated with the error $\varrho_3$ :
Its derivative with respect to time yields:
The term $(\dot{x}_{3d})$ represents the velocity set point and $\upsilon_3$ is the stabilising controller of $\varrho_3$ .
Replacing (64) in (63), we obtain:
the second term will be eliminated in the next step.
3.1.4 Fourth step
Consider the second term $\varrho_{3}(\dot{x}_3-\upsilon_{3})$ to continue the process of backstepping. The error $\varrho_4$ is defined as the difference between the real velocity and the virtual velocity control. The convergence of $\varrho_4$ will naturally lead to the convergence of $\varrho_3$ , since the velocity will tend towards the virtual velocity and the derivative of $\mathcal{L}_3$ will be strictly negative.
Let define the error $\varrho_4$ :
The Lyapunov candidate function $\mathcal{L}_4$ associated with $\varrho_4$ is defined as:
Its temporel derivative is given by:
The controller is given by:
Replacing (69) in (68), we obtain
We take $\upsilon_4$ as
We replace (71) in (70), we find
Consider the following change of variable
Which implies
The convergence of $z_3$ and $z_4$ to zero ensures the convergence of $\varrho_4$ and $\dot{\varrho}_4$ to zero. Therefore, the disturbance $d_2$ will be estimated in finite time.
As soon as $z_3$ = $z_4$ =0 and the disturbance is estimated, then:
where $\alpha = \frac{3}{4} $ , $\tilde{\kappa}_2 = 2^{\frac{3}{4}}\tilde{\lambda}_3$ and $\tilde{\lambda}_3={min} \lbrace \lambda_{31}, \lambda_{32}, \lambda_{33}\rbrace $
According to Lemma 1, $\mathcal{L}_4$ is stable $\Rightarrow$ the error $\varrho_4 \rightarrow 0$ .
which implies that $\dot{\mathcal{L}}_3= - \kappa_2\parallel\varrho_3\parallel^2$ is stable. Then, the error $\varrho_3 \rightarrow 0$
3.2 Control architecture
Hierarchical control is known in aeronautics as guidance and piloting control. The system is decomposed into two cascaded subsystems: one for translation corresponding to the slow dynamics called the high level (outer loop) and the other for rotation corresponding to the fast dynamics called the low level (inner loop) (see Fig. 4).
The reference trajectories $(x_d, y_d, z_d$ and $\psi_d)$ are generated by the guidance system block. $U_1$ controls the attitude while the two other translation variables x and y are controlled indirectly by controlling the two rotation angles $(\phi$ and $\theta)$ with the virtual controllers $U_x$ and $U_y$ . The correction block will generate the desired roll and pitch angles. The foldable drone is controlled by the velocity of the motors. These velocities are obtained from the control matrix. The CoG and the inertia matrix are instantly calculated according to the variation of the angles $\sigma_i$ . The different configurations of the quadrotor are generated by the switching block.
The main difficulty of this control structure is to demonstrate the stability of the global system in a closed loop and to guarantee good performance as well as robust behaviour towards disturbances. Servomotors are controlled by a classical PID to turn the arms, where:
with $e_{\sigma_i}(t)$ is the tracking error. $k_p, k_I$ and $k_D$ are the controller’s gains.
The studied quadrotor is controlled by a backstepping controller with a correction term based on the super-twisting algorithm, which is designed to follow the desired trajectory $(x_d, y_d, z_d)$ and the angle $\psi_d$ in the presence of disturbances.
3.3 Control inputs
Applying the control laws (34) and (69) on the systems (14) and (15) respectively, we obtain the final control inputs as:
Altitude control (z)
Roll control ( $\phi$ )
Pitch control ( $\theta$ )
Yaw control ( $\psi$ )
Virtual controllers
Control of (x)
Control of (y)
4.0 Simulation results
In this section, we will present a series of simulations of two flight scenarios resulting from the application of the backstepping control previously seen on our drone to test the efficiency and robustness of the tracking problem.
To validate the efficiency of the proposed control, a qualitative comparison with a classical backstepping controller has been made in the presence of external disturbances. The ordinary backstepping control law applied to a reconfigurable UAV is detailed in [Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4].
We performed the simulations under MATLAB/Simulink. The numerical values of the main physical parameters of the quadrotor are provided in Table 2.
The servomotors are controlled by a PID, the parameters of this latter are given in Table 3 as:
We note that the simulations were done in the presence of external disturbances that are noted as $d_1 = 0.5$ N.kg–1 for translation and $d_2=0.01$ N.(kg.m)–1 for rotation.
The main controller parameters are summarised in Table 4.
4.1 Scenario 1
In this scenario, we make a square trajectory where the foldable drone changes its configuration during the flight. Simulation results are presented in Figs 5 to 11. Figure 5 represents the absolute position of the quadrotor during its flight. The translation and attitude responses are displayed in Figs 6 and 7, while the control signals are illustrated in Fig. 10.
According to Figs 6 and 7, the quadrotor follows the reference trajectories. It is observed in Figs 8 and 9 that the tracking error converges to zero due to the effectiveness of the proposed controller. Figure 10 shows the evolution of the control signals. We notice that $U_2$ and $U_3$ contain chattering. This is due to the discontinuous function sign in control laws, this switching in control excites the unmodeled dynamics, which leads to oscillations of the state vector. From Fig. 11, the servomotors’ output follows the desired angles with some error in the descent and ascent, which is generated by the rotation of their arms.
The efficiency of the proposed control method is illustrated in Figs 5 to 10 via the comparison between the results obtained using the proposed controller and the classical backstepping presented in [Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4] in the presence of external disturbances. In comparison to the classical backstepping controller provided, the simulation results clearly indicate better performance, quicker convergence, high precision tracking, and resilience.
In the light of these results, we have demonstrated the efficiency of this control approach to follow the desired trajectories and simulate them in the presence of disturbances.
4.2 Scenario 2
In this scenario, we make a circular trajectory, which is more complex. The obtained results are displayed in Figs 12 to 17. Figure 12 shows the absolute position of the quadrotor during the flight in the circular trajectory. Figures 13 and 14 represent the evolution of the position and orientation of the vehicle. The actuator force controls are displayed in Fig. 17.
On the basis of these results, we can clearly see from Figs 12, 13 and 14 a good tracking of the desired trajectories. We can also see that the outputs of the system converge towards the setpoint trajectories quickly. We notice the presence of chattering in the evolution of the control signals due to the switching in control laws.
The comparison between the results obtained using the proposed controller and the classical backstepping is illustrated in Figs 12 to 17 in the presence of external disturbances. When compared to the classical backstepping controller presented in Ref.(Reference Derrouaoui, Bouzid, Guiatni, Kada, Dib and Moudjari4), the simulation results clearly demonstrate satisfactory performance, faster convergence, high accuracy tracking and robustness.
Using the simulation results, we have demonstrated the efficiency of this control approach to follow the desired trajectories and to adapt to the change in the flight configuration. Furthermore, simulations have shown the robustness of the proposed control in the presence of disturbances. We interpret this by the introduction of the correction term based on the super-twisting algorithm.
To better clarify the comparison and strengthen our results, we have opted for a quantitative comparison with respect to the trajectory error and the control inputs.
The Mean Squared Error MSE and the Mean Squared Input MSI are calculated for N points as follows:
In addition to the results found previously, the comparison between the two control laws in terms of error and input shows the efficiency of our proposed controller, in which the calculated values of the controller based on the super-twisting algorithm are lower than the classical backstepping controller, and this is proven in both scenarios (see Tables 5 and 6). The two values, MSE and MSI are considered, respectively, as the tracking error and the energy consumed during the flight.
5.0 Conclusion and future works
In this paper, we have examined the problem of flight path tracking of the unconventional quadrotor in the presence of disturbances. We have briefly presented the mathematical model of the studied UAV. This step is crucial to obtain simulation results as close as possible to those of the real system. Then, a robust control strategy is developed and applied to a model of our foldable drone. This control law is robust, non-linear, and based on the Lyapunov stability theorem. The backstepping control with a correction term based on the super-twisting algorithm ensures stability in finite time and cancels the effect of the perturbation. The simulation results have shown that the proposed controller is able to improve the control performance of the quadrotor with rotating arms subjected to external disturbances. To provide faster convergence, a better ability to reject disturbances and improve robustness level to uncertainties and disturbances in the model of the quadrotor, we propose, in future, to enhanced the proposed controller by adding finite-time disturbance observer.