广州白云空港设备技术发展有限公司 广东省广州市 510000
摘要:针对实际的生产工作需求,本研究设计开发了一种基于nRF52832低功耗蓝牙芯片的光学和RFID智能指环,实现了条码扫描和RFID扫描,同时设计了相应的手机小程序、电脑软件,能跟指环进行数据传输、解析和反馈。试验证明,该指环式扫描器的光学、RFID扫描准确率都达到了100%,具有佩戴方便、功耗低等优点,能够适用于机场行李分拣、商场超市仓库盘点等情景,有很高的实用价值。
关键词:nRF52832;条码/二维码;RFID;可穿戴设备
引言
近几年,RFID市场呈现出爆发式的增长。与此同时,RFID技术在全国民用航空领域的应用也正在进入快速发展期,在国内大中型的机场建设中已经广泛推广RFID技术的应用[1]。未来将有越来越多的行李将携带RFID标签,RFID标签能安全携带的信息比行李条码更多,更利于行李全流程信息化建设。因此,单单对行李条码的光学扫描将不能满足未来的使用需求。全民航行李RFID全流程跟踪系统项目的建设也收到民航局的高度重视,将其列为践行“真情服务”的重大标志性工程。
目前,市面上只存在单一光学扫描功能的指环扫描器、单一RFID扫描功能的读写站。前者灵巧,但功能不够完善;后者能读取RFID标签,但设施笨重、位置固定。针对这一情况,本文提出并设计理论一种光学和RFID扫描功能兼备的轻便的设备,可通过上位机进行实时的数据交互。
1 系统总体设计
系统结构的示意图如图1所示。通过图像识别可识别条形码和二维码,通过射频识别可以读取RFID标签EPC区内存储的信息。指环式扫描器通过蓝牙与手机或者电脑建立通信,传输扫描到的数据上位机,也可从上位机发送相应的操作指令给指环式扫描器,从而适应不同的工作环境。
图1 系统结构示意图
2 系统硬件设计
系统硬件主要包括:低功耗的蓝牙微控制芯片nRF52832的主控电路、条形码和二维码识别电路、射频识别电路、振动控制电路、灯光电路、按钮开关电路以及锂电池充放电电路。
图2 系统硬件架构图
条形码和二维码识别电路主要由带摄像头的图像识别模块组成,nRF52832通过串口读取图像识别的结果;锂电池的充放电管理电路主要负责为整个硬件系统提供稳定的电源以及电池的充电管理;灯光电路与振动电路用于给提供灯光和震动的状态反馈;按钮开关主要负责扫描状态的改变以及休眠状态的唤醒。
2.1 主控nRF52832设计
蓝牙作为一种短距离的无线通信技术,可以迅速在两个设备间建立联系,并具备低成本、抗干扰强、通信安全等优点,也因此越来越多的蓝牙设备进入到我们的生活中。
nRF52832是Nordic公司设计推出的一款支持BLE、ANT/ANT+和2.4GHz多种协议的处理器[2]。相较于上一代的nRF51822,它有着更加强大的Cortex-M4F内核,主频提高了4倍可达64MHz,加上更低的功耗,更大的RAM和Flash,更好的RF性能,这也使得nRF52832 SOC是款功能强大、高度灵活的超低功耗多协议SOC。nRF52832页提供了丰富的片内资源供我们开发使用,包括8路ADC、2路I²C总线、3路SPI总线、32路GPIO口等。
图3 nRF52832系统原理图
nRF52832的系统原理图如图3所示,我们使用了32.768kHz和32MHz的外部时钟晶振,使用P0.06和P0.07通过UART与摄像头模组进行通信;使用P0.26、P0.28、P0.29和P0.30通过SPI与RFID的射频识别电路进行通信;P0.17、P0.18、P0.19管脚控制灯光电路;P0.12控制振动电路;P0.03和P0.04为识别按键的IO;P0.30管脚为2.4GHz天线端,外接天线。
2.2 射频识别电路设计
Si4463芯片是由Silicon Labs公司推出的一款低功耗、高性能的ISM无线收发芯片,1.8-3.6V的宽工作电压,频率覆盖从142MHz到1050MHz,69dB的相邻信道选择性和12.5kHz的信道间隔确保了在苛刻的RF条件下稳定的接收操作,这对于窄带操作尤为重要[3]。该收发器具有出色的TX效率,可提供高达20dBm的出色输出功率[4]。因此也广泛应用于工业、科研和医疗以及短距离无线通信设备。
图4 射频识别电路结构
Si4463芯片通过SPI接口与主控制芯片通信。我们可以通过Silicon Labs提供的无线开发套件(WDS)来设置Si4463的相应参数。设置参数后,该软件可以帮助用户生成参数配置文件,用户就可以对Si4463芯片进行后续相应的开发了。
3 系统软件设计
3.1 nRF52832软件设计
nRF52832的工作流程如图5所示。首先需对nRF52832的各种外设(GPIO、串口、ADC)和协议栈进行相应的初始化操作。初始化操作完成之后,开启一个2分钟的休眠定时,2分钟内无任何操作自动进入nRF52832的低功耗模式,并关闭各外设供电,直到检测到按键被再一次的触发;当触控按键被触发后,将开启摄像头或者RFID进行标签扫描的操作,并通过串口或总线对反馈的数据进行接收并解释,如果此时设备已建立蓝牙连接,将通过蓝牙将数据进行传输,否则将会把数据存入设备的缓存区,等待蓝牙连接后再上传。
图5 nRF52832工作流程
另外我们还增加了独有的白名单检测功能,工作流程如图6所示,通过录入白名单数据,让扫描器对扫描结果进行甄别,判断是否为存储的白名单缓存数据,通过指环的长震和短震来进行识别反馈。
图6 白名单工作流程
3.2 微信小程序软件设计
微信小程序是一种不用安装、即开即用、开发成本低的程序,可以在安卓系统和IOS系统的移动端设备进行使用,具有很高的兼容性。
小程序通过微信封装的低功耗蓝牙通信接口与蓝牙设备进行一对一通信。连接方式是通过搜寻移动设备周边蓝牙设备,连接以RFID_RING命名的设备。通过商定好的的数据通信格式,在蓝牙通信建立的前提下,扫描器对光学条码或RFID标签进行读取时,小程序将获得特定格式的数据。利用移动端前端的逻辑处理程序,对返回数据进行解析,获取到了符合预期的内容,同时小程序将形成扫描结果的统计报表。
图 7 小程序流程图
3.3 工控机程序软件设计
工控机端程序主要运行在windows系统下,以winform形式进行界面开发,使用指环配套的底座连接工控机,底座带有蓝牙接收器,从而搭建起指环与工控机的蓝牙通信通道。工控机程序能不断接收蓝牙指环发送的数据流,根据蓝牙指环协议自动解析数据。在Windows平台下,还能将数据进行更进一步的处理,包括储存、再传输、显示等,实现利用数据的目标。
图8 工控机程序流程图
4 试验结果分析
4.1 实物展示
图9 系统样机实物图
4.2 系统数据测试
为了验证该种扫描器的实用性,通过在线条形码生成网站生成自定义内容的条形码,编码格式选择了Code39、ITF25等方式,准备了大量内容可知的不同的光学条码。同时通过RFID读写站对RFID标签进行了自定义内容修改,准备了大量内容可知的不同的RFID标签。最后利用各上位机测试程序,配合扫描器,进行扫描、反馈、解析测试,其测试结果如表1所示,上位机程序部分界面如图10所示。
图10数据测试显示图
5 结束语
本文设计的指环式扫描器,是基于目前机场的生产活动中行李节点数据采集需求所提出的,充分利用了RFID和低功耗蓝牙的相关技术,提供了一种新型的实用型产品,能够支持24字节及以下的所有一维码和二维码;能够扫描ISO18000-6C电子标签,读取电子标签的EPC码;合理的电源管理逻辑设计大大增加了我们的连续工作时长。这样的一款产品,不仅仅可以运用在机场的行李节点数据采集中,也可以应用在快递物流、商场超市仓库货物盘点、工厂扫描等诸多领域。
参考文献:
[1]陈萍.RFID技术在民航业中的应用和发展[J].空运商务,2008(19):26-29.
[2]吴蓬勃,张金燕,张小苗.基于nRF52832的蓝牙鱼缸水情检测系统设计[J].单片机与嵌入式系统应用,2018,18(02):79-83.
[3]刘千新,明正峰.基于无线芯片Si4438的低功耗无线智能水表研究[J].电子世界,2017(05):65-66+69.
[4]陈永胜.船舶自动识别系统收发机[D].南京邮电大学,2018.