SlideShare une entreprise Scribd logo
1  sur  19
AN FMI-BASED TOOL FOR ROBUST DESIGN OF
DYNAMICAL SYSTEMS
Maria Henningsson, Johan Åkesson, Hubertus Tummescheit
Modelon AB / Modelon Inc.
2014-04-28 © Modelon 1
WHY SIMULATION MODELS?
To answer questions:
• Hardware optimization
 What’s the best nominal design for our
process?
• Verification
 Will performance be OK over entire operating
envelope?
• Quality
 Will performance be OK considering tolerances
on components?
• Controls
 How can we tune our controllers? Will they
work robustly?
Modelica




2014-04-28 © Modelon 2
WHY SIMULATION MODELS?
To answer questions:
• Hardware optimization
 What’s the best nominal design for our
process?
• Verification
 Will performance be OK over entire operating
envelope?
• Quality
 Will performance be OK considering tolerances
on components?
• Controls
 How can we tune our controllers? Will they
work robustly?
Modelica




2014-04-28 © Modelon 3
HOW TO GET THE ANSWERS?
Example: control design
2014-04-28 © Modelon 4
Modelica models
• Complex models
• Nonlinear
• Many parameters
Design and implementation of controllers in
Matlab / Simulink
• Prefer simpler models
• Linearizations
• Understanding dominating parameter
effects
• Understanding system variability
• Identify worst cases
THE POWER OF FMI
• Can separate modeling and
answering questions to
different tools
• Use the best tool for each
purpose
• Take advantage of engineers’
skills in specific tools
• Facilitate cross-team use of
the same model portfolio
2014-04-28 © Modelon 5
Model
Modeling
tool
Sizing
Tool 1
Quality
Tool 2
Control
design
Tool 3
Formal
verification
Tool 4
TWO ACADEMIC PARADIGMS
 Large potential in combining approaches
 Modelica and FMI is a suitable platform
2014-04-28 © Modelon 6
• Static models
• Many parameters
• Data-driven models
• Focus on workflows, processes and tools
Quality science/ Robust design / Six-sigma / Design-of-experiments
• Dynamic models
• Few parameters
• Physics-based or data-driven models
• Focus on mathematical rigor
Control engineering
DESIGN-OF-EXPERIMENTS (DOE)
• Run a limited set of experiments (or simulations)
• Identify crude models for how variables affect the behavior of a
system in order to:
 Optimize hardware design
 Calibrate
 Understand system variability
2014-04-28 © Modelon 7
DOE: SIMPLISTIC APPROACHES
• One-factor-at-a-time (OFAT)
• Full-factorial design (gridding)
2014-04-28 © Modelon 8
x1
x2
x1
x2
DOE DESIGNS
2014-04-28 © Modelon 9
Common ad-hoc
approach
Space-filling
algorithms
Good coverage, also
in higher
dimensions
100 test points, two factors
Scales poorly with
nbr of factors
Corner cases
poorly covered in
higher dimensions
A DOE TOOL FOR DYNAMIC SYSTEMS: REQUIREMENTS
User input
• FMU model
• DoE factors from model
• Ranges and distributions of factors
• Type of DoE design
• Response variables to analyze or
visualize
Tool tasks
• Construct test matrix
• Set FMU parameters
• Simulate at all points, find steady-
state
• Find inputs to match specified
outputs
• Catch and manage simulation errors
• Linearize system at test matrix points
• Provide support for visualizing results
• Construct meta-models for analysis
2014-04-28 © Modelon 10
DOE IN THE FMI TOOLBOX FOR MATLAB
2014-04-28 © Modelon 11
FMU
DoE
variable
spec
Test matrix
Run
experiments
Visualize
result
Excel /
Matlab
Modeling
tool
FMI Toolbox for
Matlab
from version 1.6
FMUDoESetup class
constructor input:
• FMU file name
• Excel file name
• [Excel sheet]
• [options]
methods:
• qmc
• mc
• fullfact
• custom
FMUDoEResult class
properties:
• generation_date
• model_data
• doe
• constants
• experiment_status
• steady_state
• linsys
• options
• comp_time
visualization methods:
• main_effects
• bode
• step
EXAMPLE: ENGINE COOLING SYSTEM
• Demo model from Modelon’s
Liquid Cooling Library
• Design variables:
 Maximum pump speed
 Radiator efficiency
 Minimum air mass flow
• Requirements:
 Engine-out coolant temp < 100 oC
 Handle heat load of 100 kW
 Ambient temperature operating
range [-20oC, 45oC]
2014-04-28 © Modelon 12
SIZING: SCREENING DESIGN SPACE
2014-04-28 © Modelon 13
>> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', 'Screening');
>> nbr_of_experiments = 100;
>> result = doe_setup.qmc(nbr_of_experiments);
>> T_engine_out = result.steady_state.y( : , 3)
>> result.main_effects(result, ’T_liquid_ae’, T_engine_out > 100);
SIZING: DETERMINING A DESIGN
Zooming in to a smaller region of
the design space:
2014-04-28 © Modelon 14
>> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', 'Sizing');
>> nbr_of_experiments = 100;
>> result = doe_setup.qmc(nbr_of_experiments);
>> T_engine_out = result.steady_state.y( : , 3)
>> result.main_effects(result, ’T_liquid_ae’, T_engine_out > 100);
Design
EVALUATING THE DESIGN
• Finding representative operating points
 Let input heat load be a free variable
 Let output T_engine_out be a DoE factor
2014-04-28 © Modelon 15
DYNAMICS
 input = pump speed
 output = engine-out coolant temperature
Bode plot for ensemble of linear systems
2014-04-28 © Modelon 16
>> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', ‘Dynamics’');
>> nbr_of_experiments = 100;
>> result = doe_setup.qmc(nbr_of_experiments);
>> result.bode(1, 1)
DYNAMICS: WHERE IS THE NONLINEARITY?
• Correlate feature of Bode plot with DoE factors
2014-04-28 © Modelon 17
>> N = result.doe.nbr_of_experiments;
>> ss_gain = zeros(N,1);
>> for k = 1:1:N
>> ss_gain(k) = dcgain(result.linsys.sys{k} (1, 1));
>> end
>> result.main_effects(ss_gain, ’gain’);
CONTROLLER EVALUATION
• Loop-shaping: PI-controller with K = -50, Ti = 100
• Closed-loop step response
2014-04-28 © Modelon 18
>> s = tf(‘s’);
>> Gc = -50*(1+1/(100*s));
>> cl_sys = cell(N,1);
>> for k = 1:1:N
>> Gp = result.linsys.sys{k}(1, 1);
>> cl_sys{k} = minreal(Gp*Gc/(1+Gp*Gc));
>> end
>> batch_step(cl_sys);
CONCLUSIONS
• Modelica and FMI is a powerful platform for analysis of parametric
uncertainty in dynamical systems
• Need for tools to that manage multi-factor uncertainty in a better
way than ad-hoc one-factor-at-a-time trial-and-error
2014-04-28 © Modelon 19

Contenu connexe

Plus de Modelon

Vehicle Dynamics Library - Overview
Vehicle Dynamics Library - OverviewVehicle Dynamics Library - Overview
Vehicle Dynamics Library - OverviewModelon
 
Vapor Cycle Library - Overview
Vapor Cycle Library - OverviewVapor Cycle Library - Overview
Vapor Cycle Library - OverviewModelon
 
Thermal Power Library - Overview
Thermal Power Library - OverviewThermal Power Library - Overview
Thermal Power Library - OverviewModelon
 
Pneumatics Library - Overview
Pneumatics Library - OverviewPneumatics Library - Overview
Pneumatics Library - OverviewModelon
 
Liquid Cooling Library - Overview
Liquid Cooling Library - OverviewLiquid Cooling Library - Overview
Liquid Cooling Library - OverviewModelon
 
Jet Propulsion Library - Overview
Jet Propulsion Library - OverviewJet Propulsion Library - Overview
Jet Propulsion Library - OverviewModelon
 
Heat Exchanger Library - Overview
Heat Exchanger Library - OverviewHeat Exchanger Library - Overview
Heat Exchanger Library - OverviewModelon
 
Hydro Power Library - Overview
Hydro Power Library - OverviewHydro Power Library - Overview
Hydro Power Library - OverviewModelon
 
Hydraulics Library - Overview
Hydraulics Library - OverviewHydraulics Library - Overview
Hydraulics Library - OverviewModelon
 
Fuel System Library Overview
Fuel System Library OverviewFuel System Library Overview
Fuel System Library OverviewModelon
 
Fuel Cell Library - Overview
Fuel Cell Library - OverviewFuel Cell Library - Overview
Fuel Cell Library - OverviewModelon
 
Electric Power Library - Overview
Electric Power Library - OverviewElectric Power Library - Overview
Electric Power Library - OverviewModelon
 
Electrification Library - Overview
Electrification Library - OverviewElectrification Library - Overview
Electrification Library - OverviewModelon
 
Engine Dynamics Library - Overview
Engine Dynamics Library - OverviewEngine Dynamics Library - Overview
Engine Dynamics Library - OverviewModelon
 
Environmental Control Library - Overview
Environmental Control Library - OverviewEnvironmental Control Library - Overview
Environmental Control Library - OverviewModelon
 
Aircraft Dynamics Library - Overview
Aircraft Dynamics Library - OverviewAircraft Dynamics Library - Overview
Aircraft Dynamics Library - OverviewModelon
 
Air Conditioning Library - Overview
Air Conditioning Library - OverviewAir Conditioning Library - Overview
Air Conditioning Library - OverviewModelon
 
Fuel System Library - Overview
Fuel System Library - OverviewFuel System Library - Overview
Fuel System Library - OverviewModelon
 
FMI Composer Overview
FMI Composer OverviewFMI Composer Overview
FMI Composer OverviewModelon
 
Model Testing Toolkit - Overview
Model Testing Toolkit - OverviewModel Testing Toolkit - Overview
Model Testing Toolkit - OverviewModelon
 

Plus de Modelon (20)

Vehicle Dynamics Library - Overview
Vehicle Dynamics Library - OverviewVehicle Dynamics Library - Overview
Vehicle Dynamics Library - Overview
 
Vapor Cycle Library - Overview
Vapor Cycle Library - OverviewVapor Cycle Library - Overview
Vapor Cycle Library - Overview
 
Thermal Power Library - Overview
Thermal Power Library - OverviewThermal Power Library - Overview
Thermal Power Library - Overview
 
Pneumatics Library - Overview
Pneumatics Library - OverviewPneumatics Library - Overview
Pneumatics Library - Overview
 
Liquid Cooling Library - Overview
Liquid Cooling Library - OverviewLiquid Cooling Library - Overview
Liquid Cooling Library - Overview
 
Jet Propulsion Library - Overview
Jet Propulsion Library - OverviewJet Propulsion Library - Overview
Jet Propulsion Library - Overview
 
Heat Exchanger Library - Overview
Heat Exchanger Library - OverviewHeat Exchanger Library - Overview
Heat Exchanger Library - Overview
 
Hydro Power Library - Overview
Hydro Power Library - OverviewHydro Power Library - Overview
Hydro Power Library - Overview
 
Hydraulics Library - Overview
Hydraulics Library - OverviewHydraulics Library - Overview
Hydraulics Library - Overview
 
Fuel System Library Overview
Fuel System Library OverviewFuel System Library Overview
Fuel System Library Overview
 
Fuel Cell Library - Overview
Fuel Cell Library - OverviewFuel Cell Library - Overview
Fuel Cell Library - Overview
 
Electric Power Library - Overview
Electric Power Library - OverviewElectric Power Library - Overview
Electric Power Library - Overview
 
Electrification Library - Overview
Electrification Library - OverviewElectrification Library - Overview
Electrification Library - Overview
 
Engine Dynamics Library - Overview
Engine Dynamics Library - OverviewEngine Dynamics Library - Overview
Engine Dynamics Library - Overview
 
Environmental Control Library - Overview
Environmental Control Library - OverviewEnvironmental Control Library - Overview
Environmental Control Library - Overview
 
Aircraft Dynamics Library - Overview
Aircraft Dynamics Library - OverviewAircraft Dynamics Library - Overview
Aircraft Dynamics Library - Overview
 
Air Conditioning Library - Overview
Air Conditioning Library - OverviewAir Conditioning Library - Overview
Air Conditioning Library - Overview
 
Fuel System Library - Overview
Fuel System Library - OverviewFuel System Library - Overview
Fuel System Library - Overview
 
FMI Composer Overview
FMI Composer OverviewFMI Composer Overview
FMI Composer Overview
 
Model Testing Toolkit - Overview
Model Testing Toolkit - OverviewModel Testing Toolkit - Overview
Model Testing Toolkit - Overview
 

Dernier

Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxsiddharthjain2303
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catcherssdickerson1
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionSneha Padhiar
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Erbil Polytechnic University
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosVictor Morales
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionMebane Rash
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Sumanth A
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmDeepika Walanjkar
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfisabel213075
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdfsahilsajad201
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfBalamuruganV28
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfManish Kumar
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming languageSmritiSharma901052
 
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptJohnWilliam111370
 
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdf
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdfPaper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdf
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdfNainaShrivastava14
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHSneha Padhiar
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Romil Mishra
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdfCaalaaAbdulkerim
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxRomil Mishra
 
multiple access in wireless communication
multiple access in wireless communicationmultiple access in wireless communication
multiple access in wireless communicationpanditadesh123
 

Dernier (20)

Energy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptxEnergy Awareness training ppt for manufacturing process.pptx
Energy Awareness training ppt for manufacturing process.pptx
 
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor CatchersTechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
TechTAC® CFD Report Summary: A Comparison of Two Types of Tubing Anchor Catchers
 
Cost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based questionCost estimation approach: FP to COCOMO scenario based question
Cost estimation approach: FP to COCOMO scenario based question
 
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
Comparative study of High-rise Building Using ETABS,SAP200 and SAFE., SAFE an...
 
KCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitosKCD Costa Rica 2024 - Nephio para parvulitos
KCD Costa Rica 2024 - Nephio para parvulitos
 
US Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of ActionUS Department of Education FAFSA Week of Action
US Department of Education FAFSA Week of Action
 
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
Robotics-Asimov's Laws, Mechanical Subsystems, Robot Kinematics, Robot Dynami...
 
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithmComputer Graphics Introduction, Open GL, Line and Circle drawing algorithm
Computer Graphics Introduction, Open GL, Line and Circle drawing algorithm
 
List of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdfList of Accredited Concrete Batching Plant.pdf
List of Accredited Concrete Batching Plant.pdf
 
Robotics Group 10 (Control Schemes) cse.pdf
Robotics Group 10  (Control Schemes) cse.pdfRobotics Group 10  (Control Schemes) cse.pdf
Robotics Group 10 (Control Schemes) cse.pdf
 
CS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdfCS 3251 Programming in c all unit notes pdf
CS 3251 Programming in c all unit notes pdf
 
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdfModule-1-(Building Acoustics) Noise Control (Unit-3). pdf
Module-1-(Building Acoustics) Noise Control (Unit-3). pdf
 
