Während viele Anwendungsentwickler ihr Hardwaredesign sicher im Griff haben, denken sie eventuell anders über die Bestimmungsorte und die Verarbeitung der Daten, die ihre Geräte erzeugen. Das IoT gibt Firmen die Möglichkeit, neue und innovative servicebasierte Geschäftsmodelle für ihre Kunden bereitzustellen. Um die neuen Geschäftsmodelle auf eine profitable und zuverlässige Weise umzusetzen, müssen sie allerdings neue technische Disziplinen beherrschen.

Eckdaten

IBM hat die IoT-Foundation ins Leben gerufen, um IoT-Edge-Devices leichter in Cloud-Applikationen einbinden zu können. Wichtige Bestandteile sind die Cloud-Plattform Bluemix und die grafische Programmierumgebung Node-RED. IBM hat insbesondere für Raspberry PI auch viele Beispiele bereitgestellt.

Ein Unternehmen, das seine Marke mithilfe zuverlässiger und vertrauenswürdiger Produkte etabliert hat, ist möglicherweise abgeschreckt davon, jetzt eine ebenso zuverlässige, skalierbare und verwaltete Cloud-Speicher- und Analytik-Plattform bereitstellen zu müssen, von der aus die neuen Geschäftsmodelle lebendig werden.

Die cloudbasierte Infrastruktur

Normalerweise wäre die IT-Branche die erste Adresse auf der Suche nach potenziellen Partnern für die benötigten cloudbasierten Infrastrukturen, um tatsächlich das zu liefern, was das IoT verspricht. Allerdings ist die Zahl der Benutzer selbst innerhalb der größten Bank- oder Einzelhandelsinfrastruktur geradezu bedeutungslos, wenn man die Millionen von Sensoren und anderen Edge-Node-Geräte bedenkt, die potenziell mit einem IoT-Cloud-System verbunden sein könnten.

Bild 1: IBM gründet die „Internet of Things Foundation“: Daten von überwiegend sehr kleinen, leistungsarmen Geräten lassen sich in eine IoT-Infrastruktur integrieren.

Bild 1: IBM gründet die „Internet of Things Foundation“: Daten von überwiegend sehr kleinen, leistungsarmen Geräten lassen sich in eine IoT-Infrastruktur integrieren. RS Components

Es gibt eine Reihe von Cloud-Hosting-Dienstanbietern, die mit ihren Lösungen eine nahtlose Vernetzung vom kleinsten integrierten Endgerät bis hin zu skalierbaren Analyseanwendungen mit hoher Verfügbarkeit erreichen. IBM hat vor kurzem seine „IBM Internet of Things Foundation“ angekündigt, einen cloudbasierten Dienst, der Unternehmen dabei helfen soll, Wertschöpfung aus ihren IoT-Geräten zu ziehen, wo auch immer diese sein mögen. Während Unternehmen in Höchstgeschwindigkeit Datenanalysen verfassen, Daten visualisieren und ERP-Systeme mit IoT-Daten füttern müssen, werden gerade diese Daten überwiegend von sehr kleinen, Low-Power-Geräten geliefert, deren Integration eine Herausforderung bedeuten kann.

Die IoT-Foundation

Mit seiner Foundation bietet IBM Bausteine zum Verbinden, Erfassen, Zusammenstellen und Verwalten einer vollständigen IoT-Infrastruktur.  Über branchenübliche Protokolle wie MQTT und REST lässt sich eine Vielzahl von Edge-Node-Geräten (wie Sensoren) sicher anschließen und aus der Ferne verwalten. Insbesondere lassen sich beliebte Open-Source-Entwicklungsplatinen wie Raspberry Pi einbinden.

Bild 2: Mit seiner Bluemix-Quickstart-Simulation stellt IBM Cloud-Dienste zum Verbinden, Speichern und Analysieren der Daten aus IoT-Geräten bereit.

Bild 2: Mit seiner Bluemix-Quickstart-Simulation stellt IBM Cloud-Dienste zum Verbinden, Speichern und Analysieren der Daten aus IoT-Geräten bereit. RS Components

Der IBM-Dienst soll es besonders leicht machen, Daten zu erfassen sowie Informationsflüsse und Steuerungsabläufe zu erstellen. Er kombiniert dazu IBM Bluemix und Node-RED. Den Cloud-Dienst zum Verbinden, Speichern und Analysieren der Daten aus den IoT-Geräten stellt Bluemix  bereit. Node-RED ist eine visuelle Programmierumgebung. Sie dient zum Erstellen der Daten-„Flows“ vom Sensor zur Cloud: der Anwender muss am Bildschirm nur die Datenquellen (wie Sensoren) und Ereignisse grafisch zusammenzufügen, um die Resultate an die Cloud-Speicher- und Analyse-Plattform weiter zu leiten.

Schritt für Schritt erklärt

Zur Veranschaulichung des Konzeptes entwickelte IBM eine Quickstart-Seite, die den Zugriff auf eine Reihe vorgefertigter Anleitungen für viele der oben erwähnten Integrationsentwicklungsplattformen gewährt. In diesen Anleitungen (IBM nennt sie Recipes) sind die erforderlichen Schritte zum Verbinden der Hardware mit den Cloud-Diensten dokumentiert. Dazu gehört auch das Herunterladen eines Programms für das Integrationsziel.

Bild 3: Über den Simulationsbildschrim sieht man einen Temperatursensor, der sich manuell einstellen lässt.

Bild 3: Über den Simulationsbildschrim sieht man einen Temperatursensor, der sich manuell einstellen lässt. RS Components

Die Mehrzahl davon beinhaltet eine Anwendung, die nicht nur die Anbindung an die Cloud einrichtet, sondern auch Beispieldaten erstellt und sendet, sodass Anwender diese in Echtzeit visualisieren können. Zusätzlich sind Beispielvisualisierungen über einen Webbrowser auf dem Computer abrufbar, die sich über Link zu den Simulationsbildschirmen aufrufen lassen. Bild 3 zeigt die Simulation eines Temperatursensors, über den sich die Temperatur manuell erhöhen und verringern lässt. Auf Bild 4 sieht man die entsprechende Echtzeitanzeige der Daten.

Drittanbieter in der Node-RED

Bild 4: Die Datenanalyse findet anhand der simulierten Sensordaten in Echtzeit statt.

Bild 4: Die Datenanalyse findet anhand der simulierten Sensordaten in Echtzeit statt. RS Components

Die visuelle Programmierumgebung Node-RED besteht aus den sogenannten „Flows“ und „Nodes“. Ein Node ist ein Flow, den IBM als vordefinierte Funktion innerhalb von Node-RED entwickelte. Um weitere Funktionen der Umgebung hinzuzufügen, lassen sich Drittanbieter-Nodes auf der Node-RED-Website abrufen. Beispielsweise gibt es einen Drittanbieter-Node, der bei Verwendung eines bestimmten Touchscreen-Moduls auf einem Raspberry Pi eine Touch-Eingabefunktion hinzufügt.

Bild 5: In den Bearbeitungsbildschirm von Node-RED wurden die Nodes „gpio“ und „touch“ in die Standardliste hinzugefügt.

Bild 5: In den Bearbeitungsbildschirm von Node-RED wurden die Nodes „gpio“ und „touch“ in die Standardliste hinzugefügt. RS Components

Der Touch-Node meldet die Position auf dem Bildschirm. Dieser lässt sich in einen neuen Flow ziehen, den der Anwender verkabelt. Node-Funktionen sind in die Kategorien Eingabe, Ausgabe, Funktion, Social, Speicherung und Analyse unterteilt. Andere Drittanbieter-Nodes bieten unter anderem GPIO-Eingang/Ausgang, Ablesung der NTF-Zeit und Erstellen eines Google-Diagramms anhand von Daten. Bild 5 zeigt den Bearbeitungsbildschirm von Node-RED: Die Nodes „gpio“ und „touch“ wurden in der Standardliste auf der linken Seite hinzugefügt.

Schnell entwickeln

Mit Node-RED haben Programmierer die Möglichkeit, ihren ersten Flow schnell zu entwickeln. Die Website von Node-RED stellt eine umfangreiche Dokumentation bereit, einschließlich einiger Beispiel-Tutorials wie das in Bild 6. Es zeigt einen einfachen Flow, der eine Zeitstempel-Meldung erzeugt und sie an die Funktion „Zeitstempel formatieren“ sendet. Der Anwender hat diese Funktion markiert und sieht daraufhin die Art der Konvertierung in einem String. Das Resultat landet dann im Debug-Teilfenster auf der rechten Seite.

Bild 6: Einfacher Flow, der die String-Konvertierung des Datums anzeigt.

Bild 6: Einfacher Flow, der die String-Konvertierung des Datums anzeigt. RS Components

Raspberry Pi 2 eignet sich sehr gut, um IoT-Anwendungen mit der IoT-Foundation, Bluemix und Node-RED zu entwickeln. Mit ihren I/O-Fähigkeiten im Zusammenspiel mit den verfügbaren Drittanbieter-LCD-Bildschirmen, GPIO-Erweiterungs- und Drahtlosmodulen lassen sich IoT-Endgeräte zusammenstellen. Sowohl Bluemix als auch Node-RED stellen detaillierte Anweisungen zur Implementierung und Konfiguration für den Raspberry Pi bereit, sodass Programmierer ihr IoT-Design über diese Plattform entwickeln und zum Einsatz bringen können. Diese Herangehensweise an die IoT-Entwicklung kombiniert die skalierbaren und sicheren Cloud-Dienste von IBM mit der gut dokumentierten Plattform Raspberry Pi 2.