Hauptmenü

Radio über Bewegungsmelder

Begonnen von onkel-tobi, 18 Juli 2015, 14:38:22

Vorheriges Thema - Nächstes Thema

onkel-tobi

Hallo,

ich habe mir gerade einen HM Bewegungsmelder gekauft und würde für das Wohnzimmer neben einer Alarmanlage den Melder auch gerne dazu verwenden um morgens, wenn der/die Erste das Wohnzimmer betritt das Radio einzuschalten.
Das klappt über folgenden Code auch soweit:


#Radio
define du_eg_wz_radio dummy
attr du_eg_wz_radio group action
attr du_eg_wz_radio setList on off
define on_du_eg_wz_radio notify du_eg_wz_radio:on { if (gt 06:00 && lt 09:00) {fhem ("set du_eg_wz_av on")};;{fhem ("set eg_wz_quad on")};;{fhem ("set eg_wz_quad input radio")};;{fhem ("set eg_wz_quad volume 60")}}


Der Dummy wird bei motion detection aufgerufen:
define not_radio_on notify eg_wz_motion:motion {fhem ("set du_eg_wz_radio on")}
Momentan würde das Programm aber ja bei jeder Bewegung ausgeführt.

Wie würdet ihr hier vorgehen? Ich hatte jetzt daran gedacht eine Routine zu schreiben, in der ich beim 1. auslösen eine Var auf 1 setze, die ich jede Nacht zurücksetze? Entsprechend beim ausführen erst die VAR überprüfen. Oder denke ich da zu kompliziert und das ganze lässt sich efizienter/einfacher gestalten?

Danke & Gruß,
Tobi


Hans Franz

Hallo,
Du könntest in die if Bedingung, die btw. so nicht funktionieren wird, da gt und lt der Vergleichswert fehlt, noch ein:
attr on_du_eg_wz_radio disable 1
einsetzen.
Nachts braucht es dann noch ein at, um disable zurück zu setzen.

Gruß
Hans
Raspi
CUL, Nano-CUL
FHT8V, FHT80B, S300TH
WM1000WZ, ELRO
LW12, LD382,DS18B20

onkel-tobi

Hi,

danke für deine Antwort.
Hast Recht, die Zeitbedingung hatte ich gerade vorher dazu geaddet, aber noch nicht probiert.
Aber das mit dem disable ist eine super Idee und jetzt so umgesetzt.
Jetzt geht es dann ans ausschalten.

Gruß & noch ein schönes WE,
Tobi

Damian

Zitat von: onkel-tobi am 18 Juli 2015, 21:59:21
Hi,

danke für deine Antwort.
Hast Recht, die Zeitbedingung hatte ich gerade vorher dazu geaddet, aber noch nicht probiert.
Aber das mit dem disable ist eine super Idee und jetzt so umgesetzt.
Jetzt geht es dann ans ausschalten.

Gruß & noch ein schönes WE,
Tobi

geht auch einfacher:

define di_radio DOIF ([du_eg_wz_radio:?on] and [06:00 - 09:00])
  (set du_eg_wz_av onfhem, set eg_wz_quad on, set eg_wz_quad input radio, set eg_wz_quad volume 60)
DOELSE
  (Befehlssequenz zum ausschalten ...)


hier kannst du durchlaufen so oft du willst - es wird nur einmal eingeschaltet.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

onkel-tobi

Hi Damian,

danke für deine Antwort.
Wenn ich das richtig verstehe habe ich aber dann ja mehr config Aufwand, da ich den dummy ja eh benötige.
Könnte höchstens on und off dann weglassen und das über das doif steuern. Oder seh ich das falsch?

Danke & Gruß,
Tobi

Damian

Zitat von: onkel-tobi am 19 Juli 2015, 09:34:01
Hi Damian,

danke für deine Antwort.
Wenn ich das richtig verstehe habe ich aber dann ja mehr config Aufwand, da ich den dummy ja eh benötige.
Könnte höchstens on und off dann weglassen und das über das doif steuern. Oder seh ich das falsch?

Danke & Gruß,
Tobi

Den Dummy (und den notify) brauchst du natürlich nicht, ich habe "du_eg_wz_radio" für deinen Bewegungsmelder gehalten. Dann also:

define di_radio DOIF ([eg_wz_motion:?motion] and [06:00 - 09:00])
  (set du_eg_wz_av onfhem, set eg_wz_quad on, set eg_wz_quad input radio, set eg_wz_quad volume 60)
DOELSE
  (Befehlssequenz zum ausschalten ...)


Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

onkel-tobi

Hi Damian,

danke für Deine Nachricht.
Sorry da habe ich mich evtl. schlecht ausgedrückt. Den Dummy habe ich ganz gerne noch, damit man das Radio auch manuell mal an und ausschalten kann.

Werde aber auch deinen Vorschlag nun mal testen.

Danke & ein schönes WE,
Tobi