Table 38 defines the structure of an MDISChokeObjectType. 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 MDISChokeObjectType. When an MDISChokeObjectType Instance is disabled the MDISBaseObjectType defaults are followed and only the StepDurationOpen, StepDurationClose and TotalSteps values will be available.
Table 38 – MDISChokeObjectType Definition
Attribute |
Value |
||||
BrowseName |
MDISChokeObjectType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
Subtype of the MDISBaseObjectType |
|
||||
0:HasComponent |
Variable |
CalculatedPosition |
0:Float |
0:BaseDataVariableType |
M, RO |
0:HasComponent |
Variable |
SetCalculatedPositionStatus |
SetCalculatedPositionEnum |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
PositionInSteps |
0:Int16 |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
Moving |
ChokeMoveEnum |
0:BaseDataVariableType |
M, RO |
0:HasComponent |
Variable |
CommandRejected |
0:Boolean |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Method |
Move |
See 6.6.4 |
M |
|
0:HasComponent |
Method |
Step |
See 6.6.5 |
O |
|
0:HasComponent |
Method |
Abort |
See 6.6.6 |
M |
|
0:HasComponent |
Method |
SetCalculatedPosition |
See 6.6.7 |
M |
|
0:HasComponent |
Variable |
NonDefeatableOpenInterlock |
0:Boolean |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
DefeatableOpenInterlock |
0:Boolean |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
NonDefeatableCloseInterlock |
0:Boolean |
0:BaseDataVariableType |
O, RO |
0:HasComponent |
Variable |
DefeatableCloseInterlock |
0:Boolean |
0:BaseDataVariableType |
O, RO |
0:HasProperty |
Variable |
StepDurationOpen |
0:Duration |
0:PropertyType |
O, RO |
0:HasProperty |
Variable |
StepDurationClose |
0:Duration |
0:PropertyType |
O, RO |
0:HasProperty |
Variable |
TotalSteps |
0:UInt16 |
0:PropertyType |
O, RO |
HasInterlock |
Variable |
<InterlockPlaceholder> |
0:Boolean |
InterlockVariableType |
OP |
ConformanceUnits |
|||||
MDIS Choke Base |
CalculatedPosition – A floating point number that represents the estimated percent open of the choke. This value can be updated using the SetCalculatedPosition Method.
SetCalculatedPositionStatus – an enumeration that reflect the status of a SetCalculatedPosition Command. This variable is present if the SetCalculatedPosition command can return asynchronously.
PositionInSteps – An Int16 that represents position in steps for the choke.
CommandRejected –– A flag that, if set to True, indicates that the choke 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 choke is in the disabled state
Enabled – This Boolean reflects if the choke is available for control. The behaviour follows the MDISBaseObjectType.
Moving – An enumeration indicating the confirmed operation of the choke, (confirmed by SPCS Vendor). Possible status for a choke is moving and stopped.
Move – This Method allows an operator to increase or decrease the size of the opening in the choke. This command moves the choke to the percent value provided as part of the command.
Step – This Method allows an operator to increase or decrease the size of the opening in the choke. This command moves the choke the number of steps provided as part of the command.
Abort – This Method allows an operator to cancel any currently active move or step command.
SetCalculatedPosition – This Method is used to calibrate the CalculatedPosition. It can only be called when the choke is not moving.
EnableDisable – The choke, when disabled, places a non-defeatable interlock set on Move and Step functionality, in addition to the functionality described in the MDISBaseObjectType.
StepDurationOpen – SPCS open step duration period. This is the time in milliseconds for the choke to open one step.
StepDurationClose – SPCS close step duration period. This is the time in milliseconds for the choke to close one step.
TotalSteps – Total number of steps is the max steps of a choke.
<InterlockPlaceholder > – The number of interlock Variables will change based on the project and even choke 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 following Variables indicate that an interlock is set (TRUE) or is not set (FALSE). The Variable shall be the target of an InterlockFor Reference from an instance of an InterlockVariableType that describes the actual interlock.
NonDefeatableOpenInterlock – The open choke command is interlocked and cannot be overridden.
DefeatableOpenInterlock – The open choke command is interlocked and can be overridden.
NonDefeatableCloseInterlock – The close choke command is interlocked and cannot be overridden.
DefeatableCloseInterlock – The close choke command is interlocked and can be overridden.
The MDISChokeObjectType is a subtype of MDISBaseObjectType and inherit the FaultCode Variable. The MDISChokeObjectType defines the standard FaultCodes (for bits 0-15 as defined in 6.2.2) in Table 39. All subtypes of this the MDISChokeObjectType will inherit all FaultCodes defined in this table. Subtypes may define additional FaultCodes in their own table.
Table 39 – MDISChokeObjectType FaultCode Values
Value |
Bit no. |
Description |
FailedToMove |
0 |
The Choke failed to move in response to a command. |
CommunicationFault |
1 |
Not possible to operate the choke. |
The MDISChokeObjectType defines the standard WarningCodes (for bits 0-15 as defined in 6.2.2)in Table 40. All subtypes of this the MDISChokeObjectType will inherit all WarningCodes defined in this table. Subtypes may define additional WarningCodes in their own table.
Table 40 – MDISChokeObjectType WarningCode Values
Value |
Bit no. |
Description |
SideAProblem |
0 |
There is an issue with the A side of the choke. |
SideBProblem |
1 |
There is an issue with the B side of the choke. |
Discrepancy |
2 |
There is a discrepancy between the calculated position and the measured position. |
UncommandedChange |
3 |
The choke position changed without a command. |