tesis maestria - 1er avance

28
RFID Tag Reader with Advanced Collision Avoidance Bruno Fernando Espinoza Amaya. Supervisor: Konstanty Bialowski. ITEE Computer Research Project Seminar

Upload: bruno-espinoza

Post on 10-Aug-2015

26 views

Category:

Engineering


6 download

TRANSCRIPT

Page 1: Tesis Maestria - 1er Avance

RFID Tag Reader with Advanced Collision AvoidanceBruno Fernando Espinoza Amaya.Supervisor: Konstanty Bialowski.

ITEE Computer Research Project Seminar

Page 2: Tesis Maestria - 1er Avance

Introduction to RFID RFID (Radio Frequency Identification) is a

technology that allow little chips to be interrogated from distance.

Consist on a reader and transducers (tags). Tags can be active or passive. (Need of energy source).

Features depend on the frequency used. UHF RFID is a standardized RFID used for toll

collection, warehouse management, etc. UHF RFID for Australia is in the 918 – 926 MHz

frequency range.

Page 3: Tesis Maestria - 1er Avance

EPC Standard for RFID RFID is just a physical layer, but the information

that is stored in the tag also needs standardization.

A group of companies developed an own standard for both the physical and data inside the tags, specially for UHF RFID tags, as they aimed to replace bar codes.

Now that standard is managed by EPCglobal which propose it as an ISO standard.

For this project we will focus on the EPC Class2 Standard, also know as the ISO 18000-6C standard.

Page 4: Tesis Maestria - 1er Avance

UHF RFID - EPC ClassesEPC Class 01: Passive tags with the minimal

functionality for identification. (No internal memory)

EPC Class 02: Passive tags with support of a read/write memory.

EPC Class 03: Semi passive tags that only work with a reader energy signal.

EPC Class 04: Active tags that can communicate with readers or other tags.

EPC Class 05: Active tags that can communicate with all the other 4 types.

Page 5: Tesis Maestria - 1er Avance

EPC Class 2 Gen Standard

Approved as a global standard by ISO as ISO 1800-6C.

Based on “reader talk first” architecture, where the reader issue commands to the tags.

Developed with the idea of warehouse inventory control.

Tags can be passive or active, depending on the EPC Class.

Tags can have an internal memory with permission management and can be interrogated up to 4 readers.

Page 6: Tesis Maestria - 1er Avance

Tag Collision Problem for RFID

In cluttered environments, there can be the case of multiple tags being irradiated by the reader and reply at the same time, so the reader cannot decode the resulting signal. This is know as Tag Collision.

Reader

Tag

Tag

Tag

Tag

Page 7: Tesis Maestria - 1er Avance

Collision Avoidance in ISO 1800-6C

• ISO 1800-6C uses the ALOHA algorithm to avoid collisions.

• When the QUERY command is send, the tags generate a random number based on a slot size, and when the reader broadcast the number, if a tag has the same number, it will reply.

• Collisions happens if more than 2 tags generate the same random number. (It can happen when the slot size of the reader is low or in heavy tag scenarios).

Page 8: Tesis Maestria - 1er Avance

Previous Research L. Zhu has a thesis about the theory and a model for

Anti-Collision schemes in RFID. Y. Lei, et. Al have a model in which they substitute the

CRC of ISO 18000-6C packets with Boolean operations to detect collisions quickly.

S. Duangsuwan proposes using of Blind Source Separation to separate the 2 or more signals present in a collision.

Y. Sun proposes the use of ICA for resolving the collision problem in ISO 18000-6C using a FPGA implementation.

M. Buettner develop a complete SDR RFID Gen2 Reader that can interact with tags.

M. Alotabi has a thesis that analyses the different anti-collision algorithms of RFID. He uses the SDR approach.

Page 9: Tesis Maestria - 1er Avance

Blind Source Separation Given a single signal that is suspected to be the

mixture of various other signals, we want using as little information as possible to determine how many signals are mixed and isolate them from each other.

The only assumption we can made is that signals are independent and linearly mixed. (Additive Model).

We will use a transform, but opposed to FFT which is based on Frequency, we will focus on Statistical Independence.

Page 10: Tesis Maestria - 1er Avance

Independent Component Analysis - ICA A Blind Source Separation technique mostly used to

remove independent sources which are linearly mixed on sensors. (Such as EEG, EKG and so on).

Can only separate linearly mixed sources. Gaussian Sources cannot be separated.

We need to provide as many inputs as many mixed signals there are for ICA to work.

Even with the sources are not completely independent, ICA will find an space where they are maximum independent.

