Zigbee系列(概览)
Zigbee技术特点
- 低速率: 数据传输速率只有20~250kb/s, 2.4GHZ提供250kb/s, 915MHz对应40kb/s, 868Mhz对应20kb/s
- 低功耗:睡眠模式设备使用电池供电,可使用6个月~几年。如传感器、门锁等。
- 低成本:协议简单,对硬件要求低,如TI使用8051单片机实现zigbee软件协议栈。
- 容量大:理论上最大可接入65000个设备,实际接入过200~1000设备。
- 时延短:指的是从睡眠状态转入工作状态接入网络,一般只需几十毫秒。蓝牙和wifi设备一般需要3~10s
- 近距离:10~100m之间点对点通信,大范围覆盖需要router设备中转实现。
- 安全高:提供三级安全模式。
- 传输可靠:CSMA/CA 冲突避免,MAC层需要接收方确认,重发机制(ARQ)APS层和应用层均可选确认机制。
Zigbee协议栈结构
来源: 《docs-05-3474-21-0csg-zigbee-specification.pdf》

Zigbee PHY
Zigbee的PHY和MAC层使用802.15.4标准。
物理层PHY包含的功能包括:
- 射频收发器控制
- 当前信道的能量检测
- 信道空闲检测与冲突避免CSMA-CA
- 信道频率选择
- 数据收发
标准定义了几种类型的PHY

2450MHz PHY 处理顺序:


…

O-QPSK 正交 4相移键控: 使用4个相位代表不同数据。


Zigbee MAC
MAC层由802.15.4标准制定,zigbee只需要支持部分标准。
- 同步网络、非同步网络(zigbee PRO仅支持非同步网络)
支持的服务列表:

Zigbee网络层
标准由 zigbee协议规范 指定
提供的服务包括:
- 设备配置: 包括形成网络、加入网络等
- 建立网络
- Join、rejoin、leave网络
- 地址分配
- 邻居发现
- 路由发现
- 报文路由
- 报文接收控制
Zigbee APS
标准由 zigbee协议规范 指定
提供的服务包括:
- 协议格式封装 (application layer PDU)
- Binding
- Group address filter
- 可靠传输:重传机制
- 重复报文识别:序号
- 报文分片、重组
- 安全管理
Zigbee 应用层框架
Device profile定义设备之间交互的方式。如Home Automation就是其中的一个profile
功能包括:
- 设备和服务发现
- End device bind
- Bind、unbind
- Binding table维护
- Network management
各种具体功能定义参考 zigbee-cluster-library-specification
如:灯、开关、窗帘。
Zigbee系列(概览)的更多相关文章
- Zigbee系列(end device)
End device设备分为睡眠和非睡眠两种(RxOnWhenIdle标记不同). 入网时的association请求,会使用这个标记. 共同特性 子节点多次发送数据失败(无回应),发送孤点扫描(re ...
- Zigbee系列(网络)
Zigbee设备类型 Coordinator:形成网络,选择信道.PANID.允许其他设备加入等. Router: 作为路由节点,转发报文. End Device: 终端节点,不转发报文. Zigbe ...
- Zigbee系列(路由机制)
参考文档: ug103-02-fundamentals-zigbee.pdf section4 zigbe routing concepts docs-05-3474-21-0csg-zigbee-s ...
- [ZigBee] 16、Zigbee协议栈应用(二)——基于OSAL的无线控制LED闪烁分析(下)
说在前面:上一篇介绍了无线LED闪烁实现的OSAL部分,本篇介绍如何实现无线数据收发及数据处理: 上一篇是用SI跟着流程查看源码,我个人认为以架构的思维去了解代码能让人更清晰 ::ZMain.c程序入 ...
- [ZigBee] 15、Zigbee协议栈应用(一)——Zigbee协议栈介绍及简单例子(长文,OSAL及Zigbee入门知识)
1.Zigbee协议栈简介 协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收.协议栈是协议的具体实现形式,通俗讲协议栈就是协议和用户之间的一个接口,开发人员通过使用协议栈来使用 ...
- [ZigBee] 14、Zigbee无线通信前奏——BasicRF 简单无线点对点传输协议
本工程不带zigbee协议栈,作为过渡 实验现象: 一个EB2530(终端A)定义为发射模块,另一个EB2530(终端B)定义为接收模块. 按EB2530(终端A)上的按键,无线控制另一个EB2530 ...
- [ZigBee] 13、ZigBee基础阶段性回顾与加深理解——用定时器1产生PWM来控制LED亮度(七色灯)
引言:PWM对于很多软件工程师可能又熟悉又陌生,以PWM调节LED亮度为例,其本质是在每个周期都偷工减料一些,整体表现出LED欠压亮度不同的效果.像大家看到的七色彩灯其原理也类似,只是用3路PWM分别 ...
- [ZigBee] 12、ZigBee之看门狗定时器——饿了就咬人的GOOD DOG
引言:硬件中的看门狗,不是门卫的意思,而是一只很凶的狗!如果你不按时喂它,它就会让系统重启!这反而是我们想要的功能~ 1.看门狗概述 看门狗定时器(WDT,Watch Dog Timer)是单片机的一 ...
- [ZigBee] 11、ZigBee之睡眠定时器二
1.前言 上一节讲了Zigbee的睡眠定时器利用外部按键使系统从休眠态唤醒到工作态,其核心在于: 61 void SysPowerMode(uchar mode) 62 { 63 if(mode &g ...
随机推荐
- Python 模块化 自定义模块 (四)
自定义模块 一个.py文件就是一个模块 创建以下三个文件: 运行test.py ,查看运行结果. #test.py print("this is test module") imp ...
- rocketmq搭建
maven参数: mvn -Prelease-all -DskipTests clean install -U
- 基于MySql数据库的单表与多表联合查询
这里以学生 班级 身份证 以及课程为例 1,启动MySql数据库 开启服务 2.1.0新建一张班级表 备注:CHARSET = UTF8 (指定编码格式为utf8 防止中文乱码) /*班级表*/ C ...
- 程序猿,你为什么须要一台mac?
用了Mac ,我再也回不去Windows. A:帅哥,我电脑坏了. B:重装系统吧.包好! 重装系统 windows系统解决全部系统问题的一剂神药.Mac 时代再也不须要做这种劳命伤財的事情了,没有什 ...
- linux的虚拟文件系统VFS
虚拟文件系统(virtual file system),别名虚拟文件系统开关,是linux中的一个软件层,向用户空间提供文件系统操作接口. VFS包含的系统调用包括open(2).stat(2).re ...
- vue 路由缓存 路由嵌套 路由守卫 监听物理返回
最近开发vue项目,遇到的一些问题,这里整合一下,看到一些博客已经有写相关知识,然后自己再次记录一下. 这是关于vue路由相关比较常见的问题,以后遇到相关路由的问题,会不断更新这篇博客. 需求1:从填 ...
- SaltStack 自动化工具
1.服务端安装master: # yum -y install salt-master # yum -y install salt-minion 2.客户端安装minion: # yum -y ins ...
- QueryRunner cannot be resolved to a type:关于包不能正常导入的问题
在操作一个功能模块的时候,出现一个问题: 我原则是按着项目指导一步一步走的,但却出现, QueryRunner cannot be resolved to a type,这个问题应该属于Xxx can ...
- PyCharm 2018最新激活码通用
通用:Window.Mac.Ubantu都稳定有效,关键是这种激活方式不会产生其他影响 缺点:需要修改hosts文件 **1.修改hosts文件**将 0.0.0.0 account.jetbrain ...
- Java并发编程(十一)常用工具
Java为开发提供了很多有用的工具类,这些工具类可以帮助我们更加高效的编写并发程序,本篇我们将介绍这些实用工具的用法. ThreadLocal ThreadLocal类用于解决多线程共享一个变量的问题 ...