Superstates und VHDL

Gast #5140079
Hallo Comunity,

mich beschaeftigt momentan wie man Superstates in VHDL  implementieren 
kann, gibt es dazu ein Template an das man sich halten kann oder 
vernuenftige Literatur die dieses Thema aufgreift ?
Ich finde sehr viele Seiten die Superstates beschreiben aber keine von 
denen zeigt eine Implementierung :(

Vllt hat ja einer von euch eine Idee z.B. fuer folgende Maschine, die 
eine.. ehm... Tiervertreibungsanlage zum Schutz des Gartens beschreibt:

Nach dem der AN Schalter betaetigt worden ist soll der Automat zwei 
Sachen gleichzeitig ausfuehren, einerseits soll eine LED mit dem Takt 
blinken die durch die Zustaende ANZEIGE_1(LED AN) und ANZEIGE_2(LED AUS) 
beschrieben wird um zu Signalisieren das die Anlage scharf ist. Auf der 
Anderen Seite soll der Automat auf dem Bewegengsmelder (BEW) lauschen, 
falls ein Tier zu nah dran kommt soll eine PUMPE angehen das Wasser 
durch eine Duesse spritzt und ein LICHT das das Tier vertreibt, nach 
einer bestimmten Zeit z.b. 5 sek soll die Anlage wieder in den 
Wartezustand uebergehen signalisiert durch das Signal TIME.

Fuer jeden Ansatz bin ich sehr dankbar

Gruss h4
Angehängte Dateien:
#5140223
h4 schrieb:
> Fuer jeden Ansatz bin ich sehr dankbar

Hmm, ich lese aus Deinem UML-Diagramm:
- ein Enable-Signal (An/Aus)
- einen Timer zum Togglen des LED-Signals
- eine FSM zur Steuerung des Bewegungsmelders und der 
Vertreibungsaktionen

Einen Superstate sehe ich erstmal nicht - vielleicht weil ich selten in 
UML zu denken pflege :-)
Moderator (Firma: Titel) Persönliche Seite #5140500
h4 schrieb:
> mich beschaeftigt momentan wie man Superstates in VHDL  implementieren
> kann
Ich würde einfach mal dieses Buzzword ignorieren und 2 simple Automaten 
für die 2 Aufgaben implementieren...

> Nach dem der AN Schalter betaetigt worden ist soll der Automat zwei
> Sachen gleichzeitig ausfuehren
Wie würdest du diese beiden Aufgaben in realer Hardware mit einzelnen 
Logik-Bausteinen lösen? Wenn du das weißt, dann kannst du mit VHDL diese 
Schaltung beschreiben.

h4 schrieb:
> Nach dem der AN Schalter betaetigt worden ist
Ist "der Automat" vorher stromlos, oder ist er in einem aktionslosen 
Wartezustand?
Falls zweiteres: bedeutet "AN Schalter", dass das "AN"-Signal statisch 
anliegt?
Falls ja, dann ist es völlig simpel. Falls nein, dann muss noch ein 
Zustandsautomat zum Auswerten des Schaltimpulses und Erzeugen eines 
statischen signals vor die folgenden Module geschaltet werden.

> soll der Automat zwei Sachen gleichzeitig ausfuehren, einerseits soll
> eine LED mit dem Takt blinken
Das "Hello World!" der Hardware, die Anfängerübung schlechthin...
http://www.lothar-miller.de/s9y/archives/80-Hello-World!.html

> Auf der Anderen Seite soll der Automat auf dem Bewegengsmelder (BEW)
> lauschen, falls ein Tier zu nah dran kommt soll eine PUMPE angehen
> das Wasser durch eine Duesse spritzt und ein LICHT das das Tier vertreibt
Das ist offenbar der selbe Ausgang...

> nach einer bestimmten Zeit z.b. 5 sek soll die Anlage wieder in den
> Wartezustand uebergehen signalisiert durch das Signal TIME.
Also ein Monoflop...

Fazit: diese Aufgabe ist auch bei umständlicher Beschreibung in 20 
Zeilen VHDL-Code zu erledigen.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 9 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.