标签芯片 | 读写器 | 天线 | 中间件 | 智能卡 | 生物识别 | 条码 | 制造设备 | 物流 | 零售 | 防伪 | 交通 | 停车 | 资产管理 | 动物 | 身份识别 | 军事 | 航空 | 门禁 | 一卡通
供求商机 资讯中心 产品中心 企业资料 人才招聘
 
 首页 >> 技术中心>> 正文
基于ARM9的嵌入式Zigbee网关设计与实现
来源:微计算机信息   2008-4-29 16:05:47
关键词: 无线传感器网络  Zigbee  嵌入式网关  STR912  LwIP  


提要本文采用集成Ethernet (MAC)接口的ARM9芯片STR912作为核心扩展设计了一个Zigbee网关,很好地克服了传统网关架构下Zigbee传输速率的瓶颈,大大降低了协议转换过程中的资源和处理时间消耗。

摘要:设计并实现了一个基于ARM9处理器的Zigbee无线传感器网络嵌入式网关,用来完成Zigbee和Internet之间数据的透明转换。给出了该网关的硬件方案设计和主要软件编程思路以及一种新型网关的协议转换方案的实现思路。该网关具有较好的通用性。
关键词:无线传感器网络 ;Zigbee ;嵌入式网关;STR912 ;LwIP

引言

    无线传感器网络(Wireless Sensor Network,WSN)是指由大量成本相对低廉的,具有感知能力、计算能力、实时通信能力的传感器节点组成的嵌入式无线网络,是当前众多领域的研究和应用热点。建立在IEEE 802.15.4(LR_WPAN,低速率无线个人区域网)上的Zigbee协议是应用于无线监测与控制的全球性无线通信标准,是无线传感器网络组网的首选技术之一。

随着Zigbee无线传感器网络技术的广泛应用,如何通过现有网络基础设施(如Internet、GPRS等)对其进行远程管理、控制感测环境中的各种传感装置,逐渐成为该领域的重要研究课题。图1给出了基于Zigbee的无线传感器网络体系结构,如图示Zigbee网关在整个无线传感器网络体系中起着重要的枢纽作用,同时也是WSN整体系统的“瓶颈”之一。当图1中的服务器或用户部分为其它Zigbee网络时,通过Zigbee网关和Internet或GPRS做媒介,就使得世界范围内的不同监测区域都可以信息共享,这大大缩小了物理世界的时空距离。

                   


                            图1 基于Zigbee技术的无线传感器网络

本文主要研究的是Internet环境下基于Zigbee传感器网络的网关设计及其实现。

1 系统概述

   网关是建立在传输层以上的协议转换器,通常它连接两个或多个相互独立的网络,每接收一种协议的数据包后,在转发之前将它转换为另一种协议的格式。考虑到Zigbee节点的通信能力有限(数据速率仅为250 Kbps),为了减少网关协议转换自身的工作量,本网关选择了一款集成Ethernet接口的ARM9 芯片来完成硬件系统的搭建。

本网关采用模块化设计方案,如图2所示由硬件层、软件层和应用层三大部分组成。其中硬件层描述了网关的硬件实现,在后文将详细介绍;软件层移植μC/OS-II实时操作系统内核、Zigbee和嵌入式TCP/IP协议栈LwIP,实现了Zigbee和TCP/IP协议的双向透明转换,同时封装一些关键API函数供应用层程序调用;应用层运行的是用户编写的应用程序,用户可以根据实际需要使用下层定义的API自行扩充相关应用。

                            

  
                                         图2 Zigbee网关总体结构

2 硬件设计

    网关硬件结构如图3所示,由内部集成以太网MAC的ARM9处理器STR912FW44X、Zigbee射频收发模块CC2420、大容量DataFlash存储卡片AT45DCB008、以太网收发芯片(PHY) RTL8201和带触摸功能的LCD显示模块LQ084V1DG21等模块组成。

                        


                                    图3 Zigbee网关硬件结构

其中STR912FW44X作为硬件系统的主控芯片,它是意法半导体(ST Microelectronics)推出的基于ARM966E-S内核,片内集成Flash、USB、CAN、以太网MAC、AC马达控制、ADC、RTC、DMA等接口的高性能ARM9 SOC,最高主频可达96Mhz;

       Zigbee射频收发芯片CC2420是挪威Chipcon(现为TI)推出的符合2.4 GHz IEEE 802.15.4和Zigbee 标准的射频收发器。CC2420采用O-QPSK调制方式,工作频带范围为2.400~2. 4835 GHz,接收灵敏度为-94 dBm,抗邻频道干扰能力为39 dB。利用此芯片开发的无线通信设备支持数据传输率高达250 Kbps,能够实现点对多点的快速组网;

       AT45DCB008是Atmel公司推出的新型DataFlash存储芯片,在该网关中用来保存网络故障状态下的数据信息。AT45DCB008中的数据按页存放,主存共8192页,每页1024字节,总容量约为8M字节,每页的擦写次数保证在100,000次以上;

以太网PHY层芯片采用的是Realtek公司的RTL8201BL,它是一个单端口的物理层收发器,实现了全部的10/100M以太网物理层功能;

       显示部分采用的LQ084V1DG21是SHARP公司的带触摸屏8.4英寸TFT数字液晶显示屏,分辨率为640×480。

3 嵌入式网关软件设计

3.1 μC/OS-II下的LwIP的移植

   μC/OS-II是一个抢占式的实时多任务内核操作系统,具有开放源码、可固化、可剪裁、高稳定性和可靠性等特点。目前国内外对μC/OS-II的相关研究已有很多,其在STR912处理器上的移植在此不再赘述。LwIP是瑞士计算机科学院开发的轻量级(Light Weight)开放源码TCP/IP协议栈,目前最新版本为1.2.0

LwIP协议栈把所有与硬件相关、OS、编译器相关的部分独立出来,放在/src/arch目录下,可以是说其在设计时就考虑了移植问题。LwIP在μC/OS-II上的移植就是修改这个目录下的文件,其它的文件一般不做修改。需要修改和自己编程实现的是以下几部分:

●与STR912及IAR编译器相关的include文件;

●μC/OS-II模拟层相关代码编写;

●与μC/OS-II相关的一些结构和函数;

●lib_arch中库函数的实现;

●STR912网络驱动程序编写。

完成以上代码移植的工作后,LwIP就可以顺利运行在μC/OS-II下,主要通过以下程序完成LwIP的初始化及运行:

main(){     

OSInit();//μC/OS-II初始化

OSTaskCreate(lwip_init_task,&LineNo11,&lwip_init_stk[TASK_STK_SIZE-1], 0);      //创建LwIP初始化任务

OSTaskCreate(usr_task,&LineNo12,&usr_stk[TASK_STK_SIZE-1],1);//创建用户任务

                   OSStart();//启动LwIP  }

       在main函数中创建了lwip_init_task来初始化LwIP任务(优先级为0)和usr_task用户任务(优先级为1)。需要指出的是,在lwip_init_task任务中除了完成初始化硬件时钟和LwIP本身等工作之外,还创建了tcpip_thread(优先级为5)和tcpecho_thread(优先级为6),其中tcpip_thread才是LwIP的主线程,也是应该先创建的。

3.2   μC/OS-II下的Zigbee协议栈的实现

我们在该网关平台上运行自主编写Zigbee协议栈的子集ez_PAN。ez_PAN目前还很不完善,只实现了Zigbee的部分关键功能,仅支持星型和簇状网络(Cluster),支持网络的动态组网配置和动态绑定等。ez_PAN协议栈结构如图4所示:

                                


                                      图4  ez_PAN协议栈结构

下面给出ez_PAN 协议栈上的协调器(Coordinator)、路由器(Router)和精简节点(RFD)实现的关键代码。Coordinator通过aplFormNetwork()函数建立网络,等待其它节点(Router和RFD)的加入,主要程序如下:

Main()

 {

halInit(); //初始化 HAL 层

hawInit();//硬件初始化

aplInit(); //初始化APL

ENABLE_GLOBAL_INTERRUPT(); //开中断

aplFormNetwork(); //建立网络

while(apsBusy)()) {apsFSM();}  //等待建立完成

while(1) {apsFSM();}  //循环执行协议栈

}

其中调用apsBusy()来判断当前协议栈是否忙于其它程序调用,apsFSM()是在APS层上实现的FSM(有限状态机),被apsBusy周期调用来维持ez_PAN的运行。在Coordinator建立网络完成后,允许Router或RFD节点动态加入,关键代码实现如下:

do {

aplJoinNetwork();//Router或RFD加入网络

while(apsBusy ()) {  apsFSM();}  //等待加入完成

} while (aplGetStatus ()! =LRWPAN_SUCCESS);

3.3   协议转换软件设计

    在TCP/IP协议簇中,以太网的数据传输使用硬件地址(MAC)来进行识别,其中ARP(地址解析协议)完成IP地址和数据链路层使用的硬件地址之间的转换,因此为了保证Zigbee网关在以太网中的通信,首先要实现ARP协议的功能。Zigbee网络中的节点数理论上最多可达65536个,每个节点同样有自己唯一的MAC地址(64位长地址或16位短地址)。参考TCP/IP下的实现机制,我们实现了Zigbee协议中的适配层和ARP,实现IP地址到Zigbee节点地址的映射。协议转换的工作原理如图5所示,下面简单描述一下数据包在网关中从Ethernet向Zigbee单方向转换过程:Ethernet端从某网络接口接收一个正常发往本机的IP数据包,简单判断后向上发给对应的UDP或TCP处理函数进行相应处理,然后再向上发给网关应用程序处理;网关应用程序经过简单分析后,确定要转发给Zigbee网络中的哪个节点,通过Zigbee端的ARP解析出该节点在Zigbee网络中的MAC地址,然后将相应数据包成功交至该节点,这样就完成此次从Ethernet向Zigbee端的协议转换。Zigbee向Ethernet端转换类似,不再赘述。

                    


                                    图5 网关协议转换框图

4        结论

本文设计的网关已在我们的“基于Zigbee无线传感器网络的煤矿井下定位跟踪系统”项目中得以实用,取得了较好的效果。经测试该网关具有效率高、响应实时、可靠性高、功耗低,抗干扰能力强等特点,同时具有很好的通用性。由于当前Zigbee技术还在不断的更新和完善中,如何跟踪最新的Zigbee技术来提高网关的性能以及如何提高ez_PAN的多平台可移植性,将是我们以后研究的重点。

本文作者创新点:采用集成Ethernet (MAC)接口的ARM9芯片STR912作为核心扩展设计了一个Zigbee网关,它很好地克服了传统网关架构下Zigbee传输速率的瓶颈,大大降低了协议转换过程中的资源和处理时间消耗。该网关设计思路、技术实现新颖,具有较强的实用性。

 

参考文献

[1] Zigbee specification v1.1. Zigbee Alliance.http://www.zigbee.org,2006

[2] LwIP v1.2.0 source code. Leon Woestenberg.http://savannah.nongnu.org/projects/lwip/, 2006

[3] Patrick Kinney, Kinney Consulting LLC.Gateways: Beyond the Sensor Network .Zigbee Alliance, 2005

[4] http://www.ece.msstate.edu/~reese/msstatePAN/, 2006

[5] 赵晨,何波,王睿.基于射频芯片CC2420实现的Zigbee无线通信设计[J].微计算机信息,2007(1-2):P101-102

 

作者:乔大雷 夏士雄 杨松 陈岱


      
推荐 】【 打印 】【 发表评论 】【 加入收藏

 相关文章
· 基于Zigbee技术的无线传感器网络协议的设计
· 利用无线SoC芯片实现微功耗Wi-Fi传感器网络
· 基于射频芯片CC2430的ZigBee无线传感器网络
· 无线传感器网络低占空比MAC协议研究
· 基于CC2510的无线传感器网络节点设计
· 基于ZigBee的无线传感器网络
· 基于TinyOS的无线传感器网络平台的实现
· 基于ZigBee的无线串口集线器的研究与设计
· 基于无线传感器网络的煤矿报警系统节点的设
· 基于ARM9的嵌入式Zigbee网关设计与实现
 最新供求
·求枪支离位报警项目合作
·求购类似马来西亚身份证卡
·求购远距离读写器(固定与手持两种)及配套标
·求医院用13.56特殊标签和读写器
·求车辆管理系统方案和报价
·buy 2.5 Million RFID Tag for library use
·大量采购2.45G有源电子标签和读写器
·求购915MHz电子标签(量大)
·求购PA薄膜
·井下人员定位招标
 相关关键词搜索
·资讯中心无线传感器网络  Zigbee  嵌入式网关  STR912  LwIP  
·技术中心无线传感器网络  Zigbee  嵌入式网关  STR912  LwIP  
 
 
 
业界资讯 纵深报道 技术学院
国际资讯 | 国内资讯 | 国内企业 | 国外企业 | Global News
  重点专题
· 自动识别协会射频工作组 · RFID圈内企业动态
· RFID行业高层访谈 · 智能卡与一卡通
· RFID与食品安全 · Scan China展会专题
· 远望谷IPO之路 · RFID与医疗卫生
· NFC手机与支付 · RFID联盟产业园建设介绍
· RFID与智能交通 · 各国RFID频段标准与政策
· 出租车停运以及解决办法 · 863计划RFID专项
  相关产品

Intermec CK3 耐用型移动计算机
门禁考勤一体机
激光条码扫描器
SATO CX400条形码打印机
FN HFM0218读写器
篮牙无线扫描笔
Alien-9900读写器
高频电子标签
SD RFID 读写卡
  推荐文章
· 1GHz以下全球免许可频段短距离无线系统的设
· 德国租赁公司使用RFID技术管理物品
· 美包伯·琼斯大学使用RFID系统加强校园安全
· 美国社区居民利用RFID技术回收垃圾
· 美国港口运用RFID技术减少空气污染
· 拉美零售巨头使用RFID改善服装库存管理
· 沙特珠宝商利用RFID改善库存管理
· 基于RFID技术的运输车辆及汽车衡称重防作弊
· 加拿大宠物用品公司采用RFID系统快速满足沃
· 美诊所采用无源RFID系统减少标本瓶贴标错误
  相关案例和方案
· zigbee在仓库、仓储、物流智能定位信息系统中
· Zigbee与RFID在物流管理系统的应用
· 美W.Va.应用RFID系统追踪矿工防范突发伤亡
· RFID ZigBee助美圣鲁克医院提高医疗服
  相关资讯文章
· RFID与UWB融合全面推进FMC家庭网络
· 赫立讯ZigBee技术亮相IAC
· TI布阵ZigBee,提供三种解决方案
· TI推出CC2480首款Z-Accel系列2.4GHz ZigBee
· ZigBeef新款远距离牲畜识别系统
· 城优发布802.15.4/ZigBee开发套件VersaKit
快 报 论 坛
· 监狱管理腕带电子标签
· 煤矿井下人员定位电子标签
· RFID在防伪领域的应用
· RFID基本工作原理
· 教你让一台电脑只能上允许的QQ
· 干燥冬季,如何消除静电?
快 报 问 吧
· 是否可以通过中继的方式,提高识别距离
· 标签读取的时候能读远读不了近?
· 请教门禁卡有哪几部分组成?
· private string RFID_CM的意思是什么?
· 解析服务、目录服务及信息发布技术研究
· 资产管理一般用什么频率的?
快 报 博 客
· 手掌静脉--告诉你到底是谁?
· 看了一遍我哭了,希望珍惜眼前人。。!!!!!(结
· 如何把条码引入固定资产管理系统?
· 如何利用条码来防伪防窜货管理系统?
· 喷码机(旗舰型)
· 基于RFID技术的服装管理系统

关于我们 | 广告服务 | 帮助中心 | 联系我们 | 友情链接 | 版权申明
客服电话:0531-82679069   编辑部电话:0531-82679328   节假日电话:0531-89180705   客服QQ:651127860 QQ群:41109672  47658979  MSN:RFIDinfo@126.com
版权所有©2003-2008  RFID射频快报 鲁ICP备05021498号 增值电信业务经营许可证鲁B2-20050166号