Table 15 defines the structure of an MDISInstrumentObjectType. Any vendor specified properties that have been implemented within a project should be documented within a similar format and supplied to the DCS vendor. The addition of vendor specific properties will result in a subtype of the MDISInstrumentObjectType. If a MDISInstrumentObjectType instance is disabled, the MDISBaseObjectType defaults are followed and only the HHSetPoint,HSetpoint,LSetpoint and LLSetpoint object values will be available

Table 15 - MDISInstrumentObjectType

Attribute

Value

BrowseName

MDISInstrumentObjectType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

RW

Subtype of the MDISBaseObjectType (defined in 5.1.1)

HasComponent

Variable

ProcessVariable

Float

AnalogItemType (see Part 8 – Data Access)

Mandatory

R

HasComponent

Variable

HHlimit

Boolean

BaseDataVariableType

Optional

R

HasComponent

Variable

Hlimit

Boolean

BaseDataVariableType

Optional

R

HasComponent

Variable

Llimit

Boolean

BaseDataVariableType

Optional

R

HasComponent

Variable

LLlimit

Boolean

BaseDataVariableType

Optional

R

HasProperty

Variable

HHSetPoint

Float

PropertyType

Optional

RW

HasProperty

Variable

HSetPoint

Float

PropertyType

Optional

RW

HasProperty

Variable

LSetPoint

Float

PropertyType

Optional

RW

HasProperty

Variable

LLSetPoint

Float

PropertyType

Optional

RW

ProcessVariable – a Variable in engineering units that represents the value of the instance of an MDISInstrumentObjectType. It includes properties that represent the engineering units; the engineering units range and optionally the instrument range, see Table 16 for an illustration, for actual definition see AnalogItemType in OPC UA Part 8. Both the engineering units and engineering units’ range are required.

Table 16 AnalogItemType definition

Attribute

Value

BrowseName

AnalogItemType

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

HasProperty

Variable

InstrumentRange

Range

PropertyType

Optional

HasProperty

Variable

EURange

Range

PropertyType

Mandatory

HasProperty

Variable

EngineeringUnits

EUInformation

PropertyType

Mandatory

The EUInformation DataType is defined in Part 8 – Data Access

HHlimit – The instrument HH state is active

Hlimit – The instrument H state is active

Llimit – The instrument L state is active

LLlimit – The instrument LL state is active

HHSetPoint – Configuration of HHSetPoint which will set HHlimit be TRUE when the ProcessVariable value is greater than “set point value”. If this limit Variable exists on an object, but has not been configured, the HHSetPoint shall have a status code of Bad_ConfigurationError and Clients shall ignore the value. When the HHSetPoint has a Status of Bad_configurationError, if the HHlimit exists, it shall have a status code of Bad_ConfigurationError and the value is ignored.

HSetPoint – Configuration of HSetPoint which will set Hlimit be TRUE when the ProcessVariable value is greater than “set point value”. If this limit Variable exists on an object, but has not been configured, the HSetPoint shall have a status code of Bad_ConfigurationError and Clients shall ignore the value. When the HSetPoint is ignored, if the Hlimit exists, it shall have a status code of Bad_ConfigurationError and the value is ignored.

LSetPoint – Configuration of LSetPoint which will set Llimit be TRUE when the ProcessVariable value is less than “set point value”. If this limit Variable exists on an object, but has not been configured, the LSetPoint shall have a status code of Bad_ConfigurationError and Clients shall ignore the value. When the LSetPoint is ignored, if the Llimit exists, it shall have a status code of Bad_ConfigurationError and the value is ignored.

LLSetPoint – Configuration of LLSetPoint which will set LLlimit be TRUE when the ProcessVariable value is less than “set point value”. If this limit Variable exists on an object, but has not been configured, the LLSetPoint shall have a status code of Bad_ConfigurationError and Clients shall ignore the value. When the LLSetPoint is ignored, if the LLlimit exists, it shall have a status code of Bad_ConfigurationError and the value is ignored.