如果你觉得本文对你有帮助/你觉得本文某些地方叙述有误/你希望共建这篇文章,欢迎使用以下notion链接进行编辑
https://www.notion.so/RFID-f31c0e74ce7c462d8523050ccb14d8f0?pvs=4
我会定时同步你的更新!

RFID 无线射频识别

CH1&CH2 RFID技术概览

写前面:讲一些自动识别技术,什么人脸识别语音识别,虽然不知道为什么rfid考试要考这些流程。。

Definition and scope of RFID

RFID (Radio Frequency Identification) is a technology that uses radio frequency waves to transfer energy and data between a reader and a movable item to identify, categorize, track, …

无线射频识别:使用电磁波传递能量和数据。。。去识别。。。

历史

RFID started as early as World War II, where airplanes used to be identified as “friend or foe” using this technology.

The nearest rival of RFID came to commercial usage in the 1960s or 1970s.

RFID wasn’t officially patented until 1973, in a landmark claim by Mario W. Cardullo, who
created an active RFID tagging system that utilized rewritable memory.

Automatic identification technology「自动识别技术」

自动指区分于人(Human identification

Untitled

语音识别流程

Feature extraction → Statistical acoustics model → Pronunciation dictionary → Language model

Feat:

  • Easy to use, and easily accepted by the user
  • Cheap sound equipment, and not involve user’s privacy
  • Due to the lack of international standards, there are some difficulties in promoting

面容识别流程

Face acquisition → Face positioning → Face recognition preprocessing(Local Feature Analysis) → Look up the identity

Feat:

  • Surroundings, hair ornaments, age can affect the recognition rate
  • Fast recognition speed, not easy to be aware of it

Three advantages of using RFID compared to bar code scanning are:
§ More efficiency: you can scan multiple items at once
§ More durability: tags can handle exposure to weather conditions like sun and rain
§ More security: you can encrypt RFID tags so only your reader can get the data

Main features of RFID

Non-contact automatic and rapid identification

The RFID tag returns data by backscattering the energy, with an effective communication range of 6-10 m.
The RFID system uses an effective anti-collision mechanism to read tags, enabling rapid identification of a large number of tags.

Permanently store a certain amount of data

RFID tag has a user storage area, which can store 1KB-10KB of user data.

Simple logical processing

RFID has a very limited number of internal logic gates, so only a simple logical processing can be made.
But the RFID system can use the basic logic processing ability of tags to achieve some effective protocols and algorithms to improve the system operating efficiency and security performance.

Reflection signal strength is affected by the distance and other factors significantly

Since the RFID tag itself is a passive device, the feedback signal must be modulated by backscatter.

Therefore, the strength of the RFID tag reflection signal is susceptible to the surrounding environment, including distance, reader power, signal interference, and tag deployment density.

Low cost, can be deployed at a large scale

RFID tags tend to large-scale mass production using printed circuits, so manufacturing costs can be significantly reduced.
At present, the cost of an RFID tag can be controlled at around 10 cents.

Constraints of RFID

Untitled


CH3 RFID系统组成

写前面:

RFID系统基本组成:Reader Tag Software,本章按此展开

Reader

功能

  1. 能量供给 提供能量给tag(tag一般看作被动)
  2. 安全性 加密解密
  3. 无线通讯 和tag通讯 和上层应用通讯 组网 管理天线等

工作频率

详见下一章,低频(LF HF)往往距离更短(1m)

外观

Untitled

读写距离

影响因素:天线耦合方式 天线(极化)方向 输出功率 载波频率

关于极化方向,两个tag极化方向一致功率最大

Untitled

详见后文

component

Untitled

处理模块

  • Communicate with upper computer, and execute command from it
  • Control communication process with tags
  • Encode and decode signal Perform anti-collision algorithm
  • Encrypt and decrypt the data transferred between reader and tag
  • Identity certification between reader and tag

射频模块工作原理

两种工作类型

  • Inductively Coupled RF Modules 「感应耦合」

    Untitled

    Untitled

    LC Tag的谐振「resonance」频率(有点类似与共振那种固有频率)

    f0=12πLCf_0={ {1}\over {2\pi}{\sqrt{LC} } }

  • Electromagnetic Backscatter Coupled RF Module 「电磁反向散射」

    Untitled

    三个功能部分:发射、接收、能量

Untitled

Tag

功能

  • 数据存储
  • 非接触读写
  • 能量获取(Harvesting

外观

Untitled

读写模式

只读 写1读多 读写 (参考EPC class)

能量源

主动(有源) 标签电池

半主动 (半有源)

被动(无源)靠载波能量

component

analog front end, control unit and storage unit

模拟前端:整流(能量获取)解调(得到基带信号)调制(调试res信息)提供时钟

控制:解码 编码 校验 加密 解密 防碰撞

存储:存储数据

唤醒电路

。。。


CH4 无线通信原理

写前面:巨几把墨迹的一章,内容涵盖了大学物理电磁波一段的复习,无线通信原理比如RF频谱分类包括编码调制的一些内容(虽然下一章叫编码调制),信号能量计算和表达(引入dB),链路预算(从能量传输的角度展示rfid工作过程,为什么会有距离限制),天线(天线增益),使用有向天线(增益)后的链路,天线极性等现实中的信号传输问题。我感觉这里能量部分主要讲的是电磁反向散射那一套,毕竟例子频率915MHz和3m距离超过了低频的范围。

电磁场理论

RFID使用电磁波传输能量和信息

电场和磁场垂直,且和传播方向垂直

电磁场(无线场,天线场)分为两个部分:近场和远场

近场和远场的划分为r=λ2πr = { {\lambda}\over{2\pi} },有可能天线场不太一样以为我见过有本书里的公式带天线的直径

Radio频谱

Untitled

对于计算频率或者波长记住有个公式(c=光速=3x10^8)

λ=cf\lambda = {c \over f}

LF和HF经常使用感应耦合「inductively coupled」的方式

UHF和SHF经常使用电磁反向散射「electromagnetic backscatter coupled」的方式

能量相关计算

Untitled

P_av说的是平均功率(考虑正弦波电压有效值是最大值的根号2倍)

dB,dBm,dBi,dBd

dB,一种衡量能量的方式,不同于瓦特的线性,dB表示一种倍数关系,具体是

GaindB=10 lg(P2P1)Gain_{dB} = 10 \ lg({P_2\over P_1})

举例来说

3dB表示2倍,+3dB功率乘2,-3dB功率除2

10dB表示10倍,+10dB功率乘10,-3dB功率除10

但只有相对量是没有意义的

引入dBm,以毫瓦为参照简历绝对量

dBm=10 lg(PW1mW)dBm = 10 \ lg({P_W\over 1mW})

参考值:30dBm=1W

dBi,相对于全向天线的增益(详见后文)

dBd,相对于偶极子天线的增益

特别的,有 dBd = dBi -2.2 dB

调制

首先,三种基本调制模式ASK FSK PSK,AFP分别表示幅值 频率 相位

三种基本数字调制(2xSK)示意图

Untitled

Untitled

Untitled

编码

对于reader来说,采用ASK的方式

  • OOK「On-Off Keying」

Untitled

有个小问题就是reader如果在0状态就不发送能量了,tag无法工作

  • PIE「Pulse Interval Encoding」

Untitled

§ “1”: output a long time of high power followed by a short time of low power
§ “0”: output a short time of high power followed by a short time of low power

能计算出传输能量的时间占比

50%*50%+50%*75%=62.5%

对于tag来说,使用FSK方式

编码方式为

  • FM0

Untitled

Untitled

从能量的角度解释传播距离

影响因素:

  • reader发送功率
    • power(reader功率限制)
    • 频率
    • 现实应用(规章限制)
  • Path Loss
  • tag激活能量(Threshold)
  • 增益(下部分)

这一部分进行的叙述和论证建立在全向且各向同性的天线上,即辐射场为球形
发射公率为1W(30dBm)同时电磁波频率为915MHz

Path Loss

对于从天线到某一距离为r的点,接受功率的表达式为

PRX=PTXAe4πr2P_{RX}=P_{TX}{A_e\over4\pi r^2}

P_rx:接收功率

P_tx:(全向)天线发射功率

A_e:有效孔径,下面给公式

r:距离全向天线中心(球心)距离

Ae=λ24π==>PRX=PTX(λ4πr)2A_e={\lambda^2 \over 4\pi} \\==> P_{RX}=P_{TX}({\lambda\over4\pi r})^2

\lamda:信号(电磁波)波长

一些快速检索值距离与能量衰减

距离(m) 衰减(-dB) 参考值(发射30dBm 915MHz)
1 32 -1.6dBm
3 41 -10dBm
10 52

tag的激活能量约30uW,能量利用率为30% → 接收能量不少于100uW(-10dBm)

由上面信息可得前向链路能量图

Untitled

注:斜率 -20dB/10m,-6dB/slot

反向链路

Untitled

前面说tag能量利用率30%,与这里-5dB照应

反向链路reader的threshold参考值**-75dBm**,所以说明距离制约在前向链路上

前面给了单向传输path loss公式

PRX=PTX(λ4πr)2P_{RX}=P_{TX}({\lambda\over4\pi r})^2

所以说很明显双向传输(reader→tag→reader)reader接收的能量与距离的4次方成反比

天线「Antenna」

主要讲天线的增益和极性

各向同性*天线「isotropic antenna」

全向天线 「omnidirectional antenna」

定向天线 「directional antenna」

偶极子天线 「dipole antenna」

增益 「gain」

辐射 「radiation」

*各项同性天线:即辐射场是球形切球面处处强度相等的天线。有时候会翻译成全向天线但是注意,不是omnidirectional这种全向,例如偶极子天线被认为是omnidirectional但并不isotropic

定向天线增益

Untitled

增益公式

G(dBi)=4πΩbeamG(dBi)={4\pi\over\Omega_{beam} }

Ω\Omega表示立体角,对整个球面划分4π\pi,类似θ\theta表示平面角,对整个圆周划分2π\pi

偶极子天线增益

The dipole antenna does not radiate the signal along the axis but is uniformly radiated in all directions perpendicular to the axis

Untitled

对比全向(**isotropic)**天线增益2.2dB

所以

G(dBd)=G(dBi)2.2dBG(dBd)=G(dBi) -2.2 dB

等效全向辐射功率「EIRP Equivalent Isotropic Radiated Power

字面意思,讲定向天线的功率等效为全向功率,便于用来制定规定

EIRP=发射功率+增益

例如规定EIRP不超过36dBm,现在有发射功率30dBm的天线,那么增益最大为6dBi

增益链路预算(跟上面那个一样就是算了增益)

Untitled

等效有效孔径

Ae=G(λ24π)==>PRX=PTXGTXGRX(λ4πr)2A_e=G({\lambda^2 \over 4\pi}) \\==> P_{RX}=P_{TX}G_{TX}G_{RX}({\lambda\over4\pi r})^2

对于完整链路

PTX,tag=PTX,readerGreaderGtag(λ4πr)2 TbPRX,reader=PTX,tagGtagGreader(λ4πr)2==>PRX,reader=PTX,readerGreader2Gtag2Tb(λ4πr)4P_{TX,tag}=P_{TX,reader}G_{reader}G_{tag}({\lambda\over4\pi r})^2 \ T_b\\ P_{RX,reader}=P_{TX,tag}G_{tag}G_{reader}({\lambda\over4\pi r})^2\\==> P_{RX,reader}=P_{TX,reader}G_{reader}^2G_{tag}^2T_b({\lambda\over4\pi r})^4\\

T_b:tag解调等能量消耗

P_Tx, tag:tag发送的能量

推导可得前向链路距离

Untitled

和反向链路距离

Untitled

天线极性 「Polarization」

线性极性「linear polarization」

Untitled

圆极性 「circularly polarized」

可以在某一时间点分解成两个线性极性的合

Untitled

极性增益功率表达式

PRX=PTXGTXGRXcos2(θpolar)(λ4πr)2P_{RX}=P_{TX}G_{TX}G_{RX}cos^2(\theta_{polar})({\lambda\over4\pi r})^2

双偶极子天线 「Double dipole antenna」

两个正交天线组成,避免某一极性信号不好

Untitled

多径效应 「multipath effect」

Untitled

反射的信号与直接传递的信号叠加干扰(相位改变),路径相差波长1/4 相位相差90度。

反射的信号能量为原信号1/10,理论上可以计算出上图tag接收的能量

Untitled

这里取两个极端例子证明反射信号干扰对信号能量的不确定性,分别取全同相和全反相

Untitled

布鲁斯特角

Untitled


CH5 校验、编码与调制「Checksum Coding Modulation」

写前面:校验、编码与调制可以看作是rfid系统为了确保可靠传输在不同层面上的技术,三个技术分别表示了从抽象层到物理层(message→baseband→high frequency signal)的可靠传输技术。校验从字(节)的角度实现错误的识别和纠正,主要讲了奇偶校验、LRC和CRC;编码是从计算机上层的字(节)的概念到底层电路逻辑的表示方法,例如最简单的0/1,其中又依照rfid系统的限制提出了不同的优化方式;调制(数字调制)将数字逻辑积到高频载波信号上,在传播媒介上提供更好的抗干扰性能和更远的传播距离。

Checksum

奇偶校验

例如对于8bit字,添加1bit校验位,奇校验连通校验位1有奇数个,偶校验相反

问题:假如两位出现error则无法检出

LRC「Longitudinal redundancy check 纵向冗余检查」

纵向,指纵向XOR若干个字

例如(41为LRC结果)

Untitled

作为块计算,Primarily used for the rapid checking of very small data blocks

和上面一样,error会抵消

CRC「cyclic redundancy check 循环冗余检查

CRC有生成多项式,例如4bit-CRC的生成式是x4 + x + 1

Untitled

Encoding

Untitled

Untitled

NRZ

高代表1,低代表0

Manchester

下降沿→1, 上升沿→0

URZ

一半高→1, 低→0

DBP

每个bit开始时翻转,bit中不变→1, bit中翻转→0

Miller

bit中翻转→1, 保持→0 连续的0在开始前翻转

mod Miller

看miller的时序,什么时候翻转了就用👇pulse表示,提供持续的高电平(能量)

Differential

1 的时候toggle

PPC(电感耦合用)

👇pulse+T→1, 👇pulse+2T→0


CH6 Tag识别协议

写前面:这一章里的识别协议主要指的是多个tag同时通信时发生的信号干扰(碰撞)问题,主要讲了一些防碰撞协议,有点类似于计算机网络MAC层的防碰撞(Aloha)协议,但是由于tag的计算能力有限,没有办法去执行类似于CSMA(载波监听多路存取)这种需要client去主动感知的复杂协议。

信号干扰(Interference)

两种:多个reader之间的干扰和多个tag之间的干扰

Reader之间的干扰采用大致3种方式解决(Reader计算能力相对充沛,参考计算机网络)

  1. TDMA 时分复用
  2. FDMA 频分复用
  3. CSMA 载波监听多路存取

Tag之间干扰后面详述

通讯类型

  • 广播

一般是reader到tag 「注:transponder 就是 tag」

Untitled

  • 多路存取

多个tag到reader

Untitled

Tag防碰撞算法

概述

  • Space division multiple access (SDMA)
  • Frequency division multiple access (FDMA)
  • Time division multiple access (TDMA)
  • Code division multiple access (CDMA)

Untitled

「注:没有CSMA了,理由见上。增加了SDMA,理由见下」

SDMA 空分复用

Untitled

两种实现途径:

  1. 减小reader天线覆盖范围,并配置多个reader
  2. 使用定向「directional」天线「antenna」(如上图)

Disadvantage:

relatively ****high implementation cost of complicated antenna system

Restricted to a few specialized applications

FDMA 频分复用

Untitled

在FDMA过程中,提供多个频率信道可用于从转发器到读取器的数据传输

Disadvantage:

relatively ****high cost of readers

Limited to a few specialized applications

TDMA 时分复用

Untitled

  • Compared with the reader, limited by hardware resources, tags have very limited storage capacity and computing.
  • That’s why the tag does not have a collision detection function, and the tags can not communicate with each other.
  • All conflict detection needs to be done with the help of the reader.
  • TDMA can be used to detect conflicts among RFID tags from the point of view of system complexity and cost.

关于是tag-driven还是reader-driven:看由谁决定发送消息的时间
例如
在Aloha中,无论是否有reader发起,tag可以自主选择SN来决定自己发送的时间
同理 在BT中,Tag自主选择+1 或 +0
而在 QT中,Reader来对tag进行查询,指定tag对发送顺序

通常,tag-driven需要tag有寄存(计数)器

ALOHA- based

ALOHA提供回退机制「rollback」,即发生碰撞则重新发送。

实现简单且公平「simple and fair」

Pure ALOHA

Untitled

reader接受到无干扰到包后会广播一个ACK,也就是说tag发包后没有收到ACK就证明包冲突了,随后重发。

纯ALOHA算法效率低,信道利用率约18.4%

证明:

Offered load G ****:同一个时间段tao中有多少个tag在发送

Throughput s:信道吞吐量,对于reader来说,s=1成功收包,s=0发生碰撞

Untitled

Untitled

这段概率论真tm看不懂

Slotted- ALOHA

Untitled

把时间分成间隙,tag只能在slot开始时发包(相当于同步了,不会出现发包的中间发生干扰的情况)

信道利用率maximum of 36.8%: offered load G=1

这个简单说一下,虽然说前面概率论看不懂一点,但是前面假设了一个包不发生冲突的条件是2个tao时间(红框)内没有其他tag发包

Untitled

而同步slot后只需要保证同一个slot内没有tag发包(1个tao)所以效率直接x2=36.8%

时隙ALOHA工作流程

三个指令(阶段)

Untitled

防碰撞发生在Request和Select中间

流程:

  1. Reader广播Request命令
  2. tag收到命令后随机选择一个slot发送自己的SN
  3. 没有冲突的tag被选为下面通讯的tag

Untitled

Frame Slotted ALOHA「FSA 固定帧时隙ALOHA」

基于前文S- ALOHA,将多个slot组织成一个frame

工作流程:

  1. Reader广播frame length
  2. tag在frame length中随机选取一个SN(保存到寄存器)
  3. 每一个slot中SN为0的tag立即与reader进行通讯,其他tag将SN-1
  4. 发送成功的tag进行休眠

分析:

三种slot状态:

Untitled

FSA是RFID系统中最常用的ALOHA算法

性能分析:

FSA采用固定帧长,帧大小决定性能

帧过大:Idle slot过多

帧过小:Conflict slot过多

帧大小=tag数量时,性能最优,信道利用率36.8%(也就是前文的G=1,每个slot有1个tag)

Untitled

Dynamic Frame Slotted ALOHA「DFSA 动态帧时隙ALOHA」

思想:学习前一帧来估计tag数量

EPCglobalGen2 标准中采用的 Q算法

冲突帧过多 → 结束,启动一个更大的帧

闲置帧过多 → 结束,启动一个更小的帧

Untitled

帧长 =(2^Q)-1

ALOHA方法总结

实现简单,公平

可能有tag会starvation

Binary Tree Based

思想:发生冲突时把tag分为两个子集,让1个子集先沉默,如果还冲突就继续分直到一个子集只有一个tag

分类:

  • BT树 属于Tag-driven
  • QT树 属于Reader-driven

Random binary tree 「BT 随机二进制树」TAG-driven

每个tag保留一个计数器(counter)初始值为0

发生冲突后,每个tag随机选择+1或+0

成功接受后,该tag休眠,其他tag-1

出现闲置帧所有tag-1

【关注最左枝,右枝暂时搁置(自动+1)】

Untitled

过程「内为假设随机事件」:

  • reader广播REQUEST,tag计数器置0
  • slot0 时【1234】发送,冲突。「tag3 +1」
  • slot1 时【124】发送,冲突。「tag1 tag4 +1」
  • slot2 时【2】发送,成功。【2】休眠,所有tag -1
  • slot3 时【14】发送,冲突。「tag4 +1」
  • slot4 时【1】发送,成功。【1】休眠,所有tag -1
  • slot5 时【4】发送,成功。【4】休眠,所有tag -1
  • slot6 时【3】发送,成功。

Binary Query Tree 「QT 二进制查找书」READER-driven

与BT不同,QT为无状态「stateless」协议,也就是说QT中tag不保存状态

tag含有自己的UID,让Reader进行「前缀」查找(筛选),直到筛选条件只会有一个tag(无冲突)。

性能与UID长度(树的深度)有关

Untitled

Binary Search Based

思想:找到发生冲突的比特位,加速算法(可以跳过没有发生冲突的位,想象上面的树)

NRZ和Manchester编码对于冲突发生的感知

先解释一下这个图,第一行是tag1的发送信号,第二行是tag2的发送信号,第三行是调制后的(发送中的、reader接收的)信号,第四行是reader解调的信号

Untitled

发现使用Manchester编码会找到发生冲突的位(无法解码)

Request:指定一个sn范围

Select:指定id的tag回复信息

过程:

8bit二进制序列号(0-255)

第一轮全选tag(小于255),通过接受数据可知冲突位

bit6有冲突,证明至少有一个tag的sn≤10111111

Untitled

总体看,两种查询模式

使用 ≥模式首次查询0,之后最高冲突位置1,0位置冲突位后置0

≤模式同理

Untitled

性能:

查询次数 = log2(N)+1,N = tag个数

思想:

在上面的过程中,请求指令尾端全是1,没有必要发送给tag;tag的回复头段一定满足reader要求(reader已经知道),没必要发送。所以想办法将2x的传送量优化为1x,减少冗余字段。

Untitled

优化后的上例

Untitled

比较ALOHA和Binary Tree

ALOHA:

优点:

  • 简单
  • 性能好
  • 结果可以统计分析

缺点:

  • 存在starvation
  • 最坏情况延迟趋于无穷

Binary Tree:

优点:

  • 简单
  • 不需要存储状态

缺点:

  • ID分布不均时效能不好

Untitled


CH7 EPC标准协议

EPC global网络组成

网络拓扑

Untitled

EPC网络典型工作流程

Untitled

1️⃣:制造商贴标签

2️⃣:将商品相关信息存在本地EPCIS中(如生产日期)

3️⃣:向EPC DS注册

4️⃣:运输

Untitled

5️⃣:零售商讲相关信息存在本地EPCIS中(如收货日期)

6️⃣:向EPC DS注册

Untitled

7️⃣8️⃣9️⃣:使用company前缀进行逐级解析,取得信息

EPC商品码

EPC: Electronic Product Code

Version Number + Domain Manager number + Object Class number + Serial Number

例如:

EPC-96 type I : 01 0000A89 00016F 000169DC0 (in HEX)

  • 01 – Version Number
  • 0000A89 – Domain Manager
  • 00016F – Object Class
  • 000169DC0 – Serial Number

EPC Tag 分类

  • Class 0 :Passive, Read-only, 64/96 bit
  • Class 1 :Passive, ReadMany WriteOnce, 64/96 bit, Kill Lock function
  • Class 2 :Class1 with Authenticated access control
  • Class 3 :Simi-Passive
  • Class 3 :Active, Tag2Tag Communication

EPC Class 0 MAC协议

binary tree based variant algorithm

和QT一样,就是查询前缀的时候只用发1 bit

Untitled

EPC Class 1 Gen 1 MAC协议

和C0不兼容,增加Ping ID操作

Untitled

EPC Class 1 Gen 2 MAC协议

EPC Class1Gen2 tag状态机

Untitled

EPC C1Gen2标准附录B由详细的状态转移表

Untitled

  • tag上电之后进入Ready状态(由reader充电)
  • 接收到reader的query请求时进入Arbitrate状态,一次query减少1个slot计数
  • slot=0,进入Reply状态,reply一个RN16(16位伪随机数)给reader
  • reader检查接收,接收成功发送ACK给tag。如果没有ACK或者发了NACK,tag返回Arbitrate状态
  • tag收到reader的ACK进入Acknowledge状态,发送「PC+EPC+CRC」

Untitled

Untitled