Versatile Thermostat: Auto TPI Coefficients ( discussion math/algo )

Tu peux mettre 0.1 pour le changement si le capteur le permet. T’es déjà largement au dessus du bruit capteur qui se trouve sous 0.05 en general.

Bah les Sonoff snzb-02p sont donnés pour une precision de +/-0.2°c. Donc je pense que descendre en dessous ne donnera pas plus de precision. Non ?

Ca se tente qd meme. Ils utilisent tous à peu près les mêmes composants. A voir si le firmware le limite.

Bon sur TPI ça ne change pas grand chose vu la boucle. Mais sur ce que je teste en ce moment, une sorte de boucle PI autorégulée from Gael, je vois qu’en abusant un peu de la précision des capteurs, ça donne des résultats assez foufou:


On dirait de la micro régulation, ca overshoot en stabilisation à 0.05 max soit le bruit…

Même si au final pour du chauffage on s’en fou, notre corps peut pas vraiment percevoir des variations de 0.1° de toute façon.

Vous apprecierez la qualité du freinage sur la consigne au debut du graph en fin de chute de t°. Ca parait presque irréel. Chose impossible à obtenir en TPI

1 « J'aime »

Je te laisse faire de la recherche fondamentale et moi je ménage mes batteries :blush:

1 « J'aime »

Je continu avec mes questions…
Il y a t il un moyen pour repartir à zero pour l’apprentissage.
Je pense, mais je me trompe peut être, que mon thermomètre trop feignant et la mise en place de l’apprentissage en sortie de jour rouge à mis un peu le bousin.
Le Kint est descendu tres bas 0.1068 et à présent qu’il a des informations un peu plus correctes, j’ai l’impression que l’algo voudrait le booster pour le faire remonter mais qu’il a du mal ou que ça va prendre 1000 ans.
J’ai eu plusieurs messages (notifs) disant, en gros, que le boost kint a été tenté 5 fois et qu’il y avoir un problème avec mon radiateur.
Si tu me dit que c’est normal, je laisse, sinon je recommence mais je n’ai pas trouvé la manip.

Edit : C’est bon j’ai trouvé.

Depuis la carte tu as une case à cocher pour reset en démarrant l’’apprentissage. Sinon pareil depuis le service call.

Oui vaut mieux recommencer. Il faut éviter tout parasite, surtout au début où le poid des cycles est le plus important.
Et si tu n’as pas mis de valeur pour le tau de charge ( capacité ) , il force au départ 3 cycles de chauffe à 100% pour qu’il se cale ( mode bootstrap ).. Il va utiliser des coeff elevés pour s’assurrer d’être en saturation, mais il faut que la consigne soit suffisement éloignée qd meme. Après ces 3 premiers cycles il est possible d’ajuster la consigne tant qu’elle reste au dessus pour qu’il commence son apprentissage.

Cela dit si le heat rate est configuré et qu’on n’est pas sûr de sa valeur, c’est bien aussi de prévoir 2 cycles à 100% pour l’ajuster rapidement.

1 « J'aime »

Y a un p’tit rebond derrière mais j’avoue que c’est des belles courbes. Ca fait envie. Si en plus y a rien à paramétrer (pcq les 2983729 paramètres de l’auto-TPI ça va en freiner plus d’un), ca va faire un carton.

un rebond de 0.15° après une chute bien verticale et sans passer en dessous :slight_smile:

Bon c’est dans une chambre, l’inertie doit pas etre dingue. Mais j’ai cru à un bug dans le graphique au début.

1 « J'aime »

Hello,

Je me remets à l auto tpi après cette vague de froid (poêle à fond).

Malgré le travail et la pédagogie qui sont mise en oeuvre, je suis d’accord la mise en œuvre est clairement pas des plus évidente.

Existe t il un mode tout automatique ? L utilisateur saisi ses temps de chauffe et de refroidissement. Ensuite le process commence

  • Lancement des cycles pour la détermination du taux de chauffe.
  • Lancement des cycles de chauffage pour arriver au 50 Kint et Kext.

Mes excuses si ma question semble simpliste :pleading_face:

non mais tu peux créer un schedule pour ca. ou une automation

Enfin les cycles pour le heat rate c’est automatique au départ si il est à 0. Il va se concentrer là dessus pendant 3 cycles au moins, en gonflant les coeff. Mais il faut quand meme prévoir une marge de temperature suffisemment grande pour qu’il ai le temps de faire ces cycles. Ca tu le lances à la main de toute façon c’est le départ.

Ensuite si ta consigne de départ était suffisement haute par rapport à la temperature ambiante pour qu’il puisse faire quelques cycles d’apprentissage de Kint, tu laisses tourner (si tu pars de 3° de delta t’es large normalement). C’est important de laisse l’overshoot/undershoot se stabiliser donc t’en a pour pas mal d’heures déjà
Quand ca ne bouge plus trop, tu fais redescendre pour reprendre un cycle de chauffe après.

Faut pas flipper quand ca part dans les hauts, c’est même plutot bien car ca donne pas mal d’informations et ca converge plus vite. La après 12 cycles Kint on est déjà revenu dans une zone stable, sur une paire assez proche trouvée précedemment.

Merci de ton retour,

Si j ai bien compris pour un démarrage from scratch ou pour un non initié

  • configurer en méthode de calcul moyenne, laisser le heat rate à 0 ou le calculer manuellement en suivant la doc.
  • au démarrage de l auto tpi, mettre la consigne 3-4 au dessus de la température ambiante.
  • laisser tourner jusqu’à stabilisation de la température ambiante.
  • reprendre le cycle de chauffage classique, par exemple celui du Scheduler.

Mon résumé est correct ?

1 « J'aime »

Oui c’est pas mal. En plus j’aimerais bien que quelqu’un teste le Bootstrap.

Tu me donneras la valeur de capacity calculée en sortie de Bootstrap, puis quelques cycles de chauffe plus tard?

C’est dans les attributs.

Malgré le travail et la pédagogie qui sont mise en oeuvre, je suis d’accord la mise en œuvre est clairement pas des plus évidente.

Oui comme c’est encore un peu en test, il y a beaucoup de paramètres pour un non initié, mais c’était necessaire pour cette phase.
Je suis en train de simplifier tout ça, il va y avoir un mode simplifié et un mode expert.
Et la doc va etre refaite en tenant compte de tout ce que j’ai pu voir pendant les tests.

2 « J'aime »

Hello,

Le premier que radiateur que j’ai lancé sans le boostrap me donne ces résultats.

Attributs d'état
hvac_modes:
  - heat
  - "off"
min_temp: 7
max_temp: 35
target_temp_step: 0.1
preset_modes:
  - none
  - frost
  - eco
  - comfort
  - boost
current_temperature: 19.3
temperature: 18.2
hvac_action: idle
preset_mode: eco
hvac_mode: heat
ema_temp: 19.31
specific_states:
  is_on: true
  last_central_mode: null
  last_update_datetime: "2026-01-12T12:13:03.410607+01:00"
  ext_current_temperature: 9.2
  last_temperature_datetime: "2026-01-12T12:13:03.407834+01:00"
  last_ext_temperature_datetime: "2026-01-12T12:05:35.898649+01:00"
  is_device_active: false
  device_actives: []
  nb_device_actives: 0
  ema_temp: 19.31
  temperature_slope: 0.11
  hvac_off_reason: null
  total_energy: 36831.12
  last_change_time_from_vtherm: "2026-01-12T12:01:19.352795+01:00"
  messages: []
  is_sleeping: false
  is_locked: false
  is_recalculate_scheduled: false
  auto_tpi_state: "off"
  auto_tpi_learning: {}
configuration:
  ac_mode: false
  type: over_switch
  is_controlled_by_central_mode: false
  target_temperature_step: 0.1
  timezone: Europe/Paris
  temperature_unit: °C
  is_used_by_central_boiler: false
  max_on_percent: null
  have_valve_regulation: false
  cycle_min: 10
  minimal_activation_delay_sec: 60
  minimal_deactivation_delay_sec: 0
preset_temperatures:
  frost_temp: 15
  eco_temp: 18.2
  boost_temp: 22
  comfort_temp: 19.4
  frost_away_temp: 15
  eco_away_temp: 17.6
  boost_away_temp: 22
  comfort_away_temp: 18.8
current_state:
  hvac_mode: heat
  target_temperature: 18.2
  preset: eco
requested_state:
  hvac_mode: heat
  target_temperature: 19.499999999999964
  preset: eco
is_presence_configured: true
presence_manager:
  presence_sensor_entity_id: binary_sensor.auto_maison_occupee
  presence_state: "on"
is_power_configured: false
power_manager:
  device_power: 999
  mean_cycle_power: 0
