FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Bartimaus am 01 Mai 2016, 22:23:25

Titel: Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 01 Mai 2016, 22:23:25
Nabend,

nur mal ne DOIF Verständnisfrage zu folgendem Beispiel:

Anwendungsbeispiel: Rollläden sollen an Arbeitstagen nach 6:25 Uhr hochfahren, wenn es hell wird, am Wochenende erst um 9:00 Uhr, herunter sollen sie wieder, wenn es dunkel wird:

define di_shutters DOIF ([sensor:brightness]>100 and [06:25-09:00|8] or [09:00|7]) (set shutters up) DOELSEIF ([sensor:brightness]<50) (set shutters down)


Folgende Situation:
Wochentag = 8
09:00 Uhr = aktuelle Uhrzeit
Sensor-Brightness = 90

Geht das Rollo jetzt hoch ?
Ich war bis jetzt der Meinung es müsste um spätestens um 09:00 hochgehen, auch wenn der Schwellenwert des Sensors noch nicht überschritten ist.


Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 01 Mai 2016, 22:54:05
Zitat von: Bartimaus am 01 Mai 2016, 22:23:25
Nabend,

nur mal ne DOIF Verständnisfrage zu folgendem Beispiel:

Anwendungsbeispiel: Rollläden sollen an Arbeitstagen nach 6:25 Uhr hochfahren, wenn es hell wird, am Wochenende erst um 9:00 Uhr, herunter sollen sie wieder, wenn es dunkel wird:

define di_shutters DOIF ([sensor:brightness]>100 and [06:25-09:00|8] or [09:00|7]) (set shutters up) DOELSEIF ([sensor:brightness]<50) (set shutters down)


Folgende Situation:
Wochentag = 8
09:00 Uhr = aktuelle Uhrzeit
Sensor-Brightness = 90

Geht das Rollo jetzt hoch ?
Ich war bis jetzt der Meinung es müsste um spätestens um 09:00 hochgehen, auch wenn der Schwellenwert des Sensors noch nicht überschritten ist.

Ich ging bei diesem Beispiel davon aus, dass bis 09:00 Uhr die Helligkeit von >100 zu jeder Jahreszeit erreicht wird. So ist es bei mir jedenfalls.

Gruß

Damian
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 01 Mai 2016, 23:00:43
Und wenn nicht ?  ::)

Dh das Rollo bleibt nach 09:00 auch unten...
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 01 Mai 2016, 23:17:56
Zitat von: Bartimaus am 01 Mai 2016, 23:00:43
Und wenn nicht ?  ::)

Dh das Rollo bleibt nach 09:00 auch unten...

Bei dieser Definition ja.

Man könnte bei [09:00|7] die Sieben weglassen, allerdings sollte dann die Helligkeit über 50 sein, sonst geht es gleich wieder runter.
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 10 Mai 2016, 22:53:01
Nabend,

wäre nicht eine Erweiterung von DOIF an der Stelle möglich/sinnvoll ?

Man könnte die Endzeit doch auch mit [?07:00-?10:00] aushebeln genau wie die Beginnzeit.
Was meinst Du hierzu ?
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 11 Mai 2016, 08:25:08
Zitat von: Bartimaus am 10 Mai 2016, 22:53:01
Nabend,

wäre nicht eine Erweiterung von DOIF an der Stelle möglich/sinnvoll ?

Man könnte die Endzeit doch auch mit [?07:00-?10:00] aushebeln genau wie die Beginnzeit.
Was meinst Du hierzu ?

Das Fragezeichen bezieht sich auf beide Zeiten. Mit [?07:00-10:00] wird auch nicht um 10:00 Uhr getriggert.

Gruß

Damian
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 11 Mai 2016, 08:32:27
Ah, ok.

Ich wünsche mir aber eine Funktionalität so wie diese:

