CN115258510A - 具有物体更新机制的机器人***和用于操作所述机器人***的方法 - Google Patents

具有物体更新机制的机器人***和用于操作所述机器人***的方法 Download PDF

Info

Publication number
CN115258510A
CN115258510A CN202210933005.4A CN202210933005A CN115258510A CN 115258510 A CN115258510 A CN 115258510A CN 202210933005 A CN202210933005 A CN 202210933005A CN 115258510 A CN115258510 A CN 115258510A
Authority
CN
China
Prior art keywords
initial
package
sensor data
additional sensor
plan
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202210933005.4A
Other languages
English (en)
Inventor
金本良树
鲁仙·出杏光
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mujin Technology
Original Assignee
Mujin Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/841,545 external-priority patent/US20230025647A1/en
Application filed by Mujin Technology filed Critical Mujin Technology
Publication of CN115258510A publication Critical patent/CN115258510A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G1/00Storing articles, individually or in orderly arrangement, in warehouses or magazines
    • B65G1/02Storage devices
    • B65G1/04Storage devices mechanical
    • B65G1/137Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed
    • B65G1/1371Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed with data records
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G61/00Use of pick-up or transfer devices or of manipulators for stacking or de-stacking articles not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G63/00Transferring or trans-shipping at storage areas, railway yards or harbours or in opening mining cuts; Marshalling yard installations

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Automation & Control Theory (AREA)
  • Manipulator (AREA)

Abstract

本文公开了一种用于确定物体的误检测和后续响应的***和方法。机器人***可使用基于包裹的初始检测结果而推导出的运动计划,以将所述包裹从起始位置转移到任务位置。在实现所述运动计划期间,所述机器人***可获得额外的传感器数据,所述传感器数据可用于偏离所述初始运动计划并实现替换运动计划以将所述包裹转移到所述任务位置。

Description

