Regeloptimierung: Beamer an - Leinwand runter
Verfasst: 19. Feb 2021 22:09
Ich habe folgendes Problem ... Ich steuer meine Leinwand über einen Shelly 2.5 an.
Sobald der Verbrauch des Beamers steigt, soll die Leinwand herunterfahren.
Wenn der Verbrauch wieder gegen 0 geht soll die Leinwand hochfahren.
Das ganze funktioniert auch, allerdings wird das UP und DOWN Signal permanent gesendet.
Nun soll die Regel ergänzt werden, sodass die Position der Leinwand zuerst überprüft wird.
Allerdings bekomme ich das nicht hin.
Meine aktuelle Regel sieht wie folgt aus:
Und durch folgende Änderung wollte ich das permante Senden des Signals vermeinden:
Oder kann er die leinwandposition.state nicht als Number ausgeben?
Kann mir jemand helfen?
Danke!
Sobald der Verbrauch des Beamers steigt, soll die Leinwand herunterfahren.
Wenn der Verbrauch wieder gegen 0 geht soll die Leinwand hochfahren.
Das ganze funktioniert auch, allerdings wird das UP und DOWN Signal permanent gesendet.
Nun soll die Regel ergänzt werden, sodass die Position der Leinwand zuerst überprüft wird.
Allerdings bekomme ich das nicht hin.
Meine aktuelle Regel sieht wie folgt aus:
Code: Alles auswählen
// Beamer an - Leinwand runter
rule "Beamer an"
when
Item eg_partyraum_beamer changed
then
var Number verbrauch = eg_partyraum_beamer.state as Number
if (verbrauch > 50)
{
// eg_partyraum_leinwand.sendCommand(DOWN)
}
if (verbrauch <= 50)
{
// eg_partyraum_leinwand.sendCommand(UP)
}
end
Code: Alles auswählen
// Beamer an - Leinwand runter
rule "Beamer an"
when
Item eg_partyraum_beamer changed
then
var Number verbrauch = eg_partyraum_beamer.state as Number
var Number position = leinwandposition.state as Number
if (verbrauch > 50 && position = 0)
{
// eg_partyraum_leinwand.sendCommand(DOWN)
}
if (verbrauch <= 50 && position = 100)
{
// eg_partyraum_leinwand.sendCommand(UP)
}
end
Kann mir jemand helfen?
Danke!