JP6924448B2 - Picking system, picking method, and program - Google Patents

Picking system, picking method, and program Download PDF

Info

Publication number
JP6924448B2
JP6924448B2 JP2019218349A JP2019218349A JP6924448B2 JP 6924448 B2 JP6924448 B2 JP 6924448B2 JP 2019218349 A JP2019218349 A JP 2019218349A JP 2019218349 A JP2019218349 A JP 2019218349A JP 6924448 B2 JP6924448 B2 JP 6924448B2
Authority
JP
Japan
Prior art keywords
work
image
picking
analysis unit
orientation
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.)
Active
Application number
JP2019218349A
Other languages
Japanese (ja)
Other versions
JP2021088011A (en
Inventor
佐藤 大輔
大輔 佐藤
浩紀 八登
浩紀 八登
武 坂本
武 坂本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Arithmer Inc
Original Assignee
Arithmer 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 Arithmer Inc filed Critical Arithmer Inc
Priority to JP2019218349A priority Critical patent/JP6924448B2/en
Priority to PCT/JP2020/043700 priority patent/WO2021111929A1/en
Publication of JP2021088011A publication Critical patent/JP2021088011A/en
Priority to JP2021107914A priority patent/JP2021151699A/en
Application granted granted Critical
Publication of JP6924448B2 publication Critical patent/JP6924448B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices

Description

本発明は、ワークをピッキングするピッキングシステム、ピッキング方法、及びプログラムに関する。 The present invention relates to a picking system, a picking method, and a program for picking a workpiece.

製造工場、食品工場等の工場における作業を自動化するために、産業用ロボットが導入されている。主要な産業用ロボットの1つに、ワークをピックし(掴み)、これを目的の場所に搬送してプレイスする(置く)ロボットがある。ここで、特許文献1には、3Dレーザ計測技術によりワークの3次元データを有する点群データを生成し、これを用いてワークの位置情報及び法線情報を算出し、これらの情報に基づいてロボットを制御する物体認識システムが開示されている。測定データを用いたモデルマッチングに基づく物体認識に代えて、3Dレーザ計測技術により得られるワークの3次元データに基づく物体認識を採用することで、非定型なワークの認識を可能としている。
特許文献1 特開2011−167815号公報
Industrial robots have been introduced to automate operations in factories such as manufacturing factories and food factories. One of the major industrial robots is a robot that picks (grabs) a workpiece, transports it to a desired location, and places it (places it). Here, in Patent Document 1, point cloud data having three-dimensional data of the work is generated by 3D laser measurement technology, position information and normal information of the work are calculated using the point cloud data, and based on these information. An object recognition system that controls a robot is disclosed. By adopting object recognition based on the three-dimensional data of the work obtained by the 3D laser measurement technology instead of the object recognition based on the model matching using the measurement data, it is possible to recognize the atypical work.
Patent Document 1 Japanese Unexamined Patent Publication No. 2011-167815

しかしながら、上記の物体認識システムでは、ワークがフレキシブルである場合に任意の形状を取り得るため、また任意の方向を向き得るため、複数のワークが重なっている場合などには特にそれらのなかから目的のワークを識別し、安定にピックするためのワークの位置情報及び法線情報を算出することが困難であると予想される。 However, in the above-mentioned object recognition system, since the workpieces can take an arbitrary shape when the workpieces are flexible and can be oriented in an arbitrary direction, the purpose is particularly among them when a plurality of workpieces are overlapped. It is expected that it will be difficult to calculate the position information and normal information of the work for identifying the work and picking it stably.

本発明の第1の態様においては、ワークをピッキングするピッキングシステムであって、ワークを撮影して画像及び深度マップを得る撮像部と、画像に基づいてワークを特定し、深度マップのうちの特定したワークに対応するワーク部分に基づいてワークの位置及び向きを決定する解析部と、ワークの位置及び向きに基づいてロボットアームを駆動制御する制御部と、を備えるピッキングシステムが提供される。 In the first aspect of the present invention, there is a picking system for picking a work, an imaging unit that photographs the work to obtain an image and a depth map, and a work is specified based on the image, and the depth map is specified. Provided is a picking system including an analysis unit that determines the position and orientation of the work based on the work portion corresponding to the work, and a control unit that drives and controls the robot arm based on the position and orientation of the work.

本発明の第2の態様においては、ワークをピッキングするピッキング方法であって、撮像部により、ワークを撮影して画像及び深度マップを得る段階と、解析部により、画像に基づいてワークを特定し、深度マップのうちの特定したワークに対応するワーク部分に基づいてワークの位置及び向きを決定する段階と、制御部により、ワークの位置及び向きに基づいてロボットアームを駆動制御する段階と、を備えるピッキング方法が提供される。 In the second aspect of the present invention, there is a picking method for picking a work, in which the imaging unit captures the work to obtain an image and a depth map, and the analysis unit identifies the work based on the image. , The stage of determining the position and orientation of the work based on the work portion corresponding to the specified work in the depth map, and the stage of driving and controlling the robot arm based on the position and orientation of the work by the control unit. A picking method is provided.

本発明の第3の態様においては、第2の態様のピッキング方法をコンピュータに実行させるプログラムが提供される。 In the third aspect of the present invention, a program for causing a computer to execute the picking method of the second aspect is provided.

なお、上記の発明の概要は、本発明の特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。 The outline of the above invention does not list all the features of the present invention. Sub-combinations of these feature groups can also be inventions.

本実施形態に係るロボットの構成を示す。The configuration of the robot according to this embodiment is shown. ロボットハンドの構成を示す。The configuration of the robot hand is shown. 本実施形態に係るピッキングシステムの機能構成を示す。The functional configuration of the picking system according to this embodiment is shown. ワーク分離装置の構成を示す。The configuration of the work separating device is shown. ピッキングシステムにおけるロボット及びコンテナの配置を示す。The arrangement of robots and containers in the picking system is shown. コンテナの区画内に収容されたワークを示す。Indicates the work housed in the compartment of the container. 画像認識によるコンテナ内のワークの識別結果を示す。The result of identifying the work in the container by image recognition is shown. ピッキングシステムにより得られた画像及び深度マップの一例を示す。An example of the image and the depth map obtained by the picking system is shown. 画像から特定されたワーク及びこれをマスクにして切り出された深度マップ内のワーク部分の一例を示す。An example of the work specified from the image and the work part in the depth map cut out by using this as a mask is shown. 深度マップ内のワーク部分を再構成して得られる点群データの一例を示す。An example of point cloud data obtained by reconstructing the work part in the depth map is shown. 点群データからワークの向きを決定するために取得したデータ点の一例を示す。An example of data points acquired to determine the work orientation from the point cloud data is shown. 3つのデータ点を用いて決定したワークの向きの一例を示す。An example of the orientation of the work determined using the three data points is shown. 点群データから決定したワーク表面上の吸着点の一例を示す。An example of the adsorption point on the work surface determined from the point cloud data is shown. ロボットハンドによるワークの吸着の一例を示す。An example of suctioning a workpiece by a robot hand is shown. 本実施形態に係るピッキング方法のフローを示す。The flow of the picking method according to this embodiment is shown. 本実施形態に係るコンピュータの構成の一例を示す。An example of the configuration of the computer according to this embodiment is shown.

以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。 Hereinafter, the present invention will be described through embodiments of the invention, but the following embodiments do not limit the inventions that fall within the scope of the claims. Also, not all combinations of features described in the embodiments are essential to the means of solving the invention.

図1A、図1B、及び図1Cに、それぞれ、本実施形態に係るロボット101の構成、ロボット101のロボットハンド130の詳細構成、及び本実施形態に係るピッキングシステム100の機能構成を示す。ピッキングシステム100は、ワーク90をピックし(ピッキングするともいう)、これを搬送して目的の場所にプレイスする(プレーシングするともいう)システムであり、ロボット101、制御装置150、及びワーク分離装置200を備える。なお、本実施形態で扱うワーク90は、例えば液状物、粉状物、或いは粒状物を収容したフレキシブルで不定形な袋状容器である。ワーク90は、収容物を保護するため積み重ねることができずコンテナの区画内に立てて並べられ、フレキシブルであることから表面が任意の方向を向き得るものであり、立てられた際に収容物が容器下側に集中するために容器上側をピックすることで収容物が保護される。 1A, 1B, and 1C show the configuration of the robot 101 according to the present embodiment, the detailed configuration of the robot hand 130 of the robot 101, and the functional configuration of the picking system 100 according to the present embodiment, respectively. The picking system 100 is a system that picks (also referred to as picking) a work 90, transports the work 90 and places it at a target location (also referred to as bracing), and is a robot 101, a control device 150, and a work separating device. 200 is provided. The work 90 handled in the present embodiment is, for example, a flexible and amorphous bag-shaped container containing a liquid substance, a powdery substance, or a granular substance. The work 90 cannot be stacked to protect the contents, and is arranged upright in the container compartment. Since it is flexible, the surface can face any direction, and the contents can be oriented when the work 90 is erected. The contents are protected by picking the upper side of the container to concentrate on the lower side of the container.

ロボット101は、ワーク90をピック及びプレイスする装置であり、本体110、ロボットアーム120、及びロボットハンド130を含む。 The robot 101 is a device for picking and placing a work 90, and includes a main body 110, a robot arm 120, and a robot hand 130.

本体110は、台座又は床面(不図示)上でロボットアーム120を支持する部分であり、ベース111、駆動装置140、及び通信装置(不図示)を含む。ベース111は、本体110を回動可能に支持する。これにより、本体110は、ベース111の上面上で図面上下方向に平行な中心軸に対して回転して向きを変える。駆動装置140は、例えば電動モータを採用することができ、これによりロボットアーム120の各部を駆動する。通信装置は、例えば無線通信装置を採用することができ、これにより制御装置150から送信される制御信号を受信して、駆動装置140、固定部材134内の駆動装置、吸着パッド135等に送信する。 The main body 110 is a portion that supports the robot arm 120 on a pedestal or a floor surface (not shown), and includes a base 111, a driving device 140, and a communication device (not shown). The base 111 rotatably supports the main body 110. As a result, the main body 110 rotates on the upper surface of the base 111 with respect to the central axis parallel to the vertical direction of the drawing and changes its orientation. The drive device 140 may employ, for example, an electric motor, which drives each part of the robot arm 120. As the communication device, for example, a wireless communication device can be adopted, whereby the control signal transmitted from the control device 150 is received and transmitted to the drive device 140, the drive device in the fixing member 134, the suction pad 135, and the like. ..

ロボットアーム120は、ロボットハンド130を駆動する部分であり、第1〜第3アーム121〜123を含む。第1アーム121は、本体110の上端に支持されて図面左右方向に回動する。第2アーム122は、第1アーム121の先端に支持されて図面左右方向に回動する。第3アーム123は、その先端にロボットハンド130を支持して、第2アーム122の先端に回転可能に支持される。 The robot arm 120 is a portion that drives the robot hand 130, and includes the first to third arms 121 to 123. The first arm 121 is supported by the upper end of the main body 110 and rotates in the left-right direction in the drawing. The second arm 122 is supported by the tip of the first arm 121 and rotates in the left-right direction in the drawing. The third arm 123 supports the robot hand 130 at its tip and is rotatably supported by the tip of the second arm 122.

ロボットハンド130は、ワーク90を把持する部分であり、基部131、シャフト132、撮像装置133、固定部材134、及び吸着パッド135を有する。 The robot hand 130 is a portion that grips the work 90, and has a base 131, a shaft 132, an image pickup device 133, a fixing member 134, and a suction pad 135.

基部131は、ロボットハンド130の各部を支持する部分であり、第3アーム123の先端に支持される。 The base portion 131 is a portion that supports each portion of the robot hand 130, and is supported by the tip of the third arm 123.

シャフト132は、撮像装置133及び吸着パッド135を支持する軸状部材であり、その上端が基部131に支持される。 The shaft 132 is a shaft-shaped member that supports the image pickup apparatus 133 and the suction pad 135, and the upper end thereof is supported by the base 131.

撮像装置133は、例えばステレオカメラを採用することができる。撮像装置133は、支持部材133aを介してシャフト132に下向きに固定され、これによりワーク90を撮像してその画像及び深度マップを得ることができる。画像は一例としてRGB画像とする。深度マップは、撮像装置133の位置を基準とする奥行き方向の距離に関するマップである。 As the image pickup apparatus 133, for example, a stereo camera can be adopted. The image pickup apparatus 133 is fixed downward to the shaft 132 via the support member 133a, whereby the work 90 can be imaged to obtain an image thereof and a depth map. The image is an RGB image as an example. The depth map is a map relating to the distance in the depth direction with respect to the position of the image pickup apparatus 133.

固定部材134は、シャフト132の下端に固定され、支持部材135aを水平方向に向けて支持する。固定部材134は、電動モータ等の駆動装置(不図示)を有し、これにより支持部材135aが回転される。 The fixing member 134 is fixed to the lower end of the shaft 132 and supports the support member 135a in the horizontal direction. The fixing member 134 has a driving device (not shown) such as an electric motor, whereby the supporting member 135a is rotated.

吸着パッド135は、コンプレッサ(不図示)に接続され、空気を吸引することでワーク90を吸着保持する。これにより、不定形なワーク90をピッキングすることが可能となる。吸着パッド135は、一例として、支持部材135aの両端に各1つ固定され、固定部材134内の駆動装置により支持部材135aを回転することにより、上下方向の傾きを変えることができる。なお、吸着パッド135の数は、2つに限らず、ワーク90の大きさ及び重さに応じて1つ又は3つ以上の任意の数であってよい。 The suction pad 135 is connected to a compressor (not shown) and sucks and holds the work 90 by sucking air. This makes it possible to pick an amorphous work 90. As an example, one suction pad 135 is fixed to both ends of the support member 135a, and the support member 135a can be rotated by a driving device in the fixing member 134 to change the inclination in the vertical direction. The number of suction pads 135 is not limited to two, and may be any number of one or three or more depending on the size and weight of the work 90.

なお、吸着パッド135は、気圧センサ等を含み、これによりコンプレッサにより空気を吸引している際の内部気圧を測定する。吸着パッド135によりワーク90の表面を吸引してそれを把持した場合に低い内部気圧、ワーク90の吸引に失敗した場合に高い内部気圧が測定されることで、2つの吸着パッド135のそれぞれについてワーク90の把持に成功したか失敗したかを検知することができる。その結果は制御部154に送信される。 The suction pad 135 includes a barometric pressure sensor and the like, and measures the internal barometric pressure when air is sucked by the compressor. When the surface of the work 90 is sucked by the suction pad 135 and gripped, a low internal air pressure is measured, and when the work 90 fails to be sucked, a high internal pressure is measured, so that the work is measured for each of the two suction pads 135. It is possible to detect whether the gripping of the 90 is successful or unsuccessful. The result is transmitted to the control unit 154.

制御装置150は、ロボット101を制御する装置であり、任意のコンピュータ装置により実装される。制御装置150は、処理装置(CPU及び/又はGPU)及び通信装置を有する。処理装置(不図示)は、制御プログラムを実行することにより、制御装置150にロボット101の制御機能を発現させる。なお、制御プログラムは、例えば、ROM(不図示)に記憶され、それを処理装置が読み出してRAMに展開することで起動される。通信装置(不図示)は、例えばロボット101と無線通信する装置である。通信装置により制御信号をロボット101に送信することで、ロボット101が制御される。制御装置150は、撮像部151、解析部152、学習部153、制御部154を発現する。 The control device 150 is a device that controls the robot 101, and is mounted by an arbitrary computer device. The control device 150 includes a processing device (CPU and / or GPU) and a communication device. The processing device (not shown) causes the control device 150 to express the control function of the robot 101 by executing the control program. The control program is stored in, for example, a ROM (not shown), read by a processing device, and expanded in a RAM to be activated. The communication device (not shown) is, for example, a device that wirelessly communicates with the robot 101. The robot 101 is controlled by transmitting a control signal to the robot 101 by the communication device. The control device 150 expresses the imaging unit 151, the analysis unit 152, the learning unit 153, and the control unit 154.

撮像部151は、撮像装置133を用いてワーク90を撮影する。これによりワーク90の画像及び(奥行き方向に関する)深度マップを得ることができる。 The imaging unit 151 photographs the work 90 using the imaging device 133. This makes it possible to obtain an image of the work 90 and a depth map (in the depth direction).

解析部152は、画像に基づいてワーク90を特定し、深度マップのうちの特定したワーク90に対応するワーク部分に基づいてワーク90の位置及び向きを決定する。ワーク90の位置及び向きを決定する方法については後述する。ここで、解析部152は、学習部153による機械学習により画像に基づいてワークを特定してよい。 The analysis unit 152 identifies the work 90 based on the image, and determines the position and orientation of the work 90 based on the work portion corresponding to the specified work 90 in the depth map. The method of determining the position and orientation of the work 90 will be described later. Here, the analysis unit 152 may specify the work based on the image by machine learning by the learning unit 153.

学習部153は、ワーク90を特定済みの正解画像を用いて、解析部152に採用される機械学習モデルを生成する。機械学習モデルとして、例えば深層学習を採用することができる。学習用画像として、例えば100枚のワーク90の画像を用いてよい。正解画像として、それらの学習用画像の中から例えば数枚の画像を任意の画像処理ソフトウェアを用いてポリゴン処理することにより、ワーク90が特定された画像を用いてよい。具体的には、画像処理ソフトを用いて、画像に写っているワークに対し、それを囲うように頂点を手動で作成し、それを元にポリゴンを作成する。なお、ポリゴン処理のための画像処理ソフトとしては、例えば、VGG Image Annotator (VIA)を用いることができる。これにより、解析部152が、不定形で変形し得るワーク90の画像認識を高速処理することが可能になる。なお、コンテナの内壁及び仕切りも特定するよう機械学習してもよい。 The learning unit 153 generates a machine learning model adopted by the analysis unit 152 by using the correct image in which the work 90 has been specified. As a machine learning model, for example, deep learning can be adopted. As the learning image, for example, an image of 100 workpieces 90 may be used. As the correct image, an image in which the work 90 is specified may be used, for example, by performing polygon processing on several images from the learning images using arbitrary image processing software. Specifically, using image processing software, vertices are manually created so as to surround the work shown in the image, and polygons are created based on the vertices. As the image processing software for polygon processing, for example, VGG Image Annotator (VIA) can be used. This enables the analysis unit 152 to perform high-speed processing of image recognition of the work 90 that can be deformed in an indefinite form. Machine learning may be performed so as to specify the inner wall and the partition of the container.

制御部154は、解析部152により決定されたワーク90の位置及び向きに基づいてロボットアーム120を駆動制御する。制御部154は、制御信号をロボット101に送信することで、ロボット101の駆動装置140により本体110の向きを変えるとともにロボットアーム120を前後に延ばし、固定部材134内の駆動装置により吸着パッド135を上下方向に傾け、吸着パッド135をオンオフしてワーク90をピック及びプレイスする。 The control unit 154 drives and controls the robot arm 120 based on the position and orientation of the work 90 determined by the analysis unit 152. By transmitting a control signal to the robot 101, the control unit 154 changes the direction of the main body 110 by the driving device 140 of the robot 101, extends the robot arm 120 back and forth, and uses the driving device in the fixing member 134 to push the suction pad 135. Tilt up and down to turn the suction pad 135 on and off to pick and place the work 90.

なお、制御部154は、複数の吸着パッド135のうちワーク90に吸着した吸着パッド135の数に応じてロボットアーム120の駆動速度を決定する。ワーク90に吸着した吸着パッド135の数が多い場合、例えば2つの吸着パッド135の両方がワーク90に吸着した場合にロボットアーム120の駆動速度を高く、少ない場合、例えば2つの吸着パッド135の一方のみがワーク90に吸着した場合に低くすることで、ワークを安定に高速で搬送することができる。 The control unit 154 determines the driving speed of the robot arm 120 according to the number of suction pads 135 sucked on the work 90 among the plurality of suction pads 135. When the number of suction pads 135 adsorbed on the work 90 is large, for example, when both of the two suction pads 135 are adsorbed on the work 90, the driving speed of the robot arm 120 is high, and when the number is small, for example, one of the two suction pads 135. When only the work is adsorbed on the work 90, it is lowered so that the work can be stably conveyed at high speed.

図2に、ワーク分離装置200の構成を示す。なお、ワーク分離装置200は、コンテナ70に対してセットされている。コンテナ70は、一例として、仕切り79により長手方向(図面斜め方向)に3及び短手方向(図面左右方向)に4、計12の区画に区画化され、それらのうちの区画S内にワーク90、区画S内にワーク91が表面を短手方向に向けて収容されている。ワーク分離装置200は、ワーク90の少なくとも上部を一方向に寄せて他のワークから分離する装置であり、一組の支持具駆動装置210及び棒状部材220を含む。 FIG. 2 shows the configuration of the work separating device 200. The work separating device 200 is set with respect to the container 70. Container 70, as an example, the longitudinal direction 4 (drawing oblique direction) 3 and the lateral direction (horizontal direction in the drawing), is partitioned into a total of 12 compartments by a partition 79, the work in the compartment S a of them 90, the workpiece 91 is accommodated toward the surface lateral direction in the compartment S b. The work separating device 200 is a device that brings at least the upper portion of the work 90 in one direction to separate it from another work, and includes a set of support drive devices 210 and a rod-shaped member 220.

一組の支持具駆動装置210は、棒状部材220をコンテナの短手方向に駆動する装置であり、それぞれコンテナ70の長手方向の一側及び他側に配置される。各支持具駆動装置210は、本体211、テーブル212、及び支持具213を含む。 A set of support device driving devices 210 are devices for driving the rod-shaped member 220 in the lateral direction of the container, and are arranged on one side and the other side in the longitudinal direction of the container 70, respectively. Each support drive device 210 includes a main body 211, a table 212, and a support 213.

本体211は、その上面上にテーブル212を支持し、その底部に固定されたガイドロックを通るボールねじを電動モータ(いずれも不図示)により回転することでテーブル212を一軸方向に駆動する。 The main body 211 supports the table 212 on its upper surface, and drives the table 212 in the uniaxial direction by rotating a ball screw passing through a guide lock fixed to the bottom of the table 212 by an electric motor (not shown).

テーブル212は、本体211上に支持具213を支持して一軸方向に移動する部材である。 The table 212 is a member that supports the support 213 on the main body 211 and moves in the uniaxial direction.

支持具213は、テーブル212上に立設し、棒状部材220の一端を支持する部材である。支持具213は、上方に延び、コンテナ70の内側に向かって屈曲し、コンテナ70の内壁にそって下方に延びる形状を有し、その先端に棒状部材220の一端を固定する。支持具213の先端は棒状部材220を支持して駆動装置(不図示)により上下動する。 The support tool 213 is a member that stands on the table 212 and supports one end of the rod-shaped member 220. The support 213 has a shape that extends upward, bends inward toward the inside of the container 70, and extends downward along the inner wall of the container 70, and one end of the rod-shaped member 220 is fixed to the tip thereof. The tip of the support tool 213 supports the rod-shaped member 220 and moves up and down by a driving device (not shown).

棒状部材220は、一組の支持具駆動装置210のそれぞれの支持具213に両端が固定されて、コンテナ70内で仕切り79の上方に支持される。棒状部材220は、金属、プラスチック等の素材から形成されてよいし、これに代えてワイヤであってもよい。 Both ends of the rod-shaped member 220 are fixed to the respective supports 213 of the set of support drive devices 210, and the rod-shaped members 220 are supported above the partition 79 in the container 70. The rod-shaped member 220 may be formed of a material such as metal or plastic, or may be a wire instead.

ワーク分離装置200は、支持具213により棒状部材220を上げ、本体211により支持具213を図面左右方向に駆動し、棒状部材220を下げてワーク90,91の間に配し、本体211により支持具213を図面左方に駆動することで、ワーク90の少なくとも上部を図面左方に寄せて他のワーク91から分離する。これにより、ワーク90,91の間にスペースを設けて、ワーク90或いはワーク91の表面を撮像することができるようになるとともに、ロボットハンド130の吸着パッド135を挿入するスペースを確保することができる。 In the work separating device 200, the rod-shaped member 220 is raised by the support tool 213, the support tool 213 is driven by the main body 211 in the left-right direction in the drawing, the rod-shaped member 220 is lowered and arranged between the works 90 and 91, and is supported by the main body 211. By driving the tool 213 to the left side of the drawing, at least the upper part of the work 90 is moved to the left side of the drawing and separated from the other work 91. As a result, a space can be provided between the works 90 and 91 so that the surface of the work 90 or the work 91 can be imaged, and a space for inserting the suction pad 135 of the robot hand 130 can be secured. ..

なお、ワーク分離装置200は、棒状部材220を動かして、ワーク90の少なくとも上部を左方に寄せるだけでなく、ワーク91の少なくとも上部を右方に寄せるものでもよい。これにより、ワーク90の上部とワーク91の上部とがさらに遠ざかるので、ワーク90の撮像の際に、ワーク91が映り込む可能性を低減できる。 The work separating device 200 may not only move the rod-shaped member 220 to move at least the upper part of the work 90 to the left, but also move at least the upper part of the work 91 to the right. As a result, the upper part of the work 90 and the upper part of the work 91 are further separated from each other, so that the possibility that the work 91 is reflected when the work 90 is imaged can be reduced.

図3に、本実施形態に係るピッキングシステム100におけるロボット101、コンテナ70,80、及びQRコード(登録商標)リーダ60の配置を示す。上面視において、ロボット101の左にコンテナ70、上にコンテナ80、左上にQRコード(登録商標)リーダ60が配置されている。 FIG. 3 shows the arrangement of the robot 101, the containers 70, 80, and the QR code (registered trademark) reader 60 in the picking system 100 according to the present embodiment. In the top view, the container 70 is arranged on the left side of the robot 101, the container 80 is arranged on the upper side, and the QR code (registered trademark) reader 60 is arranged on the upper left side.

コンテナ70は、並べ替え対象のワークを収容するコンテナであり、その内部は仕切り79により一例として12の区画71に分割されている。ワークは12の区画71に雑然と収容されているとする。なお、コンテナ70にワーク分離装置200が設置されている。 The container 70 is a container for accommodating the works to be rearranged, and the inside thereof is divided into 12 sections 71 as an example by a partition 79. It is assumed that the work is cluttered in 12 compartments 71. The work separating device 200 is installed in the container 70.

コンテナ80は、プレイス用コンテナであり、その内部は仕切り89により一例として12の区画に分割されている。ワークは、それぞれ、12の区画81のうちの定められた区画に収容される。 The container 80 is a place container, and the inside thereof is divided into 12 sections as an example by a partition 89. Each work is housed in a designated compartment of the 12 compartments 81.

QRコード(登録商標)リーダ60は、QRコード(登録商標)を読み取る装置である。各ワークの表面には、その収容物、収容量等が記録したQRコード(登録商標)が貼付されている。QRコード(登録商標)リーダ60により各ワークのQRコード(登録商標)を読み取り、その記録より収容すべきコンテナ80の区画81が決定される。 The QR code (registered trademark) reader 60 is a device that reads a QR code (registered trademark). A QR code (registered trademark) that records the contents, the amount of contents, etc. is affixed to the surface of each work. The QR code (registered trademark) of each work is read by the QR code (registered trademark) reader 60, and the section 81 of the container 80 to be accommodated is determined from the record.

解析部152によるワークの識別について説明する。 The identification of the work by the analysis unit 152 will be described.

図4Aに、コンテナ70内に収容されたワーク91〜97を示す。なお、コンテナ70の内壁は省略されている。コンテナ70の区画71内には、3つのワーク91,95,96が、図面右方を向いて、互いに上部を重ねつつコンテナ70の左内壁又は仕切り(不図示)に寄りかけて収容されている。ここで、ワーク91が最も上に、その下にワーク95,96が重なっている。区画72,73内には、各1つのワーク92,93が、図面下方を向いて、上部をコンテナ70の上内壁又は仕切り(不図示)に寄りかけて収容されている。区画74内には、2つのワーク94,97が、図面左方を向いて、互いに上部を重ねつつコンテナ70の右内壁又は仕切り(不図示)に寄りかけて収容されている。ここで、ワーク94が上に、その下にワーク97が重なっている。一例としてこれらのワーク91〜97の収容状態が、撮像部151により上方から撮像され、その結果として画像及び深度マップが得られる。 FIG. 4A shows the workpieces 91 to 97 housed in the container 70. The inner wall of the container 70 is omitted. In the compartment 71 of the container 70, three workpieces 91, 95, 96 are housed facing the right side of the drawing and leaning against the left inner wall or the partition (not shown) of the container 70 while overlapping the upper parts of each other. .. Here, the work 91 is on top, and the works 95 and 96 are on top of it. In the compartments 72 and 73, one work 92 and 93, respectively, are housed facing downward in the drawing and leaning toward the upper inner wall or partition (not shown) of the container 70 at the upper portion. In the compartment 74, the two workpieces 94 and 97 are housed facing the left side of the drawing and leaning toward the right inner wall or the partition (not shown) of the container 70 while overlapping the upper parts of each other. Here, the work 94 is on top, and the work 97 is on top of it. As an example, the accommodation state of these works 91 to 97 is imaged from above by the imaging unit 151, and as a result, an image and a depth map are obtained.

図4Bに、画像認識によるコンテナ70内のワーク91〜97の識別結果を示す。解析部152は、ワーク91〜97の画像を画像認識することで個々のワーク91〜97を識別する。具体的に、解析部152は、ワークを特定済みの正解画像から生成された機械学習モデルを用いて、画像に基づいてワーク91〜97を特定する。特定する方法として、例えばセマンティック・セグメンテーション、本例では特にインスタンス・セグメンテーションを採用することができる。インスタンス・セグメンテーションでは、画像の各ピクセルをオブジェクトクラスに割り当て、各オブジェクトの形状を捉えることで、個々のワークが識別される。要するに、解析部152は、画像におけるワーク91〜97の占めるピクセルを認識することでワーク91〜97を特定する。 FIG. 4B shows the identification results of the works 91 to 97 in the container 70 by image recognition. The analysis unit 152 identifies the individual works 91 to 97 by recognizing the images of the works 91 to 97. Specifically, the analysis unit 152 identifies the works 91 to 97 based on the image by using the machine learning model generated from the correct image in which the work has been specified. As a method for specifying, for example, semantic segmentation can be adopted, and in this example, instance segmentation in particular can be adopted. In instance segmentation, each pixel of an image is assigned to an object class, and the shape of each object is captured to identify individual works. In short, the analysis unit 152 identifies the works 91 to 97 by recognizing the pixels occupied by the works 91 to 97 in the image.

本例では、区画71内のワーク91〜93のうち、その表面91aのほぼ全体を認識することができるワーク91が特定されている。また、区画72,73内で表面92a,93aのほぼ全体を認識することができるワーク92,93が特定されている。また、区画74内のワーク94,97のうち、その表面94aのほぼ全体を認識することができるワーク94が特定されている。インスタンス・セグメンテーションにより、コンテナ70の上方から表面のほぼ全体を認識することができるワークを最も上に重ねられたワークとして特定することができる。なお、表面の一部のみ認識することができるワーク95〜97は、下に重ねられたワークとして特定され、吸着パッド135により吸着保持することのできる十分広い表面上の領域を上方に露出していないため、ピック対象のワークから除外される。 In this example, among the works 91 to 93 in the section 71, the work 91 capable of recognizing almost the entire surface 91a is specified. Further, the workpieces 92 and 93 capable of recognizing almost the entire surface 92a and 93a are specified in the compartments 72 and 73. Further, among the works 94 and 97 in the compartment 74, the work 94 capable of recognizing almost the entire surface 94a has been specified. By instance segmentation, a work that can recognize almost the entire surface from above the container 70 can be specified as a work stacked on top. The workpieces 95 to 97 that can recognize only a part of the surface are specified as workpieces stacked underneath, and a sufficiently wide area on the surface that can be attracted and held by the suction pad 135 is exposed upward. Since there is no work, it is excluded from the work to be picked.

また、解析部152は、セマンティック・セグメンテーションではなく、オブジェクト輪郭検出(Object Contour Detection)によりワークを識別するものでもよい。 Further, the analysis unit 152 may identify the work by Object Contour Detection instead of semantic segmentation.

また、解析部は、機械学習ではなくルールベースによる画像認識の方法によりワークを識別するものであってもよい。 Further, the analysis unit may identify the work by a rule-based image recognition method instead of machine learning.

なお、深度マップからでは通常、重なったワークを識別することができない。上述のように、画像の境界認識により個々のワークを識別し、それらの中から目的のワークを特定し、その結果に基づいて深度マップから目的のワークに対応するワーク部分を特定することができる。 It should be noted that it is usually not possible to identify overlapping workpieces from the depth map. As described above, individual works can be identified by image boundary recognition, the target work can be specified from them, and the work portion corresponding to the target work can be specified from the depth map based on the result. ..

解析部152によるワークの位置及び向きの算出について説明する。 The calculation of the position and orientation of the work by the analysis unit 152 will be described.

図5Aに、ピッキングシステム100において撮像部151によりコンテナ70内のワークの画像(左図)及び深度マップ(右図)の一例を示す。画像は、RGB画像であってよい。本例では、コンテナ70の仕切り79により区画された1つの区画71に1つのワーク91、その他の周囲の区画にも各1のワークが収容されている。解析部152は、画像に対して上述の画像認識を適用してコンテナ70内のワーク91及びその他のワークを仕切り79等から識別する。解析部152は、識別したワークの中からピック対象のワーク91を特定する。 FIG. 5A shows an example of an image (left figure) and a depth map (right figure) of the work in the container 70 by the imaging unit 151 in the picking system 100. The image may be an RGB image. In this example, one work 91 is housed in one section 71 partitioned by the partition 79 of the container 70, and one work is accommodated in each of the other surrounding sections. The analysis unit 152 applies the above-mentioned image recognition to the image to identify the work 91 and other works in the container 70 from the partition 79 and the like. The analysis unit 152 identifies the work 91 to be picked from the identified works.

図5Bに、画像から特定されたワーク91(左図)及び深度マップ内のワーク部分91D(右図)の一例を示す。解析部152は、画像の中から特定したワーク91を抽出し、これをマスクとして使用して深度マップから対応するワーク部分91Dを切り出す。 FIG. 5B shows an example of the work 91 (left figure) identified from the image and the work portion 91D (right figure) in the depth map. The analysis unit 152 extracts the specified work 91 from the image and uses this as a mask to cut out the corresponding work portion 91D from the depth map.

図5Cに、深度マップ内のワーク部分91Dを再構成して得られる点群データ91Pの一例を示す。解析部152は、撮像装置133の位置に基づいて深度マップを3次元点群に、すなわち撮像装置133を基準とする奥行き方向の位置情報を3次元空間内の位置情報に変換する。これにより、深度マップから、空間基準のワークの3次元位置情報が得られる。 FIG. 5C shows an example of the point cloud data 91P obtained by reconstructing the work portion 91D in the depth map. The analysis unit 152 converts the depth map into a three-dimensional point cloud based on the position of the image pickup device 133, that is, the position information in the depth direction with reference to the image pickup device 133 into the position information in the three-dimensional space. As a result, the three-dimensional position information of the spatially-referenced work can be obtained from the depth map.

解析部152は、適宜、点群データ91Pをダウンサンプリングしてよい。サンプリングレートは例えば10分の1であってよい。点群データ91Pのデータ量を減らすことで、ワーク91の位置及び向きの解析を高速化することができる。さらに、解析部152は、点群データ91Pに対してスタティスティックアウトライヤ処理(統計的外れ値処理)をしてよい。点群データ91Pから外れ値を除去することで、ワーク91の位置及び向きを正確に決定することが可能となる。なお、再構成前の深度マップに対してダウンサンプリング及びアウトライヤを除去する処理を施してもよい。 The analysis unit 152 may downsample the point cloud data 91P as appropriate. The sampling rate may be, for example, 1/10. By reducing the amount of data in the point cloud data 91P, it is possible to speed up the analysis of the position and orientation of the work 91. Further, the analysis unit 152 may perform static outliner processing (statistical outlier processing) on the point cloud data 91P. By removing the outliers from the point cloud data 91P, the position and orientation of the work 91 can be accurately determined. The depth map before reconstruction may be subjected to processing for downsampling and removing outliers.

図5Dに、点群データ91Pからワーク91の向きを決定するために取得したデータ点P1〜P3の一例を示す。まず、解析部152は、ワーク部分91Dから再構成された点群データ91Pのすべて又はほとんどを内側に含む矩形区域Sを決定する。次いで、解析部152は、矩形区域Sを上下に3つ、左右3つ、計9つの区域S〜Sに分割する。ここで、上下方向に等間隔に分割してもよいし、左右方向に等間隔に分割してもよい。ただし、少なくとも中央の区域Sの上下方向及び左右方向の幅をそれぞれ最小幅より大きく定めることとする。次いで、解析部152は、9つの区域S〜Sから互いに隣接しない3つの区域を選択する。一例として、逆三角配置における区域S,S,Sを選択する。或いは、三角配置における区域S,S,S、左向き三角配置における区域S,S,S、右向き三角配置における区域S,S,Sを選択してもよい。次いで、解析部152は、3つの区域S,S,Sからそれぞれ1つのデータ点P1〜P3を取得する。データ点P1〜P3は、各区域内のデータ点からランダムに選択してよいし、各区域について予め定められた点から最近接のデータ点を選択してもよい。 FIG. 5D shows an example of data points P1 to P3 acquired from the point cloud data 91P to determine the orientation of the work 91. First, the analysis unit 152 determines a rectangular area S including all or most of the point cloud data 91P reconstructed from the work portion 91D. Then, the analysis unit 152, three rectangular zones S vertically, horizontally three, is divided into a total of nine areas S 1 to S 9. Here, it may be divided at equal intervals in the vertical direction or at equal intervals in the horizontal direction. However, it is assumed that determined greater than the respective minimum width of at least the center of the area S 5 vertical and horizontal directions of width. Then, the analysis unit 152 selects the three zones which are not adjacent to each other nine areas S 1 to S 9. As an example, to select an area S 1, S 3, S 8 in the reverse triangular arrangement. Alternatively, the area S 2, S 7, S 9 in triangular arrangement, the area S 3 in the left triangular arrangement, S 4, S 9, may select an area S 1, S 6, S 7 in right triangular arrangement. Then, the analysis unit 152 obtains the three zones S 1, S 3, each one data point P1~P3 from S 8. The data points P1 to P3 may be randomly selected from the data points in each area, or the closest data point may be selected from the predetermined points for each area.

図5Eに、3つのデータ点P1〜P3を用いて決定したワーク91の向きの一例を示す。解析部152は、選択した3つのデータ点P1〜P3を用いて、3つのデータ点P1〜P3により規定される三角区域Tの法線ベクトルVnを算出する。法線ベクトルVnより、ワーク91の表面の向きが定められる。 FIG. 5E shows an example of the orientation of the work 91 determined by using the three data points P1 to P3. The analysis unit 152 calculates the normal vector Vn of the triangular area T defined by the three data points P1 to P3 using the three selected data points P1 to P3. The orientation of the surface of the work 91 is determined from the normal vector Vn.

このように、ワーク91の向き、すなわち法線ベクトルVnを算出するための3つのデータ点P1〜P3を、ワーク部分91Dを9分割した区域S〜Sのうちの互いに隣接しない3つの区域から取得してデータ点P1〜P3を離間させることで、フレキシブルなワーク91の場合に局所的な凹凸が影響することなく、ワーク91の表面の全体的な向きを決定することが可能となる。 Thus, the orientation of the workpiece 91, i.e. the three data points P1~P3 for calculating the normal vector Vn, three zones which are not adjacent to each other among the area S 1 to S 9 that 9 divides the work portion 91D By separating the data points P1 to P3 from the data points P1 to P3, it is possible to determine the overall orientation of the surface of the work 91 without being affected by local unevenness in the case of the flexible work 91.

なお、解析部152は、法線ベクトルを算出するためのデータ点P1〜P3を取得できなかった場合に3つの区域を変更してもよい。斯かる場合、決定点を取得できなかった区域のみを別の区域に変更してよい。ただし、3つの区域は互いに隣接しないものとする。或いは、逆三角配置における区域S,S,Sを、三角配置における区域S,S,S、左向き三角配置における区域S,S,S、右向き三角配置における区域S,S,Sのいずれかに変更してもよい。これにより、例えば不定形なワーク91に対して深度マップが部分的に得られず、決定点を取得できない場合にあっても、区域を変更して決定点を取得することで、ワークの表面の全体的な向きを決定することが可能となる。 The analysis unit 152 may change the three areas when the data points P1 to P3 for calculating the normal vector cannot be acquired. In such a case, only the area where the decision point could not be obtained may be changed to another area. However, the three areas shall not be adjacent to each other. Alternatively, the area S 1, S 3, S 8 in the reverse triangular arrangement, area S 2, S 7, S 9 in triangular arrangement, the area S 3 in the left triangular arrangement, S 4, S 9, areas in the right triangle configuration S It may be changed to any of 1, S 6 and S 7. As a result, for example, even if the depth map cannot be partially obtained for the irregular work 91 and the decision point cannot be obtained, the decision point can be obtained by changing the area to obtain the decision point on the surface of the work. It is possible to determine the overall orientation.

また、解析部152は、矩形区域Sを略均等に9分割するものでもよい。矩形区域Sを略均等に9分割することで、所定値以上の大きさの三角区域Tを得ることができ、ロバスト性の高い法線ベクトルを算出することができる。 Further, the analysis unit 152 may divide the rectangular area S into 9 substantially evenly. By dividing the rectangular area S into 9 substantially evenly, a triangular area T having a size larger than a predetermined value can be obtained, and a highly robust normal vector can be calculated.

なお、上記説明では、解析部152が矩形区域Sを計9つの区域S〜Sに分割するとしたが、矩形区域Sの分割数は9つに限定されるものではない。解析部152は、ワーク部分91Dを7以上の区画に分割するものではあればよい。 In the above description, the analysis unit 152 divides the rectangular area S into a total of nine areas S 1 to S 9 , but the number of divisions of the rectangular area S is not limited to nine. The analysis unit 152 may divide the work portion 91D into seven or more sections.

図5Fに、点群データ91Pから決定したワーク表面上の吸着点(すなわち、位置決定点)Paの一例を示す。解析部152は、ワーク91の向きに基づいてワーク91の表面に沿った方向(三角区域Tの平面内の方向を定義する単位長さのベクトルの鉛直下向き成分が略最大となる方向)を決定し、その方向に基づいてワーク部分91D内の吸着点Pa(この位置をワーク91の位置と呼ぶ)を決定する。より詳細には、吸着パッド135のサイズに応じて、収容物が集中してないワーク91の上側に吸着点Paを決定するよう、法線ベクトルVnから接線ベクトルVtを定め、矩形区域Sの上端中央から接線ベクトルVtに沿って下方に距離dの位置を吸着点Paと定める。ここで、距離dは、吸着パッド135のサイズより大きく、例えば3cmと定めることとする。 FIG. 5F shows an example of the suction point (that is, the position determination point) Pa on the work surface determined from the point cloud data 91P. The analysis unit 152 determines the direction along the surface of the work 91 (the direction in which the vertical downward component of the unit length vector that defines the direction in the plane of the triangular area T is substantially maximum) based on the orientation of the work 91. Then, the suction point Pa (this position is called the position of the work 91) in the work portion 91D is determined based on the direction. More specifically, the tangent vector Vt is determined from the normal vector Vn so as to determine the suction point Pa on the upper side of the work 91 where the contents are not concentrated according to the size of the suction pad 135, and the upper end of the rectangular area S is determined. The position of the distance d downward along the tangent vector Vt from the center is defined as the suction point Pa. Here, the distance d is set to be larger than the size of the suction pad 135, for example, 3 cm.

図6に、ロボットハンド130(吸着パッド135)によるワーク91の吸着の一例を示す。制御部154は、解析部152からワーク91の位置及び向きの算出結果を受信し、ロボットアーム120を制御して吸着パッド135の向きをワーク91の向き(すなわち、法線ベクトルVnの方向)に合わせ、吸着パッド135をワーク91の表面上の吸着点Paに向けて駆動する。吸着パッド135の向きをワーク91の向きに合わせることで、ワーク表面を吸着して安定にピッキングすることが可能となる。 FIG. 6 shows an example of suction of the work 91 by the robot hand 130 (suction pad 135). The control unit 154 receives the calculation result of the position and orientation of the work 91 from the analysis unit 152, controls the robot arm 120, and sets the direction of the suction pad 135 to the direction of the work 91 (that is, the direction of the normal vector Vn). Together, the suction pad 135 is driven toward the suction point Pa on the surface of the work 91. By matching the orientation of the suction pad 135 with the orientation of the work 91, it is possible to suck the work surface and pick it stably.

図7に、本実施形態に係るピッキング方法のフローを示す。 FIG. 7 shows the flow of the picking method according to the present embodiment.

ステップS102にて、制御部154は、ロボットハンド130をコンテナ70の上方に移動する。或いは、コンテナ70内の複数の区画71のうちの1つの区画71の上方に移動してもよい。 In step S102, the control unit 154 moves the robot hand 130 above the container 70. Alternatively, it may move above one of the plurality of compartments 71 in the container 70.

ステップS104にて、撮像部151は、コンテナ70内のワークを撮影して画像及び深度マップを得る。 In step S104, the imaging unit 151 photographs the work in the container 70 to obtain an image and a depth map.

ステップS106にて、制御部154は、画像を解析してワーク90が見えるか否か、つまり画像内にワーク90が含まれているか否か判断する。ワーク90が見える場合、次のステップに進む。見えない場合、フローを終了する。或いは、ステップS102に戻り、制御部154は、ロボットハンド130を、コンテナ70内の複数の区画71のうちの次の区画71の上方に移動してもよい。 In step S106, the control unit 154 analyzes the image and determines whether or not the work 90 can be seen, that is, whether or not the work 90 is included in the image. If the work 90 is visible, proceed to the next step. If you cannot see it, end the flow. Alternatively, returning to step S102, the control unit 154 may move the robot hand 130 above the next compartment 71 of the plurality of compartments 71 in the container 70.

なお、ワーク90は認識できるが、例えば他のワーク91と重なっているために吸着パッド135により吸着保持することのできる十分広い表面上の領域を上方に露出していないと判断される場合には、制御部154は、ワーク分離装置200により、ワーク90の少なくとも上部を一方向に寄せて他のワーク91から分離してもよい。それにより、他のワーク91との間にスペースを設けて、ワーク90の表面を撮像することができるようになるとともに、ロボットハンド130の吸着パッド135を挿入するスペースを確保することができる。ワーク分離後、ステップS104に戻る。 Although the work 90 can be recognized, for example, when it is determined that a sufficiently wide surface area that can be sucked and held by the suction pad 135 is not exposed upward because it overlaps with another work 91. The control unit 154 may separate the work 90 from the other work 91 by moving at least the upper portion of the work 90 in one direction by the work separating device 200. As a result, a space can be provided between the work 91 and the surface of the work 90, and a space for inserting the suction pad 135 of the robot hand 130 can be secured. After separating the work, the process returns to step S104.

ステップS108にて、解析部152は、画像に基づいてワーク90を特定し、深度マップのうちの特定したワーク90に対応するワーク部分91Dに基づいてワーク90の位置及び向きを算出する。詳細は先述のとおりである。 In step S108, the analysis unit 152 identifies the work 90 based on the image, and calculates the position and orientation of the work 90 based on the work portion 91D corresponding to the specified work 90 in the depth map. Details are as described above.

解析部152は、図4A及び図4Bを用いて説明したように、ワーク91〜97の画像を画像認識(特に、境界認識)することで個々のワーク91〜97を識別する。次いで、解析部152は、図5Aの画像(左図)において識別したワークの中からピック対象のワーク91を特定する。次いで、解析部152は、図5Bの画像(左図)の中から特定したワーク91を抽出し、これをマスクとして使用して深度マップ(右図)から対応するワーク部分91Dを切り出す。次いで、解析部152は、図5Cに示すように、撮像装置133の位置に基づいて深度マップ(のワーク部分91D)を3次元点群に変換する。ここで、解析部152は、適宜、点群データ91Pをダウンサンプリングしてよい。さらに、解析部152は、点群データ91Pに対してスタティスティックアウトライヤ処理(統計的外れ値処理)をしてよい。なお、再構成前の深度マップに対してダウンサンプリング及びアウトライヤ処理を施してもよい。 As described with reference to FIGS. 4A and 4B, the analysis unit 152 identifies the individual works 91 to 97 by performing image recognition (particularly, boundary recognition) on the images of the works 91 to 97. Next, the analysis unit 152 identifies the work 91 to be picked from the works identified in the image of FIG. 5A (left figure). Next, the analysis unit 152 extracts the specified work 91 from the image of FIG. 5B (left figure), uses this as a mask, and cuts out the corresponding work portion 91D from the depth map (right figure). Next, as shown in FIG. 5C, the analysis unit 152 converts the depth map (work portion 91D) into a three-dimensional point cloud based on the position of the image pickup apparatus 133. Here, the analysis unit 152 may downsample the point cloud data 91P as appropriate. Further, the analysis unit 152 may perform static outliner processing (statistical outlier processing) on the point cloud data 91P. In addition, downsampling and outlier processing may be performed on the depth map before reconstruction.

次いで、解析部152は、図5Dに示すように、ワーク部分91Dから再構成された点群データ91Pのすべて又はほとんどを内側に含む矩形区域Sを決定し、矩形区域Sを上下に3つ、左右3つ、計9つの区域S〜Sに分割し、それらのなかから互いに隣接しない3つの区域、例えば3つの区域S,S,Sからそれぞれ1つのデータ点P1〜P3を取得する。次いで、解析部152は、図5Eに示すように、選択した3つのデータ点P1〜P3を用いて、3つのデータ点P1〜P3により規定される三角区域Tの法線ベクトルVnを算出する。法線ベクトルVnより、ワーク91の表面の向きが定められる。なお、解析部152は、法線ベクトルVnを算出するためのデータ点P1〜P3を取得できなかった場合に3つの区域を変更してもよい。次いで、解析部152は、図5Fに示すように、ワーク91の向きに基づいてワーク91の表面に沿った方向(三角区域Tの平面内の方向を定義する単位長さのベクトルの鉛直下向き成分が略最大となる方向)を決定し、その方向に基づいてワーク部分91D内の吸着点Pa(この位置をワーク91の位置と呼ぶ)を決定する。 Next, as shown in FIG. 5D, the analysis unit 152 determines a rectangular area S including all or most of the point cloud data 91P reconstructed from the work portion 91D, and three rectangular areas S up and down. left three, divided into a total of nine areas S 1 to S 9, three areas from among those not adjacent to one another, for example, three zones S 1, S 3, each one data point P1~P3 from S 8 get. Next, as shown in FIG. 5E, the analysis unit 152 calculates the normal vector Vn of the triangular area T defined by the three data points P1 to P3 using the three selected data points P1 to P3. The orientation of the surface of the work 91 is determined from the normal vector Vn. The analysis unit 152 may change the three areas when the data points P1 to P3 for calculating the normal vector Vn cannot be acquired. Next, as shown in FIG. 5F, the analysis unit 152 performs a vertical downward component of a vector having a unit length that defines the direction along the surface of the work 91 (the direction in the plane of the triangular area T) based on the direction of the work 91. The direction in which is substantially maximum) is determined, and the suction point Pa (this position is referred to as the position of the work 91) in the work portion 91D is determined based on that direction.

ステップS110にて、制御部154は、ステップS108にて算出したワーク91の位置に基づいてロボットハンド130を目的のワーク91の上方に移動する。 In step S110, the control unit 154 moves the robot hand 130 above the target work 91 based on the position of the work 91 calculated in step S108.

ステップS112にて、制御部154は、吸着パッド135をオンする。 In step S112, the control unit 154 turns on the suction pad 135.

ステップS114にて、制御部154は、図6に示すように、ステップS108にて算出したワーク91の位置及び向きに基づいてロボットアーム120を制御して、吸着パッド135の向きをワーク91の向き(すなわち、法線ベクトルVnの方向)に合わせ、吸着パッド135をワーク91の表面上の吸着点Paに向けて駆動する。吸着パッド135の向きをワーク91の向きに合わせることで、ワーク表面を吸着して安定にピッキングする。 In step S114, as shown in FIG. 6, the control unit 154 controls the robot arm 120 based on the position and orientation of the work 91 calculated in step S108, and sets the orientation of the suction pad 135 to the orientation of the work 91. The suction pad 135 is driven toward the suction point Pa on the surface of the work 91 in accordance with (that is, the direction of the normal vector Vn). By aligning the direction of the suction pad 135 with the direction of the work 91, the surface of the work is sucked and picked stably.