is_motion_configured: false
is_window_configured: true
is_window_auto_configured: false
window_manager:
  window_state: "off"
  window_auto_state: unavailable
  window_action: window_turn_off
  is_window_bypass: false
  window_sensor_entity_id: binary_sensor.0xa4c138cdc5d011ed_contact
  window_delay_sec: 30
  window_off_delay_sec: 30
  window_auto_open_threshold: null
  window_auto_close_threshold: null
  window_auto_max_duration: null
is_safety_configured: true
safety_manager:
  safety_state: "off"
  safety_delay_min: 120
  safety_min_on_percent: 0.2
  safety_default_on_percent: 0.1
is_lock_configured: true
lock_manager:
  is_locked: false
  lock_users: true
  lock_automations: true
  lock_code: false
timed_preset_manager:
  is_active: false
  preset: null
  end_time: null
  remaining_time_min: 0
is_heating_failure_detection_configured: false
is_over_switch: true
on_percent: 0
power_percent: 0
vtherm_over_switch:
  is_inversed: false
  keep_alive_sec: 0
  underlying_entities:
    - select.module_fp_salle_de_jeux_pilot_wire_mode
  on_percent: 0
  power_percent: 0
  on_time_sec: 0
  off_time_sec: 600
  function: tpi
  tpi_coef_int: 0.4766989838450475
  tpi_coef_ext: 0.013741876770467476
  tpi_threshold_low: 0
  tpi_threshold_high: 0
  minimal_activation_delay: 60
  minimal_deactivation_delay: 0
  calculated_on_percent: 0
  vswitch_on_commands:
    - select_option/option:comfort
  vswitch_off_commands:
    - select_option/option:frost_protection
icon: mdi:radiator
friendly_name: Radiateur de la salle de jeux
supported_features: 401
Résultat du service de calibration de la capacité
climate.radiateur_de_la_salle_de_jeux:
  success: true
  observed_capacity: 0.05
  kext_compensation: 0.278
  avg_delta_t: 10.3
  samples_used: 2
  samples_before_filter: 2
  outliers_removed: 0
  reliability: 5.4
  min_power_threshold: 0.8
  period: 10.3
  max_capacity: 0.328

J’ai démarré le bootstrap sur un second radiateur ce matin… à suivre

1 « J'aime »

salut
La session auto TPI n’est pas démarrée.
Il faut la démarrer depuis la carte dédiée ( ou depuis les services calls ). Je conseille d’installer la carte, pour avoir le suivi

Le service de calibration a pas assez de points pour calculer là.
J’ai un PR en cours qui améliore grandement la chose.
0.328 sinon c’est très lent. sauf pour un chauffage par le sol

La prochaine version sera bcp plus simple:

  • menu de config ultra simplifiés
  • utilisation du service de calibration au démarrage, si pas de resultat fiable ( reliability > 20 ) , initiation du bootstrap sinon apprentissage des coeff direct.
  • grande amélioration du service de calibration
1 « J'aime »

Comme le cycle d’apprentissage était terminé j’avais coupé depuis la carte. Je trouvais bizarre de ne plus voir les arguments.

Radiateur avec heat rate calculé manuellement
hvac_modes:
  - heat
  - "off"
min_temp: 7
max_temp: 35
target_temp_step: 0.1
preset_modes:
  - none
  - frost
  - eco
  - comfort
  - boost
