Eine DCC Zentrale für unter 70 Euro?

  • Hallo Zusammen
    Eine DCC Zentrale unter 70 Euro? Geht das? Und wenn ja - wie?


    Um es vorweg zu nehmen - JA - es geht, wenn man ein paar Dinge als "Gegeben" annimmt:

    • Einen Modellbahn PC mit USB Schnittstelle
    • Die Bereitschaft, mit dem PC zu steuern, wenn man eine Anlage betreiben will
    • Die Bereitschaft, sich mit Englisch-Sprachiger Software zu beschäftigen

    Im Nachbarforum hat sich eine Faden gesponnen, der DCC++ als Grundlage für eine NMRA-Kompatible DCC-Zentrale disskutiert und ich möchte Euch hier kurz aufzeigen, was man braucht und wie man es machen kann.


    Wir brauchen folgende Hardware:
    Einen orginial Ardunio Motorshield (https://store.arduino.cc/arduino-motor-shield-rev3) sowie einen orgininalen Arduino Uno (https://store.arduino.cc/arduino-uno-rev3). Es würde auch ein Arduino Klon funktionieren.
    Dazu kommt noch ein Geregeltes Netzteil was 15V Gleichstrom mit 2-3A liefert und ein EURO-Platinengehäuse sowie Kabel, Stecker und Buchsen. USB Kabel


    Und folgende Software bzw. Code:
    Die Ardunio IDE: https://www.arduino.cc/en/Main/Software
    DCC++ Code: https://github.com/DccPlusPlus/BaseStation/archive/1.2.1.zip
    JMRI: http://jmri.org/download/index.shtml
    und JAVA http://jmri.org/install/WindowsNew.shtml


    Evtl. noch ein ZIP-Program wie z.B. 7Zip https://www.7-zip.org/download.html


    Vorbereiten der Hardware - Arduino programmieren:


    Für die Programmierung der Firmware (Sketch) auf dem Arduino benötigt man einen PC, ein USB Kabel und die Ardunio IDE.
    Diese lässt sich recht einfach installieren und ist nach ein paar Minuten Einsatzbereit.


    Desweiteren braucht es noch den Code für die Firmware: https://github.com/DccPlusPlus/BaseStation/archive/1.2.1.zip

    Wenn man den Code heruntergeladen und entpackt hat (unzipp) hat, muss mach den sog. sketch öffnen.

    Da ich daheim alle Möglichkeiten habe, habe mich für den MAC als Umgebung zum programmieren entschieden.


    Je nach verwendetem Shield muss man im Code ein paar Dinge ein/auskommentieren und anpassen. Das ist aber alles im Code dokumentiert oder auf der DCC++ Homepage in den Videos beschrieben. Wenn man den orgininalen Arduino Motorshield verwendet, muss man NICHTS anpassen und kann einfach weitermachen.


    Die IDE mit dem geladenen Code.
    Oben links hat man den Button “Verify” (Harken) und “Upload” (Pfeil). Wenn der Arduino angesteckt ist, kann man so die Software auf den Prozessor laden.

    Damit das alles klappt braucht man noch den richtigen USB-Port. Bei Windows PC’s sind dass die COM Ports (1-x). Auf dem MAC heissen die etwas kryptischer /dev/cu.usb…(Arduino/Genuino Uno).

    Will man schauen, ob es geklappt hat, kann man oben rechts den Serial Monitor anschalten auf 115200 Baud einstellen und den Reset-Button drücken.
    Wenn sich dann DCC++ meldet, hat man erfolgreich den Code auf den Prozessor geschrieben.


    Vorbereiten des Motorshields:
    Auf dem Shield müssen auf der Unterseite ein paar Brücken getrennt und vier Header miteinander verbunden werden.
    Durchtrennen der BREAK Leitungen:



    Aufrennen der “Brake” Brücken. Einfach mit einem scharfen Bastelmesser die Leiterbahn dazwischen durchtrennen.


    Weiter geht es mit dem durchtrennen der Stromversorgung. Der Motorshield kann den Arduino mit Strom versorgen. Da wir aber über 12V für die Modellbahn in H0 verwenden, ist die Versorgungsspannung zu hoch. Der Arduino bekommt also weiterhin seinen Strom durch den USB Anschluss.
    Durchtrennen Vin Connect:





    Anschliessend müssen noch die richtigen PIN’s mit einander Verbunden werden.


    Einlöten der Brücken für DCC auf Main und Prog Gleis


    Bitte die PIN’s wie folgt verbinden:
    PIN12 -PIN10 (DDC MAIN Track)
    PIN13 – PIN5 (DCC PROG TRACK)
    Die Kabel kommen bei mir unter eine beiliegende Acrylabdeckung und das Ganze dann oben auf den Arduino.


    Die Bücken unter der Acrylabdeckung


    Das so vorbereitete Motorshield wird nun einfach – wie ein Legostein – auf den Arduino gesteckt. Dabei ist darauf zu achten, dass man keinen Pin verbiegt und die Pins an der richtigen Stelle stecken. Wenn das ganze SO aussieht, ist es korrekt!


    Motorshield korrekt auf dem Arduino montiert


    Man kann schön erkennen, das die SCL, SDA, AREF und GND Pin übereinanderliegen. Der Shield sollte ganz eingesteckt werden. Dazu muss man drücken aber nicht besonders viel Kraft aufwenden.



    Damit das Ganze noch eine gute Falle macht, habe ich es in ein EURO-Platinengehäuse eingebaut:
    DieBooster von Tams sind ebenfalls in solchen Gehäusen verbaut. Ein Vorteil der Gehäuse ist, dass sie sich ohne Werkzeug öffnen lassen!


    Arduino und Motorshild im Eurogehäuse



    USB Anschluss und 15V Spannungsversorgung
    Das Ganze nochmals geschlossen…Die eingeklebten Hochstromstecker aus dem RC Modellbau (Track und Prog)


    Jetzt braucht es noch JMRI als Software um die Zentrale bedienen zu können. Das ist sozusagen der Pferdefuss an der Sache.


    JMRI: Bei JMRI stellt man neben den Development Builds auch die Productive Version bereit. Der Download ist hier zu finden: http://jmri.org/download/index.shtml
    Bevor man loslegen kann braucht man JAVA – die Installations-Anweisung zeigt, was man machen muss: http://jmri.org/install/WindowsNew.shtml
    JMRI besteht ebenfalls aus verschidenene Komponenten. Zum Loks Programieren braucht man DecoderPro. Mit dem darin enthaltenen Throttle kann man die Loks fahren...
    Mit Panel Pro kann man Weichen und co stellen.


    Damit JMRI etwas bewegen kann, muss eine Zentrale definiert werden. Der Dialog startet beim ersten Start von JMRI automatisch. Hier definiert man alles, was mit der Zentrale zu tun hat.
    Die Definition der DCC++ Zentrale in JMRI sieht wie folgt aus:



    JMRI DCC++ Settings – Verbindungen:




    Die Serial Port Settings sind bei Euch vielleicht anders! Unter Windows im Device Manager/Geräte Manager nachschauen, welcher Port vom Arduino verwendet wird. Es ist der gleiche, den die IDE verwendet.
    Die IDE darf nicht gleichzeitig laufen. Das Program, welches als erstes Startet, greift sich die Verbindung zum Arduino.




    Zusätzlich müssen noch die Settings im Vorzug angepasst werden. Da JMRI eine “Software Zentrale” zum Simulieren enthält, muss man der Software mitteilen, welche Zentrale für welchen Zweck zu verwenden ist.
    JMRI DCC++ Settings – Vorzug:





    Wenn für Throttle, Power Control, Command Station, Service Programmer, Ops Mode Programmer und Consists der Toggel bei DCC++ gesetzt wurde, kann man eine neue Lok mit “Identify” einfach und bequem auslesen.


    JMRI DCC++ – Rooster:



    Im Rooster kann man unten in Grün lesen, dass beide Programmer (Programmiergleis und Hauptgleis) eine Zentrale gefunden haben. Die Lok mit der ID 6465 (lange DCC Adresse) habe ich eben ausgelesen.


    Auf meiner Homepage findet man noch weiter Infos.
    https://www.thobaben.ch/moba/?p=4470
    Ich habe für umgerechnet ca. 62.5 Euro die Zentrale samt Gehäuse umsetzen können, wobei ich nur "Markenbauteile" von Arduino verwendet habe und das Netzteil noch gekauft habe. Damit kann sicheigentlich auch ein interessierter Teenager den Einstieg in die DCC Welt leisten, wenn man davon ausgeht, dass die meisten Jugendlichen heute für die Schule eh einen Laptop haben...
    Cool!


    Wie sich das Ding im Betrieb verhält wird sich zeigen und ich werde berichten... Ich werde es mal nach Mammendorf 2018 (SA/SO) mitbringen. Vielleicht bekomme ich bis dahin auch das Dispatchen von Fredis hin.


    LG,
    Axel