FastICA implementation exists for Matlab. (And for other languages: http://research.ics.aalto.fi/ica/fastica/)

Page 11: Tesis Maestria - 1er Avance

RFID Inventory Process

Page 12: Tesis Maestria - 1er Avance

RFID Bits Signalling

PIE Encoding used by the Reader.

Miller Encoding M=2, used by the tags.

Page 13: Tesis Maestria - 1er Avance

RFID and SDR Commercial RFID readers does not allow us to access

all the parameters and development platforms for RFID are very expensive. (> $ 1000.00 USS)

One way solve this problem is by using the SDR approach, and doing all RFID processing in software, so we can control all the stages.

For this project we are using the EPC Gen2 decoder developed by Michael Buettner for GNU Radio.

As for the SDR device, we are using the USRP1 with the RFX900 Daughterboard. (750 – 1050 MHz).

Page 14: Tesis Maestria - 1er Avance

Project Road Map

• Select a device to capture RFID signals.

• Interface the internal options of the RFID device.

• Capture Signals• Decode signals.

• Analyse the RFID decoder implementation.

• Develop a mini RFID decoder.

• Be able to interface the internal options of the decoder.

• Port the RFID decoder to the latest GNU Radio.

• Evaluate performance with real tags.

• Develop an ICA block for GNU Radio.

• Identify where in the RFID decoding process is suitable to put an ICA block.

• Evaluate the system with and without the ICA block.

Milestone 01:RFID

Interfacing

Milestone 02: SDR

Implementation

Milestone 03: ICA

Implementation

Page 15: Tesis Maestria - 1er Avance

Project Road Map: Done so Far

Milestone 01:RFID

Interfacing

Milestone 02: SDR

Implementation

Milestone 03: ICA

Implementation

• Select a device to capture RFID signals.

• Interface the internal options of the RFID device.

• Capture Signals• Decode signals.

• Analyse the RFID decoder implementation.

• Develop a mini RFID decoder.

• Be able to interface the internal options of the decoder.

• Port the RFID decoder to the latest GNU Radio.

• Evaluate performance with real tags.

• Develop an ICA block for GNU Radio.

• Identify where in the RFID decoding process is suitable to put an ICA block.

• Evaluate the system with and without the ICA block.

Page 16: Tesis Maestria - 1er Avance

SDR Gen2 Reader Diagram

Gen2 Reader available at: https://www.cgran.org/wiki/Gen2

Page 17: Tesis Maestria - 1er Avance

Lab Experiments The following items were used:

◦ USRP1 with RFX900 Daughterboard◦ 2 UHF Antennas◦ 1 cardboard box◦ 5 UHF proximity tags◦ 2 UHF high gain tags◦ Debian Wheezy with GNU Radio 3.7.4◦ Gen2 Reader by Michael Buettner ported to last GNU

Radio. (Originally this code run in GNU Radio 3.2.2) About the reader, we use the following configuration:

◦ Q value of 0. (We want to produce collisions!).◦ 4 inventory rounds with 10 QUERY commands per round.◦ Modulation set to Miller M=2 for the tags.

Page 18: Tesis Maestria - 1er Avance

Lab Experiments – Physical Arrangement

Page 19: Tesis Maestria - 1er Avance

Signals Obtained – Inventory Rounds

1 Inventory Round

Signals captured after the Matched Filter at 800 KS/sec.

Page 20: Tesis Maestria - 1er Avance

Lab Experiments - Results

Notice how the RN16 is acknowledged by the reader and then the EPC code is returned. (Rest of errors are collisions).

Page 21: Tesis Maestria - 1er Avance

Signals Obtained – Reader/Tag

Reader Command

Tag Response

Signals captured after the Matched Filter at 800 KS/sec.

Page 22: Tesis Maestria - 1er Avance

Signals Obtained – Reader QUERY Command

PIE Preamble QUERY command

Signals captured after the Matched Filter at 800 KS/sec.

0 1 1 1 1 1

1 0 0 0 0 0

1 1 0 0 0 0 0 0 0 0 0

1 110 0

• First bits are the PIE Preamble.• QUERY packet always begin with [1 0 0 0] bits.• Last 5 bits are the CRC-5 of the packet:

Page 23: Tesis Maestria - 1er Avance

Signals Obtained – Tag RN16 Backscatter

Pilot ToneRN16 (In Miller

Encoding)

Miller M=2

Preamble

Signals captured after the Matched Filter at 800 KS/sec.

End of Signal

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0010001010

1

010100101010101010100101001 0010

1

• The End of the signal must always be 1.• Pilot tone is present according to the QUERY packet

send by the reader. (16 [0] bits).• The RN16 is Miller Encoded. If the symbol is not

valid, the QUERY packet will be resent.

Page 24: Tesis Maestria - 1er Avance

Signals Obtained – Reader ACK

PIE Preambl

e

ACK Preambl

e

Echoed RN16

Signals captured after the Matched Filter at 800 KS/sec.

• ACK begins with [0 1] bits.• Notice that in here, the RN16 number is no longer

encoded with Miller, but instead is the raw bits with PIE Modulation.

10 0 0 0

1 1 1 1 1 1 01 1 1 10 11 1

0

Page 25: Tesis Maestria - 1er Avance

Signals Obtained – Collision

Signals captured after the Matched Filter at 800 KS/sec.

• This a collision, because the red squared symbols does not follow the Miller encoding waveforms, but instead seems to be like the sum of 2 different Miller symbols.

• The decoder will not be able to read those symbols and will fail reissuing the QUERY command.

Pilot Tone

Miller M=2

Preamble

Collision Bits

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 ? 0 0 0 ? ? ? ?

0 ? 0 ? 0 ? ? 0 ? ? ? 0 ? 0 0 ?

Page 26: Tesis Maestria - 1er Avance

Signals Obtained - Collision

Signals captured after the Matched Filter at 800 KS/sec.

0 0 0 0 0 0 0 0 00 1?

1?

1 0 1?

0 0? 1 0 1?

1?

Notice how we cannot tell the value of these bits due to the collision with other symbols. Consider the 1? Marks in where the most probable value will be a 1+ 0 in a collision. Or the 101? Symbol which seems to be 101, colluded with 010.

Page 27: Tesis Maestria - 1er Avance

Next Steps – What is next?Milestone 01:

RFID Interfacing

Milestone 02: SDR

Implementation

Milestone 03: ICA

Implementation

• Already done. • Develop a mini RFID decoder in Matlab / GNU Radio.

• Be able to interface the internal options of the decoder.

• Perform evaluation with tags and recorded data.

• Develop an ICA block for GNU Radio / Matlab.

• Evaluate the performance of ICA with tags and recorded data.

• Introduce the ICA block into the mini decoder.

• Evaluate the block with tags and data.

(Possibly extend the Buettner reader to work with other SDR devices.)

Page 28: Tesis Maestria - 1er Avance