The OPEN-SCS model for event management when adapted to OPC UA results in several methods attached to an event manager object.

The event manager receives unsolicited events through the event methods. All but one of the event methods have the same method signature. The specific methods supported by an event manager are defined in profiles.

image016.png

Figure 12– Event Manager Methods and Data

Table 21is the AddressSpacedefinition of an OPENSCSEventManagerObjectType.

Table 21– OPENSCSEventManagerObjectType AddressSpace Definition

Attribute

Value

BrowseName

OPENSCSEventManagerObjectType

IsAbstract

False

References

NodeClass

BrowseName

Data Type

TypeDefinition

Other

Subtype of the BaseObjectTypedefined in OPC 10000-5

0:HasComponent

Object

EPCISStream

TemporaryFileTransferType

Optional

0:HasComponent

Method

SNInvalidatingEvent

See 6.3.2.1

Optional

0:HasComponent

Method

LabelsEncodingEvent

See 6.3.2.3

Optional

0:HasComponent

Method

LabelsScrappingEvent

See 6.3.2.4.

Optional

0:HasComponent

Method

LabelsInspectingEvent

See 6.3.2.5.

Optional

0:HasComponent

Method

LabelsSamplingEvent

See 6.3.2.6.

Optional

0:HasComponent

Method

SIDCommissioningEvent

See 6.3.2.7.

Optional

0:HasComponent

Method

SIDDestroyingEvent

See 6.3.2.8.

Optional

0:HasComponent

Method

SIDShippingEvent

See 6.3.2.9.

Optional

0:HasComponent

Method

SIDInspectingEvent

See 6.3.2.10.

Optional

0:HasComponent

Method

SIDDecommissioningEvent

See 6.3.2.11

Optional

0:HasProperty

Variable

MaxEvents

0:UInt32

0:PropertyType

Mandatory

0:HasProperty

Variable

MaxEPCISObjectEventSIDs

0:UInt32

0:PropertyType

Mandatory

0:HasProperty

Variable

MaxEPCISaggregationEvents

0:UInt32

0:PropertyType

Mandatory

MaxEvents- Defines the read-only maximum number of SN, Label, or SID events which can be received in a single method call.

MaxEPCISObjectEventSIDs– Defines the read-only maximum number of SIDs (SGTINs) in EPCIS object events that may be written in a single EPCISStream file transfer.

MaxEPCISAggregationEvents– Defines the read-only maximum number of EPCIS aggregation events that may be written in a single EPCISStream file transfer

The EPCIS file transfer services are provided through a TemporaryFileTransferType, defined in OPC 10000-5. The transferred information is in the form of an EPCIS structured XML file, as described in Annex C. The EPCISStream object is used to push EPCIS Object Events (with various Business Steps in business process such as “urn:epcglobal:cbv:bizstep:commissioning”, “urn:epcglobal:cbv:bizstep:inspecting”, “urn:epcglobal:cbv:bizstep:packing”, “urn:epcglobal:cbv:bizstep:shipping”) and EPCIS Object Aggregation Events (with Business Steps as ‘urn:epcglobal:cbv:bizstep:packing’) to an OPC UA EventManager server.

The OPC UA TemporaryFileTransferTypemethod GenerateFileForWriteis used to start the write file transaction. A successful call of this Method creates a temporary FileTypeObject and returns the NodeIdof this Object and the file handle to access the Object. (From OPC 10000-5). The returned FileTypeobject is not browsable in the AddressSpaceand can only be accessed with the NodeIdand FileHandlereturned by the method in the same Session. The returned FileTypeObject is used to transfer the file stream between OPC UA Client and Server.

The EPCIS structured file is then transferred in blocks to the Event Manager server using the Writemethod. Once the transfer is complete the CloseAndCommitmethod is used to close the transfer, and the EventManager processes the transferred information.

The general use of the EPCISStream to transfer an EPCIS file is illustrated in Figure 13.

image017.png

Figure 13– EPCIS File Transfer Example

The GenerateFileForReadmethod of the EPCISStream object is not specified and shall always return an error from the EventManager.

The generateOptionsis used for the GenerateFileForWriteto transfer arguments to the EventManager server that match the arguments used in the EventManager server’s event methods.

An EventManager Server shall specify OPENSCSEventStreamArgumentDataType as the concrete DataType of for the Argument Structurefor the generateOptionsargument in the instance of the GenerateFileForWritemethod.

SNInvalidatingEvent – This method is used to send unsolicited notification of Serial Number Invalidating events to an OPC Server that is performing serial number event management.

