Lecture 9 Modeling, Simulation, and Systems Engineering
Development steps Model-based control engineering Modeling and simulation Systems platform: hardware, systems software.
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-1
Control Engineering Technology
Science
abstraction concepts simplified models
Engineering
building new things constrained resources: time, money,
Technology
repeatable processes
Control platform technology Control engineering technology
EE392m - Spring 2005 Gorinevsky Control Engineering 9-2
Controls development cycle
Analysis and modeling
Control algorithm design using a simplified model System trade study - defines overall system design
Simulation
Detailed model: physics, or empirical, or data driven Design validation using detailed performance model
System development
Control application software Real-time software platform Hardware platform
Validation and verification
Performance against initial specs Software verification Certification/commissioning
EE392m - Spring 2005 Gorinevsky Control Engineering 9-3
Algorithms/Analysis
Much more than real-time control feedback computations modeling identification tuning optimization feedforward feedback estimation and navigation user interface diagnostics and system self-test system level logic, mode change
EE392m - Spring 2005 Gorinevsky Control Engineering 9-4
Model-based Control Development
Controls analysis Conceptual Analysis Control design model: x(t+1) = x(t) + u(t) Detailed simulation model Conceptual control algorithm: u = -k(x-xd) Detailed control application:
saturation, initialization, BIT, fault recovery, bumpless transfer
Application code: Simulink
System and software
Validation and verification
Hardware-in-theloop sim
Systems platform: Prototype controller Deployed controller
Run-time code, OS Hardware platform
Deployment
Physical plant
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-5
Controls Analysis
Conceptual Analysis Data model x(t+1)Fault tmodelt) = x( ) + u ( Control design model: x(t+1) = x(t) + u(t) Identification & tuning Accomodation algorithm: u = -k(x-x ) Conceptualdcontrol algorithm: u = -k(x-xd)
Application code: Simulink
Detailed simulation model
Detailed control application:
saturation, initialization, BIT, fault recovery, manual/auto mode, bumpless transfer, startup/shutdown
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-6
The rest of the lecture
Modeling and Simulation Deployment Platform Controls Software Development
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-7
Modeling in Control Engineering
Control in a system perspective Control analysis perspective
Control computing
Physical system
Measurement system Sensors
Control computing
Control handles Actuators
Physical system
Measurement model
System model
Control handle model
Control Engineering 9-8
EE392m - Spring 2005 Gorinevsky
Models
Why spend much time talking about models?
Modeling and simulation could take 80% of control analysis effort.
Model is a mathematical representations of a system
Models allow simulating and analyzing the system Models are never exact
Modeling depends on your goal
A single system may have many models Large libraries of standard model templates exist A conceptually new model is a big deal (economics, biology)
Main goals of modeling in control engineering
conceptual analysis detailed simulation
EE392m - Spring 2005 Gorinevsky Control Engineering 9-9
Modeling approaches
Controls analysis uses deterministic models. Randomness and uncertainty are usually not dominant. White box models: physics described by ODE and/or PDE Dynamics, Newton mechanics & x = f ( x, t ) Space flight: add control inputs u and measured outputs y & x = f ( x , u, t ) y = g ( x , u, t )
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-10
Orbital mechanics example
Newtons mechanics
fundamental laws dynamics
& v = m
1643-1736
+ Fpert (t )
& r=v
r
r1 r 2 r3 x= v1 v2 9-11 v3
Laplace
computational dynamics (pencil & paper computations) deterministic model-based prediction
1749-1827
& x = f ( x, t )
EE392m - Spring 2005 Gorinevsky
Control Engineering
Sampled and continuous time
Sampled and continuous time together Continuous time physical system + digital controller
ZOH = Zero Order Hold
A/D, Sample
Control computing
D/A, ZOH
Sensors
Physical system
Actuators
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-12
Servo-system modeling
Mid-term problem First principle model: electro-mechanical + computer sampling Parameters follow from the specs F g c m b M
& & & m&& + y + b( y x ) + c( y x ) = F y & & M&& + b( x y ) + c( x y ) = 0 x & F = fI , T I + I = gu
I
EE392m - Spring 2005 Gorinevsky Control Engineering 9-13
Finite state machines
TCP/IP State Machine
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-14
Hybrid systems
Combination of continuous-time dynamics and a state machine Thermostat example Analytical tools are not fully established yet Simulation analysis tools are available
Stateflow by Mathworks
off
x = 72
x = 70
on
& x = K (h x) x x 75
& x = Kx x 70
x = 75
9-15
EE392m - Spring 2005 Gorinevsky
Control Engineering
PDE models
Include functions of spatial variables
electromagnetic fields mass and heat transfer fluid dynamics structural deformations
Example: sideways heat equation x Tinside=u Toutside=0 y
heat flux
For controls simulation, model reduction step is necessary
Usually done with FEM/CFD data Example: fit step response
T 2T =k 2 t x T ( 0) = u; y=
EE392m - Spring 2005 Gorinevsky Control Engineering
T (1) = 0
T x
x =1
9-16
Simulation
ODE solution
& dynamical model: x = f ( x, t ) Euler integration method: x (t + d ) = x (t ) + d f ( x (t ), t ) Runge-Kutta method: ode45 in Matlab
Can do simple problems by integrating ODEs Issues with modeling of engineered systems:
stiff systems, algebraic loops mixture of continuous and sampled time state machines and hybrid logic (conditions) systems build of many subsystems large projects, many people contribute different subsystems
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-17
Simulation environment
Simulink by Mathworks Matlab functions and analysis Stateflow state machines Ptolemeus UC Berkeley Block libraries Subsystem blocks developed independently Engineered for developing large simulation models Controller can be designed in the same environment Supports generation of EE392m - Spring code run-rime control 2005 Gorinevsky
Control Engineering
9-18
Model development and validation
Model development is a skill White box models: first principles Black box models: data driven Gray box models: with some unknown parameters Identification of model parameters necessary step
Assume known model structure Collect plant data: special experiment or normal operation Tweak model parameters to achieve a good fit
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-19
First Principle Models - Aerospace
Aircraft models Component and subsystem modeling and testing CFD analysis Wind tunnel tests to adjust models (fugde factors) Flight tests update aerodynamic tables and flight dynamics models
EE392m - Spring 2005 Gorinevsky
Airbus 380: $13B development
NASA Langley 1998 HARV F/A-18
Control Engineering
9-20
Step Response Model - Process
Dynamical matrix control (DMC) Industrial processes
control inputs
EE392m - Spring 2005 Gorinevsky
measured outputs
Control Engineering
9-21
Approximate Maps
Analytical expressions are rarely sufficient in practice Models are computable off line
pre-compute simple approximation on-line approximation
Models contain data identified in the experiments
nonlinear maps interpolation or look-up tables AI approximation methods
Neural networks Fuzzy logic Direct data driven models
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-22
Empirical Models - Maps
Aerospace and automotive have most developed modeling approaches Example Aerodynamic tables Engine maps
turbines jet engines automotive - ICE
TEF=Trailing Edge Flap
EE392m - Spring 2005 Gorinevsky Control Engineering 9-23
Empirical Models - Maps
Process control mostly uses empirical models Process maps in semiconductor manufacturing Epitaxial growth (semiconductor process)
process map for run-to-run control
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-24
Multivariable B-splines
Regular grid in multiple variables Tensor product of B-splines Used as a basis of finite-element models
y (u, v ) = w j ,k B j (u ) Bk ( v )
j ,k
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-25
Neural Networks
Any nonlinear approximator might be called a Neural Network
RBF Neural Network Polynomial Neural Network B-spline Neural Network Wavelet Neural Network Linear in parameters
MPL - Multilayered Perceptron
1 y ( x ) = w1,0 + f w1, j y j , y1j = w2,0 + j
Nonlinear in parameters Works for many inputs
f w2, j x j j
y=f(x) x
9-26
1 e x f ( x) = 1 + e x
EE392m - Spring 2005 Gorinevsky
Control Engineering
Multi-Layered Perceptrons
Network parameter computation
training data set parameter identification
Y = y (1 ) K y ( N ) x (1) K x ( N )
y ( x ) = F ( x ; )
Noninear LS problem
V = y
j ( j)
F ( x ; ) min
( j)
Iterative NLS optimization
Levenberg-Marquardt
Backpropagation
variation of a gradient descent
EE392m - Spring 2005 Gorinevsky Control Engineering 9-27
Neural Net application
Internal Combustion Engine maps Experimental map:
data collected in a steady state regime for various combinations spark of parameters advance 2-D table
RPM
NN map
approximation of the experimental map MLP was used in this example works better for a smooth surface
EE392m - Spring 2005 Gorinevsky Control Engineering 9-28
Fuzzy Logic
Function defined at nodes. Interpolation scheme Fuzzyfication/de-fuzzyfication = interpolation Linear interpolation in 1-D
y ( x) y( x) = ( x)
j j j j j
( x) = 1
j j
Marketing (communication) and social value Computer science: emphasis on interaction with a user
EE - emphasis on mathematical analysis
EE392m - Spring 2005 Gorinevsky Control Engineering 9-29
Local Modeling Based on Data
Data mining in the loop Honeywell Prague product
Multidimensional Data Cube Relational Database Heat demand Time of day Forecasted variable Explanatory variables
9-30
Heat Loads
Outdoor Query point ( What if ? ) temperature
EE392m - Spring 2005 Gorinevsky
Control Engineering
System platform for control computing
Workstations
advanced process control enterprise optimizers computing servers (QoS/admission control)
Specialized controllers:
PLC, DCS, motion controllers, hybrid controllers
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-31
System platform for control computing
MPC555
Embedded: P + software DSP
FPGA
ASIC / SoC
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-32
Embedded processor range
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-33
System platform, contd
Analog/mixed electric circuits
power controllers RF circuits
Analog/mixed other
Gbs optical networks
EM = Electr-opt Modulator AGC = Auto Gain Control
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-34
Control Software
Algorithms Validation and Verification
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-35
System development cycle
Ford Motor Company
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-36
Control application software development cycle
Matlab+toolboxes Simulink Stateflow Real-time Workshop
Control Engineering 9-37
EE392m - Spring 2005 Gorinevsky
Real-time Embedded Software
Mission critical RT-OS with hard real-time guarantees C-code for each thread generated from Simulink Primus Epic, B787, A380
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-38
Hardware-in-the-loop simulation
Aerospace Process control Automotive
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-39
System development cycle
EE392m - Spring 2005 Gorinevsky
Control Engineering
9-40
Cadence