PV Sonnenerzeugung errechnen

Du hast ja
Tasmota, Akku_out und Akku_in als Sensorwerte
Und da Akkus nie zeitgleich geladen und entladen werden …

PVerzeugung =
  IF Akku_out > 0
    Tasmota - Akku_out  # PV ist Tasmota - der Akkuentnahme
  ELSE
    IF Akku in > 0
      Tasmota - Akku_in # PV liefert zuviel, der Akku wird geladen
    ELSE
      Tasmota           # Akku ist voll, also zeigt Tasmota die reine PVerzeugung
    ENDIF
  ENDIF

hab’s nicht probiert, aber von der Logik müsste es so sein.

Das könnte klappen, beim Else fall mit dem Akku in, müsste aber ja Tasmota + Akku_in sein? Also beides ist ja Sonnenenergie oder nicht?

Kann man das so als Sensor dann einfach erstellen?


- sensor:
  - name: 'solarerzeugung'
    state_class: total_increasing
    unit_of_measurement: kWh
    device_class: energy
    state: >
        {% if states('sensor.akku_entnommen')|float > 0 %}
            {{ states('sensor.hauseinspeisung')|float - states('sensor.akku_entnommen')|float }}
        {% elif states('sensor.akku_geladen')|float > 0 %}
            {{ states('sensor.hauseinspeisung')|float + states('sensor.akku_geladen')|float }}
        {% else %}
            {{ states('sensor.hauseinspeisung')|float }}
        {% endif %}

So?

Kann ich das dann so direkt nehmen für das Energie Dashboard? Startet ja nicht täglich bei 0 oder so

ja … vor dem ersten Kaffee ist immer schlecht mit dem denken und tippen

Und ich hasse YAML Zeilen die so lang sind das man scrollen muss :slight_smile:
Vor allem muss man diese endlos langen sensornamen nicht mehrmals tippen

state: >
  {% set akku_out = states('sensor.akku_entnommen') | float %}
  {% set akku_in = states('sensor.akuu_geladen') | float %}
  {% set haus = states('sensor.hauseinspeisung') | float %}
  {% if akku_out > 0 %}
    {{ haus - akku_out }}
  {% else %}
    {% if akku_in > 0 %}
      {{ haus + akku_in }}
    {% else %}
      {{ haus }}
    {% endif %}
  {% endif %}

Mir fällt gerade auf, das ist aber doch auch falsch oder?

Ich hab das gerade so laufen, jetzt ist es nach 21 Uhr und es ist keine Sonne mehr da. Trotzdem steigt der Wert aber an?

Damit hätte ich ja auch nach 21 Uhr, obwohl keine Sonne mehr da ist, nen Peak im Energie Dashboard, was ja aber falsch wäre? Ich will ja eigentlich dann die Sonnenenergie erfassen, wenn sie auch stattgefunden hat?

Der Wert steigt aber auch nach 21 Uhr weiter an, vermutlich weil der haus - akku_out halt nicht genau auf 0 läuft, Aufgrund von Umwandlungsverlusten etc?

Würde es Sinn machen bei Akku_out > 0 einfach 0 zu setzen? bzw. nur bei Akku in > 0 oder sonst haus nutzen?

Bzw. nur Haus darf aber auch nicht sein, wenn was aus dem akku rausgeht…

Die Kostellation ist aus meiner Sicht sowieso schwierig. Du hast Haus + Akku in als Sonnenerzeugung. Wieviel erzeugt die Anlage max? Mal angenommen 600W max und Du machste den Wasserkocher an, dann müsste wieder gegengerechnet werden, was aber auch möglich ist.

Kannst Du mal die Rahmenwerte nennen? PV max z.B.

EDITH: Versuch den hier

  {% set akku_ausgehend = states('sensor.senec_from_battery_stripped') | float %}
  {% set akku_eingehend= states('sensor.senec_to_battery_stripped') | float %}
  {% set erzeugung_nach_akku = states('sensor.senec_solar_generated_power') | float %}
  {% if erzeugung_nach_akku > 0 and akku_ausgehend > 0 %}
    {{ erzeugung_nach_akku - akku_ausgehend }}
  {% else %}
    {% if akku_eingehend > 0 %}
      {{ erzeugung_nach_akku + akku_eingehend }}
    {% else %}
      {{ erzeugung_nach_akku }}
    {% endif %}
  {% endif %}

Ich kann 5000 Watt durch den WR einspeisen ins Haus. Und die PV selbst kann etwa 4000 Watt im besten Fall.

Versuch den eben geposteten, die Sensoren entsprechend ersetzen.

Das wird aber nicht mehr bringen. Da Hauseinspeisung ja immer > 0 ist… sprich es wird das selbe Problem ja wie vorher sein, ansonsten ist ja nichts geändert außer in dem einen If Fall? Haus wird ja immer > 0 sein, solange der Akku was hergibt.

Echt schwieriges Ding…

Im Endeffekt ist Hauseinspeisung (also Sensor hinter dem WR) immer > 0, weil der ja IMMER einspeist eigentlich, um den Hausbedarf zu decken. (Zumindest solange wie der Akku was hergibt)…

Das Problem ist ja eigentlich immer, das der Akku entladen wird, wenn die Sonne weg ist und dann würde der Solarproduktions Sensor im Energieboard ins Minus gehen, was aber ja nicht sein sollte, weil ich ja wissen will im Energieboard, wie viel Strom ich wann erzeugt habe aber das geht ja nicht ins Minus nur weil die Sonne weg ist. Das müsste dann halt maximal 0 sein immer aber nicht Minus wenn die Sonne weg ist…

Dann der

  {% set akku_ausgehend = states('sensor.senec_from_battery_stripped') | float %}
  {% set akku_eingehend= states('sensor.senec_to_battery_stripped') | float %}
  {% set erzeugung_nach_akku = states('sensor.senec_solar_generated_power') | float %}
  {% if erzeugung_nach_akku == akku_ausgehend %}
    {{ 0 }}
  {% elif erzeugung_nach_akku > 0 and akku_ausgehend > 0 %}
    {{ erzeugung_nach_akku - akku_ausgehend }}
  {% elif akku_eingehend > 0 %}
    {{ erzeugung_nach_akku + akku_eingehend }}
  {% else %}
    {{ erzeugung_nach_akku }}
  {% endif %}

EDITH: Ist natürlich die Frage, ob die immer übereinstimmen… Aber von der Logik her sollte das passen.

Den hatte ich auch schon überlegt, aber das bringt leider keinen Effekt, da Haus & Akku eigentlich nie gleich ist. Dadurch das der WR ja auch Leistungsverlust hat etc. kommt eigentlich nie das ins Haus, was aus dem Akku rausgeht. Ist also am Ende das selbe :confused:

Hab schon überlegt einfach 0 zu rechnen wenn Akku ausgehend mehr ist als ins Haus geht aber auch das wäre eventuell falsch oder?

Hm, schwierige Nummer… leider gibt es aber auch nicht wirklich was zum messen auf DC Seite :confused: Sonst hätte ich da einfach einen Sensor verbaut oder so, der wirklich das zählt, was durchgeht

Vielleicht hilft es dir wenn du einen Power Meter benutzt, der in beide Richtungen messen kann? Dann kannst du deine Ströme besser trennen und die richtigen Berechnungen machen.
Ein anderer Punkt wäre noch. Für den SUN WR gibt es doch bestimmt auch eine API die man abfragen bzw. in HA integrieren kann. Da bekommst du dann auf jeden Fall die richtigen Werte der PV Produktion.