ZigBee简介
ZigBee是一种新兴的短距离、低速率无线网络技术。ZigBee技术的命名主要来自于人们对蜜蜂采蜜过程的观察,蜜蜂在采蜜过程中,其舞蹈轨迹像跳着“Z”的形状,由于蜜蜂自身体积小,所需要的能量小,又能传送所采集的花粉,因此,人们用ZigBee技术来代表具有成本低、体积小、能量消耗小和传输速率低的无线通信技术,中文译名通常称为“紫蜂”技术。
2000年12月IEEE成立了IEEE 802.15.4工作组,致力于定义一种适于固定、便携或移动设备使用的极低复杂度、成本和功耗的低速率无线连接技术——ZigBee技术。2002年8月,由英国Invensys公司、日本三菱电气公司、美国摩托罗拉公司、荷兰飞利浦半导体等公司成立了ZigBee联盟(ZigBee Alliance),目前该联盟已吸引了150多家芯片公司、无线设备公司及产品开发商。
ZigBee是介于无线标识技术和蓝牙之间的一种技术,主要用于近距离无线连接。它有自己的无线电标准,在数千个微小的传感器之间互相协调实现通信。这些传感器只需要很少的能量,以接力的方式通过无线电波将数据从一个传感器传到另一个传感器,所以它们之间的通信效率非常高。最后,这些数据就可以进入计算机用于分析或是被另外一种无线技术(如 WiMax)收集。ZigBee技术的较低数据速率以及较小通信范围的特点决定ZigBee技术适于承载数据量较小的业务。
ZigBee工作原理
ZigBee是一组基于IEEE 802.15.4无线标准研制开发的有关组网、安全和应用软件方面的通信技术。IEEE 802.15.4是IEEE确定低速无线个人局域网的标准,这个标准定义了物理层(Physical Layer,PHY)和媒体接入控制层(Media Access Control Layer,MAC)。ZigBee联盟对其网络层(Network Layer)议和应用层(Application Layer)进行了标准化。应用层的开发应用根据用户自己的应用需要,对其进行开发利用,因此该技术能够为用户提供机动、灵活的组网方式。
ZigBee的协议体系包含了IEEE 802.15.4标准定义的物理层、MAC层及ZigBee联盟定义的网络层和应用层。
1、物理层
物理层定义物理无线信道和MAC层之间的接口,提供物理层数据服务和物理层管理服务。物理层数据服务是从无线物理信道上收发数据,物理层管理服务维护一个由物理层相关数据组成的数据库。IEEE 802.15.4定义了2.4 GHz和868/915 MHz两个物理层,它们基于直接序列扩频(Direct Sequence Spread Spectmm,DSSS)数据包格式,它们在工作频带、扩频参数、数据参数和适用区域等方面都存在着一定的差异。
ZigBee物理层分组结构:其中前导码4B,主要用于前导同步;分组定界1B,标志分组的开始;物理层头1B,表示数据单元的长度;数据单元用于承载传输数据。
1)2.4 GHz频段
该频段为全球统一无需申请的IsM频段,有助于ZigBee设备的推广和生产成本的降低。该频段物理层通过采用高阶调制技术,并用码片长度为8的伪随机码直接扩频,可获得更高的吞吐量、更小的通信时延和更短的工作周期,从而更省电。
2)868/915 MHz频段
为了避免干扰,欧洲还采用868 MHz频段,美国采用915 MHz频段作为ZigBee的工作频段。这两个频均均采用了差分编码的二进制移相键控(BPSK)调制,用码片长度为15的M序列直接扩频。由于频段比较相近,对信号合成器的程序稍作改动,就可使用相似的硬件,从而降低生产成本。
上述频段无线信号传播损耗较小,可降低对接收机灵敏度的要求,获得较远的通信距离,即可用较少的设备覆盖较大的区域。
2、MAC层
IEEE802系列标准将数据链路层分成逻辑链路控制(L09 iocl Link Control,LLC)和媒介接入控制(Media Access Control,MAC)两个子层。其中,LLC子层在IEEE 802.6中定义为IEEE 802标准系列共用,而MAC子层协议依赖于各自的物理层。
IEEE 802.15.4的MAC层支持多种LLC标准,通过SSCS(Service-Speci6c Convergence Sub-layer)务相关会聚子层协议承载IEEE 802.2类型的LLC标准,且允许其他LLC标准直接使用IEEE 802.15.4MAC层的服务。
考虑到Zig Bee MAC层的设计应尽可能地降低成本、易于实现、数据传输可靠、短距离操作以及低功耗,因此采用了简单灵活的协议,其帧有4种类型:数据帧、标志帧、命令帧和确认帧。
ZigBee采用载波侦听多址/冲突(CSMA/CD)的信道接入方式和完全握手协议。
3、网络层
网络层(NWK)是位于MAC与应用层(APL)之间的一个协议层。网络层的任务是通过正确操作MAC层提供的功能来向应用层提供合适的服务接口。为了实现与应用层的通信,网络层定义了两个服务实体:数据服务实体(NLDE)和管理服务实体(NLME)。数据服务实体(NLDE)通过数据服务实体服务访问点(NLDE-SAP)来提供数据传输服务;管理服务实体(NLME)通过管理服务实体访问点(NLME-SAP)来提供管理服务。
在ZigBee协议中,网络层主要负责新建网络、加入网络、退出网络和网络报文的路由传输等功能。
根据设备所具有的通信能力,ZigBee网络中主要有两种无线设备,即全功能设备(Full-Function Device,FFD)和精简功能设备(Reduced-Function Device,RFD)。FFD之间及FFD和RFD之间都可以相互通信;但RFD只能与FFD通信,而不能与其他RFD通信。RFD主要用于简单的控制应用,传输的数据量较少,对传输资源和通信资源占用不多,可以采用相对廉价的实现方案,在网络结构中一般作为通信终端。FFD则需要功能相对较强的MCU,一般在网络结构中拥有网络控制和管理的功能。
ZigBee网络中,有一个称为PAN网络协调者的FFD设备,它是网络的中心节点。PAN网络协调者除了直接参与应用以外,还要负责其他网络成员的身份管理、链路状态信息的管理以及分组转发等功能。
从网络拓扑的角度来看,ZigBee设备主要有3种角色:网络协调者、网络路由器和网络终端设备。其中网络协调者主要负责网络的建立,以及网络的相关配置;路由器主要负责找寻、建立以及修复网络报文的路由信息,并负责转发网络报文;网络终端具有加入、退出网络的功能,并可以接收和发送网络报文,但终端设备不允许路由转发报文。通常协调者和路由器节点一般由FFD功能设备构成,终端设备由RFD设备组成。
ZigBee支持3种通信设备的网络拓扑,即星形(Star)网络、网状(Mesh)网络和簇状(Cluster Tree)网络。
Star网络是一种常用且适用于长期运行使用操作的网络;Mesh网络是一种高可靠性检测网络,它通过无线网络连接可提供多个数据通信通道,即它是一个高级别的冗余性网络,一旦设备数据通信发生故障,则存在另一个路径可供数据通信;Cluster Tree网络是Star/Mesh的混合型拓扑结构,结合了上述两种拓扑结构的优点。
4、应用层
应用层提供高级协议管理功能,使用应用层协议来管理协议栈,主要根据具体应用由用户开发,维持器件的功能属性,发现该器件工作空间中其他器件的工作,根据服务和需求使多个器件之间进行通信。
在无线通信技术上,ZigBee采用免冲突多载波信道接入(CSMA-CA)方式,有效地避免了无线电载波之间的冲突,此外,为保证传输数据的可靠性,建立了完整的应答通信协议。