Krikroff Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Le matériel: 1x Déshumidificateur Zibro D510 1x Everspring ST814 Temperature / Humidity Detector 1x Wallplug Fibaro La scène en LUA (le code n'est pas optimisé, ce n'est pas un Best Pratictice mais utilisable sans risque ) Le paramétrage: humidityTargetValue : Représente l'humidité relative désirée. Le node 18 est ici le ST814 Le node 35 est le Wall plug Le script est en fonction tous les jours de 11h à 19h --[[ %% autostart %% globals --]] -- Regulating humidity in a room with a dehumidifier. -- Copyright © 2013 Jean-christophe Vermandé fibaro:debug("HC2 start script at " .. os.date()); -- check script instance count in memory if (fibaro:countScenes() > 1) then fibaro:debug("Script already running."); fibaro:abort(); end local sourceTrigger = fibaro:getSourceTrigger(); local hysteresis = 2; local sensorValueCorrection = -8; local humidityTargetValue = 60; local _dtLastIgnition; function deviceControl(targetValue) local humidityValue = tonumber(fibaro:getValue(18, "value")) + sensorValueCorrection; local deviceState = tonumber(fibaro:getValue(35, "value")); --fibaro:debug("device state: " .. deviceState .. " relative humidity: " .. humidityValue); if (humidityValue > targetValue) then -- TURN ON if (deviceState==0) then fibaro:call(35, "turnOn"); fibaro:debug("Date of the last ignition is " .. (_dtLastIgnition or "unknown.")); _dtLastIgnition = os.date(); fibaro:debug(_dtLastIgnition .. " - device state: " .. deviceState .. " relative humidity: " .. humidityValue .. " -> device turned On"); end elseif (humidityValue < targetValue) then -- TURN OFF if (deviceState==1) then fibaro:call(35, "turnOff"); fibaro:debug(os.date() .. " - device state: " .. deviceState .. " relative humidity: " .. humidityValue .. " -> device turned Off"); end end end if (sourceTrigger["type"] == "autostart") then while true do local currentTime = tonumber(os.date("%H%M")); if ((currentTime >= tonumber(string.format("%02d%02d", "11", "00"))) and (currentTime <= tonumber(string.format("%02d%02d", "19", "00")))) then deviceControl(humidityTargetValue); else if (tonumber(fibaro:getValue(35, "value"))==1) then fibaro:call(35, "turnOff"); --fibaro:debug("force turnOff"); end end fibaro:sleep(5*60*1000); end else local currentTime = tonumber(os.date("%H%M")); local startSource = fibaro:getSourceTrigger(); if ( ((currentTime >= tonumber(string.format("%02d%02d", "11", "00"))) and (currentTime <= tonumber(string.format("%02d%02d", "19", "00")))) or startSource["type"] == "other") then deviceControl(humidityTargetValue); end end Une autre scène nous préviens grâce à la mesure de consommation du wall plug lorsque le déshumidificateur est plein 4
Domodial Posté(e) le 31 décembre 2013 Signaler Posté(e) le 31 décembre 2013 Si tu tire un tuyau jusqu'a l'égout du coup tu t'en fou Pas mal ce désumid !
Krikroff Posté(e) le 31 décembre 2013 Auteur Signaler Posté(e) le 31 décembre 2013 Il va finir dans mon cellier pour la régulation avec petite évacuation dans le vide sanitaire et hop ! Bon pour cela il faut que je finisse les travaux de rénovation ...
bib60 Posté(e) le 1 janvier 2014 Signaler Posté(e) le 1 janvier 2014 Une autre scène nous préviens grâce à la mesure de consommation du wall plug lorsque le déshumidificateur est plein Salut à‡a se traduit comment ? Il consomme plus quand il est plein ? Tu fais une correction de -8, c'est pour ton capteur d'humidité qui n'est pas bien calibré ? L’hystérésis, ça sert à quoi ? Merci
Krikroff Posté(e) le 2 janvier 2014 Auteur Signaler Posté(e) le 2 janvier 2014 C'est exactement cela, la variable sensorValueCorrection corrige le ST814 et hysteresis n'est pas utilisé pour le moment dans le script, son usage sera de limiter les "start/stop".
Arnaud78 Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 Bonjour Krikroff, As-tu modifié ton script avec l'intervention de l'hysteresis ? car j'aime bien l'idée du script, mais je pense que dans mon cas, le déshumidificateur va démarrer et s'arrêter toutes les 5 minutes. Merci.
Krikroff Posté(e) le 4 avril 2014 Auteur Signaler Posté(e) le 4 avril 2014 Non pas encore , après tu utilises quoi comme détecteur d’humidité et dans quelle pièce ? Moi je l'utilise actuellement dans une grande chambre et j'ai 1 a 2 déclenchements par jour en hivers et presque pas en belle saison je ne ressens donc pas le besoin du hysteresis actuellement. Après le paramétrage de mon ST814 aide peut-être aussi, il est long àla détente le petit !
Steven Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 Sinon, c'est vite fait if (humidityValue > (targetValue + hysteresis)) thenet elseif (humidityValue < (targetValue - hysteresis)) thenAinsi si la targetValue est de 60% et l'hysteresis de 2% le système s'enclenchera quand on sera à 62% et s’arrêtera à 58%. C'est une gestion très simpliste de l’hystérésis mais largement suffisant. Krikroff es-tu d'accord avec cela ?
Arnaud78 Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 Pièce : Au sous sol (dont 1 partie légèrement enterrée). Déshumidificateur : EDS50 ( WOODS - Deshumidificateur professionnel Blanc - ED50 ). il a la particularité de vider directement dehors et d'avoir une sonde dite mécanique. En gros on ne perd jamais la valeur après coupure de courant. ​ Sonde : ST814, et oui je suis complètement d'accord avec toi, il faut obligatoirement les décaler car comparer à des Oregon il y a au moins 8 à 10% d'écart à environ 60% d'hygrométrie. J'ai fait un paquet de test, je dois avoir 4x ST814 et une dizaine d'Oregon. Il n'y a pas photo, je serais Oregon, je me mettrais au Z-Wave. En gros en ce moment, c'est une pièce d'écoute/ciné et le déshumidi se déclenche toutes les 30 minutes pendant 5 minutes car je n'ai pas la possibilité de lui changer sa différence d'intervention. Je pense que l'hysteresis me permettrait de lui dire de démarrer à + de 65% et de s'arrêter à 55% et non de démarrer à 61% et de s'arrêter à 59%. Je pense que tu as compris l'idée.
Arnaud78 Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 @Steven : Désolé j'étais en train de rédiger et n'ai pas vu ton message. Mais ouais c'est exactement ce que je recherche.
Krikroff Posté(e) le 4 avril 2014 Auteur Signaler Posté(e) le 4 avril 2014 @Steven, oui c'est exactement cela la mise en œuvre de l'hystérésis
Arnaud78 Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 Je viens de le mettre en place, je vous ferais par de mon expérience d'ici quelques jours. Merci à tous les deux.
Arnaud78 Posté(e) le 4 avril 2014 Signaler Posté(e) le 4 avril 2014 Heu?! C'est moi, ou il y a un problème de nom de variable entre targetValue et humidyTargetValue ?
forumAD Posté(e) le 17 novembre 2014 Signaler Posté(e) le 17 novembre 2014 Malheureusement que ce post intéressant s'est arrêté. Quelqu'un peut nous fournir le script qui fonctionne? Merci àvous
Krikroff Posté(e) le 17 novembre 2014 Auteur Signaler Posté(e) le 17 novembre 2014 Outch, déterrage de post... @Arnaud78, non il n'y a pas de confusion, targetValue n'est disponible que dans la fonction deviceControl et humidityTargetValue la variable à configurer @forumAD, le code fonctionne logiquement JC
forumAD Posté(e) le 17 novembre 2014 Signaler Posté(e) le 17 novembre 2014 @krickroff, merci; donc je peux utiliser le code que tu as mis dès le début ? Ou tu as apporté quelques améliorations?
Krikroff Posté(e) le 18 novembre 2014 Auteur Signaler Posté(e) le 18 novembre 2014 Tu peux utiliser le code Envoyé de mon iPhone àl'aide de Tapatalk
forumAD Posté(e) le 18 novembre 2014 Signaler Posté(e) le 18 novembre 2014 @krikroff; Merci beaucoup. Je me met à l’Å“uvre; Tout ton script a été adapté à mon cas Avant de commencer j'aimerais encore m'assurer si mon déshumidificateur pourra faire l'affaire; Dans le manuel, voici ci-dessous, ce qui m'inquiète un peu: ----- 5.2 HygrostatL'appareil dispose d'un hygrostat permettant de régler une valeur d'humidité souhaitée. L'hygrostat actionne le déshumidificateur lorsque l'humidité ambiante dépasse la valeur réglée. Si la valeur d'humidité passe en dessous de cette valeur, l'hygrostat arrête l'appareil.L'hygrostat permet de régler les modes de fonctionnement suivants :• Marquage min (zone bleue) : l'appareil se trouve en mode de fonctionnement minimal.• Marquage éco (zone verte) : l'appareil se trouve en mode de fonctionnement normal.• Marquage max (zone rouge) : l'appareil se trouve en mode de fonctionnement permanent. ----- Je joins le manuel du déshumidificateur. Tu crois qu'il y a une adaptation à faire dans le code? Merci de ton précieux support; Manual secco30.pdf
Krikroff Posté(e) le 19 novembre 2014 Auteur Signaler Posté(e) le 19 novembre 2014 Il faut mettre l'appareil en mode de fonctionnement permanent et c'est le HC2 qui décidera d'allumer ou d'éteindre le deshumidificateur en fonction du retour de la sonde du ST814. Envoyé de mon iPhone àl'aide de Tapatalk
forumAD Posté(e) le 19 novembre 2014 Signaler Posté(e) le 19 novembre 2014 @krikroff;; Encore une fois, Merci pour ton support; J'ai un autre besoin qui ressemble pas mal à celui-ci (J'avais déjà lancé le sujet sur un post "Pilotage Ventilateur Helios M1/100Nc":) J'aimerais sur la base de ton script en lua faire ma même chose mais avec un ventilateur de salle de bain. En effet, j'aimerais en fonction du taux d'humidité dans la salle de bain (contrôle par le ST814), déclencher la ventilation. Par exemple: A chaque fois que Tx > 85% alors Ventilateur en marche jusqu'à Tx < 65%. Un "nice to have" serait aussi de pouvoir mêttre en marche manuellement indépendemment de la scène depuis l'application Fibaro sur iphone; Pour çette appli, j'aimerais utiliser : node-13 : FGS-211 "Relay Switch 1x3kW" (qui sera plaçer dans l'interrupteur de commande de la ventilation Helios) node-4: 1x ST814 Tout ceci indépendamment du jour ou de l'heure. Merci d'avance;
Krikroff Posté(e) le 19 novembre 2014 Auteur Signaler Posté(e) le 19 novembre 2014 Il n'y a pas de problème c'est tout àfait faisable Envoyé de mon iPhone àl'aide de Tapatalk
Messages recommandés