configuration.yaml - trigger - werte setzen

ddicht

New member
Guten Morgen!
Ich habe ein Problem, dass ich mit trigger und sensoren in der configuration.yaml nicht wirklich zurecht komme.

Was möchte ich tun:
Ich will den Haus Stromverbrauch berechnen und pro Tag und in weiterer Folge pro Monat und Jahr sichern. Das Problem ist, wenn ich
die Berechnung mit Verbrauchszählern und Template mache, dann stimmen die Werte nicht, weil das Zurücksetzen auf 0 nicht immer
gleichzeitig vom HA gemacht wird und somit komische Werte das Ergebnis sind. Egal, ich hab mich nun entschlossen das mittels eines
Template Sensors in der config.yaml zu lösen und danach hätte ich gerne, dass dieser Sensor zu einer gewissen Zeit (kurz vor Mitternacht
also quasi vorm Rücksetzen der Verbrauchszähler) in einen "Tagessensor" geschrieben wird. Dieser Tagessensor soll dann nach Mitternacht
wieder auf 0 gesetzt werden. Somit kann ich ihn in den Monats und Jahressensoren sichern.

Nun schaffe ich es schon, dass ich einen Sensor gemacht habe, welcher gerade den aktuellen Gesamtstromverbrauch des Hauses anzeigt
(ist eine Berechnung aus einzelnen Helfern).
Ich schaffe es auch, dass ich zu einem gewissen Zeitpunkt diesen Wert in den "Tageswert" schreibe.
Was ich nicht zusammenbringe, ist, dass ich zB. ein paar Minuten später diesen Tageswert erneut ändere ...
Am Ende des Tages soll aber der "Tageswert" um kurz nach Mitternacht auf Null gesetzt werden.

Bitte um eure Hilfe - anbei ein Screenshot der beiden Sensoren und der Code aus der configuration.yaml

Danke!
YAML:
template:
  - sensor:
    - name: "Haus - gesamt Stromverbrauch Tag Helfer"
      unit_of_measurement: "KWh"
      state: "{{ states('sensor.wattsonic_pv_tag_gesamt') | float - states('sensor.wattsonic_batterie_laden_tag_2') | float + states('sensor.cfos_verbrauch_tag') | float + states('sensor.carport_verbrauch_whirlpool_und_zweite_wallbox_tag') | float + states('sensor.wattsonic_barterie_entladen_tag') | float- states('sensor.shelly_haus_gesamt_kw_einspeisung_tag') | float+ states('sensor.wattsonic_grid_purchasing_energy_on_that_day') | float}}"
      unique_id: "haus_gesamt_stromverbrauch_tag_helfer"
  - trigger:
      platform: time_pattern
      hours: 11
      minutes: 50
    sensor:
      name: "Haus - gesamt Stromverbrauch Tag"
      state: "{{ states('sensor.haus_gesamt_stromverbrauch_tag_helfer') | float(2)}}"
      unit_of_measurement: "KWh"
      unique_id: "haus_gesamt_stromverbrauch_tag"   
  - trigger:
      platform: time_pattern
      hours: 23
      minutes: 50
    sensor:
      name: "Haus - gesamt Stromverbrauch Tag"
      state: "{{ states('sensor.haus_gesamt_stromverbrauch_tag_helfer') | float(2)}}"
      unit_of_measurement: "KWh"
      unique_id: "haus_gesamt_stromverbrauch_tag"
  - trigger:
      platform: time_pattern
      hours: 0
      minutes: 10
    sensor:
      name: "Haus - gesamt Stromverbrauch Tag"
      state: "0"
      unit_of_measurement: "KWh"
      unique_id: "haus_gesamt_stromverbrauch_tag"
Screenshot 2024-08-09 090256.png
 
Diesen Beitrag selbst hab ich nicht gelesen, ist aber auch nicht wirklich das, was ich brauche.
ich will meine Energie nicht via Energiedashboard verfolgen, da mir das zu unübersichtlich ist und ich nicht alles so einstellen kann, wie ich möchte.

