Zigbee 知识库
物联网通信协议核心概念详解
1. 技术体系概览
Zigbee 是一种低速、低功耗、短距离的无线通信技术。它的名字来源于蜜蜂的“八字舞”(ZigZag),寓意着节点之间像蜜蜂一样通过“接力”的方式传递信息(Mesh 组网)。
低功耗
终端设备休眠时电流仅微安级,两节电池可工作数月甚至数年。
Mesh 组网
自组织、自愈合。如果一条路径断了,数据会自动寻找新的路径传输。
安全可靠
采用 AES-128 加密算法,提供数据完整性检查和鉴权功能。
大容量
一个网络理论上可以容纳 65535 个节点(实际受限于路由表和内存)。
2. Zigbee 协议 vs Z-Stack
Zigbee 标准
由 Zigbee 联盟(现 CSA 联盟)制定的一套规范。
- ✓ 定义了“要做什么”
- ✓ 类似 TCP/IP 标准
- ✓ 基于 IEEE 802.15.4
Z-Stack
由 Texas Instruments (TI) 公司编写的、符合 Zigbee 标准的代码库实现。
- OSAL 操作系统抽象层: Z-Stack 的核心,通过轮询方式实现类似多任务的调度机制。
- HAL 硬件抽象层: 隔离底层硬件(如 CC2530 芯片),方便上层应用开发。
- AF 应用框架: 开发者主要在此层编写自己的业务逻辑代码。
类比理解: 如果 Zigbee 是“交通法规”,那么 Z-Stack 就是 TI 公司生产的“遵守交通法规的自动驾驶系统”。
3. ISM 频段与信道
什么是 ISM 频段?
ISM (Industrial Scientific Medical) 是工业、科学和医疗专用的无线电频段。这些频段是免许可证的,只要发射功率符合规定,任何人都可以使用。
信道 (Channels)
在 2.4GHz 频段下,Zigbee 划分了 16 个信道(Channel 11 ~ 26)。每个信道带宽 2MHz,信道间隔 5MHz。
* 绿色信道 (15, 20, 25, 26) 通常不易受到 WiFi 干扰
4. PAN ID (网络号)
什么是 PAN ID?
PAN ID 是 Zigbee 网络的“身份证号”。就像你家的 Wi-Fi 名称 (SSID) 用来区别邻居的 Wi-Fi 一样,PAN ID 用来区分同一个空间内不同的 Zigbee 网络。
格式
16位二进制数 (例如: 0x1A2B)
范围
0x0000 ~ 0x3FFF
PAN ID 的两种设置方式
指定 ID (固定)
在代码中硬编码 (例如 `0x1234`)。优点是网络固定,缺点是如果邻居也用了这个 ID,会产生冲突。
0xFFFF (自动/广播)
如果在协调器设置为 `0xFFFF`,它会扫描当前环境,自动选择一个未被使用的 PAN ID。这是最安全的做法。
5. 地址机制 (MAC vs NWK)
Zigbee 设备同时拥有两个“名字”。一个像身份证号(永久),一个像公司工号(入职时分配)。
| 特性 | IEEE 地址 (长地址) | 网络地址 (短地址) |
|---|---|---|
| 长度 | 64-bit | 16-bit |
| 唯一性 | 全球唯一 | 网内唯一 |
| 分配 | 出厂固化 | 入网分配 |
6. 网络拓扑交互演示
Zigbee 组网模拟器
点击空白区域放置设备
当前工具: 无
一、核心背景:ZigBee 与 Z-Stack
在解释具体概念前,先明确基础框架:
- ZigBee:是基于 IEEE 802.15.4 标准的低功耗、低速率、短距离无线通信协议,主打物联网场景(如智能家居、工业传感)。
- Z-Stack:TI(德州仪器)推出的 ZigBee 协议栈实现,是目前最主流的 ZigBee 开发底层软件,封装了 IEEE 802.15.4 和 ZigBee 协议的核心逻辑,开发者基于它开发 ZigBee 设备(协调器、路由器、终端)。
- ISM 频段:Industrial Scientific Medical(工业 / 科学 / 医疗)频段,是全球免许可、免费使用的无线频段,ZigBee 主要使用其中的 2.4GHz 频段(全球通用,共 16 个信道),部分地区还支持 868MHz(欧洲)、915MHz(北美)。
二、核心概念详解
1. ISM 信道(Channel)
- 定义:ISM 频段被划分成多个 “信道”(频率子段),每个信道对应固定的中心频率,是 ZigBee 设备通信的 “频率通道”。
- 关键细节:
- ZigBee 2.4GHz 频段的信道范围是 11~26(共 16 个),每个信道间隔 5MHz,例如:
- 信道 11:2405MHz
- 信道 15:2425MHz
- 信道 26:2480MHz
- 作用:同一网络内的所有设备必须工作在同一个信道才能通信;不同网络可通过不同信道减少干扰(但 2.4GHz 同时被 Wi-Fi(1/6/11 信道)、蓝牙占用,需规避干扰)。
- 特点:信道是 “物理层” 参数,决定无线信号的传输频率。
2. PAN ID(网络号 / 个人区域网标识)
- 定义:PAN(Personal Area Network)ID 是 ZigBee 网络的唯一逻辑标识,也叫 “网络号”,是MAC 层的核心参数。
- 关键细节:
- 取值范围:0x0000 ~ 0xFFFF(16 位整数),其中 0xFFFF 是广播 PAN ID(用于设备扫描网络)。
- 作用:区分同一信道下的多个 ZigBee 网络 —— 即使多个网络共用一个信道,只要 PAN ID 不同,设备就不会混淆彼此的数据包。
- 分配规则:ZigBee 协调器(网络创建者)会随机 / 手动指定一个未被占用的 PAN ID;终端 / 路由器加入网络时,需匹配目标网络的 PAN ID。
- 冲突处理:若同一信道内检测到 PAN ID 冲突,协调器可重新分配 PAN ID。
3. ZigBee 各类地址
ZigBee 设备有两种核心地址,分别用于不同场景,类比 “身份证号(唯一)” 和 “门牌号(网络内唯一)”:
| 地址类型 | 定义 | 位数 | 作用场景 | 特点 |
| 64 位扩展地址 | IEEE 地址 / MAC 地址 | 64 位 | 全球唯一标识(设备出厂固化) | 类似网卡 MAC 地址,烧录后不可改,用于设备配对 / 绑定 |
| 16 位短地址 | 网络地址 / 逻辑地址 | 16 位 | 网络内唯一标识(协调器分配) | 节省通信带宽,网络内通信优先使用,离开网络失效 |
- 补充说明:
- 64 位扩展地址:格式如
00:12:4B:00:12:34:56:78,由芯片厂商分配,全球无重复,是设备的 “永久身份”。 - 16 位短地址:
- 协调器的短地址固定为
0x0000; - 路由器 / 终端加入网络时,协调器分配唯一的短地址(如
0x0001、0x0002); - 短地址范围:0x0001 ~ 0xFFFE(0xFFFF 为广播地址,发给网络内所有设备)。
- 通信流程:设备首次配对时用 64 位地址识别,后续通信用 16 位短地址(减少数据包长度,降低功耗)。
4. 其他关联概念(补充)
- 协调器(Coordinator):ZigBee 网络的创建者和管理者,负责分配 PAN ID、短地址、管理信道,一个网络只能有 1 个协调器。
- 路由器(Router):扩展网络覆盖范围,转发数据包,可连接终端 / 其他路由器。
- 终端(End Device):感知 / 控制设备(如传感器、灯),功耗低,依赖协调器 / 路由器接入网络。
- 绑定(Binding):设备间的逻辑关联(如 “传感器触发灯开关”),绑定表中存储双方的 64 位地址,即使短地址变化也能通信。
三、核心关联逻辑
plaintext
ISM频段(2.4GHz)→ 划分信道(11~26)→ 同一信道内,PAN ID区分不同网络 → 同一网络内,16位短地址区分不同设备 → 全球范围,64位扩展地址唯一标识设备
四、实际开发中的应用
- 初始化协调器时,需配置信道(如默认 11)和 PAN ID(如 0x1234);
- 终端加入网络时,先扫描指定信道的所有 PAN ID,选择目标 PAN ID 加入;
- 设备通信时,数据包头部包含:信道(物理层)→ PAN ID(MAC 层)→ 16 位短地址(网络层);
- 规避干扰:若 Wi-Fi 用 11 信道,ZigBee 可选择 15/20/25 信道,减少同频干扰。
总结:这些参数从 “物理频率(信道)” 到 “网络标识(PAN ID)” 再到 “设备标识(地址)”,构成了 ZigBee 网络通信的三层核心逻辑,是 Z-Stack 开发中必须配置的基础参数。
