• Non ci sono risultati.

A model predictive control approach to aircraft motion control

N/A
N/A
Protected

Academic year: 2021

Condividi "A model predictive control approach to aircraft motion control"

Copied!
210
0
0

Testo completo

(1)

DOCTORALPROGRAMME ININFORMATION TECHNOLOGY

SYSTEMS ANDCONTROL AREA

A MODEL PREDICTIVE CONTROL APPROACH TO

AIRCRAFT MOTION CONTROL

Doctoral Dissertation of:

Luca Deori

Supervisor:

Prof. Simone Garatti

Co-Supervisor:

Prof.ssa Maria Prandini

Tutor:

Prof. Marco Lovera

The Chair of the Doctoral Program:

Prof. Carlo Fiorini

(2)
(3)

Air traffic is expected to increase over the next few decades, and this growth is likely to lead to route congestions and delays. For this reason new effi-cient methods to manage air space has been developed: they rely on 4-D trajectories and Target Windows (TWs). TWs impose time-space specifica-tions on the aircraft trajectory so as to enhance airspace capacity and safety. In this work we aim to develop a control strategy for aircraft motion able to address time-space specifications on the aircraft trajectory as those imposed by 4-D trajectories and TWs. Furthermore, the controller has to account for the aircraft dynamics and physical limitations, and it has to be robust with respect to disturbances, in particular, with respect to wind. A Model Pre-dictive Control (MPC) approach is adopted given its capability to handle constraints. MPC involves the formulation of a finite horizon optimization problem to be solved on-line, whose solution is applied according to a re-ceding horizon strategy. Application of MPC to aircraft motion control is not straightforward. Indeed aircraft dynamics is non linear and constraints have to be accounted for to model its physical limitations. In this work, feedback linearization is exploited to a obtain linear model with respect to a new set of state and input variables which exactly matches the original aircraft dynamics. However, aircraft motion constraints expressed in the new variables result non convex. An effort is then put in reformulating them by means of convex approximations that allow to recover computa-tional tractability. As the TWs specifications involve large time and space scales, they require to be addressed focusing on very large time horizons, a requirement that cannot be fulfilled in the finite horizon problem underly-ing the construction of the MPC control law. For this reason, we develop a method to design trajectories that comply with TWs specifications and account for aircraft motion capability. The designed trajectories are then used as reference for the MPC controller that is required to keep the air-craft as close as possible to it. The controller should track the reference robustly with respect to the wind, which is modelled as an unbounded sup-port stochastic disturbance. To address this issue, chance-constraints are enforced on the aircraft position, but due to the complexity of the wind model, the chance-constrained problem result computationally unafford-able. Therefore, we resort to randomized solution algorithms, specifically the scenario approach, to find approximate but guaranteed solutions to the chance-constrained finite horizon optimization problems at relatively low computational effort. The effectiveness of the proposed approach is shown by means of simulations.

(4)
(5)

1 Introduction 1

1.1 Problem description and sketch of the proposed solution . . 3

1.1.1 Structure of the thesis and contributions . . . 5

2 Aircraft model 7 2.1 Aircraft model (simple) . . . 8

2.2 Aircraft model (complex) . . . 9

2.3 Aircraft constraints . . . 11

2.4 Wind model . . . 12

3 Feedback linearization & Constraint convexification 19 3.1 Feedback linearization (simple model) . . . 20

3.2 Feedback linearization (complex model) . . . 22

3.2.1 Time discretization . . . 29

3.3 Reformulation of the constraints in the new variables . . . . 29

3.4 Feasibility of the constraints . . . 38

4 Trajectory generation 39 4.1 Introduction . . . 39

4.1.1 Sketch of the proposed design approach . . . 40

4.2 Path design . . . 42

4.2.1 Motion primitives . . . 42

4.2.2 Path composition . . . 48

4.2.3 Choice of lr1, lu1and gridding of lr7and sV II . . . . 55

(6)

4.2.5 Bounds for s1 . . . 60

4.3 Choice of initial and final conditions . . . 64

4.4 Time law design . . . 67

4.4.1 PWA speed profile . . . 67

4.4.2 Choice of initial and final conditions for the speed profile . . . 69

4.4.3 Conversion from s to t . . . 70

4.5 Numerical results . . . 71

5 Tracking problem formulation and solution 81 5.1 Finite horizon optimization problem . . . 81

5.2 Modelling wind in the optimization problem . . . 84

5.2.1 Deterministic wind component . . . 85

5.2.2 Stochastic wind component . . . 86

5.3 Solution of the optimization problem via the scenario approach 94 5.4 Alternative formulations . . . 99 5.4.1 Disturbance feedback . . . 103 5.5 Numerical results . . . 105 5.5.1 Simulation 1 . . . 106 5.5.2 Simulation 2 . . . 114 5.5.3 Simulation 3 . . . 121 5.5.4 Validation . . . 125

6 Uncertainty on aircraft mass 129 6.1 Feedback linearization with mass uncertainty . . . 130

6.2 Finite horizon optimization problem with mass uncertainty . 132 6.2.1 Multiplicative disturbance . . . 133

6.2.2 Additive disturbance . . . 134

6.3 Numerical results . . . 136

7 Conclusions 143 A Randomized methods for stochastic constrained control 147 A.1 Introduction . . . 147

A.1.1 Bibliographical remarks . . . 150

A.1.2 Possible extensions . . . 151

A.2 Notational issues . . . 151

A.3 Trading performance for state constraint feasibility . . . 153

A.3.1 Additional penalization term in the control cost . . . 154

A.3.2 Two-step approach based on a pre-defined admissible deterioration of the control cost . . . 154

(7)

A.4 Approximate solution to the optimization problems . . . 155

A.4.1 Algorithms . . . 156

A.4.2 Chance-constrained feasibility of the obtained approx-imate solutions . . . 159

A.5 Choice of µ and α and trade-off between J and h . . . 161

A.6 Numerical example . . . 164

A.7 Relaxation approach focused on constraints . . . 169

A.8 Scenario-based resolution scheme . . . 171

A.9 Proof of Theorem 2 . . . 174

A.10Numerical example . . . 179

B Constraint reformulation with LMI 185

C Alternative choices of the desired path length 191

(8)
(9)

CHAPTER

1

Introduction

Air transportation is nowadays a widespread service that plays an impor-tant role in modern world. It allows people and goods to reach far away locations across the whole planet with times and costs were not achievable before. Air transportation has, hence, become an essential means to boost economic and cultural exchanges among people and societies, [1].

In order to ensure the safety and efficiency of aircraft operations Air Traf-fic Management (ATM) systems have been developed, [13, 14, 30, 38, 43, 49, 58]. They aim to provide cost effective solutions to manage and in-crease airspace capacity, and to guarantee safety requirements predicting and avoiding possible conflicts between aircraft flying too close each other. Traditional ATM systems are rigidly structured: they are mainly based on predefined routes that the aircraft are required to follow; these routes are connected by way-points that also act as crossroads.

Air traffic is expected to increase rapidly over the next decades, [65], and this growth is likely to be unsustainable for rigidly structured ATM systems leading to the saturation of the routes, congestions, and delays. In order to face the increasing air traffic, new concepts are needed to exploit more effectively the airspace, ensuring more efficiency and safety.

(10)

con-cept of 4-D trajectories and Target Windows (TWs), [2–4]. TWs represent constraints on the 4-D trajectories requiring that the aircraft passes through a 2-D region (typically a rectangle) in the 3-D space within a given time in-terval, see Figure 1.1. In the SESAR [2] and in the CATS projects [3], TWs are viewed as a key enabler of new ATM systems involving all different ac-tors (airlines, airports, air navigation service providers) in the management process. TWs should allow for a more efficient use of the airspace, enhanc-ing predictability of the aircraft trajectories, improvenhanc-ing safety and airspace capacity.

In perspective, each aircraft will be assigned a sequence of TWs to meet, where the TWs altogether are designed with the twofold objective of bet-ter exploiting the airspace capacity and of avoiding conflicts. Coping with TWs is not straightforward though because TWs impose non trivial con-straints on the aircraft motion in the time-space domain, which have to be satisfied while explicitly accounting for physical limitations on aircraft speed and accelerations and for other constraints related to passengers com-fort. Furthermore, the aircraft motion is affected by uncertainty, in partic-ular, the presence of wind, which leads to unpredictability of the aircraft trajectory, [10, 11, 25, 37, 53, 63].

TW

(11)

1.1

