# Adaptive Neural Network Dynamic Inversion with Prescribed Performance for Aircraft Flight Control

Authors: Wendong Gai; Honglun Wang; Jing Zhang; Yuxia Li
Journal: Journal of Applied Mathematics
 (2013)

---

## Abstract

An adaptive neural network dynamic inversion with prescribed performance method is proposed for aircraft flight control. The aircraft nonlinear attitude angle model is analyzed. And we propose a new attitude angle controller design method based on prescribed performance which describes the convergence rate and overshoot of the tracking error. Then the model error is compensated by the adaptive neural network. Subsequently, the system stability is analyzed in detail. Finally, the proposed method is applied to the aircraft attitude tracking control system. The nonlinear simulation demonstrates that this method can guarantee the stability and tracking performance in the transient and steady behavior.


---

## Body

## 1. Introduction

Flight control design for aircraft continues to be one of the most important problems in the world of automatic control. The problem is driven by the nonlinear and uncertain nature of aircraft dynamics. Traditionally, the solution to this problem is to design the linear controller using linearized aircraft models at multiple trimmed conditions. And this procedure is time consuming and expensive.Control of aircraft by dynamic model inversion is well known and has been applied to the control of high angle of attack fighter aircraft [1, 2]. The primary drawback of dynamic inversion for aircraft flight control is the need for high-fidelity nonlinear model which must be inverted in real time. However, it is difficult to obtain the exact aircraft dynamic model in practice. The neural network augmented model inversion in the attitude angular loop is implemented to compensate the model inversion error, and it uses proportional-derivative desired dynamics to design the attitude control system for the helicopter [3] and tilt-rotor aircraft [4].The asymptotic tracking can be achieved using this method. However, the transient behavior of the output signals could be oscillatory when the tracking error magnitude is decreased by increasing the adaption rate. Several solutions [5–8] have been proposed to overcome this problem. These methods guarantee the convergence of tracking error, but the required tracking error upper bounds can’t be accurately computed. A new adaptive control method with prescribed performance is presented in [9], and this method guarantees the transient state tracking error in the prespecified performance bound. And this method is used to improve the performance of the planar two-link articulated manipulator [10, 11] and the 6-DOF PUMA 560 arm [12].It is very important for aircraft to track the attitude command with a desired transient and steady performance, when the aircraft finishes the special flight tasks, such as automated aerial refueling [13, 14] and transition flight control [15, 16].In this paper, we will investigate the aircraft attitude control problem of guaranteeing transient and steady performance in the adaptive compensation control system. By employing the prescribed performance bounds proposed in [9], we propose a new adaptive neural network dynamic inversion method. With certain transformation method, a new transformed error system is obtained through considering the prescribed performance bound into the original attitude control system. An adaptive dynamic inversion controller is designed for the transformed system. It is ensured that the tracking error is guaranteed inside the prescribed error bound as long as the transformed error system is stable.The paper is organized as follows: the problem and the control configuration are introduced in Section2. Section 3 presents the adaptive neural network dynamic inversion with prescribed performance design, stability analysis, model error analysis, and neural network structure. And the simulations are described in Section 4. Finally, this paper concludes in Section 5.


## 2. Aircraft Nonlinear Attitude Angle Model

The aircraft nonlinear attitude dynamic model can be presented as(1)ϕ˙=p+(rcosϕ+qsinϕ)tanθ,θ˙=qcosϕ-rsinϕ,ψ˙=(rcosϕ+qsinϕ)cosθ,(2)p˙=(c1r+c2p)q+c3L-+c4N,q˙=c5pr-c6(p2-r2)+c7M,r˙=(c8p-c2r)q+c4L-+c9N,
where ϕ, θ, and ψ are the roll, pitch, and yaw attitude angles. p, q, and r are the roll, pitch, and yaw angular rates. c1,…,c9 can be found in [17]. L-, M, and N are the roll, pitch, and yaw moments, which can be described as
(3)L-=ρaV2SbCl2,M=ρaV2Sc-Cm2,N=ρaV2SbCn2,
where ρa is the air density, S is the wing reference area, b is the wing span, V is the flight velocity, and c- is the wing mean geometric chord. Cl, Cm, and Cn are the rolling, pitching, and yawing moment coefficients described as
(4)Cl=Clββ+Clp-p-+Clr-r-+Clδaδa+Clδrδr,Cm=Cm,α=0+Cmαα+Cmq-q-+Cmα˙-α˙-+Cmδeδe,Cn=Cnββ+Cnp-p-+Cnr-r-+Cnδaδa+Cnδrδr,
where C(*) is the aerodynamic derivatives. α and  β are the angles of attack and sideslip. δa, δe, and δr are the aileron, elevator, and rudder deflections, which are the control actuators of the aircraft. p-, q-, r-, and α˙- are defined by
(5)p-=pb/(2V),r-=rb/(2V)q-=qc-/(2V),α˙-=α˙c-/(2V)
and α˙ is the derivative of the angle of attack.Substituting (3)-(4) into (2), and (2) can be rewritten in the affine nonlinear form as
(6)[p˙q˙r˙]=[fpfqfr]+Gu[δaδeδr],
where  fq, fq, fr, and Gu are
(7)fp=(c1r+c2p)q+c3Mx0+c4Mz0,fq=c5pr-c6(p2-r2)+c7My0,fr=(c8p-c2r)q+c4Mx0+c9Mz0,(8)Gu=ρaV2S2[c30c40c70c40c9][bClδa0bClδr0c-Cmδe0bCnδa0bCnδr],
and
(9)Mx0=ρaV2Sb(Clββ+Clp-p-+Clr-r-)2,My0=ρaV2Sc-(Cm,α=0+Cmαα+Cmq-q-+Cmα˙-α˙-)2,Mz0=ρaV2Sb(Cnββ+Cnp-p-+Cnr-r-)2.
According to (1), we can derive the second derivatives of attitude angles as follows:
(10)[ϕ¨,θ¨,ψ¨]T=L(ϕ,θ)[p˙,q˙,r˙]T+g(ϕ,θ,ψ,ϕ˙,θ˙,ψ˙),
where
(11)L(ϕ,θ)=[1sinϕtanθcosϕtanθ0cosϕ-sinϕ0sinϕsecθcosϕsecθ],(12)g(ϕ,θ,ψ,ϕ˙,θ˙,ψ˙)=[θ˙ψ˙secθ+ϕ˙θ˙tanθ-ϕ˙ψ˙cosθϕ˙θ˙secθ+θ˙ψ˙tanθ].Substituting (6) into (10), we obtain
(13)[ϕ¨,θ¨,ψ¨]T=L(ϕ,θ)[fp,fq,fr]T+g(ϕ,θ,ψ,ϕ˙,θ˙,ψ˙)+L(ϕ,θ)Gu[δa,δe,δr]T.


