JP2021020266A - Device and method for determining action of robot, and program - Google Patents
Device and method for determining action of robot, and program Download PDFInfo
- Publication number
- JP2021020266A JP2021020266A JP2019137588A JP2019137588A JP2021020266A JP 2021020266 A JP2021020266 A JP 2021020266A JP 2019137588 A JP2019137588 A JP 2019137588A JP 2019137588 A JP2019137588 A JP 2019137588A JP 2021020266 A JP2021020266 A JP 2021020266A
- Authority
- JP
- Japan
- Prior art keywords
- container
- wall surface
- definition information
- region
- regions
- 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
Links
- 238000000034 method Methods 0.000 title claims description 61
- 230000009471 action Effects 0.000 title abstract description 8
- 239000012636 effector Substances 0.000 claims abstract description 55
- 238000003384 imaging method Methods 0.000 claims abstract description 22
- 230000033001 locomotion Effects 0.000 claims description 94
- 238000001514 detection method Methods 0.000 claims description 67
- 210000000078 claw Anatomy 0.000 claims description 28
- 238000013519 translation Methods 0.000 claims description 25
- 238000012545 processing Methods 0.000 abstract description 72
- 238000004364 calculation method Methods 0.000 abstract description 13
- 238000005259 measurement Methods 0.000 description 34
- 238000010586 diagram Methods 0.000 description 16
- 238000012986 modification Methods 0.000 description 12
- 230000004048 modification Effects 0.000 description 12
- 238000013459 approach Methods 0.000 description 10
- 238000011960 computer-aided design Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 230000000007 visual effect Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000010363 phase shift Effects 0.000 description 3
- 239000004065 semiconductor Substances 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 229910052736 halogen Inorganic materials 0.000 description 1
- 150000002367 halogens Chemical class 0.000 description 1
- 238000005286 illumination Methods 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Images
Landscapes
- Manipulator (AREA)
Abstract
Description
本技術は、ロボットの動作を決定する装置、方法およびプログラムに関する。 The present technology relates to devices, methods and programs that determine the movement of a robot.
従来、視覚センサを用いて、容器の中に収容された対象物を把持して取り出すピッキング動作を行なうロボットが知られている。容器の壁面近傍に位置する対象物に対するピッキング動作の際に、対象物が容器に接触し、対象物がロボットから落下する可能性がある。 Conventionally, there is known a robot that uses a visual sensor to perform a picking operation of grasping and taking out an object contained in a container. During the picking operation for an object located near the wall surface of the container, the object may come into contact with the container and the object may fall from the robot.
特開2012−106335(特許文献1)には、ロボットアームと、ロボットアームの移動の障害となる障害物との間の干渉チェックを行ない、干渉を免れた有効な移動経路のみを抽出した有効移動経路網を作成する技術が開示されている。当該技術を用いることにより、対象物と容器との接触を防止できる。 According to Japanese Patent Application Laid-Open No. 2012-106335 (Patent Document 1), an interference check is performed between a robot arm and an obstacle that hinders the movement of the robot arm, and only an effective movement path that avoids interference is extracted. A technique for creating a route network is disclosed. By using this technology, it is possible to prevent contact between the object and the container.
しかしながら、特許文献1に記載の技術では、ロボットアームと障害物との干渉チェックのために複雑な演算が実行される。そのため、移動経路を生成するための計算コストが増加する。
However, in the technique described in
本発明は、上記の問題に鑑みてなされたものであり、その目的は、計算コストの増加を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる装置、方法およびプログラムを提供することである。 The present invention has been made in view of the above problems, and an object of the present invention is a device, method and program capable of determining the operation of a robot that picks an object contained in a container while suppressing an increase in calculation cost. Is to provide.
本開示の一例によれば、容器に収容された対象物をピッキングするロボットの動作を決定する装置は、領域設定部と、情報設定部と、検出部と、決定部とを備える。領域設定部は、容器内の空間において、互いに排他的な関係にある複数の領域を設定する。情報設定部は、複数の領域の各々と対応付けて、ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定する。検出部は、容器を撮像することにより得られた画像に基づいて、対象物の位置を検出する。決定部は、対象物を保持してから対象物を容器外に搬送するまでのエンドエフェクタのピッキング動作を決定する。決定部は、複数の領域のうち検出部によって検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作をピッキング動作の並進成分として決定する。 According to an example of the present disclosure, a device that determines the operation of a robot that picks an object housed in a container includes an area setting unit, an information setting unit, a detection unit, and a determination unit. The area setting unit sets a plurality of areas having an exclusive relationship with each other in the space inside the container. The information setting unit sets definition information that defines the translational operation of the end effector possessed by the robot in association with each of the plurality of areas. The detection unit detects the position of the object based on the image obtained by imaging the container. The determination unit determines the picking operation of the end effector from holding the object to transporting the object out of the container. The determination unit determines the translation operation defined by the definition information associated with the area including the position detected by the detection unit among the plurality of areas as the translation component of the picking operation.
この開示によれば、装置は、複雑な計算を行なうことなく、予め設定した定義情報を用いて、対象物に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 According to this disclosure, the apparatus can easily determine the translational component of the picking operation with respect to the object by using the preset definition information without performing complicated calculation. As a result, it is possible to determine the operation of the robot that picks the object contained in the container while suppressing the increase in the calculation cost.
上述の開示において、複数の領域は、容器内における第1対象壁面に隣接する第1領域と、第1領域よりも第1対象壁面から離れた位置の第2領域とを含む。 In the above disclosure, the plurality of regions include a first region adjacent to the first target wall surface in the container and a second region located farther from the first target wall surface than the first region.
この開示によれば、第1領域と第2領域とのそれぞれについて、ピッキング動作の並進成分を決定するための定義情報を別個に設定できる。すなわち、第1領域および第2領域の各々について、当該領域に適した並進動作を定義する定義情報を設定することができる。 According to this disclosure, definition information for determining the translational component of the picking operation can be set separately for each of the first region and the second region. That is, for each of the first region and the second region, definition information that defines the translational motion suitable for the region can be set.
上述の開示において、領域設定部は、第1対象壁面からの距離情報を用いて第1領域および第2領域を設定する。この開示によれば、第1領域および第2領域を容易に設定できる。 In the above disclosure, the area setting unit sets the first area and the second area by using the distance information from the first target wall surface. According to this disclosure, the first region and the second region can be easily set.
例えば、第1領域に対応付けられた第1定義情報は、第1対象壁面から遠ざかる第1方向を示す。第1定義情報によって定義される並進動作は、起点に対する終点の方向が第1方向に一致する動作である。 For example, the first definition information associated with the first region indicates a first direction away from the first target wall surface. The translational motion defined by the first definition information is an motion in which the direction of the end point with respect to the start point coincides with the first direction.
あるいは、第1領域に対応付けられた第1定義情報は、対象物が通過すべき指定位置を指定するための情報であってもよい。第1定義情報によって定義される並進動作は、検出された位置と指定位置とを通る直線または曲線に沿った動作である。 Alternatively, the first definition information associated with the first region may be information for designating a designated position through which the object should pass. The translational motion defined by the first definition information is an motion along a straight line or a curve passing through the detected position and the designated position.
これらの開示によれば、第1定義情報で示される方向または指定位置に従って、ピッキング動作の並進成分が決定される。 According to these disclosures, the translational component of the picking operation is determined according to the direction or the designated position indicated by the first definition information.
上述の開示において、指定位置は、検出された位置に応じて指定される。この開示によれば、検出された位置に適した指定位置を指定することができる。 In the above disclosure, the designated position is designated according to the detected position. According to this disclosure, a designated position suitable for the detected position can be specified.
上述の開示において、第1領域は、第1対象壁面から第1距離以内である。指定位置は、第1対象壁面の上端から第1対象壁面の法線方向に沿って第2距離だけ離れた位置であってもよい。第2距離は第1距離以上である。 In the above disclosure, the first region is within a first distance from the first target wall surface. The designated position may be a position separated by a second distance from the upper end of the first target wall surface along the normal direction of the first target wall surface. The second distance is greater than or equal to the first distance.
上述の開示において、第2領域に対応付けられた第2定義情報は、例えば、第1対象壁面および容器の底面に直交する平面上において第1対象壁面に平行な上向きの方向、底面の法線方向、鉛直方向上向き、および、これらの方向のいずれかに対して第1対象壁面から離れるように傾斜した方向、のいずれかである第2方向を示す。第2定義情報によって定義される並進動作は、第2方向に沿った動作である。 In the above disclosure, the second definition information associated with the second region is, for example, an upward direction parallel to the first target wall surface and a normal bottom surface on a plane orthogonal to the first target wall surface and the bottom surface of the container. A second direction is indicated, which is one of a direction, a vertical direction upward, and a direction inclined away from the first target wall surface with respect to any of these directions. The translational motion defined by the second definition information is an motion along the second direction.
第2領域は、第1対象壁面から離れた位置にある。そのため、上記の第2方向に沿ったピッキング動作を行なっても、第1対象壁面と対象物との接触リスクが低い。 The second region is located away from the first target wall surface. Therefore, even if the picking operation is performed along the second direction, the risk of contact between the first target wall surface and the target object is low.
上述の開示において、容器は、水平面に対して傾斜している。領域設定部は、容器の水平面に対する傾斜方向および傾斜角度に応じて複数の領域の少なくとも1つのサイズを調整する。この開示によれば、傾斜に応じて領域のサイズが適宜自動的に調整される。これにより、ユーザの手間を削減できる。 In the above disclosure, the container is tilted with respect to the horizontal plane. The region setting unit adjusts the size of at least one of the plurality of regions according to the tilt direction and tilt angle of the container with respect to the horizontal plane. According to this disclosure, the size of the region is automatically adjusted as appropriate according to the inclination. As a result, the time and effort of the user can be reduced.
上述の開示において、領域設定部は、エンドエフェクタによる対象物の保持位置と対象物の表面上の点との最大距離以上の第1距離を設定し、第1対象壁面から第1距離以内の領域を第1領域として設定する。 In the above disclosure, the area setting unit sets a first distance equal to or greater than the maximum distance between the holding position of the object by the end effector and the point on the surface of the object, and the area within the first distance from the first object wall surface. Is set as the first area.
あるいは、エンドエフェクタは、複数の爪を有する。なお、「爪」は、対象物を保持(把持)する際に、対象物に接触する部位であり、「指」とも称される。領域設定部は、複数の爪による対象物の保持位置の中心点と、対象物に外接する直方体または対象物および対象物を保持する複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、第1対象壁面から第1距離以内の領域を第1領域として設定してもよい。 Alternatively, the end effector has multiple claws. The "claw" is a portion that comes into contact with the object when holding (grasping) the object, and is also referred to as a "finger". The area setting unit is the maximum distance between the center point of the holding position of the object by the plurality of claws and the point on the surface of the rectangular parallelepiped circumscribing the object or the rectangular parallelepiped circumscribing the object and the plurality of claws holding the object. The above first distance may be set, and a region within the first distance from the first target wall surface may be set as the first region.
これらの開示によれば、第1領域の範囲が自動的に設定される。その結果、ユーザの手間を削減できる。 According to these disclosures, the range of the first region is automatically set. As a result, the user's labor can be reduced.
上述の開示において、検出部は、対象物の姿勢をさらに検出する。決定部は、検出部によって検出された姿勢に基づいて、対象物と容器内における第2対象壁面との最短距離が長くなるようにピッキング動作の回転成分をさらに決定する。 In the above disclosure, the detection unit further detects the posture of the object. Based on the posture detected by the detection unit, the determination unit further determines the rotation component of the picking operation so that the shortest distance between the object and the second target wall surface in the container becomes long.
この開示によれば、ピッキング動作における回転動作によって、第2対象壁面と対象物との接触リスクを低減できる。 According to this disclosure, the risk of contact between the second target wall surface and the object can be reduced by the rotational operation in the picking operation.
上述の開示において、複数の領域の各々の優先度を設定するための優先度設定部をさらに備える。容器には複数の物体が収容されている。検出部は、複数の物体の各々の位置を検出し、複数の物体のうち、優先度の最も高い領域に属する物体を対象物として決定する。 In the above disclosure, a priority setting unit for setting the priority of each of the plurality of regions is further provided. The container contains multiple objects. The detection unit detects the position of each of the plurality of objects, and determines the object belonging to the region having the highest priority among the plurality of objects as the object.
この開示によれば、優先度設定部は、例えば、壁面との接触リスクの低い領域の優先度を高く設定できる。その結果、ロボットは、壁面との接触リスクの低い対象物から順にピッキングできる。 According to this disclosure, the priority setting unit can set a high priority in a region having a low risk of contact with a wall surface, for example. As a result, the robot can pick objects in ascending order of contact risk with the wall surface.
本開示の一例によれば、容器に収容された対象物をピッキングするロボットの動作を決定する方法は、第1〜第4のステップを備える。第1のステップは、容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップである。第2のステップは、複数の領域の各々と対応付けて、ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップである。第3のステップは、容器を撮像することにより得られた画像に基づいて、対象物の位置を検出するステップである。第4のステップは、対象物を保持してから対象物を容器外に搬送するまでのエンドエフェクのピッキング動作を決定するステップとを備える。第4のステップは、複数の領域のうち検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作をピッキング動作の並進成分として決定するステップを含む。 According to an example of the present disclosure, a method of determining the action of a robot picking an object contained in a container comprises first to fourth steps. The first step is to set a plurality of regions having an exclusive relationship with each other in the space inside the container. The second step is a step of setting definition information that defines the translational motion of the end effector possessed by the robot in association with each of the plurality of regions. The third step is a step of detecting the position of the object based on the image obtained by imaging the container. The fourth step includes a step of determining the picking operation of the end effect from holding the object to transporting the object out of the container. The fourth step includes a step of determining the translational motion defined by the definition information associated with the region including the detected position among the plurality of regions as the translational component of the picking motion.
本開示の一例によれば、プログラムは、上記の方法をコンピュータに実行させる。これらの開示によっても、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 According to an example of the present disclosure, the program causes a computer to perform the above method. These disclosures also make it possible to determine the operation of the robot that picks the object contained in the container while suppressing the increase in the calculation cost.
本開示によれば、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 According to the present disclosure, it is possible to determine the operation of a robot that picks an object contained in a container while suppressing an increase in calculation cost.
本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are designated by the same reference numerals and the description thereof will not be repeated.
§1 適用例
まず、図1を参照して、本発明が適用される場面の一例について説明する。図1は、実施の形態に係る制御システムの全体構成を示す概略図である。図1に例示される制御システムSYSは、生産ラインなどに組み込まれ、容器であるコンテナ2に収容されたワーク1に対するピックアンドプレースの制御を行なう。図1に例示されるコンテナ2は、内底面が平坦であり、内壁面が内底面に対して垂直である直方体状の箱である。ワーク1は、コンテナ2内にばら積みされる。そのため、コンテナ2内でのワーク1の位置姿勢はランダムである。
§1 Application example First, an example of a situation in which the present invention is applied will be described with reference to FIG. FIG. 1 is a schematic view showing an overall configuration of a control system according to an embodiment. The control system SYS illustrated in FIG. 1 is incorporated in a production line or the like and controls pick-and-place with respect to the
図1に例示される制御システムSYSは、画像処理装置100と、ロボットコントローラ200と、ロボット300と、計測ヘッド400とを備える。画像処理装置100には、ディスプレイ150および入力装置160が接続されている。入力装置160は、例えばキーボードおよびマウスを含む。
The control system SYS illustrated in FIG. 1 includes an
ロボット300は、ワーク1に対するピックアンドプレースを行なう。ロボット300は、ワーク1を保持するエンドエフェクタ30と、エンドエフェクタの位置姿勢を変更するための多関節アーム31と、多関節アーム31を支持するベース32とを含む。ロボット300の動作は、ロボットコントローラ200によって制御される。
The
図1に例示されるエンドエフェクタ30は、2つの爪33を有し、2つの爪33を用いてワーク1を把持する。なお、爪33は、ワーク1を保持(把持)する際に、ワーク1に接触する部位であり、「指」とも称される。なお、ワーク1の保持方法は、2つの爪を用いた把持に限定されない。例えば、エンドエフェクタ30は、3つの爪を用いてワークを把持してもよいし、吸着パッドを用いてワーク1を吸着してもよい。
The
ロボットコントローラ200は、画像処理装置100からの動作指令を受けて、ロボット300の多関節アーム31を制御する。具体的には、ロボットコントローラ200は、エンドエフェクタ30がアプローチ動作、ピッキング動作およびプレース動作を行なうように多関節アーム31を制御する。「アプローチ動作」は、コンテナ2の外側の待機位置からワーク1の把持位置までのエンドエフェクタ30の動作である。「ピッキング動作」は、ワーク1を把持してからワーク1をコンテナ2の外側の退避位置に搬送するまでのエンドエフェクタ30の動作である。「プレース動作」は、ワーク1を退避位置から目標位置に搬送するまでのエンドエフェクタ30の動作である。
The
計測ヘッド400は、コンテナ2およびコンテナ2に収容されたワーク1が被写体となるように設置され、当該被写体を撮像する。計測ヘッド400は、投影部401と撮像部402とを備える。投影部401は、画像処理装置100からの指示に従って任意の投影パターン光を被写体に投影する。投影パターンは、例えば照射面内の所定方向に沿って明るさが周期的に変化するパターンである。撮像部402は、投影パターン光が投影された状態の被写体を撮像する。
The
投影部401は、主要なコンポーネントとして、例えば、LED(Light Emitting Diode)やハロゲンランプなどの光源と、投影部401の照射面の側に配置されたフィルタとを含む。フィルタは、後述するような三次元形状の計測に必要な投影パターン光を発生させるものであり、画像処理装置100からの指令に従って、面内の透光率を任意に変化させることができる。投影部401は、液晶またはDMD(Digital Mirror Device)と光源(LEDまたはレーザ光源など)とを用いた構成であってもよい。
The
撮像部402は、主要なコンポーネントとして、例えば、レンズなどの光学系と、CCD(Coupled Charged Device)やCMOS(Complementary Metal Oxide Semiconductor)センサといった撮像素子とを含む。
The
画像処理装置100は、計測ヘッド400から受けた画像に基づいて、コンテナ2に収容されたワーク1の位置姿勢を検出する。画像処理装置100は、検出したワーク1の位置姿勢に基づいて、エンドエフェクタ30のアプローチ動作、ピッキング動作およびプレース動作を決定する。画像処理装置100は、決定した動作に対応する動作指令を生成し、生成した動作指令をロボットコントローラ200に出力する。ロボットコントローラ200は、動作指令に従って、画像処理装置100によって決定されたアプローチ動作、ピッキング動作およびプレース動作をロボット300に実行させる。
The
ワーク1を把持した後のピッキング動作は、ワーク1とコンテナ2との干渉を考慮して決定される必要がある。特許文献1に開示の技術を用いて、ワーク1とコンテナ2との干渉チェックを行なうことによりピッキング動作を決定することが考えられる。しかしながら、上述したように、干渉チェックのための計算コストが増加するという問題が生じる。そのため、本実施の形態に係る画像処理装置100は、以下のような処理に従ってピッキング動作を決定する。
The picking operation after gripping the
図2は、実施の形態に係る画像処理装置におけるピッキング動作を決定する方法を説明する図である。図2の上方にはコンテナ2の平面図が示され、図2の下方にはコンテナ2の縦断面図が示される。
FIG. 2 is a diagram illustrating a method of determining a picking operation in the image processing apparatus according to the embodiment. A plan view of the
図2に示されるように、画像処理装置100は、コンテナ2内の空間において、互いに排他的な関係にある複数の領域4a〜4h,5を設定する。図2に示す例では、画像処理装置100は、コンテナ2の壁面3a〜3dにそれぞれ隣接する領域4a〜4dと、壁面3a,3bの両方に隣接する領域4eと、壁面3b,3cの両方に隣接する領域4fと、壁面3c,3dの両方に隣接する領域4gと、壁面3d,3aの両方に隣接する領域4hと、中央に位置する領域5とを設定している。領域5は、領域4a〜4dよりも壁面3a〜3dからそれぞれ離れている。
As shown in FIG. 2, the
画像処理装置100は、複数の領域4a〜4h,5の各々と対応付けて、エンドエフェクタ30の並進動作を定義する定義情報をさらに設定する。コンテナ2のいずれかの壁面に隣接する領域4a〜4hについては、隣接する壁面から遠ざかる並進動作を定義する定義情報が設定される。例えば、画像処理装置100は、領域4bに対応付けて、壁面3bから遠ざかる並進動作40bを定義する定義情報を設定する。同様に、画像処理装置100は、領域4dに対応付けて、壁面3dから遠ざかる並進動作40dを定義する定義情報を設定する。さらに、画像処理装置100は、壁面3a〜3dから離れた位置の領域5に対応付けて、コンテナ2の底面3zの法線方向(鉛直方向上向き)に沿った並進動作50を定義する定義情報を設定する。
The
画像処理装置100は、複数の領域4a〜4h,5のうち、ピッキング対象のワーク1について検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作を、ピッキング動作の並進成分として決定する。例えば、ワーク1の位置が領域4bに含まれる場合、画像処理装置100は、領域4bに対応付けられた定義情報によって定義される並進動作40bをピッキング動作の並進成分として決定する。
The
上記の処理によれば、画像処理装置100は、複雑な計算を行なうことなく、予め設定した定義情報を用いて、ワーク1に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、コンテナ2に収容されたワーク1をピッキングするロボットの動作を決定できる。
According to the above processing, the
§2 具体例
次に、本実施の形態に係る制御システムの具体例について説明する。
§2 Specific example Next, a specific example of the control system according to the present embodiment will be described.
<A.画像処理装置のハードウェア構成例>
画像処理装置100は、典型的には、汎用的なアーキテクチャを有しているコンピュータであり、予めインストールされたプログラム(命令コード)を実行することで、本実施の形態に係る画像処理を実行する。このようなプログラムは、典型的には、各種記録媒体などに格納された状態で流通し、あるいは、ネットワークなどを介して画像処理装置100にインストールされる。
<A. Image processing device hardware configuration example>
The
このような汎用的なコンピュータを利用する場合には、本実施の形態に係る画像処理を実行するためのアプリケーションに加えて、コンピュータの基本的な処理を実行するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係るプログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。すなわち、本実施の形態に係るプログラム自体は、上記のようなモジュールを含んでおらず、OSと協働して処理が実行されてもよい。本実施の形態に係るプログラムとしては、このような一部のモジュールを含まない形態であってもよい。 When using such a general-purpose computer, an OS (Operating System) for executing the basic processing of the computer is installed in addition to the application for executing the image processing according to the present embodiment. It may have been done. In this case, the program according to the present embodiment may call the necessary modules in a predetermined array at a predetermined timing among the program modules provided as a part of the OS to execute the process. Good. That is, the program itself according to the present embodiment does not include the module as described above, and the process may be executed in cooperation with the OS. The program according to the present embodiment may not include such a part of the modules.
さらに、本実施の形態に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組合せられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係るプログラムとしては、このような他のプログラムに組込まれた形態であってもよい。なお、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。 Further, the program according to the present embodiment may be provided by being incorporated into a part of another program. Even in that case, the program itself does not include the modules included in the other programs to be combined as described above, and the processing is executed in cooperation with the other programs. That is, the program according to the present embodiment may be a form incorporated in such another program. Note that some or all of the functions provided by executing the program may be implemented as a dedicated hardware circuit.
図3は、図1に示す画像処理装置のハードウェア構成の一例を示す概略図である。図3に示されるように、画像処理装置100は、演算処理部であるCPU(Central Processing Unit)110と、記憶部としてのメインメモリ112およびハードディスク114と、計測ヘッドインターフェース116と、入力インターフェース118と、表示コントローラ120と、通信インターフェース124と、データリーダ/ライタ126とを含む。これらの各部は、バス128を介して、互いにデータ通信可能に接続される。
FIG. 3 is a schematic view showing an example of the hardware configuration of the image processing apparatus shown in FIG. As shown in FIG. 3, the
CPU110は、ハードディスク114にインストールされたプログラム(コード)をメインメモリ112に展開して、これらを所定順序で実行することで、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク114から読み出されたプログラムに加えて、計測ヘッド400によって取得された画像などを保持する。さらに、ハードディスク114には、後述するような各種データなどが格納される。なお、ハードディスク114に加えて、あるいは、ハードディスク114に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。
The
計測ヘッドインターフェース116は、CPU110と計測ヘッド400との間のデータ伝送を仲介する。すなわち、計測ヘッドインターフェース116は、計測ヘッド400と接続される。計測ヘッドインターフェース116は、CPU110が発生した内部コマンドに従って、計測ヘッド400に対して投影コマンドおよび撮像コマンドを与える。計測ヘッドインターフェース116は、計測ヘッド400からの画像を一時的に蓄積するための画像バッファ116aを含む。計測ヘッドインターフェース116は、画像バッファ116aに所定コマ数の画像が蓄積されると、その蓄積された画像をメインメモリ112へ転送する。
The
入力インターフェース118は、CPU110と入力装置160との間のデータ伝送を仲介する。すなわち、入力インターフェース118は、ユーザが入力装置160に入力した入力情報を受付ける。
The
表示コントローラ120は、ディスプレイ150と接続され、CPU110における処理結果などをユーザに通知するようにディスプレイ150の表示を制御する。
The
通信インターフェース124は、CPU110とロボットコントローラ200などの外部装置との間のデータ伝送を仲介する。通信インターフェース124は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。
The
データリーダ/ライタ126は、CPU110と記録媒体であるメモリカード106との間のデータ伝送を仲介する。すなわち、メモリカード106には、画像処理装置100で実行されるプログラムなどが格納された状態で流通し、データリーダ/ライタ126は、このメモリカード106からプログラムを読出す。また、データリーダ/ライタ126は、CPU110の内部指令に応答して、計測ヘッド400によって撮像された画像および/または画像処理装置100における処理結果などをメモリカード106へ書込む。なお、メモリカード106は、SD(Secure Digital)などの汎用的な半導体記憶デバイスや、フレキシブルディスク(Flexible Disk)などの磁気記憶媒体や、CD−ROM(Compact Disk Read Only Memory)などの光学記憶媒体等からなる。
The data reader /
<B.画像処理装置の機能構成例>
図4は、図1に示す画像処理装置の機能構成の一例を示すブロック図である。図4に示されるように、画像処理装置100は、記憶部10と、ヘッド制御部11と、設定部12と、画像処理部13とを備える。記憶部10は、図3に示すメインメモリ112およびハードディスク114によって実現される。ヘッド制御部11は、図3に示すCPU110および計測ヘッドインターフェース116によって実現される。設定部12は、図3に示すCPU110、入力インターフェース118および表示コントローラ120によって実現される。画像処理部13は、図3に示すCPU110および通信インターフェース124によって実現される。
<B. Function configuration example of image processing device>
FIG. 4 is a block diagram showing an example of the functional configuration of the image processing apparatus shown in FIG. As shown in FIG. 4, the
記憶部10には、ワーク1の三次元形状を示すCAD(Computer Aided Design)データ101aと、コンテナ2の三次元形状を示すCADデータ101bとが予め格納される。記憶部10には、ワーク1を様々な視点から見たときの姿勢ごとの画像を示す複数のテンプレートデータ102が格納される。テンプレートデータ102は、例えばCADデータ101aに基づいて予め生成される。記憶部10には、計測ヘッド400の撮像により得られた画像データ103が格納される。さらに、記憶部10には、設定部12によって設定された領域情報104および定義情報105が格納される。領域情報104および定義情報105の詳細については後述する。
The
ヘッド制御部11は、計測ヘッド400の動作を制御する。ヘッド制御部11は、予め定められた投影パターン光の投影を指示する投影コマンドを計測ヘッド400に出力する。ヘッド制御部11は、投影パターン光が投影されている状態で撮像コマンドを計測ヘッド400に出力する。ヘッド制御部11は、計測ヘッド400から取得した画像データ103を記憶部10に格納する。
The
設定部12は、領域設定部12aと情報設定部12bとを有する。領域設定部12aは、コンテナ2内の空間において、互いに排他的な関係にある複数の領域を設定する。領域設定部12aは、複数の領域を設定するための設定画面をディスプレイ150に表示し、入力装置160への入力に従って複数の領域を設定する。領域設定部12aは、設定した複数の領域それぞれを示す領域情報104を生成し、生成した領域情報104を記憶部10に格納する。領域情報104は、例えば、コンテナ2の特徴点(例えば左上角)を原点とする座標系における、複数の領域それぞれのx座標、y座標およびz座標の範囲を示す。
The setting
情報設定部12bは、複数の領域の各々と対応付けて、エンドエフェクタ30の並進動作を定義する定義情報105を設定する。情報設定部12bは、定義情報105を設定するための設定画面をディスプレイ150に表示し、入力装置160への入力に従って定義情報105を設定する。情報設定部12bは、複数の領域の各々について設定した定義情報105を記憶部10に格納する。
The
画像処理部13は、計測ヘッド400の撮像により得られた画像データ103に対する処理を行なう。図4に示されるように、画像処理部13は、3D画像生成部14と、検出部15と、動作指令決定部16と、通信部17とを含む。
The
3D画像生成部14は、画像データ103に基づいて、計測ヘッド400の視野領域における三次元計測を行ない、三次元点群データを生成する。三次元点群データは、計測ヘッド400の視野領域に存在する物体表面上の各点の三次元座標を示す。
The 3D
三次元計測処理として、例えば三角測距方式、同軸方式が採用され得る。三角測距方式は、撮像と投光との光軸を基線長分だけ離間させ、視差を距離に変換する方式である。三角測距方式には、アクティブ法とパッシブ法とが含まれる。アクティブ法には、構造化照明法、位相シフト法、空間コード法が含まれる。同軸方式は、撮像と測距手段との光軸を同一に設定する方式である。測距手段として、TOF(Time of Flight)方式、焦点方式が含まれる。3D画像生成部14は、これらの方式のいずれかを用いて三次元計測処理を実行すればよい。例えば位相シフト法を用いて三次元計測処理が行なわれる。
As the three-dimensional measurement process, for example, a triangular ranging method or a coaxial method can be adopted. The triangular distance measurement method is a method in which the optical axes of imaging and projection are separated by the length of the baseline, and the parallax is converted into a distance. The triangular ranging method includes an active method and a passive method. Active methods include structured illumination methods, phase shift methods, and spatial coding methods. The coaxial method is a method in which the optical axes of the imaging and the distance measuring means are set to be the same. The distance measuring means includes a TOF (Time of Flight) method and a focusing method. The 3D
位相シフト法は、正弦波状に濃淡を変化させた投影パターン光を被写体に投影した状態で撮像された画像(正弦波投影画像)を用いる方法である。濃淡の変化周期や位相を異ならせた投影パターンが複数用意され、計測ヘッド400の投影部401は、撮像部402の視野領域に対して、複数の投影パターン光を順次照射する。3D画像生成部14は、複数の投影パターンが投影されたときにそれぞれ撮像される画像データ103の群(正弦波投影画像群)を記憶部10から読み出す。そして、3D画像生成部14は、これらの画像データ103間における対応する部分の明るさ(輝度や明度)の変化に基づいて、三次元座標を算出する。
The phase shift method is a method using an image (sinusoidal projection image) captured in a state where a projection pattern light whose shading is changed in a sinusoidal shape is projected onto a subject. A plurality of projection patterns having different shade change periods and phases are prepared, and the
検出部15は、記憶部10に格納された各テンプレートデータ102と三次元点群データとを照合し、三次元点群データの中からテンプレートと類似するデータを抽出する。検出部15は、抽出したデータに基づいて、ワーク1の位置姿勢を検出する。検出部15によって検出されるワーク1の位置姿勢は、計測ヘッド400の撮像部402の座標系(カメラ座標系)で示される。
The
さらに、コンテナ2の位置が一定ではない場合、検出部15は、画像データ103または三次元点群データに基づいて、コンテナ2の位置姿勢を検出してもよい。コンテナ2の位置姿勢の検出方法の詳細については後述する。
Further, when the position of the
なお、検出部15は、複数のワーク1の位置姿勢を検出した場合、予め定められた選択基準に従って、当該複数のワーク1のうちの1つをピッキング対象として選択する。
When the
動作指令決定部16は、ピッキング対象のワーク1の位置姿勢に応じて、エンドエフェクタ30の動作を決定する。動作指令決定部16は、決定した動作に対応する動作指令を生成する。
The operation
まず、動作指令決定部16はアプローチ動作を決定する。動作指令決定部16は、エンドエフェクタ30の待機位置がコンテナ2の開口部の上方である場合、例えば、待機位置からピッキング対象となるワーク1の把持位置まで移動する並進動作をアプローチ動作の並進成分として決定すればよい。さらに、動作指令決定部16は、ワーク1の姿勢に応じた回転動作をアプローチ動作の回転成分として決定すればよい。エンドエフェクタ30がワーク1を把持するときのワーク1に対するエンドエフェクタ30の相対位置姿勢は、把持点登録情報として予め登録されている。動作指令決定部16は、検出されたワーク1の位置姿勢と把持点登録情報とに基づいて、当該ワーク1を把持するときのエンドエフェクタ30の位置姿勢を計算すればよい。
First, the operation
次に、動作指令決定部16はピッキング動作を決定する。動作指令決定部16は、ピッキング対象のワーク1の位置姿勢とコンテナ2の位置姿勢とに基づいて、コンテナ2に対するワーク1の相対位置を計算する。コンテナ2に対するワーク1の相対位置は、例えばコンテナ2の特徴点(例えば左上角)を原点とする座標系で示される。動作指令決定部16は、コンテナ2に対するワーク1の相対位置と領域情報104とに基づいて、ワーク1の位置を含む領域を特定する。動作指令決定部16は、特定した領域に定義付けられた定義情報105によって定義される並進動作をピッキング動作の並進成分として決定する。
Next, the operation
なお、動作指令決定部16は、ピッキング動作の回転成分について、0に決定してもよいし、後のプレース動作にスムーズに移行するような値に決定してもよい。
The operation
次に、動作指令決定部16はプレース動作を決定する。動作指令決定部16は、ピッキング動作後のワーク1の退避位置と目標位置とを結ぶ線に沿った並進動作をプレース動作の並進成分として決定すればよい。
Next, the operation
通信部17は、ロボットコントローラ200と通信可能であり、動作指令決定部16によって生成された動作指令をロボットコントローラ200に送信する。
The
ロボットコントローラ200は、動作指令に従ってロボット300を制御する。これにより、ロボット300のエンドエフェクタ30は、動作指令決定部16によって決定されたアプローチ動作、ピッキング動作およびプレース動作を順に行なう。ただし、ロボット300の機構(並進機構および回転機構)における動作精度には誤差がある。そのため、ロボット300のエンドエフェクタ30の実際の動作と動作指令決定部16によって決定された動作との間に誤差が生じ得る。
The
<C.領域の設定>
図5〜図8を参照して、領域設定部12aによる領域の設定方法の一例について説明する。図5は、コンテナの形状を登録するための画面例を示す図である。図5に例示される画面60は、自動登録ボタン61と手動登録ボタン62とを有する。自動登録ボタン61が操作されると、領域設定部12aは、入力欄63に入力されたファイル名で示されるコンテナ2のCADデータに基づいて、コンテナ2の形状を登録する。手動登録ボタン62が操作されると、領域設定部12aは、入力欄64に入力された値に従って、コンテナ2の形状を登録する。
<C. Area settings>
An example of a region setting method by the
コンテナ2の形状は、コンテナ2の幅(外寸)W、奥行き(外寸)D、外寸高さH1、内寸高さH2、コンテナ2の側壁の幅方向の最大厚みB1、コンテナ2の側壁の奥行き方向の最大厚みB2、傾斜方向および傾斜角度で示される。傾斜方向および傾斜角度は、コンテナ2が設置される台の傾斜に応じて登録される。
The shapes of the
画像処理装置100の記憶部10には、生産ラインで使用され得る複数種類のコンテナ2にそれぞれ対応する複数のCADデータ101bが格納されていてもよい。ユーザは、使用するコンテナ2の種類変更のタイミングにおいて、変更後の種類のコンテナ2に対応するCADデータ101bを入力欄63に入力すればよい。もしくは、生産ラインで使用され得る複数種類のコンテナ2ごとのW、D、H1、H2、B1およびB2を示す形状データが記憶部10に予め格納されていてもよい。ユーザは、使用するコンテナ2の種類変更のタイミングにおいて、変更後の種類のコンテナ2に対応する形状データを入力欄64に入力すればよい。
The
画像処理装置100は、使用するコンテナ2の種類変更のタイミングにおいて、変更後のコンテナ2の種類を示す情報を図示しない上位制御装置から取得してもよい。上位制御装置は、生産ラインの運用を管理する装置である。画像処理装置100は、上位制御装置からコンテナ2の種類を示す情報を取得すると、変更後の種類のコンテナ2に対応するCADデータ101bを入力欄63に自動的に入力してもよい。もしくは、画像処理装置100は、上位制御装置からコンテナ2の種類を示す情報を取得すると、変更後の種類のコンテナ2に対応する形状データを入力欄64に自動的に入力してもよい。
The
図6は、ワークの形状を登録するための画面例を示す図である。図6に例示される画面65は、自動登録ボタン66と手動登録ボタン67とを有する。自動登録ボタン66が操作されると、領域設定部12aは、入力欄68に入力されたファイル名で示されるワーク1のCADデータに基づいて、ワーク1の形状を登録する。手動登録ボタン67が操作されると、領域設定部12aは、入力欄69に入力された値に従って、ワーク1の形状を登録する。ワーク1の形状は、例えばワーク1の外接直方体の幅W、奥行きD、高さHで示される。
FIG. 6 is a diagram showing a screen example for registering the shape of the work. The
画面65は、エンドエフェクタ30の2つの爪33による概略把持位置を入力するための入力欄70を含む。2つの爪33でワーク1を把持する場合、2つの爪33は、通常、ワーク1の外接直方体の幅方向または奥行き方向に沿って配置される。そのため、概略把持位置は、ワーク1の外接直方体の幅方向に直交する側面からの距離C1、および、奥行き方向に直交する側面からの距離C2のいずれかによって示される。すなわち、ワーク1を把持するときに2つの爪33が外接直方体の幅方向に沿って配置される場合には、距離C1が入力される。ワーク1を把持するときに2つの爪33が外接直方体の奥行き方向に沿って配置される場合には、距離C2が入力される。距離C1または距離C2は、予め登録されている把持点登録情報に基づいて自動的に入力されてもよい。
The
領域設定部12aは、2つの爪33による概略把持位置の中心点と、ワーク1の外接直方体の表面上の点との最大距離をマージン幅Mとして計算する。計算されたマージン幅Mは、画面65の表示欄71に表示される。
The
図7は、マージン幅の設定方法の一例を示す図である。領域設定部12aは、距離C1が入力された場合、ワーク1の外接直方体RPの対角線DLと、外接直方体RPの奥行き方向に直交する側面に平行であり、かつ、当該側面から距離C1だけ内側の平面との交点を概略把持位置の中心点Pとして決定する。領域設定部12aは、距離C2が入力された場合、ワーク1の外接直方体RPの対角線DLと、外接直方体RPの幅方向に直交する側面に平行であり、かつ、当該側面から距離C2だけ内側の平面との交点を概略把持位置の中心点Pとして決定する。領域設定部12aは、対角線DLを中心点Pで分割したときの一方の長さM1と他方の長さM2とのうちの長い方をマージン幅M(=max(M1,M2))として計算する。
FIG. 7 is a diagram showing an example of a method of setting the margin width. When the distance C1 is input, the
図8は、複数の領域を設定するための画面の一例を示す図である。図2を参照して上述したように、箱状のコンテナ2内の空間に対して、互いに排他的な関係にある複数の領域4a〜4h,5が設定される。
FIG. 8 is a diagram showing an example of a screen for setting a plurality of areas. As described above with reference to FIG. 2, a plurality of
領域設定部12aは、コンテナ2の壁面3aから距離DM1以内の領域(ただし、領域4e,4hを除く)を領域4aとして設定する。領域設定部12aは、コンテナ2の壁面3bから距離WM1以内の領域(ただし、領域4e,4fを除く)を領域4bとして設定する。領域設定部12aは、コンテナ2の壁面3cから距離DM2以内の領域(ただし、領域4f,4gを除く)を領域4cとして設定する。領域設定部12aは、コンテナ2の壁面3dから距離WM2以内の領域(ただし、領域4g,4hを除く)を領域4dとして設定する。領域設定部12aは、壁面3aから距離DM1以内であり、かつ、壁面3bから距離WM1以内の領域を領域4eとして設定する。領域設定部12aは、壁面3bから距離WM1以内であり、かつ、壁面3cから距離DM2以内の領域を領域4fとして設定する。領域設定部12aは、壁面3cから距離DM2以内であり、かつ、壁面3dから距離WM2以内の領域を領域4gとして設定する。領域設定部12aは、壁面3dから距離WM2以内であり、かつ、壁面3aから距離DM1以内の領域を領域4hとして設定する。
The
図8に例示される画面72は、自動設定ボタン73と手動設定ボタン74とを有する。自動設定ボタン73が操作されると、領域設定部12aは、距離DM1,DM2,WM1.WM2の全てをマージン幅Mに設定する。
The
手動設定ボタン74が操作されると、領域設定部12aは、距離DM1,DM2,WM1.WM2を設定するための入力欄75への入力を受け付ける。領域設定部12aは、入力欄75に入力された値に従って、距離DM1,DM2,WM1,WM2を設定する。
When the
また、画面72は、コンテナ2を模式的に示す画像76を含む。手動設定ボタン74が操作されると、領域設定部12aは、画像76において、距離DM1,DM2,WM1,WM2を定義付ける矩形状の枠線77を表示する。さらに、領域設定部12aは、枠線77の位置およびサイズを変更するためのカーソル78を表示し、カーソル78に対する操作に従って枠線77の位置およびサイズを変更する。領域設定部12aは、変更後の枠線77の位置およびサイズに従って、距離DM1,DM2,WM1,WM2を設定してもよい。
Further, the
<D.定義情報の設定>
図9および図10を参照して、情報設定部12bによる定義情報の設定方法の一例について説明する。
<D. Definition information settings>
An example of a method of setting definition information by the
図9は、定義情報を設定するための画面例を示す図である。図9に例示される画面79は、ボタン群80と入力欄81とを含む。入力欄81は、壁面に隣接する領域4a〜4hにそれぞれ対応付けられた定義情報105(以下、「第1定義情報」とも称する。)を設定するために使用される。ボタン群80は、壁面から離れた位置の領域5に対応付けられる定義情報105(以下、「第2定義情報」とも称する。)を設定するために使用される。
FIG. 9 is a diagram showing a screen example for setting definition information. The
ボタン群80は、鉛直方向上向きを選択するラジオボタン80aと、壁面平行を選択するラジオボタン80bとを含む。ラジオボタン80aが操作された場合、情報設定部12bは、領域5に対応付けて、鉛直方向上向きを示す第2定義情報を設定する。ラジオボタン80bが操作された場合、情報設定部12bは、領域5に対応付けて、壁面およびコンテナ2の底面に直交する平面上において壁面に平行な上向きの方向を示す第2定義情報を設定する。第2定義情報によって定義される並進動作は、第2定義情報で示される方向に沿った動作である。
The
なお、コンテナ2が水平に設置され、かつ、コンテナ2の壁面が底面に垂直である場合、ラジオボタン80a,80bのいずれを操作しても、同一の第2定義情報が設定される。
When the
コンテナ2の壁面3a〜3dが底面3zに対して傾斜している場合には、壁面およびコンテナの底面に直交する平面上において壁面に平行な上向きの方向と、底面の法線方向とは一致しない。さらに、コンテナ2が水平面に対して傾斜している場合、鉛直方向上向きと、底面の法線方向とも一致しない。そのため、ボタン群80は、ラジオボタン80a,80bの他に、底面の法線方向を選択するラジオボタンを含んでもよい。当該ラジオボタンが操作された場合、情報設定部12bは、領域5に対応付けて、底面の法線方向を示す第2定義情報を設定する。
When the wall surfaces 3a to 3d of the
入力欄81には、ワーク1が通過すべき指定位置を指定するための逃げ幅が入力される。情報設定部12bは、入力欄81に入力された逃げ幅を第1定義情報として設定する。第1定義情報によって定義される並進動作は、検出部15によって検出されたワーク1の位置と第1定義情報によって指定される指定位置とを通る直線に沿った動作である。
In the
図10は、領域4aに対応付けられた第1定義情報によって定義される並進動作を示す図である。図10において、エンドエフェクタ30の待機位置Paとワーク1の検出位置Pbとを結ぶ線は、アプローチ動作の軌跡を示す。検出位置Pbと退避位置Pcとを結ぶ線は、ピッキング動作の軌跡を示す。退避位置Pcと目標位置Pdとを結ぶ線は、プレース動作の軌跡を示す。
FIG. 10 is a diagram showing a translational operation defined by the first definition information associated with the
検出位置Pbと検出位置Pbの鉛直方向上向きの退避位置Pc1とを結ぶ線に沿ってピッキング動作をさせた場合、ワーク1と壁面3aとが接触する可能性がある。そのため、ワーク1を壁面3aから遠ざかるように、退避位置を修正することが好ましい。従って、壁面3aから遠ざかるような並進動作が第1定義情報によって定義されるように、指定位置Pc2が指定される。図10に示す例では、コンテナ2の上端を通る平面7において、検出位置Pbから下した垂線の足である点Qから逃げ幅F1だけ壁面3aから離れた位置が指定位置Pc2として指定される。検出位置Pbと指定位置Pc2とを通る直線上に修正後の退避位置Pcが設定される。第1定義情報で定義される並進動作は、検出位置Pbと退避位置Pcとを結ぶ直線に沿った動作である。
When the picking operation is performed along the line connecting the detection position Pb and the vertically upward withdrawal position Pc1 of the detection position Pb, the
なお、第1定義情報で定義される並進動作は、わずかにカーブする動作であってもよい。すなわち、第1定義情報によって定義される並進動作は、検出位置Pbと指定位置Pc2とを通る曲線に沿った動作であってもよい。この場合、当該曲線上に退避位置Pcが設定される。 The translational motion defined in the first definition information may be a slightly curved motion. That is, the translational motion defined by the first definition information may be an motion along a curve passing through the detection position Pb and the designated position Pc2. In this case, the retracted position Pc is set on the curve.
<E.コンテナが傾斜して設置されているときの処理例>
次に、コンテナ2が水平面に対して傾斜して設置されているときの処理例について説明する。ロボット300の多関節アーム31の可動範囲に応じて、コンテナ2が水平面に対して傾斜して設置され得る。
<E. Processing example when the container is installed at an angle>
Next, a processing example when the
図11は、水平面に対して傾斜角度θだけ傾斜して設置されたコンテナを示す断面図である。図11に示す例では、壁面3aが上側に位置し、壁面3cが下側に位置するように、コンテナ2が水平面に対して傾斜して設置されている。
FIG. 11 is a cross-sectional view showing a container installed at an inclination angle θ with respect to the horizontal plane. In the example shown in FIG. 11, the
コンテナ2が傾斜して設置されている場合、上側に位置する壁面3aとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクが高まる。一方、下側に位置する壁面3cとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクは低くなる。そのため、領域設定部12aは、壁面3aに隣接する領域4a,4e、4hのサイズを定める距離DM1(図8参照)と、壁面3cに隣接する領域4c,4f、4gのサイズを定める距離DM2(図8参照)とを傾斜角度θに応じて調整してもよい。
When the
図11に示す例では、領域設定部12aは、マージン幅M/cosθを距離DM1に設定し、マージン幅M×cosθを距離DM2に設定している。なお、領域設定部12aは、コンテナ2の内寸高さH2×tanθを距離DM2に設定してもよい。
In the example shown in FIG. 11, the
図12は、コンテナが水平面に対して傾斜して設置され、かつ、鉛直方向上向きを示す第2定義情報が設定されたときの領域の設定方法の一例を示す図である。第2定義情報が鉛直方向上向きを示す場合、領域5の範囲を図11に示す領域4cの範囲まで広げたとしても、下側に位置する壁面3cとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクは低い。そのため、図12に示されるように、領域設定部12aは、壁面3cに隣接するように領域5を設定してもよい。
FIG. 12 is a diagram showing an example of a method of setting an area when the container is installed at an angle with respect to the horizontal plane and the second definition information indicating upward in the vertical direction is set. When the second definition information indicates upward in the vertical direction, even if the range of the
コンテナ2が水平面に対して傾斜している場合であっても、情報設定部12bは、<D.定義情報の設定>で説明した方法と同じ方法に従って定義情報を設定すればよい。
Even when the
図13は、コンテナが水平面に対して傾斜して設置されているときの、領域4aに対応付けられた第1定義情報によって定義される並進動作を示す図である。図13に示されるように、ピッキング動作時のワーク1と壁面3aとの接触を回避するために、壁面3aから遠ざかるような並進動作が第1定義情報によって定義されるように、指定位置Pc2が指定される。図13に示す例では、コンテナ2の上端を通る平面7において、検出位置Pbから下した垂線の足である点Qから逃げ幅F1だけ壁面3aから離れた位置が指定位置Pc2として指定される。そして、検出位置Pbと指定位置Pc2とを通る直線上に修正後の退避位置Pcが設定される。第1定義情報によって定義される並進動作は、検出位置Pbと退避位置Pcとを結ぶ直線に沿った動作である。
FIG. 13 is a diagram showing a translational operation defined by the first definition information associated with the
なお、第1定義情報で定義される並進動作は、わずかにカーブする動作であってもよい。すなわち、第1定義情報によって定義される並進動作は、検出位置Pbと指定位置Pc2とを通る曲線に沿った動作であってもよい。この場合、当該曲線上に退避位置Pcが設定される。 The translational motion defined in the first definition information may be a slightly curved motion. That is, the translational motion defined by the first definition information may be an motion along a curve passing through the detection position Pb and the designated position Pc2. In this case, the retracted position Pc is set on the curve.
ロボット300の並進機構における動作精度には誤差がある。そのため、領域5に対応付けられた第2定義情報が鉛直方向上向き(Z軸正方向)に沿った並進動作を定義する場合、領域5に位置するワーク1に対するピッキング動作において、ワーク1と上側に位置する壁面3aとの接触リスクが高まる。そこで、図9において例えばラジオボタン80aが操作された場合に、鉛直方向上向き(Z軸正方向)よりも壁面3aから離れるように傾斜した方向に沿った並進動作を定義する第2定義情報が領域5に対応付けて設定されてもよい。このとき、並進動作の方向と鉛直方向上向き(Z軸正方向)とのなす角度は、ロボット300の並進機構における動作精度の誤差以上に設定される。
There is an error in the operation accuracy of the translation mechanism of the
<F.コンテナの位置姿勢の検出方法>
コンテナ2が固定位置に設置されない場合、検出部15は、コンテナ2に対するワーク1の相対位置姿勢を特定するために、コンテナ2の位置姿勢を検出する。
<F. How to detect the position and orientation of the container>
When the
図14は、コンテナの位置姿勢を検出する方法の一例を説明する図である。コンテナ2内にはワーク1が収容されるため、計測ヘッド400の撮像部402によって撮像される画像には、コンテナ2の上端面8が含まれる。コンテナ2が設置される台の高さが固定である場合、上端面8の高さ(Z座標)は一定である。ただし、コンテナ2の設置位置に応じて、上端面8のX座標およびY座標は変化しうる。そこで、検出部15は、二次元サーチの手法を用いてコンテナ2の位置姿勢を検出できる。すなわち、検出部15は、撮像部402から見たときのコンテナ2の上端面8の二次元形状を示すテンプレートデータを予め記憶しておき、当該テンプレートデータと画像データ103とを照合することにより、コンテナ2の位置姿勢を検出する。
FIG. 14 is a diagram illustrating an example of a method of detecting the position and orientation of the container. Since the
図15は、コンテナの位置姿勢を検出する方法の別の例を説明する図である。図15に示す例では、コンテナ2の上端面8上に4つの検出マーク8a〜8dが描かれている。検出部15は、画像データ103の中から検出マーク8a〜8dの位置を特定することにより、コンテナ2の位置姿勢を検出してもよい。
FIG. 15 is a diagram illustrating another example of a method of detecting the position and orientation of the container. In the example shown in FIG. 15, four
図16は、コンテナの位置姿勢を検出する方法のさらに別の例を説明する図である。図16に示す例では、コンテナ2は、水平面に対して傾斜した台に設置される。コンテナ2が水平面に対して傾斜して設置される場合、上端面8上に描かれた4つの検出マーク8a〜8dを頂点とする四角形が歪む。検出部15は、4つの検出マーク8a〜8dを頂点とする四角形の歪み度合いに基づいて、コンテナ2の水平面に対する傾斜角度θを検出できる。例えば、検出部15は、傾斜角度θと4つの検出マーク8a〜8d間の距離との関係式を予め記憶しておき、当該関係式を用いて傾斜角度θを計算すればよい。
FIG. 16 is a diagram illustrating still another example of the method of detecting the position and orientation of the container. In the example shown in FIG. 16, the
検出部15は、ワーク1と同様に三次元サーチの手法を用いてコンテナ2の位置姿勢を検出してもよい。すなわち、コンテナ2を様々な方向から見たときの三次元形状を示すテンプレートデータが予め記憶部10に格納される。検出部15は、3D画像生成部14によって生成された三次元点群データとテンプレートデータとを照合することにより、コンテナ2の位置姿勢を検出する。
The
<G.設定処理の流れ>
図17は、画像処理装置における設定処理の流れの一例を示すフローチャートである。まず、画像処理装置100のCPU110は、コンテナ2内の空間において、互いに排他的な関係にある複数の領域(例えば図2に示す領域4a〜4h,5)を設定する(ステップS1)。CPU110は、例えば図8に示す画面72をディスプレイ150に表示し、入力装置160への入力に従って複数の領域を設定する。CPU110は、設定した複数の領域のそれぞれの範囲を示す領域情報104を生成する。
<G. Flow of setting process>
FIG. 17 is a flowchart showing an example of the flow of setting processing in the image processing apparatus. First, the
次に、CPU110は、ステップS1で設定した複数の領域の各々に対応付けて、エンドエフェクタの並進動作を定義する定義情報105を設定する。CPU110は、例えば図9に示す画面79をディスプレイ150に表示し、入力装置160への入力に従って定義情報105を設定する。
Next, the
<H.ロボット動作の制御処理の流れ>
図18は、画像処理装置におけるロボット動作の制御処理の流れの一例を示すフローチャートである。まず、CPU110は、計測ヘッド400によって撮像された複数の画像データ103に基づいて、計測ヘッド400の視野領域の三次元計測を行なう(ステップS11)。ステップS11において、CPU110は、三次元点群データを生成する。
<H. Flow of robot operation control process>
FIG. 18 is a flowchart showing an example of a flow of control processing of robot operation in an image processing device. First, the
次に、CPU110は、ワーク1を様々に方向から見たときの三次元形状を示す複数のテンプレートデータ102と三次元点群データとを照合することにより、ワーク1の位置姿勢を検出する(ステップS12)。コンテナ2の位置姿勢が固定されていない場合、ステップS12において、検出部15は、コンテナ2の位置姿勢を検出してもよい。
Next, the
次に、CPU110は、ピッキング対象のワーク1の位置姿勢に応じてロボット300の動作を決定する(ステップS13)。ロボット300の動作には、上述したように、アプローチ動作とピッキング動作とプレース動作とが含まれる。具体的には、CPU110は、ステップS1において生成された領域情報104に基づいて、複数の領域のうちワーク1の位置を含む領域を特定する。CPU110は、特定した領域に対応付けられた定義情報105によって定義される並進動作をピッキング動作の並進成分として決定する。
Next, the
次に、CPU110は、決定した動作を実行させるための動作指令を生成し、生成した動作指令をロボットコントローラ200に出力する(ステップS14)。
Next, the
<I.作用・効果>
以上のように、本実施の形態に係る画像処理装置100は、コンテナ2に収容されたワークをピッキングするロボット300の動作を決定する。画像処理装置100は、領域設定部12aと、情報設定部12bと、検出部15と、動作指令決定部16とを備える。領域設定部12aは、コンテナ2内の空間において、互いに排他的な関係にある複数の領域を設定する。情報設定部12bは、複数の領域の各々と対応付けて、エンドエフェクタ30の並進動作を定義する定義情報105を設定する。検出部15は、コンテナ2を撮像することにより得られた画像に基づいて、ワーク1の位置を検出する。動作指令決定部16は、ワーク1を把持してからワーク1をコンテナ2外に搬送するまでのエンドエフェクタ30のピッキング動作を決定する。動作指令決定部16は、複数の領域のうち検出部15によって検出されたワーク1の位置を含む領域に対応付けられた定義情報105によって定義される並進動作を、ピッキング動作の並進成分として決定する。
<I. Action / effect>
As described above, the
これにより、画像処理装置100は、複雑な計算を行なうことなく、予め設定した定義情報105を用いて、ワーク1に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、コンテナ2に収容されたワーク1をピッキングするロボットの動作を決定できる。
As a result, the
複数の領域は、コンテナ2内における壁面3a〜3dにそれぞれ隣接する領域4a〜4dと、領域4a〜4dよりも壁面3a〜3dからそれぞれ離れた位置の領域5とを含む。これにより、コンテナ2の壁面3a〜3dにそれぞれ隣接する領域4a〜4dと、壁面3a〜3dから離れた領域5とのそれぞれについて、ピッキング動作の並進成分を決定するための定義情報105を別個に設定できる。すなわち、複数の領域の各々について、当該領域に適した並進動作を定義する定義情報を設定することができる。
The plurality of regions include
領域設定部12aは、壁面3a〜3dからの距離情報を用いて領域4a〜4d,5を設定すればよい。これにより、領域4a〜4d,5を容易に設定できる。
The
例えば、壁面3aに隣接する領域4aに対応付けられた定義情報105は、ワーク1が通過すべき指定位置を指定するための情報である。そして、当該定義情報105によって定義される並進動作は、ワーク1の検出位置と指定位置とを通る直線または曲線に沿った動作である。これにより、領域ごとに指定位置を設定することにより、ピッキング動作の並進成分が決定される。
For example, the
指定位置は、検出位置に応じて指定されてもよい。例えば、図10に示す例では、コンテナ2の上端を通る平面7において、検出位置Pbから下した垂線の足である点Qから逃げ幅F1だけ壁面3aから離れた位置が指定位置Pc2として指定される。これにより、検出位置Pbに適した指定位置が指定される。
The designated position may be designated according to the detection position. For example, in the example shown in FIG. 10, on the
領域5に対応付けられた定義情報105は、例えば、壁面3aおよび容器の底面3zに直交する平面上において壁面3aに平行な上向きの方向、底面3zの法線方向、鉛直方向上向き、およびこれらの方向よりも壁面3aから離れるように傾斜した方向、のいずれかを示す。領域5に対応付けられた定義情報105によって定義される並進動作は、これらの方向に沿った動作である。領域5は、壁面から離れた位置にある。そのため、これらの方向に沿ったピッキング動作を行なっても、壁面とワーク1との接触リスクが低い。
The
領域設定部12aは、コンテナ2が水平面に対して傾斜して設置される場合、コンテナ2の水平面に対する傾斜方向および傾斜角度に応じて、複数の領域の少なくとも1つ(図11に示す例では領域4a、4c)のサイズを調整する。これにより、傾斜に応じて領域のサイズが適宜自動的に調整される。これにより、ユーザの手間を削減できる。
When the
領域設定部12aは、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と、ワーク1の外接直方体RPの表面上の点との最大距離をマージン幅Mとして設定する。そして、領域設定部12aは、壁面3a〜3dからそれぞれマージン幅M以内の領域を領域4a〜4dとして自動的に設定してもよい。これにより、領域の設定に要するユーザの手間を削減できる。なお、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と、ワーク1の外接直方体RPの表面上の点との最大距離以上の距離がマージン幅Mとして設定されてもよい。
The
<J.変形例>
(J−1.変形例1)
上記の実施の形態では、内底面が平坦であり、内壁面が内側面に対して垂直である直方体状の箱であるコンテナ2を、ワーク1が収容される容器の一例として説明した。しかしながら、ワーク1が収容される容器は、コンテナ2の形状に限定されず、複雑な形状を有していてもよい。
<J. Modification example>
(J-1. Modification 1)
In the above embodiment, the
図19は、ワークが収容される容器の別の例を示す平面図である。図20は、図19のV−V線に沿った矢視断面図である。図19および図20に例示されるコンテナ2aは、4つの凹部9a〜9dを有する。ワークは、凹部9a〜9d内に収容されるか、もしくは、凹部9a〜9d内に収容されたワークの上に載せられる。図19および図20に示す例では、ワーク1bは凹部9a内に収容されており、ワーク1cは凹部9d内に収容されている。ワーク1aは、凹部9a内に収容されているワーク1bの上に載せられ、凹部9aの上方に位置している。
FIG. 19 is a plan view showing another example of the container in which the work is housed. FIG. 20 is a cross-sectional view taken along the line VV of FIG. The
図21は、図19に示す凹部9a付近を示す拡大平面図である。図21に示されるように、凹部9aは、4つの壁面3e〜3hによって囲まれている。壁面3e,3fは、凹部9aの底面に垂直である。壁面3g,3hは、凹部9aが上方に向かって広がるように、底面の法線方向に対して傾斜している。
FIG. 21 is an enlarged plan view showing the vicinity of the
領域設定部12aは、凹部9a〜9dの各々について、互いに排他的な関係にある複数の領域を設定すればよい。図21に示す例では、領域設定部12aは、凹部9a内の空間について領域4i〜4p,5aを設定している。領域4iは壁面3e,3fに隣接する。領域4jは壁面3eに隣接する。領域4kは壁面3e,3hに隣接する。領域4lは壁面3fに隣接する。領域4mは壁面3hに隣接する。領域4nは壁面3f,3gに隣接する。領域4oは壁面3gに隣接する。領域4pは壁面3g,3hに隣接する。領域5aは、領域4e,4l,4o,4mよりも壁面3e〜3hからそれぞれ離れている。
The
情報設定部12bは、各領域に対応付けて、エンドエフェクタ30の並進動作を定義する定義情報105を設定する。図21に示す例では、情報設定部12bは、領域4i〜4p,5aに対応付けて、並進動作40i〜40p,50aを定義する定義情報105をそれぞれ設定する。
The
並進動作40iは、領域4iに隣接する壁面3e,3fから離れる方向に移動する動作である。並進動作40jは、領域4jに隣接する壁面3eから離れる方向に移動する動作である。並進動作40lは、領域4lに隣接する壁面3fから離れる方向に移動する動作である。並進動作40mは、領域4mに隣接する壁面3hから離れる方向に移動する動作である。並進動作40oは、領域4oに隣接する壁面3gから離れる方向に移動する動作である。並進動作40pは、領域4pに隣接する壁面3g,3hから離れる方向に移動する動作である。
The
なお、凹部9aの底面とのなす角度が鈍角となるように傾斜している壁面3g,3hへのワークの接触リスクは低い。そのため、領域4m,4o,4pにそれぞれ対応する並進動作40m,40o,40pは、鉛直方向上向き(Z軸正方向)に沿った直線移動であってもよい。
The risk of contact of the work with the wall surfaces 3g and 3h that are inclined so that the angle formed by the
領域4kでは、凹部9aの底面とのなす角度が鈍角となるように傾斜している壁面3hよりも底面に垂直な壁面3eへのワークの接触リスクが高い。そのため、領域4kに対応する並進動作40kは、壁面3eから離れる方向に移動する動作である。同様に、領域4nでは、凹部9aの底面に対して傾斜している壁面3gよりも底面に垂直な壁面3fへのワークの接触リスクが高い。そのため、領域4nに対応する並進動作40nは、壁面3fから離れる方向に移動する動作である。
In the
図21に例示される並進動作50aは、鉛直方向上向き(Z軸正方向)に沿った直線移動である。ただし、ロボット300の並進機構における動作精度には誤差がある。そのため、ある方向に直線移動させようとしても、当該方向から誤差分だけ傾斜した方向に移動する可能性がある。凹部9aは、底面に垂直な壁面3e,3fと、底面とのなす角度が鈍角となるように傾斜している壁面3g,3hとに囲まれている。そのため、壁面3g,3hよりも壁面3e,3fへのワークの接触リスクが高い。そこで、図9において例えばラジオボタン80aが操作された場合に、鉛直方向上向き(Z軸正方向)よりも壁面3e,3fから離れるように傾斜した方向に沿った直進動作が並進動作50aとして設定されてもよい。このとき、並進動作50aの方向と鉛直方向上向き(Z軸正方向)とのなす角度は、ロボット300の並進機構における動作精度の誤差以上に設定される。
The
(J−2.変形例2)
コンテナ2,2aに収容された複数のワークを1つずつ順にピッキングする場合、壁面との接触リスクの低いワークからピッキングすることが好ましい。そこで、設定部12は、ピッキング対象となるワークを選択する基準となる優先度を領域ごとに設定してもよい。
(J-2. Modification 2)
When a plurality of workpieces housed in the
図22は、変形例2に係る設定部の内部構成を示す図である。図22に例示される設定部12は、領域設定部12aおよび情報設定部12bの他に、優先度設定部12cを含む。
FIG. 22 is a diagram showing an internal configuration of a setting unit according to the second modification. The setting
優先度設定部12cは、入力装置160への入力に従って、領域設定部12aによって設定された複数の領域の各々について優先度を設定する。優先度設定部12cは、領域ごとに設定した優先度を領域情報104に含める。
The
例えば、図2に示すコンテナ2の場合、領域5に位置するワーク1は、領域4a〜4hに位置するワーク1よりも壁面3a〜3dのいずれかへ接触するリスクが低い。そのため、ユーザは、領域5について、領域4a〜4hの優先度よりも高い優先度を入力装置160に入力すればよい。これにより、優先度設定部12cは、領域5の優先度を領域4a〜4hの優先度よりも高く設定する。
For example, in the case of the
図21に示すコンテナ2aの場合、底面に垂直な壁面3e,3f近傍のワークは、底面とのなす角度が鈍角となるように傾斜している壁面3g,3h近傍のワークよりも、壁面へ接触するリスクが低い。そのため、ユーザは、壁面3e,3fに隣接する領域について、相対的に低い優先度を入力装置160に入力すればよい。
In the case of the
図23は、変形例2において生成された領域情報の一例を示す図である。図23には、図21に示すコンテナ2aに対して生成された領域情報104が示される。図23に示されるように、壁面から最も離れた領域5aの優先度が最も高い「1」に設定されている。底面とのなす角度が鈍角となるように傾斜している壁面3g,3hの一方にのみ隣接している領域4m,4oの優先度が次に高い「2」に設定されている。壁面3g,3hの両方に隣接している領域4pの優先度が次に高い「3」に設定されている。底面に垂直な壁面3e,3fの一方にのみ隣接している領域4j,4lの優先度が次に高い「4」に設定されている。壁面3e,3fの一方と壁面3g,3hの一方とに隣接している領域4k,4nの優先度が次に高い「5」に設定されている。壁面3e,3fの両方に隣接している領域4iの優先度が最も低い「6」に設定されている。
FIG. 23 is a diagram showing an example of the area information generated in the modified example 2. FIG. 23 shows the
検出部15は、複数のワークを検出した場合、領域情報104を参照して、当該複数のワークの中から優先度の最も高い領域に位置するワークをピッキング対象として選択すればよい。これにより、ロボット300は、壁面との接触リスクの低いワークから順にピッキングすることができる。
When the
例えば、図19に示す例では、まず、凹部9aの上方に位置しているワーク1aがピッキングされる。次に、底面とのなす角度が鈍角となるように傾斜している壁面近傍に位置するワーク1cがピッキングされる。最後に、底面に垂直な壁面近傍に位置するワーク1bがピッキングされる。
For example, in the example shown in FIG. 19, first, the
(J−3.変形例3)
図6に示す例では、ワーク1の形状として、ワーク1の外接直方体の幅W、奥行きD、高さHが登録され、当該外接直方体に基づいてマージン幅Mが計算される。しかしながら、ピッキング動作では、ワーク1とエンドエフェクタ30とが一体となって移動する。そのため、ワーク1とワーク1を把持するエンドエフェクタ30の爪33との外接直方体の幅、奥行き、高さが登録され、当該外接直方体に基づいてマージン幅Mが計算されてもよい。これにより、エンドエフェクタ30の爪33と壁面との接触リスクを低減できる。
(J-3. Modification 3)
In the example shown in FIG. 6, the width W, depth D, and height H of the circumscribed rectangular parallelepiped of the
(J−4.変形例4)
上記の説明では、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と対象物の表面上の点との最大距離がマージン幅Mとして設定されるものとした。しかしながら、例えば、エンドエフェクタ30が1つの吸着パッドを用いてワーク1を吸着する場合、ワーク1に対する当該吸着パッドの吸着位置(保持位置)とワーク1の表面上の点との最大距離以上がマージン幅Mとして設定される。
(J-4. Modification 4)
In the above description, it is assumed that the maximum distance between the center point of the gripping position of the
(J−5.変形例5)
上記の説明では、領域4a〜4hに対応付けられた定義情報105は、コンテナ2の上端を通る平面7において、検出位置Pbから下した垂線の足である点Qと指定位置Pc2とから逃げ幅F1を示す(図10参照)。これにより、定義情報105によって指定位置Pc2が指定され、当該指定位置Pc2を通るように並進動作が定義される。
(J-5. Modification 5)
In the above description, the
しかしながら、領域4a〜4hに対応付けられた定義情報105は、壁面の上端から壁面の法線方向に沿った距離である逃げ幅F2(図10および図13参照)を示してもよい。この場合、平面7において、壁面の上端から壁面の法線方向に逃げ幅F2だけ離れた位置が指定位置Pc3として指定される。そして、定義情報105によって定義される並進動作は、検出位置Pbと指定位置Pc3とを通る直線または曲線に沿った動作となる。なお、逃げ幅F2は、距離DM1,Dm2,WM1,WM2(図8参照)以上に設定される。
However, the
(J−6.変形例6)
上記の説明では、領域4a〜4hに対応付けられた定義情報105は、ワーク1が通過すべき指定位置を示すものとした。しかしながら、領域4a〜4hの各々に対応付けられた定義情報105は、当該領域に隣接する壁面から遠ざかる方向を示してもよい。例えば、壁面3aに隣接する領域4aに対応付けられた定義情報105は、壁面3aおよび底面3zに直交する平面上において、壁面3aから遠ざかる上向きの方向を示してもよい。この場合、当該定義情報105によって定義される並進動作は、起点に対する終点の方向が定義情報105で示される方向に一致する動作である。なお、定義情報105によって定義される並進動作は、定義情報105で示される方向に沿った直線動作であってもよいし、ピッキング動作の起点から終点に向かってわずかにカーブする動作であってもよい。
(J-6. Modification 6)
In the above description, the
(J−7.変形例7)
上記の実施の形態では、対象となる壁面に隣接する領域に対して、当該壁面から離れる方向に移動する並進動作を定義する定義情報105が設定される。これにより、ピッキング動作において、対象となる壁面へのワークの接触リスクを低減できる。ただし、ワークを収容する容器の形状によっては、対象となる壁面へのワークの接触リスクを低減できたとしても、当該壁面とは異なる壁面へのワークの接触リスクが依然として高い場合がある。このような場合、当該異なる壁面への接触リスクを低減するために、ピッキング動作の回転成分が決定されてもよい。
(J-7. Modification 7)
In the above embodiment,
図24は、ワークを収容するコンテナのさらに別の例を示す平面図である。図25は、図24に示すコンテナを示す縦断面図である。 FIG. 24 is a plan view showing still another example of the container for accommodating the work. FIG. 25 is a vertical cross-sectional view showing the container shown in FIG. 24.
図24に例示されるコンテナ2bは、壁面3i,3j,3kを有する。コンテナ2b内の空間において壁面3iの法線方向に沿った長さは、直方体状のワーク1の対角線の長さよりも十分に長い。そのため、壁面3iに隣接する領域に対して、壁面3iから離れる方向の並進動作40を定義する定義情報105を設定することにより、ピッキング動作において壁面3iへのワークの接触リスクを低減できる。
The container 2b illustrated in FIG. 24 has wall surfaces 3i, 3j, 3k. The length of the
壁面3j,3kは壁面3iに隣り合う。壁面3j,3kは互いに対向している。壁面3jと壁面3kとの距離は、直方体状のワーク1の対角線の長さと同程度である。そのため、壁面3jから離れる方向にワーク1を並進動作させた場合、壁面3kにワーク1が接触する可能性が高まる。そこで、動作指令決定部16は、検出部15によって検出されたワーク1の姿勢に基づいて、ワーク1と壁面3j,3kとの最短距離が長くなるようにピッキング動作の回転成分を決定する。
The wall surfaces 3j and 3k are adjacent to the
例えば、動作指令決定部16は、検出部15によって検出された位置姿勢のワーク1をコンテナ2bの底面に平行な平面に投影し、投影部分の外接矩形を特定する。次に、動作指令決定部16は、特定した外接矩形の4つの頂点に内接する円90の中心Oを通り、かつ、コンテナ2bの底面の法線方向に平行な軸を回転軸として決定する。
For example, the operation
なお、動作指令決定部16は、ワーク1を把持するときの爪33が外接矩形の4つの頂点に内接する円の内部に位置するか否かを判定してもよい。動作指令決定部16は、判定結果が否を示す場合、ワーク1を把持するときの爪33が内部に含まれるように円90の位置およびサイズを補正し、補正後の円90の中心Oを通り、かつ、コンテナ2bの底面の法線方向に平行な軸を回転軸として決定してもよい。
The operation
次に、動作指令決定部16は、特定した外接矩形の長辺と壁面3j,3kとのなす角度を回転角度として計算するとともに、外接矩形の長辺を壁面3j,3kと平行にするための回転方向(図24に示す例では時計回りの方向)を決定する。動作指令決定部16は、決定した回転方向に回転角度だけ回転させる回転動作45をピッキング動作の回転成分として決定する。これにより、並進動作40により壁面3iとワーク1との接触リスクを低減するとともに、回転動作45により壁面3j,3kとワーク1との接触リスクを低減できる。
Next, the operation
<K.付記>
以上のように、本実施の形態および変形例は以下のような開示を含む。
<K. Addendum>
As described above, the present embodiment and the modified examples include the following disclosures.
(構成1)
容器(2,2a,2b)に収容された対象物(1)をピッキングするロボット(300)の動作を決定する装置(100)であって、
前記容器(2,2a,2b)内の空間において、互いに排他的な関係にある複数の領域(4a〜4p,5,5a)を設定するための領域設定部(12a)と、
前記複数の領域(4a〜4p,5,5a)の各々と対応付けて、前記ロボット(300)が有するエンドエフェクタ(30)の並進動作を定義する定義情報(105)を設定するための情報設定部(12b)と、
前記容器(2,2a,2b)を撮像することにより得られた画像に基づいて、前記対象物(1)の位置を検出するための検出部(15)と、
前記対象物(1)を保持してから前記対象物(1)を前記容器(2,2a,2b)外に搬送するまでの前記エンドエフェクタ(30)のピッキング動作を決定するための決定部(16)とを備え、
前記決定部(16)は、前記複数の領域(4a〜4p,5,5a)のうち前記検出部(15)によって検出された位置を含む領域に対応付けられた前記定義情報(105)によって定義される並進動作を前記ピッキング動作の並進成分として決定する、装置(100)。
(Structure 1)
A device (100) that determines the operation of a robot (300) that picks an object (1) housed in a container (2, 2a, 2b).
In the space inside the container (2,2a, 2b), a region setting unit (12a) for setting a plurality of regions (4a to 4p, 5, 5a) having an exclusive relationship with each other, and
Information setting for setting definition information (105) that defines the translational motion of the end effector (30) possessed by the robot (300) in association with each of the plurality of regions (4a to 4p, 5, 5a). Part (12b) and
A detection unit (15) for detecting the position of the object (1) based on an image obtained by imaging the container (2, 2a, 2b), and a detection unit (15).
A determination unit (30) for determining the picking operation of the end effector (30) from holding the object (1) to transporting the object (1) out of the container (2, 2a, 2b). 16) and
The determination unit (16) is defined by the definition information (105) associated with the region including the position detected by the detection unit (15) among the plurality of regions (4a to 4p, 5, 5a). The device (100) that determines the translational motion to be performed as the translational component of the picking motion.
(構成2)
前記複数の領域(4a〜4p,5,5a)は、前記容器(2,2a,2b)内における第1対象壁面(3a〜3i)に隣接する第1領域(4a〜4p)と、前記第1領域よりも前記第1対象壁面(3a〜3i)から離れた位置の第2領域(5,5a)とを含む、構成1に記載の装置(100)。
(Structure 2)
The plurality of regions (4a to 4p, 5, 5a) are the first region (4a to 4p) adjacent to the first target wall surface (3a to 3i) in the container (2, 2a, 2b) and the first region (4a to 4p). The apparatus (100) according to
(構成3)
前記領域設定部(12a)は、前記第1対象壁面(3a〜3i)からの距離情報を用いて前記第1領域(4a〜4p)および前記第2領域(5,5a)を設定する、構成2に記載の装置(100)。
(Structure 3)
The area setting unit (12a) sets the first area (4a to 4p) and the second area (5, 5a) using the distance information from the first target wall surface (3a to 3i). 2. The device (100) according to 2.
(構成4)
前記第1領域(4a〜4p)に対応付けられた第1定義情報は、前記第1対象壁面(30a〜30i)から遠ざかる第1方向を示し、
前記第1定義情報によって定義される並進動作は、起点に対する終点の方向が前記第1方向に一致する動作である、構成2または3に記載の装置(100)。
(Structure 4)
The first definition information associated with the first region (4a to 4p) indicates a first direction away from the first target wall surface (30a to 30i).
The device (100) according to
(構成5)
前記第1領域(4a〜4p)に対応付けられた第1定義情報は、前記対象物(1)が通過すべき指定位置を指定するための情報であり、
前記第1定義情報によって定義される並進動作は、前記検出された位置と前記指定位置とを通る直線または曲線に沿った動作である、構成2または3に記載の装置(100)。
(Structure 5)
The first definition information associated with the first region (4a to 4p) is information for designating a designated position through which the object (1) should pass.
The device (100) according to
(構成6)
前記指定位置は、前記検出された位置に応じて指定される、構成5に記載の装置(100)。
(Structure 6)
The device (100) according to
(構成7)
前記第1領域(4a〜4p)は、前記第1対象壁面(3a〜3i)から第1距離以内であり、
前記指定位置は、前記第1対象壁面(3a〜3i)の上端から前記第1対象壁面の法線方向に沿って第2距離だけ離れた位置であり、
前記第2距離は前記第1距離以上である、構成5に記載の装置(100)。
(Structure 7)
The first region (4a to 4p) is within the first distance from the first target wall surface (3a to 3i).
The designated position is a position separated by a second distance from the upper end of the first target wall surface (3a to 3i) along the normal direction of the first target wall surface.
The device (100) according to
(構成8)
前記第2領域(5,5a)に対応付けられた第2定義情報は、前記第1対象壁面(3a〜3i)および前記容器(2,2a,2b)の底面(3z)に直交する平面上において前記第1対象壁面(3a〜3i)に平行な上向きの方向、前記底面(3z)の法線方向、鉛直方向上向き、および、これらの方向のいずれかに対して前記第1対象壁面(3a〜3i)から離れるように傾斜した方向、のいずれかである第2方向を示し、
前記第2定義情報によって定義される並進動作は、前記第2方向に沿った動作である、構成2から7のいずれかに記載の装置(100)。
(Structure 8)
The second definition information associated with the second region (5, 5a) is on a plane orthogonal to the first target wall surface (3a to 3i) and the bottom surface (3z) of the container (2, 2a, 2b). In the upward direction parallel to the first target wall surface (3a to 3i), the normal direction of the bottom surface (3z), the vertical upward direction, and the first target wall surface (3a) in any of these directions. Indicates a second direction, which is one of the directions inclined away from ~ 3i).
The device (100) according to any one of
(構成9)
前記容器(2,2a,2b)は、水平面に対して傾斜しており、
前記領域設定部(12a)は、前記容器(2,2a,2b)の水平面に対する傾斜方向および傾斜角度に応じて前記複数の領域の少なくとも1つのサイズを調整する、構成1から8のいずれかに記載の装置(100)。
(Structure 9)
The container (2,2a, 2b) is inclined with respect to the horizontal plane.
The region setting unit (12a) has one of
(構成10)
前記領域設定部(12a)は、
前記エンドエフェクタ(30)による前記対象物(1)の保持位置と前記対象物(1)の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面(3a〜3i)から前記第1距離以内の領域を前記第1領域(4a〜4p)として設定する、構成3に記載の装置(100)。
(Structure 10)
The area setting unit (12a) is
A first distance equal to or greater than the maximum distance between the holding position of the object (1) by the end effector (30) and a point on the surface of the object (1) is set.
The device (100) according to
(構成11)
前記エンドエフェクタ(30)は、複数の爪(33)を有し、
前記領域設定部(12a)は、
前記複数の爪(33)による前記対象物(1)の保持位置の中心点と、前記対象物(1)に外接する直方体、または前記対象物(1)および前記対象物を保持する前記複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面(3a〜3i)から前記第1距離以内の領域を前記第1領域として設定する、構成3に記載の装置(100)。
(Structure 11)
The end effector (30) has a plurality of claws (33).
The area setting unit (12a) is
The center point of the holding position of the object (1) by the plurality of claws (33), a rectangular parallelepiped circumscribing the object (1), or the plurality of objects holding the object (1) and the object. Set a first distance that is greater than or equal to the maximum distance to a point on the surface of a rectangular parallelepiped that circumscribes the nail.
The device (100) according to
(構成12)
前記検出部(15)は、前記対象物(1)の姿勢をさらに検出し、
前記決定部(16)は、前記検出部(15)によって検出された姿勢に基づいて、前記対象物(1)と前記容器(2b)内における第2対象壁面(3j,3k)との最短距離が長くなるように前記ピッキング動作の回転成分をさらに決定する、構成1から11のいずれかに記載の装置(100)。
(Structure 12)
The detection unit (15) further detects the posture of the object (1) and further detects it.
The determination unit (16) is the shortest distance between the object (1) and the second target wall surface (3j, 3k) in the container (2b) based on the posture detected by the detection unit (15). The apparatus (100) according to any one of
(構成13)
前記複数の領域(4a〜4p,5,5a)の各々の優先度を設定するための優先度設定部(12c)をさらに備え、
前記容器(2,2a,2b)には複数の物体(1)が収容されており、
前記検出部(15)は、
前記複数の物体(1)の各々の位置を検出し、
前記複数の物体(1)のうち、前記優先度の最も高い領域に属する物体を前記対象物(1)として決定する、構成1から12のいずれかに記載の装置(100)。
(Structure 13)
A priority setting unit (12c) for setting the priority of each of the plurality of regions (4a to 4p, 5, 5a) is further provided.
A plurality of objects (1) are housed in the container (2, 2a, 2b).
The detection unit (15)
Detecting the position of each of the plurality of objects (1),
The device (100) according to any one of
(構成14)
容器(2,2a,2b)に収容された対象物(1)をピッキングするロボット(300)の動作を決定する方法であって、
前記容器(2,2a,2b)内の空間において、互いに排他的な関係にある複数の領域(4a〜4p,5,5a)を設定するステップと、
前記複数の領域(4a〜4p,5,5a)の各々と対応付けて、前記ロボット(300)が有するエンドエフェクタ(30)の並進動作を定義する定義情報(105)を設定するステップと、
前記容器(2,2a,2b)を撮像することにより得られた画像に基づいて、前記対象物(1)の位置を検出するステップと、
前記対象物(1)を保持してから前記対象物(1)を前記容器(2,2a,2b)外に搬送するまでの前記エンドエフェクタ(30)のピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域(4a〜4p,5,5a)のうち前記検出部(15)によって検出された位置を含む領域に対応付けられた前記定義情報(105)によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップを含む、方法。
(Structure 14)
A method of determining the operation of a robot (300) that picks an object (1) housed in a container (2, 2a, 2b).
In the space inside the container (2,2a, 2b), a step of setting a plurality of regions (4a to 4p, 5, 5a) having an exclusive relationship with each other, and
A step of setting definition information (105) that defines a translational motion of the end effector (30) possessed by the robot (300) in association with each of the plurality of regions (4a to 4p, 5, 5a).
A step of detecting the position of the object (1) based on the image obtained by imaging the container (2, 2a, 2b), and
A step of determining the picking operation of the end effector (30) from holding the object (1) to transporting the object (1) out of the container (2, 2a, 2b) is provided.
The step of determining the picking operation is
The picking operation is a translation operation defined by the definition information (105) associated with the region including the position detected by the detection unit (15) among the plurality of regions (4a to 4p, 5, 5a). A method comprising the step of determining as a translational component of.
(構成15)
容器に収容された対象物をピッキングするロボットの動作を決定する方法をコンピュータに実行させるプログラムであって、
前記方法は、
前記容器(2,2a,2b)内の空間において、互いに排他的な関係にある複数の領域(4a〜4p,5,5a)を設定するステップと、
前記複数の領域(4a〜4p,5,5a)の各々と対応付けて、前記ロボット(300)が有するエンドエフェクタ(30)の並進動作を定義する定義情報(105)を設定するステップと、
前記容器(2,2a,2b)を撮像することにより得られた画像に基づいて、前記対象物(1)の位置を検出するステップと、
前記対象物(1)を保持してから前記対象物(1)を前記容器(2,2a,2b)外に搬送するまでの前記エンドエフェクタ(30)のピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域(4a〜4p,5,5a)のうち前記検出部(15)によって検出された位置を含む領域に対応付けられた前記定義情報(105)を前記ピッキング動作の並進成分として決定するステップとを含む、プログラム。
(Structure 15)
A program that causes a computer to execute a method of determining the movement of a robot that picks an object contained in a container.
The method is
In the space inside the container (2, 2a, 2b), a step of setting a plurality of regions (4a to 4p, 5, 5a) having an exclusive relationship with each other, and
A step of setting definition information (105) that defines a translational motion of the end effector (30) possessed by the robot (300) in association with each of the plurality of regions (4a to 4p, 5, 5a).
A step of detecting the position of the object (1) based on an image obtained by imaging the container (2, 2a, 2b), and
A step of determining the picking operation of the end effector (30) from holding the object (1) to transporting the object (1) out of the container (2, 2a, 2b) is provided.
The step of determining the picking operation is
The definition information (105) associated with the region including the position detected by the detection unit (15) among the plurality of regions (4a to 4p, 5, 5a) is determined as the translation component of the picking operation. A program that includes steps.
本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 Although embodiments of the present invention have been described, it should be considered that the embodiments disclosed this time are exemplary in all respects and not restrictive. The scope of the present invention is indicated by the scope of claims, and is intended to include all modifications within the meaning and scope equivalent to the scope of claims.
1,1a〜1c ワーク、2,2a,2b コンテナ、3a〜3k 壁面、3z 底面、4a〜4p,5,5a 領域、7 平面、8 上端面、8a〜8d 検出マーク、9a〜9d 凹部、10 記憶部、11 ヘッド制御部、12 設定部、12a 領域設定部、12b 情報設定部、12c 優先度設定部、13 画像処理部、14 3D画像生成部、15 検出部、16 動作指令決定部、17 通信部、30 エンドエフェクタ、31 多関節アーム、32 ベース、33 爪、60,65,69,72,79 画面、61,66 自動登録ボタン、62,67 手動登録ボタン、63,64,68〜70,75,81 入力欄、71 表示欄、73 自動設定ボタン、74 手動設定ボタン、76 画像、77 枠線、78 カーソル、80 ボタン群、80a,80b ラジオボタン、100 画像処理装置、101a,101b CADデータ、102 テンプレートデータ、103 画像データ、104 領域情報、105 定義情報、106 メモリカード、110 CPU、112 メインメモリ、114 ハードディスク、116 計測ヘッドインターフェース、116a 画像バッファ、118 入力インターフェース、120 表示コントローラ、124 通信インターフェース、126 データリーダ/ライタ、128 バス、150 ディスプレイ、160 入力装置、200 ロボットコントローラ、300 ロボット、400 計測ヘッド、401 投影部、402 撮像部、RP 外接直方体、SYS 制御システム。 1,1a to 1c workpiece, 2,2a, 2b container, 3a to 3k wall surface, 3z bottom surface, 4a to 4p, 5,5a area, 7 flat surface, 8 top surface, 8a to 8d detection mark, 9a to 9d recess, 10 Storage unit, 11 head control unit, 12 setting unit, 12a area setting unit, 12b information setting unit, 12c priority setting unit, 13 image processing unit, 14 3D image generation unit, 15 detection unit, 16 operation command determination unit, 17 Communication unit, 30 end effector, 31 articulated arm, 32 base, 33 claws, 60, 65, 69, 72, 79 screen, 61, 66 automatic registration button, 62, 67 manual registration button, 63, 64, 68 to 70 , 75, 81 Input field, 71 Display field, 73 Automatic setting button, 74 Manual setting button, 76 image, 77 border, 78 cursor, 80 button group, 80a, 80b radio button, 100 image processing device, 101a, 101b CAD Data, 102 template data, 103 image data, 104 area information, 105 definition information, 106 memory card, 110 CPU, 112 main memory, 114 hard disk, 116 measurement head interface, 116a image buffer, 118 input interface, 120 display controller, 124 Communication interface, 126 data reader / writer, 128 bus, 150 display, 160 input device, 200 robot controller, 300 robot, 400 measuring head, 401 projection unit, 402 imaging unit, RP external rectangular body, SYS control system.
Claims (15)
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定する、装置。 A device that determines the movement of a robot that picks an object contained in a container.
In the space inside the container, an area setting unit for setting a plurality of areas having an exclusive relationship with each other, and an area setting unit.
An information setting unit for setting definition information for defining the translational motion of the end effector possessed by the robot in association with each of the plurality of regions.
A detection unit for detecting the position of the object based on the image obtained by imaging the container, and
A determination unit for determining the picking operation of the end effector from holding the object to transporting the object out of the container is provided.
The determination unit is an apparatus that determines as a translation component of the picking operation a translational motion defined by the definition information associated with a region including a position detected by the detection unit among the plurality of regions.
前記第1定義情報によって定義される並進動作は、起点に対する終点の方向が前記第1方向に一致する動作である、請求項2または3に記載の装置。 The first definition information associated with the first region indicates a first direction away from the first target wall surface.
The device according to claim 2 or 3, wherein the translational operation defined by the first definition information is an operation in which the direction of the end point with respect to the start point coincides with the first direction.
前記第1定義情報によって定義される並進動作は、前記検出された位置と前記指定位置とを通る直線または曲線に沿った動作である、請求項2または3に記載の装置。 The first definition information associated with the first region is information for designating a designated position through which the object should pass.
The device according to claim 2 or 3, wherein the translational motion defined by the first definition information is an motion along a straight line or a curve passing through the detected position and the designated position.
前記指定位置は、前記第1対象壁面の上端から前記第1対象壁面の法線方向に沿って第2距離だけ離れた位置であり、
前記第2距離は前記第1距離以上である、請求項5に記載の装置。 The first region is within a first distance from the first target wall surface.
The designated position is a position separated from the upper end of the first target wall surface by a second distance along the normal direction of the first target wall surface.
The device according to claim 5, wherein the second distance is equal to or greater than the first distance.
前記第2定義情報によって定義される並進動作は、前記第2方向に沿った動作である、請求項2から7のいずれか1項に記載の装置。 The second definition information associated with the second region includes an upward direction parallel to the first target wall surface on a plane orthogonal to the first target wall surface and the bottom surface of the container, and a normal direction of the bottom surface. Indicates a second direction, which is either an upward direction in the vertical direction or a direction inclined so as to be away from the first target wall surface with respect to any of these directions.
The device according to any one of claims 2 to 7, wherein the translational operation defined by the second definition information is an operation along the second direction.
前記領域設定部は、前記容器の水平面に対する傾斜方向および傾斜角度に応じて前記複数の領域の少なくとも1つのサイズを調整する、請求項1から8のいずれか1項に記載の装置。 The container is tilted with respect to the horizontal plane
The device according to any one of claims 1 to 8, wherein the region setting unit adjusts the size of at least one of the plurality of regions according to the tilt direction and tilt angle of the container with respect to the horizontal plane.
前記エンドエフェクタによる前記対象物の保持位置と前記対象物の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面から前記第1距離以内の領域を前記第1領域として設定する、請求項3に記載の装置。 The area setting unit
A first distance equal to or greater than the maximum distance between the holding position of the object by the end effector and a point on the surface of the object is set.
The device according to claim 3, wherein a region within the first distance from the first target wall surface is set as the first region.
前記領域設定部は、
前記複数の爪による前記対象物の保持位置の中心点と、前記対象物に外接する直方体、または前記対象物および前記対象物を保持する前記複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面から前記第1距離以内の領域を前記第1領域として設定する、請求項3に記載の装置。 The end effector has a plurality of claws and
The area setting unit
A center point of a holding position of the object by the plurality of claws and a point on the surface of the rectangular parallelepiped circumscribing the object or the rectangular parallelepiped circumscribing the object and the plurality of claws holding the object. Set the first distance above the maximum distance,
The device according to claim 3, wherein a region within the first distance from the first target wall surface is set as the first region.
前記決定部は、前記検出部によって検出された姿勢に基づいて、前記対象物と前記容器内における第2対象壁面との最短距離が長くなるように前記ピッキング動作の回転成分をさらに決定する、請求項1から11のいずれか1項に記載の装置。 The detection unit further detects the posture of the object and
Based on the posture detected by the detection unit, the determination unit further determines the rotation component of the picking operation so that the shortest distance between the object and the second target wall surface in the container becomes long. Item 2. The apparatus according to any one of Items 1 to 11.
前記容器には複数の物体が収容されており、
前記検出部は、
前記複数の物体の各々の位置を検出し、
前記複数の物体のうち、前記優先度の最も高い領域に属する物体を前記対象物として決定する、請求項1から12のいずれか1項に記載の装置。 A priority setting unit for setting the priority of each of the plurality of regions is further provided.
A plurality of objects are contained in the container.
The detection unit
Detecting the position of each of the plurality of objects,
The device according to any one of claims 1 to 12, wherein an object belonging to the region having the highest priority among the plurality of objects is determined as the object.
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップと、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップと、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するステップと、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域のうち検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップを含む、方法。 A method of determining the behavior of a robot that picks an object contained in a container.
In the space inside the container, a step of setting a plurality of regions having an exclusive relationship with each other, and
A step of setting definition information that defines the translational motion of the end effector possessed by the robot in association with each of the plurality of regions.
A step of detecting the position of the object based on the image obtained by imaging the container, and
A step of determining a picking operation of the end effector from holding the object to transporting the object out of the container is provided.
The step of determining the picking operation is
A method comprising the step of determining a translational motion defined by the definition information associated with a region including a detected position among the plurality of regions as a translational component of the picking motion.
前記方法は、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップと、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップと、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するステップと、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域のうち検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップとを含む、プログラム。 A program that causes a computer to execute a method of determining the movement of a robot that picks an object contained in a container.
The method is
In the space inside the container, a step of setting a plurality of regions having an exclusive relationship with each other, and
A step of setting definition information that defines the translational motion of the end effector possessed by the robot in association with each of the plurality of regions.
A step of detecting the position of the object based on the image obtained by imaging the container, and
A step of determining a picking operation of the end effector from holding the object to transporting the object out of the container is provided.
The step of determining the picking operation is
A program including a step of determining a translational motion defined by the definition information associated with a region including a detected position among the plurality of regions as a translational component of the picking motion.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019137588A JP7331527B2 (en) | 2019-07-26 | 2019-07-26 | Apparatus, method and program for determining robot motion |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019137588A JP7331527B2 (en) | 2019-07-26 | 2019-07-26 | Apparatus, method and program for determining robot motion |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021020266A true JP2021020266A (en) | 2021-02-18 |
JP7331527B2 JP7331527B2 (en) | 2023-08-23 |
Family
ID=74573544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019137588A Active JP7331527B2 (en) | 2019-07-26 | 2019-07-26 | Apparatus, method and program for determining robot motion |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7331527B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022235658A1 (en) * | 2021-05-04 | 2022-11-10 | Mujin, Inc. | Method and computing system for performing robot motion planning and repository detection |
CN116175540A (en) * | 2021-11-28 | 2023-05-30 | 梅卡曼德(北京)机器人科技有限公司 | Grabbing control method, grabbing control device, electronic equipment and storage medium |
CN116197888A (en) * | 2021-11-28 | 2023-06-02 | 梅卡曼德(北京)机器人科技有限公司 | Method and device for determining position of article, electronic equipment and storage medium |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013132742A (en) * | 2011-12-27 | 2013-07-08 | Canon Inc | Object gripping apparatus, control method for object gripping apparatus, and program |
JP2017042859A (en) * | 2015-08-25 | 2017-03-02 | キヤノン株式会社 | Picking system, and processing device and method therefor and program |
WO2017130286A1 (en) * | 2016-01-26 | 2017-08-03 | 富士機械製造株式会社 | Job creation device, work system and work robot control device |
JP2018187687A (en) * | 2017-04-28 | 2018-11-29 | ファナック株式会社 | Article take-out system |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5403086B2 (en) | 2012-02-27 | 2014-01-29 | 富士通株式会社 | Movement path generation method, movement path generation apparatus, movement path generation program, robot arm control apparatus, and robot arm control program |
-
2019
- 2019-07-26 JP JP2019137588A patent/JP7331527B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013132742A (en) * | 2011-12-27 | 2013-07-08 | Canon Inc | Object gripping apparatus, control method for object gripping apparatus, and program |
JP2017042859A (en) * | 2015-08-25 | 2017-03-02 | キヤノン株式会社 | Picking system, and processing device and method therefor and program |
WO2017130286A1 (en) * | 2016-01-26 | 2017-08-03 | 富士機械製造株式会社 | Job creation device, work system and work robot control device |
JP2018187687A (en) * | 2017-04-28 | 2018-11-29 | ファナック株式会社 | Article take-out system |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022235658A1 (en) * | 2021-05-04 | 2022-11-10 | Mujin, Inc. | Method and computing system for performing robot motion planning and repository detection |
CN116175540A (en) * | 2021-11-28 | 2023-05-30 | 梅卡曼德(北京)机器人科技有限公司 | Grabbing control method, grabbing control device, electronic equipment and storage medium |
CN116197888A (en) * | 2021-11-28 | 2023-06-02 | 梅卡曼德(北京)机器人科技有限公司 | Method and device for determining position of article, electronic equipment and storage medium |
CN116175540B (en) * | 2021-11-28 | 2023-11-10 | 梅卡曼德(北京)机器人科技有限公司 | Grabbing control method, device, equipment and medium based on position and orientation |
CN116197888B (en) * | 2021-11-28 | 2023-12-19 | 梅卡曼德(北京)机器人科技有限公司 | Method and device for determining position of article, electronic equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
JP7331527B2 (en) | 2023-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6427972B2 (en) | Robot, robot system and control device | |
JP7331527B2 (en) | Apparatus, method and program for determining robot motion | |
US10363664B2 (en) | Information processing apparatus, information processing method, and recording medium | |
US10279473B2 (en) | Image processing device, image processing method, and computer program | |
JP6984633B2 (en) | Devices, methods and programs that detect the position and orientation of an object | |
JP6879238B2 (en) | Work picking device and work picking method | |
US20150127162A1 (en) | Apparatus and method for picking up article randomly piled using robot | |
US8896688B2 (en) | Determining position in a projection capture system | |
JP2013069273A (en) | Motion detection method of input body and input device using the same | |
JP2010247959A (en) | Box-shaped work recognizing device and method | |
JP6758903B2 (en) | Information processing equipment, information processing methods, programs, systems, and article manufacturing methods | |
JP6973444B2 (en) | Control system, information processing device and control method | |
JP5544464B2 (en) | 3D position / posture recognition apparatus and method for an object | |
JP2021024052A (en) | Image processing device, image processing method and program | |
JP2011065399A (en) | Simulation device, simulation method, and simulation program | |
JP2021079464A (en) | Setting device, setting method and program | |
WO2020047575A1 (en) | Vision system for a robotic machine | |
JP2008294065A (en) | Mounting method and mounting device for electronic component | |
JP4707423B2 (en) | Component position detection method and apparatus | |
JP6618301B2 (en) | Information processing apparatus, control method therefor, program, and storage medium | |
JP4073995B2 (en) | Electronic component position detection method | |
JP2022017738A (en) | Image processing apparatus | |
JP5703890B2 (en) | Recognition object, object recognition apparatus and program, object recognition system | |
JP2021091055A (en) | measuring device | |
US12002240B2 (en) | Vision system for a robotic machine |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220513 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230327 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230418 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20230530 |
|
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: 20230711 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230724 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7331527 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |