[Article] Gestion de bout en bout du chauffage

oui mais le radiateur fonctionne déjà comme cela en on/off et, en utilisant le fil pilote, on utilise cette fonction on/off native du radiateur.

Il y a une différence entre

  • éteindre le radiateur de façon extérieure par la prise de courant (prise connectée et commandée par HA par exemple)
  • utiliser le fils pilote pour éteindre le radiateur car l’utilisation du fil pilote ne coupe pas l’électronique de contrôle et c’est l’électronique de contrôle qui éteint le radiateur.

Apres essai sur un poêle à pellet; cela fonctionne plutôt pas mal mais pour configurer un peu mieux; serait il possible de déterminer par exemple que ce dernier ne s’allume pas si la puissance est inférieur à 25%, afin de limiter l usure de la bougie et éviter que le poêle ne s’allume que pour 2 min.
Merci à toi Argonaute pour ce gros boulot.

1 « J'aime »

salut
je l’ai fait pour mes radiateurs… (bon pas tout à fait comme je te le présente)

Tu peux tenter de remplacer cette ligne

      {% elif val < 0 %} {% set val = 0 %}

par

      {% elif val < xx %} {% set val = 0 %}

où xx est choisi en fonction du temps minimum d’allumage.
En relisant le blueprint, le % de puissance est aussi un % de temps (il est multiplié par 600 qui est la durée en seconde de 10 minutes: période d’appel de la fonction). Donc tu pourra prendre xx = 0.2 pour ne pas allumer le poêle si la durée est < à 2mn (et si tu as conservé la période d’appel de 10mn).
Donc

      {% elif val < 0.2 %} {% set val = 0 %}
1 « J'aime »

Bonjour à tous,
excuser si je pose déjà une question qui à déjà été posées. j’ai lue pas mal du tuto mais je n’ai pas lus tout les commentaires il y en as trop.

Les différents modes, confort eco…je crois que comprendre que c’es juste des ordres envoyés par le fil pilote et que les températures qui y sont associés c’est le radiateur qui gère ?

mon radiateur a moi, il as que deuc possibilité basiques. tu chauffe ou pas.
est-ce possible de faire des presets perso ? confort = 22 , eco=19, nuits…, absence ??

Merci par avance

Hello,

L’idée est que HA règle via un thermostat logiciel (appelé TPI dans mon tuto) la température de la pièce.

  1. Le thermostat regarde la différence entre la consigne que tu souhaites et la température de la pièce.
  2. Il calcul une puissance en % proportionnel au delta (en rajoutant un peu de puissance si il fait froid dehors).
  3. Puis il pilote le convecteur en ON-OFF
    Exemple :
  • Si la puissance calculée est de 50%, il mettre en ON le radiateur 5 minutes puis en OFF 5 minutes.
  • Si la puissance calculée est de 20%, il mettre en ON le radiateur 2 minutes puis en OFF 8 minutes.
  • Si la consigne est atteinte, puissance à 0 et radiateur éteint (dans la réalité peut être 15% si il fait froid dehors pour compenser, car le thermostat en tient compte).

Ensuite, dans mon tuto, je propose de planifier des températures en fonctions des heures et de si on est ou non présent (mode confort/éco). Pour cela, je propose d’utiliser un scheduler (composant HACS). Il y a aussi un mode manuel qui permet d’avoir une température définie manuellement.
Mais tu peux simplifier. Tu peux donc utiliser le thermostat TPI, en lui mettant en entrée la consigne spécifiée dans un input_number comme je le fais. Puis tu définis des presets qui changent les températures de consigne de l’input number.

Concernant le pilotage du convecteur, je ne connais pas ton matériel, il est recommandé de passer par des fils pilotes. Couper-remettre l’alimentation peut endommager à terme la carte électronique du convecteur, sauf éventuellement si il est très ancien et a peu/pas d’électronique. Réfères toi au chapitre 8 de mon POST « quel matériel utiliser » que je viens de rajouter.

Pour information, suite à des questions souvent posées et différents échanges, j’ai rajouté 2 chapitres et fait quelques rajouts au post initial pour regrouper les informations (Gestion de bout en bout du chauffage) :
8. Quel matériel utiliser
9. Afficher des courbes de suivi

Bonjour tlm,

J’utilise ces blueprints depuis le début de l’hiver sur 4 pièces et avec des plannings différents. J’ai modifié le blueprint pour piloter plusieurs planifications.
J’ai modifié les coefficients C à 0,8 et T à 0,015, pour autant je n’atteins jamais la consigne (20.5 °C). Voir graphique.

image

Que me conseillerez-vous comme coefficient pour améliorer ça ?

Je te rejoins @Argonaute (voir paragraphe 10. Pour aller plus loin) ainsi que @Haz, il faut limiter les périodes de chauffe trop courte (même avec des convecteurs) pour ne pas user prématurément le matériel (switch). Une modification du blueprint serait intéressante afin qu’il s’adapte au plus grand nombre.

Alors il ne s’éteint pas le fil pilote, est relier a un module zigbee, avec une diode et tout.

j’ai pas mal avance mais j’ai un souci il ne vois pas mont capteur de fenêtre, même si je le rentre manuellement , il me dit erreur 500
peut on faire sans ?

Oui, il suffit de supprimer partout entity_fenetre et remplacer puissance par :

      puissance: >-
        {%set val = coeff_c * (consigne - temp_int) + coeff_t * (consigne - 
        temp_ext) %}  {% if val > 1 %} {% set val = 100 %}  {% elif val < 0 %} 
        {% set val = 0 %}  {% else %} {% set val = ( (val * 100) | round(0)) %} {% endif %} {{val}}

Super merci
Bon pour le moment. C est en pause. Impossible d exécuter un blueprint,
Je crois que c est due à des histoires d externat internal url.

Je soit réglé ça avant toute chose

Salut
Je pense que c’est le moment de partager mon installation.
Du bleueprint, je n’ai gardé que la partie calcul de puissance pour le reste je l’ai adapté à des sorties de câble legrand (sans diode à ajouter) qui mesure la puissance consommée. Le principe de la commande reste le même: PWM.
Et je gère 3 radiateurs: répartition entre les trois radiateurs, élimination des périodes trop courtes et je prolonge aussi une commande pour éviter un on>off>on trop court.

Pour le fait d’atteindre la température de consigne, ce n’est pas possible sans intégrale ou estimation des erreurs sur les coefficients. On peut améliorer grandement l’erreur statique en augmentant le gain sur l’écart (consigne-mesure).
L’erreur statique est de la forme:

Tinterne - Tconsigne  = (Ke-Ce)/ (Kp+Ke) * (Tinterne – Texterne)

où Ke et Kp sont les gains et Ce le vrai coefficient de la pièce à chauffer.

1/ J’ai du mal à comprendre pourquoi il n’est pas possible avec la méthode utilisé dans ce script d’atteindre la consigne.

2/ Pourrais-tu développer comment tu prolonges une commande pour éviter un on>off>on trop court ?

Merci.

1/ On atteint la consigne si on connait parfaitement les pertes thermiques de la pièce à chauffer.
sinon les équations thermiques donnent l’erreur écrite dessus.
Mais personnellement je ne suis pas à 0.5°C près.

2/ on peut prolonger la commande pour éviter d’éteindre le radiateur si elle est proche de 100%. Par exemple en remplaçant:

{% if val > 1 %} {% set val = 100 %}

Par:

{% if val > 0.95 %} {% set val = 100 %}

image

1/ A la lecture de la courbe de mon salon, je constate que la puissance diminue fortement si bien que la température stagne au lieu de continuer à monter vers la consigne. C’est la raison pour laquelle j’ai modifié les coefficients C à 0,8 et T à 0,015 mais cela ne semble pas suffisant. Je cherche à déterminer de meilleurs coefficients.

2/ OK compris.

Autrement, si tu ne veux pas modifier le blueprint, tu peux mettre une « fenetre virtuelle » en attendant d’avoir un vrai capteur. Le code est a la fin de mon chapitre 8.

Impressionnant ! Mais je ne comprends pas comment tu transformes la puissance consommée pour la réinjecter dans le thermostat. Que sont les modules puissance integrale et radiateurs on/on ? Du code dans le blueprint ?

Pour que la consigne dans le graphique de @dim33 soit atteinte, il faut effectivement augmenter le coefficient coeff_t pour compenser les pertes thermiques. On voit que le radiateur a 40% n’arrives pas a faire chauffer plus la pièce, donc que la chaleur injectée part et ne reste pas dans la pièce.
Après dans son cas, on ne parle que de 0,2°C, soit la précision du thermomètre, et la température converge pas si mal au final. Ce devrait être facile a compenser.

Puissance consommée et on/off:
A chaque début de la période PWM, la puissance instantanée consommée est intégrée avec un sensor template. Une fois la commande atteinte, le module on/off arrête la chauffe du radiateur. A la fin de la période PWM, le sensor est remis à zéro. Le radiateur est réallumé pour une nouvelle période avec une nouvelle consigne de puissance.

Chaque bloc du schéma est un module indépendant qui communique une info ou deux avec les autres:

  • le blueprint calcule la puissance totale pour la pièce à chauffer
  • le répartiteur et le PWM sont un seul bloc (par commodité)
    • le répartiteur attribue une puissance à chaque radiateur
    • le bloc PWM synchronise les radiateurs et les mesures de puissance
  • 3 automation on/off
  • 3 sensors template de calcul de puissance
  • 3 blocs physiques que sont les sorties de câble avec mesure de puissance.

Il y a aussi un bloc « mode radiateur » à coté qui n’est pas représenté. Il a été imaginé pour gérer les grosses variations; tout éteindre par exemple ou booster la puissance… mais ce n’est pas très utile car j’ai beaucoup augmenté le gain dernièrement et le radiateur est suffisamment nerveux. A voir…

Salut Dim3
Il est éventuellement possible que le gain T pourrait être légèrement trop faible…
Est ce que tu as le même graphique avec la température externe?
(Toutefois, le coefficient de perte thermique que ce gain compense varie avec le vent, le soleil, le taux d’humidité…)

Merci poir ta réponse, bien compris :blush:
Par contre, on est d’accord que tout cela a un sens car tu as 3 convecteurs dans la même pièce et qu’il faut répartir la puissance entre eux ? Avec un unique convecteur, le thermostat TPI suffirait.
N’aurais tu pas pu utiliser juste 3 thermostats TPI utilisant le même capteur de température mais avec chacun des paramètres coeff_c et coeff_t différents pour prendre en compte la répartition de puissance si elle n’est pas la même sur chaque convecteur ?

oui on est d’accord: j’avais besoin de bien répartir ma puissance
ensuite comme j’avais une mesure de puissance, autant l’utiliser… et j’ai bien fait car les radiateurs ont un mode boost qui aurait faussé les réglages.

mmm peut être mais je ne suis pas fan,
En effet, avant de tout synchroniser, mes radiateurs vivaient sur leur propre thermostat interne et souvent j’avais un radiateur à fond et les 2 autres qui produisaient très peu. Je voulais vraiment sortir de cette situation.
→ ajout: plus je réfléchis au sujet, oui cela devrait fonctionner. Il n’y a pas d’intégrateur dans le TPI. Mais les équations sont un peu trop lourdes. :sob:

1 « J'aime »