Kommentar von Bernd Behler, Tresmo Wie standardisierte Datenmodelle IoT-Projekte vereinfachen
Anbieter zum Thema
IoT-Projekte stoßen oft auf Schwierigkeiten, weil die zu vernetzenden Produkte nicht dieselbe „Sprache“ sprechen. Intelligente Datenmodelle können Abhilfe schaffen. Ein Erfahrungsbericht aus der Praxis.

Internet-of-Things-Lösungen basieren in vielen Fällen darauf, dass Sensordaten von physischen Produkten, zum Beispiel Geräte, Maschinen oder Anlagen, gesammelt, aggregiert und ausgewertet werden. Damit können beispielsweise Steuerungen optimiert, innovative Services angeboten und neue Geschäftsmodelle entwickelt werden.
Die praktisch nutzbaren Möglichkeiten erscheinen sowohl im Consumer- als auch im Industriebereich endlos, sie reichen von per App gesteuerten Heizungen im smarten Zuhause bis hin zu Offshore-Windanlagen mit optimierten Wartungszyklen.
Internetfähige Hardware ist dabei nur ein Baustein. IoT-Lösungen brauchen ein intelligentes Datenkonzept, das neben dem Erfassen und Übertragen auch das Auswerten der Sensordaten berücksichtigt. Letzteres macht die Logik des Ganzen aus – die Applikation muss mit den bereitgestellten Daten etwas anfangen können.
Jede Maschine „spricht eine andere Sprache“
Wie macht man als Hersteller seine Produkte – beispielsweise Geräte, Maschinen oder Anlagen – internetfähig? Am einfachsten ist es, bestehende Produkte mit einem externen Gateway nachzurüsten, das Daten kontinuierlich ausliest oder – je nach Verbindungsart – aktiv mitgeteilt bekommt. Diese Daten werden anschließend an den IoT-Endpunkt in der Cloud weitergeleitet. Würden alle Produkte die gleichen internen Datenstrukturen nutzen, würde dieses Szenario auch über verschiedene Maschinentypen hinweg funktionieren.
Die Praxis sieht jedoch anders aus: Nahezu jeder Geräte- oder Maschinentyp nutzt eine eigene Daten-Repräsentation und spricht deshalb im übertragenen Sinn eine andere „Sprache“. Die Gründe dafür sind vielfältig: Zukäufe von Unternehmen, getrennte Entwicklungsabteilungen, historisch gewachsene Infrastrukturen und insbesondere auch die Tatsache, dass eine geräteübergreifende Vernetzung in der Vergangenheit bei kaum einem Anbieter auf der Agenda stand.
Eine naheliegende Lösung zur Vereinheitlichung der Sprache wäre ein Firmware-Update aller Geräte. Dies scheitert jedoch oft daran, dass die betroffenen Geräte und Maschinen nicht remote updatebar sind. Ein Techniker müsste dies für jedes Produkt vor Ort erledigen – bei geografisch weit verteilten Standorten oder großen Stückzahlen bei gleichzeitig relativ niedrigen Produktpreisen ist der Aufwand in der Regel zu hoch. Zudem sind Firmware-Updates immer mit einem erheblichen Entwicklungs- und Test-Aufwand verbunden. Das Risiko, dass nach dem Update signifikante Nachbesserungen notwendig werden, ist hoch.
Soll die Anwendung die Daten gleich selbst interpretieren?
Wenn sich die „Dinge“ nicht ohne Weiteres so manipulieren lassen, dass sie direkt miteinander kommunizieren können, könnte dann nicht die Anwendung selbst die Interpretation der Daten übernehmen? Tatsächlich integrieren viele Anbieter eine entsprechende Logik in das Front-End ihrer IoT-Anwendung. Das heißt, die App beherrscht verschiedene Sprachen, interpretiert die Daten der Geräte und stellt sie sinnvoll dar.
Doch auch das funktioniert nur bedingt. Denn kommen neue Produkttypen hinzu oder erhalten bereits integrierte Produkte ein Software-Update, sind aufwendige Anpassungen in allen IoT-Anwendungen erforderlich. Diese Apps sind zudem häufig für verschiedene Betriebssysteme – wie Android, iOS und Windows – programmiert, um auf zahlreichen Endgeräten nutzbar zu sein. Dies führt zu weiteren erheblichen Anpassungsbedarfen und Fehlerquellen, da diese Anwendungen für verschiedene Betriebssysteme oft in unterschiedlichen Programmiersprachen und von getrennten Entwicklungsteams erstellt werden.
Kurz: Jede Änderung erfordert eine Aktualisierung aller Apps in den unterstützten Betriebssystemen sowie gegebenenfalls zahlreichen angeschlossenen weiteren Systemen, die zudem getestet und neu ausgerollt werden müssen. Eine Datenstandardisierung im Frontend ist daher teuer, fehleranfällig und schwerfällig.
Gute Idee: Übersetzungslogik an zentraler Stelle
Eine gute Idee ist daher das Trennen von Anwendungsoberfläche und Datenstandardisierung. Wird die Dateninterpretation an einer zentralen Stelle implementiert, kann sie mit verschiedenen Datenstrukturen umgehen und effizient alle betroffenen Anwendungen mit dem standardisierten, also in eine gemeinsame Sprache übersetzten Output, versorgen. Die IoT-Apps müssen somit von den genauen Spezifikationen der verschiedenen Produkttypen nichts wissen, da sie bereits Daten geliefert bekommen, mit denen sie umgehen können. Neue Maschinen und Geräte sind dadurch mit deutlich weniger Aufwand integrierbar.
Eine IoT-Plattform kann eine Zwischenschicht bilden,die als Vermittler fungiert. Die Daten von den Geräten, Maschinen oder Anlagen werden an die IoT-Plattform in der Cloud geschickt. Auf dieser Plattform erfolgt das Übersetzen und Aufbereiten der Daten. Anschließend werden die Daten der App und damit dem Nutzer zur Verfügung gestellt. Dieses Szenario hat den Vorteil, dass Änderungen und Updates im Prinzip nur an der Cloud-Applikation anfallen. Das Programmieren einer komplizierten Übersetzungslogik für mehrere Anwendungen und Betriebssysteme ist nicht nötig.
Die Lösung: Ein firmeninternes Standard-Datenmodell
Eine Herausforderung ist dabei das Entwickeln eines übergreifenden Datenmodells. Da Branchenstandards weitgehend fehlen und nur grobe Rahmen vorgeben, sollte jeder Hersteller ein eigenes firmeninternes Modell entwickeln. Ist es flexibel gestaltet, können jederzeit weitere Geräte und Gerätetypen integriert werden. Für neue Geräte sollte das Datenmodell als Basis dienen, so dass keine nachgelagerte Übersetzung mehr stattfinden muss. Das setzt gute interne Kommunikation und Zusammenarbeit voraus.
Noch sehen viele Anbieter den IoT-Service als eine zusätzliche, aufgesetzte Dienstleistung an. Das wird sich mittelfristig ändern, wenn das IoT zur Basis des eigentlichen Angebots wird und die Logik nicht mehr für die Geräte, sondern die Geräte für die Logik entwickelt werden.
Ein übergreifendes Datenmodell zu entwickeln erfordert viel Erfahrung. Denn es bildet die Basis für die nachhaltige Entwicklung eines IoT-Vorhabens. Viele Anwendungen arbeiten mit einer bidirektionale Kommunikation – also auch von der App über die Cloud zu den Endpunkten. Dann ist eine Übersetzung in beide Richtungen notwendig: Schreib-Operationen auf dem Standard-Datenmodell müssen wieder auf die Rohdatenstruktur der Maschinen zurück übersetzt werden können.
Problem dabei: Dies kann zu unerwünschten Rückkopplungen führen, etwa wenn ein Schreibbefehl im Datenmodell in mehrere Schreibbefehle auf der Maschine übersetzt wird. Kann einer dieser Befehle nicht ausgeführt werden, befindet sich die Maschine in einem undefinierten Zustand – zusätzliche Transaktionen und Rollbacks sind dann vonnöten.
Rechenleistung für die Datentransformation kostet Geld
Die Kosten der Übertragungs- und Cloud-Infrastruktur sind eine weitere große Herausforderung. Diese werden vor allem durch die Menge der Daten getrieben, die von den smarten Produkten in definierten Intervallen gesendet werden. Je nach Anwendungsfall kann das ein regelmäßiger „Online-Ping“ sein, der lediglich anzeigt, dass das Gerät noch verfügbar ist.
Doch auch das andere Extrem ist möglich: Hunderttausend Geräte senden jeweils mehrere Statusangaben und Messwerte pro Sekunde – schnell schwillt der Datenstrom dann stark an und wirft Fragen nach der Übertragungskapazität sowie der sicheren Verfügbarkeit der Verbindung auf. Die Last auf den Servern ist enorm, erst recht, wenn die Anwendung eine Kommunikation in Quasi-Echtzeit erfordert. Denn es müssen ja nicht nur die gesendeten Daten empfangen, übersetzt und aufbereitet, sondern auch die Steuerbefehle, die über das Front-End kommen, interpretiert und umgesetzt werden.
Zwar verspricht Cloud Computing, die Kosten für IT-Infrastruktur gegenüber On-Premise-Betrieb deutlich zu senken. Dennoch avanciert die IT-Infrastruktur bei IoT-Lösungen zu einem großen Kostenfaktor: Zum einen, weil die Services viele Daten zu verarbeiten haben. Zum anderen aber auch, weil für die IoT-Plattformen, mit denen der Service in der Cloud umgesetzt wird, Gebühren anfallen. Die Abrechnungsmodelle variieren; häufig spielt die Anzahl gesendeter Nachrichten eine Rolle. Bis zu dem Punkt, an dem die Daten weiterverarbeitet werden können, hat der IoT-Endpunkt den Hersteller bereits eine Menge Geld gekostet.
Eine sinnvolle Lösung ist daher, die anfallenden Daten bereits auf den Gateways der Geräte, Maschinen und Anlagen vorab zu sortieren und zu standardisieren. Der Vorteil ist offensichtlich: Nicht alle Daten müssen in die Cloud geschickt werden. Oder dort gleich verarbeitet werden können, weil sie bereits das gewünschte Format haben. Dafür muss das Gateway entsprechend dimensioniert sein und mehr leisten, als nur Daten weiterzuleiten. Ebenso kann – wenn der Anwendungsfall es zulässt – die Datenstandardisierung bereits im Gerät selbst erfolgen.
Branchenübergreifende Standards – ein Ausblick
Die Vielzahl der Übertragungsprotokolle und Datenformate verlangt beinahe zwangsläufig nach einer übergreifenden Standardisierung. Erste Brancheninitiativen gibt es bereits, zum Beispiel EEBUS (www.eebus.org). Mehr als 60 Unternehmen aus den Bereichen Smart Home, vernetzte Haustechnik, Elektromobilität und Energie erarbeiten darin einen offenen Standard für die herstellerunabhängige Kommunikation.
Solche Initiativen benötigen jedoch Zeit – vor allem, wenn sie auf europäischer und globaler Ebene arbeiten. Firmen entsenden ihre Vertreter in die Gremien, jeder von ihnen mit speziellen Anforderungen im Gepäck. Ein Standard kann nur der kleinste gemeinsame Nenner sein. Das führt zu einer notwendigen Vereinfachung, berücksichtigt aber eben nicht jede Ausprägung einer IoT-Lösung.
Die Folge: In den IoT-Lösungen der einzelnen Hersteller werden Daten benötigt, die über den Standard hinausgehen und die Kommunikation wieder erschweren. Zudem entwickeln sich in den Anfangsphasen neuer Technologien meist mehrere, konkurrierende Regelwerke. Wer hier auf das falsche Pferd setzt, kann schnell in ernste Bedrängnis kommen. Zu warten bis offene, branchenübergreifende Standards europa- oder gar weltweit etabliert sind, ist keine Option.
Zukunftsfähiges, eigenes Datenmodell entwickeln
Was bedeutet das konkret für Hersteller, die ihre IoT-Strategie umsetzen möchten? Sie sollten IoT-Vorhaben systematisch angehen und zügig ein zukunftsfähiges eigenes Datenmodell entwickeln – so individuell, dass es die eigenen Anforderungen abdeckt und so flexibel, dass es langfristig funktioniert und durch Adapter auf externen Standards abgebildet werden kann.
Dieses Modell lässt sich hervorragend mit einem agilen Vorgehen kombinieren – so werden IoT-Lösungen langfristig einsetzbar und mit wirtschaftlich vertretbarem Aufwand erweiterbar.Vermeintliche „Abkürzungen“ rächen sich oft schnell, beispielsweise wenn neue Produktgruppen angeschlossen oder neue Features implementiert werden sollen. Dann explodieren die Kosten und Go-live-Termine verschieben sich auf unbestimmte Zeit. Unternehmen sollten und sich rechtzeitig Gedanken über ein sinnvolles Datenmodell machen.
Dieser Artikel stammt von unserem Partnerportal ELEKTRONIKPRAXIS. Verantwortlicher Redakteur: Michael Eckstein
* Bernd Behler ist Chief Technical Officer der tresmo GmbH
(ID:45138234)