Der
Es ist tatsächlich sehr einfach, eine einzige Zeile LUA-Code zu ändern, um die Sonnenuntergangs-/Sonnenaufgangszeiten auf beliebige Zeiten zu verlängern.
Als Beispiel verwenden wir die Sonnenuntergangsszene, die wir in Anwendungshinweis 28 verwendet haben.

Diese Szene schaltet ein Licht genau bei Sonnenuntergang ein. Das funktioniert gut für Außenbeleuchtung, aber wenn man dieselbe Szene für eine Innenbeleuchtung verwenden würde, sollte diese wahrscheinlich vor Sonnenuntergang aktiviert werden, da es im Gebäudeinneren dunkler wird.
Ändern wir das also so, dass die Szene 1 Stunde vor Sonnenuntergang aktiviert wird.
LUA-Code anzeigen
Dazu müssen wir eine Zeile des LUA-Codes ändern, der diese Szene ausführt.
- In der Szene Fortschrittlich Gehen Sie mit der Registerkarte zu Szenenbearbeitungsmodus auf LUA-Basis umschalten
- Klicken Sie auf „Ändern'
- Der LUA-Code wird in einem HC2-Fenster angezeigt (siehe unten).

- Die Codezeile, die uns interessiert, befindet sich auf Zeile 14Die
| ( ((currentDate.wday == 2 oder currentDate.wday == 3 oder currentDate.wday == 4 oder currentDate.wday == 5 oder currentDate.wday == 6) und string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == |
- Um dies so zu ändern, dass die Szene 60 Minuten vor Sonnenuntergang aktiviert wird, ändern wir Zeile 14 wie folgt:
| ( ((currentDate.wday == 2 oder currentDate.wday == 3 oder currentDate.wday == 4 oder currentDate.wday == 5 oder currentDate.wday == 6) und os.date("%HM", os.time()+60*60) == |
- Der Code, der die Zeit vor oder nach Sonnenuntergang steuert, ist fett markiert. os.time()+60*60)
- Wenn dies positiv ist '+' Die Szene wird vor Sonnenuntergang aktiviert, falls negativ '-' Es wird anschließend aktiviert.
- Die Zeit davor/danach wird durch die Zahlen bestimmt, '+60*60In diesem Beispiel wird es 60 Minuten vor Sonnenuntergang aktiviert, 90 Minuten wären es +90*60.
- Hinweis: Um diesen Code zu testen, habe ich die ursprüngliche Szene auf eine Stunde nach Sonnenuntergang eingestellt. Der LUA-Code für diese Szene war bis auf die Zeitangabe identisch mit dem oben verwendeten neuen Code. os.time()-60*60)Indem man also einfach den entsprechenden Codeabschnitt ändert os.time()+60*60) Wir haben nun eine Szene, die 1 Stunde vor Sonnenuntergang spielt.
Ändern Sie den LUA-Code
Um den LUA-Code so zu ändern, dass er unsere neue Codezeile (Zeile 14) verwendet, müssen wir den LUA-Bearbeitungsmodus aktivieren.
Wichtig - Ich würde Ihnen raten, dies erst zu tun, nachdem der Rest der Szene korrekt funktioniert - ein Wechsel vom LUA-basierten Editor zurück zum Grafikblock-Editor ist nicht möglich.
Wenn Sie bereit sind, wechseln Sie zum LUA-basierten Editor.
- Falls Sie sich noch nicht im LUA-Bereich des Reiters „Erweitert“ befinden, gehen Sie zu Szenenbearbeitungsmodus auf LUA-Basis umschalten, klicken Sie auf 'Ändern'
- Klicken Sie auf „Einschalten'

- Klicken Sie auf „OK' im Warndialog
- Ändern Sie Zeile 14 in den neuen Code.
- Klicken Sie auf die 'Speichern'-Schaltfläche im rechten Menü

Die Szene wird nun 60 Minuten vor Sonnenuntergang abgespielt.
Mit dieser einfachen Codeänderung können wir unsere Szenen vor oder nach Sonnenuntergang/Sonnenaufgang und zu jeder beliebigen Uhrzeit ausführen.
Verwandte Informationen
- APNT-1: Installation eines
Fibaro Dimmermodul in einem Wandschalter - APNT-2: 2-Wege-Beleuchtung
Fibaro Dimmermodule - APNT-11: Verwendung verschiedener Schaltertypen mit
Fibaro Dimmermodule - APNT-17: Lichtsteuerung mit
Fibaro Relais - APNT-18: Verwendung eines Sekundärschalters mit einem
Fibaro Modul - APNT-23: Grundlagen von 2- und 3-Draht-Beleuchtungssystemen
- APNT-24: Verwendung
Fibaro Dimmer mit LED-Leuchten - APNT-26: Bewegungsaktiviertes Licht
Fibaro Heimzentrum 2