🍂 Raspberry Pi Projekt: LED-Herbstdeko mit Bewegungssensor
Herbstzeit ist Bastelzeit! Mit einem Raspberry Pi kannst du eine stimmungsvolle LED-Herbstdeko bauen, die auf Bewegung reagiert. Wenn jemand den Flur betritt, leuchten LEDs in warmen Herbstfarben auf – ein echter Hingucker für Zuhause oder als Geschenk. Dieses Projekt verbindet Programmierung, Sensorik, Bastelspaß und kreative Dekoration.
🎯 Projektidee
Die Idee: Eine Reihe von LEDs wird über den Raspberry Pi gesteuert. Ein Bewegungsmelder erkennt, wenn jemand den Raum betritt, und aktiviert die LEDs für einige Sekunden. Die LEDs können warmweiß, orange oder rot leuchten und simulieren ein flackerndes Herbstlicht.
🧰 Benötigte Komponenten
- Raspberry Pi 3 oder 4 ☐
- PIR-Bewegungssensor (HC-SR501) ☐
- WS2812b oder ähnliche adressierbare LED-Leiste ☐
- Jumper-Kabel ☐
- 220 Ohm Widerstand für LED-Leiste ☐
- 5 V Netzteil für LEDs ☐
- Breadboard oder Gehäuse für LEDs ☐
- Python 3 + Bibliothek
rpi_ws281x☐ - Optional: Dekorative Blätter, Zweige, Glas oder Acryl für die LED-Abdeckung ☐
🔧 Aufbau und Anschluss
Schritt-für-Schritt-Anleitungen mit Checkboxen für bessere Übersicht:
- Verbinde den VCC-Pin des PIR-Sensors mit 5 V am Raspberry Pi. ☐
- Schließe GND vom PIR-Sensor an Masse des Raspberry Pi an. ☐
- Verbinde OUT vom PIR-Sensor mit GPIO17 des Raspberry Pi. ☐
- Verbinde die Datenleitung der LED-Leiste mit GPIO18 über 220 Ohm Widerstand. ☐
- Schließe Masse der LED-Leiste an Masse des Raspberry Pi an. ☐
- Verbinde das 5 V Netzteil mit den LEDs. ☐
- Optional: Platziere LEDs hinter Acryl oder Blättern für herbstliche Optik. ☐
💻 Python-Code
Der Code liest den PIR-Sensor aus und aktiviert die LEDs für einige Sekunden, wenn Bewegung erkannt wird. Die LED-Farben können individuell angepasst werden.
import time
import RPi.GPIO as GPIO
from rpi_ws281x import PixelStrip, Color
# GPIO Setup
PIR_PIN = 17
GPIO.setmode(GPIO.BCM)
GPIO.setup(PIR_PIN, GPIO.IN)
# LED Setup
LED_COUNT = 30 # Anzahl der LEDs
LED_PIN = 18
LED_FREQ_HZ = 800000
LED_DMA = 10
LED_BRIGHTNESS = 150
LED_INVERT = False
strip = PixelStrip(LED_COUNT, LED_PIN, LED_FREQ_HZ, LED_DMA, LED_INVERT, LED_BRIGHTNESS)
strip.begin()
def autumn_colors(strip, wait_ms=50):
# Warme Herbstfarben: Rot, Orange, Gelb
for i in range(strip.numPixels()):
color = Color(255, 100, 0) # Orange
strip.setPixelColor(i, color)
strip.show()
time.sleep(wait_ms/1000.0)
try:
while True:
if GPIO.input(PIR_PIN):
autumn_colors(strip, wait_ms=50)
time.sleep(5) # LEDs bleiben 5 Sekunden an
strip.clear()
strip.show()
time.sleep(0.1)
except KeyboardInterrupt:
strip.clear()
strip.show()
GPIO.cleanup()
📈 Erweiterungsmöglichkeiten
- LED-Animationen wie flackerndes Kerzenlicht einbauen. ☐
- Mehrere PIR-Sensoren einsetzen, um verschiedene Räume zu überwachen. ☐
- Webinterface oder Smartphone-Steuerung via Flask/MQTT einbauen. ☐
- Farben individuell anpassen, z.B. Rot, Gelb, Or