# Output Feedback Adaptive Dynamic Surface Sliding-Mode Control for Quadrotor UAVs with Tracking Error Constraints

Authors: Guoqiang Zhu; Sen Wang; Lingfang Sun; Weichun Ge; Xiuyu Zhang
Journal: Complexity
 (2020)

---

## Abstract

In this paper, a fuzzy adaptive output feedback dynamic surface sliding-mode control scheme is presented for a class of quadrotor unmanned aerial vehicles (UAVs). The framework of the controller design process is divided into two stages: the attitude control process and the position control process. The main features of this work are (1) a nonlinear observer is employed to predict the motion velocities of the quadrotor UAV; therefore, only the position signals are needed for the position tracking controller design; (2) by using the minimum learning technology, there is only one parameter which needs to be updated online at each design step and the computational burden can be greatly reduced; (3) a performance function is introduced to transform the tracking error into a new variable which can make the tracking error of the system satisfy the prescribed performance indicators; (4) the sliding-mode surface is introduced in the process of the controller design, and the robustness of the system is improved. Stability analysis proved that all signals of the closed-loop system are uniformly ultimately bounded. The results of the hardware-in-the-loop simulation validate the effectiveness of the proposed control scheme.


---

## Body

## 1. Introduction

Quadrotor unmanned aerial vehicles (UAVs), as a new product in the field of small UAVs, have become a research hotspot among research and scholars all over the word [1–5]. The main advantages of quadrotor UAVs, such as flying in any direction, take off and land vertically, and hover at an ideal attitude, make the quadrotor UAVs widely used in more important fields, such as providing medical assistance, transporting special resources, disaster monitoring, and agricultural mapping. However, quadrotor UAVs are a complex physical system with the following characteristics, such as multivariate, nonlinearity, underactuating, and strong coupling, which make it very difficult to design an effective adaptive robust flight controller.In the recent years, various effective control techniques have been developed for quadrotor UAVs to achieve stabilized or automatic flight, such as adaptive PID linear quadratic regulator (LQR) control [2, 6, 7], LMI-based linear control [8, 9], and H∞ control [10, 11]. With the development of intelligence control theory, different kinds of advanced nonlinear control methods, which combine the linear control methods with intelligence control theory, such as feedback linearization control [12], model predictive control [13, 14], adaptive backstepping control [15, 16], adaptive sliding-mode control (SMC) [17–20], fault-tolerant control [21], dynamic surface control (DSC) [22–25], and adaptive fuzzy control [26, 27], have been proposed to achieve attitude and position trajectory tracking performance of quadrotor UAVs. In [28], a novel neural network-based output feedback controller is developed for a group of quadrotor UAVs. In [29], the prescribed performance backstepping dynamic surface control (DSC) scheme is proposed to solve the problem of trajectory tracking control for a quadrotor UAV with control input saturation. In [5], a fuzzy-based compound quantized control strategy is applied to the Quanser Qball-X4 quadrotor experimental platform, which achieved precise position control and tracking performance.Among the above control schemes, the backstepping strategy has been widely used in the controller design for nonlinear systems. For instance, in [30], the trajectory tracking controller based on the backstepping approach was developed for the quadrotor model, while the PD control was used to attenuate the effects caused by system uncertainties. In [16], a nonlinear disturbance observer-based backstepping control method has been proposed to address the problem of loss of actuators’ effectiveness. However, one drawback of backstepping is the “explosion of complexity” caused by the recurrent derivation of the virtual control law in each design step. To deal with this problem, the DSC control method has been proposed for a class of nonlinear systems, by introducing a first-order low-pass filter in each design step, and the shortcoming was overcome [22, 31–33].An effective way to deal with the uncertainty of system parameters and unmodeled dynamics is to design an adaptive controller using the general approximation ability of the fuzzy logic system (FLS) and neural networks (NNs) [34–36]. The number of adaptive laws which depends on the fuzzy rules or the NN weights will be significantly increased as the number of fuzzy rules or the NN weights increase. To overcome this problem, a new method by estimating the norm rather than each item of the weight vector was proposed in [37, 38]. Thus, the number of adaptive laws is reduced significantly. Actually, the quadrotor UAVs are not only time-varying coupled and nonlinear systems, but also suffer from perturbations such as payload variations and nonlinear friction. Therefore, it is necessary to design a controller with adaptive capability, fast convergence, and robust performance for the quadrotor UAVs.As a widely used nonlinear control algorithm, the sliding-mode control (SMC) is known for its excellent performance properties for complex high-order nonlinear systems in the presence of uncertain conditions [39, 40]. In [18], the SMC trajectory tracking controller was proposed for quadrotor UAVs by considering the wind perturbations and external disturbance components. In [19], a hierarchical control strategy based on the double-loop integral sliding-mode controller was designed for the position and attitude tracking of quadrotor UAVs with sustained disturbances and parameter uncertainties. Most of the existing literature focuses on using the SMC method to solve the attitude control of quadrotor UAVs instead of the position trajectory tracking control design because the transformed dynamic equation has a preferred form for the attitude control.However, a major constraint in the controller design of quadrotor UAVs is that all the state variables of the system are required to be measurable. But in practical application, under some unpredictable factors, it will cause the measurement sensor to fail. [41–45]. In [41], an adaptive output feedback control scheme has been proposed for a class of uncertain SISO nonlinear systems under the constraint that only the system output can be obtained. In [43], a fuzzy state observer-based control method is designed for an uncertain MIMO nonlinear system, and by using the state observer, the problem of state immeasurability has been solved. Traditionally, the tracking performance in adaptive control schemes has been confined to ensure that the tracking error converges to a residual set, the size of which is determined by the explicit design parameters and some unknown bounded terms. The upper bounds of the tracking error are difficult to calculate, so it is a very practical work to make the prior selection of the tracking performance satisfy certain steady state behavior. In [46, 47], a prescribed performance control scheme has been proposed for a class of nonlinear systems, and by constructing a prescribed performance function, the tracking error of the system was transformed into a new variable to ensure that the convergence rate was no less than a prespecified value, and the steady-state error remains within the prescribed range. However, limited attention has been paid to this issue for the controller design of quadrotor UAVs.Inspired by the aforementioned discussions, an adaptive output feedback dynamic surface sliding-mode control for a class of quadrotor UAV system is presented where the fuzzy approximators are used to approximate the unknown items of the system. The main contributions of the proposed control scheme are as follows:Firstly, to our best knowledge, this is the first time to use the dynamic surface control techniques with the sliding-mode method to design and test the robust controller of quadrotor UAVs in the platform of hardware-in-the-loop simulation, leading to a greatly simplified structure of the controller and improved robustness of the system.Secondly, by introducing performance and error transformed functions in the controller, the tracking error of the quadrotor UAVs is transformed into a new error constraint variable which can ensure the prescribed transient performance of the system.Thirdly, by estimating the norm of the FLS weights instead of estimating each variables of the weight vector, there is only one parameter needed to be updated at each step. Thus, the computing time is reduced.Finally, the nonlinear state observer is introduced to predict the unmeasurable state of the quadrotor such as the angular velocity state of the quadrotor. Then, only the measurable attitude and position information are required in the implementation of the controller of the quadrotor.The rest of this paper is organized as follows. In Section2, problem statement and preliminaries including the mathematical model of the quadrotor, fuzzy logic systems (FLSs), and performance function are introduced. The process of the controller design and analysis of stability are given in Sections 3 and 4, respectively. Section 5 shows the results of the hardware-in-the-loop simulation to validate the effectiveness of the proposed control scheme.


