[gelöst] Türsensor in Kombination mit Sunset und Sunrise

Begonnen von thiese, 16 Dezember 2018, 09:10:29

Vorheriges Thema - Nächstes Thema

thiese

Hallo,

ich habe einen Türsensor. Dieser soll nur nachts meine Beleuchtung einschalten. Das Ausschalten erfolgt manuell. Wenn ich das Licht manuell ausschalte, soll der Türsensor für 10 Sekunden deaktiviert werden. Leider ist auch tagsüber der Türsensor aktiv und schaltet das Licht ein. Hat jemand eine Idee? Bin Anfänger.


defmod LichtHaustuereOn notify SensorHaustuere:off { \
my $now=sprintf("%%02d:%%02d",$hour,$min);;\
if($data{lastOffTime}+1*10 < time() &&\ \
   sunrise_abs(-1800) gt $now || $now gt sunset_abs(1800)) {\
  fhem "set Diele on";;;;\ \
}\ \
}

det.

Ich hab das so gelöst SCHb_Haustuer:open {if (ReadingsAge("Flur","state",0)>60 && ReadingsVal("brightness","light","20")<30) {fhem "set Flur on-for-timer 360"}}
wobei brightness ein eigener 1-wire Lichtsensor ist, da geht auch ein Helligkeitswert zum Beispiel aus twilight.
LG
det.

thiese

Hallo,
besten Dank. Scheint zu funktionieren. Kannst Du mir noch sagen was der Wert "20" in Deinem ReadingsVal zu bedeuten hat?

MadMax-FHEM

#3
Zitat von: thiese am 16 Dezember 2018, 10:31:36
Hallo,
besten Dank. Scheint zu funktionieren. Kannst Du mir noch sagen was der Wert "20" in Deinem ReadingsVal zu bedeuten hat?

Siehe ReadingsVal: ReadingsVal("GeräteName","ReadingName","Ersatzwert")

(es ist immer klug vor dem "Reinhacken" irgendwelcher Befehle zu schauen was die eigentlich machen, google sollte helfen...)

Wenn nur Zahlen sein sollen ist evtl. ReadingsNum besser...

Das ist aber vermutlich ein Notify etc. du hast aber wie ich verstanden hab direkte Verbindung von Sensor und Aktor, d.h. das kann jederzeit ohne fhem steuern bzw. fhem steuert so max. "dagegen"...

Lösung mit Notify, DOIF etc. hatte ich schon überlegt zu posten, allerdings wie geschrieben wird bei direkter Verbindung von Sensor/Aktor von fhem "nur" "korrigierend eingegriffen" werden können...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

thiese

#4
manchmal steht man auf dem "Schlauch"...

So wie Du es geschrieben hast, habe ich es verstanden.

hier meine Lösung:

SensorHaustuere:off {if (ReadingsAge("Diele","state",0)>15 && ReadingsVal("Twilight","light","3")<4) {fhem "set Diele on"}}


wie setze ich das Thema auf gelöst?

MadMax-FHEM

#5
Wie geschrieben würde ich (nur um sicher zu gehen, dass auf jeden Fall nur eine Zahl zurück kommt) ReadingsNum statt ReadingsVal nehmen:


SensorHaustuere:off {if (ReadingsAge("Diele","state",0)>15 && ReadingsNum("Twilight","light",5)<4) {fhem "set Diele on"}}


Und als Ersatzwert (falls das Reading nicht gelesen werden kann) etwas nehmen was den Vergleich NICHT positiv werden lässt, somit führt ein "falsches oder nicht auslesen" nicht zu einem (evtl. unerwünschten) Schaltvorgang...

Aber wie immer: nur Tipps/Vorschläge... ;)

Auf gelöst geht ganz einfach: umbenennen (erster Post) in beispielsweise [gelöst] Türsensor in Kombination mit Sunset und Sunrise

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)