一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

自主未知对象拾取和放置的制作方法

2021-12-15 01:31:00 来源:中国专利 TAG:

自主未知对象拾取和放置
1.对其他申请的交叉引用本技术要求2019年4月5日提交的题为autonomous unknown object pick and place的美国临时专利申请号62/829,969的优先权,出于所有目的将其通过引用并入本文。
技术背景
2.多年来,人类一直从事需要将对象从一个位置移动到另一个位置的任务。对象移动的吞吐量依赖于人类的力量、耐力和技术。工具和机器被引入以帮助提高移动对象的吞吐量,但这样的工具和机器通常由人类操作或半操作。自主机器人可以用于将对象从一个位置移动到另一个位置。自主机器人相比于人类提供显着的优势,诸如每周7天每天24小时工作而无需休息的能力。尽管自主机器人相比于人类劳动提供优势,但在尝试将对象从一个位置移动到另一个位置时,自主机器人的使用引入新的问题。
附图说明
3.在以下详细描述和附图中公开了本发明的各种实施例。
4.图1是图示根据一些实施例的用于自主拾取和放置对象的系统的框图。
5.图2是图示根据一些实施例的用于拾取和放置对象的过程的流程图。
6.图3是图示根据一些实施例的用于抓握和移动对象的过程的流程图。
7.图4是图示根据一些实施例的用于抓握特征的过程的流程图。
8.图5是图示根据一些实施例的用于选择抓握技术的过程的流程图。
9.图6是图示根据一些实施例的用于抓握和移动对象的过程的流程图。
10.图7是图示根据一些实施例的用于移动对象的过程的流程图。
11.图8是图示根据一些实施例的用于更新机器人系统的操作的过程的流程图。
12.图9是图示根据一些实施例的基于抽吸的末端执行器的框图。
13.图10是图示根据一些实施例的抓具式末端执行器的框图。
具体实施方式
14.本发明可以以多种方式实施,所述方式包括作为过程;装置;系统;物质的组成;在计算机可读存储介质上体现的计算机程序产品;和/或处理器,诸如被配置成执行在耦合到处理器的存储器上存储和/或由耦合到处理器的存储器提供的指令的处理器。在本说明书中,可以将这些实施方式或本发明可以采取的任何其他形式称为技术。通常,可以在本发明的范围内变更所公开的过程的步骤的次序。除非另外说明,否则被描述为被配置成执行任务的诸如处理器或存储器的组件可以被实施为被临时配置成在给定时间执行任务的通用组件或被制造为执行任务的特定组件。如本文中所使用的,术语

