Raspberry Pi Pico: Helligkeit mit Fotowiderstand messen
Mit dem Raspberry Pi Pico und einem Fotowiderstand als Lichtsensor kann man die Helligkeit des Umgebungslichts messen. Ein Fotowiderstand, ist ein lichtabhängiger Widerstand, der seinen Widerstand in Abhängigkeit der Umgebungslichtintensität, manche sagen Helligkeit, ändert. Eine Widerstandsänderung ändert die Spannung am Fotowiderstand, die man mit einem Analog-Digital-Wandler (ADC) des Raspberry Pi Pico messen und als Helligkeit des Lichts interpretieren und umrechnen kann.
Grundlagen Fotowiderstand (LDR)
Ein Fotowiderstand ist ein Halbleiter, der auch Light Dependent Resistor, kurz LDR, genannt wird. Bei allen Halbleitermaterialien ist der Widerstandswert lichtabhängig. Bei einem Fotowiderstand wird eine spezielle Halbleitermischung verwendet, bei der der Effekt der Lichtabhängigkeit besonders stark auftritt.
Aufbau und Bauteile: Fotowiderstand und Festwiderstand
Der Aufbau besteht aus einem Spannungsteiler mit einem LDR und einem 10-kOhm-Widerstand. Mit Hilfe eines Analog-Digital-Wandlers (ADC) wird die Spannung über den Festwiderstand gemessen.
- R1: Widerstand, 10 kOhm (Braun-Schwarz-Schwarz-Rot)
- LDR1: Fotowiderstand
Aufbau und Bauteile: KY-018 - Photo Resistor Module
Raspberry Pi Pico | KY-018 | |
---|---|---|
Pin 38 | GND | - |
Pin 36 | 3V3 / +VCC | Mitte |
Pin 31 | ADC0 (GPIO26) | S |
Hinweis: Beim Verbinden des Raspberry Pi Pico mit dem Modul ist auf die Modul Beschriftung der Pins zu achten. +VCC ist nicht zwangsläufig in der Mitte.
Schnell und einfach alle Bauteile zusammen bestellen
Programmcode
Das Programm ist die einfachste Anwendung eines ADC, mit dem die Spannung am ADC-Eingang gemessen wird. Hierbei macht man es sich zu Nutze, dass der Fotowiderstand seinen Widerstandswert in Abhängigkeit der Helligkeit ändert und somit auch die daran abfallende Spannung. Demzufolge ändert sich auch die Spannungsverteilung zwischen dem Fotowiderstand und dem Festwiderstand.
# Bibliotheken laden from machine import ADC from time import sleep # Initialisierung des ADC0 ldr = ADC(0) # Wiederholung while True: # ADC als Dezimalzahl lesen read = ldr.read_u16() # Ausgabe in der Kommandozeile/Shell print("ADC: ", read) # Warten sleep(3)
Experimente
Im Grundzustand wird auf der Kommandozeile ein Zahlenwert zwischen 0 und 65.535 ausgegeben. Damit kann man vergleichsweise wenig anfangen. Der Wert lässt sich als Helligkeitswert des Umgebungslichts interpretieren.
- Wenn Du den Fotowiderstand mit einem Finger verdeckst, dann sollte der Wert kleiner werden.
- Wenn Du den Fotowiderstand frei gibst wird der Wert wieder größer.
- Versuche einen Wert um etwa 30.000 zu erreichen.
- Ermittle mit unterschiedlichen Lichtquellen (Schreibtischlampe, Taschenlampe oder Monitor) die Helligkeit.
Hinweis: Der ausgegebene Zahlenwert stammt vom ADC und hat keine Einheit. Damit ist er wenig aussagekräftig. Die Helligkeit wird typischerweise in Lux angegeben. Wieviel Lux ein bestimmter ADC-Wert hat müsste man mit einem Lux-Meter ermitteln (Abgleich, Kalibrierung).
Darf es etwas mehr sein?
Die Anzeige der Helligkeit in Form einer Zahl zwischen 0 und 65.535 ist natürlich weniger spannend. Die Frage ist eher, was man damit machen kann. Zwei typische Anwendungen sind die Tagschaltung und die Nachtschaltung, auch Dämmerungsschalter genannt.
Weitere verwandte Themen:
- Raspberry Pi Pico: GPIO-Grundlagen
- Raspberry Pi Pico: Temperatur messen
- Raspberry Pi Pico: Grundlagen zu ADC
- Raspberry Pi Pico: Helligkeit einer LED mit Fotowiderstand regeln
- Raspberry Pi Pico: Lichtschranke mit LED und LDR (mit KY-018)
Teilen:
Hardware-nahes Programmieren mit dem Raspberry Pi Pico und MicroPython
Das Elektronik-Set Pico Edition ist ein Bauteile-Sortiment mit Anleitung zum Experimentieren und Programmieren mit MicroPython.
- LED: Einschalten, ausschalten, blinken und Helligkeit steuern
- Taster: Entprellen und Zustände anzeigen
- LED mit Taster einschalten und ausschalten
- Ampel- und Lauflicht-Steuerung
- Elektronischer Würfel
- Eigene Steuerungen programmieren
Online-Workshop: Programmieren mit dem Raspberry Pi Pico
Gemeinsam mit anderen und unter Anleitung experimentieren? Wir bieten unterschiedliche Online-Workshops zum Raspberry Pi Pico und MicroPython an. Einführung in die Programmierung, Sensoren programmieren und kalibrieren, sowie Internet of Things und Smart Home über WLAN und MQTT.
Für Ihre Fragen zu unseren Online-Workshops mit dem Raspberry Pi Pico besuchen Sie unseren PicoTalk (Online-Meeting). (Headset empfohlen)