JP2017217726A - robot - Google Patents

robot Download PDF

Info

Publication number
JP2017217726A
JP2017217726A JP2016113714A JP2016113714A JP2017217726A JP 2017217726 A JP2017217726 A JP 2017217726A JP 2016113714 A JP2016113714 A JP 2016113714A JP 2016113714 A JP2016113714 A JP 2016113714A JP 2017217726 A JP2017217726 A JP 2017217726A
Authority
JP
Japan
Prior art keywords
distance
distance measurement
cells
workpiece
work
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2016113714A
Other languages
Japanese (ja)
Other versions
JP6747665B2 (en
Inventor
宏平 菊地
Kohei Kikuchi
宏平 菊地
原田 研介
Kensuke Harada
研介 原田
偉偉 万
Weiwei Wan
偉偉 万
徳生 辻
Norio Tsuji
徳生 辻
和之 永田
Kazuyuki Nagata
和之 永田
弘 音田
Hiroshi Onda
弘 音田
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.)
National Institute of Advanced Industrial Science and Technology AIST
Toyota Motor Corp
Original Assignee
National Institute of Advanced Industrial Science and Technology AIST
Toyota Motor 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 National Institute of Advanced Industrial Science and Technology AIST, Toyota Motor Corp filed Critical National Institute of Advanced Industrial Science and Technology AIST
Priority to JP2016113714A priority Critical patent/JP6747665B2/en
Publication of JP2017217726A publication Critical patent/JP2017217726A/en
Application granted granted Critical
Publication of JP6747665B2 publication Critical patent/JP6747665B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

PROBLEM TO BE SOLVED: To provide a technique which improves accuracy in recognition of positions and attitudes of multiple work-pieces stored in bulk.SOLUTION: A robot 3 comprises: a work-piece recognition part 16 recognizing an inner space of a box 2 after dividing it into multiple cells 27, and then detecting a position of a work-piece 1 on the basis of positions of cells 27 in each of which a point cloud is detected using a distance image, among the divided cells 27; a distance measurement condition determining part 14 identifying cells 27 that are, among the divided cells 27, at least one of cells 27 excluding cells 27 labeled as "Occupied", as well as cells 27 each arranged at a position where the work-piece 1 has been detected by the work-piece recognition part 16, and then determining a distance measurement condition for a distance sensor 5 causing the number of cells 27 entering a sensing area of the distance sensor 5 to increase, among cells 27 labeled as "Occluded"; and distance measurement implementing part 15 moving the distance sensor 5 according to the distance measurement condition.SELECTED DRAWING: Figure 7

Description

本発明は、ロボットに関する。   The present invention relates to a robot.

この種の技術として、特許文献1は、ロボットがハンドなどのエンドエフェクタを用いて部品を把持して組み立てを行なうに際し、部品とロボットとの間の相対的な位置及び姿勢を計測する技術を開示している。ロボットは、撮像装置によって部品を撮像して得られた二次元画像と、距離センサによって計測された部品の距離データと、を用いて部品の位置及び姿勢の計測を行なうとしている。   As this type of technology, Patent Document 1 discloses a technology for measuring a relative position and posture between a component and the robot when the robot grips and assembles the component using an end effector such as a hand. doing. The robot is supposed to measure the position and orientation of a component using a two-dimensional image obtained by imaging the component with an imaging device and the distance data of the component measured by a distance sensor.

特開2012−021958号公報JP 2012-021958 A

しかしながら、複数の部品がバラ積み状態で箱に収容されている場合、撮像装置や距離センサにとっての死角が不可避的に発生する。また、その死角は、部品が箱から取り出されるたびに変化する場合もある。従って、上記特許文献1の技術では、部品の位置及び姿勢の計測に改善の余地が残されていた。   However, when a plurality of components are housed in a box in a stacked state, a blind spot for the imaging device and the distance sensor inevitably occurs. The blind spot may also change each time a part is removed from the box. Therefore, the technique of Patent Document 1 leaves room for improvement in the measurement of the position and orientation of parts.

本発明の目的は、バラ積み状態で収容されている複数のワークの位置及び姿勢の認識精度を向上させる技術を提供することにある。   The objective of this invention is providing the technique which improves the recognition accuracy of the position and attitude | position of the some workpiece | work accommodated in the piled-up state.

測距センサを用いたセンシング結果に基づいて所望の対象物を検出し、検出した前記対象物をハンドで取り出す、ロボットであって、計測領域を複数のセルに分割して認識した上で、当該分割したセルの中から、前記測距センサの前記センシング結果を用いて物体が検出される位置のセルである第1セルの位置に基づいて前記対象物の位置を検出する処理を実行する検出処理手段と、前記分割したセルのうち、前記第1セルを除くセル、及び、前記検出処理手段によって前記対象物が検出された位置のセル、の少なくとも何れかのセルである第2セルを特定し、前記第2セルのうち、前記測距センサのセンシング範囲に入る前記第2セルの数が増加するような前記測距センサの移動位置を算出する算出手段と、前記算出手段によって算出された前記移動位置に対応付けて、前記測距センサを移動させる移動手段と、を備えたロボットが提供される。以上の方法によれば、前記第3のステップにおいて、前記複数のワークの位置及び姿勢の認識精度が向上する。   A robot that detects a desired object based on a sensing result using a distance measuring sensor and takes out the detected object with a hand. The robot divides a measurement area into a plurality of cells, recognizes the object, A detection process for executing the process of detecting the position of the object based on the position of the first cell, which is a cell where the object is detected using the sensing result of the distance measuring sensor, from among the divided cells And a second cell that is at least one of the divided cells, the cell excluding the first cell, and the cell at which the object is detected by the detection processing unit. The calculation means for calculating the movement position of the distance measuring sensor such that the number of the second cells in the sensing range of the distance measurement sensor among the second cells increases, and is calculated by the calculation means. In association with the movement position, the robot comprising a moving unit, the moving the distance measuring sensor is provided. According to the above method, the recognition accuracy of the positions and postures of the plurality of workpieces is improved in the third step.

本発明によれば、前記複数のワークの位置及び姿勢の認識精度が向上する。   According to the present invention, the recognition accuracy of the positions and postures of the plurality of workpieces is improved.

箱に収容されたワークを取り出すロボットの斜視図である。It is a perspective view of the robot which takes out the workpiece | work accommodated in the box. ロボットの機能ブロック図である。It is a functional block diagram of a robot. ロボットの動作のフローチャートである。It is a flowchart of operation | movement of a robot. 初回の測距条件を決定するフローを説明するための図である。It is a figure for demonstrating the flow which determines the first ranging condition. 測距センサが測距不能な遮蔽領域を示す図である。It is a figure which shows the shielding area which a ranging sensor cannot measure distance. 測距センサによる初回の測距結果を示す図である。It is a figure which shows the first ranging result by a ranging sensor. 測距センサによる二回目の測距条件を示す図である。It is a figure which shows the ranging condition of the 2nd time by a ranging sensor. 測距センサによる初回の測距によって得られたポイントクラウドを示す図である。It is a figure which shows the point cloud obtained by the first ranging by the ranging sensor. 初回のポイントクラウドをセグメンテーションした結果を示す図である。It is a figure which shows the result of segmenting the first point cloud. 測距センサによる二回目の測距によって得られたポイントクラウドを示す図である。It is a figure which shows the point cloud obtained by the ranging of the 2nd time by a ranging sensor. 初回のポイントクラウドを二回目のポイントクラウドに統合する様子を示す図である。It is a figure which shows a mode that the first point cloud is integrated with the second point cloud. 初回のポイントクラウドを二回目のポイントクラウドに統合した結果を示す図である。It is a figure which shows the result of having integrated the first point cloud into the second point cloud. 統合後の二回目のポイントクラウドをセグメンテーションした結果を示す図である。It is a figure which shows the result of having segmented the 2nd point cloud after integration.

以下、図面を参照しつつ、一実施形態を説明する。   Hereinafter, an embodiment will be described with reference to the drawings.

図1には、複数のワーク1がバラ積み状態で収容された箱2から、ワーク1を1つずつ取り出すロボット3を示している。   FIG. 1 shows a robot 3 that takes out workpieces 1 one by one from a box 2 in which a plurality of workpieces 1 are accommodated in a bulk state.

