The Cirrus Link default TLP Definitions and EFM Mapping files can be used as a starting point for configuring the EFM Emerson ROC module. Note these need to be thoroughly tested and reviewed in your application before they are put into production.

Zip file contents:

  • TLP Definitions
    • FB107-TLPs-V1_0.csv
    • ROC800-TLPs-V1_0.csv
    • UserProgram-TLPs-V1_0.csv
  • EFM Mappings
    • Configuration Mappings
      • FB107-Meter_Configuration_Mapping-V1_0.csv
      • ROC800-Meter_Configuration_Mapping-V1_0.csv
    • Periodic Mappings
      • FB107-Orifice_Turbine_Meter_Periodic_History_Mapping-V1_0.csv
      • ROC800-Orifice_Turbine_Meter_Periodic_History_Mapping-V1_0.csv

TLP Definitions

TLP Definitions comprise a CSV file with the following header definition:

  • Point Type #
    • The 'T' parameter of a TLP - must be an integer
  • Point Type Description
    • A long description of the 'T' parameter
  • Point Type Abbreviation
    • The abbreviation of the 'T' parameter
  • Parameter Number
    • The 'P' parameter of the TLP - must be an integer
  • Parameter Name
    • The descriptive name of the TLP
  • Parameter Description
    • The description of the TLP
  • Parameter Abbreviation
    • This becomes the default tag name of the parameter in Ignition.  It can be changed in any TLP template where it is defined.
  • Access
    • The access value for the TLP.  Must be either R/O or R/W
  • DataType
    • The datatype of the TLP.  Must be one of the following:
      • BIN
        • Binary value
        • 1 byte
        • Ignition Type: Byte
      • AC
        • ASCII String Value
        • Variable number of bytes
        • Ignition Type: String
      • INT8
        • Signed 8-bit Value
        • 1 byte
        • Ignition Type: Short
      • INT16
        • Signed 16-bit Value
        • 2 bytes
        • Ignition Type: Short
      • INT32
        • Signed 32-bit Value
        • 4 bytes
        • Ignition Type: Integer
      • UINT8
        • Unsigned 8-bit Value
        • 1 byte
        • Ignition Type: Short
      • UINT16
        • Unsigned 16-bit Value
        • 2 bytes
        • Ignition Type: Integer
      • UINT32
        • Unsigned 32-bit Value
        • 4 bytes
        • Ignition Type: Long
      • FL
        • 4-byte Floating-Point Value
        • 4 bytes
        • Ignition Type: Float
      • FLP
        • Same as FL
        • 4-byte Floating-Point Value
        • 4 bytes
        • Ignition Type: Float
      • DBL
        • 8-byte Floating-Point Value
        • 8 bytes
        • Ignition Type: Double
      • TIME
        • 4 byte ROC representation of time
      • TLP
        • 3 byte ROC representation of a TLP
      • HOURMINUTE
        • 2 byte ROC representation of hour and minute
      • FLOAT
        • Same as FL
        • 4-byte Floating-Point Value
        • 4 bytes
        • Ignition Type: Float
      • DOUBLE
        • Same as DBL
        • 8-byte Floating-Point Value
        • 8 bytes
        • Ignition Type: Double
      • DT6
        • 6 byte ROC representation of time
  • Length
    • The length of the the value.  For example INT8 is 1, INT16 is 2, for an AC type it is variable and dependent on the specific TLP.


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


EFM Mappings

Configuration Mappings

The configuration mapping files are used for building up EFM Configuration Records.  They define which TLPs map to which fields (columns) in an EFM Configuration Record.  Additionally they can provide bit and/or value mappings for the TLP values. 

These mappings are CSV files with the following values:

  • Column Name
    • The name of the EFM Configuration Record field
  • Column Data Type
    • The datatype of the EFM Configuration Record. Must be one of the following:
      • VARCHAR
      • NUMBER
  • TLP Point Type
    • The 'T' parameter of a TLP - must be an integer
  • TLP Parameter Number
    • The 'P' parameter of a TLP - must be an integer
  • Bits
    • An optional declaration of the bits to use from the value of the TLP
    • An ordered, colon-delimited, list of bit positions
    • Examples:
      • If the TLP value is a byte and only the first (least significant) bit is used, this value would be: 0
      • If the TLP value is a byte and the 2nd and 3rd bits are used, this value would be: 2:3
  • Event Value Mapping
    • An optional, semicolon delimited mapping of the TLP values to the values that will be stored in the EFM Event Record
    • If using only certain bits the values themselves will need to be ordered, colon delimited lists of bit values
  • Config Value Mapping
    • An optional, semicolon delimited mapping of the TLP values to the values that will be stored in the EFM Configuration Record
    • If using only certain bits the values themselves will need to be ordered, colon delimited lists of bit values

Below is an example of a properly formatted Configuration Mapping file:

