Zacytuj

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.

Quadrotor modeling
Quadrotor UAV model description

The quadrotor UAV comprises of four rotors to produce the forces (F1, F2, F3, F4). The rotors are fixed in a cross structure and symmetric shape, as illustrated in Figure 1.

Figure 1:

Quadrotor UAV configuration.

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.

Figure 2:

Motions of the quadrotor UAV system.

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.

Quadrotor UAV kinematic model

The quadrotor kinematics are represented into two frames. The earth fixed, or the reference frame (E-frame), is denoted by E = (xe, ye, ze) and the body-fixed (B-frame) is represented by B = (xb, yb, zb) as shown in Figure 1.

Consider that q = (x, y, z, ϕ, θ, ψ) ∈ R6 denotes the generalized coordinates, with (x, y, z) representing the position the quadrotor and ϕ, θ, ψ 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: q = [ ξ , η ] T , (1)where: ξ = [ x , y , z ] T , (2)and: η = [ ϕ , θ , ψ ] T .

Therefore, the quadrotor kinematics are obtained as follows: ξ = RV , where V denotes the linear velocity in the B-frame, whereas ξ represents the linear velocity in the E-frame with respect to B-frame, and R is the rotation matrix: R = [ cos ψ cos θ sin θ sin ϕ cos ψ cos ϕ cos ψ sin θ sin ϕ cos ψ + cos ϕ sin ψ sin ψ c o s θ sin θ sin ϕ sin ψ + cos ϕ cos ψ sin θ cos ϕ sin ψ sin ϕ cos ψ sin θ sin ϕ cos θ cos ϕ cos θ ] .

The quadrotor rotational motions are obtained as the following: η ̇ = T ω , where ω denotes the angular velocity for the B-frame, whereas η ̇ denotes the angular velocity for the E-frame with respect to the B-frame, and T is the transfer matrix (Olfati-Saber, 2001): T = [ 1 tan θ sin ϕ tan θ cos ϕ 0 cos ϕ sin ϕ 0 sin ϕ cos θ cos ϕ cos θ ] .

Quadrotor dynamic model

The quadrotor dynamics equations in six degrees of freedom (6 DOFs) are given as follows: x ̈ = ( sin θ cos ϕ cos ψ + sin ϕ sin ψ ) u 4 m y ̈ = ( sin θ cos ϕ cos ψ sin ϕ sin ψ ) u 4 m z ̈ = g + cos ϕ cos θ m u 4 ϕ ̈ = θ ̇ ψ ̇ I y I z I x + θ ̇ Ω d J r I x + 1 I x u 1 θ ̈ = ϕ ̇ ψ ̇ I z I x I y + ϕ ̇ Ω d J r I y + 1 I y u 2 ψ ̈ = θ ̇ ψ ̇ I x I y I z + 1 I z u 3 , (8) where u1, u2, u3, u4 represent the control inputs, which calculated as follows: u 1 = b ( Ω 4 2 Ω 2 2 ) u 2 = b ( Ω 3 2 Ω 1 2 ) u 3 = d ( Ω 4 2 + Ω 2 2 Ω 3 2 Ω 1 2 ) u 4 = b ( Ω 1 2 + Ω 2 2 + Ω 3 2 + Ω 4 2 ) , (9) while Ωd denotes the disturbance, and mathematically expressed as follows: Ω d = Ω 1 + Ω 2 Ω 3 + Ω 4 .

The control inputs in (9) can be re-written in the matrix as: [ u 1 u 2 u 3 u 4 ] = [ b b b b 0 b 0 b b 0 b 0 d d d d ] [ Ω 1 2 Ω 2 2 Ω 3 2 Ω 4 2 ] .

Control design
Feedback linearization

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).

Figure 3:

The block diagram of the feedback linearization (FBL).

Now, consider the general nonlinear system expressed as: x ̇ = f ( x ) + Gu , (12)where f(x) is the nonlinear function; x is the system’s state vector; and u is the control input.

The control input u in (12) can be chosen as: u = G 1 ( f ( x ) + v ) .

By substituting (13) into (12) yields to the following linear system: x ̇ = v .

