Erstmal ein Hallo an alle, ein Dankeschön dazu, besonders an Simon42
Ich gehöre seit ein paar Wochen auch zu den Leuten die sich mit Home Assistant beschäftigen. Ich bezeichne mich “noch” als Anfänger bei dem System, angefangen habe ich vor ein paar Jahren mir Home Matic.
Daher dürfen die Antworten auch gerne vom Niveau her gaaaanz unten anfangen.
Der Versuch mir eine tägliche PV-Autarkie zu basteln ist mir gelungen, hab es geschafft die richtigen Zeilen zu kopieren. Als nächstes sollte dann eine Monatliche Autarkie dran kommen, das klappt leider nicht und irgendwie komme ich weiter wie es aussehen muss.
Und ehrlich gesagt bin ich mir nicht mal sicher ob mein Ansatz der richtige ist…
Die Monatliche Autarkie ist quasi eine Kopie der täglichen, die ich versucht habe anzupassen.
So habe ich jetzt in der Configuration.yaml drei Positionen angelegt. Die erste um die Autarkie berechnen, mit der zweiten fixiere ich den Tageswert (hatte keine bessere Idee) und mit der 3. resette ich den Zähler wieder.
# Autarkiegrad Monatlich # 2025-03-17
####################
- sensor:
- name: "Autarkiegrad Monatlich"
unique_id: Monatlich_autarkie
state: >-
{{(100-(states('sensor.zahler_strom_hauptzahler_albwerk_ip_netzbezug_energiezahler_wh_monatlich')|float /
states('sensor.verbrauchszahler_hausverbrauch_monatlich_wh')|float)*100)|round(2)}}
unit_of_measurement: "%"
state_class: "measurement"
# Autarkie Monatlich an letzten Tag 23:55 # 2025-03-17
####################
- trigger:
- trigger: time_pattern
hours: "23"
minutes: "55"
conditions: # Fehlermeldung bei Studio Code server??? > i. O.
- condition: template
value_template: "{{ (now() + timedelta(days=1)).day == 1 }}"
sensor:
- name: "Autarkie Monatlich-Ende 23:55"
unit_of_measurement: "%"
state: "{{ iif (states('sensor.autarkiegrad_monatlich'), states('sensor.autarkiegrad_monatlich'), 0) }}"
# Autarkie Monatlich reset um 00:00 # 2025-03-17
####################
- trigger:
- platform: template #das ist genau Mitternacht am letzten Tag eines jeden Monats.
value_template: >
{% set midnight = today_at() + timedelta(days=1) %}
{% set t = now().replace(microsecond=0) %}
{{ t.time() == midnight.time() and midnight.day == 1 }}
sensor:
- name: "Autarkie Monatlich-Ende 23:55"
unit_of_measurement: "%"
state: "0"
Ich bin auch für Tipps dankbar falls ich bei dem Thema grundsätzlich geschickter vorgehen kann.
Vielen Dank schon Mal