本実施形態において、複数のワーク1は、何れも、形状及び大きさが同じである。   In the present embodiment, the plurality of workpieces 1 have the same shape and size.

本実施形態において、箱2は、上方が開口する有底角筒状である。しかしながら、箱2の形状は、例えば有底円筒状であってもよい。   In the present embodiment, the box 2 has a bottomed rectangular tube shape that opens upward. However, the shape of the box 2 may be, for example, a bottomed cylindrical shape.

ロボット3は、ロボット本体4と、測距センサ5と、測距センサアーム6と、ハンド7と、ハンドアーム8と、を備えている。   The robot 3 includes a robot main body 4, a distance measuring sensor 5, a distance measuring sensor arm 6, a hand 7, and a hand arm 8.

測距センサ5は、計測対象までの距離を示す距離画像を生成し、生成した距離画像をロボット本体4に出力する。距離画像は、各画素が視点位置(測距センサ5の位置)からの奥行きの情報を持つ画像であって、測距センサ5から計測対象までの距離データを表現する。測距センサ5として、対象に照射したレーザ光やスリット光の反射光をカメラで撮像し、三角測量により距離を計測するアクティブ式の測距センサを採用することができる。また、測距センサ5として、光の飛行時間を利用するTime−of−flight方式の測距センサを採用することもできる。また、測距センサ5として、ステレオカメラが撮像した画像から三角測量によって各画素の奥行きを計算するパッシブ式の測距センサを採用しても良い。   The distance measuring sensor 5 generates a distance image indicating the distance to the measurement target, and outputs the generated distance image to the robot body 4. The distance image is an image in which each pixel has depth information from the viewpoint position (position of the distance measuring sensor 5), and expresses distance data from the distance measuring sensor 5 to the measurement target. As the distance measuring sensor 5, an active distance measuring sensor that captures the reflected light of the laser light or slit light irradiated on the object with a camera and measures the distance by triangulation can be employed. As the distance measuring sensor 5, a time-of-flight distance measuring sensor that uses the flight time of light may be employed. Further, as the distance measuring sensor 5, a passive distance measuring sensor that calculates the depth of each pixel by triangulation from an image captured by a stereo camera may be employed.

測距センサアーム6は、測距センサ5を保持するアームである。ロボット本体4は、測距センサアーム6を駆動することで、測距センサ5の位置及び姿勢を自在に制御可能である。   The distance measuring sensor arm 6 is an arm that holds the distance measuring sensor 5. The robot body 4 can freely control the position and posture of the distance measuring sensor 5 by driving the distance measuring sensor arm 6.

ハンド7は、ワーク1を把持又は吸着する部分である。   The hand 7 is a part that holds or sucks the workpiece 1.

ハンドアーム8は、ハンド7を保持するアームである。ロボット本体4は、ハンドアーム8を駆動することで、ハンド7の位置及び姿勢を自在に制御可能である。   The hand arm 8 is an arm that holds the hand 7. The robot body 4 can freely control the position and posture of the hand 7 by driving the hand arm 8.

図2は、ロボット3の機能ブロック図である。図2に示すように、ロボット3は、更に、センサアーム駆動部9と、ハンドアーム駆動部10と、を備える。   FIG. 2 is a functional block diagram of the robot 3. As shown in FIG. 2, the robot 3 further includes a sensor arm driving unit 9 and a hand arm driving unit 10.

ロボット本体4は、中央演算処理器としてのCPU11(Central Processing Unit)と、読み書き自由のRAM12(Random Access Memory)、読み出し専用のROM13(Read Only Memory)を備えている。そして、CPU11がROM13に記憶されている制御プログラムを読み出して実行することで、制御プログラムは、CPU11などのハードウェアを、測距条件決定部14、測距実行部15、ワーク認識部16、ワーク取出実行部17、として機能させる。   The robot body 4 includes a CPU 11 (Central Processing Unit) as a central processing unit, a read / write RAM 12 (Random Access Memory), and a read-only ROM 13 (Read Only Memory). Then, the CPU 11 reads and executes the control program stored in the ROM 13, so that the control program executes hardware such as the CPU 11, the distance measurement condition determination unit 14, the distance measurement execution unit 15, the workpiece recognition unit 16, the workpiece. It functions as the extraction execution unit 17.

図3には、ロボット3の動作のフローチャートを示している。図3に示すように、ロボット3による取り出し作業が開始すると、先ず、測距条件決定部14が、測距センサ5から複数のワーク1までの距離を測距センサ5で測定するとき測距条件を決定する(S100、第1のステップ)。ここで、測距条件とは、測距センサ5から複数のワーク1までの距離を測距センサ5で測定するときの測距センサ5の位置及び姿勢を意味する。次に、測距実行部15は、S100で決定した測距条件に基づいて、測距センサ5から複数のワーク1までの距離を測距センサ5で測定する(S110、第2のステップ)。次に、ワーク認識部16は、測距センサ5による測定の結果に基づいて、複数のワーク1の位置及び姿勢を認識する(S120、第3のステップ)。そして、ワーク取出実行部17は、ワーク認識部16による認識の結果に基づいて、ワーク1を1つ取り出す(S130、第4のステップ)。そして、ロボット3は、すべてのワーク1を取り出したかを判定し(S140)、すべてのワーク1を取り出したと判定した場合は(S140:YES)、処理を終了する。一方で、すべてのワーク1を取り出していないと判定した場合は(S140:NO)、ロボット3は、処理をS100に戻す。即ち、ロボット3は、すべてのワーク1を取り出すまで、S100からS130の処理を順に繰り返す。以下、ロボット3の動作を更に詳細に説明する。   FIG. 3 shows a flowchart of the operation of the robot 3. As shown in FIG. 3, when the picking-up operation by the robot 3 is started, first, the distance measurement condition determination unit 14 measures the distance from the distance measurement sensor 5 to the plurality of workpieces 1 with the distance measurement sensor 5. Is determined (S100, first step). Here, the distance measurement condition means the position and orientation of the distance measurement sensor 5 when the distance measurement sensor 5 measures the distance from the distance measurement sensor 5 to the plurality of workpieces 1. Next, the distance measurement execution unit 15 measures the distances from the distance measurement sensor 5 to the plurality of workpieces 1 based on the distance measurement conditions determined in S100 (S110, second step). Next, the workpiece | work recognition part 16 recognizes the position and attitude | position of the some workpiece | work 1 based on the result of the measurement by the ranging sensor 5 (S120, 3rd step). And the workpiece removal execution part 17 takes out one workpiece | work 1 based on the result of recognition by the workpiece recognition part 16 (S130, 4th step). Then, the robot 3 determines whether all the workpieces 1 have been taken out (S140). If it is determined that all the workpieces 1 have been taken out (S140: YES), the processing is terminated. On the other hand, if it is determined that all the workpieces 1 have not been removed (S140: NO), the robot 3 returns the process to S100. That is, the robot 3 repeats the processing from S100 to S130 in order until all the workpieces 1 are taken out. Hereinafter, the operation of the robot 3 will be described in more detail.

(測距条件決定部14の動作)
次に、初回(N-1回目)のS100において、測距条件決定部14が測距条件を決定することについて詳細に説明する。
(Operation of distance measurement condition determination unit 14)
Next, it will be described in detail that the distance measurement condition determination unit 14 determines the distance measurement condition in the first (N-1) th S100.

図4に示すように、測距条件決定部14は、複数のワーク1が収容される箱2の内底面18の幾何学的中心点19の三次元座標を算出する。次に、測距条件決定部14は、任意の正m面体20のモデルを生成し、正m面体20の幾何学的中心点21が箱2の内底面18の幾何学的中心点19に一致するように正m面体20を位置決めする。次に、測距条件決定部14は、正m面体20の幾何学的中心点21を通り、正m面体20を構成する何れかの面22と直交する直線23を算出する。そして、測距条件決定部14は、直線23上に所定の間隔で複数の観測点24を定義する。測距条件決定部14は、正m面体20を構成する他の面22についても同様に、複数の観測点24を定義する。測距センサ5は、何れかの観測点24に配置され、その観測点24から正m面体20の幾何学的中心点21に向かって測距することになる。従って、測距条件決定部14は、測距センサ5の測距条件として、測距センサ5の位置は何れかの観測点24とし、測距センサ5の姿勢はその観測点24から正m面体20の幾何学的中心点21に向かう姿勢である、とする複数の測距条件をRAM12に記憶する。そして、測距条件決定部14は、RAM12に記憶した複数の測距条件を以下の条件により絞り込む。即ち、測距条件決定部14は、測距センサ5の位置がロボット3の作業エリア内でない測距条件をRAM12から削除する。また、測距条件決定部14は、逆運動学の解を持たない測距条件をRAM12から削除する。また、測距条件決定部14は、測距条件を満たすように測距センサ5を移動させた際にロボット3が外部環境と物理的に干渉してしまう場合、また、所謂自己干渉が起こる場合、その測距条件をRAM12から削除する。また、測距条件決定部14は、測距条件を満たすように測距センサ5を移動させることがロボット3の可動範囲から外れるものである場合、その測距条件をRAM12から削除する。次に、測距条件決定部14は、RAM12に記憶されている測距条件のうち、既知の形状を有する箱2の内底面18を測距し易い測距条件を選択する。図5には、測距センサ5が箱2の内底面18を測距している様子を示している。図5に示すように、必ずしも箱2の上方から箱2の内底面18を測距センサ5で測距できるとは限らない。従って、測距センサ5で箱2の内底面18を測距した場合、箱2の側壁25の存在により測距できない遮蔽領域uneが存在する。また、箱2の上方に障害物26が存在する場合、測距センサ5で箱2の内底面18を測距した際、障害物26の背後には、測距できない遮蔽領域uneが発生する。そこで、測距条件決定部14は、遮蔽領域uneの面積が最小化するような測距条件を選択する。なお、遮蔽領域uneの面積が最小化するような測距条件が複数存在する場合は、測距条件決定部14は、第1優先条件として、箱2の内底面18が測距センサ5の焦点距離により近い方を選択し、第2優先条件として、箱2の内底面18の幾何学的中心点19を通り内底面18に対して直交する法線と、箱2の内底面18の幾何学的中心点19と測距センサ5を結んだ直線と、が成す角がより小さい方を選択する。測距条件決定部14は、選択することにより決定した測距条件をRAM12に記録する。   As shown in FIG. 4, the distance measurement condition determination unit 14 calculates the three-dimensional coordinates of the geometric center point 19 of the inner bottom surface 18 of the box 2 in which a plurality of workpieces 1 are accommodated. Next, the distance measurement condition determination unit 14 generates a model of an arbitrary regular m-hedron 20, and the geometric center point 21 of the regular m-hedron 20 matches the geometric center point 19 of the inner bottom surface 18 of the box 2. Thus, the regular m-hedron 20 is positioned. Next, the distance measurement condition determination unit 14 calculates a straight line 23 that passes through the geometric center point 21 of the regular m-hedron 20 and is orthogonal to any one of the surfaces 22 constituting the regular m-hedron 20. Then, the distance measurement condition determining unit 14 defines a plurality of observation points 24 on the straight line 23 at predetermined intervals. The distance measurement condition determination unit 14 similarly defines a plurality of observation points 24 for the other surfaces 22 constituting the regular m-plane 20. The distance measuring sensor 5 is arranged at one of the observation points 24 and measures the distance from the observation point 24 toward the geometric center point 21 of the regular m-hedron 20. Accordingly, the distance measurement condition determination unit 14 sets the distance measurement sensor 5 to any observation point 24 as the distance measurement condition of the distance measurement sensor 5, and the posture of the distance measurement sensor 5 changes from the observation point 24 to the regular m-hedron. The RAM 12 stores a plurality of distance measuring conditions indicating that the posture is toward the 20 geometric center points 21. Then, the distance measurement condition determination unit 14 narrows down the plurality of distance measurement conditions stored in the RAM 12 according to the following conditions. That is, the distance measurement condition determination unit 14 deletes a distance measurement condition from the RAM 12 where the position of the distance measurement sensor 5 is not within the work area of the robot 3. In addition, the distance measurement condition determination unit 14 deletes the distance measurement condition having no inverse kinematics solution from the RAM 12. Further, the distance measurement condition determination unit 14 may cause the robot 3 to physically interfere with the external environment when the distance measurement sensor 5 is moved so as to satisfy the distance measurement condition, or so-called self-interference may occur. Then, the distance measurement condition is deleted from the RAM 12. Further, the distance measurement condition determination unit 14 deletes the distance measurement condition from the RAM 12 when the movement of the distance measurement sensor 5 to satisfy the distance measurement condition is out of the movable range of the robot 3. Next, the distance measurement condition determination unit 14 selects a distance measurement condition that allows easy measurement of the inner bottom surface 18 of the box 2 having a known shape, among the distance measurement conditions stored in the RAM 12. FIG. 5 shows a state in which the distance measuring sensor 5 measures the inner bottom surface 18 of the box 2. As shown in FIG. 5, it is not always possible to measure the inner bottom surface 18 of the box 2 with the distance measuring sensor 5 from above the box 2. Therefore, when the distance measurement sensor 5 measures the inner bottom surface 18 of the box 2, there is a shielding area une that cannot be measured due to the presence of the side wall 25 of the box 2. Further, when the obstacle 26 exists above the box 2, when the distance measuring sensor 5 measures the inner bottom surface 18 of the box 2, a shielding area une that cannot be measured is generated behind the obstacle 26. Therefore, the distance measurement condition determination unit 14 selects a distance measurement condition that minimizes the area of the shielding region une. When there are a plurality of ranging conditions that minimize the area of the shielding area une, the ranging condition determining unit 14 sets the inner bottom surface 18 of the box 2 as the focus of the ranging sensor 5 as the first priority condition. The one closer to the distance is selected, and as a second priority condition, the normal passing through the geometric center point 19 of the inner bottom surface 18 of the box 2 and orthogonal to the inner bottom surface 18 and the geometry of the inner bottom surface 18 of the box 2 are selected. The smaller angle formed by the target center point 19 and the straight line connecting the distance measuring sensor 5 is selected. The distance measurement condition determination unit 14 records the distance measurement condition determined by the selection in the RAM 12.

(測距実行部15の動作)
次に、初回(N-1回目)のS110において、測距実行部15が、測距条件決定部14がS100で決定した測距条件に基づいて、測距センサ5から複数のワーク1までの距離を測距センサ5で測定することについて詳細に説明する。
(Operation of the distance measurement execution unit 15)
Next, in the first (N-1) th time S110, the distance measurement execution unit 15 determines from the distance measurement sensor 5 to the plurality of workpieces 1 based on the distance measurement condition determined by the distance measurement condition determination unit 14 in S100. Measuring the distance with the distance measuring sensor 5 will be described in detail.

先ず、測距実行部15は、測距条件決定部14が決定した測距条件を満たすように、センサアーム駆動部9を制御して、測距センサ5の位置及び姿勢を変更する。次に、測距実行部15は、測距センサ5に測距指令を送信する。測距センサ5は、測距指令を受信すると測距を実行して距離画像を生成し、生成した距離画像をロボット本体4に送信する。測距実行部15は、受信した距離画像をRAM12に記憶する。   First, the distance measurement execution unit 15 controls the sensor arm drive unit 9 to change the position and orientation of the distance measurement sensor 5 so as to satisfy the distance measurement condition determined by the distance measurement condition determination unit 14. Next, the distance measurement execution unit 15 transmits a distance measurement command to the distance measurement sensor 5. When receiving the distance measurement command, the distance measurement sensor 5 performs distance measurement to generate a distance image, and transmits the generated distance image to the robot body 4. The distance measurement execution unit 15 stores the received distance image in the RAM 12.

(ワーク認識部16の動作)
次に、初回(N-1回目)のS120において、ワーク認識部16が、距離画像に基づいて複数のワーク1の位置及び姿勢を認識することについて詳細に説明する。
(Operation of workpiece recognition unit 16)
Next, it will be described in detail that the workpiece recognition unit 16 recognizes the positions and postures of the plurality of workpieces 1 based on the distance image in the first (N-1th) S120.

