title: Bidirektionale Transformation zwischen GRAFCET‐Spezifikationen und IEC 61131‐3 Steuerungscodes
title: Bidirectional transformation between GRAFCET specifications and IEC 61131-3 control codes
titleType: AlternativeTitle
Creators: name: Julius, Robert
Publisher: name: Universitätsbibliothek der HSU/UniBw H
Year: 2022
Subjects: subject: Automatisierungstechnik
subject: Formale Beschreibungsmittel
subject: Steuerungsentwurf
subject: Round-trip engineering
subject: GRAFCET
subject: Codegenerierung
subject: Modellgetriebene Softwareentwicklung
subject: Ablaufsteuerung
subject: 629 Andere Fachrichtungen der Ingenieurwissenschaften

description: In der heutigen Praxis wird das Maschinen- und Anlagenverhalten für den Entwurf der Steuerungssoftware informell mittels Zeichnungen, Tabellen und Textdokumenten spezifiziert. Der bevorzugte Weg, diese Informationen in Steuerungscodes zu übertragen, ist die direkte Implementierung der informellen Anforderungen. Dieses Vorgehen birgt durch mögliche Fehlinterpretationen der Spezifikation das Risiko eines fehlerhaften Programmcodes. Ein anderer Ansatz ist die Verwendung formaler Beschreibungsmittel für den Entwurf von Ablaufsteuerungen. Hierbei werden die informellen Anforderungen an die Steuerungssoftware zunächst mit Hilfe von grafischen Beschreibungssprachen formalisiert. Diese formalisierte Spezifikation dient als Basis für eine manuelle oder automatische Erstellung der Steuerungssoftware. Trotz der signifikanten Vorteile formaler Methoden im Steuerungsentwurf fehlt es bis heute in der industriellen Praxis an einer Akzeptanz des Vorgehens. Um diese Akzeptanz zu erhöhen und deren signifikante Vorteile im industriellen Kontext zu nutzen, ist die Einführung von Round-Trip Engineering zur durchgängigen werkzeugtechnischen Unterstützung beim Steuerungsentwurf notwendig. Unter Round-Trip Engineering wird die Synchronisierung einer formalen Spezifikation und des dazugehörigen Steuerungscodes sowohl bei Änderungen auf Ebene der Spezifikation als auch auf Ebene des Codes verstanden. Ziel ist die Erhaltung der Kohärenz beider Artefakte über den kompletten Lebenszyklus einer Automatisierungssoftware. Obgleich es sowohl für die Vorwärts- als auch für die Rückwärtstransformation hinreichend Ansätze gibt, fehlt es in der Literatur bis heute an Transformationskonzepten, die eine bidirektionale Transformation zwischen formalen Spezifikationen und Steuerungscodes adressieren. Vor diesem Hintergrund ist es das Ziel der vorliegenden Dissertation zu erforschen, ob eine bidirektionale Transformation zwischen GRAFCET-Spezifikationen und IEC 61131-3 Steuerungscodes möglich ist und welche Methoden sich für eine solche Überführung eignen. Diesbezüglich wird die Eignung verschiedener Round-Trip Engineering Methoden untersucht. Im Rahmen der Untersuchung werden drei modellbasierte, bidirektionale Transformationskonzepte für die Überführung zwischen GRAFCET-Spezifikationen und entsprechenden Steuerungscodes vorgestellt. Alle Konzepte basieren auf zwei Metamodellen, einem für die Spezifikation und einem für die Zielsprache, deren Instanzen ineinander transformiert werden. Die eigentliche Codegenerierung aus dem Modell der Zielsprache erfolgt unabhängig davon. Für die Rücktransformation wird der adaptierte Steuerungscode zunächst durch eine Text-zu-Modell-Transformation auf die Modellebene der Zielsprache zurücküberführt. Die Aufrechterhaltung des Abstraktionsgrades im Transformationsprozess durch die Einführung des Modells der Zielsprache eröffnet die Möglichkeit zur Nutzung verschiedener Methoden der modellgetriebenen Softwareentwicklung. Die verschiedenen bidirektionalen Transformationskonzepte werden innerhalb dieser Dissertation systematisch erarbeitet, prototypisch umgesetzt und verglichen.
description: According to current practice in machinery and plant engineering, control code is designed informally by means of sketches, spreadsheets and text documents. The generally preferred method of conveying this information is the implementation of such informal specifications manually by control practitioners. However, direct implementation of textual requirements into control code bears the risk of erroneous interpretations due to the potential misinterpretation of the informal specification. Another approach is to use formal methods for control code design. This provides an opportunity to avoid these risks. In such approaches, informal requirements are formalized first by using a specification language. The resulting formal model is then taken as the basis for the following manual or automatic implementation. Unfortunately, formal methods still lack acceptance in the industry for different reasons. To increase their acceptance and make use of the advantages of these methods, the introduction of round-trip engineering for a seamless tool support within control code design is necessary. Round-trip engineering is defined as the synchronization between a specification and the corresponding source code by adaption of the code as well as modifications of the specification. Both artefacts should be kept consistent by modifications of the respective other. The goal is maintaining coherence between both artefacts during the whole lifecycle of an automation software. Several approaches for the forward and the backward transformation between specification and control code are described in the literature. Nevertheless, there is still a lack of bidirectional transformation concepts. This dissertation aims to explore if a bidirectional transformation between GRAFCET and IEC 61131-3 control code is possible and which methods may be suitable to solve this task. Therefore, the suitability of different methods in the context of round-trip engineering for bidirectional transformation will be investigated. This dissertation presents three model-based, bidirectional transformation concepts to convert between GRAFCET specification and control code. The general concept consists of two meta-models for the specification language GRAFCET and the corresponding programming language, whose instances will be transformed into each other. In a second step, the control code will be generated via a model-to-text transformation. The backward transformation starts with transformation of the adjusted code back to the model level via a text-to-model transformation. During the whole transformation process the abstraction level will be preserved by using meta-models of the specification and the programming language. This enables the use of various methods from the area of model-driven software development. The various concepts of bidirectional transformation will be systematically developed, prototypically implemented and compared.