处理器’指代被配置成处理数据(诸如计算机程序指令)的一个或多个设备、电路和/或处理核心。
15.下面提供了本发明的一个或多个实施例的详细描述以及说明本发明的原理的附图。结合这样的实施例描述了本发明,但是本发明不限于任何实施例。本发明的范围仅由权
利要求限制,并且本发明包括许多替代方案、修改和等同物。在以下描述中阐述了许多具体细节,以便提供对本发明的透彻理解。这些细节被提供用于示例的目的,并且本发明可以根据权利要求来实践,而无需这些具体细节中的一些或所有。为了清楚的目的,没有详细描述与本发明相关的技术领域中已知的技术材料,使得不会不必要地模糊本发明。
16.交给机器人系统任务,使其从第一位置到第二位置自主拾取和放置未知对象。机器人系统可以使用来自一个或多个相机的视觉数据来使第一位置处的对象可见。然而,在一些情况下,对象可能以任意和/或杂乱的方式堆积,使得难以或不可能辨别对象边界和/或获得工作空间区域中所有对象的形状和位置信息。
17.在各种实施例中,如本文所公开的机器人系统使用在操作端具有致动器(例如,抓具、抽吸等)的机器人臂以从第一位置拾取任意的、先前未知的对象,然后将它们放在第二位置。机器人系统的吞吐量取决于机器人系统在第一次尝试时成功抓握对象并将对象移动到放下区域而在该过程期间不损坏对象的能力。然而,对象可能会在第一位置乱糟糟地堆在一起,使得基于相机确定对象边界具有挑战性。机器人系统可能会在错误的位置抓握对象,导致机器人系统掉落对象,这可能会损坏第一位置处的对象和/或一个或多个其他对象。
18.其他系统可以在开始拾取和放置过程之前具体地标识位于第一位置的所有对象(例如,对象是特定类型的肥皂,对象是特定类型的订书机等)。然而,这样的过程降低机器人系统的吞吐量,因为标识所有对象所需的计算时间可能需要很长时间来执行。此外,如果对象被错误地标识,机器人系统可能会在拾取和放置过程恢复之前重新开始其标识过程。
19.本文公开的技术用于增加机器人系统的吞吐量,该机器人系统自主地从第一位置拾取未知对象和将未知对象放置到第二位置。机器人系统耦合到用于查看工作空间区域(例如,第一位置)的多个相机。一个或多个对象被确定在工作空间区域中。一个或多个对象中的一对象由任意颜色、几何形状、纹理等组成。
20.一个或多个对象中的每一个的几何形状是基于多个相机的数据来确定的。例如,多个相机的数据可以包括点云信息。基于一个或多个对象的几何形状,为工作空间区域中的一个或多个对象中的每一个确定潜在可抓握特征(例如,把手、突起、空隙等)。
21.为可抓握特征中的每一个确定对应的抓握策略。例如,机器人系统可以存储一个或多个用于具有各种相应形状和/或尺寸的特征的抓握技术。在一些实施例中,特征对应于对象的一部分。在一些实施例中,特征对应于整个对象。
22.为关于每个对应潜在可抓握特征确定的抓握策略中的每一个确定成功抓握的对应分数。基于其分数选择抓握策略之一,并且尝试拾取与所选择的抓握策略相关联的对象。在机器人系统成功抓握对象的情况下,机器人系统将对象从工作空间区域移动到第二位置(例如,放下区域)。在机器人系统未能成功抓握对象的情况下,机器人系统尝试针对对象的替代抓握策略或尝试抓握不同的对象。从工作空间区域拾取对象并将对象放置到放下区域的过程持续直到来自工作空间区域的所有对象都已放置在放下区域中为止。
23.机器人系统能够通过将具有不同形状的对象相关联并且使用针对不同形状中的每一个的抓握策略来增加机器人系统的吞吐量。这样的技术适用于任何一组对象,并且不需要在拾取和放置对象之前针对特定的一组对象对机器人系统进行编程。
24.图1是图示根据一些实施例的用于自主拾取和放置对象的系统的框图。在所示示
例中,机器人系统101在环境100中操作。机器人系统101包括多个关节部分,包括安装在固定底座104上的机器人臂102、末端执行器108、一个或多个传感器134和控制器106。机器人臂102耦合到控制器106,控制器106被配置为操纵机器人臂102和安装在机器人臂102的远端上的末端执行器108。在一些实施例中,控制器106通过以下控制机器人臂102和末端执行器108:向在包括机器人臂102和/或末端执行器108的刚性元件之间的各个关节中的每一个处配置的马达提供电压和/或其他信号、输入等,以使得各个马达施加对应的(一个或多个)扭矩以使得耦合到马达的旋转元件的元件相对于马达的非旋转元件耦合到的元件移动。末端执行器108可以包括抽吸抓具、平行抓具、软抓具、灵巧抓具等。机器人系统101可以包括多个末端执行器并且选择最适合抓握对象的末端执行器。例如,可以基于对象的纹理选择末端执行器。在对象具有太多褶皱区域的情况下,机器人系统101可以选择平行抓具而不是抽吸抓具。
25.在图1所示的示例中,机器人臂102用于从桌子或其他表面110(例如,工作空间区域)拾取对象,包括在所示示例中的不同形状的对象112、114和116,并将它们放置在传送带118(例如,放下区域)上。如所示,机器人臂102先前已被用于将物品120放置在传送带118上,传送带118在一个方向上旋转,使得对象120将要从传送带118上掉落到目的地122。工作空间区域可以包括移动平台,诸如传送带或旋转平台,或固定区域,其中定位一堆对象(稳定的或不稳定的)。
26.在各种实施例中,图1中所示的“拾取和放置”操作由机器人系统101至少部分地以自主操作模式执行,机器人系统101包括机器人臂102、末端执行器108和控制器106。例如,在一些实施例中,控制器106和/或一个或多个其他控制设备,诸如包括处理器、存储器和其他组件的计算机,被编程为执行图1图示的拾取和放置操作。例如,在一些实施例中,程序员或其他操作员可能已对机器人系统101编程或以其他方式配置了机器人系统101以知晓其环境100及其相对于桌子110上的对象的位置(或在一些实施例中,一组坐标或其他位置一方面与桌子110和传送带118相关联。
27.在一些实施例中,机器人系统101被编程或以其他方式配置成使用库或其他策略仓库来执行拾取和放置操作和/或其部分。例如,机器人系统101可以被配置为使用其当前位置和环境100的知晓来将末端执行器108定位在桌子110上方的位置处。计算机视觉或其他技术可以用于标识和选择接下来要拾取的对象,并且可以自主选择拾取对象的策略,例如,基于对象的位置、形状、定向、呈现的形态(aspect)、纹理、刚性等中的一个或多个。
28.例如,在图1所示的示例中,机器人系统101可能已经将与对象112相关联的特征识别为具有立方体几何形状并且在拾取对象112之前选择了用于立方体几何形状的抓握策略。机器人可以将对象114识别为具有金字塔几何形状并选择用于金字塔几何形状的抓握策略。机器人可以将对象116识别为具有圆柱形几何形状并且选择用于圆柱形几何形状的抓握策略。
29.环境100包括多个相机,诸如相机115、117。尽管图1描绘了环境100具有两个相机,但是环境100可以包括n个相机,其中n是大于1的数字。多个相机可以有线连接或无线耦合到机器人系统101。在一些实施例中,多个相机中的至少一个位于固定位置。在一些实施例中,多个相机中的至少一个处于动态移动中(例如,附接到移动对象,诸如无人机)。在一些实施例中,多个相机中的至少一个能够固定并且移动到不同位置(例如,在第一位置检测到
对象,将相机移动到第二位置,并在第二位置检测到对象)。在一些实施例中,在环境100中使用不同的照明条件来检测一个或多个对象的感知表面特征的变化。
30.使用多个相机使机器人系统101能够从不同的有利位置观察环境100。这防止对象被遮挡,并给出对象几何形状和对象边界的更准确估计。例如,大对象可能以它防止相机看到大对象旁边的较小对象这样的方式放置。使用来自不同位置的多个相机能够看到较小的对象并确定与较小对象相关联的边界信息。单个相机可能无法覆盖大的工作空间区域。与多个相机相关联的视图可以合并以向机器人系统101给出工作空间区域110的更完整的视图。在相机之一被阻挡的情况下,机器人系统101仍然能够拾取和放置对象。相机的使用还使机器人系统101能够如本文所描述那样确定机器人系统是否需要重新校准。例如,aruco标记(例如,二进制方形基准标记)可以用于初始对准多个相机。
31.在一些实施例中,机器人系统101基于由多个相机中的一个或多个生成的点云来分割对象。机器人系统101可以基于rbg或多光谱相机图像(例如rgb、深度和/或红外等的组合)来分割对象。分割的对象可以被反投影到点云中,使得可以确定潜在的可抓握区域。这提供了附加的信息,诸如对象类型、预期重量/材料、优选抓取策略等,这在单独基于点云信息分割对象时是不可得到的。这种组合分割策略在拾取难以单独用深度区分的对象(例如,紧密包在一起的小盒子可能看起来像作为点云的单个平面)时效果很好,但是使用图像分割结合点云信息,机器人系统101可以标识每个盒子并从输入中提取盒子。
32.在一些实施例中,机器人系统101自主地从桌子110(例如,工作空间区域)拾取未知对象并将其放置到传送带118(例如,放下区域)。机器人系统101可以通过使用相机115、117来确定对象112、114、116位于桌子110上。控制器106基于从相机115、117接收到的视觉数据(例如,点云数据)确定几何形状信息。控制器106为对象112、114、116 选择对应的潜在可抓握特征,其对应于根据从相机115、117接收到的视觉数据确定的几何形状信息。例如,基于从相机115、117接收到的视觉数据,控制器106可以确定对象112包括对应于立方体形状的可抓握特征,对象114包括对应于金字塔形状的可抓握特征,并且对象116包括圆柱形状。控制器106可以选择在阈值量内最紧密类似于几何对象的可抓握特征。例如,控制器106可以将所确定的几何形状信息与已知特征库进行比较并且基于该比较选择对象的特征。在一些实施例中,特征是规范形状。控制器106可以将规范形状叠加在要抓握的对象上。
33.为了确定与对象相关联的一个或多个可抓握特征,控制器106可以随机地切割对象的平面以将对象分解成多个子片段。可以在点云的数据点占用最少的平面处切割对象(与抓握对象顶部的尖特征有关)。可以基于对象的颜色或外观的强梯度来切割对象的平面。在一些实施例中,使用隶属函数来确定在类属生成的子区域内的点云中是否存在异常值。可以添加附加的切割平面,或者可以将对象分裂为具有高残差的隔离区域。可以单独处理子片段。例如,异常值检测技术可以应用于子片段。在一些实施例中,5

sigma将高斯分布拟合到这些点并标识与平均值相距5

sigma(标准偏差)的点,并将标识的点标记为异常值。在一些实施例中,对点云使用二次采样方法并重新拟合到一平均值。然后使用这些点来查找与平均值相距一定距离的点。
34.在一些实施例中,基于末端执行器108与对象相互作用的范围来确定对象的子片段。例如,如果末端执行器108不能跨宽对象进行抓握,则控制器108确定不在对象的宽部分周围抓握对象。如果使用抽吸抓具末端执行器,则寻找相对光滑的平坦表面。可以避免基于
空隙的拾取策略或最小占用切割平面。基元重新适合于新的分区云。该过程可能会反复重复,直到满足某个质量级别或递归限制。
35.控制器106可以基于从相机115、117接收到的视觉数据确定与对象相关联的负空间信息(例如,空隙)。例如,控制器106可以确定咖啡杯的把手包括负空间或汽车轮胎包括负空间。使用来自多个相机的数据的计算机视觉算法可以确定对象中的空隙(例如,洞),所述对象诸如杯子、马克杯、卷起的电线、胶带等。在检测到空隙的情况下,对象可以被抓握,这通过将抓具插入到空隙中并从对象的侧壁拾取对象。
36.控制器106可以基于从相机115、117接收到的视觉数据确定将要被拾取的对象的曲率。在控制器106确定对象是弯曲的情况下,控制器106可以改变与放置对象相关联的控制策略,使得弯曲的对象被更小心地放置并且更慢地松开,以防止对象在放置时滚动离开。在从相机115、117接收到的视觉数据指示放置的对象在最初释放对象的抓握之后正在滚动或移动的情况下,控制器106可以重新抓握对象并尝试在释放抓握之前再次安置对象。在控制器106尝试抓握/重新抓握对象超过阈值次数的情况下,可以向用户130提供警告并提醒用户130对象可能滚动离开。
37.控制器106基于从相机115、117接收到的视觉数据确定与对象112、114、116相关联的对应特征。例如,控制器106可以确定对象包括把手。从相机接收到的视觉数据可以用于确定与对象相关联的最小边界和与对象相关联的最大边界。对象的边界可以包括与对象相关联的高度、宽度或深度。视觉数据可以提供允许确定对象的边界中发一个或多个的数据。例如,第一相机可以以第一角度面向对象。第一相机可能能够提供关于对象的高度和宽度的信息,但不能提供对象的深度信息。第二相机可以以第二角度面向对象。第二相机可能能够提供关于对象的深度和高度的信息,但不能提供关于对象的宽度的信息。控制器106可以合并从多个相机接收到的视觉数据以确定与对象相关联的边界信息(估计的、近似的或精确的)。例如,控制器106可以确定对象的高度和宽度,而不是深度。控制器106可以确定对象的深度在某个值范围内。
38.与对象相关联的最小边界对应于对象在特定维度中可能具有的最小值。与对象相关联的最大边界对应于对象在特定维度中可能具有的最大值。例如,第一相机可以检测第一对象和第一对象后面的第二对象。控制器106可以基于来自第一相机的视觉数据确定第二对象在第一对象后面12英寸。在第一对象和第二个对象接触的情况下,第一对象在深度维度中可以具有的最大值为12英寸。第一对象在深度维度中可能具有的最小值是该维度的阈值最小尺寸(例如,1/8英寸、1/4英寸、1/2英寸、1英寸等)。阈值最小尺寸可以基于历史已知对象、具有相似尺寸的已知对象、对象上下文、对象类型等。
39.控制器106与存储将抓握策略与特征相关联的数据结构的存储器(未示出)相关联。抓握策略可以由抓握技术和如何使用抓握技术抓握特征组成。在一些实施例中,抓握策略包括抓握可以适合对象/片段的几何估计的边界框的长轴和短轴。在一些实施例中,抓握策略包括在某个z高度切割对象/片段估计并重新计算边界框。然后可以抓握重新计算的边界框的长轴和短轴。当一对象具有宽的底座但是在中间某处有一小塔并且机器人系统想要准确地抓握城镇时,这是有用的。存储器还存储关于如何执行抓握技术的指令。如果需要避免影响其他对象,指令可以包括部分预闭合抓具的指令。存储器还存储关于如何执行放置技术的指令。指令可以包括如下指令:部分打开末端执行器108的抓具手指使得末端执行器
108在将对象放置在放下区域时不会干扰其他对象。存储器还存储关于末端执行器的机构和几何形状的信息(例如,平行抓具比对抽吸抓具、抓具手指的宽度/长度等)。
40.抓握技术可以与一个或多个特征相关联。例如,抽吸技术可以用于具有对应于金字塔形状的可抓握特征、对应于立方体形状的可抓握特征或对应于直角棱镜形状的可抓握特征的对象。平行抓握技术可以用于具有对应于球形形状的可抓握特征的对象。特征可以与一个或多个抓握技术相关联。例如,平行抓握技术或舀取技术可以用于对应于球形形状的可抓握特征。可以使用不同类型的抓具来抓握具有特定形状的特征。例如,第一抓握技术可以使用平行抓具,并且第二抓握技术可以使用抽吸抓具。在一些实施例中,抓具的类型在拾取和放置操作期间在抓具类型之间自主切换。抓握技术可以用于特征的不同部分。例如,平行抓握技术可以用于特征的顶部、中部或底部部分。控制器106为与特征相关联的抓握策略中的每一个确定对应的分数。在一些实施例中,对象与多个特征相关联。控制器106可以为多个特征中的每一个确定一个或多个抓握技术并且确定所确定的抓握技术的对应分数。
41.与抓握策略相关联的分数可以基于抓握策略将导致成功抓握特征的概率。抓握策略将导致成功抓握特征的概率可能基于一个额外的因素,诸如关于环境的上下文信息、环境的历史抓握信息、机器人臂抓握特征的角度(避免与其他对象碰撞)、机器人臂抓握特征的高度(防止抓具顶部处的碰撞)、抓握宽度、抓握点处的表面法线的定向、能够被抓握的特征量、材料属性等。关于环境的上下文信息包括对象附近或与对象相邻的其他对象的存在,对象附近或与对象相邻的其他对象阻碍机器人臂抓握特征的能力的量,是否有更多的对象被连续添加到工作空间区域等。材料属性可以包括对象的质心、对象的摩擦属性、颜色、反射率等。例如,机器人系统101可以构建大的支撑表面,使得可以稳定地放置大的对象。当机器人系统101检测到给定对象和放置支撑表面的摩擦系数,对象可能从倾斜的放置支撑表面滑落时,机器人系统101可以被配置为仅选择拾取具有足够高摩擦系数的对象(例如,以避免滑动)。
42.控制器106基于与抓握策略中的每一个相关联的对应分数来选择抓握策略之一。对象可以是放置在杂乱堆中的对象的异类集合。对象的大小、颜色、机器人臂(robotight)、几何形状、纹理、刚度等可能不同。对象从堆中单独移除。对象中的一些至少部分被遮挡。杂乱的堆中的所有对象都是先验未知的。控制器106选择具有最高分数的抓握策略。在两个或更多抓握策略具有相同高分数的情况下,控制器106选择抓握策略之一,拾取与抓握策略相关联的特征,将对象移动到放下区域,然后选择与其他抓握策略相关联的剩余对象。
43.控制器106使末端执行器108抓握与对象相关联的特征。在所示的示例中,控制器106已经使末端执行器108抓握对象112。控制器106可以利用关于抓具机构和几何形状的先前知识来简化抓握预测问题。例如,如果末端执行器108将从上方接近对象,诸如对象112,则控制器106分析点云的顶截面以标识可抓握的突起。在一些实施例中,随着机器人系统移动,相机115、117收集更多数据(例如,更近、不同角度、不同照明、反射率等)并且机器人系统101调整其如何使末端执行器108基于新数据抓握对象。
44.可以使用对象的网格化或分段版本来确定对象的抓握点。建立待抓握对象的紧密近似,并使用与库或机器学习方法匹配的模型来确定对象的最佳抓握位置。对抓握点进行排名。控制器106使末端执行器108在抓握点之一抓握对象。
45.在一些实施例中,压力和/或真空传感器用于检测泄漏以评估抓握质量。例如,机
器人系统101可以使用抽吸抓具作为末端执行器108来拾取撕裂的塑料袋。机器人系统101可以使用压力/真空信息来中止对这些物品的拾取动作,这可以避免损坏抽吸抓具和/或污染这些塑料袋内的包装货物。
46.末端执行器108将对象(在该示例中为对象112)移动到放下区域,诸如传送带118。末端执行器108将对象放置在放下区域中。机器人系统101可以使用多个相机将对象放置在机器人系统101认为应该放置对象的地方附近的位置处。机器人系统101可以在位置下降处降低对象并且检测机器人系统101何时感觉到放下区域的力往回推它。当机器人系统101检测到已经到达放下区域时,机器人系统101打开末端执行器108或停止抽吸以将对象轻轻放下。在打开末端执行器108时,机器人系统101可以向上或向下移动以控制放置力(有时在接触时打开抓具可能压碎对象)。这使得机器人系统101能够在放置表面高度估计容易出错或未知时堆叠对象或动态调整放置高度。当其他对象挡住时,这也有帮助。在一些实施例中,机器人系统101确定是否有任何可能滚动离开的对象被放置在放下区域。在没有可能滚动离开的对象的情况下,控制器106可以控制机器人臂102和末端执行器108将已经在放下区域中的对象推得更靠近一起,使得创造空间来放置一个或多个其他对象。
47.在各种实施例中,包括机器人臂102、末端执行器108和控制器106的机器人系统101通过遥操作自动提示干预。在一些实施例中,如果在执行图1所示的拾取和放置操作的过程中机器人系统101达到机器人系统101无法确定(进一步)执行操作的(下一个)策略的状态,则机器人系统101提示远程操作员(在本示例中)经由遥操作进行帮助。
48.在所示的示例中,控制器106经由网络124连接到遥操作计算机126。在一些实施例中,遥操作计算机126可以在自主模式下参与机器人系统101的操作,例如,通过经由网络124向控制器106传送高级指令。在各种实施例中,控制器106和遥操作计算机126中的一者或两者可以提示遥操作的干预,例如,如果机器人系统101达到其没有可用于执行(完成)操作中的下一个任务或步骤的策略的状态。
49.例如,进一步参考图1,如果对象114 以向机器人呈现三角形形态的定向掉落并落在其平坦侧面之一上,则在一些实施例中,机器人系统101 可能没有策略可用于拾取对象114和/或可能已经超时或用尽了尝试拾取对象114的配置次数。作为响应,遥操作员130可以被提示通过遥操作进行干预,并且可以使用手动输入设备128来控制机器人的操作。例如,遥操作员130可以操纵机器人系统101拾取对象114并将对象放置在传送带118上。或者,遥操作员可以使用机器人系统101将对象114的定向改变为自主机器人系统101将被期望(或更可能)具有可用于拾取对象114的策略的定向。
50.在所示的示例中,遥操作可以通过人类操作员130对手动输入设备128(例如,触觉输入设备)的操纵来执行。人类操作员130(有时称为遥操作员)可以通过信息提示以开始遥操作,该信息经由包括遥操作计算机126和/或与遥操作计算机126相关联的显示设备显示。来自一个或多个传感器134的数据可以经由网络124和遥操作计算机126提供给人类操作员130。在一些实施例中,传感器134包括机器人上的相机(未示出)或相机115、117,并被配置为生成显示给遥操作员130并用于经由遥操作执行和/或完成操作或其部分的执行的视频馈送。在各种实施例中,相机用低延迟、高吞吐量的连接来连接,包括作为示例并不限于基于模拟rf的通信、wifi、蓝牙和sub ghz中的一个或多个。在一些实施例中,使用不同类型的相机的混合。例如,可以使用具有不同通信速率、带宽和/或其他特性的相机,诸如两个rgb
视觉相机、四个深度相机、两个ir相机等。
51.在各种实施例中,遥操作可以使用多种不同的传感器134来执行。在一些实施例中,这些可以引导机器人系统101确定它是否“卡住”,和/或可以简化遥操作。在一些实施例中,传感器帮助将遥操作模式从直接的触觉控制转变为越来越抽象的执行命令(诸如用鼠标点击要拾取的对象,或对音频转录设备说“打开架子”)。
52.在各种实施例中使用的传感器134的示例包括数字开关,其被配置为检测与环境的交互和特定“卡住”场景,和/或机器人系统101(或遥操作员)邻近的未知代理的存在。另外的示例包括手或机器人上的力或压力传感器,其确定操作(诸如抓握)的成功或失败。在一些系列的故障之后,机器人系统101确定它“卡住”。另一示例是一个或多个传感器,诸如机器人关节上的位置传感器,机器人系统101可以使用这些传感器来了解是否正在精确地遵循计划的和/或以其他方式预期的运动轨迹。当它没有精确地遵循预期轨迹时,它很可能已经与环境100接触并且机器人系统101可以被编程为断定它已经“卡住”并且需要调用人类干预。
53.包括多个相机的视觉系统被配置为通过多模态手段(例如,rgb实例跟踪、rgb特征匹配、rgb光流、点云匹配等)保持跟踪工作空间区域中的每个对象,并且利用诸如匈牙利对匹配的方法来保持跟踪机器人系统101要拾取的对象。机器人系统101被配置为估计每个被跟踪对象的状态,诸如速度、掉落/滑动离开的可能性和运动轨迹。机器人系统101可以使用其他已知信息,诸如传送系统和传感器134的当前速度和尺寸,从而以更高精度更新对象状态。机器人系统101可以使用所确定的对象状态来做出关于在何处拾取和拾取什么对象以及在何处/何时/如何放置对象的通知决定。例如,机器人系统101可以选择更稳定的对象来拾取(抓握)并且可能在未来从估计的对象位置拾取(甚至同时移动)以补偿机器人臂102的移动时间和移动对象的速度。机器人系统101可以通过以如从环境100估计的初始速度放置对象来更稳定地将对象放置到移动平台放下区域上,而不会掉落并导致对象滚动。机器人系统101还可以选择无碰撞区域来将对象放置在放下区域118中。碰撞区可以从被跟踪对象的估计轨迹确定。使用与多个相机相关联的数据,机器人系统101能够理解被抓握的对象和环境100的形状。这使得机器人系统101能够智能地计划将避免拾取的对象和环境100之间的碰撞的轨迹。
54.在一些实施例中,多个机器人系统一起工作以拾取和放置对象。使用多个机器人系统可以增加系统的整体吞吐量。
55.图2是图示根据一些实施例的用于拾取和放置对象的过程的流程图。在一些实施例中,过程200由诸如机器人系统101之类的机器人系统实施。
56.在202,接收与位于工作空间区域中的一个或多个对象相关联的传感器数据,诸如图像数据。在一些实施例中,传感器数据由多个相机生成。多个相机被配置为从不同的有利位置观察和检测一个或多个对象。在一些实施例中,相机中的一个或多个生成一个或多个对象的一个或多个点云。在生成多个点云的情况下,将多个点云合并在一起。在各种实施例中,一个或多个对象可以包括放置在杂乱堆中的多个对象、间隔开的多个对象、和/或如下多个对象:其中一个或多个被所述多个对象中的一个或多个其他对象遮挡而无法看到。
57.为多个对象中的每一个确定几何形状信息。可以基于从与多个相机中的一个或多个相关联的数据获得的点云信息来确定几何形状信息。
58.在204,为一个或多个对象确定一个或多个潜在可抓握特征。可以将与多个特征中的每一个相关联的对应几何形状信息与其抓握策略已知的几何形状库进行比较。可以选择与最紧密类似于确定特征的几何形状(例如,在相似性阈值内)的几何形状相关联的策略。在一些实施例中,对象与单个特征相关联(例如,纸巾卷对应于圆柱体)。在一些实施例中,对象被分成多个子片段(在本文中也称为子对象)并且确定多个子片段中的每一个的对应特征(例如,高尔夫球棍包括主体片段和一个头部片段)。
59.工作空间区域边缘或角落附近的对象可能具有关于在何处和/或如何拾取对象的物理或其他限制。在一些实施例中,可以取决于与对象相关联的环境边界来选择非最佳但可行的拾取角度。比起较窄的纬度抓握。可以选择较宽的纵向,因为较宽的纵向抓握可以将末端执行器保持在环境边界内。
60.在206,为确定的抓握策略中的每一个确定成功抓握的对应分数。机器人系统可以被配置为使用不同的抓握工具(例如,抽吸抓具、平行抓具、其他末端执行器等)来抓握对象或特征。机器人系统可以使用抓握工具在对象的不同位置抓握对象。例如,抓握工具可以用于在对象的顶部部分、中间部分或底部部分抓握对象。在抓握某些形状时,某些抓握工具可能比其他抓握工具更成功。
61.成功抓握特征的分数可以基于抓握策略将导致成功抓握的概率。确定抓握工具(在多个工具可用的实施例中)和抓握位置的不同组合的概率。抓握策略将导致成功抓握对象的概率可能基于一个额外的因素,诸如关于环境的上下文信息、环境的历史抓握信息、机器人臂将抓握对象的角度(以避免与其他对象碰撞)、机器人臂将抓握对象的高度(以防止抓具顶部处的碰撞)、抓握宽度、抓握点处的表面法线定向、能够被抓握的对象的量等。关于环境的上下文信息包括靠近对象或与对象相邻的其他对象的存在,靠近对象或与对象相邻的其他对象阻碍机器人臂抓握对象的能力的量,是否有更多对象连续添加到工作空间区域等。
62.在208,基于所确定的对应分数选择所确定的抓握策略之一以进行尝试。基于对应的分数对对象/特征和对应的抓握策略进行排名。在多个对象当中选择具有最高分数的对象/特征进行抓握。在多个可能的抓握具有相同分数的情况下,选择多个抓握之一。在抓握对象被移动后,选择具有相同分数的其他抓握之一。
63.在来自多个对象的一对象已被选择、抓握、移动并放置在放下区域中的情况下,选择具有次最高分数的抓握进行尝试。
64.在210,执行/尝试选择的抓握。使用来自多个相机的视觉数据,机器人系统可以确定被抓握的对象是否已经移动。如果不是,机器人系统确定抓握失败。在一些实施例中,末端执行器具有压力传感器以确定是否已经抓握特征。在一些实施例中,末端执行器使用电容来感测对象的皮肤表面的变形以确定是否已经抓握特征。在一些实施例中,末端执行器是抽吸抓具并且机器人系统使用压力传感器来检测抽吸压力变化以确定是否已经抓握特征。
65.在一些实施例中,对于非常靠近表面或需要捏紧(例如,平布)的薄对象或抓握特征,机器人系统可以通过感测和控制特定的接触力来确保末端执行器与拾取表面接触。这种接触还为机器人系统提供了对拾取表面上单个点位置的准确估计,这可以用于改进机器人系统的校准。
66.zarea到放下区域。在214,确定与所选择的抓握相关联的对象在将对象从工作空间区域移动到放下区域时是否已经放下。可以基于末端执行器中包括的传感器的传感器测量结果(例如,压力、力、电容等)来确定对象已经放下,机器人系统使用所述传感器测量来确定与对象相关联的特征是否被抓握。可以将传感器测量结果与阈值进行比较以确定对象是否已经放下。
67.在对象已经被放下的情况下,过程200返回到208。在对象没有被放下的情况下,过程200进行到216。
68.在216处,对象被放置在放下区域中。对象可以以防止末端执行器与跟放下区域相关联的边界碰撞的方式放置。在一些实施例中,对象与放下区域中其他对象一起放置在杂物中。机器人系统可以将对象随机放置在放下区域。机器人系统然后可以使用抓具上的力传感器将对象轻轻地放置在杂物上,而不会导致机器人系统执行保护性停止。机器人系统可以在小区域内向放下区域添加随机扰动,以创建更好的对象分布。机器人系统可以通过使用力传感器将对象紧密地打包到放下区域的盒子中,以实现紧密的开槽策略。
69.在一些实施例中,对象被放置为与放下区域中的其他对象间隔开。机器人系统可以将放下区域中的放置空间划分为多个子区域并将所选对象放置在子区域之一中。子区域中的每一个之间可能存在缓冲区域。在一些实施例中,缓冲区是可调整的。
70.在一些实施例中,与机器人系统相关联的视觉系统被配置为确定如何将对象放下。例如,一些对象不是刚性的,并且在对象被抓握和移动后,与对象(例如,布或可爱的玩具)相关联的范围改变。视觉系统配置为确定范围是什么和材料信息以选择如何放下对象以防止压坏对象并防止对象从可能损坏对象或导致对象陷入缠结或不利配置的高度掉落。
71.机器人系统可以在抓握/拾取操作期间的各种时间比较点云信息。与机器人系统相关联的视觉系统可以确定初始点云,并且随着对象被抓握和移动,可以确定初始点云和当前点云之间的差异。如果所确定的差异指示与对象相关联的范围改变大于或等于阈值量,则机器人系统可以确定该对象是非刚性对象。响应于确定对象是非刚性对象,机器人系统可以实施与在对象是刚性对象的情况下不同的放置策略。取决于所选对象的刚度,对象可以被更快地移动并且对象被放置的方式可以用更积极的方式被放下以增加机器人系统的拾取速度/吞吐量。如果所确定的差异指示与对象相关联的范围改变小于阈值量,则机器人系统可以确定该对象是刚性对象。对象放置的方式可以不同,使得对象的底表面被控制以接近放下区域,以防止对象破裂、滚动和/或以缠结配置结束。
72.放下区域的点云信息可以用于确定哪里有足够的开放空间用于放置对象。点云信息还可以用于确定应将每个对象放置在何处以使打包效率最大化。
73.在218,确定是否有更多对象位于工作空间区域中。在有更多的对象位于工作空间区域中的情况下,过程200返回到步骤208。在没有更多的对象位于工作空间区域中的情况下,过程200结束。
74.图3是图示根据一些实施例的用于抓握和移动对象的过程的流程图。在一些实施例中,过程300由诸如机器人系统101的机器人系统实施。在一些实施例中,过程300被实施以执行过程200的步骤210和212中的一些或全部。
75.在302,与对象相关联的特征被抓握。机器人系统的控制器使末端执行器抓握与对象相关联的特征。末端执行器可以包括一个或多个传感器,诸如力传感器、压力传感器、电
容传感器等。可以在确定的最佳抓握位置抓握与对象相关联的特征。可以使用根据从机器人系统的一个或多个相机接收到的视觉数据确定的对象的网格化或分段版本来确定最佳抓握位置。
76.在一些实施例中,视觉和/或触觉信息用于检测对象的纹理,例如皱纹。机器人系统可以使用视觉和/或触觉信息来选择高质量的拾取点(例如,成功抓握的概率大于阈值),诸如避免使用抽吸抓具在褶皱区域拾取对象。
77.在304,确定抓握是否成功。在一些实施例中,机器人系统使用计算机视觉来确定对象是否已经移动,即抓握是否成功。在一些实施例中,机器人系统使用力传感器。在力传感器检测到的质量增加,并且这种增加不同于静态阈值或基于对象的体积/外观的一般估计的情况下,机器人系统确定错误的对象被抓握并放下对象。在一些实施例中,机器人系统的末端执行器具有压力传感器或使用电容感测对象的皮肤表面的变形以确定对象是否已被抓握。将传感器的输出与抓握阈值进行比较,以确定与对象相关联的特征是否已被抓握。在一些实施例中,末端执行器上的电或电容传感器用于指示末端执行器的完全闭合接触。这指示末端执行器没有抓握对象。在一些实施例中,机器人系统使用抽吸抓具末端执行器来拾取对象并使用压力传感器检测抽吸压力变化。机器人系统可以基于压力传感器的输出来确定对象是否已被抓握。在一些实施例中,机器人系统基于传感器和计算机视觉的组合来确定对象是否已被抓握。可以使用表决系统来降低检测错误率。如果大多数检测方法确定对象已被抓握,则机器人系统可以确定与对象相关联的特征已被抓握。
78.在一些实施例中,组合视觉信息和指尖传感器信息以确定在初始抓握对象之后对象是否滑动和移动以确保轻柔放置。组合信息可以用于确定在从拾取/抓握到放置的运动期间对象何时滑动。在确定对象已经滑动的情况下,可以重新计算对象的范围以避免撞坏放下区域中的对象。
79.机器人的几何模型和传感器状态信息可以用于确定机器人臂和末端执行器的3d配置。与3d对象相关联的点云或rgb像素可能会被过滤掉,只留下成功拾取的对象,或者如果抓握失败则什么也不留下。
80.在抓握成功的情况下,过程300进行到306。在抓握不成功的情况下,过程300进行到308。在306,对象被移动到放下区域。在308,确定是否已经执行了阈值数量的抓握尝试。在已经执行了阈值数量的抓握尝试的情况下,过程300进行到312。在尚未执行阈值数量的抓握尝试的情况下,过程300进行到310。
81.在310,实施相同的抓握技术或不同的抓握技术。对象的特征可以与多个抓握技术相关联。抓握技术中的每一个都与对应的分数相关联。最初选择具有最高分数的多个抓握技术中的抓握技术。在抓握技术失败的情况下,可以实施具有次最高分数的抓握技术。在一些实施例中,再次尝试相同的抓握技术。
82.在312,选择下一个特征。具有多个特征的多个对象可以位于工作空间区域中。多个特征中的每一个都具有对应的成功抓握分数。特征是基于其对应的分数选择的。基于其对应的分数选择下一个特征。在一些实施例中,下一个特征与不同的对象相关联。在一些实施例中,下一个特征与同一对象相关联。下一个特征的分数低于先前选择的特征,但与多个特征的其他剩余特征相比分数相同或更高。
83.图4是图示根据一些实施例的用于抓握特征的过程的流程图。在所示的示例中,过
程400可以由诸如机器人系统101的机器人系统来实施。在一些实施例中,过程400被实施以执行过程200的步骤210或过程300的步骤302中的一些或全部。
84.在402,为与特征相关联的几何形状确定抓握策略。在一些实施例中,特征与确定的形状相关联。在一些实施例中,对象或特征被分成多个子片段并且确定多个子片段中的每一个的对应形状。基于特征的几何形状,特征的抓握技术可能不同。例如,具有球形形状的特征的抓握技术可能不同于具有直角棱镜形状的特征的抓握技术。
85.机器人系统可以存储将特征与一个或多个抓握策略相关联的数据结构。例如,数据结构可以包括将第一特征与第一抓握策略和第二抓握策略相关联的条目。抓握策略可以应用于特征的不同部分。数据结构可以包括将特征与一个或多个抓握策略以及特征的一个或多个部分相关联的条目。例如,数据结构可以包括在特征的顶部部分将第一特征与第一抓握策略相关联的第一条目,在特征的中间部分将第一特征与第一抓握策略相关联的第二条目,在特征的底部部分将第一特征与第一抓握策略相关联的第三条目,在特征的顶部部分将第一特征与第二抓握策略相关联的第四条目,在特征的中间部分将第一特征与第二抓握策略相关联的第五条目,在对象的底部部分将第一特征与第二抓握策略相关联的第六个条目,等等。
86.在一些实施例中,与特征相关联的抓握策略中的一些不可用,因为一个或多个其他对象阻止末端执行器在特定位置抓握特征。机器人系统被配置为基于位于工作空间区域中的一个或多个对象的当前放置(例如,一些抓握策略被过滤掉)确定用于与对象相关联的特征的一个或多个可用抓握策略。
87.在404,为抓握策略中的每一个确定对应的成功抓握分数。特征的成功抓握分数可以基于抓握策略将导致成功抓握特征的概率。确定抓握工具和抓握位置的不同组合的概率。抓握策略将导致成功抓握特征的概率可能基于一个额外的因素,诸如关于环境的上下文信息、环境的历史抓握信息、机器人臂抓握特征的角度(以避免与其他对象碰撞)、机器人臂抓握特征的高度(以防止抓具顶部处的碰撞)、抓握宽度、抓握点处的表面法线定向、能够被抓握的特征的量等。关于环境的上下文信息包括对象附近或与对象相邻的其他对象的存在,对象附近或与对象相邻的其他对象阻碍机器人臂抓握特征的能力的量,是否有更多对象被连续添加到工作空间等。
88.在406,选择用于与特征相关联的几何形状的具有最高分数的抓握策略。
89.图5是图示根据一些实施例的用于选择抓握技术的过程的流程图。在所示示例中,过程500可以由诸如机器人系统101的机器人系统来实施。在一些实施例中,过程500被实施以执行过程400的步骤402中的一些。
90.一个或多个相机的视觉数据可以提供允许确定对象的边界中的一个或多个的数据。例如,第一相机可以以第一角度面向对象。第一相机可能能够提供关于对象的高度和宽度的信息,但不能够提供对象的深度信息。第二相机可以以第二角度面向对象。第二相机可能能够提供关于对象的深度和高度的信息,但不能够提供关于对象的宽度的信息。可以合并从多个相机接收到的视觉数据以确定与对象相关联的边界信息(估计的、近似的或精确的)。
91.在502,确定与对象相关联的最小边界。对象的最小边界对应于对象在特定维度上可能具有的最小值。
92.在504,确定与对象相关联的最大边界。对象的最大边界对应于对象在特定维度上可能具有的最大值。对象的最大边界对应于对象在特定维度上可能具有的最大值。
93.在506,基于所确定的最小边界和所确定的最大边界来选择对象的抓握策略。可以实施多个抓握策略以基于确定的最小边界和确定的最大边界抓握对象。例如,可以沿其长轴或短轴抓握与对象相关联的特征。由于末端执行器的尺寸,末端执行器可能无法沿着其长轴抓握特征,但能够沿着其短轴抓握特征。在这种情况下,将选择沿其短轴抓握特征的抓握策略。
94.历史数据可以用于选择抓握策略。例如,具有相似最小和最大边界的先前对象的实际尺寸以及先前对象的对应抓握策略可以存储在数据结构中。在机器人系统将对象移动到具有非遮挡视图的区域之后,可以确定先前对象的实际尺寸。在用于先前对象之一的抓握策略对于具有相似最小和最大边界的对象是成功的情况下,可以为具有相似最小和最大边界的当前对象选择成功的抓握策略。
95.图6是图示根据一些实施例的用于抓握和移动对象的过程的流程图。在所示示例中,过程600可以由诸如机器人系统101的机器人系统来实施。
96.人类交互可能是必要的以补充位于工作空间区域中的对象或从放下区域移除对象。这种交互将人置于机器人系统的范围内。机器人系统的控制可以检测到人进入工作空间区域并做出反应以使人的条件安全。
97.在602,开始拾取多个对象并将其从工作空间区域移动到放下区域的过程。
98.在604,确定人是否位于工作空间区域中。机器人系统的多个相机中的一个或多个可以检测到人体部位。在一些实施例中,使用高分辨率rgb图像检测人。在一些实施例中,使用基于人红外特征使用ir传感器感测人。来自一个或多个检测源的数据可以用于确定人位于工作空间区域中的概率。在概率高于检测阈值的情况下,则确定人位于工作空间区域中。
99.在确定人位于工作空间区域中的情况下,过程600进行到606。在确定人不位于工作空间区域中的情况下,过程600进行到610。
100.在606,确定人是否位于与对象相关联的区域中。工作空间区域可以由多个区组成。机器人系统可以从第一区拾取对象。确定人是否位于第一区中。
101.在确定人不位于与对象相关联的区中的情况下,过程600进行到610。在确定人位于与对象相关联的区中的情况下,过程600进行到608。
102.在608,选择不同区中的对象。机器人系统可以在与对象相关联的区中减慢机器人臂的速度,以防止伤害到人。机器人系统可以将机器人臂停在与对象相关的区中,以防止伤害到人。在机器人系统使机器人减速或停止之后,机器人系统可以将机器人臂的轨迹改变到不同的区,使得机器人臂的轨迹避开人。机器人系统可以在检测到人之后发出警报(可听的和/或视觉的)以提醒人。
103.在610,对象被移动到放下区域。
104.图7是图示根据一些实施例的用于移动对象的过程的流程图。在所示示例中,过程 700可以由诸如机器人系统101的机器人系统来实施。在一些实施例中,过程700被实施以执行过程300的步骤304中的一些。
105.人类操作员或其他对象可能会撞击机器人系统的相机或机器人支架,这可能导致机器人系统未校准。机器人系统上的多个基准标记结合附加信息(例如深度或点云数据)可
以用于在一个或多个机器人系统执行其正常操作时连续共定位固定相机、工作空间和机器人系统。还可以使用固定/移动标记和/或固定/移动相机的任何组合来执行这种连续共定位。在一些实施例中,在不使用基准标记并使用来自正常场景的信息的情况下执行连续共定位。连续共定位使得能够检测和纠正此类故障,诸如相机错位、传感器漂移、工作空间重新布置等。这种校准方法使得能够在正常操作期间热插拔、添加或移除相机。
106.在702,检测相机的定向。aruco标记可以用于对准机器人系统的多个相机。在机器人系统要抓握与对象相关联的特征的时间之前,可以检查机器人系统的对准。检测相机的定向并将其与相机的初始对准进行比较。
107.在704,确定是否已经满足任何未校准条件。在一些实施例中,在多个相机检测到机器人基座位置已经从校准的机器人基座位置移动的情况下发生未校准条件。在一些实施例中,在多个相机中的手持相机检测到相机中的一个或多个和/或相机支架中的一个或多个已经移动的情况下发生未校准条件。在一些实施例中,在阈值尝试次数之后机器人臂不能够抓握与对象相关联的特征的情况下,发生未校准条件。
108.在已经满足任何未校准条件的情况下,过程700进行到708。在没有满足任何未校准条件的情况下,过程700进行到706。
109.在706,对象被移动到放下区域。
110.在708,重新校准机器人系统。在一些实施例中,使用多个相机中的手持相机重新校准机器人系统以重新定位工作空间aruco标记。在一些实施例中,通过使用基准标记(例如,aruco)使用相机到工作空间变换进行重新估计来重新校准机器人系统。在一些实施例中,机器人系统被相对于机器人上的标记重新校准。在一些实施例中,使用迭代最近点(icp)算法,使用先前的校准参数作为种子变换来重新校准机器人系统。在一些实施例中,使用手眼重新校准机器人系统。
111.图8是图示根据一些实施例的用于更新机器人系统的操作的过程的流程图。在所示示例中,过程800可以由诸如机器人系统101的机器人系统来实施。
112.在802,在工作空间区域中检测到一个或多个对象。在804,确定一个或多个检测到的对象之一是否是工作空间区域中的新对象。在一个或多个检测到的对象之一不是工作空间区域中的新对象的情况下,过程800进行到806。在一个或多个检测到的对象之一是工作空间中的新对象的情况下,过程800进行到808。在806,根据当前配置维持机器人系统的操作。在808,更新机器人系统的操作。在一些实施例中,工作空间区域的场景被重新计算以包括新对象。在一些实施例中,当新对象是人时,重新计算场景。在一些实施例中,当一个或多个现有对象和新对象有任何变化时,重新计算工作空间区域的场景。
113.图9是图示根据一些实施例的基于抽吸的末端执行器的框图。在各种实施例中,图9的机器人臂末端执行器900可以被用于实施图1的末端执行器108。
114.在所示的示例中,末端执行器900包括经由可旋转的耦合附接到机器人臂904的主体或壳体902。在一些实施例中,壳体902和机器人臂904之间的连接可以包括由控制计算机(诸如图1的控制器106)控制的机动关节。末端执行器900进一步包括抽吸或其他气动管线906,其穿过机器人臂904延伸到壳体902中,以向抽吸控制模块908提供真空源。在各种实施例中,控制模块908例如通过通信接口914经由无线和/或有线通信被连接到末端执行器900外部的控制计算机,例如图1的控制器106。控制模块908包括电子和/或机电元件,其可操作
以向包括末端执行器900的吸盘910、912提供抽吸力,例如,以通过抽吸将末端执行器附接到要使用末端执行器900拾取、移动和放置的物品。
115.在所示的示例中,安装在壳体902的侧面上的相机916提供末端执行器900下方的视场的图像数据。多个力传感器918、920、922、924、926和928分别测量施加到吸盘910和912的力。在各种实施例中,力测量结果经由通信接口914被传送到外部和/或远程控制计算机。在各种实施例中使用传感器读数,以使得机器人臂904和末端执行器900能够被用于将物品紧贴到与其他物品和/或侧壁或其他结构相邻的地方中,和/或检测不稳定性(例如,虽然物品仍处于抽吸下,但在物品预期被放置在其中并且是稳定的地方,物品被压下的后推力不足)。在各种实施例中,水平安装的力传感器对(例如,918和922、924和928)在x

y平面中成直角放置,以使得能够确定所有水平方向上的力。
116.图10是图示根据一些实施例的抓具式末端执行器的框图。在各种实施例中,图10的机器人臂末端执行器1000可以被用于实施图1的末端执行器108。
117.在所示的示例中,末端执行器1000包括经由可旋转的耦合附接到机器人臂1004的主体或壳体1002。在一些实施例中,壳体1002和机器人臂1004之间的连接可以包括由控制计算机(诸如图1的控制器106)控制的机动关节。末端执行器1000进一步包括抓具,该抓具包括铰接的手指(digit)1010和1012以及穿过机器人臂1004延伸到壳体1002中以向抓具控制模块1008提供电力的电源线1006。在各种实施例中,控制模块1008例如通过通信接口1014经由无线和/或有线通信被连接到末端执行器1000外部的控制计算机,例如图1的控制器106。控制模块1008包括电子和/或机电元件,其可操作以操纵抓具手指1010、1012,例如,以抓握要使用末端执行器1000拾取、移动和放置的物品。
118.在所示的示例中,安装在壳体1002的侧面上的相机1016提供末端执行器1000下方的视场的图像数据。多个力传感器1018、1020、1022、1024、1026和1028分别测量施加到手指1010和1012的安装点的力。在各种实施例中,力测量结果经由通信接口1014被传送到外部和/或远程控制计算机。在各种实施例中使用传感器读数,以使得机器人臂1004和末端执行器1000能够被用于将物品紧贴到与其他物品和/或侧壁或其他结构相邻的地方中,和/或检测不稳定性(例如,虽然物品仍处于抽吸下,但在物品预期被放置在其中并且是稳定的地方,物品被压下的后推力不足)。
119.虽然在图9中示出了抽吸型执行器,并且在图10中示出了抓具型执行器,但是在各种实施例中,一个或多个其他和/或不同类型的末端执行器可以被用于机器人系统中,以拾取和放置未知的对象,如本文中所公开的那样。
120.在一些实施例中,传感器被用于检测与其他物品、容器和/或环境的碰撞,并通过轨迹的“顺从”调整来继续自动化操作。例如,在一些实施例中,如果撞击到墙壁或其他结构中,机器人臂减小力并调整轨迹以沿着障碍物跟随,直到它避开障碍物为止。
121.尽管出于理解的清楚的目的,已经相当详细地描述了前述实施例,但是本发明不限于所提供的细节。有许多实施本发明的替代方式。所公开的实施例是说明性的而非限制性的。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献