Overview

There are four main types of data that the EFM Emerson ROC driver is capable of getting from an Emerson ROC device.  These are:

TLPs are polled at a specified interval based on a poll rate and then made available via the OPC-UA interface.  Alarms, events, and history are made available to MQTT Transmission to be published as immutable record objects to an MQTT server.  Typically these would be received on a central Ignition gateway with the MQTT Engine and MQTT Recorder modules.  Combined those receive the MQTT Sparkplug messages and insert the records into a central DB and be made available to other third party systems or for later use in Ignition.

For the purposes of this document there are some definitions that are explained below.

There are six basic steps to getting all of the data available in a ROC into Ignition

  1. Define the global TLP definitions available for all ROC devices in this Ignition instance
  2. Create the base device connection to the ROC
  3. Specify the subset of TLP definitions that this specific ROC uses
  4. Create TLP Template(s) which define groups of TLPs should be polled as a logical group
  5. Create TLP Poll Group(s) which specify the logical parameters associated with a given TLP Template
  6. Use Ignition designer to pull tags into a tag provider

Global TLP Definitions

The EFM Emerson ROC driver module provides a configuration section to the Ignition Gateway.  These can be seen in the Configure section of the Ignition Gateway web UI on the left panel near the bottom.  Note this step is required before any EFM Emerson ROC device connections can be define.  Each Emerson ROC device connection will use a subset of these global TLP definitions to operate.

Once in the configuration screen you will see a link to create new global TLP definitions.  Click the link shown below to create a new one.

When creating a new global TLP definition only a name and a CSV file needs to be specified.  The name can be any unique name that describes the TLPs included in that CSV file.  They can be device specific TLPs or they can be TLPs associated with a specific user program.

The headers of the CSV file must be as follows:


Below is an example of a properly formatted global TLP CSV file:

Point Type #,Point Type Description,Point Type Abbreviation,Parameter Number,Parameter Name,Parameter Description,Parameter Abbreviation,Access,DataType,Length
1,Discrete Inputs,DIN,0,Point Tag ID,,TAG,R/W,AC,10
1,Discrete Inputs,DIN,1,Filter,,FILTER,R/W,UINT8,1
1,Discrete Inputs,DIN,2,Status,,STATUS,R/W,UINT8,1
1,Discrete Inputs,DIN,3,Mode,,MODE,R/W,BIN,1
1,Discrete Inputs,DIN,4,Alarm Code,,ALARM,R/O,BIN,1
1,Discrete Inputs,DIN,5,Accumulated Value,,ACCUM,R/W,UINT32,4
1,Discrete Inputs,DIN,6,On Counter,,ONCTR,R/W,UINT32,4
1,Discrete Inputs,DIN,7,Off Counter,,OFFCTR,R/W,UINT32,4
1,Discrete Inputs,DIN,8,0% Pulse Width,,MINCNT,R/W,INT16,2
1,Discrete Inputs,DIN,9,100% Pulse Width,,MAXCNT,R/W,INT16,2

Once you have your properly formatted global TLP definitions they can be uploaded.  Once complete, it will look similar to what is shown below.

Creating a Device Connection


Specifying TLP Definitions for a Device


Creating TLP Templates for a Device


Creating TLP Poll Groups for a Device


Viewing Device Data