• Skip to main content
  • Skip to secondary menu
  • Zur Hauptsidebar springen
  • Zur Fußzeile springen
  • Alle Produkte
  • Werkzeuge
  • Basics
  • Angebote

Zukunft at home

Vernetze dein Zuhause!

  • Startseite
  • openHAB
  • Tools
  • KNX
  • Regeln
  • Alexa
  • Selbst gebaut
  • Leserprojekte
  • Shop

Sonnenuntergang mit openHAB simulieren

13. Dezember 2020 geschrieben von Patrick 3 Kommentare

Die Philips Hue Go Lampen zieren seit kurzem die Nachttische. Die Funktion Natürlich Aufwachen und Schlafen gehen hat es mir ziemlich angetan. Dabei wird ein Sonnenaufgang oder ein Sonnenuntergang simuliert und das Licht wird innerhalb von z.B. 15 Minuten immer heller oder immer dunkler. Soweit so toll. Leider handelt es sich bei der Funktion um eine Routine, die zu einer eingestellten Zeit startet. Es gibt scheinbar keine Möglichkeit die Funktion manuell zu starten. OpenHAB wäre aber nicht openHAB, wenn man es nicht auch direkt als Regel programmieren könnte.

Items der Lampe

In meinem Fall handelt es sich um eine Hue Go Lampe. Damit können Farben aber auch verschiedene Weißtöne (Tunable White) dargestellt werden. Der Vollständigkeit halber zeige ich alle Items, die ich für die Lampe angelegt habe.

Items Philips Hue Go Lampe
1
2
3
4
Switch Bettlampe_Schalter "Bett" { channel="hue:0210:xxxxxxxx:8:color" }
Dimmer Bettlampe_Dimmer "Bett Dimmen" { channel="hue:0210:xxxxxxxx:8:color" }
Color Bettlampe_Farbe "Bett Farbe" { channel="hue:0210:xxxxxxxx:8:color" }
Dimmer Bettlampe_Farbtemperatur "Bett Farbtemperatur" { channel="hue:0210:xxxxxxxx:8:color_temperature" }

Zusätzlich wird noch ein Dummy Switch angelegt, um später die Regel auslösen zu können:

Dummy Switch für Sonnenuntergang-Simulation
1
Switch Sonnenuntergang "Sonnenuntergang starten"

Sonnenuntergang Regel erstellen

Nun haben sind alle notwendigen Items vorhanden, so dass die Regel erstellt werden kann. Hierzu wird einfach eine neue .rules Datei angelegt wie zum Beispiel „sonnenuntergang.rules“

Die Regel selbst sieht so aus:

Sonnenuntergang Regel openHAB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
var Timer timer = null
 
rule "Beleuchtung Simulation Sonnenuntergang"
when
    Item Sonnenuntergang changed to ON
then
    timer?.cancel
    timer = createTimer(now.plusMillis(10),[|
            
        if((Bettlampe_Dimmer.state as Number) > 0)
        {          
            Bettlampe_Dimmer.sendCommand((Bettlampe_Dimmer.state as Number) - 2)
            Bettlampe_Farbtemperatur.sendCommand((Bettlampe_Farbtemperatur.state as Number) +1)
            timer.reschedule(now.plusSeconds(36))
        }
 
        if((Bettlampe_Dimmer.state as Number) == 0)
        {
            Sonnenuntergang.sendCommand(OFF)
            timer?.cancel
        }
    ])
end

Es wird ein Timer erstellt, um die Regel immer wieder laufen zu lassen bis ein bestimmter Wert erreicht ist. Der Wert an dem festgemacht wird, ob die Regel weiterläuft ist der Dimmwert der Lampe:

if((Bettlampe_Dimmer.state as Number) > 0)
Die Regel startet nur, wenn der Dimmerwert größer 0 ist und endet wenn die Bedingung nicht mehr erfüllt ist, also der Dimmwert 0 beträgt.

Bei einem „realistischen“ Sonnenuntergang sollte sich neben der Helligkeit auch die Lichtfarbe hin zu warm ändern. Meine Bettlampe ist grundsätzlich mit einem Dimmwert von 50%  und einer Farbtemperatur von 75% eingeschaltet. Im Verlauf des Sonnenuntergangs soll die Helligkeit abnehmen und die Farbtemperatur zunehmen.

Damit nach 15 Minuten alle gewünschten Werte erreicht sind, wird ein Durchgang alle 36 Sekunden wiederholt. Das sind insgesamt 25 Durchgänge mit folgenden Befehlen:

1
2
3
Bettlampe_Dimmer.sendCommand((Bettlampe_Dimmer.state as Number) - 2)
Bettlampe_Farbtemperatur.sendCommand((Bettlampe_Farbtemperatur.state as Number) +1)
timer.reschedule(now.plusSeconds(36))

Bettlampe_Dimmer wird pro Durchgang um den Wert 2 reduziert.
Bettlampe_Farbtemperatur wird pro Durchgang um den 1 erhöht.
timer wird auf 36 eingestellt.

Im letzten Schritt geben wir noch an was passieren soll, wenn der Dimmwert 0 erreicht ist.

1
2
3
4
5
if((Bettlampe_Dimmer.state as Number) == 0)
{
    Sonnenuntergang.sendCommand(OFF)
    timer?.cancel
}

Wenn der Dimmwert 0 erreicht hat, ist unser Ziel erreicht. Jetzt wird der Dummyswitch wieder auf OFF gestellt und zur Sicherheit der laufende Timer gestoppt.

