The control design engineering has a long tradition in development of methods and tools for the design and analysis of control laws. In developing these methods and tools we strongly keep the over-all design process in our minds. The fundamental process structure as exercised for flight control laws design is depicted below:
| The DLR flight control laws design process, supported by method and tool development
The green block to the left depicts the basic inputs to the design process, namely aircraft models and design specifications.
For development of aircraft models we mostly use our Modelica-based Flight Dynamics Library. This library grows with each new application. For example, in the frame of the project REAL, two new aircraft, as well as models of the Instrument Landing System (ILS) and on-board sensors were added. As a multi-physics modelling language, Modelica strongly supports development of multi-disciplinary models. For control law design analysis, automatic generation of highly efficient forward and inverse simulation models, linearization capabilities, and easy access to model parameters are extremely important features, see below.
| Modelling process using Modelica Flight Dynamics Library
However, the process is not limited to Modelica-based models. In fact, any analysis tool can be used, as long as it is possible to adjust design and model parameters from outside. In this way, we integrated several industrial analysis tools into the process.
Most of our tools are Matlab-based. The use of external model executables (either industrial tools or generated from Modelica) over the Matlab simulation tool Simulink is that model evaluations can be performed in parallel. This greatly reduces optimisation times when a single set of design parameters is tuned for a set of model parameter cases (see below).
Controller structure synthesis
Probably the most important design step is the development of the controller structure. Initial key decision is the division into sub-functions. For example, into lateral and longitudinal inner loops and tracking functions for command variables. In the case of manual control laws these may for example be the pitch and roll rates and side slip, in the case of automatic functions these may be path and speed tracking functions. The next step is detailing the design of these sub-functions, complementary filters, etc. The detailed structures may be classical, consisting of gains, filters, etc., but may also involve a controller synthesis method, like LQ, or The principal difference is that in the latter case not controller parameters, but synthesis specification parameters (e.g. Q and R weights or weighting function parameters) are the free design variables (“tuners”) to be adjusted to meet over-all specifications.
We developed various tools for controller synthesis. Examples are routines for LQ, or -synthesis, periodic and multi-rate systems, the parameter space method, etc. In case the aircraft model is available in Modelica, Nonlinear Dynamic Inversion-based control laws may be generated automatically, as has been done in the REAL and VECTOR projects.
Of course, we also adopt given industrial controller structures, as already implemented in industrial analysis tools. In that case we only have to make sure the design parameters and analysis results can be accessed.
Multi-objective parameter optimisation
The closed loop system must satisfy many design specifications that may cover multiple engineering disciplines. Our approach is to tune the free design parameters using multi-objective optimisation. As a first step, this requires design specifications to be formulated in numerical form, suitable for optimisation. To this end, we develop a multi-disciplinary criteria library that grows with each new kind of application. We implemented criteria for handling qualities, flight loads, disturbance rejection, tracking, etc. These criteria are typically evaluated from nonlinear simulation and linearised models (frequency responses, eigenvalues). We also added the possibility to use statistical criteria, computed from on-line Monte-Carlo analysis. This was applied in the design of automatic landing control laws in the frame of the project REAL.
The optimisation may address multiple types of analysis simultaneously. For example, step response criteria are computed from nonlinear simulation, stability and damping are evaluated from eigenvalues of the linearised closed-loop system, stability margins are computed from broken-loop frequency responses. Various types of analysis using different analysis tools are organised in so-called “models” in our design environment. Each model may be evaluated for multiple parameter cases, allowing performance in nominal and worst-cases to be traded-off.
The actual tuning problem is formulated as a weighted min-max optimisation problem. In our environment MOPS (Multi-Objective Parameter Synthesis) this problem is automatically formulated, by collecting all criteria over all parameter cases over all models, and then solved using one of several (self- or externally developed) optimisation algorithms available.
The iteration loop after optimisation (see first Figure) usually involves adjusting of criteria scaling, or improving or adding design criteria. Initially, some iteration may be required to make sure the numerical criteria accurately represent qualitative design specifications. Once the optimisation set-up is running satisfactorily, weightings may be adjusted to search for compromise solutions between conflicting criteria.
Optimisation-based design allows for tuning of complex systems with many design parameters against a large set of design criteria, avoiding otherwise elaborate manual tuning work.
Multi-objective optimisation gives considerable freedom to address robustness in flight control law design. Just a few examples:
- Uncertainty in deterministic parameters can be addressed via multi-case optimisation;
- Varying parameters that change with given stochastic properties can be handled via on-line Monte-Carlo analysis;
- Unspecified uncertainties (e.g. unmodelled dynamics, delays, etc.) can be handled via stability margins as design criteria.
Once a set of tuning parameter values has been found, it is important to extensively test the result against all design specifications under all operating conditions and against all types of uncertainties. This assessment may be based on simple grid-based search (i.e. checking performance over a grid of model parameters), or on smarter strategies like optimisation-based worst-case search, or LFT-based techniques like µ-analysis. Also Monte-Carlo analysis is applied in case statistical properties of varying model parameters are at hand or reasonably estimated. The gridding, worst-case optimisation, and Monte-Carlo approaches have been fully integrated into our design environment MOPS , only requiring the model parameters to be assigned as tuning variables, instead of the controller parameters.
Controller assessment may reveal that some conditions or parameter cases do not behave satisfactorily. This gives rise to the second iteration loop in the first Figure. Specific cases may be included in the optimisation, giving rise to so-called multi-case optimisation. Sometimes it may also be necessary to improve the controller structure. For example, by adding algorithms that estimate values of parameters that highly influence controller performance.
Finally, also qualitative assessment is performed, for example using interactive real-time desktop-simulation.