Sehr engagiert bezüglich der Raspberry-Pi-Plattform ist Mathworks. Auf den vergangenen Messen waren am Mathworks-Stand diverse Maker-Demos mit Raspberry Pi, aber auch mit Arduino und Lego Mindstorms zu sehen. Mit der Matlab-/Simulink-Software kann auf dem Raspberry Pi Embedded-Software erstellt werden, ohne in die Tiefen einer Programmiersprache absteigen zu müssen. Algorithmen zum Regeln von Prozessen, zum Verarbeiten von Audio- und Bildsignalen werden auf einem Entwicklungs-PC mittels Blockschaltbildern entworfen, im Simulationsmodus getestet und schließlich als Stand-alone-Anwendung auf die Raspberry-Pi-Hardware übertragen. Voraussetzung dafür ist selbstverständlich ein installiertes Matlab und Simulink ab Version 2013a. Die Raspberry-Pi-Unterstützung bietet im Moment nur die Windows-Version von Matlab/Simulink.
undefinedWeiterhin muss ein Compiler für die Matlab-Anwendungen installiert sein, der aus den Mex-Dateien ein Stand-alone-Programm für den Raspi macht. Das ist aber kein Problem, da Microsoft mit seinem Windows SDK 7.1 einen kostenlosen Compiler bereitstellt. Mit dem Matlab-Befehl mex -setup lässt sich überprüfen, welche Compiler unter Matlab installiert sind und welcher Compiler für die Ziel-Hardware verwendet wird. Damit Simulink den Raspberry Pi ansprechen kann, muss schließlich noch ein Support Package für Raspberry Pi Hardware installiert werden (Bild 2).
Am einfachsten geht das, indem aus der grafischen Oberfläche heraus auf "Add-Ons" geklickt wird, woraufhin eine menügeführte Auswahl gezeigt wird, mit der man die jeweils neueste Version des Support-Pakets aus dem Internet herunterladen und sofort installieren kann. Gleichzeitig werden damit noch referenzierte Software-Pakete wie wget und 7-zip heruntergeladen und ebenfalls automatisch installiert. Die menügeführte Installation bietet auch an, mit Raspian Wheezy die passende Raspberry Pi Firmware herunterzuladen und auf eine MicroSD-Karte zu überspielen. Zu guter Letzt muss noch das Netzwerk konfiguriert werden, damit der Entwicklungs-PC eine Verbindung zum Zielsystem aufbauen kann. Die Bibliothek der Simulink-Blöcke unterstützt verschiedene I/O-Zugriffe wie den Audio-Ein- und Ausgang, Video-Eingang über das Raspberry-Pi-Kameramodul, Ausgaben auf ein Display, die Ansteuerung der GPIO-Pins. An den Webservice Thingspeak.com kann Simulink Sensordaten senden, die dort verarbeitet und visualisiert werden. Mittels weitere Zusatzpakete wie der DSP System Toolbox oder der Computer Vision System Toolbox können mit dem Raspberry Pi analoge Daten über die Audioschnittstelle ausgewertet werden oder Bildverarbeitungsalgorithmen durchgeführt werden. Auf makerzone.mathwork.com befinden sich Anwendungsbeispiele und auch ein Tutorial, wie man ein einfaches Simulink-Modell auf dem Raspberry Pi ablaufen lässt.
undefinedRaspi als Oszilloskop
Für rund 100 Euro lässt sich der Raspberry Pi zum Oszilloskop machen - mit dem BitScope Micro Oscilloscope (Bild 3). Die Hardware besteht aus einer länglichen Platine, an deren einem Ende sich der USB-Anschluss und am anderen eine Kontaktleiste für die Messfühler befindet.
undefinedMan kann das Micro Oscilloscopy als zweikanaliges, digitales Speicheroszilloskop mit einer Bandbreite von 20 MHz und Auflösung von bis zu 12 bit betreiben oder als achtkanaligen Logikanalysator. Dabei können gleichzeitig auch Protokolle wie SPI, CAN und I2C analysiert und dargestellt werden. Schließlich sind auch noch die Betriebsmodi Spektrumanalysator und Signalgenerator möglich.
BitScope stellt dazu verschiedene Anwendungen bereit, mit denen man das Oszilloskop unter der grafischen Oberfläche von Raspbian betreiben kann. Die Oszilloskop-Funktion setzt das Programm Biscope DSO um (Bild 4). Dabei kann die Programmoberfläche sowohl mit der Maus als auch durch einen Touchscreen bedient werden. Klickt man eines der Felder im DSO-Programm an, dann wird anschließend durch Ziehen über die Touch-Oberfläche oder mit gedrückter Maustaste die Skala des zugeordneten Werts kontinuierlich verändert. Ein professionelles Oszilloskop kann das Micro Oszilloscope natürlich nicht ersetzen, aber um ein paar Signale zu visualisieren, ist es eine preisgünstige Alternative.
undefinedSmart Home Server mit EnOcean-Sensoren
Nicht viel kostspieliger, dafür durchaus professioneller ist das EnOcean Energy Harvesting Starter Kit ESK 300. Die EnOcean-Sensoren und -Aktoren kommunizieren drahtlos miteinander und können durch einen Smart Home Server gesteuert werden. Dabei kann ein Smartphone, das mit dem Server verbunden ist, als Fernbedienung benutzt werden. Ein kleines Board im USB-Stick-Format (Bild 5) oder eine Aufsteckplatine (Bild 6) dient dabei als Gateway zwischen Raspberry Pi und den Funksensoren/-aktoren. Das Starter Kit ESK 300 enthält zusätzlich einen Temperatursensor sowie einen Taster. Die EnOcean-Sensoren und -Aktoren funktionieren nach dem Energy-Harvesting-Prinzip: der Taster bezieht Energie aus der Kraft des Tastendrucks, der Temperatursensor über ein kleines Solarpaneel. Erweitern lässt sich die Installation durch Rauchmelder, Feuchtigkeitssensor und Bewegungsmelder sowie alle möglichen Schalter zum Steuern elektrischer Verbraucher wie Rolladen, Jalousien oder Steckdosen.
undefinedDer serielle Port des GPIO-Interface wird von Linux üblicherweise verwendet, um Debug-Meldungen der Konsole auszugeben. Dieses Feature muss deaktiviert werden, wenn das EnOcean-Pi-Modul verwendet wird. Dazu existiert ein Script, das man herunterladen kann und das die Boot-Einstellungen entsprechend anpasst. Damit der Raspberry Pi als Smart Home Server arbeiten kann, muss die FHEM-Server-Software auf dem Raspi installiert werden. FHEM ist ein GPL-lizenzierter, in Perl geschriebener Server, der die Daten von Sensoren entgegennimmt und speichert oder typische Aufgaben der Hausautomatisierung steuert wie z.B. Beleuchtung ein- und ausschalten, Rolladen herauf- und herunterfahren, die Heizung an- und abschalten.
undefinedWenn der FHEM-Server korrekt installiert ist, erkennt er automatisch das an den Raspberry Pi angeschlossene EnOcean Gateway. Er empfängt dann die Funktelegramme der in einer Umgebung von 10 bis 30 Metern vorhandenen EnOcean-Geräte und zeigt den Inhalt des jeweiligen Telegramms an. Jedes Gerät hat eine eindeutige Hersteller-ID, mit der die Geräte identifiziert werden.
Die Sensoren müssen dann zunächst angelernt werden, damit FHEM weiß, was es mit den empfangenen Daten anfangen soll bzw. welche Befehle an einen Aktuator gesendet werden können. Ist alles eingerichtet, dann protokolliert FHEM die gesendeten und empfangenen Daten und zeigt z.B. Werteverläufe eines Feuchtigkeits- oder Temperatursensors grafisch an (Bild 7). Wie es im Detail funktioniert, ist in einem White Paper [2] beschrieben, in dem auch zahlreiche Links zu FHEM und der entsprechenden Dokumentation enthalten sind.
Literatur
[1] So installieren Sie Owncloud auf einem Raspberry Pi. www.connect.de/ratgeber/so-installieren-sie-owncloud-auf-einem-raspberry-pi-1540246.html [2] Kreitmair, M.: Raspberry Pi talks EnOcean. How to setup a home automation server with EnOcean Pi or USB 300. White Paper auf EnOcean-Website, https://www.enocean.com/de/enocean-pi/
undefined