MQTT, Subscriber baut eine Verbindung zu einem MQTT-Broker auf, kann konfigurierte Topics abonnieren und veröffentlichte MQTT-Nachrichten verarbeiten.
Empfangene MQTT-Nutzdaten eines Publishers werden gemäß einer benutzerdefinierten Vorlage dekodiert, die adressierten Datenpunkte entsprechend gesetzt. Eine Veröffentlichung von Datenpunkten in Richtung des MQTT-Brokers erfolgt nicht.
Unterstützte Versionen:
Transportschicht
- TCP/IP mit und ohne TLS (konfigurierbar)
Security-Mechanismen:
- Authentifizierung mit Benutzer und Passwort
- Verwendung von X.509 Zertifikaten
- TLS mit PSK
Datenverarbeitung:
- Unterstützte Dienstgüte (QoS) 0,1,2
- Flexible Nutzdaten-Dekodierung durch Vorlagen
- Identifizierung der Datenpunkte
- + nach Topic
- + durch ein explizites Adressfeld in den Nutzdaten
- Dekodierung mehrerer Datenpunkte aus den Nutzdaten
- Überwachung von Datenpunktaktualisierungen
- Unterstützung von Wildcards für Topics
Arbeitsweise
Beim Hochfahren wird eine Topic-Liste über alle Datenpunkte erstellt und bei einem MQTT-Broker
abonniert. Nach dem Empfang eines publizierten MQTT-Pakets wird die geeignete Vorlage zur
Dekodierung der Nutzdaten bestimmt. Die dekodierten Datenpunktattribute werden im Prozessdatenpunkt
gesetzt. Bei einem Verbindungsabbruch zum MQTT-Broker wird das Prozessabbild ungültig gesetzt.
Um Verbindungsunterbrechungen mit einem MQTT-Publisher, oder einen defekten MQTT-Publisher, zu erkennen, kann optional eine Überwachung pro Datenpunkt konfiguriert werden. Diese prüft, ob der jeweilige Wert sich innerhalb eines konfigurierten Zeitintervalls geändert hat. Falls nicht, wird der Datenpunkt ungültig gesetzt.
Alle Datenpunkteinträge verfügen über folgende Attribute:
- Adresse
- Zeitstempel
- Wert
- Qualitätskennung