Aller au contenu

Recommended Posts

le principe de GEA est de faire une action une fois quand la ou les conditions sont atteintes (principe de feignasse Hein @Steven). Si la condition n'est plus vrai, GEA se déclenchera a nouveau la prochaine fois que la condition est vrai.

 

Dans l'exemple donné par @971jmd GEA va envoyer un ordre d'allumage à  chaque changement de consommation si la conso >4 et envoyer un ordre d'extinction à  chaque changement de consommation si la conso <5.

 

Le repeat n'est pas utile, de plus je préconise de gérer l'extinction en différé sinon ça risque de s'allumer et s'éteindre souvent

Partager ce message


Lien à poster
Partager sur d’autres sites

@Hansolo

 

que veux tu dire par : plus je préconise de gérer l'extinction en différé sinon ça risque de s'allumer et s'éteindre souvent

Partager ce message


Lien à poster
Partager sur d’autres sites

comme nous somme dans les conso

 

j'ai un souci avec les module FGS221 qui ne dispose pas de relever de conso 

 

si allume chambre et que la consommation dépasse 1 alors notification ampoule ok

mai si mon ampoule est hs ça ne fonctionne pas 

GEA.add({{"Value", id["LAMPE_CHAMBRE"], 1}, {"power+", id["LAMPE_CHAMBRE"], 1}}, -1, "ampoule ok")

  
GEA.add({{"Value", id["LAMPE_CHAMBRE"], 1}, {"power+", id["LAMPE_CHAMBRE"], 1}}, -1, "ampoule HS")

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour messieurs,

attention avec la consommation, pour l'instantané ce n'est pas value dans l'entete, plutôt Power ;-)

 

@971jmd : cequi parait normal que cela ne fonctionne pas, aucune condition de remplie, ni lampe allumée, ni conso superieure à  1 puisque ampoule HS ;-)

 

Modifie tes conditions : plutot lampe eteinte et conso < 1

 

A tester evidemment ;-)

GEA.add({{"Value", id["LAMPE_CHAMBRE"], 0}, {"power-", id["LAMPE_CHAMBRE"], 1}}, -1, "ampoule HS")

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour !

 

Nouvelle scène....nouveau problème  :rolleyes:

 

Je cherche à  allumer la lumière du salon si le capteur de la porte d'entrée = en alerte ET la variable "Jour_Nuit" = Nuit ET si variable "Chauffage" = Je_rentre.

-- CAPTEUR_PORTE_ENTRE = 88, LUMIERE = 76


local condition = {"Global", "Jour_Nuit", "Nuit"},{"Global", "Chauffage", "Je_rentre"}

-- Si Capteur porte entrée en alerte & conditions ok alors Lumière salon ON à  40%
GEA.add({88, condition}, -1, "", {{"Value", 76, 40}})

1er essai de nuit : détecteur=en alerte + "Jour_Nuit" = Nuit + "Chauffage"=Je_rentre" >> la lumière s'allume.

2ème essai de nuit : détecteur=en alerte + "Jour_Nuit" = Nuit + "Chauffage"=Je_pars" >> la lumière s'allume aussi !  :o

 

Comment faire pour qu'une action soit exécutée si et seulement si toutes les conditions sont remplies ?

 

J'ai essayé avec "If" mais le résultat est le même :

local condition = {"If", {{"Global", "Jour_Nuit", "Jour"},{"Global", "Chauffage", "Je_rentre"}}}
Modifié par synthetic

Partager ce message


Lien à poster
Partager sur d’autres sites

@ Pepite

merci le "+" j'ai pas fait gafe :60:

Partager ce message


Lien à poster
Partager sur d’autres sites

mai je ne comprend pas quelle que chose

 

pourquoi le 0

normalement value 0=off  et   1=on 

 

Dans la configure actuelle c'est quand j'éteint, que la notification "ampoule HS"  est envoyer 

et si je met 1 donc quand j’allume la notification ne fonctionne pas 

 

 GEA.add({{"Value", id["LAMPE_CHAMBRE_AMELIA"], 0}, {"power-", id["LAMPE_CHAMBRE_AMELIA"], 1}}, -1, "ampoule HS")

