Speicher laden zu den 2 billigsten Stunden

abend

folgendes habe mir einen Helfer für EPEX angelegt , der sucht die 2 billigsten Stunden am Tag

dann hab ich folgende Automation das der Speicher wenn er weniger als 30% hat an diesen 2 Stunden aus dem Netz laden soll

alias: BYD Speicher Steuerung
description: Steuerung des BYD-Speichers basierend auf Strompreis und Ladezustand
triggers:
  - minutes: /5
    trigger: time_pattern
conditions: []
actions:
  - choose:
      - conditions:
          - condition: state
            entity_id: binary_sensor.billigste_2_stunden
            state: "on"
          - condition: numeric_state
            entity_id: sensor.byd_speicher_state_of_charge
            below: 30
        sequence:
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: select
            entity_id: 5d0d65cf97b3ccb3b460a6885964745e
            type: select_option
            option: Charge from Grid
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: number
            entity_id: 02a01162b8b26f9672e4bae1c29bdc20
            type: set_value
            value: 7000
      - conditions:
          - condition: or
            conditions:
              - condition: numeric_state
                entity_id: sensor.byd_speicher_state_of_charge
                above: 89
              - condition: state
                entity_id: binary_sensor.billigste_2_stunden
                state: "off"
        sequence:
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: select
            entity_id: 5d0d65cf97b3ccb3b460a6885964745e
            type: select_option
            option: Auto
mode: single

so jetzt passiert folgendes wenn die 2 Stunden kommen die natürlich manchmal nicht hintereinder sind lädt er den Speicher wenn er unter 30% ist
aber dann im nächsten Zeitfenster ist er vielleicht gerade wieder auf 35% und ladet natürlich nicht

ich hätte gerne das er wenn er unter 30% ist die 2 Stunden an dem Tag immer ladet auch wenn er durch den ersten Ladevorgang über der Schwelle von 30% ist

geht das ?

danke

hallo und wenn das du das drehst ?

über 29 und unter zb 80 % die grenze ist ja die 2 stunden oder ?

Hi, wenn ich mir das so anschaue, dann sollte das Problem sein, dass deine zweite Bedingung in der ersten choose Option (die Ladezustand unter 30%) jedes Mal neu ausgewertet wird. Sobald der Akku aber durch den ersten Ladevorgang über 30% ist, wird die Bedingung falsch/false und der Ladevorgang stoppt, auch wenn die „günstigste Stunde“ noch läuft oder die zweite günstige Stunde des Tages gerad beginnt.

Um das zu umgehen, müsste man sich ein Helfer anlegen und sich merken, dass an dem aktuellen Tag bereits begonnen wurde den Speicher in den billigsten 2 Stunden zu laden. Das kannst du mit einem Helfer input.boolean machen.

input_boolean:
  byd_ladung_gestartet_heute:
    name: BYD Ladung in Billigststunden gestartet heute
    icon: mdi:battery-charging

Dann musst die Automatisierung etwas umgebaut werden:

alias: BYD Speicher Steuerung
description: Steuerung des BYD-Speichers basierend auf Strompreis und Ladezustand
mode: single
triggers:
  - minutes: /5
    trigger: time_pattern
conditions: []
actions:
  - choose:
      - alias: Billigststunden-Ladung starten
        conditions:
          - condition: state
            entity_id: binary_sensor.billigste_2_stunden
            state: "on"
          - condition: or
            conditions:
              - condition: numeric_state
                entity_id: sensor.byd_speicher_state_of_charge
                below: 30
              - condition: state
                entity_id: input_boolean.byd_ladung_gestartet_heute
                state: "on"
        sequence:
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: select
            entity_id: 5d0d65cf97b3ccb3b460a6885964745e
            type: select_option
            option: Charge from Grid
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: number
            entity_id: 02a01162b8b26f9672e4bae1c29bdc20
            type: set_value
            value: 7000
          - data: {}
            target:
              entity_id: input_boolean.byd_ladung_gestartet_heute
            action: input_boolean.turn_on
      - alias: Ladung beenden (Nicht-Billigststunden ODER Voll)
        conditions:
          - condition: or
            conditions:
              - condition: state
                entity_id: binary_sensor.billigste_2_stunden
                state: "off"
              - condition: numeric_state
                entity_id: sensor.byd_speicher_state_of_charge
                above: 89
        sequence:
          - device_id: 2b0fbde9e3a4defef944a81cd6139f8b
            domain: select
            entity_id: 5d0d65cf97b3ccb3b460a6885964745e
            type: select_option
            option: Auto
          - data: {}
            target:
              entity_id: input_boolean.byd_ladung_gestartet_heute
            action: input_boolean.turn_off

Den Helfer musst du natürlich auch immer Nachts zurücksetzen, so dass er am nächsten Tag wieder funktioniert. Dafür am besten eine zweite Automatisierung erstellen, die dann um 0:00 Uhr den Reset vornimmt.

alias: BYD Lade-Merker Reset
description: Setzt den BYD Ladungs-Merker täglich um 00:00 zurück.
mode: single
triggers:
  - at: "00:00:00"
    trigger: time
conditions: []
actions:
  - data: {}
    target:
      entity_id: input_boolean.byd_ladung_gestartet_heute
    action: input_boolean.turn_off

So sollte dein Speicher zu den 2 günstigsten Stunden laden, sobald er einmal unter 30% war und erst stoppen, wenn die günstige Zeit vorbei ist oder er über 89% kommt.

1 „Gefällt mir“

das probier ich gleich aus ,danke

wo muss ich den input.boolean anlegen , das resetten erfolgt ja in einer Automation

Den Helfer kannst du in UI unter Helfer anlegen oder in configuration.yaml.

1 „Gefällt mir“

ja hab ich schon gedacht aber dann würde er ja auch bei z.b 75 % zu laden beginnen was eigendlich nicht erwünscht ist

was würde aber passieren das wenn der Speicher erst nach der ersten Stunde unter 30% fallen würde , würde er dann in der 2 Stunde laden ?

kurz, ja er sollte dann auch in der zweiten Stunde laden.

1 „Gefällt mir“

muss nochmals nachfragen er startet um 3.00 uhr und ladet , dann stoppt er und ladet wieder zur nächsten billigen Stunde z.b 16.00 und dann stoppt er bis zum nächsten Tag

ja, weil sich der Helfer den Zustand merken kann.

Er lädt um 03:00 Uhr
Helfer geht auf on

Um 04:00 Uhr geht er aus
Helfer bleibt on

Daher wieder z.B. um 5.00 Uhr laden
Helfer bleibt on

usw..

00:00 Uhr Helfer wird wieder zurückgesetzt.
Spiel beginnt vor vorne.

1 „Gefällt mir“