Fredric 297 Signaler ce message Posté(e) 19 mars 2016 (modifié) Voici ce que j'ai mis en place pour ma VMC. @Did a fait un TUTO sur le sujet ICI : Mon TUTO est moins général, il concerne mon modèle de VMC, une SAUTER classic (ou ATLANTIC). Pour domotiser cette VMC, j’utilise un FGS221, un contacteur modulaire FINDER 22.21.8.230.4000. Voici le schéma de branchement d’origine de cette VMC : Dans la logique, j’aurais pu utiliser seulement le FGS221 mais le fait d’enclencher la deuxième vitesse, collé son relais sortie O2 et il fallait attendre longtemps pour que cela revienne à la normal ! (J’en ai même un qui est parti en SAV). Schéma suivant à ne pas faire!!! Ce pourquoi, je rajoute un contacteur modulaire qui lui, va très bien ! Voici mon schéma final : Et voici mon code pour la deuxième vitesse pour WAF dans un VD: j'ai créé un VD avec deux bouton, le premier avec le code suivant, pour faire variable la vitesse 2 selon l'état: local idm = {VMC = 510, VMC2 = 512, VD_Imperihome = 807} local application = function (vitesse, actionmodule, etat, var, idicone, texte, imperi) fibaro:debug(vitesse) fibaro:call(idm[actionmodule], etat) fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", idicone) fibaro:setGlobal("Etat_VMC", var) fibaro:setGlobal("Message", imperi) fibaro:call(idm["VD_Imperihome"], "pressButton", "1"); if texte ~= "" then HC2 = Net.FHttp("192.168.1.26", 8080) response = HC2:GET(texte) end end fibaro:sleep(3000) fibaro:setGlobal("Message", "" ); --raz variable local situation = { ["10"] = function() application("vitesse 2", "VMC2", "turnOn", "V2", 1177, "/sarah/parle?phrase=VMC+en+grande+vitesse", "VMC en grande Vitesse") end, ["11"] = function() application("vitesse normale", "VMC2", "turnOff", "ON", 1176, "/sarah/parle?phrase=VMC+en+vitesse+nornale", "VMC en Vitesse normale") end, ["00"] = function() application("vitesse normale", "VMC", "turnOn", "ON", 1176, "/sarah/parle?phrase=Démarrage+de+la+VMC", "Démarrage de la VMC") end, ["01"] = function() application("VMC OFF", "VMC2", "turnOff", "OFF", 1233, "/sarah/parle?phrase=VMC+éteinte", "VMC éteinte") end, } local status, err, value = pcall(situation[fibaro:getValue(idm["VMC"], "value") .. fibaro:getValue(idm["VMC2"], "value")]) if not (status) then fibaro:debug("<font color=\"red\">" .. os.date() .. " Erreur d'exécution" .. "</font>") end et dans le deuxième bouton j'ai mis ce code, pour allumer ou éteindre la VMC: local idm = {VMC = 510, VMC2 = 512, VD_Imperihome = 807} local application = function (vitesse, actionmodule, etat, var, idicone, texte, imperi) fibaro:debug(vitesse) fibaro:call(idm[actionmodule], etat) fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", idicone) fibaro:setGlobal("Etat_VMC", var) fibaro:setGlobal("Message", imperi) fibaro:call(idm["VD_Imperihome"], "pressButton", "1"); if texte ~= "" then HC2 = Net.FHttp("192.168.1.26", 8080) response = HC2:GET(texte) end end fibaro:sleep(3000) fibaro:setGlobal("Message", "" ); --raz variable local situation = { ["1"] = function() application("VMC OFF", "VMC", "turnOff", "OFF", 1233, "/sarah/parle?phrase=Arrêt+de+la+VMC", "Arrêt de la VMC") end, ["0"] = function() application("VMC ON - vitesse normale", "VMC", "turnOn", "ON", 1176, "/sarah/parle?phrase=Démarrage+de+la+VMC", "Démarrage de la VMC") end, } local status, err, value = pcall(situation[fibaro:getValue(idm["VMC"], "value")]) if not (status) then fibaro:debug("<font color=\"red\">" .. os.date() .. " Erreur d'exécution" .. "</font>") end Après, on peut gérer par GEA selon le l'humidité des pièces etc.. des Icônes: Enjoy Merci à @trankill666 pour son code que j'ai adapté à mes besoins Modifié 29 mars 2016 par Fredric 2 Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 19 mars 2016 très instructif. Merci. Mais j'aurais fait comme dans ton premier schéma, et je ne comprends pas pourquoi ça ne peut pas fonctionner, et que fait ton contacteur modulaire Partager ce message Lien à poster Partager sur d’autres sites
Fredric 297 Signaler ce message Posté(e) 19 mars 2016 Je sais, c'est louche, mais j'ai essayé avec plusieurs FGS, même un FGS222, j'ai tenté avec un relais OMRON mais le résultat était identique. le contacteur modulaire est ni plus ni moins qu'un relais qui supporte 230v - 20A. maintenant, cela vient surement de la VMC. Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 19 mars 2016 en fait cela ne viendrait-il pas peut-être du fait que l'on change trop rapidement de vitesse ? ou qu'àun moment O1 et O2 soit on ensemble ?via le code, il est possible d'enclancher la vitesse 2 (1) que si la 1 (2) est désactivée Partager ce message Lien à poster Partager sur d’autres sites
Fredric 297 Signaler ce message Posté(e) 19 mars 2016 Et bien, en regardant la connexion d'origine, la vitesse 1 reste enclenché quand on passe en deux, c'est un pont. En fait, avec un FGS, cela fonctionne une ou deux fois avant de resté collé, et si on insiste... j'ai essayé avec le type de brochage de @Did, mais non,ça veut pas. J'en ai parlé avec un électricien qui faisait des travaux dans notre établissement, c'est lui qui m'a conseillé un relais qui supporte plus d’ampères,il pensait que cela pouvait venir du condo de la VMC. C'est même lui qui ma donné le relais OMRON, 5A, qui restait collé aussi, maintenant, il me sert pour mes alerte coupure EDF. Partager ce message Lien à poster Partager sur d’autres sites
trainkill666 70 Signaler ce message Posté(e) 20 mars 2016 Salut Fredric, voici une petite modif de ton code, je l'ai fait en 5min et non testé, donc soit indulgent si il y a une coquille, idem pour les noms de variable. local idm = {VMC = 510, VMC2 = 512} local application = function (vitesse, actionmodule, etat, idicone, texte) fibaro:debug(vitesse) fibaro:call(idm[actionmodule], etat) fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", idicone) if texte ~= "" then HC2 = Net.FHttp("192.168.1.26", 8080) response = HC2:GET(texte) end end local situation = { ["10"] = function() application("vitesse 2", "VMC2", "turnOn", 1177, "/sarah/parle?phrase=VMC+en+grande+vitesse") end, ["11"] = function() application("vitesse normale", "VMC2", "turnOff", 1176, "/sarah/parle?phrase=VMC+en+vitesse+nornale") end, ["00"] = function() application("vitesse normale", "VMC", "turnOn", 1176, "") end, ["01"] = function() end, } local status, err, value = pcall(situation[fibaro:getValue(idm["VMC"], "value") .. fibaro:getValue(idm["VMC2"], "value")]) if not (status) then fibaro:debug("<font color=\"red\">" .. os.date() .. " Erreur d'exécution" .. "</font>") end 1 Partager ce message Lien à poster Partager sur d’autres sites
Fredric 297 Signaler ce message Posté(e) 21 mars 2016 J'ai jamais était très fort en programmation, je perdais toujours des points sur l'optimisation je me dis que ce code est peut être la solution aux multiples instances... Merci Partager ce message Lien à poster Partager sur d’autres sites
q.philippe 30 Signaler ce message Posté(e) 21 mars 2016 Salut J'observé vos explications ; J'ai un fgs222 pour ma VMC et quelques scènes dont une quand vitesse 2 ON mets OFF vitesse 1 et inversement , en gros c'est la scènes qui sert de basculement du relais ! c'est juste étonnant qu'ils n'ont pas penser a un relais avec contact inverseur dans le module. Partager ce message Lien à poster Partager sur d’autres sites
Fredric 297 Signaler ce message Posté(e) 29 mars 2016 (modifié) Modifié 29 mars 2016 par Fredric Partager ce message Lien à poster Partager sur d’autres sites