Grundkonzepte
Das connect-Gateway ist eine elegante Lösung für ein komplexes Problem. Es ist in seinen Möglichkeiten extrem flexibel und bietet viele Freiheitsgrade, um heterogene Systemumgebungen zu vernetzen. Dies erreicht das connect-Gateway durch ein paar einfache, aber mächtige Konzepte. Hat der Benutzer diese Grundkonzepte verinnerlicht, ist er in der Lage, selbst komplexeste Szenarien der MDE zielgerichtet und in kurzer Zeit zu realisieren.
Das connect-Gateway vermittelt Daten von Maschinen und Anlagen zu anderen IT-Systemen. Abstrakter sprechen wir von der Datenvermittlung zwischen Endpoints. Ein Endpoint kann ein Industrie PC, eine SPS, ein Embedded Device, ein Desktop-PC, ein Server, ein Cluster oder eine ganze Cloud sein. Grundaufgabe des connect-Gateways ist es, Daten zwischen den Endpoints zu vermitteln und auszutauschen.
Jeder Endpoint kommuniziert über ein (oder mehrere) Protokolle (Protocols) über die Daten entweder an das connect-Gateway gesendet oder von ihm empfangen werden können. Werden Daten an das connect-Gateway gesendet, sprechen wir beim Datenfluss von Daten-Produzent (Producer), werden Daten vom connect-Gateway bezogen, sprechen wir von Daten-Konsument (Consumer). Ein Endpoint kann gleichzeitig Producer- bzw. Consumer-Schnittstellen anbieten.
Die Aufteilung in Endpoints mit Protokollen und Datenfluss macht es möglich, das connect-Gateway extrem flexibel einzusetzen. Es ist zum Beispiel möglich, mit einem Producer Daten über das HTTP Protokoll zum connect-Gateway zu übertragen und diese Daten dann an einen Consumer über das MQTT Protokoll weiterzugeben. Alle Kombinationen aus unterstützten Protokollen und Datenflussrichtung sind möglich.
Je nach verwendetem Protokoll gibt es protokoll-spezifische Unterscheidungen, um zum Beispiel im Falle von HTTP festzulegen, ob sich der Consumer wie ein HTTP-Client oder HTTP-Server verhält. Die protokoll-spezifische Rolle http-Client oder -Server ist unabhängig von der Datenflussrichtung zu betrachten. So kann zum Beispiel ein HTTP-Server auch als Producer definiert sein und umgekehrt.
Mit Protokoll und Datenflussrichtung ist die Art des Endpoints definiert. Hinzu kommt nun noch die Repräsentation der Daten, die über das Protokoll übertragen werden. Das connect-Gateway unterstützt eine Reihe von Encodern und Decodern zum Beispiel für Formate wie XML oder JSON. Es werden aber auch Byte-Ströme unterstützt, so dass man auch Binärprotokolle mit dem connect-Gateway verarbeiten kann. Ein Beispiel wäre etwa die Verwendung von MQTT in Kombination mit Binärdaten.
Das connect-Gateway normiert alle eingehenden Daten, indem diese auf die interne Struktur von Datenpunkten in einem Dataspace abgebildet werden. Die Abbildung nennen wir Mapping und sie definiert, welche Daten aus dem vorhandenen Format extrahiert und als Datenpunkte im Dataspace abgelegt werden. Im Dataspace werden die Datenpunkte strukturiert abgelegt und können aus diesem wieder ausgelesen werden.
Das connect-Gateway nimmt also Daten von Producern entgegen, decodiert das Format und wendet das Mapping an, um die Datenpunkte zu setzen. Ein Consumer liest entsprechend die Datenpunkte aus dem Dataspace. Das connect-Gateway konvertiert hierzu die geforderten Daten über einen Encoder und entsprechendes Mapping in das Format, das vom Consumer erwartet wird.
Das Gateway speichert keine Daten auf Dauer, sondern hält nur die aktuellen Werte im Hauptspeicher. Sobald ein neuer Wert für einen Datenpunkt gesetzt wird, wird der alte Wert verdrängt. So stehen im Dataspace immer nur die aktuellen Werte für jeden Datenpunkt.
Durch den Einsatz des Dataspace als zentrale und normierte Ablage aller Datenpunkte werden die Producer vollständig unabhängig von den Consumern. Jede Kombination des Datenflusses ist nun möglich und frei konfigurierbar. So können Daten von unterschiedlichen Endpoints auch gemischt werden und an einer neuen Schnittstelle gemeinsam ausgegeben werden.

Da Consumer in diesem Datenfluss ausfallen oder kurzzeitig nicht erreichbar sein können, kann das Gateway diese Daten für den Consumer auf Wunsch puffern. Das Verhalten für den Puffer und dessen Größe ist dabei je nach Anwendungsfall konfigurierbar. So kann das Gateway sicherstellen, dass ein Consumer bei kurzzeitigen Ausfällen keine Daten verpassen wird und es zu keinem Datenverlust kommt.
Das extrem flexible System des connect-Gateways ermöglicht eine unbegrenzte Konstellation von Datenflüssen bei gleichzeitiger Kontrolle. Administratoren sehen auf einen Blick welche Daten von welchen Endpoints an andere Endpoints übertragen werden.
Auch die Sicherheit der Daten ist gewährleistet. Wenn es das Protokoll unterstützt, kann jeder Endpoint über individuelle Zugangsdaten geschützt werden, so dass Unbefugte keinen Zugriff erlangen können. Ebenso können Daten über verschlüsselte Verbindungen übertragen werden, so dass das Mitlesen von Daten unmöglich wird.
Mit diesen wenigen Grundkonzepten ist es möglich, jede Maschine oder Anlage über das connect-Gateway anzusprechen und die Maschinendaten mit anderen Systemen zu integrieren.