Problem description and sketch of the proposed solution

The main goal of this work is to develop a motion control able to steer the aircraft along a reference trajectory, which is designed by means of an original approach so as to be compatible with both the aircraft motion capabilities and the TWs time space requirements. Tracking is performed robustly with respect to the wind disturbance and accounting for the aircraft physical limitations. Hence, by keeping the aircraft as close as possible to the reference trajectory, compatibly with the effect of the wind disturbance, TW specifications are satisfied also by the actual aircraft trajectory. The intermediate steps to achieve these goals are now discussed in details. Given its capability of handling constraints on the input and on the state variables, a Model Predictive Control (MPC) approach to control design [21, 44, 46] is adopted. A discrete time model of the aircraft is used. MPC then involves minimizing at each sampled time instant a suitable finite hori-zon cost subject to suitable constraints so as to enforce trajectory tracking and the satisfaction of the aircraft physical limitations and passenger com-fort requirements. The so obtained control action is applied at the current time instant only, and the process is repeated at every sampled time (reced-ing horizon).

In formulating the finite horizon constrained optimization problem, a key issue for computational and solvability reasons is that of achieving con-vexity. Given that the model of the aircraft dynamics is non-linear, we apply feedback linearization so as to find a linear model with new input and state variables, whose dynamics exactly matches the original one. The so obtained linear model is then time discretized so as to be embedded in the MPC controller. The constraints on the aircraft physical limitations and passenger comfort rewritten with respect to the new state and input variables of the feedback-linearized model are non-convex. Hence, a ma-jor effort is put in reformulating these constraints as convex constraints, introducing some relaxation when needed. Such relaxations are appropri-ately designed so as to guarantee that the original constraints are satisfied at least for the first time instant of the current finite horizon. This way, the actually implemented MPC controller is guaranteed to satisfy the original constraints at all time steps, because of the receding horizon.

The idea of using feedback linearization followed by a convexification of the constraints is not new as it has been adopted in [39, 40, 68], while [64] discusses the problem from a general perspective. The contribution is to apply this methodology to address a control problem that was never tackled in this way before to the best of our knowledge. In this respect, the main

(12)

results which will be obtained are the solution of a non-trivial global feed-back linearization problem and the development of an ad-hoc method for the convexification of the constraints. This latter, in particular, is a prob-lem that still lacks a general solution and its resolution will require specific analysis for each type of constraint. For a different non linear MPC based approach that does not resort to feedback linearization see [52].

TWs specifications usually involve large time and space scales, and for this reason they are hard to be handled in the finite horizon problem to be solved at each time step in MPC. Therefore, in order to address TWs specifications we resort to generate reference trajectories that comply with TWs require-ments accounting at the same time for aircraft motion capabilities. To this purpose a method to suitably design such trajectories is developed. This method patches together simple motion primitives so as to eventually ob-tain a smooth trajectory that can be easily followed by the aircraft. Patching is obtained by solving a highly non linear system of equations by means of procedures specifically conceived to this purpose.

The obtained trajectory is then used as reference for the MPC controller, which has the critical task to keep the aircraft as close as possible to it, compatibly with the aircraft motion constraints and the disturbances. Note that the trajectory is composed by a path and a time law, and hence in order to track it the motion controller is required to steer the aircraft so as to make it reach the proper position at a proper timing.

To pursue the objective of tracking the reference trajectory, constraints on the aircraft position are included in the optimization problem. These con-straints depend on the wind disturbance which makes the problem challeng-ing because: (i) the wind disturbance depends non linearly on the aircraft position, and (ii) the wind disturbance has unbounded support, a fact that hampers the feasibility of the problem.

The former issue is addressed by replacing the original wind disturbance model with a local approximation, around the aircraft current position, which is accurate in the region of the airspace that the aircraft will be po-tentially flying into along the look-ahead time horizon of MPC. As for the latter issue, probabilistic – instead of robust – constraints are considered to avoid infeasibility, thus leading to a chance-constraint optimization pro-gram. More specifically, we require the controller to keep the aircraft po-sition error small for all wind realizations except for a set of prescribed probability .

To handle the probabilistic constraints, we resort eventually to the scenario approach, [17, 18, 22, 24], which allows to find approximate but guaranteed solutions to chance-constraint optimization problems at low computational

(13)

effort. In particular we rely on the approaches of [28, 29, 54, 61], where the scenario approach has been tailored to the MPC framework. This way, we eventually obtain an optimization problem that can be efficiently solved at every time step and which returns in receding horizon a well perform-ing, robust with respect to wind, control action as revealed by numerical simulations.

1.1.1 Structure of the thesis and contributions

• In Chapter 2 two aircraft models are presented: in the first model a simpler description of the aircraft dynamics is adopted, whereas in the second model additional dynamics and variables are included so as to achieve a more accurate representation of the aerodynamic forces. Constraints on the state and control variables of both models are in-troduced so as to account for the aircraft physical limitations and pas-sengers comfort. Moreover, a model for the wind disturbance that accounts for its correlation in space and time is described.

• In Chapter 3 feedback linearization is applied to both the considered aircraft models. Two different non linear feedback laws, one for each model, are computed to obtain a linear model with respect to a new set of state and input variables that corresponds exactly to the original air-craft dynamics. Constraints on airair-craft physical limitations expressed in the newly introduced variables are non convex: for each of them a specific convexification procedure is developed. Moreover some of the constraints take different expressions accordingly to the consid-ered aircraft model, and, consequently, different convex approxima-tions are needed to deal with them.

• In Chapter 4 a method to design reference trajectories complying with time space specifications is developed. The method starts defining simple motions primitives that are constructed so as to satisfy air-craft physical limitations constraints. These motion primitives are then joined together to define a smooth path connecting several Target Windows. Properly patching motion primitives involves the solution of a non linear system of equations which is addressed by a specific procedure that combines numerical and analytical methods with ad-hoc rules to determine all the path parameters. Eventually, a time law is applied to the designed path so as to define a trajectory that meets time and space specifications.

(14)

is addressed. The finite horizon optimization problem involved in MPC is formulated defining a suitable cost function and including constraints on the aircraft position in order to track the reference tra-jectory. The constraints developed in Chapter 3 accounting for air-craft physical limitations are included as well. As the constraints on aircraft position are affected by the wind uncertainty they are formu-lated as chance-constraints: they result computationally intractable due the complex model of the wind disturbance. For this reason, to tackle them, we resort to approximate local models of the wind distur-bance and to randomized methods. In particular the scenario approach is adopted to solve the chance-constrained program at low computa-tional effort providing guarantees on the robustness of the obtained solution. The effectiveness of the proposed controller is assessed by means of a number of numerical simulations.

• In Chapter 6 we focus on uncertainty on aircraft mass. Differently from the previous chapters where exact knowledge of the mass is as-sumed, here we consider that only an estimation of it is available. The steps developed in the previous chapters to design the MPC, in partic-ular the feedback linearization and the finite horizon control problem formulation, are revisited to assess the effects of mass uncertainty on the achieved performances.

• In Chapter 7 some concluding remarks are drawn.

• In Appendix A the constrained control of stochastic systems by means of randomized methods is discussed from a general perspective. In particular, different approaches to deal with chance-constraints on the state variables in presence of additive stochastic disturbances with un-bounded support are developed. A tailored version of these methods is adopted in the aircraft application.

• In Appendix B an alternative convexification procedure of the con-straints on aircraft physical limitations based on LMI is discussed. As the obtained constraint approximations turns out to be less effective than those in Chapter 3 they have not been adopted.

• In Appendix C a possible extension of the trajectory designed proce-dure of Chapter 4 is discussed.

(15)

CHAPTER

2

Aircraft model

In this chapter, models of the aircraft motion dynamics are described. Ad-mittedly, the models here considered are derived based on some simplify-ing assumptions that make them approximation of the actual dynamics of an aircraft. Nevertheless, we decided to investigate them for the following reasons:

1. it is customary to use simplified models when addressing ATM appli-cations, see e.g. [45] and [5].

2. more complex and accurate models can be derived as extensions of the ones here considered, so that the approaches developed in the fol-lowing retain validity for enhanced models as well.

The considered models are able to describe the aircraft dynamics from an intermediate perspective in which some relevant physical quantities related to aircraft motion are accounted for, but, on the other hand, some abstrac-tion is made so that the models result simple enough to be suitable to be used in the design of the controller.

In the following Sections 2.1 and 2.2 two aircraft models are described. They share a similar structure, in the first one a simpler description of

(16)

aero-dynamic forces is considered, the second model is more detailed and in-cludes additional variables and dynamics. Note that in order to properly model the aircraft physical limitations and to ensure safety of operations and passenger comfort, constraints on aircraft velocities, accelerations and relevant physical angles have to be considered, as described in Section 2.3. Moreover, since wind significantly affects the aircraft motion, in Section 2.4 a model of the wind is described.

2.1

Aircraft model (simple)

Following [31, 45], we consider a six-state, flat earth, trimmed, point mass model for the aircraft dynamics. The state variables are given by the posi-tion of the aircraft expressed in Cartesian coordinates x, y, z with respect to a fixed frame, the True Air Speed (TAS) of the aircraft V (which is the rel-ative aircraft speed with respect to the surrounding air), the heading angle ψ (which is the angle between the projection of the aircraft velocity on the x-y plane and the x-axis), and the mass m of the aircraft. The inputs of the system are the path angle γ (which is the angle between the velocity and the x-y plane), the bank angle φ (which is the angle between the lift force and the plane containing the aircraft velocity and the z-axis), and the engine thrust T . The presence of the wind is modelled by adding a disturbance (wx, wy, wz) to the aircraft velocity along the x, y, z axes respectively. The

system evolves according to the following equations           ˙x ˙ y ˙z ˙ V ˙ ψ ˙ m           =           V cos ψ cos γ + wx V sin ψ cos γ + wy V sin γ + wz −CDρSV2 2m − g sin γ + T m CLρSV 2m sin φ −ηT           , (2.1)

where CDand CLare the drag and lift coefficients, ρ is the air density which

is a function of the altitude z, S is the surface of the wings, g is gravitational acceleration, η is a fuel consumption coefficient. According to [5], the lift coefficient is set equal to

CL =

2mg ρSV2cos φ,

so that the weight force is always compensated by the lift force (trimmed condition), while the drag coefficient is given by CD = CD0 + CD2CL2,

(17)

where CD0 and CD2are suitable coefficients. As a result, the dynamics for

the heading angle becomes ˙ ψ = g

V tan φ. Thus, the final model of the aircraft becomes:

          ˙x ˙ y ˙z ˙ V ˙ ψ ˙ m           =           V cos ψ cos γ + wx V sin ψ cos γ + wy V sin γ + wz −KDV 2 m − g sin γ + T m g V tan φ −ηT           , (2.2) where we let KD = CD2ρS.

2.2

Aircraft model (complex)

In this section, following [16, 31, 59], a model in which the trimmed con-dition assumption is removed is considered, so as to get a more accurate description of the aircraft dynamics. The new model shows a similar struc-ture of the model in (2.1). A new input variable, the Angle of Attack (AoA) α (which is the difference between the pitch and the path angles) is intro-duced, while the path angle γ is regarded as a state variable and no more as an input. The newly introduced input α allows to consider a more detailed description of the aerodynamic forces, and of the aircraft dynamics. In par-ticular, the aerodynamic coefficients that determine lift and drag forces are no more fixed but they show a dependence on the angle of attack. Moreover α slightly influences how the engine thrust affects TAS, heading angle and path angles dynamics.

In this flat earth, point mass model for the aircraft dynamics the state vari-ables are given by the position of the aircraft expressed in Cartesian coor-dinates x, y, z with respect to a fixed frame, the True Air Speed (TAS) of the aircraft V , the heading angle ψ, the path angle γ and the mass m of the aircraft. The inputs are the Angle of Attack (AoA) α, the bank angle φ, and the engine thrust T . The presence of the wind is modelled by adding a disturbance (wx, wy, wz) to the aircraft velocity along the x, y, z axes

(18)

respectively. The system evolves according to the following equations             ˙x ˙ y ˙z ˙ V ˙ ψ ˙γ ˙ m             =             V cos ψ cos γ + wx V sin ψ cos γ + wy V sin γ + wz −D m − g sin γ + T cos α m L+T sin α mV cos γ sin φ L+T sin α mV cos φ − g V cos γ −ηT             , (2.3) where D(z, V, α) = 12ρ(z)SV2C

d(1 + b1α + b2α2) is the drag force that

opposes the aircraft motion in the direction of the TAS and L(z, V, α) =

1

2ρ(z)SV 2C

l(1 + aα) is the lift that provides the force to oppose gravity,

Cd, Cl, b1, b2, a are suitable positive aerodynamic coefficients, see [5].

Note that the model in (2.1) can be obtained from the one in (2.3) under the simplifying assumption that the angle of attack is always null, properly setting the lift force so as to compensate weight force, and considering the path angle as an input. Indeed, in usual aircraft operations the angle of attack takes always small values, and it has to be set so that the lift force almost compensates the weight force in order to keep the vertical acceleration small or to maintain altitude.

It is worth noticing that the models (2.1) and (2.3) are well defined and representative of the aircraft dynamics on a specific domain only. More precisely, the states x, y, z can take value in R3, instead the TAS has to

be positive V ∈ (0, +∞), the heading angle can take any value in R, but, since it is an angle, we can limit its domain to ψ ∈ [0, 2π), the path angle can take values γ ∈ (−π/2, π/2), and m ∈ (0, +∞). Indeed, being the TAS a speed, it cannot be negative, and if it is null the heading and the path angle become not well defined. Moreover, also when the aircraft velocity is aligned with the z-axis ( γ = ±π/2 ) the heading angle is not well defined. As for the inputs we consider that T must be non negative T ∈ [0, +∞), the bank angle and the angle of attack are limited to φ ∈ (−π/2, π/2) and α ∈ (−π/2, π/2). Besides these limitations that define the domain in which the considered aircraft models are well defined, other constraints have to be enforced on the aircraft states and inputs as described in the following section.

(19)

2.3

Aircraft constraints

In order to account for physical limitations of the aircraft, passenger com-fort and safety requirements, several constraints both on the state variables and on the input variables have to be considered as follows.

• True Air Speed V

Vmin ≤ V ≤ Vmax, (2.4)

where Vmin and Vmaxdepend on the aircraft type, Vmin is also related

to the stall velocity of the aircraft, [5]. • Longitudinal Acceleration

− aL≤ ˙V ≤ aL, (2.5)

where aL= 2 ft/s2 = 2 · 0.3048 m/s2.

• Engine Thrust T

Tmin ≤ T ≤ Tmax, (2.6)

where Tmin and Tmax can be computed according to [5] and depend

on atmospheric conditions and aircraft type. • Bank Angle φ

− ¯φ ≤ φ ≤ ¯φ. (2.7)

According to [5] φmaxcan vary from 25◦to 45◦depending on the type

of aircraft. • Path Angle γ

γmin ≤ γ ≤ γmax. (2.8)

• Vertical Acceleration ¨z

In [5] the following constraint is considered: − aN ≤

∆γV

∆t ≤ aN, (2.9)

where aN = 5 ft/s2 = 5 · 0.3048 m/s2, and the term ∆γV∆t seems to

approximate the derivative of the normal velocity V cos γ ˙γ. We prefer to translate it in a constraint on the vertical acceleration ¨z:

(20)

Indeed, since the path angle is always small, the vertical accelera-tion is close to the derivative of the normal velocity. More precisely, from (2.1) results ¨z = V cos γ ˙γ + ˙V sin γ, and, recalling constraint (2.5) on ˙V and constraint (2.8) on γ, the absolute of ˙V sin γ can-not be greater than aLsin γmax  aN (e.g. for γmax = 5◦ results

aLsin γmax = 0.053 m/s2), so that (2.10) is a very good approximation

of (2.9). Moreover, whether we set aZ = aN − aLsin γmax,

enforc-ing (2.10) guarantees that the bounds on the derivative of the normal velocity are met.

The values of γmin and γmax should be chosen so that if the aircraft is in

a feasible initial condition, then there exists a feasible choice of constant inputs such that the aircraft keeps fling at constant TAS and constant path and heading angles, and, hence, it continues to satisfy the constraints during its motion evolution. To be more precise if the path angle is set to γmin or

γmax, the engine thrust should be able to maintain the TAS V within its

admissible range [Vmin, Vmax].

Some of the aircraft and constraint parameters show a dependence on atmo-spheric conditions (pressure, altitude, temperature, geopotential pressure) and on the phase of the flight (climbing, cruise, landing). However in or-der to simplify the model we fix their values indeed, to our purpose, they should be only accurate enough to represent usual flight conditions. More-over, they can be considered constant in the single finite horizon control problem, and they can be adjusted according to the current aircraft condi-tion, at each time step according to the receding horizon strategy.

