Overview
The MQTT Transmission UNS Transmitter is an agent the monitors tags and publishes them as MQTT Messages with a JSON payload to an MQTT Server. It is ideal for lightweight IT deployments where minimal data points are required by Enterprise consuming clients and is generally used on the IT side of an OT/IT infrastructure
- The UNS Transmitter creates an MQTT Client
- After connection to the MQTT server, data can only be published from the MQTT Client to the MQTT Server
- The UNS Transmitter MQTT Client has no subscriptions and so will not receive commands from Enterprise consuming clients
- Uses LWT to maintain system state awareness
- Data can be published as QoS0, QoS1 or QoS2
- The published messages can be consumed by any MQTT Client
- The topic is the identified Ignition tag path
- The payload contains only the tag name, dataType, value, timestamp and quality formatted as JSON
- Publishes the leaf tags of Ignition UDTs (a.k.a. Sparkplug Templates) and the structure of the UDT (i.e. UDT name itself and folders in the UDT) become topic tokens
- Is limited to publishing a single data message for each tag change event
...
- A data message published for each tag when QualifiedValue of the tag changes
- A properties message published for each tag on every client connection.
The UNS Transmitter will use the namespace unsAv1.0 and will prefix this to all publishes from the MQTT Transmission UNS Transmitter
Tip |
---|
The UNS namespace may be disabled via script using the "UseTopicPrefixToken" parameter |
UNS
...
Message Formats
UNS Data Message
...
- Topic
- Ignition tag path starting at the Tag Path defined in the transmitter extended by .props
- Example: unsAv1.0/Enterprise/Site 1/Area 1/BMS/Rooftop/Cooler/Fan Speed.props
- Payload
- JSON formatted payload containing non default or custom property values
- Example: {"SparkplugEdgeNodeId":{"type":"String","value":"E1"},"SparkplugGroupId":{"type":"String","value":"G1"},"enabled":{"type":"Boolean","value":true},"SparkplugDeviceId":{"type":"String","value":"D1"}}
Example
Let's take a look at a an example of how a UNS Transmitter can be used to publish data in a UNS format from MQTT Engine.