Je vous presente le nouveau né, vtherm-smartPI, un plugin pour Versatile Thermostat ( >= v10.0 ).
Maintenant que VTherm permet l’externalisation de composants à travers l’api vtherm-api, on peut externaliser entre autre les algorithmes de regulations sous la forme d’integrations.
On a passé l’hiver dessus avec @gael1980, à theoriser, conceptualiser, developper, tester, paufiner, debuguer, et voilà déjà le printemps, il fait 24°, personne va pouvoir tester. ![]()
Qu’est-ce que SmartPI ?
SmartPI est un algorithme de contrôle thermique avancé basé sur un modèle de premier ordre (1R1C) et une boucle Proportionelle Integrale.
Il apprend la capacité de chauffe de la pièce, le taux de perte thermique et les temps morts, puis utilise ce modèle pour calculer une commande de chauffage bien plus précise qu’un contrôleur proportionnel de type TPI.
- Modèle thermique 1R1C : Apprend le gain de chauffe, le taux de déperdition et les temps morts de votre pièce à partir d’observations réelles — aucun réglage manuel nécessaire
- Gains PI auto-calculés : Calcule Kp et Ki automatiquement à partir de la constante de temps et du temps mort appris, via des règles IMC et heuristiques
- Feed-forward basé sur le modèle : Estime la puissance de maintien nécessaire au point de consigne, complétée par un biais lent et une correction prédictive optionnelle (FF3) en cas de perturbation
- Trajectoire analytique de consigne : Façonne la référence proportionnelle avec un profil de freinage tardif pour atteindre la cible rapidement tout en évitant le dépassement
- Gouvernance Safety-First : Une matrice par régime gèle ou déverrouille l’apprentissage et l’adaptation des gains selon le contexte opérationnel
- Auto-calibration : Surveille la qualité du modèle et déclenche une séquence de recalibration lorsque l’apprentissage stagne
- Linéarisation de courbe de vanne : Traduit la demande SmartPI en position de vanne adaptée au comportement non linéaire des vannes thermostatiques (TRV)
- Diagnostics détaillés : Publie la progression de l’apprentissage, l’état du modèle et les données de régulation — consultable via une carte Markdown Home Assistant dédiée
Je vous invite à lire README et documentation du projet: vtherm_smartpi/README.fr.md at master · KipK/vtherm_smartpi · GitHub
Repo
Documentation Utilisateur (elle est digeste pour une fois)
Pour comprendre la théorie derrière et implementation de tout ça, c’est ici
Installation
Installer depuis HACS en cliquant sur le bouton du readme
Une fois HA redémarré, aller dans Paramètres, Appareils et Services, Intégrations
Puis ajouter l’intégration SmartPI ( Bouton Ajouter une intégration )
Paramètrage
Pour faire bref, une fois l’integration vtherm_smartpi ajoutée dans HA, selectionner dans l’underlying Versatile Thermostat l’algo smartpi, et dans l’integration smartpi, configurez vos vtherms ( config generale ou config par vtherm ).
La configuration est plutôt simple. Pas de coeff obscurs à régler.
Juste selon le capteur, regler le deadband à 0.1 pour un capteur à 0.1°C, et 0.05 pour un capteur à 0.01 est suffisant sur electrique. Sur Vannes je conseille quand même de garder 0.1 )
Pour le reste garder la conf par défaut.
Pour les valves il y a une option pour activer la linéarisation de la courbe de puissance de la vanne.
Ca reprend le principe du blueprint de @caiusseverus [ici] (Radiator valve response - difficulties with VTherm, non-linear valve action and calibration loss. · jmcollin78/versatile_thermostat · Discussion #1704 · GitHub) , sans la partie recalibration ( on pense rajouter ca dans un futur plugin dédié à ça ) .
La phase de premier apprentissage ( bootstrap ) va faire osciller autour de la consigne le temps de chopper assez de données pour construire le modèle, puis ça va passer en mode semi-stable.
Une fois qu’il aura les échantillons necessaires, 31 pour le taux de chauffe (A) et 31 pour les pertes (B) , il activera toutes ses fonctionalités.
Donc suffit de laisser tourner, et ca va s’ajuster tout seul et se bonifier avec le temps.
Diagnostics
Les attributs sont dans le sensor.nom_du_vtherm_smartpi_diagnostics
Il y a une carte markdown fournie dans le repo en attendant mieux. C’est rustique, mais ca organise un peu toutes ces données. La carte s’adapte en fonction que le debug ou pas est activé dans la conf.
carte: https://raw.githubusercontent.com/KipK/vtherm_smartpi/refs/heads/master/cards/smartpi_diags-fr.md










