著录项信息
专利名称 | 一种用于水位监测的WSN信息感知系统及方法 |
申请号 | CN201410410242.8 | 申请日期 | 2014-08-19 |
法律状态 | 授权 | 申报国家 | 中国 |
公开/公告日 | 2014-12-17 | 公开/公告号 | CN104219789A |
优先权 | 暂无 | 优先权号 | 暂无 |
主分类号 | 暂无 | IPC分类号 | 暂无查看分类表>
|
申请人 | 东南大学 | 申请人地址 | 江苏省南京市四牌楼2号
变更
专利地址、主体等相关变化,请及时变更,防止失效 |
权利人 | 东南大学 | 当前权利人 | 东南大学 |
发明人 | 陈俊杰;张园 |
代理机构 | 南京苏高专利商标事务所(普通合伙) | 代理人 | 柏尚春 |
摘要
本发明公开了一种用于水位监测的WSN信息感知系统及方法,所述方法包括:水位采集节点通过分簇算法找到其簇头节点;簇头节点通过一定的路径查找机制查找自己的下一跳节点;基站发送系统启动命令给中继节点,中继节点将启动命令转发至汇聚节点;若水位超过一定的阈值,各个水位采集节点将采集到的水位信号打包发送到簇头,簇头比较其接收的水位信号,将比较得到的最大值通过合适的自组网算法发送至汇聚节点,最终通过中继节点转发至基站,基站通过上行串口连接到本地监控终端,同时通过移动互联接口模块接入移动通信网将警示信息发送至移动监控终端,最终实现水位监测的功能。
1.一种基于信息感知系统的WSN信息感知方法,其特征在于,用于水位监测的WSN信息感知系统包括:
水位采集节点,用于采集水位传感器的信号、节点组网和转发其他节点的水位信号;
簇头节点,用于智能化协同组网、无线收发和处理簇内的水位信号;
汇聚节点,用于对水位采集节点和簇头节点的数据进行处理,并将处理后的数据转发至中继节点;
中继节点,用于接收汇聚节点的信号并负责转发汇聚节点和基站之间的数据包;
基站,通过无线通信模块收到中继节点传来的水位信号数据包,并对其进行解析、存储和分析,将处理后的数据通过RS232串口发送至本地监控终端进行显示;如果采集的水位值高于危险阈值,则通过移动通信网将当前水位和警示信息发送到移动监控终端;
所述方法包括如下步骤:
1.1.水位采集节点、簇头节点、汇聚节点、中继节点和基站上电初始化;
1.1.1.基站发出系统预启动数据包给所述中继节点;
1.1.2.repeater定时器T1定时时间到,水位采集节点采集一次水位信号,若水位信号h小于阈值H_THRESHOLD,转至1.2;若水位信号h大于H_THRESHOLD,转至1.15;
1.2.开始分簇算法的第一阶段,水位采集节点开启分簇定时器T2,广播组网消息包;
1.3.簇头节点侦听无线信道,如果接收到某个组网消息包,则返回一个应答包给该节点;
1.4.水位采集节点接收到应答包后,若该水位采集节点是第一次接收此类数据包,将其簇头节点号和下一跳节点号变为应答包中的节点号;否则,不处理;
1.5.水位采集节点将确认该簇头节点的确认数据包发送给其存储的簇头节点;
1.6.簇头节点接收到确认数据包后,若其簇头标志位为0,则将其簇头标志位置1;
1.7定时器T2定时时间到,开启定时器T3,进行分簇算法的第二阶段:
1.7.1.若水位采集节点的簇头节点并非有效值,说明其不在任何一个簇头节点的通信范围内,则该节点再次广播组网信息,转至1.8;
1.7.2.若接收到find_and_search数据包,则返回find_and_search数据应答包;
1.8已确定簇头节点的水位采集节点接收到组网消息包后,给该节点发送应答包,转至
1.9;
1.9未确定簇头的水位采集节点将最先收到的数据包节点号储存为其下一跳节点,将其簇头节点号储存为自身的簇头节点号;
1.10.T3定时时间到:
1.10.1若定时器T1定时时间未到,水位采集节点进入休眠状态;
1.10.2若定时器T1时间到,水位采集节点唤醒,回归初始化状态,转至1.1.2;
1.11.簇头节点处于第二层,当接收到第一个组网消息包后,开启定时器T4,根据自组网算法确定自身的下一跳节点:
1.11.1T4定时时间到,簇头节点将find_and_search数据包发送至下一跳节点,转至
1.12:
1.11.2.T4时间未到,若接收到组网消息包,则向该节点返回消息应答包,若接收到其他节点的确认消息包,且簇头标志位为0,则将簇头标志位置1;
1.12.开启定时器T5:
1.12.1.T5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;
1.12.2.T5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器T5,转至1.12.3;
1.12.3.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器T5;
1.13.中继节点收到系统预启动数据包后,将系统启动数据包转发至汇聚节点,并保持侦听状态;
1.14.汇聚节点收到系统启动数据包后,保持侦听状态,开启定时器T6;
1.15.水位采集节点采集到水位信号:
1.15.1.水位采集节点采集到的水位信号h小于阈值H_THRESHOLD,则水位采集节点继续保持睡眠状态;
1.15.2.水位采集节点采集到的水位信号h大于阈值H_THRESHOLD,则水位采集节点的收发模块唤醒,将信号发送至本节点的簇头节点,簇头节点将接收到的最大值发送至汇聚节点,通过中继节点转发至基站;
1.16基站将接收到的水位信号存储到本地终端以供显示,并将接收到的最大值和危险阈值H_DANGER比较,如果大于危险阈值,则通过和其相连的移动互联接口模块经移动通信网将当前水位和警示信息发送到移动监控终端。
2.根据权利要求1所述的信息感知方法,其特征在于,所述水位采集节点的工作流程进一步包括下列步骤:
2.1.水位采集节点上电初始化,簇头节点号为0xFFFF,下一跳节点号为0xFFFF,打开repeater定时器Timer1;
2.2.Timer1定时时间到,水位信号采集节点采集水位信号h,若水位信号h小于阈值H_THRESHOLD,开启定时器Timer2,转至2.3;否则若水位信号h大于阈值H_THRESHOLD,则转至
2.6;
2.3.水位采集节点广播组网消息包和接收邻居节点的报文,进行分簇处理的第一阶段;
2.4.Timer2定时时间到,第一阶段的分簇完成,开启分簇定时器Timer3,进行分簇处理的第二阶段;
2.5.Timer3定时时间到,第二阶段的分簇完成:
2.5.1.定时器Timer1时间未到,且采集到的水位信号h小于阈值H_THRESHOLD,则收发模块关闭,进入睡眠状态,否则转至2.6;
2.5.2.定时器Timer1时间到,水位采集节点唤醒,簇头节点、上一跳节点号和下一跳节点号均回归初始状态,转到2.2;
2.6.若水位信号h大于阈值H_THRESHOLD,则水位采集节点将当前水位信号发送到其下一跳,直至发送至簇头节点,由簇头节点处理发送出去。
3.根据权利要求1所述的信息感知方法,其特征在于,所述簇头节点的工作流程进一步包括下列步骤:
3.1.簇头节点上电初始化,下一跳节点号初始化为初始的给定节点号,无线模块处于侦听状态,接收到第一个组网消息包后,开启定时器Timer4,转至3.2;
3.2.Timer4定时时间未到,若接收到组网消息包,则返回一个组网消息应答包给该节点,若接收到节点的确认消息包,且簇头标志位为0,则将簇头标志位置1;
3.3.Timer4定时时间到,开启定时器Timer5:
3.3.1.Timer5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;
3.3.2.Timer5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器Timer5,转至3.4;
3.4.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器Timer5;
3.5.若接收到水位信号数据包,开启定时器Timer7:
3.5.1.Timer7定时时间未到,比较接收到的本簇簇成员的数据和本地存储的最大值,将较大值储存到本地的数据包中,将采集信号最大的那个节点号储存在本地数据包中的original_node;
3.5.2.Timer7定时时间到,将数据转发到其存储的下一跳节点,通过多跳路由传送到汇聚节点,最后经过中继节点转发至基站。
4.根据权利要求1所述的信息感知方法,其特征在于,汇聚节点的工作流程进一步包括下列步骤:
4.1.汇聚节点上电初始化,收发模块处于侦听状态;
4.2.若汇聚节点接收到中继节点的预启动数据包,则开启定时计数器Timer6:
4.2.1.Timer6定时时间未到,若接收到数据包,查看转发队列和已发送缓存中是否存在该数据包,若都不存在,则储存到转发队列,否则不处理;
4.2.2.Timer6定时时间到,转至4.3;
4.3.将当前存储的数据包经中继节点转发至基站。
5.根据权利要求1所述的信息感知方法,其特征在于,基站的工作流程进一步包括下列步骤:
5.1.发送预启动数据包至中继节点;
5.2.接收中继节点传来的水位信息数据包,并将其通过串口发送至监控终端以作储存和显示,同时将数据通过互联网上传到服务器;
5.3.比较当前接收的水位信号和危险阈值H_DANGER,如果水位信号h大于阈值H_DANGER,则将当前水位和警示信息发送到移动终端。
6.根据权利要求1所述的信息感知方法,其特征在于,所述分簇算法包括如下步骤:
6.1.水位采集节点上电初始化后,开启分簇定时器Timer2,并开始广播组网消息包;
6.2.簇头节点开启分簇定时器Timer2,并侦听无线信道,如果接收到某个组网消息包,则返回一个应答包给该节点;
6.3.水位采集节点接收到应答包后,若该水位采集节点是第一次接收此类数据包,将其簇头节点号和下一跳节点号变为应答包中的节点号,否则,不处理;
6.4.水位采集节点将确认该簇头节点的确认数据包发送给其存储的簇头节点;
6.5.簇头节点接收到确认数据包后,若其簇头标志位为0,则将其簇头标志位置1;
6.6定时器Timer2定时时间到,开启定时器Timer3,若水位采集节点的簇头节点并非有效值,则该节点再次广播组网信息;
6.7已确定簇头节点的水位采集节点接收到组网消息包后,给该节点发送应答包;
6.8节点将最先收到的数据包节点号储存为其下一跳节点,将其簇头节点号储存为自身的簇头节点号。
7.根据权利要求1所述的信息感知方法,其特征在于,自组网算法包括下列步骤:
7.1.簇头节点处于第二层,开启定时器Timer4;
7.2.Timer4定时时间到,簇头节点将find_and_search数据包发送至其储存的下一跳节点;
7.3.开启定时器Timer5:
7.3.1.Timer5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;
7.3.2.Timer5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器Timer5,转至7.3.3;
7.3.3.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器Timer5;
7.4.当水位采集节点采集的水位信号超过阈值,转至7.5;
7.5.水位采集节点将水位信号传至当前储存的簇头节点;
7.6.簇头节点开启定时器Timer7:
7.6.1.Timer7定时时间未到,比较接收到的本簇簇成员的数据和本地存储的最大值,将较大值储存到本地的数据包中,将采集信号最大的那个节点号储存在本地数据包中的original_node;
7.6.2.Timer7定时时间到,将数据转发到其存储的下一跳节点;
7.7.转发非本簇内的节点转发的数据;
7.8.汇聚节点接收到第一个预启动数据包后,开启定时器Timer6:
7.8.1.Timer6定时时间未到,继续接收数据包,查看转发队列和已发送缓存中是否存在该数据包,若都不存在,则储存到转发队列,否则不处理;
7.8.2.Timer6定时时间到,将缓冲区的数据包转发至中继节点。
一种用于水位监测的WSN信息感知系统及方法\n技术领域\n[0001] 本发明涉及基于无线传感器网络(WSN,Wireless Sensor Networks)的水位监测方法,尤其是可以用于例如城市隧道、地下铁等城市低洼地区的水位监测系统,通过获得的水位信息,结合其他相关气象信息,决定何时发布警示信息以及当前水位信号,实现城市暴雨水位监测和雨情预警。\n背景技术\n[0002] 近年来,发生在城市的极端强降水事件增多,由于城市规模日益扩大、人口增多,短时强降水对城市安全的危害也越来越大,经常出现区域短时集中降雨量远大于城市工程有限排水能力的情况,造成降水向城市的立交桥下、隧道、地下商场、地铁等地势低洼地区汇聚形成积涝,极易对人民生命财产安全造成极大危害。\n[0003] 目前各种城市暴雨积涝预警系统虽然可以在暴雨发生前进行预测哪些地点可能发生积涝,但其结果的瞬时精确度不高,不利于在暴雨过程中实时掌握内涝灾害信息,因而也难以提前对具体的某处城市低洼地带是否会形成灾害作出预判,且当情况危急时,无法获得准确的实时水位信息,并根据当前水位信息将警示信息发布出去。\n发明内容\n[0004] 发明目的:一个目的是提供一种用于水位监测的WSN信息感知系统,以解决当前现有技术存在的部分问题。\n[0005] 技术方案:一种用于水位监测的WSN信息感知系统,包括:\n[0006] 水位采集节点,安装在隧道内壁高于1.5米处,用于协同组网和转发其他节点的水位信号;水位采集节点通过分簇算法确定簇头,当水位信号超过阈值时,将采集到的水位信号发送至簇头。\n[0007] 簇头节点,安装在隧道天花板上,由隧道内的照明装置供电,用于协同组网和处理簇内的水位信号;同时采用一种find_and_search机制,找到自身的下一跳节点,并将水位信号多跳转发至汇聚节点;\n[0008] 汇聚节点,安装在靠近隧道口的地方,有隧道内的供电设施供电,用于对水位采集节点和簇头的数据进行处理,作为水位采集节点和簇头节点的根节点,负责接收水位采集节点和簇头节点自组网传来的信号,并将处理后的数据通过中继节点发送至基站;\n[0009] 中继节点,由附近的公共设施供电,接收汇聚节点的信号并负责转发网关和基站之间的数据包;\n[0010] 基站,设置在监控室内,通过串口与监控室内的本地监控终端连接,作为WSN网络和本地监控终端的连接点;基站通过无线通信模块收到中继节点传来的水位信号,并将其通过串口发往本地监控终端;如果采集的水位值高于危险阈值,则通过移动互联接口模块经移动通信网将当前水位和警示信息发送到移动监控终端。\n[0011] 进一步地,本发明还提供了一种基于上述的信息感知系统的、用于水位监测的WSN信息感知方法,包括如下步骤:\n[0012] 1.1.水位采集节点、簇头节点、汇聚节点、中继节点和基站上电初始化;\n[0013] 1.1.1.基站发出系统预启动数据包给所述中继节点;\n[0014] 1.1.2.repeater定时器T1定时时间到,水位采集节点采集一次水位信号,若水位信号(h)小于阈值(H_THRESHOLD),转至1.2;若水位信号(h)大于(H_THRESHOLD),转至1.15;\n[0015] 1.2.开始分簇算法的第一阶段,水位采集节点开启分簇定时器T2,广播组网消息包;\n[0016] 1.3.簇头节点侦听无线信道,如果接收到某个组网消息包,则返回一个应答包给该节点;\n[0017] 1.4.水位采集节点接收到应答包后,若该水位采集节点是第一次接收此类数据包,将其簇头节点号和下一跳节点号变为应答包中的节点号;否则,不处理;\n[0018] 1.5.水位采集节点将确认该簇头节点的确认数据包发送给其存储的簇头节点;\n[0019] 1.6.簇头节点接收到确认数据包后,若其簇头标志位为0,则将其簇头标志位置1;\n[0020] 1.7定时器T2定时时间到,开启定时器T3,进行分簇算法的第二阶段:\n[0021] 1.7.1.若水位采集节点的簇头节点并非有效值,说明其不在任何一个簇头节点的通信范围内,则该节点再次广播组网信息,转至1.8;\n[0022] 1.7.2.若接收到find_and_search数据包,则返回find_and_search数据应答包;\n[0023] 1.8已确定簇头节点的水位采集节点接收到组网消息包后,给该节点发送应答包,转至1.9;\n[0024] 1.9未确定簇头的水位采集节点将最先收到的数据包节点号储存为其下一跳节点,将其簇头节点号储存为自身的簇头节点号;\n[0025] 1.10.T3定时时间到:\n[0026] 1.10.1若定时器T1定时时间未到,水位采集节点进入休眠状态;\n[0027] 1.10.2若定时器T1时间到,水位采集节点唤醒,回归初始化状态,转至1.1.2;\n[0028] 1.11.簇头节点处于第二层,当接收到第一个组网消息包后,开启定时器T4,根据自组网算法确定自身的下一跳节点:\n[0029] 1.11.1 T4定时时间到,簇头节点将find_and_search数据包发送至下一跳节点,转至1.12:\n[0030] 1.11.2.T4时间未到,若接收到组网消息包,则向该节点返回消息应答包,若接收到其他节点的确认消息包,且簇头标志位为0,则将簇头标志位置1;\n[0031] 1.12.开启定时器T5:\n[0032] 1.12.1.T5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;\n[0033] 1.12.2.T5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器T5,转至1.12.3;\n[0034] 1.12.3.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器T5;\n[0035] 1.13.中继节点收到系统预启动数据包后,将系统启动数据包转发至汇聚节点,并保持侦听状态;\n[0036] 1.14.汇聚节点收到系统启动数据包后,保持侦听状态,开启定时器T6;\n[0037] 1.15.水位采集节点采集到水位信号:\n[0038] 1.15.1.水位采集节点采集到的水位信号(h)小于阈值(H_THRESHOLD),则水位采集节点继续保持睡眠状态;\n[0039] 1.15.2.水位采集节点采集到的水位信号(h)大于阈值(H_THRESHOLD),则水位采集节点的收发模块唤醒,将信号发送至本节点的簇头节点,簇头节点将接收到的最大值发送至汇聚节点,通过中继节点转发至基站;\n[0040] 1.16.基站将接收到的水位信号存储到本地终端以供显示,并将接收到的最大值和危险阈值H_DANGER比较,如果大于危险阈值,则通过和其相连的移动互联接口模块经移动通信网将当前水位和警示信息发送到移动监控终端。\n[0041] 有益效果:本发明能够实现对隧道内水位的近实时监测,并解决了隧道内水位分布不均导致无法统一处理的问题,以及根据实时信息及时发布预警信息的问题,大大提高了水位监测的准确性,使公众的生命财产安全进一步得到保障。\n发明内容\n[0042] 图1是本发明水位监测系统框图。\n[0043] 图2是本发明水位监测节点结构图。\n[0044] 图3是本发明簇头节点结构图。\n[0045] 图4是本发明汇聚节点结构图。\n[0046] 图5是本发明基站结构图。\n[0047] 图6是本发明监控方法的主程序流程图。\n[0048] 图7是本发明水位监测节点的程序流程图。\n[0049] 图8是本发明簇头节点的程序流程图。\n[0050] 图9是本发明水位采集节点的分簇算法流程图。\n[0051] 图10是本发明汇聚节点流程图。\n[0052] 图11是本发明基站流程图。\n[0053] 图12是本发明自组网算法流程图。\n具体实施方式\n[0054] 如图1所示,本发明的水位监测系统包括水位采集节点1、簇头节点2、汇聚节点3、中继节点4、基站5、本地监控终端6、移动监控终端7和远程监控中心8等。水位采集节点采集到的水位信号若大于设定的阈值,则将水位信号传到簇头节点2,簇头节点经由find_and_research机制将最大的水位信号及其ID号多跳发送至汇聚节点,汇聚节点通过中继节点将信号发送至基站,由基站将数据发送至本地监控终端,并判断水位信号是否大于危险阈值,若大于危险阈值,则基站将水位信号和预警信息发送至监控终端,从而实现城市低洼水位的实时监控和预警信号的及时发布。\n[0055] 如图2所示,水位采集节点主要由传感主板、电源主板、供电电源等组成。传感主板由微处理器单元、无线通信单元、传感器信号调理单元等构成。其中,传感器调理单元为RS-\n485接口,通过该接口连接水位传感器的输出(RS-485串行输出)。水位采集节点工作在\n433MHz频段,其无线通信距离可达150米,供电电源为2.7V~3.6V(干电池)。其工作的流程为:在第1处理单元控制下,传感器单元定时地通过485串口传输信号采集命令给水位传感器,获得水位传感器的信号。第1无线收发单元处于休眠状态,若采集到的水位信号大于设定的阈值,则第1无线收发单元唤醒,实现数据的发送,临时数据存储在第1存储器单元,第1调试及通信接口方便程序的调试,传感器电源单元为传感器单元提供电源,除此之外,第1电源单元还要为其他模块供电。\n[0056] 如图3所示,簇头节点和水位采集节点的结构类似,但是它的供电模块为AC~DC模块(交流220V供电)。工作在433MHz频段,其无线通信距离可达150米。其工作的流程为:在第\n2处理器单元控制下,通过第2无线收发单元实现数据的收发,临时数据储存在第2存储单元,第2调试及通信接口方便程序的调试,第2电源单元为节点供电。\n[0057] 如图4所示,汇聚节点和水位采集节点的结构类似。工作在433MHz频段,其无线通信距离可达150米,它的供电模块为AC~DC模块(交流220V供电)。其工作的流程为:在第3处理器单元控制下,通过第3无线收发单元实现数据的收发,临时数据储存在第3存储单元,第\n3调试及通信接口方便程序的调试,第3电源单元为节点供电。\n[0058] 如图5所示,基站主要由处理通信主板、电源主板、AC~DC模块(交流220V供电时)和外壳等组成。处理通信主板由微处理器单元、下行通信接口、上行通信接口等构成。其无线通信距离可达150m,供电电源:AC 176V~264V、50Hz。其工作的流程为:在第4处理单元控制下,通过第4无线收发单元实现数据的收发,临时数据存储在第4存储单元,第4调试及通信接口方便程序的调试,第4电源单元为处理通信主板(除移动互联接口模块)提供电源,第\n5电源单元为移动互联接口模块提供电源。UART0接口单元与移动互联接口模块相连,UART1接口单元为与本地监控终端通信的接口单元。\n[0059] 实施例1\n[0060] 如图1所示的水位监测系统的所有节点(包括水位采集节点、簇头节点、汇聚节点、中继节点和带有移动互联接口模块的基站)上电并进行初始化。水位采集节点初始化其无线收发单元,使其处于信息接受状态;初始化传感单元,准备采集数据。簇头节点、汇聚节点、中继节点初始化其无线收发单元,使其处于信息收发状态。基站初始化无线收发单元和移动互联接口模块,准备启动系统。\n[0061] 如图6所示,本水位监测信息感知方法包括下列步骤:\n[0062] 1.1.水位采集节点、簇头节点、汇聚节点、中继节点和基站上电初始化;\n[0063] 1.1.1.基站发出系统预启动数据包给所述中继节点;\n[0064] 1.1.2.repeater定时器T1定时时间到,水位采集节点采集一次水位信号,若水位信号h小于阈值H_THRESHOLD,转至1.2;若水位信号h大于H_THRESHOLD,转至1.15;\n[0065] 1.2.水位采集节点开启分簇定时器T2,广播组网消息包;\n[0066] 1.3.簇头节点侦听无线信道,如果接收到某个组网消息包,则返回一个应答包给该节点;\n[0067] 1.4.水位采集节点接收到应答包后,若该水位采集节点是第一次接收此类数据包,将其簇头节点号和下一跳节点号变为应答包中的节点号;否则,不处理;\n[0068] 1.5.水位采集节点将确认该簇头节点的确认数据包发送给其存储的簇头节点;\n[0069] 1.6.簇头节点接收到确认数据包后,若其簇头标志位为0,则将其簇头标志位置1;\n[0070] 1.7.定时器T2定时时间到,开启定时器T3:\n[0071] 1.7.1.若水位采集节点的簇头节点并非有效值,说明其不在任何一个簇头节点的通信范围内,则该节点再次广播组网信息,转至1.8;\n[0072] 1.7.2.若接收到find_and_search数据包,则返回find_and_search数据应答包;\n[0073] 1.8已确定簇头节点的水位采集节点接收到组网消息包后,给该节点发送应答包,转至1.9;\n[0074] 1.9未确定簇头的水位采集节点将最先收到的数据包节点号储存为其下一跳节点,将其簇头节点号储存为自身的簇头节点号;\n[0075] 1.10.T3定时时间到:\n[0076] 1.10.1若定时器T1定时时间未到,水位采集节点进入休眠状态;\n[0077] 1.10.2若定时器T1时间到,水位采集节点唤醒,回归初始化状态,转至1.1.2;\n[0078] 1.11.簇头节点处于第二层,当接收到第一个组网消息包后,开启定时器T4:\n[0079] 1.11.1 T4定时时间到,簇头节点将find_and_search数据包发送至下一跳节点,转至1.12:\n[0080] 1.11.2.T4时间未到,若接收到组网消息包,则向该节点返回消息应答包,若接收到其他节点的确认消息包,且簇头标志位为0,则将簇头标志位置1;\n[0081] 1.12.开启定时器T5:\n[0082] 1.12.1.T5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;\n[0083] 1.12.2.T5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器T5,转至1.12.3;\n[0084] 1.12.3.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器T5;\n[0085] 1.13.中继节点收到系统预启动数据包后,将系统启动数据包转发至汇聚节点,并保持侦听状态;\n[0086] 1.14.汇聚节点收到系统启动数据包后,保持侦听状态,开启定时器T6;\n[0087] 1.15.水位采集节点采集到水位信号:\n[0088] 1.15.1.水位采集节点采集到的水位信号h小于阈值H_THRESHOLD,则水位采集节点继续保持睡眠状态;\n[0089] 1.15.2.水位采集节点采集到的水位信号h大于阈值H_THRESHOLD,则水位采集节点的收发模块唤醒,将信号发送至本节点的簇头节点,簇头节点将接收到的最大值发送至汇聚节点,通过中继节点转发至基站;\n[0090] 1.16.基站将接收到的水位信号存储到本地终端以供显示,并将接收到的最大值和危险阈值H_DANGER比较,如果大于危险阈值,则通过和其相连的移动互联接口模块经移动通信网将当前水位和警示信息发送到移动监控终端。\n[0091] 系统中各节点上电初始化后,首先基站接收监控终端的系统启动命令,发送系统启动数据包给中继节点,中继节点发送给汇聚节点。\n[0092] 实施例2:\n[0093] 水位采集节点安装在隧道内壁,由电池供电。通过分簇算法确定其簇头,分簇完成后将其所在簇的簇头节点号储存在其数据包中,Timer2定时结束,如果当前节点的簇头号为0xFFFF,则广播组网消息包,已分配簇头的水位采集节点若收到此类消息包,则给该节点回复组网应答包,未分配节点收到应答包后,若簇头仍为0xFFFF,则将该节点的簇头号存储为自身簇头,将下一跳节点号存储为收到的应答包的节点号。Timer1定时时间到,标签采集当前水位信号,若采集到的水位信号大于阈值H_THRESHOLD,则将水位信号发送到其下一跳节点,经多跳路由发送到基站,若小于阈值H_THRESHOLD,则将簇头节点号置为0xFFFF,进行下一轮分簇。若在Timer3定时阶段收到簇头节点发送的find_and_search数据包,则返回一个find_and_search应答包给该节点。\n[0094] 水位采集节点数据包:主要包括节点号、水位信号和数据长度等,具体格式由表1所示:\n[0095] 表1 水位采集节点数据包格式\n[0096]\n序号 字段名称 字段长度 说明\n1 包类型 1 byte 0x01\n2 目的地址 2 byte 下一跳节点号\n3 数据长度 1 byte 长度由数据长度决定\n4 节点号 1 byte 水位采集节点的节点ID\n5 水位信号 2 byte 传感器信号\n6 CRC校验 2 byte 1、2、3、4、5字段数据校验\n[0097] 传感节点的绝大部分能量消耗在无线通信中,数据发送、数据接收和数据侦听过程有大量的能量消耗。本发明设置了基于采样阈值的无线通信模块休眠/唤醒模式(水位采集节点采集到的信号小于阈值则无线通信模块进入休眠状态,采集到的信号大于阈值则无线通信模块唤醒)极大可能的节省网络节点的能量损耗。\n[0098] 如图7所示,水位采集节点的工作流程如下:\n[0099] 2.1.水位采集节点上电初始化,簇头节点号为0xFFFF,上一条节点号为0xFFFF,下一跳节点号为0xFFFF,打开repeater定时器Timer1;\n[0100] 2.2.Timer1定时时间到,水位信号采集节点采集水位信号h,若水位信号h小于阈值H_THRESHOLD,开启定时器Timer2,转至2.3;否则若水位信号h大于阈值H_THRESHOLD,则转至2.5;\n[0101] 2.3.水位采集节点广播组网消息包和接收邻居节点的报文,进行分簇处理的第一阶段;\n[0102] 2.4.Timer2定时时间到,第一阶段的分簇完成,开启分簇定时器Timer3,进行分簇处理的第二阶段;\n[0103] 2.5.Timer3定时时间到,第二阶段的分簇完成,开启定时器Timer4:\n[0104] 2.5.1.定时器Timer4时间未到,且采集到的水位信号h小于阈值H_THRESHOLD,则收发模块关闭,进入睡眠状态,否则转至2.6;\n[0105] 2.5.2.定时器Timer4时间到,水位采集节点唤醒,簇头节点、上一跳节点号和下一跳节点号均回归初始状态,转到2.2;\n[0106] 2.6.若水位信号h>H_THRESHOLD,则水位采集节点将当前水位信号发送到其下一跳,直至发送至簇头节点,由簇头节点处理发送出去。\n[0107] 水位采集节点分簇算法如图9所示,主要分为两个阶段。首先节点广播组网消息包(组网消息包如表2所示),若接收到第二层的簇头节点发回给它的组网应答包(组网应答包如表3所示),则将第一个接收到的应答包节点号储存为其簇头,并向该簇头发送确认消息包(确认消息包如表4所示)。这一阶段结束后,若自身簇头仍为0xFFFF,则再次广播组网消息包,并将接收到的第一个组网应答包的节点号储存为下一跳节点,将该组网应答包所在的簇头储存为其自身的簇头。过程如下:\n[0108] 表2 组网消息包格式\n[0109]\n序号 字段名称 字段长度 说明\n1 包类型 1 byte 0x02\n2 目的地址 2 byte 0xFFFF表示广播地址\n3 节点号 1 byte 水位采集节点节点号\n4 CRC校验 2 byte 1、2、3字段数据校验\n[0110] 表3 组网应答包格式\n[0111]\n[0112] 表4 确认消息包格式\n[0113]\n序号 字段名称 字段长度 说明\n1 包类型 1 byte 0x04\n2 目的地址 2 byte 自身的簇头节点\n3 源地址 1 byte 水位采集节点节点号\n4 CRC校验 2 byte 1、2、3字段数据校验\n[0114] 6.1.水位采集节点上电初始化后,开启分簇定时器Timer2,并开始广播组网消息包;\n[0115] 6.2.簇头节点开启分簇定时器Timer2,并侦听无线信道,如果接收到某个组网消息包,则返回一个应答包给该节点;\n[0116] 6.3.水位采集节点接收到应答包后,若该水位采集节点是第一次接收此类数据包,将其簇头节点号和下一跳节点号变为应答包中的节点号,否则,不处理;\n[0117] 6.4.水位采集节点将确认该簇头节点的确认数据包发送给其存储的簇头节点;\n[0118] 6.5.簇头节点接收到确认数据包后,若其簇头标志位为0,则将其簇头标志位置1;\n[0119] 6.6定时器Timer2定时时间到,开启定时器Timer3,若水位采集节点的簇头节点并非有效值,则该节点再次广播组网信息;\n[0120] 6.7已确定簇头节点的水位采集节点接收到组网消息包后,给该节点发送应答包;\n[0121] 6.8节点将最先收到的数据包节点号储存为其下一跳节点,将其簇头节点号储存为自身的簇头节点号;\n[0122] 采用这种方式能提供了一种分阶段可靠的分簇算法。在隧道中预先设计了簇头节点的位置,且由有线电源供电,因此簇头的能量问题可以避免。同时,如果不是所有的水位采集节点都在簇头节点的有效通信范围内,它可以在簇内通过两跳连接到簇头,保证每个节点采集到的信息都可以传到一个簇头节点,保证了分簇的可靠性,以及采用最少的簇头节点实现监控功能。同时,水位采集节点的能量损耗也能得到保证(当水位信号采集到的水位信号小于阈值时,关闭收发模块,直到下一次分簇的开始,大大节省了能量的消耗)。\n[0123] 实施例3:\n[0124] 簇头节点上电初始化后,无线收发模块处于侦听状态,收到第一个组网消息包后,打开Timer4,等待水位采集节点发送的组网消息包,若收到,则返回组网应答包。Timer4定时时间到,则进行find_and_search过程,发送find_and_search数据包,查找其下一跳,并存储到数据包的下一跳节点号中。若接收到含有水位信息的数据包,则将其转发至下一跳。\n表5和表6分别为其find_and_search数据包和find_and_search应答包的包结构。\n[0125] 表5 find_and_search消息包格式\n[0126]\n序号 字段名称 字段长度 说明\n[0127]\n1 包类型 1 byte 0x05\n2 目的地址 2 byte 下一跳节点\n3 源地址 1 byte 簇头节点\n4 CRC校验 2 byte 1、2、3字段数据校验\n[0128] 表6 find_and_search应答包格式\n[0129]\n序号 字段名称 字段长度 说明\n1 包类型 1 byte 0x06\n2 目的地址 2 byte 上一跳节点\n3 源地址 1 byte 簇头节点\n4 CRC校验 2 byte 1、2、3字段数据校验\n[0130] 如图8所示,所述簇头节点的工作流程如下:\n[0131] 3.1.簇头节点上电初始化,其上一跳节点号和下一跳节点号均初始化为初始的给定节点号,无线模块处于侦听状态,接收到第一个组网消息包后,开启定时器Timer4,转至\n3.2;\n[0132] 3.2.Timer4定时时间未到,若接收到组网消息包,则返回一个组网消息应答包给该节点,若接收到节点的确认消息包,且簇头标志位为0,则将簇头标志位置1;\n[0133] 3.3.Timer4定时时间到,开启定时器Timer5:\n[0134] 3.3.1.Timer5时间未到,如果接收到别的节点发送的find_and_search数据包,返回find_and_search应答包给该节点;\n[0135] 3.3.2.Timer5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器Timer5,转至3.4;\n[0136] 3.4.定时时间未到,判断收到的应答包的节点号和簇头节点号,若节点号大于当前节点号或其簇头节点号大于当前节点,则作为其下一跳节点,关闭定时器T5;\n[0137] 3.5.若接收的水位信号数据包,开启定时期Timer7:\n[0138] 3.5.1.Timer7定时时间未到,比较接收到的本簇簇成员的数据和本地存储的最大值,将较大值储存到本地的数据包中,将采集信号最大的那个节点号储存在本地数据包中的original_node(见表7的数据结构);\n[0139] 3.5.2.Timer7定时时间到,将数据转发到其存储的下一跳节点,通过多跳路由传送到汇聚节点,最后经过中继节点发送到基站。\n[0140] 表7 簇头节点数据包格式\n[0141]\n[0142] 汇聚节点上电初始化后,无线模块处于侦听状态。汇聚节点对收到的数据包进行处理,并将采集到的最大水位值及节点号经由中继节点转发至基站以作存储和处理。\n[0143] 如图10所示,汇聚节点的工作流程进一步包括如下步骤:\n[0144] 4.1.汇聚节点上电初始化,收发模块处于侦听状态;\n[0145] 4.2.若汇聚节点接收到中继节点的预启动数据包,则开启定时计数器Timer6:\n[0146] 4.2.1.Timer6定时时间未到,若接收到数据包,查看转发队列和已发送缓存中是否存在该数据包,若都不存在,则储存到转发队列,否则不处理;\n[0147] 4.2.2.Timer6定时时间到,转至4.3;\n[0148] 4.3.将当前存储的数据包经中继节点转发至基站;\n[0149] 如图12所示,簇头节点接收到水位采集节点的信号后,簇头节点通过自组网算法确定自身的下一跳节点,最终将消息包发送至汇聚节点。以汇聚节点为根节点,簇头节点为子节点的自组网算法的主要过程如下:\n[0150] 7.1.簇头节点处于传感器网络的第二层,收到第一个水位采集节点发送的组网消息包后,开启定时器Timer4;\n[0151] 7.2.Timer4定时时间到,簇头节点将find_and_search数据包发送至其已经储存的有效的下一跳节点;\n[0152] 7.3.开启定时器Timer5:\n[0153] 7.3.1.Timer5时间未到,如果接收到其他簇头节点发送的find_and_search数据包,返回find_and_search应答包给该节点;\n[0154] 7.3.2.Timer5时间到,若未接收到下一跳节点发送的find_and_search数据应答包,则广播find_and_search数据包,开启定时器Timer5,转至7.3.3;\n[0155] 7.3.3.定时时间未到,判断收到的应答包的节点号,若节点号大于当前节点号或其簇头节点大于当前节点号,则作为其下一跳节点,关闭定时器Timer5;\n[0156] 7.4.当水位采集节点采集的水位信号超过阈值,转至7.5;\n[0157] 7.5.水位采集节点将水位信号传至当前储存的簇头节点;\n[0158] 7.6.簇头节点开启定时器Timer7:\n[0159] 7.6.1.Timer7定时时间未到,比较接收到的本簇簇成员的数据和本地存储的最大值,将较大值储存到本地的数据包中,将采集信号最大的那个节点号储存在本地数据包中的original_node;\n[0160] 7.6.2.Timer7定时时间到,将数据转发到其存储的下一跳节点;\n[0161] 7.7.簇头节点转发非本簇内的节点转发的数据;\n[0162] 7.8.汇聚节点接收到第一个预启动数据包后,开启定时器Timer6:\n[0163] 7.8.1.Timer6定时时间未到,继续接收数据包,查看转发队列和已发送缓存中是否存在该数据包,若都不存在,则储存到转发队列,否则不处理;\n[0164] 7.8.2.Timer6定时时间到,将缓冲区的数据包转发至中继节点。\n[0165] 基站将系统预启动数据包发送给中继节点和汇聚节点,然后就一直处于侦听状态。若接收到中继节点传来的数据包,则将其通过串口传送到监控终端和服务器,同时,比较接收到的数据包中的水位信号和危险阈值H_DANGER,若水位信号大于H_DANGER,则将当前水位信号和预警信息发布到移动终端,从而实现水位的监控目的和预警目的。\n[0166] 发送到监控终端的数据包格式如表8所示。\n[0167] 表8 发送至监控终端的数据包格式\n[0168]\n[0169]\n[0170] 如图11所示,基站的工作流程进一步包括如下步骤:\n[0171] 5.1.发送预启动数据包至中继节点;\n[0172] 5.2.接收中继节点传来的水位信息数据包,并将其通过串口发送至监控终端和服务器以作储存并供远程终端调用;\n[0173] 5.3.比较当前接收的水位信号和危险阈值H_DANGER,如果水位信号h大于阈值H_DANGER,则将当前水位和警示信息通过移动互联接口模块经移动通信网发送到移动监控终端。\n[0174] 本发明的信息感知方法,主要用于获取隧道内的水位信息,并将信息通过WSN网络内各节点无线自组网传输至监控终端,同时在到达预警阈值时,通过移动互联方式将当前水位信息和预警信息发布出去,从而实现近实时地监控水位状况和预警目的。\n[0175] 总之,本发明解决了实时监控水位和预警的基础性工作,有效克服了目前国内外对于城市低洼地区暴雨积涝监控技术存在的问题;解决了城市暴雨积涝预测和预警的核心问题,为结合GIS等技术有效监控城市积涝问题创造了良好的条件。\n[0176] 由上述实例可知,本发明可以了解低洼地区水位的动态变化,并能根据水位变化发布预警信息,保障了恶劣天气下人们的人身财产安全,具有极其重要的意义。
法律信息
- 2017-09-22
- 2015-01-07
实质审查的生效
IPC(主分类): H04W 76/04
专利申请号: 201410410242.8
申请日: 2014.08.19
- 2014-12-17
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |