RFID读写系统及其标签返回信号的解码和冲突处理方法转让专利

申请号 : CN201510445394.6

文献号 : CN104966113B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 原金鹏孙杰林任永涛宋伟宁刘成永纪圣华戚明珠

申请人 : 威海北洋电气集团股份有限公司

摘要 :

本发明涉及射频识别技术领域,具体地说是一种基于ISO18000‑3mod3协议,通过硬件电路设计和嵌入式编程,实现具体MOD3协议的RFID感应识别和信息处理功能的RFID读写系统及其标签返回信号的解码和冲突处理方法,其特征在于设有ARM微处理器,DSP微处理器,射频发射电路,射频接收电路,射频切换电路,所述射频发射电路包括依次串联的载波生成及调制电路、发射运算放大电路、一级匹配电路、移相电路、二级匹配电路、射频天线,其中载波生成及调制电路与DSP微处理器相连接;本发明相对于现有技术,具有效率高,速度快,精确度高等显著的优点。

权利要求 :

1.一种RFID读写系统的标签返回信号的解码和冲突处理方法,所述RFID读写系统设有ARM微处理器,用于完成接机接口控制、参数的设置保存、与上位机的通信以及射频命令的处理转发;

DSP微处理器,用于完成射频识别功能并将数据上报给ARM微处理器;

射频发射电路,与DSP微处理器相连接;

射频接收电路,与DSP微处理器相连接;

射频切换电路,与DSP微处理器相连接;

所述射频发射电路包括依次串联的载波生成及调制电路、发射运算放大电路、一级匹配电路、移相电路、二级匹配电路、射频天线,其中载波生成及调制电路与DSP微处理器相连接;

所述射频接收电路包括两路射频信号接收回路,分别与射频发射电路中的一级匹配电路、二级匹配电路相连接,所述射频信号接收回路设有依次串联的接收运放电路、检波电路、三级滤波电路、限幅电路,其中接收运放电路的控制端与DSP微处理器相连接,检波电路的输入端与射频发射电路中的匹配电路相连接,限幅电路的输出端经A/D转换电路与DSP微处理器相连接;

还设有分别与ARM微处理器相连接的FLASH模块、人机界面模块、状态检测单元、DSP指令处理模块,其中DSP指令处理单元经DSP通信单元获得DSP微处理器上传的数据;

所述ARM微处理器与上位机相连接,并通过网路通信模块或串口通信模块完成外设配置;

还设有与DSP微处理器相连接的FLASH单元、人机界面模块、ARM指令处理模块、ARM通信模块,其中ARM通信模块经ARM指令处理模块与DSP微处理器相连接;

其特征在于包括以下步骤:

步骤1:启动AD转换器、uPP接口及其DMA功能,获取标签返回信号,并存储至DMA缓存;

步骤2:判断DMA缓存是否存在溢出,如果存在,重复步骤1,否则进入步骤3;

步骤3:判断缓存中是否有足够的数据,若存在足够数据,进入步骤4,否则等待直至获得足够的数据;

步骤4:调用有效信号捕获函数对缓存中的数据进行处理,如果获取到有效信号,则调用解码函数进入步骤5,否则进入步骤2,在DMA缓存溢出或超时前形成获取有效信号的循环;

步骤5:判断缓存中是否有足够的数据,若无则等待直至数据量满足要求,若有足够数据,则通过设置无效数据宽度,滤除噪声引起的尖刺,获取有效极大值;

步骤6:在由uPP接口和DMA完成数据传输、存储的同时计算所有相邻极大值的宽度;

步骤7:判断步骤6所获得的宽度是否小于下阈值,若小于下阈值则当作高电平,计数变量加1,否则当作低电平;

步骤8:当步骤7中结果为低电平时,判断编码违例标志位是否为1,若为1则进入编码违例判决流程,否则进入非违例解码流程后回到步骤5。

2.根据权利要求1所述的一种RFID读写系统的标签返回信号的解码和冲突处理方法,其特征在于当步骤7中结果为高电平时,判断计数是否大于5,若大于5,则编码违例标志置1并获取位置,然后回到步骤5;若计数小于等于5,则直接回到步骤5。

