Arduino-Projekt: LDR
In diesem Projekt verwenden Sie einen LDR, um Lichter ein- oder auszuschalten, je nachdem, ob mehr oder weniger Licht scheint.
Für dieses Projekt verwenden wir einen LDR. LDR ist eine Abkürzung für Light Dependent Resistor (lichtabhängiger Widerstand). Das bedeutet, dass der Widerstand von der Menge des einfallenden Lichts abhängt. Je mehr Licht auf den LDR fällt, desto geringer wird der Widerstand.
Wir können mit dem Arduino einen Wert aus dem LDR lesen. In diesem Projekt legen wir unterschiedliche Werte auf die LED-Leuchten. Wir machen das so, dass mehr LED-Leuchten aufleuchten, wenn mehr Licht darauf scheint. Dies tun wir mit if-else-Logikgattern und der Analogread-Funktion. Im Abschnitt Programmierung erkläre ich, was diese Funktionen bedeuten.
Bau und Verkabelung

Programmierung
Wenn Sie alles richtig angeschlossen haben, können Sie mit der Programmierung beginnen.
Der Code für dieses Projekt ist ziemlich kurz. Im Code verwenden wir die analogread Funktion und if-else-Logikgatter .
Wir verwenden die Funktion „Analogread“, um den Wert vom analogen Pin zu lesen. Dies ist der Wert des LDR. Als nächstes verwenden wir die if-else-Logikgatter.
Wenn der Wert übereinstimmt (also wenn ist), geht bei uns das Licht an. Wenn der Wert nicht übereinstimmt (also else stimmt), leuchtet das Licht nicht.
//hier zetten we alle componenten op een pin
int sensor = A0;
int led1 = 2;
int led2 = 3;
int led3 = 4;
int led4 = 5;
int led5 = 6;
int Value = 0;
void setup(){
//hier zorgen we dat die pinnen een puls geven
pinMode(led1, OUTPUT);
pinMode(led2, OUTPUT);
pinMode(led3, OUTPUT);
pinMode(led4, OUTPUT);
pinMode(led5, OUTPUT);
}
void loop(){
//nu zorgen we ervoor dat hij A0 leest
Value = analogRead(sensor);
delay(100);
//nu laten we het lampje aangaan
//als de waarde 110 of hoger is
if(Value >= 110){
digitalWrite(led1, HIGH);
}else{
//anders gaat hij uit
digitalWrite(led1, LOW);
}
if(Value >= 125){
digitalWrite(led2, HIGH);
}else{
digitalWrite(led2, LOW);
}
if(Value >= 140){
digitalWrite(led3, HIGH);
}else{
digitalWrite(led3, LOW);
}
if(Value >= 155){
digitalWrite(led4, HIGH);
}else{
digitalWrite(led4, LOW);
}
if(Value >= 170){
digitalWrite(led5, HIGH);
}else{
digitalWrite(led5, LOW);
}
}




