Zigbee技术规范与协议栈分析
伴随无线传感器网络的迅猛发展,Zigbee技术作为最近发展起来的一种短距离无线通信技术,以其低功耗、自组织、安全可靠、支持大量节点等优势,被业界
认为是最有可能应用在工控场合的无线方式。到目前为止,节点已经应用于工业监控、智能家庭、安全医疗等多个领域,具有很大的发展空间。
Zigbee协议栈(Z-STACK)作为Zigbee技术的核心,是开发802.15.4/Zigbee必须掌握的关键技术。协议栈发展至今已有四种版 本(见表1),尽管实现功能越发完善,但是并未移植标准的操作系统统一任务调度,嵌套相当复杂,而显得源代码的可读性和可操作性较差,开发者在理解和实现 协议的过程中仍会遇到很多困难。本文通过对最典型的、起到承上启下作用的Zigbee-2006协议栈的解读,对协议程序的运行过程提供一种准确的解释分 析,降低开发者的阅读难度和工作量,为协议栈自身的发展、Zigbee设备的开发及应用的推广提供强有力的技术支持。
1 协议栈体系结构及规范
Zigbee协议栈体系结构如图1所示[1],
协议栈的层与层之间通过服务接入点(SAP)进行通信。SAP是某一特定层提供的服务与上层之间的接口。大多数层有两个接口:数据实体接口和管理实体接
口。数据实体接口的目标是向上层提供所需的常规数据服务;管理实体接口的目标是向上层提供访问内部层参数、配置和管理数据的服务[2]。
1.1 物理层服务规范
物理层通过射频固件和硬件提供MAC层与物理无线信道之间的接口。从概念上说,物理层还应包括物理层管理实体(PLME),以提供调用物理层管理功能的管
理服务接口;同时PLME还负责维护物理层PAN信息库(PHY
PIB)。物理层通过物理层数据服务接入点(PD-SAP)提供物理层数据服务;通过物理层管理实体服务接入点(PLME-SAP)提供物理层管理服务。
1.2 MAC层服务规范
MAC层提供特定服务会聚子层(SSCS)和物理层之间的接口。从概念上说,MAC层还应包括MAC层管理实体(MLME),以提供调用MAC层管理功能
的管理服务接口;同时MLME还负责维护MAC PAN信息库(MAC
PIB)。MAC层通过MAC公共部分子层(MCPS)的数据SAP(MCPS-SAP)提供MAC数据服务;通过MLME-SAP提供MAC管理服务。
这两种服务通过物理层PD-SAP和PLME-SAP提供了SSCS和PHY之间的接口。除了这些外部接口外,MCPS和MLME之间还隐含了一个内部接
口,用于MLME调用MAC数据服务。
1.3 应用层规范
Zigbee应用层包括APS子层、ZDO(包含ZDO管理平台)和厂商定义的应用对象。应用支持子层(APS)提供了网络层(NWK)和应用层
(APL)之间的接口,功能是通过ZDO和厂商定义的应用对象都可以使用的一组服务来实现。数据和管理实体分别由APSDE-SAP和APSME-SAP
提供。APSDE提供的数据传输服务在同一网络的两个或多个设备之间传输应用层PDU;APSME提供设备发现和绑定服务,并维护管理对象数据库——
APS信息库(AIB)。
1.4 网络层规范
网络层应提供保证IEEE 802.15.4
MAC层正确工作的能力并为应用层提供合适的服务接口。数据和管理实体分别由NLDE-SAP和NLME-SAP提供。具体来说,NLDE提供的服务:一
是在应用支持子层PDU基础上添加适当的协议头产生网络协议数据单元(NPDU);二是根据路由拓扑,把NPDU发送到通信链路的目的地址设备或通信链路
的下一跳。而NLME提供的服务包括配置新设备、创建新网络、设备请求加入/离开网络和Zigbee协调器或路由器请求设备离开网络、寻址、近邻发现、路
由发现、接收控制等。网络层的数据和管理服务由MCPS-SAP和MLME-SAP提供了应用层和MAC子层之间的接口。除了这些外部接口,在NWK内部
NLME和NLDE之间还有一个同隐含接口,允许NLME使用NWK数据服务。
2 协议栈程序分析
2.1 运行环境
软件环境:IAR 7.20、串口调试工具、数据分析仪以及各硬件驱动软件等。
硬件环境:PC(.NET 1.1 架构, Windows 98以上,1个串口,1个USB接口)、CC2430 ZigBee开发板(至少包括一个网络协调器和一个终端设备,验证阶段可省略路由设备)等。
2.2 程序流程
将各开发板与PC正确连接,运行各软件,当程序烧至开发板后,启动即调用主函数ZSEG int main( void
)。主函数的主要工作流程如图2所示。需要注意的是,Zigbee协议栈的精华在于操作系统OSAL的任务调度,因此,在进入主循环处理函数之前的准备工
作中,操作系统的初始化尤为重要。osalTaskInit()、osalAddTasks()、osalInitTasks()三个函数的调用构成了协
议栈的七大任务列表,其具体实现结果如图3。
- 光缆结构及工艺的发展(03-04)
- 基于Zigbee的远程家庭监护系统的应用研究(04-08)
- 触摸屏基本原理(04-16)
- 无线传感器网络的服务质量保障技术(10-16)
- 网络自组织通信模式和技术研究综述(10-26)
- 视频传感器网络覆盖控制(Coverage Control)问题研究概述(11-24)