Raspberry Pi - Lichtsensor en Relais

Deze tutorial legt uit hoe u de Raspberry Pi en een lichtsensor gebruikt om een relais te activeren. In detail genereert het lichtsensormodule een LOW-signaal wanneer er licht aanwezig is en een HIGH-signaal wanneer er geen licht wordt gedetecteerd. De Raspberry Pi is geprogrammeerd om het signaal van het lichtsensormodule te lezen en het relais te activeren wanneer het donker is, en uit te schakelen wanneer er licht is.

Door een relais aan te sluiten op een gloeilamp, LED-strip, motor of actuator, kunnen we met de Raspberry Pi en lichtsensor het aan- en uitschakelen van deze apparaten regelen.

De lichtsensor staat ook bekend als photoresistor, lichtafhankelijke weerstand (LDR), photocell of lichtcel. De Raspberry Pi gebruikt deze lichtsensor om het omgevingslichtniveau te meten, en activeert het relais bij duisternis en schakelt het relais uit bij helder licht.

Hardware Benodigd

1×Raspberry Pi 5
1×LDR Lichtsensor Module
1×Relais
1×Waarschuwingslicht Fel Waterproof
1×12V Voeding
1×DC-Stroomaansluiting
1×Breadboard (experimenteerprint)
1×Jumper Wires (verbindingsdraden)
1×(Aanbevolen) Schroefklem Block Shield voor Raspberry Pi
1×(Aanbevolen) Raspberry Pi Prototyping Basisplaat & Breadboard Kit
1×(Aanbevolen) HDMI-Touchscreen-Monitor voor Raspberry Pi

Of u kunt de volgende kits kopen:

1×DIYables Sensorkit (30 sensoren/displays)
1×DIYables Sensorkit (18 sensoren/displays)
Openbaarmaking: Sommige van de links in deze sectie zijn Amazon-affiliate links. We kunnen een commissie ontvangen voor aankopen die via deze links worden gedaan, zonder extra kosten voor u. We waarderen uw steun.

De LDR lichtsensor is zeer betaalbaar, maar heeft een weerstand nodig voor de bedrading, wat de opstelling wat complexer kan maken. Om de bedrading te vereenvoudigen kunt u een LDR lichtsensor module gebruiken als alternatief.

Over Relais en Lichtsensor

Als u niet bekend bent met relais en lichtsensor (inclusief pinout, functionaliteit, programmeren, etc.), bekijk dan de onderstaande tutorials:

Aansluitschema

Raspberry Pi Lichtsensor Relais Gloeilamp aansluitschema

This image is created using Fritzing. Click to enlarge image

Om uw bekabelingsopstelling te vereenvoudigen en te organiseren, raden we het gebruik van een Schroevenklemaansluiting-shield voor Raspberry Pi aan. Deze shield zorgt voor veiligere en beter beheerbare verbindingen, zoals hieronder weergegeven:

Raspberry Pi Schroevenklemaansluiting-Shield

Raspberry Pi Code

Snelle Stappen

  • Zorg dat u Raspbian of een ander Raspberry Pi compatibel besturingssysteem geïnstalleerd heeft op uw Pi.
  • Zorg dat uw Raspberry Pi verbonden is met hetzelfde lokale netwerk als uw pc.
  • Zorg dat uw Raspberry Pi internettoegang heeft als u softwarebibliotheken moet installeren.
  • Als dit de eerste keer is dat u een Raspberry Pi gebruikt, zie dan hoe u de Raspberry Pi instelt.
  • Verbind uw pc via SSH met de Raspberry Pi met de ingebouwde SSH-client op Linux en macOS of PuTTY op Windows. Zie hoe u uw pc verbindt met de Raspberry Pi via SSH.
  • Zorg dat u de RPi.GPIO bibliotheek geïnstalleerd heeft. Zo niet, installeer deze dan met het volgende commando:
sudo apt-get update sudo apt-get install python3-rpi.gpio
  • Maak een Python scriptbestand ldr_relay.py en voeg de volgende code toe:
# Deze Raspberry Pi code is ontwikkeld door newbiely.nl # Deze Raspberry Pi code wordt zonder enige beperking aan het publiek beschikbaar gesteld. # Voor volledige instructies en schema's, bezoek: # https://newbiely.nl/tutorials/raspberry-pi/raspberry-pi-light-sensor-relay import RPi.GPIO as GPIO import time # Set the GPIO mode to BCM GPIO.setmode(GPIO.BCM) # Define the PIN numbers for the light sensor and the relay LIGHT_SENSOR_PIN = 18 RELAY_PIN = 21 # Set up the light sensor PIN as an input with a pull-up resistor GPIO.setup(LIGHT_SENSOR_PIN, GPIO.IN, pull_up_down=GPIO.PUD_UP) # Set up the relay PIN as an output GPIO.setup(RELAY_PIN, GPIO.OUT) try: while True: # Read the state of the light sensor light_state = GPIO.input(LIGHT_SENSOR_PIN) # Control the relay based on the light sensor state if light_state == GPIO.LOW: # Light is present, turn off the relay GPIO.output(RELAY_PIN, GPIO.LOW) else: # Light is not present, turn on the relay GPIO.output(RELAY_PIN, GPIO.HIGH) # Small delay to avoid rapid state changes time.sleep(1) except KeyboardInterrupt: # Clean up GPIO settings on program exit GPIO.cleanup()
  • Sla het bestand op en voer het Python script uit door het volgende commando in de terminal te typen:
python3 ldr_relay.py

Druk op Ctrl + C in de terminal om het script te stoppen.

  • Bedek de LDR lichtsensor module met uw hand.
  • Controleer de status van het relais.

Het script draait in een oneindige lus totdat u

Code Uitleg

Bekijk de regel-voor-regel uitleg die opgenomen is als commentaar in de broncode!

Video Tutorial

We overwegen het maken van videotutorials. Als u videotutorials belangrijk vindt, abonneer u dan op ons YouTube-kanaal om ons te motiveren de video's te maken.

Bekijk onze video-tutorial voor een visuele begeleiding bij dit project! De video biedt extra inzichten en praktische tips om het gebruik van het lichtsensor-relais met de Raspberry Pi goed onder de knie te krijgen.

※ ONZE BERICHTEN

  • U bent welkom om de link naar deze tutorial te delen. Gebruik onze inhoud echter niet op andere websites. We hebben veel moeite en tijd gestoken in het maken van de inhoud, respecteer alstublieft ons werk!