Raspberry Pi: Adventskranz

Zielgruppe

Pfadfinderinnen- und Pfadfinderstufe

Zielsetzung

Aktuelles Datum bestimmen und die Adventsonntage für das aktuelle Jahr berechnen.
Jeden Adventsonntag wird, bis Weihnachten, eine weitere LED zugeschaltet.

Dauer

ca. 40 Minuten

Material

 

  • Raspberry Pi
  • Breadboard
  • Jumper-Kabel
  • Kabel
  • 4 gelbe LED
  • 4 Widerstände 220 Ω

Aufbau

Der Aufbau ist relativ einfach. LED’s leuchten nur, wenn der Strom in die richtige Richtung fließt. Deswegen macht es Sinn, unterschiedliche Kabelfarben zu verwenden. Am besten Schwarz (- oder GND) für das kürze Bein und Grün für das längere Bein.

Damit die LED nicht zu viel Strom bekommt und durchbrennt haben wir zwischen LED und Pin noch einen Widerstand geschaltet.

 

[python]
#!/usr/bin/env python

import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setwarnings(False)
import datetime

led_erster_advent = 6
led_zweiter_advent = 13
led_dritter_advent = 19
led_vierter_advent = 26

GPIO.setup(led_erster_advent, GPIO.OUT)
GPIO.setup(led_zweiter_advent, GPIO.OUT)
GPIO.setup(led_dritter_advent, GPIO.OUT)
GPIO.setup(led_vierter_advent, GPIO.OUT)

#aktuelle Zeit ermitteln
now = datetime.datetime.now()
#Jahr aus der aktuellen Zeitangabe ermitteln
jahr = now.year

#Wochentag von Weihnachten ermitteln & Advent-Sonntage berechnen
weihnachten = datetime.datetime(jahr, 12, 25, 0, 0, 0)
wochentag = weihnachten.weekday()
vierter_advent = weihnachten – datetime.timedelta(wochentag + 1)
dritter_advent = weihnachten – datetime.timedelta(wochentag + 8)
zweiter_advent = weihnachten – datetime.timedelta(wochentag + 15)
erster_advent = weihnachten – datetime.timedelta(wochentag + 22)

#LEDS aktivieren je nach Datum / Advent-Sonntag
if(now <= weihnachten):
if(now >= erster_advent):
GPIO.output(led_erster_advent, GPIO.HIGH)
if(now >= zweiter_advent):
GPIO.output(led_zweiter_advent, GPIO.HIGH)
if(now >= dritter_advent):
GPIO.output(led_dritter_advent, GPIO.HIGH)
if(now >= vierter_advent):
GPIO.output(led_vierter_advent, GPIO.HIGH)

#Ausgabe der Uebersicht auf dem Bildschirm
print now.strftime(‚Die Advent-Sonntage im Jahr %Y‘)
print erster_advent.strftime(‚1. Advent am %d.%m.%Y‘)
print zweiter_advent.strftime(‚2. Advent am %d.%m.%Y‘)
print dritter_advent.strftime(‚3. Advent am %d.%m.%Y‘)
print vierter_advent.strftime(‚4. Advent am %d.%m.%Y‘)
[/python]

Arbeitsblatt & Programmcode zum Download

Wie starte ich das Python-Skript auf meinem Raspbery Pi?

  1. Öffne IDLE von der Hauptnavigation (Menu>Entwicklung>Python 2 (IDLE).
  2. Erstelle eine neue Datei: Klicke auf File > New file.
  3. Speichere die neue Datei: Klicke auf File > Save. Speichere die Datei als adventskranz.py.
  4. Kopiere den Programmcode in die neue Datei. Speichere die Änderungen.
  5. Starte das Programm mit F5.

 

VCP-Blog