Jalousie und Beleuchtung in mehreren Räumen

Aus FHEMWiki
Wechseln zu: Navigation, Suche
Info green.png FHEM-Einsteiger-Hinweise:

Seit Erstellung der Wiki-Seite hat sich FHEM stark weiterentwickelt. Die hier noch dargestellte direkte Bearbeitung und Zerlegung der Konfiguration (include) sind nicht zwingend und nicht mehr die für Einsteiger empfohlene Vorgehensweise: siehe Konfiguration. Dennoch bietet dieses Beispiel einen sehr guten Überblick über die grundsätzliche Vorgehensweise und ist noch aktuell.


Dies ist die Beschreibung einer FHEM-Konfiguration, die zur Steuerung einer Hausautomation auf Basis von HomeMatic dient. Gesteuert werden in verschiedenen Räumen das Licht und die Jalousien. Die Länge dieser Beschreibung soll nicht abschreckend wirken, viele Zeilen sind Kommentare oder durch den autocreate Prozeß erzeugte Zeilen!

Verwendete Hard- und Software

Als Server dient ein PC mit einem Athlon 64 X2 Dual Core Prozessor 6000+, 4 GB Hauptspeicher, 2 TB gespiegeltem Diskspeicher und Gigabit Ethernet. Auf dem Server ist ein Ubuntu 11.04 Serveredition installiert, die automatisch auf dem neuesten Stand gehalten wird. Perl ist in der Version 5.10.1 vorhanden. FHEM ist dabei nur eine von vielen Applikationen, die auf dem Server laufen.

Der Server kann über das Ethernet im Hausnetz auf eine Fritzbox 7170 zugreifen, die wiederum mittels WLAN mit einer Fritzbox 3170 verbunden ist, die als WLAN-Repeater dient. An die 3170 ist als Hauszentrale ein HomeMatic Lan Interface (HMLAN Konfigurator) angeschlossen.

Der CPU-Verbrauch hält sich sehr in Grenzen, bei einer stichprobenartigen Überwachung hat FHEM etwa 5-6 CPU Sekunden verbraucht in 24 Stunden.

Konfiguration-Ethernet.jpg

Folgende HomeMatic Komponenten kommen zum Einsatz:

Produktcode Funktion Anzahl
HM-CFG-LAN LanInterface 1
HM-RC-12-W Funkfernbedienung 12-Tasten 1
HM-RC-4-B Funkfernbedienung 4-Tasten 1
HM-PB-2-WM Funk-Wandtaster 2fach 3
HM-PB-4-WM Funk-Wandtaster 4fach 2
HM-LC-Sw1-FM Funk-Schaltaktor 1-fach, Unterputzmontage 2
HM-LC-Sw2-FM Funk-Schaltaktor 2-fach, Unterputzmontage 3
HM-LC-Bl1-FM Funk-Jalousieaktor 1-fach, Unterputzmontage 2
HM-LC-Sw1PB-FM Funk-Schaltaktor 1-fach, Unterputzmontage mit Tasteraufsatz 1

Namensregeln: Alle Definitionen, die NICHT eindeutig einem Raum zuzuordnen sind, erhalten ein XX_ an den Anfang, alle anderen Definitionen erhalten eine der folgenden Kennungen:

Kennung Raum
AK_ Arbeitskeller
BA_ Bad
BU_ Büro
DB Dachboden
FL_ Flur
GA_ Garage
KU_ Küche
SK_ Saunakeller
SZ_ Schlafzimmer
TG_ Terasse/Garten
TH_ Treppenhaus
VK_ Vorratskeller
WK_ Waschkeller
WZ_ Wohnzimmer

Konfigurationsdateien

Alle Dateien, bis auf fhem.cfg, befinden sich in /etc/fhem. Alle Komponenten, die nicht physikalisch einem Raum zuzuordnen sind (Logs, Globales, etc.) wurden dem virtuellen Raum Server zugeordnet.

/etc/fhem.cfg

Die Datei /etc/fhem.cfg ist der Haupteinstiegspunkt für die Konfiguration. Aus Gründen der besseren Wartbarkeit beinhaltet die Datei nur include Anweisungen, mit der andere Dateien aus dieser Datei heraus aufgerufen werden. Das hat den Vorteil, dass Kommentare in den include Dateien erhalten bleiben. Dies ist (bzw. war seinerzeit) nicht der Fall für fhem.cfg, wenn man die Funktion autocreate verwendet. Attribute für die Definition global dürfen nicht aus der fhem.cfg ausgelagert werden, sie müssen Bestandteil der fhem.cfg bleiben.

attr global autoload_undefined_devices 1
attr global logfile /var/log/fhem/fhem-%Y-%m.log
attr global modpath /usr/share/fhem
attr global port 7072
attr global room Server
attr global statefile /var/log/fhem/fhem.save
include /etc/fhem/Web.cfg
include /etc/fhem/Autocreate.cfg
include /etc/fhem/LanInterface.cfg
include /etc/fhem/Fernbedienung.cfg
include /etc/fhem/Schlafzimmer.cfg
include /etc/fhem/Gaestezimmer.cfg
include /etc/fhem/Wohnzimmer.cfg
# include /etc/fhem/Buero.cfg
include /etc/fhem/Flur.cfg

/etc/fhem/Web.cfg

Alle relevanten Konfigurationsparameter für den Webzugriff sind in dieser Datei zu finden. Es sind die aus der Installation bekannten Standardwerte übernommen worden.

#########################################################################
## Webdefinitionen
## Zweck.........: Definitionen für den Zugriff auf den Webserver
## Standort......: Server
## Typ...........: 
## Installation..: 15.09.2011
## Besonderheiten: 
##         
#########################################################################
define XX_WEB FHEMWEB 8083 global
attr XX_WEB fwcompress 0
attr XX_WEB room Server
define XX_WEBphone FHEMWEB 8084
attr XX_WEBphone room Server
attr XX_WEBphone smallscreen 1
define XX_WEBtablet FHEMWEB 8085
attr XX_WEBtablet room Server
attr XX_WEBtablet touchpad 1

/etc/fhem/Autocreate.cfg

Diese Datei enthält alle wichtigen Information zu dem Autocreate Prozess. Keine Änderung gegenüber den Standardwerten.

#########################################################################
## Autocreate Definitionen
## Zweck.........: Autocreate aktivieren
## Standort......: Server
## Typ...........: 
## Installation..: 15.09.2011
## Besonderheiten: 
##         
#########################################################################
define XX_Autocreate autocreate
attr XX_Autocreate autosave 1
attr XX_Autocreate device_room %TYPE
attr XX_Autocreate filelog /var/log/fhem/%NAME-%Y.log
attr XX_Autocreate room Server
attr XX_Autocreate weblink 1
attr XX_Autocreate weblink_room Plots

/etc/fhem/LanInterface.cfg

Das Lan-Interface stellt das Bindeglied zwischen dem Server und den einzelnen Homematic-Komponenten dar. Es ist mit einem Ethernetnetzwerkkabel an das Netzwerk angeschlossen. Dem Lan-Interface wurde eine feste IP-Adresse vergeben, um immer auf der gleichen Adresse ansprechbar zu sein. Der Zugriff auf das Interface geschieht über Port 1000.

#########################################################################
## Lan Adapter
## Zweck.........: Bindeglied zwischen Server/fhem und Homematic Aktoren und Sender
## Standort......: Gästezimmer
## Typ...........: 
## Installation..: 15.09.2011
## Besonderheiten: feste IP-Adresse 192.168.0.6 Port 1000
##         wird an 3170 WLAN-Repeater betrieben wegen besserer Abdeckung
#########################################################################
define XX_LANInterface HMLAN 192.168.0.6:1000
attr XX_LANInterface hmId xxxxxx
attr XX_LANInterface room Gästezimmer


/etc/fhem/Fernbedienung.cfg

Fernbedienungen sind nicht an einen Standort gebunden und können bewegt werden, daher eine eigene Konfiguration, wenn die Fernbedienung nicht einem Zimmer ausschließlich zugeordnet ist.

#########################################################################
## Fernbedienungen
## Zweck.........: alle verfügbaren Sender, wenn sie nicht einem Raum 
##         unmittelbar zugeordnet sind
## Standort......: verschiedene
## Typ...........: verschiedene
## Installation..: 15.09.2011 12-Tasten-Fernbedienung
## Besonderheiten: 
#########################################################################
#########################################################################
## 12-Tasten Fernbedienung
## Zweck.........: Rollladensteuerung, Licht im Wohnzimmer und Flur
##         Scheinwerfer im Garten
## Standort......: normalerweise Wohnzimmer
## Typ...........: HM-RC-12
## Installation..: 15.09.2011 12-Tasten-Fernbedienung
## Besonderheiten: es wird nicht zwischen langem und kurzem Tasten-
##         druck unterschieden
#########################################################################
define XX_FB_12_1 CUL_HM xxxxxx
attr XX_FB_12_1 devInfo 0C0000
attr XX_FB_12_1 firmware 1.1
attr XX_FB_12_1 hmClass sender
attr XX_FB_12_1 model HM-RC-12
attr XX_FB_12_1 room Wohnzimmer
attr XX_FB_12_1 serialNr xxxxxxxxxx
attr XX_FB_12_1 subType remote

#########################################################################
## linker Button Reihe 1
## Funktion......: Rollladen runter im Wohnzimmer
## Besonderheiten: ACHTUNG, on und off sind im Wohnzimmer vertauscht
##         wegen der Tasten auf dem Taster an dem Aktuator 
#########################################################################
define XX_FB_12_1_1_Off notify XX_FB_12_1:Btn1.off.* set WZ_Rollladen off
attr XX_FB_12_1_1_Off room Wohnzimmer
#########################################################################
## rechter Button Reihe 1
## Funktion......: Rollladen hoch im Wohnzimmer
## Besonderheiten: ACHTUNG, on und off sind im Wohnzimmer vertauscht
##         wegen der Tasten auf dem Taster an dem Aktuator 
#########################################################################
define XX_FB_12_1_1_On notify XX_FB_12_1:Btn1.on.* set WZ_Rollladen on
attr XX_FB_12_1_1_On room Wohnzimmer
#########################################################################
## linker Button Reihe 2
## Funktion......: Rollladen runter im Gästezimmer
## Besonderheiten: on=runter off=hoch
#########################################################################
define XX_FB_12_1_2_Off notify XX_FB_12_1:Btn2.off.* set GZ_Rollladen on
attr XX_FB_12_1_2_Off room Wohnzimmer
#########################################################################
## rechter Button Reihe 2
## Funktion......: Rollladen hoch im Gästezimmer
## Besonderheiten: on=runter off=hoch 
#########################################################################
define XX_FB_12_1_2_On notify XX_FB_12_1:Btn2.on.* set GZ_Rollladen off
attr XX_FB_12_1_2_On room Wohnzimmer
#########################################################################
## linker Button Reihe 3
## Funktion......: Rollladen runter im Flur
## Besonderheiten: on=runter off=hoch
#########################################################################
define XX_FB_12_1_3_Off notify XX_FB_12_1:Btn3.off.* set FL_Rollladen on
attr XX_FB_12_1_3_Off room Wohnzimmer
#########################################################################
## rechter Button Reihe 3
## Funktion......: Rollladen hoch im Flur
## Besonderheiten: on=runter off=hoch 
#########################################################################
define XX_FB_12_1_3_On notify XX_FB_12_1:Btn3.on.* set FL_Rollladen off
attr XX_FB_12_1_3_On room Wohnzimmer
#########################################################################
## linker Button Reihe 4
## Funktion......: 
## Besonderheiten: derzeit nicht belegt
#########################################################################
#########################################################################
## rechter Button Reihe 4
## Funktion......: 
## Besonderheiten: derzeit nicht belegt
#########################################################################
#########################################################################
## linker Button Reihe 5
## Funktion......: 
## Besonderheiten: derzeit nicht belegt
#########################################################################
#########################################################################
## rechter Button Reihe 5
## Funktion......: 
## Besonderheiten: derzeit nicht belegt
#########################################################################
#########################################################################
## oberer Button rechts an der Fernbedienung
## Funktion......: 
## Besonderheiten: derzeit nicht belegt 
#########################################################################
#########################################################################
## unterer Button rechts an der Fernbedienung
## Funktion......: 
## Besonderheiten: derzeit nicht belegt 
#########################################################################

Um eine Kommando mit einer Taste zu verknüpfen, wird die jeweilige Taste mittels notify abgefragt. Die Identifikation um welche Fernbedienung und welche Taste es sich handelt wird durch die Kennung „Name der Fernbedienung“ : und Rückgabestring“ abgehandelt. FHEM gibt immer einen String mit den Information zurück. Dieser String enthält auch Leerzeichen. Diese Leerzeichen müssen in der Definition durch jeweils einen Punkt ersetzt werden, da FHEM sonst die ganze Befehlskette nicht richtig identifiziert. Der Stern am Ende deklariert den Rest des Rückgabestrings als nicht relevant.

Die 12-Tasten-Fernbedienung steuert derzeit die Jalousien für Gäste-, Wohnzimmer und Flur und die Tastenbelegung ist so gestaltet, dass die jeweils linke Taste in einer Reihe die Jalousie herunter fährt und die rechte Taste diese Jalousie wieder hoch fährt. Diese Fernbedienung wird global dem Raum Wohnzimmer zugeordnet, weil das der bevorzugte Platz für diese Fernbedienung sein soll.

/etc/fhem/Schlafzimmer.cfg

Im Schlafzimmer kommen hauptsächlich Schaltaktoren für Licht zur Anwendung. Eine Fernbedienung ermöglicht die Schaltungen vom Bett aus. Das Deckenlicht wird von einem Taster an der Tür oder von einer Fernbedienung geschaltet. Im Schlafzimmer sind 2 Unterputzaktoren 1fach, 1 Unterputzaktor 2fach, 1 Taster 2fach und eine 4-Tasten-Fernbedienung installiert.

#########################################################################
## Schlafzimmer
## Zweck.........: Alle Homematic Komponenten im Schlafzimmer
## Standort......: Schlafzimmer
## Typ...........: verschiedene
## Installation..: 15.09.2011
## Besonderheiten: 
##         
#########################################################################
#########################################################################
## Aktor für die senkrechten Deckenstrahler
#########################################################################
define SZ_Lampe_Decke CUL_HM xxxxxx
attr SZ_Lampe_Decke devInfo 010100
attr SZ_Lampe_Decke firmware 1.9
attr SZ_Lampe_Decke hmClass receiver
attr SZ_Lampe_Decke model HM-LC-SW1-FM
attr SZ_Lampe_Decke room Schlafzimmer
attr SZ_Lampe_Decke serialNr xxxxxxxxxx
attr SZ_Lampe_Decke subType switch
#########################################################################
## Aktor für die Strahler an den Bettseiten
## und für die Deckenlampen in der Schräge
#########################################################################
define SZ_Lampen_Seite CUL_HM xxxxxx
attr SZ_Lampen_Seite devInfo 010100
attr SZ_Lampen_Seite firmware 1.9
attr SZ_Lampen_Seite hmClass receiver
attr SZ_Lampen_Seite model HM-LC-SW1-FM
attr SZ_Lampen_Seite room Schlafzimmer
attr SZ_Lampen_Seite serialNr xxxxxxxxxx
attr SZ_Lampen_Seite subType switch

#########################################################################
## Aktor für die Strahler über dem Bett links
## Besonderheit: Dies ist ein 2-Fach Schaltaktor
##        anderer Port wird für Bett rechts benutzt
#########################################################################
define SZ_Lampe_Bett_links CUL_HM xxxxxx
attr SZ_Lampe_Bett_links devInfo 020100
attr SZ_Lampe_Bett_links firmware 1.9
attr SZ_Lampe_Bett_links hmClass receiver
attr SZ_Lampe_Bett_links model HM-LC-SW2-FM
attr SZ_Lampe_Bett_links room Schlafzimmer
attr SZ_Lampe_Bett_links serialNr xxxxxxxxxx
attr SZ_Lampe_Bett_links subType switch
#########################################################################
## Aktor für die Strahler über dem Bett rechts
## Besonderheit: Dies ist ein 2-Fach Schaltaktor
##        anderer Port wird für Bett links benutzt
#########################################################################
define SZ_Lampe_Bett_rechts CUL_HM xxxxxx
attr SZ_Lampe_Bett_rechts devInfo 020100
attr SZ_Lampe_Bett_rechts firmware 1.9
attr SZ_Lampe_Bett_rechts hmClass receiver
attr SZ_Lampe_Bett_rechts model HM-LC-SW2-FM
attr SZ_Lampe_Bett_rechts room Schlafzimmer
attr SZ_Lampe_Bett_rechts serialNr xxxxxxxxxx
attr SZ_Lampe_Bett_rechts subType switch
#########################################################################
## Sender an der Tür
## schaltet Decken- und Seitenlampen ein oder aus
## bei einem langen Tastendruck (onLong) werden alle Deckenlampen und
## die Lampen an der Seite eingeschaltet, bei einem kurzen Tastendruck
## werden nur die Hälfte der Lampen an der Decke angeschaltet
#########################################################################
define SZ_Taster_Tuer CUL_HM xxxxxx
attr SZ_Taster_Tuer devInfo 020000
attr SZ_Taster_Tuer firmware 1.2
attr SZ_Taster_Tuer hmClass sender
attr SZ_Taster_Tuer model HM-PB-2-WM
attr SZ_Taster_Tuer room Schlafzimmer
attr SZ_Taster_Tuer serialNr xxxxxxxxxx
attr SZ_Taster_Tuer subType remote
define SZ_Taster_Tuer_On_Alles notify SZ_Taster_Tuer:Btn1.onLong.* set SZ_Lampe_Decke,SZ_Lampen_Seite on
attr SZ_Taster_Tuer_On_Alles room Schlafzimmer
define SZ_Taster_Tuer_On_Decke notify SZ_Taster_Tuer:Btn1.on.* set SZ_Lampe_Decke on
attr SZ_Taster_Tuer_On_Decke room Schlafzimmer
define SZ_Taster_Tuer_Off notify SZ_Taster_Tuer:Btn1.off.* set SZ_Lampe_Decke,SZ_Lampen_Seite off
attr SZ_Taster_Tuer_Off room Schlafzimmer
#########################################################################
## 4-Tastenfernbedienung
## Zweck.........: Lichtschaltungen im Schlafzimmer vom Bett aus
## Standort......: Schlafzimmer
## Typ...........: HM-RC-4
## Installation..: 23.09.2011
## Besonderheiten: arbeitet mit toggle
#########################################################################
define SZ_Fernbedienung_4_1 CUL_HM xxxxxx
attr SZ_Fernbedienung_4_1 devInfo 040000
attr SZ_Fernbedienung_4_1 firmware 1.3
attr SZ_Fernbedienung_4_1 hmClass sender
attr SZ_Fernbedienung_4_1 model HM-RC-4-B
attr SZ_Fernbedienung_4_1 room Schlafzimmer
attr SZ_Fernbedienung_4_1 serialNr xxxxxxxxxx
attr SZ_Fernbedienung_4_1 subType remote
#########################################################################
## linker Button Reihe 1
## Funktion......: Licht links am Bett ein-/ausschalten 
## Besonderheiten: 
#########################################################################
define SZ_FB_Btn1_off notify SZ_Fernbedienung_4_1:Btn1.off.* set SZ_Lampe_Bett_links toggle
attr SZ_FB_Btn1_off room Schlafzimmer

#########################################################################
## rechter Button Reihe 1
## Funktion......: Licht rechts am Bett ein-/ausschalten 
## Besonderheiten: 
#########################################################################
define SZ_FB_Btn1_on notify SZ_Fernbedienung_4_1:Btn1.on.* set SZ_Lampe_Bett_rechts toggle
attr SZ_FB_Btn1_on room Schlafzimmer
#########################################################################
## linker Button Reihe 2
## Funktion......: Deckenlampen schalten
## Besonderheiten: 
#########################################################################
define SZ_FB_Btn2_off notify SZ_Fernbedienung_4_1:Btn2.off.* set SZ_Lampe_Decke toggle
attr SZ_FB_Btn2_off room Schlafzimmer
#########################################################################
## rechter Button Reihe 2
## Funktion......: Seitenlampen schalten
## Besonderheiten: 
#########################################################################
define SZ_FB_Btn2_on notify SZ_Fernbedienung_4_1:Btn2.on.* set SZ_Lampen_Seite toggle
attr SZ_FB_Btn2_on room Schlafzimmer
#########################################################################
## Alternative! Um SZ_Lampe_Decke und SZ_Lampen_Seite mit einem
## Tastendruck zu schalten
## Durch dieses Notify wird zuerst SZ_Lampe_Decke eingeschaltet, dann
## beim nächsten Tastendruck wird SZ_Lampen_Seite dazugeschaltet und
## dann beim dritten Tastendruck werden beide wieder ausgeschaltet
## Bei Aktivierung vorher SZ_FB_Btnx.on/off deaktivieren!!!
#########################################################################
#define MyNotify notify Fernbedienung:Btn2.on.* {if(Value("SZ_Lampe_Decke") eq "on" && Value("SZ_Lampen_Seite") eq "on") {fhem "set SZ_Lampe_Decke,SZ_Lampen_Seite off"} elsif(Value("SZ_Lampe_Decke") eq "on" && Value("SZ_Lampen_Seite") eq "off") {fhem "set SZ_Lampen_Seite on"} else{fhem "set SZ_Lampe_Decke on"}}

Der Taster an der Tür soll nur Licht ein- und ausschalten, daher wurde auf eine Unterscheidung zwischen einem langen und einem kurzen Tastendruck verzichtet. Da zwei verschiedene Lichtquellen zu schalten sind, müssen bei dem set Kommando beide Quellen jeweils angegeben werden. Es dürfen keine Leerzeichen in der Liste der Aktoren sein und die Aktoren müssen per Komma getrennt werden. (Achtung: "else if" muss in Perl als "elsif" geschrieben werden.)

/etc/fhem/Gaestezimmer.cfg

Im Gästezimmer wird derzeit nur die Jalousie gesteuert. Hier ist nur ein Unterputzjalousieaktor installiert.

#########################################################################
## Gästezimmer
## Zweck.........: Alle Homematic Komponenten im Gästezimmer
## Standort......: Gästezimmer
## Typ...........: verschiedene
## Installation..: 15.09.2011
## Besonderheiten: 
##         
#########################################################################
#########################################################################
## Aktor für die Rollladen
#########################################################################
define GZ_Rollladen CUL_HM xxxxx
attr GZ_Rollladen devInfo 010100
attr GZ_Rollladen firmware 1.5
attr GZ_Rollladen hmClass receiver
attr GZ_Rollladen model HM-LC-BL1-FM
attr GZ_Rollladen room Gästezimmer
attr GZ_Rollladen serialNr xxxxxxxxxx
attr GZ_Rollladen subType blindActuator
attr GZ_Rollladen eventMap on:zu off:offen
#########################################################################
## eigenes Log
#########################################################################
define GZ_Rollladen_FileLog FileLog /var/log/fhem/GZ_Rollladen-%Y.log GZ_Rollladen
attr GZ_Rollladen_FileLog logtype text
attr GZ_Rollladen_FileLog room Server
#########################################################################
## Rollladen soll fix um 08:00h jeden Tag hochfahren
#########################################################################
define GZ_Rollladen_hoch at *08:00 set GZ_Rollladen offen
attr GZ_Rollladen_hoch room Gästezimmer
#########################################################################
## Rollladen soll variabel je nach Sonnenuntergang, aber
## nicht vor 17:00h und nicht nach 21:00h jeden Tag runterfahren
#########################################################################
define GZ_Rollladen_runter at *{sunset(0,"17:00","21:00")} set GZ_Rollladen zu
attr GZ_Rollladen_runter room Gästezimmer

Die Jalousie soll immer morgens um 8 Uhr hoch gefahren werden, wobei aufgrund der Verkabelung am Aktor Hochfahren mit dem Status off eingeleitet wird. Das Herunterfahren soll variabel aufgrund der Untergangszeit der Sonne geschehen. Die früheste Zeit zum Herunterfahren ist 17:00 Uhr und spätestens um 21:00 Uhr sollen die Jalousien auf jeden Fall heruntergefahren sein. Dies wird auf alle Jalousien angewendet. Zur besseren Lesbarkeit der Anzeige wurde der Status der Rollade durch Setzen des Attributes EventMap umbenannt. Wenn der Aktor den Status on meldet, dann wird zu angezeigt und alternativ bei off dann offen.

/etc/fhem/Wohnzimmer.cfg

Im Wohnzimmer wird derzeit eine Jalousie und die Beleuchtung gesteuert. Installiert sind: ein Jalousieaktor mit Tasteraufsatz, zwei 4fach-Taster, ein Unterputzdoppelaktor.

#########################################################################
## Wohnzimmer
## Zweck.........: Alle Homematic Komponenten im Wohnzimmer
## Standort......: Wohnzimmer
## Typ...........: verschiedene
## Installation..: 15.09.2011
## Besonderheiten: ACHTUNG, on und off bei der Rollladensteuerung
##         ist im Wohnzimmer vertauscht on=rauf off=runter
#########################################################################
#########################################################################
## Aktor für die Rollladen
#########################################################################
define WZ_Rollladen CUL_HM xxxxxx
attr WZ_Rollladen devInfo 010100
attr WZ_Rollladen firmware 1.6
attr WZ_Rollladen hmClass receiver
attr WZ_Rollladen model HM-LC-BL1-PB-FM
attr WZ_Rollladen room Wohnzimmer
attr WZ_Rollladen serialNr xxxxxxxxxx
attr WZ_Rollladen subType blindActuator
attr WZ_Rollladen eventMap on:offen off:zu
#########################################################################
## eigenes Log
#########################################################################
define WZ_Rollladen_FileLog FileLog /var/log/fhem/WZ_Rollladen-%Y.log WZ_Rollladen
attr WZ_Rollladen_FileLog logtype text
attr WZ_Rollladen_FileLog room Server
#########################################################################
## Rollladen soll fix um 08:00h jeden Tag hochfahren
#########################################################################
define WZ_Rollladen_hoch at *08:00 set WZ_Rollladen offen
attr WZ_Rollladen_hoch room Wohnzimmer
#########################################################################
## Rollladen soll variabel je nach Sonnenuntergang, aber
## nicht vor 17:00h und nicht nach 21:00h jeden Tag runterfahren
#########################################################################
define WZ_Rollladen_runter at *{sunset(0,"17:00","21:00")} set WZ_Rollladen zu
attr WZ_Rollladen_runter room Wohnzimmer
#########################################################################
## Aktor für die Lampen auf der Schrankseite des Wohnzimmers
##  dies ist ein gemeinsamer Aktor mit WZ_Lampe_Couch
#########################################################################
define WZ_Lampe_Schrank CUL_HM xxxxxx
attr WZ_Lampe_Schrank devInfo 020100
attr WZ_Lampe_Schrank firmware 1.9
attr WZ_Lampe_Schrank hmClass receiver
attr WZ_Lampe_Schrank model HM-LC-SW2-FM
attr WZ_Lampe_Schrank room Wohnzimmer
attr WZ_Lampe_Schrank serialNr xxxxxxxxxx
attr WZ_Lampe_Schrank subType switch
define FileLog_WZ_Lampe_Schrank FileLog /var/log/fhem/WZ_Lampe_Schrank-%Y.log WZ_Lampe_Schrank
attr FileLog_WZ_Lampe_Schrank logtype text
attr FileLog_WZ_Lampe_Schrank room Server
#########################################################################
## Aktor für die Lampen auf der Couchseite des Wohnzimmers
##  dies ist ein gemeinsamer Aktor mit WZ_Lampe_Schrank
#########################################################################
define WZ_Lampe_Couch CUL_HM xxxxxx
attr WZ_Lampe_Couch devInfo 020100
attr WZ_Lampe_Couch firmware 1.9
attr WZ_Lampe_Couch hmClass receiver
attr WZ_Lampe_Couch model HM-LC-SW2-FM
attr WZ_Lampe_Couch room Wohnzimmer
attr WZ_Lampe_Couch serialNr xxxxxxxxxxx
attr WZ_Lampe_Couch subType switch
define FileLog_WZ_Lampe_Couch FileLog /var/log/fhem/WZ_Lampe_Couch-%Y.log WZ_Lampe_Couch
attr FileLog_WZ_Lampe_Couch logtype text
attr FileLog_WZ_Lampe_Couch room Server
#########################################################################
## Doppeltaster im Wohnzimmer beim Flur
## Dieser Taster schaltet die Lampen im Wohnzimmer bei dem Schrank
## und bei der Couch
#########################################################################
define WZ_Taster CUL_HM xxxxxx
attr WZ_Taster devInfo 040000
attr WZ_Taster firmware 1.2
attr WZ_Taster hmClass sender
attr WZ_Taster model HM-PB-4-WM
attr WZ_Taster room Wohnzimmer
attr WZ_Taster serialNr xxxxxxxxxxx
attr WZ_Taster subType remote
define FileLog_WZ_Taster FileLog /var/log/fhem/WZ_Taster-%Y.log WZ_Taster
attr FileLog_WZ_Taster logtype text
attr FileLog_WZ_Taster room Server
define WZ_Taster_On_Links notify WZ_Taster:Btn1.on.* set WZ_Lampe_Schrank toggle
attr WZ_Taster_On_Links room Wohnzimmer
define WZ_Taster_Off_Links notify WZ_Taster:Btn1.off.* set WZ_Lampe_Schrank toggle
attr WZ_Taster_Off_Links room Wohnzimmer
define WZ_Taster_On_Rechts notify WZ_Taster:Btn2.on.* set WZ_Lampe_Couch toggle
attr WZ_Taster_On_Rechts room Wohnzimmer
define WZ_Taster_Off_Rechts notify WZ_Taster:Btn2.off.* set WZ_Lampe_Couch toggle
attr WZ_Taster_Off_Rechts room Wohnzimmer

Die Jalousie soll immer morgens um acht Uhr hochgefahren werden, wobei aufgrund der Verkabelung am Aktor Hochfahren mit dem Status on eingeleitet wird. Dies ist anders als im Gästezimmer oder Flur! Das Herunterfahren soll variabel aufgrund der Untergangszeit der Sonne geschehen.

Die früheste Zeit zum Herunterfahren ist 17:00 Uhr und spätestens um 21:00 Uhr sollen die Jalousien auf jeden Fall heruntergefahren sein. Die Taster schalten egal bei welchem Tastendruck das Licht an oder aus.

/etc/fhem/Flur.cfg

Im Flur werden derzeit eine Jalousie und die Beleuchtung gesteuert. Installiert sind ein Unterputzjalousieaktor, ein 4fach Taster, zwei 2fach Taster, ein Unterputzdoppelaktor. Dadurch wurde eine Wechselschaltung simuliert.

#########################################################################
## Flur
## Zweck.........: Alle Homematic Komponenten im Flur
## Standort......: Flur
## Typ...........: verschiedene
## Installation..: 15.09.2011
## Besonderheiten: 
##         
#########################################################################
#########################################################################
## Aktor für die Rollladen
#########################################################################
define FL_Rollladen CUL_HM xxxxxx
attr FL_Rollladen devInfo 010100
attr FL_Rollladen firmware 1.5
attr FL_Rollladen hmClass receiver
attr FL_Rollladen model HM-LC-BL1-FM
attr FL_Rollladen room Flur
attr FL_Rollladen serialNr xxxxxxxxxx
attr FL_Rollladen subType blindActuator
attr FL_Rollladen eventMap on:zu off:offen
#########################################################################
## eigenes Log
#########################################################################
define FL_Rollladen_FileLog FileLog /var/log/fhem/FL_Rollladen-%Y.log FL_Rollladen
attr FL_Rollladen_FileLog logtype text
attr FL_Rollladen_FileLog room Server
#########################################################################
## Rollladen soll fix um 08:00h jeden Tag hochfahren
#########################################################################
define FL_Rollladen_hoch at *08:00 set FL_Rollladen offen
attr FL_Rollladen_hoch room Flur
#########################################################################
## Rollladen soll variabel je nach Sonnenuntergang, aber
## nicht vor 17:00h und nicht nach 21:00h jeden Tag runterfahren
#########################################################################
define FL_Rollladen_runter at *{sunset(0,"17:00","21:00")} set FL_Rollladen zu
attr FL_Rollladen_runter room Flur
#########################################################################
## Aktor für die Lampen im FLur bei der Garderobe
##  Dies ist ein gemeinsamer Aktor mit FL_Lampe_Treppe
#########################################################################
define FL_Lampe_Garderobe CUL_HM xxxxxx
attr FL_Lampe_Garderobe devInfo 020100
attr FL_Lampe_Garderobe firmware 1.9
attr FL_Lampe_Garderobe hmClass receiver
attr FL_Lampe_Garderobe model HM-LC-SW2-FM
attr FL_Lampe_Garderobe room Flur
attr FL_Lampe_Garderobe serialNr xxxxxxxxxx
attr FL_Lampe_Garderobe subType switch
define FileLog_FL_Lampe_Garderobe FileLog /var/log/fhem/FL_Lampe_Garderobe-%Y.log FL_Lampe_Garderobe
attr FileLog_FL_Lampe_Garderobe logtype text
attr FileLog_FL_Lampe_Garderobe room Server
#########################################################################
## Aktor für die Lampen im FLur bei der kleinen Treppe
##  Dies ist ein gemeinsamer Aktor mit FL_Lampe_Garderobe
#########################################################################
define FL_Lampe_Treppe CUL_HM xxxxxx
attr FL_Lampe_Treppe devInfo 020100
attr FL_Lampe_Treppe firmware 1.9
attr FL_Lampe_Treppe hmClass receiver
attr FL_Lampe_Treppe model HM-LC-SW2-FM
attr FL_Lampe_Treppe room Flur
attr FL_Lampe_Treppe serialNr xxxxxxxxxx
attr FL_Lampe_Treppe subType switch
define FileLog_FL_Lampe_Treppe FileLog /var/log/fhem/FL_Lampe_Treppe-%Y.log FL_Lampe_Treppe
attr FileLog_FL_Lampe_Treppe logtype text
attr FileLog_FL_Lampe_Treppe room Server
#########################################################################
## Taster im Flur beim Eingang Badezimmer
## Dieser Taster schaltet die Lampen im Flur bei der kleinen Treppe
## arbeitet im Wechsel mit FL_Taster
#########################################################################
define FL_Taster_Bad CUL_HM xxxxxx
attr FL_Taster_Bad devInfo 020000
attr FL_Taster_Bad firmware 1.2
attr FL_Taster_Bad hmClass sender
attr FL_Taster_Bad model HM-PB-2-WM
attr FL_Taster_Bad room Flur
attr FL_Taster_Bad serialNr xxxxxxxxxx
attr FL_Taster_Bad subType remote
define FileLog_FL_Taster_Bad FileLog /var/log/fhem/FL_Taster_Bad-%Y.log FL_Taster_Bad
attr FileLog_FL_Taster_Bad logtype text
attr FileLog_FL_Taster_Bad room Server
define FL_Taster_Bad_On notify FL_Taster_Bad:Btn1.on.* set FL_Lampe_Treppe toggle
attr FL_Taster_Bad_On room Flur
define FL_Taster_Bad_Off notify FL_Taster_Bad:Btn1.off.* set FL_Lampe_Treppe toggle
attr FL_Taster_Bad_Off room Flur
#########################################################################
## Taster im Flur beim Wohnungseingang
##  Dieser Taster schaltet die Lampen im Flur bei der Garderobe
##  arbeitet im Wechsel mit FL_Taster
#########################################################################
define FL_Taster_Eingang CUL_HM xxxxxx
attr FL_Taster_Eingang devInfo 020000
attr FL_Taster_Eingang firmware 1.2
attr FL_Taster_Eingang hmClass sender
attr FL_Taster_Eingang model HM-PB-2-WM
attr FL_Taster_Eingang room Flur
attr FL_Taster_Eingang serialNr xxxxxxxxxx
attr FL_Taster_Eingang subType remote
define FileLog_FL_Taster_Eingang FileLog /var/log/fhem/FL_Taster_Eingang-%Y.log FL_Taster_Eingang
attr FileLog_FL_Taster_Eingang logtype text
attr FileLog_FL_Taster_Eingang room Server
define FL_Taster_Eingang_On notify FL_Taster_Eingang:Btn1.on.* set FL_Lampe_Garderobe toggle
attr FL_Taster_Eingang_On room Flur
define FL_Taster_Eingang_Off notify FL_Taster_Eingang:Btn1.off.* set FL_Lampe_Garderobe toggle
attr FL_Taster_Eingang_Off room Flur
#########################################################################
## Doppeltaster im Flur beim Wohnzimmer
## Dieser Taster schaltet die Lampen im Flur bei der Garderobe und
## im Flur bei der kleinen Treppe
##  Diese Taster arbeiten als Wechselschaltung 
#########################################################################
define FL_Taster CUL_HM xxxxxx
attr FL_Taster devInfo 040000
attr FL_Taster firmware 1.2
attr FL_Taster hmClass sender
attr FL_Taster model HM-PB-4-WM
attr FL_Taster room Flur
attr FL_Taster serialNr xxxxxxxxxx
attr FL_Taster subType remote
define FileLog_FL_Taster FileLog /var/log/fhem/FL_Taster-%Y.log FL_Taster
attr FileLog_FL_Taster logtype text
attr FileLog_FL_Taster room Server
define FL_Taster_On_Links notify FL_Taster:Btn1.on.* set FL_Lampe_Treppe toggle
attr FL_Taster_On_Links room Flur
define FL_Taster_Off_Links notify FL_Taster:Btn1.off.* set FL_Lampe_Treppe toggle
attr FL_Taster_Off_Links room Flur
define FL_Taster_On_Rechts notify FL_Taster:Btn2.on.* set FL_Lampe_Garderobe toggle
attr FL_Taster_On_Rechts room Flur
define FL_Taster_Off_Rechts notify FL_Taster:Btn2.off.* set FL_Lampe_Garderobe toggle
attr FL_Taster_Off_Rechts room Flur

Die Jalousie soll immer morgens um 8 Uhr hoch gefahren werden, wobei aufgrund der Verkabelung am Aktor Hochfahren mit dem Status off eingeleitet wird. Das Herunterfahren soll variabel aufgrund der Untergangszeit der Sonne geschehen.

Die früheste Zeit zum Herunterfahren ist 17:00 Uhr und spätestens um 21:00 Uhr sollen die Jalousien auf jeden Fall heruntergefahren sein. Mit den Tastern werden 2 Wechselschaltungen simuliert, wobei derzeit keine besonderen Schaltvorgänge ermöglicht werden.