NEWS
[Vorlage] Blockly Anwesenheitserkennung nach "Badewannen-Prinzip"
-
Hallo Zusammen
In einem Fred hier im Forum wurde nach dem Badewannen-Prinzip gefragt.
http://forum.iobroker.net/viewtopic.php … ead#p44827Ich setzte dieses Prinzip seit längerem an Stellen ein, wo andere Arten von Anwesenheitserkennung nur schwer oder gar nicht umsetzbar sind.
Die ursprüngliche Idee hatte Roland M. aus dem Homatic-Forum.
http://homematic-forum.de/forum/viewtop … 31&t=24962Die Einstellungen in meinem Beispiel, muss sich natürlich jeder nach seinen Bedürfnissen anpassen.
Der betreffende BW ist folgendermaßen eingestellt:
Auslösen bei jedem Sensor-Impuls
Sendeabstand dynamisch
Mindestsendeabstand 60 Sekunden
Bei diesen Einstellungen kommt theoretisch jede Minute ein Impuls wenn sich jemand im Raum befindet.
Das sind also max. 60 Impulse pro Stunde.
Bei jeder erkannten Bewegung wird eine Variable (Motion_B1) um 1 erhöht.
Und alle 30 Minuten werden von Motion_B1 wieder 10 abgezogen.
Über die Angaben wie schnell, wieviel abgezogen wird, kann man seine Bedürfnisse anpassenIch habe noch einen "Badewannen-Überlauf" eingebaut.
Ohne "Überlauf" würde, wenn bei Motion_B1=60 keiner mehr im Raum ist, 3 Std. dauern bis Motion_B1 auf Null wäre (Alle 30 Min - 10) Das ist mir zu lang.Motion_B1 kann, in dem Beispiel, nicht größer als 30 werden.
Dadurch wird nach max. 1,5 Std., ohne Bewegung, Motion_B1 auf 0 gesetzt.
Dies wird an anderen Stellen getriggert und es erfolgen, je nach Wochentag und Tageszeit, weitere Aktionen.Hier ein paar Bildchen.
Hiermit kann man sich das Blockly-Script importieren.
Und für, die nichts mit Blockly am Hut haben, das generierte JavaScript.
Vielleicht kann es jemand gebrauchen.
Grüße
-
Das ist grandios! Werde ich testen! Danke!
-
-
@rantanplan
Hallo rantanplan, ich habe gerade deinen Beitrag gefunden. Er passt gut zu meiner Überlegung, die Bewegungsmelder intelligenter für die Lichtsteuerung einzusetzen.Ich habe dein Blocky importiert und den DP angelegt. Eine Frage habe ich aber:
Was ist der DP "hm-rega.0.11551"? Das ist ja eine Homematic Systemvariable. Kannst du bitte diesen Punkt kurz erläutern?
Gruß und danke für das tolle Script -
@martybr sagte in [Vorlage] Blockly Anwesenheitserkennung nach "Badewannen-Prinzip":
@rantanplan
Hallo rantanplan, ich habe gerade deinen Beitrag gefunden. Er passt gut zu meiner Überlegung, die Bewegungsmelder intelligenter für die Lichtsteuerung einzusetzen.Ich habe dein Blocky importiert und den DP angelegt. Eine Frage habe ich aber:
Was ist der DP "hm-rega.0.11551"? Das ist ja eine Homematic Systemvariable. Kannst du bitte diesen Punkt kurz erläutern?
Gruß und danke für das tolle ScriptOh ja, ich hatte damals noch einige Programme parallel laufen.
"hm-rega.0.11551" war eine Variable auf der CCU. Da habe ich beim Export nicht aufgepasst.
Da muss der Datenpunkt "Motion_Raum" rein.Grüße
-
@rantanplan Super, danke für die Info.
-
@rantanplan Das Script habe ich verstanden. Aber wie steuere ich jetzt die Dauer meines Lichts? Die Variable bildet ja die Brenndauer ab. Aber weder einer Verzögerung, noch einem Timeout kann ich die Variable als Wert mitgeben.
Wenn der Counter minütlich auch nochmal 1 Abziehen würde, würde ich es auch verstehen. Da ich dann mittels gesondertem Trigger auf 0 oder > 1 prüfen kann. -
@maxpd Das Script ist nicht dafür da um Lampen nach einer bestimmten Brenndauer auszuschalten.
Licht über einen Bewegungsmelder, für eine bestimmte Zeit, einzuschalten macht eigentlich nur in Durchgangsräumen Sinn. Und auch da muss es nicht optimal sein.
Wer kennt das nicht: Licht geht an, man hält ein Schwätzchen, Licht geht aus und alle fuchteln mit den Armen damit das Licht wieder an geht.
Bewegungsmelder erkennen nun mal nicht JEDE Bewegung.
Das "Badewannen-Prinzip" "sammelt" Bewegungen über einen gewissen Zeitraum.
Das Licht geht z.B. nicht aus, wenn man mal vorm PC sitzt und 15 Min. einen Bericht liest und dabei keine Bewegung macht die der BW erkennt.
Einfach mal den 1. Beitrag lesen und auch die Links.Grüße
-
@rantanplan said in [Vorlage] Blockly Anwesenheitserkennung nach "Badewannen-Prinzip":
Das Licht geht z.B. nicht aus, wenn man mal vorm PC sitzt und 15 Min. einen Bericht liest und dabei keine Bewegung macht die der BW erkennt.
Einfach mal den 1. Beitrag lesen und auch die Links.Aber exakt das ist mein Anwendungsfall. Und ich verstehe den dazugehörigen Trigger nicht eine Lampe zu schalten. Bzw. wie weiß die Lampe wann sie wieder ausgehen soll?
Vllt hast du für die schlussendliche Verwendung deiner Motion auch noch ein Screenshot. -
@maxpd sagte in [Vorlage] Blockly Anwesenheitserkennung nach "Badewannen-Prinzip":
@rantanplan said in [Vorlage] Blockly Anwesenheitserkennung nach "Badewannen-Prinzip":
Aber exakt das ist mein Anwendungsfall. Und ich verstehe den dazugehörigen Trigger nicht eine Lampe zu schalten. Bzw. wie weiß die Lampe wann sie wieder ausgehen soll?Schau mal in dem "Sonst" bei dem Trigger "alle 30 Min. count down"
Da wird der Datenpunkt "Motion_Raum" auf 0 gesetzt.
Wie in dem Kommentar beschrieben, wird bei mir dieser Datenpunkt überwacht/getriggert.
Bei mir werden mehrere Zustände (in einem anderen Script) überprüft, wenn der Wert "Motion_Raum" auf 0 gesetzt wird. Deshalb der Weg über einen Datenpunkt.Wenn Du "nur" das Licht ausschalten möchtest, einfach NACH dem "steuere Raum_Motion", Dein Licht ausschalten.
-
@rantanplan danke. Hab es für meinen Zweck ganz gut hinbekommen und werde es noch an 3 anderen Stellen einsetzen.