Il m’a été demandé de partager ma carte représentant une reproduction du graphique d’origine d’enphase (enlighten), notamment par @Plouf34 dernièrement sur un autre poste.
Je précise tout de suite que ce graphique n’est pas de moi à l’origine. Il y a de multiples sujet la dessus.
Voici donc le graphique :
Il se réalise avec :
- une carte apexcharts
- sensor.envoy_xxxxxxxxxxxx_current_power_consumption
- sensor.envoy_xxxxxxxxxxxx_current_power_production
- sensor.pv_puissance_net
- sensor.pv_puissance_corrigee
Je précise aussi que tous mes sensors sont issus d’un fichier package (solaire.yaml)
Le sensor.envoy_xxxxxxxxxxxx_current_power_consumption est celui que vous avez dans l’intégration enphase. Il correspond à la consommation mesurée par la pince de votre installation.
Le sensor.envoy_xxxxxxxxxxxx_current_power_production est celui que vous avez dans l’intégration enphase. Il correspond à la production mesurée par la pince de votre installation.
Le sensor.pv_puissance_net est la puissance net produite par votre installation. (consommation - production corrigée)
Le sensor.pv_puissance_corrigee est la production coorigée comme ceci :
- si la production est inférieur à 5W alors j’ai 0 (je considère que je ne produis pas vraiment à ce moment là issue d’observation)
- si le soleil est sous l’horizon alors là il ne peut y avoir de production lunaire non plus
Je l’ai obtenue avec ceci :
sensor.pv_puissance_net
##########################################################################
### Puissance net de la maison ####
##########################################################################
- name: PV Puissance Net
state_class: measurement
unit_of_measurement: W
device_class: power
icon: >
{% if (states("sensor.pv_puissance_net") | int > 0) -%}
mdi:solar-panel
{%- elif (states("sensor.pv_puissance_net") | int < 0) -%}
mdi:transmission-tower
{%- else -%}
mdi:power-off
{%- endif %}
state: >
{% set prod = states('sensor.pv_puissance_corrigee') | int(0) %}
{% set conso = states('sensor.envoy_xxxxxxxxxxxx_current_power_consumption') | int(0) %}
{{prod - conso}}
#####################
sensor.pv_puissance_corrigee
##########################################################################
### Puissance corrigée (0 forcé la nuit) ####
##########################################################################
- name: PV Puissance corrigée
state_class: measurement
icon: mdi:solar-panel
unit_of_measurement: W
device_class: power
state: >
{% set value = states('sensor.envoy_xxxxxxxxxxxx_current_power_production') | int(0) %}
{% if value <= 5 -%}
0
{% elif is_state("sun.sun", "below_horizon")%}
0
{%else%}
{{value}}
{%endif%}
Enfin voici la carte :
apexcharts-card
type: custom:apexcharts-card
graph_span: 24h
stacked: true
header:
show: true
title: Consommation Maison
series:
- entity: sensor.pv_puissance_corrigee
type: column
name: Production
color: '#01B4DE'
group_by:
func: avg
duration: 5min
- entity: sensor.envoy_xxxxxxxxxxxx_current_power_consumption
transform: return x *-1
type: column
name: Consommation
color: '#F37320'
group_by:
func: avg
duration: 5min
- entity: sensor.pv_puissance_net
type: column
name: Importée / Exportée
transform: return x *-1
color: '#545456'
group_by:
func: avg
duration: 5min
J’espère n’avoir rien oublié sinon je l’ajouterais mes oublis