发明内容
本发明所要解决的技术问题为,WIA-PA网络是时隙通信,需要对网络中的信道和时隙进行调度,针对现有WIA-PA标准中没有对信道和时隙的调度方法做出规定,本发明的目的在于提出一种满足WIA-PA网络时隙通信的需要,满足网络中所有帧的传输的信道和时隙调度方法,本发明的技术方案如下:一种适用于WIA-PA网络的信道和时隙调度方法,其包括以下步骤:
101、设定适用于WIA-PA网络的调度规则,调度规则包括获取WIA-PA网络的已知条件、硬性条件和调度优先级;所述获取WIA-PA网络已知条件包括:a.获取WIA-PA网络的拓扑结构,包括每个现场设备的簇首和每个路由设备的父节点;b.获取每个路由设备到网关设备的最优路径和网关设备到每个路由设备的最优路径;c.获取WIA-PA网络中每个现场设备的数据更新周期;d.获取WIA-PA网络中当前的跳信道序列;
102、确定超帧阶段:根据步骤101中确定的调度规则的硬性条件确定WIA-PA网络中所有设备的超帧长度;
103、信标阶段:步骤102完成后,从绝对时隙0开始安排网络中所有设备在每个时隙上的动作,主要分为以下几个步骤:A1.绝对时隙0安排网关设备发送信标帧的一跳路径,监听网关设备信标帧的设备在此时隙安排接收信标帧的一跳路径;A2.对于步骤A1中完成安排接收信标帧的路由设备,在后续的绝对时隙中找到可用时隙安排发送信标帧的一跳路径;A3.以步骤A2中的路由设备为父节点的设备,在其父节点发送信标帧的时隙安排接收信标帧的一跳路径;A4.以此类推,直到安排完所有设备的信标帧;A5.现场设备完成安排接收信标帧的一跳路径后结束此阶段的安排,转至步骤104;
104、进行CAP竞争访问阶段,安排新设备加入网络的路径包括以下步骤:
B1、根据步骤101中确定的调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;B2、从路由设备发送信标帧的绝对时隙开始,在后续时隙中选取可用的时隙安排一跳路径,用于接收新设备的加入网络请求;B3、已知路由设备到网关设备的最优路径,继续安排此多跳路径,用于转发加入请求到网关设备;B4、已知网关设备到此路由设备的最优路径,继续安排此多跳路径,用于发送加入响应到此路由设备;B5、继续在后续时隙中选取可用的时隙安排一跳路径,用于向新设备发送加入网络响应;
执行完上述步骤后继续在CAP阶段安排分配通信资源的路径,主要有以下几个步骤:
B6、根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;B7、已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径,用于配置通信资源请求,也可用于发送其它命令帧的请求;B8、根据路由设备所管理的簇内现场设备的数量,依次安排此路由设备到每个现场设备的一跳路径和每个现场设备到此路由设备的一跳路径,用于配置通信资源的请求响应、命令帧的请求响应和现场设备的信息报告;B9、已知路由设备到网关设备的最优路径,继续安排此路径,用于转发配置通信资源响应、其它命令帧的响应和现场设备的信息报告。
105、进行调度方法中簇内通信阶段,安排路径主要分为以下几个步骤:
C1、根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;C2、以此路由设备为簇首的所有现场设备中,按照数据更新周期从小到大的顺序排列,从中依次选取现场设备循环执行以下步骤;C3.查找可用时隙,安排一跳路径从此现场设备到其簇首,再继续安排同样的路径用于重传;
106、进行簇间通信阶段,安排设备发送周期性数据到网关设备的路径主要分为以下几个步骤:
D1、根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;D2、已知路由设备到网关设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径,其中,安排每一跳路径时需要在后续可用时隙中再安排一跳相同的路径,用于重传;D3、循环执行第二步,第二步执行次数总共为此路由设备簇内的簇成员数量加1,用于为此路由设备和簇内所有簇成员安排发送周期性数据的路径;簇间通信阶段安排命令帧请求和响应的路径主要有以下几个步骤:D4、根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;D5、已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径,用于发送命令帧的请求;D6、已知路由设备到网关设备的最优路径,继续安排此多跳路径,用于发送命令帧的响应;
107、生成链路表阶段:为网络中每个设备生成链路表,从绝对时隙0开始遍历全部有动作的时隙,从每一跳路径中提取相关信息***到相关设备的链路表中,包括链路ID、邻居设备地址、链路类型、相对时隙号、信道编号和超帧ID,网关设备链路的相对时隙号与绝对时隙号相同,路由设备和现场设备链路的相对时隙号计算方法为:设备链路的绝对时隙号减去此设备接收信标的绝对时隙号。
进一步的,步骤101中的调度规则中的硬性条件主要有以下几个方面:a.设备的超帧长度为WIA-PA基本时间单位的2n倍,其中n是自然数。WIA-PA的基本时间单位是32个IEEESTD 802.15.4-2006时隙;b.现场设备的超帧长度与其数据更新周期一致;c.簇首的超帧长度与其簇内的最小数据更新周期一致;d.同一个设备在同一个时隙内只能接收一次数据;e.同一个设备在同一个时隙内只能发送一次数据;f.同一个设备在同一个时隙内不能同时接收和发送数据;g.同一个时隙内的所有路径必须安排到不同的信道上,广播帧的接收端除外;h.路由设备必须在一个超帧内将所有的簇内数据和其本身的数据全部发送到目标节点,除此之外,还必须确保转发其它路由设备的数据到目标节点;i.网关设备必须在一个超帧内将需要发送的命令发送到目标节点;j.执行调度安排时需要考虑到所有类型的数据的接收和发送;k.在一个多跳路径中,优先安排离发送端近的一跳。前一跳的绝对时隙号永远小于后一跳的绝对时隙号;l.设备的超帧从相对时隙号0开始。
进一步的,步骤101中的调度规则中的调度优先级具体为:
a.根据每个路由设备与网关设备之间的最优路径,从距离网关设备最远的路由设备开始安排路径;b.在同一个路由设备管理的簇中,数据更新周期小的簇成员优先安排;c.命令帧的优先级高于数据帧;d.按照WIA-PA的超帧结构的各个阶段顺序安排,信标帧最先安排;
进一步的,步骤104-106中安排路径时,为每一跳路径分配一个信道偏移量。在同一个时隙中,信道偏移量从0开始顺序分配。根据信道偏移量计算信道的编号:
跳信道序列下标=(信道偏移量+绝对时隙号)%可用信道数量 (1)
根据计算得到的信道序列下标找到跳信道序列中的信道编号。
本发明的优点及有益效果如下:
本发明提出的信道和时隙调度方法可以安排WIA-PA网络中每个帧的传输,保证了WIA-PA网络中的帧可以发送到目标节点。本发明提出的调度方法保证了WIA-PA网络中每个设备均可在一个超帧内将帧发送到目标节点。本发明提出的调度规则完全适用于WIA-PA网络,避免了设备发送帧时出现冲突的情况,保证了WIA-PA网络稳定可靠的运行。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述。显然,所描述的实施例仅仅是本发明的一个实施例,而不是全部的实施例。
WIA-PA网络中采用时隙通信,设备之间的时隙通信基于超帧,超帧是一组循环出现的时隙的集合,超帧中时隙的数量决定了超帧的长度。WIA-PA的超帧结构分为信标、活动期和非活动期,其中活动期分为CAP和CFP,非活动期分为簇内通信、簇间通信和休眠,WIA-PA的超帧结构如图1所示。CAP阶段主要用于设备加入网络、簇内的管理和重传;CFP阶段主要用于手持设备和簇首之间的通信;簇内通信阶段主要用于簇内的簇成员和簇首之间的通信,用于簇成员发送周期性数据到其簇首;簇间通信阶段主要用于WIA-PA网络中网状网络部分的通信,用于路由设备将其本身的数据和簇内全部簇成员的数据发送到网关设备,也用于网关设备发送控制命令到路由设备。路由设备在此阶段还帮助其它路由设备转发数据。
一种适用于WIA-PA网络的信道和时隙调度方法,其特征在于,制定适用于WIA-PA网路的调度规则以及满足调度规则的调度方法。调度规则包括已知条件、硬性条件和调度优先级。已知条件是调度的前提,根据已知条件中的信息执行调度;硬性条件是调度必须满足的条件,调度完成后,信道和时隙必须满足硬性条件;调度优先级是调度执行的顺序。调度方法根据WIA-PA的超帧结构分为几个阶段:确定超帧阶段、信标阶段、CAP阶段、簇内通信阶段、簇间通信阶段和生成链路表阶段,其中在生成链路表阶段,需要根据调度过程中分配的信道偏移量计算信道编号。调度方法从确定超帧阶段开始顺序执行,根据WIA-PA的超帧结构在相应的阶段安排相应帧的传输,保证WIA-PA网络中所有帧在一个超帧周期内发送到目标节点。具体包括以下内容:
执行调度方法时,必须获取已知条件,已知条件是调度方法的前提,根据已知条件中的信息进行调度。已知条件主要有以下几个方面:
a.已知WIA-PA网络的拓扑结构,包括每个现场设备的簇首和每个路由设备的父节点;
b.已知每个路由设备到网关设备的最优路径和网关设备到每个路由设备的最优路径;
c.已知WIA-PA网络中每个现场设备的数据更新周期;
d.已知WIA-PA网络中当前的跳信道序列。
执行调度方法时,必须满足硬性条件,硬性条件主要有以下几个方面:
a.设备的超帧长度为WIA-PA基本时间单位的2n倍,其中n是自然数。WIA-PA的基本时间单位是32个IEEE STD 802.15.4-2006时隙;
b.现场设备的超帧长度与其数据更新周期一致;
c.簇首的超帧长度与其簇内的最小数据更新周期一致;
d.同一个设备在同一个时隙内只能接收一次数据;
e.同一个设备在同一个时隙内只能发送一次数据;
f.同一个设备在同一个时隙内不能同时接收和发送数据;
g.同一个时隙内的所有路径必须安排到不同的信道上,广播帧的接收端除外;
h.路由设备必须在一个超帧内将所有的簇内数据和其本身的数据全部发送到目标节点,除此之外,还必须确保转发其它路由设备的数据到目标节点;
i.网关设备必须在一个超帧内将需要发送的命令发送到目标节点;
j.执行调度安排时需要考虑到所有类型的数据的接收和发送;
k.在一个多跳路径中,优先安排离发送端近的一跳。前一跳的绝对时隙号永远小于后一跳的绝对时隙号;
l.设备的超帧从相对时隙号0开始。
调度方法中,需要根据优先级决定不同类型的数据帧的安排顺序和不同设备的安排顺序,调度优先级主要有以下几个方面:
a.根据每个路由设备与网关设备之间的最优路径,从距离网关设备最远的路由设备开始安排路径;
b.在同一个路由设备管理的簇中,数据更新周期小的簇成员优先安排;
c.命令帧的优先级高于数据帧;
d.按照WIA-PA的超帧结构的各个阶段顺序安排,信标帧最先安排;
调度方法分为几个阶段:确定超帧阶段、信标阶段、CAP阶段、簇内通信阶段、簇间通信阶段和生成链路表阶段。调度方法中需要安排多跳路径,多跳路径的安排方法为:从一设定的时隙开始依次查询后续时隙,找到第一个可用时隙安排多跳路径中的第一跳路径;继续查询后续时隙,找到下一可用时隙安排下一跳路径,直到完成每一跳路径的安排。
调度方法从确定超帧阶段开始顺序执行,确认超帧阶段根据调度规则的硬性条件确定WIA-PA网络中所有设备的超帧长度。
信标阶段从绝对时隙0开始,安排网络中每个时隙上的路径,主要分为以下几个步骤:
a.绝对时隙0安排网关设备发送信标帧的一跳路径,监听网关设备信标帧的设备在此时隙安排接收信标帧的一跳路径;
b.对于上一步中完成安排接收信标帧的路由设备,在后续的绝对时隙中找到可用时隙安排发送信标帧的一跳路径;
c.以第二步中的路由设备为父节点的设备,在其父节点发送信标帧的时隙安排接收信标帧的一跳路径;
d.循环执行b-c步,直到安排完所有设备的信标帧;
e.现场设备完成安排接收信标帧的一跳路径后结束此阶段的安排。
CAP阶段主要用于安排新设备通过路由设备或者网关设备加入网络的路径;分配通信资源的路径和管理簇成员的路径。其中,簇首管理簇成员的路径复用分配通信资源的路径。CAP阶段安排新设备加入网络的路径主要分为以下几个步骤:
a.根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;
b.从路由设备发送信标帧的绝对时隙开始,在后续时隙中选取可用的时隙安排一跳路径,用于接收新设备的加入网络请求;
c.已知路由设备到网关设备的最优路径,继续安排此多跳路径,用于转发加入请求到网关设备;
d.已知网关设备到此路由设备的最优路径,继续安排此多跳路径,用于发送加入响应到此路由设备;
e.继续在后续时隙中选取可用的时隙安排一跳路径,用于向新设备发送加入网络响应。
CAP阶段安排分配通信资源的路径主要有以下几个步骤:
a.根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;
b.已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径,用于配置通信资源请求,也可用于发送其它命令帧的请求;
c.根据路由设备所管理的簇内现场设备的数量,依次安排此路由设备到现场设备的一跳路径和现场设备到此路由设备的一跳路径。用于配置通信资源的请求响应、命令帧的请求响应和现场设备的信息报告;
d.已知路由设备到网关设备的最优路径,继续安排此路径,用于转发配置通信资源响应、其它命令帧的响应和现场设备的信息报告。
簇内通信阶段用于安排现场设备周期性发送数据到其簇首,此阶段主要分为以下几个步骤:
a.根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;
b.以此路由设备为簇首的所有现场设备中,按照数据更新周期从小到大的顺序排列,从中依次选取现场设备循环执行以下步骤;
c.查找可用时隙安排一跳路径从此现场设备到其簇首,再继续安排同样的路径用于重传。
簇间通信阶段需要安排的路径有:设备发送周期性数据和非周期性数据到网关设备的路径,网关设备与其它设备之间命令帧请求和响应的路径。其中,设备发送非周期性数据到网关设备的路径使用命令帧响应的路径,不再另外安排路径。此阶段安排设备发送周期性数据到网关设备的路径主要分为以下几个步骤:
a.根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;
b.已知路由设备到网关设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径。其中,安排每一跳路径时需要在后续可用时隙中再安排一跳相同的路径,用于重传;
c.循环执行第二步,第二步执行次数总共为此路由设备簇内的簇成员数量加1,用于为此路由设备和簇内所有簇成员安排发送周期性数据的路径;
簇间通信阶段安排命令帧请求和响应的路径主要有以下几个步骤:
a.根据调度优先级中路由设备的顺序,依次选取路由设备循环执行以下步骤;
b.已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径,用于发送命令帧的请求。
c.已知路由设备到网关设备的最优路径,继续安排此多跳路径,用于发送命令帧的响应。
生成链路表阶段中从绝对时隙0开始遍历全部有动作的时隙,从每一跳路径中提取相关信息***到相关设备的链路表中。链路表中的主要信息包括链路ID、邻居设备地址、链路类型、相对时隙号、信道编号和超帧ID。其中,网关设备链路的相对时隙号与绝对时隙号相同。路由设备和现场设备链路的相对时隙号计算方法为:设备链路的绝对时隙号减去此设备接收信标的绝对时隙号。
执行调度方法安排路径时,为每一跳路径分配一个信道偏移量。若一个时隙中的路径数量超出了可以分配信道的数量,则需要将多余的路径安排到下一个可用时隙上。在同一个时隙中,信道偏移量从0开始顺序分配。根据信道偏移量计算信道的编号,首先需要获得WIA-PA网络中跳信道序列,以及跳信道序列中信道数量,根据已知的条件可以计算信道编号,计算公式为:
跳信道序列下标=(信道偏移量+绝对时隙号)%可用信道数量 (1)
根据计算得到的“信道序列下标”找到跳信道序列中的信道编号。
本发明根据WIA-PA网络通信的特点和超帧结构调度网络中的信道和时隙,安排网络中设备之间的路径,保证网络中每个帧的传输,具体实现过程如下:图2所示为一个WIA-PA网络的拓扑结构,该网络包括一个网关设备A,地址为0x0001,三个路由设备B、C和D,地址分别为0x0100、0x0200和0x0300。路由设备D管理的簇中有一个现场设备E,地址为0x0301,路由设备E管理的簇中有一个现场设备F,地址为0x0201。图中的连线表示可以通信的路径。
根据图2中的网络拓扑结构,得知调度规则中的已知条件,如下所示:
a.路由设备B的父节点为网关设备A,监听A的信标;路由设备C和D的父节点为路由设备B,均监听B的信标;现场设备E的簇首为路由设备E,监听E的信标;现场设备F的簇首为路由设备C,监听C的信标。
b.设定路由设备B的上行最优路径为B->A,下行最优路径为A->B;路由设备C的上行最优路径为C->B->A,下行最优路径为A->B->C;路由设备D的上行最优路径为D->B->A,下行最优路径为A->B->D。
c.现场设备E和F的数据更新周期均为1sec。
d.设定网络的跳信道序列为
{11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26}
根据图2所示的网络和已知条件按照调度方法中的各个阶段调度信道和时隙。
1.确定超帧阶段
现场设备的超帧长度由现场设备的数据更新周期决定,若时隙的长度为10ms,已知现场设备E和F的数据更新周期均为1sec,则现场设备E和F的超帧长度均为100。路由设备C和D作为簇首,其超帧长度均为100。
2.信标阶段
在绝对时隙0安排网关设备发送信标帧的一跳路径,监听网关设备信标帧的设备在此时隙安排接收信标帧的一跳路径;对于上一步中完成安排接收信标帧的路由设备,在后续的绝对时隙中找到可用时隙安排发送信标帧的一跳路径;以上一步中的路由设备为父节点的设备,在其父节点发送信标帧的时隙安排接收信标帧的一跳路径;按照类似方法循环执行,直到安排完所有设备的信标帧;现场设备完成安排接收信标帧的一跳路径后结束此阶段的安排。图3所示为信标阶段安排的信道和链路。
3.CAP阶段
在CAP阶段中安排新设备通过路由设备或者网关设备加入网络的路径、分配通信资源的路径和管理簇成员的路径。其中,簇首管理簇成员的路径复用分配通信资源的路径。安排新设备加入网络的路径如下:根据调度优先级中路由设备的顺序(D,C,B,A),依次选取路由设备循环执行以下过程;从路由设备发送信标帧的绝对时隙开始,在后续时隙中选取可用的时隙安排一跳路径;已知路由设备到网关设备的最优路径,继续安排此多跳路径,;已知网关设备到此路由设备的最优路径,继续安排此多跳路径;继续在后续时隙中选取可用的时隙安排一跳路径,此时所有路径安排完成。图4所示为CAP阶段安排新设备加入网络的信道和链路。
CAP阶段安排分配通信资源的路径主要有以下几个过程:根据调度优先级中路由设备的顺序(D,C,B),依次选取路由设备循环执行以下过程;已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径;根据路由设备所管理的簇内现场设备的数量,依次安排此路由设备到现场设备的一跳路径和现场设备到此路由设备的一跳路径,路由设备C和D均有一个现场设备,只需要安排一次;已知路由设备到网关设备的最优路径,继续安排此路径,此时所有路径安排完成。图5所示为CAP阶段分配通信资源和簇内管理的信道和链路。
4.簇内通信阶段
簇内通信阶段安排现场设备周期性发送数据到其簇首,即安排D到E的路径和F到C的路径,具体安排如下:根据调度优先级中路由设备的顺序(D,C),依次选取路由设备循环执行以下过程;以此路由设备为簇首的所有现场设备中,按照数据更新周期从小到大的顺序排列,从中依次选取现场设备循环执行以下过程;查找可用时隙安排一跳路径从此现场设备到其簇首,再继续安排同样的路径用于重传。图6所示为簇内通信阶段安排的信道和链路。
5.簇间通信阶段
簇间通信阶段需要安排设备发送周期性数据和非周期性数据到网关设备的路径、网关设备与其它设备之间命令帧请求和响应的路径。其中,设备发送非周期性数据到网关设备的路径使用命令帧响应的路径,不再另外安排路径。安排设备发送周期性数据到网关设备的路径的过程如下:根据调度优先级中路由设备的顺序(D,C,B),依次选取路由设备循环执行以下过程;已知路由设备到网关设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径。其中,安排每一跳路径时需要在后续可用时隙中再安排一跳相同的路径,用于重传,此过程执行的次数为此路由设备簇内的簇成员数量加1。路由设备D、C和B分别执行2、2和1次。图7所示为簇间阶段安排周期性数据的信道和链路。
簇间通信阶段安排命令帧请求和响应的路径的过程如下:根据调度优先级中路由设备的顺序(D,C,B),依次选取路由设备循环执行以下过程;已知网关设备到路由设备的最优路径,从完成此路由设备之前动作的时隙开始,安排此多跳路径;已知路由设备到网关设备的最优路径,继续安排此多跳路径,此时全网的所有路径安排完成。图8所示为簇间阶段安排命令帧和非周期性数据的信道和链路。
6.生成链路表阶段
执行完成上述所有操作后,网络中所有设备的路径安排完毕,下一步将根据安排的路径为网络中每个设备生成链路表。
从绝对时隙0开始遍历全部有动作的时隙,即遍历图3-8,从每一跳路径中提取相关信息***到相关设备的链路表中。链路表中的主要信息包括链路ID、邻居设备地址、链路类型、相对时隙号、信道编号和超帧ID。
在生成链路表的过程中,需要根据绝对时隙号生成每个设备链路的相对时隙号。网关设备链路的相对时隙号与绝对时隙号相同。路由设备和现场设备链路的相对时隙号计算方法为:设备链路的绝对时隙号减去此设备接收信标的绝对时隙号,得到的值为此设备链路的相对时隙号,即
ri=ai-a0 (1)
式中,ri表示设备链路i的相对时隙号;ai表示设备链路i的绝对时隙号;a0表示设备链路0的绝对时隙号,即接收信标的绝对时隙号。
图3-8中的信道偏移量(ch offset)可以计算出信道的编号,根据WIA-PA网络中的跳信道序列,以及跳信道序列中信道的数量,可以计算信道的编号,计算公式为
跳信道序列下标=(信道偏移量+绝对时隙号)%可用信道数量 (2)
根据计算得到的“信道序列下标”找到跳信道序列中的信道编号。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。