防碰撞技术

碰撞

鉴于多个RFID标签工作在同一频率,当它们处于同一个阅读器的作用范围内时,在没有防碰撞机制的情况下,信息传输过程将产生碰撞,导致信息读取失败。同时多个阅读器之间工作范围重叠也将造成碰撞。

为了防止这些碰撞的产生,RFID系统中需要设置一定的相关命令,这些命令被称为“防碰撞命令或算法”(anti-collision algorithms)。

RFID系统中防碰撞实现方法有以下四种:

  • 频分多路(Frequency DivisionMultiple Access,FDMA)
  • 空分多路(Space Division Multiple Access,SDMA)
  • 时分多路(Time Division MultiPle Access,TDMA)
  • 码分多路(Code Division Multiple Access,CDMA)

频分多路(FDMA)法

FDMA是把若干个使用不同载波频率的传输通路同时供给通信用户使用的技术。

对于RFID系统来说,可以使用能够自由调制的、非发送频率的电子标签。

对电子标签的能量供应以及控制信号的传输则使用最佳的使用频率fn。电子标签的应答可以使用若干个供选用的电子标签频率f1~fn。

因此,对于电子标签的传输来说,可以使用完全不同的频率。

FDMA的缺点是读写器非常昂贵,因为在每个接收通路上都必须有自己单独的接收器。

空分多路(SDMA)法

SDMA可以理解为在分离空间范围内重新使用确定资源的技术。

一般又可以分为两种方法:

  • 一种方法是使单个阅读器的距离明显减小,而把大量的读写器和天线覆盖面积并排安置在一个阵列中,当电子标签经过这个阵列时与之最近的读写器就与之交换信息,而因为每个天线的覆盖面积小,所以相邻的读写器区域如有其他的电子标签仍可以相互交换信息而不受干扰。这样许多电子标签在这个阵列中,由于空间分布就可以同时读出而不会相互影响。
  • 第二种方法是在读写器上利用一个自适应控制的天线,直接对准某个电子标签。不同的电子标签可以根据其在读写器作用范围内的角度位置区分开来。可以利用相控天线作为电子控制定向天线。为了启动某一电子标签,必须是电子标签扫描阅读周围的空间。直至电子标签被读写器的“搜索波束”检测到为止。

时分多路(TDMA)法

TDMA法是把整个可供使用的通道容量按时间分配给多个用户的技术。

对于RFID系统,TDMA成为防碰撞算法的最大的一族。相比其他种类的防碰撞算法,TDMA在通信形式、功耗、系统复杂性及成本等多个方面有着优势,因此使用TDMA来实现射频识别系统也是实际应用当中最为普遍的方式。

TDMA法通常被分为两大类:

读写器控制防碰撞法和标签控制防碰撞法。

读写器控制防碰撞法

读写器控制防碰撞法是以读写器为主动控制器,进入射频场的所有标签同时由读写器进行控制和检查

阅读器依据标签的ID(Idetification Number)首先向标签发射不同的询问信号或指令,阅读器依据选举方法或二进制树寻找方法,在同一时间内总是建立起一个通信关系,并且可以快速地按时间顺序操作标签。

阅读器必须采用一定的防碰撞机制才能够顺利地完成在阅读器作用范围内的标签的识别、数据信息的读写操作。

目前在射频识别系统中,主要是采用时分多路法的原理,使每个标签在单独的某个时隙内占用信道与阅读器进行通信,防止碰撞产生,使数据能够准确地在阅读器和标签之间进行传输。

标签控制防碰撞法

阅读器使用选择、遍询、访问三个基本操作来管理标签群体。

  • 1)选择(Select)
  • 用于选定多个标签,从而进行遍询和访问的操作。Seleet指令可连续使用,基于用户指定的条件来选择特定的多个标签。这个操作与在数据库中选择多条记录很相似。
  • 2)遍询(Inventory)
  • 用于识别标签的操作。读写器通过发送一个Query(查询)指令来对标签进行遍询。会有一个或多个标签答复。读写器会在要求某一个标签发送EPC和CRC(Cyclic Redundancy Check/Code,循环冗余校验码)之前探测此标签是否正在答复。遍询(Inventory)操作由多条指令共同组成。
  • 3)访问(Access)
  • 与某个标签进行通信的操作(读取和写入)。这个单独的标签必须在访问操作之前就被识别出来。访问(Access)操作采用确保R=>T(Reader-to-Tag)链路安全的随机数加密算法,由多条指令组成。
  • 常用的标签防碰撞机制主要有ALOHA法和二进制搜索算法等,ALOHA算法实现比较简单,在一个周期性的循环内把数据发送出去即可,二进制搜索算法的必要前提是能够辨认出数据碰撞中比特的准确位置。

码分多路(CDMA)法

详细见另外一篇

CDMA技术的原理是基于扩频技术,而用户具有特征码,即CDMA包含扩频与分码两个基本概念。

扩频是信息带宽的扩展,即把需要传送的具有一定信号带宽的信息数据,用一个带宽远大于信号带宽的高速伪随机(PN)码进行调制,使原数据信号的带宽被扩展,再经载波调制并发送出去。

接收端使用完全相同的伪随机码,与接收的带宽信号作相关处理,把宽带信号转换成原信息数据的窄带信号即解扩,以实现信息通信。码分是实现用户信道和基站的标识问题。可以用不同移相的伪随机系列来实现基站的码分选址,用一定的算法实现信道的选择,用周期足够长的PN序列实现用户的识别和多速率业务的识别。

CDMA的缺点是频带利用率低、地址码选择较难、接收时地址码捕获时间较长。其通信频带及其技术复杂性等很难在RFID系统中推广应用。

RFDA防碰撞之码分复用

CDMA是一种共享信道的方法,每一个用户可以在同样的时间使用同样的频带进行通信。
简单地说,就是当多个用户用同一个信道进行通信时,如果不采用CDMA的方法,就只能一个一个用户进行通信,效率相对较低。而采用CDMA的方法,则可以让不同的用户在同一个信道同时通信,且互不干扰。

那么,CDMA如何实现多用户同时通信而不产生冲突的呢?

首先先来了解什么是码片序列:
一个bit时间划分为m个短的间隔,称为码片。
将发送端的每一bit信号进行编码,原本1bit用多个bit进行表示

例如原本是信号1,则用01010101表示,原本是信号0,则发送其反码10101010,同时为了提升发送信号的抗干扰性,一般将编码中0用-1代替。这种编码即被称为码片序列。

例如:
S站的8bit码片序列是00011011
•发送比特1时,就发送码片序列00011011
•发送比特0时,就发送码片序列的反码11100100
按惯例将码片中的0写为-1,将1写为+1,S站的码片序列是:(-1 -1 -1 +1 +1 -1 +1 +1)

那么回答之前的问题,CDMA能实现多用户同时通信而不产生冲突的原因在于,多个用户在发送数据时,所采用的码片序列都是正交的。

我们可以这样理解,物理中我们学习过力的合成和分解,例如:相互垂直的两个力可以形成一个合力,而这个合力我们也能分解成两个有着相互垂直方向上的力,且这两个力对彼此不会产生影响。类比来看,发送端每个站会被指派一个唯一的m bit码片序列,每个码都是各不相同的一个向量,且这些向量互相垂直,叠加的信号就是“合力”,而在接收端,特定用户解出的属于自己的信息,就是该合力的一个分力。

二维正交系可以有两个正交量,形成两个“码”,那么若一个正交系有n个正交量,那么就有n个“码”。

看到这,我们知道:在CDMA系统中,发送端用互不相干、相互正交(准正交)的地址去调制所要发送的信号,接收端则利用码型的正交性通过地址从混合的信号中选出相应信号。

其中接收端收到的混合信号是各个站发送的码片序列之和。

那么接收端怎么从混合信号中选出相应的信号呢?

接收端用相同的码片序列进行规格化内积(只有目标分量的内容会留下来),就可以将不属于本码片序列的其他信号全部去除,只接受本码片序列所携带的信息。(即使多用户同时通信时,其信号电压会相互叠加或抵消。)