基于NFC手机的RFID中间件设计
及时的弊端。
2 系统实现及运行效果
系统采用 Java 语言基于 Eclipse 平台编写,数据库为 SQLite 嵌入式数据库,测试设备为魅族 MX3 智能手机,其 RAM 容量为 2 GB,CPU 频率为 1638MHz,ROM 为 32 GB,测试用卡片遵循 ISO15693 标准,采用NFC模块读取卡片内容,部分运行界面如图4 所示。
图4 系统运行部分界面
当程序运行时,将手机连接电脑,在 Eclipse 中启动 Dalvik 调试监控服务器 (Dalvik Debug MonitorService,DDMS),并通过 DDMS 自带的 Heap 来查看系统消耗内存,显示该程序所占内存为 22.628 M,CPU 占用率为6%,由此可见,该系统可在移动设备有限的资源中完美运行。 并且经测试,包含 1000 W条RFID数据的 SQLite 数据库大小为188 M,从所占存储空间来看,该RFID 中间件可部署于大部分主流移动设备中,并且可有效处理并存储更多的数据。
为了模拟处理大量RFID 数据下系统工作状况,编写程序根据RFID数据规则自动生成测试数据,不同数据量的系统性能测试结果如表3 所示。
表3 中间件部分性能测试
表3 中T 表示将原始数据经过清洗并且存入数据库所需时间,R和P分别表示数据清洗的召回率和正确率,R=系统正确识别的重复记录数/数据集中实际包含的重复记录数,P=系统正确识别的重复记录数/系统总共检索到的重复记录数,Size表示保存相应数据量数据库的大小。
可以看出,系统能够满足基本的数据处理要求,但数据清洗的召回率、正确率及所耗时间还有待提高,分析其原因主要是滑动窗口的大小以及排序关键字的选择。 当窗口太小时,容易漏配,即去除冗余效果不佳,导致召回率不理想;当窗口太大时,会产生许多没必要的比较,时间效果不理想。所以,采用自适应随机窗口在二者间找到一个平衡点。 本系统选取的关键字是时间戳,而根据实际应用,新到达的RFID数据更能代表当前状况,所以每次比较都保留最新时间戳数据,这样,使得部分数据之间的时间阈值可能小于预设值,即有的数据被误认为是重复数据,导致了准确率不是很理想。
3 结束语
本文提出了基于NFC手机的RFID中间件,由于NFC手机集读卡器与中间件功能于一体,且有较好的存储能力,即使在网络出现故障时中间件仍然可以运行,同时也使得系统部署更为灵活;数据交互模块采用Quartz框架与Socket编程相结合,自动化程度高;通过JSON命令或者良好的界面对参数进行设置,使得系统具有良好的可配置性;在系统发生异常时还可实时发出报警短信,以便及时处理;充分利用移动互联网的优势,将RFID 中间件与移动平台完美结合,解决了传统中间件的诸多不便之处。
线下交流活动:【第三届 NFC/RFID 技术应用论坛】即将拉开帷幕
报名点击^
NFC,RFID,近场通讯 相关文章:
- 基于Zigbee技术家用无线网络的构架(12-14)
- 无线通信领域中的模拟技术发展趋势(蜂窝基站)(09-22)
- 新一代移动通信系统及无线传输关键技术(06-19)
- 蜂窝移动通信基站电磁辐射对人体影响的探讨(04-10)
- 基站升级换代中平衡性能与成本(10-06)
- 在3G与Wi-Fi之间切换 H3C 运营商WLAN解决方案(01-15)