Hej,
Helt ny på detta så jag skulle vilja ha hjälp med en scen som tänder och släcker lampor när sol går upp/ner men samtidigt släcker/tänder tidigare/senare ifall det är molnigt/mörkare eller ljusare med hjälp av styrning från motion sensorn?
Har för mig att jag läst någon som gjort sådan scen men kan inte hitta någon information om det.
Scen - solupp/solner med hjälp av Fibaro motion sensor?
Hejsan
det svåra är att hitta ett optimalt och bra lux värde från sensorn då det är många faktorer som spelar in. Dels är sensorn inte så snabb att uppdatera värdet om man inte justerar tiden men då drar batteriet slut fortare, sen är det lampor och andra saker som kan ställa till det. Inte alltid der ger en bra lösning.
Själv kör jag endast på upp och nedgång med en liten justering av tiden under sommar halvåret vilket jag tycker fungerar ypperligt. Har ca 30min före solnedgång under host/vinter sen justerar jag det till 15-20min före när det börjar bli ljusare ute.
Men vill du fortfarande ha en sådan scen så kan jag hjälpa dig förståss.
Mvh Jonny
det svåra är att hitta ett optimalt och bra lux värde från sensorn då det är många faktorer som spelar in. Dels är sensorn inte så snabb att uppdatera värdet om man inte justerar tiden men då drar batteriet slut fortare, sen är det lampor och andra saker som kan ställa till det. Inte alltid der ger en bra lösning.
Själv kör jag endast på upp och nedgång med en liten justering av tiden under sommar halvåret vilket jag tycker fungerar ypperligt. Har ca 30min före solnedgång under host/vinter sen justerar jag det till 15-20min före när det börjar bli ljusare ute.
Men vill du fortfarande ha en sådan scen så kan jag hjälpa dig förståss.
Mvh Jonny
Prova den här, återkom om du önskar andra funktioner eller om något inte fungerar som tänkt
Code: Select all
luxSensor = 94 -- ID of luxsensor
local luxValue = "300" -- value of luxsensor to do stuff if below or above
local BeforeSunset = 30 -- minutes before sunset
local AfterSunrise = 30 -- minutes after sunrise
lights ={5,29} -- ID of lights
if (tonumber(fibaro:countScenes()) > 1) then
fibaro:debug(os.date() .. " - One instance of script already running");
fibaro:abort()
end
while true do
local sunUp = os.date("%H:%M", os.time()-AfterSunrise*60)
local sunDown = os.date("%H:%M", os.time()+BeforeSunset*60)
if ( sunUp == fibaro:getValue(1, "sunriseHour") or luxValue > fibaro:getValue(luxSensor, "value") )
then
for i = 1,#lights do
devices = lights[i];
fibaro:call(devices, "turnOff")
end
elseif ( sunDown == fibaro:getValue(1, "sunsetHour") or luxValue < fibaro:getValue(luxSensor, "value") )
then
for i = 1,#lights do
devices = lights[i];
fibaro:call(devices, "turnOn")
end
end
fibaro:sleep(30000)
end
Hej igen,
Går det att lägga till så att man släcker vid ett visst klockslag?
Vet inte om jag var tydlig, men jag skulle vilja ha så att lampor tänds X minuter innan solupp och släcks X minuter efter solupp och om det är molnigt och solen inte lyser förrän senare på dagen då släcks det efter sensorn. Sedan så tänds lampor X minuter innan solnedgång eller tidigare mha sensor om det blev molnigt. Sedan så vill jag släcka för natten på ett bestämt klockslag.
Går det att lägga till så att man släcker vid ett visst klockslag?
Vet inte om jag var tydlig, men jag skulle vilja ha så att lampor tänds X minuter innan solupp och släcks X minuter efter solupp och om det är molnigt och solen inte lyser förrän senare på dagen då släcks det efter sensorn. Sedan så tänds lampor X minuter innan solnedgång eller tidigare mha sensor om det blev molnigt. Sedan så vill jag släcka för natten på ett bestämt klockslag.
Igår var det rätt mulet hela dagen, så det blev att lampa var på hela dagen och kvällen, när jag sedan satte lampan till off för natten så satta scenen på lampan igen efter en stund. Jag vet att jag måste hitta ett vettigt lux värde på sensor, men jag ville också säkerställa att scenen är byggd som funktionen jag beskrev annars så försöker jag trimma sensorn på fel sätt.
I'm still learning
I'm still learning
Låter som ett bra sätt, typ en variabel där man sätter vilken tidpunkt som inte scenen skall köras, kanske?jompa68 wrote:Bästa vore att ha en variabel för nattläge, dvs om det är natt så ska inte den delen av skriptet som tänder lampan ej köras fast luxvärdet är i princip 0
Skall man gör en vanligt block scen där man bestämmer vilken tid lampan skall släckas?
Har varit på resa, men tänkte att jag kan bidra med min lösning, som är ja liknande det du antagligen efterfrågar. För att jämföra med jompa68's, så är detta tänkt att hantera mera hur ljust det är och inte när det är natt enligt klockan - jag personligen gillar denna lösning bättre än att bara gå på teoretiskt mörker enligt klocka och kalender. Det är viktigt att komma ihåg att det finns minst lika många lösningar som personer, alla har olika smak.
Jag har i alla fall infört en lösning som håller reda på hur ljust det är ute, och med tre lägen: Ljust / Skymning / Mörkt. I princip räcker detta, men jag är på väg in i en lösning (kan ta några månader) som kommer glida mera mjukt mellan Ljust och Mörkt (dvs flytande "Skymning" om man så vill).
Jag har i princip en scen, som startas av tre sensorer:
Jag har i alla fall infört en lösning som håller reda på hur ljust det är ute, och med tre lägen: Ljust / Skymning / Mörkt. I princip räcker detta, men jag är på väg in i en lösning (kan ta några månader) som kommer glida mera mjukt mellan Ljust och Mörkt (dvs flytande "Skymning" om man så vill).
Jag har i princip en scen, som startas av tre sensorer:
Code: Select all
--[[
%% autostart
%% properties
32 value
41 value
97 value
%% globals
--]]
-- Bara en aktiv instans av denna scen...
if (fibaro:countScenes() > 1) then fibaro:abort() end
-- 32 - Ljussensor arbetsrum
-- 41 - Ljussensor vardagsrum
local Dusk_LUX = tonumber(fibaro:getGlobalValue("LUX_Dusk"))
local Dark_LUX = tonumber(fibaro:getGlobalValue("LUX_Dark"))
-- 97 - Fuktighetssensor terrass, för att ge lite mera ljus när det regnar typ..?
local Extra_LUX = tonumber(fibaro:getValue(97, "value")) * 2
-- Och så låter vi Dusk_LUX (skymning) påverkas med detta värde:
-- Det bör ge extra känslighet när det är regnit eller liknande ute och därmed
-- ge ljus lite tidigare helt enkelt...? Let's try at least :-)
Dusk_LUX = Dusk_LUX + Extra_LUX
--fibaro:debug("Dusk_LUX : "..Dusk_LUX)
--fibaro:debug("Vardagsrum :"..fibaro:getValue(41, "value"))
--fibaro:debug("Arbetsrum :"..fibaro:getValue(32, "value"))
-- Grundprincip:
-- Om mörkare än Dark_LUX så är det mörkt
-- Om ljusare än Dusk_LUX så är det ljust
-- Om mörkare än Dusk_LUX, men ljusare än Dark_LUX, så är det skymning - dvs mitt imellan mörkt och ljust
if (
tonumber(fibaro:getValue(32, "value")) < Dark_LUX and
tonumber(fibaro:getValue(41, "value")) < Dark_LUX
)
then
if ( fibaro:getGlobalValue("Dagsljus") ~= "Mörkt" )
then
fibaro:setGlobal("Dagsljus", "Mörkt")
-- fibaro:debug("Nu vart det Mörkt!")
end
elseif (
tonumber(fibaro:getValue(32, "value")) < Dusk_LUX and
tonumber(fibaro:getValue(41, "value")) < Dusk_LUX
)
then
if ( fibaro:getGlobalValue("Dagsljus") ~= "Skymning" )
then
fibaro:setGlobal("Dagsljus", "Skymning")
-- fibaro:debug("Nu vart det Skymning!")
end
elseif (
tonumber(fibaro:getValue(32, "value")) > Dusk_LUX and
tonumber(fibaro:getValue(41, "value")) > Dusk_LUX
) or (
-- Försöka hantera när det blir väldigt ljust bara i vardagsrummet, men inte i arbetsrummet...
( tonumber(fibaro:getValue(32, "value")) + tonumber(fibaro:getValue(41, "value")) ) > Dusk_LUX*3
)
then
if ( fibaro:getGlobalValue("Dagsljus") ~= "Ljust" )
then
fibaro:setGlobal("Dagsljus", "Ljust")
-- fibaro:debug("Nu vart det Ljust!")
end
end
Kör Home Assistant efter totalt nederlag för HomeSeer
Hej Jonny.
Vet inte om det är jag som satt fel värde på lux men det känns som att scenen inte vill ex. tända lampan tillräckligt tidigt vissa eftermiddagar/kvällar och ibland när jag tycker att lampan borde vara tänd på kvällen så är den släckt och om jag tänder den manuellt på kvällen så släcks den igen. Sedan har en helt annan lampa som inte var med i scenen påverkats precis som systemet blandat ihop enheter.
Finns det möjlighet att skriva koden där jag har möjligen att påverka när lampan skall vara släckt resp tänd och exempelvis ha en variabel där lampan skall vara släckt för natten?
Lampor som jag vill styra vill jag ha möjlighet att ha helt släckta på natten fram till morgonen till solen går upp och för att släckas x antal min efter det att solen gått upp, sedan åter tändas x minuter innan solen går ner för att sedan släckas för natten. Och där lux sensorn har möjligheten att förlänga tiden då lampan släck på morgonen och tidigarelägga tändningen på kvällen.
Vet inte om det är jag som satt fel värde på lux men det känns som att scenen inte vill ex. tända lampan tillräckligt tidigt vissa eftermiddagar/kvällar och ibland när jag tycker att lampan borde vara tänd på kvällen så är den släckt och om jag tänder den manuellt på kvällen så släcks den igen. Sedan har en helt annan lampa som inte var med i scenen påverkats precis som systemet blandat ihop enheter.
Finns det möjlighet att skriva koden där jag har möjligen att påverka när lampan skall vara släckt resp tänd och exempelvis ha en variabel där lampan skall vara släckt för natten?
Lampor som jag vill styra vill jag ha möjlighet att ha helt släckta på natten fram till morgonen till solen går upp och för att släckas x antal min efter det att solen gått upp, sedan åter tändas x minuter innan solen går ner för att sedan släckas för natten. Och där lux sensorn har möjligheten att förlänga tiden då lampan släck på morgonen och tidigarelägga tändningen på kvällen.