System-level simulation

Last updated

System-level simulation (SLS) is a collection of practical methods used in the field of systems engineering, in order to simulate, with a computer, the global behavior of large cyber-physical systems.

Contents

Cyber-physical systems (CPS) are systems composed of physical entities regulated by computational elements (e.g. electronic controllers).

System-level simulation is mainly characterized by:

These two characteristics have several implications in terms of modeling choices (see further).

System-level simulation has some other characteristics, that it shares with CPS simulation in general:

SLS is mainly about computing the evolution over time of the physical quantities that characterize the system of interest, but other aspects can be added like failure modeling or requirement verification.

Motivations and benefit

The main motivation for SLS is the application of the holistic principle to computer simulation, which would state that simulating the system as a whole tells more than simulating parts of the system separately. Indeed, simulating the different parts of a complex system separately means neglecting all the possible effects of their mutual interactions. In many applications, these interactions cannot be ignored because of strong dependencies between the parts. For instance, many CPSs contain feedbacks that cannot be broken without modifying the system behavior. Feedbacks can be found in most modern industrial systems, which generally include one or more control systems. Another example of benefits from system level simulations is reflected in the high degree of accuracy (e.g. less than 1% cumulative validation error over 6 months of operation) of such simulations in the case of a solar thermal system. [2]

On the other hand, simply connecting existing simulation tools, each built specifically to simulate one of the system parts, is not possible for large systems since it would lead to unacceptable computation times. SLS aims at developing new tools and choosing relevant simplifications in order to be able to simulate the whole cyber-physical system.

SLS has many benefits compared to detailed co-simulation of the system sub-parts. The results of a simulation at the system level are not as accurate as those of simulations at a finer level of detail but, with adapted simplifications, it is possible to simulate at an early stage, even when the system is not fully specified yet. Early bugs or design flaws can then be detected more easily.

SLS is also useful as a common tool for cross-discipline experts, engineers and managers and can consequently enhance the cooperative efforts and communication. Improving the quality of exchanges reduces the risk of miscommunication or misconception between engineers and managers, which are known to be major sources of design errors in complex system engineering. [3]

More generally SLS must be contemplated for all applications whenever only the simulation of the whole system is meaningful, while the computation times are constrained. For instance, simulators for plant operators training must imitate the behavior of the whole plant while the simulated time must run faster than real time.

Modeling choices

Cyber-physical systems are hybrid systems, i.e. they exhibit a mix of discrete and continuous dynamics. The discrete dynamics mostly originates from digital sensing or computational sub-systems (e.g. controllers, computers, signal converters). The adopted models must consequently be capable of modeling such a hybrid behavior.

It is common in SLS to use 0D —sometimes 1D— equations to model physical phenomena with space variables, instead of 2D or 3D equations. The reason for such a choice is the size of the simulated systems, which is generally too large (i.e. too many elements and/or too large space extension) for the simulation to be computationally tractable. Another reason is that 3D models require the detailed geometry of each part to be modeled. This detailed knowledge might not be known to the modeler, especially if the modelling is done at an early step in the development process.

The complexity of large CPSs make them difficult to describe and visualize. A representation that can be arranged so that its structure looks like the structure of the original system is a great help in terms of legibility and ease of comprehension. Therefore, acausal modeling is generally preferred to causal block-diagram modeling. [4] Acausal modeling is also preferred because component models can be reused, contrary to models developed as block diagrams. [4]

Domains of application

System-level simulation is used in various domains like:

Usages

In an early stage of the development cycle, SLS can be used for dimensioning or to test different designs. For instance, in automotive applications, "engineers use simulation to refine the specification before building a physical test vehicle". [16] Engineers run simulations with this system-level model to verify performance against requirements and to optimize tunable parameters.

