Suivi du coût HC/HP dans le dashboard energy

Mon problème

Bonjour,
J’ai mis en place des pinces ampermétrique Shelly pour suivre ma conso electrique.
Je suis en mode heure pleine / heure creuse et j’aurais souhaité pouvoir « donner » au dashboard energie le coût au kwh en fonction de l’heure et du jour (pour ma part je suis en HC de 1h30 à 7h30 et de 13h a 15 ainsi que les mercredi et weekend.

Et je ne sais pas du tout comment faire ça.
Un script ? un helper ?

Ma configuration


[center]## System Information

version core-2022.8.4
installation_type Home Assistant Container
dev false
hassio false
docker true
user root
virtualenv false
python_version 3.10.5
os_name Linux
os_version 5.10.0-16-amd64
arch x86_64
timezone Europe/Paris
config_dir /config
Home Assistant Community Store
GitHub API ok
GitHub Content ok
GitHub Web ok
GitHub API Calls Remaining 4982
Installed Version 1.26.2
Stage running
Available Repositories 1198
Downloaded Repositories 17
Home Assistant Cloud
logged_in true
subscription_expiration March 9, 2023 at 1:00 AM
relayer_connected true
remote_enabled true
remote_connected true
alexa_enabled false
google_enabled true
remote_server eu-central-1-4.ui.nabu.casa
can_reach_cert_server ok
can_reach_cloud_auth ok
can_reach_cloud ok
Dashboards
dashboards 6
resources 8
views 9
mode storage
Recorder
oldest_recorder_run January 26, 2023 at 10:11 PM
current_recorder_run January 26, 2023 at 11:11 PM
estimated_db_size 530.57 MiB
database_engine sqlite
database_version 3.38.5
Spotify
api_endpoint_reachable ok
[/center]

Bonjour

il vous faut mettre en place un utility meter

Home Assistant

Utility Meter

Instructions on how to integrate the Utility Meter into Home Assistant.

et plus particulierement la configuration avancée

Advanced Configuration

The following configuration shows an example where 2 utility_meters (daily_energy and monthly_energy) track daily and monthly energy consumptions.

Both track the same sensor (sensor.energy) which continuously monitors the energy consumed.

4 different sensors will be created, 2 per utility meter and corresponding to each tariff. Sensor sensor.daily_energy_peak, sensor.daily_energy_offpeak, sensor.monthly_energy_peak and sensor.monthly_energy_offpeak will automatically be created to track the consumption in each tariff for the given cycle.

The select.daily_energy and select.monthly_energy select entities will track the current tariff and allow changing the tariff.

utility_meter:
  daily_energy:
    source: sensor.energy
    name: Daily Energy
    cycle: daily
    tariffs:
      - peak
      - offpeak
  monthly_energy:
    source: sensor.energy
    name: Monthly Energy
    cycle: monthly
    tariffs:
      - peak
      - offpeak

YAML

Copy

Assuming your energy provider tariffs are time based according to:

  • peak: from 06:08 to 12:38 and 15:38 to 01:08
  • offpeak: from 01:08 to 06:08 and 12:38 to 15:38

a time based automation can be used:

automation:
  trigger:
    - platform: time
      at: "01:08:00"
      variables:
        tariff: offpeak
    - platform: time
      at: "06:08:00"
      variables:
        tariff: peak
    - platform: time
      at: "12:38:00"
      variables:
        tariff: offpeak
    - platform: time
      at: "15:38:00"
      variables:
        tariff: peak
    action:
    - service: select.select_option
      target:
        entity_id: select.daily_energy
      data:
        option: "{{ tariff }}"
    - service: select.select_option
      target:
        entity_id: select.monthly_energy
      data:
        option: "{{ tariff }}"

vous aurez automatiquement une ségrégation des valeurs de consommation HP HC qui sera intégrable directement dans le module energy de HA

Merci pour ta réponse cela m’a bien aidé.
Voici ma conf qui semble super bien fonctionner :

Sachant que j’ai défini un Calendar de type helper avec les bon créneaux.

Pour que tout fonctionne j’ai fait un package :
configuration.yaml :

homeassistant:
  packages: !include_dir_named packages

packages/edf.yaml :

utility_meter:
  daily_energy:
    source: sensor.shellyem_production_consommation_channel_1_energy
    name: Consommation EDF - J
    cycle: daily
    tariffs:
      - HP
      - HC
  monthly_energy:
    source: sensor.shellyem_production_consommation_channel_1_energy
    name: Consommation EDF - M
    cycle: monthly
    tariffs:
      - HP
      - HC
automation:
  alias: "Heures Creuses - Heures Pleines"
  trigger:
    - platform: calendar
      event: start
      offset: 0:0:0
      entity_id: schedule.hc_schedule
      variables:
        tariff: "HC"
    - platform: calendar
      event: stop
      offset: 0:0:0
      entity_id: schedule.hc_schedule
      variables:
        tariff: "HP"
  action:
    - service: select.select_option
      target:
        entity_id: select.daily_energy
      data:
        option: "{{ tariff }}"
    - service: select.select_option
      target:
        entity_id: select.monthly_energy
      data:
        option: "{{ tariff }}"

Cool je connaissais pas les packages ça va me plaire pour les split configuration

Bonjour @Joachim / @jrvrcd,

Je suis exactement dans le même cas, j’ai également un Shelly EM pour monitorer ma conso.
Depuis un certain temps, j’étais en tarif base mais je viens de passer en HP/HC. J’aimerai également pouvoir donner au dashboard énergie le coût du kwh. Après plusieurs recherches, de nombreuses personnes semblent utiliser 2 compteurs pour les coûts mais cela semble poser certains problèmes & je suis tombé sur votre discussion :).

J’essaye donc de mettre en place la solution proposée mais je ne comprends réellement comment intégrer les infos dans le dashboard énergie. Pouvez-vous m’éclairer SVP ?
Aujourd’hui, j’ai une config standard :

  • Conso. ENEDIS > sensor shelly em
  • Electricity Unit Price > sensor avec un prix renseigné dans le yaml

Que dois-je modifier ? Je ne vois pas comment utiliser le utility meter daily dans tout cela. J’ai certainement manqué quelque chose :(.

Merci pour votre aide !

Salut

si je comprends bien tu as un shelly qui monitore ta consommation
donc j’imagine qu’il te renvoie une puissance instantanée ( soit des Watts soit des Volts Amperes)
et avec un peu de bol un cumul d’ energie ( des Watts heure )

premier cas de figure
ton shelly ne te donne pas le cumul de l’energie. ( des wh ou des kwh)
il va falloir le calculer

tu vas faire cela avec un sensor de type integration

sensor:

  - platform: integration
    source: sensor.shelly_power
    name: consommation
    method: left
    unit_prefix: k
    unit_time: h
    round: 2

cette nouvelle entité va te « convertir » des watts ( qui est une valeur instantanée de puissance ) en energie ( qui est un cumul de cette puissance instantanée sur une durée donnée )

a partir de là que ton shelly te fournisse une consommation ou pas,
c’est la partie « commune » de ce principe

cette consommation ( que ce soit celle calculée ou celle fournie par ton shelly)
maintenant tu va devoir la « découper » en fonction de ton contrat en heure creuse et en heure pleine
pour ma part j’ai deux tranches horaires heure creuse et heure pleine
de 01:08 a 06:08
et de
12:38 a 15:38

c’est la qu’entre en jeu les « utility meter »

utility_meter:
  consommation_maison:
    source: sensor.consommation
    cycle: daily
    tariffs:
      - peak
      - offpeaks

automation:
- id: '1669997472702'
  alias: peak-offpeak
  description: ''
  trigger:
  - platform: time
    at: 01:08:00
    variables:
      tariff: offpeak
  - platform: time
    at: 06:08:00
    variables:
      tariff: peak
  - platform: time
    at: '12:38:00'
    variables:
      tariff: offpeak
  - platform: time
    at: '15:38:00'
    variables:
      tariff: peak
  action:
  - service: select.select_option
    target:
      entity_id: select.consommation_maison
    data:
      option: '{{ tariff }}'

tu auras deus nouvelles entitées
sensor.consommation_maison_offpeak
et
sensor.consommation_maison_peak

que tu mettras dans ta definition de dashboard energie

comme je suis branché directement a mon linky j’ai ça
image

tu n’as qu’a remplacer consommation_heure_pleine par consommation_maison_peek
et consommation_heure_creuse par consommation_maison_offpeek

elle est pas belle la vie ???

Un grand merci pour ces explications précises @jrvrcd !
C’était juste une incompréhension de ma part, c’est parfait !
J’ai simplement perdu l’historique de l’ancien mais ce n’est pas grave.

Merci @jrvrcd ça fonctionne parfaitement chez moi avec le Shelly EM Pro 50 qui a été ajouté dans l’intégration Shelly hier

Merci

c’est le but du forum
etre aidé et ensuite finir par aider

Bonjour,
Je coince sur une chose. Dans l’es automatisation quel déclencheur prend tu ?
Peut tu nous montrer les déclencheur condition et action que tu a mise car je coince à ce niveau et étant pas encore pro de ha je bloque merci

Salut

le déclencheur est un ou un ensemble de condition horaire.

lorsque la condition est atteinte, la variable tariff se voit affecter respectivement la valeur peak ou offpeak

attention
dans l’automation c’est tarrif
et dans l’utility meter c’est tarrifs

tu as un deuxième exemple d’utilisation dans ce sujet là si cela peux t’aider

sinon la doc

1 « J'aime »

Bonsoir,
Je m’exprime peut mal.
En faute je ne sait pas comment mettre ce code dans l’es automatisation tout simplement


automation:
- id: '1669997472702'
  alias: peak-offpeak
  description: ''
  trigger:
  - platform: time
    at: 01:08:00
    variables:
      tariff: offpeak
  - platform: time
    at: 06:08:00
    variables:
      tariff: peak
  - platform: time
    at: '12:38:00'
    variables:
      tariff: offpeak
  - platform: time
    at: '15:38:00'
    variables:
      tariff: peak
  action:
  - service: select.select_option
    target:
      entity_id: select.consommation_maison
    data:
      option: '{{ tariff }}'

SAlut

tu vas dans
parametres
automatisations et scenes

creer une automatisation
creer une nouvelle automatisation

et tu cliques sur les 3 petits points

et tu choisis l’option
modifier en YAML

image
et tu fait un copier coller du code.

ne pas oublier de valider et checker ton automation
dans
outils de développement

verifier la configuration

et recharger toute la configuration sui tu n’as pas de messages d’erreur

Si tu es un grand debutant

je t’invite a regarder des tutos en video sur youtube pour assimiler les bases principales

Bonjour à tous
J’ai une config qui fonctionne parfaitement pour les énergies. Par device, groupe,…
Le pannel energie fonctionne aussi parfaitement avec les utility meter (jour, semaine, mois…)

En revanche maintenant, je souhaiterais pouvoir avoir le cout par équipement et groupe pour en faire un dashboard et qui prenne en compte la période tarifaire en compte. (HP/HC)
A ce jour j’ai un template qui calcul le cout pour chaque période en temps réel mais il n’est pas sauvegardé en Long term statistiques. Pourquoi ? pour pouvoir faire des graphiques par rapport à la période précédente ! exemple comparer année et année n-1

Quelle est la meilleure manière de procéder ?
Je me demandais si il fallait refaire des utility meter pour les couts € ou garder le même template cout pat équipement et par période tarifaire mais avec un state_class total ?

L 'idée est aussi pouvoir modifier le tarif quand EDF change au 1er féfvrier par exemple. manuellement.
Merci pour votre aide

Bonjour Joachim

J’ai copié ton code dans le config.yaml je n’arrive pas à créer le « packages.yaml »