pepite Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 tu sais je ne suis pas au niveau des "experts".. Redis nous ce que tu souhaites faire pour pouvoir comparer avec les lignes GEA
Arbu-jl Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 (modifié) Merci @pepite je viens de voir encore une erreur, ci-après la correction. -- Si Sunset et ouverture porte ou detection garage alors Lampe allumée, puis extinction après 3 minutes local nuit = {"Global", "JOUR_NUIT", "NUIT"} local coursOn = {"Global", "Cours", "1"} local coursOff = {"Global", "Cours", "0"} GEA.add({id["SENSOR_ENTPRIN"], nuit}, -1, "Cours On Sensor", {{"VirtualDevice", id["VD_IPX800"], "1"}}) GEA.add({coursOn, nuit}, -1, "Cours On", {{"VirtualDevice", id["VD_IPX800"], "1"}}) local LumCours = GEA.add(coursOff, 1*30, "", {{"VirtualDevice", id["VD_IPX800"], "9"}}) GEA.add(coursOn, -1, "", {{"RestartTask", LumCours}}) GEA.add({id["SENSOR_ENTPRIN"], coursOff}, 1*40, "", {{"VirtualDevice", id["VD_IPX800"], "9"}}) GEA.add(coursOff, 5*60, "", {{"VirtualDevice", id["VD_IPX800"], "9"}}) J'ai un IPX qui commande la lampe extérieure. id["VD_IPX800"]. On en 1, Off en 9, de plus, il y a une tempo Off sur ce relais à 3 minutes pour l'extinction. J'ai un détecteur de mouvement à l'extérieur branché sur l'IPX, il met à jour la variable "Cours" à 1 lorsque allumé, à 0 lorsque éteint Je récupère la variable "Cours dans GEA {"Global", "Cours", "1"} ou {"Global", "Cours", "0"} id["SENSOR_ENTPRIN"] correspond à un sensor Fibaro de détection d'ouverture de porte/fenêtre Bien sur, je souhaite que tout cela ne fonctionne que la nuit, je me sers de la variable {"Global", "JOUR_NUIT", "NUIT"} Si le détecteur extérieur capte un mouvement, celui-ci met à jour la variable "Cours" à 1, GEA (enfin je crois ) allume le relais de l'IPX. GEA.add({coursOn, nuit}, -1, "Cours On", {{"VirtualDevice", id["VD_IPX800"], "1"}}) 3 minutes après, à l'extinction du relais de la lampe extérieure, la variable "Cours" passe à 0 si aucun mouvement n'est détecté. cependant si un mouvement est détecté avant ces 3 minutes, le timer est relancé. local LumCours = GEA.add(coursOff, 1*30, "", {{"VirtualDevice", id["VD_IPX800"], "9"}}) GEA.add(coursOn, -1, "", {{"RestartTask", LumCours}}) (Je laisse cependant une chance au détecteur (30 s) pour être sur qu'il n'y ai pas d'autre détection pas sur que cela serve à grand chose, je voulais tester la fonction Timer, d'ailleurs je ne suis pas sur que cela fonctionne comme cela... je pratique de la même manière avec le id["SENSOR_ENTPRIN"] que pour l'IPX. Sauf que je n'ai pas mis de Timer avec de RestartTask, juste 40s, oui, je sais, je lui laisse aussi une chance, la dernière de détecter une ouverture.... Enfin, j'ai ajouter une dernière sécurité, avec la ligne suivante GEA.add(coursOff, 5*60, "", {{"VirtualDevice", id["VD_IPX800"], "9"}}) Extinction de la lampe extérieur si Variable "Cours" à zéro pendant au moins 5 minutes. Curieusement, ce job s'arrête. (Modif: en fait c'est normal qu'il s'arrête, puisque l'actionneur est coursOff, si pas de changement d'état, GEA n'a rien à faire), alors pourquoi cette P... de lampe se rallume.... Maintenant, vous allez me dire, pourquoi ne pas avoir commandé directement le relais IPX avec le Détecteur IPX, parce qu'en effet, cela fonctionne parfaitement.... Ben parce que lorsque j'ouvre la porte d'entrée, le sensor allumait bien la lampe extérieure, puis le détecteur prenait le relais, j'avais été obligé de mettre un ordre Off sur lampe pour que la lampe extérieure s'éteigne bien au bout d'un moment. Du coup, si je restait dehors plus longtemps que le délai indiqué pour faire le Off, la lampe extérieur s'éteignait, j'était alors obligé de faire un mouvement à l'extérieur pour la rallumer. Bon avec le temps qu'il fait en HauteSavoie, ce n'est pas un problème en ce moment.... d'ailleurs en lisant mes explications, suis pas sur d'être très logique, un vrai boulet quoi Voili, voila, .... Modifié le 20 janvier 2015 par Arbu-jl
Ludwig Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 Après tests, je sèche un peu j'ai le code ci-dessous mais j'ai le message d'erreur : [ERROR] 22:10:13: line 27: attempt to index global 'GEA' (a nil value) --[[ %% autostart %% properties 5 value 68 value 58 value 56 value 25 value 112 value %% globals --]] -- ================================================== -- DECLENCHEMENT INSTANTANE -- ================================================== local DETECTEUR_HALL = 18 local ECLAIRAGE_HALL = 8 local LUMINOSITE_HALL = 20 local DETECTEUR_COUR = 38 local LUMINOSITE_COUR = 41 local ECLAIRAGE_COUR = 11 -- == REZ DE CHAUSSEE - HALL ======================== -- Si détecte présence alors on allume la lumière local lumiHall = {"If",{{"Value-",LUMINOSITE_HALL,200}}} GEA.add( DETECTEUR_HALL, -1, "", {{"turnOn", ECLAIRAGE_HALL}, lumiHall }) Il y a surement une maladresse, mais je n'ai plus les yeux en fasse des trous
Arbu-jl Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 A la place de DETECTEUR_HALL, ne dois tu pas mettre id["DETECTEUR_HALL"). La même chose pour ECLAIRAGE_HALL.... D'ailleurs la déclaration d'un id doit être sous cette forme... local id = { DETECTEUR_HALL = 18 ECLAIRAGE_HALL = 8 } Alors que les déclencheurs doivent être entre %% properties 18 value 8 value %% globals
Ludwig Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 @Arbu-Jl : J'ai toujours la même erreur sur le premier GEA.add avec le code au propre ci-dessous : --[[ %% autostart %% properties 8 value 11 value 18 value 38 value %% globals --]] local id = { DETECTEUR_HALL = 18, DETECTEUR_COUR = 38, ECLAIRAGE_HALL = 8, ECLAIRAGE_COUR = 11, LUMINOSITE_HALL = 20, LUMINOSITE_COUR = 41, PORTE_COUR = 89, PORTE_JARDIN = 91, TEMPERATURE_HALL = 19, WP_SALLE = 24, WP_SALON = 21 } ------------------- REZ DE CHAUSSEE - HALL ------------------- -- Si détecte présence alors on allume la lumière local lumiHall = {"If",{{"Value-",id["LUMINOSITE_HALL"],200}}} GEA.add(id["DETECTEUR_HALL"], -1, "", {{"turnOn", id["ECLAIRAGE_HALL"]}, lumiHall }) -- Si la lumière est allumée depuis 5 min on éteint local RTHall = GEA.add(id['ECLAIRAGE_HALL'], 5*60, "", {{"turnOff"}}) GEA.add(id["DETECTEUR_HALL"], -1, "", {{"RestartTask", RTHall}}) ------------------- EXTERIEUR - COUR ------------------- -- Si détecte présence alors on allume la lumière local lumiCour = {"If",{{"Value-",id['LUMINOSITE_COUR'],200}}} GEA.add( id["DETECTEUR_COUR"], -1, "", {{"turnOn", id["ECLAIRAGE_COUR"]}, lumiCour }) -- Si la lumière est allumée depuis 5 min on éteint local RTCour = GEA.add(id['ECLAIRAGE_COUR'], 5*60, "", {{"turnOff"}}) GEA.add(id["DETECTEUR_COUR"], -1, "", {{"RestartTask", RTCour}})
sebcbien Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 Le dernier "ECLAIRAGE_COUR" il y a des apostrophes au lieu de guillemets Sent From my Vic20
Ludwig Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 J'ai corrigé tous les apostrophes par les guillemets... mais toujours le meme message
sebcbien Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 Tu dois isoler le problème , il y a trop. Je te suggère de commenter tout sauf 1 ligne, sauver, vérifier si ça va, puis 2 lignes etc. Pour commenter une section: --[[ code a commenter --]] Il suffit de déplacer le crochet de début ou de fin pour "libérer" du code Sent From my Vic20 1
Ludwig Posté(e) le 20 janvier 2015 Signaler Posté(e) le 20 janvier 2015 Et dire que c'est un des conseils que je donne àmes équipes et je ne l'applique pas. Je ne serai pas très crédible si il voyait ça... Je ferai du step by step demain. Merci pout ton aide @sebcbien, je te dirai quoi
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Heuuu, cela fonctionne déjà GEA.add( {"Slider", 130, "MonSlider", 50}, 30, "") GEA.add( {"Slider+", 130, "MonSlider", 50}, 30, "") GEA.add( {"Slider-", 130, "MonSlider", 50}, 30, "") 130 étant le numéro du module virtuel 50 la valeur testée MonSlider est le nom du slider dans le module virtuel. je me suis mal exprimer non c'est justement le contraire j'ai tout simplement crée des bouton et slider pour prend le Control sur les variables nos variable GEA L’Exemple suivant permet de maintenir une lampe allumée pendent 5 - 10 - 15 ou fixe (manuel) et me permet d'activer ou pas la détection. Bien sà»r le toute grâce à l'aide de la communauté domotique fibaro
pepite Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Bonjour, @Arbu-Jl : je lis tout et te dis ce que j'aurais écrit, mais peux-tu mettre les balises de code pour simplifier la lecture stp ? @Ludwig : et si tu mettais "lumihall" en debut de ligne en conditions multiples ?
Sebbrunie1 Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Bonjour, j'ai un thermostat SECURE SRT321. Savez vous comment changer la temperature cible avec GEA -- Chauffage Noe à 20°C la nuit GEA.add(id["ThermostaNoe"], 10*60, "", {{"Time", "20:00", "06:00"}, {"Value", 21}}) Mais il ne se passe rien..... Merci par avance
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 bonjour a tous j'ai réaliser un petit code qui fonction très bien enfin presque. J’aurais souhaitai savoir s'il y est possible que ma lampe centretable s’allume instantanément, pour le moment je suis a 30s. j'ai fait le teste avec -1 sa fonctionne pas j'ai un autre probleme, Repeat redémarrage ma lampe tous les 30s local halo = 10 local centretable = 40 local lumion = {"If",{{"Value-", halo, 50}}} local lumioff = {"If",{{"Value+", halo, 50}}} GEA.add( true, 30, "", {lumion, {"turnOn", centretable}, {"Repeat"}}) GEA.add( true, 30, "", {lumioff, {"turnOff", centretable}, {"Repeat"}})
sebcbien Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 pour que le -1 fonctionne il faut que le device soit dans l'entête du script. tu as mis 40 value tout en haut ?
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 oui 10et 40 et j'ai le meme problème avec le stop général GEA.add( true, 30, "", {{"turnOff", centretable}, {"turnOff", halo}, {"Global", "stop", "1"}})
sebcbien Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 true et -1 c'est un nonsens... tu dois mettre un déclencheur à la place de true, sinon ta ligne gea se lance avec quelle condition ?? le true plus haut je pensais que tu l'avais is pour débugger... 1
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Autre chose important depuis la sorti de l v4 "power" fonctionne "value" ne fonctionne pas et pour d'autre "value" fonctionne --[[ %% autostart %% properties 221 value %% globals --]] local centretable = 221 GEA.add( {"power+", centretable, 10}, 30, "", {{"turnOff", centretable}}) --- fonctionne GEA.add( {"value+", centretable, 10}, 30, "", {{"turnOff", centretable}}) --- fonctionne pas @sebcbien merci effectivement -1 et true font la même chose
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 peut-on crée un déclencheur avec une scène(1) LUA et l'intégré à un code GEA ? (1) une scène qui ce déclenche tout les seconde
sebcbien Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Ce n'est pas exactement la même chose. -1 annule le compteur (a rebours) et true simule une condition de déclenchement toujours vraie. Sent From my Vic20 1
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 pouuuuu j'ai à la tête effectivement c'est pas la mémé chose
sebcbien Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 comprendre ça: GEA.add( { <condition_principale>[, <condition2>[, ...]] } , <durée en secondes|-1>, <message a notifier>[, <options>]) c'est avoir tout compris ! http://www.domotique-fibaro.fr/index.php/topic/1082-gea-gestionnaire-d%C3%A9v%C3%A9nements-automatique/ 1
971jmd Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 si je comprend bien il n'y a pas de solution pour déclencher une lampe instantanément a partir d'une variable
Sebbrunie1 Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 Bonjour, j'ai un thermostat SECURE SRT321. Savez vous comment changer la temperature cible avec GEA -- Chauffage Noe à 20°C la nuit GEA.add(id["ThermostaNoe"], 10*60, "", {{"Time", "20:00", "06:00"}, {"Value", 21}}) Mais il ne se passe rien..... Merci par avance
sebcbien Posté(e) le 21 janvier 2015 Signaler Posté(e) le 21 janvier 2015 si je comprend bien il n'y a pas de solution pour déclencher une lampe instantanément a partir d'une variable a partir d'une variable globale ? si plein, regarde gea showroom dans ma signature, il y a plein d'exemples de déclenchement suite au changement d'une VG
Messages recommandés