JP7331527B2 - Apparatus, method and program for determining robot motion - Google Patents

Apparatus, method and program for determining robot motion Download PDF

Info

Publication number
JP7331527B2
JP7331527B2 JP2019137588A JP2019137588A JP7331527B2 JP 7331527 B2 JP7331527 B2 JP 7331527B2 JP 2019137588 A JP2019137588 A JP 2019137588A JP 2019137588 A JP2019137588 A JP 2019137588A JP 7331527 B2 JP7331527 B2 JP 7331527B2
Authority
JP
Japan
Prior art keywords
container
wall surface
motion
definition information
setting
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
JP2019137588A
Other languages
Japanese (ja)
Other versions
JP2021020266A (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.)
Omron Corp
Original Assignee
Omron Corp
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 Omron Corp filed Critical Omron Corp
Priority to JP2019137588A priority Critical patent/JP7331527B2/en
Publication of JP2021020266A publication Critical patent/JP2021020266A/en
Application granted granted Critical
Publication of JP7331527B2 publication Critical patent/JP7331527B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本技術は、ロボットの動作を決定する装置、方法およびプログラムに関する。 The present technology relates to an apparatus, method, and program for determining motion of a robot.

従来、視覚センサを用いて、容器の中に収容された対象物を把持して取り出すピッキング動作を行なうロボットが知られている。容器の壁面近傍に位置する対象物に対するピッキング動作の際に、対象物が容器に接触し、対象物がロボットから落下する可能性がある。 2. Description of the Related Art Conventionally, robots are known that use a visual sensor to perform a picking operation of gripping and taking out an object contained in a container. When picking an object positioned near the wall surface of the container, the object may come into contact with the container and fall from the robot.

特開2012-106335(特許文献1)には、ロボットアームと、ロボットアームの移動の障害となる障害物との間の干渉チェックを行ない、干渉を免れた有効な移動経路のみを抽出した有効移動経路網を作成する技術が開示されている。当該技術を用いることにより、対象物と容器との接触を防止できる。 Japanese Patent Application Laid-Open No. 2012-106335 (Patent Document 1) discloses an effective movement method in which an interference check is performed between a robot arm and obstacles that hinder the movement of the robot arm, and only effective movement paths that avoid interference are extracted. A technique for creating a route network is disclosed. By using the technology, contact between the object and the container can be prevented.

特開2012-106335号公報JP 2012-106335 A

しかしながら、特許文献1に記載の技術では、ロボットアームと障害物との干渉チェックのために複雑な演算が実行される。そのため、移動経路を生成するための計算コストが増加する。 However, with the technique described in Patent Document 1, complicated calculations are executed to check for interference between the robot arm and the obstacle. Therefore, the computational cost for generating the moving route increases.

本発明は、上記の問題に鑑みてなされたものであり、その目的は、計算コストの増加を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる装置、方法およびプログラムを提供することである。 The present invention has been made in view of the above problems, and an object of the present invention is to provide an apparatus, method, and program capable of determining the motion of a robot that picks up an object housed in a container while suppressing an increase in computational cost. is to provide

本開示の一例によれば、容器に収容された対象物をピッキングするロボットの動作を決定する装置は、領域設定部と、情報設定部と、検出部と、決定部とを備える。領域設定部は、容器内の空間において、互いに排他的な関係にある複数の領域を設定する。情報設定部は、複数の領域の各々と対応付けて、ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定する。検出部は、容器を撮像することにより得られた画像に基づいて、対象物の位置を検出する。決定部は、対象物を保持してから対象物を容器外に搬送するまでのエンドエフェクタのピッキング動作を決定する。決定部は、複数の領域のうち検出部によって検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作をピッキング動作の並進成分として決定する。 According to one example of the present disclosure, an apparatus for determining an operation of a robot for picking an object housed in a container includes an area setting unit, an information setting unit, a detection unit, and a determination unit. The region setting unit sets a plurality of mutually exclusive regions in the space inside the container. The information setting unit sets definition information that defines the translational motion of the end effector of 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 a picking operation of the end effector from holding the object to conveying the object out of the container. The determining unit determines, as a translational component of the picking motion, a translational motion defined by definition information associated with a region including the position detected by the detecting unit among the plurality of regions.

この開示によれば、装置は、複雑な計算を行なうことなく、予め設定した定義情報を用いて、対象物に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 According to this disclosure, the device can easily determine the translational component of the picking motion with respect to the object using preset definition information without performing complicated calculations. As a result, it is possible to determine the motion of the robot that picks up the object housed in the container while suppressing an increase in calculation cost.

上述の開示において、複数の領域は、容器内における第1対象壁面に隣接する第1領域と、第1領域よりも第1対象壁面から離れた位置の第2領域とを含む。 In the above disclosure, the plurality of regions includes a first region adjacent to the first target wall surface within 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, the definition information for determining the translational component of the picking motion can be set separately for each of the first area and the second area. That is, for each of the first area and the second area, definition information that defines a translational motion suitable for that area can be set.

上述の開示において、領域設定部は、第1対象壁面からの距離情報を用いて第1領域および第2領域を設定する。この開示によれば、第1領域および第2領域を容易に設定できる。 In the above disclosure, the area setting section sets the first area and the second area using distance information from the first target wall surface. According to this disclosure, the first area and the second area can be easily set.

例えば、第1領域に対応付けられた第1定義情報は、第1対象壁面から遠ざかる第1方向を示す。第1定義情報によって定義される並進動作は、起点に対する終点の方向が第1方向に一致する動作である。 For example, the first definition information associated with the first area indicates the first direction away from the first target wall surface. A translational motion defined by the first definition information is a motion in which the direction of the end point with respect to the starting point coincides with the first direction.

あるいは、第1領域に対応付けられた第1定義情報は、対象物が通過すべき指定位置を指定するための情報であってもよい。第1定義情報によって定義される並進動作は、検出された位置と指定位置とを通る直線または曲線に沿った動作である。 Alternatively, the first definition information associated with the first area may be information for designating a designated position through which the object should pass. The translational motion defined by the first definition information is motion along a straight line or curve passing through the detected position and the designated position.

これらの開示によれば、第1定義情報で示される方向または指定位置に従って、ピッキング動作の並進成分が決定される。 According to these disclosures, the translational component of the picking motion is determined according to the direction or specified 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 designated.

上述の開示において、第1領域は、第1対象壁面から第1距離以内である。指定位置は、第1対象壁面の上端から第1対象壁面の法線方向に沿って第2距離だけ離れた位置であってもよい。第2距離は第1距離以上である。 In the above disclosure, the first area is within a first distance from the first target wall surface. The designated position may be a position a second distance away 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 on a plane orthogonal to the first target wall surface and the bottom surface of the container, the normal to the bottom surface A second direction is shown which is either a direction, vertically upwards, and a direction slanted away from the first target wall surface with respect to any of these directions. A translational motion defined by the second definition information is a motion along the second direction.

第2領域は、第1対象壁面から離れた位置にある。そのため、上記の第2方向に沿ったピッキング動作を行なっても、第1対象壁面と対象物との接触リスクが低い。 The second area 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 object wall surface and the object is low.

上述の開示において、容器は、水平面に対して傾斜している。領域設定部は、容器の水平面に対する傾斜方向および傾斜角度に応じて複数の領域の少なくとも1つのサイズを調整する。この開示によれば、傾斜に応じて領域のサイズが適宜自動的に調整される。これにより、ユーザの手間を削減できる。 In the above disclosure the container is inclined 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 accordingly depending on the slope. As a result, the user's trouble 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 position where the object is held by the end effector and a 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 region.

あるいは、エンドエフェクタは、複数の爪を有する。なお、「爪」は、対象物を保持(把持)する際に、対象物に接触する部位であり、「指」とも称される。領域設定部は、複数の爪による対象物の保持位置の中心点と、対象物に外接する直方体または対象物および対象物を保持する複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、第1対象壁面から第1距離以内の領域を第1領域として設定してもよい。 Alternatively, the end effector has multiple pawls. A “claw” is a part that comes into contact with an object when holding (grasping) the object, and is also called a “finger”. The area setting unit determines 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 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 extent of the first region is automatically set. As a result, the user's trouble can be reduced.

上述の開示において、検出部は、対象物の姿勢をさらに検出する。決定部は、検出部によって検出された姿勢に基づいて、対象物と容器内における第2対象壁面との最短距離が長くなるようにピッキング動作の回転成分をさらに決定する。 In the above disclosure, the detector further detects the orientation of the object. The determination unit further determines a rotation component of the picking motion so as to increase the shortest distance between the object and the second object wall surface in the container, based on the orientation detected by the detection unit.

この開示によれば、ピッキング動作における回転動作によって、第2対象壁面と対象物との接触リスクを低減できる。 According to this disclosure, it is possible to reduce the risk of contact between the second object wall surface and the object by rotating the picking operation.

上述の開示において、複数の領域の各々の優先度を設定するための優先度設定部をさらに備える。容器には複数の物体が収容されている。検出部は、複数の物体の各々の位置を検出し、複数の物体のうち、優先度の最も高い領域に属する物体を対象物として決定する。 The above disclosure further includes a priority setting unit for setting the priority of each of the plurality of areas. A container contains a plurality of objects. The detection unit detects the position of each of the plurality of objects, and determines the object belonging to the region with the highest priority among the plurality of objects as the target object.

この開示によれば、優先度設定部は、例えば、壁面との接触リスクの低い領域の優先度を高く設定できる。その結果、ロボットは、壁面との接触リスクの低い対象物から順にピッキングできる。 According to this disclosure, the priority setting unit can, for example, set a high priority for an area with a low risk of contact with a wall surface. As a result, the robot can pick objects in descending order of risk of contact with the wall surface.

本開示の一例によれば、容器に収容された対象物をピッキングするロボットの動作を決定する方法は、第1~第4のステップを備える。第1のステップは、容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップである。第2のステップは、複数の領域の各々と対応付けて、ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップである。第3のステップは、容器を撮像することにより得られた画像に基づいて、対象物の位置を検出するステップである。第4のステップは、対象物を保持してから対象物を容器外に搬送するまでのエンドエフェクのピッキング動作を決定するステップとを備える。第4のステップは、複数の領域のうち検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作をピッキング動作の並進成分として決定するステップを含む。 According to one example of the present disclosure, a method of determining a movement of a robot for picking an object contained in a container comprises first through fourth steps. The first step is to set a plurality of mutually exclusive regions in the space within the container. The second step is a step of setting definition information that defines the translational motion of the end effector of the robot in association with each of the plurality of regions. A third step is a step of detecting the position of the object based on the image obtained by imaging the container. A fourth step comprises determining an end effect picking motion from holding the object to transporting the object out of the container. A fourth step includes determining, as a translational component of the picking motion, a translational motion defined by definition information associated with a region including the detected position among the plurality of regions.

本開示の一例によれば、プログラムは、上記の方法をコンピュータに実行させる。これらの開示によっても、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 According to one example of the present disclosure, a program causes a computer to perform the above method. According to these disclosures as well, it is possible to determine the motion of a robot that picks up an object housed in a container while suppressing an increase in computational cost.

本開示によれば、計算コストの増大を抑制しながら、容器に収容された対象物をピッキングするロボットの動作を決定できる。 Advantageous Effects of Invention According to the present disclosure, it is possible to determine the motion of a robot that picks up an object housed in a container while suppressing an increase in computational cost.

実施の形態に係る制御システムの全体構成を示す概略図である。1 is a schematic diagram showing the overall configuration of a control system according to an embodiment; FIG. 実施の形態に係る画像処理装置におけるピッキング動作を決定する方法を説明する図である。FIG. 7 is a diagram illustrating a method of determining a picking action in the image processing device according to the embodiment; 図1に示す画像処理装置のハードウェア構成の一例を示す概略図である。2 is a schematic diagram showing an example of the hardware configuration of the image processing apparatus shown in FIG. 1; FIG. 図1に示す画像処理装置の機能構成の一例を示すブロック図である。2 is a block diagram showing an example of the functional configuration of the image processing apparatus shown in FIG. 1; FIG. コンテナの形状を登録するための画面例を示す図である。FIG. 10 is a diagram showing an example of a screen for registering the shape of a container; ワークの形状を登録するための画面例を示す図である。FIG. 10 is a diagram showing an example of a screen for registering the shape of a workpiece; マージン幅の設定方法の一例を示す図である。FIG. 10 is a diagram showing an example of a margin width setting method; 複数の領域を設定するための画面の一例を示す図である。FIG. 10 is a diagram showing an example of a screen for setting a plurality of areas; FIG. 定義情報を設定するための画面例を示す図である。FIG. 10 is a diagram showing an example of a screen for setting definition information; 領域4aに対応付けられた第1定義情報によって定義される並進動作を示す図である。It is a figure which shows the translational movement defined by the 1st definition information matched with the area|region 4a. 水平面に対して傾斜角度θだけ傾斜して設置されたコンテナを示す断面図である。FIG. 4 is a cross-sectional view showing a container installed at an inclination angle θ with respect to a horizontal plane; コンテナが水平面に対して傾斜して設置され、かつ、鉛直方向上向きを示す第2定義情報が設定されたときの領域の設定方法の一例を示す図である。FIG. 10 is a diagram showing an example of a region setting method when a container is installed tilted with respect to a horizontal plane and second definition information indicating an upward vertical direction is set; コンテナが水平面に対して傾斜して設置されているときの、領域4aに対応付けられた第1定義情報によって定義される並進動作を示す図である。FIG. 10 is a diagram showing the translational movement defined by the first definition information associated with the area 4a when the container is installed with an inclination with respect to the horizontal plane; コンテナの位置姿勢を検出する方法の一例を説明する図である。FIG. 4 is a diagram illustrating an example of a method for detecting the position and orientation of a container; コンテナの位置姿勢を検出する方法の別の例を説明する図である。FIG. 10 is a diagram illustrating another example of a method for detecting the position and orientation of a container; コンテナの位置姿勢を検出する方法のさらに別の例を説明する図である。FIG. 10 is a diagram illustrating still another example of a method of detecting the position and orientation of a container; 画像処理装置における設定処理の流れの一例を示すフローチャートである。6 is a flowchart showing an example of the flow of setting processing in the image processing apparatus; 画像処理装置におけるロボット動作の制御処理の流れの一例を示すフローチャートである。4 is a flowchart showing an example of the flow of control processing for robot motion in the image processing apparatus; ワークが収容される容器の別の例を示す平面図である。FIG. 10 is a plan view showing another example of a container in which works are accommodated; 図19のV-V線に沿った矢視断面図である。FIG. 20 is a cross-sectional view taken along line VV of FIG. 19; 図19に示す凹部9a付近を示す拡大平面図である。20 is an enlarged plan view showing the vicinity of a concave portion 9a shown in FIG. 19; FIG. 変形例2に係る設定部の内部構成を示す図である。FIG. 11 is a diagram showing an internal configuration of a setting unit according to modification 2; 変形例2において生成された領域情報の一例を示す図である。FIG. 12 is a diagram showing an example of area information generated in modification 2; ワークを収容するコンテナのさらに別の例を示す平面図である。FIG. 10 is a plan view showing still another example of a container that accommodates workpieces; 図24に示すコンテナを示す縦断面図である。FIG. 25 is a longitudinal sectional view showing the container shown in FIG. 24;

本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。 Embodiments of the present invention will be described in detail with reference to the drawings. The same or corresponding parts in the drawings are denoted 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 scene to which the present invention is applied will be described with reference to FIG. FIG. 1 is a schematic diagram showing the overall configuration of a control system according to an embodiment. A control system SYS exemplified in FIG. 1 is incorporated in a production line or the like, and controls pick-and-place operations for workpieces 1 accommodated in containers 2 that are containers. The container 2 illustrated in FIG. 1 is a rectangular parallelepiped box having a flat inner bottom surface and an inner wall surface perpendicular to the inner bottom surface. Workpieces 1 are bulk loaded in a container 2 . Therefore, the positions and orientations of the workpieces 1 within the container 2 are random.

