Seite 1 von 1

Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 06:55
von Markus

Die Idee wäre, einen Plug bei Unterschreiten von 30W abzuschalten, ausser es sei nach einer definierten Zeit (22:00 Uhr) der Wert noch >30W. Das Ganze gilt auch nur zwischen 22:00 Uhr und 05:30 Uhr.

Irgendwie funktioniert das aber nicht....sieht jemand den Fehler?

Code: Alles auswählen

alias: Steuerung_aus
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.plug_current_consumption
    below: "30"
  - platform: time
    at: "22:00:00"
condition:
  - condition: time
    before: "05:30"
action:
  - type: turn_off
    device_id: 317a1c73a9ee6ffdf0f5xxxxxxxxx
    entity_id: switch.plug
    domain: switch
mode: single


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 07:18
von carsten_h
Markus hat geschrieben: Mo 20. Mär 2023, 06:55

sieht jemand den Fehler?

Die erste Frage in so einem Fall ist immer: Was zeigt der Trace (jetzt Abläufe genannt)?


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 07:37
von Markus

hmm?

Code: Alles auswählen

Result:

after:
  __type: <class 'datetime.time'>
  isoformat: '00:00:00'
now_time:
  __type: <class 'datetime.time'>
  isoformat: '22:00:00.109831'
before:
  __type: <class 'datetime.time'>
  isoformat: '05:30:00'
result: false

Code: Alles auswählen