2.4

Wind model

The wind velocities wx, wy, wz are modelled as a time varying vector field

(wx = wx(x, y, z, t), wy = wy(x, y, z, t), wz = wz(x, y, z, t)) obtained

as the sum of two contributions: a deterministic term that represent the forecast of the wind, and a stochastic term accounting for the uncertainty affecting the actual wind encountered by the aircraft, that is:

wx = wxf + wxs

wy = wyf + wys

wz = wzf+ wzs.

As for the forecast, we rely on the National Oceanic and Atmospheric Ad-ministration (NOAA) Rapid Refresh (RAP) model [48] which provides the wind velocities wxf, wyf, wzf in correspondence of a grid of points in the

(21)

x-y-z space. As for the x, y coordinates, the grid has a fixed resolution of 13 km, while as for the z coordinate it is divided in 37 levels each cor-responding to a decrease of pressure of 2500 Pa. The altitude z and the pressure p can be related by the following equation:

z = T0 L 1 −  p p0 RLgM! ; (2.11) where

• p0 = 101325 Pa is the sea level standard pressure;

• L = 0.006 K/m is a thermal drift coefficient;

• T0 = 288.15 K is the sea level standard temperature;

• M = 0.0289644 kg/mol is the dry air molar mass; • R = 8.31447 J/(mol K) is the perfect gas constant.

In order to retrieve the value of the wind velocities wxf = wxf(x, y, z, t),

wyf = wyf(x, y, z, t), wzf = wzf(x, y, z, t) in the generic position x, y, z

at the generic time t, we perform a linear interpolation of the forecast wind velocities in correspondence of the points of the grid at the vertices of the cell containing x, y, z, and, then, we linear interpolate over time.

The forecast wind velocities on the x-y plane wxf, wyf are directly

pro-vided by the RAP, while the computation of wzf is slightly more involved.

The RAP model provides the vertical velocity pressure Ω [Pa/s] that can be converted into vertical wind velocities wzf by means of the following

equations: wz = − Ω ρg ρ = p Rdry_airT ,

where ρ is the air density, Rdry_air = 287.05 J/(Kg K) is the specific gas

constant for the dry air, and T is the forecast temperature provided by the RAP. Figure 2.1 shows the forecast wind intensity and direction in the x-y plane for different altitude z at a given time instant.

(22)

z=4.5301 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=4.8653 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=5.2131 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=5.5746 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=5.951 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=6.3438 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=6.7547 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 z=7.1856 x y −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150

Figure 2.1: Forecast wind intensity and direction in the x-y plane for different altitude z at a given time instant.

According to [31, 42], the stochastic wind components wxs, wys, wzs are

modelled as a time varying random field where for every x, y, z, t, the wind components wxs(x, y, z, t), wys(x, y, z, t), wzs(x, y, z, t) are zero mean

(23)

Gaus-sian random variables with the following correlation structure: E[wxs(x, y, z, t)wxs(x0, y0, z0, t0)] = ρw(x, x0, y, y0, z, z0, t, t0) (2.12) E[wys(x, y, z, t)wys(x0, y0, z0, t0)] = ρw(x, x0, y, y0, z, z0, t, t0) E[wzs(x, y, z, t)wzs(x0, y0, z0, t0)] = ρwz(x, x0, y, y0, z, z0, t, t0) ρw(x, x0, y, y0, z, z0, t, t0) = = k(z)k(z0)e−σ1|t−t0|e−σ2k[x−x0y−y0]ke−σ3|z−z0| ρwz(x, x0, y, y0, z, z0, t, t0) = = kz(z)kz(z0)e−σ1z|t−t 0| e−σ2zk[x−x0 y−y0]ke−σ3z|z−z0| E[wxs(x, y, z, t)wys(x0, y0, z0, t0)] = 0 E[wxs(x, y, z, t)wzs(x0, y0, z0, t0)] = 0 E[wys(x, y, z, t)wzs(x0, y0, z0, t0)] = 0,

where k(z) and kz(z) represent the variance of the wind velocities at a given

altitude z and the coefficients σ1, σ2, σ3and σ1z, σ2z, σ3z regulate the

expo-nential decrease of the correlation between wind velocities at different posi-tions and time instants as their corresponding spatial and temporal distance increases. According to the correlation structure in (2.12), wind velocities along different axes are independent and, moreover, wind is isotropic i.e. the correlation structure is invariant under rotations of the x-y plane. Note that according to this model the wind disturbance has unbounded support. A possible approach to generate a random field that satisfy the correlation structure in (2.12) is described in [31, 42]. It requires to consider a grid of say Ngpoints in the x-y-z space, e.g. the same grid used in the RAP model,

and to gather the values of the stochastic wind velocities corresponding to each point in the grid at each time instant in the vectors:

Wxs(t) =       wxs(x1, y1, z1, t) wxs(x2, y2, z2, t) .. . wxs(xNg, yNg, zNg, t)       Wys(t) =       wys(x1, y1, z1, t) wys(x2, y2, z2, t) .. . wys(xNg, yNg, zNg, t)       Wzs(t) =       wzs(x1, y1, z1, t) wzs(x2, y2, z2, t) .. . wzs(xNg, yNg, zNg, t)       ,

(24)

where [xi, yi, zi] represent a point in the grid. Then, we compute:

R0 = E[Wxs(t)Wxs(t)T] = E[Wys(t)Wys(t)T] = Q0QT0

R0z = E[Wzs(t)Wzs(t)T] = Q0zQT0z,

where the expected value is computed according to (2.12) considering the space distance between the points in the grid and setting the time difference to 0. The matrix Q0 and Q0z can be compute as the Cholesky

decomposi-tion of R0and R0zrespectively. At the initial time instant t = 0 we compute

a realization of the random field in correspondence of the points in the grid as:

Wxs(0) = Q0ex(0) ex ∼ W GN (0, I)

Wys(0) = Q0ey(0) ey ∼ W GN (0, I)

Wzs(0) = Q0zez(0) ez ∼ W GN (0, I).

As for the following time steps a realization of the random field is computed by means of the multidimensional AR(1) processes:

Wxs(t + Ts) = aWxs(t) + Qex(t + Ts) Wys(t + Ts) = aWys(t) + Qey(t + Ts) Wzs(t + Ts) = azWzs(t) + Qzez(t + Ts), where a = e−αTs a z = e−αzTs (2.13) QQT = (1 − a2)R0 QzQTz = (1 − a 2 z)R0z.

Setting the parameters of the AR(1) processes as in (2.13) ensures that the random field realizations generated according to the described method, match the correlation structure in (2.12), see [31, 42]. The values of the stochastic wind velocities wxs, wys, wzs in space positions other than the

points considered in the grid can be computed by means of linear interpo-lation, introducing some approximation in the correlation structure. Figure 2.2 shows the stochastic wind intensity and direction on the x-y plane for some time steps at an altitude of 6 Km.

(25)

−150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=0 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=5 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=10 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=15 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=20 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=25 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=30 −150 −100 −50 0 50 100 150 −150 −100 −50 0 50 100 150 x y t=35

Figure 2.2: Stochastic wind intensity and direction on the x-y plane for subsequent time steps of length 5s at altitude of 6 Km.

(26)
(27)

CHAPTER

3

Feedback linearization & Constraint

convexification

In this chapter feedback linearization is applied to the aircraft models in (2.2) and (2.3) to obtain a linear model in a new set of input and state variables that exactly matches the original aircraft dynamics. The linear models achieved by feedback linearizing (2.2) or (2.3) present the same input and state variables and the same dynamics. On the contrary, the non-linear relationship between the new input and state of the non-linear model and those of the original models are different and specific to each of the aircraft models (2.2) and (2.3).

After the change of variables, the constraints on aircraft physical limitations and passenger comfort in Section 2.3 expressed as function of the new state and input variables, turn out to be not convex. In order to recover efficiently tractable constraints, suitable convex approximations are introduced. Note that, some of the constraints take the same expression both for model (2.2) and (2.3) and, hence, they can be dealt with by means of the same approach. Instead, other constraints are different depending on to the con-sidered aircraft model and, hence, specific approximations are developed to deal with them.

(28)

Remark. Performing feedback linearization seems to be a sensible choice for this kind of application, [51]. An alternative approach could be to lin-earize the aircraft model dynamics around a working point or a working trajectory. However this latter approach shows some difficulties. Firstly, it is not clear around which operating point or trajectory the dynamics has to be linearized: indeed, as the TAS cannot be null, the system is never in steady state, and linearizing around an operating point is not viable. There-fore the most natural choice is to linearize the system dynamics around a nominal trajectory, such as the one designed in Chapter 4. However, note that because of the action of the wind disturbance on the aircraft, the sys-tem may operate in a state quite different from the one corresponding to the nominal trajectory. Consequently, as the dynamics are strongly non lin-ear, the linearized dynamics may be quite inaccurate. Indeed, for example, when the wind blows against or toward the nominal path direction, in or-der to properly track the trajectory counteracting the disturbance, the TAS has to be modified and, hence, it may significantly differ from the nominal TAS. A similar reasoning holds when a lateral, with respect to the nominal path, position error has to be compensated and the heading angle has to be adjusted with respect to the nominal one.

Furthermore, the linearized dynamics would be time varying, whereas the dynamics obtained by feedback linearization are time invariant. Note that the linearization around a given trajectory leads to approximations in the constraints on aircraft physical limitations and on aircraft position (these latter will be discussed in Chapter 5), indeed the approximate linearized dynamics has to be embedded in their formulation.

3.1

Feedback linearization (simple model)

In this section, we perform the feedback linearization of system (2.2) so as to obtain a linear model for the aircraft with new input and state variables. The adopted procedure is inspired by [47, 66], where, however, a simpler model of an aircraft in a 2-D airspace is considered.

First, equations (2.2) are simplified by neglecting the mass dynamics which is quite slow with respect to other dynamics, so that mass can be considered constant along the time horizon which will be considered while developing MPC. Moreover the regulation of m is not an objective of the controller to be designed. Then, we set:

T = KDV2+ mg sin γ + mτ, (3.1)

(29)

so obtaining ˙V = τ and ˙ψ = Vgϕ, which are linear equations in the new input variables τ and ϕ. Note that τ represents the part of the acceleration provided by the engine thrust that is still available once the drag and possi-bly part of the weight force have been compensated.

If we define new state variables

x1 = x (3.3) x2 = y x3 = z x4 = V cos ψ cos γ x5 = V sin ψ cos γ x6 = V sin γ

then, the equations governing the system evolution become: ˙x1 = x4+ wx

˙x2 = x5+ wy

˙x3 = x6+ wz

˙x4 = τ cos ψ cos γ − V cos γ sin ψ

g

V ϕ − V cos ψ sin γ ˙γ ˙x5 = τ sin ψ cos γ + V cos γ cos ψ

g

V ϕ − V sin ψ sin γ ˙γ ˙x6 = V cos γ ˙γ + τ sin γ.

Now, let

u1 = τ cos ψ cos γ − V cos γ sin ψ

g

V ϕ − V cos ψ sin γ ˙γ (3.4a) u2 = τ sin ψ cos γ + V cos γ cos ψ

g

V ϕ − V sin ψ sin γ ˙γ (3.4b)

u3 = V cos γ ˙γ + τ sin γ. (3.4c)

Solving (3.4a) and (3.4b) for τ and ϕ gives τ = 1

cos γ(u1cos ψ + u2sin ψ + V sin γ ˙γ) (3.5)

ϕ = 1

g cos γ(−u1sin ψ + u2cos ψ). (3.6) By reconstructing ˙γ from (3.4c), we can rewrite (3.5) as

(30)

which, together with (3.6), recalling (3.1) and (3.2), gives:

T = KDV2+ mg sin γ + mτ (3.8)

φ = arctan ϕ = arctan 

1

g cos γ(−u1sin ψ + u2cos ψ)  (3.9) γ = arcsinx6 V  = arcsin u3,0+ Rt 0 u3,σdσ V ! . (3.10)

Equations (3.8)-(3.10) define the nonlinear feedback making the dynamics of x1, x2, x3, x4, x5, x6linear with respect to the new inputs u1, u2, u3:

          ˙x1 ˙x2 ˙x3 ˙x4 ˙x5 ˙x6           =03×3 I3 03×3 03×3            x1 x2 x3 x4 x5 x6           +03×3 I3     u1 u2 u3   +  I3 03×3     wx wy wz   . (3.11)

Note that the new state and input variables have a precise physical meaning: the state is composed by the position of the aircraft in Cartesian coordinates (x1, x2, x3) and by the velocity along the Cartesian axes (x4, x5, x6),

while the inputs u1, u2, u3 are the accelerations along the x, y, z axes

respectively. Moreover the original state variables can be recovered from the new ones as follows

x = x1 (3.12) y = x2 z = x3 V = q x2 4 + x25+ x26 ψ = atan2(x5, x4),

where atan2(·, ·) denotes the four quadrant arctangent of its argument.

3.2

Feedback linearization (complex model)

In this section, feedback linearization is applied the model in (2.3) so as to make the model of the aircraft linear with respect to a new set of input and state variables. The procedure is similar to the one adopted in previous

(31)

section for the model in (2.2), but, in this case the non-linear feedback is more complicated because of the presence of the path angle dynamics and of the angle of attack α.

As before, we start by simplifying (2.3) by neglecting the mass dynamics. As a matter of fact, the considerations made in Section 3.1 still apply here. The engine thrust T is set to:

T = (D + mg sin γ + τ m) 1

cos α, (3.13)

where τ is a new auxiliary input replacing the thrust T . Substituting in (2.3), the equation (3.14) for the dynamics of V become:

˙

V = τ. (3.14)

Note that, also in this model, τ represents the part of the longitudinal ac-celeration provided by the engine thrust that is still available once the drag force and possibly part of the weight force have been compensated.

Similarly to (3.3), we define new state variables as follows:

x1 = x (3.15) x2 = y x3 = z x4 = V cos ψ cos γ x5 = V sin ψ cos γ x6 = V sin γ.

The new state variables have the same physical meaning of the correspond-ing variables defined in the previous section: x1, x2, x3 give the position

of the aircraft in Cartesian coordinates, while x4, x5, x6 represent the true

air speed Cartesian components. Note that (3.15) is clearly a bijection and the original state variables can be recovered from the new ones according

(32)

to the following inverse relation: x = x1 (3.16) y = x2 z = x3 V = q x24+ x25+ x26 ψ = atan2 (x5, x4) γ = arcsin x6 px2 4+ x25+ x26 ! ,

which is always well defined except for x4 = x5 = 0, a situation which is

ruled out in the considered range of operation of the aircraft.

Differentiating (3.15) and substituting from (2.3) and (3.14) the equations governing the new state variables evolution become:

˙x1 =x4+ wx (3.17)

˙x2 =x5+ wy

˙x3 =x6+ wz

˙x4 =τ cos γ cos ψ − V sin γ cos ψ

 L + T sin α mV cos φ − g V cos γ  + − V cos γ sin ψ L + T sin α

mV cos γ sin φ 

˙x5 =τ cos γ sin ψ − V sin γ sin ψ

 L + T sin α mV cos φ − g V cos γ  + + V cos γ cos ψ L + T sin α

mV cos γ sin φ  ˙x6 =τ sin γ + V cos γ  L + T sin α mV cos φ − g V cos γ  .

(33)

Now define new input variables u1, u2, u3 as follows:

u1 = τ cos γ cos ψ − V sin γ cos ψ

 L + T sin α mV cos φ − g V cos γ  + − V cos γ sin ψ L + T sin α

mV cos γ sin φ 

(3.18a) u2 = τ cos γ sin ψ − V sin γ sin ψ

 L + T sin α mV cos φ − g V cos γ  + + V cos γ cos ψ L + T sin α

mV cos γ sin φ  (3.18b) u3 = τ sin γ + V cos γ  L + T sin α mV cos φ − g V cos γ  . (3.18c)

Equations (3.18a)-(3.18c) are now solved for τ , φ and α, the original input of the aircraft model, as function of the new inputs u1, u2, u3 and of the

state variables x, y, z, V , ψ, γ, so obtaining a non-linear feedback lineariz-ing (3.17).

Calculating u1cos ψ + u2sin ψ and −u1sin ψ + u2cos ψ from (3.18a) and

(3.18b) gives: τ = 1

cos γ 

u1cos ψ + u2sin ψ + sin γ

 L + T sin α

m cos φ − g cos γ  (3.19) (L + T sin α) sin φ = m (−u1sin ψ + u2cos ψ) , (3.20)

