The typical FMI approach is described in the following stages:
The FMI specifications are distributed under open source licenses:
Each FMU (Functional Mock-up Unit) is distributed in a zip file with the extension ".fmu" which contains:2
Below is an example of an FMI model description issued from Modelica.
FMI is often compared to Simulink S-Functions since both technologies can be used to integrate third-party tools together. S-Functions are used to specify a computer language description of a dynamic system. They are compiled as MEX-files that are dynamically linked into MATLAB when needed. S-Functions use a calling syntax that interacts with Simulink’s equation solvers. This interaction is similar to the interaction that takes place between built-in Simulink blocks and the solvers.3
FMI proponents explain that FMI models have several advantages over Simulink S-Functions:4
System Structure and Parameterization (SSP)5 is a companion standard to FMI that defines a standardized, open file format to describe complex, hierarchical (technical) systems, that can be simulated. An SSP file contains definitions for system architecture, the interfaces of the system elements, and their connections and parameterization. The aim of SSP is to simplify the exchange and integration of system elements that are used in the distributed development of a system to be simulated using a wide variety of tools. 6
SSP is being developed as a project of the Modelica Association and is based on the FMI specification. FMI enables the exchange of individual simulation components, while SSP enables the exchange of complete simulation systems, their variants and parameterization. The simulation components of a simulation system described in SSP can also be independent of FMI and map to other implementations.
SSP is extensible to support specific requirements or domain-specific extensions: e.g. OSI, documentation of requirements, traceability or process steps, etc. SSP is open with regard to the component formats. Although it was based on FMI, it can also be used with components specifications of any other format.
In May 2014, the project group Smart Systems Engineering (SmartSE) of the ProSTEP iViP Association published its Recommendation PSI 11 for the cross-company behavior model exchange.7 FMI thereby is the technological basis. The PSI 11 specifies interaction scenarios, use cases, a reference process and templates, which thereby could ease the industrial application. End of 2016 the group published a movie, which should highlight the industrial benefits.8
"Functional Mockup Interface (FMI)". modelica.org. January 2010. Retrieved 2011-12-22. On Jan. 26, version 1.0 of the open Functional Mockup Interface was released (FMI for model exchange 1.0). This interface was developed in the ITEA2 MODELISAR project to support the model exchange between modelling and simulation tools. The Modelisar project is coordinated by Dassault Systèmes. The FMI development has been organized by Daimler. https://www.modelica.org/publications/newsletters/2010-1/index_html#item8 ↩
Stepan Ozana; Martin Pies. "Using Simulink S-Functions with Finite Difference Method Applied for Heat Exchangers" (PDF). Proceedings of the 13th WSEAS International Conference on SYSTEMS). Retrieved 2015-08-05. http://www.wseas.us/e-library/conferences/2009/rodos/SYSTEMS/SYSTEMS26.pdf ↩
Martin Otter; Hilding Elmqvist; Torsten Blochwitz; Jakob Mauss; Andreas Junghanns; Hans Olsson. "Functional Mockup Interface – Overview" (PDF). synchronics.inria.fr. INRIA. Archived from the original (PDF) on July 20, 2011. Retrieved 2011-01-23. https://web.archive.org/web/20110720233637/http://synchronics.inria.fr/lib/exe/fetch.php/modelica-fmi-elmqvist.pdf ↩
"SSP Standard Webpage". Modelica Association Project SSP. 2023. Retrieved 2023-05-11. https://ssp-standard.org/ ↩
Hällqvist, Robert; Munjulury, Raghu Chaitanya; Braun, Robert; Eek, Magnus; Krus, Petter (2021). "Engineering Domain Interoperability Using the System Structureand Parameterization (SSP) Standard". Proc. 14th Modelica Conference. doi:10.3384/ecp2118137. https://ecp.ep.liu.se/index.php/modelica/article/view/180/140 ↩
ProSTEP iViP Recommendation PSI 11, Smart Systems Engineering, Behavior Model Exchange, V 1.0, May 2014. http://www.prostep.org/en/medialibrary/publications/recommendations-standards.html#c1077 ↩
Benefits of utilizing FMI for realizing cross-company Systems Engineering, Status February 2017 https://www.youtube.com/watch?v=A-3iIot0fO8&t=52s ↩