Main Content

Die Übersetzung dieser Seite ist veraltet. Klicken Sie hier, um die neueste Version auf Englisch zu sehen.

Erstellen einer Hierarchie zur Verwaltung komplexer Anlagen

Um mehrere Komplexitätsebenen in Ihrem System zu steuern, erstellen Sie eine Hierarchie von verschachtelten Zuständen in Ihrem Stateflow®-Diagramm, indem Sie einen oder mehrere Zustände innerhalb der Grenzen eines anderen Zustands platzieren.

Der äußere Zustand ist der übergeordnete Zustand (oder Superzustand) der inneren Zustände. Die inneren Zustände sind untergeordnete Zustände (oder Unterzustände) des äußeren Zustands. Die Inhalte des Superzustands verhalten sich wie ein kleineres Diagramm. Wenn der Superzustand aktiv wird, wird einer seiner Unterzustände ebenfalls aktiv. Wenn der Superzustand inaktiv wird, werden alle seine Unterzustände ebenfalls inaktiv.

Modellierung eines Mediaplayers

In diesem Beispiel wird ein Mediaplayer modelliert, der aus einem FM-Radio und einem Internet-Streaming-Player besteht. Während der Simulation bedienen Sie den Mediaplayer mit Hilfe der Schaltflächen und Drehknöpfe auf der Benutzeroberfläche der Mediaplayer-App.

So starten Sie den Mediaplayer:

  1. Öffnen Sie das Simulink-Modell und klicken Sie auf Run. Die Mediaplayer-App wird geöffnet. Der Mediaplayer ist zunächst ausgeschaltet. Oben in der App zeigt die Statusanzeige des Mediaplayers die Meldung Standby (Off) an.

  2. Drehen Sie den Komponentenauswahlknopf auf Stream. Die Statusmeldung zeigt kurz Connecting to Handel's Greatest Hits an. Nach einer kurzen Pause wechselt die Statusmeldung zu Playing: Handel's Greatest Hits und die Musikwiedergabe beginnt.

  3. Klicken Sie auf die Schaltfläche „Fast Forward“. Die Musik stoppt und Zwitschergeräusche beginnen. Die Statusmeldung wechselt zu Forward >> Handel's Greatest Hits. Der Name des Streams scrollt auf dem Display vorwärts. Um den normalen Wiedergabemodus wieder aufzunehmen, klicken Sie auf die Schaltfläche „Play“.

  4. Klicken Sie auf die Schaltfläche „Reverse“. Ein Zwitschergeräusch ertönt und die Statusmeldung wechselt zu Reverse >> Handel's Greatest Hits. Der Name des Streams scrollt auf dem Display rückwärts. Um den normalen Wiedergabemodus wieder aufzunehmen, klicken Sie auf die Schaltfläche „Play“.

  5. Geben Sie im Feld „Stream Name“ den Namen eines neuen Streams ein und klicken Sie auf Connect. Versuchen Sie zum Beispiel, eine Verbindung zu den Streams Training Deep Networks oder Fun With State Machines herzustellen.

  6. Drehen Sie den Komponentenauswahlknopf auf Radio. Die Statusmeldung zeigt Playing: 99.5 FM an. Drehen Sie den FM-Radiosender-Drehknopf, um einen anderen Sender auszuwählen.

  7. Schließen Sie die Mediaplayer-App, um die Simulation zu beenden.

Implementieren des Verhaltens mithilfe der Zustandshierarchie

Dieses Beispiel implementiert den Mediaplayer, indem es sich jeweils auf eine einzelne Aktivitätsebene konzentriert. Beispielsweise sind die folgenden Bedingungen erforderlich, damit der Streaming-Player in den Vorspulmodus (Fast-Forward) wechselt:

  1. Sie schalten den Mediaplayer ein.

  2. Sie wählen den Streaming-Player.

  3. Sie beginnen mit der Wiedergabe eines Streams.

  4. Sie klicken auf die Schaltfläche „Fast Forward“.

Das Modell verwendet eine Hierarchie von verschachtelten Zuständen, um jede Bedingung einzeln zu berücksichtigen. Der Model Explorer zeigt zum Beispiel die Hierarchie der Zustände im Mode Manager-Diagramm. Zum Öffnen des Model Explorer wählen Sie auf der Registerkarte Modeling die Option Model Explorer aus.

Auf der obersten oder äußersten Ebene der Hierarchie verfügt das Mode Manager-Diagramm über zwei Zustände, die die Aktivität des Mediaplayers steuern:

  • Off ist aktiv, wenn Sie den Mediaplayer ausschalten.

  • On ist aktiv, wenn Sie den Mediaplayer in den Streaming- oder Radiomodus setzen.

Die Unterzustände von On steuern die Komponenten des Mediaplayers:

  • Stream ist aktiv, wenn Sie den Streaming-Player wählen.

  • Radio ist aktiv, wenn Sie das FM-Radio wählen.

Die Unterzustände von Stream steuern die Aktivität des Streaming-Players:

  • Play ist aktiv, wenn Sie einen Stream abspielen.

  • Pause ist aktiv, wenn Sie den Streaming-Player pausieren.

Die Unterzustände von Play steuern die Wiedergabemodi für den Streaming-Player:

  • Normal ist im normalen Wiedergabemodus aktiv.

  • Reverse ist aktiv, wenn Sie auf die Schaltfläche „Reverse“ klicken.

  • FastForward ist aktiv, wenn Sie auf die Schaltfläche „Fast Forward“ klicken.

In dieser Abbildung ist das Layout der Zustände im Diagramm dargestellt.

Untersuchung des Beispiels

Das Modell in diesem Beispiel enthält zwei weitere Stateflow-Diagramme:

  • App Interface verwaltet die Schnittstelle mit der MATLAB-App und leitet Eingaben an die Diagramme Mode Manager und Stream Player weiter.

  • Stream Player empfängt den Ausgang von den Diagrammen App Interface und Mode Manager und simuliert das interne Verhalten des Streaming-Players.

Während der Simulation können Sie untersuchen, wie die einzelnen Diagramme auf Interaktionen mit der App „Media Player“ reagieren. Zum schnellen Umschalten zwischen den Diagrammen verwenden Sie die Registerkarten am oberen Rand des Stateflow-Editors.

Verwandte Themen