URL: https://linuxfr.org/users/jobpilot/journaux/r%C3%A9gulation-sous-linux-dun-vieux-chauffage Title: Régulation sous linux d'un vieux chauffage Authors: Ecran Plat Date: 2012年01月02日T15:47:23+01:00 License: CC By-SA Tags: domotique, chauffage, diy, ubuntu et suisse Score: 48 Prologue ======== En août 2011 nous avons acheté (enfin avec l'aide la banque) une jolie maison dans un village en agglomération d'une petite ville de Suisse Romande (Delémont). La maison est dans un quartier très calme qui a été construit dans les années 1970. Courant octobre nous nous sommes interressés au chauffage, en effet il est d'origine et il devra être changé en 2017 (il ne sera plus au norme). C'est un chauffage central avec brûleur à Mazout, le circuit d'eau de chauffe est en monotube (une particularité des année septante), les radiateurs sont équipés de vannes thermostatiques. Après un essai du chauffage (lors d'un froid passager en octobre) il s'est averé que les vannes thermostatiques étaient cuites. Elles ne fonctionnaient plus, donc plus de régulation de la température. Nous avons fait venir un installateur sanitaire que nous connaissons (on a confiance en lui) et lui nous a appris que les vannes étaient intégrées dans les radiateurs (économie stupide dans les années septante), il faut changer les radiateurs pour en mettre des modèles standard ou, on pourra changer les vannes dans le future. Comme les finances sont actuellement à un niveau bas (ça coûte une maison). je me suis demandé si je pourrais pas réguler le chauffage différemment et à bon marché. Le principe de la régulation ============================ Comment réguler mon vieux chauffage, je ne peux pas piloter la vanne trois voies, elle n'est pas motorisée, donc je me suis dis que j'allais faire ma régulation sur le circulateur (la pompe qui envoie l'eau chaude dans les radiateurs). Je mesure la température en dehors et au salon, si la température dehors est à plus de 18°C je désactive mon chauffage. Pour la température intérieure j'ai deux modes, le mode présent et le mode absent. En mode présent si la température descend en dessous de 20°C je chauffe (je mets sous tension mon circulateur) dès qu'elle passe en dessus de 21°C je coupe le jus au circulateur. En mode absent c'est 17°C et 18°C. Le salon est la pièce de vie la plus basse de la maison (en dessous il y a mon bureau où la température arrive à 18°C ça me convient parfaitement ), les chambres à coucher et salle de bain sont un demi-étage plus haut. Le salon est la plus grande pièce il y a également la cuisine et la salle à manger. Donc s'il fait bon au salon, il fait automatiquement bon dans les chambres (la vanne de notre chambre à coucher est la seule qui fonctionne donc elle est fermée en permanence). Nous avons nous même programmé le chauffage pour qu'il repasse en mode présent 30min avant qu'on se lève. Mise en oeuvre ============== Le matériel utilisé ------------------- - Un Zotac Zbox (un atome dedans) qui me sert de serveur multi-média (subsonic, xbmc ...) sous ubuntu 10.10. - Un Telldus duo (pour émettre) - Un Rfxcom usb receiver (pour recevoir) - Des sondes Orégon scientific (pour mesurer la température) - Des interrupteurs sans fils (j'ai du chacon et de l'intertechno) - une télécommande sans fils intertechno (pour executer des scripts sur le pc) ### Pourquoi avoir mis un telldus duo et un rfxcom ? Effectivement le telldus duo a un récepteur interne, mais c'est une calamité avec mes sondes orégon, il n'en recevait qu'une et par intermittence, donc inutilisable. les logiciels utilisés ---------------------- - GNU/linux Ubuntu 10.10 - TelldusCenter pour envoyer des ordres à l'émetteur - XPL-Perl pour recevoir les infos depuis le récepteur - PHP-CLI pour la régulation (je l'ai écrite en php) - Apache pour afficher les graphes et ma télécommande html pour mon android (j'en ai profité pour domotiser quelques truc secondaire) - RDD et Mysql pour la partie statistique (Rdd fait de joli graphe) (Mysql enregistre tous ce qui concerne le chauffage pour d'hypothétique statistique futur) - Cron pour automatiser la création des graphes tous les 5 minutes, lancer le script php de régulation tous les 2 minutes, et passer le chauffage en mode absent la nuit (pendant les fêtes il allumait les décorations de Noël) ### Pourquoi avoir utilisé php ? C'est le seul language que je maîtrise bien, et j'ai l'habitude d'utiliser php-cli pour plein de petits scripts fait maison au taf . Difficultés rencontrées: ----------------------- C'est le manque de documentation, sur les forums francophones ça ne jure que par la Zibase (un truc qui est obligé de discuter avec les serveurs de la maison du fabricant pour fonctionner) ou homeway (un soft propriétaire sous windows beurk). La documentation de xpl-perl est minimaliste, oui c'est bien expliqué comment acquérir les données que le rfxcom reçoit; mais après que faire avec une fois que les données sont transformées en trame xpl ? Il y a des scripts pour faire des graphes rrd, d'autre pour engraisser une base de données mysql. J'ai pris le script xpl-logger, je l'ai modifié pour que à chaque trame qu'il reçoit il me lance un script php avec la trame dans une variable. Dans mon script php j'analyse le contenu, si c'est une de mes sondes de température, j'enregistre la valeur mesurée dans un fichier plat (que j'écrase à chaque fois) ces fichiers seront utilisés par mon script de régulation. J'enregistre également la valeur dans une table mysql avec le timestamp actuel. Si c'est un bouton de ma télécommande, je lance la commande voulue. ### Pourquoi n'avoir pas utilisé un logiciel comme Domogik ou heyu ? Pour deux raisons: 1) Domogik : je suis pas arrivé à le lancer bon j'ai pas insisté à cause de la raison deux 2) Ca fait des années que je bricole avec php, j'ai fait du web, j'ai écrit des applications web pour des clients, mais j'avais jamais reussi à faire quelque chose qui sort de l'informatique, mes scripts php sans web c'est rien ils servent à rien d'autre et c'est frustrant, j'avais envie une fois de faire quelque chose qui pilote quelque chose de réel, alors programmer un thermostat c'était l'idéal. Épilogue ========= Ca fait deux mois que ça tourne et cela fonctionne parfaitement bien, il fait toujours bon dans la maison, les graphes montrent que la maison est bien isolée (elle perd pas beaucoup durant la nuit) même par grand froid le circulateur ne s'est jamais enclenché pendant la nuit. Les anciens propriétaires brûlaient 2500 litres de mazout par année, nous en 6 mois on à brûlé 600 litres (j'espère pouvoir économiser 700 l), Au niveau consommation électrique, l'informatique consomme environ 30w, le circulateur 60w quand il tourne donc le bilan est positif. J'espère n'avoir pas trop fait de faute d'orthographes, je me suis relu quelques fois (le français est ma plus grande faiblesse, hélas). **NdM** : je suis passé rapidement pour corriger les plus grosses fautes