## 2. Problem Statement and Preliminaries

### 2.1. Dynamic Model of Quadrotor UAVs

The schematic configuration of the quadrotor in this paper is shown in Figure1. The basic movements are vertical movement, front and back movement, left and right movement, pitch rotation, roll rotation, and yaw rotation. On changing the rotor speed altogether with the same quantity, the lift forces will change, in this case, affecting the attitude of the vehicle. The complicated motions of a quadrotor can be divided into two typical parts, and each part represents a subsystem with coupled terms. The first part is associated with the translational positions, and the second part is associated with the rotational angles. And in this section, we will deduce the mathematical model of a quadrotor UAV, including navigation equations and moment equations.Figure 1
Schematic diagram of the quadrotor UAV.DefineΛ=ϕ,θ,ψT∈R3 and w=p,q,rT, where ϕ, θ, and ψ represent the roll angle, pitch angle, and yaw angle with respect to the inertia frame and p, q, and r denote the angular velocity of the roll, pitch, and yaw with respect to the body-fixed frame. Let RBG denote the transformation matrix between the inertia frame and the body-fixed frame using Euler–Lagrange formulation, which can be expressed as(1)RBG=CψCθCψSθSϕ−SψCϕCψSθCϕ+SψSϕSψCθSψSθSϕ+CψCϕSψSθCϕ−CψSϕ−SθSϕCθCϕCθ,where S⋅ and C⋅ denote the sin⋅ and cos⋅, respectively.LetP=x,y,zT∈R3 denote the position with respect to the inertia frame. According to Newton’s second law, the relationship between combined force FG and acceleration in the ground coordinate is(2)FG=FxFyFz=ddtmV=mx¨y¨z¨,and we can get the translational dynamic equations of the quadrotor(3)x¨y¨z¨=1mFG=1mRBG00Uz−00mg−DxDyDz,where Dx=dxx˙,Dy=dyy˙,andDz=dzz˙, in which dx,dy,anddz are the air drag coefficients; Uz=kΩ12+Ω22+Ω32+Ω42 is the lift force generated by the rotors with respect to the body coordinate system, in which Ωi,i=1,…,4 denote the rotary speed of the front, right, rear, and left rotors and k is the lift coefficient of the rotor.According to the kinetic equation, the relationship betweenΛ and w can be described as(4)Λ˙=QΛw=1TθSϕTθCϕ0Cϕ−Sϕ0SϕCθCϕCθpqr,where T⋅ denotes tan⋅ and the transformation matrix QΛ is bounded according to QΛF<QΛmax for a known constant QΛmax provided −π/2<ϕ<π/2 and −π/2<θ<π/2 [23]. MB0 is defined as the torque provided by the rotors with respect to the body-fixed frame and is described as follows:(5)MB0=MB0xMB0yMB0z=lF4−F2lF3−F1τ2+τ4−τ1−τ3,where τii=1,…,4=kψFi, kψ is a constant, l is the distance between a rotor and the center of mass of the quadrotor, Fii=1,…,4=kΩi2 denotes the lift provided by the rotor, and we get τi=kψkΩi2=τΩi2,in whichτ represents the antitorque coefficient. Using the Newton–Euler equation, we can get the rotational dynamic equation of the quadrotor:(6)MB0=w×JBw+JBw˙+Mr+Md,where JB=diagJxx,Jyy,Jzz is a symmetric positive definite constant matrix with Jxx, Jyy, and Jzz being the rotary inertia with respect to the Obxb, Obyb, and Obzb axes, the signal × represents the cross multiplication, and Mr and Md are the resultant torques due to the gyroscopic effects and the resultant of the aerodynamic frictions torque. They are given as(7)Mr=∑i=14w×JR0,0,−1i+1ΩiT,Md=dϕϕ˙,dθθ˙,dψψ˙T,where JR represents the moment of inertia of each rotor and dϕ,dθ, and dψ are the corresponding aerodynamic drag coefficients.From (6), the following equation can be obtained:(8)w˙=1JBMB0−Mr−Md−w×JBw,where(9)w×JBw=−rJyyq+qJzzrrJxxp−pJzzr−qJxxp+pJzzq.With the help of (4), the following equations can be obtained:(10)ϕ¨=1JxxMB0x+θ˙ψ˙Jyy−Jzz−JRθ˙Ω−dϕϕ˙,θ¨=1JyyMB0y+ϕ˙ψ˙Jzz−Jxx+JRϕ˙Ω−dθθ˙,ψ¨=1JzzMB0z+θ˙ϕ˙Jxx−Jyy−dψψ˙,where Ω=Ω1+Ω3−Ω2−Ω4.Remark 1.
It is worth noting to point out that the roll, pitch, and yaw angles are limited to−π/2,π/2 which is physically meaningful.
By combing (3) and (10), a nonlinear equation of the quadrotor UAV is given as follows:(11)X˙=fX+gXU,where X=x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12T=x,x˙,y,y˙,z,z˙,ϕ,ϕ˙,θ,θ˙,ψ,ψ˙T is the state vector and fX and gX are the smooth functions. The dynamic of quadrotor UAVs can be described as follows:(12)x˙1=x2,x˙2=Cx7Sx9Cx11+Sx7Sx11U1−a1x2,x˙3=x4,x˙4=Cx7Sx9Sx11−Sx7Cx11U1−a2x4,x˙5=x6,x˙6=Cx7Cx9U1−g−a3x6,x˙7=x8,x˙8=a4x10x12+a5x10Ω−a6x8+U2,x˙9=x10,x˙10=a7x8x12+a8x8Ω−a9x10+U3,x˙11=x12,x˙12=a10x8x10−a11x12+U4,where g is the gravity acceleration and Ui,i=1,…,4 are the control inputs which can be expressed as(13)U1=kΩ12+Ω22+Ω32+Ω42m,U2=lkΩ42−Ω22Jxx,U3=lkΩ32−Ω12Jyy,U4=τΩ42+Ω22−Ω12−Ω32Jzz.
Dividing the unknown parametersaii=4,…,11 into two parts, known part aiN and unknown part Δai, it is expressed as follows:(14)a1=dxm,a2=dym,a3=dzm,a4N=Jyy−JzzJxx,a5N=JRJxx,a6N=dϕJxx,a7N=Jzz−JxxJyy,a8N=JRJyy,a9N=dθJyy,a10N=Jxx−JyyJzz,a11N=dψJzz.