System-level simulation is used to test controllers connected to the simulated system instead of the real one. If the controller is a hardware controller like an ECU, the method is called hardware-in-the-loop. If the controller is run as a computer program on an ordinary PC, the method is called software-in-the-loop. Software-in-the-loop is faster to deploy and releases the constraint of real time imposed by the use of a hardware controller. [17]

SLS is used to build plant models that can be simulated fast enough to be integrated in an operator training simulator or in an MPC controller. [18] Systems with a faster dynamics can also be simulated, like a vehicle in a driving simulator. [19]

Another example of SLS use is to couple the system-level simulation to a CFD simulation. The system-level model provides the boundary conditions of the fluid domain in the CFD model. [20]

Methods and tools

Specific languages are used to model specification and requirement modeling, like SysML or FORM-L. [21] They are not meant to model the system physics but tools exist that can combine specification models and multi-physics models written in hybrid system modeling languages like Modelica. [22]

If a model is too complex or too large to be simulated in a reasonable time, mathematical techniques can be utilized to simplify the model. For instance, model order reduction gives an approximate model, which has a lower accuracy but can be computed in a shorter time. Reduced order models can be obtained from finite element models, [23] and have been successfully used for system-level simulation of MEMS. [24]

SLS can benefit from parallel computing architectures. For instance, existing algorithms to generate code from high-level modeling languages can be adapted to multi-core processors like GPUs. [25] Parallel co-simulation is another approach to enable numerical integration speed-ups. [26] In this approach, the global system is partitioned into sub-systems. The subsystems are integrated independently of each other and are synchronized at discrete synchronization points. Data exchange between subsystems occurs only at the synchronization points. This results in a loose coupling between the sub-systems.

Optimization can be used to identify unknown system parameters, i.e. to calibrate CPS model, matching the performance to actual system operation. [27] In cases when exact physical equations governing the processes are unknown, approximate empirical equations can be derived, e.g. using multiple linear regression. [28]

Possible future evolutions

If the simulation can be deployed on a supercomputing architecture, many of the modeling choices that are commonly adopted today (see above) might become obsolete. For instance, the future supercomputers might be able to "move beyond the loosely coupled, forward-simulation paradigm". [29] In particular, "exascale computing will enable a more holistic treatment of complex problems". [29] To exploit exascale computers, it will however be necessary to rethink the design of today's simulation algorithms.

For embedded system applications, safety considerations will probably lead the evolution of SLS. For instance, unlike synchronous languages, the modeling languages currently used for SLS (see above) are not predictable and may exhibit unexpected behaviors. It is then not possible to use them in a safety-critical context. The languages should be rigorously formalized first. [30] Some recent languages combine the syntax of synchronous languages for programming discrete components with the syntax of equation-based languages for writing ODEs. [31]

Related Research Articles

<span class="mw-page-title-main">Simulation</span> Imitation of the operation of a real-world process or system over time

A simulation is an imitative representation of a process or system that could exist in the real world. In this broad sense, simulation can often be used interchangeably with model. Sometimes a clear distinction between the two terms is made, in which simulations require the use of models; the model represents the key characteristics or behaviors of the selected system or process, whereas the simulation represents the evolution of the model over time. Another way to distinguish between the terms is to define simulation as experimentation with the help of a model. This definition includes time-independent simulations. Often, computers are used to execute the simulation.

Vehicle dynamics is the study of vehicle motion, e.g., how a vehicle's forward movement changes in response to driver inputs, propulsion system outputs, ambient conditions, air/surface/water conditions, etc. Vehicle dynamics is a part of engineering primarily based on classical mechanics. It may be applied for motorized vehicles, bicycles and motorcycles, aircraft, and watercraft.

<span class="mw-page-title-main">Computer simulation</span> Process of mathematical modelling, performed on a computer

Computer simulation is the process of mathematical modelling, performed on a computer, which is designed to predict the behaviour of, or the outcome of, a real-world or physical system. The reliability of some mathematical models can be determined by comparing their results to the real-world outcomes they aim to predict. Computer simulations have become a useful tool for the mathematical modeling of many natural systems in physics, astrophysics, climatology, chemistry, biology and manufacturing, as well as human systems in economics, psychology, social science, health care and engineering. Simulation of a system is represented as the running of the system's model. It can be used to explore and gain new insights into new technology and to estimate the performance of systems too complex for analytical solutions.

<span class="mw-page-title-main">Modelica</span> Computer Language for System Modeling

Modelica is an object-oriented, declarative, multi-domain modeling language for component-oriented modeling of complex systems, e.g., systems containing mechanical, electrical, electronic, hydraulic, thermal, control, electric power or process-oriented subcomponents. The free Modelica language is developed by the non-profit Modelica Association. The Modelica Association also develops the free Modelica Standard Library that contains about 1400 generic model components and 1200 functions in various domains, as of version 4.0.0.

<span class="mw-page-title-main">Multiphysics simulation</span>

In computational modelling, multiphysics simulation is defined as the simultaneous simulation of different aspects of a physical system or systems and the interactions among them. For example, simultaneous simulation of the physical stress on an object, the temperature distribution of the object and the thermal expansion which leads to the variation of the stress and temperature distributions would be considered a multiphysics simulation. Multiphysics simulation is related to multiscale simulation, which is the simultaneous simulation of a single process on either multiple time or distance scales.

ASCEND is an open source, mathematical modelling chemical process modelling system developed at Carnegie Mellon University since late 1978. ASCEND is an acronym which stands for Advanced System for Computations in Engineering Design. Its main uses have been in the field of chemical process modelling although its capabilities are general.

Dynamic simulation is the use of a computer program to model the time-varying behavior of a dynamical system. The systems are typically described by ordinary differential equations or partial differential equations. A simulation run solves the state-equation system to find the behavior of the state variables over a specified period of time. The equation is solved through numerical integration methods to produce the transient behavior of the state variables. Simulation of dynamic systems predicts the values of model-system state variables, as they are determined by the past state values. This relationship is found by creating a model of the system.

<span class="mw-page-title-main">EcosimPro</span> Simulation software

EcosimPro is a simulation tool developed by Empresarios Agrupados A.I.E for modelling simple and complex physical processes that can be expressed in terms of Differential algebraic equations or Ordinary differential equations and Discrete event simulation.

Model-based design (MBD) is a mathematical and visual method of addressing problems associated with designing complex control, signal processing and communication systems. It is used in many motion control, industrial equipment, aerospace, and automotive applications. Model-based design is a methodology applied in designing embedded software.

<span class="mw-page-title-main">Dymola</span>

Dymola is a commercial modeling and simulation environment based on the open Modelica modeling language.

<span class="mw-page-title-main">MapleSim</span>

MapleSim is a Modelica-based, multi-domain modeling and simulation tool developed by Maplesoft. MapleSim generates model equations, runs simulations, and performs analyses using the symbolic and numeric mathematical engine of Maple. Models are created by dragging-and-dropping components from a library into a central workspace, resulting in a model that represents the physical system in a graphical form. Maplesoft began development of MapleSim partly in response to a request from Toyota to produce physical modeling tools to aid in their new model-based development process.

<span class="mw-page-title-main">SimulationX</span> Software application

SimulationX is a CAE software application running on Microsoft Windows for the physical simulation of technical systems. It is developed and sold by ESI Group.

The Functional Mock-up Interface defines a standardized interface to be used in computer simulations to develop complex cyber-physical systems.

<span class="mw-page-title-main">20-sim</span>

20-sim is a commercial modeling and simulation program for multi-domain dynamic systems, which is developed by Controllab. With 20-sim, models can be entered as equations, block diagrams, bond graphs and physical components. 20-sim is widely used for modeling complex multi-domain systems and for the development of control systems.

