Startseite
Erstes Hauptthema der Site
Bildergalerie und Stories
Nachbau eines Tricopters
Eigenkonstruktion eines Minatur-Quadrocopters
sNQ - Miniatur Quadrocopter mit Leiterplatten-Frame
xNQ - Miniatur-Quadrocopter mit XMega als Controller
Eigenkonstruktion eines Minatur-Hexacopters
xNH - Miniatur Hexacopter mit Leiterplatten-Frame
PET-Flasche in die Erdumlaufbahn bringen ... jedenfalls fast ;-)
Stirling-Motor Modell von Böhm-Stirling
Zweites Hauptthema der Site
Ladegeräte eben...
NC/NiMh-Lader mit ICS1702
Tipps zum Nachbau des NC2000
Bleigel-Lader und Überwinterer für Motorrad-Akkus
Programmer/Debugger für PIC 16F87x
Ideen zum Nachbau des Microchip ICD
Unterlagen zum Nachbau des Microchip ICD
Bilder meines Nachbaus des ICD und des Demo-Boards
Nachbau des Microchip ICD2
Einfache Schaltung für definiertes Entladen von NC-Akkus
Bilder des Video-Akku-Entladers
Elektronik für den Gameboy Advance
Beleuchtung mit weißen LEDs
Programmieradapter für Gameboy-Carts
Speichererweiterung für den Visor
Autoradio im Motorrad
Basteleien / Alles Mögliche ohne eigene Rubrik
Eisenbahn TT
Tipps und Tricks
Meine Mail-Adresse
Handverlesene Links auf meiner Seite zusammengefasst
Historie meiner Site

 

Besucher seit
25.11.2000

translate the site using Google translate
DCC Weichendecoder DigiSpark

Auf der Suche nach DCC Weichendecodern mit Arduino Hirn kam ich auch auf der Seite von Philipp Gahtow vorbei, der einen kleinen Weichendecoder für maximal vier Weichen mit Servoantrieb auf Basis eines Atmel AtTiny85 designed hat.

Seinen Weichendekoder mini 4x Servo habe ich als Startpunkt gewählt und wollte die sehr günstig zu erwerbenden DigiSpark-Module als Controller einsetzen.

Im Zuge der Portierung des Decoder-Programms vom nackten AtTiny85 auf den DigiSpark hatte ich Probleme, so dass ich als nächste sinnvolle Erweiterung meines “DCC-Fuhrparks” einen DCC-Monitor in Angriff nahm, mit dem ich sehen konnte, welche Telegramme über welchen Port aus dem Booster auf die Decoder losgelassen werden.

Nach langen Versuchen hat sich dann herauskristallisiert, dass das DigiSpark Modul mit installiertem Micronucleus Bootloader nicht in der Lage ist, das erforderliche Timing zu erfüllen, um das zugeführte DCC-Signal zu decodieren. Leider hat sich niemand aus der Entwicklungsmannschaft des DigiSpark Moduls zu diesem Sachverhalt geäußert oder gar eine Lösung des Problems angeboten.

Ich musste also den Micronucleus Bootloader im AtTiny85 überschreiben und den DigiSpark somit zum nackten AtTiny85 mit etwas Peripherie degradieren. Durch diese Maßnahme haben sich alle Probleme in Luft aufgelöst, der Decoder funktioniert auf diese Weise wie von Philipp vorgesehen.

Nachdem der Bootloader entfernt war, musste eine andere Methode zur Programmierung des Chip gefunden werden, es entstand ein recht übersichtlich aufgebauter Programmieradapter für den DigiSpark.


Ein sehr ähnliches Layout habe ich als Untersatz für den DigiSpark im Einsatz als Weichendecoder entworfen:

DCC_ATtiny_ACC-Decoder_ACK V2.2
           (Click auf das Bild für volle Auflösung)

 

DCC_ATtiny_ACC-Decoder_ACK V2.2
           (Click auf das Bild für volle Auflösung)

Hier die Ansichten in 3D gerendert, von oben...

DCC_ATtiny_ACC-Decoder

.. und von unten

DCC_ATtiny_ACC-Decoder Unterseite


Hier noch schnell das Original:

AtTiny85 Weichendecoder mit DigiSpark


Im Wesentlichen habe ich den DCC-Eingangsteil vom DCC-Adapter für den Weichendecoder für 16 Servos übernommen. Die DCC-Spannung wird über den Gleichrichter dem DigiSpark zugeführt, dessen OnBoard verbauter Spannungsregler immerhin 500 mA auf 5 V liefern kann. Das reicht aus um die vier Servos mit zu versorgen, wenn sie nicht gleichzeitig mit voller Geschwindigkeit verfahren werden.

Sollte sich diese Art der Stromversorgung als ungenügend erweisen, kann alternativ zu C2 ein käuflich zu erwerbendes StepDown Schaltregler-Modul eingebaut werden.  Man suche in einem großen Onlinekaufhaus nach Folgendem:
10Pcs Mini DC-DC Converter Step Down Module Adjustable 1V 5V 12V 16V
und wird massenhaft fündig.

Der Siebkondensator C2 wird dann als Piggyback auf der Unterseite des Schaltreglers angelötet.

Die vier Servos werden an den Stiftleisten angesteckt.

Hinweis:
Durch die vier 4k7 PullUp-Widerstände an den Signalleitungen der Servos wird deren Zucken beim Einschalten der Spannung unterbunden. Diesen Hinweis habe ich im Netz gefunden, ein fleißiger Kollege hat das in langen Versuchsreihen herausgefunden, den Namen und den Link habe ich leider vergessen.

Der Taster wird benötigt um den Decoder in den Programmiermodus zu versetzen, Einzelheiten dazu findet ihr auf der Seite von Philipp.

An dieser Stelle möchte ich mich auch nochmals herzlich für die Unterstützung bei der Fehlersuche und beim Aufbau des Verständnisses von DCC Accessory Decodern bei Phillipp bedanken.


 

>