# Multivariable Super Twisting Based Robust Trajectory Tracking Control for Small Unmanned Helicopter

Authors: Xing Fang; Aiguo Wu; Yujia Shang; Chunyan Du
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

This paper presents a highly robust trajectory tracking controller for small unmanned helicopter with model uncertainties and external disturbances. First, a simplified dynamic model is developed, where the model uncertainties and external disturbances are treated as compounded disturbances. Then the system is divided into three interconnected subsystems: altitude subsystem, yaw subsystem, and horizontal subsystem. Second, a disturbance observer based controller (DOBC) is designed based upon backstepping and multivariable super twisting control algorithm to obtain robust trajectory tracking property. A sliding mode observer works as an estimator of the compounded disturbances. In order to lessen calculative burden, a first-order exact differentiator is employed to estimate the time derivative of the virtual control. Moreover, proof of the stability of the closed-loop system based on Lyapunov method is given. Finally, simulation results are presented to illustrate the effectiveness and robustness of the proposed flight control scheme.


---

## Body

## 1. Introduction

The helicopters have many advantages over ordinary fixed-wing vehicles. With the capability of hovering, vertical taking-off and landing, high levels of agility, and maneuverability, unmanned helicopters have been used in urban and mountainous environment. They have wide application prospects in the field of military and civilian. However, the unmanned helicopter system is a nonlinear, underactuated, and strong coupled system. Consequently, it is a challenging research area to design high-performance controllers [1, 2].Generally, control methods for unmanned helicopters can be classified into two categories: linear controllers and nonlinear controllers. Traditional methods are based on linear model, such as PID [3], LQR [4], H∞ [5, 6], and μ-synthesis [7]. Nevertheless these linear control methods are only effective when the states of the unmanned helicopter system are near the equilibrium points. In order to overcome these shortcomings, many nonlinear control methods are developed, such as feedback linearization [8], model predictive control [9], intelligent control [10], backstepping control [11–14], and sliding mode control [15–19]. Among these methods, backstepping control algorithm has drawn much attention of many researchers. Backstepping designs can avoid cancellation of useful nonlinearities and often introduce additional nonlinear terms to improve transient performance. Moreover, backstepping is an effective control algorithm for underactuated systems as unmanned helicopter system [13]. The key idea behind the backstepping design technique is that some virtual control inputs are introduced to counterbalance the number of inputs and outputs. However, exact knowledge of the plant model is necessary for backstepping control design. It is practically impossible to obtain the exact model of unmanned helicopter system. Sliding mode control algorithm is known as a robust control method [15, 16]. It is able to make the system keep robustness and stability even in the presence of disturbances. Among all of the sliding mode control algorithms, super twisting control algorithm is the most popular one [17–19]. This algorithm possesses the property of finite time convergence. And it can alleviate chattering phenomena, because the switching control part is hidden into the derivative of the sliding mode variable [20]. However, traditional super twisting control algorithm only keeps robustness with matched disturbances and only can deal with single-input single-output systems.The combination of backstepping and multivariable super twisting control algorithms makes it possible to control the unmanned helicopters with the high-order, multiple-input multiple-output, underactuated, and disturbance rejection problem effectively. A sliding mode observer is developed to estimate the compounded disturbances including matched and unmatched disturbances [21]. By integrating the observer output into the controller, the compounded disturbances can be compensated for to improve the robust performance. Thus, this disturbance observer based control (DOBC) scheme will be robust with both matched and unmatched disturbances. Furthermore, a first-order exact differentiator is employed to estimate the time derivative of the virtual control, which can avoid large calculation load [22]. It is proved by Lyapunov technique that the closed-loop tracking error is globally asymptotically stable.The organization of this paper is as follows. Section2 briefly recalls the full dynamic model of small unmanned helicopters with compounded disturbances. In Section 3, the complete design procedure of the disturbance observer based controller (DOBC) is presented. The stability analysis of the proposed controller is carried out in Section 4. In Section 5, numerical simulations are conducted to demonstrate the robust performance of the proposed control method. Section 6 presents the conclusion.


## 2. Helicopter Model

The small unmanned helicopter is a highly nonlinear, strong coupled, and underactuated system with model uncertainties and external disturbances [2]. It is difficult to obtain a complete model for its high order and large number of parameters. Moreover, it is unmanageable for us to design a practical controller. Therefore, this paper treats the unmanned helicopter as a six-degrees-of-freedom rigid-body model with simplified force and moment generation process and considers model uncertainties and external disturbances as compounded disturbances [9]. Thus, we will proceed on the flight control design based on the simplified unmanned helicopter model.The first step to the development of the rigid-body equations of motion is the definition of two reference frames. The first one is the inertial coordinate defined asN={On,xn,yn,zn}. The second is the body fixed reference frame defined as B={Ob,xb,yb,zb}. The small unmanned helicopter system can be seen in Figure 1.Figure 1
Small unmanned helicopter system model schematic diagram.The rigid-body dynamics of the unmanned helicopter can be expressed as follows:(1)P˙=V,V˙=ge3+1mRΘf+fdV,Θ˙=ΠΘΩ,Ω˙=-J-1Ω×JΩ+J-1τ+τdΩ,where g is the acceleration due to gravity, m is the total mass of the unmanned helicopter, J=diag(Jxx,Jyy,Jzz) is the diagonal inertia matrix, and e3=001T. P=xyzT and V=uvwT represent the position and velocity in the inertial frame, and Θ=ϕθψT and Ω=pqrT represent the Euler angles and angular rates in the body frame. The rotation matrix R(Θ) and the attitude kinematic matrix Π(Θ) are defined, respectively, as follows:(2)RΘ=CθCψSϕSθCψ-CϕSψCϕSθCψ+SϕSψCθSψSϕSθSψ+CϕCψCϕSθSψ-SϕCψ-SθSϕCθCϕCθ(3)ΠΘ=1SϕTθCϕTθ0Cϕ-Sϕ0SϕCθCϕCθ,where the compact notation C denotes cos⁡(·), S denotes sin(·), and T denotes tan(·).f and τ are the external force and moment vectors, generated by the main rotor thrust and the tail rotor thrust, which are the main powers of the unmanned helicopter. fdV and τdΩ are normalized force and moment disturbances that include internal couplings, unmodelled dynamics, and wind gusts. They are defined, respectively, as(4)f=00Tm(5)τ=JLaa+LbbMaa+MbbNrr+Ncolδcol+Npedδped(6)fdV=mfdufdvfdwT(7)τdΩ=JτdpτdqτdrT,where Tm is main rotor thrust controlled by collective pitch δcol: Tm≈m(-g+Zww+Zcolδcol), and δped is the collective pitch of the tail rotor. The parameters La, Lb, Ma, Mb, Nr, Ncol, Nped can be obtained by system identification. The longitudinal flapping angle and lateral flapping angle a, b cannot be measured directly, but they are controlled by lateral and longitudinal cyclic δlat, δlon as follows:(8)a=-τmq+Alatδlat+Alonδlonb=-τmp+Blatδlat+Blonδlon,where the parameters τm, Alat, Alon, Blat, Blon also can be obtained by system identification.Substituting (8) into (5), a more compact form of the torque can be obtained as follows:(9)τ=JAΩ+Bu,where(10)A=-τmLb-τmLa0-τmMb-τmMa000NrB=0LlonLlat00MlonMlat0Ncol00Nped.The parameters in these matrices can be given as follows:(11)Llon=LaAlon+LbBlonLlat=LaAlat+LbBlatMlon=MaAlon+MbBlonMlat=MaAlat+MbBlat.The modified unmanned helicopter model combining (1)–(11) can be described in the following form:(12)P˙=V(13)V˙=ge3+RΘe3-g+Zww+Zcolδcol+dV(14)Θ˙=ΠΘΩ(15)Ω˙=-J-1Ω×JΩ+AΩ+Bu+dΩ,where x=PTVTΘTΩTT is the helicopter state vector, u=δcolδlonδlatδpedT is the control input vector, and dV=dudvdwT=R(Θ)fdV/m and dΩ=dpdqdrT=J-1τdΩ are the compounded disturbances vector acting on the unmanned helicopter.For convenience of controller design, the following formula will be used:(16)R˙Θ=RΘSΩ,where S(Ω) is a skew symmetric matrix, and it can be defined as follows:(17)SΩ=0-rqr0-p-qp0.Actually, (16) has the same meaning as (14).According to the feature of the unmanned helicopter model, the system can be divided into three interconnected subsystems: altitude subsystem, yaw subsystem, and horizontal subsystem. The controller for each subsystem can be designed separately. Consider(18)S1:z˙=ww˙=g+r33-g+Zww+Zcolδcol+dw(19)S2:ψ˙=SϕCθq+CϕCθrr˙=-Iyy-IxxIzzpq+Nrr+Ncolδcol+Npedδped+dr(20)S3:P˙1=V1V˙1=R1-g+Zww+Zcolδcol+dV1R˙1=Π1Ω1Ω˙1=f1Ω1+A1Ω1+B1u1+dΩ1,where P1=xyT, V1=uvT, R1=r13r23T, Ω1=pqT, u1=δlonδlatT, dV1=dudvT, dΩ1=dpdqT, Π1=-r12r11-r22r21, f1Ω1=[-Izz-Iyy/Ixxqr -Ixx-Izz/Iyypr]T, A1=-τmLb-τmLa-τmMb-τmMa, and B1=LlonLlatMlonMlat, and ri,j represents the element of ith row and jth column of the rotation matrix R(Θ).


## 3. Controller Design for Small Unmanned Helicopter

### 3.1. Modified Multivariable Super Twisting Algorithm

Here, a modified multivariable super twisting algorithm is used for our controller design. In order to make the multivariable super twisting algorithm [23] more suitable for the small unmanned helicopter, some modifications are made as follows.Consider the multivariable system(21)x˙1=-λx1x11/2+x2+ρ1t,x1x˙2=-αx1x1+ρ2t,where x1, x2∈Rm, λ, and α are positive constants and ρ1(t,x1), ρ2(t) are perturbations.Assumption 1.
The perturbationsρ1(t,x1) and ρ2(t) are globally bounded by(22)ρ1≤δ1x11/2ρ2≤δ2for some constants δ1, δ2>0.Theorem 2.
Under Assumption1, if the parameters λ and α satisfy(23)λ>max⁡2δ1,12δ1+14δ12+2δ2α>2δ1λ3+1.125δ12+3δ2λ2+3δ1δ2λ+2δ22λλ-2δ1all the trajectories of system (21) will converge to origin in finite time.Analysis and Proof. The multivariable super twisting algorithm in Theorem 2 is developed based on the proposal in [23]. Some modifications are made to this algorithm. First, it is assumed that the perturbation ρ1(t,x1) satisfies ρ1≤δ1x11/2 instead of ρ1≤δ1x1 in [23]. Second, the linear control terms are removed in multivariable system (21).The stability analyses of these two algorithms are similar. And the details of the proof can be found in article [23]. So we only give the outline of the stability analysis below.We define a Lyapunov function candidate for system (21) as follows:(24)Vx1,x2=2αx1+12x2Tx2+12λx1x11/2-x2Tλx1x11/2-x2.Define a vector ς=col(x11/2,x2). Considering system (21) and perturbations (22), the time derivative of (24) can be obtained as follows:(25)V˙≤-1x11/2ςTQς,where(26)Q=λα+λ32-2α+λ22δ1-λδ2∗-λ22+34λδ1+δ2λ2.If Q>0, then V˙<0. It is easy to see that this is the case if the parameters satisfy(27)λ>max⁡2δ1,12δ1+14δ12+2δ2.α>2δ1λ3+1.125δ12+3δ2λ2+3δ1δ2λ+2δ22λλ-2δ1Define ξ=col(x1/x11/2,x2), and note that ς=ξ for all values of x1 and x2. So we can derive V=ξTPξ≤λmax⁡(P)ξ2 and V˙≤-1/x11/2λmin⁡(Q)ξ2, where P is an appropriate symmetric positive definite matrix. Finally, we can get that(28)V˙≤-γV1/2,where γ=λmin⁡(Q)λmin⁡(P)/λmax⁡(P).Therefore,(x1(t),x2(t)) will converge to (x1,x2)=(0,0). And x˙1(t) will converge to x˙1=0 in finite time, because the right hand of the first equation in (21) equals zero when (x1,x2)=(0,0) and ρ1(t,0)=0.Remark 3.
The proposed multivariable super twisting algorithm is developed by modifying the algorithm in [23]. Now we will clarify the motivations for these modifications as follows. First, the starting points of these two papers are different. The article [23] is a purely theoretical research work, whose goal is to propose a new algorithm theoretically without considering the particular practical application problem. However, the fundamental purpose of our paper is to develop an appropriate algorithm to control the unmanned helicopters effectively. Thus, we need to modify the existing algorithm to make it applicable for unmanned helicopters. Second, in our helicopter control system, the actual meaning of ρ1(t,x1) is the disturbance estimation error, which is a very small perturbation rather than a linearly growing one. Therefore, it will be reasonable to suppose that ρ1(t,x1) satisfies ρ1≤δ1x11/2 instead of ρ1≤δ1x1 in [23]. Moreover, when x1 is small (x1<1), we can derive δ1x11/2>δ1x1. Therefore, the proposed algorithm in our paper can tolerate stronger perturbations near the origin than the one in [23]. Third, since the perturbations ρ1(t,x1) and ρ2(t) both are not linearly growing ones, it is not necessary to use the linear control terms in system (21), which deal with the linearly growing perturbations effectively [18, 23]. The proposed algorithm is able to deal with the strong perturbations near the origin, such as ρ1(t,x1) and ρ2(t) in this situation. And the modified algorithm needs fewer parameters than the one in [23]. Therefore, it is more convenient to be applied for the unmanned helicopter system. Moreover, the simulation results in Section 5 will support our analysis that the modified multivariable super twisting algorithm is very effective in controlling the unmanned helicopter.


### 3.2. Disturbance Observer Based Controller (DOBC) Design

In this section, a disturbance observer based controller (DOBC) is proposed for the unmanned helicopter system. The composite controller structure is illustrated in Figure2.Figure 2
Controller structure.The main control objective of this paper is to design the control inputsu=δcolδlonδlatδpedT in order to track the reference trajectories of xd(t)yd(t)zd(t)T, ψd(t) and to stabilize the pitch and roll angles θ(t), φ(t) in the presence of compounded disturbances. To deal with the subsequent control development, some assumptions are made as follows.Assumption 4.
The reference trajectories are available. Moreover,zd(t) and ψd(t) are C2 functions of time, and xd(t) and yd(t) are C4 functions of time.Assumption 5.
It is assumed thatθt<π/2 and ϕt<π/2 for t≥0.Obviously, this assumption can ensure the attitude kinematic matrixΠ(Θ) defined in (3) will not be singularity [12–14].The detailed design process is described as follows.


#### 3.2.1. Multivariable Super Twisting Based Observer

