APP下载

无线传感器网络在环境监测系统中的设计与应用

2012-02-19郭文强张玉杰侯勇严

陕西科技大学学报 2012年4期
关键词:无线传感器节点

郭文强, 张玉杰, 侯勇严, 付 菊

(陕西科技大学 电气与信息工程学院, 陕西 西安 710021)

0 引言

环境监测系统是面向工农业和国民经济建设运营管理的应用服务系统,对电力、燃气、水等能源和资源使用情况、再生能源利用以及建筑室内环境状况进行全方位的监测与管理.它有利于对环境生态的保护,可有效避免重大环境污染事件威胁人民的生命、财产安全,更为能源系统安全、高效地协同工作提供信息支撑平台[1-3].

无线传感器网络是传感器技术、通信技术和计算机网络技术相结合的产物.无线传感器网络中常用的无线通信技术包括红外、Bluetooth(蓝牙)、Wi-Fi、ZigBee等[4,5].其中,红外技术易受遮挡,可移动性差,无法灵活构建网络;蓝牙技术协议复杂、开发成本高、功耗大;Wi-Fi技术成本高、功耗大、安全性能低;ZigBee技术是一组基于IEEE802.15.4无线标准研制开发的有关组网、安全和应用软件方面的通信技术,具有低功耗、短时延、高安全性等技术优势.ZigBee技术还具有以下特点:网络的自组织、自愈能力强,设备的复杂程度低、运行成本低,网络容量大.ZigBee技术的诸多优点使其在国内外的研究和应用越来越受到青睐,成为当今国际备受关注的前沿热点领域[6,7].

本文利用ZigBee无线传感器网络实现了对环境监测现场的数据采集、无线传输,克服了传统的人工监测采样困难和有线网络监测布线复杂的缺点,通过ZigBee 组网迅速的将数据传输到监测平台,为环境监测系统的管理提供可靠依据.

1 整体方案设计

无线传感器网络节点是组成无线传感器网络的基本单位,是构成无线传感器网络的基础平台.

利用ZigBee技术构成的通信网络常包括3种设备类型: 协调器、路由器和 终端设备.在每个ZigBee 网络中必须存在协调器, 负责确定信道和网络标识符, 然后建立1个网络, 并实现网络中的绑定、安全机制等; 路由器可以作为普通设备加入网络, 实现多跳路由并辅助其他的子节点完成通信;设备终端则负责具体的功能实现,如数据的采集和初步处理.

结合环境监测应用需求,本文构建的基于ZigBee无线传感器网络的环境监测系统的架构如图1所示.

图1 基于ZigBee无线传感器网络的环境监测系统架构

该系统由若干个传感器节点、路由节点、协调器节点和监测平台组成整个监测网络.

传感器节点安装了温湿度、二氧化碳浓度等传感器,并将采集到的环境要素数据发送给其所隶属的路由节点.通过ZigBee技术的多跳方式把数据传输给路由节点;每个路由节点在采集数据时,各自形成各自的分网络.节点通过最优路径将传感器节点采集到的各种参数数据传送给协调器节点;协调器节点负责初始化和启动整个网络,协调和管理网络的通信,控制路由节点的数据传输,同时与监测平台通信;监测平台是整个网络的后台管理平台,是网络的数据汇聚中心和系统的管理中心.

假如需要更多网络可以通过简单的增加传感器节点的方式,扩张更大的监测区域,实现监测区域的综合管理.

2 无线传感器网络节点的硬件设计

无线传感器网络节点硬件电路分为协调器、路由器和终端设备3种类型.其中,终端设备由传感器数据采集模块、数据处理模块、电源模块、调试模块、无线通信射频模块和电源模块5部分构成;路由器和协调器则去掉了传感器模块, 同时协调器增加了与监控主机通讯的串口模块.

无线传感器网络传感器节点结构图如图2所示.

图2 传感器节点结构图

2.1 数据处理模块设计

本模块的核心部件采用了TI公司的CC2530F256作为中央处理芯片.CC2530是继CC2540之后最新一代ZigBee技术的片上系统(SoC)解决方案,具有一个IEEE802.15.4兼容无线射频收发器和增强型8051CPU内核,256kB的Flash程序存储器,8kB的RAM,8通道12位A/D 转换器,2个USART接口,21个通用GPIO端口,支持2.0~3.6V供电电压,具有较高的无线接收灵敏度和抗干扰性,传输距离大于75m,最高传输速率250kbps;3种电源管理模式:唤醒模式(0.2mA)、睡眠模式(1μA)、中断模式(0.4μA),尤其适合低功耗要求的系统.

由于CC2530内部已经集成了许多必要电路,因此只需较少的外围电路就能实现信号的收发功能.借助其体积小型化芯片的强大功能,设计的数据处理模块主要任务是:①完成数据的处理、存储等;②负责节点间的无线传输通信;③实现终端节点的休眠;④完成程序的下载及在线调试仿真.

2.2 数据采集模块

该模块主要利用I/O口完成对各种环境数据的采集.本文的数据采集模块在硬件设计时重点考虑了灵活性和可扩展性,预留了传感器接口,用来扩展采用I2C总线和1-Wire总线技术的传感器或模拟传感器,方便用户根据实际情况选择不同类型的传感器.

针对监测类型的需求,传感器节点可同时监测空气温湿度、光强、二氧化碳(CO2)浓度、二氧化硫(SO2)浓度等环境因子.从低功耗、低成本、高精度、硬件设计的简化性和灵活性等方面综合考虑,传感器选型如下:空气温湿度传感器AM2301、光照传感器ISL2901、二氧化碳传感器B-530和二氧化硫传感器SO2/CF-100.其中AM2301和ISL2901为数字传感器.AM2301通过P2.0口采用1-Wire总线技术与主芯片通信.ISL2901挂接在I2C总线上,通过P0.3与主芯片通信.其他传感器均为模拟传感器.由于CC2530内部集成了具有8路输入和可配置分辨率的12位ADC,经寄存器配置可将CC2530P0口的8个引脚均设置为内部ADC的输入通道,所以无需外置A/D转换器,通过P0口即可实现信号的传输.由于串行总线上可同时挂接多个器件.从而使节点硬件设计大大简化、节点体积减小、可靠性提高,节点的更改和扩充极为容易.同时,数字传感器和模拟传感器相结合也为传感器的扩展提供了便利.

2.3 电源模块设计

ZigBee无线传感器网络节点主芯片需3.3V电压,而传感器常用的供电电压分为3.3V、5.0V、12.0V3种,所以节点提供了3.3V、5.0V、12.0V3种电压类型,可满足大多数传感器的需求,有利于扩展使用不同的传感器类型.

主电源采用锂电池和5V电源适配器两种方式.主板的主要电压参数为3.3V,采用芯片TPS79533将主电源转换到3.3V,其输入电平范围为2.7至5.5V.采用LM2585芯片完成5至12V电压转换,为二氧化碳等传感器提供合适的工作电压.

2.4 调试模块

仿真器通过10芯JTAG接口连接CC2530内部JTAG调试模块,用于内电路调试.通过这个调试接口,可以执行整个闪存存储器的擦除、停止和开始执行用户程序、执行8051内核提供的指令、设置代码断点,以及内核中全部指令的单步调试.使用这些技术,可以很好地执行内电路的调试和外部闪存的编程.

3 软件设计

软件设计主要包括网络采集主程序和监测平台的应用程序.其中,监测平台的应用程序采用Visual C++6.0开发,通过RS232串行口完成上位机与网络协调器的通信,可视化地将监测信息显示出来;无线网络采集主程序在IAR软件平台上开发,完成ZigBee协议程序和传感器数据采集程序.

3.1 ZigBee协议程序的实现

ZigBee技术是建立在IEEE802.15.4基础上的无线通信协议.ZigBee协议是由物理层、MAC 子层、网络层、应用汇聚层和高层应用规范层组成.ZigBee设备在工作时,各种不同的任务在不同的层次上执行,通过层的服务完成所要执行的任务.每层的服务主要完成两种功能: 一是根据其下层服务要求,为上层提供相应的服务; 二是根据上层的服务要求,对其下层提供相应服务,各项服务通过服务原语来实现.

在确定网络整体功能的基础上,采用IAR软件平台可对协调器、路由器、终端(传感器节点)3种不同的功能节点进行条件编译,从而使节点具有不同的功能.协调器主程序运行流程如图3所示.协调器主要配置网络参数,启动网络,将其它节点加入网络和维护整个网络的稳定,接受其它节点发送过来的数据,并通过串口送到上位机的监测平台上.

3.2 传感器数据采集程序设计

传感器节点应用程序流程如图4所示.当节点加入网络后,将采集到的数据通过射频天线发送出去.

图3 协调器程序流程 图4 传感器节点流程

以一个传感器节点中的温湿度采集为例,说明采集程序的控制过程.选用的温湿度传感器为AM2301,它是一款含有已校准数字信号输出的温湿度复合传感器.该传感器内置了一个高性能8位单片机,每个传感器都在极为精确的湿度校验室中进行校准,校准系数以程序的形式储存在单片机中,因此具有极高的可靠性与稳定性.

CC2530(主机)通过P2.0口与AM2301的SDA线相连.主机和传感器之间的通信通过如下3个步骤完成读取数据.

步骤1,AM2301上电后(等待2s以越过不稳定状态),测试环境温湿度数据,并记录数据,此后传感器自动转入休眠状态.AM2301的SDA数据线由上拉电阻拉高一直保持高电平,此时AM2301的SDA引脚处于输入状态,时刻检测外部信号.

步骤2,CC2530微处理器的I/O设置为输出,同时输出低电平,且低电平保持时间不能小于800μs,本文选用1ms,AM2301从休眠模式转换到高速模式.然后微处理器的I/O设置为输入状态,释放总线,由于上拉电阻,微处理器的I/O即AM2301的SDA数据线也随之变高,等主机释放总线后,AM2301发送响应信号,即输出80μs的低电平作为应答信号,紧接着输出80μs的高电平通知外设准备接收数据.

步骤3,AM2301发送完响应后,随后由数据总线SDA连续串行输出40位数据,微处理器根据I/O电平的变化接收40位数据.位数据“0”的格式为:50μs的低电平加26~28μs的高电平; 位数据“1”的格式为:50μs的低电平加70μs的高电平.AM2301的数据总线SDA输出40位数据后,继续输出低电平50μs后转为输入状态,由于上拉电阻随之变为高电平.

此时AM2301的单片机自动进入休眠状态.单片机只有收到主机的起始信号后,才重新唤醒传感器,进入工作状态.

数据采集后通过发送函数传输数据,其关键代码如下:

static void sendReport(void)

{

//定义中间变量

Uint16pData[SENSOR_REPORT_LENGTH];

static uint16reportNr=0;

uint16txOptions;

// 读取参数值

pData[SENSOR_TEMP_OFFSET]= readTemp();

pData[SENSOR_HUMID_OFFSET]=readHumid();

pData[SENSOR_PARENT_OFFSET]=

HI_UINT16(parentShortAddr);

pData[SENSOR_PARENT_OFFSET+1]=

LO_UINT16(parentShortAddr);

//设置应答请求ACK

if(++reportNr

{

txOptions = AF_TX_OPTIONS_NONE;

}

else

{

txOptions = AF_MSG_ACK_REQUEST;

reportNr =0;

}

//发送数据

zb_SendDataRequest(0xFFFE,

SENSOR_REPORT_CMD_ID,

SENSOR_REPORT_LENGTH,

pData,0, txOptions,0);

}

类似的工作过程,将程序中的采集命令稍加改动即可完成其它传感器的数据采集.

4 系统调试

为了检验本文所设计系统的性能,利用电吹风加热等方式,人工改变监测环境状态,对无线传感器监测网络进行了验证性实验.

实验主要过程如下:协调器选择一个信道和网络的PAN ID,从而建立网络,随后接收所有节点传送的环境数据并将其传送给网关;路由器寻网,加入网络后将自身和终端采集节点的环境数据转发给协调器;终端节点有3个,分别从不同散布于环境不同的3个房间,它们寻网,加入网络后将本身采集的环境数据转发给路由器或协调器.同时为了降低功耗,终端节点在不发送数据时进入休眠程序,休眠时间设为110 s.实验结果表明,ZigBee无线传感器网络能够可靠、有效地采集到相应的环境数据,并及时传输至监测平台.

图5 监测系统温度变化曲线

图5是监测平台显示的温度变化曲线情况.其中,房间2、房间3部分时间段采用了人工调整方法,改变了监测节点所处的环境.实验结果表明,ZigBee无线传感器网络能够可靠、有效地采集到相应的环境数据,并及时传输至监测平台.

5 结束语

本文提出的基于CC2530的无线传感器监测网络,采用ZigBee无线传输协议,实现了快速自组网,克服了传统有线监测方式带来的布线困难的问题.监测系统具有组网灵活、采集准确、低功耗和低成本等特点,使网络部署灵活、快捷,可广泛应用于仓库、果园、农田、水文、大气污染、智能交通监测等领域.

[1] 柳平增,孟祥伟,田 盼,等.基于物联网的精准农业信息感知系统设计[J].计算机工程与科学,2012,34(3):137-141.

[2] 孙 燕,曹成茂,马德贵.基于ZigBee网络的节水灌溉自动控制系统研究[J].农机化研究, 2012,34(6):153-156.

[3] 常 超,鲜晓东,胡 颖.基于WSN的精准农业远程环境监测系统设计[J].传感技术学报,2011,24(6):879-883.

[4] 高 峰.基于无线传感器网络的设施农业环境自动监控系统研究[D].杭州:浙江工业大学,2009.

[5] 鲁进军.基于无线传感器网的蔬菜大棚监测系统设计与实现[D].武汉:武汉理工大学,2009.

[6] 李联辉.基于ZigBee无线网络的汽车智能测试系统的研究[D].洛阳:河南科技大学,2010.

[7] 高 峰,俞 立,张文安,等.基于无线传感器网络的作物水分状况监测系统研究与设计[J].农业工程学报,2009,25(2):107-112.

猜你喜欢

无线传感器节点
CM节点控制在船舶上的应用
康奈尔大学制造出可拉伸传感器
Analysis of the characteristics of electronic equipment usage distance for common users
《无线互联科技》征稿词(2021)
基于AutoCAD的门窗节点图快速构建
简述传感器在物联网中的应用
“传感器新闻”会带来什么
无线追踪3
跟踪导练(三)2
基于ARM的无线WiFi插排的设计