Hauptinhalt

Steuern von Zuständen in Diagrammen, die durch Funktionsaufruf-Eingangsereignisse aktiviert werden

Dieses Beispiel zeigt, wie der Zustand eines Stateflow®-Diagramms, das durch ein Funktionsaufruf-Eingangsereignis aktiviert wird, durch Festlegen der Diagrammeigenschaft States When Enabling (Zustände beim Aktivieren) gesteuert werden kann. Diese Eigenschaft bestimmt die Werte von Zuständen und Daten, wenn das Eingangsereignis das Diagramm erneut aktiviert:

  • Held – Die aktuellsten Werte der Zustände und Daten werden beibehalten.

  • Reset – Die Zustände und Daten werden auf ihre Anfangswerte zurückgesetzt.

Die Standardeinstellung bei neuen Diagrammen ist Held. Weitere Informationen finden Sie unter Aktivieren von Stateflow-Diagrammen durch Absenden von Eingangsereignissen.

Beispiel eines Diagramms, das durch ein Funktionsaufruf-Eingangsereignis aktiviert wird

In diesem Modell verwendet das Diagramm Caller das Ereignis E zum Aktivieren und Ausführen des Diagramms Callee.

Das Diagramm Caller enthält zwei Zustände, A und B. Wenn Sie das Ausgangsereignis E an Zustand A binden, gilt Folgendes:

  • Beim Eintreten in A wird das Diagramm Callee aktiviert.

  • Beim Verlassen von A wird das Diagramm Callee deaktiviert.

  • Durch erneutes Eintreten in A wird das Diagramm Callee wieder aktiviert.

Der temporale Logikoperator after ändert den aktiven Zustand alle zehn Zeitschritte, so dass das Diagramm Callee wiederholt aktiviert und deaktiviert wird.

Das Diagramm Callee enthält zwei Zustände, C und D. Bei jedem Ausführen des Diagramms werden die Ausgangsdaten y um eins hochgezählt. Zunächst ist der Zustand C aktiv. Nach einem Zeitschritt ist der Wert von y positiv und das Diagramm nimmt den Übergang zum Zustand D vor.

Diagrammsimulation bei Held als Diagrammeigenschaft

Im Diagramm Callee ist die Eigenschaft States When Enabling auf Held gesetzt. Wenn das Funktionsaufruf-Eingangsereignis das Diagramm bei der Simulation zu den Zeitpunkten $t=20$ und $t=40$ erneut aktiviert, bleibt der Zustand D aktiv und die Ausgangsdaten y behalten ihren aktuellsten Wert bei.

Diagrammsimulation bei Reset als Diagrammeigenschaft

Ändern Sie im Diagramm Callee die Eigenschaft States When Enabling in Reset. Wenn das Funktionsaufruf-Eingangsereignis das Diagramm bei der Simulation zu den Zeitpunkten $t=20$ und $t=40$ erneut aktiviert, wird der Zustand C aktiv und die Ausgangsdaten y werden auf ihren Anfangswert null zurückgesetzt.

Siehe auch

Themen