Professor Subhas Chandra Mukhopadhyay
Exeley Inc. (New York)
Subject: Computational Science & Engineering, Engineering, Electrical & Electronic
eISSN: 1178-5608
SEARCH WITHIN CONTENT
Ahmed Eltayeb / Mohd Fua’ad Rahmat ^{*} / Mohd Ariffanan Mohd Basri
Keywords : Quadrotor UAV, Sliding mode control, Feedback linearization, PID control, Chattering
Citation Information : International Journal on Smart Sensing and Intelligent Systems. Volume 13, Issue 1, Pages 1-13, DOI: https://doi.org/10.21307/ijssis-2020-011
License : (BY-NC-ND-4.0)
Received Date : 19-August-2018 / Published Online: 01-July-2020
Recently, the quadrotor unmanned aerial vehicles (UAV) are attracting significant interest from researchers due to its widespread applications, which involve the civilian and military sectors. In this paper, a robust sliding mode control (SMC) algorithm is designed to stabilize the attitude and track the altitude of quadrotor UAV. The switching function in the SMC control law has been replaced by the error function to reduce the chattering influences. The chattering phenomenon is induced by the parameter uncertainties and external disturbances and results in critical issues, for instance, the vibration in the mechanical components. The simulation results of the traditional SMC and feedback linearization (FBL) are used as the benchmark to test and evaluate the performance of the proposed SMC, which proved that the proposed controller outperforms the traditional SMC and FBL controllers.
The quadrotor unmanned aerial vehicle (UAV) is an autopilot aircraft vehicle that is driven without a human pilot onboard. Previously, the quadrotors manufactured were of big sizes, which were highly costly and expensive. Fortunately and due to recent progress in the technologies in the batteries, electronics kits, mechanics, the quadrotors now manufactured are of small sizes, with affordable prices. In terms of the mathematical modeling of the quadrotor systems, the Newton–Euler method is the most commonly applied for driving the quadrotor model (Lee et al., 2011; Naidoo et al., 2011; Rodić and Mester, 2011; Chovancová et al., 2014).
Numerous representations of the quadrotor dynamics modeling and control algorithm have been presented, and the desired pitch and roll angles are calculated by using the virtual control method (Alkamachi and Erçelebi, 2017; Lee and Kim, 2017; Eltayeb and Rahmat, 2019). The quadrotor system has nonlinear dynamics, underactuated, and unstable system; these issues must be counted while developing the control algorithms. Numerous control methods have been implemented for the quadrotor systems in the literature, for instance, the PID controller, which is extensively applied to the quadrotor systems (Min et al., 2009; Salih et al., 2010; Li and Li, 2011; Khatoon et al., 2014; Romero et al., 2016; Abdulwahhab and Abbas, 2017).
The quadrotor’s dynamic is linearized at the equilibrium points, then the controllability and observability verified of the obtained linear model (Ataka et al., 2013; Al-Younes et al. 2010). The dynamics of quadrotor is divided into three subsystems: attitude, altitude, and positions to design the backstepping and augmented backstepping controller (Madani and Benallegue, 2006; Behnamgol et al., 2016; Zhang et al., 2017). The direct feedback linearization and adaptive feedback linearization for quadrotor are designed (Lee et al., 2009; Mukherjee and Waslander, 2012). The attitude controller is designed based on quantitative feedback theory; then, a fuzzy logic controller is implemented to provide the position trajectory tracking for the quadrotor UAV (Mukherjee and Waslander, 2012; Figueroa-García et al., 2017; Mardan et al., 2017).
The sliding mode control (SMC) is classified among robust and simple control techniques for the types of nonlinear dynamics such as the quadrotor system and its robustness against the parameter uncertainties and external disturbances (Bartolini et al., 2003). The quadrotor systems operate in the harshness environment, which leads to real challenges such as the parameter uncertainties and external disturbance in the quadrotor dynamics (Abaunza et al., 2016). Many types of SMC controllers have been reported in the literature to deal with the prior mentioned challenges, such as given in Eltayeb et al. (2020), Patel et al. (2012), Runcharoon and Srichatrapimuk (2013). The disadvantage of the conventional SMC controller is the chattering problem, which can be reduced by using the augmented the SMC approach such as adaptive SMC, fuzzy SMC control, and intelligent SMC control (Lee and Utkin, 2007; Boiko, 2013; Sahamijoo et al., 2016; Baghaei et al., 2017).
In this manuscript, a dynamic model of quadrotor UAV has been briefly presented. The feedback linearization method has been used to linearize the quadrotor’s attitude and altitude dynamic. The PID controller is applied to the linearized quadrotor model. For the robust performance against uncertainty in quadrotor’s mass, a proposed (SMC) controller has been designed to stabilize the quadrotor’s attitude and altitude and reduce the chattering impact as well. Finally, the proposed control technique has been validated by simulation using Matlab/Simulink environment.
The paper is organized as follows: the first section is the introduction, which presents some previous and related works. Second section presents the quadrotor UAV mathematical modeling briefly. The third section explains the design and implementation of the proposed control strategy for the quadrotor’s attitude and altitude, along with the chattering reduction technique, in addition to the traditional SMC and feedback linearization controller as the benchmark. The fourth section presents the simulation results to evaluate the proposed SMC controller performance, and fifth section concludes the work with some recommendations and future work.
The quadrotor UAV comprises of four rotors to produce the forces (F _{1}, F _{2}, F _{3}, F _{4}). The rotors are fixed in a cross structure and symmetric shape, as illustrated in Figure 1.
The quadrotor motions are controlled by changing the speed of the rotors. The front and the rear of the quadrotor are represented by the rotors 1 and 3, and the left and the right are represented by the rotors 2 and 4, as depicted in Figure 1. By agreement, the rotors 1 and 3 turning in the clockwise direction, whereas rotors (2 and 4) turning in to the counterclockwise direction.
The quadrotor moves in a vertical direction by increasing or decreasing the angular velocities of all rotors with equal speed, which generates a total lift force (thrust) against the gravitational force. Consequently, the quadrotor takes-off or lands, as illustrated in Figure 2a and b, respectively.
The right direction movement of the quadrotor is achieved by increasing the rotational speed of the rotor (2) and decreasing the rotational speed of the rotor (4); subsequently, the quadrotor moves in the right direction as depicted in Figure 2c. Likewise, the left direction movement is achieved by increasing the rotational speed of the rotor (4) and decreasing the rotational speed of the rotor (2); as a result, the quadrotor moves to the left direction as shown in Figure 2d.
The forward movement of the quadrotor is achieved by increasing the rotational speed of the rotor (3) and decreasing the rotational speed of the rotor (1); subsequently, the quadrotor moves to the forward direction as illustrated in Figure 2e. Similarly, the backward movement of the quadrotor is achieved by increasing the rotational speed of the rotor (1) and decreasing the rotational speed of the rotor (3); as a result, the quadrotor moves to the backward direction as shown in Figure 2f. The anti-clockwise and clockwise movements of the quadrotor are controlled by changing the yaw angle (ψ) as shown in Figure 2g and h, respectively.
The quadrotor kinematics are represented into two frames. The earth fixed, or the reference frame (E-frame), is denoted by E = (x_{e}, y_{e}, z_{e}) and the body-fixed (B-frame) is represented by B = (x_{b}, y_{b}, z_{b}) as shown in Figure 1.
Consider that q = (x, y, z, ϕ, θ, ψ) $\in {R}^{6}$∈ R6 denotes the generalized coordinates, with (x, y, z) representing the position the quadrotor and $(\varphi ,\theta ,\psi )$ϕ, θ, ψ representing the quadrotor’s orientation. Accordingly, the quadrotor mathematical model can be divided into two subsystems: the position and the attitude subsystems, and the associated coordinates are given as follows:
(1)where:(2)and:Therefore, the quadrotor kinematics are obtained as follows:
(4)where $\mathit{V}$V denotes the linear velocity in the B-frame, whereas $\stackrel{\u0307}{\mathit{\xi}}$ξ. represents the linear velocity in the E-frame with respect to B-frame, and $\mathit{R}$R is the rotation matrix:The quadrotor rotational motions are obtained as the following:
The quadrotor dynamics equations in six degrees of freedom (6 DOFs) are given as follows:
The control inputs in (9) can be re-written in the matrix as:
The feedback linearization technique is used to transfer the nonlinear systems to the equivalent linear systems, as illustrated in Figure 3 (Eltayeb et al., 2019, 2020).
Now, consider the general nonlinear system expressed as:
The control input u in (12) can be chosen as:
By substituting (13) into (12) yields to the following linear system:
Now, by following the same prior steps from (12) to (14), the control inputs ${u}_{1},{u}_{2},{u}_{3},$u1, u2, u3 and ${u}_{4}$u4 in (8) of the quadrotor attitude and altitude can be chosen as in (15):
Thus, from (8) and (15), the quadrotor’s attitude and altitude systems are obtained in the linearized version as follows:
The obtained linear system in (16) can be represented in the state space as follows:
Now, the objective is to design the PID control strategy to stabilize and control the quadrotor linear system (17). The errors dynamics are defined as follows:
Thus, the PID control is designed and implemented for each as follows:
The SMC control technique uses to attract the state variables of the system towards the equilibrium sliding surface and stay on it. The sliding surface can be designed as follows (Vaidyanathan and Lien, 2017):
(21)where $s\left(t\right)\in {R}^{n}$s(t) ∈ Rn is the equilibrium surface; $e\left(t\right)$e(t) is the error between the desired and actual position or orientation; and $k$k is a positive constant; and $n\in N$n ∈ N is the system’s order. SMC control can be designed as follows.First, select a Lyapunov function (candidate function) which maps the system’s state variables as follows:
Second, the derivative of the selected function (22) must be negative:
(23)yields to:The sliding mode control law consists of two terms: continuous part and the discontinuous part, which is given as follows (Herrera et al., 2015):
From (24), sliding mode condition given as follows:
(26)where k_{1}>0 and k_{2}>0 are the SMC design parameters.Chattering is an unwanted phenomenon with a finite-frequency, and finite-amplitude oscillations happened near to the sliding surface (Al-Younes et al., 2010). The chattering is caused by the switching function; therefore, in this work, the switching function (sing(s)) in the SMC control laws has been replaced by an approximated error function, as shown in Figure 4. The error function is obtained by integrating the normalized Gaussian distribution as follows (Eltayeb et al., 2020):
(27)and it has the following properties:The SMC controller is designed to stabilize the quadrotor’s attitude and altitude.
The first step is to design the error dynamics as in (19).
The second step is to choose the sliding surfaces as the following:
The third step recalls the sliding mode condition as in (26) and applies it to (28) to compute the SMC control laws.
The steps, as mentioned above, will be implemented to calculate the SMC control law (u_{1}) for the roll $\left(\varphi \right)$(ϕ) angle as follows:
By substituting (8) into (29), the SMC control law for the roll angle ( ${u}_{1}$u1) is driven as in (30):
Similarly, the SMC control laws for pitch, yaw, and altitude ( ${u}_{2}$u2), ( ${u}_{3}$u3), and ( ${u}_{4}$u4), respectively, are obtained as follows:
Therefore, to reduce the chattering effects, which leads to critical problems such as vibration in the mechanical parts of the quadrotor and heat in the onboard electronics kits (Li et al., 2014). The switching function (sign(s)) has been replaced by the error function erf(s) in the proposed SMC control laws as follows:
The quadrotor UAV model in (8) has been simulated using Matlab/Simulink platform, and the quadrotor’s parameter values are taken from Bouabdallah (2007) as listed in Table 1. The PID and SMC controller’s parameters are listed in Tables 2 and 3, respectively.
The nominal parameters of the quadrotor have been selected as in Bouabdallah (2007) and listed in Table 1. While the PID and SMC controllers’ gains have been selected and listed as in Tables 2 and 3, respectively. In this section, the proposed SMC controller is simulated by MATLAB/SIMULINK platform into two scenarios as follows.
In this scenario, the performance of the proposed controller is simulated based on the nominal parameter values of the quadrotor model, on the contrary, neither considering any model parameter uncertainties nor external disturbances.
The commends are given to stabilize the attitude of the quadrotor system from the initial values $\varphi =1$ϕ = 1 $\theta =1$θ = 1 and $\psi =1$ψ = 1 to the desired values $\varphi =0$ϕ = 0, $\theta =0$θ = 0 and $\psi =0$ψ = 0 as depicted in Figure 5. The altitude of quadrotor tracks the desired take-off and landing trajectory, as shown in Figure 6, and the tracking error for the proposed controller compare to the traditional SMC and FBL are illustrated in Figure 7.
In terms of the attitude tracking error, as shown in Figure 7, the proposed controller outperforms the conventional SMC and FBL linearization. The control inputs of the FBL for the attitude and altitude of the quadrotor system are depicted as in Figure 8.
Furthermore, the proposed controller significantly reduces the unwanted chattering compared to the conventional SMC, as clearly illustrated in Figures 9 and 10.
In this scenario, the controller system is operated and evaluated under the uncertainty in the quadrotor’s mass, which has been increased by %100 from 0.65 kg to 1.3 kg. Furthermore, the external pulse disturbances have been considered as well, for both the attitude and altitude, as shown in Figures 11 and 12, respectively.
Even though, in the presence of the parameter uncertainty and external disturbance, the proposed controller has still outperformed the traditional SMC and FBL controllers as it can be clearly seen in the trajectory tracking of the attitude as presented in Figure 13 and its tracking errors as shown in Figure 14.
The altitude of quadrotor follows the desired take-off and landing trajectory as presented in Figure 15, and the altitude tracking errors for the proposed controller compared to the traditional SMC and FBL are illustrated in Figure 16. The control inputs of the FBL for the attitude and altitude of the quadrotor system are presented as in Figure 17.
Moreover, it can be observed that the proposed SMC controller provided significant performance in terms of the chattering attenuation compared to the conventional SMC, as shown in Figures 18 and 19, respectively.
The quadrotor’s kinematics and dynamics equations are briefly presented. Then, the feedback linearization technique is applied to linearize the attitude and altitude dynamics of the quadrotor. The PID controller is applied to stabilize the attitude and altitude of the quadrotor. For robust performance against uncertainty in the quadrotor’s mass and the external disturbances, the conventional SMC has been implemented to stabilize the quadrotor’s attitude and track the desired altitude. The proposed control strategy has been successfully implemented and evaluated using the Matlab/Simulink platform, and in the presence of the parameter uncertainty and external disturbances, the proposed sliding mode controller showed significant performance compare to the conventional SMC and feedback linearization. The conventional SMC controller has a major problem (chattering phenomena), which results in vibration in the quadrotor’s mechanical parts and power consumption onboard battery. The chattering has been significantly reduced by applying the proposed SMC controller.