1.一种基于分时休眠的无线传感器网络通信方法,其特征在于,包括以下步骤:(1)汇聚节点建立网络;
(2)各路由节点依次加入网络,直到全部路由节点加入网络;
(3)终端节点依次申请入网,并得到路由节点分配的网络短地址,直到全部终端节点加入网络;
(4)汇聚节点向路由节点、终端节点发出休眠信标帧;
(5)各终端节点接收到休眠信标帧后,相隔Δt时间依次进入休眠模式,直到全部终端节点休眠;
(6)待全部终端节点休眠后,各路由节点随即依次进入休眠模式,直到全部路由节点休眠;
(7)汇聚节点向路由节点、终端节点发出唤醒信标帧;
(8)各路由节点首先依次被唤醒;
(9)全部路由节点被唤醒后,各终端节点随即相隔Δt时间依次被唤醒,进行数据采集和发送的任务,并在任务完成后再次进入休眠模式;
(10)待全部终端节点任务完成后,路由节点接收并转发终端节点发送过来的数据;
(11)路由节点接收到来自汇聚节点的休眠信标帧后,再次进入休眠模式;
(12)不断重复步骤(4)-(11)。
2.根据权利要求1所述基于分时休眠的无线传感器网络通信方法,其特征在于,终端节点的工作过程如下:(101)终端节点初始化,发送入网请求命令帧Becon request;
(102)收到路由节点回复的允许入网命令帧Association confirm,并获取16位网络短地址;
(103)等待汇聚节点的休眠信标帧;
(104)收到休眠信标帧,回复确认帧ACK至汇聚节点;
(105)终端节点进入休眠模式,休眠周期为T;
(106)休眠周期T结束,终端节点唤醒,退出低功耗模式;
(107)读取传感器的数值,打包处理数据;
(108)侦听信道是否空闲,若空闲进入步骤(109),否则继续重复步骤(109);
(109)发送RTS至路由节点,寻求建立连接;
(110)若收到CTS回复,发送数据帧至路由节点,由路由节点将数据帧转发至汇聚节点;
若没收到CTS回复,则重复步骤(109);
(111)等待tm的时间后,若收到路由节点的应答帧,则说明数据发送完毕,跳转步骤(112);若没收到应答帧,则重复发送数据;
(112)等待tn的时间后,若收到来自汇聚节点的确认帧ACK,则跳转步骤(113);若没有收到ACK则跳转步骤(108),重新发送数据;
(113)数据发送时间结束,无论数据是否成功发送,立即进入步骤(105)。
3.根据权利要求1所述基于分时休眠的无线传感器网络通信方法,其特征在于,路由节点包含两种不同的工作方式:面向终端节点收发数据和面向路由节点转发数据;路由节点收发数据的过程如下:(201)路由节点初始化,发送入网请求命令帧Becon request;
(202)收到来自汇聚节点或深度较低的路由节点回复的Association confirm,并获取
16位网络短地址;
(203)监听信道,处理各节点入网申请并分配16位网络短地址;
(204)若收到汇聚节点广播的休眠信标帧,回复确认帧ACK,进入步骤(205),否则跳转步骤(203);
(205)读取休眠信标帧中休眠周期,进入休眠模式;
(206)休眠周期结束,节点唤醒,并发送此刻时间t1至汇聚节点;
(207)监听信道,若收到来自终端节点的RTS,则回复CTS,进入步骤(208),否则重复步骤(207);
(208)接收终端节点发送来的数据帧,回复应答帧;
(209)查看数据帧中的目的节点的地址,寻找路由表中是否有到目的节点的路径,若存在路径,则发送数据,跳转步骤(211);若路由表中不存在相应路径或路径失效,则进入步骤(210);
(210)发起RREQ路由请求,寻找路由路径,若收到目的节点的RREP路由回复,则按路由路径转发数据帧,否则重复步骤(210);
(211)等待汇聚节点回复的确认帧ACK,将其转发至终端节点;
(212)若收到来自汇聚节点的休眠信标帧,则跳转步骤(205);若未收到休眠信标帧,则跳转步骤(207);
路由节点转发数据的过程如下:
(301)路由节点初始化,发送入网请求命令帧Becon request;
(302)收到来自汇聚节点或深度较低的路由节点回复的Association confirm,并获取
16位网络短地址;
(303)监听信道,处理各节点入网申请并分配16位网络短地址;
(304)若收到汇聚节点广播的休眠信标帧,回复确认帧ACK,进入步骤(305),否则跳转步骤(303);
(305)读取休眠信标帧中休眠周期,进入休眠模式;
(306)休眠周期结束,节点唤醒,并发送此刻时间至汇聚节点;
(307)监听信道,若有数据转发进入步骤(308);若有RREQ控制分组转发跳转步骤(310);否则重复步骤(307);
(308)读取数据帧中的目的地址,将数据转发至目的节点;
(309)对比自身剩余能量与能量阈值,若剩余能量低于设定能量阈值,则广播告知所有经过该路由节点路径的源节点,跳转步骤(315);
(310)判断是否第一次收到该RREQ,若是则进入步骤(311),若不是则进入步骤(312);
(311)更新路由发现表,跳转步骤(313);
(312)若该RREQ分组中路由代价小于路由发现表中已存在的路由代价,则跳转步骤(311),否则丢弃该RREQ分组,跳转步骤(315);
(313)对比自身剩余能量与能量阈值,若剩余能量低于设定能量阈值,则将RREQ分组中Count值加1并延迟Td时间;
(314)更新RREQ控制分组并转发;
(315)是否收到休眠信标帧,若是则转入步骤(305),若否则转入步骤(307)。
4.根据权利要求1所述基于分时休眠的无线传感器网络通信方法,其特征在于,汇聚节点的工作过程如下:(401)汇聚节点初始化,信道扫描,选取空闲的信道,选定PAN标识符,网络建立成功;
(402)收到各路由节点入网请求,分配16位网络地址;
(403)收到各终端节点入网信息,为第一个入网的终端节点设置编号为1,后续终端节点以此类推;
(404)距离最后一个终端节点入网后tq时间内仍未有新节点的加入,则开始向各终端节点发送休眠信标帧,休眠时间设为T;
(405)首先发送休眠信标帧至1号终端节点,若收到终端节点的ACK帧,则隔Δt的时间再次发送休眠信标帧至下一终端节点;若没收到则ACK帧,则重复步骤(405);
(406)发送休眠信标帧至最后一个终端节点并收到ACK帧后,立刻广播休眠信标帧至所有路由节点,休眠时间设为TS1;
(407)若没有收到全部路由节点的ACK帧,则持续广播,直至全部收到为止;
(408)监听信道,记录第一个路由节点醒来的时刻t1;
(409)接收路由节点传来的信息,若为数据帧,则回复确认ACK,并跳转步骤(412),若为RREQ分组,则等待一段时间tp,进入步骤(410);
(410)时间tp过后,若收到多组来自同一目的地址的RREQ分组,则比较各组路由代价,选取路由代价最低的路径,进入步骤(411),若只收到一组来自同一目的地址的RREQ分组,则直接进入步骤(411);
(411)回复RREP至源节点;
(412)距离最后一个终端节点发来的数据后m*Δt的时间内仍未收到新数据,m为网络的最大跳数,则记录此时刻为t2,进入步骤(413),否则跳转步骤(409);
(413)广播休眠信标帧至各路由节点,休眠时间为TS2,跳转步骤(408)。
5.根据权利要求4所述基于分时休眠的无线传感器网络通信方法,其特征在于,在步骤(406)中,休眠时间TS1=T-(n-1)*Δt-Δt2,其中T为终端节点休眠周期,n为终端节点个数,Δt为终端节点分时休眠间隔,Δt2为路由节点先于终端节点唤醒的时间。
6.根据权利要求4所述基于分时休眠的无线传感器网络通信方法,其特征在于,在步骤(413)中,休眠时间TS2=T-(t2-t1)-Δt2,其中T为终端节点休眠周期,Δt2为路由节点先于终端节点唤醒的时间,t1为第一个路由节点的唤醒时刻,t2为终端节点全部传输完成的时刻。