Smart-Home macht einfach Spaß


Zurück


Die Trigger-Bausteine

Die Trigger-Bausteine dienen als Auslöser für das erstellte Programm. Ohne einen Trigger würde das Programm nur eimal ausgeführt und zwar beim Starten. Ein erstelltes Programm wird also beim starten aktiviert und in den Arbeitsspeicher geladen, ohne einen Trigger wäre das Programm in den meisten Fällen nutzlos. Die Trigger-Bauteine definieren, bei welchen Ereignissen das Programm wieder durchgeführt werden soll. Dabei gibt es drei Arten der Auslösung:

1. Auslösung über Datenpunkte ( zum Beispiel Schalter true/false)
2. Auslösung über Astrozeiten (zum Beispiel Sonnenuntergang)
3. Auslösung über Zeitpläne (zum Beispiel jeden Werktag um 8.00 Uhr)

 


Auslösung über Datenpunkte 


Hier gibt es zwei Bausteine welche sich darin unterscheiden ob nur ein Datenpunkt für die Auslösung verantwortlich ist oder mehrere. Bei einem Daten Punkt kann es zum Beispiel ein Schalter sein der anschließend das Licht sich einschalten soll. Der Trigger-Baustein mit mehreren Auslösenden Objekten kann zum Beispiel das Programm jedes mal ausführt, sobald ein Fenster geöffnet wurde.

Ist das gewünschte Objekt ausgewählt, muss noch definiert werden worauf bei dem Objekt regiert werden soll. Hier gibt es 8 Einstellungen:


wurde geändert

Das Objekt wurde geändert z. B. von false auf true, 

wurde aktualisiert

Das Objekt wurde aktualisiert, z. B. ein Bauteil sendet seinen Zustand und der ioBroker aktualisiert das Objekt.

ist größer als letztes

Der Wert des Objektes wurde erhört, z. B. ...

ist gleich oder größer als letztes

Der Wert des Objektes ist gleich oder wurde erhört, z. B. ...

ist kleiner als letztes

Der Wert des Objektes wurde veringert, z. B. ...

ist gleich oder kleiner als letztes

Der Wert des Objektes ist gleich oder wurde verringert, z. B. ...

ist wahr

Der Wert des Objektes wurde auf wahr geändert, dann läuft das Skript einmal durch.

ist unwahr

Der Wert des Objektes wurde auf falsch geändert, dann läuft das Skript einmal durch.

Auslösung über die Astrozeiten


Die Auslöser sind praktisch, weil sich die Zeiten automatisch der täglich Ereignisse anpassen. Hiermit könnte Abends zum Zeitpunkt Sonnenuntergang-Ende automatisch die Rollladen herunter gefahren werden oder ein Licht im Wohnzimmer einschalten. Mit den Punkt Versatz kann man einen zeitlichen Versatz in Minuten einstellen, um das ausgewählte Ereignis noch genauer anzupassen. Für die Astrofunktion muss allerdings ein aktueller Standort ausgewählt werde, damit die Zeiten auch ermittelt werden können. Dies kann im Adapter eingestellt werde, entweder wird der Standort über sie Systemeinstellung übernommen (Standardeinstellung) oder der Standort wird im Adapter separat definiert. 


Sonnenaufgang

Der obere Sonnenrand ist am Horizont zu sehen.

Sonnenaufgang-Ende

Der untere Sonnenrand ist am Horizont zu sehen.

Golden hour Ende

Morgens: beste Zeit zum Fotografieren endet (weiches Licht)

Sonnenmittag

Die sonne befindet sich an der höchsten Position.

Golden hour

Abends: Beste Zeit zum Fotografieren beginnt.

Sonnenuntergang-Anfang

Der untere Sonnenrand berührt Horizont.

Sonnenuntergang

Der obere Sonnenrand verschwindet am Horizont.

Abenddämmerung

Lichtverhältnisse wechseln von Tag auf Nacht

Nautische Abenddämmerung 

-

Nacht 

Es ist Dunkel, das Tages sollte verschwunden sein.

Nacht ende

Es ist Dunkel, das Tageslicht sollte langsam erkenn zu sein

Nautische Morgendämmerung

-

Morgendämmerung

Es wird hell, die sonne ist aber noch nicht zu sehen.

Nadir

-

(Genau ist das schwer zu beschreiben, einfach mal testen)


Auslösung über definierte Zeite


hier gibt es prinzipiell zwei Arten Von Bausteinen einmal den fest definierten Zeitplan (Links) und den Zeitplan welcher über externe Datenpunkte oder fest definierten Zeitplan eingestellt werden kann. 

Der Feste Zeitplan 

Mit dem festen Zeitplan werden einmal die zeitlichen Parameter festgelegt. Das eignet sich für Anwendung welche immer gleich sein sollen zum Beispiel sende jeden Abend um 20.00 die Pollenbelastung vom morgigen Tag oder prüfe jede Stunde ob Luftfeuchtigkeit im Raum ok ist. Den Zeitplan kann man über der arten definieren Wizards, Einfach oder Cron. Ich nutze immer CRON. Es können dort die Minuten Stunden Tage Monate und Wochentage einzeln definiert. Soll jeden Tag um 20.05 Uhr das Skript ausgeführt werden muss folgendes eingestellt werden:

Minuten - Bestimmte Minute  - 5

Stunden - Bestimmte Stunde - 20

Tage - Jeden Tag

Monate - jeden Monat 

Wochenrage - jeden Tag

Wird das Skript anschließend gespeichert und neu gestartet, wird der eingestellte Zeitplan als Trigger übernommen.


Zeitplan über externe Datenpunkte oder fest definierten Zeitplan 

Dieser Baustein kann auch über einen festen Zeitplan gearbeitet werden, welche einen eignen Namen bekommen kann und Ober den stop Baustein geslöscht werden kann.

Die Definition über externe Datenpunkte ist sehr interessant, denn so kann zum Beispiel über selbst angelegte Datenpunkte für Stunden und Minuten der Zeitplan Manuel über die Visualisierung geändert werden. Wichtig ist hierbei jedoch der stop-Baustein, denn wenn einmal ein Zeitplan mit 11.00 Uhr definiert war und man ändert diesen wert auf 12:00Uhr sind beide Zeiten im Arbeitsspeicher aktiv und das Skript würde um jetzt um 11:00 Uhr und um 12:00 Uhr ausgefürt. Um das zu vermeiden muss entweder das Skript neu gestartet werden oder der Zeitplan muss über den stop-Baustein aus dem Arbeitsspeicher entfern werden und neu geladen werden, das könnte man zum Beispiel über Funktionen machen.