Neuling scheitert an einer Automatisierung zur Ermittlung der Amortisation der PV-Anlage

Macblock

New member
Hallo zusammen,

ich scheitere an einer (vermutlich) relativ einfachen Aufgabe, mit der ich die tägliche und die Gesamtamortisation meiner PV-Anlage berechnen will.

Ich habe eine Entität von meinem Wechselrichter, in der der tägliche Eigenverbrauch (in Wh) steht. Diesen würde ich gerne per Automatisierung nachts mit meinem aktuellen Strompreis multiplizieren, um die Einsparung für den Tag zu erhalten. Diese Wert würde ich dann gerne täglich aufsummieren.

Leider habe ich es mit der Automatisierung bisher nicht hinbekommen. Kann mir jemand da einen Tipp geben, wie man das in einer Automatisierung hinbekommt?
Da bekomme ich die Berechnung in der Aktion nicht hin.

Viele Grüße

Markus
 
Hallo ivoryBalboa90,

vielen Dank für den Hinweis. Den Beitrag hatte ich vorher auch schon gesehen und mir durchgelesen. Aber ich denke, dass passt nicht ganz für mich. Oder zumindest bin ich nicht in der Lage, dass für mich zu transferieren. Ich habe eine Entität, die den ganzen Tag den von mir selbst verbrauchten Wert in Wh aufsummiert und am nächsten Tag dann wieder bei Null anfängt.

Daher dachte ich, es wäre das einfachste, wenn ich Abends (z.b. um 23 Uhr) den Tageswert durch 1000 teile und mit dem Strompreis multipliziere. Und diesen Wert dann jeden Tag aufsummiere.

Das kann ich ja nicht mit einem separaten Sensor machen, oder?

1676886646528.png

Viele Grüße

Markus
 
Also da fällt mir spontan zu ein, das kann mit zwei Helfern realisiert werden.
Ein Helfer, der den täglichen Wert in kWh speichert, sobald dein Sensor auf 0 fällt.
Der zweite Helfer summiert die Werte des ersten Helfers, nach Wunsch auch als direkte Ersparnis.
 
Hallo zusammen,

so, ich habe jetzt nochmal alle Anleitungen studiert und hab es fast hinbekommen :)

Ich hab es über eine Automation hinbekommen. So sieht die Aktion aus:

service: input_number.set_value
data:
value: >-
{{ states('input_number.pv_anlage_amortisierung')|float(0) +
states('sensor.markus_block_selfconsumption_energy')|float(0) *
states('input_number.strompreis_aktuell')|float(0)/1000 +
states('sensor.markus_block_exported_energy')|float(0) *
states('input_number.pv_anlage_einspeisevergutung')|float(0)/1000 | round(2)
}}
target:
entity_id: input_number.pv_anlage_amortisierung

Das Einzige, was nicht klappt, ist, dass der Wert auf 2 Stellen gerundet wird. Fehlt mir da noch eine Klammer?

Viele Grüße

Markus
 
So sollte korrekt berechnet und gerundet werden:

YAML:
{{ (states('input_number.pv_anlage_amortisierung')|float(0) +
states('sensor.markus_block_selfconsumption_energy')|float(0) *
(states('input_number.strompreis_aktuell')|float(0)/1000) +
states('sensor.markus_block_exported_energy')|float(0) *
(states('input_number.pv_anlage_einspeisevergutung')|float(0)/1000)) | round(2)
}}

Zeigst mal den kompletten Code? Vielleicht kann man da noch Feintuning machen.
Und bitte Post #6 dabei berücksichtigen.

Woher und wie bekommen die beiden input_number der PV ihre Daten?
 
Hallo IvoryBalboa90,

vielen Dank für das Coding :) Jetzt passt es mit der Rundung. Beim Coding gibt es nicht viel mehr in der Automation.

Die Input's Strompreis_aktuell und pv_anlage_einspeisevergütung sind normale Helfer, wo ich meinen Strompreis und meine Einspeisevergütung hinterlegt habe.
Der Input pv_anlage_amortisierung steht aktuell bei Null und wird dann hoffentlich jeden Abend um 23 Uhr um die Werte des Tages aufsummiert. Morgen weiß ich, ob es geklappt hat.

@Little Wing Ich hoffe, jetzt passt es mit dem Code!

Viele Grüße

Markus


YAML:
alias: PV-Anlage Amortisation Gesamt
description: PV-Anlage Amortisation Gesamt
trigger:
  - platform: time
    at: "23:00:00"
condition: []
action:
  - service: input_number.set_value
    data:
      value: |-
        {{ (states('input_number.pv_anlage_amortisierung')|float(0) +
           states('sensor.markus_block_selfconsumption_energy')|float(0) *
          (states('input_number.strompreis_aktuell')|float(0)/1000) +
           states('sensor.markus_block_exported_energy')|float(0) *
          (states('input_number.pv_anlage_einspeisevergutung')|float(0)/1000)) | round(2) }}
    target:
      entity_id: input_number.pv_anlage_amortisierung
mode: single
 
Ist sensor.markus_block_selfconsumption_energy die Entität, die täglich auf 0 fällt? Dann kannst das mal so probieren:

YAML:
alias: PV-Anlage Amortisation Gesamt
description: PV-Anlage Amortisation Gesamt
trigger:
  - platform: numeric_state
    entity_id: sensor.markus_block_selfconsumption_energy
    below: 1
condition: []
action:
  - service: input_number.set_value
    data:
      value: |-
        {{ (states('input_number.pv_anlage_amortisierung')|float(0) +
           trigger.from_state.state|float(0) *
          (states('input_number.strompreis_aktuell')|float(0)/1000) +
           states('sensor.markus_block_exported_energy')|float(0) *
          (states('input_number.pv_anlage_einspeisevergutung')|float(0)/1000)) | round(2) }}
    target:
      entity_id: input_number.pv_anlage_amortisierung
mode: single

Das speichert den Wert, sobald der Wert unter 1 fällt.
 
Hallo IvoryBalboa90,

vielen Dank, ich habe das entsprechend umgestellt und werde dann mal berichten, wie meine Erfahrung sind.

VG Markus
 

Zurzeit aktive Besucher

Letzte Anleitungen

Statistik des Forums

Themen
4.702
Beiträge
47.957
Mitglieder
4.347
Neuestes Mitglied
Reekoh
Zurück
Oben