### 2.2. Fuzzy Logic Systems (FLSs)

The FLS is composed of three main components: fuzzy rule base, fuzzification, and defuzzification operators. The fuzzy rule base comprises a collection of fuzzy “IF-THEN” rules of the following form:Rl: if x1 is F1l and x2 is F2l, … and xn is Fnl, then y is Gl, l=1,2,…,N,where x=x1,…,xnT∈U and y are the FLS input and output, respectively, N is the number of rules, and fuzzy sets Fil and Gl are associated with the fuzzy membership functions μFilxi and μGly. Through the singleton function, center average defuzzification, and product inference, the FLS can be expressed as(15)yx=∑l=1Ny¯l∏i=1nμFilxi∑l=1N∏i=1nμFilxi,where y¯l=maxy∈RμGly. The fuzzy basis function is defined as(16)ξl=∏i=1nμFilxi∑l=1N∏i=1nμFilxi.DenotingWT=y¯1,y¯2,…,y¯N=W1,W2,…,WN and ξx=ξ1x,ξ2x,…,ξNxT, FLS (15) can be rewritten as(17)yx=WTξx.Lemma 1.
According to [34], FLSs can effectively approximate any continuous nonlinear function with any small approximated error in a compact set. It can be expressed as(18)supx∈ΩFx−WTξx<ε,where the continuous nonlinear function Fx:Ω⟶ℝ with Ω∈ℝn is a compact set, WTξx is an FLS (17), and ε>0 is the approximated error. Therefore, Fx can be described as(19)Fx=W∗Tξx+σ∗,∀x∈Ω⊂ℝn,where the minimum approximated error σ∗≤ε and W∗ is an ideal weight vector and can be defined as(20)W∗=argminW⊂ℝnsupx∈ΩFx−yx<ε.


### 2.3. Performance and the Error Transformation Functions

Similar to [46], the mathematical expression of the prescribed tracking performance is given by(21)−κipit<eit<βipit,where eit=yi−xid,i=1,…,6, are the tracking errors, the performance function pit is defined as a smooth and decreasing positive function, and κi and βi are the given positive constants. Moreover, κipi0 and βipi0 represent the lower and upper bounds of the undershoot of eit and −κipi∞ and βipi∞ are the maximum allowable size of eit.The error transformation function is chosen as(22)ϒiSi=eitpit,where Si is the transformed error variable and ϒiSi is a smooth strictly increasing function with the following properties:(23)limSi⟶−∞ϒiSi=−κi,limSi⟶+∞ϒiSi=βi.Note that ifSi is kept bounded, we have −κi<ϒiSi<βi, and thus (21) holds. The inverse transformation of ϒiSi can be expressed as(24)Si=ϒi−1eitpit≔Θieitpit,where Si, eit, and pit, are the transformed errors, the output tracking errors, and their corresponding performance functions.In this paper, we choose(25)Si=Θieitpit=lnκi+eit/pitβi−eit/pit,and differentiating (25) yields(26)S˙i=ηiy˙i−ηivi,where ηi=∂Θ/∂ei/pi1/pii=1,…,6andvi=x˙id+eip˙i/pi,wherexid are the reference signals and eit are the output tracking errors. From the properties of the transformation, it is clear that ηi and vi are bounded and 0<ηi0≤ηi.Remark 2.
It can be seen that a new variableSi is introduced through the above transformation process (21)–(25). If the designed control system can guarantee that Si is bounded, then the tracking error ei is bounded and meets formula (21). This means that the tracking error is always kept within the range −κipit,pit or −pit,βipit. The control objective is to design an adaptive controller so that Si is bounded.


### 2.4. Nonlinear Observer

For a class of nonlinear systems withA0,C in the observer canonical form is given by(27)x˙=A0x+∑i=1nbifix+bnu,y=CTx,with(28)A0=010⋯0001⋯0⋮00010000⋯0,C=10⋮00,bi=0,…,0,︸i−11,0,…,0T,with x∈Rn, y∈R, u∈R,bi∈Rni≥2, and fx is the unknown smooth function. The vector b is general and not in a restricted form. Only the output y is assumed to be measurable [48]. For the uncertain system (27), the nonlinear state observer is established as(29)x^˙=Ax^+∑i=1nbif^ix^+bnu+Ky,y^=CTx^,with(30)A=−k110⋯0−k201⋯0⋮−kn−10010−kn00⋯0,K=−k1−k2⋮−kn−1−kn,where x^ is the estimation of the state x and K is the observer gain vector; K is chosen so that the characteristic polynomial of A−KCT is strictly Hurwitz. Thus, for a given a matrix Q1=Q1T> 0, there exists a positive definite matrix P such that(31)ATP+PA=−Q1.The functionf^x^ is the estimation of fx. In the next section, we choose FLSs to approximate fx. According to (27) and (29), the observer error can be expressed as(32)x˜˙=Ax˜+∑i=1nbiW˜iTξx^i+∑i=1nbiεi=Ax˜+∑i=1nbiW˜iTξx^i+ε¯,where x˜=x−x^,W˜i=Wi∗−W^i,andε¯=ε1,…,εnT.


