INTRODUCTION TO FMI TECHNOLOGY INCOSENAFEMS SMSWG Meeting January

  • Slides: 38
Download presentation
INTRODUCTION TO FMI TECHNOLOGY INCOSE-NAFEMS SMSWG Meeting. January 28, 2014 Hubertus Tummescheit, Modelon 1

INTRODUCTION TO FMI TECHNOLOGY INCOSE-NAFEMS SMSWG Meeting. January 28, 2014 Hubertus Tummescheit, Modelon 1

OVERVIEW • • Modelon: who are we Motivation FMI for Model Exchange FMI for

OVERVIEW • • Modelon: who are we Motivation FMI for Model Exchange FMI for Co-Simulation Tools & Interoperability process FMI 2. 0 Outlook FMI Use Cases Summary

Modelon Overview & Locations Modelon Inc. • Ann Arbor, MI • Hartford, CT Modelon

Modelon Overview & Locations Modelon Inc. • Ann Arbor, MI • Hartford, CT Modelon AB • Lund • Gothenburg Modelon KK • Tokyo Modelon Gmb. H • Munich • Stuttgart • Hamburg • Global premier provider of Modelica and FMI based solutions for systems engineering • ~80 engineers (MSc / Ph. D levels) dedicated to Modelica and FMI • Global customers mostly among Fortune 500 technology companies in Automotive, Aerospace, Energy and Industrial Equipment • >30% annual organic growth 2013 -11 -04 © Modelon

MOTIVATION • Analytic Model Based Systems Engineering: Processes & tools for fully integrated system

MOTIVATION • Analytic Model Based Systems Engineering: Processes & tools for fully integrated system simulation rapidly evolving • Lack of standards & standardized interfaces • Process inefficiencies: re-work due to lack of interfaces & interoperability • Model deployment expensive • Value Stream Mapping: Missing or fragile interfaces part of most process troubles!

MOTIVATION We Don’t want to end up in the next edition of this one!

MOTIVATION We Don’t want to end up in the next edition of this one! 2020 -10 -27 © Modelon 5

PROBLEM 1 § Models of a system often have to be developed using different

PROBLEM 1 § Models of a system often have to be developed using different modeling and simulation environments. supplier 1 supplier 2 supplier 3 supplier 4 supplier 5 OEM ? § In order to simulate the complete system, the different programs have to interact with each other. From the official FMI presentation (adapted)

SOLUTION: A STANDARD INTERFACE supplier 1 supplier 2 supplier 3 supplier 4 supplier 5

SOLUTION: A STANDARD INTERFACE supplier 1 supplier 2 supplier 3 supplier 4 supplier 5 OEM ! § As a universal solution to this problem the Functional Mockup Interface (FMI) was developed by MODELISAR and is now organized under the umbrella of the Modelica Association. One FMU supplier 1 Inside FMU: IP is protected, compiled model, can be deployed to 3 rd parties tool 1 supplier 2 supplier 3 tool 2 tool 3 FMI supplier 4 supplier 5 tool 4 tool 5 OEM From the official FMI presentation (adapted)

WALLED GARDENS • Current CAE space? FMI helps break down the walls!! 2020 -10

WALLED GARDENS • Current CAE space? FMI helps break down the walls!! 2020 -10 -27 © Modelon 8

PROBLEM 2 § System complexity increases while § Required time to market decreases (most

PROBLEM 2 § System complexity increases while § Required time to market decreases (most industries) § Without disruptive changes, an impossible equation to solve. Source: DARPA AVM pres.

SOLUTION: PERVASIVE USE OF MODELS • Pervasive use of models in system design are

SOLUTION: PERVASIVE USE OF MODELS • Pervasive use of models in system design are a disruptive change! • Analytic MBSE requires high quality models, from many tools, but CAE tools are expensive Modelica / 1 -D Systems Simulation CFD FEA Block diagrams FMI-based System Simulation 2020 -10 -27 © Modelon 10

FMI: A BUSINESS MODEL INNOVATION • FMI-compliant tools often allow liberally licensed export of

FMI: A BUSINESS MODEL INNOVATION • FMI-compliant tools often allow liberally licensed export of models for distribution in the organization • Exported FMU’s most often don’t require a license from the model authoring tool • Analytic MBSE can be brought from few simulation specialists to designers, domain specialists, control engineers. One FMU used by many engineers (control design) • One FMU run on many cores (robust design) • 2020 -10 -27 © Modelon 11

THE FMI PROJECT Goal of the FMI project in the Modelica Association From the

THE FMI PROJECT Goal of the FMI project in the Modelica Association From the official FMI presentation (adapted)

1. MODEL EXCHANGE Overall goal of the FMI project in the Modelica Association 1.

1. MODEL EXCHANGE Overall goal of the FMI project in the Modelica Association 1. Model-in-the-loop Software-in-the-loop Hardware-in-the-Loop

2. TOOL INTEROPERABILITY e. g. Dymola Overall goal of the FMI project in the

2. TOOL INTEROPERABILITY e. g. Dymola Overall goal of the FMI project in the FEA of brake disc & Tire e. g. Abaqus Hydraulic System Modelica Chassis Association Model-/Software-/ Hardware-in-the-Loop 2. Co-Simulation & Tool Interoperability e. g. Adams

3. ENTERPRISE MODEL DEPLOYMENT Any Modelica tool Systems Simulink or Scade 3. Standardized deployment

3. ENTERPRISE MODEL DEPLOYMENT Any Modelica tool Systems Simulink or Scade 3. Standardized deployment of models inside and in-between organizations Control Mechanical “Daimer, QTronic and Vector describe how Mercedes-Benz currently uses virtual ECUs to validate transmission control software for about 200 variants of the Sprinter series in a highly automated way on Windows PC”

FMU: A MODEL WITH STANDARD INTERFACE • A component which implements the FMI standard

FMU: A MODEL WITH STANDARD INTERFACE • A component which implements the FMI standard is called Functional Mockup Unit (FMU) • Separation of § Description of interface data (XML file) § Functionality (C code or binary) • A FMU is a zipped file (*. fmu) containing the XML description file and the implementation in source or binary form • Additional data and functionality can be included • Information & Interface specification: www. fmi-standard. org From the official FMI presentation (adapted)

FMI – TWO VARIANTS • FMI for Model Exchange: FMU Tool Solver § Model

FMI – TWO VARIANTS • FMI for Model Exchange: FMU Tool Solver § Model Version 1. 0 released in January 2010 • FMI for Co-Simulation: § Reuses as much as possible from FMI for Model Exchange standard Tool FMU Model Solver § Version 1. 0 released in October 2010 From the official FMI presentation (adapted)

XML schema (. xsd) defined by the FMI specification From the official FMI presentation

XML schema (. xsd) defined by the FMI specification From the official FMI presentation (adapted)

FMI XML SCHEMA • Information not needed during execution is stored in one xml-file:

FMI XML SCHEMA • Information not needed during execution is stored in one xml-file: Complex data structures give still simple interface. § Reduced overhead in terms of memory. § Definition of display units Definition of type defaults Default stop time, tol. etc. Tool specific data Variable names and attributes From the official FMI presentation (adapted)

C-INTERFACE • Two C-header files: § Platform dependent definitions (basic types): § C-functions: 18

C-INTERFACE • Two C-header files: § Platform dependent definitions (basic types): § C-functions: 18 core functions 6 utility functions no macros C-function name: <Model. Identifier>_<name>, e. g. Drive_fmi. Set. Time" From the official FMI presentation (adapted)

C-INTERFACE • Instantiation: fmi. Component fmi. Instantiate. XXX(fmi. String instance. Name, . . .

C-INTERFACE • Instantiation: fmi. Component fmi. Instantiate. XXX(fmi. String instance. Name, . . . ) • fmi. Component is a parameter of the other interface functions § Opaque void* for the importing tool § Used by FMU to hold any necessary information. • Functions for initialization, termination, destruction • Support of real, integer, boolean, and string inputs, outputs, parameters • Set and Get functions for each type: fmi. Status fmi. Set. Real (fmi. Component c, const fmi. Value. Reference vr[], size_t nvr, const fmi. Real value[]) fmi. Status fmi. Set. Integer(fmi. Component c, const fmi. Value. Reference vr[], size_t nvr, const fmi. Integer value[]) • Identification by value. Reference, defined in the XML description file for each variable From the official FMI presentation (adapted)

FMI FOR MODEL EXCHANGE • Import and export of input/output blocks (FMU – Functional

FMI FOR MODEL EXCHANGE • Import and export of input/output blocks (FMU – Functional Mock-up Unit) • Described by § differential-, algebraic-, discrete equations, § with time-, state, and step-events • FMU can be large (e. g. 100000 variables) • FMU can be used in an embedded system (small overhead) • FMUs can be connected together From the official FMI presentation (adapted)

SIGNALS OF A MODEL EXCHANGE FMU For example: 10 input/output signals (u/y) for connection

SIGNALS OF A MODEL EXCHANGE FMU For example: 10 input/output signals (u/y) for connection and 100000 internal variables (v) for plotting From the official FMI presentation (adapted)

CO-SIMULATION • Definition: Coupling of several simulation tools § Each tool treats one part

CO-SIMULATION • Definition: Coupling of several simulation tools § Each tool treats one part of a modular coupled problem § Data exchange is restricted to discrete communication points § Subsystems are solved independently between communication points § • Motivation: § § § Simulation of heterogeneous systems Partitioning and parallelization of large systems Multi-rate integration Software-in-the-loop simulation Hardware-in-the-loop simulation From the official FMI presentation (adapted)

FMI FOR CO-SIMULATION • Master/slave architecture • Considers different capabilities of simulation tools •

FMI FOR CO-SIMULATION • Master/slave architecture • Considers different capabilities of simulation tools • Support of simple and sophisticated coupling algorithms: Iterative and straight forward algorithms § Constant and variable communication step size § • Allows (higher order) interpolation of continuous inputs • Support of local and distributed co-simulation scenarios • FMI for Co-Simulation does not define: Co-simulation algorithms § Communication technology for distributed scenarios § From the official FMI presentation (adapted)

FMI FOR CO-SIMULATION • Signals of an FMU for Co-Simulation t 0, p v

FMI FOR CO-SIMULATION • Signals of an FMU for Co-Simulation t 0, p v Enclosing Model. Master Co-Simulation u y Model t Solver External Model (FMU instance) Co-Simulation Slave (FMU instance) t x Solver § § Inputs, outputs, and parameters, status information Derivatives of inputs, outputs w. r. t. time can be set/retreived for supporting of higher order approximation From the official FMI presentation (adapted)

FMI CO-SIMULATION: USE CASE • Co-Simulation stand alone: Executable Master Library (DLL) Slave Model

FMI CO-SIMULATION: USE CASE • Co-Simulation stand alone: Executable Master Library (DLL) Slave Model Solver Process • Co-Simulation tool: Executable Master Process 1 Library (DLL) FMI Wrapper Simulation tool Slave Model Process 2 Solver

FMI FOR CO-SIMULATION: USE CASE • Distributed co-simulation scenario • Data exchange is handled

FMI FOR CO-SIMULATION: USE CASE • Distributed co-simulation scenario • Data exchange is handled by a communication layer which is implemented by a special FMI wrapper • Master and slave utilize FMI for Co-Simulation only

FMI DEVELOPMENT ORGANIZATION • An independent project under the umbrella of the Modelica Association

FMI DEVELOPMENT ORGANIZATION • An independent project under the umbrella of the Modelica Association • Open to anyone that is willing to invest time! • Web site: http: //www. fmi-standard. org • All documents, and a standards compliance checker, available for download • Many open source tools available to help vendors implement the standard: http: //www. jmodelica. org/FMILibrary BSD-licensed library with basic functionality of the FMI API, developed by Modelon

TOOLS (FROM FMI WEBSITE)

TOOLS (FROM FMI WEBSITE)

CROSS-CHECKING RULES • Standard procedures to ensure compatibility of FMI tools from different vendors

CROSS-CHECKING RULES • Standard procedures to ensure compatibility of FMI tools from different vendors • Cross-check table is maintained at fmi-standard. org • Base level compliance: FMI Compliance Checker • Each vendor is encouraged: Export: provide test FMUs § Import: simulate using test FMUs from other vendors §

OUTLOOK – FMI 2. 0 • • Significant improvements over FMI-ME 1. 0 and

OUTLOOK – FMI 2. 0 • • Significant improvements over FMI-ME 1. 0 and FMI-CS-1. 0 Harmonization - ME and CS specifications are merged Improved handling of hybrid and discrete models Efficient interface to Jacobian matrices § Optimization applications (dynamic & steady-state design) • Tunable parameters for interactive simulation § Controller tuning Engine with ECU Gearbox with ECU Thermal systems Automated cargo door Chassis components, roadway, ECU (e. g. ESP) functional mockup interface for model exchange and tool coupling courtesy Daimler

FMI USE CASES More FMI Resources: http: //www. fmi-standard. org http: //www. modelon. com/campaigns/2013

FMI USE CASES More FMI Resources: http: //www. fmi-standard. org http: //www. modelon. com/campaigns/2013 -fmi-detroit/ FMI Tutorial at Modelica conference (March 10 -12, Lund Sweden) • FMI 2. 0 introduction • FMI for Hardware-In-The-Loop FMI track at March 11 th on Modelica conference 2020 -10 -27 © Modelon 34

ROBUST DESIGN OF HYDRAULIC VALVE • Task: robust design of the dynamic response of

ROBUST DESIGN OF HYDRAULIC VALVE • Task: robust design of the dynamic response of a pressure reducing valve (e. g. for fuel supply system) • Tools: FMU export from Dymola, Hydraulics Library § FMU import into Simulink for open loop stability analysis § FMU interface: FMI Toolbox from Modelon §

VIRTUAL INTEGRATION & TEST Silver runs a virtual prototype: On standard Windows PC Connecting

VIRTUAL INTEGRATION & TEST Silver runs a virtual prototype: On standard Windows PC Connecting virtual control and virtual plant using Si. L-technology Using compiled behavioural models from many different tools without sources Allowing efficient and intuitive communication definition Allowing simple interaction with the virtual prototype: User “drives” system Silver allows: FMU export: any FMI compatible tool FMU import: Silver Easy sharing of information/results Use of simulation technology by non-specialists, without the simulation tool Protection of IP System behaviour on the laptop of every engineer (concurrent engineer. ) Extremely fast change-validationchange cycles (few minutes!) Engineers immediately experience their changes in a system context

COUPLING MULTIBODY MECHANICS TO HYDRAULICS 2020 -10 -27 © Modelon

COUPLING MULTIBODY MECHANICS TO HYDRAULICS 2020 -10 -27 © Modelon

MODEL DEPLOYMENT Model Deployment from Simulation Experts to Reactor Design Experts Custom-built, pre-packaged work

MODEL DEPLOYMENT Model Deployment from Simulation Experts to Reactor Design Experts Custom-built, pre-packaged work flow based on FMI Excel interface by Modelon FMU exporter: Dymola FMU Importer: Microsoft Excel 2020 -10 -27 © Modelon

SUMMARY • FMI has a high potential being widely accepted in the CAE world:

SUMMARY • FMI has a high potential being widely accepted in the CAE world: Initiated and pushed by Daimler to significantly improve the exchange of simulation models between suppliers and OEMs. § Defined in close collaboration of different tool vendors. § Industrial users were involved in the proof of concept. § FMI can already be used with many CAE tools: several Modelica tools, Simulink, multi-body and other tools. § • A cost efficient way to deploy models widely • Supported by Industry groups (Global Automotive Alliance Group, GAAG, > 15 Automotive OEM worldwide) • Supported by standards-driving non-profit organization (www. prostep. org as part of PLM standardization) With material from the official FMI presentation