Hallo Leute,
heute habe ich ein Verständnisproblem zu Automatisierungen:
Ich möchte meiner Frau eine Nachricht schicken lassen, wenn die Waschmaschine fertig ist.
Die Maschine ist an einer Steckdose mit Messfunktion angeschlossen.
Meine Automatisierung triggert auf die Leistungsaufnahme.
Je nach Programm macht die Maschine aber Pausen. Also habe ich so getriggert:
Falls Leisung > Schwellwert für 2 Minuten => Maschine läuft
Falls Leistung <= Schwellwert für 20 Minuten => Maschine ist fertig.
Die 20 Minuten werden benötigt, um auch längere Pausen zu überbrücken.
Mit dem ersten Trigger setze ich eine input_boolean “Maschine läuft”.
Der zweite Trigger setzt diesen zurück und sendet die Nachricht.
“Maschine läuft” wird auch im Dashboard angezeigt.
Leider wird “Maschine läuft” aber nie gesetzt. Wahrscheinlich dadurch, dass die erste “Laufzeit” unter 2 Minuten lag und danach die “Aus-Variante” 20 Minuten alles blockierte.
Wie macht man so etwas ohne Blockaden?
Hier zwei Bilder zur Erläuterung:
alias: Waschmaschine Status Automatisierung
description: ""
triggers:
- trigger: state
entity_id:
- binary_sensor.waschmaschine_lauft_sensor
from: "on"
to: "off"
for:
hours: 0
minutes: 20
seconds: 0
id: aus
- trigger: state
entity_id:
- binary_sensor.waschmaschine_lauft_sensor
to: "on"
for:
hours: 0
minutes: 3
seconds: 0
id: an
conditions: []
actions:
- choose:
- conditions:
- condition: trigger
id:
- an
sequence:
- action: switch.turn_on
metadata: {}
data: {}
target:
entity_id: input_boolean.waschmaschine_lauft
- conditions:
- condition: trigger
id:
- aus
sequence:
- action: switch.turn_off
metadata: {}
data: {}
target:
entity_id: input_boolean.waschmaschine_lauft
- action: script.notify_those_at_home
data:
title: Die Wäsche ist fertig!
message: Die Waschmaschine kann geleert werden!
mode: single
Mir ist klar, dass ich die Zeit des Einschalttriggers auf 30 Sek. statt 3 Min. setzen könnte. Das löst aber nicht das generelle Problem. Im Zweifel könnte ein prellender Schalter den ersten Trigger auslösen und dann wäre wieder alles wie gehabt. Daher ja auch die 3 Minuten (30 Sekunden).
Hallo Lars,
das Blueprint sieht interessant aus. Ich versuche in der Regel mit eigenen Sachen auszukommen, da man für einige Blueprints Online sein muss. Das scheint hier aber nicht der Fall zu sein. Gut!
Trotzdem würde mich interessieren, auch für andere Automatisierungen, wie man das richtig macht. Wenn es tatsächlich so ist, dass die Delays blockierend auf die Automatisierung wirken, dann überlege ich mir, ob man mit 2 Automatisierungen und Zustandsvariablen arbeiten könnte. Oder einfach mit Timern.