Grundlagen

Das UML-Klassendiagramm kann verwendet werden, um die Struktur eines (komplexen) Systems zu dokumentieren, zu analysieren, zu gestalten und zu erweitern. Dabei können Klassen entworfen und Beziehungen zwischen ihnen abgebildet werden. Die übersichtliche Darstellung von PLC-Programmelementen umfasst u.a. Vererbungs- und Implementierungsbeziehungen, sodass Zusammenhänge visuell deutlich werden. Ein UML-Klassendiagramm kann daher optimal für eine grafische Systemdokumentation verwendet werden und bietet eine verständliche Basis, um technische Inhalte zu vermitteln.

Der Klassendiagrammeditor stellt Elemente zur Verfügung, die die Objektorientierung des Projekts abbilden. Da der Editor in den SPS-Bereich der TwinCAT 3 Entwicklungsumgebung eingebettet ist, ist eine automatische Generierung von Code möglich. Umfangreiche Features und Tools stehen integriert zur Verfügung.

Das Klassendiagramm kann in zwei Richtungen verwendet werden. Zum einen ist es möglich, die bestehende Projektstruktur ins Klassendiagramm zu importieren bzw. ausgewählte Elemente der bestehenden Projektstruktur zum Klassendiagramm hinzuzufügen. Dadurch kann die bereits existierende Softwarearchitektur dokumentiert und analysiert werden. Zum anderen bietet das Klassendiagramm die Möglichkeit, bestehende SPS-Elemente bzw. die bestehende Projektstruktur zu verändern und zu erweitern. Diese Modifikation kann mithilfe des Klassendiagramm-Editors und der dazugehörigen Elemente des Werkzeugkastens durchgeführt werden. Hierüber kann die Softwarearchitektur verändert und erweitert sowie gleichzeitig dokumentiert und analysiert werden.

Begriffe aus der Objektorientierung

Synonym in IEC 61131-3

Klasse (UML: class)

POU-Typen:

  • Programm (PRG): PROGRAM
  • Funktionsbaustein (FB): FUNCTION_BLOCK
  • Funktion (FUN): FUNCTION

Attribut (UML: attribute)

  • Interne Variable
  • Parameter: {input}
  • Eigenschaft: {property}
  • Ausgangsparameter: {output}

Variablentypen:

  • Variablen: VAR
  • Eingangsvariablen: VAR_INPUT
  • Eigenschaft: PROPERTY
  • Ausgangsvariablen: VAR_OUTPUT

Operation (UML: operation)

  • Methode: METHOD
  • Aktion

Schnittstelle (UML: interface)

Schnittstelle: INTERFACE

 

Globale Variablenliste (GVL): VAR_GLOBAL

 

Benutzerdefinierter Datentyp (DUT): TYPE

Synchronität

Objekte im Klassendiagramm und im Projekt werden identisch gehalten, sodass Benutzereingaben auf beide Sichten wirken. Das bedeutet zum einen, dass bei der Änderung von Objekten über das Klassendiagramm die entsprechenden Objekte im Projektbaum automatisch mitgeändert werden. Zum anderen werden Änderungen im Projektbaum automatisch im Klassendiagramm sichtbar, sofern die entsprechenden Objekte im Klassendiagramm dargestellt werden.

Verwendungsmöglichkeiten

Generell gilt folgendes:

In der Regel ist es übersichtlicher, auf einem Klassendiagramm nur einige Objekte darzustellen. Auf diese Weise können Klassendiagramme beispielsweise themenbezogen oder pro Projektabschnitt angelegt werden. Die abgebildeten Objekte können zum einen in bestimmten Abhängigkeiten zueinander stehen, sodass die Objekte samt ihrer Abhängigkeiten übersichtlich dargestellt werden. Zum anderen können bei Bedarf auch Objekte ohne explizite Abhängigkeiten zueinander in einem Diagramm dargestellt werden, um sie anhand der parallelen Darstellung gegebenenfalls miteinander zu vergleichen.

Darauf aufbauend ergeben sich für das Klassendiagramm verschiedene Verwendungsmöglichkeiten:

Nachfolgend finden Sie einige Verweise, welche Befehle bzw. Aktionen für die einzelnen Verwendungsmöglichkeiten genutzt werden können.

Als Design- und Entwicklungstool verwenden

Als Analysewerkzeug eines bestehenden Projekts verwenden

Als Projektnavigator verwenden

Befehle

Für das Klassendiagramm stehen folgende Befehle bzw. Aktionsmöglichkeiten zur Verfügung:

Beachten Sie außerdem die Befehle, die für alle UML-Diagramme verfügbar sind: Gemeinsame Befehle aller UML-Diagramme.

Zugriffsmodifizierer

Grundlagen 1:

Verfügbar ab TwinCAT 3.1 Build 4026

Der Zugriffsmodifizierer einer Methode oder einer Eigenschaft wird im Klassendiagramm mithilfe eines Symbols angezeigt. Die folgende Tabelle zeigt, welches Symbol dabei für welchen Zugriffsmodifizierer steht.

Symbol

Zugriffsmodifizierer

+

PUBLIC

#

PROTECTED

-

PRIVATE

~

INTERNAL