JP2021501102A - 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法 - Google Patents

自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法 Download PDF

Info

Publication number
JP2021501102A
JP2021501102A JP2020516651A JP2020516651A JP2021501102A JP 2021501102 A JP2021501102 A JP 2021501102A JP 2020516651 A JP2020516651 A JP 2020516651A JP 2020516651 A JP2020516651 A JP 2020516651A JP 2021501102 A JP2021501102 A JP 2021501102A
Authority
JP
Japan
Prior art keywords
scan
robot system
unrecognized object
unrecognized
sensor
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.)
Granted
Application number
JP2020516651A
Other languages
English (en)
Other versions
JP6822719B2 (ja
Inventor
ニコラエフ デアンコウ,ロセン
ニコラエフ デアンコウ,ロセン
リュウ,フアン
イエ,シュータオ
ジェロニモ モレイラ ロドリゲス,ジョセ
ジェロニモ モレイラ ロドリゲス,ジョセ
良樹 金本
良樹 金本
ユ,ジンズ
イスラム,ラッセル
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mujin Inc
Original Assignee
Mujin Inc
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 Mujin Inc filed Critical Mujin Inc
Priority to JP2020216438A priority Critical patent/JP7340203B2/ja
Publication of JP2021501102A publication Critical patent/JP2021501102A/ja
Application granted granted Critical
Publication of JP6822719B2 publication Critical patent/JP6822719B2/ja
Priority to JP2023133633A priority patent/JP2023160842A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • B65G63/00Transferring or trans-shipping at storage areas, railway yards or harbours or in opening mining cuts; Marshalling yard installations
    • B65G63/002Transferring or trans-shipping at storage areas, railway yards or harbours or in opening mining cuts; Marshalling yard installations for articles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • G06Q10/087Inventory or stock management, e.g. order filling, procurement or balancing against orders
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65GTRANSPORT OR STORAGE DEVICES, e.g. CONVEYORS FOR LOADING OR TIPPING, SHOP CONVEYOR SYSTEMS OR PNEUMATIC TUBE CONVEYORS
    • B65G61/00Use of pick-up or transfer devices or of manipulators for stacking or de-stacking articles not otherwise provided for
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1674Programme controls characterised by safety, monitoring, diagnostic
    • B25J9/1676Avoiding collision or forbidden zones
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1679Programme controls characterised by the tasks executed
    • B25J9/1687Assembly, peg and hole, palletising, straight line, weaving pattern movement
    • 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
    • B65BMACHINES, APPARATUS OR DEVICES FOR, OR METHODS OF, PACKAGING ARTICLES OR MATERIALS; UNPACKING
    • B65B43/00Forming, feeding, opening or setting-up containers or receptacles in association with packaging
    • B65B43/42Feeding or positioning bags, boxes, or cartons in the distended, opened, or set-up state; Feeding preformed rigid containers, e.g. tins, capsules, glass tubes, glasses, to the packaging position; Locating containers or receptacles at the filling position; Supporting containers or receptacles during the filling operation
    • B65B43/46Feeding or positioning bags, boxes, or cartons in the distended, opened, or set-up state; Feeding preformed rigid containers, e.g. tins, capsules, glass tubes, glasses, to the packaging position; Locating containers or receptacles at the filling position; Supporting containers or receptacles during the filling operation using grippers
    • 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
    • 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
    • B65G59/02De-stacking from the top of the stack
    • 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/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
    • G05B19/4093Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine
    • G05B19/40931Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by part programming, e.g. entry of geometrical information as taken from a technical drawing, combining this with machining and material information to obtain control information, named part programme, for the NC machine concerning programming of geometry
    • G05B19/40935Selection of predetermined shapes and defining the dimensions with parameter input
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • G06T7/001Industrial image inspection using an image reference approach
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/12Edge-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/13Edge detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/174Segmentation; Edge detection involving the use of two or more images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/25Determination of region of interest [ROI] or a volume of interest [VOI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • 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
    • B65G2201/00Indexing codes relating to handling devices, e.g. conveyors, characterised by the type of product or load being conveyed or handled
    • B65G2201/02Articles
    • 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
    • B65G2814/00Indexing codes relating to loading or unloading articles or bulk materials
    • B65G2814/03Loading or unloading means
    • B65G2814/0301General arrangements
    • B65G2814/0308Destacking devices
    • B65G2814/031Removing from the top
    • 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/40006Placing, palletize, un palletize, paper roll placing, box stacking
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/04Indexing scheme for image data processing or generation, in general involving 3D image data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20164Salient point detection; Corner detection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30164Workpiece; Machine component
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/44Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V2201/00Indexing scheme relating to image or video recognition or understanding
    • G06V2201/06Recognition of objects for industrial automation

Abstract

【課題】撮影された物体の物理的特性の正確な識別に失敗することに起因して、ロボットシステムが停止したり、パッケージの取り扱いを誤ったりすることを防止する。【解決手段】ロボットシステムを動作させて、認識されていない物体をスキャンおよび登録するシステムおよび方法を開示する。ロボットシステムは、スタート位置にある認識されていない物体を表す画像データを使用して、認識されていない物体をスタート位置から移動する動作を実施してよい。動作を実施している間、ロボットシステムは、画像データに含まれない認識されていない物体の1つまたは複数の部分のスキャン結果を含む、追加データを取得してよい。ロボットシステムは、追加データを使用して、認識されていない物体を登録してよい。【選択図】図7

Description

関連出願の相互参照
本出願は、2018年10月30日出願の米国仮特許出願番号第62/752,756号の利益を主張し、さらに、2019年5月24日出願の米国仮特許出願番号第62/852,963号の利益を主張し、参照によりその両方の全体が本明細書に組み込まれる。本出願は、2019年3月1日出願の米国特許出願番号第16/290,741号であり、現在、米国特許番号第10,369,701号と、2019年1月25日出願の米国特許出願番号第16/258,120号とにも関連し、さらに、2019年8月13日出願の米国特許出願番号第16/539,790号に関連し、参照によりそれら3つ全ての全体が本明細書に組み込まれる。
本技術は、一般的に、ロボットシステムを対象とし、より具体的には、物体をスキャンし、登録するシステム、プロセス、および、技術を対象とする。
パッケージは、目的地への出荷のためにパレタイズされ、目的地で、デパレタイズされることが多い。デパレタイズが、費用が高くなって怪我の危険性がある人間作業者によって行われる場合がある。デパレタイズが産業用ロボットによって行われる時、撮像装置を採用して、パレットに積まれたパッケージのスタックの画像が撮影され得る。システムは、画像を処理して、登録データソースに記憶された登録画像と撮影画像を比較すること等によって、パッケージがロボットアームによって効率的に取り扱われることが保証され得る。パッケージの撮影画像が登録画像に一致する場合、システムは、撮影された物体の物理的特性(例えば、パッケージの寸法、重さ、および/または、質量中心の測定値)を判別する。しかしながら、物理的特性の正確な識別に失敗すると、様々な望ましくない結果につながる。例えば、このような失敗は停止の原因となることがあり、停止すると、パッケージを手動で登録することが必要となる場合がある。また、このような失敗は、特に、パッケージが比較的重いおよび/または傾いている場合、パッケージの取り扱いを誤ることにつながり得る。
パッケージスキャン登録メカニズムを備えたロボットシステムが動作し得る環境の例を示す図である。 本明細書で紹介した1つまたは複数の実施形態による、ロボットシステムを示すブロック図である。 本明細書で紹介した1つまたは複数の実施形態による、ロボットシステムの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、ロボットシステムの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、スキャンシーケンスの図である。 本明細書で紹介した1つまたは複数の実施形態による、図1のロボットシステムを動作させる方法のフロー図である。
自動パッケージスキャンおよび登録メカニズムを備えたロボットシステムのためのシステムおよび方法を本明細書に記載する。ある実施形態にしたがって構成されたロボットシステム(例えば、1つまたは複数の指定されたタスクを実行するデバイスを統合したシステム)は、以前は知られていなかった、または、認識されていなかった物体(例えば、パッケージ、箱、ケース等)を自律的に(例えば、人間オペレータによる入力が殆どまたは全く無く自動的に)スキャン、登録することによって、使用性と柔軟性を向上させる。
様々なタスクを行うために、ロボットシステムは、スタート位置の物体に関するデータ(例えば、物体の露出した表面の1つまたは複数の画像)を取得し、既知のまたは予測された物体の登録データと比較できる。ある例においては、予測された物体の情報のセットが不完全なため、および/または、コンピュータビジョンに関する誤差のため等により、比較が一致しない場合がある。比較データの一部が既知または予測された物体の登録データと一致しない時、ロボットシステムは、対応する位置の物体(複数可)は認識されていないと判断できる。
本明細書に記載のロボットシステムの実施形態は、認識されていない物体を自律的に、識別、操作、および、登録する。ロボットシステムが、センサ出力の部分が、1つまたは複数の認識されていない物体に対応すると判断すると、ロボットシステムは、他の物体とは別個の、または、隣り合わない認識されていない物体の露出した辺、および/または、露出した外側角部を識別できる。露出した辺および/または露出した外側角部に基づいて、ロボットシステムは、露出した表面上の最小実行可能領域(MVR)を導出できる。MVRは、対応する物体と接触および対応する物体を持ち上げるためのエリアに関連付けられてよい。したがって、ロボットシステムは、MVRを用いて認識されていない物体を把持し、認識されていない物体を操作して、認識されていない物体に関連付けられたタスクを完了(例えば、1つの位置から別の位置に移動)できる。
タスクを行っている間、ロボットシステムは、認識されていない物体に関するさらなる情報を取得および利用できる。例えば、ロボットシステムは、認識されていない物体の高さおよび/または深度等の追加情報を、認識されていない物体の移動中に取得できる。タスクを完了する時、ロボットシステムは、交差基準(例えば、交差センサに対応する検出線/平面)を越えて認識されていない物体を上昇または下降させることができる。交差基準は、スタート位置の真上、および/または、タスク位置の真上等、移動された物体が占める必要がある位置にわたって横方向に延びてよい。ロボットシステムは、下降する物体が最初に交差基準を越える時、および/または、上昇する物体が交差基準を通過する時等、センサイベントを検出できる。ロボットシステムは、そのイベント時に、操作されている物体に接触しているエンドエフェクタ(例えば、把持部)の垂直位置(例えば、高さ)を決定できる。したがって、ロボットシステムは、イベント時のエンドエフェクタの高さを交差センサの既知の垂直位置と比較することに基づいて、物体の高さ(例えば、物体高さ)を決定できる。
さらに、ロボットシステムは、未知の物体のマーク(例えば、バーコード、クイックレスポンス(QR)コード(登録商標)、および/または、物体の識別に使用される他のメカニズム)の識別に関するプロファイル/側面図の画像および/または情報を自律的に取得できる。タスクを完了している間、ロボットシステムは、タスクを行いながら、スキャンセンサ(例えば、バーコードセンサ、クイックレスポンス(QR)コードセンサ(登録商標)、視覚カメラ、および/または、他の識別子センサ)の前の1つまたは複数の導出された位置に認識されていない物体を配置できる。配置位置は、タスクを行っている間に取得された長さ、幅、高さ/深度の測定値等、認識されていない物体の他の取得された特性に基づいて導出されてよい。ロボットシステムは、同様に、認識されていない物体の複数の表面をスキャンイメージャに提示するスキャン操作(例えば、水平方向直線運動、垂直方向直線運動、および/または、回転運動)を導出できる。ロボットシステムは、スキャン操作にしたがって、スキャンセンサを動作させるタイミングも導出できる。
ロボットシステムは、新しく発見された(例えば、以前は不確かだった)辺および/または角部、関連する測定値(例えば、物体の寸法)、更新された表面画像/デプスマップ、識別マークの位置および/または値、または、これらの組み合わせを使用して、認識されていない物体を登録できる。換言すると、ロボットシステムは、新しい情報をマスタデータに記憶して、以前は認識されなかった物体を自律的に登録(「自動登録」)できる。したがって、ロボットシステムは、自動登録データを使用して、同じ種類の物体のその後のインスタンスを識別、処理、および/または、操作できる。
さらに、以下に記載のように認識されていない物体の特性を取得および導出することは、オペレータの助けを借りずに、認識されていない物体であっても処理(例えば、移動、梱包、開梱等)する能力をロボットシステムに提供する。したがって、ロボットシステムの動作全体は、認識されていない物体が存在する時でさえ、中断されずに続けることができる。また、導出されたスキャン位置および対応する操作は、移動/物体操作を中断することなく、認識されていない物体の識別マークのスキャンに成功する可能性を高める。したがって、ロボットシステムは、タスクベースの動作計画から逸脱せずに、物体を3Dでスキャンできる。
以下の記載において、本開示の技術の完全な理解を提供するために、多くの特定の詳細を記載する。他の実施形態においては、本明細書で紹介する技術は、これらの特定の詳細が無くても実践できる。他の例においては、特定の機能またはルーチン等の周知の特徴は、本開示を不必要に曖昧にしないように、詳細には記載しない。本明細書において、「ある実施形態」「一実施形態」等の言及は、記載している特定の特徴、構造、材料、または、特性が、本開示の少なくとも1つの実施形態に含まれることを意味する。したがって、本明細書におけるこのような句の出現は、全て同じ実施形態を必ずしも指してはいない。他方、このような言及は、必ずしも互いに排他的なものではない。さらに、特定の特徴、構造、材料、または、特性は、1つまたは複数の実施形態において、任意の適切な方法で組み合わせることができる。図に示す様々な実施形態は、説明のための表現に過ぎず、必ずしも、縮尺通りに描いてはいないことは理解されたい。
ロボットシステムおよびサブシステムに関連付けられることが多いが、開示の技術の幾つかの重要な態様を不必要に曖昧にし得る構造またはプロセスを記載する周知の幾つかの詳細は、明確にするために、以下には記載していない。さらに、以下の開示は、本明細書に紹介した異なる態様の幾つかの実施形態を記載するが、幾つかの他の実施形態は、この項に記載するのとは異なる構成または構成要素を有し得る。したがって、開示の技術は、追加の要素を有する、または、以下に記載の要素の幾つかを含まない他の実施形態を有し得る。
以下に記載の本開示の多くの実施形態または態様は、プログラム可能なコンピュータまたはプロセッサによって実行されるルーチンを含む、コンピュータまたはプロセッサで実行可能な命令の形を取り得る。以下に示し、記載する以外のコンピュータまたはプロセッサシステムで開示の技術を実践できることを当業者は認識されよう。本明細書に記載の技術は、以下に記載のコンピュータ実行可能命令の1つまたは複数を実行するように具体的にプログラム、構成、または、構築された専用コンピュータまたはデータプロセッサで実現できる。したがって、本明細書で一般的に使用される「コンピュータ」および「プロセッサ」という用語は、任意のデータプロセッサを指し、(パームトップコンピュータ、ウェアラブルコンピュータ、セルラーフォン、モバイルフォン、マルチプロセッサシステム、プロセッサベースもしくはプログラム可能家電製品、ネットワークコンピュータ、ミニコンピュータ等を含む)インターネット家電およびハンドヘルドデバイスを含み得る。これらのコンピュータおよびプロセッサが取り扱う情報は、液晶ディスプレイ(LCD)を含む任意の適切な表示媒体に提示できる。コンピュータまたはプロセッサで実行可能なタスクを実行するための命令は、ハードウェア、ファームウェア、または、ハードウェアおよびファームウェアの組み合わせを含む、任意の適切なコンピュータ可読媒体に記憶できる。命令は、例えば、フラッシュドライブおよび/または他の適切な媒体を含む任意の適切なメモリデバイスに含まれてよい。
「結合された」および「接続された」という用語、並びに、これらの派生語は、構成要素間の構造的関係を記載するために本明細書では使用されてよい。これらの用語は、互いに同意語と意図されていないことを理解されたい。むしろ、特定の実施形態において、「接続された」を使用して、2つ以上の要素が互いに直接接触していることを示すことができる。文脈においてそうでないことが明らかでない限り、「結合された」という用語を使用して、2つ以上の要素が、互いに直接的または間接的に(要素と要素の間に他の介在する要素がある)接触していること、(例えば、信号送信/受信、または、関数呼び出し等の因果関係においてのように)2つ以上の要素が互いに協力または相互作用すること、または、その両方を示すことができる。
好適な環境
図1は、パッケージスキャン登録メカニズムを備えたロボットシステム100が動作し得る環境の例である。ロボットシステム100は、1つまたは複数のタスクを実行するように構成された1つまたは複数のユニット(例えば、ロボット)を含むことができる、および/または、それらと通信できる。梱包メカニズムの態様は、様々なユニットによって実践または実施できる。
図1に示す例に関しては、ロボットシステム100は、倉庫または分配/出荷拠点において、荷降ろしユニット102、移動ユニット104(例えば、パレットに載せるロボット、および/または、ピースピッキングロボット)、運搬ユニット106、積み込みユニット108、または、これらの組み合わせを含み得る。ロボットシステム100の各ユニットは、1つまたは複数のタスクを実行するように構成できる。タスクは、トラックまたはバンから物体を降ろし、物体を倉庫に保管する、または、保管場所から物体を降ろし、出荷の準備をする等、目的を達成する動作を行うように順次、組み合わせることができる。他の例に関しては、タスクは、対象位置(例えば、パレットの上、および/または、大箱/ケージ/箱/ケース内)に物体を載置することを含み得る。以下に記載のように、ロボットシステムは、物体を載置するおよび/または積み重ねるための計画(例えば、置き場所/向き、物体を移動する順番、および/または、対応する動作計画)を導出できる。各ユニットは、(例えば、ユニットの1つまたは複数の構成要素を動作させる)一連のアクションを実行してタスクを実行するように構成されてよい。
ある実施形態においては、タスクはスタート位置114からタスク位置116への対象物体112(例えば、実行するタスクに対応するパッケージ、箱、ケース、ケージ、パレット等の1つ)の操作(例えば、移動および/または向きの変更)を含み得る。例えば、荷降ろしユニット102(例えば、デバンニングロボット)は、運搬装置(例えば、トラック)内の位置から、コンベヤベルト上の位置に対象物体112を移動するように構成されてよい。また、移動ユニット104は、1つの位置(例えば、コンベヤベルト、パレット、または、大箱)から他の位置(例えば、パレット、大箱等)に対象物体112を移動するように構成されてよい。他の例に関しては、移動ユニット104(例えば、パレットに載せるロボット)は、対象物体112を元の位置(例えば、パレット、ピックアップエリア、および/または、コンベヤ)から目的パレットに移動するように構成されてよい。動作を完了する時、運搬ユニット106は、移動ユニット104に関連付けられたエリアから、積み込みユニット108に関連付けられたエリアに対象物体112を移動でき、積み込みユニット108は、移動ユニット104から保管場所(例えば、棚上の位置)に(例えば、対象物体112を載せたパレットを動かすことによって)対象物体112を移動できる。このタスクおよびそれに関連する動作に関する詳細を以下に記載する。
説明目的で、ロボットシステム100を、出荷センタの文脈で記載するが、ロボットシステム100は、製造、アセンブリ、梱包、ヘルスケア、および/または、他の種類の自動化等、他の環境において/他の目的のために、タスクを実行するように構成されてよいことは理解されたい。ロボットシステム100は、図1に示されていない、マニピュレータ、サービスロボット、モジュール式ロボット等、他のユニットを含み得ることも理解されたい。例えば、ある実施形態においては、ロボットシステム100は、ケージカートまたはパレットからコンベヤまたは他のパレット上に物体を移動するデパレタイズユニット、1つのコンテナから別のコンテナに物体を移動するコンテナ切替ユニット、物体を梱包する梱包ユニット、物体の1つまたは複数の特性にしたがって物体をグループにする仕分けユニット、物体の1つまたは複数の特性にしたがって物体を異なるように操作(例えば、仕分け、グループ化、および/または、移動)するピースピッキングユニット、または、これらの組み合わせを含み得る。さらに、ロボットシステム100は、物体を梱包/配置し、その物体を出荷用に積み込むため、および/または、入荷貨物から物体を処理、保管するため等、異なる順番でタスクを実行するように構成されてよいことは、理解されたい。
好適なシステム
図2は、本明細書で紹介した1つまたは複数の実施形態による、ロボットシステム100を示すブロック図である。ある実施形態においては、例えば、ロボットシステム100(例えば、上記のユニットおよび/またはロボットの1つまたは複数において)1つまたは複数のプロセッサ202、1つまたは複数の記憶装置204、1つまたは複数の通信装置206、1つまたは複数の入出力装置208、1つまたは複数の駆動装置212、1つまたは複数の運搬モータ214、1つまたは複数のセンサ216、または、これらの組み合わせ等、電子/電気デバイスを含み得る。様々なデバイスは、有線接続および/または無線接続を介して互いに結合されてよい。例えば、ロボットシステム100は、システムバス、ペリフェラルコンポーネントインターコネクト(PCI:Peripheral Component Interconnect)バスもしくはPCIエクスプレスバス、ハイパートランスポート(HyperTransport)もしくはインダストリスタンダートアーキテクチャ(ISA:industry standard architecture)バス、小型コンピュータシステムインタフェース(SCSI)バス、ユニバーサルシリアルバス(USB)、IIC(I2C)バス、または、電気電子技術者協会(IEEE:Institute of Electrical and Electronics Engineers)規格1394バス(「ファイヤワイヤ」とも言われる)等のバスを含み得る。また、例えば、ロボットシステム100は、ブリッジ、アダプタ、プロセッサ、または、デバイス間に有線接続を提供するための他の信号に関連するデバイスを含み得る。無線接続は、例えば、セルラー通信プロトコル(例えば、3G、4G、LTE、5G等)、無線ローカルエリアネットワーク(LAN)プロトコル(例えば、ワイヤレスフィデリティ(WIFI))、ピアツーピアもしくはデバイスツーデバイス通信プロトコル(例えば、ブルートゥース(登録商標)、近距離無線通信(NFC)等)、インターネットオブシングズ(IoT)プロトコル(例えば、NB−IoT、LTE−M等)、および/または、他の無線通信プロトコルに基づいてよい。
プロセッサ202は、記憶装置204(例えば、コンピュータメモリ)に記憶された命令(例えば、ソフトウェア命令)を実行するように構成されたデータプロセッサ(例えば、中央処理装置(CPU)、専用コンピュータ、および/または、オンボードサーバ)を含み得る。ある実施形態においては、プロセッサ202は、図2に示された他の電子/電気デバイス、および/または、図1に示されたロボットユニットに動作可能に結合された別個の/スタンドアロンコントローラに含まれてよい。プロセッサ202は、プログラム命令を実施して、他のデバイスを制御/他のデバイスとインタフェースすることによって、ロボットシステム100に、アクション、タスク、および/または、動作を実行させることができる。
記憶装置204は、プログラム命令(例えば、ソフトウェア)を記憶した非一時的なコンピュータ読み取り可能媒体を含み得る。記憶装置204の幾つかの例は、揮発性メモリ(例えば、キャッシュおよび/またはランダムアクセスメモリ(RAM))、および/または、不揮発性メモリ(例えば、フラッシュメモリ、および/または、磁気ディスクドライブ)を含み得る。記憶装置204の他の例は、ポータブルメモリドライブ、および/または、クラウドストレージデバイスを含み得る。
ある実施形態においては、記憶装置204を使用して、処理結果、および/または、所定のデータ/閾値をさらに記憶し、それらにアクセスできる。例えば、記憶装置204は、ロボットシステム100によって操作され得る物体(例えば、箱、ケース、および/または、製品)の記載を含むマスタデータ252を記憶できる。1つまたは複数の実施形態において、マスタデータ252は、このような各物体の登録データ254を含み得る。登録データ254は、ロボットシステム100によって操作されることが予測される物体の、寸法、形状(例えば、異なる姿勢の物体を認識するための、可能な姿勢のテンプレート、および/または、コンピュータによって生成されたモデル)、カラースキーム、画像、識別情報(例えば、バーコード、クイックレスポンス(QR)コード(登録商標)、ロゴ等、および/または、これらの予測される位置)、予測重量、他の物理的/視覚的特性、または、これらの組み合わせを含み得る。ある実施形態においては、マスタデータ252は、質量中心(CoM)の位置、または、各物体に対するCoMの位置の推定、1つまたは複数のアクション/操作に対応する予測されるセンサ測定値(例えば、力、トルク、圧力、および/または、接触の測定値)、または、これらの組み合わせ等、物体の操作に関連する情報を含み得る。
通信装置206は、ネットワークを介して外部装置またはリモート装置と通信するように構成された回路を含み得る。例えば、通信装置206は、受信器、送信器、変調器/復調器(モデム)、信号検出器、信号エンコーダ/デコーダ、コネクタポート、ネットワークカード等を含み得る。通信装置206は、1つまたは複数の通信プロトコル(例えば、インターネットプロトコル(IP)、無線通信プロトコル等)にしたがって、電気信号を送信、受信、および/または、処理するように構成されてよい。ある実施形態においては、ロボットシステム100は、通信装置206を使用して、ロボットシステム100のユニット間で情報を交換できる、および/または、(例えば、報告、データ収集、分析、および/または、トラブルシューティングの目的で)ロボットシステム100の外部にあるシステムまたはデバイスと情報を交換できる。
入出力装置208は、人間オペレータに情報を通信するように、および/または、人間オペレータから情報を受信するように構成されたユーザインタフェース装置を含み得る。例えば、入出力装置208は、人間オペレータに情報を通信するためのディスプレイ210、および/または、他の出力装置(例えば、スピーカ、触覚回路、または、触覚フィードバック装置等)を含み得る。また、入出力装置208は、キーボード、マウス、タッチスクリーン、マイクロフォン、ユーザインタフェース(UI)センサ(例えば、動作コマンドを受信するためのカメラ)、ウェアラブル入力装置等、制御装置または受信装置も含み得る。ある実施形態においては、ロボットシステム100は、アクション、タスク、動作、または、これらの組み合わせを実行する時、入出力装置208を使用して、人間オペレータと対話できる。
ロボットシステム100は、動き(例えば、回転変位および/または並進変位)のためにジョイントに接続された物理的または構造的な部材(例えば、ロボットマニピュレータアーム)を含み得る。構造部材およびジョイントは、ロボットシステム100の使用/動作に応じて、1つまたは複数のタスク(例えば、把持、回転、溶接等)を実行するように構成されたエンドエフェクタ(例えば、把持部)を操作するように構成された運動連鎖を形成できる。ロボットシステム100は、対応するジョイントを中心に、または、対応するジョイントで構造部材を作動または操作(例えば、変位、および/または、向き変更)するように構成された駆動装置212(例えば、モータ、アクチュエータ、ワイヤ、人工筋肉、電気活性ポリマー等)を含み得る。ある実施形態においては、ロボットシステム100は、対応するユニット/シャシを場所から場所へと運搬するように構成された運搬モータ214を含み得る。
ロボットシステム100は、構造部材を操作するため、および/または、ロボットユニットを運搬するため等、タスクの実施に使用される情報を取得するように構成されたセンサ216を含み得る。センサ216は、ロボットシステム100の1つまたは複数の物理的特性(例えば、ロボットシステムの1つまたは複数の構造部材/ジョイントの状況、状態、および/または、位置)、および/または、周囲環境の1つまたは複数の物理的特性を検出または測定するように構成されたデバイスを含み得る。センサ216の幾つかの例は、加速度計、ジャイロスコープ、力センサ、ひずみゲージ、触覚センサ、トルクセンサ、位置エンコーダ等を含み得る。
ある実施形態においては、例えば、センサ216は、周囲環境を検出するように構成された1つまたは複数の撮像装置222(例えば、視覚カメラ、および/または、赤外線カメラ、2Dおよび/または3Dイメージングカメラ、ライダまたはレーダ等の距離測定装置等)を含み得る。撮像装置222は、(例えば、自動検査、ロボット誘導、または、他のロボット用途のために)機械/コンピュータビジョンを介して処理され得る、デジタル画像および/または点群等、検出された環境の表現を生成し得る。以下にさらに詳細に記載するように、ロボットシステム100は、(例えば、プロセッサ202を介して)デジタル画像および/または点群を処理して、図1の対象物体112、図1のスタート位置114、図1のタスク位置116、対象物体112の姿勢、スタート位置114および/または姿勢に関する信頼基準、または、これらの組み合わせを識別できる。
対象物体112を操作するために、ロボットシステム100は、(例えば、上記の様々な回路/デバイスを介して)、指定エリア(例えば、トラック内またはコンベヤベルト等のピックアップ位置)の画像を撮影、分析して、対象物体112と対象物体112のスタート位置114とを識別できる。同様に、ロボットシステム100は、別の指定エリア(例えば、コンベヤ上に物体を載置するための投下位置、コンテナ内の物体を置く位置、または、積み重ねるためのパレット上の位置)の画像を撮影、分析して、タスク位置116を識別できる。例えば、撮像装置222は、ピックアップエリアの画像を生成するように構成された1つまたは複数のカメラ、および/または、タスクエリア(例えば、投下エリア)の画像を生成するように構成された1つまたは複数のカメラを含み得る。撮影画像に基づいて、以下に記載のように、ロボットシステム100は、スタート位置114、タスク位置116、関連する姿勢、梱包/載置計画、運搬/梱包順序、および/または、他の処理結果を判断できる。梱包アルゴリズムに関する詳細を以下に記載する。
ある実施形態においては、例えば、センサ216は、構造部材(例えば、ロボットアームおよび/またはエンドエフェクタ)、および/または、ロボットシステム100の対応するジョイントの位置を検出するように構成された位置センサ224(例えば、位置エンコーダ、ポテンショメータ等)を含み得る。ロボットシステム100は、タスク実行中に、位置センサ224を使用して、構造部材および/またはジョイントの位置および/または向きを追跡できる。
目的地ベースのセンサを用いた物体の移動、スキャン、および、登録
図3は、本明細書で紹介した1つまたは複数の実施形態による、図1のロボットシステム100の図である。ロボットシステム100は、エンドエフェクタ304(例えば、把持部)を含むロボットアーム302(例えば、図1の移動ユニット104の例)を含み得る。ロボットアーム302は、図1のスタート位置114と図1のタスク位置116との間で対象物体112を移動するように構成されてよい。図3に示すように、スタート位置114は、対象スタック310(例えば、物体のグループ)を載せたパレット308を有し得る。ロボットアーム302のタスク位置116は、コンベヤ306(例えば、図1の運搬ユニット106の例)の載置位置(例えば、開始/放出点)であってよい。例えば、ロボットアーム302は、対象スタック310から物体を掴み取るように、且つ、物体を他の目的地/タスクに運搬するためにコンベヤ306に載せるように構成されてよい。
ロボットシステム100は、ロボットアーム302を用いた移動動作を行う時、図2のセンサ216の1つまたは複数を使用できる。ある実施形態においては、ロボットシステム100は、第1の画像センサ312および/または第2の画像センサ314を含み得る。第1の画像センサ312は、スタート位置114を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。第2の画像センサ314は、タスク位置116を撮影および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。例えば、第1の画像センサ312は、スタート位置114より上でスタート位置114の方を向く既知の位置に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。第1の画像センサ312は、対象スタック310の上面図等、スタート位置114の1つまたは複数の上面図に対応する画像データを生成できる。また、第2の画像センサ314は、タスク位置116の上でタスク位置116の方を向く1つまたは複数の既知の位置、または関連する空間に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。したがって、第2の画像センサ314は、タスク位置116から閾値距離に、または、閾値距離内にある対象物体112の1つまたは複数の上面図に対応する画像データを生成できる。
ある実施形態においては、ロボットシステム100は、対応する検出線/平面を物体が越える/離れる交差イベントを検出するように構成された1つまたは複数の交差センサ(例えば、目的地交差センサ316、および/または、解放点センサ318)を含み得る。例えば、交差センサは、送信信号および/または反射信号(例えば、光信号、レーザ等)の連続性/中断に基づいて、交差イベントを検出するラインセンサまたは平面センサを含み得る。交差センサは、ある実施形態においては、検出線に沿って光信号を送信し、検出線の端で送信信号を検出および/または反射できる。したがって、交差センサは、送信された光信号の受信の中断(例えば、不連続性)を検出でき、これは、物体が検出線を越える/検出線に入ることを表す進入イベントに対応し得る。同様に、交差センサは、中断期間の後、送信信号を再検出でき、これは、物体が検出線を出ることを表す退出イベントに対応し得る。交差センサは、光信号および/または光信号のシーケンス中断の検出、再検出に基づいて、イベントデータ(例えば、フラグ、状態決定、交差方向、および/または、タイムスタンプ)を生成および/または通信できる。
ある実施形態においては、解放点センサ318を使用して、把持した物体を解放できる。解放点センサ318は、タスク位置116より上に配置されてよく、および/または、所定の高さに検出線を確立できる。検出線/平面の高さ(例えば、解放高さ)は、物体を損傷することなく、安全に物体を解放/投下できる高さであってよい。例として、検出線の高さは、コンベヤ306の載置位置の上10cm以下であってよい。したがって、ロボットシステム100は、解放点センサ318が検出した交差イベントを、運んでいる物体をエンドエフェクタ304から解放するトリガとして使用できる。ある実施形態においては、解放高さは、目的地交差センサ316の検出線/平面と重なってよい、または、一致してよい。他の実施形態においては、解放高さは、目的地交差センサ316の検出線/平面の垂直位置と、タスク位置116の載置面(例えば、コンベヤ306の載置面)の垂直位置との間であってよい。換言すると、目的地交差センサ316の検出線/平面は、解放点センサ318に対応する解放高さより上に位置してよい。
ある実施形態においては、目的地交差センサ316を使用して、移動中の対象物体112の高さを測定できる。例えば、ロボットシステム100は、進入イベント時に目的地交差センサ316が検出した把持部高さ322(例えば、地面等の基準点に対するエンドエフェクタ304の垂直位置/場所/座標)を決定できる。ロボットシステム100は、把持部高さ322を交差基準高さ324(例えば、目的地交差センサ316の既知の垂直位置、および/または、目的地交差センサ316の基準線/平面)と比較して、移動中の対象物体112の物体高さ320を計算できる。換言すると、目的地交差センサ316は、対象物体112の底部が検出線を越える時を示すトリガとして機能することができる。したがって、ロボットシステム100は、このような時の把持部高さ322と検出線の既知の高さとを使用して、対象物体112の物体高さ320を計算できる。
ある実施形態においては、ロボットシステム100は、移動中に物体をスキャンするように構成された1つまたは複数のスキャンセンサ330を含み得る。スキャンセンサ330の幾つかの例は、バーコードスキャナ、QRコードスキャナ(登録商標)、イメージング(2D)カメラ、無線周波数識別(RFID)スキャナ、および/または、他の種類の識別スキャン装置を含み得る。スキャンセンサ330は、スタート位置114の真上の空間、および/または、タスク位置116の真上の空間等、移動された物体が占める必要がある位置をスキャンするように配置されてよい。さらに、スキャンセンサ330は、目的地交差センサ316および/または他の基準位置(例えば、地面)に対して既知の位置に配置されてよい。
目的地交差センサ316およびスキャンセンサ330の相対的な位置/配置に基づいて、ロボットシステム100は、目的地交差センサ316からの情報、または、目的地交差センサ316に関連付けられた情報にしたがって、スキャンセンサ330を動作させることができる。図3に示す例に関して、スキャンセンサ330は、目的地交差センサ316より上の既知の高さに位置し、タスク位置116の上の領域をスキャンするように配置されてよい。ある実施形態においては、目的地交差センサ316のステータス(例えば、交差/退出イベント)は、スキャンセンサ330(例えば、タスク位置116の上の空間に向けられた水平方向に向いたカメラ)の1つまたは複数のインスタンスをトリガして、データをスキャンおよび収集できる。他の実施形態においては、ロボットシステム100は、計算した物体高さ320、または、その処理結果に基づいて、スキャン位置および/またはスキャン操作を導出できる。したがって、ロボットシステム100は、タスクを行いながら、異なる視点からの物体に関するデータ(例えば、側面またはプロファイル図/画像、異なる次元に沿った形状測定値等)を取得できる、および/または、識別情報をスキャンできる。
説明目的で、コンベヤ306に取り付けられた目的地交差センサ316およびスキャンセンサ330を示す。しかしながら、目的地交差センサ316およびスキャンセンサ330は異なる構成であってよいことは理解されたい。例えば、目的地交差センサ316およびスキャンセンサ330は、タスク位置116のいずれの装置とも接続されなくてよく、および/または、独立していてよい。また、スキャンセンサ330は、物体の複数の表面を同時に/連続してスキャンする異なる位置および向きに配置されたスキャナのセットを含み得ることを理解されたい。
目的地交差センサ316およびスキャンセンサ330(例えば、水平方向を向いているカメラまたはIDスキャナ)は、移動中の認識されていない物体の追加データを取得できる。上記のように、目的地交差センサ316を使用して、物体を移動している時に、追加の操作/動き無しに、移動される物体の物体高さ320を計算できる。さらに、他の物体の上に載っている時に変形する物体もあるので、物体を持ち上げた後に物体高さ320を決定することは、高さ測定の精度を向上させる。換言すると、物体の形状、および、任意の対応する寸法は、物体が持ち上げられる/吊り下げられる時、変化する場合がある。例えば、吊り下げられる時、物体のプロファイル、および/または、対応する高さ(例えば、エンドエフェクタ304から物体の底部までの距離)は、プラスチック包装の布ベースの品物またはゴムベースの品物等、パッケージの剛性の不足のために変化する場合がある。交差センサ(例えば、目的地交差センサ316)を用いて、移動中、物体高さ320を決定することによって、ロボットシステム100は、移動中の物体の形状/寸法の任意の変化を、(例えば、動作計画を介して)正確に考慮できる。したがって、ロボットシステム100は、物体を移動している時に、実際の物体高さ(例えば、置いた時の高さではなく、吊り下げられた時の物体の高さ)を使用することによって、形状の変化が原因で生じ得る衝突を低減/除去できる。ある実施形態においては、ロボットシステム100は、移動される物体の揺れ、または、振り子のような揺れの低減等のために、実際の物体高さにしたがって、運搬速度、運搬加速度、または、これらの組み合わせを調整できる。ある実施形態においては、ロボットシステム100は、止まっている物体高さ、および/または、移動している物体高さを使用して、認識されていない物体を登録できる。
さらに、ロボットシステム100は、計算した物体高さ320にしたがって、物体を操作し、スキャンセンサ330を動作させて、第1の画像センサ312および/または第2の画像センサ314では検出できないことがある認識されていない物体に関する正確な識別情報(例えば、1つまたは複数の垂直方向に向いた表面/辺、プロファイル形状、識別子の値、および/または、識別子の位置の2D/3D画像)を提供できる。以下にさらに詳細に記載するように、物体高さおよび/または追加情報を使用して、認識されていない物体の図2の登録データ254を生成できる。したがって、ロボットシステム100は、認識されていない物体に関してより多くの情報を取得でき、この情報を使用して、移動タスクを妨害することなく、他の類似の物体のその後の認識の可能性を向上させることができ、および/または、物体のさらなる操作の精度を向上させることができる。
ある実施形態においては、ロボットシステム100は、物体高さおよび/または追加情報を使用して、上面に加えて、物体の他の表面(例えば、垂直方向に向いた表面/寸法)を分析する等によって、物体を再分析、認識できる。したがって、ロボットシステム100は、認識されない箱の数、または、検出漏れの結果を低減できる。
目的地ベースセンサの物体の高さ計算およびスキャンシーケンス
図4A〜4Dは、本明細書で紹介した1つまたは複数の実施形態による、高さ計算と物体のスキャンのシーケンス(例えば、様々な例示の処理状態)を示す。図4Aは、高さが未知の状態402を示す。高さが未知の状態402に関して、図1のロボットシステム100は、図3のロボットアーム302を動作させて、または、動作させるための命令を実行して、エンドエフェクタ304と対象物体112をタスク位置116の上に水平方向に重なるように配置できる。高さが未知の状態402は、物体高さ320の計算に先行する。したがって、ロボットシステム100は、タスク位置116(すなわち、コンベヤ306)の方に対象物体112を下降させることができる。高さが未知の状態402中、ロボットシステム100は、スキャンセンサ330に関連付けられたスキャンゾーンの外側(例えば、上および/または下)に対象物体112を配置し得る。したがって、スキャンセンサ330は、非アクティブなままであってよい。
図4Bは、対象物体112の底部が検出線416(例えば、目的地交差センサ316によって送信/検出されるレーザ/光信号によって横切られる線)に入る、または、検出線416を越えることに対応する高さ計算状態404を示す。上記のように、ロボットシステム100は、交差イベント時に把持部高さ322を取得できる。図3の把持部高さ322と交差基準高さ324(例えば、検出線416の高さ)とを用いて、ロボットシステム100は、(例えば、2つのパラメータ間の差として)物体高さ320を計算できる。高さ計算状態404中、ロボットシステム100は、スキャンセンサ330に関連付けられたスキャンゾーンの外側(例えば、上および/または下)に対象物体112を配置し得る。したがって、スキャンセンサ330は、非アクティブなままであってよい。
図4Cは、スキャン状態406を示す。計算した物体高さ320に基づいて、ロボットシステム100は、1つまたは複数のスキャン位置412および/またはスキャン操作414を導出できる。スキャン位置412は、対象物体112の1つまたは複数の表面(例えば、周囲の/垂直方向に向いた表面)、または、その表面の一部を提示し、スキャンセンサ330を用いてスキャンするようにエンドエフェクタ304を配置する位置および/または向き(例えば、姿勢)を含み得る。換言すると、スキャン位置412は、スキャンセンサ330の(例えば、前、および/または、所定の距離内の)スキャンゾーン内に対象物体112を配置する位置であってよい。スキャン操作414は、認識されていない物体をスキャンするための空間にわたってエンドエフェクタ304を移動するように構成されたコマンドおよび/または設定のシーケンス(例えば、動作計画)を含み得る。換言すると、スキャン操作414は、認識されていない物体の表面および/または複数の表面の複数の部分をスキャンするための(例えば、z軸に沿った)垂直変位、(例えば、x軸および/またはy軸に沿った)水平変位、および/または、回転(例えば、z軸を中心とした回転)に対応し得る。
説明のための例として、物体は、1つまたは複数の物体表面の角部および/または端部上のバーコードおよび/またはQRコード(登録商標)を典型的に含んでよい。バーコードおよび/またはQRコード(登録商標)をスキャンするために、ロボットシステム100は、計算した物体高さ320を使用して、対象物体112(例えば、認識されていない物体)の角部および/または端部を突き止めることができる。したがって、物体高さ320に基づいて、ロボットシステム100は、認識されていない物体上のバーコード、QRコード(登録商標)、および/または、他の識別子を正確に突き止める可能性を高くすることができる。
ロボットシステム100は、角部および/または端部の位置の推定を使用して、スキャン位置412を導出できる。ロボットシステム100は、スキャン位置412にしたがって、図3のロボットアーム302および/またはエンドエフェクタ304を動作させることによって、対象物体112の1つまたは複数の表面をスキャンセンサ330のスキャンゾーンに配置できる。例えば、ロボットシステム100は、対象物体の底部が検出線416を越えた後、垂直方向に向いた表面の底部または上部がスキャンゾーン内になるように、対象物体112を上昇させることができる。また、ロボットシステム100は、垂直方向に向いた表面の上部がスキャンゾーン内になるように、対象物体112を下降させることができる。ロボットシステム100は、対象物体112がスキャンゾーン内の垂直方向の中心になるように、対象物体112を上昇/下降させてよい。
ロボットシステム100は、角部および/または端部の位置の推定に基づいて、スキャン操作414をさらに導出できる。例えば、ロボットシステム100は、対象物体112を水平に/垂直に移動して、対象物体112の複数の角部および/または端部をスキャンセンサ330に提示するスキャン操作414を導出できる。また、ロボットシステム100は、対象物体112を回転させて対象物体112の複数の表面をスキャンセンサ330に提示するスキャン操作404を導出できる。
ロボットシステム100は、エンドエフェクタ304をスキャン位置412に配置することに基づいて、および/または、スキャン操作414を実施することに基づいて、スキャンセンサ330を動作できる。例えば、ロボットシステム100は、エンドエフェクタ304をスキャン位置412に配置した後、および/または、スキャン操作414の実施中に所定のタイミングで、スキャンセンサ330をトリガできる。また、ロボットシステム100は、スキャンセンサ330を作動させたままで、スキャン操作414を実施できる。したがって、スキャン位置412および/またはスキャン操作414に基づいて、ロボットシステム100は、認識されていない物体の複数の表面/部分を提示し、認識されていない物体上の識別子を正確に突き止め、スキャンする可能性を高めることができる。
代替実施形態において、ロボットシステム100は、スキャンセンサ330を(例えば、ロボットアームを介して)移動させて、対象物体112をスキャンできる。したがって、ロボットシステム100は、対象物体112の代わりに、スキャンセンサ330を移動または再配置するためのスキャン位置412および/またはスキャン操作414を導出できる。したがって、ロボットシステム100は、スキャン中、対象物体112の移動を最小限にすることによって、スキャン中の(例えば、把持失敗または衝突による)物体の損失の可能性を低減/除去できる。
図4Dは、スキャン状態406をさらに示す。より具体的には、図4Dは、上から見た対象物体112を示す。ある実施形態においては、ロボットシステム100は、複数のスキャンセンサ330と対応するスキャンゾーンとにしたがって、スキャン位置412および/またはスキャン操作414を導出できる。また、説明のための例として、ロボットシステム100は、x軸および/またはy軸に沿って認識された物体を移動するための、および/または、z軸を中心に物体を回転させるためのスキャン操作414を導出できる。
ソースベースのセンサを用いた物体の移動、スキャン、および、登録
図5は、本明細書で紹介した1つまたは複数の実施形態による、図1のロボットシステム100の図である。図5に示すロボットシステム100の態様は、図3に示す態様と類似し得るが、1つまたは複数のセンサが異なる位置に配置されている。
ロボットシステム100は、エンドエフェクタ504(例えば、把持部)を含むロボットアーム502(例えば、図1の移動ユニット104のインスタンス)を含み得る。ロボットアーム502は、図1のスタート位置114と図1のタスク位置116との間で図1の対象物体112を移動するように構成されてよい。ある実施形態においては、スタート位置114は、対象スタック510(例えば、対象物体112を含み得る物体のグループ)を載せたコンテナ508(例えば、囲いのあるカート)に対応し得る。ロボットアーム502のタスク位置116は、コンベヤ506(例えば、図1の運搬ユニット106のインスタンス)上の載置位置(例えば、スタート/出口点)であってよい。例えば、ロボットアーム502は、対象スタック510から物体を持ち上げ、他の目的地/タスクに運搬するためにコンベヤ506にその物体を置くように構成されてよい。
ロボットシステム100は、ロボットアーム502を用いて移動動作を行う時、図2のセンサ216の1つまたは複数を使用できる。ある実施形態においては、ロボットシステム100は、第1の画像センサ512および/または第2の画像センサ514を含み得る。第1の画像センサ512は、スタート位置114を撮像および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。第2の画像センサ514は、タスク位置116を撮像および/または分析するように構成された、カメラおよび/またはデプスセンサ等、1つまたは複数の2Dおよび/または3Dセンサを含み得る。例えば、第1の画像センサ512は、スタート位置114の上でスタート位置114を向いている既知の位置に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。第1の画像センサ512は、対象スタック510の上面図等、スタート位置114の1つまたは複数の上面図に対応する画像データを生成できる。また、第2の画像センサ514は、タスク位置116の上でタスク位置116を向いている1つまたは複数の既知の位置に配置された1つまたは複数のカメラおよび/またはデプスセンサを含み得る。したがって、第2の画像センサ514は、タスク位置116に、または、タスク位置116から閾値距離内にある対象物体112の1つまたは複数の上面図に対応する画像データを生成できる。
ある実施形態においては、ロボットシステム100は、物体が、対応する検出線/平面(例えば、交差基準520)を越える/出る交差イベントを検出するように構成された1つまたは複数の交差センサ(例えば、ソース交差センサ516および/または解放点センサ518)を含み得る。例えば、交差センサは、送信信号および/または反射信号(例えば、光信号、レーザ等)の連続性/中断に基づいて、交差イベントを検出するラインセンサまたは平面センサに対応し得る。交差センサは、ある実施形態においては、検出線に沿って光信号を送信し、検出線の端で送信信号を検出および/または反射することによって、交差基準520を確立できる。したがって、交差センサは、送信された光信号の受信の中断(例えば、不連続性)を検出でき、これは、交差基準520を越える/に入る物体を表す進入イベントに対応し得る。同様に、交差センサは、中断期間後、送信信号を再検出でき、これは、物体が交差基準520を出ることを表す退出イベントに対応し得る。
ある実施形態においては、解放点センサ518を使用して、把持した物体を解放できる。解放点センサ518は、タスク位置116より上に配置されてよい、および/または、所定の高さに検出線を確立できる。検出線の高さは、物体を損傷することなく、物体を安全に投下する高さであってよい。例として、検出線の高さは、コンベヤ506の載置位置の上10cm未満であってよい。したがって、ロボットシステム100は、解放点センサ518が検出した交差イベントを、エンドエフェクタ304から運搬中の物体を解放するトリガとして、使用してよい。
ある実施形態においては、移動中、ソース交差センサ516を使用して、対象物体112の物体高さを測定できる。例えば、ロボットシステム100は、ソース交差センサ516が検出した交差イベント(例えば、退出イベント)時に、把持部高さ522(例えば、地面等の基準点に対するエンドエフェクタ504の垂直位置/場所)を決定できる。ロボットシステム100は、把持部高さ522を交差基準高さ524(例えば、ソース交差センサ516の既知の垂直位置、および/または、交差基準520)と比較して、移動中の対象物体112の物体高さを計算できる。換言すると、ソース交差センサ516は、対象物体112の底部が検出線を出る時を示すトリガとして機能することができる。したがって、ロボットシステム100は、このような時の把持部高さ522と、交差基準520の既知の高さとを使用して、対象物体112の物体高さを計算できる。
ある実施形態においては、ロボットシステム100は、移動中の物体をスキャンするように構成された1つまたは複数のスキャンセンサ530を含み得る。スキャンセンサ530の幾つかの例は、バーコードスキャナ、QRコードスキャナ(登録商標)、イメージング(2D)カメラ、無線周波数識別(RFID)スキャナ、および/または、他の種類の識別スキャン装置を含み得る。スキャンセンサ530は、スタート位置114および/またはタスク位置116の真上/隣の空間等、移動された物体が占める必要がある位置をスキャンするように配置されてよい。さらに、スキャンセンサ530は、図3の目的地交差センサ316、ソース交差センサ516、および/または、他の基準位置(例えば、地面)に対して既知の位置に配置されてよい。
ソース交差センサ516およびスキャンセンサ530の相対的な位置/配置に基づいて、ロボットシステム100は、ソース交差センサ516からの情報、または、ソース交差センサ516に関連付けられた情報にしたがって、スキャンセンサ530を動作できる。図5に示す例に関しては、スキャンセンサ530は、ソース交差センサ516より上の既知の高さに位置してよく、スタート位置114の上の領域をスキャンするように配置されてよい。ある実施形態においては、ソース交差センサ516のステータス(例えば、交差/退出イベント)は、スキャンセンサ530(例えば、スタート位置114の上の空間に向けられた水平方向を向くカメラ)の1つまたは複数のインスタンスをトリガして、データをスキャンおよび収集できる。他の実施形態においては、ロボットシステム100は、計算された物体高さ、または、その1つまたは複数の処理結果に基づいて、スキャン位置および/またはスキャン操作を導出できる。したがって、ロボットシステム100は、タスクを行っている間、異なる視点からの物体に関するデータ(例えば、側面またはプロファイル図/画像、底面図/画像、異なる次元に沿った形状測定値等)を取得できる、および/または、識別情報をスキャンできる。
説明目的で、コンテナ508に取り付けられたソース交差センサ516およびスキャンセンサ530が示されている。しかしながら、ソース交差センサ516およびスキャンセンサ530は異なる構成であってよいことは理解されたい。例えば、ソース交差センサ516およびスキャンセンサ530は、スタート位置114のいずれの装置とも接続されなくてよく、および/または、独立していてよい。また、スキャンセンサ530は、異なる位置および向きで配置され、物体の複数の表面を同時に/連続してスキャンするスキャナのセットを含み得ることを理解されたい。
ソース交差センサ516およびスキャンセンサ530(例えば、水平方向および/または上方向を向いたカメラまたはIDスキャナ)は、移動中の認識されていない物体の追加データを取得できる。上記のように、ソース交差センサ516を使用して、物体を移動する追加の操作/動き無しに、移動された物体の物体高さを計算できる。さらに、物体を持ち上げた後に物体高さを決定することは、他の物体の上に載ると変形する物体があるので、高さ測定値の精度を向上させる。換言すると、物体の形状、および、任意の対応する寸法は、物体が持ち上げられる/吊り下げられる時、変化する場合がある。例えば、吊り下げられる時、物体のプロファイル、および/または、対応する高さ(例えば、エンドエフェクタ504から物体の底部までの距離)は、プラスチック包装の布ベースの品物またはゴムベースの品物等、パッケージの剛性の不足のために変化する場合がある。交差センサ(例えば、ソース交差センサ516)を用いて、移動中の物体高さを決定することによって、ロボットシステム100は、移動中の物体の形状/寸法の任意の変化を、(例えば、動作計画を介して)正確に考慮できる。したがって、ロボットシステム100は、物体を移動している時に、実際の物体高さ(例えば、置いた時の高さではなく、吊り下げられた時の物体の高さ)を使用することによって、形状の変化が原因で生じ得る衝突を低減/除去できる。ある実施形態においては、ロボットシステム100は、移動される物体の揺れ、または、振り子のような揺れの低減等のために、実際の物体高さにしたがって、運搬速度、運搬加速度、または、これらの組み合わせを調整できる。ある実施形態においては、ロボットシステム100は、止まっている物体高さ、および/または、移動している物体高さを使用して、認識されていない物体を登録できる。
さらに、ロボットシステム100は、計算された物体高さにしたがって物体を操作し、スキャンセンサ530を動作させて、第1の画像センサ512および/または第2の画像センサ514によって検出できない場合がある認識されていない物体に関する正確な識別情報(例えば、1つまたは複数の垂直および/または底部の面/辺、プロファイル形状、識別子の値、および/または、識別子位置の2D/3D画像)を提供できる。以下にさらに詳細に記載するように、物体高さおよび/または追加情報を使用して、認識されていない物体の図2の登録データ254を生成できる。したがって、ロボットシステム100は、認識されていない物体に関してより多くの情報を取得でき、この情報を使用して、移動タスクを妨害することなく、他の類似の物体のその後の認識の可能性を向上させることができ、および/または、物体のさらなる操作の精度を向上させることができる。
ある実施形態においては、ロボットシステム100は、物体高さおよび/または追加情報を使用して、上面に加えて、物体の他の表面(例えば、垂直方向に向いた表面/寸法)を分析する等によって、物体を再分析、認識できる。したがって、ロボットシステム100は、認識されない箱の数、または、検出漏れの結果を低減できる。
ソースベースセンサの物体の高さ計算およびスキャンシーケンス
図6A〜6Dは、本明細書で紹介した1つまたは複数の実施形態による、高さ計算および物体スキャンのシーケンス(例えば、様々な例示の処理状態)を示す。図1のロボットシステム100は、エンドエフェクタ504の位置/高さ、および/または、図1の対象物体112にしたがって、ソース交差センサ516を動作できる/ソース交差センサ516の動作の命令を実行できる。
図6Aは、コンテナ508の上および/または外に位置する図5のロボットアーム502および/またはエンドエフェクタ504に対応する最初の状態602を表す。最初の状態602は、ロボットアーム502が、対象物体112の把持および持ち上げのためにコンテナ508内に入り始めることに対応し得る。したがって、ロボットシステム100は、最初の状態602の間は、図5のソース交差センサ516および/またはスキャンセンサ530からの出力をオフにおよび/または無視することができる。
図6Bは、ロボットアーム502が、コンテナ508の上部部分に入って下に降り、対象物体112に接触、把持すること、および/または、対象物体112を最初に持ち上げることに対応する接近状態604を表す。例えば、接近状態604は、エンドエフェクタ504が対象物体112の上(例えば、図1のスタート位置114に関連付けられた境界内)にあり、および/または、図5の交差基準高さ524より下にあることを表してよい。ロボットシステム100は、接近状態604中、スキャンセンサ530を引きき続きオフのままにしてよい、および/または、スキャンセンサ530の出力を無視してよい。
図6Cは、対象物体112が交差基準520を越えるまたは進入することに対応する交差状態606を表す。ロボットシステム100は、ロボットアーム502を動作させながら、図5の把持部高さ522を含む把持部位置(例えば、図5に示すx−y−zの値等、座標値のセット)を追跡できる。把持部高さ522が図5の交差基準高さ524を越える時、ロボットシステム100は、作動イベント612を生成して、ソース交差センサ516をオンにできる。ソース交差センサ516からの出力は、対象物体112が交差基準520を越えるまたは進入する最初の交差状態614に対応し得る。
ある実施形態においては、ロボットシステム100は、最初の状態602の後(例えば、接近状態604中)、ロボットアーム502が交差基準520を越えるので、作動イベント612を生成でき、および/または、最初の交差状態614を決定できる。換言すると、ロボットシステム100は、エンドエフェクタ504がコンテナ508の上にあり(例えば、水平方向に重なり)、且つ、把持部高さ522が交差基準高さ524未満の時、作動イベント612を生成でき、および/または、最初の交差状態614を決定できる。ある実施形態においては、ロボットシステム100は、交差状態606中、スキャンセンサ530をオフにしたままでよい、または、スキャンセンサ530の出力を無視してよい。他の実施形態においては、ロボットシステム100は、交差状態606中、把持部高さ522に基づいて、スキャンセンサ530をトリガまたは作動させてよい。
図6Dは、対象物体112が交差基準520を出るまたは通過することに対応する通過状態608を表す。通過状態608は、ソース交差センサ516が検出する退出イベント616に対応し得る。例えば、送信された光/レーザ信号は、対象物体112の底部が交差基準520より上にある時、ソース交差センサ516によって検出されてよい。
ロボットシステム100は、退出イベント616、または、そのタイミング(すなわち、退出イベント616に対応するタイムスタンプ)を使用して、対象物体112の物体高さ620を計算できる。ソース交差センサ516からの情報を用いて物体高さ620を計算する処理は、目的地交差センサ(例えば、図3の目的地交差センサ316)からの情報を用いた高さ計算の処理と類似してよい。例えば、ロボットシステム100は、退出イベント616時に、把持部高さ522を決定できる。ロボットシステム100は、退出イベント616時に、把持部高さ522と交差基準高さ524(例えば、既知/所定の値)との差に基づいて、物体高さ620を計算できる。ある実施形態においては、ロボットシステム100は、接近状態604中、スキャンセンサ530をオフにしたままであってよい、または、スキャンセンサ530からの出力を無視してよい。他の実施形態においては、ロボットシステム100は、退出イベント616および/または把持部高さ522に基づいて、スキャンセンサ530を作動またはトリガできる。
図6Eは、対象物体112が交差基準520を出るまたは通過することに対応する通過状態610を表す。計算された物体高さ620に基づいて、ロボットシステム100は、1つまたは複数のスキャン位置652および/またはスキャン操作654を導出できる。スキャン位置652は、対象物体112の1つまたは複数の表面(例えば、周囲の/垂直方向に向いた表面および/または底面)、または、その一部を提示し、スキャンセンサ530を用いてスキャンするようにエンドエフェクタ504を配置するための位置を含み得る。換言すると、スキャン位置652は、スキャンセンサ530のスキャンゾーン内(例えば、正面、および/または、所定距離内)に対象物体112を配置する位置であってよい。スキャン操作654は、認識されていない物体をスキャンする空間にわたってエンドエフェクタ504を移動させるように構成されたコマンドおよび/または設定のシーケンス(例えば、動作計画)を含み得る。換言すると、スキャン操作654は、認識されていない物体の表面および/または複数の表面の複数の部分をスキャンするための、認識されていない物体の(例えば、z軸に沿った)垂直変位、(例えば、x軸および/またはy軸に沿った)水平変位、および/または、回転(例えば、z軸を中心とした回転)に対応し得る。
説明のための例として、物体は、典型的に、1つまたは複数の物体表面の角部および/または端部上のバーコードおよび/またはQRコード(登録商標)を含んでよい。バーコードおよび/またはQRコード(登録商標)をスキャンするために、ロボットシステム100は、物体高さ620を使用して、対象物体112の底面を突き止めることができる。ロボットシステム100は、計算された物体高さ620および/または水平方向の寸法を使用して、対象物体112(例えば、認識されていない物体)の1つまたは複数の表面の角部および/または端部をさらに突き止めることができる。したがって、物体高さ620に基づいて、ロボットシステム100は、認識されていない物体上のバーコード、QRコード(登録商標)、および/または、他の識別子を正確に突き止める可能性を高めることができる。
ロボットシステム100は、角部および/または端部位置の推定位置を使用して、スキャン位置652を導出できる。ロボットシステム100は、スキャン位置562にしたがってロボットアーム502および/またはエンドエフェクタ504を動作させることによって、スキャンセンサ530のスキャンゾーンに対象物体112の1つまたは複数の表面を配置できる。例えば、ロボットシステム100は、対象物体112の底部が基準平面620を出た後、垂直方向に向いた表面の底部もしくは上部、または、底面がスキャンゾーン内になるように、対象物体112を上昇させることができる。また、ロボットシステム100は、垂直方向に向いた表面の上部がスキャンゾーン内になるように、対象物体112を下降させることができる。ロボットシステム100は、また、対象物体112がスキャンゾーン内の垂直方向の中心になるように、対象物体112を上昇/下降させてよい。
ロボットシステム100は、角部および/または端部位置の位置推定値に基づいて、スキャン操作654をさらに導出できる。例えば、ロボットシステム100は、対象物体112を水平に/垂直に移動して、対象物体の複数の角部、端部、および/または、表面をスキャンセンサ530に提示するスキャン操作654を導出できる。また、ロボットシステム100は、対象物体112を回転させて、対象物体112の複数の表面をスキャンセンサ530に提示するスキャン操作654を導出できる。
ロボットシステム100は、エンドエフェクタ504をスキャン位置652に配置することに基づいて、および/または、スキャン操作654を実施することに基づいて、スキャンセンサ530を動作させる命令を動作/実行できる。例えば、ロボットシステム100は、スキャン操作654を実施しながら、スキャン位置652におよび/または所定のタイミングでエンドエフェクタ504を配置した後、スキャンセンサ530をトリガできる。また、ロボットシステム100は、スキャンセンサ530を作動させている間、スキャン操作654を実施できる。したがって、スキャン位置652および/またはスキャン操作654に基づいて、ロボットシステム100は、認識されていない物体の複数の表面/部分を提示し、認識されていない物体上の識別子を正確に突き止め、スキャンする可能性を高めることができる。
代替実施形態において、ロボットシステム100は、(例えば、ロボットアームを介して)スキャンセンサ530を移動させて、対象物体112をスキャンできる。したがって、ロボットシステム100は、対象物体112の代わりに、スキャンセンサ530を移動または再配置するスキャン位置652および/またはスキャン操作654を導出できる。したがって、ロボットシステム100は、スキャン中の対象物体112の移動を最小にすることによって、(例えば、把持失敗または衝突による)物体損失の可能性を低減/除去できる。
図6Fは、スキャン状態610をさらに示す。ある実施形態においては、ロボットシステム100は、1つまたは複数のスキャンセンサ530と対応するスキャンゾーンとにしたがって、図6Eのスキャン位置652および/または図6Eのスキャン操作654を導出できる。また、説明のための例として、ロボットシステム100は、x軸および/またはy軸に沿って認識されていない物体を移動させる、および/または、z軸(垂直軸とも呼ばれる)を中心に認識されていない物体を回転させるスキャン操作654を導出できる。
説明目的で、交差センサとスキャンセンサの間の特定の配置に関してスキャンシーケンスを記載した。しかしながら、スキャンシーケンスが、異なる実施形態に異なるように適用できることは理解されたい。例えば、ロボットシステム100は、ソース交差センサ516を使用して、(例えば、状態602〜608を介して)物体高さ620を計算でき、図3のスキャンセンサ330を用いて等、図1のタスク位置116の近くの認識されていない物体をスキャンできる。したがって、ロボットシステム100は、認識されていない物体をタスク位置116に向けて下降させることに関連付けられたスキャン位置/操作を導出できる。
タスク実行中のスキャンおよび登録の動作フロー
図7は、本明細書で紹介した1つまたは複数の実施形態による、図1のロボットシステム100を動作させる方法700のフロー図である。方法700は、図1のスタート位置114(例えば、パレットおよび/またはコンテナ)から図1のタスク位置116(例えば、コンベヤ)に認識されていない物体を移動するため等、異なるタスクを実行しながら、認識されていない物体を登録する方法である。方法700は、交差センサ(例えば、図3の目的地交差センサ316、および/または、図5のソース交差センサ516)および/またはスキャンセンサ(例えば、図3のスキャンセンサ330および/または図5のスキャンセンサ530)を用いて、認識されていない物体に関する情報を取得する方法であってよい。取得された情報を使用して、認識されていない物体を登録できる。方法700は、図2の記憶装置204の1つまたは複数に記憶された命令を図2のプロセッサ202の1つまたは複数を用いて実行することに基づいて実施されてよい。
ブロック702において、ロボットシステム100(例えば、ロボットシステム100内の図2のプロセッサ202および/またはセンサ216)は、ソースデータを取得できる。例えば、ロボットシステム100は、スタート位置114の(例えば、1つまたは複数の物体を操作/移動する前の)図3の対象スタック310を表す最初の2Dおよび/または3D画像データを取得できる。ある実施形態においては、ロボットシステム100は、図3の第1の画像センサ312、図5の第1の画像センサ512、および/または、他のセンサを動作させて、スタート位置114にある(例えば、認識可能、または、そうでない)物体の上面を表す画像データを生成できる。ロボットシステム100は、センサ(例えば、第1の画像センサ312/512)とプロセッサ202との間で、さらなる処理のために画像データを通信できる。
ブロック704において、ロボットシステム100は、取得されたソースデータを処理して、認識可能な物体を検索できる。例えば、ロボットシステム100は、ソースデータまたはソースデータの派生値を図2のマスタデータ252と比較できる。ある実施形態においては、ロボットシステム100は、第1の画像センサ312/512からの1つまたは複数の2D画像データ(例えば、対象スタック310の対応する上面図)をマスタデータ252の既知のまたは予測された物体の表面画像と比較できる。
ブロック706において、ロボットシステム100は、ソースデータまたはソースデータの任意の部分がマスタデータ252に表された既知のまたは予測された物体の態様と一致するか否かを判断できる。ロボットシステム100は、ソースデータまたはソースデータの派生値がマスタデータ252のエントリ(例えば、既知の物体を表す登録データ)と一致する時、認識された物体を判断できる。そうでない場合、ロボットシステム100は、ソースデータに表された物体の1つまたは複数は、認識されていない物体の1つまたは複数を含むと判断できる。
物体が認識された時、ブロック708において、ロボットシステム100は、認識された物体をタスク位置116(例えば、コンベヤ306/506)に移動する等によって、認識された物体をさらに処理できる。ロボットシステム100は、認識された物体をタスク位置116に移動する動作計画を導出および/または実施できる。例えば、ロボットシステム100は、認識された物体の位置を使用して、ロボットアームおよび/またはエンドエフェクタの対応する位置を導出できる。ロボットシステム100は、図3のロボットアーム302もしくは図5のロボットアーム502、および/または、図3のエンドエフェクタ304/図5のエンドエフェクタ504の導出された位置および現在の/投影された位置を使用して、動きおよび/または対応するアクチュエータのコマンド/設定をさらに導出できる。同様に、ロボットシステム100は、移動のための認識された物体の持ち上げ、水平移動、下降、および/または、回転に対応するロボットアーム302/502および/またはエンドエフェクタ304/504の位置、動き、および/または、対応するアクチュエータのコマンド/設定を導出できる。ロボットシステム100は、スタート位置114からタスク位置116に認識された物体を移動するためにアクチュエータのコマンド/設定をシーケンスで組み合わせることに基づいて、動作計画を導出できる。ロボットシステム100は、移動コマンド/設定を所定の動きのシーケンス、および/または、対応するアクチュエータのコマンド/設定と組み合わせることに基づいて、物体を把持および/または解放する動作計画をさらに導出できる。ある実施形態においては、ロボットシステム100は、図3の解放点センサ318または図5の解放点センサ518からのトリガ信号に基づいて、物体を解放する動作計画を導出できる。解放点センサ318は、移動される物体の底部が載置表面より上の安全な解放高さに対応する検出線/平面を越える時、トリガ信号を生成するように構成されてよい。
ある実施形態において、ロボットシステム100は、コマンド/設定をロボットアーム302および/またはエンドエフェクタ304と通信することに基づいて、動作計画を実施/実行できる。したがって、ロボットシステム100は、導出したコマンド/設定にしたがってロボットアーム302/502および/またはエンドエフェクタ304/502の図2の駆動装置212および/または図2の運搬モータ214を動作させることに基づいて、導出した動作計画を実行できる。ある実施形態において、方法700は、認識された物体の1つまたは複数を移動した後、ブロック702に戻り、更新されたソースデータを取得できる。露出したおよび/またはアクセス可能な認識された物体の全て(例えば、対象スタック310の一番上の層の全ての認識された物体)がタスク位置116に移動されるまで、方法は、上記プロセス(例えば、ブロック702〜808)を繰り返し、実施できる。
残りの露出したおよび/またはアクセス可能な(例えば、マスタデータ252のエントリに対応または一致する)物体が認識されなくなった時、ロボットシステム100は、スタート位置112にある認識されていない物体を表す画像データを受信できる。例えば、画像データは、残りの認識されていない物体の1つまたは複数の上面を表すことができる。
ブロック710において、ロボットシステム100は、残りの認識されていない物体の位置を推定できる。例えば、ロボットシステム100は、第1のセンサ312/512からの撮像結果を使用して、認識されていない物体の水平方向の寸法、位置、および/または、境界を推定できる。認識されていない物体および/またはその境界を突き止めるために、ロボットシステム100は、ブロック712等に示すように、スタート位置114の物体の周囲の(露出された)辺および/または関連する角部を識別できる。例えば、ロボットシステム100は、3D画像出力(例えば、デプスマップ)にしたがって高さの差を決定することによって、および/または、画素の明るさ、画素の色、高さ/深度測定値等のパターン(例えば、連続したおよび/または線形のパターン)に関して2D画像出力を分析することによって、周囲の辺を識別できる。ある実施形態においては、ロボットシステム100は、ソーベルフィルタを用いて画像出力を処理して、露出した辺を識別できる。ロボットシステム100は、異なる向き/傾斜を有する2つの露出した辺の間の接合点または交点として、露出した外側角部を同様に識別できる。露出した角部を用いて、ロボットシステム100は、1つの対象の認識されていない物体に対応する最小エリアを表す最小実行可能領域(MVR)を導出できる。MVRは、認識されていない物体の連続した表面の最初の推定値を表すことができる。したがって、ブロック714で示すように、ロボットシステム100は、MVRを使用して、エンドエフェクタ304/504を用いて認識されていない物体に接触および把持する把持位置を導出できる。
ブロック720において、ロボットシステム100は、認識されていない物体に関連付けられた1つまたは複数のタスクを実施できる。例えば、ロボットシステム100は、スタート位置114からタスク位置116に認識されていない物体を移動できる。ある実施形態においては、ロボットシステム100は、画像データに基づいてタスクを実施できる。ロボットシステム100は、(3Dの辺の対向する側の深度値の段階的変化を示す3D点群で識別される辺であってよい)開口したまたは3Dの辺、および/または、認識されていない物体の上面(複数可)に対応する目に見える2Dの辺等の、画像データに表された周囲の辺のセットを識別できる。ロボットシステム100は、識別された周囲の辺に基づいて、MVRを導出できる。ロボットシステム100は、MVRを使用して、ロボットアーム302/502および/またはエンドエフェクタ304/504を動作して、または、動作させる命令を実行して、認識されていない物体を把持および移動できる。
ある実施形態においては、ロボットシステム100は、タスク実施中に、認識されていない物体に関する追加データを取得できる。例えば、ロボットシステム100は、認識されていない物体を移動して(例えば、持ち上げて)、または、移動する命令を実行して、認識されていない物体を隣の物体からさらに分離できる。ロボットシステム100は、次に、対象スタック310と移動された物体とを再撮像して、または、再撮像する命令を実行して、移動された物体の周囲の他の辺(例えば、他の隣の物体に以前は隣接していた、または、当接していた辺)をさらに識別できる。また、ロボットシステム100は、対応するスタート位置112から認識されていない物体を最初に移動した後等、タスクの最初の部分を実施中/実施している間、認識されていない物体の上面の寸法(例えば、幅および長さ)を計算/確定できる。
他の追加データを取得するために、ロボットシステム100は、ブロック732に示すように、認識されていない物体の物体高さ(例えば、図3の物体高さ320、および/または、図6の物体高さ620)を計算できる。ロボットシステム100は、上記のように、認識されていない物体の移動中の物体高さを計算できる。例えば、ロボットシステム100は、(例えば、関連付けられた動作計画、コマンド、および/または、設定を生成/送信することによって)動作を実施してタスクを行っている間、把持部位置を追跡することと交差イベントを検出することとに基づいて、物体高さを計算できる。交差イベントは、交差センサに関連付けられた交差基準(例えば、検出線)に対する(例えば、進入するおよび/または退出する)認識されていない物体の底部を表すことができる。ある実施形態においては、ロボットシステム100は、タスク位置116に向けて下降している間に、図3の目的地交差センサ316の検出線/平面に底部が進入することに関連付けられた交差イベントを使用できる。他の実施形態においては、ロボットシステム100は、スタート位置114から持ち上げられている間に、底部が図5のソース交差センサ516の検出線/平面に進入することおよび/または検出線/平面から退出することに関連付けられた交差イベントを使用できる。
ロボットシステム100は、イベントまたはイベントのタイミングを使用して、物体高さを計算できる。例えば、ロボットシステム100は、交差イベントのタイミングを使用して、把持部位置(例えば、交差イベント時の把持部高さ)を決定できる。ロボットシステム100は、交差イベント時の交差基準の既知の高さと把持部位置(例えば、把持部高さ)との間の差として物体高さを計算できる。
ブロック734において、ロボットシステム100は、移動中、計算された物体高さを使用して、認識されていない物体上の対象領域を突き止めることができる。対象領域は、最初の画像データに表されていなかった認識されていない物体の一部を表すことができる(例えば、第1の画像センサ312からの上面図画像は、認識されていない物体の側面/垂直方向に向いた表面または底部の表現を含まない場合がある)。ロボットシステム100は、最初の画像データで見えていた垂直方向に向いた表面、および/または、その周囲の辺の姿勢を推定できる。
説明のための例として、ロボットシステム100は、対象領域(例えば、垂直方向に向いた表面、および/または、その一部)の現在位置を、物体高さと上面の周囲の辺の寸法/位置とに基づいて、推定できる。タスク動作を実施している間、ロボットシステム100は、追跡された把持部位置に基づいた移動下の認識されていない物体の上面の現在の姿勢を導出/追跡できる。認識されていない物体(例えば、箱、円筒等)の全体形状を推定するテンプレート方程式またはプロセスにしたがって、ロボットシステム100は、上面の姿勢と物体高さとを使用して、認識されていない物体の姿勢(例えば、位置および/または向き)および/または1つまたは複数の垂直方向に向いた表面を画定する周囲の辺の位置を導出できる。周囲の辺の導出した姿勢に基づいて、ロボットシステム100は、認識されていない物体の垂直方向に向いた表面の端部(例えば、周囲の辺の近くのエリア)および/または角部として対象領域を突き止めることができる。ある実施形態においては、ロボットシステム100は、垂直方向に向いた表面の全体、および/または、識別子(例えば、バーコード、QRコード(登録商標)等)を有する可能性が高い表面上の他の部分として、対象領域を突き止めることができる。
ロボットシステム100は、垂直方向に向いた表面の寸法をさらに計算してよい。例えば、ロボットシステム100は、認識されていない物体が箱または円筒形状を有し、垂直方向に向いた表面の共通の長さとして物体高さを設定すると仮定できる。ロボットシステム100は、垂直方向に向いた表面のそれぞれの幅として、上面の対応する寸法を設定できる。追加的に、または、代替的に、ロボットシステム100は、移動中の認識されていない物体の底面の姿勢および/または寸法を導出してよい。
ブロック736において、ロボットシステム100は、突き止められた対象領域を使用して、スキャン位置(例えば、図4Cのスキャン位置412、および/または図6Eのスキャン位置652)を導出できる。スキャン位置の導出時に、ロボットシステム100は、利用可能なスキャンセンサ(例えば、スキャンセンサ(複数可)330および/またはスキャンセンサ(複数可)530)のスキャンゾーンを決定できる。スキャンゾーンは、センサの検出部分の前、センサの検出部分から閾値距離内、および/または、センサの検出部分を中心とした閾値角度範囲内の空間等、対応するスキャンセンサによって検出可能な空間を表すことができる。ロボットシステム100は、スキャンゾーンを突き止めるまたは画定する所定のデータを調べること、または、アクセスすることに基づいて、スキャンゾーンを決定できる。
ロボットシステム100は、一般的にスキャンゾーン内にセンサが向くように対象領域(例えば、垂直方向に向いた表面、および/または、その一部)を配置するためのスキャン位置を導出できる。換言すると、スキャン位置は、対象領域の1つまたは複数をスキャンセンサに提示するエンドエフェクタ304/504の所望の姿勢(例えば、位置および/または向き)を含み得る。
説明のための例として、ロボットシステム100は、垂直方向に向いた表面の寸法をスキャンゾーンの1つまたは複数の所定の寸法閾値と比較することによって、垂直方向に向いた表面全体が一度にスキャンできるか否かを判断できる。寸法が所定の寸法閾値未満の時、ロボットシステム100は、垂直方向に向いた表面の中心部分(例えば、垂直方向に向いた表面の導出された辺と辺の間の中点を含む対象位置)、および/または、所定の位置にある導出された辺の1つ(例えば、上の辺の中点を含む対象位置)をスキャンセンサに対して配置するスキャン位置を導出できる。例えば、ロボットシステム100は、垂直方向に向いた表面を、スキャンセンサの前から所定の距離だけ離して、中心にくるように配置できる。
垂直方向に向いた表面の寸法の1つまたは複数が、所定の寸法閾値の1つまたは複数より大きい時、ロボットシステム100は、認識されていない物体の垂直方向に向いた表面が大きすぎて1つの画像として正確に撮像または撮影できないと判断できる。したがって、ロボットシステム100は、対象位置(例えば、別個の角部/端部)をスキャンセンサに提示する1つまたは複数のスキャン位置を導出できる。換言すると、ロボットシステム100は、垂直方向に向いた表面の対象部分をスキャンセンサに向けてスキャンゾーンに配置するエンドエフェクタ304/504のスキャン位置を導出できる。例えば、ロボットシステム100は、閾値を超える垂直方向に向いた表面の寸法(複数可)にしたがって、垂直方向に向いた表面を完全にカバーまたは撮影するように構成された対象領域のセットを選択できる。セット内の個々の対象領域は、それぞれ、合計して、そのセットが垂直方向に向いた表面全体を撮影するように、異なる部分をカバーするように構成されてよい。ロボットシステム100は、垂直方向に向いた表面の1つまたは複数の周囲の辺、および/または、その対応する寸法にしたがって、選択された対象領域のそれぞれの基準位置を導出できる。ロボットシステム100は、対応する基準位置の選択された対象領域のそれぞれに対応するスキャン位置をスキャンセンサに対する既知の位置で導出できる。例えば、ロボットシステム100は、垂直方向に向いた表面の第1の角部または第1の端部をスキャンセンサに提示することに対応する第1のスキャン位置を導出できる。ロボットシステム100は、同様に、第2の角部または第2の端部を提示することに対応する第2のスキャン位置を導出できる。
ロボットシステム100は、認識されていない物体の底面に関連付けられたスキャン位置をさらに導出できる。例えば、ロボットシステム100は、上方を向いているスキャンセンサの上に底面を配置するスキャン位置を導出できる。ある実施形態においては、ロボットシステム100は、表面および/または1つまたは複数の表面内の一部のスキャンシーケンスを決定できる。例えば、ロボットシステム100は、識別子が対応する対象部分上にある可能性を表す信頼値を計算できる。ある実施形態においては、ロボットシステム100は、上面の1つまたは複数の視覚特性にしたがって、信頼値を計算できる。例えば、記載/ロゴが無いこと、および/または、長方形のフラップを分離する折り目または線の存在等、視覚特性が、認識されていない物体の上面が最初の画像に示されていることを示す時、ロボットシステム100は、信頼値を増加させることができる。ロボットシステム100は、可能性の値にしたがって、スキャン位置を順序付けることができる。
ある実施形態においては、ロボットシステム100は、ブロック738に示すように、スキャン操作(例えば、図4Cのスキャン操作414、および/または、図6Eのスキャン操作654)を導出できる。ロボットシステム100は、スキャン位置に基づいて、スキャン操作を導出できる。例えば、ロボットシステム100は、スキャン位置から他の位置に行くためにエンドエフェクタ304を水平方向におよび/または垂直方向に移動するスキャン操作を導出できる。また、ロボットシステム100は、エンドエフェクタをスキャン位置に配置した後、エンドエフェクタを、それにより、認識されていない物体を、垂直軸(例えば、z軸)を中心に回転させるスキャン操作を導出できる。スキャン操作を実施することによって、ロボットシステム100は、認識されていない物体を移動して、表面および/または複数の表面上の複数の部分をスキャンセンサに提示できる。
ブロック740において、ロボットシステム100は、対応するロボットユニットまたはロボットユニットの構成要素にコマンド、設定、および/または、動作計画を通信すること等によって、スキャン動作を実施できる。ロボットシステム100は、タスクを実施している間、または、タスク実施の途中で、スキャン動作を実施できる。ある実施形態においては、例えば、ロボットシステム100は、タスクの実施を停止でき、スキャン動作を実施でき、その後、タスクを再び始めることができる。他の実施形態においては、ロボットシステム100は、段階的にタスクを生成および実施できる。最初に、ロボットシステム100は、タスクの第1の部分を実施して、交差イベントまで認識されていない物体を移動できる。交差イベントにしたがって、ロボットシステム100は、上記処理結果に基づいて、スキャン動作を実施できる。スキャン動作実施後、ロボットシステム100は、タスクの残りを生成および実施できる。さらに、タスク、および/または、タスクの残りを実施することは、認識されていない物体をさらに持ち上げること、認識されていない物体をタスク位置116の上に水平方向に移動すること、認識されていない物体をタスク位置116に下降させること、および/または、タスク位置116でもしくはタスク位置の上で認識されていない物体を解放することをさらに含み得る。
ロボットシステム100は、スキャン位置(複数可)にしたがって、ロボットアーム302/502および/またはエンドエフェクタ304/504を動作させるコマンド、設定、および/または、動作計画を生成/送信することによって、スキャン動作を実施できる。例えば、図2の1つまたは複数のプロセッサ202は、ロボットアーム302/502および/またはエンドエフェクタ304/504によって実行されると、エンドエフェクタ304/504をスキャン位置に配置するコマンド、設定、および/または、動作計画を決定および通信できる。したがって、ロボットシステム100は、スキャンセンサ(複数可)の前に、認識されていない物体の対象部分を提示できる。また、ロボットシステム100は、エンドエフェクタ304/504をスキャン位置に配置した後、スキャン操作を実施できる。
ロボットシステム100は、ロボットアーム302/502および/またはエンドエフェクタ304/504の動作にしたがって、スキャンセンサをさらに動作できる。例えば、ロボットシステム100は、各スキャン位置にエンドエフェクタ304/504を配置した後、スキャンセンサを作動させることができる。また、ロボットシステム100は、エンドエフェクタ304/504を1つのスキャン位置に配置した後、(例えば、作動コマンドを生成することによって)スキャンセンサを作動させることができ、スキャン操作を実施している間、スキャンセンサをアクティブなままにすることができる。したがって、ロボットシステム100は、最初の画像データで見えなかった/アクセスできなかった認識されていない物体の1つまたは複数の部分をスキャンできる。
ブロック742において、ロボットシステム100は、スキャン動作に関連付けられた1つまたは複数の結果を受信できる。例えば、ロボットシステム100は、ステータス、スキャンされた値、および/または、タイムスタンプをスキャンセンサから受信できる。ステータスは、スキャンの成功、または、スキャンゾーン内に識別子が存在しない等によるスキャンエラーを表すことができる。スキャンされた値は、識別子によって表される値、および/または、スキャンセンサによって撮影された画像を含み得る。タイムスタンプは、スキャン値がスキャンセンサによって生成された時、および/または、スキャン値が1つまたは複数のプロセッサ202によって受信された時に対応し得る。
ロボットシステム100は、取得した結果を使用して、スキャン結果を生成できる。スキャン結果は、値、画像、タイムスタンプ、および/または、その処理結果を含み得る。例えば、スキャン結果は、バーコード、QRコード(登録商標)、RF識別子送信器等によって表される値を含み得る。また、スキャン結果は、識別子の推定位置を含むことができ、推定位置は、タイムスタンプに対応するエンドエフェクタ304/504の現在位置に基づいて、導出されてよい。ある実施形態においては、ロボットシステム100は、スキャンセンサからのスキャンされた画像を(例えば、所定の視覚パターン認識プロセスを介して)視覚的に処理して、識別子と、識別子の表された値とを突き止めることができる。代替的に、または、追加的に、ロボットシステム100は、スキャンされた画像で周囲の辺を識別でき、その後、周囲の辺の外側の画像の部分をクロップして取り除くことができる。ロボットシステム100は、スキャンされた表面を視覚的に表すクロップされた画像を含むスキャン結果を生成できる。
ブロック724において、ロボットシステム100は、移動された物体(例えば、認識されていない物体)を、その物体に対応する登録データ254の新しいインスタンスを作成および/またはポピュレートすること等に基づいて、登録できる。新しい登録データ254は、移動中の認識されていない物体の新しい記録を表すことができる。ある実施形態においては、ロボットシステム100は、さらに、クロップされた画像または識別子の値を含む取得された情報を、マスタデータ252のエントリと比較できる。比較が一致すると、ロボットシステム100は、それにしたがって、移動されている物体の認識ステータスを調整できる。そうでない場合、ロボットシステム100は、認識されていない物体の登録を続けることができる。
認識されていない物体の登録時に、ロボットシステム100は、識別子および/または他の物理的特性に関連付けられた情報をマスタデータ252に記憶できる。例えば、ロボットシステム100は、移動中または移動前に登録データ254のエントリを作成できる。ロボットシステム100は、上面図、辺の長さ、物体高さ、または、これらの組み合わせ等、取得したデータを作成したエントリに記憶できる。また、ロボットシステム100は、スキャン結果を登録データ254に記憶できる。ロボットシステム100は、認識されていない物体がタスク位置116に配置される、および/または、エンドエフェクタ304/504から解放される時、登録データ254を確定および/または記憶できる。
物体を登録している間、または、登録後、ロボットシステム100は、タスクを完了できる。例えば、ロボットシステム100は、スキャンセンサが識別子の値またはスキャンした画像の返信に成功した時、スキャン動作を停止できる。ロボットシステム100は、次に、タスクの残りの部分の実施を続け、認識されていない物体をタスク位置116に載置できる。ある実施形態においては、ロボットシステム100は、タスクの完了と並行して、スキャン結果を取得し、および/または、移動された物体を登録できる。
ある実施形態においては、方法700は、認識されていない物体のグループを1つの画像から繰り返し、移動、登録できる。したがって、1つの未知の物体を移動、登録した後、方法700は、ブロック710へのフィードバックパスが示すように、残りの認識されていない物体の中から新しい登録対象を決定できる。ある実施形態においては、ブロック702へのフィードバックパスによって示すように、方法700は、未知の物体を移動、登録した後、スタート位置114を再撮像することを含み得る。
ロボットシステムを動作する方法は、スタート位置にある認識されていない物体の上面を表す画像データを受信することと、画像データに表された上面の周囲の辺の第1のセットを識別することと、周囲の辺の第1のセットの少なくとも一部に基づいて、認識されていない物体をタスク位置に移動する動作を実施することと、認識されていない物体を移動する動作を実施している間に、交差基準高さにある横方向に向いた交差基準に対する認識されていない物体の進入または退出である(を表す)イベントを検出することと、認識されていない物体の物体高さをイベントに基づいて計算することと、認識されていない物体の垂直方向に向いた表面またはその一部の位置を物体高さと周囲の辺の第1のセットとに基づいて導出することと、垂直方向に向いた表面の導出された位置に基づいて、垂直方向に向いた表面をスキャンセンサに提示する姿勢を表すスキャン位置を導出することと、認識されていない物体を移動して、垂直方向に向いた表面をスキャンセンサに対して露出させる動作をスキャン位置に基づいて実施することと、垂直方向に向いた表面またはその一部をスキャンするスキャンセンサからの出力である(を表す)スキャン結果を生成することと、認識されていない物体の新しい記録であり(を表し)、スキャン結果を含む新しい登録データを作成することと、を含んでよい。
方法は、認識されていない物体を移動して垂直方向に向いた表面をスキャンセンサに対して露出させる動作を実施することに基づいて、スキャンセンサを動作させる1つまたは複数のコマンドを生成することをさらに含んでよく、スキャン結果は、垂直方向に向いた表面上のバーコードおよび/またはクイックレスポンス(QR)コード(登録商標)によって表される値である。方法は、認識されていない物体を移動して、その複数の部分をスキャンセンサに提示するスキャン操作をスキャン位置に基づいて導出することと、垂直方向に向いた表面を移動する動作を実施した後、認識されていない物体の垂直方向に向いた表面および/または複数の表面の複数の部分をスキャンセンサに提示するスキャン操作にしたがって動作を実施することと、垂直方向に向いた表面および/または複数の表面の複数の部分をスキャンするスキャン操作にしたがって動作を実施することに基づいて、スキャンセンサを動作させる1つまたは複数のコマンドを生成することと、をさらに含んでよい。さらに、方法は、垂直軸を中心に認識されていない物体を回転させることに対応するスキャン操作に基づいてよい。方法は、また、物体高さおよび/または周囲の辺の第1のセットに基づいて、垂直方向に向いた表面の寸法を計算することと、寸法が閾値を超える場合に、垂直方向に向いた表面の導出された位置に基づいて、第2のスキャン位置を導出することとをさらに含んでよく、スキャン位置および第2のスキャン位置は、垂直方向に向いた表面の異なる端部または角部をスキャンセンサに提示する位置であり、スキャン操作は、認識されていない物体をスキャン位置から第2のスキャン位置に移動する操作であり、スキャンセンサを動作させる1つまたは複数のコマンドは、スキャン操作にしたがった動作を実施している間、スキャンセンサをアクティブなままにすることを表す。
ロボットシステムは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサに接続され、プロセッサによって実行可能である以下の命令を記憶した少なくとも1つのメモリデバイスとを含んでよく、命令は、スタート位置にある認識されていない物体を表す画像データを受信することと、認識されていない物体をタスク位置に移動する動作を含むタスクを実施することと、認識されていない物体を移動する動作を実施している間、画像データに表されていなかった認識されていない物体の少なくとも一部をスキャンする動作を実施することと、認識されていない物体の少なくとも一部をスキャンする動作を実施することに基づいて、スキャン結果を生成することと、認識されていない物体の新しい記録であり、スキャン結果を含む新しい登録データを作成することと、を含む。命令は、また、タスクを実施している間、認識されていない物体と対応する追加データとを取得することと、認識されていない物体の物体高さを追加データに基づいて計算することと、画像データに表されていなかった認識されていない物体の少なくとも一部をスキャンセンサに提示する姿勢を表すスキャン位置を物体高さに基づいて導出することと、スキャン位置にしたがって認識されていない物体を配置するコマンドおよび/または設定と、スキャン位置にしたがって認識されていない物体を配置している間および/または配置した後、スキャンセンサを動作させる作動コマンドとに基づいて、認識されていない物体の少なくとも一部をスキャンする動作を実施することであってもよい。
ある実施形態においては、画像データは、認識されていない物体の上面を表す。命令は、画像データに表された上面の1つまたは複数の周囲の辺の位置を識別することと、画像データに表されていなかった認識されていない物体の少なくとも一部を表す対象位置を、1つまたは複数の周囲の辺と物体高さとに基づいて導出することと、スキャンセンサによって検出可能な空間を表すスキャンゾーンを決定することと、対象位置とスキャンゾーンとに基づいて、スキャン位置を導出することとに対応してよい。ある実施形態においては、画像データに表されていなかった認識されていない物体の少なくとも一部は、認識されていない物体の垂直方向に向いた表面、または、その周囲の部分を含む。ある実施形態においては、スキャン位置は、垂直方向に向いた表面の第1の角部に対応してよい。命令は、物体高さに基づいて導出され、垂直方向に向いた表面の第2の角部をスキャンセンサに提示する姿勢を表す第2のスキャン位置と、垂直方向に向いた表面を垂直方向におよび/または水平方向に移動するスキャン位置および第2のスキャン位置にしたがって導出されたスキャン操作とに基づいて、スキャン動作を実施することに対応してよい。ある実施形態においては、命令は、垂直方向に向いた表面のアクセス可能な識別子をスキャンすることから生じる識別子の値を受信することと、識別子の値の受信時に把持部位置を決定することと、垂直方向に向いた表面上の識別子の位置を表す識別子位置を把持部位置に基づいて導出することと、識別子の値と識別子位置とを含むスキャン結果を生成することに基づいて、識別子位置を含むスキャン結果を生成する命令であってよい。命令は、また、認識されていない物体を、垂直軸を中心に回転させるコマンドおよび/または設定をさらに生成して複数の表面をスキャンセンサに提示することに基づいて、認識されていない物体の少なくとも一部をスキャンする動作を実施する命令であってよい。
1つまたは複数の実施形態においては、命令は、認識されていない物体の少なくとも一部の視覚表現であるスキャンされた画像を受信する命令と、スキャン画像に基づいてスキャン結果を生成する命令であってよい。さらに、命令は、垂直方向に向いた表面上のアクセス可能な識別子に対応する識別子の値を、スキャンされた画像を視覚的に処理することに基づいて決定する命令と、垂直方向に向いた表面上の識別子の位置を表す識別子位置を、スキャンされた画像を視覚的に処理することに基づいて導出する命令と、識別子の値と識別子位置とを含むスキャン結果を生成する命令と、であってよい。また、命令は、スキャンされた画像の認識されていない物体の周囲の辺を識別する命令と、識別された周囲の辺の内部のスキャンされた画像のクロップされた部分を含むスキャン結果を生成する命令とであってよい。
プロセッサ命令を記憶した有形で非一時的なコンピュータ読み取り可能媒体は、プロセッサ命令が、ロボットシステムによって、ロボットシステムの1つまたは複数のプロセッサを介して実行されると、ロボットシステムに以下の方法を行わせ、方法は、スタート位置にある認識されていない物体を表す画像データを受信することと、画像データに基づいて、認識されていない物体の少なくとも一部を突き止めることと、突き止められた部分の少なくとも一部に基づいて、タスク位置に認識されていない物体を移動するタスクを実施することと、タスクを実施している間、追加情報を取得することと、取得された追加情報に基づいて、画像データに表されていなかった認識されていない物体の少なくとも一部をスキャンセンサに提示する1つまたは複数のスキャン位置を導出することと、タスクを実施している間、1つまたは複数のスキャン位置に基づいて、画像データに表されていなかった認識されていない物体の少なくとも一部をスキャンする動作を実施することと、認識されていない物体の少なくとも一部をスキャンする動作を実施することに基づいて、スキャン結果を生成することと、認識されていない物体の新しい記録であり、スキャン結果を含む新しい登録データを作成することと、を含んでよい。
追加情報を取得することは、タスク実施中、認識されていない物体をタスク位置に向けて下降させる動作を実施している間に、既知の高さにある横方向に向いた交差基準に対する認識されていない物体の進入および/または退出である交差イベントを検出することと、1つまたは複数のスキャン位置の導出に使用される物体高さを、交差イベントに基づいて計算することと、を含んでよい。追加情報を取得することは、タスク実施中、認識されていない物体をスタート位置から持ち上げる動作を実施している間に、既知の高さにある横方向に向いた交差基準に対する認識されていない物体の進入および/または退出である交差イベントを検出することと、1つまたは複数のスキャン位置の導出に使用される物体高さを、交差イベントに基づいて計算することと、も含んでよい。
タスクを実施している間、認識されていない物体の少なくとも一部をスキャンする動作を実施することは、タスクの実施を少なくとも一時的に停止することと、タスクの実施を一時的に停止している間、認識されていない物体の少なくとも一部をスキャンする動作を実施することと、スキャン結果生成後、タスクを完了するために、認識されていない物体をタスク位置に向けて下降させることと、を含んでよい。タスクを実施している間、認識されていない物体の少なくとも一部をスキャンする動作を実施することは、タスクの実施を少なくとも一時的に停止することと、タスクの実施を一時的に停止している間、認識されていない物体の少なくとも一部をスキャンする動作を実施することと、スキャン結果生成後、タスクを完了するために、認識されていない物体をタスク位置の方に下降させることと、を含んでよい。
ある実施形態においては、認識されていない物体の少なくとも一部は、垂直方向に向いた表面を含んでよい。したがって、認識されていない物体の少なくとも一部をスキャンする動作を実施することは、交差イベントを検出後、認識されていない物体の垂直方向に向いた表面をスキャンセンサの水平方向に向いたインスタンスに提示する動作を実施することを含んでよく、スキャン結果を生成することは、認識されていない物体の垂直方向に向いた表面をスキャンする動作を実施することに基づいて、スキャン結果を生成することを含む。ある実施形態においては、認識されていない物体の少なくとも一部は、底面を含んでよい。したがって、認識されていない物体の少なくとも一部をスキャンする動作を実施することは、交差イベントを検出後、認識されていない物体の底面をスキャンセンサの上方向を向いたインスタンスに提示する動作を実施することを含んでよく、スキャン結果を生成することは、認識されていない物体の底面をスキャンする動作を実施することに基づいて、スキャン結果を生成することを含む。
結論
開示の技術の実施例の上記の詳細な説明は、網羅的なものではなく、また、開示の技術を上記特定の形態に制限することを意図してはいない。開示の技術の具体的な例を説明の目的で前述したが、当業者であれば認識するように、様々な同等の修正が、開示の技術の範囲内で可能である。例えば、プロセスまたはブロックを所与の順序で提示したが、代替の実施態様は、異なる順序で、ステップを有するルーチンを行ってよい、または、ブロックを有するシステムを採用してよい、また、一部のプロセスもしくはブロックは、削除、移動、追加、さらに分割、組み合わせ、および/または、修正されて、代替またはサブコンビネーションを提供してよい。これらのプロセスまたはブロックは、それぞれ、様々な異なる方法で実施されてよい。また、プロセスまたはブロックは、順次行われるとして示されている場合があるが、これらのプロセスまたはブロックは、代わりに、並行に実行もしくは実施されてよい、または、異なる時に行われてよい。さらに、本明細書に記載する具体的な数はいずれも、例に過ぎず、代替実施態様は、異なる値または範囲を採用してよい。
これらの変更および他の変更は、上記発明を実施するための形態を考慮して、開示の技術に対して行われてよい。発明を実施するための形態が、開示の技術と、企図したベストモードとの特定の例を記載したが、開示の技術は、上記記載で本文にどんなに詳細に書かれていても、多くの方法で実践できる。システムの詳細は、特定の実施態様で大きく変わり得るが、それでも、本明細書に開示の技術に含まれる。上記のように、開示の技術の一定の特徴または態様を記載する時に使用される特定の用語は、その用語が、その用語が関連付けられた開示の技術のいずれの具体的な特性、特徴、または、態様に制限されるとして本明細書で再定義されていることを示唆しているととらえるべきではない。したがって、発明は、添付の請求項によって以外は制限されない。一般に、以下の請求項で使用される用語は、上記発明を実施するための形態の項が明示的にその用語を定義していない限り、開示の技術を明細書に開示の具体的な例に制限するとみなすべきではない。
発明の特定の態様を特定の請求項の形で以下に記載するが、出願者は、発明の様々な態様を任意の数の請求項の形態で企図する。したがって、出願者は、本出願または継続出願のいずれにおいても、本出願を提出後、追加の請求項を追求する権利を保持して、このような追加の請求項の形を追求する。

Claims (20)

  1. ロボットシステムを動作する方法であって、
    スタート位置にある認識されていない物体の上面を表す画像データを受信することと、
    前記画像データに表された前記上面の周囲の辺の第1のセットを識別することと、
    前記周囲の辺の第1のセットの少なくとも一部に基づいて、前記認識されていない物体をタスク位置に移動する動作を実施することと、
    前記認識されていない物体を移動する前記動作を実施している間、交差基準高さにある横方向に向いた交差基準に対する前記認識されていない物体の進入または退出であるイベントを検出することと、
    前記認識されていない物体の物体高さを前記イベントに基づいて計算することと、
    前記認識されていない物体の垂直方向に向いた表面またはその一部の位置を、前記物体高さと前記周囲の辺の第1のセットとに基づいて導出することと、
    前記垂直方向に向いた表面がスキャンセンサに提示する姿勢を表すスキャン位置を、前記垂直方向に向いた表面の前記導出された位置に基づいて導出することと、
    前記認識されていない物体を移動して前記垂直方向に向いた表面をスキャンセンサに対して露出させる動作を、前記スキャン位置に基づいて実施することと、
    前記垂直方向に向いた表面またはその一部をスキャンする前記スキャンセンサからの出力であるスキャン結果を生成することと、
    前記認識されていない物体の新しい記録であり、前記スキャン結果を含む新しい登録データを作成することと、
    を含む、方法。
  2. 前記認識されていない物体を移動して前記垂直方向に向いた表面を前記スキャンセンサに対して露出させる前記動作を実施することに基づいて、前記スキャンセンサを動作させる1つまたは複数のコマンドを生成することをさらに含み、
    前記スキャン結果は、前記垂直方向に向いた表面上のバーコードおよび/またはクイックレスポンス(QR)コード(登録商標)によって表される値である、請求項1に記載の方法。
  3. 前記認識されていない物体を移動して、前記認識されていない物体の複数の部分を前記スキャンセンサに対して提示するスキャン操作を、前記スキャン位置に基づいて導出することと、
    前記垂直方向に向いた表面を移動する動作を実施した後、前記認識されていない物体の前記垂直方向に向いた表面および/または複数の表面の複数の部分を前記スキャンセンサに提示する前記スキャン操作にしたがって動作を実施することと、
    前記スキャン操作にしたがって前記動作を実施して、前記垂直方向に向いた表面および/または前記複数の表面の前記複数の部分をスキャンすることに基づいて、前記スキャンセンサを動作させる1つまたは複数のコマンドを生成することと、
    をさらに含む、請求項1に記載の方法。
  4. 前記スキャン操作は、垂直軸を中心に前記認識されていない物体を回転させることに対応する、請求項3に記載の方法。
  5. 前記物体高さおよび/または前記周囲の辺の第1のセットに基づいて、前記垂直方向に向いた表面の寸法を計算することと、
    前記寸法が閾値を超える時、前記垂直方向に向いた表面の前記導出された位置に基づいて、第2のスキャン位置を導出することと、
    をさらに含み、
    前記スキャン位置および前記第2のスキャン位置は、前記垂直方向に向いた表面の異なる端部または角部を前記スキャンセンサに提示する位置であり、
    前記スキャン操作は、前記認識されていない物体を前記スキャン位置から前記第2のスキャン位置に移動する操作であり、
    前記スキャンセンサを動作させる前記1つまたは複数のコマンドは、前記スキャン操作にしたがった動作を実施している間、前記スキャンセンサがアクティブなままであることを表す、請求項3に記載の方法。
  6. 少なくとも1つのプロセッサと、
    前記少なくとも1つのプロセッサに接続され、前記プロセッサによって実行可能である;
    スタート位置にある認識されていない物体を表す画像データを受信する命令と、
    前記認識されていない物体をタスク位置に移動する動作を含むタスクを前記画像データに基づいて実施することと、
    前記認識されていない物体を移動する前記動作を実施している間、前記画像データに表されていなかった前記認識されていない物体の少なくとも一部をスキャンする動作を実施することと、
    前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することに基づいて、スキャン結果を生成することと、
    前記認識されていない物体の新しい記録であり、前記スキャン結果を含む新しい登録データを作成することと、
    を行わせる命令を記憶する少なくとも1つのメモリデバイスと、
    を含む、ロボットシステム。
  7. 前記少なくとも1つのメモリデバイスは、
    前記タスクを実施している間、前記認識されていない物体に対応する追加データを取得する命令と、
    前記認識されていない物体の物体高さを前記追加データに基づいて計算する命令と、
    前記画像データに表されていなかった前記認識されていない物体の前記少なくとも一部をスキャンセンサに提示する姿勢を表すスキャン位置を前記物体高さに基づいて導出する命令と、
    前記スキャン位置にしたがって前記認識されていない物体を配置するコマンドおよび/または設定と、
    前記スキャン位置にしたがって前記認識されていない物体を配置している間および/または配置後に前記スキャンセンサを動作させる作動コマンドと、
    に基づいて前記認識されていない物体の少なくとも一部をスキャンする動作を実施する命令と、を含む、請求項6に記載のロボットシステム。
  8. 前記画像データは、前記認識されていない物体の上面を表し、
    前記少なくとも1つのメモリデバイスは、
    前記画像データに表された前記上面の1つまたは複数の周囲の辺の位置を識別する命令と、
    前記画像データに表されていなかった前記認識されていない物体の前記少なくとも一部の位置を表す対象位置を、前記1つまたは複数の周囲の辺と前記物体高さとに基づいて、導出する命令と、
    前記スキャンセンサによって検出可能な空間を表すスキャンゾーンを決定する命令と、
    前記対象位置と前記スキャンゾーンとに基づいて、前記スキャン位置を導出する命令と、を含む、請求項7に記載のロボットシステム。
  9. 前記画像データに表されていなかった前記認識されていない物体の前記少なくとも一部は、前記認識されていない物体の垂直方向に向いた表面、または、その周囲の部分を含む、請求項7に記載のロボットシステム。
  10. 前記スキャン位置は、前記垂直方向に向いた表面の第1の角部に対応し、
    前記少なくとも1つのメモリデバイスは、
    前記物体高さに基づいて導出され、前記垂直方向に向いた表面の第2の角部を前記スキャンセンサに提示する姿勢を表す前記第2のスキャン位置と、
    前記垂直方向に向いた表面を垂直におよび/または水平に移動させるために前記スキャン位置と前記第2のスキャン位置とにしたがって導出されたスキャン操作と、
    に基づいて、スキャン動作を実施する命令を含む、請求項9に記載のロボットシステム。
  11. 前記少なくとも1つのメモリデバイスは、
    前記垂直方向に向いた表面上のアクセス可能な識別子をスキャンすることから生じる識別子の値を受信することと、
    前記識別子の値を受信する時に把持部位置を決定することと、
    前記垂直方向に向いた表面上の前記識別子の位置を表す前記識別子位置を、前記把持部位置に基づいて導出することと、
    前記識別子の値と前記識別子位置とを含む前記スキャン結果を生成することと、
    に基づいて、前記識別子位置を含む前記スキャン結果を生成する命令を含む、請求項10に記載のロボットシステム。
  12. 前記少なくとも1つのメモリデバイスは、前記認識されていない物体を、垂直軸を中心に回転させて、複数の表面を前記スキャンセンサに提示するコマンドおよび/または設定をさらに生成することに基づいて、前記認識されていない物体の少なくとも一部をスキャンする動作を実施する命令を含む、請求項7に記載のロボットシステム。
  13. 前記少なくとも1つのメモリデバイスは、
    前記認識されていない物体の前記少なくとも一部の視覚表現であるスキャンされた画像を受信する命令と、
    前記スキャンされた画像に基づいて、前記スキャン結果を生成する命令と、を含む、請求項6に記載のロボットシステム。
  14. 前記少なくとも1つのメモリデバイスは、
    前記垂直方向に向いた表面上のアクセス可能な識別子に対応する識別子の値を、前記スキャンされた画像を視覚的に処理することに基づいて、決定する命令と、
    前記垂直方向に向いた表面上の前記識別子の位置を表す識別子位置を、前記スキャンされた画像を視覚的に処理することに基づいて導出する命令と、
    前記識別子の値と前記識別子位置とを含む前記スキャン結果を生成する命令と、を含む、請求項13に記載のロボットシステム。
  15. 前記少なくとも1つのメモリデバイスは、
    前記スキャンされた画像で前記認識されていない物体の周囲の辺を識別する命令と、
    前記識別された周囲の辺の内部の前記スキャンされた画像のクロップされた部分を含む前記スキャン結果を生成する命令と、を含む、請求項13に記載のロボットシステム。
  16. プロセッサ命令を記憶した有形で非一時的なコンピュータ読み取り可能媒体であって、前記プロセッサ命令は、ロボットシステムによって前記ロボットシステムの1つまたは複数のプロセッサを介して実行されると、前記ロボットシステムに;
    スタート位置にある認識されていない物体を表す画像データを受信することと、
    前記認識されていない物体の少なくとも部分を前記画像データに基づいて突き止めることと、
    前記認識されていない物体をタスク位置に移動するタスクを、前記突き止められた部分の少なくとも一部に基づいて実施することと、
    前記タスクを実施している間、追加情報を取得することと、
    前記画像データに表されていなかった前記認識されていない物体の少なくとも一部をスキャンセンサに提示する1つまたは複数のスキャン位置を、前記取得された追加情報に基づいて導出することと、
    前記タスクを実施している間、前記画像データに表されていなかった前記認識されていない物体の前記少なくとも一部をスキャンする動作を、前記1つまたは複数のスキャン位置に基づいて実施することと、
    前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することに基づいて、スキャン結果を生成することと、
    前記認識されていない物体の新しい記録であり、前記スキャン結果を含む新しい登録データを作成することと、
    を含む方法を行わせる、
    有形で非一時的なコンピュータ読み取り可能媒体。
  17. 前記追加情報を取得することは、
    前記タスクの実施中、前記認識されていない物体を前記タスク位置に向けて下降させる動作を実施しながら、既知の高さにある横方向に向いた交差基準に対する前記認識されていない物体の進入および/または退出である交差イベントを検出することと、
    前記1つまたは複数のスキャン位置の導出に使用される物体高さを、前記交差イベントに基づいて計算することと、
    を含み、
    前記タスクを実施している間、前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することは、
    前記タスクの前記実施を少なくとも一時的に停止することと、
    前記タスクの実施を一時的に止めている間、前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することと、
    前記スキャン結果を生成した後に、前記タスクを完了するために前記認識されていない物体を前記タスク位置に向けて下降させることと、
    を含む、前記方法を行わせるプロセッサ命令を有する、
    請求項16に記載の有形で非一時的なコンピュータ読み取り可能媒体。
  18. 前記追加情報を取得することは、
    前記タスクの実施中、前記認識されていない物体を前記スタート位置から持ち上げる動作を実施している間に、既知の高さにある横方向に向いた交差基準に対する前記認識されていない物体の進入および/または退出である交差イベントを検出することと、
    前記1つまたは複数のスキャン位置の導出に使用される物体高さを、前記交差イベントに基づいて計算することと、
    を含み、
    前記タスクを実施している間、前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することは、
    前記タスクの前記実施を少なくとも一時的に停止することと、
    前記タスクの実施を一時的に止めている間、前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することと、
    前記スキャン結果を生成した後に、前記タスクを完了するために前記認識されていない物体を前記タスク位置に向けて下降させることと、
    を含む、前記方法を行わせるプロセッサ命令を有する、
    請求項16に記載の有形で非一時的なコンピュータ読み取り可能媒体。
  19. 前記認識されていない物体の前記少なくとも一部は、垂直方向に向いた表面を含み、
    前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することは、前記交差イベントを検出後、前記認識されていない物体の前記垂直方向に向いた表面を前記スキャンセンサの水平方向に向いたインスタンスに提示する動作を実施することを含み、
    前記スキャン結果を生成することは、前記認識されていない物体の前記垂直方向に向いた表面をスキャンする前記動作を実施することに基づいて、前記スキャン結果を生成することを含む、前記方法を行わせるプロセッサ命令を有する、
    請求項18に記載の有形で非一時的なコンピュータ読み取り可能媒体。
  20. 前記認識されていない物体の前記少なくとも一部は、底面を含み、
    前記認識されていない物体の前記少なくとも一部をスキャンする前記動作を実施することは、前記交差イベントを検出後、前記認識されていない物体の前記底面を前記スキャンセンサの上方向を向いたインスタンスに提示する前記動作を実施することを含み、
    前記スキャン結果を生成することは、前記認識されていない物体の前記底面をスキャンする前記動作を実施することに基づいて、前記スキャン結果を生成することを含む、
    前記方法を行わせるプロセッサ命令を有する、
    請求項18に記載の有形で非一時的なコンピュータ読み取り可能媒体。
JP2020516651A 2018-10-30 2019-10-29 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法 Active JP6822719B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2020216438A JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A JP2023160842A (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201862752756P 2018-10-30 2018-10-30
US62/752,756 2018-10-30
US201962852963P 2019-05-24 2019-05-24
US62/852,963 2019-05-24
PCT/US2019/058672 WO2020092447A1 (en) 2018-10-30 2019-10-29 A robotic system with automated package scan and registration mechanism and methods of operating the same

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020216438A Division JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法

Publications (2)

Publication Number Publication Date
JP2021501102A true JP2021501102A (ja) 2021-01-14
JP6822719B2 JP6822719B2 (ja) 2021-01-27

Family

ID=70327497

Family Applications (15)

Application Number Title Priority Date Filing Date
JP2019133517A Active JP6704154B2 (ja) 2018-10-30 2019-07-19 自動パッケージ登録システム、デバイス、および方法
JP2020514750A Active JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020516651A Active JP6822719B2 (ja) 2018-10-30 2019-10-29 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2020515142A Active JP6822718B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020514759A Active JP6820044B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020501166A Active JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020072681A Active JP7411932B2 (ja) 2018-10-30 2020-04-15 自動パッケージ登録システム、デバイス、および方法
JP2020204672A Active JP7352260B2 (ja) 2018-10-30 2020-12-10 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020212616A Pending JP2021050100A (ja) 2018-10-30 2020-12-22 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020213054A Pending JP2021051797A (ja) 2018-10-30 2020-12-23 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020216162A Active JP7466150B2 (ja) 2018-10-30 2020-12-25 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020216438A Active JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A Pending JP2023160842A (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Pending JP2023174652A (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2023212474A Pending JP2024023692A (ja) 2018-10-30 2023-12-15 自動パッケージ登録システム、デバイス、および方法

Family Applications Before (2)

Application Number Title Priority Date Filing Date
JP2019133517A Active JP6704154B2 (ja) 2018-10-30 2019-07-19 自動パッケージ登録システム、デバイス、および方法
JP2020514750A Active JP6820634B2 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム

Family Applications After (12)

Application Number Title Priority Date Filing Date
JP2020515142A Active JP6822718B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020514759A Active JP6820044B1 (ja) 2018-10-30 2019-10-29 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020501166A Active JP6813229B1 (ja) 2018-10-30 2019-10-29 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020072681A Active JP7411932B2 (ja) 2018-10-30 2020-04-15 自動パッケージ登録システム、デバイス、および方法
JP2020204672A Active JP7352260B2 (ja) 2018-10-30 2020-12-10 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2020212616A Pending JP2021050100A (ja) 2018-10-30 2020-12-22 自動パッケージ登録機構および最小実行可能領域検出を備えたロボットシステム
JP2020213054A Pending JP2021051797A (ja) 2018-10-30 2020-12-23 自動パッケージ登録機構および自動検出パイプラインを備えたロボットシステム
JP2020216162A Active JP7466150B2 (ja) 2018-10-30 2020-12-25 自動パッケージ登録メカニズムを備えたロボットシステム、および、その動作方法
JP2020216438A Active JP7340203B2 (ja) 2018-10-30 2020-12-25 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023133633A Pending JP2023160842A (ja) 2018-10-30 2023-08-18 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP2023145484A Pending JP2023174652A (ja) 2018-10-30 2023-09-07 自動物体検出機構を備えたロボットシステム、および、その動作方法
JP2023212474A Pending JP2024023692A (ja) 2018-10-30 2023-12-15 自動パッケージ登録システム、デバイス、および方法

Country Status (6)

Country Link
US (11) US10703584B2 (ja)
JP (15) JP6704154B2 (ja)
KR (3) KR102650494B1 (ja)
CN (11) CN111113492A (ja)
DE (6) DE112019000125B4 (ja)
WO (6) WO2020091846A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023054539A1 (ja) * 2021-09-28 2023-04-06 京セラ株式会社 情報処理装置、ロボットコントローラ、情報処理システム、及び情報処理方法

Families Citing this family (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9393686B1 (en) * 2013-03-15 2016-07-19 Industrial Perception, Inc. Moveable apparatuses having robotic manipulators and conveyors to facilitate object movement
CN110893999A (zh) * 2018-09-12 2020-03-20 泰科电子(上海)有限公司 图像采集系统和图像采集方法
DE112019000125B4 (de) * 2018-10-30 2021-07-01 Mujin, Inc. Systeme, vorrichtungen und verfahren zur automatisierten verpackungsregistrierung
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
US11224951B2 (en) * 2018-12-21 2022-01-18 The Boeing Company Method and apparatus for single-sided clamp-up
US10549928B1 (en) 2019-02-22 2020-02-04 Dexterity, Inc. Robotic multi-item type palletizing and depalletizing
US11741566B2 (en) * 2019-02-22 2023-08-29 Dexterity, Inc. Multicamera image processing
US11046519B2 (en) 2019-02-25 2021-06-29 Rehrig Pacific Company Delivery system
EP3702985A1 (en) * 2019-02-28 2020-09-02 Accenture Global Solutions Limited Augmented reality enabled cargo loading optimization
US11023763B2 (en) * 2019-03-19 2021-06-01 Boston Dynamics, Inc. Detecting boxes
US11069073B2 (en) * 2019-07-23 2021-07-20 Advanced New Technologies Co., Ltd. On-shelf commodity detection method and system
US11389965B2 (en) * 2019-07-26 2022-07-19 Mujin, Inc. Post-detection refinement based on edges and multi-dimensional corners
US10906188B1 (en) * 2019-10-25 2021-02-02 Dexterity, Inc. Singulation of arbitrary mixed items
SG10201913056VA (en) * 2019-12-23 2021-04-29 Sensetime Int Pte Ltd Method and apparatus for obtaining sample images, and electronic device
US11040836B1 (en) * 2020-01-24 2021-06-22 Becton Dickinson Rowa Germany Gmbh Device and method for separating piece goods
US11951636B1 (en) * 2020-01-28 2024-04-09 Embodied Intelligence Inc. Methods of collecting data through test interactions
US11403764B2 (en) * 2020-02-14 2022-08-02 Mujin, Inc. Method and computing system for processing candidate edges
US11443449B2 (en) * 2020-02-26 2022-09-13 Zebra Technologies Corporation Three-dimensional (3D) imaging systems and methods for virtual grading of package walls in commercial trailer loading
CA3115442A1 (en) 2020-04-20 2021-10-20 Rehrig Pacific Company Camera enabled portal
CN114096331A (zh) * 2020-06-04 2022-02-25 牧今科技 用于执行或促进物理边缘检测的方法和计算系统
CN113658205B (zh) * 2020-06-04 2022-08-12 牧今科技 用于执行或促进物理边缘检测的方法和计算系统
AT524101A1 (de) * 2020-07-27 2022-02-15 Tgw Logistics Group Gmbh System und Verfahren zur Erfassung einer Warenanzahl in einem Ladungsträger
JP7467268B2 (ja) 2020-07-30 2024-04-15 グローリー株式会社 計数装置、計数システム、計数方法、およびプログラム
JP7395451B2 (ja) * 2020-09-16 2023-12-11 株式会社東芝 ハンドリング装置、処理装置、コントローラ及びプログラム
CN112157671A (zh) * 2020-09-24 2021-01-01 中国标准化研究院 一种用于电子商务产品质量抽检的包裹取料机械手及方法
CN111928790B (zh) * 2020-10-16 2020-12-29 成都裕鸢航空零部件制造有限公司 一种基于互联网的航空零部件厚度计量装置及计量方法
CN112276956B (zh) * 2020-10-30 2022-05-17 北京市商汤科技开发有限公司 一种物品配送方法、装置、设备以及存储介质
CN113058238B (zh) * 2020-12-05 2021-12-17 林周容 篮球内胎自动贴片系统及方法
CN112936243A (zh) * 2021-01-22 2021-06-11 广东电网有限责任公司广州供电局 基于二维码扫描的开关柜型号识别和定位装置
DE102021104773B3 (de) 2021-02-26 2022-03-17 IGZ Ingenieurgesellschaft für logistische Informationssysteme mbH Kommissionierroboter mit optimierter trajektorie und verfahren zum steuern eines kommissionierroboters
EP4304818A1 (en) * 2021-03-10 2024-01-17 Aquabot Ltd. System and method for identifying or acquiring data corresponding to a handled item
DE102021202340A1 (de) 2021-03-10 2022-09-15 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum steuern eines roboters zum aufnehmen und inspizieren eines objekts und robotersteuereinrichtung
US20220289502A1 (en) * 2021-03-15 2022-09-15 Dexterity, Inc. Adaptive robotic singulation system
EP4313504A1 (en) * 2021-03-26 2024-02-07 Boston Dynamics, Inc. Dynamic mass estimation methods for an integrated mobile manipulator robot
JP2022157884A (ja) * 2021-03-31 2022-10-14 セイコーエプソン株式会社 ロボットの制御方法、ロボットシステムおよびロボット制御プログラム
CN113510697B (zh) * 2021-04-23 2023-02-14 知守科技(杭州)有限公司 机械手定位方法、装置、系统、电子装置和存储介质
US20220362936A1 (en) * 2021-05-14 2022-11-17 Intelligrated Headquarters, Llc Object height detection for palletizing and depalletizing operations
EP4341053A1 (en) * 2021-05-18 2024-03-27 Mujin, Inc. A robotic system for object size measurement
US20220388171A1 (en) * 2021-06-03 2022-12-08 Intrinsic Innovation Llc Robotic workspace introspection via force feedback
US20230027984A1 (en) 2021-07-21 2023-01-26 Mujin, Inc. Robotic system with depth-based processing mechanism and methods for operating the same
US20230041343A1 (en) 2021-08-09 2023-02-09 Mujin, Inc. Robotic system with image-based sizing mechanism and methods for operating the same
JP6964917B1 (ja) * 2021-08-10 2021-11-10 リンクウィズ株式会社 計測システム、計測方法、プログラム
US11787585B2 (en) * 2021-08-19 2023-10-17 Rehrig Pacific Company Pallet wrapper and imaging system
US11823440B2 (en) 2021-08-19 2023-11-21 Rehrig Pacific Company Imaging system with unsupervised learning
US20230070495A1 (en) * 2021-09-07 2023-03-09 Mujin, Inc. Robotic gripper assemblies for openable object(s) and methods for picking objects
AT525383A1 (de) * 2021-09-07 2023-03-15 Knapp Ag System zur Vereinzelung und Identifizierung von Artikeln
IT202100025490A1 (it) * 2021-10-07 2023-04-07 Bosso S R L Magazzino automatico
US20230115849A1 (en) * 2021-10-11 2023-04-13 Mazor Robotics Ltd. Systems and methods for defining object geometry using robotic arms
CN115246547B (zh) * 2021-10-21 2023-09-12 梅卡曼德(北京)机器人科技有限公司 垛型续码方法、装置、计算设备及计算机存储介质
US20230137715A1 (en) * 2021-10-28 2023-05-04 Ubtech North America Research And Development Center Corp Vision-guided picking and placing method, mobile robot and computer-readable storage medium
EP4174787A3 (en) 2021-11-01 2023-05-10 Rehrig Pacific Company Delivery system
AT525778B1 (de) * 2021-11-09 2023-11-15 Tgw Logistics Group Gmbh Verfahren und Vorrichtung zum Entnehmen eines Ladeguts von einem Stapel
CN113816137A (zh) * 2021-11-19 2021-12-21 佛山隆深机器人有限公司 一种基于机械臂的箱体分拣运输装置及控制方法
CN114161426B (zh) * 2021-12-29 2024-02-06 海澜智云科技有限公司 一种工业机器人的控制系统
CN116681758A (zh) * 2022-02-23 2023-09-01 北京百度网讯科技有限公司 车辆的姿态估计方法、装置、电子设备及存储介质
US11717974B1 (en) * 2022-06-10 2023-08-08 Sanctuary Cognitive Systems Corporation Haptic photogrammetry in robots and methods for operating the same
KR102486009B1 (ko) * 2022-06-23 2023-01-10 주식회사 대한엔지니어링 로봇팔을 이용한 디팔레타이징 자동화 시스템 및 방법
CN115009845B (zh) * 2022-08-04 2022-10-25 江苏安纳金机械有限公司 一种新型翘板机及其方法
KR102491429B1 (ko) * 2022-08-24 2023-01-27 주식회사 한성시스코 인공지능을 이용한 다수의 직육면체 블록들의 적층 구조에서의 각 블록의 인식 및 로딩 시스템, 및 그 방법
DE102022121538A1 (de) 2022-08-25 2024-03-07 Bayerische Motoren Werke Aktiengesellschaft Verfahren zum Ablegen eines Objekts vermittels eines Roboters
KR102521819B1 (ko) * 2023-01-26 2023-04-17 주식회사 브릴스 파렛타이징 시스템
CN117369349B (zh) * 2023-12-08 2024-02-23 如特数字科技(苏州)有限公司 一种远程监测智能机器人的管理系统
CN117532644B (zh) * 2023-12-26 2024-04-12 广东亚数智能科技股份有限公司 一种三维视觉引导机械手抓取装置及其控制方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03234491A (ja) * 1990-02-09 1991-10-18 Daifuku Co Ltd ロボット使用の自動移載装置
JP2013129034A (ja) * 2011-12-22 2013-07-04 Yaskawa Electric Corp ロボットシステム及び仕分け済み物品の製造方法
US20150203304A1 (en) * 2014-01-22 2015-07-23 Axium Inc. Vision-Assisted Robotized Depalletizer
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
JP2017520418A (ja) * 2014-07-16 2017-07-27 エックス デベロップメント エルエルシー 軌道計画のための物体測定基準のリアルタイム確定
US20170246744A1 (en) * 2016-02-26 2017-08-31 Kinema Systems Inc. Locating, separating, and picking boxes with a sensor-guided robot
WO2018185861A1 (ja) * 2017-04-04 2018-10-11 株式会社Mujin 制御装置、ピッキングシステム、物流システム、プログラム、及び、制御方法

Family Cites Families (96)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4907169A (en) 1987-09-30 1990-03-06 International Technical Associates Adaptive tracking vision and guidance system
JP2894449B2 (ja) * 1989-04-07 1999-05-24 株式会社ダイフク カメラ使用の自動移載装置
JPH03277739A (ja) 1990-03-28 1991-12-09 Nippon Steel Corp プレス成形時の耐バリ性の優れた高r値複合鋼板およびその製造方法
US5290454A (en) 1992-11-12 1994-03-01 Pump And Paper Research Institute Of Canada Process for removal of suspended solids from pulp and paper mill effluents
JPH06171760A (ja) 1992-12-02 1994-06-21 Mitsubishi Electric Corp デパレタイズ方法
JPH0753054A (ja) 1993-08-10 1995-02-28 Mitsubishi Electric Corp 自動荷卸し装置
JP3063487B2 (ja) 1993-09-27 2000-07-12 村田機械株式会社 パレタイズパターン認識装置
JPH07291450A (ja) * 1994-04-26 1995-11-07 Kawasaki Heavy Ind Ltd インテリジェントパレタイズシステム
IT1275664B1 (it) 1994-11-16 1997-10-17 Consorzio Telerobot Sistema per il controlllo e guida automatica di un gruppo elevatore a forche
JP3277739B2 (ja) * 1995-01-27 2002-04-22 三菱電機株式会社 産業用ロボット
JP2921496B2 (ja) 1996-07-15 1999-07-19 三菱電機株式会社 画像処理装置および物体移載装置
US5908283A (en) * 1996-11-26 1999-06-01 United Parcel Service Of Americia, Inc. Method and apparatus for palletizing packages of random size and weight
US6272230B1 (en) 1998-02-11 2001-08-07 Analogic Corporation Apparatus and method for optimizing detection of objects in computed tomography data
JPH10323491A (ja) 1998-07-06 1998-12-08 Hitachi Ltd 脱水洗濯機
SE513174C2 (sv) 1998-10-22 2000-07-24 Abb Ab Förfarande för hantering av containrar samt anordning för utförande av förfarandet
JP3525896B2 (ja) * 1999-03-19 2004-05-10 松下電工株式会社 3次元物体認識方法および同方法を使用したビンピッキングシステム
JP2001058723A (ja) 1999-08-20 2001-03-06 Amada Co Ltd 板材加工機における製品搬出方法及びその装置
JP2001072247A (ja) 1999-09-06 2001-03-21 Murata Mach Ltd 搬送システム
JP3596434B2 (ja) * 2000-06-30 2004-12-02 株式会社ダイフク 物品位置認識装置
JP3849514B2 (ja) 2001-12-10 2006-11-22 株式会社ダイフク 物品位置認識装置
JP2003237943A (ja) * 2002-02-12 2003-08-27 Rengo Co Ltd 段ボールケース束のデパレタイジング装置
US7085622B2 (en) 2002-04-19 2006-08-01 Applied Material, Inc. Vision system
JP3768174B2 (ja) 2002-07-24 2006-04-19 ファナック株式会社 ワーク取出し装置
DE602004030893D1 (de) * 2003-03-27 2011-02-17 Sony Corp Robotervorrichtung und verfahren zur steuerung derselben
DE10317855A1 (de) 2003-04-16 2004-11-18 Rkb Reparatur- Und Karosseriebau Gmbh Verfahren und Einrichtung zum Verteilen von Paketen o. dgl. Beförderungsgütern
GB0405014D0 (en) * 2004-03-05 2004-04-07 Qinetiq Ltd Movement control system
JP2005333824A (ja) 2004-05-24 2005-12-08 Olympus Corp 検体導入装置および培養処理装置
KR100657915B1 (ko) * 2004-11-26 2006-12-14 삼성전자주식회사 코너 검출 방법 및 코너 검출 장치
JP2006300929A (ja) * 2005-03-22 2006-11-02 Jfe Engineering Kk 物体の3次元位置認識装置およびデパレタイズシステム
JP2007097057A (ja) 2005-09-30 2007-04-12 Brother Ind Ltd サーバ装置、機器情報提供方法、プログラム、ネットワークシステム、及び、機器共用化方法
JP4087874B2 (ja) * 2006-02-01 2008-05-21 ファナック株式会社 ワーク取り出し装置
JP4911341B2 (ja) * 2006-03-24 2012-04-04 株式会社ダイフク 物品移載装置
WO2009014677A1 (en) 2007-07-23 2009-01-29 Abb Inc. Robotic palletizing system
JP4565023B2 (ja) * 2008-07-04 2010-10-20 ファナック株式会社 物品取り出し装置
KR101003654B1 (ko) 2008-08-27 2010-12-23 삼성전기주식회사 반도체 패키지용 트랜스포머
US8489232B2 (en) * 2008-09-30 2013-07-16 Amazon Technologies, Inc. Systems and methods for receiving shipment parcels
US8571298B2 (en) * 2008-12-23 2013-10-29 Datalogic ADC, Inc. Method and apparatus for identifying and tallying objects
DE102009011300B4 (de) * 2009-03-02 2022-08-11 Kuka Roboter Gmbh Beladung von Lademitteln mit Paketen mittels Manipulator
JP5429614B2 (ja) * 2009-04-16 2014-02-26 株式会社Ihi 箱状ワーク認識装置および方法
US8508590B2 (en) 2010-03-02 2013-08-13 Crown Equipment Limited Method and apparatus for simulating a physical environment to facilitate vehicle operation and task completion
US8538577B2 (en) * 2010-03-05 2013-09-17 Crown Equipment Limited Method and apparatus for sensing object load engagement, transportation and disengagement by automated vehicles
FI20105732A0 (fi) * 2010-06-24 2010-06-24 Zenrobotics Oy Menetelmä fyysisten kappaleiden valitsemiseksi robottijärjestelmässä
US9796540B1 (en) 2010-06-30 2017-10-24 Thiele Technologies System and method for robotic palletization of packages susceptible to package-to-package dimensional creep
DE112011103794B4 (de) * 2010-11-17 2019-01-24 Mitsubishi Electric Corporation Aufnehmervorrichtung für Werkstücke
US10474858B2 (en) 2011-08-30 2019-11-12 Digimarc Corporation Methods of identifying barcoded items by evaluating multiple identification hypotheses, based on data from sensors including inventory sensors and ceiling-mounted cameras
US9129277B2 (en) 2011-08-30 2015-09-08 Digimarc Corporation Methods and arrangements for identifying objects
US9367770B2 (en) * 2011-08-30 2016-06-14 Digimarc Corporation Methods and arrangements for identifying objects
US9067744B2 (en) 2011-10-17 2015-06-30 Kabushiki Kaisha Yaskawa Denki Robot system, robot, and sorted article manufacturing method
CN202717371U (zh) 2011-11-18 2013-02-06 上海沃迪自动化装备股份有限公司 多功能机器人码垛系统
CN202539084U (zh) 2012-03-01 2012-11-21 成都三茁科技有限公司 多位扫描识别系统
JP2013246589A (ja) 2012-05-24 2013-12-09 Sharp Corp 空間情報生成装置、空間情報利用システム、空間情報生成方法、制御プログラム、および、記録媒体
JP5469216B2 (ja) * 2012-07-31 2014-04-16 ファナック株式会社 バラ積みされた物品をロボットで取出す装置
JP6255706B2 (ja) * 2013-04-22 2018-01-10 富士通株式会社 表示制御装置、表示制御方法、表示制御プログラムおよび情報提供システム
JP5945968B2 (ja) * 2013-09-03 2016-07-05 株式会社安川電機 ロボットハンド、ロボットシステム、及び物品のデパレタイズ方法
JP5897532B2 (ja) 2013-11-05 2016-03-30 ファナック株式会社 三次元空間に置かれた物品をロボットで取出す装置及び方法
CN103822594A (zh) 2014-02-28 2014-05-28 华南理工大学 一种基于激光传感器和机器人的工件扫描成像方法
KR102081139B1 (ko) 2014-03-12 2020-02-25 한국전자통신연구원 물체 피킹 시스템, 물체 검출 장치 및 그 방법
JP5829306B2 (ja) 2014-05-12 2015-12-09 ファナック株式会社 レンジセンサの配置位置評価装置
US9205558B1 (en) 2014-07-16 2015-12-08 Google Inc. Multiple suction cup control
US9327406B1 (en) * 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
JP6486114B2 (ja) * 2015-01-16 2019-03-20 株式会社東芝 荷役装置
US9486921B1 (en) 2015-03-26 2016-11-08 Google Inc. Methods and systems for distributing remote assistance to facilitate robotic object manipulation
US20160302521A1 (en) * 2015-04-16 2016-10-20 Brian George Rennex Substantial energy return shoe with optimal low-impact springs and tuned gear change
JP6461712B2 (ja) 2015-05-28 2019-01-30 株式会社東芝 荷役装置及びその動作方法
US20170057148A1 (en) 2015-08-27 2017-03-02 Imflux Inc Plastic article forming apparatuses and methods for controlling melt flow
US11010816B2 (en) 2015-08-27 2021-05-18 Imflux Inc Methods of selecting thermoplastic materials for use with plastic article forming apparatuses that control melt flow
JP6466297B2 (ja) * 2015-09-14 2019-02-06 株式会社東芝 対象物検出装置、方法及びデパレタイズ自動化装置並びに梱包箱
JP6711591B2 (ja) 2015-11-06 2020-06-17 キヤノン株式会社 ロボット制御装置およびロボット制御方法
US10370201B2 (en) * 2015-11-13 2019-08-06 Kabushiki Kaisha Toshiba Transporting apparatus and transporting method
US10625432B2 (en) 2015-11-13 2020-04-21 Berkshire Grey, Inc. Processing systems and methods for providing processing of a variety of objects
JP6710622B2 (ja) * 2015-11-13 2020-06-17 株式会社東芝 搬送装置および搬送方法
JP6298035B2 (ja) * 2015-12-17 2018-03-20 ファナック株式会社 モデル生成装置、位置姿勢算出装置、およびハンドリングロボット装置
JP6690300B2 (ja) 2016-02-26 2020-04-28 村田機械株式会社 スタッカクレーン
CN105817430B (zh) * 2016-03-29 2017-12-29 常熟理工学院 基于机器视觉的产品检测方法
CN106063998B (zh) 2016-04-13 2018-03-06 段炼 一种单罐内转动mvr系统
US10596700B2 (en) * 2016-09-16 2020-03-24 Carbon Robotics, Inc. System and calibration, registration, and training methods
US20180198983A1 (en) * 2017-01-06 2018-07-12 Olympus Corporation Image pickup apparatus, image pickup system, image pickup method, image pickup program, and display apparatus for image pickup
WO2018131237A1 (ja) * 2017-01-13 2018-07-19 三菱電機株式会社 協働ロボットシステム、及びその制御方法
JP2018144155A (ja) * 2017-03-03 2018-09-20 株式会社キーエンス ロボットシミュレーション装置、ロボットシミュレーション方法、ロボットシミュレーションプログラム及びコンピュータで読み取り可能な記録媒体並びに記録した機器
CN106886165A (zh) * 2017-03-10 2017-06-23 深圳市唯特视科技有限公司 一种基于模拟器的机械手抓取和操纵方法
US10328578B2 (en) 2017-04-21 2019-06-25 X Development Llc Methods and systems for detecting, recognizing, and localizing pallets
JP6904106B2 (ja) 2017-06-27 2021-07-14 村田機械株式会社 ピッキングシステム
US10471597B1 (en) * 2017-11-01 2019-11-12 Amazon Technologies, Inc. Adaptive perception for industrial robotic systems
US10346987B1 (en) 2017-12-29 2019-07-09 Datalogic Usa, Inc. Locating objects on surfaces
JP7065632B2 (ja) 2018-02-13 2022-05-12 Kyoto Robotics株式会社 箱状物ピッキング装置及びその方法
JP2018158439A (ja) 2018-03-15 2018-10-11 株式会社東芝 物体ハンドリング装置、制御装置、および較正方法
CN110737399B (zh) 2018-07-20 2023-09-05 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品
US10369701B1 (en) 2018-10-30 2019-08-06 Mujin, Inc. Automated package registration systems, devices, and methods
DE112019000125B4 (de) * 2018-10-30 2021-07-01 Mujin, Inc. Systeme, vorrichtungen und verfahren zur automatisierten verpackungsregistrierung
US11023763B2 (en) 2019-03-19 2021-06-01 Boston Dynamics, Inc. Detecting boxes
US10614340B1 (en) * 2019-09-23 2020-04-07 Mujin, Inc. Method and computing system for object identification
US10625952B1 (en) 2019-10-18 2020-04-21 Grey Orange Pte. Ltd. Induction station for conveying packages in storage facility
US11020854B2 (en) * 2019-11-05 2021-06-01 Mujin, Inc. Robotic system with wall-based packing mechanism and methods of operating same
US11423610B2 (en) 2019-11-26 2022-08-23 Applied Research Associates, Inc. Large-scale environment-modeling with geometric optimization
US11798273B2 (en) 2021-03-12 2023-10-24 Lawrence Livermore National Security, Llc Model-based image change quantification
US20230041343A1 (en) 2021-08-09 2023-02-09 Mujin, Inc. Robotic system with image-based sizing mechanism and methods for operating the same

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03234491A (ja) * 1990-02-09 1991-10-18 Daifuku Co Ltd ロボット使用の自動移載装置
JP2013129034A (ja) * 2011-12-22 2013-07-04 Yaskawa Electric Corp ロボットシステム及び仕分け済み物品の製造方法
US9102055B1 (en) * 2013-03-15 2015-08-11 Industrial Perception, Inc. Detection and reconstruction of an environment to facilitate robotic interaction with the environment
US20150203304A1 (en) * 2014-01-22 2015-07-23 Axium Inc. Vision-Assisted Robotized Depalletizer
JP2017520418A (ja) * 2014-07-16 2017-07-27 エックス デベロップメント エルエルシー 軌道計画のための物体測定基準のリアルタイム確定
US20170246744A1 (en) * 2016-02-26 2017-08-31 Kinema Systems Inc. Locating, separating, and picking boxes with a sensor-guided robot
WO2018185861A1 (ja) * 2017-04-04 2018-10-11 株式会社Mujin 制御装置、ピッキングシステム、物流システム、プログラム、及び、制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023054539A1 (ja) * 2021-09-28 2023-04-06 京セラ株式会社 情報処理装置、ロボットコントローラ、情報処理システム、及び情報処理方法

Also Published As

Publication number Publication date
KR20210087065A (ko) 2021-07-09
WO2020092452A1 (en) 2020-05-07
WO2020092428A1 (en) 2020-05-07
JP2020069636A (ja) 2020-05-07
US20200134828A1 (en) 2020-04-30
DE112019000177T5 (de) 2020-09-03
US20200294244A1 (en) 2020-09-17
WO2020092442A1 (en) 2020-05-07
DE112019000217B4 (de) 2023-09-14
DE112019000247T5 (de) 2020-09-03
CN111776759B (zh) 2021-07-23
US20220076425A1 (en) 2022-03-10
JP2021503374A (ja) 2021-02-12
KR20210096615A (ko) 2021-08-05
CN111861306B (zh) 2021-06-15
CN111861306A (zh) 2020-10-30
JP2020537775A (ja) 2020-12-24
US20240078512A1 (en) 2024-03-07
CN111113492A (zh) 2020-05-08
US11797926B2 (en) 2023-10-24
US11189033B2 (en) 2021-11-30
JP6704154B2 (ja) 2020-06-03
JP6820634B2 (ja) 2021-01-27
JP2021039795A (ja) 2021-03-11
JP2021505980A (ja) 2021-02-18
JP2021062978A (ja) 2021-04-22
KR102650492B1 (ko) 2024-03-22
JP6820044B1 (ja) 2021-01-27
DE112019000172T5 (de) 2020-07-16
US11636605B2 (en) 2023-04-25
JP2023174652A (ja) 2023-12-08
DE112019000127T5 (de) 2020-06-18
JP2021050100A (ja) 2021-04-01
CN111861305B (zh) 2021-08-03
US20200130962A1 (en) 2020-04-30
CN111633633B (zh) 2021-05-07
JP2020110918A (ja) 2020-07-27
JP2021051797A (ja) 2021-04-01
US20200134830A1 (en) 2020-04-30
KR102650494B1 (ko) 2024-03-22
US11062457B2 (en) 2021-07-13
JP6822718B1 (ja) 2021-01-27
CN111629868A (zh) 2020-09-04
WO2020092433A1 (en) 2020-05-07
JP2024023692A (ja) 2024-02-21
CN111776762A (zh) 2020-10-16
US20200130963A1 (en) 2020-04-30
JP7466150B2 (ja) 2024-04-12
CN111491878A (zh) 2020-08-04
US20230008540A1 (en) 2023-01-12
CN111566027A (zh) 2020-08-21
WO2020091846A1 (en) 2020-05-07
US20220051411A1 (en) 2022-02-17
JP7411932B2 (ja) 2024-01-12
CN111861305A (zh) 2020-10-30
JP7340203B2 (ja) 2023-09-07
JP7352260B2 (ja) 2023-09-28
KR20240042157A (ko) 2024-04-01
US11501445B2 (en) 2022-11-15
US10703584B2 (en) 2020-07-07
JP2021507857A (ja) 2021-02-25
US20210304416A1 (en) 2021-09-30
CN111566028A (zh) 2020-08-21
US20200130961A1 (en) 2020-04-30
JP6822719B2 (ja) 2021-01-27
DE112019000125B4 (de) 2021-07-01
JP2023160842A (ja) 2023-11-02
JP2021054660A (ja) 2021-04-08
CN111601761A (zh) 2020-08-28
JP6813229B1 (ja) 2021-01-13
US11288810B2 (en) 2022-03-29
WO2020092447A1 (en) 2020-05-07
CN111776759A (zh) 2020-10-16
US20240020637A1 (en) 2024-01-18
DE112019000125T5 (de) 2020-07-02
DE112019000217T5 (de) 2020-08-06
US11176674B2 (en) 2021-11-16
CN111633633A (zh) 2020-09-08
CN111776762B (zh) 2021-07-23

Similar Documents

Publication Publication Date Title
JP6822719B2 (ja) 自動パッケージスキャンおよび登録メカニズムを備えたロボットシステム、ならびにその動作方法
JP7284953B2 (ja) 高度化したスキャンメカニズムを有するロボットシステム
JP6765741B1 (ja) 非一時的コンピュータ可読記憶媒体、ロボットシステムを動作させる方法及び物体移送システム
JP7175487B1 (ja) 画像ベースのサイジングメカニズムを備えたロボットシステム及びロボットシステムを操作するための方法
JP7218881B1 (ja) 物体更新機構を備えたロボットシステム及びロボットシステムを操作するための方法
JP7398662B2 (ja) ロボット多面グリッパアセンブリ及びその操作方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200319

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200319

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201027

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201109

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201118

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201202

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201225

R150 Certificate of patent or registration of utility model

Ref document number: 6822719

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350