The ProgramTransitionEventType is a subtype of the TransitionEventType. It is used with Programs to acquire intermediate or final results or other data associated with a state transition. A Program can have a unique ProgramTransitionEventType definition for any transition. Each ProgramTransitionEventType specifies the IntermediateResult data specific to the designated state transition on that ProgramStateMachineType. Each transition can yield different intermediate result data. Table 9 specifies the ProgramTransitionEventType.

Table 10 identifies the ProgramTransitionEventTypes that are specified for ProgramStateMachineTypes.

Table 9 – ProgramTransitionEventType

Attribute

Value

BrowseName

ProgramTransitionEventType

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the base TransitionEventType defined in OPC 10000-5.

HasComponent

Variable

IntermediateResult

BaseDataVariableType

Mandatory

TransitionNumber identifies the Program transition that triggered the Event.

FromStateNumber identifies the state before the Program transition.

ToStateNumber identifies the state after the Program transition.

The IntermediateResult is an Object that aggregates a set of Variables whose values are relevant for the Program at the instant of the associated transition. The ObjectType for the IntermediateResult specifies the collection of Variables using a set of HasComponent References.

Table 10 – ProgramTransitionEvents

BrowseName

References

Target BrowseName

Value

Target TypeDefinition

Notes

Effects

HaltedToReadyEvent

HasProperty

TransitionNumber

1

PropertyType

HasProperty

FromStateNumber

1

PropertyType

HasProperty

ToStateNumber

2

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

ReadyToRunningEvent

HasProperty

TransitionNumber

2

PropertyType

HasProperty

FromStateNumber

2

PropertyType

HasProperty

ToStateNumber

3

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

RunningToHaltedEvent

HasProperty

TransitionNumber

3

PropertyType

HasProperty

FromStateNumber

3

PropertyType

HasProperty

ToStateNumber

1

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

RunningToReadyEvent

HasProperty

TransitionNumber

4

PropertyType

HasProperty

FromStateNumber

3

PropertyType

HasProperty

ToStateNumber

2

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

RunningToSuspendedEvent

HasProperty

TransitionNumber

5

PropertyType

HasProperty

FromStateNumber

3

PropertyType

HasProperty

ToStateNumber

4

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

SuspendedToRunningEvent

HasProperty

TransitionNumber

6

PropertyType

HasProperty

FromStateNumber

4

PropertyType

HasProperty

ToStateNumber

3

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

SuspendedToHaltedEvent

HasProperty

TransitionNumber

7

PropertyType

HasProperty

FromStateNumber

4

PropertyType

HasProperty

ToStateNumber

1

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

SuspendedToReadyEvent

HasProperty

TransitionNumber

8

PropertyType

HasProperty

FromStateNumber

4

PropertyType

HasProperty

ToStateNumber

2

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional

ReadyToHaltedEvent

HasProperty

TransitionNumber

9

PropertyType

HasProperty

FromStateNumber

2

PropertyType

HasProperty

ToStateNumber

1

PropertyType

HasComponent

IntermediateResults

ObjectType

Optional