APNT-29 - Breiden Fibaro HC2 Sunrise / Sunset-mogelijkheden

Het Fibaro Home Center 2 heeft een paar beperkingen op de zonsondergang en zonsopgangtijden die u in uw scènes kunt gebruiken. U kunt bijvoorbeeld 15, 30, 45 en 60 minuten vóór zonsopgang en 15, 30, 45 en 60 minuten na zonsondergang selecteren. Maar u kunt niet 60 minuten vóór zonsondergang of andere waarden selecteren.

Het is eigenlijk heel eenvoudig om een ​​enkele regel van Lua-code te veranderen om de zonsondergang / zonsopgangstijden uit te breiden tot op elk moment dat u wilt.

Als een voorbeeld zullen we de Sunset Scene gebruiken die we hebben gebruikt in Application Note 28 -

Zonsondergang op scène

 

Deze scène draait op een licht precies bij zonsondergang. Dit werkt goed voor buitenverlichting, maar als je dezelfde scène hebt gebruikt voor een binnenlicht, zou je waarschijnlijk willen dat het vóór zonsondergang wordt geactiveerd omdat het donkerder wordt in een gebouw.

Dus laten we dit veranderen, zodat de scène 1 uur vóór zonsondergang wordt geactiveerd.

Bekijk de LUA-code

Hiervoor moeten we een regel van de LUA-code wijzigen die daadwerkelijk deze scène uitvoert.

  • In de scène Geavanceerd Tab ga naar de Schakel de bewerkingsmodus van de scène naar Lua Base
  • Klik 'Wijziging'
  • De LUA-code wordt weergegeven in een HC2-venster (hieronder weergegeven)

HC2 LUA-scènecode

 

  • De regel van code waarin we geïnteresseerd zijn, is aan Regel 14.

(((Rupddate.wday == 2 of stroomdate.wday == 3 of stroomdate.wday == 4 of stroomdate.wday == 5 of stroomdate.wday == 6) en string.Format ("% 02D", Wisselings. uur) .. ":" .. string.format ("% 02D", stroomdate.min) == Fibaro: GetValue (1, "Sunsethour"))))

 

  • Om dit te veranderen, zodat de scène 60 minuten vóór zonsondergang wordt geactiveerd, veranderen we regel 14 naar:

(((Rupddate.wdday == 2 of stroomdate.wday == 3 of stroomdate.wday == 4 of stroomdate.wday == 5 of stroomdate.wday == 6) en OS.Date ("% H:% m" , OS.TIME () + 60 * 60) == Fibaro: GetValue (1, "Sunsethour"))))

 

  • De code die de tijd bestuurt vóór of na zonsondergang is vetgedrukt gemarkeerd - OS.TIME () + 60 * 60)
    • Als dit positief is '+' De scène zal vóór zonsondergang activeren, indien negatief '-' het zal achteraf activeren
    • De tijd voordat / daarna wordt bepaald door de cijfers, '+60*60'In dit voorbeeld activeert u 60 minuten voor zonsondergang, 90 minuten' + 90 * 60 '
  • Opmerking: om deze code te testen, stel ik de oorspronkelijke scène in op 1 uur na zonsondergang. De LUA-code voor die scène was identiek aan de nieuwe code die we hierboven hebben gebruikt, behalve voor de tijd OS.TIME () - 60 * 60). Dus door eenvoudig het gedeelte van de code aan te veranderen OS.TIME () + 60 * 60) We hebben nu een scène die 1 uur vóór zonsondergang loopt.

Verander de LUA-code

Om de LUA-code te wijzigen om onze nieuwe regel van code (LINE 14) te gebruiken, moeten we de LUA-bewerkingsmodus inschakelen.

Belangrijk - Ik zou u voorstellen dat u dit doet nadat u de rest van de scène correct werkt - u kunt niet van de op Lua gebaseerde editor teruggaan naar de grafische blokeditor.

Wanneer u klaar bent - verander de editor naar Lua op basis van Lua.

  • Als u nog niet in het LUA-gedeelte van het tabblad 'Geavanceerd' gaat, ga dan naar de Schakel de bewerkingsmodus van de scène naar Lua Base, Klik 'Wijziging'
  • Klik 'Aanzetten'

HC2 LUA-editor

 

  • Klik 'Oke'In het waarschuwingsdialoogvenster
  • Wijzig LINE 14 naar de nieuwe code
  • Klik op de 'Opslaan'knop in het menu rechts

HC2 FINAL LUA CODE


 

De scène loopt nu 60 minuten voor zonsondergang.

Met behulp van deze eenvoudige codewijziging kunnen we onze scènes hebben die vóór of na zonsondergang / zonsopgang lopen en op wat we ooit leuk vinden.

Gerelateerde informatie