J’ai besoin de calculer ce que me coute l’utilisation de ma pompe de piscine. J’ai toutes les données en ma possession pour faire le calcul mais ne sais pas comment les mettre en œuvre.
J’aimerais inclure ca dans un sensor.
J’ai un relevé de la durée de fonctionnement de ma pompe. Un sensor avec la consommation totale calculée. Via node-red, suivant l’heure de la journée, j’ai une entrée qui change pour indiquer le prix du Kw. Ca change automatiquement si HC ou HP.
Donc, si j’intègre ca dans un sensor via un calcul, quand le prix du Kw changera, ca changera le cout total de ma consommation et vice-versa.
Il faudrait que le calcul du cout total de fonctionnement intègre le fait qu’il y a des périodes ou le kw est moins cher. Et là, je bloque.
Voici mes sensors crées. Mais la partie ou je multiplie est celle que je dois changer par mes entrées.
- platform: template
sensors:
duree_pompe:
friendly_name: Durée de fonctionnement de la pompe
unit_of_measurement: H
value_template: '{{ (states("sensor.conso_pompe_piscine") | float / 3600) | round(0) }}'
conso_pompe:
friendly_name: Consommation de la pompe
unit_of_measurement: Kwh
value_template: '{{ (states("sensor.duree_pompe") | float * 0.105) | round(2) }}'
cout_pompe:
friendly_name: Coût de la pompe
unit_of_measurement: €
value_template: '{{ (states("sensor.conso_pompe") | float * 0.247) | round(2) }}'
ERREUR
Error rendering data template: TypeError: unsupported operand type(s) for -: ‹ str › and ‹ int ›
Je souhaite sauver tous les jours les KWh utilisés par ma PAC depuis la valeur sauvée en début du mois.
alias: Save KWh depuis jour 1 (encours)
description: KWh depuis 1er jour du mois
trigger:
- platform: time
at: "23:45:00"
condition: []
action:
- service: input_number.set_value
data:
value: >-
{{ (states('sensor.pac_kwh_t1_t2') - states'(input_number.pac_kwh_mois') |
int}}
target:
entity_id: input_number.pac_kwh_encours
mode: single
le sensor.pac_kwh_t1_t2 = KWh actuels sur mon compteur
le input_number.pac_kwh_mois = KWh que j’ai sauvé en début du mois et qui fonctionne bien:
alias: Save KWh mois précédent (mois)
description: KWh T1+T2 - mois passé
trigger:
- platform: state
entity_id:
- binary_sensor.minuit
condition:
- condition: template
value_template: "{{ now().strftime(\"%d\")|int == 1}}"
action:
- service: input_number.set_value
data:
value: "{{ states('sensor.pac_kwh_t1_t2') | int }}"
target:
entity_id: input_number.pac_kwh_mois
mode: single
et donc input_number.pac_kwh_encours est la valeur que je devrais stocker à minuit.
|int à transformer en |int(0) c’est un changement de l’année dernière qui est obligatoire désormais. Valable pour tes 2 bouts de code.
le message d’erreur te dit que tu lui demande de faire un sous-traction entre une chaine de caractères et un nombre… HA est bête et méchant il ne sait pas faire…
La seule soustraction est là
J’ai juste dû changer l’étendue de input_number qui était de 1 à 50000 en -50000 à 50000.
En testant, je me suis rendu compte que si le résultat était négatif (normalement non) l’automatisme affichait une erreur.