Home Automatisierung und Heimkino

Begonnen von igami, 05 Dezember 2013, 19:22:02

Vorheriges Thema - Nächstes Thema

igami

Hier möchte ich euch meine Konfiguration von zu Hause vorstellen, es ist ein lebendes Projekt welches noch im Anfang steckt und daher noch nicht so umfassend ist. Unter anderem soll es eine Dokumentation für mich selbst sein, sodass ich hier alle Schritte vermerke die ich gemacht habe und ggf. auch abändere, weil es anders sinnvoller ist. Den ersten Post werde ich doppelt machen, damit ich einen editieren kann, der andere aber noch als Historie dient.

config.txt

#Übertaktung
arm_freq=1000
core_freq=500
sdram_freq=500
over_voltage=6
force_turbo=0

#stuck on the Rainbow Abhilfe
boot_delay=1


fhem.cfg

#Anwesenheitserkennung
define PresenceMichael PRESENCE lan-ping 192.168.11.40 120 120
attr PresenceMichael event-on-change-reading state

define PresenceSimone PRESENCE lan-ping 192.168.11.49 120 120
attr PresenceSimone event-on-change-reading state

define gPresence structure present PresenceMichael PresenceSimone
attr gPresence event-on-change-reading state

define wPresence watchdog gPresence:absent 00:15:00 gPresence:undefined {SetAbsent};; trigger wPresence .

define nPresence notify gPresence:undefined {SetPresent}

#Raspberry
define RaspberryPi SYSMON 1 1 1 10
attr RaspberryPi event-on-update-reading cpu_temp,cpu_temp_avg,cpu_freq,eth0_diff,loadavg,ram,fs_.*

define FileLog_RaspberryPi FileLog ./log/RaspberryPi-%Y-%m.log RaspberryPi

define wl_RaspberryPi_temp SVG FileLog_RaspberryPi:SM_CPUTemp:CURRENT
attr wl_RaspberryPi_temp label "CPU Temperatur: Min $data{min2}, Max $data{max2}, Last $data{currval2}"

#Wohnzimmer
define htpc XBMC 192.168.11.11 tcp


99_myUtils.pm

######## Anwesenheitserkennung Ereignisse auslösen ############
sub
SetAbsent()
{
   { fhem ("set CUL_HM_HM_CC_RT_DN_22C119_Clima controlManu 17.0")};
   { fhem ("set Presence absent")};
}

sub
SetPresent()
{
   { fhem ("set CUL_HM_HM_CC_RT_DN_22C119_Clima controlManu 21.0")};
   { fhem ("set Presence present")};
}

######## DebianMail  Mail auf dem RPi versenden ############
sub
DebianMail
{
my $rcpt = shift;
my $subject = shift;
my $text = shift;
my $ret = "";
my $sender = "absender\@account.de";
my $konto = "kontoname\@account.de";
my $passwrd = "passwrd";
my $provider = "smtp.provider.de";
Log 1, "sendEmail RCP: $rcpt";
Log 1, "sendEmail Subject: $subject";
Log 1, "sendEmail Text: $text";

$ret .= qx(sendEmail -f '$sender' -t '$rcpt' -u '$subject' -m '$text' -s '$provider' -xu '$konto' -xp '$passwrd' -o tls=no);
$ret =~ s,[\r\n]*,,g;    # remove CR from return-string
Log 1, "sendEmail returned: $ret";
}


geplante Ziele für die einzelnen Räume:

Waschmaschinenkeller:
- Ista Wasserzähler
- Energiemesszwischenstecker Waschmaschine

Keller:
- eventuell Licht schalten
- Stromzähler ablesen

Treppenhaus:
- Haustürsummer
- Bewegungsmelder vor dem Haus
- Licht
- Bewegungsmelder vor der Wohnung

Wohnungsflur:
- Wohnungstürschloss
- Bewegungsmelder für Licht
- Licht
- Klingel
- Rauchmelder

