E_RFID_Response

TYPE E_RFID_Response : (
    eRFR_NoRsp,
    eRFR_Unknown,
    eRFR_Ready,
    eRFR_CmdConfirmation,
    eRFR_CfgChangeExecuted,
    eRFR_WriteCmdSucceded,
    eRFR_NoTransponder,
    eRFR_Error,
    eRFR_Data_ReaderVersion,
    eRFR_Data_Config,
    eRFR_Data_Inventory,
    eRFR_Data_ReadData,
);
END_TYPE

The function block FB_RFIDReader of the TwinCAT PLC RFID library offers the enumeration values displayed in the code area at the eResponse output. These are partly analogous to the telegram response types of the manufacturer-specific protocols. Which manufacturer-specific MessageID corresponds to the response listed here is indicated in italics in the following description. Due to the complexity of the evaluation, not all equivalents are listed. Detailed information is given if necessary by the raw data representation ST_RFID_RawData at the output of the function block.

Value

Description

eRFR_NoRsp

This value indicates that no response has arrived recently.

eRFR_Unknown

This value indicates that the telegram that arrived could not be assigned to a certain type and was therefore also not evaluated. This is usually accompanied by an error message (bError = TRUE).

eRFR_Ready

Some RFID reader models indicate their operational readiness, e.g. after a reset, with an extra telegram. In this case eResponse assumes the value eRFR_Ready.

Equivalent in proprietary protocol:
Leuze: 'S'
Pepperl+Fuchs: Status='2'

eRFR_CmdConfirmation

The sent command is confirmed with this response. This can occur with many commands.
Exceptions are the commands "Changing the configuration" and "Writing data", because these two commands are followed by special confirmations, which are represented by the following two enumeration values.

Equivalent in proprietary protocol:
Leuze: 'Q2', 'Q4'

eRFR_CfgChangeExecuted

If the RFID reader configuration has been changed, the RFID reader sends this telegram in order to confirm the action.

Equivalent in proprietary protocol:
Leuze: 'Q1'

eRFR_WriteCmdSucceded

The RFID reader sends this confirmation as soon as data has been written to the transponder.

Equivalent in proprietary protocol:
Leuze: 'Q5'

eRFR_NoTransponder

This response is given if no transponder is in the reading field. This is not necessarily evaluated as an error, so that the output bError is also not set.

Equivalent in proprietary protocol:
Leuze: '$18'
Pepperl+Fuchs: Status='5'

eRFR_Error

If a telegram has been received that transferred an error code, then eRFR_Error is output at the eResponse output. The transmitted error code is specified in the output variable iErrCodeRcv (see RFID error codes).

If eResponse takes the value eRFR_Error, an error is also signaled at the output of the function block with bError = TRUE.

Equivalent in proprietary protocol:
Balluff: <NAK>+Failurenumber
Deister: MessageErrorCode>=16#20
Leuze: 'Exx', 'Q0'

eRFR_Data_ReaderVersion

An RFID reader is requested by a version query to send model information. This kind of received data is designated with the value eRFR_Data_ReaderVersion at the eResponse output.

eRFR_Data_Config

A read-out RFID reader configuration is indicated by means of the enumeration value eRFR_Data_Config.

Equivalent in proprietary protocol:
Leuze: 'G'

eRFR_Data_Inventory

This type of telegram is indicated if a transponder has been detected or if the serial number of a transponder has been read out.

eRFR_Data_ReadData

The receipt of read-out data from the transponder memory is indicated by the value eRFR_Data_ReadData.

Equivalent in proprietary protocol:
Deister: MessageID=16#40 or 16#41

Requirements

Development Environment

Target Platform

PLC Libraries to include

TC3.1.4013

PC or CX (x86, x64)

Tc2_RFID