Ich wollte eine Öffnungsüberwachung, die nach x Minuten prüft, ob der Auslösezustand noch erhalten ist und dann erst schaltet.
Zurückgestellt wird, wenn der Auslösezustand wegfällt.
Das wird bei mir eingesetzt, um die Fußbodenheizung bei Öffnung der Schiebetüren / Fenster nach x Minuten auf die Frostschutzstellung zu bringen und bei Schließen wieder zurückzusetzen.
Herausgekommen ist - ausdrücklich unter freundlicher Unterstützung von FOOBAR - der Makro.
Gruß
Peter
Zurückgestellt wird, wenn der Auslösezustand wegfällt.
Das wird bei mir eingesetzt, um die Fußbodenheizung bei Öffnung der Schiebetüren / Fenster nach x Minuten auf die Frostschutzstellung zu bringen und bei Schließen wieder zurückzusetzen.
Herausgekommen ist - ausdrücklich unter freundlicher Unterstützung von FOOBAR - der Makro.
Gruß
Peter
:begin SCHALTVERZOEGERNUNG_mit_GUELTIGKEITSPRÜEFUNG(gaOef fnung1,gaOeffnung2,vDelay,gaFrostschutz)
:info $schaltet nach Ablauf der Wartezeit (vdelay) den Frostschutzeingang ein, nach Ausschalten dann wieder aus$\\
$Öffnung 1 (ga,b01)$\\
$Öffnung 2 (ga,b01)$\\
$delay (v,u64)$ \\
$Frostschutz GA(ga,b01)$
:var RestZeit@
RestZeit@ = 0u64
if afterc(event(gaOeffnung1) or event(gaOeffnung2)) and (gaOeffnung1 or gaOeffnung2)), vDelay, RestZeit@) then write(gaFrostschutz, EIN) endif;
if !gaOeffnung1 and !gaOeffnung2 then {RestZeit@=0u64; write(gaFrostschutz, AUS) } endif;
:end
:info $schaltet nach Ablauf der Wartezeit (vdelay) den Frostschutzeingang ein, nach Ausschalten dann wieder aus$\\
$Öffnung 1 (ga,b01)$\\
$Öffnung 2 (ga,b01)$\\
$delay (v,u64)$ \\
$Frostschutz GA(ga,b01)$
:var RestZeit@
RestZeit@ = 0u64
if afterc(event(gaOeffnung1) or event(gaOeffnung2)) and (gaOeffnung1 or gaOeffnung2)), vDelay, RestZeit@) then write(gaFrostschutz, EIN) endif;
if !gaOeffnung1 and !gaOeffnung2 then {RestZeit@=0u64; write(gaFrostschutz, AUS) } endif;
:end