Zigbee技术特点

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

Zigbee协议栈结构

来源: 《docs-05-3474-21-0csg-zigbee-specification.pdf》

Zigbee PHY

Zigbee的PHY和MAC层使用802.15.4标准。

物理层PHY包含的功能包括:

  1. 射频收发器控制
  2. 当前信道的能量检测
  3. 信道空闲检测与冲突避免CSMA-CA
  4. 信道频率选择
  5. 数据收发

标准定义了几种类型的PHY

2450MHz PHY 处理顺序:

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

Zigbee MAC

MAC层由802.15.4标准制定,zigbee只需要支持部分标准。

  1. 同步网络、非同步网络(zigbee PRO仅支持非同步网络)

支持的服务列表:

Zigbee网络层

标准由 zigbee协议规范 指定

提供的服务包括:

  1. 设备配置: 包括形成网络、加入网络等
  2. 建立网络
  3. Join、rejoin、leave网络
  4. 地址分配
  5. 邻居发现
  6. 路由发现
  7. 报文路由
  8. 报文接收控制

Zigbee APS

标准由 zigbee协议规范 指定

提供的服务包括:

  1. 协议格式封装 (application layer PDU)
  2. Binding
  3. Group address filter
  4. 可靠传输:重传机制
  5. 重复报文识别:序号
  6. 报文分片、重组
  7. 安全管理

Zigbee 应用层框架

Device profile定义设备之间交互的方式。如Home Automation就是其中的一个profile

功能包括:

  1. 设备和服务发现
  2. End device bind
  3. Bind、unbind
  4. Binding table维护
  5. Network management

各种具体功能定义参考 zigbee-cluster-library-specification

如:灯、开关、窗帘。

Zigbee系列(概览)的更多相关文章

  1. Zigbee系列(end device)

    End device设备分为睡眠和非睡眠两种(RxOnWhenIdle标记不同). 入网时的association请求,会使用这个标记. 共同特性 子节点多次发送数据失败(无回应),发送孤点扫描(re ...

  2. Zigbee系列(网络)

    Zigbee设备类型 Coordinator:形成网络,选择信道.PANID.允许其他设备加入等. Router: 作为路由节点,转发报文. End Device: 终端节点,不转发报文. Zigbe ...

  3. Zigbee系列(路由机制)

    参考文档: ug103-02-fundamentals-zigbee.pdf section4 zigbe routing concepts docs-05-3474-21-0csg-zigbee-s ...

  4. [ZigBee] 16、Zigbee协议栈应用(二)——基于OSAL的无线控制LED闪烁分析(下)

    说在前面:上一篇介绍了无线LED闪烁实现的OSAL部分,本篇介绍如何实现无线数据收发及数据处理: 上一篇是用SI跟着流程查看源码,我个人认为以架构的思维去了解代码能让人更清晰 ::ZMain.c程序入 ...

  5. [ZigBee] 15、Zigbee协议栈应用(一)——Zigbee协议栈介绍及简单例子(长文,OSAL及Zigbee入门知识)

    1.Zigbee协议栈简介 协议是一系列的通信标准,通信双方需要按照这一标准进行正常的数据发射和接收.协议栈是协议的具体实现形式,通俗讲协议栈就是协议和用户之间的一个接口,开发人员通过使用协议栈来使用 ...

  6. [ZigBee] 14、Zigbee无线通信前奏——BasicRF 简单无线点对点传输协议

    本工程不带zigbee协议栈,作为过渡 实验现象: 一个EB2530(终端A)定义为发射模块,另一个EB2530(终端B)定义为接收模块. 按EB2530(终端A)上的按键,无线控制另一个EB2530 ...

  7. [ZigBee] 13、ZigBee基础阶段性回顾与加深理解——用定时器1产生PWM来控制LED亮度(七色灯)

    引言:PWM对于很多软件工程师可能又熟悉又陌生,以PWM调节LED亮度为例,其本质是在每个周期都偷工减料一些,整体表现出LED欠压亮度不同的效果.像大家看到的七色彩灯其原理也类似,只是用3路PWM分别 ...

  8. [ZigBee] 12、ZigBee之看门狗定时器——饿了就咬人的GOOD DOG

    引言:硬件中的看门狗,不是门卫的意思,而是一只很凶的狗!如果你不按时喂它,它就会让系统重启!这反而是我们想要的功能~ 1.看门狗概述 看门狗定时器(WDT,Watch Dog Timer)是单片机的一 ...

  9. [ZigBee] 11、ZigBee之睡眠定时器二

    1.前言 上一节讲了Zigbee的睡眠定时器利用外部按键使系统从休眠态唤醒到工作态,其核心在于: 61 void SysPowerMode(uchar mode) 62 { 63 if(mode &g ...

随机推荐

  1. Kali-linux无线网络嗅探工具Kismet

    如果要进行无线网络渗透测试,则必须先扫描所有有效的无线接入点.刚好在Kali Linux中,提供了一款嗅探无线网络工具Kismet.使用该工具可以测量周围的无线信号,并查看所有可用的无线接入点.本节将 ...

  2. 移动端h5列表页上拉加载更多

    背景 上星期公司要求做一个回收书籍的h5给安卓用,里面有一个功能是回收记录列表.设计师那边出的稿子是没有要求分页或者是上拉刷新的,但是众所周知,列表页数据很多的情况下,h5加载是很慢的.所以我一开始是 ...

  3. 解决Linux 安装python3 .5 解决pip 安装无法成功问题ssl安全拦截无法pip安装库问题

    pip is configured with locations that require TLS/SSL, however the ssl module in Python is not avail ...

  4. 【题解】洛谷P1373 小a和uim之大逃离(坐标DP)

    次元传送门:洛谷P1373 思路 设f[i][j][t][1/0]表示走到(i,j)时 小a减去uim的差值为t 当前是小a取(0) uim取(1) 那么转移就很明显了 f[i][j][t][]=(f ...

  5. 初始化mysql数据库 /usr/bin/mysql_install_db执行时报错

    错误描述: FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install ...

  6. Linux -- 目录基本操作(1)

    cd 切换目录 1.切换到指定目录下 #cd 相对/绝对目录 [root@localhost ~]# cd /home/tom/demo [root@localhost demo]# 2.切换到某个用 ...

  7. css模型框

    在 CSS 中,width 和 height 指的是内容区域的宽度和高度.增加内边距.边框和外边距不会影响内容区域的尺寸,但是会增加元素框的总尺寸. 假设框的每个边上有 10 个像素的外边距和 5 个 ...

  8. DB数据源之SpringBoot+Mybatis踏坑过程实录系列(一)

    DB数据源之SpringBoot+MyBatis踏坑过程(一) liuyuhang原创,未经允许进制转载 系列目录 DB数据源之SpringBoot+Mybatis踏坑过程实录(一) DB数据源之Sp ...

  9. mariadb或者mysql查看某个库相关的用户授权信息

    mariadb或者mysql查看某个库相关的授权信息 SELECT * FROM mysql.Db WHERE Db='DB_NAME';

  10. JavaScript入门学习(2)--进度条

    <html> <style type="text/css"> #bar{width:0px; height:20px; background:#ee00ff ...