CN116050722A - 用于将混合物体卸垛的方法、设备和计算机程序产品 - Google Patents
用于将混合物体卸垛的方法、设备和计算机程序产品 Download PDFInfo
- Publication number
- CN116050722A CN116050722A CN202211271895.3A CN202211271895A CN116050722A CN 116050722 A CN116050722 A CN 116050722A CN 202211271895 A CN202211271895 A CN 202211271895A CN 116050722 A CN116050722 A CN 116050722A
- Authority
- CN
- China
- Prior art keywords
- objects
- height
- image
- processing element
- tray
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06311—Scheduling, planning or task assignment for a person or group
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06315—Needs-based resource requirements planning or analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/083—Shipping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/10—Office automation; Time management
- G06Q10/103—Workflow collaboration or project management
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Game Theory and Decision Science (AREA)
- Educational Administration (AREA)
- Data Mining & Analysis (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本发明提供了方法、设备、系统、计算装置等。示例方法可包括从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;至少部分地基于该第一成像数据计算与多个物体相关联的一个或多个比较尺寸度量;确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及响应于确定该一个或多个比较尺寸度量满足比较尺寸阈值范围,使与该物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
Description
相关申请的交叉引用
本申请要求2021年10月28日提交的美国临时专利申请号63/263,223的优先权和权益,该临时专利申请的内容通过引用并入本申请。
背景技术
码垛是指将物体(诸如,但不限于纸箱、盒子、物品等)装载或传送到托盘或类似装置上的操作。卸垛是指将物体(诸如,但不限于纸箱、盒子、物品等)从托盘或类似装置上卸下或移开的操作。
许多码垛和/或卸垛解决方案都受到技术挑战和困难的困扰。例如,如果托盘上的一个或多个物体具有不同的大小,则许多卸垛解决方案不能正确地将这些物体从托盘上卸下或移开,并且/或者与从托盘上卸下或移开具有相同大小的物体时的这些卸垛解决方案所需的时间相比,可能需要更多的时间来将这些物体从托盘上卸下或移开。
发明内容
一般来讲,本公开的实施方案提供了方法、设备、系统、计算装置、计算实体等。
根据本公开的各种实施方案,提供了一种设备。设备可包括至少一个处理器和包括计算机程序代码的至少一个非暂态存储器。至少一个非暂态存储器和计算机程序代码可以被配置为利用至少一个处理器,使该设备从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;至少部分地基于该第一成像数据计算与多个物体相关联的一个或多个比较尺寸度量;确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及响应于确定该一个或多个比较尺寸度量满足比较尺寸阈值范围,使与该物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
在一些实施方案中,感知子系统包括二维(2-D)图像捕获装置。在一些实施方案中,第一成像数据包括与多个物体相关联并由2-D图像捕获装置捕获的2-D图像数据。
在一些实施方案中,感知子系统包括三维(3-D)图像捕获装置。在一些实施方案中,第一成像数据包括与多个物体相关联并由3-D图像捕获装置捕获的3-D图像数据。
在一些实施方案中,在计算与多个物体相关联的一个或多个比较尺寸度量之前,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:将第一成像数据输入到物体分割机器学习模型,其中该第一成像数据包括与多个物体相关联的2-D图像数据中的至少一个图像数据;以及从物体分割机器学习模型接收与2-D图像数据中的至少一个图像数据相关联的多个物体分割指示。
在一些实施方案中,至少部分地基于多个物体分割指示来计算一个或多个比较尺寸度量。
在一些实施方案中,多个物体包括设置在托盘的同一托盘层上的第一物体和第二物体。
在一些实施方案中,当计算与多个物体相关联的一个或多个比较尺寸度量时,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:至少部分地基于来自感知子系统的2-D图像数据或3-D图像数据来确定与第一物体相关联的第一图像尺寸度量;至少部分地基于来自感知子系统的2-D图像数据或3-D图像数据来确定与第二物体相关联的第二图像尺寸度量;以及至少部分地基于第一图像尺寸度量和第二图像尺寸度量来确定一个或多个比较尺寸度量中的比较尺寸度量。
在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像长度度量。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像长度度量。在一些实施方案中,比较尺寸度量是比较长度度量。在一些实施方案中,比较尺寸阈值范围是比较长度阈值范围。
在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像宽度度量。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像宽度度量。在一些实施方案中,比较尺寸度量是比较宽度度量。在一些实施方案中,比较尺寸阈值范围是比较宽度阈值范围。
在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像高度度量。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像高度度量。在一些实施方案中,比较尺寸度量是比较高度度量。在一些实施方案中,比较尺寸阈值范围是比较高度阈值范围。
在一些实施方案中,执行子系统包括高度感测装置。在一些实施方案中,执行子系统包括卸垛机装置。
在一些实施方案中,卸垛机装置被配置为将多个物体中的每一个物体传送到高度感测装置上方。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:使卸垛机装置将多个物体中的每一个物体传送到高度感测装置上方。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:使卸垛机装置从多个物体中将第一物体传送到高度感测装置上方;从高度感测装置接收与第一物体相关联的第一高度数据;以及至少部分地基于第一高度数据来确定与处于恒定托盘模式的卸垛机装置相关联的提升高度参数。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:当执行子系统处于恒定托盘模式时,使卸垛机装置至少部分地基于提升高度参数将多个物体中除第一物体之外的一个或多个物体提升到同一提升高度。
在一些实施方案中,当执行子系统处于恒定托盘模式时,卸垛机装置被配置为:至少部分地基于提升高度参数将多个物体中除第一物体之外的一个或多个物体提升到同一提升高度。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:在执行子系统处于恒定托盘模式时,使卸垛机装置至少部分地基于提升高度参数将从多个物体中将第二物体提升到提升高度;以及使卸垛机装置将第二物体传送到高度感测装置上方。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:从高度感测装置接收与第二物体相关联的第二高度数据;计算第一物体与第二物体之间的物体高度差度量;以及确定该物体高度差度量是否满足物体高度差度量阈值范围。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:响应于确定物体高度差度量不满足物体高度差度量阈值范围,使与物体卸垛系统相关联的执行子系统退出恒定托盘模式。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:响应于确定卸垛机装置已传送同一托盘层上的多个物体中的每一个物体,使与该卸垛机装置相关联的执行子系统退出恒定托盘模式。
在一些实施方案中,第一成像数据与第一捕获时间点相关联。在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:确定与多个物体相关联的第一平均物体高度度量;以及将该第一平均物体高度度量存储在存储器元件中。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:确定第二平均物体高度度量;基于第一平均物体高度度量和第二平均物体高度测量来计算平均高度差度量;以及确定该平均高度差度量是否满足平均高度差度量阈值范围。
在一些实施方案中,至少一个非暂态存储器和计算机程序代码被配置为利用至少一个处理器,使该设备:响应于确定平均高度差度量满足平均高度差度量阈值范围,将存储器元件中的第一平均物体高度度量替换为第二平均物体高度度量。
根据本公开的各种实施方案,提供了一种计算机实现的方法。计算机实现的方法可以包括从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;至少部分地基于第一成像数据计算与多个物体相关联的一个或多个比较尺寸度量;确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及响应于确定一个或多个比较尺寸度量满足比较尺寸阈值范围,使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
根据本公开的各种实施方案,提供了一种计算机程序产品。计算机程序产品可包括其中存储有计算机可读程序代码部分的至少一个非暂态计算机可读存储介质。计算机可读程序代码部分可包括可执行部分,该可执行部分被配置为从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;至少部分地基于该第一成像数据计算与多个物体相关联的一个或多个比较尺寸度量;确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及响应于确定该一个或多个比较尺寸度量满足比较尺寸阈值范围,使与该物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
提供上述发明内容仅是为了概述一些示例实施方案的目的,以提供对本公开一些方面的基本了解。因此,应当理解,上述实施方案仅仅是示例。应当理解,除了这里总结的那些,本公开的范围还涵盖了很多可能的实施方案,这些实施方案中的一些实施方案将在下面进一步描述。
附图说明
因此,已经概括地描述了本公开,现在将参考附图,这些附图未必按比例绘制,并且其中:
图1A是根据本公开的各种实施方案的可使用的示例卸垛系统的示例透视图;
图1B是示出了根据本公开的各种实施方案的可使用的示例卸垛系统的示例图;
图2是根据本公开的各种实施方案的示例卸垛系统中的示例部件的示例示意图;
图3是根据本公开的各种实施方案的示例控制子系统中的示例部件的示意图;
图4、图5和图6是示出了根据本公开的各种实施方案的示例托盘上的示例托盘层的示例图;
图7A和图7B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行的示例方法的示例流程图;
图8是示出了根据本公开的各种实施方案的生成物体分割指示的示例方法的示例流程图;
图9是示出了根据本公开的各种实施方案的示例物体分割指示的示例图像;
图10是示出了根据本公开的各种实施方案的确定比较尺寸度量的示例方法的示例流程图;
图11A和图11B是示出了根据本公开的各种实施方案的确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围的示例方法的示例流程图;
图12是示出了根据本公开的各种实施方案的使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行的示例方法的示例流程图;
图13是示出了根据本公开的各种实施方案的处于恒定托盘模式的执行子系统的示例运行的示例图像;
图14A和图14B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统退出恒定托盘模式的示例方法的示例流程图;
图15是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统退出恒定托盘模式的示例方法的示例流程图;
图16A和图16B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统继续在恒定托盘模式下运行的示例方法的示例流程图;并且
图17是示出了根据本公开的各种实施方案的与物体卸垛系统相关联的示例方法的示例流程图。
具体实施方式
在下文中现在将参考附图更全面地描述本公开的各种实施方案,在附图中示出了本公开的一些但不是全部的实施方案。实际上,本公开可以许多不同的形式体现,并且不应该被解释为限于本文阐述的实施方案;相反,提供这些实施方案是为了使本公开满足适用的法律要求。除非另外指明,否则术语“或”(也标示为“/”)在另选和结合意义上均用于本文。术语“例示性”和“示例性”是用于没有质量水平指示的示例。在全篇内容中,类似的标号可指代类似的元件。短语“在一个实施方案中”、“根据一个实施方案”等一般意指跟在该短语后的特定特征、结构或特性可以被包括在本公开的至少一个实施方案中,并且可以被包括在本公开的不止一个实施方案中(重要的是,这类短语不一定是指相同的实施方案)。
本公开的实施方案可实现为包括制品的计算机程序产品。此类计算机程序产品可包括一个或多个软件部件,包括例如应用、软件对象、方法、数据结构等。软件部件可以多种编程语言中的任一种进行编码。示例性编程语言可以是低级编程语言,诸如与特定硬件架构和/或操作系统平台/系统相关联的汇编语言。包括汇编语言指令的软件部件可能需要在由硬件架构和/或平台/系统执行之前由汇编者转换成可执行机器代码。另一种示例性编程语言可为能够跨多个架构移植的更高级编程语言。包括更高级编程语言指令的软件部件可能需要在执行之前由解译器或编译器转换成中间表示。
编程语言的其他示例包括但不限于宏语言、shell或命令语言、作业控制语言、脚本语言、数据库查询或搜索语言和/或报告编写语言。在一个或多个示例实施方案中,包括编程语言的前述示例中的一种中的指令的软件部件可由操作系统或其他软件部件直接执行,而不必首先转换成另一种形式。软件部件可存储为文件或其他数据存储构造。类似类型或功能相关的软件部件可一起诸如存储在特定目录、文件夹或库中。软件部件可以是静态的(例如,预先建立的或固定的)或动态的(例如,在执行时创建或修改的)。
另外或另选地,本公开的实施方案可实现为非暂态计算机可读存储介质,该非暂态计算机可读存储介质存储应用、程序、程序模块、脚本、源代码、程序代码、目标代码、字节代码、编译代码、解译代码、机器代码、可执行指令等(在本文中也称为可执行指令、用于执行的指令、计算机程序产品、程序代码和/或在本文中可互换使用的类似术语)。此类非暂态计算机可读存储介质包括所有计算机可读介质(包括易失性介质和非易失性介质)。
在一个实施方案中,非易失性计算机可读存储介质可包括软盘、软磁盘、硬盘、固态存储器(SSS)(例如固态驱动器(SSD)、固态卡(SSC)、固态模块(SSM)、企业闪存驱动器、磁带或任何其他非暂态磁性介质等)。非易失性计算机可读存储介质还可包括穿孔卡、纸带、光学标记片(或具有孔图案或其他光学可识别标记的任何其他物理介质)、光盘只读存储器(CD-ROM)、光盘可重写(CD-RW)、数字通用盘(DVD)、蓝光光盘(BD)、任何其他非暂态光学介质等。此类非易失性计算机可读存储介质还可包括只读存储器(ROM)、可编程只读存储器(PROM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、闪存存储器(例如,串行、NAND、NOR等)、多媒体存储卡(MMC)、安全数字(SD)存储卡、智能媒体卡、紧凑闪存(CF)卡、记忆棒等。此外,非易失性计算机可读存储介质还可包括导电桥接随机访问存储器(CBRAM)、相变随机访问存储器(PRAM)、铁电随机访问存储器(FeRAM)、非易失性随机访问存储器(NVRAM)、磁阻随机访问存储器(MRAM)、电阻式随机访问存储器(RRAM)、硅-氧化物-氮化物-氧化物-硅存储器(SONOS)、浮动结栅极随机访问存储器(FJG RAM)、千足虫存储器、跑道存储器等。
在一个实施方案中,易失性计算机可读存储介质可包括随机访问存储器(RAM)、动态随机访问存储器(DRAM)、静态随机访问存储器(SRAM)、快速页面模式动态随机访问存储器(FPM DRAM)、扩展数据输出动态随机访问存储器(EDO DRAM)、同步动态随机访问存储器(SDRAM)、双倍数据速率同步动态随机访问存储器(DDR SDRAM)、双倍数据速率类型二同步动态随机访问存储器(DDR2 SDRAM)、双倍数据速率类型三同步动态随机访问存储器(DDR3SDRAM)、Rambus动态随机访问存储器(RDRAM)、双晶体管RAM(TTRAM)、双电阻器RAM(T-RAM)、零电容器(Z-RAM)、Rambus内嵌式存储器模块(RIMM)、双列直插式存储器模块(DIMM)、单列直插式存储器模块(SIMM)、视频随机访问存储器(VRAM)、高速缓存存储器(包括各种级别)、闪存存储器、寄存器存储器等。将了解,在实施方案被描述成使用计算机可读存储介质的情况下,其他类型的计算机可读存储介质可替代上述计算机可读存储介质,或除上述计算机可读存储介质以外予以使用。
应了解,本公开的各种实施方案还可实现为方法、设备、系统、计算装置、计算实体等。由此,本公开的实施方案可采取执行存储在计算机可读存储介质上的类似执行指令以执行某些步骤或操作的数据结构、设备、系统、计算装置、计算实体等的形式。因此,本公开的实施方案也可采取完全硬件实施方案、完全计算机程序产品实施方案和/或包括执行某些步骤或操作的计算机程序产品和硬件的组合的实施方案的形式。
下文参考框图和流程图图示来描述本公开的实施方案。因此,应当理解,框图和流程图图示中的每个框可以实现为以下形式:计算机程序产品、完全硬件实施方案、硬件和计算机程序产品的组合和/或执行计算机可读存储介质上用于执行的指令、操作、步骤和可互换使用的类似字词(例如,可执行指令、用于执行的指令、程序代码等)的装置、系统、计算装置、计算实体等。例如,可依序执行代码的检索、加载和执行,以使得一次检索、加载和执行一个指令。在一些示例性实施方案中,可并行地执行检索、加载和/或执行,以使得一起检索、加载和/或执行多个指令。因此,此类实施方案可产生执行框图和流程图例示中指定的步骤或操作的特定配置的机器。因此,框图和流程图例示支持用于执行指定指令、操作或步骤的实施方案的各种组合。
在诸如配送中心、仓库等环境中,物体可以在托盘上传送,并且可以利用一个或多个机器人卸垛机装置(例如,盒子、物品、产品)从托盘上的垛中卸垛物体。
在一些实施方案中,垛中的物体具有单一的、相同的库存单元(SKU),其指示垛中的所有物体具有相同类型(例如,具有相同的大小和形状)。在此类示例中,因为基于相同的SKU,示例卸垛系统可以确定/得知大小和形状,示例卸垛系统可能仅需要检测物体的位置以卸垛物体。
在一些实施方案中,垛中的至少一些物体具有混合的、不同的SKU,其指示垛中的物体具有不同类型(例如,具有不同的大小和/或形状)。在此类示例中,示例卸垛系统可依赖于视觉系统(诸如感知子系统)来确定物体的大小和/或形状,使得卸垛机装置可将物体从托盘卸垛(例如,至少部分地基于物体的大小和/或形状计算卸垛机装置的位姿)。
虽然大多数此类感知系统依赖于机器学习模型来进行这种耗时的操作,但卸垛系统的主要瓶颈之一是感知操作。举例来说,在混合SKU场景中,许多卸垛系统需要利用视觉系统(和机器学习模型)来确定每个物体的大小和形状,以便确定卸垛机装置在卸垛物体时的位姿,从而造成了显著的时间限制并降低了操作效率。
举例来说,卸垛机器人的许多感知系统依赖于机器学习模型,以利用机器人的位姿来确定产品的大小和形状,这是一个昂贵且耗时的过程,因为感知系统在卸垛操作中检测产品的位置、每个产品的大小和形状。相比之下,本公开的各种实施方案克服了这些技术挑战和困难。例如,本公开的各种实施方案提供了在恒定托盘模式下运行的卸垛机器人。基于从视觉系统接收到的图像,当控制子系统确定托盘顶层上的物品具有相似尺寸时,卸垛机装置被切换到恒定托盘模式。在这种模式下,只要卸垛机装置处于恒定托盘模式,控制子系统对卸垛机装置使用相同的设置、速度曲线等。此外,在恒定托盘模式下不提供新的图像。当视觉系统发送指示下一个待拾取的物品不具有相似尺寸的新图像时,控制子系统使卸垛机装置切换出恒定托盘模式并开始在默认模式下运行。
本公开的各种实施方案克服了上述技术挑战和困难,并且提供了各种技术益处和优点。
例如,继续该混合SKU场景,尽管具有不同的SKU,一些产品可具有相同或相似的形状和大小。
例如,在示例混合SKU场景中,第一物体、第二物体和第三物体设置在托盘上。虽然第一物体、第二物体和第三物体可具有不同的SKU和不同的大小和/或形状,但大小和/或形状的差异可在容许范围内。在这样的示例中,卸垛系统可以通过减少触发感知系统捕获相似产品的图像数据的时间来减少操作时间。例如,卸垛系统可以触发一次感知系统,针对具有相似大小的所有产品决定卸垛机装置的拾取位姿(例如,卸垛机装置的提升高度),并可逐步拾取它们。
因此,本公开的各种实施方案提供了明确的、经过验证的解决方案,用于提高卸垛系统的生产力和生产率。例如,根据本公开的实施方案的解决方案可以在系统尝试卸载混合SKU产品的多个分组拾取系统中实现。因此,根据本公开的实施方案的示例卸垛系统可以对多个问题提供统一解决方案,并可以大幅减少操作周期。
在本公开的各种实施方案中,因为感知系统检测物体/包装/产品的大小和位姿,卸垛系统高度依赖于感知系统。
在一些实施方案中,感知系统首先使用机器学习分割模型检测托盘顶层上的所有完全可见的物体/包装/产品段。然后,控制子系统从托盘底座计算每个物体/包装/产品的长度、宽度和高度。随后,控制子系统比较该层上所有可见物体/包装/产品的所提及的属性,如果所有这些都在某个阈值范围内,则触发恒定托盘模式,该模式识别出可见层上的所有产品具有相同的属性。
在一些实施方案中,对当前检测到的恒定托盘的距托盘底座的平均包装高度进行了存储。对于任何后续恒定托盘检测,将其平均包装高度与存储值进行比较。如果相差足够大,达到一定的公差范围,则将该托盘场景再次确定为恒定托盘模式,并将存储值更新为当前场景的平均包装高度。
在一些实施方案中,在感知系统发送位于一个托盘层上的卸垛机装置的所有抓握点的恒定托盘模式的检测信号后,系统存储卸码机装置的所有抓握位姿并尝试逐步执行抓握。在一些实施方案中,当拾取第一物体时,卸垛系统利用基于激光的硬件测量产品的高度,并将存储的抓握位姿中的其余物体/包装/产品提升到这个确定的高度。在一些实施方案中,当恒定托盘模式结束时,感知子系统再次触发感知以获得新的感知输出。
在一些实施方案中,卸垛机装置退出恒定托盘模式的两个主要条件是(1)如果卸垛机装置执行了所有抓握,和/或(2)如果当前检测到的盒子高度不在第一盒子高度的限定阈值内(大于或小于限定阈值)。
图1A是根据本公开的各种实施方案的可使用的示例卸垛系统100A的示例透视图。
在图1A所示的示例中,示例卸垛系统100A包括卸垛机装置103。在一些实施方案中,卸垛机装置103是卸垛系统100A的执行子系统的一部分。
在图1A所示的示例中,卸垛机装置103可采用机器人卸垛机的形式。例如,卸垛机装置103可包括末端执行器113和连接到末端执行器113的机械臂115。在一些实施方案中,卸垛机装置103可包括一个或多个控制器、传感器和/或驱动器,以引起和控制末端执行器113和/或机械臂115的操作。
在一些实施方案中,卸垛机装置103位于托盘101附近。在一些实施方案中,为了从托盘101卸垛物体,为卸垛机装置103计算一个或多个抓握位姿和抓握点。例如,机械臂115可以移动和/或旋转,使得末端执行器113可位于托盘101的物体上。在一些实施方案中,末端执行器113可以取回和/或抓握物体(例如,通过抽吸机构等),并且机械臂115可以移动,以便将物体提升到提升高度(并且末端执行器113的高度被称为抓握位姿高度)。在提升物体之后,机械臂115可以移动和/或旋转,使得由末端执行器113抓握的物体位于传送机111上方。随后,末端执行器113将物体释放到传送机111上,从而完成将物体从托盘101卸垛到传送机111上的操作。
如上文所描述,卸垛系统可以依赖于感知子系统以捕获与物体相关联的数据,使得可以确定卸垛机装置的抓握位姿和抓握点。现在参考图1A中所示的示例,示例卸垛系统100A包括视觉结构105。在一些实施方案中,视觉结构105是卸垛系统100A的感知子系统的一部分。
在一些实施方案中,视觉结构105位于托盘101附近。例如,视觉结构105包括连接到水平梁107的垂直梁109。在一些实施方案中,一个或多个图像捕获装置可设置在水平梁107和/或垂直梁109上。
例如,2-D图像捕获装置可以设置在水平梁107的端部附近并面向托盘101,以便捕获2-D图像,该图像是托盘101的俯视图(例如,示出顶部托盘层上的物体)。2-D图像捕获装置的示例可包括但不限于相机、2-D图像传感器等。在一些实施方案中,2-D图像可用于确定物体的宽度和/或长度。
另外或另选地,3-D图像捕获装置可设置在水平梁107上并面向托盘101,以便捕获托盘101的3-D图像。在一些实施方案中,3-D图像捕获装置可沿着竖直梁109和/或水平梁107可移动地设置。3-D图像捕获装置的示例可包括但不限于飞行时间图像传感器、立体成像传感器等。在一些实施方案中,3-D图像可用于确定物体的宽度和/或高度。
在一些实施方案中,高度感测装置可设置在托盘101附近的传送机111的端部处。在一些实施方案中,高度感测装置可以是卸垛系统100A的一部分,并且被配置为感测高度数据,本文进行了详细描述。高度感测装置的示例包括但不限于LiDAR传感器等。
图1B是示出了根据本公开的各种实施方案的可使用的示例卸垛系统100B的示例图。
在图1B所示的示例中,示例卸垛系统100B包括卸垛机装置131,该卸垛机装置包括连接到机械臂135的末端执行器133。在一些实施方案中,末端执行器133可将物体从托盘137卸垛到传送机139上,类似于上文结合图1A所描述的那些。
图2是根据本公开的各种实施方案的示例卸垛系统200中的示例部件的示例示意图。具体地,图2示出了示例卸垛系统200的各种部件之间的示例数据通信。
在图2所示的示例中,示例卸垛系统200包括可经由系统总线216交换数据和/或信息的感知子系统202、执行子系统210和控制子系统218。
在一些实施方案中,感知子系统可生成成像数据并且经由系统总线216将成像数据发送到控制子系统218。具体地,感知子系统202可包括2-D图像捕获装置204(类似于上文至少结合图1A所描述的2-D图像捕获装置)。在一些实施方案中,2-D图像捕获装置204可生成2-D图像数据并经由系统总线216将2-D图像数据发送到控制子系统218。另外或另选地,感知子系统202可包括3-D图像捕获装置206(类似于上文至少结合图1A所描述的3-D图像捕获装置)。在一些实施方案中,3-D图像捕获装置206可生成3-D图像数据并经由系统总线216将3-D图像数据发送到控制子系统218。
在一些实施方案中,控制子系统218可经由系统总线216向执行子系统210发送控制指令,以便控制与执行子系统210的装置相关联的操作。
在一些实施方案中,执行子系统210可包括高度感测装置208。在一些实施方案中,高度感测装置208可生成高度数据并将高度数据发送到控制子系统218。
例如,执行子系统210可包括卸垛机装置212。在这样的示例中,控制子系统218可将控制指令发送到卸垛机装置212,以便控制卸垛机装置212的运行和/或使卸垛机装置212以某种方式运行,本文进行了详细描述。
另外或另选地,执行子系统210可包括传送机214。在这样的示例中,控制子系统218可向传送机214发送控制指令,以便控制传送机214的运行和/或使传送机214以某种方式运行。
在一些实施方案中,系统总线216可能有多种形式。例如,系统总线216可使用有线数据传输协议来执行,诸如光纤分布式数据接口(FDDI)、数字用户线路(DSL)、以太网、异步传输模式(ATM)、帧中继器、有线服务接口数据规范(DOCSIS)或任何其他有线传输协议。类似地,系统总线216可被配置为使用多种协议中的任一种经由无线外部通信网络进行通信,该多种协议诸如通用分组无线电服务(GPRS)、通用移动电信系统(UMTS)、码分多址1900(CDMA1900)、CDMA1900 1X(1xRTT)、宽带码分多址(WCDMA)、全球移动通信系统(GSM)、增强型数据速率GSM演进技术(EDGE)、时分同步码分多址(TD-SCDMA)、网络制式(LTE)、演进型通用陆地无线接入网络(E-UTRAN)、演进型数据最优化(EVDO)、高速分组接入(HSPA)、高速下行分组接入(HSDPA)、电气与电子工程师协会(IEEE)802.11(Wi-Fi)、Wi-Fi Direct、802.16(WiMAX)、超宽带(UWB)、红外(IR)协议、近场通信(NFC)协议、Wibree、蓝牙协议、通用串行总线(USB)协议和/或任何其他无线协议。控制子系统218可使用此类协议和标准以使用以下项进行通信:边界网关协议(BGP)、动态主机配置协议(DHCP)、域名系统(DNS)、文件传输协议(FTP)、超文本传输协议(HTTP)、TLS/SSL/安全的HTTP、交互邮件访问协议(IMAP)、网络时间协议(NTP)、简单邮件传输协议(SMTP)、远程登录、传输层安全(TLS)、安全套接层(SSL)、网际互联协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、数据报拥塞控制协议(DCCP)、流控制传输协议(SCTP)、超文本标记语言(HTML)等。
图3提供了根据本公开的一个实施方案的控制子系统218的示意图。通常,术语计算实体、实体、装置、系统和/或本文中可互换地使用的类似词语可指例如一个或多个计算机、计算实体、台式计算机、移动电话、平板电脑、平板手机、笔记本电脑、膝上型计算机、分布式系统、物品/装置、终端、服务器或服务器网络、刀片服务器、网关、交换机、处理装置、处理实体、机顶盒、继电器、路由器、网络接入点、基站等,和/或适于执行本文所述的功能、操作和/或过程的装置或实体的任何组合。此类功能、操作和/或过程可包括例如传输、接收、操作、处理、显示、存储、确定、创建/生成、监测、评估、比较和/或可在本文中使用的类似术语。在一个实施方案中,这些功能、操作和/或过程可对数据、内容、信息和/或可在本文中使用的类似术语执行。
如所指出的那样,在一个实施方案中,控制子系统218还可包括用于诸如通过输送可被传输、接收、操作、处理、显示、存储等的数据、内容、信息和/或在本文中可使用的类似术语与各种计算实体通信的一个或多个网络和/或通信接口308。例如,控制子系统218可与卸垛系统的其他部件通信。
如图3所示,在一个实施方案中,控制子系统218可包括一个或多个处理元件(例如,处理元件305)(在本文中也称为处理器、处理电路和/或可互换使用的类似术语)或与之通信,该一个或多个处理元件经由例如总线或网络连接与控制子系统218内的其他元件通信。应当理解,处理元件305可以多种不同的方式体现。例如,处理元件305可体现为一个或多个复杂可编程逻辑装置(CPLD)、微处理器、多核处理器、协同处理实体、专用指令集处理器(ASIP)和/或控制器。此外,处理元件305可体现为一个或多个其他处理装置或电路。术语电路可指完全硬件实施方案或硬件和计算机程序产品的组合。因此,处理元件305可体现为集成电路、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、硬件加速器、其他电路等。因此应当理解,处理元件305可被配置用于特定用途或被配置为执行存储在易失性或非易失性介质中或可由处理元件305以其他方式访问的指令。因此,无论是由硬件还是由计算机程序产品配置,还是由它们的组合配置,当相应地配置时,处理元件305可以能够执行根据本公开的实施方案的步骤或操作。
在一个实施方案中,控制子系统218还可包括易失性介质(也称为非易失性存储装置、存储器、存储器存储装置、存储器电路和/或在本文中可互换使用的类似术语)或者与易失性介质通信。在一个实施方案中,易失性存储装置或存储器还可包括如上所述的一个或多个存储器元件306,诸如RAM、DRAM、SRAM、FPM DRAM、EDO DRAM、SDRAM、DDR SDRAM、DDR2SDRAM、DDR3 SDRAM、RDRAM、RIMM、DIMM、SIMM、VRAM、高速缓存存储器、寄存器存储器等。如将认识到的,易失性存储装置或存储器元件306可用于存储由例如如图3所示的处理元件305执行的数据库、数据库示例、数据库管理系统实体、数据、应用、程序、程序模块、脚本、源代码、目标代码、字节代码、编译代码、解译代码、机器代码、可执行指令等的至少部分。因此,数据库、数据库示例、数据库管理系统实体、数据、应用、程序、程序模块、脚本、源代码、目标代码、字节代码、编译代码、解译代码、机器代码、可执行指令等可用于在处理元件305和操作系统的帮助下控制该控制子系统218的操作的某些方面。
在一个实施方案中,控制子系统218还可包括非易失性介质(也称为非易失性存储装置、存储器、存储器存储装置、存储器电路和/或在本文中可互换使用的类似术语)或者与非易失性介质通信。在一个实施方案中,非易失性存储装置或存储器可包括如上所述的一个或多个非易失性存储装置或存储介质307,诸如硬盘、ROM、PROM、EPROM、EEPROM、闪存存储器、MMC、SD存储卡、记忆棒、CBRAM、PRAM、FeRAM、RRAM、SONOS、跑道存储器等。如将认识到的,非易失性存储装置或存储介质307可存储数据库、数据库示例、数据库管理系统实体、数据、应用、程序、程序模块、脚本、源代码、目标代码、字节代码、编译代码、解译代码、机器代码、可执行指令等。术语数据库、数据库示例、数据库管理系统实体和/或类似术语在本文中可互换使用并且在一般意义上可以是指存储在计算机可读存储介质中的信息/数据的结构化或非结构化集合。
存储介质307还可体现为一个或多个数据存储装置、一个或多个单独的数据库服务器或数据存储装置和单独的数据库服务器的组合。此外,在一些实施方案中,存储介质307可体现为分布式储存库,使得所存储的信息/数据中的一些集中存储在系统内的位置中,并且其他信息/数据存储在一个或多个远程位置中。另选地,在一些实施方案中,分布式储存库可仅分布在多个远程存储位置上。本文设想的实施方案的示例将包括由第三方提供方维护的云数据存储系统,并且恢复系统运行所需的部分或全部信息/数据可存储在该系统中。此外,恢复系统运行所需的信息/数据也可能部分存储在云数据存储系统中,部分存储在本地维护的数据存储系统中。更具体地,存储介质307可以包含一个或多个数据存储区,该一个或多个数据存储区被配置为存储在某些实施方案中可用的信息/数据。
如所指出的那样,在一个实施方案中,控制子系统218还可包括用于诸如通过输送可被传输、接收、操作、处理、显示、存储等的数据、内容、信息和/或在本文中可互换使用的类似术语与各种计算实体通信的一个或多个网络和/或通信接口308。此类通信可使用有线数据传输协议来执行,诸如光纤分布式数据接口(FDDI)、数字用户线路(DSL)、以太网、异步传输模式(ATM)、帧中继器、有线服务接口数据规范(DOCSIS)或任何其他有线传输协议。类似地,控制子系统218可被配置为使用多种协议中的任一种经由无线外部通信网络进行通信,该多种协议诸如通用分组无线电服务(GPRS)、通用移动电信系统(UMTS)、码分多址1900(CDMA1900)、CDMA1900 1X(1xRTT)、宽带码分多址(WCDMA)、全球移动通信系统(GSM)、增强型数据速率GSM演进技术(EDGE)、时分同步码分多址(TD-SCDMA)、网络制式(LTE)、演进型通用陆地无线接入网络(E-UTRAN)、演进型数据最优化(EVDO)、高速分组接入(HSPA)、高速下行分组接入(HSDPA)、电气与电子工程师协会(IEEE)802.11(Wi-Fi)、Wi-Fi Direct、802.16(WiMAX)、超宽带(UWB)、红外(IR)协议、近场通信(NFC)协议、Wibree、蓝牙协议、通用串行总线(USB)协议和/或任何其他无线协议。控制子系统218可使用此类协议和标准以使用以下项进行通信:边界网关协议(BGP)、动态主机配置协议(DHCP)、域名系统(DNS)、文件传输协议(FTP)、超文本传输协议(HTTP)、TLS/SSL/安全的HTTP、交互邮件访问协议(IMAP)、网络时间协议(NTP)、简单邮件传输协议(SMTP)、远程登录、传输层安全(TLS)、安全套接层(SSL)、网际互联协议(IP)、传输控制协议(TCP)、用户数据报协议(UDP)、数据报拥塞控制协议(DCCP)、流控制传输协议(SCTP)、超文本标记语言(HTML)等。
图4、图5和图6是示出了根据本公开的各种实施方案的示例托盘上的示例物体的示例图。具体地,图4示出了物体具有相同SKU的示例托盘。图5和图6示出了物体具有不同SKU的示例托盘。
在图4所示的示例图400中,物体堆放在示例托盘402上进入托盘层,诸如托盘层404A、托盘层404B、托盘层404C和托盘层404D。每一个托盘层可包括一个或多个物体。在图4所示的示例中,每一个托盘层中的物体可具有相同的SKU(例如具有相同的大小和相同的形状),或者可具有相似的大小和形状,并且不同托盘层中的物体具有相同的SKU(例如具有相同的大小和相同的形状)或可具有相似的大小和形状。因此,图4中所示的示例图400示出了示例相同SKU场景。在一些实施方案中,当从托盘层404A、托盘层404B、托盘层404C和托盘层404D中的每一个托盘层卸垛物体时,控制子系统可以使执行子系统在恒定托盘模式下运行,本文进行了详细描述。
在图5所示的示例图500中,物体堆放在示例托盘501上进入托盘层,诸如托盘层503A、托盘层503B、托盘层503C和托盘层503D。每一个托盘层可包括一个或多个物体。在图5所示的示例中,每一个托盘层中的物体可具有相同的SKU(例如具有相同的大小和相同的形状),或者可具有相似的大小和形状,但是不同托盘层中的物体可具有不同的SKU(例如具有不同的大小和不同的形状)。因此,图5中所示的示例图500示出了示例混合SKU场景。在一些实施方案中,当从托盘层503A、托盘层503B、托盘层503C和托盘层503D中的每一个托盘层卸垛物体时,控制子系统可以使执行子系统在恒定托盘模式下运行,本文进行了详细描述。
在图6所示的示例图600中,物体堆放在示例托盘602上进入托盘层,诸如托盘层604A、托盘层604B和托盘层604C。每一个托盘层可包括一个或多个物体。在图6所示的示例中,每一个托盘层中的物体可具有不同的SKU(例如具有不同的大小和/或不同的形状),并且不同托盘层中的物体可具有不同的SKU(例如具有不同的大小和/或不同的形状)。因此,图6中所示的示例图600示出了示例混合SKU场景。在一些实施方案中,控制子系统可以使执行子系统以除恒定托盘模式之外的模式运行。
图7A和图7B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行的示例方法700的示例流程图。
如图7A所示,示例方法700开始于步骤/操作701。在步骤/操作701之后和/或响应于该步骤/操作,示例方法700进行到步骤/操作703。在步骤/操作703处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据。
例如,第一成像数据可以是由感知子系统的2-D图像捕获装置捕获的2-D图像数据(类似于上文至少结合图1A所描述的那些)。另外或另选地,第一成像数据可以是由感知子系统的3-D图像捕获装置捕获的3-D图像数据(类似于上文至少结合图1A所描述的那些)。
在一些实施方案中,2-D图像捕获装置和/或3-D图像捕获装置可位于托盘的顶部上,并且第一成像数据可以提供包括待卸垛的物体的托盘的顶部可见托盘层的视图。结合图9示出和描述了基于第一图像数据的示例图像。
在步骤/操作703之后和/或响应于该步骤/操作,示例方法700进行到步骤/操作705。在步骤/操作705处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可至少部分地基于第一成像数据来计算与多个物体相关联的一个或多个比较尺寸度量。
在一些实施方案中,基于第一成像数据,处理元件可计算每一个物体的长度、宽度和/或高度的像素数目(例如,在2-D图像中和/或3-D图像中)。为了计算两个物体之间的比较尺寸度量,处理元件可以计算一个物体的长度的像素数目与另一物体的长度的像素数目之间的差,计算一个物体的宽度的像素数目与另一物体的宽度的像素数目之间的差,和/或计算一个物体的高度的像素数目与另一物体的高度的像素数目之间的差。
在一些实施方案中,处理元件可以计算顶部托盘层上的每两个物体之间的比较尺寸度量,以便在步骤/操作705处计算与多个物体相关联的一个或多个比较尺寸度量。
在步骤/操作705之后和/或响应于该步骤/操作,示例方法700进行到框A,该框连接图7A到图7B。现在参考图7B,在步骤/操作705之后和/或响应于该步骤/操作,示例方法700进行到步骤/操作707。在步骤/操作707处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围。例如,处理元件可确定一个或多个比较尺寸度量中的每一个比较尺寸度量是否在比较尺寸阈值范围内。
作为一个示例,如果两个物体之间的比较尺寸度量是2,并且比较尺寸阈值范围为4,则比较尺寸度量满足比较尺寸阈值。作为另一个示例,如果两个物体之间的比较尺寸度量为4,并且比较尺寸阈值范围为2,则比较尺寸度量不满足比较尺寸阈值。
在一些实施方案中,比较尺寸阈值范围对应于系统在确定两个物体是否被认为在大小和/或形状上足够相似时的公差。
如果在步骤/操作707处,处理元件确定一个或多个比较尺寸度量满足比较尺寸阈值范围,则示例方法700进行到步骤/操作709。在步骤/操作709处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定一个或多个比较尺寸度量满足比较尺寸阈值范围,使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
例如,如上所述,处理元件自托盘底座计算每个物体/包装/产品的长度、宽度和高度,并比较该层上所有可见物体/包装/产品的所提及的属性。如果它们都位于某个阈值范围内,则处理元素将识别可见层上的所有物体具有相同的属性,并为执行子系统触发恒定托盘模式。
因此,一旦确定托盘层上物体的大小和形状足够相似,处理元件就会触发恒定托盘模式。
返回参考图7B,如果在步骤/操作707处,处理元件确定一个或多个比较尺寸度量不满足比较尺寸阈值范围,则示例方法700进行到步骤/操作711。在步骤/操作711处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定一个或多个比较尺寸度量不满足比较尺寸阈值范围,使与物体卸垛系统相关联的执行子系统在除恒定托盘模式之外的模式下运行。
例如,如果比较尺寸度量指示顶部可视层上的一个物体和顶部可视层上的另一物体之间大小差(例如,长度、宽度和/或高度)不满足比较尺寸阈值范围,则处理元件确定物体在大小和形状上不够相似,并且可使与物体卸垛系统相关联的执行子系统在除恒定托盘模式之外的模式下(例如,以默认模式)运行。
返回参考图7B,在步骤/操作709和/或步骤/操作711之后和/或响应于该步骤/操作,示例方法700进行到步骤/操作713并结束。
图8是示出了根据本公开的各种实施方案的生成物体分割指示的示例方法800的示例流程图。
如图8所示,示例方法800开始于步骤/操作802。在步骤/操作802之后和/或响应于该步骤/操作,示例方法800进行到步骤/操作804。在步骤/操作804处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以接收与多个物体相关联并由2-D图像捕获装置捕获的2-D图像数据。
在一些实施方案中,感知子系统包括2-D图像捕获装置。在一些实施方案中,第一成像数据(例如,上文结合图7A和图7B所描述的那些)包括与顶部托盘层上的多个物体相关联并由2-D图像捕获装置捕获的2-D图像数据。
在步骤/操作804之后和/或响应于该步骤/操作,示例方法800进行到步骤/操作808。在步骤/操作808处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可至少将2-D图像数据输入到物体分割机器学习模型。
在一些实施方案中,处理元件可以在计算与多个物体相关联的一个或多个比较尺寸度量(例如,类似于上文至少结合图7A所描述的步骤/操作705)之前,将成像数据(诸如上文至少结合图7A和图7B所描述的第一成像数据)输入到物体分割机器学习模型。如上所述,第一成像数据包括与顶部托盘层上的多个物体相关联的2-D图像数据中的至少一个数据。
在一些实施方案中,物体分割机器学习模型是被训练以识别/分割2-D图像数据中的不同物体的机器学习模型。物体分割机器学习模型的示例可包括但不限于图像分类模型、人工神经网络等。
在步骤/操作808之后和/或响应于该步骤/操作,示例方法800进行到步骤/操作810。在步骤/操作810处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以从物体分割机器学习模型接收多个物体分割指示。
在一些实施方案中,多个物体分割指示与2-D图像数据中的至少一个数据相关联。例如,物体分割机器学习模型可以从2-D图像数据中识别/分割出不同物体,并且可以为所识别的物体中的每一个物体生成物体分割指示。至少结合图9示出和描述了具有物体分割指示的示例2-D图像。
在一些实施方案中,至少部分地基于多个物体分割指示来计算一个或多个比较尺寸度量(例如,类似于上文至少结合图7A的步骤/操作705所描述的那些)。例如,处理元件可以首先至少部分地基于物体分割指示识别图像数据中的所有物体,然后计算比较尺寸度量,类似于本文所描述的那些。
返回参考图8,在步骤/操作810之后和/或响应于该步骤/操作,示例方法800进行到步骤/操作812并结束。
图9是示出了根据本公开的各种实施方案的示例物体分割指示的示例图像。
图9示出了示例2-D图像901,该图像显示了托盘的顶部可见层上的物体。图9还示出了设置在传送机的边缘上的高度感测装置905。
类似于上文结合图8所描述的那些,处理元件可以将2-D图像901提供给物体分割机器学习模型。物体分割机器学习模型是一种机器学习模型,该模型被训练以识别/分割2-D图像数据或3-D图像数据中的不同物体。在图9所示的示例中,物体分割机器学习模型可生成一个或多个物体分割指示(诸如物体分割指示903A、物体分割指示903B和物体分割指示903C),这些物体分割指示对应于2-D图像捕获的托盘的顶部可见层上的一个或多个物体。
在一些实施方案中,物体分割指示中的每一个指示指示与物体相关联的长度边缘、宽度边缘和/或高度边缘。例如,在图9所示的示例中,一个或多个物体分割指示(诸如物体分割指示903A、物体分割指示903B和物体分割指示903C)可以是标记物体的长度边缘和宽度边缘的矩形盒子的形状。
如上所述,至少部分地基于多个物体分割指示来计算一个或多个比较尺寸度量(例如,类似于上文至少结合图7A的步骤/操作705所描述的那些)。例如,处理元件可以利用由物体分割指示所指示的与物体相关联的长度边缘、宽度边缘和/或高度边缘,来计算一个或多个比较尺寸度量,本文进行了详细描述。
图10是示出了根据本公开的各种实施方案的确定比较尺寸度量的示例方法1000的示例流程图。在一些实施方案中,图10中所示的示例步骤/操作可以被实现为(例如,至少结合图7A的步骤/操作705)计算与多个物体相关联的一个或多个比较尺寸度量的一部分。例如,设置在托盘上的多个物体包括第一物体和第二物体,该第一物体和第二物体设置在托盘的相同托盘层上(例如,由2-D图像数据和/或3-D图像数据捕获的顶部可见层)。
如图10所示,示例方法1000开始于步骤/操作1002。在步骤/操作1002之后和/或响应于该步骤/操作,示例方法1000进行到步骤/操作1004。在步骤/操作1004处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定与第一物体相关联的第一图像尺寸度量。
在一些实施方案中,处理元件至少部分地基于来自感知子系统的2-D图像数据或3-D图像数据来确定与第一物体相关联的第一图像尺寸度量。
例如,基于由物体分割机器学习模型生成的物体分割指示(例如,至少部分地基于上述图8和图9),处理元件可确定第一物体的长度边缘、宽度边缘和/或高度边缘。基于2-D图像数据或3-D图像数据,处理元件可沿着第一物体的长度边缘、宽度边缘和/或高度边缘计算像素数目,并作为第一图像尺寸度量。
在一些实施方案中,处理元件可以将2-D图像数据或3-D图像数据提供给一个或多个机器学习模型,该模型被训练以生成图像尺寸度量。
返回参考图10,在步骤/操作1002之后和/或响应于该步骤/操作,示例方法1000进行到步骤/操作1006。在步骤/操作1006处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定与第二物体相关联的第二图像尺寸度量。
在一些实施方案中,处理元件至少部分地基于来自感知子系统的2-D图像数据或3-D图像数据来确定与第二物体相关联的第二图像尺寸度量。
例如,基于由物体分割机器学习模型生成的物体分割指示(例如,至少部分地基于上述图8和图9),处理元件可确定第二物体的长度边缘、宽度边缘和/或高度边缘。基于2-D图像数据或3-D图像数据,处理元件可沿着第二物体的长度边缘、宽度边缘和/或高度边缘计算像素数目,并作为第二图像尺寸度量。
在一些实施方案中,处理元件可以将2-D图像数据或3-D图像数据提供给一个或多个机器学习模型,该模型被训练以生成图像尺寸度量。
返回参考图10,在步骤/操作1004和/或步骤/操作1006之后和/或响应于该步骤/操作,示例方法1000进行到步骤/操作1008。在步骤/操作1008处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以至少部分地基于第一图像尺寸度量和第二图像尺寸度量来确定比较尺寸度量。
在一些实施方案中,处理元件至少部分地基于第一图像尺寸度量和第二图像尺寸度量来确定一个或多个比较尺寸度量中的比较尺寸度量。
继续以上示例,处理元件可计算沿着第一物体的长度边缘和宽度边缘的像素数目(例如,第一图像尺寸度量)与沿着第二物体的长度边缘和宽度边缘的像素数目(例如,第二图像尺寸度量)之间的差。
在一些实施方案中,可基于来自3-D图像捕获装置的点云来计算第一物体的高度(例如,第一图像尺寸度量)和第二物体的高度(例如,第二图像尺寸度量)。
在一些实施方案中,在确定比较尺寸度量之后,类似于本文所述的各种示例,处理元件可将比较尺寸度量与比较尺寸阈值范围进行比较。
返回参考图10,在步骤/操作1008之后和/或响应于该步骤/操作,示例方法1000进行到步骤/操作1010并结束。
图11A和图11B是示出了根据本公开的各种实施方案的确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围的示例方法1100的示例流程图。
如图11A所示,示例方法1100开始于步骤/操作1101。在步骤/操作1101之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1103。在步骤/操作1103处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可计算比较长度度量。
在一些实施方案中,处理元件可计算与第一物体相关联的第一图像尺寸度量,类似于上文至少结合图10的步骤/操作1004所描述的那些。在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像长度度量。
在一些实施方案中,处理元件可计算与第二物体相关联的第二图像尺寸度量,类似于上文至少结合图10的步骤/操作1006所描述的那些。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像长度度量。
在一些实施方案中,处理元件基于第一图像长度度量和第二图像长度度量来计算表现为比较长度度量形式的比较尺寸度量。例如,处理元件计算第一图像长度度量与第二图像长度度量之间的差作为比较长度度量。在一些实施方案中,该差对应于物体的长度的差。
返回参考图11A,在步骤/操作1103之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1105。在步骤/操作1105处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定比较长度度量是否满足比较长度阈值范围。
如上文至少结合图7B的步骤/操作707所描述的,处理元件确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围。在图11A的步骤/操作1105处示出的示例中,比较尺寸阈值范围是比较长度阈值范围。
如果在步骤/操作1105处,处理元件确定比较长度度量不满足比较长度阈值范围,则示例方法1100进行到步骤/操作1107。在步骤/操作1107处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使与物体卸垛系统相关联的执行子系统在除恒定托盘模式之外的模式下(例如,在默认模式下)运行。
在步骤/操作1107之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1109并结束。
如果在步骤/操作1105处,处理元件确定比较长度量度满足比较长度阈值范围,则示例方法1100进行到步骤/操作1111。在步骤/操作1111处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可计算比较宽度度量。
在一些实施方案中,处理元件可计算与第一物体相关联的第一图像尺寸度量,类似于上文至少结合图10的步骤/操作1004所描述的那些。在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像宽度度量。
在一些实施方案中,处理元件可计算与第二物体相关联的第二图像尺寸度量,类似于上文至少结合图10的步骤/操作1006所描述的那些。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像宽度度量。
在一些实施方案中,处理元件基于第一图像宽度度量和第二图像宽度度量来计算表现为比较宽度度量形式的比较尺寸度量。例如,处理元件计算第一图像宽度度量与第二图像宽度度量之间的差作为比较宽度度量。在一些实施方案中,差对应于物体的宽度的差异。
返回参考图11A,在步骤/操作1111之后和/或响应于该步骤/操作,示例方法1100进行到框A,该框连接图11A到图11B。现在参考图11B,在步骤/操作1111之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1113。在步骤/操作1113处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定比较宽度度量是否满足比较宽度阈值范围。
如上文至少结合图7B的步骤/操作707所描述的,处理元件确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围。在图11B的步骤/操作1113处示出的示例中,比较尺寸阈值范围是比较宽度阈值范围。
如果在步骤/操作1113处,处理元件确定比较宽度度量不满足比较宽度阈值范围,则示例方法1100进行到步骤/操作1115。在步骤/操作1115处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使与物体卸垛系统相关联的执行子系统在除恒定托盘模式之外的模式下(例如,在默认模式下)运行。
在步骤/操作1115之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1117并结束。
如果在步骤/操作1113处,处理元件确定比较宽度度量满足比较宽度阈值范围,则示例方法1100进行到步骤/操作1119。在步骤/操作1119处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可计算比较高度度量。
在一些实施方案中,处理元件可计算与第一物体相关联的第一图像尺寸度量,类似于上文至少结合图10的步骤/操作1004所描述的那些。在一些实施方案中,与第一物体相关联的第一图像尺寸度量是与第一物体相关联的第一图像高度度量。在一些实施方案中,基于来自3-D图像捕获装置的点云来计算第一图像高度度量。
在一些实施方案中,处理元件可计算与第二物体相关联的第二图像尺寸度量,类似于上文至少结合图10的步骤/操作1006所描述的那些。在一些实施方案中,与第二物体相关联的第二图像尺寸度量是与第二物体相关联的第二图像高度度量。在一些实施方案中,基于来自3-D图像捕获装置的点云来计算第二图像高度度量。
在一些实施方案中,处理元件基于第一图像高度度量和第二图像高度度量来计算表现为比较高度度量形式的比较尺寸度量。例如,处理元件计算第一图像高度度量与第二图像高度度量之间的差作为比较高度度量。在一些实施方案中,差对应于物体的高度的差。
返回参考图11B,在步骤/操作1119之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1121。在步骤/操作1121处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定比较高度度量是否满足比较高度阈值范围。
如上文至少结合图7B的步骤/操作707所描述的,处理元件确定一个或多个比较尺寸度量是否满足比较尺寸阈值范围。在图11A的步骤/操作1121处示出的示例中,比较尺寸阈值范围是比较高度阈值范围。
如果在步骤/操作1121处,处理元件确定比较高度度量满足比较高度阈值范围,则示例方法1100进行到步骤/操作1123。在步骤/操作1123处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
如果在步骤/操作1121处,处理元件确定比较高度度量不满足比较高度阈值范围,则示例方法1100进行到步骤/操作1125。在步骤/操作1125处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使与物体卸垛系统相关联的执行子系统在除恒定托盘模式之外的模式下(例如,在默认模式下)运行。
在步骤/操作1123和/或步骤/操作1125之后和/或响应于该步骤/操作,示例方法1100进行到步骤/操作1117并结束。
因此,图10、图11A和图11B所示的示例示出了确定是否触发恒定托盘模式的示例方法。例如,感知子系统可捕获2-D图像或3-D图像,该图像示出了托盘的顶部可见层上的物体。基于2-D图像和/或3-D图像,控制子系统可以实施物体分割机器学习模型以识别来自2-D图像和/或3-D图像的顶部可见层上的物体,并且可以计算每一个物体的长度、宽度和高度。在一些实施方案中,控制子系统计算每两个物体之间的长度差、每两个物体之间的宽度差以及每两个物体之间的高度差。然后,控制子系统将这些长度差、宽度差和高度差与其对应的比较阈值范围(可以是相同的或不同的)进行比较。如果长度差、宽度差和高度差均满足其对应的比较阈值范围,则控制子系统使执行子系统在恒定托盘模式下运行。如果长度差、宽度差和高度差中的任何差不满足其对应的比较阈值范围,则控制子系统使执行子系统在除恒定托盘模式之外的模式下运行。
图12是示出了根据本公开的各种实施方案的使与物体卸垛系统相关联的执行子系统在恒定托盘模式下运行的示例方法1200的示例流程图。
在一些实施方案中,类似于本文所描述的各种示例,执行子系统包括卸垛机装置。在一些实施方案中,执行子系统包括高度感测装置。
如图12所示,示例方法1200开始于步骤/操作1202。在步骤/操作1202之后和/或响应于该步骤/操作,示例方法1200进行到步骤/操作1204。在步骤/操作1204处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使卸垛机装置从多个物体中将第一物体传送到高度感测装置上方。
在一些实施方案中,处理元件使卸垛机装置将多个物体中的每一个物体传送到高度感测装置上方。在一些实施方案中,卸垛机装置被配置为将多个物体中的每一个物体传送到高度感测装置上方。
例如,如图9所示,高度感测装置905设置在传送机的边缘上。当卸垛器装置将物体从托盘卸垛到传送机上时,卸垛器装置将物体移动到高度感测装置905上方,然后移动到传送机上,并且高度感测装置905可检测物体的高度。
返回参考图12,在步骤/操作1204之后和/或响应于该步骤/操作,示例方法1200进行到步骤/操作1206。在步骤/操作1206处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以从高度感测装置接收与第一物体相关联的第一高度数据。
例如,因为卸垛机装置在步骤/操作1204处将第一物体移动到高度感测装置上方,第一高度数据可指示第一物体的高度。例如,第一高度数据可指示从物体的底部到地面的高度。
返回参考图12,在步骤/操作1206之后和/或响应于该步骤/操作,示例方法1200进行到步骤/操作1208。在步骤/操作1208处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以至少部分地基于第一高度数据确定与在恒定托盘模式下的卸垛机装置相关联的提升高度参数。
在一些实施方案中,提升高度参数可限定或指示当卸垛机装置将一个或多个物体从托盘卸垛时,卸垛机装置将在同一托盘层上的一个或多个其他物体作为第一物体应该提升到的高度。
在一些实施方案中,当执行子系统处于恒定托盘模式时,处理元件可基于卸垛机装置在托盘层中将第一物体提升到的高度来确定用于卸垛托盘层中物体的提升高度参数。
在一些实施方案中,感知子系统可以至少部分地基于图像数据确定物体保持在托盘上的高度和/或从托盘拾取盒子的高度。
返回参考图12,在步骤/操作1208之后和/或响应于该步骤/操作,示例方法1200进行到步骤/操作1210。在步骤/操作1210处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以使卸垛机装置至少部分地基于提升高度参数将多个物体中除第一物体之外的一个或多个物体提升到同一提升高度。
在一些实施方案中,当执行子系统处于恒定托盘模式时,处理元件使卸垛机装置至少部分地基于提升高度参数将多个物体中除第一物体之外的一个或多个物体提升到同一提升高度。
在一些实施方案中,当执行子系统处于恒定托盘模式时,处理元件使卸垛机装置至少部分地基于提升高度参数将在同一托盘层上的一个或多个物体(除第一物体之外)提升到同一提升高度。
在一些实施方案中,可基于由感知子系统检测到的物体高度,加上在恒定托盘模式期间检测到的最大提升高度参数或物体高度来确定提升高度(例如,卸垛机装置应该将物体提升多高)。
因此,根据本公开的各种实施方案描述的恒定托盘模式可降低随后物体从托盘移动到传送机的高度,同时仍然保持操作的安全性,因此提供如本文所述的各种技术改进和优点。在一些实施方案中,不基于来自感知子系统的数据来确定提升高度,而卸垛机装置的抓握位姿高度可基于来自感知子系统的数据来确定。
返回参考图12,在步骤/操作1210之后和/或响应于该步骤/操作,示例方法1200进行到步骤/操作1212并结束。
图13是示出了根据本公开的各种实施方案的处于恒定托盘模式的执行子系统的示例运行的示例图像。
具体地,图13所示的示例图像1301示出了与执行子系统的卸垛机装置相关联的示例抓握位姿(诸如,但不限于抓握位姿1303A和抓握位姿1303B)。例如,示例抓握位姿中的每一个抓握位姿(诸如,但不限于抓握位姿1303A和抓握位姿1303B)限定卸垛器装置的末端执行器的位置,以从托盘的顶部可见层拾取一个或多个物体。在一些实施方案中,可至少部分地基于一个或多个机器学习模型来生成示例抓握位姿(诸如,但不限于抓握位姿1303A和抓握位姿1303B)。
如图13所示的示例中所示,卸垛机装置可逐步提升物体并将物体从托盘移动到传送机上。此外,如上所述,当卸垛机装置处于恒定托盘模式时,卸垛机装置可将每一个物体提升到同一提升高度。
图14A和图14B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统退出恒定托盘模式的示例方法1400的示例流程图。
如图14A所示,示例方法1400开始于步骤/操作1402。在步骤/操作1402之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1404。在步骤/操作1404处,当执行子系统处于恒定托盘模式时,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可使卸垛机装置至少部分地基于提升高度参数从多个物体中将第二物体提升到提升高度。
例如,在步骤/操作1404之前,处理元件已经使卸垛机装置从多个物体中提升第一物体(类似于至少结合图12的步骤/操作1202所描述的那些),并且已经确定提升高度参数(类似于至少结合图12的步骤/操作步骤/操作1208所描述的那些)。
此外,如上所述,当执行子系统处于恒定托盘模式时,卸垛机装置可在将托盘层上的多个物体的其余部分从托盘卸下(例如,卸到传送机)时将其提升到相同高度。因此,卸垛机装置可基于提升高度参数从多个物体中将第二物体提升到相同高度。
返回参考图14A,在步骤/操作1404之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1406。在步骤/操作1406处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可使卸垛机装置将第二物体传送到高度感测装置上方。
例如,高度感测装置设置在传送机的边缘上。当卸垛器装置将第二物体从托盘卸垛到传送机上时,卸垛器装置将物体移动到高度感测装置上方,然后移动到传送机上,并且高度感测装置可感测第二物体的高度,类似于上文至少结合图12的步骤/操作1204所描述的那些。
返回参考图14A,在步骤/操作1406之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1408。在步骤/操作1408处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可从高度感测装置接收与第二物体相关联的第二高度数据。
例如,因为卸垛机装置在步骤/操作1204处将第二物体移动到高度传感装置上方,第二高度数据可指示第二物体的高度。
返回参考图14A,在步骤/操作1408之后和/或响应于该步骤/操作,示例方法1400进行到框A,该框连接图14A到图14B。现在参考图14B,在步骤/操作1408之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1410。在步骤/操作1410处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可以至少部分地基于第一高度数据和第二高度数据来计算物体高度差度量。
在一些实施方案中,物体高度差度量可指示物体的高度之间的差。例如,物体高度差是在物体高度之间测量的。
在一些实施方案中,本公开的各种实施方案可计算物体的高度,然后确定物体高度差度量。
在一些实施方案中,可以至少部分地基于来自高度感测装置(例如,LiDAR传感器)的高度数据来确定处于恒定托盘模式的物体的高度差。例如,可基于卸垛机装置的末端执行器距地面的高度减去使用高度传感装置确定的盒子底部距地面的高度来确定盒子的高度。随后,可确定物体之间的高度差。
在一些实施方案中,通过卸垛机装置将第一物体提升到确定的高度。在一些实施方案中,将第一物体之后的物体提升到等于或略大于第一物体被提升的高度的度量。
返回参考图14B,在步骤/操作1410之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1412。在步骤/操作1412处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定物体高度差度量是否满足物体高度差度量阈值范围。
例如,处理元件可确定物体高度差度量是否在物体高度差度量阈值范围内。如果是,则处理元件可确定物体高度差度量满足物体高度差度量阈值范围。如果不是,则处理元件可确定物体高度差度量不满足物体高度差度量阈值范围。
如果在步骤/操作1412处,处理元件确定物体高度差度量不满足物体高度差度量阈值范围,则示例方法1400进行到步骤/操作1414。在步骤/操作1414处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定物体高度差度量不满足物体高度差度量阈值范围,使与物体卸垛系统相关联的执行子系统退出恒定托盘模式。
例如,如果处理元件确定与第二物体相关联的高度明显不同于(例如,不在物体高度差度量阈值范围内)第一物体的高度,则处理元件可使执行子系统退出恒定托盘模式。随后,执行子系统可基于来自感知子系统的图像数据重新校准并计算后续物体的提升高度。
如果在步骤/操作1412处,处理元件确定物体高度差度量满足物体高度差度量阈值范围,则示例方法1400进行到步骤/操作1416。在步骤/操作1416,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定物体高度差度量满足物体高度差度量阈值范围,使与物体卸垛系统相关联的执行子系统保持在恒定托盘模式下。
返回参考图14B,在步骤/操作1414和/或步骤/操作1416之后和/或响应于该步骤/操作,示例方法1400进行到步骤/操作1418并结束。
图15是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统退出恒定托盘模式的示例方法1500的示例流程图。
如图15所示,示例方法1500开始于步骤/操作1501。在步骤/操作1501之后和/或响应于该步骤/操作,示例方法1500进行到步骤/操作1503。在步骤/操作1503处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定卸垛机装置是否已将同一托盘层上的多个物体中的每一个物体卸垛。
例如,如上所述,处理元件可以至少部分地基于2-D图像数据和/或由物体分割机器学习模型生成的物体分割指示来确定托盘的顶部可见层上的物体的总数。处理元件可基于总数确定卸垛机装置是否已卸垛所有物体。
另外或另选地,处理元件可确定卸垛机装置的抓握位姿,并且处理元件可确定卸垛机装置是否已执行所有抓握位姿,以便确定卸垛机装置是否已将同一托盘层上的多个物体中的每一个物体卸垛。
如果在步骤/操作1503处,处理元件确定卸垛机装置已传送了同一托盘层上的多个物体中的每一个物体,则示例方法1500进行到步骤/操作1505。在步骤/操作1505处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定卸垛机装置已传送了同一托盘层上的多个物体中的每一个物体,使与物体卸垛系统相关联的执行子系统退出恒定托盘模式。
例如,一旦处理元件确定卸垛机装置已卸垛顶部可见层上的所有物体,处理元件就可使执行子系统退出恒定托盘模式。随后,根据本文描述的各种示例,处理元件可在卸垛下一层物体时确定是否使执行子系统进入恒定托盘模式。
如果在步骤/操作1503处,处理元件确定卸垛机装置尚未传送同一托盘层上的多个物体中的每一个物体,则示例方法1500进行到步骤/操作1507。在步骤/操作1507处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定卸垛机装置尚未传送同一托盘层上的多个物体中的每一个物体,使与物体卸垛系统相关联的执行子系统保持在恒定托盘模式下。
返回参考图15,在步骤/操作1505和/或步骤/操作1507之后和/或响应于该步骤/操作,示例方法1500进行到步骤/操作1509并结束。
图16A和图16B是示出了根据本公开的各种实施方案的确定是否使与物体卸垛系统相关联的执行子系统继续在恒定托盘模式下运行的示例方法1600的示例流程图。
如图16A所示,示例方法1600开始于步骤/操作1602。在步骤/操作1602之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1604。在步骤/操作1604处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定与多个物体相关联的第一平均物体高度度量。
例如,可基于高度度量的平均值来确定第一平均物体高度度量,其中每一个高度度量是托盘顶层上的一个物体到托盘底座/地面的高度度量。
返回参考图16A,在步骤/操作1604之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1606。在步骤/操作1606处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可将第一平均物体高度度量存储在存储器元件中。
返回参考图16A,在步骤/操作1606之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1610。在步骤/操作1610处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定第二平均物体高度度量。
类似于上文结合步骤/操作1604所描述的那些,处理元件可计算与多个物体(例如,在顶部可见层上的物体)相关联的第二平均物体高度度量。类似于上文所描述的那些,可基于高度度量的平均值来确定第二平均物体高度度量,其中每一个高度度量是托盘顶层上的一个物体到托盘底座/地面的高度度量。
在一些实施方案中,可在确定第一平均物体高度度量的时间点之后的时间点确定第二平均物体高度度量。
返回参考图16A,在步骤/操作1610之后和/或响应于该步骤/操作,示例方法1600进行到框A,该框连接图16A到图16B。现在参考图16B,在步骤/操作1610之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1612。在步骤/操作1612处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可基于第一平均物体高度度量和第二平均物体高度度量来计算平均高度差度量。
例如,处理元件可通过从第一平均物体高度度量中减去第二平均物体高度度量来计算平均高度差度量。
返回参考图16B,在步骤/操作1612之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1614。在步骤/操作1614处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可确定平均高度差度量是否满足平均高度差度量阈值范围。
例如,如果平均高度差度量在平均高度差度量阈值范围内,则处理元件确定平均高度差满足平均高度差度量阈值范围。如果平均高度差量度超出平均高度差度量阈值范围,则处理元件确定平均高度差不满足平均高度差度量阈值范围。
如果在步骤/操作1614处,处理元件确定平均高度差度量满足平均高度差度量阈值范围,则示例方法1600进行到步骤/操作1616。在步骤/操作1616处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定平均高度差度量满足平均高度差度量阈值范围,将存储器元件中的第一平均物体高度度量替换为第二平均物体高度度量。
例如,处理元件可更新存储在存储器中的平均物体高度度量,以便基于尚未卸垛的剩余物体反映准确的高度度量。
如果在步骤/操作1614处,处理元件确定平均高度差度量不满足平均高度差度量阈值范围,则示例方法1600进行到步骤/操作1618。在步骤/操作1618处,处理元件(诸如,但不限于上文至少结合图1A至图3所描述的示例卸垛系统的控制子系统218的处理元件305)可响应于确定平均高度差度量不满足平均高度差度量阈值范围,使与物体卸垛系统相关联的执行子系统退出恒定托盘模式。
例如,如果平均高度差度量不满足平均高度差度量阈值范围,则处理元件确定与尚未卸垛的剩余物体相关联的平均高度明显不同于首次触发恒定托盘模式时物体的平均高度。在这样的示例中,处理元件使执行子系统退出恒定托盘模式,使得执行子系统可基于来自感知子系统的图像数据重新校准并计算后续物体的提升高度。
返回参考图16B,在步骤/操作1616和/或步骤/操作1618之后和/或响应于该步骤/操作,示例方法1600进行到步骤/操作1620并结束。
图17是示出了根据本公开的各种实施方案的与物体卸垛系统相关联的示例方法1700的示例流程图。
在步骤/操作1701处,物体卸垛系统的感知子系统捕获图像数据(诸如,但不限于上文所述的2-D图像数据和/或3-D图像数据)。在步骤/操作1703处,物体卸垛系统的控制子系统基于本文所述的各种示例方法确定是否使执行子系统进入恒定托盘模式。如果是,则在步骤/操作1707处,控制子系统为卸垛机装置生成并存储所有抓握位姿。在一些实施方案中,提升高度是在第一次从托盘上拾取物体后确定的。
在步骤/操作1710处,控制子系统确定是否已执行了与卸垛机装置相关联的所有抓握位姿。举例来说,如果已执行了所有抓握位姿,则意味着顶部托盘层上的所有物体已被卸垛,并且控制子系统触发感知子系统以从下一层物体生成图像数据,以及确定在卸垛下一层物体时是否使执行子系统进入恒定托盘模式。
如果在步骤/操作1710处,控制子系统确定尚未执行所有抓握位姿,则控制子系统将抓握位姿逐步发送到卸垛器装置以在步骤/操作1709处执行。
如果控制子系统确定不会使执行子系统在步骤/操作1703处进入恒定托盘模式,和/或随后逐步向卸垛器装置发送抓握位姿以在步骤/操作1709处执行,则卸垛机装置可以在步骤/操作1705处检查每个抓握位姿的可行性,以及可使由抓握位姿限定的抓握轨迹在步骤/操作1712处执行。
本公开所属领域的技术人员在受益于前述描述和相关附图中呈现的教导之后,将想到本文所阐述的本公开的许多修改和其他实施方案。因此,应当理解,本公开不限于所公开的特定实施方案,并且修改和其他实施方案旨在包括在所附权利要求书的范围内。尽管本文采用了特定术语,但它们仅以一般性和描述性意义使用,而不是出于限制的目的。
Claims (10)
1.一种设备,所述设备包括至少一个处理器和包括计算机程序代码的至少一个非暂态存储器,所述至少一个非暂态存储器和所述计算机程序代码被配置为利用所述至少一个处理器,使所述设备:
从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;
至少部分地基于所述第一成像数据计算与所述多个物体相关联的一个或多个比较尺寸度量;
确定所述一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及
响应于确定所述一个或多个比较尺寸度量满足所述比较尺寸阈值范围,使与所述物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
2.根据权利要求1所述的设备,其中所述感知子系统包括二维(2-D)图像捕获装置,其中所述第一成像数据包括与所述多个物体相关联并由所述2-D图像捕获装置捕获的2-D图像数据。
3.根据权利要求1所述的设备,其中所述感知子系统包括三维(3-D)图像捕获装置,其中所述第一成像数据包括与所述多个物体相关联并由所述3-D图像捕获装置捕获的3-D图像数据。
4.根据权利要求1所述的设备,其中,在计算与所述多个物体相关联的所述一个或多个比较尺寸度量之前,所述至少一个非暂态存储器和所述计算机程序代码被配置为利用所述至少一个处理器,使所述设备:
将所述第一成像数据输入到物体分割机器学习模型,其中所述第一成像数据包括与所述多个物体相关联的2-D图像数据中的至少一个图像数据;以及
从所述物体分割机器学习模型接收与所述2-D图像数据中的至少一个图像数据相关联的多个物体分割指示。
5.根据权利要求4所述的设备,其中至少部分地基于所述多个物体分割指示来计算所述一个或多个比较尺寸度量。
6.根据权利要求1所述的设备,其中所述多个物体包括设置在所述托盘的同一托盘层上的第一物体和第二物体。
7.根据权利要求6所述的设备,其中,当计算与所述多个物体相关联的所述一个或多个比较尺寸度量时,所述至少一个非暂态存储器和所述计算机程序代码被配置为利用所述至少一个处理器,使所述设备:
至少部分地基于来自所述感知子系统的2-D图像数据或3-D图像数据来确定与所述第一物体相关联的第一图像尺寸度量;
至少部分地基于来自所述感知子系统的所述2-D图像数据或所述3-D图像数据来确定与所述第二物体相关联的第二图像尺寸度量;以及
至少部分地基于所述第一图像尺寸度量和所述第二图像尺寸度量来确定所述一个或多个比较尺寸度量中的比较尺寸度量。
8.一种计算机实现的方法,所述计算机实现的方法包括:
从与物体卸垛系统相关联的感知子系统接收与设置在托盘上的多个物体相关联的第一成像数据;
至少部分地基于所述第一成像数据计算与所述多个物体相关联的一个或多个比较尺寸度量;
确定所述一个或多个比较尺寸度量是否满足比较尺寸阈值范围;以及
响应于确定所述一个或多个比较尺寸度量满足所述比较尺寸阈值范围,使与所述物体卸垛系统相关联的执行子系统在恒定托盘模式下运行。
9.根据权利要求8所述的计算机实现的方法,其中所述感知子系统包括二维(2-D)图像捕获装置,其中所述第一成像数据包括与所述多个物体相关联并由所述2-D图像捕获装置捕获的2-D图像数据。
10.根据权利要求8所述的计算机实现的方法,其中所述感知子系统包括三维(3-D)图像捕获装置,其中所述第一成像数据包括与所述多个物体相关联并由所述3-D图像捕获装置捕获的3-D图像数据。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202163263223P | 2021-10-28 | 2021-10-28 | |
US63/263,223 | 2021-10-28 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116050722A true CN116050722A (zh) | 2023-05-02 |
Family
ID=86124583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211271895.3A Pending CN116050722A (zh) | 2021-10-28 | 2022-10-18 | 用于将混合物体卸垛的方法、设备和计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116050722A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117575443A (zh) * | 2024-01-17 | 2024-02-20 | 金华市浙中公铁联运港有限公司 | 一种铁路场站停靠区域智能管理方法及系统 |
-
2022
- 2022-10-18 CN CN202211271895.3A patent/CN116050722A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117575443A (zh) * | 2024-01-17 | 2024-02-20 | 金华市浙中公铁联运港有限公司 | 一种铁路场站停靠区域智能管理方法及系统 |
CN117575443B (zh) * | 2024-01-17 | 2024-04-19 | 金华市浙中公铁联运港有限公司 | 一种铁路场站停靠区域智能管理方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10335947B1 (en) | Robotic system with piece-loss management mechanism | |
US11501445B2 (en) | Robotic system with automated package scan and registration mechanism and methods of operating the same | |
JP6738112B2 (ja) | ロボットシステムの制御装置及び制御方法 | |
JP6710400B1 (ja) | パッキング機構を有するロボットシステム | |
US11228751B1 (en) | Generating an image-based identifier for a stretch wrapped loaded pallet based on images captured in association with application of stretch wrap to the loaded pallet | |
JP6704157B1 (ja) | 動的パッキング機構を有するロボットシステム | |
US10766141B1 (en) | Robotic system with a coordinated transfer mechanism | |
CN116050722A (zh) | 用于将混合物体卸垛的方法、设备和计算机程序产品 | |
US11772271B2 (en) | Method and computing system for object recognition or object registration based on image classification | |
US20230381971A1 (en) | Method and computing system for object registration based on image classification | |
JP2023024980A (ja) | 画像ベースのサイジングメカニズムを備えたロボットシステム及びロボットシステムを操作するための方法 | |
CN116091590A (zh) | 提供用于对物体进行卸垛的动态间隙系统的方法、设备和计算机程序产品 | |
EP4173772A1 (en) | Methods, apparatuses and computer program products for depalletizing mixed objects | |
JP2023016800A (ja) | 深さベースの処理メカニズムを伴うロボットシステム及びロボットシステムを操作するための方法 | |
US20240066706A1 (en) | Methods, systems, and computer program products for executing partial depalletization operations in robotic depalletization | |
CN117464660A (zh) | 用于机器人卸垛中的高度阈值化场景的可达性约束操纵的方法、系统和计算机程序产品 | |
CN111498213B (zh) | 具有动态打包机制的机器人系统 | |
JP7218881B1 (ja) | 物体更新機構を備えたロボットシステム及びロボットシステムを操作するための方法 | |
CN115609569A (zh) | 具有基于图像的尺寸确定机制的机器人系统及其操作方法 | |
CN111559544A (zh) | 具有错误检测和动态打包机制的机器人系统 | |
CN115258510A (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 |