A set of hand-coded FMUs for development, testing and debugging of the Functional Mock-up Interface.
- BouncingBall - a bouncing ball model with state events
- Dahlquist - Dahlquist test equation
- Feedthrough - all variable types
- Resource - load data from a file
- Stair - a counter with time events
- VanDerPol - Van der Pol test equation
<model>
config.h- model specific types and definitionsFMI{1CS|1ME|2|3}.xml- model descriptionsmodel.c- implementation of the model
include
fmi{|2|3}Functions.h- FMI header filesmodel.h- generic model interfaceslave.h- generic co-simulation interface
src
fmi{1|2|3}Functions.c- FMI implementationsslave.c- generic co-simulation
To build the FMUs you need CMake and a supported build tool e.g. Visual Studio, Xcode or make:
-
download or clone the repository
-
open the CMakeGUI
-
click
Browse Source...and select the cloned or downloaded and extracted repository (that containsCMakeLists.txt) -
click
Browse Build...and select the folder where you want build the FMUs -
click
Configureand select the generator for your IDE / build tool -
select the
FMI_VERSIONyou want to build and optionally theFMI_TYPE(only for FMI 1.0) -
click
Generateto generate the project files -
click
Open Projector open the project in your build tool -
build the project
The FMUs will be in the dist folder inside the selected build folder.
Copyright © 2020 Modelica Association Project "FMI". All rights reserved. The code is released under the 2-Clause BSD License.
The Reference FMUs are a fork of the Test FMUs by Dassault Systèmes, which are a fork of the FMU SDK by QTronic, both released under the 2-Clause BSD License.