一种体域网中基于多因子优先级的时隙分配方法与流程

文档序号:11437954阅读:190来源:国知局
一种体域网中基于多因子优先级的时隙分配方法与流程
本发明涉及移动通信和远程医疗领域,尤其涉及一种体域网中基于多因子优先级的时隙分配方法。
背景技术
:作为无线传感器网络(wsn)在应用领域的一个重要分支,无线体域网(wban)因其便携、可移动的特点日益受到医疗、军事、娱乐消费电子等领域的广泛关注。近年来,医疗保健系统的发展已显着改善。作为医疗体系的基础,无线体域网(wban)正面临着由于老年人口和慢性病的增长带来的挑战。如图一所示,wban由多个可穿戴或可植入人体的传感器节点和一个聚合器组成。传感器节点具有采集、处理、传输人体的生理数据(如脑电图、血压、血糖、心率等),通过信道传输数据到协调器。协调器拥有更高的计算能力和处理功能,把来自不同传感器节点的数据传输到远程服务器。与传统的以数据为中心的wsn相比,以人体为中心wban主要特点如下:(1)对于wban中的传感器节点很难替换和充电,使得每个节点必须利用有限的能量最大限度的延长自身的寿命(2)wban主要采用星型拓扑结构,网络的拓扑结构是相对固定。(3)各节点的采样率、最长时延容限等属性各不相同,甚至差异很大,因此存在较大的节点异构性。因此,研究高效合理的方法来延长网络节点的生命周期有着切实意义。在过去的无线体域网的mac层协议中,marinkovic等人提出了一种低占空比协议,该协议把每个周期划分为用于数据传输和信息交互两部分,每个节点在除去通信外的其他时间都进入睡眠,有效的减小空闲侦听和字节消耗,从而达到节能效果。然而该协议各个节点的时长设定容易引发冲突,时延服务将得不到保证。lih等人提出了一种基于tdma的mac层协议,通过采用星形结构且以心跳信号进行节点间的同步,并提出了一种主动同步机制,从而降低了节点间的能耗,但该协议要求每个节点需要增加一个心跳传感器,大大增加了系统的复杂度。c.chen等人提出一种基于超帧的tdma协议,该协议提出一种新的时隙分配策略从而得出每节点的时隙个数和时隙次序,再通过能量优化模型,使节点能耗最小,但为确保时隙高利用率,该协议牺牲了部分节点的时延。技术实现要素:本发明的目的在于克服现有技术的不足,提供一种体域网中基于多因子优先级的时隙分配方法。为了解决上述问题,我们首先采用星形网络结构,由于星形网络拓扑具有网络结构简单的优点,且星形拓扑不需要设计路由算法,而且便于协调器完成对wban传感器节点的控制,所以我们在本系统中采用星形网络结构。同时,ieee802.15.6标准颁布以来,其中的mac层受到人民广泛的关注。ieee802.15.6标准中的mac层主要是针对星形网络而设计,并且常以两种方式运行:(1)信标模式且采用超帧结构;(2)非信标模式且不采用超帧结构。本发明中对第一种运行方式进行研究。利用信标使能模式下的超帧进行控制和协调所有节点的信息交互,超帧本是ieee802.15.4中信标使能模式下应用的一种结构,协调器通过周期性的发送信标,作为超帧的开始,并由以下几部分组成,超帧结构如(图三)所示。协调器通过周期性发送信标,通知所有在本轮超帧内需要传输数据的节点,分配给其的时隙次序和数目。本发明使用的超帧分为四个阶段,功能如下:(1)信标时期。每超帧开始时候,协调器广播信标帧,信标中携带协调器分配给每个节点的时隙信息。信标用来协调数据传输时期协调器与各传感节点之间的通信,同时完成各节点的同步。(2)数据传输时期。本时期分为多个固定长度的时隙,用于协调器和各节点之间的通信。每个时隙内的通信包括上行的数据帧和下行的应答帧,如(图四)所示。所有节点在接受到信标帧以后,获知协调器分配的时隙,在指定的传输时隙内,节点将数据打成数据包发送到协调器,协调器随后回复应答帧。为了防止由时钟漂移引起的多个节点之间信号干扰,每个时隙间加入安全时间tg在指定的时隙传输范围以外的时间,节点关闭无线射频,只进行采样。(3)信息融合时期。用于在协调器上的融合和转发,协调器收集到各传感器数据后,转发到终端,以供远程监控。(4)报警时期。本时期用来保证异常数据可以及时的传送到协调器中。同内网传输时期一样,本阶段也是分为多个小时隙,每个节点占用唯一的时隙。当传感器采集到异常数据后,通过特定的报警时隙发送报警帧到协调器中。本时期可以在传感器进入睡眠模式后,及时上报异常数据。由于医学传感器节点数据率有很大差异性,固定时隙会导致时隙利用率大大降低,尤其是一些时隙利用率比较低的节点,减少时隙的长度是解决这个问题的一个简单的方法,但一味的减少时隙长度势必会引起控制信息比例的提高,同样降低时隙利用率。而如果时隙不固定则会引起协调器和节点信息交互的增加,浪费信道资源。因此需要提出一种策略,使在固定时隙长度的情况下,能够充分利用时隙。本发明采用的技术方案是:一种体域网中基于多因子优先级的时隙分配方法,其包括以下步骤:s1:协调器在每个超帧开始前计算每个节点初始需要的时隙数;s2:协调器确定每个节点时隙分配时的权重值,按照每个节点的权重值从大到小进行节点初始排序,并按该初始顺序分配每个节点对应的时隙数;s3:协调器判断每个节点中的数据是否超过时延门限,并确定节点的优先级;当节点中的数据超过时延门限时,将该节点设为节点优先;当节点中的数据未超过时延门限时,将该节点设为非优先节点;s4:协调器判断节点数据的数据量是否大于预留给该节点的数据量;当节点数据的数据量大于预留给该节点的数据量时,执行步骤s5;当节点数据的数据量不大于预留给该节点的数据量时,执行步骤s8;s5:协调器判断该节点是否处于高优先级:当该节点为低优先级时,执行步骤s8;当该节点为高优先级时,执行步骤s6;s6:协调器判断该节点的剩余数据的时延容限是否超过该节点的最大时延容限;当剩余数据的时延容限超过该节点的最大时延容限时,该节点的初始需要的时隙数加1;当剩余数据的时延容限未超过该节点的最大时延容限时,该节点的初始需要的时隙数保持不变;s7:协调器判断所有高优先级的节点的新分配的总时隙数是否小于协调器一个周期内总的时隙数:当高优先级的节点的新分配的总时隙数小于协调器一个周期内总的时隙数时,协调器从低优先级的节点中挑选节点的初始需要的时隙数不为零的节点,并将挑选中的节点的优先级改为高优先级;否则,执行步骤s8;s8:协调器计算每个节点按当前排序还剩余的数据量,并按每个节点初始排序将各个节点的剩余的数据量放入超帧,并去除低优先级的节点的时隙,重组得到一个新的时隙分配序列为最终确定各节点发送的顺序和占用时隙数,发送超帧。进一步地,所述步骤s1的具体步骤为:s1-1:协调器获取每个节点的采样率fi;s1-2:协调器在每个超帧开始前获取每个节点的缓存中最先采样到的数据距离当前的时间di,s1-3:协调器通过信息帧的最大长度计算每个节点需要的时隙数;每个节点需要的时隙数的计算公式:其中nr,i表示第i个节点在本超帧初始需要的时隙数,sd表示一个数据包中有效字节占用的最大长度。进一步地,所述步骤s2中协调器确定每个节点时隙分配时的权重值的方法包括以下步骤:s2-1:根据每个节点的节点功能的不同为每个节点分配对应的权值m;s2-2:获取每个节点的采样率fi、剩余时延di和最初所需时隙数nr,i;s2-3:计算每个节点时隙分配时的权重值;每个节点的权重值的计算公式如下:αi=%10m+%40fi+%40nr,i+%10di(2)其中,αi第i个节点的权重值,m为每个节点的节点功能的权值,fi为第i个节点的采样率;di为第i个节点的剩余时延,为第i个节点最大时延容限;nr,i为第i个节点的最初所需时隙数。进一步地,所述步骤s3的具体步骤为:s3-1:定义时延门限tth,其中tth=tf+n*ts,tf、ts分别代表着超帧长度和时隙长度;s3-2:定义节点优先参数ci,ci的取值为0或者1;当节点的ci值为1时,该节点处于高优先级且该节点的数据必须在本超帧内发送;当节点的ci值为0时,该节点处于低优先级且该节点的数据非必须在本超帧内发送;s3-3:判断是否成立,其中为第i个节点最大时延容限;及分别为节点最大时延容限和节点最大缓存数,为节点初始最大时延容限。当判定条件成立时,将该节点的节点优先参数ci置位为1;当判定条件不成立时,将该节点的节点优先参数ci置位为0。进一步地,所述步骤s4的具体步骤为:s4-1:协调器判断fi*di-nr,i*sd是否大于零,s4-2:当fi*di-nr,i*sd大于零时,则节点数据的数据量大于预留给该节点的数据量时,执行步骤s5;s4-3:当fi*di-nr,i*sd不大于零时,则节点数据的数据量不大于预留给该节点的数据量时,执行步骤s8。进一步地,所述步骤s6的具体步骤为:s6-1:协调器判断是否成立,其中dj=(difi-nr,i*sd)/fi,dj为发送nr,i个节点数据后剩余数据距离当前的时间;s6-2:当成立时,则剩余数据的时延容限超过该节点的最大时延容限,该节点的初始需要的时隙数nr,i加1;s6-3:当不成立时,则剩余数据的时延容限未超过该节点的最大时延容限时,该节点的初始需要的时隙数nr,i保持不变。进一步地,所述步骤s7中协调器从低优先级的节点中挑选节点的初始需要的时隙数不为零的节点的具体包括以下步骤:s7-1:判定所有低优先级的节点的总时隙数是否大于协调器剩余的时隙数:s7-2:当所有低优先级的节点的总时隙数不大于协调器剩余的时隙数时,所有低优先级的节点的优先级修改为高优先级;并执行步骤s8;s7-3:当所有低优先级的节点总的时隙数大于协调器剩余的时隙数时,采用动态规划求解最优值的方法从低优先级的节点挑选具有最优解的低优先级的节点,并将挑选的低优先级的节点的优先级修改为高优先级,并执行步骤s8。进一步地,所述步骤s7-1中通过判断是否成立来判定所有低优先级的节点的总时隙数是否大于协调器剩余的时隙数;当成立时,则判定所有低优先级的节点的总时隙数不大于协调器剩余的时隙数;当不成立时,则判定所有低优先级的节点的总时隙数大于协调器剩余的时隙数。进一步地,所述步骤s7-3中采用动态规划求解最优值的方法从低优先级的节点挑选具有最优解的低优先级的节点的具体步骤为:s7-3-1:设定其中n表示协调器一周期内的总时隙数,表示节点优先参数ci=1的节点的总时隙数,其中m为节点数;表示分配完节点优先参数ci=1的节点的总时隙数后协调器的剩余时隙数;s7-3-2:设定时隙u={nr,i,ci=0},获取子集合使得在约束条件下下最大;s7-3-3:设v[x,y]用来表示前x项中分配时隙数为y的最大时隙数,得到递推式通过递推式得到最优解。需要注意到的是,由于传感器节点是一直在采样数据,因此在这边有两种数据实施方案,第一种方案就是节点超帧开始的数据,第二种方案是节点在超帧开始时的数据加上本超帧内采样的数据即本文所采用的方案,而对于在实施步骤三所判定ci为1的节点,按照两种方法分别计算所需的时隙两种方案如(图6)所示,因为本超帧内采样的数据也被发送,使得时隙利用率提高,由图也可以看出方案二的时隙利用率明显高于方案一的时隙利用率。而需要注意另外的一点是公式在这里是判定高优先级节点发送数据最后一个不能充满数据的时隙,对于它的时延是该时隙中最先采样到的数据距离当前的时间。对于一些的节点来说,可以使得时隙利用率增加。在这里做个对比图,方案一不做时隙内时延判定,方案二用该公式判定即本文s6-3所采用的方法,如(图7)所示,第一种方案由于没有判定最后时隙内数据时延,导致时隙数增加,从而降低时隙利用率。而第二种方案则可以充分利用时隙。进一步地,所述步骤s8中每个节点按当前排序还剩余的数据量的计算公式为:di*fi-nr,i*sd+(p-1)*ts(4)其中p为节点i在当前排序下的时隙位置。本发明采用以上技术方案,具有以下优点:(1)考虑了节点异构性对体域网的影响,针对各节点采样率,最长时延容限等属性存在不相同,甚至差异较大做不同考虑,减少节点和协调器的信息交互。(2)提出了新的多因子时隙分配次序和占用时隙数初始分配方案,从而实现节点对时隙的充分利用。(3)提出了新的关于高优先级节点时隙分配方案,减少了部分高优先级节点造成的时隙浪费,以提高时隙利用率。(4)依据wban的特点,节点对能耗的要求很高,本发明多因子优先级的时隙分配方法能减少传感器节点功耗,延长节点使用周期。附图说明以下结合附图和具体实施方式对本发明做进一步详细说明;图1为本发明的无线体域网示意图;图2为本发明的分配时隙流程图;图3为本发明的超帧结构图;图4为本发明的内网信息交互示意图;图5为本发明的时延示意图;图6为本发明的信息采样发送所需时隙对比图一;图7为本发明的信息采样发送所需时隙对比图二。具体实施方式如图三所示,在每个超帧开始之前,协调器执行一次本算法,并将时隙分配的结果打包到信标帧中,发送给各传感器节点。在体域网这个特定的场景中,每个传感器节点在正常工作状态下,以恒定的采样率进行信息采集,并以先进先出的方式将信息存储到缓存中,而缓存的容量是有限的,如果存储的数据量要大于换存量,就会发出溢出,后来的数据就会覆盖先前的数据。时延则为信息从采样到发送成功的时间间隔,如果在规定的时间内信息没有发送出去,则认为是无效数据,将其丢弃。由以上看出,数据发送有两个限制:缓存和时延,而在正常情况下,采样率fi为恒定,则满足bi=di×fi,其中di表示第i个节点的缓存中最先采样到的数据距离当前的时间,bi表示第i个节点缓存中的数据量,fi表示节点i的采样率。数据时延要小于di和bi/fi的最小值,当前缓存数要小于bi和di·fi的最小值,也就是说,时延限制和缓存限制可以相互转换,因此,我们可以在下面的讨论中只考虑一种限制。如图1-7之一所示,本发明公开了一种体域网中基于多因子优先级的时隙分配方法,其包括以下步骤:s1:协调器在每个超帧开始前计算每个节点初始需要的时隙数;进一步地,所述步骤s1的具体步骤为:s1-1:协调器获取每个节点的采样率fi;s1-2:协调器在每个超帧开始前获取每个节点的缓存中最先采样到的数据距离当前的时间di,s1-3:协调器通过信息帧的最大长度计算每个节点需要的时隙数;每个节点需要的时隙数的计算公式:其中nr,i表示第i个节点在本超帧初始需要的时隙数,sd表示一个数据包中有效字节占用的最大长度。s2:协调器确定每个节点时隙分配时的权重值,按照每个节点的权重值从大到小进行节点初始排序,并按该初始顺序分配每个节点对应的时隙数;本发明选取七个节点且按照星形拓扑结构的网络,根据节点功能m,采样率fi,剩余时延di,最初所需时隙数nr,i,求权平均算各自总和数值,按照最后数值从大到小进行初始排序,和顺序分配各节点占用时隙数。表一、表二分别为节点功能设置的权值及各因子设置的权重,其中为i节点最大时延容限。节点功能权值1心电图72血氧43体温14呼吸55血压36加速度27脉搏6表一:节点功能设置的权值因子节点功能采样率时隙数剩余时延权重0.10.40.10.4表二:节点各因子设置的权重具体地,所述步骤s2中协调器确定每个节点时隙分配时的权重值的方法包括以下步骤:s2-1:根据每个节点的节点功能的不同为每个节点分配对应的权值m;s2-2:获取每个节点的采样率fi、剩余时延di和最初所需时隙数nr,i;s2-3:计算每个节点时隙分配时的权重值;每个节点的权重值的计算公式如下:αi=%10m+%40fi+%40nr,i+%10di(2)其中,αi第i个节点的权重值,m为每个节点的节点功能的权值,fi为第i个节点的采样率;di为第i个节点的剩余时延,为第i个节点最大时延容限;nr,i为第i个节点的最初所需时隙数。s3:协调器判断每个节点中的数据是否超过时延门限,并确定节点的优先级;当节点中的数据超过时延门限时,将该节点设为节点优先;当节点中的数据未超过时延门限时,将该节点设为非优先节点;进一步地,所述步骤s3的具体步骤为:s3-1:定义时延门限tth,其中tth=tf+n*ts,tf、ts分别代表着超帧长度和时隙长度,具体如图5所示;s3-2:定义节点优先参数ci,ci的取值为0或者1;当节点的ci值为1时,该节点处于高优先级且该节点的数据必须在本超帧内发送;当节点的ci值为0时,该节点处于低优先级且该节点的数据非必须在本超帧内发送;s3-3:判断是否成立,其中为第i个节点最大时延容限;及分别为节点最大时延容限和节点最大缓存数,为节点初始最大时延容限。当判定条件成立时,意味着如果我们把传感器的数据推迟到下一个超帧发送,就会发生超出时延容限的情况,因此,将该节点的节点优先参数ci置位为1;当判定条件不成立时,将该节点的节点优先参数ci置位为0。s4:协调器判断节点数据的数据量是否大于预留给该节点的数据量;当节点数据的数据量大于预留给该节点的数据量时,执行步骤s5;当节点数据的数据量不大于预留给该节点的数据量时,执行步骤s8;进一步地,所述步骤s4的具体步骤为:s4-1:协调器判断fi*di-nr,i*sd是否大于零,s4-2:当fi*di-nr,i*sd大于零时,则节点数据的数据量大于预留给该节点的数据量时,执行步骤s5;s4-3:当fi*di-nr,i*sd不大于零时,则节点数据的数据量不大于预留给该节点的数据量时,执行步骤s8。s5:协调器判断该节点是否处于高优先级:当该节点为低优先级时,执行步骤s8;当该节点为高优先级时,执行步骤s6;s6:协调器判断该节点的剩余数据的时延容限是否超过该节点的最大时延容限;当剩余数据的时延容限超过该节点的最大时延容限时,该节点的初始需要的时隙数加1;当剩余数据的时延容限未超过该节点的最大时延容限时,该节点的初始需要的时隙数保持不变;进一步地,所述步骤s6的具体步骤为:s6-1:协调器判断是否成立,其中dj=(difi-nr,i*sd)/fi,dj为发送nr,i个节点数据后剩余数据距离当前的时间;s6-2:当成立时,则剩余数据的时延容限超过该节点的最大时延容限,该节点的初始需要的时隙数nr,i加1;s6-3:当不成立时,则剩余数据的时延容限未超过该节点的最大时延容限时,该节点的初始需要的时隙数nr,i保持不变。而需要注意的一点是公式在这里是判定高优先级节点发送数据最后一个不能充满数据的时隙,对于它的时延是该时隙中最先采样到的数据距离当前的时间。对于一些的节点来说,可以使得时隙利用率增加。在这里做个对比图,方案一不做时隙内时延判定,方案二用该公式判定即本文所采用的方法,如图7所示,第一种方案由于没有判定最后时隙内数据时延,导致时隙数增加,从而降低时隙利用率。而第二种方案可以充分利用时隙。s7:协调器判断所有高优先级的节点的新分配的总时隙数是否小于协调器一个周期内总的时隙数:当高优先级的节点的新分配的总时隙数小于协调器一个周期内总的时隙数时,协调器从低优先级的节点中挑选节点的初始需要的时隙数不为零的节点,并将挑选中的节点的优先级改为高优先级;否则,执行步骤s8;进一步地,所述步骤s7中协调器从低优先级的节点中挑选节点的初始需要的时隙数不为零的节点的具体包括以下步骤:s7-1:判定所有低优先级的节点的总时隙数是否大于协调器剩余的时隙数:s7-2:当所有低优先级的节点的总时隙数不大于协调器剩余的时隙数时,所有低优先级的节点的优先级修改为高优先级;并执行步骤s8;s7-3:当所有低优先级的节点总的时隙数大于协调器剩余的时隙数时,采用动态规划求解最优值的方法从低优先级的节点挑选具有最优解的低优先级的节点,并将挑选的低优先级的节点的优先级修改为高优先级,并执行步骤s8。进一步地,所述步骤s7-1中通过判断是否成立来判定所有低优先级的节点的总时隙数是否大于协调器剩余的时隙数;当成立时,说明所有ci值为不为零的节点分配时隙后,协调器还有剩余时隙,则判定所有低优先级的节点的总时隙数不大于协调器剩余的时隙数;当不成立时,则表明时隙超出,ci值为零的节点不能全部被分配,则判定所有低优先级的节点的总时隙数大于协调器剩余的时隙数。进一步地,所述步骤s7-3中采用动态规划求解最优值的方法从低优先级的节点挑选具有最优解的低优先级的节点的具体步骤为:s7-3-1:设定其中n表示协调器一周期内的总时隙数,表示节点优先参数ci=1的节点的总时隙数,其中m为节点数;表示分配完节点优先参数ci=1的节点的总时隙数后协调器的剩余时隙数;s7-3-2:设定时隙u={nr,i,ci=0},获取子集合使得在约束条件下下最大;s7-3-3:设v[x,y]用来表示前x项中分配时隙数为y的最大时隙数,得到递推式通过递推式得到最优解。需要说明的是,由于传感器节点是一直在采样数据,因此在这边有两种数据实施方案,第一种方案就是节点超帧开始的数据,第二种方案是节点在超帧开始时的数据加上本超帧内采样的数据即本文所采用的方案,而对于判定ci为1的节点,按照两种方法分别计算所需的时隙两种方案如(图6)所示,因为本超帧内采样的数据也被发送,使得时隙利用率提高,由(图6)也可以看出方案二的时隙利用率明显高于方案一的时隙利用率。而需要注意另外的一点是公式在这里是判定高优先级节点发送数据最后一个不能充满数据的时隙,对于它的时延是该时隙中最先采样到的数据距离当前的时间。对于一些的节点来说,可以使得时隙利用率增加。在这里做个对比图,方案一不做时隙内时延判定,方案二用该公式判定即本文s6-3所采用的方法,如(图7)所示,第一种方案由于没有判定最后时隙内数据时延,导致时隙数增加,从而降低时隙利用率。而第二种方案可以充分利用时隙。s8:协调器计算每个节点按当前排序还剩余的数据量,并按每个节点初始排序将各个节点的剩余的数据量放入超帧,并去除低优先级的节点的时隙,重组得到一个新的时隙分配序列为最终确定各节点发送的顺序和占用时隙数,发送超帧。进一步地,所述步骤s8中每个节点按当前排序还剩余的数据量的计算公式为:di*fi-nr,i*sd+(p-1)*ts(4)其中p为节点i在当前排序下的时隙位置。本发明采用以上技术方案,具有以下优点:(1)考虑了节点异构性对体域网的影响,针对各节点采样率,最长时延容限等属性存在不相同,甚至差异较大做不同考虑,减少节点和协调器的信息交互。(2)提出了新的多因子时隙分配次序和占用时隙数初始分配方案,从而实现节点对时隙的充分利用。(3)提出了新的关于高优先级节点时隙分配方案,减少了部分高优先级节点造成的时隙浪费,以提高时隙利用率。(4)依据wban的特点,节点对能耗的要求很高,本发明多因子优先级的时隙分配方法能减少传感器节点功耗,延长节点使用周期。应理解,本实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1