971jmd Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 Si "1" signifie "Oui" alors local pasEnVacances = {"Global!", "Vacances", "1"} local pasMamie = {"Global!", "Mamie", "1"} local pasFemmeMenage = {"Global!", "FemmeMenage", "1"} GEA.add({pasEnVacances, pasMamie, pasFemmeMenage}, 30, "coin ordi ON à 7h00 et 18h semaine", {{"turnOn", id["COINORDINATEUR"]},{"Time", "07:00", "07:02"}, {"Time", "18:01", "18:02"}}) Note que ce n'est pas Global mais Global! : qui inverse la condition, Tu n'as pas besoin de vérifier si le Coin Ordi est déjà allumé ou pas, GEA s'en charge automatiquement par contre il laisse les lignes apparaîtres dans le debug. Avant d'envoyer un turnOn ou turnOff, il vérifie toujours si cela est nécessaire. Si tu veux vraiment contrôler toi même, ajoute local coinOrdiEteint = {"Value", id["COINORDINATEUR"], 0} GEA.add( {coinOrdiEteint, pasEnVacances, pasMamie, pasFemmeMenage}, ....) Voilà bonjour a tous une question: {"Time", "07:00", "07:02"}, {"Time", "18:01", "18:02"}}) n'est pas pareille que {"Time", "07:00", "18:02"} tout simplement ?
sebcbien Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 Non, si c'est en option, ce sera vrai 2 minutes le matin et 1 minute le soir.
971jmd Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 A ok donc 2mm le matin et 2 mm le soirs, mai pourquoi 2mm c'est une impulsion ? Envoyé de mon iPhone en utilisant Tapatalk
sebcbien Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 Heu je ne sais pas moi c une partie de TON code . Mais je dirais, si ce n'est pas un déclenchement instantané, 3 ou 4 déclenchements pour 2 min et 1 ou 2 pour deux minutes (avec gea quibtourne toutes les 30 secindes
971jmd Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 A pardon j'ai pas préciser. Non c pas mon code mai celui de sebbruni Envoyé de mon iPhone en utilisant Tapatalk
synthetic Posté(e) le 9 mars 2015 Signaler Posté(e) le 9 mars 2015 @Steven Dans ce cas là , dois-je laisser la boucle principale du module virtuel vide ou la remplir comme dans ce tuto (en modifiant le code avec mes variables) ? : http://www.domotique-fibaro.fr/index.php/topic/128-module-radiateur-avec-fil-pilote-thermostat-de-zone/ Concernant les créneaux horaires pour valider mes conditions, les durées des actions et le déclenchement des actions dans un créneau horaire , j'ai fais comme çà : -- Passage de la zone nuit en confort à partir de 21H30 (si je rentre avant 21H30) GEA.add({"Global", "Chauffage", "Je_rentre"}, -1, {"Time", "10:01", "21:29"}, "", {{"Value", ?Z2, 30}, {"Value", ?Z2, 99}, {"Time", "21:30", "21:29"}}) -- Passage de la zone nuit en confort (si je rentre après 21H30) GEA.add({"Global", "Chauffage", "Je_rentre"}, -1, {"Time", "21:31", "09:59"}, "", {{"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) , -- Passage de la zone salle de bain en confort pendant 2H00 puis retour en éco GEA.add({"Global", "Chauffage", "Douche"}, -1, "", {{"Value", ?Z1, 99}, {"Value", ?Z1, 30}, 120*60}) GEA.add({"Global", "Chauffage", "Douche"}, -1, "", {{"Value", ?Z3, 99}, {"Value", ?Z3, 30}}) et -- Passage de la zone salle de bain en confort de 06H00 à 8H00 GEA.add({"Global", "Chauffage", "Bonne_nuit_3"}, -1, "", {{"Value", ?Z3, 30}, {"Value", ?Z3, 99}, {"Time", "06:00", "08:00"}}) Merci encore pour tes conseils.
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 bonjour, @synthetic : ta syntaxe GEA n'est pas correcte, j'essaie de t'ecrire un petit truc si je comprends bien tes besoins ;-) Essaie cela : ta condition "je rentre avant 21:30" ne sera verifiee uniquement entre 10:01 et 21:29 si c'est ce que tu veux faire et en declenchement instantané ? -- si je rentre avant 21:30 zone nuit en confort à 21h30 local jerentre = {"Global", "Chauffage", "Je_rentre"} local avant2130 = {"Time", "10:01", "21:29"} GEA.add({jerentre, avant2130}, -1, "", {{"Time", "21:29", "21:30"}, {"Value", ?Z2, 30}, {"Value", ?Z2, 99}})
magic_281 Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @Pepite : merci! ca fonctionne avec ton code. Nouvelle question: comment récupérer la valeur armé/désarmer d'un capteur FGK? (le but c'est d'éteindre les prises wallplug si le capteur est armé, donc que l'alarme est active) Voici mon code qui ne fonctionne pas: GEA.add({"Value", id["detecteur_porte"],"Armed"},40,"", {{"turnOff", id["prise_tv"]}}) merci!
synthetic Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 Bonjour Pepite, bonjour, @synthetic : ta syntaxe GEA n'est pas correcte, j'essaie de t'ecrire un petit truc si je comprends bien tes besoins ;-) "...ta syntaxe GEA n'est pas correcte..." ...je sens que cette phrase va me coller à la peau encore un bon moment ! Essaie cela : ta condition "je rentre avant 21:30" ne sera verifiee uniquement entre 10:01 et 21:29 si c'est ce que tu veux faire et en declenchement instantané ? -- si je rentre avant 21:30 zone nuit en confort à 21h30 local jerentre = {"Global", "Chauffage", "Je_rentre"} local avant2130 = {"Time", "10:01", "21:29"} GEA.add({jerentre, avant2130}, -1, "", {{"Time", "21:29", "21:30"}, {"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) Pour la 1ère partie (conditions jerentre+avant21H30), c'est bien ce que je recherche. Pour la seconde partie ("Time", "21:29", "21:30"), celà ne rique t-il pas de mettre la zone 2 en mode confort seulement pendant 1 minute ? Dans cette partie là , je cherche à passer le chauffage en mode confort à partir de 21H30 si les conditions (je_rentre + avant 21H30) sont remplies (j'ai pris l'option du créneau horaire large (de 21H30 à 21H29 soit presque 24H) car je ne savais pas comment faire pour déclencher en avance une action à partir d'une heure précise) : -- Passage de la zone nuit en confort à partir de 21H30 (si je rentre avant 21H30) GEA.add({"Global", "Chauffage", "Je_rentre"}, -1, {"Time", "10:01", "21:29"}, "", {{"Value", ?Z2, 30}, {"Value", ?Z2, 99}, {"Time", "21:30", "21:29"}}) Dans celle-ci (après correction ), je cherche à passer en instantané le chauffage en mode confort si les conditions (je_rentre + après 21H30) sont remplies : local jerentre = {"Global", "Chauffage", "Je_rentre"} local apres2130 = {"Time", "21:31", "09:59"} GEA.add({jerentre, apres2130}, -1, "", {"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) Ensuite c'est les boutons "Bonne_nuit_1, 2, 3 ou 4) qui prendront le relai pour changer ou non les états de chaque zone. Une autre petite question : pour un créneau horaire en option, par exemple {"Time", "21:31", "09:59"}; Que ce passe t-il à 10H00 si on ne touche à rien ? Le chauffage reprend la valeur précedente ? Tu as une syntaxe différente de Steven...vous voulez me perdre ou quoi ?! Merci pour ton aide Pepite.
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @magic_281, de rien. Les valeurs armed et disarmed c'est 0 et 1 je crois si tu l'ecris avec des Value Sinon comme ca, GEA teste si c'est on ou off GEA.add(id["detecteur_porte"],40,"", {{"turnOff", id["prise_tv"]}})
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @synthetic : heuu non je ne peux pas avoir une syntaxe differente de @Steven, GEA est STEVEN ;-) je jette un oeil pour t'aider ;-) Pour ca : GEA.add({jerentre, avant2130}, -1, "", {{"Time", "21:29", "21:30"}, {"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) Pour la seconde partie ("Time", "21:29", "21:30"), cela ne risque t-il pas de mettre la zone 2 en mode confort seulement pendant 1 minute ? Je n'ai ecrit dans la bonne syntaxe que ce que je comprenais de ton ébauche, mais pour moi : - le déclenchement instantané "-1" ne colle pas avec le TIME que tu veux mettre dans les options. Soit tu l'ecris : et dès que les 2 conditions seront remplies : declenchement instantané GEA.add({jerentre, avant2130}, -1, "", {{"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) Soit : passage en mode confort lorsque les 2 condtitions sont remplies à 21:30, GEA.add({jerentre, avant2130}, 30, "", {{"Time", "21:30", "21:31"}, {"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) pour répondre à ta question non : GEA tourne environ toutes les 30 secs moins le temps de raitement pour effectuer l'OPTION donc ici ton CHAUFFAGE en mode CONFORT
magic_281 Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @Pepite: quand on mets l'id du FGK c'est pas plutot le breached/unbreached qu'il teste, et non le armed/disarmed?
synthetic Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @Pepite, Aà¯e ! Je ne m'attendais pas à cette réponse. Donc si je comprend bien, GEA ne fait que de "l'instantané" à +ou- 30 secondes. N'y a t-il pas moyen de contourner çà en créant un scénario (blocs graphiques incluants un horaire ou une tranche horaire de déclenchement) et en l'activant à partir d'une ligne GEA : Scénario "Je_rentre_Z2" : [Jour de la semaine : lundi au dimanche / A ce moment précis : 21H30] ALORS [module Z2] = [Mode confort] GEA : -- si je rentre avant 21:30 alors zone nuit en confort à partir de 21h30 : local jerentre = {"Global", "Chauffage", "Je_rentre"} local avant2130 = {"Time", "10:01", "21:29"} GEA.add({jerentre, avant2130}, -1, "", {{"Scenario", "Je_rentre_Z2"}}) Qu'en penses tu ?
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @Synthetic : j'ai pas du etre tres clair : GEA fait soit de l'instantané dès que la condition est remplie : "-1" , soit tu determines un temps, le mini est 30 (à la place du "-1") et dans les OPTIONS de GEA tu mets un "TIME" qui correspondra à l'heure de déclenchement de la ligne GEA je me demande si tu es OK avec le TIMe : {"Time", <from>, <to>} -- Ne vérifie l'évenement QUE si nous sommes dans la/les tranches horaires {"Time", "22:00", "06:00"} Je trouverais ca plus simple de verifier ta presence avant ou apres 21h30 avec une variable globale Tu peux appeler un SCENARIO avec GEA aussi, c'est toi qui vois, mais ca oblige a gérer les 2 scenes. @magic tu as teste ? je crois pas mais tu me fais douter lol je me trompe peut-etre hihihi tu as regarde le json ?
synthetic Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 Pour ce qui est des conditions, pas de problème, j'ai compris le principe du déclenchement instantané ("-1") ou du déclenchement avec un temps de retard. Là où j'ai eu un doute, c'est pour le déclenchement des options à partir de une heure précise. Dans la ligne ci-dessous par exemple, je pensais que le mode confort ne serait actif QUE de 21H30 à 21H31 : GEA.add({jerentre, avant2130}, 30, "", {{"Time", "21:30", "21:31"}, {"Value", ?Z2, 30}, {"Value", ?Z2, 99}}) Si je comprend bien (j'espère que c'est le cas parce que je vais finir par te rendre fou ), le "{"Time", "21:30", "21:31"}" placer dans les options corresponds à une "impulsion" à 21H30 donnant l'ordre à la zone nuit de passer du mode eco au mode confort.
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 http://ip_hc2/api/devices/id_module Un fichier qui contient des infos sur les modules, que tu peux atteindre depuis un navigateur sinon le toolkit de krikroff ;-)
pepite Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @synthetic EXACTEMENT : entre 21h30 et 21h31 GEA va executer les commandes (si conditions remplies) : {"Value", ?Z2, 30}, {"Value", ?Z2, 99} c'est a dire : Donner la valeur 30 à ?Z2 et donner la valeur 99 à Z2 D'ailleurs, si avant cette heure ci la valeur de ?Z2 est deja à 30 avant 21h30, tu peux juste faire {"Value", ?Z2, 99} et inversement,car la dans la meme ligne tu passe à 30 et à 99 ton ?Z2
synthetic Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 MERCI Pepite. Ma petite tête commence à comprendre le principe de fonctionnement de GEA
synthetic Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 (modifié) Message supprimé Modifié le 11 mars 2015 par synthetic
sebcbien Posté(e) le 10 mars 2015 Signaler Posté(e) le 10 mars 2015 @Pepite: c'est quoi json? Je me permet de répondre https://www.google.fr/search?q=json&ie=utf-8&oe=utf-8&gws_rd=cr&ei=A4H_VJaFKszpUp-LgPgD
pepite Posté(e) le 11 mars 2015 Signaler Posté(e) le 11 mars 2015 @synthetic : si tu continues a poster tout ton code tu vas gagner la palme du boulet du mois ;-) As tu teste ton code ? Remarque : Pour moi le déclenchement instantané "-1" avec un "Time" dans les options n'est pas très logique. Je m'explique : L'intéeret que je vois au déclenchement instantané est que si une condition est remplie ca déclenche "INSTANTANÉMENT" (je me repete non ;-) ) un action quelque soit l'heure. SI j'ai besoin du TIME dans les options, comme toi avec tes passages de chauffage en ECO CONFORT et autre, je laisse GEA avec son CHECK minimal de 30 à la place de -1 et ca fonctionne à lheure qui m'interesse. Dans le script GEA de chaque bouton, il y a > fibaro:call(31, "setProperty", "ui.label_0_0.value", " Auto"); Cette ligne fait appel à un seul module (id 31) car il ne gère qu'une seule zone contrairement à moi qui en ai 3. Dans un BOUTON d'un module VIRTUEL, ce n'est pas GEA qui gere ;-) fibaro:call(31, "setProperty", "ui.label_0_0.value", " Auto") Cette ligne signifie : pour l'ID 31 (id du module virtuel), affiche la valeur AUTO pour l'etiquette ui... @sebcbien : merciiii
synthetic Posté(e) le 11 mars 2015 Signaler Posté(e) le 11 mars 2015 Bonjour Pepite, @synthetic : si tu continues a poster tout ton code tu vas gagner la palme du boulet du mois ;-) Tu as raison...Je vais me calmer et ne poster qu'une petite partie à la fois. Je l'ai supprimé. As tu teste ton code ? Non. Je n'ai pas encore eu le temps d'installer mes modules. D'où l’intérêt pour moi de finaliser ce script avant de débrancher ma centrale de programmation. Remarque : Pour moi le déclenchement instantané "-1" avec un "Time" dans les options n'est pas très logique. Je m'explique : L'intéeret que je vois au déclenchement instantané est que si une condition est remplie ca déclenche "INSTANTANÉMENT" (je me repete non ;-) ) un action quelque soit l'heure. SI j'ai besoin du TIME dans les options, comme toi avec tes passages de chauffage en ECO CONFORT et autre, je laisse GEA avec son CHECK minimal de 30 à la place de -1 et ca fonctionne à lheure qui m'interesse. Je vais essayer de me rentrer çà dans le crâne une bonne fois pour toute et modifier mon code en conséquence : GEA.add({Jerentre, avant2130}, 30, "", {{"Time", "21:30", "21:31"}, {"Value", ?Z2, 99}}) Dans un BOUTON d'un module VIRTUEL, ce n'est pas GEA qui gere ;-) A l'avenir, je posterais ce genre de question dans le forum approprié (LUA) fibaro:call(31, "setProperty", "ui.label_0_0.value", " Auto") Cette ligne signifie : pour l'ID 31 (id du module virtuel), affiche la valeur AUTO pour l'etiquette ui... Merci.
pepite Posté(e) le 11 mars 2015 Signaler Posté(e) le 11 mars 2015 Ma phrase sur : ce n'est pas GEA qui gere n'etait pas pour te dire que tu n'etais pas sur le bon forum mais surtout our eviter de te melager les pinceaux entre GEA et code LUA qu'il y a dans les scenes et les Modules virtuels ;-) GEA utilise du LUA qd mm ;-) Pour tes boutons, ce la dependra de ce que tu veux récuperer comme information dans tes "etiquettes"
synthetic Posté(e) le 11 mars 2015 Signaler Posté(e) le 11 mars 2015 Pas de problème. J'ai récupéré l'id de mon MV (32 dans mon cas) pour qu'il affiche le programme en cours d'exécution. Je me suis aperçu que je n'avais pas besoin pour l'instant d'avoir les id de mes modules QUBINO pour effectuer des test. Ce midi, j'ai juste eu le temps de créer une scène "CHAUFFAGE" en copiant le GEA "Master" (v.5.02 je crois) et en y insérant mes lignes GEA. Dans le panneau debug, mes lignes GEA passe mais il indique une erreur dès la 1ère ligne en LUA (end) Pour info, j'ai créer une variable simple nommée "GEA_Tasks" comme indiqué dans le tuto) Je referais un essai ce soir.
Messages recommandés