Now, by following the same prior steps from (12) to (14), the control inputs u1, u2, u3 and u4 in (8) of the quadrotor attitude and altitude can be chosen as in (15): u 1 = 1 b 1 ( a 1 θ ̇ ψ ̇ a 2 θ ̇ Ω d + v 1 ) u 2 = 1 b 2 ( a 3 ϕ ̇ ψ ̇ a 4 ϕ ̇ Ω d + v 2 ) u 3 = 1 b 3 ( a 5 θ ̇ ϕ ̇ + v 3 ) u 4 = m cos ϕ cos θ ( g + v 4 ) , (15) where: a 1 = I y I z I x , a 2 = J r I x , a 3 = I z I x I y , a 4 = J r I y , a 5 = I x I y I z , b 1 = l I x , b 2 = l I y , b 3 = 1 I z .

Thus, from (8) and (15), the quadrotor’s attitude and altitude systems are obtained in the linearized version as follows: ϕ ̈ = v 1 θ ̈ = v 2 ψ ̈ = v 3 z ̈ = v 4 . (16)

The obtained linear system in (16) can be represented in the state space as follows: x ̇ = Ax + Bu , (17)where the output of the linear system is: y = Cx , (18)and: A = [ 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 ] , B = [ 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 ] , and C = [ 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 ] , and the system’s states are: x = [ φ φ ̇ θ θ ̇ ψ ψ ̇ z z ̇ ] .

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: e ϕ = ϕ d ϕ e θ = θ d θ e ψ = ψ d ψ e z = z d z , (19) where eϕ, eθ, eψ, and ez are the errors signals for roll, pitch, yaw, and the altitude, respectively. ϕd, θd, ψd, and Zd are the desired signals for roll, pitch, yaw, and the altitude, respectively.

Thus, the PID control is designed and implemented for each as follows: v i = K p i e i + K I i 0 t e i d τ + K D i d d t e i , where i = 1, 2, 3, 4, and Kp⩾0, KI⩾0, and KD⩾0 represent the PID controller parameters; vi is the PID generated control signal.

The sliding mode control (SMC)

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): s ( t ) = ( d d t + k ) n 1 e ( t ) , where s(t)Rn is the equilibrium surface; e(t) is the error between the desired and actual position or orientation; and k is a positive constant; and nN 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: V ( s ) = 1 2 s 2 > 0 , x V ( 0 ) = 0 , x = 0. (22)

Second, the derivative of the selected function (22) must be negative: V ̇ ( s ) < 0 , (23)yields to: V ̇ = s s ̇ < 0.

The sliding mode control law consists of two terms: continuous part and the discontinuous part, which is given as follows (Herrera et al., 2015): u = u e q + u c .

From (24), sliding mode condition given as follows: s ̇ = k 1 sgn ( s ) k 2 s , (26)where k1>0 and k2>0 are the SMC design parameters.

Chattering reduction

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): e r f ( x ) = x π 0 x e t 2 d t , (27)and it has the following properties: e r f ( ) = + 1 , e r f ( ) = 1.

Figure 4:

Simulated switching (sign) function against error (erf) function.

SMC control design for the quadrotor

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: s ϕ = e ̇ ϕ + k ϕ e ϕ s θ = e ̇ θ + k θ e θ s ψ = e ̇ ψ + k ψ e ψ s z = e ̇ z + k z e z , (28) (28)where s ϕ , s θ , s ψ sϕ, sθ, sψ, and s z sz represent the surfaces of the roll, pitch yaw, and altitude dynamics, respectively. k ϕ , k θ , k ψ kϕ, kθ, kψ, and k z kz are the SMC controller parameters.

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 (u1) for the roll ( ϕ ) (ϕ) angle as follows: e ̈ ϕ + k ϕ e ̇ ϕ = k 1 ϕ sgn ( s ϕ ) k 2 ϕ s ϕ , (29)where k 1 ϕ > 0 k1ϕ > 0 and k 2 ϕ > 0 k2ϕ > 0 are the SMC control parameters of the controlled variable ( ϕ ) (ϕ).

By substituting (8) into (29), the SMC control law for the roll angle ( u 1 u1) is driven as in (30): u 1 = 1 b 1 ( ϕ ̈ d a 1 θ ̇ ψ ̇ a 2 θ ̇ Ω d k ϕ e ̇ ϕ k 1 ϕ sgn ( s ϕ ) k 2 ϕ s ϕ ) .

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: u 2 | = 1 b 2 ( θ ̈ d a 3 ϕ ̇ ψ ̇ a 4 ϕ ̇ Ω d k θ e ̇ θ k 1 θ sgn ( s θ ) k 2 θ s θ ) , (31) u 3 | = 1 b 3 ( ψ ̈ d a 5 ϕ ̇ θ ̇ k ψ e ̇ ψ k 1 ψ sgn ( s ψ ) k 2 ψ s ψ ) , (32) u 4 | = m cos ϕ cos θ ( z ̈ d + g k z e ̇ z k 1 z sgn ( s z ) k 2 z s z ) .

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: u 1 = 1 b 1 ( ϕ ̈ d a 1 θ ̇ ψ ̇ a 2 θ ̇ Ω d k ϕ e ̇ ϕ k 1 ϕ e r f ( s ϕ ) k 2 ϕ s ϕ ) , (34) u 2 = 1 b 2 ( θ ̈ d a 3 ϕ ̇ ψ ̇ a 4 ϕ ̇ Ω d k θ e ̇ θ k 1 θ e r f ( s θ ) k 2 θ s θ ) , (35) u 3 = 1 b 3 ( ψ ̈ d a 5 ϕ ̇ θ ̇ k ψ e ̇ ψ k 1 ψ e r f ( s ψ ) k 2 ψ s ψ ) , (36) u 4 = m cos ϕ cos θ ( z ̈ d + g k z e ̇ z k 1 z e r f ( s z ) k 2 z s z ) .

Simulation model

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.

Parameters of the quadrotor model.

Description Symbols Values Units
The quadrotor’s mass m 65  ×  10−2 kg
x-axis inertia Ix 7.5  ×  10−3 kgm2
y-axis inertia Iy 7.5 × 10−3 kgm2
z-axis inertia Iz 1.3 × 10−2 kgm2
Thrust coefficient b 3.13 × 10−5 Ns2
Drag coefficient d 7.5 × 10−7 Nms2
Inertia of the rotor Jr 6 × 10−5 kgm2
Length of the arm l 23 × 10−2 m

PID controller parameters for the linearized model.

Parameter z
P 30 30 30 60
I 8 8 8 20
D 8 8 8 80

SMC controller parameters.

Parameter 𝝓 𝜽 𝝍 z
k 100 100 100 0.001
k1 10 10 10 10
k2 10 10 10 10
Simulation results and discussion

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.

Scenario 1: controlled system under nominal ideal conditions

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 ϕ = 1 ϕ = 1 θ = 1 θ = 1 and ψ = 1 ψ = 1 to the desired values ϕ = 0 ϕ = 0, θ = 0 θ = 0 and ψ = 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.

Figure 5:

The attitude tracking by using the quadrotor’s nominal parameters for the conventional SMC, FBL, and proposed SMC controller.

Figure 6:

The altitude tracking by using the quadrotor’s nominal parameters for the conventional SMC, FBL, and proposed SMC controller.

Figure 7:

The tracking errors in the altitude by using the quadrotor’s nominal parameters for conventional SMC, FBL, and the proposed controllers.

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.

Figure 8:

The control inputs of the quadrotor for the FBL controller.

Furthermore, the proposed controller significantly reduces the unwanted chattering compared to the conventional SMC, as clearly illustrated in Figures 9 and 10.

Figure 9:

The control inputs of the quadrotor for the conventional SMC controller.

Figure 10:

The control inputs of the quadrotor for the proposed SMC controller.

Scenario 2: controlled system against disturbances and parameter uncertainties

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.

Figure 11:

Pulse-type external disturbance applied to the quadrotor attitude control inputs.

Figure 12:

Pulse-type external disturbance applied to the quadrotor altitude control inputs.

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.

Figure 13:

The quadrotor’s attitude using the conventional SMC, FBL, and the proposed SMC controllers with the added %100 uncertainty in mass along with the external disturbance.

Figure 14:

The quadrotor’s attitude tracking errors using the conventional SMC, FBL, and the proposed SMC controllers with the added %100 uncertainty in mass along with the external disturbance.

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.

Figure 15:

The quadrotor’s altitude using the conventional SMC, FBL, and the proposed SMC controllers with the added %100 uncertainty in mass along with the external disturbance.

Figure 16:

The quadrotor’s altitude tracking errors using the conventional SMC, FBL, and the proposed SMC controllers with the added %100 uncertainty in mass along with the external disturbance.

Figure 17:

The control inputs of the quadrotor for FBL controllers with %100 added uncertainty in mass and the external disturbances.

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.

Figure 18:

The control inputs of the quadrotor for the proposed SMC controllers with %100 added uncertainty in mass and the external disturbances.

Figure 19:

The control inputs of the quadrotor for conventional SMC controller with %100 added uncertainty in mass and external disturbances.

Conclusion

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.

eISSN:
1178-5608
Język:
Angielski
Częstotliwość wydawania:
Volume Open
Dziedziny czasopisma:
Engineering, Introductions and Overviews, other