OOP concepts -in-Python programming language
OOP concepts -in-Python programming languageOOP concepts -in-Python programming language
OOP concepts -in-Python programming language
 
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.pptROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
ROBOETHICS-CCS345 ETHICS AND ARTIFICIAL INTELLIGENCE.ppt
 
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdf
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdfPaper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdf
Paper Tube : Shigeru Ban projects and Case Study of Cardboard Cathedral .pdf
 
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACHTEST CASE GENERATION GENERATION BLOCK BOX APPROACH
TEST CASE GENERATION GENERATION BLOCK BOX APPROACH
 
Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________Gravity concentration_MI20612MI_________
Gravity concentration_MI20612MI_________
 
Research Methodology for Engineering pdf
Research Methodology for Engineering pdfResearch Methodology for Engineering pdf
Research Methodology for Engineering pdf
 
Mine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptxMine Environment II Lab_MI10448MI__________.pptx
Mine Environment II Lab_MI10448MI__________.pptx
 
multiple access in wireless communication
multiple access in wireless communicationmultiple access in wireless communication
multiple access in wireless communication
 

FMI-based tool for robust design of dynamical systems

  • 1. AN FMI-BASED TOOL FOR ROBUST DESIGN OF DYNAMICAL SYSTEMS Maria Henningsson, Johan Åkesson, Hubertus Tummescheit Modelon AB / Modelon Inc. 2014-04-28 © Modelon 1
  • 2. WHY SIMULATION MODELS? To answer questions: • Hardware optimization  What’s the best nominal design for our process? • Verification  Will performance be OK over entire operating envelope? • Quality  Will performance be OK considering tolerances on components? • Controls  How can we tune our controllers? Will they work robustly? Modelica     2014-04-28 © Modelon 2
  • 3. WHY SIMULATION MODELS? To answer questions: • Hardware optimization  What’s the best nominal design for our process? • Verification  Will performance be OK over entire operating envelope? • Quality  Will performance be OK considering tolerances on components? • Controls  How can we tune our controllers? Will they work robustly? Modelica     2014-04-28 © Modelon 3
  • 4. HOW TO GET THE ANSWERS? Example: control design 2014-04-28 © Modelon 4 Modelica models • Complex models • Nonlinear • Many parameters Design and implementation of controllers in Matlab / Simulink • Prefer simpler models • Linearizations • Understanding dominating parameter effects • Understanding system variability • Identify worst cases
  • 5. THE POWER OF FMI • Can separate modeling and answering questions to different tools • Use the best tool for each purpose • Take advantage of engineers’ skills in specific tools • Facilitate cross-team use of the same model portfolio 2014-04-28 © Modelon 5 Model Modeling tool Sizing Tool 1 Quality Tool 2 Control design Tool 3 Formal verification Tool 4
  • 6. TWO ACADEMIC PARADIGMS  Large potential in combining approaches  Modelica and FMI is a suitable platform 2014-04-28 © Modelon 6 • Static models • Many parameters • Data-driven models • Focus on workflows, processes and tools Quality science/ Robust design / Six-sigma / Design-of-experiments • Dynamic models • Few parameters • Physics-based or data-driven models • Focus on mathematical rigor Control engineering
  • 7. DESIGN-OF-EXPERIMENTS (DOE) • Run a limited set of experiments (or simulations) • Identify crude models for how variables affect the behavior of a system in order to:  Optimize hardware design  Calibrate  Understand system variability 2014-04-28 © Modelon 7
  • 8. DOE: SIMPLISTIC APPROACHES • One-factor-at-a-time (OFAT) • Full-factorial design (gridding) 2014-04-28 © Modelon 8 x1 x2 x1 x2
  • 9. DOE DESIGNS 2014-04-28 © Modelon 9 Common ad-hoc approach Space-filling algorithms Good coverage, also in higher dimensions 100 test points, two factors Scales poorly with nbr of factors Corner cases poorly covered in higher dimensions
  • 10. A DOE TOOL FOR DYNAMIC SYSTEMS: REQUIREMENTS User input • FMU model • DoE factors from model • Ranges and distributions of factors • Type of DoE design • Response variables to analyze or visualize Tool tasks • Construct test matrix • Set FMU parameters • Simulate at all points, find steady- state • Find inputs to match specified outputs • Catch and manage simulation errors • Linearize system at test matrix points • Provide support for visualizing results • Construct meta-models for analysis 2014-04-28 © Modelon 10
  • 11. DOE IN THE FMI TOOLBOX FOR MATLAB 2014-04-28 © Modelon 11 FMU DoE variable spec Test matrix Run experiments Visualize result Excel / Matlab Modeling tool FMI Toolbox for Matlab from version 1.6 FMUDoESetup class constructor input: • FMU file name • Excel file name • [Excel sheet] • [options] methods: • qmc • mc • fullfact • custom FMUDoEResult class properties: • generation_date • model_data • doe • constants • experiment_status • steady_state • linsys • options • comp_time visualization methods: • main_effects • bode • step
  • 12. EXAMPLE: ENGINE COOLING SYSTEM • Demo model from Modelon’s Liquid Cooling Library • Design variables:  Maximum pump speed  Radiator efficiency  Minimum air mass flow • Requirements:  Engine-out coolant temp < 100 oC  Handle heat load of 100 kW  Ambient temperature operating range [-20oC, 45oC] 2014-04-28 © Modelon 12
  • 13. SIZING: SCREENING DESIGN SPACE 2014-04-28 © Modelon 13 >> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', 'Screening'); >> nbr_of_experiments = 100; >> result = doe_setup.qmc(nbr_of_experiments); >> T_engine_out = result.steady_state.y( : , 3) >> result.main_effects(result, ’T_liquid_ae’, T_engine_out > 100);
  • 14. SIZING: DETERMINING A DESIGN Zooming in to a smaller region of the design space: 2014-04-28 © Modelon 14 >> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', 'Sizing'); >> nbr_of_experiments = 100; >> result = doe_setup.qmc(nbr_of_experiments); >> T_engine_out = result.steady_state.y( : , 3) >> result.main_effects(result, ’T_liquid_ae’, T_engine_out > 100); Design
  • 15. EVALUATING THE DESIGN • Finding representative operating points  Let input heat load be a free variable  Let output T_engine_out be a DoE factor 2014-04-28 © Modelon 15
  • 16. DYNAMICS  input = pump speed  output = engine-out coolant temperature Bode plot for ensemble of linear systems 2014-04-28 © Modelon 16 >> doe_setup = FMUDoESetup('CoolingLoop.fmu', 'DesignParameters.xlsx', ‘Dynamics’'); >> nbr_of_experiments = 100; >> result = doe_setup.qmc(nbr_of_experiments); >> result.bode(1, 1)
  • 17. DYNAMICS: WHERE IS THE NONLINEARITY? • Correlate feature of Bode plot with DoE factors 2014-04-28 © Modelon 17 >> N = result.doe.nbr_of_experiments; >> ss_gain = zeros(N,1); >> for k = 1:1:N >> ss_gain(k) = dcgain(result.linsys.sys{k} (1, 1)); >> end >> result.main_effects(ss_gain, ’gain’);
  • 18. CONTROLLER EVALUATION • Loop-shaping: PI-controller with K = -50, Ti = 100 • Closed-loop step response 2014-04-28 © Modelon 18 >> s = tf(‘s’); >> Gc = -50*(1+1/(100*s)); >> cl_sys = cell(N,1); >> for k = 1:1:N >> Gp = result.linsys.sys{k}(1, 1); >> cl_sys{k} = minreal(Gp*Gc/(1+Gp*Gc)); >> end >> batch_step(cl_sys);
  • 19. CONCLUSIONS • Modelica and FMI is a powerful platform for analysis of parametric uncertainty in dynamical systems • Need for tools to that manage multi-factor uncertainty in a better way than ad-hoc one-factor-at-a-time trial-and-error 2014-04-28 © Modelon 19