Bewegungsmelder automatisiert für 20 Sekunden ruhig schalten

Begonnen von menatwork73, 05 Juni 2017, 20:33:50

Vorheriges Thema - Nächstes Thema

menatwork73

Hallo Boardgemeinde,

Ich habe meine  Bewegungsmelder über GPIO geschalten.
Funktioniert super.
Jetzt möchte ich mit notify oder änliches eine 20 Sekunden Sperre programieren.
Das heisst, ist eine Bewegung am GPIO dann soll er danach 20 Sekunden nicht mehr melden dürfen.
Nach die 20 Sekunden soll der GPIO wieder melden.

define Bewegungsmelder_1 RPI_GPIO 23
attr Bewegungsmelder_1 direction input
attr Bewegungsmelder_1 icon motion_detector
attr Bewegungsmelder_1 interrupt both
attr Bewegungsmelder_1 poll_interval 5
attr Bewegungsmelder_1 pud_resistor up

Leider habe ich nichts gefunden.
Vielleicht hat ja einer von euch einen Tip/Trick für mich.

Danke im vorraus

Lg
menat

rudolfkoenig

Vermutlich reicht es die "event-min-interval" Attribut fuer das Geraet zu setzen.

menatwork73

Hallo rudolfkoenig,

Dieses Attribut hat überhaupt keine Auswirkungen.
Habe aber durchs weiter suchen das hier gefunden:  https://fhem.de/commandref_DE.html#DOIF_cmdpause

Leider habe ich mit Doif null durchblick.

Hast du da einen Vorschlag wie ich das mit dem cmdpause lösen kann.

Leider hat fstefan1960 die Lösung nicht dazu geschrieben https://forum.fhem.de/index.php/topic,71079.15.html
So wie es aussieht, hatte er das gleiche Problem



rudolfkoenig

ZitatDieses Attribut hat überhaupt keine Auswirkungen.
Das beunruhigt mich, da ich zwar nicht fuer das RPI_GPIO Modul, aber fuer die event-* Attribute zustaendig bin. Kannst du mir zeigen, wie du das Attribut gesetzt hast, und ein Event-Log, was demonstriert, dass es nicht hilft?

Ich brauche vermutlich auch eine Erklaerung, was genau du mit "Ich habe meine  Bewegungsmelder über GPIO geschalten." gemeint hast.

ZitatHast du da einen Vorschlag wie ich das mit dem cmdpause lösen kann.
Nein, ich bin mit DOIF noch nicht per "Du".

menatwork73

Hallo,


Internals
DEF 23

EXCEPT_FD 11
GPIO_Basedir /sys/class/gpio
NAME Bewegungsmelder_1
NR 46
RPI_pin 23
STATE off
TYPE RPI_GPIO

WiringPi_gpio /usr/local/bin/gpio
lasttrg 1496752293.80537


Readings
Dblclick off 2017-06-06 14:31:40
Longpress off 2017-06-06 14:31:40
Pinlevel low 2017-06-06 14:47:44
state off 2017-06-06 14:47:44


Attributes
direction input deleteattr

group Alarm_Gruppe_1 deleteattr

icon motion_detector deleteattr

interrupt both         deleteattr

poll_interval 5 deleteattr

pud_resistor up deleteattr

room 1.1_Melder        deleteattr


gebe ich jetzt das Attribut "event-min-interval " mit 20 oder state:20 dazu gibt es im Log mit Verbose5 keine Zusätzliche Info.


2017.06.06 14:44:02 5: Bewegungsmelder_1, in fileaccess: edge
2017.06.06 14:44:03 5: Bewegungsmelder_1, in fileaccess: value
2017.06.06 14:44:09 5: Bewegungsmelder_1, in fileaccess: edge


sobald jemand in den Melder rein läuft, gibt es nur diese 3 Meldungen.

rudolfkoenig

Zitatgebe ich jetzt das Attribut "event-min-interval " mit 20 oder state:20 dazu gibt es im Log mit Verbose5 keine Zusätzliche Info.
Stimmt, das gibt es nicht, ist auch Absicht. Korrekt waere (wenn ich RPI_GPIO richtig verstehe)
attr Bewegungsmelder_1 event-min-interval state:20


Zitatsobald jemand in den Melder rein läuft, gibt es nur diese 3 Meldungen.
Mich interessieren nur die Events (z.Bsp. aus dem Event Monitor) und nicht die Ausgaben in dem FHEM-Log.
Das sind zwei ganz unterschiedliche Sachen.

menatwork73

Ups sorry

mit event-min-interval state:20

2017-06-06 15:23:04 RPI_GPIO Bewegungsmelder_5 Pinlevel: high
2017-06-06 15:23:05 RPI_GPIO Bewegungsmelder_5 Longpress: on

2017-06-06 15:23:13 RPI_GPIO Bewegungsmelder_5 Dblclick: off
2017-06-06 15:23:13 RPI_GPIO Bewegungsmelder_5 Pinlevel: low
2017-06-06 15:23:13 RPI_GPIO Bewegungsmelder_5 off
2017-06-06 15:23:13 RPI_GPIO Bewegungsmelder_5 Longpress: off

2017-06-06 15:23:17 RPI_GPIO Bewegungsmelder_5 Pinlevel: high
2017-06-06 15:23:18 RPI_GPIO Bewegungsmelder_5 Longpress: on

2017-06-06 15:23:26 RPI_GPIO Bewegungsmelder_5 Dblclick: off
2017-06-06 15:23:26 RPI_GPIO Bewegungsmelder_5 Pinlevel: low
2017-06-06 15:23:26 RPI_GPIO Bewegungsmelder_5 Longpress: off

2017-06-06 15:23:30 RPI_GPIO Bewegungsmelder_5 Pinlevel: high
2017-06-06 15:23:31 RPI_GPIO Bewegungsmelder_5 Longpress: on

2017-06-06 15:23:38 RPI_GPIO Bewegungsmelder_5 Dblclick: off
2017-06-06 15:23:38 RPI_GPIO Bewegungsmelder_5 Pinlevel: low
2017-06-06 15:23:38 RPI_GPIO Bewegungsmelder_5 off
2017-06-06 15:23:38 RPI_GPIO Bewegungsmelder_5 Longpress: off


ohne event-min-interval state:20

2017-06-06 15:21:21 RPI_GPIO Bewegungsmelder_5 Pinlevel: high
2017-06-06 15:21:21 RPI_GPIO Bewegungsmelder_5 on
2017-06-06 15:21:22 RPI_GPIO Bewegungsmelder_5 Longpress: on

2017-06-06 15:21:26 RPI_GPIO Bewegungsmelder_5 Dblclick: off
2017-06-06 15:21:26 RPI_GPIO Bewegungsmelder_5 Pinlevel: low
2017-06-06 15:21:26 RPI_GPIO Bewegungsmelder_5 Longpress: off



rudolfkoenig

Dann stimmt es doch oder? Der Abstand zwischen zwei offs ist 25s.
Falls die anderen auch gefiltert werden sollten, dann muss man
attr Bewegungsmelder_1 event-min-interval state:20,Pinlevel:20,Dblclick:20,Longpress:20
oder
attr Bewegungsmelder_1 event-min-interval .*:20
schreiben.

menatwork73

Echt jetzt.
Es hat die ganze zeit schon mit state:20 funktioniert.
Dank dir habe ich das 1.mal den Event Monitor verwendet. (wirklich)
Und so wie du sagtest, hat es schon funktioniert
Ich werde alle (state:20,Pinlevel:20,Dblclick:20,Longpress:20) verwenden.

Danke für die Hilfe

Lg
menat