[Projet] Chauffage au gaz + robinets thermostatiques Zigbee (planification/optimisation)

Bonjour à toutes et à tous,

Mon projet :

Je cherche à optimiser mon chauffage au gaz (qui me coûte un bras) pour une maison très mal isolée sur 2 étages :

  • RDC (salon, cuisine) :

    • pas de robinet thermostatique
    • des sondes de température TuYa WSD500A à raison de une par pièces (salon, cuisine)
    • des sondes d’ouvertures de portes/fenêtres SONOFF SNZB-04
    • un thermostat d’ambiance TuYa ZWT198 dans le salon gérant le contact sec avec la chaudière
  • 1er étage, pour chaque pièce (chambres, SdB) :

Remarques :

  • Le chauffage du RDC a tendance à chauffer le 1er étage (pas de porte intermédiaire ou autre)
  • Les radiateurs du RDC sont constamment en position semi-ouverte pour éviter des cas où le circuit de chauffage pourrait être complètement bloquer et endommager la pompe
  • Je démarre avec HA (quelques projets simples sous nodered : lumières, gestion simpliste du chauffage etc). J’espère pouvoir migrer à terme de HA OS vers une VM Debian avec HA dessus pour avoir pleinement la main, également utiliser une « vrai » base de données.

Ambitions :

  • Ajuster au plus près de la valeur cible la température de chaque pièce du 1er étage
  • Déclenchement de la chaudière sur algo personnalisé (nodered et ultérieurement script python, et ainsi pouvoir redescendre le chauffage du RDC la nuit aux seuls besoin du premier étage)
  • Gestion de programme de chauffage/pièce
  • Gestion de planning (garde alternée == une semaine sur deux où certaines pièces n’ont pas de besoin de chauffage)

Ma configuration

System Information
version core-2024.1.3
installation_type Home Assistant OS
dev false
hassio true
docker true
user root
virtualenv false
python_version 3.11.6
os_name Linux
os_version 6.1.71-haos
arch x86_64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 5000
Installed Version 1.33.0
Stage running
Available Repositories 1377
Downloaded Repositories 14
Home Assistant Cloud
logged_in false
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Home Assistant Supervisor
host_os Home Assistant OS 11.4
update_channel stable
supervisor_version supervisor-2023.12.0
agent_version 1.6.0
docker_version 24.0.7
disk_total 30.8 GB
disk_used 9.3 GB
healthy true
supported true
board ova
supervisor_api ok
version_api ok
installed_addons Terminal & SSH (9.8.1), Studio Code Server (5.15.0), Mosquitto broker (6.4.0), Node-RED (17.0.2)
Dashboards
dashboards 4
resources 10
views 14
mode storage
Recorder
oldest_recorder_run 5 janvier 2024 à 13:16
current_recorder_run 13 janvier 2024 à 14:11
estimated_db_size 99.80 MiB
database_engine sqlite
database_version 3.41.2

Avancement :

J’ai tout d’abord expérimenté un peu les thermostats génériques puis j’ai découvert Thermostat Versatile et trouve la solution très séduisante.

J’ai donc installé un Versatile Thermostat par pièce au 1er étage qui comprend la vanne thermostatique, le capteur de température et la sonde d’ouverture de porte…

Problème :

le chauffage continuer de chauffer plus de 2°C au dessus de la cible (peut être est-ce nécessaire de mettre en place l’auto-régulation ?)
Le résultat est impacté par le chauffage du RDC resté en manuel et qui fait remonter la chaleur. En d’autre termes le chauffage Bureau ne devrait pas se mettre en chauffe.

Capture d’écran du 2024-01-14 14-13-08

Configuration
hvac_modes:
  - auto
  - heat
  - "off"
min_temp: 8
max_temp: 30
target_temp_step: 1
preset_modes:
  - none
  - frost
  - eco
  - comfort
  - boost