In the controller design procedure, the estimated disturbancesd^V=d^ud^vd^wT and d^Ω=d^pd^qd^rT will be used, which are estimated by multivariable super twisting observers.Considering the following dynamic models:(29)V˙=ge3+RΘe3-g+Zww+Zcolδcol+dV(30)Ω˙=-J-1Ω×JΩ+AΩ+Bu+dΩ,the state-like observers are designed as follows:(31)V^˙=ge3+RΘe3-g+Zww+Zcolδcol+d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV,(32)Ω^˙=-J-1Ω×JΩ+AΩ+Bu+d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ,where V and Ω are the outputs of sensors, regarding real values. V^ and Ω^ are the estimated states of the observers.State estimation errors can be defined as follows:(33)eV=V-V^eΩ=Ω-Ω^.Combining (29) and (31), we can derive(34)e˙V=dV-d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV.Similarly, combining (30) and (32), we can derive(35)e˙Ω=dΩ-d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ.Theorem 6.
If the derivatives of disturbances are globally bounded byd˙i<Di, i=V,Ω, and the parameters in observers (31) and (32) satisfy(36)λi≥2Di,αi≥3Di+2Di2λi2,the estimated disturbances d^i converge to real disturbances di in finite time.Proof.
The observer dynamics (34) and (35) can be rewritten as follows:(37)e˙i=-λieiei1/2+di+ziddi+zidt=-αieiei+d˙i.Define zi+1=di+zi, i=V, Ω, so (37) can be rewritten as follows:(38)e˙i=-λieiei1/2+zi+1z˙i+1=-αieiei+d˙i.Considering (38), we can derive that Theorem 6 is the special case of Theorem 2 when (22) turns into ρ1=0ρ2≤δ2. Thus, the parameters in (23) will turn into the following form:(39)λ>2δ2α>3δ2+2δ22λ2.


#### 3.2.2. Altitude Subsystem

Considering the altitude subsystem dynamics described in (18), the altitude controller can be designed as follows.Step 1.
Define the altitude tracking error as follows:(40)ez=zd-z,where zd is the reference altitude trajectory, and define the vertical velocity tracking error as follows:(41)ew=wd-w.Taking the time derivative of (40), it yields(42)e˙z=z˙d-w.Substituting (41) into (42), the open-loop altitude tracking error dynamics can be written as follows:(43)e˙z=z˙d-wd-ew,where wd is the desired vertical velocity. It can be viewed as virtual control and is designed as follows:(44)wd=z˙d+kzez,where kz is a positive control gain. Then the closed-loop altitude tracking error dynamics will be obtained as follows:(45)e˙z=-kzez+ew.Step 2.
Taking the time derivative of (41), the open-loop vertical velocity tracking error dynamics can be written as follows:(46)e˙w=w˙d-g-r33-g+Zww+Zcolδcol-dw.Define the collective pitch δcol as follows:(47)δcol=δcol_equ+δcol_smc,where δcol_equ and δcol_smc are equivalent control and switching control, respectively.
The equivalent controlδcol_equ is chosen as follows:(48)δcol_equ=w˙d-g-r33-g+Zww-d^wr33Zcol,where d^w is the estimated disturbance in altitude subsystem.
Substituting (47) and (48) into (46), we can obtain the dynamics of ew(t) as follows:(49)e˙w=-r33Zcolδcol_smc-d~w,where d~w=dw-d^w is the disturbance estimation error.
The sliding variable can be chosen as follows:(50)sw=ew.


#### 3.2.3. Yaw Subsystem

Considering the yaw subsystem dynamics described in (19), the design procedure of the yaw controller is similar to the altitude controller in Section 3.2.2. Thus, the simplified procedure is given as follows.Step 3.
The open-loop yaw tracking error dynamics can be written as follows:(51)e˙ψ=ψ˙d-SϕCθq+CϕCθrd-er,where rd is the virtual control designed as follows:(52)rd=CθCϕψ˙d-SϕCθq+kψeψ,where kψ is a positive control gain. Then the closed-loop yaw tracking error dynamics will be obtained as follows:(53)e˙ψ=-kψeψ+CϕCθer.Step 4.
The open-loop yaw angular velocity error dynamics can be written as follows:(54)e˙r=r˙d+Iyy-IxxIzzpq-Nrr-Ncolδcol-Npedδped-dr.Define the collective pitch of the tail rotor δped as follows:(55)δped=δped_equ+δped_smc.The equivalent control δped_equ is chosen as follows:(56)δped_equ=r˙d+Iyy-Ixx/Izzpq-Nrr-Ncolδcol-d^rNped,where d^r is the estimated disturbance in yaw subsystem.
Substituting (55) and (56) into (54), we can obtain the dynamics of er(t) as follows:(57)e˙r=-Npedδped_smc-d~r,where d~r=dr-d^r is the disturbance estimation error.
The sliding variable can be chosen as follows:(58)sr=er.


#### 3.2.4. Horizontal Subsystem

Considering the horizontal subsystem dynamics described in (20), the horizontal controller can be designed as follows.Step 5.
Define the horizontal tracking error as follows:(59)eP1=P1d-P1,where P1d=xdydT is the reference horizontal trajectory, and define the horizontal velocity tracking error as follows:(60)eV1=V1d-V1.Taking the time derivative of (59), it yields(61)e˙P1=P˙1d-V1.Substituting (60) into (61), the open-loop horizontal tracking error dynamics can be written as follows:(62)e˙P1=P˙1d-V1d-eV1.We design the virtual control V1d as follows:(63)V1d=P˙1d+kP1eP1,where kP1=diag(kP11,kP12) is a diagonal matrix of positive control gain. Then the closed-loop horizontal trajectory tracking error dynamics will be obtained as follows:(64)e˙P1=-kP1eP1+eV1.Step 6.
Taking the time derivative of (60), the open-loop horizontal velocity tracking error dynamics can be written as follows:(65)e˙V1=V˙1d-R1-g+Zww+Zcolδcol-dV1.The orientation error is defined as follows:(66)eR1=R1d-R1.Substituting (66) into (65), the open-loop horizontal velocity tracking error dynamics can be rewritten as follows:(67)e˙V1=V˙1d-R1d-eR1-g+Zww+Zcolδcol-dV1.The desired orientation R1d is viewed as virtual control and can be chosen as follows:(68)R1d=V˙1d-d^V1+kV1eV1+eP1-g+Zww+Zcolδcol,where kV1=diag(kV11,kV12) is a diagonal matrix of positive control gain, and d^V1 is the estimated disturbance in horizontal subsystem. Then the closed-loop horizontal velocity tracking error dynamics will be obtained as follows:(69)e˙V1=-kV1eV1-eP1-d~V1+eR1-g+Zww+Zcolδcol,where d~V1=dV1-d^V1 is the disturbance estimation error.Step 7.
Taking the time derivative of (66), the open-loop orientation error dynamics can be written as follows:(70)e˙R1=R˙1d-Π1Ω1.We define the horizontal angular velocity error as follows:(71)eΩ1=Ω1d-Ω1.Substituting (71) into (70), the open-loop orientation error dynamics can be rewritten as follows:(72)e˙R1=R˙1d-Π1Ω1d-eΩ1.The virtual control Ω1d can be designed as follows:(73)Ω1d=Π1-1R˙1d+eV1-g+Zww+Zcolδcol+kR1eR1,where kR1=diag(kR11,kR12) is a diagonal matrix of positive control gain. Then the closed-loop orientation error dynamics will be obtained as follows:(74)e˙R1=-kR1eR1+Π1eΩ1-eV1-g+Zww+Zcolδcol.Step 8.
Taking the time derivative of (71), the open-loop horizontal angular velocity error dynamics can be written as follows:(75)e˙Ω1=Ω˙1d-f1Ω1-A1Ω1-B1u1-dΩ1.The control law u1 is designed as follows:(76)u1=u1_equ+u1_smc,where u1_equ and u1_smc are equivalent control and switching control, respectively.
The equivalent controlu1_equ is chosen as follows:(77)u1_equ=B1-1Ω˙1d-f1Ω1-A1Ω1-d^Ω1,where d^Ω1 is the estimated disturbance in horizontal subsystem.
Substituting (76) and (77) into (75), we can obtain the dynamics of eΩ1(t) as follows:(78)e˙Ω1=-B1u1_smc-d~Ω1,where d~Ω1=dΩ1-d^Ω1 is the disturbance estimation error.
The sliding variable can be chosen as follows:(79)sΩ1=eΩ1.


#### 3.2.5. Multivariable Super Twisting Control Law

