HM-Sen-MDIR-O Funk-IR-Bewegungsmelder außen
HM-Sen-MDIR-O Funk-IR-Bewegungsmelder außen | |
---|---|
Allgemein | |
Protokoll | HomeMatic |
Typ | Sensor |
Kategorie | HomeMatic |
Technische Details | |
Kommunikation | 868,3 MHz |
Kanäle | 1 |
Betriebsspannung | 4,5 V |
Leistungsaufnahme | unbekannt |
Versorgung | Batterie, 3x LR06 (Mignon) |
Abmessungen | 76 x 74 x 90 mm |
Sonstiges | |
Modulname | CUL_HM |
Hersteller | eQ-3 |
HM-Sen-MDIR-O
HomeMatic Funk-IR-Bewegungsmelder außen
Features
PIR-Bewegungsmelder mit Helligkeitssensor zur Tag-/Nachtumschaltung.
Technische Daten:
- Erfassungswinkel: ca. 90°
- Erfassungsbereich: ca. 9 m
- Drehbar: 360°
- Neigbar: 45°
- Schutzart: IP 44
Hinweise zur Inbetriebnahme und Installation
<Bitte ergänzen>
Betrieb mit FHEM
Das Pairing sollte wie in HomeMatic Devices pairen beschrieben durchgeführt werden. Die Anlerntaste am Bewegungsmelder sollte hierzu nur kurz betätigt werden. Bei einer Betätigung von vier Sekunden wird der Melder nur bei Unterschreiten einer festgelegten Helligkeitsschwelle auslösen (weitere Informationen siehe Abschnitt Anlernen der Herstellerdokumentation).
Hinweis: sobald einmal ein motion-Status erkannt wurde, verbleibt das Gerät in diesem Modus. Alle Konfigurationsbeispiele setzen also einen zusätzlichen watchdog voraus:
define WD_Reset_EG.Scheune.MotionDetect watchdog EG.Scheune.MotionDetect:motion 00:04:05 SAME setreading EG.Scheune.MotionDetect state nomotion
Dieser Umweg mit einem Watchdog läßt sich auch mit einer DOIF-Lösung verheiraten. Als Alternative kann auch auf die Uhrzeit der letzten Erkennung geprüft werden:
define di_lamp DOIF ([BM:state:sec] < 5)(set lamp on-for-timer 300) attr di_lamp do always
Event-Monitor
In regelmäßigen Abständen werden die folgenden Daten vom Bewegungsmelder (hier: HM-Sen-MDIR-O-2) übermittelt:
2014-11-19 16:31:24 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer brightness: 120 2014-11-19 16:31:24 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer cover: closed 2014-11-19 16:31:24 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer battery: ok
Wird Bewegung erkannt, wird Folgendes vom Gerät (hier: HM-Sen-MDIR-O-2) übermittelt:
2014-11-19 16:27:55 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer trigDst_2573FB: noConfig 2014-11-19 16:27:55 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer motion 2014-11-19 16:27:55 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer motion: on (to MyHMLAN) 2014-11-19 16:27:55 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer motionCount: 235_next:116s 2014-11-19 16:27:55 CUL_HM HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer brightness: 120
Log-Auszug
<Bitte ergänzen>
fhem.cfg
Bei eingeschaltetem Autocreate werden die erforderlichen Definitionen beim Pairen selbstständig erstellt (Beispiel: HM-Sen-MDIR-O-2).
define HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer CUL_HM 2B033A attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer IODev MyHMLAN attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer actCycle 000:10 attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer actStatus alive attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer autoReadReg 4_reqStatus attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer expert 2_full attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer firmware 1.6 attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer model HM-Sen-MDIR-O-2 attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer peerIDs 00000000, attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer room CUL_HM attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer serialNr LEQ0xxxxxx attr HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer subType motionDetector
Konfiguration über Register
Anzeige aller dekodierten Register
get <name> regList
zeigt alle moeglichen 'dekodierten' Register an. Fuer mdir sind dies alle, sollte also komplett sein. Hier findet man sowohl den Wertebereich alsauch eine (sehr) kleine Beschreibung. Ausgabe:
list: register | range | peer | description 0: pairCentral | 0 to 16777215 | | pairing to central 1: brightFilter | 0 to 7 | | brightness filter - ignore light at night 1: captInInterval | literal | | capture within interval options:on,off 1: evtFltrNum | 1 to 15 | | sensitivity - read each n-th puls 1: evtFltrPeriod | 0.5 to 7.5s | | event filter period 1: ledOnTime | 0 to 1.275s | | LED ontime 1: minInterval | literal | | minimum interval in sec options:240,60,120,30,15 4: peerNeedsBurst | literal | required | peer expects burst options:on,off
- minInterval
- Minimaler Interval in Sekunden ab wann die nächste Bewegung registriert werden kann. Der Standard ist 240. Also nach einer Bewegungs-Meldung werden weitere Bewegungen für 4 Minuten ignoriert bis die nächste Meldung erfolgt.
- brightFilter
- Filtert Bewegungen nach Helligkeit aus. 0 Filtert nichts aus, d.h. es wird auch bei Helligkeit gemeldet. 7 Filtert bis 10 Lux? alles aus, daher werden Bewegungen nur bei Dunkelheit gemeldet.
- evtFltrNum
- Filtert Bewegungen aus. Steht dieser Wert z.B. auf 5 so wird erst bei der fünften Bewegung die Meldung gesendet.
- evtFltrPeriod
- Gibt an wie viel Zeit zwischen zwei Bewegungen vergehen muss um für den evtFltrNum Filter gezählt zu werden. Steht dieser Wert auf 1 und evtFltrNum auf 5 so muss der Sensor 5 Sekunden Bewegungen registrieren um eine Meldung zu senden.
Einsatzbeispiele (per Notify)
Gerät bei Bewegung schalten
Mit dem folgenden Notify kann z. B ein Unterputz-Schaltaktor für die angegebene Zeit (in Sekunden) eingeschaltet werden - ein Peeren ist dazu vorher nicht erforderlich. Das Einschalten passiert in diesem Beispiel unabhängig von der Helligkeit.
define Notify_Bewegungsmelder_Haustuer notify HM_Sen_MDIR_O_2_2B033A_BewegMelderHaustuer:motion set HM_LC_SW1_FM_298FB2_HaustuerLicht on-for-timer 300
Gerät bei Bewegung und Dunkelheit mit minimaler Funklast schalten
Das fortgeschrittene Beispiel steuert die Beleuchtung in Abhängigkeit von der Außenhelligkeit und minimiert die Funklast. In diesem Beispiel werden zwei Lichtkreise angesteuert, die die Außenbeleuchtung realisieren:
define WintergartenAussen structure room EG.Durchgang.Aussenlicht_Sw_03 EG.Durchgang.Aussenlicht_Sw_04 define MotionTerasseScheune notify EG.Scheune.OutsideMotionDetect:motion:.* { \ if ( Value("EG.Durchgang.Aussenlicht_Sw_03") eq "off" && ReadingsVal( "EG.Scheune.OutsideMotionDetect", "brightness", "") <= 90 ) { \ fhem ("set WintergartenAussen on ;; define MWG_AUS at +00:05:00 set WintergartenAussen off") } \ else { \ fhem ("delete MWG_AUS ;; define MWG_AUS at +00:05:00 set WintergartenAussen off" ) } } define MotionTerasseDurchgang notify EG.Durchgang.OutsideMotionDetect:motion:.* { \ if ( Value("EG.Durchgang.Aussenlicht_Sw_03") eq "off" && ReadingsVal( "EG.Durchgang.OutsideMotionDetect", "brightness", "") <= 90 ) { \ fhem ("set WintergartenAussen on ;; define MWG_AUS at +00:05:00 set WintergartenAussen off") } \ else { \ fhem ("delete MWG_AUS ;; define MWG_AUS at +00:05:00 set WintergartenAussen off" ) } }
Es werden zwei notify-Kommandos definiert, die von zwei verschiedenen Bewegungsmeldern (EG.Scheune.OutsideMotionDetect und EG.Durchgang.OutsideMotionDetect) getriggert werden. Beide aktivieren das Licht nur, wenn es derzeit aus
(Value("EG.Durchgang.Aussenlicht_Sw_03") eq "off)
und dunkel
(ReadingsVal( "EG.Durchgang.OutsideMotionDetect", "brightness", "") <= 90 ))
ist.
Da die Bewegungsmelder bei jeder weiteren Bewegung neue on-for-timer-Kommandos triggern würden, ist die Lösung mit dem at-Befehl eleganter. Dieser löscht und verzögert die Ausschaltzeit nur auf dem fhem-Server ohne Funkkommunikation.
Die Schalter sind in diesem Beispiel EG.Durchgang.Aussenlicht_Sw_03 EG.Durchgang.Aussenlicht_Sw_04 zwei Kanäle des Hutschienen-4-Kanal-230V-Aktors. Beide sind in in einer structure namens WintergartenAussen zusammengefasst. Es ist dringend empfohlen, diesen beim Schalten von Außenbeleuchtung mit einem LS/FS-Schutz (16A+0.03A) für jeden Kanal abzusichern. Das ganze kann sehr adrett in einen 8-Einheiten-Verteilerkasten in Unterputz- oder Aufputz-Verschaltung realisiert werden.
Gerät bei Bewegung in Abhängigkeit der Helligkeit schalten
Mit der nachfolgenden Notify-Definition werden zwei Log-Einträge erzeugt, eine Meldung auf der Dreambox angezeigt, falls diese angeschaltet ist, und ein Unterputz-Schaltaktor für die angegebene Zeit (in Sekunden) eingeschaltet, falls die gemessene Helligkeit am Bewegungsmelder kleiner oder gleich 90 ist.
Der Code ist hier so angegeben, wie er in der Weboberfläche nach einem Klick auf das DEF-Feld übernommen werden kann.
HM_BewegMelder_Carport:motion { Log 1, "Trigger-Notify von BewegMelderCarport: @"; Log 1, ReadingsVal( "HM_BewegMelder_Carport", "brightness", ""); fhem( "set E2_Dreambox showText Bewegung am Carport" ) if ReadingsVal("E2_Dreambox","state","") eq "on"; if ( ReadingsVal( "HM_BewegMelder_Carport", "brightness", "") <= 90 ) { fhem( "set HM_Sw1_GarageLED on-for-timer 300" ); } }
Einsatzbeispiele (per DOIF)
Aktor in Abhängigkeit der Helligkeit und innerhalb eines Zeitraums schalten
Voraussetzung: Twilight-Modul Die Twilight-Abfragen könnten natürlich auch entfernt werden.
define di_lampe DOIF ( ( [sensor:brightness] < 120 and [?[twilight:ss_indoor]-23:59] ) (set lampe on) DOELSEIF ( [sensor:brightness] > 80 and [?04:00-[twilight:sr_indoor]] ) (set lampe off)
Aktor bei Bewegung einschalten (inkl. weiterer Gimmicks)
Benötigte Module: Twilight und Residents
Die Zeilen zum Residents und Twilight-Modul könnten natürlich auch entfernt werden.
define di_lampe2 DOIF ( ( ( ## Bewegungsmelder löst aus [sensor:?motion] and ## nur wenn Lampe nicht zuvor manuell eingeschaltet wurde [lampe:state] ne "on" and ## und wenn es nicht sowieso hell genug ist. [?sensor:brightness] < 50 ) and ( ## entweder immer nachts [?00:00-[twilight:sr_civil]] or ## oder wenn niemand daheim [?rgr_Residents] ne "home" ) ) (set lampe2 on-for-timer 180)
Sonstiges
Anzeige der Uhrzeit der letzten Bewegung
Möchte man den Zeitpunkt der letzten erfassten Bewegung in der GUI sehen, so muss hierzu folgendes Attribut gesetzt werden.
attr Sensor showtime 1
Bekannte Probleme
Geräte verfügen über keinen Sabotage-Kontakt.
Links
Manual: PDF HM-Sen-MDIR-O, PDF HM-Sen-MDIR-O-2