NEWS
Bewegungsmelder mit Wandschalter übersteuern
-
Erst mal klarstellen was du willst:
Du schaltest Nachts per Schalter die Lampe aus, und willst dann nicht das sie per Helligkeit wieder eingeschaltet wird. Ist das korrekt ? Wenn ja, ab wann soll sie denn dann wieder per Helligkeit geschaltet werden ?
Ein Vorschlag wäre:
Eine Variable "Nachtabschaltung" definieren
im sonst Fall des Triggers auf BW_Helligkeit hinzufügen:setze Nachtabschaltung auf:
falsch
Um dassteuere Couchlampe mit:
wahr
noch ein
falls
Nachtabschaltung = falsch
mache
setzen um zu verhindern das die Lampe eingeschaltet wird wenn die Nachtabschaltung aktiv ist.Der letzte Teil hängt davon ab wie der Wandschalter die Lampe schaltet. Ist das direkt am Schelly verdrahtet oder geht das über den ioBroker mit einem Trigger.
Im zweiten Fall ist es einfach, dann muss der Trigger da wo die Lampe ausgeschaltet wird auch noch
setze Nachtabschaltung auf:
wahr
rein.Im Ersten Fall bräuchtest DU noch einen Trigger auf den status der Couchlampe. Darin müsstest du prüfen:
falls
wert
und
Finde erstes Auftreten von "javascript" in Ursprung
<1
mache:
setze Nachtabschaltung auf:
wahr
Entscheidend ist dabei das der Baustein für "Ursprung" und "wert" der gleiche Baustein ist - den findest Du im Trigger Bereich, er ist mit "Objekt ID" vorbelegt.
A.
-
@hertob81 Das Skript springt bei Änderungen des BM an und schaltet dann die Lampe aus oder an.
Entweder du machst in die falls... Bedingung noch eine Bedingung "falls Schalter an dann" und da rein dann deine Steuerung.
Dann würde der BM nur noch was auslösen, wenn du vorher die Lampe angeschaltet hast.
Und wenn du das zusätzlich über irgendwelche Alexa Routinen so haben willst, dann würde ich einen Datenpunkt neu anlegen und den auf TRUE setzen wenn du mit dem Wandschalter einschaltest und auf FALSE wenn du mit dem Wandschalter ausschaltest und auf FALSE wenn du deine Alexa-Routine startest. Und dann wie oben beschrieben in deine Falls Anweisung noch "falls Datenpunkt" einbauen.Hoffe das war so verständlich (?)
-
@hertob81 sagte: Wie kann ich das realisieren, dass der Schalter/Shelly "das letzte Wort hat"?
Vorschlag:
Wert und Ursprung sind vordefinierte Variablen unter "Trigger".
Dein Skript erzeugt bei jeder Helligkeitsänderung Funkverkehr zum Shelly (Störpegel). -
Herzlichen Dank an alle.
Ich muss mir das mal in Ruhe anschauen, bin unterwegs.
Der Shelly sitzt hinter dem Schalter.
Letztendlich geht es mir darum, dass entweder
a) Das Licht "automatisch" auch bei Abwesenheit angeschaltet wird wenn es dunkel wird
b) Theoretisch manuell über den Schalter angeschaltet werden kann
und vor allem
c) wenn ich das Licht "händisch" ausschalte soll es auch aus bleiben.
d) Sobald am nächtens Abend es wieder Dunkel wird, soll wieder a) geltenDen Bewegungsmelder "blockieren" kann ich nicht, ich steuere meine Garten-, Fassaden- und Terrassenbeleuchtung über den BW bzw. greife die Helligkeit und Bewegung ab.
@paul53
Wert u. Ursprung können den Zustand true and fals annehmen, richtig?
Was ich nicht kapiere ist "system.adapter.javascript.0".... Was hat es damit aufsich bzw. für was ist das gut? -
@hertob81
Wenn der BWM schaltet, läuft das ja über den Javascript Adapter, deshalb ist der Ursprung dieses Schaltvorgang der BWM über den Adapter und nicht über den Schalter und schon weißt, wer hier geschaltet hat.
Ich hab ja genau das oben schon gepostet und wie Du dann die dabei gesetzte Variable später in einem weiteren Script verarbeitest, kannst dann selber entscheiden. Hier ist nur die Erkennung wichtig was die Lampe angeschaltet hat und somit kann man damit auch weiter arbeiten -
@hertob81 sagte: Wert u. Ursprung können den Zustand true and fals annehmen, richtig?
Nein, Ursprung enthält die Quelle der Wertänderung in der Form "system.adapter.Instanz".
@hertob81 sagte in Bewegungsmelder mit Wandschalter übersteuern:
d) Sobald am nächtens Abend es wieder Dunkel wird, soll wieder a) gelten
Dann bau noch einen Trigger auf "Sonnenuntergang" ein, in dem die Variable manuell_aus auf falsch gesetzt wird.
-
@jan1 said in Bewegungsmelder mit Wandschalter übersteuern:
@hertob81
Ich mach das so:
So kannst erkennen ob es der BWM war, der das Licht In meinem Fall ein Sonoff Touch, angeschaltet hat und wenn das bekannt ist, kannst damit weiter arbeiten.Ich hänge mich mal mit dran.
sind "Ursprung" und "durch Bewegung aktiviert" Variablen?
Stehe vor dem Problem, dass wenn ich den Shelly per Taster einschalte soll das Licht an bleiben, biss ich wieder den Taster betädige. Andernfalls soll den Job der BWM erledigen. -
@kopterframe
Usprung findest bei den Trigger, weil sich das auch auf den Trigger bezieht, "durch Bewegung aktiviert", ist eine Variable.
Es geht ja darum raus zu finden wie "1 Power" im Trigger geschaltet wurde und somit muss der Ursprung sich ja auch auf den diesen DP beziehen -
@kopterframe sagte: wenn ich den Shelly per Taster einschalte soll das Licht an bleiben, biss ich wieder den Taster betädige. Andernfalls soll den Job der BWM erledigen.
-
Vielen Dank, so geht es .
-
@jan1 Besten Dank! Nach so einer Info suche ich schon seit geraumer Zeit. Ich schalte bei mir anders herum als hier beschrieben: Ich steuere die Beleuchtung im Flur über einen Zigbee-Dimmer, der sowohl über die manuellen Taster im Flur als auch über einen ZigBee-Bewegungsmelder angesteuert wird. Ich möchte aber nicht dass das Licht wieder ausgeht, wenn ich es manuell eingeschaltet habe (quasi "Putzlicht"
), sondern dauerhaft eingeschaltet bleibt, bis ich es manuell wieder ausschalte. Mit deinem Tipp über "Ursprung" funzt das jetzt.