1.本发明实施例涉及智能机器人技术领域,尤其涉及一种多机协作的设备调度方法、装置、电子设备以及存储介质。
背景技术:2.随着建筑机器人的快速发展和建筑工地信息化建设的推广普及,多机协作作业是最主要的工作方式。其中调度系统是多机协作作业的关键技术,目前机器人的调度系统主要分为集中式和分散式两种,集中式调度系统数据汇聚的中央调度系统,统一对数据消息进行处理,然后对各个机器人再进行统一的调度;一旦中央调度系统出现故障,机器人的运动将受到灾难性后果(撞墙、机器人相撞、机器人停车)。分散式调度系统则避免了这种问题,各台机器之间都可以进行通信,它实现各自主移动机器人个体之间的分散管理和调度、自主感知决策和控制等,但是增加了网路的传输数据,容易造成信息堵塞滞后。
技术实现要素:3.本发明提供一种多机协作的设备调度方法、装置、电子设备以及存储介质,以实现解决集中式通信节点负载过多,冗余信息过多的问题,降低各机器人和云端管理系统的耦合度,提高通信效率。
4.第一方面,本发明实施例提供了一种多机协作的设备调度系统,该系统包括:云端管理系统、至少一个作业区域子系统,每一个所述作业区域子系统中分别包括至少一个作业设备,各所述作业区域子系统中分别包括一区域中心节点,其中:
5.所述云端管理系统,分别与各所述作业区域子系统的区域中心节点通信连接,用于获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统;
6.对于任一作业区域子系统中的区域中心节点,用于接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备;
7.对于任一作业区域子系统中的各作业设备,与当前作业区域子系统中区域中心节点通信连接,用于接收所述设备任务,并基于所述设备任务进行作业。
8.第二方面,本发明实施例还提供了一种多机协作的设备调度方法,该方法包括:
9.基于云端管理系统获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统;
10.基于作业区域子系统的区域中心节点接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备;
11.基于任一作业区域子系统中的各作业设备接收所述设备任务,并基于所述设备任务进行作业。
12.本发明实施例提供的技术方案具体包括:基于云端管理系统获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统,以实现通过作业区域子系统降低各作业设备和云端管理系统的耦合度;基于作业区域子系统的区域中心节点接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备;以解决集中式通信节点负载过多,冗余信息过多的问题,基于任一作业区域子系统中的各作业设备接收所述设备任务,并基于所述设备任务进行作业,并将作业状态信息通过中心区域节点上传至云端管理系统,实现提高通信效率。
附图说明
13.为了更加清楚地说明本发明示例性实施例的技术方案,下面对描述实施例中所需要用到的附图做一简单介绍。显然,所介绍的附图只是本发明所要描述的一部分实施例的附图,而不是全部的附图,对于本领域普通技术人员,在不付出创造性劳动的前提下,还可以根据这些附图得到其他的附图。
14.图1是本发明实施例一提供的一种多机协作的设备调度系统的结构示意图;
15.图2是本发明实施例一涉及的另一种多机协作的设备调度系统的结构示意图;
16.图3是本发明实施例三涉及的一种多机协作的设备调度方法的流程示意图。
具体实施方式
17.下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
18.实施例一
19.图1为本发明实施例一提供的一种多机协作的设备调度系统的结构图,本实施例可适用于对各作业区域进行作业的情况,具体的,可适用于在降低云端管理中心与各作业设备之间耦合度的情况下,进行各作业设备对应的作业任务进行作业的情况。如图1所示,该设备调度系统100具体包括云端管理系统110、至少一个作业区域子系统120,各所述作业区域子系统中包括一个区域中心节点121以及至少一个作业设备122,其中:
20.所述云端管理系统110,分别与各所述作业区域子系统的区域中心节点121通信连接,用于获取作业任务请求,基于所述作业任务请求生成各作业区域子系统120的区域任务,并将所述区域任务下发至对应的作业区域子系统120;
21.对于任一作业区域子系统中的区域中心节点121,用于接收所述云端管理系统110下发给当前作业区域子系统120的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统120中的各设备任务对应的各作业设备122;
22.对于任一作业区域子系统中的各作业设备122,与当前作业区域子系统的区域中心节点121通信连接,用于接收所述设备任务,并基于所述设备任务进行作业。
23.在本发明实施例中,作业任务请求可以是设备调度系统获取到的对待作业区域进行作业的任务请求,其中待作业区域的大小可以包括但不限于一个或者多个作业区域子系
统所述的作业区域。作业区域子系统是设备调度系统对应的作业区域中的部分作业区域,设备调度系统对应的作业区域包括至少一个作业区域子系统,通过作业区域子系统获取作业区域子系统中各作业设备的作业状态信息以及设备状态信息,并将该作业状态信息以及设备状态信息发送至云端管理系统,解决集中式通信节点负载过多,冗余信息过多的问题,通过增加区域中心子系统可以降低各机器人和云端管理系统的耦合度。
24.在本发明实施例中,云端管理系统分别与各所述作业区域子系统的区域中心节点通信连接,具体的,可以是4g等移动通信模块进行通信连接,云端管理系统可以基于任一通信方式获取各作业区域子系统的区域信息,例如包括区域位置、区域面积等区域信息。云端管理系统可以基于显示器获取用户输入的作业任务请求,该作业任务请求中包括但不限于待作业的作业区域、作业类型以及作业时限等作业状态信息。云端管理系统基于获取到的作业任务请求以及各作业区域子系统的区域信息生成各作业区域子系统的区域任务,并基于上述通信方式将各区域任务下发至对应的作业区域子系统。示例性的,例如获取到的作业任务请求是对整栋楼层进行喷涂的作业任务请求,则获取各作业区域子系统对应的楼层位置和面积,生成对应的区域任务,即完成某楼层的喷涂,并将各期区域任务下发至对应的作业区域子系统。
25.在本实施例中,每一个作业区域子系统中分别包括一个作业设备,以及每个作业区域子系统中包括一个区域中心节点。区域中心节点为基于所在作业区域子系统中的各作业设备的设备参数以及各设备参数的权重确定,其中,所述设备参数包括计算资源消耗参数、负载参数和通信参数中的一项或多项。
26.具体的,确定当前作业区域子系统中的区域中心节点的方法可以是:获取当前作业设备的设备参数以及设备参数对应的权重,基于各权重将各设备参数进行加权求和计算,得到当前作业设备的设备值,基于此方法计算当前作业区域子系统中的各作业设备的各设备值,对各设备值按设备值的大小进行排序,将排序位置第一对应的作业设备确定为区域中心节点。
27.在另一些实施例中,区域中心节点还用于在监测当前负载状态和资源消耗状态,若所述当前负载状态和/或资源消耗状态处于节点更新状态时,在所属作业区域子系统中的各作业设备中确定临时区域中心节点,所述临时区域中心节点用于基于所在作业区域子系统中的各作业设备的设备参数确定新的区域中心节点,解决因局部中心节点崩溃时整个作业区域子系统无法工作,此时会快速重新选举新的得分最高的区域中心节点接管作业区域子系统,增加了作业区域子系统的鲁棒性和稳定性。
28.其中,节点更新状态可以是当前区域中心节点对应的作业设备出现宕机或者当前作业设备的设备值在各作业设备中的排序位置在预设位置时所对应的状态,其中预设位置可以是最后一位,也可以是非第一位,本实施例对预设位置不加以限制。
29.具体的,区域中心节点在所属作业区域子系统中的各作业设备中确定临时区域中心节点的方法可以是将距离区域中心节点的作业设备距离最近的作业设备作为临时区域中心节点,当然还可以是随机确定当前作业区域子系统中的任一作业设备作为临时区域中心节点,本实施对于确定临时区域中心节点的方法不加以限制。
30.具体的,可以基于上述通信方式接收当前区域子系统的区域任务,根据所述区域任务的工序顺序和设备交通协调生成至少一个设备任务,基于所述作业区域子系统的各作
业设备的可执行任务、当前的作业状态信息和设备状态信息,向各作业设备分配设备任务,分别将各设备任务下发至当前作业区域子系统中各设备任务对应的作业设备。其中,设备任务是基于各作业设备将区域任务进行调度分配所生成的各作业设备对应的任务。例如可以是将获取到的某楼层的区域任务基于各作业设备的设备类型,生成打磨任务、喷涂任务、清洁任务以及通用物流任务等设备任务,并将各设备任务下发至各打磨设备、喷涂设备、清洁设备以及通用物流设备等作业设备。
31.在一些实施例中,区域中心节点还基于wifi组建局域网与当前区域中心节点所述的作业区域子系统中的各作业设备进行信息交互。本发明实施例中,基于wifi组建局域网的友谊效果在于解决了建筑工地网络覆盖率低导致个作业设备无法连接网络进行信息交互的问题,通过这种方式实现所有作业设备可以连接网络,可以和外部进行信息交互,同时这种方式并不需要所有作业设备都配备通信网络模块,降低了机器人成本。
32.具体的,当前作业区域子系统中的各作业设备在接收到区域中心节点发送的当前设备任务,并基于该设备任务进行作业。以当前作业区域子系统中的任一作业设备为例,当前作业设备在预设时间间隔获取所述作业设备在当前时刻的作业状态信息以及设备状态信息,并将所述作业信息以及设备状态信息基于wifi模块发送至所述作业设备所属的作业区域子系统的区域中心节点。当前作业设备所属的作业区域子系统的区域中心节点,还用于接收当前作业区域子系统中的各作业设备的作业状态信息以及设备状态信息,将所述各作业状态信息以及设备状态信息进行过滤整合处理,并将过滤整合后的作业状态信息以及设备状态信息发送至所述云端管理系统,提高了通信效率,并且使当前作业设备所属的作业区域子系统的区域中心节点以及云端管理系统及时了解各作业设备的作业状况以及设备状况。
33.本发明实施例提供的技术方案具体包括:基于云端管理系统获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统,以实现通过作业区域子系统降低各作业设备和云端管理系统的耦合度;基于作业区域子系统的区域中心节点接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备;以解决集中式通信节点负载过多,冗余信息过多的问题,基于任一作业区域子系统中的各作业设备接收所述设备任务,并基于所述设备任务进行作业,并将作业状态信息通过中心区域节点上传至云端管理系统,实现提高通信效率。
34.在上述实施例的基础上,本发明实施例还提供了一个可选实施例,如图2所述的另一种多机协作的设备调度方法的流程图所示,用于介绍本发明实施例中的设备调度系统从获取作业任务请求到完成作业任务的交互流程。具体的,如图2所示,云端管理系统用于获取作业任务请求,并基于该作业任务请求生成多个区域任务即图中的一级任务,并分别将多个区域任务下发至对应的作业区域子系统即图中的作业区域1、作业区域2以及作业区域3;作业区域子系统中的区域中心节点在接收到云端管理系统下发的区域任务时,根据当前作业区域子系统中的各作业设备即图中的作业区域1中的设备1、设备2,设备4,作业区域2中的设备3、设备4、设备5,以及作业区域3中的设备7、设备8、设备9,以及区域任务的工序顺序和设备交通协调审查各行至少一个设备任务即图中的二级任务,并将各设备任务对应的
下发至各作业设备;各作业设备根据接收到的设备任务进行作业,解决了集中式通信节点负载过多,冗余信息过多的问题,通过去增加区域中心节点降低了各作业设备和云端管理系统的耦合度。其中,当前作业区域子系统的区域中心节点是根据各作业设备的设备参数以及各设备参数的权重动态确定即图中的动态选举产生;并且在当前作业区域子系统的区域中心节点处于节点更新状态时,在当前作业区域子系统中的各作业设备中确定临时区域中心节点,该临时区域中心节点用于基于所在作业区域子系统中的各作业设备的设备参数确定新的区域中心节点,解决了区域中心节点崩溃时整个系统无法工作,此时会快速启动投票机制重新选举新的得分最高的区域中心节点接管当前作业区域子系统,增加了调度系统的鲁棒性和稳定性。进一步的,当前作业区域子系统的区域中心节点与各作业设备之间基于wifi模块组建的局域网进行信息交互,各作业设备可以基于该互联网将各作业设备在当前时刻的设备状态信息以及作业设备信息发送至区域中心节点;区域中心节点将接收到的各自作业设备的设备状态信息以及作业设备信息进行整合过滤后发送至云端管理系统,以使云端管理系统及时获知各作业设备的设备状态信息以及作业状态信息,解决了建筑工地网络覆盖率低导致作业设备无法连接网络的问题,通过这种方式实现所有作业设备可以连接网络,可以和外部进行信息交互,同时这种方式并不需要所有作业设备都配备。
35.实施例二
36.本实施例在上述各实施例的基础上,增加了“任一作业区域子系统的区域中心节点,还用于若存在未分配的设备任务,则根据未分配的设备任务确定跨区域调度请求,并将所述跨区域调度请求发送至所述云端管理系统;所述云端管理系统根据所述跨区域调度请求以及各作业区域子系统中作业设备的作业状态信息和设备状态信息,确定调度作业设备,并控制所述调度作业设备进行跨区域作业调度。”解决了作业设备因距离太远而无法实现跨作业区域工作,通过动态调整重组作业区域子系统,使得作业设备可以根据云端和局部中心的调度实现跨区作业,使资源更合理化的使用。其中,与上述各实施例相同或相应的术语的解释在此不再赘述。
37.在本发明实施例中,作业区域子系统还用于监测生成的所有设备任务是否分配完毕。若存在未分配的设备任务,则根据未分配的设备任务确定跨区域调度请求,并将所述跨区域调度请求发送至所述云端管理系统。其中,跨区域调度请求包括但不限于需要调度的作业设备数量、作业设备类型以及作业时间等请求内容。未分配任务可以是因为当前作业区域子系统中某种类型的作业设备部足以完成当前是作业区域子系统中该类型的设备任务,或者是当前作业区域子系统中缺乏某种类型的作业设备所导致没有分配完毕的设备任务。
38.云端管理系统根据所述跨区域调度请求以及各作业区域子系统中作业设备的作业状态信息和设备状态信息,确定调度作业设备,并控制所述调度作业设备进行跨区域作业调度。
39.具体的,区域中心节点根据设备任务的任务数量和类型以及当前作业区域子系统中的各作业设备的设备数量和类型确定未分配的设备任务,以及确定未分配设备任务所需要的作业设备的数量和类型,并根据区域任务的工序顺序和设备交通协调确定所需要的作业设备的作业时间。根据未分配的设备任务需要的作业设备的数量、类型以及工作时间等内容生成跨区域调度请求,并将该跨区域调度请求发送至云端管理系统。云端管理系统在
接收到任一区域中心节点发送的跨区域调度请求时,根据各区域节点中心发送的各作业区域子系统的作业设备的作业状态信息和设备状态信息,确定调度作业设备,并控制所述调度作业设备进行跨区域作业调度,提高资源利用率。
40.可选的,云端管理系统还可以根据各作业区域子系统的各作业设备的作业状态信息以及设备状态信息确定可调度的空闲作业设备,根据所述跨区域调度请求中的调度数量和设备任务类型在所述空闲作业设备中确定调度作业设备,并向所述调度作业设备所属的原作业区域子系统以及发出跨区域调度请求的目标作业区域子系统发送跨区域作业调度指令。
41.具体的,云端管理系统根据各作业区域子系统的各作业设备的作业状态信息以及设备状态信息以及跨区域调度请求中未分配的设备任务的作业时间确定在需要作业时刻处于空闲状态的各作业设备,并根据所述跨区域调度请求中的调度数量和设备任务类型在所述空闲作业设备中确定调度作业设备。根据确定的调度作业设备以及该作业设备所属的原作业区域子系统和发出跨区域调度请求的目标作业区域子系统生成调度指令,并将该调度指令分别发送至调度作业设备所属的原作业区域子系统以及发出跨区域调度请求的目标作业区域子系统。
42.具体的,调度作业设备所属的原作业区域子系统的区域中心节点在收到云端发送的跨区域作业调度指令时,冻结所述调度作业设备的设备信息,例如将该调度作业设备的设备信息存储在区域数据管理库中的预设位置,以实现减小区域中心节点的计算量,减小区域中心节点的运行压力。目标作业区域子系统的区域中心节点在接收到云端发送的跨区域作业调度指令时,添加所述调度作业设备的设备信息,例如,目标区域中心节点对该作业设备进行注册登记,在区域数据管理库中添加该作业设备的设备信息,以实现及时获知当前作业区域子系统中各作业设备的设备状态信息和作业状态信息。
43.在本发明实施例中,当存在未分配的设备任务时,业区域子系统的区域中心节点根据未分配的设备任务确定跨区域调度请求,并将所述跨区域调度请求发送至所述云端管理系统;云端管理系统根据所述跨区域调度请求以及各作业区域子系统中作业设备的作业状态信息和设备状态信息,确定调度作业设备,并控制所述调度作业设备进行跨区域作业调度,解决了作业设备因距离太远而无法实现跨作业区域工作,通过动态调整重组作业区域子系统,使得作业设备可以根据云端和区域中心节点的调度实现跨区作业,使资源更合理化的使用,提高资源利用率。
44.值得注意的是,上述多机协作的设备调度模块的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
45.以下是本发明实施例提供的多机协作的设备调度方法的实施例,该方法与上述各实施例的多机协作的设备调度系统属于同一个发明构思,在多机协作的设备调度方法的实施例中未详尽描述的细节内容,可以参考上述多机协作的设备调度系统的实施例。
46.实施例三
47.图3为本发明实施例三提供的多机协作的设备调度方法的流程图,本实施例可适用于对各作业区域进行作业的情况,具体的,可适用于在降低云端管理中心与各作业设备
之间耦合度的情况下,进行各作业设备对应的作业任务进行作业的情况。该方法可以由多机协作的设备调度系统来执行。
48.如图3所示,该方法具体包括如下步骤:
49.s210、基于云端管理系统获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统。
50.s220、基于作业区域子系统的区域中心节点接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备。
51.s230、基于任一作业区域子系统中的各作业设备接收所述设备任务,并基于所述设备任务进行作业。
52.在上述实施例的基础上,所述区域中心节点为基于所在作业区域子系统中的各作业设备的设备参数以及各设备参数的权重确定,其中,所述设备参数包括计算资源消耗参数、负载参数和通信参数中的一项或多项。
53.在上述实施例的基础上,所述区域中心节点还用于在监测当前负载状态和资源消耗状态,若所述当前负载状态和/或资源消耗状态处于节点更新状态时,在所属作业区域子系统中的各作业设备中确定临时区域中心节点,所述临时区域中心节点用于基于所在作业区域子系统中的各作业设备的设备参数确定新的区域中心节点。
54.在上述实施例的基础上,所述区域中心节点还用于基于wifi模块与所述区域中心节点所属的作业区域子系统中的各作业设备通信连接;
55.所述作业设备,还用于获取所述作业设备在当前时刻的作业状态信息以及设备状态信息,并将所述作业状态信息以及所述设备状态信息发送至所述作业设备所属的作业区域子系统的区域中心节点。
56.在上述实施例的基础上,所述任一作业区域子系统的区域中心节点,还用于接收当前作业区域子系统中的各作业设备的作业状态信息以及设备状态信息,将所述各作业状态信息以及所述设备状态信息进行过滤整合处理,并将过滤整合后的作业状态信息以及所述设备状态信息发送至所述云端管理系统。
57.在上述实施例的基础上,所述区域中心节点用于根据所述区域任务的工序顺序和设备交通协调生成至少一个设备任务,基于所述作业区域子系统的各作业设备的可执行任务、当前的作业状态信息和设备状态信息,向各作业设备分配设备任务。
58.在上述实施例的基础上,所述任一作业区域子系统的区域中心节点,还用于若存在未分配的设备任务,则根据未分配的设备任务确定跨区域调度请求,并将所述跨区域调度请求发送至所述云端管理系统;
59.所述云端管理系统根据所述跨区域调度请求以及各作业区域子系统中作业设备的作业状态信息和设备状态信息,确定调度作业设备,并控制所述调度作业设备进行跨区域作业调度。
60.在上述实施例的基础上,所述云端管理系,还用于根据各作业区域子系统的各作业设备的作业状态信息以及设备状态信息确定可调度的空闲作业设备,根据所述跨区域调度请求中的调度数量和设备任务类型在所述空闲作业设备中确定调度作业设备,并向所述调度作业设备所属的原作业区域子系统以及发出跨区域调度请求的目标作业区域子系统
发送跨区域作业调度指令。
61.在上述实施例的基础上,所述原作业区域子系统的区域中心节点,还用于在接收到云端发送的跨区域作业调度指令时,冻结所述调度作业设备的设备信息;以及,所述目标作业区域子系统的区域中心节点,还用于添加所述调度作业设备的设备信息。
62.本发明实施例提供的技术方案具体包括:基于云端管理系统获取作业任务请求,基于所述作业任务请求生成各作业区域子系统的区域任务,并将所述区域任务下发至对应的作业区域子系统,以实现通过作业区域子系统降低各作业设备和云端管理系统的耦合度;基于作业区域子系统的区域中心节点接收所述云端管理系统下发给当前作业区域子系统的区域任务,基于所述区域任务生成至少一个设备任务,并分别将各设备任务下发至当前作业区域子系统中的各设备任务对应的各作业设备;以解决集中式通信节点负载过多,冗余信息过多的问题,基于任一作业区域子系统中的各作业设备接收所述设备任务,并基于所述设备任务进行作业,并将作业状态信息通过中心区域节点上传至云端管理系统,实现提高通信效率。
63.注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。