DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

Bereich für alle Themen rund um Digitaltechnik und digitale Umbauten.
Antworten

Threadersteller
schumo99
RegionalExpress (RE)
Beiträge: 52
Registriert: Sa 5. Nov 2016, 17:14
Deutschland

DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#1

Beitrag von schumo99 » So 10. Mär 2019, 12:22

Hallo,
ich habe einen kleinen Dekoder zum Eigenbau auf Basis einen Arduino nano entworfen. Der Dekoder steuert LEDs im Charlie-/Multiplexing an. (Das sind z.B. Viessmann Signale. Man kann sich aber auch selbst die LEDs entsprechend verdrahten. Das hat den Vorteil, dass man viel weniger Kabel benötigt. So kann man z.B. mit 4 Kabeln 12 LEDs vollkommen unabhängig voneinander ansteuern.)

Fest hinterlegt ist derzeit eine Logik für:
  • Signale
  • Ampeln
  • Lauflichter
  • Zufallslicht
  • Blinklichter
Insgesamt können bis zu 48 LEDs aufgeteilt auf 4 Bereiche angesteuert werden; also zum Beispiel 8 Signale (4 Hauptsignale und 4 Vorsignale) oder 4 Ampelkreuzungen (jeweils mit Haupt/Nebenstrasse und Fussgängerampel) oder 4 Lauflichter oder …

Man kann alles frei selbst konfigurieren: z.B. Signalbilder, Helligkeit jeder einzelnen LED, Dunkelzeit zwischen den Signalbildern, Aufblendgeschwindigkeit, …
Im Ampelmodus kann der Dekoder entweder selbstständig zwischen Rot-/Grünphasen wechseln (natürlich mit den entsprechenden Gelbphasen dazwischen), oder auf Eure Eingabe zum Umschalten warten. Natürlich kann man hier auch sämtliche Schaltzeiten selbst bestimmen.
Für's Blinken von LEDs kann die Blinkfrequenz eingestellt werden und ob die Lichter gleichzeitig oder gegengleich Blinken sollen. Da ist also (fast) alles möglich. Und man könnte auch noch weitere Funktionen ergänzen. Wenn was fehlt, meldet Euch und ich prüfe ob man das noch aufnehmen kann.

Bild

Zum Nachbau ist das Ganze relativ einfach, da keine SMD Bauteile benötigt werden, sondern nur wenige große Bauteile einzulöten sind. Ich habe die Software sowie das Platinenlayout hier zum download bereitgestellt: https://github.com/schumo99/ArduCAN-Mul ... CC-Version
Damit man sich alles besser vorstellen kann gibt's auch noch ein Video mit Erklärungen des Dekoders und einigen Beispielen: https://youtu.be/heiLkZWKwZ4

Beim Nachbau ist nur zu Beachten, das man einen Arduino mit ATMega328PB-Prozessor braucht. Die sind manchmal schwer zu bekommen.
Wer nicht alles selbst machen will: Platinen könnt ihr günstig von mir bekommen. Programmierte Prozessoren mit dem richtigen Chip (Arduino-kompatibel) ebenfalls.

Viel Spaß beim Nachbau. Grüße

Matthias

PS: In den nächsten Tagen erstelle ich noch ein Video, welches mehr Beispiele des Funktionsumfangs zeigt und wie man den Dekoder entsprechend konfiguriert.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Digitaltechnik zum Nachbau: S88 IR-Gleisbesetztmelder, S88-Repeater


Threadersteller
schumo99
RegionalExpress (RE)
Beiträge: 52
Registriert: Sa 5. Nov 2016, 17:14
Deutschland

Re: DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#2

Beitrag von schumo99 » Fr 15. Mär 2019, 13:42

Hallo,

hier noch die verprochenen Links zur Konfiguration bzw. Demonstration:

Signal-/Blinklicht: https://youtu.be/MxXWvDyjA_w
Lauflicht: https://youtu.be/cI6yMSMvXmI
Allgemeine Konfiguration https://youtu.be/Xrjru3XkRGs

Grüße

Matthias
Digitaltechnik zum Nachbau: S88 IR-Gleisbesetztmelder, S88-Repeater


Manfredissimo
Beiträge: 3
Registriert: Sa 29. Jun 2013, 08:36
Nenngröße: H0
Stromart: AC
Steuerung: Uhlenbrock
Gleise: M
Wohnort: Wendelstein
Alter: 71

Re: DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#3

Beitrag von Manfredissimo » Sa 16. Mär 2019, 05:14

Hallo Matthias, tolles Projekt
gerne würde ich deinen ArduCan-Signal10.hex auf meinen Arduino laden
leider gelingt es mir aber nicht avrdude unter windows 10 auf meinen Rechner zu installieren
einen Arduino scetch welchen ich über die usb Schnittstelle einfach hochladen kann hast du ja nicht veröffentlicht
würdest du mir den Arduinocode zur Verfügung stellen
was würde eine fertige Platine kosten
wie lädst du deine hex datei auf den Arduino
gerne sende ich dir auch meine e-mail adresse
:D gfm:
viele Grüße aus Wendelstein
Manfred


Threadersteller
schumo99
RegionalExpress (RE)
Beiträge: 52
Registriert: Sa 5. Nov 2016, 17:14
Deutschland

Re: DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#4

Beitrag von schumo99 » Sa 16. Mär 2019, 09:54

