Arduino-Multiplex-Signaldecoder mit Blindschaltbildern

#1 von BR440 , 12.06.2021 23:09

Hallo zusammen,

schon vor einiger Zeit habe ich mal einen Arduino-Decoder für Viessmanns Multiplexsignale gebaut, denn ich euch heute vorstellen möchte.
Der Decoder unterstützt dabei nicht nur das sanfte Auf- und Abblenden der LEDs, sondern zeigt zudem auch noch sogenannte Zwischenschaltbilder zwischen verschiedenen Signalbegriffen.

Motivation:
In meinem Bahnhof wollte ich an einer Stelle Viessmanns Signalbrücke aufstellen. Jedoch war ich nicht bereit, pro Signal noch einmal 20,- für den Decoder zu bezahlen.
Darum beschloss ich, die Decoder selber zu programmieren.

Herausforderung:
Die neuen Viessmann-Signale werden mittels Tri-State-Multiplexing angesteuert. Dabei wird zwischen jede Anschlussader in jede Richtung eine LED geschaltet. Das ermöglicht, mit 4 Drähten bis zu 12 LEDs einzeln anzusteuern.



Verschaltung der LEDs bei einem Viessmann Ausfahrsignal mit vier Anschlussdrähten

Decoderplatine
Zur Ansteuerung habe ich mir eine kleine Platine mit einem Arduino Nano (China-Klon) gelötet. Der Schaltplan basiert auf einem, den ich hier mal gefunden hatte (weiß aber nicht mehr wo).
Da nie LEDs in Reihe geschaltet sind, reichen die 5V des Arduinos als Versorgungsspannung für die LEDs aus. Die Widerstände sind auch für 5V ausgelegt.



Der selbstgelötete Decoder im Einsatz: Rechts sind Digital- und Versorgungsspannung angeschlossen, links die Signalbrücke (über die schwarzen Stecker) und der Vorsignalwiederholer.



Den Schaltplan des Decoder habe ich so einfach wie möglich gehalten.

Umsetzung im Code
Hierfür möchte ich euch eine Präsentation zeigen, die ich einst für eine GFS zum Thema gemacht hatte und für euch nun noch ein wenig angepasst habe.
Darin zeig ich euch, was es mit dem Multiplexing auf sich hat und wie das ganze funktioniert.



































































Anwendung:
Mit dem Arduino-Decoder lassen sich im Prinzip alle Multiplexsignale von Viessmann ansteuern. Die Anpassungen im Sketch dafür sind verhältnismäßig gering.

Hier könnt ihr die entsprechend gesteuerten Signale sehen. Der linke Vorsignalwiederholer sowie die beiden Hauptsperrsignale an der Signalbrücke werden über den Arduino-Multiplex-Decoder gesteuert.
Die anderen Signale sind konventionell verdrahtet und werden von weiteren Arduinos (wann anders vllt. mehr dazu...) gesteuert.



Und hier noch ein kleines Video dazu: Link

An der Stelle möchte ich mich auch gleich mal bei den ganzen Vielschreibern zum Thema Arduino und Modellbahn bedanken. Die MobaTools-Library von Franz-Peter habe ich in diesem Sketch ja sogar selbst verwendet.

Im Anhang findet ihr neben dem Sketch auch den Schaltplan für den Decoder und die Präsentation als Pdf.
Ich hoffe, meine Erklärungen waren etwas verständlich und ihr könnt etwas damit anfangen :)

Viele Grüße und viel Spaß
Hannes

Disclaimer: Ich weiß, dass man einiges schöner programmieren hätte können, (z.B. den Aufruf der update()-Funktion per Interrupt statt im Loop), aber hey, es funktioniert. Verbesserungsvorschläge, Kritik und Anmerkungen sind aber trotzdem natürlich erwünscht :)

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

BR440  
BR440
S-Bahn (S)
Beiträge: 18
Registriert am: 08.04.2015


Arduino-Signaldecoder mit Blindschaltbildern für Multiplexsignale

#2 von BR440 , 13.06.2021 19:25

Hallo nochmal,

wie oben beschrieben, habe ich die Steuerung der Multiplexsignale in eine Library ausgelagert. Nur die Signalbildabfolge beim Umschalten wird im Hauptsketch erledigt.

Damit ihr bei der Library leichter durchblickt, habe ich dafür noch eine kleine Doku geschrieben.
Die Library kann grundsätzlich zur Ansteuerung aller Multiplexsignale verwendet werden (auch KS-Signale, etc.).

Über Fragen, Kritik und Verbesserungsvorschläge freue ich mich.

Viele Grüße
Hannes

Dateianlage:
Sie haben nicht die nötigen Rechte, um die angehängten Dateien zu sehen

pgpro, Bodo, fneurieser, MobaPro59, hd_pano und pischky haben sich bedankt!
BR440  
BR440
S-Bahn (S)
Beiträge: 18
Registriert am: 08.04.2015


RE: Arduino-Signaldecoder mit Blindschaltbildern für Multiplexsignale

#3 von volkerS , 17.06.2021 12:55

Hallo Hannes,
eine Abweichung der Realität zu deiner Software ist mir aufgefallen. Beim Betrachten eines Videos ist mir aufgefallen dass bei einem Ausfahrtsignal der Signalbilderwechsel anders als bei dir erfolgte.
Das Signal zeigte HP2 (Langsamfahrt), als der Zug durchgefahren war erloschen beide Leuchten (grün und gelb) gleichzeitig dann wurde die linke rote Leuchte angesteuert (Halt) und mit einer deutlich erkennbaren Verzögerung wurde auch die rechte rote Leuchte (Halt Rangierfahrt) angesteuert.
Volker


volkerS  
volkerS
Metropolitan (MET)
Beiträge: 4.693
Registriert am: 14.10.2014


RE: Arduino-Signaldecoder mit Blindschaltbildern für Multiplexsignale

#4 von BR440 , 18.06.2021 20:56

Hallo Volker,

so wie du es beschreibst, habe ich das beispielsweise in Tübingen auch schon beobachten können.
Ich meine allerdings, dass das auch vom Stellwerk abhängen kann und ich das so wie umgesetzt auch mal gesehen habe.

(Vielleicht irre ich mich aber auch... Eventuell weiß jemand anderes da genauer Bescheid, wie das in echt funktioniert?)

Die bisherige Software-Lösung schaltet einfach nacheinander die Signalbilder durch, bis das Zielsignalbild erreicht ist. Dabei sind die verschiedenen Signalbilder fest in einer bestimmten Reihenfolge, die zu Beginn des Sketch festgelegt wird.
Diese Lösung habe ich erstmal wegen ihrer Einfachheit verwendet.
Wenn man es etwas ausgefeilter möchte, könnte man einen Zustandsautomat verwenden, wie ihn Franz-Peter hier einmal vorgestellt hatte: Zustandsautomat Tutorial von Franz-Peter

Damit könnte man den von dir beschriebenen Ablauf elegant umsetzen. Wenn ich mal Zeit finde, werd ich das vielleicht mal ausprobieren.

Viele Grüße
Hannes


Helmut2021 hat sich bedankt!
BR440  
BR440
S-Bahn (S)
Beiträge: 18
Registriert am: 08.04.2015


   

CAN-Weichenstellpult mit Arduino
Probleme mit µCon-s88-Master Ls Digital

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz