# Nonlinear Disturbance Observer-Based Adaptive Sliding Mode Control for a Generic Hypersonic Vehicle

Authors: Jianguo Guo; Hao Zhang; Xiaodong Lu; Jun Zhou
Journal: International Journal of Aerospace Engineering
 (2018)

---

## Abstract

In this paper, a new adaptive sliding mode control method is presented for the longitudinal model of a generic hypersonic vehicle subject to uncertainties and external disturbance. Firstly, an oriented-control model with mismatched uncertainties is built for a generic hypersonic vehicle. Secondly, the back-stepping technique is introduced to design a sliding mode controller with an adaptive law to adapt to the disturbance and uncertainty. Thirdly, a set of nonlinear disturbance observers are designed to estimate the lumped disturbance and compensate the sliding mode controller, and the stability of the proposed controller is analyzed by utilizing Lyapunov stability theory. Finally, simulation results show that the effectiveness of the proposed controller is validated by the nonlinear model and the proposed method exhibits promising robustness to mismatched uncertainties.


---

## Body

## 1. Introduction

Generic hypersonic vehicles (GHVs) provide a reliable way to enter space and attract worldwide attentions in recent years. As GHVs are sensitive to physical and aerodynamic parameter changes, a concernful task is to design an efficient control system that makes the flight of GHVs feasible.Faced with the complexities of GHV dynamics, the design methods of the guidance and control system have attracted considerable interests [1–3]. However, modeling inaccuracies and various disturbance can lead to some adverse effects on the controller; it is a challenging problem to design the controller of GHVs [4].Sliding mode control (SMC) is widely used in dealing with parameter uncertainties and external disturbances for the flight of GHVs [5–8]. Furthermore, back-stepping technique is also an effective way for the control system design, in which the virtual control input can be obtained at each step and the actual controller comes to being [9–12]. The combination of back-stepping method and dynamic surface method is used to design a robust controller. However, the problem of compute explosion in the back-stepping method have to be solvedMeanwhile, the adaptive control approach is applied to adapt to the parameter uncertainties as well as constraint on states and control inputs [12–20]. By selecting a proper adaptive law, the satisfied performance can be easily achieved.It is well known that the disturbance observer is an efficient and active method to compensate the controller against uncertainties and external disturbances [21–24]. At present, the nonlinear disturbance observer (NDO) can be employed to design the controller of the GHV with matched disturbance and mismatched disturbance [24–29].Motivated by the abovementioned researches, a new adaptive SMC strategy that consists of the adaptive control method, back-stepping method, and nonlinear disturbance observer method is proposed in this paper. In the proposed controller framework, a new nonlinear disturbance observer (NDO) is employed to estimate the lumped disturbances that are introduced into the sliding surface and virtual control input at each step to compensate the effects of disturbances. It is proved that the closed-loop system is asymptotically stable here. Finally, simulation results show that the proposed method has a good disturbance rejection performance without sacrificing the nominal control performance.The key innovations are listed below:(i)
A new adaptive SMC method is proposed to meet the flight performance for the GHV with highly nonlinear and mismatched uncertainties.
(ii)
A nonlinear disturbance observer is introduced into the control system to estimate the lumped uncertainties and external disturbance to compensate the sliding mode controller.
(iii)
The compute explosion problem is solved in the back-stepping method by utilizing the adaptive controller.


## 2. Hypersonic Air Vehicle Model

### 2.1. Original Model

The longitudinal dynamics of a GHV can be described with a set of differential equations composed by velocityV and the flight path angle γ, altitude h, angle of attack α, and pitch rate q [3].
(1)V̇=Tcosα−Dm−μsinγr2+d1,(2)γ̇=L+TsinαmV−μ−V2rVr2cosγ+d2,(3)ḣ=Vsinγ,(4)α̇=q−γ̇+d3,(5)q̇=MyyIyy+d4,where dii=1,2,3,4 represents the lumped disturbances in (1), (2), (4), and (5), respectively. m, Iyy, and μ represent the mass of the vehicle, moment of inertia, and gravity constant, respectively. L, D, T, and Myy represent the lift force, the drag force, the thrust force, and the pitching moment, respectively. The r is the radial distance from Earth’s center. They can be described as
(6)L=12ρV2SCL,T=12ρV2SCT,D=12ρV2SCD,Myy=12ρV2Sc¯CMα+CMδe+CMq,r=h+RE,where CL, CT, and CD represent the lift, thrust, and drag coefficients, respectively. CMα, CMq, and CMδe represent the coefficients referred to as the angle of attack, pitch rate, and elevator deflection, respectively. The parameters ρ, S, c¯, and RE represent the air density, the reference area, the mean aerodynamic chord, and the radius of the earth, respectively.The engine dynamics is modeled by a second-order system(7)β¨=−2ζωnβ̇−ωn2βc,where β is the throttle setting, and βc is the throttle setting command.In this paper, the aerodynamics and physical coefficients are simplified around the nominal cruising flight. The terms ofΔ denote the parameter uncertainties.
(8)CL=0.6203α,CD=0.6450α2+0.0043378α+0.003772,CT=0.02576β,ifβ<1,0.0224+0.00336β,ifβ>1,CMα=−0.035α2+0.036617×1+ΔCmαα+5.3261×10−6,CMq=c¯2Vq−6.796α2+0.3015α−0.2289,CMδe=ceδe−α,m=m01+Δm,Iyy=I01+ΔI,S=S01+ΔS,c¯=c¯01+Δc¯,ρ=ρ01+Δρ,ce=0.02921+Δce,where m0=9375, I0=7×106, S0=3603, c¯=80, and ρ0=0.24325×10−4. The maximum value of the additive uncertainties is listed below.
(9)Δm≤Δm,ΔI≤ΔI,ΔS≤ΔS,Δc¯≤Δc¯,Δρ≤Δρ,Δce≤Δce,ΔcMα≤ΔcMα.The velocity is mainly related to throttle settingβ while the change of altitude is mainly related to the elevator deflection δe.


### 2.2. Preparation and System Transformation

#### 2.2.1. Preparation

The model of a GHV described by (1), (2), (3), (4), and (5) can be decoupled into two parts, which are velocity subsystem and altitude subsystem. In this paper, the flight path angle is set in a small area.Assumption 1.
The lumped disturbances are bounded and the maximum value is as follows:(10)di≤ξi,i=1,2,3,4,where di represents the lumped disturbances in (1), (2), (4), and (5), respectively. ξi>0 is a known constant.


#### 2.2.2. System Transformation

The variable states are chosen asx1=V, x2=γ, x3=θ, and x4=q, where θ=α+γ.
(1)
Velocity subsystem:(11)ẋ1=f1+g1u1+d1,u1=β,y1=x1.If β > 1,
(12)f1=μsinx3r2−Dm+12ρx12S×0.0224cosx4−x3m,g1=12ρx12S×0.00336cosx4−x3m.Otherwise
(13)f1=−μsinx3r2−Dm,g1=12ρx12S×0.02576cosx4−x3m.
(2)
Altitude subsystem: the tracking error is described byh~=h−hd. The altitude is denoted by x2 as well as the altitude command is represented by x2d. Then, the derivative of altitude tracking error can be obtained as
(14)h~̇=ḣ−ḣd=x1sinγ−ḣd=x1γ+x1sinγ−γ−ḣd.The command referred to flight path angle is chosen as
(15)γd=−khh~−x1sinγ−γ+ḣdx1,where the parameter kh donates the control gain.
(16)ẋ2=f2+g2x3+d2,ẋ3=f3+g3x4+d3,ẋ4=f4+g4u4+d4,u2=δe,y2=x2,(17)f2=−12ρx12S×0.60231mx1x2−μ−x12rx1r2cosx2,(18)g1=12ρx12S×0.60231mx1,(19)f2=0,g2=1,(20)f3=ρx12Sc¯CMx3−x2+CMx4−0.0292x3−x22Iyy,(21)g3=12ρx12Sc¯0.0292Iyy.


## 2.1. Original Model

The longitudinal dynamics of a GHV can be described with a set of differential equations composed by velocityV and the flight path angle γ, altitude h, angle of attack α, and pitch rate q [3].
(1)V̇=Tcosα−Dm−μsinγr2+d1,(2)γ̇=L+TsinαmV−μ−V2rVr2cosγ+d2,(3)ḣ=Vsinγ,(4)α̇=q−γ̇+d3,(5)q̇=MyyIyy+d4,where dii=1,2,3,4 represents the lumped disturbances in (1), (2), (4), and (5), respectively. m, Iyy, and μ represent the mass of the vehicle, moment of inertia, and gravity constant, respectively. L, D, T, and Myy represent the lift force, the drag force, the thrust force, and the pitching moment, respectively. The r is the radial distance from Earth’s center. They can be described as
(6)L=12ρV2SCL,T=12ρV2SCT,D=12ρV2SCD,Myy=12ρV2Sc¯CMα+CMδe+CMq,r=h+RE,where CL, CT, and CD represent the lift, thrust, and drag coefficients, respectively. CMα, CMq, and CMδe represent the coefficients referred to as the angle of attack, pitch rate, and elevator deflection, respectively. The parameters ρ, S, c¯, and RE represent the air density, the reference area, the mean aerodynamic chord, and the radius of the earth, respectively.The engine dynamics is modeled by a second-order system(7)β¨=−2ζωnβ̇−ωn2βc,where β is the throttle setting, and βc is the throttle setting command.In this paper, the aerodynamics and physical coefficients are simplified around the nominal cruising flight. The terms ofΔ denote the parameter uncertainties.
(8)CL=0.6203α,CD=0.6450α2+0.0043378α+0.003772,CT=0.02576β,ifβ<1,0.0224+0.00336β,ifβ>1,CMα=−0.035α2+0.036617×1+ΔCmαα+5.3261×10−6,CMq=c¯2Vq−6.796α2+0.3015α−0.2289,CMδe=ceδe−α,m=m01+Δm,Iyy=I01+ΔI,S=S01+ΔS,c¯=c¯01+Δc¯,ρ=ρ01+Δρ,ce=0.02921+Δce,where m0=9375, I0=7×106, S0=3603, c¯=80, and ρ0=0.24325×10−4. The maximum value of the additive uncertainties is listed below.
(9)Δm≤Δm,ΔI≤ΔI,ΔS≤ΔS,Δc¯≤Δc¯,Δρ≤Δρ,Δce≤Δce,ΔcMα≤ΔcMα.The velocity is mainly related to throttle settingβ while the change of altitude is mainly related to the elevator deflection δe.


## 2.2. Preparation and System Transformation

### 2.2.1. Preparation

The model of a GHV described by (1), (2), (3), (4), and (5) can be decoupled into two parts, which are velocity subsystem and altitude subsystem. In this paper, the flight path angle is set in a small area.Assumption 1.
The lumped disturbances are bounded and the maximum value is as follows:(10)di≤ξi,i=1,2,3,4,where di represents the lumped disturbances in (1), (2), (4), and (5), respectively. ξi>0 is a known constant.


### 2.2.2. System Transformation

The variable states are chosen asx1=V, x2=γ, x3=θ, and x4=q, where θ=α+γ.
(1)
Velocity subsystem:(11)ẋ1=f1+g1u1+d1,u1=β,y1=x1.If β > 1,
(12)f1=μsinx3r2−Dm+12ρx12S×0.0224cosx4−x3m,g1=12ρx12S×0.00336cosx4−x3m.Otherwise
(13)f1=−μsinx3r2−Dm,g1=12ρx12S×0.02576cosx4−x3m.
(2)
Altitude subsystem: the tracking error is described byh~=h−hd. The altitude is denoted by x2 as well as the altitude command is represented by x2d. Then, the derivative of altitude tracking error can be obtained as
(14)h~̇=ḣ−ḣd=x1sinγ−ḣd=x1γ+x1sinγ−γ−ḣd.The command referred to flight path angle is chosen as
(15)γd=−khh~−x1sinγ−γ+ḣdx1,where the parameter kh donates the control gain.
(16)ẋ2=f2+g2x3+d2,ẋ3=f3+g3x4+d3,ẋ4=f4+g4u4+d4,u2=δe,y2=x2,(17)f2=−12ρx12S×0.60231mx1x2−μ−x12rx1r2cosx2,(18)g1=12ρx12S×0.60231mx1,(19)f2=0,g2=1,(20)f3=ρx12Sc¯CMx3−x2+CMx4−0.0292x3−x22Iyy,(21)g3=12ρx12Sc¯0.0292Iyy.


## 2.2.1. Preparation

The model of a GHV described by (1), (2), (3), (4), and (5) can be decoupled into two parts, which are velocity subsystem and altitude subsystem. In this paper, the flight path angle is set in a small area.Assumption 1.
The lumped disturbances are bounded and the maximum value is as follows:(10)di≤ξi,i=1,2,3,4,where di represents the lumped disturbances in (1), (2), (4), and (5), respectively. ξi>0 is a known constant.


## 2.2.2. System Transformation

The variable states are chosen asx1=V, x2=γ, x3=θ, and x4=q, where θ=α+γ.
(1)
Velocity subsystem:(11)ẋ1=f1+g1u1+d1,u1=β,y1=x1.If β > 1,
(12)f1=μsinx3r2−Dm+12ρx12S×0.0224cosx4−x3m,g1=12ρx12S×0.00336cosx4−x3m.Otherwise
(13)f1=−μsinx3r2−Dm,g1=12ρx12S×0.02576cosx4−x3m.
(2)
Altitude subsystem: the tracking error is described byh~=h−hd. The altitude is denoted by x2 as well as the altitude command is represented by x2d. Then, the derivative of altitude tracking error can be obtained as
(14)h~̇=ḣ−ḣd=x1sinγ−ḣd=x1γ+x1sinγ−γ−ḣd.The command referred to flight path angle is chosen as
(15)γd=−khh~−x1sinγ−γ+ḣdx1,where the parameter kh donates the control gain.
(16)ẋ2=f2+g2x3+d2,ẋ3=f3+g3x4+d3,ẋ4=f4+g4u4+d4,u2=δe,y2=x2,(17)f2=−12ρx12S×0.60231mx1x2−μ−x12rx1r2cosx2,(18)g1=12ρx12S×0.60231mx1,(19)f2=0,g2=1,(20)f3=ρx12Sc¯CMx3−x2+CMx4−0.0292x3−x22Iyy,(21)g3=12ρx12Sc¯0.0292Iyy.


## 3. Controller Design

And the composited controller, consisting of an adaptive back-stepping method and nonlinear disturbance observer, is designed for a GHV. The NDO is added into the controller for improving performance of the controller.


### 3.1. New Adaptive Sliding Mode Controller Design

The proposed controller utilizes the back-stepping method while the virtual control inputs can be obtained at each step. The designed adaptive law can compensate for the modeling uncertainties effectively.


#### 3.1.1. Controller for the Velocity Subsystem

The velocity tracking error can be defined as(22)z1=x1−x1d.A new sliding mode is chosen as(23)s1=ż1+c1z1z1+δ12η1+d^1,where d^1 represents the disturbance estimation of d1.The adaptive parameter is chosen as(24)δ̇1=−λ1c1z1δ1η1z1+δ12η1.When the differentiation of tracking error is taken into the dynamics, the equation can be obtained as(25)ṡ1=z¨1+c1z1z1+δ12η1+d^̇1=ḟ1+g1u1′+ḋ1−x¨1d+c1z1z1+δ12η1+d^̇1.The command of throttle setting can be designed as(26)u1=−g1−1∫k1,1s1+k1,2sgns1dt+f1−ẋ1d+c1z1z1+δ12η1+d^1,where k1,1 and k1,2 represent the controller parameters, respectively, which determine the convergence rate of this subsystem.


#### 3.1.2. Controller for Altitude Subsystem

The back-stepping method is used to design the controller for altitude subsystem.Step 1
(the control input design for the flight path angle). The tracking error in this step can be defined as(27)z2=x2−x2d.
For making the tracking error converge to zero, the sliding mode surface can be designed as(28)s2=ż2+c2z2z2+δ22η2+d^2,where d^2 is the disturbance estimation of d2.
The adaptive parameter is chosen as(29)δ̇2=−λ2c2z2δ2η2z2+δ22η2.
If the differentiation is taken into the sliding mode, it can be obtained as(30)ṡ2=z¨2+c2z2z2+δ22η2+d^̇2=ḟ2+g2x3′+ḋ2−x¨2d+c2z2z2+δ22η2+d^̇2.
It can be obtained as(31)x3d=−g2−1∫k2,1s2+k2,2sgns2dt+f2−ẋ2d+c2z2z2+δ22η2+d^2.Step 2
(the control input design for the pitching angle). The tracking error and sliding mode surface can be defined as follows:(32)z3=x3−x3d,s3=ż3+c3z3z3+δ32η3+d^3,where d^3 is the disturbance estimation of d3.
The adaptive parameter is chosen as(33)δ̇3=−λ3c3z3δ3η3z3+δ32η3.
The equation can be transformed when the derivation ofs3 is taken into the dynamics
(34)ṡ3=z¨3+c3z3z3+δ32η3+d^̇3=ḟ3+g3x4′+ḋ3−x¨3d+c3z3z3+δ32η3+d^̇3.
It can be obtained as(35)x4d=−g3−1∫k3,1s3+k3,2sgns3dt+f3−ẋ3d+c3z3z3+δ32η3+d^3.Step 3
(the control input design for the pitching rate angle). The tracking errorz4 and sliding mode surface s4 in this step can be designed as follows:
(36)z4=x4−x4d,s4=ż4+c4z4z4+δ42η4+d^4,where d^4 is the disturbance estimation of d4.
The adaptive parameter is chosen as(37)δ̇4=−λ4c4z4δ4η4z4+δ42η4.
The equation can be transformed when the derivation ofz4 is taken into the tracking error.
(38)ṡ4=z¨4+c4z4z4+δ42η4+d^̇4=ḟ4+g4u2′+ḋ4−x¨4d+c4z4z4+δ42η4+d^̇4.
The slide mode controller can be obtained as follows:(39)u2=−g4−1∫k4,1s4+k4,2sgns4dt+f4−ẋ4d+c4z4z4+δ42η4+d^4.


