Rolladen schließen abhängig von mehreren Faktoren

Begonnen von choenig, 17 April 2016, 09:28:51

Vorheriges Thema - Nächstes Thema

choenig

Hallo zusammen,

ich habe ein Problem mit einem Setup, welches folgendes tun soll:
Ist abends der Rolladen oben, soll er runterfahren,
* in dem Moment, in dem die Tür geschlossen wird, oder
* die letztet Positionsänderung des Rolladen mehr als 5 Minuten her ist, oder
* es 22:30 Uhr ist.

Zusätzlich soll das ganze immer nur zwischen 22:30 und 7:30 passieren und nur dann, wenn die Tür auch zu ist.

Der Code dafür sieht im Moment wie folgt aus:

([?Tuer] eq "closed" and
[?Rolladen:position] < 100 and
[?22:30 - 07:30] and
([Tuer:"closed"] or [Rolladen:position:sec] > 300 or [22:30]))
(set Rolladen position 100 timer)


Leider hat das ganze heute Nacht nicht funktioniert, der Rolladen ist, nachdem er durch einen Bewegungsmelder hochgefahren wurde, nicht mehr runtergefahren.

Sollte das grundsätzlich so funktionieren, oder habe ich irgendwo einen Denkfehler?

Vielen Dank schon mal im Voraus!
Christian

Per

Irgendwie hast du die gleichen Anfragen als Bedingung UND Trigger doppelt definiert.
Versuch mal:
([Tuer] eq "closed" and [?Rolladen:position] < 100 and [22:30 - 07:30] and ([Rolladen:position:sec] > 300) or 1)
(set Rolladen position 100 timer)

So sind alle Trigger gleichzeitig Bedingung, außer Rolladen:position:sec, welches durch or 1 immer wahr ist, aber nur 5 min nach der letzten Betätigung selbst auslöst.

Ob das Ergebnis das von dir gewünschte ist, weiss ich aber nicht, ich kann deine Aufgabenstellung nicht so ganz nachvollziehen.

choenig

Hi,

danke für die Antwort.

Zitat von: Per am 17 April 2016, 12:22:11
Irgendwie hast du die gleichen Anfragen als Bedingung UND Trigger doppelt definiert.

Ja, richtig. Und mir fällt gerade überhaupt nicht ein, wieso ich das gestern so gemacht habe. Ziel war es, den Trigger vom Tür eq "closed" von dessen Zustand zu trennen.

Zitat von: Per am 17 April 2016, 12:22:11
Versuch mal:
([Tuer] eq "closed" and [?Rolladen:position] < 100 and [22:30 - 07:30] and ([Rolladen:position:sec] > 300) or 1)
(set Rolladen position 100 timer)

So sind alle Trigger gleichzeitig Bedingung, außer Rolladen:position:sec, welches durch or 1 immer wahr ist, aber nur 5 min nach der letzten Betätigung selbst auslöst.

Ob das Ergebnis das von dir gewünschte ist, weiss ich aber nicht, ich kann deine Aufgabenstellung nicht so ganz nachvollziehen.

Wenn ich mir das so ansehe, könnte es genau das sein, was ich suche :-).

Ich werd's mal ausprobieren, Danke!

choenig

Der Vollständigkeit halber möchte ich nochmal die endgültige Implementierung zeigen:


([Tuer] eq "closed" and [?Rolladen:position] < 100 and [22:30 - 07:30] and ([Rolladen:position:sec] > 300) or [Tuer:"closed"])
(set Rolladen position 100 timer)


Die Lösung mit dem "or 1" sah zwar vielversprechend aus, sorgte dann aber leider dafür, dass der Rolladen sofort wieder runterging, nachdem er nachts oben angekommen war. Logisch :-).

Vielen Dank nochmal für die Unterstützung!

LG
Christian