Überblick

UML allgemein

UML (Unified Modeling Language) ist eine grafische Sprache, die zur Analyse, Konstruktion und Dokumentation von Software genutzt werden kann. Besonders geeignet ist die Verwendung von UML bei objektorientierten Implementierungen. Durch die einheitliche Modellierung der SPS-Applikation entsteht eine allgemein verständliche Softwaredokumentation, die auch von anderen Fachbereichen - abgesehen von der Softwareentwicklung - analysiert und diskutiert werden kann.

Diagrammkategorien

Einige UML-Diagramme lassen sich als Strukturdiagramme und andere als Verhaltensdiagramme kategorisieren. Strukturdiagramme werden im Wesentlichen zur statischen Modellierung und Analyse eingesetzt, da sie die Softwarearchitektur schematisch darstellen. Verhaltensdiagramme dienen hingegen der dynamischen Modellierung. Bei dieser Art der UML-Diagramme handelt es sich um ausführbare Modelle, aus denen direkt Programmcode generiert werden kann.

UML in TwinCAT 3.1 PLC

Mit der Integration von UML (Unified Modeling Language) in TwinCAT 3.1 stehen zwei zusätzliche Editoren zur Modellierung von SPS-Software zur Verfügung. Die bestehenden TwinCAT-SPS-Programmiersprachen werden dabei um das UML-Klassen- und das UML-Zustandsdiagramm erweitert.

UML-Klassendiagramm

Das UML-Klassendiagramm gehört zur Gruppe der UML-Strukturdiagramme und kann zur schematischen Darstellung der Softwarearchitektur verwendet werden. Dadurch können Objektklassen, die enthaltenen Elemente und die Objektbeziehungen übersichtlich abgebildet werden.

UML-Zustandsdiagramm

Das UML-Zustandsdiagramm ist hingegen Teil der UML-Verhaltensdiagramme und dient der dynamischen Softwaremodellierung. Dabei kann das Zeitverhalten bzw. der zustandsabhängige Ablauf eines Systems grafisch spezifiziert werden. Beim Kompilieren des Zustandsdiagramms wird Programmcode generiert, sodass die Zustandsmaschine direkt ausgeführt werden kann. Der Entwicklungsprozess wird durch ein mögliches Debuggen im Online-Modus unterstützt.

Vorteile

Die Vorteile, UML-Diagramme für die Analyse, Konstruktion und/oder Dokumentation von Software einzusetzen, sind vielfältig. Die wesentlichen Aspekte werden in den folgenden Punkten genannt: