Alors, peu être total
5 messages ont été fusionnés à un sujet existant : [ CARTE ] Cartes diverses ( Livebox, NAS, RPI, BLE Proxy…)
Coucou, 'core moi…
Pour mon sensor sensor.capt_four_ecs_current_b
, issu d’un capteur zigbee energy meter with 80A current clamp (PJ-1203A)
je n’arrive pas a avoir de statistiques.
il est tel quel, directement arrivé de Z2M
avec seulement ces 3 attributs:
- unit_of_measurement: A
- icon: phu:rooms-bathroom
- friendly_name: Current_b
comment lui rajouter un state_class: measurement
pour l’avoir dans mes statistiques pour faire un graphique ?
Avec customize.
homeassistant:
customize:
sensor.capt_four_ecs_current_b:
state_class: measurement
Super !!! ca faisait longtemps que j’avais pas rebooté
Salut
Quel intérêt d’avoir des statistiques long termes sur le courant ?
Et même sur la puissance.
pour l’instant, il s’agit de pouvoir obtenir le maximum de précision en ce qui concerne ma consommation électrique sur les différents postes, pour cibler des incohérences, des possibilité d’économie ou autres…
c’est encore avec des graphique que j’arrive le mieux à visualiser tout ca.
rien n’empêche de purger ces statistiques quand on n’en a plus besoin.
Alors de mon coté si j’insiste c’est uniquement par égo. Je me dis que s’il est conseiller de mettre en state_classe : total_increasing, alors il doit etre possible que ca soit le cas
Mais là j’ai fais quelques test avec les modèles et je m’arrache les cheveux
Je ne comprend pas, alors que j’ai mis des valeurs arrondi, pourquoi j’obtient un résultat avec autant de décimales
Peut être que les calculs se font sur les chiffres avec toutes leurs décimales ce qui serait logique.
Il te suffit de mettre un round sur ton total comme tu l’as fais sur les autres
il y a un sens pour les pipes de pipes, essaye d’inverser tes float() et tes round()
un truc | float(0) | round(3)
est différent d’un truc | round(3) | float(0)
aucun des sensors n’a plus de 4 chiffres apres la virgule. Donc je ne comprend pas d’ou sorstent tous les autres
Bien que comme j’ai dis, je n’ai pas autant de décimale sur mes sensors, ça semble fonctionner
okay tu me conseils d’essayer avec des pipes pour les float (ce que je n’ai pas fais j’ai préferer utiliser des ()
Je vais essayer comme ça
j’ai mon sensor « maison » qui marche plus… ???
mais j’ai vu ce message dans le paramétrage du dashboard energie…
Dernière réinitialisation manquante
Les entités suivantes ont la classe d'état 'measurement' mais 'last_reset' est manquant :
* sensor.capteur_four_energy
et quand je compare deux entités:
je ne vois pas de last reset…
sensor.capteur_four_energy 782.68 state_class: measurement
Conso Four kWh unit_of_measurement: kWh
device_class: energy
icon: mdi:stove
friendly_name: Conso Four kWh
sensor.prise_girier_09_energy 16.32 state_class: total_increasing
Conso Onduleur Salon kWh unit_of_measurement: kWh
device_class: energy
icon: phu:apc-ups-upright
friendly_name: Conso Onduleur Salon kWh
alors, j’ai mis state_class: total…
a suivre.
Bonjour, alors je pense que j’ai mis le doigt sur quelque chose pour comprendre pourquoi ce total_increasing
pose problème. L’explication est un peut compliqué et plutot mathématique mais je vais essayer tout de même d’être le plus claire possible
Pour ceux qui veulent la conclusion sans l’explication:
Pour mettre state_classe: total_increasing
il faut que la duréé du trigger d’actualisation du sensor soit plus grande que la durée d’actualisation la plus longue des sensors qui sont écouter dans le template state.
Dans mon cas
state: >
{{ (float(states('sensor.lixee_base')) - 10029.630
- float(states('sensor.smartplug_elia_energy'))
- float(states('sensor.smartplug_1_energy'))
- float(states('sensor.smartplug_2_energy'))
- float(states('sensor.google_home_mini_energy'))
- float(states('sensor.aqara_light_bulb_energy'))
- float(states('sensor.light_mi_bulb_1s_energy'))
- float(states('sensor.mi_bedside_lamp2_energy'))
- float(states('sensor.chauffe_eau_energy'))) | round(3) }}
Le sensor.smartplug_1_energy
s’actualise toutes les 25 minutes environ J’ai donc mis mon trigger à 30 minutes
- trigger:
- platform: time_pattern
minutes: "/30"
EXPLICATION (enfin tentative d’explication^^):
Au début je n’avais aucun trigger. Le sensor était donc actualiser a chaques changement d’état de l’un des capteurs présent dans le template state
Mais cela ne suffisait pas. Le trigger sur E0 n’allait pas.
Si E0 s’actualise toutes les 10 minutes et E1 s’actualise toutes les 15 minutes et E2 toutes les 7minutes, alors a T+1 nous avons un sensor qui s’actualise en prenant state = E0(T+1) - E1(T) - E2(T+1)
La valeur de E1 n’est pas changé puisque 15minutes ne sont pas écouler et la valeur est donc la même que celle prise à T
Chaque valeurs ne fait qu’augmenter. OR ce que nous mesurons entre T et T+1 c’est l’écart entre E0 et SOMME(E1+E2+E3…)
Mais si par exemple E1 n’est pas actualisé à T+1 puisqu’elle ne s’actualise que toutes les 15 minutes Alors a T+1 nous mesurons l’écart entre
- E0 (qui représente TOUTE LA CONSO et donc contient E1(T+1) ET E2(T+1) ET E3(T+1) …)
- et E1(T) + E2(T+1) + E3(T+1)
L’erreur est donc que nous ne soustrayons pas E1(T+1) Mais E1(T) à une donnée qui elle contient E1(T+1)
DONC à T+2, la valeur de E1 sera cette fois ci actualisée puisque a T+2 nous somme à 20minutes et donc > 15 minutes
Notre résultat à T+2 va donc calculer une somme de E1 + E2 + E3 qui sera bien supérieur à celle escompter puisque cette somme contient l’écart de 5 minutes supplémentaires du capteur E1
On a donc un écart(T+2) < écart (T+1) Ce qui nous donne une state(T+2) < state(T+1)
Ainsi une diminution de la valeur qui se constate sur le graphique des valeurs, et donc une valeur qui ne correspond pas aux conditions pour êtres une total_increasing
J’ai mis ce trigger de time_pattern cette nuit avant d’allé dormir. Et depuis je n’ai eu aucun problème, aucune valeur T+1 < T
Disparition du soucis initiale Entity sensorss.XXXXXXX from integration template has state class total_increasing, but its state is not strictly increasing.
Mon capteur ne s’actualise en revanche plus que toutes les 30 minutes (pas un soucis pour moi) mais si je veux le faire plus fréquemment il faudra que je fasse en sorte que chaques capteurs que mon template écoute s’actualisent plus rapidement que la durée que je choisirait pour mon template
Je sais que c’est hyper farfelu et moi même j’ai beaucoup de mal a me conceptualiser cela dans ma tête, j’ai essayer d’expliquer comme je pouvais, j’espère que certaine.es d’entre vous comprendrons quand même
Je croise le doigts pour que ça soit bon et que ça soit pas un coup de chance de ma part depuis 14h qde ne pas avoir eu de valeurs négatif XD