## 2.1. Dynamic Model of Quadrotor UAVs

The schematic configuration of the quadrotor in this paper is shown in Figure1. The basic movements are vertical movement, front and back movement, left and right movement, pitch rotation, roll rotation, and yaw rotation. On changing the rotor speed altogether with the same quantity, the lift forces will change, in this case, affecting the attitude of the vehicle. The complicated motions of a quadrotor can be divided into two typical parts, and each part represents a subsystem with coupled terms. The first part is associated with the translational positions, and the second part is associated with the rotational angles. And in this section, we will deduce the mathematical model of a quadrotor UAV, including navigation equations and moment equations.Figure 1
Schematic diagram of the quadrotor UAV.DefineΛ=ϕ,θ,ψT∈R3 and w=p,q,rT, where ϕ, θ, and ψ represent the roll angle, pitch angle, and yaw angle with respect to the inertia frame and p, q, and r denote the angular velocity of the roll, pitch, and yaw with respect to the body-fixed frame. Let RBG denote the transformation matrix between the inertia frame and the body-fixed frame using Euler–Lagrange formulation, which can be expressed as(1)RBG=CψCθCψSθSϕ−SψCϕCψSθCϕ+SψSϕSψCθSψSθSϕ+CψCϕSψSθCϕ−CψSϕ−SθSϕCθCϕCθ,where S⋅ and C⋅ denote the sin⋅ and cos⋅, respectively.LetP=x,y,zT∈R3 denote the position with respect to the inertia frame. According to Newton’s second law, the relationship between combined force FG and acceleration in the ground coordinate is(2)FG=FxFyFz=ddtmV=mx¨y¨z¨,and we can get the translational dynamic equations of the quadrotor(3)x¨y¨z¨=1mFG=1mRBG00Uz−00mg−DxDyDz,where Dx=dxx˙,Dy=dyy˙,andDz=dzz˙, in which dx,dy,anddz are the air drag coefficients; Uz=kΩ12+Ω22+Ω32+Ω42 is the lift force generated by the rotors with respect to the body coordinate system, in which Ωi,i=1,…,4 denote the rotary speed of the front, right, rear, and left rotors and k is the lift coefficient of the rotor.According to the kinetic equation, the relationship betweenΛ and w can be described as(4)Λ˙=QΛw=1TθSϕTθCϕ0Cϕ−Sϕ0SϕCθCϕCθpqr,where T⋅ denotes tan⋅ and the transformation matrix QΛ is bounded according to QΛF<QΛmax for a known constant QΛmax provided −π/2<ϕ<π/2 and −π/2<θ<π/2 [23]. MB0 is defined as the torque provided by the rotors with respect to the body-fixed frame and is described as follows:(5)MB0=MB0xMB0yMB0z=lF4−F2lF3−F1τ2+τ4−τ1−τ3,where τii=1,…,4=kψFi, kψ is a constant, l is the distance between a rotor and the center of mass of the quadrotor, Fii=1,…,4=kΩi2 denotes the lift provided by the rotor, and we get τi=kψkΩi2=τΩi2,in whichτ represents the antitorque coefficient. Using the Newton–Euler equation, we can get the rotational dynamic equation of the quadrotor:(6)MB0=w×JBw+JBw˙+Mr+Md,where JB=diagJxx,Jyy,Jzz is a symmetric positive definite constant matrix with Jxx, Jyy, and Jzz being the rotary inertia with respect to the Obxb, Obyb, and Obzb axes, the signal × represents the cross multiplication, and Mr and Md are the resultant torques due to the gyroscopic effects and the resultant of the aerodynamic frictions torque. They are given as(7)Mr=∑i=14w×JR0,0,−1i+1ΩiT,Md=dϕϕ˙,dθθ˙,dψψ˙T,where JR represents the moment of inertia of each rotor and dϕ,dθ, and dψ are the corresponding aerodynamic drag coefficients.From (6), the following equation can be obtained:(8)w˙=1JBMB0−Mr−Md−w×JBw,where(9)w×JBw=−rJyyq+qJzzrrJxxp−pJzzr−qJxxp+pJzzq.With the help of (4), the following equations can be obtained:(10)ϕ¨=1JxxMB0x+θ˙ψ˙Jyy−Jzz−JRθ˙Ω−dϕϕ˙,θ¨=1JyyMB0y+ϕ˙ψ˙Jzz−Jxx+JRϕ˙Ω−dθθ˙,ψ¨=1JzzMB0z+θ˙ϕ˙Jxx−Jyy−dψψ˙,where Ω=Ω1+Ω3−Ω2−Ω4.Remark 1.
It is worth noting to point out that the roll, pitch, and yaw angles are limited to−π/2,π/2 which is physically meaningful.
By combing (3) and (10), a nonlinear equation of the quadrotor UAV is given as follows:(11)X˙=fX+gXU,where X=x1,x2,x3,x4,x5,x6,x7,x8,x9,x10,x11,x12T=x,x˙,y,y˙,z,z˙,ϕ,ϕ˙,θ,θ˙,ψ,ψ˙T is the state vector and fX and gX are the smooth functions. The dynamic of quadrotor UAVs can be described as follows:(12)x˙1=x2,x˙2=Cx7Sx9Cx11+Sx7Sx11U1−a1x2,x˙3=x4,x˙4=Cx7Sx9Sx11−Sx7Cx11U1−a2x4,x˙5=x6,x˙6=Cx7Cx9U1−g−a3x6,x˙7=x8,x˙8=a4x10x12+a5x10Ω−a6x8+U2,x˙9=x10,x˙10=a7x8x12+a8x8Ω−a9x10+U3,x˙11=x12,x˙12=a10x8x10−a11x12+U4,where g is the gravity acceleration and Ui,i=1,…,4 are the control inputs which can be expressed as(13)U1=kΩ12+Ω22+Ω32+Ω42m,U2=lkΩ42−Ω22Jxx,U3=lkΩ32−Ω12Jyy,U4=τΩ42+Ω22−Ω12−Ω32Jzz.
Dividing the unknown parametersaii=4,…,11 into two parts, known part aiN and unknown part Δai, it is expressed as follows:(14)a1=dxm,a2=dym,a3=dzm,a4N=Jyy−JzzJxx,a5N=JRJxx,a6N=dϕJxx,a7N=Jzz−JxxJyy,a8N=JRJyy,a9N=dθJyy,a10N=Jxx−JyyJzz,a11N=dψJzz.


