(57)【要約】【課題】電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができるロボットおよび動作軌道制御システムを提供すること。【解決手段】ロボット1は、アームを有するロボット本体10と、前記ロボット本体10が作業する対象物に設定された参照点の周辺を撮像し、撮像データを得る電子カメラと、前記ロボット本体10の作動を制御する制御装置とを備えている。前記制御装置は、前記撮像データに基づいて、前記電子カメラと前記参照点を結ぶ直線を仮想斥力発生源とする仮想斥力ベクトルで構成される仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定部と、仮想斥力データ取得部と、第１トルクデータ取得部と、前記参照点を仮想引力発生源とする仮想引力ベクトルで構成される仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、仮想引力データ取得部と、第２トルクデータ取得部と、制御部とを備える。【選択図】図１
2014124734.tif 000002
【特許請求の範囲】
【請求項１】
駆動源によって駆動されるアームと、
前記アームが作業する対象物と該対象物の周辺とを撮像して撮像データを取得する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像データから、予め設定されている前記対象物の参照点と前記撮像装置とを結ぶ直線を発生源とする仮想斥力ベクトルを含む仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める仮想斥力データ取得部と、
前記仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
前記第１トルクと前記第２トルクに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とするロボット。
【請求項２】
前記仮想斥力ベクトル場の前記仮想斥力ベクトルの大きさは、前記対象物の参照点との距離に反比例する請求項１に記載のロボット。
【請求項３】
前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御する請求項１または２に記載のロボット。
【請求項４】
駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、設定された参照点と前記撮像装置とを結ぶ直線を仮想斥力発生源とする仮想斥力ベクトルを含む第１仮想斥力ベクトル場を設定する第１仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記第１仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める第１仮想斥力データ取得部と、
前記第１仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
障害物を発生源とする仮想斥力ベクトルを含む第２仮想斥力ベクトル場を設定する第２仮想斥力ベクトル場設定部と、
前記アームに第３代表点を設定し、前記第２仮想斥力ベクトル場において前記第３代表点に作用する仮想斥力を求める第２仮想斥力データ取得部と、
前記第２仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第３トルクを求める第３トルクデータ取得部と、
前記第１トルクと前記第２トルクと前記第３トルクとに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とするロボット。
【請求項５】
前記撮像装置は、前記障害物を含めて撮像するものであり、
前記第２仮想斥力ベクトル場設定部は、前記撮像装置で撮像して得られる撮像データに基づいて、前記障害物を認識し、前記第２仮想斥力ベクトル場を設定する請求項４に記載のロボット。
【請求項６】
前記第１仮想斥力ベクトル場の前記仮想斥力ベクトルの大きさは、前記対象物の参照点との距離に反比例する請求項４または５に記載のロボット。
【請求項７】
前記アームは回転軸を軸中心として回動し、
前記第１トルク、前記第２トルク、前記第３トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御する請求項４ないし６のいずれかに記載のロボット。
【請求項８】
前記撮像装置は、前記アームから離間した位置に設置されている請求項１ないし７のいずれかに記載のロボット。
【請求項９】
駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、前記対象物の参照点と前記撮像装置とを結ぶ直線を発生源とする仮想斥力ベクトルを含む仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める仮想斥力データ取得部と、
前記仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
前記第１トルクと前記第２トルクに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする動作軌道制御システム。
【請求項１０】
前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御する請求項９に記載の動作軌道制御システム。
【請求項１１】
駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、設定された参照点と前記撮像装置とを結ぶ直線を仮想斥力発生源とする仮想斥力ベクトルを含む第１仮想斥力ベクトル場を設定する第１仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記第１仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める第１仮想斥力データ取得部と、
前記第１仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
障害物を発生源とする仮想斥力ベクトルを含む第２仮想斥力ベクトル場を設定する第２仮想斥力ベクトル場設定部と、
前記アームに第３代表点を設定し、前記第２仮想斥力ベクトル場において前記第３代表点に作用する仮想斥力を求める第２仮想斥力データ取得部と、
前記第２仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第３トルクを求める第３トルクデータ取得部と、
前記第１トルクと前記第２トルクと前記第３トルクとに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする動作軌道制御システム。
【請求項１２】
前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルク、前記第３トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御する請求項１１に記載の動作軌道制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットおよび動作軌道制御システムに関するものである。
【背景技術】
【０００２】
複数の回動可能なアームを備え、３次元空間で自在に作業を行う多軸ロボットが知られている。ロボットが作業を行う際は、ロボットが作業する対象物の周辺を電子カメラで撮像し、得られた画像データに基づいて、その対象物の位置等を確認する。
また、ロボットが作業を行う際は、そのアームの軌道を生成する必要があり、特許文献１には、障害物を仮想斥力発生源とする仮想斥力ベクトルで構成される仮想斥力ベクトル場を設定し、その仮想斥力ベクトル場を用いてアームの軌道を生成するロボットが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−３１３０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のロボットでは、電子カメラで対象物を撮像するとき、アームが対象物を遮ってしまうことがあり、その場合は、対象物を撮像することができないという問題がある。
本発明の目的は、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができるロボットおよび動作軌道制御システムを提供することにある。
【課題を解決するための手段】
【０００５】
このような目的は、下記の適用例により達成される。
（適用例１）
本適用例のロボットは、駆動源によって駆動されるアームと、
前記アームが作業する対象物と該対象物の周辺とを撮像して撮像データを取得する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像データから、予め設定されている前記対象物の参照点と前記撮像装置とを結ぶ直線を発生源とする仮想斥力ベクトルを含む仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める仮想斥力データ取得部と、
前記仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
前記第１トルクと前記第２トルクに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする。
これにより、アームは、電子カメラと参照点を結ぶ直線を避けて動作するので、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができ、確実に対象物を撮像することができる。
【０００６】
（適用例２）
本適用例のロボットでは、前記仮想斥力ベクトル場の前記仮想斥力ベクトルの大きさは、前記対象物の参照点との距離に反比例することが好ましい。
これにより、より確実にアームの作動を制御することができる。
【０００７】
（適用例３）
本適用例のロボットでは、前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御することが好ましい。
これにより、対象物に近いほど、電子カメラと参照点を結ぶ直線からアームを遠ざけることができ、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることをより確実に防止することができる。
【０００８】
（適用例４）
本適用例のロボットは、駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、設定された参照点と前記撮像装置とを結ぶ直線を仮想斥力発生源とする仮想斥力ベクトルを含む第１仮想斥力ベクトル場を設定する第１仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記第１仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める第１仮想斥力データ取得部と、
前記第１仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
障害物を発生源とする仮想斥力ベクトルを含む第２仮想斥力ベクトル場を設定する第２仮想斥力ベクトル場設定部と、
前記アームに第３代表点を設定し、前記第２仮想斥力ベクトル場において前記第３代表点に作用する仮想斥力を求める第２仮想斥力データ取得部と、
前記第２仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第３トルクを求める第３トルクデータ取得部と、
前記第１トルクと前記第２トルクと前記第３トルクとに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする。
これにより、アームは、電子カメラと参照点を結ぶ直線を避けて回動するので、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができ、確実に対象物を撮像することができる。また、アームは、障害物を避けて回動することができる。
【０００９】
（適用例５）
本適用例のロボットでは、前記撮像装置は、前記障害物を含めて撮像するものであり、
前記第２仮想斥力ベクトル場設定部は、前記撮像装置で撮像して得られる撮像データに基づいて、前記障害物を認識し、前記第２仮想斥力ベクトル場を設定することが好ましい。
これにより、より確実にアームの作動を制御することができる。
【００１０】
（適用例６）
本適用例のロボットでは、前記第１仮想斥力ベクトル場の前記仮想斥力ベクトルの大きさは、前記対象物の参照点との距離に反比例することが好ましい。
これにより、別途、障害物を撮像する電子カメラを設ける場合に比べ、構成物の数を削減することができ、コストを低減することができる。
【００１１】
（適用例７）
本適用例のロボットでは、前記アームは回転軸を軸中心として回動し、
前記第１トルク、前記第２トルク、前記第３トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御することが好ましい。
これにより、対象物に近いほど、電子カメラと参照点を結ぶ直線からアームを遠ざけることができ、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることをより確実に防止することができる。
【００１２】
（適用例８）
本適用例のロボットでは、前記撮像装置は、前記アームから離間した位置に設置されていることが好ましい。
これにより、電子カメラがロボット本体に設置されている場合に比べ、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることをより確実に防止することができる。
【００１３】
（適用例９）
本適用例の動作軌道制御システムは、駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、前記対象物の参照点と前記撮像装置とを結ぶ直線を発生源とする仮想斥力ベクトルを含む仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める仮想斥力データ取得部と、
前記仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
前記第１トルクと前記第２トルクに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする。
これにより、アームは、電子カメラと参照点を結ぶ直線を避けて回動するので、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができ、確実に対象物を撮像することができる。
【００１４】
（適用例１０）
本適用例の動作軌道制御システムでは、前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御することが好ましい。
これにより、より確実にアームの作動を制御することができる。
【００１５】
（適用例１１）
本適用例の動作軌道制御システムは、駆動源によって駆動されるアームと、
前記アームが作業する対象物及びこの対象物の周辺を撮像する撮像装置と、
前記アームを制御する制御装置と、を備え、
前記制御装置は、
前記撮像装置の撮像データから、設定された参照点と前記撮像装置とを結ぶ直線を仮想斥力発生源とする仮想斥力ベクトルを含む第１仮想斥力ベクトル場を設定する第１仮想斥力ベクトル場設定部と、
前記アームに第１代表点を設定し、前記第１仮想斥力ベクトル場において前記第１代表点に作用する仮想斥力を求める第１仮想斥力データ取得部と、
前記第１仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第１トルクを求める第１トルクデータ取得部と、
前記対象物の参照点を発生源とする仮想引力ベクトルを含む仮想引力ベクトル場を設定する仮想引力ベクトル場設定部と、
前記アームに第２代表点を設定し、前記仮想引力ベクトル場において前記第２代表点に作用する仮想引力を求める仮想引力データ取得部と、
前記仮想引力データ取得部により求められた前記仮想引力に基づいて、該仮想引力により生じ、前記アームに作用する前記駆動源の第２トルクを求める第２トルクデータ取得部と、
障害物を発生源とする仮想斥力ベクトルを含む第２仮想斥力ベクトル場を設定する第２仮想斥力ベクトル場設定部と、
前記アームに第３代表点を設定し、前記第２仮想斥力ベクトル場において前記第３代表点に作用する仮想斥力を求める第２仮想斥力データ取得部と、
前記第２仮想斥力データ取得部により求められた前記仮想斥力に基づいて、該仮想斥力により生じ、前記アームに作用する前記駆動源の第３トルクを求める第３トルクデータ取得部と、
前記第１トルクと前記第２トルクと前記第３トルクとに基づいて、前記アームの作動を制御する制御部と、を備えることを特徴とする。
これにより、アームは、電子カメラと参照点を結ぶ直線を避けて回動するので、電子カメラによりロボット本体が作業する対象物を撮像するとき、アームが対象物を遮ることを防止することができ、確実に対象物を撮像することができる。また、アームは、障害物を避けて回動することができる。
【００１６】
（適用例１２）
本適用例の動作軌道制御システムでは、前記アームは回転軸を軸中心として回動し、
前記前記第１トルク、前記第２トルク、前記第３トルクおよび前記アームの前記回転軸の回りの慣性モーメントに基づいて、前記アームの回転角度、角速度および角加速度をそれぞれ求める駆動データ取得部を有し、
前記制御部は、前記アームが前記角速度および前記角加速度で前記回転角度を回動するように前記アームの作動を制御することが好ましい。
これにより、より確実にアームの作動を制御することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明に係わるロボットの第１実施形態を正面側から見た斜視図である。
【図２】図１に示すロボットを背面側から見た斜視図である。
【図３】図１に示すロボットの概略図である。
【図４】図１に示すロボットの主要部のブロック図である。
【図５】図１に示すロボットの作動を説明するための図である。
【図６】図１に示すロボットの作動を説明するための図である。
【図７】図１に示すロボットの制御動作を示すフローチャートである。
【図８】本発明に係わるロボットの第２実施形態の主要部のブロック図である。
【図９】図８に示すロボットの作動を説明するための図である。
【図１０】図８に示すロボットの制御動作を示すフローチャートである。
【図１１】本発明に係わるロボットの他の構成例を示す斜視図である。
【発明を実施するための形態】
【００１８】
以下、本発明に係わるロボットおよび動作軌道制御システムを添付図面に示す好適な実施形態に基づいて詳細に説明する。
＜第１実施形態＞
図１は、本発明に係わるロボットの第１実施形態を正面側から見た斜視図である。図２は、図１に示すロボットを背面側から見た斜視図である。図３は、図１に示すロボットの概略図である。図４は、図１に示すロボットの主要部のブロック図である。図５および図６は、それぞれ、図１に示すロボットの作動を説明するための図である。図７は、図１に示すロボットの制御動作を示すフローチャートである。図６には、ロボットのうち第１アームのみを模式的に示す。
なお、以下では、説明の都合上、図１〜図３中の上側を「上」または「上方」、下側を「下」または「下方」と言う。また、図１〜図３中の基台側を「基端」、その反対側を「先端」と言う。
【００１９】
図１〜図３に示すロボット（産業用ロボット）１は、例えば腕時計のような精密機器等を製造する製造工程で用いることができ、ロボット本体１０と、ロボット本体１０の作動を制御する制御装置（制御手段）２０（図４参照）と、第１電子カメラ７１および第２電子カメラ７２とを有している。ロボット本体１０、第１電子カメラ７１および第２電子カメラ７２と、制御装置２０とは、それぞれ、電気的に接続されている。なお、制御装置２０、第１電子カメラ７１および第２電子カメラ７２により、動作軌道制御システムが構成される。また、制御装置２０は、例えば、ＣＰＵ（Central Processing Unit）が内蔵されたパーソナルコンピューター（ＰＣ）等で構成することができる。なお、制御装置２０については、後で詳述する。
【００２０】
ロボット本体１０は、基台１１と、４本のアーム（リンク）１２、１３、１４、１５と、リスト（リンク）１６と、６つの駆動源４０１、４０２、４０３、４０４、４０５、４０６とを備えている。このロボット本体１０は、基台１１と、アーム１２、１３、１４、１５と、リスト１６とが基端側から先端側に向ってこの順に連結された垂直多関節（６軸）ロボット（ロボット本体）である。垂直多関節ロボットでは、基台１１と、アーム１２〜１５と、リスト１６とを総称して「アーム」と言うこともでき、アーム１２を「第１アーム」、アーム１３を「第２アーム」、アーム１４を「第３アーム」、アーム１５を「第４アーム」、リスト１６を「第５アーム、第６アーム」と分けて言うことができる。なお、リスト１６は、第５アームと、第６アームとを有していてもよい。リスト１６にはエンドエフェクタ等を取り付けることができる。
【００２１】
図３に示すように、アーム１２〜１５、リスト１６は、それぞれ、基台１１に対し独立して変位可能に支持されている。このアーム１２〜１５、リスト１６の長さは、それぞれ、特に限定されないが、図示の構成では、アーム１２〜１４の長さが、他のアーム１５およびリスト１６よりも長く設定されている。なお、例えば、第３アーム１４の長さを第１アーム１２および第２アーム１３の長さよりも短くしてもよい。
【００２２】
基台１１と第１アーム１２とは、関節（ジョイント）１７１を介して連結されている。そして、第１アーム１２は、基台１１に対し、鉛直方向と平行な第１回転軸Ｏ１を回転中心とし、その第１回転軸Ｏ１回りに回動自在となっている。第１回転軸Ｏ１は、基台１１の設置面である床１０１の上面の法線と一致している。この第１回転軸Ｏ１回りの回動は、第１駆動源４０１の駆動によりなされる。また、第１駆動源４０１はモーター４０１Ｍとケーブル（図示せず）によって駆動され、このモーター４０１Ｍは電気的に接続されたモータードライバー３０１を介して制御装置２０により制御される。第１駆動源４０１はモーター４０１Ｍとともに設けた減速機（図示せず）によってモーター４０１Ｍからの駆動を伝達されても良く、また、減速機が省略されていてもよい。
【００２３】
第１アーム１２と第２アーム１３とは、関節（ジョイント）１７２を介して連結されている。そして、第２アーム１３は、第１アーム１２に対し、水平方向と平行な第２回転軸Ｏ２を軸中心として回動自在となっている。第２回転軸Ｏ２は、第１回転軸Ｏ１と直交している。この第２回転軸Ｏ２回りの回動は、第２駆動源４０２の駆動によりなされる。また、第２駆動源４０２はモーター４０２Ｍとケーブル（図示せず）によって駆動され、このモーター４０２Ｍは電気的に接続されたモータードライバー３０２を介して制御装置２０により制御される。第２駆動源４０２はモーター４０２Ｍの他に設けた減速機（図示せず）によってモーター４０２Ｍからの駆動を伝達されても良く、また、減速機が省略されていてもよい。なお、第２回転軸Ｏ２は、第１回転軸Ｏ１に直交する軸と平行であってもよい。
【００２４】
第２アーム１３と第３アーム１４とは、関節（ジョイント）１７３を介して連結されている。そして、第３アーム１４は、第２アーム１３に対して水平方向と平行な回転軸Ｏ３を回転中心とし、その第３回転軸Ｏ３回りに回動可能となっている。第３回転軸Ｏ３は、第２回転軸Ｏ２と平行である。この第３回転軸Ｏ３回りの回動は、第３駆動源４０３の駆動によりなされる。また、第３駆動源４０３は、モーター４０３Ｍとケーブル（図示せず）によって駆動され、このモーター４０３Ｍは電気的に接続されたモータードライバー３０３を介して制御装置２０により制御される。第３駆動源４０３はモーター４０３Ｍの他に減速機（図示せず）も設けてモーター４０３Ｍからの駆動を伝達されても良く、また、減速機が省略されていてもよい。
【００２５】
第３アーム１４と第４アーム１５とは、関節（ジョイント）１７４を介して連結されている。そして、第４アーム１５は、第３アーム１４（基台１１）に対し、第３アーム１４の中心軸方向と平行な第４回転軸Ｏ４を回転中心とし、その第４回転軸Ｏ４回りに回動自在となっている。第４回転軸Ｏ４は、第３回転軸Ｏ３と直交している。この第４回転軸Ｏ４回りの回動は、第４駆動源４０４の駆動によりなされる。また、第４駆動源４０４は、モーター４０４Ｍとケーブル（図示せず）によって駆動され、このモーター４０４Ｍは電気的に接続されたモータードライバー３０４を介して制御装置２０により制御される。第４駆動源４０４はモーター４０４Ｍとともに設けた減速機（図示せず）によってモーター４０４Ｍからの駆動を伝達されてもよく、また、減速機が省略されていてもよい。なお、第４回転軸Ｏ４は、第３回転軸Ｏ３に直交する軸と平行であってもよい。
【００２６】
第４アーム１５とリスト１６とは、関節（ジョイント）１７５を介して連結されている。そして、リスト１６は、第４アーム１５に対して水平方向（ｙ軸方向）と平行な第５回転軸Ｏ５を回転中心とし、その第５回転軸Ｏ５回りに回動自在となっている。第５回転軸Ｏ５は、第４回転軸Ｏ４と直交している。この第５回転軸Ｏ５回りの回動は、第５駆動源４０５の駆動によりなされる。また、第５駆動源４０５は、モーター４０５Ｍとケーブル（図示せず）によって駆動され、このモーター４０５Ｍは電気的に接続されたモータードライバー３０５を介して制御装置２０により制御される。第５駆動源４０５はモーター４０５Ｍとともに設けた減速機（図示せず）によってモーター４０５Ｍからの駆動を伝達されてもよく、また、減速機が省略されていてもよい。また、リスト１６は、関節（ジョイント）１７６を介して、第５回転軸Ｏ５と垂直な第６回転軸Ｏ６を回転中心とし、その第６回転軸Ｏ６回りにも回動自在となっている。回転軸Ｏ６は、回転軸Ｏ５と直交している。この第６回転軸Ｏ６回りの回動は、第６駆動源４０６駆動によりなされる。また、第６駆動源４０６の駆動は、モーター４０６Ｍとケーブル（図示せず）によって駆動され、このモーター４０６Ｍは電気的に接続されたモータードライバー３０６を介して制御装置２０により制御される。第６駆動源４０６はモーター４０６Ｍの他に減速機（図示せず）も設けてモーター４０６Ｍからの駆動を伝達されても良く、また、減速機が省略されていてもよい。なお、第５回転軸Ｏ５は、第４回転軸Ｏ４に直交する軸と平行であってもよく、また、第６回転軸Ｏ６は、第５回転軸Ｏ５に直交する軸と平行であってもよい。
【００２７】
駆動源４０１〜４０６には、それぞれのモーターまたは減速機に、第１角度センサー４１１、第２角度センサー４１２、第３角度センサー４１３、第４角度センサー４１４、第５角度センサー４１５、第６角度センサー４１６が設けられている。これらの角度センサーとして、エンコーダ、ロータリーエンコーダ等が用いることができる。これらの角度センサー４１１〜４１６により、それぞれ、駆動源４０１〜４０６のモーターあるいは減速機の回転軸の回転角度を検出する。この駆動源４０１〜４０６のモーターとしては、それぞれ、特に限定されず、例えば、ＡＣサーボモーター、ＤＣサーボモーター等のサーボモーターを用いるのが好ましい。また、前記各ケーブルは、それぞれ、ロボット本体１０を挿通していてもよい。
【００２８】
ロボット本体１０は、制御装置２０と電気的に接続されている。すなわち、駆動源４０１〜４０６、角度センサー４１１〜４１６は、それぞれ、制御装置２０と電気的に接続されている。
そして、制御装置２０は、アーム１２〜１５、リスト１６をそれぞれ独立して作動させることができる、すなわち、モータードライバー３０１〜３０６を介して、駆動源４０１〜４０６をそれぞれ独立して制御することができる。この場合、制御装置２０は、角度センサー４１１〜４１６により検出を行い、その検出結果に基づいて、駆動源４０１〜４０６の駆動、例えば、角加速度、角速度、回転角度等をそれぞれ制御する。この制御プログラムは、制御装置２０に内蔵された記録媒体に予め記憶されている。
【００２９】
図１、図２に示すように、基台１１は、ロボット１が垂直多関節ロボットの場合、当該垂直多関節ロボットの最も下方に位置し、設置スペースの床１０１に固定される部分である。この固定方法としては、特に限定されず、例えば、図１、図２に示す本実施形態では、複数本のボルト１１１による固定方法を用いている。なお、基台１１の設置スペースでの固定箇所としては、床の他に、設置スペースの壁や天井とすることもできる。
【００３０】
基台１１は、中空の基台本体（ハウジング）１１２を有している。基台本体１１２は、円筒状をなす円筒状部１１３と、当該円筒状部１１３の外周部に一体的に形成された、箱状をなす箱状部１１４とに分けることができる。そして、このような基台本体１１２には、例えば、モーター４０１Ｍやモータードライバー３０１〜３０６が収納されている。
アーム１２〜１５は、それぞれ、中空のアーム本体２と、駆動機構３と、封止手段４とを有している。なお、以下では、説明の都合上、第１アーム１２が有するアーム本体２、駆動機構３、封止手段４をそれぞれ「アーム本体２ａ」、「駆動機構３ａ」、「封止手段４ａ」と言い、第２アーム１３が有するアーム本体２、駆動機構３、封止手段４をそれぞれ「アーム本体２ｂ」、「駆動機構３ｂ」、「封止手段４ｂ」と言い、第３アーム１４が有するアーム本体２、駆動機構３、封止手段４をそれぞれ「アーム本体２ｃ」、「駆動機構３ｃ」、「封止手段４ｃ」と言い、第４アーム１５が有するアーム本体２、駆動機構３、封止手段４をそれぞれ「アーム本体２ｄ」、「駆動機構３ｄ」、「封止手段４ｄ」と言うことがある。
【００３１】
また、関節１７１〜１７６は、それぞれ、回動支持機構（図示せず）を有している。この回動支持機構は、互いに連結された２本のアームのうちの一方を他方に対し回動可能に支持する機構、互いに連結された基台１１と第１アーム１２のうちの一方を他方に対し回動可能に支持する機構、互いに連結された第４アーム１５と第５リスト１６のうちの一方を他方に対し回動可能に支持する機構である。互いに連結された第４アーム１５とリスト１６とを一例とした場合、回動支持機構は、リスト１６を第４アーム１５に対し回動させることができる。また、各回動支持機構は、それぞれ、対応するモーターの回転速度を所定の減速比で減速して、その駆動力を対応するアーム、リスト１６のリスト本体１６１、支持リング１６２に伝達する減速機（図示せず）を有している。
【００３２】
第１アーム１２は、基台１１の上端部（先端部）に水平方向に対し傾斜した姿勢で連結されている。この第１アーム１２では、駆動機構３ａがモーター４０２Ｍを有しており、アーム本体２ａ内に収納している。また、アーム本体２ａ内は、封止手段４ａにより気密封止されている。
第２アーム１３は、第１アーム１２の先端部に連結されている。この第２アーム１３では、駆動機構３ｂがモーター４０３Ｍを有しており、アーム本体２ｂ内に収納している。また、アーム本体２ａ内は、封止手段４ｂにより気密封止されている。
第３アーム１４は、第２アーム１３の先端部に連結されている。この第３アーム１４では、駆動機構３ｃがモーター４０４Ｍを有しており、アーム本体２ｃ内に収納している。また、アーム本体２ｃ内は、封止手段４ｃにより気密封止されている。
【００３３】
第４アーム１５は、第３アーム１４の先端部に、その中心軸方向と平行に連結されている。このアーム１５では、駆動機構３ｄがモーター４０５Ｍ、４０６Ｍを有しており、アーム本体２ｄ内に収納している。また、アーム本体２ｄ内は、封止手段４ｄにより気密封止されている。
第４アーム１５の先端部（基台１１と反対側の端部）には、リスト１６が連結されている。このリスト１６には、その先端部（第４アーム１５と反対側の端部）に、例えば、腕時計等のような精密機器を把持するマニピュレーター（図示せず）が着脱自在に装着される。なお、マニピュレーターとしては、特に限定されず、例えば、複数本の指部（フィンガー）を有する構成のものが挙げられる。そして、このロボット１は、マニピュレーターで精密機器を把持したまま、アーム１２〜１５やリスト１６等の動作を制御することにより、当該精密機器を搬送することができる。なお、前記精密機器は、ロボット１のロボット本体１０が作業する対象物の１例である。
【００３４】
リスト１６は、円筒状をなすリスト本体（第６アーム）１６１と、リスト本体１６１と別体で構成され、当該リスト本体１６１の基端部に設けられ、リング状をなす支持リング（第５アーム）１６２とを有している。
リスト本体１６１の先端面１６３は、平坦な面となっており、マニピュレーターが装着される装着面となる。また、リスト本体１６１は、関節１７６を介して、第４アーム１５の駆動機構３ｄに連結されており、当該駆動機構３ｄのモーター４０６Ｍの駆動により、回転軸Ｏ６回りに回動する。
支持リング１６２は、関節１７５を介して、第４アーム１５の駆動機構３ｄに連結されており、当該駆動機構３ｄのモーター４０５Ｍの駆動により、リスト本体１６１ごと回転軸Ｏ５回りに回動する。
【００３５】
第１電子カメラ７１および第２電子カメラ７２は、それぞれ、撮像素子を有し、ロボット１のロボット本体１０が作業する対象物に設定された後述する参照点の周辺、すなわち、対象物を撮像する装置である。第１電子カメラ７１および第２電子カメラ７２により撮像し、得られた撮像データは、それぞれ、制御装置２０に入力される。制御装置２０は、前記画像データに基づいて、対象物の位置、すなわち、参照点の位置（座標）を求める。なお、２つの電子カメラを設けることにより、参照点の位置を確実に求めることができる。
また、第１電子カメラ７１および第２電子カメラ７２は、それぞれ、ロボット本体１０から所定距離離間した位置に設置されている。これにより、ロボット本体１０が作動しても第１電子カメラ７１および第２電子カメラ７２は、常に、一定の位置にあり、容易に、参照点の位置を求めることができる。
【００３６】
次に、図１、図２、図４を参照し、制御装置２０の構成について説明する。
制御装置２０は、第１駆動源４０１、第２駆動源４０２、第３駆動源４０３、第４駆動源４０４、第５駆動源４０５、第６駆動源４０６の作動をそれぞれ制御する装置である。この制御装置２０は、ベクトル場設定部６１と、軌道生成部６２と、角速度制御部６３と、駆動源制御部６４とを有している。なお、角速度制御部６３および駆動源制御部６４により、各駆動源４０１〜４０６の作動、すなわち、各アーム１２〜１５、リスト１６の作動を制御する制御部が構成される。
【００３７】
また、ベクトル場設定部６１は、仮想斥力ベクトル場設定部６１１と、仮想引力ベクトル場設定部６１２とを有している。
また、軌道生成部６２は、仮想斥力データ取得部６２１と、第１トルクデータ取得部６２２と、仮想引力データ取得部６２３と、第２トルクデータ取得部６２４と、駆動データ取得部６２５とを有している。
【００３８】
仮想斥力ベクトル場設定部６１１は、第１電子カメラ７１および第２電子カメラ７２により撮像して得られた撮像データに基づいて、対象物に設定された参照点を認識し、第１電子カメラ７１および第２電子カメラ７２と参照点を結ぶ直線を求め、その直線を仮想斥力発生源とする仮想斥力ベクトルで構成される仮想斥力ベクトル場を設定する機能を有している。
仮想斥力データ取得部６２１は、アーム１２〜１５、リスト１６に第１代表点を設定し、仮想斥力ベクトル場において第１代表点に作用する仮想斥力を求める機能を有している。
【００３９】
第１トルクデータ取得部６２２は、仮想斥力データ取得部６２１により求められた斥力に基づいて、その仮想斥力により生じ、アーム１２〜１５、リスト１６に作用し、回転軸Ｏ１〜Ｏ６の回りの第１トルクを求める機能を有している。
仮想引力ベクトル場設定部６１２は、参照点を仮想引力発生源とする仮想引力ベクトルで構成される仮想引力ベクトル場を設定する機能を有している。
【００４０】
仮想引力データ取得部６２３は、アーム１２〜１５、リスト１６に第２代表点を設定し、仮想引力ベクトル場において第２代表点に作用する仮想引力を求める機能を有している。
第２トルクデータ取得部６２４は、仮想引力データ取得部６２３により求められた仮想引力に基づいて、その仮想引力により生じ、アーム１２〜１５、リスト１６に作用し、回転軸Ｏ１〜Ｏ６の回りの第２トルクを求める機能を有している。
駆動データ取得部６２５は、第１トルクデータ取得部６２２により求められた第１トルク、第２トルクデータ取得部６２４により求められた第２トルクおよびアーム１２〜１５、リスト１６の回転軸Ｏ１〜Ｏ６の回りの慣性モーメントに基づいて、アーム１２〜１５、リスト１６の回転角度、角速度および角加速度をそれぞれ求める機能を有している。
【００４１】
角速度制御部６３および駆動源制御部６４は、第１トルクデータ取得部６２２により求められた第１トルク、第２トルクデータ取得部６２４により求められた第２トルクおよびアーム１２〜１５、リスト１６の回転軸Ｏ１〜Ｏ６の回りの慣性モーメントに基づいて、アーム１２〜１５、リスト１６の作動を制御する機能を有している。すなわち、角速度制御部６３および駆動源制御部６４は、アーム１２〜１５、リスト１６が駆動データ取得部６２５により求められた前記角速度および前記角加速度で前記回転角度、回動するようにアーム１２〜１５、リスト１６の作動を制御する機能を有している。
【００４２】
ここで、制御装置２０は、ロボット１が行う処理の内容や、第１電子カメラ７１および第２電子カメラ７２により撮像して得た画像データ等に基づいてリスト１６の先端部の目標位置、すなわち、リスト１６に装着されたエンドエフェクタの目標位置を求め、その目標位置にエンドエフェクタを移動させるための各アーム１２〜１５、リスト１６の軌道を生成する。この軌道は、所定の制御周期ごとに少しずつ生成される。
【００４３】
具体的には、制御装置２０は、前記軌道の生成の際は、エンドエフェクタが目標位置に向って移動するように、所定の制御周期ごとに、アーム１２〜１５、リスト１６の回転角度、角速度、角加速度の目標値、すなわち、各駆動源４０１〜４０６の回転角度、角速度、角加速度の目標値を求める。そして、所定の制御周期ごとに、各駆動源４０１〜４０６の回転角度、角速度、角加速度の目標値を示す信号である各駆動源４０１〜４０６の位置指令Ｐｃが生成される。
なお、前記および以下では、「値が入力、出力」等と表記しているが、これは、「その値に対応する信号が入力、出力」の意味である。
【００４４】
角速度制御部６３では、第１駆動源４０１の位置指令Ｐｃを軌道生成部６２から入力されるとともに、角速度制御部６３には、第１角度センサー４１１から検出信号が入力される。角速度制御部６３は、第１角度センサー４１１の検出信号から算出される第１駆動源４０１の回転角度（位置フィードバック値Ｐｆｂ）が位置指令Ｐｃになり、かつ、後述する角速度フィードバック値ωｆｂが後述する角速度指令ωｃになるように、各検出信号を用いたフィードバック制御によって第１駆動源４０１を駆動する。
【００４５】
すなわち、角速度制御部６３の第１減算器（図示せず）には、位置指令Ｐｃが入力され、また、後述する位置フィードバック値Ｐｆｂが入力される。角速度制御部６３では、第１角度センサー４１１から入力されるパルス数がカウントされるとともに、そのカウント値に応じた第１駆動源４０１の回転角度が位置フィードバック値Ｐｆｂとして第１減算器に出力される。第１減算器は、これら位置指令Ｐｃと位置フィードバック値Ｐｆｂとの偏差（第１駆動源４０１の回転角度の目標値から位置フィードバック値Ｐｆｂを減算した値）を出力する。
【００４６】
また、角速度制御部６３は、第１減算器から入力された偏差と、予め定められた係数である比例ゲイン等を用いた所定の演算処理を行うことで、その偏差に応じた第１駆動源４０１の角速度の目標値を演算する。そして、その第１駆動源４０１の角速度の目標値（指令値）を示す信号を角速度指令（第１角速度指令）ωｃとして第２減算器（図示せず）に出力する。なお、ここでは、本実施形態では、フィードバック制御として、比例制御（Ｐ制御）がなされるが、これに限定されるものではない。
【００４７】
また、角速度制御部６３は、第１角度センサー４１１から入力されるパルス信号の周波数に基づいて、第１駆動源４０１の角速度が算出され、その角速度が角速度フィードバック値ωｆｂとして第２減算器に出力される。
第２減算器には、角速度指令ωｃが入力され、また、角速度フィードバック値ωｆｂが入力される。第２減算器は、これら角速度指令ωｃと角速度フィードバック値ωｆｂとの偏差（第１駆動源４０１の角速度の目標値から角速度フィードバック値ωｆｂを減算した値）を出力する。
【００４８】
また、角速度制御部６３は、第２減算器から入力された偏差と、予め定められた係数である比例ゲイン、積分ゲイン等を用い、積分を含む所定の演算処理を行うことで、その偏差に応じた第１駆動源４０１の角加速度（トルク）の目標値を演算する。そして角速度制御部６３１は、その第１駆動源４０１の角加速度の目標値（指令値）を示す信号を角加速度指令（トルク指令）として駆動源制御部６４に出力する。なお、ここでは、本実施形態では、フィードバック制御として、ＰＩ制御がなされるが、これに限定されるものではない。
【００４９】
駆動源制御部６４は、角速度制御部６３から入力された角加速度指令に基づいて、第１駆動源４０１の駆動信号（駆動電流）を生成し、モータードライバー３０１を介してモーター４０１Ｍに供給する。
このようにして、第１駆動源４０１の角加速度、すなわち、トルクがその目標値と可及的に等しくなり、かつ、位置フィードバック値Ｐｆｂが位置指令Ｐｃと可及的に等しくなるとともに、角速度フィードバック値ωｆｂが角速度指令ωｃと可及的に等しくなるように、フィードバック制御がなされ、第１駆動源４０１の駆動電流が制御される。
なお、駆動源制御部６４による駆動源４０２〜４０６の制御については、それぞれ、前記第１駆動源４０１の制御と同様であるので、その説明は省略する。
【００５０】
次に、図５、図６および図７に基づいて、制御装置２０が各アーム１２〜１５、リスト１６の軌道を生成する際の手順について、説明する。なお、各アーム１２〜１５、リスト１６の軌道を生成する際の手順は、同様であるので、以下では、代表的に、第１アーム１２の軌道を生成する際の手順について、説明する。また、ロボットが作業を行う作業空間は、本来は、３次元であるが、ここでは、理解を容易にするため、２次元とし、互いに直交するｘ軸およびｚ軸を有する２次元座標を想定する（図５参照）。また、本実施形態では、電子カメラの数は２つであり、各電子カメラと参照点とを結ぶ直線は２本あるが、ここでは、理解を容易にするため、その２本の直線のうち、代表的に、１本の直線、すなわち第１電子カメラ７１と参照点とを結ぶ直線９５（図５参照）を設定して説明する。
【００５１】
なお、制御装置２０は、第１電子カメラ７１、第２電子カメラ７２の位置、初期の各アーム１２〜１５、リスト１６、エンドエフェクタの位置および姿勢を把握している。また、制御装置２０は、各アーム１２〜１５、リスト１６が作動する際の各駆動源４０１〜４０６の回転角度を把握しており、各回転角度から、各アーム１２〜１５、リスト１６の位置および姿勢を常に把握している。これにより、制御装置２０は、後述する第１代表点および第２代表点の位置（座標）を常に把握している。
【００５２】
まず、全体を簡単に説明すると、図７に示すように、ロボット１の制御装置２０が実行する制御方法は、撮像を行う撮像工程（ステップＳ１０１）と、参照点９１を認識する認識工程（ステップＳ１０２）と、第１電子カメラ７１と参照点９１とを結ぶ直線９５を設定する直線設定工程（ステップＳ１０３）と、仮想斥力ベクトル場を設定する仮想斥力ベクトル場設定工程（ステップＳ１０４）と、第１代表点を設定する第１代表点設定工程（ステップＳ１０５）と、仮想斥力を求める仮想斥力取得工程（ステップＳ１０６）と、第１トルクを求める第１トルク取得工程（ステップＳ１０７）と、仮想引力ベクトル場を設定する仮想引力ベクトル場設定工程（ステップＳ１０８）と、第２代表点を設定する第２代表点設定工程（ステップＳ１０９）と、仮想引力を求める仮想引力取得工程（ステップＳ１１０）と、第２トルクを求める第２トルク取得工程（ステップＳ１１１）と、回転角度、角速度および角加速度を求める駆動データ取得工程（ステップＳ１１２）とを有している。
【００５３】
なお、仮想斥力ベクトル場設定工程と、仮想引力ベクトル場設定工程とは、仮想引力ベクトル場設定工程を先に行ってもよく、また、同時に行ってもよい。
また、第１代表点設定工程と、第２代表点設定工程とは、第２代表点設定工程を先に行ってもよく、また、同時に行ってもよい。
また、仮想斥力取得工程と、仮想引力取得工程とは、仮想引力取得工程を先に行ってもよく、また、同時に行ってもよい。
また、第１トルク取得工程と、第２トルク取得工程とは、第２トルク取得工程を先に行ってもよく、また、同時に行ってもよい。
【００５４】
以下、具体的に説明する。
まず、図５および図６に示すように、ロボット１の制御装置２０は、第１電子カメラ７１により、ロボット１（ロボット本体１０）が作業する対象物９０に設定された参照点９１の周辺を撮像し、撮像データを得る。制御装置２０は、前記画像データに基づいて、対象物９０の位置、すなわち、参照点９１の位置（座標）を求める。
【００５５】
次に、制御装置２０の仮想斥力ベクトル場設定部６１１は、第１電子カメラ７１と参照点とを結ぶ直線９５を求め、その直線９５を仮想斥力発生源とする仮想斥力ベクトルで構成される仮想斥力ベクトル場を設定する。なお、前記直線９５を求めるうえでの第１電子カメラ７１の位置として、その第１電子カメラ７１の所定の点の位置（座標）が予め設定されている。
なお、２次元座標は、ここでは、その原点が、前記第１電子カメラ７１の所定の点と一致し、ｚ軸が、第１電子カメラ７１と参照点とを結ぶ直線と一致するように設定される。
【００５６】
前記仮想斥力ベクトル場としては、特に限定されず、諸条件に応じて適宜設定されるものであるが、ここでは、仮想斥力ベクトル場の１例を示す。
まず、ｘ＞０の場合、仮想斥力ベクトル場を求めるための各座標（ｘ、ｚ）におけるポテンシャルＶは、下記（１）式で示される。
Ｖ＝ｋ・ｚ／ｘ      ・・・（１）
但し、上記（１）式中のｋは、係数である。
【００５７】
そして、ｘ＞０の場合の各座標（ｘ、ｚ）における仮想斥力ベクトルｆ（ｘ、ｚ）のｘ成分およびｚ成分、すなわち、仮想斥力ベクトル場は、下記（２）式で示される。
ｆ（ｘ、ｚ）＝−∇・Ｖ
＝（ｋ・ｚ／ｘ２、−ｋ／ｘ）      ・・・（２）
また、ｘ＜０の場合、仮想斥力ベクトル場を求めるための各座標（ｘ、ｚ）におけるポテンシャルＶは、下記（３）式で示される。
Ｖ＝−ｋ・ｚ／ｘ      ・・・（３）
但し、上記（３）式中のｋは、係数である。
【００５８】
そして、ｘ＜０の場合の各座標（ｘ、ｚ）における仮想斥力ベクトルｆ（ｘ、ｚ）のｘ成分およびｚ成分、すなわち、仮想斥力ベクトル場は、下記（４）式で示される。
ｆ（ｘ、ｚ）＝−∇・Ｖ
＝（−ｋ・ｚ／ｘ２、ｋ／ｘ）      ・・・（４）
上記（２）式および（４）式で示される仮想斥力ベクトル場を設定する。
【００５９】
なお、前記仮想斥力ベクトル場における仮想斥力ベクトルの大きさ、すなわち、仮想斥力ベクトルのｘ成分およびｚ成分の大きさは、それぞれ、第１電子カメラ７１と参照点９１を結ぶ直線９５に近いほど大きい。これにより、第１電子カメラ７１と参照点９１を結ぶ直線９５から第１アーム１２を遠ざけることができ、第１電子カメラ７１により対象物９０を撮像するとき、第１アーム１２が対象物９０を遮ることを防止することができる。
【００６０】
また、前記仮想斥力ベクトル場における仮想斥力ベクトルの大きさ、すなわち、仮想斥力ベクトルのｘ成分の大きさは、それぞれ、参照点９１に近いほど大きい。これにより、対象物９０に近いほど、第１電子カメラ７１と参照点９１を結ぶ直線９５から第１アーム１２を遠ざけることができる。第１電子カメラ７１の視野は、第１電子カメラ７１から遠いほど広く、すなわち、参照点９１に近いほど広くなるので、これにより、第１電子カメラ７１により対象物９０を撮像するとき、第１アーム１２が対象物を遮ることをより確実に防止することができる。
【００６１】
次に、仮想斥力データ取得部６２１は、第１アーム１２に第１代表点９２を設定し、仮想斥力ベクトル場において第１代表点９２に作用する仮想斥力を求める。
この第１代表点９２の数は、特に限定されず、１つでもよく、また、複数でもよいが、複数であることが好ましい。具体的には、２以上、３０以下であることが好ましく、３以上、１０以下であることがより好ましい。また、第１代表点９２の数が比較的多い場合は、各第１代表点は、均一に配置されることが好ましい。これにより、より正確に、第１アーム１２に作用し、第１回転軸Ｏ１の回りの第１トルクを求めることができる。
【００６２】
次に、第１トルクデータ取得部６２２は、仮想斥力データ取得部６２１により求められた仮想斥力に基づいて、その仮想斥力により生じ、第１アーム１２に作用する第１回転軸Ｏ１の回りの第１トルクを求める。第１代表点９２が複数の場合は、第１トルクは、各第１代表点９２に作用する仮想斥力から求めた各トルクの合計値である。
なお、仮に、第１アーム１２が最先端のアームである場合は、第１アーム１２には、第１アーム１２に作用する仮想斥力のみから生じるトルクだけが作用する。このため、第１アーム１２に作用する仮想斥力のみから、第１トルクを求める。
【００６３】
しかし、第１アーム１２の先端側には、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６が存在するので、第１アーム１２には、第１アーム１２に作用する仮想斥力のみから生じるトルクだけでなく、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力により生じるトルクも作用する。このため、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力から、第１トルクを求める。すなわち、第１アーム１２に作用する第１トルクは、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力により生じ、第１アーム１２に作用する各トルクの合計値である。
【００６４】
ここで、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力により生じ、第１アーム１２に作用する各トルクの求め方として、代表的に、第２アーム１３に作用する仮想斥力により生じ、第１アーム１２に作用するトルクの求め方を説明する。
まず、第２アーム１３に作用する仮想斥力のうち、第２回転軸Ｏ２の回転成分に寄与するトルクとなる仮想斥力成分は、第１アーム１２に作用しない。このため、第２アーム１３に作用する仮想斥力により生じ、第１アーム１２に作用するトルクは、第２アーム１３に作用する仮想斥力のうち、第２アーム１３に作用するトルクとなる仮想斥力成分に対して垂直な仮想成分が、第１アーム１２のうちの第２アーム１３の第２回転軸Ｏ２の位置に作用しているものとして求める。
【００６５】
次に、仮想引力ベクトル場設定部６１２は、参照点９１を仮想引力発生源とする仮想引力ベクトルで構成される仮想引力ベクトル場を設定する。
前記仮想引力ベクトル場としては、特に限定されず、諸条件に応じて適宜設定されるものであるが、ここでは、仮想引力ベクトル場の１例を示す。
まず、参照点９１の座標を（ｘ０、ｚ０）としたとき、仮想引力ベクトル場を求めるための各座標（ｘ、ｚ）におけるポテンシャルＶは、下記（５）式で示される。
Ｖ＝−Ｌ／{（ｘ−ｘ０）２＋（ｚ−ｚ０）２}１／２        ・・・（５）
但し、上記（５）式中のＬは、係数である。
【００６６】
そして、各座標（ｘ、ｚ）における仮想引力ベクトルｆ（ｘ、ｚ）のｘ成分およびｚ成分、すなわち、仮想引力ベクトル場は、下記（６）式で示される。
ｆ（ｘ、ｚ）＝−∇・Ｖ
＝（−Ｌ（ｘ−ｘ０）／{（ｘ−ｘ０）２＋（ｚ−ｚ０）２}３／２、−Ｌ（ｚ−ｚ０）／{（ｘ−ｘ０）２＋（ｚ−ｚ０）２}３／２）      ・・・（６）
上記（６）式で示される仮想引力ベクトル場を設定する。
なお、前記仮想引力ベクトル場における仮想引力ベクトルの大きさ、すなわち、仮想引力ベクトルのｘ成分およびｚ成分の大きさは、それぞれ、参照点９１に近いほど大きい。
【００６７】
次に、仮想引力データ取得部６２３は、第１アーム１２に第２代表点９３を設定し、仮想引力ベクトル場において第２代表点９３に作用する仮想引力を求める。
この第２代表点９３の数は、特に限定されず、１つでもよく、また、複数でもよいが、複数であることが好ましい。具体的には、２以上、３０以下であることが好ましく、３以上、１０以下であることがより好ましい。また、第２代表点９３の数が比較的多い場合は、各第２代表点９３は、均一に配置されることが好ましい。これにより、より正確に、第１アーム１２に作用し、第１回転軸Ｏ１の回りの第２トルクを求めることができる。
なお、第２代表点９３と、第１第代表点９２とは、同一でもよく、また、異なっていてもよいが、同一にすることで、制御をより簡素化することができる。
【００６８】
次に、第２トルクデータ取得部６２４は、仮想引力データ取得部６２３により求められた仮想引力に基づいて、その仮想引力により生じ、第１アーム１２に作用する第１回転軸Ｏ１の回りの第２トルクを求める。第２代表点９３が複数の場合は、第２トルクは、各第２代表点９３に作用する仮想引力から求めた各トルクの合計値である。
なお、仮に、第１アーム１２が最先端のアームである場合は、第１アーム１２には、第１アーム１２に作用する仮想引力のみから生じるトルクだけが作用する。このため、第１アーム１２に作用する仮想引力のみから、第２トルクを求める。
【００６９】
しかし、第１アーム１２の先端側には、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６が存在するので、第１アーム１２には、第１アーム１２に作用する仮想引力のみから生じるトルクだけでなく、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想引力により生じるトルクも作用する。このため、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想引力から、第２トルクを求める。すなわち、第１アーム１２に作用する第２トルクは、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想引力により生じ、第１アーム１２に作用する各トルクの合計値である。
なお、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想引力により生じ、第１アーム１２に作用する各トルクは、それぞれ、前記第１トルクと同様にして求める。
【００７０】
次に、駆動データ取得部６２５は、第１トルク、第２トルクおよび第１アーム１２の第１回転軸Ｏ１の回りの慣性モーメントに基づいて、第１アーム１２の回転角度、角速度および角加速度をそれぞれ求め、これらが目標値とされる。
なお、前記第１アーム１２の第１回転軸Ｏ１の回りの慣性モーメントとは、仮に、第１アーム１２が最先端のアームである場合は、第１アーム１２のみの慣性モーメントであるが、第１アーム１２の先端側には、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６が存在するので、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６全体の慣性モーメントである。
【００７１】
この第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６全体の慣性モーメントは、各角度センサー４１２、４１３、４１４、４１５、４１６の検出結果により、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６の姿勢求め、それに基づいて求める。
そして、角速度制御部６３および駆動源制御部６４は、第１アーム１２が、駆動データ取得部６２５により求められた角速度および角加速度で、駆動データ取得部６２５により求められた回転角度、回動するように第１アーム１２の作動を制御する。
【００７２】
具体的には、第１アーム１２の回転角度、角速度および角加速度の目標値は、それぞれ、第１駆動源４０１の回転角度、角速度および角加速度の目標値に変換される。そして、前述したように、第１駆動源４０１の回転角度、角速度、角加速度の目標値を示す信号である位置指令Ｐｃが生成され、その位置指令Ｐｃに基づいて、前述した制御がなされる。
以上の動作は、所定の制御周期ごとに繰り返し実行され、最終的に、リスト１６の先端部に装着されたマニピュレーターが対象物９０に到達する。
【００７３】
以上説明したように、このロボット１によれば、アーム１２〜１５、リスト１６は、第１電子カメラ７１と参照点９１を結ぶ直線９５、第２電子カメラ７２と参照点９１を結ぶ直線（図示せず）を避けて回動するので、第１電子カメラ７１、第２電子カメラ７２によりロボット本体１０が作業する対象物９０を撮像するとき、アーム１２〜１５、リスト１６が対象物９０を遮ることを防止することができ、確実に対象物９０を撮像することができる。
【００７４】
＜第２実施形態＞
図８は、本発明に係わるロボットの第２実施形態の主要部のブロック図である。図９は、図８に示すロボットの作動を説明するための図である。図１０は、図８に示すロボットの制御動作を示すフローチャートである。図９には、ロボットのうち第１アームのみを模式的に示す。
以下、第２実施形態について、前述した第１実施形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
第２実施形態のロボット１では、障害物が存在する場合でもその障害物を避けて作動するよう構成されている。
【００７５】
図８に示すように、第２実施形態のロボット１では、制御装置２０のベクトル場設定部６１は、第１仮想斥力ベクトル場設定部６１３と、第２仮想斥力ベクトル場設定部６１４と、仮想引力ベクトル場設定部６１２とを有している。
また、軌道生成部６２は、第１仮想斥力データ取得部６２６と、第１トルクデータ取得部６２２と、仮想引力データ取得部６２３と、第２トルクデータ取得部６２４と、第２斥力データ取得部６２７と、第３トルクデータ取得部６２８と、駆動データ取得部６２５とを有している。
【００７６】
第１仮想斥力ベクトル場設定部６１３は、第１電子カメラ７１および第２電子カメラ７２により撮像して得られた撮像データに基づいて、対象物に設定された参照点を認識し、第１電子カメラ７１および第２電子カメラ７２と参照点を結ぶ直線を求め、その直線を仮想斥力発生源とする仮想斥力ベクトルで構成される第１仮想斥力ベクトル場を設定する機能を有している。
【００７７】
第１仮想斥力データ取得部６２６は、アーム１２〜１５、リスト１６に第１代表点を設定し、第１仮想斥力ベクトル場において第１代表点に作用する仮想斥力を求める機能を有している。
第１トルクデータ取得部６２２は、第１仮想斥力データ取得部６２６により求められた仮想斥力に基づいて、その仮想斥力により生じ、アーム１２〜１５、リスト１６に作用し、回転軸Ｏ１〜Ｏ６の回りの第１トルクを求める機能を有している。
【００７８】
仮想引力ベクトル場設定部６１２は、参照点を仮想引力発生源とする仮想引力ベクトルで構成される仮想引力ベクトル場を設定する機能を有している。
仮想引力データ取得部６２３は、アーム１２〜１５、リスト１６に第２代表点を設定し、仮想引力ベクトル場において第２代表点に作用する仮想引力を求める機能を有している。
【００７９】
第２トルクデータ取得部６２４は、仮想引力データ取得部６２３により求められた仮想引力に基づいて、その仮想引力により生じ、アーム１２〜１５、リスト１６に作用し、回転軸Ｏ１〜Ｏ６の回りの第２トルクを求める機能を有している。
第２斥力ベクトル場設定部６１４は、第１電子カメラ７１および第２電子カメラ７２により撮像して得られた撮像データに基づいて、障害物を認識し、障害物を斥力発生源とする仮想斥力ベクトルで構成される第２仮想斥力ベクトル場を設定する機能を有している。
【００８０】
第２仮想斥力データ取得部６２７は、アーム１２〜１５、リスト１６に第３代表点を設定し、第２仮想斥力ベクトル場において第３代表点に作用する斥力を求める機能を有している。
第３トルクデータ取得部６２８は、第２仮想斥力データ取得部６２７により求められた仮想斥力に基づいて、その仮想斥力により生じ、アーム１２〜１５、リスト１６に作用し、回転軸Ｏ１〜Ｏ６の回りの第３トルクを求める機能を有している。
【００８１】
駆動データ取得部６２５は、第１トルクデータ取得部６２２により求められた第１トルク、第２トルクデータ取得部６２４により求められた第２トルク、第３トルクデータ取得部６２７により求められた第３トルクおよびアーム１２〜１５、リスト１６の回転軸Ｏ１〜Ｏ６の回りの慣性モーメントに基づいて、アーム１２〜１５、リスト１６の回転角度、角速度および角加速度をそれぞれ求める機能を有している。
【００８２】
角速度制御部６３および駆動源制御部６４は、第１トルクデータ取得部６２２により求められた第１トルク、第２トルクデータ取得部６２４により求められた第２トルク、第３トルクデータ取得部６２７により求められた第３トルクおよびアーム１２〜１５、リスト１６の回転軸Ｏ１〜Ｏ６の回りの慣性モーメントに基づいて、アーム１２〜１５、リスト１６の作動を制御する機能を有している。すなわち、角速度制御部６３および駆動源制御部６４は、アーム１２〜１５、リスト１６が駆動データ取得部６２５により求められた前記角速度および前記角加速度で前記回転角度、回動するようにアーム１２〜１５、リスト１６の作動を制御する機能を有している。
なお、第１仮想斥力ベクトル場設定部６１３は、第１実施形態の仮想斥力ベクトル場設定部６１１と同様であり、第１仮想斥力データ取得部６２６は、第１実施形態の仮想斥力データ取得部６２１と同様であるので、その説明は省略する。
【００８３】
また、第２仮想斥力ベクトル場は、第１実施形態の仮想斥力ベクトル場や仮想引力ベクトル場と同様に、作業空間内の各座標に仮想斥力ベクトルを定義することで行う。すなわち、第２仮想斥力ベクトル場は、第１実施形態の仮想斥力ベクトル場や仮想引力ベクトル場のように、例えば、関数として設定する。
この第２仮想斥力ベクトル場としては、特に限定されず、諸条件に応じて適宜設定されるものであるが、ここでは、作業空間内の各座標（ｘ、ｚ）における仮想斥力ベクトルｆ（ｘ、ｚ）のｘ成分およびｚ成分は、それぞれ、障害物８１、８２（図９参照）に近いほど大きく設定する。これにより、アーム１２〜１５、リスト１６は、障害物８１、８２を避けつつ回動することができる。なお、ここでは、障害物８１は、対象物を載置する作業台である。
【００８４】
具体的には、各座標に設定される仮想斥力ベクトルの方向は障害物８１、８２の表面の法線方向、すなわち障害物８１、８２の表面に垂直な方向とし、仮想斥力ベクトルの大きさは障害物８１、８２に近いほど大きくなるように設定する。また、作業空間に複数の障害物８１、８２が存在する場合、例えば各座標に最も近い障害物８１、８２から発生する仮想斥力ベクトルを、最終的にその座標の仮想斥力ベクトルとして設定するか、または、各障害物８１、８２から発生する仮想斥力ベクトルの合成力を仮想斥力ベクトルとして設定する。
なお、第２仮想斥力ベクトル場を設定する際、障害物８１、８２が複雑な形状で、例えば突起や極端な狭隘部を有する等のマニピュレーターの手先が通過しにくい形状や配置をとる場合は、該当箇所付近の仮想斥力ベクトルを大きくする等の重み付けを行ってもよい。
【００８５】
次に、図９および図１０に基づいて、制御装置２０が各アーム１２〜１５、リスト１６の軌道を生成する際の手順について、説明する。
まず、全体を簡単に説明すると、図１０に示すように、ロボット１の制御装置２０が実行する制御方法は、撮像を行う撮像工程（ステップＳ２０１）と、参照点９１、障害物８１、８２を認識する認識工程（ステップＳ２０２）と、第１電子カメラ７１と参照点９１とを結ぶ直線９５を設定する直線設定工程（ステップＳ２０３）と、第１仮想斥力ベクトル場を設定する第１仮想斥力ベクトル場設定工程（ステップＳ２０４）と、第１代表点を設定する第１代表点設定工程（ステップＳ２０５）と、仮想斥力を求める第１仮想斥力取得工程（ステップＳ２０６）と、第１トルクを求める第１トルク取得工程（ステップＳ２０７）と、仮想引力ベクトル場を設定する仮想引力ベクトル場設定工程（ステップＳ２０８）と、第２代表点を設定する第２代表点設定工程（ステップＳ２０９）と、仮想引力を求める仮想引力取得工程（ステップＳ２１０）と、第２トルクを求める第２トルク取得工程（ステップＳ２１１）と、第２仮想斥力ベクトル場を設定する第２仮想斥力ベクトル場設定工程（ステップＳ２１２）と、第３代表点を設定する第３代表点設定工程（ステップＳ２１３）と、仮想斥力を求める第２仮想斥力取得工程（ステップＳ２１４）と、第３トルクを求める第３トルク取得工程（ステップＳ２１５）と、回転角度、角速度および角加速度を求める駆動データ取得工程（ステップＳ２１６）とを有している。
なお、第１仮想斥力ベクトル場設定工程と、仮想引力ベクトル場設定工程と、第２仮想斥力ベクトル場設定工程とは、どの順序で行ってもよく、また、いずれか２つまたは３つを同時に行ってもよい。
【００８６】
また、第１代表点設定工程と、第２代表点設定工程と、第３代表点設定工程とは、どの順序で行ってもよく、また、いずれか２つまたは３つを同時に行ってもよい。
また、第１仮想斥力取得工程と、仮想引力取得工程と、第２仮想斥力取得工程とは、どの順序で行ってもよく、また、いずれか２つまたは３つを同時に行ってもよい。
また、第１トルク取得工程と、第２トルク取得工程と、第３トルク取得工程とは、どの順序で行ってもよく、また、いずれか２つまたは３つを同時に行ってもよい。
【００８７】
以下、具体的に説明する。
まず、図８に示すように、ロボット１の制御装置２０は、第１電子カメラ７１により、ロボット１（ロボット本体１０）が作業する対象物９０に設定された参照点９１の周辺を撮像し、撮像データを得る。制御装置２０は、前記画像データに基づいて、対象物９０の位置、すなわち、参照点９１の位置（座標）を求める。また、制御装置２０は、第１電子カメラ７１により、障害物８１、８２を撮像し、撮像データを得る。制御装置２０は、前記画像データに基づいて、障害物８１、８２の位置、すなわち、障害物８１、８２の輪郭の位置（座標）を求める。
なお、前記参照点９１の周辺の撮像と、障害物８１、８２の撮像とは、同時に行ってもよい。
【００８８】
以下、第１実施形態と同様であるので、その部分までの説明は省略する。
第２トルクが求められた後、第２仮想斥力ベクトル場設定部６１４は、前述した障害物８１、８２を仮想斥力発生源とする仮想斥力ベクトルで構成される第２仮想斥力ベクトル場を設定する。
次に、第２仮想斥力データ取得部６２７は、第１アーム１２に第３代表点９４を設定し、斥第２力ベクトル場において第３代表点９４に作用する仮想斥力を求める。
【００８９】
この第３代表点９４の数は、特に限定されず、１つでもよく、また、複数でもよいが、複数であることが好ましい。具体的には、２以上、３０以下であることが好ましく、３以上、１０以下であることがより好ましい。また、第３代表点９４の数が比較的多い場合は、各第３代表点９４は、均一に配置されることが好ましい。これにより、より正確に、第１アーム１２に作用し、第１回転軸Ｏ１の回りの第１トルクを求めることができる。
なお、第３代表９４点と、第１第代表点９２、第２第代表点９３とは、同一でもよく、また、異なっていてもよいが、同一にすることで、制御をより簡素化することができる。
【００９０】
次に、第３トルクデータ取得部６２８は、第２仮想斥力データ取得部６２７により求められた仮想斥力に基づいて、その仮想斥力により生じ、第１アーム１２に作用する第１回転軸Ｏ１の回りの第３トルクを求める。第３代表点が複数の場合は、第３トルクは、各第３代表点に作用する仮想斥力から求めた各トルクの合計値である。
なお、仮に、第１アーム１２が最先端のアームである場合は、第１アーム１２には、第１アーム１２に作用する仮想斥力のみから生じるトルクだけが作用する。このため、第１アーム１２に作用する仮想斥力のみから、第３トルクを求める。
【００９１】
しかし、第１アーム１２の先端側には、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６が存在するので、第１アーム１２には、第１アーム１２に作用する仮想斥力のみから生じるトルクだけでなく、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力により生じるトルクも作用する。このため、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力から、第３トルクを求める。すなわち、第１アーム１２に作用する第３トルクは、第１アーム１２、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する斥力により生じ、第１アーム１２に作用する各トルクの合計値である。
なお、第２アーム１３、第３アーム１４、第４アーム１５、リスト１６に作用する仮想斥力により生じ、第１アーム１２に作用する各トルクは、それぞれ、第１実施形態で述べた第１トルクと同様にして求める。
【００９２】
次に、前述した第１実施形態と同様にして、駆動データ取得部６２５は、第１トルク、第２トルク、第３トルクおよび第１アーム１２の第１回転軸Ｏ１の回りの慣性モーメントに基づいて、第１アーム１２の回転角度、角速度および角加速度をそれぞれ求める。そして、制御部は、第１アーム１２が、駆動データ取得部により求められた角速度および角加速度で、駆動データ取得部により求められた回転角度、回動するように第１アーム１２の作動を制御する。
このロボット１によれば、前述した第１実施形態と同様の効果が得られる。
また、このロボット１では、アーム１２〜１５、リスト１６が障害物８１、８２を避けつつ回動し、リスト１６の先端部に装着されたマニピュレーターが対象物９０に到達することができる。
【００９３】
以上、本発明に係わるロボットおよび動作軌道制御システムを、図示の実施形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物が付加されていてもよい。
また、本発明は、前記各実施形態のうちの、任意の２以上の構成（特徴）を組み合わせたものであってもよい。
なお、各駆動源のモーターとしては、それぞれ、前記サーボモーターの他、例えば、ステッピングモーター等が挙げられる。また、モーターとしてステッピングモーターを用いる場合は、角度センサーとして、例えば、ステッピングモーターへ入力する駆動パルスの数を計測することで、モーターの回転角度を検出するものを用いてもよい。
【００９４】
また、各角度センサーの方式は、それぞれ、特に限定されず、例えば、光学式、磁気式、電磁式、電気式等が挙げられる。
また、前記実施形態では、電子カメラの数は、２つであるが、本発明では、これに限定されず、電子カメラの数は、１つでもよく、また、３つ以上でもよい。但し、電子カメラの数は、複数であることが好ましい。
【００９５】
また、前記実施形態では、電子カメラは、ロボット本体から離間した位置に設置されているが、本発明では、これに限定されず、電子カメラは、例えば、ロボット本体に設置されていてもよい。
また、前記実施形態では、電子カメラは、固定されているが、本発明では、これに限定されず、電子カメラは、例えば、移動可能に設置されていてもよい。
【００９６】
また、前記実施形態では、ロボットの回転軸の数は、６つであるが、本発明では、これに限定されず、ロボットの回転軸の数は、１つ、２つ、３つ、４つ、５つまたは７つ以上でもよい。
すなわち、前記実施形態では、リストが２本のアームを有しているので、ロボットのアームの本数は、６本であるが、本発明では、これに限定されず、ロボットのアームの本数は、１本、２本、３本、４本、５本または７本以上でもよい。
【００９７】
また、前記実施形態では、ロボットは、複数のアームを回動自在に連結してなるアーム連結体を１つ有する単腕ロボットであるが、本発明では、これに限定されず、例えば、複数のアームを回動自在に連結してなるアーム連結体を２つ有する双腕ロボット等、前記アーム連結体を複数有するロボットであってもよい。
また、本発明に係わるロボットは、アーム型ロボット（ロボットアーム）に限定されず、他の形式のロボット、例えば、スカラーロボット、脚式歩行（走行）ロボット等であってもよい。
【００９８】
以下、本発明に係わるロボットを脚式歩行ロボットに適用した場合の１例を簡単に説明する。
図１１は、本発明に係わるロボットの他の構成例を示す斜視図である。
図１１に示すように、ロボット１Ｂのロボット本体１０Ｂは、頭部２０Ｂと、胴部３０Ｂと、１対の腕部４０Ｂと、１対の脚部５０Ｂとを有している。
【００９９】
各腕部４０Ｂは、それぞれ、複数のアームを回動自在に連結してなるアーム連結体で構成されている。この各アーム連結体の基本的な構成は、それぞれ、関節の数やアームの数等は異なるが、前述した実施形態のロボットのアーム連結体と同様であるので、その説明は省略する。
また、各脚部５０Ｂは、それぞれ、複数のレッグを回動自在に連結してなるレッグ連結体で構成されている。この各レッグ連結体の基本的な構成は、それぞれ、関節の数やレッグの数等は異なるが、前述した実施形態のロボットのアーム連結体と同様であるので、その説明は省略する。
なお、本願では回転軸を軸中心として回動するアームを有するロボットを例示したが、本願を直動アームまたは並進アーム等において適用しても同様な効果を得ることができる。
【符号の説明】
【０１００】
１、１Ｂ……ロボット（産業用ロボット）  １０、１０Ｂ……ロボット本体  １１……基台  １２、１３、１４、１５……アーム（リンク）  １６……リスト（リンク）  １３１、１４１……軸線  １６１……リスト本体  １６２……支持リング  １６３……先端面  １７１、１７２、１７３、１７４、１７５、１７６……関節（ジョイント）  １８……アーム連結体  ２、２ａ、２ｂ、２ｃ、２ｄ……アーム本体  ３、３ａ、３ｂ、３ｃ、３ｄ……駆動機構  ４、４ａ、４ｂ、４ｃ、４ｄ……封止手段  ２０……制御装置  １０１……床  １１１……ボルト  １１２……基台本体  １１３……円筒状部  １１４……箱状部  ２０１〜２０６……駆動源制御部  ３０１、３０２、３０３、３０４、３０５、３０６……モータードライバー  ４０１、４０２、４０３、４０４、４０５、４０６……駆動源  ４０１Ｍ、４０２Ｍ、４０３Ｍ、４０４Ｍ、４０５Ｍ、４０６Ｍ……モーター  ４１１、４１２、４１３、４１４、４１５、４１６……角度センサー  ６１……ベクトル場設定部  ６１１、６１３、６１４……仮想斥力ベクトル場設定部  ６１２……仮想引力ベクトル場設定部  ６２……軌道生成部  ６２１、６２６、６２７……仮想斥力データ取得部  ６２２、６２４、６２８……トルクデータ取得部  ６２３……仮想引力データ取得部  ６２５……駆動データ取得部  ６３……角速度制御部  ６４……駆動源制御部  ７１、７２……電子カメラ  ８１、８２……障害物  ９０……対象物  ９１……参照点  ９２、９３、９４……代表点  ９５……直線  ２０Ｂ……頭部  ３０Ｂ……胴部  ４０Ｂ……腕部  ５０Ｂ……脚部  Ｏ１、Ｏ２、Ｏ３、Ｏ４、Ｏ５、Ｏ６……回転軸  Ｓ１０１〜Ｓ１１２……ステップ  Ｓ２０１〜Ｓ２１６……ステップ
【図１】
2014124734.tif 000003
【図２】
2014124734.tif 000004
【図３】
2014124734.tif 000005
【図４】
2014124734.tif 000006
【図５】
2014124734.tif 000007
【図６】
2014124734.tif 000008
【図７】
2014124734.tif 000009
【図８】
2014124734.tif 000010
【図９】
2014124734.tif 000011
【図１０】
2014124734.tif 000012
【図１１】
2014124734.tif 000013