基于分层结构的无线HART调度策略研究
2021-02-11陶亮亮王庆辉封岸松
陶亮亮,王庆辉,封岸松
(沈阳化工大学 信息工程学院, 辽宁 沈阳 110142)
当代发展最快速、使用广泛、卓越、有吸引力的推动新技术革命和新工业革命的一种关键技术——工业过程自动化技术是电子信息技术的综合技术及新型工业化道路的关键技术之一.现实工业环境比想象中的更加恶劣,为达到现场设备与设备间信息交换的基本要求,无线工业技术必须对通信可靠性标准要求更高.无线HART是一种开放式的无线通信标准[1-3],用于工业测量和控制工程.为达到现实中工业无线通信稳定标准,无线HART协议以全冗余网络路由、信道跳频,及重传技术增强网络的生命力,达到网络健壮效果[4-5].本文对无线HART网络资源分配问题进行研究,通过简洁有效的图路由计算结果进行资源分配, 提高网络的实时性和稳定性[6-7].目前,基于图路由算法的研究已有部分文献提出:刘扬等[8]研究了无线HART协议及其实现方式,但其实现方式过程中并没有采用图路由算法的路由方式达到要求,只是用具有冗余的两条路由去替换;党魁等[9]提出完成跳数最少的、且与图路由方式相符的算法,但其选取路由的路径时没有考量通信链路的质量;Zhao等[10]提出在图路由中的各个跳频节点之间的链接处采用通信质量判别机制判别,其虽然有效地增强了路由的健壮性,但是通信链路质量仅参考了RSSI的成分,并没有参考路径的稳定性等其他成分因素,可能会导致路径迂回链接的数据重传[10].本文采用的方法是在基于分层结构的基础上,用RSSI值作为层间判别通信质量机制并且剔除同层之间的节点通信路径,不仅保证了点到点之间的跳数最少,而且极大地提高了路由的健壮性.
1 无线HART简介
1.1 无线HART网络的系统架构
无线 HART网络具有多种应用,包括各种环境监测、智能自动化、安全管理等领域,是一种低成本、低数据传输速率的无线传感器网络系统.无线HATT网络拓扑结构如图1所示.
无线HART网络基本组成元素包括:
(1) 现场设备:负责收集现场需要测量的数据或具有执行某些特殊要求的设备.
(2) 接入点:将现场设备连接到网关.
(3) 网关:网关是计算机等终端设备所处的网络与现场设备所需要的无线网络之间的关键纽带.
(4) 网络管理器:网络管理器是无线HART网络的核心设备,其功能不仅要完成对整个网络所有设备的集中、资源的调度、管理设备之间的通信、管理网络的路由信息,同时还要监控、诊断和不断修复网络状态.
图1 无线HART网络拓扑结构Fig.1 Wireless HART network topology
1.2 无线HART网络的路由方式
无线HART采用MESH自组网络技术,是一种不同于其他路由方法技术的无线网络技术,其不仅提供其他无线网络技术无可比拟的数据传输可靠性,还极大地增强了网络的健壮性.无线网络技术的高可行性和网络健壮性的关键就是在于该种路由方式的网络技术.无线HART网络协议中定义了两种路由即图(graph)路由和源(source)路由,由网络管理者管理和生成.源路由是一种单一路径路由,其只包含从源节点到目的节点的路径,任何干扰都可能中断路径请求;源路由需要在数据包中说明,网络干扰可能导致数据传输过程中丢包,无法满足工业应用的可靠性需求.图路由是一张从源节点到目的节点所有经过路径的路径图,由网络管理者完成,并被下载到每个独立的节点设备上;图路由中的节点至少有两条到下一跳节点的路径,极大地增强了网络健壮性和可靠性,是无线HART网络协议中常用的方式.
2 路由算法
2.1 网络模型
在无线HART网络模型中,以图2为例,节点(node)和边(edge)组成用无向图G(N,E)表示,其中:N[n1,n2,n3,…]表示节点的数组;E[e1,e2,e3,…]表示节点之间的连接即边的数组.图2中1为接入点,2~7为现场其他的无线设备,它们之间的连线作为权重值用于后续的算法计算,图中省略了可以表示为各种节点之间的信息参数,如距离(d)、信号强度(RSSI)等.网络拓扑信息来自于网络中各个节点周期性传输的邻居表,如节点2和节点3互为邻居,即可直接相互传播信息,用con(i,j)表示.
图2 无线HART网络模型Fig.2 Wireless HART network model
2.2 路由算法
路由算法的实现目标是算出将数据从根节点发送到目标节点的最优路径,对于不同需求,引入的选取标准不同,故有各种路由算法.笔者采用图路由方式.图路由对于节点之间的路径要求存在冗余路径,每个节点到下一个节点之间的路径要有两条以上.利用分层算法可使图路由有效地减少搜索路径所花费的资源,确保目的节点到网络接入点的跳数最少.所以在基于文献[6]分层算法的基础上先得到其分层结构(如图3所示),再以RSSI值为权值作为选择标准,选出权值最高的路径.具体算法步骤如下:
(1) 对节点n执行分层算法,得到层数Lev.
(2) 比较是否为该层节点中RSSI值最大的,是转步骤3,否则转步骤1,n=n+1.
(3) 设置图路由ID,n=n+1.
(4)n是否为最后节点,是退出算法,否则转步骤1.
图3 无线HART分层结构Fig.3 Wireless HART hierarchy
2.3 图路由算法验证及仿真
为验证算法的有效性,首先对图2所示的无线HART网络运用分层算法得到如图3所示的分层图,再应用文章提出的图路由算法,分别得到所有目的节点的图路由,如图4所示.当现场节点到网络接入点的路径过多时,该算法能够有效地找出节点到接入点的稳定路径.
图4 无线HART网络图路由节点子图Fig.4 Wireless HART network routing node diagram
3 资源分配算法
网络中存在多种通信类型,每种类型都需要一种图路由来支撑,如请求加入、广播、数据传输等.在无线HART网络中,此处仅考虑与路径有计算关联的普通类型资源,涵盖参与发送管理命令的管理型资源,参与发送过程数据的数据资源.对于管理资源和数据资源,其分配有一定的优先级,管理资源是在设备加入网络的过程中分配;数据资源是在设备加入网络后,有需要时再分配,所以前者优先于后者.但是,不论是哪种资源的分配,都离不开图路由,都是以图路由方式为基础要求,都需要依据一种基于无线HART图路由(Graph)算法的分配方法.每个图路由(图形)需要包含2个以上的有向路径,然后分派不同的通信资源给要求不同的路由路径.
对通信资源的分配有下列几点要求:
(1) 在资源分配之前,需要先根据路由算法计算出所有路径信息,并且至少有1条是冗余路径.
(2) 依据路径信息获取所有在这条路径上节点的ID和邻居信息地址.
(3) 设备节点要求的数据传输速率必须是知晓的.
(4) 依据网络的大小估计出管理的超帧长度.
依据无线HART网络中的设备要求,对资源分配中节点存在一些问题有以下几点限制:
(1) 存在干扰的信道直接从资源分配列表中排除.
(2) 同一节点不可以一个时间点、多条信道上监测.
(3) 同一节点不可以一个时间点、多条信道上发送消息.
(4) 分配完成后,闲置资源必须保留50%以上.
3.1 图路由方式资源分配算法描述
针对HART协议标准,文章提出基于分层结构的思想上设置n层作为一个信道循环周期.例如n=4,信道分配如图5所示.1号节点作为接入根节点,Lev=1,与层数Lev=2的节点通信时,使用ch1信道;Lev=2的节点和Lev=3的节点通信时,使用ch2,以此往下类推.跳数过多超出要求时,假设有层数Lev=5的节点,则可以重复使ch1(此为层数大于信道的情况),如此循环使用.
此类分配算法类似于树形图,但又有所不同,如图4所示,需要同时对时隙(Slot)进行分配,在此运用资源分配算法以节点7为例得到分配结果图如图6所示.
图6 节点7时隙分配图Fig.6 Slot allocation diagram
3.2 资源分配算法实现及仿真
无线HART网络节点的资源分配是以管理和数据两种类型资源的分配为基础展开,资源调度实现过程主要包括超帧初始化、节点资源分配、节点资源更新过程.本算法主要依据图路由的方式进行资源分配.图路由算法见3.1.
将网络资源分为上行数据资源和上、下行管理资源.通信资源分配算法流程如图7所示,详细解说如下:
(1) 初始化超帧设定确切的长度单位符号MgLenth和DtLenth,分别代表管理和数据超帧长度;设立信道偏移(Offset)和时隙号(Slot);依据路由算法得到路由信息为每个网络节点设备分派空间资源.
(2) 下行链路管理资源,其根据指向目标设备道路的顺序依算法要求顺序分配.在超帧长度区间[0,MgLenth-1]中找到分配给第一个加入节点的可使用资源空间[Offset,Slot],在资源分配表中将其记下;接着依次标记它们的下一个节点,直到目标节点分配完全部通信资源;如果节点在此过程中无法分配,将回溯到上一个节点并根据算法重新分配它们.
(3) 上行链路管理资源,根据反向分配的下行链路管理资源.在超帧长度区间[MgLenth-1,0]中找出分配给目的节点的可用空间资源[Offset,Slot]并记录它们;将时隙和通道分配给这个节点的上一跳节点,搜索区间为[MgLenth-1,(Slot+MgLenth)% MgLenth]∪[Slot,0],如果有可用的资源空间,在资源分配表中记录下来;搜索下一个节点的资源并重复该过程,直到分配了道路上的所有节点;如果在搜索间隔内有未分配的节点,则回溯开始重新分配.
(4) 上行数据资源,优先分配通信速率低的资源,其他和上行管理资源类似,长度为DtLenth.
图7 通信资源分配算法流程Fig.7 Communication resource allocation algorithm flow
所有路径预分配完成后,在通信资源矩阵中记录所有信息,得到整个资源分配信息表,管理器根据分配表分配资源.
文章提出的跳跃选择时隙资源分配算法与经典的顺序选择时隙算法在有无干扰情况下进行仿真比较,分别对其使用5~25个现场设备,使用固定16 s的更新速率向网关传送数据,得到端到端的单向数据通信成功率,结果如图8所示.由图8可以看出:跳跃选择时隙算法的通信成功率明显高于顺序选择时隙算法的通信成功率,并且提高了节点的抗干扰性.
图8 有无干扰下端到端通信结果比较Fig.8 Comparison of end-to-end communication results with or without interference
4 结 论
针对无线HART图路由算法展开研究,提出了一种基于分层结构的图路由方式资源分配算法.在无线HART节点接入的特点下,使用分层结构模式能够保证通信节点间路径最短并提供跳间冗余以确保路由健壮,并且在分层基础上以RSSI值作为跳间选择,较大地提高了通信质量.提出了一种均衡分配信道的跳跃选择时隙的资源分配算法,该算法与顺序选择时隙算法相比较明显增加了通信的成功率,有效地提高了节点的抗干扰.实验结果表明:算法不仅提高了通信质量,增强了路由健壮,算法可靠且提高了节点的通信抗干扰能力.