jmcollin78 / versatile_thermostat

A full featured Thermostat for Home Assistant: presets, window, motion, presence and overpowering management
MIT License
329 stars 34 forks source link

After changing coef_int or coef_ext the heaters continue to heat even if power_percent is 0 #196

Closed gael1980 closed 12 months ago

gael1980 commented 1 year ago

Bonjour,

Ce matin, mon chauffage a continué de fonctionner alors que personne n'était à la maison.

Comme vous pouvez le voir sur ce graphique, la maison est bien "absente", le % power retombe bien à 0, la consigne passe bien à 16, mais les switchs continue de fonctionner.

Capture d’écran 2023-11-16 à 12 58 20

Les 4 chauffages ont un cycle non cohérent, mais régulier. Ces 4 chauffages sont sur le même vtherm.

Non présent sur la capture, mais j'ai vérifié le security state, qui était bien sur off

Version of the custom_component

Vtherm : 4.0.4

Configuration

My VTherm attributes are the following:

hvac_modes: heat, off
min_temp: 7
max_temp: 25
target_temp_step: 0.1
preset_modes: none, eco, comfort, boost, activity
current_temperature: 18.6
temperature: 19
hvac_action: heating
preset_mode: activity
is_on: true
hvac_mode: heat
type: null
eco_temp: 16
boost_temp: 19
comfort_temp: 18
eco_away_temp: 16
boost_away_temp: 16
comfort_away_temp: 16
power_temp: 13
target_temperature_step: 0.1
ext_current_temperature: 11.2
ac_mode: false
current_power: 2620
current_power_max: 10000
saved_preset_mode: activity
saved_target_temp: 19
saved_hvac_mode: null
window_state: off
motion_state: on
overpowering_state: false
presence_state: on
window_auto_state: off
window_bypass_state: false
security_delay_min: 240
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: 2023-11-16T13:01:28.684559+01:00
last_ext_temperature_datetime: 2023-11-16T12:41:28.671069+01:00
security_state: false
minimal_activation_delay_sec: 120
device_power: 3000
mean_cycle_power: 2250
total_energy: 1818651.51
last_update_datetime: 2023-11-16T13:01:59.538614+01:00
timezone: Europe/Paris
window_sensor_entity_id: binary_sensor.bas_ouvert
window_delay_sec: 30
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
motion_sensor_entity_id: input_boolean.fake_motion_sam
presence_sensor_entity_id: binary_sensor.maison_occupee
power_sensor_entity_id: sensor.lixee_papp
max_power_sensor_entity_id: input_number.p_max
temperature_unit: °C
is_device_active: true
is_over_switch: true
is_inversed: false
underlying_switch_0: switch.chauffage_cuisine
underlying_switch_1: switch.chauffage_salon
underlying_switch_2: switch.chauffage_manger
underlying_switch_3: switch.chauffage_couloir_entree
on_percent: 0.75
power_percent: 75
on_time_sec: 448
off_time_sec: 151
cycle_min: 10
function: tpi
tpi_coef_int: 0.7
tpi_coef_ext: 0.06
icon: mdi:fridge
friendly_name: Thermostat cuisine
supported_features: 17
jmcollin78 commented 1 year ago

Hello @gael1980 ,

On va regarder ça à première vue on est d'accord que ca parait pas normal mais il me faudrait les courbes température de la pièce et température target.

Comme tu as un coef_int fort (0,7), et que tu n'es pas à la target:

current_temperature: 18.6
temperature: 19

Ca garde un fond de chauffe pas forcément anormal: on_percent: 0.75

0,4 (erreur) x 0,7 -> 0,28 + (19 - 11) x 0,06 -> 0,28 + 0,46 -> 0,75. Tout est normal avec les coefs que tu as donné.

Par ailleurs, tu es en activity preset et il y a de l'activité: motion_state: on donc au moment ou tu as pris la photo tout me parait normal.

En preset activity, ce n'est pas la présence ou non qui fait foie mais si il y a du mouvement ou pas. C'est ce capteur là que tu dois surveiller et pas le capteur de présence du coup.

Mais je ne sais pas si tu as pris le screen au moment du "problème" ou pas.

gael1980 commented 1 year ago

J'ai pris la capture vers les 12h40 quand je suis rentré du taf. Oui, le coef de 75% est cohérent au moment où je rentre. Le problème vient surtout entre 9h45 et 12h30 lorsqu'il n'y a personne à la maison. Le on_percent est bien à 0% et le presence state à OFF, mais les switch continue d'etre commandé de manière erratique entre eux.

