Für eine einfache Einführung in das Plugin lesen Sie bitte den anderen Blogartikel über die Steuerung von Rollläden.

Ab UZSU Plugin Version 1.5.2 und smartVISU 2.9 Commit 5d15a36 (Stand Ende August 2018) gibt es eine neue Funktion im Universal Time Scheduler Plugin, mit der man eine Interpolation zwischen den angegebenen Zeitpunkten einstellen kann. Dies ist besonders nützlich, wenn Sie circadiane Lichtkurven für warmweißes und kaltweißes Licht programmieren möchten, kann aber auch für RGB-LEDs nützlich sein.

Hinweis: Bei aktivierter Interpolation interpoliert das Plugin ständig und sendet Werte im angegebenen Intervall, auch über Mitternacht. Wenn Sie Ihr Licht z.B. nur zwischen 20 Uhr (0%) und 21 Uhr (100%) dimmen wollen, müssen Sie einen zusätzlichen Wert um 21.01 Uhr (0%) einstellen. Andernfalls wird das Licht zwischen heute 21 Uhr und morgen 20 Uhr nur langsam gedimmt.

Unten sehen Sie ein Beispiel, wie das Widget von Stefan Widmer in smartVISU aussieht:

UZSU Graph

UZSU Graph widget mit Lichtkurven

Die obere rote Kurve zeigt den Verlauf des warmweißen Lichts über einen Tag (24 Stunden). Es gibt mehrere Punkte, die durch einfaches Anklicken der spezifischen x,y-Koordinaten im Diagramm festgelegt werden können. Die blauen Punkte sind „Standard“-Zeiteinstellungen um ca. Mitternacht, 5 Uhr, 8 Uhr, 18 Uhr und 21 Uhr. Der gelbe Punkt bezieht sich auf den Sonnenaufgang, der orangefarbene auf den Sonnenuntergang. Mit den Griffen neben diesen Punkten können Sie die „frühesten“ und „spätesten“ Werte durch Ziehen ändern.

Die untere blaue Kurve zeigt die Werte für das kalte weiße Licht. Die Punkte sind fast zu den gleichen Zeitpunkten gesetzt wie für das warmweiße Licht, allerdings mit Spitzenwerten am Morgen und am frühen Abend. Beide Kurven sind im Moment auf kubische Interpolation eingestellt. Sie können die Interpolation jedoch in der oberen rechten Ecke auf keine oder lineare Interpolation ändern. Um alle UZSU-Einstellungen für ein Element zu deaktivieren, klicken Sie auf das Kontrollkästchen in der oberen linken Ecke. Um einige Werte separat zu deaktivieren, klicken Sie auf diese und deaktivieren Sie die Schaltfläche „Akt/Act“ (siehe unten). Inaktive Einträge werden in der Grafik als Rauten dargestellt, inaktive Elemente sind ausgegraut.

Um bestehende Einstellungen zu ändern, können Sie einfach die entsprechenden Punkte im Diagramm ziehen. Wenn Sie auf einen bestehenden Punkt klicken, können Sie weitere Details für sonnenabhängige Zeiten ändern oder die Einstellung nur für bestimmte Wochentage gelten lassen. Wenn Sie dies tun, wird das Diagramm wie unten dargestellt aktualisiert, wobei am Wochenende das Licht während der Nacht heller bleibt:

UZSU Graph

UZSU Graph widget mit Lichtkurven für die ganze Woche

Das Einfügen des Diagramm-Widgets in Ihre smartVISU ist ziemlich einfach:


{{ device.uzsugraph('graph', 'coldwhite.uzsu', 'cold white', 1, 'num', [0, 255, 5]) }}

Natürlich ist es auch möglich, das uzsuicon-Widget zu verwenden, um die Timings auf eine weniger grafische Weise zu konfigurieren. Implementieren Sie das als:


{{ device.uzsuicon('icon', 'coldwhite.uzsu', 'cold white', '', '', 'num') }}

Wenn Sie auf das Symbol klicken, öffnet sich ein Popup-Fenster (siehe unten):

uzsu_popup

UZSU Graph widget popup für Lichter

Die Funktionsweise dieses Widgets wird in der smartVISU-Dokumentation und im Blogeintrag über die Verwendung der UZSU zur Rolladensteuerung näher beschrieben. In diesem Blogeintrag wird auch die Funktion „Zurück in der Zeit“, die Sie unten links sehen, näher erläutert. Außerdem sehen Sie in diesem Artikel, wie Sie Ihre Einträge für das UZSU-Plugin einrichten.

Um einen UZSU-Eintrag über die Logik zu aktualisieren, können Sie die folgenden Funktionen verwenden:


# query the next scheduled value and time
sh.coldwhite.uzsu.planned()

# query the interpolation settings
sh.coldwhite.uzsu.interpolation()

# query whether the uzsu is set active or not
sh.coldwhite.uzsu.activate()

# set the uzsu active or inactive
sh.coldwhite.uzsu.activate(True/False)

# set interpolation options
sh.coldwhite.uzsu.interpolation(type='linear/none/cubic', interval=5, backintime=0)

# clear your settings of the uzsu item. BE CAREFUL!
sh.coldwhite.uzsu.clear(True)

Diese Funktionen können auch für einige einfache Logiken wie in diesem Beispiel verwendet werden:

Sie möchten ein bestimmtes Licht (z.B. Weihnachtsdekoration) zu einer bestimmten Zeit einschalten. Wenn Sie das Haus verlassen, möchten Sie dieses Licht ausschalten. Bei der Rückkehr nach Hause soll es (nur) dann wieder eingeschaltet werden, wenn die UZSU es in der Zwischenzeit nicht ausgeschaltet hätte:


uzsustatus = sh.light.uzsu.planned()
if (uzsustatus['value'] == 0) and (sh.light.uzsu.activate() == True):
    sh.light(1)

Seit smarthomgeNG 1.6.1 kann dies noch einfacher mit der Funktion lastvalue() erreicht werden:


sh.light(sh.light.uzsu.lastvalue())

0 Kommentare

Schreibe einen Kommentar

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