Arduino-Projekt: LDR

Anfänger
10 Min
30,59 €

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

Nachdem Sie nun alle Teile gesammelt haben, können Sie mit der Zusammenstellung des Projekts beginnen. Das erste, was Sie in Bezug auf die Verkabelung tun, ist, die 5 V vom Arduino mit dem Pluspol des Steckbretts zu verbinden. Anschließend verbindet man den GND mit dem Minuspol der Steckplatine. Anschließend platzieren Sie die LED-Leuchten im Steckbrett. Es spielt keine Rolle, welche Lichtfarbe Sie verwenden. Die Plusseite der LED-Leuchte wird durch den längsten Pin definiert. Platzieren Sie hier einen 220 Ohm Widerstand. Platzieren Sie auf der anderen Seite des Widerstands ein Überbrückungskabel. Dies geht an den I/O-Pin des Arduino. Die linke LED geht zum E/A-Pin 2, die daneben geht zum E/A-Pin 3 und so weiter. Verbinden Sie nun den Minuspol der LED-Leuchte (kürzester Pin) mit dem Minuspol der Steckplatine. Schließen Sie dann den LDR an. Verbinden Sie einen seiner Pins mit dem Pluspol der Steckplatine. Welcher das ist, spielt keine Rolle, denn einen LDR kann man nicht falsch herum anschließen. Nehmen Sie anschließend einen Widerstand und stellen Sie sicher, dass er sich am anderen Pin befindet. Stecken Sie dann an der gleichen Stelle wie der Widerstand ein Überbrückungskabel in das Steckbrett. Stecken Sie dies in den A0-Pin des Arduino. Verbinden Sie abschließend ein Überbrückungskabel von der anderen Seite des Widerstands mit dem Minuspol der Steckplatine.

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);
  }
}

Benötigte Produkte