F.2 SystemStateStateMachineType

The SystemStateStateMachineType includes a hierarchy of sub-states. It supports multiple transitions between Operating, StartingUp, ShuttingDown, Shutdown, OutOfService and Maintenance.

The state machine is illustrated in Figure F.2 and formally defined in Table F.1.

Figure F.2 – SystemStateStateMachineType Model
Table F.1 – SystemStateStateMachineType definition
Attribute Value
BrowseNameSystemStateStateMachineType
IsAbstractFalse
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of the FiniteStateMachineType defined in 10000-16
HasComponentObjectOperatingStateType
HasComponentObjectShuttingDownStateType
HasComponentObjectStartingUpStateType
HasComponentObjectShutdownStateType
HasComponentObjectOutOfServiceStateType
HasComponentObjectMaintenanceStateType
HasComponentObjectShutdownToOperatingTransitionType
HasComponentObjectOperatingToShutdownTransitionType
HasComponentObjectShuttingDownToShutdownTransitionType
HasComponentObjectOperatingToShuttingDownTransitionType
HasComponentObjectStartingUpToOperatingTransitionType
HasComponentObjectShutdownToStartingUpTransitionType
HasComponentObjectOutOfServiceToShutdownTransitionType
HasComponentObjectShutdownToOutOfServiceTransitionType
HasComponentObjectOutOfServiceToOperatingTransitionType
HasComponentObjectOperatingToOutOfServiceTransitionType
HasComponentObjectMaintenanceToOutOfServiceTransitionType
HasComponentObjectOutOfServiceToMaintenanceTransitionType
HasComponentMethodStartDefined in Clause XXXOptional
HasComponentMethodMaintainDefined in Clause XXXOptional
HasComponentMethodStopDefined in Clause XXXOptional
HasComponentMethodPlaceOutOfServiceDefined in Clause XXXOptional
HasComponentMethodQuickShutdownDefined in Clause XXXOptional
HasComponentMethodQuickStartDefined in Clause XXXOptional
HasComponentMethodOutOfServiceShutdownDefined in Clause XXXOptional

The actual selection of States and Transitions would depend on the deployment of the StateMachine. If the StateMachine were being applied to a tank or other part of a process it might have a different set of States then if it was applied to a meter or instrument. The meter could only have Operating, OutOfService and Maintenance, while the tank could have all of the described States and Transitions. The transitions are defined in Table F.2.

The StateMachine supports six possible states including: Operating, ShuttingDown, StartingUp, Shutdown, OutOfService, Maintenance. It supports 12 possible Transitions and 7 possible Methods.

Table F.2 – SystemStateStateMachineType additional references
SourceBrowsePath References IsForward TargetBrowsePath
ShutdownToOperatingFromStateTrueShutdown
ToStateTrueOperating
HasCauseTrueQuickStart
OperatingToShutdownFromStateTrueOperating
ToStateTrueShutdown
HasCauseTrueQuickShutdown
ShuttingDownToShutdownFromStateTrueShuttingDown
ToStateTrueShutdown
OperatingToShuttingDownFromStateTrueOperating
ToStateTrueShuttingDown
HasCauseTrueStop
StartingUpToOperatingFromStateTrueStartingUp
ToStateTrueOperating
ShutdownToStartingUpFromStateTrueShutdown
ToStateTrueStartingUp
HasCauseTrueStart
OutOfServiceToShutdownFromStateTrueOutOfService
ToStateTrueShutdown
HasCauseTrueOutOfServiceShutdown
ShutdownToOutOfServiceFromStateTrueShutdown
ToStateTrueOutOfService
HasCauseTrueOutOfServiceShutdown
OutOfServiceToOperatingFromStateTrueOutOfService
ToStateTrueOperating
HasCauseTruePlaceOutOfService
OperatingToOutOfServiceFromStateTrueOperating
ToStateTrueOutOfService
HasCauseTruePlaceOutOfService
MaintenanceToOutOfServiceFromStateTrueMaintenance
ToStateTrueOutOfService
HasCauseTrueMaintain
OutOfServiceToMaintenanceFromStateTrueOutOfService
ToStateTrueMaintenance
HasCauseTrueMaintain

The component Variables of the SystemStateStateMachineType have additional Attributes defined inTable F.3.

Table F. 3 – SystemStateStateMachineType Attribute values for child Nodes
BrowsePath Value Attribute
1
2
3
4
5
6
41
14
24
12
31
42
54
45
51
15
65
56

The system can always generate additional HasCause References, such as internal code. No HasEffect References are defined, but an implementation might define HasEffect References (such as HasEffectDisable) for disabling or enabling Alarms, suppressing Alarms or adjusting setpoints or limits of Alarms. The targets of the reference might be an individual Alarm or portion of a plant or piece of equipment. See section 7 for a list of HasEffect References that could be used.