微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > 基于ARM9的嵌入式Zigbee网关设计与实现

基于ARM9的嵌入式Zigbee网关设计与实现

时间:04-10 来源:互联网 点击:
摘要:设计并实现了一个基于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数字液晶显示屏,分辨率为640480。

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文件;

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top