Post on 10-Aug-2015
transcript
A RFID Collision Avoidance Framework using SDRBruno Fernando Espinoza Amaya
Basics of RFID RFID (Radio Frequency Identification) is a technology
that allow little chips to be interrogated from distance.
Consist on both readers and transducers (Tags). It can be both active or passive. (With or without energy source).
Features depend on the frequency used. UHF RFID is widely used in warehousing control.
UHF RFID standard is called EPC Gen2 (ISO 1800-6C). UHF Frequency Range for Australia is 918 – 926 MHz. Main UHF RFID uses are warehouse management and
toll collection.
Slotted ALOHA for UHF RFID
Basically, the reader sends a ‘slot value’ that is received by the tags. Then, the tags generated a random number based on the slot. When the reader sends the same slot as the tag, the tag replies.
In UHF RFID, this is done with the QUERY and QUERY-REP commands. The slot value is called Q and is sent in the QUERY request, while QUERY-REP updates the slot value.
Image Source: The RF in RFID by Daniel Dobkin
RFID Signals BasicsPIE Encoding used by the Reader: The reader uses a Pulse-like modulation system that use short pulses for zeros and larger pulse for ones.
Encoding used by the Tags: The tags uses two types of modulation: A Manchester-like one (FM0) and the product of this code with a clock source. (Miller 2, 4 and 8).
Image Source: The EPC Gen2 Specification
RFID Inventory (Reading) Process
Collisions can only happen on the RN16 stage, as all tags have a unique EPC code.
Image Source: The EPC Gen2 Specification
RFID SignalsReader:
Tag:
PIE Preamble
QUERY Command
Pilot Tone Tag Preambl
e
RN16 Backscatter
Real signals recorded from a Tag at 800 KS/s.
RFID Signals - Collisions
Real signals recorded from a Tag at 800 KS/s.
Software-defined Radio and RFIDAn open source SDR RFID reader was used
for this project.The reader originally supports only the
USRP1 device and GNU Radio 3.3.The reader allows to control all the aspects
of the RFID decoding process.Reader was ported to the latest GNU Radio
Version (3.7), allowing other SDR devices to be used.
Testing on this port was done using the bladeRF and the USRP1 device.
A Framework for RFID Collision Recovery A framework for testing FastICA was developed in the
Matlab language. (Octave compatible) Consist of RFID Signal Generator, RFID Listener and
FastICA Model. The developed Listener is able to decode real RFID
signals captured with a SDR device, as well as the signals generated by our signal generator.
The developed Listener will obtain all the information of the signal from the signal itself, parsing all the parameters.
The FastICA model was developed to test how FastICA performs under a variety of circumstances. (Such as SNR, phase shift and amplitude changes).
FastICA Algorithm / Blind Signal Separation
Images from Kyushu Institute of Technology.
FastICA Algorithm Is an algorithm that implements Blind Signal
Separation by separating a signal into its additive components.
Similar in nature to PCA.Signals must be statistically independent
and non Gaussian.The way on how this components are mixed
into the signals is expressed via a Mixing Matrix. FastICA recovers this matrix.
It requires at least as many input signals as sources to work properly.
FastICA and RFID Collision Recovery Research by Sun Yuan shows that FastICA can be used
for recovery information from RFID-like signals generated by an FPGA.
FastICA recovery possible as the values generated for each tag are independent from each other.
Only certain type of collisions can be recovered. Signal need to be low-pass filtered to supress high
frequency components that could interfere. This is done by using Median Filter.
The experiments tests this recovery capability on real RFID signals recorded with a SDR device.
The developed RFID Listener is able to perform FastICA when feed with 2 recordings from the collisions.
RFID Collisions RecoverySignal
ASignal
BAdditive Result
A A 2A
A -A 0
-A A 0
-A -A -2A
A and –A represent the 2 possible levels that the Tag signal could have. When two opposite levels collide in time, they cancel out, so the information cannot be recovered.
However, because we are using multiple antennas, those two levels will have amplitude changes and some delay due to multipath. Because of this reasons, information can still be recovered.
Image from the Sun Yuan Thesis.
RFID Collision Model
Tag1
Tag2
RX1
RX2
SDR Device and to
PC
Amplitude X1
Amplitude Y2
Amplitud
e X2Ampl
itud
e Y2
RFID FastICA ModelTest the viability of FastICA for collision
recovery, under different scenarios.Simulation over 10,000 tags readings.Model simulates amplitude changes, AWGN
noise and phase shift.Tag Error Rate is calculated under different
AWGN noise scenarios, for each of the 4 available modulation types.
Results from Simulated ICA Model
USRP1 ModelA testing scenario for FastICA using the
USRP1 device was set.Single TX and 2 RX, using the RFX-900
boards.Sampling Rate at 2 MS/s.Ported version of the RFID reader which
supports capture from multiple antennas.The developed Listener reads the captured
data and perform the FastICA recovery.Reader Q=0 and Tag modulation is Miller
M=2.Tested with 1, 2, 3 and 4 tags.
USRP1 Test Environment
Tags
RX2
RX1
USRP1
TX1
Results from Recovery (1 Tag, Q=0)
Real signals recorded from a Tag at 2 MS/s.
Results from Recovery (2 Tags, Q=0)
Real signals recorded from a Tag at 2 MS/s.
Results from Recovery (3 Tags, Q=0)
Real signals recorded from a Tag at 2 MS/s.
Results from Recovery (4 Tags, Q=0)
Real signals recorded from a Tag at 2 MS/s.
DiscussionFastICA can separate RFID collision signals,
when provided with more than 1 signal recording.
Miller schemes perform best in the simulation of collisions, with Miller M=2 as the best performance. FM0 performs worst.
USRP1 decoding with FastICA can recover clean signals up to 3 tag collisions.
Some collisions in the experiment were unable to be recovered.
Is recommended to have more antennas to maximize the success rate.