Towards a Standard-Conform, Platform-Generic and Feature-Rich Modelica Device Drivers Library
Bernhard Thiele, Thomas Beutlich, Volker Waurich, Martin Sjölund, Tobias Bellmann · Linköping electronic conference proceedings · 2017
There are many cases where simulation applications need to interact with their environment.Typical examples are Human-in-the-Loop (HITL) simulators (including flight, driving, and marine training simulators), Hardware-inthe-Loop (HIL) simulators, but also offline process simulators which cannot operate in a completely self-contained manner and therefore need to be coupled to external applications.Embedded control applications are another related area requiring interaction between applications and their environment.The Modelica_DeviceDrivers library, which had its first release as open-source library in 2012, tries to cater to such use cases.This paper describes the library for the first time and reports about the numerous challenges that the project experienced to meet its goal of supporting several platforms and tools within a standardconform, platform-generic, feature-rich, and easy-to-use Modelica library.Furthermore, the paper gives an insight into the inner mechanics of the library's communication and serialization functionalities, the various supported hardware interfaces and the possibilities to generate code for embedded systems.