Badezimmer:
- Licht
- Luftfeuchtigkeits & Temperatursensor
- Heizkörperthermostat
- Fensterkontakt
- Ista Wasserzähler
- Badezimmerventilator

Küche:
- Heizkörperthermostat
- Fensterkontakt
- Rauchmelder
- Licht
- Energiemesszwischenstecker Kühlschrank
- Energiemesszwischenstecker Mikrowelle
- Herd ausschaltbar machen

Schlafzimmer:
- Licht
- Luftfeuchtigkeits & Temperatursensor
- Heizkörperthermostat
- CO2 Messgerät
- Fensterantrieb

Arbeitszimmer:
- Licht
- Deckenventilator
- PC Steckerleiste schaltbar machen
- Espressomaschine
- Heizkörperthermostat

Wohnzimmer:
- Licht
- Luftfeuchtigkeits & Temperatursensor
- Heizkörperthermostat
- Fensterkontakt
- Heimkino (automatische Lichtsteuerung)
- HMLAN

Balkon:
- Licht
- Wetterstation
- Grilltemperatur

Dies sind die Punkte die mir im Moment einfallen. Bei Fragen nicht schüchtern sein.

erworbene Hardware:
1x Raspberry Pi Modell B
1x CUL CC1101-USB-Lite 868MHz + feste lambda/4 Mikroantenne
1x Intertechno Funk Schalter Modul Ein/ Aus ITL-230
6x Intertechno Funksteckdose

Im nächsten Schritt muss ich nun noch weitere Hardware anschaffen. In unserer Firma beschäftigen wir uns momentan auch mit dem Thema Energie sparen und setzen dort, ergänzend zu unserem KNX/EIB, HomeMatic ein. Das System gefällt mir gut, deswegen werde ich es privat auch verwenden.

Die nächsten Komponenten werden die fürs Bad sein und alle von Homematik
1x Unterputzschalter 1-fach
1x Feuchtigkeits- & Temperatursensor
1x Heizkörperthermostat
1x Fensterkontakt

Umsetzung:
Anwesenheit abfragen über Handy
- wenn ich nicht zu hause bin, soll ...
... das Licht ausgeschaltet werden
... eine mail geschickt werden sofern das Fenster noch auf ist
... die Heizung auf Manuell 17°C gestellt werden

- wenn ich zu hause bin soll die Heizung in Automatikmodus gehen

Handy Wecker abfragen
- Bad entsprechend der Weckzeit aufheizen

Feuchtigkeitssensor
- eine Mail schreiben, dass das Fenster wieder geschlossen werden kann


Ista Wasserzähler und Ventilator bleiben vorerst hinten an stehen. Theoretische Umsetzung soll nächste Woche erfolgen, die praktische erst in der Woche darauf. Werde dann auch einen Grundriss zeichnen.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

Dave9119

Was ist daraus geworden?
Mich würde primär die Weckersteuerung mit Smartphone interessieren.

igami

Hi Dave,

sorry dass ich solange nix hab hören lassen, wurde privat ausgebremst und habe erst letzte Woche geschafft die erste Hardware zu kaufen.

Zum Steuern mit dem Wecker nutze ich die kostenpflichtige App Tasker https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm. Damit kann man das Gerät automatisieren, unter anderem auch reagieren wenn der Wecker klingelt und dann einen http Befehl absetzten, auch http get ist möglich um Werte abzufragen.

Ich hoffe, dass dir das weiterhilft und das ich demnächst wieder mehr Zeit finde.

Gruß

Michael
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED

igami

So, nun habe ich endlich Zeit gefunden mal ein bisschen was zu machen.

Im kurzen habe ich folgende Schritte gemacht:

Raspberry Pi mit Raspbmc aufgesetzt, übertaktet auf 1GHz, FHEM installiert.

Anwesenheitserkennung mache ich mittels PRESENCE
define PresenceMichael PRESENCE lan-ping 192.168.11.40 120 120
attr PresenceMichael event-on-change-reading state
define PresenceSimone PRESENCE lan-ping 192.168.11.49 120 120
attr PresenceSimone event-on-change-reading state

