Arduino Uno als DCC Signaldecoder

Post Reply
lordbrummi
Posts: 1993
Joined: 01.09.2014, 11:12

Arduino Uno als DCC Signaldecoder

Post by lordbrummi » 14.03.2016, 15:59

Hallo zusammen,

ich möchte euch vorstellen, wie ihr mit einem Arduino Uno einen Signaldecoder für die Ansteuerung per DCC mit bis zu 16 Signalen umsetzen könnt.

Was braucht man:
-Einen Arduino Uno (gibt es in der Buch dür 3-4 Euro aus China)
-Diesen Sketch (im Link ist in der ersten Zeile der Downloadlink):
https://rudysmodelrailway.wordpress.com ... -software/

Der Sketch ist selbsterklärend und gut kommentiert, die DCC Libary ist auch in der download-zip enthalten

Eine Optokopplerschaltung um das DCC Signal in den Arduino an Pin2 zu bringen:
https://rudysmodelrailway.wordpress.com/software/

Einen Transistor damit über einen Ausgangspin am Arduino je nach Low oder High Signal das Signal umgeschalten werden kann (damit muß man keine 2 Ausgangspins belegen) (Danke an Rainer für die Hilfe):
http://forum.rocrail.net/viewtopic.php?f=70&t=11570

Der Sketch ist selbsterklärend und wie erwähnt gut dokumentiert. Für jedes Signal lässt sich eine eigene Zubehöradresse konfigurieren. In RR dann beim entsprechenden Signal diese Adresse eintragen - fertig.

Was ich noch umsetzen möchte mir über z.b. fritzing eine Aufsetzplatine für den Arduino zu erstellen, wo der Optokoppler und die Transistoren für die Signale bereits enthalten sind.

Testaufbau siehe Bild.


Damit könnt ihr günstig einen DCC Signaldecoder umsetzen.

Grüße Dieter

PS: In dem Download ist auch ein Sketch für einen Servodecoder. Dies werde ich als nächstes umsetzen.
Geplant ist, die Servos seperat mit Spannung zu versorgen (keine Last über den Arduino) und per Mosfet (IRLD024) ein/auszuschalten, damit sie bei Nichtbenutzung stromlos sind.
Attachments
image.jpeg

stefan218
Posts: 22
Joined: 06.01.2016, 12:58

Re: Arduino Uno als DCC Signaldecoder

Post by stefan218 » 14.03.2016, 20:40

Hallo Dieter,

als Ausgangstreiber für die Signale/Servos kannst Du auch einen ULN2803A verwenden. Spart Lötarbeit und funktioniert super.

Gruß
Stefan

lordbrummi
Posts: 1993
Joined: 01.09.2014, 11:12

Re: Arduino Uno als DCC Signaldecoder

Post by lordbrummi » 14.03.2016, 21:52

Hi Stefan,

Vielen Dank für den Tipp.
Werde ich mal versuchen ob ich das hinbekomme.
So wie ich das sehe sind das praktisch 8npn in einem Gehäuse, den Basis und die Led Widerstände braucht man aber dennoch. Man hat halt einen gemeinsamen Emitter (GND) oder interpretier ich das falsch?

Grüße Dieter

RainerK
Moderator
Posts: 3822
Joined: 29.04.2009, 09:31
Location: Sprockhövel (zwischen BO u. W)
Contact:

Re: Arduino Uno als DCC Signaldecoder

Post by RainerK » 15.03.2016, 06:19

Hallo Dieter,
lordbrummi wrote:...den Basis und die Led Widerstände braucht man aber dennoch. Man hat halt einen gemeinsamen Emitter (GND)...
nein, die Basiswiderstände sind im ULN... integriert,
ja, die LED-Widerstände werden benötigt,
ja, der Emitter (GND) ist gemeinsam.

Es grüßt RainerK

lordbrummi
Posts: 1993
Joined: 01.09.2014, 11:12

Re: Arduino Uno als DCC Signaldecoder

Post by lordbrummi » 15.03.2016, 08:32

Hallo zusammen,

ich hatte das gestern abend noch getestet mit dem ULN2803, funktioniert super und man braucht auch keine Basiswiderstände wie von Rainer erwähnt.

Eine Frage noch:
Die erwähnte Optokopplerschaltung um das DCC Signal auf den Arduino zu bringen ist ja eigentlich nur einmal nötig (zum Arduino geht ja nur das DCC Signal).
D.h. meines Erachtens benötigt man die Optokopplerschaltung nur einmal für alle Arduinos oder wäre es besser (vielleicht aus Timing-Gründen) jedem Arduino einen eigene OptokopplerSchaltung fürs DCC Signal zu verpassen?

Danke und Grüße
Dieter

RainerK
Moderator
Posts: 3822
Joined: 29.04.2009, 09:31
Location: Sprockhövel (zwischen BO u. W)
Contact:

Re: Arduino Uno als DCC Signaldecoder

Post by RainerK » 15.03.2016, 08:52

Hallo Dieter,

wenn alle Arduinos und die daran angeschlossene Elektronik
aus einer gemeinsamen Stromversorgung versorgt werden,
genügt dafür ein Optokoppler.

Bitte achte darauf, dass es keine gleichzeitige Verbindung
vom PC über USB, Arduino, weitere Elekronik und Gleisspannung gibt.

Das könnte Probleme für die Funktion und das Leben von Bauteilen bringen. :!:

Ausnahme mit Vorsicht: :!:
Wenn alle Beteiligten (PC, Arduinos, weitere Elekronik und Gleisspannung) mit gemeinsamer Masse arbeiten.
Dann darf der die Gleisspannung erzeugende Booster aber nur vom Typ Halbbrücke sein.

lordbrummi
Posts: 1993
Joined: 01.09.2014, 11:12

Re: Arduino Uno als DCC Signaldecoder

Post by lordbrummi » 15.03.2016, 10:46

Hallo Rainer,

Danke für die Erklärungen.
Die Arduinos bekommen ein eigenes Netzteil. Ebenso dann stromstärkere Verbraucher über Mosfet wie zb. Servo, die dann am Arduino betrieben werden (Alles 5 oder 7,5V). Nur diese Massen sind verbunden.
Von der Moba Seite kommt nur das DCC Signal über den Opto rein.

Grüße Dieter

Post Reply

Return to “Arduino (DE)”