Gérez l’humidité de votre maison !

Rédaction le 16/01/2019

Changement de registre … puisque nous allons nous appuyer ici sur le couple mesure d’humidité (et de température) ainsi qu’un pilotage de votre (vos) VMC. J’en profiterai pour présenter une première interaction par scénario possible entre Jeedom et vous !

Pré-requis :

  • un module Chacon de pilotage de votre VMC type ON/OFF ;
  • le plugin RFXCOM le cas échéant ;
  • des capteurs d’humidité par pièce ou zone (pour ma part, je m’appuie sur le couple Xiaomi Gateway + capteur Xiaomi génération 1 température/humidité) ;
  • les plugins Widget et Virtuel à disposition ;
  • le plugin Mode (facultatif) ;
  • une VMC !

Le matériel nécessaire

Dans le cas d’une VMC simple flux à simple ou double vitesse, j’ai simplement modifié l’alimentation de cette dernière par :

  • l’interrupteur de vitesse positionnée en seconde vitesse pour accélérer l’extraction d’air ;
  • après avoir coupé l’électricité le temps de l’opération, j’ai coupé le fil neutre et phase pour intercaler un module Chacon 54755 :

Module DIO Chacon 54755

Voir la vidéo d’installation :

Plutôt qu’un long discours…

Dans le principe donc, ma VMC sera :

  • lors de sa mise en marche automatiquement en vitesse 2 pour favoriser une extraction rapide ;
  • ou complètement éteinte ;
  • j’ai mis un module par VMC, ayant 1 VMC par étage dans notre maison.

Second point, la surveillance de l’humidité des pièces. Pour ma part, je me suis appuyé sur l’éco-système Xiaomi qui possède plusieurs intérêts :

  • faible prix ;
  • rapport qualité/prix imbattable ;
  • longue portée par la construction d’un réseau maillé fiable (en cas de défaut d’un capteur, le réseau est toujours debout) ;
  • maillage possible par plusieurs passerelles ;
  • capteurs à longue autonomie (entre 14 et 18 mois dans mon cas) ;
  • très bonne stabilité de mesure observée.

J’utilise donc dans le cas de Jeedom, le plugin Xiaomi payant, vous trouverez des tutoriels complets pour activer le mode développeur de vos Gateways et remonter les informations de vos capteurs dans votre Jeedom. Ne vous attendez pas à trouver un énième tutoriel du Web pour ça…

Tutoriel 1

Le fil du plugin Xiaomi sur le forum

La documentation du plugin

Je vous recommande l’achat en import depuis la Chine (Aliexpress, Gearbest, Joybuy, etc) ce qui permet d’avoir un prix particulièrement intéressant (il ne faut juste pas être pressé !).

La passerelle version 2 (la version 3 n’est pas supportée pour Jeedom) permet de :

  • d’allumer un bandeau lumineux (notification, code d’alarme, etc) ;
  • jouer des sons pré-enregistrés ou que l’on enregistre soi-même ;
  • de collecter les données des capteurs qui sont sur réseau Zigbee d’où le nom de passerelle – c’est un noeud intermédiaire entre votre Wifi et le réseau Zigbee des capteurs.

Passerelle Xiaomi V2

Ces passerelles ayant une prise au format Chine, je vous recommande un adaptateur de prise CH/EU fin et surtout fiable (oubliez les adaptateurs à 1€) de ce type :

Skross adaptateur prise fin

Une autre alternative à la mise en forme du réseau Zigbee vers votre réseau est l’utilisation d’une clé Zigate. Plus d’informations sur le site du projet :

Projet Zigate – passerelle Zigate multi-marques

Ainsi vous pouvez utiliser des capteurs de température Xiaomi V1 (température/humidité) ou Xiaomi V2 (marque Aqara) (température/humidité/pression atmosphérique).

Recherche Amazon Capteurs Xiaomi temperature – humidité

Aussi, une autre alternative est l’utilisation de capteurs 433 MHz de mesure de température / humidité. Les prix sont tout autre, l’encombrement aussi !

Gamme Oregon

Capteur générique 1 compatible RFXCOM

Capteur générique 2 compatible RFXCOM

Dans mon cas, j’ai positionné des capteurs de température – humidité aux endroits où les bouches de VMC sont présentes mais à des endroits suffisamment “fiables” pour éviter une influence de la chaleur du soleil ou d’une fenêtre.

J’ai donc pour le premier étage, une mesure pour chaque zone où l’humidité est importante :

  • une mesure pour la cuisine (1 bouche de VMC) ;
  • une mesure pour la salle de bains (1 bouche de VMC) ;
  • une mesure pour les WC (1 bouche de VMC) ;

Mais j’ai aussi une mesure dans les autres pièces (salon, chambre, bureau etc).

De même pour le rez-de-chaussée, une mesure pour chaque zone où l’humidité est importante :

  • une mesure dans la chambre d’ami (1 bouche en surpression) ;
  • une mesure dans les WC (1 bouche de VMC) ;
  • une mesure pour la salle d’eau (1 bouche de VMC).

Mais j’ai aussi une mesure dans les autres pièces (entrée, chambre de notre fils etc).

Je mesure aussi l’humidité extérieure au niveau de chaque bouche de sortie au RDC ou en toiture. Vous verrez pourquoi !

Surveillance des pièces où le taux d’humidité est primordial
Surveillance globale de la maison (température et humidité)

Je calcule dans un virtuel les grandeurs suivantes :

  • minimum de la maison ;
  • maximum de la maison ;
  • moyenne de la maison ;
  • minimum d’extérieur ;
  • maximum d’extérieur ;
  • moyenne d’extérieur …
Calcul du min, max, moyen par zone

La gestion sous Jeedom

J’utilise le plugin “mode” pour simplifier la gestion. En effet, 2 modes créés, un pour la VMC du RDC, un pour la VMC du 1er étage. Je ne montre que le principe pour le premier étage, mais vous l’aurez compris, c’est pareil pour le RDC !

Création d’un mode par VMC (étage)

Là, dessus, j’ai donc créé à chaque fois, 4 modes :

  • arrêt total qui signifie l’arrêt de la VMC ;
  • automatique qui signifie que la VMC se gère toute seule en fonction de l’humidité des pièces ;
  • marche forcée qui fait tourner la VMC sans lien avec l’humidité environnante ;
  • 30 min qui fait tourner la VMC 30 min et la repasse en automatique ensuite.

A chaque fois, je n’ai qu’une action d’entrée … un scénario correspondant ! Donc 4 scénarios ;).

4 modes, 4 scénarios de gestion

Et on fait quoi maintenant ? Je vais piloter ce mode de ma VMC du 1er étage par un virtuel de gestion. Comme d’habitude !

Virtuel de gestion de la VMC
  • l’état du capteur DIO qui pilote la VMC (recyclage 1er) ;
  • le mode en cours ;
  • la commande “SetDepuis” permet de mettre à jour l’information “depuis” du dernier changement. Pour que cela se mette à jour tout seul, ajoutez une action après l’appui pour toutes les commandes (arrêt total, régulation, marche forcée, 30min, depuis etc) :
Un appui mettra à jour l’information “SetDepuis” avec la date/heure de la dernière modification
  • 1 commande par mode défini précédemment : arrêt total, régulation (auto), marche forcée, 30 minutes.

Petite astuce pour avoir une belle animation “recyclage”, vous pouvez appliquer le widget “VMC_rotate” que vous allez créer avec ce code (vous pouvez modifier la couleur green ou red si elle ne vous convient pas) :

<div style="width:90px;min-height:90px;" class="cmd #history# tooltips cmd-widget" data-type="info" data-subtype="numeric" data-cmd_id="#id#" title="#collectDate#">
    <center>
        <span style="font-size: 3em;font-weight: bold;" id="iconCmd#id#"></span>
    </center>
    <script>
        if ('#state#' == '1' || '#state#' == 1) {
            $('#iconCmd#id#').append('<i class="fa fa-refresh fa-spin" style="font-size:40px;color:green;"></i>');
        }
        if ('#state#' == '0' || '#state#' == 0) {
            $('#iconCmd#id#').append('<i class="icon fa fa-times" style="font-size:40px;color:red;"></i>');
        }
    </script>
</div>
Widget animé pour la VMC

Et du côté des scénarios ? On y va dans l’ordre …

La marche pour 30 minutes

Pour 30 min si la VMC est déjà en marche, je l’arrête ! (l’intérêt est l’arrêt manuel par bouton par exemple ou clic sur design)

