zigbee协议详解_zigbee定义

zigbee协议详解_zigbee定义ZigBee协议简介(一)注意:在没有确切把握的情况下,不要试图去改变这些网络参数这是一篇在听课中写的博客,较为凌乱文章目录ZigBee协议简介(一)物理层(PHY)规定了什么能用来干嘛MAC层(媒体接入控制层)规定了什么能用来干嘛网络层组网拓扑结构网络层规范能用来干嘛应用层应用支持子层APS应用框架AFZigBee设备对象ZDO硬件平台TI-CC2530Z-Stack总结今天来讲讲久违的…_zigbee通信协议

ZigBee协议简介(一)

注意:在没有确切把握的情况下,不要试图去改变这些网络参数

这是一篇在听课中写的博客,较为凌乱

文章目录

  • ZigBee协议简介(一)
    • 物理层(PHY)
      • 规定了什么
      • 能用来干嘛
    • MAC层(媒体接入控制层)
      • 规定了什么
      • 能用来干嘛
    • 网络层
      • 组网拓扑结构
      • 网络层规范
      • 能用来干嘛
    • 应用层
      • 应用支持子层APS
      • 应用框架AF
      • ZigBee设备对象ZDO
    • 硬件平台TI-CC2530
    • Z-Stack
    • 总结

今天来讲讲久违的ZigBee

zigbee协议详解_zigbee定义

ZigBee的名字源自蜜蜂八字舞,蜜蜂(Bee)依靠嗡嗡(Zip)和同伴传递方位信息,依靠同伴接力形成通信网络。ZigBee的网络层可以说就是通过这个来定义的。

zigbee协议详解_zigbee定义

从上图我们可以看见,其实IEEE只确定了ZigBee的物理层和MAC层,就是只定义了物理通信上要用到的通信协议和通信频段。剩下的都是由ZigBee联盟来确定的。我们由下图来详解一下
zigbee协议详解_zigbee定义

物理层(PHY)

规定了什么

  1. 频段:868MHz(欧洲),915MHz(美国),2495MHz(Global)使用直接序列扩频(DSSS)
  2. 信道:27个,分别分为:868MHz(k=0),915MHz(k=1-10),2495MHz(k=11-26)
  3. 速度:868MHz(20kb),915MHz(40kb),2495MHz(250kb+)
  4. 物理层协议数据单元(PHY Protocol Data Unit ,PPDU ) 分为同步头,物理帧头和物理帧负载(PSDU)

能用来干嘛

  1. 激活和休眠射频收发器
  2. 信道能量检测
  3. 检测接收数据包的链路质量指示(Link Quality Indication ,LQI)
  4. 空闲信道评估(Clear Channel Assessment ,CCA)
  5. 收发数据

在概念上,物理层的收发数据还包括了数据服务和管理(维护)服务,和MAC层分别的接口叫做物理层数据服务接入点(PHY Data – Service Access Point , PD-SAP)和物理层管理实体服务接入点(PHY Data – Service Access Point , PD-SAP)和物理层管理实体服务接入点(Physical Layer Management Entity Service Access Point , PLME-SAP)

MAC层(媒体接入控制层)

规定了什么

  1. 规定了4种帧结构:信标帧
    zigbee协议详解_zigbee定义
    数据帧
    zigbee协议详解_zigbee定义
    确认帧
    zigbee协议详解_zigbee定义
    和MAC命令帧
    zigbee协议详解_zigbee定义