JModelica.org is a commercial software platform based on the Modelica modeling language for modeling, simulating, optimizing and analyzing complex dynamic systems. The platform is maintained and developed by Modelon AB in collaboration with academic and industrial institutions, notably Lund University and the Lund Center for Control of Complex Systems (LCCC). The platform has been used in industrial projects with applications in robotics, vehicle systems, energy systems, CO2 separation and polyethylene production.

Wolfram System Modeler, developed by Wolfram MathCore, is a platform for engineering as well as life-science modeling and simulation based on the Modelica language. It provides an interactive graphical modeling and simulation environment and a customizable set of component libraries.

Simcenter Amesim is a commercial simulation software for the modeling and analysis of multi-domain systems. It is part of systems engineering domain and falls into the mechatronic engineering field.

<span class="mw-page-title-main">Building performance simulation</span> Replication of aspects of building performance

Building performance simulation (BPS) is the replication of aspects of building performance using a computer-based, mathematical model created on the basis of fundamental physical principles and sound engineering practice. The objective of building performance simulation is the quantification of aspects of building performance which are relevant to the design, construction, operation and control of buildings. Building performance simulation has various sub-domains; most prominent are thermal simulation, lighting simulation, acoustical simulation and air flow simulation. Most building performance simulation is based on the use of bespoke simulation software. Building performance simulation itself is a field within the wider realm of scientific computing.

OpenModelica is a free and open source environment based on the Modelica modeling language for modeling, simulating, optimizing and analyzing complex dynamic systems. This software is actively developed by Open Source Modelica Consortium, a non-profit, non-governmental organization. The Open Source Modelica Consortium is run as a project of RISE SICS East AB in collaboration with Linköping University.

