Peering HM-Sen-MDIR-O-2/HM-LC-SW1-FM

Begonnen von Jojo11, 29 Mai 2015, 16:38:07

Vorheriges Thema - Nächstes Thema

Jojo11

Hallo,

ich habe einen Bewegungsmelder HM-Sen-MDIR-O-2 sowie einen Unterputzaktor HM-LC-SW1-FM und schalte damit (abhängig von der Helligkeit) mehrere Lampen. Zusätzlich können diese auch über den Taster geschaltet werden. Das funktioniert soweit auch ganz gut mittels peering (komplett ohne zusätzlichen code in FHEM). Wenn die Lampen manuell am Taster eingeschaltet werden, bleiben sie an, bis sie wieder ausgeschaltet werden (auch wenn zwischenzeitlich Bewegung registriert wird). Allerdings habe ich es noch nicht geschafft, den Timer zu verlängern, wenn durch Bewegung eingeschaltet wurde und dann zwischendurch eine weitere Bewegung registriert wurde. Gut fände ich, wenn der Timer dann erneut loslaufen würde. Welches Register muss ich dazu im Aktor ändern? Anbei ein Auszug meiner aktuellen Konfiguration:


R-BM_Garage_chn-01-lgActionType jmpToTarget
R-BM_Garage_chn-01-lgCtDlyOff geLo
R-BM_Garage_chn-01-lgCtDlyOn geLo
R-BM_Garage_chn-01-lgCtOff geLo
R-BM_Garage_chn-01-lgCtOn geLo
R-BM_Garage_chn-01-lgCtValHi 100
R-BM_Garage_chn-01-lgCtValLo 50
R-BM_Garage_chn-01-lgMultiExec on
R-BM_Garage_chn-01-lgOffDly 0 s
R-BM_Garage_chn-01-lgOffTime unused
R-BM_Garage_chn-01-lgOffTimeMode absolut
R-BM_Garage_chn-01-lgOnDly 0 s
R-BM_Garage_chn-01-lgOnTime unused
R-BM_Garage_chn-01-lgOnTimeMode minimal
R-BM_Garage_chn-01-lgSwJtDlyOff off
R-BM_Garage_chn-01-lgSwJtDlyOn on
R-BM_Garage_chn-01-lgSwJtOff dlyOn
R-BM_Garage_chn-01-lgSwJtOn dlyOff
R-BM_Garage_chn-01-shActionType jmpToTarget
R-BM_Garage_chn-01-shCtDlyOff ltLo
R-BM_Garage_chn-01-shCtDlyOn ltLo
R-BM_Garage_chn-01-shCtOff ltLo
R-BM_Garage_chn-01-shCtOn ltLo
R-BM_Garage_chn-01-shCtValHi 200
R-BM_Garage_chn-01-shCtValLo 120
R-BM_Garage_chn-01-shOffDly 0 s
R-BM_Garage_chn-01-shOffTime unused
R-BM_Garage_chn-01-shOffTimeMode absolut
R-BM_Garage_chn-01-shOnDly 0 s
R-BM_Garage_chn-01-shOnTime 45 s
R-BM_Garage_chn-01-shOnTimeMode minimal
R-BM_Garage_chn-01-shSwJtDlyOff dlyOn
R-BM_Garage_chn-01-shSwJtDlyOn on
R-BM_Garage_chn-01-shSwJtOff dlyOn
R-BM_Garage_chn-01-shSwJtOn on
R-confBtnTime permanent
R-intKeyVisib visib
R-localResDis off
R-pairCentral 0x123ABC
R-powerUpAction off
R-self01-lgActionType jmpToTarget
R-self01-lgCtDlyOff geLo
R-self01-lgCtDlyOn geLo
R-self01-lgCtOff geLo
R-self01-lgCtOn geLo
R-self01-lgCtValHi 100
R-self01-lgCtValLo 50
R-self01-lgMultiExec on
R-self01-lgOffDly 0 s
R-self01-lgOffTime unused
R-self01-lgOffTimeMode absolut
R-self01-lgOnDly 0 s
R-self01-lgOnTime unused
R-self01-lgOnTimeMode absolut
R-self01-lgSwJtDlyOff off
R-self01-lgSwJtDlyOn on
R-self01-lgSwJtOff dlyOn
R-self01-lgSwJtOn dlyOff
R-self01-shActionType jmpToTarget
R-self01-shCtDlyOff geLo
R-self01-shCtDlyOn geLo
R-self01-shCtOff geLo
R-self01-shCtOn geLo
R-self01-shCtValHi 100
R-self01-shCtValLo 50
R-self01-shOffDly 0 s
R-self01-shOffTime unused
R-self01-shOffTimeMode absolut
R-self01-shOnDly 0 s
R-self01-shOnTime unused
R-self01-shOnTimeMode absolut
R-self01-shSwJtDlyOff off
R-self01-shSwJtDlyOn on
R-self01-shSwJtOff dlyOn
R-self01-shSwJtOn dlyOff
R-sign off
R-statusInfoMinDly 2 s
R-statusInfoRandom 1 s
R-transmitTryMax 6
RegL_00: 02:81 0A:12 0B:3A 0C:BC 15:FF 18:00 00:00
RegL_01: 08:00 30:06 57:24 56:00 00:00
RegL_03:BM_Garage_chn:01 02:22 03:22 04:78 05:C8 06:00 07:49 08:00 09:FF 0A:81 0B:13 0C:13 82:00 83:00 84:32 85:64 86:00 87:FF 88:00 89:FF 8A:A1 8B:14 8C:63 00:00
RegL_03:self01 02:00 03:00 04:32 05:64 06:00 07:FF 08:00 09:FF 0A:01 0B:14 0C:63 82:00 83:00 84:32 85:64 86:00 87:FF 88:00 89:FF 8A:21 8B:14 8C:63 00:00
deviceMsg off (to BM_Garage)