详见[MAC协议层详解](https://www.cnblogs.com/hzl6255/p/9846764.html)

  1. 使用CSMA-CA机制访问物理信道
  2. 如果设备是协调器,需要产生网络信标
  3. 支持时槽保障(Guaranteed Time Slot ,GTS)机制

能用来干嘛

  1. 协调器产生并发送信标,普通设备根据协调器的信标帧与协调器同步
  2. 保证信道的通信安全
  3. 支持PAN(个域网络)的关联和取消关联

概念上,MAC层也像物理层一样具有MAC层管理实体(MLME),他和网络层之间的数据交换便是(MLME-SAP),当然在MLME中,交换的是管理MAC层信息。在MAC层还有一个MAC公共部分子层(MCPS)来与网络层进行数据交换(MCPS-SAP)

网络层

网络层负责拓扑结构的建立和维护,命名和绑定服务,从而协同地完成寻址,路由,传送数据以及安全等不可或缺的任务,所以网络层是ZigBee的核心部分。

组网拓扑结构

在ZigBee中有三种角色-协调器,路由器和末端节点,分别对应着蜂群的蜂后,雄峰和工蜂。协调器在MAC层就已经提及过了,用来提供整个网络的同步问题(不进行数据交换,和蜂群一般)。而路由器则负责联系自己周围的末端节点,并协调他们进行通信。

ZigBee中支持星状,树状和网状的拓扑结构,这个可以在硬件中直接设置。
ZigBee网络架构详解

网络层规范

正如物理层和MAC层,我们可以看到整个ZigBee的协议中在每一层都存在数据实体和管理实体,在网络层也不例外。ZigBee协议的网络层划分为网络层数据实体(Network Layer Data Entity , NLDE)和网络层管理实体(Network Layer Manage Entity ,NLME)都还有相关的数据交换(管理)的SAP服务。

正如其名,他们相关的功能如下:
NLDE:

  1. 产生网络层协议数据单元(NPDU)
  2. 提供基于拓扑结构的路由策略

NLME:

  1. 配置新设备
  2. 建立网络
  3. 加入和离开网络
  4. 寻址
  5. 邻居发现
  6. 路由发现
  7. 接受控制

对应地,他们也对应着网络层的两种帧结构:数据帧和命令帧。因为这是课堂上做的,找图不太方便,还请大家自己找图了解。

能用来干嘛

  1. 通过添加不同的协议头能够从应用层生产网络层的PDU,即NPDU
  2. 确定网络的拓扑结构
  3. 配置一个新的设备,可以是拓扑结构中的各个角色
  4. 建立并启动网络
  5. 加入或离开网络
  6. ZigBee的协调器和路由器能为加入网络的设备分配空间
  7. 发现并记录邻居表,路由表
  8. 信息的接受控制,同步MAC子层或直接接收信息

应用层

ZigBee应用层有三个组成部分:应用支持子层(Application Support Sub-Layer,APS),应用框架(Application Framework ,AF)和ZigBee设备对象(ZigBee Device Object ,ZDO)

应用支持子层APS

跟之前提的一样,APS子层包含,APS数据实体(APSDE)和相应的服务接入点(APSDE-SAP)还有APS管理实体(APSME)和相应的服务接入点(APSME-SAP)。APS主要是用来应用层和网络层的接口用的,APSDE提供在同一网络应用实体之间的数据传输机制,APSME提供多种服务给应用对象。

应用框架AF

在ZigBee应用中,AF提供了两种标准服务类型。一种是键值对(Key Valve Pair ,KVP)和报文(mesage,MSG)。相应地里面还涉及到较多的属性,我们在Z-stack中再继续介绍

ZigBee设备对象ZDO

其实就是高度抽象的网络端点,主要功能集中在网络管理和维护上,里面包含了整个端点,网络的全部信息可供查询。

硬件平台TI-CC2530

  1. 劳烦自查百度及datasheet,不背书
  2. 硬件资源可见下图

zigbee协议详解_zigbee定义

Z-Stack

显然,Z-stack是TI公司开放的ZigBee协议栈,那么现在问题来了,这么好的协议栈,要怎么来使用呢?
这里先放一张好图,详情且听下回分解

zigbee协议详解_zigbee定义

总结

写得不是很深入,后面会写代码的时候我们再来,在刀锋上认识ZigBee

如果你觉得有丶收获的话

今天的文章zigbee协议详解_zigbee定义分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/58213.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注