ステップS116にて、制御部154は、吸着パッド135によりワーク91の吸着に成功したか否か判断する。成功した場合、ステップS118に進む。失敗した場合、ステップS104に戻る。なお、複数回失敗した場合、フローを終了してもよい。 In step S116, the control unit 154 determines whether or not the suction pad 135 has succeeded in sucking the work 91. If successful, the process proceeds to step S118. If it fails, the process returns to step S104. If it fails a plurality of times, the flow may be terminated.

ステップS118にて、制御部154は、複数の吸着パッド135のうちワーク91に吸着した吸着パッド135の数を判断する。2つの吸着パッド135の両方がワーク91に吸着した場合、ステップS120に進み、制御部154はロボットアーム120の駆動速度を高くしてワーク91を高速に搬送し、2つの吸着パッド135の一方のみがワーク90に吸着した場合、ステップS122に進み、ロボットアーム120の駆動速度を低くしてワーク91を安定に搬送する。ワーク91がフレキシブルであるため一方の吸着パッド135による吸着に失敗した場合であってもワーク91を安定に搬送することが可能となる。 In step S118, the control unit 154 determines the number of suction pads 135 sucked on the work 91 among the plurality of suction pads 135. When both of the two suction pads 135 are sucked to the work 91, the process proceeds to step S120, and the control unit 154 increases the drive speed of the robot arm 120 to convey the work 91 at high speed, and only one of the two suction pads 135 is sucked. When is attracted to the work 90, the process proceeds to step S122, the driving speed of the robot arm 120 is lowered, and the work 91 is stably conveyed. Since the work 91 is flexible, the work 91 can be stably conveyed even when suction by one of the suction pads 135 fails.

ステップS124にて、制御部154は、ワーク91をQRコード(登録商標)リーダ60に搬送し、これを用いてワーク表面に貼付されたQRコード(登録商標)を読み取る。制御部154は、QRコード(登録商標)による記録より収容すべきコンテナ80の区画81を決定する。 In step S124, the control unit 154 conveys the work 91 to the QR code (registered trademark) reader 60, and uses this to read the QR code (registered trademark) attached to the surface of the work. The control unit 154 determines the compartment 81 of the container 80 to be accommodated from the record by the QR code (registered trademark).

ステップS126にて、制御部154は、ワーク91を目的の区画81に搬送する。 In step S126, the control unit 154 conveys the work 91 to the target section 81.

ステップS128にて、制御部154は、吸着パッド135をオフしてワーク91を区画81内にプレイスする。 In step S128, the control unit 154 turns off the suction pad 135 and places the work 91 in the compartment 81.

制御部154は、ステップS102に戻り、上記のステップを繰り返す。制御部154は、コンテナ70内のすべてのワークをコンテナ80に搬送し、ステップS106においてコンテナ70内にワークが確認できなくなることで、フローを終了する。 The control unit 154 returns to step S102 and repeats the above steps. The control unit 154 transports all the works in the container 70 to the container 80, and ends the flow when the works cannot be confirmed in the container 70 in step S106.

なお、上記のピッキング方法のフローに先立って、学習部153により、ワークを特定済みの正解画像を用いて機械学習モデルを生成する。ただし、解析部152は、機械学習ではなくルールベースによる画像認識の方法により画像に基づいてワークを特定するものでもよい。 Prior to the flow of the picking method described above, the learning unit 153 generates a machine learning model using the correct image in which the work has been specified. However, the analysis unit 152 may specify the work based on the image by a rule-based image recognition method instead of machine learning.

以上説明したように、本実施形態に係るピッキングシステム100は、ワークを撮影して画像及び深度マップを得る撮像部151、画像に基づいてワークを特定し、深度マップのうちの特定したワークに対応するワーク部分に基づいてワークの位置及び向きを決定する解析部152、及びワークの位置及び向きに基づいてロボットアーム120を駆動制御する制御部154を備える。解析部152により、画像認識によりワークを特定し、深度マップのうちの特定したワークに対応する部分に基づいてワークの位置及び向きを決定し、制御部154によりロボットアーム120を制御して、ワークの向きに合わせてその位置に駆動することで、不定形なワークであっても、これをロボットアーム120により安定にピッキングすることが可能となる。 As described above, the picking system 100 according to the present embodiment corresponds to the imaging unit 151 that captures the work and obtains an image and a depth map, specifies the work based on the image, and corresponds to the specified work in the depth map. It includes an analysis unit 152 that determines the position and orientation of the work based on the work portion, and a control unit 154 that drives and controls the robot arm 120 based on the position and orientation of the work. The analysis unit 152 identifies the work by image recognition, determines the position and orientation of the work based on the portion of the depth map corresponding to the specified work, and controls the robot arm 120 by the control unit 154 to control the work. By driving the work to that position in accordance with the direction of the robot arm 120, even an irregular workpiece can be stably picked by the robot arm 120.