References

  1. "NASA - System-Level Simulation". www.nasa.gov. Retrieved 2015-11-17.
  2. Fontanella, Giuliano; Basciotti, Daniele; Dubisch, Florian; Judex, Florian; Preisler, Anita; Hettfleisch, Christian; Vukovic, Vladimir; Selke, Tim (2012). "Calibration and validation of a solar thermal system model in Modelica". Building Simulation. 5 (3): 293–300. doi:10.1007/s12273-012-0070-y. S2CID   110823846.
  3. Thuy, Nguyen (October 2015). "The Benefits and Challenges of Massive Behavioural Simulation in the Engineering of Complex and Critical Cyber-Physical & Human Systems". 3rd International Workshop on Simulation at the System Level (Sim@SL). Retrieved November 17, 2015.
  4. 1 2 Tiller, Michael (2001-01-01). "Block Diagrams vs. Acausal Modeling". Introduction to Physical Modeling with Modelica. The Springer International Series in Engineering and Computer Science. Springer US. pp. 255–264. doi:10.1007/978-1-4615-1561-6_11. ISBN   978-1-4613-5615-8.
  5. "System-Level Monitoring and Diagnosis of Building HVAC System". eScholarship. Retrieved 2015-11-17.
  6. Bouvy, Claude; Baltzer, Sidney; Jeck, Peter; Gissing, Jörg; Lichius, Thomas; Eckstein, Lutz (2012). Holistic vehicle simulation using Modelica - An application on thermal management and operation strategy for electrified vehicles. Proceedings of the 9th International MODELICA Conference, September 3–5, 2012, Munich, Germany. Vol. 76. pp. 264–270. doi:10.3384/ecp12076263. ISBN   978-91-7519-826-2.
  7. Butler, K.L.; Ehsani, M.; Kamath, P. (1999-11-01). "A Matlab-based modeling and simulation package for electric and hybrid electric vehicle design". IEEE Transactions on Vehicular Technology. 48 (6): 1770–1778. CiteSeerX   10.1.1.476.2182 . doi:10.1109/25.806769. ISSN   0018-9545.
  8. Braig, Thomas; Ungethüm, Jörg (2009). "System-Level Modeling of an ICE-powered Vehicle with Thermoelectric Waste-Heat-Utilization". Proceedings of the 7 International Modelica Conference Como, Italy. Vol. 43. pp. 708–715. doi:10.3384/ecp09430044. ISBN   9789173935135.
  9. Flueckiger, Scott M.; Iverson, Brian D.; Garimella, Suresh V.; Pacheco, James E. (2014-01-01). "System-level simulation of a solar power tower plant with thermocline thermal energy storage". Applied Energy. 113: 86–96. doi:10.1016/j.apenergy.2013.07.004.
  10. Casella, Francesco; Pretolani, Francesco (September 2006). "Fast Start-up of a Combined-Cycle Power Plant: a Simulation Study with Modelica" (PDF). Proceedings Modelica 2006. Retrieved November 17, 2015.
  11. Song, Zhaohui; Sun, Teng; Wu, Jian; Che, Lufeng (2014-09-16). "System-level simulation and implementation for a high Q capacitive accelerometer with PD feedback compensation". Microsystem Technologies. 21 (10): 2233–2240. doi:10.1007/s00542-014-2315-4. ISSN   0946-7076. S2CID   110407621.
  12. Fang, Ruixian; Jiang, Wei; Khan, J.; Dougal, R. (2009-04-01). "System-level thermal modeling and co-simulation with hybrid power system for future all electric ship". 2009 IEEE Electric Ship Technologies Symposium. pp. 547–553. doi:10.1109/ESTS.2009.4906565. ISBN   978-1-4244-3438-1. S2CID   5860684.
  13. Thomas, Eric; Ravachol, Michel; Quincy, Jean Baptiste; Malmheden, Martin (2012). Collaborative complex system design applied to an aircraft system. Proceedings of the 9th International MODELICA Conference, September 3–5, 2012, Munich, Germany. Vol. 76. pp. 855–866. doi:10.3384/ecp12076855. ISBN   978-91-7519-826-2.
  14. Kittilsen, Pål; Hauger, Svein Olav; Wasbø, Stein O. (2012). Designing models for online use with Modelica and FMI. Proceedings of the 9th International MODELICA Conference, September 3–5, 2012, Munich, Germany. Vol. 76. pp. 197–204. doi:10.3384/ecp12076197. ISBN   978-91-7519-826-2.
  15. Costes, Joris; Ghidaglia, Jean-Michel; Muguerra, Philippe; Nielsen, Keld Lund; Riou, Xavier; Saut, Jean-Philippe; Vayatis, Nicolas (2014). On the Simulation of Offshore Oil Facilities at the System Level. Proceedings of the 10th International Modelica Conference, March 10–12, 2014, Lund, Sweden. Vol. 96. pp. 799–808. doi:10.3384/ecp14096799. ISBN   978-91-7519-380-9.
  16. "Optimizing Vehicle Suspension Design Through System-Level Simulation". www.mathworks.com. Retrieved 2015-11-17.
  17. "Software in the Loop Simulation". QTronic.
  18. Larsson, P.-O.; Casella, F.; Magnusson, F.; Andersson, J.; Diehl, M.; Akesson, J. (2013-08-01). "A framework for nonlinear model-predictive control using object-oriented modeling with a case study in power plant start-up". 2013 IEEE Conference on Computer Aided Control System Design (CACSD) (PDF). pp. 346–351. doi:10.1109/CACSD.2013.6663487. ISBN   978-1-4799-1565-1. S2CID   17466757.
  19. "MapleSim used in the creation of breakthrough vehicle driving simulator technology - User Case Studies - Maplesoft". www.maplesoft.com. Retrieved 2015-11-17.
  20. Viel, Antoine (March 2011). "Strong Coupling of Modelica System-Level Models with Detailed CFD Models for Transient Simulation of Hydraulic Components" (PDF). Proceedings 8th Modelica Conference. doi: 10.3384/ecp11063256 . Retrieved November 17, 2015.
  21. Otter, Martin; Thuy, Nguyen; Bouskela, Daniel; Buffoni, Lena; Elmqvist, Hilding; Fritzson, Peter; Garro, Alfredo; Jardin, Audrey; Olsson, Hans; Tundis, Andrea (2015). Formal Requirements Modeling for Simulation-Based Verification. Proceedings of the 11th International Modelica Conference, Versailles, France, September 21–23, 2015. Vol. 118. pp. 625–635. doi:10.3384/ecp15118625. ISBN   978-91-7685-955-1.
  22. Schamai, Wladimir; Fritzson, Peter; Paredis, Chris; Pop, Adrian (2009). "Towards Unified System Modeling and Simulation with ModelicaML: Modeling of Executable Behavior Using Graphical Notations". Proceedings of the 7 International Modelica Conference Como, Italy. Vol. 43. pp. 612–621. CiteSeerX   10.1.1.364.1268 . doi:10.3384/ecp09430081. ISBN   9789173935135.
  23. Rudnyi, Evgenii B. (June 2009). "From Finite Elements to System Level Simulation by means of Model Reduction" (PDF). Automation 2009, 6. Und 17. Juni 2009, Kongresshaus Baden-Baden, VDI Bericht. Retrieved November 17, 2015.
  24. "Wiley: System-level Modeling of MEMS, Volume 10 - Gabriele Schrag, Oliver Brand, Gary K. Fedder, et al". eu.wiley.com. Retrieved 2015-11-17.
  25. Stavåker, Kristian (2011). "Contributions to Parallel Simulation of Equation-Based Models on Graphics Processing Units" (PDF). Licentiate Thesis No 1507, Department of Computer and Information Science, Linköping University. Retrieved November 17, 2015.
  26. Ben Khaled, Abir; Ben Gaid, Mongi; Pernet, Nicolas; Simon, Daniel (2014-09-01). "Fast multi-core co-simulation of Cyber-Physical Systems: Application to internal combustion engines". Simulation Modelling Practice and Theory. 47: 79–91. CiteSeerX   10.1.1.635.1427 . doi:10.1016/j.simpat.2014.05.002. S2CID   16514955.
  27. Ali, Muzaffar; Vukovic, Vladimir; Sahir, Mukhtar Hussain; Basciotti, Daniele (2013). "Development and validation of a desiccant wheel model calibrated under transient operating conditions". Applied Thermal Engineering. 61 (2): 469–480. doi:10.1016/j.applthermaleng.2013.08.010.
  28. Ali, Muzaffar; Vukovic, Vladimir; Sheikh, Nadeem Ahmed; Ali, Hafiz M.; Sahir, Mukhtar Hussain (2015). "Enhancement and integration of desiccant evaporative cooling system model calibrated and validated under transient operating conditions". Applied Thermal Engineering. 75: 1093–1105. doi:10.1016/j.applthermaleng.2014.10.064.
  29. 1 2 Dongarra, J.; Hittinger, J.; Bell, J.; Chacon, L.; Falgout, R.; Heroux, M.; Hovland, P.; Ng, E.; Webster, C. (2014-02-07). "Applied Mathematics Research for Exascale Computing". Livermore, CA. doi:10.2172/1149042. OSTI   1149042. S2CID   59544475.{{cite journal}}: Cite journal requires |journal= (help)
  30. Satabin, Lucas; Colaço, Jean-Louis; Andrieu, Olivier; Pagano, Bruno (2015). Towards a Formalized Modelica Subset. Proceedings of the 11th International Modelica Conference, Versailles, France, September 21–23, 2015. Vol. 118. pp. 637–646. doi:10.3384/ecp15118637. ISBN   978-91-7685-955-1. S2CID   55207973.
  31. Bourke, Timothy; Pouzet, Marc (April 2013). "Zélus: A Synchronous Language with ODEs". Proceedings of the 16th International Conference on Hybrid Systems: Computation and Control: 113–118. Retrieved November 17, 2015.