Hej Har nyss hitta in i den underbart förtvivlade världen av GEA för att för ordning på min ljusautomation
men inser att jag någonstans i logiken smyger in något fel
för att förklara i text:
har två utomhus röelsesensorer och 2 lux detektorer
en global variabel som styr 'Solen' för att säkerställa att inte lux detektorerna ställer till med spratt när det blir mörkt mitt på dagen eller om skymning/gryning sker för tidigt och sent
Uppskattar verkligen om någon vänlig själv kan peka mig mer i rätt riktning och vad jag gör för fel.
)
Vänliga hälsningar!
Daniel
Ps. vill senare lägga till en variabel 'Vakna' som ska styra om vi under sen kväll har båda tv apparaterna avslagna innerbelysnngen och de Vrum PIR och HallPIR är stilla och då starta 'solen' = Natt och släcka utebelysningen
PPS. kan även tillägga att Poolbelysningen försöker styras så att den bara är tänd på Sommaren
PPs. Har hört att det ska finnas någon nyare version av GEA men kan inte hitta den
--[[
%% autostart
%% properties
8 value
9 value
33 value
79 value
89 value
91 value
98 value
158 value
167 value
169 value
170 value
172 value
187 value
222 value
224 value
%% globals
Solen
Vakna
--]]
-- v 5.42
-- ==================================================
-- GEA : Gestionnaire d'Evénements Automatique
-- ==================================================
-- [FR] Scénario permettant de contrôler si un périphérique est
-- activé depuis trop longtemps ou lancer un push d'avertissement.
-- Ce scénario permet une annotation plus simple que le code LUA
-- il nécessite néanmoins quelques connaissances.
--
-- [EN] This scene allow you to check every X second the status
-- of a module and send actions if the module is activated since too long.
-- This scene allow you a more simple annotation than LUA
-- it requires some knowledge
--
-- Auteur : Steven P. with modifications of Hansolo and Shyrka973
-- Version : 5.42
-- Special Thanks to :
-- jompa68, Fredric, Diuck, Domodial, moicphil, lolomail, byackee,
-- JossAlf, Did, sebcbien, chris6783, tibahut and all other guy from Domotique-fibaro.fr
-- ------------------------------------------------------------
-- Historique / History
-- ------------------------------------------------------------
-- L'historique complet est diponible ici / the full history is available here :
--
http://www.domotique-fibaro.fr/index.ph ... e/?p=12428
local id = {
--Framsidan
FramsidanLUX = 224 , EntreLampa = 25 , FramsidePIR = 222 , UppfartenLampa = 302 , GangLampa = 31 , Siren = 228 ,
-- Baksidan
BaksidanLUX = 172 , AltanLampa = 19 , PoolLampa = 39 , BaksidanPIR = 170 ,
--Vardagsrum
VardagsrumPIR = 98 , TV = 187 , VrumLampa = 306 , SoffbordLampa = 5 , FonsterLampa = 158 , Luftvarmepump = 28 ,
--KÖK
MatbordLampa = 211 , DiskbankLampa = 213 ,
--Tvättstuga
TvattstugaLampa = 29 , TvattstugaPIR = 89 , TvattstugaLUX = 91 ,
--Hall
HallLampa = 44 , HallPIR = 79 , SovrumsBrandlarm = 9 , KoksBrandlarm = 8 ,
--Sovrum 1 - vuxna
Sovrum1Lampa = 208 ,
--Sovrum 2 Barn
Sovrum2Lampa = 197 ,
--Badrum
--Krypgrund
KrypgrundLampa = 209 ,
--Garage
GaragePIR = 165 , GarageLUX = 167 , Garageport = 158 , GarageLampa = 301 , GarageBrandlarm = 33 ,
--Pumprum
PumprumTemp = 41 ,
}
-- Paramétrage de GEA / GEA configuration
function config()
GEA.isVersionFour = true -- On est en version 4.017 Beta ou supérieure /
GEA.language = "EN" -- Votre langue : FR (default) / Your language : EN
GEA.checkEvery = 30 -- On vérifie toutes les X secondes (default : 30) / Check every X seconds
GEA.portables = {179} -- Liste des portables devant recevoir une notification {70, 71} / Smartphones you want to be notified
GEA.debug = false -- Affichage des traces dans la console (default : false) / Show trace in the debug window
-- GEA.getGlobalForActivation = {"SuspendreGEA", "non"} -- active ou désactive l'exécution de GEA via une variable globale / active or deactive GEA execution with a global variable
-- GEA.catchError = false
GEA.optimize = GEA.typeOptimize["IMMEDIATE_ONLY"]
-- option : GEA.typeOptimize["NONE"], GEA.typeOptimize["IMMEDIATE_ONLY"], GEA.typeOptimize["ALL"]
-- permet d'optimiser les soucis liés au getName et getRoom de fibaro mais n'affiche plus le nom des modules concernés.
end
-- Ajouter ici les événements à exécuter / Add here events to schedule
-- Une liste d'exemples est disponible dans un fichier annexe samples.lua / A samples list is available in another file called samples.lua
function setEvents()
--Outdoor Lightning
-- get variable Sun='Solen' through the day using timers to avoid LUX meters to activete the light on inproper times
GEA.add(true, 30, "", {
{"Time", "05:00", "05:02"},
{"Global", "Solen", "Gryning"}
}
)
GEA.add(true, 30, "", {
{"Time", "09:00", "09:02"}, {"Global", "Solen", "Dag"}, {"Global", "Pool", "Släck"}
}
)
GEA.add(true, 30, "", {
{"Time", "14:00", "14:02"}, {"Global", "Solen", "Eftermiddag"}
}
)
GEA.add(true, 30, "", {
{"Time", "22:00", "22:02"}, {"Global", "Solen", "Sen kväll"}
}
)
-- Control Variable 'Sun' (Solen)with LUX meeters morning and afternoon
GEA.add(id["FramsidanLUX"], -1, "", {
{"If" ,{
{"Value+", id["FramsidanLUX"], 150}
}
},
{"IF", {
{"Global", "Solen", "Gryning"}
}
},
{"Global", "Pool", "Släck"},
{"turnOFF", id["EntreLampa"]},
{"turnOff", id["UppfartenLampa"]},
{"turnOff", id["GangLampa"]},
{"turnOff", id["AltanLampa"]},
{"turnOff", id["PoolLampa"]},
{"Global", "Solen", "Dag"}
}
)
GEA.add(id["BaksidanLUX"], -1, "", {{"If" ,{{"Value+", id["BaksidanLUX"], 150}}}, {"IF", {{"Global", "Solen", "Gryning"}}}, {"Global", "Pool", "Släck"},{"turnOFF", id["EntreLampa"]}, {"turnOff", id["UppfartenLampa"]}, {"turnOff", id["GangLampa"]}, {"turnOff", id["AltanLampa"]},{"turnOff", id["PoolLampa"]}, {"Global", "Solen", "Dag"}})
GEA.add(id["FramsidanLUX"], -1, "", {{"If" ,{{"Value-", id["FramsidanLUX"], 25}}}, {"IF", {{"Global", "Solen", "Eftermiddag"}}}, {"Global", "Pool", "Tänd"},{"turnOn", id["EntreLampa"]}, {"turnOn", id["UppfartenLampa"]}, {"turnOn", id["GangLampa"]}, {"turnOn", id["AltanLampa"]}})
GEA.add(id["BaksidanLUX"], -1, "", {{"If" ,{{"Value-", id["BaksidanLUX"], 25}}}, {"IF", {{"Global", "Solen", "Eftermiddag"}}}, {"Global", "Pool", "Tänd"}, {"turnOn", id["EntreLampa"]}, {"turnOn", id["UppfartenLampa"]}, {"turnOn", id["GangLampa"]}, {"turnOn", id["AltanLampa"]}})
--Turn on Lights at Sunset
GEA.add(true, 30, "", {
{"Time", "Sunset+15", "Sunset+20"},
{"Global", "Solen", "Kväll"},
{"Global", "Pool", "Tänd"},
{"turnOn", id["EntreLampa"]},
{"turnOn", id["UppfartenLampa"]},
{"turnOn", id["GangLampa"]},
{"turnOn", id["AltanLampa"]}
}
)
--Turn of Lights at 22.00 if no motion indoors and lights/TV is turned of (Varable 'Vakna'=awake
GEA.add(true, 30, "", {
{"If",
{ "Global", "Vakna", "Stilla"}, {
{ "Time", "22:00", "22:02"},
{"Global", "Solen", "Natt"},
{"Global", "Pool", "Släck"},
{"turnOFF", id["EntreLampa"]},
{"turnOff", id["UppfartenLampa"]},
{"turnOff", id["GangLampa"]},
{"turnOff", id["AltanLampa"]},
{"turnOff", id["PoolLampa"]},
{"Global", "Solen", "Natt"}
}
}
}
)
-- Turn of outdoor light if they are on during wrong hours
GEA.add(true, 15*60, "", {{"If", { "Global", "Solen", "Dag"}, {"Global", "Pool", "Släck"}, {"turnOFF", id["EntreLampa"]}, {"turnOff", id["UppfartenLampa"]}, {"turnOff", id["GangLampa"]}, {"turnOff", id["AltanLampa"]},{"turnOff", id["PoolLampa"]}}})
GEA.add(true, 15*60, "", {{"If", { "Global", "Solen", "Eftermiddag"}, {"Global", "Pool", "Släck"}, {"turnOFF", id["EntreLampa"]}, {"turnOff", id["UppfartenLampa"]}, {"turnOff", id["GangLampa"]}, {"turnOff", id["AltanLampa"]},{"turnOff", id["PoolLampa"]}}})
GEA.add(true, 30*60, "", {{"If", { "Global", "Solen", "Natt"}, {"Global", "Pool", "Släck"}, {"turnOFF", id["EntreLampa"]}, {"turnOff", id["UppfartenLampa"]}, {"turnOff", id["GangLampa"]}, {"turnOff", id["AltanLampa"]},{"turnOff", id["PoolLampa"]}}})
--Turn on outdoor lights weekdays at wake up time
GEA.add(true, 30, "", {{"If", {"Global", "Solen", "Gryning"}, {{"Time", "05:45", "05:47"}, {"Days", "Weekday"}, {"turnOn", id["EntreLampa"]}, {"turnOn", id["UppfartenLampa"]}, {"turnOn", id["GangLampa"]}}}})
--Turn on outdoor lights on front side of the house PIR dependent during the night and turn of 5 min later
GEA.add(id["FramsidePIR"], -1, "", {{"If",{{"Global", "Solen", "Natt"}}}, {"turnOn", id["EntreLampa"]}, {"turnOn", id["UppfartenLampa"]},{"turnOn", id["GangLampa"]}})
GEA.add(id["FramsidePIR"], 5*60, "", {{"If",{{"Global", "Solen", "Natt"}}}, {"turnOff", id["EntreLampa"]}, {"turnOff", id["UppfartenLampa"]}, {"turnOff", id["GangLampa"]}})
--Turn on outdoor lights on rear side of the house PIR dependent during the night and turn of 5 min later
GEA.add(id["BaksidanPIR"], -1, "", {{"If",{{"Global", "Solen", "Natt"}}}, {"turnOn", id["AltanLampa"]}, {"turnOn", id["GangLampa"]}})
-- something wrong here ** GEA.add(id["BaksidanPIR"], 5*60, "", {{"Inverse"}, {{"If",{"Global", "Solen", "Natt"}, {"turnOff", id["AltanLampa"]}, {"turnOff", id["GangLampa"]}}})
--Lights Garage
--Turn on Lights if movement in the Garage ??How do i add the two Garagedoors??
GEA.add(id["GaragePIR"], -1, "", {"turnOn", id["GarageLampa"]})
GEA.add(id["GaragePIR"], 5*60, "", {{"Inverse"}, {"Time", "23:00", "Sunrise"}, {"turnOff", id["GarageLampa"]}})
--Lights rear entrece
-- is the room already bright?
GEA.add(id["TvattstugaLUX"], -1, "", {{"If" ,{{"Value-", id["TvattstugaLUX"], 50}}}, {"Global", "tvattljus", "Mork"}})
GEA.add(id["TvattstugaLUX"], 1*60, "", {{"If" ,{{"Value+", id["TvattstugaLUX"], 75}}}, {"Global", "tvattljus", "Ljus"}})
-- if the room is dark and there is movement turn on the lights for 5 min
GEA.add(id["TvattstugaPIR"], -1, "", {{"If",{{"Global", "tvattljus", "Mork"}}, {"turnOn", id["TvattstugaLampa"]}}})
GEA.add(id["TvattstugaPIR"], 5*60, "", {{"Inverse"}, {"turnOff", id["TvattstugaLampa"]}})end