微波EDA网,见证研发工程师的成长!
首页 > 射频和无线通信 > 射频无线通信文库 > ZigBee2006协议栈的 无线传感执行网络构建

ZigBee2006协议栈的 无线传感执行网络构建

时间:08-17 来源:互联网 点击:

1 ZigBee技术及ZigBee2006协议栈简介
1.1 ZigBee技术概述
ZigBee技术是一种短距离、低速率的无线通信技术。由于其短距离、低速率及可以实时定位等特点,被广泛应用于医疗、智能家居、智能建筑、工业自动化、智能空间等领域。
1.2 ZigBee2006协议栈简析
ZigBee通信协议的基础是IEEE 802.15.4。这是IEEE无线个人区域网工作组的一项标准,被称作IEEE 802.15.4标准。该标准定义了物理层(PHY)和媒体访问控制层(MAC)的标准。ZigBee联盟则定义了ZigBee协议的网络层(NWK)、应用层(APL)和安全服务规范。TI/Chipcon公司在IEEE 802.15.4标准和ZigBee联盟所推出的ZigBee2006规范的基础上,发布了全功能的ZigBee2006协议栈,并通过了ZigBee联盟的认证。该协议栈全部用C语言编写,免费提供给用户,同时向后兼容。该协议栈在结构上分为应用层、网络层、安全层、MAC层和物理层,每一层的函数都严格按照IEEE 802.15.4标准和ZigBee2006规范所规定的原语格式编写。与此同时,在协议栈内部还嵌入了一个操作系统,用于对任务进行统一的调度。对于用户而言,只需要了解应用层函数并进行恰当的调用,就可以构建功能完善、性能稳定的ZigBee无线网络。

2 系统方案设计
ZigBee无线传感执行网络必须要有一个协调器作为整个网络的传输与控制中心,另外还要有若干路由器和终端节点。它有3种最基本的连接方式:星状连接、网状连接和串状连接,如图1所示。

星状连接方式比较简单,只能组建包含较少节点的无线网络,各个终端节点通过协调器实现网络连接。网状连接中任意节点之间都可以传递信息。串状连接中增加了若干路由器,用于对数据进行转发。
在ZigBee2006全功能协议栈中,网络连接方式的选择可通过在nwk_globals.c和nwk_globals.h中对 STACK_PROFILE_ID的设置来实现。STACK_PRO-FILE_ID有3种量,分别对应着星状连接、网状连接和树状连接网络。
系统在nwk_globals.h中加入如下语句,从而在家庭环境中构建星状结构的ZigBee无线传感执行网络:
#define STACK_PROFILE_ID GENERIC_STAR
系统的整体结构如图2所示。

系统中布置有一个协调器与PC机相连,同时布置有若干终端节点或路由器,使其连接温度、湿度和光敏电阻等传感器来监测房间环境。另外,房间中还布置有一些终端节点与执行器连接,用于控制窗帘的开关、台灯的亮灭等。协调器和终端节点在房间内组成了一个星状结构的ZigBee无线传感执行网络。
系统的整体工作过程是:首先由协调器节点成功创建ZigBee网络,然后等待终端节点加入。当终端节点及传感器上电后,会自动查找空间中存在的 ZigBee网络,找到后即加入网络,并把该节点的物理地址发送给协调器。协调器把节点的地址信息等通过串口发送给计算机进行保存。当计算机想要获取某一节点处的传感器值时,只需要向串口发送相应节点的物理地址及测量指令。协调器通过串口从计算机端收到物理地址后,会向与其相对应的传感器节点发送数据,传达传感器测量指令。传感器节点收到数据后,通过传感器测量数据,然后将测量结果发送给协调器,并在计算机端进行显示。

3 系统硬件设计
系统的协调器、路由器和终端节点的核心采用TI公司的CC2430芯片。该芯片是一款真正的系统芯片(SoC)解决方案,其在单个芯片上集成了ZigBee射频前端、微控制器和存储器。它使用1个8位的8051内核MCU作为控制器,其性能是工业标准8051核的8倍,且程序代码与51系列单片机完全兼容。CC2430具有64/128 KB的可编程Flash和8 KB的RAM,其大容量的Flash完全能够满足ZigBee2006协议栈程序的要求;另外,还具有模/数转换器(ADC)、定时器、AES128协处理器和看门狗定时器等片内外设。
系统的工作原理是:在协调器端,CC2430通过RS232异步串行通信与PC机进行通信。协调器成功组建网络时,会向PC机发送组网成功指示。当有路由器或终端节点加入网络时,协调器通过RS232向PC机发送节点加入指示。在路由器和终端节点处,上电后CC2430寻找可用信道并加入网络,然后等待指令。路由器或终端节点一旦收到协调器发送来的测量指令,将会读取传感器的数据并传送。
本系统中温度和湿度测量使用Sensirion公司的SHT11数字温湿度传感器。该传感器具有相对湿度和温度一体测量、超快的响应时间等优良特性。对台灯和窗帘的控制是通过继电器TQ2-3V来实现的。

4 软件设计
4.1 系统采集温湿度的程序设计
系统温湿度的采集使用的SHT11数字式温湿度传感器采用两线制数字接口,编程十分方便。温湿度采集程序流程如图3所示。

4.2 光敏电阻阻值读取
光敏电阻阻值的读取用CC2430内部的ADC实现。通过设置CC2430的 ADCCON3寄存器可对A/D转换的一些参数进行设置。具体如下:使用14位的分辨率,采样通道设置为AINO,参考电压设置为内部1.25 V。通过实验可以测定,当P0.1的电压值等于1.25 V时,环境光照强度已经足够弱,可以控制空间中的其他执行器做出动作,如开灯、打开窗帘等。
4.3 ZigBee2006协议栈常用函数及工作过程
系统软件基于TI/Chipcon公司免费提供的Zig-Bee2006协议栈,程序中嵌入了实时操作系统,用于对网络组建、节点加入、数据收发等功能运行统一调度。进行程序设计时,首先在协议栈应用层程序中添加相应的任务,然后运行任务即可处理。ZigBee2006协议栈的main函数流程如图4所示。

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

网站地图

Top