The PackMLStatusObjectType defines an ObjectType that is used to group all of the status information that is part of the PackML information model. It is illustrated in Figure 12

image016.png

Figure 12 - PackMLStatusObjectType Overview

Table 4 formally defines the PackMLStatusObjectType.

Table 4 – PackMLStatusObjectType Definition

Attribute

Value

BrowseName

PackMLStatusObjectType

IsAbstract

False

Reference

Node Class

BrowseName

DataType

TypeDefinition

ModellingRule

RW

Subtype of the BaseObjectType from OPC 10000-5.

HasComponent

Variable

UnitModeRequested

Boolean

BaseDataVariableType

Optional

R

HasProperty

Variable

UnitSupportedModes

NodeId

PropertyType

Mandatory

R

HasComponent

Variable

UnitModeCurrent

Enumeration

BaseDataVariableType

Mandatory

R

HasComponent

Variable

UnitModeChangeInProcess

Boolean

BaseDataVariableType

Optional

R

HasComponent

Variable

StateRequested

Int32

BaseDataVariableType

Optional

R

HasComponent

Variable

StateChangeInProcess

Boolean

BaseDataVariableType

Optional

R

HasComponent

Variable

MachSpeed

Float

AnalogItemType

Mandatory

R

HasComponent

Variable

CurMachSpeed

Float

AnalogItemType

Mandatory

R

HasComponent

Variable

EquipmentBlocked

Boolean

BaseDataVariableType

Mandatory

R

HasComponent

Variable

EquipmentStarved

Boolean

BaseDataVariableType

Mandatory

R

HasComponent

Variable

MaterialInterlocked

Boolean

BaseDataVariableType

Optional

R

HasInterlock

Variable

MaterialInterlock

Boolean[]

BaseDataVariableType

Optional

R

HasComponent

Variable

Parameter

PackMLDescriptorDataType[]

BaseDataVariableType

Optional

R

HasComponent

Variable

RemoteParameter

PackMLRemoteInterfaceDataType[]

BaseDataVariableType

Optional

R

HasComponent

Variable

Product

PackMLProductDataType[]

BaseDataVariableType

Optional

R

In OPC UA defined StateMachines, a mandatory Variable CurrentState provides the current state of the StateMachine, which is the current state of the PackML device. CurrentState is defined in OPC 10000-5.

UnitModeRequested - If TRUE, indicates that a unit mode change was requested, reflects the status of the Command UnitModeRequested.

UnitSupportedModes – provides the NodeId of the enumeration DataType that describes the available modes for this PackML instance. A Server might have more than one of these instances; each instance might expose a different set of available modes and thus have a different enumeration.

UnitModeCurrent - is used to display the current mode of the instance of this type. The DataType is Enumeration which is abstract, but an instance shall be assigned a concrete enumeration, which corresponds to the enumeration listed in UnitSupportedModes.

UnitModeChangeInProcess – a flag that indicates a unit change has been requested and is in progress

StateRequested - This value is used for state transition checking, to ensure that transitions to a target state can be achieved. The target state, StateRequested, is a numerical value corresponding to a state in the base state model (shown above).

StateChangeInProcess – a flag that indicates that a state change has been requested and is in progress. The StateMachine will report the current state.

MachSpeed - Setpoint speed of the unit.

CurMachSpeed - Current speed of the unit.

Equipment Blocked - If TRUE, then processing is suspended because downstream equipment is unable to receive material (e.g. downstream buffer is full)

Equipment Starved - If TRUE, then processing is suspended because upstream equipment is unable to send material.

MaterialInterlocked – a flag that indicates this machine is interlocked. It is a summary of the interlock variable that is associated with this machine.

MaterialInterlock - this is an array and describes the status of the materials that are ready for processing. It is comprised of a series of Boolean with 1 equaling readyor not low, 0 equaling not ready or low. Each bit represents a different user material.

Parameter – Current parameters used in the production job. This reflects the last parameter sent via the SetParameter Method.

RemoteParameter – the last remote parameter that were sent to the machine. This is optional variable is provided only if sending remote parameters are supported, the RemoteCommand Method is provided this variable shall also be provided. For additional details see the RemoteCommand Method definition in 6.7.15.

Product – provides a list of the products supported by this machine. The array is typically needed for machines that run multiple products. It defines the IDs of the products and process & process variables associated with the product. The product data can come from either a local HMI or remote systems and are used to process the product on the unit machine.