先ず、ワーク認識部16は、RAM12に記憶されている距離画像を読み込み、距離画像を三次元座標を有するポイントの集合に変換する。三次元座標を有するポイントの集合は、一般に、ポイントクラウドとも称される。ワーク認識部16は、初回のポイントクラウドをRAM12に記憶する。ワーク認識部16は、初回のポイントクラウドをセグメンテーションし、各セグメントに属する複数のポイントと、ワーク1のAABB(Axis Aligned Bounding Box)とを比較する。そして、ワーク認識部16は、上記比較の結果、ワーク1のAABBとの一致度が高いセグメントに属する複数のポイントに基づいて、各ワーク1の位置及び姿勢を認識する。なお、このとき、ワーク認識部16は、箱2に収容されているすべてのワーク1の位置及び姿勢を認識することが好ましい。しかしながら、ワーク認識部16は、箱2に収容されているすべてのワーク1の位置及び姿勢を認識することに代えて、箱2に収容されている複数のワーク1のうち少なくとも何れか1つの位置及び姿勢を認識することが考えられる。   First, the workpiece recognition unit 16 reads a distance image stored in the RAM 12 and converts the distance image into a set of points having three-dimensional coordinates. A set of points having three-dimensional coordinates is generally referred to as a point cloud. The workpiece recognition unit 16 stores the first point cloud in the RAM 12. The workpiece recognition unit 16 segments the initial point cloud and compares a plurality of points belonging to each segment with an AABB (Axis Aligned Bounding Box) of the workpiece 1. And the workpiece | work recognition part 16 recognizes the position and attitude | position of each workpiece | work 1 based on the some point which belongs to the segment with high coincidence with AABB of the workpiece | work 1 as a result of the said comparison. At this time, the workpiece recognition unit 16 preferably recognizes the positions and postures of all the workpieces 1 accommodated in the box 2. However, instead of recognizing the positions and postures of all the workpieces 1 accommodated in the box 2, the workpiece recognition unit 16 replaces at least one position among the plurality of workpieces 1 accommodated in the box 2. And recognizing posture.

(ワーク取出実行部17の動作)
次に、初回(N-1回目)のS130において、ワーク取出実行部17は、前述したように、ワーク認識部16による認識の結果に基づいて、ワーク1を1つ取り出す。
(Operation of work removal execution unit 17)
Next, in the first (N-1th) S130, the workpiece removal execution unit 17 extracts one workpiece 1 based on the recognition result by the workpiece recognition unit 16, as described above.

(測距条件決定部14の動作)
次に、2回目(N回目)のS100において、測距条件決定部14が測距条件を決定することについて詳細に説明する。
(Operation of distance measurement condition determination unit 14)
Next, it will be described in detail that the distance measurement condition determination unit 14 determines the distance measurement condition in the second (Nth) S100.

先ず、測距条件決定部14は、図6に示すように、箱2の内部空間を格子状に分割することにより、三次元状に並ぶ複数のセル27を定義する。そして、測距条件決定部14は、RAM12に記憶されている初回のポイントクラウドを読み込み、初回のポイントクラウドを上記複数のセル27にそれぞれ格納する。そして、初回のポイントクラウドのうち少なくとも何れか1つのポイントが存在するセル27に「Occupied」というラベルを付す。「Occupied」というラベルが付されたセル27(第1セル30)を図6では、アルファベット「o」で特定している。そして、測距条件決定部14は、測距センサ5から見て、「Occupied」というラベルが付されたセル27の存在により測距センサ5によって測距不能となる領域に存在するセル27に「Occluded」というラベルを付す。「Occupied」というラベルが付されたセル27の存在により測距センサ5によって測距不能となる領域を、以下、死角とも称する。「Occluded」というラベルが付されたセル27を図6では、アルファベット「x」で特定している。なお、図6に示す測距センサ5は、初回の測距条件を満足する位置及び姿勢のものである。図6によれば、初回の測距条件では、死角28が発生していたことが判る。   First, as shown in FIG. 6, the distance measurement condition determining unit 14 divides the internal space of the box 2 into a lattice shape to define a plurality of cells 27 arranged in a three-dimensional shape. Then, the distance measurement condition determining unit 14 reads the initial point cloud stored in the RAM 12 and stores the initial point cloud in the plurality of cells 27. Then, the label “Occupied” is attached to the cell 27 in which at least one point in the initial point cloud exists. The cell 27 (first cell 30) labeled “Occupied” is identified by the alphabet “o” in FIG. Then, the distance measurement condition determination unit 14 determines that the cell 27 existing in an area where the distance measurement sensor 5 cannot measure the distance due to the presence of the cell 27 labeled “Occupied” as viewed from the distance measurement sensor 5. Label it “Occluded”. An area that cannot be measured by the distance measuring sensor 5 due to the presence of the cell 27 labeled “Occupied” is hereinafter also referred to as a blind spot. The cell 27 labeled “Occluded” is identified by the alphabet “x” in FIG. Note that the distance measuring sensor 5 shown in FIG. 6 has a position and orientation that satisfy the first distance measuring condition. According to FIG. 6, it can be seen that the blind spot 28 was generated under the first ranging condition.

また、測距条件決定部14は、初回にワーク取出実行部17が取り出したワーク1に対応するセル27のラベルを「Occluded」に書き換える。本実施形態では、紙面左側のワーク1が初回に取り出されたので、図7に示すように、紙面左側のセル27のラベルは、符号29で示すように、「Occupied」から「Occluded」に書き換えられている。   In addition, the distance measurement condition determination unit 14 rewrites the label of the cell 27 corresponding to the workpiece 1 taken out by the workpiece removal execution unit 17 for the first time to “Occluded”. In the present embodiment, since the work 1 on the left side of the page is taken out for the first time, the label of the cell 27 on the left side of the page is rewritten from “Occupied” to “Occluded” as shown by reference numeral 29 as shown in FIG. It has been.

そして、測距条件決定部14は、「Occluded」というラベルが付されたセル27(第2セル31)をより多く測距できるように、測距センサ5の測距条件を決定する。詳しくは、測距条件決定部14は、N回目においては、初回に死角28となった領域(セル27)と、初回において取り出されたワーク1が存在していた符号29で示す領域(セル27)と、を含む特定領域(特定セル)のうち測距センサ5が測距可能となる領域(セル27)が前回と比較して増えるように、好ましくは最大化するように、測距センサ5の測距条件を決定する。図7には、このようにして決定された測距条件を満足する位置及び姿勢とされた測距センサ5を図示している。これによれば、測距対象を満遍なく把握できるようになるので、N回目にワーク認識部16が複数のワーク1の位置及び姿勢を認識する精度が向上する。特に、初回において取り出されたワーク1が存在していた領域を死角28と同等に取り扱うことで、ワーク1の取り出しに伴う箱2内での状態の変化を十分に把握した上でワーク認識部16による認識が行われることになる。   Then, the distance measurement condition determination unit 14 determines the distance measurement condition of the distance measurement sensor 5 so that more distances can be measured in the cells 27 (second cells 31) labeled “Occluded”. Specifically, in the Nth time, the distance measurement condition determination unit 14 has an area (cell 27) that has become the blind spot 28 for the first time and an area (cell 27) indicated by reference numeral 29 in which the work 1 taken out for the first time exists. The distance measuring sensor 5 is preferably maximized so that the area (cell 27) in which the distance measuring sensor 5 can measure the distance increases in comparison with the previous time. Determine the distance measurement conditions. FIG. 7 shows the distance measuring sensor 5 having a position and orientation that satisfy the distance measuring conditions determined in this way. According to this, since it becomes possible to grasp the distance measurement object evenly, the accuracy with which the work recognition unit 16 recognizes the positions and postures of the plurality of works 1 for the Nth time is improved. In particular, by treating the area where the work 1 taken out at the first time existed in the same manner as the blind spot 28, the work recognition unit 16 can fully grasp the change in the state in the box 2 as the work 1 is taken out. Will be recognized.

(測距実行部15の動作)
次に、二回目(N回目)のS110において、測距実行部15は、測距条件決定部14が二回目のS100で決定した測距条件に基づいて、測距センサ5から複数のワーク1までの距離を測距センサ5で測定する。測距実行部15は、二回目の距離画像をRAM12に記憶する。
(Operation of the distance measurement execution unit 15)
Next, in the second (Nth) S110, the distance measurement execution unit 15 performs a plurality of works 1 from the distance measurement sensor 5 based on the distance measurement conditions determined by the distance measurement condition determination unit 14 in the second S100. Is measured by the distance measuring sensor 5. The distance measurement execution unit 15 stores the second distance image in the RAM 12.

