Modbus SCADAPack OPC Items

Modbus SCADAPack OPC Items

Standard Items

See Device Standard Items.

Protocol Items

See Common Modbus OPC Items.

Common Extended Items

See Common Modbus OPC Items. In addition to the common items, the Modbus SCADAPack protocol also has the following Extended items:

Modbus SCADAPack Extended Items - Common

Item

Data Type

Description

DateTime

Date

Date and time in the RTU.

LastAlarmRecord/n

Date

Date and time of the last alarm record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

LastAuditRecord/n

Date

Date and time of the last audit record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

LastDailyRecord/n

Date

Date and time of the last daily record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

LastEventRecord/n

Date

Date and time of the last event record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

LastEventRecord/n

Date

Date and time of the last event record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

LastHourlyRecord/n

Date

Date and time of the last hourly record retrieved from the RTU. Specify the run number 1 to 10 for ‘n’.

MoveDaily/1

I2

Moves the daily retrieval record position back in time. Write the number of days to move back. This item can be used to re-collect daily records. Specify the run number 1 to 10 for ‘n’.

MoveHourly/1

I2

Moves the hourly retrieval record position back in time. Write the number of hours to move back. This item can be used to re-collect hourly records. Specify the run number 1 to 10 for ‘n’. 

ResetAlarm/1

BOOL

Resets the alarm retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all alarm records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

ResetAudit/1

BOOL

Resets the audit retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all audit records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

ResetBatch/1

BOOL

Resets the batch retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all batch records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

ResetDaily/1

BOOL

Resets the daily retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all daily records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

ResetEvent/1

BOOL

Resets the event retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all event records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

ResetHourly/1

BOOL

Resets the hourly retrieval record position. Write a ‘True’ to this item to remove record position information. This will cause all hourly records to be retrieved again. Specify the run number 1 to 10 for ‘n’.

RetrieveHistory

I2

Retrieve History

ShowAGA8

I2

Write the run number (1 to 10) to this item to make the AGA8 configuration data for the specified run available in Modbus registers 49780 – 49822.

ShowNX19

I2

Write the run number (1 to 10) to this item to make the NX-19 configuration data for the specified run available in Modbus registers 49840 – 49848.

TimeSync

I2

Synchronize the real time clock in the RTU with the host computer.

  • Set to 1: Synchronize the real time clock in the RTU with the host computer using the rules established on the “Time Synchronization” setup screen. 

  • Set to 2: Synchronize the real time clock in the RTU with the host computer ignoring the rules established on the “Time

    Synchronization” setup screen; used to “force” a synchronization

  • Return 3 or Error Notification Value: Unsuccessful.

  • Return 0: Successful.

Extended Items - EFM Configuration

The Extended Items for EFM Configuration are used to read and write the current EFM configuration values. There are separate items for reading and writing the values and all items must include the one based meter run number designator on the end.

Items to read values are in the format of "Config.{section}.{data}/n", where section is the particular EFM configuration section described below and  '/n' indicates the meter run number.

Items to store write values are in the format of "Config.Write.{section}.{data}/n", where section is the particular EFM configuration section described below and '/n' indicates the meter run number.

Example: Config.AGA8.Methane/2 - read the AGA8 methane value for run 2.

Items from all EFM sections can be browsed and added by a client, even if they are not valid for the current RTU configuration. Example, items for AGA3-1985 are available but will only return an error when polled if the RTU is configured to use AGA3-1992.

For RTUs configured to use AGA3-2013, the extended items for section AGA3-1992 are used to both read and write values.

Writing New EFM Configuration Values

Writing new EFM Configuration values is a multi-step process. This is because the Scadapack protocol requires writing all data components of a section at the same time, and not individually. This process applies to all EFM sections and should be done on a per-section and a per-meter run basis.

  1. Write new values, using the "Config.Write.{section}.{data}/n" items, for each data point you need to change in a section. These new values are stored internally by the driver. You do not need to write a new value to any item in a section that you do not wish to change.

  2. Write TRUE to the item "Config.Write.{section}.ExecuteWrite/n", where '/n' indicates the meter run number. This will download all the values at once for that section. The result of the download can be monitored by the item "Config.Write.{section}.Result/n".

  3. To cancel the write process before the ExecuteWrite item is set, write TRUE to the item "Config.Write.{section}.Clear/n", where '/n' indicates the meter run number. This will delete the internally stored values.

Example: Write new values for AGA8 Methane and Ethane for meter run 1.

  • Write new value to item Config.Write.AGA8.Methane/1

  • Write new value to item Config.Write.AGA8.Ethane/1

  • Write value TRUE to item Config.Write.AGA8.ExecuteWrite/1 to download new values

All Config.Write Sections

Data Item

Details

ExecuteWrite