Je ne sais pas si c'est VTERM qui a planté ou si cela provient de hass, mais après un redémarrage de hass, plus de pb.

Je ne sais pas si dans les logs, il y a un contrôle de cohérence. Si presence state = OFF et switch radiateur = ON Alors warning (ou erreur) de cohérence radiateur, qui devrait s'éteindre gentiment :-)

jmcollin78 commented 1 year ago

Je ne sais pas si dans les logs, il y a un contrôle de cohérence.

Oui a chaque cycle y a ce controle. Mais tu me parles de présence alors que ton VTherm est en preset Activity (qui est controlé par le mouvement et pas par la présence). Le VTherm ne réagit pas à la présence en preset Activity.

C'est une feature et pas un bug hein ...

gael1980 commented 1 year ago

Désolé je me trompe de capteur alors. je parle du capteur gestion de la présence dans la maison, pas du capteur de mouvement...

jmcollin78 commented 1 year ago

Je crois qu'on ne se comprend pas bien. Ton VTherm il est sur le preset activity: preset_mode: activity dans les attributs que tu m'as donné dans le 1er post.

Or ce preset là il gère la détection de mouvement mais pas la détection de présence qui n'est pas active. C'est pour ça que quelque-soit l'état de la présence, le VTherm ne fait rien.

Si tu veux de la détection de présence, il faut choisir le preset Eco, Confort ou Boost (mais pas Activité).

gael1980 commented 1 year ago

Oui, on est mal partie, ce n'est pas grave.

J'ai remarqué le même problème cette nuit. Les chauffages continués de fonctionner alors que mon chauffage était en éco (consigne à 16), on voit bien que vthem demande 0% au chauffage, mais ceux-ci continuent de tourner. Comme tu peux le voir de 0h à 6h. à 6h, le thermostat repart en mode activity.

Capture d’écran 2023-11-17 à 07 17 19

Par contre, hier matin j'ai modifié les coef_int et coef_ext. Même chose hier soir, j'ai remodifié ces deux coefs.

On dirait que vtherm ne ce reinitialise pas completement lors d'un changement d'un (ou deux) parametre coef.

jmcollin78 commented 1 year ago

Comme je l'ai déjà dit, il me faut une courbe comme ça (avec temperature, temperature target et power_percent). Sinon je ne peux rien faire, même si je suis d'accord avec toi que ça a l'air anormal. T'as un exemple dans le README ici : https://github.com/jmcollin78/versatile_thermostat/blob/main/README-fr.md#toujours-mieux-avec-apex-chart-pour-r%C3%A9gler-votre-thermostat

à 6h, le thermostat repart en mode activity.

Le VTherm ne passe pas tout seul en preset activity. C'est une décision de l'utilisateur de le mettre en preset Activity. Il faudrait que tu arrives à comprendre ce preset activity qui autorise la détection de mouvement, si tu as un capteur de mouvement (motion_sensor_entity_id: input_boolean.fake_motion_sam dans ta conf). Relis peut-être la doc ici : https://github.com/jmcollin78/versatile_thermostat/blob/main/README-fr.md#configurer-le-mode-dactivit%C3%A9-ou-la-d%C3%A9tection-de-mouvement

Pour régler et vérifier ton thermostat, tu devrais désactiver la gestion de mouvements qui perturbe les analyses, surtout que ca à l'air d'être un faux capteur de mouvement.

Mais en premier, donne moi les courbes demandées stp.

gael1980 commented 1 year ago

Le mode eco passe automatiquement à minuit grâce a scheduler card. Meme chose pour le mode activity à 6h.

Voici les courbes : Screenshot 2023-11-17 at 10-48-44 History – Home Assistant

Tu as la consigne, la température, le "on_percent" et j'ai rajouter que le switch du chauffage cuisine, il y a 3 autres switch sur le vtherm, non afficher ici.

jmcollin78 commented 1 year ago

ok. On dirait bien qu'il y a un soucis alors au vu des courbes. Comme ça marche chez moi dans la même configuration je me dis que c'est plutot chez toi le soucis.

Meme chose pour le mode activity à 6h.

ok j'avais pas compris que le Scheduler remettait en mode Activity. On est bon sur ce point alors (pas facile par message, désolé).

Est-ce que tu as des logs d'erreurs sur versatile_thermostat ? Peut être tu vas devoir passer en log niveau INFO avec ça dans le fichier logger.yaml :

default: warning
logs:
  custom_components.versatile_thermostat: info

et regarde tous les logs qui commencent par versatile thermostat-. Tu peux me les envoyer ou regarder si tu vois des trucs pas clean

jmcollin78 commented 1 year ago

Même soucis ici : https://github.com/jmcollin78/versatile_thermostat/issues/198

Tu sais me dire depuis quand ca marche plus et ce que tu as fait avant de constater le soucis ?

En quelle version es-tu ?

gael1980 commented 1 year ago

Oui, pas facile de communiquer par message, mais pas grave, on y arrive :-)

Je n'ai que cette info dans les log :

Cette erreur provient d'une intégration personnalisée
Logger: custom_components.versatile_thermostat.commons
Source: custom_components/versatile_thermostat/commons.py:125
Integration: Versatile Thermostat configuration (documentation, issues)
First occurred: 08:06:54 (105 occurrences)
Last logged: 08:06:54

<entity sensor.thermostat_cuisine_energy=unknown> - no entity to listen. Try later
<entity sensor.thermostat_cuisine_mean_power_cycle=unknown> - no entity to listen. Try later
<entity sensor.thermostat_cuisine_power_percent=unknown> - no entity to listen. Try later
<entity sensor.thermostat_cuisine_on_time=unknown> - no entity to listen. Try later
<entity sensor.thermostat_cuisine_off_time=unknown> - no entity to listen. Try later

J'ai remarqué, je ne sais pas s'il y a un rapport, que ce problème est apparu lorsque j'ai modifié les deux coef (int et ext).

Après un redémarrage d’hass, le problème à disparue. Pour l'instant, ce problème n'est pas revenu

Je n'avais jamais eu ce problème avant avec les anciennes version de vtherm.

encore merci pour ton aide

jmcollin78 commented 1 year ago

Ah c'est intéressant, ce serait la modif des coef qui a provoqué ça et ça disparait au restart.

gael1980 commented 1 year ago

La, je ne sais pas. Pour l'instant je n'ai pas envi de tester :-D

jmcollin78 commented 1 year ago

J'ai Merangle qui a testé et qui me confirme.

Donc contournement : si tu modifies les paramètres, tu peux aller dans Outils de dev / yaml et recharger toute l'intégration Versatile Thermostat. Ca devrait remettre le truc :

Capture d’écran 2023-11-17 à 15 56 05

gael1980 commented 1 year ago

Ok, merci

jmcollin78 commented 1 year ago

Pour l'instant je n'ai pas envi de tester :-D

T'es pas très joueur...

Je m'en occupe ce week-end, merci pour le signalement (et encore désolé pour l'incompréhension sur le mode Activity)

gael1980 commented 1 year ago

Je ferai un test une fois la nouvelle version sortie.

Oui, pas de problème pour l'incompréhension, je n'ai pas toujours facile d'expliqué un BUG.

Bon week-end et bon courage

jmcollin78 commented 1 year ago

Je n'arrive pas à reproduire le bug chez moi ni sur mon environment de dev. Je le garde sous le coude. Comme j'ai déjà fait pas mal de modif il se peut qu'il se soit auto-corrigé, même si je ne vois pas pourquoi.

gael1980 commented 1 year ago

J'ai refait un essai de changement de coef à 10h Voici les courbes on_percent et l'état des switchs de mes chauffages, je ne sais pas si cela peut t'aider.

Capture d’écran 2023-11-18 à 11 23 58
jmcollin78 commented 1 year ago

Si le changement a eu lieu à 10h c'est normal ou pas ce qu'on voit ? On voit que le power_percent a bien changé à 10h pile.

gael1980 commented 1 year ago

Je ne sais pas. C'est juste qu'avant la mise à jour le cadencement des 4 switchs est régulier. Ensuite, elle l'est moins. À 11h28 j'ai reboot hass et ce cadencement est redevenu régulier.

Capture d’écran 2023-11-18 à 15 19 21

J'espère que cela peut t'aider.

jmcollin78 commented 12 months ago

Impossible to reproduce the case. Do you still have this ?

gael1980 commented 12 months ago

Pour l'instant, ce n'est pas revenu. Désolé pour le dérangement. Merci Gaël

jmcollin78 commented 12 months ago

Pas de soucis.