NOMENCLATURE
- ay
-
lateral acceleration, m/s2
- az
-
normal acceleration, m/s2
- CD
-
drag coefficient
- C D 0
-
zero-lift drag coefficient
- CL
-
lift coefficient
- C L 0
-
zero-angle-of-attack lift coefficient
- C L α
-
lift curve slope, rad−1
- dobs
-
distance to the obstacle, m
- D
-
aerodynamic drag, N
- FOV
-
field of view, deg
- g
-
acceleration due to gravity
- GC
-
guidance command
- GCT
-
guidance cycle time
- h
-
altitude, m
- K
-
induced drag coefficient
- L
-
aerodynamic lift, N
- m
-
mass, kg
- n
-
load factor
- NL
-
negative large
- NM
-
negative medium
- NS
-
negative small
- PP
-
path planning
- q
-
dynamic pressure, N/m2
- r min
-
minimum turning radius, m
- RS
-
aircraft reaction range, m
- R tangent
-
manoeuvre curve radius, m
- S
-
wing area, m2
- T
-
thrust, N
- TA
-
terrain avoidance
- TF
-
terrain following
- V
-
airspeed, m/s
- x
-
x-coordinate of aircraft position, m
- y
-
y-coordinate of aircraft position, m
- α
-
angle-of-attack, deg
- γ
-
flight path angle, deg
- ΔV
-
change in velocity, m/s
- Δθ
-
angle between velocity vector and tangent to the obstacle, deg
- η
-
throttle
- κ
-
curvature, 1/m
- ρ
-
air density, kg/m3
- τ(.)
-
time constant, s
- φ
-
bank angle, deg
- χ
-
flight path heading, deg
- ω(.)
-
controller bandwidth, s−1
- (.) c
-
command signal
1.0 INTRODUCTION
Due to the functionality of onboard sensors, some missions require low flight altitude. Cameras, because of their resolution, can be operational up only to a certain height. Radar altimeter as needed by a Terrain Reference Navigation system works properly only for low flight altitudes. In military surveillance applications low-altitude flight is necessary to detect objects camouflaged by natural obstructions. In many civilian applications, like agricultural insecticide spraying operations or aerial photography, the vehicle has to fly at low altitudes. To achieve mission effectiveness in the presence of threats in the modern battlefield environments, Unmanned Aerial Vehicles (UAVs) have to fly at low altitudes to avoid easy detection by ground radars. Hence, the capability to fly low level is of significant importance.
Terrain Following (TF) and Terrain Avoidance (TA) are two typical low-altitude flight possibilities. In TF flight, the aircraft steers only in a vertical plane, manoeuvres above the terrain to conform the terrain contours and keeps its heading toward a goal, whilst in TA flight the vehicle steers in a lateral plane to manoeuvre around the terrain even if it deviates much from the direct path to the target. An actual low-level flight can be considered to be a combination of TF and TA. The common theme in most existing approaches is to divide the TF/TA problem into Path-Planning (PP) and closed-loop control system design for path following. The current study, however, intends to develop an online TF algorithm in a different way than of the previous ones. Thus far, numerous approaches for both policies, i.e. PP and path following, have been studied in the literature. Here, some of them are reviewed in a chronological order.
In the TF problem considered by Funk(Reference Funk1), the altitude is parameterised by cubic splines. To determine these splines, a Non-Linear Programming problem (NLP) was solved to minimise the deviations from the terrain. This algorithm evaluates the constraints only at node points. Lu and Pierson(Reference Lu and Pierson2) formulate an offline 2D TF problem and solve it using an inverse dynamics approach and sequential quadratic programming. The longitudinal aircraft dynamics of a point-mass aircraft are incorporated into the optimisation problem. They also considered trajectory tracking via predictive control(Reference Lu and Pierson3). Nomoto et al(Reference Nomoto, Kameda, Mano and Tachibana4) have proposed a fuzzy reasoning-based algorithm for PP of an aircraft flying at low altitudes. This offline algorithm determines the steering acceleration considering merely the aircraft kinematics, not accounting for aspects of flight dynamics. Kumar et al(Reference Ajith KuMarch and Ghose5) proposed a combined algorithm for collision avoidance and guidance of flight vehicles. They use the collision cone concept and derive the avoidance law by limiting the considerations to a plane, defined by the relative geometry between the vehicle and the obstacle. The main issue of this approach is that it is designed to avoid only one obstacle at a time, which can be insufficient in obstacle-cluttered environments. Xu et al(Reference Xu, Yunan and Pingyuan6) considered TF control using adaptive control laws. After obtaining terrain outline data from digital elevation map, a back-stepping controller is designed to track a commanded angle-of-attack. Williams(Reference Williams7,Reference Williams8) obtains online optimal trajectories using a pseudo-spectral method. A three degree-of-freedom (DOF) point mass dynamic model is used to formulate the basic problem in the form of a nonlinear program. Then, 6DOF trajectories are extracted from the solution has already obtained from solving the resulting NLP. At last, these trajectories are converted into control commands, implemented via a receding horizon controller. The so-called virtual terrain approach proposed by Malaek and Kosari(Reference Malaek and Kosari9) converts the 2D time-optimal TF problem into an optimal tracking problem. Chebyshev polynomials are used in this method to model the geographical data of the terrain in a given route. Zardashti and Bagherian(Reference Zardashti and Bagherian10) present a model of the PP problem based on a layered network flow structure and shortest path criterion. This approach may not provide a practical trajectory because only kinematic constraints of the UAV were considered. In the approach proposed by Babaei(Reference Babaei11), the online 3D flight paths are derived through two steps. First, waypoints leading to target position are generated based on a constrained multi-objective optimisation. In the second step, Dubins trajectories are generated in 3D space. The guidance and control scheme proposed by Samar and Rehman(Reference Samar and Rehman12) takes as an input the geographical data of the terrain in a given route and generates a sequence of altitude change points and corresponding altitudes. The output of the TF algorithm is then used to generate smooth reference trajectories for the altitude tracking controller to follow. Based on the Manoeuvre Automaton (MA) concept, Karimi and Pourtakdoust(Reference Karimi and Pourtakdoust13,Reference Karimi and Pourtakdoust14) propose a real-time motion planning algorithm. In the MA, a trim-manoeuvre library for the Trim States (TSs) and their corresponding transition manoeuvre trajectories are generated and stored in a database in an offline fashion. A new dynamic hybrid particle swarm optimisation algorithm was then used to obtain the optimal sequence of TSs as discrete design variables and the flight times between the TSs as continuous design variables. Despite providing online solutions to the PP problem, this scheme results in inordinately sub-optimal solutions due to the domain discretisation and enforcement of the trim conditions on the nodes. Based on the high-fidelity 6DOF dynamic model, in the approach proposed by Kamyar and Taheri(Reference Kamyar and Taheri15), optimal trajectories are generated at first using a global Differential Evolution (DE)-based optimisation algorithm. Afterward, a MIMO Non-linear Model Predictive Control (NMPC) system is designed, enabling the aircraft to track the generated paths. Based on the Kinematic A* (KA*) graph search algorithm, in the guidance system proposed by De Filippis et al(Reference De Filippis, Guglieri and Quagliotti16), a sequence of offline-generated waypoints is converted in a continuous sequence of speed, heading and climb commands. This is done using a NMPC system, solving online a finite horizon open loop optimal control problem with genetic algorithm. Due to high computational cost, the approach may not be applicable on more challenging scenarios. In the so-called separately evolving waypoints scheme proposed by Yang et al(Reference Yang, Tang, Lozano and Cao17), the original problem that finds an optimal path is decomposed into a set of sub-problems, each of which aims to find an optimal waypoint of the path separately. The waypoints of a path will be evolved separately by a DE-based algorithm. Since more waypoints may be required to keep the path feasible, this algorithm may not have a good performance against the scenarios with a large number of obstacles. More recently, in the PP algorithm proposed by Lee and Shim(Reference Lee and Shim18), the basic RRT* algorithm is combined with the spline method. The algorithm generates paths satisfying approach direction constraints on both start and goal points.
Current approaches, although effective, are known to have some deficiencies in terms of shortcomings to handle motion constraints, calling for environment information beforehand, being computationally intensive and lacking online applicability. This work is motivated by the challenge to develop an efficient algorithm for TF flight in completely unknown rough terrain environments whilst overcoming the mentioned shortcomings. The aircraft must maintain a minimum safe clearance from the terrain and move fast enough so as to minimise the probability of being detected or tracked, as well. Our proposed approach represents a break with tradition in that the aircraft dynamics is directly incorporated in the guidance strategy without decomposing the overall problem. In this approach, at first a suitable 3D point mass dynamic model is developed that takes the lags in the vehicle dynamics into account. This model forms the inner loop. The aircraft is assumed to be equipped with a set of onboard sensors through which it can sense its surroundings and position. In the outer loop, the guidance algorithm employs acquired information from these sensors and then rapidly recommends pertinent Guidance Commands (GCs). The flight path forms gradually as a result of applying the GCs to the vehicle dynamics. The process is repeated until the desired target position is reached. The rest of the paper is organised as follows. Firstly, the development of a suitable 3D point mass dynamic model of aircraft is presented. Then a detailed description on how to generate GCs is provided. Hereafter, the simulation results are demonstrated, followed by a brief conclusion.
2.0 AIRCRAFT DYNAMIC MODELLING
The aircraft control problem is addressed by designing an inner non-linear control loop. This loop allows tracking of command velocity (Vc ), lateral and normal accelerations (a yc , a zc ). An outer loop guidance system then generates GCs in terms of desired velocity, lateral and normal accelerations for the inner loop, in order to guide the vehicle appropriately.
For the purposes of flight-path control design, it is usually sufficient to treat only the translational motion of the aircraft(Reference Williams7). In this respect, the aircraft is represented using a 3DOF point-mass model. It has been established through numerous studies the fidelity provided by this model is adequate for formulating guidance problems. The differential equations governing the point-mass model are given by(Reference Anderson and Robbins19–Reference Turra, Pollini and Innocenti21):
In these equations, airspeed (V), flight path angle (γ), flight path heading (χ), and the three position variables (x, y, h) are six state variables describing the aircraft motion. Also, m is the mass, T = ηT max is the thrust, T max is the maximum available thrust, g is the acceleration due to gravity, L and D are aerodynamic lift and drag, respectively, and S is the aircraft wing area. The lift and drag forces are expressed as below:
The aircraft is assumed to be controlled by thrust T, angle-of-attack α and bank angle φ. These pseudo-control inputs being given through first order lags from command signals:
Due to the presence of lags in the actuators, controllers and vehicle dynamics itself, the aircraft cannot change its thrust, angle-of-attack and bank angle instantaneously, as a consequence. These lag filters model no more than this fact. Tc , α c and φ c are the commanded values for thrust, angle-of-attack and bank angle, respectively. The time constants τ T , τα and τφ are vehicle dependent. Equations (1)–(6) along with Equations (9)–(11) constitute a set of differential equations representing the aircraft plus its autopilot. This set will be referred to as “aircraft dynamics”.
The guidance system guides the aircraft by generating appropriate airspeed, lateral and normal acceleration commands. The desired velocity and accelerations are written in terms of a commanded airspeed (Vc ), lateral acceleration (a yc ) and normal acceleration (a zc ). It is assumed that these will be determined by the following linear time invariant equations:
Assuming perfect modelling, derivation of the dynamic inversion control law is a matter of setting the commanded rates in Equations (12)–(14) equal to the associated actual rates and solving for Tc , α c and φ c . The computed thrust, angle-of-attack and bank angle become the commanded values needed for Equations (9)–(11). Setting Equation (1) equal to Equation (12) and solving for thrust, results in:
The thrust command obtained from Equation (15) is constrained so that the throttle (η) remains within 0.15 to 1. For a jet aircraft T max is a function of air density ratio:
It is required to determine α c and φ c needed for Equations (10) and (11) in a similar manner. To this end, first the following definitions are considered:
It can also be shown that the load factor is given by:
Differentiating Equations (17) and (18) with respect to time and assuming sin α ≈ α, results in:
Substituting for
$\dot{\alpha }$
and
$\dot{\varphi }$
from Equations (10) and (11), respectively, and equating Equation (13) and Equation (22) and also equating Equation (14) and Equation (23) and then solving the obtained system for α
c
and φ
c
, gives:
$$\begin{equation}
{\alpha _c}= \alpha + \ \frac{{{\tau _\alpha }}}{{\bar{q}S{C_{{L_\alpha }}} + T}}\left\{ { - \rho V\dot{V}S{C_L} + \ \frac{{m\left[ {{a_y}{\omega _{{a_y}}}\left( {{a_{{y_c}}} - {a_y}} \right) + {a_z}{\omega _{{a_z}}}\left( {{a_{{z_c}}} - {a_z}} \right)} \right]}}{{{a_y}\sin \varphi + {a_z}\cos \varphi }} - \alpha \dot{T}} \right\},\nonumber\\
\end{equation}$$\\
Nominal parameters

3.0 GUIDANCE STRATEGY
In TF flight, it is intended to maintain a minimum predetermined clearance above the terrain and to fly fast enough so as to minimise the probability of being detected or tracked. Therefore, maintaining low altitude and high speed at the same time are the typical tactics in TF flights(Reference Malaek and Kosari9). In this section, GCs are produced based on real-time assessment of the terrain quality within the Field Of View (FOV). Normal and lateral accelerations and velocity are three motion control variables considered for the aircraft guidance. As it is shown in Fig. 1, these commands are the inputs to the interface unit. The simulation platform shown in this figure consists of three components: the guidance algorithm (outer loop), interface unit, and aircraft dynamics (inner loop). If it were to conform the terrain contours in vertical plane (2D TF), as is the case for this study, the lateral acceleration command would be zero. The other two motion control variables are determined as follows.
The structure of the proposed guidance strategy.
Let us consider Fig. 2, where a 2D FOV with radius RS is shown. This FOV which is assumed to be symmetric with respect to the velocity vector is divided up into n equal segments. Here, RS is the aircraft reaction range. The angle formed by i th virtual beam and the velocity vector is shown by Δθ i (i = 1, 2, . . ., n), which is considered as positive upward. Once the environment is scanned by the vehicle onboard sensors, the terrain profile is known at all sections within the FOV range. The sampling is done once every guidance cycle. For current study, the guidance cycle time (GCT) is set to be 1.5 seconds. Also, numerical values of FOVV and RS are presented in Table 1. Thus, based on performed segmentation of vertical FOV, vehicle distance to the obstacles along each virtual beam will be known, too. Now, two general cases are conceived:
-
1) There are obstacles within the vehicle FOV and the related profile is such that the vehicle velocity vector passes through the obstacles (Δθ i > 0). In this case, if the aircraft continues to do so, there will definitely be a collision. To avoid this imperative collision, it is necessary to rotate the velocity vector upward. This is feasible by generating appropriate positive normal acceleration.
-
2) There are no obstacles within the FOV, or if there are, the related profile is such that the velocity vector does not pass through the obstacles (Δθ i ⩽ 0). Although in this case there will not be any collision, to maintain a specified minimum clearance height above the terrain, it is necessary to rotate the velocity vector downward by generating appropriate negative normal acceleration, and hence decreasing the aircraft altitude.
Vertical field of view.
As shown in Fig. 3, the distance to the obstacle (dobs ) and the angle formed by the velocity vector and the tangent to the obstacle (Δθ i ) are two parameters affecting the collision avoidance manoeuvre quality. These two parameters are used to determine the manoeuvre curve radius, R tangent. The manoeuvre curve is defined as a circular path that has the following characteristics and motion on which ensures realisation of desired objectives:
-
a) The current position of the aircraft is a point on this curve.
-
b) The vehicle velocity vector is tangent to this curve anywhere.
-
c) It has no collision with obstacles.
-
d) Its radius is the largest possible one.
Geometry used to determine the manoeuvre curve radius.
The third property for the first case discussed earlier is equivalent to say that the terrain profile must reside entirely outside of the manoeuvre curve. In contrast, for the second case, it implies that the terrain profile must reside totally inside of that curve.
Now, based on the relative geometry shown in Fig. 3, R tangent, which updates once every guidance cycle, could be determined in terms of dobs and Δθ i as follows:
where r
min is the aircraft instantaneously minimum turning radius, which varies as
$\frac{{{V^2}}}{{{a_{{z_{{\rm{max}}}}}}}}$
. Thus, the curvature of the manoeuvre curve, κ, lies in the interval
$[ {0,\frac{1}{{{r_{{\rm{min}}}}}}} ]$
. The k parameter is used as a safety factor and takes a value of 0.9 in this study. Now, the normal acceleration command can be produced as follows:
$$\begin{equation}
{a_{{z_c}}}\ = {\rm{sign}}\left( {\Delta {\theta _i}} \right)*\frac{{{V^2}}}{{{R_{{\rm{tangent}}}}}} + g{\rm{cos}}\gamma ,
\end{equation}$$
where the first term is to rotate the velocity vector appropriately to conform the terrain profile. The magnitude of this term is determined by the magnitude of the velocity (which updates at each control cycle) and manoeuvre curve radius, whilst its sign is determined by the sign of Δθ i . The second term compensates the acceleration due to gravity.
Finally, the velocity command is produced as below:
where ΔV represents the reduction in velocity based on quality of facing terrain and is determined through a fuzzy system(Reference Jang, Sun and Mizutani22). The curvature of the manoeuvre curve is the input to this fuzzy system. The manoeuvre curve curvature, (κ), is converted into three linguistic fuzzy sets {Low, Med, High} with the membership functions shown in Fig. 4(a). The velocity change is represented by the three linguistic fuzzy sets {NL, NM, NS} with the membership functions shown in Fig. 4(b). This system consists of the following three rules:
-
1) If K is Low, then ∆V is NS.
-
2) If K is Med, then ∆V is NM.
-
3) If K is High, then ∆V is NL.
Membership functions for (a) curvature of the manoeuvre curve and (b) the change in velocity.
4.0 SIMULATION RESULTS
To evaluate the performances of the proposed approach, the simulation platform is implemented in the Matlab environment. The structure of this platform was shown in Fig. 1. A pseudo-code of the algorithm is also presented in Fig. 5. The dynamics were of a fighter-type aircraft with characteristics listed in Table 1. Several typical scenarios have been conducted. This section presents simulation results to illustrate the efficacy of the TF strategy when it is applied to a TF mission in a completely unknown real mountainous area. The aircraft flies from a given initial location to a known target position at low altitudes with a variable speed and an initial heading toward the target. It is assumed that the aircraft starts initially from (x, y) = (20, 45) km, and the target locates in (x, y) T = (85, 10) km. The aircraft initial height is 180 m above the terrain and its initial flight path angle is −5°. The time step for integration was set to 0.10 second. Figures 6–14 show the results obtained from numerical simulation. Figure 6 illustrates the path that the aircraft has taken during flight. As it can be seen, the aircraft has successfully reached the target. For comparison, Fig. 7 displays aircraft altitude versus terrain height. The difference between vehicle altitude and terrain height is presented in Fig. 8. The clearance height was set to be 60 m, which is respected all the time, as shown in Fig. 8. The normal acceleration and the load factor are depicted in Figs 9 and 10, respectively. The maximum variation of load factor from a level flight is about 1.5 g. Figure 11 illustrates the flight path angle. The flight path angle reaches a maximum absolute value of approximately 21°. The pseudo-controls, namely, angle-of-attack, and throttle lever are shown in Figs 12 and 13. Through the development of the dynamic model, it was assumed that the angle-of-attack remains small. Here, the validity of this simplifying assumption is confirmed. In order to have a more realistic simulation, the throttle is constrained to be in interval (0.15, 1). Finally, Fig. 14 shows the velocity time history. Based on traversability of the terrain region facing the flight direction (and hence, based on manoeuvre curve radius), the aircraft has flown with a velocity of 190–280 ms−1. In summary, the simulation results verify the feasibility and the validity of this algorithm and show how this method can make the aircraft safely and smoothly conform terrain profile in a completely unknown real mountainous area, avoid collision and successfully reaches its target. In the case of a manned aircraft, to a significant extent this capability could lead to reduction of pilot work load.
The pseudo-code of the proposed algorithm.
The flight path travelled by the aircraft.
Aircraft altitude vs. terrain height underneath.
Aircraft height above terrain.
Aircraft normal acceleration.
Aircraft load factor.
Aircraft flight path angle.
Aircraft angle-of-attack.
Throttle lever.
Aircraft velocity.
5.0 CONCLUDING DISCUSSION
The paper contributions include the development of an online TF strategy, suitable for terrain profile conforming in completely unknown real environments. In essence, the 2D TF problem was converted into velocity and normal acceleration planning. As demonstrated by the results, the algorithm is simple and efficient. It is efficient because of its online applicability while it is aware of the lags in the dynamics, manoeuvre capabilities of the vehicle and sampling constraint. Anyway, an actual low-level flight is a combination of TF and TA. This study is, however, confined to the 2D TF problem. Future work should be undertaken to extend the proposed algorithm to a more general 3D low-altitude flight.
ACKNOWLEDGEMENTS
The authors appreciate both the editor and reviewers for their insightful comments, guidance and advice which led to this improved version of the paper.
