FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: slogan11 am 09 April 2016, 21:42:05

Titel: Intertechno Bewegungsmelder sendet zuviele Signale
Beitrag von: slogan11 am 09 April 2016, 21:42:05
Hallo liebes Forum,

ich habe folgendes Problem bei meiner FHEM Automation. Ich habe einen Bewegungsmelder der Firma Intertechno angeschlossen und auch erfolgreich in FHEM eingebunden. Ich will sobald dieser Bewegung warnimmt ein Licht für 30 Sekunden einschalten und einen Sound abspielen. Das mit dem Licht funktioniert und es bleibt auch für 30 sekunden an und schaltet automatisch wieder ab. Allerdings sehe ich im Logfile das während der Gesamten Zeit wo sich etwas im Radius des Bewegungsmelders bewegt immer wieder auf neue Signale vom Bewegungsmelder in FHEM übertragen werden. Dies ist vermutlich das Problem warum mein Sound nicht richtig ausgegeben wird das Mp3 File wird im Sekundentakt immerwieder neu gestartet und läuft erst einmal komplett durch wenn sich niemand mehr im Radius des Bewegungsmelders befindet. Gibt es eine Möglichkeit den Bewegungsmelder so einzustellen das nur ein Signal ausgegeben wird und der Bewegungsmelder dann z.B für 20 sekunden in einen sleep geht und erst danach wieder auf Bewegungen reagiert.
Anbei meine cfg sowie das LOgfile.

Danke schonmal



######## Bewegungsmelder schaltet Licht
define Bewegungsmelder IT 0000000F0F FF F0
attr Bewegungsmelder IODev CUL1
attr Bewegungsmelder room Garten
define FileLog_Bewegungsmelder FileLog ./log/Bewegungsmelder-%Y.log Bewegungsmelder

define act_on_Bewegung notify Bewegungsmelder {\
if ("%" ne "off") {\
        if($hour > 19 || $hour < 5) {\
                fhem("set Strahler on-for-timer 30 ;; set myMPD playfile alarm.mp3" );;\
}}}




Logfile:

2016.04.09 21:33:05 3: Bewegungsmelder off->on
2016.04.09 21:33:05 2: IT set Strahler on
2016.04.09 21:33:06 3: Bewegungsmelder on->on
2016.04.09 21:33:06 2: IT set Strahler on
2016.04.09 21:33:06 3: Bewegungsmelder on->on
2016.04.09 21:33:06 2: IT set Strahler on
2016.04.09 21:33:07 3: Bewegungsmelder on->on
2016.04.09 21:33:07 2: IT set Strahler on
2016.04.09 21:33:08 3: Bewegungsmelder on->on
2016.04.09 21:33:08 2: IT set Strahler on
2016.04.09 21:33:08 3: Bewegungsmelder on->on
2016.04.09 21:33:08 2: IT set Strahler on
2016.04.09 21:33:10 3: Bewegungsmelder on->off
2016.04.09 21:33:10 2: IT set Strahler on
2016.04.09 21:33:11 3: Bewegungsmelder off->off
2016.04.09 21:33:11 2: IT set Strahler on
2016.04.09 21:33:12 3: Bewegungsmelder off->off
2016.04.09 21:33:12 2: IT set Strahler on
2016.04.09 21:33:13 3: Bewegungsmelder off->off
2016.04.09 21:33:13 2: IT set Strahler on
2016.04.09 21:33:43 2: IT set Strahler off
Titel: Antw:Intertechno Bewegungsmelder sendet zuviele Signale
Beitrag von: viegener am 09 April 2016, 23:50:16
Dazu kannst Du die sogenannten ReadingFnAttribute verwenden (siehe commandref). In diesem Fall sollte event-on-change-reading Dein Problem lösen (also nur events wenn sich wirklich etwas ändert).

Titel: Antw:Intertechno Bewegungsmelder sendet zuviele Signale
Beitrag von: wuschelino22 am 10 April 2016, 00:46:55
Hallo und wie baue ich das in meine cfg ein wie muss es dann heißen ? Bin leider noch Anfänger . Danke
Titel: Antw:Intertechno Bewegungsmelder sendet zuviele Signale
Beitrag von: Rince am 10 April 2016, 07:01:26
Bin mir nicht sicher. Das Reading bleibt bei einem Bewegungsmelder doch immer gleich? Dann würde es genau 1x feuern und dann nie wieder.

Alternative:
Setze beim Bewegungsmelder das Attribut event-min-interval auf 30. Dann reagiert fhem erst nach 30 Sekunden wieder auf den Melder.

Das baust nicht in die cfg ein, das macht fhem für dich automatisch: Gehe auf die Seite vom BM. Weiter unten nach den Readings steht da "attr <NameVomBewegungsmelder> und dan siehst eine Drop-Down Liste. Draufklicken und "event-min-interval" anklicken, in das leere Feld rechts 30 eintippen. Dann auf das graue Kästchen "attr" klicken.

Ausprobieren.

Wenn alles passt, ganz links oben unter dem fhem Logo auf "Save config" klicken.
Titel: Antw:Intertechno Bewegungsmelder sendet zuviele Signale
Beitrag von: viegener am 10 April 2016, 13:33:35
@Rince: Wenn der Bewegungsmelder so arbeitet hast Du absolut Recht, Danke.

@wuschelino22: Du müsstest im Event Monitor (in FHEMWEB) noch schauen, ob Dein Bewegungsmelder auch ein Event sendet, wenn keine Bewegung mehr stattfindet. Es gibt IT-Varianten, die nach einer voreingestellten Zeit ein "off" senden. Vielleicht ist Deiner ja so ähnlich wie hier beschrieben:
http://www.computerhilfen.de/info/guenstiger-bewegungsmelder-in-fhem-integriert.html (http://www.computerhilfen.de/info/guenstiger-bewegungsmelder-in-fhem-integriert.html)
(es geht dabei nur um den Bewegungsmelder)

Grundsätzlich würde ich den Notify eher auf das Event ausrichten also etwas wie
define act_on_Bewegung notify Bewegungsmelder:on set Strahler on-for-timer 30 ;; set myMPD playfile alarm.mp3
Damit reagierst Du nicht auf jeden Event sondern nur auf einen Event der bei Bewegung auslöst. Das on muss natürlich durch den richtigen Event ersetzt werden. Welche Events passieren siehst Du gut im Event Monitor.

In Deiner Implementierung wird bei jedem Event der Code durchlaufen, das ist eigentlich unnötig