We rewrite (49), (57), and (78) as the following form:(80)s˙w=-r33Zcolδcol_smc-d~w=vw-d~w(81)s˙r=-Npedδped_smc-d~r=vr-d~r(82)s˙Ω1=-B1u1_smc-d~Ω1=vΩ1-d~Ω1.These three sliding mode systems can be summarized to a multivariable canonical form:(83)s˙i=vi+d~i,where d~i=di-d^i∈Rm×1 is the disturbance estimation error, and si, vi∈Rm×1 are the sliding variable and control input vector, respectively.From Theorem6, we can obtain that d~i will converge to zero in finite time. Thus, it will be reasonable to state the following assumption.Assumption 7.
The disturbance estimation errord~i is globally bounded by(84)d~i<aisi1/2,i=V,Ωfor some constants ai>0.
The multivariable super twisting control law can be designed as follows:(85)vi=-λisisi1/2+ziz˙i=-αisisi,where λi, αi are controller gains.Theorem 8.
Consider system (83) under Assumption 7. If the parameters in control law (85) satisfy(86)λi>2ai,αi>λi4aiλi+2.25ai22λi-2ai,all the trajectories of system (83) converge to the origin si=0 in finite time.Proof.
Considering (83) and (84), we can derive that Theorem 8 also is the special case of Theorem 2 when (22) turns into ρ1≤δ1x11/2ρ2=0. Thus, the controller parameters in (23) will turn into the following form:(87)λ>2δ1α>λ4λ+2.25δ122λ-2δ1.
From (80)–(86), we can obtain the control signals vw, vr, and vΩ1. Thus, the switching control inputs δcol_smc, δped_smc, δlat_smc, and δlon_smc also can be derived. Combining (48), (56), and (77), the control input vector u=δcolδlonδlatδpedT will be derived as follows:(88)u=uequ+usmc.Remark 9.
Systems (80) and (81) are both the special cases of multivariable system (83), where the dimension is m=1; that is to say, the control signals vw and vr are the single-variable super twisting control laws.Remark 10.
The discontinuities in control law (85) will only occur when all the components of the vector si equal zero, but for decoupled single-variable super twisting algorithm, the discontinuities will occur when any of the components of the vector si equals zero. And the observers (31) and (32) have the same characteristic too. Therefore, the proposed nondecoupled multivariable super twisting algorithm has improved chattering reduction properties relative to decoupled single-variable super twisting algorithm in some degree.


#### 3.2.6. Super Twisting Based Differentiator

In the controller design procedure, some derivatives of virtual controls are required. In order to lessen calculative burden, super twisting algorithm based exact differentiators are deigned as follows:(89)x^˙=-k1_ix^-x1/2sign⁡x^-x+v^v^˙=-k2_isign⁡x^-x,where x^ is the estimate of x, and v^ is the estimate of x˙. When the parameters k1 and k2 are chosen appropriately, v^ will converge to x˙ in finite time. So v^ will be used in the controller instead of x˙.Among these virtual controls, the derivatives of (68) and (73) are quite complicated, so these two derivatives will be estimated by exact differentiators.


## 3.1. Modified Multivariable Super Twisting Algorithm

Here, a modified multivariable super twisting algorithm is used for our controller design. In order to make the multivariable super twisting algorithm [23] more suitable for the small unmanned helicopter, some modifications are made as follows.Consider the multivariable system(21)x˙1=-λx1x11/2+x2+ρ1t,x1x˙2=-αx1x1+ρ2t,where x1, x2∈Rm, λ, and α are positive constants and ρ1(t,x1), ρ2(t) are perturbations.Assumption 1.
The perturbationsρ1(t,x1) and ρ2(t) are globally bounded by(22)ρ1≤δ1x11/2ρ2≤δ2for some constants δ1, δ2>0.Theorem 2.
Under Assumption1, if the parameters λ and α satisfy(23)λ>max⁡2δ1,12δ1+14δ12+2δ2α>2δ1λ3+1.125δ12+3δ2λ2+3δ1δ2λ+2δ22λλ-2δ1all the trajectories of system (21) will converge to origin in finite time.Analysis and Proof. The multivariable super twisting algorithm in Theorem 2 is developed based on the proposal in [23]. Some modifications are made to this algorithm. First, it is assumed that the perturbation ρ1(t,x1) satisfies ρ1≤δ1x11/2 instead of ρ1≤δ1x1 in [23]. Second, the linear control terms are removed in multivariable system (21).The stability analyses of these two algorithms are similar. And the details of the proof can be found in article [23]. So we only give the outline of the stability analysis below.We define a Lyapunov function candidate for system (21) as follows:(24)Vx1,x2=2αx1+12x2Tx2+12λx1x11/2-x2Tλx1x11/2-x2.Define a vector ς=col(x11/2,x2). Considering system (21) and perturbations (22), the time derivative of (24) can be obtained as follows:(25)V˙≤-1x11/2ςTQς,where(26)Q=λα+λ32-2α+λ22δ1-λδ2∗-λ22+34λδ1+δ2λ2.If Q>0, then V˙<0. It is easy to see that this is the case if the parameters satisfy(27)λ>max⁡2δ1,12δ1+14δ12+2δ2.α>2δ1λ3+1.125δ12+3δ2λ2+3δ1δ2λ+2δ22λλ-2δ1Define ξ=col(x1/x11/2,x2), and note that ς=ξ for all values of x1 and x2. So we can derive V=ξTPξ≤λmax⁡(P)ξ2 and V˙≤-1/x11/2λmin⁡(Q)ξ2, where P is an appropriate symmetric positive definite matrix. Finally, we can get that(28)V˙≤-γV1/2,where γ=λmin⁡(Q)λmin⁡(P)/λmax⁡(P).Therefore,(x1(t),x2(t)) will converge to (x1,x2)=(0,0). And x˙1(t) will converge to x˙1=0 in finite time, because the right hand of the first equation in (21) equals zero when (x1,x2)=(0,0) and ρ1(t,0)=0.Remark 3.
The proposed multivariable super twisting algorithm is developed by modifying the algorithm in [23]. Now we will clarify the motivations for these modifications as follows. First, the starting points of these two papers are different. The article [23] is a purely theoretical research work, whose goal is to propose a new algorithm theoretically without considering the particular practical application problem. However, the fundamental purpose of our paper is to develop an appropriate algorithm to control the unmanned helicopters effectively. Thus, we need to modify the existing algorithm to make it applicable for unmanned helicopters. Second, in our helicopter control system, the actual meaning of ρ1(t,x1) is the disturbance estimation error, which is a very small perturbation rather than a linearly growing one. Therefore, it will be reasonable to suppose that ρ1(t,x1) satisfies ρ1≤δ1x11/2 instead of ρ1≤δ1x1 in [23]. Moreover, when x1 is small (x1<1), we can derive δ1x11/2>δ1x1. Therefore, the proposed algorithm in our paper can tolerate stronger perturbations near the origin than the one in [23]. Third, since the perturbations ρ1(t,x1) and ρ2(t) both are not linearly growing ones, it is not necessary to use the linear control terms in system (21), which deal with the linearly growing perturbations effectively [18, 23]. The proposed algorithm is able to deal with the strong perturbations near the origin, such as ρ1(t,x1) and ρ2(t) in this situation. And the modified algorithm needs fewer parameters than the one in [23]. Therefore, it is more convenient to be applied for the unmanned helicopter system. Moreover, the simulation results in Section 5 will support our analysis that the modified multivariable super twisting algorithm is very effective in controlling the unmanned helicopter.


## 3.2. Disturbance Observer Based Controller (DOBC) Design

In this section, a disturbance observer based controller (DOBC) is proposed for the unmanned helicopter system. The composite controller structure is illustrated in Figure2.Figure 2
Controller structure.The main control objective of this paper is to design the control inputsu=δcolδlonδlatδpedT in order to track the reference trajectories of xd(t)yd(t)zd(t)T, ψd(t) and to stabilize the pitch and roll angles θ(t), φ(t) in the presence of compounded disturbances. To deal with the subsequent control development, some assumptions are made as follows.Assumption 4.
The reference trajectories are available. Moreover,zd(t) and ψd(t) are C2 functions of time, and xd(t) and yd(t) are C4 functions of time.Assumption 5.
It is assumed thatθt<π/2 and ϕt<π/2 for t≥0.Obviously, this assumption can ensure the attitude kinematic matrixΠ(Θ) defined in (3) will not be singularity [12–14].The detailed design process is described as follows.


### 3.2.1. Multivariable Super Twisting Based Observer

In the controller design procedure, the estimated disturbancesd^V=d^ud^vd^wT and d^Ω=d^pd^qd^rT will be used, which are estimated by multivariable super twisting observers.Considering the following dynamic models:(29)V˙=ge3+RΘe3-g+Zww+Zcolδcol+dV(30)Ω˙=-J-1Ω×JΩ+AΩ+Bu+dΩ,the state-like observers are designed as follows:(31)V^˙=ge3+RΘe3-g+Zww+Zcolδcol+d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV,(32)Ω^˙=-J-1Ω×JΩ+AΩ+Bu+d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ,where V and Ω are the outputs of sensors, regarding real values. V^ and Ω^ are the estimated states of the observers.State estimation errors can be defined as follows:(33)eV=V-V^eΩ=Ω-Ω^.Combining (29) and (31), we can derive(34)e˙V=dV-d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV.Similarly, combining (30) and (32), we can derive(35)e˙Ω=dΩ-d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ.Theorem 6.
If the derivatives of disturbances are globally bounded byd˙i<Di, i=V,Ω, and the parameters in observers (31) and (32) satisfy(36)λi≥2Di,αi≥3Di+2Di2λi2,the estimated disturbances d^i converge to real disturbances di in finite time.Proof.
The observer dynamics (34) and (35) can be rewritten as follows:(37)e˙i=-λieiei1/2+di+ziddi+zidt=-αieiei+d˙i.Define zi+1=di+zi, i=V, Ω, so (37) can be rewritten as follows:(38)e˙i=-λieiei1/2+zi+1z˙i+1=-αieiei+d˙i.Considering (38), we can derive that Theorem 6 is the special case of Theorem 2 when (22) turns into ρ1=0ρ2≤δ2. Thus, the parameters in (23) will turn into the following form:(39)λ>2δ2α>3δ2+2δ22λ2.


### 3.2.2. Altitude Subsystem

Considering the altitude subsystem dynamics described in (18), the altitude controller can be designed as follows.Step 1.
Define the altitude tracking error as follows:(40)ez=zd-z,where zd is the reference altitude trajectory, and define the vertical velocity tracking error as follows:(41)ew=wd-w.Taking the time derivative of (40), it yields(42)e˙z=z˙d-w.Substituting (41) into (42), the open-loop altitude tracking error dynamics can be written as follows:(43)e˙z=z˙d-wd-ew,where wd is the desired vertical velocity. It can be viewed as virtual control and is designed as follows:(44)wd=z˙d+kzez,where kz is a positive control gain. Then the closed-loop altitude tracking error dynamics will be obtained as follows:(45)e˙z=-kzez+ew.Step 2.
Taking the time derivative of (41), the open-loop vertical velocity tracking error dynamics can be written as follows:(46)e˙w=w˙d-g-r33-g+Zww+Zcolδcol-dw.Define the collective pitch δcol as follows:(47)δcol=δcol_equ+δcol_smc,where δcol_equ and δcol_smc are equivalent control and switching control, respectively.
The equivalent controlδcol_equ is chosen as follows:(48)δcol_equ=w˙d-g-r33-g+Zww-d^wr33Zcol,where d^w is the estimated disturbance in altitude subsystem.
Substituting (47) and (48) into (46), we can obtain the dynamics of ew(t) as follows:(49)e˙w=-r33Zcolδcol_smc-d~w,where d~w=dw-d^w is the disturbance estimation error.
The sliding variable can be chosen as follows:(50)sw=ew.


### 3.2.3. Yaw Subsystem

Considering the yaw subsystem dynamics described in (19), the design procedure of the yaw controller is similar to the altitude controller in Section 3.2.2. Thus, the simplified procedure is given as follows.Step 3.
The open-loop yaw tracking error dynamics can be written as follows:(51)e˙ψ=ψ˙d-SϕCθq+CϕCθrd-er,where rd is the virtual control designed as follows:(52)rd=CθCϕψ˙d-SϕCθq+kψeψ,where kψ is a positive control gain. Then the closed-loop yaw tracking error dynamics will be obtained as follows:(53)e˙ψ=-kψeψ+CϕCθer.Step 4.
The open-loop yaw angular velocity error dynamics can be written as follows:(54)e˙r=r˙d+Iyy-IxxIzzpq-Nrr-Ncolδcol-Npedδped-dr.Define the collective pitch of the tail rotor δped as follows:(55)δped=δped_equ+δped_smc.The equivalent control δped_equ is chosen as follows:(56)δped_equ=r˙d+Iyy-Ixx/Izzpq-Nrr-Ncolδcol-d^rNped,where d^r is the estimated disturbance in yaw subsystem.
Substituting (55) and (56) into (54), we can obtain the dynamics of er(t) as follows:(57)e˙r=-Npedδped_smc-d~r,where d~r=dr-d^r is the disturbance estimation error.
The sliding variable can be chosen as follows:(58)sr=er.


### 3.2.4. Horizontal Subsystem

Considering the horizontal subsystem dynamics described in (20), the horizontal controller can be designed as follows.Step 5.
Define the horizontal tracking error as follows:(59)eP1=P1d-P1,where P1d=xdydT is the reference horizontal trajectory, and define the horizontal velocity tracking error as follows:(60)eV1=V1d-V1.Taking the time derivative of (59), it yields(61)e˙P1=P˙1d-V1.Substituting (60) into (61), the open-loop horizontal tracking error dynamics can be written as follows:(62)e˙P1=P˙1d-V1d-eV1.We design the virtual control V1d as follows:(63)V1d=P˙1d+kP1eP1,where kP1=diag(kP11,kP12) is a diagonal matrix of positive control gain. Then the closed-loop horizontal trajectory tracking error dynamics will be obtained as follows:(64)e˙P1=-kP1eP1+eV1.Step 6.
Taking the time derivative of (60), the open-loop horizontal velocity tracking error dynamics can be written as follows:(65)e˙V1=V˙1d-R1-g+Zww+Zcolδcol-dV1.The orientation error is defined as follows:(66)eR1=R1d-R1.Substituting (66) into (65), the open-loop horizontal velocity tracking error dynamics can be rewritten as follows:(67)e˙V1=V˙1d-R1d-eR1-g+Zww+Zcolδcol-dV1.The desired orientation R1d is viewed as virtual control and can be chosen as follows:(68)R1d=V˙1d-d^V1+kV1eV1+eP1-g+Zww+Zcolδcol,where kV1=diag(kV11,kV12) is a diagonal matrix of positive control gain, and d^V1 is the estimated disturbance in horizontal subsystem. Then the closed-loop horizontal velocity tracking error dynamics will be obtained as follows:(69)e˙V1=-kV1eV1-eP1-d~V1+eR1-g+Zww+Zcolδcol,where d~V1=dV1-d^V1 is the disturbance estimation error.Step 7.
Taking the time derivative of (66), the open-loop orientation error dynamics can be written as follows:(70)e˙R1=R˙1d-Π1Ω1.We define the horizontal angular velocity error as follows:(71)eΩ1=Ω1d-Ω1.Substituting (71) into (70), the open-loop orientation error dynamics can be rewritten as follows:(72)e˙R1=R˙1d-Π1Ω1d-eΩ1.The virtual control Ω1d can be designed as follows:(73)Ω1d=Π1-1R˙1d+eV1-g+Zww+Zcolδcol+kR1eR1,where kR1=diag(kR11,kR12) is a diagonal matrix of positive control gain. Then the closed-loop orientation error dynamics will be obtained as follows:(74)e˙R1=-kR1eR1+Π1eΩ1-eV1-g+Zww+Zcolδcol.Step 8.
Taking the time derivative of (71), the open-loop horizontal angular velocity error dynamics can be written as follows:(75)e˙Ω1=Ω˙1d-f1Ω1-A1Ω1-B1u1-dΩ1.The control law u1 is designed as follows:(76)u1=u1_equ+u1_smc,where u1_equ and u1_smc are equivalent control and switching control, respectively.
The equivalent controlu1_equ is chosen as follows:(77)u1_equ=B1-1Ω˙1d-f1Ω1-A1Ω1-d^Ω1,where d^Ω1 is the estimated disturbance in horizontal subsystem.
Substituting (76) and (77) into (75), we can obtain the dynamics of eΩ1(t) as follows:(78)e˙Ω1=-B1u1_smc-d~Ω1,where d~Ω1=dΩ1-d^Ω1 is the disturbance estimation error.
The sliding variable can be chosen as follows:(79)sΩ1=eΩ1.


