具有物件丢失管理机制的机器人系统的制作方法

文档序号:18549747发布日期:2019-08-27 22:05阅读:175来源:国知局
具有物件丢失管理机制的机器人系统的制作方法

本技术总体上涉及机器人系统,且更具体地,涉及用于检测和管理物件丢失情形的系统、过程和技术。



背景技术:

由于其不断增加的性能和降低的成本,许多机器人(例如,被配置成自动/自主地执行物理动作的机器)现在广泛地用于许多领域。例如,机器人可以用于在制造和/或组装、封包和/或包装、运输和/或装运等过程执行各种任务(例如,操纵或传递物体通过空间)。在执行任务时,机器人可以复制人类动作,从而取代或减少执行危险或重复任务另外需要的人为参与。

然而,在不考虑技术进步的情况下,机器人通常缺少复制执行更为复杂的任务所需要的人类灵敏度和/或适应性所必须的复杂性。例如,由于接触传感器缺乏灵敏度和/或力量控制力度不足,机器人末端执行器(例如,机器人手或夹持装置)通常难以抓取具有相对较软和/或不规则表面的物体。而且,例如,由于缺乏适应性,机器人通常无法考虑目标条件/情形以外的条件或情况。因此,需要改进的技术和系统以便控制和管理机器人的各种方面。

附图说明

图1是具有物件丢失管理机制的机器人系统可以在其中操作的示例性环境的图解。

图2是示出根据本技术的一个或多个实施方案的机器人系统的框图。

图3a是根据本技术的一个或多个实施方案的夹持状态的实例的图解。

图3b是根据本技术的一个或多个实施方案的夹持状态的另一实例的图解。

图4是示出由根据本技术的一个或多个实施方案的机器人系统执行的示例性任务的俯视图。

图5是用于操作根据本技术的一个或多个实施方案的图1的机器人系统的流程图。

具体实施方式

本文描述了用于具有物件丢失管理机制的机器人系统的系统和方法。根据一些实施方案配置的机器人系统(例如,执行一个或多个指定任务的装置的整合系统)通过根据接触测量值实现目标物体的粒度控制/操纵来提供物件丢失管理。使用一个或多个传感器,机器人系统可以确定表示对应于目标物体相对于末端执行器的稳定性的量化接触量的接触测量值。换句话说,接触测量值可以表示末端执行器对目标物体所具有的量化夹持量。基于所述接触测量值,机器人系统可以重新夹持目标物体,在指定位置执行目标物体的受控放下,选择和/或调整运动计划或它们的组合。

机器人系统可以被配置成基于操纵(例如,物理位移和/或重新定向)目标物体来执行任务。例如,机器人系统可以基于从源位置(例如,料箱、货盘或传送带)拾取目标物体并且将其移动到目的地位置而对各种物体进行挑选或重新安置。在一些实施方案中,为了操纵目标物体,机器人系统可以包括可操作地连接到机器人臂的夹持装置。夹持装置可以被配置成相对于机器人臂固定目标物体。换句话说,机器人系统可以操作夹持装置(经由例如一个或多个相关联的马达/致动器和传感器)以抓取目标物体并且相对于机器人臂对其进行固持。机器人系统可以类似地操作机器人臂以操纵夹持装置、由夹持装置固持的目标物体或其组合。

为了执行任务,在一些实施方案中,机器人系统可以包括成像装置(例如,相机、红外传感器/相机、雷达、激光雷达等),所述成像装置用于识别目标物体的位置和/或姿势(例如,搁置取向)和/或目标物体周围的环境。根据所述位置、姿势或其组合,机器人系统可以实现运动计划(例如,有关致动器移动一个或多个连接和/或接头的一系列控制)以执行任务。例如,为了对目标物体进行挑选和/或重新安置,运动计划可以对应于:首先在源位置夹持目标物体,在空间上对其进行操纵,并且将其放置在目的地位置处。

然而,在一些情况下,在执行任务期间,夹持装置在目标物体上的夹持力(例如,附接程度)可能会失效。因此,目标物体可能会相对于夹持装置位移或移位。在一些情况下,夹持力失效可能会导致丢失物件(例如,目标物体未放置在目的地位置和/或呈预期姿势),诸如在操纵期间当夹持装置放下或失去对目标物体的控制时。失效的夹持力可能是由例如由操纵而引起力施加到目标物体和/或目标物体的惯性、目标物体(例如,箱子或箱子内侧的内容物)的移位或其组合而致使的。而且,例如,失效的夹持力可能是由成像机构中的校准误差引起的。

传统的操纵器(例如,拾取机器人)通常实现不会背离任务的相对固定的运动计划。虽然传统操纵器可以考虑不同位置和/或姿势的物体,但是一旦拾取了物体,用来将物体操纵到目的地位置/取向的运动计划就保持固定。对比而言,下面所描述的机器人系统的各种实施方案被配置成确定(例如,当夹持了目标物体时和/或在执行任务时)接触测量值(例如,夹持的量或程度)和相应地实现目标物体的粒度控制/操纵。下面详细地描述了接触测量值和粒度控制/操纵的确定。

在下文中,阐述了多种特定细节以提供对本公开技术的透彻理解。在其它实施方案中,可以在没有这些特定细节的情况下实践这里介绍的技术。在其它例子中,未详细描述诸如特定功能或例程等熟知的特征,以避免不必要地模糊本公开。本描述中引用“实施方案”、“一个实施方案”等意味着所描述的特定特征、结构、材料或特性包括在本公开的至少一个实施方案中。因此,这些短语在本说明书中出现不一定均表示相同的实施方案。另一方面,这些引用也不一定是相互排斥的。另外,特定特征、结构、材料或特性可以以任何合适的方式组合在一个或多个实施方案中。应当理解,附图中所示出的各种实施方案仅是说明性表示,且不一定按比例绘制。

出于清楚的目的,以下描述中未阐述描述熟知的且通常与机器人系统和子系统相关联但是可能会不必要地模糊所公开的技术的一些重要方面的结构或过程的若干细节。此外,虽然以下公开内容阐述了本技术的不同方面的若干实施方案,但是若干其它实施方案可以具有与该部分中所描述的那些不同的配置或不同的部件。因此,所公开的技术可以具有其它实施方案,所述其它实施方案具有额外的元件或不具有下面所描述的元件中的若干。

下面所描述的本公开的许多实施方案或方面可以采用计算机或控制器可执行指令的形式,包括由可编程计算机或控制器执行的例程。相关领域技术人员将了解,所公开的技术可以在除下面所示出和描述的那些以外的计算机或控制器系统上实践。本文所描述的技术可以在专用计算机或数据处理器中体现,所述专用计算机或数据处理器被专门地编程、配置或构建以执行下面所描述的计算机可执行指令中的一个或多个。因此,如本文中一般使用的术语“计算机”和“控制器”表示任何数据处理器,并且可以包括互联网设备和手持式装置(包括掌上型计算机、可佩戴计算机、蜂窝或移动电话、多处理器系统、基于处理器或可编程消费电子产品、网络计算机、微型计算机等)。通过这些计算机和控制器处理的信息可以在包括液晶显示器(lcd)的任何合适的显示介质上呈现。用于执行计算机或控制器可执行任务的指令可以存储在任何合适的计算机可读介质中或任何合适的计算机可读介质上,所述计算机可读介质包括硬件、固件或硬件和固件的组合。指令可以容纳在任何合适的存储器装置上,所述任何合适的存储器装置包括例如闪存盘、usb装置和/或其它合适的介质。

术语“联接”和“连接”以及其衍生词可以在本文中被用来描述部件之间的结构关系。应当理解,这些术语并非意图作为彼此的同义词。实际上,在特定实施方案中,“连接”可以被用来指示两个或更多个元件彼此直接接触。除非在上下文中另有明确说明,否则术语“联接”可以用于指示两个或更多个元素直接或间接(在它们之间具有其它中间元件)彼此接触,或者两个或更多个元件共同协作或彼此交互(例如,如在因果关系中,诸如用于信号传输/接收或用于功能调用)或二者。