Hallo Manfred,
für avrdude must du nur das zip-file aus der Anleitung runterladen und entpacken. Ins gleiche Verzeichnis kommt dann das HEX-file. Dann den Befehl eingeben, der in der Anleitung steht und die Software wird über die USB-Schnittstelle des Arduinos hochgeladen. Das ist dann das gleiche, wie es die Ardunio-IDE auch macht; nur händisch. Welche Fehlermeldung kommt denn von der Eingabeaufforderung von Windows? Alternativ kannst du auch irgendeinen anderen AVR-Programmer verwenden.
Da du ja scheinbar die Arduino IDE installiert hast, geht's auch anders, da diese den avrdude bereits mitbringt. Du kannst deine Festplatte einfach danach durchsuchen.

Ich habe keinen Arduino-Sketch veröffentlicht, weil es keinen gibt. Die Software für den Prozessor kann man auch anders schreiben (Atmel Studio) und dann kompilieren. Das Ergebnis ist dann das HEX-file, welches auf den Prozessor muss. Ich habe einen AVR-Programmer von Diamex, aber wenn man keinen hat, ist halt avrdude für den Arduino eine einfache Lösung.

Achtung: Es funktionieren nur Arduinos mit dem Chip ATMega328PB! Bei anderen bekommst du nach dem Programmstart eine Fehlermeldung im Seriellen Moinitor angezeigt; oder wenn er ganz anders ist, geht halt nichts (aber auch nichts kaputt).

Platinen gebe ich für 3€; einen fertigen "Arduino"-kompatiblen Baustein für 5€ ab, zzgl. Porto.

Grüße
Matthias
Digitaltechnik zum Nachbau: S88 IR-Gleisbesetztmelder, S88-Repeater


Manfredissimo
Beiträge: 3
Registriert: Sa 29. Jun 2013, 08:36
Nenngröße: H0
Stromart: AC
Steuerung: Uhlenbrock
Gleise: M
Wohnort: Wendelstein
Alter: 71

Re: DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#5

Beitrag von Manfredissimo » Sa 16. Mär 2019, 10:43

Hallo Matthias,
danke für die schnelle Antwort, du schreibst mir ich soll auf meiner Festplatte nach avrdude suchen
da finde ich im Verzeichnis in der Arduino IDE aber nichts. Wonach genau muss ich suchen

Das zip file habe ich ja bereits heruntergeladen und auch entpackt und auch dein html File in den Ordner gelegt
beim kopieren deines HTML file werden dann gleich mehrere Dateien in den ArduCan Ordner geschrieben
Wenn ich dann aber auf die exe Datei geht nur kurz ein Fenster auf und das wars auch schon oder muss erst ein ATMega328PB angeschlossen sein damit es funktioniert
gerne würde ich von dir mindestens eine Platine und einen beschriebenen Chip ATMega328PB erwerben.
Bitte schreibe mir an meine hinterlegte E Mail wie wir das abwickeln.
Wäre es auch möglich, dass ich auch gleich mehrere Platinen erwerben könnte
:D Gruß Manfred


Threadersteller
schumo99
RegionalExpress (RE)
Beiträge: 52
Registriert: Sa 5. Nov 2016, 17:14
Deutschland

Re: DCC-Multiplexdekoder für Signale, Ampeln, Blink-/Lauflichter, ... zum Eigenbau

#6

Beitrag von schumo99 » Sa 16. Mär 2019, 11:58

Hallo,
die Arduino-IDE bringt avrdude auch mit. Die wird aber standardmäßig nicht ins Arduino-Verzeichnis kopiert, sndern je nach Betriebssystem woanders hin. Deshalb müsstest du die ganze Festplatte durchsuchen lassen.
Wenn du avrdude runtergeladen hast und das zip-file entpackt, dann ist das schon mal richtig. In den orden, in den du das avrdude entpackt hast kopierst du das hex-file mit rein. das hat die Dateiendung .hex (nicht .html). Wenn du html hast, dann war den download von github nicht richtig und du hast versehentlich die Homepageseite runtergeladen und nicht das hex-file...

Folgende Schritte sind nötig:
1. AVRDUDE runterladen und entpacken (hast du schon)
2. HEX-file runterladen und in das Verzeichnis - in dem schon avrdude ist - kopieren
3. Arduino mit dem PC verbinden. Es muss nun ein COM-Port zugewiesen werden. Diesen z.B. im Gerätemanager nachschlagen.
4. Eingabeaufforderung in Windows öffnen. Dafür z.B. bei "suchen" oder "ausführen" cmd eingeben. Es geht ein Fenster mit schwarzem Hintergrund auf mit blinkendem Cursor. Vor diesem steht irgendwas in der Art C:\Users\xyz>
5. Mit dem befehl cd c:\xyz in das avrdude-Verzeichnis wechseln. xyz steht dabei für den gesamten Pfad des avrdude-Verzeichnisses. Nun muss in der Eingabeaufforderung vor dem blinkenden Cursor das avrdude-Verzeichnis genannt sein.
6. Den Befehl

Code: Alles auswählen

avrdude -carduino -patmega328p -PCOMxx –b57600 -D -F -Uflash:w:arducan-signal10.hex:i
eingeben. Bei den Argumenten auf Gross- und Kleinschreibung achten. xx steht für die Nummer des zugewiesenen Com-Ports. Wenn dieser z.B. 4 ist lautet dieser Teil des Befehls -PCOM4. Nun kopiert avrdude das hex-file auf den Arduino. Am Ende wird angezeigt, ob das flashen des Arduinos funktioniert hat.

Fertig.

Grüße
Matthias
Digitaltechnik zum Nachbau: S88 IR-Gleisbesetztmelder, S88-Repeater

Antworten

Zurück zu „Digital“