while from (3.18c) we have that: L + T sin α mV cos φ − g V cos γ = u3− τ sin γ V cos γ , (3.21) which is the same as:

(L + T sin α) cos φ = mg cos

2γ + u

3− τ sin γ

cos γ . (3.22)

Replacing the left-hand side of (3.21) appearing in (3.19) with the right-hand side of (3.21) and solving for τ yields:

τ = cos γ(u1cos ψ + u2sin ψ + u3tan γ). (3.23)

Note that equation (3.23) is not affected by the expression taken by the path angle dynamics, and, indeed τ takes the same expression in (3.7).

(34)

Define the auxiliary variables:

ν1 = u3− τ sin γ + g cos2γ (3.24)

ν2 = −u1sin ψ + u2cos ψ.

If ν1 6= 0, then the bank angle φ can be computed as:

φ = arctan ν2cos γ ν1  ∈−π 2, π 2  , (3.25)

which is exactly the domain of φ. If ν1 = 0, then ν2 must be 0 as well,

because, otherwise, ν1 = 0 and ν2 6= 0 would imply φ = ±π/2 while we

imposed that φ ∈ (−π/2, π/2). In the case when ν1 = 0 and ν2 = 0, it

turns out that L + T sin α = 0 so that φ can be arbitrarily chosen. Note that if L + T sin α = 0, then the value of φ does not affect the system dynamics, see (2.3). To fix a value we set φ = 0 when ν1 = 0 and ν2 = 0. Since

φ ∈ (−π/2, π/2), L + T sin α must take the sign of ν1, hence, substituting

the expressions for sin φ and for cos φ from (3.20), (3.22) into the equation sin2φ + cos2φ = 1 one obtains:

L + T sin α = m s ν2 1 cos2γ + ν 2 2 sign (ν1). (3.26)

Note that given the choice in (3.25) by which φ ∈ (−π/2; π/2) and because of (3.22), L + T sin α takes always the sign of ν1. Note however that, given

the bounds on the vertical and longitudinal accelerations and on the path angle, ν1will be always strictly positive, see also the constraints formulated

in the following Section 3.3.

Substituting in (3.26) the expression of T given in (3.13) and writing ex-plicitly the dependence of L and D on α, it is seen that the AoA α has to satisfy the following equation:

m s ν2 1 cos2γ + ν 2 2sign (ν1) = 12ρSV2Cl(1 + aα)+ (3.27) + mτ + gm sin γ + 1 2ρSV 2C d(1 + b1α + b2α2) tan α,

which requires slightly more inspection than (3.23) and (3.25). In order to find a value of the original input α that actually feedback linearizes the aircraft dynamics it is necessary that equation (3.27) admits at least one solution. This is so if e.g. the right-hand side of (3.27) spans all the val-ues between −∞ and +∞ as α varies between −π/2 and +π/2. To this

(35)

purpose, note that the right-hand side of (3.27) is the sum of a linear term in α and a quadratic term in α multiplied by tan α. Since the aerodynamic coefficients Cl, a, Cd, b1, b2are positive, a sufficient condition for the

right-hand side of (3.27) to span all the possible values between −∞ and +∞ as α varies between −π/2 and +π/2, is that the roots of the quadratic term are not real, or, if real, are both strictly inside (−π/2, π/2). Indeed, under this condition, the quadratic term takes positive values both when α is close to −π/2 and +π/2, and, being this quadratic term multiplied by tan α that tends to −∞ and +∞ respectively, this makes the right-hand side of (3.27) assuming all the values between −∞ and +∞. Requiring that the roots of the quadratic term belong to (−π/2, π/2) amounts to letting:

−Cdb1− r (Cdb1)2− 4Cdb2  Cd+ mτ +g sin γ1 2ρSV2  2Cdb2 > −π 2, which can be rewritten as:

m(τ + g sin γ) >  −π 2 4 b2+ π 2b1− 1  1 2ρSV 2C d. (3.28)

Note that (3.28) should be enforced for the feedback linearization to be well-posed. This in principle may limit the domain of validity of the feed-back linearization. Notably this is not the case for standard aircraft operat-ing conditions since it can be verified that (3.28) is automatically satisfied when the constraints of Section 2.3 are enforced (see the example of Sec-tion 5.5 for a specific instance)1.

Note that, in principle, while solving (3.27) for α we may find a solution for (3.27) that, according to (3.13), leads to T < 0, which does not belong to the admissible domain of the engine thrust. In other words, the solution to (3.27) does not automatically satisfy the condition T > 0. In order to avoid this situation, a constraint to meet the specification on the engine thrust has to be enforced, and in Section 3.3 is shown how to constrain u1, u2, u3 so

as to obtain the desired specification on T . Notably, if a solution to (3.27) is found such that T > 0, this solution is unique. Indeed, we show that, the right-hand side of (3.27) is monotonically increasing with α when T > 0. The derivative of the right-hand side of (3.27) with respect to α is:

1 2ρSV 2C la + mτ + gm sin γ + 12ρSV2Cd(1 + b1α + b2α2)  1 cos2α+ + 1 2ρSV 2C d(b1 + 2b2α) tan α. (3.29)

1Perhaps it is worth noticing that the above argument is for purposes of proving existence only. In no way it is meant that α has to be close to −π/2 or +π/2. On the contrary, in normal aircraft operations, the left-hand side of (3.27) is almost completely compensated by the lift L and, correspondingly, the AoA α keeps small.

(36)

The term mτ + gm sin γ +12ρSV2C

d(1 + b1α + b2α2) = T cos α is positive

when T > 0, so that a sufficient condition for (3.29) to be positive is: aCl+ Cd(b1+ 2b2α) tan α > 0. (3.30)

Note that since the coefficients Cd, b1, b2 are positive, the term Cd(b1 +

2b2α) tan α is not positive only for α ∈ [−2bb12, 0], and in this interval

Cd(b1+ b2α) tan α ≥ −Cdb1tan



b1 2b2



. In view of this, a sufficient condi-tion to ensure that (3.30) holds is:

aCl− Cdtan

 b1

2b2



b1 > 0.

This condition is usually satisfied because a and Clare positive and,

more-over, Cl  Cdfor standard aircraft.

Thus, in conclusion, we have shown that equation (3.27) in the unknown α always admits a solution, and, moreover, in the considered range of air-craft operation, as specified by the constraint is Section 2.3, this solution is unique.

To find α as a function of the other variables, equation (3.27) can be easily numerically solved, e.g. by bisection. This along with equations (3.13), (3.23), (3.24) and (3.25), gives the (non-linear) feedback that makes the dynamics of x1, x2, x3, x4, x5, x6 linear with respect to the new inputs u1,

u2, u3:           ˙x1 ˙x2 ˙x3 ˙x4 ˙x5 ˙x6           =03×3 I3 03×3 03×3            x1 x2 x3 x4 x5 x6           +03×3 I3     u1 u2 u3   +  I3 03×3     wx wy wz   . (3.31)

Note that, the new inputs u1, u2, u3 have again the physical meaning of

Cartesian components of the aircraft acceleration with respect to air. More-over, as said, the linear model (3.31) is the same achieved in (3.11), while, as is clear, the non-linear feedback laws needed to obtain such linear dy-namics starting from model (2.3) or from model (2.2) are different.

(37)

3.2.1 Time discretization

To ease subsequent MPC developments, system (3.31) is eventually dis-cretized by applying a constant input in the intervals [t0+ kTs, t0+ (k +

1)Ts), k = 0, 1, . . ., where Ts is the sampling time. This leads to the

discrete-time system           x1,k+1 x2,k+1 x3,k+1 x4,k+1 x5,k+1 x6,k+1           =  I 3 TsI3 03×3 I3            x1,k x2,k x3,k x4,k x5,k x6,k           + " T2 s 2 I3 TsI3 #    u1,k u2,k u3,k   + TsI3 03×3     wx,k wy,k wz,k   , (3.32) which can be rewritten as

xk+1 = Axk+ Buk+ Bwwk,

for short (where xk stands for x(t + kTs) and likewise for the other

vari-ables). Note that, in the following we will consider the discrete time dy-namics in (3.32) for both aircraft model (2.2) and (2.3).

3.3

Reformulation of the constraints in the new variables

Feedback linearization performed in the previous sections permitted us to rewrite the aircraft models, either (2.2) or (2.3), as a linear system which has the undoubtedly advantage of simplifying MPC design. On the other hand, state and input constraints turn out to be non-convex when rewrit-ten in terms of new state and input variables x1, x2, x3, x4, x5, x6, u1, u2,

