Ignition Digital Twins Broker - Beta
12 min
overview the ignition digital twins broker allows litmus edge to act as a data source for an ignition gateway via digital twins by automatically converting digital twins to versioned ignition udts and writes data in real time to a specified tag provider \\ this module is currently in open beta this module is subject to breaking changes and functionality is not guaranteed prerequisites ignition gateway version 8 3 x with support for java 17 litmus edge version 4 x open network connection between ignition gateway and litmus edge on ports 4222 (nats broker) 443 (https for api) installation download the ignition module from the litmus central portal log into your ignition gateway with admin privileges navigate to platform >modules >install or upgrade module select choose file and select the litmus edge broker x x x modl and press install module when prompted with the module certificate mark i accept the module certificate and press trust certificate note, this will only happen on your initial installation of the module read and accept the litmus eula wait a few seconds, or refresh the page and you will be prompted with a gateway restart required prompt at the bottom of your screen when ready restart the gateway after you restart the module should be installed and running verify by navigating to platform >system >modules and identifying the litmus edge ignition module is installed and marked as active configuration to run the module, you need to enable the nats proxy and provide a nats token and oauth2 0 api client litmus edge enable nats proxy with read access to system > service save the access token tokens docid 1i vglhcdoy vjyi annf create an oauth2 0 client with view permissions for digital twins service save the clientid and clientsecret how to create and use oauth 2 0 tokens in litmus edge docid\ zkvk 9xfvpw32vtljwral ignition gateway in the ignition gateway navigate to connections >litmus edge >dtwin broker if this page is not present this indicates the module is incorrectly installed fill in the associated fields and save configuration client id and client secret use the oauth2 0 api credentials nats api key uses the nats proxy access token provider name specifies which ignition tag provider where the udt models and instances will be created if no provider has a matching name, a managed tag provider will be created automatically verify that the broker is connected and that the associated tag provider exists you can verify the tag provider has been created by navigating to services >tags or via the ignition designer tag provider enabling tls in order to use tls you must select verify tls in the configuration menu and provide a corresponding certificate to read more on certificates docid\ smfliyd4nsslcyw2caja functionality after connections all models and instances from the connected litmus edge will be automatically created in the specified tag provider the tag provider can changed at anytime via the configuration module if the tag provider is a managed tag provider created by the module, this tag provider will be automatically removed user managed tag providers will persist, however module created udts and instances will be removed when no longer using that tag provider models and instances are synced in real time with all changes/upgrades being propagated automatically in ignition model tracking every digital twin model will have corresponding udts created on the version and schema of model model versioning digital twin model versions are named {model name} v{version number} in ignition ex a model named injectionmolder with a version of 15 has a corresponding udt of injectionmolder v15 outdated model versions are tracked if there exist corresponding instances using those models when instances are upgraded or deleted, out of date udts will be automatically deleted if they are no longer in use by any instance on initial connection, some out of date instances may not have corresponding models these are treated as orphaned instances tracking nodes and arrays digital twin node arrays are represented by folders with child elements being named based on their numerical index in the array digital twin nodes are represent by folders with child elements being named using the child name in the schema instance tracking instances are the source of data in ignition automatically subscribing to the associated nats topics upon creation reading data at the corresponding publishing interval udt instances ignition instances with corresponding udt models will be created as udt instance tags with the versioned model as their parent orphaned instances if an instance is out of date when the module first connects to litmus edge it will be unable to retrieve the model schema because of this, the instance will exist as an folder in ignition as opposed to a udt instance data will still be ingested as normal, and the folder will become a udt instance upon instance upgrade in litmus edge support for model schema inference is planned release notes beta v1 0 0 full create/update/delete/upgrade support for models and instances support versioning of udts to match dtwin models data ingestion into udt instances