Embedded World Conference 2019 IoT-Plattformen: Qual der Wahl für den Segen mit Einschränkungen

Eine zentrale Rolle bei den Entwicklungen von Anwendungen für das Internet der Dinge (Internet of Things, IoT) spielen Plattformen. Sie stellen die Verbindung zwischen den vernetzten Geräten, also etwa Sensoren, und den Systemen her, die IoT-Daten speichern, verarbeiten und auswerten.

Solche IoT-Plattformen sind in den letzten Jahren wie die Pilze aus dem Boden geschossen. Sie sollen den Entwicklern und den Betreibern die komplexen und arbeitsaufwändigen Basisaufgaben abnehmen, die für IoT-Gesamtsysteme anwendungsunabhängig bereit zu stellen wären. Damit verspricht diese Positionierung auch attraktive Geschäftsmodelle von der Entwicklungsunterstützung bis zum Hosting und dem Betrieb von IoT-Anwendungen. 

Aufgaben & Funktionselemente

Die Aufgaben von IoT-Plattformen können sehr vielfältig und umfangreich sein, wie die folgende Auflistung zeigt. Entsprechend heterogen sind auch die Angebote. Und Kunden und Anwender stehen vor der Qual der Wahl, für welche Plattform sie sich entscheiden sollen. Die wichtigsten Kriterien bei dieser Entscheidung sind

Edge Devices: Wird eine Unterstützung von konkreter Hardware angeboten? Sind IoT-Edge-Devices (Sensoren, Aktoren) verfügbar? Stehen Gateway-Lösungen zur Verfügung, um die oft auf Deeply-Embedded-Systemen basierenden Feldgeräte auch physisch anzubinden?

Kommunikationsprotokolle: Welche Kommunikationsprotokolle werden unterstützt? Hierbei spielen nicht nur die Protokolle der niedrigeren Schichten eine Rolle, wie z. B. IEEE802.15.4, Bluetooth, LoRaWAN, SIGFOX oder NB IoT, sondern vor allem auch die Protokolle auf der Anwendungsschicht. Und hierbei geht es auch nicht nur um die »Transportprotokolle« auf der Anwendungsschicht, wie zum Beispiel http, CoAP, LWM2M oder MQTT, sondern auch um die zu Grunde liegenden Datenmodelle, wie etwa IPSO, Bluetooth GATT oder OPC UA.

Geräteverwaltung: Welche Möglichkeiten der Geräteverwaltung werden geboten? Hierbei sind nicht nur die Aufgaben der reinen Kommissionierung (Anmeldung, Abmeldung) abzudecken. Die Geräte müssen u. U. auch parametriert werden. Gegebenenfalls müssen auch Teilfunktionen oder die gesamte Firmware nachgeladen werden. Und natürlich müssen auch Schlüssel ausgetauscht und Authentisierungsaufgaben für die Gewährleistung der Sicherheit verwaltet werden. Dieser letzte komplexe, aber natürlich sehr komplexe Aspekt wird aber im Unterpunkt »Sicherheit« noch einmal aufgegriffen.

Logik & Anwendungen: Welche Funktionen zur Bearbeitung der Daten und zur Ableitung von Aktionen werden zur Verfügung gestellt? Neben »Schaltlogik« im Sinne von »if then then that« können auch Business Logiken« zur Steuerung von Prozessen oder andere Microservices zum Einsatz kommen. Klassischerweise wurden diese Funktionen im Backend in der Cloud bereitgestellt. In mehrstufigen und multipel vernetzten Systemen geht der Trend zu immer mehr »verteiltem Rechnen« im Sinne des Fog-Computing.

Analyse: Über diese einfacheren Funktionen hinausgehend werden zunehmend auch Analysefunktionen bereitgestellt. Diese können von einfachen statischen oder Regressionsanalysen bis hin zu komplexen Werkzeugen auf der Grundlage von maschinellem Lernen und künstlicher Intelligenz sein.

Visualierung & Reporting: Welche Werkzeuge sind enthalten, um die erfassten, verknüpften oder auch schon analysierten Daten, bzw. die abgeleiteten Informationen anzuzeigen? Das Spektrum reicht von einfachen Diagrammen bis hin zu komplexen Dashboards und Reporting-Werkzeugen.

Schnittstellen: Welche Schnittstellen werden angeboten, um anderen Systemen Zugriff auf die erfassten, bearbeiteten oder analysierten Daten zur Verfügung zu stellen? Dies können Schnittstellen zu Manufacturing Execution Systemen (MES), Abrechnungssystemen, oder auch ERP-Systemen, aber natürlich auch zu anderen IoT-Plattformen sein.

Datenspeicherung: Welche Möglichkeiten zur Speicherung der Daten werden geboten? Hier geht es natürlich um die klassische Fragestellung, ob die Datenbanken in der privaten, öffentlichen oder hybriden Cloud betrieben werden. Je mehr die Logik- und die Anwendungsfunktion verteilt wird, desto wichtiger werden auch die Speicher- Sicherungsmöglichkeiten all dieser Daten, Parameter und Funktionen.

Sicherheit: Welche Funktionen und Werkzeuge stehen zur Verfügung, um die Datensicherheit (Security) und Funktionssicherheit (Safety) der IoT-Plattform zu gewährleisten? Die grundlegende Fragestellung ist hierbei die Sicherheit der Daten im gesamten System gegen Angriffe von außen, von innen und vom Betreiber. Aber sie schließt nicht nur die Kapselung von Anwendungen und die Verschlüsselung von Daten in den Systemen (Data at Rest), sondern auch die Unterstützung von sicheren Kommunikationsprotokollen (data in motion) ein, z. B. TLS für https oder CoAP. Und schließlich müssen auch wesentlich die Aufgaben der Authentisierung betrachten, um über den gesamten Lebenszyklus hinweg sicher zu stellen, dass auch wirklich nur »eigene« Endgeräte nur integre Daten nur an die berechtigten anderen Plattformelemente liefern.

Hinzu kommt, dass nur datensichere Plattformen auch funktionssicher sein können. Dann kommen aber unter Umständen auch zusätzliche Aspekte wie die Verfügbarkeit von redundanten Systemelementen zur Erhöhung der Verfügbarkeit dazu.

Entwicklungsunterstützung: Welche Werkzeuge werden zur Entwicklungsunterstützung angeboten? Hierbei kann das Spektrum von graphischen Konfigurationstools über die Bereitstellung von Bibliotheken bis hin zur Integration in Entwicklungs-, Test- oder Integrationsumgebungen reichen.

Eigenschaften 
 
Neben dieser Vielfalt der Funktionen ist bei der Auswahl von der richtigen IoT-Plattform auch noch eine Reihe von weiteren Fragestellungen zu beachten: 

Offenheit: Ein ganz wichtiger Aspekt ist die Offenheit der Systeme, vor allem in Bezug auf zwei Aspekte: Ist die IoT-Plattform quelloffen (open source)? Kann sie auf diese Weise adaptiert, angepasst oder erweitert werden? Oder ist man hier auf die Unterstützung des Anbieters oder seiner Dienstleister angewiesen? Und bietet die IoT-Plattform Möglichkeiten des Imports oder des Exports der Funktionen, Konfigurationsmöglichkeiten oder Parametersätze für eine einfache Migration von, bzw. in andere Systeme? Offensichtlicher sind bislang maximal die Anwendungsprotokolle zur Bereitstellung der Daten in die IoT-Plattform standardisiert. Die ganzen anderen Funktionen sind plattformspezifisch, weil es hier keine Standards gibt (und vermutlich auch nicht geben kann). Diese Situation führt bei vielen Anbietern zu einem sehr starken Vendor-Lock-In, da eine Migration in der Regel mit einem umso größeren Aufwand verbunden ist, je mehr der vorgefertigten Module und Funktionen der IoT-Plattform genutzt werden.

Kostenmodelle: Und natürlich spielen auch die Kosten bei der Lizenzierung und beim Betrieb der IoT-Plattform eine Rolle.

Echtzeitfähigkeit: Welche Möglichkeiten bietet die IoT-Plattform, um auch echtzeitfähige Anwendungen unterstützen zu können? 

IoT-Plattformen auf der embedded world Conference 

Auch auf der weltgrößten Leitmesse sowie der parallel vom 26.-28. Februar 2019 in Nürnberg stattfindenden embedded world Conference werden die Themen und IoT-Plattformen eine wichtige Rolle spielen. In insgesamt 20 Vorträgen in vier Sessions an zwei ganzen Tagen versuchen die Redner Antworten auf die oben erwähnten Fragen zu geben. Weitere Sessions decken Aspekte der Sicherheit oder der Transportnetze ab. Das Programm der embedded world Conference steht unter http://www.embedded–world.eu zur Verfügung stehen.