基于NFC手机的RFID中间件设计.docx
《基于NFC手机的RFID中间件设计.docx》由会员分享,可在线阅读,更多相关《基于NFC手机的RFID中间件设计.docx(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、基于NFC手机的RFID中间件设计射频识别(RFID)中间件位于RFID阅读器与上层服务器应用层之间,具有屏蔽底层设备、标签数据清洗、数据交互等功能。目前,国内外许多企业以及机构也都致力于RFID中间件的研究,如:IBM、Microsoft、清华同方等都有自己的RFID中间件产品。这些产品大多部署在服务器端,如果短时间内产生了海量RFID数据,大量原始数据都将集中在服务器端,对中间件的数据处理能力是很大的考验。同时,海量数据的传输会占用网络带宽,如果网络出现故障,有可能会造成数据的丢失。随着大数据时代的到来,传统RFID中间件的瓶颈逐渐暴露,直接影响系统的整体性能。因此,在面对海量RFID原始
2、数据的情况下,如何减小服务器端处理压力,降低系统对网络的依赖性成为RFID中间件急需解决的问题。本文就一种基于NFC手机的RFID中间件进行研究与实现,将RFID中间件技术与移动互联网相结合,弥补了传统RFID中间件的不足之处,并且符合当前发展趋势。1中间件设计方案1.1系统架构根据RFID中间件功能需求以及移动设备资源有限等特点,提出了如图1所示的系统架构。620)this.style.width=620;border=0alt=基于NFC手机的RFID中间件设计src=技术2021/kggqwnfcpya2021.jpg图1系统总体架构图1)设备管理模块主要包含4个部分,NFC读卡部分负责
3、调用手机自带NFC模块进行读取标签信息;外接阅读器管理部分兼容外接阅读器驱动,并通过蓝牙、WiFi、3G网络等与之进行数据交互;工作日志管理部分主要对手机及中间件的工作日志进行管理;手机状态查询部分能够实时地对手机电量、剩余存储空间、信号等状态进行查询。2)数据处理模块主要包含5个部分,协议校验部分负责对RFID标签数据根据标识位进行初步校验,去除残缺的或者非本系统数据;标签缓存部分采用BlockingQueue队列作为缓存将初步校验后的数据存储;冗余数据处理部分采用自适应的临近排序算法(SortedNeighborhoodMethod,SNM)去除冗余数据;数据校验部分采用CRC16算法对标
4、签数据中的校验源数据进行校验,以此验证标签数据是否被篡改过;数据分类部分根据约定的数据规则将数据进行分类。3)数据库模块采用SQLite嵌入式数据库存储处理好的数据。4)数据交互模块采用Quartz框架结合Socket编程实现中间件与服务器之间的数据交互。5)任务管理模块负责将服务器端发送来的命令文件进行缓存与管理。1.2系统设计重点1.2.1设备管理模块该模块主要为对硬件设备的管理与监控,集成NFC以及外接读卡器驱动,并且能够对系统工作日志以及手机状态进行查询。系统主要采用NFC模块对RFID卡片进行读写,集成多种NFC标准,可自动判别卡片类型,相关代码如下所示:mTechLists=new
5、StringnewStringMifareClassic.class.getName(),newStringMifareUltralight.class.getName(),newStringNdefFormatable.class.getName(),newStringNdef.class.getName(),newStringIsoDep.class.getName(),newStringNfcV.class.getName(),newStringNfcF.class.getName(),newStringNfcB.class.getName(),newStringNfcA.class.g
6、etName();为了使系统有良好的可扩展性,中间件兼容多种读卡器驱动,通过蓝牙、WiFi、3G网络等与外接读卡器进行数据传输。此外,提供良好的接口,可对中间件工作日志以及手机电量、信号强度、剩余存储空间等信息进行实时查询与管理。1.2.2数据处理模块1)数据缓存、校验及冗余数据处理。系统采用BlockingQueue队列作为缓存来存储短时间内接收的大量数据。将接收的卡片数据进行初步校验,去除残缺或者非本系统数据。表1为标签数据格式,其中UID为每个标签唯一标识,校验数据中前7位是用于生成校验码的原始数据,第8位为本系统标签标识,且对每个标签的前7位校验数据采用CRC16算法生成校验码,与标签
7、UID一起由服务器通过JSON文件写入到手机端数据库中。当读取到标签数据后,中间件首先根据校验源数据中第8位标识符来判断该卡片是否为本系统所属,然后采用相同的CRC16算法对前7位校验数据生成校验码,并根据标签UID与数据库中的校验码相比较,以此来判断标签数据是否被改写。8位校验源数据在校验完成后需去掉,只将有用数据存储。表1RFID标签数据格式620)this.style.width=620;border=0alt=基于NFC手机的RFID中间件设计src=技术2021/qb2gi1gazgl2021.jpg数据冗余是RFID系统不可避免的问题,如果数据不清洗,大量有用、无用的数据会占用网络
8、带宽,增加系统处理负担;如果将接收的数据逐一与数据库中的数据进行比对,虽然准确率高,但是面对大量的RFID数据时会降低系统效率,因此,针对移动端有限的资源以及对数据处理效率的综合考虑,本系统采用SNM算法来处理冗余数据。数据清洗流程如图2所示。620)this.style.width=620;border=0alt=基于NFC手机的RFID中间件设计src=技术2021/tn1oaumyvaa2021.jpg图2数据清洗流程图2)数据分类。将通过清洗的数据根据事先约定好的数据规则进行分类,比如事先规定卡片中第NiNj位为数据标识位,则将数据存储到SQLite数据库相应表格中。1.2.3数据交互
9、模块该模块负责移动端中间件与服务器之间的数据交互,在保证数据完整性、安全性的前提下,提高传输速度。采用Socket通信,以文件的方式传输命令与数据,模块中采用CRC校验确保文件安全,并且支持文件断点上传、下载。将相关文件在移动端进行存储与备份,即使网络出现故障,中间件也可以正常工作,且不会造成数据丢失。数据交互流程如图3所示。620)this.style.width=620;border=0alt=基于NFC手机的RFID中间件设计src=技术2021/mxtyobau3nw2021.jpg图3数据交互模块流程图中间件采用Quartz开源框架根据需求设置作业调度,在一定时间自动向服务器发送一次
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 NFC 手机 RFID 中间件 设计
限制150内