Continuous Time Modelling

Modelling and simulation of dynamic physical systems have evolved dramatically in the recent years. New languages and tools that support simulation of physical systems have become widely available.

In general, continuous-time modelling is based on differential equations in the ODE (ordinary differential equation) or DAE (differential algebraic equations) form.

For physical modelling, a typical procedure is to divide the system into subsystems connected by interfaces with specific behaviour. The subsystems can be modelled by balances of mass, energy and momentum and material equations. The complete system model can then be composed by combining the subsystems and the interfaces.

When a model can be seen as a constraint between system variables, it usually leads to DAE descriptions. Such an approach is very convenient for building reusable model libraries that can be composed together into larger systems.

In the context of INTO-CPS, two continuous-time modelling and simulation tools have been considered: OpenModelica and 20-sim. However any continuous-time modelling tool that can generate FMUs (Functional Mockup Units) can be used with the INTO-CPS toolchain to perform Co-simulation.

Figure 1. OpenModelica simulating an Engine with 6 cylinders

OpenModelica is an open-source Modelica-based modelling and simulation environment intended for industrial and academic usage. Modelica is a non-proprietary, object-oriented, equation based language to conveniently model complex physical systems containing e.g. mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. A large collection of Modelica free and commercial libraries from different physical domains is available and new ones are being developed.

Figure 2. 20-sim with a robot model loaded

20-sim is a modelling and simulation program for mechatronic systems and control engineering on the Windows operating system. With 20-sim, multidomain dynamic models can be analysed in the time and frequency domain for modelling and control purposes. For rapid prototyping and HIL-simulation purposes, C-code generation support is available using C-code templates for various C-code objectives. With respect to simulation, 20-sim supports continuous time simulations, discrete time simulations and hybrid simulations.