Sparkplug B
Overview
Sparkplug B is a specification designed based on the characteristic features of IoT applications. It helps define topics and messages that are not specified by standard MQTT, and allows non-MQTT terminal devices to transfer data with MQTT Server through Edge of Network, which can be HMIs in this architecture.
Advantages of Sparkplug:
- Multi-programming language support and cross-platform.
- Binary encoding which is more efficient than JSON.
- NDATA/DDATA (Node Data Message / Device Data Message) only publishes the data that has changed.
In this manual, HMI’s local MQTT server is used for explaining setup process.
System Requirement
Software Version: EasyBuilder Pro V6.01.01 or later
Applicable models: cMT Series HMI
Download Links
Ignition:https://inductiveautomation.com/downloads/ignition
MQTT Modules: https://inductiveautomation.com/downloads/third-party-modules
Installing Ignition
- Run Ignition Installer.
- Select Ignition for Platform Edition, and Typical for Installation Mode.
- Ignition page opens after installation. Or enter “localhost:8088” in the browser.
- Click [Configuration section] to open Ignition Gateway, or enter “localhost:8088/main/web/config” in the browser.
- The default username/password of Ignition Gateway are: admin/password.
- Select [SYSTEM] » [Modules] on the left, and select [Install or Upgrade a Module] at the bottom of the page.
- Click [Choose File].
- Add MQTT Engine Module. This module can be found in Cirrus Link Solutions list after being added.
- Find [MQTT ENGINE] » [Settings]. Click [Servers] » [Create a new MQTT Server].
- Select Third Party as Server Type, and configure the settings.
- To enable write operations of Ignition Designer, do not select [Enable blocking of outbound edge node tag writes] and [Enable blocking of outbound device tag writes].
- Ignition Gateway is now all set.
Creating EasyBuilder Project
- Create a new cMT project file, select [MQTT] in [IIoT/Energy] tab.
- In General tab select [Sparkplug B] for [Cloud service]. When local HMI is used as MQTT Server, set IP address to 127.0.0.1, and Port number to 1883. Authentication is optional, while selected, please enter username and password.
- In Sparkplug B group box, open General tab, and enter [Goupt ID] and [Edge node ID].
- In [Device] tab create several tags readable using Sparkplug B.
- Download this project file to HMI.
Obtaining EoN Tag using Ignition Designer
- Click [Launch Designer] in the upper-right corner of Ignition Gateway page. The “designer.jnlp” file will be downloaded by doing so.
- Run designer.jnlp file after download.
- The default username/password of Ignition Designer are: admin/password.
- Create a new project, enter project name in its field and then click [Create New Project].
- When successfully connected, the tags added in EasyBuilder project file can be found in Tag Browser’s [All Providers] » [MQTT Engine] » [cMT Group] (Group ID) » [cMT EoN] (Edge node ID).
References
- Cirrus Link Documentation: https://docs.chariot.io/display/CLD/Cirrus+Link+Documentation
- Ignition User Manual: https://docs.inductiveautomation.com/display/DOC79/Ignition+User+Manual