なお、本実施形態に係るピッキングシステム100において、ワークを保持するロボットハンド130に吸着パッド135を使用したが、これに限らずワークの上部を挟持する構成のハンドを使用してもよい。 In the picking system 100 according to the present embodiment, the suction pad 135 is used for the robot hand 130 for holding the work, but the present invention is not limited to this, and a hand having a configuration for sandwiching the upper part of the work may be used.

また、本実施形態に係るピッキングシステム100では、制御装置150が学習部153を具備する構成としたが、制御装置150の構成はこれに限定されるものではない。制御装置150は解析部152がワークを特定できるものであればよく、予め学習済みの機械学習モデルを記憶しておくものでもよい。この場合、制御装置150は学習部153を具備しない構成となる。また、学習部153が別の装置として存在し、ネットワークを介して接続されている構成でも良い。 Further, in the picking system 100 according to the present embodiment, the control device 150 is configured to include the learning unit 153, but the configuration of the control device 150 is not limited to this. The control device 150 may be a device that stores a machine learning model that has been learned in advance, as long as the analysis unit 152 can identify the work. In this case, the control device 150 does not include the learning unit 153. Further, the learning unit 153 may exist as another device and may be connected via a network.

本発明の様々な実施形態は、フローチャートおよびブロック図を参照して記載されてよく、ここにおいてブロックは、(1)操作が実行されるプロセスの段階または(2)操作を実行する役割を持つ装置のセクションを表わしてよい。特定の段階およびセクションが、専用回路、コンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプログラマブル回路、および/またはコンピュータ可読媒体上に格納されるコンピュータ可読命令と共に供給されるプロセッサによって実装されてよい。専用回路は、デジタルおよび/またはアナログハードウェア回路を含んでよく、集積回路(IC)および/またはディスクリート回路を含んでよい。プログラマブル回路は、論理AND、論理OR、論理XOR、論理NAND、論理NOR、および他の論理操作、フリップフロップ、レジスタ、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックアレイ(PLA)等のようなメモリ要素等を含む、再構成可能なハードウェア回路を含んでよい。 Various embodiments of the present invention may be described with reference to flowcharts and block diagrams, wherein the block is (1) a stage of the process in which the operation is performed or (2) a device responsible for performing the operation. May represent a section of. Specific stages and sections are implemented by dedicated circuits, programmable circuits supplied with computer-readable instructions stored on a computer-readable medium, and / or processors supplied with computer-readable instructions stored on a computer-readable medium. You can. Dedicated circuits may include digital and / or analog hardware circuits, and may include integrated circuits (ICs) and / or discrete circuits. Programmable circuits are memory elements such as logical AND, logical OR, logical XOR, logical NAND, logical NOR, and other logical operations, flip-flops, registers, field programmable gate arrays (FPGA), programmable logic arrays (PLA), etc. May include reconfigurable hardware circuits, including, etc.

コンピュータ可読媒体は、適切なデバイスによって実行される命令を格納可能な任意の有形なデバイスを含んでよく、その結果、そこに格納される命令を有するコンピュータ可読媒体は、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく実行され得る命令を含む、製品を備えることになる。コンピュータ可読媒体の例としては、電子記憶媒体、磁気記憶媒体、光記憶媒体、電磁記憶媒体、半導体記憶媒体等が含まれてよい。コンピュータ可読媒体のより具体的な例としては、フロッピー(登録商標)ディスク、ディスケット、ハードディスク、ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、消去可能プログラマブルリードオンリメモリ(EPROMまたはフラッシュメモリ)、電気的消去可能プログラマブルリードオンリメモリ(EEPROM)、静的ランダムアクセスメモリ(SRAM)、コンパクトディスクリードオンリメモリ(CD−ROM)、デジタル多用途ディスク(DVD)、ブルーレイ(RTM)ディスク、メモリスティック、集積回路カード等が含まれてよい。 The computer readable medium may include any tangible device capable of storing instructions executed by the appropriate device, so that the computer readable medium having the instructions stored therein is specified in a flowchart or block diagram. It will be equipped with a product that contains instructions that can be executed to create means for performing the operation. Examples of computer-readable media may include electronic storage media, magnetic storage media, optical storage media, electromagnetic storage media, semiconductor storage media, and the like. More specific examples of computer-readable media include floppy (registered trademark) disks, diskettes, hard disks, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), Electrically erasable programmable read-only memory (EEPROM), static random access memory (SRAM), compact disc read-only memory (CD-ROM), digital versatile disc (DVD), Blu-ray (RTM) disc, memory stick, integrated A circuit card or the like may be included.

コンピュータ可読命令は、アセンブラ命令、命令セットアーキテクチャ(ISA)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、またはSmalltalk、JAVA(登録商標)、C++等のようなオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語のような従来の手続型プログラミング言語を含む、1または複数のプログラミング言語の任意の組み合わせで記述されたソースコードまたはオブジェクトコードのいずれかを含んでよい。 Computer-readable instructions are assembler instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state-setting data, or object-oriented programming such as Smalltalk, JAVA®, C ++, etc. Contains either source code or object code written in any combination of one or more programming languages, including languages and traditional procedural programming languages such as the "C" programming language or similar programming languages. good.

コンピュータ可読命令は、汎用コンピュータ、特殊目的のコンピュータ、若しくは他のプログラム可能なデータ処理装置のプロセッサまたはプログラマブル回路に対し、ローカルにまたはローカルエリアネットワーク(LAN)、インターネット等のようなワイドエリアネットワーク(WAN)を介して提供され、フローチャートまたはブロック図で指定された操作を実行するための手段を作成すべく、コンピュータ可読命令を実行してよい。プロセッサの例としては、コンピュータプロセッサ、処理ユニット、マイクロプロセッサ、デジタル信号プロセッサ、コントローラ、マイクロコントローラ等を含む。 Computer-readable instructions are applied locally to a general purpose computer, a special purpose computer, or the processor or programmable circuit of another programmable data processing unit, or to a wide area network (WAN) such as the local area network (LAN), the Internet, etc. ) May be executed to create a means for performing the operation specified in the flowchart or block diagram. Examples of processors include computer processors, processing units, microprocessors, digital signal processors, controllers, microcontrollers and the like.

図8は、本発明の複数の態様が全体的または部分的に具現化されてよいコンピュータ2200の例を示す。コンピュータ2200にインストールされたプログラムは、コンピュータ2200に、本発明の実施形態に係る装置に関連付けられる操作または当該装置の1または複数のセクションとして機能させることができ、または当該操作または当該1または複数のセクションを実行させることができ、および/またはコンピュータ2200に、本発明の実施形態に係るプロセスまたは当該プロセスの段階を実行させることができる。そのようなプログラムは、コンピュータ2200に、本明細書に記載のフローチャートおよびブロック図のブロックのうちのいくつかまたはすべてに関連付けられた特定の操作を実行させるべく、CPU2212によって実行されてよい。 FIG. 8 shows an example of a computer 2200 in which a plurality of aspects of the present invention may be embodied in whole or in part. The program installed on the computer 2200 can cause the computer 2200 to function as an operation associated with the device according to an embodiment of the present invention or as one or more sections of the device, or the operation or the one or more. Sections can be run and / or the computer 2200 can be run a process according to an embodiment of the invention or a stage of such process. Such a program may be run by the CPU 2212 to cause the computer 2200 to perform certain operations associated with some or all of the blocks in the flowcharts and block diagrams described herein.

本実施形態によるコンピュータ2200は、CPU2212、RAM2214、グラフィックコントローラ2216、およびディスプレイデバイス2218を含み、それらはホストコントローラ2210によって相互に接続されている。コンピュータ2200はまた、通信インタフェース2222、ハードディスクドライブ2224、DVD−ROMドライブ2226、およびICカードドライブのような入/出力ユニットを含み、それらは入/出力コントローラ2220を介してホストコントローラ2210に接続されている。コンピュータはまた、ROM2230およびキーボード2242のようなレガシの入/出力ユニットを含み、それらは入/出力チップ2240を介して入/出力コントローラ2220に接続されている。 The computer 2200 according to this embodiment includes a CPU 2212, a RAM 2214, a graphic controller 2216, and a display device 2218, which are interconnected by a host controller 2210. The computer 2200 also includes input / output units such as a communication interface 2222, a hard disk drive 2224, a DVD-ROM drive 2226, and an IC card drive, which are connected to the host controller 2210 via the input / output controller 2220. There is. The computer also includes legacy input / output units such as the ROM 2230 and keyboard 2242, which are connected to the input / output controller 2220 via an input / output chip 2240.

CPU2212は、ROM2230およびRAM2214内に格納されたプログラムに従い動作し、それにより各ユニットを制御する。グラフィックコントローラ2216は、RAM2214内に提供されるフレームバッファ等またはそれ自体の中にCPU2212によって生成されたイメージデータを取得し、イメージデータがディスプレイデバイス2218上に表示されるようにする。 The CPU 2212 operates according to the programs stored in the ROM 2230 and the RAM 2214, thereby controlling each unit. The graphic controller 2216 acquires the image data generated by the CPU 2212 in a frame buffer or the like provided in the RAM 2214 or itself so that the image data is displayed on the display device 2218.

通信インタフェース2222は、ネットワークを介して他の電子デバイスと通信する。ハードディスクドライブ2224は、コンピュータ2200内のCPU2212によって使用されるプログラムおよびデータを格納する。DVD−ROMドライブ2226は、プログラムまたはデータをDVD−ROM2201から読み取り、ハードディスクドライブ2224にRAM2214を介してプログラムまたはデータを提供する。ICカードドライブは、プログラムおよびデータをICカードから読み取り、および/またはプログラムおよびデータをICカードに書き込む。 The communication interface 2222 communicates with other electronic devices via the network. The hard disk drive 2224 stores programs and data used by the CPU 2212 in the computer 2200. The DVD-ROM drive 2226 reads the program or data from the DVD-ROM 2201 and provides the program or data to the hard disk drive 2224 via the RAM 2214. The IC card drive reads programs and data from the IC card and / or writes programs and data to the IC card.

ROM2230はその中に、アクティブ化時にコンピュータ2200によって実行されるブートプログラム等、および/またはコンピュータ2200のハードウェアに依存するプログラムを格納する。入/出力チップ2240はまた、様々な入/出力ユニットをパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して、入/出力コントローラ2220に接続してよい。 The ROM 2230 contains a boot program or the like executed by the computer 2200 at the time of activation, and / or a program depending on the hardware of the computer 2200. The input / output chip 2240 may also connect various input / output units to the input / output controller 2220 via a parallel port, serial port, keyboard port, mouse port, and the like.

プログラムが、DVD−ROM2201またはICカードのようなコンピュータ可読媒体によって提供される。プログラムは、コンピュータ可読媒体から読み取られ、コンピュータ可読媒体の例でもあるハードディスクドライブ2224、RAM2214、またはROM2230にインストールされ、CPU2212によって実行される。これらのプログラム内に記述される情報処理は、コンピュータ2200に読み取られ、プログラムと、上記様々なタイプのハードウェアリソースとの間の連携をもたらす。装置または方法が、コンピュータ2200の使用に従い情報の操作または処理を実現することによって構成されてよい。 The program is provided by a computer-readable medium such as a DVD-ROM 2201 or an IC card. The program is read from a computer-readable medium, installed on a hard disk drive 2224, RAM 2214, or ROM 2230, which is also an example of a computer-readable medium, and executed by the CPU 2212. The information processing described in these programs is read by the computer 2200 and provides a link between the program and the various types of hardware resources described above. The device or method may be configured to perform manipulation or processing of information in accordance with the use of computer 2200.

例えば、通信がコンピュータ2200および外部デバイス間で実行される場合、CPU2212は、RAM2214にロードされた通信プログラムを実行し、通信プログラムに記述された処理に基づいて、通信インタフェース2222に対し、通信処理を命令してよい。通信インタフェース2222は、CPU2212の制御下、RAM2214、ハードディスクドライブ2224、DVD−ROM2201、またはICカードのような記録媒体内に提供される送信バッファ処理領域に格納された送信データを読み取り、読み取られた送信データをネットワークに送信し、またはネットワークから受信された受信データを記録媒体上に提供される受信バッファ処理領域等に書き込む。 For example, when communication is executed between the computer 2200 and an external device, the CPU 2212 executes a communication program loaded in the RAM 2214, and performs communication processing on the communication interface 2222 based on the processing described in the communication program. You may order. Under the control of the CPU 2212, the communication interface 2222 reads and reads transmission data stored in a transmission buffer processing area provided in a recording medium such as a RAM 2214, a hard disk drive 2224, a DVD-ROM 2201, or an IC card. The data is transmitted to the network, or the received data received from the network is written to the reception buffer processing area or the like provided on the recording medium.

また、CPU2212は、ハードディスクドライブ2224、DVD−ROMドライブ2226(DVD−ROM2201)、ICカード等のような外部記録媒体に格納されたファイルまたはデータベースの全部または必要な部分がRAM2214に読み取られるようにし、RAM2214上のデータに対し様々なタイプの処理を実行してよい。CPU2212は次に、処理されたデータを外部記録媒体にライトバックする。 Further, the CPU 2212 causes the RAM 2214 to read all or necessary parts of a file or database stored in an external recording medium such as a hard disk drive 2224, a DVD-ROM drive 2226 (DVD-ROM2201), or an IC card. Various types of processing may be performed on the data on the RAM 2214. The CPU 2212 then writes back the processed data to an external recording medium.

様々なタイプのプログラム、データ、テーブル、およびデータベースのような様々なタイプの情報が記録媒体に格納され、情報処理を受けてよい。CPU2212は、RAM2214から読み取られたデータに対し、本開示の随所に記載され、プログラムの命令シーケンスによって指定される様々なタイプの操作、情報処理、条件判断、条件分岐、無条件分岐、情報の検索/置換等を含む、様々なタイプの処理を実行してよく、結果をRAM2214に対しライトバックする。また、CPU2212は、記録媒体内のファイル、データベース等における情報を検索してよい。例えば、各々が第2の属性の属性値に関連付けられた第1の属性の属性値を有する複数のエントリが記録媒体内に格納される場合、CPU2212は、第1の属性の属性値が指定される、条件に一致するエントリを当該複数のエントリの中から検索し、当該エントリ内に格納された第2の属性の属性値を読み取り、それにより予め定められた条件を満たす第1の属性に関連付けられた第2の属性の属性値を取得してよい。 Various types of information, such as various types of programs, data, tables, and databases, may be stored on the recording medium and processed. The CPU 2212 describes various types of operations, information processing, conditional judgment, conditional branching, unconditional branching, and information retrieval described in various parts of the present disclosure with respect to the data read from the RAM 2214. Various types of processing may be performed, including / replacement, etc., and the results are written back to RAM 2214. Further, the CPU 2212 may search for information in a file, a database, or the like in the recording medium. For example, when a plurality of entries each having an attribute value of the first attribute associated with the attribute value of the second attribute are stored in the recording medium, the CPU 2212 specifies the attribute value of the first attribute. Search for an entry that matches the condition from the plurality of entries, read the attribute value of the second attribute stored in the entry, and associate it with the first attribute that satisfies the predetermined condition. The attribute value of the second attribute obtained may be acquired.

上で説明したプログラムまたはソフトウェアモジュールは、コンピュータ2200上またはコンピュータ2200近傍のコンピュータ可読媒体に格納されてよい。また、専用通信ネットワークまたはインターネットに接続されたサーバーシステム内に提供されるハードディスクまたはRAMのような記録媒体が、コンピュータ可読媒体として使用可能であり、それによりプログラムを、ネットワークを介してコンピュータ2200に提供する。 The program or software module described above may be stored on or near a computer 2200 on a computer-readable medium. Also, a recording medium such as a hard disk or RAM provided in a dedicated communication network or a server system connected to the Internet can be used as a computer readable medium, thereby providing the program to the computer 2200 over the network. do.

以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。 Although the present invention has been described above using the embodiments, the technical scope of the present invention is not limited to the scope described in the above embodiments. It will be apparent to those skilled in the art that various changes or improvements can be made to the above embodiments. It is clear from the description of the claims that such modified or improved forms may also be included in the technical scope of the present invention.

特許請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。特許請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。 The order of execution of operations, procedures, steps, steps, etc. in the devices, systems, programs, and methods shown in the claims, specification, and drawings is particularly "before" and "prior to". It should be noted that it can be realized in any order unless the output of the previous process is used in the subsequent process. Even if the scope of claims, the specification, and the operation flow in the drawings are explained using "first", "next", etc. for convenience, it means that it is essential to carry out in this order. It's not a thing.

60…QRコード(登録商標)リーダ、70,80…コンテナ、71〜74…区画、79…仕切り、80…コンテナ、81…区画、89…仕切り、90〜97…ワーク、91a〜94a…表面、91D…ワーク部分、91P…点群データ、100…ピッキングシステム、101…ロボット、110…本体、111…ベース、120…ロボットアーム、130…ロボットハンド、131…基部、132…シャフト、133…撮像装置、133a…支持部材、134…固定部材、135…吸着パッド、135a…支持部材、140…駆動装置、150…制御装置、151…撮像部、152…解析部、153…学習部、154…制御部、200…ワーク分離装置、210…支持具駆動装置、211…本体、212…テーブル、213…支持具、220…棒状部材、2200…コンピュータ、2201…DVD−ROM、2210…ホストコントローラ、2214…RAM、2216…グラフィックコントローラ、2218…ディスプレイデバイス、2220…入/出力コントローラ、2222…通信インタフェース、2224…ハードディスクドライブ、2226…DVD−ROMドライブ、2240…入/出力チップ、2242…キーボード、P1〜P3…データ点、Pa…吸着点(位置決定点)、S…矩形区域、S〜S…区域、S,S…区画、T…三角区域、Vn…法線ベクトル、Vt…接線ベクトル。 60 ... QR code (registered trademark) reader, 70, 80 ... container, 71-74 ... compartment, 79 ... partition, 80 ... container, 81 ... compartment, 89 ... partition, 90-97 ... work, 91a-94a ... surface, 91D ... Work part, 91P ... Point group data, 100 ... Picking system, 101 ... Robot, 110 ... Main body, 111 ... Base, 120 ... Robot arm, 130 ... Robot hand, 131 ... Base, 132 ... Shaft, 133 ... Imaging device , 133a ... Support member, 134 ... Fixing member, 135 ... Suction pad, 135a ... Support member, 140 ... Drive device, 150 ... Control device, 151 ... Imaging unit, 152 ... Analysis unit, 153 ... Learning unit, 154 ... Control unit , 200 ... Work separation device, 210 ... Support drive device, 211 ... Main body, 212 ... Table, 213 ... Support, 220 ... Rod-shaped member, 2200 ... Computer, 2201 ... DVD-ROM, 2210 ... Host controller, 2214 ... RAM , 2216 ... Graphic controller, 2218 ... Display device, 2220 ... Input / output controller, 2222 ... Communication interface, 2224 ... Hard disk drive, 2226 ... DVD-ROM drive, 2240 ... Input / output chip, 2242 ... Keyboard, P1 to P3 ... Data point, Pa ... adsorption point (position determination point), S ... rectangular area, S 1 to S 9 ... area, S a , S b ... section, T ... triangular area, Vn ... normal vector, Vt ... tangent vector.

Claims (18)

ワークをピッキングするピッキングシステムであって、
ワークを撮影して画像及び深度マップを得る撮像部と、
前記画像に基づいて前記ワークを特定し、前記深度マップのうちの前記特定したワークに対応するワーク部分に基づいて前記ワークの位置及び向きを決定する解析部であり、前記ワーク部分を複数の区画に分割し、互いに隣接しない3つの区画を選択し、前記3つの区画からそれぞれ取得される3つの点により規定される所定値以上の大きさの三角区域を用いて前記ワークの表面の法線ベクトルを算出することで前記向きを決定する、前記解析部と、
前記ワークの位置及び向きに基づいてロボットアームを駆動制御する制御部と、
を備えるピッキングシステム。
It is a picking system that picks workpieces.
An imaging unit that captures a workpiece to obtain an image and a depth map,
It is an analysis unit that identifies the work based on the image and determines the position and orientation of the work based on the work portion corresponding to the specified work in the depth map, and divides the work portion into a plurality of sections. The normal vector of the surface of the work is divided into three sections, which are not adjacent to each other, and a triangular area having a size equal to or larger than a predetermined value defined by three points obtained from each of the three sections is used. The analysis unit and the analysis unit, which determine the orientation by calculating
A control unit that drives and controls the robot arm based on the position and orientation of the work,
A picking system equipped with.
前記解析部は、前記ワーク部分を7以上の区画に分割する、請求項1に記載のピッキングシステム。 The picking system according to claim 1, wherein the analysis unit divides the work portion into seven or more sections. 前記解析部は、前記ワークの表面の法線ベクトルを算出するための点を取得できなかった場合に前記3つの区画を変更する、請求項1又は2に記載のピッキングシステム。 The picking system according to claim 1 or 2, wherein the analysis unit changes the three sections when a point for calculating a normal vector on the surface of the work cannot be obtained. 前記解析部は、前記画像に基づいてワークの表面の領域を解析し、前記撮像部の撮像装置に対して手前側のワークを特定する、請求項1から3のいずれか一項に記載のピッキングシステム。 The picking according to any one of claims 1 to 3, wherein the analysis unit analyzes a region on the surface of the work based on the image and identifies the work on the front side with respect to the imaging device of the imaging unit. system. 前記解析部は、前記撮像部の撮像装置の位置に基づいて前記深度マップを3次元点群に再構成する、請求項1から4のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 4, wherein the analysis unit reconstructs the depth map into a three-dimensional point cloud based on the position of the imaging device of the imaging unit. 前記ワークが袋状容器である、請求項1から5のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 5, wherein the work is a bag-shaped container. 前記解析部は、前記ワークの表面に沿った方向を決定し、該方向に基づいて前記ワーク部分内の位置決定点を決定し、該位置決定点の位置から前記ワークの位置を決定する、請求項1から6のいずれか一項に記載のピッキングシステム。 The analysis unit determines a direction along the surface of the work, determines a position-determining point in the work portion based on the direction, and determines the position of the work from the position of the position-determining point. The picking system according to any one of items 1 to 6. 前記解析部は、ワークを特定済みの正解画像から生成された機械学習モデルを用いて、前記画像に基づいて前記ワークを特定する、請求項1から7のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 7, wherein the analysis unit identifies the work based on the image by using a machine learning model generated from a correct image in which the work has been specified. 前記ロボットアームは少なくとも1つの吸着パッドを有する、請求項1から8のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 8, wherein the robot arm has at least one suction pad. 前記制御部は、前記ロボットアームを駆動制御する際に、前記吸着パッドの向きを前記ワークの向きに合わせる、請求項9に記載のピッキングシステム。 The picking system according to claim 9, wherein the control unit aligns the direction of the suction pad with the direction of the work when driving and controlling the robot arm. 前記ロボットアームは複数の吸着パッドを有し、
前記制御部は、前記複数の吸着パッドのうち前記ワークに吸着した吸着パッドの数に応じて前記ロボットアームの駆動速度を決定する、請求項9又は10に記載のピッキングシステム。
The robot arm has a plurality of suction pads and has a plurality of suction pads.
The picking system according to claim 9 or 10, wherein the control unit determines the driving speed of the robot arm according to the number of suction pads sucked on the work among the plurality of suction pads.
前記ワークの少なくとも上部を一方向に寄せて他のワークから分離するワーク分離装置をさらに備える、請求項1から11のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 11, further comprising a work separating device for moving at least the upper portion of the work in one direction to separate it from another work. 前記撮像部は、前記ロボットアームに取り付けられた撮像装置を用いて前記ワークを撮影する、請求項1から12のいずれか一項に記載のピッキングシステム。 The picking system according to any one of claims 1 to 12, wherein the imaging unit photographs the work using an imaging device attached to the robot arm. ワークをピッキングするピッキングシステムであって、
ワークを撮影して画像及び深度マップを得る撮像部と、
前記画像に基づいて前記ワークを特定し、前記深度マップのうちの前記特定したワークに対応するワーク部分に基づいて前記ワークの位置及び向きを決定する解析部であり、中央の区域の上下方向及び左右方向の幅が最小幅より大きくなるように前記ワーク部分を上下左右に9分割し、互いに隣接しない3つの区域を選択し、前記3つの区域からそれぞれ取得される3つの点を用いて前記ワークの表面の法線ベクトルを算出することで前記向きを決定する、前記解析部と、
前記ワークの位置及び向きに基づいてロボットアームを駆動制御する制御部と、
を備え、
前記撮像部は、前記ロボットアームに取り付けられた撮像装置を用いて前記ワークを撮影する、ピッキングシステム。
It is a picking system that picks workpieces.
An imaging unit that captures a workpiece to obtain an image and a depth map,
Identifying the work based on the image, and an analysis unit for determining the position and orientation of the workpiece on the basis of the work portion corresponding to the specified work of the depth map, the vertical and the central region The work portion is divided into nine parts vertically and horizontally so that the width in the left-right direction is larger than the minimum width, three areas that are not adjacent to each other are selected, and the work is used by using three points obtained from each of the three areas. The analysis unit, which determines the direction by calculating the normal vector of the surface of the
A control unit that drives and controls the robot arm based on the position and orientation of the work,
With
The imaging unit is a picking system that photographs the work using an imaging device attached to the robot arm.
ワークをピッキングするピッキング方法であって、
撮像部により、ワークを撮影して画像及び深度マップを得る段階と、
解析部により、前記画像に基づいて前記ワークを特定し、前記深度マップのうちの前記特定したワークに対応するワーク部分に基づいて前記ワークの位置及び向きを決定する段階であり、前記ワーク部分を複数の区画に分割し、互いに隣接しない3つの区画を選択し、前記3つの区画からそれぞれ取得される3つの点により規定される所定値以上の大きさの三角区域を用いて前記ワークの表面の法線ベクトルを算出することで前記向きを決定する、前記決定する段階と、
制御部により、前記ワークの位置及び向きに基づいてロボットアームを駆動制御する段階と、
を備えるピッキング方法。
It is a picking method for picking a work.
At the stage where the work is photographed by the imaging unit to obtain an image and a depth map,
The analysis unit identifies the work based on the image, and determines the position and orientation of the work based on the work portion corresponding to the specified work in the depth map. Divide into a plurality of sections, select three sections that are not adjacent to each other, and use a triangular area having a size equal to or larger than a predetermined value defined by three points obtained from each of the three sections on the surface of the work. The step of determining the direction by calculating the normal vector, and the step of determining the direction,
A stage in which the control unit drives and controls the robot arm based on the position and orientation of the work, and
A picking method that includes.
ワークをピッキングするピッキング方法であって、
撮像部により、ワークを撮影して画像及び深度マップを得る段階と、
解析部により、前記画像に基づいて前記ワークを特定し、前記深度マップのうちの前記特定したワークに対応するワーク部分に基づいて前記ワークの位置及び向きを決定する段階であり、中央の区域の上下方向及び左右方向の幅が最小幅より大きくなるように前記ワーク部分を上下左右に9分割し、互いに隣接しない3つの区域を選択し、前記3つの区域からそれぞれ取得される3つの点を用いて前記ワークの表面の法線ベクトルを算出することで前記向きを決定する、前記決定する段階と、
制御部により、前記ワークの位置及び向きに基づいてロボットアームを駆動制御する段階と、
を備えるピッキング方法。
It is a picking method for picking a work.
At the stage where the work is photographed by the imaging unit to obtain an image and a depth map,
The analysis unit identifies the work based on the image, and determines the position and orientation of the work based on the work portion corresponding to the specified work in the depth map . The work portion is divided into nine parts vertically and horizontally so that the widths in the vertical and horizontal directions are larger than the minimum width , three areas that are not adjacent to each other are selected, and three points obtained from each of the three areas are used. The direction is determined by calculating the normal vector of the surface of the work, and the determination step and
A stage in which the control unit drives and controls the robot arm based on the position and orientation of the work, and
A picking method that includes.
前記ワークが袋状容器である、
請求項16に記載のピッキング方法。
The work is a bag-shaped container,
The picking method according to claim 16.
請求項16又は17に記載のピッキング方法をコンピュータに実行させるプログラム。

A program that causes a computer to execute the picking method according to claim 16 or 17.

JP2019218349A 2019-12-02 2019-12-02 Picking system, picking method, and program Active JP6924448B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019218349A JP6924448B2 (en) 2019-12-02 2019-12-02 Picking system, picking method, and program
PCT/JP2020/043700 WO2021111929A1 (en) 2019-12-02 2020-11-24 Picking system, picking method, and program
JP2021107914A JP2021151699A (en) 2019-12-02 2021-06-29 Picking system, picking method, and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019218349A JP6924448B2 (en) 2019-12-02 2019-12-02 Picking system, picking method, and program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021107914A Division JP2021151699A (en) 2019-12-02 2021-06-29 Picking system, picking method, and program

Publications (2)

Publication Number Publication Date
JP2021088011A JP2021088011A (en) 2021-06-10
JP6924448B2 true JP6924448B2 (en) 2021-08-25

Family

ID=76218927

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019218349A Active JP6924448B2 (en) 2019-12-02 2019-12-02 Picking system, picking method, and program
JP2021107914A Pending JP2021151699A (en) 2019-12-02 2021-06-29 Picking system, picking method, and program

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2021107914A Pending JP2021151699A (en) 2019-12-02 2021-06-29 Picking system, picking method, and program

Country Status (2)

Country Link
JP (2) JP6924448B2 (en)
WO (1) WO2021111929A1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20230286165A1 (en) * 2022-03-08 2023-09-14 Mujin, Inc. Systems and methods for robotic system with object handling
WO2024004746A1 (en) * 2022-07-01 2024-01-04 ソニーセミコンダクタソリューションズ株式会社 System and program

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4962123B2 (en) * 2007-04-27 2012-06-27 日産自動車株式会社 Gripping candidate position selection device, gripping candidate position selection method, gripping route generation device, and gripping route generation method
JP5429614B2 (en) * 2009-04-16 2014-02-26 株式会社Ihi Box-shaped workpiece recognition apparatus and method
JP2011167815A (en) * 2010-02-19 2011-09-01 Ihi Corp Object recognizing robot system
JP6522488B2 (en) * 2015-07-31 2019-05-29 ファナック株式会社 Machine learning apparatus, robot system and machine learning method for learning work taking-out operation
JP2017042859A (en) * 2015-08-25 2017-03-02 キヤノン株式会社 Picking system, and processing device and method therefor and program
JP6450788B2 (en) * 2017-02-21 2019-01-09 ファナック株式会社 Work removal system
JP7117126B2 (en) * 2018-04-02 2022-08-12 Kyoto Robotics株式会社 Picking device and method

Also Published As

Publication number Publication date
JP2021151699A (en) 2021-09-30
WO2021111929A1 (en) 2021-06-10
JP2021088011A (en) 2021-06-10

Similar Documents

Publication Publication Date Title
US11400598B2 (en) Information processing apparatus, method, and robot system
WO2021111929A1 (en) Picking system, picking method, and program
KR102216498B1 (en) A method for tracking the placement of products on a store's shelf
US20180231973A1 (en) System and Methods for a Virtual Reality Showroom with Autonomous Storage and Retrieval
US20210012524A1 (en) Learning dataset creation method and device
US20230286750A1 (en) Method and device for storing goods, robot, warehousing system and storage medium
US20200311956A1 (en) Automated Manipulation Of Transparent Vessels
US10625941B2 (en) Distributed autonomous robot systems and methods
WO2019060125A1 (en) Three-dimensional bounding box from two-dimensional image and point cloud data
US11928594B2 (en) Systems and methods for creating training data
JP2019509559A (en) Box location, separation, and picking using a sensor-guided robot
US20190332096A1 (en) Techniques for conveyance device control
CN113574553A (en) Robot-assisted person routing
JP2020197978A (en) Object detection device, object gripping system, object detection method, and object detection program
EP3617936B1 (en) Transport system, control method and program
JP2021146452A (en) Handling device, control device, and control program
US11189053B2 (en) Information processing apparatus, method of controlling information processing apparatus, and non-transitory computer-readable storage medium
JP2022160363A (en) Robot system, control method, image processing apparatus, image processing method, method of manufacturing products, program, and recording medium
CN114454168A (en) Dynamic vision mechanical arm grabbing method and system and electronic equipment
US11069081B1 (en) Location discovery
US20220203547A1 (en) System and method for improving automated robotic picking via pick planning and interventional assistance
US20220128347A1 (en) System and method to measure object dimension using stereo vision
KR102303521B1 (en) Vibration damping method of multi-unloading manipulator for cargo
US11679944B2 (en) Article picking system
US20240066723A1 (en) Automatic bin detection for robotic applications

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200817

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200818

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20201112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201117

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210115

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20210406

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210629

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20210629

C876 Explanation why request for accelerated appeal examination is justified

Free format text: JAPANESE INTERMEDIATE CODE: C876

Effective date: 20210629

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20210707

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20210713

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: 20210715

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210720

R150 Certificate of patent or registration of utility model

Ref document number: 6924448

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350