首页 > 专利 > 河海大学 > 一种星链型无线传感器网络无层通信方法专利详情

一种星链型无线传感器网络无层通信方法   0    0

有效专利 查看PDF
专利申请流程有哪些步骤?
专利申请流程图
申请
申请号:指国家知识产权局受理一件专利申请时给予该专利申请的一个标示号码。唯一性原则。
申请日:提出专利申请之日。
2017-10-23
申请公布
申请公布指发明专利申请经初步审查合格后,自申请日(或优先权日)起18个月期满时的公布或根据申请人的请求提前进行的公布。
申请公布号:专利申请过程中,在尚未取得专利授权之前,国家专利局《专利公报》公开专利时的编号。
申请公布日:申请公开的日期,即在专利公报上予以公开的日期。
2018-03-09
授权
授权指对发明专利申请经实质审查没有发现驳回理由,授予发明专利权;或对实用新型或外观设计专利申请经初步审查没有发现驳回理由,授予实用新型专利权或外观设计专利权。
2019-10-15
预估到期
发明专利权的期限为二十年,实用新型专利权期限为十年,外观设计专利权期限为十五年,均自申请日起计算。专利届满后法律终止保护。
2037-10-23
基本信息
有效性 有效专利 专利类型 发明专利
申请号 CN201710990998.8 申请日 2017-10-23
公开/公告号 CN107682905B 公开/公告日 2019-10-15
授权日 2019-10-15 预估到期日 2037-10-23
申请年 2017年 公开/公告年 2019年
缴费截止日
分类号 H04W40/04H04W40/22H04W40/24H04W40/32H04W52/02H04W56/00H04W84/18 主分类号 H04W40/04
是否联合申请 独立申请 文献类型号 B
独权数量 1 从权数量 5
权利要求数量 6 非专利引证数量 1
引用专利数量 5 被引证专利数量 0
非专利引证 1、郁麟玉,严锡君.一种长距离链式无线传感器网络节点部署方法《.微型电脑应用》.2014,第30卷(第05期),;
引用专利 CN103237337A、CN102818590A、CN101035129A、CN202475489U、US2016374043A1 被引证专利
专利权维持 2 专利申请国编码 CN
专利事件 事务标签 公开、实质审查、授权
申请人信息
申请人 第一申请人
专利权人 河海大学 当前专利权人 河海大学
发明人 严锡君、刁宏志、于凡、孙颖、潘晓陈、赵姗姗、范媛媛 第一发明人 严锡君
地址 江苏省南京市江宁区佛城西路8号 邮编 211100
申请人数量 1 发明人数量 7
申请人所在省 江苏省 申请人所在市 江苏省南京市
代理人信息
代理机构
专利代理机构是经省专利管理局审核,国家知识产权局批准设立,可以接受委托人的委托,在委托权限范围内以委托人的名义办理专利申请或其他专利事务的服务机构。
南京经纬专利商标代理有限公司 代理人
专利代理师是代理他人进行专利申请和办理其他专利事务,取得一定资格的人。
施昊
摘要
本发明公开了一种星链型无线传感器网络无层通信方法。采用星‑链型拓扑结构构建整个网络,采用无层方法设计通讯协议。所有传感器节点初始化后即进入侦听状态,通过接收来自汇聚节点的信标帧完成时间同步;星型簇成员节点在进行时间同步时,能够在对应的时隙内醒来,并确认簇头节点可达后,向其发送采集到的数据,各簇头节点同时接收所属簇成员节点发送的信息;各个簇头节点在汇聚节点的调度下,通过多跳中继的方式将数据上报至汇聚节点。本发明打破了传统的协议栈之间的层级关系,将整个通信协议作为一个整体进行全局设计,进而达到能耗减少、时延降低的目的。
  • 摘要附图
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图1
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图2
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图3
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图4
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图5
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图6
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图7
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图8
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图9
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图10
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图11
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图12
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图13
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图14
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图15
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图16
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图17
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图18
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图19
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图20
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图21
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图22
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图23
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图24
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图25
    一种星链型无线传感器网络无层通信方法
  • 说明书附图:图26
    一种星链型无线传感器网络无层通信方法
法律状态
序号 法律状态公告日 法律状态 法律状态信息
1 2019-10-15 授权
2 2018-03-09 实质审查的生效 IPC(主分类): H04W 40/04 专利申请号: 201710990998.8 申请日: 2017.10.23
3 2018-02-09 公开
权利要求
权利要求书是申请文件最核心的部分,是申请人向国家申请保护他的发明创造及划定保护范围的文件。
1.一种星链型无线传感器网络无层通信方法,其特征在于,包括以下步骤:
(1)结合星型网络拓扑结构和链型拓扑结构的特点,对无线传感器网络采用星链型的节点部署方案;其中,每个星型簇的成员节点采集数据,汇总至所在簇的簇头节点,然后簇头节点按照多跳中继的方式传输至汇聚节点;每个星型簇包括1个簇头节点和6个簇成员节点,且簇头节点位于簇成员节点围成的正六边形的中心处,6个簇成员节点的编号按照逆时针的方向依次增大,各个星型簇的簇头节点依次连接,直至到达汇聚节点,各个簇头节点的编号按照其与汇聚节点距离的增大而增大;
(2)所有传感器节点初始化后即进入侦听状态,通过接收汇聚节点发送的同步信标帧完成时间同步并加入整个网络,之后立即进入睡眠状态;具体过程如下:
汇聚节点广播固定数目的同步信标帧,各传感器节点收到汇聚节点发送的同步信标帧后,根据帧类型判断收到的数据是否为同步信号,随即进入睡眠状态,直到属于自己的侦听时隙到来;各传感器节点根据收到的信标帧号以及汇聚节点发送的信标帧总个数,再结合自己的节点编号,计算出下次唤醒的时间;
(3)各传感器节点休眠结束后醒来,各星型簇进行簇内数据传递,直至将数据传递至该星型簇的簇头节点;
(4)各个簇头节点在汇聚节点的调度下,通过多跳中继的方式进行簇间数据传递,直至将数据上传至汇聚节点。