schöne Grüße
Jo

martinp876

Wenn du am schalter einschaltest und das licht anbleiben soll muss im state on unendlich stehen.
Damit ein trigger des bm dies nicht ausschaltet muss dieser ignoriert werden, wenn der state on ist. Somit kann er nicht verlaengern. Was ist zu tun.....
Der bm schaltet das licht ein und setzt die ontime auf 0. Dafuer setzt er den wert von timedoff auf die gewuenschte dauer. Ausserdem muss blokiert werden, wenn der aktor in on ist, muss aber reagieren, wenn er in timed off ist. Er sollte dann nach on verzweigen... wo er 0sec bleibt und dann in timedoff eine weile verweilt.
Komzept verstanden ?

Jojo11

#2
Hallo Martin,

im Prinzip ja. In FHEM selber wüsste ich auch, wie ich das zu machen hätte. Aber in diesem Experten-Modus sind das für mich böhmische Dörfer  :-\
Mir ist nicht klar, wie und ob man diese if-Bedingung über Register definieren kann. Gibt es dazu eigentlich Dokumentation? Die Beispiele, die ich gefunden habe, haben leider nie diesen Fall betrachtet. Obwohl ich denke, dass diese Anwendung ein Standard-Fall sein sollte  ???

schöne Grüße
Jo

martinp876

set <dev> regSet shOffDly   45    BM_Garage_chn-01
set <dev> regSet shOnTime   0     BM_Garage_chn-01
set <dev> regSet shSwJtDlyOff   on    BM_Garage_chn-01
set <dev> regSet shSwJtDlyOn   no    BM_Garage_chn-01
set <dev> regSet shSwJtOff   dlyOn BM_Garage_chn-01
set <dev> regSet shSwJtOn   no    BM_Garage_chn-01

probier mal

Jojo11

Bin gerade erst  dazu gekommen. Respekt, das scheint genau zu passen! In jedem Fall verlängert der BM jetzt bei weiterer Bewegung die on-time. Ich werde das heute mal ausgiebig testen und versuchen zu verstehen. Vielen lieben Dank erstmal!

schöne Grüße
Jo

Nachtrag: Der BM heißt BM_Garage. Mit dem musste ich auch peeren, damit es klappt (nicht mit chn-01).

martinp876

ZitatDer BM heißt BM_Garage. Mit dem musste ich auch peeren, damit es klappt (nicht mit chn-01).
ja, klar.
eine unzulänglichkeit.
BM_Garage ist das Device - kann man eigentlich nicht peeren
BM_Garage_chn-01 ist der erste Channel des Device. Ist nicht durchgängig implementiert. den könnte man peeren, wenn ich die rückberechnugn einführen würde.

Man muss nicht alle channels definieren. Insbesondere bei Devices mit nur einem Kanal. Schon gibt es ein Problem, wenn man das zulässt. _Chn-01 wird angehängt, wenn der Kanal nicht als eigenständige Entity existiert. Das gilt für alle nicht definierten Channels.

Um das Verhalten und die Programmierung zu verstehen schau dir die Statemachine an (einsteigerdoc). Die sollte - meine ich - klar machen wie ein (eigentlich jedes) HM Device funktioniert. Hat man das verstanden sollten sich solche Dinge leicht programmieren lassen.

Jojo11

Das habe ich gelesen und versucht zu verstehen  ;D
Was ich noch nicht nachvollziehen kann: Bei einer einzelnen Bewegung geht die Lampe an und nach ca. 84 s wieder aus. Die einzige Zeit, die ich angegeben habe ist aber R-BM_Garage_chn-01-shOffDly mit 45 s, oder? Der Bewegungsmelder selber ist auf das minimal Intervall von 30 s eingestellt, was aber ja damit nichts zu tun haben sollte. Wo könnten denn die ca. 40 s Differenz herkommen bzw. wie stelle ich z.B. 2 min. ein?

schöne Grüße
Jo