Carrera Digital Fahrzeug-Codierer auf Arduino-Basis?

  • Kann jeder halten wie er will und sicher will sich niemand mit halbgarem Code blamieren.
    Schade ist nur, dass viele tolle Ideen nie realisiert werden und wenn, dann schafft es Einer, dass der Code läuft und andere, die vielleicht eher Hardware Profis oder Streckenbauer oder Autobauer sind und ihr Wissen auch teilen, können dann nicht partizipieren.


    Dabei bietet gerade die Carrera Digital mit ihrer Atmel 8-Bit Basis riesige Möglichkeiten. Ich fände es cool, wenn wir nur die Ideen, die Peter Niehues skizziert hat, hier unter uns Verrückten umsetzten würden. Mal abgesehen von Dutzenden anderen, die uns noch einfallen.


    Wenn aber Jeder from scratch anfängt und alle Fehler wiederholt und alles noch einmal entwickeln muss, was schon gelöst ist, dann gehts halt nicht voran. Aber, wenn es so sein soll, dann ist es so.


    Man kann ja auch noch über PN mit Leuten kommunizieren, wenn man nicht alles komplett öffentlich machen will.

  • ebay Werbung
  • Guten Abend bzw. guten Morgen,


    ich weiß ich bin neu hier und werde mir sicherlich mit diesen Posting hier nicht nur Freunde machen, was mir jedoch relativ egal ist, so ist es eben in einer Community.


    Ganz kurz zu mir bevor ich zum Topic Thema komme.

    Ich habe seit kurzen Carrera 143 Fahrzeuge mit 143 Decoder und eine Blackbox 124/132... alles gut und schön, aber bedingt der 143-Car Decoder ist da nicht sehr viel mehrwert für mich, bis auf Startampel funktioniert ja im Grunde kein 132/124 gedöns wie Ghostcar/PaceCar, Tank Modus.....

    Die Fahrzeue neue Decoder Spendieren... nee ist mir letztlich zu Teuer und zu Zeitaufwendig bei über 50 Fahrzeugen. Also musste eine andere Alternative her. Da ich schon einige andere Projekte mit Arduino&Co gemacht habe, lag die Überlegung also nahe hier eine Lösung zu finden.

    Also habe ich viel gegoogelt und gelesen.... ein Dank geht hier an Dipl.-Ing. Peter Niehues (http://www.wasserstoffe.de) und an den Slotbär (http://www.slotbär.de) für die grundlegenden Dinge.


    Ein paar Arduinos habe ich hier noch rumzuliegen gehabt, die Blackbox hatte ich geöffnet und die Leiterbahn vom Microcontroller zum MosFet-Treiber unterbrochen und 2 Kabel angelötet.

    So habe ich das TTL-Signal vom Blackbox-Microcontroller direkt zum Arduino Eingang Port D2 (Wasserstoffe.de - Inspektor) geführt und den Port D3 vom Arduino zum MosFet-Treiber gelegt.

    Der Arduino ist nun als Men in the middle geschalten. leider hat die Blackbox so nicht wirklich funktioniert, sie ging in ein Syncronisations modus und die 5 LED's fingen an sich wie ein Binär Counter herab zu zählen.

    Warum wollte ich dies so lösen.... die Balckbox hat 4 Controller eingänge (wenn man kein Tower benutzt), Fahrzeuge mit ID 5+6 (genaugenommen 4 und 5 da die erste ID=0 ist und nicht 1.) können so nicht eingestellt werden, was aber für mich, um diese als GhostCar oder Autonomes Fahrzeug... what ever... zu belegen.

    Der Arduino sollte also die eigentlichen Signale der Blackbox abfangen und die Regler 5 und 6 durch eigene Ersetzen, was zwar vom grundsatz her funktionierte, aber eben die Blackbox ihre Funktion selbst nicht zuverlässig aufnahm.


    Kurzum musste also doch eine andere Lösung her.


    Wie hier im Verlauf schon geschildert wurde, gibt es bei der Bucht MosFet treiber günstig zu erstehen. diese sind Zwar N-Kanal, Peter Niehues hatte p-Kanal verwendet und merkte an das es mit N-Kanal schwieriger wird.

    Also kurzum diesen MosFet-Treiber (IRF520) bestellt.


    Ein Paar Kabel angeschlossen, ein wenig geübte sollten es hinbekommen, hab jetzt keine Fotos zur hand.

    Ein altes Go-Netzteil stecker ab und angeschlossen...


    von Peter Niehues den Encoder Sketch und ein wenig angepasst...


    ich hab zuerst eine Funktion geschrieben die mir den REGLER wert berechnet...


    Code
    int SetRegler(int Regler,int Taste,int Speed)
      {
      int r=(1<<9) + (Regler<<6) + (Taste<<5) + (Speed<< 1) + 1;
      return r;
      }


    dann ist die ID Programmierung in eine Funktion gelegt worden



    in der originalen Encoder Funktion von Peter Niehues musste zum ende noch ein Delay eingefügt werden, damit die einzelnen Kommandos nicht zu dicht auf einader folgen.





    Und um ein wenig zu spielen....

    eine Funktion die das Fahrzeug dann auch etwas Fahren lässt.



    für den ersten Test usw. habe ich natürlich ein einfaches automatisch ablaufendes Program gemacht.


    Es Programmiert die ID des Fahrzeug von 0-5 nacheinander durch und lässt es jeweils einige Sekunden fahren.

    Eine Eingabe über Tasten ect. ist nicht vorhanden, zum jetzigen Zeitpunkt und von mir aus wird es über Bluetooth (HC-5 oder HC-6 Modul) und einer APP vorrausichtlicht gemacht werden.


    habe ja jetzt erst heute 1 Stunde daran rumgebastelt.


    Ein DriverDisplay habe ich auch schon gemacht mit 20 WS2812 LED je 10 für Speed und Tank ist ganz witzig... ma schauen wo wie Reise am ende hingeht.



    Hier nochmal mein ganzer Bastel Quelltext (nicht Optimiert dafür in Funktion leichter zu verstehen - hoffe ich!), würde mich freuen über FeedBack ob es woanders auch funktioniert oder ob es Probleme gibt.


  • So jetzt das ganze mit einen Schaltplan. Ok, das Zeichnen ist nicht so mein Ding, bei mir entsteht sowas immer nur im kopf.

    Theoretisch könnte man das ganze in eine Zigarettenschachtel Größe bauen, inklusive 2 x 9Volt Blockbatterien.


    Auch hier wird wieder ID 0-5 (Fahrzeug 1-6) nacheinander abgearbeitet. Eine Eingabe ist somit nicht notwendig.

    Dauert eben ein paar Sekunden bis die gewünschte ID kommt.

    Theoretisch könnte man das LCD weglassen und stattdessen 6 LEDs treiben.


    Das ganze soll auch nur ein Anreiz bieten für andere etwas eigenes zu bauen.


    Viel Spaß















    20210711_005107_154.mp4.jpg

  • Hallo PaniCar,

    das sieht ja sehr gut aus. Aber was bewirkt das ganze, das ist mir noch nicht ganz klar.

    Dein ursprüngliches Problem war doch die Nutzung der C 132er Funktionen auf dem C 143er Decoder? Tanken z.B. würde ja auch mit einem Umbau der CU und mit dem 143er Decoder funktionieren (Was ich sowieso empfehlen würde). Im GO-Forum hat Enrico eine alternative Firmware für den D143 Decoder geschrieben. Damit lassen sich dann fast alle Funktionen eines D132er Decoder nutzen. Zusätzlich sind noch mehrere Fahrkurven einstellbar.

    Gruß

    Harald

  • ebay Werbung
  • Hallo FotN


    nein, das Ursprüngliche Thema war und ist...

    Carrera Digital Fahrzeug-Codierer auf Arduino-Basis?

    Das ich bei meinen Vorhaben auch Fahrzeuge Codieren möchte für die ich kein Controller habe bzw. bei der BlackBox eh von Hause nur 1-4 ohne zusätzliche Hardware nutzbar sind, habe ich hier lediglich dem Topic gerecht mein Lösungsvorschlag kund getan.

    Das ich für das Zeichnen des Layout länger als für die Schaltung und Code brauchte... nun Nennen wir es Sportliches Verhalten.


    OffTopic:

    Zitat

    Dein ursprüngliches Problem war doch die Nutzung der C 132er Funktionen auf dem C 143er Decoder? Tanken z.B. würde ja auch mit einem Umbau der CU und mit dem 143er Decoder funktionieren (Was ich sowieso empfehlen würde). Im GO-Forum hat Enrico eine alternative Firmware für den D143 Decoder geschrieben

    Nun, zum einen habe ich hier nur die Blackbox und keine CU, zum anderen Flashen der Firmware der Decoder, auch hier ist es mir zu mühselig bei 53 Fahrzeugen. Das OpenSlot Projekt ist mir schon bekannt. Trotzdem Danke.


    Ich bin schon so alt das ich bereits mit einen ZX81 meine ersten Hardwarebasteleien (MSR) gemacht habe bei 1Kilobyte Arbeitsspeicher.

    Für mich geht es in erster Linie um das Tüfteln, möglichst simpel aber funktionieren und wenn es dazu noch geht mit Upcycling.


    Ich wünsche noch einen schönen Sonntag...

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!