CN113422809B - 一种物联网的数据传递系统、方法、装置和设备 - Google Patents

一种物联网的数据传递系统、方法、装置和设备 Download PDF

Info

Publication number
CN113422809B
CN113422809B CN202110584037.3A CN202110584037A CN113422809B CN 113422809 B CN113422809 B CN 113422809B CN 202110584037 A CN202110584037 A CN 202110584037A CN 113422809 B CN113422809 B CN 113422809B
Authority
CN
China
Prior art keywords
node
vector
root node
data packet
disaster
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.)
Active
Application number
CN202110584037.3A
Other languages
English (en)
Other versions
CN113422809A (zh
Inventor
蔡荣贵
蔡佩璇
李宏硕
邹文文
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Putian University
Original Assignee
Putian University
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Putian University filed Critical Putian University
Priority to CN202110584037.3A priority Critical patent/CN113422809B/zh
Publication of CN113422809A publication Critical patent/CN113422809A/zh
Application granted granted Critical
Publication of CN113422809B publication Critical patent/CN113422809B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B25/00Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems
    • G08B25/01Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium
    • G08B25/08Alarm systems in which the location of the alarm condition is signalled to a central station, e.g. fire or police telegraphic systems characterised by the transmission medium using communication transmission lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/52Network services specially adapted for the location of the user terminal

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Emergency Management (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Alarm Systems (AREA)

Abstract

本发明实施例提供一种物联网的数据传递系统、方法、装置和设备,涉及物联网技术领域。其中,这种数据传递方法包括S1、接收紧急数据包。紧急数据包记录有外部环境的灾情位置。S5、获取当前节点到目标根节点的第一向量。S6、根据紧急数据包,获取当前节点到灾情位置的第二向量的逆向量。S7、计算得到第一向量和逆向量的和向量。S8、获取当前节点到其各个邻居节点的第三向量在和向量上的投影值。S9、发送紧急数据包至投影值最大的邻居节点。本发明通过在选择接收节点时考虑到了灾情位置,从而避免了通过距离灾情位置近的节点进行传输数据,有效避免了在数据传播过程中,因节点损坏导致的传输速度慢的情况。

Description

一种物联网的数据传递系统、方法、装置和设备
技术领域
本发明涉及物联网技术领域,具体而言,涉及一种物联网的数据传递系统、方法、装置和设备。
背景技术
在先技术中,多个传感器和路由器之间能够形成一个传感器网络,以让各个传感器检测到的数据,在这个传感器网络中进行传输。传感器检测到的数据,最终由根节点(可以理解为路由器)发送到传感器网络以外的外网。
特别地,存在用于检测火灾和警报的各种传感器。但是火灾往往会损坏部分传感器,使得传感器网络受到损坏。而降低了数据传输的效率,延误警报发出的时机,引起人员伤亡。
因此,如何提高传感器网络在遇到火灾等紧急情况时的数据传递效率,成了继续解决的难题。
发明内容
本发明提供了一种物联网的数据传递系统、方法、装置和设备,以改善相关技术中的紧急情况下物联网中数据传递效率低下的问题。
第一方面、
本发明实施例提供了一种物联网的数据传递系统,其包含多个节点,各个节点分别和预定范围内的邻居节点通讯连接,以形成有向无环网络结构;
其中,所述多个节点包括根节点和子节点;所述根节点能够和外部网络通讯连接;所述子节点能够接收并转发其它节点发送的数据包以使所述数据包向所述根节点传输,以及检测环境信息并在外部环境满足预定条件时生成紧急数据包并发送至邻居节点;
所述子节点包括存储器和处理器,所述处理器被配置为执行所述存储器的计算机程序,以实现如下步骤:
接收所述紧急数据包;所述紧急数据包记录有所述外部环境的灾情位置;
获取当前节点到目标根节点的第一向量;
根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
计算得到所述第一向量和所述逆向量的和向量;
获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
发送所述紧急数据包至所述投影值最大的邻居节点。
可选地,所述获取当前节点到目标根节点的第一向量,具体为:
判断所述紧急数据包是否已经被接收过;
若是,则直接获取所述当前节点到所述目标根节点的第一向量;其中,所述目标根节点为上一次转发紧急数据包时使用的所述目标根节点;
若否,根据所述灾情位置选择新的目标根节点后,获取当前节点到所述新的目标根节点的第一向量。
可选地,所述根节点至少有两个;所述子节点的邻居表记录有所有根节点的位置和到根节点的跳数;所述跳数为当前子节点的数据传输到根节点所需要的最少的传输次数;
根据所述灾情位置选择新的目标根节点,具体为:
根据所述灾情位置,基于所述跳数,由小到大,依次判断所述灾情位置是否位于根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为所述新的目标根节点。
可选地,当接收所述紧急数据包之前,已经接收过旧紧急数据包时;在接收所述紧急数据包之后,还包括如下步骤:
判断所述灾情位置和所述旧紧急数据包中的旧灾情位置的距离关系;
当判断到所述灾情位置比所述旧灾情位置近时,更新当前节点所记录的灾情位置;
当判断到所述灾情位置和所述旧灾情位置相同时,忽略所述灾情位置。
可选地,在所述有向无环网络结构中:
根节点,用于生成并发送请求包至预定范围内的邻居节点;其中,所述请求包包含根节点ID、根节点位置、当前节点的跳数、发送者ID和发送者位置;根节点的跳数为0;
子节点,用于接收请求包,并记录根节点的信息,及根据请求包中的跳数更新自身的跳数后生成新的请求包,并发送至邻居节点;其中,当接收到的请求包中的跳数信息小于自身记录的跳数信息时,将当前节点的跳数更新为请求包中的跳数加1;
根节点和子节点,还用于接收邻居节点的发送的请求包,并记录邻居节点的信息,以形成有向无环网络结构。
第二方面、
本发明实施例提供物联网的数据传递方法,其包括如下步骤:
S1、接收紧急数据包;所述紧急数据包记录有所述外部环境的灾情位置;
S5、获取当前节点到目标根节点的第一向量;
S6、根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
S7、计算得到所述第一向量和所述逆向量的和向量;
S8、获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
S9、发送所述紧急数据包至所述投影值最大的邻居节点。
可选地,获取当前节点到目标根节点的第一向量,具体为:
S51、判断所述紧急数据包是否已经被接收过;
S52、若是,则直接获取所述当前节点到所述目标根节点的第一向量;其中,所述目标根节点为上一次转发紧急数据包时使用的所述目标根节点;
S53、否则,根据所述灾情位置选择新的目标根节点后,获取当前节点到所述新的目标根节点的第一向量。
可选地,所述根节点至少有两个;所述子节点的邻居表记录有所有根节点的位置和到根节点的跳数;所述跳数为当前子节点的数据传输到根节点所需要的最少的传输次数;
根据所述灾情位置选择新的目标根节点,具体为:
根据所述灾情位置,基于跳数,由小到大,依次判断所述灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为所述新的目标根节点。
可选地,当接收所述紧急数据包之前,已经接收过旧紧急数据包时;在接收所述紧急数据包之后,还包括如下步骤:
S2、判断所述灾情位置和所述旧紧急数据包中的旧灾情位置的距离关系;
S3、当判断到所述灾情位置比所述旧灾情位置近时,更新当前节点所记录的灾情位置;
S4、当判断到所述灾情位置和所述旧灾情位置相同时,忽略所述灾情位置。
第三方面、
本发明实施例提供一种物联网的数据传递装置,其包含:
接收模块,用于接收紧急数据包;所述紧急数据包记录有所述外部环境的灾情位置;
第一向量获取模块,用于获取当前节点到目标根节点的第一向量;
逆向量获取模块,用于根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
和向量获取模块,用于计算得到所述第一向量和所述逆向量的和向量;
投影值获取模块,用于获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
发送模块,用于发送所述紧急数据包至所述投影值最大的邻居节点。
可选地,第一向量获取模块,具体用于:
判断所述紧急数据包是否已经被接收过;
若是,则直接获取所述当前节点到所述目标根节点的第一向量;其中,所述目标根节点为上一次转发紧急数据包时使用的所述目标根节点;
否则,根据所述灾情位置选择新的目标根节点后,获取当前节点到所述新的目标根节点的第一向量。
可选地,所述根节点至少有两个;所述子节点的邻居表记录有所有根节点的位置和到根节点的跳数;所述跳数为当前子节点的数据传输到根节点所需要的最少的传输次数;
可选地,根据所述灾情位置选择新的目标根节点,具体为:
根据所述灾情位置,基于跳数,由小到大,依次判断所述灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为所述新的目标根节点。
可选地,当接收所述紧急数据包之前,已经接收过旧紧急数据包时;在接收模块之后,还包括以下模块:
距离模块,用于判断所述灾情位置和所述旧紧急数据包中的旧灾情位置的距离关系;
第一判断模块,用于当判断到所述灾情位置比所述旧灾情位置近时,更新当前节点所记录的灾情位置;
第二判断模块,用于当判断到所述灾情位置和所述旧灾情位置相同时,忽略所述灾情位置。
第四方面、
本发明实施例提供一种物联网的数据传递设备,其包括处理器、存储器,以及存储在所述存储器内的计算机程序;所述计算机程序能够被所述处理器执行,以实现如第二方面所述的物联网的数据传递方法。
通过采用上述技术方案,本发明可以取得以下技术效果:
通过在选择接收节点时考虑到了灾情位置,从而避免了通过距离灾情位置近的节点进行传输数据,有效避免了在数据传播过程中,因节点损坏导致的传输失败或速度慢的情况。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是根节点广播请求数据包给邻居节点的示意图。
图2是子节点广播请求数据包给邻居节点的示意图。
图3是子节点发送数据给根节点的示意图。
图4是新增子节点的示意图。
图5是初始化模式下,子节点的工作流程图。
图6是正常模式下,子节点的工作流程图。
图7是本发明第二实施例提供的一种物联网的数据传输方法的流程图。
图8是紧急模式下,子节点的工作流程图。
图9是子节点计算正交投影的示意图。
图10是数据传输系统的结构示意图。
图11是本发明第二实施例提供的一种物联网的数据传输装置的结构示意图。
图中标记:1-接收模块、2-第一向量获取模块、3-逆向量获取模块、4-和向量获取模块、5-投影值获取模块、6-发送模块。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了更好的理解本发明的技术方案,下面结合附图对本发明实施例进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
在本发明实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本发明实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
应当理解,本文中使用的术语“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
下面结合附图与具体实施方式对本发明作进一步详细描述:
实施例一:
本发明第一实施例提供一种物联网的数据传递系统,其包含多个节点,各个节点分别和预定范围内的邻居节点通讯连接,以形成有向无环网络结构。其中,多个节点包括根节点和子节点。
通常,根节点是计算能力较强且电力容量大的节点,它通过云端与外部网络连接,因此根节点可以向子节点收集数据或发送命令。子节点通常是具有较低计算能力和电力有限的传感器节点。他们的主要任务是收集环境中的信息,并通过多跳通信将数据传输返回根节点。
可以理解的是,根节点能够和外部网络通讯连接。子节点能够接收并转发其它节点发送的数据包以使数据包向根节点传输,以及检测环境信息并在外部环境满足预定条件时生成紧急数据包并发送至邻居节点。本实施例的数据传递系统能够应用于火灾的场景中,在发生火灾时,及时的向外发出报警信号。
在上述实施例的基础上,本发明一可选实施例中,在有向无环网络结构中:
根节点,用于生成并发送请求包至预定范围内的邻居节点。其中,请求包包含根节点ID、根节点位置、当前节点的跳数、发送者ID和发送者位置。根节点的跳数为0。
子节点,用于接收请求包,并记录根节点的信息,及根据请求包中的跳数更新自身的跳数后生成新的请求包,并发送至邻居节点。其中,当接收到的请求包中的跳数信息小于自身记录的跳数信息时,将当前节点的跳数更新为请求包中的跳数加1。
根节点和子节点,还用于接收邻居节点的发送的请求包,并记录邻居节点的信息,以形成有向无环网络结构。
在有向无环图网络结构中,每个节点均记录有与自身相连接的各个节点的信息和各个根节点的信息。具体地,表1列出了各个节点的所有属性值。
表1.邻居表的内容说明
其中,各个属性值需要在初始化模式下,建立有向无环网络结构时确定。每个节点的邻居表中包含ID、节点脚色、绝对位置、状态、跳数、等级值、根信息和邻居信息。每一个传感器都有唯一的ID。节点角色分为根节点和子节点。这些节点在部署过程通过定位算法已经知道它们的绝对位置。而跳数则记录从节点到根节点所需的最小跳数。其中,具有最低等级值的节点则负责传输工作。根节点信息则记录根节点的ID,位置和跳数。
在建立有向无环网络时,先让各个节点进入初始化模型,然后根节点将发送出请求数据包,建构网络,每一个节点将通过请求数据包构造一个邻居表。邻居表记录有关其邻居节点的信息,其中包括邻居的ID、等级值、状态和位置。根节点的跳数的初始值默认为零,而子节点的跳数初始值默认为无限大。邻居信息中的状态则是指邻居节点是否损坏,邻居信息中的初始状态默认为null。
表2.请求数据包格式
根节点ID 根节点位置 跳数 发送者ID 发送者位置
表2列出了请求数据包中所包含的内容。请求数据包包含根的ID、根的位置、跳数、发送者ID和发送者位置。根ID代表传感器收集的环境数据可以到达的目的地(根节点)。传递时,根位置是目的地的绝对位置,跳数记录了请求数据包从根节点被发出到接收者节点的传输跳数。发送者ID和发送者位置记录了邻居节点的ID和位置。
为便于对本发明的理解,如图5所示,下面以一个实际的应用场景来说明在本发明中,有向无环网络结构的建立过程
如图1和图5所示,所示,我们假设一个请求包是从根节点R发送并被邻居节点A接收。子节点A在它的邻居表中记录了节点R。因为根ID和发送者的ID均为R,所以邻居节点R是根节点。邻居节点R的信息被记录在节点A的邻居表中。然后,节点A分析请求数据包的跳数,节点A发现请求数据包中的跳数hop(R)=0小于其自己目前记录的跳数hop(A)=∞,因此它加1并更新其跳数成为新的跳数hop(A)=1。
在图2中,子节点A向其邻居节点R、B和C广播跳数为1的请求数据包。邻居节点R、B和C在其邻居表中记录节点A的信息。由于邻居节点R发现请求数据包中的跳数高于自己的跳数,所以直接丢弃该请求数据包并不更新自己的跳数。
在初始化模式下,每个节点的等级值被定义为跳数,如公式(1)。对于节点R的等级值为0,节点A的等级值为1,依此类推。等级值是通过使用目标函数获得的计算结果。当没有节点从其邻居节点接收到任何新的请求数据包时,则初始化模式结束。
初始化模式结束后,进入正常模式,传感器节点开始在环境中收集数据。但是,在实际的网络环境中,可能有多个根节点。因此,当子节点接收到从根节点发送的请求数据包时,子节点将检查其根信息是否已经存在。如果它已经存在于自己所记录的根信息中,则请求数据包将被忽略。否则,它将被记录在自己的根信息中。
如图6所示,在正常情况下,初始化模式完成后,子节点开始收集环境中的数据并试图将数据传送到根节点。每个子节点都使用目标函数f(N)来计算其邻居节点的等级值,等级值又定义为跳数。在正常模式下,目标函数的表达式为:
f(N)=hop(N) (1)
如图3所示。假设子节点D想要向根节点R发送数据,则它选择等级值最小的邻居节点作为转发节点。在这种情况下,D具有两个邻居F和B,从自己的邻居表中可以知道,f(F)=4并且f(B)=2。因此,D选择具有等级值较小的节点B作为转发节点。
当邻居节点B从节点D接收数据时,节点B选择具有等级值最小的邻居节点A做为转发节点,因为f(A)<f(D),所以B选择节点A作为转发节点并逐层传送到根节点R。
在网络中,任何非孤立的子节点都可以在正常模式下建立从自己到根节点的路径。因此,在初始化模式完成之后,所有的子节点所收集到的环境信息可以通过这种方式传送到根节点R。
在正常模式下,有时需要向有向无环网络结构中增加或者删除子节点。
图4示出了新增新节点F的情况,新节点F执行三次握手(Three-way Handshake)。节点F发送一条添加数据包,以通知相邻节点该节点F要加入网络。假设节点F有两个邻居节点(节点B和D)。从节点F收到添加数据包,节点B和D将检查自己的邻居表中是否已存在节点F。如果节点F已存在于它们的邻居表中,则添加数据包将被忽略。否则,节点D和B将个别回传请求数据给节点F。当节点F接收到来自B和D的请求数据包时,它比较节点B和D之间的跳数。这时,如果发现节点B的跳数小于D的跳数,则节点F将跳数设置为f(B)+1,并且将节点B和D的信息记录在自己的邻居表中。最后,节点F再将请求数据包发送回节点B和D,节点B和D也将节点F的信息添加到自己的邻居表中。
而删除节点操作比较简单,假设节点F要离开网络。它向邻居B和D发送删除数据包。当节点B和D接收到F的删除数据包时,节点B和D直接在邻居表中将节点F删除。
当发生火灾时,传感器侦测到异常的监测值(如:异常高温),并广播紧急数据包以通知相邻节点进入紧急模式。通过紧急数据包通知相邻节点发生了火灾事件与位置。紧急数据包格式中包含有火源位置,即侦测到高温事件的传感器位置。
在正常模式中,我们只考虑根节点的位置,即从子节点传输数据到目标节点(根节点)的跳数。而在紧急模式中,我们考虑两个因素:根节点的位置和火源的位置。当火灾发生时,传感器监测到异常温度时,将自己的位置设为火源位置,并广播紧急数据包给邻居节点,邻居节点在接收到紧急数据包时,将进入紧急模式。若收到重复的紧急数据包则将紧急数据包丢弃,反之,则将紧急数据包广播出去。
如图7和图8所示,在紧急模式中,子节点包括存储器和处理器,处理器被配置为执行存储器的计算机程序,以实现如下步骤:
S1、接收紧急数据包。紧急数据包记录有外部环境的灾情位置。
在紧急模式下,由于根节点或其他子节点的损坏,导致传感器的数据传输失败。在初始化模式中,每一个传感器已经在邻居表中记录了所有根节点信息。传感器将从根信息中选择跳数最小(距离自己最近的)的根节点(目标节点)进行数据的传输。
在上述实施例的基础上,本发明一可选实施例中,获取当前节点到目标根节点的第一向量,具体为:
判断紧急数据包是否已经被接收过。
若是,则直接获取当前节点到目标根节点的第一向量。其中,目标根节点为上一次转发紧急数据包时使用的目标根节点。
若否,根据灾情位置选择新的目标根节点后,获取当前节点到新的目标根节点的第一向量。
具体地,当记录的火灾位置与根节点的位置小于通信半径,代表火源位置距离根节点很近,需要更换根节点,传感器将从邻居表的根信息中挑选新的根节点做为新的目标根节点。
在上述实施例的基础上,本发明一可选实施例中,根节点至少有两个。子节点的邻居表记录有所有根节点的位置和到根节点的跳数。跳数为当前子节点的数据传输到根节点所需要的最少的传输次数。
根据灾情位置选择新的目标根节点,具体为:
根据灾情位置,基于跳数,由小到大,依次判断灾情位置是否位于根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为新的目标根节点。
具体地,选取新的节点以跳数最少为依据,能够有效的缩短紧急数据包的传输次数。具有很好的实际意义。
在上述实施例的基础上,本发明一可选实施例中,当接收紧急数据包之前,已经接收过旧紧急数据包时。在接收紧急数据包之后,还包括步骤S2至步骤S4:
S2、判断灾情位置和旧紧急数据包中的旧灾情位置的距离关系。
S3、当判断到灾情位置比旧灾情位置近时,更新当前节点所记录的灾情位置。
S4、当判断到灾情位置和旧灾情位置相同时,忽略灾情位置。
具体地,在本实施例中,每个节点会持续地更新火源位置。当传感器收到新的紧急数据包时,会与先前纪录的火灾位置进行比对。如果当前记录的火灾位置比新的火灾位置更远,则新的火源位置将覆盖掉目前的火源位置,如果重复则丢弃。
S5、获取当前节点到目标根节点的第一向量。
S6、根据紧急数据包,获取当前节点到灾情位置的第二向量的逆向量。
S7、计算得到第一向量和逆向量的和向量。
S8、获取当前节点到其各个邻居节点的第三向量在和向量上的投影值。
S9、发送紧急数据包至投影值最大的邻居节点。
具体地,在紧急模式中,假设传感器Si(即子节点)想要将监测的数据传输到根节点R,我们考虑从Si传输到根节点R的向量另一方面,我们还考虑了火源的位置,Si从紧急数据包中所记录的信息选择最近的坐标作为新的火源位置。为了避免选择更靠近火源位置的节点作为数据传递的节点,计算逆向量/>接下来,计算/>和/>的和向量/>表达式如下:
确定传感器Si的监测数据应传输的方向。Si从邻居表中找到合适的转发节点,并考虑每个邻居节点在/>上形成的向量的正交投影。将每个邻居节点的正交投影设置为每个邻居节点的等级值。
上式定义了紧急模式下的目标函数f(n),其中是/>和/>的和向量,/>是从传感器Si到邻居节点n的向量。参见图9。假设传感器Si具有三个相邻节
点,即Sj、Sk和Sm,我们可计算出三个向量,分别为和/>接下来,我们计算了这些向量在和向量/>上的正交投影,发现Sj的正交投影最大,所以选择Sj作为转传节点,与正常模式不同的是,这边的等级值,将挑选具有较大等级值的邻居节点作为转传节点,因为/>与/>更接近。因此,在此例中,Si选择Sj作为的转传节点。
如图10所示,为便于对本发明的理解,下面以一个实际的应用场景来说明在本发明中,在紧急模式下紧急数据包在有向无环网络结构中的传递。
假设有一个网络布署如图10所示。假设S14收集到环境中的信息,想要将数据传送给根节点R1。首先,我们计算从节点S14到根节点R1,的向量如下式所示.
而我们期望所选的转发节点远离火源的位置,所以计算从节点S14到火源位置的逆向量,如下式所示。
所以,和/>的向量和为:
在这个例子中,S14具有两个转传节点,即节点S11和S15。因此,我们计算向量在和向量/>上的正交投影。
在本发明的数据传递系统中,当处于紧急模式时,我们将每个节点的等级值定义为向量在和向量/>上的正交投影。节点S14选择具有较大等级值的邻居节点用于数据传输。在这种情况下,节点S14选择节点S15作为转发节点。
接下来,节点S15继续从其邻居节点S12或S16中选择一个节点作为转发节点。由于从S14发送数据为了避免发生循环,因此不包括子节点S14。
在数据包传输过程中,传感器将选择一个远离火源且更接近目标根节点的邻居节点来传输数据包。通过利用正射影的概念决定出数据应该传送的邻居节点。当火灾发生时,传感器监测到异常温度时,将发送紧急数据包,通知其他传感器进入紧急模式。传感器在紧急模式中,将根据根节点(目标节点)的位置与火源的位置进行正射影的计算,从邻居节点中,挑选等级值最大的节点当作数据包的传送节点。本发明具有实现简单、高鲁棒性等优点。
本发明实施例,通过在选择接收节点时考虑到了灾情位置,从而避免了通过距离灾情位置近的节点进行传输数据,有效避免了在数据传播过程中,因节点损坏导致的传输速度慢的情况。
实施例二、
本发明实施例提供物联网的数据传递方法,其可由物联网中的子节点来实施。特别地,由子节点中的一个或者多个处理器来执行,以实现如下步骤:
S1、接收紧急数据包。紧急数据包记录有外部环境的灾情位置。
S5、获取当前节点到目标根节点的第一向量。
S6、根据紧急数据包,获取当前节点到灾情位置的第二向量的逆向量。
S7、计算得到第一向量和逆向量的和向量。
S8、获取当前节点到其各个邻居节点的第三向量在和向量上的投影值。
S9、发送紧急数据包至投影值最大的邻居节点。
具体地,在数据包传输过程中,传感器将选择一个远离火源且更接近目标根节点的邻居节点来传输数据包。通过利用正射影的概念决定出数据应该传送的邻居节点。当火灾发生时,传感器监测到异常温度时,将发送紧急数据包,通知其他传感器进入紧急模式。传感器在紧急模式中,将根据根节点(目标节点)的位置与火源的位置进行正射影的计算,从邻居节点中,挑选等级值最大的节点当作数据包的传送节点。本发明具有实现简单、高鲁棒性等优点。
本发明实施例,通过在选择接收节点时考虑到了灾情位置,从而避免了通过距离灾情位置近的节点进行传输数据,有效避免了在数据传播过程中,因节点损坏导致的传输速度慢的情况。
在紧急模式下,由于根节点或其他子节点的损坏,导致传感器的数据传输失败。在初始化模式中,每一个传感器已经在邻居表中记录了所有根节点信息。传感器将从根信息中选择跳数最小(距离自己最近的)的根节点(目标节点)进行数据的传输。
在上述实施例的基础上,本发明一可选实施例中,获取当前节点到目标根节点的第一向量,具体为:
S51、判断紧急数据包是否已经被接收过。
S52、若是,则直接获取当前节点到目标根节点的第一向量。其中,目标根节点为上一次转发紧急数据包时使用的目标根节点。
S53、否则,根据灾情位置选择新的目标根节点后,获取当前节点到新的目标根节点的第一向量。
具体地,当记录的火灾位置与根节点的位置小于通信半径,代表火源位置距离根节点很近,需要更换根节点,传感器将从邻居表的根信息中挑选新的根节点做为新的目标根节点。
在上述实施例的基础上,本发明一可选实施例中,根节点至少有两个。子节点的邻居表记录有所有根节点的位置和到根节点的跳数。跳数为当前子节点的数据传输到根节点所需要的最少的传输次数。
根据灾情位置选择新的目标根节点,具体为:
根据灾情位置,基于跳数,由小到大,依次判断灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为新的目标根节点。
具体地,选取新的节点以跳数最少为依据,能够有效的缩短紧急数据包的传输次数。具有很好的实际意义。
在上述实施例的基础上,本发明一可选实施例中,当接收紧急数据包之前,已经接收过旧紧急数据包时。在接收紧急数据包之后,还包括如下步骤:
S2、判断灾情位置和旧紧急数据包中的旧灾情位置的距离关系。
S3、当判断到灾情位置比旧灾情位置近时,更新当前节点所记录的灾情位置。
S4、当判断到灾情位置和旧灾情位置相同时,忽略灾情位置。
具体地,在本实施例中,每个节点会持续地更新火源位置。当传感器收到新的紧急数据包时,会与先前纪录的火灾位置进行比对。如果当前记录的火灾位置比新的火灾位置更远,则新的火源位置将覆盖掉目前的火源位置,如果重复则丢弃。
第三方面、
如图11所示,本发明实施例提供一种物联网的数据传递装置,其包含:
接收模块1,用于接收紧急数据包。紧急数据包记录有外部环境的灾情位置。
第一向量获取模块2,用于获取当前节点到目标根节点的第一向量。
逆向量获取模块3,用于根据紧急数据包,获取当前节点到灾情位置的第二向量的逆向量。
和向量获取模块4,用于计算得到第一向量和逆向量的和向量。
投影值获取模块5,用于获取当前节点到其各个邻居节点的第三向量在和向量上的投影值。
发送模块6,用于发送紧急数据包至投影值最大的邻居节点。
可选地,第一向量获取模块,具体用于:
判断紧急数据包是否已经被接收过。
若是,则直接获取当前节点到目标根节点的第一向量。其中,目标根节点为上一次转发紧急数据包时使用的目标根节点。
否则,根据灾情位置选择新的目标根节点后,获取当前节点到新的目标根节点的第一向量。
可选地,根节点至少有两个。子节点的邻居表记录有所有根节点的位置和到根节点的跳数。跳数为当前子节点的数据传输到根节点所需要的最少的传输次数。
可选地,根据灾情位置选择新的目标根节点,具体为:
根据灾情位置,基于跳数,由小到大,依次判断灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为新的目标根节点。
可选地,当接收紧急数据包之前,已经接收过旧紧急数据包时。在接收模块之后,还包括以下模块:
距离模块,用于判断灾情位置和旧紧急数据包中的旧灾情位置的距离关系。
第一判断模块,用于当判断到灾情位置比旧灾情位置近时,更新当前节点所记录的灾情位置。
第二判断模块,用于当判断到灾情位置和旧灾情位置相同时,忽略灾情位置。
实施例四、
本发明实施例提供一种物联网的数据传递设备,其包括处理器、存储器,以及存储在存储器内的计算机程序。计算机程序能够被处理器执行,以实现如实施例二所述的物联网的数据传递方法。
在本发明实施例所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置和方法实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,电子设备,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种物联网的数据传递系统,其特征在于,包含多个节点,各个节点分别和预定范围内的邻居节点通讯连接,以形成有向无环网络结构;其中,所述多个节点包括根节点和子节点;所述根节点能够和外部网络通讯连接;所述子节点能够接收并转发其它节点发送的数据包以使所述数据包向所述根节点传输,以及检测环境信息并在外部环境满足预定条件时生成紧急数据包并发送至邻居节点;所述根节点至少有两个;所述子节点的邻居表记录有所有根节点的位置和到根节点的跳数;所述跳数为当前子节点的数据传输到根节点所需要的最少的传输次数;
所述子节点包括存储器和处理器,所述处理器被配置为执行所述存储器的计算机程序,以实现如下步骤:
接收所述紧急数据包;所述紧急数据包记录有所述外部环境的灾情位置;
获取当前节点到目标根节点的第一向量;
根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
计算得到所述第一向量和所述逆向量的和向量;
获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
发送所述紧急数据包至所述投影值最大的邻居节点;
获取当前节点到目标根节点的第一向量,具体为:
判断所述紧急数据包是否已经被接收过;
若是,则直接获取所述当前节点到所述目标根节点的第一向量;其中,所述目标根节点为上一次转发紧急数据包时使用的所述目标根节点;
若否,根据所述灾情位置选择新的目标根节点后,获取当前节点到所述新的目标根节点的第一向量;
根据所述灾情位置选择新的目标根节点,具体为:
根据所述灾情位置,基于所述跳数,由小到大,依次判断所述灾情位置是否位于根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为所述新的目标根节点。
2.根据权利要求1所述的数据传递系统,其特征在于,当接收所述紧急数据包之前,已经接收过旧紧急数据包时;在接收所述紧急数据包之后,还包括如下步骤:
判断所述灾情位置和所述旧紧急数据包中的旧灾情位置的距离关系;
当判断到所述灾情位置比所述旧灾情位置近时,更新当前节点所记录的灾情位置;
当判断到所述灾情位置和所述旧灾情位置相同时,忽略所述灾情位置。
3.根据权利要求1至2任一项所述的数据传递系统,其特征在于,在所述有向无环网络结构中:
根节点,用于生成并发送请求包至预定范围内的邻居节点;其中,所述请求包包含根节点ID、根节点位置、当前节点的跳数、发送者ID和发送者位置;根节点的跳数为0;
子节点,用于接收请求包,并记录根节点的信息,及根据请求包中的跳数更新自身的跳数后生成新的请求包,并发送至邻居节点;其中,当接收到的请求包中的跳数信息小于自身记录的跳数信息时,将当前节点的跳数更新为请求包中的跳数加1;
根节点和子节点,还用于接收邻居节点的发送的请求包,并记录邻居节点的信息,以形成有向无环网络结构。
4.一种物联网的数据传递方法,其特征在于,包括如下步骤:
接收紧急数据包;所述紧急数据包记录有外部环境的灾情位置;
获取当前节点到目标根节点的第一向量;
根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
计算得到所述第一向量和所述逆向量的和向量;
获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
发送所述紧急数据包至所述投影值最大的邻居节点;
获取当前节点到目标根节点的第一向量,具体为:
判断所述紧急数据包是否已经被接收过;
若是,则直接获取所述当前节点到所述目标根节点的第一向量;其中,所述目标根节点为上一次转发紧急数据包时使用的所述目标根节点;
否则,根据所述灾情位置选择新的目标根节点后,获取当前节点到所述新的目标根节点的第一向量
根据所述灾情位置选择新的目标根节点,具体为:
根据所述灾情位置,基于跳数,由小到大,依次判断所述灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为所述新的目标根节点。
5.一种物联网的数据传递装置,其特征在于,包含:
接收模块,用于接收紧急数据包;所述紧急数据包记录有外部环境的灾情位置;
第一向量获取模块,用于获取当前节点到目标根节点的第一向量;
逆向量获取模块,用于根据所述紧急数据包,获取所述当前节点到所述灾情位置的第二向量的逆向量;
和向量获取模块,用于计算得到所述第一向量和所述逆向量的和向量;
投影值获取模块,用于获取当前节点到其各个邻居节点的第三向量在所述和向量上的投影值;
发送模块,用于发送所述紧急数据包至所述投影值最大的邻居节点;
第一向量获取模块,具体用于:
判断紧急数据包是否已经被接收过;
若是,则直接获取当前节点到目标根节点的第一向量;其中,目标根节点为上一次转发紧急数据包时使用的目标根节点;
否则,根据灾情位置选择新的目标根节点后,获取当前节点到新的目标根节点的第一向量;
根据灾情位置选择新的目标根节点,具体为:
根据灾情位置,基于跳数,由小到大,依次判断灾情位置是否位于各个根节点的通讯半径内,当判断到灾情位置位于通讯半径外时,选择该根节点作为新的目标根节点。
6.一种物联网的数据传递设备,其特征在于,包括处理器、存储器,以及存储在所述存储器内的计算机程序;所述计算机程序能够被所述处理器执行,以实现如权利要求4所述的物联网的数据传递方法。
CN202110584037.3A 2021-05-27 2021-05-27 一种物联网的数据传递系统、方法、装置和设备 Active CN113422809B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110584037.3A CN113422809B (zh) 2021-05-27 2021-05-27 一种物联网的数据传递系统、方法、装置和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110584037.3A CN113422809B (zh) 2021-05-27 2021-05-27 一种物联网的数据传递系统、方法、装置和设备

Publications (2)

Publication Number Publication Date
CN113422809A CN113422809A (zh) 2021-09-21
CN113422809B true CN113422809B (zh) 2023-10-24

Family

ID=77713075

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110584037.3A Active CN113422809B (zh) 2021-05-27 2021-05-27 一种物联网的数据传递系统、方法、装置和设备

Country Status (1)

Country Link
CN (1) CN113422809B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101592918A (zh) * 2009-04-23 2009-12-02 浙江工业大学 基于无线传感器网络的三维紧急逃生引导方法
CN101645829A (zh) * 2008-08-07 2010-02-10 中国科学院计算技术研究所 一种无线传感器网络数据转发方法及系统
WO2012009849A1 (en) * 2010-07-20 2012-01-26 Nokia Corporation A routing scheme for wireless sensor networks
CN203941297U (zh) * 2014-06-14 2014-11-12 中国地震局地壳应力研究所 一种地震无线传感器网络中心节点设备
CN106968715A (zh) * 2017-05-31 2017-07-21 深圳众厉电力科技有限公司 基于无线传感器网络的煤矿井下火灾监测系统
CN109859448A (zh) * 2019-01-28 2019-06-07 武汉恒泰通技术有限公司 一种通讯链路故障处理系统及方法
WO2019218921A1 (zh) * 2018-05-14 2019-11-21 北京蓝涟科技有限责任公司 基于距离加权的路由方法及节点路由功能模块
CN111613000A (zh) * 2020-04-08 2020-09-01 深圳市建艺装饰集团股份有限公司 一种火灾自动报警、灾情等级自动监控方法和系统
CN112530132A (zh) * 2020-11-30 2021-03-19 深圳市联正通达科技有限公司 一种基于云计算服务的智能消防管控系统

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8710982B2 (en) * 2010-07-29 2014-04-29 Landis+Gyr Innovations, Inc. Methods and systems for sending messages regarding an emergency that occurred at a facility
US9530304B2 (en) * 2014-10-30 2016-12-27 International Business Machines Corporation Distributed sensor network
US9998894B2 (en) * 2016-04-11 2018-06-12 Gregory Pospiel Auto-generate emergency voice call based on sensor response and pre-entered data

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645829A (zh) * 2008-08-07 2010-02-10 中国科学院计算技术研究所 一种无线传感器网络数据转发方法及系统
CN101592918A (zh) * 2009-04-23 2009-12-02 浙江工业大学 基于无线传感器网络的三维紧急逃生引导方法
WO2012009849A1 (en) * 2010-07-20 2012-01-26 Nokia Corporation A routing scheme for wireless sensor networks
CN203941297U (zh) * 2014-06-14 2014-11-12 中国地震局地壳应力研究所 一种地震无线传感器网络中心节点设备
CN106968715A (zh) * 2017-05-31 2017-07-21 深圳众厉电力科技有限公司 基于无线传感器网络的煤矿井下火灾监测系统
WO2019218921A1 (zh) * 2018-05-14 2019-11-21 北京蓝涟科技有限责任公司 基于距离加权的路由方法及节点路由功能模块
CN109859448A (zh) * 2019-01-28 2019-06-07 武汉恒泰通技术有限公司 一种通讯链路故障处理系统及方法
CN111613000A (zh) * 2020-04-08 2020-09-01 深圳市建艺装饰集团股份有限公司 一种火灾自动报警、灾情等级自动监控方法和系统
CN112530132A (zh) * 2020-11-30 2021-03-19 深圳市联正通达科技有限公司 一种基于云计算服务的智能消防管控系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"森林火灾检测无线网干起网络有效路由算法";王艳丽;《计算机与数字工程》;全文 *

Also Published As

Publication number Publication date
CN113422809A (zh) 2021-09-21

Similar Documents

Publication Publication Date Title
Deniz et al. An adaptive, energy-aware and distributed fault-tolerant topology-control algorithm for heterogeneous wireless sensor networks
Tan et al. Information quality aware routing in event-driven sensor networks
EP2367325A1 (en) Techniques for self-organizing activity-diffusion-based wireless sensor network
Won et al. Towards robustness and energy efficiency of cut detection in wireless sensor networks
Brust et al. Multi‐hop localization system for environmental monitoring in wireless sensor and actor networks
CN113422809B (zh) 一种物联网的数据传递系统、方法、装置和设备
US20220038990A1 (en) A method for routing information in a mesh communication network
Choudhary et al. Dynamic topology control algorithm for node deployment in mobile underwater wireless sensor networks
US11716276B2 (en) Detecting miswirings in a spine and leaf topology of network devices
Dagdeviren et al. Distributed detection of critical nodes in wireless sensor networks using connected dominating set
Le et al. Exploiting Q-learning in extending the network lifetime of wireless sensor networks with holes
Guo et al. Distributed topological convex hull estimation of event region in wireless sensor networks without location information
He et al. Finding barriers with minimum number of sensors in wireless sensor networks
CN115865761A (zh) 一种考虑阻塞反馈的网络实体任务活动代价评估方法
US20210297321A1 (en) Sparse link-state flooding
CN112188559B (zh) 用于无人系统自组织网络的跨层负载均衡方法和装置
CN107566974A (zh) 一种农产品储运智能监控系统
Chen Estimating the number of nodes in a mobile wireless network
Li et al. Distributed coordinate-free algorithm for full sensing coverage
CN106899926B (zh) 一种无线传感网的角色分配参数确定方法和装置
CN115568039B (zh) 水下无线传感器网络中考虑数据紧急程度的数据采集方法
CN106612523B (zh) 一种基于信息论的分布式无线网络可信路由建立方法
US8493879B2 (en) Node apparatus, route control method, route computation system, and route computation apparatus
KR20140064411A (ko) 센서 네트워크에서 이벤트가 발생한 영역의 경계선을 검출하는 방법
CN108495350B (zh) 一种面向灾难救援场景的消息机会转发方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant