Nouveau thermostat type proportionnel avec gestion des presets / portes et fenêtres / détection de mouvement .. (archive)

L’idée avait été soumise ici « Early turning on of the heater · Issue #165 · jmcollin78/versatile_thermostat · GitHub » mais comme le système de planification est externe à VTherm, cela semble très compliqué

1 « J'aime »

Est-ce que sur ce plugin scheduler on peut exploiter les attributs de celui-ci ? Si je regarde les attributs de mon scheduler je vois ceci :


On ne peut pas les exploiter pour anticiper justement la chauffe ?
Je pense que c’est plus compliqué que ca, mais je lance une bouteille à la mer

Aucune idée sur la durée des batteries.

Y a pas mal de demande la dessus et ce serait cool mais je n’ai toujours pas de solution.
On a avancé avec @maia sur le calcul de la pente de chauffage (le Slope). Ca permet de savoir que la pièce chauffe à 2° / heure par exemple (je m’en sers pour la détection des fenêtres ouvertes). Donc c’est une première étape pour anticiper. Mais le soucis c’est le scheduler comme tu dis ou le « machin » qui va anticiper la demande du scheduler. Et là je vois pas. Et implémenter un schéduler, on en a parler avec @mycanaletto au début et c’est trop compliqué. Je ferai forcément moins bien et c’est vraiment pas l’objet. Je préfère me concentrer sur le problème du thermostat et s’intégrer avec d’autres composants bien plus costaud dans leur domaine.

J’ai fais un truc chez moi mais je ne suis pas sur que ce soit transposable:

  • quand je quitte le boulot, je force le mode Boost sur les radiateurs de la salle de vie. Mais si je mets une heure (bouchon) ou 1/2 h le résultat est pas le même.

Sur Jeedom le scheduler était intégré au thermostat ?

1 « J'aime »

Dans mes souvenir oui (en tous cas il y en avait un dans Jeedom).

Un scheduler intégré permettrait d’anticiper, mais ne gèrerait peut être pas les cas particuliers… En ce qui me concerne j’ai fini tout fait en yaml.

Pour anticiper j’utilise la géoloc pour le HA de mon frère. Par exemple :

  • En fin de journée il rentre chez lui entre 18 et 20 h.
  • La plage est active est de 17 à 20 h, mais conditionnée par la zone de son job

Ainsi ça passe en chauffe quand il quite son job et c’est confort après ses 20/30 minutes de route. Bien sur s’il s’arrete boire l’appéro qq part ça chauffera un peu en trop…

Tout ça pour aller dans le sens de @Jean-Marc_Collin , il n’y a pas de solution magique car chaque cas est différent. Avantage au yaml, on peut customiser à l’infini en se basant sur les besoins spécifiques et un peu d’imagination…

1 « J'aime »

J’avais commencé à faire un algo d’apprentissage sur mes données, pièce par pièce mais ça ne convergeait pas. Mais à l’époque, j’avais des thermostats en zwave et beaucoup de soucis de consignes qui n’arrivaient pas. Donc ce que j’enregistrais ne reflétait pas forcément la réalité de chauffe ou pas. Maintenant, j’ai des données plus précises. Faut juste que je trouve le temps de les extraire et de les analyser pour voir si ça converge.
Après, se posera la question de comment utiliser cette information avec le scheduler et le VTherm. Mais ça, c’est une autre histoire.

1 « J'aime »

Dans ce qu’a envoyé @frankb de la documentation du thermostat, le scheduler est géré par un autre plugin Agenda donc je suppose externe au thermostat

Bonjour à tous.

Tout d’abord merci a Mr Collin pour son travail. Il est chirurgical sur mon installation. (Radiateur rayonnants « simplistes » avec switch zigbee + diode sur fil pilote et capteurs de t° zigbee aubess.
Une régulation toujours à moins de 0.2 degrés de la consigne! Du haut de gamme!!! :slight_smile:

Le seul truc ou je bute c’est avec le presence state.
Ce que je veux c’est anticiper mon arrivée à la maison en forcant l’etat de presence dès mon depart du travail. Pour ça, j’ai cree une zone de 25km autour de maison. Ensuite j’ai cree une automation qui appelle le service quand j’entre dans cette zone. Et ca marche! Enfin presque…
Donc des que je rentre dans cette zone, l’automatisation s’exécute et l’etat de presence est sur on. 3mn plus tard, la presence repasse sur off…
Puis repasse sur on quand je suis réellement à la maison, dans la zone home.
J’imagine qu’a la mise a jour de ma position, HA ou VTherm s’actualise.
Comment contrer ce problème ??

Merci d’avance!

C’est exactement ce que je fais mais à l’inverse : je détecte la sortie du bureau et pas l’entrée près de la maison mais ca devrait pas jouer. Mon capteur de presence il est comme ça:

- binary_sensor:
    - name: maison_occupee
      unique_id: maison_occupee
      state: "{{is_state('person.jmc', 'home') or is_state('person.chr', 'home') or is_state('input_boolean.force_presence', 'on')}}"
      device_class: occupancy

Le input_boolean.force_presence peut être changé à la main ou via une automatisation qui détecte la sortie de la zone de mon bureau. Ca marche et ca bagotte pas (ou j’ai jamais constaté).

Oui je confirme c’etait bien externe au thermostat. Mais jeedom est différent de ha

J’ai utilisé ton système l’année dernière car j’avais comme contrainte la planification semaine paire/impaire, ce que ne gérer pas encore le scheduler.
Ton système est très poussé et complexe mais pas des plus simples à mettre en place pour des personnes qui ne touche pas beaucoup en yaml :wink:
Ce qui manque pour avoir un thermostat intelligent sur HA comme l’a très bien décrit @J-Savoyart, c’est d’avoir cette « Anticipation de chauffe »

Je ne dirais pas que c’est compliqué bien au contraire. Perso j’ai 0 code pour faire tourner le plugin.

Merci @Jean-Marc_Collin, je ne sais pas comment sont les entrailles du scheduler, je pensais qu’il y aurait une possibilité de le by-pass ou bien d’y pousser une dérogation.

Je vais continuer à investiguer sur la partie « calcul d’anticipation par apprentissage », si déjà on a ça qui est ‘portable’ dans HA ça sera un bon point de fait.

Je parlais du système complet qu’a mis en place @mycanaletto « My Canaletto | Home Assistant & Schedy, encore... » si c’est bien à ce que tu faisait allusion :wink:

En effet, après lecture de la mise en place de Schedy par Canaletto, ce scheduler est l’implémentation parfaite pour Versatile Thermostat. Il supporte tous type de dérogation! cool :+1:t2:
merci @ghostsam45 !
manque plus que faire des math et un peu de machine learning pour l’anticipation d’allumage… :roll_eyes::disguised_face:

Bonjour à tous,

j’ai un souci non pas lié à Versatile Thermostat qui continue à m’épater mais à un problème d’ordres qui se perdent.

Comme je l’avais expliqué, je passe par une intégration Voltalis pour piloter mes radiateurs. Le VTherm déclenche un script (on ou off) qui déclenche un service (heat ou away) adressé à mes radiateurs via voltalis). Le problème, de temps en temps, j’ai l’impression qu’un ordre se perd ce qui fait qu’un radiateur reste allumé malgré la consigne du VTherm (ou reste éteint). J’ai 2 pistes, la première étant de créer des automatisations qui toutes les n minutes forcent le service en fonction de la consigne du VTherm. Mais en l’état actuel de mes connaissances, ça fait 1 script par radiateur ce qui n’est pas super propre sachant que j’en ai déjà 2 pour contrôler chaque radiateur.

L’autre solution serait que le VTherm répète la consigne toutes les n minutes ou s’il constate un gros écart entre consigne et progression de la température. Serait-ce jouable ?

Merci !

Ca va demander un peu de travail mais il peut y avoir plusieurs solutions pour remédier à ça, le problème étant que tu n’as pas de retour d’état (fiable).

  • Si tu utilises ce thermostat @Jean-Marc_Collin pourrait ajouter une fonction qui existait il me semble dans celui de Jeedom et qui consistait à répéter l’ordre on ou off toutes les x minutes… (à l’époque les actionneurs étaient souvent en RF sans retour d’état).
  • L’autre solution est de passer par un fake (un switch ou un input_boolean). Sur on tu bascule un boolean (ton fake) et à coté tu fais une automation qui si ce boolean est à on envoie un vrai on sur le switch et tu temporise un trigger pour qu’il répète l’oppération toutes les n minutes tant que le fake est à on. Pareil pour le off. Ca peu te donner qq chose du genre :
- id: '678d0e1-fcb6-4412-abvfr-99c4sdsdgaa'
  alias: 'Fake'
  trigger:
  - platform: time_pattern
    minutes: "/5"
  - platform: state
    entity_id: input_boolean.fake
    to: "on"    
  - platform: state
    entity_id: input_boolean.fake
    to: "off"    
  condition:
  action:
    - choose:
        - conditions: '{{ states.input_boolean.fake, on }}'
          sequence:
            - service: switch.turn_on
              entity_id: switch.legrand_contactor

        - conditions: '{{ states.input_boolean.fake, off }}'
          sequence:
            - service: switch.turn_off
              entity_id: switch.legrand_contactor

Donc si le fake bascule on bascule le vrai switch immédiatement, et tt les 5 minutes on répète l’opération, à condition que le fake soit toujours dans la bonne position.

Mais ça serait bien sur plus élégant de disposer d’une option dans le thermostat our renvoyer la commande toutes les x minutes…

1 « J'aime »

Merci beaucoup, je vais essayer de m’inspirer de ça. En fait le VTherm pilote déja des fake switch qui ensuite envoient l’ordre via le service aux climates voltalis. Je peux peut-être y caler un trigger /5 pour repéter les ordres. J’ai programmé comme un bleu en faisant une automatisation pour le ON et une autre pour le OFF. Je vais corriger, ça devrait aller mieux…
Merci !

:tada: Release 4.3 0 - Améliorations de la communauté : mode ventilateur automatique, preset Hors-gel et plus encore :tada:

Contenu

  1. mode auto-ventilateur : Ajout du contrôle du ventilateur dans l’autorégulation - auto-fan mode: Include fan control in self regulation · Issue #223 · jmcollin78/versatile_thermostat · GitHub (merci à @escamoteur pour cette excellente idée). Vous pouvez demander à VTherm d’utiliser le ventilateur de votre Pompe à chaleur si l’écart de température est important pour augmenter l’efficacité du chauffage (ou du refroidissement). Voir plus ici
  2. Préréglage Hors-gel - Frost Protection preset - (hors-gel) · Issue #218 · jmcollin78/versatile_thermostat · GitHub (merci à @FredRbn pour l’idée),
  3. Ignorez le preset si sa température est de 0 - Ignore preset from which temperature is 0 · Issue #248 · jmcollin78/versatile_thermostat · GitHub (merci à @pixeldesbois pour l’idée).
  4. Modifier la température d’un preset à partir de la carte VTherm UI 0.5.0 - [VOTE for this feature if interested] - Add a way to change the preset temperature from VTherm UI card · Issue #186 · jmcollin78/versatile_thermostat · GitHub (merci à @gunmalmg).
  5. Migration vers HA 2023.12.x,,
  6. Ajout d’une section Dépannage dans le README-fr pour les questions les plus fréquentes.

Il est conseillé d’installer en plus la card VTherm UI depuis HACF, elle supporte les nouvelles fonctions de cette release (modification des presets, gestion de l’auto-fan, preset Hors-gel).

Un grand merci à cette formidable communauté pour les idées.

Enjoy !

3 « J'aime »

J’avais des problèmes de réception de signal zwave mais avec un retour d’état. J’avais mis en place des scripts qui étaient appelés par le input_boolean et qui se répétaient 30 fois, toutes les 30 secondes si la consigne n’est pas appliquée.
Je peux te passer le code si tu veux.