User Tools

Site Tools


ora1-de

ORA-1

InhaltHardwareDCC-Dekoder



Ora-1 ist ein multifunktionaler DCC Zubehördecoder. Er basiert auf Wolfgang Kufers Opendecoder

Einleitung

ORA-1 ist ein vielseitiger Zubehördecoder der, je nach Bestückung der Platine, in der Lage ist Lichtsignale, Magnetartikel und Motorweichen anzusteuern. ORA-1 kann in 2 Versionen gebaut werden, eine für Magnetartikel und Lichtsignale, die andere für Motorweichen. Vielen Dank an Wolfgang und sein Opendecoder Projekt. Bitte besuchen Sie seine Webseite.

Hauptmerkmale

  • Volle Rocrail Unterstützung
  • Kompatibel mit ORD-1
  • 8 Ausgänge ( 4 Weichen )
  • 100x70mm PCB
  • NMRA-DCC kompatibel
  • externer Stromanschluß für die Ausgänge
  • konfigurierbar für Motorantriebe und Magnetartikel
  • einstellbare Versorgungsspannung für Weichenmotoren
  • 0,5A oder 1,0A Strom für Magnetartikel

Block Diagramm

Dateien

Gesamte Dokumentation: https://gitlab.com/rocrail/GCA/tree/master/ora-1
Letzte Version 1.02

Schaltplan und Layout wurden mit KiCad, einer Open Source (GPL) PCB Suite, erzeugt.

Bauteile

Version 1 - Zubehördecoder für Magnetantriebe und Signale

Version 1 kann mit 1 oder 2 ULN2803 Treiber IC's aufgebaut werden. Jeder ULN2803 kann für eine kurze Zeit mit 0,5A belastet werden. Für kleine Modelle wie Spur N oder TT kann 1 ULN2803 reichen, bei größeren Maßstäben ist es besser beide ULN2803 zu bestücken.

