(57)【要約】【課題】ワークの位置および姿勢の計測精度に関して、ワークの形状等の複雑さに対するロバスト性能の点で有利な技術を提供する。【解決手段】ワークの位置および姿勢を計測する計測装置は、前記ワークに光を投影して前記ワークを撮像する計測部と、前記計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理と、該第１処理よりも高精度に前記ワークの位置および姿勢を求める第２処理とを行う処理部と、前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部とを有する。【選択図】  図１
2020089950.tif 000002
【特許請求の範囲】
【請求項１】
ワークの位置および姿勢を計測する計測装置であって、
前記ワークに光を投影して前記ワークを撮像する計測部と、
前記計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理と、該第１処理よりも高精度に前記ワークの位置および姿勢を求める第２処理とを行う処理部と、
前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部と、
を有することを特徴とする計測装置。
【請求項２】
前記処理部は、前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向が、前記第２処理のための計測が困難な角度範囲として事前定義された所定の角度範囲内にあるか否かを判定し、
前記計測方向が前記所定の角度範囲内にあると判定された場合、前記出力部は、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を、前記計測部の計測方向が前記所定の角度範囲外となるように制御するための制御情報を出力する
ことを特徴とする請求項１に記載の計測装置。
【請求項３】
前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向を表す計測方向ベクトルをＬ、前記第２処理のための計測が困難な角度を表す方向ベクトルをｎ、該方向ベクトルに対する前記所定の角度範囲をθとするとき、前記処理部は、
Ｌ・ｎ＞|Ｌ||ｎ|ｃｏｓθ
を満たす場合に、前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向が前記所定の角度範囲内にあると判定することを特徴とする請求項２に記載の計測装置。
【請求項４】
前記処理部は、前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向が、前記第２処理のための計測に適した角度範囲として事前定義された所定の角度範囲内にあるか否かを判定し、
前記計測方向が前記所定の角度範囲内にないと判定された場合、前記出力部は、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を、前記計測部の計測方向が前記所定の角度範囲内となるように制御するための制御情報を出力する
ことを特徴とする請求項１に記載の計測装置。
【請求項５】
前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向を表す計測方向ベクトルをＬ、前記第２処理のための計測に適した角度を表す方向ベクトルをｎ、該方向ベクトルに対する角度範囲をθとするとき、前記処理部は、
Ｌ・ｎ＜|Ｌ||ｎ|ｃｏｓθ
を満たす場合に、前記第１処理のために前記ワークを撮像した時の前記計測部の計測方向が前記所定の角度範囲内にないと判定することを特徴とする請求項４に記載の計測装置。
【請求項６】
視線方向が相異なる前記ワークの複数の参照画像を記憶する記憶部を更に有し、
前記処理部は、前記第１処理において、前記第１処理のために前記計測部より得られた前記ワークの画像と前記記憶部に記憶されている前記複数の参照画像のそれぞれとの比較を行い、最も近似度の高い参照画像を選択することにより、前記ワークの概略の位置および姿勢を求める
ことを特徴とする請求項２乃至５のいずれか１項に記載の計測装置。
【請求項７】
前記計測部の位置および姿勢の少なくとも一方を調整する調整部と、
前記出力部から出力された前記制御情報に基づいて、前記調整部を制御する制御部と、
を更に有することを特徴とする請求項１乃至６のいずれか１項に記載の計測装置。
【請求項８】
ワークの位置および姿勢を計測する計測装置であって、
前記ワークに光を投影して前記ワークを撮像する第１計測部と、
前記ワークに光を投影して前記ワークを撮像する第２計測部と、
前記第２計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理と、前記第１計測部より得られた前記ワークの画像に基づいて、前記第１処理よりも高精度に前記ワークの位置および姿勢を求める第２処理とを行う処理部と、
前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理のために前記ワークを撮像する際の前記第１計測部の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部と、
を有することを特徴とする計測装置。
【請求項９】
ワークの位置および姿勢を計測する計測装置と、前記計測装置による計測の結果に基づいて前記ワークを把持して移動させるロボットとを含むシステムであって、
前記計測装置は、
前記ワークに光を投影して前記ワークを撮像する計測部と、
前記計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理と、該第１処理よりも高精度に前記ワークの位置および姿勢を求める第２処理とを行う処理部と、
前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部と、
を有し、
前記ロボットは、
前記計測部を支持し、前記計測部の位置および姿勢の少なくとも一方を調整する調整部と、
前記出力部から出力された前記制御情報に基づいて前記調整部を制御する制御部と、
を有することを特徴とするシステム。
【請求項１０】
ワークに光を投影して前記ワークを撮像する計測部を備える計測装置を用いて前記ワークの位置および姿勢を計測する計測方法であって、
前記計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理工程と、
前記計測部より得られた前記ワークの画像に基づいて、前記第１処理工程よりも高精度に前記ワークの位置および姿勢を求める第２処理工程と、
有し、
更に、前記第２処理工程の前に、
前記第１処理工程で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理工程のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を制御する制御工程を有する
ことを特徴とする計測方法。
【請求項１１】
コンピュータに、請求項１０に記載の計測方法の各工程を実行させるためのプログラム。
【請求項１２】
請求項１乃至８のいずれか１項に記載の計測装置を用いてワークの計測を行う工程と、
前記計測の結果に基づいて前記ワークを処理することにより物品を製造する工程と、
を有することを特徴とする物品製造方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、計測装置、システム、計測方法、プログラム、および物品製造方法に関する。
【背景技術】
【０００２】
三次元形状計測装置の一種であるマシンビジョン（以下、単に「ビジョン」ともいう。）は、特に製造業におけるコンピュータビジョンの応用に用いられる。ビジョンは、溶接、ハンドリング、組み付け、検査などの様々な工程に供するための、物の位置および姿勢（位置姿勢）の認識として利用されている。具体的には、組み付け工程の場合、パレット内の位置不定なバラ積みされた部品をビジョンで認識し、認識結果に基づいてロボットで部品を把持し、組み付け先に組み付ける工程に利用される。
【０００３】
従来、作業を行うロボット自体にビジョンを取り付ける「ロボット−ビジョンシステム」が提案されている（例えば特許文献１参照）。特許文献１に開示のビジョンは、計測対象部品に対してビジョンの計測方向である視線モデルを定義する。視線は一方向とは限らず、部品に応じて複数の視線モデルを定義することができる。ロボットは複数の視線モデルのうちから１つを選択し、ビジョンの計測方向と選択した視線モデルとが一致するようにロボットを動作させ、計測を行う。
【０００４】
ビジョンの計測手法はいくつかある。１つの手法としては、例えば、複数のカメラで撮像した画像から対象部品の三次元位置姿勢を得るパッシブステレオタイプがある。他の手法としては、例えば、プロジェクタで対象部品に投影したパターンをカメラで撮像し三角測量により三次元位置姿勢を得るアクティブステレオタイプがある。また、特許文献１には、カメラで撮像した１枚の画像と部品に定義した特徴部との比較から部品の三次元位置姿勢を得る手法が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−８３８８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１の技術では、計測精度を保証するために計測対象部品に対して計測方向を離散的に複数定義する必要がある。そのため、ロボットが計測方向に移動する動作に無駄が生じ、計測工程のタクトが増加するという問題がある。
【０００７】
一方、計測対象部品の中には、形状、表面性状、色、テクスチャ等により十分な計測精度が得られない計測方向が存在するものがある。例えば、図２に示すような電子部品のコネクタは、略立方体のケーシングの一面が開口部となっており、この開口内にピンが配置されている。特に、アクティブステレオ方式でこういった電子部品を、開口部に向けた視線方向から計測を行う場合に、十分な計測精度が得られない場合がある。これは、ケーシングの側壁により死角となる領域が大きいため十分な計測点が得られないことや、投影したパターン光が開口内部で多重散乱する等が理由である。
【０００８】
本発明は、例えば、ワークの位置および姿勢の計測精度に関して、ワークの形状等の複雑さに対するロバスト性能の点で有利な技術を提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明の一側面によれば、ワークの位置および姿勢を計測する計測装置であって、前記ワークに光を投影して前記ワークを撮像する計測部と、前記計測部より得られた前記ワークの画像に基づいて、前記ワークの概略の位置および姿勢を求める第１処理と、該第１処理よりも高精度に前記ワークの位置および姿勢を求める第２処理とを行う処理部と、前記第１処理で求められた前記ワークの概略の位置および姿勢に基づいて、前記第２処理のために前記ワークを撮像する際の前記計測部の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部とを有することを特徴とする計測装置が提供される。
【発明の効果】
【００１０】
本発明によれば、例えば、ワークの位置および姿勢の計測精度に関して、ワークの形状等の複雑さに対するロバスト性能の点で有利な技術を提供することができる。
【図面の簡単な説明】
【００１１】
【図１】実施形態におけるロボット−ビジョンシステムの構成を示す図。
【図２】ワークの外観の例を示す斜視図。
【図３】図２に示したワークの三方図。
【図４】ワークの位置姿勢を求める処理のフローチャート。
【図５】実施形態のロボット−ビジョンシステムの構成を示す図。
【図６】ワークの位置姿勢を求める処理のフローチャート。
【図７】ワークの位置姿勢を求める処理のフローチャート。
【図８】制御部のハードウェア構成例を示すブロック図。
【発明を実施するための形態】
【００１２】
以下、図面を参照して本発明の実施形態について詳細に説明する。なお、以下の実施形態は本発明の実施の具体例を示すにすぎないものであり、本発明は以下の実施形態に限定されるものではない。また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決のために必須のものであるとは限らない。
【００１３】
＜第１実施形態＞
図１は、本実施形態におけるロボット−ビジョンシステム１００の構成を示す図である。このシステムは、ワークの位置および姿勢を計測する計測装置と、この計測装置による計測の結果に基づいてワークを把持して移動させるロボットとを含む。図１におけるロボット−ビジョンシステム１００は、例えば、ばら積みで置かれて位置姿勢が不定であるワーク５０を、ロボットで把持し、部品を整列させるもしくは組み付けることを目的に用いられるシステムを想定している。ロボット−ビジョンシステム１００は、ロボット１０１と、ロボット１０１に取り付けられたビジョン２０１と、ロボット１０１およびビジョン２０１を制御する制御装置１０２とを含む。
【００１４】
ロボット１０１は、例えば６軸の多関節ロボットであり、製造業における部品の仕分け工程や組立て工程などで広く用いられている。ロボット１０１は、駆動部であるロボットアーム１０９と、ロボットアーム１０９の先端に固定されたフランジ部１０５、フランジ部１０５に取り付けられたマウント部１０６、マウント部１０６に取り付けられたハンド１０７とを含む。ロボット１０１は、ワーク５０をハンド１０７によって把持して所望の位置や姿勢でもって該ワーク５０を移動させることで、例えば該把持したワーク５０を別の物体に組み付けることができる。
【００１５】
ビジョン２０１は、被検物であるワーク５０にパターン光及び均一光を投影するプロジェクタと、ワーク５０で反射された光を撮像するカメラとを有するアクティブステレオタイプの計測部である。ビジョン２０１は、フランジ部１０５およびマウント部１０６を介してハンド１０７とともにロボットアーム１０９に支持されている。よって、ロボットアーム１０９は、ビジョン２０１の位置および姿勢の少なくとも一方を調整する調整部としても機能する。
【００１６】
制御装置１０２は、ビジョン２０１によりワーク５０にパターン光を投影して得られたパターン画像を処理して距離情報を取得する。また、制御装置１０２は、ビジョン２０１によりワーク５０に均一光を投影して得られた二次元画像を処理して二次元情報を取得する。そして制御装置１０２は、これらの取得した情報に基づいて、ワーク５０の位置姿勢を求めることができる（位置姿勢計測処理）。このように、制御装置１０２は、計測部であるビジョン２０１より得られたワークの画像に基づいてワークの位置姿勢を求める処理部として機能する。制御装置１０２は、位置姿勢計測処理に関して２つの機能を有する。第１の機能は、ワークの概略の位置および姿勢を求める概略位置姿勢計測（第１処理）である。概略位置姿勢計測においては、例えば、ワークの三次元ＣＡＤモデルを複数方向から見た画像を参照画像として記憶しておき、参照画像と計測で取得した画像処理結果との比較から、ワークの概略位置姿勢を高速に求める。第２の機能は、概略位置姿勢計測よりも高精度にワークの位置および姿勢を求める高精度位置姿勢計測（第２処理）である。計測で取得した画像処理結果を三次元ＣＡＤモデルとフィッティングすることで、ワークの位置姿勢を高精度に求めることができる。
【００１７】
制御装置１０２は、更に、求めたワークの位置姿勢の情報に基づいて、ロボットアーム１０９に駆動指令を送って駆動部であるロボットアーム１０９を制御する制御部として機能する。ロボットアーム１０９は先端のハンド１０７（把持部）でワーク５０を把持して、並進や回転などの移動をさせる。さらに、ロボットアーム１０９によってワーク５０を他の部品に組み付けることにより、複数の部品で構成された物品、例えば電子回路基板や機械などを製造することができる。また、移動されたワーク５０を加工することにより、物品を製造することができる。
【００１８】
本実施形態において、制御装置１０２は、上記のとおり、ロボット１０１およびビジョン２０１を制御するものであるが、ロボット１０１を制御する装置とビジョン２０１を制御する装置とが別体で構成されていてもよい。また、ワークの位置姿勢を求める処理する処理部の機能は、制御装置１０２ではなくビジョン２０１に内蔵されていてもよい。すなわち、一実施形態において、本発明の計測装置は、計測部であるビジョン２０１と処理部である制御装置１０２とを含む構成によって実現されうる。また、制御装置１０２は、ロボット１０１およびビジョン２０１を制御するための専用ハードウェアにより構成してもよいが、汎用コンピュータ装置によっても実現可能である。図８は、制御装置１０２を汎用コンピュータ装置で構成する場合のハードウェア構成例を示すブロック図である。図８において、ＣＰＵ２１は、中央演算装置（処理部）である。ＲＯＭ２４は、ＢＩＯＳ等の固定的なプログラムや、各種データを記憶している。ＲＡＭ２２は、主記憶装置として機能するとともにＣＰＵ２１のワークエリアを提供する。外部記憶装置であるハードディスクドライブ（ＨＤＤ）２３は、オペレーティングシステム（ＯＳ）、ロボット１０１およびビジョン２０１を制御するための制御プログラム、画像データ等を記憶する。ＣＰＵ２１は、ＨＤＤ２３に格納されている制御プログラムをＲＡＭ２２にロードすることにより、本実施形態の動作を実行することができる。汎用インタフェース（Ｉ／Ｆ）２６には、入力装置３１および記録メディア３２が接続される。入力装置３１は、キーボードやマウス等を含みうる。記録メディア３２は、ＳＤカード、ＵＳＢ等のメモリデバイスである。ビデオコントローラ（ＶＣ）２７には、表示装置３３が接続されている。表示装置３３は、ＶＣ２７による制御の下、ＣＰＵ２１による処理結果を画像や文字等で表示することができる。入力装置３１と表示装置３３とが一体化されたタッチパネル画面が構成されてもよい。これら上記した各部は、バス２５により相互接続されている。
【００１９】
ビジョン２０１による撮像画像に基づいて求められるワーク５０の位置姿勢は、ビジョン座標系ＸｖＹｖＺｖにおける位置姿勢である。ビジョン座標系ＸｖＹｖＺｖは、例えば、ビジョン２０１の撮像系が有する光学系の焦点位置を原点とし、ビジョン２０１の撮像方向をＺ軸とし、このＺ軸と直交する２軸をそれぞれＸ軸、Ｙ軸とする座標系である。
【００２０】
ロボット１０１に対しては、ロボット１０１を基準とするロボット座標系ＸｗＹｗＺｗが存在する。ロボット座標系ＸｗＹｗＺｗは、例えば、ロボット１０１の台座１０８における規定の位置を原点とし、この原点で互いに直交する３軸をそれぞれ、Ｘ軸、Y軸、Ｚ軸とする座標系である。なお、ロボット座標系ＸｗＹｗＺｗは、基準座標系として設けたものであるから、ロボット１０１との相対的な位置姿勢を有する座標系であれば、現実空間中のいずれの箇所に設定してもよい。
【００２１】
また、フランジ部１０５に対しては、フランジ部１０５を基準とするフランジ座標系ＸｆＹｆＺｆが存在する。フランジ座標系ＸｆＹｆＺｆは、例えば、フランジ部１０５の位置を原点とし、フランジ面と直交する方向（ロボットアームの伸び方向）をＺ軸とし、このＺ軸と直交する２軸をそれぞれ、Ｘ軸、Ｙ軸とする座標系である。ロボット１０１には、上記の通りビジョン２０１も固定して配置されているため、ビジョン座標系ＸｖＹｖＺｖとフランジ座標系ＸｆＹｆＺｆとの間の相対的な位置姿勢関係は固定されていることになる。ビジョン座標系ＸｖＹｖＺｖとフランジ座標系ＸｆＹｆＺｆとの間の相対的な位置姿勢関係はキャリブレーション時に求められ、制御装置１０２のＲＡＭ２２に記憶されているものとする。
【００２２】
本実施形態において、ワーク５０は、形状、表面性状、色、テクスチャ等の影響により十分な計測精度が得られない計測方向が存在する部品である。具体的には、ワークは、前述したように図２に示したような電子部品のコネクタであり、開口部の方向から撮像した場合には所望の計測精度が得られない。本実施形態ではこのようなワークが、位置姿勢が不定な状態で置かれている状態、例えば、ばら積み状態で置かれている状態を想定している。
【００２３】
本実施形態において、処理部である制御装置１０２は、計測部であるビジョン２０１より得られたワークの画像に基づいて、ワークの概略の位置および姿勢を求める第１処理と、第１処理よりも高精度にワークの位置および姿勢を求める第２処理とを行う。また、制御装置１０２は、第１処理で求められたワークの概略の位置および姿勢に基づいて、第２処理のためにワークを撮像する際のビジョン２０１の位置および姿勢の少なくとも一方を制御するための制御情報を出力する出力部としても機能する。このような処理部および出力部の機能は、計測部であるビジョン２０１に含まれていてもよい。
【００２４】
以下、具体例を示す。ここでは、ワーク毎に計測困難な方向とその角度範囲を事前定義し、ロボットをその角度範囲外に移動させる最適駆動量を計算し、駆動後にビジョンでワークを計測する。図４は、本実施形態におけるロボット−ビジョンシステム１００によるワーク５０の位置姿勢を求める処理のフローチャートである。このフローチャートに対応するプログラムは、例えばＨＤＤ２３に格納されている制御プログラムに含まれ、ＲＡＭ２２にロードされた後、ＣＰＵ２１によって実行される。
【００２５】
まずＳ４０１で、制御装置１０２は、高精度位置姿勢計測（第２処理）のための計測が困難な方向とその角度範囲の事前定義を行う。図３を参照して、この処理を説明する。図３は図２で示したコネクタの三方図である。前述したように、開口方向から計測した場合には所望の計測精度が得られない可能性があるため、図３において、矢印ｎを計測が困難な方向を表す単位ベクトルとする。計測方向が矢印ｎからｎ’まで変わるとワークの外側面が主たる計測面に変化する。外側面であれば死角や多重散乱の影響は無くなるため、十分なパターン光反射強度が得られ、かつ、反射面積が確保できれば、所望の計測精度が得られる。計測が困難な角度範囲θは、ワークの形状およびビジョンの性能に依存するが、一般的にはθ＝３０〜４５度程度である。よって、ワークの形状およびビジョンの性能に基づいて、計測が困難な方向ｎおよびその角度範囲θが定義される。Ｓ４０１では、入力装置３１を介してユーザがワークの形状やビジョンの性能を鑑みて、計測が困難な方向ｎおよびその角度範囲θの定義作業を行ってもよい。あるいは、実際にビジョンを用いてワークを様々な角度から計測して所望の計測精度が得られる計測方向及び範囲を実験的に求め、その結果から、計測が困難な方向ｎおよびその角度範囲θを定義してもよい。また、制御装置１０２が、ＣＡＤデータを用いて、その形状の特徴等から計測が困難な方向ｎおよびその角度範囲θを適宜導き出して設定してもよい。なお、便宜上、図３では平面上の角度を示しているが、実際には、計測が困難な方向ｎ周りの立体角θで形成される円錐領域が計測困難な角度範囲になる（図１参照）。
【００２６】
次に、Ｓ４０２で、制御装置１０２は、ワークの概略位置姿勢を計測する。例えば、ワークＣＡＤモデルに対する視線方向が相異なる複数の参照画像を、記憶部であるＲＡＭ２２に予め記憶しておく。各参照画像はワーク方向情報と紐づいている。制御装置１０２（処理部）は、ビジョン２０１の計測によりパターン画像および二次元画像を取得し、そのうちの二次元画像とＲＡＭ２２に記憶されている複数の参照画像のそれぞれとの比較を行う。そして、例えば最も近似度の高い参照画像を選択することにより、ワークの概略位置姿勢を求める。この計測によって得られるのはビジョン座標系ＸｖＹｖＺｖにおけるワークの概略位置姿勢である。前述したように、フランジ座標系ＸｆＹｆＺｆとビジョン座標系ＸｖＹｖＺｖは固定であるから、ビジョン座標系におけるワークの概略位置姿勢はフランジ座標系に変換可能である。制御装置１０２は、ワークの概略位置姿勢を、ビジョン座標系からフランジ座標系に変換した後、更に、フランジ座標系からロボット座標系ＸｗＹｗＺｗに変換する。
【００２７】
次に、Ｓ４０３で、制御装置１０２は、ビジョン２０１の計測方向と計測方向範囲の判定を行う。ここでは、制御装置１０２は、Ｓ４０２の概略位置姿勢計測のためにワークを撮像した時のビジョンの計測方向が、Ｓ４０７で高精度位置姿勢を求めるための計測が困難な角度範囲として事前定義された所定の角度範囲内にあるか否かを判定する。この判定は、Ｓ４０２で求められたワークの概略の位置および姿勢に基づいて行われる。Ｓ４０２でロボット座標系におけるワークの概略位置姿勢が得られている。したがって、これに基づいて、Ｓ４０１で定義した、高精度位置姿勢計測が困難な角度を表す方向ベクトルｎと、この方向ベクトルｎに対する所定の角度範囲θをロボット座標系のワークに定義することができる。この方向ベクトルｎは、高精度位置姿勢計測が困難な角度（方向）を表す単位ベクトルとするとよい。計測方向の判定は、ワークの概略位置姿勢の計測時のビジョン計測方向（図１中のＺｖ方向）が高精度位置姿勢計測に不適切な角度を表す方向ベクトルｎとそれに対する所定の角度範囲θで定義される円錐領域（計測困難領域）内に含まれるか否かを判定する。この判定は、ビジョン計測方向を示す計測方向ベクトル（計測方向を表す単位ベクトル）をＬとすると、次式（１）を評価することにより行われる。
【００２８】
Ｌ・ｎ＞|Ｌ||ｎ|ｃｏｓθ  ・・・・式（１）
式（１）は、高精度位置姿勢計測が困難な角度を表す方向ベクトルｎとビジョン計測方向を表す計測方向ベクトルＬの内積を表す。式（１）の左辺はｎとＬの成す角度によって−１〜＋１の値をとる。式（１）を満たす場合には、概略位置姿勢計測時のビジョン計測方向は計測困難領域内（所定の角度範囲内）にあると判定される。式（１）を満たす場合、つまり、ビジョン計測方向が計測困難領域内に含まれる場合、このままでは高精度位置姿勢の計算の精度が保証できないため、処理は次のＳ４０５に進む。式（１）を満たさない場合、つまり、概略位置姿勢計測時のビジョン計測方向が計測困難領域に含まれない場合は、高精度位置姿勢の計測精度が保証可能であるため、処理はそのままＳ４０７に進む。
【００２９】
Ｓ４０４では、制御装置１０２は、ロボット指示値の計算を行う。具体的には、制御装置１０２は、ロボット移動によりビジョン計測方向を計測困難領域外（所定の角度範囲外）に移動させるためのロボット指示値を計算しこれを制御情報として出力する。ビジョン計測方向が計測困難領域外であれば計測精度は保証されるので、制御装置１０２は、ビジョンの現在位置及び次工程の動作を鑑みてロボット移動が最小になる最適経路を選択することにより、タクト増加を最小限にすることが可能となる。例えば、ワークに対するハンド１０７の把持位置姿勢が限定されていない場合、ビジョン２０１を現在位置から円錐領域（計測困難領域）外に移動させるための最短経路をロボット指示値とすればよい。一方、ワークに対するハンド１０７の把持位置姿勢が限定されている場合は、ビジョン２０１を現在位置から円錐領域外に移動させるための最短経路が必ずしも最適経路にならない。この場合は、ワーク把持までのロボット移動が全体として最小となるようにロボット指示値を計算する。
【００３０】
次に、ステップＳ４０５で、制御装置１０２はＳ４０４で得られたロボット指示値に基づいて調整部であるロボットアーム１０９を制御してロボット１０１を移動させる。その後、Ｓ４０６で、制御装置１０２は、ビジョン２０１による計測を実行する。この計測は計測困難領域外からの計測になるため、計測精度が保証されている。
【００３１】
最後に、Ｓ４０７で、制御装置１０２は、Ｓ４０２の概略位置姿勢計測よりも高精度にワークの位置姿勢を計測する。具体的には、制御装置１０２は、Ｓ４０６でのビジョン計測で得られたワークのパターン画像および二次元画像を処理し、その画像処理結果を三次元ＣＡＤモデルとフィッティングすることでワークの位置姿勢を高精度に求める。
【００３２】
以上の処理によれば、ワークが計測困難な方向を有する部品であっても、確実に部品の位置姿勢を取得することが可能になる。
【００３３】
＜第２実施形態＞
図５は、第２実施形態におけるロボット−ビジョンシステム１００の構成を示す図である。図１と同じ構成要素には同じ参照符号を付してそれらの説明は省略する。本実施形態のロボット−ビジョンシステム１００は、第２ビジョン２０３（第２計測部）を更に有する。第２ビジョン２０３はロボット１０１に固定されておらず、ワーク５０の上方に固定されている据え置きタイプである。なお、以下では、第２ビジョン２０３に対して、ビジョン２０１（第１計測部）のことを第１ビジョンという。
【００３４】
本実施形態では、処理部としての制御装置１０２は、第２ビジョン２０３より得られたワークの画像に基づいて、ワークの概略の位置および姿勢を求める概略位置姿勢計測（第１処理）を行う。また、処理部としての制御装置１０２は、第１ビジョン２０１より得られたワークの画像に基づいて、概略位置姿勢計測よりも高精度にワークの位置および姿勢を求める高精度位置姿勢計測（第２処理）を行う。また、出力部としての制御装置１０２は、概略位置姿勢計測で求められたワークの概略の位置および姿勢に基づいて、高精度位置姿勢計測のためにワークを撮像する際の第１ビジョン２０１の位置および姿勢の少なくとも一方を制御するための制御情報を出力する。以下、具体例を示す。
【００３５】
図６は、本実施形態におけるロボット−ビジョンシステム１００によるワーク５０の位置姿勢を求める処理（計測工程）のフローチャートである。まずＳ６０１で、制御装置１０２は、計測が困難な方向とその角度範囲の事前定義を行う。これは、第１実施形態（図４）のＳ４０１と同様であるため説明を省略する。
【００３６】
次に、Ｓ６０２で、制御装置１０２は、第２ビジョン２０３によりワークの計測を行い、ワークの概略位置姿勢を計算する。
【００３７】
次に、Ｓ６０３で、制御装置１０２は、第１ビジョン２０１の計測方向と計測方向範囲の判定を行う。ここでは、図４のＳ４０３と同様、第１ビジョン計測方向が計測に不適切な方向ｎと角度範囲θで定義される円錐領域（計測困難領域）に含まれるかどうかを判定する。第１ビジョン計測方向が計測困難領域内に含まれると判定された場合、または、第１ビジョンの視野内にワークが存在しない場合は、処理はＳ６０４に進む。一方、第１ビジョン計測方向が計測困難領域に含まれない場合、かつ、第１ビジョンの視野内にワークが存在する場合は、処理はＳ６０６に進む。Ｓ６０４、Ｓ６０５、Ｓ６０６、Ｓ６０７は、それぞれ、図４のＳ４０４、Ｓ４０５、Ｓ４０６、Ｓ４０７と同様であるため説明を省略する。
【００３８】
図７は、図６の変形例に係る、ワークの位置姿勢を求める処理のフローチャートである。図６と同じ処理工程には同じ参照符号を付してそれらの説明は省略する。ここでは、第２ビジョン２０３による計測結果についても計測方向の判定を行う。具体的には、Ｓ７０３−１で、制御装置１０２は、第２ビジョン計測方向が計測困難領域に含まれるか否かを判定する。第２ビジョン計測方向が計測困難領域に含まれる場合、処理はＳ７０３−２に進み、そうでなければ処理はＳ６０７に進む。Ｓ７０３−２では、制御装置１０２は、第１ビジョン計測方向が計測困難領域に含まれるか否かを判定する。第１ビジョン計測方向が計測困難領域に含まれる場合、処理はＳ６０４に進み、そうでなければ処理はＳ６０６に進む。
【００３９】
この変形例によれば、第１ビジョンおよび第２ビジョンの両方の計測方向が計測困難領域に含まれる場合には、その計測方向が計測困難領域外となるようにロボットの移動が行われ、確実に部品の位置姿勢を取得することが可能になる。なお、第１ビジョンと第２ビジョンで、計測困難な方向ｎと角度範囲θが異なる場合はＳ６０１でそれぞれのビジョンについて定義しておけばよい。
【００４０】
＜第３実施形態＞
次に、計測困難な方向と角度範囲の定義方法に関して、第１及び第２の実施形態とは異なる実施形態について説明する。
【００４１】
例えば、ワークＣＡＤモデルに対する視線方向が相異なる複数の参照画像を記憶部であるＲＡＭ２２に予め記憶しておく。各参照画像はワーク方向情報と紐づいているため、計測困難な方向の参照画像を指定し、さらに指定した画像方向からの角度範囲θを記憶しておくことで、計測困難な方向と角度範囲を定義することができる。
【００４２】
計測工程におけるその他の処理に関しては第１及び第２実施形態と同様であるため説明を省略する。
【００４３】
＜第４実施形態＞
上述した第１〜第３実施形態は、ワークに対して計測困難な方向ｎと角度範囲θを定義し、定義した角度範囲外から計測することで計測精度を担保していた。それに対し第４実施形態では、ワークに対して計測が可能な方向と角度範囲を定義し、定義した角度範囲内から計測することで計測精度を保証する。
【００４４】
具体的には、第１実施形態におけるステップＳ４０１及び第２実施形態におけるステップＳ６０１では、高精度位置姿勢計測が困難な方向ｎとそれに対する所定の角度範囲θを定義していたが、本実施形態では計測に適した方向ｎと角度範囲θを定義する。それに対応して、本実施形態のビジョンの計測方向と計測方向範囲の判定は、判定式の不等号が式（１）に対して反転した次式（２）を評価することにより行われる。
【００４５】
Ｌ・ｎ＜|Ｌ||ｎ|ｃｏｓθ  ・・・・式（２）
式（２）を満たす、つまり、概略位置姿勢計測時のビジョン計測方向が、計測が可能な円錐領域（計測可能領域）内に含まれていない場合は、ビジョンを計測可能領域内（所定の角度範囲内）に移動させて再計測する。詳細は第１実施形態と同様であるため説明は省略する。
【００４６】
一方で、第３実施形態においては計測困難な方向の参照画像とその画像方向からの角度範囲θを定義していたが、本実施形態では計測が可能な方向の参照画像とその画像方向からの角度範囲θを定義すればよい。
【００４７】
＜第５実施形態＞
上記実施形態に係るビジョンシステムやロボット−ビジョンシステムは、物品製造方法に使用しうる。この物品製造方法は、前記システムを用いて物ないし部品（ワーク）の計測を行う工程と、この工程で計測された物ないし部品（ワーク）の処理ないし製造を行う工程とを含みうる。この処理は、例えば、加工、切断、搬送、組立（組付）、検査、選別などのうちの少なくともいずれか１つを含みうる。本実施形態の物品製造方法は、従来の方法に比べて、物品の性能、品質、生産性、生産コストなどにおいて有利である。
【００４８】
＜他の実施形態＞
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【符号の説明】
【００４９】
５０：ワーク、１００：ロボット−ビジョンシステム、１０１：ロボット、１０２：制御装置、２０１：ビジョン
【図１】
2020089950.tif 000003
【図２】
2020089950.tif 000004
【図３】
2020089950.tif 000005
【図４】
2020089950.tif 000006
【図５】
2020089950.tif 000007
【図６】
2020089950.tif 000008
【図７】
2020089950.tif 000009
【図８】
2020089950.tif 000010