Geo SCADA: MQTT driver - 'Reason' parameter for JSON, Text and Sparkplug
Question
If the MQTT driver in Geo SCADA loses connection to the MQTT broker or data point for a period of time (I.E. 30 minutes), upon reconnection, MQTT will send a backfill payload along with the current value. Geo SCADA handles this well, but in history, all data is reflected as ‘Current Data’. Is it possible to change the reason code for the backfill data so that a user may discern between current vs backfill data?
Answer
The reason for logging is different for each MQTT driver (see below):
JSON Schema A: Reason is 'Report' except if the message type is an alarm (I.E. has "status") in which case it is 'Value Change' for analog/counter points, and 'State Change' for digital points.
Text: Reason is always 'Current'
Sparkplug: Reason is 'Value Change' for analog/string/time points and 'State Change' for digital points
At the MQTT level, Geo SCADA just receives payloads from a broker. Geo SCADA does not know when they were sent or whether they were queued up in the broker. A device that is publishing data may publish multiple payloads, one after the other. This would look the same to Geo SCADA as receiving multiple payloads when Geo SCADA connects.
The device that is publishing the data does not know if Geo SCADA is connected or not. As the payload typically does not have a means of indicating whether the data should be considered historical or not, Geo SCADA has no recourse to categorize it any differently to data that is collected via a typical connection.
Publikováno pro: Schneider Electric Česká republika
Potřebujete pomoc?
Nástroj pro výběr produktů
Rychle a snadno vyhledávejte správné produkty a příslušenství pro vaše aplikace.
Získejte nabídku
Poptejte se nás online a náš lokální specialista se s vámi spojí!
Kde nakoupit?
Jednoduše najděte nejbližšího distributora výrobků Schneider Electric ve vašem okolí.
Centrum nápovědy
Zdroje podpory pro všechny své potřeby najdete na jednom místě.