Raspberry Pi3 als homecontrol Server im Smarthome
zurück Navigation auf Raspberry Pi3 als homecontrol Server im Smarthome Raspberry Pi3 als homecontrol Server im Smarthome

Einfach überflüssig, nur aus Freude am Energie sparen!

Raspberry Pi 3 als Homeserver

Über alle Sensoren und Aktoren wacht in meinem Smarthome ein Raspberry Pi 3, bzw der auf meinem Linux aufgesetzte Apache 2.4 Server mit PHP5

Beschreibung des Raspberry Pi 3

Bei dem Raspberry Pi 3 handelt es sich um einen Einplatinencomputer ohne irgend welche eingebauten Laufwerke. Als Betriebssystem läuft auf dem Raspberry ein Debian Linux, welches er sich von seinem SD Kartenlaufwerk läd. Der Raspberry Pi 3 kann über einen HDMI Anschluss mit einem Monitor verbunden werden, wenn man ihn als kleinen Rechner einsetzen wollte. Ich habe hier keinen Monitor dran, sondern bediene den Raspberry Pi über VNC im graphischen Bereich oder über SSH im Konsolenbereich als sogenanntes embeddet Linux system.

Mein Betriebssystem ist Debian Linux

Dies Betriebssystem kann man, sofern die graphische Oberfläche gestartet wurde, oberflächlich als reiner User betrachten als wäre es ein Windows, Programm auf der Oberfläche ancklicken, und los geht es in der Anwendung drucken, speichern, hin- und herschieben, alles wie in Windows oder Mac-OS. Programme gibt es fast alle umsonst, Sie sind in einem Paketmanager (fast wie im Appstore) zusammengefasst. Die Installation gestaltet sich aber etwas komplizierter.

Die Systemadministration von Debian Linux

In der Administration ist Linux aber recht unhandlich. Anfangs fühlte ich mich an die Zeiten von CPM oder MS-Dos erinnert, und fand es gar nicht so schlimm. Linux ist aber extrem mächtig und es ist ganz schön anstrengend die ganzen Nutzerrechte etc. mit cryptischen Befehlen zu verwalten. Hier ist viel lesen und nachschlagen angesagt. Mein Linktip als deutsche Bedienungsanleitung zu Debian Linux http://debiananwenderhandbuch.de

Der Apache Server

Die Hauptanwendung ist ein Apache-Webserver, über den die Sensordaten einlaufen. Ist der Apache Server erst einmal mit PHP5 auf dem Raspberrypi vernünftig installiert (mir hat ehrlich gesagt ein Bekannter geholfen) und die ganzen Rechte richtig eingeräumt, kann man damit super arbeiten und seine Webseiten mit Standart html und php programmieren, was wirklich einfach ist. Ein gutes, deutsches Handbuch für für die Administration für den LAMP Server (So heißt der Apache auf Linux) finden Sie hier: https://httpd.apache.org/docs/current/de/

Der SSH Server auf dem Raspberry Pi 3

Der SSH Server ist eigentlich Pflicht auf jedem Linux Server. Ohne SSH Server kann der Rechner nicht aus der Ferne Administriert werden. Über den SSH Server kann ich auch Dateien mittels SFTP auf einen MAC oder Windows Rechner herunterladen, bearbeiten und wieder hochladen. Auf meinem I-Mac nutze ich hierfür die sehr gute App Cyberduck, die ich jedem MAC User uneingeschränkt empfehlen kann.

Der VNC Server auf dem Raspberry Pi 3

Durch die Installation des VNC Servers kann ich mir den Nutzerbildschirm den ich auf einem Monitor hätte auf einen anderen Rechner holen. Wenn ich auf meinem Macbook vnc.//himbeere eingebe, habe ich den Bildschirm von meinem Raspberry pi auf meinem Macbook, da der Name Himbeere auf meiner Fritzbox als DNS Server aufgelöst wird und der IP Addresse meines Raspberry Pi zugeordnet wird. Nun habe ich statt meines MAC-OS die Iberfläche von Linux auf meinem Schirm und kann dord mit meinem Touchpad und Tastatur arbeiten. Natürlich kann man auch eine Maus einsetzen.

Der Raspberry Pi als Datenlogger

Es ist recht einfach dem Apache Server Daten der Sensorik zu senden und auf dem SD Laufwerk zu speichern. SD Platten haben aber den Nachteil, das Sie nur eine begrenzte Anzahl von Schreibzyklen haben. Wenn nun jede Minute von 20 Sensoren die die Temperaturen gemeldet werden, müsste der Raspberry Pi 28800 mal am Tag die Datendatei öfnen, etwas dazuschreiben und die Datei wieder schließen. Es wäre eine Frage von ein paar Wochen, bis die SD Karte unbrauchbar würde und der Raspberry Pi absstürzt. Für diesen Zweck ist er mit seinem SD Laufwerk ungeeignet. Hier habe ich eine Festplatte, die ohnehin in meinem Netzwerk vorhanden ist in das Dateisystem gemountet und speicher die Daten in einer Mysql Datenbank ab. So wird im laufenden Betrieb nichts auf der SD Karte gespeichert. Auch das Caching des Arbeitsspeicher habe ich gestoppt, bei meinen kleinen Anforderungen ist es nicht erforderlich eine Swap-Datei zu unterhalten.