## 3. Prescribed Performance-Based Adaptive Neural Network Dynamic Inversion Design

The aircraft attitude model shown in (13) can be represented in the following shorthand notation:
(14)x¨=f(x,x˙)+g(x)u,
where the controlled state x=[ϕ,θ,ψ]T and the control vector u=[δa,δe,δr]T. f(x,x˙) and g(x) are nonlinear functions.The state tracking error is defined as(15)e(t)=x(t)-xd(t),
where xd(t) is the desired state vector.The proposed control architecture of the aircraft attitude control system is shown in Figure1.Figure 1
Adaptive neural network dynamic inversion with prescribed performance architecture.


### 3.1. Dynamic Inversion

This section will show a brief introduction of dynamic inversion. And the readers could derive much more details from the reference [2].We seek to linearize a nonlinear system through computing dynamic inversion to cancel the nonlinearities in the system. The aircraft dynamics are shown in (14). The number of control inputs and controlled states must be the same; that is to say, the nonlinear function g(x) is invertible. Then, the control input can be calculated by
(16)uc=g-1(x)(um-f(x,x˙)),
where um is the desired response of  x¨. Replacing the u  in the right of (14) by the uc  from (16), we derive
(17)x¨=um
and any nonlinearities in f(x,x˙) and g(x) are cancelled.The achieved system dynamics will match the chosen desired dynamics when there are no errors between the design model and real object. However, the model error is inevitable. So a new method is proposed to compensate the model error and guarantee the system performances in the transient and steady behavior.


### 3.2. Performance Function and Error Transformation

Definition 1 (see [9]).
A smooth functionρ:ℜ+→ℜ+ can be called a performance function if the following conditions are satisfied:
(18)ρ(t)>0,ρ˙(t)<0,limt→∞ρ(t)=ρ∞>0.
For example, a performance function is(19)ρ(t)=(ρ0-ρ∞)e-lt+ρ∞,
where  ρ0, ρ∞ and l are positive constants, ρ0 is the initial tracking error e(t), and ρ∞  is the maximum allowable tracking error e(t)  at the steady state. The decrement of tracking error e(t) will decrease when the parameter l decreases. And we can derive the first and second derivatives of ρ(t) as follows:
(20)ρ˙(t)=-l(ρ0-ρ∞)e-lt,ρ¨(t)=l2(ρ0-ρ∞)e-lt.
Then by satisfying the following condition:(21)-δ_ρ(t)<e(t)<δ-ρ(t),∀t≥0,
where 0≤δ_, and δ-≤1 are prescribed scalars; the objective of guaranteeing transient and steady performance can be derived.Remark 2.
According to (21), -δ_ρ(0)  and δ-ρ(0)  are the lower bound of the negative overshoot and upper bound of the positive overshoot of  e(t), respectively. And a lower bound of the convergence speed of  e(t) is introduced by the decreasing rate of  ρ(t).Remark 3.
By changing the parameters of performance functionρ(t) and the positive prescribed scalars δ_, and δ-, the maximum overshoot and convergence rate of e(t) can be modified.
To transform the original system with the constrained tracking error performance (in (21)) into an equivalent constrained one, an error transformation is introduced. And the error transformation is defined as
(22)e(t)=ρ(t)S(ε),
where ε  is the transformed error and a smooth and strictly increasing function S has the following properties:
(23)-δ_<S(ε)<δ-,(24)limε→-∞S(ε)=-δ_,limε→+∞S(ε)=δ-,(25)S(0)=0.
According to the first property in (23) and ρ(t)>0, we have
(26)-δ_ρ(t)<ρ(t)S(ε)<δ-ρ(t).
According to (19), we obtain
(27)-δ_ρ(t)<e(t)<δ-ρ(t).
In addition, from the third property in (25), limt→∞e(t)=0 can be achieved if  limt→∞ε(t)=0  is satisfied.
Then (22) can be described as
(28)ε(t)=S-1(e(t)ρ(t)).Lemma 4 (see [9]).
Consider system in (14), the transient and steady state tracking error behavior bounds described by the performance function ρ(t) and the error transformation equation (22). The following results hold.(a)
The system in (14) is invariant under the error transformation equation (22).(b)
Stabilization of the transformed system using (28) is sufficient to guarantee the prescribed performance.In what follows, an adaptive neural network dynamic inversion method is proposed to stabilize the transformed system using (28).