mtr_point_tag,VARCHAR,46,0,,,
mtr_description,VARCHAR,46,1,,,
mtr_serial,VARCHAR,46,0,,,
plate_dia,NUMBER,46,10,,,
plate_temp,NUMBER,46,11,,,
plate_mat,VARCHAR,46,12,,,0=Stainless;1=Monel;2=Carbon;3=304 SS;4=316 SS;5=Monel 400
k_fctr,NUMBER,46,43,,,
pipe_dia,NUMBER,46,7,,,
pipe_temp,NUMBER,46,8,,,
pipe_mat,VARCHAR,46,9,,,0=Stainless;1=Monel;2=Carbon;3=304 SS;4=316 SS;5=Monel 400
atmos_press,NUMBER,46,15,,,
alt,NUMBER,46,20,,,
lat,NUMBER,46,21,,,
base_press,NUMBER,46,13,,,
base_temp,NUMBER,46,14,,,
cntrct_hr,NUMBER,15,10,,,
calc_mthd,VARCHAR,47,72,,,AGA3-92=AGA-3 1992;AGA7-96=AGA-7
fpv_mthd,VARCHAR,47,73,,,AGA8-92 Gross 1=AGA-8 Gross 1 1992;AGA8-92 Detailed=AGA-8 Detail 1992
mtr_taps,VARCHAR,46,4,0,,0=Flange;1=Pipe
sp_tap,VARCHAR,46,4,2,,0=Downstream;1=Upstream
sp_typ,VARCHAR,46,4,3,,0=Gauge;1=Absolute
mtr_typ,VARCHAR,46,2,1,,0=Orifice;1=Turbine
live_analysis,VARCHAR,46,3,5,,0=No;1=Yes
live_btu,VARCHAR,46,4,4,,0=Yes;1=No
live_grav,VARCHAR,46,4,1,,0=Yes;1=No
lo_flo_ctoff,NUMBER,46,43,,,
specf_heat_ratio,NUMBER,46,19,,,
btu_base,VARCHAR,46,3,3:4,0:0=0;0:1=1;1:0=2;1:1=3,0:0=Dry;0:1=As Delivered;1:0=Wet;1:1=As Delivered
mass_heating_val,NUMBER,46,17,,,
specf_gravity,NUMBER,46,16,,,
viscosity,NUMBER,46,18,,,
carbon_dioxide,NUMBER,46,24,,,
nitrogen,NUMBER,46,23,,,
methane,NUMBER,46,28,,,
ethane,NUMBER,46,29,,,
propane,NUMBER,46,30,,,
isobutane,NUMBER,46,32,,,
butane,NUMBER,46,31,,,
isopentane,NUMBER,46,34,,,
pentane,NUMBER,46,33,,,
hexane,NUMBER,46,35,,,
heptane,NUMBER,46,36,,,
octane,NUMBER,46,37,,,
nonane,NUMBER,46,38,,,
decane,NUMBER,46,39,,,
oxygen,NUMBER,46,40,,,
water,NUMBER,46,26,,,
hydrogen_sulfide,NUMBER,46,25,,,
helium,NUMBER,46,27,,,
hydrogen,NUMBER,46,42,,,
carbon_monoxide,NUMBER,46,41,,,
argon,NUMBER,46,85,,,

Periodic Mappings

Periodic mapping files are used for building up EFM Periodic History Records.  They define which TLPs map to which fields (columns) in an EFM Periodic History Record, the logical type of the point type table (meter, station, or input), and an archive type of the value.

These mappings are CSV files with the following values:

  • TLP Point Type
    • The 'T' parameter of a TLP - must be an integer
  • TLP Parameter Number
    • The 'P' parameter of a TLP - must be an integer
  • Logical Type
    • The type that the 'L' parameter of a TLP represents. Must be one of the following: 
      • "M" for Meter
      • "I" for Input
      • "S" for Station
      • "" (blank) for Unknown
  • Archive Type
    • The archive type of the TLP. Must be one of the following: 
      • Average
      • Accumulated
      • Current
      • Totalize
      • Unknown
      • Undefined
      • UserCData
      • UserCTime
      • FSTTimeM
      • FSTValue
      • FSTTimeD
      • FSTTime
  • Column Name
    • The name of the EFM Configuration Record field
  • Column Data Type
    • The datatype of the EFM Configuration Record. Must be one of the following:
      • VARCHAR
      • NUMBER

Below is an example of a properly formatted Periodic Mapping file:

47,41,M,Totalize,flo,NUMBER
46,51,M,Average,dp_avg,NUMBER
47,49,M,Totalize,dp_avg,NUMBER
47,59,M,Totalize,pulses,NUMBER
5,16,I,Totalize,pulses,NUMBER
46,52,M,Average,sp_avg,NUMBER
46,53,M,Average,temp_avg,NUMBER
5,18,I,Totalize,raw_vol,NUMBER
47,4,M,Average,ext_avg,NUMBER
47,51,M,Totalize,ext_avg,NUMBER
47,16,M,Average,multiplier_val,NUMBER
47,0,M,Accumulated,flo_rate,NUMBER
47,1,M,Accumulated,enrgy_rate,NUMBER
47,12,M,Unknown,compressibility,NUMBER
47,15,M,Unknown,compressibility,NUMBER
46,17,M,Average,btu_avg,NUMBER
46,16,M,Average,specf_gravity_avg,NUMBER
46,24,M,Average,carbon_dioxide_avg,NUMBER
46,23,M,Average,nitrogen_avg,NUMBER
46,28,M,Average,methane_avg,NUMBER
46,29,M,Average,ethane_avg,NUMBER
46,30,M,Average,propane_avg,NUMBER
46,32,M,Average,isobutane_avg,NUMBER
46,31,M,Average,butane_avg,NUMBER
46,34,M,Average,isopentane_avg,NUMBER
46,33,M,Average,pentane_avg,NUMBER
46,35,M,Average,hexane_avg,NUMBER
46,36,M,Average,heptane_avg,NUMBER
46,40,M,Average,oxygen_avg,NUMBER
46,26,M,Average,water_avg,NUMBER
46,25,M,Average,hydrogen_sulfide_avg,NUMBER
46,27,M,Average,helium_avg,NUMBER
46,19,M,Unknown,specf_heat_ratio,NUMBER
46,18,M,Unknown,viscosity,NUMBER
46,37,M,Average,octane_avg,NUMBER
46,38,M,Average,nonane_avg,NUMBER
46,39,M,Average,decane_avg,NUMBER
46,42,M,Average,hydrogen_avg,NUMBER
46,41,M,Average,argon_avg,NUMBER


  • No labels