Von daher habe ich mir eben meine Sensoren selbst gemacht und eben nur das Problem, dass lt. Code nur der erste Trigger ausgeführt wird und die anderen nicht bzw. bin ich mir auch nicht sicher, ob es korrekt ist, wie ich nach Mitternacht den Sensor nulle.
 
Du willst Doch deinen Stromverbrauch messen und Meßwete für jeden Tag, jeden Monat und jedes Jahr bekommen. Und genau das wird in dem Beitrag auf beschrieben.
 
ja das weiss.ich schon jedoch bei der berechnung gibt es.das problem dass.nicht alle verbrauchszähler tatsächlich um 0 uhr resetten und daher der 23.59.59.99 wert irgend welchen blödsinn macht und von daher die berechnung nicht stimmt. das problem lässt sich auch nicht lösen. hab ich schon in anderen foren gepostet und mit anderen ausgetauscht. von daher gehe ich das thema so an.

nicht böse sein aber dein guter beitrag iat nicht relevant für mein problem bzw meine Anforderung
 
bzw. habe ich wie schon oben erwähnt eine vielzahl von sensoren die da einfliessen sollen und ausserdem gefällt mir das energiedashboard nicht
 
Ich weiß nicht, was Du immer mit dem Energiedashbord hast.
Es geht um Sensoren. Da beschreibe ich in dem Beitrag, wie man welche anlegt, die den Tagesverbrauch, den Wochenverbrauch, den Monatsverbrauch und auch den Jahresverbrauch berechnen und speichern können.
Die Resetten automatisch zum jeweiligen Zeitpunkt und die stimmen auch bei mir.
Wo und wie Du die Anzeigen lässt. ist allein dein Problem und hat nichts mit dem Dashboard zu kann. Kann man nutzen, muß man aber nicht.
Ich habe ne AVM Steckdose, die an meiner PV angeschlossen ist. Diese zeigt mir immer den aktuellen Ertrag an bzw. den Ertrag an einem Tag. 1570 Wh zeigt die mir an.
Mein Verbrauchszähler, den ich über den Wechselrichter speise zeigt mir für heute 1572 Wh an. Also keine Spur von "irgendwelchen Blödsinn machen/anzeigen"
Das selbe mit meiner Klimaanlage. Die Werte von der Meßsteckdose und die berechneten Werte stimmen exakt.
Und dann die Berechnung des Stromverbrauch mittels Smartmeter und den Verbrauch einzelner Geräte, erfasst mit Meßsteckdosen.
Jeden Tag exakte Werte, für jeden Monat exakte Werte und auch der Jahresverbrauch wirkt exakt erfasst und stimmt mir dem überein, was mein Versorger mir in Rechnung stellt.
Wenn also bei Dir deine selbst erstellten Sensoren Mist bauen, solltest Du dich damit anfreunden, das die es nun mal nicht tun und eine Lösung, die schon da ist, akzeptieren.

Der ganz große Fehler in deinem Code oben ist, das Du nicht um 23:50 auslösen lässt, sondern NACH 23 Stunden und 50 Minuten.
Das kann dann auch schon mal um 01:00 Uhr Nacht oder auch 12:00 Uhr Mittags sein, weil es eben KEINE Uhrzeit ist, sondern eine Zeitspanne.

Code:
  - trigger:
      platform: time_pattern
      hours: 11
      minutes: 50
    sensor:
      name: "Haus - gesamt Stromverbrauch Tag"
      state: "{{ states('sensor.haus_gesamt_stromverbrauch_tag_helfer') | float(2)}}"
      unit_of_measurement: "KWh"
      unique_id: "haus_gesamt_stromverbrauch_tag"
Du holst alle 11 Stunden und 50 Minuten den Wert.
Dazu dann nochmal alle 23 Stunden und 50 Minuten und dann alle 10 Minuten auch nochmal.
Da kann eigentlich nur Mist raus kommen.
 
