CN113365253A - 一种网络中节点通信方法、装置、设备、***及存储介质 - Google Patents
一种网络中节点通信方法、装置、设备、***及存储介质 Download PDFInfo
- Publication number
- CN113365253A CN113365253A CN202110660986.5A CN202110660986A CN113365253A CN 113365253 A CN113365253 A CN 113365253A CN 202110660986 A CN202110660986 A CN 202110660986A CN 113365253 A CN113365253 A CN 113365253A
- Authority
- CN
- China
- Prior art keywords
- node
- network
- information
- nodes
- communication protocol
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/70—Services for machine-to-machine communication [M2M] or machine type communication [MTC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Mobile Radio Communication Systems (AREA)
- Manipulator (AREA)
Abstract
本申请公开了一种网络中节点通信方法、装置、设备、***及存储介质,其中,该方法包括任一节点根据自身节点信息与网络中其他节点的信息确定任一节点的网络节点类型;任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;第一通信协议报文中携带有命令信息或状态信息,状态信息与任一节点的设备类型相关,设备类型包括工作站或清洁机器人。即任一节点可以通过自身节点信息与其他节点信息确定、更新任一节点的网络节点类型,并根据该任一节点自身的网络节点类型通过携带有命令信息或状态信息的第一通信协议报文与网络中的其他节点进行通信。
Description
技术领域
本申请实施例涉及智能清洁机器人通信领域,尤其涉及一种网络中节点通信方法、装置、设备、***及存储介质。
背景技术
多机器人之间的智能通信以及控制***通常包括执行任务的机器人、机器人搭载的传感器,以及平台控制***。当前智能机器人多机与工作站之间的通信主要还是通过LoRa通信技术实现握手交互和信息传输。但是,LoRa通信技术并不能完全保证机器人与工作站之间的交互协作的安全性和可靠性。
发明内容
本申请实施例提供了一种网络中节点通信方法、装置、设备、***及存储介质,旨在有效提升区域内多节点协同作业的安全性和可靠性,并提高传输信息的灵活性。
第一方面,本申请实施例提供了一种网络中节点通信方法,该方法包括:
任一节点根据自身节点信息与网络中其他节点的信息确定所述任一节点的网络节点类型;
所述任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;
所述第一通信协议报文中携带有命令信息或状态信息,所述状态信息与所述任一节点的设备类型相关,所述设备类型包括工作站或清洁机器人。
采用该实施例的实现方式,任一节点可以通过自身节点信息与其他节点信息确定、更新任一节点的网络节点类型,并根据该任一节点自身的网络节点类型通过携带有命令信息或状态信息的第一通信协议报文与网络中的其他节点进行通信,这样不仅可以有效提升区域内多个节点协同作业的安全性和可靠性,并且还可以提高传输信息的灵活性。
可选地,所述任一节点根据自身节点信息与网络中其他节点的信息确定所述任一节点的网络节点类型,包括:
所述任一节点根据所述其他节点的位置信息分别确定所述其他节点至所述任一节点的距离;
所述任一节点根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的网络节点类型。
采用该实施例中的技术手段,任一节点可以根据距离总和、入网累计时间、周围的障碍物信息三方面的因素确定该节点的网络节点类型。
可选地,所述任一节点根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的网络节点类型,包括:
所述任一节点以加权的方式根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的选举值;
所述任一节点获取所述其他节点发送的各自的选举值;
所述任一节点比较自身的选举值与所述其他节点各自的选举值之间的大小;
在所述任一节点的选举值为最大值的情况下,所述任一节点确定自身为网络中的根节点;
在所述任一节点的选举值不为最大值的情况下,所述任一节点确定自身不是网络中的根节点。
采用该实施例中的技术手段,任一节点可以以加权的方式根据其距离的总和、入网累计时间、周围的障碍物信息确定选举值,并根据选举值大小确定自身是否为网络中的根节点。
可选地,在所述任一节点确定自身不是网络中的根节点的情况下,所述方法还包括:
在所述任一节点向网络中相邻节点发送接入请求的情况下,所述任一节点确定自身为所述相邻节点的子节点;
或者,在所述任一节点接收到相邻节点发送的接入请求的情况下,所述任一节点确定自身为所述相邻节点的父节点。
采用该实施例中的技术手段,任一节点确定自身不是网络中的根节点后可以进一步确定自身为相邻节点的子节点或者父节点。
可选地,所述任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信,包括:
所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文;
所述任一节点按照自身的网络节点类型将所述第一通信协议报文发送至所述任一节点的子节点,和/或,所述任一节点的父节点。
通过该实施例中的上述实现过程可以构造第一通信协议报文,使得任一节点按照自身在整个网络结构中的网络节点类型以第一通信协议报文与网络中的其他节点进行通信。
可选地,在所述任一节点的设备类型为工作站的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
若所述任一节点当前的工作状态为空闲,则所述任一节点根据组播标志、空闲标志和空闲数据构造状态信息,并将所述状态信息封装为第一通信协议报文;
或者,若所述任一节点当前的工作状态为忙碌,则所述任一节点根据单播标志、忙碌标志和忙碌数据构造状态信息,并将所述状态信息封装为第一通信协议报文。
通过上述方式可以在任一节点的设备类型为工作站的情况下,按照自身的设备类型和当前的工作状态构造第一通信协议报文。
可选地,在所述任一节点的设备类型为机器人的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
若所述任一节点当前的工作状态为异常状态,则所述任一节点根据组播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文;
或者,若所述任一节点当前的工作状态为异常状态,则所述任一节点根据单播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文。
通过上述方式可以在任一节点的设备类型为机器人的情况下,按照自身的设备类型和当前的工作状态构造第一通信协议报文。
可选地,在所述任一节点的设备类型为机器人的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
在所述任一节点的当前工作状态为电量低的情况下,所述任一节点根据组播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文;
或者,在所述任一节点的当前工作状态为电量低的情况下,所述任一节点根据单播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文。
通过上述方式可以在任一节点的设备类型为机器人的情况下,按照自身的设备类型和当前的低电量工作状态构造第一通信协议报文。
可选地,在所述任一节点为工作站的情况下,所述方法还包括:
在所述任一节点接收到多个命令信息的情况下,所述任一节点根据所述多个命令信息分别构造与所述多个命令信息对应的命令响应信息,并将所述命令响应信息封装为第一通信协议报文;
所述任一节点根据所述多个命令信息的接收顺序依次分别向发送对应信息的节点发送所述第一通信协议报文。
通过上述方式,工作站可以根据接收到的多个命令信息的接收顺序,依次以第一通信协议报文的方式响应相应的发送节点。
第二方面,本申请实施例还提供了一种网络中的通信装置,该装置包括:
确定模块,用于根据装置自身节点信息与网络中其他节点的信息确定装置的网络节点类型;
通信模块,用于按照装置自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;
其中,第一通信协议报文中携带有命令信息或状态信息,状态信息与装置的设备类型相关,设备类型包括工作站或清洁机器人。
可选地,确定模块,用于根据所述其他节点的位置信息分别确定所述其他节点至所述装置的距离;
以及,根据所述装置距离的总和、所述装置入网累计时间、所述装置周围的障碍物信息确定所述装置的网络节点类型。
可选地,确定模块,用于以加权的方式根据所述装置距离的总和、所述装置入网累计时间、所述装置周围的障碍物信息确定所述装置的选举值;以及,获取所述其他节点发送的各自的选举值,并比较所述装置自身的选举值与所述其他节点各自的选举值之间的大小;
在所述装置的选举值为最大值的情况下,所述确定模块还用于确定装置自身为网络中的根节点;以及,在所述装置的选举值不为最大值的情况下,所述确定模块确定装置自身不是网络中的根节点。
可选地,在所述装置不是网络中的根节点的情况下,确定模块还可以用于:
在所述通信模块向网络中相邻节点发送接入请求的情况下,所述确定模块确定装置自身为所述相邻节点的子节点;
或者,在所述通信模块接收到相邻节点发送的接入请求的情况下,所述确定模块确定装置自身为所述相邻节点的父节点。
可选地,所述装置还可以包括:第一通信协议报文确定模块;
第一通信协议报文确定模块,用于按照装置自身的设备类型和装置当前的工作状态构造第一通信协议报文。
通信模块,用于按照装置自身的网络节点类型将所述第一通信协议报文发送至所述装置的子节点,和/或,所述装置的父节点。
可选地,第一通信协议报文确定模块还可以用于,在所述装置的设备类型为工作站的情况下,且所述装置当前的工作状态为空闲,则根据组播标志、空闲标志和空闲数据构造状态信息,并将所述状态信息封装为第一通信协议报文;或者,若所述装置当前的工作状态为忙碌,则根据单播标志、忙碌标志和忙碌数据构造状态信息,并将所述状态信息封装为第一通信协议报文。
可选地,第一通信协议报文确定模块还可以用于,在所述装置的设备类型为机器人的情况下,若所述装置当前的工作状态为异常状态,则根据组播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文;或者,若装置当前的工作状态为异常状态,则根据单播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文。
可选地,第一通信协议报文确定模块还可以用于,在所述装置的设备类型为机器人的情况下,若所述装置的当前工作状态为电量低,根据组播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文;
或者,在所述装置的设备类型为机器人的情况下,若所述装置的当前工作状态为电量低,根据单播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文。
可选地,在所述装置为工作站的情况下,第一通信协议报文确定模块还可以用于,在所述通信模块接收到多个命令信息的情况下,根据所述多个命令信息分别构造与所述多个命令信息对应的命令响应信息,并将所述命令响应信息封装为第一通信协议报文;
可选地,通信模块还可以用于根据所述多个命令信息的接收顺序依次分别向发送对应信息的节点发送所述第一通信协议报文。
第三方面,本申请实施例还提供了一种通信设备,包括存储器、控制器及存储在存储器上并可在控制器上运行的计算机程序,控制器执行计算机程序时,实现如本申请实施例所提供的任一项所述的网络中节点通信方法。
第四方面,本申请实施例还提供了一种网络中节点通信***,包括至少两个通信节点,通信节点用于执行本申请实施例提供的任一项所述的网络中节点通信方法。
第五方面,本申请实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,在计算机程序被控制器执行时,实现如本申请实施例提供的任一项所述的网络中节点通信的方法。
本申请提供一种网络中节点通信方法、装置、设备、***及存储介质,其中,该方法包括任一节点根据自身节点信息与网络中其他节点的信息确定任一节点的网络节点类型;任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;第一通信协议报文中携带有命令信息或状态信息,状态信息与任一节点的设备类型相关,设备类型包括工作站或清洁机器人。即任一节点可以通过自身节点信息与其他节点信息确定、更新任一节点的网络节点类型,并根据该任一节点自身的网络节点类型通过携带有命令信息或状态信息的第一通信协议报文与网络中的其他节点进行通信,这样不仅可以有效提升区域内多个节点协同作业的安全性和可靠性,并且还可以提高传输信息的灵活性。
附图说明
图1是本申请实施例中的一种网络中节点通信方法的流程图;
图2是本申请实施例中的确定网络节点类型的方法流程图;
图3是本申请实施例中的一种Mesh网络的节点布局示意图;
图4是本申请实施例中的一种状态信息的结构示意图;
图5是本申请实施例中的一种第一通信协议报文的结构示意图;
图6是本申请实施例中的命令信息的结构示意图;
图7是本申请实施例中的一种Mesh网络拓扑结构示意图;
图8是本申请实施例中的一种网络中节点通信装置的结构示意图;
图9是本申请实施例中的另一种网络中节点通信装置的结构示意图;
图10是本申请实施例中的通信设备的结构示意图;
图11是本申请实施例中的计算机可读存储介质的模块示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,而非对本申请的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本申请相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作(或步骤)描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。此外,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
另外,在本申请实施例中,“可选地”或者“示例性地”等词用于表示作例子、例证或说明。本申请实施例中被描述为“可选地”或者“示例性地”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“可选地”或者“示例性地”等词旨在以具体方式呈现相关概念。
图1为本申请实施例提供的一种网络中节点通信方法的流程图,本申请实施例可适用于多清洁机器人与多工作站点无线通信等场景,该方法可以由本申请实施例提供的网络中节点通信装置来执行,该装置可采用软件和/或硬件的方式实现。在一个具体的实施例中,该装置可以集成在通信设备中。以下实施例将以该装置集成在通信设备中为例进行说明。如图1所示,该方法可以包括但不限于以下步骤:
S101、任一节点根据自身节点信息与网络中其他节点的信息确定任一节点的网络节点类型。
上述任一节点可以为多清洁机器人与多工作站进行无线通信场景下的机器人或工作站中的任意一个。
示例性地,节点信息可以包括网络中其他节点距离上述任一节点的距离的总和、任一节点入网累计时间、任一节点周围的障碍物信息等。
网络节点类型可以包括根节点、父节点、子节点。其中,网络中仅有唯一一个根节点,父节点与子节点是相对而言的,若当前节点具有上级节点,则上级节点可以为当前节点的父节点,对应的,当前节点可以为上级节点的子节点。例如,节点X连接至节点Y,且节点X相较节点Y与根节点的距离更远(跨越连接数量更多),则节点X可以为节点Y的子节点,节点Y可以为节点X的父节点。
任一节点通过本步骤即可确定自身在网络中所扮演的网络节点类型,即为根节点、父节点或者子节点。
S102、任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信。
通过上述步骤S101,网络中各个节点确定自身在网络中的网络节点类型后,即可确定当前通信网络的网络结构,进而按照自身在网络中所处的网络节点类型与网络中的其他节点进行通信。例如,任一节点可以以第一通信报文的形式与其在网络中的子节点,和/或,父节点进行通信。
进一步地,任一节点可以按照自身的设备类型和当前的工作状态构造第一通信协议报文。其中,自身的设备类型可以包括上述场景下的工作站或清洁机器人。示例性地,若任一节点为工作站,则其工作状态可以包括忙碌和空闲两种状态,若任一节点为清洁机器人,则其工作状态可以包括电量低、电量正常、清水箱正常、清水箱异常、污水箱正常、污水箱异常。
本申请实施例提供了一种网络中节点通信方法,包括:任一节点根据自身节点信息与网络中其他节点的信息确定任一节点的网络节点类型;任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;第一通信协议报文中携带有命令信息或状态信息,状态信息与任一节点的设备类型相关,设备类型包括工作站或清洁机器人。即任一节点可以通过自身节点信息与其他节点信息确定、更新任一节点的网络节点类型,并根据该任一节点自身的网络节点类型通过携带有命令信息或状态信息的第一通信协议报文与网络中的其他节点进行通信,这样不仅可以有效提升区域内多个节点协同作业的安全性和可靠性,并且还可以提高传输信息的灵活性。
在一种示例中,如图2所示,上述步骤S101中确定任一节点的网络节点类型的方式可以包括但不限于以下步骤:
S201、任一节点根据其他节点的位置信息分别确定其他节点至任一节点的距离。
在本申请实施例中,网络中的任一节点可以周期性地组播自身位置信息至网络中的其他节点,其他节点可以根据接收到的位置信息与自身位置信息进行对比,从而确定自身与任一节点之间的距离。相应地,上述任一节点也可以获取到其他节点在网络中组播的位置信息,并根据获取的位置信息确定其他节点至自身的距离。其中,上述周期时间可以根据实际情况自行设定,在此不做具体设定。
可选地,上述任一节点与网络中的其他节点可以采用基于WiFi Mesh的组网技术进行通信,WiFi Mesh模块可以安装在不同设备中(例如,工作站、清洁机器人等)以构成网络中的通信节点。WiFi Mesh网络可以包括底层的数据采集层和上层的Mesh网络层,其中,数据采集层可以采集设备(或节点)的传感数据,传感数据可以包括WiFi Mesh模块自身安装设备的类型,即工作站或清洁机器人,以及设备的其他状态数据,例如,工作站是否空闲,清洁机器人的电池电量、水量、机器人各自的清洁区域以及已清洁区域等。
另外,在节点为清洁机器人的情况下,清洁机器人周期性组播自身位置信息至网络中其他清洁机器人的情况下,各清洁机器人可以将接收到的位置信息与自身位置信息进行对比,判断两者之间的距离,若两者间的距离小于预设安全阈值,则可以采取紧急刹车措施以保证多清洁机器人的通信安全。并且,多台清洁机器人可以根据组播信息获取其他清洁机器人已清洁的区域,避免对同一区域的重复清洁,提高整体清洁效率。
S202、任一节点根据距离的总和、任一节点入网累计时间、任一节点周围的障碍物信息确定任一节点的网络节点类型。
任一节点获取网络中其他节点与自身的距离后,即可确定网络中其他节点与自身之间的距离的总和。例如,假设网络中存在A节点、B节点和C节点,本步骤中的任一节点为A节点,其他节点包括B节点、C节点,设B节点至A节点的距离为LBA,C节点至A节点的距离为LCA,那么对于该A节点而言,其距离的总和LA可以为B节点至A节点的距离与C节点至A节点的距离之和,即LA=LBA+LCA。
任一节点入网累计时间可以为该节点加入Mesh网络的累计时间。
可选地,任一节点周围的障碍物信息可以为该节点周围障碍物信息的数量、距离、大小等,障碍物信息可以通过安装在节点上的障碍物检测模块(例如,红外探测模块、超声波检测模块)获取,或者可以通过图像识别模块进行图像分析来获取,具体的障碍物信息和探测方法可以根据实际应用场景进行设置,本申请实施例不作限定。
示例性地,任一节点获取自身的上述三个维度的信息后,可以通过对这三个维度的信息进行加权的方式确定出该任一节点的选举值。
例如,任一节点的选举值=m*任一节点的距离的总和+n*任一节点入网累计时间+p*任一节点周围的障碍物信息。其中,m、n、p的取值范围为0~1,并且需要满足m+n+p=1。例如,m取值可以为0.5,n取值可以为0.3,p可以为0.2,当然,各权重可以根据对应的加权因子重要性进行设定,在此不做具体限定。其中,任一节点周围的障碍物信息的量化取值可以为负值,即表示任一节点周围的障碍物越多,障碍物距离该任一节点越近,则对应该任一节点的选举值越小。
通过上述方式计算得到任一节点的选举值之后,网络中的任一节点可以组播其选举值,并根据其获取的其他节点组播的选举值与自身的选举值之间的大小值确定自身的网络节点类型。例如,若该任一节点的选举值为网络中各个节点的选举值的最大值,那么可以将该任一节点确定为网络中的根节点,否则,将该任一节点确定为网络中的非根节点。当然,也可以将网络中最小的选举值对应的节点确定为网络中的根节点,具体确定方式与上述选举值的具体计算方式相关,本申请实施例对此仅是示例性的描述,不作具体限定。
进一步地,在任一节点确定自身不是网络中的根节点的情况下,还可以根据自身的接入网络的方式或其他节点接入网络的方式确定其网络节点类型。例如,在任一节点向网络中相邻节点发送接入请求的情况下,即任一节点需要接入相邻节点,那么任一节点确定自身为该相邻节点的子节点。在任一节点接收到相邻节点发送的接入请求的情况下,即相邻节点想通过接入该任一节点的方式在网络中通信,则该任一节点确定自身为相邻节点的父节点。
由于网络中的各个节点在运动过程中可能离开网络的覆盖范围,那么通过上述去中心化的方式,可以保证各个节点的父子关系随着网络中节点位置的变化而不断更新,从而在仅建立简单的网络拓扑结构的前提下,即可避免单个节点硬件故障造成的网络瘫痪问题,并且也能较好地解决清洁机器人再次加入网络时操作不便的问题,从而有效提升区域内多节点协同作业的安全性和可靠性,提高传输信息的灵活性。
示例性地,以图3为例,图中箭头方向可以表示下级节点指向上级节点的方向。例如,C节点可以为根节点,多个节点分别与各自的相邻节点连接,E节点可以为B节点的父节点,B节点可以为E节点的子节点,即一个根节点和多个非根节点(包括父节点、子节点)形成一个树状网络。
需要说明的是,在初始化阶段,可以由操作人员通过RS232串口预先配置节点是否为根节点,并且每个节点的网络节点类型可以通过应用程序(Application,APP)查看,以保证Mesh网络中只有一个根节点。
在一种示例中,上述过程中节点根据自身的设备类型和当前的工作状态构造第一通信协议报文的方式可以包括但不限于以下几种方式:
在任一节点的设备类型为工作站的情况下,若该节点当前的工作状态为空闲,则该节点可以为多个清洁机器人提供服务,那么其可以根据组播标志、空闲标志和空闲数据构造状态信息,并将该状态信息封装为第一通信协议报文。空闲数据可以理解为工作站可以提供服务的能力,比如,可以为几个清洁机器人提供充电服务。
相反,若上述任一节点当前的工作状态为忙碌,即已经为部分清洁机器人提供服务,那么其可以根据单播标志、忙碌标志和忙碌数据构造状态信息,并将该状态信息封装为第一通信协议报文。其中,忙碌数据可以理解为其正在为哪个或哪些清洁机器人提供服务。进一步地,该节点单播的对象可以为目前未提供服务的清洁机器人。
也就是说,在工作站空闲的状态下,其可以向网络中的节点组播自身当前空闲的消息,在忙碌的情况下,其以单播的方式向未提供服务的清洁机器人告知自身的忙碌状态。
示例性,状态信息的结构如图4所示,可以包括单播/组播标志、状态标志、状态数据。状态标志可以包括空闲标志、忙碌状态,状态数据包括空闲数据、忙碌数据。封装的第一通信协议报文的结构如图5所示,第一通信协议报文包括媒体访问控制(Media AccessControl,MAC)地址、有效载荷和校验码。
在上述任一节点为清洁机器人,且其工作状态为电量低的情况下,该节点可以根据组播标志(或单播标志)、命令标志和表示预约充电的状态数据构造命令信息,并将该命令信息封装为第一通信协议报文。其中,清洁机器人预约充电具体以组播或单播的方式发送第一通信协议报文依赖于网络中有几个可以提供服务的工作站,例如,在有多个工作站的情况下,其可以以组播的方式发送第一通信协议报文,在仅有一个工作站的情况下,其可以以单播的方式发送第一通信协议报文。其构造的命令信息的结构如图6所示,可以理解的是,第一通信协议报文的中有效载荷即为各节点构造的状态信息或命令信息。
进一步地,在工作站忙碌的情况下,清洁机器人需要对工作站进行预约排队。例如,若工作站接收到多个命令信息,那么该工作站可以根据多个命令信息的接收顺序依次进行处理,比如在可以为某个清洁机器人提供服务时,构造命令响应信息,并将该命令响应信息封装为第一通信协议报文发送至该清洁机器人。
在清洁机器人的工作状态为异常状态的情况下,清洁机器人可以根据组播标志(或单播标志)、状态标志和异常数据构造状态信息,并将该状态信息封装为第一通信报文发送至相应的节点。上述异常数据可以包括清水箱异常、污水箱异常等等。例如,在清洁机器人运行过程中,若确认自身出现异常状态,可能影响清洁任务,则可以组播自身的异常状态,由其他清洁机器人代替执行某区域的清洁任务;或者,若清洁机器人接收到网络中的触发事件,比如,同步网络时间,或处理某个消息事件等等,则可以向相应节点单播自身当前的异常状态告知暂时不能处理某个消息事件等等。
由于上述各节点之间的通信过程都是基于第一通信协议报文实现的,那么各节点接收到第一通信协议报文后,可以先解析报文获取报文中的MAC地址,判断第一通信协议报文中目的MAC地址和节点自身的MAC地址是否一致,以确保报文信息是否在网络中出现误传。若MAC地址一致,则继续对比校验码,判断信息是否有篡改,在MAC地址和校验码双重校验均一致的情况下,剥离出第一通信协议报文中的有效载荷,根据有效载荷中的具体信息执行后续处理,比如需要发送单播消息或组播消息。
通过上述设计,在一些特定情况下(比如,回复响应或者新节点入网等),采用单播的方式发送消息可能有效节约整个网络资源的开销,而在一些必要情况下(比如,组播工作站当前空闲),采用组播的方式发送消息可以将消息一次性传输完毕,总体节约网络传输时间。
另外,在本申请实施例中,每个网络节点都可以进行多任务处理,比如,通过执行指示灯任务表示工作站的当前工作状态,指示灯慢闪可以表示工作站当前处于空闲状态,指示灯快闪可以表示工作站当前处于忙碌状态,同时还可以执行新节点入网更新维护自身路由表信息、同步网络时间等事件。每个事件可以设计对应的事件标志类型,并携带于第一通信协议报文的有效载荷部分。
下面以具体示例对上述过程进行描述,例如,若Mesh网络中存在清洁机器人节点A、清洁机器人节点D、工作站节点B和工作站节点C;作业人员可以配置清洁机器人节点A作为根节点,其他节点的拓扑关系任意,假设工作站节点B和工作站节点C作为清洁机器人节点A的子节点,清洁机器人节点D作为工作站节点B的子节点,则Mesh网络拓扑结构可以如图7所示。
清洁机器人节点A可以组播Mesh网络设备信息至网络中的其他节点,各节点根据接收到的设备信息更新并维护自身路由表信息。清洁机器人节点D在运动过程中可能脱离了与工作站节点B的通信连接,例如,该工作站节点B检测到子节点D的无线信号强度低于信号强度阈值,或者清洁机器人节点D关机,工作站节点B无法检测到子节点D的信号,则工作站节点B更新自身路由表,并单播路由表逐级传递至根节点,根节点可以将更新的网络拓扑结构信息组播至各成员子节点,这样仅需要维护必要的设备成员,通过剔除离线设备以实现快速响应外部变化。
当然,清洁机器人节点D在运动过程中也能接入其他网络节点中,例如,接入到工作站节点C中,成为工作站节点C的子节点,则工作站节点C也可以更新自身的路由表,并逐级传递至根节点,并由根节点以组播的方式告知网络中各网络节点当前的网络具体结构。并且,在清洁机器人节点D检测到父节点C为工作站时,节点D在必要的情况下,可以通过组播或单播的形式向父节点C预约充电,以形成工作站资源的充分利用。
图8为本申请实施例提供的一种网络中的通信装置,该装置可以用于区域内多设备通信,该装置包括:确定模块801、通信模块802;
确定模块,用于根据装置自身节点信息与网络中其他节点的信息确定装置的网络节点类型;
通信模块,用于按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信。
其中,第一通信协议报文中携带有命令信息或状态信息,状态信息与装置的设备类型相关,设备类型包括工作站或清洁机器人。
可选地,确定模块可以用于,根据其他节点的位置信息分别确定其他节点至装置的距离;以及,根据装置距离的总和、装置入网累计时间、装置周围的障碍物信息确定装置的网络节点类型。
示例性地,确定模块可以用于,以加权的方式根据装置距离的总和、装置入网累计时间、装置周围的障碍物信息确定装置的选举值;以及,获取其他节点发送的各自的选举值,并比较装置自身的选举值与其他节点各自的选举值之间的大小。
在上述装置的选举值为最大值的情况下,确定模块用于确定自身为网络中的根节点;在装置的选举值不为最大值的情况下,确定模块用于确定自身不是网络中的根节点。
可选地,在上述装置不是网络中的根节点的情况下,确定模块还可以用于,在通信模块向网络中相邻节点发送接入请求的情况下,确定模块确定装置自身为相邻节点的子节点;
或者,在通信模块接收到相邻节点发送的接入请求的情况下,确定模块确定自身为相邻节点的父节点。
可选地,如图9所示,上述装置还可以包括:第一通信协议报文确定模块803;
第一通信协议报文确定模块,用于按照装置自身的设备类型和当前的工作状态构造第一通信协议报文。
可选地,通信模块还可以用于,按照装置自身的网络节点类型将第一通信协议报文发送至装置的子节点,和/或,装置的父节点。
可选地,第一通信协议报文确定模块还可以用于,在装置的设备类型为工作站的情况下,若装置当前的工作状态为空闲,则根据组播标志、空闲标志和空闲数据构造状态信息,并将状态信息封装为第一通信协议报文;或者,若装置当前的工作状态为忙碌,则根据单播标志、忙碌标志和忙碌数据构造状态信息,并将状态信息封装为第一通信协议报文。
可选地,第一通信协议报文确定模块还可以用于,在装置的设备类型为机器人的情况下,若装置当前的工作状态为异常状态,则根据组播标志、状态标志和异常数据构造状态信息,并将状态信息封装为第一通信报文;或者,若装置当前的工作状态为异常状态,则根据单播标志、状态标志和异常数据构造状态信息,并将状态信息封装为第一通信报文。
可选地,第一通信协议报文确定模块还可以用于,在装置的设备类型为机器人的情况下,若装置的当前工作状态为电量低,根据组播标志、命令标志和预约数据构造命令信息,并将命令信息封装为第一通信协议报文;
或者,在装置的设备类型为机器人的情况下,若装置的当前工作状态为电量低,根据单播标志、命令标志和预约数据构造命令信息,并将命令信息封装为第一通信协议报文。
可选地,在装置为工作站的情况下,第一通信协议报文确定模块还可以用于,在所述通信模块接收到多个命令信息的情况下,根据多个命令信息分别构造与多个命令信息对应的命令响应信息,并将命令响应信息封装为第一通信协议报文;
可选地,通信模块还可以用于根据多个命令信息的接收顺序依次分别向发送对应信息的节点发送第一通信协议报文。
上述网络中的通信装置可以执行图1-图7所提供的网络中节点通信方法,具备该方法中相应的器件和有益效果。
图10为本申请实施例提供的一种通信节点的结构示意图,如图10所示,该通信节点包括控制器1001、存储器1002、输入装置1003、输出装置1004;通信节点中控制器1001的数量可以是一个或多个,图10中以一个控制器1001为例;通信节点中的控制器1001、存储器1002、输入装置1003和输出装置1004可以通过总线或其他方式连接,图10中以通过总线连接为例。
存储器1002作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如图1实施例中的网络中节点通信方法对应的程序指令/模块(例如,网络中的通信装置的确定模块801、通信模块802)。控制器1001通过运行存储在存储器1002中的软件程序、指令以及模块,从而执行通信节点的各种功能应用以及数据处理,即实现上述的网络中节点通信方法。
存储器1002可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序;存储数据区可存储根据终端的使用所创建的数据等。此外,存储器1002可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器1002可进一步包括相对于控制器1001远程设置的存储器,这些远程存储器可以通过网络连接至终端/服务器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置1003可用于接收输入的数字或字符信息,以及产生与通信节点的用户设置以及功能控制有关的键信号输入。输出装置1004可包括显示屏等显示装置。
如图11所示,本申请实施例还提供一种包含计算机可读存储介质1101,该计算机可执行指令在由计算机处理器1102执行时用于执行一种网络中节点通信方法,该方法包括图1、图2所示的步骤。
在一种示例中,本申请实施例还提供了一种网络中节点通信***,该***包括至少两个通信节点,该至少两个通信节点可以为工作站,和/或,清洁机器人,两个通信节点中的任意一个通信节点可以执行上述图1-图7实施例中的网络中节点通信的方法。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本申请可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)实现本申请各个实施例所述的方法或功能。
注意,上述仅为本申请的较佳实施例及所运用技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请构思的情况下,还可以包括更多其他等效实施例,而本申请的范围由所附的权利要求范围决定。
Claims (13)
1.一种网络中节点通信的方法,其特征在于,包括:
任一节点根据自身节点信息与网络中其他节点的信息确定所述任一节点的网络节点类型;
所述任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;
所述第一通信协议报文中携带有命令信息或状态信息,所述状态信息与所述任一节点的设备类型相关,所述设备类型包括工作站或清洁机器人。
2.根据权利要求1所述的方法,其特征在于,所述任一节点根据自身节点信息与网络中其他节点的信息确定所述任一节点的网络节点类型,包括:
所述任一节点根据所述其他节点的位置信息分别确定所述其他节点至所述任一节点的距离;
所述任一节点根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的网络节点类型。
3.根据权利要求2所述的方法,其特征在于,所述任一节点根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的网络节点类型,包括:
所述任一节点以加权的方式根据所述距离的总和、所述任一节点入网累计时间、所述任一节点周围的障碍物信息确定所述任一节点的选举值;
所述任一节点获取所述其他节点发送的各自的选举值;
所述任一节点比较自身的选举值与所述其他节点各自的选举值之间的大小;
在所述任一节点的选举值为最大值的情况下,所述任一节点确定自身为网络中的根节点;
在所述任一节点的选举值不为最大值的情况下,所述任一节点确定自身不是网络中的根节点。
4.根据权利要求3所述的方法,其特征在于,在所述任一节点确定自身不是网络中的根节点的情况下,所述方法还包括:
在所述任一节点向网络中相邻节点发送接入请求的情况下,所述任一节点确定自身为所述相邻节点的子节点;
或者,在所述任一节点接收到相邻节点发送的接入请求的情况下,所述任一节点确定自身为所述相邻节点的父节点。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述任一节点按照自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信,包括:
所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文;
所述任一节点按照自身的网络节点类型将所述第一通信协议报文发送至所述任一节点的子节点,和/或,所述任一节点的父节点。
6.根据权利要求5所述的方法,其特征在于,在所述任一节点的设备类型为工作站的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
若所述任一节点当前的工作状态为空闲,则所述任一节点根据组播标志、空闲标志和空闲数据构造状态信息,并将所述状态信息封装为第一通信协议报文;
或者,若所述任一节点当前的工作状态为忙碌,则所述任一节点根据单播标志、忙碌标志和忙碌数据构造状态信息,并将所述状态信息封装为第一通信协议报文。
7.根据权利要求5所述的方法,其特征在于,在所述任一节点的设备类型为清洁机器人的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
若所述任一节点当前的工作状态为异常状态,则所述任一节点根据组播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文;
或者,若所述任一节点当前的工作状态为异常状态,则所述任一节点根据单播标志、状态标志和异常数据构造状态信息,并将所述状态信息封装为第一通信报文。
8.根据权利要求5所述的方法,其特征在于,在所述任一节点的设备类型为清洁机器人的情况下,所述任一节点按照自身的设备类型和当前的工作状态构造第一通信协议报文,包括:
在所述任一节点的当前工作状态为电量低的情况下,所述任一节点根据组播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文;
或者,在所述任一节点的当前工作状态为电量低的情况下,所述任一节点根据单播标志、命令标志和预约数据构造命令信息,并将所述命令信息封装为第一通信协议报文。
9.根据权利要求8述的方法,其特征在于,所述方法还包括:在所述任一节点为工作站的情况下,所述方法还包括:
在所述任一节点接收到多个命令信息的情况下,所述任一节点根据所述多个命令信息分别构造与所述多个命令信息对应的命令响应信息,并将所述命令响应信息封装为第一通信协议报文;
所述任一节点根据所述多个命令信息的接收顺序依次分别向发送对应信息的节点发送所述第一通信协议报文。
10.一种网络中的通信装置,其特征在于,包括:
确定模块,用于根据所述装置自身节点信息与网络中其他节点的信息确定所述装置的网络节点类型;
通信模块,用于按照所述装置自身的网络节点类型以第一通信协议报文与网络中的其他节点进行通信;
其中,所述第一通信协议报文中携带有命令信息或状态信息,所述状态信息与所述装置的设备类型相关,所述设备类型包括工作站或清洁机器人。
11.一种通信设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-9中任一项所述的网络中节点通信方法。
12.一种网络中节点通信***,其特征在于,包括至少两个通信节点,所述通信节点用于执行如权利要求1-9中任一项所述的网络中节点通信方法。
13.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1-9任一项所述的网络中节点通信的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110660986.5A CN113365253B (zh) | 2021-06-15 | 2021-06-15 | 一种网络中节点通信方法、装置、设备、***及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110660986.5A CN113365253B (zh) | 2021-06-15 | 2021-06-15 | 一种网络中节点通信方法、装置、设备、***及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113365253A true CN113365253A (zh) | 2021-09-07 |
CN113365253B CN113365253B (zh) | 2023-10-03 |
Family
ID=77534377
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110660986.5A Active CN113365253B (zh) | 2021-06-15 | 2021-06-15 | 一种网络中节点通信方法、装置、设备、***及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113365253B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114125996A (zh) * | 2021-11-25 | 2022-03-01 | 新华三技术有限公司成都分公司 | 应用于5g小站的网络拓扑结构发现方法及电子设备 |
CN114466081A (zh) * | 2021-12-23 | 2022-05-10 | 东莞市李群自动化技术有限公司 | 实时通道组的节点管控方法、***、设备及存储介质 |
CN115277742A (zh) * | 2022-02-23 | 2022-11-01 | 智能清洁设备控股有限公司 | 用于管理机器人的***和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162704A (zh) * | 2015-09-28 | 2015-12-16 | 杭州数梦工场科技有限公司 | Overlay网络中组播复制的方法及装置 |
CN107612743A (zh) * | 2017-10-11 | 2018-01-19 | 深圳天珑无线科技有限公司 | 网络拓扑信息收集方法、以及路由修复方法 |
CN108924768A (zh) * | 2018-06-13 | 2018-11-30 | 四川斐讯信息技术有限公司 | 一种智能设备的自组网方法和***及智能设备 |
WO2019084266A1 (en) * | 2017-10-26 | 2019-05-02 | Skylo Technologies Inc. | DYNAMIC MULTIPLE ACCESS FOR COMMUNICATION NETWORKS OF DISTRIBUTED DEVICES WITH PROGRAMMED AND UN PROGRAMMED TRANSMISSIONS |
CN111182557A (zh) * | 2020-02-25 | 2020-05-19 | 广州致远电子有限公司 | 一种基于树形网络的探测组网***、方法及存储介质 |
-
2021
- 2021-06-15 CN CN202110660986.5A patent/CN113365253B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105162704A (zh) * | 2015-09-28 | 2015-12-16 | 杭州数梦工场科技有限公司 | Overlay网络中组播复制的方法及装置 |
CN107612743A (zh) * | 2017-10-11 | 2018-01-19 | 深圳天珑无线科技有限公司 | 网络拓扑信息收集方法、以及路由修复方法 |
WO2019084266A1 (en) * | 2017-10-26 | 2019-05-02 | Skylo Technologies Inc. | DYNAMIC MULTIPLE ACCESS FOR COMMUNICATION NETWORKS OF DISTRIBUTED DEVICES WITH PROGRAMMED AND UN PROGRAMMED TRANSMISSIONS |
CN108924768A (zh) * | 2018-06-13 | 2018-11-30 | 四川斐讯信息技术有限公司 | 一种智能设备的自组网方法和***及智能设备 |
CN111182557A (zh) * | 2020-02-25 | 2020-05-19 | 广州致远电子有限公司 | 一种基于树形网络的探测组网***、方法及存储介质 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114125996A (zh) * | 2021-11-25 | 2022-03-01 | 新华三技术有限公司成都分公司 | 应用于5g小站的网络拓扑结构发现方法及电子设备 |
CN114466081A (zh) * | 2021-12-23 | 2022-05-10 | 东莞市李群自动化技术有限公司 | 实时通道组的节点管控方法、***、设备及存储介质 |
CN114466081B (zh) * | 2021-12-23 | 2024-04-12 | 东莞市李群自动化技术有限公司 | 实时通道组的节点管控方法、***、设备及存储介质 |
CN115277742A (zh) * | 2022-02-23 | 2022-11-01 | 智能清洁设备控股有限公司 | 用于管理机器人的***和方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113365253B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113365253B (zh) | 一种网络中节点通信方法、装置、设备、***及存储介质 | |
US9112779B2 (en) | Network system | |
US8185159B2 (en) | Wireless communication system | |
US20130123981A1 (en) | Swarm intelligence routing robot device and movement path control system using the same | |
KR20230019077A (ko) | 리소스 획득의 방법, 리소스 스케줄링의 방법, 단말기, 서비스 노드, 및 매체 | |
CN105225449A (zh) | 监控***及监控采集器 | |
CN112261087B (zh) | 一种配电物联网自组网方法及*** | |
CN110225512B (zh) | 一种蜂窝物联网的无线资源控制方法及*** | |
US20140293855A1 (en) | Wireless communication system and wireless router | |
WO2021197353A1 (zh) | 数据分流方法、装置、设备及介质 | |
CN101483901B (zh) | 一种用于无线传感器网络中间件的拓扑控制方法 | |
CN102006610B (zh) | 一种物联网***中节点的动态调整方法 | |
US10979865B2 (en) | Handling of devices based on group membership | |
CN105338008A (zh) | 一种用于物联网的设备调度方法、设备与*** | |
CN112188639B (zh) | 基于WiFi Mesh网络的通信方法及相关设备 | |
US11265798B2 (en) | Method and radio communication system for an industrial automation system | |
CN104853323A (zh) | 一种面向电力应急救援的分布式多链路同步通信处理方法 | |
CN109510656A (zh) | 一种适用于无人机群体的自适应数据分发方法 | |
WO2018104273A1 (en) | Method and device for obtaining resources and information of sdn networks of different operators | |
CN103796223B (zh) | 一种无线自组织网络的连通性修复方法 | |
Liu et al. | A framework for dynamic updating of service pack in the internet of things | |
CN109890058A (zh) | 一种大规模低流量数据源访问的网络自组织方法 | |
CN115484692B (zh) | 一种无人机与机器人集群协同通信的方法、设备及介质 | |
KR20140129662A (ko) | M2m 양방향 원격검침 시스템용 저전력 데이터 송/수신 방법 | |
CN214752277U (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 |