1 阅读器的组成
图1为多通道多模式低频RFID阅读器的结构框图。阅读器包含6个读取通道,每个通道包含一个EM4095芯片,它们在同一个MCU的程序控制下工作。设计6个通道的目的是组成多种有效的工作模式,便于实际应用。阅读器每个通道的解码均由MCU的程序控制完成,这样可以大大地简化硬件设计、降低成本。阅读器通过CAN总线或RS485总线与上位机相连,进行数据通信,接受工作模式的设定指令和其他的控制指令,上传各通道读取的标签信息和阅读器本身的工作状态;同时也可构成集散型系统,便于大规模应用。
2 EM4095芯片的用法
EM4095是瑞士EM Microelectronic公司的一款用于RFID阅读器的专用芯片。图2为EM4095的应用原理图。DEMOD_OUT引脚为AM解调信号的输出端;MOD为调制控制端,低电平时没有调制,高电平时100%调制;RDY/CLK输出端具有多个功能指示作用,或作为发送已准备好指示,或作为接收同步时钟信号输出指示。当芯片内部锁相环工作建立,接收电路开始工作时,RDY/CLK端会输出连续的与DEMOD_OUT端数据信号同步的时钟信号;SHD为高电平时,EM4095进入睡眠省电模式,RDY/CLK也被置为低电平。
3 数据接收解码方法
由于EM4095只是提供了产生载波与AM调制解调功能,因此阅读器数据发送编码与数据接收解码须由MCU完成。通常125 kHz的RFID数据传输速率为2~3.2 kb/s。数据发送编码相对简单,只需要控制发送端口定时输出指定的数据位就可以了。数据的接收解码要复杂一些,下面以遵循ISO11784/11785标准的数据通信协议为例说明采用MCU进行数据接收解码的方法。3.1 标签信息数据帧的格式
图3为RFID标签在收到阅读器发送的电磁波信号后,返回的信息数据帧格式。根据ISO11785标准,数据帧(共128位)分为4个段,分别为帧头段、标识代码段、CRC校验码段以及准备将来使用的扩展预留段。帧头段代码为00 0000 0000 1,包含有10个“0”。为了防止出现与帧头相同的代码,所有后续码段每8位数据插入1个控制位“1”。标识代码段内的标志位1为附加数据块标志,标志位2为动物标志。CRC校验码段为CCITT 16位CRC校验码。扩展预留段现在还没有使用,统一设为00000000 1 00000000 1 00000000 1,其中的“1”即控制位。
3.2 标签信息数据的编码
采用MCU进行接收数据帧解码的关键步骤是帧头段的捕获。图4为RFID标签回馈给阅读器的信息比特流的编码方式。MCU检测到EM4095芯片RDY/CLK引脚端产生时钟信号时,进入帧头段的捕获状态。
在没有信号输入时,EM4095的输出端DEMOD_OUT为低电平,根据帧头的代码与编码方式,输入到MCU的帧头段信号波形如图5所示。考虑到RFID标签的频率125 kHz会有一定的误差,且数据传输率也不会精确地为2 kb/s或3.2kb/s,所以帧头的捕获包括两个方面的含义:一是帧头段的识别,即帧头代码的判断;二是波特率的确定,即信号跳变的时间间隔△T的测量。帧头捕获的目的是为帧信号后续代码段的检测解码提供依据。
3.3 标签信息数据的程序控制解码方法
考虑到数据的传输率不会大于3.2 kb/s,根据图4所示的数据调制编码方式可知,信息数据输出端口(如图2的DEMOD_OUT引脚)的信号变化频率不会大于6.4kHz。在硬件实现的异步串行通信解码接口中,通常选择采样频率为信号变化频率的16倍、32倍或更高。在这里由MCU程序控制进行串行数据解码的方法是:对接收的编码信号脉冲跳变的时间间隔进行测量。由图4的编码方式(曼彻斯特编码)可知,表示数码0的时间间隔是表示数码1的时间间隔的1/2,因此测得信号脉冲跳变的时间间隔,通过程序判断比较就可解码出数据0或1。要测量信号脉冲跳变的时间间隔就需要有参考时钟信号,在这里,当参考时钟信号频率为被测信号最高频率的32倍时,其值为204.8 kHz。大多数MCU的定时器/计数器都能对这一频率的信号进行计数测时。若采用LPC214x的定时器/计数器捕获功能就可以实现这一点。
将需要解码的信号(图2的DEMOD_OUT引脚输出)接入到MCU定时器的捕获端口,当没有接收信号时,接收端口保持为低电平。当RFID阅读器发送出阅读命令后,接收程序准备就绪,同时启动定时器计数。一段延时后接收信号到来,输入信号每次发生跳变时,捕获定时器的计数值,读取并保存。设第0次跳变的捕获保存值为T0,第n次跳变的捕获保存值为Tn,相邻上次捕获的保存值为Tn-1,从第1次跳变开始,计算差值△Tn:
△Tn=|Tn-Tn-1|(n≥1)
如果连续18次以上的差值△T相同(即△T1、~△T18相同),则帧头段捕获成功。考虑到接收信号放大检波带来的误差以及MCU定时器/计数器存在有计数误差,判定差值相同的依据为:
|△Tn-△Tn-1|≤2
式中,1≤n≤20,即相互之间的误差不大于2。
差值的平均值为:
△T=(△T1+△T2+…+△TN)/N(18≤N≤20)。
△T为后续数据段解码的检测周期;如果后续码段信号产生跳变的时间间隔等于平均值△T,则解码为数据0;如果跳变的时间间隔值为平均值△T的2倍,则解码为数据1。据此,就可以对接收的整个标签信息数据帧进行解码。
4 阅读器多通道、多模式的用法
阅读器包含6个通道,可以根据应用需要配置出几种典型的工作模式,如6通道轮循工作模式、6通道同步工作模式等。6通道轮循工作模式可用于静态(如仓储、图书馆等)物品的监管,其轮循的周期时长可根据要求设置;6通道同步工作模式,可用于每个通道所对应的位置对系统时间响应都有严格要求的场合;6通道独立工作模式主要针对一些需求少于6通道的场合,它可以灵活地关闭或开启其中任意几个通道;双3D工作模式,则是将6通道分成2组,每组3个通道监测同一个位置,3个通道的天线波束指向分别为前后、左右、上下3个相互垂直的方向(3D),确保进入监控位置的RFID标签不会因摆放方向的差异而出现漏读。另外,这种模式可同时对2个位置进行3D监测,当RFID标签分别通过这两个被监测的位置时,阅读器能根据RFID标签信号出现的时间先后判断出RFID标签移动的方向。
结语
设计的多通道、多模式低频RFID阅读器具有组态方式灵活、应用范围广的特点,且阅读器的多通道集中控制可以有效地降低通道之间的串扰。实际应用表明,多通道、多模式低频RFID阅读器具有良好的稳定性和可靠性。