Zum Hauptinhalt springen

MQTT Plug-in Konfiguration

Diese Seite beschreibt die Konfiguration der MQTT-Brokeranbindung. Die eigentliche Nachrichtenverarbeitung erfolgt anschließend über das MQTT-Transferobjekt, MQTT-Subscribe oder das MQTT Storage Read-Transferobjekt.

Einordnung

Das MQTT-Plug-in stellt die Verbindung zum Broker bereit. Wenn Sie MQTT-Nachrichten empfangen und damit Flows auslösen möchten, verwenden Sie zusätzlich MQTT-Subscribe. Für das Veröffentlichen von Nachrichten verwenden Sie das MQTT-Transferobjekt.

MQTT-Plug-in, Reiter Router configuration


Routereinstellungen

FeldBeschreibung
NameVergeben Sie der MQTT-Anbindung einen eindeutigen Namen.
CloudprofilAuswahl des gewünschten Profils: MQTT Standard, AWS, Azure IoT, Wago Cloud.

Mit Verbindung testen kann die aktuelle Verbindung überprüft werden.

Cloudprofile

Die Cloudprofile erweitern die Standardkonfiguration um zusätzliche Reiter:

info

Weitere Informationen zur Verwendung von MQTT und den Cloud-Profilen finden Sie in unserer Wissensdatenbank:

https://www.opc-router.de/knowledge-base/


Verbindungsoptionen

MQTT-Plug-in, Verbindungsoptionen

Verbindungsdetails

FeldBeschreibung
BrokeranbindungGeben Sie die Adresse des MQTT-Brokers an. Im Screenshot ist beispielhaft mosquitto eingetragen.
PortTCP-Port des Brokers. Bei aktiviertem Enable TLS/SSL ist typischerweise 8883 vorbelegt; ohne TLS/SSL wird in der Regel 1883 verwendet.
MQTT-VersionAuswahl der Protokollversion. Im Screenshot ist beispielhaft MQTT 3.1.1 ausgewählt.
Quality of Service-TypAuswahl des Standard-QoS: 0 – höchstens einmal, 1 – mindestens einmal oder 2 – genau einmal.
Performance

Für Details zu Latenzzeiten, Netzwerk-Roundtrips (RTT) und der internen Synchronisierung bei Publish-Vorgängen siehe MQTT Performance.

Authentifizierung

FeldBeschreibung
BenuzternameBenutzername zur Anmeldung am Broker.
PasswortAuswahl eines Secrets. Über die Schaltflächen kann ein Secret erstellt, bearbeitet oder gelöscht werden.
Client-IDEindeutige Client-ID. Unterstützt die Platzhalter ${hostname}, ${hostname:lower}, #[INSTANCE], #[INSTANCE:<numerischer Wert>] und #[RAND:<numerischer Wert>]. Damit können Sie beim Verbindungspooling oder bei der Projektsynchronisierung automatisch unterschiedliche IDs pro Instanz erzeugen. Unter dem Eingabefeld wird eine Vorschau der daraus erzeugten Client-ID angezeigt.
SchaltflächenRandom generiert eine zufällige ID. Client-ID Template fügt das Standard-Template in das Eingabefeld ein.

TLS/SSL aktivieren

FeldBeschreibung
TLS/SSL aktivierenAktiviert die verschlüsselte Verbindung zum Broker. Die TLS/SSL-Einstellungen darunter sind nur bei eingeschalteter Option bearbeitbar.
SSL ProtokolleAuswahl der unterstützten Protokolle, zum Beispiel TLSv1, TLSv1.1, TLSv1.2 oder TLSv1.3. Mehrere Protokolle können zugelassen werden.
ClientzertifikatAuswahl eines Clientzertifikats für die Anmeldung am Broker. Über die Schaltflächen können Zertifikate entfernt, hinzugefügt, angezeigt oder gelöscht werden.
Vertrauenswürdige ZertifikateFestlegung, welche Zertifikate akzeptiert werden, zum Beispiel Router, Windows oder All (unsafe).

Storage

FeldBeschreibung
MQTT-Datenspeicherung aktivierenWenn aktiviert, wird pro Topic die jeweils letzte empfangene MQTT-Nachricht auf Festplatte gespeichert. Diese Funktion ist erforderlich, um das MQTT Storage Read Transferobjekt nutzen zu können.
PatternFür jedes hinzugefügte Topic-Muster wird eine Subscription erstellt. Unterstützt die Wildcards + und #.
HinweisFreitext zur Beschreibung des Zwecks oder Ursprungs eines Topics.
Funktionsweise

