The MachineIdentificationTypeis defined in OPC UA for Machinery (OPC 40001-1) and provides basic information on a machine/device.

For the InstanceDeclarationthe ModellingRulesof the Properties Model and DeviceClass are overridden to mandatory and the Property ControllerNameis added.

The Object MachineryBuildingBlockscontains building blocks from OPC UA for Machinery as defined in OPC 40001-1. For this version of OPC 40084-1, the Objectuses the two AddIns MachineryItemStateand MachineryOperationMode, where for the first a sub-state machine with substates for Executingis added.

Table 2– ExtrusionDeviceType Additional Subcomponents

BrowsePath

References

NodeClass

BrowseName

DataType

TypeDefinition

Other

2:Identification

0:HasProperty

Variable

2:Model

0:LocalizedText

0:PropertyType

M, RO

2:Identification

0:HasProperty

Variable

2:DeviceClass

0:String

0:PropertyType

M, RO

2:Identification

0:HasProperty

Variable

ControllerName

0:String

0:PropertyType

M, RO

4:MachineryBuildingBlocks

0:HasAddIn

Object

2:Identification

4:MachineIdentificationType

M

4:MachineryBuildingBlocks

0:HasAddIn

Object

4:MachineryItemState

ExtrusionMachineryItemState_StateMachineType

M

4:MachineryBuildingBlocks

0:HasAddIn

Object

4:MachineryOperationMode

4:MachineryOperationModeStateMachineType

M

The ControllerName Property represents the name of the machine controller (e.g. “CP22xx”).

For this specification the MachineryItemState defined in OPC UA for Machinery is extended by a SubStateMachinefor the State Executing.

image009.png

Figure 4– Extended MachineryItemState

For this, the ExtrusionMachineryItemState_StateMachineTypeis defined in Table 3.

Table 3– ExtrusionMachineryItemState_StateMachineType definition

Attribute

Value

BrowseName

ExtrusionMachineryItemState_StateMachineType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

Subtype of 4:MachineryItemState_StateMachineTypedefined in OPC UA for Machinery

0:HasProperty

Variable

0:DefaultInstanceBrowseName

0:QualifiedName

0:PropertyType

0:HasComponent

Object

4:NotAvailable

0:StateType

0:HasComponent

Object

4:OutOfService

0:StateType

0:HasComponent

Object

4:Executing

0:StateType

0:HasComponent

Object

4:NotExecuting

0:StateType

0:HasComponent

Object

4:FromNotAvailableToOutOfService

0:TransitionType

0:HasComponent

Object

4:FromNotAvailableToNotExecuting

0:TransitionType

0:HasComponent

Object

4:FromNotAvailableToExecuting

0:TransitionType

0:HasComponent

Object

4:FromNotAvailableToNotAvailable

0:TransitionType

0:HasComponent

Object

4:FromOutOfServiceToNotAvailable

0:TransitionType

0:HasComponent

Object

4:FromOutOfServiceToNotExecuting

0:TransitionType

0:HasComponent

Object

4:FromOutOfServiceToExecuting

0:TransitionType

0:HasComponent

Object

4:FromOutOfServiceToOutOfService

0:TransitionType

0:HasComponent

Object

4:FromNotExecutingToNotAvailable

0:TransitionType

0:HasComponent

Object

4:FromNotExecutingToOutOfService

0:TransitionType

0:HasComponent

Object

4:FromNotExecutingToExecuting

0:TransitionType

0:HasComponent

Object

4:FromNotExecutingToNotExecuting

0:TransitionType

0:HasComponent

Object

4:FromExecutingToNotAvailable

0:TransitionType

0:HasComponent

Object

4:FromExecutingToOutOfService

0:TransitionType

0:HasComponent

Object

4:FromExecutingToNotExecuting

0:TransitionType

0:HasComponent

Object

4:FromExecutingToExecuting

0:TransitionType

0:HasComponent

Object

4:ExtrusionExecutingSubState

ExtrusionExecutingSubState_StateMachineType

M

The InstanceDeclarationsof the ExtrusionMachineryItemState_StateMachineType have additional Attribute values defined in Table 4

Table 4– ExtrusionMachineryItemState_StateMachineType Attribute Values for Child Nodes

BrowsePath

Value Attribute

Description Attribute

0:DefaultInstanceBrowseName

MachineryItemState

The default BrowseName for instances of the type

4:NotAvailable

The machine is not available and does not perform any activity (e.g., switched off, in energy saving mode)

4:OutOfService

The machine is not functional and does not perform any activity (e.g., error, blocked)

4:NotExecuting

The machine is available & functional and does not perform any activity. It waits for an action from outside to start or restart an activity

4:Executing

The machine is available & functional and is actively performing an activity (pursues a purpose)

4:FromNotAvailableToOutOfService

Transition from state NotAvailable to state OutOfService

4:FromNotAvailableToNotExecuting

Transition from state NotAvailable to state NotExecuting

4:FromNotAvailableToExecuting

Transition from state NotAvailable to state Executing

4:FromNotAvailableToNotAvailable

Transition from state NotAvailable to state NotAvailable

4:FromOutOfServiceToNotAvailable

Transition from state OutOfService to state NotAvailable

4:FromOutOfServiceToNotExecuting

Transition from state OutOfService to state NotExecuting

4:FromOutOfServiceToExecuting

Transition from state OutOfService to state Executing

4:FromOutOfServiceToOutOfService

Transition from state OutOfService to state OutOfService

4:FromNotExecutingToNotAvailable

Transition from state NotExecuting to state NotAvailable

4:FromNotExecutingToOutOfService

Transition from state NotExecuting to state OutOfService

4:FromNotExecutingToExecuting

Transition from state NotExecuting to state Executing

4:FromNotExecutingToNotExecuting

Transition from state NotExecuting to state NotExecuting

4:FromExecutingToNotAvailable

Transition from state Executing to state NotAvailable

4:FromExecutingToOutOfService

Transition from state Executing to state OutOfService

4:FromExecutingToNotExecuting

Transition from state Executing to state NotExecuting

4:FromExecutingToExecuting

Transition from state Executing to state Executing

4:NotAvailable

0:StateNumber

0

4:OutOfService

0:StateNumber

1

4:NotExecuting

0:StateNumber

2

4:Executing

0:StateNumber

3

4:FromNotAvailableToOutOfService

0:TransitionNumber

0

4:FromNotAvailableToExecuting

0:TransitionNumber

1

4:FromNotAvailableToNotExecuting

0:TransitionNumber

2

4:FromOutOfServiceToNotAvailable

0:TransitionNumber

3

4:FromOutOfServiceToExecuting

0:TransitionNumber

4

4:FromOutOfServiceToNotExecuting

0:TransitionNumber

5

4:FromExecutingToNotAvailable

0:TransitionNumber

6

4:FromExecutingToOutOfService

0:TransitionNumber

7

4:FromExecutingToNotExecuting

0:TransitionNumber

8

4:FromNotExecutingToNotAvailable

0:TransitionNumber

9

4:FromNotExecutingToOutOfService

0:TransitionNumber

10

4:FromNotExecutingToExecuting

0:TransitionNumber

11

4:FromNotAvailableToNotAvailable

0:TransitionNumber

12

4:FromOutOfServiceToOutOfService

0:TransitionNumber

13

4:FromExecutingToExecuting

0:TransitionNumber

14

4:FromNotExecutingToNotExecuting

0:TransitionNumber

15

The components of the ExtrusionMachineryItemState_StateMachineType have additional Referenceswhich are defined in Table 5. As extension to the MachineryItemState_StateMachineTypethe State Executinggets an additional reference to the ExtrusionExecutingSubState.

Table 5– ExtrusionMachineryItemState_StateMachineType Additional Reference

SourceBrowsePath

Reference Type

Is Forward

TargetBrowsePath

4:FromNotAvailableToOutOfService

0:FromState

True

4:NotAvailable

0:ToState

True

4:OutOfService

4:FromNotAvailableToExecuting

0:FromState

True

4:NotAvailable

0:ToState

True

4:Executing

4:FromNotAvailableToNotExecuting

0:FromState

True

4:NotAvailable

0:ToState

True

4:NotExecuting

4:FromOutOfServiceToNotAvailable

0:FromState

True

4:OutOfService

0:ToState

True

4:NotAvailable

4:FromOutOfServiceToExecuting

0:FromState

True

4:OutOfService

0:ToState

True

4:Executing

4:FromOutOfServiceToNotExecuting

0:FromState

True

4:OutOfService

0:ToState

True

4:NotExecuting

4:FromExecutingToNotAvailable

0:FromState

True

4:Executing

0:ToState

True

4:NotAvailable

4:FromExecutingToOutOfService

0:FromState

True

4:Executing

0:ToState

True

4:OutOfService

4:FromExecutingToNotExecuting

0:FromState

True

4:Executing

0:ToState

True

4:NotExecuting

4:FromNotExecutingToNotAvailable

0:FromState

True

4:NotExecuting

0:ToState

True

4:NotAvailable

4:FromNotExecutingToOutOfService

0:FromState

True

4:NotExecuting

