Aller au contenu

Messages recommandés

Posté(e)

Pourtant j'ai fait des recherches sur repeat quelques fois et je n'étais pas tombe dessus. A la réflexion c'est pcq c'est dans un autre post que celui-ci.

C'est aussi ici : http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/?p=23765 soit dans le même topic :) Je comprends pas que tu n'ailles pas repéré cela, dans les 2 ou 3 posts présent dans ce topic, c'est vraiment de la mauvaise volonté de ta  part, je suis déçu... ok,  :98:

 

@ SebDel

Effectivement, en modifiant à  la volé le checkEvery, les durées annoncées ne seraient plus correcte car une durée est le nombre de run * le checkEvery, je ne stock aucune heure car cela n'est pas utile. Par contre, si dans ton cas tu as vraiment besoin de donner un coup de boost tu peux toujours le faire mais une action déclenchée immédiatement ne pourra pas changer le checkEvery des autres actions vu que chaque action immédiate tourne dans leur propre instance de GEA.

 

OK : GEA.add(..., 30, "", {{"Function", function() GEA.checkEvery = 5 end}})

Ne sert à  rien :   GEA.add(..., -1, "", {{"Function", function() GEA.checkEvery = 5 end}})

Posté(e)

Oui de la mauvaise volonté, je commence à  y croire ;-)

 

concernant ce post:

 

http://www.domotique-fibaro.fr/index.php/topic/1211-support-gea/page-41#entry26743

 
Je n'ai pas besoin d'une longue réponse, mais y a t'il moyen de faire entrer des conditions de durée dans un if ?
 
style, vérifier la variable globale "Phone_Seb_Present"  dès qu'elle passe à  "1"  et allumer une prise, mais seulement si la variable "PresentState" = "at_home" mais qu'elle à  été à  "away" pendant au moins 1H
 
Avec les groupes ça semblait possible, mais il semble que ça aie été abandonné ? et je n'y suis pas arrivé non plus...
 
Merci encore pour ton temps ;-)
Posté(e)

Merci Steven, je vais essayé de déclencher un "boost" comme tu me l'a indiqué pour les actions nécessitant des réveils rapides.

Posté(e)

 

style, vérifier la variable globale "Phone_Seb_Present"  dès qu'elle passe à  "1"  et allumer une prise, mais seulement si la variable "PresentState" = "at_home" mais qu'elle à  été à  "away" pendant au moins 1H

 

 

Hummm, cela devrait fonctionner avec un code comme celui-ci :

-- Si soudainement Seb est présent et que la variable est "at_home", on allume la lumière
local sebathome = GEA.add({"Global", "Phone_Seb_Present", "1"}, -1, "", {{"turnOn", <id prise>}, {"If", {{"Global", "PresentState", "at_home"}}}})

-- Si la variable n'est pas "away" on stop la condition ci-dessus"
GEA.add({"Global!", "PresentState", "away"}, 30, "", {{"StopTask", sebathome}})
-- Si la variable est à  "away" depuis 1 heure on active la commande ci-dessus
GEA.add({"Global", "PresentState", "away"}, 1*60*60, "", {{"RestartTask", sebathome}})
Posté(e)

Voici deux icônes de plus pour GEA.

 

 

Quand on commence à  avoir beaucoup de commandes GEA, le mode debug devient difficile à  lire tellement il y a de lignes qui défilent.J'ai donc créé une instance rien que pour faire mes tests.

post-826-0-37915000-1411848343_thumb.png

Et comme j'ai quelques schedules, dont certains à  1 minute, j'ai également créé une instance GEA pour concentrer mes schedules et ainsi rendre plus concis et lisible mes "vrais" événements.

post-826-0-14598800-1411848360_thumb.png
 

Voici deux icônes pour les "ceusque" que ça intéresserait ;-)

 

ce sont des .png transparents, téléchargez les via les liens ci-dessous

post-826-0-37915000-1411848343_thumb.png

post-826-0-14598800-1411848360_thumb.png

Posté(e)

Question sur l'utilisation des conditions :

local test_circuit= {"If",{{"Value", 98, 1},{"Value", 100, 1},{"Value", 101, 1},{"Value", 103, 1},{"Value", 104, 1},{"Value", 106, 1},{"Value", 107, 1}}}
GEA.add(110, -1, "Allumage circulateur chauffage au sol", {test_circuit})

En fait je voudrais juste tester qu'un des circuits est en demande. Sachant que chaque des 7 circuits est en fait FGS qui contrôle une vanne HEIMEIER. Est ce bien comme ça qu'on test si un FGS est en route ?

 

Autre question, est il possible de savoir si une tête Danfoss est ouverte ?

Posté(e)