2.根据权利要求1所述星链型无线传感器网络无层通信方法,其特征在于:簇成员节点的睡眠时间的计算公式如下:
上式中, 表示簇成员节点收到同步信标帧后的睡眠时间,m代表汇聚节点一共发送的时间同步信标帧帧数,j代表该簇成员节点接收到的信标帧的序号,j上式中, 为簇头节点收到同步信标帧后的睡眠时间,j代表该簇头节点接收到的信标帧的序号,j
3.根据权利要求2所述星链型无线传感器网络无层通信方法,其特征在于,步骤(3)中所述簇内数据传递的步骤如下:
(31)簇成员节点发送控制消息数据帧给簇头节点,询问此时簇头节点是否处于侦听状态且空闲;
(32)簇头节点接收到控制消息数据帧后,如果条件符合则回复确认消息数据帧;如果处于休眠状态或者异常情况,则不执行任何操作;
(33)簇成员节点如果收到簇头节点回复的确认消息数据帧,则立即上传数据消息数据帧给簇头节点;如果簇成员节点在一个时隙tslot内没有收到确认消息数据帧,则直接进入休眠状态,不再发送数据消息数据帧;
(34)数据消息数据帧上传至簇头节点,至此一次完整的簇成员节点数据传输完成,随即进入睡眠状态,同时下一个簇成员节点开始进行数据传输;簇成员节点按照节点编号依次醒来进入侦听状态,并在数据传输完成后休眠以节省能量。

4.根据权利要求3所述星链型无线传感器网络无层通信方法,其特征在于,步骤(4)中所述簇间数据传递的步骤如下:
(41)簇头节点按照编号由大到小的顺序依次醒来,编号最大的簇头节点首先醒来,并向前一跳簇头节点发送控制消息数据帧;
(42)当前一跳簇头节点收到后一跳簇头节点的控制消息数据帧后,向后一跳簇头节点发送一个确认控制消息数据帧,后一跳数据帧接收到该确认控制消息数据帧后部署自身时隙;
(42)编号最大的簇头节点的控制消息数据帧经过各个簇头节点的中继传输,最终到达距离汇聚节点最近的簇头节点,此时簇头节点的侦听阶段结束,所有簇头节点进入睡眠状态;
(43)各个簇头节点按照步骤(42)部署的时隙按照编号从小到大的顺序依次醒来,编号最小的簇头节点首先醒来,将所在星型簇的数据消息数据帧上传至汇聚节点,该簇头节点再次进入睡眠状态;
(44)按照步骤(42)部署的时隙,编号最小的簇头节点和编号第二小的簇头节点同时醒来,编号第二小的簇头节点将所在星型簇的数据消息数据帧通过编号最小的簇头节点中继至汇聚节点,然后这两个簇头节点再次进入睡眠状态;
(45)以此类推,直至所有簇头节点的数据消息数据帧均上传至汇聚节点,一个数据传输周期结束,随后进入下一个数据传输周期。

5.根据权利要求1-4中任意一项所述星链型无线传感器网络无层通信方法,其特征在于,当簇头节点发生异常情况时,及时上报给汇聚节点,由汇聚节点处理异常问题,具体过程如下:
当汇聚节点在规定时间内收不到来自某个簇头节点上传的数据消息数据帧,则汇聚节点将发送一个故障询问命令帧至相应的簇头节点,若该簇头节点状态正常,则会生成一个故障回复命令帧上报至汇聚节点,汇聚节点确认节点状态正常,停止发送故障询问命令帧;
如果簇头节点已死亡,汇聚节点在规定时间内没有收到该节点上报的故障命令回复帧,则判断该簇头节点死亡,广播调度表更新命令帧,通知所有簇头节点该节点已死亡,相关的簇头节点根据调度表更新命令帧改变自身发射功率,从而跳过死亡的簇头节点进行中继,同时汇聚节点通知终端用户及时更换传感器节点;
对每个传感器节点的电量设定了一个最低阈值,当某簇头节点i的电量低于其最低阈值时,立即生成低电警告命令帧上报给汇聚节点,由汇聚节点广播调度表更新命令帧,告知其他簇头节点该簇头节点i无法参与通信,同时上报至终端用户及时更换传感器节点,相关的簇头节点根据调度表更新命令帧改变自身发射功率,从而跳过死亡的簇头节点进行中继,簇头节点i收到调度表更新命令帧后,确认自己的低电异常已被处理,簇头节点i死亡;
当有新簇头节点j加入网络时,首先向前一跳簇头节点发送异常处理命令帧,然后通过多跳传输上报至汇聚节点,通知汇聚节点有新节点加入,汇聚节点收到新簇头节点j发送的命令帧后,广播调度表更新命令帧通知所有簇头节点,表明簇头节点j能后正常工作,新加入的簇头节点j收到汇聚节点发送的调度表更新命令帧后,停止发送异常处理命令帧,同时建立自己的调度表,进入正常的簇头节点工作流程。

6.根据权利要求1-4中任意一项所述星链型无线传感器网络无层通信方法,其特征在于:控制各簇成员节点的通信半径远远小于该簇成员节点与其相邻星型簇的簇头节点的距离。
说明书

技术领域

[0001] 本发明属于无线传感器网络和电子测控领域,特别涉及了一种星链型无线传感器网络无层通信方法。

背景技术

