Modelica is a computer language that is traditionally used to model the physical part of systems that are to be controlled, and thereby simplifies this task significantly. It conveniently describes physical systems in a standardised (non-proprietary), free format, including the physical equations, and visualises the physical components in the form of schematic diagrams. The components are structured and defined according to the underlying physics so that a mechanical shaft, for example, is modelled in Modelica as a component with two mechanical flanges. The whole definition is, as usual for computer languages, in textual form and basically stored on ASCII files.
The power of Modelica can be found in the system simulation of complex physical models
The power of Modelica can be found in the system simulation of complex physical models, such as a full vehicle model, including 3D mechanics, drive train with automatic gearbox, the electrical and air conditioning systems. The underlying mathematical descriptions are differential, algebraic and discrete equations. With the addition of dedicated features for the implementation of sample-data systems, including state machines, in the most recent major Modelica release of 2012, Modelica is now particularly suited to modelling cyber-physical systems.
But there is more to Modelica than the language. The Modelica Association, a non-profit organisation with individual and organisational members from Europe and North-America, and a few from Japan, is driven by end-users that want to improve cyber-physical system modelling for complex industrial applications and by tool-vendors that want to improve the language for their customers. The Modelica Association and its partners organise conferences and the income from these and from member fees enables Modelica-specific open source projects to be financed (for example, for a Modelica Language Compliance Test Suite to check tools for specification compliance). Furthermore, the Modelica Assocation is also developing a large open source library of physical components, called Modelica Standard Library (MSL), whose current version contains about 1300 model components, such as an electrical resistor, a 3D rigid body and a pump. The very liberal licence allows these models, or modified versions of them, to be used in commercial applications without essential restrictions. The MSL is important for both end-users and tool vendors: end-users can cover part of their applications with free components from MSL and thus start at a high level with little effort while vendors use MSL as a kind of a major benchmark to evaluate their tools. However, to conveniently create a Modelica model, simulate it and perform other operations like design optimisation, an appropriate tool is needed. This does require This does require a lot of effort and significant resources, and this is also why the Modelica Association does not itself develop a Modelica tool. Instead end users can select from several commercial and open source Modelica tools (see https://www.modelica.org/tools).
Modelica Association chairman, Martin Otter, explains his reasons for becoming involved in Modelica in the first place. "One of my motivations is the use of Modelica at DLR, the national aeronautics and space research centre of Germany, and here in particular the Institute of System Dynamics and Control (DLR-SR) (http://www.dlr.de/rmc/sr/en) where application-oriented research is performed into system dynamics and control technologies for high-performance mechatronic systems in aerospace, robotics and ground vehicle applications. We already recognised 20 years ago that the traditional, signal-oriented input/output block description of control systems makes it hard to handle complex systems in industry. Therefore, I and my colleagues contributed, and still contribute, to 'device-oriented' modelling with Modelica." From the beginning, DLR-SR used Modelica models directly in controllers, which has the considerable benefit that non-linear models of the systems can be used in the controllers with acceptable effort, and the controllers are then potentially able to cover large operating regions.
There have been a few major factors that have contributed to the success of
(a) the technical innovation from Dynasim,
(b) Dassault Systèmes entering the arena, and
(c) several large ITEA projects.
In the years 1996 - 2006, Modelica was developed and driven by a small community of people from universities, research institutes, small tool vendors and some industrial companies that believed in the Modelica technology. In 2006, the Swedish Modelica tool vendor Dynasim was acquired by Dassault Systèmes, and this entry of a large software vendor in the Modelica market suddenly changed the picture completely. More tool vendors and industrial companies became interested in the Modelica technology; most of the small Modelica tool vendors have since been acquired by large companies, such as Imagine (France) by LMS International in 2007, Maplesoft (Canada) by Cybernet in 2009, MathCore (Sweden) by Wolfram Research in 2011, deltatheta (U.K.) by CyDesign in 2012, and LMS by Siemens and CyDesign by ESI Group, both in 2014.
After the acquisition of Dynasim, one of the first things that Dassault Systèmes did was to co-organise with DLR-SR the ITEA EUROSYSLIB project (2007 - 2010, budget: € 16 million). Never before had such a huge amount of resources been put into the development of Modelica technology. This gave Modelica a huge boost, not only on the tool level but even more on the level of enhancing the open source Modelica Standard Library as well as commercial Modelica libraries. Afterwards, other ITEA projects followed.
"Although Modelica is a great technology," Martin Otter explains, "there is a key issue. In every modelling domain there are specialised simulation environments, such as multi-body programmes like ADAMS or SIMPACK, or electric circuit programmes like Saber or Simplorer, that have been heavily used in industry for a long time. So a company needs very good reasons to change such established tools. On the other hand, there is considerable pressure on OEMs to perform simulations of their overall systems (and Modelica would be perfectly suited for this task) but suppliers use a wide variety of different, established tools. The MODELISAR project changed the game."
Co-organised by Dassault Systèmes and Daimler (with DLR-SR as technical advisor), the goal of this ITEA 2 project was to develop an open, low-level interface standard, known as Functional Mock-up Interface (FMI), to enable models from different simulation environments to be used conveniently in other environments. The MODELISAR project developed the FMI interface (based on XML interface descriptions and DLLs/Shared libraries with C-interfaces), provided prototype implementations in some ten tools, and evaluated FMI and some of the prototypes extensively in industrial use cases from Daimler and other companies. MODELISAR project leader, Patrick Chombart, of Dassault Systèmes, refers to "a strong vision, and the high professional commitment of the partners" that allowed the FMI fundamentals "to emerge and be proven; a long-term organisation is now bringing the newborn standard to maturity."
"The technical progress and economic success of Modelica and FMI would not have been possible without ITEA."
Martin Otter - Modelica Association
When the MODELISAR project ended in 2011, there was the question how to continue the successful FMI development in the future. Since the Modelica Association saw the FMI standard as very essential orthogonal technology to Modelica, the Modelica Association changed its mode of operation, and especially its statutes, for the future development of not only Modelica but also other standards in the modelling/simulation technology. As a result, such standards are now developed in Modelica Association Projects (https://www.modelica.org/projects), one of which is FMI. A separate dedicated website is used for the FMI standard (www.fmi-standard.org) to make it clear that FMI is not a Modelica add-on but a language- and tool-neutral standard. As of June 2015, there are 66 software tools supporting FMI, demonstrating the great success of the MODELISAR project.
All Modelica tools now support FMI both for export and import and therefore it is possible to export Modelica models to nearly every other simulation environment. This is a win-win situation for the Modelica community, domain-specific tool vendors, OEMs and their suppliers. OEMs can use different tools as an integration platform of model components and are able to run overall simulations with software components from their suppliers while domain-specific tools can suddenly import a large variety of model components from areas outside of their core-domain, and in particular Modelica models.
OPENPROD aimed to significantly improve open source Modelica tool chains based on OpenModelica and evaluate them in industrial applications. Peter Fritzson of the University of Linköping, one of the founding fathers of the Modelica language and currently leading the OpenModelica open source effort, says that OpenModelica "has now become as good as (sometimes better than) several proprietary tools. It can now simulate 98% of the standard library examples. However, the leading proprietary tool Dymola is still a bit ahead, but the difference is becoming smaller. Moreover, OpenModelica is the only Modelica tool with an equation model debugger; which puts it ahead of all the proprietary tools."
Siemens Industrial Turbomachinery from Sweden with over 10 years of experience of Modelica applications organised the ITEA project together with the University of Linköping. Sune Horkeby, OPENPROD's project coordinator: "At Siemens we successfully use Modelica for development, design and testing of turbines and power plants. Our Modelica models are an important contribution to development projects when it comes to optimising start-up processes, meeting new market demands e.g. new EU codes for the electrical grid and product testing. The models can estimate and predict system behaviour early in the project phases and replace expensive and time consuming physical testing. The models help meet the market demands of new sustainable life cycle optimised products. We have very successful selling products in the market e.g. the gas turbine SGT800, and our simulation environment is of course a very important and critical part of this success".
The ITEA projects OPENPROD (which was especially open source oriented) and now also MODRIO have been very important for the OpenModelica open source development
In terms of the open source community, there are currently about 1600 downloads per month and the business impact is increasing all the time. Fritzson: "For example the tool vendors Wolfram MathCore, DHI, Ricardo Inc., are including parts of or all of OpenModelica in their distributed products. Several companies, like Bosch-Rexroth, Siemens, SKF and Saab, are using and testing OpenModelica for in-house purposes. The ITEA projects OPENPROD (which was especially open source oriented) and now also MODRIO have been very important for the OpenModelica open source development."