Go Down

Topic: fotowiederstand anfänger frage (Read 2353 times) previous topic - next topic

streamer

ich hänge irgendwie fest bei der leichten aufgabe, mit einem fotowiederstand je nach lichteinfall eine led ein oder aus zu schalten.
könnte mir da vlt jemand eienen tipp geben, wie ich den iput mit dem fotowiedertand programmieren muss?
danke im vorraus

mkl0815

Was hast Du denn bisher gemacht? Also wie hast Du den Widerstand angeschlossen und wie sieht Dein Programm aus?
Von der Theorie her, schaltest Du den Fotowiderstand und einen Zweiten Widerstand in Reihe:

+5v ---------/\/\/\/\/\-------+---------/\/\/\/\/\------- GND
               Foto-R         |         Widerstand 2
                              |
                       Arduino Analogeingang         

und  misst zwischen den beiden Widerständen die Spannung an einem der analog-Eingänge.
Da der Fotowiderstand seinen Wert ändert, je nach Beleuchtung, ändert sich auch die gemessene Spannung.
Nun brauchst Du Dir nur noch den passenden Schwellwert überlegen. Wie groß Widerstand 2 werden muss, hängt vom Wert Deines Fotowiderstandes ab.

Grüße,
Mario.

streamer

ja aber das problem habe ich mehr in der programmierung :D

madworm

Ich empfehle das beispielprogramm ' Examples / Control / IfStatementConditional ' !

Joghurt

Wie sieht Dein bisheriges Programm aus?

maverick1509

Hallo,
grob beschrieben etwa so:

#define LDR 15 // analoger Eingang für den Phototransistor

in der void setup den Pin deklarieren:

pinMode(LDR, INPUT);

und in der loop

ldrwert = analogRead(LDR);
if ((ldrwert > ldrgrenzwert) led aus else led ein;

stimmt natürlich von der syntax her nicht, aber so einfach ist ein LDR anzusprechen.
Gruß
Bernward


uwefed


Hallo,
grob beschrieben etwa so:
#define LDR 15 // analoger Eingang für den Phototransistor
in der void setup den Pin deklarieren:
pinMode(LDR, INPUT);
und in der loop
ldrwert = analogRead(LDR);
if ((ldrwert > ldrgrenzwert) led aus else led ein;
stimmt natürlich von der syntax her nicht, aber so einfach ist ein LDR anzusprechen.
Gruß Bernward

2 kleine Berichtigungen:
Die analogen Eingänge gehen beim Arduino UNO von A0 bis A5. 15 ist die digitale ansteuerung von A1.
Analoge Eingänge müssen nicht als Eingänge deklariert werden, wenn sie als analoge Eingänge verwendet werden.

Zusatzinfo.
Bei richtiger Wahl des 2. Widertstands und entsprechenden Spannungshub kannst Du den LDR auch an einem digitalen Eingang anschließen. Dieser mißt bei definierten Lichtintensitäten L bzw H. Wenn Du nur eine generelle Messung von Licht - nicht Licht brauchst geht das auch so.

Viele grüße Uwe 

udoklein

Laß den Fotowiderstand doch weg und nimm eine LED als Sensor. Wenn man es richtig macht kann man die gleiche LED als Sensor UND zum Leuchten nehmen. Wie man LEDs als Sensor nimmt findest Du bei mir: http://blog.blinkenlight.net/experiments/measurements/led-camera/. Dort findest Du ein Beispielsketch. Wie man das dann kombiniert steht im verlinkten Forschungsbericht.
Check out my experiments http://blog.blinkenlight.net

kduin

Für deine ersten LDR-Gehversuche empfehle ich dir den LDR-Wert übers Serial-Terminal anzeigen zu lassen.
Einfach "Serial.begin(9600);" in Setup und "Serial.println(ldrwert, DEC);delay(400);" in den Loop-Sketch.
Das Delay ist dafür da, dass du die zahlen auch lesen kannst und sie nicht zu schnell durchlaufen ;)

Go Up