図1に例示される制御システムSYSは、画像処理装置100と、ロボットコントローラ200と、ロボット300と、計測ヘッド400とを備える。画像処理装置100には、ディスプレイ150および入力装置160が接続されている。入力装置160は、例えばキーボードおよびマウスを含む。 The control system SYS illustrated in FIG. 1 includes an image processing device 100 , a robot controller 200 , a robot 300 and a measurement head 400 . A display 150 and an input device 160 are connected to the image processing apparatus 100 . Input device 160 includes, for example, a keyboard and mouse.

ロボット300は、ワーク1に対するピックアンドプレースを行なう。ロボット300は、ワーク1を保持するエンドエフェクタ30と、エンドエフェクタの位置姿勢を変更するための多関節アーム31と、多関節アーム31を支持するベース32とを含む。ロボット300の動作は、ロボットコントローラ200によって制御される。 The robot 300 picks and places the workpiece 1 . The robot 300 includes an end effector 30 that holds the workpiece 1 , an articulated arm 31 that changes the position and orientation of the end effector, and a base 32 that supports the articulated arm 31 . The operation of robot 300 is controlled by robot controller 200 .

図1に例示されるエンドエフェクタ30は、2つの爪33を有し、2つの爪33を用いてワーク1を把持する。なお、爪33は、ワーク1を保持(把持)する際に、ワーク1に接触する部位であり、「指」とも称される。なお、ワーク1の保持方法は、2つの爪を用いた把持に限定されない。例えば、エンドエフェクタ30は、3つの爪を用いてワークを把持してもよいし、吸着パッドを用いてワーク1を吸着してもよい。 The end effector 30 illustrated in FIG. 1 has two claws 33 and grips the workpiece 1 using the two claws 33 . The claws 33 are portions that come into contact with the work 1 when holding (gripping) the work 1, and are also called "fingers". The method of holding the workpiece 1 is not limited to gripping using two claws. For example, the end effector 30 may grip the work using three claws, or may suck the work 1 using a suction pad.

ロボットコントローラ200は、画像処理装置100からの動作指令を受けて、ロボット300の多関節アーム31を制御する。具体的には、ロボットコントローラ200は、エンドエフェクタ30がアプローチ動作、ピッキング動作およびプレース動作を行なうように多関節アーム31を制御する。「アプローチ動作」は、コンテナ2の外側の待機位置からワーク1の把持位置までのエンドエフェクタ30の動作である。「ピッキング動作」は、ワーク1を把持してからワーク1をコンテナ2の外側の退避位置に搬送するまでのエンドエフェクタ30の動作である。「プレース動作」は、ワーク1を退避位置から目標位置に搬送するまでのエンドエフェクタ30の動作である。 The robot controller 200 controls the articulated arm 31 of the robot 300 in response to motion commands from the image processing device 100 . Specifically, the robot controller 200 controls the articulated arm 31 so that the end effector 30 performs an approach motion, a picking motion, and a place motion. The “approach operation” is the operation of the end effector 30 from the waiting position outside the container 2 to the gripping position of the workpiece 1 . The “picking operation” is the operation of the end effector 30 from gripping the work 1 to conveying the work 1 to the retracted position outside the container 2 . A "place operation" is an operation of the end effector 30 to transport the workpiece 1 from the retracted position to the target position.

計測ヘッド400は、コンテナ2およびコンテナ2に収容されたワーク1が被写体となるように設置され、当該被写体を撮像する。計測ヘッド400は、投影部401と撮像部402とを備える。投影部401は、画像処理装置100からの指示に従って任意の投影パターン光を被写体に投影する。投影パターンは、例えば照射面内の所定方向に沿って明るさが周期的に変化するパターンである。撮像部402は、投影パターン光が投影された状態の被写体を撮像する。 The measurement head 400 is installed so that the container 2 and the work 1 accommodated in the container 2 are the subject, and images the subject. The measurement head 400 includes a projection section 401 and an imaging section 402 . The projection unit 401 projects arbitrary projection pattern light onto a subject in accordance with an instruction from the image processing apparatus 100 . The projection pattern is, for example, a pattern whose brightness periodically changes along a predetermined direction within the irradiation plane. The image capturing unit 402 captures an image of the subject on which the projection pattern light is projected.

投影部401は、主要なコンポーネントとして、例えば、LED(Light Emitting Diode)やハロゲンランプなどの光源と、投影部401の照射面の側に配置されたフィルタとを含む。フィルタは、後述するような三次元形状の計測に必要な投影パターン光を発生させるものであり、画像処理装置100からの指令に従って、面内の透光率を任意に変化させることができる。投影部401は、液晶またはDMD(Digital Mirror Device)と光源(LEDまたはレーザ光源など)とを用いた構成であってもよい。 The projection unit 401 includes, as main components, a light source such as an LED (Light Emitting Diode) or a halogen lamp, and a filter arranged on the irradiation surface side of the projection unit 401 . The filter generates projection pattern light necessary for measuring a three-dimensional shape as described later, and can arbitrarily change the in-plane light transmittance according to a command from the image processing apparatus 100 . The projection unit 401 may be configured using a liquid crystal or a DMD (Digital Mirror Device) and a light source (such as an LED or laser light source).

撮像部402は、主要なコンポーネントとして、例えば、レンズなどの光学系と、CCD(Coupled Charged Device)やCMOS(Complementary Metal Oxide Semiconductor)センサといった撮像素子とを含む。 The imaging unit 402 includes, as main components, for example, an optical system such as a lens, and an imaging device such as a CCD (Coupled Charged Device) or a CMOS (Complementary Metal Oxide Semiconductor) sensor.

画像処理装置100は、計測ヘッド400から受けた画像に基づいて、コンテナ2に収容されたワーク1の位置姿勢を検出する。画像処理装置100は、検出したワーク1の位置姿勢に基づいて、エンドエフェクタ30のアプローチ動作、ピッキング動作およびプレース動作を決定する。画像処理装置100は、決定した動作に対応する動作指令を生成し、生成した動作指令をロボットコントローラ200に出力する。ロボットコントローラ200は、動作指令に従って、画像処理装置100によって決定されたアプローチ動作、ピッキング動作およびプレース動作をロボット300に実行させる。 The image processing device 100 detects the position and orientation of the work 1 accommodated in the container 2 based on the image received from the measuring head 400 . The image processing apparatus 100 determines the approach motion, the picking motion, and the placing motion of the end effector 30 based on the detected position and orientation of the workpiece 1 . The image processing device 100 generates a motion command corresponding to the determined motion and outputs the generated motion command to the robot controller 200 . The robot controller 200 causes the robot 300 to perform the approach motion, the picking motion, and the placing motion determined by the image processing device 100 according to the motion command.

ワーク1を把持した後のピッキング動作は、ワーク1とコンテナ2との干渉を考慮して決定される必要がある。特許文献1に開示の技術を用いて、ワーク1とコンテナ2との干渉チェックを行なうことによりピッキング動作を決定することが考えられる。しかしながら、上述したように、干渉チェックのための計算コストが増加するという問題が生じる。そのため、本実施の形態に係る画像処理装置100は、以下のような処理に従ってピッキング動作を決定する。 The picking operation after gripping the workpiece 1 needs to be determined in consideration of the interference between the workpiece 1 and the container 2 . It is conceivable to determine the picking operation by performing an interference check between the workpiece 1 and the container 2 using the technology disclosed in Patent Document 1. However, as described above, the problem arises that the calculation cost for the interference check increases. Therefore, the image processing apparatus 100 according to the present embodiment determines the picking operation according to the following processing.

図2は、実施の形態に係る画像処理装置におけるピッキング動作を決定する方法を説明する図である。図2の上方にはコンテナ2の平面図が示され、図2の下方にはコンテナ2の縦断面図が示される。 FIG. 2 is a diagram explaining a method of determining a picking operation in the image processing apparatus according to the embodiment. A plan view of the container 2 is shown in the upper part of FIG. 2, and a longitudinal sectional view of the container 2 is shown in the lower part of FIG.

図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 image processing apparatus 100 sets a plurality of areas 4a to 4h, 5 that are mutually exclusive in the space within the container 2. In FIG. In the example shown in FIG. 2, the image processing apparatus 100 has regions 4a to 4d adjacent to the walls 3a to 3d of the container 2, a region 4e adjacent to both the walls 3a and 3b, and both walls 3b and 3c. An adjacent region 4f, a region 4g adjacent to both wall surfaces 3c and 3d, a region 4h adjacent to both wall surfaces 3d and 3a, and a central region 5 are set. Region 5 is farther from wall surfaces 3a-3d than regions 4a-4d, respectively.

画像処理装置100は、複数の領域4a~4h,5の各々と対応付けて、エンドエフェクタ30の並進動作を定義する定義情報をさらに設定する。コンテナ2のいずれかの壁面に隣接する領域4a~4hについては、隣接する壁面から遠ざかる並進動作を定義する定義情報が設定される。例えば、画像処理装置100は、領域4bに対応付けて、壁面3bから遠ざかる並進動作40bを定義する定義情報を設定する。同様に、画像処理装置100は、領域4dに対応付けて、壁面3dから遠ざかる並進動作40dを定義する定義情報を設定する。さらに、画像処理装置100は、壁面3a~3dから離れた位置の領域5に対応付けて、コンテナ2の底面3zの法線方向(鉛直方向上向き)に沿った並進動作50を定義する定義情報を設定する。 The image processing apparatus 100 further sets definition information that defines the translational motion of the end effector 30 in association with each of the plurality of regions 4a to 4h, 5. FIG. For the regions 4a to 4h adjacent to one of the wall surfaces of the container 2, definition information is set that defines a translational movement away from the adjacent wall surface. For example, the image processing apparatus 100 sets definition information defining a translational movement 40b moving away from the wall surface 3b in association with the area 4b. Similarly, the image processing apparatus 100 sets definition information defining a translational movement 40d moving away from the wall surface 3d in association with the area 4d. Further, the image processing apparatus 100 defines definition information defining a translational motion 50 along the normal direction (upward in the vertical direction) of the bottom surface 3z of the container 2 in association with the region 5 located away from the wall surfaces 3a to 3d. set.

画像処理装置100は、複数の領域4a~4h,5のうち、ピッキング対象のワーク1について検出された位置を含む領域に対応付けられた定義情報によって定義される並進動作を、ピッキング動作の並進成分として決定する。例えば、ワーク1の位置が領域4bに含まれる場合、画像処理装置100は、領域4bに対応付けられた定義情報によって定義される並進動作40bをピッキング動作の並進成分として決定する。 The image processing apparatus 100 converts the translational motion defined by the definition information associated with the region including the detected position of the workpiece 1 to be picked among the plurality of regions 4a to 4h, 5 into the translational component of the picking motion. Determined as For example, when the position of the workpiece 1 is included in the area 4b, the image processing device 100 determines the translational movement 40b defined by the definition information associated with the area 4b as the translational component of the picking movement.

上記の処理によれば、画像処理装置100は、複雑な計算を行なうことなく、予め設定した定義情報を用いて、ワーク1に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、コンテナ2に収容されたワーク1をピッキングするロボットの動作を決定できる。 According to the above process, the image processing apparatus 100 can easily determine the translational component of the picking motion for the workpiece 1 using preset definition information without performing complicated calculations. As a result, it is possible to determine the operation of the robot for picking the workpiece 1 accommodated in the container 2 while suppressing an increase in calculation cost.

§2 具体例
次に、本実施の形態に係る制御システムの具体例について説明する。
§2 Specific Example Next, a specific example of the control system according to the present embodiment will be described.

<A.画像処理装置のハードウェア構成例>
画像処理装置100は、典型的には、汎用的なアーキテクチャを有しているコンピュータであり、予めインストールされたプログラム(命令コード)を実行することで、本実施の形態に係る画像処理を実行する。このようなプログラムは、典型的には、各種記録媒体などに格納された状態で流通し、あるいは、ネットワークなどを介して画像処理装置100にインストールされる。
<A. Hardware Configuration Example of Image Processing Apparatus>
The image processing apparatus 100 is typically a computer having a general-purpose architecture, and executes image processing according to the present embodiment by executing a pre-installed program (instruction code). . Such a program is typically distributed in a state stored in various recording media or installed in the image processing apparatus 100 via a network or the like.

このような汎用的なコンピュータを利用する場合には、本実施の形態に係る画像処理を実行するためのアプリケーションに加えて、コンピュータの基本的な処理を実行するためのOS(Operating System)がインストールされていてもよい。この場合には、本実施の形態に係るプログラムは、OSの一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。すなわち、本実施の形態に係るプログラム自体は、上記のようなモジュールを含んでおらず、OSと協働して処理が実行されてもよい。本実施の形態に係るプログラムとしては、このような一部のモジュールを含まない形態であってもよい。 When using such a general-purpose computer, in addition to the application for executing the image processing according to the present embodiment, an OS (Operating System) for executing the basic processing of the computer is installed. may have been In this case, the program according to the present embodiment may call necessary modules out of the program modules provided as part of the OS in a predetermined sequence at a predetermined timing to execute processing. good. That is, the program itself according to the present embodiment does not include the modules described above, and the processing may be executed in cooperation with the OS. A program according to the present embodiment may be in a form that does not include such a part of modules.

さらに、本実施の形態に係るプログラムは、他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には、上記のような組合せられる他のプログラムに含まれるモジュールを含んでおらず、当該他のプログラムと協働して処理が実行される。すなわち、本実施の形態に係るプログラムとしては、このような他のプログラムに組込まれた形態であってもよい。なお、プログラムの実行により提供される機能の一部もしくは全部を専用のハードウェア回路として実装してもよい。 Furthermore, 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 program to be combined as described above, and the processing is executed in cooperation with the other program. That is, the program according to the present embodiment may be incorporated in such other program. A part 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 diagram showing an example of the hardware configuration of the image processing apparatus shown in FIG. As shown in FIG. 3, the image processing apparatus 100 includes a CPU (Central Processing Unit) 110 as an arithmetic processing unit, a main memory 112 and a hard disk 114 as storage units, a measurement head interface 116, and an input interface 118. , a display controller 120 , a communication interface 124 and a data reader/writer 126 . These units are connected to each other via a bus 128 so as to be able to communicate with each other.

CPU110は、ハードディスク114にインストールされたプログラム(コード)をメインメモリ112に展開して、これらを所定順序で実行することで、各種の演算を実施する。メインメモリ112は、典型的には、DRAM(Dynamic Random Access Memory)などの揮発性の記憶装置であり、ハードディスク114から読み出されたプログラムに加えて、計測ヘッド400によって取得された画像などを保持する。さらに、ハードディスク114には、後述するような各種データなどが格納される。なお、ハードディスク114に加えて、あるいは、ハードディスク114に代えて、フラッシュメモリなどの半導体記憶装置を採用してもよい。 The CPU 110 expands programs (codes) installed in the hard disk 114 into the main memory 112 and executes them in a predetermined order to perform various calculations. The main memory 112 is typically a volatile storage device such as a DRAM (Dynamic Random Access Memory), and holds programs read from the hard disk 114 as well as images acquired by the measuring head 400. do. Further, the hard disk 114 stores various data and the like, which will be described later. In addition to the hard disk 114, or instead of the hard disk 114, a semiconductor storage device such as a flash memory may be employed.

計測ヘッドインターフェース116は、CPU110と計測ヘッド400との間のデータ伝送を仲介する。すなわち、計測ヘッドインターフェース116は、計測ヘッド400と接続される。計測ヘッドインターフェース116は、CPU110が発生した内部コマンドに従って、計測ヘッド400に対して投影コマンドおよび撮像コマンドを与える。計測ヘッドインターフェース116は、計測ヘッド400からの画像を一時的に蓄積するための画像バッファ116aを含む。計測ヘッドインターフェース116は、画像バッファ116aに所定コマ数の画像が蓄積されると、その蓄積された画像をメインメモリ112へ転送する。 The measuring head interface 116 mediates data transmission between the CPU 110 and the measuring head 400 . That is, the measurement head interface 116 is connected with the measurement head 400 . The measurement head interface 116 gives projection commands and imaging commands to the measurement head 400 in accordance with internal commands generated by the CPU 110 . The metrology head interface 116 includes an image buffer 116 a for temporarily storing images from the metrology head 400 . The measurement head interface 116 transfers the accumulated images to the main memory 112 when a predetermined number of frames of images are accumulated in the image buffer 116a.

入力インターフェース118は、CPU110と入力装置160との間のデータ伝送を仲介する。すなわち、入力インターフェース118は、ユーザが入力装置160に入力した入力情報を受付ける。 Input interface 118 mediates data transmission between CPU 110 and input device 160 . That is, input interface 118 accepts input information input to input device 160 by the user.

表示コントローラ120は、ディスプレイ150と接続され、CPU110における処理結果などをユーザに通知するようにディスプレイ150の表示を制御する。 The display controller 120 is connected to the display 150 and controls the display of the display 150 so as to notify the user of the processing result of the CPU 110 and the like.

通信インターフェース124は、CPU110とロボットコントローラ200などの外部装置との間のデータ伝送を仲介する。通信インターフェース124は、典型的には、イーサネット(登録商標)やUSB(Universal Serial Bus)などからなる。 Communication interface 124 mediates data transmission between CPU 110 and an external device such as robot controller 200 . The communication interface 124 is typically made up of Ethernet (registered trademark), USB (Universal Serial Bus), or the like.

データリーダ/ライタ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)などの光学記憶媒体等からなる。 Data reader/writer 126 mediates data transmission between CPU 110 and memory card 106, which is a recording medium. That is, memory card 106 is distributed in a state in which a program to be executed by image processing apparatus 100 is stored, and data reader/writer 126 reads the program from memory card 106 . Data reader/writer 126 also writes an image captured by measurement head 400 and/or a processing result in image processing apparatus 100 to memory card 106 in response to an internal command from CPU 110 . The memory card 106 is a general-purpose semiconductor storage device such as an SD (Secure Digital), a magnetic storage medium such as a flexible disk, or an optical storage medium such as a CD-ROM (Compact Disk Read Only Memory). etc.

<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. Functional Configuration Example of Image Processing Apparatus>
FIG. 4 is a block diagram showing an example of the functional configuration of the image processing apparatus shown in FIG. 1. As shown in FIG. As shown in FIG. 4 , the image processing apparatus 100 includes a storage section 10 , a head control section 11 , a setting section 12 and an image processing section 13 . Storage unit 10 is implemented by main memory 112 and hard disk 114 shown in FIG. The head controller 11 is implemented by the CPU 110 and the measurement head interface 116 shown in FIG. Setting unit 12 is implemented by CPU 110, input interface 118, and display controller 120 shown in FIG. Image processing unit 13 is implemented by CPU 110 and communication interface 124 shown in FIG.

記憶部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の詳細については後述する。 CAD (Computer Aided Design) data 101 a indicating the three-dimensional shape of the workpiece 1 and CAD data 101 b indicating the three-dimensional shape of the container 2 are stored in advance in the storage unit 10 . The storage unit 10 stores a plurality of template data 102 representing images for each posture when the workpiece 1 is viewed from various viewpoints. Template data 102 is generated in advance based on, for example, CAD data 101a. Image data 103 obtained by imaging with the measurement head 400 is stored in the storage unit 10 . Furthermore, the storage unit 10 stores area information 104 and definition information 105 set by the setting unit 12 . Details of the area information 104 and the definition information 105 will be described later.

ヘッド制御部11は、計測ヘッド400の動作を制御する。ヘッド制御部11は、予め定められた投影パターン光の投影を指示する投影コマンドを計測ヘッド400に出力する。ヘッド制御部11は、投影パターン光が投影されている状態で撮像コマンドを計測ヘッド400に出力する。ヘッド制御部11は、計測ヘッド400から取得した画像データ103を記憶部10に格納する。 The head controller 11 controls the operation of the measurement head 400 . The head controller 11 outputs to the measurement head 400 a projection command instructing projection of predetermined projection pattern light. The head control unit 11 outputs an imaging command to the measurement head 400 while the projection pattern light is being projected. The head control unit 11 stores the image data 103 acquired from the measurement head 400 in the storage unit 10 .

設定部12は、領域設定部12aと情報設定部12bとを有する。領域設定部12aは、コンテナ2内の空間において、互いに排他的な関係にある複数の領域を設定する。領域設定部12aは、複数の領域を設定するための設定画面をディスプレイ150に表示し、入力装置160への入力に従って複数の領域を設定する。領域設定部12aは、設定した複数の領域それぞれを示す領域情報104を生成し、生成した領域情報104を記憶部10に格納する。領域情報104は、例えば、コンテナ2の特徴点(例えば左上角)を原点とする座標系における、複数の領域それぞれのx座標、y座標およびz座標の範囲を示す。 The setting unit 12 has an area setting unit 12a and an information setting unit 12b. The area setting unit 12 a sets a plurality of areas that are mutually exclusive in the space within the container 2 . The region setting unit 12a displays a setting screen for setting a plurality of regions on the display 150, and sets the plurality of regions according to an input to the input device 160. FIG. The area setting unit 12 a generates area information 104 indicating each of the plurality of set areas, and stores the generated area information 104 in the storage unit 10 . The region information 104 indicates, for example, the ranges of the x-coordinate, y-coordinate, and z-coordinate of each of the plurality of regions in a coordinate system whose origin is the feature point (for example, upper left corner) of the container 2 .

情報設定部12bは、複数の領域の各々と対応付けて、エンドエフェクタ30の並進動作を定義する定義情報105を設定する。情報設定部12bは、定義情報105を設定するための設定画面をディスプレイ150に表示し、入力装置160への入力に従って定義情報105を設定する。情報設定部12bは、複数の領域の各々について設定した定義情報105を記憶部10に格納する。 The information setting unit 12b sets definition information 105 that defines the translational motion of the end effector 30 in association with each of the plurality of regions. The information setting unit 12b displays a setting screen for setting the definition information 105 on the display 150, and sets the definition information 105 according to the input to the input device 160. FIG. The information setting unit 12b stores definition information 105 set for each of the plurality of areas in the storage unit 10. FIG.

画像処理部13は、計測ヘッド400の撮像により得られた画像データ103に対する処理を行なう。図4に示されるように、画像処理部13は、3D画像生成部14と、検出部15と、動作指令決定部16と、通信部17とを含む。 The image processing unit 13 processes the image data 103 obtained by imaging with the measurement head 400 . As shown in FIG. 4 , the image processing section 13 includes a 3D image generating section 14 , a detecting section 15 , an operation command determining section 16 and a communicating section 17 .

3D画像生成部14は、画像データ103に基づいて、計測ヘッド400の視野領域における三次元計測を行ない、三次元点群データを生成する。三次元点群データは、計測ヘッド400の視野領域に存在する物体表面上の各点の三次元座標を示す。 Based on the image data 103, the 3D image generator 14 performs three-dimensional measurement in the visual field area of the measurement head 400 to generate three-dimensional point cloud data. The 3D point cloud data indicates the 3D coordinates of each point on the surface of the object present in the visual field area of the measurement head 400 .

三次元計測処理として、例えば三角測距方式、同軸方式が採用され得る。三角測距方式は、撮像と投光との光軸を基線長分だけ離間させ、視差を距離に変換する方式である。三角測距方式には、アクティブ法とパッシブ法とが含まれる。アクティブ法には、構造化照明法、位相シフト法、空間コード法が含まれる。同軸方式は、撮像と測距手段との光軸を同一に設定する方式である。測距手段として、TOF(Time of Flight)方式、焦点方式が含まれる。3D画像生成部14は、これらの方式のいずれかを用いて三次元計測処理を実行すればよい。例えば位相シフト法を用いて三次元計測処理が行なわれる。 As the three-dimensional measurement processing, for example, a triangulation method and a coaxial method can be adopted. The triangulation method is a method in which the optical axes of imaging and light projection are spaced apart by the length of the base line, and parallax is converted into distance. Triangulation methods include active methods and passive methods. Active methods include structured illumination methods, phase shift methods, and spatial code methods. The coaxial method is a method in which the optical axes of the imaging and distance measuring means are set to be the same. Range finding means includes a TOF (Time of Flight) method and a focus method. The 3D image generation unit 14 may use any one of these methods to perform the three-dimensional measurement process. Three-dimensional measurement processing is performed using, for example, a phase shift method.

位相シフト法は、正弦波状に濃淡を変化させた投影パターン光を被写体に投影した状態で撮像された画像(正弦波投影画像)を用いる方法である。濃淡の変化周期や位相を異ならせた投影パターンが複数用意され、計測ヘッド400の投影部401は、撮像部402の視野領域に対して、複数の投影パターン光を順次照射する。3D画像生成部14は、複数の投影パターンが投影されたときにそれぞれ撮像される画像データ103の群(正弦波投影画像群)を記憶部10から読み出す。そして、3D画像生成部14は、これらの画像データ103間における対応する部分の明るさ(輝度や明度)の変化に基づいて、三次元座標を算出する。 The phase shift method is a method that uses an image (sinusoidal projection image) captured in a state in which projection pattern light with shading changed in a sinusoidal manner is projected onto an object. A plurality of projection patterns with different gradation change periods and phases are prepared, and the projection unit 401 of the measurement head 400 sequentially irradiates the plurality of projection pattern light onto the visual field area of the imaging unit 402 . The 3D image generation unit 14 reads out from the storage unit 10 a group of image data 103 (sine wave projection image group) captured when a plurality of projection patterns are projected. Then, the 3D image generation unit 14 calculates three-dimensional coordinates based on changes in brightness (luminance or lightness) of corresponding portions between the image data 103 .

検出部15は、記憶部10に格納された各テンプレートデータ102と三次元点群データとを照合し、三次元点群データの中からテンプレートと類似するデータを抽出する。検出部15は、抽出したデータに基づいて、ワーク1の位置姿勢を検出する。検出部15によって検出されるワーク1の位置姿勢は、計測ヘッド400の撮像部402の座標系(カメラ座標系)で示される。 The detection unit 15 compares each template data 102 stored in the storage unit 10 with the three-dimensional point cloud data, and extracts data similar to the template from the three-dimensional point cloud data. The detection unit 15 detects the position and orientation of the workpiece 1 based on the extracted data. The position and orientation of the workpiece 1 detected by the detection unit 15 are indicated by the coordinate system (camera coordinate system) of the imaging unit 402 of the measurement head 400 .

さらに、コンテナ2の位置が一定ではない場合、検出部15は、画像データ103または三次元点群データに基づいて、コンテナ2の位置姿勢を検出してもよい。コンテナ2の位置姿勢の検出方法の詳細については後述する。 Furthermore, when the position of the container 2 is not constant, the detection unit 15 may detect the position and orientation of the container 2 based on the image data 103 or the three-dimensional point cloud data. The details of the method of detecting the position and orientation of the container 2 will be described later.

なお、検出部15は、複数のワーク1の位置姿勢を検出した場合、予め定められた選択基準に従って、当該複数のワーク1のうちの1つをピッキング対象として選択する。 When detecting the positions and orientations of a plurality of works 1, the detection unit 15 selects one of the plurality of works 1 as a picking target according to a predetermined selection criterion.

動作指令決定部16は、ピッキング対象のワーク1の位置姿勢に応じて、エンドエフェクタ30の動作を決定する。動作指令決定部16は、決定した動作に対応する動作指令を生成する。 The motion command determination unit 16 determines the motion of the end effector 30 according to the position and orientation of the workpiece 1 to be picked. The motion command determination unit 16 generates a motion command corresponding to the determined motion.

まず、動作指令決定部16はアプローチ動作を決定する。動作指令決定部16は、エンドエフェクタ30の待機位置がコンテナ2の開口部の上方である場合、例えば、待機位置からピッキング対象となるワーク1の把持位置まで移動する並進動作をアプローチ動作の並進成分として決定すればよい。さらに、動作指令決定部16は、ワーク1の姿勢に応じた回転動作をアプローチ動作の回転成分として決定すればよい。エンドエフェクタ30がワーク1を把持するときのワーク1に対するエンドエフェクタ30の相対位置姿勢は、把持点登録情報として予め登録されている。動作指令決定部16は、検出されたワーク1の位置姿勢と把持点登録情報とに基づいて、当該ワーク1を把持するときのエンドエフェクタ30の位置姿勢を計算すればよい。 First, the motion command determination unit 16 determines the approach motion. When the standby position of the end effector 30 is above the opening of the container 2, the motion command determination unit 16 considers, for example, the translational motion of moving from the standby position to the gripping position of the workpiece 1 to be picked as the translational component of the approach motion. should be determined as Furthermore, the motion command determination unit 16 may determine the rotational motion corresponding to the attitude of the workpiece 1 as the rotational component of the approach motion. The relative position and orientation of the end effector 30 with respect to the work 1 when the end effector 30 grips the work 1 is registered in advance as gripping point registration information. The motion command determination unit 16 may calculate the position and orientation of the end effector 30 when gripping the workpiece 1 based on the detected position and orientation of the workpiece 1 and the gripping point registration information.

次に、動作指令決定部16はピッキング動作を決定する。動作指令決定部16は、ピッキング対象のワーク1の位置姿勢とコンテナ2の位置姿勢とに基づいて、コンテナ2に対するワーク1の相対位置を計算する。コンテナ2に対するワーク1の相対位置は、例えばコンテナ2の特徴点(例えば左上角)を原点とする座標系で示される。動作指令決定部16は、コンテナ2に対するワーク1の相対位置と領域情報104とに基づいて、ワーク1の位置を含む領域を特定する。動作指令決定部16は、特定した領域に定義付けられた定義情報105によって定義される並進動作をピッキング動作の並進成分として決定する。 Next, the motion command determination unit 16 determines the picking motion. The motion command determination unit 16 calculates the relative position of the work 1 with respect to the container 2 based on the position and orientation of the work 1 to be picked and the position and orientation of the container 2 . The relative position of the workpiece 1 with respect to the container 2 is indicated by a coordinate system having, for example, a characteristic point (for example, upper left corner) of the container 2 as an origin. The motion command determination unit 16 identifies an area including the position of the work 1 based on the relative position of the work 1 with respect to the container 2 and the area information 104 . The motion command determining unit 16 determines the translational motion defined by the definition information 105 defined in the specified area as the translational component of the picking motion.

なお、動作指令決定部16は、ピッキング動作の回転成分について、0に決定してもよいし、後のプレース動作にスムーズに移行するような値に決定してもよい。 Note that the motion command determining unit 16 may determine the rotation component of the picking motion to be 0, or may determine a value that smoothly transitions to the subsequent placing motion.

次に、動作指令決定部16はプレース動作を決定する。動作指令決定部16は、ピッキング動作後のワーク1の退避位置と目標位置とを結ぶ線に沿った並進動作をプレース動作の並進成分として決定すればよい。 Next, the motion command determination unit 16 determines a place motion. The motion command determining unit 16 may determine the translational motion along the line connecting the retracted position and the target position of the workpiece 1 after the picking motion as the translational component of the placing motion.

通信部17は、ロボットコントローラ200と通信可能であり、動作指令決定部16によって生成された動作指令をロボットコントローラ200に送信する。 The communication unit 17 can communicate with the robot controller 200 and transmits the motion command generated by the motion command determination unit 16 to the robot controller 200 .

ロボットコントローラ200は、動作指令に従ってロボット300を制御する。これにより、ロボット300のエンドエフェクタ30は、動作指令決定部16によって決定されたアプローチ動作、ピッキング動作およびプレース動作を順に行なう。ただし、ロボット300の機構(並進機構および回転機構)における動作精度には誤差がある。そのため、ロボット300のエンドエフェクタ30の実際の動作と動作指令決定部16によって決定された動作との間に誤差が生じ得る。 The robot controller 200 controls the robot 300 according to motion commands. As a result, the end effector 30 of the robot 300 sequentially performs the approach motion, the picking motion, and the placing motion determined by the motion command determination unit 16 . However, there is an error in the operation accuracy of the mechanism (translation mechanism and rotation mechanism) of the robot 300 . Therefore, an error may occur between the actual motion of the end effector 30 of the robot 300 and the motion determined by the motion command determining section 16 .