## 2.2. Fuzzy Logic Systems (FLSs)

The FLS is composed of three main components: fuzzy rule base, fuzzification, and defuzzification operators. The fuzzy rule base comprises a collection of fuzzy “IF-THEN” rules of the following form:Rl: if x1 is F1l and x2 is F2l, … and xn is Fnl, then y is Gl, l=1,2,…,N,where x=x1,…,xnT∈U and y are the FLS input and output, respectively, N is the number of rules, and fuzzy sets Fil and Gl are associated with the fuzzy membership functions μFilxi and μGly. Through the singleton function, center average defuzzification, and product inference, the FLS can be expressed as(15)yx=∑l=1Ny¯l∏i=1nμFilxi∑l=1N∏i=1nμFilxi,where y¯l=maxy∈RμGly. The fuzzy basis function is defined as(16)ξl=∏i=1nμFilxi∑l=1N∏i=1nμFilxi.DenotingWT=y¯1,y¯2,…,y¯N=W1,W2,…,WN and ξx=ξ1x,ξ2x,…,ξNxT, FLS (15) can be rewritten as(17)yx=WTξx.Lemma 1.
According to [34], FLSs can effectively approximate any continuous nonlinear function with any small approximated error in a compact set. It can be expressed as(18)supx∈ΩFx−WTξx<ε,where the continuous nonlinear function Fx:Ω⟶ℝ with Ω∈ℝn is a compact set, WTξx is an FLS (17), and ε>0 is the approximated error. Therefore, Fx can be described as(19)Fx=W∗Tξx+σ∗,∀x∈Ω⊂ℝn,where the minimum approximated error σ∗≤ε and W∗ is an ideal weight vector and can be defined as(20)W∗=argminW⊂ℝnsupx∈ΩFx−yx<ε.


## 2.3. Performance and the Error Transformation Functions

Similar to [46], the mathematical expression of the prescribed tracking performance is given by(21)−κipit<eit<βipit,where eit=yi−xid,i=1,…,6, are the tracking errors, the performance function pit is defined as a smooth and decreasing positive function, and κi and βi are the given positive constants. Moreover, κipi0 and βipi0 represent the lower and upper bounds of the undershoot of eit and −κipi∞ and βipi∞ are the maximum allowable size of eit.The error transformation function is chosen as(22)ϒiSi=eitpit,where Si is the transformed error variable and ϒiSi is a smooth strictly increasing function with the following properties:(23)limSi⟶−∞ϒiSi=−κi,limSi⟶+∞ϒiSi=βi.Note that ifSi is kept bounded, we have −κi<ϒiSi<βi, and thus (21) holds. The inverse transformation of ϒiSi can be expressed as(24)Si=ϒi−1eitpit≔Θieitpit,where Si, eit, and pit, are the transformed errors, the output tracking errors, and their corresponding performance functions.In this paper, we choose(25)Si=Θieitpit=lnκi+eit/pitβi−eit/pit,and differentiating (25) yields(26)S˙i=ηiy˙i−ηivi,where ηi=∂Θ/∂ei/pi1/pii=1,…,6andvi=x˙id+eip˙i/pi,wherexid are the reference signals and eit are the output tracking errors. From the properties of the transformation, it is clear that ηi and vi are bounded and 0<ηi0≤ηi.Remark 2.
It can be seen that a new variableSi is introduced through the above transformation process (21)–(25). If the designed control system can guarantee that Si is bounded, then the tracking error ei is bounded and meets formula (21). This means that the tracking error is always kept within the range −κipit,pit or −pit,βipit. The control objective is to design an adaptive controller so that Si is bounded.


## 2.4. Nonlinear Observer

For a class of nonlinear systems withA0,C in the observer canonical form is given by(27)x˙=A0x+∑i=1nbifix+bnu,y=CTx,with(28)A0=010⋯0001⋯0⋮00010000⋯0,C=10⋮00,bi=0,…,0,︸i−11,0,…,0T,with x∈Rn, y∈R, u∈R,bi∈Rni≥2, and fx is the unknown smooth function. The vector b is general and not in a restricted form. Only the output y is assumed to be measurable [48]. For the uncertain system (27), the nonlinear state observer is established as(29)x^˙=Ax^+∑i=1nbif^ix^+bnu+Ky,y^=CTx^,with(30)A=−k110⋯0−k201⋯0⋮−kn−10010−kn00⋯0,K=−k1−k2⋮−kn−1−kn,where x^ is the estimation of the state x and K is the observer gain vector; K is chosen so that the characteristic polynomial of A−KCT is strictly Hurwitz. Thus, for a given a matrix Q1=Q1T> 0, there exists a positive definite matrix P such that(31)ATP+PA=−Q1.The functionf^x^ is the estimation of fx. In the next section, we choose FLSs to approximate fx. According to (27) and (29), the observer error can be expressed as(32)x˜˙=Ax˜+∑i=1nbiW˜iTξx^i+∑i=1nbiεi=Ax˜+∑i=1nbiW˜iTξx^i+ε¯,where x˜=x−x^,W˜i=Wi∗−W^i,andε¯=ε1,…,εnT.


## 3. The Process of the Controller Design

