(57)【要約】【課題】  任意の目標とする位置に自動的に移動するロボットとその方法を得る。【解決手段】  ロボット手先部にカメラを取り付け、対象物５を撮像する（図７（ａ）の状態）。標的Ｑに対応する画像上の位置Ｒ1を指定する。Ｒ1の画面中心からの画素数をＮ1とすると、キャリブレーション時の距離Ｌ0における距離Ｗ1が変換係数Ｃ０よりＷ1＝Ｃ０・Ｎ1として求まる。カメラ２ａを距離Ｗ1だけＸ軸方向の標的Ｑ方向に移動させる（図７（ｂ）の状態）。標的Ｑに対応する画像上の位置Ｒ2を指定する。Ｒ2の画面中心からの画素数Ｎ2を求める。Ｃ０，Ｎ１，Ｎ２，Ｌ０により移動ベクトルｑを求める。カメラ２ａを移動ベクトルｑ移動させる。ロボットはカメラの中心が標的Ｑに距離Ｌ０をもって対向する位置に位置決めされる。画像上で標的Ｑを指定することにより指定した標的Ｑ位置に自動的に移動できる。【選択図】    図７
2005074600.tif 000002
【特許請求の範囲】
【請求項１】
手先部にカメラを装着したロボットにおいて、
前記カメラを対象物に対して第１の所定距離離れた位置に位置決めする手段と、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での位置情報を取得する手段と、
前記位置情報と前記カメラと対象物間の距離とに基づいて前記指定した点の実際の位置に対してカメラが第２の所定距離離れて対向する位置への移動方向および移動量を決定する手段と、
前記決定された移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項２】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を新たに撮像された画像中で再指定する手段と、
前記再指定された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項３】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を新たに撮像された画像中で再指定する手段と、
前記再指定された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項４】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を新たに撮像された画像中で再指定する手段と、
前記再指定された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項５】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、
前記検出された対象物の前記画像上での第１の位置情報を取得する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項６】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、
前記検出された対象物の前記画像上での第１の位置情報を取得する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段と、
前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項７】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、
前記検出された対象物の前記画像上での第１の位置情報を取得する手段と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項８】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、
前記検出された対象物の前記画像上での第１のサイズ情報を取得する手段と、
前記第１のサイズ情報を元に前記カメラの第１の移動量を決定する手段と、
予め指定された移動方向および前記決定された第１の移動量にもとづいて前記ロボットを移動させる手段と、
前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、
前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する手段と、
前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項９】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、
前記検出された対象物の前記画像上での第１のサイズ情報を取得する手段と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、
前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する手段と、
前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項１０】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する手段と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項１１】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する手段と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する手段と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項１２】
手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、
前記指定された点の前記画像上での第１の位置情報を取得する手段と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する手段と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する手段と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、
を備えたことを特徴とするロボット。
【請求項１３】
前記第２の移動方向及び移動量を決定する手段は、前記指定した点をカメラの中心位置で捉え、前記指定した点の実際の位置から所定距離離れた位置への移動方向と移動量を決定する請求項２乃至１２の内いずれか１項に記載のロボット。
【請求項１４】
前記第２の移動方向及び移動量を決定する手段は、ロボットに取り付けられたツール先端を前記指定した点に位置決めする移動方向及び移動量を決定する請求項２乃至１２の内いずれか１項に記載のロボット。
【請求項１５】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラを対象物に対して第１の所定距離離れた位置に位置決めする段階と、
前記カメラで撮像した画像を取得する段階と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での位置情報を取得する段階と、
前記位置情報と前記カメラと対象物間の距離とを元に前記指定した点の実際の位置に対してカメラが第２の所定距離離れて対向する位置への移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項１６】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する段階と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記指定された点と同一の点を再指定する段階と、
前記再指定された点の前記新たに取得された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項１７】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する段階と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる段階と、
前記指定された点と同一の点を新たに撮像された画像中で再指定する段階と、
前記再指定された点の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を備えたことを特徴とするロボット。
【請求項１８】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記指定された点と同一の点を再指定する段階と、
前記再指定された点の前記新たに取得された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項１９】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で予め指定された対象物を検出する段階と、
前記検出された対象物の前記画像上での第１の位置情報を取得する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する段階と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記検出された対象物と同一の対象物を再検出する段階と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２０】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で予め指定された対象物を検出する段階と、
前記検出された対象物の前記画像上での第１の位置情報を取得する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する段階と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記検出された対象物と同一の対象物を再検出する段階と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２１】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で予め指定された対象物を検出する段階と、
前記検出された対象物の前記画像上での第１の位置情報を取得する段階と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記検出された対象物と同一の対象物を再検出する段階と、
前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２２】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で予め指定された対象物を検出する段階と、
前記検出された対象物の前記画像上での第１のサイズ情報を取得する段階と、
前記第１のサイズ情報を元に前記カメラの第１の移動量を決定する段階と、
予め指定された移動方法および前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記検出された対象物と同一の対象物を再検出する段階と、
前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する段階と、
前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２３】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で予め指定された対象物を検出する段階と、
前記検出された対象物の前記画像上での第１のサイズ情報を取得する段階と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記新たに取得された画像上で前記検出された対象物と同一の対象物を再検出する段階と、
前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する段階と、
前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２４】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する段階と、
前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する段階と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２５】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する段階と、
前記第１の位置情報を元に前記カメラの第１の移動方向を決定する段階と、
前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する段階と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２６】
手先部にカメラを装着したロボットの移動方法であって、
前記カメラで撮像した画像を取得する段階と、
前記取得された画像中で対象物上の任意の点を指定する段階と、
前記指定された点の前記画像上での第１の位置情報を取得する段階と、
前記指定された点の前記画像上での近傍領域から画像モデルを生成する段階と、
予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
前記カメラで新たに撮像した画像を取得する段階と、
前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する段階と、
前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する段階と、
前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する段階と、
前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる段階と、
を含むロボットの移動方法。
【請求項２７】
前記第２の移動方向及び移動量を決定する段階は、前記指定した点をカメラの中心位置で捉え、前記指定した点の実際の位置から所定距離離れた位置への移動方向と移動量を決定する請求項１６乃至２６の内いずれか１項に記載のロボット。
【請求項２８】
前記第２の移動方向及び移動量を決定する段階は、ロボットに取り付けられたツール先端を前記指定した点に位置決めする移動方向及び移動量を求める請求項１６乃至２６の内いずれか１項に記載のロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、産業用ロボットを所定の場所に移動させるための移動方法及びその移動を実施するロボットに関する。
【背景技術】
【０００２】
一般にロボットを手動操作で移動させるときの移動操作は、教示操作盤を用いてロボットの各軸（関節）毎の移動操作、もしくは直交座標系の各座標軸に沿った移動操作を人手によって行っている。前者はロボットの指定する関節軸について正方向移動もしくは負方向移動をさせるもので、ロボットの機構構造によって回転運動する軸もあれば、並進運動する軸もあり、指定する軸によってその動きが変わる。後者はロボットの作業空間中に定義された直交ＸＹＺ座標系における指定する座標軸の正負方向にロボットのツール先端点（ＴＣＰ）を移動させるか、もしくはＴＣＰを中心とした指定する軸周りの正負方向の回転移動をさせるものである。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
実空間においてロボットを手動操作で移動させたいとした場合、それは任意方向への移動であるのが普通である。そうすると、上述した従来の手動操作方法でロボットを移動させようとすると、ロボットを移動させたい方向と教示操作盤を通してロボットを移動させられる方向の関係を、操作者が思考の上で巧みに変換し、教示操作盤で実現できる移動を複数種組み合わせて必要な移動を達成する必要がでてくる。話を単純にするために、実空間においてＺ軸の座標値が一定なＺ平面上をＸ軸正方向とＹ軸正方向の丁度真ん中方向（Ｘ軸とＹ軸の双方から４５度隔たった方向）に向かってロボットを移動させたいものと仮定する。操作者はＸ軸正方向への移動操作を少し行ってロボットをＸ軸方向に少し移動させ、次にＹ軸正方向への移動操作を同程度行ってロボットをＹ軸正方向へ同程度移動させ、以後これらを繰り返すことで目的とする移動を達成する必要がある。いわゆるジグザグ移動である。単純なケースでこの通りであるから、任意方向への移動となれば、熟練を必要とする難しい操作となる。また移動の正負を間違えることも往々にしてあり、意図しない方向へ誤ってロボットを移動させてしまい、危険を招く場合もある。特に、ロボットを移動させる方向は、一般的に作業対象物に接近させる方向であることが多いことから、対象物と衝突させるという事故を発生しやすい。これが操作をさらに難しいものにしている。  
そこで、本発明の目的は、任意の目標とする位置に自動的に移動するロボット及びその移動方法を提供することにある。
【課題を解決するための手段】
【０００４】
本願請求項１に係わる発明は、手先部にカメラを装着したロボットにおいて、
前記カメラを対象物に対して第１の所定距離離れた位置に位置決めする手段と、前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、前記指定された点の前記画像上での位置情報を取得する手段と、前記位置情報と前記カメラと対象物間の距離とに基づいて前記指定した点の実際の位置に対してカメラが第２の所定距離離れて対向する位置への移動方向および移動量を決定する手段と、前記決定された移動方向および移動量にもとづいて前記ロボットを移動させる手段と、を備えたことを特徴とするロボットであり、また請求項１５に係わる発明は、このロボットによって実施されるロボット移動方法であつて、任意の指定位置に自動的に移動させることができるものである。
【０００５】
請求項２に係わる発明は、手先部にカメラを装着したロボットにおいて、前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、前記指定された点の前記画像上での第１の位置情報を取得する手段と、前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、前記指定された点と同一の点を新たに撮像された画像中で再指定する手段と、前記再指定された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段とを備えたことを特徴とするロボットであり、請求項１６に係わる発明は、このロボットによる移動方法である。
【０００６】
請求項３に係わる発明は、請求項２に係わる発明における、第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段の代わりに、前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段を設けたものである。また、請求項１７に係わる発明は、このロボットによる移動方法である。
【０００７】
請求項４に係わる発明は、請求項２に係わる発明において、第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段を設けずに、カメラの第１の移動方向および移動量を予め指定しておき、この指定された第１の移動方向および移動量にもとづいて前記ロボットを移動させるようにしたものである。また請求項１８に係わる発明はこのロボットの移動方法である。
【０００８】
請求項５に係わる発明は、手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、前記検出された対象物の前記画像上での第１の位置情報を取得する手段と、前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、前記再検出された対象物の前記新たに撮像された画像上での第２の位置情報を取得する手段と、前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、を備えたことを特徴とするロボットであり、請求項１９に係わる発明は、このロボットによる移動方法である。
【０００９】
請求項６に係わる発明は、請求項５に係わる発明における、第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段の代わりに、前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段を設けたものである。また、請求項２０に係わる発明は、このロボットによる移動方法である。
【００１０】
請求項７に係わる発明は、請求項５に係わる発明において、第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段を設けずに、カメラの第１の移動方向および移動量を予め指定しておき、この指定された第１の移動方向および移動量にもとづいて前記ロボットを移動させるようにしたものである。また請求項２１に係わる発明はこのロボットの移動方法である。
【００１１】
請求項８に係わる発明は、手先部にカメラを装着したロボットにおいて、前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、前記検出された対象物の前記画像上での第１のサイズ情報を取得する手段と、前記第１のサイズ情報を元に前記カメラの第１の移動量を決定する手段と、予め指定された移動方向および前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する手段と、前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段とを備えたことを特徴とするロボットであり、また請求項２２に係わる発明はこのロボットの移動方法である。
【００１２】
請求項９に係わる発明は、手先部にカメラを装着したロボットにおいて、前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で予め指定された対象物を検出する手段と、前記検出された対象物の前記画像上での第１のサイズ情報を取得する手段と、予め指定された前記カメラの第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、前記検出された対象物と同一の対象物を新たに撮像された画像中で再検出する手段と、前記再検出された対象物の前記新たに撮像された画像上での第２のサイズ情報および位置情報を取得する手段と、前記第１のサイズ情報と、前記第２のサイズ情報と、前記位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段とを備えたことを特徴とするロボットであり、また請求項２３に係わる発明はこのロボットの移動方法である。
【００１３】
請求項１０に係わる発明は、手先部にカメラを装着したロボットにおいて、
前記カメラで撮像した画像を取得する手段と、前記画像取得手段により撮像された画像中で対象物上の任意の点を指定する手段と、前記指定された点の前記画像上での第１の位置情報を取得する手段と、前記指定された点の前記画像上での近傍領域から画像モデルを生成する手段と、前記第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段と、前記決定された第１の移動方向および移動量にもとづいて前記ロボットを移動させる手段と、前記指定された点と同一の点を前記画像モデルを用いて前記新たに撮像された画像中から検出する手段と、前記検出された点の前記新たに撮像された画像上での第２の位置情報を取得する手段と、前記第１の位置情報と、前記第２の位置情報を元に前記カメラの第２の移動方向および移動量を決定する手段と、前記決定された第２の移動方向および移動量にもとづいて前記ロボットを移動させる手段とを備えたことを特徴とするロボットであり、請求項２４に係わる発明はこのロボットの移動方法である。
【００１４】
請求項１１に係わる発明は、請求項１０に係わる発明における、第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段の代わりに、前記第１の位置情報を元に前記カメラの第１の移動方向を決定する手段と、前記決定された第１の移動方向および予め指定された移動量にもとづいて前記ロボットを移動させる手段を設けたものである。また、請求項２５に係わる発明は、このロボットによる移動方法である。
【００１５】
請求項１２に係わる発明は、請求項１０に係わる発明における第１の位置情報を元に前記カメラの第１の移動方向および移動量を決定する手段を設けずに、カメラの第１の移動方向および移動量を予め指定しておき、この指定された第１の移動方向および移動量にもとづいて前記ロボットを移動させるようにしたものであり、また請求項２６に係わる発明はこのロボットの移動方法である。
【００１６】
請求項１３に係わる発明は、前記各発明において、前記第２の移動方向及び移動量を決定する手段を、前記指定した点をカメラの中心位置で捉え、対象物から所定距離離れた位置への移動方向と移動量を決定するものとした。また請求項２７に係わる発明はこの方法を実施する発明である。請求項１４に係わる発明は、前記各発明において、前記第２の移動方向及び移動量を決定する手段を、ロボットに取り付けられたツール先端を前記指定した点に位置決めする移動方向及び移動量を決定するものとした。また請求項２８に係わる発明は、この方法を実施する発明である。
【発明の効果】
【００１７】
カメラを手先部に装着したロボットにおいて、カメラによって得られた画像上で対象物上の標的を指定するだけで、対象物とロボットの相対関係が所定の状態になるようにロボットを自動移動させることができるので、ロボットの移動操作が非常に簡単にかつ安全に行えるようになる。
【発明を実施するための最良の形態】
【００１８】
図１は本発明の一実施形態におけるロボットの全体構成を示す図である。従来から公知の典型的なロボット制御装置１ａとＣＣＤカメラ２ａを含む画像処理装置２が用意され、両者間は通信I/Fによって接続される。ＣＣＤカメラ２ａはロボットのアーム１ｂ上の先端の手先部に装着され、ロボット１の最終リンク上のメカニカルインタフェース座標系Σｆとカメラの基準座標系Σcとの相対関係は予め設定されている。ＣＣＤカメラ２ａを通して撮像された画像はモニタ２ｂ上に出力され、対象物上の標的がマウス２ｃを用いて操作者に指示されると、その位置が画素情報として得られる。得られた画素情報は、予め用意されたカメラ２ａのキャリブレーションデータによってメートル単位の位置の情報に変換されて、ロボット制御装置１ａ側に送られる。そしてさらにロボット１の移動情報にまで変換される。この画素情報からロボットの移動情報を得るまでの変換過程の詳細については後述する。
【００１９】
図２は同実施形態におけるロボット制御装置１ａの要部ブロック図であり、従来のロボット制御装置と同一構成である。符号１７で示されるバスに、メインプロセッサ１１、ＲＡＭ、ＲＯＭ、不揮発性メモリ（ＥＥＰＲＯＭなど）からなるメモリ１２、教示操作盤用インターフェイス１３，画像処理装置用インタフェース１４、外部装置用のインターフェイス１６及びサーボ制御部１５が接続されている。又、教示操作盤用インターフェイス１３には教示操作盤１８が接続されている。
【００２０】
ロボット及びロボット制御装置の基本機能を支えるシステムプログラムは、メモリ１２のＲＯＭに格納されている。又、アプリケーションに応じて教示されるロボットの動作プログラム並びに関連設定データは、メモリ１２の不揮発性メモリに格納される。
【００２１】
サーボ制御部１５は、複数のサーボ制御器＃１〜＃ｎ（ｎ：ロボットの総軸数、さらには必要に応じてロボット手首に取り付けるツールの可動軸数を加算した数）を備えており、各サーボ制御器＃１〜＃ｎは、プロセッサ、ＲＯＭ、ＲＡＭ等で構成され、各軸を駆動するサーボモータの位置・速度のループ制御、さらには電流ループ制御を行っている。いわゆる、ソフトウエアで位置、速度、電流のループ制御を行うデジタルサーボ制御器を構成している。サーボ制御器＃１〜＃ｎの出力は各サーボアンプＡ１〜Ａｎを介して各軸サーボモータＭ１〜Ｍｎを駆動制御する。なお、図示はしていないが、各サーボモータＭ１〜Ｍｎには位置・速度検出器が取り付けられており、該位置・速度検出器で検出した各サーボモータの位置、速度は各サーボ制御器＃１〜＃ｎにフィードバックされるようになっている。又、外部装置用インターフェイス１６には、ロボットに設けられたセンサや周辺機器のアクチュエータやセンサが接続されている。
【００２２】
図３は、ロボット制御装置のインターフェイスに接続される画像処理装置２の要部ブロック図である。プロセッサ２０を備え、該プロセッサ２０にはバス３０を介してこのプロセッサ２０が実行するシステムプログラム等を記憶するＲＯＭ２１、画像処理プロセッサ２２、カメラ２ａに接続されたカメラインターフェイス２３、ＣＲＴや液晶等で構成されたモニタ表示装置用のインターフェイス２４、フレームメモリ２６、不揮発性メモリ２７，データの一時記憶等に利用されるＲＡＭ２８、ロボット制御装置１ａに接続された通信インターフェイス２９が接続されている。カメラ２ａで撮像された画像は、フレームメモリ２６に格納される。画像処理プロセッサ２２は、フレームメモリ２６に格納された画像をプロセッサ２０の指令により画像処理して対象物を認識する。この画像処理装置２の構成、作用は従来の画像処理装置と同一であり差異はない。
【００２３】
図４は、カメラ２ａのキャリブレーションの概略を説明する図である。カメラ２ａのレンズ３の中心からＬ0の距離に対象物５を置き、キャリブレーションが行われる。具体的にはカメラ２ａの受光素子４の１画素がＬ0の距離にある対象物上のどれだけの長さに相当するかが求められる。図４中では、受光素子の画素数Ｎ0が対象物上のＷ0[mm]に相当するものとして得られ、変換係数Ｃ0が次の（１）式で求められる。
【００２４】
【数１】
2005074600.tif 000003
【００２５】
また図４中より ｆ：Ｌ0＝Ｙ0：Ｗ0の関係があるので（ｆはレンズの焦点距離、Ｙ０は画素数Ｎ０の長さ［mm］）
【００２６】
【数２】
2005074600.tif 000004
【００２７】
である。このキャリブレーションで用いた距離Ｌ0はこれ以降、既知の値として利用する。
【００２８】
図５は、対象物５上の任意の１標的Ｑを、カメラ２ａで撮像した画像上で指定したときの、カメラ２ａのレンズ３中心からその対象物５上の標的Ｑに向かう視線ベクトルｐの求め方の説明図である。便宜的にカメラのレンズ中心には基準となる座標系が定義されるが、これは図１の座標系Σcに相当する。この図５ではＸＺ座標平面上で光学系を記述している。実際のカメラの受光素子はＸ方向、Ｚ方向に直交するＹ方向にも広がりを持つものであり、それに応じてこの光学系は３次元的な広がりをもつものになる。しかし便宜上これ以降は、このような２次元平面的な光学系で説明を行なう。２次元平面的な記述を実際の３次元空間的な内容に置き換えるのは容易である。
対象物５上の任意の１標的Ｑに対応する画像上の１点Ｒが指定されると、画面中心からの画素数をＮとして次の３式、４式が導かれる。
【００２９】
【数３】
2005074600.tif 000005
【００３０】
【数４】
2005074600.tif 000006
【００３１】
図６（ａ）、（ｂ）は、本発明の上述した図１に示した構成により実施する第１の実施形態の動作原理説明図である。カメラ２ａの光軸が対象物５に対して垂直方向でその距離が予め決められたＬ1の位置に位置決めして、撮像し、画像上で対象物５上の標的Ｑを指定することによって、図６（ａ）に示すように、レンズ３中心から対象物５上の標的Ｑに向かう視線ベクトルｐが求まり、図６中の点Ｖを標的Ｑに一致させるための移動ベクトルｑが算出され、図６（ｂ）のようにカメラ２ａのレンズ３中心が標的Ｑの正面で、かつレンズ中心とＱの距離がＬ0である位置にカメラを移動させることが出来る。
【００３２】
図６（ａ）において、指定した画像上で対象物５上の１標的Ｑに対応する画像上の指定点Ｒ１の画面中心（光軸位置）からの画素数Ｎ１を測定する。
【００３３】
【数５】
2005074600.tif 000007
【００３４】
【数６】
2005074600.tif 000008
【００３５】
であり、移動ベクトルｑは、次の（７）式によって求まる。
【００３６】
【数７】
2005074600.tif 000009
【００３７】
以上のように、指令標的Ｑの画像上の中心からの画素数Ｎ１を求めれば、予め決められた対象物５とカメラ２ａ間の距離Ｌ１、キャリブレーションのデータであるＬ０より移動ベクトルｑが求まり、この移動ベクトルｑだけカメラ２ａを移動させれば、図６（ｂ）に示すように、指定標的Ｑにカメラ２ａのレンズ３中心が向き、かつキャリブレーションの距離Ｌ０の位置に位置付けることができる。
【００３８】
上述した第１の実施形態では、カメラ２ａと対象物５間の距離Ｌ１が既知の状態、即ち、カメラ２ａを位置決めし対象物５に対して所定の距離Ｌ１に位置付けたその後は、自動的に指定標的Ｑにカメラ２ａが対向する位置に移動させるようにしたものであった。この距離Ｌ１が既知でない場合で、カメラ２ａを指定標的Ｑに対向する位置に移動させることのできる第２の実施形態について、図７（ａ）、（ｂ）を用いて説明する。
【００３９】
図７（ａ）において、標的Ｑに対応する画像上の位置Ｒ1を指定する。Ｒ1の画面中心からの画素数をＮ1とすると、レンズ中心から距離Ｌ0のところにおける距離Ｗ1が次の（８）式で求められる。
【００４０】
【数８】
2005074600.tif 000010
【００４１】
次に、対象物５の光軸と交差する点と標的Ｑとを結ぶ直線と平行な線に沿ってカメラ２ａを距離Ｗ1だけ移動させる。すなわちこの例では、カメラ２ａの基準座標系ΣcのＸ軸正方向にカメラを距離Ｗ1だけ移動させている（なお、対象物５のＸＹ軸平面上の標的Ｑである場合は、カメラ２ａの中心を対象物５の光軸との交点と標的Ｑを結ぶ直線に沿って距離Ｗ1だけ移動させる）。実際にはロボットによってカメラが移動される。移動後の状態が図７（ｂ）である。さらに図７（ｂ）の状態のときに標的Ｑに対応する画像上の位置Ｒ2を指定する。Ｒ2の画面中心からの画素数をＮ2とすると、次の関係式が成り立つ。
【００４２】
【数９】
2005074600.tif 000011
【００４３】
これより次の（１０）式によりカメラ２ａと対象物５間の距離Ｌ1が求められる。
【００４４】
【数１０】
2005074600.tif 000012
【００４５】
また図７（ｂ）の状態のときの視線ベクトルｐは次の（１１）式の通りである。
【００４６】
【数１１】
2005074600.tif 000013
【００４７】
以上から移動ベクトルｑは次の（１２）式で算出される。
【００４８】
【数１２】
2005074600.tif 000014
【００４９】
なお、（１２）式において、「Ｔ」は転置を表す。
このようにして求めた移動ベクトルｑ分だけカメラ２ａを移動させれば、カメラ２ａは標的をカメラ中心に捉えた状態に位置づけることができる。  
上述した第２の実施形態では、カメラ２ａを最初に移動させる移動量を（８）式の演算を行って求めたが、この移動量を予め決められた量にしてもよい。  
図８（ａ）、（ｂ）は、この予め決められた量Ｌ２移動させるときの第３の実施形態の説明図である。図８（ａ）において、標的Ｑに対応する画像上の位置Ｒ1を指定する。Ｒ1の画面中心からの画素数をＮ1とすると、レンズ中心から距離Ｌ0のところにおける長さＷ1が次のようにして求められる。
【００５０】
【数１３】
2005074600.tif 000015
【００５１】
次にカメラ２ａを対象物５の光軸と交差する点と標的Ｑとを結ぶ直線と平行な線に沿って予め指定しておいたＬ2だけ移動させる。実際にはロボット１によってカメラ２ａが移動される。移動後の状態が図８（ｂ）である。さらに図８（ｂ）の状態のときに標的Ｑに対応する画像上の位置Ｒ2を指定する。Ｒ2の画面中心からの画素数をＮ2とすると、次の（１４）式が成り立つ。
【００５２】
【数１４】
2005074600.tif 000016
【００５３】
また図８（ａ）より、
【００５４】
【数１５】
2005074600.tif 000017
【００５５】
である。これら（１３）、（１４）、（１５）式から距離Ｌ1が求められる。
【００５６】
【数１６】
2005074600.tif 000018
【００５７】
また図８（ｂ）の状態のときの視線ベクトルｐは次の通りである。
【００５８】
【数１７】
2005074600.tif 000019
【００５９】
以上から移動ベクトルｑが次のように算出される。
【００６０】
【数１８】
2005074600.tif 000020
【００６１】
よって、この移動ベクトルｑ分カメラ２ａを移動させれば、カメラ２ａのレンズ中心に標的Ｑを対向させることができる。  
上述した第１〜第３の実施形態においては、最初にカメラ２ａを対象物５の面と平行（受光素子）に平行に移動させたが、この移動を光軸方向に移動させるようにしてもよい。
【００６２】
図９（ａ）、（ｂ）はこのカメラを光軸方向に移動させる場合の本発明の第４の実施形態の説明図である。図９（ａ）において、標的Ｑに対応する画像上の位置Ｒ1を指定する。Ｒ1の画面中心からの画素数をＮ1とすると、レンズ中心から距離Ｌ0のところにおける長さＷ1が次のようにして求められる。
【００６３】
【数１９】
2005074600.tif 000021
【００６４】
次にカメラの受光素子に垂直で、標的Ｑに近づく方向にカメラ２ａを予め指定しておいたＬ2だけ移動させる。実際にはロボット１によってカメラ２ａが移動される。移動後の状態が図９（ｂ）である。さらに図９（ｂ）の状態のときに標的Ｑに対応する画像上の位置Ｒ2を指定する。Ｒ2の画面中心からの画素数をＮ2とすると、次の関係式が成り立つ。
【００６５】
【数２０】
2005074600.tif 000022
【００６６】
これより次の（２１）式により距離Ｌ1が求められる。
【００６７】
【数２１】
2005074600.tif 000023
【００６８】
また、図９（ｂ）の状態のときの視線ベクトルｐは次の通りである。
【００６９】
【数２２】
2005074600.tif 000024
【００７０】
以上から移動ベクトルｑが次のように算出される。
【００７１】
【数２３】
2005074600.tif 000025
【００７２】
上述した、第１〜第４の実施形態では、対象物５上の標的Ｑを画像上で指定する方法を説明したが、標的Ｑの形状が予め既知である場合には、標的Ｑの画像モデルを教示しておき、パターンマッチング等の画像処理によって標的Ｑを自動検出するようにしてもよい。
【００７３】
また、標的Ｑの検出サイズの情報も併用してカメラ２ａを標的Ｑの近傍に接近移動させるようにしてもよく図１０（ａ）、（ｂ）に、この場合の例を第５の実施形態として説明する。まず、標的Ｑの画像モデルを教示しておき、図１０（ａ）において、標的Ｑの画像モデルに対応する画像上の位置Ｒ1およびサイズＳ1を検出する。次にカメラの受光素子に垂直で標的Ｑに近づく方向、すなわちカメラ２ａの基準座標系ΣcのＺ軸負方向にカメラ２ａを予め指定された距離Ｌ2だけ移動させる。実際にはロボット１によってカメラ２ａが移動される。移動後の状態が図１０（ｂ）である。さらに図１０（ｂ）の状態のときに標的Ｑの画像モデルに対応する画像上の位置Ｒ2およびサイズＳ2を検出する。ここで次の関係式が成り立つ。
【００７４】
【数２４】
2005074600.tif 000026
【００７５】
これより次の（２５）式により距離Ｌ1が求められる。
【００７６】
【数２５】
2005074600.tif 000027
【００７７】
またＲ2の画面中心からの画素数をＮ2とすると、図１０（ｂ）の状態のときの視線ベクトルｐは次の通りである。
【００７８】
【数２６】
2005074600.tif 000028
【００７９】
以上から移動ベクトルｑが次のように算出される。
【００８０】
【数２７】
2005074600.tif 000029
【００８１】
上述した各実施形態においては、いずれも、対象物上の標的Ｑの正面にカメラがあり、かつ両者間の距離がカメラのキャリブレーション時と同じ距離Ｌ0であるような相対関係になるように、ロボット１を自動的に移動するものである。しかし、別の状態を到達目標としたい場合には、例えばロボットに装着されたツールのアーク溶接トーチの先端を標的Ｑに一致させた状態を到達目標としたい場合には、上記のカメラに関する到達位置と溶接トーチに関する到達位置の間の相対関係を予め設定しておれば、カメラに関する到達位置を求めた上でこの相対位置を加味すれば溶接トーチに関する到達位置を算出することが容易にできる。
【００８２】
具体的には、図１１（ａ）、（ｂ）に示すように、カメラ２ａが到達目標に達した状態でのロボットのメカニカルインタフェース座標系の位置をΣf 、溶接トーチ１ｃが到達目標に達した状態でのロボットのメカニカルインタフェース座標系の位置をΣf' 、また溶接トーチ先端に定義されたツール座標系をΣtとして、
Ｔf : Σf を基準にΣf' を表す同次変換行列
Ｔc : Σf を基準にΣc を表す同次変換行列
Ｔt : Σf' を基準にΣt を表す同次変換行列
と表すものとする。すると、図１１（ａ）に示すカメラの到達目標位置をＵ として、図１１（ｂ）に示す溶接トーチ１ｃの到達目標位置Ｕ’は次のようにして算出することができる。
【００８３】
【数２８】
2005074600.tif 000030
【００８４】
図１２は、上述した図６で説明した第１の実施形態における動作フローチャートである。この第１の実施形態は、対象物５に対してカメラ２ａが予め決められたＬ１の距離の位置に位置決めされるものである。
【００８５】
まず、ロボット制御装置１ａのメインプロセッサ１１はロボット１を駆動し、予め決められた対象物５から距離Ｌ１の撮像位置に位置決めする（ステップ１００）。そして画像処理装置２に撮像指令を出力し、画像処理装置２のプロセッサ２１は、対象物５をカメラ２ａで撮像し（ステップ１０１）、フレームメモリ２６に格納されたその画像をモニタ２ｂに表示する（ステップ１０２）。画像処理装置２のプロセッサ２１は、標的Ｑがマウス等で選択指定されたか判断し、指定されると、指定された標的Ｑの位置に対応する画素数Ｎ１を求める（ステップ１０４）。上述した（５）式の演算を行ってキャリブレーション時の対象物５とカメラ２ａ間の距離Ｌ０における標的Ｑに対応する位置（距離）Ｗ１を求める（ステップ１０５）。そして、この距離Ｗ１、予め設定されている距離Ｌ１、キャリブレーション時の距離Ｌ０に基づいて（７）式の演算を行って移動ベクトルｑを求め、ロボット制御装置１ａに送信する（ステップ１０６）。ロボット制御装置１ａは、送られてきた移動ベクトルｑのデータに基づいてロボットの移動位置を求めその位置に移動させてカメラ２ａが標的Ｑに距離Ｌ０だけ離れて対向する位置（カメラ光軸上に標的Ｑがある位置）に位置決めする（ステップ１０７）。さらに、ツールによる加工を行う場合には、（２８）式の演算を行って、ツールの先端が標的Ｑに位置決めされるようにロボットを移動させる（ステップ１０８）。
【００８６】
図１３は、図７で説明した第２の実施形態における動作フローチャートである。  
この第２の実施形態においては、最初、カメラ２ａは、対象物に対して撮像できる任意の位置に位置決めされる。それ以後は、図１２に示したステップ１０１〜１０５と同一の処理を実施する（ステップ２００〜２０４）。そして、ステップ２０４で求められた位置（距離）Ｗ１だけ、対象物５の対象面に対して平行で光軸と対象物５が交差する点と標的Ｑを結ぶ線と平行の方向に移動するようロボット制御装置１ａに指令し、ロボット制御装置１ａはカメラ２ａを距離Ｗ１だけ標的Ｑ方向に対象物５の面に対して平行移動させ位置決めする（ステップ２０５）。そして再び撮像し、撮像画面をモニタ２ｂに表示し、標的が選択指定されたか判断し（ステップ２０６〜２０８）、選択されると、その選択点の画素数Ｎ２を求める（ステップ２０９）。求められた画素数Ｎ１，Ｎ２、キャリブレーションにより予め求められている変換係数Ｃ０、距離Ｌ０に基づいて、（１２）式の演算を行い移動ベクトルｑを求め、ロボット制御装置１ａに送信する（ステップ２１０）。ロボット制御装置１ａは、送られてきた移動ベクトルｑのデータに基づいてロボット１の移動位置を求めその位置に移動させてカメラ２ａが標的Ｑに距離Ｌ０だけ離れて対向する位置（カメラ光軸上に標的Ｑがある位置）に位置決めする（ステップ２１１）。さらに、ツールによる加工を行う場合には、（２８）式の演算を行って、ツールの先端が標的Ｑに位置決めされるようにロボットを移動させる（ステップ２１２）。
【００８７】
図１４は、図８で説明した第３の実施形態における動作フローチャートである。  
この第３の実施形態にいてステップ３００〜３０３までの処理は、図１３で示した第２の実施形態のステップ２００〜２０３までの処理と同一である。この第３の実施形態では、画素数Ｎ１を求めたあと、カメラ２ａの光軸方向に垂直方向（対象物の面と平行な方向）で、標的Ｑがある方向に予め設定された距離Ｌ２だけロボット１を駆動してカメラ２ａを移動させる（ステップ３０４）。そして、対象物を撮像し、標的Ｑが指定されるとその画素数Ｎ２を求める（ステップ３０５〜３０８）。
【００８８】
そして、求められた画素数Ｎ１，Ｎ２、キャリブレーションにより予め求められている変換係数Ｃ０、距離Ｌ０及び距離Ｌ２に基づいて、（１８）式の演算を行い移動ベクトルｑを求め、ロボット制御装置に送信する（ステップ３０９）。ロボット制御装置１ａは、送られてきた移動ベクトルｑのデータに基づいてロボットの移動位置を求めその位置に移動させてカメラ２ａが標的Ｑに距離Ｌ０だけ離れて対向する位置に位置決めする（ステップ３１０）。さらに、ツールによる加工を行う場合には、（２８）式の演算を行って、ツールの先端が標的Ｑに位置決めされるようにロボットを移動させる（ステップ３１１）。
【００８９】
図１５は、第４の実施形態における動作フローチャートである。  
この第４の実施形態の処理は、第３の実施形態でステップ３０４で光軸と垂直方向にカメラ２ａを移動させたステップ３０４の処理が、光軸方向であるＺ軸方向にカメラ２ａを予め決められた距離Ｌ２だけ移動させるステップ４０４の処理に代わるだけで、ステップ４００〜ステップ４０８までの処理は第３の実施形態のステップ３００〜ステップ３０８の処理と同一である。そして、この第４の実施形態では、求められた画素数Ｎ１，Ｎ２、キャリブレーションにより予め求められている変換係数Ｃ０、距離Ｌ０及び予め決められた距離Ｌ２によって、（２３）式の演算を行い移動ベクトルｑを求め、ロボット制御装置１ａに送信する（ステップ４０９）。ロボット制御装置１ａは、送られてきた移動ベクトルｑのデータに基づいてロボットの移動位置を求めその位置に移動させてカメラ２ａが標的Ｑに距離Ｌ０だけ離れて対向する位置に位置決めする（ステップ４１０）。さらに、ツールによる加工を行う場合には、（２８）式の演算を行って、ツールの先端が標的Ｑに位置決めされるようにロボットを移動させる（ステップ４１１）。
【００９０】
図１６は、第５の実施形態における動作フローチャートである。  
この第５の実施形態では、標的Ｑの画像モデルを教示しておき、ステップ５０２で、撮像した画像から標的Ｑの画像モデルを検出すること、そして、ステップ５０３で検出された標的ＱのサイズＳ１を求めることと、ステップ５０７で標的Ｑの画像モデルを検出するステップ５０８で、標的Ｑの位置の画素数Ｎ２とサイズＳ２を求める点を除けば、図１５に示した処理フローチャートのステップ４００〜４０８と同一のステップ５００〜５０８の処理を実施するものである。
【００９１】
そして、この第５の実施形態では、求められた標的Ｑの検出サイズＳ１，Ｓ２、画素数Ｎ２、キャリブレーションにより予め求められている変換係数Ｃ０、距離Ｌ０及び予め決められた距離Ｌ２によって、（２７）式の演算を行い移動ベクトルｑを求め、ロボット制御装置１ａに送信する（ステップ５０９）。ロボット制御装置１ａは、送られてきた移動ベクトルｑのデータに基づいてロボットの移動位置を求めその位置に移動させてカメラ２ａが標的Ｑに距離Ｌ０だけ離れて対向する位置に位置決めする（ステップ５１０）。さらに、ツールによる加工を行う場合には、（２８）式の演算を行って、ツールの先端が標的Ｑに位置決めされるようにロボットを移動させる（ステップ５１１）。
【００９２】
上述した第１〜４の各実施形態では、標的Ｑを画面上でカーソル等を利用して指定するようにしたものであるが、標的Ｑの形状が予め既知である場合には、標的Ｑのモデルを教示しておき、パターンマッチング等の画像処理により、この標的Ｑを自動検出するようにしてもよい。この場合、図１２のステップ１０３、図１３のステップ２０２，２０８、図１４のステップ３０２，３０７、図１５のステップ４０２，４０７が、モデル形状の検出処理に代わることになる。
【００９３】
また、モデル形状を教示しない場合でも、１回目に標的Ｑを指定したとき、その指定された近傍領域から画像モデルを生成して、第２回目の標的Ｑの検出は、この生成した画像モデルに基づいて標的Ｑを自動的に検出するようにしてもよい。この場合は、第２の実施形態における図１３のステップ２０２の後、第３の実施形態における図１４のステップ３０２の後、第４の実施形態における図１５のステップ４０２の後に画像モデル生成処理が加わり、ステップ２０８、ステップ３０７、ステップ４０７が、画像モデルの検出処理に代わることになる。
【図面の簡単な説明】
【００９４】
【図１】本発明の一実施形態におけるロボットの全体構成を示す図である。
【図２】同実施形態におけるロボット制御装置の要部ブロック図である。
【図３】同実施形態における画像処理装置の要部ブロック図である。
【図４】同実施形態におけるカメラのキャリブレーションの概略を説明する図である。
【図５】本発明における視線ベクトルの求め方の説明図である。
【図６】本発明の第１の実施形態の動作原理説明図である。
【図７】本発明の第２の実施形態の動作原理説明図である。
【図８】本発明の第３の実施形態の動作原理説明図である。
【図９】本発明の第４の実施形態の動作原理説明図である。
【図１０】本発明の第５の実施形態の動作原理説明図である。
【図１１】カメラが標的に対向した位置からツールが標的に対向した位置に変換する説明図である。
【図１２】本発明の第１の実施形態の動作処理フローチャートである。
【図１３】本発明の第２の実施形態の動作処理フローチャートである。
【図１４】本発明の第３の実施形態の動作処理フローチャートである。
【図１５】本発明の第４の実施形態の動作処理フローチャートである。
【図１６】本発明の第５の実施形態の動作処理フローチャートである。
【符号の説明】
【００９５】
１  ロボット
１ａ  ロボット制御装置
１ｂ  ロボットアーム
１ｃ  溶接トーチ
２  画像処理装置
２ａ  ＣＣＤカメラ
２ｂ  モニタ
３  レンズ
４  受光素子
１８  教示操作盤
【図１】
2005074600.tif 000031
【図２】
2005074600.tif 000032
【図３】
2005074600.tif 000033
【図４】
2005074600.tif 000034
【図５】
2005074600.tif 000035
【図６】
2005074600.tif 000036
【図７】
2005074600.tif 000037
【図８】
2005074600.tif 000038
【図９】
2005074600.tif 000039
【図１０】
2005074600.tif 000040
【図１１】
2005074600.tif 000041
【図１２】
2005074600.tif 000042
【図１３】
2005074600.tif 000043
【図１４】
2005074600.tif 000044
【図１５】
2005074600.tif 000045
【図１６】
2005074600.tif 000046