4. 软件设计
4.1 主程序
由于系统在PC机的监控下工作,两者之间为主从通信方式。主控模块上电完成正常初始化过程后,便进入等待状态,等PC机发来指令。当接收到PC机指令后,转去处理相应的程序。处理完毕后执行结果信息返回PC机。主程序框图如图6所示。
图6:接收模块
4.2 防冲突程序
在读写器天线所覆盖的范围之内有多个标签存在时,读写器发送命令后,会引起响应冲突,从而导致通信失败。当读写器检测到冲突后,可使用命令来处理存在的冲突。通过发送命令可以记录读写器天线覆盖范围内的标签的UID,然后利用UID的唯一性,读写器和各个标签分别建立独立的通道进行通信,从而消除冲突。读写器首先发送命令给标签,在命令的数据域和参数域中分别包含UID的掩码和掩码的长度,传送给标签的掩码要求是整字节,如果此掩码不是整字节的话将自动在高位补零。通过设置标志域的相应标志位,读写器可以设置接收标签响应的时隙为3或6,在各时隙中,读写器都可以接收标签返回的UID,读写器通过发送结束信号的UID和当前时隙序号的最低4bit加命令数据域中的掩码进行比较,如果不匹配则无应答,如果匹配将送回自己的UID.在某一时隙可能出现多个标签同时做出响应,这时读写器要记下冲突的标签掩码和时隙计数器的值,以做进一步冲突处理。流程图如图7。
图7:接收模块
5.结束语
本文设计的超高频射频识别读写器能够读写UCODE HSL 系列多种标签,读写速度最快(从单个标签上平均读取64bit,耗时不超过6ms每多取32bit耗时累加1ms;每单个标签上平均写入32bit,耗时不超过25ms每多写入32bit耗时累加25ms) ,读写距离(≥4m) ,有效地解决了多标签防冲撞问题,此超高频射频识别系统尤其适用于物流、供应链领域。