CN105072658B - 一种网络数据采集控制系统及无线路由方法 - Google Patents
一种网络数据采集控制系统及无线路由方法 Download PDFInfo
- Publication number
- CN105072658B CN105072658B CN201510494085.8A CN201510494085A CN105072658B CN 105072658 B CN105072658 B CN 105072658B CN 201510494085 A CN201510494085 A CN 201510494085A CN 105072658 B CN105072658 B CN 105072658B
- Authority
- CN
- China
- Prior art keywords
- node
- sensing node
- message
- address
- routing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/24—Connectivity information management, e.g. connectivity discovery or connectivity update
- H04W40/32—Connectivity information management, e.g. connectivity discovery or connectivity update for defining a routing cluster membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及一种网络数据采集控制系统,包括主板CPU及分别与主板CPU连接的WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块、64路AD转换模块及LCD触摸屏。本发明还涉及上述系统的无线路由方法,包括:(1)网络节点分类;(2)初始跳数值设定;(3)申请正,反向路由表内存;(4)启动路由发现进程;(5)启动数据传输进程;(6)启动路由修复进程;(7)汇聚节点向某个传感节点单播GCMD控制报文;(8)汇聚节点向整个网络广播GCMD控制报文。本发明系统可进行大量数据实时处理,本发明方法可实现稳定的控制数据报文传输。
Description
技术领域
本发明属于数据采集和控制技术领域,特别是一种网络数据采集控制系统及无线路由方法。
背景技术
目前,常用的工业现场数据采集和控制设备大多采用中低端的单片机作为控制器,显示屏为小尺寸的LCD屏幕,且没有触摸功能。其缺点是:随着工业现场设备联网的需求越来越多,中低端单片机很难满足复杂的网络功能;中低端单片机很难有一个用户体验很好的人机界面;中低端单片机很难处理日益增多的现场设备数据。而采用嵌入式领域高档的处理器和大尺寸触摸LCD屏,能很好的解决这些问题。同时,工业现场的无线传感网络,通常采用zigbee,而zigbee在复杂的工业现场,往往数据传输和组网速率比较低,且不开源。很多厂家都设计自己的协议栈,来进行组网。
发明内容
本发明的目的是针对现有技术的不足,而提出一种网络数据采集控制系统及无线路由方法。
本发明解决其技术问题是采取以下技术方案实现的:
一种网络数据采集控制系统,该系统包括主板CPU及分别与主板CPU连接的WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块、64路AD转换模块及LCD触摸屏,通过CAN,RS485总线和工业现场进行数据交互,通过64路AD转换模块获取无线传感网汇聚节点的数据,通过3G,WIFI,以太网三种方式与企业服务器进行数据交互。
而且,所述主板CPU具体采用ARM Cortex-A9内核的Exynos4412作为系统网关的CPU,所述WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块及64路AD转换模块具体采用的具体型号依次为:SWB-A31、UNA-lite、DM9621、cc2530、Mcp2515、SN65HVD及AD7490。
而且,64路AD转换模块包括一个MCU及与MCU连接的4个16通道ADC芯片AD7490,MCU采用的具体型号为STM32F105RBT6,MCU通过4个SPI片选脚,2个SPI口,实现对4片ADC芯片的64路的采集时序控制,64路AD转换模块与主板CPU通过USB和UART接口进行数据传输。
一种基于上述网络数据采集控制系统的无线路由方法,包括步骤如下:
(1)将整个无线传感网络分为一个汇聚节点和其余的传感节点;
(2)上电开机后,汇聚节点将自己的跳数值设为0,传感节点将自己的跳数值设为最大值65535,最大值65535为无效跳数;
(3)汇聚节点申请反向路由表内存,传感节点申请正向路由表内存和反向路由表内存,路由表由一系列路由表项构成,正向路由表由目的地址是汇聚节点的路由表项构成,反向路由表由目的地址是传感节点的路由表项构成,路由表的数据结构如下:
目的地址 | 下一跳地址 | 跳数值 | 信号强度 |
… | … | … | … |
… | … | … | … |
目的地址 | 下一跳地址 | 跳数值 | 信号强度 |
每一行表示一个路由表项,其中,下一跳地址表示该节点发送数据到目的地址节点,选择将该数据发送至该下一跳地址节点,由下一跳地址节点进行路由转发,跳数值表示经过该下一跳地址节点路由转发总共需要的跳数,信号强度表示该节点到下一跳地址节点的无线信号强度;
(4)传感节点延时一个1秒以内的随机数,启动路由发现进程,路由发现进程如下:
①传感节点以1秒为周期发送RREQ路由请求报文,RREQ路由请求报文数据格式如下:
报文类型 | 目的地址 | 跳数值 | 报文序列号 |
报文类型为0x00,目的地址为汇聚节点的地址0x0000,跳数值为本传感节点到汇聚节点的跳数值,报文序列号为依次递增的整数;
②汇聚节点收到RREQ路由请求报文后,回应RREP路由回复报文;
③传感节点收到RREQ路由请求报文后,若本传感节点已经建立了到汇聚节点的路由,到汇聚节点的正向路由表非空,则回应RREP路由回复报文;若本传感节点没有建立到汇聚节点的正向路由,到汇聚节点的正向路由表为空,则不作任何处理;RREP路由回复报文的数据格式如下:
报文类型 | 目的地址 | 跳数值 | 报文序列号 |
报文类型为0x01,目的地址为RREQ报文的源传感节点的地址,跳数值为本传感节点到汇聚节点的跳数值,报文序列号为依次递增的整数;
④传感节点收到RREP路由回复报文后,若RREP路由回复报文的目的地址是本传感节点,则作如下处理:
(a)若RREP路由回复报文中的跳数值大于等于本传感节点的跳数值,则不做任何处理;
(b)若RREP路由回复报文中的跳数值加1等于本传感节点的跳数值,则将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,若到汇聚节点的正向路由表中没有这个路由表项,则加入该路由表项到正向路由表中;
(c)若RREP路由回复报文中的跳数值加1小于本传感节点的跳数值,则清空到汇聚节点的正向路由表,将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,加入该路由表项到正向路由表中,且将本传感节点的跳数值设置为等于RREP路由回复报文中的跳数值加1;
(5)传感节点结束路由发现进程,进入数据传输进程,数据传输进程过程如下:
①传感节点传输NDATA数据报文至汇聚节点时,先查询正向路由表中是否有路由表项,若不存在到汇聚节点的路由表项,则重新启动路由发现进程;若存在到汇聚节点的路由表项,则在到汇聚节点的正向路由表中选择一个信号强度最好的路由表项,将NDATA数据报文发往该路由表项的路由传感节点,NDATA数据报文的数据格式为:
报文类型为0x10,目的地址为汇聚节点地址0x0000,源地址为该传感节点的地址,下一跳地址为正向路由表中信号强度最好的路由表项中的下一跳路由传感节点的地址,
②传感节点在发送NDATA数据报文时,启动超时定时器,若在定时器溢出时,还未收到路由传感节点的NDATA_ACK数据ACK报文确认,则重传该NDATA数据报文,若重传3次,仍没有收到路由传感节点的NDATA_ACK数据ACK报文确认,则认为该路由已经损坏,删除该路由表项;
③若传感节点依次尝试完正向路由表中所有路由项均失败,则启动路由修复进程;
④传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则回应NDATA_ACK数据ACK报文,转发该NDATA数据报文至正向路由表中信号最强的路由表项中的路由传感节点,若收到重复的NDATA数据报文,不做转发,但仍然需要回应NDATA_ACK数据ACK报文,转发NDATA数据报文仍然需要步骤(5)中②的超时重发机制和步骤(5)中③的判断,NDATA_ACK数据ACK报文的数据格式为:
报文类型 | 目的地址 | 报文序列号 |
报文类型为0x11,目的地址为发送NDATA报文的传感节点的地址;
⑤在步骤(5)的④步中,传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则根据NDATA数据报文的内容,记录反向路由表项,将NDATA数据报文中的源地址作为反向路由表项的目的地址,将转发NDATA数据报文的传感节点的地址作为下一跳路由传感节点地址;
(6)若传感节点没有任何到汇聚节点的路由表项,则启动路由修复进程,具体方法如下:
①该传感节点间隔300毫秒,发送3次RQUIT退出路由报文;
②其他传感节点收到步骤(6)步①中传感节点的RQUIT退出路由报文后,则删除正向路由表和反向路由表中和该传感节点有关的路由表项,防止路由环路,RQUIT退出路由报文的数据格式为:
报文类型 | 目的地址 | 报文序列号 |
报文类型为0x02,目的地址为广播地址0xFFFF;
③该传感节点发送3次RQUIT退出路由请求报文后,重新启动路由发现过程;
(7)汇聚节点向某个传感节点单播GCMD控制报文,其步骤如下:
①汇聚节点查找反向路由表,若存在以该传感节点为目的地址的路由表项,则将该GCMD控制报文的下一跳地址设置为该路由表项的路由传感节点地址,发送该GCMD控制报文;
②传感节点收到该单播GCMD控制报文后,若该报文的下一跳地址为本传感节点的地址,则查找反向路由表,若找到该目的地址的路由表项,则向该路由表项的路由传感节点直接转发,即将单播GCMD控制报文的下一跳地址改为该路由表项的路由传感节点地址,单播GCMD控制报文的数据格式如下:
报文类型为0x20,目的地址为该单播GCMD控制报文的目的传感节点的地址,下一跳地
址为反向路由表中该目的地址的路由表项的路由传感节点地址;
(8)汇聚节点向整个网络广播GCMD控制报文,广播GCMD控制报文的数据格式如下:
报文类型为0x21,目的地址为广播地址0xFFFF,传感节点收到该报文后转发,若传感节点已经转发过该报文,则不再转发该报文。
而且,所述步骤(4)中④步传感节点在收到第一条RREP路由回复报文后,延时20秒结束路由发现进程,以确保整个网络建立完整的正向路由表。
而且,所述步骤(8)中为了确保广播GCMD控制报文能发送至整个网络,汇聚需要连续发送3次该广播GCMD控制报文,但每一次的报文序列号递增,以便传感节点能根据序列号依次转发这3次接收到的广播GCMD控制报文。
本发明的优点和积极效果是:
本发明专利解决工业现场数据采集和控制的网络化控制,大容量存储,大量数据实时处理,触摸屏控制。采用ARM Cortex-A9内核的Exynos4412作为系统网关的CPU,在网关主板上集成3G,WIFI,以太网卡,CAN控制器,RS485收发器,无线传感器汇聚节点CC2530,64路AD电流电压采集。通过CAN,RS485总线和工业现场进行数据交互;通过3G,WIFI,以太网三种方式与企业服务器进行数据交互。本地LCD可以显示所有现场数据和网络控制信息,可以通过触摸屏来设置系统的参数。网关可以通过SD卡和U盘存储现场数据。自行设计无线传感网络自组织动态多跳路由策略,并实现其协议。
2、本发明提出一种新的无线传感网络自组织多跳路由策略方法,该方法包括基于最小跳数值和最大无线信号强度的扩散法路由建立,路由失败侦测及恢复,稳定可靠的由传感节点到汇聚节点的采集数据报文传输,稳定可靠的由汇聚节点到传感节点的控制数据报文传输。
附图说明
图1是网关主板硬件结构示意框图;
图2是64路AD转换模块的硬件结构示意框图;
图3是无线传感网络的自组织动态多跳路由示意图。
具体实施方式
以下结合附图对本发明实施做进一步详述,以下实施例只是描述性的,不是限定性的,不能以此限定本发明的保护范围。
一种网络数据采集控制系统,如图1所示,系统网关主板包括CPU及分别与CPU连接的WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块、64路AD转换模块及LCD触摸屏,通过CAN,RS485总线和工业现场进行数据交互,通过USB或UART获取无线传感网汇聚节点的数据;通过3G,WIFI,以太网三种方式与企业服务器进行数据交互,本地LCD用以显示所有现场数据和网络控制信息,同时,通过触摸屏来设置系统的参数,网关可以通过SD卡和U盘存储现场数据,自行设计无线传感网络自组织动态多跳路由策略,并实现其协议。
在本发明的具体实施中,所述CPU具体采用ARM Cortex-A9内核的Exynos4412作为系统网关的CPU,所述WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块及64路AD转换模块具体采用的具体型号依次为:SWB-A31、UNA-lite、DM9621、cc2530、Mcp2515、SN65HVD及AD7490。
在本发明的具体实施中,如图2所示,64路AD转换模块包括一个MCU及与MCU连接的4个16通道的ADC芯片AD7490,MCU采用的具体型号为STM32F105RBT6,MCU通过4个SPI片选脚,2个SPI口,实现对4片ADC芯片的64路的采集时序控制,64路AD转换模块与主板CPU通过USB和UART接口进行数据传输。
一种基于上述网络数据采集控制系统的无线路由方法,如图3所示,该方法包括步骤如下:
(1)将整个无线传感网络分为汇聚节点和传感节点,如附图3中,节点A为汇聚节点,其余节点为传感节点;
(2)上电开机后,汇聚节点将自己的跳数值设为0,传感节点将自己的跳数值设为最大值65535,跳数值表示的是该节点发送到汇聚节点的数据需要经过多少次传输,即为多少跳,跳数值为65535表明无效跳数,汇聚节点到汇聚节点本身的跳数值为0;
(3)汇聚节点申请反向路由表内存,传感节点申请正向路由表内存和反向路由表内存,路由表由一系列路由表项构成,正向路由表由目的地址是汇聚节点的路由表项构成,反向路由表由目的地址是传感节点的路由表项构成,路由表的数据结构如下面表1所示,
表1:
目的地址 | 下一跳地址 | 跳数值 | 信号强度 |
… | … | … | … |
… | … | … | … |
目的地址 | 下一跳地址 | 跳数值 | 信号强度 |
每一行表示一个路由表项,其中,下一跳地址表示该节点发送数据到目的地址节点,可以选择将该数据发送至该下一跳地址节点,由下一跳地址节点进行路由转发,跳数值表示经过该下一跳地址节点路由转发,总共需要多少跳数,信号强度表示该节点到下一跳地址节点的无线信号强度;
(4)传感节点延时一个1秒以内的随机数,启动路由发现进程,延时一个1秒以内的随机数,目的是避免无线数据发送碰撞,有利于更快的建立整个无线传感网络的路由,路由发现进程过程如下:
①传感节点以1秒为周期发送RREQ路由请求报文,RREQ路由请求报文数据格式如下:
报文类型 | 目的地址 | 跳数值 | 报文序列号 |
报文类型为0x00,目的地址为汇聚节点的地址0x0000,跳数值为本传感节点到汇聚节点的跳数值,报文序列号依次递增;
②汇聚节点收到RREQ路由请求报文后,回应RREP路由回复报文;
③传感节点收到RREQ路由请求报文后,若本传感节点已经建立了到汇聚节点的路由,也就是到汇聚节点的跳数值不等于65535,到汇聚节点的正向路由表非空,则回应RREP路由回复报文;若本传感节点没有建立到汇聚节点的正向路由,也就是到汇聚节点的跳数值等于65535,到汇聚节点的正向路由表为空,则不作任何处理;RREP路由回复报文的数据格式如下:
报文类型 | 目的地址 | 跳数值 | 报文序列号 |
报文类型为0x01,目的地址为RREQ报文的源传感节点的地址,跳数值为本传感节点到汇聚节点的跳数值,报文序列号依次递增,对于步骤(4)中②步的汇聚节点的跳数值为0;
④传感节点收到RREP路由回复报文后,若RREP路由回复报文的目的地址是本传感节点,则作如下处理:
(a)若RREP路由回复报文中的跳数值大于等于本传感节点的跳数值,则不做任何处理;
(b)若RREP路由回复报文中的跳数值加1等于本传感节点的跳数值,则将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,若到汇聚节点的正向路由表中没有这个路由表项,则加入该路由表项到正向路由表中;
(c)若RREP路由回复报文中的跳数值加1小于本传感节点的跳数值,则清空到汇聚节点的正向路由表,将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,加入该路由表项到正向路由表中,且将本传感节点的跳数值设置为等于RREP路由回复报文中的跳数值加1;
⑤传感节点在收到第一条RREP路由回复报文后,延时20秒,以确保整个网络正向建立完整的正向路由表;以附图3中的传感节点L为例,最终的正向路由表如下:
A | H | 3 | RSSI |
A | K | 3 | RSSI |
表明L节点到汇聚节点A的正向路由表有2个路由表项,路由节点分别是传感节点H和传感节点K,跳数值为3。
(5)传感节点在延时20秒后,结束路由发现进程,进入数据传输进程,数据传输进程过程如下:
①传感节点传输NDATA数据报文至汇聚节点时,先查询正向路由表中是否有路由表项,若不存在到汇聚节点的路由表项,则重新启动路由发现进程;若存在到汇聚节点的路由表项,则在到汇聚节点的正向路由表中选择一个信号强度最好的路由表项,将NDATA数据报文发往该路由表项的路由传感节点,
NDATA数据报文的数据格式为:
报文类型为0x10,目的地址为汇聚节点地址0x0000,源地址为该传感节点的地址,下一跳地址为正向路由表中信号强度最好的路由表项中的下一跳路由传感节点的地址,
②传感节点在发送NDATA数据报文时,启动超时定时器,若在定时器溢出时,还未收到路由传感节点的NDATA_ACK数据ACK报文确认,则重传该NDATA数据报文,若重传3次,仍没有收到路由传感节点的NDATA_ACK数据ACK报文确认,则认为该路由已经损坏,删除该路由表项;
③若传感节点依次尝试完正向路由表中所有路由项均失败,则启动路由修复进程;
④传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则回应NDATA_ACK数据ACK报文,转发该NDATA数据报文至正向路由表中信号最强的路由表项中的路由传感节点,若收到重复的NDATA数据报文,不做转发,但仍然需要回应NDATA_ACK数据ACK报文,转发NDATA数据报文仍然需要步骤(5)中②的超时重发机制和步骤(5)中③的判断,NDATA_ACK数据ACK报文的数据格式为:
报文类型 | 目的地址 | 报文序列号 |
报文类型为0x11,目的地址为发送NDATA报文的传感节点的地址;
⑤在步骤(5)的④步中,传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则根据NDATA数据报文的内容,记录反向路由表项,具体方法为:将NDATA数据报文中的源地址作为反向路由表项的目的地址,将转发NDATA数据报文的传感节点的地址作为下一跳路由传感节点地址,以H节点为例,最终会有7个反向路由表项:
G | G | 1 | RSSI |
I | I | 1 | RSSI |
L | L | 1 | RSSI |
M | I | 2 | RSSI |
M | L | 2 | RSSI |
N | L | 2 | RSSI |
F | G | 2 | RSSI |
(6)若传感节点没有任何到汇聚节点的路由表项,则启动路由修复进程,具体方法如下:
①该传感节点间隔300毫秒,发送3次RQUIT退出路由报文;
②其他传感节点收到步骤(6)步①中传感节点的RQUIT退出路由报文后,则删除正向路由表和反向路由表中和该传感节点有关的路由表项,防止路由环路,RQUIT退出路由报文的数据格式为:
报文类型 | 目的地址 | 报文序列号 |
报文类型为0x02,目的地址为广播地址0xFFFF;
③该传感节点发送RREQ路由请求报文后,重新启动路由发现过程;
(7)汇聚节点向某个传感节点单播GCMD控制报文,其步骤如下:
①汇聚节点查找反向路由表,若存在以该传感节点为目的地址的路由表项,则将该GCMD控制报文的下一跳地址设置为该路由表项的路由传感节点地址,发送该GCMD控制报文;
②传感节点收到该单播GCMD控制报文后,若该报文的下一跳地址为本传感节点的地址,则查找反向路由表,若找到该目的地址的路由表项,则向该路由表项的路由传感节点直接转发,即将单播GCMD控制报文的下一跳地址改为该路由表项的路由传感节点地址,单播GCMD控制报文的数据格式如下:
报文类型为0x20,目的地址为该单播GCMD控制报文的目的传感节点的地址,下一跳地址为反向路由表中该目的地址的路由表项的路由传感节点地址;
(8)汇聚节点向整个网络广播GCMD控制报文,广播GCMD控制报文的数据格式如下:
报文类型为0x21,目的地址为广播地址0xFFFF,传感节点收到该报文后转发,若传感节点已经转发过该报文,则不再转发该报文,为了确保广播GCMD控制报文能发送至整个网络,汇聚需要连续发送3次该广播GCMD控制报文,但每一次的报文序列号递增,以便传感节点能根据序列号依次转发这3次接收到的广播GCMD控制报文。
Claims (3)
1.一种基于网络数据采集控制系统的无线路由方法,该系统包括主板CPU及分别与主板CPU连接的WIFI模块、联通3G模块、以太网卡、WSN汇聚节点模块、CAN控制器模块、RS485收发器模块、64路AD转换模块及LCD触摸屏,通过CAN,RS485总线和工业现场进行数据交互,通过64路AD转换模块获取无线传感网汇聚节点的数据,通过3G、WIFI以及以太网三种方式与企业服务器进行数据交互,其特征在于:包括步骤如下:
(1)将整个无线传感网络分为一个汇聚节点和其余的传感节点;
(2)上电开机后,汇聚节点将自己的跳数值设为0,传感节点将自己的跳数值设为最大值65535,最大值65535为无效跳数;
(3)汇聚节点申请反向路由表内存,传感节点申请正向路由表内存和反向路由表内存,路由表由一系列路由表项构成,正向路由表由目的地址是汇聚节点的路由表项构成,反向路由表由目的地址是传感节点的路由表项构成,路由表的数据结构如下:
每一行表示一个路由表项,其中,下一跳地址表示该节点发送数据到目的地址节点,选择将该数据发送至该下一跳地址节点,由下一跳地址节点进行路由转发,跳数值表示经过该下一跳地址节点路由转发总共需要的跳数,信号强度表示该节点到下一跳地址节点的无线信号强度;
(4)传感节点延时一个1秒以内的随机数,启动路由发现进程,路由发现进程如下:
①传感节点以1秒为周期发送RREQ路由请求报文,RREQ路由请求报文数据格式如下:
报文类型为0x00,目的地址为汇聚节点的地址0x0000,跳数值为本传感节点到汇聚节点的跳数值,报文序列号为依次递增的整数;
②汇聚节点收到RREQ路由请求报文后,回应RREP路由回复报文;
③传感节点收到RREQ路由请求报文后,若本传感节点已经建立了到汇聚节点的路由,到汇聚节点的正向路由表非空,则回应RREP路由回复报文;若本传感节点没有建立到汇聚节点的正向路由,到汇聚节点的正向路由表为空,则不作任何处理;RREP路由回复报文的数据格式如下:
报文类型为0x01,目的地址为RREQ报文的源传感节点的地址,跳数值为本传感节点到汇聚节点的跳数值,报文序列号为依次递增的整数;
④传感节点收到RREP路由回复报文后,若RREP路由回复报文的目的地址是本传感节点,则作如下处理:
(a)若RREP路由回复报文中的跳数值大于等于本传感节点的跳数值,则不做任何处理;
(b)若RREP路由回复报文中的跳数值加1等于本传感节点的跳数值,则将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,若到汇聚节点的正向路由表中没有这个路由表项,则加入该路由表项到正向路由表中;
(c)若RREP路由回复报文中的跳数值加1小于本传感节点的跳数值,则清空到汇聚节点的正向路由表,将RREP路由回复报文的源节点地址作为本传感节点到汇聚节点的路由节点,加入该路由表项到正向路由表中,且将本传感节点的跳数值设置为等于RREP路由回复报文中的跳数值加1;
(5)传感节点结束路由发现进程,进入数据传输进程,数据传输进程过程如下:
①传感节点传输NDATA数据报文至汇聚节点时,先查询正向路由表中是否有路由表项,若不存在到汇聚节点的路由表项,则重新启动路由发现进程;若存在到汇聚节点的路由表项,则在到汇聚节点的正向路由表中选择一个信号强度最好的路由表项,将NDATA数据报文发往该路由表项的路由传感节点,NDATA数据报文的数据格式为:
报文类型为0x10,目的地址为汇聚节点地址0x0000,源地址为该传感节点的地址,下一跳地址为正向路由表中信号强度最好的路由表项中的下一跳路由传感节点的地址,
②传感节点在发送NDATA数据报文时,启动超时定时器,若在定时器溢出时,还未收到路由传感节点的NDATA_ACK数据ACK报文确认,则重传该NDATA数据报文,若重传3次,仍没有收到路由传感节点的NDATA_ACK数据ACK报文确认,则认为该路由已经损坏,删除该路由表项;
③若传感节点依次尝试完正向路由表中所有路由项均失败,则启动路由修复进程;
④传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则回应NDATA_ACK数据ACK报文,转发该NDATA数据报文至正向路由表中信号最强的路由表项中的路由传感节点,若收到重复的NDATA数据报文,不做转发,但仍然需要回应NDATA_ACK数据ACK报文,转发NDATA数据报文仍然需要步骤(5)中②的超时重发机制和步骤(5)中③的判断,NDATA_ACK数据ACK报文的数据格式为:
报文类型为0x11,目的地址为发送NDATA报文的传感节点的地址;
⑤在步骤(5)的④步中,传感节点收到NDATA数据报文后,若该NDATA数据报文的下一跳地址为本传感节点地址,则根据NDATA数据报文的内容,记录反向路由表项,将NDATA数据报文中的源地址作为反向路由表项的目的地址,将转发NDATA数据报文的传感节点的地址作为下一跳路由传感节点地址;
(6)若传感节点没有任何到汇聚节点的路由表项,则启动路由修复进程,具体方法如下:
①该传感节点间隔300毫秒,发送3次RQUIT退出路由报文;
②其他传感节点收到步骤(6)步①中传感节点的RQUIT退出路由报文后,则删除正向路由表和反向路由表中和该传感节点有关的路由表项,防止路由环路,RQUIT退出路由报文的数据格式为:
报文类型为0x02,目的地址为广播地址0xFFFF;
③该传感节点发送3次RQUIT退出路由请求报文后,重新启动路由发现过程;
(7)汇聚节点向某个传感节点单播GCMD控制报文,其步骤如下:
①汇聚节点查找反向路由表,若存在以该传感节点为目的地址的路由表项,则将该GCMD控制报文的下一跳地址设置为该路由表项的路由传感节点地址,发送该GCMD控制报文;
②传感节点收到该单播GCMD控制报文后,若该报文的下一跳地址为本传感节点的地址,则查找反向路由表,若找到该目的地址的路由表项,则向该路由表项的路由传感节点直接转发,即将单播GCMD控制报文的下一跳地址改为该路由表项的路由传感节点地址,单播GCMD控制报文的数据格式如下:
报文类型为0x20,目的地址为该单播GCMD控制报文的目的传感节点的地址,下一跳地址为反向路由表中该目的地址的路由表项的路由传感节点地址;
(8)汇聚节点向整个网络广播GCMD控制报文,广播GCMD控制报文的数据格式如下:
报文类型为0x21,目的地址为广播地址0xFFFF,传感节点收到该报文后转发,若传感节点已经转发过该报文,则不再转发该报文。
2.根据权利要求1所述的基于网络数据采集控制系统的无线路由方法,其特征在于:所述步骤(4)中④步传感节点在收到第一条RREP路由回复报文后,延时20秒结束路由发现进程,以确保整个网络建立完整的正向路由表。
3.根据权利要求1所述的基于网络数据采集控制系统的无线路由方法,其特征在于:所述步骤(8)中为了确保广播GCMD控制报文能发送至整个网络,汇聚需要连续发送3次该广播GCMD控制报文,但每一次的报文序列号递增,以便传感节点能根据序列号依次转发这3次接收到的广播GCMD控制报文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510494085.8A CN105072658B (zh) | 2015-08-11 | 2015-08-11 | 一种网络数据采集控制系统及无线路由方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510494085.8A CN105072658B (zh) | 2015-08-11 | 2015-08-11 | 一种网络数据采集控制系统及无线路由方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105072658A CN105072658A (zh) | 2015-11-18 |
CN105072658B true CN105072658B (zh) | 2018-06-08 |
Family
ID=54501904
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510494085.8A Expired - Fee Related CN105072658B (zh) | 2015-08-11 | 2015-08-11 | 一种网络数据采集控制系统及无线路由方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105072658B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105913633A (zh) * | 2016-04-18 | 2016-08-31 | 成都福立盟科技有限公司 | 基于170MHz频段的无线数据传输系统及其传输方法 |
CN105848240B (zh) * | 2016-05-16 | 2019-05-21 | 努比亚技术有限公司 | 一种路由装置和方法 |
CN106230642B (zh) * | 2016-08-31 | 2022-02-25 | 天津灵创智恒软件技术有限公司 | 一种网络探测方法 |
CN108881014B (zh) * | 2017-05-12 | 2021-10-01 | 北京猎户星空科技有限公司 | 一种数据发送系统及方法 |
CN107613583B (zh) * | 2017-10-25 | 2021-08-06 | 上海海洋大学 | 一种分布式无线传感器网络数据汇总网关 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101986612A (zh) * | 2010-12-30 | 2011-03-16 | 上海顶竹通讯技术有限公司 | 一种家居自动化网络系统以及管理系统 |
CN102404817A (zh) * | 2011-10-25 | 2012-04-04 | 中国科学院计算技术研究所 | 多汇聚节点无线传感器网络组网方法及其系统 |
CN102857988A (zh) * | 2012-03-21 | 2013-01-02 | 北京交通大学 | 认知无线Ad Hoc网络中的按需路由实现方法 |
CN203057535U (zh) * | 2012-12-11 | 2013-07-10 | 合肥晖润能源科技有限公司 | 物联网数据采集终端 |
-
2015
- 2015-08-11 CN CN201510494085.8A patent/CN105072658B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101986612A (zh) * | 2010-12-30 | 2011-03-16 | 上海顶竹通讯技术有限公司 | 一种家居自动化网络系统以及管理系统 |
CN102404817A (zh) * | 2011-10-25 | 2012-04-04 | 中国科学院计算技术研究所 | 多汇聚节点无线传感器网络组网方法及其系统 |
CN102857988A (zh) * | 2012-03-21 | 2013-01-02 | 北京交通大学 | 认知无线Ad Hoc网络中的按需路由实现方法 |
CN203057535U (zh) * | 2012-12-11 | 2013-07-10 | 合肥晖润能源科技有限公司 | 物联网数据采集终端 |
Also Published As
Publication number | Publication date |
---|---|
CN105072658A (zh) | 2015-11-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105072658B (zh) | 一种网络数据采集控制系统及无线路由方法 | |
CN101188535B (zh) | 基于二叉树的无线传感器网络分簇能量均衡路由确定方法 | |
Yu et al. | GROUP: A Grid-Clustering Routing Protocol for Wireless Sensor Networks. | |
CN102625427B (zh) | 一种基于异步唤醒调度的无线传感器网络数据采集方法 | |
CN103533595A (zh) | 无线传感网络的多跳分簇路由算法 | |
US9036560B2 (en) | Hybrid routing and forwarding solution for a wireless sensor network | |
CN104320829B (zh) | 多跳自组织可休眠路由算法 | |
CN103906207A (zh) | 基于自适应按需唤醒技术的无线传感器网络数据传输方法 | |
CN110113264A (zh) | 一种命名数据网络的缓存和路由实现方法 | |
Dash et al. | Reliable energy aware multi-token based mac protocol for wsn | |
CN103209435A (zh) | 基于拥塞控制的无线多跳网多播方法 | |
Gao et al. | COPE: Improving energy efficiency with coded preambles in low-power sensor networks | |
CN101610561A (zh) | 一种支持有效域区分的无线传感器网络多径路由机制 | |
Wang et al. | Opportunistic cooperation in low duty cycle wireless sensor networks | |
US20150029916A1 (en) | Power Saving for Multi-Hop Communications | |
Kuntz et al. | From versatility to auto-adaptation of the medium access control in wireless sensor networks | |
Bhople et al. | Energy routing protocol with power utilization optimization in MANET | |
Atto et al. | Routing Protocols for Structural Health Monitoring of Bridges Using Wireless Sensor Networks. | |
Pan | An improved the DSR routing protocol in mobile ad hoc networks | |
Kuo et al. | A lightweight routing protocol for mobile target detection in wireless sensor networks | |
Bhavsar et al. | ZigBee based network architecture for animal health monitoring | |
Ahirwar et al. | Enhanced aodv routing protocol for wireless sensor network based on zigbee | |
CN103002536A (zh) | 一种基于随机行走的能量高效型无线多跳网络路由机制 | |
Haritha et al. | Cluster based neighbor coverage relaying (CBNCR)-A novel broadcasting mechanism for dissemination of data in VANETs | |
CN103067871A (zh) | 基于计数的无线传感网高效广播方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20180608 Termination date: 20210811 |