This FunctionalGroupis inherited from theAutoIdDeviceTypeand described in 6.1. Predefined runtime parameters for for this FunctionalGroupare defined in Table 15and described below.

Parameter CodeTypesRWDataallows the user to determine the supported code types and to select the configured CodeTypesfor the diagnostics value RWData(defined in ). This parameter is used to expose the list of supported CodeTypes. This list can contain the predefined values or vendor specific values. The Valueof the Variablecontains the currently selected types. The code type Strings are defined in 9.1.3.

Parameter TagTypesallows the user to determine the expected tags in a multi-type environment (e.g. ISO 14443 or ISO 15693). This parameter is used to expose the list of supported tag types. This list can contain the predefined values or vendor specific values. The Valueof the Variablecontains the currently selected types. The following Stringsare defined by this specification.

  • ISO 14443
  • ISO 15693
  • ISO 18000-2
  • ISO 18000-3 Mode1
  • ISO 18000-3 Mode2
  • ISO 18000-3 Mode3
  • ISO 18000-4
  • ISO 18000-61
  • ISO 18000-62
  • ISO 18000-63
  • ISO 18000-64
  • EPC Class1 Gen2 V1
  • EPC Class1 Gen2 V2

Parameter RfPoweris used to adjust radio transmission power, per antenna.

Parameter MinRssiis the lowest acceptable RSSI value (see also Strengthfield in RFIDSighting).

Parameter EnableAntennasdetermines the antennas that shall be used by the RfidDevice for its operation. The value is a binary selection of the antennas. Each bit represents one antenna, max. 32 antennas can be addressed.

  • Bit0 corresponds to antenna number 1, Bit1 corresponds to antenna number 2, …
  • A Bit value of 1 means an activated antenna, a Bit value of 0 a deactivated antenna. E.g.: The value BIN 1101 = DEC 13 enables the antennas 1+3+4
  • A total value of 0 of EnableAntennasdoes not have any effect. The general device configuration can just be limited, not extended by EnableAntennas. E.g. if a four-port reader has three antennas activated according to the general configuration, it is not possible to activate the antenna four via EnableAntennas.

The Diagnostics FunctionalGroupand its component, the LastAccess FunctionalGroup, are described in clause 6.1.3.3.

Predefined parameters that are specific for the LastAccess FunctionalGroupin the RfidReaderDeviceTypeare defined in Table 15and described in the following list:

  • Parameter RWDataspecifies the user data which was written to / was read from the Rfid Transponderby the command. The DataTypecan be one of the DataTypesdefined in the ScanData Uniondefined in 9.4.2. Due to the use case for limited OPC UAClients, the DataType is normally Stringor ByteString.
  • Parameter Antennaspecifies the antenna with which the transponder was accessed by the command.
  • Parameter CurrentPowerLevelspecifies the power level with which the transponder was accessed by the command.
  • Parameter PCspecifies the Protocol Control Word of the transponder accessed by the command.
  • Parameter Polarizationspecifies the Polarization with which the transponder was accessed by the command.
  • Parameter Strengthspecifies the Rssi value with which the transponder was accessed by the command.

This method starts the scan process of the RFID reader device synchronous and returns the scan results. It overwrites the Scanmethod of the AutoIdDeviceTypedefined in 6.1.3.4.

Signature

