Raspberry Pi

UniPi: Hausautomatisierung mit dem Raspberry Pi

UniPi

Der Raspberry Pi ist in Sachen Programmiermöglichkeiten und Hardwareansteuerung vielseitig einsetzbar, da er eine Reihe an gängigen Schnittstellen unterstützt. Im Bereich Hausautomatisierung bietet der Einplatinencomputer somit eine ideale Basis für individuell gestaltete Steuerungsaufgaben und andere hardwarenahe Projekte. Bei der Nutzung von mehreren Sensoren und Aktoren mit dem Pi fällt allerdings auf, dass die Anzahl der GPIO-Pins schnell knapp wird. Im Folgenden stelle ich das UniPi Erweiterungsboard für den Raspberry Pi vor, mit dessen sich die Ein- und Ausgänge des Pi vervielfachen lassen.

Hardware

UniPi ist ein umfangreiches Erweiterungsboard für den Raspberry Pi und kann mit den Modellen A/A+, B/B+ und dem Raspberry Pi 2 verwendet werden. Das Board vervielfacht dabei die Anschlussmöglichkeiten des Einplatinencomputers und stellt diverse Ein- und Ausgänge auf dem Board bereit. Neben analogen und digitalen Ports stellt das Board 8 Relais zum Schalten von 230 Volt Verbrauchern bereit. Zur seriellen Kommunikation und Nutzung von externen Geräten verfügt UniPi über einen I2C-Port, 1-Wire und einen UART Anschluss. Die Verbindung zwischen dem Board und den GPIO-Pins des Raspberry Pi erfolgt mit einem Flachbandkabel. Alle Schnittstellen und Features des Boards sind im Folgenden aufgelistet.

  • 14 digitale Eingänge (5-24V)
  • 2 analoge Eingänge (maximal 10V)
  • 1 analoger Ausgang (0-10 V regelbar)
  • 12 Volt Out
  • 8 Relais (maximale Lasten von 230V / 5A)
  • 1-Wire Schnittstelle für bspw. den Temperatursensor DS1820
  • I2C und UART-Schnittstelle (5V Pegelwandler und ESD geschützt)
  • RTC-Modul (Real Time Clock)
UniPi Aufbau

UniPi Aufbau

Weitere Details zur Hardware können im dazugehörigen Datenblatt nachgelesen werden. Der Raspberry Pi wird mittels Abstandsbolzen auf dem UniPi-Board montiert. Mit einem Flachbandkabel werden außerdem die GPIO-Pins des Pi auf die Platine geführt. Versorgt wird das UniPi-Board mit einem 5 Volt Netzteil über eine DC-Buchse. UniPi und Raspberry Pi können dabei gemeinsam mit einem Netzteil versorgt werden. Der Betrieb des UniPi über die Stromversorgung des Raspberry Pi wird nicht empfohlen bzw. ist nicht dafür ausgelegt.

Preislich liegt das UniPi-Modul bei rund 140 Euro und kann bei Rasppishop.de und Amazon erworben werden.

Möglichkeiten und kompatible Geräte

Das UniPi Erweiterungsboard erlaubt durch den Spannungsbereich von 5-24 Volt für digitale Eingänge und 0-10 Volt für analoge Ein- und Ausgänge den Einsatz mit diversen Geräten unterschiedlicher Pegel. Beispielsweise ist damit das Ansteuern von Alarmanlagen, Bewegungssensoren, Motoren und Jalousien möglich. Viele andere digitale Sensoren arbeiten mit dem sogenannten 1-Wire Bus. Darunter zählt zum Beispiel der Temperatursensor DS1820. Mehrere auf 1-Wire basierende Komponenten können parallel an die Schnittstelle angeschlossen werden. Mit Hilfe der I2C-Schnittstelle oder via UART ist der Datenaustausch mit anderen Microcontrollern oder kompatiblen Komponenten möglich. Zur Anpassung und Abstimmung des analogen Ausgangen ist auf der Platine ein Trimmer angebracht. Der analoge Ausgang kann beispielweise für Signale zur Ansteuerung von Servos, Rollos oder Heizungen genutzt werden.

Sollte der Raspberry Pi nicht in einem Netzwerk verbunden, dann synchronisiert das RTC-Modul die Systemzeit des Pi automatisch. Dies kann auch bei Zeitschaltungen oder Termingebundenen Schaltungen hilfreich sein.

UniPi

UniPi

Software

Das UniPi-Erweiterungsmodul für den Raspberry Pi ist grundlegend mit den Hausautomations-Systemen Rex, Fhem, HomeSeer und WyLiodrin kompatibel. UniPi bringt seine eigene Software mit, welche das Steuern und Auslesen von allen Schnittstellen ermöglicht. Die UniPi-Software hört auf den Namen evok und steht auf Github bereit. Evok bringt sein eigenes Webinterface und arbeitet mit der REST API.

evok installieren

Zum installieren der UniPi-Software evok verbinden wir uns beispielsweise über SSH mit dem Pi und wechseln optional mit dem Befehl cd in ein Verzeichnis, in welchem evok installiert werden soll. An dieser Stelle bleib ich im Home-Verzeichnis vom Nutzer pi. Anschließend laden wir die Software von Github herunter.

git clone https://github.com/UniPiTechnology/evok

Alternativ kann das Archiv mit wget heruntergeladen und anschließend entpackt werden.

wget https://api.github.com/repos/UniPiTechnology/evok/zipball/master
unzip master && mv UniPiTechnology-evok* evok

Nachdem der Download von evok getan ist, wechseln wir in dessen Verzeichnis, passen die Rechte an und führen anschließend den Installations-Skript aus.

cd evok
chmod +x install-evok.sh uninstall-evok.sh
sudo ./install-evok.sh

Nachdem evok installiert wurde kann über einen Webbrowser (via Computer, Smartphone oder Tablet) das Webinterface unter der IP-Adresse des Raspberry Pi aufgerufen. In der Oberfläche können Eingänge eingesehen und Ausgänge, wie Relais geschalten werden. Im Folgenden sind einige Screenshots des evok Webinterfaces vom Smartphone zu betrachten.

Evok Webinterface Relais

Evok Webinterface Relais

Evok Webinterface Eingänge

Evok Webinterface Eingänge

Evok Webinterface

Evok Webinterface

REST API UniPi

UniPi arbeitet mit der sogenannten REST API. Dabei können mit Hilfe von verschiedenen Linkstrukturen Eingänge webbasierend abgefragt werden. Gleichzeitig kann mit der HTTP-POST-Methode ein Ausgang entsprechend geschalten werden. Im Folgenden werden einige Beispiele angebracht. Mehr Informationen dazu können in der Github-Dokumentation von evok nachgelesen werden.

Alle Geräte, welche am UniPi Modul angeschlossen sind.

http://ip.raspberry/rest/all

Den Status von Relay 1 abfragen.

http://ip.raspberry/rest/relay/1/value

Relay 1 schalten.

wget -qO- http://ip.raspberry/rest/relay/1 --post-data='value=1'

Mit Hilfe dieser Linkstruktur ist es möglich Schalt- und Regelverhalten in andere Hausautomationssysteme, etwa primatec, zu übertragen.

Hinterlasse eine Antwort

Kommentare