配色: 字号:
ZigBee_Wireless_Networks_and_Transceivers中文翻译
2020-07-12 | 阅:  转:  |  分享 
  
由于国内暂时还没有该文献的中文版本,而ZigBeeWirelessNetworksandTransceivers又是ZigBee界的葵花宝典,为了自己更好的学习,所以决定将比较多的蛋疼的时间拿出来做点有意义的事,虽然翻译水平不是很高,但是在翻译的过程中肯定能得到进步,最关键的就是检验自己的毅力,看看能否坚持。在这个过程中,如果还能帮到一些正在入门ZigBee的朋友那就更好了。废话不多说,开始

ZigBeeWirelessNetworksandTransceivers

ZigBee无线网络和收发器

IEEE802.15.4标准层,并以同样的详细程度描述了具体的ZigBee层。书中给出的例子通常都是ZigBee无线网络的例子,然而,即使只使用了IEEE802.15.4的PHY层和MAC层,大部分讨论的内容都是可以使用的。

操作频率和数据速率

最新版本的IEEE802.15.4发布于2006年9月,该版本共中有三种频率带:

868~868.6MHz(868MHzband)

902~928MHz(915MHzband)

2400~2483.5MHz(2.4GHzband)

868MHz频带应用于欧洲,有大量的应用,包括短距离无线网络。另外两个频带(915MHz和2.4GHz)是工业、科研、医学(ISM)频带的一部分。915MHz频带主要用于北美,而2.4GHz则是全国通用。

表1.1提供了这三种频带在IEEE802.15.4标准中使用方式的更加详细的内容,IEEE802.15.4规定如果一个收发器支持868MHz频带,那么它同样也要支持915MHz,反之亦然。因此,这两个频带总是被绑定在一起,称为868/915MHz操作频带。

IEEE802.15.4为868/915MHz规定了一条强制和两条可选规范。强制规范更加容易实现,但却牺牲了数据速率(分别为20Kbps和40Kbps)。在介绍2006中两种可选的PHY操作模式之前,将数据速率提高到40Kbps以上的唯一方法就是使用2.4GHz频带。对于这新增的两条PHY操作模式,如果因为任何原因(例如在2.4GHz频带中存在强烈的干扰),都是不能在2.4GHz频带进行操作的,或者40Kbps的数据速率不够使用,用户可以选择868/915MHz频带来获取250Kbps的数据速率。

如果用户选择使用可选的操作模式,IEEE802.15.4仍然要求它能兼容868MHz/915MHz频带的低数据速率强制操作模式。此外,在868MHz/91MHz频带中,收发器还必须能在强制和可选操作模式之间动态转换。

2.4GHz的收发器可能会支持868MHz/915MHz频带,但在IEEE802.15.4中这不是必须的。在868MHz频带中仅有一个通道的空间,915MHz频带则有10个(不包括可选通道),而2.4GHz频带的通道数则多达16个。

2.4GHzISM频带全球通用,并且有最大的数据速率和最多的通道数。由于这些原因,对很多制造商来说,开发2.4GHz频带的收发器是很流行的。然而,IEEE802.11b也工作在2.4GHz频带,因此在某些应用中两者共存是个问题(详细的共存问题在第八章中有描述)。此外,频带越低,信号穿透墙和其他各种物体的能力就越强。因此,一些用户可能觉得868MHz/915MHz更适合他们的应用。

IEEE802.15.4有三种调制方式:二进制相移键控(BPSK)、振幅键控(ASK)和偏移正交相移键控(O-QPSK)。在BPSK和O-QPSK中,数字数据在信号相位中。相比之下,在ASK中,数字数据在信号振幅中(这里翻译的有些牵强)。

IEEE802.15.4的所有无线通信方式(表1.1)或采用直接扩频序列(DSSS)技术,或采用并行扩频序列(PSSS)技术。DSSS和PSSS有助于提高多路径环境中接收器的性能。

DSSS和PSSS扩频方式基础,还有不同的调制技术和符号到芯片的映射在第四章进行了介绍。多路径问题和射频(RF)穿帮特性在第五章进行了介绍。

互操作性

