[Gelöst] Bewegungsmelder:motion -> Helligkeit -> on-for-time -> Verlängern

Begonnen von Simon74, 08 August 2014, 22:21:04

Vorheriges Thema - Nächstes Thema

Simon74

Ich habe Bewegungsmelder und Dimmer nicht direkt verbunden sondern mache es per FHEM:
t5.fl.bm:motion {if (ReadingsVal("t5.fl.bm","brightness","0")<35) {fhem("set t5.fl.di1_Sw 25 25 0")}

Funktioniert, jedoch das verlängern geht nicht. Theoretisch 10sec. Zeit für neue Bewegung um die on-for-time Zeit zu verlängern. (BM ist auf dynamisch 15s. eingestellt).

Wenn ich mir die Codelogik so ansehe..., kann eigentlich nicht funktionieren, denn wenn der Dimmer an ist, ist die Helligkeit beim 2. Motion höher, also über den "35" (da das Licht ja noch ON ist).
Also wird das verlängern so wohl NIE funktionieren, muss ja zuerst wieder unter die Schwelle sinken bevor das Licht wieder angeht.
Auch bei direktem verbinden von BM und DIM hatte ich dasselbe Problem.

War gerade am Forum durchsuchen konnte aber über diese Problematik nicht wirklich was finden, was mich wiederum eigentlich wundert. Habe ich schlecht gesucht ?

frank

du könntest die brightness-bedingung mit einer statusabfrage der lampe oder-verknüpfen. also ungefähr:
if ((brightness  < 35) || (lampe eq on)) .

gruss frank
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

Simon74

Zur selben Lösung bin ich mit erfolgreichem Test gerade auch gekommen:  :)
t5.fl.bm:motion {if ((ReadingsVal("t5.fl.bm","brightness","0")<35) || (ReadingsVal("t5.fl.di1_Sw","state","0") ne "on") && (!isday())) {fhem("set t5.fl.di1_Sw 25 25 0")}}