在没有信号输入时,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阅读器具有良好的稳定性和可靠性。