ioBrokerioBroker Blockly

Blockly – Beispiel – Aktion verzögern

In dieser Artikelserie möchte ich das Thema Blockly in ioBroker näher erklären. In diesem Beispiele zeige ich, wie man die Ausführung einer Aktion verzögern kann.

Für die Steuerung meiner Anwesenheitserkennung möchte ich eine Aktion verzögert ausführen. Wenn ich zuhause angekommen bin, soll z.B. ein bestimmtes Gerät mit einer Verzögerung von 5 Sekunden aktiviert werden. Im ersten Blockly-Beispiel zeige ich Dir, wie ich diese Steuerung aufgebaut habe. Im zweiten Beispiel zeige ich Dir zusätzlich, wie Du mit dem Timeout-Block gleich mehrere Geräte verzögert steuern kannst.

 

Beispiel 1 – Verzögerung mit einem Gerät

Das Blockly-Script wird bei einer Änderung des Datenpunktes für die Anwesenheitserkennung ausgelöst. Vor der eigentlichen Ansteuerung der Aktoren wird zunächst über den Falls-Block geprüft, ob die Person anwesend ist. Wenn der Falls-Block wahr zurückgeliefert, wird im nächsten Schritt mit dem Steuere-Block der Aktor aktiviert. Zudem wird die Option „mit Verzögerung“ aktiviert. Die Verzögerung kann dabei in Millisekunden, Sekunden oder Minuten eingestellt werden.

 

Beispiel 2 – Verzögerung mit mehreren Geräten

Im zweiten Beispiel möchte ich mehrere Geräte verzögert steuern. Dies kann einfach mit dem Timeout-Block umgesetzt werden. Ausgelöst wird die Steuerung ebenfalls mit dem Trigger-Block, der bei einer Änderung des Datenpunkts ausgeführt wird. Im Blockly-Script werden dazu einfach die Steuere-Blöcke in einen Timeout-Block verschoben. Im Timeout-Block kann die Verzögerung ebenfalls in Millisekunden, Sekunden und Minuten eingestellt werden.

Der TimeOut-Block hat zudem den Vorteil, dass bei einer evtl. Wert-Änderung der Timeout mit dem Stop-Timeout-Block beendet werden kann. Ich setze häufig die Timeout-Blöcke ein, da ich so auch einfach und schnell noch weitere Aktoren hinzufügen kann.

 

Ich hoffe Dir gefällt der Artikel. Ich freue mich über Deinen Kommentar oder Fragen zum Thema 🙂

Matthias Korte

Hauptberuflich Software-Entwickler und seit einigen Jahren Smart-Home Fan. Angefangen hat alles mit einem RaspberryMatic und einer schaltbaren Steckdose. Mittlerweile habe ich einige Steckdosen, Sensoren, und Thermostate sowie ioBroker zur Visualisierung im Einsatz.

Ein Gedanke zu „Blockly – Beispiel – Aktion verzögern

  • Torsten Hoff

    Hallo Matthias,

    ich habe eine Frage und hoffe, du kannst mir helfen.
    Ich habe ein Script in dem Teile nach einer bestimmten Zeit ausgeführt werden, welche durch eine Variable festgelegt wird.

    Ich möchte jetzt noch einen weiteren Teil ausführen, wenn der erste abgeschlossen ist. Das heißt ich würde gern einen zweiten Teil zeitverzögert ausführen, auf Basis dieser zu Anfangs gesetzten Variable.

    Ich hoffe ich habe es einigermaßen verständlich erklärt.

    Danke und Grüße Torsten

    Antwort

Schreibe einen Kommentar

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