1 引言
射频识别(Radio Frequency Identification, RFID)中间件介于RFID 阅读器和上层应用之间,用来屏蔽不同型号的阅读器和各种协议标准的标签,为上层应用软件提供统一接口。另外,还负责整合和过滤数据,产生报表,减少应用层软件的处理负担,使海量标签数据的传输和应用成为可能。目前,国内外的RFID 中间件体积庞大,只适用于PC 机,不能移植到嵌入式阅读器中。本文提出一种可直接运行于各种嵌入式阅读器设备,基于EPCglobal ALE 标准的嵌入式 RFID 中间件,并详细研究其中的标签数据处理流程。
2 软件体系结构
嵌入式 RFID 中间件体系结构如图1 所示。采用Linux 2.4.18 作为操作系统,操作系统自带有网络驱动和串口驱动。DSP 驱动是为本阅读器DSP 模块开发的驱动模块,相当于一个连接到中间件服务器的阅读器。中间层是GoAhead Web 服务器和嵌入式数据库SQLite,上层是阅读器管理,阅读器协议服务和ALE 服务模块。
图 1 软件体系结构
GoAhead Web 服务器是一款面向嵌入式系统的Web 服务器,作为中间件的数据转发和模块承载平台。阅读器与客户端之间,阅读器与阅读器之间的数据通信都是由GoAhead Web服务器完成。ALE 服务模块,数据库管理模块,阅读器管理模块,阅读器协议服务模块等的开发也是建立在GoAhead 基础上。
数据库采用 SQLite 3.3.9。SQLite 是轻型,免费和开源的嵌入式数据库。提供绝大多数标准的SQL92 语句,工作速度快,满足中间件数据处理的实时要求。在嵌人式系统中,数据库管理、执行、维护的简单化比企业数据库提供的复杂应用更重要。因此选用SQLite数据库在大小和功能方面是一个理想的折中。
ALE 协议服务模块是过滤和统计数据的基层部件与高层应用程序之间的接口。ALE 协议服务模块采用EPCglobal ALE 标准,为高层软件提供了通用接口。