### 3.2. Nonlinear Disturbance Observer Design

Inspired by the works of Zhang et al. [26], Liu et al. [27], and Tian et al. [28], a nonlinear disturbance observer is designed as follows.


#### 3.2.1. NDO for Velocity Subsystem

A nonlinear disturbance observer for (1) is designed as
(40)x^̇1d^̇1=A12100x^1d^1+A110x3−x2+B10u1−L11L12x^1−x1,A11=−0.0043378ρx12S2m,A12=0,B1=0.00336βcρx12S2m,where L11=A11+2Λ1, L12=Λ12, and Λ1>0.


#### 3.2.2. NDO for Altitude Subsystem

Similarly, an NDO for (3) is obtained as
(41)h^̇d^̇h=H11100h^d^h−H21H22h^−h,H11=xc,where H21=H11+2ΛH, H22=ΛH2, and ΛH>0.A nonlinear disturbance observer for (2) is designed as
(42)x^̇2d^̇2=A22100x^2d^2+A210x3−L21L22x^2−x2,A21=−0.6427ρx12S2mx1,A22=0.6427ρx12S2mx1,where L21=A21+2Λ2, L22=Λ22, and Λ2>0.A nonlinear disturbance observer for (4) is designed as
(43)x^̇3d^̇3=A31100x^3d^3+A320x4−L31L32x^3−x3,A31=0,A32=1,where L31=A31+2Λ3, L32=Λ32, and Λ3>0.Similarly, a nonlinear disturbance observer for (5) is designed as
(44)x^̇4d^̇4=A42100x^4d^4+A410x3+B20u2−L41L42x^4−x4,A41=ρx12Sc¯2Iyy0.036617−ce,A42=−0.2289ρx1Sc¯24Iyy,B2=ceρx12Sc¯2Iyy,where L41=A41+2Λ4, L42=Λ42, and Λ4>0.


## 3.1. New Adaptive Sliding Mode Controller Design

The proposed controller utilizes the back-stepping method while the virtual control inputs can be obtained at each step. The designed adaptive law can compensate for the modeling uncertainties effectively.


### 3.1.1. Controller for the Velocity Subsystem

The velocity tracking error can be defined as(22)z1=x1−x1d.A new sliding mode is chosen as(23)s1=ż1+c1z1z1+δ12η1+d^1,where d^1 represents the disturbance estimation of d1.The adaptive parameter is chosen as(24)δ̇1=−λ1c1z1δ1η1z1+δ12η1.When the differentiation of tracking error is taken into the dynamics, the equation can be obtained as(25)ṡ1=z¨1+c1z1z1+δ12η1+d^̇1=ḟ1+g1u1′+ḋ1−x¨1d+c1z1z1+δ12η1+d^̇1.The command of throttle setting can be designed as(26)u1=−g1−1∫k1,1s1+k1,2sgns1dt+f1−ẋ1d+c1z1z1+δ12η1+d^1,where k1,1 and k1,2 represent the controller parameters, respectively, which determine the convergence rate of this subsystem.


### 3.1.2. Controller for Altitude Subsystem

The back-stepping method is used to design the controller for altitude subsystem.Step 1
(the control input design for the flight path angle). The tracking error in this step can be defined as(27)z2=x2−x2d.
For making the tracking error converge to zero, the sliding mode surface can be designed as(28)s2=ż2+c2z2z2+δ22η2+d^2,where d^2 is the disturbance estimation of d2.
The adaptive parameter is chosen as(29)δ̇2=−λ2c2z2δ2η2z2+δ22η2.
If the differentiation is taken into the sliding mode, it can be obtained as(30)ṡ2=z¨2+c2z2z2+δ22η2+d^̇2=ḟ2+g2x3′+ḋ2−x¨2d+c2z2z2+δ22η2+d^̇2.
It can be obtained as(31)x3d=−g2−1∫k2,1s2+k2,2sgns2dt+f2−ẋ2d+c2z2z2+δ22η2+d^2.Step 2
(the control input design for the pitching angle). The tracking error and sliding mode surface can be defined as follows:(32)z3=x3−x3d,s3=ż3+c3z3z3+δ32η3+d^3,where d^3 is the disturbance estimation of d3.
The adaptive parameter is chosen as(33)δ̇3=−λ3c3z3δ3η3z3+δ32η3.
The equation can be transformed when the derivation ofs3 is taken into the dynamics
(34)ṡ3=z¨3+c3z3z3+δ32η3+d^̇3=ḟ3+g3x4′+ḋ3−x¨3d+c3z3z3+δ32η3+d^̇3.
It can be obtained as(35)x4d=−g3−1∫k3,1s3+k3,2sgns3dt+f3−ẋ3d+c3z3z3+δ32η3+d^3.Step 3
(the control input design for the pitching rate angle). The tracking errorz4 and sliding mode surface s4 in this step can be designed as follows:
(36)z4=x4−x4d,s4=ż4+c4z4z4+δ42η4+d^4,where d^4 is the disturbance estimation of d4.
The adaptive parameter is chosen as(37)δ̇4=−λ4c4z4δ4η4z4+δ42η4.
The equation can be transformed when the derivation ofz4 is taken into the tracking error.
(38)ṡ4=z¨4+c4z4z4+δ42η4+d^̇4=ḟ4+g4u2′+ḋ4−x¨4d+c4z4z4+δ42η4+d^̇4.
The slide mode controller can be obtained as follows:(39)u2=−g4−1∫k4,1s4+k4,2sgns4dt+f4−ẋ4d+c4z4z4+δ42η4+d^4.


## 3.1.1. Controller for the Velocity Subsystem

The velocity tracking error can be defined as(22)z1=x1−x1d.A new sliding mode is chosen as(23)s1=ż1+c1z1z1+δ12η1+d^1,where d^1 represents the disturbance estimation of d1.The adaptive parameter is chosen as(24)δ̇1=−λ1c1z1δ1η1z1+δ12η1.When the differentiation of tracking error is taken into the dynamics, the equation can be obtained as(25)ṡ1=z¨1+c1z1z1+δ12η1+d^̇1=ḟ1+g1u1′+ḋ1−x¨1d+c1z1z1+δ12η1+d^̇1.The command of throttle setting can be designed as(26)u1=−g1−1∫k1,1s1+k1,2sgns1dt+f1−ẋ1d+c1z1z1+δ12η1+d^1,where k1,1 and k1,2 represent the controller parameters, respectively, which determine the convergence rate of this subsystem.


## 3.1.2. Controller for Altitude Subsystem

The back-stepping method is used to design the controller for altitude subsystem.Step 1
(the control input design for the flight path angle). The tracking error in this step can be defined as(27)z2=x2−x2d.
For making the tracking error converge to zero, the sliding mode surface can be designed as(28)s2=ż2+c2z2z2+δ22η2+d^2,where d^2 is the disturbance estimation of d2.
The adaptive parameter is chosen as(29)δ̇2=−λ2c2z2δ2η2z2+δ22η2.
If the differentiation is taken into the sliding mode, it can be obtained as(30)ṡ2=z¨2+c2z2z2+δ22η2+d^̇2=ḟ2+g2x3′+ḋ2−x¨2d+c2z2z2+δ22η2+d^̇2.
It can be obtained as(31)x3d=−g2−1∫k2,1s2+k2,2sgns2dt+f2−ẋ2d+c2z2z2+δ22η2+d^2.Step 2
(the control input design for the pitching angle). The tracking error and sliding mode surface can be defined as follows:(32)z3=x3−x3d,s3=ż3+c3z3z3+δ32η3+d^3,where d^3 is the disturbance estimation of d3.
The adaptive parameter is chosen as(33)δ̇3=−λ3c3z3δ3η3z3+δ32η3.
The equation can be transformed when the derivation ofs3 is taken into the dynamics
(34)ṡ3=z¨3+c3z3z3+δ32η3+d^̇3=ḟ3+g3x4′+ḋ3−x¨3d+c3z3z3+δ32η3+d^̇3.
It can be obtained as(35)x4d=−g3−1∫k3,1s3+k3,2sgns3dt+f3−ẋ3d+c3z3z3+δ32η3+d^3.Step 3
(the control input design for the pitching rate angle). The tracking errorz4 and sliding mode surface s4 in this step can be designed as follows:
(36)z4=x4−x4d,s4=ż4+c4z4z4+δ42η4+d^4,where d^4 is the disturbance estimation of d4.
The adaptive parameter is chosen as(37)δ̇4=−λ4c4z4δ4η4z4+δ42η4.
The equation can be transformed when the derivation ofz4 is taken into the tracking error.
(38)ṡ4=z¨4+c4z4z4+δ42η4+d^̇4=ḟ4+g4u2′+ḋ4−x¨4d+c4z4z4+δ42η4+d^̇4.
The slide mode controller can be obtained as follows:(39)u2=−g4−1∫k4,1s4+k4,2sgns4dt+f4−ẋ4d+c4z4z4+δ42η4+d^4.


## 3.2. Nonlinear Disturbance Observer Design

Inspired by the works of Zhang et al. [26], Liu et al. [27], and Tian et al. [28], a nonlinear disturbance observer is designed as follows.


### 3.2.1. NDO for Velocity Subsystem

A nonlinear disturbance observer for (1) is designed as
(40)x^̇1d^̇1=A12100x^1d^1+A110x3−x2+B10u1−L11L12x^1−x1,A11=−0.0043378ρx12S2m,A12=0,B1=0.00336βcρx12S2m,where L11=A11+2Λ1, L12=Λ12, and Λ1>0.


### 3.2.2. NDO for Altitude Subsystem

Similarly, an NDO for (3) is obtained as
(41)h^̇d^̇h=H11100h^d^h−H21H22h^−h,H11=xc,where H21=H11+2ΛH, H22=ΛH2, and ΛH>0.A nonlinear disturbance observer for (2) is designed as
(42)x^̇2d^̇2=A22100x^2d^2+A210x3−L21L22x^2−x2,A21=−0.6427ρx12S2mx1,A22=0.6427ρx12S2mx1,where L21=A21+2Λ2, L22=Λ22, and Λ2>0.A nonlinear disturbance observer for (4) is designed as
(43)x^̇3d^̇3=A31100x^3d^3+A320x4−L31L32x^3−x3,A31=0,A32=1,where L31=A31+2Λ3, L32=Λ32, and Λ3>0.Similarly, a nonlinear disturbance observer for (5) is designed as
(44)x^̇4d^̇4=A42100x^4d^4+A410x3+B20u2−L41L42x^4−x4,A41=ρx12Sc¯2Iyy0.036617−ce,A42=−0.2289ρx1Sc¯24Iyy,B2=ceρx12Sc¯2Iyy,where L41=A41+2Λ4, L42=Λ42, and Λ4>0.


## 3.2.1. NDO for Velocity Subsystem

A nonlinear disturbance observer for (1) is designed as
(40)x^̇1d^̇1=A12100x^1d^1+A110x3−x2+B10u1−L11L12x^1−x1,A11=−0.0043378ρx12S2m,A12=0,B1=0.00336βcρx12S2m,where L11=A11+2Λ1, L12=Λ12, and Λ1>0.


## 3.2.2. NDO for Altitude Subsystem

Similarly, an NDO for (3) is obtained as
(41)h^̇d^̇h=H11100h^d^h−H21H22h^−h,H11=xc,where H21=H11+2ΛH, H22=ΛH2, and ΛH>0.A nonlinear disturbance observer for (2) is designed as
(42)x^̇2d^̇2=A22100x^2d^2+A210x3−L21L22x^2−x2,A21=−0.6427ρx12S2mx1,A22=0.6427ρx12S2mx1,where L21=A21+2Λ2, L22=Λ22, and Λ2>0.A nonlinear disturbance observer for (4) is designed as
(43)x^̇3d^̇3=A31100x^3d^3+A320x4−L31L32x^3−x3,A31=0,A32=1,where L31=A31+2Λ3, L32=Λ32, and Λ3>0.Similarly, a nonlinear disturbance observer for (5) is designed as
(44)x^̇4d^̇4=A42100x^4d^4+A410x3+B20u2−L41L42x^4−x4,A41=ρx12Sc¯2Iyy0.036617−ce,A42=−0.2289ρx1Sc¯24Iyy,B2=ceρx12Sc¯2Iyy,where L41=A41+2Λ4, L42=Λ42, and Λ4>0.


## 4. Stability Analysis

### 4.1. Convergence of SMC

The stability of the closed control system is proved by the Lyapunov stability theory.Firstly, a Lyapunov function is chosen as(45)F=F1+F2+F3+F4=12s12+12s22+12s32+12s42.The derivation of the Lyapunov function is obtained as(46)Ḟ=Ḟ1+Ḟ2+Ḟ3+Ḟ4=s1ṡ1+s2ṡ2+s3ṡ3+s4ṡ4.Step 1
(stability analysis for the velocity subsystem). The derivation of the Lyapunov function for system (11) can be obtained as
(47)Ḟ1=−k1,1s1−k1,2sgns1−ḟ1+x¨1d−c1z1z1+δ12η1′−d^1+ḟ1+ḋ1−x¨1d+c1z1z1+δ12η1′+d^1s1=−k1,1s12−k1,2s1+ḋ1s1.
If the parameters of the controller (26) is chosen to meet k1,2≥D1,2≥ḋ1, it can be obtained as
(48)Ḟ1≤−k1,1s12≤0.Step 2
(stability analysis for the angles)(a)
Flight path angle:(49)Ḟ2=s2ṡ2=−k2,1s2−k2,2sgns2−ḟ2+x¨2d−c2z2z2+δ22η2′−d^2+ḟ2+ḋ2−x¨2d+c2z2z2+δ22η2′+d^2s2=−k2,1s22−k2,2s2+ḋ2s2.
Ifk2,2≥D2,2≥ḋ2 is satisfied, it can be obtained as
(50)Ḟ2≤−k2,1s22≤0.
(b)
Pitching angle:(51)Ḟ3=−k3,1s3−k3,2sgns3−ḟ3+x¨3d−c3z3z3+δ32η3′−d^3+ḟ3+ḋ3−x¨3d+c3z3z3+δ32η3′+d^3s3=−k3,1s32−k3,2s3+ḋ3s3.
Ifk3,2≥D3,2≥ḋ3 is satisfied, it can be obtained as
(52)Ḟ3≤−k3,1s32≤0.
(c)
Pitching rate:(53)Ḟ4=−k4,1s4−k4,2sgns4−ḟ4+x¨4d−c4z4z4+δ42η4′−d^4+ḟ4+ḋ4−x¨4d+c4z4z4+δ42η4′+d^4s4=−k4,1s42−k4,2s4+ḋ4s4.
Ifk4,2≥D4,2≥ḋ4 is satisfied, it can be obtained as
(54)Ḟ≤−k4,1s42≤0.
The Lyapunov stability is proved.(55)F=F1+F2+F3+F4=12s12+12s22+12s32+12s42≥0,Ḟ=Ḟ1+Ḟ2+Ḟ3+Ḟ4=s1ṡ1+s2ṡ2+s3ṡ3+s4ṡ4≤−k1,1s12−k2,1s22−k3,1s32−k4,1s42.


### 4.2. Convergence of Tracking Error

The Lyapunov function is chosen as(56)W=12z12+12λ1δ12+12h~2+12z32+12λ2δ22+12z42+12λ3δ32+12z52+12λ4δ42,where z1, h~, z3, z4, and z5 donate the tracking error, respectively.The derivation of the Lyapunov function can be obtained as(57)Ẇ=z1ż1+1λ1δ1δ̇1+h~h~̇+z3ż3+1λ2δ2δ̇2+z4ż4+12λ3δ3δ̇3+z5ż5+12λ4δ4δ̇4.Step 1
(stability analysis for velocity). The Lyapunov function for system (11) is chosen as
(58)W1=12z12+12λ1δ12.
The derivation of the Lyapunov function can be obtained as(59)Ẇ1=z1ż1+1λ1δ1δ̇1=−c1z12z1+δ12η1−d^1z1+1λ1δ1δ̇1=−c1z1+c1z1δ12η1z1+δ12η1−d^1z1−c1z1δ12η1z1+δ12η1=−c1z1−d^1z1.
Thec1 is chosen to satisfy the inequation
(60)c1≥D1,1≥d^1.
It can be obtained as(61)Ẇ1=−c1z1−d^1z1≤−σ1z1,where σ1=c1−D1,1 is a positive constant and Ẇ1≤0 is satisfied.Step 2
(stability analysis for the altitude subsystem).(a)
Altitude:(62)Wh=12h~2.The derivation ofWh can be obtained as
(63)Ẇh=h~x1−khh~−x1sinx2−x2+ḣdx11+x1sinx2−x2−ḣd=−khh~2,where kh is a positive constant and Ẇh≤0 is satisfied.
(b)
Flight path angle: the Lyapunov function is chosen as(64)W2=12z22+12λ2δ22.The derivation ofW2 can be obtained as
(65)Ẇ2=z2ż2+1λ2δ2δ̇2=−c2z22z2+δ22η2−d^2z2+1λ2δ2δ̇2=−c2z2+c2z2δ22η2z2+δ22η2−d^2z2−c2z2δ22η2z2+δ22η2=−c2z2−d^2z2.The parameterc2 is chosen to satisfy
(66)c2≥D2,1≥d^2,Ẇ2≤−σ2z2,where σ2=c2−D2,1 is a positive constant and Ẇ2≤0 is satisfied.
(c)
Pitching angle: the Lyapunov function is chosen as(67)W3=12z32+12λ3δ32.The derivation ofW3 can be obtained as
(68)Ẇ3=z3ż3+1λ3δ3δ̇3=−c3z32z3+δ32η3−d^3z3+1λ3δ3δ̇3=−c3z3+c3z3δ32η3z3+δ32η3−d^3z3−c3z3δ32η3z3+δ32η3=−c3z3−d^3z3.If the parametersc3 and d^3 satisfy c3≥D3,1≥d^3, it can be obtained as
(69)Ẇ3=−c3z3−d^3z3≤−σ3z3,where σ3=c3−D3,1 is a positive constant.
(d)
Pitching rate: the Lyapunov function is chosen as(70)W4=12z42+12λ4δ42.The derivation ofW4 can be obtained as
(71)Ẇ4=z4ż4+1λ4δ4δ̇4=−c4z42z4+δ42η4−d^4z4+1λ4δ4δ̇4=−c4z4+c4z4δ42η4z4+δ42η4−d^4z4−c4z4δ42η4z4+δ42η4=−c4z4−d^4z4.If thec4 is chosen to satisfy c4≥D4,1≥d^4, it can be obtained as
(72)Ẇ4≤−σ4z4,where σ4=c4−D4,1 is a positive constant. Thus, Ẇ4≤0 is satisfied.
(73)W=12z12+12λ1δ12+12z22+12z32+12λ2δ22+12z42+12λ3δ32+12z52+12λ4δ42,Ẇ=z1ż1+1λ1δ1δ̇1+z2ż2+z3ż3+1λ2δ2δ̇2+z4ż4+12λ3δ3δ̇3+z5ż5+12λ4δ4δ̇4,≤−σ1z1−khh~2−σ2z2−σ3z3−σ4z4.Then it can be obtained as(74)W≥0,Ẇ≤0.The convergence of tracking error is proved now.


## 4.1. Convergence of SMC

The stability of the closed control system is proved by the Lyapunov stability theory.Firstly, a Lyapunov function is chosen as(45)F=F1+F2+F3+F4=12s12+12s22+12s32+12s42.The derivation of the Lyapunov function is obtained as(46)Ḟ=Ḟ1+Ḟ2+Ḟ3+Ḟ4=s1ṡ1+s2ṡ2+s3ṡ3+s4ṡ4.Step 1
(stability analysis for the velocity subsystem). The derivation of the Lyapunov function for system (11) can be obtained as
(47)Ḟ1=−k1,1s1−k1,2sgns1−ḟ1+x¨1d−c1z1z1+δ12η1′−d^1+ḟ1+ḋ1−x¨1d+c1z1z1+δ12η1′+d^1s1=−k1,1s12−k1,2s1+ḋ1s1.
If the parameters of the controller (26) is chosen to meet k1,2≥D1,2≥ḋ1, it can be obtained as
(48)Ḟ1≤−k1,1s12≤0.Step 2
(stability analysis for the angles)(a)
Flight path angle:(49)Ḟ2=s2ṡ2=−k2,1s2−k2,2sgns2−ḟ2+x¨2d−c2z2z2+δ22η2′−d^2+ḟ2+ḋ2−x¨2d+c2z2z2+δ22η2′+d^2s2=−k2,1s22−k2,2s2+ḋ2s2.
Ifk2,2≥D2,2≥ḋ2 is satisfied, it can be obtained as
(50)Ḟ2≤−k2,1s22≤0.
(b)
Pitching angle:(51)Ḟ3=−k3,1s3−k3,2sgns3−ḟ3+x¨3d−c3z3z3+δ32η3′−d^3+ḟ3+ḋ3−x¨3d+c3z3z3+δ32η3′+d^3s3=−k3,1s32−k3,2s3+ḋ3s3.
Ifk3,2≥D3,2≥ḋ3 is satisfied, it can be obtained as
(52)Ḟ3≤−k3,1s32≤0.
(c)
Pitching rate:(53)Ḟ4=−k4,1s4−k4,2sgns4−ḟ4+x¨4d−c4z4z4+δ42η4′−d^4+ḟ4+ḋ4−x¨4d+c4z4z4+δ42η4′+d^4s4=−k4,1s42−k4,2s4+ḋ4s4.
Ifk4,2≥D4,2≥ḋ4 is satisfied, it can be obtained as
(54)Ḟ≤−k4,1s42≤0.
The Lyapunov stability is proved.(55)F=F1+F2+F3+F4=12s12+12s22+12s32+12s42≥0,Ḟ=Ḟ1+Ḟ2+Ḟ3+Ḟ4=s1ṡ1+s2ṡ2+s3ṡ3+s4ṡ4≤−k1,1s12−k2,1s22−k3,1s32−k4,1s42.


## 4.2. Convergence of Tracking Error