Partager ce message


Lien à poster
Partager sur d’autres sites

haaaaaaaaa je viens de comprend dans notre exemple nous somme en condition si off et si conso moins de 1w  =  ampoule HS

 

fallait que je le su pour devinasse  :D 

Partager ce message


Lien à poster
Partager sur d’autres sites

synthetic

 a tu déclarer ton capteur dans l’entête 

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui, l'erreur vient sûrement de ma syntaxe...

--[[
%% autostart
%% properties
88 value
76 value
%% globals
Chauffage
Jour_Nuit
--]]

Partager ce message


Lien à poster
Partager sur d’autres sites

essaye 

 

sir global jours= jour  et global chauffage = je rentre et value du capteur à  = 1

   GEA.add({{"Global", "Jour_Nuit", "Jour"}, {"Global", "Chauffage", "Je_rentre"}, {"Value", 88, 1}, -1.....
Modifié par 971jmd

Partager ce message


Lien à poster
Partager sur d’autres sites

Avec cette ligne :

GEA.add({{"Global", "Jour_Nuit", "Jour"}, {"Global", "Chauffage", "Je_rentre"}, {"Value", 88, 1}}, -1, "", {{"Value", 76, 40}}) 

J'obtiens ça dans le debug :

[DEBUG] 17:57:09: GEA Version 5.31 : en exécution...
[DEBUG] 17:57:09: En cours : aucun traitement a effectuer pour l'ID:88

Partager ce message


Lien à poster
Partager sur d’autres sites

essaye : .... {"Value", 88, 0} ....

Partager ce message


Lien à poster
Partager sur d’autres sites

@971jmd et @Hansolo

 

J'ai retiré l'id 88 en entête.

Essai avec {"Value", 88, 0} et {"Value", 88, 1}

Nouvel essai, en mettant l'id 88 à  la place de 76 dans l'entête (l'id 88 étant mon capteur de l'entrée...c'est donc lui le déclencheur, non?)

 

Ma lampe ne s'allume toujours pas.

  1. [DEBUG] 17:57:09: En cours : aucun traitement a effectuer pour l'ID:88 >>> l'id ne devrait pas être celui de ma lampe (76) car c'est elle qui est en option ?
Modifié par synthetic

Partager ce message


Lien à poster
Partager sur d’autres sites


--[[

%% autostart

%% properties

88 value

%% globals

--]]

GEA.add({{"Global", "Jour_Nuit", "Jour"}, {"Global", "Chauffage", "Je_rentre"}, {"Value", 88, 0}, -1.....

Modifié par 971jmd

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai déjà  fait cet essai...

La valeur "en alerte" de mon capteur d'ouverture (FGK-101) n'est peut être pas 1 ????

 

 

oups

Alors comme ça, on efface les preuves maintenant  ;)

Modifié par synthetic

Partager ce message


Lien à poster
Partager sur d’autres sites
--[[
%% autostart
%% properties
88 value
%% globals

Jour_Nuit
Chauffage

--]]

GEA.add({{"Global", "Jour_Nuit", "1"}, {"Global", "Chauffage", "1"}}, -1, "ampoule HS")


je viens de réaliser un exemple et ca fonctionne avec les variable déclarer dans l’ entête

Modifié par 971jmd

Partager ce message


Lien à poster
Partager sur d’autres sites

Ma variable "Jour_Nuit" est une variable prédéfinie (valeurs "Jour" ou "Nuit")

Ma variable "Chauffage" est une variable simple qui prend la valeur du bouton actif de mon module virtuel.

Ces 2 variables sont déclarées dans l'entête.

 

Y a t il une syntaxe différente en fonction du type de variable à  récupérer ?

Partager ce message


Lien à poster
Partager sur d’autres sites

j'ai réaliser un nouveau test dans de bonne condition 

 et niket 

--[[
%% autostart
%% properties

%% globals
Jour_Nuit
Chauffage
GEA.add({{"Global", "Jour_Nuit", "200"}, {"Global", "Chauffage", "200"}, {"Value", 314, 1}}, -1, "", {{"turnOn", id["LAMPE_SALON"]}})
 

dans mon exemple : si Jour_Nuit = 200 et  Chauffage= 200 et la porte s'ouvre (capteur value 1) alors allume lampe 

Partager ce message


Lien à poster
Partager sur d’autres sites

 

Bonjour !

 

Nouvelle scène....nouveau problème  :rolleyes:

 

Je cherche à  allumer la lumière du salon si le capteur de la porte d'entrée = en alerte ET la variable "Jour_Nuit" = Nuit ET si variable "Chauffage" = Je_rentre.

-- CAPTEUR_PORTE_ENTRE = 88, LUMIERE = 76


local condition = {"Global", "Jour_Nuit", "Nuit"},{"Global", "Chauffage", "Je_rentre"}

-- Si Capteur porte entrée en alerte & conditions ok alors Lumière salon ON à  40%
GEA.add({88, condition}, -1, "", {{"Value", 76, 40}})

1er essai de nuit : détecteur=en alerte + "Jour_Nuit" = Nuit + "Chauffage"=Je_rentre" >> la lumière s'allume.

2ème essai de nuit : détecteur=en alerte + "Jour_Nuit" = Nuit + "Chauffage"=Je_pars" >> la lumière s'allume aussi !  :o

 

Comment faire pour qu'une action soit exécutée si et seulement si toutes les conditions sont remplies ?

 

 

Lorsque tu écris ta condition, il y a une virgule au milieu et je ne sais pas si ça ne fait pas sauter ta seconde partie d'où le résultat...

 

En lua quand tu déclare plusieurs variable tu écris:

local a,b = "toto","tata"

-- mais si tu écris 
local a = "toto","tata" 
-- la partie "tata" est ignorée. et a = "toto"

Essaie le code complet: ( en remettant 88 value)

GEA.add({88, {"Global", "Jour_Nuit", "Nuit"},{"Global", "Chauffage", "Je_rentre"}}, -1, "", {{"Value", 76, 40}})

Par la suite tu es passé par des déclencheurs en variable global et plus par le ID88 donc tu as eut le message "aucune action à  déclencher..."; tu as enlevé le "88 value", puis tu as fais des modif mais il manquait des accolades....

 

Nicolas

Partager ce message


Lien à poster
Partager sur d’autres sites

@Nicolas,

C'était bien une erreur de syntaxe...avec ton code, ça marche !  :60:

Merci.

 

@971jmd,

Merci également pour ton aide.

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

je revient sur mon probleme avec les module FGS221 

 

le code si-dessous fonction nikel

 GEA.add({{"Value", id["LAMPE_CHAMBRE_AMELIA"], 0}, {"power-", id["LAMPE_CHAMBRE_AMELIA"], 1}}, -1, "ampoule HS")

Mai pas ce dernier  si-dessous

 GEA.add({{"Value", id["LAMPE_CHAMBRE_AMELIA"], 1}, {"power-", id["LAMPE_CHAMBRE_AMELIA"], 1}}, -1, "ampoule HS")

 GEA.add({{"Value", id["LAMPE_CHAMBRE_AMELIA"], 1},....

 

normalement je doit avoir le choix entre :

si lampe ON et si la conso et inférieur a 1 alors notification ampoule HS

ou 

 si lampe OFF et si la conso et inférieur a 1 alors notification ampoule HS

 

normalement value 0=off  et   1=on 

Partager ce message


Lien à poster
Partager sur d’autres sites

@971jmd: Et si tu écris:

GEA.add({{"Value+", id["LAMPE_CHAMBRE_AMELIA"], 0}, {"power-", id["LAMPE_CHAMBRE_AMELIA"], 1}}, -1, "ampoule HS")

Vérifies avec le toolkit que la valeur à  ON est bien 1

 

Nicolas

Partager ce message


Lien à poster
Partager sur d’autres sites

×