define gPresence structure present PresenceMichael PresenceSimone
attr gPresence event-on-change-reading state

define wPresence watchdog gPresence:absent 00:15:00 gPresence:undefined {SetAbsent};; trigger wPresence
define nPresence notify gPresence:undefined {SetPresent}

Vielen Dank an diesen Thread http://forum.fhem.de/index.php/topic,19607.0.html
Der watchdog ruft 15 Minuten nach verlassen der Wohnung die Funktion SetAbsent auf und der notify ruft ohne verzögerung die Funktion SetPresent auf.

In den beiden Funktionen steht bisher noch nicht viel, lassen sich ja aber Problemlos erweitern.
######## Anwesenheitserkennung Ereignisse auslösen ############
sub
SetAbsent()
{
   { fhem ("set CUL_HM_HM_CC_RT_DN_22C119_Clima controlManu 17.0")};
   { fhem ("set Presence absent")};
}

sub
SetPresent()
{
   { fhem ("set CUL_HM_HM_CC_RT_DN_22C119_Clima controlManu 21.0")};
   { fhem ("set Presence present")};
}

Es fehlt auch noch die Benachrichtigung via email, dass das Fenster noch offen ist, wenn man die Wohnung verlassen hat. Die soll aber nicht erst eine viertel Stunde später geschickt werden, da ist man dann ja schon wer weiß wo. Vielleicht entfällt das auch ganz und ich richte nur die Mail ein, die einen auffordert das Fenster wieder zu schließen.

Die Devices im Bad habe ich vor dem anmelden in FHEM gepaired, da es einfacher ist und weniger Probleme bereitet, habe bei uns auf der Arbeit festgestellt, dass es mittels Peerchan ab und an zu Problemen kommt.

Den Wecker habe ich noch nicht umgesetzt und werde ich vermutlich auch nicht mehr. Neuer Auslöser für den schlafend Zustand wird das Laden des Handy. Das wird dann mit Tasker in einem http befehl an FHEM gesendet. Werde mich aber auch noch mal hier umschauen wie andere das gelöst haben. Für Vorschläge bin ich auch gerne offen.

Habe aber auch noch etwas eingerichtet was noch nicht auf meinem Plan stand.
Das einrichten des Sysmon http://forum.fhem.de/index.php/topic,17201.0.html
define RaspberryPi SYSMON 1 1 1 10
attr RaspberryPi event-on-update-reading cpu_temp,cpu_temp_avg,cpu_freq,eth0_diff,loadavg,ram,fs_.*
define FileLog_RaspberryPi FileLog ./log/RaspberryPi-%Y-%m.log RaspberryPi
define wl_RaspberryPi_temp SVG FileLog_RaspberryPi:SM_CPUTemp:CURRENT
attr wl_RaspberryPi_temp label "CPU Temperatur: Min $data{min2}, Max $data{max2}, Last $data{currval2}"


Und die Verbindung zu XBMC
define htpc XBMC 192.168.11.11 tcp
Hier werde ich wohl auf weiter machen und mich an einer Geräte- und Lichtsteuerung nach Art und Status der Medien versuchen. Momentan habe ich noch eine Harmony Remote und auch schon Licht eingebunden, wirklich zufrieden bin ich jedoch nicht, da mir meine PS3 keine Zustände zurück gibt und ich deswegen die Befehle die ich gesendet habe mitzählen muss um das Licht passen ein und aus zu schalten. Ein Nachteil am Raspberry ist natürlich, dass er keine Blurays wiedergeben kann. Vorerst streame ich die von meinen Laptop via LAN was auch funktioniert.
Pi3 mit fhem.cfg + DbLog/logProxy
Komm vorbei zum FHEM Treffen im Kreis Gütersloh! Das nächste Mal im April 2020.

MAINTAINER: archetype, LuftdatenInfo, monitoring, msgDialog, Nmap, powerMap
ToDo: AVScene, FluxLED