“Hast du das Ankerlicht angemacht? Nein, ich dachte du hast es angemacht…”
Wer kennt es nicht?
Das Ein- und Ausschalten des Ankerlichts verfolgt euch jeden Abend oder Morgen wenn ihr vor Anker seid. In der Vergangenheit kam es bei uns nun zu oft vor, dass wir das Ankerlicht vergessen haben.

Deswegen wollten wir gern eine Lösung hierfür finden, die es möglich macht, dass das Ankerlicht automatisch an und aus geht. Mit ein bisschen Recherche und ein wenig Elektrikverständnis kam uns dann die Idee, dass man genau diesen Vorgang mit einem über GPIO geschalteten Relais an dem Raspberry doch automatisieren könnte. Nach einer kurzen Suche stiessen wir dann auf ein Relais, welches bei Ebay für ca. 7,20 € inkl. Porto angeboten wurde. Wir haben dann auch ein vier-Kanal-Relay gekauft, da wir hier die Möglichkeit haben, weitere Kanäle besetzten zu können. Wer weiß was uns noch alles so einfällt.

Weiter benötigt man für die Verbindung zwischen GPIO und dem Relais vier Drahtbrücken oder Jumperkabel (findet man mit den Suchbegriffen auch recht schnell/ an allen Ende wird eine Buchsenverbindung benötigt).

Die Ansteuerung des Relais nimmt man mit einem kleinen Pythonskript vor. Ein Skript für das Anschalten und ein Skript für das Ausschalten des Ankerlichts. Entsprechend werden die Skripte on.py und off.py betitelt. So sehen unsere Skripte aus:

on.py
#!/usr/bin/env python
import RPi.GPIO as GPIO
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.output(17, GPIO.LOW)

off.py
#!/usr/bin/env python
import time
import RPi.GPIO as GPIO
GPIO.setwarnings(False)
GPIO.setmode(GPIO.BCM)
GPIO.setup(17, GPIO.OUT)
GPIO.output(17, GPIO.LOW)
time.sleep(2)
GPIO.cleanup()

Mit einem chmod 755 on.py haben wir die Datei dann noch ausführbar gemacht. Gleiches gilt natürlich für die off.py Datei, die im Heimverzeichnis abgelegt ist.

Das Schalten des Relais funktioniert mit dem Skript jeweils mit ./on.py schon einmal super.

Jetzt geht es nur noch darum den richtigen Zeitpunkt zu ermitteln. Wie kann man das am besten umsetzten, ohne jedes mal den Zeitpunkt des Sonnenauf- und untergangs zu verändern. Nach einiger Suche bin ich dann auf Heliocron gestoßen. Das Programm ermittelt nach entsprechender Koordinate den jeweiligen Zeitpunkt des Sonnenauf- und Untergangs. Die Koordinate muss man allerdings in die unten stehende config-Datei eintragen. Da wir die meiste Zeit eh vor Anker liegen, ist dieser Aufwand für uns vertretbar.

Das Kabel Pluskabel vom Ankerlicht haben wir also dann vom Board am Cockpittisch abgegriffen, unterbrochen und auf das Relais gelegt. Da es zu dem Relais keine Anleitung gab, haben wir mit einer Widerstandsmessung eines Multimeters gemessen, in welchem Relaiszustand welche Kontakte geschlossen sind.

Die Cronjobs werden auf den jetztigen Koordinaten deutlich vor dem jeweiligen Sonnenaufgangsdämmerung (Dawn) getriggert.

Nachdem nun alles wunderbar funktioniert, wird das Relais in eine Verteilerdose in der Nähe des Raspis verpackt, da die Jumperkabel in meinem Fall auch garnicht so lang sind.

# Civil - The moment when the geometric centre of the Sun reaches 6° below the horizon as it is rising
0 5 * * * heliocron wait --event civil_dawn /home/pi/off.py
0 19 * * * heliocron wait --event civil_dusk /home/pi/on.py

# ~/.config/heliocron.toml
# set the recent location
latitude = "33.744660N"
longitude = "16.694220W"

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Probiert es einmal aus, es lohnt sich defintiv! Wenn ihr noch Hilfe bei der Installation oder Inbetriebnahme benötigt, schreibt uns einfach eine E-Mail oder bei Instagram eine Nachricht.

Viel Spaß!