Automatentheorie, Automatentabelle
Automatentheorie, Automatentabelle
Hallo,
vielleicht kann mir jemand helfen die Automatentabelle aufzustellen, ich hab' da 'nen hänger..
Es geht hierbei um eine einspurige Ein-/Ausfahrt für ein Parkhaus, das mit 2 Lichtschranken überwacht wird.
LS0 = x0 und LS1 = x1 (LS = Lichtschranke).
x0 und x1 sind die Eingangssignale.
Wenn die Lichtschranken nicht unterbrochen sind beträgt ihr logischer Zustand "1", bei Unterbrechung demzufolge "0".
Für die Autos die REIN und RAUS fahren soll je 1 getrenntes Zählsignal abgeleitet werden.
Anbei eine kleine Skizze zur Veranschaulichung.
* mir ist klar, dass wenn kein Auto im Bereich der LS ist das
x0x1 = 11
* für den Fall der Einfahrt in das Parkhaus
x0x1 = 01 danach x0x1 = 00 danach x0x1 = 10 und wenn es ins Parkhaus eingefahren ist x0x1 = 11
* für den Fall der Ausfahrt vom Parkhaus
x0x1 = 10 danach x0x1 = 00 danach x0x1 = 01 und dann wenn es wieder auf der Straße ist x0x1 = 11
* durch den Abstand der Lichtschranken bedingt (L_LS < L_Auto) wenn das Auto zwischen beiden Lichtschranken steht
x0x1 = 00
Die Ausgangssignalen sollen sein:
einfahrendes Auto: y1 = 1
ausfahrendes Auto: y2 = 1
keine Ein-/Ausfahrt: y0 = 1
Allerdings komm' ich mit dem Aufstellen der Automatentabelle (Zustände, Ausgangssignale) nicht so ganz klar.
Kann mir jemand helfen?
Meiner Meinung nach müsste es sich um einen MOORE-Automaten handeln. Liege ich da richtig?
mfg
sven
vielleicht kann mir jemand helfen die Automatentabelle aufzustellen, ich hab' da 'nen hänger..
Es geht hierbei um eine einspurige Ein-/Ausfahrt für ein Parkhaus, das mit 2 Lichtschranken überwacht wird.
LS0 = x0 und LS1 = x1 (LS = Lichtschranke).
x0 und x1 sind die Eingangssignale.
Wenn die Lichtschranken nicht unterbrochen sind beträgt ihr logischer Zustand "1", bei Unterbrechung demzufolge "0".
Für die Autos die REIN und RAUS fahren soll je 1 getrenntes Zählsignal abgeleitet werden.
Anbei eine kleine Skizze zur Veranschaulichung.
* mir ist klar, dass wenn kein Auto im Bereich der LS ist das
x0x1 = 11
* für den Fall der Einfahrt in das Parkhaus
x0x1 = 01 danach x0x1 = 00 danach x0x1 = 10 und wenn es ins Parkhaus eingefahren ist x0x1 = 11
* für den Fall der Ausfahrt vom Parkhaus
x0x1 = 10 danach x0x1 = 00 danach x0x1 = 01 und dann wenn es wieder auf der Straße ist x0x1 = 11
* durch den Abstand der Lichtschranken bedingt (L_LS < L_Auto) wenn das Auto zwischen beiden Lichtschranken steht
x0x1 = 00
Die Ausgangssignalen sollen sein:
einfahrendes Auto: y1 = 1
ausfahrendes Auto: y2 = 1
keine Ein-/Ausfahrt: y0 = 1
Allerdings komm' ich mit dem Aufstellen der Automatentabelle (Zustände, Ausgangssignale) nicht so ganz klar.
Kann mir jemand helfen?
Meiner Meinung nach müsste es sich um einen MOORE-Automaten handeln. Liege ich da richtig?
mfg
sven
Moore-Automat ? Was war das doch gleich ... Ach ja:
Wikipedia: Moore-Automat
Danach brauchen wir
- Zustandsmenge
- Eingabealphabet
- Ausgabealphabet
- Übergangsfunktion
- Ausgabefunktion
- Anfangszustand
Dann wollen wir mal :
<pre>
Eingabealphabet:
Aktuelle Werte von X0 und X1
also 11 , 01 ,10 , 11
Ausgabealphabet:
Aktuelle Werte von Y0 , Y1 und Y2
also 100, 010, 001, 000
mit der Bedeutung
100 : Frei , kein Auto auf der Ein-AUsfahrt
010 : Auto fährt ein
001 : Auto fährt aus
000 : undefiniert , Eingabe Sequenz fehlerhaft
Ich schlage folgende Zustände vor
F0 : Frei
E1 : Einfahrt-1
E2 : Einfahrt-2
E3 : Einfahrt-3
A1 : Ausfahrt-1
A2 : Ausfahrt-2
A3 : Ausfahrt-3
XX : Fehler
Die Übergänge für die Einfahrt sind dann
F0 --01-> E1 --00-> E2 --10-> E3 --11-> F0
und für die Ausfahrt
F0 --10-> A1 --00-> A2 --01-> A3 --11-> F0
Eigentlich darf man hier nur auf eine Veränderung des Eingangswert
reagieren. Wenn in kontinuierlichen Intervallen der Zustand von
X1X2 abgefragt wird, muss der aktuelle Zustand bei gleichem
Eingangswert beibehalten bleiben.
Alle jetzt nicht definierten Übergänge führen zu XX,
da sie einen Fehler darstellen.
Von XX kommt man wieder zu F0 bei Eingangswert 11.
Somit ergibt sich die Übergangstabelle und die Ausagbefunktion
in Abhängigkeit vom Zustand :
Zustand | Eingabe | Ausgabe
| 11 | 01 | 00 | 10 |
--------+----+----+----+----+---------
F0 | F0 | E1 | XX | A1 | 100
E1 | XX | E1 | E2 | XX | 010
E2 | XX | XX | E2 | E3 | 010
E3 | F0 | XX | XX | E3 | 010
A1 | XX | XX | A2 | A1 | 100
A2 | XX | A3 | A2 | XX | 100
A3 | F0 | A3 | XX | XX | 100
XX | F0 | XX | XX | XX | 000
Anfangszustand ist wohl sinnvollerweise F0
</pre>
Hilft das ?
Gruß
Klaus
PS: und welche Hausaufgabe habe ich jetzt gelöst ?
Wikipedia: Moore-Automat
Danach brauchen wir
- Zustandsmenge
- Eingabealphabet
- Ausgabealphabet
- Übergangsfunktion
- Ausgabefunktion
- Anfangszustand
Dann wollen wir mal :
<pre>
Eingabealphabet:
Aktuelle Werte von X0 und X1
also 11 , 01 ,10 , 11
Ausgabealphabet:
Aktuelle Werte von Y0 , Y1 und Y2
also 100, 010, 001, 000
mit der Bedeutung
100 : Frei , kein Auto auf der Ein-AUsfahrt
010 : Auto fährt ein
001 : Auto fährt aus
000 : undefiniert , Eingabe Sequenz fehlerhaft
Ich schlage folgende Zustände vor
F0 : Frei
E1 : Einfahrt-1
E2 : Einfahrt-2
E3 : Einfahrt-3
A1 : Ausfahrt-1
A2 : Ausfahrt-2
A3 : Ausfahrt-3
XX : Fehler
Die Übergänge für die Einfahrt sind dann
F0 --01-> E1 --00-> E2 --10-> E3 --11-> F0
und für die Ausfahrt
F0 --10-> A1 --00-> A2 --01-> A3 --11-> F0
Eigentlich darf man hier nur auf eine Veränderung des Eingangswert
reagieren. Wenn in kontinuierlichen Intervallen der Zustand von
X1X2 abgefragt wird, muss der aktuelle Zustand bei gleichem
Eingangswert beibehalten bleiben.
Alle jetzt nicht definierten Übergänge führen zu XX,
da sie einen Fehler darstellen.
Von XX kommt man wieder zu F0 bei Eingangswert 11.
Somit ergibt sich die Übergangstabelle und die Ausagbefunktion
in Abhängigkeit vom Zustand :
Zustand | Eingabe | Ausgabe
| 11 | 01 | 00 | 10 |
--------+----+----+----+----+---------
F0 | F0 | E1 | XX | A1 | 100
E1 | XX | E1 | E2 | XX | 010
E2 | XX | XX | E2 | E3 | 010
E3 | F0 | XX | XX | E3 | 010
A1 | XX | XX | A2 | A1 | 100
A2 | XX | A3 | A2 | XX | 100
A3 | F0 | A3 | XX | XX | 100
XX | F0 | XX | XX | XX | 000
Anfangszustand ist wohl sinnvollerweise F0
</pre>
Hilft das ?
Gruß
Klaus
PS: und welche Hausaufgabe habe ich jetzt gelöst ?