© Excellent backgrounds/Shutterstock.com
Java Magazin
Teil 2: Aufbau des Smart Gateways und seiner Logik

Vermittlungsinstanz einer IoT-Architektur


In einer vereinfachten Sicht umfasst eine IoT-Architektur drei Komponenten: Sensoren, die Daten erfassen, ein Gateway, das die Daten empfängt und für die Weiterleitung vorbereitet sowie eine zentrale Instanz, in der Daten eingehend analysiert und für Steuerungsaufgaben aufbereitet werden. Während sich der erste Teil dieser Miniserie schwerpunktmäßig mit den Sensoren befasste, geht es im zweiten Teil um die Abläufe und die inhaltliche Logik im Gateway.

Artikelserie

Teil1 : Einführung modulare IoT-Architektur

Teil 2: Aufbau des Smart Gateways und seiner Logik

Dem Bausteinprinzip folgend, besteht ein Smart Gateway in Form eines Raspberry Pi aus den folgenden drei Elementen: Raspbian [1] als Betriebssystem, Docker-Containern, um die verschiedenen, auf dem Gateway ablaufenden Funktionalitäten voneinander zu isolieren, und Red Hat JBoss Fuse als Komponente des Gateways, die den MQTT-Broker für die Sensoren bereitstellt. Sie wandelt darüber hinaus die Nachrichten von einem nativen in ein generisches XML-Format um und bietet ein Content-based Routing, das die Nachrichten an die vorgesehenen zentralen Instanzen weiterleitet – seien es ein On-Premise-Rechenzentrum oder ein Cloud-Anbieter. Während es im ersten Teil der Serie um die Konfiguration des Smart Gateways ging, stehen diesmal die Implementierungsdetails im Vordergrund. Dazu gehören der Empfang von CSV-basierten Nachrichten via MQTT, die Umwandlung der Daten vom CSV- ins XML-Format und deren Erweiterung um Metadaten aus dem MQTT Topic. Ein MQTT Topic bündelt Nachrichten zu einem bestimmten Thema. Das können beispielsweise die durch einen Sensor gemessenen Temperaturen oder andere thermodynamische und mechanische Größen sein. Zur weiteren detaillierten Analyse werden die aufbereiteten Nachrichten via JMS an ein Rechenzentrum vor Ort oder in der Cloud weitergeleitet (Abb. 1).

steiner_container_1.tif_fmt1.jpgAbb. 1: Die Daten werden am Device Tier erfasst, am Gateway Tier aufbereitet und dann an das Datacenter Tier weitergeleitet (Quelle: Red Hat)

Die inhaltliche Logik des Smart Gatways lässt sich mit einer Apache Camel Route [2] in Spring XML erstellen. Apache Camel ist ein leichtgewichtiges Open-Source-Integrationsframework, das es ermöglicht, Systeme mit verschiedenen Schnittstellentechnologien und -formaten miteinander zu verknüpfen. Apache Camel übernimmt die Konvertierung der Nachrichten und sorgt für deren Routing zwischen den Systemen. Um die Nachrichten zu transformieren, anzureichern oder neu anzuordnen, stehen unterschiedliche We...

Java Magazin
Teil 2: Aufbau des Smart Gateways und seiner Logik

Vermittlungsinstanz einer IoT-Architektur

In einer vereinfachten Sicht umfasst eine IoT-Architektur drei Komponenten: Sensoren, die Daten erfassen, ein Gateway, das die Daten empfängt und für die Weiterleitung vorbereitet sowie eine zentrale Instanz, in der Daten eingehend analysiert und für Steuerungsaufgaben aufbereitet werden. Während sich der erste Teil dieser Miniserie schwerpunktmäßig mit den Sensoren befasste, geht es im zweiten Teil um die Abläufe und die inhaltliche Logik im Gateway.

Patrick Steiner


In einer vereinfachten Sicht umfasst eine IoT-Architektur drei Komponenten: Sensoren, die Daten erfassen, ein Gateway, das die Daten empfängt und für die Weiterleitung vorbereitet sowie eine zentrale Instanz, in der Daten eingehend analysiert und für Steuerungsaufgaben aufbereitet werden. Während sich der erste Teil dieser Miniserie schwerpunktmäßig mit den Sensoren befasste, geht es im zweiten Teil um die Abläufe und die inhaltliche Logik im Gateway.

Artikelserie

Teil1 : Einführung modulare IoT-Architektur

Teil 2: Aufbau des Smart Gateways und seiner Logik

Dem Bausteinprinzip folgend, besteht ein Smart Gateway in Form eines Raspberry Pi aus den folgenden drei Elementen: Raspbian [1] als Betriebssystem, Docker-Containern, um die verschiedenen, auf dem Gateway ablaufenden Funktionalitäten voneinander zu isolieren, und Red Hat JBoss Fuse als Komponente des Gateways, die den MQTT-Broker für die Sensoren bereitstellt. Sie wandelt darüber hinaus die Nachrichten von einem nativen in ein generisches XML-Format um und bietet ein Content-based Routing, das die Nachrichten an die vorgesehenen zentralen Instanzen weiterleitet – seien es ein On-Premise-Rechenzentrum oder ein Cloud-Anbieter. Während es im ersten Teil der Serie um die Konfiguration des Smart Gateways ging, stehen diesmal die Implementierungsdetails im Vordergrund. Dazu gehören der Empfang von CSV-basierten Nachrichten via MQTT, die Umwandlung der Daten vom CSV- ins XML-Format und deren Erweiterung um Metadaten aus dem MQTT Topic. Ein MQTT Topic bündelt Nachrichten zu einem bestimmten Thema. Das können beispielsweise die durch einen Sensor gemessenen Temperaturen oder andere thermodynamische und mechanische Größen sein. Zur weiteren detaillierten Analyse werden die aufbereiteten Nachrichten via JMS an ein Rechenzentrum vor Ort oder in der Cloud weitergeleitet (Abb. 1).

steiner_container_1.tif_fmt1.jpgAbb. 1: Die Daten werden am Device Tier erfasst, am Gateway Tier aufbereitet und dann an das Datacenter Tier weitergeleitet (Quelle: Red Hat)

Die inhaltliche Logik des Smart Gatways lässt sich mit einer Apache Camel Route [2] in Spring XML erstellen. Apache Camel ist ein leichtgewichtiges Open-Source-Integrationsframework, das es ermöglicht, Systeme mit verschiedenen Schnittstellentechnologien und -formaten miteinander zu verknüpfen. Apache Camel übernimmt die Konvertierung der Nachrichten und sorgt für deren Routing zwischen den Systemen. Um die Nachrichten zu transformieren, anzureichern oder neu anzuordnen, stehen unterschiedliche We...

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang