ProMECoS: A Process Model for Efficient Standard-Driven Distributed Co-Simulation
Abstract
:1. Introduction
1.1. Motivation and Incitement
1.2. Literature Review
1.3. Contribution
- Simulation standards benefit from a process description, facilitating their application in industry. This was the case for HLA, where a process description is provided by DSEEP.
- Although the DCP is a lightweight standard, it defines numerous artifacts that must be considered, e.g., the DCP slave description, or a slave configuration.
- Currently, no unified process description related to the application of DCP 1.0 exists, although this would be beneficial for industrial MiL, SiL, and HiL applications, as well as in MSaaS-schemes.
- defines the necessary tasks required to prepare and execute distributed co-simulations,
- defines the necessary engineering artifacts that need to be created or exchanged,
- arranges the tasks and artifacts in an ordered sequence, and
- enables aforementioned exploitation of front-loading benefits, thus reducing the overall development effort.
2. Process Model for Efficient Distributed Co-Simulation (ProMECoS)
2.1. Scope
2.2. Mapping of Tasks
2.3. Process Artifacts
2.3.1. Integration Methodology and Roles
2.3.2. Generation and Description of DCP Slaves
2.3.3. Information-Based Integration of Slaves and Scenario Description
2.3.4. Computation of Scenario Configurations
2.3.5. Use of a Master and Co-Simulation Execution
2.4. Task Descriptions
2.4.1. Concept
2.4.2. Underlying Architecture
- enable DCP-based access to legacy devices that do not implement the DCP by themselves,
- allow connections of real components and systems with simulations,
- act as a gateway or router between different networks.
2.4.3. Scenario
- If a slave requires heartbeat monitoring to function properly, the master needs to be able to handle the affected PDUs accordingly.
- If a slave requires roll out of a configuration, it must be able to prepare and send configuration PDUs.
- If an initialization mechanism was developed earlier, the master must be able to trigger the appropriate states for calculation and data exchange during initialization superstate.
- If the scenario includes indirect slave-to-slave communication, the master must be able to send and receive data PDUs.
- If slaves are able to process reset PDUs, the master may trigger multiple simulation runs in a row without the need for reconfiguration.
2.4.4. Implementation
2.4.5. Instantiation
2.4.6. Execution
3. Application of ProMECoS
3.1. Use Case
- Existing models can be reused. This holds true for FMUs, which can be seamlessly embedded into DCP slaves.
- MiL simulation is performed in NRT mode, but can be switched to SRT mode before integrating real hardware.
- A model can be replaced with its real counterpart system, sharing the same inputs, outputs, and parameters.
- The engine model has inputs for the accelerator pedal and rotating shaft speed. It communicates the required torque demand to the vehicle model.
- The vehicle model has inputs for the torque demand and desired vehicle velocity. Based on the current load, it communicates the accelerator pedal position and rotating shaft speed to the engine model. The vehicle model includes a driver model.
- The drive cycle model communicates the required vehicle velocity to the driver inside the vehicle model.
3.2. Analysis
- The conceptual model identified the required slaves, where one of them (the engine model) was available from a previous model-in-the-loop simulation as a FMU. In course of the process, it was encapsulated in a DCP slave.
- The roles of providers and the integrator were assigned to respective persons and companies.
- The underlying communication architecture is based on an Ethernet network. The UDP transport protocol was used for this distributed co-simulation. The operating mode was set to NRT, to prepare the scenario for future connection to a real automotive test bench operated in SRT mode. The conceptual model was used to generate the scenario description file.
- Based on the scenario description file, a configuration was generated. Due to the manageable amount of of interconnections between slaves, each variable was manually assigned to a separate data_id or UDP packet. During scenario execution, it was rolled out by the master to the three slaves.
- The master was tailor-made for the scenario at hand using DCPLib. The instantiation and execution was performed on two networked computers in our lab.
4. Conclusions
- The integration of ProMECoS and the DCP standard into architecture models (RAMA, AUTOSAR, etc.) requires further research.
- In the future, the DCP scenario description might be replaced by standardized system structure and parameterization [43] (SSP) XML files.
- ProMECoS does not cover step 1 (definition of objectives) and 7 (analysis of results) of IEEE 1730, as these activities are out of scope of the DCP specification. Nevertheless the formulation of objectives and analysis of results represent highly relevant topics for distributed co-simulation in context processes and standards, and are therefore subject to further research.
- Within steps 2–6, the DCP specification targets the specification and design of a slave only. The features and capabilities of the required master are not defined by the DCP specification. A master, which is mandatory, can be of high complexity, e.g., when different operating modes like NRT and SRT are mixed in one scenario. Scenarios like this represent an interesting field for future work, as such master algorithms will be needed in, e.g., HiL settings.
- Furthermore, ProMECoS assumes co-simulation scenarios with slaves in lock step operation. This means that all slaves are registered, configured, initialized, synchronized, used for simulation, and shut down at the same time, disregarding delays and other effects contributing to non-determinism. Not operating slaves in lock step implies severe consequences, like the definition of synchronization points for dynamic addition or removal of slaves during simulation. This is expected to be required in the future, especially in context of IoT (internet-of-things, see [26]), digital twins and virtual validation. This is an open issue not only in ProMECoS, but in the specification of the DCP standard, and is therefore subject to further research.
- At this point in time, DCP supports five transport protocols for different communication systems. It provides a framework for addressing connection-oriented and connection-less, reliable and unreliable, as well as native and non-native transport protocols. If the necessity for adoption of new protocols arises in the future, ProMECoS and the DCP specification may both be subject to modifications.
Author Contributions
Funding
Conflicts of Interest
References
- Geimer, M.; Krüger, T.; Linsel, P. Co-Simulation: Gekoppelte Simulation oder Simulatorkopplung. In O+ P Zeitschrift für Fluidtechnik; GBI-Genios: Munich, Germany, 2006; pp. 4–8. [Google Scholar]
- Snowden, D. Cynefin, A Sense of Time and Place: An Ecological Approach to Sense Making and Learning in Formal and Informal Communities. In Proceedings of the Conference Proceedings of KMAC, Birmingham, UK, 17–18 July 2000. [Google Scholar]
- Thomke, S.; Fujimoto, T. The Effect of “Front-Loading” Problem-Solving on Product Development Performance. J. Prod. Innov. Manag. 2000, 17, 128–142. [Google Scholar] [CrossRef]
- Modelica Association Project DCP. DCP Specification Document; Version 1.0; Modelica Association: Linköping, Sweden, 2019. [Google Scholar]
- Benedikt, M.; Hofer, A. Guidelines for the application of a coupling method for non-iterative co-simulation. In Proceedings of the 8th EUROSIM Congress on Modelling and Simulation, EUROSIM 2013, Wales, UK, 10–13 September 2013; pp. 244–249. [Google Scholar] [CrossRef]
- Benedikt, M.; Watzenig, D.; Zehetner, J.; Hofer, A. NEPCE—A nearly energy-preserving coupling element for weak-coupled problems and co-simulations. In Proceedings of the Computational Methods for Coupled Problems in Science and Engineering V—A Conference Celebrating the 60th Birthday of Eugenio Onate, COUPLED PROBLEMS 2013, Ibiza, Spain, 17–19 June 2013; pp. 1021–1032. [Google Scholar]
- Stettinger, G.; Zehetner, J.; Benedikt, M.; Thek, N. Extending Co-Simulation to the Real-Time Domain; SAE Technical Papers; SAE: Warrendale, PA, USA, 2013; Volume 2. [Google Scholar] [CrossRef]
- Stettinger, G.; Benedikt, M.; Thek, N.; Zehetner, J. On the difficulities of real-time co-simulation. In Proceedings of the Computational Methods for Coupled Problems in Science and Engineering V—A Conference Celebrating the 60th Birthday of Eugenio Onate, Coupled Problems 2013, Ibiza, Spain, 17–19 June 2013; pp. 989–999. [Google Scholar]
- Stettinger, G.; Horn, M.; Benedikt, M.; Zehetner, J. Model-based coupling approach for non-iterative real-time co-simulation. In Proceedings of the 2014 European Control Conference, ECC 2014, Strasbourg, France, 24–27 June 2014; pp. 2084–2089. [Google Scholar] [CrossRef]
- Modelisar Consortium; Modelica Association Project “FMI”. Functional Mock-Up Interface for Model Exchange and Co-Simulation; Version 2.0.2; Modelica Association: Linköping, Sweden, 2020. [Google Scholar]
- Blochwitz, T.; Otter, M.; Arnold, M.; Bausch, C.; Clauß, C.; Elmqvist, H.; Junghanns, A.; Mauss, J.; Monteiro, M.; Neidhold, T.; et al. The Functional Mockup Interface for Tool independent Exchange of Simulation Models. In Proceedings of the 8th International Modelica Conference, Dresden, Germany, 20–22 March 2011; pp. 105–114. [Google Scholar] [CrossRef] [Green Version]
- Krammer, M.; Benedikt, M.; Blochwitz, T.; Alekeish, K.; Amringer, N.; Kater, C.; Materne, S.; Ruvalcaba, R.; Schuch, K.; Zehetner, J.; et al. The Distributed Co-simulation Protocol for the Integration of Real-time Systems and Simulation Environments. In Proceedings of the 50th Computer Simulation Conference, Society for Computer Simulation International, SummerSim’18. San Diego, CA, USA, 22–24 July 2018; pp. 1:1–1:14. [Google Scholar]
- Krammer, M.; Schuch, K.; Kater, C.; Alekeish, K.; Blochwitz, T.; Materne, S.; Soppa, A.; Benedikt, M. Standardized Integration of Real-Time and Non-Real-Time Systems: The Distributed Co-Simulation Protocol. In Proceedings of the 13th International Modelica Conference, Regensburg, Germany, 4–6 March 2019; Volume 157, pp. 87–96. [Google Scholar] [CrossRef] [Green Version]
- Krammer, M.; Kater, C.; Schiffer, C.; Benedikt, M. A Protocol-Based Verification Approach for Standard-Compliant Distributed Co-Simulation. In Proceedings of the Asian Modelica Conference 2020, Tokyo, Japan, 8–9 October 2020; Volume 174, pp. 133–142. [Google Scholar] [CrossRef]
- Krammer, M.; Benedikt, M. Design and application of a domain specific modeling language for distributed co-simulation. In Proceedings of the IEEE International Conference on Industrial Informatics (INDIN), Helsinki-Espoo, Finland, 15 March–22 April 2019; pp. 677–682. [Google Scholar]
- Martinen, D.H.; Lagalaye, M.; Pfefferkorn, J.; Casteres, J. Modular and Open Test Bench Architecture for Distributed Testing. In Proceedings of the AeroTech Congress and Exhibition, Fort Worth, TX, USA, 26–28 September 2017; SAE International: Warrendale, PA, USA, 2017. [Google Scholar] [CrossRef]
- Straßburger, S. Overview about the High Level Architecture for Modelling and Simulation and Recent Developments. Simul. News Eur. 2006, 16, 5–14. [Google Scholar]
- Albagli, A.N.; Falcão, D.M.; De Rezende, J.F. Smart grid framework co-simulation using HLA architecture. Electr. Power Syst. Res. 2016, 130, 22–33. [Google Scholar] [CrossRef]
- IEEE Computer Society. IEEE Recommended Practice for Distributed Simulation Engineering and Execution Process (DSEEP), 1st ed.; Institute of Electrical and Electronics Engineers: New York, NY, USA, 2011. [Google Scholar]
- Bocciarelli, P.; D’Ambrogio, A.; Durak, U.; Panetti, T. Rethinking Simulation Engineering Process for MSaaS. In Proceedings of the IEEE 29th International Conference on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), Bayonne, France, 23–25 June 2021; pp. 88–93. [Google Scholar] [CrossRef]
- Leitner, A.; Zehetner, J.; Toeglhofer, P.; Watzenig, D. Requirement identification for variability management in a co-simulation environment. In Proceedings of the 16th International Software Product Line Conference on—SPLC’12, Munich, Germany, 22–26 August 2012; ACM Press: New York, NY, USA, 2012; Volume 1, p. 269. [Google Scholar] [CrossRef]
- Krammer, M.; Marko, N.; Benedikt, M. Interfacing real-time systems for advanced co-simulation—The ACOSAR approach. In CEUR Workshop Proceedings; Dubois, C., Parisi-Presicce, F., Kolovos, D., Matragkas, N., Eds.; Dubois, Catherine Parisi-Presicce, Francesco Kolovos, Dimitris Matragkas, Nicholas: Vienna, Austria, 2016; Volume 1675, pp. 32–39. [Google Scholar]
- Broy, M. Challenges in automotive software engineering. In Proceeding of the 28th International Conference on Software Engineering ICSE 06, Shanghai, China, 20–28 May 2006; Volume 2006, p. 33. [Google Scholar] [CrossRef]
- HLA Working Group. IEEE 1516-2010—IEEE Standard for Modeling and Simulation (M&S) High Level Architecture (HLA)—Framework and Rules; IEEE Computer Society: Washington, WA, USA, 2010. [Google Scholar]
- Guerra, R.H.; Quiza, R.; Villalonga, A.; Arenas, J.; Castano, F. Digital Twin-Based Optimization for Ultraprecision Motion Systems with Backlash and Friction. IEEE Access 2019, 7, 93462–93472. [Google Scholar] [CrossRef]
- Jung, T.; Shah, P.; Weyrich, M. Dynamic Co-Simulation of Internet-of-Things-Components using a Multi-Agent-System. Procedia CIRP 2018, 72, 874–879. [Google Scholar] [CrossRef]
- Security Sub-Working Group “Connected and Automatic Driving”. In TFCS-08-05: Reference Architecture Model Automotive (RAMA); Governmental Department of Transport and Infrastructure (BMVI): Berlin, Germany, 2019.
- Staron, M.; Durisic, D. AUTOSAR Standard. In Automotive Software Architectures: An Introduction; Springer International Publishing: Cham, Switzerland, 2017; pp. 81–116. [Google Scholar] [CrossRef]
- Thiele, B.; Henriksson, D. Using the Functional Mockup Interface as an Intermediate Format in AUTOSAR Software Component Development. In Proceedings of the 8th International Modelica Conference, Dresden, Germany, 20–22 March 2011; Volume 63, pp. 484–490. [Google Scholar] [CrossRef] [Green Version]
- ISO/IEC JTC 1/SC 34. Information Technology—Document Container File—Part 1: Core; Standard; International Organization for Standardization: Geneva, Switzerland, 2015. [Google Scholar]
- Krammer, M.; Benedikt, M. Configuration of Slaves Based on the Distributed Co-Simulation Protocol. In Proceedings of the IEEE International Conference on Emerging Technologies and Factory Automation, ETFA, Torino, Italy, 4–7 September 2018; pp. 195–202. [Google Scholar] [CrossRef]
- Korte, B.; Vygen, J. Combinatorial Optimization: Theory and Algorithms (Algorithms and Combinatorics); Springer: Berlin/Heidelberg, Germany, 2005. [Google Scholar]
- Johnson, D.S.; Demers, A.; Ullman, J.D.; Garey, M.R.; Graham, R.L. Worst-Case Performance Bounds for Simple One-Dimensional Packing Algorithms. SIAM J. Comput. 1974, 3, 299–325. [Google Scholar] [CrossRef] [Green Version]
- Korf, R.E. A new algorithm for optimal bin packing. In Proceedings of the AAAI/IAAI, Edmonton, AB, Canada, 28 July–1 August 2002; pp. 731–736. [Google Scholar]
- Krammer, M.; Benedikt, M. Master for Simulation Control using the Distributed Co-Simulation Protocol. In Proceedings of the IEEE 16th International Conference on Industrial Informatics, INDIN 2018, Porto, Portugal, 18–20 July 2018; pp. 329–334. [Google Scholar] [CrossRef]
- Krammer, M.; Martin, H.; Winkler, B.; Benedikt, M. Functional Safety in the Context of Distributed Co-Simulation. In Proceedings of the Twenty-Seventh Safety-Critical Systems Symposium, Bristol, UK, 5–7 February 2019; Parsons, M., Kelly, T., Eds.; Safety Critical Systems Club: Bristol, UK, 2019. [Google Scholar]
- Pace, D.K. Ideas about simulation conceptual model development. Johns Hopkins Apl Tech. Dig. (Appl. Phys. Lab.) 2000, 21, 327–336. [Google Scholar]
- Object Management Group. OMG Systems Modeling Language (OMG SysML); Version 1.6; Object Management Group: Needham, MA, USA, 2019. [Google Scholar]
- Robinson, S.; Brooks, R.J.; Kotiadis, K.; van der Zee, D.J. Conceptual Modeling for Discrete-Event Simulation; CRC Press: Boca Raton, FL, USA, 2010. [Google Scholar] [CrossRef]
- Huang, E.; Ramamurthy, R.; McGinnis, L.F. System and simulation modeling using SYSML. In Proceedings of the 2007 Winter Simulation Conference, Washington, WA, USA, 9–12 December 2007; pp. 796–803. [Google Scholar] [CrossRef] [Green Version]
- Baumann, P.; Krammer, M.; Driussi, M.; Mikelsons, L.; Zehetner, J.; Mair, W.; Schramm, D. Using the Distributed Co-Simulation Protocol for a Mixed Real-Virtual Prototype. In Proceedings of the 2019 IEEE International Conference on Mechatronics, ICM 2019, Ilmenau, Germany, 18–20 March 2019; IEEE Industrial Electronics Society: Ilmenau, Germany, 2019; pp. 440–445. [Google Scholar] [CrossRef]
- Krammer, M.; Marko, N.; Benedikt, M. Requirements engineering for consensus-oriented technical specifications. In Proceedings of the 2018 IEEE 26th International Requirements Engineering Conference, RE 2018, Banff, AB, Canada, 20–24 August 2018; pp. 315–324. [Google Scholar] [CrossRef]
- Modelica Association Project SSP. SSP Specification Document, version 1.0; Modelica Association: Linköping, Sweden, 2019. [Google Scholar]
Topic | Standard | References |
---|---|---|
Couplings, parameters, and other settings | n/a | [5,6,7,8,9] |
Functional Mock-Up Interface | FMI 2.0 | [10,11] |
Distributed Co-Simulation Protocol | DCP 1.0 | [4,12,13] |
Protocol-based test | DCP 1.0 | [14] |
Conceptual modeling | DCP 1.0 | [15] |
Virtual and Hybrid Testing Next Generation (VHTNG) | ED247, DDS | [16] |
High Level Architecture, Use Cases | HLA, IEEE 1516 | [17,18] |
Simulation Engineering and Execution Process | DSEEP, IEEE 1730 | [19] |
DSEEP in context of service-oriented architectures | DSEEP, IEEE 1730 | [20] |
Feature | Project Information |
---|---|
Name | ACOSAR: Advanced Co-Simulation Open System Architecture |
Consortium | 16 partners from 3 countries (Austria, France, Germany) |
Structure |
3 original equipment manufacturers (Porsche, Renault, and Volkswagen)9 partners from automotive supply chain, including tool vendors, system and component providers (AVL List GmbH, Robert Bosch GmbH, dSPACE GmbH, ETAS GmbH, ESI-ITI GmbH, Ks.MicroNova GmbH, Spath Micro Electronic Design GmbH, Siemens PLM Software, TWT GmbH) 4 partners from research and academia (Ilmenau University of Technology, Leibniz Universität Hannover, RWTH Aachen University, VIRTUAL VEHICLE Research Center) |
Leader | Virtual Vehicle Research GmbH, Austria |
id | ↓ ProMECoS/IEEE 1730 → | 2.1 | 3.1 | 3.2 | 3.3 | 4.1 | 4.2 | 4.3 | 4.4 | 5.1 | 5.2 | 5.3 | 6.1 | 6.2 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1.1 | Develop conceptual scenario | x | ||||||||||||
1.2 | Select slaves | x | ||||||||||||
1.3 | Define underlying architecture | x | ||||||||||||
1.4 | Select protocol standards | x | ||||||||||||
1.5 | Select operating mode | x | x | |||||||||||
1.6 | Design interconnections | x | ||||||||||||
1.7 | Enhance slaves | x | ||||||||||||
1.8 | Generate scenario description | x | ||||||||||||
1.9 | Export scenario description | x | ||||||||||||
1.10 | Define scenario configuration | x | ||||||||||||
1.11 | Design or select master | x | ||||||||||||
1.12 | Deliver slaves | x | x | |||||||||||
1.13 | Deliver master | x | ||||||||||||
1.14 | Provide infrastructure | x | ||||||||||||
2.1 | Assign infrastructure | x | ||||||||||||
2.2 | Instantiate master | x | ||||||||||||
2.3 | Instantiate slaves | x | ||||||||||||
3.1 | Perform registration | x | ||||||||||||
3.2 | Execute scenario | x | ||||||||||||
3.3 | Pick up logs and results | x | ||||||||||||
3.4 | Perform deregistration | x |
FMI States | DCP States |
---|---|
instantiated | ALIVE |
instantiated | CONFIGURATION |
PREPARING | |
PREPARED | |
CONFIGURING | |
Initialization Mode | CONFIGURED |
INITIALIZING | |
INITIALIZED | |
SENDING_I | |
slaveInitialized, stepInProgress | SYNCHRONIZING |
SYNCHRONIZED | |
RUNNING | |
COMPUTING | |
COMPUTED | |
SENDING_D | |
slaveInitialized, terminated | STOPPING |
terminated | STOPPED |
error | ERRORHANDLING |
ERRORRESOLVED |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2021 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Krammer, M.; Schiffer, C.; Benedikt, M. ProMECoS: A Process Model for Efficient Standard-Driven Distributed Co-Simulation. Electronics 2021, 10, 633. https://doi.org/10.3390/electronics10050633
Krammer M, Schiffer C, Benedikt M. ProMECoS: A Process Model for Efficient Standard-Driven Distributed Co-Simulation. Electronics. 2021; 10(5):633. https://doi.org/10.3390/electronics10050633
Chicago/Turabian StyleKrammer, Martin, Clemens Schiffer, and Martin Benedikt. 2021. "ProMECoS: A Process Model for Efficient Standard-Driven Distributed Co-Simulation" Electronics 10, no. 5: 633. https://doi.org/10.3390/electronics10050633