u3. In this section we proceed by reformulating the constraints over a finite

horizon in view of subsequent MPC application, and suitable relaxation are introduced when necessary in order to convexify them (actually all con-straints except one will be linear). The introduced relaxation, however, are such that the original constraint is satisfied at least at the first time instant, so that, by receding horizon, the original constraints are met by the MPC solution.

The constraints on vertical acceleration, TAS, longitudinal acceleration and path angle take the same expression irrespectively from the choice of the aircraft model (2.2) or (2.3) and, hence, they are dealt with in the same way for both models. On the contrary, the constraints on bank angle and engine

(38)

thrust take a different expressions depending on the choice of the aircraft model. They are treated separately and different convex approximations are adopted accordingly.

3.3.0.1 Vertical Acceleration

Since in both aircraft models, the input u3is equal to the vertical

accelera-tion ¨z, constraint (2.10) can be straightforwardly written as:

− aZ ≤ u3,k+i ≤ aZ i = 0, . . . , M − 1. (3.33)

3.3.0.2 True Air Speed V

Being V2 = x2

4 + x25 + x26, see (3.12) and (3.16), constraints (2.4) on TAS

is rewritten as:

x24,k+i+ x25,k+i+ x26,k+i ≤ Vmax2 i = 1, . . . , M (3.34) x24,k+i+ x25,k+i+ x26,k+i ≥ V2

min i = 1, . . . , M. (3.35)

Constraints (3.34) are already convex, and their interpretation is that the aircraft velocity2 lies inside a sphere of radius V

max. Constraints (3.35)

are instead concave as they require that the aircraft velocity lies outside a sphere of radius Vmin. To attain convexity, constraints (3.35) are modified

by requiring that the aircraft velocity stays beyond a plane tangent to sphere of radius Vminand oriented according to the current, i.e. at time k, heading

angle ψk and path angle γk, which are available since the state is

measur-able. The new constraints can be expressed by means of the following linear inequalities: 1 0 0 RyRz    x4,k+i x5,k+i x6,k+i   ≥ Vmin i = 1, . . . , M, (3.36) where the rotation matrices Rz(ψk) and Ry(γk) are defined as:

Rz =    cos ψk sin ψk 0 − sin ψk cos ψk 0 0 0 1    Ry =    cos γk 0 sin γk 0 1 0 − sin γk 0 cos γk   . Note that (3.34) and (3.36) together pose a stricter condition than (3.34) and (3.35), so that the original constraints are always satisfied. The drawback

2Note that the aircraft velocity with respect to the surrounding air is a vector with modulus equal to V and orientation given by the heading angle ψ and by the path angle γ. Its Cartesian components are x4, x5, x6.

(39)

with (3.36) is that, having the plane tangent to the sphere of radius Vmin

fixed orientation, for values of TAS close to Vmin, the aircraft is forced to

accelerate in order to turn in the finite horizon problem. However this side-effect is negligible for higher values of TAS, which correspond to the usual flight conditions, and, moreover, thanks to the receding horizon strategy, the plane orientation is recomputed at each time step according the actual values of ψk and γk, and this drawback is further mitigated in the actual

trajectory of the aircraft.

3.3.0.3 Longitudinal Acceleration

From ˙V = τ and equations (3.7) and (3.23), in both the considered air-craft models (2.2) or (2.3), the constraint (2.5) on longitudinal acceleration rewrites as:

−aL≤ cos γk+i(u1,k+icos ψk+i+ u2,k+isin ψk+i+ (3.37)

+ u3,k+itan γk+i) ≤ aL i = 0, . . . , M − 1.

Further substituting the expressions for γk+iand ψk+ias functions of x4,k+i,

x5,k+i, x6,k+ias in (3.12) and (3.10) or (3.16) for model (2.2) or model (2.3)

respectively, it is easily seen that the constraints would be not convex. We decide then to approximate them by replacing the values of the heading angle ψk+i and of the path angle γk+i with their initial values ψk and γk,

which are available. This approximation seems to be acceptable for the heading angle cannot vary too much in the considered finite time horizon while, given the limitations on it, the path angle always keeps close to 0. This yields:

−aL≤ cos γk(u1,k+icos ψk+ u2,k+isin ψk+ (3.38)

+ u3,k+itan γk) ≤ aL i = 0, . . . , M − 1,

which are linear constraints on uk+i, i = 0, . . . , M − 1. Notably, for i = 0,

the constraint on uk is exactly equivalent to the original one, without any

approximation. Thus, if u is designed to satisfy (3.38), and a receding hori-zon is considered, then the original constraint (2.5) is not violated by the actual aircraft motion because each time only the first u is indeed actuated.

3.3.0.4 Path Angle γ

Recalling that x6 = V sin(γ) both from equation (3.3) for model (2.2) or

from equation (3.15) for model (2.3), the constraint (2.8) writes as

(40)

which is however non-convex because Vk+i =

q x2

4,k+i+ x25,k+i+ x26,k+i.

Constraint (3.39) can be approximated by keeping V fixed to its initial value Vkfor all i = 1, . . . , M , leading to

Vksin γmin ≤ x6,k+i ≤ Vksin γmax i = 1, . . . , M. (3.40)

Although the approximation is mild as V cannot vary too much along the prediction horizon, note, however that (3.40) does not guarantee the satis-faction of the original constraint (2.8), not even for i = 1 (note that con-straint (3.39) is a state concon-straint and, it has to be posed for i = 1, . . . , M ). Hence, we prefer to tackle (3.39) by replacing Vk+i with the worst-case

prediction of the values assumed by it along the considered prediction hori-zon. Given the constraints (2.4) and (2.5) on TAS and on the longitudinal acceleration, the maximal decrease of TAS over the prediction horizon is approximately computed as:

Vk+iwc− = max{Vk− iTsaL, Vmin} i = 0, . . . , M, (3.41)

while the maximal increase as:

Vk+iwc+ = min{Vk+ iTsaL, Vmax} i = 0, . . . , M. (3.42)

Turning back to (3.39), since sin γmin is negative and sin γmax is positive

the worst-case is achieved when Vk+itakes the smallest values, which leads

to enforce the constraints

Vk+iwc−sin γmin ≤ x6,k+i ≤ Vwc −

k+i sin γmax i = 1, . . . , M, (3.43)

in place of (3.39). The constraints in (3.43) pose a stricter condition than (3.39), so that when (3.43) is applied the satisfaction of the original con-straint is guaranteed along the whole prediction horizon. A compromise between (3.40) and (3.43) consist in fixing V to the first step worst case prediction Vwc−

k+1 , that is:

Vk+1wc−sin γmin ≤ x6,k+i ≤ Vwc −

k+1 sin γmax i = 1, . . . , M. (3.44)

This way the original constraint is guaranteed for i = 1 only, but its satisfac-tion along all the aircraft operasatisfac-tion is recovered thanks to receding horizon. On the other hand, the conservatism introduced by worst case safeguarding is mitigated and a better performance is achieved.

3.3.0.5 Bank Angle φ

The constraint on the bank angle needs to be treated differently for model (2.2) and model (2.3). Indeed despite the fact that the constraint share a

(41)

similar structure in both models, the feedback linearization of model (2.3) establishes a dependence between the bank angle and lift force (see equa-tion (3.20)), which in turn is related to the angle of attack α. Hence, we develop a first constraint approximation to be used with model (2.2) and another approximation that accounts for the presence of α to be used with model (2.3).

• Bank angle constraints for model (2.2)

The constraint (2.7) on the bank angle presents a structure similar to that of the constraints on the longitudinal acceleration, that is, on τ . Indeed, by (3.2) and (3.6), (2.7) can be rewritten as:

− tan ¯φ ≤ 1 g cos γk+i

(−u1,k+isin ψk+i+ u2,k+icos ψk+i) ≤ (3.45)

≤ tan ¯φ i = 0, . . . , M − 1.

Similarly to (3.38), the values of γk+iand ψk+iare fixed to their initial

value γk and ψk in order to recover linear constraints with respect to

the variables u. We have − tan ¯φ ≤ 1

g cos γk

(−u1,k+isin ψk+ u2,k+icos ψk) ≤ (3.46)

≤ tan ¯φ i = 0, . . . , M − 1.

Note that the constraint on ukat i = 0 is exactly equivalent to the

orig-inal constraints on the bank angle, so that the actual aircraft operation as given by MPC satisfies (2.7) thanks to the receding horizon. • Bank angle constraints for model (2.3)

