Internet of Things

Säulen belastbarer IoT-Plattformen

Aktuelle IoT-Plattformen sollten einige Mindestanforderungen erfüllen, um als Grundlage für komplexere Projekte in Frage zu kommen. Um diese geht es im folgenden Artikel, beginnend bei der Konnektivität, also den unterstützten Protokollen und Schnittstellen.

Beispiel einer Alarmregelkette in Thingsboard (Bild: IT-Novum GmbH)
Beispiel einer Alarmregelkette in Thingsboard (Bild: IT-Novum GmbH)

Jeder Sensortyp hat seine eigenen Protokolle oder Datenschnittstellen. Neben IoT-Standards wie MQTT, COAP oder HTTP sind auch drahtlose Funkprotokolle wie z.B. NB-IoT oder LoRaWAN notwendig, die den mobilen Einsatz von batteriebetriebenen Sensoren erlauben und hohe Reichweiten bis zu mehreren Kilometern erreichen. Um die Sensordaten mit externen Daten aus operativen Systemen etwa für ERP oder CRM zu integrieren, ist es empfehlenswert, sie über eine Message Queue wie Kafka einzusammeln und von dort in die IoT-Plattform zu laden. Das entkoppelt die Datenquelle und der Datensenke, was wiederum die Anbindung von neuen Systemen erleichtert.

Entwicklung von Regelketten

Bei der Vorverarbeitung der Eingangsdaten der Sensoren spart ein Low Code-Ansatz viel Zeit. Damit können auch Endanwender ohne tiefgreifende Programmierkenntnisse Berechnungslogiken, Aggregationen oder Alarmschwellwerte implementieren. Tools wie Node-RED bieten visuelle Regelketten, die sich vergleichsweise einfach bedienen lassen: vorgefertigte Knoten mit bestimmten Funktionen werden platziert und über Kanten miteinander verbunden. Letztere geben die Datenflussrichtung vor. Die Lösung ThingsBoard beinhaltet sogar eine Komponente, die Prozesse innerhalb der IoT-Plattform automatisieren kann. Komplexe Verarbeitungsketten können zusätzlich bei hohen Datenaufkommen in einem Queuing-System aufbereitet werden. Mit Applikationen wie KafkaStreams oder KsqlDB lassen sich hochskalierbare Lösungen implementieren.

Device und Asset Management

Neben dem Speichern von Sensornachrichten muss die Plattform auch Beziehungen zwischen Sensoren oder anderen Objekten abbilden können. Das umfasst die Metadatenpflege der Devices (Standort, Firmware oder Gerätetyp), aber auch die hierarchische Strukturierung der Sensoren. Werden diese Beziehungen in der Plattform gepflegt, ergeben sich verschiedene Möglichkeiten:

  • • Drilldowns und Rollups in Dashboards, vom Gebäude bis zum Sensor,
  • • Naheliegende Abfragemöglichkeiten wie ‚Zeige mir alle Sensoren von Raum 1 im Dashboard an‘,
  • • Aggregationsstufen für Sensorwerte und Alarme wie ‚Gesamtzahl der Alarme im Gebäude‘,
  • • Bessere Auffindbarkeit der Sensoren in der Plattform durch Gruppierung.

Manche Plattformen – zum Beispiel ThingsBoard – erlauben die Definition von mehrschichtigen Hierarchiestrukturen sowohl für Sensoren als auch für Objekte. Es ist sogar möglich, Strukturen innerhalb von Kunden zu definieren, z.B. Sub-Kunden. Dieser Aspekt wird von Anwendern häufig unterschätzt, denn bei sehr vielen Sensoren verliert man ohne vorher bedachte Strukturen schnell den Überblick. Für eine tiefere Analyse der Beziehungen zwischen Sensoren und Objekten empfehlen sich Graph-Datenbanken wie Neo4j.