The main purpose of this paper is to develop an onboard adaptive and robust flight control system that improves control, stability, and survivability of a small unmanned aerial system in off-nominal or out-of-envelope conditions. The aerodynamics of aircraft associated with hazardous and adverse onboard conditions is inherently nonlinear and unsteady. The presented flight control system improves functionalities required to adapt the flight control in the presence of aircraft model uncertainties. The fault tolerant inner loop is enhanced by an adaptive real-time artificial neural network parameter identification to monitor important changes in the aircraft’s dynamics due to nonlinear and unsteady aerodynamics. The real-time artificial neural network parameter identification is done using the sliding mode learning concept and a modified version of the self-adaptive Levenberg algorithm. Numerically estimated stability and control derivatives are obtained by delta-based methods. New nonlinear guidance logic, stable in Lyapunov sense, is developed to guide the aircraft. The designed flight control system has better performance compared to a commercial off-the-shelf autopilot system in guiding and controlling an unmanned air system during a trajectory following.
1. Introduction
The effectiveness of aircraft flight control systems in off-nominal conditions is heavily dependent upon the quality and accuracy of physics-based models and numerical simulations. The accuracy of these models depends on the mathematical formulation that describes the true physics, how uncertainty affects the outputs, and whether the model mismatch can be identified and estimated. In classical flight dynamics, the measured aerodynamic forces and moments are represented by differentiable functions and expanded in Taylor series. Although it is effective in benign portions of the flight envelope, this mathematical structure is incapable of modeling nonlinear and unsteady aerodynamics associated with hazardous and adverse onboard conditions. Adverse onboard conditions include vehicle impairment; system faults, failures, and errors and vehicle damage. External hazards and disturbances include wind shear and poor visibility; wake vortices; thunderstorms; snow and icing conditions. Aircraft robust control systems are designed to deal with uncertainty in dynamic models due to modeling errors, noise, and disturbances.
The motivation of this work is to develop a robust flight control system to improve control, stability, and survivability of a small unmanned aerial system (UAS) in hazardous and abnormal flight conditions. The presented flight control system consists of guidance, navigation, and control modules with adaptive control technologies and incorporated real-time learning-based system identification using artificial neural networks (ANNs) to update the physics-based model of UAS. An extended Kalman filter (EKF) is used to improve the measurements and to estimate inaccessible variables including the inertial wind components. The research is aimed at advancing flight control systems by the integration of functionalities required to update the physics-based model and adapt the control-law in presence of model uncertainties due to unsteady and nonlinear aerodynamics. The overall configuration comprises a set of stabilizing robust H-infinity controllers in the inner loop for adjacent trim points, to be scheduled when required. New nonlinear guidance logic, stable in Lyapunov sense, is developed to guide the aircraft. The new guidance law can achieve a stable and steady-state error-free guidance through the use of integral effect and by lifting constraints related to maximum distances and relative position with respect to the trajectory, expanding them to the entire state space.
Significant research has been carried out in areas of nonlinear guidance, navigation, adaptive control, and estimation. A broad range of research can be found on trajectory tracking, path following, and robust nonlinear controllers [1–9]. In [1], authors presented the design of guidance and control algorithms for autonomous vehicles through a simultaneous process that achieved a zero steady-state error about a trim point and, at the same time, guaranteed stability by avoiding possible cross-coupling between loops. In [2], a lateral track control-law for an autonomous aerial system that handles a larger range of wind disturbance was presented. A different approach is presented in [3] where the tracking control problem is formulated as a constrained nonlinear optimization problem. Unlike receding horizon methods, the minimization must be performed at the current instant. Reference [4] introduced nonlinear guidance logic for curved trajectory tracking reducing to a proportional-derivative control when applied to straight lines. In [5, 6], waypoint guidance was improved by including the horizontal wind estimation, allowing the aircraft to smoothly converge to a new course after switching to the next trajectory segment. A different approach for path following is presented in [7] where vector fields are used to represent desired ground track and to direct the aircraft to the desired track. More recently, in [8], a Lyapunov-based adaptive back stepping approach is used to design a flight-path controller for a nonlinear F-16 model. A nonlinear lateral guidance law, introduced in [4], is extended and modified by the authors to the longitudinal plane in [9] and tested in simulation.
Estimation of unmeasured states from noisy observations has become an essential part of flight control systems. The Kalman filter, either with an adaptive matrix gain or a fixed one, appears to be the most widely used observer (see [10–13]). Different versions of the Kalman filter ranging from linear to nonlinear, with static or time-varying Kalman gains, have been used. More refined filters such as Particle Filtering [14] and Sigma-Point [15] are designed to achieve better estimations. Another interesting approach is detailed in [16], where a nonlinear filter is designed using the state-dependent Riccati equation (SDRE) method. This technique is applicable whenever the UAS is describable in a time-varying linear format. Reference [17] estimates the external wind component in the horizontal plane to correct the velocity transformations between the respective coordinate systems. Reference [18] presents application of Kalman filters in estimation of wind components.
Different approaches using ANN for estimation of aerodynamic coefficients have been reported. In references [19–25], ANNs were propagated in a feedforward manner and their weights and biases were numerically searched by back propagating the estimation quadratic error. References [22, 23] extract the stability and control derivatives of an unstable aircraft under closed loop using a technique called Delta method. In [26–29], the fuzzy logic method was used as an alternative to ANN. The fuzzy logic modeling is used to capture nonlinear unsteadiness aerodynamic. In [26–28], fuzzy logic was used as an alternative to ANN to capture nonlinearities and unsteadiness in aerodynamics. In [29], using postflight fuzzy logic analysis, instability, high nonlinearity, and time-dependency were found in aircraft dynamics in crosswind.
The paper is structured as follows. Section 2 presents the nonlinear modeling of the aircraft and its linear equivalent at equilibrium points. Section 3 describes the inner loop and the H-infinity controller design, techniques for gain scheduling, the outer loop and its attitude guidance logics, and assessment of guidance logic inherent stability. Section 4 describes the design of the extended Kalman filter and its main properties, and Section 5 describes the ANN and its role in aerodynamic coefficient estimation. The paper is finalized with results from comparison of the designed flight control system (FCS) with flight test data obtained from a commercial off-the-shelf (COTS) autopilot.
2. Aircraft Modeling
Following [30], a 33% scale Yak-54, shown in Figure 1(a), is modeled using Newton-Euler equations for 6-DOF rigid-body motion, as detailed in Appendix A. Its dynamics, defined in the coordinate systems shown in Figure 1(b), is a function of the states xT(t)=[VT,α,β,ϕ,θ,ψ,P,Q,R,δt,δe,δa,δr,pN,pE,pH], that is, airflow angles α,β, airspeed VT, attitude angles ϕ,θ,ψ, body angular rates P,Q,R, and inertial position pN,pE,pH. Throttle, elevator, aileron, and rudder servos are modeled as a first-order system with time constants τt,τe,τa,τr and states δt,δe,δa,δr, respectively. Wind components wN,wE,wH are included as uncontrollable, but measurable, disturbances to the model and will be estimated by an extended Kalman filter.
33% Scale Yak-54 UAS flight test at Pegasus Airfield, Antarctica (2010) (a). Coordinate Systems (b).
Controllable inputs to the system are propulsive and aerodynamic forces and moments, and gravity is understood as an uncontrollable input. By assuming perfect alignment with X-axis in body frame B-, propulsion or thrust XP(x,t)=fXP(δT,t) is modeled parametrically as a polynomial function on δT, as shown in Appendix B; consequently, no moments are induced. The aerodynamic forces [FB(x,t)]A and moments [MB(x,t)]A, defined in body frame B-, are not directly measurable, and they need to be estimated from accessible data. It is customary to express them in a normalized way as a function of coefficients CX,CY,CZ and Cl,Cm,Cn, as follows:
(1)[FB(x,t)]A=[XA(x,t)YA(x,t)ZA(x,t)]=[fXA(x,t)fYA(x,t)fZA(x,t)]=[q-(t)SCX(x,t)q-(t)SCY(x,t)q-(t)SCZ(x,t)],[MB(x,t)]A=[LA(x,t)MA(x,t)NA(x,t)]=[fLA(x,t)fMA(x,t)fNA(x,t)]=[q-(t)SbCl(x,t)q-(t)Sc-Cm(x,t)q-(t)SbCn(x,t)],
where b and c- are the wing span and wing geometric mean chord, S is the wing reference area, and q-=0.5ρVT is the dynamic pressure, with air density ρ.
Although limited, a widely accepted parametric modeling is the component build-up approach, a time quasisteady and linear (in perturbed states Δx(t)=x(t)-xtrim around the trim condition xtrim) model. Given its linearity and time-invariant structure, the model is valid in close proximity to the selected trim point. The present work chooses this method, based on [31], to assemble and compute these aerodynamic coefficients, as detailed in Appendix C. All constant coefficients, called stability and control derivatives, are obtained offline for selected trim conditions xtrim. A useful tool, used to obtain stability and control derivatives in this work, is the engineering level software Advanced Aircraft Analysis (AAA) [32], developed by Design, Analysis, and Research Corporation (DARcorporation) that has a built-in aerodynamic database for different types of aircraft models. The AAA modeling is based on the chosen trim condition and the aircraft geometric parameters.
Designing a set of linear time-invariant controllers requires linear and time-invariant representations of the UAS in each equilibrium or trim point. For this purpose, a UAS nonlinear state space model derived from previous development and denoted x˙(t)=f(x(t),u(t))∈Rn and y(t)=h(x(t),u(t))∈Rr with u(t)∈Rm, with uT(t)=[δtcmd,δecmd,δacmd,δrcmd] and yT(t)=[VT(t),θ(t),ϕ(t),β(t)], is linearized at each equilibrium (xei,uei,yei), indexed by superscript i. Subscript e refers to the equilibrium point. The following truncated Taylor series expansion of the state space equation up to a first-order derivative, at each equilibrium point,
(2)x˙(t)≈f(xei,uei)+∂f∂x|xeiuei(x(t)-xei)+∂f∂u|xeiuei(u(t)-uei),y(t)≈h(xei,uei)+∂h∂x|xeiuei(x(t)-xei)+∂h∂u|xeiuei(u(t)-uei),
gives the linear representation of the system at equilibrium. After cancellation of constant terms and defining the partial derivatives evaluated at each equilibrium point, the following linear time-invariant model, denominated Gi, is obtained for control design purposes:
(3)Δx˙(t)=AGiΔx(t)+BGiΔu(t),Δy(t)=CGiΔx(t)+DGiΔu(t).
From AAA, for a straight and level flight at a constant speed of 70(knots) with Jx=1.0886(slug·ft2), Jy=2.1068(slug·ft2), Jz=3.0382(slug·ft2), Jxz=0.05(slug·ft2), m=28(lb) and g=32.17(ft/sec2), [33] calculates the stability and control derivatives of a 33% scale Yak54; shown in Table 1.
AAA stability and control derivatives for 70 knots (from [33]).
Parameter
Value
Units
CD0
0.0513
[—]
CDα
0.0863
[1/rad]
CDδe
0
[1/rad]
CDα˙
0
[1/rad]
CDq
0
[1/rad]
CDu
0.0011
[1/rad]
CL0
0
[—]
CLα
4.5465
[1/rad]
CLδe
0.3792
[1/rad]
CLα˙
1.8918
[1/rad]
CLq
5.5046
[1/rad]
CLu
0.0017
[1/rad]
Cm0
0.0020
[—]
Cmα
−0.3937
[1/rad]
Cmδe
−0.8778
[1/rad]
Cmα˙
−4.3787
[1/rad]
Cmq
−8.0532
[1/rad]
Cmu
0.0002
[1/rad]
Cyβ
−0.3602
[1/rad]
Cyβ˙
0
[1/rad]
Cyp
0.0085
[1/rad]
Cyr
0.2507
[1/rad]
Cyδa
0
[1/rad]
Cyδr
0.1929
[1/rad]
Clβ
−0.0266
[1/rad]
Clβ˙
0
[1/rad]
Clp
−0.3819
[1/rad]
Clr
0.0514
[1/rad]
Clδa
0.3490
[1/rad]
Clδr
0.0154
[1/rad]
Cnβ
0.1022
[1/rad]
Cnβ˙
0
[1/rad]
Cnp
−0.0173
[1/rad]
Cnr
−0.1270
[1/rad]
Cnδa
−0.0088
[1/rad]
Cnδr
−0.0996
[1/rad]
The work done in [33] employed the vortex lattice model (VLM) as a second method for estimation of some of the stability and control derivatives. For uncertainty analysis, results from the AAA and VLM estimations were compared with results from flight tests system identification. Table 2 shows stability and control derivatives, the level of uncertainty (maximum and minimum), and the resultant center values and half range of each uncertainty derived from comparison. In order to switch trim conditions using gain scheduling, the same set of information and analysis had to be generated at those different trim points. In this research, and for the sake of abstraction, only information for one trim point, at 70 (knots), is presented.
Stability and control derivatives uncertainty range knots (from [33]).
Parameter
Maximum
Minimum
Central value
Half range
Cmq
−4.3720
−16.1064
−10.2398
5.8666
Cmδe
−0.7572
−1.2289
−0.9930
0.2359
Clβ
−0.0220
−0.0314
−0.0267
0.0047
Cnr
−0.1156
−0.2890
−0.2023
0.0867
Cnδr
−0.0996
−0.1404
−0.1200
0.0204
At the chosen trim condition, the linear model is stable in the roll, dutch roll, phugoid, and short period modes and is unstable in the spiral mode. Figure 2 shows the linearized system poles, zeros and modes.
Linearized system poles: zeros (a) and modes (b).
3. Inner and Outer Loops Design3.1. Inner Loop
The inner loop is constituted by a set of robust H-infinity controllers and a mechanism to perform gain scheduling among them based on current dynamic conditions. The linear time-invariant plant, given in (3), is augmented with design weighting matrices W1,W2, and W3, as shown in Figure 3(a), with inputs u1∈Rm1,u2∈Rm2 and outputs y1∈Rp1,y2∈Rp2, becoming the augmented plant Pi.
Augmented system (a). Singular values of weighting matrices W1 and W3 (b).
This is done in order to harmonize otherwise conflicting performance objectives, as low frequency reference tracking and disturbance rejection, and high frequency noise cancellation, by appropriately shaping particular closed loop sensitivity functions through these frequency-dependent weighting matrices. Plant Pi is then expressed as
(4)x˙P=AixP+B1iu1+B2iu2,y1=C1ixP+D11iu1+D12iu2,y2=C2ixP+D21iu1+D22iu2,
where superscript i continues to be an index among the set of augmented plants corresponding to each linearized plant Gi. One of the main requirements of the chosen gain scheduling procedure is to have a homogeneous augmented plant set in terms of same structure, states, inputs, and outputs. This is achieved by having a homogeneous linearized plant set, in terms of the similar nature of zeros and poles, same weighting matrices, and same controller calculation method.
The state vector xP is constructed by adding the states of the linearized plant and the states of the weighting matrices. In particular, the inertial positions pN,pE,pH are left out of the augmented state vector as they will be used in the guidance, and also yawing angle ψ is not included for being superfluous.
If the conditions detailed in Appendix D are met, then the suboptimal H∞ control problem [34, 35] provides a controller Ki that internally stabilizes the closed-loop system such that
(5)∥Ty1u1(s)∥∞=sup︸jwσ-[Ty1u1(jw)]≤γ,
for a given γ>0, where Ty1u1 is the closed-loop transfer function from exogenous inputs u1 (including references, disturbances, and noises) to error responses y1 (including weighted error, control, and output signals). In the present work, Ty1u1 is constructed as follows:
(6)∥Ty1u1(s)∥∞=∥W1(s)S(s)W2(s)R(s)W3(s)T(s)∥∞,
as a combination of desired weighted closed loop objectives, S(s), R(s), and T(s), that is, sensitivity, output sensitivity, and complementary sensitivity, respectively. Weighting allows their joint minimization. For an effective low frequency reference tracking and disturbance rejection, the weighting matrix W1 is built to have high singular values at the required range. For high frequency noise cancelation, W3 is designed to have high singular values in those higher frequencies. The weighting matrix W2 is designed as a constant matrix to uniformly penalize the control effort from getting unfeasible values and saturate actuators. Figure 3(b) shows singular values of the dynamic weightings chosen for the current trim condition.
In order to characterize parameter uncertainty (see Table 2), a linear fractional transformation (LFT) is employed. Uncertainties are extracted and packed into Δi, as shown in Figure 4(a), leaving a deterministic plant P^i, as opposed to the previous uncertain plant Pi. This LFT interconnection can be defined as
(7)[υy1y2]=P^i[ηu1u2]=[P^11i(s)P^12i(s)P^13i(s)P^21i(s)P^22i(s)P^23i(s)P^31i(s)P^32i(s)P^33i(s)][ηu1u2],η=Δiυ,u2=K-iy2,
or as y1=Fu(Fl(P^i,K-i),Δi)u1=Fl(Fu(P^i,Δi),K-i)u1, where Fl corresponds to the lower LFT and Fu to the upper LFT. Assuming that ∥Δ∥∞≤1, then by the Small Gain Theorem, the interconnected system shown in Figure 4(a) is internally stable if and only if ∥Fl(P^i,K-i)∥∞<1, [34].
General LFT connection (a). Uncertainty normalization (b).
For each derivative given in Table 2, an uncertainty range is built considering the highest and lowest values. These extreme values are used to calculate the central value and half range value. With this information, a normalized uncertainty range is constructed and pulled out of the plant. Figure 4(b) shows the arrangement for Clβ which is extensible to remaining uncertain derivatives. Rearrangement of Clβ in terms of central value ClβC and half range value ClβH leaves its uncertainty block with ∥Δji∥∞≤1. From pulling out of the system Pi each uncertainty block, an overall block Δi, from υ=[υ1,…,υj,…]T to η=[η1,…,ηj,…]T, is assembled as shown in Figure 4(a).
The 70knots trim condition is labeled as i=1, where, utilizing a set of weighting matrices as described before, a robust controller K-1, with ∥Ty1u1(s)∥∞=γ1=0.543, is achieved. For this closed-loop configuration, after extracting the uncertainties blocks, the infinity norms ∥Fl(P^1,K-1)∥∞, for each uncertain derivative, are shown in Table 3. The last row shows the worst case, the infinity norm for all uncertainties together; that is, ∥Fl(P^1,K-1)∥∞=0.5617. As by construction of ∥Δj1∥∞≤1, the Small Gain Theorem ensures that the controller robustness keeps stability facing the parameter uncertainty.
Closed-loop infinity norm associated to each uncertainty.
Parameter
∥Fl(P^1,K-1)∥∞
Cmq
0.3846
Cmδe
0.2451
Clβ
0.0100
Cnr
0.3816
Cnδr
0.1674
All
0.5617
The flight control system’s inner loop is equipped with a moderate fault tolerant capability. It is based on the ability to detect and identify dynamic changes due to faults that are characterized by changes in the aerodynamic forces and moment’s causal functions. The implicitly assumed that static relation from aircraft states and state derivatives and controls to forces and moments is monitored through an online ANN. Changes in the network’s parameters indicate unsteadiness in the aircraft dynamics, or an important trim condition transition. This information is utilized to adapt the current controller (and potentially the extended Kalman filter’s model) for the new known dynamic condition, implementing a gain scheduling technique. The management of the ANN is addressed in Section 5.
Following the approach used in [36], the idea is to update the current controller K-i based on an updated linear representation of the system Gi, as described in (3). Its matrices (AGi,BGi,CGi,DGi) are then used to compute a new robust controller through a new parameterization of Pi, utilizing initially the same design parameters used in the computation of K-i (i.e., same weighting matrices and same γi). Some simulation results are presented in Section 6. Before applying the new controller, assumptions in Appendix D should be assessed.
3.2. Outer Loop
The overall task of the inner loop, through the robust controller, is to drive the aircraft to follow external commands generated by the outer loop, by minimizing the error between the commanded and the actual state. This minimization is performed over the error in airspeed, pitch angle, bank angle, and side slip angle; that is,
(8)eVT(t)=VTcmd(t)-VT(t),eθ(t)=θcmd(t)-θ(t),eϕ(t)=ϕcmd(t)-ϕ(t),eβ(t)=βcmd(t)-β(t).
The outer loop’s task is to follow a trajectory path integrated by a set of waypoints {a→,b→,c→,…}, the straight segments subtended between them {ab,bc,cd,…}, and their assigned inertial speed {Vab,Vbc,Vcd,…}. To this end, it has two main subsystems; one is to generate the attitude commands ϕcmd,θcmd based on the current inertial position pN,pE,pH and speed vN=p˙N, vE=p˙E, vH=p˙H, and the relative location of the aircraft with respect to the path to follow; a second subsystem is to generate the airspeed command VTcmd based on the path inertial speed corrected with the estimated wind. The sideslip command βcmd does not require any specific logic, and it is set to zero for the entire flight.
The logic in the generation of attitude commands ϕcmd,θcmd, to keep the aircraft on path, is based on a nonlinear guidance logic developed in [4] for lateral guidance, which for small errors and straight lines approximates a proportional-derivative controller acting on the cross-track error. It generates the ϕcmd. To calculate the θcmd, a novel extension to the longitudinal plane from [9] is developed and employed. This extension also adds new features to the original guidance idea, ensuring its stability for any location and any attitude of the aircraft. Stability in the sense of Lyapunov is proven hereinafter for the extended logic. Figure 5 shows the quantities involved for each plane separately.
Attitude guidance logic geometry.
The guidance logic calculates the angles ηLat and ηLon between the lateral and longitudinal components of the inertial velocity vector V→Lat and V→Lon and the corresponding components vectors L→Lat and L→Lon from the position vector subtended from the current UAS position p→ and an imaginary point r→. Point r→ is located in the current segment between a→ to b→; see Figure 5.
This point r→ is also located at a fixed distance |r→-d→|=dr, a numerical value which is closely dependent on the dynamic characteristics of the aircraft. The intersection between the perpendicular line from the UAS position to the current segment ab is called d→. Point r→ moves as d→ moves in the direction of point b→. From the geometry seen in Figure 5, it is evident that a small or zero angle ηLat or ηLon is equivalent to a small or zero lateral or longitudinal cross-track error (distance between points p→ and d→) and the UAS flying in the segment direction, or that the UAS is off-track, but flying toward the trajectory. Once point r→ reaches a predetermined distance to the end of the segment, the segment switches to the next waypoint, now between b→ to c→, and the error angles are recalculated, based on the new position vectors.
These error angles ηLat and ηLon (being both negative as shown in Figure 5) are translated into attitude commands through the following nonlinear relations (see [9]):
(9)ϕcmd=tan-1{kaLat·ηLat·(kpLat+kiLats)},θcmd=tan-1{kaLon·ηLon·(kpLon+kiLons)},
where gains kp and ki are convenient gains resembling PI controllers. The integral action has been added to force the steady state angle error to zero. The arctangent function acts as a smooth limiter, avoiding unrealistic growth of the commands. The adaptive gains kaLat=2|V→Lat|2/|L→Lat| and kaLon=2|V→Lon|2/|L→Lon| are used to adequately neutralize changes in the aircraft’s speed due to external disturbances, such as a wind gusts; see [4]. For the particular geometry of the nonlinear logic, errors will be zero only when both vectors are aligned and the UAS is flying with zero cross-distance or when it is pointing toward the trajectory.
As the inner loop controller also works with the airspeed state error eVT, the predefined segment inertial speed is converted from inertial I to wind W- coordinate systems and adapted for the current wind estimation. So, when the aircraft, driven by the controller, is reaching the commanded airspeed and is on the track, it will also be flying closer to the desired inertial speed.
3.3. Stability in the Sense of Lyapunov
In order to test the stability of the guidance law (similar to [37]), a state space representation is developed in terms of the variables ηLat(t) and dd(t), the shortest distance from the UAS to the trajectory. Then, its stability in the sense of Lyapunov is assessed. From Figure 6(a), relations are defined among guidance variables, where the time dependence has been included for clarity. Rate of change of distance dd(t) is described as follows:
(10)d˙d(t)=|V→Lat(t)|sin(ηLat(t)-ηLatc(t)),
where positive distance is as shown and ηLatc(t) is defined as ηLatc(t)=tan-1(dd(t)/dr). As a sign convention, angles measured counterclockwise are taken positive.
Lateral guidance geometry (a). Phase portrait of lateral guidance (b).
For the dynamics of ηLat(t) the centripetal acceleration acent(t), shown in Figure 6(a), is defined as
(11)ddt(ηLat(t)-ηLatc(t))=-acent(t)|V→Lat(t)|.
By assuming the inner controller accomplishes a close tracking of ϕcmd, and assuming acent=gtanϕ, which is valid for coordinated turns, the following dynamics holds:(12)η˙Lat(t)=-|V→Lat(t)|ηLat(t)dd2(t)+dr2+|V→Lat(t)|dr(dd2(t)+dr2)sin(ηLat(t)-tan-1dd(t)dr),
where the speed is assumed to be constant; that is, |V→Lat(t)|=120[ft/sec]≈70knots, kiLat=0, kpLat=1/2g, and dr=300 [ft]. The dynamics from (10) and (12) are used to form an autonomous nonlinear state space system and to evaluate its stability. Using a numerical and graphical solution, these equations are propagated in time for different initial conditions. Figure 6(b) shows phase portrait of the autonomous system, where all trajectories converge to the origin. It is clear that the lateral guidance logic is asymptotically stable in the sense of Lyapunov for any initial distance dd and -π>ηLat>π.
4. Extended Kalman Filter
To improve the quality of measurements and to provide estimations of unmeasured quantities, an EKF is designed based on [38] (method briefly reviewed in Appendix E) for the following dynamic model x^˙(t)=f^(x^(t),u(t)) composed of the aircraft modeling defined in Section 2. Biases and wind components are defined as new states(13)f^:{p^˙N=U^cosϕ^cosψ^+V^(-cosϕ^sinψ^+sinϕ^sinθ^cosψ^)+W^(sinϕ^sinψ^+cosϕ^sinθ^cosψ^)-w^N,p^˙E=U^cosθ^sinψ^+V^(cosϕ^cosψ^+sinϕ^sinθ^sinψ^)+W^(-sinϕ^cosψ^+cosϕ^sinθ^sinψ^)-w^E,p^˙H=U^sinθ^-V^sinϕ^cosθ^-W^cosϕ^cosθ^-w^H,V^˙T=(U^U˙+V^V^˙+W^W^˙)V^T,α^˙=(U^W^˙-W^U˙)(U^U^+W^W^),β^˙=(V^TV^˙-V^V^˙T)(V^T2cosβ^),ϕ^˙=P^+tanθ^(Q^sinϕ^+R^cosϕ^),θ^˙=Q^cosϕ^-R^sinϕ^,ψ^˙=(R^cosϕ^+Q^sinϕ^)cosθ^,P^˙=(c2P^+c1R^)Q^+q-Sb(c3C^l+c4C^n),Q^˙=c5P^R^+c6(R^2-P^2)+q-SC-c7C^m,R^˙=c8P^Q^-c2R^Q^+q-Sbc4C^l+q-Sbc9C^n,δ^˙T=-10δ^T+10δTcmd,δ^˙E=-14.30δ^E+14.30δEcmd,δ^˙A=-14.30δ^A+14.30δAcmd,δ^˙R=-5δ^R+5δRcmd,w^˙N=w^˙E=w^˙H=V^˙Tb=α^˙b=β^˙b=P^˙b=Q^˙b=R^˙b=a^˙Xb=a^˙Yb=a^˙Zb=H^˙Xb=H^˙Yb=H^˙Zb=0,where body velocities {U^,V^,W^} and their time rate of changes are defined as in Section 2 and Appendix A. The EKF model also utilizes the following output equation y^=h^(x(t),u^(t)), designed based on available sensors including inertial position (GPS), Euler angles (IMU), body angular rates (IMU), airflow angles vane and airspeed probe, 3D magnetic flux, body angular rate (3D gyros), translational accelerations (3D accelerometers), and elevator, aileron, and rudder deflection sensors (14)h^:{y^1=p^N,y^2=p^E,y^3=p^H,y^4=ϕ^,y^5=θ^,y^6=ψ^,y^7=P^,y^8=Q^,y^9=R^,y^10=V^T+V^Tb,y^11=α^+α^b,y^12=β^+β^b,y^13=H^X+H^Xb,y^14=H^Y+H^Yb,y^15=H^Z+H^Zb,y^16=P^+P^b,y^17=Q^+Q^b,y^18=R^+R^b,y^19=(X^P+X^A)m+a^Xb,y^20=Y^Am+a^Yb,y^21=Z^Am+a^Zb,y^22=δ^E,y^23=δ^A,y^24=δ^R.
State vector x^[k]∈Rn^, input vector u[k]∈Rm^, equivalent to the system input, and measurement vector y^[k]∈Rr^ are defined as
(15)x^[k]=[H^Zb[k]p^N[k],p^E[k],p^H[k],V^T[k],α^[k],β^[k],ϕ^[k],θ^[k],ψ^[k],P^[k],Q^[k],R^[k],δ^T[k],δ^E[k],δ^A[k],δ^R[k],w^N[k],w^E[k],w^H[k],V^Tb[k],α^b[k],β^b[k],P^b[k],Q^b[k],R^b[k],a^Xb[k],a^Yb[k],a^Zb[k],H^Xb[k],H^Yb[k],H^Zb[k]]T,u[k]=[δTcmd[k],δEcmd[k],δAcmd[k],δRcmd[k]]T,y^[k]=[p^N[k],p^E[k],p^H[k],ϕ^[k],θ^[k],ψ^[k],P^[k],Q^[k],R^[k],V^T[k]+V^Tb[k],α^[k]+α^b[k],β^[k]+β^b[k],HX0+H^Xb[k],HY0+H^Yb[k],HZ0+H^Zb[k],P^[k]+P^b[k],Q^[k]+Q^b[k],R^[k]+R^b[k],a-X[k]+a^Xb[k],a-Y[k]+a^Yb[k],a-Z[k]+a^Zb[k],δ^E[k],δ^A[k],δ^R[k]]T,
where the subscript b refers to bias, a refers to acceleration, and H^ indicates magnetic flux. Subscripts {X,Y,Z} are defined in body frame B- and the subscript zero denotes the inertial reference magnetic flux for the flying area, assumed fixed. Variable a- is defined as a function of estimated states, as follows:
(16)[a-xa-ya-z]=[R^V^-Q^W^+(T^+q-^SC^X)m-R^U^+P^W^+q-^SC^YmQ^U^-P^V^+q-^SC^Zm],
where q-^ is the estimated dynamic pressure and {C^X,C^Y,C^Z} are the estimated body aerodynamic force coefficients. The calculated accelerations {a-X,a-Y,a-Z} plus the estimated biases {a^Xb,a^Yb,a^Zb}, as shown in (15), are used as the estimated accelerations. They do not include gravity effects to keep consistency to accelerometer measurements. As in Section 2 and Appendix A, the same relations apply to the estimated stability and body aerodynamic coefficients and to the estimated thrust T^. The body magnetic flux {HX,HY,HZ} is related to the inertial magnetic flux {HN0,HE0,HD0} as follows:
(17)[HXHYHZ]=CIB(ϕ,θ,ψ)[HN0HE0HD0]+[H^XbH^YbH^Zb],
where CIB corresponds to the direction cosine matrix for rotation from inertial reference I to body reference B-. The inertial magnetic flux {HN0,HE0,HD0} is a known fixed data obtained for the area to be flown.
5. Artificial Neural Network
A feedforward ANN with a single hidden layer, containing a finite number of neuron cells with sigmoid-type activation functions and a linear activation functions at the output cells, intrinsically materializes the universal approximation theorem. It approximates any multivariate continuous function on a compact domain subset of Rm to any degree of accuracy. Based on this theorem, proven originally in [39], for any given continuous function fj(X)∈R1, with X=[x1,x2,…,xn]T∈Rn, both normalized within the range [-1,1] and for δ>0, there exist an integer N and a set of parameters (weights and biases) bi,cj∈R, and wi∈Rn and aji∈R with i=1⋯N and j a fixed value from the set {1⋯p} indicating a particular function within a set of related functions, as is the case of aircraft accelerations, such that
(18)Fj(X)=∑i=1Najiφ(wiTX+bi)+cj
is as an approximation of the function fj(X); that is, |Fj(X)-fj(X)|<δ, where φ(·) is a bounded monotonically increasing activation function. Figure 7 shows the general structure of the ANN and its interconnections.
Structure of ANN.
To develop an iterative adaptive online algorithm, one learning epoch at each sample time is performed. This is done using a sliding window of data. This moving window has a constant length in time, but as new data is measured, the oldest data is discarded and the new is added as the most recent (concept similar to shift registering). Using the concept of sliding mode learning, the ANN is kept permanently in the training stage adapting its parameters to reflect changes in the dynamics of the aircraft.
For vertical acceleration estimation a^Z=a-Z+a^Zb (reducing the ANN to one single output), the sliding windows of input and target data, X^[k]∈RNA×n and Y^[k]∈RNA, are defined as follows, where NA sets the window’s length: (19)X^T[k]=[V^T[k-NA+1]V^T[k-NA+2]⋯VT[k-1]VT[k]α^[k-NA+1]α^[k-NA+2]⋯α^[k-1]α[k]β^[k-NA+1]β^[k-NA+2]⋯β^[k-1]β[k]Q^[k-NA+1]Q^[k-NA+2]⋯Q^[k-1]Q[k]α^˙[k-NA+1]α^˙[k-NA+2]⋯α^˙[k-1]α˙[k]δ^T[k-NA+1]δ^T[k-NA+2]⋯δ^T[k-1]δT[k]δ^E[k-NA+1]δ^E[k-NA+2]⋯δ^E[k-1]δE[k]],Y^T[k]=[a^Z[k-NA+1]a^Z[k-NA+2]⋯a^Z[k-1]a^Z[k]].
The training is done by minimizing the accumulated quadratic error between a^Z=a-Z+a^Zb and the estimated ANN vertical accelerations a_Z, that is, minimizing the cost function W(η)=εT(η)·ε(η)∈R, where
(20)ε(η)=[ε[k-NA+1,η]⋮ε[k,η]]×[a^z[k-NA+1]-a_z[k-NA+1,η]⋮a^z[k]-a_z[k,η]],
where the line subscript is used to identify the ANN estimations, and where η∈Rm is the parameter vector
(21)ηT=[η1,…,ηm]=[a11,…,ap1,…,a1N,…,apN,b1,…,bN,w11,…,w1n,…,wN1,…,wNn,c1,…,cp]
with m=p×n+N×n+N+p. Using a Newton-type search method, the following iterative update is defined as
(22)η[k+1]=η[k]-[∇2W(η[k])]-1·∇TW(η[k]),
where ∇W(η[k]) and ∇2W(η[k]) are the gradient and the Hessian of the cost function W with respect to the parameter vector, defined as follows:
(23)∇W(η)=[∂W∂η1⋯∂W∂ηm],∇2W(η)=[∂2W∂η12⋯∂2W∂η1∂ηm⋮⋱⋮∂2W∂ηm∂η1⋯∂2W∂ηm2].
These quantities are approximated numerically at each iteration where the error vector ε(η) can be approximated by a first-order Taylor series
(24)ε(η+Δη)≈ε(η)+J(η)·Δη,
where the rows of J(η), the Jacobian of ε(η), include the gradients of each element of ε(η) with respect to the parameter vector η as follows:
(25)J(η)=[∇ε[k-NA+1,η]⋮∇ε[k,η]]=[∂ε[k-NA+1,η]∂η1⋯∂ε[k-NA+1,η]∂ηm⋮⋱⋮∂ε[k,η]∂η1⋯∂ε[k,η]∂ηm].
Then, the cost function W(η), evaluated at η+Δη, is expressed as
(26)W(η+Δη)≈εT(η)·ε(η)︷W(η)+2εT(η)·J(η)︷∇W(η)·Δη+12ΔηT·2JT(η)·J(η)︸∇2W(η)·Δη.
From (26), the cost function’s gradient ∇W(η[k]) and Hessian ∇2W(η[k]) are then obtained as functions of the error vector ε(η) and its Jacobian J(η). Then, (22) is rewritten as
(27)η[k+1]=η[k]-[2JT(η[k])·J(η[k])]-1·[2εT(η[k])·J(η[k])]T.
As a way to improve the numerical search, the Levenberg approach is chosen (see [40]), where a factor called Levenberg adaptive parameter λ is introduced. This method permits a transition from a steepest descent to a quadratic method when closer to the minimum. Based on this approach, (27) is modified as
(28)η[k+1]=η[k]-[2JT(η[k])·J(η[k])+λI]-1·[2εT(η[k])·J(η[k])]T.
Under Levenberg’s logic, this adaptive parameter is adjusted during each iteration based on the cost function evolution. In this paper, the logic is modified to reset the Levenberg’s adaptive parameter, that is, λ[k], when reaching predefined extreme values to avoid unbounded growing specially when the cost function has reached a minimum and consecutive iterations remain closer to it (a common occurrence in one-shot offline minimizations). This modification is required to keep the ANN under permanent training. The modification is as follows:
(29)Startwithλ[k]=λ0IFW([k+1])<W([k])⟶λ[k+1]=λ[k]λdecIFλ[k+1]<λmin⟶λ[k+1]=λ0IFW([k+1])≥W([k])⟶λ[k+1]=λ[k]·λincIFλ[k+1]>λmax⟶λ[k+1]=λ0,
where 0<λmin<λmax are the minimum and maximum allowed values, and λdec>0 and λinc>0 are the decrement and increment correction factors. All these factors are empirically obtained after extensive simulations.
6. Simulation and Testing
This section is devoted to test previous designs in simulation, by employing stored flight test data, and also by comparing the designed FCS performance in contrast with a COTS autopilot under similar conditions, for the same aircraft. The manufacture of COTS system cannot be revealed due to contractual obligations.
6.1. ANN Simulation Results
The ANN estimation capability is evaluated for a window length of NA=400 (samples), which corresponds to 10 seconds of past flight for a sampling interval dt=1/40 seconds. For the logic defined in (29), λ0=0.001, λmax=1, λmin=0.00001, λdec=3, and λinc=2.
Two simulations are run for a 33% Yak-54 UAS, with and without measurement noise. Figures 8 and 9 show the convergence of the parameters, the cost function minimization, the Levenberg adaptive parameter, and the measured and estimated vertical acceleration, considering noise. Figures 10 and 11 show the same information for the case without noise.
Cost function minimization, no noise (a). Parameter evolution, no noise (b).
Levenberg adaptive parameter, no noise (a). Vertical acceleration, no noise (b).
Cost function minimization, with noise (a). Parameter evolution, with noise (b).
Levenberg adaptive parameter, with noise (a). Vertical acceleration, with noise (b).
By using the Delta method, which is a numerical technique to approximate partial derivatives, stability and control derivatives can be extracted.
The standard application of this technique, in previous cited articles, is generally offline postprocessing analysis. The idea presented here is to allocate a specific logic and to compute these approximate partial derivatives online. Two identical structures of the ANN are kept in parallel. They are fed incoming measurements, similar to the ANN under training. Also, these two structures are updated with the current weight and biases from the ANN. One of these structure is fed with a perturbed input (i.e., measured angle of attack plus a small added perturbation), while the second structure is kept fed by unperturbed inputs. By taking the quotient between the differences of the two structures outputs, with respect to the magnitude of the added perturbation, an approximation of the partial derivative is obtained in real time.
For this case, the partial derivative of the vertical acceleration with respect to some input of the ANN is obtained. These quantities can then be used to calculate more specific stability and control derivatives by converting from body to stability coordinates. This allows the capability of detecting dynamic changes due to internal or external changing conditions, or due to failures, by monitoring the time tendency of these values.
By comparing Figures 8 and 9, with Figures 10 and 11, the effect of measurement noise is clear. Cost function values are considerably higher. Also, the parameter vector does not settle permanently and it adjusts continuously due to the inherent variability condition of the Levenberg parameter.
As shown in Figure 11(b), a fairly good prediction is achieved. Further precaution needs to be observed to avoid deep changes, as seen between seconds 54 and 55 when a steep readjustment occurred. Using a desktop, each iteration took less than 1.2 seconds; this means that a dedicated microprocessor must be used for real-time estimations.
6.2. Adaptive Artificial Neural Network Testing
To verify the performance of ANN’s adaptive capability in the modeling of unsteady aerodynamic forces, actual 33% scale Yak-54 UAS flight test data from the 2009 flight test at Pegasus Airfield in Antarctica is used. The data was collected with a sampling frequency of 10 (Hz). For comparison and validation purposes, the same ANN for Z-axis acceleration is trained and tested with and without adaptiveness. This ANN is constructed from twenty cells (M=20) in the hidden layer and fed with same inputs as defined earlier for online ANN. Figure 12 shows the flight test data and the estimations with and without adaptiveness.
Z-axis measured and predicted acceleration: larger flight portion (a); zoom after switching control (b).
The flight had a well-defined pattern. From a prolonged circular autonomous period of flight, the aircraft is switched to remote control for landing around second 1145. During autonomous flight, the nonadaptive ANN is trained. It is then tested in both the remaining autonomous flight segment and during the remote controlled period. The adaptive ANN is tested in the same interval as the nonadaptive ANN.
Figure 12 shows a close estimation of both types of ANN before mode switching. After changing control sources, a significant dynamic behavior experienced by the aircraft left nonadaptive ANN outdated.
6.3. Gain Scheduling Simulation Results
To assess the gain scheduling techniques, hypothetical failures are induced through changes in the numerical value of stability and control derivatives. The gain scheduling adapts controllers to guarantee the aircraft stability and performance in the event of an adverse condition (e.g., servo failure or damage). Extreme changes could be a result of system failure or a result of damage to the aircraft. An adaptive flight control system must have the potential to adjust for failure or damage to maintain control in flight and meet the required handling qualities that allow for safe recovery of the airplane. As a condition for successful gain scheduling, the FCS is expected to achieve a similar level of performance and required uncertainty management before and after detection of dynamic changes.
To replicate a major change in the lateral-directional dynamics of UAS due to a failure or unsteady aerodynamics, at 120 seconds of a horizontal level flight, the numerical value of Cnβ (Table 1) is reduced by a factor of 4. This reflects a sudden change in the UAS dynamics, affecting the stability of UAS directionally. After inducing this change, the current controller loses its stabilizing capability and oscillation can be traced in the aircraft’s lateral-directional states. As it was demonstrated in Section 6.2, the adaptive ANN allows identification of sudden changes in the aircraft dynamics in real time.
At 138 seconds and after detection of an unexpected change in the aircraft’s stability and control derivative (i.e., change in Cnβ), the adaptive controller replaced the old controller with a new one and successfully mitigated sudden change in the aircraft’s dynamics. The growing amplitude of oscillation is damped out and the roll and yaw rates and sideslip angle are effectively controlled.
The resultant period of time taken to implement the gain scheduling (18 seconds) is affected by the fact that the failure does not show up immediately and the vehicle remains mostly unaffected. The induced failure is an alteration of the rate of change in yaw rate with respect to changes in sideslip angle, that is, Cnβ, so for an original constant and close to zero sideslip (horizontal level flight), no immediate effect is observed. After sideslip angle starts to change, the failure has a multiplicative effect and grows faster. This is evident after second 130.
It is important to point out that although the closed loop remains (linearly) stable, the uncertainty robustness is lost, as the infinity norm grows over the unity ∥Fl(P^1,K-1)∥∞=4.6355. In other words, a well-designed flight control system is robust to a fairly large range of uncertainty or changes in aircraft dynamics, however, if the changes become more extreme the performance degrades and the aircraft may go unstable. An adaptive system has the ability to readjust the controller to achieve desired performance or regain robustness about the new point.
In transition between controllers and to avoid significant sensitivity, the gain scheduling must be coupled with the ANN output. Figures 13 and 14 show the failure and consequent gain scheduling effects, on primarily involved states. All simulations were performed with the full FCS.
Sideslip angle (a). Roll rate (b).
Yaw rate (a). Rudder deflection (b).
To broaden the applicability of FCS technologies and to extend assessment process, a failure which degrades aircraft’s longitudinal stability is modeled. It is assumed that at 200 seconds of a horizontal level flight, a failure in the aircraft caused a major change in the magnitude of Cmα (Table 1). The numerical value of Cmα is reduced by a factor of 10. As it is shown in Figures 15, 16, and 17 and after the failure took place, the longitudinal robust stability is severely affected; that is, ∥Fl(P^1,K-1)∥∞=0.8895.
Airspeed (a). Angle of attack (b).
Engine throttle (a). Elevator deflection (b).
Pitch angle.
Detection of the failure, calculation of a new controller, and gain scheduling are assumed to happen after 5 seconds (200–205 (sec)). At 205 seconds, the new controller is online modifying control surface commands. Severe impact is seen in all major longitudinal variables, as shown in Figures 15, 16, and 17.
The abrupt change in the angle of attack stability coefficient (Cmα) increases the pitch angle and subsequently reduces the airspeed. To mitigate these effects, the elevator is commanded to quickly recover the equilibrium about pitch axes and restoring the pitch angle. To restore the airspeed, the throttle is also commanded. As demonstrated with the simulated failure, the system without adaptation cannot achieve the desired tracking or performance.
6.4. Functionality Tests and Comparison with Flight Test Data
The purpose of this subsection is to assess different functionalities of the designed FCS and to compare its performance in closed loop with autonomous flight test data obtained using a COTS autopilot system. It is known that the COTS system uses an H-infinity controller. For comparison purposes, similar flight conditions are induced in the simulation, and same waypoints/trajectory are used for path following. Superficially, performances of the designed FCS and the COTS autopilot are compared in the following categories:
extended Kalman filter performance (flight measurements versus EKF estimation);
inner loop: H-infinity robust controller performance (e.g., the maximum commanded bank angle);
outer loop: accuracy of guidance logic and path following in tight turns in presence of crosswind (e.g., deviation from the desired trajectory);
airspeed and altitude control;
saturation of controls.
6.4.1. Extended Kalman Filter Testing
A slow update rate GPS position sampled at 2 (Hz) is employed to test the smooth interpolation capability of the EKF. Figure 18 shows the measured and estimated geographical position and altitude.
Latitude (a). Longitude (b). Altitude (c).
6.4.2. Flight Control System Testing
As part of the comparison, inner and outer loops and extended Kalman filter, as defined before, are included in testing. In this subsection, no gain scheduling and no ANN estimations are performed. These two features are tested independently and presented in previous two subsections.
The FCS controls the aircraft to follow a trajectory autonomously flown by a 33% Yak-54 UAS equipped with a COTS autopilot. This system contains an H-infinity robust controller in the inner loop, an outer loop logic for waypoint following, and an extended Kalman filter, running at 10 (Hz). Its sensors include a GPS, an IMU, a 3D accelerometer, a 3D gyro, a 3D magnetometer, a barometer, and a pitot tube.
For the similarity of the flight test and simulation comparisons, same initial conditions are extracted and used from the flight test data. To replicate external disturbance, COTS estimated wind information was also injected.
Figure 19 shows 3D views, and Figures 20 and 21 show the control signals for both the designed FCS and COTS autopilot. The top view of 3D simulation in Figure 19 demonstrates superior performance of new nonlinear guidance logic in guiding UAS on curved and tight trajectories in presence of a crosswind. The wind was blowing from the west, and the maximum deviation from the desired trajectory happened when the UAS equipped with a COTS autopilot was in a crosswind (magenta line Figure 19).
3D full view path following (a). 3D zoom view path following (b) and (c).
Engine throttle deflection (a). Elevator deflection (b).
Aileron deflection (a). Rudder deflection (b).
By design, the COTS autopilot does not command rudder. This imposed extra demand on the aileron causing higher banking angles when initiating turns. Despite dissimilarity of COTS system and the designed FCS, some basic but important comparisons can be made. As it is shown in Figures 20 and 21, the COTS autopilot and the designed FCS are not subject of control saturation issues.
Figure 22(a) shows the comparison between the COTS autopilot and the designed FCS in airspeed command following. For the sake of unbiased comparison, the COTS autopilot wind estimation is used in the simulation 14.1 (ft/sec) from 291°. The airspeed command has a step increment around 380 seconds.
Airspeed (a). Ground speed (b).
The ground speed is shown in Figure 22(b) in a wider portion of the flight. The error in airspeed control of the COTS autopilot is seen as the result of bias. This presumption is confirmed by adding a bias of about 10–12 (ft/sec) to the measured airspeed and disabling the FCS’s Kalman filter for an even comparison. After inducing the bias, ground speeds achieve higher similarity.
Figure 23 shows the attitude angles. It is important to notice that the extended Kalman filter takes a few seconds to converge from the given initial conditions affecting the first part of the estimation, but showing a good command following after possible transients.
Bank angle (a). Pitch angle (b).
7. Conclusions
An adaptive control comprising a robust inner controller, stable outer nonlinear guidance logic, and neural network fault detection is designed to provide increased resiliency to mitigate effects of on-board adverse conditions and unsteady aerodynamics. The aerodynamic models of UAS associated with hazardous weather or on-board adverse conditions are inherently nonlinear and unsteady. Under these conditions, although the closed-loop H-infinity is still linearly stable, the controller does not have uncertainty robustness and the infinity norm can grow over unity. A modified artificial neural network is successfully implemented for real-time nonlinear estimations of the aerodynamic forces. The Levenberg’s adaptive parameter resets when reaching predefined extreme values. This modification allows avoiding unbounded growing when the cost function has reached a minimum. The sliding mode learning concept is used to keep the artificial neural network in learning phase continuously. A dynamic learning process of artificial neural networks increases the robustness against on-board adverse conditions and external disturbances. New nonlinear guidance logic which is extended from the lateral plane to the longitudinal plane has demonstrated superior performance in guiding unmanned air systems on curved trajectories in presence of external disturbances such as crosswind. The new logic adds new features ensuring its stability for any location and any attitude of the aircraft. The flight control system shows a satisfactory level of adaptability and resilience which is achieved by the adaptive nonlinear modeling, noise rejection, and biases attenuation. The robustness is assured by the proper gain scheduling between predefined trim points and for identified dynamic changes. It was found that in transition between gains and to avoid significant sensitivity, the gain scheduling must be coupled with the ANN output.
AppendicesA. Aircraft Dynamic Modeling
Based on a Newton-Euler modeling approach, the aircraft dynamic model comprises a 6-DOF rigid-body set of equations for a fixed-wing aircraft in flat earth. Referred to the aircraft’s center of gravity CG, as shown in Figure 1(b), it is defined in four interrelated coordinate systems, that is, the inertial coordinate system I- aligned with the inertial local flat earth coordinate system I, the body coordinate system B- fixed to the aircraft, the wind coordinate system W- oriented toward the relative wind, and the stability coordinate system S- oriented as shown. Consider
(A.1)V˙T=(UU˙+VV˙+WW˙)VT,α˙=(UW˙-WU˙)(UU+WW),β˙=(VTV˙-VV˙T)(VT2cosβ),ϕ˙=P+tanθ(Qsinϕ+Rcosϕ),θ˙=Qcosϕ-Rsinϕ,ψ˙=(Qsinϕ+Rcosϕ)cosθ,P˙=(Jxz[Jx-Jy+Jz]PQ-[Jz(Jz-Jy)+Jxz2]QR+JzLA+JxzNA)×(JxJz-Jxz2)-1,Q˙=[Jz-Jx]PR-Jxz[P2-R2]+MAJxJz-Jxz2,R˙=([(Jx-Jy)Jx+Jxz2]PQ-Jxz[Jx-Jy+Jz]QR+JxzLA+JxNA)×(JxJz-Jxz2)-1,δ˙t=δtτt+δtcmdτt,δ˙e=δeτe+δecmdτe,δ˙a=δaτa+δacmdτa,δ˙r=δrτr+δrcmdτr,p˙N=Ucosθcosψ+V(-cosϕsinψ+sinϕsinθcosψ)+W(sinϕsinψ+cosϕsinθcosψ)-wN,p˙E=Ucosθsinψ+V(cosϕcosψ+sinϕsinθsinψ)+W(-sinϕcosψ+cosϕsinθsinψ)-WE,p˙H=Usinθ-Vsinϕcosθ-Wcosϕcosθ-wH,
where moments of inertia Jx,Jy,Jz, product of inertia Jxz, mass m, and gravity acceleration g are assumed constant. Body velocities U,V,W in body frame B- are define by U=VTcosαcosβ, V=VTsinβ, and W=VTsinαcosβ, and their rate of change as
(A.2)U˙=RV-QW-gsinθ+(XT+X)m,V˙=-RU+PW+gsinϕcosθ+Ym,W˙=QU-PV+gcosϕcosθ+Zm,
where aerodynamic forces XA,YA,ZA and moments LA,MA,NA, together with the engine thrust XT, act in the system as controllable inputs.
B. Polynomial Time-Invariant Engine Thrust Modeling
Highly dependent on the type and configuration of the engine, thrust XP is modeled parametrically as a polynomial function on δT as
(B.1)XP(x,t)=fXP(δT,t)=TX2·δT2(t)+TX1·δT(t)+TX0,
where TX2,TX1,TX0 are constant parameters to be estimated from flight test data for the trim point xtrim.
C. Linear and Time-Invariant Aerodynamic Coefficient Modeling
The following relations, defined in the stability axis S-, are used to model the aerodynamic coefficients CD,CL,Cm,Cy,Cl,Cn as
(C.1)CD=CD0+CDαα+CDδeδe+CDα˙α˙c-2Utrim+CDqqc-2Utrim+CDuuUtrim,CL=CL0+CLαα+CLδeδe+CLα˙α˙c-2Utrim+CLqqc-2Utrim+CLuuUtrim,Cm=Cm0+Cmαα+Cmδeδe+Cmα˙α˙c-2Utrim+Cmqqc-2Utrim+CmuuUtrim,Cy=Cyββ+Cyβ˙β˙b2Utrim+Cyppb2Utrim+Cyrrb2Utrim+Cyδaδa+Cyδrδr,Cl=Clββ+Clβ˙β˙b2Utrim+Clppb2Utrim+Clrrb2Utrim+Clδaδa+Clδrδr,Cn=Cnββ+Cnβ˙β˙b2Utrim+Cnppb2Utrim+Cnrrb2Utrim+Cnδaδa+Cnδrδr,
where p,q,r are the deviations of the body angular velocities from their constant trim values Ptrim,Qtrim,Rtrim, and u is the deviation from the constant trim speed Utrim. Aerodynamic coefficients in the stability coordinate system S- are transformed into body axes B- coefficients by a rotation in the amount of angle of attack trim value αtrim.
D. H-Infinity Robust Controller Design Conditions
Conditions to obtain a stabilizing H-infinity controller are
(Ai,B2i) stabilizable and (C2i,Ai) detectable;
rank(D12i)=m2 and rank(D21i)=p2;
D12i=[0Im2]T and D21i=[0Ip2], and D11i is expressible as
(D.1)D11i=[D1111i︸(p1-m2)x(m1-p2)D1112i︸(p1-m2)x(p2)D1121i︸(m2)x(m1-p2)D1122i︸(m2)x(p2)];
D22i=0;
rank[Ai-jwIB2iC1iD12i]=n+m2;
rank[Ai-jwIB1iC2iD21i]=n+p2,
where assumption c, if not achieved by the chosen weighting matrices, can be obtained via scaling of u2 and y2 together with a unitary transformation of u1 and y1. After previous assumptions are met, there is γi>0, for which the following relations holds:
(D.2)max(σ-[D1111iD1112i],σ-[D1111iTD1112iT])<γi,Xi≥0,Yi≥0,ρ(Xi·Yi)<(γi)2.
This is equivalent to the existence of an internal stabilizing controller K-i(D.3)K-i=[A-iB-1iB-2iC-1iD-11iD-12iC-2iD-21i0]
whose components are given by
(D.4)A-i=Ai+HiCi+B-2i(D-12i)-1C-1i,B-1i=-H2i+B-2i(D-12i)-1D-11i,B-2i=(B2i+H12i)D-12i,C-1i=F2iZi+D-11i(D-21i)-1C-2i,C-2i=-D-21i(C2i+F12i)Zi,D-11i=-D1121iD1111iT((γi)2I-D1111iD1111iT)-1D1112i-D1122i,
and D-12i and D-21i are any matrices satisfying the relation D-12iD-12iT=I-D-1121i((γi)2I-D-1111iTD-1111i)-1D-1121iT and the relation D-21iD-21iT=I-D-1112i((γi)2I-D-1111iTD-1111i)-1D-1112iT. The feedback Fi and state feedback Hi matrices are
(D.5)Fi=[F11i}(m1-p2)x(n)F12i}(p2)x(n)F2i}(m2)x(n)]=-(Rai)-1[D1aiTC1ii+BiTXi],Hi=[H11i︸(n)x(p1-m2)H12i︸(n)x(m2)H2i︸(n)x(p2)]=-[BiD1biT+YiCiT](Rbi)-1,
where
(D.6)Bi=[B1iB2i],Ci=[C1iC2i],Zi=(I-(γi)-2Yi·Xi)-1,D1ai=[D11iD12i],D1bi=[D11iD21i],Rai=D1aiTD1ai-[(γi)2Im1000],Rbi=D1biD1biT-[(γi)2Ip1000].
Matrices Xi and Yi are the solutions of the following Riccati equations:
(D.7)(Ai-Bi(Rai)-1D1aiTC1i)TXi+Xi(Ai-Bi(Rai)-1D1aiTC1i)-Xi(Bi(Rai)-1BiT)Xi+C1iT(I-D1ai(Rai)-1D1aiT)C1i=0,(Ai-B1iD1biT(Rbi)-1Ci)Yi+Yi(Ai-B1iD1biT(Rbi)-1Ci)T-Yi(CiT(Rbi)-1Ci)Yi+B1i(I-D1biT(Rbi)-1D1bi)B1iT=0.
E. Extended Kalman Filter Algorithm
The filter’s functions f^ and h^ represent the observed system. They incorporate all available information of the aircraft characterized by functions f and h and other variables to be estimated as biases and wind; that is, f^⊇f and h^⊇h. Model mismatch v(t) and sensor noise w(t) are included through the Kalman gain K(t) calculation as shown later. The continuous-time observer is defined as
(E.1)x^˙(t)=f~(x^(t),u(t))+K~(t)(y(t)-y^(t)),y^(t)=h~(x^(t)),
where x^(t)∈Rn^ is the filter state vector and u^(t)∈Rm^ is the filter input vector.
Aircraft dynamics and observation equations x˙(t)=f(x(t),u(t))+v(t) and y(t)=h(x(t),u(t))+w(t) are assumed to be additively corrupted by uncorrelated Gaussian noise signals v and w. Applying the Euler discretization method, the n^ order discrete version is obtained x^[k+1]=x^[k]+ΔT[f^(x^[k],u^[k]) and y^[k]=h^(x^[k],u^[k]), valid at each sampling time interval ΔT, where index [k] corresponds to time (t) sampled at t=kΔT. The discrete extended Kalman filter algorithm is defined in two phases:(E.2)prediction{x^[k/k-1]=f^(x^[k-1/k-1],u^[k-1]),P[k/k-1]=F[k-1]P[k-1/k-1]FT[k-1]+Q[k-1],correction{K[k]=P[k/k-1]HT[k](H[k]P[k/k-1]HT[k]+R[k])-1,x^[k/k]=x^[k/k-1]+K[k](y[k]-h^(x^[k/k-1],u^[k])),P[k/k]=[I-K[k]H[k]]P[k/k-1].
No new information is considered in the prediction stage, and the one-step ahead prediction state vector x^[k/k-1] is obtained by propagating the equation f^ from previous state and input vectors at time [k-1]. The correction phase delivers x^[k/k] by adjusting x^[k/k-1] based on the difference between measurements and prediction, that is, y[k]-h^(x^[k/k-1],u^[k]), through the Kalman gain K[k]. In (E.2), P acts as the state error (x-x^) covariance, and matrices F and H constitute the Jacobian of the propagation equation f^ and observation equation h^, respectively; that is, F~[k-1]=∂f~/∂xx^[k-1/k-1],u[k-1] and H~[k]=∂h~/∂xx^[k/k-1]. Q~ and R~ are the covariance matrices of v and w, respectively.
Acknowledgment
This research was supported by the NSF Center for Remote Sensing of Ice Sheet (CReSIS) Grant NSF-0066685, at the University of Kansas.
KaminerI.PascoalA.HallbergE.SilvestreC.Trajectory tracking for autonomous vehicles: an integrated approach to guidance and control199821129382-s2.0-0031673631NiculescuM.Lateral track control law for Aerosonde UAVProceedings of the 39th AIAA Aerospace Sciences Meeting and Exhibit2001Reno, Nev, USABoyleD.ChamitoffG.Robust nonlinear lasso control: a new approach for autonomous trajectory trackingProceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit2003Austin, Tex, USAParkS.DeystJ.HowJ.A new nonlinear guidance logic for trajectory trackingProceedings of the AIAA Guidance, Navigation, and Control Conference and Exhibit2004Providence, RI, USAOsborneJ.RysdykR.Waypoint guidance for small UAVs in windProceedings of the AIAA Infotech, Aerospace Conference2005Arlington, Va, USARysdykR.Unmanned aerial vehicle path following for target observation in wind2006295109211002-s2.0-3374959830510.2514/1.19101NelsonD. R.BarberD. B.McLainT. W.BeardR. W.Vector field path following for miniature air vehicles20072335195292-s2.0-3444732723710.1109/TRO.2007.898976SonneveldtL.Van OortE. R.ChuQ. P.MulderJ. A.Nonlinear adaptive trajectory control applied to an F-16 model200932125392-s2.0-6034909249010.2514/1.38785GarciaG.KeshmiriS.ColgrenR.Advanced H-infinity trainer autopilotProceedings of the AIAA Modeling and Simulation Technologies Conference2010Toronto, CanadaRiosJ. A.WhiteE.Fusion filter algorithm enhancements for a MEMS GPS/IMUProceedings of the 14th International Technical Meeting of the Satellite Division of the Institute of Navigation (ION GPS '01)September 2001Salt Lake City, Utah, USA13821393ZhangP.GuJ.MiliosE. E.HuynhP.Navigation with IMU/GPS/digital compass with unscented Kalman filterProceedings of the IEEE International Conference on Mechatronics and Automation (ICMA '05)August 2005Niagara Falls, Canada149715022-s2.0-27744582312LiY.WangJ.RizosC.MumfordP.DingW.Low-cost tightly coupled GPS/INS integration based on a nonlinear Kalman filtering designProceedings of the Institute of Navigation, National Technical Meeting (NTM '06)January 2006Monterey, Calif, USA9589662-s2.0-33646018934Lin-linX.Jian-guoW.Li-huiZ.Li-junG.Nonlinear gaussian filter algorithm enhacements for los-cost integrated navigations systemsProceedings of the IEEE International Conference on Mechatronics and AutomationAugust 2009Changchun, China45664571RenY.KeX.Particle filter data fusion enhancements for MEMS-IMU/GPS2010241742110.4236/iim. 2010.27051Van der MerweR.WanE.Sigma-point kalman filters for integrated navigationProceedings of the 60th Annual Meeting of the Institute of Navigation (ION '04)2004Dayton, Ohio, USANemraA.AoufN.Robust INS/GPS sensor fusion for UAV localization using SDRE nonlinear filtering20101047897982-s2.0-7794939836610.1109/JSEN.2009.2034730EldredgeA.2006Provo, Utah, USADepartment of Mechanical Engineering, Brigham Young UniversityPachterM.CeccarelliN.ChandlerP. R.Estimating MAV's heading and the wind speed and direction using GPS, inertial, and air speed measurementsProceedings of the AIAA Guidance, Navigation and Control Conference and ExhibitAugust 2008Honolulu, Hawaii, USA2-s2.0-78651102570LinseD. J.StengelR. F.Identification of aerodynamic coefficients using computational neural networks1993166101810252-s2.0-0027698329FallerW. E.SchreckS. J.Real-time prediction of unsteady aerodynamics: application for aircraft control and maneuverability enhancement199566146114682-s2.0-002940361110.1109/72.471362LarsonM.De RaedtP.HedlundM.Aerodynamic identification using neural networks1997LiTH-154-1937Linköping, SwedenDepartment of Electrical Engineering, Linköping UniversityRaisinghaniS. C.ReddyG. V. S.GhoshA. K.Parameter estimation of an augmented aircraft using neural networksProceedings of the AIAA Atmospheric Flight Mechanics Conference and Exhibit1999Portland, Ore, USARaisinghaniS. C.GhoshA. K.Parameter estimation of an unstable aircraft in turbulent atmosphere using neural networksProceedings of the AIAA Atmospheric Flight Mechanics Conference and Exhibit2002Monterey, Calif, USAPeyadaN. K.GhoshA. K.Aircraft parameter estimation using a new filtering technique based upon a neural network and Gauss-Newton method200911311422432522-s2.0-67649848080DasS.KuttieriR. A.SinhaM.JategaonkarR.Neural partial differential method for extracting aerodynamic derivatives from flight data20103323763842-s2.0-7795050404610.2514/1.46053WangZ.LanC. E.BrandonJ. M.Fuzzy logic modeling of nonlinear unsteady aerodynamicsProceedings of the AIAA Atmospheric Flight Mechanics Conference and Exhibit1998Boston, Mass, USAWangZ.LanC. E.BrandonJ. M.Fuzzy logic modeling of lateral-directional unsteady aerodynamicsProceedings of the AIAA Atmospheric Flight Mechanics Conference and Exhibit1998Boston, Mass, USAHossainA.RahmanA.HossenJ.IqbalA. K. M. P.ZahirulM. I.Prediction of aerodynamic characteristics of an aircraft model with and without winglet using fuzzy logic technique2011158595605LanC. E.KeshmiriS.HaleR.Fuzzy-logic modeling of a rolling unmanned vehicle in antarctica wind shear201235515381547StevensB.LewisF.20032ndHoboken, NJ, USAJohn Wiley & SonsRoskamJ.2003Lawrence, Kan, USADARcorporationDARcorporation2009Wichita, Kan, USASoftware PackageLeongE.2008The University of KansasGloverK.DoyleJ. C.State-space formulae for all stabilizing controllers that satisfy an H∞-norm bound and relations to relations to risk sensitivity19881131671722-s2.0-0024085053ZhouK.DoyleJ.1998Upper Saddle River, NJ, USAPrentice HallGarciaG.KeshmiriS.ColgrenR.H-infinity gain scheduling design for the Meridian UAS for a broader range of operation and for fault tolerant applicationsProceedings of the 9th IEEE International Conference on Control and Automation (ICCA '11)December 201111741180ParkS.DeystJ.HowJ. P.Performance and lyapunov stability of a nonlinear path-following guidance method2007306171817282-s2.0-3684902342810.2514/1.28957SimonD.2006Hoboken, NJ, USAJohn Wiley & SonsCybenkoG.Approximation by superpositions of a sigmoidal function1989243033142-s2.0-002486187110.1007/BF02551274NocedalJ.WrightS. J.1999New York, NY, USASpringer