DOELSEIF ([{sunset_abs(0,"17:00","21:15:00")}|01234]


Frühestens um 17:00, spätestens um 21:15 wird der Befehl ausgeführt.

Weil, mit [17:00-21:15] wird zwar frühestens ausgeführt, aber nicht um 21:15 (unabhängig davon ob die Bedigungen "wahr" sind.)
Für mich klingt das unlogisch, weil ich ja das Triggern mit vorangestelltem "?" aushebeln kann...

Verstehst Du was ich meine ?

Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 11 Mai 2016, 09:03:55
Zitat von: Bartimaus am 11 Mai 2016, 08:32:27
Ah, ok.

Ich wünsche mir aber eine Funktionalität so wie diese:

DOELSEIF ([{sunset_abs(0,"17:00","21:15:00")}|01234]


Frühestens um 17:00, spätestens um 21:15 wird der Befehl ausgeführt.

Weil, mit [17:00-21:15] wird zwar frühestens ausgeführt, aber nicht um 21:15 (unabhängig davon ob die Bedigungen "wahr" sind.)
Für mich klingt das unlogisch, weil ich ja das Triggern mit vorangestelltem "?" aushebeln kann...

Verstehst Du was ich meine ?

Dann musst du angeben:

[17:00-21:15] or [21:15]

Die Triggerung um 21:15 reicht nicht, da das Intervall per Definition genau um 21:15 nicht mehr wahr ist.

Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 11 Mai 2016, 10:24:19
Danke für den Tip. Aber "umständlicher" ist es schon, oder ?

Was spricht denn gegen meinen Vorschlag, nur mal so interessehalber...?
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 11 Mai 2016, 10:43:44
Zitat von: Bartimaus am 11 Mai 2016, 10:24:19
Danke für den Tip. Aber "umständlicher" ist es schon, oder ?

Was spricht denn gegen meinen Vorschlag, nur mal so interessehalber...?

ja, es ist die Frage der Sichtweise.

Die Definition des Zeitintervalls (wahr/unwahr) wurde von mir bewusst so gewählt, damit solche intuitiven  Dinge funktionieren:

DOIF ([10:00-20:00]) (set lamp on) DOELSE (set lamp off)

Dazu muss um 20:00 Uhr getriggert werden und das Zeitintervall darf um 20:00 Uhr nicht wahr sein.

Wenn um 20:00 das Zeitintervall noch wahr wäre, würde die Lampe nicht ausgehen.
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 11 Mai 2016, 10:54:15
Zitat von: Damian am 11 Mai 2016, 10:43:44
Wenn um 20:00 das Zeitintervall noch wahr wäre, würde die Lampe nicht ausgehen.

Die Lampe geht aber um 20:00 auch nicht aus, wenn noch eine andere Bedingung wahr ist...

and [Sensor:brightness] < 100

Brightness = 110  ;D

Naja, mit dem Workaround kann (muss) ich leben. Nix für ungut.
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Damian am 11 Mai 2016, 11:00:18
Zitat von: Bartimaus am 11 Mai 2016, 10:54:15
Die Lampe geht aber um 20:00 auch nicht aus, wenn noch eine andere Bedingung wahr ist...

and [Sensor:brightness] < 100

Brightness = 110  ;D

Naja, mit dem Workaround kann (muss) ich leben. Nix für ungut.

ja, wie auch immer, bei über 20.000 DOIF-Modulen können wir uns nicht mehr leisten die bisherige Funktionsweise zu ändern  ;)
Titel: Antw:Frage zum DOIF-Beispiel aus Commandref
Beitrag von: Bartimaus am 11 Mai 2016, 11:14:16
Zitat von: Damian am 11 Mai 2016, 11:00:18
ja, wie auch immer, bei über 20.000 DOIF-Modulen können wir uns nicht mehr leisten die bisherige Funktionsweise zu ändern  ;)

Wohl wahr !
> 20.000 Module ? Respekt, Volltreffer würde ich sagen.