<C.領域の設定>
図5~図8を参照して、領域設定部12aによる領域の設定方法の一例について説明する。図5は、コンテナの形状を登録するための画面例を示す図である。図5に例示される画面60は、自動登録ボタン61と手動登録ボタン62とを有する。自動登録ボタン61が操作されると、領域設定部12aは、入力欄63に入力されたファイル名で示されるコンテナ2のCADデータに基づいて、コンテナ2の形状を登録する。手動登録ボタン62が操作されると、領域設定部12aは、入力欄64に入力された値に従って、コンテナ2の形状を登録する。
<C. Area setting>
An example of a region setting method by the region setting unit 12a will be described with reference to FIGS. 5 to 8. FIG. FIG. 5 is a diagram showing an example of a screen for registering the shape of a container. A screen 60 illustrated in FIG. 5 has an automatic registration button 61 and a manual registration button 62 . When the automatic registration button 61 is operated, the area setting unit 12a registers the shape of the container 2 based on the CAD data of the container 2 indicated by the file name entered in the input field 63. FIG. When the manual registration button 62 is operated, the area setting section 12a registers the shape of the container 2 according to the value input in the input field 64. FIG.

コンテナ2の形状は、コンテナ2の幅(外寸)W、奥行き(外寸)D、外寸高さH1、内寸高さH2、コンテナ2の側壁の幅方向の最大厚みB1、コンテナ2の側壁の奥行き方向の最大厚みB2、傾斜方向および傾斜角度で示される。傾斜方向および傾斜角度は、コンテナ2が設置される台の傾斜に応じて登録される。 The shape of the container 2 includes the width (outer dimension) W, the depth (outer dimension) D, the outer height H1, the inner height H2, the maximum thickness B1 of the side wall of the container 2 in the width direction, and the width of the container 2. It is indicated by the maximum thickness B2 of the side wall in the depth direction, the inclination direction, and the inclination angle. The tilt direction and tilt angle are registered according to the tilt of the table on which the container 2 is installed.

画像処理装置100の記憶部10には、生産ラインで使用され得る複数種類のコンテナ2にそれぞれ対応する複数のCADデータ101bが格納されていてもよい。ユーザは、使用するコンテナ2の種類変更のタイミングにおいて、変更後の種類のコンテナ2に対応するCADデータ101bを入力欄63に入力すればよい。もしくは、生産ラインで使用され得る複数種類のコンテナ2ごとのW、D、H1、H2、B1およびB2を示す形状データが記憶部10に予め格納されていてもよい。ユーザは、使用するコンテナ2の種類変更のタイミングにおいて、変更後の種類のコンテナ2に対応する形状データを入力欄64に入力すればよい。 The storage unit 10 of the image processing apparatus 100 may store a plurality of CAD data 101b respectively corresponding to a plurality of types of containers 2 that can be used on the production line. The user may input the CAD data 101b corresponding to the changed type of container 2 in the input field 63 at the timing of changing the type of the container 2 to be used. Alternatively, shape data indicating W, D, H1, H2, B1 and B2 for each of a plurality of types of containers 2 that can be used in the production line may be stored in the storage unit 10 in advance. The user may input the shape data corresponding to the changed type of container 2 in the input field 64 at the timing of changing the type of the container 2 to be used.

画像処理装置100は、使用するコンテナ2の種類変更のタイミングにおいて、変更後のコンテナ2の種類を示す情報を図示しない上位制御装置から取得してもよい。上位制御装置は、生産ラインの運用を管理する装置である。画像処理装置100は、上位制御装置からコンテナ2の種類を示す情報を取得すると、変更後の種類のコンテナ2に対応するCADデータ101bを入力欄63に自動的に入力してもよい。もしくは、画像処理装置100は、上位制御装置からコンテナ2の種類を示す情報を取得すると、変更後の種類のコンテナ2に対応する形状データを入力欄64に自動的に入力してもよい。 The image processing apparatus 100 may acquire information indicating the type of the container 2 after the change from a host controller (not shown) at the timing of changing the type of the container 2 to be used. The host controller is a device that manages the operation of the production line. The image processing apparatus 100 may automatically input the CAD data 101b corresponding to the changed type of container 2 to the input field 63 when the information indicating the type of the container 2 is acquired from the host controller. Alternatively, the image processing apparatus 100 may automatically input the shape data corresponding to the changed type of container 2 to the input field 64 after acquiring the information indicating the type of the container 2 from the host control apparatus.

図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 an example of a screen for registering the shape of a workpiece. A screen 65 illustrated in FIG. 6 has an automatic registration button 66 and a manual registration button 67 . When the automatic registration button 66 is operated, the area setting unit 12a registers the shape of the work 1 based on the CAD data of the work 1 indicated by the file name entered in the input field 68. FIG. When the manual registration button 67 is operated, the area setting section 12a registers the shape of the workpiece 1 according to the value input in the input field 69. FIG. The shape of the work 1 is indicated by the width W, depth D, and height H of a rectangular parallelepiped circumscribing the work 1, for example.

画面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 screen 65 includes an input field 70 for inputting the approximate gripping position of the two claws 33 of the end effector 30 . When the work 1 is gripped by the two claws 33 , the two claws 33 are normally arranged along the width direction or the depth direction of the rectangular parallelepiped circumscribing the work 1 . Therefore, the approximate gripping position is indicated by either the distance C1 from the side surface orthogonal to the width direction of the circumscribed rectangular parallelepiped of the workpiece 1 or the distance C2 from the side surface orthogonal to the depth direction. That is, when the two claws 33 are arranged along the width direction of the circumscribed rectangular parallelepiped when gripping the workpiece 1, the distance C1 is input. If the two claws 33 are arranged along the depth direction of the circumscribed rectangular parallelepiped when gripping the workpiece 1, the distance C2 is input. The distance C1 or the distance C2 may be automatically input based on gripping point registration information registered in advance.

領域設定部12aは、2つの爪33による概略把持位置の中心点と、ワーク1の外接直方体の表面上の点との最大距離をマージン幅Mとして計算する。計算されたマージン幅Mは、画面65の表示欄71に表示される。 The region setting unit 12a calculates the maximum distance between the center point of the approximate gripping position by the two claws 33 and a point on the surface of the circumscribed rectangular parallelepiped of the workpiece 1 as the margin width M. The calculated margin width M is displayed in the display field 71 of the screen 65. FIG.

図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 margin width setting method. When the distance C1 is input, the region setting unit 12a sets a diagonal line DL of the circumscribed rectangular parallelepiped RP of the workpiece 1 and a side surface of the circumscribed rectangular parallelepiped RP which is parallel to the depth direction and which is inward of the side by a distance C1. The point of intersection with the plane is determined as the center point P of the approximate gripping position. When the distance C2 is input, the region setting unit 12a sets a diagonal line DL of the circumscribing rectangular parallelepiped RP of the workpiece 1 and a side surface of the circumscribing rectangular parallelepiped RP which is parallel to the width direction and which is inward of the side surface by the distance C2. The point of intersection with the plane is determined as the center point P of the approximate gripping position. The region setting unit 12a calculates the longer one of the length M1 and the length M2 of the diagonal line DL divided by the center point P as the margin width M (=max(M1, M2)). .

図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 areas 4a to 4h, 5 that are mutually exclusive are set in the space inside the box-shaped container 2. As shown in FIG.

領域設定部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 area setting unit 12a sets an area within the distance DM1 from the wall surface 3a of the container 2 (excluding the areas 4e and 4h) as the area 4a. The region setting unit 12a sets a region within the distance WM1 from the wall surface 3b of the container 2 (excluding the regions 4e and 4f) as the region 4b. The region setting unit 12a sets a region within a distance DM2 from the wall surface 3c of the container 2 (excluding the regions 4f and 4g) as the region 4c. The region setting unit 12a sets a region within the distance WM2 from the wall surface 3d of the container 2 (excluding the regions 4g and 4h) as the region 4d. The area setting unit 12a sets an area within the distance DM1 from the wall surface 3a and within the distance WM1 from the wall surface 3b as the area 4e. The region setting unit 12a sets a region within the distance WM1 from the wall surface 3b and within the distance DM2 from the wall surface 3c as the region 4f. The region setting unit 12a sets a region within the distance DM2 from the wall surface 3c and within the distance WM2 from the wall surface 3d as the region 4g. The region setting unit 12a sets a region within the distance WM2 from the wall surface 3d and within the distance DM1 from the wall surface 3a as the region 4h.

図8に例示される画面72は、自動設定ボタン73と手動設定ボタン74とを有する。自動設定ボタン73が操作されると、領域設定部12aは、距離DM1,DM2,WM1.WM2の全てをマージン幅Mに設定する。 A screen 72 illustrated in FIG. 8 has an automatic setting button 73 and a manual setting button 74 . When the automatic setting button 73 is operated, the area setting unit 12a sets the distances DM1, DM2, WM1 . Set all of WM2 to the margin width M.

手動設定ボタン74が操作されると、領域設定部12aは、距離DM1,DM2,WM1.WM2を設定するための入力欄75への入力を受け付ける。領域設定部12aは、入力欄75に入力された値に従って、距離DM1,DM2,WM1,WM2を設定する。 When the manual setting button 74 is operated, the area setting unit 12a sets the distances DM1, DM2, WM1 . Input to the input field 75 for setting WM2 is accepted. The region setting unit 12a sets the distances DM1, DM2, WM1, and WM2 according to the values input in the input fields 75. FIG.

また、画面72は、コンテナ2を模式的に示す画像76を含む。手動設定ボタン74が操作されると、領域設定部12aは、画像76において、距離DM1,DM2,WM1,WM2を定義付ける矩形状の枠線77を表示する。さらに、領域設定部12aは、枠線77の位置およびサイズを変更するためのカーソル78を表示し、カーソル78に対する操作に従って枠線77の位置およびサイズを変更する。領域設定部12aは、変更後の枠線77の位置およびサイズに従って、距離DM1,DM2,WM1,WM2を設定してもよい。 The screen 72 also includes an image 76 that schematically shows the container 2 . When the manual setting button 74 is operated, the area setting unit 12a displays a rectangular frame line 77 that defines the distances DM1, DM2, WM1, and WM2 in the image 76. FIG. Furthermore, the area setting unit 12a displays a cursor 78 for changing the position and size of the frame line 77, and changes the position and size of the frame line 77 according to the operation on the cursor 78. FIG. The region setting unit 12a may set the distances DM1, DM2, WM1, and WM2 according to the position and size of the frame line 77 after change.

<D.定義情報の設定>
図9および図10を参照して、情報設定部12bによる定義情報の設定方法の一例について説明する。
<D. Setting of definition information>
An example of a method of setting definition information by the information setting unit 12b will be described with reference to FIGS. 9 and 10. FIG.

図9は、定義情報を設定するための画面例を示す図である。図9に例示される画面79は、ボタン群80と入力欄81とを含む。入力欄81は、壁面に隣接する領域4a~4hにそれぞれ対応付けられた定義情報105(以下、「第1定義情報」とも称する。)を設定するために使用される。ボタン群80は、壁面から離れた位置の領域5に対応付けられる定義情報105(以下、「第2定義情報」とも称する。)を設定するために使用される。 FIG. 9 is a diagram showing an example of a screen for setting definition information. A screen 79 illustrated in FIG. 9 includes a button group 80 and an input field 81 . The input field 81 is used to set definition information 105 (hereinafter also referred to as "first definition information") associated with the areas 4a to 4h adjacent to the wall surface. The button group 80 is used to set the definition information 105 (hereinafter also referred to as "second definition information") associated with the area 5 located away from the wall surface.

ボタン群80は、鉛直方向上向きを選択するラジオボタン80aと、壁面平行を選択するラジオボタン80bとを含む。ラジオボタン80aが操作された場合、情報設定部12bは、領域5に対応付けて、鉛直方向上向きを示す第2定義情報を設定する。ラジオボタン80bが操作された場合、情報設定部12bは、領域5に対応付けて、壁面およびコンテナ2の底面に直交する平面上において壁面に平行な上向きの方向を示す第2定義情報を設定する。第2定義情報によって定義される並進動作は、第2定義情報で示される方向に沿った動作である。 The button group 80 includes a radio button 80a for selecting upward in the vertical direction and a radio button 80b for selecting parallel to the wall surface. When the radio button 80a is operated, the information setting unit 12b sets the second definition information indicating the upward vertical direction in association with the area 5. FIG. When the radio button 80b is operated, the information setting unit 12b sets the second definition information indicating the upward direction parallel to the wall surface on the plane orthogonal to the wall surface and the bottom surface of the container 2 in association with the area 5. . A translational motion defined by the second definition information is a motion along the direction indicated by the second definition information.

なお、コンテナ2が水平に設置され、かつ、コンテナ2の壁面が底面に垂直である場合、ラジオボタン80a,80bのいずれを操作しても、同一の第2定義情報が設定される。 Note that when the container 2 is installed horizontally and the wall surface of the container 2 is perpendicular to the bottom surface, the same second definition information is set by operating either of the radio buttons 80a and 80b.

コンテナ2の壁面3a~3dが底面3zに対して傾斜している場合には、壁面およびコンテナの底面に直交する平面上において壁面に平行な上向きの方向と、底面の法線方向とは一致しない。さらに、コンテナ2が水平面に対して傾斜している場合、鉛直方向上向きと、底面の法線方向とも一致しない。そのため、ボタン群80は、ラジオボタン80a,80bの他に、底面の法線方向を選択するラジオボタンを含んでもよい。当該ラジオボタンが操作された場合、情報設定部12bは、領域5に対応付けて、底面の法線方向を示す第2定義情報を設定する。 When the wall surfaces 3a to 3d of the container 2 are inclined with respect to the bottom surface 3z, the upward direction parallel to the wall surface on the plane orthogonal to the wall surface and the bottom surface of the container does not match the normal direction of the bottom surface. . Furthermore, when the container 2 is tilted with respect to the horizontal plane, the upward vertical direction does not coincide with the normal direction of the bottom surface. Therefore, the button group 80 may include a radio button for selecting the normal direction of the bottom surface in addition to the radio buttons 80a and 80b. When the radio button is operated, the information setting unit 12b sets the second definition information indicating the normal direction of the bottom surface in association with the area 5 .

入力欄81には、ワーク1が通過すべき指定位置を指定するための逃げ幅が入力される。情報設定部12bは、入力欄81に入力された逃げ幅を第1定義情報として設定する。第1定義情報によって定義される並進動作は、検出部15によって検出されたワーク1の位置と第1定義情報によって指定される指定位置とを通る直線に沿った動作である。 An input field 81 is used to input a relief width for designating a designated position through which the workpiece 1 should pass. The information setting unit 12b sets the relief width input in the input field 81 as the first definition information. The translational motion defined by the first definition information is motion along a straight line passing through the position of the workpiece 1 detected by the detector 15 and the specified position specified by the first definition information.

図10は、領域4aに対応付けられた第1定義情報によって定義される並進動作を示す図である。図10において、エンドエフェクタ30の待機位置Paとワーク1の検出位置Pbとを結ぶ線は、アプローチ動作の軌跡を示す。検出位置Pbと退避位置Pcとを結ぶ線は、ピッキング動作の軌跡を示す。退避位置Pcと目標位置Pdとを結ぶ線は、プレース動作の軌跡を示す。 FIG. 10 is a diagram showing the translational motion defined by the first definition information associated with the area 4a. In FIG. 10, the line connecting the standby position Pa of the end effector 30 and the detection position Pb of the workpiece 1 indicates the trajectory of the approach motion. A line connecting the detection position Pb and the retracted position Pc indicates the trajectory of the picking operation. A line connecting the retreat position Pc and the target position Pd indicates the trajectory of the place operation.

検出位置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 retracted position Pc1 that faces upward in the vertical direction of the detection position Pb, the workpiece 1 may come into contact with the wall surface 3a. Therefore, it is preferable to correct the retraction position so that the workpiece 1 is kept away from the wall surface 3a. Therefore, the specified position Pc2 is specified such that the first definition information defines a translational movement away from the wall surface 3a. In the example shown in FIG. 10, on the plane 7 passing through the upper end of the container 2, a position separated from the wall surface 3a by the relief width F1 from the point Q, which is the foot of the vertical line downward from the detection position Pb, is designated as the designated position Pc2. A retracted position Pc after correction is set on a straight line passing through the detected position Pb and the specified position Pc2. The translational motion defined by the first definition information is motion along a straight line connecting the detection position Pb and the retracted position Pc.

なお、第1定義情報で定義される並進動作は、わずかにカーブする動作であってもよい。すなわち、第1定義情報によって定義される並進動作は、検出位置Pbと指定位置Pc2とを通る曲線に沿った動作であってもよい。この場合、当該曲線上に退避位置Pcが設定される。 Note that the translational motion defined by the first definition information may be a slightly curving motion. That is, the translational motion defined by the first definition information may be motion along a curve passing through the detected 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. Example of processing when the container is installed at an angle>
Next, an example of processing when the container 2 is installed at an angle with respect to the horizontal plane will be described. Depending on the movable range of the articulated arm 31 of the robot 300, the container 2 can be installed with an inclination with respect to the horizontal plane.

図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 container 2 is installed inclined with respect to the horizontal plane so that the wall surface 3a is located on the upper side and the wall surface 3c is located on the lower side.

コンテナ2が傾斜して設置されている場合、上側に位置する壁面3aとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクが高まる。一方、下側に位置する壁面3cとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクは低くなる。そのため、領域設定部12aは、壁面3aに隣接する領域4a,4e、4hのサイズを定める距離DM1(図8参照)と、壁面3cに隣接する領域4c,4f、4gのサイズを定める距離DM2(図8参照)とを傾斜角度θに応じて調整してもよい。 When the container 2 is installed at an angle, the risk of contact between the upper wall surface 3a and the workpiece 1 gripped by the end effector 30 during the picking operation increases. On the other hand, the risk of contact between the lower wall surface 3c and the workpiece 1 gripped by the end effector 30 during the picking operation is reduced. Therefore, the area setting unit 12a uses a distance DM1 (see FIG. 8) that determines the sizes of the areas 4a, 4e, and 4h adjacent to the wall surface 3a, and a distance DM2 (see FIG. 8) that determines the sizes of the areas 4c, 4f, and 4g adjacent to the wall surface 3c. 8) may be adjusted according to the inclination angle θ.

図11に示す例では、領域設定部12aは、マージン幅M/cosθを距離DM1に設定し、マージン幅M×cosθを距離DM2に設定している。なお、領域設定部12aは、コンテナ2の内寸高さH2×tanθを距離DM2に設定してもよい。 In the example shown in FIG. 11, the region setting unit 12a sets the margin width M/cos θ to the distance DM1, and sets the margin width M×cos θ to the distance DM2. Note that the region setting unit 12a may set the inner dimension height H2×tan θ of the container 2 to the distance DM2.

図12は、コンテナが水平面に対して傾斜して設置され、かつ、鉛直方向上向きを示す第2定義情報が設定されたときの領域の設定方法の一例を示す図である。第2定義情報が鉛直方向上向きを示す場合、領域5の範囲を図11に示す領域4cの範囲まで広げたとしても、下側に位置する壁面3cとピッキング動作中のエンドエフェクタ30に把持されたワーク1との接触リスクは低い。そのため、図12に示されるように、領域設定部12aは、壁面3cに隣接するように領域5を設定してもよい。 FIG. 12 is a diagram showing an example of a region setting method when the container is installed tilted with respect to the horizontal plane and the second definition information indicating the vertically upward direction is set. When the second definition information indicates the upward vertical direction, even if the range of the region 5 is expanded to the range of the region 4c shown in FIG. The risk of contact with work 1 is low. Therefore, as shown in FIG. 12, the area setting part 12a may set the area 5 so as to be adjacent to the wall surface 3c.

コンテナ2が水平面に対して傾斜している場合であっても、情報設定部12bは、<D.定義情報の設定>で説明した方法と同じ方法に従って定義情報を設定すればよい。 Even if the container 2 is tilted with respect to the horizontal plane, the information setting unit 12b sets <D. Setting of definition information> can be used to set definition information.

図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 the translational movement defined by the first definition information associated with the area 4a when the container is installed with an inclination with respect to the horizontal plane. As shown in FIG. 13, in order to avoid contact between the workpiece 1 and the wall surface 3a during the picking operation, the designated position Pc2 is set so that the first definition information defines a translational movement away from the wall surface 3a. It is specified. In the example shown in FIG. 13, on the plane 7 passing through the upper end of the container 2, a position separated from the wall surface 3a by the relief width F1 from the point Q, which is the foot of the vertical line downward from the detection position Pb, is designated as the designated position Pc2. Then, the retracted position Pc after correction is set on a straight line passing through the detected position Pb and the designated position Pc2. The translational motion defined by the first definition information is motion along a straight line connecting the detection position Pb and the retracted position Pc.

なお、第1定義情報で定義される並進動作は、わずかにカーブする動作であってもよい。すなわち、第1定義情報によって定義される並進動作は、検出位置Pbと指定位置Pc2とを通る曲線に沿った動作であってもよい。この場合、当該曲線上に退避位置Pcが設定される。 Note that the translational motion defined by the first definition information may be a slightly curving motion. That is, the translational motion defined by the first definition information may be motion along a curve passing through the detected 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 operational accuracy of the translational mechanism of the robot 300 . Therefore, when the second definition information associated with the area 5 defines a translational movement along the vertical upward direction (positive Z-axis direction), in the picking operation for the workpiece 1 located in the area 5, The risk of contact with the located wall surface 3a increases. Therefore, in FIG. 9, for example, when the radio button 80a is operated, the second definition information defining the translational motion along the direction inclined away from the wall surface 3a rather than upward in the vertical direction (positive direction of the Z-axis) is the area 5 may be set. At this time, the angle formed by the direction of the translational motion and the upward vertical direction (positive direction of the Z-axis) is set to be greater than the error in the motion accuracy of the translational mechanism of the robot 300 .

<F.コンテナの位置姿勢の検出方法>
コンテナ2が固定位置に設置されない場合、検出部15は、コンテナ2に対するワーク1の相対位置姿勢を特定するために、コンテナ2の位置姿勢を検出する。
<F. Method for Detecting Position and Orientation of Container>
If the container 2 is not installed at a fixed position, the detector 15 detects the position and orientation of the container 2 in order to specify the relative position and orientation of the workpiece 1 with respect to the container 2 .

図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 a container. Since the workpiece 1 is accommodated in the container 2 , the image captured by the imaging unit 402 of the measurement head 400 includes the upper end surface 8 of the container 2 . When the height of the table on which the container 2 is installed is fixed, the height (Z coordinate) of the upper end surface 8 is constant. However, the X coordinate and Y coordinate of the upper end surface 8 can change according to the installation position of the container 2 . Therefore, the detection unit 15 can detect the position and orientation of the container 2 using a two-dimensional search method. That is, the detection unit 15 stores in advance template data indicating the two-dimensional shape of the upper end surface 8 of the container 2 when viewed from the imaging unit 402, and compares the template data with the image data 103. The position and orientation of the container 2 are detected.

図15は、コンテナの位置姿勢を検出する方法の別の例を説明する図である。図15に示す例では、コンテナ2の上端面8上に4つの検出マーク8a~8dが描かれている。検出部15は、画像データ103の中から検出マーク8a~8dの位置を特定することにより、コンテナ2の位置姿勢を検出してもよい。 FIG. 15 is a diagram explaining another example of a method for detecting the position and orientation of a container. In the example shown in FIG. 15, four detection marks 8a to 8d are drawn on the upper end surface 8 of the container 2. As shown in FIG. The detection unit 15 may detect the position and orientation of the container 2 by specifying the positions of the detection marks 8 a to 8 d in the image data 103 .

図16は、コンテナの位置姿勢を検出する方法のさらに別の例を説明する図である。図16に示す例では、コンテナ2は、水平面に対して傾斜した台に設置される。コンテナ2が水平面に対して傾斜して設置される場合、上端面8上に描かれた4つの検出マーク8a~8dを頂点とする四角形が歪む。検出部15は、4つの検出マーク8a~8dを頂点とする四角形の歪み度合いに基づいて、コンテナ2の水平面に対する傾斜角度θを検出できる。例えば、検出部15は、傾斜角度θと4つの検出マーク8a~8d間の距離との関係式を予め記憶しておき、当該関係式を用いて傾斜角度θを計算すればよい。 FIG. 16 is a diagram explaining still another example of a method of detecting the position and orientation of a container. In the example shown in FIG. 16, the container 2 is installed on a table that is inclined with respect to the horizontal plane. When the container 2 is installed with an inclination with respect to the horizontal plane, the quadrangle whose vertices are the four detection marks 8a to 8d drawn on the upper end surface 8 is distorted. The detection unit 15 can detect the tilt angle θ of the container 2 with respect to the horizontal plane based on the degree of distortion of the quadrangle having the four detection marks 8a to 8d as vertices. For example, the detection unit 15 may store in advance a relational expression between the tilt angle θ and the distance between the four detection marks 8a to 8d, and calculate the tilt angle θ using the relational expression.

検出部15は、ワーク1と同様に三次元サーチの手法を用いてコンテナ2の位置姿勢を検出してもよい。すなわち、コンテナ2を様々な方向から見たときの三次元形状を示すテンプレートデータが予め記憶部10に格納される。検出部15は、3D画像生成部14によって生成された三次元点群データとテンプレートデータとを照合することにより、コンテナ2の位置姿勢を検出する。 The detection unit 15 may detect the position and orientation of the container 2 by using a three-dimensional search technique, like the workpiece 1 . That is, template data representing the three-dimensional shape of the container 2 viewed from various directions is stored in advance in the storage unit 10 . The detection unit 15 detects the position and orientation of the container 2 by matching the three-dimensional point cloud data generated by the 3D image generation unit 14 with the template data.

<G.設定処理の流れ>
図17は、画像処理装置における設定処理の流れの一例を示すフローチャートである。まず、画像処理装置100のCPU110は、コンテナ2内の空間において、互いに排他的な関係にある複数の領域(例えば図2に示す領域4a~4h,5)を設定する(ステップS1)。CPU110は、例えば図8に示す画面72をディスプレイ150に表示し、入力装置160への入力に従って複数の領域を設定する。CPU110は、設定した複数の領域のそれぞれの範囲を示す領域情報104を生成する。
<G. Setting process flow>
FIG. 17 is a flowchart showing an example of the flow of setting processing in the image processing apparatus. First, the CPU 110 of the image processing apparatus 100 sets a plurality of mutually exclusive areas (for example, areas 4a to 4h and 5 shown in FIG. 2) in the space within the container 2 (step S1). CPU 110 displays, for example, screen 72 shown in FIG. CPU 110 generates area information 104 indicating the range of each of the plurality of set areas.

次に、CPU110は、ステップS1で設定した複数の領域の各々に対応付けて、エンドエフェクタの並進動作を定義する定義情報105を設定する。CPU110は、例えば図9に示す画面79をディスプレイ150に表示し、入力装置160への入力に従って定義情報105を設定する。 Next, the CPU 110 sets definition information 105 defining the translational movement of the end effector in association with each of the plurality of regions set in step S1. The CPU 110 displays, for example, a screen 79 shown in FIG.

<H.ロボット動作の制御処理の流れ>
図18は、画像処理装置におけるロボット動作の制御処理の流れの一例を示すフローチャートである。まず、CPU110は、計測ヘッド400によって撮像された複数の画像データ103に基づいて、計測ヘッド400の視野領域の三次元計測を行なう(ステップS11)。ステップS11において、CPU110は、三次元点群データを生成する。
<H. Flow of Robot Motion Control Processing>
FIG. 18 is a flowchart showing an example of the flow of control processing for robot motion in the image processing apparatus. First, CPU 110 performs three-dimensional measurement of the visual field area of measuring head 400 based on a plurality of image data 103 captured by measuring head 400 (step S11). In step S11, the CPU 110 generates three-dimensional point cloud data.

次に、CPU110は、ワーク1を様々に方向から見たときの三次元形状を示す複数のテンプレートデータ102と三次元点群データとを照合することにより、ワーク1の位置姿勢を検出する(ステップS12)。コンテナ2の位置姿勢が固定されていない場合、ステップS12において、検出部15は、コンテナ2の位置姿勢を検出してもよい。 Next, the CPU 110 detects the position and orientation of the workpiece 1 by comparing the three-dimensional point cloud data with a plurality of template data 102 representing the three-dimensional shape of the workpiece 1 viewed from various directions (step S12). If the position and orientation of the container 2 are not fixed, the detection unit 15 may detect the position and orientation of the container 2 in step S12.

次に、CPU110は、ピッキング対象のワーク1の位置姿勢に応じてロボット300の動作を決定する(ステップS13)。ロボット300の動作には、上述したように、アプローチ動作とピッキング動作とプレース動作とが含まれる。具体的には、CPU110は、ステップS1において生成された領域情報104に基づいて、複数の領域のうちワーク1の位置を含む領域を特定する。CPU110は、特定した領域に対応付けられた定義情報105によって定義される並進動作をピッキング動作の並進成分として決定する。 Next, the CPU 110 determines the motion of the robot 300 according to the position and orientation of the workpiece 1 to be picked (step S13). The motion of the robot 300 includes the approach motion, the picking motion, and the placing motion, as described above. Specifically, CPU 110 identifies an area including the position of workpiece 1 among the plurality of areas based on area information 104 generated in step S1. The CPU 110 determines the translational motion defined by the definition information 105 associated with the specified area as the translational component of the picking motion.

次に、CPU110は、決定した動作を実行させるための動作指令を生成し、生成した動作指令をロボットコントローラ200に出力する(ステップS14)。 Next, the CPU 110 generates a motion command for executing the determined motion, and outputs the generated motion command to the robot controller 200 (step S14).

<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 image processing apparatus 100 according to the present embodiment determines the motion of the robot 300 that picks up the works housed in the container 2 . The image processing apparatus 100 includes an area setting section 12 a , an information setting section 12 b , a detection section 15 and an operation command determination section 16 . The area setting unit 12 a sets a plurality of areas that are mutually exclusive in the space within the container 2 . The information setting unit 12b sets definition information 105 that defines the translational motion of the end effector 30 in association with each of the plurality of regions. The detection unit 15 detects the position of the workpiece 1 based on the image obtained by imaging the container 2 . The operation command determination unit 16 determines the picking operation of the end effector 30 from gripping the work 1 to conveying the work 1 out of the container 2 . The motion command determining unit 16 determines the translational motion defined by the definition information 105 associated with the region including the position of the workpiece 1 detected by the detecting unit 15 among the plurality of regions as the translational component of the picking motion. .

これにより、画像処理装置100は、複雑な計算を行なうことなく、予め設定した定義情報105を用いて、ワーク1に対するピッキング動作の並進成分を容易に決定できる。その結果、計算コストの増大を抑制しながら、コンテナ2に収容されたワーク1をピッキングするロボットの動作を決定できる。 As a result, the image processing apparatus 100 can easily determine the translation component of the picking motion for the workpiece 1 using the preset definition information 105 without performing complicated calculations. As a result, it is possible to determine the operation of the robot for picking the workpiece 1 accommodated in the container 2 while suppressing an increase in calculation cost.

複数の領域は、コンテナ2内における壁面3a~3dにそれぞれ隣接する領域4a~4dと、領域4a~4dよりも壁面3a~3dからそれぞれ離れた位置の領域5とを含む。これにより、コンテナ2の壁面3a~3dにそれぞれ隣接する領域4a~4dと、壁面3a~3dから離れた領域5とのそれぞれについて、ピッキング動作の並進成分を決定するための定義情報105を別個に設定できる。すなわち、複数の領域の各々について、当該領域に適した並進動作を定義する定義情報を設定することができる。 The plurality of areas include areas 4a to 4d adjacent to the walls 3a to 3d in the container 2, respectively, and an area 5 located further away from the walls 3a to 3d than the areas 4a to 4d. As a result, the definition information 105 for determining the translational component of the picking motion is separately provided for each of the regions 4a to 4d adjacent to the walls 3a to 3d of the container 2 and the region 5 away from the walls 3a to 3d. Can be set. That is, for each of a plurality of regions, definition information that defines a translational motion suitable for that region can be set.

領域設定部12aは、壁面3a~3dからの距離情報を用いて領域4a~4d,5を設定すればよい。これにより、領域4a~4d,5を容易に設定できる。 The area setting unit 12a may set the areas 4a to 4d and 5 using distance information from the wall surfaces 3a to 3d. Thereby, the areas 4a to 4d and 5 can be easily set.