The signature of this Methodis specified below. Table 22and Table 23specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SNInvalidatingEvent (

[in]OPENSCSSNCollectionDataType SNCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[]OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 22– SNInvalidatingEvent Method Arguments

Argument

Description

SNCollection

Identifies the Serial Number Collection.

SNFormat

Defines the format of the serial numbers associated to the event.

OPENSCSEventContext

Zero or mode key value pairs that define additional context information for the event, such as order number or lot number.

ReturnStatus

Returns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 23– SNInvalidatingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SNInvalidatingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

LabelsEncodingEvent – This method is used to send unsolicited notification of Labels Encoding events to an OPC Server that is performing label event management.

The signature of this Methodis specified below. Table 24and Table 25specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

LabelsEncodingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 24– LabelsEncodingEvent Method Arguments

Argument

Description

LabelCollection

Identifies the Label Collection with Serial Numbers and optional label properties.

SNFormat

Defines the format of the serial numbers associated to the event.

OPENSCSEventContext

Zero or mode key value pairs that define additional context information for the event, such as order number or lot number.

ReturnStatus

Returns the status of the method execution.

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 25– LabelsEncodingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

LabelsEncodingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

LabelsScrappingEvent – This method is used to send unsolicited notification of Labels Destroying events to an OPC Server that is performing label event management.

The signature of this Methodis specified below. Table 26and Table 27specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

LabelsScrappingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 26– LabelsScrappingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 27– LabelsScrappingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

LabelsScrappingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

LabelsInspectingEvent – This method is used to send unsolicited notification of Label Inspecting events to an OPC Server that is performing label event management.

The signature of this Methodis specified below. Table 28and Table 29specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

LabelsInspectingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 28– LabelsInspectingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 29– LabelsInspectingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

LabelsInspectingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

LabelsSamplingEvent – This method is used to send unsolicited notification of Label Sampling events to an OPC Server that is performing label event management.

The signature of this Methodis specified below. Table 30and Table 31specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

LabelsSamplingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 30– LabelsInspectingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 31– LabelsInspectingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

LabelsInspectingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

SIDCommissioningEvent – This method is used to send unsolicited notification of SID Commissioning events to an OPC Server that is performing SID event management.

The signature of this Methodis specified below.

Table 32 and Table 33specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SIDCommissioningEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 32– SIDCommissioningEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 33– SIDCommissioningEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SIDCommissioningEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

SIDDestroyingEvent – This method is used to send unsolicited notification of SID Destroying events to an OPC Server that is performing SID event management.

The signature of this Methodis specified below. Table 34and Table 35specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SIDDestroyingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 34– SIDDestroyingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 35– SIDDestroyingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SIDDestroyingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

SIDShippingEvent – This method is used to send unsolicited notification of SID Shipping events to an OPC Server that is performing SID event management.

The signature of this Methodis specified below. Table 36and Table 37specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SIDShippingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 36– SIDShippingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 37– SIDShippingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SIDShippingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

SIDInspectingEvent – This method is used to send unsolicited notification of SID Inspecting events to an OPC Server that is performing SID event management.

The signature of this Methodis specified below. Table 38and Table 39specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SIDInspectingEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 38– SIDInspectingEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 39– SIDInspectingEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SIDInspectingEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory

SIDDecommissioningEvent – This method is used to send unsolicited notification of SID Decommissioning events to an OPC Server that is performing SID event management.

The signature of this Methodis specified below. Table 40and Table 41specify the Argumentsand AddressSpacerepresentation, respectively.

Signature

SIDDecommissioningEvent (

[in]OPENSCSLabelCollectionDataTypeLabelCollection

[in]String SNFormat

[in]OPENSCSKeyValueDataType[] OPENSCSEventContext

[out]OPENSCSReturnEnum ReturnStatus

);

Table 40– SIDDecommissioningEvent Method Arguments

Argument

Description

LabelCollection

See 6.3.2.3

SNFormat

See 6.3.2.3

OPENSCSEventContext

See 6.3.2.3

ReturnStatus

See 6.3.2.3

Method Result Codes are defined as part of the Call service (see OPC 10000-4and Table 95).

Table 41– SIDDecommissioningEvent Method AddressSpace Definition

Attribute

Value

BrowseName

SIDDecommissioningEvent

IsAbstract

True

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

0:HasProperty

Variable

InputArguments

Argument[]

0:PropertyType

Mandatory

0:HasProperty

Variable

OutputArguments

Argument[]

0:PropertyType

Mandatory