Weitere ähnliche Inhalte Ähnlich wie Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos (20) Kürzlich hochgeladen (20) Aircraft Simulation Model and Flight Control Laws Design Using Scilab and XCos1. 1www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.Copyright © ESI Group, 2019. All rights reserved.
www.esi-group.com
Aircraft Simulation Model and Flight Control Laws Design Using Scilab
and Xcos
André Ferreira da Silva, Altran
Scilab Conference 2019
2. 2www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Agenda
The flight control laws problem;1
The control design process;2
Building a 6-DoF flight
mechanics model;3
Building the model using Scilab
scripts;4
Building the model using Xcos
diagrams;5
Model-based design vs. Scilab
scripts;6
Pitch rate controller design
example;7
How close are we from industry?8
6. 6www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
The control design process
6 DoF Aircraft
Model
Open-Loop
Linear model
Linear Controller
Design
6 DoF Aircraft
Model
Closed-Loop
● Study the
plant;
● Define
requirements
for closing the
loop;
● Study the
plant
dynamics;
● Refine
requirements
for closing
the loop;
● Choose a
controller
architecture;
● Calculate the
gains;
● Linear analysis
(margins and
performance);
● Non-linear
controller design;
● Controller
discretization;
● Handling qualities
assessment;
● To be used by other
clients (loads);
7. 7www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Aircraft flight mechanics model (6 DoF)
Roughly speaking:
• Rotational: roll, pitch and yaw;
• Translational: upwards, forwards, sidewards;
Detailed mathematical description requires:
• Fixed-body reference frame;
• Earth-fixed inertial frame;
8. 8www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Aircraft flight mechanics model (6 DoF)
• Position in the inertial frame: x, y, z;
• Aircraft attitude: 𝛙, 𝛟, 𝛉;
• Aerodynamic variables: 𝛂, 𝛃,
airspeed, Mach;
Inputs (at least): Outputs (at least):
• Aerodynamic surfaces deflection
or stick/column/wheel command;
• Throttle command;
• Aerodynamic configuration
change command (flaps, slats,
landing gear);
9. 9www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Aircraft flight mechanics model (6 DoF)
• Atmosphere: implementation of
International Standard Atmosphere
model;
• Aerodata: aerodynamic data;
• Engine: engine dynamics model;
• Params: geometric and mass
properties of the aircraft;
• EQM: equations of motion;
10. 10www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Scilab script implementation
• Implementation based on data for F16 model
presented at Steven & Lewis (2003, 2nd edition);
• Unit test for each module comparing outputs with
data from the book (trim conditions, etc.);
• Modularization following the presented
component diagram;
• Simulator, linearizer and trimmer make use of
Scilab functions for solving ordinary differential
equations, for linearizing, etc;
11. 11www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Atmosphere example (Scilab script)
function [T_K, p_Pa, rho_kgpm3]=atmosphere(h_m, deltaIsa)
● International Standard Atmosphere (1976);
● Physical model for temperature, pressure and density
calculations with many tabulated values;
● Tables extracted from the official document to a CSV
and used for unit test;
12. 12www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Flight simulation example
1. Trim the aircraft (find an equilibrium condition);
S = fminsearch(costf16, S0);
1. Apply an input (surface deflection);
controls.elev_deg = elev_step;
1. Solve the system of the ordinary differential
equations;
y = ode(X0, t(1), t, f16_model);
1. Check the time history of the outputs;
13. 13www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Model-based design approach: Xcos
• Visual modeling to
improve readability;
• Solver embedded in the
framework;
• Makes componentization
straightforward;
• Standard approach in the
aerospace industry.
14. 14www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Atmosphere example (Xcos)
• Two inputs: altitude and deltaISA;
• Three outputs: temperature,
pressure and density;
• Unit test using a comparison
between the output of the block
and the literature data;
15. 15www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Xcos Full Model Implementation
• A diagram block for each component
shown previously;
• Unit test for each block based on
data in the reference book and in
other sources of data;
• No trimmer yet;
• No linearizer yet.
16. 16www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Flight simulation example
1. Trim the aircraft using the scilab
script version;
1. Run a script to initialize the
variables context;
1. Start the Xcos simulation;
1. Check the outputs.
17. 17www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Xcos implementation vs Script implementation
• Xcos readability is mostly
straightforward (not always for
equations);
• Xcos makes possible to have
continuous and discrete time
implementations in the same
simulation;
• Xcos is easier to be translated
automatically to another programming
language (like C, for example);
• Xcos full aircraft model is very slow to
change (2.5-GHz Intel Core i5-7200U);
• Script version can take much more
advantage of version control system
(including merge features);
• Script version is easily adaptable to find
an equilibrium condition (trimming);
19. 19www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Pitch rate controller design example
1. Linearize the 6-DoF aircraft model
around an equilibrium condition;
[A, B, C, D] = lin(sim_f16, X0_lin, U0);
1. Use the state-space representation to
design the controller (in this example,
using root locus);
ss_pi = syslin("c", 0, 3, 1, 1); //PI = (s+3)/s
ss_cl_alpha_pi = ss_cl_alpha*ss_pi;
//evans(ss_cl_alpha_pi(2,1),10);
20. 20www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Getting closer to the industry
Source: Wikipedia at
https://upload.wikimedia.org/wikipedia/commons/b/b
d/AltitudeEnvelopeText.GIF
Design points
22. 22www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Getting closer to the industry
For example, at least:
• 6 aerodynamic coefficients;
• 4 parameters;
• Resolution of 0.1 deg or 0.01 Mach for each
parameter;
• Several configurations (flaps, slats, landing
gear, spoilers);
• Easily achieving gigabytes of data to lookup;
Source: Wikipedia at
https://en.wikipedia.org/wiki/Wind_tunnel#/media/File:MD-
11_12ft_Wind_Tunnel_Test.jpg
Amount of data and computational performance
23. 23www.esi-group.com
Copyright © ESI Group, 2019. All rights reserved.
Getting closer to the industry
• Integration with Version Control
System and Issue tracking System;
• Merge feature for models;
• Traceability;
• Traceability (again);
Source: Wikipedia at https://en.wikipedia.org/wiki/DO-178C#/media/File:DO-178C_Traceability.png
Version Control