J’utilise un premier scénario “VMC 1er étage manuel 30 min” qui est activé par le mode du même nom. Voici le principe de fonctionnement :

  • Si la VMC était déjà en marche, je le notifie par Telegram et/ou TTS. Je l’éteins donc et j’active les autres scénarios : marche forcée VMC 1er, arrêt VMC 1er, mode auto VMC 1er, régulation VMC 1er et je repasse la VMC en automatique !

Mémo : le scénario ON (mise en marche de la VMC) n’est qu’un appui sur la commande DIO. L’intérêt est d’avoir un scénario qui ne commande pas directement le module DIO RFXCOM mais un virtuel ou scénario lié ! Plus pratique en cas de remplacement d’un module.

Sinon, c’est que je veux lancer un ON/OFF pour 30 minutes
  • Sinon Si la VMC n’était pas en marche, on peut donc programmer une mise en marche (on désactive les scénarios d’autres modes, on notifie et on programme un arrêt puis repassage en auto et réactivation des scénarios dans 30 minutes) …

Le mode arrêt

Plus simple – un autre scénario “Marche Forcée VMC 1er” ! On arrête et désactive les scénarios de gestion auto, on lance le scénario d’arrêt (qui n’est qu’un OFF sur le capteur DIO comme pour le ON précédent) et on notifie en TTS.

Arrêt total de la VMC

Le mode marche forcée

Même principe que précédemment, sauf qu’ici j’active la VMC …

Marche forcée de la VMC

Le mode automatique

Là j’utilise deux scénarios. Le premier “Mode Auto VMC 1er” est celui qui est lancé par le mode du même nom. Je stoppe par défaut la VMC quelque soit son état puis j’active un scénario de gestion automatique qui prend le relais et pilotera la VMC !

Le scénario de pilotage du mode auto

Le second est celui qui pilote la VMC au quotidien (hors demande de mise en marche pour 30 minutes ou forcée) “Régulation VMC 1er”. Ce scénario se lance toutes les 5 minutes et il est activé / désactivé par tous les scénarios précédents. Il faut donc ajouter le champ programmation suivant : */5 * * * *

J’utilise des variables que j’ai affinées pour régler au mieux la mise en marche automatique :

  • variable(TempExt_max) qui définit la température maximale extérieure à 30°C – permet d’éviter de faire rentrer de l’air trop chaud ;
  • variable(TempExt_min) qui définit la température minimale extérieure à 3°C – permet d’éviter de faire rentrer de l’air trop froid ;
  • variable(HumExt_max) qui définit l’humidité extérieure maximale à 85% – permet d’éviter de faire rentrer de l’air trop humide ;
  • variable(Humi1er_max) qui définit l’humidité intérieure des pièces qui déclencheront un lancement de la VMC – à 75% ;
  • variable(Humi1er_min) qui définit l’humidité intérieure des pièces qui stoppera la régulation – à 70% ;
  • Note : mes variables du RDC sont différentes – 60/65% pour l’encadrement de l’humidité.

La condition du premier IF qui lance une régulation est alors :

(

#[Capteurs et Actionneurs][Nord Extérieur][Température]# < variable(TempExt_max)

ET

#[Capteurs et Actionneurs][Nord Extérieur][Température]# > variable(TempExt_min)

)

ET

#[Capteurs et Actionneurs][Terrasse Extérieur][Humidité]# < variable(HumExt_max)

ET

(

#[Capteurs et Actionneurs][Salle à Manger][Humidité]# > variable(Humi1er_max)

OU

#[Capteurs et Actionneurs][Salon][Humidité]# > variable(Humi1er_max)

OU

#[Capteurs et Actionneurs][Salle de Bains][Humidité]# > variable(Humi1er_max)

)

ET