(ワーク認識部16の動作)
次に、二回目(N回目)のS120において、ワーク認識部16が、距離画像に基づいて複数のワーク1の位置及び姿勢を認識することについて詳細に説明する。
(Operation of workpiece recognition unit 16)
Next, it will be described in detail that the workpiece recognition unit 16 recognizes the positions and postures of the plurality of workpieces 1 based on the distance image in the second (Nth) S120.

先ず、ワーク認識部16は、RAM12に記憶されている二回目の距離画像を読み込み、二回目の距離画像を三次元座標を有するポイントの集合に変換する。ワーク認識部16は、二回目のポイントクラウドをRAM12に記憶する。この状態で、RAM12には、初回のポイントクラウドと、二回目のポイントクラウドと、が記憶されている。   First, the workpiece recognition unit 16 reads the second distance image stored in the RAM 12 and converts the second distance image into a set of points having three-dimensional coordinates. The work recognition unit 16 stores the second point cloud in the RAM 12. In this state, the first point cloud and the second point cloud are stored in the RAM 12.

二回目のS120において、ワーク認識部16は、第1に、初回のポイントクラウドを二回目のポイントクラウドに統合する(統合工程)。第2に、ワーク認識部16は、統合後の二回目のポイントクラウドに対してセグメンテーションを実行する(セグメンテーション工程)。第3に、セグメンテーションの結果に基づいて、ワーク1の位置及び姿勢を認識する(認識工程)。以下、上記の統合工程、セグメンテーション工程、認識工程を順に詳細に説明する。   In the second S120, the work recognition unit 16 first integrates the first point cloud into the second point cloud (integration step). Second, the workpiece recognition unit 16 performs segmentation on the second point cloud after integration (segmentation process). Third, the position and orientation of the workpiece 1 are recognized based on the segmentation result (recognition step). Hereinafter, the integration process, the segmentation process, and the recognition process will be described in detail in order.

(統合工程)
先ず、初回のポイントクラウドを二回目のポイントクラウドに統合する統合工程について説明する。初回のポイントクラウドを二回目のポイントクラウドに統合すれば、異なる測距条件からの測距によって得られた死角の少ないポイントクラウドが得られるので、ワーク認識部16によるワーク1の認識精度の向上に寄与する。しかしながら、初回のポイントクラウドをすべて二回目のポイントクラウドに統合するのは合理的ではない。なぜなら、初回のワーク1の取り出しによって、初回のポイントクラウドは、必ずしもすべてが、二回目の時点における複数のワーク1と整合するとは限らないからである。従って、本実施形態では、初回のポイントクラウドのうち、二回目のポイントクラウドに統合可能なものと、二回目のポイントクラウドに統合不能なものと、に切り分け、統合可能なポイントクラウドのみ、二回目のポイントクラウドに統合するものとする。この切り分けは、初回のポイントクラウドをセグメンテーションして得られたセグメントごとに行われる。
(Integration process)
First, an integration process for integrating the first point cloud into the second point cloud will be described. If the first point cloud is integrated into the second point cloud, a point cloud with few blind spots obtained by ranging from different ranging conditions can be obtained, so that the workpiece recognition unit 16 can improve the recognition accuracy of the workpiece 1 Contribute. However, it is not reasonable to integrate all the first point clouds into the second point cloud. This is because the first point cloud is not always consistent with the plurality of workpieces 1 at the second time by taking out the first workpiece 1. Therefore, in this embodiment, the first point cloud can be divided into those that can be integrated into the second point cloud and those that cannot be integrated into the second point cloud. It will be integrated into the point cloud. This segmentation is performed for each segment obtained by segmenting the initial point cloud.

図8には、初回のポイントPN-1(j)を示している。図9には、初回のポイントPN-1(j)に対してワーク認識部16がセグメンテーションを実行した結果得られた複数のセグメントSN-1(t)を示している。図10には、二回目のポイントPN(i)を示している。図9に示すように、1つのセグメントSN-1(t)には、複数のポイントPN-1(j)が属している。換言すれば、1つのセグメントSN-1(t)は、複数のポイントPN-1(j)によって構成されている。 FIG. 8 shows the first point P N-1 (j). FIG. 9 shows a plurality of segments S N-1 (t) obtained as a result of the work recognition unit 16 performing segmentation on the first point P N-1 (j). FIG. 10 shows the second point P N (i). As shown in FIG. 9, a plurality of points P N-1 (j) belong to one segment S N-1 (t). In other words, one segment S N-1 (t) is composed of a plurality of points P N-1 (j).

ワーク認識部16は、初回のポイントPN-1(j)のそれぞれが、二回目のポイントPN(i)に統合可能なものかどうかを、初回のセグメントSN-1(t)ごとに判定する。そこで、判定のために用いるカウンタとして、初回のセグメントSN-1(t)のそれぞれに対してNearN-1(t),FarN-1(t)というカウンタを定義し、その初期値をゼロとする。図11には、説明の理解を促進させるために、初回のセグメントSN-1(t)のすべてと、二回目のポイントPN(i)と、を重ねて表示している。なお、図11において、二回目のポイントPN(i)は、太丸で示している。 The workpiece recognizing unit 16 determines whether each of the initial points P N-1 (j) can be integrated with the second point P N (i) for each initial segment S N-1 (t). judge. Therefore, as the counter used for the determination, the counters Near N-1 (t) and Far N-1 (t) are defined for each of the initial segments S N-1 (t), and the initial values are defined. Zero. In FIG. 11, in order to facilitate understanding of the explanation, all of the first segment S N-1 (t) and the second point P N (i) are displayed in an overlapping manner. In FIG. 11, the second point P N (i) is indicated by a bold circle.

まず、ワーク認識部16は、二回目で1番目のポイントPN(i)であるポイントPN(1)と、初回のポイントPN-1(j)のすべてと、を対比させ、初回のポイントPN-1(j)のうち、ポイントPN(1)に最も近いポイントPN-1(j)を特定する。特定したポイントPN-1(j)をポイントPN-1(k)とする。そして、ワーク認識部16は、ポイントPN(1)とポイントPN-1(k)との間の距離dを算出し、距離dに応じて、ポイントPN-1(k)が属するセグメントSN-1(t)のカウンタをインクリメントする。具体的には、ワーク認識部16は、上記の距離dが所定値以下の場合は、ポイントPN-1(k)が属するセグメントSN-1(t)のNearN-1(t)を1つインクリメントする。一方、ワーク認識部16は、上記の距離dが所定値を超える場合は、ポイントPN-1(k)が属するセグメントSN-1(t)のFarN-1(t)を1つインクリメントする。次に、ワーク認識部16は、二回目で2番目以降のポイントPN(i)についても同様に処理する。 First, the workpiece recognition unit 16 includes a second time at the first point P N (i) Point P N (1) is, by comparing the, all the initial point P N-1 (j), the first point P N-1 of the (j), to identify the nearest point P N-1 (j) to a point P N (1). The identified point P N-1 (j) is set as the point P N-1 (k). Then, the workpiece recognition unit 16 calculates the distance d between the point P N (1) and the point P N-1 (k), and the segment to which the point P N-1 (k) belongs according to the distance d. Increment the counter of S N-1 (t). Specifically, when the distance d is equal to or smaller than a predetermined value, the workpiece recognition unit 16 determines Near N-1 (t) of the segment S N-1 (t) to which the point P N-1 (k) belongs. Increment by one. On the other hand, when the distance d exceeds the predetermined value, the workpiece recognition unit 16 increments Far N-1 (t) of the segment S N-1 (t) to which the point P N-1 (k) belongs by one. To do. Next, the workpiece recognition unit 16 performs the same process for the second and subsequent points P N (i) for the second time.

