ich möchte eine Automation erstellen um meinen dynamischen Stromtarif optimal auszunutzen.
Folgende Entitäten stehen zur Verfügung:
sensor.epex_spot_data_highest_price_2 = der höchste Preis des Tages
sensor.epex_spot_data_lowest_price_2 = der niedrigste Preis des Tages
sensor.epex_spot_data_net_price_2 = der aktuelle Preis
Meine PowerStation, kann die Verbraucher circa 3 Stunden versorgen, ich habe eine schaltbare Steckdose davor angeschlossen, könnte man diese jetzt entsprechend ausschalten, wenn der Stromtarif hoch ist um die teuersten Zeiten des Tages zu vermeiden.
Ich kann sicher auch den Ladestand der Powerstation auslesen um die Steckdose (switch.pc) so rechtzeitig wieder einzuschalten, bevor der Akku leer ist.
Ziel:
Die Steckdose soll ausgeschaltet werden, wenn der aktuelle Preis besonders hoch ist.
Die Steckdose soll wieder eingeschaltet werden, wenn:
Der Preis niedrig ist.
Der Ladestand der Powerstation niedrig wird
Flexibilität:
Die Schwellenwerte können angepasst werden (z. B. 90% für hohe Preise, 10% für niedrige Preise, 20% Batteriestand).
Ich habe mal ChatGPT dazu befragt und folgende Antwort bekommen:
alias: Optimierung dynamischer Stromtarif
description: Steuerung der Steckdose basierend auf Stromtarif und Powerstation-Status
mode: single
trigger:
- platform: time_pattern
minutes: '/15' # Überprüfung alle 15 Minuten
- platform: state
entity_id: sensor.powerstation_battery_level # Bei Änderung des Batteriestands
condition: []
action:
- choose:
# Bedingung 1: Steckdose ausschalten, wenn der aktuelle Preis hoch ist
- conditions:
- condition: template
value_template: >
{{ states('sensor.epex_spot_data_net_price_2') | float >
states('sensor.epex_spot_data_highest_price_2') | float * 0.9 }}
sequence:
- service: switch.turn_off
target:
entity_id: input_boolean.power_station
# Bedingung 2: Steckdose einschalten, wenn der Batteriestand niedrig ist
- conditions:
- condition: numeric_state
entity_id: sensor.powerstation_battery_level
below: 20
sequence:
- service: switch.turn_on
target:
entity_id: input_boolean.power_station
# Bedingung 3: Steckdose einschalten, wenn der Preis niedrig ist
- conditions:
- condition: template
value_template: >
{{ states('sensor.epex_spot_data_net_price_2') | float <=
states('sensor.epex_spot_data_lowest_price_2') | float * 1.2 }}
sequence:
- service: switch.turn_on
target:
entity_id: input_boolean.power_station
in dieser Automation wird natürlich nur ein “virtueller” Schalter (Helfer) geschaltet nur zum Testen.
Leider funktioniert das überhaupt nicht, diese Sprachmodelle neigen leider dazu sich einfach Dinge “auszudenken” wenn sie keine richtige Antwort haben, wobei die Antworten oft plausibel und syntaktisch richtig sind, nur funktionieren sie halt nicht.
Die Steckdose schaltet sich weder ein noch aus, was sie aber tun sollte, die Automation wird zwar regelmäßig gestartet, tut jedoch nichts.
Vielleicht gibt es hier ja jemanden der so etwas schon einmal gemacht hat, oder sich mit Automationen einfach besser auskennt als ich.
Vielen Dank für eure Hilfe.
Andreas