Hauptinhalt

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

Verwenden der Zustandshierarchie zur Gestaltung einer mehrschichtigen Zustandskomplexität

Um die Komplexität mehrerer Zustände zu verwalten, verwenden Sie eine Hierarchie in Ihrem Stateflow®-Diagramm. Mit Hierarchien können Sie mehrere Ebenen von Unterkomponenten in einem System darstellen.

Beispiel für eine Zustandshierarchie

Dieses Diagramm hat beispielsweise drei Hierarchieebenen. Die Zeichnung eines Zustands innerhalb der Grenzen eines anderen Zustands zeigt an, dass der innere Zustand ein Teilzustand (oder untergeordnet) des äußeren Zustands (oder übergeordnet) ist. Der äußere Zustand ist das übergeordnete Element des inneren Zustands.

Chart the contains three levels of hierarchy.

In diesem Beispiel ist das Diagramm das übergeordnete Element des Zustands Car_done. Der Zustand Car_done ist der übergeordnete Zustand der Zustände Car_made und Car_shipped. Der Zustand Car_made ist auch das übergeordnete Element der Zustände Parts_assembled und Painted. Man kann auch sagen, dass die Zustände Parts_assembled und Painted untergeordnete Elemente des Zustands Car_made sind.

Um die Stateflow-Hierarchie textlich darzustellen, verwenden Sie einen Schrägstrich (/) zur Darstellung des Diagramms und einen Punkt (.) zur Trennung der einzelnen Ebenen in der Hierarchie der Zustände. Die folgende Liste ist eine textliche Darstellung der Hierarchie der Objekte im vorherigen Beispiel:

  • /Car_done

  • /Car_done.Car_made

  • /Car_done.Car_shipped

  • /Car_done.Car_made.Parts_assembled

  • /Car_done.Car_made.Painted

Erstellen von Teilzuständen und Superzuständen

Ein Teilzustand ist ein Zustand, der nur aktiv sein kann, wenn ein anderer Zustand, der als übergeordneter Zustand bezeichnet wird, aktiv ist. Zustände, die Teilzustände haben, werden als Superzustände bezeichnet. Um einen Teilzustand zu erstellen, klicken Sie auf das Zustandswerkzeug und ziehen Sie einen neuen Zustand in den Zustand, der der Superzustand sein soll. Ein Stateflow-Diagramm erstellt den Teilzustand im angegebenen übergeordneten Zustand. Sie können Zustände auf diese Weise in beliebiger Tiefe verschachteln. Um die Zugehörigkeit eines Teilzustands zu ändern, ziehen Sie ihn von seinem aktuellen übergeordneten Zustand im Diagramm und legen Sie ihn in seinem neuen übergeordneten Zustand ab.

Hinweis

Ein übergeordneter Zustand muss so groß sein, dass alle Teilzustände Platz finden. Möglicherweise müssen Sie die Größe eines übergeordneten Zustands ändern, bevor Sie einen neuen Teilzustand hineinziehen können. Sie können die Notwendigkeit eines Zustands mit großer grafischer Größe umgehen, indem Sie einen Superzustand zu einem Unterdiagramm erklären. Siehe Encapsulate Modal Logic by Using Subcharts für weitere Informationen.

Objekte, die ein Zustand enthalten kann

Zustände können alle anderen Stateflow-Objekte enthalten. Die Stateflow-Diagrammnotation unterstützt die Darstellung der Hierarchie grafischer Objekte in Stateflow-Diagrammen mit Begrenzung. Ein Zustand ist ein Superzustand, wenn er andere Zustände enthält. Ein Zustand ist ein Teilzustand, wenn er in einem anderen Zustand enthalten ist. Ein Zustand, der weder ein Superzustand noch ein Teilzustand eines anderen Zustands ist, ist ein Zustand, dessen übergeordnetes Element das Stateflow-Diagramm selbst ist.

Zustände können auch nicht-grafische Daten, Ereignis- und Nachrichtenobjekte enthalten. Die Hierarchie dieser Begrenzung wird im Model Explorer angezeigt. Sie definieren die Daten-, Ereignis- und Nachrichtenbegrenzung, indem Sie das übergeordnete Objekt angeben.

Siehe auch

Themen