合适的环境

图1是具有物件丢失管理机制的机器人系统100可以在其中操作的示例性环境的图解。机器人系统100包括被配置成执行一个或多个任务的一个或多个结构(例如,机器人)。物件丢失管理机制的各方面可以由各种结构实践或实现。

对于图1中示出的实例,机器人系统100可以包括在仓库或配送/装运中心中的卸载单元102、传递单元104、运输单元106、装载单元108或其组合。机器人系统100中的单元中的每个可以被配置成执行一个或多个任务。所述任务可以按顺序组合,以执行实现目标的操作,所述目标诸如从卡车或火车卸载物体以便存储在仓库中,或者从存储位置卸载物体并且将所述物体装载到卡车或货车上以便进行装运。举另一个实例,任务可以包括将物体从一个容器移动到另一个容器。所述单元中的每个可以被配置成执行一系列动作(例如,操作其中的一个或多个部件)以执行任务。

在一些实施方案中,任务可以包括将目标物体112(例如,箱子、盒子、笼子、货盘等)从起始位置114操纵(例如,移动和/或重新定向)到任务位置116。例如,卸载单元102(例如,拆箱机器人)可以被配置成将目标物体112从载体(例如,卡车)中的位置传递到传送带上的位置。而且,传递单元104(例如,货盘装载机器人)可以被配置成将目标物体112从传送带上的位置传递到运输单元106上的位置,诸如以便将目标物体112装载到运输单元106上的货盘上。举另一个实例,传递单元104(例如,物件拾取机器人)可以被配置成将目标物体112从一个容器传递到另一个容器。在完成操作的过程中,运输单元106可以将目标物体112从与传递单元104相关联的区域传递到与装载单元108相关联的区域,并且装载单元108可以将目标物体112从传递单元104传递(通过例如移动运送目标物体112的货盘)到存储位置(例如,货架上的位置)。下面描述了有关任务和相关联动作的细节。

出于说明性目的,在装运中心的上下文中描述了机器人系统100;然而,应当理解,机器人系统100可以被配置成以其它环境/目的(诸如用于制造、组装、包装、健康护理和/或其它类型的自动化)执行任务。还应当理解,机器人系统100可以包括其它单元,诸如图1中为实处的操纵器、服务机器人、模块化机器人等。例如,在一些实施方案中,机器人系统100可以包括用于将物体从笼式推车或货盘传递到传送带或其它货盘上的货盘卸载单元,用于将物体从一个容器传递到另一个容器的容器切换单元,用于包裹物体的包装单元,用于根据物体的一个或多个特性对物体进行分组的挑选单元,用于根据物体的一个或多个特性以不同方式操纵(例如,用于挑选、分组和/或传递)物体的物件拾取单元,或它们的组合。

合适的系统

图2是示出根据本技术的一个或多个实施方案的机器人系统100的框图。在一些实施方案中,例如,机器人系统100(例如,在上面描述的单元和/或机器人中的一个或多个处)可以包括电子/电气装置,诸如一个或多个处理器202、一个或多个存储装置204、一个或多个通信装置206、一个或多个输入-输出装置208、一个或多个致动装置212、一个或多个运输马达214、一个或多个传感器216或它们的组合。各种装置可以经由有线连接和/或无线连接彼此联接。例如,机器人系统100可以包括总线,诸如系统总线、外围部件互连(pci)总线或pci-express总线、超传输或工业标准架构(isa)总线、小型计算机系统接口(scsi)总线、通用串行总线(usb)、iic(i2c)总线或电气和电子工程师协会(ieee)标准1394总线(也称为“火线”)。而且,例如,机器人系统100可以包括桥接器、适配器、控制器或其它信号相关装置,以便在装置之间提供有线连接。无线连接可以基于例如蜂窝通信协议(例如,3g、4g、lte、5g等)、无线局域网(lan)协议(例如,无线保真(wifi))、对等或装置到装置通信协议(例如,蓝牙、近场通信(nfc)等)、物联网(iot)协议(例如,nb-iot、lte-m等)和/或无线通信协议。

处理器202可以包括数据处理器(例如,中央处理单元(cpu)、专用计算机和/或车载服务器),所述数据处理器被配置成执行存储在存储装置204(例如,计算机存储器)上的指令(例如,软件指令)。处理器202可以实现程序指令以控制其它装置/与其它装置介接,从而致使机器人系统100来执行动作、任务和/或操作。

存储装置204可以包括上面存储有程序指令(例如,软件)的非暂时性计算机可读介质。存储装置204的一些实例可以包括易失性存储器(例如,高速缓冲存储器和/或随机存取存储器(ram))和/或非易失性存储器(例如,快闪存储器和/或磁盘驱动器)。存储装置204的其它实例可以包括便携式存储器驱动器和/或云存储装置。

在一些实施方案中,存储装置204可以被用来进一步存储和提供对处理结果和/或预确定数据/阈值的访问。例如,存储装置204可以存储主数据,所述主数据包括可以由机器人系统100操纵的物体的描述(例如,箱子、盒子和/或产品)。在一个或多个实施方案中,主数据可以包括有关预期将由机器人系统100操纵的物体的尺寸、形状(例如,有关潜在姿势的模板和/或用于识别呈不同姿势的物体的计算机生成模型)、色彩方案、图像、识别信息(例如,条形码、快速响应(qr)码、标志等,和/或其预期位置)、预期重量或它们的组合。在一些实施方案中,主数据可以包括有关物体的操纵相关信息,诸如物体中的每个上的质心位置、对应于一个或多个动作/调动的预期传感器测量结果(例如,有关力、力矩、压力和/或接触测量结果)或它们的组合。而且,例如,存储装置204可以存储物体跟踪数据。在一些实施方案中,物体跟踪数据可以包括扫描的或操纵的物体的日志。在一些实施方案中,物体跟踪数据可以包括物体在一个或多个位置(例如,指定的拾取或放下位置和/或传送带)处的成像数据(例如,图片、点云、实时视频馈送等)。在一些实施方案中,物体跟踪数据可以包括位置和/或物体在一个或多个位置处的取向。

通信装置206可以包括电路,所述电路被配置成经由网络与外部或远程装置通信。例如,通信装置206可以包括接收器、发射器、调制器/解调器(调制解调器)、信号检测器、信号编码器/解码器、连接器端口、网卡等。通信装置206可以被配置成根据一个或多个协议(例如,互联网协议(ip)、无线通信协议等)发送、接收和/或处理电气信号。在一些实施方案中,机器人系统100可以使用通信装置206来在机器人系统100的单元之间交换信息,和/或与机器人系统100外部的系统或装置交换信息(例如,用于报告、数据收集、分析和/或纠错目的)。

输入-输出装置208可以包括用户接口装置,所述用户接口装置被配置成传达信息给人类操作员和/或接收来自人类操作员的信息。例如,输入-输出装置208可以包括显示器210和/或其它输出装置(例如,扬声器、触觉电路或触觉反馈装置等),以便将信息传达给人类操作员。而且,输入-输出装置208可以包括控制或接收装置,诸如键盘、鼠标、触摸屏、传声器、用户接口(ui)传感器(例如,用于接收运动命令的相机)、可佩戴输入装置等。在一些实施方案中,在执行动作、任务、操作或其组合的过程中,机器人系统100可以使用输入-输出装置208来与人类操作员交互。

机器人系统100可以包括物理或结构构件(例如,机器人操纵器臂),所述物理或结构构件在接头处连接以便进行运动(例如,旋转和/或平移位移)。结构构件和接头可以形成动力学链,所述动力学链被配置成操纵末端执行器(例如,夹持装置),所述末端执行器被配置成根据机器人系统100的使用/操作执行一个或多个任务(例如,夹持、自旋、焊接等)。机器人系统100可以包括致动装置212(例如,马达、致动器、电线、人造肌肉、电活性聚合物等),所述致动装置212被配置成围绕对应接头或在对应结构处驱动或操纵(例如,位移和/或重新定向)结构构件。在一些实施方案中,机器人系统100可以包括运输马达214,所述运输马达214被配置成将对应单元/底座从一处运输到另一处。

机器人系统100可以包括传感器216,所述传感器216被配置成获得用于实现任务的信息,诸如有关操纵结构构件和/或有关运输机器人单元的信息。传感器216可以包括装置,所述装置被配置成检测或测量机器人系统100的一个或多个物理性质(例如,机器人系统100的一个或多个结构构件/接头的状态、条件和/或位置)和/或周围环境。传感器216的一些实例可以包括加速计、陀螺仪、力传感器、应变仪、触觉传感器、扭矩传感器、位置编码器等。

例如,在一些实施方案中,传感器216可以包括一个或多个成像装置222(例如,2维和/或3维相机,包括视觉和/或红外相机、激光雷达、雷达和/或其它距离测量或成像装置),所述一个或多个成像装置222被配置成检测周围环境。成像装置214可以生成对检测环境的表示,诸如数字图像和/或点云,用于实现机器/计算机视觉(例如,用于自动检验、机器人引导或其它机器人应用)。如下面进一步详细描述的,机器人系统100(经由例如处理器202)可以处理图像和/或点云,以识别图1的目标物体112、图1的起始位置114、图1的任务位置116、图1的目标物体112的姿势或它们的组合。为了操纵目标物体112,机器人系统100(例如,经由各种单元)可以捕获和分析指定区域(例如,卡车内侧、容器内侧或有关物体在传送带上的拾取位置)的图像,以识别目标物体112以及其起始位置114。类似地,机器人系统100可以捕获和分析另一指定区域(例如,有关将物体放置在传送带上的放下位置、有关将物体放置在容器内侧的位置,或货盘上用于堆垛目的的位置)的图像,以识别任务位置116。

而且,例如,传感器216可以包括位置传感器224(例如,位置编码器、电位器等),所述位置传感器224被配置成检测机器人系统100的结构构件(例如,机器人臂和/或末端执行器)和/或对应接头的位置。机器人系统100可以使用位置传感器224来在执行任务期间跟踪结构构件和/或接头的位置和/或取向。

在一些实施方案中,传感器216可以包括接触传感器226(例如,压力传感器、力传感器、应变仪、压阻/压电传感器、电容式传感器、弹塑性电阻传感器和/或其它触觉传感器),所述接触传感器226被配置成测量与多个物理结构或表面之间的直接接触相关联的特性。接触传感器226可以测量对应于末端执行器(例如,夹持装置)在目标物体112上的夹持的特性。因此,接触传感器226可以输出表示量化测量(例如,测量的力、力矩、位置等)的接触测量值,对应于夹持装置与目标物体112之间的接触或附接程度。例如,接触测量值可以包括与由末端执行器施加到目标物体112上的力相关联的一个或多个力或力矩读数。下面描述了有关接触测量值的细节。

如下面进一步详细描述的,机器人系统100(经由例如处理器202)可以实现不同的动作以基于接触测量值而完成任务。例如,如果初始接触测量值低于阈值,则机器人系统100可以重新夹持目标物体112。而且,如果在执行任务期间接触测量值变得低于阈值,则机器人系统100可以有意地放下目标物体112、调整任务位置116、调整动作的速度或加速度或它们的组合。

接触测量结果

图3a和图3b示出根据本技术的一个或多个实施方案的夹持状态的实例。在一些实施方案中,图1的机器人系统100(例如,在一个或多个单元(诸如上面描述的货盘装载/货盘卸载机器人、拾取机器人等)处)可以包括连接到机器人臂304的末端执行器(例如,夹持装置)。机器人臂304可以包括被配置成操纵末端执行器的结构构件和/或在构件之间的接头。可以通过操作图2的连接到机器人臂304的结构构件和/或接头的致动装置212来操纵末端执行器。

在一些实施方案中,末端执行器(例如,夹持装置)可以被配置成夹持物体,从而相对于末端执行器对物体进行紧固或固定。还可以通过操作致动装置212中的一个或多个来操作末端执行器(例如,用于抓取和/或释放),所述致动装置212与末端执行器的一个或多个部分相关联或附接到所述一个或多个部分。

在一个或多个实施方案中,如图3a中所示,末端执行器可以包括夹持装置302(例如,收缩性或吸力夹持装置),所述夹持装置302被配置成经由吸引力固持或固定目标物体112,诸如通过在夹持装置302与目标物体112之间形成和维持真空条件而实现。例如,夹持装置302可以包括一组吸盘306,所述一组吸盘306被配置成接触目标物体112的表面,并且在吸盘306与所述表面之间的空间中形成/保持真空条件。当经由机器人臂304降下夹持装置302时,可以产生真空条件,从而将吸盘306压抵于目标物体112的表面并且挤出相对表面之间的气体。当机器人臂304提起夹持装置302时,吸盘306内侧的空间与周围环境之间的压力差可以使目标物体112保持附接到吸盘306。因此,夹持装置302在目标物体112上的夹持或附接程度可以基于成功地产生和保持真空条件的吸盘306的数量。

各种因素可能会阻碍吸盘306成功地产生和保持真空条件。例如,图2的成像装置222中的校准误差可以致使夹持装置302相对于目标物体112错位或不对准。为此,吸盘306中的一个或多个可能不会正确地接触(例如,如由分离间隙322所示出)目标物体112的表面来产生和保持真空条件。而且,目标物体112的表面上的意外畸形或粒度可能会阻碍吸盘306中的一个或多个在目标物体112的保持真空条件的表面上形成密封空间。而且,在目标物体112的操纵期间,吸盘306中的一个或多个可能会经受由目标物体112的移动惯性和/或移位(例如,箱子或箱子内侧的内容物)而引起的力。当经受的力大于形成的密封的完整性时,吸盘306可能无法保持真空条件。

在一些实施方案中,夹持装置302包括图2的接触传感器226(例如,一个或多个力、压力、力矩和/或其它触觉传感器),所述接触传感器226被配置成确定接触测量值312。接触传感器226可以生成接触测量值312作为夹持装置302对目标物体112的附接程度的表示。换句话说,接触测量值312可以表示目标物体112上的末端执行器的夹持测量值或夹持量。例如,接触传感器226可以包括触摸传感器或触觉传感器,所述触摸或触觉传感器被配置成指示感测的表面是否接触另一表面,和/或被配置成确定接触另一表面的表面区域的大小。而且,接触传感器226可以包括压力传感器,所述压力传感器被配置成测量吸盘306内侧的压力(例如,真空条件)。而且,接触传感器226可以包括线性力传感器,所述线性力传感器被配置成测量吸盘306所承载或支撑的目标物体112的重量(例如,如由虚直线箭头示出)。另外,接触传感器226可以包括力矩传感器,所述力矩传感器被配置成测量吸盘306、夹持装置302和/或机器人臂304上的力矩(例如,如由虚曲线箭头示出)。与完全夹持的状态相比,当吸盘306中的一些(例如,定位在外围的那些)未能保持真空条件时,力矩测量结果可能会改变(例如,增加)。根据接触传感器226的类型和/或位置,接触测量值312可以对应于:吸盘306上的测量结果(例如,内部压力、线性力和/或力矩)的总和或平均值;吸盘306的数量和/或其位置,其中测量结果满足真空阈值;或它们的组合。

