NEWS
Skript zur Steuerung Aussenlicht mit Bewegungsmelder und Tastern
-
... nix zu sehen - @paul53,s Feld
-
@Asgothian sagte in Skript zur Steuerung Aussenlicht mit Bewegungsmelder und Tastern:
@mguenther Dumme Frage: kannst du die Taster betätigen ohne den BM auszulösen ? Wenn nein, dann setzt der BM den timer wieder nachdem du den Taster gedrückt hast.
wenn das so ist, brauchst du:
Pro Taster eine Variable “licht_mit_diesem_taster_eingeschaltet”
Die setzt du auf wahr wenn man mit dem Schalter das Licht an macht, und auf false wenn das Licht aus geht (entweder per Event am Licht oder im Schalter-Event.
Und im timer, bevor du das Licht ausschaltest fragst du sie ab.. bei true - nix tun.A.
Ich bin gerade unterwegs und kann dir das nicht sauber in js en - ich hoffe der Hinweis reicht aber.hab ich ja.
const idTasterWestSued = 'javascript.0.Bewegungsmelder.Bewegung_WestSued_Taster'/*Bewegung WestSued Taster*/; const idTasterWestNord = 'javascript.0.Bewegungsmelder.Bewegung_WestNord_Taster'/*Bewegung WestNord Taster*/;
werden entsprechend auf true/false gesetzt. Ich habe aber irgendwo oben nen Denkfehler drin bei dem Vorschlag von Paul
-
... nix zu sehen - @paul53,s Feld
-
... nix zu sehen...
-
Bitte nicht wild rumprobieren !
-
habs - danke an Asgothian
//Licht durch Bewegungsmelder on([idBewegung1, idBewegung2], function(dp) { tasterWestNord=getState(idTasterWestNord).val; tasterWestSued=getState(idTasterWestSued).val; if (!taster_virtu && dp.state.val) { if(!licht1) setState(idLicht1, true); if(!licht2) setState(idLicht2, true); if(timer1) clearTimeout(timer1); timer1 = setTimeout(function() { if (!tasterWestSued) setState(idLicht1, false); //Wandtaster timer1 = null; }, 1000 * dauer); if(timer2) clearTimeout(timer2); timer2 = setTimeout(function() { if (!tasterWestNord) setState(idLicht2, false); //Wandtaster timer2 = null; }, 1000 * dauer); } });
-
@mguenther
Fein. Sorry für die gelöschten Posts, ich wollte Paul nicht auf ie Füße treten. -
@paul53 sagte in Skript zur Steuerung Aussenlicht mit Bewegungsmelder und Tastern:
Bitte nicht wild rumprobieren !
Paul, ich habe mir 2 Variablen gesetzt, um die Betätigung des Wandtasters abzufangen.
Hatte die beiden nur falsch eingesetzt.Danke euch beiden an der Stelle!
-
//Wandtaster WestNord on({id: [idTaster2_1, idTaster2_2]}, function() { if (licht2) tasterWestNord = false; else tasterWestNord = true; if(timer2) { // Timer läuft --> Licht bleibt an tasterWestNord = true; clearTimeout(timer2); timer2 = null; } else setState(idLicht2, !licht2); // Toggle });
-
@paul53, habe ich nochmal angepasst