ET19611 schreef op donderdag 24 april 2014 @ 13:15:
Hi,
Ik heb sinds kort een huis vol met mooie Fibaro producten en ben nu bezig om het eea te fine-tunen/optimaliseren.
Hier heb ik de juiste scenes voor nodig die in LUA geschreven moeten worden. Op een of andere manier lukt het mij niet om een simpel iets als buitenverlichting op zonsondergang en zonsopkomst automatisch te laten schakelen.
Ik heb op het Fibaro forum deze scene gevonden voor sunset/sunrise;
--[[
%% autostart
%% properties
%% globals
--]]
while true do
local sunUp = os.date("%H:%M", os.time()-45*60) --Off 45min after sunrise
local sunDown = os.date("%H:%M", os.time()+45*60) --On 45min before sunset
local currentDate = os.date("*t");
if ( sunUp == fibaro:getValue(1, "sunriseHour") )
then
fibaro:setGlobal("NightTime", "0");
fibaro:setGlobal("Goodnight", "0");
fibaro:setGlobal("GoodMorning", "0");
--fibaro:debug (fibaro:getValue (NightTime, "value")) --
elseif ( sunDown == fibaro:getValue(1, "sunsetHour") )
then
fibaro:setGlobal("NightTime", "1");
--fibaro:debug (fibaro:getValue (NightTime, "value"))
end
fibaro:sleep(60*1000);
end
Op de variabele "NightTime" wil ik een Z-wave schakelaar met ID40 laten schakelen. Ik heb deze variable opgenomen in het variabele panel als predifined variable met de naam "NightTime" en bij value 1 heb ik "0" ingevoerd en bij value 2 "1".
Vervolgens heb ik een aparte scene gemaakt die de status van de variabele "NightTime" afvraagt en indien deze variabele 1 is, de schakelaar met ID40 op ON schakelt.
--[[
%% properties
%% globals
sunUp
--]]
local startSource = fibaro:getSourceTrigger();
--fibaro:getValue("NightTime", "value")
if ( NightTime == "1" )
--fibaro:debug (fibaro:getValue (NightTime, "value")) --value = 0, zon op
then
fibaro:call(40, "turnOn");
var1 = fibaro : getValue ( 40 , "value" );
fibaro:debug ( " buitenverlichting = " .. var1 );
else
fibaro:call(40, "turnOff");
var1 = fibaro : getValue ( 40 , "value" );
fibaro:debug ( " buitenverlichting = " .. var1 );
end
Om de status van de buitenverlichting te kunnen volgen heb ik een variable "var1" toegekend aan ID40 en een debug waar ik deze status mee af kan vragen. Ik weet dat dit niet nodig is omdat ik ook de mogelijkheid heb om de status van de verlichting (schakelaar 40) via de HC2 applicatie te bekijken.
Ik zou ook graag de status van de variabele "NightTime" in het debug venster willen kunnen zien, echter mijn pogingen om de juiste commando hiervoor op te nemen in de scene is nog niet gelukt.
Ik dacht het op onderstaande manier te doen, maar dan krijg ik elke keer een foutcode
fibaro:debug (fibaro:getValue (NightTime, "value")) --value = 0, zon op
Wie kan mij op weg helpen met dit LUA scriptje?
Alvast bedankt,
Etienne