|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
2 N' W* w8 L3 t! W2 B! L* _; k3 V; ~' ~2 y' {" `% j4 S# V
% `6 g: r; l, [" N& F
+ N8 s. Z2 t4 w( d9 D4 @8 R
摘要:RFID中间件在RFID读写器和应用程序之间起桥梁作用。应用程序端使用中间件所提供一组通用的应用程序接口(API),即能连到RFID读写器,采集RFID标签数据。即使存储RFID标签情报的数据库软件或后端应用程序增加或改由其他软件取代,或者读写 RFID读写器种类增加等情况发生时,应用端不需修改也能处理,省去多对多连接的维护复杂性问题。+ N" _9 L0 k2 N& Q* c/ `: [
8 _: u1 o4 `8 p( w0 z/ C( n
关键词:中间件 RFID中间件 中间件 0 K0 h6 `4 R% N, }7 u
# b" J1 g/ _/ s# r$ V$ j% G' L9 O
引 言 " K; ~1 I: }* }7 E4 c4 m9 I: s
# N- k0 q/ s2 I) d7 ORFID中间件在RFID读写器和应用程序之间起桥梁作用。应用程序端使用中间件所提供一组通用的应用程序接口(API),即能连到RFID读写器,采集RFID标签数据。即使存储RFID标签情报的数据库软件或后端应用程序增加或改由其他软件取代,或者读写 RFID读写器种类增加等情况发生时,应用端不需修改也能处理,省去多对多连接的维护复杂性问题。嵌入式RFID中间件在RFID的大规模应用中将扮演重要的角色。在具体应用部署过程中,会有大量的嵌入式设备充当边缘中间件的硬件平台。对于众多有意从事中高端RFID读写器开发的硬件厂商而言,借助嵌入式 RFID中间件迅速实现硬件集成基础之上的软件集成,是帮助硬件厂商快速升级产品系列,满足企业拓展市场和业务范围需要的有效举措。通透性是这种系统整个应用的关键,正确抓取数据、确保数据读取的可靠性,以及有效地将数据传送到后端系统都是必须考虑的问题。
# R8 h6 H0 _. L" _' C, ?7 e0 i. B, n( X* I( K
ARM处理器是当今应用最为广泛的处理器芯片之一,低功耗、低成本、高性能等特点使其在消费电子类产品中的竞争力日趋显著。本文提出了一种基于ARM的支持多通信平台的RFID中间件系统设计,可以更广泛、更丰富地推动RFID应用。 ( s- H/ w3 u" Z- |$ y# j5 A
. @: v- i8 J$ a1 硬件设计 ! n' z2 ]- n9 M2 y3 r
1 P2 }' \4 Z% q) BAutO_ID中心曾提出了名为Savant的RFID中间件概念的雏形,并制定出相应的1.0规范草案、技术手册和原型系统,明确了RFID中间件的最原始功能。在此基础上,本系统应有以下功能: $ d, H: e& S0 r* Z+ c2 V% @
①管理读写设备,支持多种读写器(包括不同厂商、不同类型)。
$ p& w- s* X) Q/ T②采集、过滤并缓存数据。
) B$ Q! ^+ i* I1 y5 F" a- D③提供应用开发接口。 0 i: C& [ X7 q
④与EPC体系标准服务交互:ONS、PML。
7 q0 b/ h5 u* X: t; ~# d5 i- k⑤支持多通信平台,如Internet、GSM、GRPS和CDMA。 ( t. c7 Z+ z6 U" M7 e
⑥外设的集成控制与协同,实现嵌入式RFID中间件的柔性设备控制。
^5 ^9 o$ f3 t6 j s
$ H, A4 S# ]5 z# J: r1 I3 [; g1.1 ARM核微处理器
- B/ i5 ^& o- E6 N3 \% @$ U, R4 e2 X) t7 C6 v
本系统在功能上分为有线通信模块、无线通信模块、人机交互模块和核心模块。本设计采用Samscmg公司203 MHz的ARM920T内核的处理器S3C2410。 5 N% Z; |9 F' h0 ^' Z$ b
S3C2410微处理器是一个多用途的通用芯片,内部集成了微处理器和常用外围组件,可用于各种领域,指令处理速度达到200MIPS。其特性包括:扩展总线最高频率为100MHz,32位数据,27位外部地址线,存储控制器(8个存储体)包含RAM(SDRAM)控制器、NAND控制器;复位时引导芯片选择(8、16位存储或NAND可供选择);4个带有PWM的16位定时器,多达55个中断源的中断控制器;3个UART,支持IrDA 1.O;4个DMA通道(支持外设DMA);支持STN与TFTL LCD控制器;2个 USB口;I2C-Bus接口;2个串行外围接口电路(SPI)和SD卡接口。此外,S3C2410上可以移植标准Linux操作系统,使得程序开发更加简单。
5 ]4 F/ v. P& f# S, u7 o
9 t3 G; _( g! ^$ \$ E! ~( I* j* G1.2 主板模块
5 G! Y2 O1 N, \& `, B4 S0 `% _; N4 n1 i5 b
系统内存部分由1片8M×16位数据宽度的Flash,共16 MB Flash(Intel E28F128J3C),读写周期150 ns;2片16M×16位数据宽度的SDRAM(HY57V561620BT)构成,共64 MB SDRAM。
- ]) ^; s' m4 T0 A" ^ Z
7 f9 @7 A4 ] C% @% S/ sS3C2410提供8路片选nGCSn[0~7],每个片选都指定了固定的地址,每个片选固定间隔为128 MB。系统内存由2片16M×16位数据宽度的SDRAM拼成32位模式,公用nGCS6。共64 MB RAM。起始地址为Ox30000000。nGCS0接的是一片8M×16位数据宽度的Intel E28F128 Flash,安装在BANK0,起始地址为0x0。其中内核烧写的起始地址为Ox40000,根文件系统RAM~DISK烧写的起始地址为 Oxl40000。 E3 A& q8 f1 b: {+ C2 o
7 U# d( t# Q* J! L6 x
1.3 人机交互模块 $ V* _" x- ]* n) N3 R: Z: e
. n! S' x- A# o系统利用GPIO口提供4个按键,以便能够响应按键中断,并获取键值。利用EINT4使用。 PS2键盘。S3C2410自带LCD控制器和触摸屏接口。本系统使用型号为LQ035Q7DB02的LCD液晶显示屏,采用MAX1664.作为电源驱动器。MAX1664是美国Maxim公司生产的有源矩阵液晶显示器开关电源,具有升压、双路输出锁相等特点,还提供一个LCD底板驱动器。
7 o* P) g& M& m& o2 X4 n y& k2 c. O* k% }5 }3 Z0 B2 x
1.4 有线通信模块 4 U: d2 d; C4 w/ n2 @* p
1 t5 R- O6 s5 X) W该模块包括RS-232串行接口和1个10/100M自适应以太网接口。本系统采用一种单电源、低功耗RS-232芯片MAX3232。13、8脚接收:RS-232电平,最大值可达±25 V,从而12、9脚输出TTL电平,低电平不大于O.4V,高电平不低于Vcc-O.6 V;11、10脚输入TTL电平,14、7脚输出RS-232电平,最小幅值大于±5.0 V,典型值为±5.4 V。当向外发送数据时,TXD1有一个下降沿,指示灯LED亮,经过MAX3232,TTL电平转化为RS-232电平。当接收外部数据时,RXD1有一个下降沿,指示灯LED亮,外部RS-232电平经过MAX3232转化为TTL电平进入微处理器。# f7 w; R4 h8 g( G8 ], f5 S9 \
1 Q" Q! Z) q% ]3 K; `3 [系统通过外接1片DM9000以太网MAC芯片扩展了一个10/100M自适应的以太网接口,占用资源nGCS1/EINTO。DM9000是 Davicom公司的一个全双工高速以太网控制处理器,内部集成了10/100M PHY、MAC、MMU和4 KB Dword SRAM。兼容3.3 V和5 V供电。它提供8位、16位和32位3种接口,4路多功能GPIO。此外DM9000还集成有接收缓冲区。S3C2410X支持2路USB HOST接口,支持高速、低速USB设备。 + |" _# m& w* L m. K
( @# f; B6 {9 j8 k: f1.5 无线通信模块 " k7 j* p, x( o
$ }- j8 _/ d6 _9 L4 S1 X无线技术是目前通信发展中最具有活力和前景的技术,支持无线接人的RFID中间件可以部署于无固定网络基础设施的场景,降低有线网络部署成本。RFID中间件还可以用无线通信方式向用户传输信息,提高信息传递的实时性。通过在系统中实现GPRS (General Packet Radio Service)模块,使系统具备移动通信功能。GPRS是通用分组无线业务的简称,以分组模式在PLMN和与外部网络互联的内部网上传输。理论上, GPRS可提供高达115 kbps的传输速率,但实际上用户用到的带宽大约为40 KB 5 E8 R6 J/ S$ R' B3 o, b
~100KB。GPRS分组交换接人时间小于1 s,广泛支持IP协议。GPRS的这些特点提供了一个完备的基于TCP/IP协议的通信解决方案。+ H: T9 Y2 D& C2 s; u! s1 S
; ]& O# i9 g; W3 ]; \3 w& D
GPRS通信模块使用Sony Ericsson公司的GR47来实现GPRS上网的功能。GR47是GSM/GPRS全套语音和数据功能的工业级的先进无线模块,所有的功能都集中在一块集成的芯片内,内嵌TCP/IP协议栈。
! R" U+ A1 k% Y0 F& N2 f% A- G% Q0 Z+ s, X( ~# }1 o x* U6 [
1.6 电源设计
. E) D% o, K/ T1 p: R z# ?2 ]! H* K0 C( `1 P* P8 J( G- E
系统的核心模块工作电源为单一的3.3 V/0.5 A直流。由于核心模块电源消耗功率较小,因此系统采用LT10856线性稳压芯片,使用电路板上下面铜箔作为散热面,用9 V/0.8 A直流电源供电。
! t A6 W( P0 @$ e2 g' l7 h
" f# L; i6 g" g# N$ {在其他的应用设计中根据不同的电源消耗需求,可以选择线性稳压源方案和开关稳压源方案。对于前一种选择,可以获得低噪声、廉价等益处,但同时也有效率低、发热较大等缺点;对于开关电源方案,正好与线性电源的优缺点相反。
0 @& @* C P; `9 r- Q% e6 b- m( [( L5 e4 I2 s% O
1.7 其他外设 : P5 o( \% J1 K! s4 s
系统提供了2个USB HOST接口,可支持U盘、USB摄像头等多种USB设备,只需开发不同的设备驱动就可有效扩展。
$ B4 \ J4 b+ g0 r2 r9 X2 e) G+ q使用UDA1380音频编解码器可有效支持MD、CD、MP3格式的音频文件的播放。
4 t* M; U) N) e
- B4 g* f. N) O, e2 P2 软件设计 ; @2 @& ]5 }' l
o. Q! T- Y9 l) w0 c0 G
Linux性能强大,开源免费,有极强的平台可伸缩性,符合POSIX标准,且有强大的网络功能。这些特点使其近年来在嵌入式领域发展迅速,广泛渗透到信息家电、网络设备和手持终端等市场,因此本系统以Linux操作系统为依托,在其上开发应用程序。中间件软件是一个多层次多模块的软件系统,共分为3个层次,如图3所示。
& z/ @8 \! A& M, j$ s5 x8 t x+ I& f) s# \# b& U( U* s
系统配置层:实现系统配置功能,调用下层提供的一些功能接口,不仅可以添加下层的基本处理单元,而且可以对处理单元的一些参数进行有效配置。它包括Web Server接口模块和远程控制信息台模块。
3 I% G6 F; |2 o/ C& J6 w) @ S0 S5 h' t+ Z1 X" T9 f( k/ z" W
数据逻辑层:实现该软件系统的基本功能,包括读写器命令处理、标签过滤处理、对象域名服务(ONS)接口、企业级服务器接口交互(可能改为和PC中间件进行交互)。该层次完成系统的逻辑功能,包括设备管理模块、数据过滤模块、ONS查询模块(保留)、企业级别服务器接口模块。
. b5 X: p, f. `5 r基础设施层:提供系统运行所需要的基本功能,如数据库访问功能、内存管理功能,它们为其他模块提供统一稳定的接口,屏蔽一些差异性。该层次包括网络管理模块、内存管理模块(保留)、数据库访问模块。 * ~, t( v: s- g: }% N H) l
8 }7 d2 r/ u4 }. w0 X2.1 Linux的移植 & K1 @# y' ~& p5 i. `% L1 e
. X! { k$ ^+ s; h
在嵌入式开发中,把操作系统移植到开发板是进行嵌入式应用程序开发的前提和基础。ARM Linux是针对ARM体系结构的嵌入式Linux操作系统。在编译Linux内核之前,首先要针对具体的硬件对内核进行配置,包括系统类型的配置。本系统选择ARM system type。在配置好通用内核选项、块设备和文件系统之后,即可编译修改后的内核文件,生成一个内核映像的自解压压缩文件。通过运行make clean dep zImage对该文件进行依赖编译,系统将在/arch/armnommu/boot目录下生成内核映像zImage,并将zImage下载到Flash 中的64K地址处。运行时,将U-Boot复制到SDRAM中的OxOc300000地址处并启动zImage;zImage会自行解压缩,将其解压缩到 SDRAM中的OxOc080000地址处并开始运行。内核启动后,系统会将romfs作为根文件系统。在linux-dist目录下运行make menuconfig命令可配置Linux的文件系统。
/ I# R/ M: [3 J$ r, B2 j
0 j" Z1 l3 \; D# f% t' M9 H2.2 RFID标签数据处理
$ ]" z0 i1 q2 _6 d: \
0 }, ]( t. B$ Z系统读取的RFID标签数据在中间件中主要经历数据管理、编码管理和过滤规则管理,之后存入本地数据库。其中数据管理包括数据校验、数据处理和数据存储;编码管理即设定编码规范,可配置支持不同数据编码规范;过滤规则管理能支持用户配置数据过滤规则。系统基本流程如图4所示。
) G( {- ?% F; I! L: r# t, n5 X7 L2 ]# p
用户的参数配置信息通过消息队列发送给中间件软件,软件分析发送过来的数据,对系统工作状态作出一定的调整。同时,系统通过网络处理模块接收从网口上读写器发送过来的数据,把这些数据分为标签数据和读写器管理数据两类。系统每个读写器实例都有自己的数据处理线程,它分析自己独特的数据格式形成统一的数据,并且调用该种读写器的处理方法,对解析后的数据结合该读写器特定的数据处理参数,对标签数据进行过滤、转发等工作。整个系统中有唯一一个管理命令处理线程,它轮询每个读写器的管理命令处理队列。如果有命令数据,那么调用该读写器特定的处理方法对这些数据进行处理。 5 C- X' Y2 j5 Q4 @( L
$ D d" v, ^. p$ \! S. N
结 语
1 U5 Y- c/ i$ _! n5 I2 F$ N+ X6 Q4 p- |4 X1 V
本文提供了一种支持多通信平台的嵌入式RFID中间件系统设计方案。支持无线接入的RFID中间件可以部署于无固定网络基础设施的场景,降低有线网络部署成本。RFID中间件还可以用无线通信方式向用户或者系统传输信息,提高了信息传递的实时性。 7 P& y, u: P: d( h
- G1 ~2 \) g& Z
|
|