OpenDCC AniMat: Anwendungsbeispiele
- AniMat kann mit Hilfe der Sequenzersteuerung den Ablauf kleiner
Szenen autonom steuern, nachfolgen hierzu ein paar Beispiele:
Beschrankter Bahnübergang
- Betrachten wir als erstes Beispiel einen beschrankten Bahnübergang.
Hier müssen Blinklicht, Schranke, Warnglocke und der Stopmagnet für das Faller-Car System in der richtigen
Reihenfolge angesteuert werden. Das wird wie folgt an den AniMat angeschlossen:
Anschluß | Verwendung |
---|---|
Ausgang 0 | Stopmagnet |
Ausgang 1 | Blinklicht rechts |
Ausgang 2 | Blinklicht links |
Sound | Lautsprecher, für Warnglocke |
Servo 1 | Schrankenbewegung |
Sequenz-Programmierung | ||
---|---|---|
Zeitcode | Command | Kommentar |
0 | 0b0000 0101 | Ausgang 1 soll blinken, Phase A |
0 | 0b0000 1010 | Ausgang 2 soll blinken, Phase B (links/rechts im Gegentakt) |
1 | 0b1100 0001 | Sound abspielen, Track 1 = Warnglocke (in Schleife) |
3 | 0b0000 0011 | nach 3s Ausgang 0 einschalten, Stopmagnet für Faller Car einschalten |
1 | 0b1000 0000 | Servo 1, Kurve A, Schranke schließen |
10 | 0b1100 0000 | nach 10s Sound beenden, Warnglocke wieder aus |
255 | 0b1111 1111 | Sequenz-Ende |
Sequenz-Programmierung | ||
---|---|---|
Zeitcode | Command | Kommentar |
0 | 0b0000 0101 | Ausgang 1 soll blinken, Phase A |
0 | 0b0000 1010 | Ausgang 2 soll blinken, Phase B (links/rechts im Gegentakt) |
3 | 0b0000 0001 | nach 3s Ausgang 0 einschalten, Stopmagnet für Faller Car einschalten |
1 | 0b1000 0001 | Servo 1, Kurve B, Schranke öffnen |
10 | 0b0000 0100 | nach 10s Ausgang 1 abschalten |
0 | 0b0000 1000 | auch Ausgang 2 abschalten |
1 | 0b0000 0000 | nach 1s Ausgang 0, Stopmagnet für Faller Car ausschalten |
255 | 0b1111 1111 | Sequenz-Ende |
Pendelzugsteuerung
-
Dieses Beispiel implementiert eine Pendelzugsteuerung, welche auf (lokalen) Tastendruck einen Umlauf startet.
Hierzu sei folgende Portbelegung angenommen:
Port | Verwendung |
---|---|
Input 0: | Taster |
Input 1: | Endeschalter links |
Input 2: | Endeschalter rechts |
Sequenz-Programmierung | ||
---|---|---|
Zeitcode | Command | Kommentar |
255 | 0b0000 0000 | Warte auf Tasteneingang = low |
0 | 0b0100 0011 | Motor links drehen langsam |
3 | 0b0100 0111 | nach 3s Motor links schneller |
255 | 0b0000 0001 | Warte auf Schaltkontakt links |
0 | 0b0100 0000 | Motor aus |
2 | 0b0101 0011 | Motor rechts drehen langsam, (mit Verzögerung, dadurch entsteht hier eine Pause) |
3 | 0b0101 0111 | nach 3s Motor rechts schneller |
255 | 0b0000 0010 | Warte auf Schaltkontakt rechts |
0 | 0b0101 0000 | Motor aus |
2 | 0b0101 0000 | Motor aus (nochmal, mit Verzögerung, dadurch entsteht hier eine Pause) |
255 | 0b0010 0000 | Starte die Sequenz 0 (Wiederholung) |