Intégration du Functional Mock-up Interface dans la ...

22
Énergies renouvelables | Production éco-responsable | Transports innovants | Procédés éco-efficients | Ressources durables © 2011 - IFP Energies nouvelles LMCS 2011 7 Avril 2011 Intégration du Functional Mock-up Interface dans la plateforme xMOD Hassen Hadj-Amor, Mongi Ben gaid, Nicolas Pernet, Ben-Jelloun Zakia

Transcript of Intégration du Functional Mock-up Interface dans la ...

Page 1: Intégration du Functional Mock-up Interface dans la ...

Énergies renouvelables | Production éco-responsable | Transports innovants | Procédés éco-efficients | Ressources durables

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 2011

Intégration du Functional Mock-up Interface dans la

plateforme xMOD

Hassen Hadj-Amor, Mongi Ben gaid, Nicolas Pernet, Ben-Jelloun Zakia

Page 2: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

Plan

Contexte

xMOD

Functional Mockup Interface (FMI)

FMI for Model Exchange

FMI for Co-simulation

Intégration du FMI dans xMOD

Application

Conclusion et perspectives

Modelica Conference 2011 March 20-22, 20112

Page 3: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20113

Contexte

Développement de

modèles de

comportement

Laboratoire

d'expérimentations

virtuelles

Intégration de

modèles

Validation des

contrôleurs et des

actionneurs

Validation des moteurs

Semi-virtuel / Semi-réelVirtuel

Développement de

modèles de contrôle

Page 4: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20114

xMOD

xMOD : Plateforme de co-simulation temps-réel

Espace de travail pour lasimulation mieux adapté pourchaque domaine d'ingénierie

Interactivité plus simple avec lemodèle en temps-réel

Pratique pour échanger desmodèles

Page 5: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20115

xMOD

A.mdl B.mdl C.ame D.mo

xM

OD

ta

rge

t

xMOD Platform

A.xmodel

A.dll

B.xmodel

B.dll

C.xmodel

C.dll

D.xmodel

D.dll

Page 6: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20116

FMI : Vue générale

FMI (Functional Mockup Interface)

Représentation standard des modèles

basés principalement sur Modelica et

des modèles non-Modelica

Des modèles provenant d’autres outils

de simulation peuvent être utilisées

dans un autre environnement

Des modèles de contrôle AUTOSAR

provenant de différents vendeurs, pour

les applications automobiles, avec

différents niveaux de détail

Page 7: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

7

FMI : Vue générale

Modèles de composant

Infrastructure de simulation

Modèles de systèmes physiquesModèles de contrôle

Outils de simulation

FMI-DLLS (.fmu)

Page 8: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20118

FMI: Idée de conception principale

Un composant qui implémente l'interface FMI est appelé

Functional Mock-up Unit (FMU)

Séparation de :

Description des données de l'interface (XML)

Fonctionnalités (code C ou binaire)

Un FMU est un fichier compressé (.fmu) qui contient la

description XML du modèle et son implémentation en C ou en

binaire

Spécifications de l'interface du FMI : www.functional-mockup-

interface.org

Page 9: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 20119

FMI: Idée de conception principale

FMI for Model Exchange

Version 1.0 en Janvier 2010

FMI for Co-simulation

Version 1.0 en Octobre 2010

Simulateur

Solveur

FMU

Modèle

SimulateurFMU

Modèle

Solveur

Page 10: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201110

FMI for Model Exchange

.fmumodelDescription.xml

model.dll

Environnement graphique

du simulateur

Solveur

Lire

contrôler

Références

Exécuter une ou plusieurs instances

Runtime

Page 11: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201111

FMI for Model Exchange

Flux en bleu: Information

fournie par le FMU

Flux en rouge:

Information fournie pour le

FMU

L’interface décrit des équations différentielles ordinaires (ODE). Actuellement,

elle ne supporte pas les équations différentielles algébriques (DAE).

Page 12: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201112

FMI for Co-simulation

.fmumodelDescription.xml

model.dll

Environnement graphique

du simulateur

Solveur

Lire

contrôler

Références

Exécuter une ou plusieurs instances

Runtime

Page 13: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201113

FMI for Co-simulation

u y

Enclosing Model

v0 0 0 0 0 0, ,inital values (a subset of { , , , , })t p x x y v m

Solver

xt , ,x m z

External Model (FMU instance)

Co-Simulation Slave (FMU instance)

t

Model

Solver

Co-Simulation Master

t0, p

Page 14: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

Outils supportant le FMI

AMESim

Dymola 7.4 (Disponible)

EXCITE

JModelica (Disponible)

NI Labview

OpenModelica

Silver (Disponible)

SIMPACK

SimulationX (Disponible)

Simulink (Disponible)

TISC

xMOD (Disponible)

50% des vendeurs d’outils

compatibles au standard

FMI ne sont pas membres

du projet MODELISAR

14 Modelica Conference 2011 March 20-22, 2011

Page 15: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201115

FMI wrapper

Intégration du FMI dans xMOD

Approche basée sur un "wrapper" : FMI for Model Exchange

xMOD

runtime Solveur

FMU

Modèle

xMOD

Page 16: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201116

Intégration du FMI dans xMOD

Machine d'état de l'exécution une simulation sous xMOD

fmiInstantiate()

fmiInitialize()

fmiGetXXX()

fmiSetXXX()

Initialiser les données

du solveur

fmiGetContinuousStates()

fmiGetDerivatives()

fmiSetContinousStates()

fmiSetDerivatives()

fmiGetEventIndicators()

ODESolve()

...

fmiFreeModelInstance()

fmiTerminate() FMI for Model Exchange

Page 17: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201117

FMI wrapper

Intégration du FMI dans xMOD

Approche basée sur un "wrapper" : FMI for Co-simulation

xMOD

runtime

xMOD

FMU

Modèle

Solveur

Page 18: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201118

Intégration du FMI dans xMOD

Machine d'état de l'exécution une simulation sous xMOD

fmiInstantiateSlave()

fmiInitializeSlave()

fmiDoStep()

fmiFreeSlaveInstance()

fmiTerminateSlave() FMI for Co-simulation

Page 19: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

LMCS 2011 7 Avril 201119

Intégration du FMI dans xMOD

Solveurs intégrées sous xMOD pour le FMI for Model Exchange

Solveurs à pas fixe

Euler explicite

Runge Kutta 4

Solveurs à pas variable

DASSL

CVODE de la suite SUNDIALS (BDF & Adams Moulton)

Runge Kutta 4 à pas variable

Pour le FMI for Co-simulation, les solveurs sont intégrés par

défaut dans les modèles

Page 20: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

Application: Véhicule hybride

20

Page 21: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

Application: Véhicule hybride

LMCS 2011 7 Avril 201121

Page 22: Intégration du Functional Mock-up Interface dans la ...

© 2

011 -

IFP

Energ

ies n

ouvelle

s

Conclusion & perspectives

Le FMI a un fort potentiel d'être largement accepté dans le monde

IAO

Compatibilité xMOD et FMI

FMI 2.0 supportera la génération de matrices jacobiennes

Améliorations possibles pour le FMI:

Libre choix pour l'utilisateur du FMU (FMI for Model Exchange) de

pouvoir appliquer ses propres méthodes d'initialisation

Changements de paramètres au cours de l'exécution d'un FMU

Amélioration de la gestion des évènements temporels "time events"

LMCS 2011 7 Avril 201122