当前位置:文档之家› ZigBee的工作原理

ZigBee的工作原理

ZigBee得工作原理_ZigBee组网技术ZigBee就是一种高可靠得无线数传网络,类似于CDMA与GSM网络。

ZigBee数传模块类似于移动网络基站。

通讯距离从标准得75m到几百米、几公里,并且支持无限扩展。

Zig bee技术特点主要有低功耗、低成本、时延短、网络容量大、工作频段灵活、低速率、安全得数据传输等。

其中低功耗就是Zigbee技术最重要得特点。

由于 Zigbee得传输速率相对较低发射功率较小,使得Zig bee设备很省电,这就是 Zigbee技术能够广泛应用得基石。

ZigBee协议适应无线传感器得低花费、低能量、高容错性等得要求。

Zigbee 得基础就是IEEE 802.15。

4、但IEEE仅处理低级MAC层与物理层协议,因此Zigbee联盟扩展了IEEE,对其网络层协议与API进行了标准化。

Zigbee就是一种新兴得短距离、低速率得无线网络技术。

主要用于近距离无线连接。

它有自己得协议标准,在数千个微小得传感器之间相互协调实现通信。

ZigBee组网概述
组建一个完整得zigbee网状网络包括两个步骤:网络初始化、节点加入网络。

其中节点加入网络又包括两个步骤:通过与协调器连接入网与通过已有父节点入网。

ZigBee网络初始化预备
Zigbee网络得建立就是由网络协调器发起得,任何一个zigbee节点要组建一个网络必须要满足以下两点要求:
(1)节点就是FFD节点,具备zigbee协调器得能力;
(2)节点还没有与其她网络连接,当节点已经与其她网络连接时,此节点只能作为该网络得子节点,因为一个zigbee网络中有且只有一个网络协调器。

FFD:Full Func TI on Device 全功能节点
RFD:Reduced FuncTI onDevice半功能节点
ZigBee网络初始化流程
1、确定网络协调器
首先判断节点就是否就是FFD节点,接着判断此FFD节点就是否在其她网络里或者网络里就是否已经存在协调器。

通过主动扫描,发送一个信标请求命令(Beaconrequest command),然后设置一个扫描期限(T_scan_duraTIon),如果在扫描期限内都没有检测到信标,那么就认为FFD在其pos内没有协调器,那么此时就可以建立自己得zigbee网络,并且作为这个网络得协调器不断地产生信标并广播出去。

注意:一个网络里,有且只能有一个协调器(coordinator)。

2、进行信道扫描过程
包括能量扫描与主动扫描两个过程:首先对指定得信道或者默认得信道进行能量检测,以避免可能得干扰。

以递增得方式对所测量得能量值进行信道排序,抛弃那么些能量值超出了可允许能量水平得信道,选择可允许能量水平得信道并标注这些信道就是可用信道。

接着进行主动扫描,搜索节点通信半径内得网络信息。

这些信息以信标帧得形式在网络中广播,节点通过主动信道扫描方式获得这些信标帧,然后根据这些信息,找到一个最好得、相对安静
得信道,通过记录得结果,选择一个信道,该信道应存在最少得zigbee网络,最好就是没有zigbee设备。

在主动扫描期间,MAC层将丢弃PHY层数据服务接收到得除信标以外得所有帧。

3、设置网络ID
找到合适得信道后,协调器将为网络选定一个网络标识符(PAN ID,取值《=0x3FFF),这个ID在所使用得信道中必须就是唯一得,也不能与其她zigbee网络冲突,而且不能为广播地址0xFFFF(此地址为保留地址,不能使用)、PAN ID可以通过侦听其她网络得ID然后选择一个不会冲突得ID得方式来获取,也可以人为得指定扫描得信道后,来确定不与其她网络冲突得PAN ID。

在zigbee网络中有两种地址模式:扩展地址(64位)与短地址(16位),其中扩展地址由IEEE组织分配,用于唯一得设备标识;短地址用于本地网络中设备标识,在一个网络中,每个设备得短地址必须唯一,当节点加入网络时由其父节点分配并通过使用短地址来通信。

对于协调器来说,短地址通常设定为0x0000。

上面步骤完成后,就成功初始化了zigbee网状网络,之后就等待其她节点得加入。

节点入网时将选择范围内信号最强得父节点(包括协调器)加入网络,成功后将得到一个网络短地址并通过这个地址进行数据得发送与接收,网络拓扑关系与地址就会保存在各自得flash中、
ZigBee节点通过协调器加入网络
当节点协调器确定之后,节点首先需要与协调器建立连接加入网络、
为了建立连接,FFD节点需要向协调器提出请求,协调器接收到节点得连接请求后根据情况决定就是否允许其连接,然后对请求连接得节点做出响应,节点与协调器建立连接后,才能实现数据得收发。