current_temperature: 18.9
temperature: 18.2
hvac_action: idle
preset_mode: eco
hvac_mode: heat
ema_temp: 19.05
specific_states:
  is_on: true
  last_central_mode: null
  last_update_datetime: "2026-01-12T13:32:24.979624+01:00"
  ext_current_temperature: 10.5
  last_temperature_datetime: "2026-01-12T13:16:37.261573+01:00"
  last_ext_temperature_datetime: "2026-01-12T13:05:37.283421+01:00"
  is_device_active: false
  device_actives: []
  nb_device_actives: 0
  ema_temp: 19.05
  temperature_slope: -0.2
  hvac_off_reason: null
  total_energy: 36831.12
  last_change_time_from_vtherm: "2026-01-12T12:01:19.352795+01:00"
  messages: []
  is_sleeping: false
  is_locked: false
  is_recalculate_scheduled: false
  auto_tpi_state: "on"
  auto_tpi_learning:
    coeff_indoor_heat: 0.4766989838450475
    coeff_outdoor_heat: 0.013741876770467476
    coeff_indoor_autolearn: 52
    coeff_outdoor_autolearn: 266
    coeff_indoor_cool: 0.4
    coeff_outdoor_cool: 0.027
    coeff_indoor_cool_autolearn: 1
    coeff_outdoor_cool_autolearn: 0
    max_capacity_heat: 3.45
    max_capacity_cool: 1
    offset: 0
    last_power: 0
    last_order: 18.2
    last_temp_in: 18.9
    last_temp_out: 10.5
    last_state: heat
    previous_state: heat
    last_on_temp_in: 0
    last_update_date: "2026-01-12T13:32:24.972765+01:00"
    last_heater_stop_time: "2026-01-12T11:55:02.664048+01:00"
    cycle_start_date: "2026-01-12T13:32:24.972765+01:00"
    cycle_active: true
    current_cycle_cold_factor: 1
    current_cycle_params:
      on_time_sec: 0
      off_time_sec: 600
      on_percent: 0
      hvac_mode: heat
    consecutive_failures: 0
    autolearn_enabled: true
    last_learning_status: learning_resumed
    total_cycles: 572
    consecutive_boosts: 0
    recent_errors:
      - 0.26080059482126133
      - 0.09999999999999787
      - 0.26260250764486026
      - 0.059695008114198256
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - -0.10000000000000142
      - 0.09489884931994191
      - 0.11170277088427893
      - 0.09999999999999787
      - -0.10000000000000142
      - -0.10000000000000142
      - 0.10281880966637302
      - 0.09999999999999787
    regime_change_detected: false
    learning_start_date: "2026-01-08T12:18:36.943642"
    capacity_heat_learn_count: 3
    bootstrap_failure_count: 0
    allow_kint_boost: false
    allow_kext_overshoot: false
configuration:
  ac_mode: false
  type: over_switch
  is_controlled_by_central_mode: false
  target_temperature_step: 0.1
  timezone: Europe/Paris
  temperature_unit: °C
  is_used_by_central_boiler: false
  max_on_percent: null
  have_valve_regulation: false
  cycle_min: 10
  minimal_activation_delay_sec: 60
  minimal_deactivation_delay_sec: 0
preset_temperatures:
  frost_temp: 15
  eco_temp: 18.2
  boost_temp: 22
  comfort_temp: 19.4
  frost_away_temp: 15
  eco_away_temp: 17.6
  boost_away_temp: 22
  comfort_away_temp: 18.8
current_state:
  hvac_mode: heat
  target_temperature: 18.2
  preset: eco
requested_state:
  hvac_mode: heat
  target_temperature: 19.499999999999964
  preset: eco
is_presence_configured: true
presence_manager:
  presence_sensor_entity_id: binary_sensor.auto_maison_occupee
  presence_state: "on"
is_power_configured: false
power_manager:
  device_power: 999
  mean_cycle_power: 0
is_motion_configured: false
is_window_configured: true
is_window_auto_configured: false
window_manager:
  window_state: "off"
  window_auto_state: unavailable
  window_action: window_turn_off
  is_window_bypass: false
  window_sensor_entity_id: binary_sensor.0xa4c138cdc5d011ed_contact
  window_delay_sec: 30
  window_off_delay_sec: 30
  window_auto_open_threshold: null
  window_auto_close_threshold: null
  window_auto_max_duration: null
is_safety_configured: true
safety_manager:
  safety_state: "off"
  safety_delay_min: 120
  safety_min_on_percent: 0.2
  safety_default_on_percent: 0.1
is_lock_configured: true
lock_manager:
  is_locked: false
  lock_users: true
  lock_automations: true
  lock_code: false
timed_preset_manager:
  is_active: false
  preset: null
  end_time: null
  remaining_time_min: 0
is_heating_failure_detection_configured: false
is_over_switch: true
on_percent: 0
power_percent: 0
vtherm_over_switch:
  is_inversed: false
  keep_alive_sec: 0
  underlying_entities:
    - select.module_fp_salle_de_jeux_pilot_wire_mode
  on_percent: 0
  power_percent: 0
  on_time_sec: 0
  off_time_sec: 600
  function: tpi
  tpi_coef_int: 0.4766989838450475
  tpi_coef_ext: 0.013741876770467476
  tpi_threshold_low: 0
  tpi_threshold_high: 0
  minimal_activation_delay: 60
  minimal_deactivation_delay: 0
  calculated_on_percent: 0
  vswitch_on_commands:
    - select_option/option:comfort
  vswitch_off_commands:
    - select_option/option:frost_protection
icon: mdi:radiator
friendly_name: Radiateur de la salle de jeux
supported_features: 401
Radiateur utilisant le bootstrap
hvac_modes:
  - heat
  - "off"