### 3.2.5. Multivariable Super Twisting Control Law

We rewrite (49), (57), and (78) as the following form:(80)s˙w=-r33Zcolδcol_smc-d~w=vw-d~w(81)s˙r=-Npedδped_smc-d~r=vr-d~r(82)s˙Ω1=-B1u1_smc-d~Ω1=vΩ1-d~Ω1.These three sliding mode systems can be summarized to a multivariable canonical form:(83)s˙i=vi+d~i,where d~i=di-d^i∈Rm×1 is the disturbance estimation error, and si, vi∈Rm×1 are the sliding variable and control input vector, respectively.From Theorem6, we can obtain that d~i will converge to zero in finite time. Thus, it will be reasonable to state the following assumption.Assumption 7.
The disturbance estimation errord~i is globally bounded by(84)d~i<aisi1/2,i=V,Ωfor some constants ai>0.
The multivariable super twisting control law can be designed as follows:(85)vi=-λisisi1/2+ziz˙i=-αisisi,where λi, αi are controller gains.Theorem 8.
Consider system (83) under Assumption 7. If the parameters in control law (85) satisfy(86)λi>2ai,αi>λi4aiλi+2.25ai22λi-2ai,all the trajectories of system (83) converge to the origin si=0 in finite time.Proof.
Considering (83) and (84), we can derive that Theorem 8 also is the special case of Theorem 2 when (22) turns into ρ1≤δ1x11/2ρ2=0. Thus, the controller parameters in (23) will turn into the following form:(87)λ>2δ1α>λ4λ+2.25δ122λ-2δ1.
From (80)–(86), we can obtain the control signals vw, vr, and vΩ1. Thus, the switching control inputs δcol_smc, δped_smc, δlat_smc, and δlon_smc also can be derived. Combining (48), (56), and (77), the control input vector u=δcolδlonδlatδpedT will be derived as follows:(88)u=uequ+usmc.Remark 9.
Systems (80) and (81) are both the special cases of multivariable system (83), where the dimension is m=1; that is to say, the control signals vw and vr are the single-variable super twisting control laws.Remark 10.
The discontinuities in control law (85) will only occur when all the components of the vector si equal zero, but for decoupled single-variable super twisting algorithm, the discontinuities will occur when any of the components of the vector si equals zero. And the observers (31) and (32) have the same characteristic too. Therefore, the proposed nondecoupled multivariable super twisting algorithm has improved chattering reduction properties relative to decoupled single-variable super twisting algorithm in some degree.


### 3.2.6. Super Twisting Based Differentiator

In the controller design procedure, some derivatives of virtual controls are required. In order to lessen calculative burden, super twisting algorithm based exact differentiators are deigned as follows:(89)x^˙=-k1_ix^-x1/2sign⁡x^-x+v^v^˙=-k2_isign⁡x^-x,where x^ is the estimate of x, and v^ is the estimate of x˙. When the parameters k1 and k2 are chosen appropriately, v^ will converge to x˙ in finite time. So v^ will be used in the controller instead of x˙.Among these virtual controls, the derivatives of (68) and (73) are quite complicated, so these two derivatives will be estimated by exact differentiators.


## 3.2.1. Multivariable Super Twisting Based Observer

In the controller design procedure, the estimated disturbancesd^V=d^ud^vd^wT and d^Ω=d^pd^qd^rT will be used, which are estimated by multivariable super twisting observers.Considering the following dynamic models:(29)V˙=ge3+RΘe3-g+Zww+Zcolδcol+dV(30)Ω˙=-J-1Ω×JΩ+AΩ+Bu+dΩ,the state-like observers are designed as follows:(31)V^˙=ge3+RΘe3-g+Zww+Zcolδcol+d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV,(32)Ω^˙=-J-1Ω×JΩ+AΩ+Bu+d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ,where V and Ω are the outputs of sensors, regarding real values. V^ and Ω^ are the estimated states of the observers.State estimation errors can be defined as follows:(33)eV=V-V^eΩ=Ω-Ω^.Combining (29) and (31), we can derive(34)e˙V=dV-d^Vd^V=λVeVeV1/2+zVz˙V=αVeVeV.Similarly, combining (30) and (32), we can derive(35)e˙Ω=dΩ-d^Ωd^Ω=λΩeΩeΩ1/2+zΩz˙Ω=αΩeΩeΩ.Theorem 6.
If the derivatives of disturbances are globally bounded byd˙i<Di, i=V,Ω, and the parameters in observers (31) and (32) satisfy(36)λi≥2Di,αi≥3Di+2Di2λi2,the estimated disturbances d^i converge to real disturbances di in finite time.Proof.
The observer dynamics (34) and (35) can be rewritten as follows:(37)e˙i=-λieiei1/2+di+ziddi+zidt=-αieiei+d˙i.Define zi+1=di+zi, i=V, Ω, so (37) can be rewritten as follows:(38)e˙i=-λieiei1/2+zi+1z˙i+1=-αieiei+d˙i.Considering (38), we can derive that Theorem 6 is the special case of Theorem 2 when (22) turns into ρ1=0ρ2≤δ2. Thus, the parameters in (23) will turn into the following form:(39)λ>2δ2α>3δ2+2δ22λ2.


## 3.2.2. Altitude Subsystem

Considering the altitude subsystem dynamics described in (18), the altitude controller can be designed as follows.Step 1.
Define the altitude tracking error as follows:(40)ez=zd-z,where zd is the reference altitude trajectory, and define the vertical velocity tracking error as follows:(41)ew=wd-w.Taking the time derivative of (40), it yields(42)e˙z=z˙d-w.Substituting (41) into (42), the open-loop altitude tracking error dynamics can be written as follows:(43)e˙z=z˙d-wd-ew,where wd is the desired vertical velocity. It can be viewed as virtual control and is designed as follows:(44)wd=z˙d+kzez,where kz is a positive control gain. Then the closed-loop altitude tracking error dynamics will be obtained as follows:(45)e˙z=-kzez+ew.Step 2.
Taking the time derivative of (41), the open-loop vertical velocity tracking error dynamics can be written as follows:(46)e˙w=w˙d-g-r33-g+Zww+Zcolδcol-dw.Define the collective pitch δcol as follows:(47)δcol=δcol_equ+δcol_smc,where δcol_equ and δcol_smc are equivalent control and switching control, respectively.
The equivalent controlδcol_equ is chosen as follows:(48)δcol_equ=w˙d-g-r33-g+Zww-d^wr33Zcol,where d^w is the estimated disturbance in altitude subsystem.
Substituting (47) and (48) into (46), we can obtain the dynamics of ew(t) as follows:(49)e˙w=-r33Zcolδcol_smc-d~w,where d~w=dw-d^w is the disturbance estimation error.
The sliding variable can be chosen as follows:(50)sw=ew.


