Seite 1 von 1

Rule bei unterschreiten der Leistung

Verfasst: 7. Jul 2025 13:54
von lenschith
Hallo zusammen,
ich hätte eine Frage bzgl. Rules. ich möchte das eine Steckdose mit Tasmota 14.6.0 unabhängig von openHAB geschaltet wird.
Beim unterschreiten von 5Watt sollte die Steckdose nach 30Sekunden abschalten. Was mache ich hier falsch?

Code: Alles auswählen

Rule1
ON ENERGY#Power<5 DO =>mem1 1; RuleTimer1 30 ENDON
ON ENERGY#Power>=5 DO =>mem1 0; RuleTimer1 0 ENDON
ON Rules#Timer=1 DO Power OFF ENDON
Rule1 1
Gibt es hier einen besseren weg bzw. einer der klappt ;)

Danke
Gruß Lenschi

Re: Rule bei unterschreiten der Leistung

Verfasst: 11. Jul 2025 23:54
von udo1toni
Schau mal, es gibt in der Original Dokumentation exakt das benötigte Beispiel:
https://tasmota.github.io/docs/Rules/#rule_6

Code: Alles auswählen

Rule1
  ON system#boot DO var1 0 ENDON
  ON ENERGY#Current==0.0 DO if (var1!=0) RuleTimer1 0; var1 0 endif BREAK
  ON ENERGY#Current>=0.1 DO if (var1!=0) RuleTimer1 0; var1 0 endif BREAK
  ON ENERGY#Current<0.1 DO if (var1!=1) RuleTimer1 600; var1 1 endif ENDON
  ON Rules#Timer=1 DO Power1 off ENDON
Hier mit Strommessung.
Die Variable wird benötigt, um zu verhindern, dass der Timer bei jeder Messung erneut gestoppt/gestartet wird (die Rule wird ja durch ein Event ausglöst, das ist hier die Messung des Stroms, abhängig von der Höhe des Stroms wird Teil eins, zwei oder drei der Rule ausgeführt. Dabei darf der Timer aber nur beim jeweils ersten Durchlauf seinen Zustand ändern (also Countdown gestartet oder nicht gestartet).