current_temperature: 22.3
temperature: 20
hvac_action: heating
preset_mode: none
is_on: true
hvac_mode: heat
type: null
is_controlled_by_central_mode: true
last_central_mode: null
frost_temp: 8
eco_temp: 17
boost_temp: 22
comfort_temp: 20
frost_away_temp: 17
eco_away_temp: 17
boost_away_temp: 17
comfort_away_temp: 17
power_temp: 13
target_temperature_step: 1
ext_current_temperature: 5.6
ac_mode: false
current_power: null
current_power_max: null
saved_preset_mode: none
saved_target_temp: 16
saved_hvac_mode: heat
window_state: "off"
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: "off"
window_bypass_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: "2024-01-14T14:12:47.501820+01:00"
last_ext_temperature_datetime: "2024-01-14T14:12:47.501820+01:00"
security_state: false
minimal_activation_delay_sec: 15
device_power: 1
mean_cycle_power: null
total_energy: 12.89
last_update_datetime: "2024-01-14T14:18:36.927447+01:00"
timezone: Europe/Paris
window_sensor_entity_id: binary_sensor.contact_fenetre_1_bureau_contact
window_delay_sec: 60
window_auto_enabled: false
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
motion_sensor_entity_id: null
presence_sensor_entity_id: null
power_sensor_entity_id: null
max_power_sensor_entity_id: null
temperature_unit: °C
is_device_active: true
ema_temp: 22.46
is_over_climate: true
start_hvac_action_date: "2024-01-14T14:12:54.251526+01:00"
underlying_climate_0: climate.radiateur_1_bureau
underlying_climate_1: null
underlying_climate_1: null
underlying_climate_2: null
underlying_climate_3: null
auto_fan_mode: auto_fan_none
current_auto_fan_mode: auto_fan_none
auto_activated_fan_mode: null
auto_deactivated_fan_mode: null
friendly_name: VTherm 1 Bureau
supported_features: 17

Voyez-vous une erreur de ma part ?
Je prends également toute suggestion !

Bj

le plus amène a te répondre c’est @Jean-Marc_Collin , le dev
la a mes yeux rien qui me choque

1 « J'aime »

Salut,

peut-être te faut-il jouer sur les coefficients int et ext associés au vtherm. Je ne maitrise pas encore ce point, je suis aussi en train de peaufiner certains radiateurs. Aussi je pense que tu devrais lire ou relire la doc sur la partie algorithme tpi dans laquelle sont expliqués le rôle de ces coefficients.

Mais effectivement, si tu bloques, le développeur @Jean-Marc_Collin sera le mieux placé pour checker et te guider.

Bonne configuration !
Matt.

1 « J'aime »

Hello @PiDroid ,

Merci pour ce beau thread très complet.
Au 1er étage sur tes TRV, tu as mis un VTherm over_valve ou over_climate ?
Je veux bien que tu me postes ici les attributs de ce VTherm (Outils de dev / Etats) au format yaml stp.

Ensuite pour vraiment comprendre ce qui se passe, j’ai besoin des courbes de régulation. Il faut tu ailles dans le README-fr au chapitre portant sur Plotly. Ca doit ressembler à ça :

Capture d’écran 2024-01-16 à 08.12.41

Surtout mets bien les températures sur l’échelle de gauche et le % d’ouverture à droite (si tu es en over_valve). On va vite savoir avec ça ce qui se passe.

Ensuite je crois comprendre que ton RDC est toujours en position semi-ouverte donc ça va être compliqué de réguler si on ne peut pas jouer sur ce facteur. Je suppose que c’est le thermostat d’ambiance au RDC qui fait la régulation du coup (mais tu chauffes tout ou rien). J’ai bon ?

Idéalement, ce qu’il faudrait faire :

  1. mettre des TRV partout. Les shelly qui permettent un pilotage direct de la valve sont très bien,
  2. mettre un VTherm over_valve par pièce à l’étage chacun avec son thermomètre, son TRV et son capteur d’ouverture de fenêtre,
  3. mettre un (à priori un seul ?) VTherm over_valve au RDC avec tous les TRV dessus, un thermomètre (peut être que celui du thermostat d’ambiance fait le job), éventuellement des capteurs ou le mode détection d’ouverture auto si tu n’en a pas.
  4. ajouter un VTherm centralisé pour piloter le tout et simplifier les configurations (à faire avant les autres du coup). Dans ce VTherm centralisé, tu coches « controler la chaudière », et tu trouves comment piloter l’allumage / extinction de la chaudière. Ca peut se faire soit en changeant la température cible du thermostat d’ambiance, soit tu as un switch commandable. Les 2 exemples sont donnés dans le README ici (versatile_thermostat/README-fr.md at feature_234-add_central_boiler_helper · jmcollin78/versatile_thermostat · GitHub).
  5. dans chacun des VTherms tu coches, controler la chaudière.

Donc ce qui va se passer, c’est que dès que un des VTherm aura besoin d’ouvrir la vanne, ca va déclencher l’allumage de la chaudière. Si plus aucun VTherm n’a besoin d’ouvrir la vanne, ca éteint la chaudière (ie ça appelle le service qui va l’éteindre).

Donc plus de position semi ouverte en permanence, une régulation par zone (chaque pièce en haut) et le RDC, une gestion automatisée de la chaudière. :tada:

