Motion-Auswertung Bewegungsmelder

Begonnen von Dia81, 28 Oktober 2018, 11:52:18

Vorheriges Thema - Nächstes Thema

Dia81

folgendes Problem:

mein Homematic Bewegungsmelder fragt alle 5 min nur auf Bewegung ab, wenn er eine erkannt hat. Soweit so gut.
Ich nutze folgenden Code:

define doif_BewegunginUeberwachung3 DOIF ([HM_3D26CB] eq "motion" and [Ueberwachungsmodus] eq "An") (set  ...)

Jetzt habe ich eine Homematic Fernbedienung und schalte beim rausgehen den "Überwachungsmodus" an.
Da ich aber dazu natürlich in den letzten 5 Minuten am Bewegungsmelder vorbeigegangen bin, wird sofort ausgelöst.
Ich habe daher bisher mit einem "Timer" gearbeitet, der erst den Modus bei Aktivierung nach 6 Minuten anschaltet.

Jetzt waren gestern komische Gestalten vor der Tür und ich wollte beim verlassen den Modus sofort aktivieren, was natürlich sofort ausgelöst hätte. Jmd eine Idee wie ich das System umschiffen kann? Danke für Eure Hilfe

list:

Internals:
   CUL866_MSGCNT 38
   CUL866_RAWMSG A0DE584103D26CBF143210601C200::-44:CUL866
   CUL866_RSSI -44
   CUL866_TIME 2018-10-28 11:49:55
   DEF        3D26CB
   IODev      CUL866
   LASTInputDev CUL866
   MSGCNT     38
   NAME       HM_3D26CB
   NOTIFYDEV  global
   NR         352
   STATE      noMotion
   TYPE       CUL_HM
   lastMsg    No:E5 - t:10 s:3D26CB d:F14321 0601C200
   protLastRcv 2018-10-28 11:49:55
   protRcv    38 last_at:2018-10-28 11:49:55
   protSnd    14 last_at:2018-10-28 11:47:38
   protState  CMDs_done
   rssi_at_CUL866 cnt:38 min:-57.5 max:-34.5 avg:-42.59 lst:-44
   .attraggr:
   .attrminint:
   READINGS:
     2018-10-28 11:49:55   .protLastRcv    2018-10-28 11:49:55
     2018-10-28 09:51:03   Activity        alive
     2018-05-22 23:02:09   D-firmware      1.6
     2018-05-22 23:02:09   D-serialNr      MEQ0692910
     2018-10-28 11:49:55   battery         ok
     2018-10-28 11:49:55   brightness      194
     2018-10-28 11:49:55   cover           closed
     2018-10-28 11:51:40   motion          off
     2018-10-28 11:47:38   motionCount     40_next:240s
     2018-10-28 11:51:40   motionDuration  242
     2018-08-06 22:31:31   powerOn         2018-08-06 22:31:31
     2018-10-28 11:49:55   recentStateType info
     2018-10-28 11:51:40   state           noMotion
     2018-10-28 11:47:38   trigDst_F14321  noConfig
     2018-10-28 11:47:38   trigger_cnt     40
   helper:
     HM_CMDNR   229
     mId        00C0
     regLst     ,0,1,4p
     rxType     28
     supp_Pair_Rep 0
     expert:
       def        1
       det        0
       raw        1
       tpl        0
     io:
       newChn     +3D26CB,00,00,00
       nextSend   1540723795.98412
       prefIO     
       rxt        2
       vccu       
       p:
         3D26CB
         00
         00
         00
     mRssi:
       mNo        E5
       io:
         CUL866:
           -36
           -36
     prt:
       bErr       0
       sProc      0
       sleeping   1
       rspWait:
     q:
       qReqConf   00
       qReqStat   
     role:
       chn        1
       dev        1
     rssi:
       at_CUL866:
         avg        -42.5921052631579
         cnt        38
         lst        -44
         max        -34.5
         min        -57.5
     tmpl:
Attributes:
   IODev      CUL866
   actCycle   000:20
   actStatus  alive
   alias      Bewegungsmelder_Innen
   autoReadReg 4_reqStatus
   expert     2_raw
   firmware   1.6
   model      HM-SEC-MDIR-2
   room       Homematic
   serialNr   MEQ0692910
   showtime   1
   subType    motionDetector

Otto123

Hi,

Zitatmein Homematic Bewegungsmelder fragt alle 5 min nur auf Bewegung ab, wenn er eine erkannt hat. Soweit so gut.
Den verstehe ich schon mal nicht.
Ein Bewegungsmelder erkennt Bewegung in dem Moment wo sie passiert und nicht alle 5 min. Dein Device unten steht (Standard) auf 240 sec Pause, d.h. nach 240 sec / 4 min kann wieder frühestens eine Bewegung erkannt werden.

Deine Situation gestern ändert am ganzen System nichts, Du hast ausgelöst, frühestens nach 4 min kann der BM wieder auslösen.

Wenn Du Deine eigene Auslösung genau umgehen willst, musst Du deine Scharfschaltung nicht auf motion triggern lassen sondern auf noMotion.
D.h.
Du schaltest scharf -> nix passiert
Du löst aus -> motion.
Die Zeit ist um -> noMotion -> Dein Mechanismus schaltet (die Überwachung auf motion) scharf


Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Dia81

