Hallo,
ich mache das regelmässig über folgende Zeilen im Makro der Fernbedienung:
Code: Alles auswählen
DI_OG_Jacqueline setzen auf Stufe 16 Geschwindigkeit 15
warte("0:05:15")
DI_OG_Jacqueline setzen auf Stufe 0 Geschwindigkeit 15
Um das ganze sicherer für/gegen Kinderhände zu machen prüfe ich im FB-Makro:
Code: Alles auswählen
** varAuszeit ist vom Typ Zeit
** varRestzeit ist vom Typ Zeit
Wenn DI_OG_Jacqueline ausgeschaltet und
FB_OG_Jacqueline_Licht eingeschaltet dann
varAuszeit:=Zeit + "0:05:15"
DI_OG_Jacqueline setzen auf Stufe 16 Geschwindigkeit 15
warte("0:05:15")
DI_OG_Jacqueline setzen auf Stufe 0 Geschwindigkeit 15
** Sicherheitshalber nochmal ein AUS! hinterher...
warte("00:00:15")
DI_OG_Jacqueline setzen auf Stufe 0
** auf direktem Weg raus hier...
Verlassen
** endewenn Dimmer aus und FB an
endewenn
Wenn DI_OG_Jacqueline <> 0 und
FB_OG_Jacqueline_Licht eingeschaltet dann
** # Wiederholtes drücken, Restzeit warten, Dimmer aus
varRestzeit:=varAuszeit - Zeit
** Sicherheitshalber ein Resend, falls der eigentliche AN nicht durchkam
DI_OG_Jacqueline setzen auf Stufe DI_OG_Jacqueline
warte(varRestzeit)
DI_OG_Jacqueline setzen auf Stufe 0 Geschwindigkeit 15
** Sicherheitshalber nochmal ein AUS! hinterher...
warte("00:00:15")
DI_OG_Jacqueline setzen auf Stufe 0
** auf direktem Weg raus hier...
Verlassen
** endewenn Dimmer an und FB an
endewenn
Wenn DI_OG_Jacqueline <> 0 und
FB_OG_Jacqueline_Licht ausgeschaltet dann
** Vorzeitiger abbruch erwünscht
** Dimmer aus
DI_OG_Jacqueline setzen auf Stufe 0 Geschwindigkeit 15
** Auszeit auf Uhrzeit setzen
varAuszeit:=Zeit
** Sicherheitshalber nochmal ein AUS! hinterher...
warte("00:00:15")
DI_OG_Jacqueline setzen auf Stufe 0
** auf direktem Weg raus hier...
Verlassen
** endewenn vorzeitiges Aus...
endewenn
Wenn DI_OG_Jacqueline ausgeschaltet und
FB_OG_Jacqueline_Licht ausgeschaltet dann
DI_OG_Jacqueline setzen auf Stufe 0 Geschwindigkeit 15
** Auszeit auf Uhrzeit setzen
varAuszeit:=Zeit
** Sicherheitshalber nochmal ein AUS! hinterher...
warte("00:00:15")
DI_OG_Jacqueline setzen auf Stufe 0
** endewenn Dimmer aus und FB aus
endewenn
Wer es testen möchte gerne, bis jetzt habe ich das noch nicht im aktiven Einsatz, aber ohne FHZ in der Visualisierung funktioniert es, mit meiner alten Funktion ohne Laufzeit/Restzeit etc. kam es vor, das das Licht abends dann doch noch an war, daher auch die Sicherheits-Aus...
Schwieriger wird es, wenn mehrere FBs den Dimmer steuern sollen, dann müsste man die Sicherheits-Aus rausnehmen, die varAuszeit beim Dimmer definieren und aus allen Makros die Dimmer-Variable nehmen und vor dem Ausschalten wieder beim Dimmer schauen, ob die Auszeit schon erreicht ist...
Aber es braucht keinen "sich dauernd drehenden" Prozess, der alle 5 Sekunden überprüft, ob es Zeit zum Ausschalten ist. Bei vielen Beispielen habe ich das Gefühl, das dort gerne ein solcher Dauerläufer genutzt wird...
Hoffe, es hilft
der Familienvater