DCC Dekoder: Unterschied zwischen den Versionen
Zeile 30: | Zeile 30: | ||
Ausgang Konfiguration: | Ausgang Konfiguration: | ||
:* CV# 5 - "1" als Wert führt zum Shift der Adresse um "4" für IntelliBox (default 255) | :* CV# 5 - "1" als Wert führt zum Shift der Adresse um "4" für IntelliBox (default 255) | ||
+ | :* CV# 8 - Softwareversion (Firmware) Dekoder - "nur lesen" | ||
+ | :* CV# 9 - Softwareidentifikation (ID) Dekoder - "nur lesen" | ||
<!--T:21--> | <!--T:21--> |
Version vom 3. Juni 2020, 12:56 Uhr
Eigenbau | Allgemein | Railcom | DCC-Dekoder | Servo-Dekoder | Spezialdekoder
DCC Sniffer
Mit dieser Hardware kann der Arduino das DCC-Signal dekodieren. Dazu wird der Interrupt 0, welcher sich beim Arduino UNO an Pin 2 befindet und der Timer 1 genutzt. Der Timer startet nach einer ansteigenden Flanke am Pin 2 und läuft für 70µs. In einer Auswerteroutine wird dann der Zustand (High/Low) des Pin 2 abgefragt. Diese Daten, beginnend bei der Präambel, werden zu je 8 Bit zusammengefasst und ergeben ein DCC Datenpaket.
Hardware
Die Hardware kann in drei verschiedenen Varianten aufgebaut werden.
- Der Aufbau mit einem PC817 Optokoppler ist sehr klein, allerdings gibt es keinen passenden Sockel für diesen 4 Pin Optokoppler. Das Signal wird durch den Optokoppler ohne Signalaufbereitung etwas flach und hat keine steile Flanke mehr.
- Ein 6N136 oder 6N137 Optokoppler besitzt einen interne Signalverstärkung. Hier wird die Flanke weitergegeben die auch für einen Booster mit Brückengleichrichter nutzbar ist.
- Der Einfachste Aufbau ohne optische Trennung für Dekoder welche auch direkt vom Gleis mit Spannung versorgt werden. Hier kann Wahlweise eine Diodenkombination oder ein Gleichrichter verwendet werden. Um den Mikroprozessor zu schützen wird das Signal über einen Widerstand geführt.
Software
Die Software ist für die Arduino IDE geschrieben.
Mini 4x DCC-Decoder
Anwendungen
DCC CV-Programmierung
Ausgang Konfiguration:
- CV# 5 - "1" als Wert führt zum Shift der Adresse um "4" für IntelliBox (default 255)
- CV# 8 - Softwareversion (Firmware) Dekoder - "nur lesen"
- CV# 9 - Softwareidentifikation (ID) Dekoder - "nur lesen"
Für jeden Ausgang x=[1..4] können folgende Parameter eingestellt werden:
- CV# x0 - Zubehöradresse (high)
- CV# x1 - Zubehöradresse (low)
- CV# x2 - PWM Frequenz ON (0..255) - default: 255
- CV# x3 - PWM Frequenz OFF (0..255) - default: 0
- CV# x4 - Zähler für PWM Änderung (Geschwindigkeit) (0..255) - default: 10
- CV# x5 - Geschwindigkeit Änderung zu Position ON (0..255)
- CV# x6 - Geschwindigkeit Änderung zu Position OFF (0..255)
- CV# x7 - Invertiert die Position ON und OFF des Ausgangs
Eine Programmierung des DCC 4x mini Dekoders kann über DCC direct am Programmiergleis erfolgen. Damit ein unabsichtliches Ändern der Werte durch die Programmierung eines anderen Dekoders verhindert wird, kann diese Funktion in der Software nach dem Programmieren deaktiviert werden.
Ein Auslesen der programmierten CV# Werte, ist nur mit dem DCC-Tiny-Programmer (Lesebaustein) und
einer vorherigen Hochspannungsprogrammierung (High-Voltage-Programming) möglich!
Hardware
Software
Motorweichen Treiber
Für die Weichenansteuerung nutze ich die 4x Ausgänge Schaltdecoder, welcher oben erklärt wurde.
Motorweichenantrieben können mit einem Relais gesteuert werden. Diese Schalten eine Phase der 16V~ für die Motorantriebe. Mit einem Doppelumschaltkontakt am Relais, kann der zweite Kontakt zum Beispiel für eine Herzstückpolarisierung eingesetzt werden.
Soll kein Relais verwendet werden kann der Adapter für Motorweichen ORM-1 von Rocrail verwendet werden - Vergleichbar ist dieser mit dem LENZ 11010 (LA 010).