The ProductionPartStateMachineType shows the states a part can be in and the possible transitions between those states. Their representation in the OPC UA address space is given in Table 54. The name of each transition consists of the names of the states it connects: [FromState]To[ToState].
The ProductionPartStateMachineType is formally defined in Table 52.
Table 52 – ProductionPartStateMachineType Definition
Attribute |
Value |
|||||
BrowseName |
ProductionPartStateMachineType |
|||||
IsAbstract |
False |
|||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Other |
|
Subtype of the ProductionStateMachineType defined in 8.4.8 i.e. inheriting the InstanceDeclarations of that Node. |
||||||
0:HasComponent |
Object |
Aborted |
|
0:StateType |
None |
|
0:HasComponent |
Object |
AbortedToInitializing |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
Ended |
|
0:StateType |
None |
|
0:HasComponent |
Object |
EndedToInitializing |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
Initializing |
|
0:InitialStateType |
None |
|
0:HasComponent |
Object |
InitializingToAborted |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
InitializingToRunning |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
Interrupted |
|
0:StateType |
None |
|
0:HasComponent |
Object |
InterruptedToAborted |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
InterruptedToRunning |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
Running |
|
0:StateType |
None |
|
0:HasComponent |
Object |
RunningToAborted |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
RunningToEnded |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
RunningToInterrupted |
|
0:TransitionType |
None |
|
0:HasComponent |
Object |
RunningToRunning |
|
0:TransitionType |
None |
|
Conformance Units |
||||||
MachineTool Production ProductionPartStateMachineType |
The ProductionPartStateMachineType allows to send Events of ProductionPartTransitionEventType with every transition, as indicated in Table 54. This makes it possible to send all relevant information of the ProductionPartType the state machine instance belongs to with the TransitionEvent.
Ended is reached when the production on the part has finished. The PartQuality may be changed while in this state, implying that the part is measured after the production process. The part does not have to be mounted inside the machine while in this state.
Initializing implies the part is scheduled for production, but the machining process on the part has not yet started. The part does not have to be mounted inside the machine while in this state.
Running indicates that the processing of the part within the machine has been started or re-started and is currently running.
InitializingToRunning is triggered when the processing of the part starts. This Transition requires the part to be mounted within the machine .
RunningToEnded is triggered when the processing of the part finishes. This Transition does not require an update of the PartQuality.
The states and transitions shall have the numbers indicated in Table 53. The Number property of CurrentState and LastTransition shall use those same numbers for the respective state/transition.
Table 53 - ProductionPartStateMachineType Attribute values for child Nodes
BrowsePath |
Value Attribute |
||
|
0 |
||
|
1 |
||
|
2 |
||
|
3 |
||
|
4 |
||
|
0 |
||
|
1 |
||
|
2 |
||
|
3 |
||
|
4 |
||
|
5 |
||
|
6 |
||
|
7 |
||
|
8 |
||
|
9 |
Fields may be empty which means this Attribute is not defined.
Table 54 – ProductionPartStateMachineType Additional References
SourceBrowsePath |
ReferenceType |
Is Forward |
TargetBrowsePath |
AbortedToInitializing |
0:FromState |
True |
Aborted |
|
0:ToState |
True |
Initializing |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
EndedToInitializing |
0:FromState |
True |
Ended |
|
0:ToState |
True |
Initializing |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
InitializingToAborted |
0:FromState |
True |
Initializing |
|
0:ToState |
True |
Aborted |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
InitializingToRunning |
0:FromState |
True |
Initializing |
|
0:ToState |
True |
Running |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
InterruptedToAborted |
0:FromState |
True |
Interrupted |
|
0:ToState |
True |
Aborted |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
InterruptedToRunning |
0:FromState |
True |
Interrupted |
|
0:ToState |
True |
Running |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
RunningToAborted |
0:FromState |
True |
Running |
|
0:ToState |
True |
Aborted |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
RunningToEnded |
0:FromState |
True |
Running |
|
0:ToState |
True |
Ended |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
RunningToInterrupted |
0:FromState |
True |
Running |
|
0:ToState |
True |
Interrupted |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |
RunningToRunning |
0:FromState |
True |
Running |
|
0:ToState |
True |
Running |
|
0:HasEffect |
True |
ProductionPartTransitionEventType |