[0002] 无线传感器网络(Wireless Sensor Networks:WSN)是由一系列造价低廉、能耗节约、尺寸适中、具备一定计算能力,并且能在短距离内进行无线通信的大量多功能传感器节点,通过自组织方式构成的一种新型无线网络。由于其具有灵活性高、容错性强、高保真和部署快速等特点,成为近年来通信学科的热点研究领域,也成为一种入侵侦查、周边监控、信息采集和提供军事区域后勤支援的可靠军事化应用。同时,WSN在其他领域也有着越来越多的表现,如基于传感器的个人健康监测、海洋生态系统实时监控、工业生产领域设备健康监测等。
[0003] 随着研究的不断深入和应用场景的多样化,无线传感器网络技术取得了一系列重大进展,同时,也带来了一系列新的问题和挑战,主要集中在:MAC协议、路由协议、定位技术、拓扑控制和能量管理五个方面。由于传感器本身电源能量的局限性,节能降耗又是其中的重中之重,贯穿了无线传感器网络发展的各个阶段,也成为目前制约WSN发展的一个瓶颈问题。因此,无线传感器网络中所有技术的实现都要以节能为第一要素。
[0004] 星型和链型都是无线传感器网络中常见的拓扑结构。星型结构具有组网简单的优点,但是网络覆盖范围有限,可靠性差,一旦簇头节点失效整个星型网络将无法正常工作;链型结构只能保证监测的长度,在大范围的应用中无法保障监测的全面性。
[0005] 分层协议具有扩展方便、维护简单的优点,因此传统的WSN多采用此种设计思想进行协议设计。但是无线传感器网络存在节点能量受限、动态信道、内存和数据处理能力不足等特点,使得传统的分层设计思想并不完全适合无线传感器网络。

发明内容

[0006] 为了解决上述背景技术提出的技术问题,本发明旨在提供一种星链型无线传感器网络无层通信方法,打破传统的协议栈之间的层级关系,减少能耗,降低时延。
[0007] 为了实现上述技术目的,本发明的技术方案为:
[0008] 一种星链型无线传感器网络无层通信方法,包括以下步骤:
[0009] (1)结合星型网络拓扑结构和链型拓扑结构的特点,对无线传感器网络采用星链型的节点部署方案;其中,每个星型簇的成员节点采集数据,汇总至所在簇的簇头节点,然后簇头节点按照多跳中继的方式传输至汇聚节点;
[0010] (2)所有传感器节点初始化后即进入侦听状态,通过接收汇聚节点发送的同步信标帧完成时间同步并加入整个网络,之后立即进入睡眠状态;
[0011] (3)各传感器节点休眠结束后醒来,各星型簇进行簇内数据传递,直至将数据传递至该星型簇的簇头节点;
[0012] (4)各个簇头节点在汇聚节点的调度下,通过多跳中继的方式进行簇间数据传递,直至将数据上传至汇聚节点。
[0013] 进一步地,每个星型簇包括1个簇头节点和6个簇成员节点,且簇头节点位于簇成员节点围成的正六边形的中心处,6个簇成员节点的编号按照逆时针的方向依次增大,各个星型簇的簇头节点依次连接,直至到达汇聚节点,从而构成无线传感器节点的链型拓扑结构,各个簇头节点的编号按照其与汇聚节点距离的增大而增大。
[0014] 进一步地,在步骤(2)中,汇聚节点广播固定数目的同步信标帧,各传感器节点收到汇聚节点发送的同步信标帧后,根据帧类型判断收到的数据是否为同步信号,随即进入睡眠状态直到属于自己的侦听时隙到来;各传感器节点根据收到的信标帧号以及汇聚节点发送的信标帧总个数,再结合自己的节点编号,计算出下次唤醒的时间。
[0015] 进一步地,簇成员节点的睡眠时间的计算公式如下:
[0016]
[0017] 上式中, 表示簇成员节点收到同步信标帧后的睡眠时间,m代表汇聚节点一共发送的时间同步信标帧帧数,j代表该簇成员节点接收到的信标帧的序号,j
[0018]
[0019] 上式中, 为簇头节点收到同步信标帧后的睡眠时间,j代表该簇头节点接收到的信标帧的序号,j
[0020] 进一步地,步骤(3)中所述簇内数据传递的步骤如下:
[0021] (31)簇成员节点发送控制消息数据帧给簇头节点,询问此时簇头节点是否处于侦听状态且空闲;
[0022] (32)簇头节点接收到控制消息数据帧后,如果条件符合则回复确认消息数据帧;如果处于休眠状态或者异常情况,则不执行任何操作;
[0023] (33)簇成员节点如果收到簇头节点回复的确认消息数据帧,则立即上传数据消息数据帧给簇头节点;如果簇成员节点在一个时隙tslot内没有收到确认消息数据帧,则直接进入休眠状态,不再发送数据消息数据帧;
[0024] (34)数据消息数据帧上传至簇头节点,至此一次完整的簇成员节点数据传输完成,随即进入睡眠状态,同时下一个簇成员节点开始进行数据传输;簇成员节点按照节点编号依次醒来进入侦听状态,并在数据传输完成后休眠以节省能量。
[0025] 进一步地,步骤(4)中所述簇间数据传递的步骤如下:
[0026] (41)簇头节点按照编号由大到小的顺序依次醒来,编号最大的簇头节点首先醒来,并向前一跳簇头节点发送控制消息数据帧;前一跳簇头节点收到后一跳簇头节点的控制消息数据帧后,
[0027] (42)当前一跳簇头节点收到后一跳簇头节点的控制消息数据帧后,向后一跳簇头节点发送一个确认控制消息数据帧,后一跳数据帧接收到该确认控制消息数据帧后部署自身时隙;
[0028] (42)编号最大的簇头节点的控制消息数据帧经过各个簇头节点的中继传输,最终到达距离汇聚节点最近的簇头节点,此时簇头节点的侦听阶段结束,所有簇头节点进入睡眠状态;
[0029] (43)各个簇头节点按照步骤(42)部署的时隙按照编号从小到大的顺序依次醒来,编号最小的簇头节点首先醒来,将所在星型簇的数据消息数据帧上传至汇聚节点,该簇头节点再次进入睡眠状态;
[0030] (44)按照步骤(42)部署的时隙,编号最小的簇头节点和编号第二小的簇头节点同时醒来,编号第二小的簇头节点将所在星型簇的数据消息数据帧通过编号最小的簇头节点中继至汇聚节点,然后这两个簇头节点再次进入睡眠状态;
[0031] (45)以此类推,直至所有簇头节点的数据消息数据帧均上传至汇聚节点,一个数据传输周期结束,随后进入下一个数据传输周期。
[0032] 进一步地,当簇头节点发生异常情况时,及时上报给汇聚节点,由汇聚节点处理异常问题,具体过程如下:
[0033] 当汇聚节点在规定时间内收不到来自某个簇头节点上传的数据消息数据帧,则汇聚节点将发送一个故障询问命令帧至相应的簇头节点,若该簇头节点状态正常,则会生成一个故障回复命令帧上报至汇聚节点,汇聚节点确认节点状态正常,停止发送故障询问命令帧;如果簇头节点已死亡,汇聚节点在规定时间内没有收到该节点上报的故障命令回复帧,则判断该簇头节点死亡,广播调度表更新命令帧,通知所有簇头节点该节点已死亡,相关的簇头节点根据调度表更新命令帧改变自身发射功率,从而跳过死亡的簇头节点进行中继,同时汇聚节点通知终端用户及时更换传感器节点;
[0034] 对每个传感器节点的电量设定了一个最低阈值,当某簇头节点i的电量低于其最低阈值时,立即生成低电警告命令帧上报给汇聚节点,由汇聚节点广播调度表更新命令帧,告知其他簇头节点该簇头节点i无法参与通信,同时上报至终端用户及时更换传感器节点,相关的簇头节点根据调度表更新命令帧改变自身发射功率,从而跳过死亡的簇头节点进行中继,簇头节点i收到调度表更新命令帧后,确认自己的低电异常已被处理,簇头节点i死亡;
[0035] 当有新簇头节点j加入网络时,首先向前一跳簇头节点发送异常处理命令帧,然后通过多跳传输上报至汇聚节点,通知汇聚节点有新节点加入,汇聚节点收到新簇头节点j发送的命令帧后,广播调度表更新命令帧通知所有簇头节点,表明簇头节点j能后正常工作,新加入的簇头节点j收到汇聚节点发送的调度表更新命令帧后,停止发送异常处理命令帧,同时建立自己的调度表,进入正常的簇头节点工作流程。
[0036] 进一步地,控制各簇成员节点的通信半径远远小于该簇成员节点与其相邻星型簇的簇头节点的距离。
[0037] 采用上述技术方案带来的有益效果:
[0038] 本发明综合考虑了管道、河流等带状监测区域无线传感器网络实际应用的特点,采用无层设计方法,结合时间同步、时隙部署等协议机制,提出了一个星链型无线传感器网络的通讯方法,以减少数据时延、降低网络能耗。仿真实验结果表明,本发明具有较低的网络能耗、较小的数据时延,提高了网络的性能和可靠性,延长了网络的生命周期。

实施方案

[0065] 以下将结合附图,对本发明的技术方案进行详细说明。
[0066] 无线传感器网络多采用TDMA的时隙分配方式进行时隙部署,本发明在TDMA思想的基础上,结合星链型网络拓扑结构,提出一种更适应该结构的簇成员节点数据传输机制。该机制主要通过时隙部署的原理,使簇成员节点周期性地醒来通信。当计时器计时到,属于该传感器节点的时隙到来,通信模块将进入发送或接收状态正常工作;时隙结束后簇成员节点随即进入低功耗的休眠状态,从而节省能量。同时,由于每个节点只在属于自己的时隙内醒来,使得数据传输有序进行,大大降低了数据碰撞的可能性,进一步减少了节点的能耗。
[0067] 如图1所示为本发明的通信网络结构图。汇聚节点位于星链型传感器网络的一端,以汇聚节点为起始点、以簇头节点为位置点形成链型的拓扑结构。每个簇头节点周围围绕着6个簇成员节点,形成星型结构。
[0068] 1、时间同步
[0069] 在星链型无线传感器网络中,星型簇成员节点主要负责采集数据,发送至所在簇的簇头节点,然后簇头节点以多跳中继的方式上报给汇聚节点。在簇成员节点进行数据发送时,必须保证簇头节点能够接受到其所发送的信息,即簇头节点必须在簇成员节点进行数据发送的时间段内保持侦听状态。这就要求星链型无线传感器网络中处于同一个星型簇的簇头节点和簇成员节点有一个共同的时间基准,并且能够在网络的运作过程中提供正确的时间协同机制。
[0070] 本发明的无层协议在进行数据传输之前,先要进行全网时间同步。汇聚节点广播固定数目的同步信标帧,簇成员节点收到汇聚节点发送的同步信标帧后,根据帧类型判断收到的数据是否为同步信号,随即进入睡眠状态直到属于自己的侦听时隙到来。簇成员节点可以根据收到的信标帧号以及汇聚节点发送的信标帧总个数,再结合自己的节点号,即可计算出下次唤醒的时间。至此,簇成员节点时间同步完成,所有成员节点进入睡眠状态,直至汇聚节点发送完所有的信标帧。从该时刻起,簇成员节点按照节点号依次醒来,向簇头节点发送采集到的数据。
[0071] 如图2所示为本发明的跨层协议交互协作示意图。编号按照逆时针的方向依次增大;特别的,簇首节点处于正六边形中心处,编号为0。
[0072] 如图3所示为本发明的单链型簇头节点编号图,距离汇聚节点越远编号越大。
[0073] 星链型无线传感器网络进入到时间同步阶段后,网络内的所有节点包括簇成员节点、簇头节点和汇聚节点,都处于侦听状态。汇聚节点开始按照递增的顺序,持续发送编号依次为1至m的时间同步信标帧。
[0074] 如图4所示为本发明的同步信标帧结构图。其中,前导码占4个字节,代表一个数据帧的开始;识别码作为同步词汇,作为同步信息(下同);帧类型,占4个比特,规定时间同步信标帧的帧类型为1011,前两位10代表该数据帧是一个全网广播信号,可以被簇头节点和簇成员节点接收,后两位11代表该数据帧是由汇聚节点发出的。每种帧格式对应的识别码含义都不尽相同,将时间同步信标帧的四位标志码规定为0000;信标帧编号,长度为4个字节,其值即该数据帧的编号,用于节点休眠时间的计算。
[0075] 协议的帧类型都为4个比特位,前两位代表目的节点号,即接收数据的节点号;后两位代表源节点号,即发送数据的节点号。帧类型的具体定义如表1所示。
[0076] 表1
[0077]字符 前两位数值含义 后两位数值含义
00 簇成员节点接收信号 簇成员节点发送信号
01 簇头节点中继信号 簇头节点发送信号
10 广播信号 —
11 汇聚节点发送信号 汇聚节点接收信号
[0078] 如图5所示为本发明的簇成员节点时间同步时序图。簇成员节点收到信标帧后,首先判断收到的数据帧是否为时间同步命令,如果不是,则丢弃继续侦听;如果是,则立即进入睡眠状态,且计时器开始计时。当计时器计时到后,簇成员节点按照规定的时隙一一醒来。假定簇成员节点i在休眠时间 后醒来,进入侦听阶段,则:
[0079]
[0080] 其中, 代表簇成员节点收到同步信标帧后的休眠时间,m代表汇聚节点一共发送的时间同步信标帧帧数,j代表该簇成员节点接收到的信标帧的序号。tbeacom为汇聚节点发送一个时间同步信标帧所用的时间,tslot为簇成员节点进行一次数据采集和发送需要的时隙长度。i为当前簇成员节点的编号。
[0081] 簇成员节点睡眠相应的时间后醒来向簇头节点发送数据,发送完毕后又立即进入睡眠状态,直到下一个计时周期的到来。
[0082] 2、簇成员节点数据传输
[0083] 如图6所示为本发明的簇成员节点时序图。簇成员节点在完成时间同步后,按照部署好的时隙依次醒来,不同簇成员节点醒来的时间相差一个时隙长度tslot。每个簇成员节点按照其节点号对应一个时隙。
[0084] 每个时隙又分为控制信息传输时段和数据传输时段,节点在控制信息传输时段发送CM(Control Message:控制消息)数据帧,在数据传输时段发送DM(Data Messsage:数据消息)数据帧。
[0085] 如图7所示为本发明的簇成员节点CM帧格式图。簇成员节点的CM数据帧的帧类型为为0100,节点号占4比特,表明数据发送的源节点。
[0086] 如图8所示为本发明的簇成员节点DM帧格式图。对于DM数据帧而言,帧类型也为0100,数据长度,长度占4比特,表明该数据帧要传送的数据的大小,数据字段长度可变;结束码,占2个字节。
[0087] 如图9所示为本发明的簇成员节点数据传输示意图。簇成员节点首先发送CM数据帧给簇头节点,询问此时簇头节点是否处于侦听状态且空闲。簇头节点接收到CM数据帧后,若空闲则回复RM(Reply Message:确认消息)数据帧,否则不回复。簇成员节点如果收到簇头节点回复的RM数据帧,则立即上传DM数据帧,如果在一个时隙内没有收到RM,则直接进入休眠状态,不再发送DM数据帧。
[0088] 如图10所示为本发明的簇成员节点RM帧格式图。RM数据帧的帧类型为0001,目的节点号,占占4比特,用于指定接收该RM帧的簇成员节点,即刚刚收到的CM数据帧中的节点编号。
[0089] 如图11所示为本发明的簇成员节点时隙分布示意图。簇成员节点收到RM数据帧后,随即上传DM数据帧至簇头节点。至此一次完整的簇成员节点数据传输完成,随即进入睡眠状态。簇成员节点按照节点编号依次醒来进入侦听状态,传输完成后立即休眠。
[0090] 如图12所示为本发明的簇成员节点工作流程图。簇成员节点的工作主要由两部分构成:第一阶段进行时间同步工作,使簇成员节点能够在对应的时隙内醒来;第二阶段进行数据上传,簇成员节点确认簇头节点可达后,发送采集到的数据给簇头节点。至此簇成员节点的工作完成,进入低功耗休眠状态,等待一个周期到来。其具体的工作流程为:
[0091] (1)簇成员节点进行初始化,获取各自的节点编号等信息,初始化完成;
[0092] (2)簇成员节点进入侦听阶段;
[0093] (3)若接收到帧类型为1011的同步信标帧,则进入步骤(4),否则返回步骤(2)继续侦听;
[0094] (4)簇成员节点进入低功耗休眠状态;
[0095] (5)根据收到的信标帧编号和本身的节点编号,根据公式1.1计算休眠时间,定时器开始计时。当对应的休眠时间结束后,进入步骤(6);未结束则继续休眠;
[0096] (6)发送CM数据帧给簇头节点。如果节点有数据需要上传,则进入步骤(7),没有则返回步骤(4)进行休眠;
[0097] (7)判断是否收到簇头节点发送的RM确认数据帧。如果收到则进入步骤(8);没有收到返回步骤(4)休眠;
[0098] (8)发送DM数据帧至簇头节点。然后返回步骤(4)休眠,等待下个周期。
[0099] 3、簇头节点时隙部署
[0100] 在簇成员节点进行时间同步的同时,簇头节点也在进行同步。簇头节点要求在汇聚节点发送完m个信标帧后立即进入侦听阶段,等待簇成员节点上传数据。其休眠时间的计算公式为:
[0101]
[0102] 其中, 为簇头节点收到同步信标帧后的休眠时间,m代表汇聚节点一共发送的时间同步信标帧帧数,j代表该簇头节点接收到的信标帧的序号,tbeacom为汇聚节点发送一个时间同步信标帧所用的时间。编号为j的簇头节点收集完所在星型网络簇内的信息后,要继续处于侦听阶段,向编号为j-1的邻居节点发送簇头节点的CM数据帧。
[0103] 如图13所示为本发明的簇头节点CM帧格式图。簇头节点CM数据帧的帧类型码为0101,发送时间占4比特。
[0104] 如图14所示为本发明的簇头节点消息确认示意图。当i-1号簇头节点收到i号簇头节点发送的CM数据帧时,继续向编号为i-2的簇头节点进行数据发送。
[0105] 如图15所示为本发明的簇头节点时隙分布示意图。假设一共部署6个簇头节点。节点i的CM数据帧经过各个簇头节点的中继传输,最终到达距离汇聚节点最近的1号簇头节点。至此,簇头节点的侦听阶段结束,所有节点进入休眠状态。在簇头节点进行CM数据中继的过程中,每个收到CM数据帧的簇头节点都要计算下次醒来的时间,进行对应的时隙部署。簇头节点按照编号大小依次醒来,首先发送自己所在星型簇的数据,然后中继其他簇头节点的数据。
[0106] 由图15可知,时隙部署完成后,簇头节点进入低能耗的休眠状态。1号簇的簇头节点首先醒来,簇成员节点按照部署好的时隙按节点编号由小至大的顺序依次醒来,向簇头节点发送其所在星型网络簇的监测信息DM数据帧。汇聚节点收到簇头节点上传的DM数据帧后,发送RM确认数据帧告知簇头节点已收到本次上传的信息,表明一次数据上传成功。如果数据上传失败,簇头节点没有收到相应的确认信息,则随机退避一定时间后重新发送。上传完成后,再次进入休眠阶段,为保证数据均能正确上传,每两个时隙之间预留了tspace时间的间隔。当下个时隙到来时,2号簇头节点和1号簇头节点同时醒来,2号节点发送其所在星型簇的数据,1号节点中继2号节点上传的信息。然后依次类推,直至所有节点信息上传完毕,一个数据传输周期TS-L结束,随后进入下一个周期。
[0107] 如图16所示为本发明的簇头节点DM帧格式图。簇头节点DM帧的帧类型为0101,源节点号占4比特,目的节点号占4比特,表明接收该数据的节点编号。汇聚节点编号为0,簇头节点越靠近汇聚节点的编号越小,随着与汇聚节点之间距离的增加节点编号依次增大。
[0108] 如图17所示为本发明的簇头节点RM帧格式图。簇头节点RM帧类型为1111,目的节点号占4比特,用于指定接收该RM帧的簇头节点的编号。
[0109] 在簇头节点的侦听阶段,簇头节点依次向前后继簇头节点发送CM数据帧,假定一共有N个簇头节点,每发送一次CM数据帧的时间为tcontrol,那么传输所有的CM数据帧所用的时间 为:
[0110]
[0111] 其中, 为传输所有CM数据帧所用的时间,tcontrol为每发送一次CM数据帧的时间。
[0112] 如图18所示为本发明的簇头节点时序图。仍以部署6个簇头节点为例。根据该时序图,可以计算出各个节点休眠和醒来的时间。假定传输一个DM数据帧的时间为tdata,两个时隙之间有tspace的空闲,那么簇头节点i由侦听状态进入睡眠状态后,睡眠时间为:
[0113]
[0114] 其中,tdata为传输一个DM数据帧的时间,tspace为两个时隙之间空隙时间, 为簇头节点i由侦听状态进入睡眠状态后的睡眠时间,i为该簇头节点的序号。
[0115] 簇头节点经过 时间的睡眠,再次醒来,进入时隙部署的收发数据状态。编号为i的簇头节点部署的总时隙长度为:
[0116]
[0117] 其中, 为簇头节点i部署的总时隙长度,N为簇头节点的总个数,i为该簇头节点的序号,tdata为传输一个DM数据帧的时间,tspace为两个时隙之间空隙时间。
[0118] 当簇头节点i完成所有的发送以及中继工作后,再次进入睡眠状态,直至下个周期的到来。第二次睡眠的时间为:
[0119]
[0120] 其中, 为簇头节点i第二次睡眠的时间,tdata为传输一个DM数据帧的时间,i为该簇头节点的序号。
[0121] 根据公式1.4、1.5和1.6,可得簇成员节点的睡眠时间tsleep:
[0122] tsleep=(3N-1)·tdata+N·tspace   (1.7)
[0123] 其中,tsleep为簇成员节点的睡眠时间,N为簇头节点的总个数,tdata为传输一个DM数据帧的时间,tspace为两个时隙之间空隙时间。
[0124] 由于tdata为簇头节点传输一个DM数据帧的时间,那么簇成员节点向簇头节点上报一次数据,发送簇成员节点DM数据帧的的时间为1/7tdata。假定簇成员节点向簇头节点发送CM数据帧的时间也为tcontrol,那么簇成员节点向簇头节点发送信息的总时间tmember为:
[0125]
[0126] 其中,tmember为簇成员节点向簇头节点发送信息的总时间,tcontrol为簇成员节点向簇头节点发送CM数据帧的时间,tdata为传输一个DM数据帧的时间。
[0127] 一个完整的数据传输周期包括三个阶段:一是簇成员节点向簇头节点上传信息,二是簇头节点之间发送CM数据帧进行时隙部署,三是按照部署好的时隙簇头节点向汇聚节点发送DM数据帧。根据公式1.3、1.7和1.8,可得进行一个完整的数据传输周期花费的总时间:
[0128]
[0129] 其中TS-L为一个完整的数据传输周期花费的总时间,tcontrol为簇成员节点向簇头节点发送CM数据帧的时间,tdata为传输一个DM数据帧的时间,tsleep为簇成员节点的睡眠时间,N为簇头节点的总个数。
[0130] 如图19所示为本发明的簇头节点工作流程图。簇头节点的工作流程可以分为三个阶段:第一阶段是星型网络簇簇内数据收集阶段,在该阶段簇头节点接收各个簇成员节点发送的信息,多个星型簇同时进行数据上传,并行执行,互不干扰。第二个阶段为各个簇头节点通过多跳中继的方式,将数据上报至汇聚节点。在这个阶段中又可分为两个步骤:第一步所有簇头节点处于侦听状态,发送CM数据帧进行时隙部署;第二步簇头节点处于低功耗的休眠状态,按照前一步部署好的时隙醒来进行数据收发,完成后再次休眠,直至下个周期到来。第三个阶段为异常处理阶段,当簇头节点发生异常情况时,要及时上报给汇聚节点,由汇聚节点具体进行处理。其具体工作流程如下:
[0131] (1)簇头节点初始化;
[0132] (2)簇头节点进入侦听阶段;
[0133] (3)簇头节点收到汇聚节点发送的同步信标帧后,根据自身节点编号和收到的信标帧号,依照公式1.2计算休眠时间。如果未收到同步信标帧则返回步骤(2)继续侦听;
[0134] (4)进入休眠阶段;
[0135] (5)簇头节点接收簇成员节点发送的CM数据帧;
[0136] (6)根据收到CM数据帧的数据标志字段位,判断发送该CM帧的簇成员节点是否有数据需要上传。如果有数据需要上传,进入步骤(7);没有数据上传则返回步骤(5),继续接收下一个簇成员节点发送的CM帧;
[0137] (7)簇头节点回复RM数据帧给对应的簇成员节点;
[0138] (8)接收簇成员节点发送的DM数据帧;
[0139] (9)根据公式1.8计算星型簇内的数据上传时间,如果超时则进入步骤(10);时间未到则返回步骤(5)继续接收下一个簇成员节点发送的CM数据帧;
[0140] (10)判断簇头节点当前电量是否低于警告值。如果低于警告值则生成一个低电警告命令帧,上传至汇聚节点;没有低于警告值则进入步骤(11);
[0141] (11)判断当前节点是否为新加入的节点。如果是,则主动生成新节点加入命令帧上报至汇聚节点;不是则进入步骤(12);
[0142] (12)是否收到汇聚节点发送的故障询问帧。如果收到,则进入步骤(13),未收到则进入步骤(14);
[0143] (13)节点收到故障询问命令帧。如果节点正常,则生成故障回复帧后进入步骤(14);簇头节点也有可能电量极低,无法进行正常的故障回复,或者由于其他外界原因失去工作能力,此时判定为节点死亡,由汇聚节点处理,具体的异常处理机制详见后文;
[0144] (14)簇头节点发送CM数据帧至前一跳簇头节点;
[0145] (15)判断是否收到前一跳节点的确认CM数据帧,如果收到,则进入步骤(16);如果没收到则返回步骤(14)重新发送;
[0146] (16)根据公式1.4、1.5和1.6部署时隙;
[0147] (17)侦听时间结束,再次进入休眠阶段,计时器启动;
[0148] (18)计时结束,根据时隙部署发送DM数据帧至前一个簇头节点;
[0149] (19)判断是否收到由前一个簇头节点发送的DM数据帧。如果收到,则进入步(20);如果没收到,则返回步骤(18)重新发送;
[0150] (20)中继上一个簇头节点发送的DM数据帧,直至时隙结束,所有中继任务完成;
[0151] (21)返回步骤(4)进入休眠状态,一个周期任务完成,等待下个周期的到来。
[0152] 4、汇聚节点异常处理
[0153] 无线传感器网络在正常运作时,经常会由于各种原因出现故障,一个良好的通信协议应该具有一定的处理故障的能力。为此,本协议也加入了一定的异常处理机制。
[0154] 不同于簇成员节点,簇头节点存储的信息量较大,是簇成员节点的7倍,而且簇头节点还承担着中继其他节点数据的任务,所以对簇头节点的传输可靠性要求较高。为此,协议针对簇头节点提出异常处理机制。
[0155] 能耗受限是目前无线传感器网络面临的最大挑战,因此簇头节点经常会出现电量不足的情况。因为星链型无线传感器网络中的数据在簇头节点处是通过多跳的方式上报至汇聚节点的,因此一旦有簇头节点无法正常工作且不能及时处理的话,就会造成整个网络的瘫痪。针对以上情况,我们对传感器节点的电量设定了一个最低阈值,并且规定,一旦编号为i的簇头节点电量低于该阈值,立即生成低电警告命令帧上报给汇聚节点,由汇聚节点广播调度表更新命令帧,告知所有簇头节点该节点无法参与通信,同时上报至终端用户,提醒网络维护人员及时更换传感器节点。簇头节点收到调度表更新命令帧后,更新自身的调度表,特别地,编号为i+1的簇头节点调整自身发射功率,不再向节点i发送任何数据帧,而是发给i-1节点。低电量的节点i收到调度表更新命令帧后,确认自己的低电异常已被处理,节点死亡。
[0156] 如图20所示为本发明的簇头节点异常处理命令帧格式图。其中,帧类型具体规定如表2所示,不同的字符代表不同的命令。节点编号即发送该命令帧的簇头节点编号。
[0157] 表2
[0158]帧类型 代表意义
0010 低电警告命令帧
0001 新节点入网命令帧
0000 故障回复命令帧
[0159] 如图21所示为本发明的调度表更新命令帧结构图。帧类型为0111,代表该数据帧是由汇聚节点发出、由簇头节点接收;节点号是处于异常状态的簇头节点号,此处异常状态包括节点死亡和新节点加入。节点信息字段占4比特,包含要更新的簇头节点的信息,用来更新调度表。
[0160] 当有新节点i加入网络时,首先向前一跳簇头节点发送帧类型码为0001的簇头节点异常处理命令帧,然后通过多跳传输上报至汇聚节点,通知汇聚节点有新节点加入。汇聚节点收到新节点发送的命令帧后,广播调度表更新命令帧通知所有簇头节点,表明节点i可以正常工作。新加入的簇头节点i收到汇聚节点发送的调度表更新命令帧后,停止发送新节点入网的异常处理命令帧,同时建立自己的调度表,进入正常的簇头节点工作流程。
[0161] 表3
[0162]
[0163] 如表3所示编号为i的簇头节点的调度表。每个簇头节点都维护这样一张表,用于异常情况发生时节点之间的调度。表中最后一列为节点状态,表明对应的簇头节点是否能够正常工作。通过调度表,汇聚节点可以实时调度整个星链型无线传感器网络中的簇头节点,能够及时应对异常情况的发生,防止网络崩溃。
[0164] 簇头节点可能会因为一些不可预知的外界因素,或者电量出现断崖式下降,导致无法向汇聚节点发送异常处理命令帧而直接进入死亡状态的情况。此时,汇聚节点无法得知该簇头节点的状态,因此也无法及时进行全网调度处理该异常,最终导致整个网络的崩溃。针对以上问题,本发明提出了一种新的异常处理机制,用以及时处理异常情况,确保整个网络的正常工作。
[0165] 当汇聚节点接收到簇头节点上传的DM数据帧后,根据其源节点编号字段判断该数据的来源,如果长时间收不到来自某个簇头节点的上报数据,汇聚节点会发送一个故障询问命令帧至相应的簇头节点。如果簇头节点状态正常,则会生成一个故障回复命令帧上报至汇聚节点,汇聚节点收到该命令帧后确认节点状态正常,停止发送故障询问命令帧;如果簇头节点已死亡,无法接收该命令帧,汇聚节点在规定时间内没有收到该节点上报的故障命令回复帧,则判断该簇头节点死亡,广播调度表更新命令帧,通知所有簇头节点该节点已死亡,同时上报至管理节点,通知终端用户及时更换传感器节点。
[0166] 如图22所示为本发明的汇聚节点故障询问命令帧图。其中,帧类型为0111,代表此数据帧是由汇聚节点发送簇头节点接收,节点号为长时间未收到其数据的簇头节点的编号,即接收此数据帧的目的节点号。
[0167] 如图23所示为本发明的汇聚节点工作流程图。汇聚节点的工作主要由两部分构成:一是在全网节点初始化时发送时间同步信标帧,进行时间同步;二是对网络内簇头节点出现的一些异常情况进行及时处理。其具体工作流程如下:
[0168] (1)汇聚节点初始化;
[0169] (2)发送编号为i的时间同步信标帧;
[0170] (3)假定一共应发送m个时间同步信标帧,判断当前发送的信标帧编号是否小于m。如果是,则将编号增1后返回步骤(2)继续发送;如果不是,则表明全部信标帧发送完毕,进入步骤(4);
[0171] (4)汇聚节点处于接收状态;
[0172] (5)判断收到的数据帧是否包含低电警告数据帧。如果是,则转入步骤(9);如果没有收到,则进入步骤(6);
[0173] (6)判断是否收到新节点加入命令帧。如果是,转入步骤(9);没有收到则进入步骤(7);
[0174] (7)判断是否长时间没有收到编号为i的簇头节点的上报数据。如果是,则发送故障询问命令帧后进入步骤(8);没有出现该情况则返回步骤(4);
[0175] (8)判断在规定时间内是否收到簇头节点i上报的故障回复命令帧。如果是返回步骤(4);如果没有收到则进入步骤(9);
[0176] (9)汇聚节点广播调度表更新命令帧。广播一定时间后返回步骤(2)。
[0177] 5、仿真分析
[0178] 如图24所示为OMNET++仿真流程图。仿真的拓扑结构按照星链型无线传感器网络部署方法进行设置,取1000m的监测范围。我们分别采用XLM协议和本发明的协议进行仿真,并给出对比结果。在仿真实验中,两者均采用固定路由的方式、传感器节点功率可调且均可正常工作。
[0179] 如图25所示为本发明与XLM协议的能耗对比图。由图观察可知,网络的总能耗随着星型簇个数的增加而增加。当星型簇个数较少即监测距离比较短时,XLM协议和本发明的无层协议消耗的网络总能耗大致相同;随着节点数目上升、监测范围的增大,本发明的无层协议总能耗相较于XLM协议越少。因此,本次仿真结果证实了本发明提出的星链型无线传感器网络无层协议较XLM无层协议而言,可以更好地减少网络能耗。
[0180] 如图26所示为本发明与XLM协议的平均数据延时对比图。由图观察可知,随着星型网络簇个数的增加,数据的平均延时也不断增大。对于XLM协议而言,当星型簇个数少、监测距离短时,数据延时小,随着监测距离的增大其平均时延也快速增大,当增加到一定规模后趋于一个稳定值,不随监测距离的增加而继续恶化。而本发明提出的无层协议,在最开始的短距离监测中的平均数据时延就小于XLM的时延,虽然随着星型簇个数的增加时延也呈现出上升趋势,但是幅度缓慢且始终优于XLM协议。仿真实验证明,本发明提出的星链型无线传感器网络无层协议较XLM而言具有更小的网络延时,保证了数据的实时性。
[0181] 实施例仅为说明本发明的技术思想,不能以此限定本发明的保护范围,凡是按照本发明提出的技术思想,在技术方案基础上所做的任何改动,均落入本发明保护范围之内。

附图说明

[0039] 图1是本发明的通信网络结构图;
[0040] 图2是本发明的星型网络簇节点编号图;
[0041] 图3是本发明的单链型簇头节点编号图;
[0042] 图4是本发明的同步信标帧结构图;
[0043] 图5是本发明的簇成员节点时间同步时序图;
[0044] 图6是本发明的簇成员节点时序图;
[0045] 图7是本发明的簇成员节点CM帧格式图;
[0046] 图8是本发明的簇成员节点DM帧格式图;
[0047] 图9是本发明的簇成员节点数据传输示意图;
[0048] 图10是本发明的簇成员节点RM帧格式图;
[0049] 图11是本发明的簇成员节点时隙分布示意图;
[0050] 图12是本发明的簇成员节点工作流程图;
[0051] 图13是本发明的簇头节点CM帧格式图;
[0052] 图14是本发明的簇头节点消息确认示意图;
[0053] 图15是本发明的簇头节点时隙分布示意图;
[0054] 图16是本发明的簇头节点DM帧格式图;
[0055] 图17是本发明的簇头节点RM帧格式图;
[0056] 图18是本发明的簇头节点时序图;
[0057] 图19是本发明的簇头节点工作流程图;
[0058] 图20是本发明的簇头节点异常处理命令帧格式图;
[0059] 图21是本发明的调度表更新命令帧结构图;
[0060] 图22是本发明的汇聚节点故障询问命令帧图;
[0061] 图23是本发明的汇聚节点工作流程图;
[0062] 图24是本发明的OMNET++仿真流程;
[0063] 图25是本发明与XLM协议的能耗对比图;
[0064] 图26是本发明平均数据延时对比图。
版权所有:盲专网 ©2023 zlpt.xyz  蜀ICP备2023003576号