




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第 37 卷 第 7 期Vol.37 No.7计 算 机 工 程Computer Engineering2011 年 4 月April 2011·网络与通信· 文章编号:10003428(201107012104 文献标识码:A 中图分类号:TP311.52基于 Z-Stack 协议栈的 WSN 能量管理策略李 军,黄 岚,王忠义(中国农业大学信息与电气工程学院,北京 100083摘 要:在分析基于 ZigBee 协议的 Z-Stack1.4.3 协议栈基础上,实现无线传感器网络(WSN数据的自动周期获取,通过设置协议栈中休眠 条件,不仅能最大限度地降低功耗,而且可以保证网
2、络的同步性。构建一个簇树结构的低功耗 ZigBee 网络,设计具有网络数据、拓扑显 示等功能的监控管理系统。应用结果表明,该系统能在低功耗下稳定地工作,完成环境数据监测。关键词:无线传感器网络;Z-Stack 协议栈;协议栈机制;低功耗Energy Management Strategy for WSN Based on Z-StackLI Jun, HUANG Lan, WANG Zhong-yi(College of Information and Electrical Engineering, China Agricultural University, Beijing 100083,
3、China【Abstract】By analyzing ZigBee compliant Z-Stack 1.4.3 release, this paper obtains the periodic data from Wireless Sensor Network(WSN. Setting the sleep conditions properly not only minimizes the energy consumption but also satisfies synchronization of WSN. Energy efficient WSN are constructed w
4、ith tree topology and the management software is developed to provide the function of displaying of dynamic data of sensors and energy of nodes, monitoring the network topology, etc. Application results show the system can run reliably under the condition of low power consumption and realize the mon
5、itoring of environmental data.【Key words】Wireless Sensor Network(WSN; Z-Stack; protocol stack mechanism; low power consumptionDOI: 10.3969/j.issn.1000-3428.2011.07.0401 概述在无线传感器网络(Wireless Sensor Network, WSN构建 过程中,由于监控区域的环境复杂性和不确定性等因素使得网络节点的能量补给(如人工更换电池较为不便。为了尽可 能在有限的电池容量的条件下,用最低的能量消耗率进行较 大的数据处理和数据
6、传输1,探寻一套网络节点低耗能的能 量管理策略成为无线传感器网络构建过程中不可忽视的关键问题。本文提出一套基于 Z-Stack 协议栈能量管理策略的无 线传感器网络构建方案。2 Z-Stack 协议栈工作原理Z-Stack1.4.3 协议栈符合 ZigBee2006 规范2,它以硬件 抽象层(HAL、操作系统抽象层(OSAL,以及通过 OSAL 管 理以独立的任务形式体现 ZigBee 协议的各层,ZigBee 协议 和 Z-Stack 协议栈关系如图 1 所示。图 1 ZigBee 协议和 Z-Stack 协议栈OSAL 与 Z-Stack 协议栈相互独立,但是整个协议栈必须基于 OSAL
7、才能运行。OSAL 提供如下服务和管理:任务管 理,任务同步,消息管理,时间管理,中断管理,内存管理, 电源管理以及非易失性存储器管理。Z-Stack 协议栈中任一子 模块都可作为 OSAL 的一个任务独立运行。OSAL 是一个多 任务非抢占式的、轮询的、每个任务运行到结束为止的操作 系统。协议栈中各层的功能最终是以独立的几个任务来实现 的,采用任务轮询机制进行任务调度。系统硬件以及各协议层初始化之后,系统进入任务轮询。 若有外部或内部事件发生,将唤醒系统。通过读取任务事件 标志位,选择任务就绪队列中优先级最高的任务,然后执行 相关的任务事件处理函数。事件处理结束后系统继续进入休眠模式。系统休
8、眠唤醒机 制是实现网络节点低功耗模式的基础。OSAL 任务调度机制如 图 2 所示,优先级相对较高的新任务不会抢占正在运行的任务 时间片,只有等待当前任务运行完后才能执行。在 Z-Stack 协议 栈应用层的开发中,通过创建 OSAL 任务运行用户应用程序。 添加一个 OSAL 任务必须实现 2 个函数:任务初始化函数和任 务事件处理函数。其中,任务初始化主要步骤3如下:(1初始化系统任务事件处理函数列表数组 tasksArr; (2为每个任务分配唯一的任务 ID 和分配堆栈内存; (3通过 afRegister(函数为网络中的设备在 AF 层注册一致的应用对象;基金项目:国家“863”计划基
9、金资助项目(2008AA10Z201;“十一 五”支撑计划基金资助项目(2006BAD11A10作者简介:李 军(1987,男,硕士研究生,主研方向:嵌入式系 统及应用;黄 岚、王忠义,教授收稿日期:2010-07-12 E-mail:biomed_hl122 计 算 机 工 程 2011 年 4 月 5 日(4注册相应的 OSAL 或 HAL 系统服务。 任务事件的处理则是通过创建 WSN_ProcessEvent(函数实现的。图 2 Z-Stack 协议栈运行流程3 基于 Z-Stack 的无线传感器网络系统3.1 系统框架介绍 本系统利用无线传感器网络实时获取农作物生理参数和环境参数的传
10、感器数据,通过串行通信接口(RS232传送至数 据监控中心。部署在数据服务器上的监控软件对无线传感器 网络中的数据采集节点(传感器节点的整体运行情况进行监 控,并将数据存储至数据库,为以后的数据分析、数据挖掘 和决策做原始数据上的准备。具体分为数据采集、数据传输 以及数据管理 3 个阶段。整个数据采集监控系统如图 3 所示。图 3 基于 Z-Stack 的无线传感器网络系统数据采集节点每隔固定时间采集 6 路传感器参数,数据 采集间隔期间进入低功耗休眠模式,以降低节点的功耗,延 长其使用寿命。数据采集节点采集的数据通过多跳路由方式 无线传送给协调器节点。协调器节点接收到数据后,进行数 据校验,
11、然后将数据格式化为符合串行通信的数据格式,最 后通过串口线(RS232将数据上传给数据服务器的串口数据缓冲区。数据管理是通过网络监控管理软件从串口数据缓冲 区实时获取协调器节点上传的数据并作相关的数据呈现,同 时存入数据库。实现对数据采集节点的每路传感器数据的存 储、动态实时显示、网络拓扑图的绘制、历史数据查询和采 集时间间隔的设置。3.2 系统实现3.2.1 应用层任务事件的设计与实现在 Z-Stack 协议栈中,组网、网络维护和路由的具体工 作是通过 DLL 的方式来提供的。OSAL 的引入使得物理层、 MAC 层和网络层的通信原语被屏蔽。因此,基于 Z-Stack 协 议栈的开发实质上就
12、简化成在应用层做基于 OSAL 的程序开 发。消息的响应和任务的调度均由 OSAL 来实现。本研究中 在应用层的任务事件处理函数中添加 3 个事件处理模块,分 别为属于系统事件的无线数据接收事件、网络状态变化事件 和属于用户自定义的数据采集事件。当网络节点组建网络或加入已创建好的无线传感器网络 时,将触发应用层任务中的网络状态变化事件;在网络状态 变化的事件处理函数中触发网络节点数据采集事件,实现节 点入网后便立即开始采集传感器的数据。在数据采集事件中 通过设置超时定时器,超时时间到时再次触发数据采集事件, 实现周期性的数据采集;当网络节点接收到无线数据时,将 触发无线数据接收事件。应用层任务
13、的上述各事件得到处理 后,使其进入休眠状态。3.2.2 数据采集事件处理函数的实现 为实现传感器数据的周期性采集,在采集完一次传感器数据后通过调用 osal_start_timerEx(taskID,event_id,timeout_ value函数使任务超时等待一定时间,超时时间到后再次触发 数据采集事件。其中超时等待时间可自由设定。由于 timeout_ value 的数据类型是 unsigned int 型,其单位是毫秒,因此 osal_ start_timerEx(函数设置的最长时间间隔为 65 535 ms。理论上不满足实际应用中长时间(如 1 h休眠的需求,于是采用“计 数求模”的
14、方法实现。首先在全局变量中设置被模数 cnt 和模数 md 的初值。当处理数据采集事件时,判断 cnt 是否能被 md 整除。若能被整除,则执行数据采集子函数,否则不执行 数据采集操作。每次处理数据采集事件 cnd 加 1,并调用 osal_start_timerEx(函数,超时等待 3 s 并再次触发数据采集事件。依此,通过设置 md 的初值实现了长时间休眠的要求。 若 md 设置为 1 200,则数据采集间隔时间为 3 600 s,即 1 h。本研究中每路传感器数据由 2 个字节组成,数据采集节点成功采集 6 路传感器数据后,将数据存入数据发送缓冲区。 数据采集节点除了获取传感器的数值之外,还需要获取一些 与本节点相关的描述网络拓扑状态的信息和校验信息。基于 此,为数据采集节点统一设计了无线发送和无线接收数据包 格式,包含的信息有包头、包尾、应用节点编号、本节点网 络地址、父节点网络地址、设备类型和 6 个传感器数据,共21 个字节。当数据包中的数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025建筑施工技术创新总结与发展计划
- 2025幼儿园防溺水培训与演练计划
- 二零二五版食堂窗口经营合同书
- 园林绿化施工的文明措施与环境保护
- 销售经理聘用合同二零二五年
- 二零二五草原承包合同范例新
- 二零二五版停车场的租赁合同书
- 智能快递柜投放合作协议
- 2025小学一年级德育实践活动计划
- 翻新工程施工合同
- 学校学生特异体质调查表
- 食用菌资源的开发及利用
- 二年级下册科学课件 11 不断发展的人工产品 人教版(26张PPT)
- 三.国际法习题之经典案例分析
- vmvare虚拟化平台巡检细则和方法
- 个人求职简历两页 (46)应聘履历参考模板可编辑修改
- 水下混凝土浇筑导管水密试验
- 非连续性文本阅读训练(六年级语文复习)
- 市政工程监理规划范本(完整版)
- 剪刀式升降机
- 渤海湾盆地构造演化及其油气意义
评论
0/150
提交评论