Page 1 of 1

LUA-scen för TimeOfDay

Posted: 11 Aug 2018, 10:43
by svante
Hej,
Idag har jag 4 olika blockscener som ställer variabeln TimeOfDay till Morgon, Dag, Kväll, Natt beroende på olika klockslag.
Jag gissar att det finns någon enkel lua-scen som kan åstadkomma detta istället för att behöva justera 4 olika scener så fort solen börjar gå ner/gå upp senare/tidigare om dagarna...

Någon som kan dela med sig? :)

Tack på förhand!

EDIT: det gäller alltså FIBARO Home Center 2

Re: LUA-scen för TimeOfDay

Posted: 14 Aug 2018, 06:33
by Bamsefar

Re: LUA-scen för TimeOfDay

Posted: 15 Aug 2018, 10:46
by svante
Tack! Det ser väldigt lovande ut men alldeles för mycket kodspråk för att jag ska förstå hur jag ska få in det i mitt system, gissar att en copy/paste inte kommer lösa mitt problem :D

Re: LUA-scen för TimeOfDay

Posted: 17 Aug 2018, 11:37
by RH_Dreambox
Ja Bamsefar ligger alltid på en hög nivå i sina inlägg ;)
Kanske den här Klipp och Klistra-scenen är vad du behöver.
Du behöver bara lägga in en fördefinierad variabel med värdena Dag, Natt, Gryning och Skymning.

Ange dina egna tider för dayTime och nightTime. Var noga med gemener och versaler så kommer det att funka.
Den globala variabeln kommer att synkas så fort något av villkoren uppfylls.

Code: Select all

--[[
%% autostart
%% properties
%% weather
%% events
%% globals
--]]

-- Ange tider för du anser att Dag och Natt infaller
local dayTime   = "12:00"
local nightTime = "00:00"

if (fibaro:countScenes() > 1) then fibaro:abort() end 
while true do 

local currentDate = os.date("*t");
local timeNow = (string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min))
local sunUp=fibaro:getValue(1, "sunriseHour")
local sunDown=fibaro:getValue(1, "sunsetHour")

-- Gryning då solen går upp
if (timeNow == sunUp)
then
	fibaro:setGlobal("TimeOfDay", "Gryning")
	fibaro:debug("TimeOfDay sattes till ".."Gryning ".."kl. "..sunUp)
    
-- Skymning då solen går ned    
elseif (timeNow == sunDown)
then
	fibaro:setGlobal("TimeOfDay", "Skymning")
	fibaro:debug("TimeOfDay sattes till ".."Skymning ".."kl. "..sunDown)
  
-- Tid då Dag infaller
elseif 
	timeNow == dayTime
then
	fibaro:setGlobal("TimeOfDay", "Dag");
	fibaro:debug("TimeOfDay sattes till ".."Dag ".."kl. "..dayTime)
 
-- Tid då Natt infaller
elseif
	timeNow == nightTime
then
	fibaro:setGlobal("TimeOfDay", "Natt");
	fibaro:debug("TimeOfDay sattes till ".."Natt ".."kl. "..nightTime)
end

--fibaro:debug("Tiden är nu: "..timeNow)
fibaro:sleep(60*1000)
end

Re: LUA-scen för TimeOfDay

Posted: 17 Aug 2018, 14:45
by sonnyboy
Har du även en luxmätare någonstans så kan du ta värden från den och använda till din TOD, jag kör på det sättet.