(57)【要約】【課題】姿勢が不安定なテンプレートの生成を抑制し、生成したテンプレートを記憶する記憶容量を低減する。【解決手段】テンプレート取得部１１０は、ワーク１３０の設計データを取得するＣＡＤデータ取得部１１２と、取得した設計データに基づいてワーク１３０の形状を抽出する形状抽出部１１４と、抽出した形状を複数の姿勢で平面に射影した複数の射影像を生成する射影部１１６と、複数の姿勢のそれぞれに応じて形状の姿勢を仮想的に変化させ、前記形状の姿勢が復元する結果に基づいて、ワーク１３０が複数の姿勢毎に載置された場合の安定度を算出する安定度算出部１２０と、複数の射影像のそれぞれに応じたテンプレートを生成するテンプレート生成部１１８と、生成したテンプレートを安定度と共に記憶するテンプレート記憶部１２２と、を備える。【選択図】図２
2010186219.tif 000002
【特許請求の範囲】
【請求項１】
目標物の設計データを取得する取得手段と、
取得した前記設計データに基づいて前記目標物の形状を抽出する抽出手段と、
抽出した前記形状を複数の姿勢で平面に射影した複数の射影像を生成する射影手段と、
前記複数の姿勢のそれぞれに応じて前記形状の姿勢を仮想的に変化させ、前記形状の姿勢が復元する結果に基づいて、前記目標物が前記複数の姿勢毎に載置された場合の安定度を算出する算出手段と、
前記複数の射影像のそれぞれに応じたテンプレートを生成する生成手段と、
生成した前記テンプレートを安定度と共に記憶する記憶手段と、を備えることを特徴とするテンプレート生成システム。
【請求項２】
請求項１に記載のテンプレート生成システムにおいて、
前記算出手段は、
前記形状を前記複数の姿勢のそれぞれにおいて前記平面に近接させた場合、前記平面と最初に接触する前記形状の接触点を算出する接触点算出手段と、
前記複数の姿勢のそれぞれにおいて算出した前記接触点を支点として、前記平面に載置された前記形状の姿勢を仮想的に微小に変化させた後、前記形状の姿勢が元に戻るか、否かにより、前記目標物が前記複数の姿勢毎に載置された場合の安定度を判定する安定性判定手段と、を備えることを特徴とするテンプレート生成システム。
【請求項３】
請求項１乃至２のいずれかに記載のテンプレート生成システムにおいて、
前記生成手段は、前記射影像を生成した姿勢における前記安定度が低い場合、前記射影像に応じたテンプレートを作成しないことを特徴とするテンプレート生成システム。
【請求項４】
請求項１乃至３のいずれか１項に記載のテンプレート生成システムにおいて、
前記記憶手段は、前記射影像を生成した姿勢での前記安定度が高い順序で前記テンプレートを読み出せるように記憶することを特徴とするテンプレート生成システム。
【請求項５】
請求項１乃至４のいずれか１項に記載のテンプレート生成システムと、
前記目標物を撮影して撮影画像を出力する撮影手段と、
前記記憶手段に記憶された前記テンプレートと、前記撮影画像とを比較することで一致度を判定するマッチング手段と、を備えることを特徴とするテンプレートマッチングシステム。
【請求項６】
目標物の設計データを取得する工程と、
取得した前記設計データに基づいて前記目標物の形状を抽出する工程と、
抽出した前記形状を複数の姿勢で平面に射影した複数の射影像を生成する工程と、
前記複数の姿勢のそれぞれに応じて前記形状の姿勢を仮想的に変化させ、前記形状の姿勢が復元する結果に基づいて、前記目標物が前記複数の姿勢毎に載置された場合の安定度を算出する工程と、
前記複数の射影像のそれぞれに応じたテンプレートを生成する工程と、
生成した前記テンプレートを安定度と共に記憶する工程と、を備えることを特徴とするテンプレート生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、テンプレート生成システム、テンプレートマッチングシステムおよびテンプレート生成方法に関する。
【背景技術】
【０００２】
組み立て工程が自動化された生産ラインにおいて、構成する部品を正確に把持して組み立てるために、供給される部品の位置や姿勢を正確に知る必要がある。この場合、下記特許文献１に示すように、基準パターンとなる部品のテンプレートを、種々の姿勢に対応して作成し、供給される部品の画像と、種々のテンプレートとを比較して、その一致度を判別することで、部品の位置や姿勢に関する情報を取得した。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−１５８６２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、部品が載置された姿勢に関する情報を高精度で取得するためには、部品のさまざまな姿勢に応じた多数のテンプレートを用意する必要があった。この場合、部品の安定性が考慮されないため、通常の状態では安定して載置できないような姿勢のテンプレートも作成されることから、非常に多くのテンプレートが作成され、これらのテンプレートをメモリに記憶するために必要なメモリの記憶容量が増大した。また、テンプレートマッチングの際、多数のテンプレートとマッチングするために、処理時間の増大を招いた。
【課題を解決するための手段】
【０００５】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の形態または適用例として実現することが可能である。
【０００６】
［適用例１］
本適用例にかかるテンプレート生成システムは、目標物の設計データを取得する取得手段と、取得した前記設計データに基づいて前記目標物の形状を抽出する抽出手段と、抽出した前記形状を複数の姿勢で平面に射影した複数の射影像を生成する射影手段と、前記複数の姿勢のそれぞれに応じて前記形状の姿勢を仮想的に変化させ、前記形状の姿勢が復元する結果に基づいて、前記目標物が前記複数の姿勢毎に載置された場合の安定度を算出する算出手段と、前記複数の射影像のそれぞれに応じたテンプレートを生成する生成手段と、生成した前記テンプレートを安定度と共に記憶する記憶手段と、を備えることを特徴とする。
【０００７】
このような構成によれば、目標物の設計データに基づいて形状を抽出し、抽出した形状を複数の姿勢で射影した複数の射影像を生成し、それぞれの姿勢に応じて形状を仮想的に変化させ、形状の姿勢が復元する結果により、目標物が複数の姿勢毎に平面に載置された場合の安定度を算出し、複数の射影像のそれぞれに応じたテンプレートを生成し、生成したテンプレートを安定度と共に記憶する。従って、安定して載置できる姿勢のテンプレートが生成され、生成したテンプレートを記憶する記憶手段の記憶容量を低減できる。
【０００８】
［適用例２］
上記適用例にかかるテンプレート生成システムにおいて、前記算出手段は、前記形状を前記複数の姿勢のそれぞれにおいて前記平面に近接させた場合、前記平面と最初に接触する前記形状の接触点を算出する接触点算出手段と、前記複数の姿勢のそれぞれにおいて算出した前記接触点を支点として、前記平面に載置された前記形状の姿勢を仮想的に微小に変化させた後、前記形状の姿勢が元に戻るか、否かにより、前記目標物が前記複数の姿勢毎に載置された場合の安定度を判定する安定性判定手段と、を備えることが好ましい。
【０００９】
このような構成によれば、目標物のそれぞれの姿勢における安定度を力学的に算出できる。
【００１０】
［適用例３］
上記適用例にかかるテンプレート生成システムにおいて、前記生成手段は、前記射影像を生成した姿勢における前記安定度が低い場合、前記射影像に応じたテンプレートを作成しないことが好ましい。
【００１１】
このような構成によれば、安定度が低い姿勢のテンプレートの作成を回避できる。
【００１２】
［適用例４］
上記適用例にかかるテンプレート生成システムにおいて、前記記憶手段は、前記射影像を生成した姿勢での前記安定度が高い順序で前記テンプレートを読み出せるように記憶することが好ましい。
【００１３】
このような構成によれば、記憶手段に記憶されたテンプレートの中から、安定度が高い姿勢のテンプレートを優先して読み出せる。
【００１４】
［適用例５］
本適用例にかかるテンプレートマッチングシステムは、上述したテンプレート生成システムと、前記目標物を撮影して撮影画像を出力する撮影手段と、前記記憶手段に記憶された前記テンプレートと、前記撮影画像とを比較することで一致度を判定するマッチング手段と、を備えることを特徴とする。
【００１５】
このような構成によれば、目標物の設計データに基づいて形状を抽出し、抽出した形状を複数の姿勢で射影した複数の射影像を生成し、それぞれの姿勢に応じて形状を仮想的に変化させ、形状の姿勢が復元する結果により、目標物が複数の姿勢毎に平面に載置された場合の安定度を算出し、複数の射影像のそれぞれに応じたテンプレートを、射影像を生成した姿勢における安定度が高い方から優先して生成し、生成したテンプレートを記憶する。従って、安定して載置できる姿勢のテンプレートが優先して生成されるため、不安定なテンプレートの生成が抑制され、生成したテンプレートを記憶する記憶手段の記憶容量を低減できる。更に、記憶されたテンプレートのそれぞれと部品の撮影画像とを比較することで、テンプレートマッチングを高速化でき、処理時間を短くできる。
【００１６】
［適用例６］
本適用例にかかるテンプレート生成方法は、目標物の設計データを取得する工程と、取得した前記設計データに基づいて前記目標物の形状を抽出する工程と、抽出した前記形状を複数の姿勢で平面に射影した複数の射影像を生成する工程と、前記複数の姿勢のそれぞれに応じて前記形状の姿勢を仮想的に変化させ、前記形状の姿勢が復元する結果に基づいて、前記目標物が前記複数の姿勢毎に載置された場合の安定度を算出する工程と、前記複数の射影像のそれぞれに応じたテンプレートを生成する工程と、生成した前記テンプレートを安定度と共に記憶する工程と、を備えることを特徴とする。
【００１７】
このような方法によれば、目標物の設計データに基づいて形状を抽出し、抽出した形状を複数の姿勢で射影した複数の射影像を生成し、それぞれの姿勢に応じて形状を仮想的に変化させ、形状の姿勢が復元する結果により、目標物が複数の姿勢毎に平面に載置された場合の安定度を算出し、複数の射影像のそれぞれに応じたテンプレートを生成し、生成したテンプレートを安定度と共に記憶する。従って、安定して載置できる姿勢のテンプレートが生成され、生成したテンプレートを記憶する記憶手段の記憶容量を低減できる。
【図面の簡単な説明】
【００１８】
【図１】本実施形態に係るワーク姿勢変更装置の概観を示す図。
【図２】本実施形態に係るワーク姿勢変更装置の機能構成を示す図。
【図３】ワークの安定度算出を説明する図。
【図４】本実施形態に係るワーク姿勢変更装置による処理の流れを示すフローチャート。
【発明を実施するための形態】
【００１９】
以下、テンプレート生成システム装置を適用したワーク姿勢変更装置について図面を参照して説明する。
【００２０】
（実施形態）
図１は、ワーク姿勢変更装置５の概観を示す図である。このワーク姿勢変更装置５は、ロボット１０と、ワーク姿勢を変更すべくロボット１０を制御する制御装置５０を備え、目標物であるワーク１３０が平面（床面）に載置されている姿勢をパターンマッチングにより検出し、必要に応じて、ロボット１０がワーク１３０を把持して、ワーク１３０を所定の姿勢に変更し、床面に載置する機能を有する。
ロボット１０は、目標物の姿勢を変更する姿勢変更手段であり、設置面に設置される基体であるロボットベース２５、設置面との鉛直軸で回転する第一軸１１、アーム１７Ａを水平軸で回転する第二軸１２、アーム１７Ａの軸方向に回転する第三軸１３、アーム１７Ａに固定され、アーム１７Ｂを水平方向に回転する第四軸１４、アーム１７Ｂの軸方向に回転する第五軸１５、および、アーム１７Ｂに固定され、手首１８を水平方向に回転する第六軸１６のそれぞれを移動部とする六軸制御の多関節産業用ロボットである。この手首１８の先端にはハンド１９が装着される。このハンド１９は、供給される部品を掴み、所定の姿勢に変更して所定の位置に搬送し、組み立て作業等を行うことができる。
【００２１】
これらの駆動軸は、何れも図示を略したモータや空圧機器等により動作する複数のアクチュエータ３０（図２）の駆動により回動するように構成され、複数のアクチュエータ３０は、制御装置５０からケーブル８５を介して送られる制御信号に基づいて駆動するように構成されている。
尚、本実施形態では、部品の位置や姿勢を変更して組み立てる手段として六軸制御の多関節産業用ロボットを採用したが、これに限定されるものではなく、スカラー型のロボットであっても良く、また、それぞれ一方向に駆動する駆動手段を多段に組み合わせた専用機、例えば、ピックアンドプレースユニットであっても良い。
【００２２】
制御装置５０は、コンピュータ８０、ディスプレイ８２、キーボード８４およびデジタルカメラ２０を備える。コンピュータ８０は、それぞれ図示を略したＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）、シーケンサ、ロボットコントローラおよびドライブユニット等からなるハードウェア資源と、ＲＯＭやＨＤＤ等に記憶された種々のソフトウェアとが有機的に協働することにより、後述する各機能部の機能を実現している。
また、撮影手段であるデジタルカメラ２０は、ワーク１３０を撮影可能な位置に設置され、図示を略したＣＣＤ（Ｃｈａｒｇｅ  Ｃｏｕｐｌｅｄ  Ｄｅｖｉｃｅ）のような撮像素子によりワーク１３０に適した撮影条件で撮影し、撮影した画像信号はケーブル８５を介してコンピュータ８０に送るように構成されている。尚、本実施形態では、デジタルカメラ２０はロボット１０と別々に設置されているが、ロボット１０の手首１８に設置された様態であっても良い。また、デジタルカメラ２０の視点は、制御装置５０からの指示に応じて、自在に変更できるように構成されても良い。
【００２３】
図２は、ワーク姿勢変更装置５の機能構成を示す図である。制御装置５０は、テンプレートマッチング部１００、ロボット制御部１２６およびドライバ１２４を備える。また、テンプレートマッチング部１００は、テンプレート取得部１１０、マッチング部１０５および姿勢補正指示部１０８を備える。
テンプレート取得部１１０は、ワーク１３０のＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ）データに基づいて、このワーク１３０を２次元的に射影した場合に、取り得る可能性が高いテンプレートを取得する。このテンプレート取得部１１０は、ＣＡＤデータ取得部１１２、形状抽出部１１４、射影部１１６、テンプレート生成部１１８、安定度算出部１２０およびテンプレート記憶部１２２を備える。
ＣＡＤデータ取得部１１２は、ＣＡＤデータベース１２８からワーク１３０の設計データ（ＣＡＤデータ）を取得する取得手段である。尚、ＣＡＤデータベース１２８は、制御装置５０のコンピュータ８０に保持されても良く、また、外部のサーバに保持され、通信を介して取得されても良い。ＣＡＤデータ取得部１１２により取得されたＣＡＤデータは、形状抽出部１１４に送られる。
【００２４】
形状抽出部１１４は、ＣＡＤデータ取得部１１２から送られるＣＡＤデータを解析し、ワーク１３０に関する３次元形状のＣＡＤモデル１５０（図３）を抽出する抽出手段である。本実施形態では、ＣＡＤデータは、ＩＧＥＳ（Ｉｎｉｔｉａｌ  Ｇｒａｐｈｉｃｓ  Ｅｘｃｈａｎｇｅ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）やＶＲＭＬ（Ｖｉｒｔｕａｌ  Ｒｅａｌｉｔｙ  Ｍｏｄｅｌｉｎｇ  Ｌａｎｇｕａｇｅ）等でワーク１３０が記述されているデータを想定する。また、ＣＡＤデータの解析に限定されず、ＣＡＤデータを操作するアプリケーションを介して３次元形状を抽出しても良い。形状抽出部１１４で抽出されたＣＡＤモデル１５０に関する情報は、安定度算出部１２０および射影部１１６に送られる。
安定度算出部１２０は、接触点算出部１４０と安定性判定部１４５を備え、算出手段としてワーク１３０が載置された姿勢毎の安定度を算出する。この安定度算出部１２０の機能の詳細については、図３を参照して説明する。
【００２５】
接触点算出部１４０は、ＣＡＤモデル１５０を用いて、ワーク１３０が取り得る全ての姿勢を想定し、床面と接触する場合の接触点を算出する接触点算出手段である。具体的には、形状抽出部１１４が抽出したＣＡＤモデル１５０を３次元の種々な方向に回転させる。この際、回転するＣＡＤモデル１５０を平面である床面に並進させて近づけ、接触点を算出する。ここで、ワーク１３０の表面形状が平面のみで構成されている場合や、ワーク１３０のＣＡＤモデル１５０がＶＲＭＬで記述され、三角ポリゴンによる近似で表現されている場合は、図３（ｃ）に示すように、ＣＡＤモデル１５０の各頂点と平面との距離（ｈ1，ｈ2）を計算すれば良いため、接触点の算出を簡便に行うことができる。
安定性判定部１４５は、図３（ｂ）や（ｃ）に示すように、それぞれ算出した接触点を支点として、ワーク１３０のＣＡＤモデル１５０を仮想的に微小な角度だけずらして微小変化を与え、元の状態に復元するか、否かを接触点毎に判定する安定性判定手段である。詳細には、支点を通る軸（図示は略す。）を設定し、この軸を中心として重力によるモーメントを計算し、元の位置に戻るか、否かを判定する。また、ＣＡＤモデル１５０に微小な変化を与えた場合のモーメントの大きさの変化を取得し、この変化の安定度に基づいて判定しても良い。安定度算出部１２０は、支点毎、即ち、ワーク１３０が載置される姿勢毎の安定度を保持する。ワーク１３０の姿勢毎の安定度に関する情報は、テンプレート生成部１１８から必要に応じて参照される。
【００２６】
射影部１１６は、予め取得されるデジタルカメラ２０の内部パラメータや、撮影方向等を示す外部パラメータに基づいて、撮影画像を射影する射影手段である。即ち、外部パラメータに基づき、ＣＡＤモデル１５０から算出できるワーク１３０の種々な姿勢の３次元形状を、画像を拡大または縮小または回転する公知の変換方法であるアフィン変換等により、デジタルカメラ２０のカメラ座標系に投射する。また、内部パラメータに基づき、デジタルカメラ２０の画像平面に射影する。また、ワーク１３０の姿勢が決定した場合、デジタルカメラ２０の画像平面に射影する。ここで射影した射影像は、テンプレート生成部１１８に送られる。
テンプレート生成部１１８は、射影部１１６から送られる射影像からテンプレートを生成し、生成したテンプレートの情報をテンプレート記憶部１２２に記憶する生成手段である。この際、安定性判定部１４５で算出した安定度に関する情報を参照し、安定度が設定された基準よりも高いと判定された姿勢のテンプレートは、読み出される順位が上位になるように、記憶手段であるテンプレート記憶部１２２に安定度と共に記憶される。他方で、安定度が設定された基準よりも低いと判定された場合、その姿勢のテンプレートは生成されなくても良い。また、安定度が高い姿勢のテンプレートは、より微小な姿勢の変化やサイズに合わせて細分化したテンプレートを更に生成しても良い。
【００２７】
マッチング部１０５は、デジタルカメラ２０が撮影したワーク１３０の撮影画像と、テンプレート記憶部１２２に記憶されている画像平面に射影されたテンプレートとのマッチングを行うマッチング手段である。この場合、撮影画像を平行に投射したテンプレートとマッチングしても良い。マッチング手法は、限定されず、撮影画像からエッジ画像を生成し、形状を合わせた後、予め設定した閾値を越えて合致すれば、姿勢を検出したと判定しても良い。また、テンプレートは、画像平面に射影したものが好ましいが、撮影したワーク１３０の世界座標系での姿勢が求めることができる場合は、撮影画像を世界座標系に変換してマッチングしても良い。尚、マッチング部１０５が姿勢を検出したと判定した場合、検出した姿勢に関する情報は、姿勢補正指示部１０８に送られる。
【００２８】
姿勢補正指示部１０８は、検出した姿勢に関する情報に基づき、ワーク１３０を所定の姿勢に変更すべく、ロボット１０の駆動をロボット制御部１２６に指示する。
ロボット制御部１２６とドライバ１２４は、アーム１７等の稼動部の動作を制御する制御手段である。ロボット制御部１２６は、ワーク１３０の姿勢の変更指示に基づき、ロボット１０を移動させるための複数のアクチュエータ３０の駆動量を算出し、算出した駆動量に関する駆動情報をドライバ１２４に送る。ドライバ１２４は、ロボット制御部１２６から送られる駆動情報に基づいて、それぞれのアクチュエータ３０毎に駆動信号を生成し、それぞれのアクチュエータ３０に送る。この結果、アーム１７が所定の位置まで移動し、ハンド１９がワーク１３０を把持してワーク１３０を回転させたり、反転させたりして、ワーク１３０の姿勢を変更する。
【００２９】
図４は、ワーク姿勢変更装置５によりロボット１０がワーク１３０を把持して姿勢を変更する処理の流れを示すフローチャートである。この処理が実行されると、最初に、制御装置５０は、取得したワーク１３０のＣＡＤデータを解析して、ワーク１３０の３次元形状のＣＡＤモデル１５０を抽出する（ステップＳ２００）。
次に、制御装置５０は、ＣＡＤモデル１５０の姿勢を仮想的に変化させる（ステップＳ２０２）。次に、制御装置５０は、変化させた姿勢毎の安定度を算出する（ステップＳ２０４）。
次に、制御装置５０は、ＣＡＤモデル１５０を射影して、テンプレートを生成する（ステップＳ２０６）。続いて、制御装置５０は、生成したテンプレートを姿勢の安定度に応じて記憶する（ステップＳ２０８）。
次に、制御装置５０は、安定度が高いテンプレートから、順次、撮影画像とマッチングする（ステップＳ２１０）。次に、制御装置５０は、マッチングしたテンプレートに基づき、ワーク１３０の姿勢を変更し、一連の処理を終了する（ステップＳ２１２）。
上述した処理により、供給されるワーク１３０の取り得る姿勢の中から、それぞれの安定度を求め、安定する姿勢のテンプレートを優先して作成すると共に、安定する姿勢のテンプレートから優先してワーク１３０の撮影画像とのパターンマッチングを行うため、テンプレートを保持するリソースを軽減できることに加え、テンプレートマッチングの高速化を図れる。また、供給されたワーク１３０の姿勢を迅速に変更できる。
【符号の説明】
【００３０】
５…ワーク姿勢変更装置、１０…ロボット、１１…第一軸、１２…第二軸、１３…第三軸、１４…第四軸、１５…第五軸、１６…第六軸、１７，１７Ａ，１７Ｂ…アーム、１８…手首、１９…ハンド、２０…デジタルカメラ、２５…ロボットベース、３０…アクチュエータ、５０…制御装置、８０…コンピュータ、８２…ディスプレイ、８４…キーボード、８５…ケーブル、１００…テンプレートマッチング部、１０５…マッチング部、１０８…姿勢補正指示部、１１０…テンプレート取得部、１１２…ＣＡＤデータ取得部、１１４…形状抽出部、１１６…射影部、１１８…テンプレート生成部、１２０…安定度算出部、１２２…テンプレート記憶部、１２４…ドライバ、１２６…ロボット制御部、１２８…ＣＡＤデータベース、１３０…ワーク、１４０…接触点算出部、１４５…安定性判定部、１５０…ＣＡＤモデル。
【図１】
2010186219.tif 000003
【図２】
2010186219.tif 000004
【図３】
2010186219.tif 000005
【図４】
2010186219.tif 000006