Außenbewegungsmelder motion-Frage

Begonnen von Andre0909, 25 März 2018, 10:19:01

Vorheriges Thema - Nächstes Thema

Andre0909

1.)

Hallo zusammen,

bekomme Mittwoch meinen Außenbewegungsmelder der eine Außenlampe anschalten soll bei Bewegung.
Da ich bereits innen einen Bewgungsmelder habe stellt sich für mich folgende Frage:

Ich möchte das er MElder bei "motion" eine Lampe an und nach 5 min ausschaltet.
Beim Innenmelder verharrt dieser dann 5 min auf "motion" und nimmt in der Zeit keine Bewgung war.
Außen soll es laut Forum das selbe Problem geben.
Es soll sich aber quasi die Zeit aufaddieren, also Bewegung = 5 min Licht an. Nach der 2. Minute wieder Bewegung = weitere 5 Minuten also insgesamt 7 Minuten an, etc...

ISt das realsierbar? Beim Innenmelder kriege ich das nicht hin.

2.) Wenn ich die Lampe von Innen manuell anschalte würde diese ja erstmal anbleiben. Aber nur solange wie dann eine Bewgung den 5 Minuten Rhytmus auslöst und DANACH die Lampe wieder ausschaltet. Jemand eine Idee mit welchem Trick ich das verhindern könnte, Marke manuelles Anschalten überschreibt den Bewegungsmelder?



Otto123

Hallo,

zum ersten meine DOIF Lösung
defmod di_Flurlicht DOIF ([PIR1:"motion:.on"]) (set SW01_Sw01 on)(set SW01_Sw01 off)
attr di_Flurlicht do resetwait
attr di_Flurlicht wait 0,180

zum zweiten musst Du den Zustand der Lampe und vom DOIF Modul abfragen, könnte so gehen. Ist nur ausgedacht und nicht probiert
defmod di_Flurlicht DOIF ([PIR1:"motion:.on"] and ([?SW01_Sw01] eq off or [?$SELF:wait_timer] ne "no timer")) (set SW01_Sw01 on)(set SW01_Sw01 off)

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

rvideobaer

Hallo,

was für ein System ist den der Bewegungsmelder? Bei z.b. Homematic kann man so etwas intern Programieren.

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

betateilchen

Es ist völlig egal, welcher Bewegungsmelder zum Einsatz kommt, es ist doch eine Frage der Logik.

Bei meinen Homematic PIR habe ich das so gelöst:


            my $t = ReadingsVal("fl_PIR1_Motion",'R-minInterval',120) + 5;
            CommandSet(undef,"fl_Licht on-for-timer $t") ;



  • Aus dem Melder "fl_PIR1_Motion" wird das Register minInterval gelesen. Das ist das Interval, in dem der Bewegungsmelder erneut prüft, ob noch eine Bewegung zu erkennen ist.
  • Zu diesem Interval werden 5 Sekunden aufaddiert.
  • Anschließend wird das Licht für die berechnete Zeitdauer eingeschaltet

Beispiel:


  • Das Interval ist auf 60 Sekunden eingestellt
  • Bei Bewegung wird das Licht für 65 Sekunden eingeschaltet
  • Nach 60 Sekunden (da ist das Licht noch an!) prüft der Bewegungsmelder erneut auf Bewegung
  • Wenn immer noch eine Bewegung erkennt wird, wird erneut ein "on-for-timer 65" geschickt, das Licht bleibt an.
  • Falls keine Bewegung mehr erkannt wird, geht das Licht 5 Sekunden nach der letzten Prüfung aus.

Wenn man nicht mit variablen Intervallzeiten arbeitet, braucht man den Wert auch überhaupt nicht berechnen, sondern kann ihn fest vorgeben. Im Beispiel also einfach immer "on-for-timer 65" setzen.

Bei Bewegungsmeldern von Homematic empfiehlt es sich, das Register captInInterval auf "on" zu setzen, um die Logik zu unterstützen. Das "beruhigt" das Schaltverhalten der Logik noch weiter.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rvideobaer

Hallo,

mit
Es ist völlig egal, welcher Bewegungsmelder zum Einsatz kommt, es ist doch eine Frage der Logik.
hast Du sicherlich Recht, aber was der Bewegungsmelder direkt steuert muß nicht über extern gesteuert werden und ist nicht davon abhängig ob FHEM läuft oder nicht.
Würde bei mir etwas Wichtiges nicht funktionieren weil FHEM ausgefallen ist bekäme ich von meiner Besseren Hälfte die Anweisung alles wieder abzubauen.
Das geht jetzt etwas am Ziel vorbei.

Aber wie gesagt diese Logik mit dem Neustart der Zeit bei erneuter Bewegungserkennung ist in HM doch Einprogramierbar. Vorausgesetzt es ist Homematic.

Rolf

Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

betateilchen

Zitat von: Andre0909 am 25 März 2018, 10:19:01
Es soll sich aber quasi die Zeit aufaddieren, also Bewegung = 5 min Licht an. Nach der 2. Minute wieder Bewegung = weitere 5 Minuten also insgesamt 7 Minuten an, etc...

Wenn Du einen Bewegungsmelder hast, der JEDE Bewegung meldet, brauchst Du einfach nur bei jeder Bewegung ein "on-for-timer 300" schicken.


  • Bewegung zum Zeitpunkt t=0s bewirkt Ausschalten nach 300 Sekunden (5 Minuten)
  • Nächste Bewegung zum Zeitpunkt t=120s bewirkt Ausschalten nach weiteren 300 Sekunden (120+300 = 420 = 7 Minuten)
  • Nächste Bewegung zum Zeitpunkt t = 360s bewirkt Ausschalten nach weiteren 300 Sekunden (360+300 = 660 = 11 Minuten)
  • usw.




Zitat von: Andre0909 am 25 März 2018, 10:19:01
Wenn ich die Lampe von Innen manuell anschalte würde diese ja erstmal anbleiben. Aber nur solange wie dann eine Bewgung den 5 Minuten Rhytmus auslöst und DANACH die Lampe wieder ausschaltet. Jemand eine Idee mit welchem Trick ich das verhindern könnte, Marke manuelles Anschalten überschreibt den Bewegungsmelder?

Nichts einfacher als das. Gemeinsam mit dem manuellen Einschalten deaktivierst Du einfach das notify, das für das automatische Schalten zuständig ist. Wenn Du dann das Licht manuell wieder ausschaltest, schaltest Du genau dann das notify wieder an.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

betateilchen

Zitat von: rvideobaer am 25 März 2018, 18:57:15
Aber wie gesagt diese Logik mit dem Neustart der Zeit bei erneuter Bewegungserkennung ist in HM doch Einprogramierbar.

Die Einschaltdauer würde aber bei Homematic im Schaltaktor festgelegt, nicht im Bewegungsmelder. Insofern müssten beide Komponenten von Homematic sein.
Die Steuerung per notify entkoppelt die Hersteller der beiden Komponenten komplett voneinander.

Zitat von: rvideobaer am 25 März 2018, 18:57:15
Würde bei mir etwas Wichtiges nicht funktionieren weil FHEM ausgefallen ist

solltest Du Dir viel mehr Gedanken über ein stabil laufendes FHEM machen.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

rvideobaer

Hallo,

solltest Du Dir viel mehr Gedanken über ein stabil laufendes FHEM machen
Ich bin mit der Stabilität von FHEM zufrieden, und habe damit keine Probleme.

Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

Andre0909

Also erstmal vielen Dank für all eure Vorschläge.

Es ist der Homematic Bewegungsmelder für außen. Ich werde eure Vorschläge alle mal testen Mittwoch hab aber noch nicht ganz verstanden was der optimale Weg ist. Ich denke auf die manuelle Schaltung kann ich eigentlich notfalls verzichten, wenn Bewegung geht es ja eh an und das kann ich dann wohl direkt im Melder einstellen wie ich jetzt hier rauslese... GGf. Mi/Do mehr ;D

Andre0909

