CN115570556A - 具有基于深度的处理机制的机器人系统及其操作方法 - Google Patents

具有基于深度的处理机制的机器人系统及其操作方法 Download PDF

Info

Publication number
CN115570556A
CN115570556A CN202210899251.2A CN202210899251A CN115570556A CN 115570556 A CN115570556 A CN 115570556A CN 202210899251 A CN202210899251 A CN 202210899251A CN 115570556 A CN115570556 A CN 115570556A
Authority
CN
China
Prior art keywords
objects
stack
task
location
target object
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
CN202210899251.2A
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/732,302 external-priority patent/US20230027984A1/en
Application filed by Mujin Technology filed Critical Mujin Technology
Publication of CN115570556A publication Critical patent/CN115570556A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0084Programme-controlled manipulators comprising a plurality of manipulators
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J15/00Gripping heads and other end effectors
    • B25J15/06Gripping heads and other end effectors with vacuum or magnetic holding means
    • B25J15/0616Gripping heads and other end effectors with vacuum or magnetic holding means with vacuum
    • 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
    • B25J9/161Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
    • 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/1682Dual arm manipulator; Coordination of several 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/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1694Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
    • B25J9/1697Vision controlled systems
    • 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/0407Storage devices mechanical using stacker cranes
    • B65G1/0421Storage devices mechanical using stacker cranes with control for stacker crane operations
    • 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/1373Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses
    • B65G1/1375Storage devices mechanical with arrangements or automatic control means for selecting which articles are to be removed for fulfilling orders in warehouses the orders being assembled on a commissioning stacker-crane or truck
    • 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

Abstract

公开了一种用于估计目标物体和/或相关联的任务实施的方面的系统和方法。

Description

具有基于深度的处理机制的机器人系统及其操作方法
本申请是中国申请CN202210874140.6的分案申请,该申请日期 为2022年7月21日,发明名称为“具有基于深度的处理机制的机器 人系统及其操作方法”。
相关申请
本申请要求于2021年7月21日提交的美国临时专利申请序列号 63/224,292的权益,所述美国临时专利申请以引用的方式整体并入本 文。
本申请包含与以下申请相关的主题:2019年3月1日提交的美 国专利申请号16/290,741,现为美国专利号10,369,701;2019年6月 17日提交的美国专利申请号16/443,743,现为美国专利号10,562,188; 2019年6月17日提交的美国专利申请号16/443,757,现为美国专利 号10,562,189;2020年1月7日提交的美国专利申请号16/736,667, 现为美国专利号11,034,025;2021年5月6日提交的美国专利申请号 17/313,921;2019年8月13日提交的美国专利申请号16/539,790,现 为美国专利号10,703,584;以及2020年5月29日提交的美国专利申 请号16/888,376。所有这些申请的主题均以引用的方式并入本文。
本申请还包含与本文同时提交的名称为“ROBOTIC SYSTEM WITH IMAGE-BASEDSIZING MECHANISM AND METHODS FOR OPERATING THE SAME”的美国专利申请_相关的主题,所述 申请的主题以引用的方式并入本文。
技术领域
本技术总体上涉及机器人系统,并且更具体地,涉及具有基于深 度的处理机制的机器人系统。
背景技术
机器人(例如,被配置为自动地/自主地执行物理动作的机器)现在 广泛用于许多领域中。例如,机器人可用于在制造、包装、运输和/ 或运送等方面执行各种任务(例如,操纵或搬运物体)。在执行任务时, 机器人可复制人类动作,由此代替或减少原本执行危险或重复性任务 所需的人类参与。机器人通常缺乏复制分析和执行更复杂任务所需的 人类灵敏度、灵活性和/或适应性所必需的精密性。例如,机器人通 常难以基于有限的信息推断出多个结论和/或概括。因此,仍然需要 用于推断出结论和/或概括的改进的机器人系统和技术。
附图说明
图1绘示了根据本技术的一个或多个实施方案的其中机器人系 统运输物体的示例性环境。
图2是绘示了根据本技术的一个或多个实施方案的机器人系统 的框图。
图3绘示了根据本技术的一个或多个实施方案的机器人搬运组 件。
图4A绘示了根据本技术的一个或多个实施方案的示例性第一堆 垛。
图4B绘示了根据本技术的一个或多个实施方案的描绘第一堆垛 的示例性图像数据。
图5A绘示了根据本技术的一个或多个实施方案的示例性第二堆 垛。
图5B绘示了根据本技术的一个或多个实施方案的描绘第二堆垛 的示例性图像数据。
图6A绘示了根据本技术的一个或多个实施方案的开始位置的第 一图像。
图6B绘示了根据本技术的一个或多个实施方案的开始位置的第 二图像。
图7A绘示了根据本技术的一个或多个实施方案的任务位置的第 一图像。
图7B绘示了根据本技术的一个或多个实施方案的任务位置的第 二图像。
图8是根据本技术的一个或多个实施方案的用于操作机器人系 统的流程图。
具体实施方式
本文描述了用于基于在任务执行期间捕获的一个或多个测量结 果(例如,深度量度)来推导估计的系统和方法。在一些实现方式中, 机器人系统可被配置为将一个或多个物体(例如,箱子、包裹、物体 等)从开始位置(例如,托盘、箱柜、传送机等)搬运到任务位置(例如, 不同的托盘、箱柜、传送机等)。机器人系统可在搬运对应的物体期 间获得描绘开始位置和/或任务位置的一组或一系列图像数据(例如, 二维(2D)和/或三维(3D)图像数据)。机器人系统可使用所述图像数据 来估计和/或推导各种实施条件,诸如堆垛中的物体的数量、拾取/放 置的验证、物体中断的检测等。
在下文中,陈述众多具体细节以提供对目前公开的技术的透彻理 解。在其他实施方案中,可在没有这些具体细节的情况下实践在此处 介绍的技术。在其他情况下,未详细描述诸如具体功能或例程的众所 周知的特征,以便避免不必要地使本公开模糊不清。在此描述中对“实 施方案”、“一个实施方案”等的引用意味着所描述的特定特征、结构、 材料或特性包括在本公开的至少一个实施方案中。因此,此类短语在 本说明书中的出现不一定全都是指同一实施方案。另一方面,此类引 用也不一定互相排斥。此外,特定特征、结构、材料或特性可通过任 何合适的方式组合在一个或多个实施方案中。应理解,在图中示出的 各种实施方案仅仅是说明性表示,并且不一定按比例绘制。
出于清楚起见,在以下描述中没有陈述描述是众所周知的并且常 常与机器人系统和子系统相关联但是可能会不必要地使所公开的技 术的一些重要方面混淆不清的结构或过程的若干细节。此外,虽然以 下公开内容陈述了本技术的不同方面的若干实施方案,但是若干其他 实施方案可具有与此部分中所描述的配置或部件不同的配置或部件。 因此,所公开的技术可具有带有额外元件或不带有下文描述的元件中 的若干元件的其他实施方案。
在下文描述的本公开的许多实施方案或方面可采取计算机或控 制器可执行指令的形式,包括由可编程计算机或控制器执行的例程。 本领域技术人员将了解,可在除了以下示出和描述的计算机或控制器 系统之外的计算机或控制器系统上实践所公开的技术。本文描述的技 术可体现在专用计算机或数据处理器中,所述专用计算机或数据处理 器被特定编程、配置或构造成执行下文描述的计算机可执行指令中的 一者或多者。因此,本文一般使用的术语“计算机”和“控制器”是指任 何数据处理器,并且可包括互联网电器和手持式装置(包括掌上计算 机、可穿戴计算机、蜂窝或移动电话、多处理器系统、基于处理器的 或可编程的消费型电子器件、网络计算机、微型计算机等)。由这些 计算机和控制器处理的信息可呈现在任何合适的显示介质处,所述显 示介质包括液晶显示器(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可包括和/或耦接到在关节处连接以进行运动(例 如,旋转移位和/或平移移位)的物理构件或结构构件(例如,机器人操 纵臂)。所述结构构件和关节可形成动力链,所述动力链被配置为依 据机器人系统100的使用/操作来操纵末端执行器(例如,夹持器),所 述末端执行器被配置为执行一个或多个任务(例如,夹持、自旋、焊 接等)。机器人系统100可包括致动装置(例如,马达、致动器、电线、 人造肌肉、电活性聚合物等),和/或与所述致动装置通信,所述致动 装置被配置为围绕对应关节或在对应关节处驱动或操纵(例如,移位 和/或重新定向)结构构件。在一些实施方案中,机器人单元可包括运 输马达,所述运输马达被配置为将对应的单元/底盘从一个地方运输 到另一地方。
机器人系统100可包括传感器和/或与传感器通信,所述传感器 被配置为获得用于实施任务(诸如,用于操纵结构构件和/或用于运输 机器人单元)的信息。传感器可包括被配置为检测或测量机器人系统 100的一个或多个物理性质(例如,一个或多个结构构件/其关节的状 态、状况和/或位置)和/或周围环境的一个或多个物理性质的装置。传 感器的一些示例可包括加速度计、陀螺仪、力传感器、应变仪、触觉 传感器、扭矩传感器、位置编码器等。
例如,在一些实施方案中,所述传感器可包括被配置为检测周围 环境的一个或多个成像装置(例如,视觉和/或红外相机、2D和/或3D 成像相机、距离测量装置,诸如激光雷达或雷达等)。所述成像装置 可生成检测到的环境的表示,诸如数字图像和/或点云,可经由机器/ 计算机视觉来处理所述表示(例如,用于自动检查、机器人导引或其 他机器人应用)。机器人系统100可处理数字图像和/或点云以识别目 标物体112、开始位置114、任务位置116、目标物体112的姿势, 或它们的组合。
为了操纵目标物体112,机器人系统100可捕获并分析指定区域 (例如,诸如卡车内部或传送带上的拾取位置)的图像,以识别目标物 体112和其开始位置114。类似地,机器人系统100可捕获并分析另 一指定区域(例如,用于将物体放置在传送机上的投放位置、用于将 物体放置在容器内部的位置或用于堆垛目的的托盘上的位置)的图像 以识别任务位置116。例如,成像装置可包括被配置为生成拾取区域 的图像的一个或多个相机和/或被配置为生成任务区域(例如,投放区 域)的图像的一个或多个相机。如下文所描述,基于所捕获的图像, 机器人系统100可确定开始位置114、任务位置116、相关联的姿势、 打包/放置计划、搬运/打包顺序和/或其他处理结果。
在一些实施方案中,例如,所述传感器可包括位置传感器(例如, 位置编码器、电位计等),所述位置传感器被配置为检测结构构件(例 如,机器人臂和/或末端执行器)和/或机器人系统100的对应关节的位 置。机器人系统100可在执行任务期间使用位置传感器来跟踪结构构 件和/或关节的位置和/或取向。
机器人系统
图2是绘示根据本技术的一个或多个实施方案的机器人系统100 的部件的框图。在一些实施方案中,例如,机器人系统100(例如,在 上述单元或组件和/或机器人中的一者或多者处)可包括电子/电气装 置,诸如一个或多个处理器202、一个或多个存储装置204、一个或 多个通信装置206、一个或多个输入-输出装置208、一个或多个致动 装置212、一个或多个运输马达214、一个或多个传感器216,或它 们的组合。各种装置可经由有线连接和/或无线连接彼此耦接。例如, 机器人系统100的一个或多个单元/部件和/或机器人单元中的一者或 多者可包括总线,诸如系统总线、外围部件互连(PCI)总线或 PCI-Express总线、HyperTransport或工业标准架构(ISA)总线、小型 计算机系统接口(SCSI)总线、通用串行总线(USB)、IIC(I2C)总线,或 电气和电子工程师协会(IEEE)标准1394总线(还称为“火线”)。而且, 例如,机器人系统100可包括桥接器、适配器、控制器或用于提供装 置之间的有线连接的其他信号相关装置,和/或与以上各者通信。无 线连接可基于(例如)蜂窝通信协议(例如,3G、4G、LTE、5G等)、无 线局域网(LAN)协议(例如,无线保真(WIFI))、对等或装置对装置通 信协议(例如,蓝牙、近场通信(NFC)等)、物联网(IoT)协议(例如, NB-IoT、Zigbee、Z-wave、LTE-M等)和/或其他无线通信协议。
处理器202可包括被配置为执行存储在存储装置204(例如,计算 机存储器)上的指令(例如,软件指令)的数据处理器(例如,中央处理 单元(CPU)、专用计算机和/或板载服务器)。处理器202可实施程序 指令以控制其他装置/与其他装置介接,由此致使机器人系统100执 行动作、任务和/或操作。
存储装置204可包括其上存储有程序指令(例如,软件)的非暂时 性计算机可读介质。存储装置204的一些示例可包括易失性存储器(例 如,高速缓存和/或随机存取存储器(RAM))和/或非易失性存储器(例 如,闪存存储器和/或磁盘驱动器)。存储装置204的其他示例可包括 便携式存储器驱动器和/或云存储装置。
在一些实施方案中,存储装置204可用于进一步存储主数据、处 理结果和/或预定数据/阈值并提供对它们的访问。例如,存储装置204 可存储主数据,所述主数据包括对可由机器人系统100操纵的物体(例 如,箱子、盒子、容器和/或产品)的描述。在一个或多个实施方案中, 主数据可包括预期将由机器人系统100操纵的物体的尺寸、形状(例 如,用于潜在姿势的模板和/或用于辨识处于不同姿势的物体的计算 机生成的模型)、质量/重量信息、颜色方案、图像、标识信息(例如, 条形码、快速响应(QR)代码、徽标等,和/或它们的预期位置)、预期 质量或重量或它们的组合。在一些实施方案中,主数据可包括关于物 体的操纵相关信息,诸如物体中的每一者上的质量中心(CoM)位置、 与一个或多个动作/操纵相对应的预期的传感器测量结果(例如,力、 扭矩、压力和/或接触测量结果),或它们的组合。机器人系统可查找 压力水平(例如,真空水平、抽吸水平等)、夹持/拾取区域(例如,将 要激活的真空夹持器的区域或排)以及用于控制搬运机器人的其他所 存储的主数据。存储装置204还可存储物体跟踪数据。在一些实施方 案中,物体跟踪数据可包括被扫描或操纵的物体的日志。在一些实施 方案中,物体跟踪数据可包括在一个或多个位置(例如,指定的拾取 或投放位置和/或传送带)处的物体的图像数据(例如,图片、点云、实 时视频馈送等)。在一些实施方案中,物体跟踪数据可包括物体的位 置和/或物体在一个或多个位置处的取向。
通信装置206可包括被配置为经由网络与外部装置或远程装置 进行通信的电路。例如,通信装置206可包括接收器、传输器、调制 器/解调器(调制解调器)、信号检测器、信号编码器/解码器、连接器 端口、网卡等。通信装置206可被配置为根据一种或多种通信协议(例 如,互联网协议(IP)、无线通信协议等)来发送、接收和/或处理电信 号。在一些实施方案中,机器人系统100可使用通信装置206在机器 人系统100的单元之间交换信息和/或与在机器人系统100外部的系 统或装置交换信息(例如,用于报告、数据搜集、分析和/或故障排除 目的)。
输入-输出装置208可包括用户接口装置,所述用户接口装置被 配置为向人类操作员传达信息和/或从人类操作员接收信息。例如, 输入-输出装置208可包括用于将信息传达给人类操作员的显示器 210和/或其他输出装置(例如,扬声器、触觉电路或触觉反馈装置等)。 而且,输入-输出装置208可包括控制或接收装置,诸如键盘、鼠标、 触摸屏、麦克风、用户界面(UI)传感器(例如,用于接收运动命令的相 机)、可穿戴输入装置等。在一些实施方案中,机器人系统100可在 执行动作、任务、操作或它们的组合时使用输入-输出装置208与人 类操作员交互。
在一些实施方案中,控制器(例如,图2的控制器209)可包括处 理器202、存储装置204、通信装置206和/或输入-输出装置208。控 制器可以是独立的部件或单元/组件的一部分。例如,机器人系统100 的每个卸载单元、搬运组件、运输单元和装载单元可包括一个或多个 控制器。在一些实施方案中,单个控制器可控制多个单元或独立部件。
机器人系统100可包括在关节处连接以进行运动(例如,旋转移 位和/或平移移位)的物理构件或结构构件(例如,机器人操纵臂),和/ 或与所述物理构件或结构构件通信。所述结构构件和关节可形成动力 链,所述动力链被配置为依据机器人系统100的使用/操作来操纵末 端执行器(例如,夹持器),所述末端执行器被配置为执行一个或多个 任务(例如,夹持、自旋、焊接等)。所述动力链可包括致动装置212(例 如,马达、致动器、电线、人造肌肉、电活性聚合物等),所述致动 装置被配置为围绕对应关节或在对应关节处驱动或操纵(例如,移位 和/或重新定向)结构构件。在一些实施方案中,所述动力链可包括运 输马达214,所述运输马达被配置为将对应的单元/底盘从一个地方运 输到另一地方。例如,致动装置212和运输马达214可连接到机器人 臂、线性滑块或其他机器人部件或连接到其一部分。
传感器216可被配置为获得用于实施任务(诸如,用于操纵结构 构件和/或用于运输机器人单元)的信息。传感器216可包括被配置为 检测或测量控制器、机器人单元的一个或多个物理性质(例如,一个 或多个结构构件/其关节的状态、状况和/或位置)和/或周围环境的一 个或多个物理性质的装置。传感器216的一些示例可包括接触传感 器、接近传感器、加速度计、陀螺仪、力传感器、应变仪、扭矩传感 器、位置编码器、压力传感器、真空传感器等。
在一些实施方案中,例如,传感器216可包括被配置为检测周围 环境的一个或多个成像装置222(例如,二维成像装置和/或三维成像 装置)。所述成像装置可包括相机(包括视觉和/或红外相机)、激光雷 达装置、雷达装置和/或其他测距或检测装置。成像装置222可生成 检测到的环境的表示(诸如数字图像和/或点云),所述表示用于实施机 器/计算机视觉(例如,用于自动检查、机器人导引或其他机器人应用)。
现在参考图1和图2,机器人系统100(例如,经由处理器202) 可处理图像数据和/或点云以识别图1的目标物体112、图1的开始位 置114、图1的任务位置116、图1的目标物体112的姿势,或它们 的组合。机器人系统100可使用来自成像装置222的图像数据来确定 如何接近和拾取物体。可分析物体的图像以确定(经由例如规划系统) 用于设置真空夹持器组件的位置以夹持目标物体的运动计划。机器人 系统100(例如,经由各种单元)可捕获和分析指定区域(例如,卡车内 部、容器内部或传送带上的物体的拾取位置)的图像以识别目标物体 112及其开始位置114。类似地,机器人系统100可捕获并分析另一 指定区域(例如,用于将物体放置在传送带上的投放位置、用于将物 体放置在容器内部的位置或用于堆垛目的的托盘上的位置)的图像以 识别任务位置116。
而且,例如,图2的传感器216可包括图2的位置传感器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示出了承载将位置设置在传送机120(例如,传送带)上方的 单个目标物体112(例如,包裹)的末端执行器140。末端执行器140 可将目标物体112释放到传送机120上,并且机器人臂系统132然后 可通过将卸载的末端执行器140的位置设置在包裹112a、包裹112b 或以上两者的正上方来取回包裹112a、112b。然后,末端执行器140 然后可经由真空夹持力固持两个包裹112a、112b中的一者或多者, 并且机器人臂系统132可将所保持的包裹112a、112b载运到传送机 120正上方的位置。末端执行器140然后可将包裹112a、112b释放(例 如,同时或循序地)到传送机120上。可将此过程重复任何次以将物 体从堆垛165载运到传送机120。
继续参考图3,卸垛平台110可包括多个目标物体112(例如,包 裹)在准备好被运输时可堆垛和/或堆放在其上的任何平台、表面和/ 或结构。成像系统160可包括一个或多个成像装置161,所述一个或 多个成像装置被配置为捕获卸垛平台110上的包裹112a、112b的图 像数据。成像装置161可在拾取环境163或拾取区域处捕获距离数据、 位置数据、视频、静态图像、激光雷达数据、雷达数据和/或运动。 应注意,尽管本文使用了术语“物体”和“包裹”,但所述术语包括能够 被夹持、提升、运输和递送的任何其他物品,诸如但不限于“盒子”、 “箱子”、“纸箱”或它们的任何组合。此外,尽管在本文公开的附图中 绘示了多边形箱子(例如,矩形箱子),但箱子的形状不限于这种形状, 而是包括如下文详细讨论的能够被夹持、提升、运输和递送的任何规 则或不规则形状。
与卸垛平台110一样,接收传送机120可包括被指定为接收包裹 112a、112b以用于进一步的任务/操作的任何平台、表面和/或结构。 在一些实施方案中,接收传送机120可包括用于将目标物体112从一 个位置(例如,释放点)运输到另一位置以进行进一步的操作(例如,分 拣和/或存放)的传送机系统。在一些实施方案中,机器人系统100可 包括第二成像系统(未示出),所述第二成像系统被配置为提供从具有 目标放置位置(例如,传送机120)的目标环境捕获的图像数据。第二 成像系统可捕获接收/放置位置(例如,接收传送机120)上的包裹112a、 112b的图像数据。
任务实施流程
图4A绘示了根据本技术的一个或多个实施方案的示例性第一堆 垛400。图4B绘示了根据本技术的一个或多个实施方案的描绘第一 堆垛400的示例性图像数据406。现在一起参看图4A和图4B,图像 数据406可表示在开始位置(例如,图3的卸垛平台110)处的第一堆 垛400的俯视图。图像数据406可包括来自图3的成像系统160的 2D和/或3D数据。
如图4A中所示,堆垛400(例如,物体堆垛)包括物体402,所述 物体包括排列成有组织的堆的物体(例如,物体402-1、402-2和402-3)。 在图4A中绘示的堆垛400可对应于在将物体堆垛400中的物体402 中的任一者搬运到任务位置(例如,图1中的任务位置116)之前将位 置设置在开始位置(例如,图1中的开始位置114)处的物体堆垛。图 像数据406由此表示诸如在从堆垛400拾取物体中的任一者之前的时 间点在所述开始位置处的堆垛400的俯视图(例如,图像数据406可 被称为在先图像数据)。可将物体402布置成满足最佳化条件,诸如 最小化堆垛400的总体积。在图4A中,物体402被布置成使得物体 堆垛400具有共面或基本上共面的顶表面400-A。共面的顶表面400-A 由彼此邻近布置的物体402-1、402-2和402-3的相应的共面或基本上 共面的顶表面402-1A、402-2A和402-3A组成。在图4A中,物体堆 垛400具有对应于堆垛高度(HS)、堆垛宽度(WS)和堆垛长度(LS)的尺 寸。
在一些实施方案中,图像数据406可包括深度图,所述深度图表 示成像系统160与在成像系统160的视野内的物体的检测到的表面/ 点之间的距离。例如,如上文描述,成像装置222可生成在对应于深 度图和/或点云的图像中检测到的环境的表示。深度图可包括在沿横 向平面的离散点处(例如,在沿图4B中绘示的XY平面的位置‘x’、‘y’ 和‘z’处)的深度量度(例如,沿Z方向)。对于在图4B中绘示的示例, 图像数据406可描绘形成堆垛400的顶表面的九个物体的共面顶表面 (例如,匹配的深度量度)(例如,物体402-1、402-2和402-3相应的共 面或基本上共面的顶表面402-1A、402-2A和402-3-A)。匹配的深度 可对应于堆垛高度(图4A中的Hs)。图像数据406还可描绘放置平台 404(例如,用虚线填充示出的托盘)的顶表面的深度量度。在3D图像 数据中,堆垛内的物体的邻近或邻接边缘可以是能够容易检测到的或 不能够容易检测到的。堆垛高度HS可对应于物体/堆垛的对应顶表面 (例如,表面400-A)与放置平台的顶表面(例如,放置平台404的顶表 面)之间的竖直距离。
机器人系统100可使用图像数据406来检测堆垛400中的物体 402。物体检测可包括估计在图像数据406中描绘的物体的身份和/或 位置。在一些实施方案中,机器人系统100可处理图像数据406(例如, 2D和/或3D描绘)以识别其中描绘的拐角和/或边缘/线(例如,堆垛的 外围边缘或其顶层)。这种识别可包括识别堆垛400的拐角和边缘和/ 或识别堆垛400中的物体402的拐角和边缘。机器人系统100可处理 拐角和/或边缘以估计所描绘的物体中的每一者的表面或外围边界。 机器人系统100可使用估计的边界来估计所描绘的物体中的每一者 的有界表面(例如,顶表面)。例如,机器人系统可分别估计物体402-1、 402-2和402-3的表面402-1A、402-2A和402-3A在堆垛400的共面 表面400-A内的外围边界。例如,识别可包括分析图像数据406的 3D数据以识别堆垛拐角,识别堆垛400的2D视觉表示内的边缘(例 如,经由Sobel滤波器),将2D视觉表示的部分与主数据内的已知物 体的模板进行比较,或其组合。而且,例如,所述识别可包括应用其 他图像检测方法,包括例如识别箱子和包裹的拐角的算法。此外,此 类图像检测方法可能够将物体的拐角和边缘与物体上的视觉特征区 分开来。例如,机器人系统可将物体表面上的袋盖、胶带或其他视觉 特征与物体的实际边缘区分开来。
机器人系统100可将图像数据的未被辨识的/未匹配的部分处理 为对应于一个或多个未被辨识的或意外的物体。例如,图像数据406 的未被辨识的部分可能对应于不规则形状的物体或损坏的物体。机器 人系统100可在操纵或任务实施期间自动或自主地注册意外物体。例 如,机器人系统100可推导用于夹持意外物体的最小可行区域 (MVR)。机器人系统100可使用MVR来抓握和提升物体和/或将物体 从开始位置搬运到任务位置。机器人系统100可基于未被辨识的物体 的移动来检测所述物体的实际边缘、对应尺寸(例如,横向尺寸)和/ 或视觉表面图像(例如,图像数据的对应部分)。例如,机器人系统100 可比较在移除/移动未被辨识的物体之前和之后拍摄的图像,以推导 所述物体的尺寸(例如,横向尺寸和/或高度)。机器人系统100可进一 步在搬运期间诸如使用交叉/线传感器和/或侧视相机来确定所述物体 的高度。机器人系统100可在物体搬运期间获得其他测量结果或估 计,诸如重量、CoM位置等。
机器人系统100可使用描述堆垛的内容的附加信息,诸如运送清 单、订单收据、任务跟踪器(例如,对应于移除/搬运的物体的历史) 等,来处理物体(诸如,被辨识和/或未被辨识的物体)。例如,机器人 系统100可基于堆垛的内容描述来确定预期物体的初步列表。在物体 检测期间,机器人系统100可在其他物体之前将图像数据与初步列表 上的物体的注册描述进行比较。
机器人系统100可使用物体检测、来自处理图像数据的结果、主 数据、堆垛描述和/或附加的描述性数据来推断关于堆垛、其中的物 体和/或任务实施的状态的附加信息。例如,机器人系统100可估计 堆垛内的物体的数目和/或堆垛内的物体的布置。
数量/布置估计
作为数量估计的说明性示例,第一堆垛400可包括一组单一的或 共同的库存单位(SKU)(例如,共同/单一类型的物体的堆垛)。因此, 第一堆垛400内的物体402具有相同的尺寸、相同的表面特征、相同 的重量等。
机器人系统100可基于诸如供应商数据、运送清单、堆垛的形状 或外观等的一个或多个因素来检测第一堆垛400的单个SKU构成。 一旦检测到,机器人系统100就可利用堆垛物体402的共性来推导附 加信息。例如,机器人系统100可基于物体的一个或多个尺寸和/或 堆垛的计算出的体积来估计堆垛400内的物体402的数目。机器人系 统100可使用深度图来确定堆垛400的外围边缘和堆垛400的各个位 置处的高度。机器人系统100可推导堆垛400内的具有相同深度量度 (例如,阈值范围内的高度HO)的区域的横向尺寸(例如,长度LO和宽 度WO)。机器人系统100可使用横向尺寸和对应的高度来计算对应区 域的体积。机器人系统100可组合跨堆垛的区域的计算出的体积以计 算总体积。机器人系统100可基于将总体积除以一个物体的体积(例 如,物体长度(Lo)、物体高度(Ho)和物体宽度(Wo)的组合乘积)来计算 物体的估计数目。例如,在图4A中,物体堆垛400具有对应于堆垛 高度(HS)、堆垛宽度(Ws)和堆垛长度(LS)的尺寸,并且物体堆垛400 的体积(VS)对应于VS=HS x Ws xLS。请注意,物体堆垛的体积是基于 最外边缘和表面来定义的,并且不考虑堆垛内的任何间距或间隙。物 体堆垛400中的单独的物体(例如,物体402-1)的体积具有对应于物 体高度(HO)、物体宽度(WO)和物体长度(LO)的尺寸,并且物体的体积 (VO)对应于VO=HO x WO xLO
机器人系统100还可估计混合SKU堆垛(例如,各种类型的物体 的堆垛)内的物体的数目。混合SKU堆垛内的物体可具有不同的尺寸、 表面特征、重量等。机器人系统100可基于所获得的信息(诸如堆垛 描述、高度相同区域(例如,其横向尺寸、形状和/或高度)、顶层的物 体检测等)来估计堆垛模式。机器人系统100可基于将获得的信息与 一组预定模板进行比较和/或基于根据一组堆垛规则处理获得的信息 来估计堆垛模式。另外或可替代地,机器人系统100可使用预期SKU 的体积来计算具有与堆垛的总体积匹配的总体积的SKU数量的组 合。
作为说明性示例,图5A绘示了示例性第二堆垛500,并且图5B 绘示了根据本技术的一个或多个实施方案的描绘第二堆垛500的示 例性图像数据502。现在一起参看图5A和图5B,第二堆垛500可以 是混合SKU堆垛,其包括‘A’类型、‘B’类型和‘C’类型的物体504。如上文所论述,机器人系统100可使用图像数据、堆垛高度量度、物 体检测结果、堆垛的整体形状等来识别物体或对应区域的分组和/或 堆垛配置。
在一些实施方案中,预定的堆垛配置可规定将一种类型的物体分 组在托盘上的区域/列(在图5B中使用虚线示出)中。例如,类型A的 物体504一起分组在第一列中,类型B的物体504一起分组在第二 列中,并且类型C的物体504一起分组在第三列中。另外或可替代 地,运送清单或堆垛描述可根据一个或多个预定模式指示物体的堆垛 配置。机器人系统100可使用区域的高度和横向尺寸(例如,第一列、 第二列和第三列的高度和横向尺寸)并根据堆垛配置来计算区域的体 积。机器人系统100可将所述区域的体积除以对应物体的体积。可替 代地,机器人系统100可针对区域内的对应物体计算不同的数量组 合,以找到具有与所述区域的组合体积相匹配的组合体积的数量组 合。机器人系统100可将跨不同区域的每个SKU的数量相加,以估 计每种类型的SKU的物体的总数。
状态估计
在一些实施方案中,机器人系统100可使用获得的数据来确定任 务实施状态,诸如用于验证物体拾取和/或放置。对于物体拾取/放置, 机器人系统100可获得在不同时间(例如,在一组拾取/放置之前和/ 或之后)获得的一组或一系列图像数据。
对于上下文,机器人系统100可推导搬运顺序和/或打包配置(例 如,针对要放置在任务位置处的每个物体的一组放置位置)以及针对 目标物体的运动计划。每个运动计划可包括用于操作机器人单元(例 如,图1的搬运单元104、图3的机器人臂系统132等)以将对应的一 组物体从开始位置搬运到任务位置的一组命令和/或设置。因此,运 动计划的开始部分可对应于拾取操作,和/或运动计划的结束部分可 对应于放置操作。机器人系统100可推导运动计划,使得放置操作遵 循打包配置。此外,可根据搬运顺序对运动计划进行排序。
机器人系统100可使用遵循所述搬运顺序的拾取/放置历史来跟 踪运动计划的实施。所述历史可表示在时间上从哪个位置拾取哪个物 体或将哪个物体放置在哪个位置。机器人系统100(例如,使用与实施 搬运的模块/过程分开的模块/过程)可在运动计划的实施期间和/或之 后获得和处理附加的图像数据。机器人系统100可将跟踪的历史与图 像数据进行比较,以验证在图像时间之间发生的对物体的拾取/放置。
对于验证的示例,图6A绘示了开始位置的第一图像602,并且 图6B绘示了根据本技术的一个或多个实施方案的开始位置的第二图 像604。类似地,图7A绘示了任务位置的第一图像702,并且图7B 绘示了根据本技术的一个或多个实施方案的任务位置的第二图像704。第一图像602/702可描绘在拾取或放置一个或多个物体之前的 对应的开始/任务位置,并且第二图像604/704可描绘在拾取或放置一 个或多个物体之后的位置。在一些实施方案中,第一图像和第二图像 可以是连续的并且表示在任务实施过程期间拍摄的两个背靠背的图 像。
例如,第一图像602描绘了与在拾取任何物体之前的开始位置处 的堆垛相对应的堆垛606(例如,指示为堆垛606-1)。如图所示,在图 6A中,堆垛606-1包括物体1、2、3和4。第二图像604描绘了在拾 取一组一个或多个物体之后的堆垛606(例如,指示为堆垛606-2)。如 图所示,图6B绘示了在已经从堆垛606-2中拾取物体1和2(即,物 体1和2未在图6B中绘示)并且物体4已经移位之后的堆垛606-2的 状态。物体4的移位可以是由于拾取物体1和/或2导致的意外/计划 外事件。第一图像702描绘了与在放置了一个或多个物体之后在任务位置处的堆垛相对应的堆垛706(例如,指示为堆垛706-1),并且第二 图像704描绘了在放置一个或多个附加物体之后的堆垛706(例如,指 示为堆垛706-2)。如图所示,在图7A中,堆垛706-1包括物体1和 2(例如,已经放置在堆垛706-1上的物体)。图7B还包括随后被放置在堆垛706-2中的物体3。
机器人系统100可比较在拾取的物体处和/或周围的深度量度(在 图6A到图7B中使用不同的填充来说明)以验证物体拾取。深度量度 的比较可包括在物体的顶表面上的特定位置处的深度量度的比较。例 如,当跨第一图像和第二图像602和604的深度量度的差大于拾取验 证阈值时,机器人系统100可确定目标物体被成功拾取。拾取验证阈 值可对应于物体的预期最小高度。例如,预期拾取位置处的物体具有 特定最小高度。如果跨第一图像和第二图像602和604的深度量度的 差等于或大于特定最小高度,则机器人系统100可确定目标物体被成 功拾取。拾取验证阈值还可对应于相应目标物体的预期最小高度。在 一些实施方案中,机器人系统100可识别一个或多个物体的比较位置 (例如,在图6A到图7B中使用虚线圆圈内的符号{a,b,c,...}绘示的位 置,包括位置608-a和608-b)。不是在整个深度图/图像上比较深度量 度,机器人系统100可在比较位置处比较深度量度以提高处理效率。机器人系统100可将比较位置识别为在距物体边缘或拐角的阈值距 离/取向处或之内的位置(例如,X-Y坐标)。机器人系统100可在拾取 的物体的估计的外围边缘的一侧或两侧上识别比较位置。在一些实施 方案中,机器人系统100可将比较位置识别为包括物体检测和/或MVR的估计的中心部分。另外或可替代地,机器人系统100可将深 度量度的差与拾取的物体的高度进行比较(例如,当物体与主数据中 的注册记录匹配时)以验证拾取的物体与检测到的物体匹配。当深度 量度的差与拾取的物体的高度匹配时,机器人系统100可进一步验证 成功的拾取和/或无损坏的拾取(例如,指示没有物体被压碎)。
机器人系统100可比较特定位置处的高度,诸如关于每个估计的 物体拐角的比较位置,以验证周围物体的拾取和/或变化(例如,物体 移位或压碎的物体)。使用图6A和图6B来说明拾取验证的示例,由 于物体2的比较位置{g,h,j,k}处的深度量度的差和在周围位置{i,l, m,n,o}处的恒定的深度量度,机器人系统100可检测到物体2的有 效拾取。相比之下,诸如针对物体1所绘示,当在比较位置(例如, 位置{a,b,c,d})和/或周围位置(例如,{e,f,p,q})处的深度量度与拾取 不一致时,机器人系统100可检测到拾取异常。响应于异常检测,机 器人系统100可另外检视深度量度和/或视觉图像以确定潜在的失败 模式。
在一些实施方案中,当物体位置(例如,位置{a,b,c,d})的深度量 度跨图像(未示出)保持恒定时,机器人系统100可确定机器人系统100 未能拾取物体(例如,物体1)。当消除失败的拾取模式时,在物体位 置(例如,位置{a,b,c,d})处的深度量度的差与被移除的物体1的预期 高度不匹配时,机器人系统100可确定潜在的错误识别或压碎的物 体。当第二图像604中的被移除的物体的深度量度(例如,表示被移 除的物体下方的新暴露的物体的顶表面)具有非平面模式时,机器人 系统100可确定错误识别。否则,机器人系统100可处理数据以确定 周围物体是否移位或下方物体是否被压碎。在对应于被移除的物体的 位置(例如,位置{c})与周围物体的高度匹配时,机器人系统100可确 定周围物体(例如,图6B中的物体4)移位,深度量度的差指示表面的 不同位置,和/或周围物体的其他位置(例如,位置{f,p,q})对应于意 外的差。在一些实施方案中,机器人系统100可缓存或存储物体移位,并且诸如通过调整拾取/夹持姿势来相应地调整一个或多个对应的运 动计划。
作为异常处理的附加示例(在图6A和图6B中未示出),当在{a,b, c,d}处的深度量度的差表示平面并且不与物体1的预期高度匹配(例 如,根据物体检测)时,机器人系统100可确定对物体1的潜在误检 测。当在{a,b,c,d}或用于拾取的物体的其他点处的深度量度的差不 正常或不对应于平面模式时,机器人系统100可确定在拾取的物体下 方的潜在的压碎的物体。当周围未拾取的物体(例如,位置{i,l,e,f}) 的深度量度跨图像不同时和/或当在第二图像604中周围物体的表面 的高度不对应于平面表面时,机器人系统100可确定拾取的物体周围 的潜在的压碎的物体。当跨拾取操作在开始位置处的深度量度的差不 匹配于(例如,大于)跨对应的放置操作在任务位置处的深度量度的差 时,机器人系统100可进一步将搬运的物体确定为潜在的压碎的物 体。当周围物体(例如,位置{i,l,e,f})的深度量度的差与周围物体的 高度匹配和/或对应的横向形状/尺寸与周围物体的横向形状/尺寸匹 配时,机器人系统100可确定双重拾取。双重拾取对应于在机器人臂 的末端执行器与目标物体一起抓握并搬运一个或多个非计划中的物 体时的实例。例如,机器人臂在无意中将物体2与预期物体1一起抓 握并搬运。
类似于拾取验证过程,机器人系统100可使用任务位置处的深度 量度的差来验证物体放置和/或确定相关联的失败。使用图7A和图 7B用于说明性示例,当目标放置位置(例如,位置{y,z})处的深度量 度的变化与物体2的预期高度匹配时,机器人系统100可确定物体2 的放置验证。当其他比较位置的深度量度跨图像702和图像704保持 恒定时,机器人系统100可进一步验证放置和/或消除其他失败模式。 机器人系统100可使用类似于上文描述的拾取异常的分析来确定潜 在的错误模式,诸如压碎的物体、先前放置的物体的移位、放错位置 的目标物体、错误识别的目标物体等。
机器人系统100可使用确定的失败模式来控制/实施后续操作。 例如,机器人系统100可获得和/或分析附加数据,诸如搬运中的物 体的重量、附加图像、更新后的物体检测等。而且,机器人系统100 可确定和发起新的过程,诸如放弃当前的一组计划(例如,运动计划、 打包配置、搬运顺序等)、通知人类操作员、确定/实施错误恢复(例如, 在开始/任务位置处调整一个或多个物体)等。
操作流程
图8是根据本技术的一个或多个实施方案的用于操作机器人系 统(例如,图1的机器人系统100)的示例性方法800的流程图。方法 800可用于基于在任务执行期间捕获的一个或多个测量结果(例如,深 度量度)来推导估计量(例如,物体数量和/或实施状态)。可基于使用 图2的处理器202中的一者或多者执行存储在图2的存储装置204中 的一者或多者上的指令来实施方法800。在实施运动计划和/或方法 800时,处理器202可将运动计划或相关的一组/一系列命令/设置发 送到机器人单元(例如,图3的搬运单元104和/或图3的末端执行器 140)。因此,搬运单元104和/或末端执行器140可执行运动计划以抓 握和搬运包裹。
在框802处,机器人系统100可获得堆垛描述,诸如运送清单、 订单收据等。在框804处,机器人系统100可获得描绘一个或多个对 应位置(例如,在t=x时以及在执行一个或多个任务之前的开始位置 和/或任务位置)的初始图像数据。机器人系统100可使用成像系统、 传感器和/或相机。所获得的图像数据可包括描绘物体堆垛和/或对应 的平台(例如,箱柜、托盘、传送机等)的2D图像和/或3D图像(例如, 深度图)。堆垛描述可识别堆垛是普通SKU(例如,图4A中的堆垛400) 还是混合SKU(例如,图5A中的堆垛500)。堆垛描述还可包括关于 堆垛中的物体的分组的信息。例如,如图5A和图5B中所示,类型 A的物体504一起分组在第一列中,类型B的物体504一起分组在第 二列中,并且类型C的物体504一起分组在第三列中。
在框806处,机器人系统100可处理获得的图像以检测所描绘的 物体。例如,机器人系统100可检测边缘、识别表面和/或将所述表 面的图像与主数据进行比较以检测物体。检测物体可包括识别类型或 SKU并基于图像处理来估计其真实世界位置。
在框808处,机器人系统100可至少部分地基于初始图像和/或 物体检测结果来估计物体数量。机器人系统100可基于深度量度、检 测到的物体的布置、物体的估计布置、堆垛中的SKU的数目等来估 计物体的数量,如上文关于图4A到图5B所描述。在一些实施方案中,机器人系统100可使用估计的数量来处理后续处理步骤,诸如用 于协调存放位置、存放容器、对应的运输机制等。机器人系统100可 进一步使用估计的数量来验证任务计划(例如,任务序列)和/或任务执 行/进度。
在框810处,机器人系统100可推导堆垛中的物体的计划(例如, 运动计划、搬运顺序、打包计划等)。机器人系统100可诸如通过以 下操作基于预定过程推导所述计划:推导满足一组预定规则的每个物 体的放置位置;推导物体搬运顺序以实现打包计划;和/或通过对从 放置位置/姿势到开始位置的潜在位置进行迭代来推导运动计划。
在框812处,机器人系统100可诸如通过根据计划的顺序实施运 动计划来搬运堆垛中的物体。在框814处,机器人系统100可在物体 搬运(例如,实施运动计划)期间获得后续图像数据。机器人系统100 可在搬运堆垛内的物体的一个或多个子集之前和/或之后获得图像(例 如,2D图像和/或3D深度图)(例如,如关于图6A到图7B所描述)。 机器人系统100可获得开始位置和剩余物体的描述和/或任务位置和 新放置的物体的描述。
在框816处,机器人系统100可将获得的图像数据与之前的图像 进行比较。例如,机器人系统100将在从开始位置拾取一个或多个物 体之后获得的图6B中的第二图像604与图6A中的第一图像602进 行比较。类似地,机器人系统100将在从开始位置放置一个或多个物 体之后获得的图7B中的第二图像704与图7A中的第一图像702进 行比较。例如,机器人系统100可诸如通过如上文描述跨图像计算深 度量度的差来比较深度量度。计算深度量度的差可包括跨所描绘的堆 垛中的物体的表面计算深度量度的差。可替代地,计算深度量度的差 可包括跨所描绘的堆垛中的物体的表面上的特定位置(例如,图6A中 的位置{a,b,c,d,...})计算深度量度的差。
在决策框818处,机器人系统100可分析所述比较以确定对应的 拾取和/或放置是否可被验证。例如,机器人系统100可评估在与拾 取/放置的物体相关联和/或周围的一个或多个位置处的深度量度的变 化,以便如上文描述进行验证。当拾取/放置经过验证时,机器人系 统100可继续最初计划的搬运而不进行任何调整。当确定拾取/放置 无效时,机器人系统100可确定错误模式,如在框820处所绘示。机 器人系统100可分析深度量度、图像、拾取历史或其他数据/结果以 确定适当的错误模式,诸如针对上文描述的压碎的物体、移位的物体、 物体误检测等。
如关于图6A和图6B所描述,机器人系统100可比较周围物体 的特定位置(例如,图6A中的物体拐角处的比较位置)处的高度,以 验证周围物体的拾取和/或变化。例如,参考图6A和图6B,由于物 体2的比较位置{g,h,j,k}处的深度量度的差和周围位置{i,l,m,n,o}处的恒定的深度量度,机器人系统100可检测到对物体2的有效拾取。 当在比较位置(例如,位置{a,b,c,d})和/或周围位置(例如,{e,f,p,q}) 处的测量深度与拾取不一致时,机器人系统100可检测到拾取异常。 例如,当物体位置(例如,物体1的位置{a,b,c,d})的深度量度跨图像 保持恒定时,机器人系统100可确定机器人系统100未能拾取物体(例 如,图6A和图6B中的物体1)。另一个拾取异常可包括对拾取的物 体的错误识别。例如,当在第二图像604中被移除的物体的深度量度 (例如,表示被移除的物体下方的新暴露的物体的顶表面)具有非平面 模式时,机器人系统100确定错误识别。所述非平面模式可以是周围 物体已被移位和/或在被搬运的物体下方的物体已被损坏的指示。又 一个拾取异常可包括对拾取的物体的误检测。例如,当在被搬运的物 体(例如,物体1处的位置{a,b,c,d})处的深度量度的差表示不与被搬 运的物体的预期高度匹配(例如,根据物体检测)的平坦平面时,机器 人系统100可确定对被搬运的物体的误检测。当周围物体(例如,图 6B中的位置{i,l,e,f})的深度量度的差与周围物体的高度匹配和/或对 应的横向形状/尺寸与周围物体的横向形状/尺寸匹配时,机器人系统 100还可确定双重拾取。这指示周围物体在无意中与被搬运的物体一 起移除。
在框822处,机器人系统100可根据确定的错误模式实施错误响 应。机器人系统100可根据预定的一组规则来实施错误响应。所实施 的响应可包括通知人类操作员、放弃搬运计划和/或实施错误恢复过 程。一些示例性错误恢复过程可包括重新检测物体、重新计划搬运、 重新夹持物体、重新堆垛移位的物体、移除障碍物或压碎的物体等。 当恢复过程成功时和/或当检测到的错误模式表示继续实施的条件 时,机器人系统100可继续实施搬运物体。在一些实施方案中,机器 人系统可诸如通过计算移位的物体的距离和/或姿势的变化来缓存所 述差异。机器人系统可根据计算出的变化量度诸如通过更改接近和夹 持位置来调整对应的运动计划。机器人系统可使用调整后的运动计划 继续搬运物体。
实施方案
根据一些实施方案,一种操作机器人系统(例如,图1中的机器 人系统100)的方法包括获得用于将物体从开始位置处的物体堆垛搬 运到任务位置处的物体堆垛的所述开始位置的图像数据(例如,关于 图6A和图6B描述的图像602和604)和所述任务位置的图像数据(例 如,关于图7A和图7B描述的图像702和704)。所述图像数据包括 描绘将一个或多个物体从开始位置搬运到任务位置的一系列图像。所 述一系列图像包括描绘在搬运一个或多个物体之前(例如,图6A和图 7A)的开始位置和任务位置的第一图像集和描绘在搬运一个或多个物 体之后(例如,图6B和图7B)的开始位置和任务位置的第二图像集。 所述图像数据包括从所述一系列图像中的每个图像确定的深度量度。 所述深度量度表示开始位置处的估计的表面高度和任务位置处的估 计的表面高度(例如,使用在图6A到图7B中的不同填充绘示的估计 高度)。所述方法包括确定表示在第一图像集和第二图像集中的开始 位置处的估计的表面高度的深度量度之间的第一深度差(例如,在图 6A和图6B中的位置{g,h,j,k}处在第一图像602与第二图像604之 间的深度差)。所述方法包括根据确定所述第一深度差大于拾取验证 阈值来验证所述一个或多个物体中的目标物体被从开始位置成功拾取(例如,物体2被从开始位置拾取)。所述方法包括确定表示在第一 图像集和第二图像集中的任务位置处的估计的表面高度的深度量度 之间的第二深度差(例如,在图7A和图7B中的位置{y,z}处在第一图 像702与第二图像704之间的深度差)。所述方法包括根据确定所述 第二深度差大于放置验证阈值来验证所述一个或多个物体中的目标 物体被放置在任务位置处(例如,物体2被放置在任务位置处)。例如, 根据运动计划,将一个或多个物体中的目标物体放置在目标物体的任 务位置处。类似于上文描述的拾取验证阈值,放置验证阈值可对应于 物体的预期最小高度。例如,预期被搬运的物体具有特定最小高度。 如果跨第一图像和第二图像702和704的深度量度的不同等于或大于 所述特定最小高度,则机器人系统100可确定目标物体被成功放置在 任务位置处。放置验证阈值还可对应于相应的被搬运的物体的预期最 小高度。
在一些实施方案中,所述方法还包括估计在开始位置处和/或在 任务位置处的物体堆垛内的物体的数量。所述估计包括基于图像数据 (例如,图5B中的图像数据502)来确定物体堆垛(例如,物体堆垛500) 的外围边缘和物体堆垛的高度(例如,高度HS)。所述方法包括基于物 体堆垛的外围边缘和高度来推导物体堆垛的体积。所述方法包括确定 物体堆垛内的不同区域的横向尺寸(例如,对应于包括类型A的物体 504的第一列、包括类型B的物体504的第二列和包括类型C的物体 504的第三列的不同区域)。不同区域的表面高度相同或者在一个或多 个横向方向上的高度变化具有线性模式。所述方法包括基于不同区域 的横向尺寸(例如,在图5B中用虚线绘示的横向水平表面)和外围竖 直表面的对应的估计高度来确定物体堆垛内的相应不同区域的体积。 所述方法包括基于物体堆垛的推导的体积和对应于物体堆垛内的相 应不同区域的体积来推导物体堆垛内的物体数量的估计。
在一些实施方案中,估计物体堆垛内的物体的数量还包括估计物 体堆垛的堆垛模式。所述估计是通过以下操作完成:将物体堆垛的确 定的外围边缘、物体堆垛的体积和物体堆垛内的不同区域的横向尺寸 与一组预定模板和/或一组堆垛规则(例如,机器人系统100的主数据 包括关于所述预定模板和/或所述一组堆垛规则的数据)进行比较。所 述方法包括基于堆垛模式和物体堆垛的体积来推导物体堆垛内的物 体数量的估计。物体堆垛内的物体包括不同尺寸的物体(例如,类型 A、类型B和类型C的物体504具有不同的形状和/或大小)。
在一些实施方案中,所述方法还包括将物体堆垛内的物体数量的 估计与识别已被从开始位置搬运到任务位置的一个或多个物体的跟 踪历史数据(例如,机器人系统100的主数据的跟踪历史)进行比较, 以验证所述跟踪历史数据是否准确。
在一些实施方案中,所述方法还包括根据确定第二深度差小于放 置验证阈值来确定一个或多个物体的目标物体未被成功地放置在任 务位置处。
在一些实施方案中,所述方法包括基于图像数据来推导目标物体 的尺寸,并且将目标物体的推导的尺寸与识别先前被搬运的物体的跟 踪历史数据进行比较。当推导的尺寸与先前被搬运的物体的尺寸不同 时,所述方法包括根据确定目标物体的推导的尺寸不对应于预期被搬 运的所识别的一个或多个物体来确定目标物体已被错误识别。
在一些实施方案中,所述方法包括从图像数据估计被验证在开始 位置处被成功拾取的目标物体的外围边缘(例如,图6A和图6B绘示 了在相应堆垛606-1和606-2之间移除物体2)。所述方法包括在开始 位置处识别邻近于目标物体的外围边缘的比较位置。所述比较位置对 应于将位置设置为邻近于目标物体的物体(例如,在图6B中对应于物 体3的比较位置{m,n})。所述方法包括比较在已经从开始位置拾取目 标物体之前和之后在比较位置处的估计高度,以识别对应于所述比较 位置的物体是否具有异常。
在一些实施方案中,所述方法还包括确定在已经拾取目标物体之 前和之后在比较位置处的估计高度之间的差对应于最初将位置设置 为邻近于目标物体的相邻物体的高度。根据这种确定,所述方法包括 确定邻近物体在无意中与目标物体一起被拾取。
在一些实施方案中,所述方法还包括确定在已经拾取目标物体之 前和之后在比较位置处的估计高度的差。根据确定此差大于最小高度 变化要求和/或在已经拾取目标物体之前和之后在比较位置处的估计 高度不对应于平坦表面,所述方法包括确定邻近于目标物体的物体已 被损坏。最小高度变化要求可对应于用于将跨不同图像(例如,不同 时间点)的高度差分类为具有处理意义的阈值。换句话说,机器人系 统100可使用最小高度变化要求作为过滤器来挡住测量噪声或其他 较不显著的高度变化。因此,最小高度变化要求可对应于刚好高于针 对从两个不同图像确定的物体的估计高度的差的典型测量误差(例如,标准偏差或平均偏差)的值。例如,当第一差在最小高度变化要 求内时,系统可确定所述第一差对应于测量误差。当第一差大于最小 高度变化要求时,系统可确定邻近物体已经从其位置移位。
在一些实施方案中,比较位置包括第一比较位置子集(例如,图 6B中的比较位置{p,q})和第二比较位置子集(例如,比较位置{e,f})。 第一比较位置子集和第二比较位置子集与将位置设置为邻近于目标 物体的邻近物体的表面相关联。所述方法还包括确定在已经拾取目标 物体之前和之后在第一比较位置子集处的估计高度之间的第一差,以 及在已经拾取目标物体之前和之后在第二比较位置子集处的估计高 度之间的第二差。所述方法包括根据确定第一差在最小高度变化要求 内并且第二差大于最小高度变化要求,确定邻近物体已移位(例如, 物体4在移除物体1期间已移位)。
根据一些实施方案,机器人系统(例如,图1中的机器人系统100) 包括至少一个处理器(例如,图2中的处理器202)和包括处理器指令 的至少一个存储器(例如,存储装置204)。所述处理器指令在被执行 时致使至少一个处理器执行本文描述的方法。
根据一些实施方案,一种非暂时性计算机可读介质(例如,存储 装置204)包括在由一个或多个处理器执行时致使所述一个或多个处 理器执行本文描述的方法的处理器指令。
结论
上文对所公开技术的示例的具体实施方式无意是穷尽性的或将 所公开技术限制为上文公开的精确形式。虽然上文的说明性目的描述 了所公开技术的特定示例,但本领域技术人员将认识到,在所公开技 术的范围内的各种等效修改是可能的。例如,尽管以给定顺序呈现了 过程或框,但是替代性实现方式可以不同顺序执行具有步骤的例程, 或者以不同顺序采用具有框的系统,并且一些过程或框可被删除、移 动、添加、细分、组合和/或修改以提供替代方案或子组合。这些过 程或框中的每一者可通过多种不同的方式来实施。而且,尽管有时将 过程或框示出为串行执行,但这些过程或框可替代地并行执行或实 施,或者可在不同时间执行。此外,本文提到的任何具体数字仅仅是 示例;替代性实现方式可采用不同的值或范围。
可鉴于以上具体实施方式对所公开技术作出这些和其他改变。虽 然具体实施方式描述了所公开技术的某些示例以及预期的最佳模式, 但是无论上述描述在文本中显得有多详细,都可通过许多方式来实践 所公开技术。所述系统的细节在其具体实施方式方面可有很大变化, 同时仍被本文所公开的技术所涵盖。如上所述,在描述所公开技术的 某些特征或方面时使用的特定术语不应被认为暗示所述术语在本文 中被重新定义为限于与那个术语相关联的所公开技术的任何具体特 性、特征或方面。因此,除受所附权利要求限制之外,本发明不受限 制。通常,除非以上具体实施方式部分明确定义了在所附权利要求中使用的术语,否则所述术语不应被解释为将所公开技术限于在说明书 中公开的特定示例。
虽然下面以某些权利要求的形式呈现了本发明的某些方面,但是 申请人以任何数目的权利要求形式设想了本发明的各方面。因此,在 本申请中或接续申请中,申请人保留在提交本申请以寻求此类附加权 利要求形式之后寻求附加权利要求的权利。

Claims (20)

1.一种操作机器人系统的方法,所述方法包括:
获得用于将物体从开始位置处的物体堆垛搬运到任务位置处的物体堆垛的所述开始位置和所述任务位置的图像数据,其中:
所述图像数据包括对应于将一个或多个物体从所述开始位置搬运到所述任务位置的一系列图像,所述一系列图像包括描绘在搬运所述一个或多个物体之前的所述开始位置和所述任务位置的第一图像集,以及描绘在搬运所述一个或多个物体之后的所述开始位置和所述任务位置的第二图像集;并且
所述图像数据包括表示在所述开始位置处的表面的估计高度和在所述任务位置处的表面的估计高度的深度量度;
确定在所述第一图像集和所述第二图像集中的表示在所述开始位置处的所述表面的所述估计高度的深度量度之间的第一深度差;
根据确定所述第一深度差大于拾取验证阈值来验证所述一个或多个物体中的目标物体被从所述开始位置搬运;
确定在所述第一图像集和所述第二图像集中的表示在所述任务位置处的所述表面的所述估计高度的深度量度之间的第二深度差;以及
根据确定所述第二深度差大于放置验证阈值来验证所述一个或多个物体中的所述目标物体被放置在所述任务位置处。
2.如权利要求1所述的方法,所述方法还包括通过以下操作来估计在所述开始位置处和/或在所述任务位置处的所述物体堆垛内的物体的数量:
基于所述图像数据来确定所述物体堆垛的外围边缘和所述物体堆垛的高度;
基于所述物体堆垛的所述外围边缘和所述高度来推导所述物体堆垛的体积;
确定所述物体堆垛内的不同区域的横向尺寸,其中所述不同区域的表面高度相同或者在一个或多个横向方向上的高度变化具有线性模式;
基于所述不同区域的所述横向尺寸和外围竖直表面的对应的估计高度来确定所述物体堆垛内的相应不同区域的体积;以及
基于所述物体堆垛的所述推导的体积和对应于所述物体堆垛内的所述相应不同区域的所述体积来推导所述物体堆垛内的物体的所述数量的估计。
3.如权利要求2所述的方法,其中估计所述物体堆垛内的物体的所述数量还包括:
通过将所述物体堆垛的所述确定的外围边缘、所述物体堆垛的所述体积和所述物体堆垛内的所述不同区域的所述横向尺寸与一组预定模板和/或一组堆垛规则进行比较来估计堆垛模式;以及
基于所述堆垛模式和所述物体堆垛的所述体积来推导所述物体堆垛内的物体的所述数量的估计,其中所述物体堆垛内的所述物体包括不同尺寸的物体。
4.如权利要求3所述的方法,所述方法还包括将所述物体堆垛内的物体的所述数量的所述估计与识别已被从所述开始位置搬运到所述任务位置的一个或多个物体的跟踪历史数据进行比较,以验证所述跟踪历史数据是否准确。
5.如权利要求1所述的方法,所述方法还包括:
根据确定所述第二深度差小于所述放置验证阈值来确定所述一个或多个物体中的所述目标物体未被放置在所述任务位置处。
6.如权利要求1所述的方法,所述方法还包括:
基于所述图像数据来推导所述目标物体的尺寸;
将所述目标物体的所述推导的尺寸与识别先前搬运的物体的跟踪历史数据进行比较;以及
当所述推导的尺寸与所述先前搬运的物体的尺寸不同时,确定所述目标物体已被错误识别。
7.如权利要求1所述的方法,所述方法还包括:
从所述图像数据估计被验证为被从所述开始位置搬运的所述目标物体的外围边缘;
在所述开始位置处识别邻近于所述目标物体的所述外围边缘的比较位置,所述比较位置对应于将位置设置为邻近于所述目标物体的物体;以及
比较在所述目标物体已被从所述开始位置搬运之前和之后的所述比较位置处的估计高度,以识别对应于所述比较位置的物体是否具有异常。
8.如权利要求7所述的方法,所述方法还包括:
根据确定在所述目标物体已被搬运之前和之后的所述比较位置处的所述估计高度之间的差对应于最初将位置设置为邻近于所述目标物体的邻近物体的高度,确定所述邻近物体在无意中与所述目标物体一起被搬运。
9.如权利要求8所述的方法,所述方法还包括:
根据确定在所述目标物体已被搬运之前和之后的所述比较位置处的所述估计高度之间的差大于最小高度变化要求和/或在所述目标物体已被搬运之前和之后的所述比较位置处的所述估计高度不对应于平面表面,确定邻近于所述目标物体的物体已被损坏。
10.如权利要求7所述的方法,其中所述比较位置包括第一比较位置子集和第二比较位置子集,所述第一比较位置子集和所述第二比较位置子集与将位置设置为邻近于所述目标物体的邻近物体的表面相关联,并且所述方法还包括:
确定在所述目标物体已被搬运之前和之后的所述第一比较位置子集处的估计高度之间的第一差,以及在所述目标物体已被搬运之前和之后的所述第二比较位置子集处的估计高度之间的第二差;以及
根据确定所述第一差在最小高度变化要求内并且所述第二差大于所述最小高度变化要求,确定所述邻近物体已移位。
11.一种机器人系统,所述机器人系统包括:
至少一个处理器;
至少一个存储器,所述至少一个存储器包括在被执行时致使所述至少一个处理器执行方法的处理器指令,所述方法包括:
获得用于将物体从开始位置处的物体堆垛搬运到任务位置处的物体堆垛的所述开始位置和所述任务位置的图像数据,其中:
所述图像数据包括描绘将一个或多个物体从所述开始位置搬运到所述任务位置的一系列图像,所述一系列图像包括描绘在搬运所述一个或多个物体之前的所述开始位置和所述任务位置的第一图像集,以及描绘在搬运所述一个或多个物体之后的所述开始位置和所述任务位置的第二图像集;并且
所述图像数据包括从所述一系列图像中的每个图像确定的表示在所述开始位置处的表面的估计高度和在所述任务位置处的表面的估计高度的深度量度;
确定在所述第一图像集和所述第二图像集中的表示在所述开始位置处的所述表面的所述估计高度的深度量度之间的第一深度差;
根据确定所述第一深度差大于拾取验证阈值来验证所述一个或多个物体中的目标物体被从所述开始位置搬运;
确定在所述第一图像集和所述第二图像集中的表示在所述任务位置处的所述表面的所述估计高度的深度量度之间的第二深度差;以及
根据确定所述第二深度差大于放置验证阈值来验证所述一个或多个物体中的所述目标物体被放置在所述任务位置处。
12.如权利要求11所述的机器人系统,其中所述方法还包括:
通过以下操作来估计在所述开始位置处和/或在所述任务位置处的所述物体堆垛内的物体的数量:
基于所述图像数据来确定所述物体堆垛的外围边缘和所述物体堆垛的高度;
基于所述物体堆垛的所述外围边缘和所述高度来推导所述物体堆垛的体积;
确定所述物体堆垛内的不同区域的横向尺寸,其中所述不同区域的表面高度相同或者在一个或多个横向方向上的高度变化具有线性模式;
基于所述不同区域的所述横向尺寸和外围竖直表面的对应的估计高度来确定所述物体堆垛内的相应不同区域的体积;以及
基于所述物体堆垛的所述推导的体积和对应于所述物体堆垛内的所述相应不同区域的所述体积来推导所述物体堆垛内的物体的所述数量的估计。
13.如权利要求12所述的机器人系统,其中估计所述物体堆垛内的物体的所述数量还包括:
通过将所述物体堆垛的所述确定的外围边缘、所述物体堆垛的所述体积和所述物体堆垛内的所述不同区域的所述横向尺寸与一组预定模板和/或一组堆垛规则进行比较来估计堆垛模式;以及
基于所述堆垛模式和所述物体堆垛的所述体积来推导所述物体堆垛内的物体的所述数量的估计,其中所述物体堆垛内的所述物体包括不同尺寸的物体。
14.如权利要求13所述的机器人系统,其中所述方法还包括将所述物体堆垛内的物体的所述数量的所述估计与识别已被从所述开始位置搬运到所述任务位置的一个或多个物体的跟踪历史数据进行比较,以验证所述跟踪历史数据是否准确。
15.如权利要求13所述的机器人系统,其中所述方法还包括根据确定所述第二深度差小于所述放置验证阈值来确定所述一个或多个物体中的所述目标物体未被放置在所述任务位置处。
16.一种非暂时性计算机可读介质,所述非暂时性计算机可读介质包括在由一个或多个处理器执行时致使所述一个或多个处理器进行以下操作的处理器指令:
获得用于将物体从开始位置处的物体堆垛搬运到任务位置处的物体堆垛的所述开始位置和所述任务位置的图像数据,其中:
所述图像数据包括描绘将一个或多个物体从所述开始位置搬运到所述任务位置的一系列图像,所述一系列图像包括描绘在搬运所述一个或多个物体之前的所述开始位置和所述任务位置的第一图像集,以及描绘在搬运所述一个或多个物体之后的所述开始位置和所述任务位置的第二图像集;并且
所述图像数据包括从所述一系列图像中的每个图像确定的表示在所述开始位置处的表面的估计高度和在所述任务位置处的表面的估计高度的深度量度;
确定在所述第一图像集和所述第二图像集中的表示在所述开始位置处的所述表面的所述估计高度的深度量度之间的第一深度差;
根据确定所述第一深度差大于拾取验证阈值来验证所述一个或多个物体中的目标物体被从所述开始位置搬运;
确定在所述第一图像集和所述第二图像集中的表示在所述任务位置处的所述表面的所述估计高度的深度量度之间的第二深度差;以及
根据确定所述第二深度差大于放置验证阈值来验证所述一个或多个物体中的所述目标物体被放置在所述任务位置处。
17.如权利要求16所述的非暂时性计算机可读介质,其中所述指令在由一个或多个处理器执行时致使所述一个或多个处理器进行以下操作:
通过以下操作来估计在所述开始位置处和/或在所述任务位置处的所述物体堆垛内的物体的数量:
基于所述图像数据来确定所述物体堆垛的外围边缘和所述物体堆垛的高度;
基于所述物体堆垛的所述外围边缘和所述高度来推导所述物体堆垛的体积;
确定所述物体堆垛内的不同区域的横向尺寸,其中所述不同区域的表面高度相同或者在一个或多个横向方向上的高度变化具有线性模式;
基于所述不同区域的所述横向尺寸和外围竖直表面的对应的估计高度来确定所述物体堆垛内的相应不同区域的体积;以及
基于所述物体堆垛的所述推导的体积和对应于所述物体堆垛内的所述相应不同区域的所述体积来推导所述物体堆垛内的物体的所述数量的估计。
18.如权利要求17所述的非暂时性计算机可读介质,其中估计所述物体堆垛内的物体的所述数量还包括:
通过将所述物体堆垛的所述确定的外围边缘、所述物体堆垛的所述体积和所述物体堆垛内的所述不同区域的所述横向尺寸与一组预定模板和/或一组堆垛规则进行比较来估计堆垛模式;以及
基于所述堆垛模式和所述物体堆垛的所述体积来推导所述物体堆垛内的物体的所述数量的估计,其中所述物体堆垛内的所述物体包括不同尺寸的物体。
19.如权利要求18所述的非暂时性计算机可读介质,其中所述指令在由一个或多个处理器执行时致使所述一个或多个处理器进行以下操作:
将所述物体堆垛内的物体的所述数量的所述估计与识别已被从所述开始位置搬运到所述任务位置的一个或多个物体的跟踪历史数据进行比较,以验证所述跟踪历史数据是否准确。
20.如权利要求18所述的非暂时性计算机可读介质,其中所述指令在由一个或多个处理器执行时致使所述一个或多个处理器进行以下操作:
根据确定所述第二深度差小于所述放置验证阈值来确定所述一个或多个物体中的所述目标物体未被放置在所述任务位置处。
CN202210899251.2A 2021-07-21 2022-07-21 具有基于深度的处理机制的机器人系统及其操作方法 Pending CN115570556A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163224292P 2021-07-21 2021-07-21
US63/224,292 2021-07-21
US17/732,302 2022-04-28
US17/732,302 US20230027984A1 (en) 2021-07-21 2022-04-28 Robotic system with depth-based processing mechanism and methods for operating the same
CN202210874140.6A CN115674151A (zh) 2021-07-21 2022-07-21 具有基于深度的处理机制的机器人系统及其操作方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN202210874140.6A Division CN115674151A (zh) 2021-07-21 2022-07-21 具有基于深度的处理机制的机器人系统及其操作方法

Publications (1)

Publication Number Publication Date
CN115570556A true CN115570556A (zh) 2023-01-06

Family

ID=84602001

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210899251.2A Pending CN115570556A (zh) 2021-07-21 2022-07-21 具有基于深度的处理机制的机器人系统及其操作方法

Country Status (1)

Country Link
CN (1) CN115570556A (zh)

Similar Documents

Publication Publication Date Title
US11654558B2 (en) Robotic system with piece-loss management mechanism
CN111776762B (zh) 具有自动化包裹扫描和登记机构的机器人系统及其操作方法
US11488323B2 (en) Robotic system with dynamic packing mechanism
JP2020111467A (ja) ロボットシステムの制御装置及び制御方法
US11648676B2 (en) Robotic system with a coordinated transfer mechanism
US20230041343A1 (en) Robotic system with image-based sizing mechanism and methods for operating the same
CN115674151A (zh) 具有基于深度的处理机制的机器人系统及其操作方法
CN111618852B (zh) 具有协调转移机构的机器人系统
CN115570556A (zh) 具有基于深度的处理机制的机器人系统及其操作方法
US20230025647A1 (en) Robotic system with object update mechanism and methods for operating the same
CN115609569A (zh) 具有基于图像的尺寸确定机制的机器人系统及其操作方法
US20230071488A1 (en) Robotic system with overlap processing mechanism and methods for operating the same
CN115258510A (zh) 具有物体更新机制的机器人系统和用于操作所述机器人系统的方法
CN115485216A (zh) 机器人多表面夹持器组件及其操作方法

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