TW202241669A - 可適性機器人單分系統 - Google Patents

可適性機器人單分系統 Download PDF

Info

Publication number
TW202241669A
TW202241669A TW111108917A TW111108917A TW202241669A TW 202241669 A TW202241669 A TW 202241669A TW 111108917 A TW111108917 A TW 111108917A TW 111108917 A TW111108917 A TW 111108917A TW 202241669 A TW202241669 A TW 202241669A
Authority
TW
Taiwan
Prior art keywords
robotic
plan
conveyor
item
robot
Prior art date
Application number
TW111108917A
Other languages
English (en)
Other versions
TWI833175B (zh
Inventor
周文 孫
哈利 哲 蘇
唐寧 塔爾伯特 莫里斯
大衛 利奧 三世 湯德羅
托比 倫納德 貝克
蒂莫西 瑞恩
阿尤什 夏瑪
拉斐爾 喬治 沃斯
西里爾 納德
Original Assignee
美商靈巧公司
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
Application filed by 美商靈巧公司 filed Critical 美商靈巧公司
Publication of TW202241669A publication Critical patent/TW202241669A/zh
Application granted granted Critical
Publication of TWI833175B publication Critical patent/TWI833175B/zh

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
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • B65G47/91Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers
    • B65G47/917Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers control arrangements
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/0093Programme-controlled manipulators co-operating with conveyor means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • B25J13/088Controls for manipulators by means of sensing devices, e.g. viewing or touching devices with position, velocity or acceleration sensors
    • 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
    • B25J15/065Gripping heads and other end effectors with vacuum or magnetic holding means with vacuum provided with separating means for releasing the gripped object after suction
    • B25J15/0658Pneumatic type, e.g. air blast or overpressure
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1612Programme controls characterised by the hand, wrist, grip control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/163Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1651Programme controls characterised by the control loop acceleration, rate control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1628Programme controls characterised by the control loop
    • B25J9/1653Programme controls characterised by the control loop parameters identification, estimation, stiffness, accuracy, error analysis
    • 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
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • 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
    • B25J9/1671Programme controls characterised by programming, planning systems for manipulators characterised by simulation, either to verify existing program or to create and verify new program, CAD/CAM oriented, graphic oriented programming systems
    • 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
    • B65G47/00Article or material-handling devices associated with conveyors; Methods employing such devices
    • B65G47/74Feeding, transfer, or discharging devices of particular kinds or types
    • B65G47/90Devices for picking-up and depositing articles or materials
    • B65G47/91Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers
    • B65G47/918Devices for picking-up and depositing articles or materials incorporating pneumatic, e.g. suction, grippers with at least two picking-up heads
    • 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
    • B65G59/00De-stacking of articles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/418Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM]
    • G05B19/41815Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell
    • G05B19/4182Total factory control, i.e. centrally controlling a plurality of machines, e.g. direct or distributed numerical control [DNC], flexible manufacturing systems [FMS], integrated manufacturing systems [IMS] or computer integrated manufacturing [CIM] characterised by the cooperation between machine tools, manipulators and conveyor or other workpiece supply system, workcell manipulators and conveyor only
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0208Control or detection relating to the transported articles
    • B65G2203/0216Codes or marks on the article
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0208Control or detection relating to the transported articles
    • B65G2203/0233Position of the article
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0208Control or detection relating to the transported articles
    • B65G2203/025Speed of the article
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0208Control or detection relating to the transported articles
    • B65G2203/0258Weight of the article
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/02Control or detection
    • B65G2203/0266Control or detection relating to the load carrier(s)
    • B65G2203/0291Speed of the load carrier
    • 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
    • B65G2203/00Indexing code relating to control or detection of the articles or the load carriers during conveying
    • B65G2203/04Detection means
    • B65G2203/041Camera
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/39Robotics, robotics to robotics hand
    • G05B2219/39102Manipulator cooperating with conveyor
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40161Visual display of machining, operation, remote viewing
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40195Tele-operation, computer assisted manual operation
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40607Fixed camera to observe workspace, object, workpiece, global

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Robotics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Orthopedic Medicine & Surgery (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Manufacturing & Machinery (AREA)
  • Control Of Conveyors (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本發明揭示一種機器人單分系統。在各項實施例中,接收包含與存在於一工作區中之一物件相關聯之資料之感測器資料。該感測器資料係用於判定及實施用以自主地操作一機器人結構以移動該物件且將該物件單獨放置於一單分輸送結構中之一對應位置中的一計劃。該計劃考量至少部分基於該感測器資料判定之該物件之一屬性。

Description

可適性機器人單分系統
本申請案係關於一種可適性機器人單分系統。
包裹及其他配送中心可接收各種大小、尺寸、形狀、重量、剛度及/或其他屬性之一任意物件混合,通常係雜亂的任意混合。各物件可具有可被機器讀取且用於(例如)經由一自動化分類/路由系統及/或處理來路由該物件之機器可讀資訊(諸如文字及/或光學地或以其他方式編碼之資訊)。為讀取一給定物件之資訊,在一典型方法中,經由被稱為「單分」之一程序使物件彼此分離。
通常,單分已由人類工人手動地執行。一物件混合(例如)經由一滑槽或其他輸送工具到達一工作站,且一組一或多個人類工人之各者手動地分離物件並將其等放置於一輸送帶或類似者上之用於一單個物件之一經界定空間中。對於各物件,其目的地(或至少下一段運輸)係由關於該物件之機器讀取資訊判定,且該物件被路由至與下一段相關聯之一目的地(諸如一袋子、貯存箱、貨櫃或與下一段相關聯之其他容器及/或一遞送車輛或集結區域)。
手動單分程序係勞動密集型且可為低效的。例如,一下游人類工人可能幾乎不具有放置經單分物件之位置,例如,由於上游工人填充許多單個物件位置。集體處理量可為次優的。
歸因於雜亂物件混合到達一工作站、物件在各站及整體上的動態流及可能難以使用一機器人手臂及末端執行器以一自動化方式識別、抓握、分離(單分)物件以及適應關於工作站或其中之物件之變化狀態或條件的結果,使用機器人來執行單分具有挑戰性。
根據本發明之一項例示性實施例,一種系統包括一通信介面及一處理器。該處理器耦合至該通信介面且經組態以經由該通信介面接收感測器資料,該感測器資料包含與存在於一工作區中之一物件相關聯之資料。該處理器經組態以使用該感測器資料來判定及實施用以自主地操作一機器人結構以移動該物件且將該物件單獨放置於一單分輸送結構中之一對應位置中之一計劃,該計劃考量至少部分基於該感測器資料判定之該物件之一屬性。
本發明可以諸多方式來實施,包含作為一程序;一設備;一系統;一物質組合物;體現於一電腦可讀儲存媒體上之一電腦程式產品;及/或一處理器,諸如經組態以執行儲存於耦合至該處理器之一記憶體上及/或由該記憶體提供之指令的一處理器。在本說明書中,此等實施方案或本發明可採用之任何其他形式可被稱為技術。一般而言,在本發明之範疇內,可改變所揭示程序之步驟之順序。除非另有說明,否則可將被描述為經組態以執行一任務之一組件(諸如一處理器或一記憶體)實施為臨時經組態以在一給定時間執行該任務之一通用組件或經製造以執行該任務之一特定組件。如本文中所使用,術語「處理器」係指經組態以處理資料(諸如電腦程式指令)之一或多個裝置、電路及/或處理核心。
在下文連同繪示本發明之原理之附圖提供對本發明之一或多項實施例之一詳細描述。本發明係結合此等實施例進行描述,但本發明並不限於任何實施例。本發明之範疇係僅藉由發明申請專利範圍限制且本發明涵蓋諸多替代例、修改及等效物。在以下描述中闡述許多具體細節以便提供本發明之透徹理解。出於例示目的提供此等細節且可在不具有此等具體細節之一些或全部之情況下根據發明申請專利範圍來實踐本發明。為清楚起見,尚未詳細描述與本發明有關之技術領域中已知之技術材料,使得不會不必要地模糊本發明。
揭示用以執行單分之一機器人系統。在各項實施例中,基於與一工作區或該工作區內之一物件相關聯之資料來執行單分。至少部分基於工作區中之一物件之一屬性來判定一計劃(例如,用以單分一物件)。物件之屬性可至少部分基於關於工作區所獲得之感測器資料來判定。如本文中所使用,一工作區可包含一滑槽或其他輸送結構及/或其上安置物件之一源堆/流之容器、其上將單獨放置來自該滑槽之一物件之一目的地輸送結構,及包含自滑槽(或其他源)拾取一或多個物件並將該一或多個物件各單獨放置於該目的地輸送結構上之一對應位置中之一機器人手臂之一機器人結構。工作區可進一步包含獲得與工作區相關聯之感測器資料之一控制電腦,及/或一按需遙操作裝置,一人類操作員可使用該按需遙操作裝置來控制工作區內之一元件(諸如機器人手臂及/或輸送結構)。如本文中所使用,術語狹槽或托盤可結合描述輸送機上之一特定位置而交換使用。
一機器人系統包含用於自一源堆/流拾取物件並將其等放置於一分段輸送機或類似輸送工具上以進行分類及路由以運輸至一下游(例如,最終定址/實體)目的地的一機器人手臂及末端執行器。如本文中所使用,單分一物件包含自一源堆/流拾取一物件並將該物件單獨放置於一目的地(諸如一目的地輸送結構(例如,一分段輸送機或類似輸送工具)上之一位置)上或該目的地中。在一些實施例中,協調多個機器人以實施一所要集體處理量。在各項實施例中,可在一單分站處採用一或多個機器人。一機器人系統可包含多個站。作為一實例,各站可對應於一相異工作區(例如,包括源堆/流之一相異滑槽)。可在一或多個站處採用人類工人。在各項實施例中,機器人系統可經組態以調用(請求)一人類工人之幫助(例如,藉由一機器人手臂之遙操作、手動任務完成等),例如用以處置機器人無法藉由全自動化處理來處置之一物件及/或機器人掉落之一物件等。在一些實施例中,在同一工作區處操作之複數個機器人手臂獨立地工作以單分複數個物件。結合一物件之單分,可判定用於單分來自源堆/流(物件在其處定位至輸送機上之一對應位置)之物件之一計劃或策略。輸送機上之對應位置可為輸送機上之一特定狹槽或托盤。在一些實施例中,輸送機上之一狹槽或托盤係與一識別符(例如,關於機器人系統內之輸送機之一唯一識別符)相關聯。
根據各項實施例,計劃或策略包含待單分之(例如,來自源堆/流之)一物件、輸送機上之將單獨放置物件之一位置及沿著其將物件自源堆/流移動至輸送機上之位置之一路徑或軌跡的一指示。計劃或策略包含與輸送機上之將單獨放置物件之位置有關的資訊,諸如輸送機上之將放置物件之一狹槽或托盤之一識別符。在一些實施例中,計劃或策略包含指令,將單分物件之機器人結構使用該等指令以便單分物件。作為一實例,指令提供機器人結構控制對應機器人手臂以自滑槽拾取物件,沿著路徑或軌跡移動物件並將物件放置於輸送機上之經判定位置處所根據之方式的一指示。
根據各項實施例,至少部分基於感測器資料來判定將沿著其單分一物件之路徑或軌跡。機器人系統可獲得輸出與工作區(包含工作區內之物件或物體)有關之資訊之複數個感測器。感測器資料係基於自一或多個感測器輸出之資訊來獲得並結合判定路徑或軌跡而使用。在一些實施例中,至少部分基於待單分之物件之一或多個屬性來判定路徑或軌跡。物件之屬性之實例包含一重量、一大小(例如,一或多個尺寸)、一包裝類型、物件上之一識別符、物件上之一識別符或標記之一位置、物件相對於滑槽及/或輸送機之一位置、自物件上之識別符或標記獲得之資訊等。可結合判定路徑或軌跡來使用各種其他屬性。物件之路徑或軌跡之判定可進一步至少部分基於輸送機上之將放置物件之一位置、已在輸送機上之一(若干)物件之一屬性、工作區內之一物件(例如,源堆/流內之一物件)之一屬性、機器人手臂抓握物件所用之一夾持強度、機器人手臂將移動物件之一速度等。
根據各項實施例,判定用於單分一物件之一組路徑或軌跡,且自該組路徑或軌跡選擇將沿著其單分物件之路徑或軌跡。可基於與該組內之對應路徑或軌跡相關聯之各種性質來選擇路徑或軌跡。可結合選擇路徑或軌跡而使用之與對應路徑或軌跡相關聯之性質之實例包含將單分物件之一速度、輸送機上之將單分物件之一位置、將根據特定路徑或軌跡單分物件之一成功概率、工作區內之另一物件或物體是否與特定路徑或軌跡相交之一指示等。在一些實施例中,將根據特定路徑或軌跡單分物件之成功概率係針對該組路徑或軌跡之至少一子集來判定,且路徑或軌跡係基於相對於對應於其他路徑或軌跡之成功概率之對應成功概率來選擇。作為一實例,回應於判定對應於路徑或軌跡之成功概率超過一臨限概率,或超過子集內之其他路徑或軌跡之一臨限數目或百分比來選擇路徑或軌跡。
各項實施例包含用於組態機器人系統以偵測輸送機上之一空狹槽或托盤之一系統及程序。透過隨時間之正常使用,輸送機上之一狹槽或托盤之一或多個性質可改變。例如,狹槽或托盤之一側或表面可改變色彩或具有可見刮痕/磨痕。作為另一實例,一狹槽或托盤之一或多個尺寸可由於該狹槽或托盤中放置及承載相對超大/超重物件而改變。若狹槽或托盤之外觀或尺寸(或其他性質)隨時間改變,則機器人系統可在判定狹槽/托盤是否為空的(且可用於承載待單分之一物件)時出錯。機器人系統可判定一狹槽/托盤不是空的,因為該狹槽/托盤看似與一空狹槽/托盤外觀之定義不同(例如,不同色彩、刮痕或表面上之其他標記等)。因此,在一些實施例中,一空托盤之定義(例如,一空托盤之一或多個性質之一映射)隨時間而更新。空托盤之定義之更新可以預定時間間隔週期性地執行,或回應於偵測到滿足一或多個條件(例如,機器人系統達到一錯誤率臨限值)來執行。在各項實施例中,空托盤之定義不斷更新。例如,系統資料獲得與一視覺系統有關之感測器資料,該感測器資料係相對於輸送機上之狹槽或托盤被認為空的之一位置處之一狹槽或托盤來擷取(例如,在輸送機開始處,或在其中清空狹槽或托盤之一步驟之後的輸送機之末端處),且使用感測器資料來更新空托盤之定義。在一些實施例中,一空狹槽或托盤之定義係在一逐托盤基礎上判定,使得各狹槽或托盤具有此狹槽或托盤之一對應定義。一特定狹槽或托盤之定義可結合此狹槽或托盤之一對應識別符來儲存。可使用一機器學習程序來實施一空狹槽/托盤之定義之更新。
根據各項實施例,一機器人單分系統執行一主動措施以便改良一物件之單分(例如,成功地自一源堆/流拾取物件並將物件放置於輸送機上)。機器人系統基於工作區之一背景內容(例如,物件之一狀態或條件、物件之一性質、工作區內之另一物件等)動態地更新單分期間之物件之路徑或軌跡。例如,回應於判定一經偵測狀態或條件阻礙用以自主地操作機器人結構以自工作區拾取一或多個物件且將各物件單獨放置於一單分輸送結構中之一對應位置中之一當前計劃的實施,機器人結構執行用以改良成功單分之可能性之一或多個主動措施(例如,機器人結構可至少部分基於經偵測狀態或條件來判定預期改良成功單分之可能性之一主動措施)。在一些實施例中,主動措施包含使用一機器人手臂、該機器人手臂之一末端執行器、工作區之一滑槽或另一元件之一移動或一鼓風機來重組態源堆/流或重組態工作區上之一或多個物件或雜物。可執行主動措施以改良對待單分之一物件上之一標記或識別符之掃描,改良可拾取一物件之可能性,改良對經單分之一物件之夾持,改良自機器人手臂對一物件之釋放,或改良獨立地單分來自同一工作區(例如,同一源堆/流)之物件之兩個機器人手臂之操作。
包裹承運人、郵政服務、遞送服務、大型零售商或經銷商,及往返於不同位置處置、運輸及遞送物件之其他企業及政府實體通常自不同源位置接收大量物件,各物件將被遞送至各種目的地位置之一對應目的地位置。
存在用以處置物件、對物件分類及路由物件之機器,但為使用機器讀取器及分類設備,物件可需要彼此間隔及/或在一特定定向上以能夠使一標記或標籤由一機器讀取。此間隔及定向可需要在將物件「引入」至一分類/路由設施中之一程序的進展中達成,且可結合一「分類(sorting)」或「分類(sortation)」程序來執行,例如,按一般目的地(例如,地區、州、城市、郵遞區號、街道、門牌號順序等)對待遞送至不同位置之物件進行分類之一程序。
機器讀取器(諸如射頻(RF)標籤讀取器、光學代碼讀取器等)可需要將物件彼此間隔開(有時被稱為「單分」之一程序),以能夠可靠地讀取一標籤或代碼且使系統將所得資訊與一特定物件(諸如在一輸送機或其他結構或工具上之一特定位置中之一物件)相關聯。
在一包裹分類操作中之一典型歸納/分類程序中,例如,可自散裝堆拾取個別包裹並將其等放置於一移動輸送機或傾斜托盤分類系統上。對於大部分設施,此類型之歸納係完全手動的。
一典型、手動包裹歸納/分類程序可包含以下一或多者: •   具有未分類之包裹之一滑槽緩慢行進至鄰近於一基於輸送機之分類系統之一分類台上 •   一工人之工作係將物件「單分」至輸送機或基於托盤之分類系統上 •   工人確保被歸納至分類機上之每個包裹經定向使得可讀取一裝運條碼(或其他光學代碼、電子標籤等)以用於分類目的(此定向通常由設施處之掃描基礎設施判定) •   等待一空托盤或狹槽通過,且確保每個狹槽或托盤上僅放置一個包裹
在一典型手動歸納/分類程序中,手動地(機器)進給滑槽,各種形狀及大小之包裹經由該等滑槽以各種定向散裝到達;包裹可具有不同尺寸、形狀、剛度、包裝等;通常人類工人自為每個人工作之一站進給之一滑槽取出包裝,且將其等一個接一個地放置於一輸送機之一開放分區或以其他方式界定之片段上;最後,各在一站處之許多工人將經單分包裹填入一或多個輸送機上之位置,以促進下游機器處理,諸如讀取代碼或標籤並基於此採取自動化分類動作,諸如將各包裹路由至與包裹將被遞送至之一目的地相關聯之設施內之一位置。該位置可涉及進一步分類(例如,設施內之更具目的地特定性之位置)及/或包裝/裝載包裹以進行進一步裝運(例如,卡車或飛機至將發生進一步分類及遞送之進一步目的地,裝載於一卡車上以進行本地遞送等)。
圖1係用以接收物件、對物件分類及運輸物件以進行物流配送之一程序之一流程圖。
在所展示之實例中,程序100以一歸納程序102開始,藉由歸納程序102將物件提供至一或多個工作站以經由單分程序104進行單分。在各項實施例中,單分程序104係至少部分由如本文中揭示之一機器人單分系統自動化。單分程序104經由歸納程序102接收不同物件之堆或流且將經單分物件之一串流提供至一分類/路由程序106。例如,單分程序104可將物件一個接一個地放置於將物件一個接一個地進給至一分類/路由機器中之一分段輸送機或其他結構上。在一些實施例中,以一定向放置物件使得一標記或標籤能夠由一下游讀取器讀取,該下游讀取器經組態以讀取路由(例如,目的地地址)資訊且使用該路由資訊將物件分類至一對應目的地(諸如一堆、貯存箱或運往相同的下一中間及/或最終目的地之其他組物件)。一旦經分類,便由一運輸程序108處理前往一共同的下一/最終目的地之物件群組。例如,物件可放置於貨櫃中,裝載至遞送或運輸卡車或其他車輛中等以用於遞送至下一/最終目的地。
揭示經組態以判定一計劃之一機器人系統,該計劃考量待單分之物件之一屬性及/或工作區內之另一物件(例如,輸送機上之一物件)之一屬性。圖10之相關程序100進一步未能揭示待單分之物件之屬性及/或工作區內之物件之屬性係至少部分基於感測器資料來判定。在各項實施例中,判定(及實施)用於單分一物件之一計劃以避免經單分之物件與工作區中之另一物件及/或工作區中之一物體之間的碰撞。可基於一預期碰撞之一判定及將實施以避免預期碰撞之一主動措施來判定計劃。各項實施例判定用以促進改良與單分一物件相關之路徑或軌跡之效率及/或改良物件單分之有效性(例如,物件可能未正確地放置於輸送機上,一標記可能無法由系統中之一感測器結合單分物件來讀取等)的一計劃。根據各項實施例,透過使用一動態單分方法或系統來改良對來自源堆/流之物件之單分,該動態單分方法或系統使用待單分之物件之一屬性及工作區內之另一物件(例如,輸送機上之一物件)之一屬性之一或多者來判定用於一物件之單分之一路徑或軌跡。動態單分方法或系統可包含回應於偵測到待單分之物件之一屬性及工作區內之另一物件(例如,輸送機上之一物件)之一屬性之一或多者來更新用於一物件之單分之路徑或軌跡。
圖2A係繪示根據各項實施例之一機器人單分系統之一圖式。
在所展示之實例中,系統200包含配備有一吸取式末端執行器204之一機器人手臂202。雖然在所展示之實例中,末端執行器204係一吸取式末端執行器,但在各項實施例中,一或多個其他類型之末端執行器可用於如本文中所揭示之一單分系統中,包含(但不限於)一捏縮式末端執行器或其他類型之致動夾持器。在一些實施例中,末端執行器204包括一或多個吸取式末端(例如,一或多個吸盤)。在各項實施例中,末端執行器可藉由吸力、氣壓、氣動、液壓或其他致動來致動。機器人手臂202及末端執行器204經組態以用於擷取經由滑槽或貯存箱206到達之包裹或其他物件並將各物件放置於分段輸送機208上之一對應位置中。在此實例中,物件係自一入口端210進給至滑槽206中。例如,一或多個人類及/或機器人工人可直接地或經由經組態以將物件進給至滑槽206中之一輸送機或其他機電結構將物件進給至滑槽206之入口端210中。
在所展示之實例中,機器人手臂202、末端執行器204及輸送機208之一或多者係由控制電腦212協調操作。在一些實施方案中,控制電腦212經組態以控制在一或多個工作站處操作之複數個機器人手臂。在各項實施例中,如本文中所揭示之一機器人單分可包含自其模型化工作區之一環境之一或多個感測器。在圖2A中所展示之實例中,系統200包含影像感測器,在此實例中,包含3D攝影機214及216。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器、一重量感測器及類似者。在各項實施例中,控制電腦212包含用於基於感測器資料(諸如由影像感測器(在此實例中,包含3D攝影機214及216)提供之影像資料)辨別個別物件、工作區上之雜物及各物件之定向之一工作區環境狀態系統(諸如一視覺系統)。在一些實施例中,工作區環境狀態系統包含機器人手臂中之用以偵測一物件(例如,一經抓握物件)之一重量或偵測自其判定一經估計重量之資訊的感測器。例如,與由驅動機器人手臂之移動之一或多個馬達使用之電流、電壓及/或功率之一量有關的資訊可用於判定物件之重量(或一經估計重量)。作為另一實例,滑槽包含一重量感測器,且物件之重量係基於如由該重量感測器在拾取物件之前及拾取物件之後量測的在滑槽上之重量之一差來判定。作為另一實例,與來自一或多個感測器陣列之一輸出有關之資訊可用於判定物件在工作區中之一位置、在物件被抓握及/或由機器人手臂移動時物件之一位置,及/或機器人手臂之一位置(例如,基於來自一或多個感測器陣列之一感測器子集之一輸出相較於一或多個感測器陣列之另一感測器子集之一判定)。作為另一實例,與來自一或多個感測器陣列之一輸出有關之資訊可用於判定待單分之一物件及/或工作區內之另一物件或物體之一尺寸或大小。
工作區環境狀態系統產生由機器人系統用於判定及實施用以自主地操作一機器人結構以自工作區拾取一或多個物件並將各物件放置於一對應可用經界定位置(諸如分段輸送機208之一分區區段)中以用於機器識別及分類之一計劃的輸出。在一些實施例中,工作區環境狀態系統產生由機器人系統使用以偵測與工作區中之一或多個物件相關聯之一狀態、條件及/或屬性,及/或與機器人手臂或工作區之另一元件相關聯之一狀態或條件的一輸出(例如,以其他方式特性化工作區及工作區內之物件之感測器資料或資訊)。根據各項實施例,回應於偵測(例如,判定)與工作區中之一或多個物件相關聯之狀態、條件及/或屬性,機器人系統結合單分一物件實施一或多個主動措施。主動措施可包含更新用以自主地操作一機器人結構以自工作區拾取一或多個物件並將各物件單獨放置於一單分輸送結構中之一對應位置中的計劃。在一些實施例中,主動措施或更新計劃可包含操作機器人結構以改變或適應經偵測狀態、條件及/或屬性(例如,實施單分一物件之一改變或方式,改變沿著其單分物件之一路徑或軌跡,改變抓握物件之一方式,改變物件上之抓握物件之一位置等)。
在各項實施例中,如本文中所揭示之一機器人系統(例如)藉由操作一控制電腦(諸如控制電腦212)而包含及/或進行以下一或多者: •   藉由合併來自多個感測器(包含2D攝影機、3D (例如,RGBD)攝影機、紅外及其他感測器)之資料來產生電腦視覺資訊以產生包含一或多個分類站之一工作區之一三維視圖。機器人系統判定工作區之該三維視圖中之物件及/或雜物或其他異常之特性。 •   機器人系統協調多個機器人之操作以避免碰撞,相互妨礙及爭用拾取同一物件及/或將一物件放置於與另一機器人相同之目的地位置(例如,輸送機之分段部分)中。機器人系統協調在同一工作區內操作之複數個機器人之操作以單分複數個物件。例如,在各項實施例中,複數個機器人獨立地操作以拾取及放置物件。若偵測到一碰撞風險,則採取回應動作以確保複數個機器人在單分期間不相互碰撞。 •   機器人系統協調多個機器人之操作以確保所有物件被放置且每個狹槽/位置僅一個物件。例如,若機器人A掉落一物件,則系統委派機器人B拾取該物件的任務;放置但具有不正確定向之物件係由同一或另一機器人拾取並調整或移動至另一位置;一單個目的地狹槽中之兩個或更多個物件導致機器人下游站自輸送機拾取該兩個或更多個物件之一者並將該物件放置於一新位置中;等 •   機器人系統連續更新各機器人及所有機器人一起之運動計劃以達成一所要集體處理量(例如,最大化集體處理量,達到集體處理量之一預定義臨限值等)。回應於判定兩個或更多個機器人已碰撞或若根據其等針對單分物件之各自計劃移動將碰撞,則機器人系統實施一主動措施以確保兩個或更多個機器人避免碰撞或以其他方式重設兩個或更多個機器人之獨立操作。 •   回應於兩個機器人獨立地被委派獲取同一物件的任務之一判定,系統隨機選擇一個機器人來獲取該物件且另一機器人移動至下一物件(例如,識別、選擇、判定抓握策略,拾取,根據計劃移動並放置)。 •   機器人系統可管理複數個機器人之獨立操作以確保機器人在不同時間選擇物件以避免同一物件由兩個不同機器人選擇以進行單分。 •   機器人系統可分析所有可能機器人手臂-物體組合且嘗試找到一合適對。若未找到任何對,則選擇用於一特定機器人(例如,主要機器人)之最佳物件作為待由該特定機器人單分之物件。若不存在用於特定機器人之物件(例如,特定機器人),則吾人預設為用於輔助機器人之一物件。 •   視需要控制輸送機移動及/或速度以避免空位置且達成一所要機器人生產力(處理量)。 •   回應於判定一物件被錯放或掉落,系統指派一機器人或(若需要)一人類工人拾取該物件並將其放回擷取機器人自身之源堆,或者,若可用或更佳,則放回輸送機上之下一開放狹槽上。 •   控制上游機器人以有意留出一些開放狹槽以供下游機器人將物件放置於輸送機上。 •   控制下游機器人以校正因一上游機器人將一物件放置於輸送機上而引起之錯誤(例如,校正擱置於多於一個狹槽/托盤中之一物件之放置,用物件之一識別符與其中上游機器人放置物件之狹槽之間的一關聯來更新一資料結構等)。 •   同一或另一機器人無法校正之故障導致獲得人類(或其他機器人)干預來解決之一警示。 •   回應於判定一夾持強度(例如,由末端執行器獲得之一壓力)異常(例如,小於正常操作期間預期),執行包含在一預定義表面上測試該夾持強度且結合判定對於末端執行器是否需要補救行動之一診斷程序。 •   移動/移除工作區內之雜物,或重組態待單分之一物件(例如,改良物件係自源堆/流成功地拾取並放置於輸送結構上的可能性)。 •   控制一滑槽輸送機以重組態工作區內之物件(例如,將經選擇用於單分之一物件帶至更靠近滑槽之一前部以供機器人手臂更快及更容易地接取,重新定位一或多個物件以改良一機器人手臂抓握一物件之能力等)。 •   使用來自工作區環境狀態系統(例如,來自工作區內之一或多個感測器)之感測器資料以模型化滑槽流(或模型化工作區環境),偵測與一預期滑槽流(或與一預期工作區環境)之一偏差,使用感測器資料偵測滑槽流或工作區環境內之一堵塞或異常,且實施清除該堵塞之一主動措施。 •   使用來自工作區環境狀態系統之感測器資料以偵測經選擇用於單分之物件之一或多個特性(例如,屬性),判定物件之抓握或釋放預期回應於一主動措施之實施而改良,且實施該主動措施以改良對物件之抓握或釋放。 •   使用感測器資料以判定機器人手臂已結合物件之一者之單分而抓握複數個物件,且判定用於釋放該複數個物件之一計劃以便將各物件單獨放置於一單分輸送結構中之一對應位置中(例如,選擇該單分輸送結構中之將放置對應物件之不同位置,及/或判定用於操作末端執行器以在一不同時間自複數個物件之一第二子集釋放複數個物件之一第一子集之一策略)。 •   基於一選定物件之一大小及/或輸送結構上之一狹槽內之一物件之一或多個特性來選擇輸送結構上之其中將放置該選定物件之一狹槽。例如,選取一狹槽以確保選定物件未放置於鄰近於包括一高或大物件之一狹槽之一狹槽中。 •   基於物件之一屬性(例如,選定物件之一大小、物件之一重量等)及/或輸送結構上之一狹槽內之一物件之一或多個屬性(例如,特性)來選擇用於單分輸送結構上之一物件之一路徑。例如,判定一路徑以將物件放置於鄰近於包括一高或大物件之一狹槽之一狹槽中。 •   至少部分基於一輸送帶之一速度來判定單分一物件之機器人手臂之一移動及速度。 •   至少部分基於物件之一特性、工作區環境之一特性及/或輸送結構之一特性(例如,輸送帶之一速度)之一或多者來判定待單分之物件之一軌跡。 •   判定對應於待單分之一物件之一或多個路徑/軌跡之一成功單分概率,及基於對應成功概率來選擇將沿著其單分物件之一路徑/軌跡。 •   判定一機器人手臂及/或該機器人手臂之一末端執行器之一定位以獲得一成功抓握(例如,如基於一抓握成功概率、物件之一包裝類型、物件之一尺寸、相對於一臨限值之一預期夾持強度等來判定)。末端執行器之定位可包含控制機器人手臂或機器人手臂之一腕部以便使末端執行器正交於物件之一表面。 •   更新機器人系統偵測一空狹槽或托盤之能力。例如,由機器人系統使用以識別一空狹槽/托盤之一空狹槽/托盤之定義係隨時間更新。
在各項實施例中,待單分之一任意物件混合可包含各種形狀及大小之包裹、包裝及/或信件。一些物件可為標準包裝,其等之一或多個屬性可為已知的,其他屬性可為未知的。在各項實施例中,使用感測器資料(諸如影像資料)來辨別個別物件(例如,經由影像分段)。可(例如)藉由將一物件辨識為一標準或已知類型及/或將可見物件邊界擴展至邏輯估計範圍(例如,外推以在一經遮擋隅角處相接之兩條邊緣)來估計部分經遮擋物件之邊界。在一些實施例中,針對各物件估計一重疊程度(即,由其他物件遮擋),且在選擇嘗試抓握之下一物件時考量該重疊程度。例如,對於各物件,可運算一評分以估計抓握成功之概率,且在一些實施例中,至少部分藉由由其他物件重疊/遮擋之程度來判定該評分。較少遮擋之物件可更有可能被選擇(例如,其他考量為相同的)。
若一源堆/流具有待單分之一任意物件混合,則該源堆/流通常包含具有不同類型之包裝(諸如一紙板箱包裝、一紙信封包裝、一塑膠袋包裝(例如,聚乙烯袋)等)之物件。機器人系統可基於自感測器獲得之視覺資料或基於在機器人手臂試圖拾取一物件時在末端執行器與該物件之間獲得之一壓力來判定物件之包裝。感測器資料可用於辨別對應於源堆/流中之一特定物件之一包裝類型。在一些實施例中,機器人系統至少部分基於對應於物件之包裝類型來判定用於抓握物件之一策略。例如,包裝於一塑膠袋中之相對較重物件通常將在末端執行器吸盤之間經歷「***(tenting)」。***可引起來自機器人手臂之末端執行器之次優吸力,且因此此一物件之抓握係次優的。根據各項實施例,回應於判定物件相對較重(例如,重量超過一預定義臨限值)且物件被包裝於一塑膠袋中,或回應於判定在抓握物件時引起***,機器人結構執行改變或適應「***」或物件包裝之類型之判定的一主動措施。作為一實例,機器人結構執行部分提起包裝並包裝自滑槽拖動至輸送結構中之對應狹槽之一主動措施。
機器人系統可基於物件之一包裝類型來判定一路徑或軌跡(或機器人手臂/末端執行器在接近用於抓握之物件時之一軌跡)以便避免***或以其他方式改良對物件之一抓握。作為一實例,將機器人手臂(例如,一腕部)及/或末端執行器控制為正交於自其抓握物件之物件之一表面。作為另一實例,可判定機器人手臂及/或末端執行器之路徑或軌跡以在抓握物件之前將一物件碰倒或以其他方式重新定位物件。
在各項實施例中,多個3D及/或其他攝影機可用於產生影像資料。可產生場景之一3D視圖,及/或在一些實施例中,使用一攝影機組合以自不同角度觀察場景,且選擇(例如)相對於一工作區及/或該工作區中之一或多個特定物件被遮擋最少之攝影機並結合一或多個物件之抓握及移動來使用。影像資料可用於偵測滑槽上或工作區內之雜物、通過工作區之物件之滑槽流動中之一堵塞、由機器人結構在一選定物件之單分期間抓握之物件之一數目、佔用輸送結構上之狹槽之一或多個物件之一特性等。在一些實施例中,影像資料係用於判定工作區中之一或多個物件之一特性(例如,一屬性)。作為一實例,可結合判定(例如,估計)一物件之一高度或尺寸來使用影像資料。
在各項實施例中,多個攝影機伺服許多目的。首先,其等為場景提供一更豐富的全3D視圖。接著,其等內聚地操作以在從一包裝反射並進入一攝影機中之光可干擾該攝影機之操作時最小化歸因於包裝發亮引起之錯誤;在此情況下,在一不同位置處之另一攝影機提供一備份。在一些實施例中,其等可由判定哪一攝影機具有用於拾取一特定包裝之最佳視角及/或最低錯誤率之一預測視覺演算法選擇性地觸發;因而,各包裝具有觀察其之最佳攝影機。在一些實施例中,一或多個攝影機安裝於一經致動基座上,系統可改變該經致動基座之位置及定向以提供一包裝之一更佳感知(例如,視圖)。在一些實施例中,一或多個攝影機安裝於機器人結構上(例如,在機器人手臂之末端執行器上等)。
在各項實施例中,由攝影機伺服之另一目的係偵測機器人操作中之任何種類之不可預見錯誤或對環境之任何破壞。放置於機器人上及環境上之攝影機具有不同錯誤及準確度輪廓。機器人上之攝影機可更準確,因為其等剛性地固定至機器人,但因為使用此等攝影機需要機器人減速或停止而使用速度較慢。環境中之攝影機具有一穩定視野且實際上更快,因為機器人可在一攝影機拍攝一照片時執行多項任務並做其他事情。但若有人移動或搖晃攝影機支架,則攝影機可變得與機器人不同步且引起錯誤。在各項實施例中,來自機器人及非機器人攝影機之影像經組合(例如,偶爾或在一包裝丟失時)以偵測機器人是否與非機器人攝影機同步。若判定攝影機不同步,則機器人採取校正行動,諸如執行一校準或同步化程序,警示一人類操作員等。在一些實施例中,一攝影機可不剛性地安裝於一機器人手臂上,且在一些此等實施例中,攝影機上之陀螺儀及/或加速度計可用於過濾或補償安裝基座之運動。
根據各項實施例,系統200可包含不同於複數個攝影機或除了複數個攝影機以外之一或多個感測器,諸如一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器及類似者之一或多者。自各種其他感測器接收之資訊係用於判定待單分之物件之一或多個屬性及/或工作區內之另一物件或物體之屬性等。
參考圖2A,在各項實施例中,機器人手臂202係由一或多個馬達(例如,在各可移動接頭或安裝位置處之一或多個馬達)驅動。在一些實施例中,驅動機器人手臂202 (例如,在機器人手臂試圖單分一物件時移動機器人手臂)所需之工作係指示待單分之物件之一或多個特性。例如,在一些實施例中,可基於在物件處於其抓握中時驅動機器人手臂202所需之工作來運算(或估計)物件之一重量。在各項實施例中,使用一電流感測器、一電壓感測器、一功率感測器及/或類似者或其等之某一組合來量測驅動機器人手臂202所需之工作。回應於判定在單分期間之物件之重量,機器人系統至少部分基於物件之重量來判定待單分之一物件之一路徑/軌跡。機器人系統可執行適應物件之重量之一主動措施,舉例而言,諸如回應於判定物件之重量來更新路徑或軌跡。在一些實施例中,回應於判定物件之重量大於一預定義臨限值,機器人系統200調整計劃以經由部分拾取物件並將物件拖動至輸送結構上之對應位置來單分物件(例如,與完全拾取物件並移動手臂以將物件放置於輸送結構上相反)。在一些實施例中,回應於判定物件之重量,機器人結構調整移動機器人手臂(及物件)之速度。例如,物件之重量愈大,在機器人手臂202移動時物件與末端執行器204之間的剪切力愈大。此外,剪切力可隨著操作機器人手臂之速度(例如,機器人手臂移動物件之速度)增加而增加。因此,機器人系統200可至少部分基於物件之重量來控制機器人手臂202之速度以確保物件保持由機器人手臂牢牢抓握。儘管本文之描述描述基於使用一電流感測器、一電壓感測器、一功率感測器及/或類似者來量測重量,但亦可使用在機器人手臂202或末端執行器204中組態之一力感測器來量測重量。然而,力感測器相對昂貴且因此低階硬體資訊(諸如馬達轉矩或由馬達使用之工作之一量度)係判定(例如,估計)物件之重量所藉助之一有效方式。
與來自一或多個感測器陣列之一輸出有關之資訊可用於判定物件在工作區中之一位置、在物件被抓握及/或由機器人手臂移動時物件之一位置,及/或機器人手臂之一位置(例如,基於來自一或多個感測器陣列之一感測器子集之一輸出相較於一或多個感測器陣列之另一感測器子集的一判定)。作為另一實例,與來自一或多個感測器陣列之一輸出有關之資訊可用於判定待單分之一物件及/或工作區內之另一物件或物體之一尺寸或大小。可結合判定待單分之物件及/或工作區內之另一物件或另一物體之一高度來使用自一或多個感測器陣列接收之資訊。在一些實施例中,機器人系統至少部分基於待單分之物件及/或工作區內之另一物件或另一物體之高度來判定一路徑或軌跡(或更新該路徑或軌跡)。例如,機器人系統至少部分基於輸送機上之一或多個其他物件之一高度(或其他尺寸)來判定輸送機上之將放置物件之一位置。計劃將一物件放置於鄰近於包括一相對較大(例如,高、寬等)物件之另一狹槽/托盤之一狹槽/托盤中可增加單分期間之一碰撞之可能性。另外,輸送機上之一相對較大物件可阻礙機器人系統獲得鄰近物件之資訊之能力。視覺系統之視線可由一相對較大物件阻擋且因此感測器資料可不包含鄰近物件(或緊靠大物件之其他物件)之準確資訊。作為另一實例,若物件在面向一相對較大物件之一側上或在靠近該大物件之一表面上包含一識別符或標記,則視覺系統可能無法定位或讀取該識別符或標記。
進一步參考圖2A,在所展示之實例中,系統200進一步包含可供一人類工人220使用以藉由遙操作來操作機器人手臂202、末端執行器204及輸送機208之一或多者之一按需遙操作裝置218。在一些實施例中,控制電腦212經組態以嘗試以一全自動化模式抓握及放置物件。然而,若在嘗試以全自動化模式操作之後,控制電腦212判定其不具有可用於抓握一或多個物件之(進一步)策略,則在各項實施例中,控制電腦212發送一警示以經由遙操作(例如,由人類操作員220使用遙操作裝置218)獲得來自一人類操作員之幫助。例如,在一些實施例中,回應於偵測到影響通過滑槽206之物件流之一狀態或條件,控制電腦212可嘗試執行促進單分之一或多個動作。若判定對經偵測狀態或條件作出回應之全自動化嘗試尚未解決該狀態或條件,則控制電腦212可提示人類操作員220 (例如)使用按需遙操作裝置218經由遙操作來解決該狀態或條件。在各項實施例中,控制電腦212可顯示識別狀態或條件及/或呈現人類可選擇選項以控制機器人手臂202、末端執行器204及/或如本文中所揭示之其他元件及工具(例如,鼓風機、振動器、滑槽輸送機等)以改變狀態或條件的一使用者介面或其他介面。
在各項實施例中,控制電腦212使用來自攝影機(諸如攝影機214及216)之影像資料以向人類工人220提供場景之一視覺顯示以促進遙操作。例如,控制電腦212可顯示滑槽206中之物件堆之一視圖。在一些實施例中,藉由控制電腦212對由攝影機214及216產生之影像資料執行分段處理以辨別物件/物體邊界。遮蔽技術可用於(例如)使用不同色彩來突顯個別物件。操作員220可使用場景之視覺顯示來識別待抓握之(若干)物件且使用遙操作裝置218來控制機器人手臂202及末端執行器204自滑槽206拾取該(等)物件並將各物件放置於輸送機208上之一對應位置中。在各項實施例中,一旦提示人類干預之(若干)物件已被放置於輸送機上,系統200便恢復全自動化操作。在各項實施例中,在人類干預之情況下,機器人系統觀察人類工人(例如,手動任務完成、使用一機器人手臂及末端執行器經由遙操作之任務完成)且嘗試學習在未來以一自主模式(更佳)完成任務之一策略。例如,系統可學習抓握一物件之一策略,例如,藉由觀察物件上之一人類工人抓握物件所處之位置及/或藉由記住該人類工人如何經由遙操作使用機器人手臂及末端執行器來抓握物件。
在一些實施例中,系統200回應於判定系統200之操作中存在一異常而調用來自人類操作員220之幫助。一異常之一實例係缺乏在物件之單分期間在末端執行器204與物件之間獲得之一臨限壓力。回應於偵測到在末端執行器204與物件之間獲得之壓力小於一臨限壓力值,機器人系統200可結合評估機器人系統200是否正常執行來執行一診斷程序。例如,系統200可對末端執行器204接合一物件並獲得一預定臨限壓力值之能力執行一診斷。回應於判定系統200未正常執行(例如,末端執行器204無法接合一物件並獲得一預定臨限壓力值),系統200調用來自人類操作員220之幫助。在一些實施例中,控制電腦212向人類操作員220發送一警示。該警示可指示問題之基礎(例如,末端執行器無法接合物件並獲得一預定臨限壓力值之一指示)。例如,警示可向人類操作員220提供一推薦或請求之補救行動。
圖2B係繪示根據各項實施例之一機器人單分系統之一圖式。在所展示之實例中,圖2A之機器人單分系統已擴展為包含複數個單分站。明確言之,除了經組態以自滑槽206拾取物件並將各物件放置於分段輸送機208上之一對應可用及/或經指派位置之機器人手臂202之外,圖2B中所展示之系統包含三個額外站:經定位及組態以分別自滑槽236、238及240拾取/放置物件之機器人手臂230、232及234。除了攝影機214及216之外,亦包含額外攝影機224及226以提供完整場景(包含四個站/滑槽206、236、238及240以及輸送機208之各者)之一3D視圖。
在各項實施例中,控制電腦212協調四個機器人手臂202、230、232及234以及相關聯末端執行器連同輸送機208之操作,以依達成系統之一所要集體處理量(例如,滿足一處理量臨限值之一集體處理量等)之一方式自滑槽206、236、238及240拾取/放置物件至輸送機208。在一個站處之單分期間之一物件之路徑或軌跡可至少部分基於待在另一站處單分之一物件之一屬性,或至少部分基於待在另一站處單分之一物件之一路徑或軌跡來判定。例如,可判定待單分之一物件之路徑或軌跡以便避免與待單分之另一物件之路徑或軌跡之一碰撞(例如,相交)。
雖然在圖2B中展示之實例中,各站具有一個機器人手臂,但在各項實施例中,兩個或更多個機器人可部署於一站處,以避免機器人干擾彼此之操作及移動且最大化其等集體處理量(或獲得諸如與一集體處理量臨限值有關之一所要集體處理量),包含藉由避免及/或管理拾取及放置同一物件之爭用之一方式在一相關聯控制電腦(諸如在圖2B中所展示之實例中之控制電腦212)的控制下操作。在一些實施例中,在同一工作區操作之複數個機器人手臂獨立地工作以單分複數個物件。該複數個機器人手臂之一或多者可回應於偵測到兩個機器人手臂之間的一碰撞或一碰撞可能性而執行用以避免該兩個機器人手臂之間的一碰撞之一主動措施。例如,控制電腦212可協調複數個機器人之操作以使複數個機器人能夠獨立地操作,同時確保複數個機器人及/或由複數個機器人抓握之物件在單分期間不相互碰撞。主動措施可包含更新用於單分物件之一計劃,諸如改變一路徑或軌跡連同待單分之一物件。作為一實例,機器人(或控制電腦212)存取資訊,自該資訊判定其等各自位置及一或多個其他機器人之位置,且控制機器人以避免在一特定時間在其等各自位置與一或多個其他機器人之位置之間的一相交。在一些實施例中,一第一機器人保留將在一物件之單分期間由該第一機器人使用之一空域(例如,一特定位置)。該空域可包含將沿著其單分物件之路徑或軌跡。結合一第二機器人對一物件之單分進行排程,該第二機器人至少部分基於由第一機器人保留之空域來判定單分物件之計劃。例如,結合對物件之單分進行排程,第二機器人判定計劃不能包含通過由第一機器人保留之空域之移動且第二機器人判定在如此保留空域之時間期間不需要第二機器人或物件移動通過由第一機器人保留之空域的一計劃。第二機器人基於經保留用於單分第一物件之空域及/或第二物件或第一物件之一屬性(諸如第一物件或第二物件之一大小)來判定將沿著其單分第二物件之一路徑或軌跡。
在各項實施例中,一排程器協調複數個機器人(例如,在複數個站之各者處工作之一或多個機器人)之操作以在機器人之間無衝突的情況下達成所要處理量,諸如一個機器人將一物件放置於該排程器已指派給另一機器人之一位置中。所要處理量可為超過一預定處理量臨限值之一集體處理量。
如本文中所揭示之一機器人系統可協調多個機器人之操作以自一源貯存箱或滑槽一個接一個地拾取物件並將物件放置於一輸送機或其他裝置上之一經指派位置上以將物件移動至機器識別及/或分類之下一階段。在一些實施例中,在一工作區處工作之複數個機器人之至少一子集之各者獨立於該複數個機器人之其他機器人拾取一物件,且判定用於單分該物件之一對應計劃。複數個機器人之至少子集可按一預定義順序拾取使得沒有兩個機器人同時選擇或拾取一物件。複數個機器人之至少子集之各者可基於在此選擇時當前可用之物件來選擇或拾取一物件。因此,複數個機器人之至少兩個子集之在一第一機器人之後拾取之一第二機器人將選擇不同於由該第一機器人選擇或拾取之物件之一物件來單分。
系統200可包含可自同一滑槽或其他源容器拾取之多個機器人。在圖2B中所展示之實例中,例如,機器人手臂202可經組態以自滑槽206或滑槽236拾取。同樣地,機器人手臂230可自滑槽236或滑槽238拾取且機器人手臂232可自滑槽238或滑槽240拾取。在一些實施例中,經組態以自同一滑槽拾取之兩個或更多個機器人手臂可具有不同末端執行器。如本文中所揭示之一機器人單分系統可選擇最適於拾取及單分一給定物件之機器人手臂。例如,系統判定哪些機器人手臂可到達物件且選擇具有最合適末端執行器及/或成功地抓握物件之其他屬性之一個機器人手臂。
雖然圖2B中展示固定機器人手臂,但在各項實施例中,一或多個機器人可安裝於一行動輸送工具上,諸如一機器人手臂安裝於經組態以沿著一軌條、軌道或其他導引件移動之一底盤上,或一機器人手臂安裝於一行動推車或底盤上。在一些實施例中,可使用除一機器人手臂之外之一機器人工具致動器。例如,一末端執行器可安裝於一軌條上且經組態以沿著該軌條移動,且該軌條可經組態以在垂直於軌條之一或多個軸上移動以使末端執行器能夠移動以如本文中所揭示般拾取、平移及放置一物件。
根據各項實施例,如本文中所揭示之一機器人單分系統(諸如圖2A之系統200或圖2B之多站系統)管理與構成該系統之一或多個機器人之操作及/或輸送結構之一狀態有關之一分佈式資料結構。例如,該分佈式資料結構可包含與輸送結構中之各狹槽相關聯之一或多個欄位。根據各項實施例,分佈式資料結構以遠超過系統中之機器人操作之速度之一速度操作。例如,分佈式資料結構以大約1 µs或1 ms操作(例如,更新),且機器人實體操作/移動之時間係大約100 ms。在一些實施例中,用於一特定機器人之控制迴路實質上等於或大約800 Hz,且使控制電腦(例如,調度器)發送目標至機器人之控制迴路實質上等於或大約100 Hz。資料結構可為原子的,因為若一個機器人正在更新一狹槽之狀態,則另一機器人將無法讀取該資訊直至寫入完成。因此,可基於一機器人之操作或與一機器人相關聯之一單分計劃來更新分佈式資料結構。由於機器人操作之速度比分佈式資料結構操作之速度慢,因此相對較快地更新分佈式資料結構以反映工作區之狀態(例如,輸送結構之狀態)之變化,且至機器人結合判定用於單分一物件之一計劃/策略(例如,選擇/索要輸送機中之一狹槽)來獲得及/或使用來自分佈式資料結構之資訊時,分佈式資料結構有可能已用最新狀態更新。在一些實施方案中,分佈式資料結構之相對速度降低兩個機器人同時索要輸送機上之一狹槽且引起分佈式資料結構中之一故障的可能性。因此,分佈式資料結構可基於一機器人之操作或與一機器人相關聯之用於單分之一計劃來更新。在各項實施例中,包括與一輸出輸送機相關聯之一系統之各(大部分)獨立操作之單分機器人用與一計劃有關之資訊或用與工作區所相關聯之一或多個特性有關之資訊(例如,輸送機中之一狹槽是否由系統中之一機器人佔用或索要以用作將一物件放置於輸送機上之一計劃目的地)來更新分佈式資料結構。在一些實施例中,若機器人結合將資訊寫入至分佈式資料結構(例如,索要輸送機上之一狹槽以供其使用)之一嘗試而接收一錯誤,則機器人等待一預定時間間隔且重新嘗試將此資訊寫入至分佈式資料結構。若由於另一機器人已將資料寫入至該位置(例如,已索要輸出輸送機上之一相關聯狹槽)而無法寫入資料,則機器人藉由讀取資料結構中之另一位置來選取經判定為可用之另一狹槽。根據各項實施例,回應於由一個機器人更新資料結構,相對於系統200內之一或多個其他機器人自動地更新資料結構。例如,回應於判定執行一更新(例如,一寫入或刪除操作),將該更新分配至系統200內之其他機器人。資料結構可為一系統內之複數個機器人可存取(例如,讀取、寫入等)之一共用資料結構。在一些實施例中,一分佈式資料係託管於一個機器(例如,電腦系統)上,且一系統內之所有機器人具有至該機器(例如,電腦系統)之一主動網路連接且可個別地讀取/寫入資料(例如,至資料結構)。與資料結構有關之資訊可儲存於一伺服器上。
在各項實施例中,一機器人可用與一計劃有關之資訊或用與工作區所相關聯之一或多個特性有關之資訊(例如,一狹槽是否被佔用)來更新分佈式資料結構。例如,回應於機器人更新用以單分一物件之一計劃(例如,將沿著其單分物件之路徑或軌跡),機器人可用與一計劃有關之資訊或用與工作區所相關聯之一或多個特性有關之資訊來更新分佈式資料結構。若機器人結合將資訊寫入至分佈式資料結構之一嘗試而接收一錯誤,則機器人等待一預定時間間隔且重新嘗試將此資訊寫入至分佈式資料結構。根據各項實施例,回應於在一個機器人處更新資料結構,對系統200內之一或多個其他機器人自動地更新資料結構。例如,回應於判定執行一更新(例如,一寫入或刪除操作),將該更新分配至系統200內之其他機器人。
根據各項實施例,分佈式資料結構包括與輸送結構中之一狹槽相關聯之一欄位,該欄位係用於結合機器人對一物件之單分指示該狹槽是否被佔用或保留以用於該物件。例如,在與一狹槽相關聯之欄位中之一值係指示該狹槽是否可保留或由另一機器人用於對一物件進行排程。在一些實施例中,當一機器人判定(或更新)單分一物件之一計劃時,保留輸送結構上之一狹槽。至少部分基於與輸送結構之狀態有關之分佈式資料結構來保留輸送結構中之該狹槽。例如,可保留與指示狹槽係空的或未保留之一欄位相關聯之一狹槽以用於一物件之單分。有時,一機器人手臂可在不同於對應於單分計劃之一狹槽之一狹槽中,或以物件跨越兩個狹槽(例如,相鄰狹槽)之一方式錯誤地釋放一物件。對應機器人(或一下游機器人)可偵測一狹槽在其中具有與分佈式資料結構中之對應欄位(例如,指示狹槽係空的或未保留之此欄位)相矛盾之一物件。回應於偵測到狹槽在其中具有與分佈式資料結構中之對應欄位相矛盾之一物件,機器人系統更新資料結構以指示狹槽被佔用或保留。
根據各項實施例,分佈式資料結構包含與一時間戳記、輸送機之一速度及輸送機中之一狹槽之一或多個特性(例如,狹槽是否被佔用或保留之一指示)有關之資訊。分佈式資料結構可包含與輸送機上之一狹槽或托盤內之一或多個物件之一屬性及/或待由機器人系統內之一機器人單分之一物件之一屬性有關的資訊。機器人系統可至少部分基於分佈式資料結構來判定用於將來自一源堆/流之一物件單分至輸送機中之一狹槽之一計劃。例如,系統200基於時間戳記及輸送機之速度來判定其中可放置自源堆/流拾取之一物件之一組狹槽。系統200可自該組狹槽當中選擇空的或未保留之一狹槽作為其中將單分物件之一狹槽。使用時間戳記及輸送機之速度,此係因為系統200可基於操作對應機器人來判定一或多個狹槽,可引起經單分之物件之路徑或軌跡與該一或多個狹槽相交。
圖3係根據一機器人單分系統之各項實施例之一階層式排程系統之一圖式。在各項實施例中,圖3之階層式排程系統300係至少部分在一電腦(諸如圖2A及圖2B之控制電腦212、圖5A及圖5B之控制電腦512、圖8A之控制電腦815、圖9之控制電腦917及圖10A之控制電腦1028)上實施。在所展示之實例中,階層式排程系統300包含經組態以藉由協調複數個機器人單分站及機器人單分站經組態以在其上放置物件之一分段輸送機(或類似結構)之操作來最佳化處理量(或獲得一所要處理量)的一全域排程器322。根據各項實施例,全域排程器322經組態以協調一單個工作區內之複數個機器人手臂之操作以確保獲得一所要處理量,同時確保複數個機器人不碰撞。全域排程器322可經組態以回應於判定複數個機器人手臂(例如,在一單個工作區內操作)已碰撞或預期碰撞(例如,若複數個機器人將繼續實施其等各自用於單分一物件之計劃或策略)而實施一主動措施。該主動措施可包含引起更新待由複數個機器人手臂單分之一物件之一或多個路徑或軌跡以確保避免預期碰撞。全域排程器322可實施為一處理模組或在一電腦上運行之其他軟體實體。全域排程器至少部分藉由監測及視需要控制及/或以其他方式提供輸入至複數個機器人單分站排程器324、326、328及330來監督及協調機器人單分站當中的工作。
在一些實施例中,一機器人單分站包含經控制以單分一工作區內之一物件之一單個機器人手臂,且一工作區可包含複數個機器人單分站。在一些實施例中,一機器人單分站包含經協調以單分一工作區內之複數個物件之複數個機器人手臂。在一些情況下,若機器人單分站包含複數個機器人手臂,則一特定工作區可包含一單個機器人單分站。
機器人單分站排程器324、326、328及330之各者係與一對應機器人單分站相關聯且各控制及協調一或多個機器人手臂及相關聯末端執行器之操作以自一對應滑槽或其他物件容器拾取物件並將其等單獨放置於一分段輸送機或類似結構上。機器人單分站排程器324、326、328及330之各者分別與一組對應一或多個站感測器332、334、336及338相關聯,且各使用由其站之感測器產生之感測器資料來執行其機器人單分站處之自動化單分。在一些實施例中,各實施及執行圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850、圖8C之程序875及圖10B之程序1050以及圖10C之程序1075。
在各項實施例中,機器人單分站排程器324、326、328及330之各者向全域排程器322報告以下一或多者:影像及/或其他站感測器資料;物體識別、抓握策略及成功概率資料;拾取/放置計劃資訊;路徑或軌跡資訊;及預期物件單分處理量資訊。全域排程器322經組態以使用自機器人單分站排程器324、326、328及330接收之資訊以及自其他感測器340 (諸如指向分段輸送機及/或工作區之未由站感測器覆蓋或很好或完全地覆蓋之其他部分之攝影機)接收之感測器資料,以協調各在其站特定排程器324、326、328及330的控制下之各自機器人單分站之工作,及經由輸送機控制器342控制分段輸送機之操作(例如,速度),以便最佳化(例如,最大化)系統之集體單分處理量。
在各項實施例中,全域排程器322採用一或多種技術以在使用複數個機器人執行單分時實施包括機器人單分系統之複數個機器人之間的碰撞避免,(例如)以最大化整體處理量或達到一所要整體處理量位準。例如,一特定工作區可包含操作以單分該特定工作區內之物件之複數個機器人(例如,該複數個機器人自一滑槽中之同一源堆/流拾取物件並將各自物件單獨放置於輸送結構之對應狹槽中)。由於工作區包含單分其中之物件之複數個機器人手臂,因此機器人手臂可具有彼此重疊之各自運動範圍。在一些實施例中,全域排程器322至少部分基於自機器人單分站排程器324、326、328及330接收之資訊以及自其他感測器340 (諸如指向分段輸送機及/或工作區之未由站感測器覆蓋或很好或完全地覆蓋之其他部分之攝影機)接收之感測器資料來偵測一預期碰撞事件,以協調各自機器人單分站之工作。根據各項實施例,全域排程器322可使用自各自機器人單分站排程器324、326、328及330接收之資訊來判定複數個機器人之位置及判定複數個機器人之兩者將彼此碰撞或一機器人將與機器人操作所處之工作區內之另一物體碰撞之一概率。例如,全域排程器至少部分基於至少一個機器人之一位置及用於至少一個機器人之一路徑或策略(用於單分一物件)來偵測一預期碰撞事件。在一些實施例中,基於一第一機器人(或由該第一機器人抓握之物件)之一位置或路徑經計劃以在一特定時間與一第二機器人(或由第二機器人抓握之物件)之一位置或路徑相交之一判定來偵測預期碰撞事件。
在一些實施例中,在其中複數個機器人自一共同源(諸如同一滑槽)拾取物件之一工作區中操作之各機器人大部分獨立地操作以自該源識別及抓握待由該機器人拾取之物件。可藉由組態各機器人以自滑槽或其他來源之可能重疊的經指派區域拾取來最小化或避免衝突。例如,各機器人可(主要)自滑槽之最靠近該機器人之側拾取。或者,在一些實施例中,一個機器人可經組態以(主要)自滑槽之後部(最遠離目的地輸送機)拾取且另一機器人自滑槽之前部(最靠近目的地輸送機)拾取。在一些實施例中,在一經偵測碰撞(風險)之情況下,各機器人實施一隨機等待時間間隔並恢復操作。若不同/隨機等待導致無碰撞風險,則恢復並繼續操作。在一些實施例中,可應用一啟發法或邏輯來解決/避免碰撞,諸如藉由容許機器人標定在滑槽中更靠後之一物件以首先到達並抓握,接著機器人標定更靠近前部(即,更靠近目的地輸送機)之一物件。在一些實施例中,自更靠近滑槽之端部拾取之機器人可首先移動以放置其物件,接著為自更靠後抓握一物件之機器人。
在一些實施例中,在一單個工作區處操作之複數個機器人操作以並行實施各自程序以單分物件,且複數個機器人之各者同時操作以實施各自程序之一步驟序列中之一特定步驟或一組特定步驟以在複數個機器人之任一者移動至該步驟序列中之下一步驟或下一組步驟之前單分物件。例如,複數個機器人之各者操作以自一源堆/流拾取一物件且複數個機器人之各者等待直至(若干)其他機器人相應地在進展至程序中之下一步驟或步驟序列之前拾取一物件以單分來自工作區之物件。作為另一實例,機器人之各者操作以將物件自滑槽區域(自其抓握一物件)移動至輸送結構處之一特定位置(其處將放置物件),且複數個機器人之各者等待直至(若干)其他機器人相應地在進展至程序中之下一步驟或步驟序列之前將其等抓握中之物件移動至輸送結構處之對應位置以單分物件(例如,將物件放置於輸送結構上)。以前述方式,複數個機器人獨立地操作以判定用於單分一工作區內之物件之計劃及策略,然而,在進展通過單分程序時協調複數個機器人。根據各項實施例,基於一第一機器人(或由該第二機器人抓握之物件)之一位置或路徑經計劃以在一單分序列中之一特定步驟與一第二機器人(或由第一機器人抓握之物件)之一位置或路徑相交之一判定來偵測一碰撞事件。以此方式,一機器人之一位置或路徑僅由一單個機器人在單分程序中之一特定步驟或一組特定步驟期間使用。
根據各項實施例,機器人單分站排程器324、326、328及330向全域排程器322註冊用於操作對應機器人以單分物件之計劃或策略,或以其他方式將此等計劃或策略儲存於可供全域排程器322存取之一儲存位置中。機器人單分站排程器324、326、328及330可獨立地判定用於操作對應機器人以單分物件之計劃或策略。在一些實施例中,儘管機器人單分站排程器324、326、328及330獨立地操作以判定其等各自計劃或策略,但機器人單分站排程器324、326、328及330在不同時間判定其等各自計劃或策略(例如,使得未選擇同一物件以供兩個機器人單分等)。在一些實施例中,機器人單分站排程器324、326、328及330獨立地操作以判定其等各自計劃或策略,且機器人單分站排程器324、326、328及330在不同時間向全域排程器322註冊其等各自計劃或策略,且若在向全域排程器322註冊其計劃或策略期間,此計劃或策略與一現有經註冊計劃或策略衝突,則全域排程器322可向一機器人單分站排程器發送一故障。其中計劃或策略被視為衝突之例項之實例包含與來自工作區之同一物件之單分有關之複數個計劃或策略、使用同一路徑或軌跡之複數個計劃或策略、使用相交路徑或軌跡之複數個計劃或策略、包含將機器人手臂或物件之一部分移動至同一位置之複數個計劃或策略、選擇輸送結構處之其中將放置對應物件之同一狹槽之複數個計劃或策略等。計劃或策略之間的各種其他衝突係可能的。
儘管機器人單分站排程器324、326、328及330獨立地操作以判定用於操作對應機器人以單分物件之計劃或策略,但在各項實施例中,全域排程器322對整個機器人系統提供監督以偵測一預期碰撞事件及實施防止該預期碰撞事件之一主動措施。在一些實施例中,實施主動措施包含向一機器人單分站排程器(例如,對應於經識別為與預期碰撞事件相關聯之機器人之至少一者)發送一故障。例如,回應於向機器人單分站排程器發送該故障,全域排程器322可需要機器人單分站排程器更新其當前計劃或策略(例如,以避免預期碰撞事件之一方式)。發送至機器人單分站排程器之故障可包含故障原因之一指示(例如,預期碰撞事件之一指示,及/或與預期碰撞事件有關之資訊,諸如機器人單分站排程器之計劃或策略與另一機器人單分站排程器之計劃或策略衝突之方式之一指示)。在一些實施例中,回應於全域排程器322判定用於一第一物件之單分之一路徑或軌跡與另一物件之一路徑或軌跡或與工作區內之一物體之一位置相交,全域排程器322向機器人單分站排程器發送一故障以使機器人結構單分第一物件且引起此機器人單分站排程器以避免此一碰撞之一方式更新用於單分第一物件之路徑(例如,路徑或軌跡)。
在各項實施例中,全域排程器322採用一或多種技術以最佳化包括機器人單分系統之複數個機器人之使用以執行單分,例如,最佳化整體處理量或達到一所要整體處理量位準。例如,若依序存在四個機器人,則可控制前導(或其他上游)機器人以依留出開放狹槽之一方式放置包裝,使得一下游機器人不等待一空狹槽。此方法產生影響,因為下游機器人由於包裝流等而等待某一未知/隨機時間量。因此,一初級策略(如前導機器人放置至每第4個空狹槽中)可能無法最佳化集體處理量。有時,若其包裝未流動,則前導機器人將2至3個包裝依序放入連續狹槽中可為較佳的,但總體上,系統在瞭解各站處之狀態及流之情況下做出此等決策。在一些實施例中,為下游機器人留出開放狹槽之最佳策略係基於下游機器人對一開放狹槽之一預期請求(例如,依據其等包裝流而變化)。在一些實施例中,來自本地站排程器之資訊係用於預期各站之最大處理量並控制輸送機速度及上游機器人留出多少個空狹槽以確保下游機器人可接取與其等(當前)能夠拾取/放置之速度成比例之空狹槽。在一些實施例中,當分段輸送機歸因於下游分類程序中之一些瓶頸而裝滿時,如本文中所揭示之一機器人單分系統可(例如)在其對應滑槽內部或在一附近集結區域中預單分一或多個包裝,同時追蹤各經預單分包裝之姿勢。一旦可自分段輸送機獲得一些空的空間,系統/站就將經預單分之包裝單獨且快速連續地移動至分段輸送機上,而無需額外視覺處理時間。
在一些實施例中,與機器人一起工作之人類之存在對放置及多機器人協調策略產生影響,因為機器人或相關聯之電腦視覺或其他感測器系統現亦必須觀察人類的行為並即時調適機器人之放置。例如,若一人類接管經排程以由一機器人使用之一輸送帶狹槽,則系統必須相應地調整其全域及本地排程器/計劃。在另一實例中,若一人類破壞一機器人之經拾取包裝且引起其註冊為未經拾取,則系統調適以校正錯誤。或者,若一人類校正一機器人在拾取時之錯誤(命令機器人將一包裝放入狹槽A中但不小心將物件跨越狹槽A及鄰近狹槽B放置;且人類將物件放置至狹槽B中,儘管系統記憶體顯示該包裝係在狹槽A中),系統必須觀察人類之動作且調整下游機器人動作。
在各項實施例中,全域排程器322可引起一站在一給定時間比其最大可能處理量更慢地操作。例如,全域排程器322可明確指示本地站排程器(例如,324、326、328及330)減慢及/或可使更少狹槽可用於本地站,例如,明確地藉由為站指派更少狹槽或間接地,諸如藉由容許上游站填充更多狹槽。
在各項實施例中,全域排程器322回應於偵測與工作區中之一或多個物件相關聯之一狀態或條件而向一或多個本地站排程器(例如,324、326、328及330)傳送故障。可結合引起本地站排程器之一或多者執行改變或適應經偵測狀態或條件(例如,改變或更新用於單分之一計劃以修改將沿著其單分物件之路徑或軌跡)之一主動措施來傳送故障。例如,若全域排程器322判定一機器人將兩個物件放置至輸送機之一單個狹槽中(例如,基於與輸送機有關之感測器資料,或回應於自對應於機器人之機器人結構接收一指示),則全域排程器322向在將兩個物件放置於單個狹槽中之機器人下游或在包括兩個物件之狹槽下游之一或多個本地站排程器發送一故障。回應於接收該故障,一本地站排程器可判定用以實施自狹槽拾取兩個物件之一者並將物件單獨放置於輸送機上之另一狹槽中(及用該(等)物件與該(等)狹槽之間的一關聯來更新分佈式資料結構)之一主動措施的一計劃或策略。
在一些實施例中,全域排程器322回應於放置於輸送機上之一物件跨越兩個不同狹槽之一判定向一或多個本地站排程器(例如,324、326、328及330)傳送一故障。全域排程器322傳送該故障以引起在物件下游之本地站排程器判定用以將物件重新定位至輸送機上之一單個狹槽中的一計劃或策略,且引起一對應機器人實施重新定位物件之該計劃或策略。在重新定位之後可用物件與物件佔用之狹槽之間的一關聯來相應地更新分佈式資料結構。
圖4A係根據各項實施例之用以拾取及放置物件以用於分類之一程序之一圖式。在一些實施例中,程序400係由操作以單分一工作區內之一或多個物件之一機器人系統(諸如圖2A及圖2B之系統200)實施。該機器人系統可包含操作以引起一機器人結構(例如,一機器人手臂)拾取及放置物件以用於分類之一或多個處理器。
在410,獲得與一工作區有關之感測器資料。在一些實施例中,一機器人系統自在系統內操作之一或多個感測器獲得與工作區有關之感測器資料。作為一實例,至少部分基於來自影像感測器(例如,2D或3D攝影機)、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器及類似者之輸出來獲得感測器資料。
根據各項實施例,與工作區有關之所獲得感測器資料包括自其可產生工作區之一模型之資訊。例如,與工作區相關聯之一或多個特性可至少部分基於感測器資料判定。可結合判定工作區內之一或多個物件(諸如滑槽之源堆/流中之物件,或由機器人手臂抓握之一物件,及已定位於輸送機上之一狹槽/托盤中之物件等)之至少一個特性(例如,屬性)來使用感測器資料。在一些實施例中,結合判定輸送結構之一或多個特性(諸如判定輸送機上之空的或未保留之狹槽,判定輸送機之一速度,及/或判定至少一個狹槽或已在輸送機上之至少一個物件之特性)來使用感測器資料。
在420,至少部分基於感測器資料來判定用以單分工作區中之一物件之一計劃或策略。在一些實施例中,一機器人系統判定用以自工作區中之一源堆/流拾取至少一個物件並將該至少一個物件單獨放置於輸送機上之一狹槽中的計劃或策略。在各項實施例中,在一逐機器人基礎上判定用以單分一或多個物件之計劃或策略,使得若機器人系統包含複數個機器人,則各機器人獨立於(若干)其他機器人操作。
根據各項實施例,至少部分基於感測器資料,諸如包含與存在於一工作區中之一物件(例如,待單分之物件及/或已定位於輸送機上之一物件)相關聯之資料之感測器資料來判定用以單分工作區中之一或多個物件之計劃或策略。例如,用以單分一或多個物件之計劃或策略包含選擇源堆/流內之待單分之一物件。可至少部分基於感測器資料自工作區內之其他物件或物體當中識別該選定物件(例如,可判定該物件及工作區內之其他物件或物體之邊界)。作為一實例,至少部分基於感測器資料來判定與選定物件有關之一或多個特性(或屬性)。與選定物件有關之該一或多個特性可包含物件之一尺寸、物件之一包裝、物件上之一或多個識別符或標記(例如,物件易碎之一指示符、物件上之一裝運標記等)、物件之一高度、物件之一長度、物件之一經估計重量及類似者,或其等之任何組合。作為另一實例,用以單分一或多個物件之計劃包含判定輸送結構(例如,輸送機上之一狹槽)上之機器人結構(例如,機器人手臂)將單獨放置物件之一位置。可至少部分基於一時間戳記、輸送機之一速度及輸送機中之一狹槽之一或多個特性(例如,狹槽是否被佔用或保留之一指示)及類似者或其等之任何組合來判定輸送結構上之將放置物件之位置。作為另一實例,用以單分一或多個物件之計劃或策略包含判定機器人手臂將在單分期間沿著其移動物件之物件之一路徑或軌跡。可至少部分基於工作區內之一或多個其他物體(諸如滑槽之一框架、源堆/流中之其他物件、輸送機上之物件、在工作區內操作之其他機器人、用於其他機器人之操作之一經保留空域、工作區內之感測器等)之一位置來判定將沿著其移動物件之物件之路徑或軌跡。例如,判定物件之路徑或軌跡以將包括一識別符(例如,一裝運標記)之物件之一部分移動至一掃描器能夠掃描該識別符之一區域,或判定物件之路徑或軌跡以最大化由一或多個掃描器沿著路徑或軌跡讀取物件上之識別符的一可能性。
在一些實施例中,用以單分一物件之計劃之判定包含適用機器人手臂抓握物件所藉助之一方式之一判定。用以單分物件之計劃可指示待用於自源堆拾取物件之一特定末端執行器,及結合抓握物件與該末端執行器相關聯之一或多個設定(諸如一抓握強度、施加於一吸取式末端執行器上之一壓力等)。用以單分物件之計劃可指示機器人手臂、機器人手臂上之一腕部及末端執行器之一或多者之一定向。在一些實施例中,末端執行器經定位以在抓握物件時正交於物件。為相對於物件如此定位末端執行器,機器人結構可控制以操作機器人手臂、機器人手臂上之一腕部及末端執行器之一或多者之定向。
在430,單分物件。在一些實施例中,回應於判定用於單分物件之計劃或策略而單分物件。例如,操作一機器人手臂以自工作區拾取一或多個物件並將各物件單獨放置於一單分輸送結構中之一對應位置中。物件之單分包括自工作區(例如,自源堆/流)拾取物件並將物件單獨放置於輸送結構上。機器人系統至少部分基於用於單分物件之計劃或策略來單分物件。例如,機器人系統根據用以單分物件之計劃或策略沿著一路徑或軌跡單分物件。
在440,判定是否將單分進一步物件。若存在更多物件,則執行步驟410、420及430之一進一步反覆,且執行連續反覆直至在440判定滑槽(或其他容器或源)中不存在更多物件有待拾取及放置。
圖4B係根據各項實施例之用以判定用以拾取及放置物件以用於分類之一計劃之一程序之一圖式。在各項實施例中,圖4B之程序420a實施圖4A之程序400之步驟420。
在421,產生工作區中之物件或工作區之至少部分之一模型。在一些實施例中,機器人系統產生工作區內之物件之模型。工作區內之物件之模型可為工作區(包含工作區內之一或多個物件)之一較大模型之部分。機器人系統使用至少部分基於自一或多個感測器(例如,視覺系統、感測器陣列、重量感測器、壓力感測器等)獲得之資訊判定之感測器資料來產生模型。模型可指示工作區之各種元件之一或多個特性,諸如滑槽上之物件之源堆/流、輸送機之一速度、輸送機上之空的及經佔用狹槽或托盤之一映射、輸送機上之物件之屬性、源堆/流內之屬性等。
在422,判定與物件相關聯之一或多個屬性。在一些實施例中,與物件相關聯之一或多個屬性係至少部分基於工作區中之物件之模型來判定。作為一實例,機器人系統基於識別待單分之一物件且獲得與該物件有關之模型中之資訊來判定待單分之該物件之一屬性。基於模型判定之一或多個屬性可為將結合判定或更新用於單分物件之一計劃而使用之屬性。在一些情況下,機器人系統結合判定用於單分一第二物件之一計劃獲得在工作區內之一第一物件之屬性(例如,評估工作區內之第一物件是否或如何將影響該第二物件之單分)。
在423,判定用以單分物件之一計劃。在一些實施例中,至少部分基於與物件相關聯之一或多個屬性來判定用以單分物件之計劃。計劃可包含用於操作一機器人結構以自源堆/流拾取物件並將物件單獨放置於輸送機上之一或多個指令,或機器人結構可自其導出用於單分物件之此等指令之資訊。根據各項實施例,計劃包含(或定義)在單分期間將沿著其移動物件之一路徑或軌跡。
作為一實例,在包含物件之重量之一或多個屬性之情況下,判定用以單分物件之計劃可包含判定機器人手臂是否可提起物件,且若是,則判定自源堆/流拾取物件所需之抓握強度。機器人結構可判定在吸取式末端執行器與物件之間獲得之壓力量。回應於判定機器人手臂無法提起物件,判定用以單分物件之計劃可包含判定將物件自源堆/流部分提起並拖動(或推動)至輸送機上之一對應位置之一計劃。
作為另一實例,在包含物件上之一標記之一位置之一或多個屬性之情況下,判定用以單分物件之計劃可包含判定最佳化標記將由工作區內之一感測器讀取之可能性之一單分物件方式。基於工作區內一或多個感測器內之位置,機器人系統可判定物件之包含標記之一側,判定藉由其抓握物件之一側,及將沿著其單分物件以向一或多個感測器(例如,視覺系統或其他感測器陣列,諸如一條碼讀取器)暴露物件上之標記之一路徑/軌跡。
作為另一實例,在包含物件之一大小或尺寸之一或多個屬性之情況下,判定用以單分物件之計劃可包含判定拾取物件所藉助之一方式,及輸送機上之將放置物件(諸如以最佳化一或多個標記或識別符將暴露至工作區之一或多個感測器之可能性之一方式)之一位置。機器人系統可判定輸送機上之一狹槽/托盤是否由一相對較大物件佔用,且判定其中將單分物件之狹槽/托盤係並非鄰近於該相對較大物件之一狹槽/托盤,或此狹槽/托盤係距相對較大物件之一預定義距離或間距。在一些實施例中,回應於偵測到輸送機上之一相對較大物件,機器人系統可選擇將一物件放置成距相對較大物件一預定義最小距離或間距。在一些實施例中,回應於偵測到輸送機上之一相對較大物件,機器人系統可判定足以確保該相對較大物件不阻擋一或多個感測器擷取關於待單分之物件之資訊之一距離/間距。根據各項實施例,以最佳化一或多個標記或識別符將暴露至一或多個感測器之可能性之一方式判定位置包含判定其中可放置物件之一組位置及若物件被單分至該位置則物件上之一標記或識別符將被掃描之對應概率,及選擇具有一最高對應概率之一位置。在一些實施例中,判定具有超過一臨限概率或在該組位置之具有最高對應概率之一預定義百分比或數目內之一對應概率之一位置。在一些實施例中,判定一位置及若物件被單分至該位置則物件上之標記或識別符將被掃描之對應概率,且比較該概率與一最小所要概率之一預定義臨限值。回應於判定對應於一特定位置之概率未超過一最小所要概率之預定義臨限值,判定一新的位置及對應概率。機器人系統可繼續反覆判定位置及對應概率直至機器人系統判定對應概率超過一最小所要概率之預定義臨限值。
儘管已結合基於待單分之一物件之至少一屬性判定用以單分物件之計劃來描述各項實施例,但各項實施例包含基於工作區內之另一物件或物體之一屬性來判定用以單分物件之計劃。作為一實例,可至少部分基於定位於滑槽中之另一物件之一屬性及/或輸送機上之一狹槽內之另一物件之一屬性來判定用以單分物件之計劃。
圖4C係根據各項實施例之用以判定用以拾取及放置物件以用於分類之一計劃之一程序之一圖式。在各項實施例中,圖4C之程序420b實施圖4A之程序400之步驟420。
在424,產生工作區中之物件或工作區之至少部分之一模型。在一些實施例中,機器人系統產生工作區內之物件之模型。工作區內之物件之模型可為工作區(包含工作區內之一或多個物件)之一較大模型之部分。機器人系統使用至少部分基於自一或多個感測器(例如,視覺系統、感測器陣列、重量感測器、壓力感測器等)獲得之資訊判定之感測器資料來產生模型。模型可指示工作區之各種元件之一或多個特性,諸如滑槽上之物件之源堆/流、輸送機之一速度、輸送機上之空的及經佔用狹槽或托盤之一映射、輸送機上之物件之屬性、源堆/流內之屬性等。
在425,判定物件上之一標記或識別符之一位置。在一些實施例中,機器人系統使用工作區中之物件或工作區之模型來判定物件上之標記或識別符之一位置。例如,分析基於自視覺系統獲得之資訊之感測器資料以判定物件在一可見側上是否包括一識別符或標記。
在一些實施例中,回應於判定標記或識別符在物件之表面上不可見,機器人系統可認為一不可見表面(例如,底表面)包含物件及識別符。在一些實施方案中,回應於判定一標記或識別符在物件上不可見,機器人系統可判定概率至物件上之標記可定位之位置之一映射。例如,若物件之一個表面完全不可見且物件之另一表面由工作區上之另一物件部分遮擋,則機器人系統可判定物件或標記定位於一特定表面上或一特定區域中之各自可能性。根據各項實施例,機器人系統基於概率至物件上之位置之映射來判定標記或識別符之位置。
在一些實施方案中,自源堆/流單分若干類似物件。機器人系統可基於物件上之標記(例如,品牌標誌、標記、識別符)建置一物件之一模型。例如,機器人系統可建置針對一特定物件指示一特定標誌在包裝之一正面上且一標記在背面上的一模型。因此,若標記或識別符基於來自視覺系統等之當前資訊係不可見的,但標誌係可見的,則機器人系統可基於標誌之一位置之判定來判定標記或識別符之位置。機器人系統可使用物件或物件組之模型以至少部分基於判定標誌之位置等來判定識別符或標記之位置。因而,各項實施例使用基於與類似物件有關之歷史資訊之一物件之一模型。
在426,基於一或多個掃描器之一位置及物件上之識別符/標記之位置來判定該物件之一路徑或軌跡。在一些實施例中,判定路徑或軌跡以達成成功地掃描物件上之識別符/標記之一所要概率。作為一實例,可判定路徑或軌跡以最佳化掃描識別符/標記之可能性。在一些實施例中,判定路徑或軌跡以達成成功地單分物件之一所要概率。
在一些實施方案中,判定路徑或軌跡包含判定物件之一組可能路徑或軌跡及判定特定路徑/軌跡將導致一成功掃描之對應概率。機器人系統接著可自該組可能路徑或軌跡當中選擇將沿著其單分物件之路徑或軌跡。根據各項實施例,機器人系統選擇對應於成功地掃描識別符/標記之一最高可能性之路徑或軌跡。機器人系統可至少部分基於預期成功地掃描識別符/標記之一相對概率(例如,相對於該組中之其他路徑/軌跡之概率)、及根據一特定路徑/軌跡單分物件之一時間量、沿著路徑/軌跡與另一物件/物體之一預期碰撞、若沿著特定路徑/軌跡移動則將成功地單分物件之一概率等之一或多者來選擇將沿著其單分物件之路徑或軌跡。根據各項實施例,機器人系統根據成功掃描識別符/標記之概率大於一預定義臨限值之一判定來選擇路徑或軌跡。
在427,至少部分基於物件之路徑或軌跡來判定用以單分物件之一計劃或策略。該計劃或策略可包含用於以下各者之一或多個指令:操作一機器人結構以自源堆/流拾取物件;將物件自源堆/流移動至輸送機之一選定位置並將物件單獨放置於輸送機上。在一些情況下,計劃或策略包含機器人結構可自其導出用於單分物件之此等指令之資訊。
在一些實施例中,計劃包含用於抓握物件之一策略。例如,用於抓握物件之策略可包含將自其抓握物件之一側之一指示。機器人系統可使用模型來判定物件上之一識別符/標記之一位置,及至少部分基於識別符/標記之位置來判定將自其抓握物件之側。可選擇抓握物件所藉助之方式以確保識別符/標記暴露至用於掃描識別符/標記之一或多個感測器。用於在一特定側上抓握物件之策略可包含重新定位/重組態物件以容許末端執行器在該特定側上接合該物件。例如,用於抓握物件之策略可包含自源堆/流拉動物件或將物件碰倒至一不同側上等,以提供對所要表面之較佳接取。作為另一實例,用於抓握物件之策略可包含一抓握強度(例如,待由末端執行器施加之一壓力)。可至少部分基於物件之一重量、物件被部分隱藏且物件之拾取將經歷來自其他物件之阻力之一判定、物件在單分期間可能振盪或搖晃之一判定等來判定抓握強度。作為另一實例,用於抓握物件之策略可包含末端執行器之一類型或複數個末端執行器等當中之待用於單分物件之一(若干)特定末端執行器之一指示。可基於物件之一包裝類型(例如,避免滑動、***等)、物件之一重量、物件上之識別符/標記之一位置等來選擇末端執行器之類型。
在一些實施例中,計劃包含用於移動物件之一策略。作為一實例,用於移動物件之策略可包含在單分期間移動物件之一速度之一指示。在一些情況下,可基於相對於工作區中或輸送機上之其他物件或物體之位置或路徑/軌跡之物件之路徑/軌跡、移動輸送機之一速度、其中將單分物件之一狹槽/托盤、用於釋放物件之策略(例如,是否將諸如沿著一經判定自由落體軌跡來「拋擲」物件)等來影響速度。作為另一實例,用於移動物件之策略可包含在單分物件抑制振盪(或物件之搖晃)之一或多個機構之一指示。該一或多個機構之指示可包含增加抓握強度、降低單分速度等。
在一些實施例中,計劃包含用於釋放物件之一策略。例如,計劃可具有同時釋放所有末端執行器之一策略。作為另一實例,計劃可具有用於交錯釋放至少兩個不同末端執行器之一策略。在吸取式末端執行器之情況下,末端執行器之一交錯釋放可改良釋放物件之速度,此係因為在釋放一第一末端執行器之後,針對該末端執行器之氣流可反向且空氣可自其分散。在釋放(若干)其他末端執行器時(例如,在剩餘末端執行器中停止壓力時),反向氣流用於自此等(若干)其他末端執行器推動物件。相比而言,若同時跨末端執行器移除吸力,則重力作用於物件上且物件之釋放並非立即的,因為壓力需要一特定(不可忽略)時間量來正規化。因此,末端執行器之交錯釋放可為用於釋放一物件(至輸送機上之適用位置)之一更有效方法。在一些實施例中,用於釋放物件之策略包含同時釋放所有末端執行器且使吸取式系統中之氣流迅速反向以自末端執行器排出空氣以將物件推離末端執行器。
在一些實施例中,用於釋放物件之策略包含將手臂移動至物件將自其下落之一位置,且此後釋放末端執行器(使得物件直接下落至輸送機上之選定位置)。在一些實施例中,用於釋放物件之策略包含以用於將物件「拋擲」至輸送機上之選定位置之一方式釋放末端執行器。例如,在各項實施例中,機器人系統基於在機器人手臂移動時釋放末端執行器之一時序之一判定來判定一自由落體軌跡,使得物件之一軌跡將通向輸送機上之選定位置(在經判定時間,以便著陸於移動輸送機上之適用狹槽/托盤內)。可至少部分基於物件之一大小(諸如物件之一高度)來判定使用一自由落體軌跡之用於釋放物件之策略及/或用於單分物件之計劃。
圖5A係繪示根據各項實施例之一機器人單分系統之一圖式。在各項實施例中,圖5A之系統500實施圖3之階層式排程系統300、圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850及圖8C之程序875。
在圖5A中所繪示之實例中,系統500包含配備有末端執行器504之一機器人手臂502。雖然在所展示之實例中,末端執行器504係一吸取式末端執行器,但在各項實施例中,一或多個其他類型之末端執行器可用於如本文中所揭示之一單分系統中,包含(但不限於)一捏縮式末端執行器或其他類型之致動夾持器。機器人手臂502及末端執行器504經組態以用於擷取經由滑槽或貯存箱506到達之包裹或其他物件並將各物件放置於分段輸送機508上之一對應位置中。在此實例中,物件係自一入口端510進給至滑槽506中。例如,一或多個人類及/或機器人工人可直接地或經由經組態以將物件進給至滑槽506中之一輸送機或其他機電結構將物件進給至滑槽506之入口端510中。
在所展示之實例中,機器人手臂502、末端執行器504及輸送機508之一或多者係由控制電腦512協調操作。在一些實施方案中,控制電腦512經組態以控制在一或多個工作站處操作之複數個機器人手臂。機器人系統500可包含自其模型化工作區之一環境之一或多個感測器。在圖5A中所展示之實例中,系統500包含影像感測器,在此實例中,包含3D攝影機514及516。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器、一重量感測器及類似者。在各項實施例中,控制電腦512包含用於基於感測器資料(諸如由影像感測器(在此實例中,包含3D攝影機514及516)提供之影像資料)辨別個別物件、工作區上之雜物及各物件之定向之一工作區環境狀態系統(諸如一視覺系統)。
根據各項實施例,結合單分一物件,系統500判定用於單分該物件之一路徑/軌跡505。如圖5A中所繪示,路徑/軌跡505起始於將自其拾取物件之一位置,將物件移動至輸送機508所沿著之路徑/軌跡,及將釋放物件以在空間及時間上與選定為將在目的地輸送結構上放置物件之位置之一狹槽、托盤或其他目的地(即,在此實例中為輸送機508之狹槽/托盤522)重合的一位置及時間。在一些實施例中,系統500判定將物件單分所至之一狹槽/托盤522。因此,考量狹槽/托盤522之一位置及輸送機508之移動來判定路徑/軌跡505。例如,系統500判定路徑/軌跡505以在一特定時間獲得待單分之物件與選定狹槽/托盤522之間的一相交。在各項實施例中,系統500保留狹槽/托盤522以確保在將物件放置於其中時狹槽/托盤522未被佔用。例如,系統500更新分佈式資料結構以指示狹槽/托盤522被佔用(或將被佔用)。在各項實施例中,軌跡505包含一最終、預釋放階段(phase/stage),其中操作機器人手臂502以追蹤及匹配輸送機508之運動之一速度及方向,以將物件維持於目的地522上方之適當位置中直至物件被釋放。
進一步參考圖5A,在所展示之實例中,系統500進一步包含可供一人類工人520使用以藉由遙操作來操作機器人手臂502、末端執行器504及輸送機508之一或多者之一按需遙操作裝置518。在一些實施例中,控制電腦512經組態以嘗試以一全自動化模式抓握及放置物件。然而,若在嘗試以全自動化模式操作之後,控制電腦512判定其不具有可用於抓握一或多個物件之(進一步)策略,則在各項實施例中,控制電腦512發送一警示以經由遙操作(例如,由人類操作員520使用遙操作裝置518)獲得來自一人類操作員之幫助。在各項實施例中,控制電腦512可使用來自攝影機(諸如攝影機514及516)之影像資料以向人類工人520提供場景之一視覺顯示以促進遙操作。
圖5B係繪示根據各項實施例之一機器人單分系統之一圖式。在所展示之實例中,圖5A之機器人單分系統已進展至一後續時間點,以繪示已根據路徑/軌跡505自滑槽506拾取物件並將其放置於輸送機508之狹槽/托盤522上。系統500模型化工作區以包含與滑槽506內之物件(包含待單分之物件)有關之資訊及與輸送機508有關之資訊。因此,系統500可判定用以將物件單分至輸送機508上之一選定狹槽/托盤522之計劃。
圖6係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。圖6之程序600可由圖2A及圖2B之系統200及/或圖5A及圖5B之系統500執行。在一些實施例中,程序600係由操作以單分一工作區內之一或多個物件之一機器人系統實施。該機器人系統包含操作以引起一機器人結構(例如,一機器人手臂)拾取及放置物件以用於分類之一或多個處理器。
在610,產生一工作區中之物件或一工作區之至少部分之一模型。物件或工作區之模型可以類似於圖4B之程序420a中之421之模型及/或圖4C之程序420b中之424之模型之一方式來產生。在一些實施例中,工作區之一全域模型包含工作區之不同部分之各種模型,諸如工作區中之物件之一模型、一輸送機之一模型、工作區內之其他機器人手臂之一模型等。
在630,判定與物件相關聯之一或多個屬性。與物件相關聯之一或多個屬性可以類似於圖4B之程序420a中之422之一或多個屬性及/或圖4C之程序420b中之425之標記或識別符之位置之一方式來判定。
在650,與物件相關聯之一或多個屬性係結合判定用於單分物件之一組路徑或軌跡來使用。根據各項實施例,該組路徑或軌跡之至少一者係以類似於圖4C之程序420b之426之路徑或軌跡之一方式來判定。
根據各項實施例,至少部分基於感測器資料來判定將沿著其單分一物件之路徑或軌跡。機器人系統可獲得輸出與工作區(包含工作區內之物件或物體)有關之資訊之複數個感測器。感測器資料係基於自一或多個感測器輸出之資訊來獲得並結合判定一路徑或軌跡而使用。在一些實施例中,至少部分基於待單分之物件之一或多個屬性來判定路徑或軌跡。物件之屬性之實例包含一重量、一大小(例如,一或多個尺寸)、一包裝類型、物件上之一識別符、物件上之一識別符或標記之一位置、物件相對於滑槽及/或輸送機之一位置、自物件上之識別符或標記獲得之資訊等。可結合判定路徑或軌跡來使用各種其他屬性。物件之路徑或軌跡之判定可進一步至少部分基於輸送機上之將放置物件之一位置、已在輸送機上之一(若干)物件之一屬性、工作區內之一物件(例如,源堆/流內之一物件)之一屬性、機器人手臂抓握物件所用之一夾持強度、機器人手臂將移動物件之一速度等。
根據各項實施例,判定用於單分一物件之一組路徑或軌跡,且自該組路徑或軌跡選擇將沿著其單分物件之路徑或軌跡。可基於與該組內之對應路徑或軌跡相關聯之各種性質來選擇路徑或軌跡。可結合選擇路徑或軌跡而使用之與對應路徑或軌跡相關聯之性質之實例包含將單分物件之一速度、輸送機上之將單分物件之一位置、將根據特定路徑或軌跡單分物件之一成功概率、工作區內之另一物件或物體是否與特定路徑或軌跡相交之一指示等。在一些實施例中,將根據特定路徑或軌跡單分物件之成功概率係針對該組路徑或軌跡之至少一子集來判定,且路徑或軌跡係基於相對於對應於其他路徑或軌跡之成功概率之對應成功概率來選擇。作為一實例,回應於判定對應於路徑或軌跡之成功概率超過一臨限概率,或超過子集內之其他路徑或軌跡之一臨限數目或百分比來選擇路徑或軌跡。
在670,至少部分基於該組路徑或軌跡來判定用於單分物件之計劃或策略。根據各項實施例,該組路徑或軌跡之至少一者係以類似於圖4B之程序420a之423之計劃及圖4C之程序420b之427之計劃之一方式來判定。可至少部分基於選自用於單分物件之該組路徑或軌跡之路徑/軌跡來判定用於單分物件之計劃或策略。
圖7A係繪示根據各項實施例之一機器人單分系統之一圖式。在各項實施例中,圖7A之系統700實施圖3之階層式排程系統300、圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850及圖8C之程序875。
在各項實施例中,包括一或多個機器人手臂之一機器人系統執行單分/歸納,包含回應於與該機器人系統之工作區中之一或多個物件相關聯之一經偵測狀態或條件執行一或多個主動措施,或回應於判定與一物件相關聯之一屬性或與工作區內之另一物件或物體相關聯之一屬性改變或更新用於單分一物件之計劃。機器人系統可包含各具有一或多個末端執行器之一或多個機器人手臂。在圖7A中所展示之實例中,系統700包含經操作以將滑槽705a內之一或多個物件單分至輸送結構707之一機器人手臂703a,且機器人手臂703b操作以將滑槽705b內之一或多個物件單分至輸送結構707。
在各項實施例中,系統700可包含自其模型化工作區之一環境之一或多個感測器。在圖7A中所展示之實例中,系統700包含影像感測器,在此實例中,包含3D攝影機701a、701b、701c及701d。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器及類似者。如圖7A中所繪示,系統700包含安置於滑槽705a及705b內或周圍之一或多個感測器陣列。例如,滑槽705b包含感測器陣列709a及709b。根據各項實施例,感測器陣列709a及709b之一或多者包含一垂直感測器陣列。系統700可包含圍繞工作區安置之一或多個感測器或感測器陣列。如所繪示,系統700包含圍繞滑槽705a安置之感測器711a、711b及711c,以及圍繞工作區(例如,滑槽705b)安置之感測器711d、711e及711f。根據各項實施例,系統700包含安置於輸送結構707處之一或多個感測器陣列。例如,一感測器陣列可以跨輸送結構發射一信號(例如,一IR光束)之一方式安置於輸送結構處。
在各項實施例中,一控制電腦(未展示)包含用於基於感測器資料(諸如由影像感測器(在此實例中,包含3D攝影機701a、701b、701c及701d以及感測器陣列709a及709b)提供之影像資料)辨別個別物件、工作區上之雜物及各物件之定向之一工作區環境狀態系統(諸如一視覺系統)。該工作區環境狀態系統亦可包含機器人手臂中之用以偵測一物件(例如,一經抓握物件)之一重量或偵測自其判定一經估計重量之資訊的感測器。例如,與由驅動機器人手臂之移動之一或多個馬達使用之電流、電壓及/或功率之一量有關的資訊可用於判定物件之重量(或一經估計重量)。作為另一實例,與來自一或多個感測器陣列(例如,感測器陣列709a及709b)之一輸出有關之資訊可用於判定工作區中之物件之一位置、在物件被抓握及/或由機器人手臂移動時物件之一位置,及/或機器人手臂之一位置(例如,基於來自一或多個感測器陣列之一感測器子集之一輸出相較於一或多個感測器陣列之另一感測器子集的一判定)。
自一工作區及/或一滑槽內之感測器輸出之資訊可用於判定滑槽705a中之一或多個物件(諸如物件713)之一位置及/或特性(例如,屬性)。根據各項實施例,自感測器陣列709a及/或709b輸出之資訊係用於判定滑槽705b內之一或多個物件之一位置及/或特性(例如,屬性)。可至少部分基於感測器陣列709a及/或709b內之由物件絆倒之一組感測器之一判定來判定滑槽705b內之一物件之高度。在一些實施例中,系統700判定滑槽705b內之一物件經配置使得其最長側垂直(例如,正交)於滑槽之表面,且若該物件由一不同側抓握則將改良該物件之單分。因此,系統700判定及實施包含用以重新配置物件使得其最長側與滑槽之表面平行之一主動措施(例如,使用機器人手臂703b、一鼓風機構等將物件碰倒)的一計劃。在各項實施例中,系統700經組態以實施在滑槽705b內之一物件之高度大於一預定義高度臨限值之情況下重新配置該物件之一主動措施。可重組態或重新定位物件(例如,藉由機器人或藉由系統700內之另一元件)以改良末端執行器與物件之一所要表面接合之容易性/接取性,或清除物件以防止遮擋待單分之另一物件。
根據各項實施例,工作區環境狀態系統產生由系統700使用以判定及實施用以自主地操作機器人手臂703a及/或機器人手臂703b以自滑槽705a及/或滑槽705b拾取一或多個物件並將各物件放置於一對應可用經界定位置(諸如分段輸送機707之一分區區段)中以用於機器識別及分類之一計劃的輸出。在一些實施例中,工作區環境狀態系統產生由機器人系統使用以偵測與工作區中之一或多個物件相關聯之一狀態/條件或屬性,及/或與機器人手臂或工作區之另一元件相關聯之一狀態/條件或屬性的一輸出(例如,以其他方式特性化工作區及工作區內之物件之感測器資料或資訊)。根據各項實施例,回應於偵測(例如,判定)與工作區中之一或多個物件相關聯之狀態/條件或屬性,機器人系統判定實施用以單分物件之一計劃,該計劃可包含用以改良單分一物件之一或多個主動措施。主動措施可包含更新用以自主地操作一機器人結構以自工作區拾取一或多個物件並將各物件單獨放置於一單分輸送結構中之一對應位置中的計劃。在一些實施例中,主動措施或更新計劃包含操作機器人結構以改變或適應物件之經偵測狀態/條件或屬性(例如,相對於單分一物件之一方式實施一改變,實施以重組態源堆/流內之物件以使抓握一選定物件更容易,操作以重新定位機器人手臂或末端執行器以增加抓握物件之能力等)。
由系統700使用之輸出可對應於包含與存在於一工作區中之複數個物件相關聯之影像資料之感測器資料。在各項實施例中,系統700使用感測器資料來識別工作區內(例如,滑槽705a及/或滑槽705b內)之無法單分之物件。例如,系統700可識別經映射至無法單分(或難以單分)之物件之類型之預定義物件。作為另一實例,系統700可識別滑槽705a及/或滑槽705b內之物件,無法針對該等物件判定用以自滑槽705a及/或滑槽705b內單分至輸送結構707之一計劃或策略。回應於判定無法單分之一物件,系統700可操作以實施一主動措施。回應於判定無法單分物件而實施之主動措施可包含自對應工作區移除物件,調用人類干預(例如,警示一人類操作員)等。在一些實施例中,回應於判定無法單分滑槽705a及/或滑槽705b內之一物件,系統700操作機器人手臂703a及/或703b以將該物件移動至一經指定位置。作為一實例,該經指定位置可為儲存物件以用於在單分程序之外進行處置之一被拒絕物件貯存箱或其他區域。可識別為不單分之物件之實例包含具有一特定形狀(例如,一海報管)之物件、系統700無法針對其定位待掃描之一標記或其他預定義識別符之物件、在其一側上具有一預定義識別符(例如,指示物件在其中包括一易碎物體之一標記、指示物件未被堆疊之一標記、指示物件包括危險物質之一標記等)之物件等。
在一些實施例中,對應工作區(例如,工作區705a或工作區705b)中之滑槽包括一重量感測器。系統700可基於判定由滑槽中之重量感測器在機器人手臂抓握物件之前量測之一重量與由重量感測器在物件被抓握(且完全移動離開滑槽)之後量測之一重量之間的一差來判定待單分之一物件之一重量。回應於判定物件之重量,系統700可結合判定是否實施與單分物件有關之一主動措施來使用物件,且若是,則實施該主動措施。例如,回應於判定重量,系統700可根據用於單分物件之對應計劃或策略來更新物件之路徑或軌跡。若物件之重量大於一預定義重量臨限值,則系統700可基於物件之重量來更新單分物件之計劃。在一些情況下,若物件之重量超過一重量臨限值,則操作機器人手臂以將物件自滑槽部分提起且操作機器人手臂以將物件拖動至輸送結構707。
圖7B係繪示根據各項實施例之一機器人單分系統之一圖式。在所展示之實例中,已擴展圖7A之系統700以繪示可判定用於將一物件自滑槽705a單分至輸送結構707之一或多個路徑/軌跡。系統700可進一步實施用以根據一選定路徑/軌跡自滑槽705a拾取物件並將物件放置於輸送結構707之狹槽/托盤717上之一計劃。系統700模型化工作區以包含與滑槽705a內之物件(包含待單分之物件)有關之資訊及與輸送結構707有關之資訊(例如,一狹槽/托盤之一位置、一特定狹槽/托盤之一被佔用/未被佔用狀態、輸送機之一速度等)。因此,系統700可基於在用以單分物件之計劃中定義或以其他方式指定之一路徑/軌跡來判定用以將物件單分至輸送結構707上之一選定狹槽/托盤717之計劃。
如圖7B中所繪示,系統700可判定可沿著路徑/軌跡715a、路徑/軌跡715b及路徑/軌跡715c來單分物件。例如,系統700可判定用於將物件單分至一選定狹槽/托盤717至狹槽/托盤717之不同位置(例如,在輸送機在單分期間移動時,狹槽/托盤717之位置係動態的)之路徑/軌跡。根據各項實施例,系統700選擇沿著其單分物件之路徑/軌跡之一者,且至少部分基於選定路徑/軌跡來判定一計劃。結合判定計劃,系統700可獲得輸送機之一速度、選定狹槽/托盤717之一位置,且因此判定用於沿著選定路徑/軌跡單分物件之一速度及時序。
圖7C係繪示根據各項實施例之一機器人單分系統之一圖式。在所展示之實例中,已擴展圖7A及圖7B之系統700以繪示將物件721自滑槽705a單分至輸送結構707上之狹槽/托盤717。物件721係自滑槽705a拾取,沿著路徑/軌跡715b移動,且單獨放置於狹槽/托盤717中。
圖7D係繪示根據各項實施例之一機器人單分系統之一圖式。在所展示之實例中,已擴展圖7A及圖7B之系統700以繪示將物件721自滑槽705a單分至輸送結構707上之一不同狹槽/托盤719。物件721係自滑槽705a拾取,沿著路徑/軌跡715c移動,且單獨放置於狹槽/托盤719中。
根據各項實施例,系統700可回應於判定物件或工作區之一狀態或條件,或回應於判定與物件、工作區內之另一物件或工作區相關聯之一特定屬性來選擇將在其處單分物件之一不同狹槽/托盤。例如,回應於拾取物件721,系統700可判定機器人手臂703a無法根據用於單分之計劃如預期般快速地移動物件721。回應於此一判定,系統700可選擇其內將放置物件之一新的狹槽/托盤719。在各項實施例中,新的狹槽/托盤係在輸送結構707上之在最初選定狹槽/托盤717上游的一狹槽/托盤。
在一些實施例中,系統700回應於判定物件或工作區之一狀態/條件,或回應於判定物件之一屬性來選擇一新的托盤。作為實例,系統700可回應於拾取物件721及判定其之一重量來判定將物件721單分至狹槽/托盤719。系統700可判定721太重而無法以將物件放置於狹槽/托盤717處所需之一速度來移動。作為另一實例,系統700可回應於判定狹槽/托盤717已用一物件佔用或回應於系統700自一全域排程器接收狹槽/托盤717已由另一機器人保留之一故障之一指示來判定將物件721單分至狹槽/托盤719。其中系統700可判定將物件單分至一新的狹槽/托盤之各種其他例項包含鄰近狹槽/托盤717或在狹槽/托盤717之一臨限接近度內之一狹槽具有另一物件或擁有超過一預定義大小臨限值之一大小之一物件的一判定;鄰近狹槽/托盤717或在狹槽/托盤717之接近度內之一狹槽具有將阻止工作區內之感測器讀取物件上之一標記或識別符之一物件的一判定;等。
圖8A係繪示根據各項實施例之一機器人單分系統之一圖式。在各項實施例中,圖8A之系統800實施圖3之階層式排程系統300、圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850及圖8C之程序875。
圖8A中所繪示之實例繪示系統800基於鄰近於路徑823終止於之狹槽之一狹槽具有一相對較大物件825來判定根據一新路徑821單分物件806。回應於判定物件825係一相對較大物件(例如,超過一預定大小,或具有超過一臨限值之至少一個尺寸),系統800判定不鄰近於物件825放置物件806,且判定用以單分物件806之新路徑821。操作機器人手臂803以使用末端執行器804抓握物件806且根據新路徑821移動物件806。在一些實施方案中,若待單分之物件將阻止感測器自已放置於輸送結構813上之一物件獲得資訊,則系統800可判定將806單分至一不同狹槽中。
系統800可包含自其模型化工作區810之一環境之一或多個感測器。在圖8A中所展示之實例中,系統800包含影像感測器,在此實例中,包含3D攝影機801及802。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器及類似者。作為一實例,系統800可包含安置於滑槽811內或周圍之一或多個感測器陣列。系統800可包含安置於工作區周圍之一或多個感測器或感測器陣列(未展示)。
根據各項實施例,系統800包含安置於輸送結構813處之一或多個感測器陣列。例如,一感測器陣列可以跨輸送結構發射一信號(例如,一IR光束)之一方式安置於輸送結構處。在各項實施例中,一控制電腦(未展示)包含用於基於感測器資料(諸如由影像感測器(在此實例中,包含3D攝影機801及802)提供之影像資料)辨別個別物件、工作區上之雜物及各物件之定向之一工作區環境狀態系統(諸如一視覺系統)。該視覺系統亦可包含一或多個感測器及/或感測器陣列(未展示)。該一或多個感測器或感測器陣列可獲得自其判定與物件825有關之感測器資料之資訊。例如,感測器/感測器陣列可偵測物件825之一大小。可至少部分基於感測器陣列內之由物件絆倒之一組感測器之一判定來判定滑槽811內或輸送結構813上之一物件之高度。在一些實施例中,系統800基於相關聯於物件825所處之狹槽儲存於分佈式資料結構中之資訊來判定物件825相對較大。
根據各項實施例,工作區環境狀態系統產生由系統800使用以判定及實施用以自主地操作機器人手臂803以自滑槽811拾取一或多個物件806並將物件806放置於一對應可用經界定位置(諸如分段輸送機813之一分區區段)中以用於機器識別及分類之一計劃的輸出。在一些實施例中,工作區環境狀態系統產生由機器人系統使用以偵測與工作區中之一或多個物件相關聯之一狀態/條件或屬性,及/或與機器人手臂或工作區之另一元件相關聯之一狀態/條件或屬性的一輸出(例如,以其他方式特性化工作區及工作區內之物件之感測器資料或資訊)。根據各項實施例,回應於偵測(例如,判定)與工作區中之一或多個物件相關聯之狀態/條件或屬性,機器人系統判定實施用以單分物件之一計劃,該計劃可包含改良單分一物件之一或多個主動措施。如圖8A之實例中繪示,主動措施可包含選擇將沿著其單分物件806之一新路徑821。主動措施可包含更新用以自主地操作一機器人結構以自工作區拾取一或多個物件並將各物件單獨放置於一單分輸送結構中之一對應位置中的計劃。在一些實施例中,主動措施或更新計劃包含操作機器人結構以改變或適應物件之經偵測狀態/條件或屬性(例如,相對於單分一物件之一方式實施一改變,實施以重組態源堆/流內之物件以使抓握一選定物件更容易,操作以重新定位機器人手臂或末端執行器以增加抓握物件之能力等)。
圖8B係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。圖8B之程序850可由圖2A及圖2B之系統200、圖5A及圖5B之系統500及/或圖8A之系統800執行。在一些實施例中,程序850係由操作以單分一工作區內之一或多個物件之一機器人系統實施。該機器人系統包含操作以引起一機器人結構(例如,一機器人手臂)拾取及放置物件以用於分類之一或多個處理器。
在851,判定與物件相關聯之一或多個屬性。與物件相關聯之一或多個屬性可以類似於圖4B之程序420a中之422之一或多個屬性及/或圖4C之程序420b中之425之標記或識別符之位置之一方式來判定。根據各項實施例,在已自源堆/流拾取物件之後,判定與物件相關聯之一或多個屬性。例如,結合判定一或多個屬性來使用自一或多個感測器/感測器陣列獲得之資訊。可在自源堆/流拾取物件之後判定之屬性之實例包含物件之一重量、物件之一大小、物件上之一識別符/標記之一位置等。
在853,判定與一單分輸送結構上之一物件相關聯之一或多個屬性。機器人系統可基於使用藉由工作區中之感測器獲得之資訊之感測器資料,或基於儲存於分佈式資料結構中之資訊(例如,相關聯於輸送機上之物件所處之狹槽儲存之此資訊)來判定與物件相關聯之一或多個屬性。
根據各項實施例,回應於判定用以單分物件之一計劃且在開始實施該計劃之後,機器人系統獲得與物件相關聯之一或多個屬性。在物件之單分期間,機器人系統可動態地接收至少部分基於由工作區內之感測器接收之資訊之與物件及工作區相關聯之資訊。作為一實例,回應於拾取物件,機器人系統可至少部分基於在自滑槽移除物件之後滑槽上之一重量變化之一量度、耦合至機器人手臂之一力感測器、機器人手臂拾取或移動物件所需之一工作/功率量等之一或多者來判定物件之一重量。作為另一實例,回應於拾取物件,可使用自視覺系統接收之資訊來定位物件上之一標記或識別符。
根據各項實施例,與單分輸送結構(例如,輸送機)上之一物件相關聯之一或多個屬性係基於儲存於一分佈式資料結構中之資訊來判定。例如,回應於(或結合)一機器人手臂將物件放置於輸送機上,機器人手臂用與物件相關聯之一或多個屬性更新分佈式資料結構,且使此資訊與輸送機之其中放置物件之狹槽相關聯。作為另一實例,在將物件放置於輸送機上之後,沿著輸送機或以其他方式在工作區內之一或多個感測器獲得與物件有關之資訊。可自此資訊獲得與物件相關聯之屬性,且相應地更新分佈式資料結構。
在855,判定是否更新用於單分待單分之物件之計劃。根據各項實施例,一機器人系統至少部分基於與物件相關聯之一或多個屬性及/或與輸送機上之一物件相關聯之一或多個屬性來判定是否更新計劃。
一機器人系統可基於屬性來判定,若更新計劃,則預期物件之單分將更成功或更有效。類似地,該機器人系統可判定預期物件之單分沿著一當前路徑被阻礙,且沿著一新路徑之單分將改良物件之單分。作為一實例,一機器人系統可判定一相對較大物件定位於將在其處單分物件之一位置之一預定義接近度內之一狹槽(例如,一鄰近狹槽)中,且因此判定更新計劃以改變將在其處單分物件之一位置。相對較大物件可阻止感測器讀取關於另一物件之資訊,或以其他方式獲得與此另一物件有關之資訊。另外,在將物件放置於初始位置中時,相對較大物件可阻礙機器人手臂。作為另一實例,機器人系統可判定機器人手臂將必須移動物件以便在最初計劃之位置中單分物件之速度可增加一單分故障(例如,錯放物件、物件掉落等)之機會,且回應於此一判定,機器人結構可判定使用更上游之另一狹槽以容許機器人手臂以一相對較慢速度操作。
回應於在855判定更新用於單分之計劃,程序850繼續進行至857,在857,更新用於單分物件之計劃。機器人系統對一機器人手臂提供用於實行物件之單分之更新指令,此等更新指令對應於更新之計劃。在一些實施例中,回應於更新計劃,機器人系統向全域排程器提供與計劃有關之資訊及/或相應地更新分佈式資料結構。根據各項實施例,計劃之更新包含更新用於物件之單分之路徑、改變至其中將單分物件之一新狹槽、用於將物件釋放至所要位置之一策略、機器人手臂將移動物件之一速度等之一或多者。
相反地,回應於在855判定不更新用於單分物件之計劃,程序800繼續進行至859,在859,根據對應計劃單分物件。根據各項實施例,機器人系統根據計劃操作機器人手臂以便至少部分基於計劃來單分物件。在一些實施例中,在859之物件單分對應於圖4A之程序400之430。
圖8C係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。圖8C之程序875可由圖2A及圖2B之系統200、圖5A及圖5B之系統500及/或圖8A之系統800執行。在一些實施例中,程序875係由操作以單分一工作區內之一或多個物件之一機器人系統實施。該機器人系統包含操作以引起一機器人結構(例如,一機器人手臂)拾取及放置物件以用於分類之一或多個處理器。
在877,判定用於單分一物件之一計劃。該計劃包含在該物件之單分期間將沿著其移動物件之一預期路徑。
在879,判定與一單分輸送結構上之一物件相關聯之一或多個屬性。在各項實施例中,機器人系統基於使用藉由工作區中之感測器獲得之資訊之感測器資料,或基於儲存於一分佈式資料結構中之資訊(例如,相關聯於輸送機上之物件所處之狹槽儲存之此資訊)來判定與物件相關聯之一或多個屬性。與物件相關聯之一或多個屬性可以類似於圖8B之程序850之853之屬性、圖4B之程序420a之422之屬性及/或圖4C之程序420b中之425之標記或識別符之位置之一方式來判定。
在881,判定物件之路徑是否預計與輸送結構上之物件碰撞。根據各項實施例,機器人系統至少部分基於包含於計劃中之路徑及基於與輸送機上之物件相關聯之一或多個屬性來判定物件是否預計與輸送結構(例如,輸送機)上之物件碰撞。機器人系統可基於經單分之物件之一或多個屬性來進一步判定物件是否預期與輸送機上之物件碰撞。
在一些實施例中,機器人系統判定經單分之物件(或機器人結構)是否預期在物件沿著經計劃路徑移動時之一時間點與輸送機上之物件相交。結合判定物件之路徑是否預計與輸送機上之物件碰撞,機器人系統可使用輸送機之速度、輸送機上之物件之位置、輸送機上之物件之一大小等。經單分之物件之大小亦可由機器人系統判定且結合判定是否預期一碰撞而使用。
在一些實施方案中,判定物件之路徑是否預計與輸送結構上之物件碰撞包含判定經單分之物件是否將在輸送機上之物件之一預定接近臨限值內移動。機器人系統可實施一緩衝以避免將經單分之物件移動得太靠近輸送機上之物件。回應於經單分之物件將在沿著路徑之任何點處在輸送機上之物件之預定接近臨限值內移動的一判定,機器人系統可判定物件之路徑預計與輸送結構上之物件碰撞。
回應於在881判定物件之路徑預計與輸送機上之物件碰撞,程序875繼續進行至883,在883,更新用於單分物件之計劃。在883更新用於單分物件之計劃可對應於在圖8B之程序850之857之更新計劃。
相反地,回應於在881判定物件之路徑未預計與輸送機上之物件碰撞,程序875繼續進行至885,在885,根據對應計劃單分物件。根據各項實施例,機器人系統根據計劃操作機器人手臂以便至少部分基於計劃單分物件。在一些實施例中,在885之物件單分對應於圖4A之程序400之430及/或圖8B之程序850之859之物件單分。
圖9係繪示根據各項實施例之一機器人單分系統之一圖式。在各項實施例中,圖9之系統900實施圖3之階層式排程系統300、圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850及圖8C之程序875。
根據各項實施例,機器人系統將一物件自源堆/流部分提起並拉動或拖動至輸送機上之對應位置。機器人系統可回應於完全拾取物件且移動機器人手臂以將物件放置於輸送機上不可行之一判定來判定部分拖動物件。其中可拖動物件之例項之一些實例包含:若物件經判定為相對較重(例如,具有大於一預定臨限值之一重量);若物件相對較大;若物件經判定為具有難以抓握之一不規則形狀或一包裝類型(例如,若一成功抓握率小於一預定臨限值);若一初始抓握強度小於預期(例如,若末端執行器上之複數個吸盤之一子集出故障);及若拖動物件之一路徑經判定為比完全拾取物件更有效。
圖9中所繪示之實例繪示系統900判定根據對應於將物件905自滑槽911拖動至輸送機913上之狹槽915之一路徑來單分物件905。在一些例項中,機器人手臂903可將末端執行器904接合至滑槽911處之物件905且部分提起物件905並將物件905移動朝向輸送機913以便將物件905自滑槽911拖動至輸送機913。在一些例項中,機器人手臂903將末端執行器904接合至滑槽911處之物件905以拖動物件905 (例如,無需部分提起物件905)朝向輸送機913以便將物件905自滑槽911拖動至輸送機913。
系統900可包含自其模型化工作區910之一環境之一或多個感測器。在圖9中所展示之實例中,系統900包含影像感測器,在此實例中,包含3D攝影機901及902。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器及類似者。作為一實例,系統900可包含安置於滑槽911內或周圍之一或多個感測器陣列。在各項實施例中,系統900包含安置於工作區周圍之一或多個感測器或感測器陣列(未展示)。
根據各項實施例,模型化一工作區且結合判定將物件905自滑槽911拖動至輸送機913來使用工作區910之一模型。例如,系統900可至少部分基於工作區之模型來判定物件905之一重量,且可至少部分基於該重量來判定拖動物件905。
圖10A係繪示根據各項實施例之一機器人單分系統之一圖式。在各項實施例中,圖10A之系統1000實施圖3之階層式排程系統300、圖4A之程序400、圖4B之程序420a、圖4C之程序420b、圖6之程序600、圖8B之程序850、圖8C之程序875及圖10B之程序1050。
如圖10A中所繪示,系統1000包含三個額外站:經定位及組態以自滑槽1004、1006、1008及1010拾取/放置物件之機器人手臂1012、1014、1016、1018及1020。根據各項實施例,一或多個機器人手臂可操作以單分來自同一滑槽之物件。例如,機器人手臂1012及1014操作以自滑槽1004拾取/放置物件。系統1000包含提供自其判定與一工作區有關之感測器資料之資訊之一或多個感測器。系統1000包含可經組態或配置以提供完整場景(包含四個站/滑槽1004、1006、1008及1010以及輸送機1022之各者)之一3D視圖之攝影機1001及1002。
在各項實施例中,控制電腦1028協調機器人手臂1012、1014、1016、1018及1020以及相關聯末端執行器連同輸送機1022之操作,以依達成系統之一所要集體處理量(例如,滿足一處理量臨限值之一集體處理量等)之一方式自滑槽1004、1006、1008及1010拾取/放置物件至輸送機1022。控制電腦可實施圖3之階層式排程系統300之全域排程器322。在一些實施例中,控制電腦進一步實施圖3之階層式排程系統300之機器人單分站排程器324、326、328及330。作為一實例,全域排程器322可協調機器人手臂1012、1014、1016、1018及1020之操作以確保在機器人手臂1012、1014、1016、1018及1020之操作期間避免碰撞事件以將物件自滑槽1004、1006、1008及1010單分至輸送機1022。機器人單分站排程器324、326、328及330可控制以判定使機器人手臂1012、1014、1016、1018及1020單分物件之計劃或策略,且機器人單分站排程器324、326、328及330可對機器人手臂提供此等計劃或策略以引起機器人手臂實施此等計劃或策略(或對機器人手臂提供對應於計劃或策略之指令)。
根據各項實施例,系統1000包括包含複數個狹槽或托盤1024a至1024j之一輸送機1022。待單分之一物件係自一對應滑槽拾取且被單獨放置於複數個狹槽之一者中。各機器人手臂(或其之排程器)可判定狹槽1024a至1024j之其中將單分一物件之一狹槽。其中將放置物件之選定狹槽係相關聯於用於單分物件之計劃來儲存。另外,可更新與狀態或輸送機相關聯之一分佈式資料結構以反映機器人手臂將一物件放置於狹槽中。例如,分佈式資料結構可具有用於指示一狹槽被保留或佔用之一欄位,且回應於判定其中將放置一物件之特定狹槽,可更新用於狹槽之對應欄位。
根據各項實施例,一狹槽對應於輸送機1022之一分段部分。然而,在一些實施例中,輸送機1022可經組態以承載與輸送機1022相異之一托盤。作為一實例,如圖10A中所繪示,托盤1026可被承載於輸送機1022上狹槽1024i中。根據各項實施例,複數個狹槽或托盤之各者係與一識別符相關聯。作為一實例,如圖10A中所繪示,狹槽1024i包括識別符1027。識別符在至少系統1000內(至少相對於輸送機1022)可為唯一的。可實施識別符之形式之一些實例包含一條碼、一QR碼、一文數字串、一符號等。
在各項實施例中,一系統(諸如系統1000)使用視覺系統來判定一特定托盤是否為空的。視覺系統可包含來自指向輸送機1022之感測器之影像資料。在輸送機1022移動且狹槽/托盤在移動時,視覺系統可獲得與一狹槽/托盤相關聯之一影像(或產生該狹槽/托盤之一模型)且判定與狹槽相關聯之該影像是否對應於一空狹槽/托盤。在一些實施例中,系統1000藉由比較影像資料與一空狹槽之一模型及執行一分析以判定影像資料與該空狹槽之該模型之間的一差異來判定一狹槽係空的。系統1000可進一步判定影像資料與空狹槽之模型之間的一差異是否指示一物件被包括於狹槽中。在一些實施例中,一空狹槽之一模型係針對系統中之各特定狹槽儲存以考量狹槽當中之差異。例如,系統1000可儲存空狹槽之模型至狹槽之識別符之一映射,且可結合獲得空狹槽之適用模型來使用該映射以用於判定一特定狹槽是否為空的。根據各項實施例,系統1000基於對一特定狹槽之影像資料之一影像分析來判定該狹槽是否為空的。影像分析可包含邊緣偵測或物體辨識。
根據各項實施例,系統1000可結合判定一特定狹槽是否為空的而實施一動態模型。透過隨時間之正常使用,輸送機上之一狹槽之一或多個性質可改變。例如,狹槽之一側或表面可改變色彩或具有可見刮痕/磨痕。作為另一實例,一狹槽之一或多個尺寸可由於該狹槽中放置及承載相對超大/超重物件而改變。若狹槽之外觀或尺寸(或其他性質)隨時間改變,則機器人系統可在判定狹槽是否為空的(且可用於承載待單分之一物件)時出錯。機器人系統可判定一狹槽並非空的,因為該狹槽看似與一空狹槽外觀之定義不同(例如,不同色彩、刮痕或表面上之其他標記等)。因此,在一些實施例中,一空狹槽之定義(例如,一空狹槽之一或多個性質之一映射)隨時間而更新。空狹槽之定義之更新可以預定時間間隔週期性地執行,且回應於偵測到滿足一或多個條件(例如,機器人系統達到一錯誤率臨限值)來執行。在各項實施例中,不斷地執行空狹槽之定義。例如,系統資料獲得與一視覺系統有關之感測器資料,該感測器資料係相對於輸送機上之狹槽被認為空的之一位置處之一狹槽來擷取(例如,在輸送機開始處,或在其中清空狹槽之一步驟之後的輸送機之末端處),且使用感測器資料來更新空狹槽之定義。在一些實施例中,一空狹槽或托盤之定義係在一逐狹槽或逐托盤基礎上判定,使得各狹槽/托盤具有此一狹槽或托盤之一對應定義。一特定狹槽之定義可相關聯於此狹槽之一對應識別符來儲存。可使用一機器學習程序來實施一空狹槽之定義之更新。
在各項實施例中,兩個或更多個機器人可部署於一站處,以避免機器人干擾彼此之操作及移動且最大化其等集體處理量(包含藉由避免及/或管理拾取及放置同一物件之爭用)之一方式在一相關聯控制電腦(諸如控制電腦)的控制下操作。在一些實施例中,在同一工作區操作之複數個機器人手臂獨立地工作以單分複數個物件。該複數個機器人手臂之一或多者可回應於偵測到兩個機器人手臂之間的一碰撞或一碰撞可能性而執行用以避免該兩個機器人手臂之間(或由機器人手臂抓握之物件)的一碰撞之一主動措施。例如,控制電腦可協調複數個機器人之操作以使複數個機器人能夠獨立地操作,同時確保複數個機器人及/或由複數個機器人抓握之物件在單分期間不相互碰撞。在一些實施例中,控制電腦在兩個或更多個機器人之間實施/強制執行「力場」以便防止該兩個或更多個機器人之間的碰撞。作為一實例,機器人(或控制電腦)存取資訊,自該資訊判定其等各自位置及一或多個其他機器人之位置,且控制機器人以避免在一特定時間或在一特定單分階段在其等各自位置或路徑與一或多個其他機器人之位置或路徑之間的一相交。在一些實施例中,一第一機器人保留將在一物件之單分期間由該第一機器人使用之一空域(例如,一特定位置)。結合一第二機器人對一物件之單分進行排程,該第二機器人至少部分基於由第一機器人保留之空域來判定單分物件之計劃。例如,結合對物件之單分進行排程,第二機器人判定計劃不能(或不應)包含通過由第一機器人保留之空域之移動且第二機器人判定在如此保留空域之時間期間不需要第二機器人或物件移動通過由第一機器人保留之空域的一計劃。
在各項實施例中,一排程器協調複數個機器人(例如,在複數個站之各者處工作之一或多個機器人)之操作以在機器人之間無衝突的情況下達成所要處理量,諸如一個機器人將一物件放置於該排程器已指派給另一機器人之一位置(例如,一狹槽/托盤)中。該排程器可藉由回應於偵測到相關聯於藉由不同機器人手臂單分物件而出現之一衝突而向機器人結構或相關聯排程器發送故障來實施避免衝突。
在一些實施例中,在一工作區處工作之複數個機器人之至少一子集之各者獨立於該複數個機器人之其他機器人拾取一物件,且判定用於單分該物件之一對應計劃。複數個機器人之至少子集可按一預定義順序拾取使得沒有兩個機器人同時選擇或拾取一物件。複數個機器人之至少子集之各者可基於在此選擇時當前可用之物件來選擇或拾取一物件。因此,複數個機器人之至少兩個子集之在一第一機器人之後拾取之一第二機器人將選擇不同於由該第一機器人選擇或拾取之物件之一物件來單分。
在一些實施例中,多個機器人可自同一滑槽或其他源容器拾取。在圖10A中所展示之實例中,例如,機器人手臂1014可經組態以自滑槽1004或滑槽1006拾取。同樣地,機器人手臂1016可自滑槽1006或滑槽1008拾取等。在一些實施例中,經組態以自同一滑槽拾取之兩個或更多個機器人手臂可具有不同末端執行器。如本文中所揭示之一機器人單分系統可選擇最適於拾取及單分一給定物件之機器人手臂。例如,系統判定哪些機器人手臂可到達物件且選擇具有最合適末端執行器及/或成功地抓握物件之其他屬性之機器人手臂。
雖然圖10A中展示固定機器人手臂,但在各項實施例中,一或多個機器人可安裝於一行動輸送工具上,諸如一機器人手臂安裝於經組態以沿著一軌條、軌道或其他導引件移動之一底盤上,或一機器人手臂安裝於一行動推車或底盤上。在一些實施例中,可使用除一機器人手臂之外之一機器人工具致動器。例如,一末端執行器可安裝於一軌條上且經組態以沿著該軌條移動,且該軌條可經組態以在垂直於軌條之一或多個軸上移動以使末端執行器能夠移動以如本文中所揭示般拾取、平移及放置一物件。
圖10B係根據各項實施例之使用一輸送結構之性質來組態機器人單分系統之一程序的一圖式。圖10B之程序1050可由圖10A之系統1000執行。在一些實施例中,程序1050係由操作以單分一或多個工作區(諸如對應於圖10A之系統1000之滑槽1004、1006、1008及1010之工作區)內之一或多個物件之一機器人系統實施。系統1000包含操作以引起機器人手臂1012、1014、1016、1018及1020拾取及放置物件以用於分類之一或多個處理器。系統1000可實施一視覺系統及/或使用與輸送機1022之至少狹槽/托盤有關之感測器資料。
在1051,產生輸送機之一模型。根據各項實施例,輸送機之模型係至少部分基於感測器資料(例如,來自一影像系統之影像資料)來產生。模型可進一步基於一分佈式資料結構中所包含之與輸送機之一狀態/條件有關之資訊。
系統1000可包含自其模型化一輸送機之一或多個感測器。在圖10A中所展示之實例中,系統1000包含影像感測器,在此實例中,包含3D攝影機1001及1002。在各項實施例中,在如本文中所揭示之一單分系統中可(個別地或組合地)使用其他類型之感測器,包含一攝影機、一紅外感測器陣列、一雷射陣列、一標尺、一陀螺儀、一電流感測器、一電壓感測器、一功率感測器、一力感測器、一壓力感測器、一重量感測器及類似者。在各項實施例中,系統1000之一控制電腦包含用於基於感測器資料(諸如由影像感測器(在此實例中,包含3D攝影機1001及1002)提供之影像資料)辨別個別狹槽/托盤、工作區上之雜物及物件之定向之一工作區環境狀態系統(諸如一視覺系統)。
在一些實施例中,系統1000之一控制電腦儲存或以其他方式存取包括與工作區之一狀態/條件有關之資訊(包含與輸送機有關之資訊)之一分佈式資料結構。該分佈式資料結構可儲存與輸送機上之一特定狹槽/托盤相關聯之一或多個屬性,包含諸如一識別符與一狹槽之間的一關聯、狹槽是否被佔用之一指示、對應於包含於狹槽(例如,若狹槽被佔用)中之一物件之一識別符及與狹槽相關聯之各種其他資訊的資訊。分佈式資料結構中所包括之資訊可結合產生模型來使用。例如,可彙總影像資料及儲存於分佈式資料結構中之資料以形成輸送機之一更全面模型。
在1053,獲得與預期為空的之一狹槽有關之感測器資料。在一單分程序期間,存在程序中之其中一狹槽預期為空的之各種位置或點。程序中之其中狹槽預期為空的之位置或點之實例包含在輸送機開始處的上游(例如,比任何其他機器人手臂更上游)、在自輸送機上之狹槽移除物件之後在單分程序結束處等。根據各項實施例,系統1000至少在程序中之其中狹槽預期為空的之一個位置或點處獲得狹槽之感測器資料(例如,影像資料)。在一些實施方案中,系統1000亦獲得在感測器資料中擷取之與狹槽相關聯之識別符。
在1055,更新輸送機之模型。根據各項實施例,回應於接收一預期空狹槽之當前感測器資料,系統1000更新輸送機之模型。明確言之,系統1000可更新與感測器資料相關聯之特定狹槽之一模型。例如,系統1000可相關聯於狹槽之識別符來儲存一空狹槽之一定義,使得各狹槽具有一對應定義。
根據各項實施例,對輸送機之模型之更新包含對一空狹槽之特性之一更新。例如,經更新模型可在其定義中包含透過系統1000之正常損耗而發生之變色或磨損。由於空狹槽之定義隨時間更新,因此空狹槽之一當前定義更精確地定義空狹槽之預期特性。因而,當比較與狹槽有關之影像資料與空狹槽之定義時,系統1000可更準確地判定一物件是否在狹槽中(或影像資料中之一特定標記/不規則性是否係狹槽之當前外觀之部分)。
儘管為清楚理解之目的已相當詳細地描述前述實施例,但本發明並不限於所提供之細節。存在實施本發明之許多替代方式。所揭示實施例係闡釋性且非限制性的。
100:程序 102:歸納程序 104:單分程序 106:分類/路由程序 108:運輸程序 200:系統/機器人系統 202:機器人手臂 204:吸取式末端執行器/末端執行器 206:滑槽或貯存箱/站 208:分段輸送機/輸送機 210:入口端 212:控制電腦 214:3D攝影機/攝影機 216:3D攝影機/攝影機 218:按需遙操作裝置/遙操作裝置 220:人類工人/操作員/人類操作員 224:攝影機 226:攝影機 230:機器人手臂 232:機器人手臂 234:機器人手臂 236:滑槽/站 238:滑槽/站 240:滑槽/站 300:階層式排程系統 322:全域排程器 324:機器人單分站排程器/站特定排程器 326:機器人單分站排程器/站特定排程器 328:機器人單分站排程器/站特定排程器 330:機器人單分站排程器/站特定排程器 332:站感測器 334:站感測器 336:站感測器 338:站感測器 340:感測器 342:輸送機控制器 400:程序 410:步驟 420:步驟 420a:程序 420b:程序 421:步驟 422:步驟 423:步驟 424:步驟 425:步驟 426:步驟 427:步驟 430:步驟 440:步驟 500:系統/機器人系統 502:機器人手臂 504:末端執行器 505:路徑/軌跡 506:滑槽或貯存箱 508:分段輸送機/輸送機 510:入口端 512:控制電腦 514:3D攝影機 516:3D攝影機 518:按需遙操作裝置/遙操作裝置 520:人類工人/人類操作員 522:狹槽/托盤/目的地 600:程序 610:步驟 630:步驟 650:步驟 670:步驟 700:系統 701a:3D攝影機 701b:3D攝影機 701c:3D攝影機 701d:3D攝影機 703a:機器人手臂 703b:機器人手臂 705a:滑槽/工作區 705b:滑槽/工作區 707:輸送結構/分段輸送機 709a:感測器陣列 709b:感測器陣列 711a:感測器 711b:感測器 711c:感測器 711d:感測器 711e:感測器 711f:感測器 713:物件 715a:路徑/軌跡 715b:路徑/軌跡 715c:路徑/軌跡 717:狹槽/托盤 719:狹槽/托盤 721:物件 800:系統 801:3D攝影機 802:3D攝影機 803:機器人手臂 804:末端執行器 806:物件 810:工作區 811:滑槽 813:輸送結構/分段輸送機 815:控制電腦 821:新路徑 823:路徑 825:物件 850:程序 851:步驟 853:步驟 855:步驟 857:步驟 859:步驟 875:程序 877:步驟 879:步驟 881:步驟 883:步驟 885:步驟 900:系統 901:3D攝影機 902:3D攝影機 903:機器人手臂 904:末端執行器 905:物件 910:工作區 911:滑槽 913:輸送機 915:狹槽 917:控制電腦 1000:系統 1001:攝影機/3D攝影機 1002:攝影機/3D攝影機 1004:滑槽 1006:滑槽 1008:滑槽 1010:滑槽 1012:機器人手臂 1014:機器人手臂 1016:機器人手臂 1018:機器人手臂 1020:機器人手臂 1022:輸送機 1024a至1024j:狹槽或托盤 1026:托盤 1027:識別符 1028:控制電腦 1050:程序 1051:步驟 1053:步驟 1055:步驟
在以下詳細描述及隨附圖式中揭示本發明之各項實施例。
圖1係繪示用以接收物件、對物件分類及運輸物件以進行物流配送之一程序之一流程圖。
圖2A係繪示根據各項實施例之一機器人單分系統之一圖式。
圖2B係繪示根據各項實施例之一機器人單分系統之一圖式。
圖3係根據一機器人單分系統之各項實施例之一階層式排程系統之一圖式。
圖4A係根據各項實施例之用以拾取及放置物件以用於分類之一程序之一圖式。
圖4B係根據各項實施例之用以判定用以拾取及放置物件以用於分類之一計劃之一程序的一圖式。
圖4C係根據各項實施例之用以判定用以拾取及放置物件以用於分類之一計劃之一程序的一圖式。
圖5A係繪示根據各項實施例之一機器人單分系統之一圖式。
圖5B係繪示根據各項實施例之一機器人單分系統之一圖式。
圖6係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。
圖7A係繪示根據各項實施例之一機器人單分系統之一圖式。
圖7B係繪示根據各項實施例之一機器人單分系統之一圖式。
圖7C係繪示根據各項實施例之一機器人單分系統之一圖式。
圖7D係繪示根據各項實施例之一機器人單分系統之一圖式。
圖8A係繪示根據各項實施例之一機器人單分系統之一圖式。
圖8B係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。
圖8C係根據各項實施例之使用一工作區內之一物件之一屬性判定用以單分一或多個物件之一計劃或策略之一程序的一圖式。
圖9係繪示根據各項實施例之一機器人單分系統之一圖式。
圖10A係繪示根據各項實施例之一機器人單分系統之一圖式。
圖10B係根據各項實施例之使用一輸送結構之性質組態機器人單分系統之一程序的一圖式。
500:系統/機器人系統
502:機器人手臂
504:末端執行器
505:路徑/軌跡
506:滑槽或貯存箱
508:分段輸送機/輸送機
510:入口端
512:控制電腦
514:3D攝影機
516:3D攝影機
518:按需遙操作裝置/遙操作裝置
520:人類工人/人類操作員
522:狹槽/托盤/目的地

Claims (33)

  1. 一種系統,其包括: 一通信介面;及 一處理器,其耦合至該通信介面且經組態以: 經由該通信介面接收感測器資料,該感測器資料包含與存在於一工作區中之一物件相關聯之資料;及 使用該感測器資料來判定及實施用以自主地操作一機器人結構以移動該物件且將該物件單獨放置於一單分輸送結構中之一對應位置中的一計劃,該計劃考量至少部分基於該感測器資料判定之該物件之一屬性。
  2. 如請求項1之系統,其中該物件之該屬性包括該物件之至少一側上之一識別符或標記之一位置。
  3. 如請求項2之系統,其中該處理器經組態以至少部分基於該識別符或標記將由一或多個感測器成功地掃描之一概率之一判定來判定及實施該計劃。
  4. 如請求項3之系統,其中: 該機器人結構包括具有一末端執行器之一機器人手臂;及 該一或多個感測器安置於該機器人手臂及該末端執行器之一或多者上。
  5. 如請求項3之系統,其中該一或多個感測器包括安裝於該工作區中之固定位置處之一多軸感測器陣列。
  6. 如請求項3之系統,其中該識別符或標記將被成功地掃描之該概率係至少部分基於該一或多個感測器之一位置,及該物件自該工作區至該單分輸送結構中之該對應位置之一經計劃軌跡。
  7. 如請求項1之系統,其中判定用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之一對應位置中之該計劃包括至少部分基於以下來判定一抓握策略及將該物件移動至該單分輸送結構中之該對應位置之一對應軌跡: 該物件之至少一側上之一識別符或標記將由一或多個感測器成功地掃描之一概率;及 該移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中將成功之一概率。
  8. 如請求項1之系統,其中判定及實施該計劃包括: 判定移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之一初始計劃; 使用該初始計劃來操作該機器人結構以抓握該物件並開始將該物件沿著一最初計劃之軌跡移動至該單分輸送結構中之該對應位置; 經由該通信介面接收當前感測器資料,該感測器資料包含影像資料; 至少部分基於該當前感測器資料來判定用以移動該物件且將該物件單獨放置於該對應位置中之一經更新計劃;及 根據該經更新計劃操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中。
  9. 如請求項8之系統,其中判定該經更新計劃包括選擇該單分輸送結構中之在其內放置由該機器人結構抓握之該物件之一新位置。
  10. 如請求項8之系統,其中該處理器經組態以至少部分基於以下來判定該經更新計劃: 判定該物件在由該機器人結構抓握時之該移動係不規則的;及 回應於該物件之該移動係不規則的之該判定,判定產生該經更新計劃以實施操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中, 其中該經更新計劃係回應於產生該經更新計劃之一判定來判定。
  11. 如請求項8之系統,其中該處理器經組態以至少部分基於以下來判定該經更新計劃: 判定該物件在由該機器人結構抓握時之該屬性係不規則的;及 判定產生該經更新計劃以實施操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中, 其中產生該經更新計劃之該判定係至少部分基於該物件之該屬性。
  12. 如請求項11之系統,其中該物件之該屬性包括該物件之一重量。
  13. 如請求項8之系統,其中該處理器經組態以至少部分基於以下來判定該經更新計劃: 在由該機器人結構抓握之該物件係不規則的時,判定該單分輸送結構上之一或多個物件之一或多個特性;及 判定產生該經更新計劃以實施操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中, 其中產生該經更新計劃之該判定係至少部分基於該物件之該屬性及該單分輸送結構上之該一或多個物件之該一或多個特性。
  14. 如請求項13之系統,其中該單分輸送結構上之該一或多個物件之該一或多個特性包括該單分輸送結構上之該一或多個物件之至少一者之一高度。
  15. 如請求項14之系統,其中該經更新計劃對應於該物件或該機器人結構之一經更新軌跡,且該物件或該機器人結構之該經更新軌跡經判定不與該單分輸送結構上之該一或多個物件碰撞。
  16. 如請求項14之系統,其中: 該經更新計劃對應於該單分輸送結構上之其內將放置該物件之一托盤之一經更新選擇;且 至少部分基於該單分輸送結構上之該一或多個物件之該一或多個特性來選擇一新托盤。
  17. 如請求項16之系統,其中: 選擇該新托盤以防止該物件被放置於鄰近於一經佔用托盤之一托盤中;且 該經佔用托盤具有擁有超過一預定義高度臨限值之一高度之一或多個物件。
  18. 如請求項1之系統,其中該處理器經組態以判定該單分輸送結構之一輸送帶之一速度,及至少部分基於該單分輸送結構之一輸送帶之該速度來組態用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃。
  19. 如請求項18之系統,其中該計劃經組態以自主地操作該機器人結構以依匹配該單分輸送結構之該輸送帶之該速度之一速度來移動,及將該物件單獨放置於該單分輸送結構中之該對應位置中。
  20. 如請求項18之系統,其中該計劃經組態以判定該物件將沿著其行進以將該物件單獨放置於該單分輸送結構中之該對應位置中的一軌跡,且該軌跡係至少部分基於該輸送帶之該速度來判定。
  21. 如請求項1之系統,其中該物件之該屬性包括該物件之一重量。
  22. 如請求項21之系統,其中: 該處理器經組態以: 基於該感測器資料來判定該物件之一大小;及 在該物件由該機器人結構抓握之前估計該物件之該重量,該重量至少部分基於該物件之該大小來估計;及 用以自主地操作該機器人結構之該計劃係至少部分基於該物件之該重量來判定。
  23. 如請求項21之系統,其中: 該處理器經組態以: 在該物件由該機器人結構抓握時接收當前感測器資料; 在該物件由該機器人結構抓握時判定該物件之該重量,該重量至少部分基於該當前感測器資料之一大小來判定;及 使用該物件之該重量來更新及實施用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃。
  24. 如請求項21之系統,其中判定及實施用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃包括: 判定結合單分來移動該物件之一速度,該速度至少部分基於該物件之該屬性來判定。
  25. 如請求項24之系統,其中: 該機器人結構包括一機器人手臂,該機器人手臂具有安置於該機器人手臂之一遠端處之複數個末端執行器;且 判定及實施用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃包括: 以在該物件由該機器人結構移動時抑制該物件之一擺動之一方式控制該機器人手臂或至少一個末端執行器。
  26. 如請求項22之系統,其中基於該感測器資料判定該物件之該大小包括: 獲得對應於複數個感測器之一陣列之感測器資料; 判定由該物件絆倒之一組該複數個感測器;及 至少部分基於由該物件絆倒之該組該複數個感測器來判定該物件之該大小。
  27. 如請求項1之系統,其中判定及實施用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃包括: 判定該物件之一大小及該單分輸送結構上之一經單分物件之一大小之一或多者;及 至少部分基於該物件之該大小及該單分輸送結構上之該經單分物件之該大小之該一或多者來更新該計劃。
  28. 如請求項27之系統,其中判定及實施用以自主地操作該機器人結構以移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該計劃包括: 至少部分基於該物件之該大小及該單分輸送結構上之該經單分物件之該大小之該一或多者來判定該單分輸送結構上之將放置該物件之一位置;或 判定用於移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中之該物件之一軌跡,該軌跡至少部分基於該物件之該大小及該單分輸送結構上之該經單分物件之該大小之該一或多者來判定;或 判定用於釋放該物件以將該物件單獨放置於該單分輸送結構中之該對應位置中之一釋放策略,該釋放策略至少部分基於該物件之該大小及該單分輸送結構上之該經單分物件之該大小之該一或多者來判定。
  29. 如請求項1之系統,其中: 該機器人結構包括複數個末端執行器; 該複數個末端執行器包括複數個吸盤;且 移動該物件且將該物件單獨放置於該單分輸送結構中之該對應位置中包括: 在釋放來自該複數個吸盤之一第二子集之吸力之前釋放來自該複數個吸盤之一第一子集之吸力。
  30. 如請求項29之系統,其中在釋放來自該複數個吸盤之該第二子集之吸力之前該釋放來自該複數個吸盤之該第一子集之吸力包括: 釋放來自該複數個吸盤之該第一子集之吸力;及 在釋放來自該複數個吸盤之該第二子集之吸力的同時,自該複數個吸盤之該第一子集吹出空氣。
  31. 如請求項1之系統,其中該處理器經組態以: 使用該感測器資料來識別一單分程序中之預期一托盤為空之一點處之該托盤;及 回應於識別該托盤,使用與該托盤有關之該感測器資料來訓練該系統以至少部分基於對應於一空托盤之一或多個屬性來判定空的之一托盤。
  32. 一種方法,其包括: 經由一通信介面接收感測器資料,該感測器資料包含與存在於一工作區中之一物件相關聯之資料;及 使用該感測器資料來判定及實施用以自主地操作一機器人結構以移動該物件且將該物件單獨放置於一單分輸送結構中之一對應位置中之一計劃,該計劃考量至少部分基於該感測器資料判定之該物件之一屬性。
  33. 一種體現於一非暫時性電腦可讀媒體中之電腦程式產品,其包括用於以下之電腦指令: 經由一通信介面接收感測器資料,該感測器資料包含與存在於一工作區中之一物件相關聯之資料;及 使用該感測器資料來判定及實施用以自主地操作一機器人結構以移動該物件且將該物件單獨放置於一單分輸送結構中之一對應位置中之一計劃,該計劃考量至少部分基於該感測器資料判定之該物件之一屬性。
TW111108917A 2021-03-15 2022-03-11 機器人單分系統、動態單分方法及體現於一非暫時性電腦可讀媒體中之電腦程式產品 TWI833175B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/202,040 2021-03-15
US17/202,040 US20220289502A1 (en) 2021-03-15 2021-03-15 Adaptive robotic singulation system

Publications (2)

Publication Number Publication Date
TW202241669A true TW202241669A (zh) 2022-11-01
TWI833175B TWI833175B (zh) 2024-02-21

Family

ID=83195598

Family Applications (1)

Application Number Title Priority Date Filing Date
TW111108917A TWI833175B (zh) 2021-03-15 2022-03-11 機器人單分系統、動態單分方法及體現於一非暫時性電腦可讀媒體中之電腦程式產品

Country Status (4)

Country Link
US (1) US20220289502A1 (zh)
EP (1) EP4308489A1 (zh)
TW (1) TWI833175B (zh)
WO (1) WO2022197456A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116259210A (zh) * 2023-05-15 2023-06-13 江苏长江智能制造研究院有限责任公司 一种智能制造用搬运实训机器人

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115643800A (zh) * 2021-05-18 2023-01-24 牧今科技 用于物体大小测量的机器人***

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1419368B1 (en) * 2001-08-24 2008-11-12 United Parcel Service Of America, Inc. Method and apparatus for measuring and diverting an object from a high-speed conveyor
CA2715455C (en) * 2009-09-25 2015-04-28 Johnsen Machine Company Ltd. Palletizing system and method
US10221015B2 (en) * 2016-06-27 2019-03-05 Amazon Technologies, Inc. Automated item singulation
GB2573206B (en) * 2016-09-08 2021-12-15 Walmart Apollo Llc Automated tote routing system and methods
US10351347B2 (en) * 2016-12-21 2019-07-16 United States Postal Service Methods and systems for in-route item sorting and packaging
WO2019021058A2 (en) * 2017-07-25 2019-01-31 Mbl Limited SYSTEMS AND METHODS FOR OPERATING A ROBOTIC SYSTEM AND EXECUTING ROBOTIC INTERACTIONS
TWI798468B (zh) * 2018-07-16 2023-04-11 開曼群島商星猿哲科技國際有限公司 用於耦合可分離工具之系統及用於解耦可分離工具之方法
US20200039676A1 (en) * 2018-08-02 2020-02-06 The Recon Group LLP System and methods for automatic labeling of articles of arbitrary shape, size and orientation
KR20240042157A (ko) * 2018-10-30 2024-04-01 무진 아이엔씨 자동화된 패키지 등록 시스템, 디바이스 및 방법
US10906188B1 (en) * 2019-10-25 2021-02-02 Dexterity, Inc. Singulation of arbitrary mixed items

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116259210A (zh) * 2023-05-15 2023-06-13 江苏长江智能制造研究院有限责任公司 一种智能制造用搬运实训机器人
CN116259210B (zh) * 2023-05-15 2023-07-18 江苏长江智能制造研究院有限责任公司 一种智能制造用搬运实训机器人

Also Published As

Publication number Publication date
EP4308489A1 (en) 2024-01-24
US20220289502A1 (en) 2022-09-15
TWI833175B (zh) 2024-02-21
WO2022197456A1 (en) 2022-09-22

Similar Documents

Publication Publication Date Title
CN114585576B (zh) 协调多个机器人以满足工作流程并避免冲突
EP3988257B1 (en) Systems and methods for providing processing of a variety of objects employing motion planning
TWI833175B (zh) 機器人單分系統、動態單分方法及體現於一非暫時性電腦可讀媒體中之電腦程式產品
JP2024517170A (ja) アイテムを識別するためのロボットシステム
TWI829116B (zh) 機器人分割系統、動態分割方法及體現於一非暫時性電腦可讀媒體中之電腦程式產品
US20230303342A1 (en) Robotic induction of heavy objects by pushing
TW202302303A (zh) 塑料袋夾持吸杯
US20230321694A1 (en) Detection of heavy objects using computer vision
EP4260954A1 (en) System and method of routing an item and computer program product
EP4249184A1 (en) Robotic induction of heavy objects by pushing
US20230321825A1 (en) Detection of heavy objects in robotic induction
US20230302652A1 (en) Robotically actuated mechanism to redirect an object to alternative induction
US20220289501A1 (en) Singulation of arbitrary mixed items
US20230242353A1 (en) Robot informed dynamic parcel inflow gating
TW202303479A (zh) 管理物流之機器人控制結構