用于避免两个机器人之间的碰撞的方法与流程

文档序号:11282499阅读:1310来源:国知局
用于避免两个机器人之间的碰撞的方法与流程

本发明涉及包括具有重叠工作区域的机器人的机器人系统中的碰撞避免。



背景技术:

在本公开中,术语“工作区域”用于表示机器人工具可以在其中操作的体积,该体积受机器人的机械结构约束。以前已知通过使机器人分离到足以使得它们的工作区域不重叠来避免它们之间的碰撞。然而,这样的机器人系统具有其占地空间变大的缺陷。为了减小占地空间,机器人彼此靠近使得它们的工作区域重叠。提供了不同的解决方案以避免具有重叠工作区域的机器人系统中的碰撞。例如,可以通过软件将机器人的工作范围限制为小于工作区域。由此可以在机器人之间限定出不允许机器人在其中操作的缓冲区,使得它们永远不会彼此碰撞。然而,在这样的机器人系统中机器人的工作区域没有被充分地利用。另一缺陷是不能在缓冲区内执行操作。

us20050273200a1公开了一种其中机器人的工作区域重叠的机器人系统。机器人之间的碰撞通过禁止两个机器人同时进入它们的工作区域的重叠部分来避免。该解决方案的缺陷是机器人的能力没有被充分地利用,尤其是如果重叠区域很大的话。

us20140230594a1公开了一种其中机器人的工作区域重叠的机器人系统。机器人之间的碰撞通过用中央机器人控制器适当地控制机器人来避免。没有给出如何完成这一点的细节,但是例如可以利用us20050273200a1中公开的方法。

仍然有改进现有的机器人系统使得其占地空间保持小同时更好地利用机器人的能力的期望。



技术实现要素:

本发明的目的是提供一种用于避免两个机器人之间的碰撞的改进方法,该方法允许两个机器人在重叠工作区域内同时操作而没有两个机器人之间的碰撞的风险。

本发明的进一步的目的是提供一种用于执行拾取和放置任务的改进的机器人系统。

这些目的通过根据随附权利要求1的方法和根据随附权利要求10的装置来实现。

本发明基于如下认识:在被配置成执行拾取和放置任务的机器人系统中,各机器人常常地具有可以取决于要拾取的物品或要将物品放置的空地方而执行的多个可用的机器人移动。关于一个机器人的移动的信息使得具有重叠工作区域的另一机器人的机器人控制器能够在可用的机器人移动之中选择不会牵涉到两个机器人之间的碰撞的风险的适当的一个。

根据本发明的第一方面,提供有一种用于避免机器人系统中的两个机器人之间的碰撞的方法,机器人系统包括具有第一工作区域的第一机器人和具有第二工作区域的第二机器人,第一工作区域与第二工作区域重叠以由此限定出重叠工作区域。该方法包括如下步骤:提供与要由第一机器人执行的第一机器人移动有关的第一移动信息;获取第一移动信息;确定对于多个第二机器人移动它们是否牵涉到第一和第二机器人之间的碰撞风险;和执行第二机器人移动中的一个。

根据本发明的一个实施例,该方法允许第一和第二机器人在重叠工作区域内同时操作。

根据本发明的一个实施例,第一移动信息包括第一机器人的至少一个位置。

根据本发明的一个实施例,第一移动信息包括第一开始位置和第一结束位置。

根据本发明的一个实施例,第一移动信息进一步包括在第一开始位置与第一结束位置之间的路径。

根据本发明的一个实施例,第一和第二机器人被配置成执行拾取和放置任务,使得在各时间点,可用的机器人移动的数量与在或将要在相应机器人的工作区域内的相应的物品或空地方的数量有关,并且多个第二机器人移动在可用的机器人移动之中选择。

根据本发明的一个实施例,多个第二机器人移动包括所有可用的机器人移动。

根据本发明的一个实施例,该方法进一步包括将第一移动信息保存在数字存储器中的步骤。

