22. November 2017

Sicherheit

Durch das System ergeben sich vielerlei Möglichkeiten, die Sicherheit und den Einbruchschutz im Objekt signifikant zu erhöhen. Hierbei spielen Komponenten wie Kameras, Bewegungs- und Erschütterungssensoren eine Schlüsselrolle.
Sie werden Verständnis dafür haben, dass ich auf Details dieser Absicherungen in meinem Blog nicht eingehen werde.

Zentralheizung

Seit September 2016 haben wir unsere alte Gasheizung von 1998 durch eine effiziente Brennwerttherme ersetzt. Diese Therme unterstützt grundsätzlich eine proprietäre Steuerung über eine vom Hersteller bereitgestellte App und ermöglicht die Fernsteuerung über die Serviceorganisation des Herstellers.
Beides Szenarien, die ich nicht unbedingt brauche, aber technisch war es wohl offensichtlich möglich, eine Netzwerkkopplung herzustellen. Dieser Punkt war für mich wichtig, denn ich wollte natürlich auch die Steuerung der Therme über den Homeserver ermöglichen, bzw. die Heizungssteuerung noch effizienter gestalten, als das im Moment durch die Automatisierung der Stellmotoren schon möglich war.
Ende 2016 habe ich mich intensiver mit dem Projekt beschäftigt. Die Steuerung funktioniert grundsätzlich über ein herstellerspezifisches Optolink-Kabel. Dieses gehörte zum Lieferumfang und stellt via USB die Verbindung zu einem Hostsystem her.
Im Internet wurde ich schnell fündig. Es gab eine recht mächtige Schnittstelle für einen Raspberry PI (https://openv.wikispaces.com/vcontrold). Die Schnittstelle konnte via Kommandozeile spezielle Befehle zur Steuerung oder zur Statusabfrage entgegennehmen. Es fehlte also nur noch die Weiterleitung und Verbindung zum Homeserver, die ich dann wieder via IP-Symcon und PHP realisierte. Die Kommunikation erfolgt über einen TCP/IP Socket, der zwischen Homeserver und Raspberry eine fest definierte Kommunikationsstrecke darstellt. Über die bidirektionale Socket-Kommunikation können nun Befehle an den Raspi (und damit an die Zentralheizung) gesendet, aber auch Rückmeldungen und Status wieder an den Homeserver zurück gesendet werden.
Damit war es jetzt möglich, die Steuerung in das Web Frontend des Homeservers einzubinden. Darüber hinaus, werden jetzt alle 2 Minuten Statuswerte wie Kesseltemperatur, Vorlauftemperatur, Brennerleistung, Brennerstarte etc. ausgelesen und zur Anzeige gebracht:



Eine einfache Anpassung von Einstellungen via IPad und Webfrontend ist somit möglich.
Ebenso interessant, ist die Einbindung des Systems in das Energiemanagement des Hauses. 


So nutze ich auch für die Steuerung der Zentralheizung wieder die Anwesenheitsstatus. Es werden im Status ABWESENHEIT nun nicht nur die Stellantriebe der Heizkörper runtergefahren, auch die Zentralheizung schaltet während dieser Zeit in den ECO-Betrieb, was einer leichten Absenkung der Soll-Temperatur gleichkommt.

Bei ANWESENHEIT schaltet die Zentralheizung wieder ins Normalprogramm
Wird im oberen Stockwerk (Radiatoren) eine gewisse Temperatur in den Räumen, trotz Regelung der Stellmotoren, erreicht, schaltet das System ebenfalls in den ECO-Modus.

Ist es draußen extrem kalt, beginnt der Heiz-Modus eine Stunde früher, um, gerade für die Räume mit Fußbodenheizung, eine angenehme Temperatur zu erreichen.

Durch den Homeserver werden die Zeitprogramme des Systems bei Feiertagen angepasst. So wird am Abend vorher ermittelt, ob der nächste Tag ein Feiertag ist. Wenn ja, wird das Programm von Wochentag- auf Wochenendprogramm umgestellt.

Durch die Möglichkeit, das System aus der Ferne zu steuern, ist es nun auch möglich, vom Urlaubsort aus die Heizung wieder in den Normalzustand zu fahren, damit es angenehm warm ist, wenn man nach Hause kommt.
    

3. Oktober 2013

Telefon

Auch das Telefon soll in die Hausautomatisierung integriert werden. Zum einen möchte ich zentrale Funktionen über das Web-Frontend des Homeservers, also über Ipad, PC oder Smartphone, steuern. Zum anderen soll der Homeserver automatisch Einstellungen am Anrufbeantworter vornehmen und bei eingehenden Rufen mehr als nur "klingeln". Doch dazu später.

Die hier eingesetzte Komponente zur Internetanbindung und zur Telfoniesteuerung ist die Fritzbox von AVM, genauer gesagt eine Fritz!Box 7390. Die integrierte Software liefert mittlerweile eine Menge Funktionen, DECT-Telefonie, Anrufumleitung, Telefon- Adressbuch etc. Einen Großteil der möglichen Funktionen benötigt man nur selten. Einige wenige aber häufiger. Diese sind hier in die Hausautomation eingeflossen.



  • Anrufliste: Liste der letzten ein- und ausgehenden Anrufe
  • Rufumleitung zu fest definierten Nummern
  • Anzeigen der Anzahl der Nachrichten auf AB 
  • Verzögerung des AB einstellen 




Über das Web-Frontend lässt sich nun auf Knopfdruck die Rufumleitung zu vordefinierten Zielrufnummern einstellen, ohne dass man dafür die Fritzsoftware aufrufen müsste, was mitunter sehr zeitaufwändig ist - vor allem die Suche nach dem richtigen Menüpunkt. Außerdem können per Knopfdruck - oder besser gesagt "Touch" - Anrufer ohne signalisierter Rufnummer direkt auf den AB geleitet werden. 

Auf der rechten Seiten wird die Anrufliste gezeigt. Links unten lassen sich die Verzögerungszeiten des AB einstellen (ebenfalls in die Box integriert). Man kann die Zeiten für ANWESENHEIT und für ABWESENHEIT getrennt einstellen. D.h. auch die Telefonsteuerung des Homeservers greift auf Parameter der Anwesenheitserkennung zurück. Hintergrund ist, dass der AB bei Abwesenheit schneller den Anruf entgegennehmen soll als bei Anwesenheit. Theoretisch besteht auch die Möglichkeit, je nach Zustand, andere AB-Sprachtexte zu verwenden  (die Fritzbox unterstützt mehrere ABs).

Man sieht anhand der  o.a. Abbildung, dass auch die Telefonie Teil der Hausautomatisierungssoftware geworden ist. Nun sind neben der o.a. Visualisierung auch Verquickungen mit ganz anderen Modulen möglich, z.B. mit den Beleuchtungskomponenten oder der E-Mail-Schnittstelle etc. 

Beispiele: 


  • Bei eingehendem Anruf in Abwesenheit, E-Mail an den Bewohner bzw. Pushmail auf Handy
  • Bei eingehendem Anruf, Dunkelheit, Temperaturen über 18°C und geöffneter Terrassentür, kurzes Blinken der Garten- oder Terrassenbeleuchtung
  • Bei laufendem Fernseher Einblendung der anrufenden Nummer im unteren Bereich des TV 
  • Bei Rufannahme Reduzierung der TV-Lautstärke 

Durch eine integrierte ISDN-Schnittstelle kann der Homeserver theoretisch selbst Anrufe initiieren und zuvor generierte Texte via WAV-Datei dem Angerufenen vorlesen. Dies geschieht hier aber nur bei Einbruchalarmen die von der Alarmanlage ausgelöst werden. 

Technisches : 


Es gibt im Prinzip 3 Arten, wie mit der Fritzbox von außen kommuniziert werden kann : 

  1. Setzen von Parametern in der Fritzbox durch den Homeserver
  2. Lesen von Statusinformationen aus der Fritzbox und Visualisierung im Homeserver
  3. Pushmeldungen über eingehende oder ausgehende Anrufe von der Fritzbox direkt an den Homeserver
Punkt 1 wird mittels PHP Standardbefehlen wie CURL realisiert, Punkt 2 ebenfalls über PHP mittels FILE_GET_CONTENTS

Beispiel:



Für Punkt 3 muss eine andere Art der Kommunikation greifen, denn die Informationen über eingehende Anrufe oder das Abnehmen des Hörers etc. müssen zeitnah, von der Fritzbox an den Homeserver übermittelt werden. Zu diesem Zweck erlaubt die Fritzbox die IP-Kommunikation über einen Socket (Port 1012). In der Software des Homeservers (IPS) lässt sich dieser Socket als "Eingangskanal" konfigurieren. Daran gekoppelt ist eine sog. Registervariable, die die Kommunikationsinhalte aufnimmt und bei Änderung ein Skript anstößt, das weitere Aktionen auslösen kann. Kurz gesagt, bei Anruf wird ein Aktionsskript ausgeführt. Auf dieser Art und Weise wird z.B. eine E-Mail bei eingehenden Anrufen generiert oder Meldungen am TV angezeigt.







Das Garagentor

Ein elektrisches Roll- oder Schwingtor ist eine feine Sache. Doch wie bindet man dies in die Hausautomatisierung ein? Es gibt zig Hersteller und natürlich ganz individuelle Steuerungen und Fernbedienungstypen.

Eines haben diese aber fast alle gemeinsam: Die Möglichkeit einen externen Taster anzuschließen. Dieser schließt einen Niedervolt-Stromkreis für die Zeit der Betätigung, wodurch der Zugmotor in Bewegung gesetzt wird. Diesen Schalter ersetzt man nun einfach durch eine elektronische Komponente, also eine Relaisschaltung. Fertige Module bekommt man für wenig Geld für fast alle Funkbus-Typen. Da in unserem Haus hauptsächlich HOMEMATIC verbaut ist, kommt auch für diese Anwendung ein entsprechendes Modul zum Einsatz (siehe Bild).Das Modul wird mit 12 V Gleichspannung versorgt. Statt des Tasters wird die Klemme des Moduls angeschlossen. Fertig.

Das Modul wird jetzt als "Schalter" im Homematic-System angelernt. Besonderheit ist, dass der Schalter so konfiguriert wird, dass er nach 5 Sekunden wieder abschaltet. Es soll ja nur ein Tastendruck simuliert wird. Dies erreicht man in Homematic durch den Parameter "Verweilen im Zustand AN" (in diesem Fall Einstellung auf 5s).
Im oberen Bereich des Tores ist außerdem ein Schließkontakt (Reedkontakt) installiert, der den Zustand OFFEN oder GESCHLOSSEN an den Homeserver meldet. Innerhalb der Homeserver Software (IPS) kann man nun in Abhängigkeit dieser Zustände z.B. das Licht schalten. 
Wird unser Tor geöffnet, wird z.B. -falls es dunkel ist- die Innenbeleuchtung so lange eingeschaltet, bis der Sensor wieder GESCHLOSSEN meldet. Die Außenbeleuchtung wird für ca. 3 Minuten eingeschaltet, damit der Weg zwischen Garage und Haustür beleuchtet ist, wenn ein Bewohner nach Hause kommt. Sobald das Tor geöffnet wird, läuft auf dem Homeserver ein Timer mit. Ist das Tor zu lange geöffnet, wird es automatisch geschlossen (Tagsüber 30 Min, nachts 5 Min.). 



Auch der Bereich der Garagentorsteuerung lässt sich parametrisieren. Alles natürlich vom hier oft beschriebenen Web Frontend, das auf Tablet, PC oder Smartphone läuft. 


Duch die Einbindung in das System gibt es nun auch vielfältige Möglichkeiten, das Tor zu bedienen: Vom Schlüsselbund-Tracker (siehe hier), vom Webfront oder von einem Schalter im Flur. Dieser sieht aus wie ein Lichtschalter, ist auch in eine Unterputzgruppe integriert, steuert aber einen Homematicsender (Beispiel für die Integration solcher Schalter hier). 

Programmiertechnisches:


Hier ein paar Beispiele, wie das innerhalb der Software aussieht. Ein Skript "wenn Tor öffnet" wird, wie der Name schon sagt, immer dann ausgelöst, wenn die Variable Torstatus den Status TRUE annimmt. 





In diesem Skript werden dann einige Aktionen ausgelöst : 


  • Das Webfront (Software auf Tablet oder PC) wechselt auf die Seite "Garage"
  • Eine Variable mit Datum und Uhrzeit wird gesetzt und in die Datenbank geschrieben
  • Wenn Helligkeit < 2 ist ( Dämmerung oder Nacht ) wird das Licht eingeschaltet
  • Außenbeleuchtung an, wenn sie nicht schon an und der Helligkeitswert <2 ist
  • Torbeleuchtung an wenn Nacht ist ( <1 )



Intelligente Heizungssteuerung

Des bisher größten Energiespareffekt haben wir nach Einführung der "intelligenten Heizungssteuerung" messen können. Der Gasverbrauch ging signifikant zurück.

Die beschriebene Steuerung regelt allerdings nur die Heizungsthermostate der Radiatoren im 1.OG. Die Fußbodenheizung im EG ist noch nicht in die Automatisierung einbezogen.

In jedem Raum mit Radiatoren wurde der klassische manuelle Stellantrieb durch einen Motorantrieb und eine dazu gehörende Steuereinheit ersetzt. Die Steuereinheit misst die aktuelle Raumtemperatur, gleicht diese mit der eingestellten Soll-Temperatur ab und regelt auf dieser Grundlage den Stellmotor. Die Kommunikation zwischen Stellmotor und Raum-Steuereinheit erfolgt über Funk (868 Mhz). Auf das Verlegen von Leitungen kann man also auch hier verzichten, deshalb eignet sich dieses System hervorragend für den nachträglich Einbau.

Viele "intelligente" Stellmotoren haben den Nachteil, dass die Temperatur direkt an dieser Baugruppe selbst gemessen werden. Da sich diese ja zwangsläufig immer in der Nähe des Heizkörpers befindet, sind die gemessenen Werte in der Regel viel zu hoch stimmen nicht mit der eigentlichen Raumtemperatur überein.



Durch Trennung der Steuereinheit vom Stellmotor gibt es diesen Effekt nicht mehr. Durch die
Entkopplung der beiden Geräte ist jetzt eine Messung möglich, die realistische Ergebnisse liefert, bzw. diese in eine Steuerung einfließen lassen kann.

Auch bei der Heizungssteuerung gilt: Keine Abhängigkeit vom Server. Die oben beschriebenen Einheiten funktionieren grundsätzlich erst einmal autark, ohne Einfluss des Homeservers.
Die Temperatur lässt sich problemlos an der Einheit selbst auch manuell nachregulieren.

Die Steuereinheit jeden Raumes arbeitet im Wesentlichen mit 2 Parametern. Der SOLL und der IST-Temperatur. Letztere misst das Gerät selbst und "funkt" diese an den Homeserver.
Die SOLL-Temperatur kann zentral über den Homeserver an die Einheit gesendet werden, oder aber auch manuell nachreguliert werden. Ein weiterer wichtiger Parameter ist der Status des Fensters. Jeder Raum verfügt über einen Fenstersensor, der im Falle einer Öffnung die Steuereinheit dazu veranlasst, den Stellmotor zuzufahren. Wird das Fenster wieder geschlossen, wird die normale SOLL-Tempertaur wieder gesetzt und der Stellmotor entsprechend eingestellt.

Der Server regelt zeitgesteuert die Soll-Temperaturen. Die Komfort-Temperatur startet morgens in der Regel um 6.00 Uhr, endet wieder um 09.00 Uhr, startet wieder um 17.00 Uhr und endet gegen 21.00 Uhr. Am Wochenende sind die Zeiten abweichend. Die Voreinstellungen, welche Soll-Temperaturen in den Räumen gesetzt werden sollen, kann man am Webfront voreinstellen :











Diese Werte werden dann über den Server zu den entsprechenden Zeiten automatisch gesetzt. Die Einstellung "Sommer" führt dazu, dass die Stellmotoren zufahren und generell nicht mehr bewegt werden können.

Über das Webfront (am Ipad, Rechner oder Smartphone) können die Werte auch direkt geändert werden:














Positiver Einfluss auf das Raumklima: 


Seit Einführung dieses Systems ist das Raumklima spürbar besser geworden. Das temporäre Überheizen der Räume durch zu hoch eingestellte Thermostate gehört der Vergangenheit an. 

Das System kann aber noch mehr. Durch einen 1-wire Sensor wird an der Zentralheizung permanent die Vorlauftemperatur des Radiatorensystems gemessen. Die Stellmotoren der Heizung werden erst dann geöffnet, wenn die Vorlauftemperatur einen den Heizkurve entsprechenden Wert erreicht hat. Dadurch wird unnötiges Auf- und Zufahren der Motoren verhindert. 

Da der Server auch auf andere Parameter der Hausautomatisierung zurückgreifen kann, ist jetzt auch eine Regelung in der Heizkörper im Zusammenhang mit der Anwesenheitssteuerung möglich. Das bedeutet, das System regelt die Temperatur automatisch runter, wenn niemand zu Hause ist und umgekehrt.