FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: rakete123 am 24 April 2019, 19:47:37

Titel: Fenster auf -> Licht aus
Beitrag von: rakete123 am 24 April 2019, 19:47:37
Hallo zusammen,

da es ja bald wieder los geht mit Mücken und so, hatte ich vor einem Jahr ein paar doif's geschrieben, die das Licht ausmachen, wenn man das Fenster öffnet. Hatte schon länger überall entsprechende Fensterkontakte und einen Helligkeitsmesser für Draußen hab ich auch.
Die Frau möchte aber gerne auch, dass das Licht wieder angeht wenn man das Fenster zumacht.

Gibts da irgendein Module was ich nutzen könnte? Oder gibts irgendwas "fertiges" dafür?

Beste Grüße
Marcel
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: rischbiter123 am 24 April 2019, 19:55:00
Moin,

DOELSEIF ([Fenster zu])(set Licht an)

LG

Andreas
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: rakete123 am 25 April 2019, 07:40:04
Zitat von: rischbiter123 am 24 April 2019, 19:55:00
DOELSEIF ([Fenster zu])(set Licht an)

Evtl. denke ich ja auch zu kompliziert, aber ich habe mehrere Lampen in den Räumen und es sollen natürlich nur solche wieder angehen, die vorher auch an waren.
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: CoolTux am 25 April 2019, 07:44:32
Zitat von: rakete123 am 25 April 2019, 07:40:04
Evtl. denke ich ja auch zu kompliziert, aber ich habe mehrere Lampen in den Räumen und es sollen natürlich nur solche wieder angehen, die vorher auch an waren.

Die vorher an waren oder aktuell an sind. Das erste ist etwas komplexer.
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: rakete123 am 25 April 2019, 20:00:30
Die vorher an waren.
Durch das Öffnen das Fensters ku.window.1 werden alle Lichter ausgeschaltet.
Vorher müsste ich also über ein Reading oder ähnliches ein Gedächtnis aufbauen und wenn das ku.window.1 wieder geschlossen wird, gehen alle Lichter, die vorher an waren, wieder an.

Ähnliches mache ich mit den Außenrolladen. Die gehen unter bestimmten Umständen hoch, wenn jemand das Fenster öffnet. Da könnte ich mir auch vorstellen, dass ich die wieder runterfahren will wenn jemand das Fenster wieder schließt. Aber da bin ich mir aktuell nicht sicher ;)

Dachte es gäbe vllt. ein Hilfsmodule was ich "missbrauchen" könnte. Aber das bastel ich selber was
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: CoolTux am 25 April 2019, 20:05:12
Zitat von: rakete123 am 25 April 2019, 20:00:30
Die vorher an waren.
Durch das Öffnen das Fensters ku.window.1 werden alle Lichter ausgeschaltet.
Vorher müsste ich also über ein Reading oder ähnliches ein Gedächtnis aufbauen und wenn das ku.window.1 wieder geschlossen wird, gehen alle Lichter, die vorher an waren, wieder an.

Ähnliches mache ich mit den Außenrolladen. Die gehen unter bestimmten Umständen hoch, wenn jemand das Fenster öffnet. Da könnte ich mir auch vorstellen, dass ich die wieder runterfahren will wenn jemand das Fenster wieder schließt. Aber da bin ich mir aktuell nicht sicher ;)

Dachte es gäbe vllt. ein Hilfsmodule was ich "missbrauchen" könnte. Aber das bastel ich selber was

Für Fenster und Rolllo empfehle ich AutoShuttersControl.
Das Thema Licht und Fenster wirst Du in der Tat was basteln müssen.
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: Otto123 am 25 April 2019, 22:17:39
Hi,

ich mache so etwas ähnliches mit "Speicher im Gerät", in dem Fall Rolllade.
defmod nty_RolloLueftungSZ notify FensterSZ:open set RolloSZ:FILTER=state!=95 95
An andere Stelle setze ich alle Rollladen die nicht on sind auf off:
(set Rollo.*:FILTER=state=on off)
Als Idee:
Du könntest bei deinem DOIF ein zusätzliches Reading im Gerät Licht setzen, und dann ähnlich meinem Konstrukt einfach filtern.

Gruß Otto
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: loescher am 26 April 2019, 20:27:41
Hi!

Ich hätte da auch ein Beispiel, wie bei mir die Heizung und das Fenster zusammen arbeiten:


defmod LueftungsLogik DOIF ([Fenster] eq "open")\
(\
setreading $SELF lueften 1,\
setreading Heizung last_state [Heizung:state],\
set Heizung control 4.5\
)\
DOELSEIF ([Fenster] eq "closed")\
(\
setreading $SELF lueften 0,\
set Heizung control [Heizung:last_state]\
)


Das läßt sich auch auf Lampen übertragen.  :)
Ein DOIF Profi kann sicherlich sagen, wie man den vorhergehenden Wert im DOIF anstatt der Heizung/Lampe speichert.

LG,
Stephan.
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: Gasmast3r am 26 April 2019, 21:38:32
Hy habe das für meine Heizung, sollte auch wandelbar sein


([structure_Bewohner] eq "present" and [IT_1527x25496] eq "off")(set ZU desiredTemperature [ZU:gespeicherteTemperatur])
DOELSEIF ([structure_Bewohner] eq "present" and [IT_1527x25496] eq "on")(setreading ZU gespeicherteTemperatur [ZU:desiredTemperature])(set ZU desiredTemperature 4.5)
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: Niko1987 am 27 April 2019, 08:47:13
Guten Morgen Marcel,

Mathias Kleine hat mal ein Tutorial gemacht in dem er Lichtszenen an die Anwesenheit koppelt.
FHEM Tutorial-Reihe - Part 41: Lichtszenen an Anwesenheit koppeln
https://haus-automatisierung.com/hardware/fhem/2017/10/25/fhem-tutorial-reihe-part-41-lichtszenen-mit-anwesenheit-koppeln.html (https://haus-automatisierung.com/hardware/fhem/2017/10/25/fhem-tutorial-reihe-part-41-lichtszenen-mit-anwesenheit-koppeln.html)

Dort geht es unter anderem darum, wie mal die Aktuelle Szene speichert und später wieder aufrufen kann.
Ich denke damit könntest du auch arbeiten.

Funktioniert bei mir echt gut.

Gruß
FLo
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: rakete123 am 17 Mai 2019, 14:43:06
Hallo zusammen,

vielen Dank für die Vorschläge, ich habs jetzt, so wie loescher es auch hat, umgesetzt.
Eine winzige Kleinigkeit gefällt mir aber noch nicht.

So siehts jetzt aus:

([ku.window.1:state] eq "open" or [ku.window.2:state] eq "open") (
  setreading ku.licht.1 last_state [ku.licht.1:state],
  setreading ku.licht.3 last_state [ku.licht.3:state],
  setreading ku.licht.4 last_state [ku.licht.4:state],
  set ku.hm_virt_window_1 postEvent open, set ku.roller.1:FILTER=STATE!=auf auf,
  IF ([dummy.tageslicht] eq "dunkel") (
    set ku.licht..:FILTER=state!=off off
  )
)
DOELSEIF
([ku.window.1:state] eq "closed" and [ku.window.2:state] eq "closed") (
  set ku.hm_virt_window_1 postEvent closed,
  IF ([dummy.tageslicht] eq "dunkel") (
    set ku.licht.1:FILTER=state=off [ku.licht.1:last_state],
    set ku.licht.3:FILTER=state=off [ku.licht.3:last_state],
    set ku.licht.4:FILTER=state=off [ku.licht.4:last_state]
  )
)


Cool wäre es natürlich wenn ich nicht jede Lampe einzeln angeben müsste. Gibts da einen Trick? Simples RegEx geht nicht:
set ku.licht..:FILTER=state=off [ku.licht..:last_state]

Danke!
Titel: Antw:Fenster auf -> Licht aus
Beitrag von: Otto123 am 17 Mai 2019, 20:16:24
in set magic geht meines kein regExp. Wie auch? Du willst Drei Geräte lesen...
Jeder andere Ansatz der mir einfällt wird komplizierter  ;)