zurück zur Startseite

zurück zur Übersicht der Heimautomatisierung

8. Der Anfang (Stand 05.12.2018)

Mit der Fritzbox und 2 FS20-Komponenten fing alles an. Ich wollte einfach die Beleuchtung und den Springbrunnen auf meiner Terrasse schalten. Nach einem Gespräch mit 2 Kollegen, die bereits Hausautomatisierung betrieben, dachte ich: das kannst du auch.

Nur wollte ich nicht gleich ganz tief einsteigen und auf der Suche nach einem preiswerten Einstieg bin ich über FHEM gestolpert. Also habe ich einen 4-fach Schalter in Schutzart IP65 und eine 4-Kanal-Fernbedienung gekauft. Damit habe ich auch die ersten Schritte unternommen, ich musste an Hardware nur noch einen Sender/Empfänger für FS20 kaufen und an die Fritzbox anschließen - und natürlich die Software installieren.

Da aber das FS20-System nur Befehle vom Sender an den Empfänger gibt, weiß das System natürlich nicht, ob der Befehl auch wirklich ausgeführt wird. Außerdem war mir das Editieren im Betriebssystem der Fritzbox nicht so ganz geheuer, benötigt doch meine geliebte Ursula Telefon und Internetzugang vor allem dienstlich.

Somit bin ich auf den Raspberry umgestiegen und habe den Sender/Empfänger (das Teil heißt CuL und gibt es bei einem Anbieter namens busware) einfach an die USB-Schnittstelle angeschlossen. Und schon konnte ich ein wenig mit dem Automatisieren herumspielen.

Mit der Zuverlässigkeit des o.g. Schalters von FS20 war ich aber nie zufrieden und ich habe ihn inzwischen ersetzt. Die Fernbedienung verrichtet aber unverändert zuverlässig ihren Dienst.

Das Schöne an FHEM ist, dass man bei diesem offenen System auch Komponenten verschiedener Hersteller mit verschiedenen Schnittstellen gleichzeitig betreiben kann. Deshalb habe ich an den Raspberry für weitere Anwendungen das HomeMatic-System angeschlossen. Später sind dann noch weitere Komponenten hinzu gekommen. Auch lassen sich viele Geräte, die man so im Haushalt findet einbeziehen – Fernsehgeräte und AV-Receiver sind typische Vertreter. Entweder hat schon jemand aus der FHEM-Gemeinschaft vorgearbeitet oder man packt es selbst an und stellt es der Gemeinschaft zur Verfügung.

Bevor man nun richtig loslegt, sollte man einen groben Plan haben. Im Internet findet man jede Menge Informationen dazu, die einem hilfreich sein können. Ein wenig Spielen vorab ist ganz nett, aber wenn die Automatisierung umfangreicher wird, kann es ohne klares Konzept schnell unübersichtlich werden und dann hat man ggf. mehr Frust als Freude. Und nachträglich alles neu strukturieren kann ganz schön viel Arbeit machen.

Es ist eigentlich logisch, dass FHEM "Räume" kennt, schließlich geht es um die Automatisierung des Hauses. Jeder Sensor und jeder Aktor kann mit einem Attribut "room" versehen werden, so dass schon mal eine Grundstruktur vorhanden ist. Eine gute Idee ist den Sensoren und Aktoren auch sprechende Namen zu geben und diesen mit einem Prefix zu versehen. Ich habe folgende Räume:

br

Büro von Ursula

ez

Eisenbahnzimmer, "mein" Spielzimmer für Modellbahn und Programmieren von FHEM

fz

Fahrradzimmer, genau genommen ein kleines Gästezimmer

ga

Garage

gb

Gästebad

or

Orientzimmer, das ist unser Schlafzimmer

pb

privates Badezimmer

pz

Pilgerzimmer, auch ein Gästezimmer

th

Treppenhaus

tk

Technikraum

tr

Terrasse und Außenbereich, alles um das Haus herum

wk

Wohnküche

Die Tatsache, dass es diese Räume gibt, heißt nicht automatisch, dass da auch jede Menge automatisiert wird. Wir haben z.B. überall elektrische Rollläden, aber ich sehe keinen Grund diese alle zentral zu steuern.

Neben den Sensoren und Aktoren von HomeMatic, z-wave, etc. kommen ja noch diverse andere Geräte wie Fernsehgerät, Stereoanlage, usw. hinzu, die sich alle auch in FHEM wiederfinden. Und dann gibt es natürlich die Funktionen, die ja erst die Automatisierung ausmachen. In einigen Fällen kann man diese auch eindeutig einem Raum zuordnen.

Es gibt aber auch Dinge, die mit Räumen gar nichts zu tun haben. FHEM kennt den Raum "Everything", wo man wirklich alles findet, was definiert wurde. Gut, dass es das gibt, aber auch wenn dort alles nach Gerätetypen gruppiert ist, so möchte ich doch nicht von Struktur sprechen. Weiterhin gibt es einen Raum "Unsorted", wo sich alles findet, was kein Raum-Attribut hat.

Ich habe mir dehalb noch künstliche Räume geschaffen, um noch mehr Struktur zu bekommen. In Einzelfällen kann man auch überlegen, ob es Sinn macht, ein "device" mehreren Räumen zuzuordnen, FHEM unterstützt das. "device" steht für alles, was man in FHEM definieren kann. Jedes "device" hat einen bestimmten Typ (TYPE) und kann somit neben Sensor und Aktor auch eine bestimmte Funktion sein.

So habe ich z.B. einen Raum "Diagnose", in welchem sich die globale Log-Datei findet. Außerdem sehe ich hier auf einen Blick alle Batteriezustände. In einem weiterem Raum findet sich alles, was mit unserem Aufenthalt im Haus zu tun hat.

Die vollständige Liste dieser Räume und die zugehörigen Prefixe sind:

20

Bedienoberfläche 2.0 (nur für grafische Elemente und Links)

bl

RGB-Steuerung ("buntes Licht")

ff

Rechnerkopplung

hv

Hifi und Video

rc

Fernbedienungen

rm

Emulation der Fernbedienungen

sb

Logitec Media Server & Streamer ("soundblaster")

ui

User Interface - nur noch 1 Device, wird nicht mehr benutzt

uj

Anwesenheit und Wecker

xx

Zentrale

zw

Bedienoberfläche 2.0

-

Geburtstage

-

Müllabfuhr

Für die Uhr, die Sprachausgabe, die Geburtstage und die Müllabfuhr habe ich keine expliziten Prefixe verwendet, da alle Elemente schon mit diesem Begriff beginnen. Einige Elemente der Zentrale haben ebenfalls keinen Prefix, weil diese von FHEM selbst definiert sind und zum Grundsystem gehören.

Da ich kein Software-Architekt bin, habe ich aber auch so manche Schwierigkeit mit Funktionen, die nicht eindeutig einem Raum zuzuordnen sind. Weiterhin ist es mir passiert, dass ich eine Funktion programmiert habe, die eine weitere Funktion triggert, die dann wiederum noch eine weitere Funktion triggert und dann etwas passiert, was ich vielleicht so gar nicht haben wollte. Oder man programmiert eine Funktion so kompliziert, dass man ein paar Monate später gar nicht mehr so richtig weiß, wie das eigentlich genau funktioniert - und dann passiert plötzlich etwas, was ich nicht will und was ich mir nicht erklären kann.

Hier habe ich noch keine wirklich gute Lösung parat. Ich bin aber dabei:

Wie gesagt: ich bin kein ausgebildeter Softwerker. Insofern ist bei mir auch immer etwas "Versuch macht klug" dabei. Aber gerne darf man mir gute Hinweise geben, wie ich es besser machen könnte.

weiter zu: 9. Die Komponenten