根据本发明的一个实施例,该方法进一步包括从数字存储器中移除第一移动信息的步骤。

根据本发明的第二方面,提供有一种被配置成执行拾取和放置任务的机器人系统。该机器人系统包括:具有第一工作区域的第一机器人和具有第二工作区域的第二机器人,第一工作区域与第二工作区域重叠以由此限定出重叠工作区域,和用于控制第一和第二机器人的移动的至少一个机器人控制器。机器人控制器被配置成执行根据上文中所公开的本发明的方面和实施例中的任一个的方法。

附图说明

将参照附图更详细地说明本发明,其中

图1示出根据本发明的一个实施例的机器人系统的示意图,和

图2以流程图的形式示出本发明的一个实施例。

具体实施方式

参见图1,根据本发明的一个实施例的机器人系统10包括具有第一工作区域30的第一机器人20,和具有第二工作区域50的第二机器人40。第一工作区域30与第二工作区域50重叠以由此限定出重叠工作区域60。第一机器人控制器70控制第一机器人20的移动,并且第二机器人控制器80控制第二机器人40的移动。

机器人系统10进一步包括在第一方向100上移动的产品输送机90、在第二方向120上移动的第一容器输送机110和也在第二方向120上移动的第二容器输送机130。第二方向120与第一方向100相反。产品输送机90在其上运输在产品输送机90的长度和宽度上随机分布的物品140。第一和第二容器输送机110、130在其上运输包括用于物品140的地方160的容器150。地方160在本文中被称作或者空地方160或者已占用地方160,取决于它们是否被物品140占用。物品140要在由第一和第二机器人20、40执行的拾取和放置任务中从产品输送机90拾取并放置在容器150内的空地方160处。拾取和放置任务的执行意味着由第一和第二机器人控制器70、80执行的适当控制。为了提供适当控制,第一和第二机器人控制器70、80需要知道在或将要在相应的第一和第二工作区域30、50内的产品输送机90上的物品140的位置以及空地方160的位置。这样的信息可以由确定物品140和空地方160相对于相应输送机90、110、130的位置的机器视觉系统(未示出)和确定相应输送机90、110、130的速度的输送机控制器来提供。

参见图1和图2,在各时间点,第一和第二机器人20、40中的每一个具有如果被执行360则导致对拾取和放置任务的执行的大量可用的机器人移动。“可用的机器人移动”在该上下文中典型地意味着或者与物品140的拾取有关或者与放置有关的机器人移动190、210。也可能存在着尽管它们既与物品140的拾取无关也与放置无关但也被视作可用的机器人移动的一些例外的机器人移动。这样的例外的机器人移动的示例是如下面在描述中进一步说明的到特定等待位置的机器人移动190、210。在各时间点,可用的机器人移动的数量与在或将要在相应的第一和第二工作区域30、50内的相应的物品140或空地方160的数量有关。第一和第二机器人控制器70、80可以在各时间点在可用的机器人移动之中选择330机器人移动190、210。

在图1中图示出的状况的情况中,假定第一机器人爪170刚拾取了物品140而第二机器人爪180刚要放置物品140。让我们假定第一容器输送机110的速度是使得第一机器人20能够将所拾取的物品140放置在第一容器输送机110上的最中间容器150内的空地方160中的任一个中,或者放置到第一容器输送机110上的最上侧容器150内的空地方160中的任一个。第一机器人20由此在图1中示出的时间点具有八个可用的机器人移动(除了最终例外的机器人移动之外)。让我们进一步假定第一机器人控制器70选择330执行360具有第一开始位置260和第一结束位置270的第一机器人移动190,以将所拾取的物品140放置在第一容器输送机110上的最中间容器150内右侧的最中间地方160处。第一距离200图示出在第一机器人移动190期间第一容器输送机110的位移。相应地,让我们假定产品输送机90的速度是使得第二机器人40能够拾取当前在第二工作区域50内的三个空闲物品140和将要在第二工作区域50内的三个物品140中的任一个。第二机器人40由此在它放置了将要放置的物品140之后具有六个可用的机器人移动(除了最终例外的机器人移动之外)。

第一和第二机器人控制器70、80可以应用不同的策略以用于在可用的机器人移动之间选择330。例如,机器人控制器70、80可以对将要离开相应工作区域的那些物品140和空地方160给予优先级,或者其可以选择330可用的机器人移动中的最短的一个。然而,有关可用的机器人移动之间的选择的顺序的考虑与本发明不相关。诸如us20120165972a1中所公开的任何以前已知的拾取策略可以适当变动以与本发明结合地应用。

当两者都在重叠工作区域60内操作时存在有第一和第二机器人20、40之间的碰撞的风险。为了避免碰撞,第一机器人控制器70通过将与第一机器人移动190有关的第一移动信息240保存在第一和第二机器人控制器70、80两者都可访问的诸如计算机存储器的通信接口250中来提供320该与第一机器人移动190有关的第一移动信息240。第一移动信息240可以包括第一开始位置260和/或第一结束位置270,和第一开始位置260与第一结束位置270之间的路径。

从图1中示出的时间点继续,在第二机器人40放置了将要放置的物品140之后,第二机器人控制器80选择330六个可用的机器人移动中的一个作为第二机器人移动210。让我们假定第二机器人控制器80选择330具有第二开始位置280和第二结束位置290的第二机器人移动210来拾取在第二工作区域50内的最左侧的物品140。第二距离220图示出在第二机器人移动210期间产品输送机90的位移。

为了从碰撞风险角度评估第二机器人移动210的适合性,第二机器人控制器80从通信接口250中获取340第一移动信息240。其接着应用适当的准则来确定350第二机器人移动210是否牵涉到第一与第二机器人20、40之间的碰撞风险。如果第二机器人控制器80确定350执行360第二机器人移动210不会牵涉到第一与第二机器人20、40之间的碰撞风险,它就执行360第二机器人移动210。否则它选择330五个(除非可用的机器人移动的数量同时改变了)剩余可用的机器人移动中的一个作为第二机器人移动210。第二机器人控制器80接着从通信接口250重复地获取340第一移动信息240(其可能已经在上一次获取340之后改变了)、确定350第二机器人移动210是否冒着引起第一与第二机器人20、40之间的碰撞的风险并且选择330另一可用的机器人移动作为第二机器人移动210直到执行360第二机器人移动210。

尽管根据优选实施例第二机器人控制器80针对确定350第二机器人移动210是否冒着引起第一与第二机器人20、40之间的碰撞的风险的各场合从通信接口250获取第一移动信息240,但是在每一个“循环”中执行该获取340不是关键。替代地,第二机器人控制器80可以仅获取第一移动信息240一次,并且针对同一第一移动信息240执行关于各第二机器人移动210的确定350直到执行第二机器人移动210中的一个。当第二机器人控制器80需要对于所有可用的机器人移动执行确定350的时间相对于第一机器人20的物理移动可能可忽略时尤其如此。又替代地,第二机器人控制器80可以以某些时间间隔获取第一移动信息240。

用于评估碰撞风险的适当准则可以包括:计算第一与第二机器人移动190、210之间的最小距离230(假设第一机器人移动190的路径被包括在第一移动信息240中),和将该最小距离230与预定阈值进行比较。另一合适的准则可以是机器人移动190、210的相应开始和结束位置260、280、270、290、310的在重叠工作区域60内的某些方向上的最小距离。例如,在图1中图示出的状况的情况中,可以确定350如果第一开始位置260和第二结束位置290在平行于第一方向100的方向上相距至少30cm则不存在碰撞风险。在同一示例上进一步构造,此外可以确定350即使第一开始位置260和第二结束位置290在平行于第一方向100的方向上相距小于30cm,那么如果第一开始位置260和第二结束位置290在垂直于第一方向100的方向上相距至少10cm并且第一开始位置260在第二结束位置290的左侧,则仍然不存在碰撞风险。用于碰撞风险的适当准则可以取决于应用、尤其是取决于机器人20、40(爪170、180)和要拾取的物品140的尺寸来指定。

让我们进一步假定第二机器人控制器80确定350具有第二开始位置280和第二结束位置290的第二机器人移动210因为最小距离230在预定阈值之下而牵涉到第一和第二机器人20、40之间的碰撞的风险。第二机器人控制器80接着选择330五个剩余可用的机器人移动中的一个作为第二机器人移动210。此后第二机器人控制器80重复获取340第一移动信息240、确定350第二机器人移动210是否牵涉到第一和第二机器人20、40之间的碰撞的风险和选择330另一可用的机器人移动作为第二机器人移动210的步骤,直到其确定350第二机器人移动210不会牵涉到碰撞风险。第二机器人控制器80接着执行360第二机器人移动210,其在图1中图示出的状况的情况下可以例如以具有第二开始位置280和第三结束位置310的第二机器人移动210结束,以拾取第二工作区域50内的最右侧物品140。第二机器人控制器80一开始执行360某第二机器人移动210,其就通过将与第二机器人移动210有关的第二移动信息300保存在通信接口250中来提供320该与第二机器人移动210有关的第二移动信息300,用于第一机器人控制器70来获取340。

重点是确保在有关重叠工作区域60内的机器人移动190、210的移动信息240、300的提供320与获取340步骤之间存在有适当的依赖性。例如,对于确定350第二机器人移动210是否冒着引起第一与第二机器人20、40之间的碰撞的风险,第一机器人控制器70提供320“新的”第一移动信息240而第二机器人控制器80使用“旧的”第一移动信息240,这应当是不可能的。这样的状况可以通过使第二机器人控制器80在获取340时检出第一移动信息240和第二移动信息300两者使得它们不能由第一机器人控制器70分别提供320或获取340直到它们由第二机器人控制器80再次检入来避免。第二机器人控制器80一提供320第二移动信息300就可以发生检入。

轮到第一机器人控制器70采取上文中对于第二机器人控制器80所描述的那些的相应步骤,并且两个机器人控制器70、80连续地改变角色使得拾取和放置任务以两个机器人20、40之间没有碰撞风险的状态持续。

需注意的是,在某个时间点,可用的机器人移动的数量可能是零,或者因为碰撞的风险,可用的机器人移动中没有一个可以被执行360。在这样的情况中,相应的机器人20、40静止不动,并且(一有任何可用的机器人移动)相应的机器人控制器70、80就继续在可用的机器人移动之中选择330,直到它们中的一个可以被执行360。替代地,相应的机器人20、40可以被移动至特定等待位置。通过该措施,尤其可以避免机器人爪170、180在重叠工作区域60内静止不动。到特定等待位置的机器人移动190、210可以被认为是可用的机器人移动,尽管它既与物品140的拾取无关也与物品140的放置无关。这样的机器人移动190、210仅在不存在其他可用的机器人移动的例外状况中发生。

机器人20、40一旦到达机器人移动190、210的结束位置270、290、310,与该机器人移动190、210有关的除了结束位置270、290、310(其成为下一机器人移动190、210的开始位置260、280)外的任何移动信息240、300就可以被从通信接口250中移除。

本发明不限于上面示出的实施例,而是本领域技术人员可以在权利要求所限定的本发明的范围内以多个方式修改它们。因此,本发明不限于包括仅两个机器人20、40的机器人系统10,而是可以适用于包括任何合适数量的机器人20、40的机器人系统10。此外,单独的机器人20、40并不一定需要由单独的机器人控制器70、80控制,而是共用的机器人控制器70、80可以控制多个机器人20、40。通信接口250可以是机器人控制器70、80的一体部分。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1