LDR, Arduino

OP #3274329
Lesenswert?

Hi,
ich habe gerade ein Projekt mit LDRs an meinem Arduino.
Ich möchte, wenn eine Flasche auf dem LDR steht (also ist es ja dunkel), 
dass der Wert der LDR auf 1 geht.
Meine Frage ist jetzt ob ich dass so machen kann:
1
int sensorWert=0;
2

3
void setup(){
4

5
}
6

7
void loop(){
8
sensorWert=analogRead(A0);
9

10
if(sensorWert==HIGH){
11
sensorWert=1;
12
}
13

14
}
Mir kommt das nicht sehr schlüssig vor.
Vielen Dank und Gruß
Gast #3274435
Lesenswert?

> sensorWert=analogRead(A0);
> if(sensorWert==HIGH){
> sensorWert=1;
> Mir kommt das nicht sehr schlüssig vor.

Warum schriebst du's dann ?

Wie ist denn HIGH definiert?

Es ist ziemlich unwahrscheinlich, da0 der gelieferte Helligkeitswert 
gerade dem einem von 1024 möglichen Werten entspricht.

Vielleicht wolltest du mit > oder < prüfen.

Auch ist es unübersichtlich, sensorWert für 2 Dinge zu benuten,
als ausgelesen Wert und als Ergrbnis des Vergleichs.

Und ziemlich falsch ihn dann noch bei fehlgeschlagenem Vergeich 
unangetastet zu lassen.

sensorWert=analogRead(A0);
istDunkel=sensorWert<512; (oder >512, je nach dem wierum der LDR 
angeschlossen ist).
Gast #3274447
Lesenswert?

du kannst das so machen :
1
int val;
2
int sensorWert = 0;
3

4
void setup(){
5

6
}
7

8
void loop(){
9
val = analogRead(A0);
10
sensorWert = map (val,0,1023,0,1);
11

12
if(sensorWert == 1){
13
TUIRGENWAS;
14
}
15

16
}

nun man man nur noch den grenzwert aus experimentieren und und die 1023 
in der umrechnung evtl nach untenanpassen.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren