Schlagwort-Archive: smart living

openhab2 und homematic

Als Gateway für Homematic wurde das Modul https://www.elv.de/homematic-funkmodul-fuer-raspberry-pi-bausatz.html zusammengelötet und Raspberrymatic auf einem Raspberry 2 installiert.

Nachdem das System mit aufgesetzem Modul hochgefahren wurde konnte über die URL http://homematic-raspi auf die Webgui zugegriffen werden. Über die Oberfläche können diverse Einstellungen vorgenommen und neue Aktoren angelernt werden.

Damit die Geräte im Openhab genutzt werden können, muss in der Paperui unter das Homematic Binding hinzugefügt werden. Im Anschuss unter Configuration => Thing das Homematic Lan Gateway hinzufügen. Wenn openhab eine Verbindung zum Lan-gateway herstellen konnte, wird das Gateway mit dem Status grün(online) dargestellt und bereits eingebundene Homematic Sensoren werden in der Inbox aufgeführt.

Der Sensor kann nun über Add Thing eingebunden werden und über das angelegte Thing können einzelne Items angelegt werden.

Ich ziehe jedoch das bearbeiten und Verwalten der Items in einer Datei vor.

Die Items Datei sieht bei mir wie folgt aus:
Group kontakte
Contact Wintergarten_Tuer "Wintergarten Tür[MAP(kontakte.map):%s]" <contact> (kontakte){channel="homematic:HM-Sec-SCo:63f2dc68:NEQ0941168:1#STATE"}

Damit der Zustand des Kontakts in der Sitemap auf deutsch dargestellt wird, wurde die Datei kontakte.map angelegt.
CLOSED=geschlossen
OPEN=offen
TILTED=gekippt
undefined=unbekannt
NULL=keine Daten
-=keine Daten

Mit einer einfachen Regel kann man per Mail darüber informiert werden, wenn sich der Status ändert.

rule kontaktestatus
when
Item Wintergarten_Tuer changed
then

sendMail("emailadresse", "betreff", "Wintergarten Tür " + Wintergarten_Tuer.state)
end

Foscam Kamera in openhab integrieren

Wie in dem vorherigem Artikel geschrieben, kann die Foscam Kamera bei Bewegungserkennung eine E-Mail versenden. Die Bewegungserkennung lässt sich mit relativ wenig Aufwand in openhab integrieren.
Die Kameras bieten die Möglichkeit unter anderem den Status der Bewegungserkennung per http cgi abzufragen. Damit die URL über openhab abgefragt werden kann, wird das http binding benötigt.
Der Benutzer für die Abfrage der Daten muss auf der Kamera die Rechte eines Administrators besitzen.

Als Item wird folgendes angelegt:
String Foscam_Cam1 "Bewegung Camera [MAP(foscam.map):%s]" <camera> (camera) { http="<[http://ipadresse:88/cgi-bin/CGIProxy.fcgi?cmd=getDevState&usr=benutzer&pwd=kennwort:4000:REGEX(.*?<motionDetectAlarm>(.*?)</motionDetectAlarm>.*)]" }

Damit als Status bewegung und nicht die Zahl 2 ausgegeben wird, kann eine map(configurations/transform/foscam.map) angelegt werden.

0=deaktiviert
1=ruhe
2=bewegung
undefined=keine daten
-=keine daten

Der Status der Bewegungserkennung wird bereits auf der Sitemap ausgegeben, mit entsprechender Regel kann eine E-Mail inkl. Bild versendet werden. Voraussetzung für den Mailversand ist ein hinterlegter smtp Server.
rule foscambewegung
when
Item Foscam_Cam1 received update
then
if (Foscam_Cam1.state == "2"){
sendMail("emailadresse", "Betreff", "Text", "http://ipadresse:88/cgi-bin/CGIProxy.fcgi?cmd=snapPicture2&usr=benutzer&pwd=kennwort")}
end

Die Regel lässt sich nach belieben erweitern, zum Beispiel kann eine E-Mail nur in einem bestimmten Zeitraum versendet werden. Nutzt man bereits die Anwesenheitserkennung, kann eine E-Mail versendet werden wenn eine Bewegung erkannt wurde und niemand zu Hause ist.

[openhab] mail bei Bewegung

Neben dem Licht einschalten bei Bewegungserkennung kann mit entsprechender Regel auch eine E-Mail versendet werden.

Zunächst muss das Modul org.openhab.action.mail-*.jar in dem addons Verzeichnis abgelegt und openhab neu gestartet werden.
Zusätzlich müssen in der openhab.cfg der smtp Server und die entsprechenden Zugangsdaten hinterlegt werden.

Damit die Benachrichtigung deaktiviert werden können, wurde folgender Schalter in einer items Datei angelegt.
Switch BewegungInfoAbwesenheit "Bewegung Info Abwesenheit" (maschine) {OFF,ON}

Die Regel aus dem Artikel zur Bewegungserkennung wurde um folgende Zeilen erweitert:

if(BewegungInfoAbwesenheit.state == ON && Presence.state == OFF){
sendMail("E-Mail Adresse", "Betreff", "Nachricht")
}

[openhab] FS20 Bewegungsmelder

Manchmal ist es nicht nur hilfreich das Licht einzuschalten wenn es dunkel wird und jemand zu Hause ist, sondern wenn es dunkel ist und eine Bewegung erkannt wird.

Da ich bereits FS20 Geräte im Einsatz habe, habe ich mir für die Bewegungserkennung den FS20 Funk-Bewegungsmelder zugelegt. Für das einbinden neuer Geräte hatte ich im Vorfeld den Artikel http://www.itbasic.de/openhab-fs20-fernbedienung-und-switch-status-aktualisierung/ geschrieben.

Registriert der Bewegungsmelder eine Bewegung soll ein Aktor, in diesem Fall eine FS20 Steckdose, geschaltet werden.
In der entsprechenden items Datei wurde nun der Aktor, der Bewegungsmelder und ein weiterer Schalter angelegt

items Datei
Switch LampeOb "Flur Stehlampe" (flur) {fs20="010101"}
Switch Beweg1 "Bewegungssensor 1" (fs) {fs20="000000"}
Switch FlurBewegung1 "Bewegungsmelder auto" (flur) {ON,OFF}

Der Schalter FlurBewegung1 dient dazu das Automatische schalten zu deaktivieren, so das der Aktor dauerhaft geschaltet werden kann.

rules Datei
rule Bewegung1
when
Item Beweg1 received update
then
if(FlurBewegung1.state == ON && LampeOb.state == OFF){
sendCommand(LampeOb, ON)
}
end

Wurde die LampeOb eingeschaltet und der Schalter FlurBewegung1 steht auf ON, wird die Lampe nach 360 Sekunden wieder ausgeschaltet.

rule LampeObBewegung
when
Item LampeOb received command ON
then
if(FlurBewegung1.state == ON){
timer = createTimer(now.plusSeconds(360)) [
sendCommand(LampeOb, OFF)
]
}
end