ZigBee网络地址分配机制及路由失效自修复研究
基于ZigBee的自愈自组网的设计与应用

基于ZigBee 的自愈自组网的设计与应用饶达琴,张文超(杭州电子科技大学电子信息学院,浙江杭州310018)摘要:ZigBee 技术为低功耗、低成本、低复杂度、适中数据传输率和且具有自组织功能的无线监控网络的组建提供了坚实的技术基础。
为了增强无线网络在无人值守、远程监控等应用中的稳定性及智能化,本文在分析ZigBee 协议体系结构以及Z_Stack 协议栈基础上,研究了如何基于CC2530组建具有自组网、自愈特性的ZigBee 无线网络,通过对无人值守的通信基站的交流电压、电流和温湿度环境等参数的远程实时监控的试验,实现了网络的自组网与自愈功能,增强了网络的稳定性及智能化。
关键词:ZigBee ;自组网;Z_Stack ;CC2530中图分类号:TN925文献标识码:A文章编号:1674-6236(2012)23-0111-03Design and application of self -organized and self -healing network based on ZigBeeRAO Da -qin ,ZHANG Wen -chao(School of Electronics&Information ,Hangzhou Dianzi University ,Hangzhou 310018,China )Abstract:ZigBee technology provides a substantial basis for wireless monitoring and controlling network with low -power consumption ,low -cost ,low complexity ,moderate -data -rate ,self -organized and self-healing.In order to enhance the stability and intelligent for the wireless network ’s application in the unattended and remote monitoring ,Based on analysis of the basic architecture of ZigBee protocols and Z_Stack ,discusses how to organize a wireless networking with the features of self -organized and self -healing by CC2530.And with the experiment of the remote real -time monitor for industrial frequency voltage value ,current value ,temperature and humidity of unmanned communication stations ,the function of self -organized and self -healing are realized ,enhancing the wireless network stability and intelligent.Key words:ZigBee ;self -organized ;Z_Stack ;CC2530收稿日期:2012-08-09稿件编号:201208028作者简介:饶达琴(1987—),男,江西上饶人,硕士研究生。
Zigbee节点设备地址分配算法应用研究

Zigbee节点设备地址分配算法应用研究作者:蔡彬彬来源:《电脑知识与技术》2020年第28期摘要:ZigBee通信协议采用分布式地址分配机制给网络中每个节点设备分配网络地址,本文在深入研究Zig Bee设备地址分配算法的基础上,以Zig Bee应用最为广泛的树簇拓扑网络结构为例,组建一个包括Zig Bee协调器节点、路由节点及终端设备节点等完整结构的Zig Bee无线网络,给出了详细的节点设备地址分配计算方法及实现流程。
关键词:Zig Bee技术;树簇拓扑;设备节点地址分配中图分类号:TP212 ; ;文献标识码: A文章编号:1009-3044(2020)28-0074-03Abstract: ZigBee communication protocol uses distributed address allocation mechanism to assign network address to each node in the network. In this paper, based on the in-depth study of ZigBee device address allocation algorithm, taking ZigBee tree cluster topology network structure which is the most widely used as an example, a ZigBee wireless network including ZigBee coordinator node, routing node and terminal device node is established The detailed calculation method and implementation process of node device address assignment are given.Key words: Zig Bee;cluster tree network;node address assignmentZigBee技术是一种近距离、低成本、低功耗、低速率的无线通信技术[1],该技术面向的主要领域是低速个人无线区域网,符合IEEE802.15.4标准,主要适用于监控、工业应用、家庭自动控制(智能家居)以及设备远程控制,目的是满足小型低价设备的无线连接和控制。
ZigBee自组网地址分配与路由协议技术详解

如果需要从一个节点向另一个节点发送数据,那么信息将沿着树的路径向上传递到最近的祖先节 点然后再向下传递到目标节点。 这种拓扑方式的缺点就是信息只有唯一的路由通道。另外信息的路由是由协议栈层处理的,整个 的路由过程对于应用层是完全透明的
如果一个设备 Cskip(d)的值为 0,则没有路由能力,该设备为终端设备; 如果一个设备 Cskip(d)的值大于 0,则有路由能力,该设备为路由器设备。 网络中分配地址为(n 为当前分配节点个数) 终端:An=Ak+1+Cskip(d)*(n-1) 路由器:An=Ak+Cskip(d)*Rm*(n-1); 下一个路由器设备分配地址为前一个已分配路由器地址加 Cskip 偏移量 CurNodeInfo.NextRouterAddr+ = CurNodeInfo.Cskip; 下一个要分配的终端设备地址为前一个已知分配地址+1 CurNodeInfo.NextEndDevAddr++;
ZigBee 树状路由机制
假设一个路由器要发送数据包到目标地址 D。这个路由器的网络地址个网络深度为 A 和 d。它 首先会判断目标地址设备是否是它的子设备,应当满足: A < D < A+Cskip(d-1) 如果目标设备是它的子设备,下一跳地址就是
否则,路由器将此数据包发向它的父节点。
通常在支持网状网络的实现上,网络层会提供相应的路由探索功能,这一特性使得网络层可以找 到信息传输的最优化的路径。需要注意的是,以上所提到的特性都是由网络层来实现,应用层不 需要进行任何的参与。 网状网络拓扑结构的网络具有强大的功能,网络可以通过“多级跳”的方式来通信;该拓扑结构 还可以组成极为复杂的网络;网络还具备自组织、自愈功能;
ZigBee树型网络地址分配及结构

ZigBee树型网络地址分配及结构
树型路由机制包括配置树型地址和树型地址的路由。
当协调器建立一个新的网络,它将给自己分配网络地址0,网络深度d=0。
网络深度表示仅仅采用父子关系的网络中,一个传送帧传送到ZigBee协调器所传递的最小跳数。
如“节点A”加入网络并与协调器连接,那么“节点A”的网络深度是1;“节点B”加入网络并与“节点A”连接,那么“节点B”的网络深度是2,依此类推。
在树簇型网络中,协调器和路由器都可以连接N个路由节点和终端节点做为自己的子节点,形成一个个“簇”。
但是协调器和路由器能连接的子节点的数量是不是无限的呢?
协议栈中,有以下几个参数影响网络拓扑的形态:
Cm(nwkMaxChildren):每个父节点可以连接的子节点的总个数;
Rm(nwkMaxRouters):在Cm中,可以是路由节点的个数,Rm<=Cm;
Lm:网络最大深度,协调器的深度为0。
这三个参数的值在Z-stack中分别由变量CskipChldrn、CskipRtrs、MAX_NODE_DEPTH决定。
这三个变量可以在NWK中的nwk_globals.c 和 nwk_globals.h 两个文件中查找。
地址的分配:
每一个节点加入网络时,都会被分配16位
(未完待续)。
ZigBee路由算法的研究与改进

KE YW ORDS Z g e ,r u igag r h , cu trte , AODVj, n ih o a l iB e o t lo i m n t lse -re r eg b述
Zg e iB e技术 是 一种短 距 离、 复杂度 、 功耗 、 低 低 低
用 前景 。Zg e iB e协议规范使 用 了 I E 8 2 1 . E E 0 . 5 4定义
在 Zg e iB e网络 层 中 , 采用 分 布式 地址 分 配方案 来 分 配 网络地址 。该 方案 为每 一个 父设备 分配 一个有 限
的 网络地 址 段 , 由父设 备 具 体分 配 一 个 网络 地址 给 再 它的每 个子 设备 , 些 地址在 同一 个 网络 中是唯一 的 。 这 协 调节 点在 建 立 网络 以后使 用 1 6位 的 1 6进 制 数 O 0 XO 0作 为 自己的 网络 地 址 , 由节 点 和终 端 节 点加 路 入 网络后 , 用父设 备 给他分 配 的 1 位 的短 地址来 通 使 6 信 。整 个 网络 的架构 由 3个值 决 定 , 别是 : 分 网络 的最
大 深 度 ( m) 每 个 父 设 备 最 多 拥 有 的 子 节 点 个 数 L ,
的物理 层 ( HY) P 和媒体介质 访 问层 ( MAC , 在此基 )并
础上 定义 了 网络层 ( NWK) 应用 层 ( L 架构 。网 和 AP )
络 层 提供 的 功能 主要是 新建 一个 网络 、 点加 入 和离 节
o i i a l o i m ,p o o e o r c ie r u e me h d b s d o h eg b r t b e a d n i h o o e n n l z s t e a t a r n la g rt g h r p s s a c r e tv o t t o a e n t e n i h o a l n eg b r n d ,a d a a y e h c u l
zigbee入网退网机制分析

