The ProductionStateMachineTypeshows the states an element in production can be in and the possible transitions between those states. The states and transitions are depicted in Figure 15. Their representation in the OPC UA address space is given in Table 42. The name of each transition consists of the names of the states it connects: [FromState]To[ToState]. Their Referencesare specified in Table 45.

image020.png

Figure 15– The States and Transitions of the ProductionStateMachineType

The ProductionStateMachineTypeis formally defined in Table 42.

Table 42– ProductionStateMachineType Definition

Attribute

Value

BrowseName

ProductionStateMachineType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of the 0:FiniteStateMachineTypedefined in OPC 10000-5i.e. inheriting the InstanceDeclarations of that Node.

0:HasComponent

Object

Aborted

0:StateType

None

0:HasComponent

Object

AbortedToInitializing

0:TransitionType

None

0:HasComponent

Variable

0:CurrentState

0:LocalizedText

0:FiniteStateVariableType

M, RO

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

Variable

0:LastTransition

0:LocalizedText

0:FiniteTransitionVariableType

O, RO

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 LastTransition

The states and transitions shall have the numbers indicated in Table 44. The Numberproperty of CurrentStateand LastTransitionshall use those same numbers for the respective state/transition.

The components CurrentStateand LastTransitionof the ProductionStateMachineType have their optional property Numberchanged to be mandatory, as defined in Table 43.

Table 43– ProductionStateMachineType Additional Subcomponents

BrowsePath

References

NodeClass

BrowseName

DataType

TypeDefinition

Others

0:CurrentState

0:HasProperty

Variable

0:Number

0:UInt32

0:PropertyType

M, RO

0:LastTransition

0:HasProperty

Variable

0:Number

0:UInt32

0:PropertyType

M, RO

The state Abortedindicates that the operation of or on an element in production has been irreversibly stopped before finishing.

Endedis reached when the operation of or on an element in production has finished.

Initializingis the state in which the element in production is being prepared. During this state, the machine doesn’t have to be ready for production, although it has to be as soon as the transition InitializingToRunning is used. The production is not yet started.

Interruptedindicates that the execution of or on the element in production has been reversibly halted. This is usually due to an error or an intervention by the operating personnel. It is possible to restart operation of or on the element in production after it was in the interrupted state.

Runningindicates that the operation of or on an element in production has been started or re-started and is currently running.

Table 44– ProductionStateMachineType Attribute values for child Nodes

BrowsePath

Value Attribute

Initializing

0:StateNumber

0

Running

0:StateNumber

1

Ended

0:StateNumber

2

Interrupted

0:StateNumber

3

Aborted

0:StateNumber

4

InitializingToRunning

0:TransitionNumber

0

RunningToEnded

0:TransitionNumber

1

EndedToInitializing

0:TransitionNumber

2

RunningToRunning

0:TransitionNumber

3

RunningToInterrupted

0:TransitionNumber

4

InterruptedToRunning

0:TransitionNumber

5

RunningToAborted

0:TransitionNumber

6

InterruptedToAborted

0:TransitionNumber

7

AbortedToInitializing

0:TransitionNumber

8

InitializingToAborted

0:TransitionNumber

9

Fields may be empty which means this Attributeis not defined.

InitializingToRunningis triggered when the operation of or on an element in production starts.

RunningToEndedis triggered when the operation of or on an element in production finishes.

EndedToInitializingis triggered when re-initialization of the operation of or on an element in production starts.

RunningToRunningis triggered when another consecutive run of the operation of or on an element in production in direct succession starts.

RunningToInterruptedis triggered when the operation of or on an element in production is interrupted.

InterruptedToRunningis triggered when an interruption ends and the operation of or on an element in production continues running.

RunningToAbortedis triggered when the operation of or on an element in production is aborted while in the Runningstate.

InterruptedToAbortedis triggered when the operation of or on an element in production is aborted while in the Interruptedstate.

AbortedToInitializingis triggered if the operation of or on an element in production is being re-initialized after an abort.

InitializingToAbortedis triggered when the operation of or on an element in production is aborted while in the Initializingstate.

Table 45– ProductionStateMachineType Additional References

SourceBrowsePath

ReferenceType

Is Forward

TargetBrowsePath

AbortedToInitializing

0:FromState

True

Aborted

0:ToState

True

Initializing

EndedToInitializing

0:FromState

True

Ended

0:ToState

True

Initializing

InitializingToAborted

0:FromState

True

Initializing

0:ToState

True

Aborted

InitializingToRunning

0:FromState

True

Initializing

0:ToState

True

Running

InterruptedToAborted

0:FromState

True

Interrupted

0:ToState

True

Aborted

InterruptedToRunning

0:FromState

True

Interrupted

0:ToState

True

Running

RunningToAborted

0:FromState

True

Running

0:ToState

True

Aborted

RunningToEnded

0:FromState

True

Running

0:ToState

True

Ended

RunningToInterrupted

0:FromState

True

Running

0:ToState

True

Interrupted

RunningToRunning

0:FromState

True

Running

0:ToState

True

Running