## 3.2.3. Yaw Subsystem

Considering the yaw subsystem dynamics described in (19), the design procedure of the yaw controller is similar to the altitude controller in Section 3.2.2. Thus, the simplified procedure is given as follows.Step 3.
The open-loop yaw tracking error dynamics can be written as follows:(51)e˙ψ=ψ˙d-SϕCθq+CϕCθrd-er,where rd is the virtual control designed as follows:(52)rd=CθCϕψ˙d-SϕCθq+kψeψ,where kψ is a positive control gain. Then the closed-loop yaw tracking error dynamics will be obtained as follows:(53)e˙ψ=-kψeψ+CϕCθer.Step 4.
The open-loop yaw angular velocity error dynamics can be written as follows:(54)e˙r=r˙d+Iyy-IxxIzzpq-Nrr-Ncolδcol-Npedδped-dr.Define the collective pitch of the tail rotor δped as follows:(55)δped=δped_equ+δped_smc.The equivalent control δped_equ is chosen as follows:(56)δped_equ=r˙d+Iyy-Ixx/Izzpq-Nrr-Ncolδcol-d^rNped,where d^r is the estimated disturbance in yaw subsystem.
Substituting (55) and (56) into (54), we can obtain the dynamics of er(t) as follows:(57)e˙r=-Npedδped_smc-d~r,where d~r=dr-d^r is the disturbance estimation error.
The sliding variable can be chosen as follows:(58)sr=er.


## 3.2.4. Horizontal Subsystem

Considering the horizontal subsystem dynamics described in (20), the horizontal controller can be designed as follows.Step 5.
Define the horizontal tracking error as follows:(59)eP1=P1d-P1,where P1d=xdydT is the reference horizontal trajectory, and define the horizontal velocity tracking error as follows:(60)eV1=V1d-V1.Taking the time derivative of (59), it yields(61)e˙P1=P˙1d-V1.Substituting (60) into (61), the open-loop horizontal tracking error dynamics can be written as follows:(62)e˙P1=P˙1d-V1d-eV1.We design the virtual control V1d as follows:(63)V1d=P˙1d+kP1eP1,where kP1=diag(kP11,kP12) is a diagonal matrix of positive control gain. Then the closed-loop horizontal trajectory tracking error dynamics will be obtained as follows:(64)e˙P1=-kP1eP1+eV1.Step 6.
Taking the time derivative of (60), the open-loop horizontal velocity tracking error dynamics can be written as follows:(65)e˙V1=V˙1d-R1-g+Zww+Zcolδcol-dV1.The orientation error is defined as follows:(66)eR1=R1d-R1.Substituting (66) into (65), the open-loop horizontal velocity tracking error dynamics can be rewritten as follows:(67)e˙V1=V˙1d-R1d-eR1-g+Zww+Zcolδcol-dV1.The desired orientation R1d is viewed as virtual control and can be chosen as follows:(68)R1d=V˙1d-d^V1+kV1eV1+eP1-g+Zww+Zcolδcol,where kV1=diag(kV11,kV12) is a diagonal matrix of positive control gain, and d^V1 is the estimated disturbance in horizontal subsystem. Then the closed-loop horizontal velocity tracking error dynamics will be obtained as follows:(69)e˙V1=-kV1eV1-eP1-d~V1+eR1-g+Zww+Zcolδcol,where d~V1=dV1-d^V1 is the disturbance estimation error.Step 7.
Taking the time derivative of (66), the open-loop orientation error dynamics can be written as follows:(70)e˙R1=R˙1d-Π1Ω1.We define the horizontal angular velocity error as follows:(71)eΩ1=Ω1d-Ω1.Substituting (71) into (70), the open-loop orientation error dynamics can be rewritten as follows:(72)e˙R1=R˙1d-Π1Ω1d-eΩ1.The virtual control Ω1d can be designed as follows:(73)Ω1d=Π1-1R˙1d+eV1-g+Zww+Zcolδcol+kR1eR1,where kR1=diag(kR11,kR12) is a diagonal matrix of positive control gain. Then the closed-loop orientation error dynamics will be obtained as follows:(74)e˙R1=-kR1eR1+Π1eΩ1-eV1-g+Zww+Zcolδcol.Step 8.
Taking the time derivative of (71), the open-loop horizontal angular velocity error dynamics can be written as follows:(75)e˙Ω1=Ω˙1d-f1Ω1-A1Ω1-B1u1-dΩ1.The control law u1 is designed as follows:(76)u1=u1_equ+u1_smc,where u1_equ and u1_smc are equivalent control and switching control, respectively.
The equivalent controlu1_equ is chosen as follows:(77)u1_equ=B1-1Ω˙1d-f1Ω1-A1Ω1-d^Ω1,where d^Ω1 is the estimated disturbance in horizontal subsystem.
Substituting (76) and (77) into (75), we can obtain the dynamics of eΩ1(t) as follows:(78)e˙Ω1=-B1u1_smc-d~Ω1,where d~Ω1=dΩ1-d^Ω1 is the disturbance estimation error.
The sliding variable can be chosen as follows:(79)sΩ1=eΩ1.


## 3.2.5. Multivariable Super Twisting Control Law

We rewrite (49), (57), and (78) as the following form:(80)s˙w=-r33Zcolδcol_smc-d~w=vw-d~w(81)s˙r=-Npedδped_smc-d~r=vr-d~r(82)s˙Ω1=-B1u1_smc-d~Ω1=vΩ1-d~Ω1.These three sliding mode systems can be summarized to a multivariable canonical form:(83)s˙i=vi+d~i,where d~i=di-d^i∈Rm×1 is the disturbance estimation error, and si, vi∈Rm×1 are the sliding variable and control input vector, respectively.From Theorem6, we can obtain that d~i will converge to zero in finite time. Thus, it will be reasonable to state the following assumption.Assumption 7.
The disturbance estimation errord~i is globally bounded by(84)d~i<aisi1/2,i=V,Ωfor some constants ai>0.
The multivariable super twisting control law can be designed as follows:(85)vi=-λisisi1/2+ziz˙i=-αisisi,where λi, αi are controller gains.Theorem 8.
Consider system (83) under Assumption 7. If the parameters in control law (85) satisfy(86)λi>2ai,αi>λi4aiλi+2.25ai22λi-2ai,all the trajectories of system (83) converge to the origin si=0 in finite time.Proof.
Considering (83) and (84), we can derive that Theorem 8 also is the special case of Theorem 2 when (22) turns into ρ1≤δ1x11/2ρ2=0. Thus, the controller parameters in (23) will turn into the following form:(87)λ>2δ1α>λ4λ+2.25δ122λ-2δ1.
From (80)–(86), we can obtain the control signals vw, vr, and vΩ1. Thus, the switching control inputs δcol_smc, δped_smc, δlat_smc, and δlon_smc also can be derived. Combining (48), (56), and (77), the control input vector u=δcolδlonδlatδpedT will be derived as follows:(88)u=uequ+usmc.Remark 9.
Systems (80) and (81) are both the special cases of multivariable system (83), where the dimension is m=1; that is to say, the control signals vw and vr are the single-variable super twisting control laws.Remark 10.
The discontinuities in control law (85) will only occur when all the components of the vector si equal zero, but for decoupled single-variable super twisting algorithm, the discontinuities will occur when any of the components of the vector si equals zero. And the observers (31) and (32) have the same characteristic too. Therefore, the proposed nondecoupled multivariable super twisting algorithm has improved chattering reduction properties relative to decoupled single-variable super twisting algorithm in some degree.


## 3.2.6. Super Twisting Based Differentiator