Zstack入网退网代码分析网络初始化和路由:网络初始化:协调器(Coordinator)首先在某个频段发起一个网络,网络频段的定义放在DEFAULT_CHANLIST配置文件里。
如果ZDAPP_CONFIG_PANID定义的PAN ID是0xFFFF(代表所有的PAN ID),则协调器根据它的IEEE地址随机确定一个PAN ID。
否则,根据ZDAPP_CONFIG_PANID的定义建立PAN ID。
当节点为Router或者End Device时,设备将会试图加入DEFAULT_ CHANLIST所指定的工作频段。
如果ZDAPP_CONFIG_PANID没有设为0xFFFF,则Router或者End Device会加入ZDAPP_CONFIG_PANID所定义的PAN ID。
设备上电之后会自动的形成或加入网络,如果想设备上电之后不马上加入网络或者在加入网络之前先处理其他事件,可以通过定义HOLD_AUTO_START来实现。
通过调用ZDOInitDevice(int startdelay)来手动定义多久时间(startdelay)之后开始加入网络。
设备如果成功的加入网络,会将网络信息存储在非易失性存储器(NV Flash)里,掉电后仍然保存,这样当再次上电后,设备会自动读取网络信息,这样设备对网络就有一定的记忆功能。
如果需要使用NV Flash的设置,可以通过定义NV_RESTORE宏和关闭SW_BYPASS_NV来使用。
有关网络参数的设置大多保存在协议栈Tools文件夹的f8wConfig.cfg里。
路由:Z-Stack采用无线自组网按需平面距离矢量路由协议AODV,建立一个Hoc网络,支持移动节点,链接失败和数据丢失,能够自组织和自修复。
当一个Router接受到一个信息包之后,NMK层将会进行以下的工作:首先确认目的地,如果目的地就是这个Router的邻居,信息包将会直接传输给目的设备;否则,Router将会确认和目的地址相应的路由表条目,如果对于目的地址能找到有效的路由表条目,信息包将会被传递到该条目中所存储的下一个hop地址;如果找不到有效的路由表条目,路由探测功能将会被启动,信息包将会被缓存直到发现一个新的路由信息。
ZigBee无线网络原理

ZigBee无线网络原理
ZigBee无线网络是一种低功耗、低速率的无线网络通信协议,其原理基于IEEE 802.15.4标准。
它适用于需要将大量节点连
接到一个中心控制器的应用场景,具备自组织、自修复和自动路由等特性。
ZigBee网络由三种设备组成:协调器(Coordinator)、路由器(Router)和终端设备(End Device)。
协调器是网络的核心,负责管理网络配置和协调各个设备的通信。
路由器可以转发数据包,并帮助建立路由表,使数据传输更高效。
终端设备是最简单的节点,功能有限且通信范围较短。
这些设备可以通过无线信道进行通信,并使用MAC层和物理层协议来实现数据传输。
ZigBee网络采用星型、树型或网状拓扑结构,其中协调器处
于网络的根节点,其他设备通过与协调器的直接或间接连接来实现通信。
网络中的节点可以根据实际情况自动组建和拓扑重组,无需手动配置。
在数据传输过程中,ZigBee网络使用CSMA-CA(载波感知多路访问监听)机制来协调节点的发送行为,避免冲突和碰撞。
每个节点都有一个64位的唯一地址,用于标识设备和建立通
信连接。
节点之间可以通过短距离的无线信道进行通信,距离一般在几十米到几百米之间,受限于无线信号传播和环境干扰等因素。
ZigBee网络支持多种应用层协议和功能,例如家庭自动化、
工业控制、智能电网等。
它的低功耗特性使得它在电池供电设备、传感器网络等场景下得到广泛应用。
通过合理设计和优化网络结构和通信机制,ZigBee无线网络可以实现可靠的数据传输和灵活的网络管理。
ZigBee地址模式分析

