De
Det er faktisk meget nemt at ændre en enkelt linje LUA-kode for at udvide solnedgangs-/solopgangstiderne til et hvilket som helst tidspunkt, du ønsker.
Som et eksempel bruger vi solnedgangsscenen, som vi brugte i applikationsnote 28 -

Denne scene tænder et lys præcis ved solnedgang. Dette fungerer godt til udendørs lys, men hvis du brugte den samme scene til et indendørs lys, ville du sandsynligvis ønske, at det aktiveres før solnedgang, da det bliver mørkere inde i en bygning.
Så lad os ændre dette, så scenen aktiveres 1 time før solnedgang.
Se LUA-koden
For at gøre dette skal vi ændre én linje i LUA-koden, der rent faktisk kører denne scene.
- I scenens Fremskreden fanen gå til Skift sceneredigeringstilstand til LUA-base
- Klik på 'Forandring'
- LUA-koden vises i et HC2-vindue (vist nedenfor)

- Den kodelinje, vi er interesserede i, er på Linje 14.
| ( ((currentDate.wday == 2 eller currentDate.wday == 3 eller currentDate.wday == 4 eller currentDate.wday == 5 eller currentDate.wday == 6) og string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == |
- For at ændre dette, så scenen aktiveres 60 minutter før solnedgang, ændrer vi linje 14 til:
| ( ((currentDate.wday == 2 eller currentDate.wday == 3 eller currentDate.wday == 4 eller currentDate.wday == 5 eller currentDate.wday == 6) og os.date("%H:%M", os.time()+60*60) == |
- Koden, der styrer tiden før eller efter solnedgang, er markeret med fed skrift - os.time()+60*60)
- Hvis dette er positivt '+' Scenen aktiveres før solnedgang, hvis den er negativ '-' den aktiveres bagefter
- Tiden før/efter bestemmes af tallene, '+60*60'i dette eksempel aktiveres 60 minutter før solnedgang, 90 minutter ville være '+90*60'
- Bemærk: For at teste denne kode satte jeg den oprindelige scene til 1 time efter solnedgang. LUA-koden for den scene var identisk med den nye kode, vi har brugt ovenfor, bortset fra at den foreløbig er os.time()-60*60)Så ved blot at ændre kodeafsnittet til os.time()+60*60) Vi har nu en scene, der kører 1 time før solnedgang.
Ændr LUA-koden
For at ændre LUA-koden til at bruge vores nye kodelinje (linje 14), skal vi aktivere LUA-redigeringstilstanden.
Vigtig - Jeg vil foreslå, at du gør dette, når du har fået resten af scenen til at fungere korrekt - du kan ikke gå fra den LUA-baserede editor tilbage til grafikblokeditoren.
Når du er klar - skift editoren til LUA-baseret.
- Hvis du ikke allerede er i LUA-sektionen under fanen 'Avanceret', skal du gå til Skift sceneredigeringstilstand til LUA-base, klik på 'Forandring'
- Klik på 'Tænd'

- Klik på 'Okay' i advarselsdialogboksen
- Skift linje 14 til den nye kode
- Klik på 'Spare'-knappen i menuen til højre

Scenen vil nu køre 60 minutter før solnedgang.
Ved at bruge denne simple kodeændring kan vi få vores scener til at køre før eller efter solnedgang/solopgang og på et hvilket som helst tidspunkt, vi ønsker.
Relaterede oplysninger
- APNT-1: Installation af en
Fibaro Lysdæmpermodul i en vægafbryder - APNT-2: 2-vejs belysning ved brug af
Fibaro Dimmermoduler - APNT-11: Brug af forskellige switchtyper med
Fibaro Dimmermoduler - APNT-17: Styring af lys med
Fibaro Relæer - APNT-18: Brug af en sekundær kontakt med en
Fibaro Modul - APNT-23: Forståelse af 2-tråds og 3-tråds belysningssystemer
- APNT-24: Brug af
Fibaro Lysdæmpere med LED-lys - APNT-26: Bevægelsesaktiveret lys ved hjælp af
Fibaro Hjemmecenter 2