Ihre Browserversion ist veraltet. Wir empfehlen, Ihren Browser auf die neueste Version zu aktualisieren.

Der analoge Eingang - einen lichtabhängigen Widerstand (LDR) einlesen

Aufgabe

Mit einem lichtabhängigen Widerstand (LDR) soll die Helligkeit gemessen werden.

Aufbau der Schaltung

Material

  • Arduino
  • Lichtabhängiger Widerstand (LDR)
  • Widerstand 200 - 500Ω
  • Breadboard
  • Leitungen
  • (Später, LED und Vorwiderstand)

Beschreibung

Der LDR hat zwei Anschlüsse. Der eine wird auf 5V gelegt, der andere bildet mit dem Widerstand eine Reihenschaltung.

Die Verbindung von LDR und Widerstand wird mit dem Analogen Anschluss A0 verbunden.

Der zweite Anschluss des Widerstands wird auf GND gelegt.

Der LDR ändert seinen Widerstand, je nachdem wie hell es ist. Bei Helligkeit beträgt der Widerstand etwa 250Ω, bei Dunkelheit etwa 10kΩ.

Bilden zwei Widerstände eine Reihe, dann bilden sie auch gleichzeitig einen „Spannungsteiler“, das heißt, dass sich die angelegte Spannung entsprechend den Widerständen aufteilt:

Am größeren Widerstand der Reihe liegt dann auch eine größere Spannung an.

Am kleineren Widerstand der Reihe liegt dann auch eine kleinere Spannung an.

Beide Spannungen zusammen sind so groß wie die Gesamtspannung (hier 5V).

Ändert sich der Widerstand des LDR, dann ändert sich auch die Spannung, die an ihm anliegt und diese Spannung kann über den analogen Eingang gemessen werden.

Der analoge Eingang

Die Analogen Eingänge können Spannungen von 0V bis 5V messen.

Die Spannungen werden sofort und intern von einem Analog-Digitalwandler in 10Bit-Zahlenwerte umgewandelt, was mit der Arbeitsweise von Computern zu tun hat.

Mit diesen 10Bit-Zahlen rechnet der Computer dann weiter:

Dabei entspricht 0V dem Wert 0 und 5V dem Wert 1023.

 

Eine Spannung von 2,5V entspricht dann der Zahl 512.

Weitere Werte kann man mit einem Dreisatz berechnen.

Das ArduBlock-Programm

Bedeutung der einzelnen Blöcke

(Steht unter dem Block keine Erklärung, dann wurde er bereits in einem Tutorial erklärt)

Es wird eine Variable mit dem Namen „Helligkeit“ gebildet. Unter diesem Namen soll der Zahlenwert (zwischen 0 und 1023), der sich aus der Spannung ergibt, die am analogen Pin A0 anliegt (zwischen 0V und 5V), gespeichert werden.

An den seriellen Monitor werden zuerst die Buchstaben „Der Wert ist“, dann der Wert der Variablen mit dem Namen „Helligkeit“ gesendet.

 Das Programm wartet eine Sekunde, bevor die nächste Helligkeitsmessung startet.

Der Arduino-Sketch

(Steht keine Erklärung, dann wurde der Befehl bereits in einem Tutorial erklärt)

1 int _ABVAR_1_Helligkeit;                    

// Eine Variable mit dem Namen _ABVAR_1_Helligkeit wird erstellt.

Ardublock setzt vor den eigentlichen Namen der Variable noch _ABVAR_1_ . Dies kann entfernt werden.
2 void setup()  
3 {                        
4      Serial.begin(9600);  
5      _ABVAR_1_Helligkeit = 0; // Der Variablen _ABVAR_1_Helligkeit wird der Wert 0 zugeordnet.
6 }  
7 void loop()  
8 {  
9

     _ABVAR_1_Helligkeit = 

      analogRead(A0) ;

// Die Variable mit dem Namen _ABVAR_1_Helligkeit wird neu berechnet:

Zuerst wird die Spannung am analogen Eingang A0 gelesen. Dann wird die Spannung in einen Zahlenwert zwischen 0 und 1023 umgewandelt und der wird gespeichert.
10       delay( 1000 );  
11       Serial.print( "Der Wert ist " );  
12

      Serial.print(

     _ABVAR_1_Helligkeit );

// An den seriellen Monitor wird der Wert der Variablen _ABVAR_1_Helligkeit gesendet

13      Serial.println("");  
14  }                                                 
 

Aufgaben

  • Ermittle die Werte der Variablen "Helligkeit" unter den folgenden Bedingungen:

  sehr hell, hell, mittel, schattig, ganz dunkel

  • Ändere die Schaltung und das Programm so, dass eine LED (Nicht vergessen: Vorwiderstand 150 - 330Ω) leuchtet, wenn der Wert der Helligkeit unter 800 ist. Tipp: Suche nach diesem Block: 

    

 

 

Cookie-Regelung

Diese Website verwendet Cookies, zum Speichern von Informationen auf Ihrem Computer.

Stimmen Sie dem zu?