Die Ein- und Ausgangswerte 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

  • Dein RevPi Basismodul befindet sich im Netzwerk

Note

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

MQTT Client konfigurieren #

▷ Starte PiCtory.
▷ Wähle dein RevPi Basismodul aus dem Gerätekatalog und ziehe es in den leeren Slot mit Positionsnummer 0.
▷ Ziehe das virtuelle Gerät MQTT Client aus dem Gerätekatalog auf das Konfigurationsbrett.
▷ Klicke 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, gib die entsprechenden Anmeldedaten für MEM User_name und MEM Password ein.
▷ Wenn die Datenübertragung verschlüsselt werden soll, aktiviere 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, kannst du das MQTT-Thema unter MEM Base_topic umbenennen.
▷ Wähle den Übertragungsmodus unter MEM Sending_behavior: zyklisch (Sende alle X Sekunden) oder ereignisbasiert(Sende bei Änderung). Nun definierst du, welche I/O-Werte für die einzelnen RevPi Geräte in deinem Revolution Pi System exportiert werden sollen:
▷ Wähle 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, klicke auf das entsprechende RevPi Gerät im Konfigurationsbrett.
▷ Aktiviere die gewünschten I/O-Werte für dieses RevPi Gerät im Wert-Editor in der Spalte Export.
▷ Klicke auf Datei > Als Startkonfiguration speichern, um die Konfiguration zu speichern.
▷ Klicke auf Werkzeuge > Treiber zurücksetzen, um den Treiber neu zu starten.

Abfrage des client_status #

Teste die Konfiguration, um sicherzustellen, dass die Datenübertragung fehlerfrei funktioniert. Du kannst zum Beispiel den kostenlosen MQTT Explorer verwenden.

Um den Verbindungsstatus zu testen, kannst du den Befehl client_status in piTest verwenden.

Wert Funktion

client_status 0

Verbindung erfolgreich hergestellt

client_status 1

Verbindung abgelehnt - falsche Protokollversion

client_status 2

Verbindung abgelehnt - ungültige Client-ID

client_status 3

Verbindung abgelehnt - Server nicht verfügbar

client_status 4

Verbindung abgelehnt - falscher Benutzername oder Passwort

client_status 5

Verbindung abgelehnt - nicht autorisiert

client_status 255

Keine Verbindungsversuche / Dienst läuft nicht

→ Tutorial: MQTT Explorer verwenden

mqtt.org