举说明性实例,图3a示出在对目标物体112进行夹持(如由横穿到目标物体112的箭头所示出)的夹持装置302的远端(即,位于图3a的右侧)上的吸盘。相比而言,夹持装置302的近端(即,位于图3a的左侧)上的吸盘被示出为通过分离间隙322进行分离。因此,对应于远端上的吸盘的线性力传感器可以确定与由远端吸盘所承载的重量相关联的非零读数。而且,对应于近端上的吸盘的线性力传感器可以确定由于夹持失败而引起的零或近零读数。另外,由于力的不平均分布,与夹持装置302相关联的力矩传感器可以确定非零读数。

相比而言,如果所有吸盘306与目标物体112的表面形成和维持了真空条件,则线性力读数在所有吸盘306处将具有非零幅值和/或线性力读数之间的偏差将在相对小的范围内。另外,因为重量将跨吸盘306以基本均匀的方式分布,所以在夹持装置302处测量的力矩将更接近零值。

为此,机器人系统100可以使用接触测量值312的以上实例作为夹持装置302在目标物体112上的夹持力的表示。例如,线性力读数和/或力矩读数的偏差可以成反比地表示夹持强度。换句话说,与预期读数的偏差越大(例如,线性力测量结果和/或非零力矩测量结果的近零偏差可以对应于强夹持力)可以对应于夹持力越弱。在一些实施方案中,机器人系统100还可以使用查找/转译表、等式、过程或其组合,以便根据夹持装置302和目标物体112的不同取向(例如,姿势)转译/置换预期读数。在一些实施方案中,主数据可以包括有关夹持装置302和目标物体112的不同取向中的每个的预期读数。机器人系统100可以使用预期读数来根据夹持装置302和目标物体112的取向评估或处理接触测量值312。

在一些实施方案中,如图3b中所示,图1的机器人系统100(例如,在一个或多个单元(诸如上面描述的货盘装载/货盘卸载机器人、拾取机器人等)处)可以包括夹持装置352(例如,冲击式夹持装置),所述夹持装置352被配置成经由直接冲击物理地抓住目标物体112。例如,夹持装置352可以包括夹持爪356,所述夹持爪356被配置成基于在目标物体112上施加相对力或压缩力而夹持目标物体112。可以基于夹持爪356与目标物体112的接触表面之间产生的摩擦力而夹持目标物体112。

各种因素可能会阻碍夹持爪356成功地夹持目标物体112。例如,图2的成像装置222的校准误差可以致使夹持装置352相对于目标物体112错位或不对准。为此,夹持爪356可以接触目标物体112的非预期部分,诸如表面特性减小产生的摩擦力的部分。而且,目标物体112的表面上的非预期畸形或粒度可能会减小产生的摩擦力。而且,在目标物体112的操纵期间,夹持爪356可以经受由于目标物体112的移动惯性和/或移位(例如,箱子或箱子内侧的内容物)而引起的力。当经受的力大于摩擦力时,夹持爪356可能无法保持真空条件。

在一些实施方案中,夹持装置352包括图2的接触传感器226(例如,一个或多个力、压力和/或力矩传感器),所述接触传感器226被配置成确定接触测量值312。例如,接触传感器226可以包括接触传感器,所述接触传感器指示感测表面与其它表面之间的直接接触,和/或测量接触面积的大小。而且,接触传感器226可以包括在夹持爪356的接触表面上的压力或接触传感器,所述压力或接触传感器被配置成测量由夹持爪356施加在目标物体112上的力。另外,接触传感器226可以包括线性力传感器,所述线性力传感器被配置成测量目标物体112的重量。当夹持力失效时,目标物体112可能会滑动,这可能会导致由线性力传感器感测的重量减轻。

如图3b中所示,当夹持装置352向上移动以试图提起目标物体112时,不适当或失效的夹持力可能会导致目标物体112保持静止(即,相对于夹持爪356向下滑动)。因此,由线性力传感器测量的重量或力可以小于当夹持力足够且目标物体112相对于夹持爪356保持固定时所测量的实际重量或实际重量的一部分(例如,每个夹爪上约一半)。举说明性实例,在夹持动作之后的提升动作期间,机器人系统100可以跟踪线性力传感器的与夹持装置352、机器人臂304和/或夹持爪356相关联的测量结果。预期的测量结果曲线(图3b中使用虚线以力幅值与时间图示出)可以对应于在预确定持续时间内测量的向下的力,所述向下的力升高以匹配目标物体112的重量。然而,有关不适当夹持的传感器读数可以对应于测量的向下力,所述测量的向下力未能升高到预期水平并且在初始提升操纵结束时达到零或非零幅值。在一些情况下,夹持力的瞬间损失(即,代表总体弱夹持条件)可以对应于感测的线性力的负峰或瞬间下降。

在一些实施方案中,接触传感器226可以包括力矩传感器,所述力矩传感器被配置成测量夹持爪356上的力矩,诸如当夹持装置水平地定向时。不适当的夹持力可能会致使在提升动作期间目标物体112从夹持爪356(例如,远离)移位,从而改变目标物体112相对于夹持装置352的重心位置。因此,施加到夹持爪356的力矩的量和/或方向可以基于移位的重心而改变。接触测量值312可以对应于根据接触传感器226的类型和/或位置的上述测量结果。

系统操作

图4是示出由根据本技术的一个或多个实施方案的机器人系统100执行的示例性任务402的俯视图。如上所述,任务402可以代表由机器人系统100(例如,通过上面所描述的单元中的一个,诸如图1的传递单元104)执行以实现目标的一系列动作。如图4中所示,例如,任务402可以包括将目标物体112从起始位置114(例如,接纳货盘或料箱上/中的位置)移动到任务位置116(例如,挑选的货盘或料箱上/中的位置)。

在一些实施方案中,机器人系统100可以对预确定区域成像,以识别和/或定位起始位置114。例如,机器人系统100可以包括指向拾取区域的源扫描仪412(即,图2的成像装置222的例子),所述拾取区域诸如指定用于源货盘或料箱的区域和/或传送带的接收侧上的区域。机器人系统100可以使用源扫描仪412以生成指定区域的成像数据(例如,捕获的图像和/或点云)。机器人系统100(经由例如图2的处理器202)可以为成像结果实现计算机视觉过程,以识别位于指定区域中的不同物体(例如,箱子或盒子)。下面描述了物体识别的细节。

根据识别的物体,机器人系统100可以选择(例如,根据预确定顺序或规则集和/或物体廓线的模板)一个作为用于执行任务402的目标物体112。对于选定目标物体112,机器人系统100还可以还可以对成像结果进行处理,以确定起始位置114和/或初始姿势。下面描述了选择和位置/姿势确定的细节。

机器人系统100还可以对另一预确定区域进行成像和处理,以识别任务位置116。在一些实施方案中,例如,机器人系统100可以包括成像装置222(未图示)的另一例子,所述成像装置222被配置成生成安置区域的成像结果,所述安置区域诸如指定用于挑选的货盘或料箱的区域和/或在传送带的发送侧上的区域。可以对成像结果进行处理(经由例如处理器202),以识别有关放置目标物体112的任务位置116和/或对应姿势。在一些实施方案中,机器人系统100可以根据有关堆垛和/或布置多个物体的预确定顺序或规则集来识别(基于或在无成像结果的情况下)任务位置116。

使用识别的起始位置114和/或任务位置116,机器人系统100可以操作对应单元(例如,传递单元104)的一个或多个结构(例如,机器人臂304和/或末端执行器,诸如图3a的夹持装置302和/或图3b的夹持装置352)来执行任务402。因此,机器人系统100(经由例如处理器202)可以计算(经由例如运动计划规则或算法)基本运动计划422,所述基本运动计划422对应于将被对应单元实现以执行任务402的一个或多个动作。例如,有关传递单元104的基本运动计划422可以包括对末端执行器进行定位以便拾取、夹持目标物体112,提升目标物体112,将目标物体112从起始位置114上方传递到任务位置116上方,降下目标物体112,以及释放目标物体112。而且,基本运动计划422可以仅包括成功地完成任务402所必须的动作,诸如用于理想条件(例如,不具有任何中断、误差、非预期外部影响等)或执行。

