Sélectionnez la langue anglaise pour lire la version mise à jour de cet article !
Introduction
Cet article montre comment gérer la pompe à chaleur et le système de ventilation (CVC) avec le logiciel open-source Domoticz installé sur un Rock PI S ou Raspberry PI (mais tout autre matériel devrait convenir), pour utiliser au maximum l'énergie provenant de sources renouvelables (système photovoltaïque dans ce cas) réduisant ainsi la facture d'électricité .
Tout d'abord, un bâtiment intelligent ne doit pas être équipé de thermostats pour réguler la température ambiante , car ils ne sont généralement pas aussi intelligents qu'un contrôleur domotique. Il est préférable d'avoir un capteur de température (et d'humidité) dans certaines pièces et de modifier la température de l'eau de sortie pour obtenir le meilleur confort et la consommation d'énergie nécessaire .
Contrôler un bâtiment avec système radiant avec pompe à chaleur et photovoltaïque sur le toit est un peu complexe, car plusieurs éléments doivent être pris en compte :
-
température extérieure min et max
-
températures ambiantes (et diff= différence par rapport au point de consigne)
-
variation de diff avec le temps (dérivée de diff sur le temps)
-
puissance actuelle du réseau (si elle est négative, une certaine puissance supplémentaire est disponible grâce au solaire photovoltaïque, et il est préférable de l'utiliser en augmentant la puissance de la pompe à chaleur)
-
coût de l'électricité, pour augmenter la consommation lorsque l'énergie électrique est moins chère et réduire la puissance pendant les heures de pointe (généralement de 7 à 9 heures du matin et de 18 à 21 heures du soir) pour contribuer à la stabilité du réseau électrique !
- prévision de l'énergie solaire, il est donc possible de réduire la puissance de la pompe à chaleur le matin ou la nuit au cas où il y aurait suffisamment d'énergie photovoltaïque pour compenser le temps d'arrêt de la pompe à chaleur.
L'objectif est d'obtenir une température confortable dans toutes les pièces, en réduisant éventuellement la température lorsque les pièces ne sont pas utilisées et en surchauffant le bâtiment, en hiver, lorsque de la puissance supplémentaire provenant du photovoltaïque est disponible : si la consigne est de 21°C mais qu'une puissance supplémentaire provenant du photovoltaïque est disponible, la consigne peut être augmentée dynamiquement à 21,5 ou 22°C par exemple.
C'est pour cette raison que les capteurs de température/humidité dans certaines pièces sont préférés aux thermostats manuels !
Il s'agit d'une carte très compacte, DomBusTH , qui peut être utilisée avec Domoticz, Home Assistant, ..., avec un capteur de température et d'humidité , un capteur tactile (faisant office de bouton poussoir multifonction), des LED Rouge+Vert+Blanc (pour les notifications), 4 entrées (capteurs d'alarme, boutons poussoirs, ...) et 2 sorties (pouvant être connectées à un relais externe, par exemple pour piloter un volet roulant HAUT/BAS). Ceci n'est qu'un avantage pour notre produit, mais il est bien sûr possible d'utiliser n'importe quel capteur de température à cet effet !
Domoticz prend en charge plusieurs langages de script, et le script LUA a été choisi dans ce cas car très clair, il est donc facile à apprendre, à utiliser et à personnaliser.
Sur GitHub https://github.com/CreasolTech/domoticz_lua_scripts, il est possible de trouver l'exemple script_time_heatpump_emmeti.lua pour contrôler EMMETI Mirai SMI EH1018DC par Modbus, en réglant la température de l'eau de sortie et la puissance du compresseur. Le script est vraiment compliqué car personnalisé pour les besoins d'un bâtiment spécifique, il est donc suggéré de commencer par quelques règles simples pour réaliser une automatisation, puis d'adapter et d'améliorer les règles pour obtenir le comportement souhaité.
De quoi avez-vous besoin?
- un ordinateur monocarte (comme Raspberry PI, Rock PI) ou NUC ou autre mini-PC , avec au moins 1 port USB (qui peut être étendu avec un hub USB, si nécessaire)
- Système d'exploitation Linux + logiciel Domoticz. Vous pouvez également trouver une carte SD avec système d'exploitation + logiciel déjà installés et prêts à l'emploi : consultez https://store.creasol.it/19-kit pour quelques kits .
- Adaptateur USB/RS485 pas cher pour connecter la pompe à chaleur par RS485. Alternativement, il est possible d'utiliser un module WiFi-RJ45/RS485.
- adaptateur USB/RS485 pas cher, ou module WiFi-RJ45/RS485, pour connecter tous les modules DomBus par bus RS485, si besoin.
- capteurs de température
- spécificités pour votre pompe à chaleur Registres Modbus, un peu de patience et quelques compétences pour réaliser un automatisme pour piloter la pompe à chaleur .
Pourquoi Domoticz ?
Vous pouvez utiliser d'autres systèmes, comme Home Assistant, Node-RED, OpenHAB, ... Le choix de Domoticz est judicieux car il est simple, stable et permet de réaliser des automatisations complexes facilement en programmant en LUA. D'autres systèmes domotiques ne sont pas aussi polyvalents, mais ils peuvent tout aussi bien être utilisés avec quelques limitations.
Contrôle de la pompe à chaleur par ModBus
La pompe à chaleur dispose d'une entrée permettant de sélectionner la demi-puissance ou la pleine puissance : elle est principalement utilisée pendant la nuit pour réduire le bruit, en limitant la fréquence du compresseur et du ventilateur à environ 50% (la fréquence/puissance du compresseur peut être sélectionnée de 0 à 100%).
Comme la fréquence du compresseur peut être réduite, il est possible d'utiliser cette fonction pour réduire la puissance de la pompe à chaleur.
La température de l'eau est une bonne solution pour maximiser le confort de la maison, tandis que la fréquence du compresseur est parfaite pour contrôler la puissance d'utilisation.
Par défaut, la pompe à chaleur dispose d'un algorithme pour calculer la température de l'eau de sortie en fonction de la température extérieure actuelle et réguler la fréquence du compresseur (puissance) proportionnellement à la différence entre la température calculée et la température actuelle de l'eau.
L'idée est de mettre en place un meilleur contrôle de la température de l'eau de sortie en fonction :
- différence entre la température de consigne de la pièce et la température actuelle diffTemp
- dérivée de diffTemp (il est important de savoir si la différence entre la consigne et la température diminue ou augmente !)
- température extérieure minimale (maximale en été)
- puissance actuelle du système photovoltaïque (pour améliorer sa propre consommation)
- puissance de pointe du réseau électrique , pour réduire la consommation d'électricité aux heures de pointe (en début de matinée et en fin d'après-midi) : cela sert uniquement à aider le réseau électrique à éviter les pointes de puissance et les prix élevés de l'énergie
- Prévisions d'énergie photovoltaïque : si la puissance est suffisamment élevée, il est possible de limiter la puissance pendant la nuit et les heures de pointe, et d'augmenter la puissance pendant la journée. Si l'énergie photovoltaïque est insuffisante, il est préférable de maintenir la pompe à chaleur à une faible puissance pendant les heures de pointe, mais de la laisser allumée.
L'algorithme de contrôle est implémenté, dans un script LUA qui calcule la bonne valeur de la température de l'eau de sortie et de la fréquence du compresseur (puissance) , en envoyant ces paramètres par Modbus (RS485) à la pompe à chaleur en utilisant la commande mbpoll ou via un plugin pour contrôler la pompe à chaleur, s'il existe.
La pompe à chaleur RS485 est connectée au contrôleur domotique (RaspberryPI dans ce cas) par un adaptateur RS485/USB ; le module DomBus31 est également utilisé pour contrôler les entrées de la pompe à chaleur (thermostat marche/arrêt, température serpentin/radiant, chauffage/refroidissement et pleine puissance/demi-puissance).
En fait, la pompe à chaleur est toujours configurée en « mode nuit » et le script lua contrôle les deux
- température du fluide de sortie nécessaire pour avoir le bon confort dans la maison
- pourcentage de puissance du compresseur , pour réguler la puissance
Pendant la nuit, la température du fluide et la puissance sont réduites pour limiter la consommation électrique et le bruit du ventilateur/compresseur.
Durant la journée, la température du fluide et la puissance sont augmentées (température plus élevée => rendement plus élevé), à l'exception des heures de pointe du matin et du soir où il est de bonne pratique de réduire les consommations pour une meilleure stabilité du réseau électrique, et même pour économiser de l'argent.
En cas de production supplémentaire d'énergie photovoltaïque (énergie exportée vers le réseau), la température du fluide et la puissance sont augmentées pour consommer toute l'énergie photovoltaïque disponible. De plus, les consignes d'ambiance sont automatiquement augmentées en cas de surproduction d'énergie photovoltaïque, pour réduire la puissance consommée le soir ou la nuit.
Les fichiers script_time_heatpump_emmeti.lua et config_heatpump_emmeti.lua sont disponibles sur le Github https://github.com/CreasolTech/domoticz_lua_scripts
Coût de l'électricité et prévisions de l'énergie photovoltaïque
Sur la même page GitHub, il est possible de trouver script_time_entsoe.lua qui calcule le prix et le coût de l'électricité heure par heure , le prix moyen de l'électricité , les prévisions d'énergie solaire heure par heure et les prévisions d'énergie quotidienne totale .
Le prix de l'électricité est calculé pour la zone sélectionnée (par exemple, le nord de l'Italie, ou le Danemark2, ...) et le coût horaire de l'énergie est calculé en spécifiant 3 paramètres supplémentaires en fonction de votre fournisseur.
Pour les prévisions d'énergie solaire, il est possible de spécifier l'orientation/la déclinaison/le kWc pour un ou plusieurs systèmes, de sorte qu'en plaçant des panneaux solaires avec des orientations différentes, il est possible de calculer l'énergie horaire pour toutes les chaînes. Malheureusement, les trackers solaires ne sont pas gérés par cette API de prévision.
Le script_time_entsoe.lua produit 4 variables contenant des valeurs horaires séparées par des points-virgules :
- prix horaire + prix moyen de l'électricité aujourd'hui
- prix horaire + moyen de l'électricité demain
- énergie photovoltaïque horaire + totale aujourd'hui
- énergie photovoltaïque horaire + totale demain
En incluant les scripts globalvariables.lua et globalfunctions.lua, il est possible d'utiliser les fonctions :
- tonumber( getItemFromCSV(uservariables['entsoe_today'], ';', timeNow.hour) ) pour obtenir le prix moyen actuel de l'électricité
- tonumber( getItemFromCSV(uservariables['entsoe_today'], ';', 24) ) pour obtenir le prix moyen actuel de l'électricité
- tonumber( getItemFromCSV(uservariables['pv_today'], ';', 24) ) pour obtenir l'énergie totale prévue du photovoltaïque, aujourd'hui
- tonumber( getItemFromCSV(uservariables['pv_tomorrow'], ';', 24) ) pour obtenir l'énergie totale prévue du photovoltaïque, demain
Avec Domoticz, il est possible d'écrire des automatisations complexes qui prennent en compte tous les paramètres, ce qui permet d'économiser de l'argent en augmentant l'autoconsommation et en réduisant la consommation d'énergie aux heures de pointe où le coût de l'électricité est plus élevé. De cette façon, il est également possible d' améliorer la flexibilité énergétique , en aidant le réseau électrique en réduisant la consommation (ou l'exportation d'énergie) lorsque sa disponibilité est faible (aux heures de pointe).
Plugin Domoticz pour gérer la pompe à chaleur Emmeti Mirai SMI
Un plugin pour Domoticz qui gère les pompes à chaleur fabriquées par Emmeti est disponible sur https://github.com/CreasolTech/domoticz-emmeti-mirai