In this section, an adaptive FLS dynamic surface sliding-mode control scheme is proposed for position and attitude trajectory tracking control. The structure of the proposed control scheme is shown in Figure2. The recursive design procedure contains two parts. Part 1 is the position trajectory tracking control and part 2 is the attitude trajectory tracking control. Each part contains three design steps, which are shown in Tables 1 and 2. The details of the controller design process are shown in Appendix A.Figure 2
Structure of the proposed control scheme.Table 1
The proposed DSCSM design for position trajectory control.
Step 1
S
1
=
Θ
1
e
1
t
/
p
1
t,
(T1.1)
x
^
˙
1
=
x
^
2
+
k
1
x
1
−
x
^
1
,
x
^
˙
2
=
f
^
x
^
2
+
χ
1
+
k
2
x
1
−
x
^
1,
(T1.2)
x
¯
2
d
=
−
k
1
x
1
−
x
^
1
+
v
1
−
S
1
c
1
/
η
1
,
τ
2
x
˙
2
d
+
x
2
d
=
x
¯
2
d
,
x
2
d
0
=
x
¯
2
d
0.
(T1.3)
Step 2
S
2
=
x
^
2
−
x
2
d
,
(T1.4)
χ
1
=
−
c
2
S
2
−
1
/
2
S
2
θ
^
1
ξ
1
T
X
1
ξ
1
X
1
−
k
2
x
1
−
x
^
1
+
x
˙
2
d
−
μ
1
sgn
S
2,
(T1.5)
θ
^
.
1
=
1
/
2
S
2
2
ξ
1
T
X
1
ξ
1
X
1
−
λ
1
θ
^
1
,
θ
^
1
0
≥
0.
(T1.6)
Step 3
S
3
=
Θ
3
e
3
t
/
p
1
t,
(T1.7)
x
^
˙
3
=
x
^
4
+
k
1
x
3
−
x
^
3
,
x
^
˙
4
=
f
^
x
^
4
+
χ
2
+
k
2
x
3
−
x
^
3,
(T1.8)
x
¯
4
d
=
−
k
1
x
3
−
x
^
3
+
v
2
−
S
3
c
3
/
η
2
,
τ
4
x
˙
4
d
+
x
4
d
=
x
¯
4
d
,
x
4
d
0
=
x
¯
4
d
0.
(T1.9)
Step 4
S
4
=
x
^
4
−
x
4
d
,
(T1.10)
χ
2
=
−
c
4
S
4
−
1
/
2
S
4
θ
^
2
ξ
2
T
X
2
ξ
2
X
2
−
k
2
x
3
−
x
^
3
+
x
˙
4
d
−
μ
2
sgn
S
4,
(T1.11)
θ
^
.
2
=
1
/
2
S
4
2
ξ
2
T
X
2
ξ
2
X
2
−
λ
2
θ
^
2
,
θ
^
2
0
≥
0.
(T1.12)
Step 5
S
5
=
Θ
5
e
5
t
/
p
1
t,
(T1.13)
x
^
˙
5
=
x
^
6
+
k
1
x
5
−
x
^
5
,
x
^
˙
6
=
f
^
x
^
6
+
χ
3
+
k
2
x
5
−
x
^
5,
(T1.14)
x
¯
6
d
=
−
k
1
x
5
−
x
^
5
+
v
3
−
S
5
c
5
/
η
3
,
τ
6
x
˙
6
d
+
x
6
d
=
x
¯
6
d
,
x
6
d
0
=
x
¯
6
d
0.
(T1.15)
Step 6
S
6
=
x
^
6
−
x
6
d,
(T1.16)
χ
3
=
−
c
6
S
6
−
1
/
2
S
6
θ
^
3
ξ
3
T
X
3
ξ
3
X
3
−
k
2
x
5
−
x
^
5
+
x
˙
6
d
−
μ
3
sgn
S
6,
(T1.17)
θ
^
.
3
=
1
/
2
S
6
2
ξ
3
T
X
3
ξ
3
X
3
−
λ
3
θ
^
3
,
θ
^
3
0
≥
0.
(T1.18)Table 2
The proposed DSCSM design for attitude trajectory control.
Step 7
S
7
=
Θ
7
e
7
t
/
p
ψ
t,
(T2.1)
x
^
˙
7
=
x
^
8
+
k
1
x
7
−
x
^
7,
(T2.2)
x
^
˙
8
=
a
4
N
x
^
10
x
^
12
+
a
5
N
x
^
10
Ω
−
a
6
N
x
^
8
+
f
^
x
^
8
,
x
^
10
,
x
^
12
+
U
2
+
k
2
x
7
−
x
^
7,
(T2.3)
x
¯
8
d
=
−
k
1
x
7
−
x
^
7
+
v
4
−
S
7
c
7
/
η
4
,
τ
8
x
˙
8
d
+
x
8
d
=
x
¯
8
d
,
x
8
d
0
=
x
¯
8
d
0.
(T2.4)
Step 8
S
8
=
x
^
8
−
x
8
d
,
(T2.5)
U
2
=
−
c
8
S
8
−
1
/
2
S
8
θ
^
4
ξ
4
T
X
4
ξ
4
X
4
−
k
2
x
7
−
x
^
7
−
a
4
N
x
^
10
x
^
12
−
a
5
N
x
^
10
Ω
+
a
6
N
x
^
8
+
x
˙
8
d
−
μ
4
sgn
S
8,
(T2.6)
θ
^
.
4
=
1
/
2
S
8
2
ξ
4
T
X
4
ξ
4
X
4
−
λ
4
θ
^
4
,
θ
^
4
0
≥
0.
(T2.7)
Step 9
S
9
=
Θ
9
e
9
t
/
p
ψ
t,
(T2.8)
x
^
˙
9
=
x
^
10
+
k
1
x
9
−
x
^
9,
(T2.9)
x
^
˙
10
=
a
7
N
x
^
8
x
^
12
+
a
8
N
x
^
8
Ω
−
a
9
N
x
^
10
+
f
^
x
^
8
,
x
^
10
,
x
^
12
+
U
3
+
k
2
x
9
−
x
^
9,
(T2.10)
x
¯
10
d
=
−
k
1
x
9
−
x
^
9
+
v
5
−
S
9
c
9
/
η
5
,
τ
10
x
˙
10
d
+
x
10
d
=
x
¯
10
d
,
x
10
d
0
=
x
¯
10
d
0.
(T2.11)
Step 10
S
10
=
x
^
10
−
x
10
d
,
(T2.12)
U
3
=
−
c
10
S
10
−
1
/
2
S
10
θ
^
5
ξ
5
T
X
5
ξ
5
X
5
−
k
2
x
9
−
x
^
9
−
a
7
N
x
^
8
x
^
12
−
a
8
N
x
^
8
Ω
+
a
9
N
x
^
10
+
x
˙
10
d
−
μ
5
sgn
S
10,
(T2.13)
θ
^
.
5
=
1
/
2
S
10
2
ξ
5
T
X
5
ξ
5
X
5
−
λ
5
θ
^
5
,
θ
^
5
0
≥
0.
(T2.14)
Step 11
S
11
=
Θ
11
e
11
t
/
p
ψ
t,
(T2.15)
x
^
˙
11
=
x
^
12
+
k
1
x
11
−
x
^
11,
(T2.16)
x
^
˙
12
=
a
10
N
x
^
8
x
^
10
−
a
11
N
x
^
12
+
f
^
x
^
8
,
x
^
10
,
x
^
12
+
U
4
+
k
2
x
11
−
x
^
11,
(T2.17)
x
¯
12
d
=
−
k
1
x
11
−
x
^
11
+
v
6
−
S
11
c
11
/
η
6
,
τ
12
x
˙
12
d
+
x
12
d
=
x
¯
12
d
,
x
12
d
0
=
x
¯
12
d
0.
(T2.18)
Step 12
S
12
=
x
^
12
−
x
12
d
,
(T2.19)
U
4
=
−
c
12
S
12
−
1
/
2
S
12
θ
^
6
ξ
6
T
X
6
ξ
6
X
6
−
k
2
x
11
−
x
^
11
−
a
10
N
x
^
8
x
^
10
+
a
11
N
x
^
12
+
x
˙
12
d
−
μ
6
sgn
S
12,
(T2.20)
θ
^
.
6
=
1
/
2
S
12
2
ξ
6
T
X
6
ξ
6
X
6
−
λ
6
θ
^
6
,
θ
^
6
0
≥
0.
(T2.21)In Table1, Si,i=1,…,6 are the surface errors and x¯jd,j=2,4,6 are the virtual control signals in Step 1, Step 3, and Step 5, respectively; (T1.3), (T1.9), and (T1.15) represent the virtual control signal pass through a first-order filter to obtain a new variable xjd,j=2,4,6 with the time constant τj,j=2,4,6; (T1.6), (T1.12), and (T1.18) are the adaptive laws, and ci,i=1,…,6,λj,μj,j=1,2,3 are the design positive parameters. It should be noted that χi,i=1,2,3 are the virtual control given by χ1=Cx7Sx9Cx11+Sx7Sx11U1, χ2=Cx7Sx9Sx11−Sx7Cx11U1, and χ3=Cx7Cx9U1.In Table2, Si,i=7,…,12 are the surface errors and x¯jd,j=8,10,12 are the virtual control signals in Step 7, Step 9, and Step 11, respectively; (T2.4), (T2.11), and (T2.18) represent the virtual control signal pass through a first-order filter to obtain a new variable xjd,j=8,10,12 with the time constant τj,j=8,10,12; (T2.7), (T2.14), and (T2.21) are the adaptive laws, and ci,i=7,…,12,λj,μj,j=4,5,6 are the design positive parameters; k1 and k2 are the observer gain.It should be note thatθ^i,i=1,…,6 are the estimations of θi with θi=Wi∗2, and Wi∗2 and ξiXi are the ideal weight vector and fuzzy basis function vector of FLSs which are used to approximate the unknown continuous nonlinear function at each design step.Remark 3.
For the attitude trajectory tracking control sysytem,χ1,χ2, and χ3 can be regarded as known and the input U1 can be solved. The denominator of U1 will not cause singularity since the yaw angle is limited to −π/2,π/2.Remark 4.
In the traditional sliding-mode control method, the existence of the signum function will cause chattering in the control system. In practical applications, the saturation functionsat⋅ [49] or the hyperbolic tangent function tanh⋅ [50] are generally used to eliminate the chatting phenomenon.