So der Melder ist da und gepairt. Jetzt geht um den Code. Ich frage mich ob nicht gemäß WIKI zu dem Gerät der Teil für mich genau richig wäre? Genaues Ausprobieren geht erst bei richtigem Wetter :(

define di_lampe DOIF (
(
(
[sensor:?motion] and
[lampe:state] ne "on" and
[?sensor:brightness] < 50
)

(set lampe on-for-timer 180)



Damit müsste es doch funktionieren oder? Also wenn Bewegung erkannt wird und die anzuschaltende Lampe nicht AN ist und eine gewisse Dunkelheit erreicht ist geht die anzuschaltende Lampe an und nach 3 Min aus, oder?
Ergo wenn die Lampe schon An ist, passiert gar nix uns ich muss manuell ausschalten.

Mache ich ein Denkfehler? Müsste doch so gehen oder?


Andre0909

#10
So der Melder ist da und gepairt. Jetzt geht um den Code. Ich frage mich ob nicht gemäß WIKI zu dem Gerät der Teil für mich genau richig wäre? Genaues Ausprobieren geht erst bei richtigem Wetter :(

define di_lampe DOIF (
(
(
[sensor:?motion] and
[lampe:state] ne "on" and
[?sensor:brightness] < 50
)

(set lampe on-for-timer 180)



Damit müsste es doch funktionieren oder? Also wenn Bewegung erkannt wird und die anzuschaltende Lampe nicht AN ist und eine gewisse Dunkelheit erreicht ist geht die anzuschaltende Lampe an und nach 3 Min aus, oder?
Ergo wenn die Lampe schon An ist, passiert gar nix uns ich muss manuell ausschalten.

Mache ich ein Denkfehler? Müsste doch so gehen oder?

Also auf meine Geräte dann gemünzt:

define di_lampe2 DOIF ([HM_417BBD:?motion] and [HM_50AFCA:state] ne "on" and [HM_417BBD:brightness] < 50)(set HM_50AFCA on-for-timer 180) ?

hmm gerade von drinnen getestet, funktioniert nicht :( mache ich noch ein Fehler?

Otto123

Hi,

Zitat aus der Doku
ZitatDie alte Syntax [<devicename>:?<regex>] wird aus Kompatibilitätsgründen noch unterstützt, sollte aber nicht mehr benutzt werden.

Nimm doch einfach den Eventmonitor und lass Dir erst mal ein Grund define erstellen. Ein notify für betateilchens Code oder ein DOIF - was immer Du willst. Und wenn dann die Lampe an geht, kannst Du Zusatzbedingungen einbauen.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

rvideobaer

Hallo,

Du kannst es auch direkt im Aktor(HM_50AFCA) einstellen, ich hoffe ich habe alles richtig bin mir beim Bewegungs Channel (HM_417BBD_motion) nicht ganz sicher da must Du mal vergleichen wie der bei dir heist.

set HM_417BBD_motion peerChan 0 HM_50AFCA single  -->(peering)
set HM_50AFCA regSet shOnTime 180  HM_417BBD   (180 Sekunden bleibt das Licht an)
set HM_50AFCA regSet shCtOff ltLo HM_417BBD       (Schwellwert erkennen lower than...)
set HM_50AFCA regSet shCtValLo 50 HM_417BBD      (Schwellwert unter welcher der Aktor geschaltet wird)
set HM_50AFCA regSet shSwJtOn on HM_417BBD     (dass das Licht nicht bei zweiten Impuls des Bewegungsmelders wieder ausgeschaltet wird (Zeitverlängerung)

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr

Andre0909

Zitat von: rvideobaer am 28 März 2018, 21:46:04
Hallo,

Du kannst es auch direkt im Aktor(HM_50AFCA) einstellen, ich hoffe ich habe alles richtig bin mir beim Bewegungs Channel (HM_417BBD_motion) nicht ganz sicher da must Du mal vergleichen wie der bei dir heist.

set HM_417BBD_motion peerChan 0 HM_50AFCA single  -->(peering)
set HM_50AFCA regSet shOnTime 180  HM_417BBD   (180 Sekunden bleibt das Licht an)
set HM_50AFCA regSet shCtOff ltLo HM_417BBD       (Schwellwert erkennen lower than...)
set HM_50AFCA regSet shCtValLo 50 HM_417BBD      (Schwellwert unter welcher der Aktor geschaltet wird)
set HM_50AFCA regSet shSwJtOn on HM_417BBD     (dass das Licht nicht bei zweiten Impuls des Bewegungsmelders wieder ausgeschaltet wird (Zeitverlängerung)

Gruß Rolf
Ok danke .
Wenn ich das richtig verstehe wird hier alles im Bewegungsmelder direkt eingestellt der dann mit meinem Aktor direkt spricht. Wie aber bringe ich hier ins Spiel das die beiden nicht sprechen sollen wenn die Lampe eh an ist?

Was sind genau die Vorteile gegenüber der FHEM code Lösung? (Außer das FHEM wohl nicht laufen müsste das es trotzdem geht wenn ich das richtig verstanden habe)

Werde mit allen Lösungsideen am Wochendurchblick mal testen :)


Gesendet von iPhone mit Tapatalk

rvideobaer

Hallo,

die meisten Einstellungen finden im Aktor statt. Wenn Du den Aktor direkt einschaltest wird der Bewegungsmelder Ignoriert.

Was sind genau die Vorteile gegenüber der FHEM code Lösung? (Außer das FHEM wohl nicht laufen müsste das es trotzdem geht wenn ich das richtig verstanden habe)

Genau so ist es, und das würde mir schon reichen als Grund.

Gruß Rolf
Raspberry Pi 2, HM-Uart,1x HM-LC-Sw1PBU-FM, 1x HM-RC-2-PBU-FM,1x HM-LC-SW4-DR,1x HM-LC-Sw1-Pl-DN-R1,1x HM-TC-IT-WM-W-EU, 5x HM-CC-RT-DN und noch mehr