![]() |
Tasmota |
![]() ![]() ![]() ![]() |
rule1 on time#minute|15 do power on; ruletimer1 300 endon on Rules#Timer=1 do backlog power off endon
rule1 on time#minute|5 do power toggle endon
rule1 1
AdcParam 6, 176, 3921, 0, 1000
ON DS1820_1#Temperature!=%Var1% DO backlog publish espTempertature/sensor/DS1820_1/data %value%; Var1 %value% ENDON
pio run --target clean
https://tasmota.github.io/docs/Commands/ - COMMANDS
Използвана енергия днес -EnergyReset1 0
Използвана енергия вчера - EnergyReset2 0
EnergyReset3 0 - Total energy reset.
Забавено включване на релета
PowerOnState 0
rule1 on system#boot do ruletimer1 180 endon on Rules#Timer=1 do backlog power1 on endon
rule2 on system#boot do ruletimer2 360 endon on Rules#Timer=2 do backlog power2 on endon
rule3 on system#boot do ruletimer3 540 endon on Rules#Timer=3 do backlog power3 on endon
rule1 1
rule2 1
rule3 1
Автоматично изключване на поливането
rule2 on POWER1#STATE=1 do ruletimer1 3600 endon on Rules#Timer=1 do backlog power1 off endon
rule3 on POWER2#STATE=1 do ruletimer2 3600 endon on Rules#Timer=2 do backlog power2 off endon
rule2 1
rule3 1
Термостат с DS18b20
ON DS1820_1#Temperature DO ENDON
ON DS1820_2#Temperature DO ENDON
ON DS1820_3#Temperature DO ENDON
ON DS1820_1#Temperature!=%Var1% DO backlog publish espTempertature/sensor/DS1820_1/data %value%; Var1 %value% ENDON
---------------------------------------
t1: pool temp
t2: panel temp
var1: in valid panel temp range?
var2: off threshold temp for panel
var3: on threshold temp for panel
mem3: lowest valid panel temp
mem3 25
rule1
ON DS18B20-1#temperature DO event t1=%value% ENDON
ON DS18B20-2#temperature DO event t2=%value% ENDON
ON event#t2>%mem3% DO var1 1 ENDON
ON event#t2<=%mem3% DO var1 0 ENDON
ON event#t1 DO Backlog var2 %value%; add2 1 ENDON
ON event#t1 DO Backlog var3 %value%; add3 2 ENDON
ON event#t2>%var3% DO Power1 %var1% ENDON
ON event#t2<%var2% DO Power1 0 ENDON
rule1 1
My script:
rule1
ON DS18B20-1#temperature DO event t1=%value% ENDON
ON DS18B20-2#temperature DO event t2=%value% ENDON
ON event#t2
ON event#t2>t1+10 DO Power1 1 ENDON
rule1 1
stat/Solar_controller_7BCB33/RESULT = {"Rule1":"ON","Once":"OFF","StopOnError":"OFF","Length":171,"Free":340,"Rules":"ON DS18B20-1#temperature DO event t1=%value% ENDON ON DS18B20-2#temperature DO event t2=%value% ENDON ON event#t2<=50 DO Power1 0 ENDON ON event#t2>55 DO Power1 1 ENDON"}
IF ELSE
#define USE_EXPRESSION // Add support for expression evaluation in rules (+3k2 code, +64 bytes mem)
#define SUPPORT_IF_STATEMENT // Add support for IF statement in rules (+4k2 code, -332 bytes mem)
SwitchMode1 5
SwitchMode2 5
SwitchMode3 5
SetOption32 2
Rule1
ON Power1#boot DO Var1 %value% ENDON
ON Power2#boot DO Var2 %value% ENDON
ON Power3#boot DO Var3 %value% ENDON
ON Power1#State DO Var1=%value% ENDON
ON Power2#State DO Var2=%value% ENDON
ON Power3#State DO Var3=%value% ENDON
ON Button1#State=3 DO IF ((%Var1%==0) AND (%Var2%==0) AND (%Var3%==0)) Backlog0 Power1 1; Power2 1; Power3 1 ELSEIF ((%Var1%==1) OR (%Var2%==1) OR (%Var3%==1)) Backlog0 Power1 0; Power2 0; Power3 0 ENDIF ENDON
ON Button2#State=3 DO IF ((%Var1%==0) AND (%Var2%==0) AND (%Var3%==0)) Backlog0 Power1 1; Power2 1; Power3 1 ELSEIF ((%Var1%==1) OR (%Var2%==1) OR (%Var3%==1)) Backlog0 Power1 0; Power2 0; Power3 0 ENDIF ENDON
ON Button3#State=3 DO IF ((%Var1%==0) AND (%Var2%==0) AND (%Var3%==0)) Backlog0 Power1 1; Power2 1; Power3 1 ELSEIF ((%Var1%==1) OR (%Var2%==1) OR (%Var3%==1)) Backlog0 Power1 0; Power2 0; Power3 0 ENDIF ENDON
Rule1
ON Power1#State=1 DO Add1 1 ENDON
ON Power2#State=1 DO Add1 1 ENDON
ON Power3#State=1 DO Add1 1 ENDON
ON Power1#State=0 DO Sub1 1 ENDON
ON Power2#State=0 DO Sub1 1 ENDON
ON Power3#State=0 DO Sub1 1 ENDON
ON Button1#State=3 DO event lightcheck=%var1% ENDON
ON Button2#State=3 DO event lightcheck=%var1% ENDON
ON Button3#State=3 DO event lightcheck=%var1% ENDON
ON event#lightcheck>0 DO Backlog0 Power1 0; Power2 0; Power3 0 ENDON
ON event#lightcheck<1 DO Backlog0 Power1 1; Power2 1; Power3 1 ENDON