例えば、壁面3aに隣接する領域4aに対応付けられた定義情報105は、ワーク1が通過すべき指定位置を指定するための情報である。そして、当該定義情報105によって定義される並進動作は、ワーク1の検出位置と指定位置とを通る直線または曲線に沿った動作である。これにより、領域ごとに指定位置を設定することにより、ピッキング動作の並進成分が決定される。 For example, the definition information 105 associated with the area 4a adjacent to the wall surface 3a is information for designating the designated position through which the workpiece 1 should pass. The translational motion defined by the definition information 105 is motion along a straight line or curved line passing through the detected position and the specified position of the workpiece 1 . Accordingly, the translational component of the picking motion is determined by setting the specified position for each region.

指定位置は、検出位置に応じて指定されてもよい。例えば、図10に示す例では、コンテナ2の上端を通る平面7において、検出位置Pbから下した垂線の足である点Qから逃げ幅F1だけ壁面3aから離れた位置が指定位置Pc2として指定される。これにより、検出位置Pbに適した指定位置が指定される。 The specified position may be specified according to the detected position. For example, in the example shown in FIG. 10, on the plane 7 passing through the upper end of the container 2, a position separated from the wall surface 3a by the relief width F1 from the point Q, which is the foot of the vertical line downward from the detection position Pb, is designated as the designated position Pc2. be. Thereby, a specified position suitable for the detection position Pb is specified.

領域5に対応付けられた定義情報105は、例えば、壁面3aおよび容器の底面3zに直交する平面上において壁面3aに平行な上向きの方向、底面3zの法線方向、鉛直方向上向き、およびこれらの方向よりも壁面3aから離れるように傾斜した方向、のいずれかを示す。領域5に対応付けられた定義情報105によって定義される並進動作は、これらの方向に沿った動作である。領域5は、壁面から離れた位置にある。そのため、これらの方向に沿ったピッキング動作を行なっても、壁面とワーク1との接触リスクが低い。 The definition information 105 associated with the area 5 includes, for example, an upward direction parallel to the wall surface 3a on a plane perpendicular to the wall surface 3a and the bottom surface 3z of the container, a normal direction to the bottom surface 3z, a vertical upward direction, and these directions. , the direction inclined away from the wall surface 3a rather than the direction. The translational motion defined by the definition information 105 associated with the region 5 is motion along these directions. Region 5 is located away from the wall surface. Therefore, the risk of contact between the wall surface and the workpiece 1 is low even when the picking operation is performed along these directions.

領域設定部12aは、コンテナ2が水平面に対して傾斜して設置される場合、コンテナ2の水平面に対する傾斜方向および傾斜角度に応じて、複数の領域の少なくとも1つ(図11に示す例では領域4a、4c)のサイズを調整する。これにより、傾斜に応じて領域のサイズが適宜自動的に調整される。これにより、ユーザの手間を削減できる。 When the container 2 is installed inclined with respect to the horizontal plane, the area setting unit 12a selects at least one of the plurality of areas (in the example shown in FIG. 11, the area Adjust the size of 4a, 4c). Thereby, the size of the region is automatically adjusted appropriately according to the inclination. As a result, the user's trouble can be reduced.

領域設定部12aは、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と、ワーク1の外接直方体RPの表面上の点との最大距離をマージン幅Mとして設定する。そして、領域設定部12aは、壁面3a~3dからそれぞれマージン幅M以内の領域を領域4a~4dとして自動的に設定してもよい。これにより、領域の設定に要するユーザの手間を削減できる。なお、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と、ワーク1の外接直方体RPの表面上の点との最大距離以上の距離がマージン幅Mとして設定されてもよい。 The area setting unit 12a sets the maximum distance between the central point (point P in FIG. 7) of the gripping position of the workpiece 1 by the two claws 33 and a point on the surface of the circumscribing rectangular parallelepiped RP of the workpiece 1 as the margin width M. . Then, the area setting unit 12a may automatically set areas within the margin width M from the wall surfaces 3a to 3d as the areas 4a to 4d. As a result, it is possible to reduce the user's effort required for setting the area. A margin width M is set to a distance equal to or greater than the maximum distance between the center point (point P in FIG. 7) of the gripping position of the workpiece 1 by the two claws 33 and a point on the surface of the circumscribing rectangular parallelepiped RP of the workpiece 1. good too.

<J.変形例>
(J-1.変形例1)
上記の実施の形態では、内底面が平坦であり、内壁面が内側面に対して垂直である直方体状の箱であるコンテナ2を、ワーク1が収容される容器の一例として説明した。しかしながら、ワーク1が収容される容器は、コンテナ2の形状に限定されず、複雑な形状を有していてもよい。
<J. Variation>
(J-1. Modification 1)
In the above embodiment, the container 2, which is a rectangular parallelepiped box having a flat inner bottom surface and an inner wall surface perpendicular to the inner surface, has been described as an example of a container in which the work 1 is accommodated. However, the container in which the work 1 is stored is not limited to the shape of the container 2, and may have a complicated shape.

図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 a container in which works are stored. 20 is a cross-sectional view taken along line VV of FIG. 19. FIG. The container 2a illustrated in Figures 19 and 20 has four recesses 9a-9d. The works are accommodated in the recesses 9a to 9d, or placed on the works accommodated in the recesses 9a to 9d. In the example shown in FIGS. 19 and 20, the work 1b is housed in the recess 9a and the work 1c is housed in the recess 9d. The work 1a is placed on the work 1b accommodated in the recess 9a and positioned above the recess 9a.

図21は、図19に示す凹部9a付近を示す拡大平面図である。図21に示されるように、凹部9aは、4つの壁面3e~3hによって囲まれている。壁面3e,3fは、凹部9aの底面に垂直である。壁面3g,3hは、凹部9aが上方に向かって広がるように、底面の法線方向に対して傾斜している。 21 is an enlarged plan view showing the vicinity of the recess 9a shown in FIG. 19. FIG. As shown in FIG. 21, the recess 9a is surrounded by four wall surfaces 3e to 3h. The wall surfaces 3e and 3f are perpendicular to the bottom surface of the recess 9a. The wall surfaces 3g and 3h are inclined with respect to the normal direction of the bottom surface so that the concave portion 9a widens upward.

領域設定部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 region setting unit 12a may set a plurality of mutually exclusive regions for each of the concave portions 9a to 9d. In the example shown in FIG. 21, the area setting unit 12a sets areas 4i to 4p and 5a for the space inside the recess 9a. Region 4i adjoins walls 3e, 3f. Region 4j adjoins wall surface 3e. The region 4k adjoins the walls 3e, 3h. Region 4l adjoins wall surface 3f. Area 4m adjoins wall surface 3h. Region 4n adjoins wall surfaces 3f and 3g. Region 4o adjoins wall 3g. The region 4p adjoins the walls 3g, 3h. Region 5a is farther from wall surfaces 3e to 3h than regions 4e, 4l, 4o, and 4m, respectively.

情報設定部12bは、各領域に対応付けて、エンドエフェクタ30の並進動作を定義する定義情報105を設定する。図21に示す例では、情報設定部12bは、領域4i~4p,5aに対応付けて、並進動作40i~40p,50aを定義する定義情報105をそれぞれ設定する。 The information setting unit 12b sets definition information 105 that defines the translational motion of the end effector 30 in association with each region. In the example shown in FIG. 21, the information setting unit 12b sets definition information 105 defining translational motions 40i to 40p and 50a in association with the regions 4i to 4p and 5a.

並進動作40iは、領域4iに隣接する壁面3e,3fから離れる方向に移動する動作である。並進動作40jは、領域4jに隣接する壁面3eから離れる方向に移動する動作である。並進動作40lは、領域4lに隣接する壁面3fから離れる方向に移動する動作である。並進動作40mは、領域4mに隣接する壁面3hから離れる方向に移動する動作である。並進動作40oは、領域4oに隣接する壁面3gから離れる方向に移動する動作である。並進動作40pは、領域4pに隣接する壁面3g,3hから離れる方向に移動する動作である。 The translational motion 40i is a motion of moving away from the wall surfaces 3e, 3f adjacent to the region 4i. The translational motion 40j is a motion of moving away from the wall surface 3e adjacent to the region 4j. The translational motion 40l is a motion moving away from the wall surface 3f adjacent to the region 4l. The translational motion 40m is a motion of moving away from the wall surface 3h adjacent to the region 4m. The translational motion 40o is a motion moving away from the wall surface 3g adjacent to the region 4o. The translational motion 40p is a motion of moving away from the wall surfaces 3g and 3h adjacent to the region 4p.

なお、凹部9aの底面とのなす角度が鈍角となるように傾斜している壁面3g,3hへのワークの接触リスクは低い。そのため、領域4m,4o,4pにそれぞれ対応する並進動作40m,40o,40pは、鉛直方向上向き(Z軸正方向)に沿った直線移動であってもよい。 The risk of the work contacting the wall surfaces 3g and 3h, which are inclined at an obtuse angle with the bottom surface of the recess 9a, is low. Therefore, the translational movements 40m, 40o, and 40p corresponding to the regions 4m, 4o, and 4p, respectively, may be linear movements along the vertical upward direction (Z-axis positive direction).

領域4kでは、凹部9aの底面とのなす角度が鈍角となるように傾斜している壁面3hよりも底面に垂直な壁面3eへのワークの接触リスクが高い。そのため、領域4kに対応する並進動作40kは、壁面3eから離れる方向に移動する動作である。同様に、領域4nでは、凹部9aの底面に対して傾斜している壁面3gよりも底面に垂直な壁面3fへのワークの接触リスクが高い。そのため、領域4nに対応する並進動作40nは、壁面3fから離れる方向に移動する動作である。 In the region 4k, the risk of the work contacting the wall surface 3e perpendicular to the bottom surface of the recess 9a is higher than the wall surface 3h inclined at an obtuse angle with the bottom surface of the recess 9a. Therefore, the translational motion 40k corresponding to the region 4k is a motion of moving away from the wall surface 3e. Similarly, in the region 4n, the risk of the workpiece contacting the wall surface 3f perpendicular to the bottom surface of the recess 9a is higher than the wall surface 3g inclined with respect to the bottom surface of the recess 9a. Therefore, the translational motion 40n corresponding to the region 4n is a motion of moving away from the wall surface 3f.

図21に例示される並進動作50aは、鉛直方向上向き(Z軸正方向)に沿った直線移動である。ただし、ロボット300の並進機構における動作精度には誤差がある。そのため、ある方向に直線移動させようとしても、当該方向から誤差分だけ傾斜した方向に移動する可能性がある。凹部9aは、底面に垂直な壁面3e,3fと、底面とのなす角度が鈍角となるように傾斜している壁面3g,3hとに囲まれている。そのため、壁面3g,3hよりも壁面3e,3fへのワークの接触リスクが高い。そこで、図9において例えばラジオボタン80aが操作された場合に、鉛直方向上向き(Z軸正方向)よりも壁面3e,3fから離れるように傾斜した方向に沿った直進動作が並進動作50aとして設定されてもよい。このとき、並進動作50aの方向と鉛直方向上向き(Z軸正方向)とのなす角度は、ロボット300の並進機構における動作精度の誤差以上に設定される。 The translational movement 50a illustrated in FIG. 21 is linear movement along the vertical upward direction (positive Z-axis direction). However, there is an error in the operational accuracy of the translational mechanism of the robot 300 . Therefore, even if an attempt is made to linearly move in a certain direction, there is a possibility that the movement will be in a direction inclined by the error from that direction. The recessed portion 9a is surrounded by wall surfaces 3e and 3f perpendicular to the bottom surface and wall surfaces 3g and 3h inclined so as to form an obtuse angle with the bottom surface. Therefore, the risk of workpiece contact with the wall surfaces 3e and 3f is higher than with the wall surfaces 3g and 3h. Therefore, in FIG. 9, for example, when the radio button 80a is operated, the translational motion 50a is set to be a straight motion along a direction inclined away from the wall surfaces 3e and 3f rather than upward in the vertical direction (positive direction of the Z-axis). may At this time, the angle formed by the direction of the translational motion 50 a and the upward vertical direction (positive direction of the Z-axis) is set to be equal to or greater than the motion accuracy error in the translational mechanism of the robot 300 .

(J-2.変形例2)
コンテナ2,2aに収容された複数のワークを1つずつ順にピッキングする場合、壁面との接触リスクの低いワークからピッキングすることが好ましい。そこで、設定部12は、ピッキング対象となるワークを選択する基準となる優先度を領域ごとに設定してもよい。
(J-2. Modification 2)
When picking a plurality of works housed in the containers 2 and 2a one by one, it is preferable to pick the works having the lowest risk of contact with the wall surface. Therefore, the setting unit 12 may set, for each region, a priority that serves as a criterion for selecting works to be picked.

図22は、変形例2に係る設定部の内部構成を示す図である。図22に例示される設定部12は、領域設定部12aおよび情報設定部12bの他に、優先度設定部12cを含む。 22 is a diagram illustrating an internal configuration of a setting unit according to Modification 2. FIG. The setting unit 12 illustrated in FIG. 22 includes a priority setting unit 12c in addition to the area setting unit 12a and the information setting unit 12b.

優先度設定部12cは、入力装置160への入力に従って、領域設定部12aによって設定された複数の領域の各々について優先度を設定する。優先度設定部12cは、領域ごとに設定した優先度を領域情報104に含める。 The priority setting section 12c sets a priority for each of the plurality of areas set by the area setting section 12a according to the input to the input device 160. FIG. The priority setting unit 12 c includes the priority set for each area in the area information 104 .

例えば、図2に示すコンテナ2の場合、領域5に位置するワーク1は、領域4a~4hに位置するワーク1よりも壁面3a~3dのいずれかへ接触するリスクが低い。そのため、ユーザは、領域5について、領域4a~4hの優先度よりも高い優先度を入力装置160に入力すればよい。これにより、優先度設定部12cは、領域5の優先度を領域4a~4hの優先度よりも高く設定する。 For example, in the case of the container 2 shown in FIG. 2, the workpieces 1 located in the area 5 have a lower risk of contacting any of the walls 3a to 3d than the workpieces 1 located in the areas 4a to 4h. For this reason, the user can input a priority for region 5 to the input device 160 that is higher than the priority for regions 4a to 4h. Thereby, the priority setting unit 12c sets the priority of the area 5 higher than the priority of the areas 4a to 4h.

図21に示すコンテナ2aの場合、底面に垂直な壁面3e,3f近傍のワークは、底面とのなす角度が鈍角となるように傾斜している壁面3g,3h近傍のワークよりも、壁面へ接触するリスクが低い。そのため、ユーザは、壁面3e,3fに隣接する領域について、相対的に低い優先度を入力装置160に入力すればよい。 In the case of the container 2a shown in FIG. 21, the workpieces in the vicinity of the wall surfaces 3e and 3f perpendicular to the bottom surface contact the wall surface more than the workpieces in the vicinity of the wall surfaces 3g and 3h which are inclined at an obtuse angle with the bottom surface. low risk of Therefore, the user may input a relatively low priority to the input device 160 for the areas adjacent to the wall surfaces 3e and 3f.

図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」に設定されている。 23 is a diagram illustrating an example of area information generated in modification 2. FIG. FIG. 23 shows area information 104 generated for the container 2a shown in FIG. As shown in FIG. 23, the priority of the region 5a farthest from the wall surface is set to "1", which is the highest. The priority of the regions 4m and 4o, which are adjacent to only one of the wall surfaces 3g and 3h inclined so as to form an obtuse angle with the bottom surface, is set to the next highest priority "2". The priority of the area 4p adjacent to both the wall surfaces 3g and 3h is set to "3", which is the next highest priority. The priority of the regions 4j and 4l adjacent to only one of the wall surfaces 3e and 3f perpendicular to the bottom surface is set to the next highest priority "4". The priority of the areas 4k and 4n adjacent to one of the wall surfaces 3e and 3f and one of the wall surfaces 3g and 3h is set to the next highest priority "5". The lowest priority is set to "6" for the area 4i adjacent to both the wall surfaces 3e and 3f.

検出部15は、複数のワークを検出した場合、領域情報104を参照して、当該複数のワークの中から優先度の最も高い領域に位置するワークをピッキング対象として選択すればよい。これにより、ロボット300は、壁面との接触リスクの低いワークから順にピッキングすることができる。 When detecting a plurality of works, the detection unit 15 may refer to the area information 104 and select a work located in the area with the highest priority among the plurality of works as a picking target. As a result, the robot 300 can sequentially pick workpieces with a lower risk of contact with the wall surface.

例えば、図19に示す例では、まず、凹部9aの上方に位置しているワーク1aがピッキングされる。次に、底面とのなす角度が鈍角となるように傾斜している壁面近傍に位置するワーク1cがピッキングされる。最後に、底面に垂直な壁面近傍に位置するワーク1bがピッキングされる。 For example, in the example shown in FIG. 19, first, the workpiece 1a positioned above the recess 9a is picked. Next, the workpiece 1c positioned near the wall surface inclined so that the angle formed with the bottom surface is an obtuse angle is picked. Finally, the workpiece 1b located near the wall surface perpendicular to the bottom surface is picked.

(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 cuboid of the work 1 are registered as the shape of the work 1, and the margin width M is calculated based on the circumscribed cuboid. However, in the picking operation, the workpiece 1 and the end effector 30 move together. Therefore, the width, depth, and height of the circumscribed rectangular parallelepiped between the work 1 and the claw 33 of the end effector 30 that grips the work 1 may be registered, and the margin width M may be calculated based on the circumscribed rectangular parallelepiped. This reduces the risk of contact between the claw 33 of the end effector 30 and the wall surface.

(J-4.変形例4)
上記の説明では、2つの爪33によるワーク1の把持位置の中心点(図7の点P)と対象物の表面上の点との最大距離がマージン幅Mとして設定されるものとした。しかしながら、例えば、エンドエフェクタ30が1つの吸着パッドを用いてワーク1を吸着する場合、ワーク1に対する当該吸着パッドの吸着位置(保持位置)とワーク1の表面上の点との最大距離以上がマージン幅Mとして設定される。
(J-4. Modification 4)
In the above description, the margin width M is set as the maximum distance between the center point (point P in FIG. 7) of the gripping position of the workpiece 1 by the two claws 33 and a point on the surface of the object. However, for example, when the end effector 30 uses one suction pad to suck the workpiece 1, the maximum distance between the suction position (holding position) of the suction pad on the workpiece 1 and a point on the surface of the workpiece 1 is a margin. It is set as width M.

(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 definition information 105 associated with the regions 4a to 4h is the relief width from the point Q, which is the foot of the vertical line extending from the detection position Pb, and the specified position Pc2 on the plane 7 passing through the upper end of the container 2. F1 is shown (see FIG. 10). As a result, the specified position Pc2 is specified by the definition information 105, and the translational movement is defined so as to pass through the specified position Pc2.

しかしながら、領域4a~4hに対応付けられた定義情報105は、壁面の上端から壁面の法線方向に沿った距離である逃げ幅F2(図10および図13参照)を示してもよい。この場合、平面7において、壁面の上端から壁面の法線方向に逃げ幅F2だけ離れた位置が指定位置Pc3として指定される。そして、定義情報105によって定義される並進動作は、検出位置Pbと指定位置Pc3とを通る直線または曲線に沿った動作となる。なお、逃げ幅F2は、距離DM1,Dm2,WM1,WM2(図8参照)以上に設定される。 However, the definition information 105 associated with the regions 4a to 4h may indicate the relief width F2 (see FIGS. 10 and 13), which is the distance along the normal direction of the wall surface from the upper end of the wall surface. In this case, on the plane 7, a position separated from the upper end of the wall surface by the relief width F2 in the normal direction of the wall surface is designated as the designated position Pc3. The translational motion defined by the definition information 105 is a motion along a straight line or curved line passing through the detection position Pb and the designated position Pc3. The relief width F2 is set to be greater than or equal to the distances DM1, Dm2, WM1, WM2 (see FIG. 8).

(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 definition information 105 associated with the areas 4a to 4h indicates the specified positions through which the workpiece 1 should pass. However, the definition information 105 associated with each of the areas 4a to 4h may indicate the direction away from the wall surface adjacent to the area. For example, the definition information 105 associated with the area 4a adjacent to the wall surface 3a may indicate an upward direction away from the wall surface 3a on a plane orthogonal to the wall surface 3a and the bottom surface 3z. In this case, the translational motion defined by the definition information 105 is a motion in which the direction of the end point with respect to the starting point matches the direction indicated by the definition information 105 . Note that the translational motion defined by the definition information 105 may be a linear motion along the direction indicated by the definition information 105, or may be a slightly curving motion from the starting point of the picking motion to the end point. good.

(J-7.変形例7)
上記の実施の形態では、対象となる壁面に隣接する領域に対して、当該壁面から離れる方向に移動する並進動作を定義する定義情報105が設定される。これにより、ピッキング動作において、対象となる壁面へのワークの接触リスクを低減できる。ただし、ワークを収容する容器の形状によっては、対象となる壁面へのワークの接触リスクを低減できたとしても、当該壁面とは異なる壁面へのワークの接触リスクが依然として高い場合がある。このような場合、当該異なる壁面への接触リスクを低減するために、ピッキング動作の回転成分が決定されてもよい。
(J-7. Modification 7)
In the embodiment described above, the definition information 105 defining the translational motion of moving away from the wall surface is set for the area adjacent to the wall surface of interest. As a result, the risk of the work contacting the target wall surface can be reduced in the picking operation. However, depending on the shape of the container that houses the work, even if the risk of contact of the work with the target wall surface can be reduced, the risk of contact of the work with a different wall surface may still be high. In such cases, a rotational component of the picking motion may be determined to reduce the risk of contacting the different walls.

図24は、ワークを収容するコンテナのさらに別の例を示す平面図である。図25は、図24に示すコンテナを示す縦断面図である。 FIG. 24 is a plan view showing still another example of a container that accommodates works. 25 is a longitudinal sectional view of the container shown in FIG. 24; FIG.

図24に例示されるコンテナ2bは、壁面3i,3j,3kを有する。コンテナ2b内の空間において壁面3iの法線方向に沿った長さは、直方体状のワーク1の対角線の長さよりも十分に長い。そのため、壁面3iに隣接する領域に対して、壁面3iから離れる方向の並進動作40を定義する定義情報105を設定することにより、ピッキング動作において壁面3iへのワークの接触リスクを低減できる。 A container 2b illustrated in FIG. 24 has walls 3i, 3j, 3k. In the space inside the container 2b, the length along the normal direction of the wall surface 3i is sufficiently longer than the length of the diagonal line of the rectangular parallelepiped workpiece 1. As shown in FIG. Therefore, by setting the definition information 105 defining the translational motion 40 in the direction away from the wall surface 3i for the area adjacent to the wall surface 3i, the risk of the workpiece contacting the wall surface 3i during the picking operation can be reduced.

壁面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 wall surface 3i. Wall surfaces 3j and 3k face each other. The distance between the wall surface 3j and the wall surface 3k is about the same as the length of the diagonal line of the rectangular parallelepiped workpiece 1. As shown in FIG. Therefore, when the work 1 is translated in a direction away from the wall surface 3j, the possibility of the work 1 coming into contact with the wall surface 3k increases. Therefore, based on the posture of the work 1 detected by the detection unit 15, the motion command determination unit 16 determines the rotation component of the picking motion so that the shortest distance between the work 1 and the walls 3j and 3k is long.

例えば、動作指令決定部16は、検出部15によって検出された位置姿勢のワーク1をコンテナ2bの底面に平行な平面に投影し、投影部分の外接矩形を特定する。次に、動作指令決定部16は、特定した外接矩形の4つの頂点に内接する円90の中心Oを通り、かつ、コンテナ2bの底面の法線方向に平行な軸を回転軸として決定する。 For example, the motion command determination unit 16 projects the workpiece 1 having the position and orientation detected by the detection unit 15 onto a plane parallel to the bottom surface of the container 2b, and specifies the circumscribed rectangle of the projected portion. Next, the motion command determination unit 16 determines an axis passing through the center O of a circle 90 inscribed at the four vertices of the identified circumscribing rectangle and parallel to the normal direction of the bottom surface of the container 2b as the rotation axis.

なお、動作指令決定部16は、ワーク1を把持するときの爪33が外接矩形の4つの頂点に内接する円の内部に位置するか否かを判定してもよい。動作指令決定部16は、判定結果が否を示す場合、ワーク1を把持するときの爪33が内部に含まれるように円90の位置およびサイズを補正し、補正後の円90の中心Oを通り、かつ、コンテナ2bの底面の法線方向に平行な軸を回転軸として決定してもよい。 The motion command determination unit 16 may determine whether or not the claw 33 when gripping the workpiece 1 is positioned inside a circle inscribed at the four vertices of the circumscribing rectangle. If the determination result indicates no, the motion command determination unit 16 corrects the position and size of the circle 90 so that the claw 33 when gripping the workpiece 1 is included therein, and sets the center O of the circle 90 after correction. An axis parallel to the normal direction of the bottom surface of the container 2b may be determined as the rotation axis.

次に、動作指令決定部16は、特定した外接矩形の長辺と壁面3j,3kとのなす角度を回転角度として計算するとともに、外接矩形の長辺を壁面3j,3kと平行にするための回転方向(図24に示す例では時計回りの方向)を決定する。動作指令決定部16は、決定した回転方向に回転角度だけ回転させる回転動作45をピッキング動作の回転成分として決定する。これにより、並進動作40により壁面3iとワーク1との接触リスクを低減するとともに、回転動作45により壁面3j,3kとワーク1との接触リスクを低減できる。 Next, the motion command determining unit 16 calculates the angles formed by the long sides of the identified enclosing rectangle and the wall surfaces 3j and 3k as rotation angles, and also rotates the long sides of the enclosing rectangle to be parallel to the wall surfaces 3j and 3k. Determine the direction of rotation (clockwise direction in the example shown in FIG. 24). The motion command determination unit 16 determines a rotation motion 45 for rotating in the determined rotation direction by the rotation angle as the rotation component of the picking motion. As a result, the risk of contact between the wall surface 3i and the workpiece 1 can be reduced by the translational movement 40, and the risk of contact between the wall surfaces 3j and 3k and the workpiece 1 can be reduced by the rotational movement 45.

<K.付記>
以上のように、本実施の形態および変形例は以下のような開示を含む。
<K. Note>
As described above, the present embodiment and modifications 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)。
(Configuration 1)
A device (100) for determining the movement of a robot (300) for picking objects (1) contained in containers (2, 2a, 2b), comprising:
an area setting unit (12a) for setting a plurality of areas (4a to 4p, 5, 5a) that are mutually exclusive in the space within the container (2, 2a, 2b);
Information setting for setting definition information (105) defining translational motion of an end effector (30) of the robot (300) in association with each of the plurality of areas (4a to 4p, 5, 5a) a part (12b);
a detection unit (15) for detecting the position of the object (1) based on an image obtained by imaging the container (2, 2a, 2b);
Determination unit ( 16) and
The determination unit (16) is defined by the definition information (105) associated with an area including the position detected by the detection unit (15) among the plurality of areas (4a to 4p, 5, 5a). apparatus (100) for determining an applied translational motion as a translational component of said 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)。
(Configuration 2)
The plurality of regions (4a to 4p, 5, 5a) include first regions (4a to 4p) adjacent to first target wall surfaces (3a to 3i) in the container (2, 2a, 2b), and the first A device (100) according to configuration 1, comprising a second region (5, 5a) located further from said first target wall surface (3a-3i) than the first region.

(構成3)
前記領域設定部(12a)は、前記第1対象壁面(3a~3i)からの距離情報を用いて前記第1領域(4a~4p)および前記第2領域(5,5a)を設定する、構成2に記載の装置(100)。
(Composition 3)
The area setting unit (12a) sets the first area (4a to 4p) and the second area (5, 5a) using distance information from the first target wall surface (3a to 3i). 3. The apparatus (100) of claim 2.

(構成4)
前記第1領域(4a~4p)に対応付けられた第1定義情報は、前記第1対象壁面(30a~30i)から遠ざかる第1方向を示し、
前記第1定義情報によって定義される並進動作は、起点に対する終点の方向が前記第1方向に一致する動作である、構成2または3に記載の装置(100)。
(Composition 4)
The first definition information associated with the first area (4a-4p) indicates a first direction away from the first target wall surface (30a-30i),
4. The apparatus (100) according to configuration 2 or 3, wherein the translational motion defined by said first definition information is a motion in which a direction of an end point with respect to an origin coincides with said first direction.

(構成5)
前記第1領域(4a~4p)に対応付けられた第1定義情報は、前記対象物(1)が通過すべき指定位置を指定するための情報であり、
前記第1定義情報によって定義される並進動作は、前記検出された位置と前記指定位置とを通る直線または曲線に沿った動作である、構成2または3に記載の装置(100)。
(Composition 5)
The first definition information associated with the first regions (4a to 4p) is information for designating a designated position through which the object (1) should pass,
4. The apparatus (100) of configuration 2 or 3, wherein the translational motion defined by the first definition information is motion along a straight line or curve passing through the detected position and the specified position.

(構成6)
前記指定位置は、前記検出された位置に応じて指定される、構成5に記載の装置(100)。
(Composition 6)
6. The apparatus (100) of configuration 5, wherein the specified location is specified in response to the detected location.

(構成7)
前記第1領域(4a~4p)は、前記第1対象壁面(3a~3i)から第1距離以内であり、
前記指定位置は、前記第1対象壁面(3a~3i)の上端から前記第1対象壁面の法線方向に沿って第2距離だけ離れた位置であり、
前記第2距離は前記第1距離以上である、構成5に記載の装置(100)。
(Composition 7)
The first regions (4a-4p) are within a first distance from the first target wall surfaces (3a-3i),
The specified 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,
6. The apparatus (100) of configuration 5, wherein said second distance is greater than or equal to said first distance.

(構成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)。
(Composition 8)
The second definition information associated with the second region (5, 5a) is on a plane perpendicular 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 ∼ 3i) in a direction slanted away from
8. The apparatus (100) of any of configurations 2-7, wherein the translational motion defined by the second definition information is motion along the second direction.

(構成9)
前記容器(2,2a,2b)は、水平面に対して傾斜しており、
前記領域設定部(12a)は、前記容器(2,2a,2b)の水平面に対する傾斜方向および傾斜角度に応じて前記複数の領域の少なくとも1つのサイズを調整する、構成1から8のいずれかに記載の装置(100)。
(Composition 9)
The container (2, 2a, 2b) is inclined with respect to a horizontal plane,
9. Any one of configurations 1 to 8, wherein the region setting unit (12a) adjusts the size of at least one of the plurality of regions according to the direction and angle of inclination of the container (2, 2a, 2b) with respect to the horizontal plane A device (100) as described.

(構成10)
前記領域設定部(12a)は、
前記エンドエフェクタ(30)による前記対象物(1)の保持位置と前記対象物(1)の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面(3a~3i)から前記第1距離以内の領域を前記第1領域(4a~4p)として設定する、構成3に記載の装置(100)。
(Configuration 10)
The region setting unit (12a)
setting 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);
The device (100) according to configuration 3, wherein a region within said first distance from said first target wall surface (3a-3i) is set as said first region (4a-4p).

(構成11)
前記エンドエフェクタ(30)は、複数の爪(33)を有し、
前記領域設定部(12a)は、
前記複数の爪(33)による前記対象物(1)の保持位置の中心点と、前記対象物(1)に外接する直方体、または前記対象物(1)および前記対象物を保持する前記複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面(3a~3i)から前記第1距離以内の領域を前記第1領域として設定する、構成3に記載の装置(100)。
(Composition 11)
The end effector (30) has a plurality of claws (33),
The region setting unit (12a)
A 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 object (1) and the plurality of holding positions of the object setting a first distance greater than or equal to the maximum distance from a point on the surface of the cuboid circumscribing the nail;
The device (100) according to configuration 3, wherein a region within the first distance from the first target wall surface (3a-3i) is set as the first region.

(構成12)
前記検出部(15)は、前記対象物(1)の姿勢をさらに検出し、
前記決定部(16)は、前記検出部(15)によって検出された姿勢に基づいて、前記対象物(1)と前記容器(2b)内における第2対象壁面(3j,3k)との最短距離が長くなるように前記ピッキング動作の回転成分をさらに決定する、構成1から11のいずれかに記載の装置(100)。
(Composition 12)
The detection unit (15) further detects the posture of the object (1),
The determination unit (16) determines the shortest distance between the object (1) and second object wall surfaces (3j, 3k) in the container (2b) based on the orientation detected by the detection unit (15). 12. Apparatus (100) according to any of the configurations 1 to 11, further determining a rotational component of said picking motion such that .

(構成13)
前記複数の領域(4a~4p,5,5a)の各々の優先度を設定するための優先度設定部(12c)をさらに備え、
前記容器(2,2a,2b)には複数の物体(1)が収容されており、
前記検出部(15)は、
前記複数の物体(1)の各々の位置を検出し、
前記複数の物体(1)のうち、前記優先度の最も高い領域に属する物体を前記対象物(1)として決定する、構成1から12のいずれかに記載の装置(100)。
(Composition 13)
Further comprising a priority setting unit (12c) for setting the priority of each of the plurality of areas (4a to 4p, 5, 5a),
A plurality of objects (1) are accommodated in the container (2, 2a, 2b),
The detection unit (15) is
detecting the position of each of the plurality of objects (1);
13. The apparatus (100) according to any of the configurations 1 to 12, wherein an object belonging to said highest priority region among said plurality of objects (1) is determined as said target object (1).

(構成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)によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップを含む、方法。
(Composition 14)
A method for determining a movement of a robot (300) for picking an object (1) contained in a container (2, 2a, 2b), comprising:
setting a plurality of regions (4a to 4p, 5, 5a) that are mutually exclusive in the space within the container (2, 2a, 2b);
a step of setting definition information (105) defining a translational motion of an end effector (30) of the robot (300) in association with each of the plurality of areas (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);
determining a picking operation of the end effector (30) from holding the object (1) to conveying the object (1) out of the container (2, 2a, 2b);
The step of determining the picking action comprises:
the translational motion 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) as the picking motion; determining as the 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)を前記ピッキング動作の並進成分として決定するステップとを含む、プログラム。
(Composition 15)
A program for causing a computer to execute a method for determining a movement of a robot for picking an object contained in a container,
The method includes:
setting a plurality of regions (4a to 4p, 5, 5a) that are mutually exclusive in the space within the container (2, 2a, 2b);
a step of setting definition information (105) defining a translational motion of an end effector (30) of the robot (300) in association with each of the plurality of areas (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);
determining a picking operation of the end effector (30) from holding the object (1) to conveying the object (1) out of the container (2, 2a, 2b);
The step of determining the picking action comprises:
determining the definition information (105) associated with an area including the position detected by the detection unit (15) among the plurality of areas (4a to 4p, 5, 5a) as a translational component of the picking motion; A program, including steps and .

本発明の実施の形態について説明したが、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。 Although the embodiments of the present invention have been described, the embodiments disclosed this time should be considered as illustrative in all respects and not restrictive. The scope of the present invention is indicated by the claims, and is intended to include all changes within the meaning and range of equivalents to the 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 region, 7 plane, 8 upper end 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 nail, 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 frame line, 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 measurement head, 401 projection unit, 402 imaging unit, RP circumscribed cuboid, SYS control system.

Claims (14)

容器に収容された対象物をピッキングするロボットの動作を決定する装置であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定し、
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含み、
前記第1領域に対応付けられた第1定義情報は、前記対象物が通過すべき指定位置を指定するための情報であり、
前記第1定義情報によって定義される並進動作は、前記検出された位置と前記指定位置とを通る直線または曲線に沿った動作であり、
前記第1領域は、前記第1対象壁面から第1距離以内であり、
前記指定位置は、前記第1対象壁面の上端から前記第1対象壁面の法線方向に沿って第2距離だけ離れた位置であり、
前記第2距離は前記第1距離以上である、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The plurality of regions includes 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,
the first definition information associated with the first area is information for designating a designated position through which the object should pass;
The translational motion defined by the first definition information is motion along a straight line or curve passing through the detected position and the specified position,
The first region is within a first distance from the first target wall surface,
The designated position is 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 apparatus , wherein the second distance is greater than or equal to the first distance.
容器に収容された対象物をピッキングするロボットの動作を決定する装置であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定し、
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含み、
前記第2領域に対応付けられた第2定義情報は、前記第1対象壁面および前記容器の底面に直交する平面上において前記第1対象壁面に平行な上向きの方向、前記底面の法線方向、鉛直方向上向き、および、これらの方向のいずれかに対して前記第1対象壁面から離れるように傾斜した方向、のいずれかである第2方向を示し、
前記第2定義情報によって定義される並進動作は、前記第2方向に沿った動作である、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The plurality of regions includes 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,
The second definition information associated with the second area 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, a normal direction to the bottom surface, a second direction that is either vertically upward and a direction slanted away from the first target wall surface with respect to any of these directions;
The device , wherein the translational motion defined by the second definition information is motion along the second direction.
容器に収容された対象物をピッキングするロボットの動作を決定する装置であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定し、
前記容器は、水平面に対して傾斜しており、
前記領域設定部は、前記容器の水平面に対する傾斜方向および傾斜角度に応じて前記複数の領域の少なくとも1つのサイズを調整する、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The container is inclined with respect to a horizontal plane,
The device according to claim 1, 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対象壁面から離れた位置の第2領域とを含み、
前記領域設定部は、
前記第1対象壁面からの距離情報を用いて前記第1領域および前記第2領域を設定し、
前記エンドエフェクタによる前記対象物の保持位置と前記対象物の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面から前記第1距離以内の領域を前記第1領域として設定する、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The plurality of regions includes 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,
The area setting unit
setting the first area and the second area using distance information from the first target wall surface;
setting a first distance equal to or greater than a maximum distance between a position where the end effector holds the object and a point on the surface of the object;
An apparatus for setting an area within the first distance from the first target wall surface as the first area.
容器に収容された対象物をピッキングするロボットの動作を決定する装置であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定し、
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含み、
前記エンドエフェクタは、複数の爪を有し、
前記領域設定部は、
前記第1対象壁面からの距離情報を用いて前記第1領域および前記第2領域を設定し、
前記複数の爪による前記対象物の保持位置の中心点と、前記対象物に外接する直方体、または前記対象物および前記対象物を保持する前記複数の爪に外接する直方体の表面上の点との最大距離以上の第1距離を設定し、
前記第1対象壁面から前記第1距離以内の領域を前記第1領域として設定する、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The plurality of regions includes 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,
The end effector has a plurality of claws,
The area setting unit
setting the first area and the second area using distance information from the first target wall surface;
A center point of the holding position of the object by the plurality of claws and a point on the surface of a rectangular parallelepiped circumscribing the object or the object and the plurality of claws holding the object Set the first distance greater than or equal to the maximum distance,
An apparatus for setting an area within the first distance from the first target wall surface as the first area.
容器に収容された対象物をピッキングするロボットの動作を決定する装置であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するための領域設定部と、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するための情報設定部と、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するための検出部と、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するための決定部とを備え、
前記決定部は、前記複数の領域のうち前記検出部によって検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定し、
前記検出部は、前記対象物の姿勢をさらに検出し、
前記決定部は、前記検出部によって検出された姿勢に基づいて、前記対象物と前記容器内における第2対象壁面との最短距離が長くなるように前記ピッキング動作の回転成分をさらに決定する、装置。
A device for determining the motion of a robot for picking an object contained in a container,
a region setting unit for setting a plurality of mutually exclusive regions in the space within the container;
an information setting unit for setting definition information defining a translational motion of an end effector of the robot in association with each of the plurality of areas;
a detection unit for detecting the position of the object based on an image obtained by imaging the container;
a determination unit for determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The determining unit determines, as a translational component of the picking motion, a translational movement defined by the definition information associated with an area including the position detected by the detecting unit among the plurality of areas,
The detection unit further detects a posture of the object,
wherein the determination unit further determines a rotation component of the picking operation based on the attitude detected by the detection unit so that the shortest distance between the object and a second object wall surface in the container is long . place.
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含む、請求項3または6に記載の装置。 7. The plurality of regions include a first region adjacent to the first target wall surface within the container, and a second region located farther from the first target wall surface than the first region. The apparatus described in . 前記領域設定部は、前記第1対象壁面からの距離情報を用いて前記第1領域および前記第2領域を設定する、請求項7に記載の装置。 8. The apparatus according to claim 7 , wherein said area setting section sets said first area and said second area using distance information from said first target wall surface. 前記第1領域に対応付けられた第1定義情報は、前記第1対象壁面から遠ざかる第1方向を示し、
前記第1定義情報によって定義される並進動作は、起点に対する終点の方向が前記第1方向に一致する動作である、請求項2,4,5,7および8のいずれか1項に記載の装置。
The first definition information associated with the first area indicates a first direction away from the first target wall surface,
9. The apparatus according to any one of claims 2, 4, 5, 7 and 8, wherein the translational motion defined by said first definition information is a motion in which a direction of an end point with respect to a starting point is aligned with said first direction. .
前記第1領域に対応付けられた第1定義情報は、前記対象物が通過すべき指定位置を指定するための情報であり、
前記第1定義情報によって定義される並進動作は、前記検出された位置と前記指定位置とを通る直線または曲線に沿った動作である、請求項2,4,5,7および8のいずれか1項に記載の装置。
the first definition information associated with the first area is information for designating a designated position through which the object should pass;
9. Any one of claims 2, 4, 5, 7 and 8, wherein the translational motion defined by the first definition information is a motion along a straight line or a curved line passing through the detected position and the specified position. 3. Apparatus according to paragraph .
前記指定位置は、前記検出された位置に応じて指定される、請求項10に記載の装置。 11. The device according to claim 10 , wherein said designated position is designated according to said detected position. 前記複数の領域の各々の優先度を設定するための優先度設定部をさらに備え、
前記容器には複数の物体が収容されており、
前記検出部は、
前記複数の物体の各々の位置を検出し、
前記複数の物体のうち、前記優先度の最も高い領域に属する物体を前記対象物として決定する、請求項1から11のいずれか1項に記載の装置。
Further comprising a priority setting unit for setting the priority of each of the plurality of areas,
The container contains a plurality of objects,
The detection unit is
detecting the position of each of the plurality of objects;
12. The apparatus according to any one of claims 1 to 11 , wherein, among the plurality of objects, an object belonging to the region with the highest priority is determined as the target object.
容器に収容された対象物をピッキングするロボットの動作を決定する方法であって、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップと、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップと、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するステップと、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域のうち検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップを含み、
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含み、
前記第2領域に対応付けられた第2定義情報は、前記第1対象壁面および前記容器の底面に直交する平面上において前記第1対象壁面に平行な上向きの方向、前記底面の法線方向、鉛直方向上向き、および、これらの方向のいずれかに対して前記第1対象壁面から離れるように傾斜した方向、のいずれかである第2方向を示し、
前記第2定義情報によって定義される並進動作は、前記第2方向に沿った動作である、、方法。
1. A method for determining a movement of a robot for picking an object contained in a container, comprising:
setting a plurality of mutually exclusive regions in the space within the container;
setting definition information defining a translational movement of an end effector of the robot in association with each of the plurality of areas;
a step of detecting the position of the object based on an image obtained by imaging the container;
determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The step of determining the picking action comprises:
determining, as a translational component of the picking motion, a translational motion defined by the definition information associated with the region including the detected position among the plurality of regions ;
The plurality of regions includes 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,
The second definition information associated with the second area 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, a normal direction to the bottom surface, a second direction that is either vertically upward and a direction slanted away from the first target wall surface with respect to any of these directions;
, the method , wherein the translational motion defined by the second definition information is motion along the second direction .
容器に収容された対象物をピッキングするロボットの動作を決定する方法をコンピュータに実行させるプログラムであって、
前記方法は、
前記容器内の空間において、互いに排他的な関係にある複数の領域を設定するステップと、
前記複数の領域の各々と対応付けて、前記ロボットが有するエンドエフェクタの並進動作を定義する定義情報を設定するステップと、
前記容器を撮像することにより得られた画像に基づいて、前記対象物の位置を検出するステップと、
前記対象物を保持してから前記対象物を前記容器外に搬送するまでの前記エンドエフェクタのピッキング動作を決定するステップとを備え、
前記ピッキング動作を決定するステップは、
前記複数の領域のうち検出された位置を含む領域に対応付けられた前記定義情報によって定義される並進動作を前記ピッキング動作の並進成分として決定するステップとを含み、
前記複数の領域は、前記容器内における第1対象壁面に隣接する第1領域と、前記第1領域よりも前記第1対象壁面から離れた位置の第2領域とを含み、
前記第2領域に対応付けられた第2定義情報は、前記第1対象壁面および前記容器の底面に直交する平面上において前記第1対象壁面に平行な上向きの方向、前記底面の法線方向、鉛直方向上向き、および、これらの方向のいずれかに対して前記第1対象壁面から離れるように傾斜した方向、のいずれかである第2方向を示し、
前記第2定義情報によって定義される並進動作は、前記第2方向に沿った動作である、プログラム。
A program for causing a computer to execute a method for determining a movement of a robot for picking an object contained in a container,
The method includes:
setting a plurality of mutually exclusive regions in the space within the container;
setting definition information defining a translational movement of an end effector of the robot in association with each of the plurality of areas;
a step of detecting the position of the object based on an image obtained by imaging the container;
determining a picking operation of the end effector from holding the object to conveying the object out of the container;
The step of determining the picking action comprises:
determining, as a translational component of the picking motion, a translational motion defined by the definition information associated with the region including the detected position among the plurality of regions ;
The plurality of regions includes 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,
The second definition information associated with the second area 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, a normal direction to the bottom surface, a second direction that is either vertically upward and a direction slanted away from the first target wall surface with respect to any of these directions;
The program , wherein the translational motion defined by the second definition information is motion along the second direction .
JP2019137588A 2019-07-26 2019-07-26 Apparatus, method and program for determining robot motion Active JP7331527B2 (en)

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 JP2021020266A (en) 2021-02-18
JP7331527B2 true 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)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW202233370A (en) 2021-02-18 2022-09-01 日商發那科股份有限公司 Robot system, and control device
US20220355474A1 (en) * 2021-05-04 2022-11-10 Mujin, Inc. Method and computing system for performing robot motion planning and repository detection
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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012106335A (en) 2012-02-27 2012-06-07 Fujitsu Ltd Method, device and program for generating moving route, and device and program for controlling robot arm
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
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
JP2012106335A (en) 2012-02-27 2012-06-07 Fujitsu Ltd Method, device and program for generating moving route, and device and program for controlling robot arm
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

Also Published As

Publication number Publication date
JP2021020266A (en) 2021-02-18

Similar Documents

Publication Publication Date Title
JP7331527B2 (en) Apparatus, method and program for determining robot motion
JP6984633B2 (en) Devices, methods and programs that detect the position and orientation of an object
JP6427972B2 (en) Robot, robot system and control device
US10279473B2 (en) Image processing device, image processing method, and computer program
US9415511B2 (en) Apparatus and method for picking up article randomly piled using robot
US10805546B2 (en) Image processing system, image processing device, and image processing program
EP1413850B1 (en) Optical sensor for measuring position and orientation of an object in three dimensions
JP6879238B2 (en) Work picking device and work picking method
US12002240B2 (en) Vision system for a robotic machine
KR20140008262A (en) Robot system, robot, robot control device, robot control method, and robot control program
JP6758903B2 (en) Information processing equipment, information processing methods, programs, systems, and article manufacturing methods
JP7180783B2 (en) CALIBRATION METHOD FOR COMPUTER VISION SYSTEM AND 3D REFERENCE OBJECT USED FOR CALIBRATION METHOD
JP6973444B2 (en) Control system, information processing device and control method
JP2010210511A (en) Recognition device of three-dimensional positions and attitudes of objects, and method for the same
JP7365567B2 (en) Measurement system, measurement device, measurement method and measurement program
JP2021024052A (en) Image processing device, image processing method and program
JP2018146347A (en) Image processing device, image processing method, and computer program
JP7519222B2 (en) Image Processing Device
JP7535400B2 (en) Image Processing Device
CN114901441B (en) Control device for robot system, control method for robot system, computer control program, and robot system
JP7538595B2 (en) Measuring Equipment
JP7055883B2 (en) robot
JP2021091056A (en) measuring device
JP7552468B2 (en) Position measuring device, position measuring method, position measuring program, and logistics system
WO2023209974A1 (en) Control device, control system, robot system, control method, and computer program

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