3.根据权利要求1所述的一种RFID读写系统的标签返回信号的解码和冲突处理方法,其特征在于步骤8所述编码违例判决流程包括以下步骤:判断帧头标志位是否为0,若为0,进行帧头判断,否则进行帧尾判断;其中帧头判断是指判断此处是否为帧头,若是,则帧头标志位置1,进入下一个有效极值点的获取,否则认定为帧头出错,结束解码,返回错误码;帧尾判断是指判断此处是否为帧尾,若是,则帧尾标志位置1,结束解码,返回解码结果,否则认定为帧尾出错,结束解码,返回错误码。

4.根据权利要求1所述的一种RFID读写系统的标签返回信号的解码和冲突处理方法,其特征在于步骤8所述非违例解码流程包括以下步骤:非违例解码流程开始后,极性标志位在帧头确认后复位为0,之后随解码更新,判断低电平宽度是否大于上阈值,若是,则判断高电平计数是否大于3,当高电平计数大于3时,解码为“1,0”,否则解码为“0”,解码完毕后极值标志位置为1,进入下一个有效极值点的获取;

若低电平宽度不大于上阈值,则判断极值标志位是否为1,若是,则解码为1,并将极值标志位置为“1”,否则解码为0,并将极值标志位置为0,解码完毕后进入下一个有效极值点的获取。

5.根据权利要求1所述的一种RFID读写系统的标签返回信号的解码和冲突处理方法,其特征在于冲突处理方法包括以下内容:所述读写系统在发送盘点命令Q,其中Q值决定本轮检测的最大时隙数t=2^Q-1,每个标签在0 t之间随机选取一个值作为自己的时隙数,时~隙数为0的标签本轮应答,否则不应答,同时应答的标签视为冲突;时隙数不为0的标签每次在收到NEXTSLOT即不改变Q值的命令后,将自己的时隙数减1,当减为0时进行应答,同时应答的标签视为冲突,也就是说,在不改变Q值及最大时隙数和标签处于相同的接收条件下,冲突的标签会始终冲突,因此需要在冲突处理机制中加入改变Q值的命令,使标签重新选取自己的时隙随机数,直到没有冲突为止;对冲突和空检的步长设置不同——出现3次冲突则Q值+1,出现4次空检Q值-1,即Q值的增减步长分别为0.33和0.25;每一条盘点命令之后,对采样-AD转换-缓存的数据进行运算和解码,解码完成后无论对错输出结果,结合CRC校验得到解码状态——正确、冲突或空检,正确的话,结合解码得到的CRC16调制发送ACK,对ACK命令理论上标签是一定会应答且没有冲突的,此时再次对缓存获取的采样数据进行运算解码,正确的话即可得到标签的UII;每一次盘点作为一个相对独立的任务,分别包括盘点命令、CRC16解码、解码状态确定、发送ACK命令和UII解码,同时解码状态又通过冲突计数和空检计数联系在一起,按照冲突处理机制执行;正确解码得到的UII则直接存储到对应的全局变量,在执行完冲突处理流程之后,为了防止还有没有应答的标签,增加了几轮针对少量标签的空检,此时如果有标签应答的话,会继续进行正常的标签盘点交互。

说明书 :

RFID读写系统及其标签返回信号的解码和冲突处理方法

技术领域

[0001] 本发明涉及射频识别技术领域,具体地说是一种基于ISO18000-3mod3协议,通过硬件电路设计和嵌入式编程,实现具体MOD3协议的RFID感应识别和信息处理功能的RFID读写系统及其标签返回信号的解码和冲突处理方法。

背景技术

[0002] 当前的RFID领域高频频段(HF, High Frequency,载波频率13.56MHz)执行的空中接口协议为ISO18000-3协议,其具体分为ISO18000-3M1(mod1), ISO18000-3M2(mod2)和ISO18000-3M3(mod3)等子协议,各个子协议虽然都使用中心频率为13.56MHz的载波,但是都使用独立的信息编码、信号调制和冲突处理机制,也各自具备自己的优缺点。
[0003] 其中mod1为当前广泛应用的ISO15693协议,已被国内外很多厂家实现和应用。mod1由于技术已经成熟,使得其应用成本较低,而且读取性能稳定,目前在人员通道、智能书架等领域已经占有一席之地。但是在技术层面,mod1协议除了从硬件上提高抗噪性能和信噪比之外,很难再有突破;而且由于其采用的编码方式冗余性较大,导致mod1协议的检卡速度被限制在50枚/秒,这成为mod1在大批量盘点应用中的时间瓶颈,很大程度上影响用户体验。
[0004] 基于mod2协议的技术也已经成熟,并且在读取速度方面都要优于另外两种子协议。但是目前mod2的专利技术掌握在国外厂家(Magellan)手中,我们只能通过购买专利使用权的方式进行开发,使得开发和应用成本非常高昂。
[0005] mod3协议本身已经相对完备,读取速度mod2相当(PJM模式),并且已有NXP等RFID巨头进行推动。但是目前只有国外少数几个厂家(FEIG,TAGSYS,OEM)宣称已经开发出符合ISO18000-3M3协议的读写器,但是基本上仍处于样机或概念阶段,并没有开始批量供货,而国内目前还没有厂商推出mod3读写器或样机;应用方面目前除了美国拉斯维加斯的赌场的筹码盘点,也极少有mod3读写器的应用案例。
[0006] Mod3协议支持多种标签编码方式,不同编码方式有各自的传输速度和抗噪性能,直接体现在标签读取速度和读取距离上。但是从总体上说mod3读写器的应用场景为近场的大批量重叠标签的快速读取。

发明内容

[0007] 本发明针对现有技术中存在的缺点和不足,提出了一种速度快、效率高,基于ISO18000-3mod3协议,通过硬件电路设计和嵌入式编程,实现具体MOD3协议的RFID感应识别和信息处理功能的RFID读写系统及其标签返回信号的解码和冲突处理方法。
[0008] 本发明通过以下措施达到:
[0009] 一种RFID读写系统,其特征在于设有
[0010] ARM微处理器,用于完成接机接口控制、参数的设置保存、与上位机的通信以及射频命令的处理转发;
[0011] DSP微处理器,用于完成射频识别功能并将数据上报给ARM微处理器;
[0012] 射频发射电路,与DSP微处理器相连接;
[0013] 射频接收电路,与DSP微处理器相连接;
[0014] 射频切换电路,与DSP微处理器相连接;
[0015] 所述射频发射电路包括依次串联的载波生成及调制电路、发射运算放大电路、一级匹配电路、移相电路、二级匹配电路、射频天线,其中载波生成及调制电路与DSP微处理器相连接;
[0016] 所述射频接收电路包括两路射频信号接收回路,分别与射频发射电路中的一级匹配电路、二级匹配电路相连接,所述射频信号接收回路设有依次串联的接收运放电路、检波电路、三级滤波电路、限幅电路,其中接收运放电路的控制端与DSP微处理器相连接,检波电路的输入端与射频发射电路中的匹配电路相连接,限幅电路的输出端经A/D转换电路与DSP微处理器相连接。
[0017] 本发明还设有分别与ARM微处理器相连接的FLASH模块、人机界面模块、状态检测单元、DSP指令处理模块,其中DSP指令处理单元经DSP通信单元获得DSP微处理器上传的数据。
[0018] 本发明所述ARM微处理器可以与上位机相连接,并通过网路通信模块或串口通信模块完成外设配置。
[0019] 本发明还设有与DSP微处理器相连接的FLASH单元、人机界面模块、ARM指令处理模块、ARM通信模块,其中ARM通信模块经ARM指令处理模块与DSP微处理器相连接。
[0020] 本发明还提出了一种上述RFID读写系统的标签返回信号的解码和冲突处理方法,其特征在于包括以下步骤:
[0021] 步骤1:启动AD转换器、uPP接口及其DMA功能,获取标签返回信号,并存储至DMA缓存;
[0022] 步骤2:判断DMA缓存是否存在溢出,如果存在,重复步骤1,否则进入步骤3;
[0023] 步骤3:判断缓存中是否有足够的数据,若存在足够数据,进入步骤4,否则等待直至获得足够的数据;
[0024] 步骤4:调用有效信号捕获函数对缓存中的数据进行处理,如果获取到有效信号,则调用解码函数进入步骤5,否则进入步骤2,在DMA缓存溢出或超时前形成获取有效信号的循环;
[0025] 步骤5:判断缓存中是否有足够的数据,若无则等待直至数据量满足要求,若有足够数据,则通过设置无效数据宽度,滤除噪声引起的尖刺,获取有效极大值;
[0026] 步骤6:在数据传输、存储的同时(由uPP接口和DMA完成)计算所有相邻极大值的宽度;
[0027] 步骤7:判断步骤6所获得的宽度是否小于下阈值,若小于下阈值则当作高电平,计数变量加1,否则当作低电平;
[0028] 步骤8:当步骤7中结果为低电平时,判断编码违例标志位是否为1,若为1则进入编码违例判决流程,否则进入非违例解码流程后回到步骤5。
[0029] 本发明当步骤7中结果为高电平时,判断计数是否大于5,若大于5,则编码违例标志置1并获取该位置,然后回到步骤5;若计数小于等于5,则直接回到步骤5。
[0030] 本发明步骤8所述编码违例判决流程包括以下步骤:
[0031] 判断帧头标志位是否为0,若为0,进行帧头判断,否则进行帧尾判断;其中帧头判断是指判断此处是否为帧头,若是,则帧头标志位置1,进入下一个有效极值点的获取,否则认定为帧头出错,结束解码,返回错误码;帧尾判断是指判断此处是否为帧尾,若是,则帧尾标志位置1,结束解码,返回解码结果,否则认定为帧尾出错,结束解码,返回错误码。
[0032] 本发明步骤8所述非违例解码流程包括以下步骤:
[0033] 非违例解码流程开始后,极性标志位在帧头确认后复位为0,之后随解码更新,判断低电平宽度是否大于上阈值,若是,则判断高电平计数是否大于3,当高电平计数大于3时,该段解码为“1,0”,否则该段解码为“0”,解码完毕后极值标志位置为1,进入下一个有效极值点的获取;若低电平宽度不大于上阈值,则判断极值标志位是否为1,若是,则该段解码为1,并将极值标志位置为“1”,否则该段解码为0,并将极值标志位置为0,解码完毕后进入下一个有效极值点的获取。
[0034] 本发明还包括冲突处理方法,所述读写系统在发送盘点命令Query(Q),其中包含的Q值决定本轮检测的最大时隙数t=2^Q-1,每个标签在0 t之间随机选取一个值作为自己~的时隙数,时隙数为0的标签本轮应答,否则不应答,同时应答的标签视为冲突;时隙数不为
0的标签每次在收到NEXTSLOT(不改变Q值)命令后,将自己的时隙数减1,当减为0时进行应答,同时应答的标签视为冲突,也就是说,在不改变Q值及最大时隙数和标签处于相同的接收条件下,冲突的标签会始终冲突,因此需要在冲突处理机制中加入改变Q值的命令,使标签重新选取自己的时隙随机数,直到没有冲突为止;
[0035] 冲突处理的本质是在冲突出现后,能够有效识别,并采取相应的措施,在下一轮盘点中降低冲突出现的概率,直到结果中不再出现冲突为止。在这类选择随机数进行应答的机制中,增大随机数的选取范围是降低冲突概率的最直接有效的方法,而以步长对Q值进行增减的方式也可以达到很高的效率。
[0036] 本发明所述冲突处理方法对该方式做了改动:对冲突和空检的步长设置不同——出现3次冲突则Q值+1,出现4次空检Q值-1,即Q值的增减步长分别为0.33和0.25;每一条盘点命令之后,对采样-AD转换-缓存的数据进行运算和解码,解码完成后(无论对错)输出结果,结合CRC校验得到解码状态——正确、冲突或空检,正确的话,结合解码得到的CRC16调制发送ACK,对ACK命令理论上标签是一定会应答且没有冲突的,此时再次对缓存获取的采样数据进行运算解码,正确的话即可得到标签的UII;
[0037] 每一次盘点作为一个相对独立的任务(函数),分别包括盘点命令、CRC16解码、解码状态确定、发送ACK命令和UII解码(可能截止到最后两条之前),同时解码状态又通过冲突计数和空检计数联系在一起,按照冲突处理机制执行;正确解码得到的UII则直接存储到对应的全局变量。在执行完冲突处理流程之后,为了防止还有没有应答的标签,增加了几轮针对少量标签的空检,此时如果有标签应答的话,会继续进行正常的标签盘点交互。
[0038] 本发明与现有技术相比,主要的优点是速度快,效率高:本申请相比mod1协议,命令发射信号和标签返回信号的编码方式冗余小,码率高。在标签返回信号方面,mod1协议采用副载波调制的曼彻斯特编码方式,根据使用的副载波个数不同,同样分为高速和低速模式,数据传输速率分别在6.7Kbps和26.6Kbps左右;而本申请的标签返回信号有多种编码方式,其中低速的曼彻斯特8副载波和米勒编码方式的数据速率约为106Kbps,中速的曼彻斯特4编码方式的数据速率约为212Kbps,而高速的FM0编码方式的数据传输速率高达848Kbps,目前采用的中速处理方式,返回信号数据速率为mod1协议高速模式的8倍;在冲突处理方面,mod1和mod2的处理方式不同,mod1采用增减掩码长度的方式,处理效率受多标签UID重合度影响,冲突处理时间跨度较大;而mod3采用增减时隙随机数的方式,冲突受标签自取随机数影响,在标签数量很大时前期需要多个时隙数调整自适应过程,而冲突处理后期会迅速收敛。根据实际测试对比,mod1协议的标签读取速度在50枚/秒以下,而本申请的读取速度能达到200枚/秒以上(只计算开磁场后到检测完成时的时间)。
[0039] 附图说明:
[0040] 附图1是本发明射频发射以及射频接收机构的结构框图。
[0041] 附图2是本发明的系统框图。
[0042] 附图3是本发明中标签返回信号的解码和冲突处理方法流程图。
[0043] 附图4是本发明中编码违例判决流程图。
[0044] 附图5是本发明中非违例解码流程图。
[0045] 附图6是本发明中冲突处理流程图。
[0046] 附图说明:ARM微处理器1、DSP微处理器2、载波生成及调制电路3、发射运算放大电路4、一级匹配电路5、移相电路6、二级匹配电路7、射频天线8、接收运放电路9、检波电路10、-三级滤波电路11、限幅电路12、AD转换电路13、上位机指令处理模块14、DSP指令处理模块15、DSP通信模块16、FLASH模块17、ARM指令处理模块18、人机界面模块19、状态检测模块
20、ARM通信模块21、网络通信模块22、串口通信模块23、射频发射电路24、射频接收电路25、射频切换电路26。
[0047] 具体实施方式:
[0048] 下面结合附图对本发明作进一步的说明。
[0049] 如附图1所示,本发明提出了的基于mod3协议的RFID读写系统,工作时,由ARM微处理器1完成人机接口控制、参数的设置保存、与上位机的通信以及射频命令的处理转发;DSP微处理器2完成射频识别功能,以及将数据上报给ARM微处理器1,包括射频命令的PIE编码、AD转换后数据的接收处理、返回信号的解码、冲突处理和UID上报等;载波生成及调制电路3负责生成13.56MHz标准载波,以及将DSP编码后的射频命令进行调制放大后输送到发射端;发射端包括运算放大电路4、一级匹配电路5、移相电路6、二级运放电路7和射频天线8构成,完成调制信号的放大、发射电路的匹配等功能;
[0050] 射频信号接收端包括射频天线8、接收运放电路9、检波电路10和三级滤波电路11等,完成对标签返回信号的接收放大、包络检波和基带滤波;限幅电路12和AD转换电路13完成对硬件处理后的标签返回信号的限幅、量化、采样和模数转换,AD转换完成后的数据通过并行接口进入DSP执行处理。
[0051] 如附图2所示为本发明的系统框架图,本发明所述ARM微处理器1和DSP微处理器2都连接各自的FLASH模块17和人机界面模块19;ARM微处理器1通过上位机指令处理模块14完成与上位机的网络通信或串行通信的数据解析和协议处理,其中网络通信模块22和串口通信模块23完成两种通信模式的外设配置功能;
[0052] ARM微处理器1通过状态检测模块获取系统参数20;ARM微处理器1通过DSP指令处理模块15完成与DSP通信的数据解析和协议处理,通过DSP通信模块16完成与DSP通信接口的外设配置;对应的所述DSP微处理器2通过ARM指令处理模块18完成与ARM通信的数据解析和协议处理,通过ARM通信模块21完成对应接口的外设配置;
[0053] DSP微处理器2通过射频发射模块24完成对射频命令的编码、输出,通过射频接收模块25获取AD端采样数据后,进行解码、冲突处理、UID过滤上报等功能,通过26-射频切换模块完成对多天线的时分复用。
[0054] 附图3-5为标签返回信号的曼彻斯特解码流程。曼彻斯特解码采用捕获极值进行宽度判断的方式,通过阈值还原编码之前的信号高低电平。由于是全速采样+实时处理,因此对于DSP微处理器2的要求很高,主要体现在并行接口获取数据的速度和均衡性,以及DSP处理数据的速度。所采用的DSP微处理器使用uPP接口时钟速度可达30MHz,对于424KHz曼彻斯特编码信号5MSPS左右的采样率有较大的余量;而360MHz的主频在当前的也位于前列。
[0055] 附图6是本发明中冲突处理流程示意图。所述读写系统在发送盘点命令Query(Q),其中包含的Q值决定本轮检测的最大时隙数t=2^Q-1,每个标签在0 t之间随机选取一个值~作为自己的时隙数,时隙数为0的标签本轮应答,否则不应答,同时应答的标签视为冲突;时隙数不为0的标签每次在收到NEXTSLOT(不改变Q值)命令后,将自己的时隙数减1,当减为0时进行应答,同时应答的标签视为冲突。也就是说,在不改变Q值及最大时隙数和标签处于相同的接收条件下,冲突的标签会始终冲突,因此需要在冲突处理机制中加入改变Q值的命令,使标签重新选取自己的时隙随机数,直到没有冲突为止。
[0056] 冲突处理的本质是在冲突出现后,能够有效识别,并采取相应的措施,在下一轮盘点中降低冲突出现的概率,直到结果中不再出现冲突为止。在这类选择随机数进行应答的机制中,增大随机数的选取范围是降低冲突概率的最直接有效的方法,而以步长对Q值进行增减的方式也可以达到很高的效率。
[0057] 本发明所述冲突处理流程在编程中对该方式做了少许的改动:对冲突和空检的步长设置不同——出现3次冲突则Q值+1,出现4次空检Q值-1,即Q值的增减步长分别为0.33和0.25。每一条盘点命令之后,对采样-AD转换-缓存的数据进行运算和解码,解码完成后(无论对错)输出结果,结合CRC校验得到解码状态——正确、冲突或空检。正确的话,结合解码得到的CRC16调制发送ACK,对ACK命令理论上标签是一定会应答且没有冲突的,此时再次对缓存获取的采样数据进行运算解码,正确的话即可得到标签的UII。
[0058] 每一次盘点作为一个相对独立的任务(函数),分别包括盘点命令、CRC16解码、解码状态确定、发送ACK命令和UII解码(可能截止到最后两条之前)。同时解码状态又通过冲突计数和空检计数联系在一起,按照冲突处理机制执行;正确解码得到的UII则直接存储到对应的全局变量。在执行完冲突处理流程之后,为了防止还有没有应答的标签,增加了几轮针对少量标签的空检,此时如果有标签应答的话,会继续进行正常的标签盘点交互。
[0059] 本发明与现有技术相比,主要的优点是速度快,效率高:本申请相比mod1协议,命令发射信号和标签返回信号的编码方式冗余小,码率高。在标签返回信号方面,mod1协议采用副载波调制的曼彻斯特编码方式,根据使用的副载波个数不同,同样分为高速和低速模式,数据传输速率分别在6.7Kbps和26.6Kbps左右;而本申请的标签返回信号有多种编码方式,其中低速的曼彻斯特8副载波和米勒编码方式的数据速率约为106Kbps,中速的曼彻斯特4编码方式的数据速率约为212Kbps,而高速的FM0编码方式的数据传输速率高达848Kbps,目前采用的中速处理方式,返回信号数据速率为mod1协议高速模式的8倍;在冲突处理方面,mod1和mod2的处理方式不同,mod1采用增减掩码长度的方式,处理效率受多标签UID重合度影响,冲突处理时间跨度较大;而mod3采用增减时隙随机数的方式,冲突受标签自取随机数影响,在标签数量很大时前期需要多个时隙数调整自适应过程,而冲突处理后期会迅速收敛。根据实际测试对比,mod1协议的标签读取速度在50枚/秒以下,而本申请的读取速度能达到200枚/秒以上(只计算开磁场后到检测完成时的时间)。