min_temp: 7
max_temp: 35
target_temp_step: 0.1
preset_modes:
  - none
  - frost
  - eco
  - comfort
  - boost
current_temperature: 21.4
temperature: 22
hvac_action: idle
preset_mode: boost
hvac_mode: heat
ema_temp: 21.2
specific_states:
  is_on: true
  last_central_mode: null
  last_update_datetime: "2026-01-12T13:35:50.107513+01:00"
  ext_current_temperature: 10.5
  last_temperature_datetime: "2026-01-12T13:32:55.491291+01:00"
  last_ext_temperature_datetime: "2026-01-12T13:05:37.283421+01:00"
  is_device_active: false
  device_actives: []
  nb_device_actives: 0
  ema_temp: 21.2
  temperature_slope: 0
  hvac_off_reason: null
  total_energy: 28996.01
  last_change_time_from_vtherm: "2026-01-12T09:16:01.034053+01:00"
  messages: []
  is_sleeping: false
  is_locked: false
  is_recalculate_scheduled: false
  auto_tpi_state: "on"
  auto_tpi_learning:
    coeff_indoor_heat: 0.2629205465048957
    coeff_outdoor_heat: 0.0122
    coeff_indoor_autolearn: 8
    coeff_outdoor_autolearn: 0
    coeff_indoor_cool: 0.4
    coeff_outdoor_cool: 0.0122
    coeff_indoor_cool_autolearn: 1
    coeff_outdoor_cool_autolearn: 0
    max_capacity_heat: 2.137997917168187
    max_capacity_cool: 1
    offset: 0
    last_power: 0.3
    last_order: 22
    last_temp_in: 21.4
    last_temp_out: 10.5
    last_state: heat
    previous_state: heat
    last_on_temp_in: 21.4
    last_update_date: "2026-01-12T13:32:48.015119+01:00"
    last_heater_stop_time: "2026-01-12T13:32:48.005728+01:00"
    cycle_start_date: "2026-01-12T13:32:48.015119+01:00"
    cycle_active: true
    current_cycle_cold_factor: 0.000015651666666666664
    current_cycle_params:
      on_time_sec: 89
      off_time_sec: 210
      on_percent: 0.3
      hvac_mode: heat
    consecutive_failures: 0
    autolearn_enabled: true
    last_learning_status: gap_too_large_for_outdoor(gap=0.60 > 0.5)
    total_cycles: 51
    consecutive_boosts: 0
    recent_errors:
      - -0.12712788388196383
      - -0.12760546107774962
      - -0.12915844479193753
      - -0.13052999048750147
      - -0.1327436353400202
      - -0.13132837771183525
      - -0.13292671861085495
      - -0.13359575561054937
      - -0.13480269780350157
      - -0.13723874877788048
      - -0.138624043327886
      - -0.14125886425875145
      - -0.14189685974672367
      - -0.04969318439248502
      - -0.045095274877173935
      - -0.045531011463979865
      - -0.04596537046469701
      - -0.04640035807895504
      - -0.04683624900273717
      - -0.046837065074653544
    regime_change_detected: true
    learning_start_date: "2026-01-12T09:17:47.220483+01:00"
    capacity_heat_learn_count: 9
    bootstrap_failure_count: 0
    allow_kint_boost: false
    allow_kext_overshoot: false
configuration:
  ac_mode: false
  type: over_switch
  is_controlled_by_central_mode: false
  target_temperature_step: 0.1
  timezone: Europe/Paris
  temperature_unit: °C
  is_used_by_central_boiler: false
  max_on_percent: null
  have_valve_regulation: false
  cycle_min: 5
  minimal_activation_delay_sec: 60
  minimal_deactivation_delay_sec: 0
preset_temperatures:
  frost_temp: 10
  eco_temp: 18.2
  boost_temp: 22
  comfort_temp: 19.4
  frost_away_temp: 10
  eco_away_temp: 17.6
  boost_away_temp: 22
  comfort_away_temp: 18.8
current_state:
  hvac_mode: heat
  target_temperature: 22
  preset: boost
requested_state:
  hvac_mode: heat
  target_temperature: 19.6
  preset: boost
is_presence_configured: true
presence_manager:
  presence_sensor_entity_id: binary_sensor.auto_maison_occupee
  presence_state: "on"
is_power_configured: false
power_manager:
  device_power: 999
  mean_cycle_power: 299.7
is_motion_configured: false
is_window_configured: true
is_window_auto_configured: false
window_manager:
  window_state: "off"
  window_auto_state: unavailable
  window_action: window_turn_off
  is_window_bypass: false
  window_sensor_entity_id: binary_sensor.0xa4c138d1a59b172b_contact
  window_delay_sec: 30
  window_off_delay_sec: 30
  window_auto_open_threshold: null
  window_auto_close_threshold: null
  window_auto_max_duration: null
is_safety_configured: true
safety_manager:
  safety_state: "off"
  safety_delay_min: 120
  safety_min_on_percent: 0.2
  safety_default_on_percent: 0.1
is_lock_configured: true
lock_manager:
  is_locked: false
  lock_users: true
  lock_automations: true
  lock_code: false
timed_preset_manager:
  is_active: false
  preset: null
  end_time: null
  remaining_time_min: 0
is_heating_failure_detection_configured: false
is_over_switch: true
on_percent: 0.3
power_percent: 30
vtherm_over_switch:
  is_inversed: false
  keep_alive_sec: 0
  underlying_entities:
    - select.module_fp_chambre_garcons_pilot_wire_mode
  on_percent: 0.3
  power_percent: 30
  on_time_sec: 89
  off_time_sec: 210
  function: tpi
  tpi_coef_int: 0.2629205465048957
  tpi_coef_ext: 0.0122
  tpi_threshold_low: 0
  tpi_threshold_high: 0
  minimal_activation_delay: 60
  minimal_deactivation_delay: 0
  calculated_on_percent: 0.3
  vswitch_on_commands:
    - select_option/option:comfort
  vswitch_off_commands:
    - select_option/option:frost_protection
icon: mdi:radiator
friendly_name: Radiateur de la chambre des gaçons
supported_features: 401

Démarrage vers 9h15 de l’apprentissage
Ca fait 2h qu’il est à 21.4 et qu’il n’arrive pas à atteindre la consigne de 22.

Les deux radiateurs sont de la même marque et du même modèle, situés dans deux pièces de même superficie en face l’une de l’autre.

Merci pour les infos.

Ils sont vachements elevés tes capacity: max_capacity_heat: 2.137997917168187
Ils fonctionnent vraiment bien tes radiateurs ou y a du soleil qui chauffe la pièce pendant le bootstrap ?

>Ca fait 2h qu’il est à 21.4 et qu’il n’arrive pas à atteindre la consigne de 22.

Ok il est coincé là. Tu peux activer le Kint boost ( il sert à ça. Je l’ai désactivé par défaut le temps d’avoir plus de cas comme toi, car je pense pouvoir fixer ca differement ) .
Tu pauses le service, et tu coches la cases. et tu relances sans reinitialiser.

Je pense qu’il faut que l’algo sois plus souple sur le delta necessaire avec la consigne pour le calcul de Kext. 0.5 c’est peut être un peu juste.

Question, tu es partit d’un apprentissage avec methode Moyenne?

Il y avait un peu de soleil ce matin en effet et les radiateurs fonctionnent bien également Atlantic Agilia.

C’est fait !

Oui

Ca c’est à bannir pendant les 3 cycles du bootstrap sinon il peut pas calculer ce que produit le radiateur et va le surestimer. Ca a pas l’air d’etre le cas vu ta courbe Kint qui descend. Ca serait le contraire.

Et à éviter bien sur pendant l’apprentissage, forcément ça fausse complètement le modèle.
C’est sûrement pour ça qu’il t’a fait dégringoler Kint car ca chauffait mieux que prévu. Et maintenant que y a plus de soleil, il est coincé en dessous de la consigne.

En general les premiers cycles d’auto TPI envoient plutot des coeffs elevés, ce qui permet d’etre vite dans une situation avec des trucs à apprendre ( overshoot, approche et stabilisation consigne )

edit: je dirais que le soleil est arrivé un peu avant 10h , a dégommé le Kint, puis s’est barré avant midi. Et il se retrouve coincé sous la consigne.
Le mieux serait de reprendre from scratch maintenant sans le soleil pour voir. ( en gardant la valeur de capacity qu’il a calculé déjà )

Lets’ go

Le soleil est barré et il va as revenir aujourd’hui. Je conserve aussi les Kint et Kext calculés ou je repars de zéro ?

non repars de zero je pense. De toute façon il les a pas sauvegardé dans la conf, tu coches la case Reset dans la carte. Il a du te sauvegarder le heat rate dans la conf par contre quand tu stop l’apprentissage. Pense à refroidir un peu la pièce avant et attendre que le capteur se stabilise avant de démarrer