Wenn du das ganze nun noch per Sprachbefehl steuern möchtest, kannst du das Dummy Item mit der Alexa Funktion [Switchable] versehen. Wie das genau funktioniert kannst du im Artikel Mit Alexa Routinen schönere Befehle erteilen nachlesen.

Fertig ist der Sonnenuntergang. Viel Spaß damit in dieser dunklen Jahreszeit. Diese Regel ist übrigens nicht auf Hue Lampen beschränkt. Du kannst sie für sämtliche dimmbaren Lampen anwenden. Sollte die Farbtemperatur nicht einzeln ansteuerbar sein, einfach weglassen.

Kategorie: Allgemein, openHAB, Regeln, Smarte Beleuchtung Stichworte: Amazon Alexa, openHab, Philips Hue, Regel

Leser-Interaktionen

Kommentare

  1. Kirsten meint

    15. Dezember 2020 um 12:01

    Super! Probiere ich gleich mal aus 😉
    By the way: Top Seite! Vielen Dank für deine Tipps!!

    Viele Grüße
    Kirsten

    Antworten
    • Patrick meint

      15. Dezember 2020 um 12:49

      Hey Kirsten,
      vielen Dank – freut mich 🙂
      Liebe Grüße
      Patrick

      Antworten
  2. Andi meint

    14. Dezember 2020 um 9:49

    Ich habe so eine Funktion für das natürliche Aufwachen nie genutzt. Funktioniert es wirklich so das man morgens davon Wach wird? Ich kann es mir nicht wirklich vorstellen, ich denke eher das ich auch ein Wecker stellen müsste 🙂

    Grüße
    Andi

    Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Haupt-Sidebar

Suche

Neuigkeiten

Logitech Harmony Firmware Update sperrt lokalen Netzwerkzugriff

Logitech Harmony Hub nach Firmware Update unbrauchbar

Nach einem Firmware Update bei Logitech Harmony (Hub) kann keine Verbindung mehr mit openHAB hergestellt werden. Der Grund: Logitech hat sich dazu entschieden die, nach eigener Aussage, „nicht offiziellen“ APIs zu sperren, um die Sicherheit zu gewährleisten. Den ganzen Artikel findest du hier. Das dürfte für viele Nutzer der nicht gerade günstigen Fernbedienung für viel […]

(Sinnvolle) openHAB Regeln

AVM FRITZ!DECT 200 Steckdose - Quelle AVM

Fritz! DECT Steckdose mit openHAB steuern

Eine Funksteckdose ist eine praktische Sache. Ob Dekobeleuchtung, Ventilator oder einfach nur als zentraler An/Aus Schalter – Es gibt unzäzlige Einsatzmöglichkeiten. Wer eine Fritz Box hat, kommt mit der passenden Fritz! Dect Steckdose ganz leicht in den Genuss des ferngesteuerten Schaltens. Mit dem Fritz! Binding für openHAB ist die Steckdose im Handumdrehen in deine openHAB […]

Leserprojekte

Leserprojekt Andy: Ultraschallsensor in alter Funksteckdose

Ultraschallsensor in Funksteckdose – Leserprojekt von Andy

Heute stelle ich euch ein Leseprojekt vor. Andy war so freundlich und hat Zukunft at home Bilder von der Umsetzung des eigenen Ultraschallsensors zukommen lassen. Der Clou: Die gesamte Ultraschallsensor Technik ist in einer alten Funksteckdose untergebracht – inklusive Netzteil. So kann die ganze Einheit in die Steckdose gesteckt werden und benötigt keine weitere Halterung […]

Top Beiträge & Seiten

Gartenbewässerung selbst bauen und über openHAB steuern
Stromzähler und aktuellen Stromverbrauch in openHAB darstellen
Raspberry Pi von SSD booten
Fernbedienung selbst bauen und per MQTT ansteuern

Neuste Kommentare

  • Harald bei Stromzähler und aktuellen Stromverbrauch in openHAB darstellen
  • Harald bei Stromzähler und aktuellen Stromverbrauch in openHAB darstellen
  • Bob Bobber bei Raspberry Pi von SSD booten

Tags

3D Druck Alexa Amazon Alexa Astro Astro Binding Automation Beleuchtung Bewässerung Binding Datenbank Diagramm Echo Entwicklung ESP8266 Fritz!Box Fritz! DECT Installation KNX Licht MQTT mySQL NodeMCU openHab openHABian Philips Hue Raspberry Raspberry Pi Regel Regeln Round Robin rrd4j SD Karte selbstgebaut Setup Smarthome Sprachsteuerung Steckdose Temperatursensor Thermostat Tools Ultraschallsensor Update Upgrade Visual Studio Code Zeitschaltuhr

Archiv

Meta

  • Anmelden
  • Feed der Einträge
  • Kommentare-Feed
  • WordPress.org

Footer

Rechtliches

  • Datenschutz
  • Impressum

Kategorien

  • Allgemein
  • Amazon Alexa
  • KNX
  • Leserprojekte
  • Neuigkeiten
  • openHAB
  • Regeln
  • Selbst gebaut
  • Smarte Beleuchtung
  • Tools
  • Facebook
  • RSS
  • Twitter

Blogstatistik

  • 324.515 Besuche
Blogverzeichnis - Bloggerei.de
Blogverzeichnis

Copyright © 2021 · Made with love by Interwebs UG · Anmelden