基于ARM 的RFID 中间件系统设计
2软件设计
Linux性能强大,开源免费,有极强的平台可伸缩性,符合POSIX标准,且有强大的网络功能。这些特点使其近年来在嵌入式领域发展迅速,广泛渗透到信息家电、网络设备和手持终端等市场,因此本系统以Linux操作系统为依托,在其上开发应用程序。中间件软件是一个多层次多模块的软件系统,共分为3个层次,如图3所示。
系统配置层:实现系统配置功能,调用下层提供的一些功能接口,不仅可以添加下层的基本处理单元,而且可以对处理单元的一些参数进行有效配置。它包括WebServer接口模块和远程控制信息台模块。
数据逻辑层:实现该软件系统的基本功能,包括读写器命令处理、标签过滤处理、对象域名服务(ONS)接口、企业级服务器接口交互(可能改为和PC中间件进行交互)。该层次完成系统的逻辑功能,包括设备管理模块、数据过滤模块、ONS查询模块(保留)、企业级别服务器接口模块。
基础设施层:提供系统运行所需要的基本功能,如数据库访问功能、内存管理功能,它们为其他模块提供统一稳定的接口,屏蔽一些差异性。该层次包括网络管理模块、内存管理模块(保留)、数据库访问模块。
2.1Linux的移植
在嵌入式开发中,把操作系统移植到开发板是进行嵌入式应用程序开发的前提和基础。ARMLinux是针对ARM体系结构的嵌入式Linux操作系统。在编译Linux内核之前,首先要针对具体的硬件对内核进行配置,包括系统类型的配置。本系统选择ARMsystemtype。在配置好通用内核选项、块设备和文件系统之后,即可编译修改后的内核文件,生成一个内核映像的自解压压缩文件。通过运行makecleandepzImage对该文件进行依赖编译,系统将在/arch/armnommu/boot目录下生成内核映像zImage,并将zImage下载到Flash中的64K地址处。运行时,将U-Boot复制到SDRAM中的OxOc300000地址处并启动zImage;zImage会自行解压缩,将其解压缩到SDRAM中的OxOc080000地址处并开始运行。内核启动后,系统会将romfs作为根文件系统。在linux-dist目录下运行makemenuconfig命令可配置Linux的文件系统。
2.2RFID标签数据处理
系统读取的RFID标签数据在中间件中主要经历数据管理、编码管理和过滤规则管理,之后存入本地数据库。其中数据管理包括数据校验、数据处理和数据存储;编码管理即设定编码规范,可配置支持不同数据编码规范;过滤规则管理能支持用户配置数据过滤规则。系统基本流程如图4所示。
用户的参数配置信息通过消息队列发送给中间件软件,软件分析发送过来的数据,对系统工作状态作出一定的调整。同时,系统通过网络处理模块接收从网口上读写器发送过来的数据,把这些数据分为标签数据和读写器管理数据两类。系统每个读写器实例都有自己的数据处理线程,它分析自己独特的数据格式形成统一的数据,并且调用该种读写器的处理方法,对解析后的数据结合该读写器特定的数据处理参数,对标签数据进行过滤、转发等工作。整个系统中有唯一一个管理命令处理线程,它轮询每个读写器的管理命令处理队列。如果有命令数据,那么调用该读写器特定的处理方法对这些数据进行处理。
结语
本文提供了一种支持多通信平台的嵌入式RFID中间件系统设计方案。支持无线接入的RFID中间件可以部署于无固定网络基础设施的场景,降低有线网络部署成本。RFID中间件还可以用无线通信方式向用户或者系统传输信息,提高了信息传递的实时性。
- 揭秘TI移动AP中ARM核的应用演变(04-02)
- 单芯片智能手机解决方案给力TD移动市场(04-19)
- 基于ARM平台的RFID中间件系统设计(05-16)
- 1800MHz:LTE全球漫游的最佳选择(08-13)
- Cortex-M0+的RFID读卡器模块设计(11-03)
- 基于ARM7软中断程序的设计(05-13)