次に、ワーク認識部16は、初回の1番目のセグメントSN-1(t)であるセグメントSN-1(1)に属する初回のポイントPN-1(j)が二回目のポイントPN(i)に統合可能なものか判定する。具体的には、ワーク認識部16は、セグメントSN-1(1)の変数であるNearN-1(1)及びFarN-1(1)に基づいて上記の判定を行なう。即ち、ワーク認識部16は、NearN-1(1)及びFarN-1(1)の合計値が所定値以下であるとき、セグメントSN-1(1)に属するポイントPN-1(j)は、二回目の測距において死角に相当するとして、セグメントSN-1(1)に属するポイントPN-1(j)を二回目のポイントPN(i)にそっくりそのまま統合(追加、合算、編入)する。一方、ワーク認識部16は、NearN-1(1)及びFarN-1(1)の合計値が所定値を超えるとき、更に条件分岐するものとし、FarN-1(1)/NearN-1(1)が所定値以下であるとき、セグメントSN-1(1)に属するポイントPN-1(j)に対応するワーク1は初回のワーク1の取り出し時に動かなかったとして、セグメントSN-1(1)に属するポイントPN-1(j)を二回目のポイントPN(i)にそっくりそのまま統合し、一方で、FarN-1(1)/NearN-1(1)が所定値を超えるとき、又は、NearN-1(1)がゼロであるとき、セグメントSN-1(1)に属するポイントPN-1(j)に対応するワーク1は初回のワーク1の取り出し時に取り出されたものとして、セグメントSN-1(1)に属するポイントPN-1(j)を二回目のポイントPN(i)に統合しない。次に、ワーク認識部16は、初回の2番目以降のセグメントSN-1(t)についても同様に処理する。図12には、統合の結果を示している。図12において、同じ座標に複数のポイントPN(i)が重複している。この重複自体は、処理の単純化の側面ではそのまま重複したままとしておくことがよく、処理の高速化の側面では重複状態を解消し何れか一方のみを残すようにするとよい。本実施形態では、処理の単純化を優先し、重複状態はそのままとしている。 Next, the workpiece recognizing unit 16 determines that the first point P N-1 (j) belonging to the segment S N-1 (1) which is the first first segment S N-1 (t) is the second point P. Judge whether it can be integrated into (i). Specifically, the workpiece recognition unit 16 performs the above determination based on Near N-1 (1) and Far N-1 (1) which are variables of the segment S N-1 (1). That is, the workpiece recognition unit 16, Near when N-1 (1) and Far N-1 the sum of (1) is less than a predetermined value, the point P N-1 belonging to the segment S N-1 (1) ( j) is equivalent to the blind spot in the second ranging, and the point P N-1 (j) belonging to the segment S N-1 (1) is integrated into the second point P N (i) as it is (added) , Add, transfer). On the other hand, when the total value of Near N-1 (1) and Far N-1 (1) exceeds a predetermined value, the workpiece recognition unit 16 further branches the condition, and Far N-1 (1) / Near N -1 (1) is equal to or less than a predetermined value, it is assumed that the workpiece 1 corresponding to the point P N-1 (j) belonging to the segment S N-1 (1) does not move when the workpiece 1 is taken out for the first time. The point P N-1 (j) belonging to S N-1 (1) is integrated into the second point P N (i) as it is, while Far N-1 (1) / Near N-1 (1 ) Exceeds a predetermined value, or when Near N-1 (1) is zero, work 1 corresponding to point P N-1 (j) belonging to segment S N-1 (1) is the first work The point P N-1 (j) belonging to the segment S N-1 (1) is not integrated into the second point P N (i) as being taken out at the time of taking out one. Next, the workpiece recognizing unit 16 performs the same process for the first and subsequent segments S N-1 (t). FIG. 12 shows the result of integration. In FIG. 12, a plurality of points P N (i) overlap at the same coordinates. This duplication itself is preferably left as it is in terms of simplification of processing, and in terms of speeding up of processing, it is preferable to eliminate the duplication state and leave only one of them. In the present embodiment, priority is given to simplification of processing, and the overlapping state is left as it is.

(セグメンテーション工程)
次に、ワーク認識部16は、図12に示す統合後の二回目のポイントPN(i)に対してセグメンテーションを実行する。このセグメンテーションにより得られた二回目のセグメントSN(t)を図13に示す。
(Segmentation process)
Next, the workpiece recognition unit 16 performs segmentation on the second point P N (i) after integration shown in FIG. The second segment S N (t) obtained by this segmentation is shown in FIG.

(認識工程)
次に、ワーク認識部16は、二回目のセグメントSN(t)に基づいて、複数のワーク1の位置及び姿勢を認識する。一般に、ワーク1の位置及び姿勢を認識するのに必要となる計算コストは高く、毎回、セグメントSN(t)に基づいてすべてのワーク1の位置及び姿勢を認識するのは計算コストの側面から好ましくない。従って、本実施形態では、毎回、セグメントSN(t)に基づいてすべてのワーク1の位置及び姿勢を認識するのに代えて、前回の認識結果のうち流用できる分については流用することにする。以下、前回の認識結果のうち、どのワーク1についての認識結果が流用可能であるかを判定することについて詳細に説明する。
(Recognition process)
Next, the workpiece recognition unit 16 recognizes the positions and postures of the plurality of workpieces 1 based on the second segment S N (t). In general, the calculation cost required for recognizing the position and orientation of the workpiece 1 is high, and it is from the aspect of calculation cost that the position and orientation of all the workpieces 1 are recognized every time based on the segment S N (t). It is not preferable. Therefore, in this embodiment, instead of recognizing the positions and postures of all the workpieces 1 based on the segment S N (t) every time, the portion of the previous recognition result that can be diverted is diverted. . Hereinafter, it will be described in detail which of the previous recognition results is used to determine which work 1 is recognized.

先ず、ワーク認識部16は、初回に得られたワークN-1(r)の認識結果が二回目の認識工程に際し流用可能なものかどうかをセグメントSN(t)ごとに判定する。そこで、判定のために用いるカウンタとして、初回に位置及び姿勢が認識されたワークN-1(r)のそれぞれに対してNearN-1(r),FarN-1(r)というカウンタを定義し、その初期値をゼロとする。 First, the workpiece recognition unit 16 determines, for each segment S N (t), whether the recognition result of the workpiece N-1 (r) obtained for the first time can be used for the second recognition process. Therefore, as counters used for judgment, the counters Near N-1 (r) and Far N-1 (r) are defined for each of the workpieces N-1 (r) whose position and orientation are recognized for the first time. The initial value is set to zero.

次に、ワーク認識部16は、二回目で1番目のセグメントSN(t)であるセグメントSN(1)のAABBを算出し、セグメントSN(1)のAABBと、初回のワークN-1(r)のAABBのすべてと、の衝突の有無を判定する。そして、ワーク認識部16は、セグメントSN(1)のAABBと衝突した初回のワークN-1(r)を特定し、特定したワークN-1(r)をワークN-1(s)とする。そして、ワーク認識部16は、セグメントSN(1)に属するポイントPN(i)のうち1番目のポイントPN(i)であるポイントPN(1)と、ワークN-1(s)と、の間の最短距離dを求め、最短距離dに応じて、ワークN-1(s)のカウンタをインクリメントする。具体的には、ワーク認識部16は、上記の最短距離dが所定値以下の場合は、ワークN-1(s)のNearN-1(s)をインクリメントする。一方、ワーク認識部16は、上記の最短距離dが所定値を超える場合は、ワークN-1(s)のFarN-1(s)をインクリメントする。セグメントSN(1)のAABBと衝突した初回のワークN-1(r)が複数ある場合は、他のワークN-1(r)についても同様に処理する。 Next, workpiece recognition unit 16 calculates the AABB of the first segment S N (t) is a segment S N (1) in the second time, the AABB segment S N (1), the first workpiece N- 1 Determine whether there is a collision with all AABBs in (r). Then, the workpiece recognition unit 16 identifies the first workpiece N-1 (r) that collides with the AABB of the segment S N (1), and identifies the identified workpiece N-1 (r) as the workpiece N-1 (s). To do. The workpiece recognition unit 16, segment S and N points belonging to (1) P N (i) Point P N (1) is the first point P N (i) of the work N-1 (s) And the counter of the workpiece N-1 (s) is incremented according to the shortest distance d. Specifically, the work recognizing unit 16 increments Near N-1 (s) of the work N-1 (s) when the shortest distance d is equal to or less than a predetermined value. On the other hand, when the shortest distance d exceeds the predetermined value, the workpiece recognition unit 16 increments Far N-1 (s) of the workpiece N-1 (s). When there are a plurality of initial works N-1 (r) colliding with AABB in the segment S N (1), the other works N-1 (r) are processed in the same manner.