Attention : la gestion de la chaudière c’est du beta pour l’instant. J’ai l’objectif de releaser cette fonction ce week-end mais il me faut des vrais retours d’expérience (j’en ai pas moi-même).

1 « J'aime »

Si tu ne veux pas équiper le RDC de TRV, ça casse un peu le principe de pouvoir utiliser Versatile Therm avec la gestion centralisée de la chaudière puisqu’on ne saura pas dire si le bas a besoin de chauffer.

Je vois pas bien comment on peut optimiser dans ce cas là. Le thermostat d’ambiance pilote la chaudière qui est basée sur les conditions du RDC. Si l’étage a besoin de chauffer et pas le bas, ca ne marchera pas.

1 « J'aime »

Bonjour,
Je crois que je vais suivre le sujet et m’inspirer et partager
Je suis actuellement dans un projet similaire
Chauffage au gaz et radiateur dans toutes les pièces
Matériel choisi pour le moment
Tête thermostatique : Xiaomi SRTS-A01
Thermostat d’ambiance dans chaque pièce : SONOFF SNZB-02D
Thermostat exterieur : SONOFF SNZB-02
Relais piloté : NodOn SIN-4-1-20
Le but, équilibrer les pièces suivant besoins, le salon au Sud ouest plein soleil avec pour le moment thermostat d’ambiance générale.
Pièce de travail et bureau a l’opposé, télétravail irrégulier.
Donc il faut chauffer les pièces nécessaire suivant jours de télétravail ou pièces inoccupés et contourner le problème de la référence qui est dans une pièce en plein soleil (et oui je suis dans le sud de la France)
Donc la configuration d’origine était très bien tant que pas de télétravail.
Donc je dois prendre en considération des différents cycles de télétravail pour ne chauffer que les pièces nécessaire.
D’où l’idée de fermer automatiquement les vannes et d’utiliser un thermostat d’ambiance pour chaque pièce pour piloter le relais de chaudière.

Et en Add-on, je travail sur une VMC piloté pour réguler l’air et l’humidité.
Je vais donc profiter de tous les projets pour tenter d’en tirer le meilleur pour le mien.

De mon coté, pour la sécurisé pas de tête thermo dans la salle de bain pour laisser circuler l’eau au cas ou.

1 « J'aime »

Bonjour
Équipé de chauffage central au gaz sur 2 étages j’ai un peu le même problème.
J’ai testé la solution versatile de @Jean-Marc_Collin mais j’ai arrêté car les inerties d’un tel chauffage plus le fait que j’ai des automatismes qui modifient les consignes en bas et en haut font que l’ensemble n’était pas fiable.
Par contre un essai de température de consigne stabilisée était parfait.
Je pense que cette solution est parfaite pour du chauffage électrique.
Je suis donc revenu à la solution better thermostat qui n’est pas parfaite mais qui au moins compense très bien la différence entre la valeur de température mesurée par la vanne et celle mesurée par un thermomètre extérieur.
Phil

2 « J'aime »

Tu es exactement aussi dans les conditions pour utiliser le controle centralisée de la chaudière avec Versatile Thermostat. Tu n’as forcément besoin d’un thermostat d’ambiance dans chaque pièce mais simplement d’un simple thermomètre connecté (SONOFF ZNSB-02 par exemple). A toi de voir.

Pour ce use case, un détecteur de mouvement dans la pièce et le VTherm en preset Activité c’est parfait. J’ai testé pour vous dans mon bureau. (cf README si tu ne sais pas de quoi je parle).

1 « J'aime »

Merci pour vos retours !

j’ai mis des thermostat_over_climate

Je me suis débrouillé comme une quiche lors de l’ouverture du thread :grin:, l’ensemble pour un thermostat est dans le 2ème message du thread :

Dérouler pour voir

Avancement :

J’ai tout d’abord expérimenté un peu les thermostats génériques puis j’ai découvert Thermostat Versatile et trouve la solution très séduisante.

J’ai donc installé un Versatile Thermostat par pièce au 1er étage qui comprend la vanne thermostatique, le capteur de température et la sonde d’ouverture de porte…

Problème :

le chauffage continuer de chauffer plus de 2°C au dessus de la cible (peut être est-ce nécessaire de mettre en place l’auto-régulation ?)
Le résultat est impacté par le chauffage du RDC resté en manuel et qui fait remonter la chaleur. En d’autre termes le chauffage Bureau ne devrait pas se mettre en chauffe.

Capture d’écran du 2024-01-14 14-13-08