在一些实施方案中,机器人系统100可以通过确定有关图2的操作机器人臂304和/或末端执行器的致动装置212中的一个或多个的一系列命令和/或设置来计算基本运动计划422。例如,机器人系统100可以使用处理器202来计算致动装置212的用于操纵末端执行器和机器人臂304的命令和/或设置,以将夹持装置放置在围绕起始位置114的特定位置处,用末端执行器接合和抓取目标物体112,将末端执行器放置在围绕任务位置116的特定位置处,并且从末端执行器释放目标物体112。机器人系统100可以通过根据确定的一系列命令和/或设置操作致动装置212来执行动作以便完成任务402。

在一些实施方案中,任务402可以包括扫描(例如,扫描条形码或qr码)目标物体112,诸如出于产品记录目的和/或用于进一步识别目标物体112。例如,机器人系统100可以包括物体扫描仪416(例如,成像装置222的另一例子,诸如条形码扫描仪或qr码扫描仪),所述物体扫描仪416被配置成对目标物体112进行扫描,通常在拾取区域与放置区域之间的位置处进行扫描。因此,机器人系统100可以计算基本运动计划422,以将目标物体112以预确定姿势放置在扫描位置处,以使得目标物体112的一部分或表面呈现给物体扫描仪416。

在执行有关任务402的动作的过程中,机器人系统100可以跟踪目标物体112的当前位置424(例如,对应于由机器人系统100使用的网格的一组坐标)。例如,机器人系统100(经由例如处理器202)可以根据来自图2的位置传感器224的数据跟踪当前位置424。机器人系统100可以根据来自位置传感器224的数据定位动力学链中的机器人臂304的一个或多个部分(例如,机器人臂的结构构件和/或接头)。机器人系统100还可以基于机器人臂304的位置和取向而计算末端执行器的位置和取向,并且因此计算由末端执行器固持的目标物体112的当前位置424。而且,机器人系统100可以基于根据航迹推算机制处理其它传感器读数(例如,力读数或加速计读数)、执行的致动命令/设置和/或相关联定时或它们的组合而跟踪当前位置424。

而且,在执行有关任务402的动作过程中,机器人系统100(经由例如接触传感器226)可以确定图3a/图3b的接触测量值312。机器人系统100可以根据预确定取样间隔或定时或其组合在各种时间确定或对接触测量值312进行取样,诸如在执行基本运动计划422(例如,夹持动作、位移动作和/或旋转动作)的一部分之后。

基于接触测量值312,机器人系统100可以执行不同的动作来完成任务402。换句话说,机器人系统100可以根据接触测量值312实现对目标物体112的粒度控制/操纵。例如,当接触测量值312满足第一阈值时,机器人系统100可以实现基本运动计划422。当接触测量值312未能满足(例如,变得低于)第一阈值时,机器人系统100可能会与基本运动计划422偏离,并且执行一个或多个额外和/或不同动作。例如,当在实现夹持动作(例如,通过将图3a的吸盘306按压到目标物体112中或通过经由图3b的夹持爪356将压缩力施加到目标物体112的相对侧上)之后接触测量值312低于夹持阈值时,机器人系统100可以在释放目标物体112和/或调整末端执行器的位置之后重新执行夹持动作。如果接触测量值312保持低于夹持阈值,则机器人系统100可以随后确定接触测量值312,并且重复重新夹持过程直到预确定极限为止。如果重新夹持尝试导致满足夹持阈值的接触测量值312,则机器人系统100可以继续执行基本运动计划422的剩余部分。在一些实施方案中,如果在有限数量的尝试之后机器人系统100未能充分地夹持目标物体112,则机器人系统100可以放下并离开目标物体112,并且在不同的物体上执行任务(例如,将不同的物体识别为目标物体112以便执行下一个任务)。

而且,当在目标物体112的操纵期间接触测量值312变得低于中转阈值时(例如,在执行夹持动作之后),机器人系统100可以与基本运动计划422偏离。在一些实施方案中,机器人系统100可以基于当前位置424而执行后续动作(例如,受控放下)。例如,当目标物体112的当前位置424高于/在一个或多个预确定区域内时,机器人系统100可以有意地降下和/或释放目标物体112。

在一些实施方案中,指定用于受控放下动作的预确定区域可以包括源放下区域432、目的地放下区域434和/或一个或多个中转放下区域436。源放下区域432可以对应于由拾取区域的边界所封闭的区域(例如,与所述区域重叠或从所述区域向内偏移预确定距离),所述区域诸如货盘的边缘或料箱/笼子的壁。类似地,目标地放下区域434可以对应于放置区域的边界。中转放下区域436可以包括在拾取区域与放置区域之间的区域,在所述区域机器人系统100可以放下或放置目标物体112,以使得物体将不会干扰后续任务的执行。对于图4中示出的实例,中转放下区域436可以在物体扫描仪416的前面和/后后面(即,在从拾取区域移动到放置区域的过程中)。

因此,当接触测量值312未能满足阈值时,机器人系统100可以计算有关放置目标物体112的放下区域中的一个中的调整的放下位置442。机器人系统100可以将调整的放下位置442识别为当前位置424与任务位置116之间的位置,所述位置具有足够的空间用于放置目标物体112。机器人系统100可以以与识别任务位置116类似的方式识别调整的放下位置442。基于识别的调整的放下位置442和当前位置424,机器人系统可以计算用于移动目标物体112并将其放置在调整的放下位置442的调整的运动计划444。下面描述了有关调整的放下位置442的识别和调整的运动计划444的计算的细节。

操作流程

图5是操作图1的根据本技术的一个或多个实施方案的机器人系统100的方法500的流程图。方法500可以用于根据图3a/图3b的接触测量值312实现图1的目标物体112的粒度控制/操纵。换句话说,方法500允许机器人系统100根据接触测量值312遵循和/或偏离(例如,补充和/或代替执行其它动作)图4的基本运动计划422。可以使用图2的处理器202中的一个或多个基于执行存储在图2的存储装置204中的一个或多个上的指令而实现方法500。

在框502处,机器人系统100可以对指定区域进行扫描。在一些实施方案中,机器人系统100可以使用(经由例如由处理器202发送的命令/提示)图2的成像装置222中的一个或多个(例如,图4的源扫描仪412和/或其它区域扫描仪)以生成一个或多个指定区域的成像结果(例如,捕获的数字图像和/或点云),所述一个或多个指定区域诸如拾取区域和/或放下区域(例如,图4的源放下区域432,图4的目的地放下区域434和/或图4的中转放下区域436)。

在框504处,机器人系统100可以识别图1的目标物体112和相关联的位置(例如,图1的起始位置114和/或图1的任务位置116)。在一些实施方案中,例如,机器人系统100(经由例如处理器202)可以根据模式识别机制和/或一组规则来对成像结果进行分析,以识别物体廓线(例如,周边边缘或表面)。机器人系统100还可以将物体廓线的组群(例如,根据预确定规则和/或姿势模板)识别为对应于物体的每个唯一实例。例如,机器人系统100可以识别物体廓线的组群,所述组群对应于跨越物体线的色彩、亮度、深度/位置或其组合的模式(例如,相同的值或以已知的速率/模式变化)。而且,例如,机器人系统100可以根据主数据中限定的预确定形状/姿势模板识别物体廓线的组群。

