Technische Systeme müssen auf Ereignisse reagieren. Dazu benötigen sie eine Steuerlogik, die den zu automatisierenden Prozess beim Auftreten solcher Ereignisse in gewünschter Weise beeinflusst. Man spricht auch von reaktiven Systemen. Ist das dynamische Verhalten eines technischen Prozesses ursächlich sowohl durch zeitkontinuierliches Verhalten, meist beschrieben durch Differentialgleichungen, als auch durch reaktives ereignisgetriebenes Verhalten geprägt, so liegt ein gemischt kontinuierlich-diskretes System, ein sog. hybrides System vor. Beispiele hybrider Systeme sind gesteuerte Produktionsprozesse, Regelungen mit veränderlicher Struktur, Verkehrssysteme – im Grunde genommen alle hierarchisch organisierten Systeme.
Ein hybrides System besteht aus einem oder mehreren kontinuierlichen zeitgetriebenen Teilsystemen und mindestens einem bzw. mehreren diskreten ereignisgetriebenen Teilsystemen. Stateflow ist ein Zusatz zu Simulink, um hybride Systeme beschreiben und mittels animierter Simulation analysieren zu können. In Stateflow wird ein ereignisgetriebenes System graphisch und dessen Schnittstelle zu einem mit Simulink-Blöcken beschriebenen zeitgetriebenen System textuell spezifiziert. Formal basiert Stateflow auf (erweiterten) Zustandsautomaten und orientiert sich an der von Harel eingeführten Notation für Statecharts. Statecharts schließen die üblichen Modellarten zur Beschreibung diskreter Systeme wie Endliche Automaten, Markov-Ketten, Petri-Netze und Warteschlangen ein.
Inhaltsverzeichnis
1 Einleitung
2 Konstruktion und Simulation eines einfachen Simulink/Stateflow-Modells
2.1 Der Editor
2.2 Der Explorer
2.3 Interpretation von Zustandsdiagrammen
2.4 Simulation und Animation von Zustandsdiagrammen
3 Modellbildung mit Stateflow
3.1 Sicht und Modellbildung
3.2 Sequentielle Zustände (Exclusive Decomposition)
3.3 Parallele Zustände (Parallel Decomposition)
3.4 Hybride Systeme (State Events)
4 Notation und Semantik von Stateflow
4.1 Action Language
4.2 Inner Transitions
4.3 Debugger
5 Beispielhafte Anwendung von Stateflow als Entwurfswerkzeug
5.1 Beschreibung der Anlage und Problemformulierung
5.2 Steuerungsentwurf
5.2.1 Modellierung der ungesteuerten Anlage
5.2.2 Modellierung der gesteuerten Anlage
5.3 Test und Implementierung
Zielsetzung & Themen
Das Hauptziel dieser Arbeit ist es, eine praxisnahe Einführung in die Modellbildung und Simulation von ereignisgetriebenen Systemen mit dem Werkzeug Stateflow zu geben. Dabei wird die Forschungsfrage verfolgt, wie komplexe, reaktive technische Systeme durch die Kombination von kontinuierlicher Modellierung in Simulink und diskreter, ereignisbasierter Steuerungslogik in Stateflow abgebildet, simuliert und validiert werden können.
- Grundlagen der Modellbildung mit Stateflow und Zustandsautomaten
- Systematische Vorgehensweisen beim Steuerungsentwurf
- Methoden zur Modellierung von hybriden Systemen
- Umgang mit parallelen Zuständen und Synchronisationsmechanismen
- Debugging und Validierung von Zustandsdiagrammen in der Simulation
Auszug aus dem Buch
1 Einleitung
Technische Systeme müssen auf Ereignisse reagieren. Dazu benötigen sie eine Steuerlogik, die den zu automatisierenden Prozess beim Auftreten solcher Ereignisse in gewünschter Weise beeinflusst. Man spricht auch von reaktiven Systemen. Ist das dynamische Verhalten eines technischen Prozesses ursächlich sowohl durch zeitkontinuierliches Verhalten, meist beschrieben durch Differentialgleichungen, als auch durch reaktives ereignisgetriebenes Verhalten geprägt, so liegt ein gemischt kontinuierlich-diskretes System, ein sog. hybrides System vor. Beispiele hybrider Systeme sind gesteuerte Produktionsprozesse, Regelungen mit veränderlicher Struktur, Verkehrssysteme – im Grunde genommen alle hierarchisch organisierten Systeme.
Ein hybrides System besteht aus einem oder mehreren kontinuierlichen zeitgetriebenen Teilsystemen und mindestens einem bzw. mehreren diskreten ereignisgetriebenen Teilsystemen. Stateflow ist ein Zusatz zu Simulink, um hybride Systeme beschreiben und mittels animierter Simulation analysieren zu können. In Stateflow wird ein ereignisgetriebenes System graphisch und dessen Schnittstelle zu einem mit Simulink-Blöcken beschriebenen zeitgetriebenen System textuell spezifiziert. Formal basiert Stateflow auf (erweiterten) Zustandsautomaten und orientiert sich an der von Harel [1] eingeführten Notation für Statecharts. Statecharts schließen die üblichen Modellarten zur Beschreibung diskreter Systeme ein. Einen guten Überblick über die gebräuchlichsten Modellarten, wie Endliche Automaten, Markov-Ketten, Petri-Netze und Warteschlangen, vermittelt [2].
Stateflow ist als eine Erweiterung von Simulink konzipiert, wobei eine benutzerfreundliche Oberfläche und eine durchgängige Unterstützung beim Entwurf von reaktiven Systemen im Vordergrund stehen [3]. Insbesondere unterstützt Stateflow die Modellbildung von hierarchisch aufgebauten ereignisgetriebenen Systemen. So können größere Modelle strukturiert, d.h. bottom-up und/oder top-down, entwickelt werden. Die Interaktion zwischen den ereignisgetriebenen Teilsystemen beruht auf der synchronen Kooperation [4], [5]. Überdies können mit Stateflow Entscheidungssituationen graphisch beschrieben werden in einer an Flussdiagrammen orientierten Form, die auch den Aufruf von MATLAB- und C-Funktionen zulässt. Schließlich kann aus der Modellbeschreibung mit Stateflow Coder und Real-Time Workshop ausführbarer Code generiert werden. Dadurch wird die Konsistenz zwischen beschriebenem Modell bzw. simuliertem Verhalten und implementiertem Code garantiert.
Zusammenfassung der Kapitel
1 Einleitung: Dieses Kapitel motiviert die Notwendigkeit von Stateflow für die Beschreibung reaktiver und hybrider Systeme und ordnet das Werkzeug in den Kontext der Modellbildung ein.
2 Konstruktion und Simulation eines einfachen Simulink/Stateflow-Modells: Hier wird der Einstieg in die Arbeitsweise mit Stateflow durch die Konstruktion einer einfachen Stoppuhr praktisch demonstriert.
3 Modellbildung mit Stateflow: Dieses Kapitel erläutert fortgeschrittene Konzepte der Modellbildung, wie hierarchische, sequentielle und parallele Zustände sowie hybride Modellierungsansätze.
4 Notation und Semantik von Stateflow: Hier werden Details der Action Language, spezielle Transitionstypen und die Nutzung des Debuggers zur Korrekturprüfung behandelt.
5 Beispielhafte Anwendung von Stateflow als Entwurfswerkzeug: Anhand einer konkreten Fallstudie einer Druckkesselanlage wird ein systematischer Entwurfsprozess für eine Steuerung illustriert und der Übergang zur Implementierung aufgezeigt.
Schlüsselwörter
Stateflow, Simulink, Modellbildung, Simulation, Hybride Systeme, Zustandsautomaten, Statecharts, Steuerungsentwurf, Ereignissteuerung, Synchronisation, Parallele Zustände, Action Language, Debugger, Hardware-in-the-Loop, Reaktive Systeme
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit der methodischen Modellbildung und Simulation von ereignisgetriebenen sowie hybriden technischen Systemen unter Verwendung von MATLAB, Simulink und Stateflow.
Was sind die zentralen Themenfelder?
Die zentralen Themen umfassen den Entwurf von Steuerungslogik, die Abbildung von Zustandsübergängen, die Synchronisation paralleler Prozesse und die Simulation des Systemverhaltens.
Was ist das primäre Ziel oder die Forschungsfrage?
Das Ziel ist die Vermittlung der Fähigkeiten, komplexe Steuerungsprobleme systematisch zu strukturieren und diese als ausführbare Stateflow-Diagramme zu modellieren und zu validieren.
Welche wissenschaftliche Methode wird verwendet?
Die Arbeit nutzt den modellbasierten Entwurf mittels Zustandsautomaten (Statecharts) und kombiniert diese mit physikalischer Modellierung, um gemischt kontinuierlich-diskrete Systeme abzubilden.
Was wird im Hauptteil behandelt?
Der Hauptteil gliedert sich in die Einführung in das Werkzeug, die Modellierungskonzepte (Hierarchie, Parallelität), die formale Notation und einen anwendungsorientierten Entwurfsprozess für eine Steuerungsaufgabe.
Welche Schlüsselwörter charakterisieren die Arbeit?
Die wichtigsten Begriffe sind Stateflow, Modellbildung, Hybride Systeme, Zustandsautomaten, Steuerungsentwurf und Simulation.
Wie unterscheidet Stateflow zwischen verschiedenen Transitionstypen?
Stateflow nutzt eine präzise Syntax in Transition Labels, die Ereignisse, Bedingungen, Condition Actions und Transition Actions umfasst, um unterschiedliche Ausführungszeitpunkte und logische Abhängigkeiten zu definieren.
Welche Rolle spielt die "Update-Methode" bei der Simulation?
Die Update-Methode (z.B. Triggered, Inherited oder Sampled) legt fest, zu welchen Zeitpunkten der Solver das Zustandsdiagramm auswertet, was entscheidend für die korrekte Abbildung des Zeitverhaltens ist.
Was ist der Vorteil einer "Parallel Decomposition"?
Durch die parallele Zerlegung können unabhängige Teilprozesse modelliert werden, ohne dass eine "kombinatorische Explosion" der Zustandsanzahl auftritt, was die Übersichtlichkeit und Simulationseffizienz steigert.
- Citar trabajo
- Prof. Dr. Urban Brunner (Autor), 2009, Einführung in die Modellbildung und Simulation ereignisgetriebener Systeme mit Stateflow, Múnich, GRIN Verlag, https://www.grin.com/document/129403