2000688

Hausautomatisierung mit Raspberry Pi - Folge 3

02.10.2014 | 08:30 Uhr |

Haus- und Heimautomatisierung wird immer populärer – aber es gibt viele Standards und noch mehr Hersteller. Wenn man sich für ein Gesamtsystem entscheidet, ist man meist daran gebunden. Alternativ baut man das Ganze selber, so wie Daniel Böber.

Daniel Böber studiert Medieninformatik, sein Leben dreht sich um Technik, seit er denken kann. Vor allem interessieren ihn Trends und Projekte, die den Alltag erleichtern. Sie noch besser zu machen, ist Herausforderung für ihn. Auf http://siio.de stellt er seine Projekte vor.

In Folge 1 ging es um das Kennenlernen des Minicomputers Raspberry Pi und die grundlegende Inbetriebnahme.

In Folge 2 haben wir erklärt, wie wir das Ganze mit der passenden Hardware bestücken, die wir dann mit der intuitiven Software Pilight bedienen.

In Folge 3 beschäftigen wir uns mit der Heimautomatisierungs-Software Pimatic und wollen die Zentrale dazu bringen, einige Aufgaben selbstständig zu erledigen.

Wichtig ist, dass Sie bereits Pilight aus Folge 2  installiert und eingerichtet haben. Pimatic wird Ihre konfigurierten Steckdosen aus Pilight übernehmen können, so dass wir nicht bei 0 beginnen müssen. Ziel in dieser Folge soll es sein, Ihre Anwesenheit zu überprüfen. Dafür nutzen wir einen Trick, denn was trägt man immer bei sich? Richtig, das Smartphone. Wenn es im Wlan angemeldet ist, können wir davon ausgehen, dass Sie zuhause sind.

Was ist Pimatic?

Pimatic ist eine in node.js geschriebene Heimautomatisierungs-Software von Oliver Schneider. Es handelt sich um ein Open-Source-Projekt, das kürzlich auf Version 0.8 aktualisiert wurde. Pimatic ist also immer noch im Beta-Stadium.

Die Oberfläche von Pimatic im Browser
Vergrößern Die Oberfläche von Pimatic im Browser
© Daniel Böber

Die verwendete Programmiersprache node.js lässt sich sehr einfach durch Module erweitern. In Zukunft wird es also sicher noch mehr Möglichkeiten geben, etwa andere Funkstandards oder innovative Automatismen.

Aber schon jetzt lässt sich mit Pimatic einiges anstellen: Es kann beispielsweise mit einem Arduino kombiniert werden oder das Licht entsprechend der Sonnenauf- und -untergangszeiten schalten oder Push-Nachrichten ans Smartphone senden. Das Potenzial ist also groß und die Leistung schon jetzt sehr ansprechend.

Was andere Hersteller für viel Geld anbieten, bekommt man hier mit etwas Aufwand umsonst.

Die Installation von Pimatic

1.  Als erstes über SSH auf dem Raspberry Pi anmelden

2.  wget http://nodejs.org/dist/v0.10.24/node-v0.10.24-linux-arm-pi.tar.gz -P /tmp
    cd /usr/local
    sudo tar xzvf /tmp/node-v0.10.24-linux-arm-pi.tar.gz --strip=1

Node JS installieren

3.  /usr/bin/env node --version

Es sollte die aktuelle Version von Node angezeigt werden: “v0.10.24”

4.  cd /home

Ins Nutzerverzeichnis wechseln

5.  mkdir pimatic-app

Verzeichnis für Installation erstellen

6.  npm install pimatic --prefix pimatic-app --production

In das Verzeichnis installieren

7.  cd pimatic-app

In den Installationsordner wechseln

8.  cp ./node_modules/pimatic/config_default.json ./config.json

Standard-Konfiguration kopieren

9. Damit wir Pimatic immer über die Konsole starten können und nicht jedesmal in den Installationsordner müssen, machen wir es global:

cd /home/pimatic-app/node_modules/pimatic

In den richtigen Ordner wechseln

10.  sudo npm link

Und damit systemweit zugänglich machen (dauert etwas länger)

11.  Als letztes packen wir die Anwendung noch in den Autostart vom Raspberry Pi. Dazu laden wir als erstes ein Startscript, das es schon fertig gibt:

 cd /home

In den Nutzerordner wechseln

12.  wget

https://raw.github.com/pimatic/pimatic/master/install/pimatic-init-d

Das Script downloaden

13.  sudo cp pimatic-init-d /etc/init.d/pimatic

Das Script  in den Autostart-Ordner schieben

14.  sudo chmod +x /etc/init.d/pimatic
     sudo chown root:root /etc/init.d/pimatic
     sudo update-rc.d pimatic defaults

Das Script bekommt 1. die richtigen Nutzerrechte und wird 2. in die Autostart-Konfiguration geladen.

15.  nano /home/pimatic-app/config.json

Die Konfigurationsdatei öffnen, “username”: “” und “password”: “” ausfüllen für das Login im Webinterface. Speichern mit Strg+X -> Y(es) -> Enter.

Das war es auch schon. Wir können nun über “sudo service pimatic start” testen, ob alles läuft. Im Terminal sollte ein OK erscheinen, und Pimatic wurde gestartet. Nun werden erst einmal viele Module installiert, das dauert. Was gerade passiert, können Sie verfolgen mit

tail -f /home/pimatic-app/pimatic-daemon.log

Wenn es Sie nicht interessiert, warten Sie einfach 30 Minuten. Wenn alles fertig ist, sollten Sie über den Browser und die IP des Raspberry Pi darauf zugreifen können, beispielsweise “http://ip_des_RPi:8080” (bei mir lautet die komplette Adresse “http://192.168.100.109:8080”)

Via “sudo service pimatic stop” beenden Sie den Vorgang. Das sollten Sie immer dann tun, wenn Sie die Konfiguration bearbeiten.

Konfiguration der Software

Wie gerade erwähnt, muss Pimatic an dieser Stelle unbedingt erst einmal beendet werden. Wir installieren als erstes ein paar Plug-ins, die wir im Tutorial nutzen und brauchen.

1. In das Terminal schreiben wir:

    cd /home/pimatic-app

In den Installationsordner wechseln

2.  sudo apt-get update
    sudo apt-get install make
    sudo apt-get install build-essential g++

Diese Pakete werden für die Plug-ins benötigt und hier installiert

3.  sudo npm install pimatic-pilight
    sudo npm install pimatic-ping

Damit werden die Plug-ins installiert

4.  sudo nano /home/pimatic-app/config.json

Die Konfigurationsdatei öffnen. In der Kategorie “”plugins”: [“ hinzufügen:

    { 
    "plugin": "ping"
    },
    { 
    "plugin": "pilight"
    }

Weiterhin brauchen wir unter ““devices": [“ unser Smartphone für die Anwesenheitskontrolle:

    {
    "id": "daniel_n5",
    "name": "my smartphone",
    "class": "PingPresence",
    "host": "192.168.100.119",
    "interval": 10000
    }

Bei „host“ muss natürlich die IP-Adresse des Smartphones im Wlan eingetragen werden. Diese finden Sie bei Apple und Android in den Netzwerk- bzw. Wlan-Einstellungen oder über Ihren Router.

"id" ist der Name in der Konfiguration und "name" ist die Bezeichnung in der Weboberfläche. Eine Beispieldatei für die Konfiguration gibt es hier . Diese kann gut als Vorlage verwendet werden.

Die Konfigurationsdatei von Pimatic
Vergrößern Die Konfigurationsdatei von Pimatic
© Daniel Böber

Speichern mit Strg+X - Y(es) - Enter

5.  sudo service pimatic start

Pimatic starten

Die interaktive Weboberfläche

Nun können Sie Pimatic via Weboberfläche bedienen. Aktuell sehen wir dort noch nicht viel, aber das wird sich ändern. In der Konfiguration haben wir bereits unser Smartphone als Variable (anwesend oder nicht anwesend) erstellt, und die Steckdose(n) aus Pilight sollten nun auch automatisch importiert werden. In einem kleinen Video möchte ich Sie nun durch die Oberfläche führen:

Regeln und Variablen für die Automatisierung

Der Menüpunkt “Rules” und “Variablen” ist sozusagen der Kern von Pimatic. Hier können Sie selber kleine Programme schreiben. Verwenden können Sie alle Ein- und Ausgaben unserer Hardware, die mit dem Raspberry verbunden sind. In unserem Beispiel ist die Verfügbarkeit des Smartphones im Wlan schon der erste Sensorwert. Auch die Steckdosen stehen über Funk als Aktoren bereit. Indirekt können wir genauso gut eine Uhrzeit als Auslöser für ein Event nutzen. Die komplette Dokumentation des Entwicklers finden Sie hier .

Ich habe als erstes das Beispiel der Anwesenheit genutzt. Wenn ich nach 19 Uhr ankomme, soll das Licht angehen:

if my smartphone is present and it is after 19:00 then turn Licht on

Eine nette Funktion: Es gibt eine Autovervollständigung. Das kennen viele vom Smartphone, hier geht es um den Programmcode. Es werden bereits Möglichkeiten angezeigt, wie das Programm weitergehen kann. Auch hier ein Beispiel: Hinter Licht kann nur on oder off stehen. Alles andere ergibt wenig Sinn.

Wie geht's weiter?

Die Grundlagen haben wir mit dieser Folge erledigt. Jetzt geht es darum, den Raspberry Pi systematisch zu erweitern. In Folge 4 erkläre ich, wie man einen Temperaturfühler installiert, den Sie dann für Aktionen verwenden können. Ein gutes Beispiel dafür ist die Heizungssteuerung.

Wenn Sie vorab schon mehr Anregungen bekommen wollen: Im Blog von Pimatic-Entwickler Oliver finden Sie noch ein paar interessante Bauanleitungen.

Hinweis für alle Bastler:  Wenn auch Sie ein kreatives Projekt entwickelt haben, schreiben Sie uns. Wir würden Ihre Konstruktionen, nützlich oder einfach nur schräg, gern im Hacks-Bereich auf www.pcwelt.de vorstellen. Schreiben Sie an Birgit Götz - bgoetz@pcwelt.de.

0 Kommentare zu diesem Artikel

Smart Home - darum geht es.

Smart Home umschreibt einen der vermutlich am stärksten wachsenden Trends der Zukunft: Intelligente Geräte und Haus-Steuerungssysteme, die Ihnen Ihr Leben erleichtern sollen. Denkbar und vielfach bereits erhältlich sind dabei Lösungen wie Einbruchschutz oder Sets zum Stromsparen. Oder Intelligente Systeme zur Hausbelüftung oder Heizungssteuerung. Smart TVs bringen das Internet ins Wohnzimmer und Waschmaschinen lassen sich per App steuern. Über intelligente Stromzähler haben Sie mit einem Blick aufs Smartphone den aktuellen Stromverbrauch im Griff. Sie sehen, die möglichen Anwendungen sind vielfältig. In diesem Themenbereich widmen wir uns dem Thema Smart Home, erklären, wie die Technik funktioniert und wie intelligent vorhandene Lösungen am Markt wirklich sind.

2000688