Hi, danke für die schnelle Antwort.
Also ich habe mir ein PV BKW angeschafft das auf Phase 2 aufliegt und dort auch "einspeist".
Um das ganze etwas zu visualisieren, habe ich mir den 3EM angeschafft und eingerichtet. Alles easy soweit.
Da aber der 3EM bzw. die Cloud zu blöde ist zu saldieren und der Gesamtverbrauch trotz Überschuss mitzählt, bin ich auf Home Assistant aufmerksam geworden.
Leider ist Python sogar nicht meine Sprache und finde diese echt zu kompliziert. Egal anderes Thema
Hier im Forum bin ich nun erstmal 1 Woche mitleser gewesen und habe mir hier und da was zusammengebastelt und auch so erfahren das Shelly irgendwie Bockmist gebaut hat sodass vieles in der Cloud nicht mehr passt und die Berechnungen komplett Banane sind.
Was ich im Endeffekt nur möchte, eine einfach funktionierende Ansicht die folgendes kann:
Aktueller Import / Export / Eigenverbrauch
Zähler für Gesamt Import / Export
Mein Problem ist jetzt aber, der WR hängt ja mit im Stromkreis wo auch noch andere Verbraucher sind (Carport). Nun ist mir klar geworden, ohne einen
Shelly 1PM oder 1PM Plus werde ich nie eine vernünftige Messung hinbekommen. Das meinte ich mit meiner Aussage.
Der Code von Siggi sieht bei mir so aus:
sensor:
- platform: template
sensors:
verbrauch_total:
friendly_name: 'Verbrauch total'
unit_of_measurement: W
unique_id: power_total
device_class: power
value_template: "{{ (states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shellyem3_channel_c_power')|float)|round(0) }}"
- platform: template
sensors:
bezugsleistung_summiert:
friendly_name: 'Bezug Leistung summiert'
unit_of_measurement: W
unique_id: bezug_leistung_summiert
device_class: power
value_template: >-
{% if states('sensor.verbrauch_total')|float > 0 %}
{{ (states('sensor.verbrauch_total')|float)|round(0)
}}
{% else %}
{{ 0|float}}
{% endif %}
- platform: template
sensors:
einspeisungsleistung_summiert:
friendly_name: 'Einspeisung Leistung summiert'
unit_of_measurement: W
unique_id: einspeisung_leistung_summiert
device_class: power
value_template: >-
{% if states('sensor.verbrauch_total')|float < 0 %}
{{ (states('sensor.verbrauch_total')|float)|round(0)
}}
{% else %}
{{ 0|float}}
{% endif %}
Alles anzeigen
Dieser gibt dann folgenden Fehler in dem Template Editor aus:
ValueError: Template error: float got invalid input 'unknown' when rendering template 'sensor:
- platform: template
sensors:
verbrauch_total:
friendly_name: 'Verbrauch total'
unit_of_measurement: W
unique_id: power_total
device_class: power
value_template: "{{ (states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shellyem3_channel_c_power')|float)|round(0) }}"
- platform: template
sensors:
bezugsleistung_summiert:
friendly_name: 'Bezug Leistung summiert'
unit_of_measurement: W
unique_id: bezug_leistung_summiert
device_class: power
value_template: >-
{% if states('sensor.verbrauch_total')|float > 0 %}
{{ (states('sensor.verbrauch_total')|float)|round(0)
}}
{% else %}
{{ 0|float}}
{% endif %}
- platform: template
sensors:
einspeisungsleistung_summiert:
friendly_name: 'Einspeisung Leistung summiert'
unit_of_measurement: W
unique_id: einspeisung_leistung_summiert
device_class: power
value_template: >-
{% if states('sensor.verbrauch_total')|float < 0 %}
{{ (states('sensor.verbrauch_total')|float)|round(0)
}}
{% else %}
{{ 0|float}}
{% endif %}' but no default was specified
Alles anzeigen
Ich habe es soweit angepasst, aber irgendwie will es nicht. Vielleicht übersehe ich auch nur ne Kleinigkeit.
Das hier ist mein momentaner Code den ich mir angepasst habe und von dem schon genannten Link zusammen gewürfelt habe:
sensor:
- platform: template
sensors:
# Template sensor for values of power import (active_power > 0)
power_import:
friendly_name: "Aktueller Import"
unit_of_measurement: 'W'
value_template: >-
{% if (states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shelly3em_channel_c_power')|float) > 0 %}
{{ states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shelly3em_channel_c_power')|float }}
{% else %}
{{ 0 }}
{% endif %}
availability_template: "{{
[ states('sensor.shelly3em_channel_a_power'),
states('sensor.shelly3em_channel_b_power'),
states('sensor.shelly3em_channel_c_power')
] | map('is_number') | min
}}"
# Template sensor for values of power export (active_power < 0)
power_export:
friendly_name: "Aktueller Export"
unit_of_measurement: 'W'
value_template: >-
{% if (states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shelly3em_channel_c_power')|float) < 0 %}
{{ (states('sensor.shelly3em_channel_a_power')|float + states('sensor.shelly3em_channel_b_power')|float + states('sensor.shelly3em_channel_c_power')|float) * -1 }}
{% else %}
{{ 0 }}
{% endif %}
availability_template: "{{
[ states('sensor.shelly3em_channel_a_power'),
states('sensor.shelly3em_channel_b_power'),
states('sensor.shelly3em_channel_c_power')
] | map('is_number') | min
}}"
# Template sensor for values of power consumption
power_consumption:
friendly_name: "Aktueller Verbrauch"
unit_of_measurement: 'W'
value_template: >-
{% if (states('sensor.power_export')|float(0)) > 0 and (states('sensor.shelly3em_channel_b_power')|float(0) - states('sensor.power_export')|float(0)) < 0 %}
{% elif (states('sensor.power_export')|float(0)) > 0 and (states('sensor.shelly3em_channel_b_power')|float(0) - states('sensor.power_export')|float(0)) > 0 %}
{{ (states('sensor.shelly3em_channel_b_power')|float(0)) - states('sensor.power_export')|float(0) }}
{% else %}
{{ states('sensor.power_import')|float(0) - states('sensor.shelly3em_channel_b_power')|float(0) }}
{% endif %}
# Sensor for Riemann sum of energy import (W -> Wh)
- platform: integration
source: sensor.power_import
name: Import
unit_prefix: k
round: 2
method: left
# Sensor for Riemann sum of energy export (W -> Wh)
- platform: integration
source: sensor.power_export
name: Export
unit_prefix: k
round: 2
method: left
Alles anzeigen
Dieser sieht dann so aus:
Der Inhalt kann nicht angezeigt werden, da Sie keine Berechtigung haben, diesen Inhalt zu sehen.
Läuft aber auch nicht richtig, wenn auf Phase 2 halt ein Verbraucher mit zuschaltet, geht die ganze Statistik den Bach runter da mir eine einzelne Messung via 1PM oder 1PM Plus fehlt für den WR. Also das vermute ich
So, ich hoffe ich habe mich einigermaßen verständlich ausgedrückt und nicht noch mehr für Verwirrung gesorgt