In view of (3.20), the constraint (2.7) on the bank angle can be rewrit-ten as:

| − u1,k+isin ψk+i+ u2,k+icos ψk+i| ≤ (3.47)

≤ sin ¯φLk+i+ Tk+isin αk+i

m i = 0, . . . , M − 1. Taking the squares and recalling (3.26), (3.24):

ν2,k+i2 ≤ sin2φ(¯ ν 2 1,t+i cos2γ k+i + ν2,k+i2 ) i = 0, . . . , M − 1, which in turn rewrites as

ν2,k+i2 cos

2φ¯

sin2φ¯cos

2

(42)

Recalling the definition of ν1,k+i and because of the limitations on

vertical and longitudinal accelerations, and on the path angle, it can be easily seen than ν1, cos γ are always positive. Hence, taking the

square root we have that |ν2,k+i|

cos ¯φ

sin ¯φ cos γk+i ≤ ν1,k+i i = 0, . . . , M − 1,

so that replacing the expression of ν1,k+i, ν2,k+i in (3.24), the

con-straints (3.47) are eventually rewritten as: | − u1,k+isin ψk+i+ u2,k+icos ψk+i|

cos ¯φ

sin ¯φ cos γk+i ≤ ≤ u3,k+i+ g cos2γk+i− sin γk+icos γk+i(u1,k+icos ψk+i+

+ u2,k+isin ψk+i+ u3,k+itan γk+i) i = 0, . . . , M − 1.

Similarly to previous cases, convexity is recovered replacing ψk+iand

γk+iwith their initial value γkand ψk:

| − sin ψku1,k+i+ cos ψku2,k+i|

cos ¯φ

sin ¯φ cos γk ≤ (3.48) ≤ u3,k+i+ g cos2γk− sin γkcos γk(u1,k+icos ψk+

+ u2,k+isin ψk+ tan γku3,k+i) i = 0, . . . , M − 1.

Note that, for each i the constraint in (3.48) is linear and for i = 0 is exactly equivalent to the original constraint on the bank angle, so that, thanks to the receding horizon, the actual aircraft operation can be enforced to satisfies (2.7) for all time steps through (3.48).

3.3.0.6 Engine Thrust T

The constraint on the engine thrust expressed as a function of the new state and input variables rewrites differently depending on the adopted aircraft models (2.2) or (2.3) and on their corresponding feedback linearizations. Note that in models (2.2) and (2.3) T has a similar, but different expression, namely T = D + mg sin γ + τ m (see (3.1)) and T = (D + mg sin γ + τ m)cos α1 (see (3.13)), where the presence of the angle of attack α in the latter expression reflects the more detailed description of the aerodynamic forces in model (2.3). Hence, it is necessary to develop a first approach to deal with the engine thrust constraint when model (2.2) is considered, while a different approach is needed to explicitly account for the presence of the angle of attack α when model (2.3) is used.

(43)

• Engine thrust constraint for model (2.2)

Recalling (2.6) and (3.1), the constraint on the engine thrust can be written as Tmin m ≤ τ + g sin γ + KD m V 2 Tmax m ,

which in turn, recalling the expression for τ in (3.7) and sin γ = x6 V ,

becomes:

Tmin ≤ m cos γk+i(u1,k+icos ψk+i+ u2,k+isin ψk+i+ u3,k+itan γk+i)

+ mg Vk+i

x6,k+i+ KD(x3,k+i)Vk+i2 ≤ Tmax i = 0, . . . , M − 1.

(3.49) Constraint (3.49) is non-convex because of its dependence on Vk+i,

ψk+i, γk+iand x3,k+i.

We, hence, proceed as follows. As in (3.38) the value of the head-ing angle ψk+iand of the path angle γk+i are replaced by their initial

value ψk and γk which introduces a mild approximation as discussed

above. Note to this purpose that, though γk+i keeps close to 0,

re-placing sin γk+i with sin γk may lead to poor approximation because

it is multiplied by a big factor like mg. Hence, it is of paramount importance to first write sin γ = x6

V so that the constraint is actually

imposed on x6 before substituting γk+i with γk. Unfortunately, the

constraints are still non-convex because of the presence of Vk+i =

q x2

4,k+i+ x25,k+i+ x26,k+i. We replace x3,k+i and Vk+i with their

ini-tial values x3,k and Vk. Again this approximation seems to be settable

because the limitation on the vertical acceleration, on TAS and on the path angle implies that V and x3 cannot vary too much in the

con-sidered finite horizon (note that KD depends on x3 only through the

function ρ(x3) which describes how air density varies with altitude,

and this further reduces the impact of variation of x3). Eventually, the

constraint on engine is approximated with the following linear con-straints:

Tmin ≤ m cos γk(u1,k+icos ψk+ u2,k+isin ψk+ u3,k+itan γk)+

+ mg Vk

x6,k+i+ KDVk2 ≤ Tmax i = 0, . . . , M − 1. (3.50)

A second approach, instead, consists in replacing Vk+iwith worst-case

(44)

(3.42). In this case the approximate constraints on the engine thrust would write: Tmin− KD(Vwc + k+i )Vwc −2 k+i ≤ (3.51)

m cos γt(u1,k+icos ψt+ u2,k+isin ψt+ u3,k+itan γt) +

mg Vk x6,k+i ≤ Tmax− KD(Vwc − k+i )V wc+2 k+i , i = 0, . . . , M − 1.

We do not use worst case predictions for the TAS in the term Vgx6

be-cause the sign of x6is unknown, and because the constraints would be

excessively conservative, due the significant contribution of mg. Remarkably, both (3.50) and (3.51) are linear constraints, and are such that the first constraint corresponding to i = 0 is exactly equivalent to the original constraint on the engine thrust. Thus, again, thanks to the receding horizon strategy, the actual operation of the aircraft satisfies (2.6).

The constraints (3.51) are closer to the original constraints than (3.50), and using (3.51) it is more likely that the original constraint on the en-gine thrust is satisfied over the whole finite horizon. Yet, in many cases (3.51) are too conservative and simulations reveal that the con-straints (3.50) lead to better performance.

• Engine thrust constraint for model (2.3)

Recalling (3.13), the constraint on the engine thrust can be written as: Tmin ≤(mτk+i+ D(x3,k+i, Vk+i, αk+i)+

+ mg sin γk+i)

1 cos αk+i

≤ Tmax i = 0 . . . M − 1,

which in turn, by rewriting τ as in (3.23) and sin γ = x6

V , becomes:

Tmin ≤



m cos γk+i(u1,k+icos ψk+i+ u2,k+isin ψk+i+ (3.52)

+ u3,k+itan γk+i) + D(x3,k+i, Vk+i, αk+i)+

+ mgx6,k+i Vk+i

 1

cos αk+i

≤ Tmax i = 0 . . . M − 1.

Similarly to constraint (3.49), constraint (3.52) is highly non-convex because of its dependence on Vk+i, ψk+i, γk+i, x3,k+i and αk+i.

As for Vk+i, ψk+i, γk+i, x3,k+i we proceed as in the previous case

Figura

Figure 1.1: An example of Target Window.
Figure 2.1: Forecast wind intensity and direction in the x-y plane for different altitude z at a given time instant.
Figure 2.2: Stochastic wind intensity and direction on the x-y plane for subsequent time steps of length 5s at altitude of 6 Km.
Figure 4.1: Choice of s 1 .
+7

Riferimenti

Documenti correlati

Aspects related to the reproductive contest refer to evolution of extreme weaponry (secondary sexual traits), but also to striking changes in primary sexual traits,

Ottimizzare ed innovare i servizi pubblici, attraverso una pianificazione urbanistica strategica fondata sulle nuove tecnologie della comunicazione e dell’informazione (ICT),

• The model of the process can be used to forecast the system response to a set of control actions originated by modifying a suitable set of manipulated variables. Model

(A)  MPO activity was measured in myocardial homogenates of sham-operated rats (sham) and rats that underwent 4 weeks ischemia (vehicle) in the presence or absence of hemin

diviso in 7 aliquote, ciascuna delle quali - ad eccezione del controllo - è stata trattata con un prodotto enologico diverso avente una potenziale capacità di interazione

[r]

Multivariable model predictive control (MMPC) was applied in CO2 removal process in a natural gas treatment from an industry located in Subang field, which used chemical

On the one hand, Sliding Mode Control (SMC) is used to control the position and the angular velocity of the pendulum attached to the cart.. On the other hand,