Hallo an alle,
ich habe ein kleines Problem mit einer Schaltung und/oder einem Sketch
auf einem Arduino UNO und hoffe, dass ich in diesem Forum richtig damit
bin.
Ich möchte erwähnen, dass Ich das Problem bereits in einem anderen Forum
geschildert habe, bin dort allerdings nicht so recht weiter gekommen.
Deshalb möchte ich es hier noch einmal versuchen. (Bitte nicht falsch
verstehen, falls einige User hier und dort Unterwegs sind. Ich will
damit niemandem auf den Schlips treten, aber vielleicht gibt es hier
noch jemand der mir, für mich verstäändlich, helfen kann)
Außerdem noch zu mir: Ich bin keine Elektroniker und kein Programmierer.
Meine Welt ist eher die zwischen Soll und Haben ,im weitesten Sinne.
Nun habe ich mir allerdings trotzdem vorgenommen ein kleines
Lichtprojekt für meinen Sohn zu realisieren. (Eine Lichtsteuerung für
seinen E-Traktor).
Nun bin ich fast fertig. Es funktioniert fast alles wie gewünscht außer
dem geplanten Bremslicht.
Hierfür habe ich gedacht nehme ich einen Optokoppler um den Zustand am
E-Motor (12 V Spannung ja oder nein) auszuwerten und an den Arduino zu
geben.
Also praktisch 12V anliegend -> Bremslicht aus / 12V "nicht anliegend"
-> Bremslicht an.
Meine Schaltung habe ich wie folgt aufgebaut:
LED-Seite Optokoppler (4N35):
+12V -> 1K Widerstand -> [Anode -> Kathode] -> GND-12V
Sensor-Seite Optokoppler:
[(5V-Ausgang Arduino -> 10K Pullup-Widerstand) + (Input-PIN)] ->
[Kollektor -> Emiiter] -> GND-Arduino
Mein Sketch:
1
intSchalterBrems=2;
2
intBremslicht=3;
3
4
voidsetup(){
5
pinMode(Bremslicht,OUTPUT);
6
pinMode(SchalterBrems,INPUT);
7
}
8
9
voidloop()
10
{
11
if(digitalRead(SchalterBrems)==LOW)
12
{
13
digitalWrite(Bremslicht,HIGH);
14
}
15
if(digitalRead(SchalterBrems)==HIGH)
16
{
17
digitalWrite(Bremslicht,LOW);
18
}
19
}
Das beschriebene im Zusammenspiel bringt nun allerdings keinen Effekt.
Das Bremslicht bleibt aus, egal ob ich den 12V-Stromkreis schließe oder
öffne.
Folgende Messungen hierzu kann ich beschreiben:
Bei geschlossenen 12,27 V
- Anode -> Kathode: 1,21 V
- Kollektor -> Emitter: -1,37 V
- 5V -> Kollektor: -0,60 V
- 5V -> GND: -1,97 V
Bei offenen 12,27 V
- Anode -> Kathode: -3,10 V
- Kollektor -> Emitter: -1,97 V
- 5V -> Kollektor: 0,00 V
- 5V -> GND: -1,97 V
Nun ist mir beim testen folgendes noch aufgefallen:
Sobald ich den 10K Pullup Widerstand und damit gleichzeitig die 5V von
vom Kollektor nehme, funktioniert das Bremslicht. Geht an und aus je
nach Zustand des 12V-Stromkreises. Allerdings flackern die LEDS (mit
sehr hoher Frequenz)
Die Messungen hierzu sehen dann wie folgt aus:
Bei geschlossenen 12,27 V
- Anode -> Kathode: 1,21 V
- Kollektor -> Emitter: -1,34 V
Bei offenen 12,27 V
- Anode -> Kathode: -2,3 V
- Kollektor -> Emitter: -2,88 V
An den Bremslicht-LEDs kann es denke ich nicht liegen. Die funktionieren
mit einem Drehschalter und dem entsprechenden Sketch einwandfrei.
Lange Rede...
Kann mir jemand sagen, wie ich die Bremslichter entweder mit dem Pullup
bzw. ohne flackern zum leuchten bringe?
Für die Unterstützung im Voraus besten Dank.
Gruß
Beilando
Die negativen Spannungswerte sind sehr merkwürdig, insbesondere soetwas
wie
Stefan B. schrieb:> - 5V -> GND: -1,97 V
ist völlig unklar.
Miss alle Spannungen auf der Ausgangsseite vom Optokoppler gegen Gnd vom
Arduino, alle auf der Eingangsseite gegen den Gnd der 12V.
Vielleicht zeigst du doch mal einen Schaltplan.
Anbei mal ein Schaltplan.
Bitte nicht steinigen. Aber so ist es sinngemäß aufgebaut.
Messenungen nehme ich heute abend nochmal vor.
Danke schon mal...
Gruß
Beilando
Stefan B. schrieb:> Aber so ist es sinngemäß aufgebaut.
Der Schaltplan ist ok, solange das "sinngemäß" nicht irgendwelche Tücken
verbirgt ;-)
Der Strom durch die LED des Optokopplers kann ohne Probleme auch einen
Faktor 2..3 kleiner sein.
Stefan B. schrieb:> Das beschriebene im Zusammenspiel bringt nun allerdings keinen Effekt.> Das Bremslicht bleibt aus, egal ob ich den 12V-Stromkreis schließe oder> öffne.
Hast du im eingebauten Zustand getestet, oder mit einem separaten
Netzteil?
> An den Bremslicht-LEDs kann es denke ich nicht liegen. Die funktionieren> mit einem Drehschalter und dem entsprechenden Sketch einwandfrei.
Heißt das der Aufbau und der Sketch entsprach dem oben gezeigten und du
hast nur den Optokoppler durch einen Drehschalter ersetzt?
Falls nein, erst nochmals kontrollieren, ob der aktuelle Aufbau auch mit
dem gezeigten Schaltplan übereinstimmt. Auch beide Widerstände mit dem
Ohmmeter kontrollieren, nicht daß du dich da bei den Werten vertan hast.
Ist Pin 6 (B) des Optokopplers wirklich nicht angeschlossen, auch keine
längere offene Leitung?
Funktioniert das Bremslicht, wenn du mit eingebautem 10k Pullup direkt
am Optokoppler Pin 4 (E) und 5 (K) kurzschließt?
Falls ja, dann hat dein Optokoppler einen Problem, und schaltet nicht
mehr richtig gegen GND. Wenn ich das richtig verstanden habe, dann liegt
die Optokoppler LED parallel zu einem Motor, und wenn er mechanisch
angetrieben wird arbeitet er als Generator und kann die LED im
Inversbetrieb schädigen.
Du mußt die LED schützen, indem du eine normale Diode anti-parallel
schaltest. Also LED-Anode an Schutzdiode-Kathode, und LED-Kathode an
Schutzdiode-Anode.
> Hast du im eingebauten Zustand getestet, oder mit einem separaten> Netzteil?
Ist momentan noch alles im Testaufbau mit separaten Netzteilen
angeschlossen. 12V-Netzteil zur "Motorsimulation" und 9V-Netzteil zur
Versorgung der LEDs und des Ardunios.
> Heißt das der Aufbau und der Sketch entsprach dem oben gezeigten und du> hast nur den Optokoppler durch einen Drehschalter ersetzt?
Im Prinzip ja. Allerdings hatte ich für den Drehschalter den internen
Pullup aktiviert und bei "digitalRead" HIGH und LOW entsprechend
vertauscht. Außerdem habe ich den Drehschalter auf den Analog-Pins
angeschlossen.
> Falls nein, erst nochmals kontrollieren, ob der aktuelle Aufbau auch mit> dem gezeigten Schaltplan übereinstimmt. Auch beide Widerstände mit dem> Ohmmeter kontrollieren, nicht daß du dich da bei den Werten vertan hast.
Bereits bis zur Verzweiflung getan
> Ist Pin 6 (B) des Optokopplers wirklich nicht angeschlossen, auch keine> längere offene Leitung?
Nein, die Optokopplerschaltung ist momentan noch auf einem Breadboard
aufgebaut. (Die LED Schaltungen sind bereits auf den endgültigen
Platinen verlötet.)
> Funktioniert das Bremslicht, wenn du mit eingebautem 10k Pullup direkt> am Optokoppler Pin 4 (E) und 5 (K) kurzschließt?
Werde ich neben den Messungen heute abend mal probieren.
> Falls ja, dann hat dein Optokoppler einen Problem, und schaltet nicht> mehr richtig gegen GND. Wenn ich das richtig verstanden habe, dann liegt> die Optokoppler LED parallel zu einem Motor, und wenn er mechanisch> angetrieben wird arbeitet er als Generator und kann die LED im> Inversbetrieb schädigen.> Du mußt die LED schützen, indem du eine normale Diode anti-parallel> schaltest. Also LED-Anode an Schutzdiode-Kathode, und LED-Kathode an> Schutzdiode-Anode.
Da noch kein Motor dranhängt kann das nicht passiert sein.
Gruß
Beilando
Noch ein kleiner Tipp. Wenn du dir angewöhnst jedes Programmen ein paar
Kommentare reinzuschreiben, dann ist es für andere einfacher zu
verstehen was gemeint ist. Und es hilft dir später, wenn du schon wieder
alles vergessen hast.
Bei 'digitalWrite(Bremslicht, HIGH)' geht da das Bremslicht an oder aus?
Wolfgang schrieb:> Miss alle Spannungen auf der Ausgangsseite vom Optokoppler gegen Gnd vom> Arduino, alle auf der Eingangsseite gegen den Gnd der 12V.> Vielleicht zeigst du doch mal einen Schaltplan.
In deiner gezeigten Schaltung kann es keine gegen GND negative
Spannungen geben. Wenn dein Multimeter negative Werte anzeigt, hast du
die Messstrippen verkehrt herum angelegt. Die Messergebnisse werden
klarer, und du musst weniger beschreiben, wenn du in deinen Schaltplan
nummerierte Messpunkte einzeichnest und die gemessenen Werte auf diese
Nummern beziehst.
Asche über mein Haupt... Wenn der Buchhalter die Elektronen tanzen
lässt...
Wenn man den Emitter tatsächlich an GND hängt und nicht an Vin, dann,
Wunder, tut es was es soll.
Trotzdem ein Danke an alle für die Unterstützung.
Frage noch: Ist eine 1N4148 Diode geeignet als Verpolungsschutz auf der
Eingangsseite? (Bezüglich negativ Spannung E-Motor)
Evtl. benötige ich dann nochmals Hilfe beim Verfeinern meines gesamten
Sketches. Dann erstelle ich natürlich ein neues Thema.
Bis dahin...
Gruß
Beilando
Stefan B. schrieb:> Ist eine 1N4148 Diode geeignet als Verpolungsschutz auf der> Eingangsseite?
Ja. Ist zwar nicht sehr dick, aber robuster als die IR-LED im
Optokoppler.