(

#[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]# == 0

ET

lastChangeStateDuration(#[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]#,0) > 7200

)

Il faut donc que la température extérieure soit inférieure au maximum autorisé ET supérieure au minimum autorisé ;
Il faut qu’on soit inférieur à l’humidité maximale ;
Il faut bien sûr que l’humidité dans une pièce où une bouche est présente soit supérieure à l’humidité autorisée ;
Que la VMC ne soit pas déjà en marche et qu’elle n’ait pas tourné depuis 2h … (vous pouvez réduire mais cela permet d’éviter les phénomènes de rebond

Ensuite je traite le cas où la régulation est KO pour une cause extérieure, comment ?

[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]# == 1

ET

(

#[Capteurs et Actionneurs][Nord Extérieur][Température]# > variable(TempExt_max)

OU

#[Capteurs et Actionneurs][Nord Extérieur][Température]# < variable(TempExt_min)

OU

#[Capteurs et Actionneurs][Terrasse Extérieur][Humidité]# > variable(HumExt_max)

)

L’IF est sur les conditions suivantes :
– la VMC tournait déjà ET ;
– la température extérieure est devenue trop importante OU trop basse ;
– OU l’humidité extérieure trop importante.

Je notifie un KO.

Le cas contraire, tout s’est bien déroulé. Là :

[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]# == 1

ET

#[Capteurs et Actionneurs][Salle de Bains][Humidité]# < variable(Humi1er_min)

ET

(#[Capteurs et Actionneurs][WC 1er][Humidité]# < variable(Humi1er_min))

ET

(#[Capteurs et Actionneurs][Cuisine][Humidité]# < variable(Humi1er_min))

L’IF est sur les conditions suivantes :
– la VMC tournait déjà ET ;
– l’humidité dans TOUTES LES pièces est redevenue OK.

Je notifie un OK.

Personnellement, j’ai fait le choix de ne pas autoriser un recyclage de plus d’une heure … (c’est aussi la raison du 7200 secondes dans le premier IF). Si vous souhaitez faire de même, le dernier IF sera :

[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]# == 1

ET

lastChangeStateDuration(#[Capteurs et Actionneurs][Module DIO VMC 1er][Recyclage]#,1) > 3600

Je coupe et j’indique un fin KO si ça a tourné plus d’une heure (soit 3600 secondes à l’état 1)

Notez que j’ai activé la non-répétition pour éviter des lancements récurrents. Il faut donc qu’une autre condition s’exécute (par exemple si j’ai une régulation en cours, je ne pourrais sortir que si KO par temps dépassé, KO par environnement ou OK !).

Le scénario de régulation automatique

Ce qui vous donnera des notifications par exemple lors de la douche quotidienne :

Suivi de l’humidité via notifications

Interactions

Petit bonus pour montrer une autre utilisation de Jeedom ! Les interactions …

Un scénario qui se lance toutes les 5 minutes (programmé avec */5 * * * *) va me demander si l’humidité est trop importante ET si la VMC est totalement arrêtée donc dans le mode arrêt total (rare mais possible) si je veux repasser en mode auto… Cela me permet d’éviter le JOUR où j’oublierai de mettre la VMC en auto… jamais arrivé, mais on ne sait jamais.

Le principe est :

  • je teste de manière non-répétée (pour éviter d’envoyer sans cesse des questions) ;
  • si je suis hors plage dans une pièce de l’étage concerné (je passe par le variable(Humi_Notif) fixée à 75% ;
  • pour l’heure je pose la question par ask et Telegram que je sois là ou pas mais à terme ce sera par Telegram en absent ou Snips si présent (d’où la condition OU avec 1 et 0 pour la présence)
  • Si on répond OUI dans un délai de 3 min (180 secondes) alors je repasse en auto ;
  • Si je ne réponds pas ou que je réponds NON alors je notifie …

A noter que le Telegram est donc commun à moi-même ou madame. Le premier qui répond a gagné 🙂 !

Interaction pour la gestion de l’humidité

Un article qui vient conclure un second automatisme possible (après le ballon d’eau chaude). Pour ma part, je l’utilise depuis bientôt 2 ans sans encombre. N’oubliez pas qu’ici je vous ai présenté une VMC, mais vous pouvez en mettre autant que vous avez. Cet article a permis de présenter un nouveau widget et le principe de modification des icônes pour vos virtuels !

La conclusion de cet article

Si vous avez aimé cet article, remerciez-moi en considérant une petite donation financière par Paypal. Cela prend du temps de rédiger et de partager ce contenu, sans publicité !

Merci à vous ! 🙂

One thought on “Gérez l’humidité de votre maison !

  1. Bonjour,
    Très bon article.
    Juste une petite remarque, il manque toujours l’onglet “Général” dans les scénarios.
    On ne voit que la partie scénario.
    Serait-il possible de compléter avec ça ?

    1. Bonjour, sincèrement, non. La raison est assez simple, j’explique toujours la condition de déclenchement et cela fait parti aussi de la démarche intellectuelle pour le lecteur.
      Si c’est un peu plus compliqué, je prends le temps de donner la condition, le cron. Donc sauf si vous avez une difficulté particulière – dans ce cas, posez la question dans les commentaires – je ne vais pas doubler chaque photo de scénario avec la page général où il n’y a qu’une info de déclenchement qui est propre à mon capteur. Pour peu que vous utilisiez autre chose (RFXcom, Xiaomi, Zwave etc), cela n’a que très peu d’intérêt. Bon weekend !

  2. Bonjour,
    Petite question, pas de problème de condensation, au niveau de l’aspiration des bouches d’aspiration de VMC, l’hiver du fait de l’arrêt pour des températures inférieures à 3° ?
    Problème que j’ai rencontré.

      1. Bonjour,

        Très bon article. Tout est fonctionnel de mon côté grave a toi.

        Petite question, si tu devais rajouter la gestion du taux de CO2 en plus, tu verrais ça comment ? En effet si la Vmc est coupée trop longtemps alors qu’une pièce est bien remplie tu peux avoir le niveau de CO2 qui grimpe en flèche

        1. Il existe des capteurs co2 en rfxcom de mémoire. Sinon passer par un esp easy.

          Pour ma part, peu d’importance car on aère relativement souvent toutes les pièces.

          D’ailleurs je dois ajouter un widget pour m’indiquer depuis quand cela n’a pas été aéré.

          J’ai déjà une surveillance en particulier pour la température quand on aère.

          Apres il faut prévoir une gestion par hysteresis comme celle de l’humidité. C’est tout. Une valeur min, une max. On active sur min, on coupe sur max.

  3. Bonjour,

    Je découvre ton blog (et la domotique, jeedom, etc…) et je te tire un grand coup de chapeau. Super articles ! Ton sujet sur la gestion de l’humidité m’a beaucoup intéressé du coup j’ai creusé un peu sur le net à quoi correspondait au juste le taux d’humidité qu’on mesure. C’est un peu plus complexe que je ne le pensais.

    Sauf erreur, la règle qui coupe la VMC quand l’air extérieur est > 85% n’est pas correcte car elle ne prend pas en compte la température extérieure. Les 2 sont liées pour évaluer l’humidité qui rentre. 85% d’humidité sur un air à 3 °C contient moins d’eau qu’un air à 20 °C avec 50% d’humidité.

    J’ai trouvé une explication assez claire dans un ppt sur le site http://www.devatec.com : “L’air chaud a la propriété de pouvoir contenir plus d’eau que l’air froid. Par exemple, 1 mètre cube d’air à 21°C peut contenir 18,8 g d’eau. Le même mètre cube d’air à 0°C ne contient plus que 4,9 g d’eau.
    Si 1 mètre cube d’air à 0°C contient 3,6 g d’eau, son humidité relative est de 75%. Si le système de chauffage réchauffe cet air à 21°C sans apport de vapeur d’eau, il contiendra toujours 3,6 g d’eau. Toutefois, à 21°C, 1 mètre cube d’air peut contenir 18,8 g d’eau. Les 3,6 g qu’il contient effectivement lui confèrent une humidité relative d’un peu plus de 19%. Ce qui est beaucoup plus sec… que le désert du Sahara !”

    Il y a un simulateur pas mal pour s’en rendre compte sur le site http://www.cactus2000.de/fr/unit/masshum.shtml. Pour info (et pour les matheux), un lien en bas de page donne les formules de calcul utilisées dans le simulateur. En les utilisant, cela permet de déterminer en fonction des températures et taux d’humidité intérieur/extérieur si tu assèches ou humidifie ta maison en mettant la VMC à ON.

    Encore un grand merci pour le travail que tu réalises. Je m’en vais dévorer tes autres articles 😉

    1. Bonjour….. Et merci !
      Merci et merci.
      C’est grâce à des gens comme toi que je continue à écrire des articles malgré un temps libre réduit et qui se réduit.
      Par contre je suis à peu près sûr que je tiens compte de la température extérieure pour couper la ventilation (3 degrés de mémoire).

      Je vais relire mon code et article. Le code tourne depuis bientôt 3 ans…

  4. Bonjour,

    c’est très intéressant et je cherche à faire cela.
    Tu pourrais donner un schéma de câblage de l’interrupteur et du module de manière à ne pas faire d’erreur STP?

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *