基于CC2530的Zigbee2007/PRO协议的无线温湿度系统设计

2012-02-15 03:29任志健莫伟健万智萍
电子设计工程 2012年10期
关键词:无线网络温湿度终端

任志健,莫伟健,万智萍

(中山大学 新华学院,广东 广州 510520)

当今计算机技术跟现代通信技术的进步与发展使得Zigbee技术日渐成熟,本系统组建了一个基于Zigbee2007/PRO协议的网状网网络,采用了新型低功耗的传感设备进行温湿度信息采集,对终端节点进行了设计使得终端节点可以自主发现和加入网络并绑定,随即将实时检测到的温湿度数据发送给终端节点。无线传感器网络这一综合了传感器技术、信息处理技术和无线通信技术的新兴交叉学科目前已广泛应用于自动控制、环境监测等领域[1]。结合Zigbee2007/PRO协议的特点和当今市场对环境监控的要求,设计了基于CC2530的Zigbee2007/PRO协议的无线温湿度监控系统,并通过实践对系统中的关键部分进行了可行性分析。

TI/Chipcon公司在IEEE802.15.4标准和ZigBee联盟所推出的ZigBee2006规范的基础上,发布并认证了全功能的ZigBee 2006协议栈。该协议栈全用C语言编写并向后兼容[2]。由于Zigbee2006改进后仍然无法满足需求,因此在Zigbee2006的基础上又诞生了实用性更强的Zigbee2007/PRO,但对现在的用户来说只需要了解应用层函数以及如何合适调用这些函数即可搭建出具有稳定性能和完善功能的Zigbee网络了。

1 系统设计与分析

TI公司的推出的CC2530[3]是第二代的Zigbee RF收发器,主要用于2.4 GHz的ISM频段。其集成了1个高性能的RF收发器和1个优化的低功耗的8051微控制器内核,具有优秀的接收器灵敏度和优越的抗干扰性[4]。同时,CC2530可以配备TI的 RemoT I,ZStack或SimpliciT I等专有或标准兼容的网络协议栈来简化开发[5-6]。Zigbee2007/PRO协议栈Zstack-2.3.0是新一代Zigbee芯片CC2520基于Zigbee2007协议规范开发的协议栈。Zigbee协议结构采用OSI七层模型。协议以IEEE802.15.4标准作为通讯基础,定义了物理层(PHY)和媒体访问控制层(MAC)的标准;ZigBee联盟则定义了ZigBee协议的网络层(NWK)、应用层(APL)和安全服务规范[7],其结构如图1所示。

图1 Zigbee协议栈的体系结构模型图Fig.1 Structure of the Zigbee protocol stack

ZigBee无线网络可分为星状网(Star Network)和网状网两种拓扑结构,如图 2(a)、图2(b)所示。星状网连接方式比较简单,加上Zigbee收发器受限于本身的工作范围,只能用于组建包含节点数比较少而且范围相对也比较小的无线网络;网状网的结构能够使得无线网络范围大大拓展开的同时也使得无线网络中的节点数目大大增多,非常适用于位置分散,监控节点需求量大监控对象。本系统采用了网状网结构,主要分为:协调器节点(Coordinator)、路由器节点(Router)和终端传感器节点。系统结构如图3所示。

图2 Zigbee网络结构拓扑图Fig.2 Topology structures of Zigbee network

本系统结构图中监控中心为一台计算机,主要用于可视化各个终端传感器节点检测到的温湿度数据信息并对数据信息进行储存记录;协调器节点用于组建无线网络、分配网络位置外、收集终端传感器节点检测到的信息和数据传送工作;路由器节点的主要为寻找、建立和修复资料封包,收集并转发与其形成路由路径的下级终端传感器节点检测到的数据信息;终端传感器节点主要负责检测所在位置的实时温湿度数据信息并发送给其上级节点,最终使得检测到的温湿度数据信息传输到协调器节点,同时具备路由器节点的能力。

图3 系统结构图Fig.3 System topology structure

2 系统硬件电路设计

本系统温湿度检测部分选用了性能优异的数字式温湿度传感器SHT15和CC2530 ZigBee模块来搭建。SHT15集成了1个电容性聚合体测湿敏感元件、1个用能隙材料制成的测温元件、1与14位的A/D转换器以及串行接口电路。湿度传感器在(10~50°C)正常温度的工作环境下误差低于±0.5°C,湿度的测量在10%RH~80%RH的环境下误差低于±2%RH,是个相当稳定的温湿度传感器[8]。

终端传感器节点硬件部分的工作电压由5 V干电池提供,在SHT15电源引脚VCC与GND之间加了1个100 nF去耦滤波电容 C1;SHT15的 2、3端口分别与 CC2530F256 ZigBee模块的P2_1口和P2_2口进行连接,SHT15与CC2530之间通过I2C总线技术进行数据交换。而协调器节点硬件部分主要使用了RS232串口电路与计算机进行通信,RS232串口部分电路图如图5所示,CC2530外围电路如图6所示,使用Protel DXP 2004作图软件来作图。

为提高测量的准确性,本系统在信号转换时候进行非线性补偿和温度补偿来获得精确的数据。在收到CRC 8是确认位后,通过保持ACK高电平来结束通讯并且自动地进入休眠模式。SHT15在信号转换时,进行相对湿度信号的非线性补偿,测量的分辨率为12 bit,公式如下:

RH linear= -2+0.5*SORH+(-4)*SORH2 (%RH)

式中:RH linear为相对湿度修正值,SO RH为传感器相对湿度测量值。

3 系统软件设计

本系统终端传感器节点软件设计流程如图7所示。终端传感器节点上电并开始工作后,先进行初始化工作,分别对硬件还有协议栈进行初始化,初始化后立即搜索附近存在的无线Zigbee网络并发出加入请求。在成功加入该无线Zigbee网络之后进入休眠模式等待条件中断的产生,若中断产生则对中断做出判别再作出相应的响应动作。

图4 RS232串口部分电路图Fig.4 RS232 serial part of the schematic

图5 CC2530外围电路图Fig.5 Peripheral circuit of CC2530

协调器节点软件设计流程如图8所示。同终端传感器节点类似,协调器节点上电后首先也要对硬件还有协议栈进行初始化。初始化之后进行信道搜索和并对搜索到的空闲信道进行评估选择最优信道建立ZigBee无线网络,在网络组建成功后检查是否收到其他节点的入网请求或控制中心的测量命令,并对这两种情况作出相应的响应动作,而在此过程中要检查网络的地址空间是否已满,如果地址空间已经满了就转到加入网络失败。一旦协调器节点接收到从控制中心发出的采集温湿度数据的命令时马上把从终端传感器节点上接收到的温湿度数据信息发送给控制中心。本系统部分程序如下:

/*头文件包含程序片段*/

#include"OSAL.h"//操作系统抽象层头文件

#include"ZB_USER_EVENTS.h"//用户事件头文件

...

int main(void)

{ /*初始化操程序作片段*/

图6 终端传感器节点部分软件设计流程图Fig.6 Software design flow of terminal sensor node

HAL_BOARD_INIT(); //初始化节点设备

图7 协调器节点软件设计流程图Fig.7 Software design flow of coordination node

HalDriverInit(); //初始化硬件抽象层驱动

...

if(event& (ZB_USER_EVENT))//当用事件发

{ zb_HandleOsalEvent(user_event);//调用判断事件类型并作出处理

if((user_event) &event_S)//若事件类型为测量温湿度

{ myApp_StartReporting();//测量并发送温湿度信息

}

else if((user_event) &event_T)//若事件类型为转发数据

{ zb_TRANEvent();//转发数据

}

...}

4 系统结果分析

通过使用无线温湿测量系统在工作环境中进行当地环境气候进行测量,为了保证测量的结果和准确性,我们在不同的时间进行抽查测量,每过5分钟时间段测量一次,测量一个小时,并用MATLAB对数据进行分析,温度测量值与标准值比较图如图8所示以及湿度测量值与标准值比较图如图9所示。

图8 温度测量值与标准值比较图Fig.8 Measurements and standard value comparison of temperature

图9 湿度测量值与标准值比较图Fig.9 Measurements and standard value comparison of humidity

5 结束语

文中基于CC2530芯片结合ZigBee2007/PRO协议,设计了一个无线温湿度监测系统并对系统功能做了实际验证,验证结果表明了本系统是切实可行的。系统不仅实现了对多个分散的节点的温湿度监控和数据的准确传输,而且系统采用了网状网的网络结构组建无线网络使得监控的范围大幅度扩大,在监控范围上比一般的采用星状网结构搭建网络的监控系统要大得多,同时这也使得本系统比星状网结构的网络的节点容量大,在现在的无线检测系统一般都采用星状网结构组网的形势下本系统具有很大的市场优势。另外本系统的能稳定性和可靠性也非常高使得本系统的环境适应性非常强,特别适用于工农业环境现场和对环境因素要求比较苛刻的作业现场。

[1]李志方,钟洪声.CC2530的分布式无线数据采集系统设计[J].单片机与嵌入式系统应用,2011(9):40-42.LI Zhi-fang,ZHONB Hong-sheng. Distributed data acquisition system based on CC2530[J].Microcontrollers&Embedded Systems,2011(9):40-42.

[2]章伟聪,俞新武,李忠成.基于CC2530及ZigBee协议栈设计无线网络传感器节点[J].计算机系统应用,2011,20(7):184-187.ZHANG Wei-cong,YU Xin-wu,LI Zhong-cheng.Wireless network sensor node design based on CC2530 and Zigbee protocol stack[J].Computer Systems&Applications, 2011,20(7):184-187.

[3]Texas Instruments.A True System-on-Chip Solution for 2.4-GHz IEEE 802.15.4 and ZigBee Applications[EB/OL].(2010)[2012].http://www.ti.com/lit/ds/symlink/cc2530.pdf.

[4]李志方,钟洪声.IEEE 802.15.4的CC2530无线数据收发设计[J].单片机与嵌入式系统应用,2011(7):43-45.LIZhi-fang,ZHONGHong-sheng.Point-to-point communication based on CC2530 and IEEE 802.15.4[J].Microcontrollers&Embedded Systems,2011(7):43-45.

[5]樊静,王建明.基于CC2530的博物馆状况无线监测系统设计[J].电子测量技术,2011,34(6):105-109.FAN Jing,WANG Jian-ming.Design of wireless monitoring system for environment status of museum based on CC2530[J].Electronic Measurement Technology,2011,34(6):105-109.

[6]衣翠平,柏逢明.基于ZigBee技术的CC2530粮库温湿度检测系统研究[J].长春理工大学学报:自然科学版,2011,34(4):53-57.YI Cui-ping,BAI Feng-ming.ZigBee-based CC2530 Granary Temperature and Humidity Monitoring System[J].Journal of Changchun University of Science and Technology:Natural Science Edition,2011,34(4):53-57.

[7]李俊斌,胡永忠.基于CC2530的ZigBee通信网络的应用设计[J].电子设计工程,2011,19(16):108-111.LI Jun-bin,HU Yong-zhong.Design of ZigBee network based on CC2530[J].Electronic Design Engineering,2011,19(16):108-111.

[8]Sensirion.Datasheet SHT1x (SHT10, SHT11, SHT15)Humidity and Temperature Sensor IC [EB/OL]. (2011)[2012].http://www.sensirion.com/en/pdf/product_information/Datasheet-humidity-sensor-SHT1x.pdf.

猜你喜欢
无线网络温湿度终端
X美术馆首届三年展:“终端〉_How Do We Begin?”
基于AT89C51的数字型蚕用温湿度计的设计
滤波器对无线网络中干扰问题的作用探讨
通信控制服务器(CCS)维护终端的设计与实现
基于DSP的多路温湿度监测系统
基于温湿度控制的天气预测装置
蒸发冷却温湿度独立控制空调系统的应用
多功能北斗船载终端的开发应用
无线网络的中间人攻击研究
TD-LTE无线网络高层建筑覆盖技术研究与应用