Zitat von: Otto123 am 28 Oktober 2018, 12:18:23
Hi,
Den verstehe ich schon mal nicht.
Ein Bewegungsmelder erkennt Bewegung in dem Moment wo sie passiert und nicht alle 5 min. Dein Device unten steht (Standard) auf 240 sec Pause, d.h. nach 240 sec / 4 min kann wieder frühestens eine Bewegung erkannt werden.

Deine Situation gestern ändert am ganzen System nichts, Du hast ausgelöst, frühestens nach 4 min kann der BM wieder auslösen.

Wenn Du Deine eigene Auslösung genau umgehen willst, musst Du deine Scharfschaltung nicht auf motion triggern lassen sondern auf noMotion.
D.h.
Du schaltest scharf -> nix passiert
Du löst aus -> motion.
Die Zeit ist um -> noMotion -> Dein Mechanismus schaltet (die Überwachung auf motion) scharf


Gruß Otto
Irgendwie kapier ich es nicht ganz. Okay 4 Minuten stimmt. Aber wenn ich auslöse, steht er auf motion. Aber das doch 4 min lang bis er wieder ein no Motion bekommt. Wenn ich dirch richtig verstehe soll dann wenn noMotion nach 4 Minuten geschaltet wird die Überwachung schalten. Okay. Aber mir geht es eben um die Zwischenzeitlichen 4 minuten. Also das auch nach 1 min schon scharf schaltet ohne auszulösen, das geht aber wohl wegen der 4 min Schaltung nicht ..

Otto123

#3
Die eingestellte Pausenzeit vom BM kannst Du nicht umschiffen, in der Zeit ist er eben "taub".
Du kannst sie verkürzen, aber auch das ändert an dem Prinzip nichts: Du musst deine eigene Bewegung ausblenden. Und das würde ich nicht  mit extra Timer machen, sondern so zeitnah wie möglich.
Auszug aus regList
minInterval      |     literal        |          | interval in sec options:15,30,60,240,120

Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Dia81

Zitat von: Otto123 am 28 Oktober 2018, 12:29:38
Die eingestellte Pausenzeit vom BM kannst Du nicht umschiffen, in der Zeit ist er eben "taub".
Du kannst sie verkürzen, aber auch das ändert an dem Prinzip nichts: Du musst deine eigene Bewegung ausblenden. Und das würde ich nicht  mit extra Timer machen, sondern so zeitnah wie möglich.
Auszug aus regList
minInterval      |     literal        |          | interval in sec options:15,30,60,240,120
Okay aber wenn ich das richtig verstehe kann ich das Intervall auf z.b 15 sec stellen ? Würde natürlich nicht das Problem lösen beim scharf schalten das man Evtl die letzten 15 sec dich durch den melde gelaufen ist..

Was du meinst mit der Bewegung ausblenden verstehe ich leider nicht wie ich das umsetzen könnte, ergo sobald Überwachung aus ist soll keine Motion erkannt werden ? Sobald Überwachung an soll erkannt werden. Wie kann ich denn dem Sensor mitgeben das er keine Motion anzeigen soll (wenn ich zu Hause bin), also quasi inaktiv sein. Komm da gerade nicht hinter :(


Gesendet von iPhone mit Tapatalk

Otto123

ausblenden meine ich symbolisch. Folgendes:
Du hast eine "Überwachung" (was immer die tut), die ist normalerweise unscharf. Der BM registriert natürlich immer die Bewegung ...
Du schaltest die Überwachung scharf, das bereitet aber das Scharfschalten nur vor.
Jetzt rennst Du durch den BM, da passiert auch noch nichts.
Erst wenn der BM wieder in die "Ruhelage" geht (noMotion) wird deine Überwachung scharf geschaltet.
Ab jetzt löst jede Bewegung (motion) ein Alarm aus.

Auf die Schnelle ausgedachter DOIF Code:
([Überwachnung] eq "scharf" and [HM_3D26CB:"noMotion"])(set ÜberwachungsModus an)

Die erste Abfrage ist eine Status Abfrage die wird statisch wahr wenn Du einschaltest, das zweite ist ein Eventtrigger, erst wenn der Event noMotion kommt wird der set Befehl ausgeführt.

Das Ding ist nicht ideal und muss eventuell um weitere Abfragen ergänzt werden, aber so sollte es erstmal gehen.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Dia81

Zitat von: Otto123 am 28 Oktober 2018, 18:08:38
ausblenden meine ich symbolisch. Folgendes:
Du hast eine "Überwachung" (was immer die tut), die ist normalerweise unscharf. Der BM registriert natürlich immer die Bewegung ...
Du schaltest die Überwachung scharf, das bereitet aber das Scharfschalten nur vor.
Jetzt rennst Du durch den BM, da passiert auch noch nichts.
Erst wenn der BM wieder in die "Ruhelage" geht (noMotion) wird deine Überwachung scharf geschaltet.
Ab jetzt löst jede Bewegung (motion) ein Alarm aus.

Auf die Schnelle ausgedachter DOIF Code:
([Überwachnung] eq "scharf" and [HM_3D26CB:"noMotion"])(set ÜberwachungsModus an)

Die erste Abfrage ist eine Status Abfrage die wird statisch wahr wenn Du einschaltest, das zweite ist ein Eventtrigger, erst wenn der Event noMotion kommt wird der set Befehl ausgeführt.

Das Ding ist nicht ideal und muss eventuell um weitere Abfragen ergänzt werden, aber so sollte es erstmal gehen.

Gruß Otto

Okay, danke ..gerafft.. werd es mal auf mich angepasst umsetzen. danke