Si tu veux savoir si un des circuits est ouvert, tu dois créer 7 lignes différentes. Le code que tu indique ne sera valable que lorsque les 7 seront allumé en même temps.

Pour le Danfoss, je ne sait pas, d'ailleurs je cherche le code pour envoyé une consigne de température sur un thermostat.

Posté(e)

@Nico , je lis avec attention ce post car tu es entrain de mettre en place la gestion que je comptais faire pour mon chauffage central pour cet hiver

Posté(e)

Justement Steven, je sais làc'est un "et" qui est fait. Et je cherchai un moyen de faire un "ou" dans GEA. Une idée ?

Ou alors je fais 7 tests dans 7 lignes et je garde cela pour couper le circulateur, car làc'est bien un "et" que je veux.

Posté(e)

Bon j'ai testé ça :

	--Gestion circulateur chauffage au sol
  	local test_circuit_bureau= {"If",{{"Value", 98, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_bureau})
  	local test_circuit_salle_eau= {"If",{{"Value", 100, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_salle_eau})
	local test_circuit_couloir= {"If",{{"Value", 101, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_couloir})
	local test_circuit_SDB= {"If",{{"Value", 103, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_SDB})
	local test_circuit_dressing= {"If",{{"Value", 104, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_dressing})
	local test_circuit_chambre_ami= {"If",{{"Value", 106, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_chambre_ami})
	local test_circuit_salon_cuisine= {"If",{{"Value", 107, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_salon_cuisine})
	local couper_circuit= {"If",{{"Value", 98, 0},{"Value", 100, 0},{"Value", 101, 0},{"Value", 103, 0},{"Value", 104, 0},{"Value", 106, 0},{"Value", 107, 0}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {{couper_circuit},{"turnOff"}})
	

Mais là  cela plante carrément... Erreur ligne 1187 sur :

msg = msg .. entry[GEA.keys["PARAMS"]][i][j] .. ","

Pourtant quand je ne mets que les premiers tests, pas de plantage.

 

Et l'erreur vient quand je rajoute :

local couper_circuit= {"If",{{"Value", 98, 0},{"Value", 100, 0},{"Value", 101, 0},{"Value", 103, 0},{"Value", 104, 0},{"Value", 106, 0},{"Value", 107, 0}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {{couper_circuit},{"turnOff"}})
	

Et du coup si le retire, GEA se lance, mais cela ne fait rien. Ma syntaxe est ok ?

Posté(e)

Bon erreur de plantage trouvé, mes accolades étaient mal placées. Par contre le circulateur ne veut pas se lancer... :

	--Gestion circulateur chauffage au sol
  	local test_circuit_bureau= {"If",{{"Value", 98, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_bureau,{"turnOn"}})
  	local test_circuit_salle_eau= {"If",{{"Value", 100, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_salle_eau,{"turnOn"}})
	local test_circuit_couloir= {"If",{{"Value", 101, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_couloir,{"turnOn"}})
	local test_circuit_SDB= {"If",{{"Value", 103, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_SDB,{"turnOn"}})
	local test_circuit_dressing= {"If",{{"Value", 104, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_dressing,{"turnOn"}})
	local test_circuit_chambre_ami= {"If",{{"Value", 106, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_chambre_ami,{"turnOn"}})
	local test_circuit_salon_cuisine= {"If",{{"Value", 107, 1}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {test_circuit_salon_cuisine,{"turnOn"}})
  	local couper_circuit= {"If",{{"Value", 98, 0},{"Value", 100, 0},{"Value", 101, 0},{"Value", 103, 0},{"Value", 104, 0},{"Value", 106, 0},{"Value", 107, 0}}}
	GEA.add(id["CIRCULATEUR_CF_SOL"], 1*60, "Allumage circulateur chauffage au sol", {couper_circuit,{"turnOff"}})

Pourtant cette fois cela m'àl'air ok...

Posté(e)

Pour les danfoss, on ne peut jouer que sur la température de consigne de la box vers la vanne ou de la vanne vers la box. Mis àpart l'état des piles, rien d'autre n'est remonté vers la box.

Posté(e)

Hansolo :

-Une idée du bug que j'ai juste au dessus de ton poste ? Cela ne veut pas lancer le circulateur...

-Pour la partie Danfoss ok, aucune remonté. Par contre il y a peut être un moyen de détecter que le panneau de chauffage est en demande ?

Posté(e)

Essaye:

GEA.add(true, 1*60, "Allumage circulateur chauffage au sol", {test_circuit_salon_cuisine,{"turnOn",id["CIRCULATEUR_CF_SOL"]}})

à‡a ne me parait pas logique d'utiliser le fait que le circulateur soit en route depuis 1 m comme déclencheur (le

 id["CIRCULATEUR_CF_SOL"], 1*60 

) pour allumer ce même déclencheur

×
×
  • Créer...