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 oder höher ✓ PiCtory Version 2.3.0 oder höher ✓ MQTT-Broker mit MQTT-Protokollversion 3.1 ✓ Das 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 den Konfigurationsbereich.
▷ Wähle das virtuelle Gerät MQTT Client im Konfigurationsbereich, um es hervorzuheben.
❯ Unter dem Konfigurationsbereich erscheinen die Bereiche Gerätedaten und Werte-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: cyclical (Send every X seconds) oder event-based(Send on change).
Nun wird definiert, 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, wähle das entsprechende RevPi Gerät im Konfigurationsbereich.
▷ Aktiviere die gewünschten I/O-Werte für dieses RevPi Gerät im Werte-Editor in der Spalte Export.
▷ Wähle , um die Konfiguration zu speichern.
▷ Wähle , um den Treiber neu zu starten.
client_status abfragen #
▷ 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 |
|---|---|
|
Verbindung erfolgreich hergestellt |
|
Verbindung abgelehnt - falsche Protokollversion |
|
Verbindung abgelehnt - ungültige Client-ID |
|
Verbindung abgelehnt - Server nicht verfügbar |
|
Verbindung abgelehnt - falscher Benutzername oder Passwort |
|
Verbindung abgelehnt - nicht autorisiert |
|
Keine Verbindungsversuche / Dienst läuft nicht |