6.2.3.1 Variable ControlMode

The ControlMode property describes the control mode of the machine. The ControlMode has Data Type ControlModeEnumeration which is defined in Table 9 according to PackML Unit/Machine implementation guide.

Table 9 – ControlModeEnumeration Definition

EnumString Value Description
OTHER 0 This state is used if no other state below applies.
PRODUCTION 1 Primary Mode used for all production activities, All PackML model states will be utilized. PackTags are active and reporting. The unit/machine executes relevant logic in response to commands which are mainly coming from External Systems, or entered directly by the operator.
MAINTENANCE 2 Used for routine preventive Maintenance or planned maintenance. Shall be utilized to document planned maintenance occurrence and duration.
This mode allows authorized personnel to run the unit/machine independent of other systems. This mode would typically be used for fault finding, machine trials, or testing operational improvements.
For example: The cleaning of a print head is maintenance.
MANUAL 3 Used for fault diagnosis of unplanned technical intervention.
CHANGE OVER 4 Used specifically for format or recipe change over, includes “cleaning” operations.
CLEAN 5 Used for Routine Cleaning requirements example: as specified by factory maintenance procedures.
SET UP 6 Used for set up or adjustments example: mechanical adjustments and testing.
EMPTY OUT 7 Used to empty out machine example: end of a block of shifts prior to factory weekend shut down, empty out resident product within the machine that could be sent to finished product and minimize part finished “rework”.
REMOTE SERVICE 8 Used when the state machine accepts commands from OPC UA clients, e.g. for remote service. Remark. The Remote Service mode fulfil the safety requirements of the harmonized norm EN415-10:2011 (Safety of packaging machines).

6.2.3.2 Variable IdleEnergySavingMode

The IdleEnergySavingMode Property is set to True when the energy saving mode during the idle phase is set.

6.2.3.3 Variable State

The Property State describes the status of the state machine controlling the machine module. The Property States has Data Type StateEnumeration which is defined in Table 10 according to the PackML definitions.

Table 10 – StateEnumeration Definition

EnumString Value Description Required
Stopped 0 The state of the machine module is stopped. Yes
Resetting 1 The state of the machine module is resetting.
Idle 2 The state of the machine module is idle. Yes
Starting 3 The state of the machine module is starting.
Execute 4 The state of the machine module is execute. Yes
Completing 5 The state of the machine module is completing.
Complete 6 The state of the machine module is complete.
Aborting 7 The state of the machine module is aborting.
Aborted 8 The state of the machine module is aborted. Yes
Stopping 9 The state of the machine module is stopping.
Clearing 10 The state of the machine module is clearing.
Suspending 11 The state of the machine module is suspending.
Suspended 12 The state of the machine module is suspended.
Un-suspending 13 The state of the machine module is un-suspending.
Holding 14 The state of the machine module is holding.
Held 15 The state of the machine module is held.
Un-holding 16 The state of the machine module is un-holding.

The minimum set of states that the machine module shall manage is identified above in the required column.

6.2.3.4 Method SendCommand

The Method SendCommand sends a command to change the state of the machine module state machine remotely.

Signature

SendCommand (
[in]	CommandEnumeration		     	Command
[out]	MethodExecutionFeedbackType		ExecutionFeedback
);


Argument Description
Command The command to be sent to the machine module.
ExecutionFeedback The extended feedback returning a detailed message in case of execution failure.

The Enumeration Data Type CommandEnumeration is defined in Table 11 according to the PackML definitions.

Table 11 – CommandEnumeration Definition

EnumString Value Description
Abort 0 Command to transition the state of the machine module to Aborted.
Start 1 Command to transition the state of the machine module to Execute.
Stop 2 Command to transition the state of the machine module to Stopped.
Reset 3 Command to transition the state of the machine module to Idle.
Hold 4 Command to transition the state to machine module to Held (or Idle when only the minimum set of states required is implemented).
Un-Hold 5 Command to transition the state to Execute.
Clear 6 Command to transition the state to Idle

The underlying system will execute commands provided with the SendCommand Method when the Command Argument equals “Abort”, “Stop”, “Hold”.

The underlying system will execute commands provided with the SendCommand Method when the Command Argument equals “Start”, “Reset”, Un-Hold”, “Clear” and the ControlMode equals “REMOTE SERVICE”.

The underlying system will execute local commands regardless of the value of ControlMode.

The underlying system shall comply with harmonised norms EN415-10:2011 (Safety of packaging machines).

The Structure Data Type MethodExecutionFeedbackType is defined in Table 12 and will be extensively used for method calls in the present document. The Structure DataType MessageType is defined in Table 13.

Table 12 – MethodExecutionFeedbackType Definition

Name Type Description
MethodExecutionFeedbackType Structure The exended feedback returning a detailed message in case of failure.
Success Boolean Returns True in case of successful execution. In case of success.
Message Array of [MessageType] Array of detailed messages describing the reason of the unsuccesful execution or notice for the user.

When a SendCommand Method is executed by the underlying system, the Message in MethodExecutionFeedback is suitably displayed on the machine HMI to inform the machine user, e.g. “A remote Stop command was executed. Requested by MES Client”.

Table 13 – MessageType Definition

Name Type Description
MessageType Structure
ID String Unique identifier for the message.
LocalText LocalizedText Plain English message.

Method Result Codes

The following results codes are returned without any user application development.

ResultCode Description
BadNodeIdUnknown See table 173 in OPC 10000-4 for the description of these result codes.

6.2.3.5 Method SetControlMode

The Method SetControlMode sets the control mode of the machine module.

Signature

SetControlMode (
[in]	ControlModeEnumeration			ControlModeToSet
[out]	MethodExecutionFeedbackType		ExecutionFeedback
);


Argument Description
ControlModeToSet The control mode that the client requires to be set to the state machine od the machine module.
ExecutionFeedback The extended feedback returning a detailed message in case of execution failure.

The Type MethodExecutionFeedbackType is defined in Table 12. The Enumeration Data Type ControlModeEnumeration is defined in Table 9.

Method Result Codes

ResultCode Description
BadNodeIdUnknown See table 173 in OPC 10000-4 for the description of these result codes.

6.2.3.6 Method SetIdleEnergySavingMode

The Method SetIdleEnergySavingMode turns on the energy saving mode when the machine module is idle.

Signature

SetIdleEnergySavingMode (
[in]	Boolean					IdleEnergySavingMode
[out]	MethodExecutionFeedbackType		ExecutionFeedback
);


Argument Description
IdleEnergySavingMode When IdleEnergyMode is True (False), the energy saving mode is turned on (off) when the machine module state is idle.
ExecutionFeedback The extended feedback returning a detailed message in case of execution failure.

The type MethodExecutionFeedbackType is defined in Table 12.

Method Result Codes

ResultCode Description
BadNodeIdUnknown See table 173 in OPC 10000-4 for the description of these result codes.