具有物体更新机制的机器人***和用于操作所述机器人*** 的方法
本申请是中国申请CN202210880924.X的分案申请,该申请日期为2022年7月25日,发明名称为“具有物体更新机制的机器人***和用于操作所述机器人***的方法”。
相关申请的交叉引用
本申请要求于2021年7月23日提交的美国临时专利申请No.63/225,346的利益,所述美国临时专利申请的全部内容以引用的方式并入本文中。
技术领域
本技术总体上涉及机器人***,并且更具体地,涉及具有物体更新机制的机器人***。
背景技术
机器人(例如,被配置成自动地/自主地执行物理动作的机器)现已广泛用于许多领域。例如,机器人可用于在制造,包装,运输,和/或装运等方面执行各种任务(例如,操纵或转移物体)。在执行任务时,机器人可复制人类动作,从而代替或减少原本执行危险或重复性任务所需的人类参与。机器人通常缺乏复制执行更复杂任务所需的人类灵敏度和/或适应性所必需的精密性。例如,机器人通常难以适应意外状况,诸如由于不正确的物体识别。因此,仍然需要用于控制和管理机器人的各种方面以处置意外状况的改进的机器人***和技术。
附图说明
图1示出了根据本技术的一个或多个实施方案的其中机器人***运输物体的示例环境。
图2是示出根据本技术的一个或多个实施方案的机器人***的框图。
图3示出了根据本技术的一个或多个实施方案的多部件转移组件。
图4示出了根据本技术的一个或多个实施方案的一对包裹的示例俯视图。
图5是根据本技术的一个或多个实施方案的机器人***的功能框图。
图6是根据本技术的一个或多个实施方案的用于操作机器人***的流程图。
具体实施方式
本文描述了用于转移意外物体的***和方法。所述***可包括或访问描述每个预期物体的特征集(例如,物理特性,诸如表面图像,尺寸,重量,质心(CoM)位置等)的登记记录。所述***可包括一组传感器(例如,视觉传感器,重量/扭矩传感器等)和/或与之通信,所述传感器可获得对应于特征集的测量结果或表示物体。例如,所述***可与一个或多个相机交互以获得一个或多个物体在起始位置处的二维(2D)和/或三维(3D)图像或深度图。可通过检测过程处理获得的图像,所述检测过程可包括对物体的边缘定位,估计或测量物体的尺寸,确定物体的身份,确定物体的位置等。检测结果可用于推导将每个物体从起始位置转移到任务位置的运动计划。如下文详细描述的,在推导的运动计划的实现期间,所述***可经由末端执行器和机器人臂上的一个或多个重量和/或扭矩传感器获得其他测量结果,诸如重量测量结果和/或对应的扭矩向量。***可将获得的测量结果与预期数据进行比较,以验证物体的检测到的身份。当测量结果和预期数据不匹配时,***可处理获得的测量结果(诸如重量和/或扭矩向量),以估计或计算目标物体的CoM。在一些实施方案中,动态地获得的CoM可用于转移目标物体,例如通过用CoM更新现有运动计划和/或不重新计算总体运动计划。
在操作期间,***可预期具有相似物理特性的两个或更多个物体(例如,物体的长度和宽度的差异在预定阈值范围内)。另选地或另外地,***可接收或遇到未登记但具有与已登记的物体中的一个或多个物体相似的物理特性的物体。在处理此类相似物体时,***可能会错误地检测/识别目标/成像物体。作为说明性示例,物体‘A’和物体‘B’在具有不同的高度和/或重量的同时可能具有不能始终如一地区分的长度和宽度(例如,在给定硬件和/或软件粒度或***容量的情况下,从两个物体的俯视图区分)。因此,***可能会错误地将实际物体‘A’识别为物体‘B’。
错误检测可能致使***依赖和/或预期其他错误参数用于后续处理,诸如用于推导和/或实现运动计划以转移错误识别的物体。例如,误检测可能会致使***依赖错误的高度测量,这可能会在错误地检测的物体的转移期间致使意外碰撞。而且,检测错误可能会致使***依赖于错误的重量,这可能会致使夹持故障和转移期间的工件丢失。
要防止此类下游故障,***可使用预期值的偏差来识别和调整检测错误。继续该说明性示例,作为物体‘B’的物体‘A’可具有其他不同的物理方面,诸如高度,重量,和/或CoM。当***实现由错误检测产生的针对物体‘B’的运动计划时,***可预期物体‘B’的对应重量和/或扭矩向量(例如,CoM)。当接收到来自实际物体‘A’的对应测量结果(例如,不同于预期参数)时,***可确定错误状况和/或确定目标物体的初始检测可能是错误的。
在一些实施方案中,***可通过推导被抓握物体的估计的几何形状来响应错误检测,诸如通过根据实际测量结果(例如,CoM)放大或缩小被抓握物体的占地区域(例如,长度和/或宽度)。例如,***可使用抓握位置作为参考,并调整被抓握物体的横向尺寸,使得实际的CoM位于调整后的占地区域的中心部分。在一个或多个实施方案中,***可被配置成释放物体,并且然后在实际CoM上重新夹持物体。另外地或另选地,***可确定被抓握物体的高度,诸如使用沿转移路径(例如,在起始位置上方或在目的地位置上方)定位的交叉传感器和/或侧视相机。
在一些实施方案中,***可基于实际CoM而更新一个或多个状态和/或移除有关对应运动计划的一个或多个初始部分(例如,无需重新推导总体运动计划),以解决初始夹持位置与调整后的夹持位置的差异。另选地,***可使用检测到的实际方面和/或调整后的占地区域来推导更新的运动计划,诸如当差异超过一个或多个预定阈值参数时。此外,***可使用实际测量结果来更新登记记录,诸如通过登记新物体或更新最初检测到的物体的记录。继续上面描述的说明性示例,***可使用测量到的重量/扭矩向量,CoM,新高度等为物体‘A’创建新的登记记录。另选地,***可更新物体‘B’的记录以包括测量到的重量/扭矩向量,CoM,新高度等。
使用实时/实际测量结果,机器人***可提供对物体检测的有效验证。因此,机器人***可通过减少或消除由物体误检测致使的错误来增加吞吐量。此外,机器人***可实现自动响应,诸如通过在没有操作员输入的情况下重新规划运动,以从误检测中恢复并成功地将误检测到的物体转移到任务位置。因此,机器人***可通过消除对人工验证或操作员提供的响应指令的需要来提高效率和总体转移速度。
在下文中,阐述了众多具体细节以提供对当前公开的技术的透彻理解。在其他实施方案中,可在没有这些具体细节的情况下实践在此处介绍的技术。在其他实例中,未详细描述诸如具体功能或例程等公知特征以便避免不必要地模糊本公开。在本描述中对“实施方案”,“一个实施方案”等的引用意味着所描述的特定特征,结构,材料,或特性包括在本公开的至少一个实施方案中。因此,此类短语在本说明书中的出现不一定全都指代同一实施方案。另一方面,此类引用也不一定互相排斥。此外,特定特征,结构,材料,或特性可以按任何合适的方式组合在一个或多个实施方案中。应当理解,附图中示出的各种实施方案仅仅是说明性表示,且不一定按比例绘制。
为了清楚起见,在下面的描述中没有阐述描述众所周知的并且通常与机器人***和子***相关联但是可能不必要地使所公开技术的一些重要方面模糊的结构或过程的几个细节。此外,虽然以下公开内容阐述了本技术的不同方面的几个实施方案,但几个其他实施方案可具有与本节描述的那些不同的配置或不同的部件。因此,所公开的技术可具有带额外元件或不带下文描述的几个元件的其他实施方案。
下文描述的本公开的许多实施方案或方面可采取计算机可执行或控制器可执行指令的形式,包括由可编程计算机或控制器执行的例程。相关领域的技术人员将了解,可在除了下文示出和描述的计算机或控制器***之外的计算机或控制器***上实践所公开的技术。本文描述的技术可体现在专用计算机或数据处理器中,所述专用计算机或数据处理器被特别地编程,配置,或构造成执行下文描述的计算机可执行指令中的一者或多者。因此,本文一般使用的术语“计算机”和“控制器”是指任何数据处理器,并且可包括互联网电器和手持式装置(包括掌上计算机,可穿戴计算机,蜂窝或移动电话,多处理器***,基于处理器的或可编程的消费型电子器件,网络计算机,微型计算机等)。由这些计算机和控制器处理的信息可呈现在任何合适的显示介质处,所述显示介质包括液晶显示器(LCD)。用于执行计算机或控制器可执行的任务的指令可存储在任何合适的计算机可读介质中或上,所述计算机可读介质包括硬件,固件,或硬件与固件的组合。指令可包含在任何合适的存储器装置中,所述存储器装置包括(例如)闪存盘,USB装置,和/或其他合适的介质,包括有形非瞬态计算机可读介质。
术语“联接”和“连接”以及它们的派生词在本文中可用于描述部件之间的结构关系。应理解,这些术语无意作为彼此的同义词。而是,在特定实施方案中,“连接”可用于指示两个或更多个元件彼此直接接触。除非在上下文中另外显而易见,否则术语“联接”可用于指示两个或更多个元件彼此直接地或间接地(在它们之间有其他居间元件)接触,或者两个或更多个元件彼此协作或交互(例如,以因果关系进行交互,诸如用于信号传输/接收或用于函数调用),或以上两者。
合适的环境
图1是根据本技术的一个或多个实施方案的机器人***100在其中运输物体的示例环境的图示。机器人***100可包括被配置成执行一个或多个任务的一个或多个单元(例如,机器人)和/或与所述一个或多个单元通信。物体检测/更新的各方面可由各种单元来实践或实现。
对于图1中示出的示例,机器人***100可包括仓库或分配/装运枢纽中的卸载单元102,转移单元104(例如,码垛机器人和/或拣货机器人),运输单元106,装载单元108,或它们的组合,和/或与前述各项通信。机器人***100中的每个单元可被配置成执行一个或多个任务。所述任务可按顺序组合以执行达成目标的操作,诸如从卡车或货车上卸载物体并将所述物体存放在仓库中,或者从存放位置卸载物体并使所述物体准备好装运。对于另一示例,任务可包括将物体放置在任务位置(例如,在货盘的顶部上和/或在柜/笼/盒/箱内部)。如下所述,机器人***可推导用于放置和/或堆叠物体的计划(例如,放置位置/取向,用于转移物体的顺序和/或对应的运动计划)。单元中的每个可被配置成根据推导的计划中的一个或多个执行动作序列(例如,通过操作其中的一个或多个部件)以执行任务。
在一些实施方案中,任务可包括操纵(例如,移动和/或重新定向)目标物体112(例如,对应于正在执行的任务的包裹,盒,箱,笼,货盘等中的一者),诸如将目标物体112从起始位置114移动到任务位置116。例如,卸载单元102(例如,拆箱机器人)可被配置成将目标物体112从载具(例如,卡车)中的位置转移到输送带上的位置。而且,转移单元104可被配置成将目标物体112从一个位置(例如,输送带,货盘,或柜)转移到另一个位置(例如,货盘,柜等)。对于另一个示例,转移单元104(例如,码垛机器人)可被配置成将目标物体112从源位置(例如,货盘,拣取区域,和/或输送机)转移到目的地货盘。在完成操作时,运输单元106可将目标物体112从与转移单元104相关联的区域转移到与装载单元108相关联的区域,并且装载单元108可(例如,通过移动载运目标物体112的货盘)将目标物体112从转移单元104转移到存放位置(例如,货架上的位置)。下文描述了有关任务和相关联的动作/计算的细节。
出于说明目的,在装运中心的情景中描述了机器人***100;然而,应理解,机器人***100可被配置成在其他环境中/出于其他目的(诸如用于制造,组装,包装,医疗保健,和/或其他类型的自动化)执行任务。还应理解,机器人***100可包括图1中未示出的其他单元,诸如操纵器,服务机器人,模块化机器人等,和/或与所述其他单元通信。例如,在一些实施方案中,其他单元可包括:卸垛单元,所述卸垛单元用于将物体从笼车或货盘转移到输送机或其他货盘上;集装箱切换单元,所述集装箱切换单元用于将物体从一个集装箱转移到另一集装箱;包装单元,所述包装单元用于包装物体;分拣单元,所述分拣单元用于根据物体的一个或多个特性对物体进行分组;拣货单元,所述拣货单元用于根据物体的一个或多个特性以不同方式操纵(例如,用于分拣,分组,和/或转移)物体;或它们的组合。
机器人***100可包括控制器109,所述控制器联接到在关节处连接以用于运动(例如,旋转和/或平移移位)的物理或结构构件(例如,机器人操纵器臂)。控制器109可包括被配置成控制实现任务的一个或多个方面的装置和/或电路(例如,一个或多个处理器和/或一个或多个存储器)。所述结构构件和关节可形成动力链,所述动力链被配置成根据机器人***100的使用/操作来操纵末端执行器(例如,夹持器),所述末端执行器被配置成执行一个或多个任务(例如,夹持,自旋,焊接等)。机器人***100可包括被配置成围绕对应的关节或在对应的关节处对结构构件进行驱动或操纵(例如,移位和/或重新定向)的致动装置(例如,电机,致动器,电线,人造肌肉,电活性聚合物等)和/或与所述致动装置通信(例如,经由控制器109)。在一些实施方案中,机器人单元可包括被配置成将对应的单元/底架从一个地方运输到另一个地方的运输电机。
机器人***100可包括被配置成获得用于实现任务(诸如,用于操纵结构构件和/或运输机器人单元)的信息的传感器和/或与所述传感器通信。传感器可包括被配置成检测或测量机器人***100的一个或多个物理性质(例如,一个或多个结构构件/其关节的状态,状况,和/或位置)和/或周围环境的一个或多个物理性质的装置。传感器的一些示例可包括加速度计,陀螺仪,力传感器,应变仪,触觉传感器,扭矩传感器,位置编码器等。
例如,在一些实施方案中,传感器可包括被配置成检测周围环境的一个或多个成像装置(例如,视觉和/或红外相机,2D和/或3D成像相机,距离测量装置,诸如激光雷达或雷达等)。成像装置可生成所检测环境的表示,诸如数字图像和/或点云,所述表示可通过机器/计算机视觉来处理(例如,用于自动检查,机器人引导,或其他机器人应用)。机器人***100可处理数字图像和/或点云,以识别目标物体112,起始位置114,任务位置116,目标物体112的姿势,或它们的组合。
对于操纵目标物体112,机器人***100可捕获并分析指定区域(例如,拣取位置,诸如卡车内部或输送带上)的图像,以识别目标物体112及其起始位置114。类似地,机器人***100可捕获并分析另一指定区域(例如,用于将物体放置在输送机上的投放位置,用于将物体放置在集装箱内部的位置,或货盘上用于堆叠目的的位置)的图像,以识别任务位置116。例如,成像装置可包括被配置为生成拣取区域的图像的一个或多个相机,和/或被配置成生成任务区域(例如,投放区域)的图像的一个或多个相机。如下所述,基于捕获的图像,机器人***100可确定起始位置114,任务位置116,相关联的姿势,打包/放置计划,转移/打包顺序,和/或其他处理结果。
例如,在一些实施方案中,传感器可包括位置传感器(例如,位置编码器,电位差计等),所述位置传感器被配置成检测机器人***100的结构构件(例如,机器人臂和/或末端执行器)和/或对应关节的位置。机器人***100可在任务执行期间使用位置传感器来跟踪结构构件和/或关节的位置和/或取向。
机器人***100还可包括或通信地联接到与控制器109分开的一个或多个装置111。例如,额外装置111(例如,一个或多个计算装置或子***)诸如监督位置的总体管理和/或库存记录的仓库管理***,递送协调***(例如,自动化引导车辆(AGV)控制***,输送机控制***等),控制任务或相关联物体的次序的定序器,为每个任务推导运动计划的运动规划***等。在其他实施方案中,控制器109可被配置成执行装置111的一个或多个此类功能(例如,序列推导,运动规划等)。
机器人***
图2是示出根据本技术的一个或多个实施方案的机器人***100的部件的框图。例如,在一些实施方案中,机器人***100(例如,在上述单元或组件和/或机器人中的一个或多个处)可包括电子/电气装置,诸如一个或多个处理器202,一个或多个存储装置204,一个或多个通信装置206,一个或多个输入-输出装置208,一个或多个致动装置212,一个或多个运输电机214,一个或多个传感器216,或它们的组合。各种装置可经由有线连接和/或无线连接彼此联接。例如,用于机器人***100的一个或多个单元/部件和/或机器人单元中的一个或多个可包括总线,诸如***总线,***部件互连(PCI)总线或高速PCI总线,超级传输或工业标准架构(ISA)总线,小型计算机***接口(SCSI)总线,通用串行总线(USB),IIC(I2C)总线,或电气和电子工程师协会(IEEE)标准1394总线(也称为“火线”)。而且,例如,机器人***100可包括桥接器,适配器,控制器,或用于在装置之间提供有线连接的其他信号相关装置和/或与前述各项通信。无线连接可基于例如蜂窝通信协议(例如,3G,4G,LTE,5G等),无线局域网(LAN)协议(例如,无线保真(WIFI)),对等或装置间通信协议(例如,蓝牙,近场通信(NFC)等),物联网(IoT)协议(例如,NB-IoT,Zigbee,Z波,LTE-M等),和/或其他无线通信协议。
处理器202可包括数据处理器(例如,中央处理单元(CPU),专用计算机和/或车载服务器),所述数据处理器被配置成执行存储在存储装置204(例如,计算机存储器)上的指令(例如,软件指令)。处理器202可实现程序指令以控制/与其他装置交互,从而致使机器人***100执行动作,任务,和/或操作。
存储装置204可包括其上存储有程序指令(例如,软件)的非暂时性计算机可读介质。存储装置204的一些示例可包括易失性存储器(例如,高速缓存和/或随机存取存储器(RAM))和/或非易失性存储器(例如,闪存存储器和/或磁盘驱动器)。存储装置204的其他示例可包括便携式存储器驱动器和/或云存储装置。
在一些实施方案中,存储装置204可用于进一步存储并能够访问处理结果,模板(例如,形状模板,抓握套装等)和/或预定数据/阈值。例如,存储装置204可包括存储登记记录232(也称为主数据)的登记数据库***(RDS)。每个登记记录232可包括可由机器人***100操纵的对应物体(例如,盒子,箱子,集装箱,和/或产品)的描述。对于预期将由机器人***100操纵的物体中的一个或多个,登记记录232可包括一个或多个物理特性或属性,诸如尺寸,形状(例如,用于潜在姿势的模板和/或用于辨识呈不同姿势的物体的计算机生成的模型),颜色方案,图像,识别信息(例如,条形码,快速响应(QR)码,徽标等,和/或其预期位置),预期质量或重量,或它们的任何组合。登记记录232还可包括有关物体的操纵相关信息,诸如物体中的每个上的CoM位置,一个或多个模板Sis,对应于一个或多个动作/机动的预期传感器测量结果(例如,力,扭矩,压力,和/或接触测量结果),视觉数据(例如,参考雷达/激光雷达数据),或它们的任何组合。
存储装置204还可存储物体跟踪数据。在一些实施方案中,物体跟踪数据可包括被扫描或操纵的物体的日志。在一些实施方案中,物体跟踪数据可包括在一个或多个位置(例如,指定的拾取或投放位置和/或输送带)处的物体的图像数据(例如,图片,点云,实时视频馈送等)。在一些实施方案中,物体跟踪数据可包括位置和/或物体在一个或多个位置处的取向。
通信装置206可包括被配置为经由网络与外部装置或远程装置进行通信的电路。例如,通信装置206可包括接收器,发射器,调制器/解调器(调制解调器),信号检测器,信号编码器/解码器,连接器端口,网卡等。通信装置206可被配置成根据一个或多个通信协议(例如,互联网协议(IP),无线通信协议等)来发送,接收,和/或处理电信号。在一些实施方案中,机器人***100可使用通信装置206在机器人***100的单元之间交换信息和/或与机器人***100外部的***或装置交换信息(例如,用于报告,数据收集,分析,和/或故障排除目的)。
输入-输出装置208可包括用户接口装置,所述用户接口装置被配置成向人类操作员传达信息和/或从人类操作员接收信息。例如,输入-输出装置208可包括显示器210和/或其他输出装置(例如,扬声器,触觉电路,或触觉反馈装置等),用于将信息传达给人类操作员。而且,输入-输出装置208可包括控制或接收装置,诸如键盘,鼠标,触摸屏,传声器,用户接口(UI)传感器(例如,用于接收运动命令的相机),可穿戴输入装置等。在一些实施方案中,机器人***100可使用输入-输出装置208来在执行动作,任务,操作,或它们的组合时与人类操作员交互。
在一些实施方案中,控制器(例如,图1的控制器109)可包括处理器202,存储装置204,通信装置206,和/或输入-输出装置208。控制器可能是独立的部件或单元/组合件的一部分。例如,***100的每个卸载单元,转移组合件,运输单元,和装载单元可包括一个或多个控制器。在一些实施方案中,单个控制器可控制多个单元或独立部件。
机器人***100可包括连接在关节处以用于运动(例如,旋转和/或平移位移)的物理或结构构件(例如,机器人操纵器臂)和/与所述物理或结构构件通信。所述结构构件和关节可形成动力链,所述动力链被配置成根据机器人***100的使用/操作来操纵末端执行器(例如,夹持器),所述末端执行器被配置成执行一个或多个任务(例如,夹持,自旋,焊接等)。动力链可包括被配置成围绕对应的关节或在对应的关节处对结构构件进行驱动或操纵(例如,移位和/或重新定向)的致动装置212(例如,马达,致动器,电线,人造肌肉,电活性聚合物等)。在一些实施方案中,动力链可包括被配置成将对应的单元/底架从一个地方运输到另一个地方的运输马达214。例如,致动装置212和运输马达连接至机器人臂,线性滑块,或其他机器人部件或作为其一部分。
传感器216可被配置成获得用于实现任务(诸如,用于操纵结构构件和/或用于运输机器人单元)的信息。传感器216可包括被配置为检测或测量控制器,机器人单元(例如,一个或多个结构构件/其关节的状态,状况,和/或位置)和/或周围环境的一个或多个物理性质的装置。传感器216的一些示例可包括接触传感器,接近传感器,加速度计,陀螺仪,力传感器,应变仪,扭矩传感器,位置编码器,压力传感器,真空传感器等。
在一些实施方案中,例如,传感器216可以包括被配置为检测周围环境的一个或多个成像装置222(例如,2维和/或3维成像装置)。成像装置可以包括相机(包括视觉和/或红外相机),激光雷达装置,雷达装置,和/或其他测距或检测装置。成像装置222可生成所检测环境的表示(诸如,数字图像和/或点云),所述表示用于实现机器/计算机视觉(例如,用于自动检查,机器人引导,或其他机器人应用)。
现在参看图1和图2,机器人***100(例如,经由处理器202)可处理图像数据和/或点云以识别目标包裹112,起始位置114,任务位置116,目标包裹112的姿势,或它们的组合。机器人***100可使用来自成像装置222的图像数据来确定如何访问和拣取物体。可分析物体的图像以确定用于定位真空夹持器组件以夹持目标物体的运动计划。机器人***100(例如,经由各种单元)可捕获和分析指定区域(例如,卡车内部,集装箱内部,或输送带上的物体的拾取位置)的图像以识别目标包裹112以及其起始位置114。相似地,机器人***100可捕获并分析另一指定区域(例如,用于将物体放置在输送带上的投放位置,用于将物体放置在集装箱内部的位置,或货盘上用于堆叠目的的位置)的图像,以识别任务位置116。
而且,例如,传感器216可包括位置传感器224(例如,位置编码器,电位差计等),所述位置传感器被配置成检测机器人***100的结构构件(例如,机器人臂和/或末端执行器)和/或对应关节的位置。机器人***100可在任务执行期间使用位置传感器224来跟踪结构构件和/或关节的位置和/或取向。本文公开的卸载单元,转移单元,运输单元/组件,和装载单元可包括传感器216。
在一些实施方案中,传感器216可包括被配置成诸如在末端执行器处测量施加到动力链的力的一个或多个力传感器226(例如,重量传感器,应变仪,压阻/压电传感器,电容传感器,弹阻传感器,和/或其他触觉传感器)。例如,传感器216可用于确定机器人臂上的载荷(例如,被抓握的物体)。力传感器226可附接至末端执行器或在末端执行器周围,并且被配置成使得所得测量结果表示被抓握物体的重量和/或相对于参考位置的扭矩向量。在一个或多个实施方案中,机器人***100可处理物体的扭矩向量,重量,和/或其他物理特征(例如,尺寸)以估计被抓握物体的CoM。
机器人转移组件
图3示出了根据本技术的一个或多个实施方案的转移组件104。转移组件104可包括成像***160和机器人臂***132。成像***160可向卸垛平台110提供从目标环境捕获的图像数据。机器人臂***132可包括机器人臂组件139和末端执行器140(例如,夹持器组件)。机器人臂组件139可将末端执行器140定位在位于拾取环境163处的堆叠165中的一组物体上方。
图3示出了末端执行器140,所述末端执行器载运定位在输送机120上方的单个物体或包裹112(“包裹112”)。末端执行器140可将包裹112释放到图1的任务位置116(诸如,输送带120)上,并且机器人臂***132然后可通过将卸载的末端执行器140直接定位在包裹112a,112b两者上方来取回包裹112a,112b。然后,末端执行器140可经由真空夹具固持包裹112a,112b中的一个或多个,并且机器人臂***132可将所保持的包裹112a和/或112b载运到输送机120正上方的位置。然后,末端执行器140可将包裹112a,112b释放(例如,同时地或顺序地)到输送机120上。此过程可重复任何次数以将物体从堆叠165载运到输送机120。
继续参考图3,卸垛平台110可包括可在上面堆叠和/或堆放并准备运输多个物体或包裹112(简称为“包裹112”)的任何平台,表面,和/或结构。成像***160可包括一个或多个成像装置161,所述成像装置被配置成捕获卸垛平台110上的包裹112的图像数据。成像装置161可在拾取环境163处捕获距离数据,位置数据,视频,静态图像,激光雷达数据,雷达数据,和/或运动。应当注意,虽然本文使用了术语“物体”和“包裹”,但是所述术语包括能够被夹持,提升,运输,和递送的任何其他物品,诸如但不限于“箱子”,“盒子”,“纸箱”,或者它们的任何组合。此外,虽然在本文公开的附图中示出了多边形盒子(例如,矩形盒子),但是盒子的形状不限于此种形状,而是包括能够被夹持,提升,运输,和递送的任何规则或不规则形状。
与卸垛平台110一样,接收输送机120可包括被指定为接收包裹112以用于进一步的任务/操作的任何平台,表面,和/或结构。在一些实施方案中,接收输送机120可包括用于将包裹112从一个位置(例如,释放点)运输到另一个位置以进行进一步的操作(例如,分拣和/或存放)的输送机***。
错误识别的示例
机器人***100可被配置成响应和处理对包裹112的任何误识别或错误检测。图4示出了根据本技术的一个或多个实施方案的一对包裹112a和112b的示例俯视图400(例如,来自成像***160的成像数据)。一起参看图3和图4,成像***160可包括一个或多个面朝下的相机,所述相机被配置成获得包裹112a和112b的对应俯视图。因此,当包裹112a和112b具有相似的横向尺寸(例如,长度和宽度)时,机器人***100可能错误地识别所述包裹。例如,俯视图图像400可致使机器人***100将包裹112a错误地识别为包裹112b。因此,机器人***100可推导针对包裹112a的运动计划,所述运动计划错误地考虑高度192b而不是高度192a,CoM 194b而不是CoM 194a等。例如,所述运动计划可对应于夹持位置196,所述夹持位置对应于(例如,重叠)CoM 194b而不是CoM 194a。
机器人***100可实现所得运动计划的至少初始部分,诸如通过在夹持位置196处抓握包裹112a和/或提升包裹112a。机器人***100可被配置成在最初提升包裹112a时和/或之后获得一组力测量结果。获得的测量结果可包括包裹112a的实际重量和/或对应于实际CoM 194a与夹持位置196之间的差异的向量197(例如,扭矩向量)。机器人***100可被配置成将获得的对应于包裹112a的传感器输出与预期传感器输出(例如,包裹112b的登记的特性)进行比较。当比较的输出不匹配时,机器人***100可检测到检测错误。
在一些实施方案中,机器人***100可计算传感器输出的预期值和获得的值之间的差异。当计算出的差异超过预定的最大错误状况时,机器人***100可发出故障状况信号和/或通知操作员。另选地或另外,当差异低于预定的最小错误状况时,机器人***100可继续现有的运动计划。
机器人***100可被配置成在某些状况下(诸如,当差异满足预定范围或模板时)重新处理包裹112a。例如,机器人***100可基于向量197,预期尺寸,和/或夹持位置196而推导出估计的几何形状198。机器人***100可推导估计的几何形状198,使得实际CoM 194a(例如,其根据向量197的估计值)位于估计的几何形状198的中心部分。而且,机器人***100可操控机器人臂和/或实现过程以确定包裹112a的实际高度192a。机器人***100可使用估计的几何形状,估计的CoM,和/或实际高度来处理包裹112a。例如,机器人***100可使用经更新的测量结果或参数来重新推导新的/替换的运动计划和/或调整现有的运动计划,诸如通过增加提升高度,降低移动速度,释放包裹112a,并在实际的CoM 194a处重新夹持等。机器人***100还可更新登记记录232,诸如通过创建包裹112a的新记录和/或用最新结果更新包裹112b的记录(例如,通过替换高度,重量,CoM等)。
示例***连接
机器人***100可在最初处理包裹112和/或响应于错误物体检测时实现一组功能。图5是根据本技术的一个或多个实施方案的机器人***100的功能框图。机器人***100可包括检测模块502,规划模块504,和/或被配置成处理包裹112并响应于错误检测的实现模块506。机器人***100可使用图1的控制器109,图1的装置111中的一个或多个,图2的处理器202中的一个或多个或它们的组合来实现检测模块502,规划模块504,和/或实现模块506。
检测模块502可被配置成检测包裹112中的一个或多个。在一些实施方案中,检测模块502可处理从成像装置161接收的图像数据510。检测模块502可通过从图像数据510中提取诸如2D/3D边缘,转角,纹理(例如,表面图像或设计)等特征来处理图像数据。检测模块502可将提取的特征与图2的登记记录232进行比较,以辨识或识别图像数据510中描绘的所登记物体。检测模块502还可识别图像数据510中描绘的物体(例如,识别出的所登记物体)中的一个或多个的位置。例如,检测模块502可识别/验证一组边缘属于特定物体,而其他边缘可能属于其他/被阻挡物体。检测模块502可为每个检测到的物体生成检测结果(例如,初始结果512)。检测结果可包括检测到的物体的身份,检测到的物体的位置/姿势,和/或有关检测到的物体的其他细节。
检测模块502可包括自动登记模块522,所述自动登记模块被配置成自动地(例如,无需用户输入)登记未辨识和/或未登记的物体。例如,检测模块502可确定(1)一组边缘满足要被视为物体(例如,暴露的或可接近的物体)的一个或多个预定条件,但(2)物体的一个或多个物理特征与登记记录232中反映的所登记物体的对应特征不充分匹配。自动登记模块522可使用计算结果中的一个或多个(诸如反映物体的视觉特性,物体的一个或多个尺寸等的图像数据510的一部分)自动为不可辨识或未登记的物体创建登记记录。在一些实施方案中,检测模块502,自动登记模块522,或它们的组合可使用在物体的转移期间获得的信息来更新检测结果和/或创建/更新新的登记记录。下文描述有关更新的细节。
规划模块504可处理从检测模块502接收到的检测结果以推导检测到的物体的运动计划。例如,规划模块504可识别起始位置,任务位置,包裹行进路径,对应的机动,对应的设置/命令/定时,或者它们的组合,以用于转移检测到的物体中的每个。在一些实施方案中,规划模块504可从任务位置开始并且迭代地/增量地前进并且考虑朝向起始位置的新位置以推导运动计划。因此,规划模块504可为初始检测结果512中的每个生成初始运动计划514。
实现模块506可处理从规划模块504接收到的运动计划(例如,初始计划)以实现对应物体的转移。实现模块506可与机器人臂***132交互以用于计划实现。例如,实现模块506可生成和发送对应于运动计划的控制数据516(例如,命令和/或设置),并且机器人臂***132可根据控制数据516执行运动计划。基于执行运动计划,机器人臂***132可转移对应的物体。
机器人臂***132可提供实现反馈518,所述实现反馈包括在物体转移期间获得的一个或多个测量结果。例如,机器人臂***132可在实现运动计划的初始部分之后,诸如在抓握和提升目标物体之后,测量重量,扭矩测量结果,和/或高度测量结果(例如,廓线图像)。机器人***100可使用实现反馈518将测量结果或其推导发送到实现模块506和/或检测模块502。在一些实施方案中,推导可包括诸如:(1)从扭矩测量结果推导的估计的CoM位置,或(2)从廓线图像推导的物体高度。在一些实施方案中,实现模块506和/或机器人臂***132可在实施模块506和/或检测模块502验证检测结果的同时暂停转移。在其他实施方案中,实现模块506和/或机器人臂***132可实现初始移位(例如,包裹的提升和/或横向移动)以获得测量结果,并且然后返回/重新放置包裹直到检测结果和运动计划得到验证为止。
机器人***100可接收实现反馈518以验证检测结果。例如,如果检测到的物体与登记的物体匹配,则机器人***100可将测量结果与存储在目标包裹的登记记录中的对应特性进行比较。当实际测量结果和预期数据的不匹配超过预定条件时,机器人***100可确定初始检测结果512是错误的和/或发起一个或多个错误响应。例如,当物体的预期集合包括一个其他相似(例如,外观和/或大小)物体时,检测模块502可生成将目标物体辨识为其他/相似物体的经更新检测结果524。另选地或另外地,检测模块502可使用图4的估计的几何形状198来生成更新的检测结果524。检测模块502可将目标物体分类为未登记物体并且提供估计的几何形状198作为占地区域。而且,自动登记模块522可使用估计的几何形状198来登记未登记的物体。
响应于识别检测错误,规划模块504可使用更新的结果524来生成替换运动计划520。实现模块506可使用替换运动计划520而不是初始运动计划514来转移目标物体。
操作流程
图6是根据本公开的一个或多个实施方案的用于操作机器人***(例如,图1的机器人***100)的方法600的流程图。方法600可用于确定和响应于对目标物体的误检测。可基于使用图2的处理器202中的一个或多个执行存储在图2的存储装置204中的一个或多个上的指令而实现方法600。在实现运动计划和/或方法600时,处理器202可将运动计划或相关联的命令/设置的集合/序列发送到机器人单元(例如,图3的转移组件104和/或图3的末端执行器140)。因此,转移组件104和/或末端执行器140可执行运动计划以抓握和转移包裹。
在框604处,机器人***100可获得图像数据(例如,2D和/或3D成像结果,诸如图5的图像数据510)。机器人***100可从图3的成像***160获得图像数据510。获得的图像数据510可描绘在起始位置处的物体或包裹(例如,图3的堆叠165),所述起始位置与图3的拾取环境163相似。在一些实施方案中,获得的图像数据可对应于包裹的俯视图。
在框606处,机器人***100可基于分析获得的图像数据510而检测目标物体。机器人***可生成检测结果,诸如图5的初始结果512。例如,机器人***100可检测边缘(例如,经由Sobel滤波器)并识别边缘之间的转角或接合点以确定连续表面。连续表面可用于估计包裹位置和/或标识。机器人***100可将表面图像或区域的纹理与登记记录232中的所登记物体的对应数据进行比较,以识别或辨识包裹。另选地或另外地,机器人***100可测量和/或计算所确定的表面的尺寸(例如,长度和宽度)。可将得到的尺寸与登记记录232中的对应数据进行比较以识别包裹。当图像数据510中描绘的经分析纹理和/或尺寸匹配所登记物体的对应特征时,机器人***100可使用表面的确定的身份,位置,和/或尺寸来生成检测结果。换句话说,机器人***100可通过将匹配的所登记物体的特征映射到图像数据的匹配部分来生成检测结果。
在框608处,机器人***100可推导出一个或多个运动计划。机器人***100可使用图5的规划模块504(例如,与图5的检测模块502,实现模块506和/或图1的控制器109分开的装置/***)。在一些实施方案中,机器人***100可在每次迭代中处理一个包裹的一个运动计划。在其他实施方案中,机器人***100可为对应的包裹子集推导多个运动计划。
机器人***100可基于将来自检测模块502的检测结果提供给规划模块504而发起运动规划过程。规划模块504可使用接收到的检测结果来推导运动计划,诸如通过估计和评估目标包裹和/或机器人组件的路径。例如,机器人***100可从包裹位置开始分析(如由检测结果指示),并根据预定规则集(例如,关节的运动范围,碰撞避免规则等)推导机器人组件的夹持姿势。机器人***100可使用夹持姿势作为起始点并且迭代地推导满足预定规则集的行进区段,诸如用于避免碰撞和/或最小化行进时间。作为更具体的示例,机器人***100可推导用于提升包裹直到预期碰撞或期望高度为止的第一区段,该预期碰撞或期望高度对应于目标包裹的预期高度以及堆叠或集装箱壁的总体高度。机器人***100可推导从第一区段的末端朝向任务位置直到预期的碰撞或任务位置的横向位置为止的横向区段。机器人***100可重复迭代过程以推导避免碰撞并将起始位置连接到任务位置的路径区段的组合。在一些实施方案中,机器人***100可以以相反的次序推导区段的组合,诸如从包裹在任务位置处的推导出的放置姿势到包裹在起始位置处的当前姿势。机器人***100可将区段的组合转换成对应的命令和/或设置以操作机器人单元或其中的部件(例如,致动器,电机等)。在一些实施方案中,机器人***100可推导一组候选运动计划和对应的度量(例如,总体转移时间)。机器人***可通过选择优化对应度量的一个或多个计划来推导运动计划。
在框610处,机器人***100(例如,经由实现模块506)可开始实现推导的运动计划。例如,处理器202,实现模块506,和/或控制器109可通过将运动计划,其初始部分,和/或对应命令/设置发送到机器人单元(例如,图1的转移单元104)来发起运动计划(例如,初始计划514)的实现。机器人单元可执行接收到的计划或对应的命令/设置,诸如在将包裹从起始位置114转移到任务位置116时抓握并提升目标包裹。
在框612处,机器人***100可在实现运动计划或其第一/初始部分之后或同时获得额外的传感器数据。例如,机器人***100可从末端执行器处或周围的对应传感器获得重量,高度,和/或扭矩数据(例如,重量向量和/或CoM 194b的不同表示)。而且,机器人***100可获得物体的高度数据,诸如通过提升物体直到在位于起始位置上方的线传感器处检测到交叉/清除事件为止,和/或通过获得和分析堆叠的侧视图图像。
在一些实施方案中,机器人***100可基于测量的重量,扭矩,重量向量,或它们的组合而推导实际CoM(例如,CoM 194b)的估计值。例如,机器人***100可使用预定过程或等式,所述预定过程或等式基于测量到的重量和重量向量/扭矩测量结果中的水平分量(例如,方向和/或对应的幅度)而计算CoM的估计位置(例如,相对于夹持位置)。
在决策框614处,机器人***100可将获得的数据与识别出的目标物体的登记记录232中的对应记录进行比较。例如,机器人***100可将获得的重量数据与识别出的目标物体的登记记录232中的预期重量数据进行比较。而且,机器人***100可使用获得的重量和/或扭矩数据以及实际夹持位置来估计被抓握目标的实际CoM。机器人***100可将实际CoM与识别出的目标物体的预期CoM进行比较。在一些实施方案中,机器人***100可将获得的高度与预期高度进行比较。
作为说明性示例,机器人***100可被配置成根据检测结果推导以CoM为中心或定位在CoM正上方的夹持位置。因此,机器人***100可将来自末端执行器的重量向量和/或扭矩测量结果与预定的验证阈值进行比较,以确定是否准确地检测到了包裹。当实际CoM的估计值与预期CoM不同时,重量向量的扭矩或水平分量可能会超过验证阈值,因此允许机器人***100确定误检测。另选地或另外地,机器人***100可使用检测到的物体的重量,高度,和/或横向尺寸的预期值与测量的高度,重量,和/或横向尺寸之间的差异(例如,经由在最初使包裹移位之后捕获的图像)来测试误检测错误。
如果获得的数据匹配预期数据,则机器人***100可完成现有的运动计划,如框616中所示。如果获得的数据不匹配预期数据,则机器人***100可确定目标/当前被抓握的包裹的误检测。在框618处,机器人***100可计算对应值之间的测量结果差异以用于后续评估/处理。例如,机器人***100可将测量结果差异与预定的最小阈值进行比较,如决策框620中所示。最小阈值可对应于检测到的物体的预期值与对应于包裹的实际实时测量结果之间的可忽略差异(例如,重量,CoM位置等的差异)。最小阈值可用于决定现有/最初提供的运动计划的继续实现。因此,当测量结果差异低于此种最小值时,机器人***100可继续/完成现有运动计划的实现,而不管如框616中示出的检测到的包裹误检测。
当测量结果差异很大时(例如,大于最小值并且不可忽略),机器人***100可在进一步的补救响应之前或为进一步的补救响应做准备时执行一个或多个自动响应,诸如用于推导和实现另选/替换运动计划。在一些实施方案中,机器人***100(例如,经由控制器109和/或实现模块506)可响应于误检测而暂停初始运动计划的实现。在其他实施方案中,机器人***100(例如,经由控制器109和/或实现模块506)可实现自动替换操作以获得足够的测量结果差异。例如,控制器109可通过存储已执行的命令/设置和/或运动计划的已遍历部分来跟踪沿着初始运动计划的进度。控制器109可通过反转存储的进度来实现自动替换操作,诸如通过在相反的方向上和/或以相反的次序实现存储的命令/设置。另外地或另选地,控制器109可在初始提升之后释放被抓握的包裹。因此,控制器109可将包裹重新放置在起始位置,以准备推导和实现另选/替换运动计划。
在确定对误检测的适当响应时,机器人***100还可将测量结果差异与预定的最大阈值进行比较,如决策框622中所示。最大阈值可对应于可恢复错误的极限,诸如在重新实现运动规划时。当测量结果差异超过最大阈值时,机器人***100可实现错误过程,如框624中所示。错误过程的一些示例可包括在目标包裹处释放或重新放置目标,通知人类操作员等。
对于某些类型的可恢复误检测(未示出),机器人***100可动态地调整和完成最初提供的运动计划。例如,机器人***100可使用控制器109和/或实现模块506来动态地调整最初提供的运动计划的一个或多个方面,而不使用计划模块504,以推导替换运动计划。动态调整的一些示例可包括(1)至少通过计算出的高度差异调整末端执行器/包裹高度,和/或(2)根据重量差异和根据预定方法/等式调整速度。
响应于可寻址的误检测,机器人***100(例如,经由控制器109和/或图5中示出的模块中的一个)可使用获得的实际传感器数据推导替换占地区域,如框626中所示。例如,机器人***100可推导图4的估计的几何形状198,诸如使用如上所述的实际CoM和夹持位置和/或从图像数据(例如,3D图像)检测到的一个或多个转角。机器人***100可通过扩大或缩小初始占地区域来推导估计的几何形状198,使得实际/测量的CoM位于估计的几何形状198的中心部分。例如,机器人***100可使用3D转角和实际CoM中的一个作为参考点来生成直线并估计沿直线定位的相对转角。与参考3D转角相比,机器人***100可将转角位置估计为与CoM相对且等距。机器人***100可外推以下边界:(1)在对置转角处以直角相交的边界,(2)限定矩形形状的边界,以及(3)包围实际的CoM以推导替换占地区域的边界。
在框628处,机器人***100可动态地推导(例如,在初始运动计划的部分实现之后,诸如在如上所述暂停或否定计划时)更新的运动计划(例如,图5的替换运动计划520)。机器人***100可使用获得的实际传感器数据和/或替换占地区域推导替换运动计划520。在一些实施方案中,例如,控制器109和/或实现模块506可分析实现反馈518,并基于将有关替换的请求(例如,图5的实现反馈518)发送到规划模块504而获得替换计划。该请求可包括实际传感器数据和/或替换占地区域。在其他实施方案中,规划模块504可接收和分析实现反馈518和/或推导替换占地区域。随后,规划模块504可根据接收到的请求或分析结果推导替换运动计划520。例如,规划模块504可与上述类似但使用替换占地区域,实际CoM的估计值,测量的尺寸(例如,高度和/或横向尺寸),测量的重量等来推导替换运动计划520。在推导替换运动计划520时,规划模块504可实际上假设包裹是与对应于初始检测结果的登记记录不同或无关的未登记物体。因此,规划模块504可推导替换运动计划520,所述替换运动计划对应于与初始运动计划的相应分量不同的替换夹持位置,替换夹持强度(例如,用于接合包裹的新吸盘数量),替换转移高度,替换转移速度,或它们的组合。取决于默认响应,规划模块504可推导替换运动计划520,以用于从重新放置的包裹的起始位置开始或从暂停位置开始。
在一些实施方案中,规划模块504可通过考虑用于放大的替换占地区域的其他错误模式(例如,双重拾取,诸如当两个相邻包裹被末端执行器无意抓握时)来推导更新的运动计划。而且,当最初没有获得实际高度时,机器人***100可推导更新的运动计划,以包括对应于机器人单元允许的最大高度和/或登记记录232中的所登记包裹中的最大高度/尺寸的最大提升高度。在一些实施方案中,机器人***100可将物体放置在指定用于意外包裹的预定区域。规划模块504可推导替换运动计划520,以包括用于重新夹持以实际CoM位置的估计值而不是与初始运动计划相关联的初始夹持位置为中心的包裹的指令。
实现模块506随后可从规划模块504接收替换运动计划520作为对请求的响应。在框630处,机器人***100可实现更新的运动计划。换句话说,实现模块506可实现替换运动计划520而不是初始运动计划514或其剩余部分,以将包裹转移到任务位置116。机器人***100可在不通知或涉及人类操作员的情况下实现更新的运动计划。因此,机器人***100可实现对包裹误识别的自动响应,从而在没有人工干预的情况下完成任务。
在框632处,机器人***100可基于误识别的物体而更新登记记录232。在一些实施方案中,机器人***100可为抓握/转移的包裹创建新记录,以作为与初始检测相关联的记录的补充或替换。机器人***100可在新记录中包括实际传感器数据和/或对应的处理结果,诸如获得的重量,获得的实际高度,实际的CoM,和/或估计的几何形状198。在其他实施方案中,机器人***100可更新最初识别的包裹的现有记录,诸如通过用实际传感器数据和/或对应处理结果替换重量,高度,横向尺寸,CoM等。
结论
所公开技术的示例的以上具体实施方式不意在是穷举的或将所公开技术限制为以上公开的精确形式。虽然以上出于说明性目的描述了所公开技术的具体示例,但是如相关领域的技术人员将认识到的,在所公开技术的范围内,各种等效修改是可能的。例如,虽然以给定次序呈现了过程或框,但另选实现方式可执行具有步骤的例程,或采用具有不同次序的框的***,并且可删除,移动,添加,细分,组合,和/或修改一些过程或框以提供另选方案或子组合。这些过程或框中的每个可以用多种不同的方式来实现。而且,虽然所述过程或框有时被显示为连续地执行,但这些过程或框可改为同时执行或实现,或者可在不同时间执行。此外,本文提及的任何具体数字仅是示例;另选实现方式可采用不同的值或范围。
可根据以上具体实施方式对所公开技术做出这些改变和其他改变。虽然具体实施方式描述了所公开技术的某些示例以及预期的最佳模式,但是无论以上描述在文本中出现的多么详细,都可通过许多方式来实践所公开技术。所述***的细节在其具体实现方式细节上有很大变化,但仍然被本文公开的本技术涵盖。如上所述,在描述所公开技术的某些特征或方面时使用的特定术语不应被视为暗示所述术语在本文中被重新定义为局限于所公开技术的与该术语相关联的任何具体特性,特征,或方面。因此,除受所附权利要求限制之外,本发明不受其他限制。通常,除非以上具体实施方式部分明确定义了以下权利要求中使用的术语,否则此类术语不应被解释为将所公开技术限于说明书中所公开的具体示例。
虽然下面以某些权利要求的形式呈现了本发明的某些方面,但是申请人以任何数目的权利要求形式设想了本发明的各方面。因此,在本申请中或接续申请中,申请人保留在提交本申请以寻求此类附加权利要求形式之后寻求附加权利要求的权利。

Claims (20)

1.一种操作机器人***的方法,所述方法包括:
基于图像数据而生成初始检测结果,其中所述检测结果识别所述图像数据中描绘的包裹;
发起对基于所述初始检测结果而推导出的初始运动计划的实现,其中所述初始运动计划用于将所述包裹从起始位置转移到任务位置;
在实现所述初始运动计划的至少第一部分期间获得额外传感器数据;
将所述额外传感器数据与对应于所述初始检测结果的登记记录进行比较;
基于所述比较而确定误检测;
基于所述获得的额外传感器数据而动态地推导替换运动计划;
实现所述替换运动计划而不是所述初始运动计划或其第二部分,以将所述包裹转移到所述任务位置;以及
更新登记记录以包括所述包裹的所述额外传感器数据。
2.如权利要求1所述的方法,所述方法还包括:
基于所述获得的额外传感器数据而推导替换占地区域,其中
基于所述替换占地区域而不是所述登记记录中的尺寸而推导所述替换运动计划。
3.如权利要求2所述的方法,其中:
所述额外传感器数据包括代表所述包裹的质心(CoM)位置的测量结果;并且
以所述CoM位置或其估计值在所述替换占地区域的中心部分处来推导出所述替换占地区域。
4.如权利要求3所述的方法,其中:
所述额外传感器数据包括由执行所述初始运动计划以转移所述包裹的机器人单元提供的重量向量或扭矩测量结果;
所述方法还包括:
基于所述重量向量而估计所述CoM位置。
5.如权利要求3所述的方法,其中所述替换运动计划包括用于在所述CoM位置而不是与所述初始运动计划相关联的初始夹持位置上方重新夹持所述包裹的指令。
6.如权利要求1所述的方法,其中:
所述额外传感器数据包括所述包裹的测量的重量;并且
基于所述测量的重量而不是由所述登记记录指示的重量而推导所述替换运动计划。
7.如权利要求1所述的方法,其中:
所述额外传感器数据包括所述包裹的测量的高度;并且
基于所述测量的高度而不是由所述登记记录指示的高度而推导所述替换运动计划。
8.如权利要求1所述的方法,其中:
更新所述登记记录包括用所述额外传感器数据自动替换所述登记记录内的记录的特征。
9.如权利要求1所述的方法,其中:
更新所述登记记录包括通过用所述额外传感器数据创建新的登记记录来自动登记所述包裹,其中所述新的登记记录补充对应于所述初始检测结果的登记记录。
10.如权利要求1所述的方法,所述方法还包括:
根据对应于所述初始检测结果的所述登记记录,当所述额外传感器数据偏离对应的预期特征时,暂停对所述初始运动计划的实现;
其中
所述替换运动计划用于从暂停位置转移所述包裹并用于替换所述初始运动计划的所述第二部分。
11.如权利要求10所述的方法,其中:
发起对所述初始运动计划的实现包括接收来自外部规划模块并且由所述外部规划模块推导出的所述初始运动计划;并且
动态地获得所述替换运动计划包括使用与所述外部规划模块分开的控制器动态地调整所述初始运动计划。
12.如权利要求1所述的方法,其中:
根据与所述初始检测结果相关联的登记记录,当所述额外传感器数据偏离对应的预期特征时,使用控制器实现自动替换操作,其中所述自动替换操作包括反转所述初始运动计划的所述第一部分和/或释放所述包裹以将所述包裹放回到所述起始位置而不与外部规划模块通信;
获得所述替换运动计划包括:
从所述控制器向所述外部规划模块发送对所述替换运动计划的请求,其中所述请求包括所述额外传感器数据,以及
从所述外部规划模块接收所述替换运动计划。
13.如权利要求12所述的方法,所述方法还包括:
使用所述外部规划模块,基于所述初始检测结果而推导所述初始运动计划,其中所述初始运动计划对应于初始夹持位置,初始转移高度,初始转移速度,或它们的组合;以及
使用所述外部规划模块,基于所述额外传感器数据而推导所述替换运动规划,其中
所述替换运动计划的所述推导包括假设所述包裹是与对应于所述初始检测结果的所述登记记录不同的未登记物体,
所述替换运动计划对应于与所述初始运动计划的相应分量不同的新的夹持位置,新的转移高度,新的转移速度,或它们的组合,并且
所述替换运动计划用于将所述重新放置的包裹从所述起始位置转移到所述任务位置。
14.一种机器人***,所述机器人***包括:
至少一个处理器;
至少一个存储器,所述至少一个存储器包括处理器指令,当执行所述处理器指令时致使所述至少一个处理器:
实现用于将包裹从起始位置转移到任务位置的初始运动计划,其中基于与描绘所述起始位置处的所述包裹的图像数据相关联的初始检测结果而推导所述初始运动计划;
在实现所述初始运动计划的至少第一部分期间获得额外传感器数据;
基于将所述额外传感器数据与对应于所述初始检测结果的登记记录进行比较而确定误检测;
响应于确定所述误检测,基于所述获得的额外传感器数据而动态地获得替换运动计划;以及
实现所述替换运动计划而不是所述初始运动计划或其第二部分,以将所述包裹转移到所述任务位置。
15.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括处理器指令,所述处理器指令当由一个或多个处理器执行时,致使所述一个或多个处理器执行一种方法,所述方法包括:
从外部规划模块接收用于将包裹从起始位置转移到任务位置的初始运动计划,其中基于与描绘所述起始位置处的所述包裹的图像数据相关联的初始检测结果而推导所述初始运动计划;
实现所述初始运动计划的至少第一部分,以用于从所述起始位置夹持和提升所述包裹;
在实现所述初始运动计划的至少所述第一部分期间获得额外传感器数据,其中所述额外传感器数据包括有关被夹持和提升的包裹的测量出的扭矩向量,重量,高度,或它们的组合;
基于将所述额外传感器数据与用于生成所述初始检测结果的登记记录中的对应特征进行比较而确定误检测;
响应于确定所述误检测,基于所述获得的额外传感器数据而动态地获得替换运动计划;以及
实现所述替换运动计划而不是所述初始运动计划或其第二部分,以将所述包裹转移到所述任务位置。
16.如权利要求15所述的非暂时性计算机可读介质,其中:
当所述扭矩向量对应于偏离预期CoM位置的质心(CoM)位置和/或与所述初始运动计划相关联的抓握位置时,确定所述误检测;
所述方法还包括:
基于所述获得的额外传感器数据而推导替换占地区域,其中
基于所述替换占地区域而不是所述登记记录中的尺寸而推导所述替换运动计划。
17.如权利要求15所述的非暂时性计算机可读介质,其中:
所述额外传感器数据包括所述包裹的测量的重量/或测量的高度;并且
基于所述测量的重量和/或所述测量的高度而不是由所述登记记录指示的重量或高度而推导所述替换运动计划。
18.如权利要求15所述的非暂时性计算机可读介质,其中所述方法还包括:
根据对应于所述初始检测结果的所述登记记录,当所述额外传感器数据偏离对应的预期特征时,暂停对所述初始运动计划的实现,其中
所述替换运动计划用于从暂停位置转移所述包裹并用于替换所述初始运动计划的所述第二部分。
19.如权利要求15所述的非暂时性计算机可读介质,其中所述方法还包括:
根据与所述初始检测相关联的登记记录,当所述额外传感器数据偏离对应的预期特征时,使用控制器实现自动替换操作,其中所述自动替换操作包括反转所述初始运动计划的所述第一部分和/或投放所述包裹以将所述包裹放回到所述起始位置而不与外部规划模块通信;
其中获得所述替换运动计划包括:
从所述控制器向所述外部规划模块发送对所述替换运动计划的请求,其中所述请求包括所述额外传感器数据,以及
从所述外部规划模块接收所述替换运动计划。
20.如权利要求15所述的非暂时性计算机可读介质,其中所述方法还包括:
基于以下各项而更新登记记录以包括有关所述包裹的所述额外传感器数据:(1)创建表示所述包裹的新的登记记录来代替所述登记记录,所述新的登记记录包括所述额外传感器数据而不是对应的特征,或者(2)用所述额外传感器数据替换所述登记记录中的所述对应特征。
CN202210933005.4A 2021-07-23 2022-07-25 具有物体更新机制的机器人***和用于操作所述机器人***的方法 Pending CN115258510A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163225346P 2021-07-23 2021-07-23
US63/225,346 2021-07-23
US17/841,545 US20230025647A1 (en) 2021-07-23 2022-06-15 Robotic system with object update mechanism and methods for operating the same
US17/841,545 2022-06-15
CN202210880924.XA CN115676223A (zh) 2021-07-23 2022-07-25 具有物体更新机制的机器人***和用于操作所述机器人***的方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202210880924.XA Division CN115676223A (zh) 2021-07-23 2022-07-25 具有物体更新机制的机器人***和用于操作所述机器人***的方法

Publications (1)

Publication Number Publication Date
CN115258510A true CN115258510A (zh) 2022-11-01

Family

ID=83784084

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210933005.4A Pending CN115258510A (zh) 2021-07-23 2022-07-25 具有物体更新机制的机器人***和用于操作所述机器人***的方法

Country Status (1)

Country Link
CN (1) CN115258510A (zh)

Similar Documents

Publication Publication Date Title
US12002007B2 (en) Robotic system with automated package scan and registration mechanism and methods of operating the same
US11654558B2 (en) Robotic system with piece-loss management mechanism
US11648676B2 (en) Robotic system with a coordinated transfer mechanism
JP7175487B1 (ja) 画像ベースのサイジングメカニズムを備えたロボットシステム及びロボットシステムを操作するための方法
CN115485216A (zh) 机器人多表面夹持器组件及其操作方法
JP7126667B1 (ja) 深さベースの処理メカニズムを伴うロボットシステム及びロボットシステムを操作するための方法
CN111618852B (zh) 具有协调转移机构的机器人***
JP7218881B1 (ja) 物体更新機構を備えたロボットシステム及びロボットシステムを操作するための方法
CN115258510A (zh) 具有物体更新机制的机器人***和用于操作所述机器人***的方法
US20230071488A1 (en) Robotic system with overlap processing mechanism and methods for operating the same
US20240228192A9 (en) Robotic systems with dynamic motion planning for transferring unregistered objects
US20240132303A1 (en) Robotic systems with dynamic motion planning for transferring unregistered objects
CN115570556A (zh) 具有基于深度的处理机制的机器人***及其操作方法
CN115609569A (zh) 具有基于图像的尺寸确定机制的机器人***及其操作方法
EP4395965A1 (en) Robotic system with overlap processing mechanism and methods for operating the same

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination