FHEM sunset und sunrise mit at verwenden – Automatisierungen nach Sonnenauf- und Sonnenuntergang

Mit den Funktionen sunrise(), sunset() und at lassen sich in FHEM sehr flexible Zeitsteuerungen erstellen. Da die Schaltzeiten täglich anhand der geografischen Position neu berechnet werden, entfällt das manuelle Anpassen an Sommer- und Winterzeit. Über optionale Mindest- und Höchstzeiten lassen sich zusätzlich individuelle Anforderungen berücksichtigen. Die Kombination gehört zu den wichtigsten Werkzeugen für eine intelligente Hausautomation.

Wer seine Hausautomation intelligent steuern möchte, kommt um die Funktionen sunrise und sunset in FHEM kaum herum. Statt feste Uhrzeiten zu verwenden, lassen sich Lampen, Rollläden oder andere Geräte automatisch anhand der tatsächlichen Sonnenauf- und Sonnenuntergangszeiten schalten.

In diesem Artikel zeige ich, wie die Funktionen sunrise, sunset und at in FHEM eingesetzt werden.

Voraussetzungen

Damit FHEM die korrekten Sonnenzeiten berechnen kann, müssen der Standort über Breitengrad und Längengrad eingerichtet sein.

Beispiel:

attr global latitude 52.5200

attr global longitude 13.4050

Anschließend stehen die Funktionen sunrise() und sunset() automatisch zur Verfügung. 

FHEM at mit sunset

Eine Außenbeleuchtung soll jeden Tag zum Sonnenuntergang eingeschaltet werden.

define LichtAbends at *{sunset()} set Terrasse on

Das Sternchen sorgt dafür, dass die Ausführung täglich erfolgt.

Licht 30 Minuten nach Sonnenuntergang einschalten

Ein Zeitversatz lässt sich direkt angeben.

define LichtAbends at *{sunset(1800)} set Terrasse on

1800 Sekunden entsprechen 30 Minuten.

Licht zum Sonnenaufgang ausschalten

Ebenso einfach funktioniert der Sonnenaufgang.

define LichtMorgens at *{sunrise()} set Terrasse off

Dadurch bleibt das Licht nur während der Dunkelheit eingeschaltet.

Mindest- und Höchstzeiten verwenden

Gerade im Sommer oder Winter kann es sinnvoll sein, feste Grenzen einzubauen.

Beispiel:

define Licht at *{sunset(0,"17:00","22:00")} set Terrasse on

Bedeutung:

  • niemals vor 17:00 Uhr
  • niemals nach 22:00 Uhr
  • ansonsten exakt zum Sonnenuntergang

Diese Möglichkeit eignet sich hervorragend für Gartenbeleuchtung oder Weihnachtsbeleuchtung. 

Sonnenaufgang ebenfalls begrenzen

Auch für den Sonnenaufgang können Grenzen gesetzt werden.

define LichtAus at *{sunrise(0,"05:30","09:00")} set Terrasse off

Dadurch wird verhindert, dass Schaltungen mitten in der Nacht oder sehr spät am Morgen erfolgen.

Aktuelle Sonnenzeiten anzeigen

Die berechneten Zeiten lassen sich auch anzeigen.

{sunrise()}

oder

{sunset()}

Diese Funktionen liefern die für den aktuellen Tag berechneten Uhrzeiten.

Typische Anwendungsfälle

Die Kombination aus at, sunrise und sunset eignet sich beispielsweise für:

  • Außenbeleuchtung
  • Gartenbeleuchtung
  • Rollläden
  • Markisen
  • Weihnachtsbeleuchtung
  • Aquariumbeleuchtung
  • automatische Beschattung
  • Anwesenheitssimulation