Oftmals basieren Internet-of-Things-Lösungen darauf, dass Sensordaten von physischen Produkten, gesammelt und ausgewertet werden. Damit können beispielsweise Steuerungen optimiert, innovative Services angeboten und Aktionen ausgeführt werden. Die Möglichkeiten erscheinen endlos. Sie reichen vom App-gesteuerten Backofen im smarten Zuhause bis hin zum Flugzeugtreibwerk mit optimiertem Wartungszyklus. Doch ohne Datennormalisierung gelangt man schnell an Grenzen…
All die einleuchtenden Visionen scheinen oftmals nur in der Theorie möglich… wie bereits in den Beiträgen „Internet of Things: wenn der Kühlschrank mit dem Tumbler“ oder „Industrie 4.0“ angetönt, scheitern viele Visionen an den unterschiedlichen Datenarchitekturen bzw. an noch fehlenden Standards.
Babylonisches Datengewirr
In der Realität sprechen Endpunkte, Infrastruktur und Endgerät-Applikation nur selten ein und dieselbe ‚Datensprache‘. IoT-Projekte rüsten in einem ersten Schritt oftmals bestehende Komponenten mit einem externen Gateway nach. Diese können dann kontinuierlich Daten auslesen und/oder mitgeteilt bekommen. Diese Daten werden anschliessend an den IoT-Endpunkt in der Cloud weitergeleitet. Würden alle Objekte die gleichen internen Datenstrukturen nutzen, wäre es ein Einfaches, über verschiedene Maschinentypen hinweg zu „smarten Daten“ zu kommen und Aktionen via Data Analytics zu initiieren. Die Praxis sieht jedoch anders aus: von nahezu jedem Kunden-Endgeräte bis hin zu den produzierenden Maschinentypen, nutzen praktisch alle eine eigene Daten-Architektur. Das heisst, sie sprechen somit im übertragenen Sinn eine andere „Sprache“. Eine gemeinsame Sprache ist aber zwingend nötig, um Internet of Things Anwendungen erst zu ermöglichen.
Babelfisch der Datenmodelle
Um sich dem Bild von Douglas Adams „Per Anhalter durch die Galaxie“ zu bedienen, trifft man bei IoT-Projekten sprichwörtlich auf ein ähnliches Sprachengewirr wie einst der Protagonist Arthur Dent. Was beim Jugendroman einst der Sprachübersetzungs-Fisch war, ist heute ein intelligentes Datenkonzept. Dieses soll neben dem Erfassen und Übertragen auch das Auswerten von Sensordaten berücksichtigen. Letzteres macht die Logik des Ganzen aus – jedes Gerät oder die eingesetzten Applikationen müssen mit den bereitgestellten Daten etwas anfangen können.
Viele Wege führen nach Rom
Um IoT-Projekte erfolgreich umzusetzen, müssen Daten verschiedener Quellen an einen IoT-Endpunkt in der Cloud weitergeleitet und dort verarbeitet werden. Dieser Endpunkt bringt die Intelligenz ins System. Doch was ist der richtige Weg, um strukturierte und miteinander integrierbare Daten zu gewinnen? Grundsätzlich gibt es verschiedene Wege:
- Ein firmenweites (eigenes) Datenmodell: Eine naheliegende Lösung zur Vereinheitlichung der Sprache wäre ein Firmware-Update aller Geräte. Oftmals scheitert dieser Weg jedoch daran, dass die betroffenen Geräte und Maschinen nicht remote updatebar sind. Ein Techniker müsste dies für jedes Produkt vor Ort erledigen. Weiter sind Firmware-Updates immer mit einem erheblichen Entwicklungs- und Test-Aufwand verbunden. Das Risiko, dass nach dem Update signifikante Nachbesserungen notwendig werden, ist hoch. Das Einführen eines einheitlichen, firmenweiten Datenmodells ist also eher im Industrial Internet of Things von Firmen mit vorwiegend eigenentwickelten Objekten im Netzverbund sinnvoll. Zudem sollte es nur dann angewendet werden, wenn möglichst wenig verschiedene Objekttypen eingesetzt werden und keine End-Kundenschnittstellen im Verbund sind.
- Dezentrale Sprachübersetzung: 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 heisst, die Gateways der verschiedenen Objekte selbst beherrschen verschiedene Sprachen, interpretieren die Daten der Geräte und stellen sie sinnvoll dar. Doch auch das funktioniert nur bedingt. Denn kommen neue Produkttypen hinzu oder erhalten bereits integrierte Produkte ein Software-Update, sind aufwändige 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.
- Zentrale Datennormalisierung: 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.
Normalisierung dank einem Object Management System
Bei komplexen mit unterschiedlichen Objekttypen ausgerüsteten IoT-Ökosystemen, kann eine zentrale Plattform für Datennormalisierung eine Art Zwischenschicht bilden. Diese nennt man Object Management System und es fungiert quasi als Vermittler: Die Daten von den Geräten, Maschinen oder Anlagen werden an in die Cloud geschickt und normalisiert. Anschliessend werden die Daten der App und damit dem Nutzer wieder 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.
Branchenübergreifende Normalisierungskonzepte
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. Ein Standard kann nur der kleinste gemeinsame Nenner sein und hilft aktuellen IoT-Pionieren noch nicht essentiell weiter. Daher sind Eigenentwicklungen von (zukunftsfähigen) Datenmodellen in den Unternehmen leider noch zwingend. Ein übergreifendes Datenmodell zu entwickeln erfordert aber viel Erfahrung. Denn es braucht in den meisten Fällen eine bidirektionale Kommunikation. D.h. eine Übersetzung in beide Richtungen muss sichergestellt sein: Schreib-Operationen auf dem Standard-Datenmodell müssen wieder auf die Rohdatenstruktur der Maschinen zurückübersetzt werden können.
In eigener Sache: Sie haben sich für 2018 vorgenommen, ein IoT-Projekt anzugehen und interessieren sich für das Thema OMS? Zögern Sie nicht, unser Portal „ServiceFox“ kostenlos zu testen: das Portal mit 100% „Brain inside“. Weitere Informationen finden sie hier.