Better code with less effort through “eFMI”, – the new model-exchange standard for embedded devices
When developing a new function, many engineers learn the hard way that their outstanding knowledge about the physics of their products is not enough by far to develop a function for an embedded target, due to the demanding requirements of safety-critical software, weak CPU magnitude and less memory than expected. While this might result in a never-to-be-realised excellent initial idea of operating and controlling their product in a much smarter way, at the same time it reveals the need for a link between digital simulation of physical processes and embedded software.
The aim of the EMPHYSIS project (Embedded Systems with Physical Models in the Production Code Software), led by Bosch, was to jointly come up with a new open standard that lays the foundation to develop new innovative tools. This that allows model-based functions to be realized directly in embedded software with better code and less effort. For this purpose, the project carried forward the idea of the very successful Functional Mock-up Interface (FMI) model exchange standard for simulation to develop FMI for embedded systems – the new “eFMI standard”. This enables a wide variety of advanced model-based approaches for control and diagnosis, such as solving a set of differential equations to compute a signal instead of measuring it via a sensor. By allowing a hardware sensor to be replaced with a piece of software, we significantly reduce the total cost.
"The EMPHYSIS project has achieved several outstanding results such as the automatic generation of efficient code for embedded devices. It shows the power of collaborative research projects to drive the adoption of a new standard and to generate significant productivity gains for the industry."
– Jean-François Lavignon, ITEA Vice-chairman
The technical deep dive and benefits
Technically speaking, eFMI is innovative in that it provides a target-independent intermediate format defined by an entirely new language, the Guarded Algorithmic Language for Embedded Control: GALEC. This new programming language is able to guarantee that an algorithm described in this language can be translated into code that has:
- static worst-case execution time;
- static a-priori known memory demand; and
- a statically proven absence of illegal memory access.
In other words: code that satisfies the hard requirements of automotive safety-critical embedded software, which also makes it applicable to many more, less restricted domains like robotics, industrial applications and consumer goods.
With eFMI and GALEC it is now possible to capture the computational essence of a model in a target-independent form that is a solid foundation for any code generator to produce highly optimised code for arbitrary runtime environments and software architectures. All this is cast into a traceable, extendable and verifiable container architecture that goes far beyond a simple exchange format.
The eFMI workflow allows developers to model a system on a higher level of abstraction, starting with a reusable, high-level, component-oriented and physically structured model. The tooling kit then automatically transforms this into a solution which can be better integrated into software.
The main benefits of this solution and the associated eFMI workflow are:
- accelerating development time;
- better use of domain experts by separating the concerns of physical modelling and embedded implementation;
- overcoming vendor lock-in through eFMI being published as an open standard on GitHub; and
- enabling new ways of OEM supplier collaborations.
Continuous success
An OEM Advisory Board has been established to gather additional requirements, input and use-cases and further disseminate the project’s results, helping to secure uptake and future innovations in new domains.
On 22 March 2021, right after the project’s end, the non-profit Modelica Association officially approved a new project under its umbrella to further develop, standardize and promote eFMI. With Robert Bosch GmbH, Dassault Systèmes, DLR Institute of System Dynamics and Control, dSPACE, ESI Group, ETAS GmbH and Modelon AB as initial members of the steering committee and Mercedes-Benz AG having joined recently, the first official release of eFMI 1.0 is targeted within 2021. Having developed 14 tools within EMPHYSIS, eFMI already has a broad foundation even before its official release.
"What makes us proud as a team is the fact that this success has been recognized not only by our business partners and the OEM Advisory Board representing the voice of the customer, but also by the ITEA organization."
– Oliver Lenord, Research Engineer at the Model-based Systems Engineering department at Robert Bosch
For society as a whole, EMPHYSIS’ better software translates into safer and more efficient vehicles which are able to keep pace with customer demands and help tackle climate issues in the longer term. For the time being, however, the project’s message is clear: by taking full advantage of an equation-based, component-oriented modelling language with a good library, 90% gains can be made in productivity of model-based function development.
Founded in 1973, ESI Group envisions a world where Industry commits to bold outcomes, addressing high stakes concerns – environmental impact, safety & comfort for consumers and workers, adaptable and sustainable business models. ESI provides reliable and customized solutions anchored on predictive physics modeling and virtual prototyping expertise to allow industries to make the right decisions at the right time, while managing their complexity. Acting principally in automotive & land transportation, aerospace, defense & naval, energy and heavy industry, ESI is present in more than 20 countries, employs 1200 people around the world and reported 2020 sales of €132.6 million. ESI is headquartered in France and is listed on compartment B of Euronext Paris.
For further information, go to www.esi-group.com.
Engineering System International GmbH
Siemensstr. 12
70565 Stuttgart
Telefon: +49 (6102) 2067-0
Telefax: +49 (6102) 2067-111
http://www.esi-group.com
E-Mail: marketing.germany@esi-group.com