Ich habe eine gut funktionierende rule für meine Jarolift (433MHz) Rolläden.
Da der/die Motoren ab und zu nicht auf Anhieb reagieren, habe ich die Befehle wiederholt.
Weiterhin soll dass Ganze nur in einem bestimmten Zeitfenster und bei entsprechendem Luxwert arbeiten.
Soweit alles gut. Es läuft wunderbar in OH2.
Jetzt stellt sich aber das Problem, dass ich bei den heissen Temperaturen gerne mal länger offen lassen möchte.
Der Knackpunkt ist, dass der Luxwert (State <= 3) durchaus schwankt und der absenkimpuls 2-3 ausgelöst wird.
Also müsste nach dem ersten "auslösen" ein Timer (um die 10min) starten, der mir die Messung / Steuerung aussetzt.
Ich habe hier schon so etwas gesehen (wie -fast- immer von udo1toni), bekomme es aber nicht in meine rule
Kann sich das mal ein erfahrener anschauen
Code: Alles auswählen
rule "Luminanz"
when
Item dataLum changed
then
var State = dataLum.state as DecimalType
if ((State <= 3) && ((now.getMinuteOfDay > (60*18)) && (now.getMinuteOfDay < (60*23+1 ))))
{
Markise.sendCommand(DOWN)
Thread::sleep(60000)
Roll_WZ_W_li.sendCommand(DOWN)
Thread::sleep(1000)
Roll_WZ_W_re.sendCommand(DOWN)
Thread::sleep(1000)
Markise.sendCommand(DOWN)
Thread::sleep(1000)
Roll_WZ_W_li.sendCommand(DOWN)
Thread::sleep(1000)
Roll_WZ_W_re.sendCommand(DOWN)
}
end
------------------------------------------------------
// var Timer tLum = null
// {
// tLum = createTimer(now.plusMillis(60000),[
// Markise.sendCommand(DOWN)
// Thread::sleep(30000)
// Roll_WZ_W_li.sendCommand(DOWN)
// Thread::sleep(1000)
// Roll_WZ_W_li.sendCommand(DOWN)
// Thread::sleep(1000)
// Roll_WZ_W_re.sendCommand(DOWN)
// Thread::sleep(1000)
// Roll_WZ_W_re.sendCommand(DOWN)
// //tLum = null
// ])
// }
// end
der untere wäre mit Timer, läuft aber nicht....
Danke
atk69