Configuration
hvac_modes:
  - auto
  - heat
  - "off"
min_temp: 8
max_temp: 30
target_temp_step: 1
preset_modes:
  - none
  - frost
  - eco
  - comfort
  - boost
current_temperature: 22.3
temperature: 20
hvac_action: heating
preset_mode: none
is_on: true
hvac_mode: heat
type: null
is_controlled_by_central_mode: true
last_central_mode: null
frost_temp: 8
eco_temp: 17
boost_temp: 22
comfort_temp: 20
frost_away_temp: 17
eco_away_temp: 17
boost_away_temp: 17
comfort_away_temp: 17
power_temp: 13
target_temperature_step: 1
ext_current_temperature: 5.6
ac_mode: false
current_power: null
current_power_max: null
saved_preset_mode: none
saved_target_temp: 16
saved_hvac_mode: heat
window_state: "off"
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: "off"
window_bypass_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: "2024-01-14T14:12:47.501820+01:00"
last_ext_temperature_datetime: "2024-01-14T14:12:47.501820+01:00"
security_state: false
minimal_activation_delay_sec: 15
device_power: 1
mean_cycle_power: null
total_energy: 12.89
last_update_datetime: "2024-01-14T14:18:36.927447+01:00"
timezone: Europe/Paris
window_sensor_entity_id: binary_sensor.contact_fenetre_1_bureau_contact
window_delay_sec: 60
window_auto_enabled: false
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
motion_sensor_entity_id: null
presence_sensor_entity_id: null
power_sensor_entity_id: null
max_power_sensor_entity_id: null
temperature_unit: °C
is_device_active: true
ema_temp: 22.46
is_over_climate: true
start_hvac_action_date: "2024-01-14T14:12:54.251526+01:00"
underlying_climate_0: climate.radiateur_1_bureau
underlying_climate_1: null
underlying_climate_1: null
underlying_climate_2: null
underlying_climate_3: null
auto_fan_mode: auto_fan_none
current_auto_fan_mode: auto_fan_none
auto_activated_fan_mode: null
auto_deactivated_fan_mode: null
friendly_name: VTherm 1 Bureau
supported_features: 17

Voyez-vous une erreur de ma part ?
Je prends également toute suggestion !

Je vais tester quelque chose qui s’en approche ce soir ! Merci

[EDIT]

Le risque avec un « tout en TRV » est d’avoir la chaudière (et la pompe) en marche avec tous les TRV en off (c’est pas le cas souhaité mais les bugs et erreurs sont possibles et faciles, surtout avec des trucs qui viennent de chine mal emballé, le zigbee et les soucis de type PEBCAK). Dans ce cas, la pompe prend chère et … le porte feuille aussi. Bref risque de casse si « tout en TRV »
Ceci dit, la chaleur monte avec une certaine latence, et en position semi-ouverte, le RDC chauffe moins vite que le haut. J’ai fait quelques essais « statiques » et avec un degré de moins au RDC je stabilise l’ensemble et ma chaudière travaille moins de manière significative.
Bref ya du potentiel d’algo derrière (avec du python et des libs type pandas etc), doit y avoir moyen de faire un truc sympa ! (mais pas dans l’immédiat :rofl:)

@Jean-Marc_Collin Penses-tu que je doive poursuivre dans cette direction ? Est-ce mieux de limiter l’usage des VTherm au 1er et de piloter l’appelle de la chaudière via nodered (dans un premier temps) en fonction des demandes des VTherm ? ou autre option ?

Jean-Marc_Collin,
Pour moi la décision de mettre un thermostat dans chaque pièce me permet d’avoir une moyenne entre ce que donne la sonde de la vanne thermostatique et la température de la pièce, qui est souvent différente.
Et comme j’ai mis des sondes sur l’arrivée d’eau et la sortie d’eau des radiateurs ça me permet de calculer correctement le Delta T afin de régler correctement le robinet d’arrêt afin de me rapprocher le plus du rendement des radiateurs.
Donc comme les thermostats d’ambiance sont là, autant les utiliser pour connaitre le ressenti de chaque pièce individuellement.

Pour le détecteur, oui c’est une idée
J’ai une alarme filaire avec des détecteur double technologie (Infra rouge et hyper fréquence) je pourrais repiquer le signale dans la centrale.
Mais je serais plus tenté d’utiliser des détecteurs de présence, qui eux détectent aussi les présences statique contrairement a un détecteur de mouvement. Mais l’idée est bonne.
Ou simplement sur la présence des téléphones dans la maison, ça peut être une autre source de présence.

1 « J'aime »