Welcome to the tutorial on the Functional Mock-up Interface (FMI) for Composite Modeling, Co-simulation, and Model Exchange. This session is designed as a comprehensive introduction to FMI and related standards such as SSP (System Structure and Parameterization) and DCP (Distributed Co-Simulation Protocol). We will also explore practical tools like OpenModelica and in particular OMSimulator to demonstrate real-world inspired applications of these standards.By the end of this tutorial, you will:- Understand the fundamentals of FMI, including Model Exchange (ME) and Co-Simulation (CS).
- Learn the key differences between FMI 2.0 and FMI 3.0 and the enhancements introduced in FMI 3.0.
- Gain practical experience with SSP for system structuring and DCP for distributed co-simulation.
- Be able to simulate single FMUs and composite models using OMSimulator.
- Explore optimization workflows leveraging OMSimulator's Python API.
Why FMI Matters
Modern engineering systems are increasingly complex, involving multiple disciplines and subsystems that need to interact seamlessly. FMI provides a tool-independent standardized way to exchange models and enable co-simulation across diverse tools and platforms. It allows:- Interoperability: Integration of components from different modeling environments.
- Modularity: Easy reuse of individual components.
- Scalability: Simulation of large-scale systems using distributed co-simulation.
- IP Protection: Black-box model exchange.
Standards and Tools
- A standard for model exchange and co-simulation.
- Supported by more than 200 simulation tools.
- A standard for structuring and parameterizing systems composed of multiple FMUs.
- Facilitates model configuration and reusability.
- A protocol to support distributed co-simulation and integration of hardware-in-the-loop (HIL) systems.
- A powerful tool for simulating FMUs, creating composite models, and automating workflows with a Python API.
- A modeling and simulation environment for creating FMUs and exploring advanced modeling capabilities.
Learning Outcomes
By actively participating in this tutorial, you will:- Develop a clear understanding of FMI and its practical applications.
- Learn to use OMSimulator and OpenModelica effectively in FMI workflows.
- Acquire skills to build, simulate, and optimize composite models.
- Explore advanced features like distributed co-simulation and FMI 3.0 capabilities.
note Note
We encourage you to actively engage with the examples and assignments provided. If you have any questions or face challenges during the tutorial, feel free to ask — we’re here to help.
Let’s get started!