(57)【特許請求の範囲】
【請求項１】
ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部と、
前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する教示情報取得部と、
前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する画像取得部と、
前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する差分算出部と、
前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うロボット制御部と、
を備えることを特徴とするロボット制御装置。
【請求項２】
前記教示情報において、前記複数の目標位置のうちの一部については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの残りについては前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる、
ことを特徴とする請求項１に記載のロボット制御装置。
【請求項３】
前記教示情報において、前記複数の目標位置のうちの最終の目標位置以外については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの最終の目標位置については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる、
ことを特徴とする請求項２に記載のロボット制御装置。
【請求項４】
前記教示情報は、前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のみの前記２個以上のパラメーターが定められる場合に、前記対象物の姿勢の制御方法を規定する情報を含み、
前記ロボット制御部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のみの前記２個以上のパラメーターが定められる場合に、前記教示情報により規定される前記対象物の姿勢の制御方法を使用して、前記対象物の姿勢の制御を行う、
ことを特徴とする請求項１から請求項３のいずれか１項に記載のロボット制御装置。
【請求項５】
前記対象物の姿勢の制御方法として、前記対象物の姿勢を不変とする制御方法、または、あらかじめ定められた補間の結果に従って前記対象物の姿勢を変化させる制御方法を用いる、
ことを特徴とする請求項４に記載のロボット制御装置。
【請求項６】
前記差分算出部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合に、前記対象物の領域の輪郭の重心位置について差分を算出する、
ことを特徴とする請求項１から請求項５のいずれか１項に記載のロボット制御装置。
【請求項７】
ロボットを制御して、前記ロボットが作業を行う対象物を、第１の目標位置を経由して第２の目標位置へ移動させるロボット制御装置であって、
前記第１の目標位置における前記対象物の第１の画像および前記第２の目標位置における前記対象物の第２の画像を記憶する記憶部と、
前記対象物を含む画像を取得する画像取得部と、
前記対象物を含む画像と前記第１の画像との差分算出を行って前記対象物の姿勢は用いずに前記対象物の位置を前記第１の画像における前記対象物の位置に近づけるように前記ロボットを制御し、前記対象物を含む画像と前記第２の画像との差分算出を行って前記対象物の位置および姿勢を前記第２の画像における前記対象物の位置および姿勢に近づけるように前記ロボットを制御するロボット制御部と、
を備えることを特徴とするロボット制御装置。
【請求項８】
教示情報取得部が、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部から、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得するステップと、
画像取得部が、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得するステップと、
差分算出部が、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出するステップと、
ロボット制御部が、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うステップと、
を有することを特徴とするロボット制御装置におけるロボット制御方法。
【請求項９】
教示情報取得部が、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部から、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する手順と、
画像取得部が、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する手順と、
差分算出部が、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する手順と、
ロボット制御部が、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う手順と、
をコンピューターに実行させるためのロボット制御装置におけるロボット制御プログラム。
【請求項１０】
ロボットと、前記ロボットを制御するロボット制御装置と、を備え、
前記ロボット制御装置は、
前記ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部と、
前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する教示情報取得部と、
前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する画像取得部と、
前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する差分算出部と、
前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うロボット制御部と、を備える、
ことを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置、ロボット制御方法、ロボット制御プログラムおよびロボットシステムに関する。
【背景技術】
【０００２】
近年、製造現場等では、スカラロボットや垂直多関節ロボット（多軸ロボット）等が製品の組み立てや検査等に用いられている。
製品の組み立てや検査等を行う際におけるロボットの制御方法として、ビジュアルフィードバック（ビジュアルサーボ）の制御方法がある。ビジュアルフィードバックは、対象物（目標物）との相対的な位置の変化を視覚情報として計測し、それをフィードバック情報として用いることによって、目標物を追跡するサーボ系の一種である。
【０００３】
ここで、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することが行われるときがある。このとき、教示画像（目標画像）と現在撮影した画像との間で差分算出を行い、対象物の位置および姿勢の差分を検出（例えば、推定的に検出）する。
このような対象物の位置（３次元）および姿勢（３次元）の差分の検出では、計６次元の最小化問題（最適化問題）を解くため、計算時間がかかるという問題がある。
【０００４】
なお、従来技術の一例として、特許文献１に記載されたマニピュレーターの物体把持作業における位置・姿勢補正方法では、物体を把持して作業を行うマニピュレーターの位置と姿勢の少なくとも一方を、センサー手段の検出する前記被把持物体の位置と姿勢の少なくとも一方のデータに基づいて補正する（特許文献１参照。）。
しかしながら、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導するときについては、十分には開示されていない。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平６−１７５７１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来では、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導するときに、計算時間がかかって非効率的な場合があるという問題があった。
【０００７】
本発明は、前記の点に鑑みてなされたものであり、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができるロボット制御装置、ロボット制御方法、ロボット制御プログラムおよびロボットシステムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明は、上記の課題を解決するためになされたものであり、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部と、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する教示情報取得部と、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する画像取得部と、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する差分算出部と、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うロボット制御部と、を備えることを特徴とするロボット制御装置である。
【０００９】
この構成により、ロボット制御装置では、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報に基づいて、差分算出部は、前記複数の目標位置のそれぞれについて、教示情報取得部により取得された教示情報に含まれる画像の情報と、画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出し、ロボット制御部は、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、それぞれの目標位置（タスク）ごとに、近づけるべきパラメーターを適度なもの（少なくとも１つの目標位置については異なるもの）に設定することができる。
【００１０】
また、本発明は、前記教示情報において、前記複数の目標位置のうちの一部については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの残りについては前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる、ことを特徴とするロボット制御装置である。
【００１１】
この構成により、ロボット制御装置では、差分算出部は、前記複数の目標位置のうちの一部については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターを使用し、前記複数の目標位置のうちの残りについては前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターを使用する。また、ロボット制御装置では、ロボット制御部は、前記複数の目標位置のうちの一部については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターに関して制御を行い、前記複数の目標位置のうちの残りについては前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターに関して制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
【００１２】
また、本発明は、前記教示情報において、前記複数の目標位置のうちの最終の目標位置以外については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの最終の目標位置については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる、ことを特徴とするロボット制御装置である。
【００１３】
この構成により、ロボット制御装置では、差分算出部は、前記複数の目標位置のうちの最終の目標位置以外については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターを使用し、前記複数の目標位置のうちの最終の目標位置については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターを使用する。また、ロボット制御装置では、ロボット制御部は、前記複数の目標位置のうちの最終の目標位置以外については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターに関して制御を行い、前記複数の目標位置のうちの最終の目標位置については前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターに関して制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
【００１４】
また、本発明は、前記教示情報は、前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のみの前記２個以上のパラメーターが定められる場合に、前記対象物の姿勢の制御方法を規定する情報を含み、前記ロボット制御部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のみの前記２個以上のパラメーターが定められる場合に、前記教示情報により規定される前記対象物の姿勢の制御方法を使用して、前記対象物の姿勢の制御を行う、ことを特徴とするロボット制御装置である。
【００１５】
この構成により、ロボット制御装置では、ロボット制御部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のみの前記２個以上のパラメーターが定められる場合に、前記教示情報により規定される前記対象物の姿勢の制御方法を使用して、前記対象物の姿勢の制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物の姿勢の制御方法を規定して使用することができる。
【００１６】
また、本発明は、前記対象物の姿勢の制御方法として、前記対象物の姿勢を不変とする制御方法、または、あらかじめ定められた補間の結果に従って前記対象物の姿勢を変化させる制御方法を用いる、ことを特徴とするロボット制御装置である。
【００１７】
この構成により、ロボット制御装置では、ロボット制御部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合に、前記教示情報により規定される前記対象物の姿勢の制御方法を使用して、前記対象物の姿勢の制御を行う。この場合に、前記対象物の姿勢の制御方法として、前記対象物の姿勢を不変とする制御方法、または、あらかじめ定められた補間の結果に従って前記対象物の姿勢を変化させる制御方法を用いる。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物の姿勢の制御方法を規定して使用することができる。
【００１８】
また、本発明は、前記差分算出部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合には、前記対象物の領域の輪郭の重心位置について差分を算出する、ことを特徴とするロボット制御装置である。
【００１９】
この構成により、ロボット制御装置では、差分算出部は、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合に、前記対象物の領域の輪郭の重心位置について差分を算出する。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記教示情報により前記対象物を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物の領域の輪郭の重心位置を、差分を算出する位置として用いることができる。
【００２０】
また、本発明は、ロボットを制御して、前記ロボットが作業を行う対象物を、第１の目標位置を経由して第２の目標位置へ移動させるロボット制御装置であって、前記第１の目標位置における前記対象物の第１の画像および前記第２の目標位置における前記対象物の第２の画像を記憶する記憶部と、前記対象物を含む画像を取得する画像取得部と、前記対象物を含む画像と前記第１の画像との差分算出を行って前記対象物の姿勢は用いずに前記対象物の位置を前記第１の画像における前記対象物の位置に近づけるように前記ロボットを制御し、前記対象物を含む画像と前記第２の画像との差分算出を行って前記対象物の位置および姿勢を前記第２の画像における前記対象物の位置および姿勢に近づけるように前記ロボットを制御するロボット制御部と、を備えることを特徴とするロボット制御装置である。
【００２１】
この構成により、ロボット制御装置では、ロボットを制御して、前記ロボットが作業を行う対象物を、第１の目標位置を経由して第２の目標位置へ移動させる場合に、ロボット制御部は、前記対象物を含む画像と第１の画像との差分算出を行って前記対象物の姿勢は用いずに前記対象物の位置を前記第１の画像における前記対象物の位置に近づけるように前記ロボットを制御し、前記対象物を含む画像と前記第２の画像との差分算出を行って前記対象物の位置および姿勢を前記第２の画像における前記対象物の位置および姿勢に近づけるように前記ロボットを制御する。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
【００２２】
また、本発明は、教示情報取得部が、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部から、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得するステップと、画像取得部が、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得するステップと、差分算出部が、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出するステップと、ロボット制御部が、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うステップと、を有することを特徴とするロボット制御装置におけるロボット制御方法である。
【００２３】
この方法により、ロボット制御装置では、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報に基づいて、差分算出部は、前記複数の目標位置のそれぞれについて、教示情報取得部により取得された教示情報に含まれる画像の情報と、画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出し、ロボット制御部は、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、それぞれの目標位置（タスク）ごとに、近づけるべきパラメーターを適度なもの（少なくとも１つの目標位置については異なるもの）に設定することができる。
【００２４】
また、本発明は、教示情報取得部が、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部から、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する手順と、画像取得部が、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する手順と、差分算出部が、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する手順と、ロボット制御部が、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う手順と、をコンピューターに実行させるためのロボット制御装置におけるロボット制御プログラムである。
【００２５】
このプログラムにより、ロボット制御装置では、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報に基づいて、差分算出部は、前記複数の目標位置のそれぞれについて、教示情報取得部により取得された教示情報に含まれる画像の情報と、画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出し、ロボット制御部は、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う。
これにより、ロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、それぞれの目標位置（タスク）ごとに、近づけるべきパラメーターを適度なもの（少なくとも１つの目標位置については異なるもの）に設定することができる。
【００２６】
また、本発明は、ロボットと、前記ロボットを制御するロボット制御装置と、を備え、前記ロボット制御装置は、前記ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部と、前記複数の目標位置のそれぞれについて、前記記憶部に記憶される教示情報を取得する教示情報取得部と、前記複数の目標位置のそれぞれについて、前記ロボットによる作業の対象物の画像を撮影する撮影部により撮影される画像を取得する画像取得部と、前記複数の目標位置のそれぞれについて、前記教示情報取得部により取得された教示情報に含まれる画像の情報と、前記画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する差分算出部と、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行うロボット制御部と、を備える、ことを特徴とするロボットシステムである。
【００２７】
この構成により、ロボットシステムのロボット制御装置では、ロボットによる作業の対象物を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物が目標位置に存在する状態における前記対象物の画像の情報を含み且つ前記対象物を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あって、少なくとも１つの目標位置について用いられるパラメーターが他の目標位置について用いられるパラメーターとは異なるように前記近づけるべきパラメーターを定める教示情報に基づいて、差分算出部は、前記複数の目標位置のそれぞれについて、教示情報取得部により取得された教示情報に含まれる画像の情報と、画像取得部により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出し、ロボット制御部は、前記複数の目標位置のそれぞれについて、前記差分算出部の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボットによる作業の対象物を目標位置に近づける制御を行う。
これにより、ロボットシステムのロボット制御装置は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、それぞれの目標位置（タスク）ごとに、近づけるべきパラメーターを適度なもの（少なくとも１つの目標位置については異なるもの）に設定することができる。
【図面の簡単な説明】
【００２８】
【図１】本発明の第１実施形態に係るロボット制御装置を含むロボットシステムの構成例および作業場の例を示す概略ブロック図である。
【図２】本発明の第２実施形態に係る双腕のロボットシステムの外観例を示す図である。
【発明を実施するための形態】
【００２９】
［第１実施形態］
本発明の第１実施形態について図面を参照して詳細に説明する。
図１は、本発明の一実施形態に係るロボット制御装置１を含むロボットシステムの構成例および作業場の例を示す概略ブロック図である。
本実施形態に係るロボットシステムは、ロボット制御装置１と、ロボット２と、有線の回線３と、を備える。
ロボット制御装置１とロボット２とは、有線の回線３を介して、互いに通信することが可能に接続される。
なお、有線の回線３の代わりに、無線の回線が用いられてもよい。
【００３０】
ロボット制御装置１は、制御部１１と、記憶部１２と、撮影部１３と、入力部１４と、出力部１５と、を備える。
制御部１１は、ロボット制御部２１と、教示情報取得部２２と、画像取得部２３と、差分算出部（画像誤差算出部）２４と、を備える。
ここで、撮影部１３は、ロボット制御装置１と一体に備えられてもよく、または、他の構成例として、ロボット制御装置１とは別体で備えられてもよい。
【００３１】
図１の例では、ロボット２により作業を行う対象となる物体（対象物）１０１の作業場に、テーブル２０１が置かれている。
テーブル２０１の上に、組み立て等の対象となる製品が置かれている。
図１の例では、この製品は、当該製品を構成する部分として、構成部１０２と、構成部１０３と、構成部１１１と、構成部１１２と、を有する。
【００３２】
次に、本実施形態に係るロボットシステムにおいて行われる処理の概要を説明する。
本実施形態では、図１に示される作業の環境において、ロボットシステムは、複数枚の教示画像（目標画像）を用いて、ビジュアルフィードバック制御により、対象物１０１を目標の位置（目標位置）に移動させる。
【００３３】
図１に示される本実施形態の例では、ロボット２により対象物１０１を把持して、当該対象物１０１を、図１に示される（１）〜（５）の経由点を通る軌道（軌跡）に沿って移動させる。
ここで、対象物１０１をこのような軌道に沿って移動させる理由は、製品の構成部１１１および構成部１１２が障害物となることから、これらの障害物を回避させる軌道に沿って、対象物１０１を最終的な目標位置に移動させるためである。つまり、最終的な目標位置だけを設定した場合には、ロボット２により対象物１０１を移動させるときに、当該対象物１０１が障害物にぶつかってしまう可能性があるためである。
なお、このような軌道は、実用上で支障がない範囲で、ずれてもよい。
【００３４】
本実施形態では、図１に示される（１）、（２）、（３）、（４）、（５）のそれぞれの位置を、対象物１０１を移動させるときの経由点として用いる。
具体的には、第１の経由点（１）は、第１番目の目標位置となる。第２の経由点（２）は、第２番目の目標位置となる。第３の経由点（３）は、第３番目の目標位置となる。第４の経由点（４）は、第４番目の目標位置となる。第５の経由点（５）は、第５番目の目標位置となる。
そして、第５番目の目標位置である第５の経由点（５）を最終的な目標位置とする。
【００３５】
ロボットシステムは、ロボット２により対象物１０１を把持して、その初期位置から第１番目の目標位置に移動させる第１のタスクと、そこから第２番目の目標位置に移動させる第２のタスクと、そこから第３番目の目標位置に移動させる第３のタスクと、そこから第４番目の目標位置に移動させる第４のタスクと、そこから第５番目の目標位置に移動させる第５のタスクを、順番に行う。
【００３６】
なお、一例として、第５番目の目標位置（最終的な目標位置）の後には、ロボットシステムは、ロボット２により対象物１０１を、製品の箱状の構成部１０２に設けられた穴から当該構成部１０２の中（箱の中）に移動させて設置する。他の一例として、第５番目の目標位置（最終的な目標位置）の後には、ロボットシステムは、ロボット２により対象物１０１を、製品の箱状の構成部１０２に設けられた穴にあるコネクターなどに挿入するように移動させる。また、他の内容の作業が用いられてもよい。
【００３７】
次に、本実施形態に係るロボットシステムにおいて行われる処理を詳しく説明する。
入力部１４は、例えば、ユーザーにより操作されるキーボードやマウスなどを用いて構成され、ユーザーにより操作された内容を受け付ける。
出力部１５は、例えば、情報を表示する液晶画面などを用いて構成され、ユーザーに対して各種の情報を表示出力する。
【００３８】
記憶部１２は、各種の情報を記憶する。
記憶部１２は、例えば、制御部１１により使用されるプログラムの情報や、各種の処理で使用される数値などの情報を記憶する。
本実施形態では、記憶部１２は、ビジュアルフィードバック制御におけるテンプレート情報（本実施形態では、教示情報）に基づく差分算出の処理で使用する教示情報を記憶する。
【００３９】
本実施形態では、それぞれの目標位置ごとに、教示情報をあらかじめ用意する。
具体的には、記憶部１２は、第１番目の目標位置について第１の教示情報を記憶し、第２番目の目標位置について第２の教示情報を記憶し、第３番目の目標位置について第３の教示情報を記憶し、第４番目の目標位置について第４の教示情報を記憶し、第５番目の目標位置について第５の教示情報を記憶する。
【００４０】
それぞれの目標位置の教示情報は、その目標位置に対象物１０１が存在する状態における当該対象物１０１の画像（目標画像）の情報と、その目標位置に対象物１０１を移動させる場合に近づけるべきパラメーター（差分算出パラメーター）を特定する情報と、姿勢の制御方法（姿勢制御方法）を規定する情報を含む。
本実施形態では、５つの目標位置があるため、計５つの教示情報があり、計５枚の目標画像がある。
【００４１】
ここで、近づける候補となるパラメーターとしては、本実施形態では、直交座標系として設定されるＸＹＺ座標系において、３次元の位置を表す座標値［Ｘ、Ｙ、Ｚ］を指定する３個のパラメーターＸ、Ｙ、Ｚと、３次元の姿勢を表す回転量［θＸ、θＹ、θＺ］を指定する３個のパラメーターθＸ、θＹ、θＺを用いる。
【００４２】
そして、本実施形態では、３次元の位置を表す座標値［Ｘ、Ｙ、Ｚ］を指定する３個のパラメーターＸ、Ｙ、Ｚを差分算出パラメーターとして用いる制御モード（位置制御モード）と、３次元の位置を表す座標値［Ｘ、Ｙ、Ｚ］を指定する３個のパラメーターＸ、Ｙ、Ｚおよび３次元の姿勢を表す回転量［θＸ、θＹ、θＺ］を指定する３個のパラメーターθＸ、θＹ、θＺを差分算出パラメーターとして用いる制御モード（位置姿勢制御モード）といった２つの制御モードをタスクごと（目標位置ごと）に使い分ける。
【００４３】
具体的には、本実施形態では、差分算出パラメーターを特定する情報として、第１番目の目標位置〜第４番目の目標位置については、位置制御モードを使用することが設定され、また、第５番目の目標位置については、位置姿勢制御モードを使用することが設定される。
本実施形態では、このような各目標位置（各タスク）において使用する制御モードは、あらかじめ設定されて記憶部１２に記憶されるが、他の構成例として、ユーザーが入力部１４を操作することなどにより可変に設定されてもよい。
【００４４】
なお、差分算出パラメーターの種類や数を変えることで制御モードを変える構成としては、他の構成が用いられてもよい。他の構成の一例として、３次元の位置を表す座標値［Ｘ、Ｙ、Ｚ］を指定する３個のパラメーターＸ、Ｙ、Ｚのうちで、Ｚ方向の制御が不要である場合には、２個のパラメーターＸ、Ｙを差分算出パラメーターとして用いる制御モード（位置制御モードの変形例）を使用することができる。
【００４５】
また、姿勢制御方法は、姿勢に関する差分算出パラメーターが用いられない場合（本実施形態では、位置制御モードの場合）に用いられる。
一方、姿勢に関する差分算出パラメーターが用いられる場合（本実施形態では、位置姿勢制御モードの場合）には、対象物を目標位置に移動させるタスク（本実施形態では、ビジュアルフィードバック制御）において当該差分算出パラメーターを用いて姿勢が制御されるため、姿勢制御方法は用いられず、姿勢制御方法は規定されなくてもよい。
【００４６】
姿勢制御方法としては、任意の方法が用いられてもよい。
一例として、姿勢制御方法としては、対象物を目標位置に移動させるタスク（本実施形態では、ビジュアルフィードバック制御）の途中では、当該対象物の姿勢を変化させずに同じまま（不変）として、当該対象物の姿勢を当該タスクの初期状態のまま固定する方法を用いることができる。
【００４７】
他の一例として、姿勢制御方法としては、２つの異なる位置における対象物の姿勢の違いをスプライン関数などの関数を用いて補間し、この補間結果に従うように、対象物を目標位置に移動させるタスク（本実施形態では、ビジュアルフィードバック制御）の途中で、当該対象物の姿勢を変化させる方法を用いることができる。
【００４８】
具体的には、本実施形態の例では、ロボット２により対象物１０１を把持した初期の状態（第１のタスクの初期状態）における当該対象物１０１の実際の姿勢から、最終的な目標位置である第５番目の目標位置（第５のタスク）における当該対象物１０１の目標となる姿勢へと、スプライン関数などにより補間した結果（当該対象物１０１の姿勢）が、第１のタスク〜第５のタスクを順番に行うときに当該対象物１０１の各位置で、実現されるように、ロボット２により当該対象物１０１の姿勢を変化させるように制御する。
【００４９】
本実施形態では、このような該当する目標位置（タスク）において使用する姿勢制御方法は、あらかじめ設定されて記憶部１２に記憶されるが、他の構成例として、ユーザーが入力部１４を操作することなどにより可変に設定されてもよい。
【００５０】
また、姿勢に関する差分算出パラメーターが用いられない場合（本実施形態では、位置制御モードの場合）には、位置に関する差分算出パラメーターを用いて、ロボット２により対象物１０１の位置を変化させるように制御する。この場合における実際の対象物１０１および目標画像中の当該対象物の位置（両者の対象物を比較するときに、比較する位置）としては、様々な位置が用いられてもよい。
【００５１】
一例として、実際の対象物１０１および目標画像中の当該対象物の位置（両者の対象物を比較するときに、比較する位置）としては、対象物の重心の位置、または、対象物の所定のエッジの位置、または、対象物の所定の特徴点の位置などを用いることができる。
具体的な例として、ロボットシステムでは、実際の対象物１０１および目標画像中の当該対象物の両者のそれぞれについて、対象物の領域を検出して、当該領域の輪郭の重心位置（当該領域の面積の重心位置）を算出し、算出した両者の重心位置を比較する差分算出処理を行い、これら両者の重心位置が一致するように、ロボット２により当該実際の対象物１０１の位置を変化させるように制御する。
【００５２】
本実施形態では、このように差分算出処理において比較に用いる対象物の位置は、あらかじめ設定されて記憶部１２に記憶されるが、他の構成例として、ユーザーが入力部１４を操作することなどにより可変に設定されてもよい。
【００５３】
また、各目標位置における目標画像は、一例として、撮影部１３または他のカメラにより、あらかじめ撮影されて、その目標画像の情報が記憶部１２に記憶させられる。他の構成例として、各目標位置における目標画像として、ＣＧなどを用いて生成された画像が用いられてもよい。
【００５４】
なお、姿勢に関する差分算出パラメーターが用いられる場合（本実施形態では、位置姿勢制御モードの場合）のタスクについては、対象物１０１の位置ばかりでなく姿勢も目標の状態にある目標画像を用意する。
一方、姿勢に関する差分算出パラメーターが用いられない場合（本実施形態では、位置制御モードの場合）のタスクについては、対象物１０１の位置が目標の状態にある目標画像を用意し、目標画像中における対象物１０１の姿勢については任意であってもよい。
【００５５】
制御部１１は、例えば、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などを用いて構成され、ロボット制御装置１における各種の処理を制御する。
制御部１１は、例えば、入力部１４により受け付けられたユーザーによる操作の内容に応じた処理を実行する機能、各種の情報を出力部１５の画面に表示させる機能、記憶部１２に記憶された情報を読み取る機能および記憶部１２に情報を書き込む（記憶させる）機能を有する。
【００５６】
撮影部１３は、例えば、あらかじめ定められた場所に設置などされるカメラを用いて構成される。
撮影部１３は、ロボット２により作業（例えば、把持や移動などの作業）が行われる対象となる物体（対象物１０１）の画像を撮影する。そして、撮影部１３は、撮影した画像の情報（画像のデータ）を画像取得部２３に出力する。
画像取得部２３は、撮影部１３から出力された画像の情報を入力して取得し、取得した画像の情報を差分算出部２４に出力する。
【００５７】
教示情報取得部２２は、記憶部１２に記憶される教示情報（ビジュアルフィードバック制御におけるテンプレート情報に基づく差分算出の処理で使用する教示情報）を読み取って取得する。そして、教示情報取得部２２は、取得した教示情報を差分算出部２４に出力する。
【００５８】
ここで、本実施形態では、対象物１０１の位置またはさらに姿勢に関して順次達成されるべき複数の目標があり、それぞれの目標ごとに教示情報がある。このため、教示情報取得部２２は、記憶部１２に記憶される複数の教示情報の中から、現在の対象物１０１の状態において使用されるべき教示情報を選択して読み取って取得する。
【００５９】
具体的には、教示情報取得部２２は、ロボット２により対象物１０１を把持した初期の状態では、当該対象物１０１を第１番目の目標位置に移動させるために第１の教示情報を選択して記憶部１２から読み取って取得し、当該対象物１０１を第１番目の目標位置に移動させると、当該対象物１０１を第２番目の目標位置に移動させるために第２の教示情報を選択して記憶部１２から読み取って取得し、当該対象物１０１を第２番目の目標位置に移動させると、当該対象物１０１を第３番目の目標位置に移動させるために第３の教示情報を選択して記憶部１２から読み取って取得し、当該対象物１０１を第３番目の目標位置に移動させると、当該対象物１０１を第４番目の目標位置に移動させるために第４の教示情報を選択して記憶部１２から読み取って取得し、当該対象物１０１を第４番目の目標位置に移動させると、当該対象物１０１を第５番目の目標位置に移動させるために第５の教示情報を選択して記憶部１２から読み取って取得する。
【００６０】
差分算出部２４は、画像取得部２３から入力される画像の情報と、教示情報取得部２２から入力される教示情報に基づいて、差分算出（テンプレート情報に基づく差分算出）の処理を行う。
具体的には、差分算出部２４は、教示情報に含まれる差分算出パラメーターを特定する情報に基づいて、その情報で特定される差分算出パラメーターに応じた制御モード（本実施形態では、位置制御モード、または、位置姿勢制御モード）を使用して、当該教示情報に含まれる目標画像の情報と画像取得部２３から入力される画像の情報との間で物体（対象物１０１）の差分算出パラメーターを比較してその差分を算出する。
【００６１】
このような差分算出部２４における差分算出の処理の算出結果により、使用する制御モードに従って、ロボット２により作業が行われる対象となる対象物１０１の実際の状態（位置制御モードにおいては位置の状態、位置姿勢制御モードにおいては位置および姿勢の状態）が、目標画像の情報で表される該当する対象物の状態に一致するか否かを判定することができる。
本実施形態では、ロボット制御部２１により、このような判定を行う。なお、他の構成例として、差分算出部２４などにより、このような判定を行うこともできる。
ここで、差分算出部２４は、例えば、２枚の画像間の各画素の階調差を最小にする非線形最小化問題を解くことで、これら２枚の画像間における物体（対象物）の位置や姿勢の誤差（差分）を算出する機能を有する。
【００６２】
ロボット制御部２１は、有線の回線３を介して、制御のための信号（制御信号）をロボット２に送信することで、ロボット２を制御する機能を有する。本実施形態では、ロボット制御部２１は、ロボット２により行われる物体（対象物１０１）の把持や移動（位置や姿勢の変化）を制御する。
また、ロボット制御部２１は、ロボット２から送信される信号を、有線の回線３を介して、受信することも可能である。
【００６３】
ここで、本実施形態では、差分算出部２４は、教示情報に含まれる差分算出パラメーターを特定する情報、または、使用する制御モードを特定することができる他の情報をロボット制御部２１に出力する。
ロボット制御部２１は、この情報を入力することにより、使用する制御モード（本実施形態では、位置制御モード、または、位置姿勢制御モード）を検出することができる。
【００６４】
また、本実施形態では、差分算出部２４は、姿勢に関する差分算出パラメーターが用いられない場合（本実施形態では、位置制御モードが用いられる場合）には、教示情報に含まれる姿勢制御方法を規定する情報をロボット制御部２１に出力する。
ロボット制御部２１は、この情報を入力することにより、姿勢に関する差分算出パラメーターが用いられない場合（本実施形態では、位置制御モードが用いられる場合）に、使用する姿勢制御方法を検出することができる。
【００６５】
なお、姿勢に関する差分算出パラメーターが用いられる場合（本実施形態では、位置姿勢制御モードが用いられる場合）には、差分算出部２４は、教示情報に含まれる姿勢制御方法を規定する情報をロボット制御部２１に出力してもよいが、出力する必要はないため出力しなくてもよい。
【００６６】
具体的には、位置姿勢制御モードが用いられるときには、ロボット制御部２１は、ビジュアルフィードバック制御として、対象物１０１の実際の位置および姿勢の状態が目標画像（ゴール画像）中の該当する対象物の位置および姿勢の状態に一致しないと差分算出部２４の算出結果により判定された場合には、ロボット２を制御して、これらの状態をちかづけるように、当該対象物１０１の位置や姿勢を変化させる。
その後、ロボット制御部２１は、再び、以上に説明したのと同様に、撮影部１３、画像取得部２３、差分算出部２４の順で処理された結果（差分算出部２４による差分算出の結果）を検出して、当該検出結果に応じた制御を行う。
【００６７】
ここで、本実施形態では、ロボット制御部２１は、ロボット２を制御して対象物１０１の位置や姿勢を変化させる場合には、１回の制御で、あらかじめ定められた変化量だけ対象物１０１の位置や姿勢を変化させる。
そして、ロボット制御部２１は、このような制御を繰り返して行うことにより、対象物１０１の実際の位置および姿勢の状態を、目標画像中の該当する対象物の位置および姿勢の状態に一致させる。これにより、対象物１０１の実際の画像が、対象物１０１の位置および姿勢に関して、目標画像の情報の内容に合わせられ、つまり、当該対象物１０１の実際の位置および姿勢が目標の位置および姿勢に合わせられる。
【００６８】
なお、ロボット制御部２１は、例えば、同一の目標について、制御の回数が増加するに応じて、または、対象物１０１の実際の位置および姿勢の状態が目標の位置および姿勢の状態に近づくに応じて、前記した変化量（対象物１０１の位置や姿勢を変化させる変化量）を、連続的または段階的に、小さくするようにしてもよい。
【００６９】
一方、位置姿勢制御モードが用いられるときには、ロボット制御部２１は、対象物１０１の実際の位置および姿勢の状態が目標画像中の該当する対象物の位置および姿勢の状態に一致すると差分算出部２４の算出結果により判定された場合には、この目標位置（タスク）に関しては、ロボット２の制御を終了として、それ以上はロボット２を制御しない。
【００７０】
なお、位置および姿勢の状態が一致するか否かを判定する処理においては、例えば、任意に設定された誤差の分だけ一致状態からずれていても一致するとみなすような判定が行われてもよい。つまり、実用上で支障とならない程度で、任意の誤差が許容されてもよい。
【００７１】
また、位置姿勢制御モードが用いられるときには、ロボット制御部２１は、対象物１０１の実際の位置および姿勢の状態が目標画像中の該当する対象物の位置および姿勢の状態に一致すると差分算出部２４の算出結果により判定された場合に、次の目標位置（タスク）があるときには、当該次の目標位置に関して、同様に、テンプレート情報に基づく差分算出の処理を用いたビジュアルフィードバック制御を行う。
【００７２】
また、具体的には、位置制御モードが用いられるときには、ロボット制御部２１は、ビジュアルフィードバック制御として、対象物１０１の実際の位置の状態が目標画像（ゴール画像）中の該当する対象物の位置の状態に一致しないと差分算出部２４の算出結果により判定された場合には、ロボット２を制御して、これらの状態をちかづけるように、当該対象物１０１の位置を変化させる。また、このとき、ロボット制御部２１は、使用する姿勢制御方法が対象物１０１の姿勢を変化させるものであるときには、その姿勢制御方法に従って、当該対象物１０１の姿勢も変化させる。
その後、ロボット制御部２１は、再び、以上に説明したのと同様に、撮影部１３、画像取得部２３、差分算出部２４の順で処理された結果（差分算出部２４による差分算出の結果）を検出して、当該検出結果に応じた制御を行う。
【００７３】
ここで、本実施形態では、ロボット制御部２１は、ロボット２を制御して対象物１０１の位置を変化させる場合には、１回の制御で、あらかじめ定められた変化量だけ対象物１０１の位置を変化させる。
そして、ロボット制御部２１は、このような制御を繰り返して行うことにより、対象物１０１の実際の位置の状態を、目標画像中の該当する対象物の位置の状態に一致させる。これにより、対象物１０１の実際の画像が、対象物１０１の位置に関して、目標画像の情報の内容に合わせられ、つまり、当該対象物１０１の実際の位置が目標の位置に合わせられる。
【００７４】
なお、ロボット制御部２１は、例えば、同一の目標について、制御の回数が増加するに応じて、または、対象物１０１の実際の位置の状態が目標の位置の状態に近づくに応じて、前記した変化量（対象物１０１の位置を変化させる変化量）を、連続的または段階的に、小さくするようにしてもよい。
【００７５】
一方、位置制御モードが用いられるときには、ロボット制御部２１は、対象物１０１の実際の位置の状態が目標画像中の該当する対象物の位置の状態に一致すると差分算出部２４により判定された場合には、この目標位置（タスク）に関しては、ロボット２の制御を終了として、それ以上はロボット２を制御しない。
【００７６】
なお、位置の状態が一致するか否かを判定する処理においては、例えば、任意に設定された誤差の分だけ一致状態からずれていても一致するとみなすような判定が行われてもよい。つまり、実用上で支障とならない程度で、任意の誤差が許容されてもよい。
【００７７】
また、位置制御モードが用いられるときには、ロボット制御部２１は、対象物１０１の実際の位置の状態が目標画像中の該当する対象物の位置の状態に一致すると差分算出部２４の算出結果により判定された場合に、次の目標位置（タスク）があるときには、当該次の目標位置に関して、同様に、テンプレート情報に基づく差分算出の処理を用いたビジュアルフィードバック制御を行う。
【００７８】
なお、テンプレート情報に基づく差分算出の処理における一般的な技術や、ビジュアルフィードバック制御における一般的な技術については、例えば、公知の様々な手法を用いることが可能である。
【００７９】
以上のように、ビジュアルフィードバック制御では、目標画像と現在撮影した画像とが一致するまで（正確には、目標画像に写る対象物の位置またはさらに姿勢と現在撮影した画像に写る対象物の位置またはさらに姿勢とが一致するまで）、ビジュアルフィードバックが繰り返されて、対象物１０１は移動を続けさせられる。
【００８０】
ここで、位置姿勢制御モードでは、例えば、位置（３次元）および姿勢（３次元）の６自由度を最適化する必要があるが、最適化に時間がかかる場合がある。
そこで、本実施形態では、対象物１０１を複数の目標位置に順番に移動させるビジュアルフィードバック制御において、複数の目標位置のうちの一部（１つ以上）については、位置制御モードを使用する構成とした。
【００８１】
具体的には、本実施形態の例では、第１番目の目標位置〜第５番目の目標位置（図１に示される第１の経由点（１）〜第５の経由点（５））において、第１番目の目標位置〜第４番目の目標位置については、対象物１０１の位置のみを目標画像中の該当する対象物の位置と一致させるように制御する位置制御モードを使用してビジュアルフィードバック制御を行い、最終的な目標位置である第５番目の目標位置だけについては、対象物１０１の位置および姿勢の両方を目標画像中の該当する対象物の位置および姿勢の両方と一致させるように制御する位置姿勢制御モードを使用してビジュアルフィードバック制御を行う。
【００８２】
このような構成では、第１番目の目標位置〜第４番目の目標位置についてのビジュアルフィードバック制御においては、位置（本実施形態では、３次元）だけの最適化であり、位置（本実施形態では、３次元）および姿勢（本実施形態では、３次元）の両方を最適化する比較的多い自由度（本実施系形態では、６自由度）に対して、比較的少ない自由度（本実施形態では、３自由度）の最適化でよいため、計算時間を短縮させることができる。このように計算時間を短縮させることができることにより、ビジュアルフィードバック制御における対象物の目標位置への収束時間を短縮させることができ、結果として、対象物の目標位置までの移動時間を短縮させることができる。
【００８３】
本実施形態では、ビジュアルフィードバック制御を行う一連のタスク（本実施形態では、第１のタスク〜第５のタスク）がユーザーによりあらかじめ把握されており、ユーザーは、実際の対象物の位置および姿勢の情報を目標画像中の該当する対象物の位置および姿勢の情報と比較して求めた差分に基づいてビジュアルフィードバック制御を行う期間（本実施形態では、第５のタスク）と、実際の対象物の位置のみの情報を目標画像中の該当する対象物の位置のみの情報と比較して求めた差分に基づいてビジュアルフィードバック制御を行う期間（本実施形態では、第１のタスク〜第４のタスク）を設定する。
【００８４】
この設定の仕方としては、任意に行われてもよく、具体例として、部品など（対象物）の組み付けを行う期間（本実施形態では、第５のタスク）だけ対象物の位置および姿勢の情報を目標画像中の該当する対象物の位置および姿勢の情報と比較して求めた差分に基づいてビジュアルフィードバック制御を行い、その他の期間（本実施形態では、第１のタスク〜第４のタスク）では対象物の位置のみの情報を目標画像中の該当する対象物の位置のみの情報と比較して求めた差分に基づいてビジュアルフィードバック制御を行う、ように設定する。
【００８５】
ロボット２として、本実施形態では、垂直多関節ロボットの一例であるマニピュレーターを用いている。
マニピュレーターは、例えば、ロボットアームとして機能し、その先端のハンドによって、物体（対象物１０１）を把持して、当該物体を移動させる（位置や姿勢を変化させる）ことが可能である。
【００８６】
ロボット２は、ロボット制御装置１の制御部１１のロボット制御部２１から送信される制御信号を、有線の回線３を介して、受信し、受信した制御信号により制御される。
また、ロボット２は、自己の状態などを示す信号を、有線の回線３を介して、ロボット制御装置１の制御部１１のロボット制御部２１に送信する機能を有してもよい。
【００８７】
ここで、ロボット２としては、具体的には、様々なものに適用されてもよい。例えば、ロボット２として、産業用のロボットを構成することができるばかりでなく、宇宙用途や遊具など、様々な分野のロボットに適用することが可能である。
【００８８】
以上のように、本実施形態に係るロボットシステムでは、複数枚の目標画像を用いてビジュアルフィードバック制御により対象物１０１を目標位置に移動させるときに、目標画像中の該当する対象物の位置の情報だけを用いてビジュアルフィードバック制御を行う場合と、目標画像中の該当する対象物の位置および姿勢の情報を用いてビジュアルフィードバック制御を行う場合とを、タスクによって、例えば事前に、設定する。これにより、本実施形態に係るロボットシステムでは、ビジュアルフィードバック制御により目標位置に対象物１０１を移動させるのに要する時間を短縮させることができる。
つまり、位置および姿勢（例えば、計６次元）の最小化問題を解く場合と比べて、位置のみ（例えば、３次元）の最小化問題を解く場合の方が、計算時間が短く、よって、計算時間の短縮によりビジュアルフィードバック制御の動作速度を上げることができる。
【００８９】
具体的には、一構成例として、ロボットシステムのロボット制御装置１は、ロボット２による作業の対象物１０１を順番に移動させるべき複数の目標位置のそれぞれについて前記対象物１０１が目標位置に存在する状態における前記対象物１０１の画像の情報を含み且つ前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターが前記複数の目標位置について２個以上あるように前記近づけるべきパラメーターを定める教示情報を記憶する記憶部１２と、前記複数の目標位置のそれぞれについて、前記記憶部１２に記憶される教示情報を取得する教示情報取得部２２と、前記複数の目標位置のそれぞれについて、前記ロボット２による作業の対象物１０１の画像を撮影する撮影部１３により撮影される画像を取得する画像取得部２３と、前記複数の目標位置のそれぞれについて、前記教示情報取得部２２により取得された教示情報に含まれる画像の情報と、前記画像取得部２３により取得された画像の情報について、前記教示情報により定められる近づけるべきパラメーターに関して、差分を算出する差分算出部２４と、前記複数の目標位置のそれぞれについて、前記差分算出部２４の算出結果に基づいて、前記教示情報により定められる近づけるべきパラメーターに関して、前記ロボット２による作業の対象物１０１を目標位置に近づける制御を行うロボット制御部２１と、を備える。
これにより、ロボット制御装置２１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、それぞれの目標位置（タスク）ごとに、近づけるべきパラメーターを適度なもの（少なくとも１つの目標位置については異なるもの）に設定することができる。
【００９０】
一構成例として、ロボットシステムのロボット制御装置１では、前記教示情報において、前記複数の目標位置のうちの一部については前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの残りについては前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物１０１の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物１０１の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
【００９１】
一構成例として、ロボットシステムのロボット制御装置１では、前記教示情報において、前記複数の目標位置のうちの最終の目標位置以外については前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められ、前記複数の目標位置のうちの最終の目標位置については前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置および姿勢のパラメーターが定められる。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物１０１の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物１０１の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
【００９２】
一構成例として、ロボットシステムのロボット制御装置１では、前記教示情報は、前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合に、前記対象物１０１の姿勢の制御方法を規定する情報を含み、前記ロボット制御部２１は、前記教示情報により前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合に、前記教示情報により規定される前記対象物１０１の姿勢の制御方法を使用して、前記対象物１０１の姿勢の制御を行う。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物１０１の姿勢の制御方法を規定して使用することができる。
【００９３】
一構成例として、ロボットシステムのロボット制御装置１では、前記対象物１０１の姿勢の制御方法として、前記対象物１０１の姿勢を不変とする制御方法、または、あらかじめ定められた補間の結果に従って前記対象物１０１の姿勢を変化させる制御方法を用いる。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物１０１の姿勢の制御方法を規定して使用することができる。
【００９４】
一構成例として、ロボットシステムのロボット制御装置１では、前記差分算出部２４は、前記教示情報により前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置のパラメーターが定められる場合には、前記対象物１０１の領域の輪郭の重心位置について差分を算出する。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物１０１を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、前記教示情報により前記対象物１０１を目標位置に近づける制御で近づけるべきパラメーターとして位置（のみ）のパラメーターが定められる場合に、前記対象物１０１の領域の輪郭の重心位置を、差分を算出する位置として用いることができる。
【００９５】
一構成例として、ロボットシステムのロボット制御装置１は、ロボット２を制御して、前記ロボット２が作業を行う対象物１０１を、第１の目標位置を経由して第２の目標位置へ移動させる場合に、前記第１の目標位置における前記対象物１０１の画像（第１の画像）および前記第２の目標位置における前記対象物１０１の画像（第２の画像）を記憶する記憶部１２と、前記対象物１０１を含む画像を取得する画像取得部２３と、前記対象物１０１を含む画像と前記第１の画像との差分算出を行って前記対象物１０１の位置を前記第１の画像における前記対象物１０１の位置に近づけるように前記ロボット２を制御し、前記対象物１０１を含む画像と前記第２の画像との差分算出を行って前記対象物１０１の位置および姿勢を前記第２の画像における前記対象物１０１の位置および姿勢に近づけるように前記ロボット２を制御するロボット制御部２１と、を備える。
これにより、ロボット制御装置１は、複数枚の教示画像（目標画像）を順番に用いて、ビジュアルフィードバック制御により対象物を目標位置に誘導することを効率的に実現することができる。具体的には、例えば、対象物１０１の姿勢まで制御する必要がないとみなされる目標位置（タスク）については、当該対象物１０１の位置（のみ）を制御することにより、処理時間の短縮化を図ることができる。
ここで、例えば、ロボットにより対象物を移動させる軌道（軌跡）における経由点（目標位置）が複数存在する場合には、前記第１の目標位置および前記第２の目標位置としては、それぞれ、任意の経由点（目標位置）が用いられてもよい。具体例として、本実施形態の例では、第１の経由点（第１番目の目標位置）〜第５の経由点（第５番目の目標位置）といった５つの経由点（目標位置）があり、前記第１の目標位置が第１の経由点（第１番目の目標位置）〜第４の経由点（第４番目の目標位置）のうちの任意のいずれかであるととらえることができ、前記第２の目標位置が第５の経由点（第５番目の目標位置）であるととらえることができる。
また、前記第１の画像は、対象物が前記第１の目標位置に存在する状態における前記対象物の画像であり、同様に、前記第２の画像は、対象物が前記第２の目標位置に存在する状態における前記対象物の画像である。
【００９６】
ここで、ロボット制御装置１とロボット２とは、例えば、別体で構成されてもよく、または、一体でロボットシステムとして構成されてもよい。
【００９７】
［第２実施形態］
本発明の第２実施形態について図面を参照して詳細に説明する。
図２は、本発明の一実施形態に係る双腕のロボットシステムの外観例を示す図である。
図２は、本実施形態に係るロボットシステムをその前方から見た外観例を示している。このため、図２における右側が本実施形態に係るロボットシステムの左側に相当し、図２における左側が本実施形態に係るロボットシステムの右側に相当する。
【００９８】
本実施形態に係るロボットシステムは、ベースユニットとなるロボット制御装置２００１と、胴体を構成する部材（胴体部材）２００２、２００３、２００４と、腕（アーム）を構成するマニピュレーター２０１１、２０１２と、車輪２０２１、２０２２と、撮影部２０３１と、を備える。
【００９９】
本実施形態に係るロボットシステムは、ロボット制御装置２００１の上面に胴体部材２００２、胴体部材２００３、胴体部材２００４が順に上側に取り付けられ、最も上部の胴体部材２００４の左側に左腕を構成するマニピュレーター２０１１が取り付けられ、当該最も上部の胴体部材２００４の右側に右腕を構成するマニピュレーター２０１２が取り付けられ、ロボット制御装置２００１の底面の左側に車輪２０２１が取り付けられ、ロボット制御装置２００１の底面の右側に車輪２０２２が取り付けられ、ロボット制御装置２００１の上面に撮影部２０３１が取り付けられて、構成されている。
【０１００】
ここで、本実施形態に係るロボットシステムは、左腕を構成するマニピュレーター２０１１と、右腕を構成するマニピュレーター２０１２とを備えており、このように双方の腕を備えている。
各腕を構成するマニピュレーター２０１１、２０１２は、それぞれ、例えば、３軸ばかりでなく、７軸などのように、任意の軸を有するものであってもよい。
【０１０１】
また、本実施形態に係るロボットシステムは、左側の車輪２０２１と、右側の車輪２０２２とを備えており、このように双方の車輪を備えている。
そして、本実施形態に係るロボットシステムは、人力により車輪２０２１、２０２２を回転させて、移動させられることが可能である。
【０１０２】
本実施形態に係るロボットシステムでは、ロボット制御装置２００１の内部に、例えば、図１に示されるようなロボット制御装置１が備える処理部を格納して備えている。
このロボット制御装置２００１は、例えば、図１に示されるロボット制御装置１と同様な機能を有しており、左腕のマニピュレーター２０１１と右腕のマニピュレーター２０１２を制御する。
ここで、このロボット制御装置２００１は、例えば、左腕のマニピュレーター２０１１と右腕のマニピュレーター２０１２とを同時に関連付けて制御してもよく、または、左腕のマニピュレーター２０１１と右腕のマニピュレーター２０１２とをそれぞれ別個に制御してもよい。
【０１０３】
本実施形態に係るロボットシステムにおける撮影部２０３１は、例えば、図１に示されるロボット制御装置１の撮影部１３と同様な機能を有している。
なお、本実施形態に係るロボットシステムにおける撮影部２０３１は、図２に示される場所以外に、ロボットシステムにおける任意の場所に備えられてもよい。
また、他の構成例として、この撮影部２０３１は、図２に示されるロボットシステムとは別に、撮影の対象となる物体（対象物）の付近などに固定的に設置されてもよく、この場合、この撮影部２０３１とロボットシステムのロボット制御装置２００１とが有線の回線または無線の回線により画像のデータなどを通信する。
【０１０４】
このように、本実施形態に係るロボットシステムは、例えば、図１に示されるロボットシステムを具体化したものの一例となっている。
ここで、本実施形態に係るロボットシステムが備える２つのマニピュレーター２０１１、２０１２について、例えば、いずれか一方のみのマニピュレーター（マニピュレーター２０１１またはマニピュレーター２０１２のうちの１つのみ）が図１に示されるロボット２として用いられてもよく、または、これら両方のマニピュレーター２０１１、２０１２がそれぞれ別々に図１に示されるロボット２として用いられてもよく、または、これら両方のマニピュレーター２０１１、２０１２を組み合わせたものが一体として図１に示されるロボット２として用いられてもよい。
【０１０５】
以上のように、本実施形態に係るロボットシステムでは、例えば、図１に示されるロボット制御装置１とロボット２に対応するもの（本実施形態に係るロボットシステムでは、ロボット制御装置２００１と、２つのマニピュレーター２０１１、２０１２）が一体として構成されている。
なお、ロボット制御装置２００１に備えられるロボット制御部（例えば、図１に示されるロボット制御部２１に対応する処理部）と各マニピュレーター２０１１、２０１２とは、例えば、有線の回線または無線の回線を介して、制御信号などを通信することが可能に接続される。
【０１０６】
ここで、他の構成例として、ロボット制御装置２００１に備えられる機能の一部を、図２に示されるロボットシステムとは別体のコントローラーに備えることも可能である。
具体例として、図１に示されるロボット制御装置１に備えられる入力部１４と出力部１５の機能と同様な機能を、図２に示されるロボットシステムとは別体のコントローラーに備え、ロボット制御装置２００１と当該コントローラーとに互いに無線により通信する機能を備えることで、図１に示されるロボット制御装置１に備えられる入力部１４と出力部１５の機能と同様な機能をリモートのコントローラーで実現することが可能である。
【０１０７】
［以上の実施形態のまとめ］
ここで、ロボットによる作業の対象となるものとしては、様々なものが用いられてもよく、例えば、ギア（対象物となる物品）を組み付けるギア装置、Ｄ状の部品（対象物となる物品）を組み付けるＤ部組み付け装置などに適用することができる。また、例えば、ラックアンドピニオン、チェーン、ベルトなどに適用することもできる。
また、ロボットによる作業の対象となるものとしては、例えば、平面での位置合わせが必要な部品の組み付けばかりでなく、空間での位置合わせが必要な部品の組み付けに適用することも可能である。例えば、ウォームギア、傘歯車などに適用することができる。
また、ロボットによる作業としては、ギア装置あるいはＤ部組み付け装置などのような装置の組み立て作業ばかりでなく、例えば、部品同士の位置および姿勢を合わせることが必要となる作業を行わせる装置などに適用することも可能である。
【０１０８】
また、本実施形態では、ロボットの一例として、マニピュレーターを示したが、ロボットとしては、様々なものが用いられてもよい。
具体的には、ロボットとしては、例えば、様々なスカラロボットが用いられてもよく、または、様々な垂直多関節ロボットが用いられてもよい。
また、例えば、片腕ロボット（または、ロボットシステム）や双腕ロボット（または、ロボットシステム）ばかりでなく、３本以上の腕を持つロボット（または、ロボットシステム）が用いられてもよい。また、ロボット（または、ロボットシステム）の移動を可能にする部分（移動部）としては、例えば、車輪を用いるロボット（または、ロボットシステム）ばかりでなく、歩行を用いるロボット（または、ロボットシステム）などが用いられてもよい。
【０１０９】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【０１１０】
なお、以上に説明したロボットシステム（ロボット制御装置１など）における任意の構成部の機能を実現するためのプログラムを、コンピューター読み取り可能な記録媒体に記録し、そのプログラムをコンピューターシステムに読み込ませて実行するようにしてもよい。なお、ここで言う「コンピューターシステム」とは、ＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）や周辺機器等のハードウェアを含むものとする。また、「コンピューター読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｋ）−ＲＯＭ等の可搬媒体、コンピューターシステムに内蔵されるハードディスク等の記憶装置のことを言う。さらに「コンピューター読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムが送信された場合のサーバーやクライアントとなるコンピューターシステム内部の揮発性メモリー（ＲＡＭ：Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）のように、一定時間プログラムを保持しているものも含むものとする。
【０１１１】
また、上記のプログラムは、このプログラムを記憶装置等に格納したコンピューターシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピューターシステムに伝送されてもよい。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク（通信網）や電話回線等の通信回線（通信線）のように情報を伝送する機能を有する媒体のことを言う。
また、上記のプログラムは、前述した機能の一部を実現するためのものであってもよい。さらに、上記のプログラムは、前述した機能をコンピューターシステムにすでに記録されているプログラムとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよい。
【符号の説明】
【０１１２】
１…ロボット制御装置、２…ロボット、３…有線の回線、１１…制御部、１２…記憶部、１３…撮影部、１４…入力部、１５…出力部、２１…ロボット制御部、２２…教示情報取得部、２３…画像取得部、２４…差分算出部、１０１…対象物、１０２…製品の構成部、１０３…製品の構成部、１１１…製品の構成部、１１２…製品の構成部、２０１…テーブル、２００１…ロボット制御装置、２００２…胴体部分、２００３…胴体部分、２００４…胴体部分、２０１１…マニピュレーター、２０１２…マニピュレーター、２０２１…車輪、２０２２…車輪、２０３１…撮影部
【図１】
0005948914.tif 000002
【図２】
0005948914.tif 000003