Intégration du Functional Mock-up Interface dans la ...
Transcript of 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
© 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
© 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
© 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
© 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
© 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
© 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)
© 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
© 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
© 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
© 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).
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 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
© 2
011 -
IFP
Energ
ies n
ouvelle
s
Application: Véhicule hybride
20
© 2
011 -
IFP
Energ
ies n
ouvelle
s
Application: Véhicule hybride
LMCS 2011 7 Avril 201121
© 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