Abb. 1 IoT-Gateways als zentrale Schnittstelle zwischen Geräten und Systemen.Im Internet der Dinge stellen IoT-Gateways eine Schnittstelle zwischen alten und neuen Sensoren, Geräten, Netzwerken und Knoten bereit.
Was sind IoT-Gateways?
In der Telekommunikation besteht der Hauptzweck eines Gateways darin, eine Brücke zwischen verschiedenen Arten von Kommunikationstechnologien zu schlagen. Diese können sich hinsichtlich Verbindungsarten, Schnittstellen oder Protokollen unterscheiden. Beispielsweise verbindet Ihr Heim-Internet-Gateway Ihr lokales Netzwerk (LAN) mit Ihrem Internetdienstanbieter (ISP). Dieses Gateway verbindet das Weitverkehrsnetz (WAN) des ISPs über TCP/IP mit Ihrem LAN. Das IoT-Gateway folgt demselben Prinzip der Überbrückung der Kommunikation für verschiedene Technologien. Es schlägt eine Brücke zwischen den IoT-Sensoren/-Aktoren und dem Internet. Das IoT-Gateway aggregiert bei Bedarf Daten, übersetzt die Protokolle der Sensoren und verarbeitet die Daten vor der Übertragung.
Abb. 2 IoT-Gateways als Brücke zwischen Dingen und dem Internet.
Das IoT-Gateway übernimmt die gesamte Kommunikation zwischen den Sensoren, Geräten im Feld und Remote-Verbindungen wie dem Internet, Anwendungen oder Benutzern. Bei dieser Kommunikation sammeln die IoT-Gateways die Daten lokal und senden sie dann normalerweise über MQTT oder AMQP an ein Cloud-System wie Azure oder AWS.
Wofür werden IoT-Gateways benötigt?
IoT-Gateways bringen im Rahmen des Internets der Dinge vielfältige Vorteile mit sich. Die folgenden drei Punkte fassen die Kernfunktionen zusammen.
Abb. 3 Zentrale Kernfunktionen von IoT-Gateways
Interoperabilität
Ausgestattet mit einer Vielzahl an Schnittstellen, Protokollen und Standards, etwa für die lokale Installation (Edge) oder die Datenfernübertragung über Fest- und Mobilfunknetze (Connectivity), vereinfachen IoT-Gateways die Zusammenarbeit vieler verschiedener alter und neuer Geräte in einem IoT-Szenario. Sie übermitteln die gesammelten Daten ins Internet oder an eine zentrale IoT-Plattform bzw. Cloud-Architektur. Auf diese Weise reduzieren sie die technische Komplexität der Systeme und halten die notwendigen Investitionskosten gering.
Konzentrator
In einem IoT-System werden mehrere Sensoren oder Geräte an ein IoT-Gateway angeschlossen, welches diese mit geeigneten Protokollen über Fest- und/oder Mobilfunkverbindungen im Feld zu einem Datenstrom vernetzt und transportiert. Durch diese Datenkonzentration werden sowohl wirtschaftliche Effekte, z.B. durch die Verwendung nur einer SIM-Karte und eines kostenintensiven Hardwaremoduls für die Mobilfunkverbindung, als auch Effekte für die IT-Sicherheit erzielt, da über den IP-Adressraum nur das IoT-Gateway erreichbar ist – nicht jedoch alle Geräte oder Sensoren.
Lokale Datenverarbeitung
Auch im Rahmen der lokalen Datenvorverarbeitung spielt ein IoT-Gateway eine zentrale Rolle. Dabei geht es etwa um die Filterung von Daten, die nur bei relevanten Veränderungen, etwa bei Erreichen von Grenzwerten, übermittelt werden – und nicht kontinuierlich. Dies führt zu einer deutlichen Reduzierung der Datenmenge und der damit verbundenen Betriebskosten. Auch für das Auslösen einer direkten, lokalen Aktion ohne bestehende Verbindung zur zentralen Plattform ist diese Funktion sinnvoll. In diesem Zusammenhang kommen in der Edge zunehmend vollwertige Analyseprogramme als sogenannte „Stream Analytics“ zum Einsatz, die die definierten Anforderungen an Rechen- und Speicherleistung auslösen. Auch die Anbindung an Public-Cloud-Systeme wird häufig über entsprechende Softwareprogramme ermöglicht, die auf dem Gateway betrieben werden. Darüber hinaus dienen Gateways mitunter auch als „Trust Points“, also als Kommunikationsanker in der Edge. Damit tragen sie zu einer höchstmöglichen Sicherheit der IoT-Cloud-Kommunikation bei.
IoT-Gateways mit Node-RED
Es gibt verschiedene Möglichkeiten, ein IoT-Gateway zu implementieren. So ist es beispielsweise einfach, mit Node-RED , einer Open-Source-Software, und einem Raspberry Pi ein IoT-Gateway selbst zu bauen. Der Raspberry Pi stellt den notwendigen Rechner und Node-RED die Softwareschnittstelle bereit, um die Protokolle der Sensoren und Aktoren im Feld anzusprechen bzw. auszulesen und eine Kommunikation herzustellen. Die innovative Low-Code-Plattform Node-RED wurde entwickelt, um IoT-Anwendungen, Datenerfassung, lokale Verarbeitung und Cloud-Integration ohne Programmierkenntnisse zu realisieren. Mit Node-RED ist es einfach, eine Verbindung zwischen alten und neuen industriellen Technologien im Sinne des IoT (Internet of Things) herzustellen. Es bietet einen browserbasierten Flow-Editor, der Flows mithilfe einer Vielzahl von in der Palette verfügbaren Netzwerkknoten einfach verbindet. Ein Knoten verfügt immer über mindestens einen Eingang oder Ausgang. Zwischen den Knoten werden dann Nachrichten gesendet, die auf vielfältige Weise verarbeitet oder manipuliert werden können. So können beispielsweise die Messdaten eines einfachen Temperatursensors in das gewünschte Datenformat formatiert und dann über MQTT an eine Cloud-Architektur übertragen werden. Das folgende Bild zeigt eine schematische Übersicht. Auf der linken Seite sind die Knoten dargestellt, die per Drag & Drop in das mittlere Feld gezogen und dann logisch miteinander verbunden werden.
Abb. 4 Low-Code-Plattform Node-RED
Node-RED eignet sich besonders für die Entwicklung von Datenerfassungs- und Vorverarbeitungslogiken. Die vorgefertigten Komponenten für verschiedene Kommunikationsprotokolle und allgemeine Datenverarbeitungsfunktionen machen die Anwendung noch benutzerfreundlicher. Das visuelle Entwicklungstool Node-RED eignet sich perfekt für den Einsatz in einer industriellen IoT-Umgebung.
IoT-Infrastrukturen in der realen Welt sind mit einer Vielzahl von Herausforderungen und Einschränkungen verbunden. Daraus ergeben sich hohe Anforderungen an den Betrieb von IoT-Gateways, z. B. an die Rechenleistung, das Betriebssystem oder die Betriebstemperatur der Hardware. Aus diesem Grund eignet sich die Implementierung eines IoT-Gateways mit einem Raspberry Pi nur in kleineren IoT-Umgebungen in Form eines Prototyps. Für große Rollouts sollte man auf einen Industriecomputer mit gehärtetem Linux-Betriebssystem setzen. Diese sind speziell für den Einsatz in IoT-Szenarien evaluiert und bieten durch eine entsprechende Hard- und Softwarelösung die Voraussetzungen für einen langlebigen Dauerbetrieb. Bei dieser Form der Implementierung eines IoT-Gateways kann Node-RED einfach als Docker-Container geladen und verwendet werden.
IoT-Gateways als Schlüsselelement in IoT-Ökosystemen
In einer Welt ohne Gateways könnten unsere Geräte nicht mit dem Internet oder externen Netzwerken kommunizieren. IoT-Gateways erfüllen die Standardaufgabe eines Routers, nämlich das Weiterleiten von Paketen in Multi-Hop-Umgebungen. Sie können aber auch verschiedene Geräte mit unterschiedlichen Technologien verbinden.
Abb. 5 IoT-Gateways mit Node-RED und Azure IoT Edge Cloud-Integration
DasIoT-Gateway ist das zentrale Element in IoT-Ökosystemen. Als Kommunikationsbrücke verbindet es Sensoren mit dem Internet, Geräte mit einer nativen Cloud-Anwendung und vieles mehr. Es hilft, die Latenz zu reduzieren und die Kapazität am Rand zu verbessern, indem es Rohdaten vorverarbeitet. Das IoT-Gateway bietet auch eine zusätzliche Sicherheitslinie in diesen anfälligen Umgebungen. Die OpenSource-Software Node-RED ermöglicht es, eigene IoT-Projekte ohne große Programmierkenntnisse in die Tat umzusetzen. Dabei sollte darauf geachtet werden, den passenden Computer für die Anwendung auszuwählen. Wenn Sie sich in einer Prototypumgebung befinden, reicht ein Raspberry Pi aus. Sobald es um größere und anspruchsvollere IoT-Implementierungen geht, sollte ein Industriecomputer verwendet werden.