Stopped because a condition failed at 19. März 2023 um 22:00:00 (runtime: 0.00 seconds

Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 07:43
von Osorkon

Die Bedingung die Du verwenden tust gilt nur zwischen 00:00 Uhr und 05:30 Uhr

Wenn die Bedingung lauten soll switched 22 Uhr und 05:30
Musst nach und vor abgeben.

Code: Alles auswählen

condition:
  - condition: time
    after: "22:00:00"
    before: "05:30:00"

Allerdings wir laut Deiner Automatisierung, immer um 22 Uhr der Switch bereit ausgeschaltet?!

Kannst Du die Aufgabenstellung ein wenig genauer beschreiben.

Gruß
Osorkon


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 08:16
von Markus
Osorkon hat geschrieben: Mo 20. Mär 2023, 07:43

Kannst Du die Aufgabenstellung ein wenig genauer beschreiben.

Ist der Verbrauch nach 22:00 Uhr kleiner als 30 W > abschalten
Ist der Verbrauch nach 22:00 Uhr größer als 30 W > eingeschaltet lassen

dann hätte ich eine zweite Automatisierung die 05:30 Uhr wieder einschaltet (wenn abgeschaltet wurde)


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 08:54
von Osorkon

So in etwa?

Code: Alles auswählen

description: ""
mode: single
trigger:
  - platform: numeric_state
    entity_id: sensor.plug_current_consumption
    below: 30
    id: ausschalten
  - platform: time
    at: "05:30:00"
    id: einschalten
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: ausschalten
          - condition: time
            after: "22:00:00"
            before: "05:29:00"
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.plug
      - conditions:
          - condition: trigger
            id: einschalten
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.plug

Gruß
Osorkon


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Mo 20. Mär 2023, 12:43
von Osorkon

Für den Fall, des der Sensor wert bereits vor 22:00 Uhr unter 30 rutscht, würde ich eine zusätzlichen Auslöser um 22:00 hinzufügen. Also nach dem Moto: wenn 22:00 Uhr und sensorwert bereits <30, dann ausschalten.

Code: Alles auswählen

description: ""
mode: single
trigger:
  - platform: numeric_state
    entity_id: sensor.plug_current_consumption
    below: 30
    id: ausschalten
  - platform: time
    at: "05:30:00"
    id: einschalten
  - platform: time
    at: "22:00:00"
    id: ausschalten
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: ausschalten
          - condition: time
            after: "22:00:00"
            before: "05:29:00"
          - condition: numeric_state
            entity_id: sensor.plug_current_consumption
            below: 30
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.plug
      - conditions:
          - condition: trigger
            id: einschalten
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.plug

Gruß
Osorkon


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 06:52
von Markus

Komisch, das ausschalten nicht nicht funktioniert. In den Abläufen ist kein Eintrag, nur:

Code: Alles auswählen

Triggered by the time at 21. März 2023 um 05:30:00
Choose: Option 2 executed
Finished at 21. März 2023 um 05:30:00 (runtime: 0.05 seconds)

Vermutlich war der Wert nach 22:00 Uhr noch größer 30 W....interessant wäre ein Möglichkeit das ausschalten auszulösen wenn der Wert nach 22:00 Uhr (wann auch immer bzw. vor 05:30 Uhr) auf <30W sinkt


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 07:44
von Osorkon
Markus hat geschrieben: Di 21. Mär 2023, 06:52

interessant wäre ein Möglichkeit das ausschalten auszulösen wenn der Wert nach 22:00 Uhr (wann auch immer bzw. vor 05:30 Uhr) auf <30W sinkt

Genau das tut doch die Automatisierung?!

Wenn Wert sinkt unter 30 oder es ist 22:00 Uhr
Und der Wert ist unter 30 und die Uhrzeit ist zwischen 22:00 und 5:30 dann Switch ausschalten.

Wenn 05:30
Dann Switch einschalten.

Schaue Dir mal bitte den Verlauf des Sensors an im Zeitraum von 22:00 und 05:30. Sinkt der Wert unter 30?

Gruß
Osorkon


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 08:59
von Markus

Der Wert ist um 22:30 Uhr auf 14 W gesunken...

asdf.png
asdf.png (11.34 KiB) 265 mal betrachtet

Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 09:23
von carsten_h
Markus hat geschrieben: Di 21. Mär 2023, 08:59

auf 14 W gesunken...

Und wie sah der Trace zu dem Zeitpunkt aus?


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 12:46
von Markus
carsten_h hat geschrieben: Di 21. Mär 2023, 09:23
Markus hat geschrieben: Di 21. Mär 2023, 08:59

auf 14 W gesunken...

Und wie sah der Trace zu dem Zeitpunkt aus?

für 22:30 Uhr gibt es keine Eintrag im Trace


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 13:02
von Osorkon

Lass mal bitte Deine Automatisierungen sehen.

Gruß
Osorkon


Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 13:51
von Markus

Code: Alles auswählen

alias: Steuerung_aus_ein
description: ""
trigger:
  - platform: numeric_state
    entity_id: sensor.plug_current_consumption
    below: 29.9
    id: ausschalten
    for:
      hours: 0
      minutes: 1
      seconds: 0
  - platform: time
    at: "05:30:00"
    id: einschalten
  - platform: time
    at: "22:40:00"
    id: ausschalten
condition: []
action:
  - choose:
      - conditions:
          - condition: trigger
            id: ausschalten
          - condition: time
            after: "22:00:00"
            before: "05:29:00"
          - condition: numeric_state
            entity_id: sensor.plug_current_consumption
            below: 30
        sequence:
          - service: switch.turn_off
            data: {}
            target:
              entity_id: switch.plug
      - conditions:
          - condition: trigger
            id: einschalten
        sequence:
          - service: switch.turn_on
            data: {}
            target:
              entity_id: switch.plug
mode: single

Re: Plug abhängig vom Energieverbrauch u. Zeit abschalten

Verfasst: Di 21. Mär 2023, 16:56
von Osorkon

In der Automatisierungen fallen mir erstmal keine Fehler auf.

Der Trigger unter 29,9 für eine Minute besagt, dass der Wert von über 29,9 kommend unter 29,9 1min lang bleiben muss.

Ist der Wert bereits vor 20 Uhr unter 29,9 und bleibt unter 29,9 sollte um 22:40 Uhr der Trigger Uhrzeit auslösen un den Switch ausschalten.

Muss also alles so wie beschrieben funktionieren. Wenn es dennoch nicht tut, obwohl alle Bedingungen zutreffen, kann es sein, dass Du bei den Entitäten einen Tippfehler hast?

Du kannst die Automatisierung auch testen, in dem Du in den Entwicklungswerkzeuge-> Zustände -> Status setzen, den Sensorwert auf einen Wert < 29,9 setzen tust.

Dabei in der Automatisierung die Zeit Bedingung anpassen und den Wert für 1 min weg lassen.
Wenn Du zum Testen nicht den realen Switch schalten willst, kannst ab dieser Stelle auch einen Input boolean als Helfer verwenden.

Gruß
Osorkon