Remise à zéro quotidienne

Bonjour,

J’utilise home assistant pour gérer ma production photovoltaïque.

Existe il une commande pour que tous les jours à minuit ma production total recommence 0 ?

Pour le moment elle continue là où cela c’est arrêté la veille.

Merci

Je pense que ceci devrait répondre à ton besoin en parametrant sur un cycle daily.

https://www.home-assistant.io/integrations/utility_meter/

1 « J'aime »

Merci mais ne fonctionne pas.

Je sélectionne ma source, mi sur daily. Mais indique unavalable en sortie.

Perso je n’ai pas trouvé ce qui me convenait: intégrer une puissance sur 5mn et ensuite remise à zéro. → il manque vraiment les RAZ dans les fonctions intégrales :thinking:

Du coup, je me suis fait les miennes à base de 2 sensor template:
A chaque changement de la valeur ou sur un trigger choisi (une heure de la journée)

  • le premier est l’intégrale, On multiplie la donnée mémorisée précédemment par la durée écoulée et on l’ajoute au cumul
  • le second mémorise la donnée courante

Cela donne:

template:
  - trigger:
    - platform: state
      entity_id:
        - sensor.Pw_mes_1
    - platform: state
      entity_id: input_boolean.synchro_rad
      to: 'on'
    sensor:
      - name: Cumul_radg1
        unit_of_measurement: "W"
        state: >
            {% if trigger.platform | string == "time_pattern" -%}
                 {{ "0." | float }}
            {% elif  trigger.entity_id | string == "input_boolean.synchro_rad" %}
                 {{ "0." | float  }}
            {%- else -%}
              {% set integrale = states("sensor.Cumul_radg1") | float %}
              {% set valeur = states("sensor.memo_radg1")   | float %}
              {% set T0 = as_timestamp(states.sensor.Pw_mes_1.last_updated) | float %}
              {% set T1 = as_timestamp(states.sensor.memo_radg1.last_updated) | float %}
                {{  integrale + (valeur * (T0 - T1) / 300 ) | float }}  
            {%- endif %}
      - name: memo_radg1
        unit_of_measurement: "W"
        state: >
            {{ states("sensor.Pw_mes_1") | float }}

Dans l’exemple, les 2 données d’entrée sont:

  • sensor.Pw_mes_1 = mesure de puissance à intégrer
  • input_boolean.synchro_rad = trigger de reset

La variable de sortie est:

  • sensor.Cumul_radg1

Et en intermédiaire, la mémorisation:

  • sensor.memo_radg1

Étrange car cela fonctionne bien.
Tu peux stp partager la config que tu as testé ?

J’ai crée une entrée avec utility Meter. J’ai bien mi ma sonde de production dans utilité meter

Et si je l’intègre il me dis inconnu


As-tu ajouté ta sonde de production dans le recorder ? Car si l’enregistrement n’est pas activé je crois que l’intégration ne fonctionne pas.

En cochant la case consommation nette cela fonctionne.

Je suppose que comme j’ai choisis Daily il sera à 0 à minuit

Pour le coup c’est moi qui ne comprends pas car je ne sais pas où ce trouve ta case consommation nette…

Peux-tu stp poster ici le code de ta définition de voie utility_meter, ce qui est dans le yaml.

Normalement tu dois avoir un truc genre :

utility_meter:
  energy:
    source: sensor.solar_energy #Ta variable source de type compteur en kWh
    cycle: daily

Ce qui te générera automatiquement une seconde variable avec un prefix :

sensor.daily_solar_energy

Je trouve ou ces lignes de codes ?

Dans ton fichier configuration.yaml, tu as fait comment pour utiliser utility_meter sans passer par le code ?

Mon fichier configuration.yalm est vide

Je le configure comme cela :

On en apprend tjrs, je découvre cette interface ! Merci :wink: Comme je ne l’ai jamais utilisé, je ne peux pas t’en dire plus, je suis tjrs passé par le fichier configuration.yaml et cela fonctionne à merveille.