图2 射频收发电路
电子关锁主程序设计
一般情况下,电子关锁处于休眠监听状态,2401收到RF数据帧后,产生DR1中断唤醒MCU,MCU根据RF协议数据包格式进行数据解析和身份认证后,根据命令码进行处理,最后对应答数据进行打包发送。电子施封后的异常状态检测采用定时中断处理。电子关锁主程序流程如图3所示。
关键问题分析
低功耗设计
电子关锁采用电池供电,因此低功耗是设计重点,软件设计中合理设置工作方式可以大大降低功耗。电子关锁在大部分时间里是无需进行通信的,但是它必须保持无线监听状态,以保证随时应答主机的呼叫。2401处于接收模式时的消耗电流为18mA,这种消耗相对较大,不满足系统需求。设计中采用时间窗监听方式,电子关锁每秒钟仅开启2401无线监听1ms,在接收到唤醒指令后,才进入长时间监听模式。实际测试时间窗监听状态时的功耗仅为0.68mA,功耗显著降低。对于主机即读写器,每次连接关锁前需要增加一个唤醒过程,在1秒钟内持续发送唤醒指令,保证其时长覆盖关锁监听时间窗。
避免邻道干扰
在海关卡口一般存在多条车道,相邻几条车道可能存在同频干扰,在系统设计中结合两种方式避免此干扰:一种是道口读写器采用定向天线,这样读写器发射的射频信号定向于单一车道,可避免读写器射频信号对相邻车道的影响。但是电子关锁不可能采用定向天线,所以再附加一种跳频通信工作方式,各车道工作基频设置相同,但是,一旦读写器与电子关锁建立通信连接后,双方便跳到由主机即读写器指定的固定频率上工作,这样,不同车道由于跳频设置不同,可有效避免邻道干扰。对2401进行跳频设置十分方便,只需在配置模式下对频道状态字进行设定即可。
图3 电子关锁主程序流程图
分时应答
手持读写器的应用环境同道口读写器不同,它采用广向天线,有效通信范围内可能存在多把关锁。由于频率相同,广播呼叫时电子关锁同步应答会造成信号冲突。为避免冲突,在软件设计中采用分时应答,关锁在收到广播呼叫指令后,先随机延时一段时间再返回应答指令。需要注意的是随机延时不是任意的,而是分段的,以保证主机在时间间隙内处理不同的应答信号。
这里对分时应答设计进行分析,设读写器发送广播指令后的通信时间为Tc,将Tc分为n个时间间隙,每个间隙足够完成对某一把关锁的标识读取和存储。关锁收到广播呼叫后随机分配应答时间点至某个时间间隙内,并返回应答指令。设有x个关锁在通信范围内,则当n>>x时,返回信号的冲突概率会非常低。实际应用中,现场关锁数量一般不会超过10个,通常情况为3~4个,所以,n设置为100时就可保证较低的冲突概率。同时,由于应答时间非常短(大批量数据交互在连接确认以后发生),n设置的较大也不会明显降低响应时间。
结语
实际测试表明,该电子关锁系统可靠性高,抗干扰能力强,可扩展性好。本系统是主动式RFID技术在物流监控领域的一个新应用,它显著提高了海关转关业务的运行效率。