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.