Contents
Cirrus Link Resources
Cirrus Link Website
Contact Us (Sales/Support)
Forum
Cirrus Link Modules Docs for Ignition 7.9.x
Inductive Resources
Ignition User Manual
Knowledge Base Articles
Inductive University
Forum
Ignition User defined Types (UDTs) are a powerful tool for consistently modelling pieces of equipment that are replicated throughout a system. For example a pump may have multiple variables such as pressure, temperature and flow, and by creating a UDT definition for that pump we can then replicate every instance of that pump in the system.
In this tutorial we will explain how the data in a UDT is represented when using MQTT Transmission and MQTT Engine along with best practices for managing, distributing and updating UDT definitions.
Open three separate Designer sessions and connect to each of the three instances of Ignition:
Your designer views will look similar to the views below:
See the Doc: Ignition 8.1 User Manual Creating a UDT Definition and Instance and Video: Inductive University Creating UDT Definitions for instructions on how to create a definition and instance in Designer.
From the Designer pointing to your Edge1 instance create a new UDT with the following properties:
Add a Memory Tag member to the Pump UDT with the following properties:
Add a second Memory Tag to the Pump UDT with the following properties:
Under your device PLC1, create an instance of the UDT "Pump" with the following properties:
Your designer view will now look like this:
On the Edge1 Ignition instance UI, navigate to the MQTT Transmission Transmitters settings by selecting Config > MQTT TRANSMISSION > Settings and selecting the Transmitters tab. Edit the Example Transmitter and deselect the Convert UDTs parameter. This will enable the UDT Definition to be included as part of the BIRTH and disable the UDT member tags from being converted to normal tags before publishing.
From the Designer pointing to your Edge1 instance force a refresh by switching the provider to MQTT Transmission and selecting the Refresh clickbox under Transmission Control. This boolean control will automatically deselect once the BIRTH has been published.
From the Designer pointing to your MQTT Engine instance, you will now see the tag Stream1 with a data type of Pump published from the Edge1 device:
and can see the Pump UDT Definition in the UDT Definitions tab:
From the Designer connected to the Edge1 instance, make changes to the Stream1 tag Flow and Pressure member tags and see the data published and displayed on the MQTT engine instance of Designer.
Now we have our UDT defined we want to replicate this across our other edge devices.
Import UDT definition to edge2
Create an instance on edge 2
Publish birth