Der Datenaustausch mit MQTT erfolgt über einen zentralen MQTT Broker, an den ein Gerät Daten sendet und der diese an Empfänger weiterleitet. Das DatenBerg Gateway " subscribed " sich auf ein definiertes Topic und leitet alle empfangenen Daten an die smartPLAZA weiter. In diesem Blogbeitrag gehen wir näher auf die Funktionsweise von MQTT ein.
Für den Empfang von Daten via MQTT müssen folgende Parameter definiert werden:
Optional können diese Parameter definiert werden:
Das Gateway erwartet die Daten zur Weitersendung in einem JSON-Format mit Namen-Wert Paaren. Jede Spalte - sowohl Meta-Daten als auch Messmerkmale - müssen als eigenes Paar auftreten. Im folgenden Beispiel ist eine passende JSON-Datei gegeben. Liegen die Daten im Payload der MQTT-Message nicht in einem solchen Format vor, muss ein Python Skript zur Transformation eingesetzt werden.
{
"Uhrzeit": "2024-03-12 12:34:53",
"Fertigungsauftrag": 1883,
"Temperatur_IST": 34.1
}
Das folgende Beispiel zeigt eine Verbindung zu einem MQTT Broker mit der IP-Adresse 10.123.45.20 auf Port 1883. Alle Daten auf den Sub-Topics des Topics "Data" sind zu empfangen. Die Daten werden bereits als JSON gesendet und können direkt weitergeleitet werden.
[
{
"bucket": "mqtt_daten",
"writeKey": "123456789",
"source": "mqtt",
"params": {
"host": "10.123.45.20",
"port": 1883,
"topic": "Data/#",
"type": "json"
}
}
]