functional mockup interface (fmi) a general standard for model

32
Functional Mockup Interface (FMI) Functional Mockup Interface (FMI) A General Standard for Model Exchange and A General Standard for Model Exchange and Li kö i Ui it Li kö i Ui it A General Standard for Model Exchange and A General Standard for Model Exchange and Simulator Coupling Simulator Coupling Linping University Linping University 2011 2011-02 02-10 10 Peter Fritzson Peter Fritzson class x { public int a; float b; int func (int a,int b); Asa asad Asda ad Asd ad cc Aac sdscfcc c a Ascccv ca Ascc cac } class x { public int a; float b; int func (int a,int b); Asa asad Asda ad Asd ad cc Aac sdscfcc c a Ascccv ca Ascc cac } class x { public int a; float b; int func (int a,int b); Asa asad Asda ad Asd ad cc Aac sdscfcc c a Ascccv ca Ascc cac } class x { public int a; float b; int func (int a,int b); Asa asad Asda ad Asd ad cc Aac sdscfcc c a Ascccv ca Ascc cac } Acknowledgements: Acknowledgements: MODELISAR Project is developing FMI. MODELISAR Project is developing FMI. MODELISAR Project is developing FMI. MODELISAR Project is developing FMI. Most slides in this presentation by Martin Most slides in this presentation by Martin Otter, together with Otter, together with Torsten Torsten Blochwitz, Blochwitz, Hilding Elmqvist, Andreas Junghanns, Hilding Elmqvist, Andreas Junghanns, JkbM H Ol JkbM H Ol Jakob Mauss, Hans Olsson Jakob Mauss, Hans Olsson Also some slides by Azam Zia Also some slides by Azam Zia 1 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Upload: others

Post on 03-Feb-2022

15 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Functional Mockup Interface (FMI) A General Standard for Model

Functional Mockup Interface (FMI)Functional Mockup Interface (FMI)A General Standard for Model Exchange andA General Standard for Model Exchange and

Li kö i U i itLi kö i U i it

A General Standard for Model Exchange and A General Standard for Model Exchange and Simulator CouplingSimulator Coupling

Linköping University Linköping University 20112011--0202--1010

Peter FritzsonPeter Fritzson

class x {publicint a;float b;int func (int a,int b);Asa asadAsda ad Asd ad ccAac sdscfcc c aAscccv caAscc cac}

class x {publicint a;float b;int func (int a,int b);Asa asadAsda ad Asd ad ccAac sdscfcc c aAscccv caAscc cac}

class x {publicint a;float b;int func (int a,int b);Asa asadAsda ad Asd ad ccAac sdscfcc c aAscccv caAscc cac}

class x {publicint a;float b;int func (int a,int b);Asa asadAsda ad Asd ad ccAac sdscfcc c aAscccv caAscc cac}

Acknowledgements:Acknowledgements:

MODELISAR Project is developing FMI.MODELISAR Project is developing FMI.MODELISAR Project is developing FMI.MODELISAR Project is developing FMI.Most slides in this presentation by Martin Most slides in this presentation by Martin

Otter, together with Otter, together with Torsten Torsten Blochwitz, Blochwitz, Hilding Elmqvist, Andreas Junghanns, Hilding Elmqvist, Andreas Junghanns,

J k b M H OlJ k b M H OlJakob Mauss, Hans OlssonJakob Mauss, Hans OlssonAlso some slides by Azam ZiaAlso some slides by Azam Zia

1 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 2: Functional Mockup Interface (FMI) A General Standard for Model

FMI FMI –– Motivation 1Motivation 1

• Need to SOLVE large integrated modeling and simulation engineering problemsengineering problems

• Hundreds of simulation tools, different model formats• Need to integrate multiple tools and formats for simulation• Need to integrate multiple tools and formats for simulation

T o main approaches• Two main approaches:• 1. Export models from some tools, import into other tools for simulation• 2. Co-simulation of models in different tools

• Export/Import Model Format: Functional Mockup Unit (FMU)

• Solution: Functional Mockup Interface (FMI) standardwww.functional-mockup-interface.org

2 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 3: Functional Mockup Interface (FMI) A General Standard for Model

FMI FMI –– Motivation 2Motivation 2

Problems / Needs Component development by supplier

supplier1 supplier2 supplier3 supplier4 supplier5

p p y pp Integration by OEM Many different simulation tools ?

OEM

supplier1 supplier2 supplier3 supplier4 supplier5Solution Reuse of supplier models by OEM:

DLL (model import) and/or tool 1 tool 2 tool 3 tool 4 tool 5

FMI OEM

DLL (model import) and/or Tool coupling (co-simulation)

Protection of model IP of supplier

!supplier1OEM

Added Value Early validation of design

supplier2

supplier3

Increased processefficiency and quality

slide from Nick Suyam, Daimler (adapted)

3 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 4: Functional Mockup Interface (FMI) A General Standard for Model

Functional Functional MockMock--up Interface (FMI) up Interface (FMI) –– OverviewOverviewetc.

Enginewith ECU

Gearboxwith ECU

Thermalsystems

Automatedcargo door

Chassis components,roadway, ECU (e.g. ESP)

Th FMI d l t i t f th ITEA2 MODELISAR j t

functional mockup interface for model exchange and tool couplingcourtesy Daimler

• FMI development is initiated, organized and headed by Daimler AGI d S ft /M d l/H d i th L Si l ti f

The FMI development is part of the ITEA2 MODELISAR project.

• Improved Software/Model/Hardware-in-the-Loop Simulation, of physical models and of AUTOSAR controller models from differentvendors for automotive applications with different levels of detail.

• Open Standard• 14 automotive use cases for evaluation in MODELISAR

> 10 t l l t t it ( tl ithi MODELISAR)

4 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

• > 10 tools plan to support it (mostly within MODELISAR)

Page 5: Functional Mockup Interface (FMI) A General Standard for Model

Simulator with GUI and Solver Executing Imported Model = FMU (Functional Mockup Unit)

simulatorGUI

readscontrol

model dll

references

fmmodel.dll

run 1 or many

modelDescription.xml .fmusimulator

solver

5 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 6: Functional Mockup Interface (FMI) A General Standard for Model

Exported Model in Exported Model in (Functional Mockup Unit) FMU Form(Functional Mockup Unit) FMU Form( p )( p )

A model is distributed in one zip-file that contains several files:files:

• XML file of model variable information. • C file with model equations converted into causal form• C file with model equations converted into causal form• Further data , documentation, maps, icon

6 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 7: Functional Mockup Interface (FMI) A General Standard for Model

FMI FMI for Model Exchange for Model Exchange –– Functional Mockup UnitsFunctional Mockup Units

• Import and export of input/output blocks –Functional Mock-Up Units – FMUsp

• described by• differential-, algebraic-, discrete equations,• with time-, state, and step-events

• An FMU can be large (e.g. 100 000 variables)• An FMU can be used in an embedded system (small overhead)• FMUs can be connected together

7 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 8: Functional Mockup Interface (FMI) A General Standard for Model

FMI for Model Exchange:FMI for Model Exchange:Export/Import/SimulationExport/Import/SimulationExport/Import/SimulationExport/Import/Simulation

• Step 1 – Export: Subsystem model is exported from its simulation tool

Simulation Tool 2p

• Preparation as FMU-archive containing

– model description (xml-file) Sub‐system 

User Interface

Sub‐system 2

– model description (xml-file)– executable dll-file containing

model equationsti ll C d

2

Solver Tool 2.fmu

– optionally C source code

• Step 2 – Import: Subsystem model is Simulation Tool 1Sub‐p p y

imported into simulation system for system simulation

• Reading FMU-archive

User Interface

Sub‐system 

Sub‐system 2

.fmug– model information from xml-file– connecting subsystem variables

i t i l ti

1

Solver Tool 1

8 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

– running system simulation

Page 9: Functional Mockup Interface (FMI) A General Standard for Model

FMI for CoFMI for Co--Simulation Simulation (tool coupling(tool coupling))Use case schematic 1/2Use case schematic 1/2

• Step 1 – Export: Subsystem descriptionis exported from its simulation tool

Simulation Tool 2: Slaveis exported from its simulation tool• Preparation as FMU-archive containing

• model description (xml-file), describes also solver/tool capabilities

Sub‐system 

User Interface

describes also solver/tool capabilities• reference to executable dll-file as,

wrapper which provides a tool specific implementation of the co simulation

2

Solver Tool 2 .fmu

Wrapper Tool 2

implementation of the co-simulation slave interface

• Step 2 – Import: Subsystem descriptionSimulation Tool 1: Master

.fmu

• Step 2 – Import: Subsystem descriptionis imported into simulation system for system simulation

R di FMU hi

User Interface

Sub‐system 1

• Reading FMU-archive• model information from xml-file• connecting subsystem variables

Solver Tool 1.fmu

Wrapper Tool 2

9 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

g y

Page 10: Functional Mockup Interface (FMI) A General Standard for Model

FMI for CoFMI for Co--Simulation Simulation (tool coupling)(tool coupling)Use case schematic 2/2Use case schematic 2/2

Host 1• Step 3a – Run simulation on same host• Master subsystem is Simulation Tool 1: Master Simulation Tool 2Master subsystem is

connected with wrapper dllvia co-simulation interface

• Subsystem 2 is called via wrapper of tool 2

User Interface

Sub‐system 1

Sub‐system 2

User Interface

• Subsystem 2 is called via wrapper of tool 2 as if it would have been directly imported into master simulation tool

system 1

Solver Tool 1

system 2

Solver Tool 2

Wrapper Tool 2

• Step 3b – Run simulation on different hosts• Master subsystem is con-

nected via a generic adapter Host 2Host 1

f

Simulation Tool 2g p

with a communication tool• Adapter provides

co-simulationUser Interface

Sub

Simulation Tool 1: Master

Sub‐system 2

User Interface

Wrapper Tool 2co simulationslave interface

• Communication tool useswrapper dlls of slave tools

Sub‐system 1

Solver Tool 1 Communication Layer Tool

Generic Master Adapter Solver Tool 2

Wrapper Tool 2

10 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

wrapper dlls of slave tools

Page 11: Functional Mockup Interface (FMI) A General Standard for Model

Complex Task to Develop FMI, Many Aspects

• Model Exchange (ODE/DAE components without integrators)• Co-Simulation (ODE/DAE components with integrators)( p g )• Co-Simulation with PDE solver (MpCCI)• AUTOSAR (discrete components with complex communication)• Simulation BackplaneIn Jan. 2010, the first version of "FMI for Model Exchange" was released. It was mainly developed by Dassault Systèmes (Dynasim), DLR, ITI, QTronic.as a y de e oped by assau Sys è es ( y as ), , , Q o cOn Oct. 12, 2010, the first version of “FMI for Co-Simulation” was released.

f i l k i fwww.functional-mockup-interface.org• specification• xml schema files• C header files• software development kit (QTronic)

11 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 12: Functional Mockup Interface (FMI) A General Standard for Model

MODELISAR ProjectMODELISAR Projectjj

• ITEA2 project

3 years (2008 2011)• 3 years (2008 – 2011)

• 29 project partners

Coordinators• Coordinators• Dassault Systèmes

• Daimler AG

• Budget / Funding30M€ / 10M€

F d d b• Funded byGermany (BMBF)France (DGCIS)Sweden (VINNOVA)BelgiumAustria

12 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 13: Functional Mockup Interface (FMI) A General Standard for Model

Model Distribution as a ZipModel Distribution as a Zip--file (.file (.fmufmu file)file)

A model is distributed as one zip-file with extension ".fmu“, containing:

XML d l d i i fil• XML model description fileAll model information that is not needed during integration of model,e.g., signal names and attributes. Advantage:e.g., signal names and attributes. Advantage:• No overhead for model execution.

• Tools can read this information (= complicated data structure)with their prefered language (C++, C#, Java, ...)

• Model equations defined by a small set of C-functions. In zip-file:• C source code and/or• C source code and/or• Binary code (DLL) for one or more platforms (Windows, Linux, ...)

• Resources• Documentation (html files)• Model icon (bitmap file)• Maps and tables (read by model during initialization)

13 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 14: Functional Mockup Interface (FMI) A General Standard for Model

Structure of an FMU zip-file

1. modelDescription.xml // Description of model (required file) 2. model.png // Optional image file of model iconp g // p g3. documentation // Optional directory containing the model

// documentation _main.html // Entry point of the documentation <other documentation files><other documentation files>

4. sources // Optional directory containing all C-sources // all needed C-sources and C-header files to compile and link the model// with exception of: fmiModelTypes.h and fmiModelFunctions.h

5 binaries // Optional directory containing the binaries5. binaries // Optional directory containing the binaries win32 // Optional binaries for 32-bit Windows

<modelIdentifier>.dll // DLL of the model interface implementationVisualStudio8 // Microsoft Visual Studio 8 (2005)< d lId tifi > lib // Bi lib i<modelIdentifier>.lib // Binary libraries

gcc3.1 // Binaries for gcc 3.1.win64 // Optional binaries for 64-bit Windows

...lin 32 // Optional binaries for 32 bit Linlinux32 // Optional binaries for 32-bit Linux

...6. resources // Optional resources needed by the model

< data in model specific files which will be read during initialization >

14 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 15: Functional Mockup Interface (FMI) A General Standard for Model

Model Model Description SchemaDescription Schema

• Model information not needed for execution is stored in one xml-file (modelVariables xml in zip-file) defined by xmlxml-file (modelVariables.xml in zip-file) defined by xml schema (.xsd) files.

• Advantage: Complex data structures give still simple g ginterface, and tool can use its favorite programming language for reading (e.g., C++, C#, Java).

D fi iti f di l itDefinition of display units

Definition of type defaultsDefault stop time, tol. etc.Tool specific data

Variable names and attributesxml schema (.xsd)defined by FMI

15 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

de ed byspecification

Page 16: Functional Mockup Interface (FMI) A General Standard for Model

Model AttributesModel AttributesmodelIdentifier is a C-name that isused as prefix for the C-functions(model interface)(model interface)

guid is a globally unique identifier("fingerprint" of all releveant informationin the xml file) that is also stored in theC-functions to gurantee consisteny

Number of continuous states andof event indicators; numbers are fixedof event indicators; numbers are fixed(meaning of states can change dynamicaduring simulation)

16 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 17: Functional Mockup Interface (FMI) A General Standard for Model

Model VariablesModel Variables

data types

ordered set of scalar variablesvariables(arrays, records, etc. must be mapped to scalars when

ti d )generating code).

17 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 18: Functional Mockup Interface (FMI) A General Standard for Model

Attributes of Model VariablesAttributes of Model Variables

unique namehandle to identifyvariable in Cvariable in C-functions

18 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

...

Page 19: Functional Mockup Interface (FMI) A General Standard for Model

Data TypesData Types

Data types allow to store all (relevant) Modelica attributes, including units.Defaults from TypeDefinitions

19 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 20: Functional Mockup Interface (FMI) A General Standard for Model

ExampleExample <?xml version="1.0" encoding="UTF8"?>

modelDescription.xml

ModelModelDescriptionDescriptionXML FileXML File

<fmiModelDescriptionfmiVersion="1.0"modelName="Modelica.Mechanics.Rotational.Examples.Friction"modelIdentifier="Modelica_Mechanics_Rotational_Examples_Friction"guid="{8c4e810f-3df3-4a00-8276-176fa3c9f9e0}"XML FileXML File guid {8c4e810f 3df3 4a00 8276 176fa3c9f9e0}...numberOfContinuousStates="6"numberOfEventIndicators="34"/><UnitDefinitions>

<BaseUnit unit="rad"><BaseUnit unit="rad"><DisplayUnitDefinition displayUnit="deg" gain="57.2957795130823"/>

</BaseUnit></UnitDefinitions><TypeDefinitions>

<Type name="Modelica.SIunits.AngularVelocity"><RealType quantity="AngularVelocity" unit="rad/s"/>

</Type></TypeDefinitions><ModelVariables>

<ScalarVariablename="inertia1.J"valueReference="16777217"description="Moment of inertia"variability="parameter">variability= parameter ><Real declaredType="Modelica.SIunits.Torque" start="1"/>

</ScalarVariable>...

</ModelVariables>/

20 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

</fmiModelDescription>

Page 21: Functional Mockup Interface (FMI) A General Standard for Model

Model CModel C--Interface Interface –– Two Header FilesTwo Header Files

Platform dependent definitions (basic types)

C-function interfaces 18 core functions 6 tilit f ti 6 utility functions no macros C-function name: <ModelIdentifier>_<name>, e.g. "Drive_fmiSetTime"

21 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

_ , g _

Page 22: Functional Mockup Interface (FMI) A General Standard for Model

// Set input argumentsfmiSetTime(m, time);fmiSetReal(m, id_u1, u1, nu1);

ExampleUse:

FMI FMI Functions Functions _

fmiSetContinuousStates(m, x, nx);

// Get resultsfmiGetContinuousStates(m derx nx);

and their useand their use

22 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

fmiGetContinuousStates(m, derx, nx);fmiGetEventIndicators (m, z, nz);

Page 23: Functional Mockup Interface (FMI) A General Standard for Model

Mathematical description of an FMU

23 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 24: Functional Mockup Interface (FMI) A General Standard for Model

Signals of an FMU (Functional Mockup Unit)

For example: 10 input/output signals (u/y) for connection and 100 000 i t l i bl ( ) f l tti

24 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

100 000 internal variables (v) for plotting

Page 25: Functional Mockup Interface (FMI) A General Standard for Model

Ongoing Tool Support for FMIOngoing Tool Support for FMIModel Exchange, Export and/or ImportModel Exchange, Export and/or Import

• AMESim. For Modelica. By LMSCATIA S t F CAD/M d li B D lt S tè• CATIA Systems. For CAD/Modelica. By Dassault Systèmes.

• Dymola 7.4. Available for Modelica. By Dassault Systèmes.EXITE ACE ( i l ti f ft / ) B E t• EXITE ACE (co-simulation of software/AUTOSAR). By Extessy

• Simulation X. For Modelica. By ITI Systems.• SIMULINK. Export avail. in Dymola 7.4. Dassault Systèmes.• JModelica.org. Beta version of import. By Modelon.• OpenModelica. ”beta version” export. Import started. By OSMC• EXITE. (Import, co-simulation), By Extessy• Silver/TestWeaver. (FMU integration,cosimulation, testing). Qtronic• SIMPACK. (Import, Multibody). By SIMPACK

25 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 26: Functional Mockup Interface (FMI) A General Standard for Model

Comparison Comparison FMI FMI –– SIMULINK SIMULINK SS--FunctionFunction

• S-function is designed to import models into SIMULINK• Interface to construct a model (S-function) for import in SIMULINK.Interface to construct a model (S function) for import in SIMULINK.• No specification to callto call S-Function in another simulator.• Model DLL depends on target simulator, needs one DLL per target

(SIMULINK/S Function models can be imported in other simulation(SIMULINK/S-Function models can be imported in other simulationenvironments via the Target Language Compiler of Real-Time Workshopdepends on target: Model used in 3 environments → 3 DLLs of same model)

Proprietary format Might give legal problems if used in other simulators• Proprietary format. Might give legal problems if used in other simulators

• FMI is designed to import models into many simulation environmentsenvironments• No specification to construct a model.• Interface definition to call a FMI-model in a simulation environment.• Model DLL does not depend on target simulator

(If 1 model is used in 3 simulation environ. on the same platform → 1 DLL)• Open source format (Wikipedia license for spec, BSD for schema/header)

26 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

p ( p p )

Page 27: Functional Mockup Interface (FMI) A General Standard for Model

Comparison: Differences Comparison: Differences in in DesignDesign

• S-function is complexH d d f C f ti / ( i t t h 9000 li f d )• Hundreds of C-functions/macros (e.g. simstruct.h: 9000 lines of code).

• No simulator can import all S-function models since too complex(with exception of SIMULINK)

• S-Function distribution is inconvenient, since several files(DLL, C-source, model specific maps, etc.)

• FMI is simple• 20 C-functions (e.g. fmiModelFunctions.h: 200 lines of code).

Si l t th il t th f ll i t f d t i li it• Simulators can rather easily support the full interface, due to simplicity.• FMI-model distribution is convenient, since one file

(all files are stored in one zip-file, including DLLs for several platforms).

27 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 28: Functional Mockup Interface (FMI) A General Standard for Model

Comparison: Better Comparison: Better technical solutions in FMItechnical solutions in FMI((not not available available in in SS--Function interface)Function interface)

• Advanced co-simulation interfaceSupport for higher order extrapolation/interpolation of interface variables,

(( ))

pp g p pvariable communication step-size, rejecting a communication step.

• Reliable event handling for hybrid systemsCl t t t h dli t it ti i l ti d lClean state event handling + event iteration over simulation model

• Reliable and efficient handling of algebraic equations in model.• If no convergence of equation solver model can request step size reduction• If no convergence of equation solver, model can request step-size reduction

in simulator.• Solution of equation systems are cached for reuse of subsequent calls.

• Support for efficient storing results of internal variables• Allows to store results of many (e.g.100 000) variables in a practical way.• Optimized if a = b or a = -b, then only time response of "a" needs to be stored

in the result file. For Modelica models size of result files is typically reduced by factor 4-5.

28 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 29: Functional Mockup Interface (FMI) A General Standard for Model

Ongoing Work Ongoing Work –– OpenModelicaOpenModelica FMI Export/ImportFMI Export/Import

Current status completed FMI Export:Current status, completed, FMI Export:• XML Data export.• C FMI interface functions• C FMI interface functions.• C export for variable definitions.• C export for functions like model initialization real• C export for functions like model initialization, real

variables, etc.• FMU MakefileFMU Makefile• API for FMI translation

translateModelFMU(ModelName)( )

29 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 30: Functional Mockup Interface (FMI) A General Standard for Model

Status, FMI Export/Import Status, FMI Export/Import OpenModelicaOpenModelica

Left to Develop for FMI ExportG tti t i di t / i• Getting event indicators/zero crossings.

• Event update function.G tti ti t• Getting time events.

• Testing exported FMUs.

FMI Import• Work recently started

30 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 31: Functional Mockup Interface (FMI) A General Standard for Model

OpenModelicaOpenModelica Compiler and Code GeneratorsCompiler and Code GeneratorsIncluding New Including New SimCodeFMUSimCodeFMU for FMI Exportfor FMI Export

31 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

Page 32: Functional Mockup Interface (FMI) A General Standard for Model

Outlook and ConclusionOutlook and Conclusion

• "FMI for Model Exchange" released at end of January 2010(available from “http://www.functional-mockup-interface.org”)(available from http://www.functional mockup interface.org )

• "FMI for Co-Simulation“ released on Oct. 12, 2010:Support for: extrapolation/interpolation of interface variables,variable communication step-size, re-doing a step→ step-size control possible.

"FMI for Model Exchange" will be further developed A lot of• "FMI for Model Exchange" will be further developed. A lot of requirements available, such as:

- Sparse JacobianDi f d d i l h- Direct support for arrays and records in xml schema

- Improved sample time definition + moredata types (for embedded systems)

- Online changeable parameters- Saving/restoring model state

Oth t l d d t t FMI

32 Peter Fritzson presenter. Courtesy MODELISAR project, Martin Otter et al

• Other tool vendors are encouraged to support FMI.