NEWS
Philips Hue Bewegungsmelder
-
haha ja klar... das klingt schon serh vernünftig
Is ja logisch mit der Zeit!!
Das werde ich auf jeden Fall umsetzen.Das Grunproblem:
Irgendwie scheint es so zu sein das die BWM nur eine gewisse Zeit lang akutalisieren und danach so etwas wie eine Pause brauchen?
Es sieht so aus, dass ich zum Beispiel im Bad den BWM so eingestellt habe das er bei Bewegung das licht schaltet und dann nach 3 Minuten in denen er keine Bewegung erkannt hat das Licht wieder aus schaltet.
Befinde ich mich nun im Bad geht das Licht auch sofort an... allerdings dann nach 5 Minuten trotz Bewegung einfach aus.
Das bedeutet ja... das er quasi zwei Minuten lang neue Bewegungen erkannt hat, hier dann auch der Timer zum ausschalten entsprechend neu gestartet wird, der BWM dann aber irgendwann einfach die neu erkannte Bewegung nicht mehr übermittelt und dann das Licht abschaltet.
In diesem Fall muss ich dann das Bad verlassen... irgendwie 30 sekunden warten und danach wird das Licht dann auch wieder angeschaltet.Ich habe übrigens gerstern Abend noch etwas rumprobiert, und es scheint wirklich ein Problem der dauerhaften Bewegung zu sein. Wenn ich also in den Flur gehe sendet der BWM "Bewegung". Verlasse ich den Flur und bleibe nur ein paar Sekunden weg, so dass der BWM keine Bewegung erkennt sendet er sofort beim erneuten Eintritt wieder "Bewegung". Das Licht wird also quasi neu geschaltet und der Timer neu gestartet.
Bleibe ich aber im FLur mit ständiger Bewegung vor dem BWM sendet der BWM kein einziges "Bewegung" mehr und der Timer läuft einfach aus und das Licht geht aus obwohl die Bewegung da ist.
Es scheint also so... als würde der BWM nur neue Bewegungen melden und keine durchgehende...??? -
@fuxsism Also mal ganz ganz einfach.
Erstelle ein Script das bei jeder Änderung des Wertes den Inhalt der Wertes ausgibt. Nicht mehr. Kein schalten sondern nur ein Log.
Das heißt Du solltest im Log dann sehen wann gemeldet wird und wo Dein Fehler im Script liegt..
Bewegung erkannt um x
keine Bewegung um y
Bewegung um zBin aber auch raus. Weil ich mit Blockly nichts anfangen kann und somit keine Hilfe bin. Ich kann nur sagen der Bewegungmelder funktioniert und mach das was er bei mir soll…
-
@cash
das Skript an sich läuft ja und funktioniert ja auch zuverlässig.
Mein Problem ist dann eher doch der BWM an sich und dass er einfach bei Dauerbewegung keinen neuen Zustand sendet.
Da bleibt er einfach auf Bewegung=wahr stehen und da kann natürlich das Beste Skript nicht laufen.Könnte es vielleicht sogar daran liegen dass die Akkus nicht mehr voll genug sind? So quasi etwas wie einen Stromsparmodus??
-
@fuxsism doch das beste Script kann laufen. Meins ist nicht das Beste aber es läuft mit genau diesen Bewegungsmelder! Vielleicht solltest Du darüber nachdenken ob nicht doch Dein Script das Problem ist
Es ist doch gut wenn er 10 Minuten auf wahr bleibt wenn 10 Minuten Bewegung ist. Ich würde das Licht nicht ausschalten wenn der Datenpunkt auf wahr steht.
Schalte das Licht aus wenn der Datenpunkt auf falsch geändert wird…. und zwar sollte dann ein timeout starten.
Bin aber endgültig raus. Der Bewegungsmelder macht das was er soll. Nur Dein Script ist halt einfach falsch Wenn Du es nicht glaubst kauf Dir halt ein anderen und schmeiß ihn weg.
-
Genau vor dem gleichen Problem wie Fuxsism stand ich auch.
Nein tut es nicht. Wenn der BWM ausgelöst wird (Bewegung erkannt) und nun dauerhaft Bewegung vor dem BWM
erkannt wird, ändert der BWM seinen nicht Zustand und das Licht geht nach den 2min aus.Mein Blockly sieht so aus :
Kellerflurlicht mit BWM oben und unten im Treppenhaus -
Das ähnelt dem Vorschlag von Cash - Solange wie der Zustand des BWM wahr ist bleibt das Licht an
Beim Wechsel von Bewegung erkannt auf nicht erkannt wird in meinem Fall der Timeout aktiv und das Licht
nach 30sek ausgeschaltet.Dazu habe ich im BWM die Parameter so gesetzt :
So funktioniert es bei mir
-
Du redest hier aber vermutlich vom HMIP BWM , richtig?
Jedenfalls sehen deine Einstellungen so aus .
Den kannst du natürlich in keinster Weise mit dem Hue BWM vergleichen. -
@fuxsism sagte in Philips Hue Bewegungsmelder:
@cash
das Skript an sich läuft ja und funktioniert ja auch zuverlässig.
Mein Problem ist dann eher doch der BWM an sich und dass er einfach bei Dauerbewegung keinen neuen Zustand sendet.
Da bleibt er einfach auf Bewegung=wahr stehen und da kann natürlich das Beste Skript nicht laufen.Könnte es vielleicht sogar daran liegen dass die Akkus nicht mehr voll genug sind? So quasi etwas wie einen Stromsparmodus??
Du zäumst das Pferd von hinten auf.
Gute Skripte erstellt man in 3 Schritten.
Schritt 1:
Wie verhält sich die Hardware. Welche Signale / Statusänderung / Statusaktualisierungen bekomme ich von der Hardware unter welchen Bedingungen.
Schritt 2:
Wie kann ich darauf reagieren. Mit welcher Logik bekomme ich die Funktion die ich haben will hin. Dabei rede ich absichtlich von Logik, nicht von Blockly, JS oder Node Red.
Schritt 3:
Umsetzen der Logik in der gewählten Skriptengine.
In Deinem Fall scheint es so zu sein das der BWM den Zustand Bewegung erkannt auf
wahr
setzt. Dieser Zustand wird nicht weiter aktualisiert bis er keine Bewegung mehr erkennt - dann setzt er den Zustand auffalsch
Das Skript welches du oben erstellt hast nutzt (vereinfacht) die folgende Logik
Wenn in der Nacht
Bewegung
gemeldet wird mache das Licht für 2 Minuten an.Das diese Logik mit dem Verhalten des Bewegungsmelders nicht zusammen passt sollte sofort auffallen.
Die Logik die du haben willst ist:
Wenn in der Nacht
Bewegung
gemeldet wird mache das Licht an.
Wenn in der Nachtkeine Bewegung mehr
gemeldet wird mache das Licht in x Sekunden aus.Du hast also recht - das Skript läuft einwandfrei, und tut genau das was du ihm gesagt hast. Der Ansatz das ein Fehlverhalten des Bewegungsmelders vorliegt ist aber falsch.
A.
-
@haselchen
Ja, du hast recht ich habe Homematic-BWM, ich habe alle Philips-BWM damit ersetzt, weil mir das Einschaltverhalten
zu unregelmässig war, Übernahme der Bewegungserkennung zwischen 1-3 sek wurde von meiner Frau nicht akzeptiert.Ich habe jetzt aber nochmal einen Philips-BWM reaktiviert und das Polling im HUE-Adapter auf "2" gesetzt und dieses Programm läuft mit dem Philips-BWM so, wie es soll :
Licht Einschalten nach Bewegungserkennung und halten, solange wie Bewegung registriert wird.
Beim Wechsel auf keine Bewegung erkannt wird der Timer aktiviert und das Licht anschliessend ausgeschaltet.
Die Einschaltreaktion von jetzt bis zu 2sek wäre für mich allerdings immer noch nicht zufriedenstellend. -
Nebenbei mal gesagt: Warum 2 Trigger wenn einer reicht, sprich warum nicht so:
Trigger auf Flur EGS.presence, wurde aktualisiert
- darin:
stop Licht aus
Falls Wert und aktuelle Zeit ist nicht zwischen 5:00 und 18:00 mache
-steuere Test-Lampe.level mit 50
Ausführen Licht aus in 20 Sek
-steuere Test-Lampe.level mit 0
A.
p.s. kein Zugriff auf Blockly deswegen den obigen Pseudocode. -
hatte ich auch erst so probiert.
Das Licht soll aber auch bei dauerhafter Bewegungserkennung anbleiben ( meine Frau hat an der Haustür immer eine sehr lange Verabschiedungszeremonie - und wenn dabei das Licht ausgeht ........... )
und das würde es in dem Fall, habe ich gerade nochmal ausprobiert.Deswegen die eindeutige Vorgabe das der Timer nur im Fall "keine Bewegung erkannt" aktiv wird und erst dann das Licht ausgeschaltet wird.
-
@cash @Asgothian @BBTown @haselchen @karlo-enzo
also ich muss euch nun auch noch einmal berichten.
Ich konnte gestern noch bis spät in die Nacht testen un skripten und die Lösung scheint wirklich gefunden...
Deshalb auch noch einmal VIELEN DANK für die ganzen Ideen und den nützlichen Input!
Die Lösung liegt wirklich darin den Timer zum Ausschalten erst bei der Änderung auf Bewegung = false zu starten.Nun laufen die Lampen auch bei Dauerbewegung zuverlässig und gehen dann aus wenn man den Raum verlässt!
-
@karlo-enzo Du hast recht, in meinem Pseudo Skript ist ein Fehler drin, es bildet nicht komplett Deine Anwendung ab. Korrekt wäre:
@asgothian sagte in Philips Hue Bewegungsmelder:
Trigger auf Flur EGS.presence, wurde aktualisiert
- darin:
stop Licht aus
Falls Wert und aktuelle Zeit ist nicht zwischen 5:00 und 18:00 mache
-steuere Test-Lampe.level mit 50
Falls nicht Wert
-Ausführen Licht aus in 20 Sek
-steuere Test-Lampe.level mit 0
-
@Asgothian
Das hat hat etwas gedauert, bis ich Deinen Vorschlag in Blockly hingekriegt habe:Würde das so zu Deinem Vorschlag passen ???
So fit bin ich nämlich noch nicht im Script-Erstellen , - habe mir bis jetzt alles selber erarbeitet und manches ist in Blockly auch nicht so eindeutig darzustellen.
ABER -- wenn man nur einen Triggerbaustein je Script verwenden soll, wäre diese Variante dann richtiger als diese :???