Climate, thermostat, simple thermostat, besoin d'aide

Temperature c’est la température de la pièce (celle configurée dans le thermostat) et target_temp c’est la température cible (celle programmée par les presets ou manuellement).

current_temperature est la température de la pièce plutot, non ?

l’attibut température suit le target_temp chez moi, vois ci dessous après avoir passé des automations qui donnent des valeurs a la c…

hvac_modes:
  - 'off'
  - cool
  - heat
  - dry
  - fan_only
min_temp: 16
max_temp: 31
target_temp_step: 1
fan_modes:
  - auto
  - level1
  - level2
  - level3
  - level4
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 21.9
temperature: -3
fan_mode: auto
hvac_action: true
preset_mode: none
hvac_mode: 'off'
type: thermostat_over_climate
eco_temp: 4
boost_temp: 8
comfort_temp: 6
eco_away_temp: null
boost_away_temp: null
comfort_away_temp: null
power_temp: null
target_temp: -3
current_temp: 21.9
ext_current_temperature: 21.68
current_power: null
current_power_max: null
saved_preset_mode: none
saved_target_temp: -3
saved_hvac_mode: 'off'
window_state: 'on'
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: '2023-08-11T09:50:03.547018+02:00'
last_ext_temperature_datetime: '2023-08-11T09:40:00.618074+02:00'
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 0
last_update_datetime: '2023-08-11T09:50:03.560886+02:00'
timezone: Europe/Paris
window_delay_sec: 30
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
underlying_climate: climate.pac_piece_de_vie
start_hvac_action_date: null
friendly_name: Chauffage PAC piece de vie
supported_features: 25

Oui tu as raison:

temperature et target_temp c’est la même valeur : la température de consigne
current_temp: la température courante de la pièce
ext_current_temperature: la température courante extérieure

Fais voir l’appel du service pour modifier la température de consigne (avec le template donc)

ce que je veux dire c’est qu’a force de tester les automations qui font moins 1, je me retrouve avec une consigne négative mais ca va se résoudre tout seul.

je te donne l’automation complète :

alias: Régul PAC piece de vie
description: ""
trigger:
  - platform: time_pattern
    minutes: "1"
condition: []
action:
  - choose:
      - conditions:
          - condition: not
            conditions:
              - condition: state
                entity_id: climate.chauffage_pac_piece_de_vie
                attribute: hvac_mode
                state: "off"
        sequence:
          - choose:
              - conditions:
                  - condition: numeric_state
                    entity_id: sensor.tendance_temperature_interieure
                    below: 0
                sequence:
                  - choose:
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            below: sensor.temperature_cible_pac_piece_de_vie_mini
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 2 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_mini
                            below: sensor.target_temperature_sensor
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.target_temperature_sensor
                            below: sensor.temperature_cible_pac_piece_de_vie_maxi
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_maxi
                            below: 20.5
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: 20.4
                        sequence:
                          - service: climate.turn_off
                            data: {}
                            target:
                              entity_id: climate.chauffage_pac_piece_de_vie
              - conditions:
                  - condition: numeric_state
                    entity_id: sensor.tendance_temperature_interieure
                    above: 0
                sequence:
                  - choose:
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            below: sensor.temperature_cible_pac_piece_de_vie_mini
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_mini
                            below: sensor.target_temperature_sensor
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.target_temperature_sensor
                            below: sensor.temperature_cible_pac_piece_de_vie_maxi
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_maxi
                            below: 20.5
                        sequence:
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 2 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: 20.5
                        sequence:
                          - service: climate.turn_off
                            data: {}
                            target:
                              entity_id: climate.chauffage_pac_piece_de_vie
      - conditions:
          - condition: state
            entity_id: climate.chauffage_pac_piece_de_vie
            attribute: hvac_mode
            state: "off"
        sequence:
          - choose:
              - conditions:
                  - condition: numeric_state
                    entity_id: sensor.tendance_temperature_interieure
                    below: 0
                sequence:
                  - choose:
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            below: sensor.temperature_cible_pac_piece_de_vie_mini
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 2 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_mini
                            below: sensor.target_temperature_sensor
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.target_temperature_sensor
                            below: sensor.temperature_cible_pac_piece_de_vie_maxi
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_maxi
                            below: 20.5
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: 20.4
                        sequence:
                          - service: climate.turn_off
                            data: {}
                            target:
                              entity_id: climate.chauffage_pac_piece_de_vie
              - conditions:
                  - condition: numeric_state
                    entity_id: sensor.tendance_temperature_interieure
                    above: 0
                sequence:
                  - choose:
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            below: sensor.temperature_cible_pac_piece_de_vie_mini
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float + 1 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_mini
                            below: sensor.target_temperature_sensor
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.target_temperature_sensor
                            below: sensor.temperature_cible_pac_piece_de_vie_maxi
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 0 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: sensor.temperature_cible_pac_piece_de_vie_maxi
                            below: 20.5
                        sequence:
                          - service: climate.turn_on
                            data: {}
                            target:
                              device_id: a696af3ab646adcfc453b97509325f8a
                          - delay:
                              hours: 0
                              minutes: 0
                              seconds: 5
                              milliseconds: 0
                          - service: climate.set_temperature
                            entity_id: climate.chauffage_pac_piece_de_vie
                            data:
                              temperature: >-
                                {{
                                state_attr('climate.chauffage_pac_piece_de_vie',
                                'temperature') | float - 2 }}
                      - conditions:
                          - condition: numeric_state
                            entity_id: sensor.temperature_piece_de_vie_temperature
                            above: 20.5
                        sequence:
                          - service: climate.turn_off
                            data: {}
                            target:
                              entity_id: climate.chauffage_pac_piece_de_vie
