特許第6126183号(P6126183)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

特許6126183ターゲットマークを撮像するカメラを備えたロボットシステム
<>
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000013
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000014
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000015
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000016
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000017
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000018
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000019
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000020
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000021
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000022
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000023
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000024
  • 特許6126183-ターゲットマークを撮像するカメラを備えたロボットシステム 図000025
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6126183
(24)【登録日】2017年4月14日
(45)【発行日】2017年5月10日
(54)【発明の名称】ターゲットマークを撮像するカメラを備えたロボットシステム
(51)【国際特許分類】
   B25J 13/08 20060101AFI20170424BHJP
【FI】
   B25J13/08 A
【請求項の数】4
【全頁数】19
(21)【出願番号】特願2015-197715(P2015-197715)
(22)【出願日】2015年10月5日
(65)【公開番号】特開2017-71001(P2017-71001A)
(43)【公開日】2017年4月13日
【審査請求日】2016年9月14日
【早期審査対象出願】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100102819
【弁理士】
【氏名又は名称】島田 哲郎
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100159684
【弁理士】
【氏名又は名称】田原 正宏
(74)【代理人】
【識別番号】100112357
【弁理士】
【氏名又は名称】廣瀬 繁樹
(74)【代理人】
【識別番号】100157211
【弁理士】
【氏名又は名称】前島 一夫
(72)【発明者】
【氏名】藁科 文和
(72)【発明者】
【氏名】渡邊 桂祐
(72)【発明者】
【氏名】大野 健司郎
【審査官】 佐々木 一浩
(56)【参考文献】
【文献】 特開2005−342885(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 13/08
(57)【特許請求の範囲】
【請求項1】
ロボットと、前記ロボットのアーム先端部に取付けられたカメラと、前記カメラによって撮像されるターゲットマークと、を備えたロボットシステムであって、
前記ターゲットマークが、前記ロボットの制御の基準となるロボット座標系において予め定められる第1のターゲットマーク位置に配置されており、かつ、前記アーム先端部が第1のロボット位置に位置決めされているときに、前記カメラの画像に含まれる前記ターゲットマークの像の位置および大きさを基準データとして記憶するとともに、前記アーム先端部に対する前記第1のターゲットマーク位置をツール先端点の位置として記憶する基準データ記憶部と、
前記ターゲットマークが第2のターゲットマーク位置に配置されているときに、前記カメラの画像に含まれる前記ターゲットマークの像の位置および大きさが、前記基準データとして記憶されている前記ターゲットマークの像の位置および大きさに一致するように前記アーム先端部を移動させるとともに、移動後の前記アーム先端部の位置に対応する第2のロボット位置、および前記ツール先端点の位置に基づいて、前記ロボット座標系における前記第2のターゲットマーク位置を算出するターゲットマーク位置算出部と、
を備える、ロボットシステム。
【請求項2】
前記ロボットシステムは工作機械を備えており、
前記工作機械の制御の基準となる機械座標系において予め定められていて、かつ同一直線上にはない少なくとも3つのターゲットマーク位置に前記ターゲットマークが配置されているときに、前記ターゲットマーク位置算出部が、前記ロボット座標系における前記少なくとも3つのターゲットマーク位置をそれぞれ算出するように構成されており、
前記ロボットシステムは、前記機械座標系における前記少なくとも3つのターゲットマーク位置、および前記ロボット座標系における前記少なくとも3つのターゲットマーク位置に基づいて、前記ロボット座標系に対する前記機械座標系の位置を算出する機械座標系算出部をさらに備える、請求項1に記載のロボットシステム。
【請求項3】
前記工作機械は、作動可能な可動部を備えており、
前記ターゲットマークは、前記可動部に設置されており、
前記工作機械は、前記可動部を作動させることにより、前記ターゲットマークを前記少なくとも3つのターゲットマーク位置に移動させるように構成される、請求項2に記載のロボットシステム。
【請求項4】
前記ロボット座標系における位置が未知であって、かつ同一直線上にはない少なくとも3つのターゲットマーク位置に前記ターゲットマークが配置されているときに、前記ターゲットマーク位置算出部が、前記ロボット座標系における前記少なくとも3つのターゲットマーク位置をそれぞれ算出するように構成されており、
前記ロボット座標系における前記少なくとも3つのターゲットマーク位置に基づいて、前記ロボットの作業用座標系を算出する作業用座標系算出部をさらに備え
前記作業用座標系は前記ロボット座標系とは別に新しく設定され、前記ロボットにより実行される所定の作業において基準となる座標系であり、
前記作業用座標系を設定したい位置は前記少なくとも3つのターゲットマーク位置と対応しており、
前記作業用座標系は前記少なくとも3つのターゲットマーク位置が含まれる平面に対して算出される、請求項1に記載のロボットシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ターゲットマークを撮像するカメラを備えたロボットシステムに関する。
【背景技術】
【0002】
ワークのハンドリングを行うために、ロボットが工作機械とともに使用されることがある。ロボットの手動操作を容易にするために、また、工作機械の制御装置を用いてロボットを遠隔操作するために、工作機械の座標系とロボットの座標系との間の位置関係を特定することが重要である。
【0003】
工作機械の座標系とロボット座標系との間の位置関係を特定するには、工作機械における位置およびロボット座標系における位置がそれぞれ既知である少なくとも3つの点が必要である。ロボットのツール先端点(TCP)を所定の点に物理的に接触させて、当該点の3次元位置を測定するタッチアップが公知である。また、ロボットのハンドに取付けられた3次元センサを用いて非接触で所定の点の3次元位置を計測する方法が公知である。
【0004】
特許文献1には、ロボット制御点と設定点との間の既知の位置関係を利用して、ロボット座標系と工作機械の座標系との間の位置関係を求めることが開示されている。特許文献2および特許文献3には、カメラを用いて対象物を複数の位置から撮像することによって、対象物の3次元位置を計測することが開示されている。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2011−048467号公報
【特許文献2】特開2005−201824号公報
【特許文献3】特開2010−117223号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、前述した公知技術においては、専用の装置または高価な3次元センサを利用する必要がある。或いは、計測時にロボットの位置および姿勢の少なくとも一方を広範囲にわたって移動させる必要があり、制限された空間で計測を行うことが困難な場合がある。したがって、安価でありかつ容易に対象点の位置を測定できるようにしたロボットシステムが求められている。
【課題を解決するための手段】
【0007】
本願の1番目の発明によれば、ロボットと、前記ロボットのアーム先端部に取付けられたカメラと、前記カメラによって撮像されるターゲットマークと、を備えたロボットシステムであって、前記ターゲットマークが、前記ロボットの制御の基準となるロボット座標系において予め定められる第1のターゲットマーク位置に配置されており、かつ、前記アーム先端部が第1のロボット位置に位置決めされているときに、前記カメラの画像に含まれる前記ターゲットマークの像の位置および大きさを基準データとして記憶するとともに、前記アーム先端部に対する前記第1のターゲットマーク位置をツール先端点の位置として記憶する基準データ記憶部と、前記ターゲットマークが第2のターゲットマーク位置に配置されているときに、前記カメラの画像に含まれる前記ターゲットマークの像の位置および大きさが、前記基準データとして記憶されている前記ターゲットマークの像の位置および大きさに一致するように前記アーム先端部を移動させるとともに、移動後の前記アーム先端部の位置に対応する第2のロボット位置、および前記ツール先端点の位置に基づいて、前記ロボット座標系における前記第2のターゲットマーク位置を算出するターゲットマーク位置算出部と、を備える、ロボットシステムが提供される。
本願の2番目の発明によれば、1番目の発明に係るロボットシステムにおいて、前記ロボットシステムは工作機械を備えており、前記工作機械の制御の基準となる機械座標系において予め定められていて、かつ同一直線上にはない少なくとも3つのターゲットマーク位置に前記ターゲットマークが配置されているときに、前記ターゲットマーク位置算出部が、前記ロボット座標系における前記少なくとも3つのターゲットマーク位置をそれぞれ算出するように構成されており、前記ロボットシステムは、前記機械座標系における前記少なくとも3つのターゲットマーク位置、および前記ロボット座標系における前記少なくとも3つのターゲットマーク位置に基づいて、前記ロボット座標系に対する前記機械座標系の位置を算出する機械座標系算出部をさらに備える。
本願の3番目の発明によれば、2番目の発明に係るロボットシステムにおいて、前記工作機械は、作動可能な可動部を備えており、前記ターゲットマークは、前記可動部に設置されており、前記工作機械は、前記可動部を作動させることにより、前記ターゲットマークを前記少なくとも3つのターゲットマーク位置に移動させるように構成される。
本願の4番目の発明によれば、1番目の発明に係るロボットシステムにおいて、前記ロボット座標系における位置が未知であって、かつ同一直線上にはない少なくとも3つのターゲットマーク位置に前記ターゲットマークが配置されているときに、前記ターゲットマーク位置算出部が、前記ロボット座標系における前記少なくとも3つのターゲットマーク位置をそれぞれ算出するように構成されており、前記ロボット座標系における前記少なくとも3つのターゲットマーク位置に基づいて、前記ロボットの作業用座標系を算出する作業用座標系算出部をさらに備え、前記作業用座標系は前記ロボット座標系とは別に新しく設定され、前記ロボットにより実行される所定の作業において基準となる座標系であり、
前記作業用座標系を設定したい位置は前記少なくとも3つのターゲットマーク位置と対応しており、前記作業用座標系は前記少なくとも3つのターゲットマーク位置が含まれる平面に対して算出される
【0008】
これら並びに他の本発明の目的、特徴および利点は、添付図面に示される本発明の例示的な実施形態に係る詳細な説明を参照することによって、より明らかになるであろう。
【発明の効果】
【0009】
本発明に係るロボットシステムによれば、カメラのキャリブレーションを予め行う必要がなく、また、安価な2次元カメラを用いてターゲットマークの3次元位置を計測できる。それにより、安価でかつ簡素な方法でありながら、ロボット座標系と工作機械の座標系との位置関係を特定できるようになる。
【図面の簡単な説明】
【0010】
図1】一実施形態に係るロボットシステムを示す図である。
図2】一実施形態に従って実行される処理の流れを示すフローチャートである。
図3】画像に対して設定される座標系を示す図である。
図4】ロボット座標系と手首座標系との間の位置関係を示す図である。
図5】第1のターゲットマーク位置に配置されたターゲットマークを示す図である。
図6】一実施形態に従って実行される処理の流れを示すフローチャートである。
図7】第2のターゲットマーク位置に配置されたターゲットマークを示す図である。
図8】画像の位置関係および特徴量の差を示す図である。
図9】第2のターゲットマーク位置に配置されたターゲットマークを示す図である。
図10】別の実施形態に係るロボットシステムを示す図である。
図11】一実施形態に従って実行される処理の流れを示すフローチャートである。
図12】一実施形態に従って実行される処理の流れを示すフローチャートである。
図13】また別の実施形態に係るロボットシステムを示す図である。
【発明を実施するための形態】
【0011】
以下、添付図面を参照して本発明の実施形態を説明する。図示される実施形態の構成要素は、本発明の理解を助けるために縮尺が適宜変更されている。同一または対応する構成要素には、同一の参照符号が使用される。
【0012】
図1は、一実施形態に係るロボットシステム1を示している。ロボットシステム1は、ロボット2と、ロボット2を制御するロボット制御装置3と、ロボット2に取付けられたカメラ4と、画像処理装置5と、を備えている。ロボット2は、図1に示されるような6軸垂直多関節ロボットに限定されず、他の任意の公知の構成を有するロボットであってもよい。
【0013】
ロボット2は、ベース21と、ベース21から延びるアーム22と、を備えている。ロボット2のアーム先端部23には、治具24を介してカメラ4が取付けられている。それにより、ロボット2のアーム先端部23に連動して、カメラ4の位置および姿勢が変更されるようになっている。
【0014】
ロボット制御装置3は、CPUと、メモリと、外部装置に接続されるインタフェイスと、を備えたデジタルコンピュータである。ロボット制御装置3は、不揮発性メモリに記憶された動作プログラムに従って、ロボット2の各々の軸を駆動する駆動装置、例えばサーボモータに指令を付与することによって、ロボット2を制御する。ロボット制御装置3は、ロボット2の制御の基準となるロボット座標系におけるロボット2の手先の位置を取得できるように構成されている。
【0015】
ロボット2の動作領域またはその近傍には、ターゲットマーク6が設置されている。ターゲットマーク6は、ロボット2とともに移動するカメラ4によって撮像可能な位置に固定されている。
【0016】
ターゲットマーク6には、画像処理によってターゲットマーク6の像の位置および大きさを特定できるように特徴的な模様が付与されている。例えば、ターゲットマーク6には、三角形の模様が付与されている。
【0017】
カメラ4は、対象物の画像を取得する機能を有する受光デバイスである。カメラ4は、画像処理装置5に接続されており、カメラ4によって撮像された画像データは、画像処理装置5に送られる。
【0018】
画像処理装置5は、CPUと、メモリと、外部装置に接続されるインタフェイスと、を備えたデジタルコンピュータである。画像処理装置5は、カメラ4によって取得された画像からターゲットマーク6を検出するとともに、ターゲットマーク6の模様から画像上におけるターゲットマーク6の位置および大きさを算出するように構成される。
【0019】
画像処理装置5は、通信ケーブルまたは無線通信によりロボット制御装置3に接続されていて、ロボット制御装置3から指令を受信したり、またはロボット制御装置3に画像処理の結果を送信できるようになっている。別の実施形態において、画像処理装置5は、ロボット制御装置3に内蔵されていてもよい。
【0020】
図2は、ロボット制御装置3の機能ブロック図である。ロボット制御装置3は、基準データ記憶部31と、ターゲットマーク位置算出部32と、を備えている。
【0021】
基準データ記憶部31は、ターゲットマーク6が、ロボット2の制御の基準となるロボット座標系Σrにおいて予め定められる第1のターゲットマーク位置に配置されており、かつ、アーム先端部23が第1のロボット位置に位置決めされているときに、カメラ4の画像に含まれるターゲットマーク6の像の位置および大きさを基準データとして記憶するとともに、アーム先端部23に対する第1のターゲットマーク位置をツール先端点の位置として記憶する。
【0022】
ターゲットマーク位置算出部32は、ターゲットマーク6が第2のターゲットマーク位置に配置されているときに、カメラ4の画像に含まれるターゲットマーク6の像の位置および大きさが、基準データとして記憶されているターゲットマーク6の像の位置および大きさに一致するようにアーム先端部23を移動させるとともに、移動後のアーム先端部23の位置に対応する第2のロボット位置、およびツール先端点の位置に基づいて、ロボット座標系Σrにおける第2のターゲットマーク位置を算出する。
【0023】
図2を参照して、一実施形態に係るロボットシステム1において実行される初期設定について説明する。初期設定は、ロボット2のアーム先端部23にカメラ4を取付ける際に一度だけ実行される。
【0024】
ステップS101において、ロボット2のアーム先端部23にカメラ4を取付ける。アーム先端部23に対するカメラ4の向きは特に限定されないものの、カメラ4とアーム先端部23との間の位置関係が変化しないように、カメラ4は治具24を介して固定される。
【0025】
ステップS102において、ターゲットマーク6を第1のターゲットマーク位置に配置する。第1のターゲットマーク位置は、アーム先端部23に取付けられたカメラ4がターゲットマーク6を撮像可能であれば、任意の位置であってもよい。
【0026】
ステップS103において、第1のターゲットマーク位置に配置されたターゲットマーク6を撮像可能な位置(第1のロボット位置)までロボット2を移動させる。ロボット2の移動は、オペレータの手動操作によって行われてもよいし、または予め定められる第1のロボット位置までロボット2を自動的に移動させてもよい。第1のロボット位置は、カメラ4の光軸と、模様が形成されたターゲットマーク6の表面とが互いに垂直になるような位置であることが望ましいものの、それには限定されない。
【0027】
ステップS104において、ターゲットマーク6をカメラ4で撮像し、ターゲットマーク6の模様を検出対象のモデルとして登録する。ステップS104で登録されるモデル(以下、単に「登録モデル」と称することがある。)の内部データ形式は、画像処理装置5において使用される画像処理アルゴリズムに応じて定まる。例えば、正規化相関を利用したテンプレートマッチング、エッジ情報を利用した一般化ハフ変換などの画像処理アルゴリズムを使用できるものの、それらには限定されない。
【0028】
ステップS105において、登録モデルを利用して、カメラ4で撮像された画像からターゲットマーク6を検出し、画像上における特徴量を算出する。本実施形態において、特徴量は、画像上におけるターゲットマーク6の模様の位置および大きさである。
【0029】
例えば、正規化相関に基づくテンプレートマッチングを使用する場合、登録されたモデルとテンプレートとの一致度が最も大きいときのテンプレートの位置、およびテンプレートの拡大縮小の割合が、位置および大きさに関する特徴量として算出される。
【0030】
画像上における位置および大きさの特徴量は、画像座標系において表現される数値である。画像座標系は、カメラ4で撮像された画像に対して設定される。例えば、図3に示されるように、画像座標系は、画像の左上の端部を原点とし、画像下方向をu軸、画像右方向をv軸とする座標系である。その場合、画像上における位置の特徴量は、画像座標系における登録モデルの原点位置として表現される。位置の特徴量の単位は画素である。モデルの原点位置は任意に定められるものの、1つのモデルに固有のものである。
【0031】
大きさの特徴量sは、例えば登録モデルの大きさを1.0(100%)として、それに対する割合として算出される。すなわち、検出されるモデルの大きさが登録モデルよりも大きい場合は、特徴量sは1.0よりも大きくなり、逆に登録モデルよりも小さい場合は、特徴量sは1.0よりも小さくなる。
【0032】
図2に戻り、ステップS106において、ロボット2のアーム先端部23に対する第1のターゲットマーク位置の3次元位置をツール先端点(TCP)として算出する。アーム先端部23、ターゲットマーク6、およびツール先端点の位置を説明するために、ロボット座標系Σrおよび手首座標系Σfをそれぞれ定義する。
【0033】
ロボット座標系Σrは、ロボット2のベース21に固定されていてロボット2の制御の基準となる座標系である。手首座標系Σfは、アーム先端部23に固定されていて、アーム先端部23に連動する座標系である(図4参照)。アーム先端部23の位置は、ロボット座標系Σrにおける手首座標系Σfの位置として表現される。
【0034】
以下の説明において、「ツール先端点の位置」は、特に言及しない限り、手首座標系Σfにおける位置を意味する。ツール先端点の位置Tは、次の式(1)によって求められる。なお、「R1」は、ロボット座標系Σrにおける手首座標系Σfの位置であり、「P1」は、ロボット座標系Σrにおける第1のターゲットマーク位置である(図5参照)。
【0035】
【数1】
【0036】
なお、「R1」は、4×4の同次変換行列であり、「T」および「P1」は、(x,y,z)Tの3×1のベクトルである。
【0037】
図2に戻り、ステップS107において、ステップS105で算出された位置の特徴量(u,v)および大きさの特徴量s、並びにステップS106で算出されたツール先端点の位置Tからなるデータセットを基準データとして記憶する。
【0038】
ステップS106において、ロボット座標系Σrにおける第1のターゲットマーク位置の3次元位置P1を既知の情報として説明したものの、別の実施形態において、3次元位置P1を任意の方法で計測してもよい。例えば、特許文献2に記載された方法に従ってカメラを用いて3次元位置P1を計測してもよい。
【0039】
図6を参照して、任意の位置に配置されたターゲットマーク6の3次元位置を計測する方法について説明する。
【0040】
ステップS201において、計測対象の位置である第2のターゲットマーク位置にターゲットマーク6を配置する(図7参照)。
【0041】
ステップS202において、ターゲットマーク6がカメラ4の視野に含まれるような第2のロボット位置にアーム先端部23を移動させる。ロボット2は、オペレータの手動操作によって移動させられてもよいし、または予め定められる第2のロボット位置までロボット2が自動的に移動するようにしてもよい。第2のロボット位置は、第2のターゲットマーク位置に配置されたターゲットマーク6をカメラ4で撮像できる限り、ターゲットマーク6とカメラ4との間の相対的位置関係は厳密でなくてもよい。
【0042】
ステップS203において、カメラ4で撮像した画像からターゲットマーク6を検出し、画像上における位置および大きさに関する特徴量を算出する。ステップS203において、前述したステップS105と同様の画像処理アルゴリズムを使用することができる。
【0043】
ステップS204において、算出された特徴量と、前述したステップS107において記憶された基準データに対応する特徴量が一致しているか否かを判定する。ステップS204において、2つの特徴量の差(Δu,Δv,Δs)は、次の式(2)で求められる。なお、「(u0,v0,s0)」は、基準データとして記憶された特徴量であり、「(u1,v1,s1)」は、ステップS203で算出された特徴量である。
【0044】
【数2】
【0045】
図8は、画像の位置関係および特徴量の差(Δu,Δv)を示している。第1のロボット位置から、第1のターゲットマーク位置に配置されたターゲットマーク6をカメラ4で撮像したときの、画像上におけるターゲットマーク6が点線で示されている。第2のロボット位置から、第2のターゲットマーク位置に配置されたターゲットマーク6をカメラ4で撮像したときの、画像上におけるターゲットマーク6が実線で示されている。
【0046】
ターゲットマーク6の大きさに関する特徴量sは、ターゲットマーク6とカメラ4との間の距離に反比例する。したがって、式(2)において、特徴量sの逆数が使用されている。
【0047】
位置の判定に使用される閾値が0.1画素である場合、(Δu,Δv)の長さが0.1画素未満である場合、2つのターゲットマーク6は、画像上においてそれぞれ同じ位置に配置されていると判定される。大きさの判定に使用される閾値が0.1画素である場合、Δsが−0.1〜0.1の範囲内である場合、2つのターゲットマーク6は、画像上においてそれぞれ同じ大きさを有していると判定される。
【0048】
ステップS204における判定結果が否定である場合(位置および大きさの少なくともいずれ一方が一致しない場合)、ステップS205に進み、特徴量の差(Δu,Δv,Δs)が小さくなるようにロボット2を移動させる。特徴量の差(Δu,Δv,Δs)からロボット2の移動量を算出する方法は、特に限定されないものの、その一例について後述する。
【0049】
ステップS204における判定結果が肯定である場合、ステップS206に進み、ロボット座標系Σrにおける第2のターゲットマーク位置の3次元位置を算出する。本実施形態によれば、ステップS204において、画像から検出された特徴量が、基準データにおける特徴量に一致していることを確認している。そのため、ロボット2のアーム先端部23の位置と第2のターゲットマーク位置との間の位置関係は、アーム先端部23が第1のロボット位置に位置決めされているときのアーム先端部23の位置と第1のターゲットマーク位置との間の位置関係と同じである。
【0050】
したがって、ロボット座標系Σrにおける第2のターゲットマーク位置の3次元位置P2は、次の式(3)で表される。「R2」は、アーム先端部23が第2のロボット位置に位置決めされているときの、ロボット座標系Σrにおける手首座標系Σfの位置である。「T」は、基準データとして記憶されているツール先端点(TCP)の値である(図9参照)。
【0051】
【数3】
【0052】
「R2」は、4×4の同次変換行列であり、「T」および「P2」は、(x,y,z)Tの3×1のベクトルである。
【0053】
図6に示される例では、精度を向上させるため、ステップS205の処理の後にステップS203およびステップS204の処理が再度実行される。しかしながら、別の実施形態において、特徴量の差(Δu,Δv,Δs)から算出されるロボット2の移動量だけロボット2を移動させた後、ステップS203に戻らずに、ステップS206に直接進んでもよい。
【0054】
ステップS205において、ロボット2の移動量を算出する方法の例として、ヤコビアン行列を用いた方法について説明する。
【0055】
まず、特徴量の差(Δu,Δv,Δs)と、ロボット2の移動量(Δx,Δy,Δz)との間の関係をヤコビアン行列Jを用いて次の式(4)で定義する。ヤコビアン行列Jは、3×3の正方行列である。
【0056】
【数4】
【0057】
したがって、ヤコビアン行列Jが分かっていれば、特徴量の差(Δu,Δv,Δs)からロボット2の移動量(Δx,Δy,Δz)を算出できる。
【0058】
次に、ヤコビアン行列Jを求める方法について説明する。ヤコビアン行列を求める工程は、カメラ4をロボット2のアーム先端部23に取付けた後の初期設定の際に一度だけ実行すればよい。
【0059】
ターゲットマーク6を任意の位置に配置し、ターゲットマーク6が画像中心付近に位置するようなロボット2の位置を原位置とする。例えば、ターゲットマーク6が第1のターゲットマーク位置に配置されている場合、第1のロボット位置を原位置とすればよい。
【0060】
アーム先端部23が原位置に位置決めされた状態において、カメラ4で撮像された画像からターゲットマーク6を検出し、特徴量(ui,vi,si)を算出する。
【0061】
次に、アーム先端部23を手首座標系ΣfのX軸方向に距離mだけ移動させ、移動後の位置においてカメラ4で撮像された画像からターゲットマーク6を検出し、特徴量(ux,vx,sx)を算出する。
【0062】
同様に、アーム先端部23を原位置から手首座標系ΣfのY軸方向およびZ軸方向にそれぞれ距離mだけ移動させた後に撮像される画像から特徴量(uy,vy,sy)、(uz,vz,sz)を算出する。
【0063】
X軸方向、Y軸方向およびZ軸方向にロボット2を移動させたときのターゲットマーク6の検出結果と、原位置におけるターゲットマーク6の検出結果と、に基づいて、特徴量の差を次の式(5)〜(7)に従って算出する。
【0064】
【数5】
【0065】
【数6】
【0066】
【数7】
【0067】
式(5)〜(7)を式(4)に代入すると、次の式(8)からヤコビアン行列Jを求めることができる。
【0068】
【数8】
【0069】
次に、前述した実施形態に係る測定方法を利用して、工作機械の座標系を設定する方法について説明する。本実施形態に係るロボットシステム1は、図1に示される構成に加えて、工作機械7および工作機械制御装置71をさらに備えている(図10参照)。また、図10に示されるように、3つのターゲットマーク6が、工作機械7のテーブル72に載置されている。
【0070】
前述した実施形態と同様に、ロボット座標系Σrおよび手首座標系Σfがそれぞれ定義される。さらに、本実施形態では、図10に示されるように、工作機械7の制御の基準となる機械座標系Σmが定義される。
【0071】
本実施形態において、ロボット制御装置3は、機械座標系算出部33をさらに備えている。機械座標系算出部33は、機械座標系Σmにおける少なくとも3つのターゲットマーク位置、およびロボット座標系Σrにおける少なくとも3つのターゲットマーク位置に基づいて、ロボット座標系Σrに対する機械座標系Σmの位置を算出する。
【0072】
工作機械7のテーブル72は、3つのターゲットマーク6を機械座標系Σmにおける3次元位置が既知である位置に配置できるように構成されている。例えば、ターゲットマーク6は、位置決めピンによって予め定められる位置に配置される。ターゲットマーク6の配置を再現可能にすれば、追加のロボットを使用したり、或いはロボットを交換したりするときに、再設定をより簡便に実行できる利点がある。なお、3つのターゲットマーク6は、一直線上に配列されないように位置決めされるのが好ましい。
【0073】
工作機械制御装置71は、ロボット制御装置3に接続されており、機械座標系Σmにおけるターゲットマーク6の位置が、必要に応じてロボット制御装置3に送信されるようになっている。
【0074】
図11を参照して、機械座標系Σmに一致する座標系をロボット2に設定する工程について説明する。なお、前述した初期設定は完了しているものとする。
【0075】
ステップS301において、3つのターゲットマークを第3、第4および第5のターゲットマーク位置にそれぞれ配置する。機械座標系Σmにおける第3、第4および第5のターゲットマーク位置Q3、Q4、Q5は、それぞれ既知である。
【0076】
ステップS302において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第3のターゲットマーク位置P3を計測する。
【0077】
ステップS303において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第4のターゲットマーク位置P4を計測する。
【0078】
ステップS304において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第5のターゲットマーク位置P5を計測する。
【0079】
ステップS305において、機械座標系Σmにおける第3、第4および第5のターゲットマーク位置Q3、Q4、Q5と、ロボット座標系Σrにおける第3、第4および第5のターゲットマーク位置P3、P4、P5と、に基づいて、ロボット座標系Σrにおける機械座標系Σmの位置を算出する。
【0080】
ステップS305において実行される算出方法の一例を説明する。以下の説明において、ロボット座標系Σrにおける機械座標系Σmの位置をMとする。「M」は、4×4の同次変換行列である。
【0081】
第3、第4および第5のターゲットマーク位置が含まれる平面に対してターゲットマーク座標系Σtを定義する。ターゲットマーク座標系Σtは、第3のターゲットマーク位置を原点とし、第3のターゲットマーク位置から第4のターゲットマーク位置に向けられた方向をX軸方向とし、かつ、第3、第4および第5のターゲットマーク位置が含まれる平面をXY平面となるように定められる。
【0082】
ロボット座標系Σrにおけるターゲットマーク座標系Σtの位置を「Tr」とすれば、4×4の同次変換行列である「Tr」は、次の式(9)から計算される。
【0083】
Vx=(P4−P3)/|P4−P3|
Vt=(P5−P3)/|P5−P3|
Vz=Vx×Vt
Vy=Vz×Vx
【0084】
【数9】
【0085】
機械座標系Σmにおけるターゲットマーク座標系Σtの位置を「Tm」とすれば、4×4の同次変換行列である「Tm」は、次の式(10)から計算される。
【0086】
Wx=(Q4−Q3)/|Q4−Q3|
Wt=(Q5−Q3)/|Q5−Q3|
Wz=Wx×Wt
Wy=Wz×Wx
【0087】
【数10】
【0088】
ここで、Tr=M・Tmが成立するから、M=Tr・Tm-1である。
【0089】
工作機械7のテーブル72が、2つの軸方向において並進可能であるとともに、1つの軸の回りに回転可能である場合、テーブル72を作動させて、1つのターゲットマーク6を互いに異なる3つの位置まで移動させることによって、前述した第3、第4および第5のターゲットマーク位置を取得してもよい。その場合、テーブル72に対するターゲットマーク6の位置が、工作機械7の仕様によって一意に定まる位置である場合、機械座標系Σmにおけるターゲットマーク6の位置は、テーブル72の位置から算出できる。或いは、タッチプローブなどを用いて、機械座標系Σmにおけるターゲットマーク6の位置が計測されてもよい。
【0090】
次に、図12および図13を参照して、ロボット2に新しい座標系を設定する方法について説明する。新しい座標系は、ロボット2によって実行される所定の作業において、作業用座標系Σcとして使用される。この場合に使用されるロボットシステム1は、図1に示される構成と類似しているものの、3つのターゲットマーク6が使用されるとともに、ロボット制御装置3は、作業用座標系算出部34をさらに備えている(図13参照)。
【0091】
作業用座標系算出部34は、ロボット座標系Σrにおける少なくとも3つのターゲットマーク位置に基づいて、ロボット2の作業用座標系Σcを算出する。
【0092】
図12に示されるように、ステップS401において、作業用座標系Σcを設定したい位置に対応する第6、第7および第8のターゲットマーク位置にターゲットマーク6を配置する。
【0093】
ステップS402において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第6のターゲットマーク位置P6を計測する。
【0094】
ステップS403において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第7のターゲットマーク位置P7を計測する。
【0095】
ステップS404において、図6を参照して説明したステップS202〜S206の処理に従って、ロボット座標系Σrにおける第8のターゲットマーク位置P8を計測する。
【0096】
ステップS405において、ロボット座標系Σrにおける第6、第7および第8のターゲットマーク位置P6、P7、P8に基づいて、新しく設定される作業用座標系Σcの位置Cを算出する。
【0097】
ステップS405において、作業用座標系Σcの位置Cを算出する方法の一例について説明する。
【0098】
作業用座標系Σcは、第6、第7および第7のターゲットマーク位置が含まれる平面に対して設定される。作業用座標系Σcは、第6のターゲットマーク位置を原点とし、第6のターゲットマーク位置から第7のターゲットマーク位置に向けられた方向をX軸方向とし、かつ、第6、第7および第8のターゲットマーク位置が含まれる平面をXY平面となるように定められる。その場合、作業用座標系Σcの位置Cは、次の式(11)から計算できる。なお、位置Cは、4×4の同次変換行列である。
【0099】
Vx=(P7−P6)/|P7−P6|
Vt=(P8−P6)/|P8−P6|
Vz=Vx×Vt
Vy=Vz×Vx
【0100】
【数11】
【0101】
なお、カメラ4およびターゲットマーク6は、前述した実施形態の処理を実行する際に一時的に使用されればよく、処理終了後には必要に応じて取外されてもよい。
【0102】
本実施形態に係るロボットシステム1によれば、次のような効果を奏することができる。
【0103】
(1)カメラ4のキャリブレーションを予め行う必要がない。そのため、作業効率を向上できる。
【0104】
(2)本実施形態において使用されるカメラ4は、1台の2次元カメラであってもよい。すなわち、ステレオ計測する必要なくターゲットマーク6の3次元位置を計測できるので、安価なロボットシステム1を提供できる。
【0105】
(3)工作機械7とともに使用される場合のように、ロボット2の動作領域が制限される場合であっても、ターゲットマーク6の3次元位置を計測できる。
【0106】
(4)工作機械7に対して設定される機械座標系Σmに対応する座標系がロボット2に設定されるので、工作機械7とロボット2との間で位置情報を共有することができる。
【0107】
以上、本発明の種々の実施形態について説明したが、当業者であれば、他の実施形態によっても本発明の意図する作用効果を実現できることを認識するであろう。特に、本発明の範囲を逸脱することなく、前述した実施形態の構成要素を削除または置換することができるし、或いは公知の手段をさらに付加することができる。また、本明細書において明示的または暗示的に開示される複数の実施形態の特徴を任意に組合せることによっても本発明を実施できることは当業者に自明である。
【符号の説明】
【0108】
1 ロボットシステム
2 ロボット
21 ベース
22 アーム
23 アーム先端部
3 ロボット制御装置
31 基準データ記憶部
32 ターゲットマーク位置算出部
33 機械座標系算出部
34 作業用座標系算出部
4 カメラ
5 画像処理装置
6 ターゲットマーク
7 工作機械
71 工作機械制御装置
72 テーブル(可動部)
Σf 手首座標系
Σm 機械座標系
Σr ロボット座標系
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13