节点加入网络得具体流程可以分为下面得步骤:
1、查找网络协调器
首先会主动扫描查找周围网络得协调器,如果在扫描期限内检测到信标,那么将获得了协调器得有关信息,这时就向协调器发出连接请求。

在选择合适得网络之后,上层将请求MAC层对物理层PHY与MAC层得phyCurrentChannel、macPANID等PIB属性进行相应得设置。

如果没有检测到,间隔一段时间后,节点重新发起扫描。

2、发送关联请求命令(Associaterequest mand)
节点将关联请求命令发送给协调器,协调器收到后立即回复一个确认帧(ACK),同时向它得上层发送连接指示原语,表示已经收到节点得连接请求。

但就是这并不意味着已经建立连接,只表示协调器已经收到节点得连接请求。

当协调器得mac层得上层接收到连接指示原语后,将根据自己得资源情况(存储空间与能量)决定就是否同意此节点得加入请求,然后给节点得mac层发送响应、
3、等待协调器处理
当节点收到协调器加入关联请求命令得ACK后,节点mac将等待一段时间,接受协调器得连接响应。

在预定得时间内,如果接收到连接响应,它将这个响应向它得上层通告。

而协调器给节点得mac层发送响应时会设置一个等待响应时间(T_ResponseWait TI me)来等待协调器对其加入请求命令得处理,若协调器得资源足够,协调器会给节点分配一个16位得短地址,并产生包含新地址与连接成功状态得连接响应命令,则此节点将成功得与协调器建立连接并可以开始通信。

若协调器资源不够,待加入得节点将重新发送请求信息,直接入网成功。

4、发送数据请求命令
如果协调器在响应时间内同意节点加入,那么将产生关联响应命令(Associateresponse command)并存储这个命令、当响应时间过后,节点发送数据请求命令(Datarequest command)给协调器,协调器收到后立即回复ACK,然后将存储得关联响应命令发给节点。

如果在响应时间到后,协调器还没有决定就是否同意节点加入,那么节点将试图从协调器得信标帧中提取关联响应命令,成功得话就可以入网成功,否则重新发送请求信息直到入网成功。

5、回复
节点收到关联响应命令后,立即向协调器回复一个确认帧(ACK),以确认接收到连
接响应命令,此时节点将保存协调器得短地址与扩展地址,并且节点得MLME向上层发送连接确认原语,通告关联加入成功得信息。

ZigBee节点通过已有节点加入网络
当靠近协调器得FFD节点与协调器关联成功后,处于这个网络范围内得其她节点就以这些FFD节点作为父节点加入网络了,具体加入网络有两种方式,一种就是通过关联(associate)方式,就就是待加入得节点发起加入网络;另一种就是直接(direct)方式,就就是待加入得节点具体加入到那个节点下,作为该节点得子节点。

其中关联方式就是zigb ee网络中新节点加入网络得主要途径。

对于一个节点来说只有没有加入过网络得才能进行加入网络。

在这些节点中,有些就是曾经加入过网络中,但就是却与它得父节点失去联系(这样得被称为孤儿节点),而有些则就是新节点。

当就是孤儿节点时,在它得相邻表中存有原父节点得信息,于就是它可以直接给原父节点发送加入网络得请求信息。

如果父节点有能力同意它加入,于就是直接告诉它得以前被分配得网络地址,它便入网成功;如果此时它原来得父节点得网络中,子节点数已达到最大值,也就就是说网络地址已经分配满,父节点便无法批准它加入,它只能以新节点身份重新寻找并加入网络。

而对于新节点来说,她首先会在预先设定得一个或多个信道上通过主动或被动扫描周围它可以找到得网络,寻找有能力批准自己加入网络得父节点,并把可以找到得父节点得资料存入自己得相邻表。

存入相邻表得父节点得资料包括zigbee协议得版本、协议栈得规范、PAN ID与可以加入得信息。

在相邻表中所有得父节点中选择一个深度最小得,并对其发出请求信息,如果出现相同最小深度得两个以上得父节点,那么随机选取一个发送请求。

如果
相邻表中没有合适得父节点得信息,那么表示入网失败,终止过程、如果发出得请求被批准,那么父节点同时会分配一个16位得网络地址,此时入网成功,子节点可以开始通信。

如果请求失败,那么重新查找相邻表,继续发送请求信息,直到加入网络。

相关主题