Zwei Bewegungsmelder sollen eine Lampe schalten

Begonnen von visionsurfer, 22 Oktober 2016, 17:45:48

Vorheriges Thema - Nächstes Thema

visionsurfer

Hallo,

ich kämpfe mich gerade durch die Anfänger PDF. Endlich mal. Klappt auch bisher alles, aber jetzt komme ich gerade nicht weiter.

In meinem Bad hab ich zwei Bewegungsmelder, weil es etwas verwinkelt ist:


praesenz_hauptbad_wc
praesenz_hauptbad_dusche


Ich möchte nun erreichen, dass wenn ich ins Bad gehe, automatisch das Licht von einer bestimmten Lampe angeht. Das ist mal der erste Schritt. Später möchte ich das noch in Abhängigkeit von Dämmerung bringen. Aber soweit bin ich noch nicht.

Also erst mal Lampe an, wenn Bewegungsmelder reagiert.

Im ersten Step hab ich das ganze erst mal mit nur einem Bewegungsmelder gemacht:

define wanne_bewegung notify praesenz_hauptbad_wc set lampe_wanne $EVENT

Das klappt auch wunderbar. Licht geht an und auch wieder aus. Mein Bewegungsmelder sendet halt nach einer gewissen Nachlaufzeit ein "OFF".
Nun möchte ich aber das dieses Licht auf beide Bewegungsmelder reagiert. Also hatte ich folgendes ausprobiert, weil ich es nicht besser wusste:

define wanne_bewegung notify praesenz_hauptbad_wc,praesenz_hauptbad_dusche set lampe_wanne $EVENT

Ich habe also beide Sensoren durch ein Komma getrennt eingebracht. Leider scheint das nicht zu funktionieren. Es passiert nichts. Lampe bleibt aus.
Bin ich da auf dem Holzweg. Kann man nicht 2 Sensoren einbringen ?

Alternativ hätte ich jetzt versucht mit structure eine Gruppe zu bilden und dann das ganze mit notify zu machen ? Besser ? Ich hätte also erst beide Bewegungsmelder in eine Gruppe gebracht und diese Gruppe dann angesprochen.

Würde mich über kurze Hilfe freuen.

Ansonsten bin ich einfach nur über die Möglichkeiten schwer begeistert.

Grüße,
Visionsurfer

CoolTux


define (wanne_bewegung notify praesenz_hauptbad_wc|praesenz_hauptbad_dusche set lampe_wanne).* $EVENT


Ich würde aber Structure nehmen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

visionsurfer

Hi,

Danke für die schnelle Antwort.

Ja hab ich genommen, weil ich ausprobieren wollte, ob es so funktioniert. Es geht grundsätzlich. Nur noch einen kleinen Schönheitsfehler gibt es (keine Ahnung ob der wirklich so klein ist).

Es schaltet jetzt die Lampe. ABER...er wartet nun bis beide Bewegungsmelder AN sind. Es müssen also beide Bewegungsmelder eine Bewegung registrieren und erst dann schaltet die Lampe.
Ich würde ja gerne erreichen, dass egal welcher der beiden Bewegungsmelder die Bewegung registriert, die Lampe geschaltet wird.

Aus gehen soll die Lampe natürlich erst dann wenn auch wirklich beide Bewegungsmelder keine Bewegung mehr registrieren.

Ich hoffe ihr versteht was ich meine. Doch gar nicht so simple, oder ?

Grüße,
Visionsurfer

CoolTux

http://fhem.de/commandref_DE.html#structure

Attribut clientstate_behavior
und

Attribut clientstate_priority

bitte anschauen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

visionsurfer

Hi,

ok. Geil. Wenn ich es richtig verstanden habe, muss ich das hier anwenden:

attr haus clientstate_priority Any_On|An All_Off|Aus

Wenn ein Sensor angeht, wird die Gruppe automatisch auf ALL AN geschaltet und meine Lampe müsste angehen.
Dagegen müssen erst wirklich beide Sensoren ausgehen, um meine Lampe auch wieder auszuschalten. Merkt Sensor1 noch Bewegung und Sensor2 ist schon aus, bleibt die Lampe trotzdem an.

Liege ich so richtig ? Wollte erst mal fragen, bevor ich es einbaue.

Grüße,
Visionsurfer

visionsurfer

Ich habe es jetzt mal schnell eingebaut.

Also nur den attr: clientstate_priority

Dort hab ich folgendes eingetragen:

Any_On|An All_Off|Aus

Die Ausschaltung funktioniert meiner Meinung perfekt. Das heißt er wartet bis auch wirklich beide Bewegungsmelder aus sind und erst dann wird die Lampe ausgeschaltet.
Aber AN funktioniert leider noch nicht wie gewünscht. Erst wenn beide Bewegungsmelder AN sind, wird die Lampe eingeschaltet. Hmmm, hab ich was falsch gemacht ?

Grüße,
Visionsurfer

CoolTux

Mach mal bitte ein list von Deiner Strukturen wenn einer gemeldet hat.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

visionsurfer


visionsurfer

Hi,

hier mal ein paar Screenshots. Hilfe das ?

Grüße,
Visionsurfer

CoolTux

mach mal bitte

Attribut clientstate_behavior

rein und lösche erstmal

Attribut clientstate_priority
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

sentinel1

ich weiß,jetzt kommt schon wieder einer mit DOIF,aber warum nicht etwa so:

define wanne_bewegung DOIF ([praesenz_hauptbad_wc] eq "AN" or [praesenz_hauptbad_dusche] eq "AN")(set lampe_wanne $EVENT)
DOELSEIF ([praesenz_hauptbad_wc] eq "AUS" and [praesenz_hauptbad_dusche] eq "AUS")(set lampe_wanne $EVENT)

visionsurfer

Hi,
@CoolTux:

Wie soll der Befehl bei clientstate_behavior genau aussehen ? Da muss doch dann noch was dahinter, oder ?

Grüße,
Visionsurfer

CoolTux

Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

visionsurfer

Ok, probiere ich mich morgen aus. Also den vorhandenen Eintrag löschen und durch deinen Vorschlag ersetzen. Mach ich.

Könntest du mir kurz erklären, was dieser Eintrag dann bewirkt?

Geht irgendwie aus der Wiki nicht hervor.

CoolTux

Wenn Du clientstate_behavior arbeitest, stellst Du unter clientstate_priority ein wie was schalten soll. Also was hat vorrang vor was und wie stellt sich die struktur darauf ein

In Deinem Fall musst Du

clientstate_behavior relative
clientstate_priority on off



Grüße
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net