Scan(

[in]ScanSettings Settings

[out]RfidScanResult [] Results

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Settings

Configuration settings for the scan execution. The ScanSettings DataTypeis defined in 9.3.7.

Result

Results of the scan execution. The RfidScanResult DataTypeis defined in 9.3.12.

Status

Returns the status of the scan operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

There is already a scan active or this command is not available or not allowed e.g. due to special configuration

Bad_InvalidArgument

The scan setting contained an invalid value like infinite duration.

Other OPC UA status codes defined for the Call Service in OPC 10000-4.

This method will process a kill command e.g. like specified in GS1 EPCglobal™, ISO/IEC 18000-63 and ISO/IEC 18000-3. The related standard depends on the RFID technology which is in use. The kill command allows an interrogator to permanently disable a transponder.

See Annex Bfor technology specific mappings.

Signature

KillTag(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]ByteString KillPassword

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

KillPassword

Transponder password to get access to the kill operation of this transponder

Status

Returns the result of the kill operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This method is used to protect specific areas of the transponder memory against read and/or write access. If a user wants to access such an area, an access password is required.

See Annex Bfor technology specific mappings.

Signature

LockTag(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]ByteString Password

[in]RfidLockRegionEnumeration Region

[in]RfidLockOperationEnumeration Lock

[in]UInt32 Offset

[in]UInt32 Length

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

Password

Transponder (access) password

Region

Bank of the memory area to be accessed

The RfidLockRegionEnumeration DataTypeis defined in 9.2.5.

Lock

Specifies the lock action like write/read protection, permanently.

The RfidLockOperationEnumeration DataTypeis defined in 9.2.4.

Offset

Start address of the memory area [byte counting]

Length

Length of the memory area [byte counting]

Status

Returns the result of the LOCK operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This method changes the password for a specific transponder.

The Methodshould only be called via a SecureChannelwith encryption enabled.

See Annex Bfor technology specific mappings.

Signature

SetTagPassword(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]RfidPasswordTypeEnumeration PasswordType

[in]ByteString AccessPassword

[in]ByteString NewPassword

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

PasswordType

Defines the operations for which the password is valid

The RfidPasswordTypeEnumeration DataTypeis defined in 9.2.6.

AccessPassword

The old password

NewPassword

Gives the new password to the transponder

Status

Returns the result of the TagPassword method.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This method reads a specified area from a tag memory.

One Methodinvocation reads one AutoID Identifier. The Call Serviceused to invoke the Methodcan take a list of Methods. Therefore a list of AutoID Identifierscan be read by passing in a list of Methodsto the Call Service.

See Annex Bfor technology specific mappings.

Signature

ReadTag(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]UInt16 Region

[in]UInt32 Offset

[in]UInt32 Length

[in]ByteString Password

[out]ByteString ResultData

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

Region

Region of the memory area to be accessed. If there is no bank available this value is set to 0. This is the bank for UHF (ISO/IEC 18000-63) or the bank (ISO/IEC 18000-3 Mode 3) or data bank (ISO/IEC 18000-3 Mode 1) for HF or memory area (ISO/IEC 18000-2) for LF.

See Annex Bfor technology specific mappings.

Offset

Start address of the memory area [byte counting]

Length

Length of the memory area [byte counting]

Password

Password for read operation (if required)

ResultData

Returns the requested tag data

Status

Returns the status of the read operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This method writes data to a RFID tag.

See Annex Bfor technology specific mappings.

Signature

WriteTag(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]UInt16 Region

[in]UInt32 Offset

[in]ByteString Data

[in]ByteString Password

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

Region

Region of the memory area to be accessed. If there is no bank available this value is set to 0. This is the bank for UHF (ISO/IEC 18000-63) or the bank (ISO/IEC 18000-3 Mode 3) or data bank (ISO/IEC 18000-3 Mode 1) for HF.

Offset

Start address of the memory area [byte counting]

Data

Data to be written

Password

Password for write operation (if required)

Status

Returns the status of the write operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This method initializes an EPC-ID inclusive the PC of an ISO 18000-63 tag.

See Annex Bfor technology specific mappings.

Signature

WriteTagID(

[in]ScanData Identifier

[in]CodeTypeDataType CodeType

[in]ByteString NewUId

[in]Byte AFI

[in]Boolean Toggle

[in]ByteString Password

[out]AutoIdOperationStatusEnumerationStatus

);

Argument

Description

Identifier

AutoID Identifieraccording to the device configuration as returned as part of a ScanResultin a scan event or scan method. The ScanData DataType is defined in 9.4.2.

If the ScanDatais used as returned in the ScanResult, the structure may contain information that must be ignored by the AutoID Device. An example is the ScanDataEpcwhere only the parameter UId is relevant for this Method.

If the Identifieris provided from a different source than the ScanResult, a ScanDatawith a ByteStringcan be used to pass a UId where the CodeTypeis set to ‘UId’.

CodeType

Defines the format of the ScanData in the Identifieras string. The String DataType CodeTypeDataType and the predefined format strings are defined in 9.1.3.

NewUId

AutoID Identifieraccording to ISO/IEC 18000-3 Mode 3, ISO/IEC 18000-63and GS1 EPCglobal™. Depending on the length of this field, the UID length of the transponder will be adjusted. The byte length shall be an even number otherwise a Status OP_NOT_POSSIBLE_ERROR_6 shall be returned.

AFI

Application Family Identifier. According to ISO/IEC 18000-3 Mode 3, ISO/IEC 18000-63and GS1 EPCglobal™. The default value is 0.

Toggle

Numbering system identifier toggle. According to ISO/IEC 18000-3 Mode 3, ISO/IEC 18000-63and GS1 EPCglobal™. The default value is false.

Password

Password for write operation (if required)

Status

Returns the status of the write operation.

The AutoIdOperationStatusEnumeration DataTypeis defined in 9.2.1.

Method Result Codes

ResultCode

Description

Bad_MethodInvalid

The device does not support this function

Bad_InvalidState

This command is not available or not allowed e.g. due to special configuration

This OPC UA Propertyof DataType AntennaNameIdPairarray represents the list of ID and name pairs for the antennas of the RFID reader device. The DataType AntennaNameIdPairis defined in 9.3.3. The Propertycan be set during commissioning.

This OPC UA Variableof DataType Int32belongs to the Variable LastScanData andrepresents the ID of the antenna with which the last AutoID Identifierwas scanned.

The Variablecan be provided for simple applications where OPC UAClientsare limited to Data Accessfunctionality. Such OPC UA Clientsare typically limited to built-in DataTypeslike UtcTime. The use of this Variable implies the following restrictions.

  • Only one AutoID Identifiercan be delivered for a scan.
  • The frequency of scans is limited to the sampling interval set by the OPC UA Client.
  • The delivery of scan results depends on the MonitoredItemsettings or Readbehaviour of the OPC UA Client.

It is recommended that complex applications use scan Methodsand Events.

This OPC UA Variableof DataType Int32belongs to the Variable LastScanData and represents the RSSI Value with which the last AutoID Identifierwas scanned.

The Variablecan be provided for simple applications where OPC UAClientsare limited to Data Accessfunctionality. Such OPC UA Clientsare typically limited to built-in DataTypeslike UtcTime. The use of this Variable implies the following restrictions.

  • Only one AutoID Identifiercan be delivered for a scan.
  • The frequency of scans is limited to the sampling interval set by the OPC UA Client.
  • The delivery of scan results depends on the MonitoredItemsettings or Readbehaviour of the OPC UA Client.

It is recommended that complex applications use scan Methodsand Events.