zur Übersicht

IoT – Datenübertragung bei schlechter WLAN-Verbindung

Lesedauer ca. 6 Minuten
18.08.2023

In einer vernetzten Welt, in der Geräte zunehmend miteinander kommunizieren, steht das Internet der Dinge (IoT) im Mittelpunkt dieser technologischen Revolution. In diesem Beitrag werfen unsere Xperten einen Blick auf die Herausforderungen, denen das Internet der Dinge (IoT) gegenübersteht, wenn es auf eine instabile WLAN-Verbindung im Industriekontext trifft.

Eine hervorragende Zusammenfassung des IoT stammt von McKinsey:

Das Internet der Dinge (Internet of Things, IoT) beschreibt physische Objekte, die mit Sensoren und Aktoren ausgestattet sind, die über drahtgebundene oder drahtlose Netzwerke mit Computersystemen kommunizieren – so kann die physische Welt digital überwacht oder sogar gesteuert werden.

IoT-Geräte werden in verschiedenen Branchen und Sektoren vielfältig eingesetzt. Zu den gängigen Anwendungsfällen gehören bspw. intelligente Automatisierung, industrielle Überwachung und Steuerung, Transport- und Logistikprozesse sowie Aufgaben im Energiemanagement.

Das Monitoring spielt bei vielen dieser Anwendungsfälle eine wichtige Rolle. Dabei werden die IoT-Geräte oft in der Nähe der zu überwachenden Datenquelle installiert. Diese Positionierung ist jedoch nicht immer optimal für einen starken WLAN-Empfang.

iot_erl%C3%A4uterung

Es ist zwar möglich, diese Probleme mit bspw. zusätzlichen Routern, besserer Hardware oder mobilen Netzwerkverbindungen zu beheben. Solche Maßnahmen würden jedoch die Hardwarekosten deutlich erhöhen. Die Skalierbarkeit einer IoT-Anwendung hängt stark davon ab, die Hardwarekosten unter Kontrolle zu halten. Eine produktivere Alternative würde darin bestehen, sich auf die zuverlässige Übertragung der überwachten Daten zu konzentrieren. Um eine effiziente Implementierung zu gewährleisten, müssten daher die Rechenleistung des IoT-Geräts sowie die Art der übertragenen Daten berücksichtigt werden.

Problemstellung

Wir haben verschieden Ursachen für Verbindungsprobleme vorliegen. Unsere IoT-Geräte werden in großen Hallen mit verschiedenen Metallinfrastrukturen installiert. Diese Metallinfrastrukturen können die WLAN-Signale abschwächen. Zusätzlich gibt es weitere Störfaktoren wie andere WLAN-Netzwerke, elektronische Geräte und Maschinen. Ein weiterer Faktor für mögliche Verbindungsprobleme kann die Anzahl der verbauten IoT-Geräte sein.

Herkömmliche Lösungen wie eine höhere Anzahl an Routern oder bessere Hardware sind kostspielig und können die Konnektivitätsprobleme nicht vollständig beheben. Um die Audiodaten optimal erfassen zu können und gleichzeitig die Hintergrundgeräusche auf ein Minimum zu reduzieren, müssen die IoT-Geräte an Positionen installiert werden, die allerdings suboptimal für eine gute WLAN-Verbindung sind.

Wir haben ein IoT-Gerät entwickelt, das Geräusche aufzeichnet und diese Audiodaten an ein Computersystem zur Wartungsprognose sendet. Das IoT-Gerät enthält Standard-Mikrocontroller-Komponenten wie CPU, RAM sowie verschiedene Schnittstellen. Darüber hinaus ist es mit einem Soundchip, einem Mikrofon und einer Lichtschranke ausgestattet. Das Gerät soll die Geräusche eines Förderbands oder einer Sortiermaschine aufzeichnen und die Daten über MQTT an ein Cloud-System übertragen. In der Cloud wollen wir Wartungsprognosen für die jeweiligen Teile des Förderbands bzw. Sortierers berechnen.

Die Lichtschranke hilft uns, den Start des Förderbandes bzw. Sortierers zu identifizieren und die aufgezeichneten Audiodaten dem entsprechenden Maschinenteil zuzuordnen. Das führt zwar zu zusätzlichen Daten, die in die Cloud übertragen werden müssen, diese bestehen jedoch nur aus einem gemessenen Zeitpunkt, welcher nur alle paar Minuten übertragen werden muss.

Die aufgezeichneten Rohdaten belaufen sich auf mehrere Gigabyte pro Tag. Das macht es äußerst unpraktisch, die gesamten Rohdaten an das Computersystem zu senden. Preiserwägungen sowie die vom Cloud-System auferlegten Nachrichtenbeschränkungen erfordern eine Reduktion des Datenvolumens. Das Cloud-System hat eine Begrenzung der Nachrichtengröße von 4 kB sowie eine Begrenzung für die Anzahl der Nachrichten festgelegt.

Es ist jedoch von entscheidender Bedeutung, den Verlust von Audiodaten während der Übertragung zu minimieren, da der Algorithmus für die Wartungsprognose maßgeblich auf diese Daten angewiesen ist.

Um eine kosteneffiziente Skalierbarkeit zu gewährleisten, benötigt es einen innovativen Ansatz für die Datenübertragung. Durch die Optimierung der Datenkomprimierung, die Anpassung der Übertragungsrate und das effiziente Tracking von Nachrichten sind wir in der Lage, die Herausforderungen zu meistern. Auf diese Weise liefern wir selbst in anspruchsvollen Umgebungen zuverlässig fundierte Daten für Wartungsprognosen in der Cloud.

Lösung

