Generating Modelica Models from Software Specifications for the Simulation of Cyber-Physical Systems

Future smart systems will provide functionality by dynamically interacting with each other in cyber-physical systems. Such interactions require a message-based coordination under hard real-time constraints. This is realized by complex software, which combines discrete, state-based behavior with continuous behavior controlling the dynamics of the physical system parts. The development methods and tools for these kinds of software are not well integrated so far. For the modeling and simulation of physical and continuous control behavior, Modelica can be used. For modeling the discrete coordination behavior, MECHATRONICUML (MUML) can be used, which in addition offers a formal verification of safety requirements like deadlock-freedom of interactions, for example. We introduce in this paper an automatic transformation for formally verified MUML models into Modelica to ensure that the discrete state-based software correctly interacts with the continuous control software, physical parts, and a plant model. We illustrate this concept by means of a car-to-car coordination scenario.

[1]  Stephan Merz,et al.  Model Checking , 2000 .

[2]  Olaf Stursberg,et al.  Verification of PLC Programs Given as Sequential Function Charts , 2004, SoftSpez Final Report.

[3]  Jürgen Haufe,et al.  A new Approach for Modeling and Verification of Discrete Control Components within a Modelica Environment 1 , 2008 .

[4]  Peter Fritzson,et al.  Towards Automatic Generation of Model Checkable Code From Modelica , 2004 .

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

[6]  Christiaan J. J. Paredis,et al.  Virtual Verification of System Designs against System Requirements , 2010, MoDELS Workshops.

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

[8]  Matthias Tichy,et al.  GENERATING SIMULINK AND STATEFLOW MODELS FROM SOFTWARE SPECIFICATIONS , 2012 .

[9]  Steffen Becker,et al.  The MechatronicUML method: model-driven software engineering of self-adaptive mechatronic systems , 2014, ICSE Companion.

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

[11]  Wilhelm Schäfer,et al.  Generating Functional Mockup Units from Software Specifications , 2012 .

[12]  Stephen A. Edwards,et al.  The synchronous languages 12 years later , 2003, Proc. IEEE.

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

[14]  Hilding Elmqvist,et al.  State Machines in Modelica , 2012 .

[15]  Isolde Dressler Code Generation from JGrafchart to Modelica , 2004 .

[16]  Christiaan J. J. Paredis,et al.  Execution of UMLState Machines Using Modelica , 2010, EOOLT.

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

[18]  Holger Giese,et al.  Towards the compositional verification of real-time UML designs , 2003, ESEC/FSE-11.

[19]  Rajeev Alur,et al.  A Theory of Timed Automata , 1994, Theor. Comput. Sci..