Ich möchte gerne einen Fibaro Multisensor zur Einbruchssicherung einer Fensterscheibe verwenden. Würde ihn dazu innen auf die Scheibe kleben und möchte das eingebaute Accelerometer nutzen, das auslösen soll, wenn die Scheibe eingeschlagen wird und der Sensor dadurch auf den Boden fällt.
Wie muss ich dafür die Parameter des Multisensors setzen? Was ich erreichen will, ist, dass der normale PIR-Bewegungssensor (“Auge”) im Multisensor abgeschaltet ist, das Accelerometer aber einen Alarm bei Beschleunigung auslöst. Folgende Parameter für den Multisensor habe ich dafür eingestellt:
Tamperkonfiguration in den erweiterten Einstellungen unter “Bewegungssensor”:
* Tamper
* Seismometer
* Accelerometer - diese Option ausgewählt
Parameter 1 (Motion Detection): Auf unempfindlich = 255 eingestellt
Parameter 24 (diese Einstellung erscheint nur bei “Accelerometer”): 2 (Tamper + Accelerometer)
Parameter 20: Auf Default 20 belassen (g-Wert 0,4 für das Acceleormeter)
Sind obige Einstelllungen richtig?
In den Einstellungen des Bewegungssensor könnte man ja noch diesen ganz vom Alarmsystem ausschließen. Ist das sinnvoll? Was mir unklar ist, ob in diesem Fall das Accelerometer (das keine solche Einstellung bietet) trotzdem einen Alarm auslöst.
Im Prinzip ist dass so OK. Aber ich würde lieber den Tamper abfragen.Diesen Wert kannst Du nach einem Intervall wieder löschen.
Parameter 22
Tamper - alarm cancellation delay
Der letzte Wert des Accelerometer bleibt immer drin und kann nicht (einfach) gelöscht werden. Außerdem bekommst Du da drei
Werte in einer Tabelle oder Variable, sieht dann z.B. so aus: {“z”:0,“y”:9.9,“x”:0}
Und das böse daran ist das z, y und x immer eine andere Position haben, je nach Launes des Sensors. Es kann also auch so
aussehen {“y”:9.9,“z”:0,“x”:0}. Den Code zur gezielten Abfrage eines Wertes habe ich mir gebastelt, aber dann doch
auf Tamper umgestellt.
Also wenn das Teil runterfällt löst der Tamper bestimmt aus, Nachteil oder Vorteil ist das der Tamper schon auslöst wenn
man an der Scheibe klopft.
Ich habe das Auge in meiner Warema Markise eingebaut und mit dem Tamper fahre ich die Markise ein wenn innerhalb
von 30 Sek. der Tamper 3 mal ausgelöst hat.
Danke für die Tipps. Werde es dann auch eher mit dem Tamper statt dem Accelerometer probieren. Im Grunde scheint der Tamper ja über dieselbe Beschleunigungsmessung wie das Accelerometer zu funktionieren: Über den Parameter 20 kann man auch die Empfindlichkeit des Tampers einstellen. Werde es da mal mit einer geringeren Empfindlichkeit als dem Standardwert (20 = 0,4g) testen, um zu verhindern, dass Tamper-Alarm schon bei kleinen Vibrationen an der Scheibe ausgelöst wird.
Parameter 24 steht bei mir auf 1, “- tamper and earthquake detector”. Denke dass es fast egal ist ob man 0, 1 oder 2 nimmt.
Aber im Hauptdevice habe ich bei Tamper configuaration: Seismometer konfiguriert.
Die Empfindlichkeit im Parameter 20 konnte ich auf den default Wert von 0,4g lassen.
Da hilft halt oft nur viele Tests machen. Scheibe einschlagen kannst ja nicht, aber dagegen klopfen und den Sensor auf
einer weichen Unterlage fallen lassen.
Edit: Eventuell kanst Du eine Schnur zwischen den beiden Halbkugel klemmen.
Habe heute mal diverse Tests gemacht. Leider noch nicht erfolgreich:
Der PIR-Sensor löst bei Bewegung aus, obwohl Parameter 1 auf 255 (unempfindlich) steht. Das will ich für meinen Anwendungsfall (Vibrations-/Erschütterungssensor an Fensterscheibe) eigentlich nicht haben.
Die Beschleunigungs-/Erschütterungserkennung ist bei Fallversuchen nicht wirklich zuverlässig, egal wie Parameter 20 steht.
Habe den Eindruck, dass es bei den Fallversuchen eigentlich der PIR-Sensor ist, der den Tamper-Alarm auslöst, nicht das Accelerometer.
Du kannst doch den Wert des PIR einfach ignorieren und die LED abschalten, schont auch die Batterie.
So frage ich den Tamper ab:
(if ( tonumber(fibaro:getValue(TAMPER, “value”)) > 0 ) then …)
Natürlich kannst Du den numerischen Wert genauer abfragen, so dass Klopfen noch nicht auslöst. Eventuell
musst Du es doch mit dem Beschleunigungssensor machen, der war nur für meine Markise zu träge.
Könntest Du mir mal einen Auszug aus deinem LUA-Code für diese Abfragen der Tamper- / Seismometer- oder Accelerometer-Werte hier posten oder als private Nachricht schicken?
Habe mich bisher nicht auf LUA-Ebene mit dem Multisensor beschäftigt. Danke!
Wie Daniel schon erwähnt hat, Tamper/Seismometer hab ich ja weiter oben schon gepostet. Du kannst auch gleich den aktuellen Wert in einer Variablen ablegen und für den Fall das Du ein Wert des Beschleunigungssensor brauchst, dann kann dass Dir helfen:
-- Beispiel für den y Wert des Accelerometer herausfiltern egal an welcher Stelle er steht.
local Yvalue = fibaro:getValue(ACCELEROMETER, "value")
fibaro:debug('Wert-Y' .. Yvalue)
i, j = string.find(Yvalue, "y\":")
print(string.sub(Yvalue,i+3,j+3))
Eventuell gehts auch einfacher aber kürzer als 2 Zeilen habe ich es nicht hinbekommen.
Du musst auch hier nur die ID Deines ACCELEROMETER anstelle einsetzen.
Danke für den Code und Eure Tipps. Leider kann ich Eurer Logik noch nicht ganz folgen. Was ich durch Tests festgestellt habe:
Trotz Parameter 1 auf 255 löst der PIR-Bewegungsmelder bei Bewegungen Alarm aus. Dadurch käme es dann wohl häufig zu Fehlalarmen in dem von mir gewünschten Anwendungsfall (Auge an Fensterscheibe als reiner Erschütterung-/Bruchmelder).
Schlagt Ihr vor, dass ich deshalb in der Alarmszene abfrage, ob der PIR-Sensor ausgelöst hat oder das Accelerometer, und im Falle des PIR-Sensors den Alarm cancele, und im anderen Fall die Alarmaktionen auslöse?
Ja, klar haben die unterschiedliche IDs. Aber ich kann in den erweiterten Einstellungen des Multisensors nur das Untergerät für den PIR (erscheint im Home Panel als Gerät “Bewegungssensor” und hat bei mir ID 138) in das Alarmsystem aufnehmen oder ausschließen.
Das Untergerät für das Seismometer hat bei mir die ID 141 und wird als Gerät im Home Panel zwar separat angezeigt, kann aber in seinen erweiterten Einstellungen nicht separat ins Alarmsystem aufgenommen oder davon ausgeschlossen werden.
Wenn ich also den Bewegungsssensor ins Alarmsystem aufnehme, kriege ich ständig (Fehl-)Alarme wegen PIR-Bewegungserkennung. Wenn ich ihn rausnehme, kriege ich überhaupt keine Alarme mehr, auch nicht vom Seismometer (hab ich mit Schütteltest festgestellt).
Ich hab bereits eine Szene, die meine Tür- und Fenstersensoren scharf- bzw. unscharf schaltet per Keypad. Da müsste ich dann das Accelerometer mit aufnehmen und nur dessen ID per LUA scharf bzw. unscharf schalten, nicht den PIR. Den PIR würde ich dann sogar aus dem Alarmsystem rausnehmen.
Zusätzlich hab ich eine Alarmszene für meine Tür- und Fenstersensoren, nach deinen Vorlagen. Diese wird vom Alarmpanel aufgerufen bei Alarm. Da der PIR nie scharfgeschaltet würde, würde dieser nie die Alarmszene auslösen, wohl aber das Accelerometer. Dieses müsste in der Alarmszene mit abgefragt werden, genauso wie die Fenstersensoren.
Nein, da nur der PIR im Alarmpanel genutzt werden kann. Solltest du diesen Sensor für die Alarmaktivierung nutzen wollen, dann musst du alles ohne das Alarmpanel realisieren.
Du kannst allerdings folgendes machen:
1.) PIR aus Alarmpanel entfernen, restliche Sensoren bleiben drin.
2.) Szene schreiben, welche den Tamper checkt und damit Sirenen (oder was auch immer) einschaltet. (Unabhängig vom Alarmpanel)
Damit hättest du dann einen “normalen” Alarm mit dem Alarmpanel und einen zweiten Alarm mit Erschütterungssensoren.
Nochmal: Beides mischen geht nicht. Entweder mit den beiden separaten Alarmkreisen oder komplett ohne Alarmpanel.
Danke. Ich denke, ich hab das Prinzip jetzt kapiert.
Nur eine Sache ist mir dann noch unklar: Wie Frage ich denn NUR den Tamper per LUA ab? Welche ID ist dafür zu nehnen - die vom Bewegungsmelder? Und wie wird dann erreicht, dass nur bei Tamper, nicht bei PIR Bewegung Alarmaktionen ausgeführt werden?
Dabei darf der Bewegungsmelder nicht auf “armed” geschaltet werden und muss vom Alarmsystem ausgeschlossen sein, sonst würde er bei Bewegungen am Fenster ja bereits Alarm auslösen, was beim Einsatz als Glasbruchsensor unerwünscht ist.
Die Property Tamper des Bewegungssensors hab ich gefunden, sie würde dabei als Trigger (per Szenen-Header) für eine dedizierte Alarmszene dienen, die nur bei einem Tamper-Ereignis ausgelöst wird und dafur hoffentlich auch kein Arming des Bewegungssensors erfordert.