Name Wert, Bemerkung Menge
C1, C2 18pF, 2,54mm pin spacing 2
C3 470µ, 5,08mm 1
C4, C6, C8 100nF, 5,08mm 3
C5 100µF, 5,08mm 1
D1 1N4146 1
D2 LED, 3mm, low current, 2mA 1
D3 rectifier B80C1500 1
F1 multifuse, 0,5A, If using 2 x ULN2803 you need 0,9A 1
JP1 jumper, 2,54mm 2
K1, K2, K3, K4 connector, 3 port, 5,08 mm pin spacing 4
OK1 optocoupler 6N136 or 6N137 1
P1 connector 2x10, 2,54 cut out the pins you need 1
P2, P3 connecter, 2 port, 5,08 mm pin spacing 2
R1, R4 resistor 1k5 small 2
R2, R3, R27 resistor 10k small (R2 is only needed if using OK1 = 6N137 2
SW1 switch, print 1
U1 ATTiny2313DIP 1
U2, U3 driver ULN2803A (each driver supports 0,5A ) 2
U4 voltage regulator LM7805 1
X1 10MHz chrystal 1

Sinnvolles Zubehör:

Name Quantity
IC-Socket 20 pin for U1 1
IC-Socket 18 pin for U2 and U3 2
IC-Socket 8 pin for OK1 1

Die Teile können bei diesen Lieferanten bezogen werden:

Reichelt shopping cart (Im Warenkorb sind 2 ULN2803 ausgewählt. Sollte nur eins benötigt werden muss die menge manuell bearbeitet werden. Ausserdem muss ausgewählt werden ob eine 0.5A Sicherung PFRA050 oder eine 0.9A Sicherung PFRA090 verwendet wird.)

Version 2 - Zubehör Decoder für Weichen mit Motorantrieb

Um die Hardware Version 2 zu bauen werden alle Teile der Version 1 plus die unten aufgeführten Teile benötigt. Es wird allerdings nur ein ULN2803 benötigt da BD678 als Boosterstufe eingesetzt werden. Der Kühlkörper für den LM317 ist nich unbedingt notwendig. Es ist aber besser einen kleinen Kühlkörper zu kaufen als einen durchgebrannten LM317 zu ersetzen. Zur Befestigung des Kühlkörpers wird eine M3 Schraube / Mutter benötigt.

Name Wert / Bemerkung Menge
C7 100µF, 5,08mm pin spacing 1
D3 - D10 LED 3mm std. only if you like LED's ;-) 8
Q1 - Q8 BD678 PNP Darlington uncooled 8
R5, R7, R10, R12, R15, R17, R20, R22, R26 resistor 1k5, small 9
R6, R8, R11, R13, R16, R18, R21, R23 resistor 5k6, small 8
R9, R14, R19, R24 resistor 1k small (only needed for LED's) 4
R25 resistor R470 1
RV1 poti 5k 1
U5 voltage regulator LM317 1
U5 U-Form Heatsink for LM317 1

Anstelle der BD678 PNP Darlingtons kann auch jeder andere PNP Transistor, der in der Lage ist 1A zu treiben, verwendet werden. Wenn keine Darlington, sondern normale PNP Transistoren vwerwendet werden müssen die 5k6 Widerstände durch 1k5 ersetzt werden.

Die Bauteile können von diesen Distributoren bezogen werden:

Reichelt shopping cart

Zusammenbau der ORA-1

Version 1 - Zubehördecoder für magnetantriebe und Signale

1. Bauen Sie die Brücke neben U2 ein. 2. Löten Sie alle Widerstände und Dioden ein. Wenn ein 6N137 Opto benutzt wird, muss R2 eingebaut werden. Bei einem 6N136 darf R2 nicht eingebaut werden. 3. Bauen Sie alle IC Sockel ein. Wenn Sie die 0,5A Version bauen, müssen Sockel für U1, U2 und OK1 eingelötet werden. Wenn Sie die 1A Version bauen muss zusätzlich ein Sockel für U3 eingebaut werden. 4. Löten Sie alle anderen Teile ein. 5. Bauen Sie das Netzteil, Elko's und die Schraubklemmen ein. 6. Schliessen Sie ORA-1 an eine Stromquelle an und überprüfen Sie VAA und +5V 7. Bauen Sie die IC's ein 8. Programmieren Sie den Attiny2313. 9. Testen Sie: Wenn Sie den Button (SW1) länger als 100ms drücken muss LED2 leuchten.

Version 2 - Zubehördecoder für Motorweichen

1. Bauen Sie die Brücke neben U2 ein. 2. Löten Sie alle Widerstände und Dioden ein. Wenn ein 6N137 Opto benutzt wird, muss R2 eingebaut werden. Bei einem 6N136 darf R2 nicht eingebaut werden. 3. Bauen Sie alle IC Sockel ein. Wenn Sie die 0,5A Version bauen, müssen Sockel für U1, U2 und OK1 eingelötet werden. Wenn Sie die 1A Version bauen muss zusätzlich ein Sockel für U3 eingebaut werden. 4. Löten Sie alle anderen Teile ein. 5. Löten Sie die PNP Transistoren, das Netzteil, Elko's und die Schraubklemmen ein. 6. Schliessen Sie ORA-1 an eine Stromquelle an und überprüfen Sie +5V und VAA hinter dem LM317. Testen Sie das Poti und messen Sie die Ausgangsspannung des LM317. 7. Bauen Sie die IC's ein 8. Programmieren Sie den Attiny2313. 9. Testen Sie: Wenn Sie den Button (SW1) länger als 100ms drücken muss LED2 leuchten.

Programmieren des ATTiny2313

Die Programmierung des ATTiny2313 ist relativ einfach. Sie benötigen eine Programmiersoftware und einen kleinen Hardware Adapter für die serielle Schnittstelle. Wir empfehlen Ponyprog2000 als Programmiersoftware.

Für Linux wurde die Programmierung mit Avrdude getestet. Avrdude ist in vielen Linux Distributionen enthalten.

Hardware

Die Programmierhardware ist sehr klein. Es werden nur 4 Widerstände, 2 Z-Dioden, 1 Transistor und zwei Stecker benötigt. Die Schaltung kann problemlos auf einer Lochrasterplatine aufgebaut werden. Für den ambitionierten Modellbahner habe ich ein kleines Layout vorbereitet.

Version 2.1:

Sie benötigen zusätzlich noch ein 1zu1 Kabel um den 6 Pin Connector auf dem Decoder mit dem 6 Pin Connector das Programmieradapters zu verbinden.

Software

Zuerst müssen Sie einstellen welche Programmierhardware Sie benutzen. Wenn Sie den oben beschriebenen Adapter verwenden, gehen Sie folgendermassen vor: Klicken Sie auf "Setup/Interface Setup" und setzen Sie den I/O Port wie es unten im Bild beschrieben ist.

ponysetup7.jpg

Achtung: Wenn Sie die Version 1.01 mit 10k Pullup am Reset verwenden, machen Sie bitte keinen Hacken bei "Invert Reset" !!!

Teilen Sie Ponyprog den Namen des ATTiny mit: Klicken Sie auf "Device / AVR micro / ATtiny2313"

Die Software für den Decoder ist auf Wolfgang Kufer's Opendecoder page zu finden: http://www.opendcc.de/elektronik/opendecoder/OpenDecoder_V04.zip . (Gegebenenfalls finden Sie auf dieser Seite neuere Versionen der Software.) Sie müssen das File downloaden und entzippen. Aus dem ZIP-Archiv müssen die Dateien OpenDecoder_10MHz.eep und OpenDecoder10MHz.hex in den Atmel chip programmiert werden.

Nun muss ORA-1 mit dem Programmieradapter verbunden werden. Zum Programmieren muss die ORA-1 mit 8V bis 30V AC oder DC verbunden werden. Bevor der Chip programmiert werden kann müssen die Fuses gesetzt werden. Klicken Sie auf "Command / Security and configuration Bits" Setzen Sie die Fuses wie im untenstehenden Bild beschrieben:

ponyfuses1.jpg

Senden Sie die oben beschriebenen Einstellungen mit "Write" an den Dekoder.

Jetzt öffnen Sie EEprom- und Programmfile. Klicken Sie auf "File / Open Program (FLASH) File …" und öfnen sie die Datei OpenDecoder10MHz.hex and dem Ort wo sie entpackt wurde. Jetzt klicken Sie auf "File / Open Data (EEPROM) File …" und wählen die Datei OpenDecoder_10MHz.eep aus. Nachdem beide Dateien erfolgreich geladen wurden klicken Sie auf "Command / Write Program (FLASH)". Wenn das Flash-File programmiert wurde klicken Sie auf"Command / Write Data (EEPROM)"

Wenn Sie Avrdude benutzen:

avrdude -p t2313 -c ponyser -P /dev/ttyS0 -e \
          -U flash:w:OpenDecoder_10MHz.hex \
          -U eeprom:w:OpenDecoder_10MHz.eep \
          -U efuse:w:0xff:m \
          -U hfuse:w:0xd9:m \
          -U lfuse:w:0xef:m

Nun ist der ATTiny bereit für den ersten Test: Schliessen Sie eine Stromquelle (8 bis 30V AC oder DC) an ORA-1 an. Drücken Sie die Taste SW1 auf der ORA-1. Wenn die LED leuchtet, befindet sich ORA-1 im Programmiermodus und erwartet DCC Signale die seine Betriebsart festlegen. Schalten Sie die Stromzufür zur ORA-1 aus und freuen Sie sich: ORA-1 funktioniert.

Bedienung

Stromversorgung und DCC

Verbinden SieIhren 18V ( möglich sind 8V bis 30V AC oder DC ) Modellbahntrafo mit der Klemme P3 und das DCC Kabel mit der Klemme P2. Es ist auch möglich P2 und P3 zu brücken und Power und DCC vom Gleisanschluss zu beziehen.

Version 1 - Magnetartikel und Signale

Verbinden Sie ihre Weichenantriebe mit den Schrauben 1-3 jedes Connectorblockes K1 bis K4. Schraube 1 ist der "grüne" Ausgang, Schraube 3 ist der rote Ausgang. Schraube 2 ist der Power Ausgang (schwarzes Kabel bei den meisten Weichenantrieben).

Version 2 - Motorweichen

Verbinden sie die Motoren mit Schraube 1 und 3 von jedem Connector K1 bis K4.

ORA-1

ORA-1 hat 8 Betriebsmodi:

Mode Funktion
0 Weichendecoder für Magnetantriebe, Pulsdauer 0,25s
1 Weichendecoder für Magnetantriebe, Pulsdauer 0,5s
2 Weichendecoder für Magnetantriebe, Pulsdauer 1s
3 Weichendecoder für Magnetantriebe, Pulsdauer 2s
4 Lichtsignaldecoder, 4 Signale mit je 2 Lampen
5 Lichtsignaldecoder, 2 Signale mit je 3 Lampen, ein Signal mit 2 Lampen
6 Lichtsignaldecoder, 2 Signale mit je 4 Lampen
7 Decoder für Verkehrsampeln

Sie können die Betriebsart des Decoders wählen indem sie ein DCC-Weichenkomando senden während ORA-1 sich im Programmiermodus befindet. Um in den Programmiermodus zu gelangen drücken sie die Taste SW1. LED D2 leuchtet solange sich ORA-1 im Programmiermodus befindet. Den jeweiligen Betriebsmodus programmieren Sie indem sie den zugehörigen Weichenbefehl senden. Nachdem ORA-1 den Befehl empfangen hat, erlischt LED D2.

Beispiel:

Sie möchten ORA-1 als Weichendecoder für die Motorweichen Nr. 13 bis 16 nutzen. Mode 3 ist die passende Betriebsart. Dementsprechend senden sie das DCC Komando "grün" für die zweite Weiche dieses Decoders. Weiche 14 entspricht der 2. Weiche auf dem 4. ORA-1 Decoder (jeder Decoder kann 4 Weichen ansteuern). Um ORA-1 entsprechend zu programmieren senden sie also das DCC Komando für den Ausgang "grün" von Weiche Nr.14 bzw. den Ausgang "grün" der zweiten Weiche des vierten Decoders.

noch Fragen ? ;-)

Pictures

3D Bild aus Kicad

Bild des ORA-1 Prototypen der mit allen Bauteilen die für die Version Magnetartikel/Signaldecoder benötigt werden, bestückt wurde. (Vergessen Sie das Poti, es dient nur zur Spannungseinstellung für Motorweichen)

ora-1a.jpg

Bild des ORA-1 Prototypen der mit allen Bauteilen die für die Version Decoder für Motorantriebe benötigt werden, bestückt wurde.

ora-1b.jpg

ora1-de.txt · Last modified: 2019/05/05 00:40 by rainerk