0:ToState

True

4:OutOfService

4:FromNotExecutingToExecuting

0:FromState

True

4:NotExecuting

0:ToState

True

4:Executing

4:FromNotAvailableToNotAvailable

0:FromState

True

4:NotAvailable

0:ToState

True

4:NotAvailable

4:FromOutOfServiceToOutOfService

0:FromState

True

4:OutOfService

0:ToState

True

4:OutOfService

4:FromExecutingToExecuting

0:FromState

True

4:Executing

0:ToState

True

4:Executing

4:FromNotExecutingToNotExecuting

0:FromState

True

4:NotExecuting

0:ToState

True

4:NotExecuting

4:Executing

0:HasSubStateMachine

True

ExtrusionExecutingSubState

The ExtrusionExecutingSubState_StateMachineTypeis used for a SubStateMachinewhich divides the Executing Stateinto ReadyToRun, ManualRunand ControlledRun. This SubStateMachine is not active if the parent State Executing is not active. In this case the CurrentState and LastTransition Variables of the ExtrusionExecutingSubStatestate machine shall have a status equal to Bad_StateNotActive.

Table 6– ExtrusionExecutingSubState_StateMachineType

Attribute

Value

BrowseName

ExtrusionExecutingSubState_StateMachineType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Other

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

0:HasComponent

Object

ReadyToRun

0:StateType

0:HasComponent

Object

ManualRun

0:StateType

0:HasComponent

Object

ControlledRun

0:StateType

0:HasComponent

Object

FromReadyToRunToManualRun

0:TransitionType

0:HasComponent

Object

FromManualRunToReadyToRun

0:TransitionType

0:HasComponent

Object

FromReadyToRunToControlledRun

0:TransitionType

0:HasComponent

Object

FromControlledRunToReadyToRun

0:TransitionType

0:HasComponent

Object

FromManualRunToControlledRun

0:TransitionType

0:HasComponent

Object

FromControlledRunToManualRun

0:TransitionType

Conformance Units

Extrusion Device

The difference between NotExecutingand ReadyToRunis that in he state NotExecutingalso the heating is switched off and in the state ReadyToRunit is switched on (but no movement of the screw).

The InstanceDeclarationof the ExtrusionExecutionSubState_StateMachineTypehas additional Attribute values defined in Table 7.

Table 7– ExtrusionExecutingSubState_StateMachineType Attribute Values for Child Nodes

SourceBrowsePath

Value

Description

ReadyToRun

Component is not running but able to start immediately (e.g. heating is switched on, set temperatures have been reached)

ManualRun

Component is running with manually set parameters

ControlledRun

Component is running with controlled parameters

FromReadyToRunToManualRun

Transition from state ReadyToRun to state ManualRun

FromManualRunToReadyToRun

Transition from state ManualRun to state ReadyToRun

FromReadyToRunToControlledRun

Transition from state ReadyToRun to state ControlledRun

FromControlledRunToReadyToRun

Transition from state ControlledRun to state ReadyToRun

FromManualRunToControlledRun

Transition from state ManualRun to state ControlledRun

FromControlledRunToManualRun

Transition from state ControlledRun to state ManualRun

ReadyToRun

0:StateNumber

0

ManualRun

0:StateNumber

1

ControlledRun

0:StateNumber

2

FromReadyToRunToManualRun

0:TransitionNumber

0

FromManualRunToReadyToRun

0:TransitionNumber

1

FromReadyToRunToControlledRun

0:TransitionNumber

2

FromControlledRunToReadyToRun

0:TransitionNumber

3

FromManualRunToControlledRun

0:TransitionNumber

4

FromControlledRunToManualRun

0:TransitionNumber

5

The components of the ExtrusionExecutingSubState_StateMachineTypehave additional Referenceswhich are defined in Table 8.

Table 8– ExtrusionExecutingSubState_StateMachineType Additional References

SourceBrowsePath

Reference Type

Is Forward

TargetBrowsePath

FromReadyToRunToManualRun

0:FromState

True

ReadyToRun

0:ToState

True

ManualRun

FromManualRunToReadyToRun

0:FromState

True

ManualRun

0:ToState

True

ReadyToRun

FromReadyToRunToControlledRun

0:FromState

True

ReadyToRun

0:ToState

True

ControlledRun

FromControlledRunToReadyToRun

0:FromState

True

ControlledRun

0:ToState

True

ReadyToRun

FromManualRunToControlledRun

0:FromState

True

ManualRun

0:ToState

True

ControlledRun

FromControlledRunToManualRun

0:FromState

True

ControlledRun

0:ToState

True

ManualRun