Raspberry Pi Lichtsensor Tutorial – Een LDR aansluiten en lichtniveaus uitlezen met Python
In deze uitgebreide Raspberry Pi lichtsensor-tutorial loop ik je door het aansluiten van een fotoweerstand aan de GPIO-pinnen en het uitlezen van de data met een beknopt Python-script. Het doel is om je een hands-on begrip te geven van het circuit, de code en praktische toepassingen zoals een licht-geactiveerde wekker.
Dit project is ideaal voor beginners die sensor-integratie willen verkennen, maar dient ook als fundament voor meer geavanceerde projecten.
Hieronder beschrijf ik de componenten, stap-voor-stap bedrading en de Python-logica die de digitale pinnen van de Pi omzet in een behelpen analoge meting.
Benodigdheden
Alles wat je nodig hebt staat hier. Hoewel een breadboard niet strikt vereist is, vereenvoudigt het de montage enorm, vooral als je verder wilt experimenteren.
Aanbevolen
Raspberry Pi
8 GB SD-kaart of Micro SD-kaart voor Pi 2/B+
Ethernetkabel of Wi-Fi-dongle
Lichtsensor (LDR)
1 µF-condensator
Optioneel
Raspberry Pi-hoes
USB-toetsenbord
USB-muis
GPIO-breakout kit
Breadboard
Breadboard-draden
Video
Visuele leerders kunnen de bijbehorende video bekijken die de complete bedrading en de realtime sensoroutput demonstreert. Dezelfde informatie staat in de tekst hieronder.
Het lichtsensor-circuit bouwen
Het circuit is bewust simpel: een LDR, een 1 µF-condensator en een enkele GPIO-pin. De weerstand van de LDR daalt tot een paar honderd ohm in helder licht en stijgt tot verschillende mega-ohm in duisternis. Door de RC-tijdconstante van de condensator te meten, kan de Pi het lichtniveau afleiden zelfs zonder analoge ingangen.
- Verbind pin #1 (3,3 V) met de + rail van het breadboard.
- Verbind pin #6 (GND) met de – rail van het breadboard.
- Plaats de LDR op het breadboard en Verbind een draad van de ene kant naar de + rail.
- Verbind een draad van de andere kant van de LDR naar pin #7 op de Pi.
- Plaats de 1 µF-condensator tussen de draad van pin #7 en de – rail, met de negatieve poot naar de – rail.
Raadpleeg het onderstaande diagram voor een visuele layout. Eenmaal de hardware op zijn plaats, zal de Python-code de digitale pin omzetten in een ruwe analoge meting.
Python-code
#!/usr/local/bin/python
import RPi.GPIO as GPIO
import time
GPIO.setmode(GPIO.BOARD)
# Pin die verbonden is met het RC-netwerk
pin_to_circuit = 7
def rc_time(pin):
count = 0
GPIO.setup(pin, GPIO.OUT)
GPIO.output(pin, GPIO.LOW)
time.sleep(0.1)
GPIO.setup(pin, GPIO.IN)
while GPIO.input(pin) == GPIO.LOW:
count += 1
return count
try:
while True:
print(rc_time(pin_to_circuit))
except KeyboardInterrupt:
pass
finally:
GPIO.cleanup()
Deployen & Uitvoeren
Op een Raspberry Pi met Raspbian zijn de benodigde bibliotheken voorgeïnstalleerd. Als je ze handmatig moet installeren, voer uit:
sudo apt-get update
sudo apt-get install python3-rpi.gpio
Kloon de repository en voer het script uit:
git clone https://github.com/pimylifeup/Light_Sensor/
cd Light_Sensor
sudo python3 light_sensor.py
Alternatief, plak de code in een nieuw bestand, bewaar het als light_sensor.py en voer hetzelfde commando uit.
Nauwkeurigheid verbeteren & Mogelijke toepassingen
Hoewel een LDR een snelle, goedkope oplossing biedt, kan de beperkte dynamische bereik en temperatuurgevoeligheid onvoldoende zijn voor precisiewerk. Voor toepassingen die hogere nauwkeurigheid vereisen, overweeg sensoren als de Adafruit high-dynamic-range digitale lichtsensor.
- Licht-geactiveerde alarm: Gebruik de LDR om een alarm te triggeren dat opgaat naarmate het daglicht toeneemt.
- Tuin zonlichtmonitor: Log de lichtintensiteit in verschillende tuinzones om plantbeslissingen te informeren.
- Kamer-bezettingsalarm: Detecteer onverwacht licht in een donkere kamer en stuur een notificatie.
Voel je vrij te experimenteren, het RC-netwerk aan te passen of de sensor te integreren in grotere projecten. Als je problemen ondervindt of suggesties hebt, laat dan een reactie achter.
Bron: Raspberry Pi Light Sensor – A Simple LDR Tutorial
Productieproces
- Bouw Een Raspberry Pi Temperatuur Logger Met Een $5 I2C Sensor
- Een externe temperatuursensor bouwen met Raspberry Pi en Python – Stap-voor-stap handleiding
- Een Raspberry Pi-weerstation bouwen dat dagelijkse weergegevens e-mailt
- Hoe een DS1820 One-Wire temperatuursensor aan te sluiten op een Raspberry Pi via GPIO
- HC-SR04 ultrasoon-sensor aansluiten op Raspberry Pi 3 – Complete gids
- Veilige thuismonitoring met Home Assistant op Raspberry Pi: Beweging, alarm en videocapture
- Een LED Besturen met een PIR-bewegingssensor op Raspberry Pi
- Een Goedkope Raspberry Pi Grondvochtigheidssensor Bouwen voor Slimme Irrigatie
- Een Lineaire Hall-sensor Uitlezen met Raspberry Pi: Java-handleiding & ADC0832-inzichten
- Een Multi-sensor Temperatuur- & Lichtmonitoringssysteem Bouwen met Raspberry Pi & DS18B20
- Van $4 Zonnestandaard tot Slimme Draadloze Sensor-knooppunt: MSP430 + nRF24L01+ voor Tuinmonitoring