### 3.3. Controller Design and Stability Analysis

Assumption 5.
The desired statesxd(t) are  known bounded time functions, with known bounded derivatives.Assumption 6.
The statesx(t) of the nonlinear system in (14) are available for measurement.We define the following error functionEi(t), which describes the dynamics of the new error system using the error transformation equation (28). 								(29)Ei(t)=ε˙i(t)+ηiεi(t),i=p,q,r,
where  ηi, i=p,q, and r are positive constants to be chosen.We define(30)λ(t)=e(t)ρ(t).The derivative of (28) is
(31)ε˙=∂S-1∂λλ˙,
where
(32)λ˙=e˙(t)ρ(t)-e(t)ρ˙(t)ρ2(t).And the second derivative of (28) is
(33)ε¨=∂(∂S-1/∂λ)∂λ(e˙(t)ρ(t)-e(t)ρ˙(t)ρ2(t))2+∂S-1∂λ[e¨(t)ρ(t)-2e˙(t)ρ˙(t)ρ2(t)-e(t)ρ¨(t)ρ2(t)+2e˙(t)ρ˙2(t)ρ3(t)].Then we compute the time derivative ofEp(t)  for the roll error as
(34)E˙p(t)=ε¨p(t)+ηpε˙p(t).And the pitch and yaw errors are derived by the similar method.Substituting (30)–(33) into (34), we obtain
(35)E˙p=∂Sp-1∂λp1ρp(t)e¨p(t)+EpM,
where
(36)EpM=∂(∂Sp-1/∂λp)∂λp(e˙p(t)ρp(t)-ep(t)ρ˙p(t)ρp2(t))2+ηp∂Sp-1∂λpλ˙p-∂Sp-1∂λp×[2e˙p(t)ρ˙p(t)ρp2(t)+ep(t)ρ¨p(t)ρp2(t)-2e˙p(t)ρ˙p2(t)ρp3(t)].Then we can derive(37)E˙=ERe¨(t)+EM,
where E˙=[E˙p,E˙q,E˙r]T, e¨(t)=[e¨p(t),e¨q(t),e¨r(t)]T, EM=[EpM,EqM,ErM]T, and ER is
(38)ER=[EpREqRErR],
where  EpR=(∂Sp-1/∂λp)/ρp(t), EqR=(∂Sq-1/∂λq)/ρq(t), ErR=(∂Sr-1/∂λr)/ρr(t), and e¨p(t), e¨q(t), e¨r(t), are
(39)e¨p(t)=ϕ¨-ϕ¨d,e¨q(t)=θ¨-θ¨d,e¨r(t)=ψ¨-ψ¨d.To simplify the controller design progress, we linearize (2) in an equilibrium point which is the steady wings-level flight state. 								(40)[p˙,q˙,r˙]T=Aω[V0+ΔV,α0+Δα,β0+Δβ,p0+Δp,q0+Δq,r0+Δr]T+Bω[δa0+Δδa,δe0+Δδe,δr0+Δδr]T,
where the Aω and Bω are the appropriate dimension constant matrixes, β0=p0=q0=r0=δa0=δr0=0. And V0, α0, and δe0  are the flight velocity, angle of attack and elevator deflection in some equilibrium point, respectively. The symbol Δ represents the small perturbation from the equilibrium value.According to (2), (13), (14), and (40), we can obtain
(41)x¨=F(x)+G(x)Δu+χ,
where Δu=[Δδa,δe0+Δδe,Δδr]T, and
(42)F(x)=[Fp,Fq,Fr]T=g(ϕ,θ,ψ,ϕ˙,θ˙,ψ˙)+L(ϕ,θ)Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T,G(x)=[Gp,Gq,Gr]T=L(ϕ,θ)Bωχ=[χp,χq,χr]T,
where  χ  is the model error which will be analyzed in Section 3.4.The formulax¨=F(x)+G(x)Δu in (41) is named as the design model in some equilibrium point, which is different from the real nonlinear model in (14). And the difference between the design model and the nonlinear model is represented by the symbol  χ, which will be compensated by the adaptive neural network.Because there are three channels in the attitude control and the form of each channel is the same, consider the following Theorem7 for the roll channel. And the pitch and yaw channels are similar.Theorem 7.
Considering Assumption5, Assumption 6, and the nonlinear system in (14), all the signals are bounded, and the tracking error e(t) satisfies the performance described by the performance  function ρ(t), if the control input of system satisfies the following formula.
The control input of roll channel is(43)up=δa=Gp-1[-Fp-(EpR)-1(EpM+kpEp)+ϕ¨d-upad].
The adaptive signal of roll channel is(44)upad=wpTgp.
The neural network weight update law of roll channel is(45)w~˙p={γp(gp(Ep)TEpR+σpwp),∥Ep∥>ζp,0∥Ep∥≤ζp,ζp=∥EpR∥hp+(∥EpR∥hp)2+kpσp(wpmax)22kp,
where the vector gp is a set of basis functions to approximate the uncertainty and the neural network weight vector wp is the set of coefficients of each basis function in the roll channel. The adaptation gain γp determines the learning rate of neural network. The σp is a modification term to limit the growth of the neural network weights. The constant kp is positive. And the positive constant hp is the neural network approximate error which is bounded. The neural network weight error is
(46)w~p=wp-wp*,
where the wp* is the  true value of the neural network weight in the roll channel.Proof.
A suitable Lyapunov function of roll channel will be(47)Vp={12(Ep)TEp+12γp(w~p)Tw~p,∥Ep∥>ζp,12(Ep0)TEp0+12γp(w~p)Tw~p,∥Ep∥≤ζp,
where  ∥Ep0∥=ζp and ζp is to be defined later.
Firstly, if∥Ep∥>ζp is satisfied, then the time derivative of  (47) is given by
(48)V˙p=(Ep)TE˙p+1γp(w~p)Tw~˙p.
Substituting (37) into (48), we derive
(49)V˙p=(Ep)T[EpM+EpR(ϕ¨-ϕ¨d)]+1γp(w~p)Tw~˙p.
Considering (41)-(42) and (49), we have
(50)V˙p=(Ep)T[EpM+EpR(Fp+Gpup+χp-ϕ¨d)]+1γp(w~p)Tw~˙p.
Let the control inputup satisfy (43), then (50) can be described as
(51)V˙p=(Ep)T[-kpEp+EpR(χp-upad)]+1γp(w~p)Tw~˙p.
Substituting (44)–(46) into (51), we obtain
(52)V˙p=-kp(Ep)TEp+(Ep)TEpR×(χp-(wp*)Tgp)+σp(w~p)Twp.
By using the norms of the terms on the right side of (52), we obtain the following inequality:
(53)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥×∥χp-(wp*)Tgp∥+σp∥w~p∥∥wp∥.
In addition, the approximate error of neural network is bounded, so the following equation is satisfied:(54)∥χp-(wp*)Tgp∥≤hp.
The maximum weight of ideal neural network in the roll channel iswpmax, so we have
(55)∥wp*∥≤wpmax.
Substituting (46) and (54)-(55) into (53), we get
(56)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥hp+σp(wpmax∥wp∥-∥wp∥2).
Considering (56), we obtain
(57)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥hp-σp(∥wp∥-wpmax2)2+σp(wpmax2)2.
If the system is stable, thenV˙p<0. And (57) can be transformed to the following formula:
(58)kp∥Ep∥2-∥Ep∥∥EpR∥hp-σp(wpmax2)2>0.
Then we can derive
(59)∥Ep∥>∥EpR∥hp+(∥EpR∥hp)2+kpσp(wpmax)22kp=ζp.
Next, if∥Ep∥≤ζp is satisfied, then the time derivative of (47) is derived by
(60)V˙p=1γp(w~p)Tw~˙p.
Here the weight update law isw˙p=w~˙p=0, and V˙p=0. Therefore, the system is stable, and all the signals are bounded. Considering Lemma 4, the tracking error e(t) satisfied the performance described by the performance function ρ(t).
This completes the proof.


### 3.4. Analysis of the Model Error

According to (2)–(5), the moment model is nonlinear, complicated, and must be continuously varying with the flight condition. For simplicity, the linear model of (40) in an equilibrium point is used to replace the nonlinear model of (2).We define the model errorΛ=[Λp,Λq,Λr]T, which is the error between the linear model Equation (40) and the nonlinear model equation (6). And the Λ is
(61)Λ=[fp,fq,fr]T-Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T+Gu[δa,δe,δr]T-Bω[Δδa,δe0+Δδe,Δδr]T.Then (6) can be rewritten as
(62)[p˙,q˙,r˙]T=Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T+Bω[Δδa,δe0+Δδe,Δδr]T-Λ.Substituting (62) into (10), we have
(63)x¨=F(x)+G(x)Δu-L(ϕ,θ)Λ.Comparing (63) to (41), we obtain
(64)χ=-L(ϕ,θ)Λ.Therefore, the model error mainly depends on the different equilibrium points, attitude angles, actuator deflections, and so on.


### 3.5. Neural Network Structure

The first step in determining the appropriate network structure is identifying the network inputs. Based on the analysis of model error sources described in Section3.3, there are three main categories of inputs: the attitude angles, attitude angle rates, and actuator deflections.A Sigma-Pi neural network [18] is used to compensate the model error χ,  and the basis function of the pitch channel gq is
(65)gq=kron(kron(C1q,C2q),C3q),
where kron(·,·) represents the Kronecker products and is defined as follows:
(66)C1q=[1,θ-,θ-2]T,C2q=[1,q-]T,C3q=[1,δ-e,δ-e2]T,
where θ-, q-, δ-c and δ-e  are normalized variables between −1 and 1. The normalization function is
(67)y=f(x)=21+e-0.1x-1,
where x  is the input parameter and y is the output parameter.And a general description of the neural network is shown in Figure2.Figure 2
Neural network structure.And the basis function of roll channelgp and the basis function of yaw channel gr can be derived similarly as follows:
(68)gk=kron(kron(kron(kron(C1,C2),C3),C4),Ck),
where  k=p,r. Then Ci, i=1,2,3,4,k is
(69)C1=[1,ϕ-,ϕ-2]T,C2=[1,p-]T,C3=[1,r-]T,C4=[1,ψ-,ψ-2]T,Cp=[1,δ-a,δ-a2]T,Cr=[1,δ-r,δ-r2]T.


## 3.1. Dynamic Inversion

This section will show a brief introduction of dynamic inversion. And the readers could derive much more details from the reference [2].We seek to linearize a nonlinear system through computing dynamic inversion to cancel the nonlinearities in the system. The aircraft dynamics are shown in (14). The number of control inputs and controlled states must be the same; that is to say, the nonlinear function g(x) is invertible. Then, the control input can be calculated by
(16)uc=g-1(x)(um-f(x,x˙)),
where um is the desired response of  x¨. Replacing the u  in the right of (14) by the uc  from (16), we derive
(17)x¨=um
and any nonlinearities in f(x,x˙) and g(x) are cancelled.The achieved system dynamics will match the chosen desired dynamics when there are no errors between the design model and real object. However, the model error is inevitable. So a new method is proposed to compensate the model error and guarantee the system performances in the transient and steady behavior.


## 3.2. Performance Function and Error Transformation

Definition 1 (see [9]).
A smooth functionρ:ℜ+→ℜ+ can be called a performance function if the following conditions are satisfied:
(18)ρ(t)>0,ρ˙(t)<0,limt→∞ρ(t)=ρ∞>0.
For example, a performance function is(19)ρ(t)=(ρ0-ρ∞)e-lt+ρ∞,
where  ρ0, ρ∞ and l are positive constants, ρ0 is the initial tracking error e(t), and ρ∞  is the maximum allowable tracking error e(t)  at the steady state. The decrement of tracking error e(t) will decrease when the parameter l decreases. And we can derive the first and second derivatives of ρ(t) as follows:
(20)ρ˙(t)=-l(ρ0-ρ∞)e-lt,ρ¨(t)=l2(ρ0-ρ∞)e-lt.
Then by satisfying the following condition:(21)-δ_ρ(t)<e(t)<δ-ρ(t),∀t≥0,
where 0≤δ_, and δ-≤1 are prescribed scalars; the objective of guaranteeing transient and steady performance can be derived.Remark 2.
According to (21), -δ_ρ(0)  and δ-ρ(0)  are the lower bound of the negative overshoot and upper bound of the positive overshoot of  e(t), respectively. And a lower bound of the convergence speed of  e(t) is introduced by the decreasing rate of  ρ(t).Remark 3.
By changing the parameters of performance functionρ(t) and the positive prescribed scalars δ_, and δ-, the maximum overshoot and convergence rate of e(t) can be modified.
To transform the original system with the constrained tracking error performance (in (21)) into an equivalent constrained one, an error transformation is introduced. And the error transformation is defined as
(22)e(t)=ρ(t)S(ε),
where ε  is the transformed error and a smooth and strictly increasing function S has the following properties:
(23)-δ_<S(ε)<δ-,(24)limε→-∞S(ε)=-δ_,limε→+∞S(ε)=δ-,(25)S(0)=0.
According to the first property in (23) and ρ(t)>0, we have
(26)-δ_ρ(t)<ρ(t)S(ε)<δ-ρ(t).
According to (19), we obtain
(27)-δ_ρ(t)<e(t)<δ-ρ(t).
In addition, from the third property in (25), limt→∞e(t)=0 can be achieved if  limt→∞ε(t)=0  is satisfied.
Then (22) can be described as
(28)ε(t)=S-1(e(t)ρ(t)).Lemma 4 (see [9]).
Consider system in (14), the transient and steady state tracking error behavior bounds described by the performance function ρ(t) and the error transformation equation (22). The following results hold.(a)
The system in (14) is invariant under the error transformation equation (22).(b)
Stabilization of the transformed system using (28) is sufficient to guarantee the prescribed performance.In what follows, an adaptive neural network dynamic inversion method is proposed to stabilize the transformed system using (28).


## 3.3. Controller Design and Stability Analysis

Assumption 5.
The desired statesxd(t) are  known bounded time functions, with known bounded derivatives.Assumption 6.
The statesx(t) of the nonlinear system in (14) are available for measurement.We define the following error functionEi(t), which describes the dynamics of the new error system using the error transformation equation (28). 								(29)Ei(t)=ε˙i(t)+ηiεi(t),i=p,q,r,
where  ηi, i=p,q, and r are positive constants to be chosen.We define(30)λ(t)=e(t)ρ(t).The derivative of (28) is
(31)ε˙=∂S-1∂λλ˙,
where
(32)λ˙=e˙(t)ρ(t)-e(t)ρ˙(t)ρ2(t).And the second derivative of (28) is
(33)ε¨=∂(∂S-1/∂λ)∂λ(e˙(t)ρ(t)-e(t)ρ˙(t)ρ2(t))2+∂S-1∂λ[e¨(t)ρ(t)-2e˙(t)ρ˙(t)ρ2(t)-e(t)ρ¨(t)ρ2(t)+2e˙(t)ρ˙2(t)ρ3(t)].Then we compute the time derivative ofEp(t)  for the roll error as
(34)E˙p(t)=ε¨p(t)+ηpε˙p(t).And the pitch and yaw errors are derived by the similar method.Substituting (30)–(33) into (34), we obtain
(35)E˙p=∂Sp-1∂λp1ρp(t)e¨p(t)+EpM,
where
(36)EpM=∂(∂Sp-1/∂λp)∂λp(e˙p(t)ρp(t)-ep(t)ρ˙p(t)ρp2(t))2+ηp∂Sp-1∂λpλ˙p-∂Sp-1∂λp×[2e˙p(t)ρ˙p(t)ρp2(t)+ep(t)ρ¨p(t)ρp2(t)-2e˙p(t)ρ˙p2(t)ρp3(t)].Then we can derive(37)E˙=ERe¨(t)+EM,
where E˙=[E˙p,E˙q,E˙r]T, e¨(t)=[e¨p(t),e¨q(t),e¨r(t)]T, EM=[EpM,EqM,ErM]T, and ER is
(38)ER=[EpREqRErR],
where  EpR=(∂Sp-1/∂λp)/ρp(t), EqR=(∂Sq-1/∂λq)/ρq(t), ErR=(∂Sr-1/∂λr)/ρr(t), and e¨p(t), e¨q(t), e¨r(t), are
(39)e¨p(t)=ϕ¨-ϕ¨d,e¨q(t)=θ¨-θ¨d,e¨r(t)=ψ¨-ψ¨d.To simplify the controller design progress, we linearize (2) in an equilibrium point which is the steady wings-level flight state. 								(40)[p˙,q˙,r˙]T=Aω[V0+ΔV,α0+Δα,β0+Δβ,p0+Δp,q0+Δq,r0+Δr]T+Bω[δa0+Δδa,δe0+Δδe,δr0+Δδr]T,
where the Aω and Bω are the appropriate dimension constant matrixes, β0=p0=q0=r0=δa0=δr0=0. And V0, α0, and δe0  are the flight velocity, angle of attack and elevator deflection in some equilibrium point, respectively. The symbol Δ represents the small perturbation from the equilibrium value.According to (2), (13), (14), and (40), we can obtain
(41)x¨=F(x)+G(x)Δu+χ,
where Δu=[Δδa,δe0+Δδe,Δδr]T, and
(42)F(x)=[Fp,Fq,Fr]T=g(ϕ,θ,ψ,ϕ˙,θ˙,ψ˙)+L(ϕ,θ)Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T,G(x)=[Gp,Gq,Gr]T=L(ϕ,θ)Bωχ=[χp,χq,χr]T,
where  χ  is the model error which will be analyzed in Section 3.4.The formulax¨=F(x)+G(x)Δu in (41) is named as the design model in some equilibrium point, which is different from the real nonlinear model in (14). And the difference between the design model and the nonlinear model is represented by the symbol  χ, which will be compensated by the adaptive neural network.Because there are three channels in the attitude control and the form of each channel is the same, consider the following Theorem7 for the roll channel. And the pitch and yaw channels are similar.Theorem 7.
Considering Assumption5, Assumption 6, and the nonlinear system in (14), all the signals are bounded, and the tracking error e(t) satisfies the performance described by the performance  function ρ(t), if the control input of system satisfies the following formula.
The control input of roll channel is(43)up=δa=Gp-1[-Fp-(EpR)-1(EpM+kpEp)+ϕ¨d-upad].
The adaptive signal of roll channel is(44)upad=wpTgp.
The neural network weight update law of roll channel is(45)w~˙p={γp(gp(Ep)TEpR+σpwp),∥Ep∥>ζp,0∥Ep∥≤ζp,ζp=∥EpR∥hp+(∥EpR∥hp)2+kpσp(wpmax)22kp,
where the vector gp is a set of basis functions to approximate the uncertainty and the neural network weight vector wp is the set of coefficients of each basis function in the roll channel. The adaptation gain γp determines the learning rate of neural network. The σp is a modification term to limit the growth of the neural network weights. The constant kp is positive. And the positive constant hp is the neural network approximate error which is bounded. The neural network weight error is
(46)w~p=wp-wp*,
where the wp* is the  true value of the neural network weight in the roll channel.Proof.
A suitable Lyapunov function of roll channel will be(47)Vp={12(Ep)TEp+12γp(w~p)Tw~p,∥Ep∥>ζp,12(Ep0)TEp0+12γp(w~p)Tw~p,∥Ep∥≤ζp,
where  ∥Ep0∥=ζp and ζp is to be defined later.
Firstly, if∥Ep∥>ζp is satisfied, then the time derivative of  (47) is given by
(48)V˙p=(Ep)TE˙p+1γp(w~p)Tw~˙p.
Substituting (37) into (48), we derive
(49)V˙p=(Ep)T[EpM+EpR(ϕ¨-ϕ¨d)]+1γp(w~p)Tw~˙p.
Considering (41)-(42) and (49), we have
(50)V˙p=(Ep)T[EpM+EpR(Fp+Gpup+χp-ϕ¨d)]+1γp(w~p)Tw~˙p.
Let the control inputup satisfy (43), then (50) can be described as
(51)V˙p=(Ep)T[-kpEp+EpR(χp-upad)]+1γp(w~p)Tw~˙p.
Substituting (44)–(46) into (51), we obtain
(52)V˙p=-kp(Ep)TEp+(Ep)TEpR×(χp-(wp*)Tgp)+σp(w~p)Twp.
By using the norms of the terms on the right side of (52), we obtain the following inequality:
(53)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥×∥χp-(wp*)Tgp∥+σp∥w~p∥∥wp∥.
In addition, the approximate error of neural network is bounded, so the following equation is satisfied:(54)∥χp-(wp*)Tgp∥≤hp.
The maximum weight of ideal neural network in the roll channel iswpmax, so we have
(55)∥wp*∥≤wpmax.
Substituting (46) and (54)-(55) into (53), we get
(56)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥hp+σp(wpmax∥wp∥-∥wp∥2).
Considering (56), we obtain
(57)V˙p≤-kp∥Ep∥2+∥Ep∥∥EpR∥hp-σp(∥wp∥-wpmax2)2+σp(wpmax2)2.
If the system is stable, thenV˙p<0. And (57) can be transformed to the following formula:
(58)kp∥Ep∥2-∥Ep∥∥EpR∥hp-σp(wpmax2)2>0.
Then we can derive
(59)∥Ep∥>∥EpR∥hp+(∥EpR∥hp)2+kpσp(wpmax)22kp=ζp.
Next, if∥Ep∥≤ζp is satisfied, then the time derivative of (47) is derived by
(60)V˙p=1γp(w~p)Tw~˙p.
Here the weight update law isw˙p=w~˙p=0, and V˙p=0. Therefore, the system is stable, and all the signals are bounded. Considering Lemma 4, the tracking error e(t) satisfied the performance described by the performance function ρ(t).
This completes the proof.


## 3.4. Analysis of the Model Error

According to (2)–(5), the moment model is nonlinear, complicated, and must be continuously varying with the flight condition. For simplicity, the linear model of (40) in an equilibrium point is used to replace the nonlinear model of (2).We define the model errorΛ=[Λp,Λq,Λr]T, which is the error between the linear model Equation (40) and the nonlinear model equation (6). And the Λ is
(61)Λ=[fp,fq,fr]T-Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T+Gu[δa,δe,δr]T-Bω[Δδa,δe0+Δδe,Δδr]T.Then (6) can be rewritten as
(62)[p˙,q˙,r˙]T=Aω[V0+ΔV,α0+Δα,Δβ,Δp,Δq,Δr]T+Bω[Δδa,δe0+Δδe,Δδr]T-Λ.Substituting (62) into (10), we have
(63)x¨=F(x)+G(x)Δu-L(ϕ,θ)Λ.Comparing (63) to (41), we obtain
(64)χ=-L(ϕ,θ)Λ.Therefore, the model error mainly depends on the different equilibrium points, attitude angles, actuator deflections, and so on.


## 3.5. Neural Network Structure

The first step in determining the appropriate network structure is identifying the network inputs. Based on the analysis of model error sources described in Section3.3, there are three main categories of inputs: the attitude angles, attitude angle rates, and actuator deflections.A Sigma-Pi neural network [18] is used to compensate the model error χ,  and the basis function of the pitch channel gq is
(65)gq=kron(kron(C1q,C2q),C3q),
where kron(·,·) represents the Kronecker products and is defined as follows:
(66)C1q=[1,θ-,θ-2]T,C2q=[1,q-]T,C3q=[1,δ-e,δ-e2]T,
where θ-, q-, δ-c and δ-e  are normalized variables between −1 and 1. The normalization function is
(67)y=f(x)=21+e-0.1x-1,
where x  is the input parameter and y is the output parameter.And a general description of the neural network is shown in Figure2.Figure 2
Neural network structure.And the basis function of roll channelgp and the basis function of yaw channel gr can be derived similarly as follows:
(68)gk=kron(kron(kron(kron(C1,C2),C3),C4),Ck),
where  k=p,r. Then Ci, i=1,2,3,4,k is
(69)C1=[1,ϕ-,ϕ-2]T,C2=[1,p-]T,C3=[1,r-]T,C4=[1,ψ-,ψ-2]T,Cp=[1,δ-a,δ-a2]T,Cr=[1,δ-r,δ-r2]T.


## 4. Simulation Results

In this section, we consider the attitude angles control problem for a fixed-wing aircraft, and the initial flight state is the wings-level flight. Then the attitude angles commands in three channels will be tracked, respectively.In the following simulation, the initial flight height and velocity are 6000 m and 190 m/s, and the initial attitude angles and angular rates includingϕ, θ, ψ, p, q, and r are zeros. In addition, all the initial actuator deflections are zeros.The error transformation function [19] in the simulation is described as
(70)S(ε)=δ-e(ε+y)-δ_e-(ε+y)e(ε+y)+e-(ε+y),
where y=ln(δ-/δ_)/2. It can be shown that S(ε) satisfies the properties in (23)–(25).The attitude angles commands of three channels are transformed into the desired attitude angles commands through the command filters. And the structure of command filter for the roll channel is shown in Figure3. In addition, the desired attitude angles commands for yaw and pitch channels can be obtained by the similar command filters.Figure 3
Command filter.The command filter parameters are set asξi=1, ωi=2.5, and i=ϕ,ψ,θ.Design the control inputs with prescribed performance for three channels through the procedures in Section3.2. The performance and controller parameters are shown in Tables 1 and 2.Table 1
Performance parameters.
ρ
0
ϕ
−12°
ρ
0
ψ
−8°
ρ
0
θ
−10°
ρ
∞
ϕ
−0.3°
ρ
∞
ψ
−0.2°
ρ
∞
θ
−0.2°
l
ϕ
0.7
l
ψ
0.7
l
θ
0.7
δ
_
ϕ
0.6
δ
_
ψ
0.5
δ
_
θ
0.6
δ
-
ϕ
1
δ
-
ψ
1
δ
-
θ
1Table 2
Controller parameters.
k
p
10
k
r
10
k
q
10
γ
p
200
γ
r
200
γ
q
50
σ
p
0.1
σ
r
0.1
σ
q
0.3Remark 8.
For the performance functionρ(t), ρ0 is derived by subtracting the attitude command from the initial attitude angle. ρ∞ is the allowable attitude tracking error at the steady state. And the decrement of tracking error e(t) will decrease when the parameter l decreases.Remark 9.
For the controller parameters, the adaptation gainγ will improve the attitude tracking performance, especially, when there are much larger model errors. The σp is a modification term to limit the growth of the neural network weights; therefore, it is small. The transient performance of attitude tracking error can be improved by increasing the parameter k; however, the increase will increase the magnitude of the control input. Then a compromise must be reached.The design model I is derived at the trimmed flight condition of 6000 m and 190 m/s, and the model error is small.The aircraft tracks the attitude angles commands from the initial flight state. And the attitude angles tracking responses and tracking errors are shown in Figures4 and 5.Responses of the attitude angles.
(a)
(b)
(c)Tracking errors of the attitude angles.
(a)
(b)
(c)The two methods have achieved the attitude angles command tracking. Figure4 shows the better attitude responses are achieved by the proposed method compared to the method in [20]. And the coupling among different channels is smaller when the proposed method is used. For example, the roll angle response has a less change when the aircraft tracks the yaw command. In Figure 5, the attitude angles tracking errors satisfy the prescribed performance bound with the proposed method in the dynamic and steady state. The main reason is that the method in [20] does not consider the performance bound defined by the performance function ρ(t) in the design process.In the real flight control system, there must be the model error. In order to verify that the similar tracking performance is also achieved when there is the large model error, we have conducted the following simulation study.The flight condition is the same, and the initial flight height and velocity are 6000 m and 190 m/s. However, the design model II used to design the attitude angles controllers is derived at the trimmed flight condition of 4000 m and 150 m/s. Apparently, the model error is large.And the attitude angles tracking responses and tracking errors are shown in Figures6 and 7.Responses of the Attitude angles with model error.
(a)
(b)
(c)Tracking errors of the attitude angles with model error.
(a)
(b)
(c)Figures6 and 7 show the attitude angles tracking errors still satisfy the prescribed performance bound, although the model error is large in this situation. In addition, Figures 6 and 7 show the track performance is similar when the different design models are used.The control actuators deflections for three channels are compared in Figure8 when the two design models are used.Deflections of the control actuators in two design models.
(a)
(b)
(c)Figure8 shows the deflections of the control actuators using the design model II increase to derive the desired attitude angles tracking performance. In addition, the outputs of neural network in three channels are shown in Figure 9.The outputs of neural network in three channels.
(a)
(b)
(c)Figure9 shows the outputs of neural network using the design model II are larger than the one using the design model I. The main reason is that the model error is larger when the design model II is used, and the larger outputs of neural network are used to compensate the large model error.


## 5. Conclusion

In this paper, an adaptive neural network dynamic inversion with prescribed performance method is proposed for aircraft attitude control. By incorporating the adaptive neural network dynamic inversion with the prescribed performance concept, the proposed method guarantees the system tracking error satisfies the prescribed performance bound in the transient and steady behavior. The nonlinear simulation of the aircraft also verifies the effectiveness of the proposed approach.Further investigation is needed for the situations in the presence of the external wind disturbance and unmodeled dynamics. And, these design parameters in this method should be decreased and optimized to achieve a real application.



---

*Source: 452653-2013-11-21.xml*