Aller au contenu

Messages recommandés

Posté(e)

je re viens sur un nouveau sujet lol  :)

 

je souhaite transformer en GEA les scènes LUA ci dessous.

j'ai une alarme Visonic, lorsque celle ci déclenche la sirene en cas d'intrusion, une scene s'execute. 

j'ai une sortie PGM sur laquelle je récupère le statut de l'alarme (mon fameux 0/1 activation/desactivation alarme) et une sortie 12v sur laquelle j'ai un relais puis un module universel fibaro fgbs001

 

ID 53 pour la sortie de la sirene (avec la particularité que si la sirene SONNE = 0, la sirene est au repos =1)

ID 54 pour le statut (avec la particularité, alarme activée =0, désactivée =1)

ID 76 dimmer SAM

ID 88 dimmer escalier

ID 17/19 Ecl SAM

ID 43  Projecteur Jardin

ID 78 Ecl WC

ID 10,12,66,68  Volets roulants et battants

 

scène SIRàˆNE ON

--[[
%% autostart
%% properties
53 value
54 value
%% globals
--]]
local startSource = fibaro:getSourceTrigger();
if ( ( tonumber(fibaro:getValue(53, "value")) == 0  and  tonumber(fibaro:getValue(54, "value")) == 0 )
or
startSource["type"] == "other")
then
fibaro:call(76, "turnOn");
fibaro:call(88, "turnOn");
fibaro:call(17, "turnOn");
fibaro:call(19, "turnOn");
fibaro:call(78, "turnOn");
fibaro:call(43, "turnOn");
fibaro:call(10, "close");
fibaro:call(12, "close");
fibaro:call(66, "close");
fibaro:call(68, "close");
end

Scène SIRàˆNE OFF

--[[
%% autostart
%% properties
53 value
54 value
%% globals
--]]
local startSource = fibaro:getSourceTrigger();
if ( ( tonumber(fibaro:getValue(53, "value")) > 0  and  tonumber(fibaro:getValue(54, "value")) > 0 )
or
startSource["type"] == "other")
then
fibaro:call(43, "turnOff");
end
 
Posté(e)

Salut,

 

A essayer, en adaptant les noms dans les ID

local id = {
        -- Alarme Visionic
        SIRENE = 53 , ALARME = 54 ,
        -- Eclairages
        DIM_SAM = 76 , DIM_ESC = 88 , ECL_SAM = 17 , ECL_SAM1 = 19 , ECL_JARDIN = 43 , ECL_WC = 78,
        -- Volets Roulants
        VR_SALON = 10 , VR_CUISINE = 12 , VR_ENTREE = 66 , VR_BUREAU = 68
        }
        
-- Quand la Sirene s'active si alarme activée, alors on allume tout et on ferme les volets
-- Mettre 53 dans l'entete
GEA.add({{"Value",id["SIRENE"],0},{"Value",id["ALARME"],0}}, -1 , "" , {{"turnOn", id["DIM_SAM"]},{"turnOn", id["DIM_ESC"]},{"turnOn", id["ECL_SAM"]},{"turnOn", id["ECL_SAM1"]},{"Close",id["VR_SALON"],100},{"Close",id["VR_CUISINE"],100},{"Close",id["VR_ENTREE"],100},{"Close",id["VR_BUREAU"],100}})
        
        
-- Quand la sirène s'arrète, si l'alarme est desactivée alors arret eclairage jardin
-- Mettre 53 dans entete
GEA.add({{"Value+",id["SIRENE"],0},{"Value+",id["ALARME"],0}}, -1 , "" , {{"turnOff", id["ECL_JARDIN"]}})

EDIT: dans l'absolu quand ta sirene sonne c'est que l'alarme est active donc la première condition pourrait être:

GEA.add(id["SIRENE"], -1 , "" , {{"Inverse"},{"turnOn", id["DIM_SAM"]},{"turnOn", id["DIM_ESC"]},{"turnOn", id["ECL_SAM"]},{"turnOn", id["ECL_SAM1"]},{"Close",id["VR_SALON"],100},{"Close",id["VR_CUISINE"],100},{"Close",id["VR_ENTREE"],100},{"Close",id["VR_BUREAU"],100}})

Nicolas

Posté(e) (modifié)

Ok, Nico

comment ca fonctionne

le value+ veut dire "si valeur > à  0  ? et donc value seul veut dire "=" à  0 dans notre cas

car lorsque la sirene ne sonne pas sa valeur est à  1 et lorsque l'alarme est en statut "OFF" la valeur est à  1 également

 

je ne suis pas obligé de rappeler les "VR " pour les volets si dans mon script GEA, plus haut, je déclare les local  ID VR ?

Modifié par flamalex
Posté(e)

Pour le ID pas besoin de les déclarer de nouveau si elles sont présentes. Je pars du principe que rien n'existe.

 

Pour les explications j'ai mis des commentaires

({{"Value",id["SIRENE"],0},{"Value",id["ALARME"],0}}, -1

Déclenchement Si la sirene est à  0 (donc elle sonne) ET l'alarme est active. Si tu n'as pas les 2 conditions, pas de déclenchement

 

Oui Value+ veut dire "Si valeur supérieure à "

 

Nicolas

Posté(e)

Nico, tu fais bien de partir du principe que rien n'existe, comme ça je comprends mieux, c'est super Merci  :13:

 

Pepite,  :P  j'avais oublié que je me ferai rappeler à  l'ordre  :D

mise à  part la "notice" GEA, je n'ai pas trouvé (ou suffisamment cherché) le support GEA  :)

 

j'avoue faire des recherches GEA sur Google, mais bcp de forum Allemand anglais, et pratiquement rien, concernant mes besoins, en français.

 

EDIT:

il me reste à  faire des tests, mais comment ne pas faire "péter" les décibels 

 

EDIT2:

si les "local ID" sont plus bas dans le script GEA, dois je les appeler plus haut (ou les supprimer plus bas)?

Posté(e)

Prends l'habitude de mettre tes local id en haut du code, tu pourras comme cela les appeler sans t'en soucier

 

Pour faire les tests, ta sirene peut-elle flasher et non sonner ?

Posté(e)

sirene intérieur c'est bon

extérieur, tu peux retirer flash mais pas sonnerie

je vais regarder cela.

sinon "par programme" je peux "simuler"  les ID 53 et 54 0/1???

Posté(e)

au pire pour des essais tu remplaces 53 et 54 par des id d'éclairages, en prenant soin de retirer ces eclairages des actions ;)

×
×
  • Créer...