This OPC UA MachineModuleType ObjectType represents a machine module or workcentre.

Figure 8 shows an overview for the MachineModuleType with related Objects. It is formally defined in Table 7.

image012.png

Figure 8 MachineModuleType overview

The MachineModuleType is formally defined in Table 7.

Table 7 – MachineModuleType Definition

Attribute

Value

BrowseName

MachineModuleType

IsAbstract

False

References

Node Class

BrowseName

Data Type

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasComponent

Object

LiveStatus

MachineModuleLiveStatusType

Mandatory

HasComponent

Object

Production

MachineModuleProductionType

Mandatory

HasComponent

Object

SetUp

MachineModuleSetUpType

Mandatory

HasComponent

Object

Configuration

MachineConfigurationType

Mandatory

HasComponent

Object

Specification

MachineModuleSpecificationType

Mandatory

HasComponent

Object

PastSpecificationRecords

FolderType

Mandatory

HasComponent

Object

UIInfo

UIInformationType

Mandatory

HasComponent

Object

<MaterialLoadingPoints>

MaterialLoadingPointType

OptionalPlaceholder

HasComponent

Object

<MaterialRejectionTraps>

MaterialRejectionTrapType

OptionalPlaceholder

HasComponent

Object

<DefectDetectionSensors>

DefectDetectionSensorType

OptionalPlaceholder

HasComponent

Object

<MaterialOutputs>

MaterialOutput

OptionalPlaceholder

The MachineModuleType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the OEM that supplied the machine module (e.g. "ITM").

The Model property provides the name of the machine module as identified by the OEM (e.g. "").

The RevisionCounter property provides the revision level of the machine module as identified by the OEM (e.g. "").

The Serial property provides the serial number of the machine module as identified uniquely by the OEM.

The following Objects are defined to extend the DeviceType.

The Object LIveStatus of type MachineModuleLiveStatusType contains information about the real time status of the machine module and provides affordances to control the machine module remotely in real time.

The Object Production of type MachineModuleProductionType contains information about the current production order and quantity produced as well as affordances to start/stop a production order and reset totals for the machine module.

The Object SetUp of type MachineModuleSetUpType contains the value of all the settings (including mechanical adjustments) required to run production as well as affordances to validate and load settings for the machine module.

The Object Configuration of type MachineModuleConfigurationType contains the descriptions (metadata) for settings, stop reasons and root causes as well as affordances to make modifications.

The Object Specification of type MachineModuleSpecificationType contains the specification about the machine as currently operating including capabilities, internal buffers and loading points.

The Object PastSpecificationRecords of type FolderType contains the information about the machine as was operating in a previous period of time.

The Object UIInfo contains information about the User Interface (UI) of the machine module. When an Object does not have own UIInfo, then the Object does not require visualisation.

The Object <DefectDetectionSensors> of type DefectDetectionSensorType describes the sensor(s) fitted to the machine module that detect product defects.

The Object <MaterialRejectionTraps> of type MaterialRejectionTrapType describes the device(s) that are capable of rejecting product away from the product flow.

The Object <MaterialLoadingPoints> of type MaterialLoadingPointType describes the loading points and the materials being loaded, as well as the brand integrity checks required.

The Object <MaterialOutputs> of type MaterialOutputType describes the output(s) of the machine module.

This OPC UA MachineModuleLiveStatusType ObjectType contains information about the real time status of the machine module and provides affordances to control the machine module remotely in real time.

Figure 9 shows an overview for the MachineModuleLiveStatusType with related Objects. It is formally defined in Table 8.

image013.png

Figure 9 MachineModuleLiveStatusType overview

The MachineModuleLiveStatusType is formally defined in Table 8.

Table 8 – MachineModuleLiveStatusType Definition

Attribute

Value

BrowseName

MachineModuleLiveStatusType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasProperty

Variable

ControlMode

ControlModeEnumeration

PropertyType

Mandatory

HasProperty

Variable

IdleEnergySavingMode

Boolean

PropertyType

Mandatory

HasProperty

Variable

State

StateEnumeration

PropertyType

Mandatory

HasComponent

Method

SendCommand

Mandatory

HasComponent

Method

SetControlMode

Mandatory

HasComponent

Method

SetIdleEnergySavingMode

Mandatory

GeneratesEvent

ObjectType

ControlModeChangeLogType

GeneratesEvent

ObjectType

DowntimeLogType

GeneratesEvent

ObjectType

StateChangeLogType

The MachineModuleLiveStatusType ObjectType is a concrete type and can be used directly.

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).

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

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 identifiedabove in the required column.

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.

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

Signature

