APNT-29 - Erweiterung von Fibaro HC2 Sunrise / Sunset-Funktionen

Das Fiaro Home Center 2 verfügt über ein paar Einschränkungen für den Sonnenuntergang- und Sonnenaufgangspartner, die Sie in Ihren Szenen verwenden können. Zum Beispiel können Sie 15, 30, 45 und 60 Minuten vor Sonnenaufgang und 15, 30, 45 und 60 Minuten nach Sonnenuntergang auswählen. Sie können jedoch nicht 60 Minuten vor Sonnenuntergang oder anderen Werten auswählen.

Es ist eigentlich sehr einfach, eine einzelne Linie von LUA-Code zu ändern, um den Sunset / Sunrise-Zeiten bis zu jeder Zeit zu erweitern.

Als Beispiel verwenden wir die Sunset-Szene, die wir in Anwendungsanmerkung 28 verwendet haben -

Sonnenuntergang auf Szene.

 

Diese Szene macht ein Licht genau bei Sonnenuntergang. Dies funktioniert gut für Außenleuchten, aber wenn Sie dieselbe Szene für ein Innenlicht benutzten, möchten Sie wahrscheinlich vor Sonnenuntergang aktiviert werden, da er dunkler in einem Gebäude dunkler wird.

So können wir dies ändern, damit die Szene 1 Stunde vor Sonnenuntergang aktiviert ist.

Sehen Sie sich den LUA-Code an

Dazu müssen wir eine Zeile des LUA-Codes ändern, der diese Szene tatsächlich ausgeführt hat.

  • In der Szene Fortschrittlich Tab zum Szenen-Bearbeitungsmodus in Lua-Basis wechseln
  • Klicken 'Ändern'
  • Der LUA-Code wird in einem HC2-Fenster angezeigt (unten gezeigt)

HC2 Lua-Szenecode

 

  • Die Codezeile, an denen wir interessiert sind, ist an Linie 14..

(((CurrentDate.wday == 2 oder CurrentDate.wday == 3 oder CurrentDate.wday == 4 oder CurrentDate.wday == 5 oder CurrentDate.wday == 6) und String.Format ("% 02D", Stromdat. Stunde) .. ":" .. String.Format ("% 02D", Currentdate.min) == Fibaro: GetValue (1, "Sonnenetur")))

 

  • Um dies zu ändern, damit die Szene 60 Minuten vor Sonnenuntergang aktiviert wird, wechseln wir die Zeile 14 an:

(((currentedate.wday == 2 oder currentDate.wday == 3 oder currentDate.wday == 4 oder currentDate.way == 5 oder currentDate.wday == 6) und OS.Date ("% H:% M" , os.time () + 60 * 60) == Fiaro: GetValue (1, "Sonnenethour")))

 

  • Der Code, der die Zeit vor oder nach dem Sonnenuntergang steuert, ist fett gekennzeichnet - os.time () + 60 * 60)
    • Wenn das positiv ist '+' Die Szene wird vor Sonnenuntergang aktiviert, wenn negativ '-' Es wird danach aktiviert
    • Die Zeit vor / nach wird von den Zahlen bestimmt "+60*60"In diesem Beispiel wird 60 Minuten vor Sonnenuntergang aktiviert, 90 Minuten wären '+ 90 * 60'
  • Hinweis: Um diesen Code zu testen, setzen Sie die ursprüngliche Szene auf 1 Stunde nach Sonnenuntergang. Der LUA-Code für diese Szene war identisch mit dem neuen Code, den wir oben verwendet haben, mit Ausnahme des Zeitpunkts os.time () - 60 * 60). So ändern Sie einfach den Abschnitt des Codes an os.time () + 60 * 60) Wir haben jetzt eine Szene, die 1 Stunde vor Sonnenuntergang läuft.

Ändern Sie den LUA-Code

So ändern Sie den LUA-Code, um unsere neue Codezeile (Zeile 14) zu verwenden, müssen wir den LUA-Bearbeitungsmodus einschalten.

Wichtig - Ich würde vorschlagen, dass Sie dies tun, nachdem Sie den Rest der Szene richtig ordnungsgemäß funktionieren, können Sie nicht vom LUA-basierten Editor zurück zum Grafikblockeditor zurückkehren.

Wenn Sie fertig sind - Ändern Sie den Editor in Lua-basiert.

  • Wenn Sie sich nicht bereits im LUA-Bereich der Registerkarte "Advanced" befinden, gehen Sie zur Szenen-Bearbeitungsmodus in Lua-Basis wechseln, klicken 'Ändern'
  • Klicken 'Schalte ein'

HC2 Lua Editor.

 

  • Klicken 'OK'Im Warndialogfeld
  • Ändern Sie die Zeile 14 auf den neuen Code
  • Drücke den 'Speichern'Button im rechten Menü

HC2 Final Lua-Code


 

Die Szene wird jetzt 60 Minuten vor dem Sonnenuntergang ausgeführt.

Mit dieser einfachen Code-Änderung können wir unsere Szenen vor oder nach Sonnenuntergang / Sonnenaufgang laufen lassen und zu dem, was wir ewige Zeit mögen.

Verwandte Informationen.