Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

This object links to a Broker Connection to publish all data collected by Edge ACM in Sparkplug B format.

General

Name

A unique identifier for this object

Enabled

The current Enabled status of this publisher; nothing will be published if it is not enabled

Folder

The parent folder of this object

MQTT

Publish QoS

The Quality of Service for published messages

0 - At most once (least bandwidth, least reliable)

1 - At least once (middle bandwidth, middle reliability)

2 - Once and only once (most bandwidth, most reliable)

Subscribe QoS

The requested Quality of Survice for subscribed messages (typically tag value writes from remote clients)

0 - At most once (least bandwidth, least reliable)

1 - At least once (middle bandwidth, middle reliability)

2 - Once and only once (most bandwidth, most reliable)

Broker Connection

The Broker Connection object used by this Sparkplug B Publisher object

Sparkplug B

Group ID

The Group ID used in the Sparkplug B message, a name that can be shared by multiple devices so that clients can more easily group their published data

Node ID

The identifier used in the Sparkplug B message, it should be unique on the broker to avoid confusion

Primary Host ID

Optional. The Host ID the publisher expects to be receiving data. If a value is provided, the publisher will stop when the expected Host is offline then resume publishing and backfill when the Host comes online

Disable Tag Aliases

When Tag Aliases are disabled, the full tag name will be sent with each update of tag values. This can be useful for clients that missed the Birth notice or to manually read data, but requires more bandwidth

Backfill

Backfill to Disk

Enable storing Backfill data on disk instead of in RAM. On most devices this will allow more storage

Disk Location

The location on the Linux system that backfill data will be stored

Disk Memory Allocated for Buffered Values (mb)

The maximum amount of backfill data to be stored on the disk

Split Backfill Messages

Divide up backfill messages rather than sending a single large ddata message

Tag Values per Message

When splitting the backfill message, set the maximum number of tag values sent per message

Advanced Sparkplug

Republish Payload After Disconnect

On QoS 1 or 2 this will force eACM to republish the most recentl sent message if it lost the broker connection without confirmation that the message was received

Serialize Publishing

On QoS 1 or 2 ensures packages are published in sequence and only after the previous message receipt is confirmed

Delay Between Births (s)

The minimum amount of time to wait between rebirth messages, if a rebirth request is issued durring the delay the next birth message will not be sent until after the dealy

Advanced MQTT

Delay Between Publishes (ms)

The time in milliseconds between published messages

Info

Information on the installed version of this object

MQTT Topic Examples

For the following example, eACM is collecting data from a device named “Device1”.

AUTOSOL MQTT has a GroupID of “LocalGroup” and NodeID of “FirstNode” (set on the SparkplugB tab).

What topics shoudl appear in the broker?

When the publisher first starts, there will be a node birth:

spBv1.0/LocalGroup/NBIRTH/FirstNode

Followed by a birth message for our device(s). These will contain the initial values for all of the tags associated with each device:

spBv1.0/LocalGroup/DBIRTH/FirstNode/Device1

Finally, in the course of normal operation, there will be a series of data messages at a rate defined by the Publish Interval in the device object, assuming any tag’s value has changed within that interval:

spBv1.0/LocalGroup/DDATA/FirstNode/Device1

If communications are lost, or AUTOSOL MQTT is stopped, a node death message will arrive, signalling to all subscribers that the node is down:

spBv1.0/LocalGroup/NDEATH/FirstNode

As SparkplugB is not a human readable format, a Sparkplug Decoder is needed to resolve the contents of these messages, such as the Sparkplug Decoder in MQTT.fx

  • No labels