(57)【特許請求の範囲】
【請求項１】
ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出装置（６）であって、
３次元空間に配置された少なくとも１つのワーク（５）を計測し、前記少なくとも１つのワーク（５）の３次元位置情報を含む計測データ（６０）を取得する３次元計測器（４）と、
前記ワーク（５）の３次元モデル（５Ａ）を記憶する３次元モデル記憶部（６１）と、
前記ワーク（５）の位置および姿勢を算出する際に使用される少なくとも１つの位置姿勢算出データ（６３）を作成する位置姿勢算出データ作成部（６２）と、
各々の前記位置姿勢算出データ（６３）を用いて、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出部（６４）と、
前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ワーク位置姿勢算出部（６４）による以降の算出において使用されるべき前記計測データ（６０）の一部を除外する計測データ除外部（６５）と、を備え、
前記位置姿勢算出データ（６３）が、前記計測データ除外部（６５）によって除外されるべきでない前記計測データ（６０）に関する情報をさらに含む、
ワーク位置姿勢算出装置（６）。
【請求項２】
ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出装置（６）であって、
３次元空間に配置された少なくとも１つのワーク（５）を計測し、前記少なくとも１つのワーク（５）の３次元位置情報を含む計測データ（６０）を取得する３次元計測器（４）と、
前記ワーク（５）の３次元モデル（５Ａ）を記憶する３次元モデル記憶部（６１）と、
前記ワーク（５）の位置および姿勢を算出する際に使用される少なくとも１つの位置姿勢算出データ（６３）を作成する位置姿勢算出データ作成部（６２）と、
各々の前記位置姿勢算出データ（６３）を用いて、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出部（６４）と、
前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ワーク位置姿勢算出部（６４）による以降の算出において使用されるべき前記計測データ（６０）の一部を除外する計測データ除外部（６５）と、を備え、
前記ワーク位置姿勢算出部（６４）が、前記ワーク（５）の位置および姿勢を算出するとともに、算出結果の信用度を表すスコアを計算するように構成されており、
前記位置姿勢算出データ（６３）が、前記ワーク位置姿勢算出部（６４）によって算出されたワーク（５）の位置姿勢に基づいて前記計測データ（６０）の一部を除外するか否かを判定する際に使用されるスコア閾値を含んでおり、
前記計測データ除外部（６５）が、前記スコアが前記スコア閾値を上回った場合に、前記計測データの一部を除外するように構成される、
ワーク位置姿勢算出装置（６）。
【請求項３】
前記位置姿勢算出データ（６３）が優先度を含んでおり、
前記ワーク位置姿勢算出部（６４）が、高い優先度を有する位置姿勢算出データ（６３）を順次使用して、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するように構成される、請求項１又は２に記載のワーク位置姿勢算出装置（６）。
【請求項４】
前記位置姿勢算出データ（６３）が、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合する際に探索されるべき姿勢範囲を含む、請求項１から３のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項５】
前記位置姿勢算出データ（６３）が、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合する際に探索されるべき位置範囲を含む、請求項１から４のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項６】
前記計測データ除外部（６５）が、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢を用いて前記３次元モデル（５Ａ）を座標変換するとともに、座標変換された前記３次元モデルの近傍に存在する計測データ（６０）を除外するように構成される、請求項１から５のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項７】
前記位置姿勢算出データ作成部（６２）が、手動入力に応答して前記位置姿勢算出データ（６３）を作成するように構成される、請求項１から６のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項８】
前記位置姿勢算出データ（６３）が、物理シミュレーションを利用して推定される前記ワーク（５）の位置および姿勢の発生確率を含む、請求項１から７のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項９】
前記位置姿勢算出データ（６３）が、統計データに基づいて推定される前記ワーク（５）の位置および姿勢の発生確率を含む、請求項１から８のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項１０】
前記位置姿勢算出データ作成部（６２）が、前回の前記ワーク位置姿勢算出部（６４）による算出結果に基づいて、追加の位置姿勢算出データ（６３）を作成するように構成される、請求項１から９のいずれか１項に記載のワーク位置姿勢算出装置（６）。
【請求項１１】
ロボット（２）によってワーク（５）をハンドリングするハンドリングシステム（１０）であって、
ワーク（５）をハンドリング可能なロボット（２）と、
請求項１から１０のいずれか１項に記載のワーク位置姿勢算出装置（６）と、を備えており、
前記ワーク位置姿勢算出装置（６）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ロボット（２）が前記ワーク（５）をハンドリングするように構成される、ハンドリングシステム（１０）。
【請求項１２】
ワーク（５）をハンドリング可能なロボット（２）と、
請求項１０に記載のワーク位置姿勢算出装置（６）と、を備えるハンドリングシステム（１０）であって、
前記ワーク位置姿勢算出装置（６）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ロボット（２）が前記ワーク（５）をハンドリングするように構成されており、
前記位置姿勢算出データ作成部（６２）が、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢のうち、前記ロボット（２）によってハンドリングされた前記ワーク（５）以外の少なくとも１つの前記ワーク（５）の位置および姿勢に基づいて、追加の前記位置姿勢算出データを作成するように構成される、ハンドリングシステム（１０）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークの位置および姿勢を算出するワーク位置姿勢算出装置、およびワーク位置姿勢算出装置を備えるハンドリングシステムに関する。
【背景技術】
【０００２】
対象物の３次元位置情報と対象物モデルとを照合して対象物の実際の位置を特定する３次元マッチングが公知である。３次元マッチングは、６自由度のパラメータを使用して計算する必要があるので、計算機にかかる負荷が大きい。３次元マッチングを高速化するために、探索範囲を制限する技術が公知である（特許文献１および特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−２１８１１９号公報
【特許文献２】特開２０１２−１２５８７８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
３次元マッチングを利用して対象物の位置および姿勢を効率的に算出するための技術が求められている。
【課題を解決するための手段】
【０００５】
本願の１番目の発明によれば、ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出装置（６）であって、３次元空間に配置された少なくとも１つのワーク（５）を計測し、前記少なくとも１つのワーク（５）の３次元位置情報を含む計測データ（６０）を取得する３次元計測器（４）と、前記ワーク（５）の３次元モデル（５Ａ）を記憶する３次元モデル記憶部（６１）と、前記ワーク（５）の位置および姿勢を算出する際に使用される少なくとも１つの位置姿勢算出データ（６３）を作成する位置姿勢算出データ作成部（６２）と、各々の前記位置姿勢算出データ（６３）を用いて、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出部（６４）と、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ワーク位置姿勢算出部（６４）による以降の算出において使用されるべき前記計測データ（６０）の一部を除外する計測データ除外部（６５）と、を備え、前記位置姿勢算出データ（６３）が、前記計測データ除外部（６５）によって除外されるべきでない前記計測データ（６０）に関する情報をさらに含む、ワーク位置姿勢算出装置（６）が提供される。
本願の２番目の発明によれば、ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出装置（６）であって、３次元空間に配置された少なくとも１つのワーク（５）を計測し、前記少なくとも１つのワーク（５）の３次元位置情報を含む計測データ（６０）を取得する３次元計測器（４）と、前記ワーク（５）の３次元モデル（５Ａ）を記憶する３次元モデル記憶部（６１）と、前記ワーク（５）の位置および姿勢を算出する際に使用される少なくとも１つの位置姿勢算出データ（６３）を作成する位置姿勢算出データ作成部（６２）と、各々の前記位置姿勢算出データ（６３）を用いて、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するワーク位置姿勢算出部（６４）と、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ワーク位置姿勢算出部（６４）による以降の算出において使用されるべき前記計測データ（６０）の一部を除外する計測データ除外部（６５）と、を備え、前記ワーク位置姿勢算出部（６４）が、前記ワーク（５）の位置および姿勢を算出するとともに、算出結果の信用度を表すスコアを計算するように構成されており、前記位置姿勢算出データ（６３）が、前記ワーク位置姿勢算出部（６４）によって算出されたワーク（５）の位置姿勢に基づいて前記計測データ（６０）の一部を除外するか否かを判定する際に使用されるスコア閾値を含んでおり、前記計測データ除外部（６５）が、前記スコアが前記スコア閾値を上回った場合に、前記計測データの一部を除外するように構成される、ワーク位置姿勢算出装置（６）が提供される。
本願の３番目の発明によれば、１番目又は２番目の発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ（６３）が優先度を含んでおり、前記ワーク位置姿勢算出部（６４）が、高い優先度を有する位置姿勢算出データ（６３）を順次使用して、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合して、前記ワーク（５）の位置および姿勢を算出するように構成される。
本願の４番目の発明によれば、１番目から３番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ（６３）が、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合する際に探索されるべき姿勢範囲を含む。
本願の５番目の発明によれば、１番目から４番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ（６３）が、前記計測データ（６０）と前記３次元モデル（５Ａ）とを照合する際に探索されるべき位置範囲を含む。
本願の６番目の発明によれば、１番目から５番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記計測データ除外部（６５）が、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢を用いて前記３次元モデル（５Ａ）を座標変換するとともに、座標変換された前記３次元モデルの近傍に存在する計測データ（６０）を除外するように構成される。
本願の７番目の発明によれば、１番目から６番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ作成部（６２）が、手動入力に応答して前記位置姿勢算出データ（６３）を作成するように構成される。
本願の８番目の発明によれば、１番目から７番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ（６３）が、物理シミュレーションを利用して推定される前記ワーク（５）の位置および姿勢の発生確率を含む。
本願の９番目の発明によれば、１番目から８番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ（６３）が、統計データに基づいて推定される前記ワーク（５）の位置および姿勢の発生確率を含む。
本願の１０番目の発明によれば、１番目から９番目のいずれかの発明に係るワーク位置姿勢算出装置（６）において、前記位置姿勢算出データ作成部（６２）が、前回の前記ワーク位置姿勢算出部（６４）による算出結果に基づいて、追加の位置姿勢算出データ（６３）を作成するように構成される。
本願の１１番目の発明によれば、ロボット（２）によってワーク（５）をハンドリングするハンドリングシステム（１０）であって、ワーク（５）をハンドリング可能なロボット（２）と、１番目から１０番目の発明のいずれかに係るワーク位置姿勢算出装置（６）と、を備えており、前記ワーク位置姿勢算出装置（６）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ロボット（２）が前記ワーク（５）をハンドリングするように構成される、ハンドリングシステム（１０）が提供される。
本願の１２番目の発明によれば、ワーク（５）をハンドリング可能なロボット（２）と、１０番目の発明に係るワーク位置姿勢算出装置（６）と、を備えるハンドリングシステム（１０）であって、前記ワーク位置姿勢算出装置（６）によって算出された前記ワーク（５）の位置および姿勢に基づいて、前記ロボット（２）が前記ワーク（５）をハンドリングするように構成されており、前記位置姿勢算出データ作成部（６２）が、前記ワーク位置姿勢算出部（６４）によって算出された前記ワーク（５）の位置および姿勢のうち、前記ロボット（２）によってハンドリングされた前記ワーク（５）以外の少なくとも１つの前記ワーク（５）の位置および姿勢に基づいて、追加の前記位置姿勢算出データを作成するように構成される、ハンドリングシステム（１０）が提供される。
【０００６】
これら並びに他の本発明の目的、特徴および利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。
【発明の効果】
【０００７】
本発明に係るワーク位置姿勢算出装置によれば、位置姿勢算出装置によって算出されたワークの位置および姿勢に基づいて、３次元マッチングに利用する計測データの一部を除外する。それにより、３次元マッチングを実行する際の探索範囲が限定され、ワークの位置および姿勢を効率的に算出できるようになる。
【図面の簡単な説明】
【０００８】
【図１】一実施形態に係るハンドリングシステムの構成例を示す図である。
【図２】図１の実施形態に係るハンドリングシステムにおいて実行されるハンドリング処理を説明するフローチャートである。
【図３】ワーク位置姿勢算出装置の機能ブロック図である。
【図４】位置姿勢が異なる２つのワークを示す図である。
【図５】ワークの３次元モデルおよびそれに基づいて除外される計測データを示す図である。
【図６】ワークの積載例を示す図である。
【図７】ワークの位置姿勢の信用度について説明するための図である。
【図８Ａ】ワークの位置姿勢の発生確率を変更する処理を説明するための図である。
【図８Ｂ】ワークの位置姿勢の発生確率を変更する処理を説明するための図である。
【図８Ｃ】ワークの位置姿勢の発生確率を変更する処理を説明するための図である。
【図８Ｄ】ワークの位置姿勢の発生確率を変更する処理を説明するための図である。
【図８Ｅ】ワークの位置姿勢の発生確率を変更する処理を説明するための図である。
【図９】位置姿勢算出データの追加について説明するための図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して本発明の実施形態を説明する。図示される実施形態の構成要素は、本発明の理解を助けるために縮尺が適宜変更されている。同一または対応する構成要素には、同一の参照符号が使用される。
【００１０】
図１は、一実施形態に係るハンドリングシステムの構成例を示している。ハンドリングシステム１０は、ロボット２、ロボット制御装置３、３次元計測器４、およびワーク位置姿勢算出装置６を備えている。
【００１１】
ロボット２は、モータによって駆動される複数の関節を有しており、例えば、図示されるような６軸垂直多関節ロボットである。ロボット２は、機構部の寸法および構造に応じて定まる動作範囲内において、アームの先端を任意の姿勢で任意の位置に位置決めできるように構成される。ロボット２は、通信ケーブルなどの通信手段を介してロボット制御装置３に接続されている。ロボット２の各関節に設けられたモータは、ロボット制御装置３によって制御される。
【００１２】
ロボット２は、アーム先端の手首にグリッパ２１を備えている。グリッパ２１は、ロボット制御装置３によって制御され、ワーク５を解放可能に把持するために開閉動作する。
【００１３】
ロボット制御装置３は、ＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリおよび入出力インタフェースなどを備えたデジタルコンピュータである。
【００１４】
３次元計測器４は、バラ積みされたワーク５の上方において、架台４１に固定されている。３次元計測器４は、バラ積みされたワーク５が視野に含まれるように、ワーク５に対して所定の位置関係に設置されている。
【００１５】
３次元計測器４は、ワーク５の表面を検出して、ワーク５の表面上に位置する複数の点の３次元位置情報（以下、「計測データ」と称することがある。）を取得する。３次元計測器４は、通信ケーブルなどの通信手段を介してワーク位置姿勢算出装置６に接続されている。別の実施形態において、３次元計測器４は、ロボット２の手首に設けられていてもよい。
【００１６】
３次元計測器４は、任意のタイプの非接触方式の検出器である。３次元計測器４は、例えば、２つのカメラを利用するステレオ方式の検出器であってもよいし、レーザスリット光で対象物の表面を走査するタイプの検出器であってもよいし、プロジェクタなどを用いてパターン光を対象物に投影するタイプの検出器であってもよいし、或いは対象物の表面で反射して投光器に戻るまでの飛行時間を計算するよう構成された検出器であってもよい。
【００１７】
ワーク位置姿勢算出装置６は、３次元計測器４から複数のワーク５の計測データを取得して、それらワーク５の位置および姿勢を算出する（以下、「位置および姿勢」を「位置姿勢」と称することがある。）。ワーク位置姿勢算出装置６は、ＣＰＵ、ＲＯＭ、ＲＡＭ、不揮発性メモリおよび入出力インタフェースなどを備えたデジタルコンピュータである。
【００１８】
ワーク位置姿勢算出装置６は、通信ケーブルなどの通信手段を介してロボット制御装置３に接続されていて、互いにデータおよび信号の送受信が可能である。図１では、ワーク位置姿勢算出装置６およびロボット制御装置３が別個に示されているものの、ロボット制御装置３が、ワーク位置姿勢算出装置６の機能を有していてもよい。
【００１９】
ハンドリングシステム１０は、ワーク位置姿勢算出装置６によって検出されるワーク５の位置姿勢に基づいて、ロボット２を制御して、ワーク５をハンドリングする。
【００２０】
ワーク位置姿勢算出装置６は、ワーク５の計測データと、ワーク５の３次元モデルとを照合すること（以下、「３次元マッチング」と称することがある。）によって、ワーク５の位置姿勢を算出する。図３を参照すれば、ワーク位置姿勢算出装置６は、３次元モデル記憶部６１、位置姿勢算出データ作成部６２、ワーク位置姿勢算出部６４、および計測データ除外部６５を備えている。
【００２１】
３次元モデル記憶部６１は、ワーク５の３次元モデルを記憶する。ワーク５の３次元モデルは、ワーク５のＣＡＤデータなどに基づいて予め作成される。
【００２２】
位置姿勢算出データ作成部６２は、ワーク５の位置姿勢を算出する際に使用される位置姿勢算出データ６３を作成する。位置姿勢算出データ６３は、ワーク５の位置姿勢を算出するのに必要なパラメータの組合せである。例えば、位置姿勢算出データ６３は、３次元マッチングを実行する際に探索されるべき位置範囲および姿勢範囲などを含んでいる。
【００２３】
例えば、ワーク５の位置が既知である場合、ワーク５の姿勢のみを求める必要があるので、姿勢範囲のみが位置姿勢算出データに含まれることになる。逆に、ワーク５の姿勢が既知である場合、位置姿勢算出データには、探索されるべき位置範囲のみが含まれる。
【００２４】
図１に示されるように、ワーク５がバラ積みされている場合、位置姿勢算出データとして、位置範囲および姿勢範囲について、それぞれ３自由度、合計６自由度の範囲が必要である。
【００２５】
一実施形態において、位置姿勢算出データ６３は、位置範囲および姿勢範囲の少なくとも一方を複数種類含んでいる。位置姿勢および姿勢範囲は、ワーク５が配置される可能性がある位置範囲およびワーク５がとりうる可能性がある姿勢範囲を網羅するように作成される。各々の位置範囲および姿勢範囲は、後述するように、それらの位置姿勢が発生する確率と関連付けられる。
【００２６】
図４は、位置姿勢が異なる２つのワーク５０，５１を示している。一方のワーク５０の長手方向は水平方向を向いており、他方のワーク５１の長手方向は鉛直方向に向いている。このような場合、ワーク５０のような姿勢の発生確率は、ワーク５１よりも高い。したがって、ワーク５０に対応する姿勢範囲およびワーク５１に対応する姿勢範囲は、異なる位置姿勢算出データ６３を構成する。
【００２７】
位置姿勢算出データ６３は、優先度と関連付けられて記憶される。具体的には、発生確率が高い位置範囲および姿勢範囲を含む位置姿勢算出データ６３は、優先度が高くなるように、優先度が各々の位置姿勢算出データ６３に関連付けられる。
【００２８】
位置姿勢算出データ６３は、ワーク５の形状または過去のワーク５の積載状態に基づいて、ユーザによって手動で作成されてもよい。或いは、物理シミュレーションを利用して、ワーク５の積載状態を仮想空間で再現し、その結果として得られる統計データからワーク５の特定の積層状態の発生確率を求めてもよい。
【００２９】
ワーク位置姿勢算出部６４は、位置姿勢算出データ６３を用いて、３次元計測器４によって取得された計測データ６０と、３次元モデル記憶部６１に記憶されていたワーク５の３次元モデルとを照合して、ワーク５の位置姿勢を算出する。ワーク５の位置姿勢を算出するための３次元マッチングは、位置姿勢算出データ６３に含まれる探索範囲に従って実行される。
【００３０】
一実施形態において、ワーク位置姿勢算出部６４は、次のような方法でワーク５の位置姿勢を算出するように構成されてもよい。先ず、位置姿勢算出データ６３に含まれる位置範囲および姿勢範囲の少なくともいずれか一方に従って、ワーク５の３次元モデルを構成する３次元点を座標変換し、それら３次元点と、計測データ６０の３次元点との間の差分を計算する。差分が予め定められる閾値以下である場合は、計測データの３次元点と３次元モデルの３次元点とは一致しているとみなす。
【００３１】
ワーク位置姿勢算出部６４は、前述した３次元マッチングを、３次元モデルのすべての３次元点について実行し、３次元点の一致数が予め定められる閾値以上である場合、３次元モデルの位置姿勢をワーク５の位置姿勢として出力する。
【００３２】
別の実施形態において、ワーク位置姿勢算出部６４は、３次元モデルの特徴量を利用して、ワーク５の位置姿勢を算出するように構成されてもよい。３次元モデルのＰＰＦ（Point Pair Feature）特徴量またはＳＨＯＴ（Signature of Histogram of Orientation）特徴量などが利用され得る。その場合、予め求めておいた３次元モデルのそれら特徴量を、計測データの３次元特徴量と照合することによって、ワーク５の位置姿勢が算出される。
【００３３】
計測データ除外部６５は、ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢に基づいて、それ以降のワーク５の位置姿勢の算出において使用される計測データ６０の一部を除外する。
【００３４】
計測データ除外部６５は、ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢に３次元モデルを座標変換して配置し、３次元モデルの近傍に存在する計測データを除外する。
【００３５】
図５は、ワーク５の３次元モデルとそれに基づいて除外される計測データを示している。図５の矢印は、ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢を表している。３次元モデル５Ａは、算出された位置姿勢のワーク５の位置姿勢に一致するように配置されている。３次元モデル５Ａの周囲の破線５Ｂは、計測データ６０を除外すべき範囲を表している。図５の場合、３次元点Ｐ１は、破線５Ｂで囲まれた範囲内に位置しているので、計測データ６０から除外される。他方、別の３次元点Ｐ２は、破線５Ｂで囲まれた範囲外に位置しているので、計測データ６０から除外されない。
【００３６】
しかしながら、算出されたワーク５の位置姿勢によっては、計測データ６０を除外すべきではない場合がある。すなわち、計測データ６０が不適切に除外された場合、次の工程でワーク５の位置姿勢を算出しようとする際に、実際には存在するワーク５を認識できなくなる虞がある。そこで、計測データ６０が除外されない範囲を指定できるようにしてもよい。計測データ６０を除外すべきでない範囲は、位置姿勢算出データ６３に含まれていてもよい。
【００３７】
図６は、ワーク５の積載状態の例を示している。この場合、１つのワーク５２の位置姿勢が誤認識されている。そのため、誤認識されたワーク５２の近傍にある計測データを除外すれば、ワーク５３が認識されなくなってしまう。
【００３８】
そこで、破線５Ｃで示される範囲を予め指定しておき、その範囲に含まれるワーク５の位置姿勢が算出された場合には、計測データ６０を除外しないようにすればよい。
【００３９】
一実施形態において、ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢について信用度を表すスコアを計算し、スコアが低い場合（信用度が低い場合）には、計測データ６０を除外しないようにしてもよい。
【００４０】
図７は、信用度を表すスコアが高い場合と、スコアが低い場合とを対比して示している。高いスコアに対応する位置姿勢におけるワーク５５近傍の計測データ６０を除外しても、他のワークの位置姿勢の算出には影響がないと推定できる。
【００４１】
他方、低いスコアに対応する位置姿勢におけるワーク５６の近傍の計測データ６０を除外すれば、他のワーク５７，５７を認識できない虞がある。そこで、或るワーク５の位置姿勢に対して低いスコアが付与されている場合、そのワーク５の近傍の計測データ６０を除外しないようにする。計測データ６０を除外するか否かを判定する際にスコアと比較されるべき閾値は、位置姿勢算出データ６３に含まれていてもよい。
【００４２】
図２は、本実施形態に係るハンドリングシステム１０において実行されるハンドリング処理を説明するフローチャートである。図２の処理は、例えばオペレータによるスイッチ操作に応答して開始される。ステップＳ１０１では、３次元計測器４によって、バラ積みされたワーク５の計測データ６０を取得する。計測データ６０は、ワーク５の表面の複数の点の３次元位置を含んでいる。
【００４３】
ステップＳ１０２では、位置姿勢算出データ作成部６２によって、位置姿勢算出データ６３を優先度が高い順番に取得する。
【００４４】
ステップＳ１０３では、ワーク位置姿勢算出部６４によって、位置姿勢算出データ６３に基づいて、計測データ６０とワーク５の３次元モデルとを照合して、ワーク５の位置姿勢を算出する。
【００４５】
ステップＳ１０４では、計測データ除外部６５によって、ステップＳ１０３で算出されたワーク５の位置姿勢に基づいて、計測データ６０の一部を除外する。
【００４６】
ステップＳ１０５では、すべての位置姿勢算出データ６３を利用してワーク５の位置姿勢を算出する工程が実行されたか否かを判定する。未使用の位置姿勢算出データ６３が残っている場合は、ステップＳ１０２に戻る。
【００４７】
他方、すべての位置姿勢算出データ６３が使用されたと判定された場合、ステップＳ１０６に進む。ステップＳ１０６では、ワーク５が認識されたか否かを判定する。ワーク５が認識されていない場合は、すべてのワーク５がハンドリングされたものと推定できるので、ハンドリング処理を終了する。他方、少なくとも１つのワーク５が認識されている場合、ステップＳ１０７に進む。
【００４８】
ステップＳ１０７では、ステップＳ１０３で求められたワーク５の位置姿勢に従って、ロボット２およびグリッパ２１を制御してワーク５をハンドリングする。すなわち、ロボット２は、グリッパ２１がワーク５を保持可能な位置姿勢に位置決めし、次いでグリッパを２１動作させてワーク５を保持する。
【００４９】
別の実施形態において、ワーク５の位置姿勢に対して、グリッパ２１が所定の相対的位置関係になるようにロボット２を制御してもよい。この場合、基準となり得る任意の位置姿勢におけるワーク５と、当該ワーク５を保持可能なロボット２の位置姿勢との相対的位置関係を予め求めておき、ロボット制御装置３に記憶しておく。そして、ステップＳ１０７を実行する際には、グリッパ２１がワーク５に対して予め定められる相対的位置関係を満足するように、ロボット２が制御される。
【００５０】
次いで、ステップＳ１０８において、次回実行されるワーク５の位置姿勢算出工程のために、位置姿勢算出データ６３を変更し、更新する。
【００５１】
一実施形態において、ワーク５の位置姿勢の算出結果の統計データに基づいて、或る位置姿勢におけるワーク５の発生確率を推定するとともに、すでに記憶されている位置姿勢算出データ６３に含まれる優先度、位置範囲および姿勢範囲を更新する。
【００５２】
図８Ａ〜図８Ｃを参照して、任意の位置姿勢におけるワーク５の発生確率を変更する方法について説明する。図８Ａ〜図８Ｃの横軸は、ワーク５の位置姿勢をそれぞれ表しており、縦軸は、それに対応する発生確率を表している。
【００５３】
図８Ａは、位置姿勢算出データ６３を変更する前の状態を表しており、ワーク５の発生確率は、いずれの位置姿勢においても一定である。図８Ｂは、位置姿勢Ｘにおけるワーク５および位置姿勢Ｙにおけるワーク５の発生確率が比較的高い場合を示している。ここで、位置姿勢Ｙにおけるワーク５が新たに算出された場合、位置姿勢Ｙの発生確率を増大させる（図８Ｃ参照）。そして、発生確率が高い位置姿勢ほど、探索範囲の優先度が高くなるように優先度を更新する。
【００５４】
一実施形態において、図８Ｂおよび図８Ｃに示されるように、或る位置姿勢から所定の範囲に含まれる姿勢範囲の発生確率をすべて一定値だけ増大するように発生確率を変更してもよい。別の実施形態において、図８Ｄおよび図８Ｅに示されるように、算出された位置姿勢を中心に重み付けするように発生確率を変更してもよい。
【００５５】
また別の実施形態において、ステップＳ１０８では、ワーク５の位置姿勢の算出結果に基づいて、複数の位置姿勢算出データ６３を新たに追加してもよい。位置姿勢算出データ６３を追加する態様について、図９を参照して説明する。
【００５６】
ステップＳ１０３において、ワーク５８，５９，５９の位置姿勢がそれぞれ算出されるとともに、ステップＳ１０７において、ワーク５８がロボット２によってハンドリングされたものとする。この場合、ワーク５８がハンドリングされた結果として、残りのワーク５９，５９の位置姿勢が大きく変化する可能性は低いと考えられる。
【００５７】
そこで、ワーク５９，５９の、すでに算出された位置姿勢の近傍を探索範囲とするように位置範囲および姿勢範囲を定めた位置姿勢算出データ６３を新たに作成し、ワーク位置姿勢算出装置６に記憶する。
【００５８】
このとき、新たに作成された位置姿勢算出データ６３の優先度は、それまでに記憶されていた位置姿勢算出データ６３の優先度よりも高くなるように優先度を設定する。
【００５９】
前述したハンドリングシステム１０によれば、次のような効果を奏することができる。
【００６０】
（１）位置姿勢算出データ６３をそれらの優先度とともに記憶しておき、優先度が高い方から順番に位置姿勢算出データ６３を使用し、ワーク５の位置姿勢を算出する。結果的に、発生確率が高い位置姿勢におけるワーク５を優先的に探索するようになるので、ワーク５の位置姿勢を算出するのに要する時間が短縮される。
【００６１】
（２）発生確率が低い位置姿勢に対応する位置範囲および姿勢範囲も位置姿勢算出データ６３として記憶される。それにより、実際にはワーク５が存在するにもかかわらず、ワーク５が認識されなくなることを防止できる。
【００６２】
（３）いったんワーク５の位置姿勢が算出されれば、当該ワーク５の表面に位置する３次元点を計測データから除外する。それにより、次回以降の位置姿勢算出工程において、誤った位置姿勢が算出されるのを防止できる。また、ワーク５の位置姿勢を算出するのに要する時間を短縮できる。
【００６３】
（４）ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢に基づいて３次元点が計測データから除外されなくなるように、オペレータが範囲を指定できる。それにより、誤認識が起こりやすいワーク５の位置姿勢によって必要な計測データ６０が除外されないようになり、ワーク５の位置姿勢算出機能の信頼性を向上できる。
【００６４】
（５）ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢が正確でない場合、計測データ６０が誤って除外されてしまい、実際には存在するワーク５を検出できなくなることがある。しかしながら、前述した実施形態に係るハンドリングシステム１０によれば、算出されたワーク５の位置姿勢の信用度を表すスコアが計算されるので、信用度の高い位置姿勢の場合のみ計測データ６０を除外することができる。したがって、計測データ６０が誤って除外されるのを防止でき、実際には存在するワーク５が検出不能になることを防止できる。
【００６５】
（６）物理シミュレーションまたは統計データを利用する実施形態によれば、発生確率が高いワーク５の位置姿勢に対応した位置範囲および姿勢範囲をより正確に求められるようになる。信頼性の高い位置範囲および姿勢範囲に探索範囲を限定することで、ワーク５の位置姿勢を算出するのに要する時間が短縮される。
【００６６】
（７）ワーク位置姿勢算出部６４によって算出されたワーク５の位置姿勢に基づいて、以前から記憶されている位置姿勢算出データ６３よりも高い優先度を有する位置姿勢算出データ６３を新たに作成する。それにより、ワーク５の位置姿勢が算出されたものの、ロボット２によってハンドリングされなかったワーク５の位置姿勢を算出する際の位置範囲および姿勢範囲を制限でき、所要時間を短縮できる。
【００６７】
バラ積みされたワークをハンドリングする実施形態について説明したものの、本発明に係るロボットハンドリングシステムは、段状に積載されたワークをハンドリングするために使用されてもよい。その場合、幾つかのワークが所定の位置から移動している場合であっても、本発明に係るロボットハンドリングシステムにおいては、任意の位置姿勢におけるワークを検出できるので、ワークのハンドリングが可能である。
【００６８】
以上、本発明の種々の実施形態について説明したが、当業者であれば、他の実施形態によっても本発明の意図する作用効果を実現できることを認識するであろう。特に、本発明の範囲を逸脱することなく、前述した実施形態の構成要素を削除または置換することができるし、或いは公知の手段をさらに付加することができる。また、本明細書において明示的または暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。
【符号の説明】
【００６９】
１０    ハンドリングシステム
２    ロボット
２１    グリッパ
３    ロボット制御装置
４    ３次元計測器
４１    架台
５    ワーク
５Ａ    ３次元モデル
６    ワーク位置姿勢算出装置
６１    ３次元モデル記憶部
６２    位置姿勢算出データ作成部
６４    ワーク位置姿勢算出部
６５    計測データ除外部
【図１】
0006348097.tif 000002
【図２】
0006348097.tif 000003
【図３】
0006348097.tif 000004
【図４】
0006348097.tif 000005
【図５】
0006348097.tif 000006
【図６】
0006348097.tif 000007
【図７】
0006348097.tif 000008
【図８Ａ】
0006348097.tif 000009
【図８Ｂ】
0006348097.tif 000010
【図８Ｃ】
0006348097.tif 000011
【図８Ｄ】
0006348097.tif 000012
【図８Ｅ】
0006348097.tif 000013
【図９】
0006348097.tif 000014