Wenn die MQTT-Datenspeicherung-Funktion aktiviert ist, erstellt der OPC Router für alle eingetragenen Topics automatische Subscriptions. Die empfangenen Nachrichten werden persistent gespeichert, jedoch immer nur als letzte Nachricht pro Topic. Ältere Werte werden überschrieben.

Über das MQTT Storage Read (Lesen)-Transferobjekt können diese gespeicherten Werte gezielt wieder ausgelesen werden.


First Will

FeldBeschreibung
First Will aktivierenAktiviert das Senden eines First-Will beim Verbindungsaufbau.
Retain First WillBroker speichert Nachricht zur späteren Zustellung.
TopicZiel-Topic für den First Will.
PayloadInhalt der First Will Nachricht.
Quality of ServiceServicequalität (0, 1 oder 2).

Last Will

FeldBeschreibung
Last Will aktivierenAktiviert das Senden einer Nachricht bei Verbindungsabbruch.
Retain Last WillBroker speichert Nachricht zur späteren Zustellung.
Last Will bei Verbindungsabbau sendenSendet Last Will auch bei manuellem Trennen.
TopicZiel-Topic für den Last Will.
PayloadInhalt der Last Will Nachricht.
Quality of ServiceServicequalität (0, 1 oder 2).

Erweitert

Verbindungspool

FeldBeschreibung
Verbindungspool aktivierenBei Aktivierung wird eine Verbindung für Subscriptions und mehrere für Publish-Vorgänge genutzt. Nützlich bei hohem Nachrichtenaufkommen.
Min. VerbindungenMinimale Anzahl an Verbindungen.
Max.VerbindungenMaximale Anzahl an Verbindungen.
Zeitlimit für TimeoutZeit in Minuten, nach der inaktive Verbindungen geschlossen werden.

Flow Control

FeldBeschreibung
Flow Control aktivierenAktiviert das Sende-Kontingent für Broker, die kein eigenes Limit melden (Receive Maximum, ab MQTT 5). Ein vom Broker gemeldetes Limit wird immer eingehalten, auch wenn die Option deaktiviert ist.
Sende-KontingentMaximale Anzahl gleichzeitig unbestätigter Sendevorgänge (QoS 1 und 2) pro Verbindung. Zu kleine Werte begrenzen den Durchsatz bei langsamen oder entfernten Brokern, zu große Werte kann der Broker mit Drosselung oder Verbindungsabbruch beantworten. Bei aktiviertem Verbindungspool gilt der Wert je Verbindung. Standard: 10.

Subscription / Trigger

FeldBeschreibung
Auf Transfer wartenRouter antwortet dem Broker erst nach abgeschlossenem oder fehlgeschlagenem Transfer.
Nachrichtendeduplizierung aktivierenVerwirft eine eingehende Nachricht, deren Topic, Inhalt, Servicequalität und Retain-Kennzeichen innerhalb des Zeitfensters bereits empfangen wurden, bevor ein Trigger sie sieht. Wirkt je Brokeranbindung: Wird dasselbe Topic über zwei Anbindungen abonniert, greift die Sperre nicht. Da der Inhalt in den Vergleich eingeht, verwirft sie auch echte Wiederholungen mit gleichem Inhalt; deshalb ist sie werkseitig ausgeschaltet.
Zeitfenster für DeduplizierungZeitspanne, innerhalb derer eine gleiche Nachricht verworfen wird. Voreinstellung: 3 Sekunden. Wählen Sie es so kurz, dass zwei fachlich verschiedene Nachrichten mit gleichem Inhalt nicht hineinfallen.

Session-Optionen

FeldBeschreibung
CleanSessionStartet eine neue Sitzung ohne gespeicherte Nachrichten (deaktivieren für persistente Sessions).
Keep alive (s)Ping-Intervall in Sekunden.
Timeout (ms)Wartezeit in Millisekunden für Wiederverbindung.
tipp

Nutzen Sie die Seite MQTT Performance, wenn Sie QoS, RTT oder Verbindungspooling im Hinblick auf Durchsatz und Laufzeit optimieren möchten.

Frühere Versionen

Bis Version 5.4 ließ sich die MQTT-Implementierung unter Experteneinstellungen → Implementation auswählen: Legacy Automatic, Legacy Strider Mqtt, Legacy MQTTnet und das seinerzeit empfohlene MQTTnet. Ab Version 5.5 zeigt der OPC Router bei solchen Altkonfigurationen einen Migrationshinweis, der den Umstieg auf MQTT .NET V2 empfiehlt. Seit Version 5.6 ist ausschließlich MQTT .NET V2 verfügbar; die Auswahl entfällt damit.