Aller au contenu

Recommended Posts

SALUT a tous

voila je m en réfère au pro :13: 

j utilise ce code pour ouvrir mes volets mais je voudrais si j appuie sur l interrupteur que gea ne me ré-enclenche pas le volet

car si je me lève avant l heure de montée des volets et que j ouvre un volet manuellement alors aprés il se referme a 20% car 1ere action gea

local estChome = {"If", {{"Global", "JourChome", "OUI"}}}
	local estTravail = {"If", {{"Global", "JourChome", "NON"}}}
	
	--Ouverture des volets des chambres ET salon semaine 50% ET 100%
GEA.add(true, 1*60, "",{estTravail, {"Time", "07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20},{"Open",id["VOLET_PARENT"],20}, {"Open",id["VOLET_SALON"],20}})
GEA.add(true, 1*60, "",{estTravail, {"Time", "07:15", "07:17"}, {"Open",id["VOLET_EMMA"],50},{"Open",id["VOLET_PARENT"],50}, {"Open",id["VOLET_SALON"],50}})
GEA.add(true, 1*60, "",{estTravail, {"Time", "07:35", "07:36"}, {"Open",id["VOLET_EMMA"],100},{"Open",id["VOLET_PARENT"],100}, {"Open",id["VOLET_SALON"],100}})	 

merci encore

s :74:

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ferais une ligne GEA qui actualise une variable si le volet est ouvert avant 7:10.

Une ligne GEA qui réinitialise la variable après 7:36 (pour que le lendemain tes lignes GEA estTravail soients actives)

 

Et la variable comme condition dans tes 3 lignes GEA.

 

A adapter si tu veux rendre indépendant chaque volet, ne sachant pas si par "interrupteur"  tu parle d'une commande générale des 3 volets ou de la commande inviduelle d'un volet?

Partager ce message


Lien à poster
Partager sur d’autres sites

oui j'ai trouver une solution mai je ne c’est pas comment l’arrêter

local tempo  = {"Function", function() fibaro:sleep(3000) end}
GEA.add({{"value", id["CENTRE_TABLE"], "0"}}, -1 , "",  {{"turnOff", id["CENTRE_TABLE"]}, tempo, {"turnOn", id["CENTRE_TABLE"]}})
GEA.add({{"value", id["CENTRE_TABLE"], "1"}}, -1 , "",  {{"turnOn", id["CENTRE_TABLE"]}, {"turnOff", id["CENTRE_TABLE"]}})
Regarde dans le showroom gea, j'ai posté un exemple avec la lampe de mon garage, je la fais clignotter une fois puis je l'éteins un peu après.

Faire très attention avec les sleep et gea, car toutes les commandes suivantes vont être retardées.

Ne jamais non plus dépasser les 30s en tout sinon ça va aller moins bien...

Sent from my Note4

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut messieurs, le retour entre 2 poses de carreaux de faience ;-)

 

@Flechg,  oui Hansolo a raison en jouant avec une variable ou tu mets en condition la valeur des volets :

GEA.add({"Value+", id["VOLET_EMMA"], 85}, .....)

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité chris6783

Pour le problème des volets qui se referment le matin à20% alors que déjàouvert tu peux éviter une variable juste pour ça en ajoutant une condition àta commande gea qui vérifie que la value courante est inférieure à20%. Le soir je fais le même type de validation pour la fermeture pour ne pas rouvrir un volet déjàplus bas que la nouvelle consigne gea

Envoyé de mon SM-G850F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir,

 

 

Comment feriez vous pour gérer des Boutons poussoirs qui actionne des scénes avec gea ? (pour gérer l'impulsionnel quoi...)

Je précise que cela ne marche pas : 

GEA.add(SCENARIO1, -1, "Lancement Scénario TV", {{"Program", id["RGB"], 1},{"turnOff",id["SPOT_SALON"]}})
--GEA.add(SCENARIO1, -1, "Fin du Scénario TV", {{"Inverse"},{"turnOff",id["RGB"]}})

La, si je tiens appuyé, sa fonctionne, si je relache, sa coupe! 

 

Il faudrait que j'incremente une variable peux être ? J'ai essayé en jouant avec task, restartask mais en vain.

 

Merci :) 

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci a pepite, hansolo, et chris6783

pour vos réponses 

@pepite 

 

 

Salut messieurs, le retour entre 2 poses de carreaux de faience ;-)

 

@Flechg,  oui Hansolo a raison en jouant avec une variable ou tu mets en condition la valeur des volets :

GEA.add({"Value+", id["VOLET_EMMA"], 85}, .....)

peux tu me me dire ce que je dois mettre après car je maîtrise pas encore bien gea

merci pour votre patience

s

Partager ce message


Lien à poster
Partager sur d’autres sites

Regarde dans le showroom gea, j'ai posté un exemple avec la lampe de mon garage, je la fais clignotter une fois puis je l'éteins un peu après.

Faire très attention avec les sleep et gea, car toutes les commandes suivantes vont être retardées.

Ne jamais non plus dépasser les 30s en tout sinon ça va aller moins bien...

Sent from my Note4

 @ Salut Sebcbien

 

Quand tu dit faire attention sleep et gea, car toutes les commandes suivantes....

tu veux dire, tout les ligne quelqu’au   END.

Partager ce message


Lien à poster
Partager sur d’autres sites

non, tout les gea.add qui vont suivre (ceux avec un delais 30, 60 240 etc, pas les -1)

Partager ce message


Lien à poster
Partager sur d’autres sites

exemple:

    -- On dimme la lampe automatiquement après 90mn et on l'éteint après 20mn si pas d'action manuelle
local malampegar = GEA.add({"Value+", id["LAMPE_GARAGE"],21}, 90*60, "",{{"Value", 20},{"Repeat"}})
local malampegardim =  GEA.add({"Value-", id["LAMPE_GARAGE"],21}, 5*60, "",{{"Value", id["LAMPE_GARAGE"], 99},{"Function", function() fibaro:sleep(300) end},{"turnOff"},{"If", {{"Value+", id["LAMPE_GARAGE"], 1}}}},{"Repeat"})
    -- Une action manuelle relance tout
  GEA.add( id["LAMPE_GARAGE"], -1, "", {{"Inverse"}, {"RestartTask", malampegar}, {"RestartTask", malampegardim}})
----------------------------------------------- 
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Je reviens sur mon soucis BP, je vais essayé avec cela, mais n'y a t'il pas une solution "plus GEA" pour le faire ?

----------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- GESTION SCENARIOS BP --
---------------------------------------------------------------------------------------------------------------------------------------------------------------------- 
function veriftachescenario1()
    local RGBprogramme = tonumber(fibaro:getValue(23, 1))
    -- Retourne True si le prog RGB est déjà  enclenché
    return (RGBprogramme > 0)
end

GEA.add({SCENARIO1, {"Function",function() return veriftachescenario1() end}}, -1, "Lancement Scénario TV", {{"Program", id["RGB"], 1},{"turnOff",id["SPOT_SALON"]}})
GEA.add({SCENARIO1, {"Function",function() return veriftachescenario1() end}}, -1, "Stop Scénario TV", {{"Inverse"},{"turnOff",id["RGB"]}})
--GEA.add(SCENARIO1, -1, "Fin du Scénario TV", {{"Inverse"},{"turnOff",id["RGB"]}})

C'est bof, et sa ne différencie pas la mise en route du scenario et qqn qui mettrai manuellement le programme 1 sur le rgb.

 

Sinon il y a en utilisant une variable globale supplémentaire, mais pareil, sa ne fonctionne pas vraiment..

GEA.add({SCENARIO1, SCENE1DESACTIVE}, -1, "Lancement Scénario TV", {{"Program", id["RGB"], 1},{"turnOff",id["SPOT_SALON"]}, {"Global", "SCENE1", 1}})
GEA.add({SCENARIO1, SCENE1ACTIVE}, -1, "Stop Scénario TV", {{"turnOff",id["RGB"]}, {"Global", "SCENE1", 0}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci a pepite, hansolo, et chris6783

pour vos réponses 

@pepite 

 

peux tu me me dire ce que je dois mettre après car je maîtrise pas encore bien gea

merci pour votre patience

s

Je m excuses mais j ai pas trop compris 

je mets la condition volet ouvert a +80%

GEA.add({"Value+", id["VOLET_EMMA"], 85}, .....)

mais après je sais pas quoi mettre la variable global ????????

GEA.add({"Value+", id["VOLET_EMMA"], 85}, -1, "",{estTravail, {"Time", "07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20},{"Open",id["VOLET_PARENT"],20}, {"Open",id["VOLET_SALON"],20}}) 

est ce que cela serait juste 

merci encore pour votre patience

s

Modifié par flechg

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour

 

@flechg:

 

ta condition estTravail devrait être dans la 1ere partie:

-- Si le volet est ouvert à  +85% entre 7h10 et 7h12 Ouvrir les 3 volets à  20%
GEA.add({"Value+", id["VOLET_EMMA"], 85}, -1, "",{estTravail, {"Time", "07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20},{"Open",id["VOLET_PARENT"],20}, {"Open",id["VOLET_SALON"],20}}) 
	
-- Si le volet est ouvert à  +85% ET VG jourChomé sur NON, que nous sommes entre 7h10 et 7h12 alors Ouvrir les 3 volets à  20%
local estTravail = {"Global", "JourChome", "NON"}
GEA.add({{"Value+", id["VOLET_EMMA"], 85},estTravail}, -1, "",{{"Time", "07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20},{"Open",id["VOLET_PARENT"],20}, {"Open",id["VOLET_SALON"],20}}) 

Voilà  le code que j'utilise par exemple pour ouvrir mes VR en 2 fois:

J'ouvre à  une niveau précis lorsque présent, puis seconde ouverture après un certain temps. Si entre temps, avant ou après j'ai activé manuellement GEA ne reprend pas le dessus (à  moins d'avoir totalement refermé...)

J'ai ces lignes pour chaque VR

local estPresent = {"Global","EtatMaison","PRESENT"}
local paspreArmement = {"Value",id["SATEL_PREARMEMENT"],0}
local alarmeInactive = {"Value",id["SATEL_ARMEMENT"],0}
GEA.add({estPresent,paspreArmement,alarmeInactive,{"Value-",id['VR_BUREAU'],5}}, 31 , "" , {{"Time","Sunrise>08:00","10:00"},{"Open",id["VR_BUREAU"],40}})
GEA.add({estPresent,paspreArmement,alarmeInactive,{"Value",id['VR_BUREAU'],40}}, 5 * 60 , "" , {{"Time","Sunrise>08:00","10:00"},{"Open",id["VR_BUREAU"],100}})

Nicolas

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@NIKKO

 

merci je comprends mieux la 

donc

{"Value-",id['VR_BUREAU'],5

le 5 correspond au pourcentage au dessus duquel il prend pas en compte si action manuel c est bien ca

merci encore 

Partager ce message


Lien à poster
Partager sur d’autres sites

Si l'ouverture du volet est inférieur à  5% alors.....(il y a toujours des petits écarts dans les %, un volet fermé est rarement à  0% d'ou la tolérance avec le 5%)

 

Pas forcément suite à  une action sur la commande manuelle mais aussi suite à  une action via l'interface Fibaro ou une scène ou....

 

On récupère l'état du volet, de la lampe... pas l'état de la commande manuelle (sauf à  utiliser le sceneActivation de certains modules)

Partager ce message


Lien à poster
Partager sur d’autres sites

salut a tous 

je reviens vers vous depuis hier j ai suivi les recommandation et fait le teste ce matin mais aujourd’hui pas de volets ouvert donc j ai pas du bien comprendre la chose :P comme d habitude 

donc je récapitule si j ouvre un volet par ex au salon a plus de 20 OU 50% je voudrais que l action gea continue a m ouvrir les volets et pas me les refermés :15: 

voila ce que j ai mis hier en écoutant les explications de nikko et hansolo 

GEA.add({estTravail,{"Value-",id['VOLET_PARENT'],5}, {"Value-",id['VOLET_EMMA'],5}, {"Value-",id['VOLET_SALON'],5}}, 1*60 , "" , {{"Time","07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20}, {"Open",id["VOLET_PARENT"],20}, {"Open",id["VOLET_SALON"],20}})
GEA.add({estTravail,{"Value-",id['VOLET_PARENT'],25}, {"Value-",id['VOLET_EMMA'],25}, {"Value-",id['VOLET_SALON'],25}}, 1*60 , "" , {{"Time","07:15", "07:17"}, {"Open",id["VOLET_EMMA"],50}, {"Open",id["VOLET_PARENT"],50}, {"Open",id["VOLET_SALON"],50}})
GEA.add({estTravail,{"Value-",id['VOLET_PARENT'],55}, {"Value-",id['VOLET_EMMA'],55}, {"Value-",id['VOLET_SALON'],55}}, 1*60 , "" , {{"Time","07:30", "07:35"}, {"Open",id["VOLET_EMMA"],100}, {"Open",id["VOLET_PARENT"],100}, {"Open",id["VOLET_SALON"],100}})    
   

merci encore  :13:  :13:

Partager ce message


Lien à poster
Partager sur d’autres sites
GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],20}})
GEA.add({{estTravail}, {"Value-",id['VOLET_EMMA'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_EMMA"],20}})
GEA.add({{estTravail}, {"Value-",id['VOLET_SALON'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_SALON"],20}})

GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],25}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],50}})
GEA.add({{estTravail}, {"Value-",id['VOLET_EMMA'],25}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_EMMA"],50}})
GEA.add({{estTravail}, {"Value-",id['VOLET_SALON'],25}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_SALON"],50}})

GEA.add(estTravail, 1*60, "", {{"Time","07:30", "07:35"}, {"Open",id["VOLET_EMMA"],100}, {"Open",id["VOLET_PARENT"],100}, {"Open",id["VOLET_SALON"],100}})

Tel que tu as écrit tes lignes GEA, dés qu'un des volets est ouvert de plus de 5%, 25% ou 55%, tous les volets ne s'ouvriront pas de 20%, 50% ou 100% selon la ligne GEA concernée.

 

Si tu veux individualiser tes volets, pas le choix d'écrire une ligne GEA par volet.

 

(pour la dernière ligne j'ai compris que quoi qu'il arrive les volets doivent s'ouvrir complétement à  7:30)

 

Vérifie quand même les Values de tes volets quand il sont fermés (avec HCToolKit de @Krikroff par exemple)

Partager ce message


Lien à poster
Partager sur d’autres sites

@HANSOLO

merci de ton aide 

mais est ce que j ai bien compris 

dans la ligne que tu as mis

GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],20}})

si le volet est fermé c est a dire entre 0 et 5 % il s ouvre alors a 20%

GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],55}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],50}})

par contre si il est ouvert a plus de 55% avant l heure il ne se refermera pas a 20% par ex

 

merci 

Partager ce message


Lien à poster
Partager sur d’autres sites

@flechg:

GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],20}})

Dans ce cas là  lorsque la valeur du VR est inféreure à  5, alors le VR sera ouvert à  20 (si condition de temps et VG JOURCHOME sur NON)

GEA.add({{estTravail}, {"Value-",id['VOLET_PARENT'],55}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],50}})

Dans ce cas là  lorsque la valeur du VR est inféreure à  55, alors le VR sera ouvert à  50 (si condition de temps et VG JOURCHOME sur NON). Donc si ton VR est ouvert à  70 alors il ne se refermera pas.

 

normalement, pas d'accolades juste autour de estTravail:

local estTravail = {"Global", "JourChome", "NON"}
GEA.add({estTravail, {"Value-",id['VOLET_PARENT'],5}}, 1*60, "", {{"Time","07:10", "07:12"}, {"Open",id["VOLET_PARENT"],20}})

Nicolas

Partager ce message


Lien à poster
Partager sur d’autres sites

@ NIKKO

 

oui je suis d accord avec toi mais j ai pa la double accolade autour de "estTravail" j ai recopié le code au-dessus

j ai le même code que celui que tu as mis 

tu penses qu en dissociant chaque volet cela fonctionne je n ai pas eu le temps d essayer 

merci encore

Partager ce message


Lien à poster
Partager sur d’autres sites

pour faire un OU tu dois faire une ligne séparée àchaque fois => je pense que c'est mieux de faire une ligne par volet, et comme ça chacun vivra sa vie

Partager ce message


Lien à poster
Partager sur d’autres sites

×