Hallo!
Ich bin gerade dabei eine Markisensteuerung mit Wind / Regensensor zu bauen, die Hardware steht & beide Sensoren liefern gute Werte.
Nun bin ich am Programm Part angelangt, ich möchte eine Variable als Trigger verwenden:
Rule1
do on power1#state=1 do var1 1 endon
do on var1#state=1 do rule 2 1 endon
ein kleiner aber wichtiger Auszug, ich möchte wenn Power1=1 die Variable1=1 setzten, dies funktioniert auch.
Was nicht funktioniert ist dann die Variable in der 2. Zeile als Trigger zu verwenden, für irgendein Event.
Variable:
power1 // Markise ausfahren
power2 // Markise einfahren
var1=0 // x....Markisenzustand var1=1 =>eingefahren, var1=0 => ausgefahren
var2=0 - 3 // Windstoßzähler
GPIO Windspeed / Windgeschwindigkeit [km/h]
GPIO Rain / 0 => Trocken, 1 => Nass
Konsole
rule1 5
rule2 1
rule3 1
RULE1
on power1#state=1 do var1=0 endon
on power2#state=1 do backlog var2=0; var1=1 endon
on var1#state=0 do rule2 1 endon
on var2#state=1 do backlog ruletimer1 600; rule3 1 endon
RULE2
on Windspeed>30 do add2 1 endon
on Rain=1 do power2 1 endon
on Windspeed>50 do power2 1 endon
RULE3
on var2>3 do power2 1 endon
on rules#timer1=1 do var2=0 endon
Das wäre der ganze Code.
Mit freundlichen Grüßen!