根据拾取位置中的识别的物体,机器人系统100可以选择(例如,根据预确定顺序或规则集合/或物体廓线的模板)一个座位目标物体112。例如,机器人系统100可以选择目标物体112作为位于上面的物体,诸如根据代表相对于源扫描仪412的已知位置的距离/位置的点云。而且,例如,机器人系统100可以选择目标物体112作为位于转角/边缘处的物体,并且所述物体具有成像结果中曝光/示出的两个或更多个表面。另外,机器人系统100可以根据预确定模式(例如,相对于参考位置从左到右,从最近到最远等)选择目标物体112。

对于选定目标物体112,机器人系统100还可以对成像结果进行处理,以确定起始位置114和/或初始姿势。例如,当与物体廓线的组群进行比较时,机器人系统100可以基于从多个预确定姿势模板(例如,物体廓线的根据物体的对应取向的不同潜在布置)中选择对应于最低差异测量值的一个而确定目标物体112的初始姿势。而且,机器人系统100可以通过将目标物体112在成像结果中的位置(例如,有关确定的姿势的预确定参考点)平移到由机器人系统100所使用的网格中的位置来确定起始位置114。机器人系统100可以根据预确定校准图对位置进行平移。

在一些实施方案中,机器人系统100可以对放下区域的成像结果进行处理,以确定物体之间的开放空间。机器人系统100可以基于根据预确定校准图对物体线进行映射而确定开放空间,所述预确定校准图将图像位置平移到系统所使用的真实世界位置和/或坐标。机器人系统100可以将开放空间确定为属于不同组群/物体的物体线(并且因此物体表面)之间的空间。在一些实施方案中,机器人系统100可以基于测量开放空间的一个或多个尺寸和将测量的尺寸与目标物体112的一个或多个尺寸(例如,如存储在主数据中)进行比较而确定适合于目标物体112的开放空间。机器人系统100可以根据预确定模式(例如,相对于参考位置从左到右,从最近到最远,从底部到顶部)将合适的/开放空间中的一个选择作为任务位置116。

在一些实施方案中,机器人系统100可以在不处理或补充处理成像结果的情况下确定任务位置116。例如,机器人系统100可以在不对区域进行成像的情况下根据预确定动作顺序和位置将物体放置在放置区域。而且,例如,机器人系统100可以对成像结果进行处理,以便执行多个任务(例如,传递多个物体,诸如位于堆垛的共同层/层上的物体)。

在框506处,机器人系统100可以计算用于执行图4的有关目标物体112的任务402的基本计划(例如,图4的基本运动计划422)。例如,机器人系统100可以基于计算一系列命令或设置或其组合而计算有关图2的将操作图3a/图3b的机器人臂304和/或末端执行器(例如,图3a的夹持装置302和/或图3b的夹持装置352)的致动装置212的基本运动计划422。对于一些任务,机器人系统100可以计算将操纵机器人臂304和/或末端执行器以将目标物体112从起始位置114传递到任务位置116的顺序和设定值。机器人系统100可以实现运动规划机制(例如,过程、函数、等式、算法、计算机生成/可读模型或它们的组合),所述运动规划机制被配置成根据一个或多个约束条件、目标和/或规则来计算空间中的路径。例如,机器人系统100可以使用a*算法、d*算法和/或基于网格的其它搜索来计算空间中的路径,以便将目标物体112从起始位置114移动到任务位置116。运动规划机制可以使用另一过程、函数或等式和/或转译表来将路径转换成有关致动装置212的一系列命令或设置或其组合。在使用运动规划机制的过程中,机器人系统100可以计算将操作机器人臂304和/或末端执行器的顺序,并且致使目标物体112遵循计算的路径。

在框508处,机器人系统100可以开始执行基本计划。机器人系统100可以开始基于根据所述一系列命令或设置或其组合操作致动装置212而执行基本运动计划422。机器人系统100可以执行基本运动计划422中的第一组动作。例如,机器人系统100可以操作致动装置212,以将末端执行器放置在计算位置和/或围绕起始位置114的取向,以便如框552中所示夹持目标物体112。在框554处,机器人系统100可以操作致动装置212以接合末端执行器(例如,夹持装置302和/或夹持装置352)和夹持目标物体112。在一些实施方案中,如框556处所示,机器人系统100可以通过将末端执行器向上移动预确定距离来执行初始提升。在一些实施方案中,机器人系统100可以重置或初始化被用来跟踪若干夹持动作的迭代计数器‘i’。

在框510处,机器人系统100可以测量形成的夹持力。机器人系统100可以基于使用图2的接触传感器226中的一个或多个确定图3a/图3b的接触测量值312而测量形成的夹持力。机器人系统100可以在执行基本运动计划422的同时确定接触测量值312,诸如在夹持目标物体112(框554)之后和/或执行初始提升(框556)之后。机器人系统100可以通过以下方式确定接触测量值312:使用接触传感器226中的一个或多个来测量机器人臂304上的一个或多个位置处、末端执行器上的一个或多个位置或其组合处的力、力矩、压力或它们的组合。在一些实施方案中,诸如对于由夹持装置302(例如,吸力夹持装置,包括图3a的吸盘306)形成的夹持力,接触测量值312可以对应于吸盘306的数量、位置或其组合,所述吸盘306接触目标物体112的表面并且在其中保持真空条件。在一些实施方案中,诸如对于由夹持装置352(例如,冲击式夹持装置,包括图3b的夹持爪356)形成的夹持力,接触测量值312可以对应于目标物体112相对于夹持爪356的移位。

在决定框512处,机器人系统100可以将测量的夹持力与阈值(例如,初始夹持力阈值)进行比较。例如,机器人系统100可以将接触测量值312与预确定阈值进行比较。换句话说,机器人系统100可以确定接触力/夹持力是否足以继续操纵(例如,提起、传递和/或重新定向)目标物体112。

当测量的夹持力未能满足阈值时,机器人系统100可以评估有关重新夹持目标物体112的迭代计数是否已经达到迭代阈值,如决定框514处所示出。在迭代计数小于迭代阈值时,当接触测量值312未能满足(例如,低于)阈值时,机器人系统100可能会偏离基本运动计划422。因此,在框520处,机器人系统100可以操作机器人臂304和/或末端执行器,以执行基本运动计划422中不包括的重新夹持动作。例如,重新夹持动作可以包括用于致动装置212的将致使机器人臂304降下末端执行器(例如,与初始提升反向)和/或致使末端执行器释放目标物体112并重新夹持目标物体112的预确定顺序的命令或设置或其组合。在一些实施方案中,预确定顺序还可以操作机器人臂304,以在释放目标物体之后和重新夹持目标物体之前调整夹持装置的位置。在执行重新夹持动作的过程中,机器人系统100可以暂停基本运动计划422的执行。在执行重新夹持动作之后,机器人系统100可以递增迭代计数。

在重新夹持物体之后,机器人系统100可以如上面有关框510所描述的测量形成的夹持力,并且如上面有关框512所描述评估形成的夹持力。机器人系统100可以如上所述尝试重新夹持目标物体112,直到迭代计数达到迭代阈值为止。当迭代计数达到迭代阈值时,机器人系统100可以停止执行基本运动计划422,如框516处所示。在一些实施方案中,机器人系统100可以请求操作员输入,如框518处所示。例如,机器人系统100可以经由图2的通信装置206和/或图2的输入-输出装置208生成操作员通知(例如,预确定消息)。机器人系统100可以根据操作员输入处理任务402和/或基本运动计划422。在一些实施方案中,机器人系统100可以取消或删除基本运动计划422,记录有关对应任务402的预确定状态(例如,错误代码),或执行它们的组合。在一些实施方案中,机器人系统100可以通过如上所述对拾取/任务区域成像(框502)和/或将拾取区域中的另一物品识别为目标物体(框504)来重新开始所述处理。

当测量的夹持力满足阈值时,机器人系统100可以继续执行基本运动计划422的剩余部分/动作,如框522处所示。类似地,在重新夹持目标物体112之后当接触测量值312满足阈值时,机器人系统100可以恢复执行暂停的基本运动计划422。因此,机器人系统100可以通过根据一系列剩余命令和/或设置操作致动装置212和/或图2的运输马达214继续执行基本运动计划422中的顺序动作(即,在夹持和/或初始提升之后)。例如,机器人系统100可以根据基本运动计划422传递(例如,垂直地和/或水平地)和/或重新定向目标物体112

在执行基本运动计划422时,机器人系统100可以跟踪目标物体112的当前位置424和/或当前取向。机器人系统100可以根据来自图2的位置传感器224的输出跟踪当前位置424,以定位机器人臂304和/或末端执行器的一个或多个部分。在一些实施方案中,机器人系统100可以通过利用计算机生成的模型、过程、等式、位置图或它们的组合对位置传感器224的输出进行处理来跟踪当前位置424。因此,机器人系统100可以组合接头和结构构件的位置或取向,并且将位置进一步映射到网格以计算和跟踪当前位置424。在一些实施方案中,基本运动计划422可以使用多元化系统。例如,机器人系统100可以包括多个信标源。机器人系统100可以测量机器人臂304和/或末端执行器中的一个或多个位置处的信标信号,并且使用测量结果(例如,信号强度、时间标记或传播延迟和/或相移)计算信号源与测量的位置之间的分离距离。机器人系统100可以将分离距离映射到信号源的已知位置,并且将信号接收位置的当前位置计算为映射的分离距离重叠的位置。

在决定框524处,机器人系统100可以确定基本计划是否已完全执行到最后。例如,机器人系统100可以确定基本运动计划422中的所有动作(例如,命令和/或设置)是否已经完成。而且,当当前位置424匹配任务位置116时,机器人系统100可以确定基本运动计划422完成。当机器人系统100已经完成执行基本计划时,机器人系统100可以通过如上所述对拾取/任务区域成像(框502)和/或将拾取区域中的另一物品识别为目标物体(框504)来重新开始过程。

否则,在框526处,机器人系统100可以在目标物体112的传递期间测量夹持力(即,通过确定接触测量值312)。换句话说,在执行基本运动计划422的同时,机器人系统100可以确定接触测量值312。在一些实施方案中,机器人系统100可以根据取样频率或在预确定时间确定接触测量值312。在一些实施方案中,机器人系统100可以使用致动装置212在执行预确定数量的命令或设置之前和/或之后确定接触测量值312。例如,机器人系统100可以在特定类别的操纵(诸如提升或旋转)之后或期间对接触传感器226进行取样。而且,例如,当加速计输出的方向和/或量级匹配或超过表示突然或快速移动的预确定阈值时,机器人系统100可以对接触传感器226进行取样。机器人系统100可以使用上述一个或多个过程(例如,有关框510)确定接触测量值312。

在一些实施方案中,机器人系统100可以确定夹持装置和/或目标物体112的取向,并且相应地调整接触测量值。机器人系统100可以基于取向而调整接触测量值,以将有关接触传感器的感测方向与根据取向施加到目标物体的重力之间的方向关系纳入考虑。例如,机器人系统100可以根据取向计算感测方向与参考方向(例如,“向下”或重力方向)之间的角度。机器人系统100可以根据对应于计算的角度的因素和/或符号来缩放或增加接触测量值。

在决定框528处,机器人系统100可以将测量的夹持力与阈值(例如,传递夹持力阈值)进行比较。在一些实施方案中,传递夹持力阈值可以小于或等于与评估目标物体112上的初始(例如,在传递之前)夹持力相关联的初始夹持力阈值。因此,机器人系统100可以执行更严格的规则以便在开始目标物体112的传递之前对夹持力进行评估。有关夹持力的阈值要求最初可能较高,因为足以拾取目标物体112的接触力可能足以传递目标物体112。

当测量的夹持力满足(例如,不小于)阈值时,机器人系统100可以如框522处所示和如上所述继续执行基本计划。当测量的夹持力未能满足(例如,小于)阈值时,机器人系统100可以与基本运动计划422偏离,并且如框530处所示执行一个或多个响应性动作。因此,当根据阈值测量的夹持力不足时,机器人系统100可以根据不包括在基本运动计划422中的命令和/或设置操作机器人臂304、末端执行器或其组合。在一些实施方案中,机器人系统100可以基于当前位置424而执行不同的命令和/或设置。

出于说明性目的,将使用受控放下描述响应动作。然而,应当理解,机器人系统100可以执行其它动作,诸如通过如框516处所示停止执行基本运动计划422和/或通过如框518处所示请求操作员输入。

受控放下包括用于以受控方式(即,基于降下和/或释放目标物体112而不是由于夹持力完全失效)将目标物体112放置在放下区域中的一个(例如,而不是任务位置116)中的一个或多个动作。在执行受控放下的过程中,机器人系统100可以根据当前位置424动态地(即,实时地和/或在执行基本运动计划422时)计算不同的位置、操纵或路径和/或致动装置命令或设置。

在框562处,机器人系统100可以计算图4的调整的放下位置442和/或有关放置目标物体112的相关联姿势。在计算调整的放下位置442的过程中,机器人系统100可以识别最靠近当前位置424和/或在当前位置424前方(例如,在当前位置424与任务位置116之间)的放下区域(例如,图4的源放下区域432,图4的目的地放下区域434,或图4的中转放下区域436)。机器人系统100可以基于将当前位置424与限定放下区域的边界进行比较而识别合适的放下区域。在一些实施方案中,当当前位置424在放下区域中的一个内时(例如,诸如当目标物体112仍然在源货盘/料箱或目标货盘/料箱上方时),机器人系统100可以将调整的放下位置442计算为当前位置424。在一些实施方案中,当当前位置424在放下区域中的一个内时(例如,诸如当目标物体112仍然在源货盘/料箱或目标货盘/料箱上方时),机器人系统100可以将调整的放下位置442计算为当前位置424。在一些实施方案中,当当前位置424在放下区域中的一个内时,机器人系统100可以基于将预确定偏移距离和/或方向添加到当前位置424而计算调整的放下位置442,诸如以便将目标物体112放置远离常用走廊。

而且,当当前位置424在放下区域之间(即,不在其内)时,机器人系统100可以计算至放下区域的距离(例如,至有关放下区域的代表性参考位置的距离)。因此,机器人系统100可以识别最靠近当前位置424和/或在当前位置424前方的放下区域。基于识别的放下区域,机器人系统100可以将其中的位置计算为调整的放下位置442。在一些实施方案中,机器人系统100可以基于根据预确定次序(例如,相对于参考位置从左到右,从底部到顶部,和/或从前部到后部)选择一个位置而计算调整的放下位置442。

在一些实施方案中,机器人系统100可以计算从当前位置424到放下区域内的开放空间(例如,如在框504中识别和/或根据进行中的物体放置跟踪)的距离。机器人系统100可以选择在当前位置424前方和/或最靠近当前位置424的开放空间作为调整的放下位置442。

在一些实施方案中,在选择放下区域和/或开放空间之前,机器人系统100可以使用预确定过程和/或等式来将接触测量值312转换成最大传递距离。例如,预确定过程和/或等式可以基于接触测量值312的各种值而估计在夹持力完全失效之前的对应最大传递距离和/或持续时间。因此,机器人系统100可以过滤掉比当前位置424的最大传递距离更远的可用放下区域和/或开放空间。在一些实施方案中,当机器人系统100未能识别可用放下区域和/或开放空间时(例如,当可接近放下区域满时),机器人系统100可以如框516处所示停止执行基本运动计划422,和/或如框518处所示请求操作员输入。

在框566处,机器人系统100可以计算用于将目标物体112从当前位置424传递到调整的放下位置442的调整的运动计划444。机器人系统100可以以与上面有关关框506所描述的方式类似的方式计算调整的运动计划444。例如,机器人系统100可以使用a*或d*来计算从当前位置424到调整的放下位置442的路径,并且将路径转换成有关将操作机器人臂304和/或末端执行器以操纵目标物体112来遵循路径的致动装置212的一系列命令或设置或其组合。

在框568处,机器人系统100可以执行调整的运动计划444以补充和/或代替基本运动计划422。例如,机器人系统100可以根据所述一系列命令或设置或其组合来操作致动装置212,从而操纵机器人臂304和/或末端执行器以致使目标物体112来根据路径移动。

在一些实施方案中,机器人系统100可以暂停执行基本运动计划422,并且执行调整的运动计划444。一旦基于执行调整的运动计划444而将目标物体112放置在调整的放下位置442处(即,完成执行受控的放下),在一些实施方案中,机器人系统100就可以尝试如上面有关框520所描述重新夹持目标物体112,并且然后如上面有关框510所描述测量形成的夹持力。在一些实施方案中,机器人系统100可以尝试重新夹持目标物体112,直到如上所述的迭代极限。如果接触测量值312满足初始夹持力阈值,则机器人系统100可以倒转调整的运动计划444(例如,返回暂停的点/位置),并且继续执行暂停的基本运动计划422的剩余部分。在一些实施方案中,机器人系统100可以更新和重新计算从当前位置424(在重新夹持之后)到任务位置116的调整的运动计划444,并且执行所述调整的运动计划444以完成执行任务402。

在一些实施方案中,在框570处,机器人系统100可以更新有关使用的放下区域的区域记录(例如,开放空间和/或放置的物体的记录),以反映放置的目标物体112。例如,机器人系统100可以重新生成有关对应放下区域的成像结果。在一些实施方案中,在执行受控的放下和将目标物体112放置在调整的放下位置442处之后,机器人系统100可以取消基本运动计划422的剩余动作。在一个或多个实施方案中,中转放下区域436可以包括放置在图1的运输单元106中的一个上方的货盘或料箱。在指定时间(例如,当货盘/料箱充满时,和/或当进来的货盘/料箱延迟时),对应的运输单元可以从放下区域行进到拾取区域。因此,机器人系统100可以重新实现方法500,从而将放下的物品重新识别为目标物体112,并且将其传递到对应的任务位置116。

一旦已经将目标物体112放置在调整的放下位置442处,机器人系统100就可以为新目标物体重复方法500。例如,机器人系统100可以将拾取区域中的下一个物体确定为目标物体112,计算新的基本运动计划以传递新的目标物体等。

在一些实施方案中,机器人系统100可以包括反馈机制,所述反馈机制基于接触测量值312而更新路径计算机制。例如,当机器人系统100实现动作以重新夹持具有调整的位置的目标物体112(例如,如上面有关框520所描述)时,机器人系统100可以存储末端执行器的产生了满足阈值的接触测量值312的位置(例如,如上面相关于框512所描述)。机器人系统100可以存储与目标物体112相关联的位置。当夹持失败的数量和/或成功重新夹持动作达到阈值时,机器人系统100可以对存储的位置进行分析(例如,使用滑动时窗以便分析最近一组动作)以便夹持目标物体112。当发生针对特定物体的预确定数量的重新夹持动作时,机器人系统100可以更新运动规划机制,以将夹持装置放置在相对于目标物体112的新位置(例如,对应于最高成功次数的位置)处。

基于框510和/或框526中表示的操作,机器人系统100(经由例如处理器202)可以跟踪执行基本运动计划422的进程。在一些实施方案中,机器人系统100可以根据目标物体112的水平传递跟踪所述进程。例如,如图5中所示,机器人系统100可以基于在开始水平传递之前测量形成的夹持力(框510)以及基于在开始水平传递之后的传递期间测量夹持力(框526)而跟踪所述进程。因此,机器人系统100可以基于如上所述的进程而选择性地生成一组新的(即,与基本运动计划422不同)致动器命令、致动器设置或其组合。

在其它实施方案中,例如,机器人系统100可以基于跟踪已经被传达给和/或由致动装置212实现的命令、设置或其组合而对进程进行跟踪。基于所述进程,机器人系统100可以选择性地生成一组新的致动器命令、致动器设置或其组合,以执行重新夹持响应动作和/或受控放下响应动作。例如,当所述进程是在目标物体112的任何水平传递之前时,机器人系统100可以选择初始夹持力阈值,并且执行框512中所表示的操作(经由例如函数调用或移位指令)并且向前。而且,当所述进程是在目标物体112的水平传递之后时,机器人系统100可以选择传递夹持力阈值并且执行框528中所表示的操作(经由例如函数调用或移位指令)并且向前。

根据接触测量值312实现目标物体112的粒度控制/操纵(即,选择实现基本运动计划422或与其偏离)为传递物体提供提高的效率、速度和准确性。例如,当接触测量值312低于初始夹持力阈值时重新夹持目标物体112降低了传递期间发生夹持力失效的可能性,这减少了传递期间物体丢失或无意中掉下的次数。此外,每个丢失的物体要求人类交互来纠正结果(例如,将丢失的物体从运动路径移出以进行后续任务,检查丢失的物体是否存在损坏,和/或完成有关丢失的物体的任务)。因此,减少丢失的物体的数量减少了实现任务和/或整体操作所必须的人类努力。

此外,当接触测量值312低于传递夹持力阈值时将目标物体112放置在指定区域减少了未跟踪障碍物和受损物品的数量。基于计算调整的放下位置442和执行受控放下,目标物体112可以放置在已知位置处。因此,最终在随机未跟踪位置中的丢失的物体的数量减少,这进一步降低了丢失的物体最终位于阻止或阻碍后续任务的执行的位置处的可能性。此外,如上所述,机器人系统100可以在计算调整的放下位置442时避免频繁使用的路径区段,从而进一步减少不充分的夹持力的影响。另外,因为以受控的方式放置目标物体112而不是利用动量从某一高度放下,所以目标物体112以较小的力接触放置位置。为此,执行受控放下大大减小了由于丢失物体致使的损坏。

结论

所公开技术的实例的以上具体实施方式不意图穷举或将所公开的技术限制为上文公开的精确形式。虽然出于说明性目的在上面描述了所公开技术的具体实例,但是如相关领域的技术人员将认识到的,在所公开技术的范围内可以做出各种等同修改。例如,虽然以给定顺序呈现过程或块,但是替换实现方式可以以不同的次序执行具有步骤的例程,或者采用具有块的系统,并且可以删除、移动、添加、细分、组合一些过程或块,和/或修改以提供替换组合或子组合。这些过程或块中的每一个可以以多种不同的方式实现。而且,虽然有时将过程或块示出为串行执行,但是这些过程或块可以替代地并行执行或实现,或者可以在不同时间执行。另外,本文提到的任何具体数字仅是实例;替换实现方式可以采用不同的值或范围。

根据以上具体实施方式,可以对所公开的技术做出这些和其它改变。虽然具体实施方式描述了所公开的技术的某些实例以及预期的最佳模式,但是无论上述描述在文本中出现的详细程度如何,所公开的技术都可以以许多方式实践。系统的细节在其具体实现方式上可以有很大不同,同时仍然包含在本文公开的技术中。如上所述,在描述所公开技术的某些特征或方面时使用的特定术语不应被视为暗示本文中重新限定的术语限于所公开技术的与该术语相关联的任何特定特性、特征或方面。因此,除了所附权利要求之外,本发明不受限制。通常,以下权利要求中使用的术语不应被解释为将所公开的技术限制于说明书中所公开的特定实例,除非以上具体实施方式部分明确地限定了这些术语。

虽然下面以某些权利要求形式呈现了本发明的某些方面,但是申请人以任何数量的权利要求形式考虑了本发明的各种方面。因此,申请人保留在提交本申请之后追究额外权利要求的权利以在本申请中或在继续申请中追究这些额外权利要求形式。

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