A modelica coordination pattern library for cyber-physical systems

Today's embedded systems often do not operate individually anymore. Instead, they form so called cyber-physical systems, where the overall functionality is provided by the collaboration of systems. Consequently, the design of this collaboration is an important activity during development and strongly affects system quality. In previous work, we presented a catalog of reusable message-based real-time coordination patterns to avoid manual creation of new and, thus, error-prone designs. In this paper, we present an implementation of this catalog by a library in the Modelica language and an appropriate development process. The library stores ready to reuse solutions for common coordination activities and, thus, increases efficiency and effectiveness for use. Furthermore, the use of Modelica enables early holistic simulation of cyber-physical systems including feedback controllers and message-based coordination. We illustrate the library with examples from an autonomous railway vehicle and present an early evaluation.

[1]  Farhad Arbab,et al.  Modeling and simulation of selected operational IT risks in the banking sector , 2012 .

[2]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[3]  Simon Wimmer,et al.  Timed Automata , 2016, Arch. Formal Proofs.

[4]  Susan Eisenbach,et al.  Coordination in Evolving Systems , 1996, TreDS.

[5]  Bernard P. Zeigler,et al.  DEVS Formalism: A Framework for Hierarchical Model Development , 1988, IEEE Trans. Software Eng..

[6]  Rajeev Alur,et al.  Timed Automata , 1999, CAV.

[7]  Matthias Tichy,et al.  Real-Time Coordination Patterns for Advanced Mechatronic Systems , 2012, COORDINATION.

[8]  Sebastián Dormido,et al.  Introducing Messages in Modelica for Facilitating Discrete-Event System Modeling , 2008, EOOLT.

[9]  B. F. Castro Buschmann, Frank; Meunier, Regine; Rohnert, Hans; Sommerlad, Peter; Stal, Michael. Pattern-oriented software architecture: a system of patterns, John Wiley & Sons Ltd, 1996 , 1997 .

[10]  Richard Colgren Basic Matlab, Simulink And Stateflow , 2006 .

[11]  Charlotta Johnsson,et al.  A New Formalism for Modeling of Reactive and Hybrid Systems , 2009 .

[12]  Frank Buschmann,et al.  A system of patterns , 1995 .

[13]  Lassaad Baati,et al.  On using design patterns for DEVS modeling and simulation tools , 2010, SpringSim.

[14]  Hilding Elmqvist,et al.  Modelica — A unified object-oriented language for physical systems modeling , 1997 .

[15]  Matthias Tichy,et al.  A Modelica Library for Real-Time Coordination Modeling , 2012 .

[16]  Adelinde M. Uhrmacher,et al.  Definition and analysis of composition structures for discrete-event models , 2008, 2008 Winter Simulation Conference.

[17]  Olivier Dalle,et al.  Design considerations for M&S software , 2009, Proceedings of the 2009 Winter Simulation Conference (WSC).

[18]  Karl-Erik Årzén,et al.  TrueTime Network — A Network Simulation Library for Modelica , 2009 .

[19]  Murray Silverstein,et al.  Patterns and Anti-Patterns in Modelica , 2008 .

[20]  M. Otter,et al.  Modelica - A Unified Object-Oriented Language for Physical Systems Modeling - Language Specification , 2000 .

[21]  Peter Csaba Ölveczky,et al.  Verifying hierarchical Ptolemy II discrete-event models using Real-Time Maude , 2012, Sci. Comput. Program..

[22]  Peter Sommerlad,et al.  Pattern-Oriented Software Architecture , 1996 .

[23]  Hessam S. Sarjoughian,et al.  Domain driven simulation modeling for software design , 2007, SCSC.

[24]  Matthias Tichy,et al.  A discipline-spanning development process for self-adaptive mechatronic systems , 2013, ICSSP 2013.

[25]  Matthias Tichy,et al.  Modelica code generation from ModelicaML state machines extended by asynchronous communication , 2011, EOOLT.

[26]  Farhad Arbab,et al.  Reo: A Channel-based Coordination Model for Component Composition , 2005 .

[27]  Edward A. Lee Disciplined heterogeneous modeling , 2010, MODELS'10.

[28]  Edward A. Lee,et al.  Taming heterogeneity - the Ptolemy approach , 2003, Proc. IEEE.