ZigBee的应用很广泛,因此,多家生产商提供了应用ZigBee技术的产品解决方案。独立于原始制造产品进行相互作用,对于这些基于ZigBee的设备是很重要的。换句话说,这些设备需要能够彼此协作。互操作性是ZigBee协议堆栈的重要优势之一,基于ZigBee的设备是可以互操作的,即使当因为安全原因而将消息加密时。

设备类型

IEEE802.15.4无线网络中有两种设备类型:全功能设备(FFD)和半功能设备(RFD),FFD可以执行IEEE802.15.4标准中描述的所有功能,并且可以用作网络中的任何角色;另一方面,RFD只有部分功能,例如,FFD可以和网络中的任何其他设备通信,但RFD却只能和FFD设备通信。RFD设备的目的是应用于简单的应用中,如打开或关闭一个开关。RFD设备的处理能力和内存大小通常小于那些FFD设备。

设备角色

在一个IEEE802.15.4网络中,FFD设备能担任三种不同的角色:coordinator、PANcoordinator和device。coordinator是一个FFD,能够转播消息。如果coordinator同样也是个人区域网络的主要控制器,那么称其为PANcoordinator。如果一个设备不是充当coordinator,那么我们把它叫做device。

ZigBee标准使用稍微不同的术语(见图1.5)。ZigBeecoordinator是一个IEEE802.15.4的PANcoordinator;ZigBeerouter是一个可以充当IEEE802.15.4coordinator的设备;最后,ZigBeeenddevice既不是coordinator也不是router,ZigBeeenddevice具有最小的内存大小和最弱的处理能力和特性,enddevice通常是一个网络中最便宜的设备。



ZigBee网络拓扑

网络组成是由ZigBee网络层来管理的,其网络必须是IEEE802.15.4两种网络拓扑:星型和点对点型中的一种。

图1.6所示的星型拓扑中,每一个设备都只能和PANcoordiantor通信,组成星型网络的一个典型案例就是一个FFD被编程为一个PANcoordinator,并且被激活开始建立其自己的网络。该PANcoordinator做的第一件事情是选择一个在其射频覆盖范围内没有被其他网络使用的特殊PAN标识符,在该射频覆盖范围内无线电之间可以成功的进行相互通信。换句话说,它保证了PAN标识符没有被其他相邻的网络所使用。

在点对点拓扑中(见图1.7),如果两个设备放置的距离足够近来成功的建立通信链接的话,那么他们之间可以直接通信。在点对点网络中,任何FFD都可以充当PANcoordinator的角色。看哪一个设备是PANcoordinator的方法是看哪个FFD设备是最先作为PANcoordinator进行通信的。在点对点网络中,所有参与转发信息的设备都是FFD设备,因为RFD设备不能够传播消息。不过,RFD也能够成为网络中一部分,并且可以和网络中的一种特殊设备(coordinator或router)通信。





通过在相互通信的设备间规定限制条件,点对点网络可以有不同的形状。如果没有限制,点对点网络就成为了网状拓扑。ZigBee支持的另一种点对点网络形式是树状拓扑(见图1.8),在这里,ZigBeecoordinator(PANcoordinator)建立了初始网络,ZigBeerouter则组成了分支并转发信息,而ZigBeeenddevice作为树叶且不参与信息路径选定。ZigBeerouter可以在ZigBeecoordinator初始建立的网络之外拓展网络。

图1.8也展示了为什么转发信息有助于扩展网络范围,甚至绕过障碍物。例如,设备A需要发送一条信息到设备B,但它们之间有障碍物,信号难以穿透。这时树形拓扑就可以通过转发信息绕过障碍物来帮助其到达设备B。这有时也被叫做multihopping,因为信息从一个节点跳到另一个节点直到到达目的地为止。更广的覆盖范围取决于潜在高信息延迟消耗。

不考虑拓扑的话,一个IEEE802.15.4网络总是由一个PANcoordinator所创建,PANcoordinator控制网络并且履行下面最小职责:

●为网络中每个设备分配一个唯一地址(16位或64位)

●初始化、中止、发送整个网络中的信息

●为网络选择一个唯一的PAN标识符。该标识符运行同一个网络中的设备使用16位短地址寻址方法,并且能够通过独立的网络与其他设备通信。



整个网络战只有一个PANcoordinator,PANcoordinator可能需要较长的活跃时间,因此,它通常连接到一个稳压电源而非电池。其他的所有设备通常是电池供电的,最小的系统网络包括两个设备:一个PANcoordinator和一个device。

ZigBee和IEEE802.15.4的通信基础

这部分复习了一些通信的基础知识,像IEEE802.15.4和ZigBee中的多种访问机制,数据传输方式和寻址方法等。

CSMA-CA载波检测多路访问-碰撞避免

IEEE802.15.4使用一种简单的方法来让多个设备使用同一个频率信道,它使用的访问机制是载波检测多路访问碰撞避免(CSMA-CA)。在CSMA-CA中,任何时候一个设备想要发送信息,都要先执行一条空闲信道评估(CCA)指令来确保该信道没有被其他设备所使用,然后它才开始发送信号。判定一个信道是否空闲可以通过测量频带中的频谱能量或者检测工作中信号的类型。

当某设备计划传输一个信号时,它首先进入接收模式来检测和评估目标信道内信号的能量等级,这个任务被称作能量检测(ED)。在ED中,接收器不会去解码信号,并且只评估信号能量等级。如果信道中已经存在一个信号,那么ED判断不出这是否是一个IEEE802.15.4信号。

另一种判定信道是否空闲的方法是载波检测(CS)。和ED相比,在CS中,工作中信号的类型是确定的,如果这个信号是一个IEEE802.15.4信号,那么该设备可能会被判定为忙碌,即使信号的能量低于用户定义的门限值。

如果信道不空闲,设备将在一段随机的时间间隔内返回不断重新检测,直到信道变为空闲或者到达用户定义的最大重新检测次数。

信标(Beacon)VS非信标(Nonbeacon)网络

信道访问的方式有两种:基于竞争和免于竞争。在基于竞争的信道访问中,所有想在同一频率信道传输信息的设备都使用CSMA-CA机制,谁先发现信道空闲谁就先进行传输。在免于竞争方式中,PANcoordinator为特殊设备留出一个时隙,这个时隙叫做GTS(GuaranteeTimeSlot),因此,有GTS的设备可以在GTS期间开始发送信息,而不需要使用CSMA-CA机制。

为了提供一个GTS,PANcoordinator需要确保所有的设备都是同步的,Beacon有具体的格式,是一个用来同步网络中节点时钟的消息。Beacon的帧格式在1.14.2.1.1小节有具体的讨论。coordinator可以选择发送Beacon信号来同步与其相连的设备。这就叫做beacon-enabledPAN。使用beacon的一个缺点就是所有网络中的设备必须定期唤醒,确定beacon、同步它们的时钟、继续休眠。这就意味着网络中的一些设备被唤醒过来只是为了进行同步,而不执行任何其他任务。因此,在一个beacon-enabled网络中,设备的电池寿命通常少于nonbeacon的网络。

PANcoordinator不传输beacon的网络被称作nonbeacon网络,而nonbeacon网络没有GTS和免于竞争时段,因为其设备不能相互同步。nonbeacon网络中电池的寿命要明显优于beacon-enabled网络,因为在nonbeacon网络中,设备被唤醒的次数较少。

数据传输方式

IEEE802.15.4中有三种数据传输方式:

●从一个device传送到一个coordinator

●从一个coordinator传送到一个device(device是ZigBee中一种设备类型)

●在两个对等设备间传输(coordinator到coordinator)

这三种方法都可以用在点对点的拓扑中;而在星型拓扑中,只能使用前两种,因为没有直接相连的点对点的通信(也就是说,星型网络中,相邻的设备的类型都是不同的)。



数据发送到一个coordinator

在一个beacon-enabled网络中,当一个device想要发送数据给coordinator时,device定时同步它的时钟,并使用CSMA-CA方式发送数据给coordinator(假设GTS期间没有发送数据)。如果这时数据发送器发送请求的话,coordinator将会进行应答,如图1.9a所示

图1.9b展示了在nonbeacon-enabled网络中数据传输的流程。在该情景中,信道一空闲device就发送数据,如果有请求的话PANcoordinator还会给出应答。

coordinator向其他设备发送数据

图1.10a阐述了在一个beacon-enabled网络中,从coordinator向device发送数据的步骤。如果coordinator需要向一个特定的device发送数据时,它会在其beacon消息中说明一条数据消息正在等待这个device。然后该device会发送一条数据请求消息给coordinator以表明,它是活跃的并且准备好了接收数据,然后coordinator对数据请求进行应答并向device发送数据。device是否发送应答是可选的。

在一个nonbeacon-enabled网络中(见图1.10b),coordinator需要等待device请求数据。如果设备请求数据,但没有数据等待device,coordinator发送一条特定格式的应答信息来表明没有数据等待device,或者,coordinator可能发送一条长度为0的消息。



点对点数据传输

在一个点对点拓扑中,每个设备都可以直接和其他任何设备通信。在一些应用中,致力于点对点数据发送和接收的设备被同步。(更多关于对等通信的信息请看第三章)

数据验证

数据包是以特定格式一起发送的多个比特位。接收器需要一种机制来验证接收到的比特是否是正确的,IEEE802.15.4使用一种16位帧校验序列,该序列基于国际电信联盟循环冗余校验来检测数据包中潜在的错误。3.3.5.1.1小节提供了关于使用循环冗余校验的更多细节。

寻址方式

网络中的每个设备都需要一个唯一的地址,IEEE802.15.4使用两种寻址方法:

●16位短地址

●64位扩展地址

一个网络可以选择使用16位或者64位的地址。短地址允许在单个网络内进行通信,使用16位短地址机制可以减少消息长度并能节省所需分配的内存空间。将唯一的PAN标识符和一个短地址相结合后,可以用做独立网络之间的通信。

64位地址寻址方式意味着网络中的最大设备数可以达到264,大约是1.8×1019,因此,IEEE802.15.4无线网络时间上对可以加入网络的设备数是没有限制的。

ZigBee协议的网络层(NWK)额外的为IEEE地址分配一个16位网络地址。一个简单的查询表(LookupTable)被用来为每一个64位IEEE地址安排一个唯一的网络地址,网络层的工作需要用到网络地址。

网络中的每个无线设备都可以单独拥有一个IEEE地址和一个网络地址,但一个无线设备上最多可以连接240个设备。这240个设备由1~240中的数字进行区分,这些数字被称作endpoint地址。

建立连接和解除连接

建立连接和解除连接是由IEEE802.15.4提供的服务,可以运行设备加入和退出网络。例如,当一个设备想加入到PAN中时,它会给coordinator发送一个建立连接的请求,而coordinator可以接受或拒绝该请求。该设备还可以使用解除连接来通知coordinator说它要离开网络。

绑定

绑定是在相关应用间创建逻辑链接的任务。例如,一个连接灯的ZigBee设备逻辑上要与另一个连接开关的设备上相关联才能控制灯,与这些逻辑链接相关的信息存储在一个绑定表中。ZigBee标准的应用层提供了对绑定表创建和维护的支持。绑定表中逻辑相关的设备被称作绑定设备(bounddevice)。

ZigBee的自形成和自愈特性

像1.9小节中所讨论的,ZigBee网络一激活就开始网络构建。例如,在网状网络中,第一个开始通信的FFD设备将自己设置为ZigBeecoordinator,然后其他的设备通过发送建立连接请求来加入网络,因为不需要其他额外的管理来建立一个网络,ZigBee网络是自动形成的网络。

另一方面,当一个网状网络建立时,通常有不止一种方法可以将信息从一个设备转发到另一个。当然,会由最佳的路径来转发这条消息,然而,当其中的一个路由器因为电池电量用完或有障碍物挡住信息的传播路径而停止工作时,网络会选择另一条路径。这就是ZigBee网状网络自愈特性的一个例子。

ZigBee被认为是一种adhoc无线网络。在adhoc无线网络中,一些无线节点为其他设备转发数据。将信息从源头发送到目的地的路径是基于网络连通性而动态选择的,如果网络状态改变了,那么可能也有必要改变网络路径。这是和其他一些带基础设施的网络拓扑所不同的,在这些网络拓扑中,一些指定的设备在网络中总是充当路由器的角色。

ZigBee和IEEE802.15.4网络层功能

本部分提供了对ZigBee和IEEE802.15.4协议层的一个概述,第三章中还有具体的介绍。

PHY层

在ZigBee无线网络中(见图1.3),最低的协议层是IEEE802.15.4物理层或PHY层。这层是距离硬件最近的层,它直接控制并与无线收发器通信。PHY层负责激活发送或接收数据包的无线设备。PHY层还选择信道的频率并确保该频道当前没有被任何一个其他网络中的设备所使用。

PHY数据包总体结构

各种设备间的通信数据和命令都是以数据包的形式存在的,一个数据包的总体结构见图1.11。PHY数据包包括三部分:SHR,PHR和PHYPayload。





SHR允许接收器同步和锁定数据流,PHR包含帧长度信息,PHYpayload是由上层提供的,它包括发送给接收设备的数据和命令。

MAC帧作为一个PHYpayload被发送到其他设备,它有三个部分。MHR包含类似寻址和安全等的信息,MACpayload有各种长度的大小(包括零长度)并且包含数据和命令,MFR则包含一个用来验证数据的16位帧检测序列(FCS)。

NWK帧有两部分:NHR和NWKpayload。NHR有网络级寻址和控制信息,NWKpayload是由一个应用支持子层提供的。在应用支持子层帧中,AHR具有应用层控制和地址信息。Auxiliary(副)HDR包含为帧和使用的密钥增加安全性的机制,这些密钥在相应的设备中是共享的,并且有助于解锁信息。NWK和MAC帧还可以拥有可选的AuxiliaryHDR来增加额外的安全性。APSpayload包含数据和命令。消息完整性代码(MIC)是APS帧中的一个安全特性,用来检测消息内容中未授权的改变。

图1.11表明,最先发送的位是SHR中的最不重要位(LSB),PHYpayload的8位中最后一位最不重要位(MSB)也是最后被发送。

MAC层

媒介访问控制(MAC)层为PHY层和NWK层提供了接口。MAC负责产生信标和为信标(beacon-enabled网络)同步设备。MAC层还提供建立连接和解除连接的服务。

MAC帧结构

IEEE802.15.4定义了4种MAC帧结构:

●信标帧

●数据帧

●应答帧

●MAC命令帧

Coordinator使用信标帧来发送信标,信标是用来同步同一个网络内所有设备的时钟的,数据帧是用来发送数据的,应答帧是在成功的接收到一个帧后进行相应的应答的,MAC帧是用来发送MAC命令的。

信标帧

图1.12中显示了信标帧的结构,整个MAC帧被用作了PHY包中的一个payload,PHYpayload的内容被称作PHY服务数据单元(PSDU)。

在PHY数据包中,接收器使用帧开始位来进行同步,启动帧分隔符(SDF)表明了SHR的结束和PHR的开始。帧长度表明了PSDU中数据位的数量。

MAC帧包含三个部分:MHR(MAC帧开始位),MACpayload(要发送的MAC数据),MFR(MAC帧结束位)。MHR帧控制部分包括定义了帧类型,寻址区域和其他控制标志的信息。序列号具体指定了信标序列号(BSN),寻址区域提供了源地址和目的地址,辅助安全性开始位(AuxiliaryHDR)是可选的,它包含安全处理过程所需的信息。

MACpayload是由NWK层提供的,超级帧是由两个信标帧绑定的帧。超级帧可以被选择性的用在beacon-enabled网络中,它有助于定义GTS(保证时隙)。



MACpayload中的GTS决定了一个GTS是否被用于收发。

信标帧不仅被用于同步网络中的设备,还被用来让网络中的特定设备知道在coordinator中有数据在等待这个设备。设备会自己进行判断然后与coordinator联系并申请让其发送数据到该设备,这叫做间接传输。MACpayload中的等待地址包含在coordinator中有数据等待发送的设备的设备地址。每次设备接收一个信标,它都将检查等待地址区域来确定是否有数据在等待它。

信标payload领域是一个可选的领域,它可被网络层使用,而且是伴随信标帧被发送的。接收器使用帧检查序列(FCS)区域来检测接收帧中任何可能的错误,关于帧格式的更详细信息在第三章中有说明。

数据帧

图1.13展示了MAC数据帧。数据payload由NWK层提供。MACpayload中的数据被称作MAC服务数据单元(MSDU)。除了超级帧,GTS和等待地址区域没有呈现在MAC数据帧中之外,该帧中的领域和信标帧相似。MAC数据帧被称作MAC协议数据单元(MPDU)并且变成了PHYpayload。

应答帧

图1.14显示了MAC应答帧,这是最简单的MAC帧格式且不带任何MACpayload。应答帧是由一个设备发向另一个来确认成功发送一个数据包的。



命令帧

MAC命令使用MAC命令帧来发送,例如请求与一个网络建立连接或解除连接的命令(见图1.15)。命令类型域决定了命令的类型(例如,建立连接请求或数据请求)。命令payload包含命令本身,整个MAC命令帧作为PSDU被放在PHYpayload。

网络层

MAC层和APL层间的NWK层接口负责管理网络形成和路径选择。路径选择就是选择将信息转发到目标设备的路径。ZigBeecoordinator和router负责发现和维护网络中的路径,ZigBeedevice不能执行发现路径。ZigBeecoordinator或者router将代表终端执行路径发现,ZigBeecoordinator的NWK层负责建立一个新的网络和选择网络拓扑(树型,星型,或网状网络拓扑),ZigBeecoordinator还为网络中的设备分配网络地址。



APL层

应用(APL)层是ZigBee无线网络中的最高协议层并且管理应用对象。生产商开发应用对象来为各种应用定制一款设备,在ZigBee设备中,应用对象控制和管理协议层,单个的设备中最多可以有240个应用对象。

在开发一个应用时,ZigBee标准提供了使用应用框架的选择。应用框架是一系列关于特定应用消息格式和处理动作的协议。使用应用框架可以使不同供应商开发的同一款应用的产品之间有更好的互操作性。如果两个供应商使用同样的应用框架来开发他们的产品,那么其中一个供应商生产的产品将与另一个紧密联系,就好像是同一个生产商生产的一样。

安全性

在一个无线网络中,发送的消息可以被临近的任何设备接收,包括入侵者。无线网络中主要有两种安全问题。第一种是数据保密,入侵设备可以通过监听发送信息来获得敏感信息。发送之前对消息进行加密可以解决这个保密问题。一种加密算法通过使用一种叫做安全密钥的比特字符串来更改一条信息,只有指定的接受者才能给还原原始的信息。IEEE802.15.4标准支持使用先进加密标准(AES)来加密他们外发的信息。

第二个安全问题是入侵设备可能会更改和重新发送先前发送的信息之一,即使这些信息加密了。在每个外发帧中加入一个信息完整性代码(MIC)可以使接收者知道信息是否在发送过程中被更改,这个过程叫做数据验证。

在ZigBee无线网络中使用安全特性的一个主要限制就是资源有限。节点主要都是电池供电并且计算能力和内存大小有限。ZigBee主要是针对低成本应用和节点硬件可能不能防止入侵篡改。如果一个入侵者得到操作网络中的一个没有防入侵篡改功能的节点,真实的密码可以被很简单的从设备内存中获得。一个有防入侵篡改功能的节点在检测到入侵的时候,可以擦除敏感信息,包括安全密码

ZigBee网关

ZigBee网关提供了两个网络间使用不同标准的接口。例如,如果在一个房间内使用ZigBee无线网络来收集病人的信息,这些信息可能就需要通过因特网被传送到一个监控站,为此,ZigBee网关就要同时使用ZigBee协议和因特网协议,将ZigBee数据包转换成因特网协议,反之亦然。

ZigBee比喻

ZigBee标准的其中一个重要特性就是它的网状网络性能。在大型的分布式网状网络中,一条消息从一个设备被转发到另一个,直到到达它的目的地。类似的,当一群蜜蜂分布在一大片区域内,想要把一条信息一直传回它们的蜂巢时,它们就使用消息转发的方法。每一个蜜蜂跳一段特定的Z型舞,另一个更加靠近蜂巢的蜜蜂向下一只蜜蜂重复该舞蹈。这个过程不断的被重复直到消息被传递到蜂巢为止。ZigBee的名字就是其网络中设备的工作方式对蜜蜂工作方式的一个比喻。

















第19页/共19页







献花(0)
+1
(本文系达摩商学院首藏)