次に、ワーク認識部16は、ワークN-1(s)の認識結果が、二回目の認定に際し流用可能なものかどうか判定する。具体的には、ワークN-1(s)の変数であるNearN-1(s)及びFarN-1(s)に基づいて上記の判定を行なう。即ち、ワーク認識部16は、FarN-1(s)/NearN-1(s)が所定値以下であるときは、ワークN-1(s)の認識結果が二回目の認定に際し流用可能であると判定し、二回目で1番目のセグメントSN(t)に含まれるポイントポイントPN(i)に基づいてワーク1の位置及び姿勢を認識することを省略することにする。一方、FarN-1(s)/NearN-1(s)が所定値を越え、又は、NearN-1(s)がゼロである場合は、ワーク認識部16は、ワークN-1(s)の認識結果が二回目の認定に際し流用不能であると判定し、二回目で1番目のセグメントSN(t)に含まれるポイントポイントPN(i)に基づいてワーク1の位置及び姿勢を認識する。次に、ワーク認識部16は、二回目で2番目以降のセグメントSN(t)についても同様に処理する。 Next, the workpiece recognition unit 16 determines whether or not the recognition result of the workpiece N-1 (s) can be used for the second recognition. Specifically, the above determination is performed based on Near N-1 (s) and Far N-1 (s), which are variables of the work N-1 (s). That is, the workpiece recognition unit 16 can divert the recognition result of the workpiece N-1 (s) for the second recognition when Far N-1 (s) / Near N-1 (s) is equal to or less than a predetermined value. Therefore, the recognition of the position and posture of the workpiece 1 based on the point point P N (i) included in the first segment S N (t) at the second time is omitted. On the other hand, when Far N-1 (s) / Near N-1 (s) exceeds a predetermined value or Near N-1 (s) is zero, the workpiece recognizing unit 16 sets the workpiece N-1 ( The recognition result of s) is determined to be unusable for the second recognition, and the position and posture of the workpiece 1 based on the point point P N (i) included in the first segment S N (t) at the second time Recognize Next, the workpiece recognition unit 16 performs the same process for the second and subsequent segments S N (t) for the second time.

(ワーク取出実行部17の動作)
次に、二回目(N回目)のS130において、ワーク取出実行部17は、ワーク認識部16による認識の結果に基づいて、ワーク1を1つ取り出す。
(Operation of work removal execution unit 17)
Next, in the second (N-th) S130, the workpiece take-out execution unit 17 takes out one workpiece 1 based on the recognition result by the workpiece recognition unit 16.

以上に、好適な実施形態を説明したが、上記実施形態は、以下の特徴を有する。   Although the preferred embodiment has been described above, the above embodiment has the following features.

距離画像(測距センサ5を用いたセンシング結果)に基づいて所望のワーク1(対象物)を検出し、検出したワーク1をハンド7で取り出す、ロボット3は、箱2の内部空間(計測領域)を複数のセル27に分割して認識した上で、当該分割したセル27の中から、距離画像(測距センサ5のセンシング結果)を用いてポイントクラウド(物体)が検出される位置のセル27である第1セル30(第1セル30は、「Occupied」とラベル付けされたセル27である。)の位置に基づいてワーク1の位置を検出する処理を実行するワーク認識部16(検出処理手段)と、分割したセル27のうち、第1セル30を除くセル27、及び、ワーク認識部16によってワーク1が検出された位置のセル27、の少なくとも何れかのセルである第2セル(「Occluded」とラベル付けされたセル27)を特定し、第2セル31のうち、測距センサ5のセンシング範囲に入る第2セル31の数が前回の測距時と比較して増加するような測距センサ5の測距条件(移動位置)を算出する測距条件決定部14(算出手段)と、測距条件決定部14によって算出された移動位置に対応付けて、測距センサ5を移動させる測距実行部15(移動手段)と、を備える。これによれば、測距対象を満遍なく把握できるようになるので、N回目にワーク認識部16が複数のワーク1の位置及び姿勢を認識する精度が向上する。特に、初回において取り出されたワーク1が存在していた領域を死角28と同等に取り扱うことで、ワーク1の取り出しに伴う箱2内での状態の変化を十分に把握した上でワーク認識部16による認識が行われることになる。   The robot 3 detects the desired workpiece 1 (target object) based on the distance image (sensing result using the distance measuring sensor 5) and takes out the detected workpiece 1 with the hand 7. ) Is divided into a plurality of cells 27, and a cell at a position where a point cloud (object) is detected from the divided cells 27 using a distance image (sensing result of the distance measuring sensor 5). 27, the workpiece recognition unit 16 (detection) that executes processing for detecting the position of the workpiece 1 based on the position of the first cell 30 (the first cell 30 is the cell 27 labeled “Occupied”). A second cell that is at least one of the processing unit), the cell 27 excluding the first cell 30 among the divided cells 27, and the cell 27 at the position where the workpiece 1 is detected by the workpiece recognition unit 16. ( The cell 27) labeled “Occluded” is identified, and the number of the second cells 31 in the sensing range of the distance measuring sensor 5 among the second cells 31 is increased as compared with the previous distance measurement. A distance measurement condition determination unit 14 (calculation means) that calculates the distance measurement condition (movement position) of the distance measurement sensor 5 and the distance measurement sensor 5 are moved in association with the movement position calculated by the distance measurement condition determination unit 14. A distance measuring execution unit 15 (moving means). According to this, since it becomes possible to grasp the distance measurement object evenly, the accuracy with which the work recognition unit 16 recognizes the positions and postures of the plurality of works 1 for the Nth time is improved. In particular, by treating the area where the work 1 taken out at the first time existed in the same manner as the blind spot 28, the work recognition unit 16 can fully grasp the change in the state in the box 2 as the work 1 is taken out. Will be recognized.

複数のワークがバラ積み状態で収容された箱から、前記ワークを1つずつ取り出すロボットの制御方法であって、測距センサで前記測距センサから前記複数のワークまでの距離を測定するときの前記測距センサの位置及び姿勢を決定する第1のステップと、前記第1のステップにおける決定の結果に基づいて、前記測距センサから前記複数のワークまでの距離を前記測距センサで測定する第2のステップと、前記第2のステップにおける測定の結果に基づいて、前記複数のワークの位置及び姿勢を認識する第3のステップと、前記第3のステップにおける認識の結果に基づいて、前記ワークを取り出す第4のステップと、を順に繰り返す制御方法であり、N回目の前記第1のステップにおいては、N-1回目の前記第2のステップにおいて死角となった領域と、N-1回目の前記第4のステップにおいて取り出された前記ワークが存在していた領域と、を含む特定領域のうち前記測距センサが測距可能となる領域が前回の測距時と比較して増加するように前記測距センサの位置及び姿勢を決定する、制御方法が提供される。   A control method for a robot that takes out the workpieces one by one from a box in which a plurality of workpieces are stored in a stacked state, and when measuring distances from the ranging sensors to the plurality of workpieces by a ranging sensor. Based on the first step of determining the position and orientation of the distance measuring sensor and the result of the determination in the first step, the distance from the distance measuring sensor to the plurality of workpieces is measured by the distance measuring sensor. Based on the second step, the third step for recognizing the positions and postures of the plurality of workpieces based on the measurement result in the second step, and the recognition result in the third step, And a fourth step of sequentially taking out the workpiece, and in the first step of the Nth time, a blind spot is formed in the second step of the (N-1) th time. The area where the distance measurement sensor can measure the distance is the previous area of the specific area including the area where the workpiece has been taken out in the fourth step of the (N-1) th time. There is provided a control method for determining the position and orientation of the distance measuring sensor so as to increase as compared with the distance.

1 ワーク
2 箱
3 ロボット
4 ロボット本体
5 測距センサ
6 測距センサアーム
7 ハンド
8 ハンドアーム
9 センサアーム駆動部
10 ハンドアーム駆動部
14 測距条件決定部
15 測距実行部
16 ワーク認識部
17 ワーク取出実行部
27 セル
28 死角
30 第1セル
31 第2セル
DESCRIPTION OF SYMBOLS 1 Work 2 Box 3 Robot 4 Robot main body 5 Distance sensor 6 Distance sensor arm 7 Hand 8 Hand arm 9 Sensor arm drive part 10 Hand arm drive part 14 Distance measurement condition determination part 15 Distance execution part 16 Work recognition part 17 Work Extraction execution unit 27 cell 28 blind spot 30 first cell 31 second cell

Claims (1)

