Zum Hauptinhalt springen

MQTT Client

Virtuelles Gerät MQTT Client

Die IO-Werte eines Revolution Pi-Systems (I/O-Werte) können mit einem MQTT-Broker ausgetauscht werden. Dazu verfügt die RevPi Konfigurationssoftware PiCtory über ein virtuelles MQTT Device. Das Beste: Alles läuft über No-Code. Es ist keine Programmierung erforderlich.

Die I/O-Werte werden zyklisch oder ereignisbasiert an einen MQTT-Broker gesendet. Im zyklischen Modus erfolgt die Übertragung in einem konfigurierten Intervall. Im ereignisbasierten Modus werden Werte gesendet, sobald sie sich ändern.

Die gesendeten Werte werden innerhalb eines definierten MQTT-Themas im MQTT-Broker gespeichert.

Voraussetzungen
  • RevPi Basismodul mit RevPi Bullseye Image oder höher
  • PiCtory Version 2.3.0 oder höher
  • MQTT-Broker mit MQTT-Protokollversion 3.1
  • Ihr RevPi Basismodul befindet sich im Netzwerk
tipp

Das virtuelle Gerät MQTT Client unterstützt derzeit keine Broker mit MQTT-Protokollversion 5.0.

MQTT Client konfigurieren


▷ Starten Sie PiCtory.
▷ Wählen Sie Ihr RevPi Basismodul aus dem Gerätekatalog und ziehen Sie es in den leeren Slot mit Positionsnummer 0.
▷ Ziehen Sie das virtuelle Gerät MQTT Client aus dem Gerätekatalog auf das Konfigurationsbrett.
▷ Klicken Sie auf das virtuelle Gerät MQTT Client im Konfigurationsbrett, um es hervorzuheben.
     ❯ Unter dem Konfigurationsbrett erscheinen die Bereiche Gerätedaten und Wert-Editor.
▷ Wenn der MQTT-Broker eine Authentifizierung erfordert, geben Sie die entsprechenden Anmeldedaten für MEM User_name und MEM Password ein.
▷ Wenn die Datenübertragung verschlüsselt werden soll, aktivieren Sie die TLS-Verschlüsselung unter MEM Use_TLS_encryption. Der MQTT-Broker akzeptiert alle Zertifikate.
▷ Wenn mehrere Systeme ihre I/O-Werte über MQTT austauschen, können Sie das MQTT-Thema unter MEM Base_topic umbenennen.
▷ Wählen Sie den Übertragungsmodus unter MEM Sending_behavior: zyklisch (Sende alle X Sekunden) oder ereignisbasiert(Sende bei Änderung). Nun definieren Sie, welche I/O-Werte für die einzelnen RevPi-Geräte in Ihrem Revolution Pi-System exportiert werden sollen:
▷ Wählen Sie für MEM Shared_IOs entweder Alle bestehenden oder nur Markierte als exportiert I/O-Werte.
▷ Um einzelne I/O-Werte für den Export zu markieren, klicken Sie auf das entsprechende RevPi-Gerät im Konfigurationsbrett.
▷ Aktivieren Sie die gewünschten I/O-Werte für dieses RevPi-Gerät im Wert-Editor in der Spalte Export.
▷ Klicken Sie auf Datei > Als Startkonfiguration speichern, um die Konfiguration zu speichern.
▷ Klicken Sie auf Werkzeuge > Treiber zurücksetzen, um den Treiber neu zu starten.

Abfrage des client_status

Testen Sie die Konfiguration, um sicherzustellen, dass die Datenübertragung fehlerfrei funktioniert. Sie können zum Beispiel den kostenlosen MQTT Explorer verwenden.

Um den Verbindungsstatus zu testen, können Sie den Befehl client_status in piTest verwenden.

WertFunktion
client_status 0Verbindung erfolgreich hergestellt
client_status 1Verbindung abgelehnt - falsche Protokollversion
client_status 2Verbindung abgelehnt - ungültige Client-ID
client_status 3Verbindung abgelehnt - Server nicht verfügbar
client_status 4Verbindung abgelehnt - falscher Benutzername oder Passwort
client_status 5Verbindung abgelehnt - nicht autorisiert
client_status 255Keine Verbindungsversuche / Dienst läuft nicht

→ Tutorial: MQTT Explorer verwenden

→ Tutorial: RevPiModIO replace_io_file

mqtt.org

mqtt-explorer.com

thin-edge.io