基于多路径中最大能量路径选择的分簇路由方法
【技术领域】
[0001] 本发明涉及无线传感器网络路由技术领域,特别涉及一种基于多路径中最大能量 路径选择的分簇路由方法。
【背景技术】
[0002] 无线传感器网络在未来的科技变革中占据极其重要的地位,它将以一种新的计算 模式加速科学技术与人类文明的进步。对于世界强国,能否抢占技术先机将直接影响本国 经济以及社会进步的步伐,作为一项技术领域竞争的制高点,无线传感网络引起了各国工 业、学术以及战争研究者的极大关注。但无线传感网络中的节点大多数设备是由电池供电, 有限的电量很大程度上限制了网络的使用。因此,如何有效利用电池电量及减少电量消耗, 进而延长网络使用寿命是目前无线传感网络面对的问题。通过对传输路由协议的改进来降 低网络能量的消耗,以延长网络的生存时间,已成为无线传感网络研究的热点。
【发明内容】
[0003] 本发明的目的在于提供一种基于多路径中最大能量路径选择的分簇路由方法,以 解决现有的无线传感网络路由方法无法有效利用电池电量及减少电量消耗使得部分节点 容易过早退出网络不能更好地进行数据采集的问题。
[0004] 为实现上述目的,本发明提供了一种基于多路径中最大能量路径选择的分簇路由 方法,包括以下步骤:
[0005] S1 :节点进行簇头选择,将节点分为簇头节点及普通节点;
[0006] S2 :对分为普通节点及簇头节点的各个节点进行分簇;
[0007] S3 :簇头节点建立到基站的若干个数据传输路径,每个数据传输路径包括若干个 中继节点;
[0008] S4:簇头节点选出其每个数据传输路径的若干个中继节点中能量值最小节点,并 对每个数据传输路径的能量值最小节点的能量值进行比较,得到最大值;
[0009] S5 :将所述最大值对应节点所属的数据传输路径作为主传输路径;
[0010] S6:每个簇内的普通节点将数据发送至簇头节点,簇头节点按所述主传输路径将 数据转发至基站。
[0011] 较佳地,所述步骤S1中,节点进行簇头选择具体包括:
[0012] S11 :设置簇头选择阈值为Τη :
[0014] 其中,ρ为簇头在网络所有节点中所占的比例期望值;r为当前簇头选择的轮数;G 为最近1/p轮中没有被选为簇头的节点集总;是传感器节点的剩余能量;E avg为网络在 本轮中的平均能量;Nbn是第η个节点的邻居节点;Nbavg是网络中周围邻居节点的平均数量; bn是从簇内第η个节点到簇头节点的距离,bavg是簇内节点到簇头节点的平均距离;davg是 传感器节点到网关的平均距离;dn是从BS到传感器节点的距离。ΤεΗ是选择一次簇头所用 的时间,ΤνεΗ是选择关联簇头所用的时间;
[0015] S12 :节点i生成0和1之间的随机数Ri ;
[0016] S13 :将该随机数与所述簇头选择阈值进行比较,若Ri〈Tn,则进入步骤S14,若 Ri彡Tn,则进入步骤S15 ;
[0017] S14 :将节点i选为簇头,同时由该节点i广播ADV消息;
[0018] S15 :将节点i设为普通节点,等待接收来自簇头的ADV消息。
[0019] 较佳地,所述步骤S2具体包括:
[0020] S21 :任一普通节点接收来自周围的各簇头节点的ADV消息,并对各簇头节点ADV 消息的报文信号强度进行比较,选择信号强度最强的簇头节点作为该普通节点所加入簇的 簇头节点,并向其簇头节点发送JOIN消息;
[0021] S22 :簇头节点接收到普通节点的JOIN消息后将其设为簇内的成员节点。
[0022] 较佳地,所述步骤S3中具体包括:簇头节点建立到基站的若干个数据传输路径, 每个数据传输路径包括若干个中继节点;
[0023] S31 :对任意一个簇头节点,进行与其他簇头节点的通信,并计算与之通信的其他 簇头节点的权重值;
[0024] S32 :对各权重值进行比较,将权重值最小的节点作为最近一跳的中继节点;
[0025] 其中,簇头节点发给中继节点的报文中包含自身的ID信息,中继节点进行再次转 发时,中继节点继续进行与其他簇头节点的通信并核对与之通信的簇头节点的ID号,如果 跟已存储的最近距离节点的ID号相同则将数据发给除该节点之外的相距最近的节点;如 果有多个节点与此中继节点等距离,则最终基站将最先收到一条数据保存,并将其他后收 到的相同数据滤除。
[0026] 较佳地,所述步骤S31中权重值的计算公式如下:
[0028] 其中,i、j为普通节点序数,N为节点总数,Ειηι表示一个节点的初始能量,E _表 示当前剩余能量,山表示普通节点与下一簇头节点的距离,d_j表示当前节点和邻居节点间 的距离,r_x表示分簇节点覆盖的最大传输半径,r_x表示簇头间最大传输覆盖路径,w是 簇头权重因数。
[0029] 较佳地,所述步骤S4中还包括:簇头节点对每个数据传输路径的能量值最小节点 的能量值进行比较,得到次最大值;则所述步骤S5中还包括:将所述次最大值对应节点所 属的数据传输路径作为备选传输路径;则所述步骤S6中还包括:若主传输路径传输失败, 则采用所述备选传输路径进行数据转发。
[0030] 较佳地,所述步骤S6中具体包括:
[0031] S61 :每个簇内的普通节点将数据发送至簇头节点,簇头节点在预设的接收时间内 接受周围普通节点发来的数据;
[0032] S62 :超出预设的接收时间后,所述簇头节点对接收的数据进行打包处理;
[0033] S63 :所述簇头节点按所述主传输路径将打包的数据转发至基站。
[0034] 本发明提供的基于多路径中最大能量路径选择的分簇路由方法,通过对簇头节点 转发数据的路径以及簇内节点转发数据的路径进行优化,采用将可选择的传输路径中剩余 能量最小的节点作为参考,将各个路径中剩余能量最小节点进行排序得到一最大值,将其 所在路径作为主传输路径。该主传输路径中剩余能量最小节点是全部路径中的相对较大 值,因此,该路径进行数据转发不会使得其他路径中最小能量节点因转发大量数据而过早 退出网络。该方法可以最大限度的均衡网络负载、降低无线传感节点的能耗,延长整个网络 的生命周期。通过应用改进的阈值Τη和获取最大能量而产生最佳路径选择的准则,实现最 佳的路由分配。
【附图说明】
[0035] 图1为本发明提供的基于多路径中最大能量路径选择的分簇路由方法流程图;
[0036] 图2为本发明方法的步骤S1中节点进行簇头选择的流程图。
【具体实施方式】
[0037] 为更好地说明本发明,兹以一优选实施例,并配合附图对本发明作详细说明,具体 如下:
[0038] 本发明方法应用于一具有多个节点的无线传感器网络中,其中,每个节点处配置 一具有传感功能的微处理器或配置一与传感器相连的微处理器,微处理器作为主控芯片通 过必要的外围器件(如无线收发器、电池等)对节点处采集的各类数据进行接收及转发控 制,同时,微处理器也按照本发明提供的路由方法进行通信路径的选择以使数据成功发送 至基站处,再由基站将数据发送至上位机,供用户进行访问和操作。
[0039] 具体地,如图1所示,本实施例提供的基于多路径中最大能量路径选择的分簇路 由方法,包括以下步骤:
[0040] S1 :节点进行簇头选择,将节点分为簇头节点及普通节点;
[0041] S2 :对分为普通节点及簇头节点的各个节点进行分簇;
[0042] S3 :簇头节点建立到基站的若干个数据传输路径,每个数据传输路径包括若干个 中继节点;
[0043] 当簇头节点建立起传输路径后,本实施例假设存在多条传输路径:linei、 line2、......、linen plinen,其中,每个路径均可能包括多个节点进行数据转发,该些节点即 为转发数据的中继节点。
[0044] S4:簇头节点选出其每个数据传输路径的若干个中继节点中能量值最小节点,并 对每个数据传输路径的能量值最小节点的能量值进行比较,得到最大值;
[0045] 本实施例中多条传输路径山叫、line2、......、linen ^ linen中的能量值最小节 点的能量值分别为:e2、......en p en,将能量值e2、......en ^ en进行比较,找出该些 值中的最大值,假设为e2。
[0046] S5 :将最大值对应节点所属的数据传输路径作为主传输路径;
[0047] 本实施例中也即将能量值为e2所在的数据传输路径line 2作为主传输路径。
[0048] S6 :每个簇内的普通节点将数据发送至簇头节点,簇头节点按主传输路径(line2) 将数据转发至基站。具体地:
[0049] S61 :每个簇内的普通节点将数据发送至簇头节点,簇头节点在预设的接收时间内 接受周围普通节点发来的数据;
[0050] S62 :超出预设的接收时间后,簇头节点对接收的数据进行打包处理;
[0051] S63 :簇头节点按主传输路径将打包的数据转发至基站。
[0052] 采用上述方法的网络中,基站接收到网络节点发来的数据后,先进行数据解析,然 后将解析成功的数据发送至上位机,用户可通过上位机进行访问和操作即可。
[0053] 应当理解,本发明方法中所选出的每个簇头节点均执行步骤S3至S6所示的