Bonjour,
Je suis sur haos tournant sur proxmox 8 avec des containers mqtt, zigbe2mqtt, zwavejs, influxdb, grafana, frigate. cela fait 1 mois que j’ai basculé de jeedom et je pense l’avoir deja largement surpassé. je suis donc neophite avec le codage.
je récupère la teleinfo de mon compteur linky sans problème via un ha secondaire sur un rpi3 équipé d’une cartelectronique en mqtt.
je stock les données avec infuxdb et les présente dans mon dashboard grâce a une visualisation grafana.
Mon tableau de bord energy fonctionne aussi parfaitement bien. j’ai bien entendu créer des input_boolean pour les tarifs.
Pour l’instant tout va bien.
Mon but est d’afficher le cout journalier (et mensuel mais la procédure est la même) dans mon dashboard HA. (je sais que je peux l’afficher avec grafana du coup mais ce n’est pas ce que je recherche)
j’ai donc créé une entrée compteur de service pour les heures creuses avec un cycle journalier. la même chose pour les heures pleines.
Sous node-red j’ai 2 triggers states qui collectent les valeurs que j’injecte dans un noeud fonction :"
msg.payload = msg.payload * 0.0002288;
return msg;
"
ca fonctionne mais voila :
premier probleme : « 0.0002288 » etant le prix du Wh j’aurais voulu remplacer ce chiffre par mon input_boolean tarifaire déjà configuré.
deuxieme probleme; j’ai essayé en vain avec round() ou tofixed() d’arrondir a 2 decimales.
Quand j’aurais tout ça, j’en fais quoi de ce chiffre comment je peux l’afficher ? pour le moment je fais un input-number.set_value mais ce ne me convient pas. J’ai chercher a creer un sensor sans reussite.
Don voila si quelqu’un pouvais m’aiguiller. merci d’avoir prit le temps de me lire.
System Information
version |
core-2024.11.3 |
installation_type |
Home Assistant OS |
dev |
false |
hassio |
true |
docker |
true |
user |
root |
virtualenv |
false |
python_version |
3.12.4 |
os_name |
Linux |
os_version |
6.6.54-haos |
arch |
x86_64 |
timezone |
Europe/Paris |
config_dir |
/config |
Home Assistant Community Store
GitHub API |
ok |
GitHub Content |
ok |
GitHub Web |
ok |
HACS Data |
ok |
GitHub API Calls Remaining |
5000 |
Installed Version |
2.0.1 |
Stage |
running |
Available Repositories |
1467 |
Downloaded Repositories |
14 |
Home Assistant Cloud
logged_in |
false |
can_reach_cert_server |
ok |
can_reach_cloud_auth |
ok |
can_reach_cloud |
ok |
Home Assistant Supervisor
host_os |
Home Assistant OS 13.2 |
update_channel |
stable |
supervisor_version |
supervisor-2024.11.4 |
agent_version |
1.6.0 |
docker_version |
27.2.0 |
disk_total |
30.8 GB |
disk_used |
6.7 GB |
healthy |
true |
supported |
true |
host_connectivity |
true |
supervisor_connectivity |
true |
ntp_synchronized |
true |
virtualization |
kvm |
board |
ova |
supervisor_api |
ok |
version_api |
ok |
installed_addons |
File editor (5.8.0), Cloudflared (5.2.2), Node-RED (18.1.1), Get HACS (1.3.1), Home Assistant Google Drive Backup (0.112.1) |
Dashboards
dashboards |
4 |
resources |
9 |
views |
16 |
mode |
storage |
Recorder
oldest_recorder_run |
19 novembre 2024 à 09:02 |
current_recorder_run |
29 novembre 2024 à 11:09 |
estimated_db_size |
187.85 MiB |
database_engine |
sqlite |
database_version |
3.45.3 |
Spotify
api_endpoint_reachable |
ok |
Salut
Bon, là clairement c’est soit une erreur de syntaxe, soit une erreur d’utilisation.
boolean
c’est pour du on/off ou vrai/faux… Tu peux essayer d’y mettre un chiffre, mais ça va pas bien marcher
Aucun interet de faire un arrondi dans la variable elle même. Dans l’affiche, OK, mais ailleurs c’est pas une bonne pratique cart tous les calculs qui se basent sur cette valeur arrondi sont/seront faux
Attention à ne pas confondre entité (le stockage de la valeur) et l’affichage qui est fait à partir de cette entité… input_number c’est la bonne entité pour ajouter à la main une valeur.
sensor ça pourrait être ok (les propriétés sont les mêmes) mais c’est plus réservé aux templates (calcul automatique par HA, NR c’est pas considéré comme automatique)
A lire le sujet, j’ai l’impression que tu es parti loin et pas dans la bonne direction :
- le dashboard energy fait déjà beaucoup beaucoup de choses
- les compteurs HA aussi
- les templates, c’est surement plus efficace que NR. Quand NR ne marche pas, ton calcul non plus. Avec un template, dés que HA marche, le template aussi
Pardon de m’incruster, mais perso j’ai pas encore compris le concept d’avoir une entrée pour le tarif quand on peut avoir les différents indexs qui remontent directement dans le dashboard energie.
Je suis en Tempo, j’ai donc 6 tarifs différents, le Linky via la TIC remonte la valeurs des 6 indexes correspondant. J’ai donc ajouté ces 6 compteurs d’énergie dans le dashboard en indiquant pour chacun le cout du kWh dans la config. Ensuite HA se débrouille…
Autant quand on a qu’un seul compteur d’énergie qui est identique pour tous les tarifs je comprend l’intérêt, autant quand on fait remonter directement les infos du compteur et donc tous les indexes correspondants aux différents tarifs, c’est vraiment chercher la complication pour rien.
Merci, pour toutes vos réponses et le temps consacré. Je pars donc dans la mauvaise direction. Mon tableau de bord energy fonctionne parfaitement comme je le précisais, je voulais afficher le cout a mon tableau de bord perso sans passer par le dashboard energy mais dites moi si je me trompe mais je ne crois pas qu’on puisse récupérer juste l’info des coûts énergétique.
Là été mon but, je vais fouillez du coté template alors.
Du coup j’ai créer une entrée Template sensor :
sensor:
- platform: template
sensors:
cout_elec_jour:
friendly_name: « Coût Jounalier »
unit_of_measurement: « € »
value_template: >
{% set consommation_wh_hp = states(‹ sensor.hp_journalieres ›) | float %}
{% set tarif_kwh_hp = states(‹ input_number.heure_pleine_kwh ›) | float %}
{% set prix_hp = consommation_wh_hp / 1000 * tarif_kwh_hp %}
{% set consommation_wh_hc = states(‹ sensor.hc_journalieres ›) | float %}
{% set tarif_kwh_hc = states(‹ input_number.heure_creuse_kwh ›) | float %}
{% set prix_hc = consommation_wh_hc / 1000 * tarif_kwh_hc %}
{% set prix = prix_hc + prix_hp %}
{{ prix | round(2) }}
Tout simplement, ca a l’air de fonctionner. Merci pour l’aiguillage
1 « J'aime »