Vorlesung Automatisierungsprojekte Seite 4/1 Zustandsautomat (endlicher Automat) ein Objekt, dessen...
-
Upload
krimhilde-reckling -
Category
Documents
-
view
110 -
download
2
Transcript of Vorlesung Automatisierungsprojekte Seite 4/1 Zustandsautomat (endlicher Automat) ein Objekt, dessen...
Vorlesung Automatisierungsprojekte Seite 4/1
Zustandsautomat (endlicher Automat)ein Objekt, dessen Verhalten nicht nur durch die momentanen Eingaben, sondern auch durch die vergangenen bestimmt wird.Besteht aus einer endlichen Anzahl innerer Konfigurationen (Zustände).Zustand: Information, die sich aus bisherigen Eingaben ergeben hat und die benötigt wird, um die Reaktion auf noch folgende Eingaben zu bestimmen.
Erstellung eines Automaten
Beispiel: Stellen der Uhrzeit einer Digitaluhr mit 2 Stellknöpfen.Knopf 1: Stellmodus (Normalzeit, h stellen, m stellen, s stellen) toggelnKnopf 2: Einstellen der Zeit gemäß Modus
Schritt 1: Zustände und Ein- und Ausgaben identifizierenSchritt 2: Übergänge festlegen
09:17:46
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/2
Schritt 1: Zustände, Eingaben und Ausgaben identifizierenZustände beim Stellen der Digitaluhr:
Zustand Normalzeit: Nach Einlegen der Batterie (Startsignal)Zustand Stunden stellenZustand Minuten stellenZustand Sekunden stellen
Mögliche Ereignisse:Ereignis Startsignal: Wenn Batterie eingelegt wirdEreignis Knopf 1 gedrücktEreignis Knopf 2 gedrückt
Mögliche Ausgaben:Ausgabe Stunden blinken (Zustandsanzeige für Stellen Stunde)Ausgabe Minuten blinkenAusgabe Sekunden blinkenAusgabe Stunden erhöhen (Um 1 erhöhte Anzeige der Stunden)Ausgabe Minuten erhöhenAusgabe Sekunden stellen (Anzeige von 00 für Sekunden)Ausgabe Initialisierung (Anzeige von 00:00:00)
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/3
Schritt 2: Übergänge festlegen
Wie Übergänge zwischen den Zuständen in Abhängigkeit von Eingaben oder Ereignissen aussehen,welche Ausgaben oder Aktionen ausgelöst werden.
Wenn Startsignal auftritt, dann Übergang in Zustand Normalzeit und Durchführung der Aktion Initialisierung.Wenn Knopf 1 gedrückt wird und Uhr im Zustand Normalzeit ist, dann Aktion Blinken ausführen und Zustand Stunden stellen einnehmen....
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/4
ZustandAnfangs-zustand
(Pseudozustand)
End-zustand
(Pseudozustand)
E/A
Zustandsübergang
Eingabe,Ereignis
Ergebnis,Durchzuf. Aktion
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/5
Beispiel Zustandsdiagramm
Normal-zeit
Min.stellen
Sek.stellen
Std.stellen
Start/Initialisierung
Knopf 1 gedrückt/Stunden blinken
Knopf 2gedrückt/Stundenerhöhen
Knopf 2gedrückt/Minutenerhöhen
Knopf 2gedrückt/Sekundenstellen
Knopf 1 gedrückt/Minuten blinken
Knopf 1 gedrückt/Sekunden blinken
Knopf 1 gedrückt/Normalzeit anzeigen
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/6
ZustandstabelleNur wenn Diagramme zu unübersichtlich
Aktueller Zustand
Ereignis Aktion Folgezustand
Start Initialisierung Normalzeit
Normalzeit Knopf 1 gedrückt
Stunden blinken Stunden stellen
Stunden stellen Knopf 1 gedrückt
Minuten blinken Minuten stellen
Knopf 2 gedrückt
Stunden erhöhen
Stunden stellen
Minuten stellen Knopf 1 gedrückt
Sekunden blinken
Sekunden stellen
Knopf 2 gedrückt
Minuten erhöhen Minuten stellen
Sekunden stellen
Knopf 1 gedrückt
Normalzeit anzeigen
Normalzeit
Knopf 2 gedrückt
Sekunden stellen
Sekunden stellen
Kompakte Darstellung
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/7
Ereignis
Zustand
Start Knopf 1 gedrückt
Knopf 2 gedrückt
Start Initialisierung
Normalzeit
Normalzeit Stunden blinken
Stunden stellen
Stunden stellen Minuten blinken Stunden erhöhen
Minuten stellen Stunden stellen
Minuten stellen Sekunden blinken
Minuten erhöhen
Sekunden stellen
Minuten stellen
Sekunden stellen
Normalz. anzeig. Sekunden stellen
Normalzeit Sekunden stellen
Aktion
Folgezustand
Zustandsautomaten
Zustandsmatrix 1Nur wenn Diagramme zu unübersichtlich
Vorlesung Automatisierungsprojekte Seite 4/8
Zustandsmatrix 2Nur wenn Diagramme zu unübersichtlich
Ereignis
Aktion
Zu Zustand
Von Zustand
Normalzeit Stunden stellen Minuten stellen Sekunden stellen
Start Start
Initialisierung
Normalzeit Knopf 1 gedrückt
Stunden blinken
Stunden stellen Knopf 2 gedrückt Knopf 1 gedrückt
Stunden erhöhen Minuten blinken
Minuten stellen Knopf 2 gedrückt Knopf 1 gedrückt
Minuten stellen Sekunden blinken
Sekunden stellen Knopf 1 gedrückt Knopf 2 gedrückt
Normalzeit anzeigen
Sekunden stellen
Vorteil: alle Kombinationen Zustand/Ereignis: Vollständigkeit prüfbarNachteil: dünn besetzt => Platzbedarf
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/9
Zustandsautomat mit EndzuständenBeispiel: Roboter-Kommando erkennen
o
o
o
DrehgelenkSchulter
BeugegelenkSchulter
BeugegelenkElle
BeugegelenkHand
DrehgelenkHand
GreifgelenkFinger
Steuerkommandos
BSA+/-xxx : Beugen Schulter Absolut (Ausgabe: 1)BSR+/-xxx : Beugen Schulter Relativ (Ausgabe: 2)RSA+/-xxx : Rotieren Schulter Absolut (Ausgabe: 3)RSR+/-xxx : Rotieren Schulter Relativ (Ausgabe: 4)...
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/10
Zustandsautomat mit EndzuständenBeispiel: Roboter-Kommando erkennen
Start
2. Ziffer
1. Ziffer
Vorzei-chen
RelativAbsolut
Schulter
Rotieren
Schulter
Beugen
„B“ „R“
„S“ „S“
„A“/1„R“/2 „A“/3
„R“/4
„-“/-„-“/-„+“
„+“
anderesZeichen
anderesZeichen
anderesZeichen
anderesZeichen
anderesZeichen
Falsches Kommando
anderesZeichen
anderesZeichen
anderesZeichen
anderesZeichen
Ziffer/Ziffer
Ziffer/Ziffer
Ziffer/Ziffer
Ziffer/ZifferZiffer/Ziffer
Steuerkommandos
BSA+/-xxx : Beugen Schulter Absolut (Ausgabe: 1)BSR+/-xxx : Beugen Schulter Relativ (Ausgabe: 2)RSA+/-xxx : Rotieren Schulter Absolut (Ausgabe: 3)RSR+/-xxx : Rotieren Schulter Relativ (Ausgabe: 4)
3 Endzustände (2 Fehlerzustände)
3. Ziffer
Falscher Winkel
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/11
Mealy- und Moore-Automaten
Mealy-Automat:
Ausgaben bzw. Aktionen sind an Zustandsübergänge gekoppelt.• Zustände werden für Zeitintervall eingenommen.• Übergänge finden zu Zeitpunkten statt.• Ausgaben zu diskreten Zeitpunkten, assoziiert mit Übergängen.
Mathematische Beschreibung:Sechstupel M = (Q, , , , , q0)Q: endliche Menge von Zuständen: endliches Eingabealphabet (Menge der Ereignisse): Ausgabealphabet (Menge der Aktionen): Übergangsfunktion (Transition) für Abbildung Q x -> Q (q,a) ist ein (Folge-)Zust. für jeden Zust. q und jedes Eingabesymbol aq0: Anfangszustand (Startzustand): eine Abbildung von Q x -> (q,a) liefert Ausgabe (Aktion) bei Übergang aus q mit Eingabe a
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/12
Mealy- und Moore-Automaten
Moore-Automat:Ausgaben bzw. Aktionen sind an Zustände gebunden.
Aktivitäten (UML): Aktivität beginnt, wenn in den Zustand eingetreten wirdAktivität endet, wenn Zustand verlassen wird
Notation am Beispiel Alarmanlage
Mathematische Definition wie Mealy, außer Abbildung : Abbildung von Q nach , spezifiziert die mit Zustand verknüpfte Ausgabe.
Ausgeschaltet
Aktivdo/ Vorbeugende Maßnahme
Voralarmdo/ Sicherungsmaßnahmen
Alarmdo/ Alarmmaßnahmen
Einschalten AusschaltenAlarmBewegungsmelder
Voralarmausschalten
Alarmausschalten
AlarmGlasbruchmelder
AlarmGlasbruchmelder
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/13
Mealy- und Moore-Automaten
Voraussetzung Moore:Im jeweiligen Zustand genau eine Aktivität für die Zeitdauer des ZustandesStoppuhr-Beispiel nicht direkt als Moore-Automat darstellbar
Äquivalenz:Mealy- und Moore-Automaten sind äquivalent und können jeweils ineinander überführt werden:Moore -> Mealy: An jeden Zustandsübergang wird die Ausgabe gekoppelt, die vom Zustand generiert wird.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/14
Beispiel Drehkranversuch im Automatisierungslabor
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/15
Beispiel Drehkranversuch im Automatisierungslabor
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/16
Beispiel Drehkranversuch im Automatisierungslabor
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/17
Beispiel Drehkranversuch im Automatisierungslabor
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/18
Kran nachlinks drehen
Start Kran absenken
Aufnahme-position
Start-taste
Kranunten
Werkstückaufnehmen
KeinVakuum
Vakuum Werkstückanheben
Krananheben
Kranoben
Kranoben
Kran nachrechts drehen
Ablage-position
Werkstückabsenken
Kran unten
Werkstückablegen
KeinVakuum
FehlerKranoben
Fehler-anzeige
10 Sek.abgelaufen
Kran anheben Kran auf
Kran nach links drehen Kran links
Start Grüne Lampe an
Kran absenken Grüne Lampe aus; Kran ab
Werkstück aufnehmen Vakuum an; warte 500 ms
Werkstück anheben Kran auf
Kran rechts drehen Kran rechts
Werkstück absenken Kran ab
Werkstück ablegen Vakuum aus
Fehler Vakuum aus; Kran auf
Fehleranzeige Weisse Lampe blinken
Zustand Aktivität do/
Not-Aus
Not-Aus Not-Aus-Aktivität
Diagramm des Drehkran-Versuchsim Automatisierungslaboraus Platzgründen nicht in normgerechter Notation:Darstellung als Moore-Automat, aberAktivitäten sind bis auf „Fehler-anzeige“ eigentlich Aktionen.Kästen nicht abgerundet.Zustandsbezeichnungen wie Akti-vitätsbezeichnungen.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/19
Akt. Zustand Ereignis Aktion Folgezustand
Kran anheben Kran oben Kran auf Kran nach links drehen
Kran nach links drehen
Aufnahmeposition Kran links Start
Start Starttaste Grüne Lampe an Kran absenken
Kran absenken Kran unten Grüne Lampe aus; Kran ab
Werkstück aufnehmen
Werkstück aufnehmen
Vakuum Vakuum an; warte 500 ms
Werkstück anheben
Kein Vakuum Fehler
Werkstück anheben
Kran oben Kran auf Kran rechts drehen
Kran rechts drehen Ablageposition Kran rechts Werkstück absenken
Werkstück absenken
Kran unten Kran ab Werkstück ablegen
Werkstück ablegen Kein Vakuum Vakuum aus Kran anheben
Fehler Kran oben Vakuum aus; Kran auf
Fehleranzeige
Fehleranzeige 10 s abgelaufen Weisse Lampe blinken
Kran anheben
Zustandstabelle für den Drehkranversuch im Automatisierungslabor
Zustandsmatrizen auf einem Blatt nicht darstellbar (11x12x2 bzw. 11x11x2 Elemente)
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/20
Harel-Automaten
Konzeptionelle Erweiterung der Zustandsautomaten:
• Hybride ZustandsautomatenKombination von Mealy- und Moore-Automaten
• Bedingte ZustandsübergängeAuslösung durch Ereignis in Kombination mit einem Wächter (Bedingung)
• Hierarchische ZustandsautomatenSchachtelung von Zuständen (Unterzustände, Substates)
• Zustände mit GedächtnisRückkehr in den zuletzt eingenommenen Unterzustand eines Oberzustandes
• Nebenläufige ZuständeEin Oberzustand besteht aus Unterzuständen, in denen sich das System gleichzeitig befindet.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/21
Harel-Automaten
UML-Notation
Zustand 1 Zustand 2do/ Aktivität
Ereignis 1
Zustand 4Zustand 3Entry / Aktion 3Exit / Aktion 4
Ereignis 3 [Wächter]
Ereignis 4
AnfangszustandZustandsübergangbzw. Transition
ImplizitesEreignis
Ereignis 2 / Aktion 2
Endzustand Bedingter Übergang (guarded transition)Zustandsübergang findet nur dann statt, wenn zumEintrittszeitpunkt des Ereignisses die Wächterbedingung zutrifft.
Ereignisbezeichner
Moore
Mealy
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/22
Harel-Automaten
Kleines Beispiel für bedingten Übergang: Parkkarten-Zahlautomat
Bereit
Wartet auf Geld
Karte eingeschoben / Betrag anzeigen
Geld eingeworfen [reicht aus] / Karte ausgeben
Geld eingeworfen [reicht nicht aus] /Restbetrag anzeigen
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/23
Harel-Automaten: Aktivitäten und AktionenAktion:
Mit Zustandsübergang verbundenSofortige AusführungKein Zeitintervall (idealisiert)
Aktivität:Mit Zustand verbundenZeitintervallVorzeitig unterbrechbar
Aktionen in Zuständen:Entry action: Beim Übergang in den Zustand (äquivalent zur Beinhaltung der Aktion in allen Transitionen in diesen Zustand)Exit action: Beim Übergang aus dem Zustand (äquivalent zur Beinhaltung der Aktion in allen Transitionen aus diesem Zustand)
Zustand 3do/ Aktivität
entry / Aktion 1exit / Aktion 2
Ereignis 1
Ereignis 4Ereignis 2
Ereignis 3
Zustand 3do/ Aktivität
Ereignis 1 / Aktion 1
Ereignis 4 / Aktion 2Ereignis 2 / Aktion 1
Ereignis 3 / Aktion 2
äquivalent
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/24
Beispielhafte Umsetzung eines Automaten im Automatisierungslabor in AWL
Einfacher Automat:
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/25
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/26
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/27
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/28
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/29
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/30
Harel-Automaten: Hierarchische Automaten
A
B
C
a
b
b
c
d
A
B
C
a
c
d
D
Superstate Substate
b
Ohne Hierarchie Mit Hierarchie
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/31
Harel-Automaten: Hierarchische AutomatenBeispiel Roboter-Kommando Erkennung Start
2. Ziffer
1. Ziffer
Vorzei-chen
RelativAbsolut
Schulter
Rotieren
Schulter
Beugen
„B“ „R“
„S“ „S“
„A“/1
„R“/2 „A“/3
„R“/4
„-“/-„-“/-„+“
„+“
anderesZeichen
Falsches Kommando
Ziffer/Ziffer
Ziffer/Ziffer
Ziffer/Ziffer
Ziffer/ZifferZiffer/Ziffer
anderesZeichen
Falscher Winkel
3. Ziffer
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/32
Harel-Automaten: Hierarchische Automaten
UML-Regeln:
• Jede Verfeinerung besitzt genau einen Anfangszustand.
• Ein Zustandsübergang in einen verfeinerten Zustand entspricht dem Zustandsübergang in den Anfangszustand des verfeinerten Zustands.
• Wird ein verfeinerter Zustand durch einen Zustandsübergang verlassen, dann wird jeder Unterzustand –egal auf welcher Verfeinerungsstufe- verlassen und es werden die entsprechenden exit-Aktionen durchgeführt.
• Wird ein Zustand mit einem rekursiven Zustandsübergang verfeinert, dann wird bei einem erneuten Zustandseintritt der Anfangszustand eingenommen
und die entry-Aktion durchgeführt.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/33
Harel-Automaten: Hierarchische Automaten
Top-Down-Entwicklung des Zustandsmodells:Modellierung von Oberzuständen („Superstates“)
Beispiel: Modellierung Uhr stellenErweiterung um Datumsanzeige 09:17:46 DI:30:11Knopf 3: Datum/Uhrzeit
Uhrzeit
Datum
Knopf 3 gedrückt /Datum anzeigen
Knopf 3 gedrückt /Normalzeit anzeigen
Von jedem Unterzustand in Uhrzeit wird inden Anfangszustand von Datum übergegangenund umgekehrt.
Uhrzeit
Datum
Knopf 3 gedrückt /Datum anzeigen
Knopf 3 gedrückt /Normalzeit anzeigen
Übergang von Uhrzeit nach Datum nur auseinem bestimmten Unterzustand von Uhrzeit,desgleichen für Datum nach Uhrzeit.
Variante 1 Variante 2
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/34
Harel-Automaten: Hierarchische AutomatenErweiterung „Uhr stellen“
Normal-zeit
Min.stellen
Sek.stellen
Std.stellen
Start/Initialisierung
Knopf 1 gedrückt/Stunden blinkenKnopf 2
gedrückt/Stundenerhöhen
Knopf 2 gedrückt /Minuten erhöhen
Knopf 2gedrückt/Sekundenstellen
Knopf 1 gedrückt/Minuten blinken
Knopf 1 gedrückt/Sekunden blinken
Knopf 1 gedrückt/Normalzeit anzeigen
Datum
Tagstellen
Monatstellen
Wo.-Tagstellen
Knopf 1 gedrückt/Wo.-Tag blinkenKnopf 2
gedrückt/Wo.-Tagerhöhen
Knopf 2 gedrückt /Tag erhöhen
Knopf 2gedrückt/Monaterhöhen
Knopf 1 gedrückt/Tag blinken
Knopf 1 gedrückt/Monat blinken
Knopf 1 gedrückt/Datum anzeigen
Knopf 3 gedrückt / Datum anzeigen Knopf 3 gedrückt / Normalzeit anzeigen
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/35
Harel-Automaten: Hierarchische AutomatenTop-Down-Entwicklung des Zustandsmodells:Modellierung von Oberzuständen („Superstates“)
„Stubbed transition“
1. Übergang in anderen Oberzustand nur aus bestimmten Unterzuständen des aktuellen Oberzustands
2. Übergang aus dem aktuellen Oberzustand nur in bestimmte Unterzustände des neuen Oberzustands
Beispiel Roboter-Kommando Erkennung
Kommando
Winkel
„A“/1 „A“/3 „R“/2 „R“/4
AnderesZeichen
AnderesZeichen
Falsches Kommando
Falscher Winkel
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/36
Harel-Automaten: Hierarchische Automaten
Erlaubte Zustandsübergänge
Zwischen Zuständen gleicher Ebenez.B. von D nach E
In einen Unterzustand,z.B. von A nach D
Aus einem Unterzustand,z.B. von E nach A
In einen Oberzustand,z.B. von A nach B(dessen Anfangszustand C)
Aus einem Oberzustand,z.B. von B nach ABei Ereignis b wird jeder der Unterzustände C, D oder E verlassen.
A
C
D E
B
a
b
c
d
e
f
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/37
Hierarchische Automaten: Einfaches Beispiel
Drehkran (Ausschnitt)
Fehler
Fehleranzeige
Weisse Lampe an
Weisse Lampe aus
T5: 0.5sT6: 0.5s
Kran oben
Kran anhebenT4: 10s
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/38
Beispiel
„a“ erstmals: Übergang in Unterzustand „C“Dann „c“: Übergang in Unterzustand „D“Dann „b“: Übergang in Zustand „A“Dann „a“: Übergang in Unterzustand „D“ (letzter Unter-
zustand von B)
Harel-Automaten: Zustände mit Gedächtnis
Eigenschaft: Bei Übergang in einen Oberzustand mit UnterzuständenRückkehr in den zuletzt eingenommenen Zustand.
A C D
Ba
b
cd
HGedächtnis-Markierung (History)
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/39
Harel-Automaten: Nebenläufige ZuständeEigenschaft: Ein Oberzustand kann aus Unterzuständen bestehen, in denen sich das
System gleichzeitig befindet.
Beispiel
Oberzustand Y mit nebenläufigen Komponenten A und DEintritt in Y: System befindet sich gleichzeitig in B und F: (B,F).„a“: Simultane Übergänge B nach C und F nach G: (B,F) -> (C,G).„b“: (B,F) -> (B,E)„c“: (in G) Übergang nur, wenn Komponente D in Zustand G.
Nebenläufigkeitsmarkierung
B
C
E
a c(in G)
G
F
b
e
a
d
A D
Y
Synchr.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/40
SelbsttestInitialisierungentry/ Display Reset do/ Parameter ladenexit/ a/c-Typ anzeigen
Suchphaseentry/ ok anzeigendo/ a/c suchen
Trackingphasedo/ Pos messenund anzeigen;v messen;Status anzeigen(Stop, too short,too far)exit/ on-blockMeldung, Bild
FlugzeugtypfehlerEntry/ Fehlermeldungdo/ Stop anzeigenExit/Display Reset
Selbsttestfehler
Flugzeug det. [nicht gemeldeter Typ]
Flugzeug det. [gemeldeter Typ]
vFlugzeug < 0
Chocks on
Trackingfehler
On-block phasedo/ Stopanzeigen;Pos.messen;v messen;exit/ Display Reset
Chocks offPushback-Detektiondo/ Pos. messen;v messenExit/ Pushback melden
WartephaseInit
Parametergeladen
t > sched.arr. time
Markenerkennungzu schlecht
Markenerkennung ok
Fehlerquittierung
ÜberfälligfehlerEntry/ Fehlermeldungdo/ Stop anzeigenExit/Display Reset
a/c lost
Beispiel DGS
Parameter: a/c-Modell, sched. arr. Time, Gate Modell
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/41
Übung 1
U1: Zeichne das Zustandsdiagramm des Stapelmagazin-Versuches des Automatisierungslabors.
U2: Entwickle Stoppuhr mit zwei Knöpfen, die nicht gleichzeitig gedrückt werden können. Die Stoppuhr soll folgende Funktionen haben.
1. Stoppuhr kann ein- und ausgeschaltet werden2. Stoppuhr kann gestartet und gestoppt werden. Nach Stopp wird die
zwischen Start und Stopp vergangene Zeit angezeigt.3. Nach dem Start kann eine Zwischenzeit genommen werden, während
die Uhr im Hintergrund weiterläuft. Dann kann entweder die Zwischenzeit oder die seit Start abgelaufene Gesamtzeit angezeigt werden. Ferner kann die im Hintergrund weiterlaufende Zeit gestoppt werden, ohne dass sich die Anzeige ändert.
4. Die zwischen Start und Stopp vergangene Zeit kann bei gestoppter Uhr und bei Anzeige der Gesamtzeit auf Null zurückgesetzt werden.
U3: Entwirf die Zustandsübergangstabelle und die beiden Arten der Zustandsmatrizen für das Zustandsübergangsdiagramm aus U1.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/42
Übung 1
Lösung:
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/43
Übung 2
Modellieren Sie folgende vereinfachte Aufzugsteuerung als Harel-Automat: Der Aufzug fährt zwischen zwei Stockwerken S1 und S2. Dort gibt es jeweils einen Druckknopf D1 und D2, mit dem der Aufzug angefordert werden kann sowie eine Tür T1 bzw. T2 zum Betreten des Aufzugs mit jeweils einer Lichtschranke L1 und L2, welche Menschen in der Tür detektieren, und den Sensoren T1z bzw. T2z und T1o bzw. T2o, der signalisiert, ob die jeweilige Tür zu oder offen ist. In jedem Stockwerk ist ein Niveausensor N1 bzw. N2, der ein Signal gibt, wenn der Kabinen- und der Stockwerkboden auf gleicher Höhe sind. In der Aufzugkabine befindet sich ein Druckknopf F, mit dem die Fahrt veranlasst werden kann. In Bereitschaft steht der Aufzug mit geöffneter Tür in S1. Wird F gedrückt, wird die Tür geschlossen und der Aufzug fährt danach nach S2. Nach Erreichen von S2 wird die Tür geöffnet. Wird danach wiederum F gedrückt, läuft der Vorgang umgekehrt ab. Sonst wartet der Aufzug mit geöffneter Tür in S2.Steht der Aufzug mit geöffneter Tür in einem Stockwerk und wird dann der Anforderungs-Druckknopf des anderen Stockwerks gedrückt, läuft der Vorgang analog wie oben ab.Wenn die Lichtschranke einer schließenden Tür anspricht, wird der Schließvorgang abgebrochen und die Tür wieder geöffnet.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/44
Übung 2
Lösung:
Wartet in S1
Wartet in S2
Tür1 schließt Tür1 öffnet
Aufzug fährt nach S2
Tür2 öffnet
F gedrückt
D2 gedrückt
L1T1o
T1z
N1
T2o
Tür2 schließtTür2 öffnet
Aufzug fährt nach S1
Tür 1 öffnet
F gedrücktD1 gedrückt
L2T2o
T2z
N2
T1o
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/45
Übung 3Modellieren Sie das Softwaresystem für die Steuerung einer automatischen Personenschleuse als Zustandsautomaten:
Die Schleuse soll im Normalfall durch eine einzige Person von „außen“ nach „innen“ durchquert werden. Der Boden von Bereich „A“ ist mit einer Kontaktmatte belegt, die ein Signal gibt, wenn eine Person darauf steht. Der Boden des Bereichs „B“ besteht statt dessen aus einer Waage, mit der anhand einer durch Wartungspersonal einstellbaren Gewichtsschwelle entschieden werden kann, ob sich wirklich nur eine Person in Bereich „B“ befindet.
Im Bereich „B“ ist ein Ausweisleser untergebracht, der die Ausweisdaten der Person in „B“ liest und an ein Leitsystem weitergibt. Das Leitsystem gibt ein Signal zurück, ob der Ausweis zum Eintreten nach „innen“ berechtigt. Ferner ist im Bereich „B“ eine Anzeige angebracht, die „Eintreten“, „Ausweis“, „zurück“ und „weiter“ anzeigen kann, um zum Betreten, zur Eingabe des Ausweises oder zum Verlassen der Schleuse nach „außen“ oder nach „innen“ aufzufordern.Das zu modellierende Softwaresystem soll durch Öffnen und Schließen der Türen sicherstellen, dass nur eine einzige berechtigte Person von „außen“ nach „innen“ passieren kann.Grundzustand: „A“ und „B“ sind leer, Tür 1 und Tür 2 sind zu, Die Anzeige zeigt „Eintreten“.Normaler Ablauf: Eine Person betritt „A“. Dann öffnet Tür 1, wenn außerdem „B“ leer und Tür 2 geschlossen ist. Person betritt „B“, Tür 1 schließt. Ist der Gewichtswert kleiner als der Schwellwert, zeigt die Anzeige „Ausweis“ an. Wird nach 30 Sekunden der Ausweis in den Leser gegeben, erfolgt das Auslesen und die Übertragung der Ausweisdaten an das Leitsystem. Ist die Rückmeldung durch das Leitsystem positiv, wird Tür 2 geöffnet und die Anzeige zeigt „weiter“ an. Hat die Person „B“ verlassen, wird Tür 2 geschlossen und die Anzeige auf „Eintreten“ geschaltet. Ausnahmeablauf: Wie zuvor bis zur Gewichtsprüfung. Gewicht der Person in B ist größer als der Schwellwert oder das Ergebnis der Ausweisprüfung ist negativ: Tür 1 öffnet und die Anzeige zeigt „zurück“. Nach Verlassen von „B“ wird Tür 1 geschlossen und es wird „Eintreten“ angezeigt.
Zustandsautomaten
Vorlesung Automatisierungsprojekte Seite 4/46
Übung 3: Lösung
Zustandsautomaten