Stromfühler mit Arduino abfragen

#1 von Richi1959 , 23.08.2023 22:09

Hallo mitnand,
ich bin inzwischen zum 14ten mal 50 geworden und versuche eine BW in Spur N zu bauen. Funktioniert schon ganz gut aber jetzt beschäftigt mich ein Problem bei dem ich iwie auf dem berühmten Schlauch stehe. Ich habe Stromfühler, nach einer Vorlage von Stephans Homepage gebaut (siehe Bild). Wenn ich ein Voltmeter dranhalte, dann steigt bei belegt die Voltzahl von 0,4 auf 2,8 an. Das möchte ich mit einem Arduino Nano weiterverwenden aber das kriege ich nicht auf die Reihe. Ich habe versucht, das Signal am Analogpin auszuwerten aber nur Zufallszahlen, egal ob belegt oder nicht. Gespeist wird das Gleis von einer z21. Kann mir wer erklären, welche Schaltung ich aufbauen muss, um eine LED bei Blegt eizuschalten. Ich lese schon geraume Zeit in diesem Forum mit und es hat mir schon oft weitergeholfen aber zu diesem Thema konnte ich nichts finden. Ich habe noch nie eine Frage gestellt und hoffe, dass ich alles richtig gemacht habe. Bild entfernt (keine Rechte)


Richi1959  
Richi1959
Beiträge: 3
Registriert am: 03.01.2021
Ort: Regensburg
Spurweite N
Steuerung z21
Stromart Digital


RE: Stromfühler mit Arduino abfragen

#2 von RichyD , 23.08.2023 22:22

Servus,
mit einem Optokoppler am Ausgang bekommst du ein definiertes LOW oder HIGH, ohne Zufallswerte.
Aus dem Stehgreif würde ich einen PC817 (einfach) oder hier sinnvoller einen PC847 (vierfach) ins Auge fassen, natürlich mit passendem Widerstand.

Beste Grüsse
Richy


Richi1959 hat sich bedankt!
RichyD  
RichyD
InterCity (IC)
Beiträge: 871
Registriert am: 02.11.2020


RE: Stromfühler mit Arduino abfragen

#3 von Richi1959 , 23.08.2023 22:33

Danke für die schnelle Antwort. Optokopler 6N137 hätte ich rumliegen und was ist der passende Widerstand? Warum funktioniert die Auswertung über den Analogpin des Arduino nicht?


Richi1959  
Richi1959
Beiträge: 3
Registriert am: 03.01.2021
Ort: Regensburg
Spurweite N
Steuerung z21
Stromart Digital

zuletzt bearbeitet 23.08.2023 | Top

RE: Stromfühler mit Arduino abfragen

#4 von moppe , 24.08.2023 00:17

Es ist mein höchster Empfehlung ein Rückmelder zu nutzen wer kein Verbindung zwischen gleisspannung und ausfügangssignal, wie der Schaltung du gebaut hab

Bau dir dieser Rückmelder
https://moppe.dk/besat.html
Und bitte erinnern, das du besetzsignal bekommen 10.000 mal pro Sekunde.


Klaus


"Meine" Modellbahn:http://www.modelbaneeuropa.dk
Dänisches Bahnforum: http://www.baneforum.dk
PIKO C4 "Horror Gallery": http://moppe.dk/PIKOC4.html


AlbertK und Richi1959 haben sich bedankt!
 
moppe
Trans Europ Express (TEE)
Beiträge: 8.756
Registriert am: 07.08.2011
Homepage: Link
Ort: Norddeusche halbinsel
Gleise Roco, PECO, Märklin/Trix, PIKO,
Spurweite H0, H0e, N, Z
Steuerung Z21, Lenz, MpC Gahler+Ringsmeier, Games on Track/Faller
Stromart AC, DC, Digital, Analog


RE: Stromfühler mit Arduino abfragen

#5 von Hobbyprog , 24.08.2023 01:34

Hallo,
ich habe noch einige 8 fach Stromfühlerplatinen über.

Die sind bis 3 Ampere pro Melder ausgelegt.
Die funktionieren mit ein Arduino. Du musst nur die Arduino Pinne als Pul Up programmieren, und dann abfragen HIGH = aus LOW = Meldet
Beachte bei der Programmierung, dass Du beim Abfragen der Eingänge sehr viele Meldungen erzeugst. Daher solltest du nur Zustandsänderungen weiter leiten.

8 LED kannst Du auch jeweils mit bis zu. 40 mA damit Schalten. Du brauchst dann eine Stromquelle, Widerstand und LED.

Die R Melder haben ca. 1,2V Spannungsabfall, dass kannst Du aber sehr einfach mit einem Brückengleichrichter in der Gleiseispeisung ausgleichen.


Durch die Optokoppler hast Du eine galvanische Trennung zu Gleis, so das der Arduino vor der Gleisspannungen geschützt ist.

Ich kann Dir die Platinen sehr günstig abgeben. Die Bauteile musst Du selber besorgen und löten.

https://bluethners.de/DCCProjekt/Zentral...n.html#Label857

Schreibe mir eine E Mail falls Du daran interessiert bist

Ich habe ein Interface für Rocrail für ein 16 Fach Platine programmiert. Daher brauch ich die Platinen nicht mehr.

https://bluethners.de/DCCProjekt/Zentral...tromsensor.html

Viele Grüße Martin


Richi1959 hat sich bedankt!
 
Hobbyprog
InterRegioExpress (IRE)
Beiträge: 434
Registriert am: 03.11.2020
Homepage: Link
Ort: NRW
Spurweite H0
Steuerung DCC Eigenbau
Stromart Digital

zuletzt bearbeitet 24.08.2023 | Top

RE: Stromfühler mit Arduino abfragen

#6 von oliwel , 27.08.2023 10:22

Zitat von Richi1959 im Beitrag #3
Danke für die schnelle Antwort. Optokopler 6N137 hätte ich rumliegen und was ist der passende Widerstand? Warum funktioniert die Auswertung über den Analogpin des Arduino nicht?


Die skizzierte Schaltung legt den Rückmelde-PIN bei "belegt" auf das Potential der Zentrale am Pin "rot", ich hab zwar keine Ahnung von der Z21 aber vermute mal das auch hier irgendwas um die 20 Volt anliegen - gegenüber der Masse des Gleises. Damit du hier überhaupt etwas sinnvolles Auswerten kannst, müsstest du deinen Arduino und die z21 erstmal in ein Bezugssystem bringen - Spannung entsteht immer zwischen zwei Enden - das macht man in der Regel über eine gemeinsame Masse. Wenn du das mit der Schaltung machst, dann geht dein Arduino aber vermutlich in Rauch auf (zumindest der Analog PIN) weil der keine 22 Volt verträgt :)

Die "billige" Lösung wäre ein Spannungsteiler über den Arduino zu setzen, damit hast du aber nach wie vor Arduino und Bahn direkt verbunden und ebenfalls das Risiko eines Defektes bei Spannungsspitzen auf der MoBa, die saubere Lösung ist daher wie hier schon erwähnt einen Optokoppler einzubauen, der 1N637 sollte mit dem 1k aus der Schaltung funktionieren, vermutlich gehts auch mit 4.7k noch - die Diode kannst du dann weglassen, vorsicht beim Einbau - der Strom fliesst "in die Schaltung hinein", d.h. du musst die Schaltung in Flußrichtung nach dem OK platzieren und die andere Seite mit der Masse deiner Zentrale verbinden.

Oli


Spielbahner, Mä-Digital HO, 15qm Rahmenbau, Planungsphase, Rohbau, Graswurzel-Phase
Bautagebuch mit Bildern: http://www.oliwel.de/category/meine-modellbahn/
SBH und Blocksteuerung mit Bremsautomatik: viewtopic.php?f=7&t=187666


Richi1959 hat sich bedankt!
 
oliwel
InterCity (IC)
Beiträge: 892
Registriert am: 23.11.2014
Homepage: Link
Ort: Oberbayern
Gleise Mä K-Gleis
Spurweite H0
Steuerung CS3+, MobaLedLib, Selbstbau
Stromart Digital


RE: Stromfühler mit Arduino abfragen

#7 von volkerS , 27.08.2023 14:26

Hallo Richi,
die sauberste Lösung sind je 2 Dioden in Reihe + antiparallel ebenfalls 2 Dioden (kann man auch mit einem Brückengleichrichter realisieren). Strom der Dioden sollte 3A sein, also 1N54xx oder ähnliche.
Parallel dazu kommt die Diode des Optokopplers mit Vorwiderstand (ca. 22 Ohm - 100 Ohm). Ausgangsseitig musst du beim 6N137 Pin 8 an Ub 5V schalten, Pin 5 an Gnd. Pin 7 über 10kOhm an Ub 5V.
Pin 6 kommt an einen Digitaleingang des Arduino. Internen Pull Up Widerstand einschalten! oder Pin 6 extern ebenfalls mit 10kOhm an Ub 5V schalten.
Ist der Gleisabschnitt nicht belegt sieht der Arduino am Eingang dann Ub (5V). Ist der Gleisabschnitt belegt leuchtet die Led im Optokoppler und der Ausgang schaltet nach Gnd, der Eingang des Arduino wechselt also nach Gnd.
Da die überwachten Gleisabschnitte mit der Reihenschaltung aus 2 Dioden versorgt werden, liegt dort eine um ca. 1,6 - 2V niedrigere Gleisspannung an was sich in geringerer Geschwindigkeit der Loks zeigt. Deshalb sollte in die Leitung die alle nicht rückgemeldeten Gleisabschnitte versorgt ebenfalls die Schaltung aus den Dioden, hier ohne Optokoppler, eingebaut werden. Damit liegt an allen Gleisabschnitten eine in der Höhe gleiche Gleisspannung an.
Volker


Richi1959 hat sich bedankt!
volkerS  
volkerS
ICE-Sprinter
Beiträge: 5.998
Registriert am: 14.10.2014


RE: Stromfühler mit Arduino abfragen

#8 von Hobbyprog , 27.08.2023 14:42

Hallo

Hardware:
Ein Stromfühler - Rückmelder kann man ganz einfach mit einen Optokoppler, Widerstand und 4 Dioden bauen.
4 Dioden sind auch in ein Brückengleichrichter. Die Rückmelder mit der Diodentechnik haben einen kleinen Nachteil, weil sie die Gleisspannung an den Meldegleisen um bis zu 1,4 Volt absenken. Vorteilhaft ist der einfache Aufbau und die galvanische Trennung zum Gleis.
Mein R Melder:
https://bluethners.de/DCCProjekt/Zentrale/Stromfuehler.html

Die 1,4 Volt kann man aber sehr leicht ausgleichen, in dem man einfach einen Brückengleichrichter (Dummy-Dioden) in der Zuleitung zwischen Zentrale und Gleise ohne R Melder baut.
Die Üblicher Gleisspannungen sind ofte sowieso zu hoch. Für Spur N würde ich nicht mehr als 14 Volt verwenden. Mehr belastet nur die Lokdecoder durch unnötige Abwärme.
Das führt zum vorzeigen Verschleiß und kann im Extremfall sogar ein Kunststoffgehäuse beschädigen.


Software:
Einen andere Sache ist die Auswertung, und dann muss auch alles wahlweise an eine LED, Zentrale oder MOBA Steuerung gesendet werden.
Die Auswertung des Melders ist mit dem Arduino recht einfach. Der Melder wird auf vom Optokoppler auf GND gezogen. Daher muss vom Arduion einen Spannung oder ein Pull Up Widerstand die Spannung liefern. Am einfachsten geht das mit dem Arduino der hat PulL Up Widerstände eingebaut, die man nur aktivieren muss.

Eine LED kann man natürlich ohne Arduino ansteuern. Die Optokoppler können bis zu 30mA und mehr schalten.

Jetzt kann man die bis zu 15 Pinne als E Melder auswerten. Daher HIGH = Melder AUS LOW = Melder AN. Damit es keine Datenflut gibt wenn die Abfrage erfolgt, sollte nur Zustandsänderungen weiter geleitet werden.

Interfaces:
Die Daten müssen dann auch noch über einem Datenbus an die Zentrale bzw. MOBA-Software gesendet werden.
Klassisch wird der S88 Bus verwendet. Neuere System verwenden andere Protokolle . Ich verwende für Rocrail das Rascii oder auch das DCC++ Protokoll.
Wie meistens wird es da für den Arduion schon Bibliotheken geben.

Ich habe das jetzt nur mal schnell.

Viele Grüße Martin


Richi1959 hat sich bedankt!
 
Hobbyprog
InterRegioExpress (IRE)
Beiträge: 434
Registriert am: 03.11.2020
Homepage: Link
Ort: NRW
Spurweite H0
Steuerung DCC Eigenbau
Stromart Digital

zuletzt bearbeitet 27.08.2023 | Top

RE: Stromfühler mit Arduino abfragen

#9 von Anton_Zett , 27.08.2023 15:31


Grüße
Anton

Meine Homepage


 
Anton_Zett
InterCity (IC)
Beiträge: 502
Registriert am: 27.05.2017
Homepage: Link
Spurweite N, Z
Stromart DC, Digital


RE: Stromfühler mit Arduino abfragen

#10 von Hobbyprog , 27.08.2023 15:42

Hallo Anton,

meine Platinen habe ich wie in der einfachen Schaltung vorgesehen. Falls mam möchte kann man dort auch LTV814 einbauen. Aber der PC817 funktioniert auch gut, wenn man kein analogen Betrieb macht.
Frage. Was bewirkt die Bremsdiode. Ist die für spezielle Decoder gedacht?

Viele Grüße Martin


 
Hobbyprog
InterRegioExpress (IRE)
Beiträge: 434
Registriert am: 03.11.2020
Homepage: Link
Ort: NRW
Spurweite H0
Steuerung DCC Eigenbau
Stromart Digital

zuletzt bearbeitet 27.08.2023 | Top

RE: Stromfühler mit Arduino abfragen

#11 von volkerS , 27.08.2023 16:02

Für Decoder die ABC-Bremsen verstehen.
Volker


Hobbyprog hat sich bedankt!
volkerS  
volkerS
ICE-Sprinter
Beiträge: 5.998
Registriert am: 14.10.2014


RE: Stromfühler mit Arduino abfragen

#12 von Langsamfahrer , 27.08.2023 16:02

Hallo Martin!

Die "Bremsdiode" dürfte eine bestimmte Variante eines Bremsmoduls sein, der bei Signal auf "Halt" den Decoder zum sanften Stoppen bringt.
Da gibt es aber mehrere verschiedene Varianten, und jeder Decoder unterstützt nur einige.

Gruß,
Jörg


H0, Märklin C+K, DCC, kleine Fahrzeuge, Dampf+Diesel, III-IV, eingleisig


Hobbyprog hat sich bedankt!
Langsamfahrer  
Langsamfahrer
InterCity (IC)
Beiträge: 623
Registriert am: 13.05.2020
Ort: Berlin
Gleise Märklin C+K
Spurweite H0
Stromart Digital


RE: Stromfühler mit Arduino abfragen

#13 von Langsamfahrer , 27.08.2023 16:04

Hallo Volker!

nein, die ABC-Schaltung ist etwas komplizierter: Die lässt beide Halbwellen durch, allerdings mit unterschiedlicher Spannung.
Diese Einzeldiode sieht mehr wie ein Märklin-Bremsmodul aus - allerdings dachte ich, die hätten noch einen Glättungskondensator.

Gruß
Jörg


H0, Märklin C+K, DCC, kleine Fahrzeuge, Dampf+Diesel, III-IV, eingleisig


Langsamfahrer  
Langsamfahrer
InterCity (IC)
Beiträge: 623
Registriert am: 13.05.2020
Ort: Berlin
Gleise Märklin C+K
Spurweite H0
Stromart Digital


RE: Stromfühler mit Arduino abfragen

#14 von volkerS , 27.08.2023 16:06

Komplettes ABC-Modul 3 zu 1 Diode, ich weiß.
Volker


volkerS  
volkerS
ICE-Sprinter
Beiträge: 5.998
Registriert am: 14.10.2014


RE: Stromfühler mit Arduino abfragen

#15 von Hobbyprog , 27.08.2023 16:08

Hallo,

Bei Dreileiter würde ich ein Kontaktgleismelder bevorzugen. Der ist noch einfacher zu bauen.

Hier mein 16 Fach Melder mit Rocrail-Interface und LED-Anzeige:
https://bluethners.de/DCCProjekt/Zentral...6.html#Label804

Die Sofrtware für den NANO, ist für nicht kommerzieller Anwendung kostenlos.

Viele Grüße Martin


 
Hobbyprog
InterRegioExpress (IRE)
Beiträge: 434
Registriert am: 03.11.2020
Homepage: Link
Ort: NRW
Spurweite H0
Steuerung DCC Eigenbau
Stromart Digital

zuletzt bearbeitet 27.08.2023 | Top

RE: Stromfühler mit Arduino abfragen

#16 von Anton_Zett , 27.08.2023 18:48

Zitat von Hobbyprog im Beitrag #10

....
Frage. Was bewirkt die Bremsdiode. Ist die für spezielle Decoder gedacht?
....


Ich fahre SX mit Dekoder von D&H, da bewirkt eine einzelne (schnelle) Diode, dass der Zug abgebremst wird.


Grüße
Anton

Meine Homepage


Hobbyprog hat sich bedankt!
 
Anton_Zett
InterCity (IC)
Beiträge: 502
Registriert am: 27.05.2017
Homepage: Link
Spurweite N, Z
Stromart DC, Digital


RE: Stromfühler mit Arduino abfragen

#17 von Richi1959 , 04.10.2023 22:58

[quote=Anton_Zett|p2584931]Hallo!

Meine Lösung:
Danke für die Antwort.
Warum wird der Optokoppler über einen Taransistor angesteuert und was ist das für ein Transistor


Richi1959  
Richi1959
Beiträge: 3
Registriert am: 03.01.2021
Ort: Regensburg
Spurweite N
Steuerung z21
Stromart Digital


   

Welchen Trafo für Häuser-Beleuchtung
Restsücke von Viessmann Innenbeleuchtung verwerten

  • Ähnliche Themen
    Antworten
    Zugriffe
    Letzter Beitrag
Xobor Einfach ein eigenes Forum erstellen
Datenschutz