SetControlMode (

[in]ControlModeEnumeration ControlModeToSet

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

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

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

Signature

SetIdleEnergySavingMode (

[in]Boolean IdleEnergySavingMode

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

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

This OPC UA MachineModuleConfigurationType ObjectType contains the descriptions for settings, stop reasons and root causes as well as affordances to make modifications.

Figure 10 shows an overview for the MachineModuleConfigurationType with related Objects. It is formally defined in Table 14.

image014.png

Figure 10 MachineModuleConfigurationType overview

The MachineModuleConfigurationType is formally defined in Table 14.

Table 14 – MachineModuleConfigurationType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MachineModuleConfigurationType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasProperty

Variable

DataSetList

DataSetListType

PropertyType

Mandatory

HasProperty

Variable

UserMachineName

String

PropertyType

Mandatory

HasProperty

Variable

LocationName

String

PropertyType

Mandatory

HasProperty

Variable

TimeZone

UtcTime

PropertyType

Mandatory

HasProperty

Variable

StopReasonList

MessageType[]

PropertyType

Mandatory

HasProperty

Variable

RootCauseList

MessageType[]

PropertyType

Mandatory

HasProperty

Variable

RootCauseGroupList

RootCauseGroupType[]

PropertyType

Mandatory

HasProperty

Variable

RootCauseListInputIsMandatory

Boolean

PropertyType

Mandatory

HasProperty

Variable

LongestMicroStopDuration

Double

PropertyType

Mandatory

HasProperty

Variable

LastChangeDate

UtcTime

PropertyType

Mandatory

HasComponent

Method

GetDataSetList

Mandatory

HasComponent

Method

GetRootCauseList

Mandatory

HasComponent

Method

GetRootCauseGroupList

Mandatory

HasComponent

Method

GetStopReasonList

Mandatory

HasComponent

Method

SetRootCauseLists

Mandatory

GeneratesEvent

ObjectType

RootCauseGroupListChangeLogType

GeneratesEvent

ObjectType

RootCauseListChangeLogType

GeneratesEvent

ObjectType

StopReasonListChangeLogType

The MachineModuleConfigurationType ObjectType is a concrete type and can be used directly.

The Property UserMachineName of type String contains the name used by the user to identify the machine module.

The Property LocationName of type String contains the location of the machine module within the user production site. The Property LocationName will contain the following: Country/City/Department/Floor/Bay/Position.


The Property DataSetList of type DataSetListType contains the descriptors for all the parameters uset to set up the machine.

The type DataSetListType is defined inFigure 15..

Table 15 – DataSetListType Definition

Name

Type

Description

DataSetListType

Structure

DataSetListID

String

Unique identifier for the whole data set list.

DataSetListDescription

LocalizedText

Plain English description of the whole data set.

DataDescriptions

DataDescriptionType[]

Set (array) of data descriptions.

The type DataDescriptionTyp e is defined in Table 16.

Table 16 – DataDescriptionType Definition

Name

Type

Description

DataDescriptionType

Structure

Metadata about the parameter.

ID

String

Unique identifier for the parameter description.

MES_ID

String

Unique identifier for the parameter description in an external system, e.g. MES.

EngineeringUnits

EUInformation

Unit of measure

DisplayFormat

String

Display format for visualisation. The same display format shall be used in the HMI.

Dependency

ParameterDependencyEnumeration

The type of dependency of the parameter.

DataType

NodeId

The NodeId identifying the OPC UA Base Data Type node.

UserSubet

Boolean

UserSubset is True when the machine module end user identifies it.

ControlRange

Range

The parameter shall have values within this range.

AlarmRange

Range

When the value of the parameter is outside the range, then the underlying system shall generate an alarm.

The types EUInformation and Range are defined in OPC 10000-8. The enumeration ParameterDependencyEnumeration is defined in Table 17.

The UserSubset and Dependency allow identifying commonly used subset of parameters as shown in below in Figure 11.

image015.png

Figure 11 Subsetting with UserSubset and Dependency

Table 17 – ParameterDependencyEnumeration Definition

Enumstring

Value

Description

Machine

0

The parameter depends solely from the machine and does not vary with the brand.

Brand

1

The parameter depends solely from the brand being produced and does not vary with the machine.

Machine and Brand

2

The parameter depends both from the machine and the brand being produced.

The Property StopReasonList is a list containing the descriptors for all the possible machine module stop messages or warning messages. The list is created by the OEM. The Property StopReasonList is a list of MessageType objects. The MessageType is defined in Table 13.

The Property RootCauseList is a list containing all of the root causes that the end user has defined to classify and organise the downtime due to the machine module stops. The Property RootCauseList is a list of RootCauseMessageType objects. The type RootCauseMessageType is defined in Table 18.

Table 18 – RootCauseMessageType Definition

Name

Type

Description

RootCauseMessageType

Structure

GroupID

String

Root causes are grouped in familiies, e.g. electrical, mechanical, controls, etc. GroupID identifies uniquely each group.

The Property RootCauseGroupList is the list of groups that root causes can be grouped in. They are defined by the end user as well as the RootCauseList property.

The Property RootCauseGroupList is a list of RootCauseGroupType objects. The type RootCauseGroupType is defined in Table 19.

Table 19 – RootCauseGroupType Definition

Name

Type

Description

RootCauseGroupType

Structure

ID

String

Unique identifier for the root cause group.

ParentID

String

The ID of the group containing the present RootCauseGroupType. By means of the ParentID, multiple nested groups are allowed.

Description

LocalizedText

The human-readable description of the RootCauseGroupType.

The Property LongestMicroStopDuration is the maximum duration of a micro-stop in seconds, longer stops are not micro-stops. Operators are not required to enter a root cause for micro-stops.

The Property LastChangeDate is the date and time of the last change applied to the machine module configuration.

The Property RootCauseListInputIsMandatory is true when the operator is mandatorily required to select the root cause that best describes the current stop situation. For micro-stops such requirement does not apply.

The Method GetDatasetList returns the list of descriptions for parameters of the dataset filtered by the dependency and subset created by the user. Typically, the method GetDatasetList is used for clients to visualise the parmeters’ descriptions and other metadata.

Signature

GetDatasetList (

[in]Boolean CompleteSet

[in]ParameterDependencyEnumeration Dependency

[in]Boolean UserSubset

[out]DatasetListType DatasetList

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

CompleteSet

If CompleteSet is True then the method returns the complete dataset without considering the input parameters Dependency and UserSubset.

Dependency

The method filters parameters that have the required dependency and per this input parameter.

UserSubset

The method filters parameters that are in the user subset as required by this input parameter.

DatasetList

The list of parameter descriptions filtered by the input parameters: dependency, user subset.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetRootCauseList returns the complete list of root causes as stored in the OPC UA Server.

Signature

GetRootCauseList (

[out]RootCauseMessageType[] RootCauseList

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

RootCauseList

The complete list of root cause messages.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The method GetStopReasonList returns the complete list of stop reasons as stored in the OPC UA Server.

Signature

GetStopReasonList (

[out]MessageType[] StopReasonList

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

StopReasonList

The complete list of stop reason messages.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetRootCauseGroupList returns the complete list of root causes groups as stored in the OPC UA Server.

Signature

GetRootCauseGroupList (

[out]RootCauseGroupType[] RootCauseGroupList

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

RootCauseGroupList

The list of groups the root causes are grouped in.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method SetRootCauseLists sets both the RootCauseList and RootCauseGroupList according to the input arguments. The Properties RootCauseList and RootCauseGroupList are set together to ensure consistency of root causes with the relevant groups.

Signature

SetRootCauseLists (

[in]RootCauseMessageType[] RootCauseList

[in]RootCauseGroupType[] RootCauseGroupList

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

RootCauseList

The list of root causes to be transferred to the OPC UA Server.

RootCauseGroupList

The list of root cause groups to be transferred to the OPC UA Server.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA MachineModuleSpecificationType ObjectType contains the specification of the machine module as currently operating including capabilities, internal buffers and loading points.

Figure 12 shows an overview for the MachineModuleSpecificationType with related Objects. It is formally defined in Table 20.

image016.png

Figure 12 MachineModuleSpecificationType overview

The MachineModuleSpecificationType is formally defined in Table 20.

Table 20 – MachineModuleSpecificationType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MachineModuleSpecificationType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasComponent

Object

DocumentationRep

FolderType

Mandatory

HasProperty

Variable

MaterialLoadingPoints

LoadUnloadPointType

PropertyType

Mandatory

HasProperty

Variable

MaterialStorageBuffers

MaterialStorageBufferType

PropertyType

Mandatory

HasProperty

Variable

TotalRunningHours

Counter

PropertyType

Mandatory

HasProperty

Variable

ValidSince

DateTime

PropertyType

Mandatory

HasComponent

Method

LoadMachineModuleDocumentation

Mandatory

HasComponent

Method

SetNewSpecification

Mandatory

GeneratesEvent

ObjectType

MachineModuleSpecificationChangeLogType

The MachineModuleSpecificationType ObjectType is a concrete type and can be used directly.

The Object DocumentationRep is the sole repository for the machine module documentation resources. The DocumentationRep is accessed, for example, by clients and HMIs.

The Property MaterialLoadingPoints identifies the loading points of the machine module and their capability in terms of what materials can be loaded at a loading point. The Property MaterialLoadingPoints is defined as a list of objects of type LoadUnloadPointType.

The type LoadUnloadPointType is defined in Table 21.

Table 21 LoadUnloadPointType Definition

Name

Type

Description

LoadUnloadPointType

Structure

Description of a loading/unloading point.

ID

String

Unique identifier for the loading/unloading point.

MES_ID

String

Unique identifier for the loading/unloading point for higher level systems, e.g. MES, ERP.

UserName

String

Name of the loading/unloading point given by the end user.

Description

LocalizedText

Human readable identification of the loading/unloading point.

MaterialCapability

MaterialType[]

List of materials that can be loaded to the machine at this loading point or list of materials that may be unloaded at this unloading point.

The type MaterialType is defined in Table 22.

Table 22 MaterialType Definition

Name

Type

Description

MaterialType

Structure

Description of a material.

Group

String

Material group of the material.

ID

String

Unique identifier for the material.

BatchID

String

Batch ID for the material. Can be empty (null) when the material is not batch managed.

Description

LocalizedText

Human readable identification of the material.

MES_ID

String

Material ID as stored in the MES/ERP system.

BaseUoM

EUInformation

The material base unit of measure. For each material one single base unit of measure is defined.

The Property MaterialStorageBuffers describes the buffers inside the machine module and their current status. The Property MaterialStorageBuffers is a list of objects of type MaterialStorageBufferDataType.

The type MaterialStorageBufferDataType is defined in Table 23.

Table 23 MaterialStorageBufferDataType Definition

Name

Type

Description

MaterialStorageBufferDataType

Structure

Description of a material storage buffer.

ID

String

Unique identifier for the storage buffer.

MES_ID

String

Unique identifier for the storage buffer for a higher level system, e.g. MES, ERP.

StoredMaterial

MaterialType

The material that is stored in the buffer.

EngineeringUnits

EUInformation

Unit of measure

TotalStorageCapacity

Double

The maximum quantity that can be stored in the buffer in the EngineeringUnits unit of measure.

StorageLogic

StorageLogicEnumeration

The way the storage is loaded/unloaded.

The type MaterialType is defined in Table 22. The StorageLogicEnumeration is defined in Table 24.

Table 24 StorageLogicEnumeration Definition

Enumstring

Value

Description

Other

0

None of the below.

FIFO

1

The first product entering the storage buffer is the first to leave the storage buffer.

LIFO

2

The last product entering the storage buffer is the first to leave the storage buffer.

FEFO

3

The first expired material is the first to leave the storage buffer.

The Property TotalRunningHours counts the number of hours the machine module has been in operation since the last time its configuration was changed. More specifically, time is counted when the machine module state is different from: Stopping, Stopped, Aborting, Aborted, Clearing.

The Value of the Property TotalRunningHours shall be persisted both in the OPC UA Server and in the underlying system so that if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Property ValidSince is the date since the configuration was last modified.

The Method LoadMachineModuleDocumentation allows to securely load any machine module documentation to the documentation repository DocumentationRep folder where it can be reached by applications.

Signature

LoadMachineModuleDocumentation (

[in]ByteString DocumentToBeLoaded

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

DocumentToBeLoaded

The document, as a byte string, to be transferred to the DocumentationRep folder.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method SetNewSpecification saves its arguments as the new specification for the machine module. Prior to that it saves the previous specification into the PastSpecification Records Object of the same machine module.

Signature

SetNewSpecification (

[in]LoadUnloadPointType[] NewMaterialLoadingPoints

[in]MaterialStorageBufferDataType[] NewMaterialStorageBuffers

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

NewMaterialLoadingPoints

The information about the material loading points that will be valid after the machine specification is changed.

NewMaterialStorageBuffers

The information about the storage buffers that will be valid after the machine specification is changed.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA MachineModuleHistoricalRecordType ObjectType contains the specifications of the machine module that have been valid in the past. When the machine module manufacturer modifies the machine in a way that impact the OPC UA server specification, the machine module manufacturer will save an object of type MachineModuleHistoricalType to the organising folder PastSpecificationRecords which is a component of the relevant MachineModule.

Figure 13 shows an overview for the MachineModuleHistoricalRecordType with related Objects. It is formally defined in Table 25.

image017.png

Figure 13 MachineModuleHistoricalRecordType overview

The MachineModuleHistoricalRecordType is formally defined in Table 25.

Table 25 – MachineModuleHistoricalRecordType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MachineModuleSpecificationTypevi

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasComponent

Object

MachineModuleSpecification

MachineModuleSpecifcationType

Mandatory

HasProperty

Variable

ValidUntil

DateTime

PropertyType

Mandatory

The MachineModuleHistoricalRecordType ObjectType is a concrete type and can be used directly.

The Object MachineModuleSpecification contains a specification that was valid in the past.

The Property ValidUntil contains the date of the last day the MachineModuleSpecification was valid. The Property ValidUntil shall be set by the OEM when changes that impact the machine module specification are made.

This OPC UA MachineModuleProductionType ObjectType contains information about the currently running production and produced product master total.

Figure 14 shows an overview for the MachineModuleProductionType with related Objects. It is formally defined in Table 26.

image018.png

Figure 14 MachineModuleProductionType overview

The MachineModuleProductionType is formally defined in Table 26.

Table 26 – MachineModuleProductionType Definition

Attribute

Value

BrowseName

MachineModuleProductionType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasProperty

Variable

ProductionOrder

POType

PropertyType

Mandatory

HasProperty

Variable

ProductionStatus

ProductionStatusEnumeration

PropertyType

Mandatory

HasComponent

Method

StartProductionOrder

Mandatory

HasComponent

Method

StopProductionOrder

Mandatory

GeneratesEvent

ObjectType

POChangeLogType

The MachineModuleProductionType ObjectType is a concrete type and can be used directly.

The Property ProductionOrder contains information about the currently running production order. The Type POType is defined in Table 27.

Table 27 POType Definition

Name

Type

Description

POType

Structure

Description of a production order (PO)

Number

String

PO identification number

ProducedMaterial

MaterialType

The finished good that the material is produced under the current PO.

TargetQuantity

Double

The quantity of material that is requested by the PO

ContinueAtJobEnd

Boolean

When ContinueAtJobEnd is True, then the operator may continue production (overproduction) after fulfilling the required order quantity

TargetStartTime

DateTime

The target time for the PO to be started according to the planning

TargetEndTime

DateTime

The target time for the PO to be completed according to the planning

DatasetID

String

The ID of the parameters’ dataset to be used for this PO

DatasetDescription

String

The description of the parameters’ dataset to be used for this PO

The Type MaterialType is defined in Table 22.

The Property ProductionStatus describes the status of the ProductionOrder. The Enumeration ProductionStatusEnumeration is defined in Table 28.

Table 28 ProductionStatusEnumeration Definition

Enumstring

Value

Description

Other

0

None of the below.

Brand Change

1

The PO materials are still present in the workcentre and are being removed for a different brand.

Production

2

The PO is being produced.

No Production

3

There is no PO being produced.

The Method StartProductionOrder sends a command to start the ProductionOrder to the underlying system. If the production order is started, the ProductionOrderStatus is set to Productio n by the underlying system. If there are materials at the machine module that are not compatible with the materials required by the production order, then the ProductionOrderStatus is set to Brand Change.

Signature

StartProductionOrder (

[in]POType POToStart

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

POToStart

The production order to be started.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method StopProductionOrder sends a command to the underlying system to stop the ProductionOrder. The underlying system sets the ProductionOrderStatus accordingly.

Signature

StopProductionOrder (

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

When a StopProductionOrder Method is executed by the underlying system, the Message in MethodExecutionFeedback is suitably displayed on the machine HMI to inform the machine user and provide useful instructions, e.g. “A remote production stop was executed. Run the machine empty. Requested by MES Client”.

Method Result Codes

This OPC UA MachineModuleSetupType ObjectType contains the value of all the settings (including mechanical adjustments) required to run production as well as affordances to validate and load settings for the machine module.

Figure 15 shows an overview for the MachineModuleSetupType with related Objects. It is formally defined in Table 29.

image019.png

Figure 15 MachineModuleSetupType overview

The MachineModuleSetupType is formally defined in Table 29.

Table 29 – MachineModuleSetupType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MachineModuleSetupType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5.

HasProperty

Variable

DataSet

DataSetType

PropertyType

Mandatory

HasComponent

Object

MechanicalAdjustments

FolderType

Mandatory

HasComponent

Method

LoadDataSet

Mandatory

HasComponent

Method

ValidateDataSet

Mandatory

HasComponent

Method

SelectiveLoadDataset

Mandatory

GeneratesEvent

ObjectType

DataSetChangeLogType

The MachineModuleSetupType ObjectType is a concrete type and can be used directly.

The Property DataSet contains all the digital settings (other than the mechanical settings stored in the folder MechanicalAdjustments) required by the machine module. The Type DataSetType is defined in Table 30.

Table 30 DataSetType Definition

Name

Type

Description

DataSetType

Structure

Set of parameters

DataSetID

String

The unique ID of the dataset

DataSetDescription

LocalizedText

The human-readable description of the dataset

DataValues

DataSetEntryType[]

List of data values

DataSetCRC

Double

Cyclic Redundancy Check compute over DataValues (reference standard ???)

The Type DataSetEntryType is defined in Table 31.

Table 31 DataSetEntryType Definition

Name

Type

Description

DataSetEntryType

Structure

Single parameter.

ID

String

The unique ID of the datavalue

Value

BaseDataType

The value of the parameter

The Object MechanicalAdjustments contains the non-digital settings required to setup the machine, e.g. mechanical adjustments. The Object MechanicalAdjustments has Data Type Folder.

The Method ValidateDataSet passes a dataset to the underlying system and returns the result of the validation.

Signature

ValidateDataSet (

[in] DataSetType DataSet

[out] DataSetType ValidationFailedDataSet

[out] MessageType[] FailedValidationMessages

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

Argument

Description

DataSet

The dataset to be valdated by the underlying system.

ValidationFailedSet

The list of parameters (in a dataset) that failed the validation by the underlying system.

FailedValidationMessages

The list of messages describing the problems encountered with the parameters in the ValidationFailedSet.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method LoadDataSet loads the whole dataset to the underlying system after having validated that (a) the dataset is complete and (b) the dataset is validated. If the validation is not successfully passed, then the data set is not loaded to the underlying system rolling back any data change and a specific message shall be returned via ExecutionFeedback. For detailed validation diagnostics, the Method ValidateDataSet shall be used.

Signature

LoadDataSet (

[in] DataSetType DataSet

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

DataSet

The dataset to be loaded to the underlying system.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method SelectiveLoadDataSet loads any subset of the whole dataset to the underlying system after having the dataset validated. If the validation is not successfully passed, then the data set is not loaded to the underlying system rolling back any data change and a specific message shall be returned via ExecutionFeedback. For detailed validation diagnostics, the Method ValidateDataSet shall be used.

Signature

SelectiveLoadDataSet (

[in]DataSetType DataSet

[out]MethodExecutionFeedbackTypeExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

DataSet

The dataset to be loaded to the underlying system.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA MaterialLoadingPointType ObjectType describes the locations where materials are loaded (both manually and by means of an automated system) and the materials being loaded, as well as the brand integrity checks required.

Figure 16 shows an overview for the MaterialLoadingPointType with related Objects. It is formally defined in Table 32.

image020.png

Figure 16 MaterialLoadingPointType overview

The MaterialLoadingPointType is formally defined in Table 32.

Table 32 – MaterialLoadingPointType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MaterialLoadingPointType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100.

HasProperty

Variable

LoadingPoint

LoadUnloadPointType

PropertyType

Mandatory

HasProperty

Variable

MaterialIntegrityAgent

MaterialIntegrityAgentEnumeration

PropertyType

Mandatory

HasComponent

Variable

TotalLoadedLot

Double

MaterialLotType

Mandatory

HasComponent

Variable

NominalConsumptionRate

Double

MaterialRateType

Mandatory

HasComponent

Variable

ActualConsumptionRate

Double

MaterialRateType

Mandatory

HasComponent

Variable

UpstreamHold

Boolean

BaseDataVariableType

Mandatory

HasComponent

Method

MaterialIntegrityCheck

Mandatory

HasComponent

Method

UnloadMaterials

Mandatory

HasComponent

Variable

ExpectedMaterial

MaterialType

PropertyType

Mandatory

HasComponent

Object

UIInfo

UIInformationType

Mandatory

GeneratesEvent

ObjectType

IntegrityRejectedMaterialLogType

GeneratesEvent

ObjectType

LoadingPointIsUnloadedLogType

GeneratesEvent

ObjectType

MaterialIsConsumedLogType

GeneratesEvent

ObjectType

MaterialUnladingIsRequiredLogType

GeneratesEvent

ObjectType

NewPresentedMaterialLogType

The MachineModuleSetupType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "Siemens”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "S7- CPU 1515-2 PN").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

The Property LoadingPoint contains the identification of the loading point and the material that will be loaded. The Variable LoadingPoint has type LoadUnloadPointType.

Type LoadUnloadPointType is defined in Table 21.

The Property MaterialIntegrityAgent identifies which system is responsible for checking the integrity of the brand by controlling the loaded material. The Enumeration MaterialIntegrityAgentEnumeration is defined in Table 33.

Table 33 MaterialIntegrityAgentEnumeration Definition

Enumstring

Value

Description

Other

0

None of the below.

MES

1

The MES system is in charge of material integrity checks.

Local

2

The local underlying system is in charge

None

3

The material integrity checks are performed visually by operators.

The Property ExpectedMaterial contains the description of the material that is expected. It is duty of the underlying system to fill in the Property ExpectedMateria l from the production parameters.

The Property ExpectedMaterial has type MaterialType which is defined in Table 22.

The Variable TotalLoadedLot indicates the complete lot of material loaded into the machine since the last reset.

The Variable TotalLoadedLot has type MaterialLotType which is defined in section 8.3.

The Value of the Variable TotalLoadedLot shall be persisted both in the OPC UA Server and in the underlying system so that, if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Variable ActualConsumptionRate is the actual rate at which the material is consumed. The Variable ActualConsumptionRate has type MaterialRateType which is defined in section 8.4.

The Variable NominalConsumptionRate is the nominal rate at which the material is consumed. The Variable NominalConsumptionRate has type MaterialRateType which is defined in section 8.4.

When the LoadingPoint cannot receive the product flow, the upstream machine is required to hold the transfer of product to the LoadingPoint.

The Variable UpstreamHold is intended to be used with OPC UA Time Sensitive Networks.

The Object UIInfo contains information about the User Interface (UI) of the loading point. When an Object does not have own UIInfo, then the Object does not require visualisation.

The Method MaterialIntegrityCheck validates a presented, e.g. via bar code scanning, material against the material that is accepted at the loading point. The result of the validation of the material and its quantity is returned. When the result of the validation is positive, then the quantity is added to the material totals.

Signature

MaterialIntegrityCheck (

[in] MaterialType Material

[in] Double MaterialQuantity

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

Argument

Description

Material

The material presented to the loading point.

MaterialQuantity

The quantity of the material presented to the loading point.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method UnloadMaterials requires the materials loaded at the loading point to be unloaded. In some implementations the unloading is automated, in other the unloading is performed by the user. The Method UnloadMaterials may be triggered by an MES client to request a material subject to brand change to be unloaded.

Signature

UnloadMaterials (

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

When an UnloadMaterials Method is executed by the underlying system, the Message in MethodExecutionFeedback is suitably displayed on the machine HMI to inform the machine user and provide useful instructions, e.g. “A remote materials unloading is requested by […]”, […] contains the client name.

Method Result Codes

This OPC UA MaterialStorageBufferType ObjectType describes locations where the product is stored both within and outside a machine module.

Figure 17 shows an overview for the MaterialStorageBufferType with related Objects. It is formally defined in Table 34.

image021.png

Figure 17 MaterialStorageBufferType overview

The MaterialStorageBufferType is formally defined in Table 34.

Table 34 – MaterialStorageBufferType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MaterialStorageBufferType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType

HasProperty

Variable

ID

String

PropertyType

Mandatory

HasProperty

Variable

MES_ID

String

PropertyType

Mandatory

HasProperty

Variable

NonMixing

Boolean

PropertyType

Mandatory

HasProperty

Variable

TotalStorageCapacity

Double

PropertyType

Mandatory

HasProperty

Variable

StorageLogic

StorageLogicEnumeration

PropertyType

Mandatory

HasComponent

Variable

LoadingRate

Double

MaterialRateType

Mandatory

HasComponent

Variable

UnloadingRate

Double

MaterialRateType

Mandatory

HasComponent

Variable

StoredLot

Double

MaterialLotType

Mandatory

HasComponent

Object

UIInfo

UIInformation

Mandatory

The MaterialStorageBufferType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

The property ID is the unique identifier of the material buffer storage.

The property MES_ID is the unique identifier of the material buffer storage according to a higher level system, e.g. MES or ERP.

When the property NonMixing is True, the buffer storage shall be emptied before a different material can be loaded to the buffer storage. When the property NonMixing is False, a different material can be added without prior emptying the buffer storage.

The property TotalStorageCapacity represents the total storage capacity of the buffer storage.

The property StorageLogic identifies the logic used at the buffer storage to store and retrieve material.

The property StorageLogi c has type StorageLogicEnumeration which is defined in Table 24.

The variable LoadingRate describes the rate at which the material is consumed at the loading point. The variable LoadingRate indicates the quantity of the material consumed in 60 seconds.

The variable LoadingRate has type MaterialRateType and is defined in section 8.4.

The variable StoredLot describes a lot, i.e. a defined quantity of a material.

The variable StoredLot has type MaterialLotType and is defined in section 8.3.

The variable UnloadingRate describes the rate at which the material is produced at the unloading point. The variable UnloadingRate indicates the quantity of the material produced in 60 seconds.

The variable LoadingRate has type MaterialRateType and is defined in section 8.4.

The Object UIInfo contains information about the User Interface (UI) of the storage buffer. When an Object does not have own UIInfo, then the Object does not require visualisation.

This OPC UA MaterialRejectionTrapType ObjectType describes a device that is capable of rejecting product away from the product flow. Some devices are triggered by defect sensors, other devices may be triggered by the user to sample the mass flow when it is not reachable by the user. The latter are called sampling traps and are modelled by the MaterialRejectionTrapType.

Figure 18 shows an overview for the MateriaRejectionTrapType with related Objects. It is formally defined in Table 35.

image022.png

Figure 18 MaterialRejectionTrapType overview

The MaterialRejectionTrapType is formally defined in Table 35.

Table 35 – MaterialRejectionTrapType Definition

Attribute

Value

BrowseName

MaterialRejectionTrapType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasProperty

Variable

Description

LocalizedText

PropertyType

Mandatory

HasProperty

Variable

DisplayName

LocalizedText

PropertyType

Mandatory

HasComponent

Variable

MaterialRejectedRatio

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

MaterialQuantityRejectedTotal

Double

MaterialLotType

Mandatory

HasComponent

Variable

MaterialQuantityRejectedMasterTotal

Double

MaterialLotType

Mandatory

HasComponent

Variable

RejectionCountTotal

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

RejectionCountMasterTotal

Double

BaseDataVariableType

Mandatory

HasProperty

Variable

RejectionMode

Boolean

PropertyType

Mandatory

HasComponent

Variable

RejectionsRatio

Double

BaseDataVariableType

Mandatory

HasComponent

Obejct

UIInfo

UIInformationType

Mandatory

HasComponent

Method

ResetRejectionTotals

Mandatory

HasComponent

Method

SetRejectionMode

Mandatory

GeneratesEvent

ObjectType

MaterialRejectedLogType

GeneratesEvent

ObjectType

MaterialRejectionTrapDisabledLogType

The MaterialRejectionTrapType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "Siemens”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "S7- CPU 1515-2 PN").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

The Property Description describes the rejection trap device.

The Property DisplayName is the identification of the rejection trap device used on displaying systems, e.g. HMI and SCADA.

The Variable MaterialRejectedRatio is the ratio of the total material rejected (MaterialRejectedTotal) over the total good product and is computed by the underlying system.

Remark. The unit of measure of the rejected material is the same as in the MaterialOutput (see MaterialOutputType 6.12) of the same machine module.

The Variable MaterialRejectedTotal totalises the material rejected since the last time the total was reset to zero using the Method ResetRejectionTotals, see below.

The Type MaterialLotType is defined in Table 75.

The Value of the Variable MaterialQuantityRejectedTotal shall be persisted both in the OPC UA Server and in the underlying system so that, if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Variable MaterialQuantityRejectedMasterTotal totalises the material rejected and is never reset.

The Type MaterialLotType is defined in Table 75.

The Value of the Variable MaterialQuantityRejectedMasterTotal shall be persisted both in the OPC UA Server and in the underlying system so that, if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Variable RejectionCountTotal totalises the number of times a rejection device was triggered to reject since the last time the total was reset to zero using the Method ResetRejectionTotals, see below.

The Value of the Variable RejectionCountTotal shall be persisted both in the OPC UA Server and in the underlying system so that, if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Variable RejectionCountMasterTotal totalises the number of times a rejection device was triggered to reject and is never reset.

The Value of the Variable RejectionCountTotal shall be persisted both in the OPC UA Server and in the underlying system so that, if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Property RejectionMode is True when the MaterialRejectionTrap is operational and discharges material when triggered.

The Variable RejectionRatio is the ratio between the good product output total and the rejected quantity total.

The Object UIInfo contains information about the User Interface (UI) of the rejection trap. When an Object does not have own UIInfo, then the Object does not require visualisation.

The Method ResetRejectionTotals resets the MaterialQuantityRejectedTotal and RejectionCountTotal to zero.

Signature

ResetRejectionTotals (

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method SetRejectionMode turns the rejection on or off.

Signature

ResetRejectionTotals (

[in] Boolean RejectionMode

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

RejectionMode

When true, the rejection trap rejects. When false, the rejection trap does not reject.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA DefectDetectionSensorType ObjectType describes a sensor fitted to the machine module that detect product defects.

Figure 19 shows an overview for the DefectDetectionSensorType with related Objects. It is formally defined in Table 36.

image023.png

Figure 19 DefectDetectionSensorType overview

The DefectDetectionSensor is formally defined in Table 36.

Table 36 DefectDetectionSensorType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

DefectDetectionSensorType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasProperty

Variable

Description

LocalizedText

PropertyType

Mandatory

HasComponent

Variable

DetectionCountMasterTotal

Int64

BaseDataVariableType

Mandatory

HasComponent

Variable

DetectionCountTotal

Int64

BaseDataVariableType

Mandatory

HasProperty

Variable

DetectionMode

Boolean

PropertyType

Mandatory

HasProperty

Variable

DisplayName

LocalizedText

PropertyType

Mandatory

HasComponent

Variable

SensorValue

Double

AnalogItemtype

Mandatory Placeholder

HasComponent

Object

UIInfo

UIInformation

Mandatory

HasComponent

Method

ResetDetectionCountTotal

Mandatory

HasComponent

Method

SetDetectionMode

Mandatory

HasComponent

Method

LoadReferenceImages

Optional

GeneratesEvent

ObjectType

DefectDetectedLogType

GeneratesEvent

ObjectType

DefectDetectionSensorDisabledType

The DefectDetectionSensorType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "Siemens”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "S7- CPU 1515-2 PN").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

The Property Description describes the defect detected and detection sensor.

The DetectionCountTotal Variable counts how many times a defect was detected by the sensor while the DetectionMode is true. Increments at every detection, never reset to zero.

The Value of the Variable DetectionCountTotal shall be persisted both in the OPC UA Server and in the underlying system so that if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The DetectionCountMasterTotal Variable counts how many times a defect was detected by the sensor while the DetectionMode is true. The Value of theVariable DetectionCountMasterTotal is never reset.

The Value of the Variable DetectionCountMasterTotal shall be persisted both in the OPC UA Server and in the underlying system so that if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The DetectionMode Variable indicates if the defection sensor is active (when the value is True) or not active (when the value is false).

The DisplayName Variable represents an identification to be used for the defect detection sensor in displays and HMI faceplates.

The Variable SensorValue is the value of the quantity sensed by the sensor.

A defect detection sensor device may measure multiple physical properties, e.g. net tobacco weight, moisture, foreign matters etc.. Each property measured shall be modelled as a separate SensorValue Variable, which is to this purpose a Mandatory Placeholder Variable.

The type of the Variable SensorValue is AnalogItemType and is defined in OPC 10000-8. Thus SensorValue inherits the Definition Property that shall be used to define the physical property measured. The Definition Property is used to identify the semantics of the measurement, e.g “Measurement of the cigarette diameter” or “Measurement of the cigarette circumference”.

The Object UIInfo contains information about the User Interface (UI) of the defect sensor. When an Object does not have own UIInfo, then the Object does not require visualisation.

The Method LoadReferenceImages loads to the underlying system images to be used as references for visual defect detection.

Signature

LoadReferenceImages (

[in] Image[] Images

[out] MethodExecutionFeedbackTypeExecutionFeedback

);

Argument

Description

Images

The list of images to be used as references for an image detection system.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method ResetDetectionCountTotal resets to zero the DetectionCountTotal.

Signature

ResetDetectionCountTotal (

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method SetDetectionMode enables or disables the defect detection sensor.

Signature

GetPage (

[in]Boolean Enable

[out]MethodExecutionFeedbackTypeExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

Enable

Specifies if the method enables or disables the defect detection sensor

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA MaterialOutputType ObjectType describes the capability and real time information about the hand-over point of material from one machine module to another.

Figure 20 shows an overview for the MaterialOutputType with related Objects. It is formally defined in Table 36.

image024.png

Figure 20 MaterialOutputType overview

The MaterialOutputType is formally defined in Table 37.

Table 37 MaterialOutputType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

MaterialOutputType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasProperty

Variable

UnloadPoint

LoadUnloadPointType

PropertyType

Mandatory

HasComponent

Variable

DownstreamHeld

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

OutputRate

Double

MaterialRateType

Mandatory

HasComponent

Variable

TotalOutput

Double

MaterialLotType

Mandatory

HasComponent

Variable

MasterTotalOutput

Double

MaterialLotType

Mandatory

HasComponent

Object

UIInfo

UIInformationType

Mandatory

HasComponent

Method

ResetTotal

Mandatory

GeneratesEvent

ObjectType

GoodOutputProducedLogType

The MaterialOutputType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "Siemens”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "S7- CPU 1515-2 PN").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

The Property UnloadPoint contains the identification of the material output physical location and the material capabilities.

When the downstream machine module cannot receive the product flow, the upstream machine is required to hold the transfer of product to the downstream machine module.

The Variable DownstreamHeld is True when the corresponding Variable UpstreamHold (see 6.8.5.7) in the connected MaterialLoadingPoint is True. The connection is made by the FlowsTo Reference.

The underlying system shall interlock the product flow of the MaterialOutput Object accordingly.

The Variable DownstreamHeld is intended to be used with OPC UA Time Sensitive Networks.

The Variable OutputRate is the quantity of output from the MaterialOutputType Object during 60 seconds.

The Variable TotalOutput is the total material output since the last time it was reset via the relevant ResetTotal Method.

The Value of the Variable TotalOutput shall be persisted both in the OPC UA Server and in the underlying system so that if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Variable MasterTotalOutput is the total material output. The value of MasterTotalOutput Variable is not affected by the ResetTotal Method.

The Value of the Variable MasterTotalOutput shall be persisted both in the OPC UA Server and in the underlying system so that if one fails and/or is replaced, the other will allow restoring the Value when the OPC UA Server and underlying system are on separate hardware infrastructure.

The Object UIInfo contains information about the User Interface (UI) of the material output. When an Object does not have own UIInfo, then the Object does not require visualisation.

The Method ResetTotal sets to zero the Property TotalOutput. The Property MasterTotalOutput is unaffected.

Signature

ResetTotal (

[out] MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

This OPC UA ControlsHWType ObjectType describes the hardware component that is used in the control architecture of the machine modules or workcentre and exposes the supported capabilities to clients.

Figure 21 shows an overview for the ControlsHWType with related Objects. It is formally defined in Table 38.

image025.png

Figure 21 ControlsHWType overview

The ControlsHWType is formally defined in Table 38.

Table 38 – ControlsHWType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

ControlsHWType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasComponent

Variable

IOImageIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

LiveStreamIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

RemoteConnectionIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

ScreenshotIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

IOImage

IOPointType[]

BaseDataVariableType

Mandatory

HasComponent

Variable

SystemDumpIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Method

GetIOImage

Mandatory

HasComponent

Method

GetLiveStream

Mandatory

HasComponent

Method

GetRemoteConnection

Mandatory

HasComponent

Method

GetScreenshot

Mandatory

HasComponent

Method

GetSupportedFeatures

Mandatory

HasComponent

Method

GetSystemDump

Mandatory

GeneratesEvent

ObjectType

NewSystemDumpIsGenerated

The ControlsHWType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the part (e.g. "Siemens”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "S7- CPU 1515-2 PN").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

When the IOImageIsSupported Variable is true, the controls' hardware component supports requests of the IO Image, i.e. a synchronous snapshot of all the inputs and outputs of the controls element at the time the method is invoked.

When the LiveStreamIsSupported Variable is true, the controls' hardware component supports live stream, i.e. remotely connecting to the local HMI and streaming the live view of the HMI application back to the client.

When the RemoteConnectionIsSupported Variable is true, the controls' hardware component supports remote connection, i.e. remotely connecting to the local HMI, including streaming and remote control.

When the ScreenshotIsSupported Variable is true, the controls' hardware component supports taking a screenshot of the HMI screen at the time of the method invocation.

When the SystemDumpIsSupported Variable is true, the controls' hardware component supports saving complete system dumps.

The Variable IOImage contains the current snapshot of the inputs and outputs of the ControlsHW Object.

The Variable IOImage is a list of items of type IOPointType. The Type IOPointType is defined in Table 39.

Table 39 IOPointType Definition

Name

Type

Description

IOPointType

Structure

Single IO Point

IOPointMeta

IOMetaType

The meta-data describing the IO point.

IOPointValue

IOValueType

The value of the IO point.

The Variable IOValueType is defined in Table 40.

Table 40 IOValueType Definition

Name

Type

Description

IOValueType

Structure

The value of a single IO point.

TimeStamp

UtcTime

The time the value of the IO point was read in the underlying system.

RawValue

BaseDataType

The raw value of the IO point read at time TimeStamp.

EngValue

BaseDataType

The engineering value of the IO point read at time TimeStamp.

The Variable IOMetaType is defined in Table 41.

Table 41 IOMetaType Definition

Name

Type

Description

IOMetaType

Structure

Meta-data describing a single IO point.

Description

String

The description of the IO point.

Address

String

The address of the IO point, e.g. PEW1.

IOType

IOTypeEnumeration

The data type of the IO point in the underlying system.

The Data Type IOTypeEnumeration is defined in accordance with IEC 6-1131 Part 3 in Table 42.

Table 42 IOTypeEnumeration Definition

Enumstring

Value

Description

BYTE

0

Byte

WORD

1

Word

DWORD

2

Double Word

LWORD

3

Long Word

SINT

4

Signed Integer

INT

5

Integer

DINT

6

Double Integer

LINT

7

Long Integer

USINT

8

Unsigned Short Integer

UINT

9

Unsigned Integer

UDINT

10

Unsigned Double Integer

ULINT

11

Unsigned Long Integer

REAL

12

Real

LREAL

13

Long Real

TIME

14

Time

LTIME

15

Long Time

DATE

16

Date

LDATE

17

Long Date

TIME_OF_DAY

18

Clock Time

LTIME_OF_DAY

19

Long Clock Time

DATE_AND_TIME

20

Date and Time

LDATE_AND_TIME

21

Long Date and Time

CHAR

22

Character

WCHAR

23

STRING

24

WSTRING

25

The Method GetIOImage returns a file that represents the IO image of the controls’ hardware component. The format of the file may vary according to the proprietary nature of the controls’ hardware component.

Signature

GetIOImage (

[out]IOPointType[] IOImage

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

IOImage

IO image as a file.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetLiveStream returns the URL that the client connects to to get the video stream.

Signature

GetLiveStream (

[out]String ScreenStreamURL

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

ScreenStreamURL

The url of the video stream.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetRemoteConnection establishes a remote connection between an OPC UA Client and an object of type ControlHWType.

Signature

GetRemoteConnection (

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetScreenshot returns a screenshot of the controls’ hardware HMI at the time the method is invoked.

Signature

GetScreenshot (

[out]Image CurrentScreenshot

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

CurrentScreenshot

The screenshot in jpg, gif, bmp or png format.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetSupportedFeatures returns the list of features that the controls’ hardware component supports.

Signature

GetSupportedFeatures (

[out]ControlsHWFeatureEnumeration[]SupportedFeatures

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

SupportedFeatures

The list of supported features.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

The Enumeration ControlsHWFeaturesEnumeration is defined in Table 43.

Table 43 ControlsHWFeaturesEnumeration Definition

Enumstring

Value

Description

Other

0

None of the below.

IOImage

1

The controls’ hardware components supports IO image retrieval.

LiveStream

2

The controls’ hardware components supports live stream.

RemoteConnection

3

The controls’ hardware components supports remote connection.

ScreenshotCurrentPage

4

The controls’ hardware components supports screenshot retrieval.

SystemDump

5

The controls’ hardware components supports system dump.

Method Result Codes

The Method GetSystemDump returns a file containing the system dump. The system dump file format may be proprietary.

Signature

GetSystemDump (

[out]ByteString SystemDump

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

SystemDump

The system dump file.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The OPC UA ControlsSWType ObjectType describes the controls’ software components and their capabilities.

Figure 22 shows an overview for the ControlsSWType with related Objects. It is formally defined in Table 44.

image026.png

Figure 22 ControlsSWType overview

The ControlsSWType is formally defined in Table 44.

Table 44 – ControlsSWType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

ControlsSWType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of DeviceType defined in OPC 10000-100

HasComponent

Variable

InstallSoftwarePackageRemotelyIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Variable

SoftwarePackageRepositoryIsSupported

Boolean

BaseDataVariableType

Mandatory

HasComponent

Method

InstallSoftwarePackageRemotely

Mandatory

HasComponent

Method

GetSupportedFeatures

Mandatory

HasComponent

Method

TransferSoftwarePackageFromRepository

Mandatory

HasComponent

Method

TransferSoftwarePackageToRepository

Mandatory

The ControlsSWType ObjectType is a concrete type and can be used directly.

The following properties are already included in the DeviceType.

The Manufacturer property provides the name of the manufacturer that supplied the machine module (e.g. "Microsoft”).

The Model property provides the name of the part as identified by the manufacturer (e.g. "Windows 10 Pro").

The RevisionCounter property provides the revision level of the part as identified by the manufacturer (e.g. "").

The Serial property provides the serial number of the part as identified uniquely by the manufacturer.

The following Objects are defined to extend the DeviceType.

When the InstallSoftwarePackageRemotelyIsSupported Variable is true, then the software packaged installation can be launched remotely.

When the SoftwarePackageRepositoryIsSupported Variable is true, then the controls’ software component can work as a repository for software packages.

The Method InstallSoftwarePackageRemotely passes the software package to be installed to the underlying system and initiates the installation process.

Signature

InstallSoftwarePackageRemotely (

[in]ByteString SoftwarePackage

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

SoftwarePackage

The software installation package.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method GetSupportedFeatures returns the features that are supported by the controls’ software component.

Signature

GetSupportedFeatures (

[out]ControlsSWFeatureEnumeration[]SupportedFeatures

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

SupportedFeatures

The list of supported features.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The ControlsSWFeaturesEnumeration is defind in Table 45.

Table 45 ControlsSWFeaturesEnumeration Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Enumstring

Value

Description

Other

0

None of the below.

SoftwarePackageRepository

1

The controls’ software components supports repositories.

SoftwarePackageInstall

2

The controls’ hardware components supports remote software package install.

The Method TransferSoftwarePackageFromRepository transfers the latest saved file from the repository to the client for storage and back-up purposes.

Signature

TransferSoftwarePackageFromRepository (

[out]ByteString SoftwarePackage

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

SoftwarePackage

The software package uploaded from the repository.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The Method TransferSoftwarePackageToRepository transfers the file passed as an argument to the controls’ software package for storage in the repository.

Signature

TransferSoftwarePackageToRepository (

[in]ByteString SoftwarePackage

[out]MethodExecutionFeedbackType ExecutionFeedback

);

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Argument

Description

SoftwarePackage

The software package to be transferred to the controls’ software component.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The OPC UA Object Type TMCServerType is used to describe the features supported by the TMC server implementation.

Figure 23 shows an overview for the TMCServerType with related Variable. It is formally defined in Table 41.

image027.png

Figure 23 TMCServerType overview

The TMCServerType is formally defined in Table 46.

Table 46 – TMCServerType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

TMCServerType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5

HasProperty

Variable

AggregatedServers

String[]

PropertyType

Mandatory

HasProperty

Variable

Aggregating

Boolean

PropertyType

Mandatory

HasComponent

Method

GetTMCImplementedLevel

Mandatory

HasComponent

Method

SetServerTime

Mandatory

The TMCServerType ObjectType is a concrete type and can be used directly.

When the instance of the OPC server acts as an aggregation server, the Variable AggregatedServers lists the URIs of the servers that are aggregated by the server. When the server does not act as an aggregation server, the Variable AggregatedServers contains no element.

The Property Aggregating specifies if the OPC UA server is running as an aggregation server or not.

The Method GetTMCImplementedLevel returns the implemented level of the server.

Signature

GetTMCImplementedLevel (

[out]TMCImplementedLevelEnumerationTMCImplementedLevel

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

TMCImplementedLevel

The server implemented level.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The TMCImplementedLevelEnumeration is formally defined in Table 47.

Table 47 TMCImplementedLevelEnumeration Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Enumstring

Value

Description

Other

0

None of the below.

Essential

1

Essential server functionality

Advanced

2

Advanced features are implemented.

The present document requires that the OPC UA Server explicitly exposes the support (or lack thereof) for certain features that depend on the underlying capabilities of the computing hardware:

  1. Method GetIOImage, 6.13.4.7;
  2. Method GetLiveStream, 6.13.4.8;
  3. Method GetRemoteConnection, 6.13.4.9;
  4. Method GetScreenshot, 6.13.4.10;
  5. Method GetSystemDump, 6.13.4.12;
  6. Method InstallSoftwarePackageRemotely, 6.14.4.3;
  7. Method TransferSoftwarePackageFromRepository, 6.14.4.5 and Method TransferSoftwarePackageToRepository, 6.14.4.6

The above mentioned features are not covered by the following definition of the TMCImplementedLevel and may be implemented or opted out for either the Essential or Advanced level.

An OPC UA Server implementing the Essential level, shall support the nodeset of the Object Types listed below, including relevant enumerations, data variable types, references and events required:

  1. MachineModuleType, 6.1;
  2. MachineModuleLiveStatusType, 6.2;
  3. MachineModuleConfigurationType, 6.3;
  4. MachineModuleSpecificationType, 6.4;
  5. MachineModuleHistoricalRecordType, 6.5;
  6. MachineModuleSetupType, 6.7;
  7. MaterialLoadingPointType, 6.76.8 excluding the Variable TotalLoadedLot
  8. MaterialStorageBufferType, 6.86.9;
  9. MaterialRejectionTrapType, 6.10;
  10. DefectDetectionSensorType, 6.11;
  11. MaterialOutputType, 6.12;
  12. ControlsHWType, 6.13;

ControlsSWType, 6.14;

  1. TMCServerType, 0;
  2. UIInformationType, 6.16;
  3. UserInterfaceType, 6.17;
  4. ProcessItemType, 6.18;
  5. LogbookEvent, 6.19;

An OPC UA Server implementing the Advanced level, shall implement the Essential Level and additionally shall support the nodeset of the Object Types listed below, including relevant enumerations, data variable types, references and events required:

  1. MachineModuleProductionType, 6.6;
  2. MaterialLoadingPointType, 6.8 including the Variable TotalLoadedLot

The Method SetServerTime sets the time of the server. It is used for time synchronisation purposes.

Signature

SetServerTime (

[in]DateTimeToSet UtcTime

[out]MethodExecutionFeedbackType ExecutionFeedback

);

Argument

Description

DateTimeToSet

The time to set the internal clock of the server.

ExecutionFeedback

The extended feedback returning a detailed message in case of execution failure.

Method Result Codes

The OPC UA ObjectType UIInformationType contains graphical specifications required for creating faceplates to display the information made available by the OPC UA Server.

When the information described in the UIInformationType is provided, an OPC UA Client can render the visualisation without further configuration efforts. Thus a suitable zero-config, zero-engineering visualisation is possible.

Figure 24 shows an overview for the UIInformationType with related Properties. It is formally defined in Table 48.

image028.png

Figure 24 UIInformationType overview

The UIInformationType is formally defined in Table 48.

Table 48 – UIInformationType Definition

ResultCode

Description

BadNodeIdUnknown

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

BadTypeMismatch

BadOutOfRange

BadNotWritable

BadNotFound

Attribute

Value

BrowseName

UIInformationType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5

HasProperty

Variable

PositionX

Double

PropertyType

Mandatory

HasProperty

Variable

PositionY

Double

PropertyType

Mandatory

HasProperty

Variable

Width

Double

PropertyType

Mandatory

HasProperty

Variable

Resizable

Boolean

PropertyType

Mandatory

HasComponent

Object

UIResources

FolderType

Mandatory

The UIInformationType ObjectType is a concrete type and can be used directly.

The Property PositionX is the relative horizontal position of the top-left corner of the image representing the object in the current visualisation scope.

The Property PositionY is the relative vertical position of the top-left corner of the Image in the current visualisation scope.

The Property Width defines the width of the Image as shown at base zoom level in the zoomed out scope of visualisation. The width of the shown Image is scaled to the requested Width constraining proportions.

When the Property Resizable is True, the image representations contained in the UIResources Object can be scaled according to the different visualisation scopes, e.g. overview and detail view. When the Property Resizable is False, the image representations contained in the UIResources Object shall not be scaled.

The Object UIResources contains the image representations that shall be used for the contained object. It is recommended that the images are provided in vectorial form (e.g. SVG format).

The OPC UA ObjectType UserInterfaceType models a generic User Interface consisting of:

  1. An overview display, modelled by OverVU;
  2. A close-up, detail display, modelled by ZoomedVU;
  3. A control-loop view where the connections (modelled by the LoopVUReferences) among objects belonging to the same control loop are shown;
  4. An overlay display where KPIs are shown, modelled by KPIVU;
  5. A control panel, where shown objects can be read only (modelled by ControlPanelVURO) or read-write (modelled by ControlPanelVURW);

Figure 25 shows an overview for the UserInterfaceType with related Properties. It is formally defined in Table 48.

image029.png

Figure 25 UserInterfaceType overview

The UserInterfaceType is formally defined in Table 49.

Table 49 UserInterfaceType Definition

Attribute

Value

BrowseName

UserInterfaceType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5

HasProperty

Variable

ControlPanelVURO

Double

BaseDataVariableType

Mandatory

HasProperty

Variable

ControlPanelVURW

Double

BaseDataVariableType

Mandatory

HasProperty

Variable

KPIVU

Double

BaseDataVariableType

Mandatory

HasProperty

Variable

OverVU

Double

BaseDataVariableType

Mandatory

HasComponent

Object

ZoomedVU

Double

BaseDataVariableType

Mandatory

The UserInterfaceType ObjectType is a concrete type and can be used directly.

The Variable ControlPanelVURO models the control panel area where read-only objects are shown. Objects connected to a ControlPanelVURO by means of a non-hierarchical reference of type IsDisplayedBy are shown in the control panel. The reference type IsDisplayedBy is defined in section 7.9.

The Variable ControlPanelVURW models the control panel area where read-write objects are shown. Objects connected to a ControlPanelVURW by means of a non-hierarchical reference of type IsDisplayedBy are shown in the control panel. The reference type IsDisplayedBy is defined in section 7.9.

The Variable KPIVU models the area where KPIs are shown. Objects connected to a KPIVU by means of a non-hierarchical reference of type IsDisplayedBy are shown in the KPI display area. The reference type IsDisplayedBy is defined in section 7.9.

The Variable LoopVUReferences identifies non-hierarchical references that are used to display control loops. Non-hierarchical references connected to LoopVuReferences by means of a non-hierarchical reference of type IsDisplayedBy are shown in the control panel. The reference type IsDisplayedBy is defined in section 7.9.

The Variable OverVU models the overview of the UI. Objects connected to an OverVU by means of a non-hierarchical reference of type IsDisplayedBy are shown in the overview display. The reference type IsDisplayedBy is defined in section 7.9.

The Variable ZoomedVU models the zoomed in, detail display area. Objects connected to a ZoomedVU by means of a non-hierarchical reference of type IsDisplayedBy are shown in the zoomed in area. The reference type IsDisplayedBy is defined in section 7.9.

The OPC UA ObjectType ProcessItemType is used to measure and monitor over time a process measurement point.

Figure 26 shows an overview for the ProcessItemType with related Variable. It is formally defined in Table 50.

image030.png

Figure 26 ProcessItemType overview

The ProcessItemType is formally defined in Table 50.

Table 50 ProcessItemType Definition

Abstract

Value

BroseName

ProcessItemType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseObjectType defined in OPC 10000-5

HasComponent

Variable

DisplayFormat

String

BaseDataVariableType

Mandatory

HasComponent

Variable

EffectivePrecision

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

HH

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

H

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

L

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

LL

Double

BaseDataVariableType

Mandatory

HasComponent

Variable

AnalogMeasurement

Double

BaseDataVariableType

Mandatory

HasComponent

Object

UIInfo

UIInformationType

Mandatory

HasProperty

Variable

0:EngineeringUnits

EUInformation

PropertyType

Mandatory

The ProcessItemType ObjectType is a concrete type and can be used directly.

Remark. The AnalogMeasurement value shall be historized and accessed via the OPC UA HistoryReadService as described in OPC 10000-11. The sampling time for the value is the same used by the OEM for machine performance analysis.


The following Properties are defined to extend the AnalogItemType.

The Variable DisplayFormat specifies how the value shall be displayed across all displays, clients and applications for uniformity. It is a string that contains one or more format specifiers, which are single characters or groups of characters that define how the string representation of that object's value should appear.

The Variable EffectivePrecision specifies the significant part of the value, e.g. 0.01 means 1% precision.

The Variable HH identifies a high limit for the variable above which an event is triggered.

The Variable H identifies a high limit for the variable during normal process.

The Variable L identifies a low limit for the variable during normal process.

The Variable LL identifies a low limit for the variable below which an event is triggered.

The Variable AnalogMeasurement represents the current value measured by the sensor.

The Property EngineeringUnits specifies the units for the AnalogMeasurement’s value (e.g., DEGC, hertz, seconds). The EUInformation type is specified in 5.6.3 OPC 10000-8.

The Object UIInfo contains graphical specifications required for creating faceplates to display information about the containing object.

Logbook events are fired by the machine module for the documentation of relevant changes in the machine configuration/status.

Table 51 – LogbookEvent Type Definition

Attribute

Value

BrowseName

LogBookEventType

IsAbstract

True

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of BaseEventType defined in OPC 10000-5.

HasSubType

ObjectType

ControlModeChangeLogType

Defined in 6.19.2

HasSubType

ObjectType

DataSetChangeLogType

Defined in 6.19.3

HasSubType

ObjectType

DefectDetectedLogType

Defined in 6.19.4

HasSubType

ObjectType

DefectDetectionSensorDisabledLogType

Defined in 6.19.5

HasSubType

ObjectType

DowntimeLogType

Defined in 6.19.6

HasSubType

ObjectType

GoodOutputProducedLogType

Defined in 6.19.7

HasSubType

ObjectType

LoadingPointIsUnloadedLogType

Defined in 6.19.8

HasSubType

ObjectType

MachineModuleSpecificationChangeLogType

Defined in 6.19.9

HasSubType

ObjectType

MaterialIsConsumedLogType

Defined in 6.19.10

HasSubType

ObjectType

MaterialRejectedLogType

Defined in 6.19.11

HasSubType

ObjectType

MaterialRejectionTrapDisasbledLogType

Defined in 6.19.12

HasSubType

ObjectType

MaterialUnloadingIsRequiredLogType

Defined in 6.19.13

HasSubType

ObjectType

NewSystemDumpIsGeneratedLogType

Defined in 6.19.14

HasSubType

ObjectType

POChangeLogType

Defined in 6.19.15

HasSubType

ObjectType

RootCauseListChangeLogType

Defined in 6.19.16

HasSubType

ObjectType

StateChangeLogType

Defined in 6.19.18

HasSubType

ObjectType

StopReasonListChangeLogType

Defined in 6.19.19

HasSubType

ObjectType

IntegrityRejectedMaterialLogType

Defined in 6.19.20

HasSubType

ObjectType

NewPresentedMaterialLogType

Defined in 6.19.21

HasSubType

ObjectType

ProductionLogType

Defined in 6.19.22

The LogbookEventType is abstract. There will be no instances of a LogbookEventType itself, but there will be instances of its sub-types.

With several subtypes detailed information on the changes are provided.

NOTE: The EventSource (Node which creates the event), Time and a Message are already included in the BaseEventType of OPC UA.

Server shall implement buffering and historization of events, accessible by client via the OPC UA service history read.

The ControlModeChangeLogType is used to log changes of the ControlMode Property of the machine module. The ControlMode property is contained in the LiveStatus object of the MachineModule.

Table 52 – ControlModeChangeLogType Definition

Attribute

Value

BrowseName

ControlModeChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewControlMode

ControlModeEnumeration

BaseDataVariableType

Mandatory

HasComponent

Variable

OldControlMode

ControlModeEnumeration

BaseDataVariableType

Mandatory

ControlModeEnumeration DataType is defined in 6.2.3.1.

The NewControlMode Variable represents the new control mode of the MachineModule.

The OldControlMode Variable represents the previous control mode of the MachineModule.

The DataSetChangeLogType is used to log changes to the values of the parameters contained in the DataSet. The DataSet is contained in the Setup object of the MachineModule.

Table 53 – DataSetChangeLogType Definition

Attribute

Value

BrowseName

DataSetChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewDataSet

DataSetType

BaseDataVariableType

Mandatory

HasComponent

Variable

OldDataSet

DataSetType

BaseDataVariableType

Mandatory

The DataSetType DataType is defined in Table 31.

The NewDataSet Variable representes the new value of the DataSet Variable.

The OldDataSet Variable representes the previous value of the DataSet Variable.

The DefectDetectedLogType is used for the logging defect detection by a DefectDetectionSensor of a MachineModule.

Table 54 – DefectDetectedLogType Definition

Attribute

Value

BrowseName

DefectDetectedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasProperty

Variable

DefectEU

EUInformation

PropertyType

Optional

HasProperty

Variable

DefectPicture

Image

PropertyType

Optional

HasProperty

Variable

DefectValue

Float

PropertyType

Optional

The DefectEU Property represents the unit(s) of measure of the measurement that was identified as a defect.

The DefectPicture Property represents the picture that was identified as a defect.

The DefectValue Property represents the value(s) of the measurement that was identified as a defect.

When the DefectDetectionMode of a DefectDetectionSensor changes value to false, the DefectDetectionSensorDisabledLogType is fired.

Table 55 – DefectDetectionSensorDisabledLogType Definition

Attribute

Value

BrowseName

DefectDetectionSensorDisabledLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

The DowntimeLog event captures the complete information about the downtime which is logged when the stop reason is not any more active, i.e. after a clear/reset command. The root cause, as identified by the user, is also reported for downtimes longer than a microstop.

Table 56 – DowntimeLogType Definition

Attribute

Value

BrowseName

DowntimeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasProperty

Variable

Duration

Duration

PropertyType

Mandatory

HasProperty

Variable

RootCause_s

MessageType[ ]

PropertyType

Optional

HasProperty

Variable

StopReason_s

MessageType[ ]

PropertyType

Mandatory

The MessageType DataType is defined in Table 13.

The Duration Property represents the duration (in seconds) of the downtime computed from the time the root cause is active to the time when it is not active any more.

The StopReason_s Property represents a list of one or more reasons generated by the control system for the logged downtime.

The RootCause_s Property represents a list of the root causes of the downtime, as identified and entered by the user. The user can enter a root cause for any downtime, it is mandatory to enter a root cause for downtimes longer than a microstop when the machine module is configured in such a way.

When the MasterTotalOutput of a MaterialOutput Object of a MachineModule increases its value, the GoodOutputProduced LogType is fired.

Table 57 – GoodOutputProducedLogType Definition

Attribute

Value

BrowseName

GoodOutputProducedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasProperty

Variable

QuantityProduced

Double

MaterialLotType

Optional

HasProperty

Variable

TotalProduced

Double

MaterialLotType

Mandatory

The MaterialLotType Variable Type is defined in Table 75.

The QuantityProduced Variable represents the quantity of material produced and the type of material produced. It is Optional.

The TotalProduced Variable represents the total quantity of material produced as in MasterTotalOutput (see 6.12.4.5) and the type of material produced. It is Optional.

The LoadingPointIsUnloaded Event is used for logging that some moterial is unloaded from the loading point.

Table 58 – LoadingPointIsUnloadedLogType Definition

Attribute

Value

BrowseName

LoadingPointIsUnloadedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

MaterialQuantity

Double

MaterialLotType

Mandatory

The MaterialLotType Variable Type is defined in Table 75.

The MaterialQuantity Variable represents the quantity of the unloaded material and its type.

The MachineModuleSpecificationChange Event is used for logging the changes of Specification object of a MachineModule.

Table 59 – MachineModuleSpecificationChangeLogType Definition

Attribute

Value

BrowseName

MachineModuleSpecificationChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Object

OldSpecification

MachineModuleSpecificationType

Mandatory

The MachineModuleSpecificationType ObjectType is defined in Table 20.

The OldSpecifciation component represents the instance of the Information object of the MachineModule before the change.

The MaterialIsConsumed Event is used for logging that the material at the loading point has been consumed. The event may be raised when all the material at the loading point has been consumed or when a known portion of the material has been consumed.

Table 60 – MaterialIsConsumedLogType Definition

Attribute

Value

BrowseName

MaterialIsConsumedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

MaterialQuantity

Double

MaterialLotType

Optional

The MaterialLotType Variable Type is defined in Table 75.

The MaterialQuantity Variable represents the consumed quantity of the material and its type.

The MaterialRejected Event is used by the material rejection trap for logging that some material has been rejected.

Table 61 – MaterialRejectedLogType Definition

Attribute

Value

BrowseName

MaterialRejectedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

MaterialQuantityRejected

Double

MaterialLotType

Optional

HasComponent

Variable

TotalQuantityRejected

Double

MaterialLotType

Mandatory

The MaterialLotType Variable Type is defined in Table 75.

The MaterialQuantityRejected Variable represents the rejected quantity of the specified material and its type.

The TotalQuantityRejected Variable represents the total rejected quantity as in MaterialQuantityRejectedMasterTotal Variable (see 6.10.4.5) of the specified material and its type.

The MaterialRejectionTrapDisabled Event is used for logging that a material rejection trap has been disabled.

Table 62 – MaterialRejectionTrapDisabledLogType Definition

Attribute

Value

BrowseName

MaterialRejectionTrapDisabledLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

The MaterialUnloadingIsRequired Event is used for logging when an unsuitable material for production is present at the loading point, i.e. when a brand change is required or when the wrong material was loaded.

Table 63 – MaterialUnloadingIsRequiredLogType Definition

Attribute

Value

BrowseName

MaterialUnloadingIsRequiredLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

MaterialQuantity

Double

MaterialLotType

Mandatory

The MaterialLotType Variable Type is defined in Table 75.

The MaterialQuantity Variable represents the quantity of the specified material to be unloaded and its type.

When a new system dump is generated by an Object of type ControlsSWType or ControlsHWType, the event NewSystemDumpIsGenerated is fired.

Table 64 – NewSystemDumpIsGeneratedLogType Definition

Attribute

Value

BrowseName

NewSystemDumpIsGeneratedLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

SystemDump

String

BaseDataVariableType

Mandatory

When the ProductionOrder Property of an object of type MachineModuleProductionType changes, then the event POChangeLogType is fired.

Table 65 – POChangeLogType Definition

Attribute

Value

BrowseName

POChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasProperty

Variable

NewPO

POType

PropertyType

Mandatory

The POType DataType is defined in Table 28. The NewPO Property is the changed production order.

The RootCauseListChangeLog Event is used for logging the change of the RootCauseList Property in the Configuration object of the MachineModule.

Table 66 – RootCauseListChangeLogType Definition

Attribute

Value

BrowseName

RootCauseListChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewRootCauseList

MessageType[ ]

BaseDataVariableType

Mandatory

HasComponent

Variable

OldRootCauseList

MessageType[ ]

BaseDataVariableType

Mandatory

The MessageType DataType is defined in Table 13.

The NewRootCauseList Variable represents the new value of the root cause list.

The OldRootCauseList Variable represents the value of the root cause list before the change.

The RootCauseGroupListChangeLog Event is used for logging the change of the RootCauseGroupList Property in the Configuration object of the MachineModule.

Table 67 – RootCauseListChangeLogType Definition

Attribute

Value

BrowseName

RootCauseListChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewRootCauseGroupList

RootCauseGroupType[ ]

BaseDataVariableType

Mandatory

HasComponent

Variable

OldRootCauseGroupList

RootCauseGroupType[ ]

BaseDataVariableType

Mandatory

The RootCauseGroupType DataType is defined in Table 19.

The NewRootCauseGroupList Variable represents the new value of the root cause group list.

The OldRootCauseGroupList Variable represents the value of the root cause group list before the change.

The StateChangeLog Event is used for logging the change of the state of the MachineModule.

Table 68 – StateChangeLogType Definition

Attribute

Value

BrowseName

StateChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewState

StateEnumeration

BaseDataVariableType

Mandatory

HasComponent

Variable

OldState

StateEnumeration

BaseDataVariableType

Mandatory

The StateEnumeration DataType is defined in Table 10.

The NewState Variable represents the new value of the State Property in the LiveStatus Object of the MachineModule.

The OldState Variable represents the previous value of the State Property in the LiveStatus object of the MachineModule.

The StopReasonListChangeLog Event is used for logging the change of the StopReasonList Property in the Configuration object of the MachineModule.

Table 69 – StopReasonListChangeLog Definition

Attribute

Value

BrowseName

StopReasonListChangeLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

NewStopReasonList

MessageType[ ]

BaseDataVariableType

Mandatory

HasComponent

Variable

OldStopReasonList

MessageType[ ]

BaseDataVariableType

Mandatory

The MessageType DataType is defined in Table 13.

The NewStopReasonList Variable represents the new value of the StopReasonList Property in the Configuration Object of the MachineModule.

The OldStopReasonList Variable represents the value of the StopReasonList Property in the Configuration Object of the MachineModule before the change.

The IntegrityRejectedMaterialLogType Event is triggered when a presented material is rejected at an object of type MaterialLoadingPointType because of a failed material integrity check.

Table 70 – IntegrityRejectedMaterialLogType Definition

Attribute

Value

BrowseName

IntegrityRejectedMaterial LogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

RejectedLot

Double

MaterialLotType

Mandatory

The MaterialLotType VariableType is defined in 8.3.

The RejectedLot Variable describes the presented lot of material that did not pass the integrity check.

The NewPresentedMaterialLogType Event is triggered when a new material is presented at an object of type MaterialLoadingPointType.

Table 71 – NewPresentedMaterialLogType Definition

Attribute

Value

BrowseName

NewPresentedMaterialLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

PresentedMaterialLot

Double

MaterialLotType

Mandatory

The MaterialLotType VariableType is defined in 8.3.

The PresentedMaterialLot Variable describes the lot of material presented at the object of type MaterialLoadingPointType.

The ProductionLogType Event is used for logging production order information.

Table 72 – ProductionLogType Definition

Attribute

Value

BrowseName

ProductionLogType

IsAbstract

False

References

Node Class

BrowseName

DataType

TypeDefinition

Modelling Rule

Subtype of LogbookEventType

HasComponent

Variable

PO

POType

PropertyType

Mandatory