## 4. Stability and Prescribed Tracking Performance Analysis

First of all, define the filter error(33)yi=xid−x¯id,i=2,4,6,7,8,9,10,12,from (A.3), (A.13), (A.23), and (A.37). We have(34)x˙id=−yiτi,i=2,4,6,7,8,9,10,12.Differentiating the boundary errors yields(35)y˙2=x˙2d−x¯˙2d=−y2τ2+k1x˙1−x^˙1−v˙1+S˙1c1η1−S1c1η12,from which we have(36)y˙2=−y2τ2+B2S1,S2,y2,x¨1d.By the same token, one has(37)y˙i=−yiτi+Bi⋅,where Bi⋅,i=2,4,6,7,8,9,10,12, are the continuous functions. From (37), the following inequality holds:(38)yiy˙i≤−yi2τi+Biyi.Consider the Lyapunov Function candidate as(39)Γ=12x˜TPx˜+∑i=16Γi+∑i=1612y2i2+12y72+12y92,where x˜=x˜1,x˜2,…,x˜12T and Γi are defined in (A.6)–(A.45).Theorem 1.
For the quadrotor system (12) and the state observer (29), the adaptive laws (T1.6), (T1.12), (T1.18), (T2.7), (T2.14), and (T2.21) and the control input (T2.6), (T2.13), and (T2.20) are given in Table 1 and Table 2; if Γ0 satisfies Γ0≤P,P≥0, then, by properly selecting the design parameters ci,i=1,…,12,λj,μj,j=1,…,6 and the time constant of the low-pass filter τ2,τ4,τ6,τ7,τ8,τ9,τ10,andτ12 appropriately, all the signals in the closed-loop system are semiglobal uniformly bounded. In addition, the tracking error of position and attitude angle can converge to an arbitrarily residual set and is always kept in the prespecified cures.Proof.
Please see Appendix B for details.


## 5. Hardware in the Loop Simulation Results

