Table 56 defines the structure of an MDISCIMVObjectType. 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 MDISCIMVObjectType. When an MDISCIMVObjectType Instance is disabled the MDISBaseObjectType defaults are followed - no additional values will be available.

Table 56 – MDISCIMVObjectType Definition

Attribute

Value

BrowseName

MDISCIMVObjectType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the MDISBaseObjectType (define in 6.2.2)

0:HasComponent

Variable

OperationMode

CIMVOperationModeEnum

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

FlowRate

0:Float

0:AnalogItemType

M, RO

0:HasComponent

Variable

TargetFlowRate

0:Float

0:AnalogItemType

M, RO

0:HasComponent

Variable

TotalFlow

0:Float

0:AnalogItemType

O, RO

0:HasComponent

Method

ResetTotalFlow

See 6.9.9

O

0:HasComponent

Variable

Position

0:Float

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

TargetPosition

0:Float

0:BaseDataVariableType

M, RO

0:HasComponent

Variable

Moving

CIMVMoveEnum

0:BaseDataVariableType

M, RO

0:HasComponent

Object

TotalMotorRuntime

MDISCounterObjectType

O, RO

0:HasComponent

Object

MotorOperationsCount

MDISCounterObjectType

O, RO

0:HasComponent

Variable

DeviceCurrent

0:Float

0:AnalogItemType

O, RO

0:HasComponent

Variable

InletPressure

0:Float

0:AnalogItemType

O, RO

0:HasComponent

Variable

InternalPressure

0:Float

0:AnalogItemType

O, RO

0:HasComponent

Variable

OutletPressure

0:Float

0:AnalogItemType

O, RO

0:HasComponent

Variable

CommandRejected

0:Boolean

0:BaseDataVariableType

O, RO

0:HasComponent

Method

SetOperationMode

See 6.9.4

M

0:HasComponent

Method

SetFlowRate

See 6.9.5

M

0:HasComponent

Method

SetPosition

See 6.9.6

M

0:HasComponent

Method

SetManual

See 6.9.7

O

0:HasComponent

Method

Abort

See 6.9.8

M

0:HasComponent

Variable

NonDefeatableOpenInterlock

0:Boolean

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

NonDefeatableCloseInterlock

0:Boolean

0:BaseDataVariableType

O, RO

0:HasComponent

Variable

NonDefeatableCommandInProgressInterlock

0:Boolean

0:BaseDataVariableType

O, RO

HasInterlock

Variable

<InterlockPlaceholder>

0:Boolean

InterlockVariableType

OP, RO

ConformanceUnits

MDIS CIMV Base

The components of the MDISCIMVObjectType have additional references which are defined in Table 57.

Table 57 – MDISCIMVObjectType Additional Subcomponents

Source Path

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

TotalMotorRuntime

0:HasComponent

Variable

Count

0:Duration

0:BaseDataVariableType

M

TotalMotorRuntime

0:HasComponent

Method

SetCount

M

MotorOperationsCount

0:HasComponent

Variable

Count

0:UInt32

0:BaseDataVariableType

M

MotorOperationsCount

0:HasComponent

Method

SetCount

M

FlowRate

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

TargetFlowRate

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

TotalFlow

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

DeviceCurrent

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

InletPressure

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

InternalPressure

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

OutletPressure

0:HasProperty

Variable

0:EngineeringUnits

0:EUInformation

0:PropertyType

M

 

OperationMode – An enumeration that reflects the current operating mode of the CIMV (see 8.1.8 for a description of the possible enumerations).

FlowRate – A float value that indicates the current inhibitor flow rate. It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration.

TargetFlowRate – A float value that indicates the flow rate which the CIMV will automatically try to maintain when the OperationMode is set to “Flow” (refer to 8.1.8). It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration. The SetFlowRate method (refer to 6.9.5) can be used to change this value.

TotalFlow – A float value that indicates the accumulated volume of inhibitor which has been injected since it was last reset. It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration. If the TotalFlow is provided then the ResetTotalFlow Method shall also be provided.

Position – A Float that represents the current position in percent open for the CIMV.

TargetPosition – A Float that represents the position in percent open which the CIMV will automatically try to maintain when the OperationMode is set to “Position” (refer to 8.1.8). The SetPosition method (refer to 6.9.6) can be used to change this value.

Moving – An enumeration indicating the confirmed operation of the CIMV (confirmed by SPCS Vendor). (see 8.1.9 for a description of the possible enumerations)

TotalMotorRuntime – A value that indicates the accumulated duration of time that the motor has run since it was put into service. The object includes a reset method (see 6.10).

MotorOperationsCount – A value that indicates the total number of motor operations that have been completed since it was last reset. The object includes a reset method (see 6.10).

DeviceCurrent – The measure of the Electrical current being consumed by the device (e.g., motor operations). It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration.

InletPressure – Current pressure on the upstream side of the throttling valve. Upstream in this case means closer to the source of the inhibitor chemical than the throttling valve. It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration.

InternalPressure – Current pressure at the stem of the throttling valve. It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration.

OutletPressure – Current pressure on the downstream side of the throttling valve. Downstream in this case means further from the source of the inhibitor chemical than the throttling valve. It includes properties that represent the engineering units, the engineering units range and optionally the instrument range. Refer to table 16 for illustration.

CommandRejected –– A flag that, if set to True, indicates that the CIMV has rejected the last command issued to it. The command could be rejected for a number of reasons. Possible reasons for rejecting a command include:

  • Loss of subsea communication reported by the SPCS.
  • An active interlock.
  • The CIMV is in the disabled state

Enabled – This Boolean reflects if the CIMV is available for control. The behaviour follows the MDISBaseObjectType.

SetOperationMode – This Method commands the CIMV into one of its operating modes – Position control mode, Flow control mode or Manual control mode.

SetFlowRate – This Method sets the CIMV flow rate when in flow control mode. The CIMV must be in flow control mode in order to invoke this method. It shall return an error if it is not in FlowControlMode

SetPosition – This Method sets the CIMV position when in position control mode. The CIMV must be in position mode in order to invoke this method. It shall return an error if it is not in PositionControlMode

SetManual – This Method allows an operator to open or close the CIMV to the specified percentage. The CIMV must be in manual mode in order to invoke this method. It shall return an error if it is not in ManualControlMode

Abort – This Method allows an operator to cancel any currently active SetOperationMode, SetFlowRate, SetPosition or Move command and return the operation mode to manual.

NonDefeatableCloseInterlock – The close CIMV command is interlocked and cannot be overridden.

NonDefeatableOpenInterlock – The open CIMV command is interlocked and cannot be overridden.

NonDefeatableCommandInProgressInterlock – A CIMV command is progress and no new commands can be issued until the current command ends or is stopped.

<InterlockPlaceholder > – The number of interlock Variables will change based on the project and even CIMV instance. The Variables shall be of InterlockVariableType or a subtype of it. They will be referenced by a HasInterlock Reference and will contain an InterlockFor Reference. Clients can use this information to categorise the interlocks appropriately.

The MDISCIMVObjectType is a subtype of MDISBaseObjectType and inherit the FaultCode Variable. The MDISCIMVObjectType defines the standard FaultCodes (for bits 0-15 as defined in 6.2.2) in Table 58. All subtypes of this the MDISCIMVObjectType will inherit all FaultCodes defined in this table. Subtypes may define additional FaultCodes in their own table.

Table 58 – MDISCIMVObjectType FaultCode Values

Value

Bit no.

Description

FailedToMove

0

The CIMV failed to move in response to a command.

CommunicationFault

1

Not possible to operate the valve.

The MDISCIMVObjectType defines the standard WarningCodes (for bits 0-15 as defined in 6.2.2) in Table 59. All subtypes of this the MDISCIMVObjectType will inherit all WarningCodes defined in this table. Subtypes may define additional WarningCodes in their own table.

Table 59 – MDISCIMVObjectType WarningCode Values

Value

Bit no.

Description

SideAProblem

0

There is an issue with the A side of the valve

SideBProblem

1

There is an issue with the B side of the valve.

PositionDiscrepancy

2

The valve position has a discrepancy (Side A and Side B are different and neither is broken)

UncommandedChange

3

Position of valve changed without an authorized move