zigbee协议栈结构(zigbee技术与实训教程)

zigbee协议栈结构(zigbee技术与实训教程)

图控大叔

构图传递思想

阅读从未如此简单!!!

01

前言

对于《无线传感网技术》这门课程,小编打算用三篇推文对其进行简要的构图介绍,它们分别是:

《无线传感网技术 | 概述》

《无线传感网技术 | 常见组网模块介绍》

《无线传感网技术 | ZigBee及其协议栈》

《无线传感网技术 | ZigBee及其协议栈》

上车上车,赶紧上车!!!

02

大致目录介绍

对于这篇推文,大体结构上如这张图片所示。

03

重点知识先知道

04

具体内容介绍

1简介

1.1、命名由来

ZigBee名字溯源

构图如下:

1.2、工作频段

知识补充:

1.3、发展历程

2优点

ZigBee的优点

1、极低的系统功耗—->低功耗(特别重要)

2、较低的系统成本

这里指的是:1、ZigBee协议专利免费;2、节点存储和计算能力的不高,对于微控制器的选择具有优势

3、安全的数据传输—->高安全

4、灵活的工作频段—->多信道供开发者切换

5、灵活的网络结构—->支持多种网络拓扑

6、超大的网络容量—->高容量

7、时延短—->低时延

8、近距离

9、低速率

10、自组网能力强—->自组织(考点)

知识补充:ZigBee的缺点:

1、通信距离短。

2、硬件成本较高。芯片、外围器件、2.4G射频器件合起来成本尴尬。

3、信号穿透性不够好。

4、自组网能力。在具体的智能家居场景中,其受开关、插座的位置影响较大。

来点对比图

知识补充

1、无线个域网(WPAN)–>蓝牙、ZigBee和UWB

2、无线局域网(WLAN)–>WiFi

3、无线城域网(WMAN)–>WIMAX(一种通信技术)

4、无线广域网(WWAN)

结论:

1、ZigBee具有低功耗、低复杂度、低成本优势

2、ZigBee数据速率较低,不适合传输大量数据的应用领域

3特征

图控大叔,说了这么多,我还不知道它长啥样呢?

行行行,安排!!!但是要先和你说清楚喔,ZigBee作为一种技术,是需要付托于具体硬件上才能让你看到。

首先来看看ZigBee的标志性图片:

其次来看看实物图:

Zigbee硬件分为三部:

CC2530核心板

协调器底板

路由器底板(考点)

图控大叔,做ZigBee开发,开发板和模块有什么不一样呢?

当然有啦!!!让你看看我给你准备的构图!

图控大叔,那开发板好呢还是模块好呢?

呃….?!怎么说好呢?主要看你开发的侧重点吧,开发板和模块各有各的优势。理由如下:

比如说模块,因为高度集成,基本不用考虑你用什么板子(51,32,还是arduino),也不需要知道什么协议栈函数,因为没有用到。只要在开发时通过查看这个模块的开发手册,将波特率等一些必要的设置弄对,你就可以通过通过串口把相关的AT指令进行写入,真的非常方便。

但是开发板呢,你除了前期在安装上需要花点时间将环境、协议栈弄好外,在具体的开发中你还需要了解相关的协议栈函数,对于C语言功底不扎实的童鞋还说可能在调试的时候对源码的理解有一点点费劲。但是这样也有一个好处,就是你对于这个模块协议栈的相关函数、数据发送流程、数据接收和数据处理会有比较清晰的理解,这个是通过模块做开发无法得到的知识和体会。

4ZigBee协议栈的结构

ZigBee协议分层结构

知识补充

物理层(PHY):定义zigbee设备的工作频段2.4Ghz

介质访问控制层(MAC):负责相邻设备间的单跳数据通信

网络层(NWK):主要实现节点加入或离开网络、接收或抛弃其他节点、路由查找以及传送数据等功能,支持多种路由算法、拓扑结构。

应用程序支持子层(APS)

应用层(APL):由用户开发提供功能服务函数

ZigBee设备对象(ZDO)

协议、协议栈和函数

(个人看法,如有更好表述方法,可以后台留言)

5ZigBee协议组网的特点

想要了解ZigBee协议组网的特点,就要先了解它所支持的网络拓扑结构,想要了解它所支持的网络拓扑结构,就要先了解它的设备节点类型。学习流程如下:

设备节点类型

首先,我们需要知道,ZigBee网络支持两种功能设备:全功能设备(Full-Function Device,FFD)、精简功能设备(Reduced-Function Device,RFD)。全功能设备(FFD)支持 IEEE 802.15.4标准定义的所有功能和特性,并拥有较多的存储资源、计算能力。而精简功能设备(RFD)只支持标准定义的一部分,功能简单,如电灯开关或是被动的红外传感器,它一般不需要传输大量的数据。其对存储器需求量小,只能与FFD设备通信。

构图如下:

说完了设备分类,我们在细分一下,说说节点的分类。

在 ZigBee 网络中,ZigBee 规范将网络节点按照功能划分为 PAN(Personal Area Network)协调器 ZC(ZigBee Coordinator)、路由器 ZR(ZigBee Router)和终端设备 ZE(ZigBee EndDevice)三种类型,其中协调器和路由器均为全功能设备(FFD),终端设备为精简功能设备(RFD)。

构图如下:

部分整理(仅针对ZigBee)

1、FFD–>Full-Function Device

全功能设备

2、RFD–>Reduced-Function Device

精简功能设备

3、PAN–>Personal Area Network

个人局域网

4、ZC–>ZigBee Coordinator

协调器

5、ZR–>ZigBee Router

路由器

6、ZE–>ZigBee EndDevice

终端设备

完整描述

协调器

路由器

路由器主要实现允许设备加入网络、拓展网络覆盖的物理范围和数据包路由的功能。ZigBee路由器拓展网络是指该设备可以作为网络中的潜在父节点,允许更多的路由和终端设备接入网络。其中,路由器最为重要的功能是 “ 允许多跳路由 ”,即使两个设备不在彼此的物理射频范围内,也能通过路由器进行信号的中转和中继,进行通信;路由节点存储路由表,负责寻找、建立及修复数据包路由路径。路由器一般还协助由电池供电的终端设备子节点工作,如缓存子节点数据等。路由器和协调器一般由主电源供电,且经常处于活跃状态。

终端设备

终端设备一般为ZigBee网络边缘设备,它不具备成为协调器和路由器的能力,并常与监控对象连接一起。终端设备一般由于干电池或纽扣电池供电,大部分时间处于休眠状态,发送到设备的数据不能立即被接收,就暂存到其父设备节点,终端设备会定时向其父设备轮询数据;终端设备在向其他节点发送数据时,先将数据交由其父节点设备,然后以父设备的名义进行网络路由。

协调器

路由器

终端设备

网络拓扑结构

ZigBee网络支持星状、树(簇)状和网状三种网络拓扑结构。(考点)

完整描述

星状网络:由一个PAN协调器节点和一个或多个终端设备组成。在星状网络中,所有的终端设备都只与PAN协调器通信。且只允许PAN协调器与终端设备的通信,终端设备和终端设备不能够直接通信,终端设备间的消息通信需通过PAN协调器进行转发,然后再由协调器将消息发送到目标终端设备。

树状网络:由一个PAN协调器和一个或多个星状网络结构组成。终端可以选择加入PAN协调器或路由器。设备能与自己的父节点或子节点直接通信,但与其他设备的通信只能依靠树状节点组织路由进行。

网状网络:类似树状网络。与树状网络的最大区别是网状网络中任意两个路由器都能直接通信,且具有路由功能的节点不用沿着树来通信而可以直接把消息发送给其他的路由节点,但是,不具有路由功能的节点只能依靠其父节点转发消息。同时,路由节点直接互联,由路由表进行消息网状路由。网状网络的优点是减少了消息传输延时,增强了可靠性;缺点是需要更多的存储资源来存储路由表。

星状:

树状:

网状:

组网特点

Zigbee 组网有三个鲜明的特点

1、一个Zigbee 网络的理论最大节点数就是2的16次方也就是65536个节点,远远超过蓝牙的8个和 WiFi 的32个。

2、网络中的任意节点之间都可进行数据通讯。

3、在有模块加入和撤出时,网络具有自动修复功能。

6ZigBee标准框架

ZigBee标准框架:

1、IEEE802.15.4标准定义了最下面的两层:物理层和媒体访间控制子层

2、ZigBee联盟提供网络层和应用层(APL)框架的设计

3、应用层框架包括应用支持子层(APS)、 ZigBee 设备对象和由终端厂商制定的应用对象。

7应用和前景

05

内容补充

大部分内容基本写完了,但是还有部分内容需要补充,补充如下:

网络中有三种通讯模式

1、单播

我和你说悄悄话,别人无法知道。一对一(小编理解)

2、组播

组内成员进行谈话,其他组的成员无法知道。一对一组(小编理解)

3、广播

我们同在一个教室里面(同一个网络里),我讲话大家都知道。一对所有(小编理解)

需复习的部分代码截图

声明:由于小编的学识、时间、精力有限,关于OSAL等更多 ZigBee 相关内容,后期再补发。

06

结尾

这一篇终于整出来了,读者如果对推文中内容、排版有建议,可以到后台留言,在这里小编祝大家逢考必过!!!

发表评论

登录后才能评论