In this paper, the hardware-in-loop testing platform is used to verify the effectiveness of the proposed control scheme. The experiment environment and the experimental system architecture are shown in Figures3 and 4, where the following components are included:(i)
NI PXIe-1082, the MT real-time simulator (RTS) with Kintex-7 325T FPGA chip and 16bits synchronized analog I/O with a data transfer rate of 1 MS/s. The simulator supports FPGA simulation for the quadrotor UAV system. The device accepts the control signal and calculates the response of the system in real time and outputs to the controller box.(ii)
NI PXIe-1071, the MT Rapid Control Prototype (RCP), with Kintex-7 325T FPGA @Xilinx and 16 analog I/O channels with a transmission rate of 1 MS/s. This device is used to realize the real-time running of the control code and send the control signals to the quadrotor UAV simulation model which is running on the MT real-time simulator.(iii)
Adapter plate: it is used to realize the signal connection between the RTS and RCP. The RTS, RCP, and the signal adapter board comprise a closed loop experimental system.(iv)
Host computer: uses the StarSim RCP software to download the Matlab/simulink quadrotor UAV system model and the control algorithm into the RTS and RCP, respectively.Figure 3
Actual experimental environment.Figure 4
The experimental system architecture.In this section, the effectiveness and the performance of the proposed adaptive dynamic surface sliding-mode output feedback control method are showed by the following experiments. Different scenarios are considered, including normal case and model uncertainty cases to demonstrate the robustness of the proposed controller\enleadertwodots The parameters of the quadrotor UAV adopted in this study are described in Table3 [17]. In the experiment, the desired trajectory of the position and yaw angle desired trajectory xdt,ydt,zdt,ψdt is chosen as cost,sint,0.5t,sin0.5t. The performance functions are selected as p1t=p10−p1∞e−lt+p1∞, with the parameters p10=1.5,p1∞=0.055,l=1,andκ1=β1=1. pψt=0.6∗e−t+0.04. The controller parameters chosen for simulation are c1=c2=c3=c4=0.6,c5=c6=0.55,c7=c8=c9=c10=0.6,c11=c12=0.6,λ1=λ2=λ3=λ4=λ5=λ6=0.02, and τi=0.005,i=2,4,6,7,8,9,10,12. To demonstrate the effectiveness of the proposed controller, the following different cases are considered and comparisons are conducted:Case 1: normal case: we assume that there are no uncertainties in the model, and all parameters of the quadrotor are normal. The initial state vector is set to bex0=0.02,0,0.02,0,0,0,0,0,0,0,0.1,0T. And, the fuzzy membership function is adopted as μFkl=exp−x^k−6+2l2/2, where l=1,…,5 and k=2,6,8,10,12.Cases 2, 3, and 4: uncertainty (15%,30%,and50% added) in rotary inertia: in these cases, we consider three different model uncertainties 15%,30%,and 50% separately added in the yaw axis.Table 3
Quadrotor parameters.
Symbol
Case 1
Case 2
Case 3
Case 4
Units
m
1.4
1.4
1.4
1.4
kg
k
2.98
2.98
2.98
2.98
10
−
6
N
⋅
s
2
⋅
rad
−
2
l
0.2
0.2
0.2
0.2
m
τ
1.14
1.14
1.14
1.14
10
−
7
N
⋅
s
2
⋅
rad
−
2
d
ϕ
,
d
θ
,
d
ψ
1.2
1.2
1.2
1.2
10
−
2
N
⋅
s
⋅
rad
−
1
J
R
5
5
5
5
10
−
5
N
⋅
s
2
⋅
rad
−
1
J
x
x
,
J
y
y
0.03
0.03
0.03
0.03
N
⋅
s
2
⋅
rad
−
1
J
z
z
0.04
0.046
0.052
0.06
N
⋅
s
2
⋅
rad
−
1The experimental results are shown in Figures5–15. Figures 5–9 illustrate the comparison experimental results of the tracking trajectory in Case1 between the proposed control method and the traditional PID control method. From Figures 6–9, it can be seen clearly that all the tracking errors of the position and yaw angles of the proposed control scheme are always kept within the performance function curves. That is, the control method proposed in this paper obtains much better control performance by comparing with the traditional PID control scheme. Figure 10 shows the control signals. Figure 11 shows the response curves of roll and pitch angles. Figures 12 and 13 show the change of six adaptive parameters. Figures 14 and 15 show the trajectories of xi and xi^, i=2,4,6,8,10,12. We can see that the proposed state observer can quickly approximate the output of the system. Figure 16 shows the 3D tracking trajectory with uncertainties 15%,30%, and 50% added in the yaw rotating axes. Figure 17 illustrates the results of the tracking error under cases 2, 3, and 4. Also, the maximum value of the tracking error (MVTE) and the root mean square value of the tracking error (RMSVTE) in the steady state (t>5s) are shown in Table 4. From Table 4, we can see that the proposed control scheme has strong robustness, and even the uncertainty in yaw rotary inertia is up to 50%.Figure 5
Space diagram of position in the normal case.Figure 6
The tracking trajectory ofxd, x, and the tracking error.
(a)
(b)Figure 7
The tracking trajectory ofyd, y, and the tracking error.
(a)
(b)Figure 8
The tracking trajectory ofzd, z, and the tracking error.
(a)
(b)Figure 9
The tracking trajectory ofψd, ψ, and the tracking error.
(a)
(b)Figure 10
Control signals.Figure 11
Change of roll and pitch angles.
(a)
(b)Figure 12
Adaptive parametersθ^1,θ^2,andθ^3.Figure 13
Adaptive parametersθ^4,θ^5,andθ^6.Figure 14
Actual value and estimated value.Figure 15
Actual value and estimated value.Figure 16
Space diagram of the position with normal, 15%, 30%, and 50% parameter uncertainty.Figure 17
The tracking errors of different uncertainty cases added in thez rotating axis.Table 4
The MVTE and RMSVTE.
Kind of errors
Normal case
Uncertainty15%
Uncertainty30%
Uncertainty50%
MVTE
x
m
5.1254
e
−
03
5.5325
e
−
03
5.7471
e
−
03
5.9153
e
−
03
y
m
4.9051
e
−
03
5.2051
e
−
03
5.3593
e
−
03
5.5154
e
−
03
z
m
4.3216
e
−
02
4.4239
e
−
02
4.4799
e
−
02
4.5935
e
−
02
ψ
rad
1.5415
e
−
02
1.6041
e
−
02
1.6869
e
−
02
1.7956
e
−
02
RMSVTE
x
m
3.6036
e
−
03
3.9049
e
−
03
4.1057
e
−
03
4.2059
e
−
03
y
m
3.4844
e
−
03
3.4966
e
−
03
3.5137
e
−
03
3.5714
e
−
03
z
m
3.7271
e
−
02
3.7414
e
−
02
3.7710
e
−
02
3.8117
e
−
02
ψ
rad
0.9939
e
−
02
1.0468
e
−
02
1.1347
e
−
02
1.1592
e
−
02


## 6. Conclusion

In this paper, an adaptive dynamic surface sliding-mode output feedback controller has been proposed for attitude and position control of a class of quadrotor UAVs with consideration of parametric uncertainties and disturbances. By using the norm estimation approach, there is only one parameter which needs to be updated online at each design step regardless of the plant order and input-output dimension. Also, by introducing an error transformed function, the tracking performance of the quadrotor UAV has been achieved. The proposed control scheme can not only eliminate the problem of “explosion of complexity” existing in the backstepping control scheme but also improve the robustness of the system. The results of the hardware-in-loop simulation validate the effectiveness of the proposed control algorithm. Furthermore, our future research work will focus on applying the control algorithm of this paper to the quadrotor UAV test platform for experimental verification.



---

*Source: 8537198-2020-06-15.xml*