mode: single

avec :

# Capteur pour l'attribut current_temperature

  - platform: template
    sensors:
      current_temperature_sensor:
        unique_id: temperature_actuelle_pac_piece_de_vie
        friendly_name: "Température actuelle PAC piece de vie"
        value_template: "{{ state_attr('climate.chauffage_pac_piece_de_vie', 'current_temperature') }}"
        unit_of_measurement: "°C"

# Capteur pour l'attribut temperature
  - platform: template
    sensors:
      target_temperature_sensor:
        unique_id: temperature_cible_pac_piece_de_vie
        friendly_name: "Température cible PAC piece de vie"
        value_template: "{{ state_attr('climate.chauffage_pac_piece_de_vie', 'target_temp') }}"
        unit_of_measurement: "°C"

# Capteur température mini (target-hystérésis)
  - platform: template
    sensors:
      temperature_cible_pac_piece_de_vie_mini:
        friendly_name: "Température cible PAC piece de vie mini"
        unit_of_measurement: "°C"
        value_template: "{{ state_attr('climate.chauffage_pac_piece_de_vie', 'target_temp') | float - 0.5 }}"

# Capteur température maxi (target+hystérésis)
  - platform: template
    sensors:
      temperature_cible_pac_piece_de_vie_maxi:
        friendly_name: "Température cible PAC piece de vie maxi"
        unit_of_measurement: "°C"
        value_template: "{{ state_attr('climate.chauffage_pac_piece_de_vie', 'target_temp') | float + 0.5 }}"

du coup, il va falloir que je sauvegarde la température cible de base qui sera éco ou confort pour ne soustraire ou ajouter des valeurs qu’a celle ci et non pas a la target qui est modifiée (je croyais que target etait toujours égal a eco ou confort)

ca me parait compliqué, je pense qu’il y a moyen de faire plus simple mais je ne sais comment pour l’instant … si bonne idée … suis preneur :wink:

Oui je confirme. Dans la durée ca va être inmaintenable. C’est d’ailleurs ce genre d’automatisation très complexe qui m’a incité à développer l’intégration VTherm.

Pour simplifier tu peux :

  • utiliser un script au lieu d’une automatisation. C’est presque pareil mais ca permet de setter des variables et de faire les calculs directement. Variable que tu peux utiliser ensuite dans ta logique.
    exemple:
pilotage_radiateur:
  alias: Pilotage radiateur
  description: Script qui pilote l'allumage ou l'extinction d'un radiateur en fonction
    de sa planification, d'une temperateur de consigne, d'une températeur mesurée
    par un thermomètre
  mode: parallel
  icon: mdi:radiator
  fields:
    radiateur:
      name: radia
      description: Le radiateur à piloter
      required: true
      selector:
        entity:
          domain: switch
    puissance_radiateur_kw:
      name: puissance_radiateur_kw
      description: La puissance du radiateur en kW
      required: true
      selector:
        number:
          min: 0.2
          max: 4
          step: 0.1
          unit_of_measurement: kW
    consigne:
      name: consigne
      description: La consigne de température à appliquer
      required: true
      selector:
        entity:
          domain: input_number
    thermometre:
      name: thermometre
      description: Le thermometre à utiliser
      required: true
      selector:
        entity:
          domain: sensor
    duree_cycle_min:
      name: duree_cycle_min
      description: la durée du cycle en minutes
      required: true
      selector:
        number:
          min: 4
          max: 10
          unit_of_measurement: minutes
    biais:
      name: biais
      description: Le biais ajouté à la mesure de température
      required: true
      selector:
        number:
          min: -1
          max: 1
          step: 0.05
          unit_of_measurement: °C
    function:
      name: function
      description: La fonction a utiliser linear or atan
      required: true
      selector:
        select:
          options:
          - atan
          - linéaire
  variables:
    radiateur_name: '{{ state_attr(radiateur, ''friendly_name'') }}'
    consigne_name: '{{ state_attr(consigne, ''friendly_name'') }}'
    thermometre_name: '{{ state_attr(thermometre, ''friendly_name'') }}'
    puissance_total_et_radia: '{{ (states(''sensor.total_puissance_instantanee'')
      | float + puissance_radiateur_kw) | float }}'
    dseuilSec: 10
    dcycleSec: '{{ duree_cycle_min * 60 }}'
    pc: '{{ states(consigne) | float - states(thermometre) | float }}'
    tempTc: "{% if function == 'linéaire' %}\n  {{ (0.25 * pc + biais) * dcycleSec
      }}\n{% else %}\n  {{ atan(pc + biais)/1.4 * dcycleSec }}\n{% endif %}\n"
    tc: '{{ min([tempTc, dcycleSec]) if tempTc >= dseuilSec and tempTc > 0 else 0
      }}'
    tnc: '{{ max(dcycleSec - tc, 10) }}'

Le gros des calculs est fait dans la partie « variables » en utilisant les paramètres du script (fields).

Tu noteras l’utilisation de if dans les calculs, ce qui évite beaucoup de conditions.

Ensuite tu peux utiliser directement le résultat de ces calculs comme ça par exemple :

- service: switch.turn_on
      target:
        entity_id: '{{ radiateur }}'
    - delay:
        hours: 0
        minutes: 0
        seconds: '{{ tc }}'                     <----- ici 
        milliseconds: 0
  - service: system_log.write
    data:
      message: Attente de {{ tnc }} sec en mode coupé pour radiateur {{ radiateur_name
        }}                                             <----- ici 
      logger: homeassistant.components.script.pilotage_radiateur
      level: info
  - service: switch.turn_off
    target:
      entity_id: '{{ radiateur }}'            <----- ici 
  - delay:
      hours: 0
      minutes: 0
      seconds: '{{ tnc }}'                   <----- ici 
      milliseconds: 0

Je trouve ça beaucoup plus lisible d’en mettre en maximum dans les variables.

il n’y a pas tant de calculs, il y a juste 10 cas possibles, ou 20 si on compte clim allumée auparavant ou non. en version UI, l’automation se lit pas trop mal pour le coup.
il est tout de même dommage de ne pas pouvoir classer les automations dans des dossiers, c’est vite le Bronx !!

par contre, le thermostat ne garde nul part la consigne qui lui a été envoyée par le scheduler, tu me confirme ?

Normalement si. La température de consigne est mémorisée et restaurer au démarrage du thermostat. Tu dois le voir dans Outils de dev / Etats.

sous quel attribut alors ?

La, j’ai :

hvac_modes:
  - 'off'
  - cool
  - heat
  - dry
  - fan_only
min_temp: 16
max_temp: 31
target_temp_step: 1
fan_modes:
  - auto
  - level1
  - level2
  - level3
  - level4
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 23.8
temperature: 6
fan_mode: auto
hvac_action: true
preset_mode: comfort
hvac_mode: 'off'
type: thermostat_over_climate
eco_temp: 4
boost_temp: 8
comfort_temp: 6
eco_away_temp: null
boost_away_temp: null
comfort_away_temp: null
power_temp: null
target_temp: 6
current_temp: 23.8
ext_current_temperature: 21.2
current_power: null
current_power_max: null
saved_preset_mode: comfort
saved_target_temp: -3
saved_hvac_mode: 'off'
window_state: 'on'
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: '2023-08-12T08:28:08.437309+02:00'
last_ext_temperature_datetime: '2023-08-12T08:19:42.046926+02:00'
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 0
last_update_datetime: '2023-08-12T08:28:08.441126+02:00'
timezone: Europe/Paris
window_delay_sec: 30
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
underlying_climate: climate.pac_piece_de_vie
start_hvac_action_date: null
friendly_name: Chauffage PAC piece de vie
supported_features: 25

si je modifie manuellement la consigne, ca donne :

hvac_modes:
  - 'off'
  - cool
  - heat
  - dry
  - fan_only
min_temp: 16
max_temp: 31
target_temp_step: 1
fan_modes:
  - auto
  - level1
  - level2
  - level3
  - level4
preset_modes:
  - none
  - eco
  - comfort
  - boost
current_temperature: 23.8
temperature: 6
fan_mode: auto
hvac_action: true
preset_mode: comfort
hvac_mode: 'off'
type: thermostat_over_climate
eco_temp: 4
boost_temp: 8
comfort_temp: 6
eco_away_temp: null
boost_away_temp: null
comfort_away_temp: null
power_temp: null
target_temp: 6
current_temp: 23.8
ext_current_temperature: 21.2
current_power: null
current_power_max: null
saved_preset_mode: comfort
saved_target_temp: -3
saved_hvac_mode: 'off'
window_state: 'on'
motion_state: null
overpowering_state: null
presence_state: null
window_auto_state: false
security_delay_min: 60
security_min_on_percent: 0.5
security_default_on_percent: 0.1
last_temperature_datetime: '2023-08-12T08:28:08.437309+02:00'
last_ext_temperature_datetime: '2023-08-12T08:19:42.046926+02:00'
security_state: false
minimal_activation_delay_sec: 10
device_power: 1
mean_cycle_power: null
total_energy: 0
last_update_datetime: '2023-08-12T08:28:08.441126+02:00'
timezone: Europe/Paris
window_delay_sec: 30
window_auto_open_threshold: null
window_auto_close_threshold: null
window_auto_max_duration: null
underlying_climate: climate.pac_piece_de_vie
start_hvac_action_date: null
friendly_name: Chauffage PAC piece de vie
supported_features: 25

j’ai passé la consigne de 6 à 6.5, température et target_temp suivent le mouvement. Il me faudrait la température qui a été envoyée par le scheduleur …

Si tu as écrasé la température envoyée par le scheduler par une température perso calculée par ton automatisation, non tu n’as plus accès à celle du schéduler (en tout cas pas dans le thermostat)

ah ok, vais me débrouiller autrement alors, merci

bonjour,

c’est plus compliqué que je ne le voyais …

comment récupérer la valeur de la consigne que le scheduler envoie ? En effet, plusieurs scheduler peuvent envoyer cet ordre (tarif rouge ou non). Je sèche un peu là … une idée ?

sur Jeedom, je m’étais fait une télécommande virtuelle avec les valeurs les plus utilisées, l’agenda ne faisait que « cliquer » sur cette télécommande et mettre une variable a jour (« derniere consigne »).
Là, je n’arrive pas a repérer les envois du scheduler et ce dernier ne peut envoyer qu’un ordre a la fois. la commande « multiple » ne permet de cocher que des entités similaires (climate ou autre) visiblement.

il doit bien y avoir moyen de repérer l’envoi d’ordre d’un ou plusieurs scheduler ou voir ceux qui ne sont pas désactivés par l’option tarif rouge ou non … 2 jours que je cherche …

Bonjour,

Tu dois pouvoir t’abonner aux events emis pour le scheduler. Pour ça il faut se mettre dans Outils de dev / Evenements, s’abonner à tous les events, provoquer un changement de scheduler et chercher l’évent générer.

Tout cela ressemble quand même cruellement à une usine à gaz Russe et j’ai un gros doute sur l’intéret de tout ça. Revenons aux fondamentaux : utiliser VTherm pour avoir la température proche de la température target

Idée 1:
Est-ce que tu ne pourrais pas plus simplement; toutes les heures regarder si il y a un écart target / temperature et envoyer target+0,5 en cas d’écart avec le service set_temperature ?

Idée 2:
jouer avec les coef_int et coe_ext pour être toujours au dessus de la courbe target. Augmente coef_ext (tu le doubles) et tu vois ce que ça donne. Je pense que la temperature sera toujours au dessus de la consigne dans ce cas.

ok, je vais essayer les event dès que possible, merci de l’astuce.

Usine a gaz, oui mais quelle autre solution ? Si je résume : a la mi saison, bientôt donc, la pac va chauffer la nuit en espérant qu’il fasse assez froid pour ça. Puis, le matin, le soleil va taper dans la baie vitrée … la température va monter dans la pièce mais la clim, elle, va réduire la voilure (inverter) sauf que la clim que je possède est une 5kW et qu’elle ne descend pas au dessous de 1kW de rendu. Autrement dit, même si la consigne est largement atteinte et il y a toujours un radiateur de 1000W allumé dans la pièce …
effectivement, ca aide les usine a gaz russe a être rentable :wink:

en révisant la consigne, j’arrive a éteindre la clim une bonne partie de la journée…

idée 1 : 0.5°C est impossible puisque ma clim va de °C en °C. Mais dans tous les cas, il me faut enregistrer ma température de base sinon, je vais déraper en écrasant target et temperature.

idée 2: je ne vois pas ce que ces coef peuvent faire puisque c’est la clim qui gère sa puissance et sa ventil d’après sa sonde. La consigne eco est lancée a 21h30 le soir jusqu’à 17h00 le lendemain. On comprend aisément que la baie vitrée apportera moins de température la nuit qu’en plein après midi.

Oublie le 0,5 et partons sur +1 / -1. L’idée c’est de faire +1 / -1 sur la consigne déjà dans le thermostat (ert donc accessible) et pas sur la consigne du Scheduler. Y a bien un moment où elle va s’allumer / s’éteindre et la dérive va s’arrêter non ? Pis le scheduler va de toute façon remettre regulièrement la vraie consigne.

J’avais oublié que tu n’es pas en mode thermostat sur un switch mais sur un climate. Oublie cette idée.

J’avoue que je pige pas cette partie: si la consigne est atteinte pourquoi t’as un radiateur qui tourne ? Il chauffe de l’air déjà chaud.

Idée 3 : mettre un VTherm sur le radiateur complémentaire de ta pièce (et pas que sur la clim) ? pour compenser les éventuels écarts avec des coef « bas » pour qu’il se déclenche rarement (gros écarts).

les calculs de mon automation sont basés sur la température de consigne en cours (donc la dernière envoyée par un des scheduler). Le problème est que je n’arrive pas a repérer quelle consigne est envoyée au moment du changement de période (éco=17 ou confort=19 ?). Chaque heure, l’automation va modifier la consigne du vterm et du climate, donc je dérive, surtout de 21h30 à 00h00 et de 00h00 à 17h00, il y a le temps de dériver bcp.
il suffirait que je repère quelle température envoie le scheduler au climate lors du changement de période, je garderais cette température de ref pour les calculs tout au long de la période et rebelotte lors du changement de période suivant.

non, je me suis mal fait comprendre. En fait une clim a une valeur rémanente qui, chez moi, est de 1000W. Autrement dit, consigne atteinte, le principe de l’inverter fait baisser la conso mais la clim reste allumée a son mini, soit 1kW comme s’il y avait un radiateur de cette puissance (oui, ok la comparaison n’est pas terrible)
ca répond a l’idée N°3

Tu peux demander au Scheduler de mettre à jour un input_number qui contient la consigne. Comme ça tu l’as toujours quelque-part. Et une automatisation en cas de changement de cette valeur, je la pousse dans le VTherm. Ca s’arrange pas au niveau usine à gaz mais ca doit le faire.

non, je me suis mal fait comprendre. En fait une clim a une valeur rémanente qui, chez moi, est de 1000W. Autrement dit, consigne atteinte, le principe de l’inverter fait baisser la conso mais la clim reste allumée a son mini, soit 1kW comme s’il y avait un radiateur de cette puissance (oui, ok la comparaison n’est pas terrible)

Ah ouais ok, ca me parait dingue ce fonctionnement. J’ai une clim (Airton), une fois la valeur atteinte elle consomme 20 W (un peu de soufflerie qui reste). Et quand elle fonctionne c’est 250 W. T’es sur qu’elle n’a pas un soucis ?. Ca me parait tellement énorme. Bon je comprends mieux ton soucis et j’ai plus d’idée là :worried:

tu peux regarder sur Climatisation Réversible MSZ-HJ50VA - MITSUBISHI
c’est la première description de ma clim que j’ai trouvée.
tu verras dedans « Puissance nominal (min-max) [kw] 5.4 (1.4 / 6.5) » donc qu’elle délivre au mini en mode chaud 1.4kW, c’est normal pour une clim.
Il est vrai qu’on ne trouve pas ce genre de donnée chez Airton par exemple qui, même si elle ne consomme que très peu, délivre certainement encore des calories. la génération de conception est différente aussi …
J’ai une airton dans une petite piece et je dois avouer que sa mauvaire régulation de température me suffit a cet endroit de la maison

Bon, j’ai trouvé pour avoir la valeur de la dernière consigne envoyée avec une automatisation :

alias: Mise a jour valeur dernière consigne PAC piece de vie
description: ""
trigger:
  - platform: event
    event_type: versatile_thermostat_preset_event
condition: []
action:
  - service: input_number.set_value
    data:
      value: "{{ state_attr('climate.chauffage_pac_piece_de_vie', 'temperature') }}"
    target:
      entity_id: input_number.sauvegarde_target_temp_pac_piece_de_vie
mode: single

ca peut servir …