ZigBee地址模式分析我们知道ZigBee设备有两种地址。
一种是64位IEEE地址(物理),即MAC地址,另一种是16位网络地址。
64位地址使全球唯一的地址,设备将在它的生命周期中一直拥有它。
它通常由制造商或者被安装时设置。
这些地址由IEEE来维护和分配。
我们刚买到的调和上的IEEE地址应该是全部的F,我们可以通过TI的软件SmartRF Flash Programmer重新写入一个IEEE地址,这就像我们的PC上的物理地地类似,在全球范围内物理地址是唯一的。
不过在ZigBee设备中我们也可以更改这个地址,其实也就不确保全球唯一了,当然,在PC上也可以通过软件更改物理地址,不过只要在一个局域网中没有两个相同的物理地址,是一样可以连接互联网。
很多学校里的上网帐号就是和物理地址进行绑定的,分配给一台PC上的IP地址,是不可能在另一个PC上使用,除非修改PC的物理地址。
说多了,其实也就是你应该必须保证在你组成的网络中,不可以写入相同的IEEE地址。
16为网络地址是当设备加入网络后由协调器或路由器分配的。
它在网络中是唯一的,用来在网络中鉴别设备和发送数据。
在这个版本的中Z-Stack-1.4.3-1.2.1中,可以看到下面typedef enum{afAddrNotPresent = AddrNotPresent, //绑定afAddr16Bit = Addr16Bit,//短地址afAddrGroup = AddrGroup, //组发送afAddrBroadcast = AddrBroadcast//广播发送} afAddrMode_t;typedef struct{union{uint16 shortAddr;} addr;afAddrMode_t addrMode;byte endPoint;} afAddrType_t;这里的地址模式只有4种,而没有IEEE地址的什么事,不过可以想像,在一个ZigBee网络中,当ZigBee的协调器建立网络成功以后,终端设备或者路由器设备打开电源开关加入网络时,网络成功后协调如何知道它管辖的表具号呢?这时会分配一个16位的短地址,当加入网络时终端会发送一个响应给协调器,协调器的短地址是知道的因为是0x0000,当设备加入成功后,会产生一个ZDO_STATE_CHANGE_EVT事件,这个事件就是设备加入网络成功后,并在网络中的身份确定后产生的一个事件,我们可以在这里处理,一些初始化,比如可以发送终端的短地址,IEEE地址等,这里协调器接收到以后,可以提取出终端的短地址,其实在终端给协调器发送的每个数据包中,都含有其自身的短地址,如下面的结构体当中的afAddrType_t srcAddr;协调器在接收到短地址后,就可以知道自己下面管辖的终端结点,或者路由结点有那些了,协调器提取到的短地址可以存放到一个非易失性的存储器中,这时如果要使用直接地址模式,也就是单播的话,就可以在这个表中查找,当然这要和上位机的软件结合起来,起码应该让用户看到这些短地址,这种短地址再和某种应用中的属性对应起来。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ZigBee网络地址分配机制及路由失效自修复研究李清平;刘清华;傅幼萍【摘要】探讨了ZigBee网络中用于路由发现和数据传输的网络地址以逻辑树方式进行分配的机制,以基于Cluster-Tree和AODVjr算法的路由选择策略阐述了ZigBee网络规模与节点转发率及平均延时的关系,并通过OPNET平台仿真某路由节点失效后ZigBee网络的自修复功能,评估了其对网络性能产生的影响.最后通过分析节点自我修复能力、各节点应用层数据传输的影响以及点对点的延时情况,验证了ZigBee网络良好的鲁棒性和收敛性.%The mechanism of allocating network address used in routing discovery and data trans-mission in the ZigBee network by means of logical tree is work address allocation algorithm show s that 16-bit short addresses of terminal equipment having the same parent node are all continuous.Routing strategy based on Cluster-Tree and AODVjr algorithm indicates that with the expansion of ZigBee network,the node forwarding rate is on the decline,the average de-lay reduce gradually.Through the OPNET platform,self-healing function of ZigBee network is emulated after a routing node failure,and its influence on network performance is evaluated. The good astringency and strong robustness of ZigBee network have been tested and verified by analyzing the self-healing capacity of failed nodes,the influence on data transmission in the appli-cation layer of each node and point-to-point delay.【期刊名称】《山东理工大学学报(自然科学版)》【年(卷),期】2018(032)003【总页数】6页(P38-42,47)【关键词】ZigBee网络;网络地址;分配机制;路由失效;自修复能力【作者】李清平;刘清华;傅幼萍【作者单位】浙江育英职业技术学院信息技术分院,浙江杭州310018;浙江育英职业技术学院信息技术分院,浙江杭州310018;杭州万向职业技术学院经济贸易系,浙江杭州310023【正文语种】中文【中图分类】TP393.02基于IEEE802.15.4标准的ZigBee是一种低功耗、近距离的WSN(Wireless Sensor Network,无线传感器网络)通讯技术,具有短时延、低复杂度、自组织、低功耗、免执照频段等特点 [1-4].作为一种新兴的无线通信技术,ZigBee得到了越来越广泛的关注和应用.由于ZigBee联盟直到2005年6月才推出技术规范[5],因此对于IEEE802.15.4和ZigBee的研究仍处于活跃阶段,目前主要存在以下几方面的问题:(1)ZigBee的核心技术之一是动态组网,即网络中的每个节点相隔一定时间,需要以无线信号交流的方式重新组网,这就涉及到网络地址的分配机制问题;(2)由于ZigBee网络中部署了大量微型无线传感器,节点分布密集,每一个网络节点除了自身作为信息采集点和执行来自中心的命令外,还承担着来自网络的数据中转任务.当由于能量耗尽、传感器损坏、环境变化等因素导致节点失效后,ZigBee网络能否有效修复路由路径、确保数据传输,也是技术瓶颈之一.此外,ZigBee网络节点能耗问题、数据传输时延问题以及传输距离问题,均为当前ZigBee技术实际应用亟待解决和完善之处[6-8].1 ZigBee设备类型及网络地址分配机制1.1 ZigBee网络设备类型ZigBee网络的基本单元是节点,按功能可分为全功能设备(Full Function Device,FFD)和简化功能设备(Reduced Function Device,RFD).FFD可用作网络协调器,连接协调器或另一个通信设备,还能发现其它FFD和RFD并建立通信联系.RFD按最少RAM和ROM资源设计成简单的收/发节点,能搜索现有网络,必要时传输数据,向协调器请求数据,多数时间处于休眠状态以节省电池能耗[9].(1)协调器(Coordinator):启动和配置网络的设备,具有最高权限,负责网络正常工作以及保持与网络中其它设备的通信并负责网络ID的分配.一个ZigBee网络只允许有一个ZigBee 协调器.(2)路由器(Router):一种支持关联的设备,能够实现其它节点消息的转发功能,同时还具有为其它子节点分配网络ID的功能,这就意味着路由器和终端设备可以不依赖协调器而自行构成一个ZigBee网络.(3)终端设备(EndDevice):具体执行数据采集和传输的设备,不能转发其它节点消息.1.2 ZigBee网络地址分配机制ZigBee网络中的所有节点都有两个地址:64位的IEEE地址(MAC地址)和16位的网络地址.64位的MAC地址是全球唯一地址,由IEEE组织来分配和维护.16位网络地址是节点加入网络时动态分配的,用于设备识别和数据传输,仅在网络内部使用,采用逻辑树层次机制进行分配 [9-10].网络地址是节点加入网络时由其父节点动态分配的,彼此形成父子关系,所有的节点共同组成树状逻辑关系,逻辑树中的每一个节点都拥有两个参数:网络地址A和网络深度d,网络深度表示仅仅采用父子关系的网络中,一个数据分组发送到ZigBee协调器所传递的最小跳数[10-11].Coordinator是整个ZigBee网络的根节点,当Coordinator建立一个新网络时,它将给自己分配网络地址A0=0,网络深度d0=0.如果节点i加入网络,并且与节点k连接,那么父节点k将根据自身的网络地址AK和网络深度dk,为子节点i分配网络地址Ai和网络深度di=dk+1,网络地址Ai的算法为[10-11]:(1)如果加入的是没有路由功能的RFD节点,则:Ai=AK+Cskip(di)×Rm+i,1≤i≤Cm-Rm.(2)如果加入的是具有路由功能的FFD节点,则:Ai=AK+1+Cskip(di)×(i-1),1≤i≤Rm.式中Cskip(d)=(1)式(1)中:Cskip(d)表示不同深度下父节点拥有的地址数;Cm表示父节点可以拥有的最大子节点数;Lm表示网络最大深度;Rm表示父节点可以拥有的最大子路由节点数.以图1为例说明网络地址的分配算法.协调器Coordinator节点的Cskip(d)=31,所以Coordinator关联的第1个路由器节点Router1分配地址1,第2个路由器节点Router2分配地址1+31=32,第3个路由器节点Router3分配地址32+31=63,第4个路由器节点Router4分配地址63+31=94,各个子路由器节点的地址以此类推.由于终端节点的父节点Coordinator的Rm=4,所以第1个终端节点EndDevice1的地址为0+31*4+1=125,第2个终端节点EndDevice2的地址为0+31*4+2=126,可见网络中所有同一父节点的终端设备的16位短地址都是连续的.图1 ZigBee网络地址分配算法示意图Fig.1 Diagram of address allocation algorithm of ZigBee network2 ZigBee网络路由算法及路由选择路由协议是自组网体系结构的核心部分,ZigBee协议采用Cluster-Tree和AODVjr作为自身的路由算法,主要是发现和维护路由,选择路由并转发数据,监控网络拓扑结构变化等,以达到成本低、功耗低、可靠性高的设计目标[11-12].2.1 ZigBee网络路由算法1)Cluster-Tree路由算法Cluster-Tree算法按树型结构分层遍历,节点根据目的网络地址计算下一跳.假设网络地址为A,网络深度为d的路由节点收到目的地址位为D的数据分组,则根据A<D<A+Cskip(d-1)(2)判断是否为自己的子节点.如果是自己的子节点,则转发给子节点N.N由公式(3)确定,即(3)如果不是自己的子节点,则转发给其父节点.2)AODVjr路由算法AODVjr(AODV Junior)算法是一种按需分配的路由协议,是对AODV(Ad-Hoc On Demand Distance Vector)算法的一种简化改进.首先源节点以广播的方式发送RREQ(Router Request,路由请求分组),具有路由功能的节点收到消息后,建立反向路由,转发RREQ分组,并将源节点到此节点的路由开销添加到路由搜索表和RREQ中,直到目的节点收到此RREQ.目的节点选择开销最少的反向路由,将RREP(Router Replies,路由回复分组)返回源节点,同时所有接收到此RREP分组的节点都将更新自己的邻居表,最终建立各个节点的路由表.2.2 ZigBee网络路由策略按有无路由功能,ZigBee网络节点可分为有路由功能的RN+节点(Coordinator设备、Router设备)和无路由功能的RN-节点(EndDevice设备).RN+节点有足够的存储空间和路由选择能力,执行AODVjr路由算法;RN-节点存储空间受限,不具备路由选择能力,收到分组后只能采用Cluster-Tree算法处理[12-14].不同规模下结合两种算法的ZigBee网络节点转发率和平均延时分别如图2和图3所示. 图2 不同网络规模的节点转发率Fig.2 Forwarding rate of nodes of different network scale图3 不同网络规模的平均延时Fig.3 The average delay of different network scale图2和图3显示,随着网络规模的扩大,ZigBee网络转发节点数占节点总数的比例整体上呈现不断下降趋势,平均延时逐渐减少,其原因在于随着网络规模的扩展,同一区域内的节点密度也随之增加,使得网络节点的转发率不断减小,平均延时因数据传输距离缩短,转发效率提升而降低.3 基于OPNET平台的ZigBee网络路由失效自修复仿真通过OPNET平台,仿真ZigBee网络的某个路由器节点失效后,其关联的子节点如何重新找到路由路径,从而体现ZigBee网络在无需人工干预情况下的自组织功能,并分析和评估由此对整个网络产生的影响.3.1 OPNET仿真平台简介OPNET是一个能够准确分析复杂网络性能和行为的仿真平台,提供Process(进程)、Node(节点)和Network(网络)三层建模机制,三层模型完全对应实际的协议、设备和网络层次,用户通过OPNET平台能完整而深入了解网络的相关特征.采用离散事件驱动模拟机理和混合建模机制,把基于包的分析方法和基于统计的数学建模方法结合起来,在提高仿真效率的同时,可得到详细的模拟结果[15-16].3.2 场景设置及拓扑结构设置一个2 000m×1 750m的ZigBee网络仿真场景,网络中包含一个ZigBee协调器Coordinator、一个ZigBee固定路由器Fixed_Router,一个ZigBee可移动路由器Mobile_Router和两个ZigBee终端节点EndDevice1、EndDevice2.终端节点EndDevice1、EndDevice2都无法直接与协调器Coordinator进行通信,必须通过各自关联的父节点路由器转发数据,EndDevice1通过Fixed_Router路由器接收转发Coordinator传送的数据分组,EndDevice2通过Mobile_Route 路由器接收转发Coordinator传送的数据分组,如图4所示的粗实线展示部分.当Mobile_Route路由器沿着设定的白色细实线轨迹移动到ZigBee网络信号覆盖范围之外时,模拟该节点“失效”后EndDevice2的路由重发现和数据分组新的转发路径如图4虚线展示部分.图4 ZigBee网络路由失效前后数据分组转发路径拓扑图Fig.4 Topological graph of data packet forwarding path before and after the routing failure of ZigBee network3.3 仿真参数设置设置ZigBee仿真场景中所有节点的PAN ID为1,信号传输频段为2 450MHz,发射功率为3mW,接收灵敏度为-85dBm.dBm是无线网络发射功率的绝对值,其计算公式为:10lg(p/1mW)式中,p是以mW为单位的功率值.场景中,仿真节点发射功率为3mW,求得p=10lg3=4.77dBm ;因此,发射功率减去接收灵敏度的差值为4.77-(-85)=89.77dB.自由空间路径损耗公式为FSPL=32.45+20lgd(C)+20lgf(4)式(4)中:FSPL(Free Space Path-Loss)单位为dB;d(C)为视距传播距离,单位km;f为频率,单位MHz.已知f=2 450MHz,FSPL=89.77dB,由式(4)可得d(C)=0.299 80km=299.8m. 从部署的仿真场景可知Coordinator的坐标(1 871,1 263),EndDevice1的坐标(673,970),EndDevice2的坐标(640,1 422),由此可以计算EndDevice1、EndDevice2分别与Coordinator之间的直线距离D(E1-C)=1 233.31m、D(E2-C)=1 241.23m,两者的值都大于视距传播距离d(C),说明两个终端节点接收的数据分组都无法通过协调器直接发送,且D(E1-C)和D(E2-C)两者之间的直线距离D(E1- E2)=453.2m,也大于视距传播距离d(C),说明彼此之间的信号区域不会覆盖重叠[16-18].因此终端节点EndDevice1、EndDevice2必须通过各自的父节点进行数据转发,这为模拟其中某一父节点失效后重新建立路由并转发数据的实验提供了可行性.3.4 仿真结果分析图5显示,Mobile_Route路由器沿着设定的轨迹移动,大约在12min后离开ZigBee网络,节点的路由功能“失效”.图5 Mobile_Route节点路由功能变化情况Fig.5 The variation of routing function of Mobile_Route node图6显示,开始阶段所有节点启动发送和接收工作,数据分组转发速率明显加大,几分钟之后趋于平稳,然后Mobile_Route路由器开始移动至约12min后离开ZigBee网络而路由功能“失效”,EndDevice2节点的接收速率因此而产生抖动现象,在与Mobile_Route路由器失联后,其数据接收中断,但在较短时间内重新恢复了与Coordinator协调器之间的通信,验证了网络设备较强的自我修复功能,同时也显示了ZigBee网络良好的鲁棒性.图6 EndDevice2节点自我修复情况Fig.6 Self-healing of EndDevice2 node 路由节点“失效”后,网络数据传输的变化如图7所示.由于受影响节点能够在极短的时间内实现自我修复,重新恢复中断的收/发路径,因此从网络节点的接收速率来看,路由节点的“失效”对整个ZigBee网络的数据传输影响较小,显示了ZigBee网络良好的收敛性.图8为Coordinator节点到EndDevice2节点的延时曲线.开始时节点延时增大,随后因Mobile_Route的移动引发延时曲线振荡加剧,路由“失效”后,数据传输中断,延时曲线陡然下降,但在很短时间内Coordinator就将数据分组通过Fixed_Router传送给EndDevice2节点,此时点对点延时曲线趋向平稳,进一步验证了ZigBee网络的“失效”自修复能力.图7 ZigBee网络各节点应用层数据分组接收情况Fig.7 Reception of the application layer data packet of each node in the ZigBee network图8 Coordinator节点到EndDevice2节点的延时情况Fig.8 Time delay from Coordinator node to EndDevice2 node4 结束语无线传感器网络WSN涉及嵌入式计算、无线传感器、现代通信、分布式信息处理等交叉学科,为当前无线组网技术的重点研究领域.自组网能力强、自恢复能力强的无线自组网技术标准ZigBee发展迅速,已在部分智能传感器场景中得到应用,智慧城市的建设和发展将进一步推动ZigBee产品的推广应用和不断更新. ZigBee网络存在的问题主要体现在地址分配机制、节点能耗、数据传输时延、传输距离以及路由失效自修复等方面.逻辑树分配机制说明ZigBee网络中同一父节点的终端设备的16位短地址都是连续的,结合Cluster-Tree和AODVjr路由算法的RN+节点和RN-节点路由选择策略,使得网络转发节点数占节点总数的比例随网络规模的扩大呈下降趋势,平均延时逐渐减少,通过设置OPNET平台的仿真场景和拓扑结构,分析了路由失效对数据传输、点对点延时等性能产生的影响,通过路由收敛性验证了ZigBee网络的自我修复能力和网络的鲁棒性.【相关文献】[1]AKYILDIZ I F, SU W, SANKARASUBRAMANIAM Y, et al. A survey on sensor networks[J]. IEEE Communications Magazine, 2002,40(8):102-114.[2]IEEE Std.15.4:Wireless Medium Access Control(MAC) and PhysicalLayer(PHY) Specifications for Low-Rate Wireless Personal AreaNetworks[S]. NewYork: IEEE, 2003. [3]RACHANA B S,RAJESH prehensive survey on effect of mobility over routing issues in wireless multimedia sensor networks[J].International Journal of Pervasive Computing and Communications, 2016,12(4):447-465.[4]MANJEET S,SURENDER K S.A comprehensive review of fuzzy-based clustering techniques in wireless sensor networks[J].Sensor Review,2017,37(3):289-304.[5] 郭昌飞.基于ZigBee的无线传感器组网技术研究与应用[D].北京:北京信息科技大学,2012.[6] 潘恒曦,辛旺,范蟠果.ZigBee在无线传感器网络中的应用[J].机械与电子,2010(S1):245-248.[7] 刘承鹏.无线传感器网络定位算法研究[D].淄博:山东理工大学,2016.[8] 李冉.基于ZigBee无线传感器网络定位的研究[D].广州:广东工业大学,2016.[9] 杨春华.基于ZigBee技术的无线网络协调器的研究[D].成都:西南石油大学,2011.[10] 李明.IEEE802.15.4MAC协议中能耗与时延均衡研究[D].广州:暨南大学,2010.[11] 王月平,耿晓菊,刘春涛,等.IEEE802.15.4MAC协议低功耗研究[J].计算机技术与发展,2009,19(12):139-142,165.[12] 练云翔.无线传感器网络路由算法与能耗模型研究与仿真[D].兰州:兰州交通大学,2016.[13] 周登龙,陈硕.ZigBee网络中不同路由性能的研究与仿真[J]无线互联科技,2012(9):69-71.[14] 穆嘉松,刘开华,史伟光.ZigBee网络中基于节点移动性的路由选择策略[J].天津大学学报,2012,45(4):301-308.[15] 李清平.基于进程核心的网络仿真建模及统计分析[J].武汉理工大学学报(信息与管理工程版),2012,34(6):681-683.[16] 陈敏.OPNET网络仿真[M].北京:清华大学出版社,2004.[17] 范燕,俞洋,李永义,等.基于ZigBee 无线传感器网络的远程监控系统[J].实验室研究与探索,2016,35(1):80-84.[18] 王一棋,何丽莉,胡成全,等.基于ZigBee和Internet的无线智能家居网关系统[J].吉林大学学报(理学版),2015,53(2):302-306.。