SysML and Modelica Integration using FMI\System of Systems March The seventh National Conference INCOSE_IL 2013 System of Systems "SysML and Modelica Integration using FMI – a Case Study" Lev Greenberg (IBM), Alessandro Mignogna (ALES), Peter Aronsson (Wolfram-Mathcore), Daniel Wadler (IAI)
SysML and Modelica Integration using FMI\System of Systems March Overview SPRINT System Engineering Simulation Goals Current Practice – Simulation Techniques State of the Art (Example) FMI Approach FMI for SysML FMI for Modelica Demonstration of Model Integration and Simulation Conclusion
SysML and Modelica Integration using FMI\System of Systems March SPRINT This work is supported by the SPRINT (Project Number: ) EU 7th framework programme grants.
SysML and Modelica Integration using FMI\System of Systems March SE Simulation Goals Promote cooperation between different engineering domains. Leverage cyber-physical modeling to validate software by simulation with plant models. Validate System Specifications and descriptions early and often.
SysML and Modelica Integration using FMI\System of Systems March Current practice Simulation techniques Desyre (hosting tool) Co-simulationHosted simulation -Heterogeneous models -Distributable -Sync/coord overhead -Heterogeneous models -Not distributed -Model export required -High performance Requires proprietary solution!
SysML and Modelica Integration using FMI\System of Systems March State of the Art IBM Rhapsody approaches – Import Simulink block into SysML/Rhapsody – SysML and Simulink integration using S-function RT workshop SysML model Simulink model Simulink Simulink models Rhapsody plug-in SysML model Other vendors also provide similar proprietary solutions Roadblocks to Multi-Tool Integrated Simulation: Current approaches are bound to specific proprietary tools Each tool bring it strengths, all-in-one approach doesn’t fit cyber-physical SE We need a flexible open simulation framework Simulink Simulink models S-function generation
SysML and Modelica Integration using FMI\System of Systems March Functional Mock-up Interface (FMI) Approach Problems / Needs Component development by supplier Integration by OEM Many different simulation tools ? supplier1supplier2supplier3supplier4supplier5 OEM supplier1 tool 1 supplier2 supplier3 supplier4 supplier5 tool 2 tool 3 tool 4 tool 5 FMI OEM Solution Reuse of supplier models by OEM: DLL (model import) and/or Tool coupling (co-simulation) Protection of model IP of supplier ! supplier1 supplier2 supplier3 OEM Added Value Early validation of design Increased process efficiency and quality Blocwitz, Otter, et al, retrieved from:
SysML and Modelica Integration using FMI\System of Systems March FMI - Main Design Idea FMI for Model Exchange: Version 1.0 released in January 2010 FMI for Co-Simulation: – Reuses as much as possible from FMI for Model Exchange standard – Version 1.0 released in October 2010 Tool Solver FMU Model Tool FMU Model Solver Blocwitz, Otter, et al, retreived from:
SysML and Modelica Integration using FMI\System of Systems March XML schema (.xsd) defined by the FMI specification Blocwitz, Otter, et al, retreived from:
SysML and Modelica Integration using FMI\System of Systems March FMI Support in IBM Rhapsody Prototype of FMI plugin for IBM Rhapsody Features: – Export SysML block to FMI 1.0 model-exchange – Support both state-chart and activity diagrams behavior In progress: – Complex types (e.g., structures) – Dealing with events – Units SysML elementFMI element blockFMU atomic input flowportscalar input discrete variable atomic output flowportscalar output discrete variable > attributescalar parameter variable “not annotated” attributescalar Internal variable … constconstant attribute initial valuesstart value of scalar variable Code generation for SysML block XML Model description generation Code generation for FMI wrapper DLL compilation Archiving into FMU file FMI plugin steps
SysML and Modelica Integration using FMI\System of Systems March FMI Support in Wolfram SystemModeler Will be available in the next release: Support for export of Modelica models to FMI 1.0 for model-exchange. – Full support for all mandatory parts of the standard, including state events, time events, dynamic state selection, etc. Future work: Support for the upcoming FMI 2.0 standard. Import of FMI for model-exchange to use FMUs in Modelica models. Support for export to FMI for co-simulation.
SysML and Modelica Integration using FMI\System of Systems March SE Use Case 1.User 1 creates SysML model of overall system 2.User 2 creates UML models of software elements of vehicle and control station 3.User 3 creates modelica models for mechanical elements and control 4.FMUs created for behavioral models 5.Simulation Engineer cofigures Simulation using FMUs 6.Simulation Engineer performs Simulation verifying System behavior
SysML and Modelica Integration using FMI\System of Systems March Model Overview
SysML and Modelica Integration using FMI\System of Systems March
SysML and Modelica Integration using FMI\System of Systems March Conclusion 1.Test case performed on prototypes with significant modeling constraints 2.We succeeded in demonstrating multi-tool simulation using an Open Standard. 3.Open Standards: frees the user from "Tool Provider Politics" provides the user with flexibility of Modeling Tools and Simulation Platforms.
SysML and Modelica Integration using FMI\System of Systems March Thanks/ תודה