The Lyapunov function is chosen as(56)W=12z12+12λ1δ12+12h~2+12z32+12λ2δ22+12z42+12λ3δ32+12z52+12λ4δ42,where z1, h~, z3, z4, and z5 donate the tracking error, respectively.The derivation of the Lyapunov function can be obtained as(57)Ẇ=z1ż1+1λ1δ1δ̇1+h~h~̇+z3ż3+1λ2δ2δ̇2+z4ż4+12λ3δ3δ̇3+z5ż5+12λ4δ4δ̇4.Step 1
(stability analysis for velocity). The Lyapunov function for system (11) is chosen as
(58)W1=12z12+12λ1δ12.
The derivation of the Lyapunov function can be obtained as(59)Ẇ1=z1ż1+1λ1δ1δ̇1=−c1z12z1+δ12η1−d^1z1+1λ1δ1δ̇1=−c1z1+c1z1δ12η1z1+δ12η1−d^1z1−c1z1δ12η1z1+δ12η1=−c1z1−d^1z1.
Thec1 is chosen to satisfy the inequation
(60)c1≥D1,1≥d^1.
It can be obtained as(61)Ẇ1=−c1z1−d^1z1≤−σ1z1,where σ1=c1−D1,1 is a positive constant and Ẇ1≤0 is satisfied.Step 2
(stability analysis for the altitude subsystem).(a)
Altitude:(62)Wh=12h~2.The derivation ofWh can be obtained as
(63)Ẇh=h~x1−khh~−x1sinx2−x2+ḣdx11+x1sinx2−x2−ḣd=−khh~2,where kh is a positive constant and Ẇh≤0 is satisfied.
(b)
Flight path angle: the Lyapunov function is chosen as(64)W2=12z22+12λ2δ22.The derivation ofW2 can be obtained as
(65)Ẇ2=z2ż2+1λ2δ2δ̇2=−c2z22z2+δ22η2−d^2z2+1λ2δ2δ̇2=−c2z2+c2z2δ22η2z2+δ22η2−d^2z2−c2z2δ22η2z2+δ22η2=−c2z2−d^2z2.The parameterc2 is chosen to satisfy
(66)c2≥D2,1≥d^2,Ẇ2≤−σ2z2,where σ2=c2−D2,1 is a positive constant and Ẇ2≤0 is satisfied.
(c)
Pitching angle: the Lyapunov function is chosen as(67)W3=12z32+12λ3δ32.The derivation ofW3 can be obtained as
(68)Ẇ3=z3ż3+1λ3δ3δ̇3=−c3z32z3+δ32η3−d^3z3+1λ3δ3δ̇3=−c3z3+c3z3δ32η3z3+δ32η3−d^3z3−c3z3δ32η3z3+δ32η3=−c3z3−d^3z3.If the parametersc3 and d^3 satisfy c3≥D3,1≥d^3, it can be obtained as
(69)Ẇ3=−c3z3−d^3z3≤−σ3z3,where σ3=c3−D3,1 is a positive constant.
(d)
Pitching rate: the Lyapunov function is chosen as(70)W4=12z42+12λ4δ42.The derivation ofW4 can be obtained as
(71)Ẇ4=z4ż4+1λ4δ4δ̇4=−c4z42z4+δ42η4−d^4z4+1λ4δ4δ̇4=−c4z4+c4z4δ42η4z4+δ42η4−d^4z4−c4z4δ42η4z4+δ42η4=−c4z4−d^4z4.If thec4 is chosen to satisfy c4≥D4,1≥d^4, it can be obtained as
(72)Ẇ4≤−σ4z4,where σ4=c4−D4,1 is a positive constant. Thus, Ẇ4≤0 is satisfied.
(73)W=12z12+12λ1δ12+12z22+12z32+12λ2δ22+12z42+12λ3δ32+12z52+12λ4δ42,Ẇ=z1ż1+1λ1δ1δ̇1+z2ż2+z3ż3+1λ2δ2δ̇2+z4ż4+12λ3δ3δ̇3+z5ż5+12λ4δ4δ̇4,≤−σ1z1−khh~2−σ2z2−σ3z3−σ4z4.Then it can be obtained as(74)W≥0,Ẇ≤0.The convergence of tracking error is proved now.


## 5. Simulation

In this section, the effectiveness and performance of the developed controller are verified by simulations. The longitudinal model is considered under its cruise flight condition. The initial values are chosen asV=15060ft/s, h=110000ft, γ=0rad, q=0rad/s, and θ=0.01rad, respectively.The controller parameters are chosen as(75)kh=2,λ1=0.005,c1=15.7,η1=0.1,λ2=0.3,c2=0.5,η2=0.007,λ3=0.1,c3=11.2,η3=0.01,λ4=0.05,c4=8.7,η4=0.01,Λ1=2.6,ΛH=2.2,Λ2=3.1,Λ3=3.1,Λ4=3.3.The external disturbances are chosen to be5×10−4cos0.5t, 5×10−4cos0.5t, 1×10−2cos0.5t, and 5×10−3cos0.5t for the system (11) and (16).In this part, the square wave and step are applied in command generator, respectively.Case 1.
The square wave is adopted to prove the effectiveness of controller. The uncertainties are added into this system. The simulation results are shown in Figures1 and 2.Figure 1
Velocity command, response, and controller. The uncertainty terms are added into the system.
(a)
(b)
(c)
(d)
(e)
(f)Figure 2
Altitude command, response, and controller. The uncertainty terms are added into the system.
(a)
(b)
(c)
(d)
(e)
(f)It is obtained from Figure1 that the velocity can track the given command well while the altitude is stable. Meanwhile, as shown in Figure 2, the altitude can track the reference command well and the velocity is stable.Case 2.
The proposed controller is compared to the back-stepping method [11] and back-stepping with NDO [29]. The external disturbances are added into the model at t=150s. The simulation results are shown in Figures 3–8.Figure 3
Altitude command, response, and controller. The uncertainty terms and external disturbances are added into the system.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)Figure 4
Lumped disturbances estimated by NDO.
(a)
(b)
(c)
(d)
(e)Figure 5
Velocity command, response, and controller. The uncertainty terms and external disturbances are added into the system.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)Figure 6
Lumped disturbance estimated by NDO.
(a)
(b)
(c)
(d)
(e)Figure 7
Command, response, and controller. The uncertainty terms and external disturbances are added into the system.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)Figure 8
Lumped disturbance estimated by nonlinear disturbance observer.
(a)
(b)
(c)
(d)
(e)The performance of the controller is proved with the existence of uncertainties and external disturbances. Att=150s, the external disturbances are taken into the system. Compared with other methods mentioned in Case 2, the performance of GHV under the proposed controller is better.Case 3.
In order to verify the effectiveness of the controller against parameter perturbation, the coefficients of deflection are chosen asK=0.8, K=1.0, and K=1.2 while the external disturbances are taken at t=150s. The simulation results are shown in Figures 9 and 10.Figure 9
Altitude command, response, and controller. The uncertainty terms and external disturbance are added into the model.
(a)
(b)
(c)
(d)
(e)
(f)
(g)
(h)
(i)
(j)Figure 10
Lumped disturbance estimated by nonlinear disturbance observer. The parameters deflection, uncertainty terms, and external disturbance are added into the model.
(a)
(b)
(c)
(d)
(e)The system under the proposed controller exhibits good performance against both positive and negative parameter perturbation.


## 6. Conclusion

A new adaptive sliding mode control method combined with the nonlinear disturbance observer is proposed to solve the tracking problem for the longitudinal model of a GHV. The compute explosion problem is solved by utilizing the new adaptive control algorithm. In addition, the proposed controller for a GHV model has achieved favorable results in terms of robustness without the cost of sacrificing the nominal control performance. Finally, the performance of the proposed control algorithm has been demonstrated by simulation results.



---

*Source: 6978170-2018-02-21.xml*