多机器人协作的方法、系统以及主机器人、子机器人
文献发布时间:2023-06-19 19:00:17
技术领域
本发明实施例涉及智能技术领域,特别涉及多机器人协作的方法。本发明一个或者多个实施例同时涉及多机器人协作的系统、主机器人、子机器人、以及计算机可读存储介质。
背景技术
随着智能技术的发展,越来越多的商用场景下会使用机器人来提高工作效率,例如清洁机器人、除草机器人、物流机器人、探测机器人等等。智能技术给人们带来了更舒适、便捷、安全、健康的体验。
由于机器人的使用越来越广泛,机器人面临的工作环境也越来越复杂,导致目前的机器人难以在复杂的工作环境中充分发挥效率。
发明内容
有鉴于此,本发明施例提供了一种多机器人协作的方法。本发明一个或者多个实施例同时涉及一种多机器人协作的系统,一种主机器人,一种子机器人,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本发明实施例的第一方面,提供了一种多机器人协作的方法,应用于主机器人,包括:获取工作区域的环境信息;利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域;控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
可选地,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,包括:利用所述工作区域的环境信息将所述工作区域划分为空旷区域及非空旷区域,其中,所述空旷区域为主机区域,所述非空旷区域为子机区域。
可选地,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,包括:利用所述工作区域的环境信息将所述工作区域划分为越障区域及非越障区域,其中,所述越障区域为主机区域,所述非越障区域为子机区域。
可选地,所述主机器人及所述子机器人为清洁机器人、除草机器人、物流机器人、或者探测机器人。
可选地,所述主机器人的体积大于所述子机器人的体积,和/或者,所述主机器人的越障坡度上限大于所述子机器人的越障坡度上限。
可选地,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,包括:利用所述工作区域的环境信息,检测障碍物覆盖的区域;将所述障碍物覆盖的区域进行膨胀;利用膨胀后的区域将所述工作区域划分为主机区域及子机区域。
可选地,所述将所述障碍物覆盖的区域进行膨胀,包括:利用所述主机器人的体积、移动速度和/或刹车距离将所述障碍物所在区域进行膨胀。
可选地,还包括:采集全局定位信息,将所述全局定位信息发送给所述子机器人,使所述子机器人接收所述主机器人发送的全局定位信息以及采集所述子机器人所在范围的局部定位信息,使所述子机器人根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位;和/或,采集全局定位信息以及接收子机器人发送的局部定位信息,根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位。
可选地,还包括:当所述子机器人从一个子机区域向另一个子机区域移动时,感知所述子机器人,主动避让所述子机器人;或者,当所述子机器人从一个子机区域向另一个子机区域移动时,通过与所述子机器人通信,引导所述子机器人避让所述主机器人和/或其他子机器人。
可选地,还包括:响应于所述子机器人的充电连接,为所述子机器人充电;和/或,响应于所述子机器人的补给请求,为所述子机器人添加补给物;和/或,响应于所述子机器人的上交请求,收纳所述子机器人上交的收集物。
根据本发明实施例的第二方面,提供了一种多机器人协作的方法,应用于子机器人,包括:接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的;根据所述引导信息移动到所述子机区域工作。
可选地,还包括:当感知所述子机器人的电量不足时,运动至所述主机器人的充电位置,与所述主机器人相连以进行充电;和/或,当感知所述子机器人工作所需补给物不足时,运动至所述主机器人下发补给物的位置添加补给物;和/或,当感知所述子机器人工作所收集的收集物已满时,运动至所述主机器人的收纳位置上交收集物。
可选地,还包括:接收所述主机器人发送的全局定位信息,以及,采集所述子机器人所在范围的局部定位信息,根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位;和/或,向所述主机器人发送局部定位信息,使所述主机器人根据自身采集的全局定位信息以及所述局部定位信息进行所述子机器人的定位。
可选地,还包括:当所述子机器人从一个子机区域向另一个子机区域移动时,感知所述主机器人和/或其他子机器人,主动避让所述主机器人和/或其他子机器人;或者,当所述子机器人从一个子机区域向另一个子机区域移动时,通过与所述主机器人通信,引导所述主机器人和/或其他子机器人避让所述子机器人。
可选地,还包括:当子机器人进入所述子机区域后,在所述子机区域的边界之间往返式地行走前进,直到所述子机区域完成初步覆盖结束行走;对所述初步覆盖过程中未被覆盖到的一个或多个子区域进行记录;当子机器人完成初步覆盖之后,向未被覆盖到的一个子区域行走;当子机器人到达所述子区域后,在所述子区域的边界之间往返式地行走前进直到所述子区域完成覆盖,如果记录的子区域中还有未被覆盖到的,返回到所述向未被覆盖到的一个子区域行走的步骤,直到记录的子区域全部完成覆盖结束行走。
可选地,所述往返式地行走前进,包括:朝第一方向直线行走到达第一边界;沿着所述第一边界向目标方位行走一段距离后,向所述第一方向相反的方向直线行走到达第二边界;沿着所述第二边界向目标方位行走一段距离后,返回到所述朝第一方向直线行走到达第一边界的步骤。
可选地,所述向未被覆盖到的一个子区域行走,包括:以所述子机器人当前所在位置为出发点,以距离所述出发点最近的、未被覆盖到的一个子区域的最近位置点为目标点,确定所述出发点到所述目标点的最短路径;控制子机器人沿所述最短路径行走到达所述目标点。
根据本发明实施例的第三方面,提供了一种主机器人,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:获取工作区域的环境信息;利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域;控制主机器人在所述主机区域工作,以及,向子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
根据本发明实施例的第四方面,提供了一种子机器人,包括:存储器和处理器;所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的;根据所述引导信息移动到所述子机区域工作。
根据本发明实施例的第五方面,提供了一种多机器人协作的系统,包括:至少一个主机器人以及至少一个子机器人;所述主机器人,被配置为获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作;所述子机器人,被配置为接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的,根据所述引导信息移动到所述子机区域工作。
根据本发明实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机指令,该计算机指令被处理器执行时实现本发明任意实施例所述多机器人协作的方法的步骤。
本发明一个实施例提供了机器人协作的方法,由于该方法中主机器人获取工作区域的环境信息之后,根据所述主机器人与子机器人工作效率的区别,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作,因此,即使面临复杂的工作环境,主机器人和子机器人在主机器人的控制和引导之下,能够各自在充分发挥工作效率的区域工作,从而综合提升机器人整体的工作效率,满足商用复杂工作场景下对效率的需求。
附图说明
图1是本发明一个实施例提供的一种多机器人协作的方法的流程图;
图2是本发明一个实施例提供的清洁机器人场景示意图;
图3是本发明一个实施例提供的工作区域划分过程示意图;
图4是本发明另一个实施例提供的一种多机器人协作的方法的流程图;
图5是本发明一个实施例提供的机器人行走路径示意图;
图6是本发明另一个实施例提供的机器人行走路径示意图;
图7是本发明一个实施例提供的一种多机器人协作的系统的结构示意图;
图8是本发明一个实施例提供的一种机器人的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
在本发明一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明一个或多个实施例。在本发明一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本发明一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在本发明中,提供了一种多机器人协作的方法,一种多机器人协作的系统,一种主机器人,一种子机器人,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
图1示出了根据本发明一个实施例提供的一种多机器人协作的方法的流程图,包括步骤102至步骤106。
步骤102:获取工作区域的环境信息。
例如,主机器人可以通过自主建图或者人工建图的方式获取工作区域的环境信息。
步骤104:利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域。
步骤106:控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
其中,所述引导信息例如可以包括:子机区域的工作地图、到达子机区域的路径、或子机区域所在方位、子机器人在子机区域工作的指定工作模式等任意能够帮助子机器人移动到子机区域工作的引导信息。可以理解的是,本发明实施例提供的方法中,并不限制主机器人在某些情况下移动到子机区域进行一些相关配合,例如,主机器人可以主动到达子机区域某个位置进行为子机器人充电等续航工作。相应地,子机器人也可以根据自身需要或者受主机器人引导移动到主机区域进行充电等配合工作。
由于该方法中主机器人获取工作区域的环境信息之后,根据所述主机器人与子机器人工作效率的区别,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作,因此,即使面临复杂的工作环境,主机器人和子机器人在主机器人的控制和引导之下,能够各自在充分发挥工作效率的区域工作,从而综合提升机器人整体的工作效率,满足商用复杂工作场景下对效率的需求。
需要说明的是,本发明实施例对于主机区域与子机区域的划分方式,具体可根据主、子机器人的工作效率与环境的对应关系确定,本发明对此并不进行限制。为了充分发挥各自的工作效率,可以对环境信息进行分析,根据环境与工作效率之间的对应关系,也即主机器人与子机器人各自发挥高效工作效率时所适宜的环境,对应划分主机区域及子机区域。可以理解的是,划分之后,所述主机器人在所述主机区域的工作效率一般大于所述子机器人在所述主机区域的工作效率,或者,所述子机器人在所述子机区域的工作效率一般大于所述主机器人在所述子机区域的工作效率。
例如,在本发明实施例中,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,可以包括:
利用所述工作区域的环境信息将所述工作区域划分为空旷区域及非空旷区域,其中,所述空旷区域为主机区域,所述非空旷区域为子机区域。在该实施例中,是根据所述主机器人在空旷环境下的工作效率大于子机器人在空旷环境下的工作效率,所述子机器人在非空旷环境下的工作效率大于主机器人在非空旷环境下的工作效率来进行工作区域划分的。
再例如,在本发明实施例中,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,可以包括:
利用所述工作区域的环境信息将所述工作区域划分为越障区域及非越障区域,其中,所述越障区域为主机区域,所述非越障区域为子机区域。在该实施例中,是根据所述主机器人在越障环境下的工作效率大于子机器人在越障环境下的工作效率,所述子机器人在非越障环境下的工作效率大于主机器人在非越障环境下的工作效率来进行工作区域划分的。
本发明实施例的应用场景不限,例如,所述主机器人及所述子机器人可以是清洁机器人、除草机器人、物流机器人、或者探测机器人等。下面,结合上述划分工作区域的方式,以这些应用场景为例对本发明实施例提供的方法进行示意性说明。
例如,在如图2所示的清洁机器人的场景下,为了满足续航需求,机器人在各方面配置上比较充分,例如,电池、清洁液储备装置、垃圾收纳装置等都比较大,因此体积比较大。这就导致了如椅子底下,垃圾桶,绿植,广告牌等一些狭窄低矮区域、障碍物较多的区域,体积大的机器人在工作过程中经常需要进行刹车躲避的行为,且大机器人转弯半径大,转弯效率低,这些情况严重影响了清洁机器人的工作效率,而且还存在清洁死角,降低了覆盖率。有鉴于此,根据本发明实施例提供的方法,可以设置体积小于主清洁机器人的子清洁机器人跟随或携带在主清洁机器人上。
由于在该应用场景中,在障碍物少的空旷区域,主清洁机器人相对于子机器人工作效率高,在障碍物多的非空旷区域,子清洁机器人相对于主清洁机器人工作效率高,因此,主清洁机器人可以利用所述工作区域的环境信息进行障碍物的分析,将工作区域划分为空旷区域及非空旷区域,其中,空旷区域用作主机区域,非空旷区域用作子机区域。例如,清洁机器人可以包含至少一个主清洁机器人和一个子清洁机器人,其中子清洁机器人体型较小,运动灵活,能够进出狭窄低矮区域,主要用来清洁障碍物较多的非空旷区域,主清洁机器人负责清洁空旷区域。例如,主清洁机器人续航可以满足大场景要求,并且在空旷区域运行相比小机器人有效率优势,子清洁机器人因续航原因无法满足商用场景下全覆盖清洁任务,所以子清洁机器人可以只用来清洁非空旷区域。因此,在清洁机器人的场景下,针对单一清洁机器人无法做到区域全覆盖、续航以及效率的全兼顾,通过采用多机器人协作的方式,主清洁机器人在空旷区域工作,以及,向子清洁机器人发送在非空旷区域工作的引导信息,使所述子清洁机器人根据所述引导信息移动到所述非空旷区域工作,既能发挥大机器人续航和在空旷区域的效率优势,又能发挥小机器人在复杂的非空旷区域覆盖率高、运动灵活、效率高的优势,解决了大场景下续航和效率问题以及清洁死角问题。
例如,在除草机器人的场景下,为了满足草地高低起伏的环境下移动的需要,机器人在越障能力上的配置要求比较高,例如,需要高性能的驱动、底盘等配置,带来较大的配置成本。有鉴于此,根据本发明实施例提供的方法,可以设置一台或多台一般越障能力的子除草机器人跟随或携带在具有高性能越障能力的主除草机器人上,以降低成本。由于在该应用场景中,对于高低起伏少的非越障区域,无需高性能越障能力的子除草机器人就可以进行除草任务,对于高低起伏多的越障区域,主除草机器人可以携带或带动子除草机器人通过越障区域和进行越障区域的除草工作。因此,主除草机器人可以利用所述工作区域的环境信息进行障碍物的分析,将工作区域划分为越障区域及非越障区域,其中,越障区域用作主机区域,非越障区域用作子机区域。进而,主除草机器人可以在越障区域进行除草工作,以及,携带或带动除草子机器人通过越障区域,向子除草机器人发送在非越障区域工作的引导信息,使所述子除草机器人根据所述引导信息脱离主除草机器人到所述非越障区域工作。在该实施例中,对于具有高性能越障能力的主除草机器人来说,不仅可以在多台子除草机器人中任意一台需要通过越障区域时携带或带动子除草机器人通过越障区域并除草,还可以在无需帮助子除草机器人越障时,在非越障区域继续进行除草工作。
与除草机器人类似的,清洁机器人、物流机器人与探测机器人的工作环境也有类似的越障需求以及保证工作效率前提下的成本要求。例如,物流机器人可能是送货、上菜等物流任务的机器人,其工作环境中可能有楼梯等越障区域。再例如,探测机器人在户外环境中也可能有陡峭起伏的地面。因此,根据本发明实施例提供的方法,清洁机器人、物流机器人或探测机器人同样可以采用主机器人与子机器人协作的方式,主机器人在越障区域工作,以及,携带或带动子机器人通过越障区域,向子机器人发送在非越障区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述非越障区域工作。可见,根据本发明实施例提供的方法,在越障能力要求高的环境下,采用高性能越障能力的主机器人和子机器人协作的方式,既能发挥主机器人续航和在越障能力的效率优势,又能发挥子机器人运动灵活、成本低、效率高的优势。
根据上述实施例可见,本发明实施例中,所述主机器人的体积可以大于子机器人的体积,和/或,所述主机器人的越障坡度上限大于所述子机器人的越障坡度上限。由于主机器人的体积大于子机器人、越障坡度上限大于子机器人的越障坡度上限,主机器人能够配置更大的电池、更大的物料箱如清洁液箱、水箱、更大的轮子等来实现长续航、高效地工作;子机器人能够更加灵活高效地工作并借助主机器人实现长续航、爬坡越障,从而整体上提升机器人的工作效率。
本发明实施例提供的方法中,主机器人与子机器人作为一个整体的外观样式不限。例如,主机器人可以设置有用于携带子机器人的收纳空间,子机器人不工作时,可以收纳于主机器人之上,在需要子机器人工作时,子机器人可以与主机器人脱离,分别工作。再例如,主机器人可以设置有带动子机器人移动的连接装置,子机器人需要越障时,可以与主机器人通过连接装置实现硬件上的连接。主机器人带动子机器人越障后,子机器人可以与主机器人脱离,分别工作。又例如,子机器人与主机器人可以不具有硬件上的连接,子机器人与主机器人通过通信的方式使子机器人伴随在主机器人附近,与主机器人协作进行工作。除了这些,主机器人与子机器人还可以有其他外观样式,具体可以根据应用场景需要设置,在此不再一一赘述。
为了能够充分发挥主机器人以及子机器人各自的工作效率,本发明一个或多个实施例中,所述利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,可以包括:利用所述工作区域的环境信息,检测障碍物覆盖的区域;将所述障碍物覆盖的区域进行膨胀,利用膨胀后的区域将所述工作区域划分为主机区域及子机区域。
例如,对于将工作区域划分为空旷区域和非空旷区域的实施方式来说,可以将机器人需要躲避的障碍物覆盖的区域进行膨胀,原障碍物覆盖的区域以及膨胀出的区域为子机区域,主机区域可以是工作区域中除了子机区域以外的区域。
该实施例针对主机器人和子机器人体积上的区别,考虑到体积小的子机器人躲避障碍物对工作效率影响小,体积大的主机器人躲避障碍物对工作效率影响大,通过膨胀来划分区域,减少了主机器人躲避障碍物的减速行为,进一步提高了工作效率。
再例如,对于将工作区域划分为越障区域和非越障区域的实施方式来说,可以将机器人需要越过的障碍物覆盖的区域进行膨胀,障碍物原覆盖的区域以及膨胀出的区域为主机区域,子机区域可以是工作区域中除了主机区域以外的区域。
该实施例针对主机器人和子机器人越障能力上的区别,由于子机器人需要在越过障碍物之前装或携带在主机器人上,通过膨胀进行区域划分为主机器人发挥工作效率提供了空间,进一步提高了工作效率。
需要说明的是,本发明实施例提供的方法对如何对障碍物覆盖的区域进行膨胀并不进行限制,可以根据实施场景需要设置膨胀方式或大小。由于主机器人的体积、移动速度和/或刹车距离,对躲避或越过障碍所需要的空间有比较大的影响,因此,可以利用所述主机器人的体积、移动速度和/或刹车距离将所述障碍物覆盖的区域进行膨胀。例如,主机器人需要1m的刹车距离,则可以对障碍物覆盖的区域膨胀出1m。再例如,主机器人的身体宽度为1.5m,则可以对账务覆盖的区域膨胀出1.5m。膨胀后,障碍物原覆盖的区域和膨胀出的区域即为非空旷区域,除此以外,为空旷区域;障碍物如陡坡原覆盖的区域和膨胀出的区域即为越障区域,除此以外,为非越障区域。
例如,如图3所示的工作区域划分过程示意图所示,主机器人自主建图或者人工建图的方式预先建立如图3所示的地图301。主机器人对地图301中的环境信息进行分析,确定了障碍物覆盖的区域(图3所示的地图301中,字母A覆盖的区域用于示意障碍物覆盖的区域)。例如,主机器人可以根据主机器人的体积、移动速度和/或刹车距离确定需要膨胀出的空间大小,将障碍物覆盖的区域进行膨胀(图3所示的地图302中,箭头用于示意膨胀的方向)。膨胀处理后,得到地图303(图3所示的地图303中,阴影部分用于示意膨胀出的区域)。例如,在清洁机器人的场景中,主机器人将障碍物原覆盖的区域以及膨胀出的区域一块划分为非空旷区域(图3所示的地图303中,虚线框内部的区域为非空旷区域),将非空旷区域以外的区域划分为空旷区域(图3所示的地图303中,虚线框外部的区域为空旷区域)。再例如,在除草机器人的场景中,主机器人将障碍物原覆盖的区域以及膨胀出的区域一块划分为越障区域(图3所示的地图303中,虚线框内部的区域为越障区域),将越障区域以外的区域划分为非越障区域(图3所示的地图303中,虚线框外部的区域为非越障区域)。
另外,为了使机器人定位更加准确,本发明一个或多个实施例中,多机器人之间可以辅助定位。具体地,例如,本发明实施例提供的方法还可以包括:主机器人采集全局定位信息,将所述全局定位信息发送给所述子机器人,使所述子机器人接收所述主机器人发送的全局定位信息,以及,采集所述子机器人所在范围的局部定位信息,根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位;和/或,主机器人采集全局定位信息,以及,接收子机器人发送的局部定位信息,根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位。例如,主机器人可以进行全局定位,子机器人跟随主机器人并在主机器人附近进行小范围的局部定位即可。在该实施例中,考虑到子机器人激光雷达可能距离近,定位准确度有限,主机器人激光雷达距离远,把全局定位信息发给子机器人,子机器人可以根据局部定位信息和全局定位信息准确确定位置,例如,辅助定位可以在任务开始时执行。
在实际应用场景中,一般主机器人和子机器人工作的路径不会交叉,但是也有可能存在交叉的情况。例如,工作区域中存在两个非空旷区域,分布在工作区域的左下角和右上角,在这种情况下,子机器人可能需要跨区域移动。为了避免机器人跨区域移动时发生碰撞,本发明一个或多个实施例中,主机器人通过感应或与子机器人通信避免碰撞。具体地,例如,该方法还可以包括:当所述子机器人从一个子机区域向另一个子机区域移动时,感知所述子机器人,主动避让所述子机器人;或者,当所述子机器人从一个子机区域向另一个子机区域移动时,通过与所述子机器人通信,引导所述子机器人避让所述主机器人和/或其他子机器人。其中,所述感知可以通过机器人之间的通信感知,也可以通过一些感应设备来感知。
为了解决续航问题,本发明一个或多个实施例中,所述主机器人还可以响应于所述子机器人的充电连接,为所述子机器人充电;和/或,响应于所述子机器人的补给请求,为所述子机器人添加补给物;和/或,响应于所述子机器人的上交请求,收纳所述子机器人上交的收集物。
例如,在清洁机器人的应用场景下,主清洁机器人可以作为移动基站,为子清洁机器人充电、添加清洁液、收集垃圾等。主清洁机器人按需还可以进一步回到固定基站充电、添加清洁液、收集垃圾。再例如,在上菜机器人的应用场景下,主清洁机器人可以作为移动上菜平台,为子上菜机器人充电、添加菜品、收集餐具等。
可以理解的是,主机器人和子机器人为了实现充电、添加补给物、收纳收集物等协作,可以设置一些具有相应运动方式的硬件配件以达到需要的协作效果,例如,充电口的对接动作、补给物的传递动作、收集物的收取动作等等,在此不再详细赘述。
与上述应用于主机器人的多机器人协作的方法相应地,本发明还提供了应用于子机器人的多机器人协作的方法。图4示出了根据本发明另一个实施例提供的一种多机器人协作的方法的流程图,包括步骤402至步骤404。
步骤402:接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的。
步骤404:根据所述引导信息移动到所述子机区域工作。
由于该方法中主机器人获取工作区域的环境信息之后,根据所述主机器人与子机器人工作效率的区别,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作,因此,即使面临复杂的工作环境,主机器人和子机器人在主机器人的控制和引导之下,能够各自在充分发挥工作效率的区域工作,从而综合提升机器人整体的工作效率,满足商用复杂工作场景下对效率的需求。
为了解决续航问题,本发明一个或多个实施例中,所述该方法还可以包括:当子机器人感知所述子机器人的电量不足时,运动至所述主机器人的充电位置,与所述主机器人相连以进行充电;和/或,当子机器人感知所述子机器人工作所需补给物不足时,运动至所述主机器人下发补给物的位置添加补给物;和/或,当子机器人感知所述子机器人工作所收集的收集物已满时,运动至所述主机器人的收纳位置上交收集物。
另外,为了使机器人定位更加准确,本发明一个或多个实施例中,多机器人之间可以辅助定位。具体地,例如,子机器人可以接收所述主机器人发送的全局定位信息,以及,采集所述子机器人所在范围的局部定位信息,根据所述全局定位信息以及所述局部定位信息进行所述子机器人的定位;和/或,子机器人向所述主机器人发送局部定位信息,使所述主机器人根据自身采集的全局定位信息以及所述局部定位信息进行所述子机器人的定位。
在实际应用场景中,一般主机器人和子机器人工作的路径不会交叉,但是也有可能存在交叉的情况。了避免机器人跨区域移动时发生碰撞,本发明一个或多个实施例中,该方法还包括:当所述子机器人从一个子机区域向另一个子机区域移动时,感知所述主机器人和/或其他子机器人,主动避让所述主机器人和/或其他子机器人;或者,当所述子机器人从一个子机区域向另一个子机区域移动时,通过与所述主机器人通信,引导所述主机器人和/或其他子机器人避让所述子机器人。
另外,本发明一个或多个实施例中,还进一步通过优化机器人行走的方式来提高机器人工作的覆盖率、工作效率。具体地,例如,该方法还可以包括:当子机器人进入所述子机区域后,在所述子机区域的边界之间往返式地行走前进,直到所述子机区域完成初步覆盖结束行走;对所述初步覆盖过程中未被覆盖到的一个或多个子区域进行记录;当子机器人完成初步覆盖之后,向未被覆盖到的一个子区域行走;当子机器人到达所述子区域后,在所述子区域的边界之间往返式地行走前进直到所述子区域完成覆盖,如果记录的子区域中还有未被覆盖到的,返回到所述向未被覆盖到的一个子区域行走的步骤,直到记录的子区域全部完成覆盖结束行走。
在该实施例中,针对子机区域中可能有更多障碍物,不仅难以覆盖而且需要频繁躲避障碍物进行刹车减速等行为导致工作效率低下的问题,先在子机区域的边界之间以往返式地行走前进到目标方位,忽略障碍物之间的阻隔带来的子区域,使子机区域以较快速度先完成初步覆盖,之后,再进入到障碍物之间未被覆盖到的一个或多个子区域往返行走进行更细致地覆盖,有效减少了子机器人减速避障行为,提高了机器人工作的覆盖率及工作效率。
需要说明的是,本发明实施例提供的方法对于往返式地行走的具体行走方式不限。例如,可以如图5所示的之字形路径行走,也可以如图6所示的凹凸形路径行走。例如,本发明一个或多个实施例中,采用了如图6所示的凹凸性路径行走。具体地,所述往返式地行走前进,包括:朝第一方向直线行走到达第一边界;沿着所述第一边界向目标方位行走一段距离后,向所述第一方向相反的方向直线行走到达第二边界;沿着所述第二边界向目标方位行走一段距离后,返回到所述朝第一方向直线行走到达第一边界的步骤。另外,在本发明实施例提供的方法中,主机器人可以与子机器人采用相同或不同的行走方式,在此不再详细赘述。
其中,沿边界行走的距离可以根据实际情况进行确定,例如,在没有障碍物阻碍转向的情况下,可以按照预设的一段固定距离行走,在有障碍物阻碍转向的情况下,可以沿边界行走至障碍物不再阻挡转向,再转向行走。例如,如图6所示的行走路径,子机器人先朝子机区域的边界601向下直线行走,到达边界601之后,沿边界601向目标方位行走一段距离后,转向向上直线行走,到达边界602(此处边界是区域的虚拟边界,并不是环境中实际存在的墙体或者其他实体边界)之后,沿边界602行走一段距离后受到障碍物603的阻挡,一直行走至无障碍物603阻挡的位置再转向继续向下直线行走。由于子机器人在初步覆盖的过程中,是在边界之间往返行走,因此,在子机器人行走至障碍物604的边界时,受到障碍物阻挡沿边界行走一段距离没有阻挡时,再转向向下行走,并继续在上下边界之间按照往返的方式行走,直到完成初步覆盖。可见,在初步覆盖之后,障碍物之间存在未被覆盖的子区域605和子区域606(如图6中虚线框所示的区域)。子机器人首先到达未被覆盖的子区域605,在子区域605内进行往返式地行走以覆盖子区域605,然后再到达未被覆盖的子区域606,在子区域606内进行往返式地行走以覆盖子区域606。可以理解的是,如图6所示行走路径仅用于对该实施例进行示意性说明,在实际应用各种,既可以如图6所示纵向地往返式行走,也可以横向地往返式行走,还可以按照实际需要以其他方向行走,本发明实施例对此并不进行限制。
为了能够提高机器人的工作效率,本发明一个或多个实施例中,子机器人在向未被覆盖到的一个子区域移动时,采用最短路径的方式行走。具体地,所述向未被覆盖到的一个子区域行走,包括:以所述子机器人当前所在位置为出发点,以距离所述出发点最近的、未被覆盖到的一个子区域的最近位置点为目标点,确定所述出发点到所述目标点的最短路径;控制子机器人沿所述最短路径行走到达所述目标点。
与上述方法实施例相对应,本发明还提供了多机器人协作的系统实施例。
图7示出了本发明一个实施例提供的多机器人协作的系统的结构示意图。如图7所示,该系统包括:至少一个主机器人702以及至少一个子机器人704。
所述主机器人702,可以被配置为获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域,控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
所述子机器人704,可以被配置为接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的,根据所述引导信息移动到所述子机区域工作。
上述为本实施例的多机器人协作的系统的示意性方案。需要说明的是,该多机器人协作的系统的技术方案与上述的多机器人协作的方法的技术方案属于同一构思,多机器人协作的系统的技术方案未详细描述的细节内容,均可以参见上述多机器人协作的方法的技术方案的描述。
图8示出了根据本发明一个实施例提供的一种机器人800的结构框图。该机器人800的部件包括但不限于存储器810和处理器820。处理器820与存储器810通过总线830相连接,数据库850用于保存数据。
机器人800还包括接入设备840,接入设备840使得机器人800能够经由一个或多个网络860通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备840可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本发明的一个实施例中,机器人800的上述部件以及图8中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图8所示的机器人结构框图仅仅是出于示例的目的,而不是对本发明范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
机器人800可以是任何类型的机器人,包括移动计算机或移动机器人(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本、清洁机器人、物流机器人、除草机器人、探测机器人等)、移动电话(例如,智能手机)、可佩戴的机器人(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止机器人。机器人800还可以是移动式或静止式的服务器。
一方面,在本发明提供的主机器人的实施例中,处理器820用于执行如下计算机可执行指令:
获取工作区域的环境信息;
利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域;
控制所述主机器人在所述主机区域工作,以及,向所述子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
另一方面,在本发明提供的子机器人的实施例中,处理器820用于执行如下计算机可执行指令:
接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的;
根据所述引导信息移动到所述子机区域工作。
上述为本实施例的一种机器人的示意性方案。需要说明的是,该机器人的技术方案与上述的多机器人协作的方法的技术方案属于同一构思,机器人的技术方案未详细描述的细节内容,均可以参见上述多机器人协作的方法的技术方案的描述。
本发明一实施例还提供一种计算机可读存储介质,其存储有计算机指令。
一方面中,该指令被处理器执行时以用于:
获取工作区域的环境信息;
利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域;
控制主机器人在所述主机区域工作,以及,向子机器人发送在所述子机区域工作的引导信息,使所述子机器人根据所述引导信息移动到所述子机区域工作。
另一方面中,该指令被处理器执行时以用于:
接收主机器人发送的在子机区域工作的引导信息,其中,所述引导信息是所述主机器人获取工作区域的环境信息,利用所述工作区域的环境信息将所述工作区域划分为主机区域及子机区域后发送的;
根据所述引导信息移动到所述子机区域工作。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的多机器人协作的方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述多机器人协作的方法的技术方案的描述。
上述对本发明特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本发明实施例所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本发明优选实施例只是用于帮助阐述本发明。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本发明实施例的内容,可作很多的修改和变化。本发明选取并具体描述这些实施例,是为了更好地解释本发明实施例的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。
- 一种人机协作型眼科显微手术辅助机器人系统操作方法
- 协作机器人构建方法、系统、移动终端及存储介质
- 一种基于行走机器人灯光指示的协作系统、方法及装置与终端和存储介质
- 通用协作机器人、机器人系统及通用协作机器人执行操作任务的方法
- 通用协作机器人、机器人系统及通用协作机器人执行操作任务的控制方法