基于ARM与ZigBee的嵌入式无线传感器网络网关的设计Word文档下载推荐.docx
- 文档编号:15384025
- 上传时间:2022-10-29
- 格式:DOCX
- 页数:8
- 大小:340.87KB
基于ARM与ZigBee的嵌入式无线传感器网络网关的设计Word文档下载推荐.docx
《基于ARM与ZigBee的嵌入式无线传感器网络网关的设计Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《基于ARM与ZigBee的嵌入式无线传感器网络网关的设计Word文档下载推荐.docx(8页珍藏版)》请在冰豆网上搜索。
网关;
ARM;
ZigBee;
CGI
中图分类号:
TP393.05文献标识码:
A文章编号:
1673-7938(201003-0023-04
基金项目:
北华航天工业学院科研基金项目(KY200810收稿日期:
2009-12-29
0引言
无线传感器网络(WirelessSensorNetwork,WSN就是由部署在监测区域内大量的微型传感器节点组成,通过无线通信方式形成的一个多跳的自组织的网络系统,其目的是协作地感知、采集和处理网络覆盖区域中感知对象的信息。
无线传感器网络在实际使用时,很多情况下用户需要进行有关节点数据的查询和控制,故需要通过网关设备接入外部网络,通常是传统的Internet协议网络如通过Http协议,提供用户对无线传感器网络的远程访问,网关节点的作用如图1
所示。
图1无线传感器网络网关
通过本文设计的无线传感器网关,用户可以通过连上Internet的监控机查看无线传感器网络监控区域的数据以及向监控区域的节点发送命令。
在网关节点上部署Http服务器,通过开发CGI程序,一方面可以响应用户使用浏览器发出的Http请求,另
一方面CGI程序通过调用底层的串行接口驱动实现网关节点与Sink节点的通信;
同时在网关节点部署嵌入式数据库,可实现保存历史数据及阈值数据,实现一定时间内的历史数据查询和超过阈值自动报警功能。
1硬件平台设计
网关节点的硬件部分核心CPU采用Samsung公司的主流ARM9处理器S3C2440A,基于ARM920T内核,主频为400MHz,带MMU(内存管理单元,片上资源丰富,在此基础上进行硬件扩展如图2
图2基于S3C2440A的硬件平台设计
(1S3C2440A芯片选用UART0(TxD0、RxD0、
nRTS0、nCTS0引脚与Sink节点的串口连接引脚,为完成CMOS与EIA电平转换,采用MAX3232C芯片转换,这样串行通信线路上采用EIA电平,使用标准的RS232C接口,可提高通信线路抗干扰能力;
(2电源接口电路作用为给CPU和I/O进行供电和进行复位,采用DC5V稳压电源进行供电,经两个稳压芯片产生3.3V和2.5V的电压输出,复位电路采用简单的RC电路产生复位信号;
(3网关状态指示电路即为采用TFT的液晶显
第20卷第3期
2010年6月
北华航天工业学院学报
JournalofNorthChinaInstituteofAerospaceEngineering
Vol20No3
Jun2010
示屏显示当前网关节点的工作状态,液晶显示屏采用Sharp公司的LQ080V3DG1,驱动电路采用74LVCH162245芯片连接S3C2440A的LCD控制器;
(4Ethernet接口负责连接网关与Internet,采用RTL8019芯片与S3C2440A芯片进行连接,其16位数据总线与S3C2440A芯片的低16位总线进行连接,之后RTL8019芯片连接一个网络变压器与标准的RJ45接口进行相连;
(5存储器方面扩展64MB的SDRAM作为RAM,采用1片HY57V561620芯片,地址空间安排在Bank6;
扩展64MB的NandFlash作为外部存储器,采用1片K9F1208U0B芯片,S3C2440A的GPA1722作为控制信号。
无线传感器网络Sink节点采用CC2431作为主芯片,CC2431是Chipcon公司第2代ZigBee平台和真正的SoC解决方案,结合了行业中领先的射频2.4GHz收发器和符合IEEE802.15.4协议的CC2420,具有工业级、集成体积小的高性能8051微处理器,与S3C2440A进行串行连接需要进行串口扩展,CC2431芯片选择USART0连接MAX3232C芯片实现电平转换。
2软件平台设计
实现传感器网关的软件平台首先需要在S3C2440A芯片及其扩展模块上移植Linux操作系统,利用操作系统提供的TCP/IP协议栈,部署Http服务器可以接收用户通过浏览器发送来的查询请求,另外由于采用串口进行与Sink节点通信,需要在Linux系统基础上开发串口驱动供其它模块使用。
S3C2440A相关的软件平台模块如图3
图3基于S3C2440A硬件的软件平台设计
在ZigBee网络使用Ti的ZStack1.4.3版本协议,该协议符合ZigBee2006规范,支持多种平台,其
中包括面向IEEE802.15.4/ZigBee的CC2430片上系统解决方案、基于CC2420收发器的新平台以及TIMSP430超低功耗MCU。
2.1嵌入式WebServer的移植
软件平台的搭建采用裁剪Linux作为嵌入式操作系统,在其基础上移植安装Lighttpd作为Http协议WebServer,步骤如下:
(1配置编译配置文件,使用命令:
./configureprefix=/mnt/nfs/lighttpdarmhost=armlinuxbuild=i686pclinux--disableFEUTAREdisableipv6disablelfs生成Makefile文件;
(2制定编译链为arm编译链,用make进行交叉编译,并用makeinstall命令把编译后的可执行文件复制到安装路径;
(3配置Lighttpd,把Lighttpd源目录下的doc目录中的配置文件模板复制到安装文件目录下的sbin目录,之后按照实际应用要求更改配置文件,创建网页根目录。
2.2嵌入式数据库的移植与数据表
嵌入式数据库采用移植安装Sqlite实现,步骤如下:
1下载Sqlite源代码包,将压缩包解压;
2在Sqlite目录下的configure中找到与交叉编译相关的代码并将其中无关平台配置注释掉后,在sqlbuild目录中执行configure命令生成makefile文件;
3修改makefile文件,修改的内容包括BCC,TCC,LIBTOOL,LIBREADLINE以及静态链接的形式,修改后执行make命令生成Sqlite;
4把Sqlite拷贝到Linux系统下需要安装的目录。
网关的嵌入式数据库中的数据表包含如下:
(1用户表,存储可查看无线网络的合法用户信息;
(2历史数据表,存储监测范围内的一定历史时期的监测数据,供历史数据查询模式使用;
(3监测值范围表,提供检测数据的合法检验分析对比数据,以减少干扰数据存入历史数据表;
(4预警阈值表,存储监测指标的预警阈值。
2.3串行通信的实现
网关节点的S3C2440A芯片与Sink节点的CC2431芯片数据交换通过串行通信实现,为了数据能够进行及时收发,采用中断方式使用UART0,2010年6月北华航天工业学院学报第20卷
S3C2440A芯片运行的程序中需要开发串口驱动及数据交换模块,数据交换模块可由其它模块功能在需要进行与Sink节点通信时调用。
无线传感器网络的Sink节点运行采用ZStack1.4.3版本协议,在该协议提供的开发代码中已经提供了USART的串口驱动函数,其包含头文件位于HAL/hal-uart.h文件中,Sink节点与其它完整功能节点中程序不同的是要增加采用中断方式使用USART的中断处理函数,包括发送和接收函数,接收函数完成接受网关发送来的查询请求信息,发送函数中将查询结果通过串口发送给网关。
2.4程序模块的实现
程序的实现主要可划分为数据存储模块、身份验证模块、数据查询模块、数据分析模块、数据交换模块,实现以下功能:
(1数据存储模块实现将当前查询的数据存入嵌入式数据库,根据当前查询的数据,比较数据库中设定的某项监测值的范围,若超出则认为不合理的干扰数据,这样可以减少数据的存储量;
(2身份验证模块提供登录网关的用户身份验证,避免非法用户获取监测数据和向无线网络发送干扰信息;
(3数据查询模块接收用户查询要求,之后解析用户查询条件,之后从数据库中使用标准Sql语句进行查询数据库,提供当前数据查询、历史数据查询;
(4数据分析模块根据用户设定的预警阈值进行与当前的查询数据进行对比分析,若超出阈值,反馈给CGI程序从而使用户可以获取当前网络中感知到了异常数据;
(5数据交换模块提供通过串行驱动访问串行通信线路的功能,实现与Sink节点的数据通信功能。
3用户交互及CGI的设计
用户通过传统Internet与网关节点交互实现的关键是部署在Lighttpd服务器中的CGI程序来实现的,查询无线传感器网络的数据用户首先需要在浏览器输入CGI的URL,WebServer在解析请求后调用相应CGI程序,CGI程序执行的结果是将Html元素发送给用户计算机,由浏览器负责解析生成用户UI。
用户查询的参数包含在form标签中,参数提交方式由form标签的method属性指定,在本文设计的网关中以post方式提交,处理请求的CGI由ac
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 ARM ZigBee 嵌入式 无线 传感器 网络 网关 设计
![提示](https://static.bdocx.com/images/bang_tan.gif)