|
<< Click to Display Table of Contents >> Navigation: Komponenten > IoT > MQTT > MQTT Bridge [x200] |
Die MQTT-Bridge dient dazu, Informationen zwischen zwei, meist örtlich getrennten MQTT-Brokern auszutauschen. Die Funktionsweise der Bridge entspricht zweier MQTT-Clients. Im Broker kann der Zugriff auf Topics unter "Erlaubte Clients" entsprechend eingestellt werden.
Datenpunkte der Komponente
Name |
Typ |
Funktion |
|---|---|---|
Diagnose [Text] |
Ausgang |
Hier werden Fehlertexte ausgegeben. Diese können z.B. mit der Komponente "Protokollfenster" angezeigt werden. Verbunden mit dem Eingang [Signal] des Protokollfensters werden dort die Diagnoseinformationen angezeigt. |
Erweiterte Diagnose |
Eingang |
(De)Aktiviert die erweiterte Debug-Ausgabe. Verbunden mit dem Eingang [Signal] des Protokollfensters werden dort die Diagnoseinformationen angezeigt. |
Treiber An/Aus |
Bidirektional |
(De)Aktivieren der Komponente. |
Uptime Bridge |
Ausgang |
Laufzeit, wie lange die Bridge-Verbindung zwischen 2 Brokern online ist. |
Uptime Client A |
Ausgang |
Laufzeit, wie lange die Broker A-Verbindung online ist. |
Uptime Client B |
Ausgang |
Laufzeit, wie lange die Broker B-Verbindung online ist. |
Verbindungsstatus Bridge |
Ausgang |
Gibt den derzeitigen Verbindungsstatus der Bridge als An/Aus-Signal aus. |
Verbindungsstatus Client A |
Ausgang |
Gibt den derzeitigen Verbindungsstatus von Client-A als An/Aus-Signal aus. |
Verbindungsstatus Client B |
Ausgang |
Gibt den derzeitigen Verbindungsstatus von Client-B als An/Aus-Signal aus. |
Eigenschaften der Komponente
Name |
Standard |
Funktion |
|---|---|---|
Kanäle |
0 |
Hier wird das zu übertragende Topic eingetragen. Wird nur # eingetragen, werden alle Topics weiter geleitet. Beispiele für Wildcards, siehe unten. |
Verbindung A |
... |
Editor zum Angeben der Verbindungsdaten zum MQTT Broker A. |
Verbindung B |
... |
Editor zum Angeben der Verbindungsdaten zum MQTT Broker B. |
Treiber An/Aus |
|
(De)Aktivieren der Komponente |
Verbindung A/B (zum Broker):
Bezeichnung |
Funktion |
|---|---|
Server URL/IP |
Angabe des abzufragenden MQTT Servers (Broker). |
Port |
Angabe des Kommunikations-Port (1883 oder 8883 (TLS)). Dieser Port muss in der Firewall eingetragen werden. |
Benutzer / Passwort |
Für die Authentifizierung werden der Benutzername und das Passwort benötigt (leer lassen für anonymen Zugang). |
Timeout |
Kommunikationstimeout in Sekunden. |
Client ID |
Bezeichnung für den Client (diese EisBär-Komponente). Dieser darf nur einmal verwendet werden. Wird die Komponente kopiert, muss eine neue ID generiert werden. Die ID muss mindestens 10 Zeichen lang sein. |
Websocket |
Optional kann angegeben werden, ob die Verbindung über Websocket aufgebaut werden soll. |
TLS |
Abhängig vom Server kann die Verbindung auch mit TLS verschlüsselt werden. Damit werden die Felder für "Alle Zertifikate akzeptieren" und "Server-Zertifikat" aktiv. |
Alle Zertifikate akzeptieren |
Der Client akzeptiert alle Server-Zertifikate. |
Server-Zertifikat |
Pfadangabe des Server-Zertifikates, welches für die Kommunikation verwendet werden soll. Beispiel: C:\Program Files (x86)\Alexander Maier GmbH\EisBär SCADA 3.0\mqttbroker.cer |
Wildcard:
In MQTT werden Wildcards verwendet, um mehrere Topics gleichzeitig anzusprechen. Es gibt zwei Hauptarten von Wildcards: den Einzelplatz-Wildcard (+) und den Mehrplatz-Wildcard (#).
1. Einzelplatz-Wildcard (+)
Wird verwendet, um genau einen Platz in einem Topic zu ersetzen. Der + Wildcard ersetzt genau einen "Level" in der Topic-Struktur.
Beispiel:
Topic: home/+/temperature
Dies würde alle Topics abdecken, die dem Muster home/{irgendein Platz}/temperature entsprechen, wie zum Beispiel:
home/livingroom/temperature
home/bedroom/temperature
2. Mehrplatz-Wildcard (#)
Wird verwendet, um alle verbleibenden Levels eines Topics zu ersetzen. Der # Wildcard steht für alle nachfolgenden "Levels" im Topic.
Beispiel:
Topic: home/+/temperature/#
Dies würde alle Topics abdecken, die mit home/{irgendein Platz}/temperature beginnen und beliebig viele weitere Levels enthalten, z.B.:
home/kitchen/temperature/sensor1
home/bedroom/temperature/humidity
Hinweise:
•Der # Wildcard muss immer am Ende eines Topics verwendet werden und darf nur einmal auftreten.
•Der + Wildcard kann an beliebiger Stelle im Topic verwendet werden, aber es wird nur ein Level ersetzt