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 ...
随机推荐
- 淡说Linux 的发展史
♦ 1 Linux的简单介绍 Linux与Windows一样都是一套OS(操作系统),Windows界面美观 ,普通用户很容易上手,点点鼠标就能搞定许多操作,而Linux生下来就是为程序员的,故精通 ...
- [Python 网络编程] TCP Client (四)
TCP Client 客户端编程步骤: 创建socket对象 连接到服务端的ip和port,connect()方法 传输数据 使用send.recv方法发送.接收数据 关闭连接,释放资源 最简单的客户 ...
- 【转】实现Http Server的三种方法
一.使用SUN公司在JDK6中提供的新包com.sun.net.httpserver JDK6提供了一个简单的Http Server API,据此我们可以构建自己的嵌入式Http Server,它支持 ...
- PHP+JQUERY+AJAX上传、裁剪图片(2)
<script type="text/javascript"> var imgCut = { imgOpt : { imgPrototypeId : 'imgProto ...
- PAT——1040. 有几个PAT
字符串APPAPT中包含了两个单词“PAT”,其中第一个PAT是第2位(P),第4位(A),第6位(T):第二个PAT是第3位(P),第4位(A),第6位(T). 现给定字符串,问一共可以形成多少个P ...
- C#利用反射动态创建对象 带参数的构造函数和String类型 (转载)
最近笔者有一个想法需要利用反射动态创建对象(如string,int,float,bool,以及自定义类等)来实现,一直感觉反射用不好,特别是当构造函数带参数的时候.MSDN上给出的例子十分复杂,网上的 ...
- linux文件系统写过程简析
linux写入磁盘过程经历VFS -> 页缓存(page cache) -> 具体的文件系统(ext2/3/4.XFS.ReiserFS等) -> Block IO ->设备 ...
- CSS 学习路线(二)选择器
选择器 规则结构: 分两个基本部分 选择器(selector)和声明块(declaration block) 组成 声明块:由一个或多个声明组成,每一个声明都是属性-值对 选择器分为:元素选择器,类选 ...
- 多线程系列之 java多线程的个人理解(二)
前言:上一篇多线程系列之 java多线程的个人理解(一) 讲到了线程.进程.多线程的基本概念,以及多线程在java中的基本实现方式,本篇主要接着上一篇继续讲述多线程在实际项目中的应用以及遇到的诸多问题 ...
- iOS:UITableView相关(18-10-20更)
UITableView用得较多,遇到的情况也较多,单独记录一篇. 一.零散的技巧 二.取cell 三.cell高度 四.导航栏.TableView常见问题相关 五.自定义左滑删除按钮图片 六.仅做了解 ...