(57)【特許請求の範囲】
【請求項１】
少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像の中から、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像に対して、当該少なくとも１つの部品の位置に基づいて、１つのテンプレート画像を選択し、
前記少なくとも２つの部品のうちの組み込まれる前の部品が撮影された画像と前記選択されたテンプレート画像とを比較し、前記部品の画像と前記テンプレート画像に基づいてロボットを制御する、ロボット制御装置。
【請求項２】
前記少なくとも１つの部品の位置に基づいて、最も類似する１つのテンプレート画像を選択する、
請求項１に記載のロボット制御装置。
【請求項３】
前記部品は、ギアである、
請求項１または請求項２のいずれか１項に記載のロボット制御装置。
【請求項４】
少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像のそれぞれと、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像とを比較し、類似度が所定の高さになったときに動作するロボット。
【請求項５】
請求項１から請求項３のいずれか１項に記載のロボット制御装置と、
請求項４に記載のロボットと、
を有するロボットシステム。
【請求項６】
少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像の中から、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像に対して、当該少なくとも１つの部品の位置に基づいて、１つのテンプレート画像を選択し、
前記少なくとも２つの部品のうちの組み込まれる前の部品が撮影された画像と前記選択されたテンプレート画像とを比較し、前記部品の画像と前記テンプレート画像に基づいてロボットを制御する、ロボット制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置、ロボット、ロボットシステムおよびロボット制御方法に関する。
【背景技術】
【０００２】
特許文献１には、第１ギアを有する装置本体と、当該装置本体を収容し第１ギアに噛合する第２ギアを有するケースと、を備えるギア装置をロボットで組み立てるギア装置組み立て方法であって、基部と、当該基部上に設けられ前記ロボットのハンドに接続される接続部と、前記基部上に設けられて前記ロボットから供給される動力によりピンを揺動させる揺動機構と、を備える位相合わせ治具を用いて、前記ロボットのハンドを前記位相合わせ治具の接続部に接続しておき、前記ロボットで前記ケースを把持するとともに、前記ロボットで前記位相合わせ治具を前記ケース上に配置して、前記位相合わせ治具のピンを前記ケースの第２ギアに係合させ、前記ロボットから動力を供給して前記位相合わせ治具を駆動して前記第２ギアを揺動させながら、前記ケースを前記装置本体に取り付けるギア装置組み立て方法が開示されている（特許文献１参照。）。
【０００３】
特許文献２には、所定の作業を行うロボットアームと、前記ロボットアームの手先の近傍に固定された状態で対象物を撮像する撮像手段と、前記撮像手段で撮像された対象物の画像に基づいて、前記対象物の特徴部分の座標を画像特徴量として抽出する特徴量抽出手段と、前記ロボットアームの手先が前記対象物に対して相対的な目標位置にあるときに、前記特徴量抽出手段によって抽出された画像特徴量を記憶する特徴量記憶手段と、前記特徴量記憶手段に記憶されている画像特徴量と、前記手先が現在位置にあるときに前記特徴量抽出手段で抽出された画像特徴量とに基づいて、複数の軸方向の並進速度と各軸回りの回転速度を算出するにあたり、少なくとも所定の軸方向の並進速度からなる速度成分と、少なくともその他の軸方向の並進速度からなる速度成分に分け、各軸回りの回転速度をそれぞれの速度成分に振り分けて、各速度成分を独立に算出する速度算出手段と、前記速度算出手段で算出された並進速度および／または回転速度に基づいて、前記ロボットアームの手先を前記対象物に対して相対的な目標位置に移動させる制御を行うアーム制御手段と、を備えたロボット装置が開示されている（特許文献２参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１６８４０５号公報
【特許文献２】特開２００２−１２７０５５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来では、ロボットに関する教示や制御の点で、さらなる効率化が望まれていた。
【０００６】
本発明は、前記の点に鑑みてなされたものであり、ロボットに関する制御を効率的に行うことができるロボット制御装置、ロボット、ロボットシステムおよびロボット制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一構成例として、少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像の中から、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像に対して、当該少なくとも１つの部品の位置に基づいて、１つのテンプレート画像を選択し、前記少なくとも２つの部品のうちの組み込まれる前の部品が撮影された画像と前記選択されたテンプレート画像とを比較し、前記部品の画像と前記テンプレート画像に基づいてロボットを制御する、ロボット制御装置である。
一構成例として、少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像のそれぞれと、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像とを比較し、類似度が所定の高さになったときに動作するロボットである。
一構成例として、ロボット制御装置と、ロボットと、を有するロボットシステムである。
一構成例として、少なくとも２つの部品の組み合わせの位置がそれぞれ異なる位置で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像の中から、前記少なくとも２つの部品のうちの少なくとも１つの部品が撮影された画像に対して、当該少なくとも１つの部品の位置に基づいて、１つのテンプレート画像を選択し、前記少なくとも２つの部品のうちの組み込まれる前の部品が撮影された画像と前記選択されたテンプレート画像とを比較し、前記部品の画像と前記テンプレート画像に基づいてロボットを制御する、ロボット制御方法である。
本発明は、上記の課題を解決するためになされたものであり、画像を撮影するカメラと、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、前記カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する教示画像生成部と、を備えることを特徴とする教示画像生成装置である。
【０００８】
この構成により、教示画像生成部は、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。
【０００９】
また、本発明は、前記教示画像生成部は、前記テンプレート画像の候補となる複数の画像を取得し、これら複数の画像の中で類似度があらかじめ定められた値よりも高い画像の組み合わせについてはいずれかの画像のみを残すことで、残った画像をテンプレート画像とする教示画像選択部を備える、ことを特徴とする教示画像生成装置である。
【００１０】
この構成により、教示画像生成部では、教示画像選択部が、テンプレート画像の候補となる複数の画像を取得し、これら複数の画像の中で類似度があらかじめ定められた値よりも高い画像の組み合わせについてはいずれかの画像のみを残すことで、残った画像をテンプレート画像とする。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。例えば、教示画像生成装置は、ロボットによる作業に必要な精度を確保しつつ、テンプレート画像の数を少なくすることができる。
【００１１】
また、本発明は、前記部品は、ギアである、ことを特徴とする教示画像生成装置である。
【００１２】
この構成により、教示画像生成部は、互いに組み合わせられた少なくとも２つのギアについて、当該ギアの組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該ギアの組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。
【００１３】
また、本発明は、カメラが、画像を撮影するステップと、教示画像生成部が、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、前記カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成するステップと、を有することを特徴とする教示画像生成装置における教示画像生成方法である。
【００１４】
この方法により、教示画像生成部は、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。
【００１５】
また、本発明は、教示画像生成部が、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する手順を、コンピューターに実行させるための教示画像生成装置における教示画像生成プログラムである。
【００１６】
このプログラムにより、教示画像生成部は、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。
【００１７】
本発明は、上記の課題を解決するためになされたものであり、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置がそれぞれ異なる状態で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像を記憶する記憶部と、画像を撮影するカメラと、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態が前記カメラにより撮影された画像に対して、前記記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択する制御画像選択部と、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と前記制御画像選択部により選択されたテンプレート画像とを比較する制御画像比較部と、前記制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、前記制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御するロボット制御部と、を備えることを特徴とするロボット制御装置である。
【００１８】
この構成により、制御画像選択部が、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態がカメラにより撮影された画像に対して、記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択し、制御画像比較部が、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と制御画像選択部により選択されたテンプレート画像とを比較し、ロボット制御部が、制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御する。これにより、ロボット制御装置は、ロボットに関する制御を効率的に行うことができる。
【００１９】
また、本発明は、前記部品は、ギアである、ことを特徴とするロボット制御装置である。
【００２０】
この構成により、制御画像選択部が、少なくとも２つのギアのうちの少なくとも１つのギアの状態がカメラにより撮影された画像に対して、記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つのギアの状態について、最も類似する１つのテンプレート画像を選択し、制御画像比較部が、前記少なくとも２つのギアのうちの未だにロボットにより組み込まれていないギアの状態が前記カメラにより撮影された画像と制御画像選択部により選択されたテンプレート画像とを比較し、ロボット制御部が、制御画像比較部による比較の結果に基づいて、前記少なくとも２つのギアのうちの未だに前記ロボットにより組み込まれていないギアの状態を、制御画像選択部により選択されたテンプレート画像に写る対応するギアの状態にするように前記ロボットを制御する。これにより、ロボット制御装置は、ロボットに関する制御を効率的に行うことができる。
【００２１】
また、本発明は、カメラが、画像を撮影するステップと、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置がそれぞれ異なる状態で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像を記憶する記憶部に記憶された前記複数のテンプレート画像の中から、制御画像選択部が、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態が前記カメラにより撮影された画像に対して、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択するステップと、制御画像比較部が、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と前記制御画像選択部により選択されたテンプレート画像とを比較するステップと、ロボット制御部が、前記制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、前記制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御するステップと、を有することを特徴とするロボット制御装置におけるロボット制御方法である。
【００２２】
この方法により、制御画像選択部が、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態がカメラにより撮影された画像に対して、記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択し、制御画像比較部が、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と制御画像選択部により選択されたテンプレート画像とを比較し、ロボット制御部が、制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御する。これにより、ロボット制御装置は、ロボットに関する制御を効率的に行うことができる。
【００２３】
また、本発明は、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置がそれぞれ異なる状態で撮影された、当該部品の組み合わせの部分を含む複数のテンプレート画像を記憶する記憶部に記憶された前記複数のテンプレート画像の中から、制御画像選択部が、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態が前記カメラにより撮影された画像に対して、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択する手順と、制御画像比較部が、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と前記制御画像選択部により選択されたテンプレート画像とを比較する手順と、ロボット制御部が、前記制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、前記制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御する手順と、をコンピューターに実行させるためのロボット制御装置におけるロボット制御プログラムである。
【００２４】
このプログラムにより、制御画像選択部が、前記少なくとも２つの部品のうちの少なくとも１つの部品の状態がカメラにより撮影された画像に対して、記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択し、制御画像比較部が、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と制御画像選択部により選択されたテンプレート画像とを比較し、ロボット制御部が、制御画像比較部による比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、制御画像選択部により選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御する。これにより、ロボット制御装置は、ロボットに関する制御を効率的に行うことができる。
【００２５】
以上のように、本発明によれば、教示画像生成装置は、互いに組み合わせられた少なくとも２つの部品について、当該部品の組み合わせの位置が異なる複数の状態で、カメラにより撮影される画像を取得し、当該部品の組み合わせの部分を含む画像をロボットによる作業で参照されるテンプレート画像として生成する。これにより、教示画像生成装置は、ロボットに関する教示を効率的に行うことができる。
【００２６】
以上のように、本発明によれば、ロボット制御装置は、少なくとも２つの部品のうちの少なくとも１つの部品の状態がカメラにより撮影された画像に対して、記憶部に記憶された複数のテンプレート画像の中から、当該少なくとも１つの部品の状態について、最も類似する１つのテンプレート画像を選択し、前記少なくとも２つの部品のうちの未だにロボットにより組み込まれていない部品の状態が前記カメラにより撮影された画像と前記選択されたテンプレート画像とを比較し、当該比較の結果に基づいて、前記少なくとも２つの部品のうちの未だに前記ロボットにより組み込まれていない部品の状態を、前記選択されたテンプレート画像に写る対応する部品の状態にするように前記ロボットを制御する。これにより、ロボット制御装置は、ロボットに関する制御を効率的に行うことができる。
【図面の簡単な説明】
【００２７】
【図１】本発明の一実施形態に係るロボット制御システムの構成例を示す概略ブロック図である。
【図２】本発明の一実施形態に係る教示画像生成装置の構成例および本発明の一実施形態に係るロボット制御装置の構成例を示す概略ブロック図である。
【図３】テンプレート画像の候補となる画像の一例を示す図である。
【図４】ギアの歯先の角度誤差を説明するための図である。
【図５】本発明の一実施形態に係るロボット制御装置により行われる処理の手順の一例を示すフローチャート図である。
【図６】本発明の第２実施形態に係る三連のギア装置の一例を示す図である。
【図７】本発明の第３実施形態に係るＤ部組み付け装置の一例を示す図である。
【図８】本発明の実施形態の変形例に係るロボットの外観例を示す図である。
【発明を実施するための形態】
【００２８】
［第１実施形態］
本発明の第１実施形態について図面を参照して詳細に説明する。
図１は、本発明の一実施形態に係るロボット制御システムの構成例を示す概略ブロック図である。
本実施形態に係るロボット制御システムは、ロボットの一例であるマニピュレーター１０１と、制御装置１０２と、カメラ１０３と、ケーブル１０４と、ケーブル１０５と、を備える。
また、図１には、作業の対象となるギア装置１０６を示す。
【００２９】
ここで、マニピュレーター１０１は、対象物を把持する汎用的な把持装置の一例として、グリッパー１１１を備える。
また、マニピュレーター１０１は、ケーブル１０４を介して、制御装置１０２と接続されている。
また、カメラ１０３は、ケーブル１０５を介して、制御装置１０２と接続されている。
【００３０】
なお、本実施形態では、マニピュレーター１０１と制御装置１０２とが有線のケーブル１０４を介して通信する構成を示すが、他の構成例として、有線のケーブル１０４の代わりに、無線の回線を用いることもできる。
同様に、本実施形態では、カメラ１０３と制御装置１０２とが有線のケーブル１０５を介して通信する構成を示すが、他の構成例として、有線のケーブル１０５の代わりに、無線の回線を用いることもできる。
【００３１】
また、マニピュレーター１０１と制御装置１０２とは、本実施形態のように、別体でもよく、または、一体でもよい。
また、ロボットという語については、様々な範囲のものを示す語として使用される場合がある。例えば、マニピュレーター（本実施形態では、マニピュレーター１０１）のみをロボットと言う場合、マニピュレーターと制御装置（本実施形態では、マニピュレーター１０１と制御装置１０２）を合わせたものをロボットと言う場合、あるいは、図８に示されるようなものの全体をロボットと言う場合などがある。なお、マニピュレーターと制御装置を合わせたものや、図８に示されるようなものの全体を、ロボットシステムと言う場合もある。
図８に示されるロボットの説明は、後述する。
【００３２】
本実施形態に係るギア装置１０６は、板状の本体に対して垂直または略垂直に立てられた軸１２１と、板状の本体に対して垂直または略垂直に立てられた軸１２２と、を備える。そして、ギア装置１０６は、軸１２１にギア１３１が組み付けられるとともに、軸１２２にギア１３２が組み付けられて、構成される。
なお、軸１２１および軸１２２は、例えば、ギア装置１０６の本体と一体で構成されている。
図１の例では、ギア１３１は既にギア装置１０６の本体に組み付けられており、ギア１３２は未だにギア装置１０６の本体に組み付けられてなく、当該ギア１３２はマニピュレーター１０１のグリッパー１１１により把持されているところである。
【００３３】
また、カメラ１０３は、マニピュレーター１０１のグリッパー１１１によりギア１３２を把持して、ギア装置１０６に当該ギア１３２を組み付ける作業を行う際に、当該作業で参照される画像を撮影（撮像）することが可能な位置に設置されている。具体的には、カメラ１０３は、例えば、ギア装置１０６の面およびギア１３１の面を上方からまたは斜めから撮影することができるとともに、ギア１３２の面を上方からまたは斜めから撮影することができる位置に設置される。本実施形態では、カメラ１０３は、ギア装置１０６の面に対して、垂直上方（真上）または略垂直上方（略真上）に設置されている。
また、本実施形態では、カメラ１０３は、動画像を撮影する機能および静止画像を撮影する機能を有する。
【００３４】
図２は、本発明の一実施形態に係る教示画像生成装置の構成例および本発明の一実施形態に係るロボット制御装置の構成例を示す概略ブロック図である。
図２には、マニピュレーター１０１と、制御装置１０２と、カメラ１０３と、ケーブル１０４と、ケーブル１０５と、を示してある。そして、図２には、教示画像生成装置１００１に対応する機能部分と、ロボット制御装置１００２に対応する機能部分と、を示してある。
なお、本実施形態では、教示画像生成装置１００１とロボット制御装置１００２とは一体として構成されている。
【００３５】
本実施形態に係る制御装置１０２は、制御部１０１１と、記憶部１０１２と、入力部１０１３と、出力部１０１４と、を備える。
制御部１０１１は、カメラ通信制御部１０２１と、教示画像生成部１０２２と、ロボット制御部１０２３と、制御画像選択部１０２４と、制御画像比較部１０２５と、を備える。
教示画像生成部１０２２は、教示画像選択部１０３１を備える。
【００３６】
本実施形態では、教示画像生成装置１００１は、記憶部１０１２と、カメラ１０３と、ケーブル１０５と、カメラ通信制御部１０２１と、教示画像生成部１０２２と、の機能部分から構成される。
また、本実施形態では、ロボット制御装置１００２は、記憶部１０１２と、カメラ１０３と、ケーブル１０５と、カメラ通信制御部１０２１と、ケーブル１０４と、ロボット制御部１０２３と、制御画像選択部１０２４と、制御画像比較部１０２５と、の機能部分から構成される。
【００３７】
制御装置１０２の概略を説明する。
制御部１０１１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などから構成され、制御装置１０２における各種の処理や制御を実行する。
記憶部１０１２は、各種のプログラムや情報を記憶する。
入力部１０１３は、例えば、キーボードやマウスなどから構成され、ユーザー（人）により行われる操作入力の内容を制御部１０１１に出力する。
出力部１０１４は、例えば、液晶ディスプレイなどから構成され、ユーザーに対して、各種の情報を画面に表示出力する。
【００３８】
制御部１０１１の概略を説明する。
カメラ通信制御部１０２１は、ケーブル１０５を介して、カメラ１０３と接続されている。そして、カメラ通信制御部１０２１は、ケーブル１０５を介して、カメラ１０３に対して制御のための信号を送信することや、カメラ１０３により撮影された画像の信号を当該カメラ１０３から受信することを行う。
教示画像生成部１０２２は、ロボットに関する教示の際に、カメラ１０３により撮影された画像により、ロボットによる作業時に参照されるテンプレート画像を生成する。教示画像生成部１０２２が有する一機能として、教示画像選択部１０３１は、ロボットに関する教示の際に、カメラ１０３により撮影された複数の画像の中から、テンプレート画像とする画像を選択する。
【００３９】
ロボット制御部１０２３は、ケーブル１０４を介して、マニピュレーター１０１と接続されている。そして、ロボット制御部１０２３は、ケーブル１０４を介して、マニピュレーター１０１に対して制御のための信号を送信することや、マニピュレーター１０１から応答の信号を受信することを行う。
制御画像選択部１０２４は、ロボットによる作業を行う際に、複数のテンプレート画像の中から、比較画像として使用するテンプレート画像を選択する。
制御画像比較部１０２５は、ロボットによる作業を行う際に、現在の画像と比較画像とを比較する。
【００４０】
＜教示画像生成装置の説明＞
ロボットによる作業の前にロボットに関する教示を行う教示画像生成装置１００１について説明する。
図３は、テンプレート画像の候補となる画像２０１の一例を示す図である。
この画像２０１は、軸２１２に対してギア２１４が組み付けられ、軸２１３に対してギア２１５が組み付けられたギア装置２１１を撮影した画像である。この撮影の方向は、板状のギア装置２１１の同一の面に備えられた２つの軸２１２、２１３および２つのギア２１４、２１５が写る方向である。２つのギア２１４、２１５は、互いに噛み合うように組み付けられている。
【００４１】
ここで、この画像２０１は、実際に作業の対象となるギア装置１０６（軸１２１、１２２およびギア１３１、１３２を含む）と同じ規格のギア装置２１１（軸２１２、２１３およびギア２１４、２１５を含む）を用いて撮影される。
なお、他の構成例として、実際の作業時に参照されるのに有効であれば、実際に作業の対象となるギア装置１０６とは異なる規格のギア装置を用いて、テンプレート画像の候補となる画像が撮影されてもよい。
【００４２】
また、このような画像２０１を、ギア装置２１１のギア２１４、２１５の位置（回転位置）に関して、複数の異なる位置（回転位置）で撮影する。
本実施形態では、ギア装置２１１は、それぞれの軸２１２、２１３を中心にして、それぞれのギア２１４、２１５を一定の速度で回転させる機能を有している。この一定の速度は、例えば、ユーザーによる操作などに応じて、変更することが可能であってもよい。
そして、カメラ１０３により、動画像として、画像２０１を撮影する。すなわち、撮影される動画像の各コマの画像が画像２０１に相当する。
【００４３】
ここで、ギア装置２１１におけるギア２１４、２１５を回転させる制御は、例えば、ギア装置２１１に備えられたスイッチの操作などに応じて行われてもよく、または、制御装置１０２の制御部１０１１などとギア装置２１１とを有線のケーブルまたは無線の回線を介して接続して、制御装置１０２の制御部１０１１などからギア装置２１１に送信する制御のための信号に応じて行われてもよい。
なお、ギア装置２１１におけるギア２１４、２１５を回転させる速度としては、任意の速度が用いられてもよく、一定でない速度が用いられてもよい。
【００４４】
このような画像２０１を取得するために、教示画像生成装置１００１では、カメラ１０３が、撮影の対象となるギア装置２１１の動画像を撮影し、撮影した動画像の信号を、ケーブル１０５を介して、カメラ通信制御部１０２１に送信する。
カメラ通信制御部１０２１は、カメラ１０３から受信した動画像の信号に対応した動画像の情報を、テンプレート画像の候補となる画像２０１を含む動画像の情報として、記憶部１０１２に記憶させる。これにより、本実施形態では、ギア装置２１１のギア２１４、２１５の位置（回転位置）が異なる複数の画像２０１を含む動画像の情報が記憶部１０１２に記憶される。
【００４５】
次に、教示画像選択部１０３１が、記憶部１０１２に記憶されたテンプレート画像の候補となる複数の画像２０１を含む動画像の情報の中から、テンプレート画像の候補となる複数のコマの画像２０１の情報を抽出する。そして、教示画像選択部１０３１は、抽出した複数のコマの画像２０１の情報の中から、テンプレート画像とする１つ以上の画像（本実施形態では、複数の画像）の情報を選択する。教示画像選択部１０３１は、選択した画像の情報をテンプレート画像の情報として記憶部１０１２に記憶させる。
【００４６】
教示画像選択部１０３１により、テンプレート画像の候補となる複数の画像２０１の中から、テンプレート画像とする画像を選択する方法について説明する。
図４は、ギア３０１の歯先の角度誤差を説明するための図である。ここで、ギア３０１は、図１に示されるギア１３１、１３２と同じ規格のものである。
ギア３０１は、軸３１１を中心として、回転することが可能である。
【００４７】
図４の例において、ギア３０１は、一つの角度位置にある。ギア３０１の周囲に設けられた複数の歯先は当該周囲に沿って対称であり、隣り合う歯先の間隔（回転角度の差）は一定である。図４の例では、ギア３０１の隣り合う歯先３２１、３２２の間隔は、２θの回転角度の差となっている。
【００４８】
図４に示される角度位置にあるギア３０１を写したテンプレート画像を使用する場合、このギア３０１の歯先が最もずれるのは、このギア３０１がθだけ回転したとき（ギア３０２の角度位置にあるとき）である。
すなわち、このようなテンプレート画像を使用する場合には、任意の角度位置にあるギア３０１との整合（マッチング）において、最大の誤差がθの回転角度となる。
【００４９】
これに鑑みると、図４に示されるギア３０１については、回転角度が２θより小さい回転角度（例えば、ｎを２以上の整数として、２θ／ｎ）ずつずらした角度位置のそれぞれにおける画像をテンプレート画像とすると、任意の角度位置にあるギア３０１との整合（マッチング）において、最大の誤差を小さくする（分解能を高くする）ことができる。そして、このようにずらす回転角度（例えば、前記した２θ／ｎ）が小さいほど、この最大の誤差が小さくなり、一方、テンプレート画像の数は多くなる。
【００５０】
図３を参照して、教示画像生成装置１００１によりテンプレート画像を生成する処理の例を示す。
まず、ギア２１４とギア２１５とが組み込まれた状態で、ギア２１４またはギア２１５を回転させて、その様子の動画をカメラ１０３で撮影する。
この例では、教示画像選択部１０３１は、この動画の各コマを静止画（静止画像）として切り出して、各コマの静止画（画像）の情報を記憶部１０１２に記憶させておく。この例では、これら各コマの静止画の全てをテンプレート画像候補群と総称する。
【００５１】
教示画像選択部１０３１は、テンプレート画像候補群に含まれる各画像間で類似度を計算し、計算した類似度の値が所定の閾値よりも大きい画像（類似度が高い画像）の組み合わせについては、あらかじめ定められた方法で、いずれか一方の画像を残して、他方の画像を削除する。教示画像選択部１０３１は、このようにして残った画像（例えば、複数の画像）をテンプレート画像の群（テンプレート画像群）とする。
【００５２】
なお、この例では、類似度の値が大きいほど類似度が高いとする。
また、画像の類似度を計算する方法としては、様々な方法が用いられてもよく、例えば、公知の画像処理を使用する方法を用いることができる。
【００５３】
具体例として、カメラ１０３により動画を撮影するときにおけるギア２１４、２１５の回転速度を低速にすることで、この回転速度が高速である場合と比べて、テンプレート画像候補群に含まれる有効なコマの数を増やす。また、ギア２１４、２１５の回転方向によってギア２１４、２１５の噛み合いの状態が異なり得る場合には、２つの異なる回転方向でギア２１４、２１５を回転させてカメラ１０３により動画を撮影することで、ギア２１４、２１５の１つの回転方向のみを用いる場合と比べて、テンプレート画像候補群に含まれる有効なコマの数を増やす。
【００５４】
そして、教示画像選択部１０３１は、テンプレート画像候補群に含まれる複数のコマの静止画（画像）について、類似度が高い画像の組み合わせについてはその一方を削除することで、重複が無いテンプレート画像群を生成して準備する。また、教示画像選択部１０３１は、このように削除する画像を判定するために使用される類似度に関する閾値の設定値に応じて、必要な程度で、分解能が高いテンプレート画像群を生成して準備する。
【００５５】
ここで、テンプレート画像候補群に含まれる２つの画像において、ギア２１４およびギア２１５の角度の相違が大きいほど類似度は小さくなる。
そこで、一例として、ギア２１４とギア２１５との位相（歯先の噛み合わせ）を合わせる際に許容される最大の角度誤差に応じた類似度をあらかじめ計算しておく。この類似度の値を閾値として、教示画像選択部１０３１は、２つの画像の類似度の値が当該閾値よりも大きいときには一方の画像を削除することで、必要な角度分解能を有するテンプレート画像群を生成して準備する。
【００５６】
ここで、本実施形態では、カメラ１０３により動画像を撮影してテンプレート画像の候補となる画像を取得したが、他の構成例として、カメラ１０３により静止画像を撮影してテンプレート画像の候補となる画像を取得することもできる。
具体例として、ギア２１４、２１５を一定速度で回転させることによりギア２１４、２１５の角度位置を変化させながら、カメラ１０３により、一定の時間間隔ごとに、静止画像を撮影し、撮影した静止画像をテンプレート画像の候補となる画像とする。これにより、ギア装置２１１においてギア２１４、２１５が一定の角度だけ回転した位置ごとに、図３に示される画像２０１が撮影される。
【００５７】
なお、このような構成において、ギア装置２１１におけるギア２１４、２１５を回転させる速度としては、任意の速度が用いられてもよく、一定でない速度が用いられてもよい。
また、カメラ１０３により静止画像を撮影する一定の時間間隔としては、例えば、ユーザーによる操作などに応じて、変更することが可能であってもよい。また、カメラ１０３により静止画像を撮影する時間間隔としては、任意の時間間隔が用いられてもよく、一定でない時間間隔が用いられてもよい。
【００５８】
また、本実施形態では、ギア装置２１１の動力によりギア２１４、２１５を回転させる構成を示したが、他の構成例として、ユーザーが手動でギア装置２１１におけるギア２１４、２１５を回転させる構成を用いることも可能である。
また、本実施形態では、テンプレート画像の候補となる画像を取得した後に、取得したテンプレート画像の候補となる画像の中からテンプレート画像とする画像を選択することで、テンプレート画像を生成する構成を示したが、他の構成例として、最初から、テンプレート画像とする画像を取得してもよく、具体的には、教示画像生成部１０２２は、本実施形態におけるテンプレート画像の候補となる画像を全てテンプレート画像とする。
【００５９】
以上のように、本実施形態に係る教示画像生成装置１００１は、２つのギア２１４、２１５を組み合わせたギア装置２１１における当該ギア２１４、２１５の位置（角度位置）が異なる複数の状態で、当該ギア２１４、２１５の組み合わせ（噛み合わせ）の部分を含む画像を、テンプレート画像として、生成する。
また、本実施形態に係る教示画像生成装置１００１は、まず、テンプレート画像の候補となる複数の画像を取得し、これら複数の画像の中で類似度が高いものについてはいずれかの画像のみを残すことで、テンプレート画像を生成する。
【００６０】
本実施形態に係る教示画像生成装置１００１によれば、ロボットに関する教示を効率的に行うことができる。
例えば、本実施形態に係る教示画像生成装置１００１では、２つのギア２１４、２１５を組み合わせたギア装置２１１について、異なる複数の状態にあるテンプレート画像を含むテンプレート画像群を生成することができる。このようなテンプレート画像群を用いることで、例えば、このようなテンプレート画像群から、現在におけるギア２１４（組み付けられたギア）の状態に最も適した１つのテンプレート画像を選択し、選択したテンプレート画像に基づいて、ギア２１５（これから組み付けるギア）を適切に組み付けることができる。
より具体的には、後述するように、現在におけるギア装置２１１に組み付けようとする（未だに組み付けられていない）ギア２１５の位置を、選択したテンプレート画像におけるもの（対応するギア）の位置に合わせるように、マニピュレーター１０１を制御して、当該ギア２１５をギア装置２１１に組み付ける。こうすることにより、ギア装置２１１に既に組み付けられているギア２１４に対してほかのギア２１５を組み付ける際に、これらのギア２１４、２１５同士の位相を合わせて組み付けることができる。
【００６１】
また、例えば、本実施形態に係る教示画像生成装置１００１では、ギア装置２１１の２つのギア２１４、２１５の状態（本実施形態では、角度位置）があらかじめ定められた程度で類似している画像については、重複してテンプレート画像群に含まれないようにする。このため、例えば、実際のロボットによる作業において、あらかじめ定められた程度で類似している２つ以上のテンプレート画像について類似度の計算処理が重複してしまうといったことを回避することができ、テンプレート画像群の中から１つのテンプレート画像を選択する処理の作業を短時間で完了することを可能とすることができる。また、本実施形態に係る教示画像生成装置１００１では、テンプレート画像群について、あらかじめ定められた程度の角度分解能を有することができる。
【００６２】
本実施形態に係る教示画像生成装置１００１では、コストの低減の効果が大きく、ギアの形状や材質に依存せずに広く適用することが可能であり、ギアを破損することなく作業を行うことが可能なギア装置の組み立てを行うことが可能である。また、本実施形態に係る教示画像生成装置１００１では、ギア装置の組み立てにおいて、ギア同士の位相を能動的に合わせて、その作業の時間を確定することで、高い生産性を実現することが可能である。また、本実施形態に係る教示画像生成装置１００１では、煩雑で長時間に及ぶ教示を必要としないため、装置導入の際のコストを低減することが可能である。
【００６３】
＜ロボット制御装置の説明＞
ロボットによる作業の制御を行うロボット制御装置１００２について説明する。
本実施形態では、ロボットによる作業として、図１の例において、マニピュレーター１０１のグリッパー１１１で、ギア１３２を把持して、当該ギア１３２を軸１２２に組み付けて、ギア装置１０６を組み立てる作業を行う。この場合に、ロボット制御装置１００２が、教示画像生成装置１００１により生成されたテンプレート画像を参照して、この作業の制御を行う。
【００６４】
図５は、本発明の一実施形態に係るロボット制御装置１００２により行われる処理（実際のロボットによる作業）の手順の一例を示すフローチャート図である。
初期状態として、図１に示されるように、ギア装置１０６では、軸１２２（ここでは、一方の軸１２２と言う）にはギア１３２（ここでは、一方のギア１３２と言う）が組み付けられておらず、軸１２１（ここでは、他方の軸１２１と言う）にはギア１３１（ここでは、他方のギア１３１と言う）が組み付けられている。
【００６５】
ロボット制御装置１００２では、まず、ロボット制御部１０２３が、マニピュレーター１０１を制御して、当該マニピュレーター１０１のグリッパー１１１を一方のギア１３２の初期の配置場所（図示せず）に移動させて、当該マニピュレーター１０１のグリッパー１１１により当該一方のギア１３２を把持させる（ステップＳ１）。
なお、ギア１３２の初期の配置場所としては、任意の場所が用いられてもよい。
【００６６】
また、ロボット制御装置１００２では、カメラ通信制御部１０２１が、カメラ１０３により他方のギア１３１を含むギア装置１０６の画像を撮影させ、撮影された画像をカメラ１０３から受信して記憶部１０１２に記憶させる（ステップＳ２）。
【００６７】
そして、ロボット制御装置１００２では、制御画像選択部１０２４が、記憶部１０１２に記憶された現在におけるギア装置１０６の画像と、記憶部１０１２に記憶された複数のテンプレート画像のそれぞれとを比較して、これら複数のテンプレート画像の中から、現在におけるギア装置１０６の他方のギア１３１の位置（角度位置）に最も近いもの（対応するギア）が写っている１つのテンプレート画像を選択する（ステップＳ３）。
【００６８】
ステップＳ３の処理におけるテンプレート画像の選択方法としては、例えば、現在におけるギア装置１０６の画像と、複数のテンプレート画像のそれぞれとの間で、画像の全体の領域または一部の特定の領域について、類似度を計算して、計算される類似度の値が最も高いテンプレート画像を選択する方法を用いることができる。
ここで、画像の一部の特定の領域のみについて類似度を計算する場合には、例えば、ギア２１４の歯先の部分に注目する一部の特定の領域をあらかじめ定めておいて用いることができる。
【００６９】
なお、この例では、類似度の値が大きいほど類似度が高いとする。
また、画像の類似度を計算する方法としては、様々な方法が用いられてもよく、例えば、公知の画像処理を使用する方法を用いることができる。
【００７０】
ステップＳ３の処理において選択されたテンプレート画像では、ギア２１４とギア２１５とが組み込まれた状態であり、これらのギア２１４、２１５の位相（歯先の噛み合わせ）は合っている。
そこで、ロボット制御装置１００２では、マニピュレーター１０１のグリッパー１１１により把持される一方のギア１３２の位置を、選択されたテンプレート画像に写るもの（対応するギア）の位置と同一または略同一の状態にするように、マニピュレーター１０１を制御して、一方のギア１３２を移動させる（ステップＳ４）。
【００７１】
具体的には、ステップＳ４の処理において、ロボット制御装置１００２では、カメラ通信制御部１０２１が、カメラ１０３により、一方のギア１３２と他方のギア１３１の噛み合い部分を含む画像（本実施形態では、図３に示されるように、ギア装置１０６の全体を写す画像）を撮影させ、撮影される画像をカメラ１０３から受信して記憶部１０１２に記憶させる。本実施形態では、この画像として、動画像を用いるが、他の構成例として、静止画像が用いられてもよい。
【００７２】
また、ステップＳ４の処理において、ロボット制御装置１００２では、制御画像比較部１０２５が、記憶部１０１２に記憶された現在におけるギア装置１０６の画像（本実施形態では、前記した動画像のコマの画像）と、制御画像選択部１０２４により選択されたテンプレート画像とを比較し、一方のギア１３２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異を検出する。
【００７３】
また、ステップＳ４の処理において、ロボット制御装置１００２では、ロボット制御部１０２３が、制御画像比較部１０２５により検出された差異（一方のギア１３２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を小さくするように、マニピュレーター１０１を制御して、当該マニピュレーター１０１のグリッパー１１１を動かす。
【００７４】
このようなマニピュレーター１０１に対する制御の方法としては、例えば、制御画像比較部１０２５により検出された差異を小さくする方向で、ロボット制御部１０２３が、あらかじめ定められた変化量だけ、当該マニピュレーター１０１のグリッパー１１１を動かす方法を用いることができる。
この場合、制御画像比較部１０２５により差異を検出してロボット制御部１０２３によりその差異を小さくするようにマニピュレーター１０１を制御することを繰り返して行うことで、制御画像比較部１０２５により検出される差異を最小（例えば、ゼロ）に収束させることができる。
【００７５】
ここで、本実施形態では、教示画像生成装置１００１により生成されて記憶部１０１２に記憶された複数のテンプレート画像の全体（テンプレート画像群）では、必要な角度分解能を有しているため、ステップＳ４の処理において最終的に制御される一方のギア１３２と他方のギア１３１との位相（歯先の噛み合わせ）は、許容される最大角度誤差よりも小さくなる。
【００７６】
なお、ステップＳ４の処理において、実際の組み付け前のギア１３２の状態をテンプレート画像に写るもの（対応するギア）の状態と同じにするようにマニピュレーター１０１を制御する方法の一例として、特許文献２に記載されたのと同様なビジュアルフィードバックの処理（ビジュアルサーボの処理）を用いることが可能である。
例えば、テンプレート画像に写る２つのもの（本実施形態では、２つのギア）と、リアルタイムな画像に写る対応する２つのものとを、これら２つの画像間において一致（または、略一致）させる様々な処理を用いることができる。また、このような画像処理としては、例えば、２次元（２Ｄ）の処理が用いられてもよく、あるいは、３次元（３Ｄ）の処理が用いられてもよい。
【００７７】
ロボット制御装置１００２では、ロボット制御部１０２３が、ステップＳ４の処理において、一方のギア１３２の位置とテンプレート画像に写るもの（対応するギア）の位置とを同一または略同一の状態に移動させた（つまり、制御が収束した）ことを判定すると、一方のギア１３２をギア装置１０６の方（図１の例では、下方）に移動させて一方の軸１２２に組み付けるように、マニピュレーター１０１を制御する。これにより、一方のギア１３２のギア装置１０６への組み込みが完了する（ステップＳ５）。
【００７８】
ここで、本実施形態では、ステップＳ４の処理において、ロボット制御部１０２３が、制御画像比較部１０２５により検出された差異（一方のギア１３２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を小さくするように、マニピュレーター１０１を制御する構成を示したが、他の構成が用いられてもよい。
【００７９】
具体例として、ステップＳ４の処理において、ロボット制御部１０２３が、制御画像比較部１０２５により検出された差異（一方のギア１３２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を、１回の制御で最小（例えば、ゼロ）にするように、マニピュレーター１０１のグリッパー１１１を動かす制御を行う構成を用いることができる。
この場合、例えば、あらかじめ、制御画像比較部１０２５により検出される差異と、その差異を補正する（その差異をなくす）ためにマニピュレーター１０１に対して行う制御の内容との対応を、キャリブレーションにより、取得して、その対応の情報を記憶部１０１２に記憶させておく。そして、ロボット制御部１０２３は、記憶部１０１２に記憶された当該対応の情報に基づいて、マニピュレーター１０１を制御する。
【００８０】
このような対応の一例としては、カメラ１０３により撮影される画像における座標系と、ロボット（本実施形態では、マニピュレーター１０１）を制御するときの座標系との対応を用いることができる。具体例として、制御画像比較部１０２５により検出される差異を画像のピクセルなどを単位として表した値と、マニピュレーター１０１のグリッパー１１１を移動させる移動量（例えば、ｍｍ単位など）の値との対応を用いることができる。
【００８１】
なお、概略的には、画像を使用するビジュアルフィードバックの処理の精度は画像の分解能で決まり、画像とキャリブレーションを使用する処理の精度は画像の分解能とキャリブレーションの分解能で決まる。このため、この点では、ビジュアルフィードバックの処理を採用する場合の方が、画像とキャリブレーションを使用する処理を採用する場合と比べて、精度が高くなると考えられる。
また、キャリブレーションの作業では、例えば、カメラ１０３のゆがみや、カメラ１０３とロボット（本実施形態では、マニピュレーター１０１）との相対位置などを測定して、カメラ１０３で撮影される画像の情報とロボットの座標系との変換式を取得することが行われる。このため、通常は、キャリブレーションの作業を行わない構成の方が簡易となる。
【００８２】
以上のように、本実施形態に係るロボット制御装置１００２は、複数のテンプレート画像の中から、現在におけるギア装置１０６に既に組み付けられているギア１３１の位置（角度位置）について最も類似度が高いもの（対応するギア）が写る１つのテンプレート画像を選択する。そして、本実施形態に係るロボット制御装置１００２は、現在におけるギア装置１０６に組み付けようとする（未だに組み付けられていない）ギア１３２の位置を、選択したテンプレート画像におけるもの（対応するギア）の位置に合わせるように、マニピュレーター１０１を制御して、当該ギア１３２をギア装置１０６に組み付けるように、マニピュレーター１０１を制御する。これにより、本実施形態に係るロボット制御装置１００２は、ギア装置１０６に既に組み付けられているギア１３１に対してほかのギア１３２を、これらのギア１３１、１３２同士の位相を合わせるように、組み付けることができる。
【００８３】
本実施形態に係るロボット制御装置１００２によれば、ロボットに関する制御を効率的に行うことができる。
例えば、本実施形態に係るロボット制御装置１００２では、２つのギア１３１、１３２を組み合わせたギア装置１０６について異なる複数の状態にあるテンプレート画像を含むテンプレート画像群から、現在におけるギア１３１の状態に最も適した１つのテンプレート画像を選択し、選択したテンプレート画像に基づいて、ギア１３２を適切に組み付けることができる。
【００８４】
また、例えば、本実施形態に係るロボット制御装置１００２では、ギア装置１０６の２つのギア１３１、１３２の状態（本実施形態では、角度位置）があらかじめ定められた程度で類似している画像については、重複してテンプレート画像群に含まれない。このため、本実施形態に係るロボット制御装置１００２では、ステップＳ３の処理において、例えば、あらかじめ定められた程度で類似している２つ以上のテンプレート画像について類似度の計算処理が重複してしまうといったことを回避することができ、テンプレート画像群の中から１つのテンプレート画像を選択する処理の作業を短時間で完了することを可能とすることができる。また、本実施形態に係るロボット制御装置１００２では、テンプレート画像群について、あらかじめ定められた程度の角度分解能を有することができる。
【００８５】
本実施形態に係るロボット制御装置１００２では、コストの低減の効果が大きく、ギアの形状や材質に依存せずに広く適用することが可能であり、ギアを破損することなく作業を行うことが可能なギア装置の組み立てを行うことが可能である。また、本実施形態に係るロボット制御装置１００２では、ギア同士の位相を能動的に合わせて、その作業の時間を確定することで、高い生産性を実現することが可能である。また、本実施形態に係るロボット制御装置１００２では、煩雑で長時間に及ぶ教示を必要としないため、装置導入の際のコストを低減することが可能である。
【００８６】
＜効果の具体例＞
効果の具体例を示す。
例えば、プリンターなどの電子機器あるいは自動車などの輸送機器に含まれるギアボックスのように複数のギアを含むギア装置を組み立てる際には、ギア同士の位相を合わせる作業が必要となる。特許文献１には、このような作業をマニピュレーターに取り付けられたギアを遥動する治具を用いて行うギア装置の組み立て方法が開示されており、組み立てに要するコストの低減を実現している（特許文献１参照。）。しかしながら、特許文献１に記載された方法では、ギアを遥動する治具のコストが新たに発生してしまい、コストの低減効果は小さかった。また、特許文献１に記載された方法では、ギアを遥動して、受動的にギア同士の位相が合うことを利用しているが、これではギアの形状や材質によっては位相が合わない場合があるため、使用範囲が限定されていた。また、特許文献１に記載された方法では、ギアと治具とを接触させて遥動するため、材質によってはギアを破損してしまう恐れがあった。さらには、特許文献１に記載された方法では、受動的にギア同士の位相が合うまでに要する時間は不確定であり、生産性を低下させる要因となっていた。
これに対して、本実施形態に係る教示画像生成装置１００１や本実施形態に係るロボット制御装置１００２によれば、ロボットに関する教示やロボットに関する制御を効率的に行うことができる。
【００８７】
また、画像を用いて上記のような作業を行う場合、一例として、画像に設定された座標軸で表現されるギアの角度を、ギアを回転させるためにマニピュレーターを動作させるに当たってマニピュレーターに設定された座標軸における表現へ変換する必要があり、この変換式をあらかじめ導出しておく必要がある。さらに、例えば、歯数が多いギアやバックラッシュが小さいギアの位相を合わせるためには、ギアの角度を高精度に制御しなければならないため、このような変換式を厳密に求める必要がある。しかしながら、通常、このような変換式は、測定結果を再現するように試行錯誤的に求めるものであるため、煩雑で長時間に及ぶ作業となる可能性があり、装置導入の際のコストを上げる要因となり得る。
これに対して、本実施形態に係る教示画像生成装置１００１や本実施形態に係るロボット制御装置１００２において、ビジュアルフィードバックの処理を採用すると、さらに、ロボットに関する教示やロボットに関する制御を効率的に行うことができる。
【００８８】
なお、特許文献２に開示されている従来技術を用いて、上記のような煩雑な作業を不要とすることも発想されるが、ギアの位相が合っている状態は一意に決まらないため、テンプレート画像を準備することができない（特許文献２参照。）。したがって、特許文献２に開示されている従来技術を、ギアの位相を合わせる作業に適用することは容易にはできなかった。
【００８９】
［第２実施形態］
本発明の第２実施形態について図面を参照して詳細に説明する。
第１実施形態では、２つのギア１３１、１３２を有するギア装置１０６の組み立て作業を行う場合について説明した。これに対して、本実施形態では、３つのギアを有するギア装置の組み立て作業を行う場合について説明する。
本実施形態では、概略的には、図１および図２に示されるロボット制御システムと同様なロボット制御システムにより教示および作業を行う。このため、本実施形態では、図１および図２に示される符号と同じ符号を用いて説明する。
【００９０】
図６は、本発明の第２実施形態に係る三連のギア装置４０１の一例を示す図である。
本実施形態に係るギア装置４０１は、板状の本体に対して垂直または略垂直に立てられた軸４１１と、板状の本体に対して垂直または略垂直に立てられた軸４１２と、板状の本体に対して垂直または略垂直に立てられた軸４１３と、を備える。そして、ギア装置４０１は、軸４１１にギア４２１が組み付けられ、軸４１３にギア４２３が組み付けられ、軸４１２にギア４２２が組み付けられて、構成される。
なお、軸４１１、軸４１２および軸４１３は、例えば、ギア装置４０１の本体と一体で構成されている。
【００９１】
図６の例では、ギア４２１およびギア４２３は既にギア装置４０１の本体に組み付けられており、ギア４２２は未だにギア装置４０１の本体に組み付けられていない。
ここで、本実施形態では、図１の例において、ギア装置１０６の代わりに、三連のギア装置４０１が用いられている。
【００９２】
＜教示画像生成装置の説明＞
ロボットによる作業の前にロボットに関する教示を行う教示画像生成装置１００１について説明する。
教示画像生成装置１００１では、概略的には、次のような動作を行う。なお、教示画像生成装置１００１において行われる動作の詳細については、例えば、第１実施形態の場合と同様である。
【００９３】
ギア装置４０１に３つのギア４２１、４２２、４２３が組み込まれた状態で、ギア装置４０１のギア４２１、４２２、４２３が回転させられる。
教示画像生成装置１００１では、カメラ１０３が、撮影の対象となるギア装置４０１の動画像を撮影し、撮影した動画像の信号を、ケーブル１０５を介して、カメラ通信制御部１０２１に送信する。
教示画像生成装置１００１では、カメラ通信制御部１０２１が、カメラ１０３から受信した動画像の信号に対応した動画像の情報を、テンプレート画像の候補となる画像を含む動画像の情報として、記憶部１０１２に記憶させる。これにより、本実施形態では、ギア装置４０１のギア４２１、４２２、４２３の位置（回転位置）が異なる複数の画像を含む動画像の情報が記憶部１０１２に記憶される。
【００９４】
次に、教示画像生成装置１００１では、教示画像選択部１０３１が、記憶部１０１２に記憶されたテンプレート画像の候補となる複数の画像を含む動画像の情報の中から、テンプレート画像の候補となる複数のコマの画像の情報を抽出する。そして、教示画像生成装置１００１では、教示画像選択部１０３１が、抽出した複数のコマの画像の情報の中から、テンプレート画像とする１つ以上の画像（本実施形態では、複数の画像）の情報を選択する。教示画像生成装置１００１では、教示画像選択部１０３１が、選択した画像の情報をテンプレート画像の情報として記憶部１０１２に記憶させる。
【００９５】
＜ロボット制御装置の説明＞
ロボットによる作業の制御を行うロボット制御装置１００２について説明する。
初期状態として、図６に示されるように、ギア装置４０１では、第１の軸４１１（ここでは、左側の軸４１１と言う）には第１のギア４２１（ここでは、左側のギア４２１と言う）が組み付けられており、第２の軸４１２（ここでは、中央の軸４１２と言う）には第２のギア４２２（ここでは、中央のギア４２２と言う）が組み付けられておらず、第３の軸４１３（ここでは、右側の軸４１３と言う）には第３のギア４２３（ここでは、右側のギア４２３と言う）が組み付けられている。
【００９６】
ロボット制御装置１００２では、カメラ通信制御部１０２１が、カメラ１０３により左側のギア４２１を含むギア装置４０１の画像を撮影させ、撮影された画像をカメラ１０３から受信して記憶部１０１２に記憶させる。
【００９７】
そして、ロボット制御装置１００２では、制御画像選択部１０２４が、記憶部１０１２に記憶された現在におけるギア装置４０１の画像と、記憶部１０１２に記憶された複数のテンプレート画像のそれぞれとを比較して、これら複数のテンプレート画像の中から、現在におけるギア装置４０１の左側のギア４２１の位置（角度位置）に最も近いもの（対応するギア）が写っている１つのテンプレート画像を選択する。
【００９８】
このようにして選択されたテンプレート画像では、３つのギア４２１、４２２、４２３が組み込まれた状態であり、これらのギア４２１、４２２、４２３の位相（歯先の噛み合わせ）は合っている。
【００９９】
ロボット制御装置１００２では、ロボット制御部１０２３が、マニピュレーター１０１を制御して、当該マニピュレーター１０１のグリッパー１１１を右側のギア４２３のところに移動させて、当該マニピュレーター１０１のグリッパー１１１により当該右側のギア４２３を把持させる。
そして、ロボット制御装置１００２では、マニピュレーター１０１のグリッパー１１１により把持される右側のギア４２３の位置を、選択されたテンプレート画像に写るもの（対応するギア）の位置と同一または略同一の状態にするように、マニピュレーター１０１を制御して、右側のギア４２３を回転させる。
【０１００】
この場合、制御画像比較部１０２５により差異（右側のギア４２３の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を検出してロボット制御部１０２３によりその差異を小さくするようにマニピュレーター１０１を制御することを繰り返して行うことで、制御画像比較部１０２５により検出される差異を最小（例えば、ゼロ）に収束させることができる。
【０１０１】
これにより、ギア装置４０１における左側のギア４２１と右側のギア４２３の位置（角度位置）が、選択されたテンプレート画像に写るもの（それぞれに対応するギア）の位置と同一または略同一の状態になる。
【０１０２】
次に、ロボット制御装置１００２では、ロボット制御部１０２３が、マニピュレーター１０１を制御して、当該マニピュレーター１０１のグリッパー１１１を中央のギア４２２の初期の配置場所（図示せず）に移動させて、当該マニピュレーター１０１のグリッパー１１１により当該中央のギア４２２を把持させる。
なお、ギア４２２の初期の配置場所としては、任意の場所が用いられてもよい。
【０１０３】
そして、ロボット制御装置１００２では、マニピュレーター１０１のグリッパー１１１により把持される中央のギア４２２の位置を、選択されたテンプレート画像に写るもの（対応するギア）の位置と同一または略同一の状態にするように、マニピュレーター１０１を制御して、中央のギア４２２を移動させる。
【０１０４】
この場合、制御画像比較部１０２５により差異（中央のギア４２２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を検出してロボット制御部１０２３によりその差異を小さくするようにマニピュレーター１０１を制御することを繰り返して行うことで、制御画像比較部１０２５により検出される差異を最小（例えば、ゼロ）に収束させることができる。
【０１０５】
ロボット制御装置１００２では、ロボット制御部１０２３が、中央のギア４２２の位置とテンプレート画像に写るもの（対応するギア）の位置とを同一または略同一の状態に移動させたことを判定すると、中央のギア４２２をギア装置４０１の方（図６の例では、下方）に移動させて中央の軸４１２に組み付けるように、マニピュレーター１０１を制御する。これにより、中央のギア４２２のギア装置４０１への組み込みが完了する。
【０１０６】
ここで、本実施形態では、マニピュレーター１０１により右側のギア４２３を回転させる処理や、マニピュレーター１０１により中央のギア４２２を移動させる処理として、画像を使用するビジュアルフィードバックの処理を用いるが、第１実施形態の場合と同様に、他の構成例として、画像とキャリブレーションを使用する処理を用いることもできる。
【０１０７】
以上のように、本実施形態に係る教示画像生成装置１００１およびロボット制御装置１００２では、三連のギア装置４０１において、既に組み込まれている２つのギア４２１、４２３の双方に対して、位相を合わせて、もう１つのギア４２２を組み込む作業について、ロボットに関する教示およびロボットに関する制御を効率的に行うことができる。
【０１０８】
［第３実施形態］
本発明の第３実施形態について図面を参照して詳細に説明する。
第１実施形態では、２つのギア１３１、１３２を有するギア装置１０６の組み立て作業を行う場合について説明した。これに対して、本実施形態では、「Ｄ」の形状を有する凹部および凸部を組み立てる作業を行う場合について説明する。
本実施形態では、概略的には、図１および図２に示されるロボット制御システムと同様なロボット制御システムにより教示および作業を行う。このため、本実施形態では、図１および図２に示される符号と同じ符号を用いて説明する。
【０１０９】
図７は、本発明の第３実施形態に係るＤ部組み付け装置５０１の一例を示す図である。なお、Ｄ部組み付け装置５０１としては、「Ｄ」の形状を有する凹部と凸部とを組み付ける作業を行う様々な装置が用いられてもよい。
本実施形態に係るＤ部組み付け装置５０１は、板状の本体に対して垂直または略垂直に設けられた「Ｄ」状の穴から構成される凹部５１１を備える。そして、Ｄ部組み付け装置５０１は、「Ｄ」状の凸部５１２を有するＤカット部材５０２が本体の凹部５１１に組み付けられて、構成される。
ここで、「Ｄ」状の凹部５１１と「Ｄ」状の凸部５１２とは、凸部５１２を凹部５１１に挿入することで、ちょうど互いに嵌り合う形状を有する。
本実施形態では、Ｄカット部材５０２は、先端にＤカットが施された軸である。
【０１１０】
図７の例では、Ｄ部組み付け装置５０１の本体に「Ｄ」状の凹部５１１が設けられており、Ｄカット部材５０２は未だにＤ部組み付け装置５０１の本体に組み付けられていない。
ここで、本実施形態では、図１の例において、ギア装置１０６の代わりに、Ｄ部組み付け装置５０１が用いられている。
【０１１１】
＜教示画像生成装置の説明＞
ロボットによる作業の前にロボットに関する教示を行う教示画像生成装置１００１について説明する。
教示画像生成装置１００１では、概略的には、次のような動作を行う。なお、教示画像生成装置１００１において行われる動作の詳細については、例えば、第１実施形態の場合と同様である。
【０１１２】
Ｄ部組み付け装置５０１の本体の凹部５１１にＤカット部材５０２の凸部５１２が組み込まれた状態で、例えば、本体の面において凹部５１１の中心位置を中心として、これらの全体が回転させられる。
教示画像生成装置１００１では、カメラ１０３が、撮影の対象となるＤ部組み付け装置５０１の動画像を撮影し、撮影した動画像の信号を、ケーブル１０５を介して、カメラ通信制御部１０２１に送信する。
教示画像生成装置１００１では、カメラ通信制御部１０２１が、カメラ１０３から受信した動画像の信号に対応した動画像の情報を、テンプレート画像の候補となる画像を含む動画像の情報として、記憶部１０１２に記憶させる。これにより、本実施形態では、Ｄ部組み付け装置５０１の本体の凹部５１１（および凸部５１２）の位置（回転位置）が異なる複数の画像を含む動画像の情報が記憶部１０１２に記憶される。
【０１１３】
次に、教示画像生成装置１００１では、教示画像選択部１０３１が、記憶部１０１２に記憶されたテンプレート画像の候補となる複数の画像を含む動画像の情報の中から、テンプレート画像の候補となる複数のコマの画像の情報を抽出する。そして、教示画像生成装置１００１では、教示画像選択部１０３１が、抽出した複数のコマの画像の情報の中から、テンプレート画像とする１つ以上の画像（本実施形態では、複数の画像）の情報を選択する。教示画像生成装置１００１では、教示画像選択部１０３１が、選択した画像の情報をテンプレート画像の情報として記憶部１０１２に記憶させる。
【０１１４】
＜ロボット制御装置の説明＞
ロボットによる作業の制御を行うロボット制御装置１００２について説明する。
初期状態として、図７に示されるように、Ｄ部組み付け装置５０１では、本体の凹部５１１にＤカット部材５０２の凸部５１２が組み付けられていない。
【０１１５】
ロボット制御装置１００２では、カメラ通信制御部１０２１が、カメラ１０３により凹部５１１を含むＤ部組み付け装置５０１の本体の画像を撮影させ、撮影された画像をカメラ１０３から受信して記憶部１０１２に記憶させる。
【０１１６】
そして、ロボット制御装置１００２では、制御画像選択部１０２４が、記憶部１０１２に記憶された現在におけるＤ部組み付け装置５０１の本体の画像と、記憶部１０１２に記憶された複数のテンプレート画像のそれぞれとを比較して、これら複数のテンプレート画像の中から、現在におけるＤ部組み付け装置５０１の凹部５１１の位置（「Ｄ」状の角度位置）に最も近いもの（対応する凹部）が写っている１つのテンプレート画像を選択する。
【０１１７】
ロボット制御装置１００２では、ロボット制御部１０２３が、マニピュレーター１０１を制御して、当該マニピュレーター１０１のグリッパー１１１をＤカット部材５０２の初期の配置場所（図示せず）に移動させて、当該マニピュレーター１０１のグリッパー１１１により当該Ｄカット部材５０２を把持させる。
なお、Ｄカット部材５０２の初期の配置場所としては、任意の場所が用いられてもよい。
【０１１８】
そして、ロボット制御装置１００２では、マニピュレーター１０１のグリッパー１１１により把持されるＤカット部材５０２の凸部５１２の位置（凸部５１２の「Ｄ」状の角度位置）を、選択されたテンプレート画像に写るもの（対応する凸部）の位置と同一または略同一の状態にするように、マニピュレーター１０１を制御して、Ｄカット部材５０２を移動させる。
【０１１９】
この場合、制御画像比較部１０２５により差異（Ｄカット部材５０２の凸部５１２の位置（角度位置）について、現在における画像とテンプレート画像との間での差異）を検出してロボット制御部１０２３によりその差異を小さくするようにマニピュレーター１０１を制御することを繰り返して行うことで、制御画像比較部１０２５により検出される差異を最小（例えば、ゼロ）に収束させることができる。
【０１２０】
ロボット制御装置１００２では、ロボット制御部１０２３が、Ｄカット部材５０２の凸部５１２の位置とテンプレート画像に写るもの（対応する凸部）の位置とを同一または略同一の状態に移動させたことを判定すると、Ｄカット部材５０２をＤ部組み付け装置５０１の本体の方（図７の例では、下方）に移動させて、当該Ｄカット部材５０２の凸部５１２を本体の凹部５１１に組み付けるように、マニピュレーター１０１を制御する。これにより、Ｄカット部材５０２のＤ部組み付け装置５０１への組み込みが完了する。
【０１２１】
ここで、本実施形態では、マニピュレーター１０１によりＤカット部材５０２を移動させる処理として、画像を使用するビジュアルフィードバックの処理を用いるが、第１実施形態の場合と同様に、他の構成例として、画像とキャリブレーションを使用する処理を用いることもできる。
【０１２２】
以上のように、本実施形態に係る教示画像生成装置１００１およびロボット制御装置１００２では、Ｄ部組み付け装置５０１において、本体の凹部５１１に対して、位相（「Ｄ」状の角度位置）を合わせて、Ｄカット部材５０２の凸部５１２を組み込む作業について、ロボットに関する教示およびロボットに関する制御を効率的に行うことができる。
【０１２３】
［以上の実施形態の変形例に係る実施形態］
図８は、本発明の実施形態の変形例に係るロボットの外観例を示す図である。
図８は、本変形例に係るロボットをその前方から見た外観例を示している。このため、図８における右側が本変形例に係るロボットの左側に相当し、図８における左側が本変形例に係るロボットの右側に相当する。
【０１２４】
本変形例に係るロボットは、ベースユニットとなる制御装置２００１と、胴体を構成する部材（胴体部材）２００２、２００３、２００４と、腕（アーム）を構成するマニピュレーター２０１１、２０１２と、車輪２０２１、２０２２と、を備える。
【０１２５】
本変形例に係るロボットは、制御装置２００１の上面に胴体部材２００２、胴体部材２００３、胴体部材２００４が順に上側に取り付けられ、最も上部の胴体部材２００４の左側に左腕を構成するマニピュレーター２０１１が取り付けられ、当該最も上部の胴体部材２００４の右側に右腕を構成するマニピュレーター２０１２が取り付けられ、制御装置２００１の底面の左側に車輪２０２１が取り付けられ、制御装置２００１の底面の右側に車輪２０２２が取り付けられて、構成されている。
【０１２６】
ここで、本変形例に係るロボットは、左腕を構成するマニピュレーター２０１１と、右腕を構成するマニピュレーター２０１２とを備えており、このように双方の腕を備えている。
各腕を構成するマニピュレーター２０１１、２０１２は、それぞれ、例えば、任意の軸を有するものであってもよい。
【０１２７】
また、本変形例に係るロボットは、左側の車輪２０２１と、右側の車輪２０２２とを備えており、このように双方の車輪を備えている。
そして、本変形例に係るロボットは、人力により車輪２０２１、２０２２を回転させて、移動させられることが可能である。
【０１２８】
本変形例に係るロボットでは、制御装置２００１の内部に、例えば、図２に示されるような制御装置１０２が備える処理部を格納して備えている。
この制御装置２００１は、例えば、図２に示される制御装置１０２と同様な機能を有しており、図２に示されるマニピュレーター１０１に対応する左腕のマニピュレーター２０１１と、図２に示されるマニピュレーター１０１に対応する右腕のマニピュレーター２０１２を制御する。
ここで、この制御装置２００１は、例えば、左腕のマニピュレーター２０１１と右腕のマニピュレーター２０１２とを同時に関連付けて制御してもよく、または、左腕のマニピュレーター２０１１と右腕のマニピュレーター２０１２とをそれぞれ別個に制御してもよい。
【０１２９】
以上のように、本変形例に係るロボットでは、例えば、図２に示される制御装置１０２とマニピュレーター１０１に対応するもの（本変形例に係るロボットでは、制御装置２００１と、２つのマニピュレーター２０１１、２０１２）が一体として構成されている。
なお、制御装置２００１に備えられるロボット制御部（例えば、図２に示されるロボット制御部１０２３に対応する処理部）と各マニピュレーター２０１１、２０１２とは、例えば、有線のケーブルまたは無線を介して、制御信号などを通信することが可能に接続される。
【０１３０】
ここで、他の構成例として、制御装置２００１に備えられる機能の一部を、図８に示されるロボットとは別体のコントローラーに備えることも可能である。
具体例として、図２に示される制御装置１０２に備えられる入力部１０１３と出力部１０１４の機能と同様な機能を、図８に示されるロボットとは別体のコントローラーに備え、制御装置２００１と当該コントローラーとに互いに無線により通信する機能を備えることで、図２に示される制御装置１０２に備えられる入力部１０１３と出力部１０１４の機能と同様な機能をリモートのコントローラーで実現することが可能である。
【０１３１】
［以上の実施形態のまとめ］  ここで、ロボットによる作業の対象となるものとしては、第１実施形態および第２実施形態に係るギア（部品）を組み付けるギア装置１０６、４０１、第３実施形態に係るＤ状の部品を組み付けるＤ部組み付け装置５０１ばかりでなく、２つ以上の部品を組み付けることが必要となる様々なものに適用されてもよい。例えば、ラックアンドピニオン、チェーン、ベルトなどに適用できる。
また、ロボットによる作業の対象となるものとしては、例えば、平面での位置合わせが必要な部品の組み付けばかりでなく、空間での位置合わせが必要な部品の組み付けに適用することも可能である。例えば、ウォームギア、傘歯車などに適用できる。
また、本実施形態に係るロボットに関する教示および本実施形態に係るロボットに関する制御は、ギア装置あるいはＤ部組み付け装置などの装置の組み立て作業ばかりでなく、例えば、部品同士の位置および姿勢を合わせることが必要となる作業を行わせる装置に適用することも可能である。
本発明は、一例として、部品形状の周期性を利用したものであり、このような特徴に鑑みた場合には、上述したギアなどに限定されるものではなく、形状に周期性があるすべての物品に対して適用可能である。
また、本実施形態では、ロボットの一例として、マニピュレーター１０１を示したが、ロボットとしては、様々なものが用いられてもよい。
具体的には、ロボットとしては、例えば、様々なスカラロボットが用いられてもよく、または、様々な垂直多関節ロボットが用いられてもよい。また、例えば、片腕ロボットや双腕ロボットばかりでなく、３本以上の腕を持つロボットが用いられてもよい。また、ロボットの移動を可能にする部分（移動部）としては、例えば、車輪を用いるロボットばかりでなく、歩行を用いるロボットなどが用いられてもよい。
【０１３２】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【０１３３】
なお、以上に説明した教示画像生成装置１００１やロボット制御装置１００２における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここで言う「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことを言う。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１３４】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことを言う。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１３５】
１０１…マニピュレーター、１０２…制御装置、１０３…カメラ、１０４、１０５…ケーブル、１０６…ギア装置、１１１…グリッパー、１２１、１２２…軸、１３１、１３２…ギア、２０１…画像、２１１…ギア装置、２１２、２１３…軸、２１４、２１５…ギア、３０１、３０２…ギア、３１１…軸、３２１、３２２…歯先、４０１…ギア装置、４１１〜４１３…軸、４２１〜４２３…ギア、５０１…Ｄ部組み付け装置、５０２…Ｄカット部材、５１１…凹部、５１２…凸部、１００１…教示画像生成装置、１００２…ロボット制御装置、１０１１…制御部、１０１２…記憶部、１０１３…入力部、１０１４…出力部、１０２１…カメラ通信制御部、１０２２…教示画像生成部、１０２３…ロボット制御部、１０２４…制御画像選択部、１０２５…制御画像比較部、１０３１…教示画像選択部、２００１…制御装置、２００２、２００３、２００４…胴体部材、２０１１、２０１２…マニピュレーター、２０２１、２０２２…車輪
【図１】
0005899958.tif 000002
【図２】
0005899958.tif 000003
【図３】
0005899958.tif 000004
【図４】
0005899958.tif 000005
【図５】
0005899958.tif 000006
【図６】
0005899958.tif 000007
【図７】
0005899958.tif 000008
【図８】
0005899958.tif 000009