Skip to main content

Element: Zustand

Ein Zustand ist das Hauptelement eines Zustandsdiagramms. Ein Zustandsautomat (oder Zustandsdiagramm) durchläuft während seiner Laufzeit verschiedene Zustände und führt deren Aktionen aus. Ein Zustand kann über ENTRY-, DO-, und EXIT-Aktionen verfügen, die zu festgelegten Zeitpunkten in der Laufzeit des Zustands ausgeführt werden.

_uml_img_state_default.png

Ein Zustand wird als grünes Rechteck mit abgerundeten Ecken dargestellt. Ein zyklusinterner Zustand wird rot dargestellt. Sie stellen einen zyklusinternen Zustand in der Eigenschaft Zyklusintern ein.

Ein normaler Zustand wird entsprechend der Task getaktet, in der er aufgerufen wird. Dabei wird der Übergang in den nächsten Zustand erst mit dem nächsten Taskzyklus geschaltet.

Ein zyklusinterner Zustand schaltet unabhängig vom Taskzyklus. Wenn die Aktionen eines interner Zustands abgeschlossen sind, wird unmittelbar in die Transition geschaltet. Dabei wird die Bedingung der Transition geprüft und deren Transitionsaktion ausgeführt, und anschließend sofort in den Zielzustand geschaltet.

Eigenschaften

Eigenschaft

Beschreibung

Bezeichner

Name für das Element. Sie können den Namen auch im Zustandsdiagramm ändern.

Farbe

Farbe des Elements. Über einen Farbauswahldialog ändern Sie die Farbe. Standard: grün

Impliziter Startzustand

  • Nein: Zustand ist ein normaler Zustand.

  • Diagramm: Zustand ist zusätzlich ein Startzustand für das gesamte Diagramm.

  • Zusammengesetzter Zustand/Region: Zustand ist zusätzlich ein Startzustand für eine Region in einem zusammengesetzten Zustand.

Zyklusintern

  • _cds_icon_checked.png: Die Transition wird sofort in den nächsten Zustand geschaltet.

  • _cds_icon_option_deactivated.png: Eine Transition wird bei einem Zykluswechsel der Task in den nächsten Zustand geschaltet (Standard)

Max. DO-Zyklusaufrufe

Maximale Anzahl an Aufrufen der DO-Aktion. Zahl zwischen 1 und 32767. Wenn dieser Wert überschritten wird, schaltet der Zustand weiter.

ENTRY-Aktion

Name der entsprechenden Aktion

DO-Aktion

EXIT-Aktion

Benutzereingaben

Wenn Sie das Element selektieren, sind oberhalb des Elements Transitionssymbole sichtbar. Sie können damit Zustände verbinden.

Aktion

Beschreibung

  1. Selektieren Sie ein Element Zustand.

  2. Klicken Sie auf den Namen.

    _uml_img_state_name.png
  3. Ändern Sie den Namen.

Der Name des Elements kann auch in den Eigenschaften geändert werden.

  1. Selektieren Sie ein Element Zustand.

  2. Klicken Sie auf das Symbol _uml_icon_transition_outgoing.png.

    Eine abgehende Transition wird erzeugt.

    _uml_img_create_transition_for_state.png

  3. 3. Klicken Sie auf ein bestehendes Element vom Typ Zustand, zusammengesetzter Zustand, Gabelung/Verbindung oder Auswahl.

    Eine Transition wird zwischen den beiden Elementen eingefügt.

Hinweis: Wenn Sie nicht auf ein bestehendes Element klicken, sondern auf einen freien Bereich, wird ein neuer Zustand erzeugt.

  1. Bewegen Sie die Maus über einen Zustand.

    Die Aktionen des Zustands werden angezeigt.

    _uml_img_state_focused.png

  2. Klicken Sie auf _uml_icon_sc_action_do.png.

    Der Zustand wird um eine DO-Aktion/Methode erweitert.

    _uml_img_state_do.png

  3. Bewegen Sie die Maus über einen Zustand mit zugewiesener DO-Aktion.

  4. Klicken Sie auf _uml_icon_sc_action_add.png.

    Der Dialog Neues Aktionsobjekt öffnet sich.

  5. Wählen Sie das Objekt Aktion.

  6. Geben Sie einen Namen und eine Implementierungssprache ein.

    Eine neue Aktion wird unterhalb der POU des Zustanddiagramms eingefügt.

  7. Klicken Sie auf _uml_icon_sc_action_open.png.

    Der Editor der zugehörigen Aktion oder Methode öffnet sich.

Das Aktionsobjekt kann eine Aktion oder Methode sein. Wenn die Aktion eine Methode ist, müssen Sie im Dialog Neues Aktionsobjekt zusätzlich den Rückgabetyp und den Zugriffstyp definieren. Die Zuordnung zum Aktionsobjekt kann in den Eigenschaften des Elements geändert werden.

Ein Zustand kann eine ENTRY-, eine DO- und eine EXIT-Aktion haben:

  • Eine ENTRY-Aktion/Methode kann den Zustand initialisieren. Sie wird einmal ausgeführt, wenn alle eingehenden Transitionen auf TRUE gesetzt sind.

  • Die DO-Aktion/Methode wird solange ausgeführt, wie der Zustand aktiv ist. Die Aktion kann in jeder beliebigen Implementierungssprache programmiert werden. Wenn Sie Zustandsdiagramm verwenden, entsteht eine hierarchische Struktur.

  • Die EXIT-Aktion/Methode soll sicherstellen, dass der Zustand in einem gültigen Zustand verlassen wird. Die EXIT-Aktion wird einmal ausgeführt, wenn alle abgehenden Transitionen des Zustands TRUE sind.

Tipp

Sie können die Aktionen oder Methoden auch in den Eigenschaften des Elements hinzufügen oder ändern.

  1. Erzeugen Sie mehrere Transitionen auf demselben Zustand.

    _uml_img_state_transition_prioritized.png

  2. Selektieren Sie eine der beiden Transitionen.

  3. Ändern Sie die Priorität in den Eigenschaften der Transition.

Wenn ein Zustand mehr als eine abgehende/eingehende Transition hat, dann definieren deren Prioritäten die Reihenfolge der Ausführung. Die Prioritäten sind in einem kleinen Kreis dargestellt.

Sie können die Priorität in den Eigenschaften der Transition ändern.