ZigBee是一种短距离(10~100米)、低速率(20~250Kbps)、底成本、低功耗的无线网络技术,主要用于近离无线通讯。能够做到在数千个微小的传感器之间相互协调实现通讯,这些传感器只需要很少的能力,以接力的方式通过无线电波将数据从一个传感器传送到另一个传感器,节点的发射功率和通讯范围都是有限的。

ZigBee协议栈版本:

ZigBee 2004

ZigBee 2006

ZigBee 2007

ZigBee 2007-pro

Technorati 标签: ZigBee

 

ZigBee协议栈底层基于IEEE 802.15.4协议,上层由ZigBee联盟定义网络层、应用层和安全服务层。整体结构如下:

 

详细结构描述如下图:

不同设备之间同层进行沟通,如下图所示:

在ZigBee协议框架下,设备有三种角色类型和两种设备功能,这三种角色在ZigBee协议和IEEE 802.15.4中称呼不同,具体差别如下图:

 

在组网能力上,ZigBee网络支持星型网络或者点对点网络,每个设备都具有16位的网络短地址和64位IEEE长地址。

在无线通讯上面,采用免冲突多载波接入(CSMA-CA),有效避免无线电载波之间的冲突,传输可靠性由ZigBee的应答机制来保证。

为了保证ZigBee设备之间通信数据的安全保密性,在MAC层可以采用AES-128位的加密算法,对所传输的信息进行加密处理。

ZigBee传输中总体帧结构如下图:

上层数据作为下层的有效载荷进入下层处理流程,MAC层对数据进行CRC计算,并附加一个MFR校验字段,最后的到PHY层的处理字节。

作为最底层同射频硬件的结构,传输每个域的低位字节先传输,每个字节内部的低位先传输。首先传输的是SHR的最低位四位,其次为SHR的高四位,先通过伪随机码映射成为32位的伪码,然后进行O_QPSK的调制。

码片的映射分组。

进行O_QPSK的调制前的准备。

O_QPSK的调制框图。

ZigBee协议基本介绍的更多相关文章

  1. zigbee学习之路(十二):zigbee协议原理介绍

    一.前言 从今天开始,我们要正式开始进行zigbee相关的通信实验了,我所使用的协议栈是ZStack 是TI ZStack-CC2530-2.3.0-1.4.0版本,大家也可以从TI的官网上直接下载T ...

  2. ZigBee协议

    转载地址http://www.feibit.com/bbs/viewthread.php?tid=140&extra=page%3D1   WSN/Zigbee开源协议栈 1.    msst ...

  3. iOS:核心动画具体的类和协议的介绍

    核心动画类:CAAnimation.CAPropertyAnimation.CABasicAnimation.CAKeyframeAnimation.CATransition.CAAnimationG ...

  4. 基于HTTP 协议认证介绍与实现

    导言 一直对http 的头认证有兴趣,就是路由器的那种弹出对话框输入账号密码怎么实现一直不明白,最近,翻了一下http 协议,发现这是一个RFC 2617的实现,所以写篇文章介绍一下吧. Http基本 ...

  5. Zigbee2007协议中文介绍

    Zigbee2007中文介绍ZigBee2007规范定义了ZigBee和ZigBee Pro两个特性集,全新的ZigBee 2007规范建立在ZigBee2006之上,不但提供了增强型的功能而且在某些 ...

  6. HTTP协议发展介绍

    HTTP协议工作于C/S架构上,是万维网服务器传输超文本到本地客户端的一种应用层协议,全称是:Hyper Text Transfer Protocol(超文本传输协议),HTTP是基于TCP/IP通信 ...

  7. HTTP协议简要介绍

    1. 网络基础 TCP/IP 通常使用的网络是在TCP/IP协议簇基础上运作的. HTTP属于它内部的一个子集. TCP/IP分为4个层次, 应用层, 传输层, 网络层, 链路层. (Applicat ...

  8. 【网络协议】TCP协议简单介绍

        本文仅仅是对TCP协议做个简要的介绍.     TCP协议,即传输控制协议.与UDP协议同处于传输层,相同使用相同的网络层,但TCP提供了一种可靠的.面向连接的传输数据服务,它会在两个使用TC ...

  9. arp协议简单介绍

    1. 什么是ARP? ARP (Address Resolution Protocol) 是个地址解析协议.最直白的说法是:在IP以太网中,当一个上层协议要发包时,有了该节点的IP地址,ARP就能提供 ...

随机推荐

  1. Mac下PHP环境的搭建

    Mac下PHP环境的搭建 目录 Mac下PHP环境的搭建(基于XAMPP) phpmyadmin Mac下PHP环境的搭建(基于XAMPP) 下载XAMPP的Mac版 启动Apache Web Ser ...

  2. JSAPI用户手册

    本文档主要涵盖如何嵌入SpiderMonkey javascript引擎到你自己的c++程序中. JavaScript在浏览器端已经被广泛使用了.但是,Mozilla的javascript引擎可以被嵌 ...

  3. Linux内核学习笔记

    1.vanbreaker的专栏 2.LinuxKernel Exploration 3.DroidPhone的专栏 4.Linux内核研究以及学习文档和ARM学习以及研究的开放文档   [力荐] 5. ...

  4. Visual Studio Code 1.0.1 for python

    1. 安 F1健 ext install python E:\test\.vscode下的三个文件 2.launch.json { "version": "0.1.0&q ...

  5. SSIS 64位环境访问Oracle11g

    SSIS 为了要能够在64位的机器上面让SSIS存取Oracle,当然需要安装64位的Oracle Provider,但是遇到最大的问题在于SSIS在执行的时候分成两种组件,分别是DTExec.exe ...

  6. Java IO和Java NIO在文件拷贝上的性能差异分析

    1.  在JAVA传统的IO系统中,读取磁盘文件数据的过程如下: 以FileInputStream类为例,该类有一个read(byte b[])方法,byte b[]是我们要存储读取到用户空间的缓冲区 ...

  7. 实现一个不停发包的Android应用(类似于电脑上的Ping命令)

    代码如下: package com.example.ping; import java.io.BufferedReader; import java.io.IOException; import ja ...

  8. qt超强绘图控件qwt - 安装及配置

    qwt是一个基于LGPL版权协议的开源项目, 可生成各种统计图.它为具有技术专业背景的程序提供GUI组件和一组实用类,其目标是以基于2D方式的窗体部件来显示数据, 数据源以数值,数组或一组浮点数等方式 ...

  9. Python练习题 004:判断某日期是该年的第几天

    [Python练习题 004]输入某年某月某日,判断这一天是这一年的第几天? ---------------------------------------------- 这题竟然写了 28 行代码! ...

  10. nginx +lua +redis 构建自动缓存系统

    一. nginx环境搭建 第一步下载 LuaJIT-2.0.4.tar.gz http://luajit.org/download/LuaJIT-2.0.4.tar.gz安装 make &&a ...