Initiates download of new write values for the EFM configuration section

Clear

Cancels the pending write values

Result

Result value of initiating the ExecuteWrite item. Possible Error Codes:

  • 0: Success

  • 1: No response from RTU 

  • 2: Connection refused

  • 3: Number of command retries has been exhausted

  • 4: Internal error (null pointer to actual/proposed object)

  • 5: Internal error (could not spawn an item)

  • 6: Internal error (proposed to actual overlay failed)

  • x is an error code from the RTU (see the manual)

Example: Config.Write.AGA8.ExecuteWrite/1

Sections AGA31985 and AGA31992

Data Item

Details

Data Item

Details

DifferentialPressureDeadBand

float

IsentropicExponent

float

OrificeDiameter

float

OrificeMaterial

AGA-3 (1985, 1992)

0 = type 304 & 316 stainless steel,

1 = Monel,

2 = carbon steel

AGA-3 (2013)

0 = type 304/316 stainless steel,

2 = carbon steel,

3 = type 304 stainless steel

4 = type 316 stainless steel

5 = Monel 400

OrificeReferenceTemperature

float

PipeDiameter

float

PipeMaterial

AGA-3 (1985, 1992)

0 = type 304 & 316 stainless steel,

1 = Monel,

2 = carbon steel

AGA-3 (2013)

0 = type 304/316 stainless steel,

2 = carbon steel,

3 = type 304 stainless steel

4 = type 316 stainless steel

5 = Monel 400

PipeReferenceTemperature

float

StaticPressureDeadBand

float

TemperatureDeadBand

float

Viscosity

float

Examples: Config.AGA31985.OrificeDiameter/2, Config.Write.AGA1992.PipeMaterial/4

Section AGA8

The gas ratios are fractional floating point numbers. The sum of the values must be 1.00.

Data Item

Argon

CarbonDioxide

CarbonMonoxide

CompositionLoggingControl

Ethane

HeatingValue

Helium

Hydrogen

HydrogenSulfide

iButane

iPentane

Methane

nButane

nDecane

nHeptane

nHexaneOrHexanesPlus

Nitrogen

Nonane

nOctane

nPentane

Oxygen

Propane

RealRelativeGasDensity

Water

Example: Config.AGA8.Methane/1, Config.Write.AGA8.Oxygen/2

Section Contract

Data Item

Details

BasePressure

float

BaseTemperature

float

Hour

0 - 23

Input

For Flow Computer 6.70 and newer

Input average weighting

0 = flow-dependent time-weighted linear average

2 = flow-weighted linear average

For Flow Computer 5.28 and earlier

Input error action

0 = do not accumulate flow when inputs in error

1 = accumulate flow when inputs in error

Units

uint

WetGasFactor

Wet gas meter factor. Version 6.10 or greater.

Default value is 1.0.

The value 0.0 indicates that the parameter is not supported and that 1.0 should be substituted for it.

For version 6.21 or greater, this parameter can be changed while flow calculations are running and without starting a new contract day.

Example: Config.Contract.Hour/1

Section HPAGA8

Data Item

Details

Components

0 = Use individual gas components (default)

1 = Use combined value for hexane and higher components

nDecane

float

nHeptane

float

nHexane

float

nNonane

float

nOctane

float

Example: Config.HPAGA8.Components/1

Section MeterExecution

This section's format is slightly different so the entire items are given in the table, where '/n' is the run number.

 Item

Details

 Item

Details

Config.MeterExecutionState/n

1 = stop

2 = run

Config.Write.MeterExecutionState.Clear/n

 

Config.Write.MeterExecutionState.ExecuteWrite/n

 

Config.Write.MeterExecutionState.Result/n

 

Config.Write.MeterExecutionState.State/n

1 = stop

2 = run

Section NX19

Data Item

Details

CarbonDioxide

float

CompositionLogging

Composition logging control

0 = log composition changes

1 = do not log composition changes

HeatingValue

float

Nitrogen

float

SpecificGravity

float

Example: Config.Write.NX19.Nitrogen/2

Section VCONE

Data Item

Details

AdiabaticFactor

0 = Legacy

1 = V-Cone

2 = Wafer Cone

ConeDiam

float

ConeDiamRefTemp

float

IsentropicExponent

float

MassFlowRate

float

NumberPoints

1 - 10

PipeMat

2 = carbon steel,

3 = stainless 304

4 = stainless 316

PT1C

Point 1 Coefficient - repeated for 10 points

PT1R

Point 1 Reynold’s number - repeated for 10 points

PT2C

 

PT2R

 

PT3C

 

PT3R

 

PT4C

 

PT4R

 

PT5C

 

PT5R

 

PT6C

 

PT6R

 

PT7C

 

PT7R

 

PT8C

 

PT8R

 

PT9C