Zigbee协议与开发-APL层解析

 

Zigbee协议与开发-APL层解析

分类: WSN/Zigbee/NS2   600人阅读  评论(0)  收藏  举报

APL层是最高层,由三部分组成:APS即应用支持层、ZDO及Application Framework框架。三者图如下所示:

Zigbee协议与开发-APL层解析_第1张图片

其中APS提供NWK与APL层的接口,APS同样提供数据和管理两种服务,分别由APSDE及APSME完成。而应用框架则是用于Host Application Objects(AO)的环境,应用对象AO一般由生产商开发,用于定制不同的应用。单一设备中最多可以有240个AO。ZDO提供APS层与应用框架层间的接口,它也提供了Zigbee协调栈中所有应用可以使用的通用接口,比如通过ZDO可以配置节点成为协调器、路由器或者终端。

 

Application Framework

Zigbee支持利用Application Profiles来开发应用,每一个Profile由一个Profile ID来识别,只有供应商才能申请到一个16位的Profile ID。一个Profile结构如下:

Zigbee协议与开发-APL层解析_第2张图片

ZDO

ZDO负责初始化APS,NWK及安全子层。类似于Application Profile,ZDO也有一个Profile,叫做Zigbee Device Profile。ZDP主要实现以下几个功能:

1. Device & Service Discovery;

2. Binding Management

3. Networking Management

ZDO包括两类对象:网络管理器和安全管理器。前者包括与网络相关的原语,如NLME。

 ZDO提供的服务由数据包中的ClusterID来指定,该值可以查看Appendix B。

 

APS子层

该层数据格式如下:

Zigbee协议与开发-APL层解析_第3张图片Zigbee协议与开发-APL层解析_第4张图片

而不同类型的APS,例如数据,命令及ACK格式如下,其中最重要的字段是Cluster Identifier:

Zigbee协议与开发-APL层解析_第5张图片

下面以路由器节点代码为例,启动后会Sniffer到以下数据包:

从APS Cluster ID=0x0006可以看出,上述包是一个用于Match_Desc_req。

你可能感兴趣的:(WSN/Zigbee/NS2)