測距センサを用いたセンシング結果に基づいて所望の対象物を検出し、検出した前記対象物をハンドで取り出す、ロボットであって、
計測領域を複数のセルに分割して認識した上で、当該分割したセルの中から、前記測距センサの前記センシング結果を用いて物体が検出される位置のセルである第1セルの位置に基づいて前記対象物の位置を検出する処理を実行する検出処理手段と、
前記分割したセルのうち、前記第1セルを除くセル、及び、前記検出処理手段によって前記対象物が検出された位置のセル、の少なくとも何れかのセルである第2セルを特定し、前記第2セルのうち、前記測距センサのセンシング範囲に入る前記第2セルの数が増加するような前記測距センサの移動位置を算出する算出手段と、
前記算出手段によって算出された前記移動位置に対応付けて、前記測距センサを移動させる移動手段と、
を備えたロボット。
A robot that detects a desired object based on a sensing result using a distance sensor and takes out the detected object with a hand,
After dividing the measurement area into a plurality of cells and recognizing, the position of the first cell, which is the cell where the object is detected using the sensing result of the distance measuring sensor, is selected from the divided cells. Detection processing means for executing processing for detecting the position of the object based on the above;
Among the divided cells, a second cell that is at least one of a cell excluding the first cell and a cell at a position where the object is detected by the detection processing unit is specified, and the first cell A calculating means for calculating a movement position of the distance measuring sensor such that the number of the second cells entering the sensing range of the distance measuring sensor among the two cells increases;
Moving means for moving the distance measuring sensor in association with the moving position calculated by the calculating means;
Robot equipped with.
JP2016113714A 2016-06-07 2016-06-07 robot Active JP6747665B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016113714A JP6747665B2 (en) 2016-06-07 2016-06-07 robot

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016113714A JP6747665B2 (en) 2016-06-07 2016-06-07 robot

Publications (2)

Publication Number Publication Date
JP2017217726A true JP2017217726A (en) 2017-12-14
JP6747665B2 JP6747665B2 (en) 2020-08-26

Family

ID=60658224

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016113714A Active JP6747665B2 (en) 2016-06-07 2016-06-07 robot

Country Status (1)

Country Link
JP (1) JP6747665B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108528897A (en) * 2018-06-11 2018-09-14 珠海格力智能装备有限公司 Fixture and robot with it
JP2019091545A (en) * 2017-11-10 2019-06-13 本田技研工業株式会社 Control arrangement of plant for vehicle
JP2019144040A (en) * 2018-02-19 2019-08-29 ファナック株式会社 Object monitoring device using sensor
JP6723628B1 (en) * 2020-02-13 2020-07-15 株式会社Mujin Method and system for determining occlusion in the field of view of a camera
JP2021085683A (en) * 2019-11-25 2021-06-03 ファナック株式会社 Object detection system using TOF sensor
US11396101B2 (en) 2018-11-08 2022-07-26 Kabushiki Kaisha Toshiba Operating system, control device, and computer program product

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112102397B (en) * 2020-09-10 2021-05-11 敬科(深圳)机器人科技有限公司 Method, equipment and system for positioning multilayer part and readable storage medium

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6334094A (en) * 1986-07-29 1988-02-13 シャープ株式会社 Visual device
JPS6478103A (en) * 1987-09-19 1989-03-23 Nissan Motor Work recognizing method by image processing
JPH10128686A (en) * 1996-10-30 1998-05-19 Nippon Telegr & Teleph Corp <Ntt> Control method for robot manipulator and control device for robot manipulator
JP2010207989A (en) * 2009-03-11 2010-09-24 Honda Motor Co Ltd Holding system of object and method of detecting interference in the same system
US20140100696A1 (en) * 2012-10-04 2014-04-10 Electronics And Telecommunications Research Institute Working method using sensor and working system for performing same
JP2015009314A (en) * 2013-06-28 2015-01-19 キヤノン株式会社 Interference determination apparatus, interference determination method, and computer program

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6334094A (en) * 1986-07-29 1988-02-13 シャープ株式会社 Visual device
JPS6478103A (en) * 1987-09-19 1989-03-23 Nissan Motor Work recognizing method by image processing
JPH10128686A (en) * 1996-10-30 1998-05-19 Nippon Telegr & Teleph Corp <Ntt> Control method for robot manipulator and control device for robot manipulator
JP2010207989A (en) * 2009-03-11 2010-09-24 Honda Motor Co Ltd Holding system of object and method of detecting interference in the same system
US20140100696A1 (en) * 2012-10-04 2014-04-10 Electronics And Telecommunications Research Institute Working method using sensor and working system for performing same
JP2015009314A (en) * 2013-06-28 2015-01-19 キヤノン株式会社 Interference determination apparatus, interference determination method, and computer program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
原田 研介,外5名: "隣接する対象物との干渉を許容した学習型バラ積みビンピッキング", 第33回日本ロボット学会学術講演会予稿集DVD−ROM 2015年, vol. 第33巻, JPN6020007722, 3 September 2015 (2015-09-03), JP, pages 1 - 3, ISSN: 0004223046 *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019091545A (en) * 2017-11-10 2019-06-13 本田技研工業株式会社 Control arrangement of plant for vehicle
JP2019144040A (en) * 2018-02-19 2019-08-29 ファナック株式会社 Object monitoring device using sensor
CN108528897A (en) * 2018-06-11 2018-09-14 珠海格力智能装备有限公司 Fixture and robot with it
CN108528897B (en) * 2018-06-11 2024-04-02 珠海格力智能装备有限公司 Clamp and robot with same
US11396101B2 (en) 2018-11-08 2022-07-26 Kabushiki Kaisha Toshiba Operating system, control device, and computer program product
JP2021085683A (en) * 2019-11-25 2021-06-03 ファナック株式会社 Object detection system using TOF sensor
JP7364439B2 (en) 2019-11-25 2023-10-18 ファナック株式会社 Object detection system using TOF sensor
JP6723628B1 (en) * 2020-02-13 2020-07-15 株式会社Mujin Method and system for determining occlusion in the field of view of a camera
US11006039B1 (en) 2020-02-13 2021-05-11 Mujin, Inc. Method and system for determining occlusion within a camera field of view
JP2021126761A (en) * 2020-02-13 2021-09-02 株式会社Mujin Method and system for determining occlusion within camera field of view
US11924559B2 (en) 2020-02-13 2024-03-05 Mujin, Inc. Method and system for determining occlusion within a camera field of view

Also Published As

Publication number Publication date
JP6747665B2 (en) 2020-08-26

Similar Documents

Publication Publication Date Title
JP6747665B2 (en) robot
US10894324B2 (en) Information processing apparatus, measuring apparatus, system, interference determination method, and article manufacturing method
JP6117901B1 (en) Position / orientation measuring apparatus for a plurality of articles and a robot system including the position / orientation measuring apparatus
US10532459B2 (en) Information processing apparatus, information processing method, and storage medium for grasping an object
EP1905548B1 (en) Workpiece picking apparatus
CN110807350B (en) System and method for scan-matching oriented visual SLAM
US11065767B2 (en) Object manipulation apparatus and object manipulation method for automatic machine that picks up and manipulates an object
CN106808472B (en) Location of workpiece posture computing device and handling system
US10127677B1 (en) Using observations from one or more robots to generate a spatio-temporal model that defines pose values for a plurality of objects in an environment
JP5558585B2 (en) Work picking device
KR101003168B1 (en) Multidimensional Evidence Grids and System and Methods for Applying Same
Nieuwenhuisen et al. Mobile bin picking with an anthropomorphic service robot
CN109773776B (en) Gripping method, gripping system, and storage medium
JP2014161965A (en) Article takeout device
JP6632208B2 (en) Information processing apparatus, information processing method, and program
US10957067B2 (en) Control apparatus, object detection system, object detection method and program
US10778902B2 (en) Sensor control device, object search system, object search method, and program
JP2017526083A (en) Positioning and mapping apparatus and method
CN109983299A (en) The measuring system and method for industrial robot
JP2021139882A5 (en)
Kim et al. Improvement of Door Recognition Algorithm using Lidar and RGB-D camera for Mobile Manipulator
Chemweno et al. Innovative safety zoning for collaborative robots utilizing Kinect and LiDAR sensory approaches
CN111742349B (en) Information processing apparatus, information processing method, and information processing storage medium
US20220297292A1 (en) Information processing device and information processing method
CN113768420A (en) Sweeper and control method and device thereof

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190403

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200226

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200414

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200730

R151 Written notification of patent or utility model registration

Ref document number: 6747665

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250