Angesichts der schwierigen Installationsorte unserer IoT-Geräte, der anfälligen WLAN-Verbindung und des begrenzten Budgets für MQTT-Nachrichten ist es notwendig, die zu übertragende Datenmenge zu reduzieren. Durch Anwendung der Fast Fourier Transformation (FFT) auf die aufgezeichneten Audiodaten sowie deren weitere Komprimierung konnten wir eine maßgebliche Reduktion erreichen. Es ist uns gelungen, die Daten so weit zu komprimieren, dass nur noch eine Nachricht pro Sekunde und Gerät gesendet werden muss.

Die FFT- und Kompressionsberechnungen werden ausschließlich auf einem Kern des IoT-Geräts durchgeführt. Mit nur zwei CPU-Kernen übernimmt der zweite Kern andere wichtige Aufgaben wie bspw. die Verwaltung der WLAN-Verbindung, die Erstellung von MQTT-Nachrichten für das Cloud-System, die Zeitsynchronisation sowie die Tasküberwachung. Um die Herausforderungen, die mit einer zuverlässigen Übertragung von Audiodaten verbunden sind, wirksam zu bewältigen, müssen wir die folgenden Einschränkungen und Umstände berücksichtigen:

  1. Begrenzte Geräteressourcen: Unser IoT-Gerät arbeitet innerhalb begrenzter Rechenleistung und Speichergrenzen
  2. Positionsbedingte Unterbrechungen: Regelmäßige Verbindungsunterbrechungen entstehen durch suboptimale Geräteplatzierungen in der Umgebung
  3. Überlastung des Netzwerks: Das Vorhandensein ähnlicher IoT-Geräte, die dasselbe WLAN-Netzwerk nutzen, kann zu einer Überlastung der Konnektivität beitragen
  4. Nachrichtenverfolgung: Die Minimierung unnötiger erneuter Übertragungen von erfolgreich übertragenen Daten ist für die Optimierung der Gesamteffizienz der Datenübertragung von großer Bedeutung
  5. Auswirkungen des Datenvolumens: Hohe Datenübertragungen erhöhen die Wahrscheinlichkeit von Verbindungsunterbrechungen
  6. Stabilität durch Konsistenz: Konsistente Datenübertragungen verringern die Wahrscheinlichkeit von Verbindungsabbrüchen


Während die ersten drei Punkte aufgrund von Budgetüberlegungen und Umgebungsbedingungen nicht verhandelbar sind, können wir das Design unseres Übertragungsalgorithmus nutzen, um die Wahrscheinlichkeit von Verbindungsunterbrechungen zu verringern.

Das Cloud-System bestätigt den Empfang von Nachrichten und ermöglicht so eine einfache Verfolgung der empfangenen Nachrichten auf dem IoT-Gerät. Unsere Tests zeigen, dass Bestätigungen außerhalb der Reihenfolge fast nie empfangen werden, was die Verfolgung von Nachrichten effizient macht.

Für die Zwischenspeicherung von Nachrichten verwenden wir eine Ringpufferstruktur. Diese Architektur speichert eine Reihe von Elementen fester Größe. Sie erleichtert das effiziente Einfügen und Entfernen von Daten, indem die ältesten Daten überschrieben werden, wenn der Puffer seine Kapazität erreicht. In unserem Kontext bietet dieser Puffer Platz für Daten im Umfang von 5 Minuten - eine ausreichende Größe, die sich in Tests bestätigt hat. Sollte sich dieser Puffer bei Verbindungsabbrüchen als unzureichend erweisen, deutet dies auf ein größeres Umgebungsproblem hin. In solchen Fällen ist es besser, den Datenverlust einzugestehen und eine neue Übertragung zu starten. Der Versuch, die fehlenden Daten wiederherzustellen, ist in solchen Fällen wenig erfolgversprechend.

Wir verringern die Wahrscheinlichkeit von Verbindungsunterbrechungen, indem wir einen gleichmäßigen Datenübertragungsrhythmus orchestrieren. Betrachten wir folgende Situation:

Wenn ein Sensor eine Verbindungsunterbrechung erleidet und anschließend versucht, die gesammelten Daten sofort nach der Wiederherstellung der Verbindung zu senden, erhöht sich das Risiko einer weiteren Unterbrechung der Verbindung. Diese Situation kann auch zu Konnektivitätsproblemen bei benachbarten Sensoren durch eine Überlastung des WLANS. Durch eine kontinuierliche Übertragung mit gleichbleibender Datenmenge stabilisieren wir die WLAN-Verbindungen und verringern die Wahrscheinlichkeit von Verbindungsverlusten. So werden statt einer Nachricht zwei Nachrichten nacheinander übertragen, was ein gleichmäßiges Datenvolumen sicherstellt und die Aussichten auf eine ununterbrochene Datenübertragung erhöht. Nachdem die während der Unterbrechung gespeicherten Daten übertragen wurden, sinkt die Übertragungsrate wieder auf eine Nachricht pro Sekunde.

Mit dieser Strategie zur Übermittlung unserer aufgezeichneten Daten an das Cloud-System erreichen wir einen minimalen Datenverlust und können die Daten analysieren, um zuverlässige Wartungsprognosen zu erstellen.

Fazit

Eine wirksame Lösung wird durch eine gründliche Analyse des jeweiligen Problems erreicht. In unserem Fall erkennen wir das Potenzial zur Datenkomprimierung und die konstante Natur der Datenausgabe. Unter Ausnutzung dieser Faktoren entwickeln wir einen Algorithmus für die Datenübertragung, der die Wahrscheinlichkeit von Verbindungsunterbrechungen verringert und gleichzeitig eine Überlastung des IoT-Geräts mit Aufgaben verhindert.