ja danke das mit der zeit stimmt - ich habe das auch mittlerweile auf time geändert.
nichts desto trotz beantwortet das meine ursprüngliche frage nicht.
ich habe einige sensoren mit wochen tages und monatswerten aber eben bei dieser berechnung klappt das nicht....
siehe screenshot. bis kurz vor Mitternacht passt der wert jedoch um Mitternacht passiert irgendein blödsinn und sie falschen spitzen entstehen.
das ist ein templatesensor der aus normalen sensoren und verbrauchszählern etwas berechnet.

daher möchte ich das anders lösen..
 

Anhänge

  • Screenshot_20240811_071247_Samsung Internet.jpg
    Screenshot_20240811_071247_Samsung Internet.jpg
    230,8 KB · Aufrufe: 6
der templatesensor hatte genau die berechnung vom code oben - alle verbrauchszähler wurden auch korrekt um Mitternacht auf 0 gesetzt jedoch scheint es so dass HA das nicht für jeden exakt macht und daher auf einmal solche ausreisser entstehen
 
Ich frage mich, wie ein Ausreißer nach oben bei deiner Formel entstehen kann.
Setzen wir mal Zahlen ein. Einfach mal so.
10 - 3 + 4 + 5 + 2 - 3 + 4 = 19
Angenommen das wären die Werte seiner Sensoren um 23:59:59
Jetzt setzt HA die Sensoren auf 0. Selbst wenn einer nicht auf 0 gesetzt würde, kann es keinen Ausreißer nach oben geben, außer es wären krasse Unterschiede.
Aber Du kannst Dir ja auch alle Sensoren genauso anzeigen lassen, wie in deiner Grafik oben. Sogar in der selben Grafik.
Da kannst Du dann die Zeit enger fassen und dann ja genau sehen, welcher Sensor da zu spät reagiert.

Ich befürchte eher, das durch dein Ausprobieren irgendwo noch ein Codeschnipsel existiert, das dieses verursacht.

Wie sieht den dein aktueller Code mit den Änderungen aus ?
 
ich hab mir schon alle sensoren gezoomt anzeigen lassen - genau das ist das problem, dass akke brav um 0.00.00 zurücksetzen und dann aber si ein ausreisser herauskommt.

darum setz ich den wert um 23.55 uhr und möchte dann den tageszähler um kurz nach Mitternacht auf 0 setzen
 
YAML:
template:
  - sensor:
    - name: "Haus - gesamt Stromverbrauch Tag Helfer"
      unit_of_measurement: "KWh"
      state: "{{ states('sensor.wattsonic_pv_tag_gesamt') | float - states('sensor.wattsonic_batterie_laden_tag_2') | float + states('sensor.cfos_verbrauch_tag') | float + states('sensor.carport_verbrauch_whirlpool_und_zweite_wallbox_tag') | float + states('sensor.wattsonic_barterie_entladen_tag') | float- states('sensor.shelly_haus_gesamt_kw_einspeisung_tag') | float+ states('sensor.wattsonic_grid_purchasing_energy_on_that_day') | float}}"
      unique_id: "haus_gesamt_stromverbrauch_tag_helfer"
  - trigger:
      platform: time
      at: "23:55"
    sensor:
      name: "Haus - gesamt Stromverbrauch Tag"
      state: "{{ states('sensor.haus_gesamt_stromverbrauch_tag_helfer') | float(2)}}"
      unit_of_measurement: "KWh"
      unique_id: "haus_gesamt_stromverbrauch_tag"
 
so soll das aussehen

unten hab ich dann monat und jahr - das klappt auch
 

Anhänge

  • Screenshot_20240811_124647_Samsung Internet.jpg
    Screenshot_20240811_124647_Samsung Internet.jpg
    480,7 KB · Aufrufe: 4
Zurück
Oben