A Model-Driven Software Construction Approach for Cyber-Physical Systems

A Model-Driven Software Construction Approach for Cyber-Physical Systems

Faculty for Computer Science, Electrical Engineering and Mathematics A Model-driven Software Construction Approach for Cyber-physical Systems Uwe Pohlmann Dissertation submitted in partial fulfillment of the requirements for the degree of Doktor der Naturwissenschaften (Dr. rer. nat.) Referee: Prof. Dr. Matthias Tichy Prof. Dr. Gregor Engels Paderborn, April 17, 2018 ISBN 978-3-00-059657-5 Abstract Systems and software engineers realize innovative functionality in cyber-physical systems by connecting previously independent systems. The development of these systems becomes more challenging because the systems’ complexity, the amount of the safety-critical software, the heterogeneity of the underlying platforms, and the connectivity of the systems increase steadily. However, existing model-driven approaches do not cover the different engineers’ concerns efficiently during the different development tasks. Many of these approaches have a focus on the formal design and the verification of safety and real-time properties. Though, the question how to retain the systems’ safety during following construction tasks remains open. This thesis focuses on the construction tasks: physical system integration validation, resource allocation, and the implementation. It presents a highly automated end-to-end model- driven approach for the development of interacting cyber-physical systems that are realized on heterogeneous, distributed platforms. The approach covers the validation of the system integration via model-in-the-loop simulation, constraint-driven software to hardware allocation, and generative software construction. Consequently, the approach retains the system’s safety with respect to systematic errors through different development tasks. It enables engineers to detect and avoid design and implementation flaws. Thereby, it improves the reliability of systems during their operation. It enables an effective and efficient seamless development. This thesis evaluates the approach by providing an integrated development environment and conducting several case studies from the automotive and automation domain. The evaluation shows the effective and in comparison to state of the art approaches more efficient application of: (1) the model-in-the-loop simulation in the context of virtual prototypes, (2) the allocation constraint specification and the automated allocation planning, and (3) the generation of executables for heterogeneous, distributed embedded platforms. III Zusammenfassung Systemingenieure und Softwaretechniker realisieren innovative Funktionen von cyber- physischen Systemen durch die Vernetzung von vormals unabhängigen Systemen. Die Entwicklung dieser Systeme wird schwieriger, weil die Systemkomplexität, die Menge an sicherheitskritischer Software, die Heterogenität der verwendeten Plattformen und der Vernetzungsgrad stetig ansteigen. Jedoch bedienen existierende modellgetriebene Entwicklungsansätze die verschiedenen Bedürfnisse der beteiligten Ingenieure während der verschiedenen Entwicklungsaufgaben nicht effizient genug. Existierende Ansätze fokussieren sich typischerweise auf den formalen Entwurf und die Verifizierung von Sicherheits- und Echtzeiteigenschaften. Sie beantworten jedoch nicht die Frage wie die Systemsicherheit während der folgenden Konstruktionsschritte beibehalten werden kann. In dieser Dissertation fokussiere ich mich auf die Konstruktionsschritte Validierung der Systemintegration, Zuordnung von Systemressourcen und auf die Implementierung. Ich stelle einen durchgängig modellgetriebenen Entwicklungsansatz für interagierende cyber-physische Systeme vor, welche durch heterogene, verteilte Software- und Hardwareplattformen gekennzeichnet sind. Der Ansatz beinhaltet Verfahren für die Systemintegrationsvalidierung mittels „Model-in-the- Loop“ Simulation, die automatische Softwareverteilung, welche durch Entwurfsanforderungen stark beschränkt ist, und die generative Softwarekonstruktion. Dementsprechend stellt der Ansatz die Systemsicherheit in Bezug auf systematische Fehler während der verschiedenen Entwicklungsaufgaben sicher. Er ermöglicht Ingenieuren und Technikern Entwurfs- und Implementierungsfehler frühzeitig zu entdecken und im Folgenden systematisch zu vermeiden. Hierdurch verbessert der Ansatz die Zuverlässigkeit der Systeme während ihres Betriebs. Er ermöglicht eine effektive und effiziente, durchgängige Entwicklung. Zur Anwendung und Evaluierung des Ansatzes stelle ich eine integrierte Entwicklungsumgebung zur Verfügung und führe verschiedene Fallstudien aus der Automobil- und der Automatisierungsdomäne durch. Die Evaluierung zeigt die effektive und im Vergleich zum Stand der Technik effizientere Anwendung von (1) der „Model-in-the-Loop“ Simulation im Kontext eines virtuellen Prototyps, (2) der Spezifikation von Allokationsbeschränkungen und der automatisierten Allokationsplanung und (3) der Generierung von ausführbaren Programmen für heterogene, verteilte, vernetzte eingebettete Plattformen. V Danksagung Ich möchte mich an dieser Stelle bei meinen Freunden, Kollegen und bei meiner Familie bedanken, ohne die diese Arbeit nicht möglich gewesen wäre. Insbesondere das angenehme Arbeits- und Forschungsklima des Heinz Nixdorf Instituts, des Fraunhofer-Instituts IEM und des s-labs, welches durch die vielen Kollegen geprägt wird, die vielen gemeinsamen Stunden und die anregenden Diskussionen, haben mir immer geholfen. Ich möchte mich bei meinen Betreuern Wilhelm Schäfer und Matthias Tichy bedanken. Durch die vielen Anregungen, Rückmeldungen und Diskussionen konnte ich meine Forschung vorantreiben und in dieser Arbeit darstellen. Neben dem fachlichen Rat waren die persönlichen Ratschläge sehr inspirierend. Gregor Engels danke ich für die Übernahme des weiteren schriftlichen Gutachtens. Ich möchte den weiteren Mitgliedern meiner Promotionskommission, Eric Bodden, Matthias Meyer und Stefan Sauer, danken. Meine Arbeit hat von der interdisziplinären Arbeit im Forschungsprojekt ENTIME profitiert. Hier möchte ich den bisher nicht erwähnten Projektmitarbeitern Farisoroosh Abrishamchian, Harald Annacker, Frank Bauer, Daniel Kruse, Sarah Flottmeier, Viktor Just, Thomas Schierbaum, Heinrich Teichrieb und Felix Oestersötebier danken. Dies gilt auch für die Mitarbeiter im Forschungsprojekt it’s OWL – Intelligente Vernetzung, in dem ich mitarbeiten durfte. Namentlich gilt der Dank Peer Adelt, Johannes Ax, Lars Dürkop, Volker Geneiß, Thorsten Jungeblut, Jan Jatzkowski, Uwe Mönks, Konstantin Nußbaum, Henning Trsek, Jens Otto und Lukasz Wisniewski. Weiterhin möchte ich meinen Kollegen Stefan Dziwok, Christopher Gerking, Christian Heinzemann und David Schubert aus der MechatronicUML Entwicklungsgruppe danken mit denen ich viele Konzepte detailliert entwickelt, diskutiert und verbessert habe. Dank gilt auch meinen Bürokollegen Stefan Dziwok, Christian Bremer und Sven Merschjohann und den weiteren aktuellen und ehemaligen Kollegen der Fachgruppe Softwaretechnik. Diese sind namentlich Anas Anis, Matthias Becker, Steffen Becker, Manuel Benz, Christian Brenner, Christian Brink, Eric Bodden, Andreas Peter Dann, Nicola Danielzik, Tobias Eckardt, Markus Fockel, Jens Frieben, Johannes Geismann, Faezeh Ghassemi, Joel Greenyer, Jutta Haupt, Stefan Henkler, Ben Hermann, Jörg Holtmann, Thorsten Koch, Stefan Krüger, Sebastian Lehrig, Renate Löffler, Jürgen Maniera, Ahmet Mehic, Sven Merschjohann, Matthias Meyer, Vera Meyer, Lisa Nguyen, Faruk Pasic, Goran Piskachev, Marie Christin Platenius, Claudia Priesterjahn, Jan Rieke, David Schmelter, Philipp Schubert, Johannes Späth, Lars Stockmann, Christian Stritzke, Julian Suck, Oliver Sudmann, Dietrich Travkin, Markus von Detten und Benedict Wohlers. Die Integration von Studenten in Forschungsaktivitäten ist mir sehr wichtig. Deshalb wäre diese Arbeit in der vorliegenden Form nicht möglich gewesen ohne die Mitarbeit der Studenten Jan Bobolz, Melanie Bruns, Ingo Budde, Mike Czech, Andreas Peter Dann, Johannes Geismann, Marcus Hüwe, Arthur Krieger, Jan-Niclas Strüwer, Sebastian Thiele, Mario Rose, Rebekka Wohlrab und Boris Wolf. Zum Schluss möchte ich mich bei meiner Familie für ihre Unterstützung bedanken. Dank gilt meinen Brüdern Martin und Andreas, wie auch meiner Mutter Mathilde und meinem Vater Dietrich. Besonderer Dank gilt meiner Freundin Anna für ihre Mithilfe und Unterstützung. VII Contents Titlepage I Abstract III Zusammenfassung V Danksagung VII 1 Introduction 1 1.1 Problem Statement . 2 1.1.1 Simulation of Cyber-physical Systems . 2 1.1.2 Specifying Constraints for Allocation Planning . 3 1.1.3 Constructing Software for Distributed Cyber-Physical Systems . 4 1.2 Contribution . 4 1.2.1 Model-in-the-Loop Simulation . 5 1.2.2 Allocation Engineering . 6 1.2.3 Software Construction . 6 1.3 Running Example: Cooperative Overtaking System Using Car-2-X Communication 6 1.4 Thesis Structure . 7 2 MechatronicUML 11 2.1 Development Process . 11 2.2 Modeling Views . 12 2.2.1 Real-Time Coordination Protocol . 12 2.2.2 Real-Time Statechart . 14 2.2.3 Action Language . 15 2.2.4 Component Model . 16 2.2.5 Component Instance Configuration . 17 3 Model-in-the-Loop Simulation 19 3.1 Modelica . 23 3.1.1 Modeling System’s Structures . 23 3.1.2 Modeling the State-based Behavior . 24 3.1.3 Model-in-the-Loop (MiL) Simulation of Modelica Models . 27 3.2 Process for Model-in-the-Loop Simulation of MechatronicUML . 27 3.3 Real-Time Coordination Modelica Library . 30 3.3.1 Synchronization Connectors and Ports . 30 3.3.2 Message-Based Communication . 32 3.3.3 Clocks, Invariants, and Clock Constraints . 34 3.3.4 Formal Syntax and Semantics

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    335 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us