In the controller design procedure, some derivatives of virtual controls are required. In order to lessen calculative burden, super twisting algorithm based exact differentiators are deigned as follows:(89)x^˙=-k1_ix^-x1/2sign⁡x^-x+v^v^˙=-k2_isign⁡x^-x,where x^ is the estimate of x, and v^ is the estimate of x˙. When the parameters k1 and k2 are chosen appropriately, v^ will converge to x˙ in finite time. So v^ will be used in the controller instead of x˙.Among these virtual controls, the derivatives of (68) and (73) are quite complicated, so these two derivatives will be estimated by exact differentiators.


## 4. Stability Analysis for Unmanned Helicopter System

In this section, we will give the stability analysis for unmanned helicopter system by Lyapunov technique.The three closed-loop subsystems are displayed as follows:(90)S1:e˙z=-kzez+sws˙w=vw-d~wS2:e˙ψ=-kψeψ+CϕCθsrs˙r=vr-d~rS3:e˙P1=-kP1eP1+eV1e˙V1=-kV1eV1-eP1-d~V1+eR1-g+Zww+Zcolδcole˙R1=-kR1eR1-eV1-g+Zww+Zcolδcol+Π1sΩ1s˙Ω1=vΩ1-d~Ω1,where vw, vr, and vΩ1 represent super twisting control laws, and d~w, d~r, d~V1, and d~Ω1 represent disturbance estimation errors.Theorem 11.
Consider the helicopter model (18)–(20), under Assumptions 1–7. If the disturbance observers are designed as (31) and (32), and the control inputs are chosen as (88), the position and yaw tracking errors globally asymptotic converge to zero.Proof.
From the above analysis, we can conclude that sliding mode variablesi will converge to manifold si=0 in finite time and remain zero for all subsequent time, and disturbance estimation error d~i will converge to zero in finite time too. Therefore, the closed-loop system dynamics are governed by the following reduced order system:(91)S1:e˙z=-kzezS2:e˙ψ=-kψeψS3:e˙P1=-kP1eP1+eV1e˙V1=-kV1eV1-eP1+eR1-g+Zww+Zcolδcole˙R1=-kR1eR1-eV1-g+Zww+Zcolδcol.Considering the above closed-loop system, we define a Lyapunov function candidate as follows:(92)Vt=V1t+V2t+V3t,where V1(t), V2(t), and V3(t) can be defined, respectively, as(93)V1t=12ezTezV2t=12eψTeψV3t=12eP1TeP1+12eV1TeV1+12eR1TeR1.By taking the time derivation of (92), we can derive the following equation:(94)V˙t=ezTe˙z+eψTe˙ψ+eP1Te˙P1+eV1Te˙V1+eR1Te˙R1=ezT-kzez+eψT-kψeψ+eP1T-kP1eP1+eV1+eV1T-kV1eV1-eP1+eR1-g+Zww+Zcolδcol+eR1T-kR1eR1-eV1-g+Zww+Zcolδcol=-kzezTez-kψeψTeψ-eP1TkP1eP1-eV1TkV1eV1-eR1TkR1eR1<0.To sum up, the position and yaw tracking errors will globally asymptotically converge to zero.


## 5. Simulation Results and Discussion

In order to verify the effectiveness of the proposed control scheme to the unmanned helicopter, simulation tests are presented in this section. The numerical simulations are conducted in the MATLAB. The parameters of unmanned helicopter are shown in Table1, and the parameters of the proposed controller are shown in Table 2.Table 1
Parameters of unmanned helicopter.
Variable
Description
Value
m
Mass of unmanned helicopter
8.2 kg
g
Acceleration of gravity
9.81 m·s−2
Z
w
Linkage gain ratio ofT to w
−0.7615 s−1
Z
col
Linkage gain ratio ofT to δcol
−131.4125 m/(rad·s2)
J
The moment of inertia
diag{0.18,0.34,0.28} kg·m2
A
Coefficient matrix ofΩ in (9)
diag{-48.1757,-25.5048,-0.9808} s−1
B
Coefficient matrix ofu in (9)
0
0
1689.5
0
0
894.5
0
0
-
0.3705
0
0
135.8 s−2Table 2
Parameters of controller.
Variable
Value
Description
K
Z
1
Control gain in (44)
K
Ψ
5
Control gain in (52)
K
P
1
diag{1,1}
Control gain in (63)
K
V
1
diag{3,3}
Control gain in (68)
K
R
1
diag{5,5}
Control gain in (73)
λ
w
0.15
Control gain for (80)
α
w
0.05
Control gain for (80)
λ
r
0.5
Control gain for (81)
α
r
1.5
Control gain for (81)
λ
Ω
1
0.5
Control gain for (82)
α
Ω
1
1.5
Control gain for (82)
λ
V
1
Observer gain in (31)
α
V
3
Observer gain in (31)
λ
Ω
2
Observer gain in (32)
α
Ω
10
Observer gain in (32)
k
1
_
68
20
Differentiator gain for (68)
k
2
_
68
30
Differentiator gain for (68)
k
1
_
7
3
20
Differentiator gain for (73)
k
2
_
73
30
Differentiator gain for (73)The proposed control method will be compared with the control method proposed in [24] to demonstrate the merits of it. Moreover, the control method proposed in [24] is backstepping sliding mode control (BSMC) method without disturbance observer.The slalom flight path is a typical trajectory to examine the maneuver performance. It can test the tracking accuracy, robustness, and coupling properties. The desired slalom flight pathPd=xdydzdT and ψd are designed as follows:(95)xdt=t2t≤6s12t-366<t≤11s-t2+34t-15711<t≤17s132t>17sydt=0t≤3s5sinπ5t-33<t≤13s0t>13szdt=0ψdt=0.In order to demonstrate the excellent tracking performance comprehensively, nonzero initial position and Euler angle are set as P0=821Tm and Θ0=000.2Trad.During the simulation, the model uncertainties and external disturbancesd=ΔPTVTΘTΩTT+dwind are added to verify the robustness of the proposed controller, where Δ∈R6×12 represents the model uncertainty matrix, and all of its elements are pseudorandom values on the interval (-0.1,0.1). The external disturbance is dwind=sin(0.1t)2sin(0.1t)0.5sin(0.1t)01×3T.The simulation results are illustrated in Figures3–6. Figure 3 shows the position tracking responses, while Figure 4 depicts the Euler angle tracking responses. Through these figures, one can see that the proposed controller is superior to the BSMC in [24] for its tracking performance, which is specific in its gentler dynamic process, faster tracking ability, and smaller overshoot. Moreover, the control inputs of the proposed method are smoother than the BSMC proposed in [24] which suffer from chattering phenomena seriously (see Figure 5). Finally, Figure 6 illustrates the effectiveness of the designed disturbance observer. One can see that the observer can estimate the compounded disturbances accurately.Figure 3
Position tracking responses.Figure 4
Euler angle tracking responses.Figure 5
Control inputs.Figure 6
Estimated disturbances.From the simulation results, we can obtain that the proposed controller is very effective in controlling the unmanned helicopter in the presence of both matched and unmatched disturbances. However, some limitations of the controller should be discussed here. First, the proposed control scheme is a hierarchical control strategy. The controller structure is somewhat complex, so we need to design it very carefully. Second, there are still many parameters to be known in the helicopter model and controller.


## 6. Conclusion

A disturbance observer based controller using backstepping and multivariable super twisting control technique is developed for small unmanned helicopters. The compounded disturbances and the time derivatives of the virtual controls are estimated by super twisting based observer and differentiator. The proposed controller possesses the robustness with both matched and unmatched disturbances. The finite time stability of the modified multivariable super twisting algorithm and global asymptotic stability of the closed-loop helicopter system are proved by Lyapunov theory. Finally, numerical simulation results demonstrate the effectiveness of the proposed flight control scheme, which is superior to the BSMC in [24] for its accurate tracking performance and chattering attenuation ability. The proposed control method will be tested on the experimental helicopter platform in future work.



---

*Source: 620357-2015-05-20.xml*