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

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

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

特許6568172キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法
<>
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000002
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000003
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000004
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000005
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000006
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000007
  • 特許6568172-キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6568172
(24)【登録日】2019年8月9日
(45)【発行日】2019年8月28日
(54)【発明の名称】キャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法
(51)【国際特許分類】
   B25J 9/10 20060101AFI20190819BHJP
【FI】
   B25J9/10 A
【請求項の数】12
【全頁数】12
(21)【出願番号】特願2017-182679(P2017-182679)
(22)【出願日】2017年9月22日
(65)【公開番号】特開2019-55469(P2019-55469A)
(43)【公開日】2019年4月11日
【審査請求日】2018年11月19日
【早期審査対象出願】
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100099759
【弁理士】
【氏名又は名称】青木 篤
(74)【代理人】
【識別番号】100123582
【弁理士】
【氏名又は名称】三橋 真二
(74)【代理人】
【識別番号】100112357
【弁理士】
【氏名又は名称】廣瀬 繁樹
(72)【発明者】
【氏名】村田 裕介
【審査官】 臼井 卓巳
(56)【参考文献】
【文献】 特開2005−149299(JP,A)
【文献】 特開2006−082170(JP,A)
【文献】 特開2008−012604(JP,A)
【文献】 特開2010−142901(JP,A)
【文献】 特開2014−151427(JP,A)
【文献】 特表2017−505240(JP,A)
【文献】 米国特許出願公開第2009/0118864(US,A1)
【文献】 米国特許出願公開第2015/0241203(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/10−13/08
(57)【特許請求の範囲】
【請求項1】
ロボットを制御するロボット制御装置であって、
前記ロボットの可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定する規定部と、
前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うキャリブレーション実行部と、
前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶する記憶部と、を備え、
前記記憶部に記憶された、前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記規定部は前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記キャリブレーション実行部は前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記記憶部は前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶する、
ロボット制御装置。
【請求項2】
前記第1のキャリブレーション結果と前記第2のキャリブレーション結果との差が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項1に記載のロボット制御装置。
【請求項3】
前記第1の計測領域と前記第2の計測領域との間の中間位置について、前記第1のキャリブレーション結果を用いて計算される位置と前記第2のキャリブレーション結果を用いて計算される位置との距離が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項1に記載のロボット制御装置。
【請求項4】
前記ロボットの動作プログラムを実行するときに、該動作プログラムに含まれる各教示点に対し、その教示点に最も近い計測領域でのキャリブレーション結果に対応する機構パラメータを適用するパラメータ適用部をさらに有する、請求項1〜3のいずれか1項に記載のロボット制御装置。
【請求項5】
ターゲットと、
前記ターゲットを撮像可能な受光デバイスと、
前記ターゲット又は前記受光デバイスが取付けられた可動部を有するロボットと、
前記ロボットを制御するロボット制御装置と、を有する計測システムであって、
前記ロボットの前記可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定する規定部と、
前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うキャリブレーション実行部と、
前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶する記憶部と、を備え、
前記記憶部に記憶された、前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記規定部は前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記キャリブレーション実行部は前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記記憶部は前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶する、
計測システム。
【請求項6】
前記第1のキャリブレーション結果と前記第2のキャリブレーション結果との差が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項5に記載の計測システム。
【請求項7】
前記第1の計測領域と前記第2の計測領域との間の中間位置について、前記第1のキャリブレーション結果を用いて計算される位置と前記第2のキャリブレーション結果を用いて計算される位置との距離が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項5に記載の計測システム。
【請求項8】
前記ロボットの動作プログラムを実行するときに、該動作プログラムに含まれる各教示点に対し、その教示点に最も近い計測領域でのキャリブレーション結果に対応する機構パラメータを適用するパラメータ適用部をさらに有する、請求項5〜7のいずれか1項に記載の計測システム。
【請求項9】
ターゲットと、
前記ターゲットを撮像可能な受光デバイスと、
前記ターゲット又は前記受光デバイスが取付けられた可動部を有するロボットと、
前記ロボットを制御するロボット制御装置と、を有する計測システムを用いた前記ロボットのキャリブレーション方法であって、
前記ロボットの前記可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定することと、
前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うことと、
前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶することと、
前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶することと、
を含むキャリブレーション方法。
【請求項10】
前記第1のキャリブレーション結果と前記第2のキャリブレーション結果との差が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項9に記載のキャリブレーション方法。
【請求項11】
前記第1の計測領域と前記第2の計測領域との間の中間位置について、前記第1のキャリブレーション結果を用いて計算される位置と前記第2のキャリブレーション結果を用いて計算される位置との距離が予め定めた閾値を超えているときに、前記第3の計測領域を規定する、請求項9に記載のキャリブレーション方法。
【請求項12】
前記ロボットの動作プログラムを実行するときに、該動作プログラムに含まれる各教示点に対し、その教示点に最も近い計測領域でのキャリブレーション結果に対応する機構パラメータを適用することをさらに含む、請求項9〜11のいずれか1項に記載のキャリブレーション方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボットのキャリブレーションを行うロボット制御装置、計測システム及びキャリブレーション方法に関する。
【背景技術】
【0002】
ロボットの位置決め精度向上のための1つの手段として、ロボットの各駆動軸の変位と、該ロボットの先端の位置及び姿勢との関係を定める関係式において用いられる機構パラメータのキャリブレーション(校正)を行うことが公知である。
【0003】
またキャリブレーションを行う際に、ロボットに取付けたカメラを使用する技術(例えば特許文献1、2参照)、ダイヤルゲージ、ミラー及び角度計を含む測定器を使用する技術(例えば特許文献3参照)、又は先端が球形のプローブを使用する技術(例えば特許文献4参照)も周知である。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2008−012604号公報
【特許文献2】特開2014−151427号公報
【特許文献3】特開2002−273676号公報
【特許文献4】特開2009−125857号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
従来のキャリブレーションは、コストや手間の観点から、ロボットの可動範囲全てについて行われるのではなく、特定の計測領域において行われる。従ってロボットの位置決め精度は、キャリブレーションを行った計測領域内では高くすることができるが、該計測領域から比較的離れた領域では、ロボットアームの弾性変形やロボットの各軸に設けたギヤのバックラッシ等の影響により、位置決め精度が低下することがある。
【課題を解決するための手段】
【0006】
本開示の一態様は、ロボットを制御するロボット制御装置であって、前記ロボットの可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定する規定部と、前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うキャリブレーション実行部と、前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶する記憶部と、を備え、前記記憶部に記憶された、前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記規定部は前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記キャリブレーション実行部は前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記記憶部は前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶する、ロボット制御装置である。
【0007】
本開示の他の態様は、ターゲットと、前記ターゲットを撮像可能な受光デバイスと、前記ターゲット又は前記受光デバイスが取付けられた可動部を有するロボットと、前記ロボットを制御するロボット制御装置と、を有する計測システムであって、前記ロボットの前記可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定する規定部と、前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うキャリブレーション実行部と、前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶する記憶部と、を備え、前記記憶部に記憶された、前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記規定部は前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記キャリブレーション実行部は前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記記憶部は前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶する、計測システムである。
【0008】
本開示のさらなる他の態様は、ターゲットと、前記ターゲットを撮像可能な受光デバイスと、前記ターゲット又は前記受光デバイスが取付けられた可動部を有するロボットと、前記ロボットを制御するロボット制御装置と、を有する計測システムを用いた前記ロボットのキャリブレーション方法であって、前記ロボットの前記可動部の可動範囲内に、第1の計測領域、及び該第1の計測領域とは異なる第2の計測領域を含む少なくとも2つの計測領域を規定することと、前記ロボットの前記可動部を前記第1の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、さらに、前記ロボットの前記可動部を前記第2の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行うことと、前記第1の計測領域でのキャリブレーションによって得られた機構パラメータを第1のキャリブレーション結果として記憶し、前記第2の計測領域でのキャリブレーションによって得られた機構パラメータを第2のキャリブレーション結果として記憶することと、前記第1のキャリブレーション結果と前記第2のキャリブレーション結果とに基づいて、前記第1の計測領域と前記第2の計測領域との間に第3の計測領域を規定し、前記ロボットの前記可動部を前記第3の計測領域内に移動させて前記ロボットの機構パラメータのキャリブレーションを行い、前記第3の計測領域でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶することと、を含むキャリブレーション方法である。
【発明の効果】
【0009】
本開示によれば、なるべく少ない計測領域数で効率的にロボットの位置決め精度を向上させることができるようになる。
【図面の簡単な説明】
【0010】
図1】第1の実施形態に係る計測システムの概略構成を示す図である。
図2】第2の実施形態に係る計測システムの概略構成を示す図である。
図3】ロボット制御装置のブロック構成を示す図である。
図4】画像処理装置のブロック構成を示す図である。
図5】計測システムにおけるキャリブレーション方法の一例を示すフローチャートである。
図6】計測領域の設定例を示す図である。
図7】キャリブレーションを行うときのカメラとターゲットとの位置関係の一例を説明する図である。
【発明を実施するための形態】
【0011】
図1は、第1の実施形態に係る計測システムの概略構成を示す図である。ロボット1は、多関節ロボット等の公知のロボットでよく、ロボット1を制御するロボット制御装置5に接続され、アーム(可動部)1a及びベース1bを有する。アーム1aの先端部すなわちツール取付面32には、カメラ4が取り付けられる。ロボット1には、ロボットのベース1bに固定されたロボット座標系Σbと、ツール取付面32に固定されたメカニカルインターフェイス座標系Σfとが設定される。ロボット制御装置5は、随時、メカニカルインターフェイス座標系Σfの原点の位置及び姿勢(現在位置)を知ることができる。また、周知の手動操作キーを備えた教示操作盤18がロボット制御装置5に接続され、作業者はその手動操作キーを操作することにより、ロボット1を操作することができる。
【0012】
カメラ4は例えばCCDカメラであり、撮像により2次元画像を受光面(CCDアレイ面上)で検出する機能を持つ周知の受光デバイスである。カメラ4は、LCD、CRT等からなるモニタ3を備えた画像処理装置2に接続される。本実施形態では、カメラ4はロボット座標系Σbで表される空間内に固定されている視覚ターゲット6上のマーク7を撮像する。
【0013】
また第2の実施形態として、図2に示すように、ターゲット6をツール取付面32すなわちメカニカルインターフェイス座標系Σfに固定し、カメラ4をロボット座標系Σbで表される空間内に固定することも可能である。このように受光デバイス及びターゲットの設置は自由度が高く、また両者の相対位置関係は自動的かつ高精度に修正可能なので、受光デバイスやターゲットの設置に関する精度管理は不要である。図2の構成による計測手順は図1のものと同様でよいので、以降の説明は第1の実施形態について行う。
【0014】
図3は、ロボット制御装置5の構成を示すブロック図である。ロボット制御装置5は、メインCPU11を有し、メインCPU11には、バス17を介してRAM、ROM、不揮発性メモリ等からなるメモリ12、教示操作盤用インターフェイス13、通信インターフェイス14、サーボ制御部15、及び外部装置用の入出力インターフェイス16が接続される。なお第1の実施形態では、本開示に係る規定部、キャリブレーション実行部及びパラメータ適用部の機能はメインCPU11が担い、記憶部の機能はメモリ12が担うものとするが、これらの構成要素の少なくとも一部を、ロボット制御装置5以外の他の装置(例えばロボット制御装置5に接続されたパーソナルコンピュータ)に担わせることも可能である。
【0015】
教示操作盤用インターフェイス13に接続される教示操作盤18は、例えばディスプレイ18aを有する可搬式の操作盤であり、作業者は、教示操作盤18のマニュアル操作を通して、ロボットの動作プログラムの作成、修正、登録、あるいは各種パラメータの設定の他、教示された動作プログラムの再生運転(実行)、ジョグ送り等を実行することができる。ロボット及びロボット制御装置の基本機能を支えるシステムプログラムは、メモリ12のROMに格納される。また、アプリケーションに応じて教示されるロボットの動作プログラム及び関連する設定データは、メモリ12の不揮発性メモリに格納される。また、後述する諸処理(機構パラメータを求めることに関連したロボット移動及びそのための画像処理装置との通信等のための処理)のためのプログラム、パラメータ等のデータもメモリ12の不揮発性メモリに格納される。
【0016】
メモリ12のRAMは、メインCPU11が行う各種演算処理におけるデータの一時記憶の記憶領域に使用される。サーボ制御部15はサーボ制御器#1〜#n(nはロボットの総軸数であり、ここではn=6とする)を備え、ロボット制御のための演算処理(軌道計画作成とそれに基づく補間、逆変換など)によって作成された移動指令を受け、各軸に付属したエンコーダ又はパルスコーダ(図示省略)から受け取るフィードバック信号と併せてサーボアンプA1〜Anにトルク指令を出力する。各サーボアンプA1〜Anは、各トルク指令に基づいて各軸のサーボモータに電流を供給してそれらを駆動する。通信インターフェイス14は、画像処理装置2(図1参照)に接続されており、この通信インターフェイス14を介して、後述する計測に関連する指令、計測結果データ等の授受がロボット制御装置との間で行われる。
【0017】
図4は、画像処理装置2の構成を示すブロック図である。画像処理装置2は、マイクロプロセッサからなるCPU20を有し、CPU20には、バスライン30を介してROM21、画像処理プロセッサ22、カメラインターフェイス23、モニタインターフェイス24、入出力機器(I/O)25、フレームメモリ(画像メモリ)26、不揮発性メモリ27、RAM28及び通信インターフェイス29が接続される。
【0018】
カメラインターフェイス23には、撮像手段であるカメラ(ここではCCDカメラ)が接続される。カメラインターフェイス23を介して撮影指令が送られたときに、カメラに設定された電子シャッタ機能により撮影が実行され、カメラインターフェイス23を介して映像信号がグレイスケール信号の形でフレームメモリ26に格納される。モニタインターフェイス24にはモニタ(図1参照)としてCRT、LCD等のディスプレイが接続され、カメラが撮影中の画像、フレームメモリ26に格納された過去の画像、画像処理プロセッサ22による処理を受けた画像等が必要に応じて表示される。
【0019】
図1に示すように、カメラ4はロボット座標系Σbで表される空間内に固定されているターゲット6上のマーク7を撮像する。フレームメモリ26に格納されたマーク7の映像信号は、画像処理プロセッサ22を利用して解析され、その2次元位置及び大きさ等が求められる。なお、そのためのプログラム、パラメータ等は不揮発性メモリ27に格納されている。また、RAM28はCPU20が実行する各種処理に必要なデータの一時記憶に利用される。通信インターフェイス29は、前述したロボット制御装置側の通信インターフェイス14を介してロボット制御装置に接続される。
【0020】
次に、第1の実施形態における計測処理(キャリブレーション)の手順を、図5のフローチャートを参照しつつ説明する。先ず図6に示すように、ロボット1の可動部(アーム1a)の可動範囲内に複数の計測領域(ここでは第1の計測領域36及び第2の計測領域38)を規定する(ステップS1)。次に、複数の計測領域の各々において機構パラメータのキャリブレーションを行う(ステップS2)。
【0021】
次のステップS3では、キャリブレーションの結果を記憶部に記憶する。ここでは、第1の計測領域36でのキャリブレーションによって得られた機構パラメータが第1のキャリブレーション結果として記憶され、第2の計測領域38でのキャリブレーションによって得られた機構パラメータが第2のキャリブレーション結果として記憶される。
【0022】
各計測領域での機構パラメータのキャリブレーションについては、図7に示すように、ターゲット6(マーク7)をカメラ4で異なる方向から撮像(認識)することによって行われるが、この処理については特許文献1に記載の技術等の周知技術が適用可能であるので、詳細な説明は省略する。また計測領域とは、キャリブレーションを行うときにカメラ4による複数方向からの撮像のためにロボット1の可動部(アーム1a)が移動する範囲(掃引空間)又はこれを近似した範囲(図7参照)を指す。なお上述のターゲット6(マーク7)は、各計測領域について配置する。
【0023】
ここで機構パラメータとは、ロボット制御時に使用するロボットの各駆動軸の変位(入力)とロボットの先端位置(出力)との相関関係を定める関係式の中で用いられるパラメータを指す。このパラメータの代表例は、ロボットのリンク長や各駆動軸の原点位置である。また軸の回転方向によって生じるバックラッシや、リンクの弾性変形、減速機の弾性変形量等も挙げられる。また本開示では、同定計算する機構パラメータの種類は特に限定されるものではなく、定式化が可能でかつ互いに従属でないものであればよいが、その一例としては、ロボットの各軸の回転角度の基準(0度位置)に相当するエンコーダカウント値が挙げられる。各軸に設けたエンコーダのカウント値は該軸の回転角度に変換可能であるので、上述のキャリブレーションにより、各軸の0度位置に相当するエンコーダのカウント値を求めることができる。
【0024】
次にステップS4において、記憶部に記憶された、各計測領域でのキャリブレーションによって得られた機構パラメータ(キャリブレーション結果)を、近くの計測領域間で比較する。ここで近くの計測領域とは、2つの計測領域の中間位置に最も近い計測領域が他にない、2つの計測領域を指す。なお計測領域の代表位置は、キャリブレーションのためにターゲット6を計測(撮像)するときのカメラ4の複数の位置・姿勢のうちの1つ(基本姿勢)におけるロボット1のツール先端点の位置とする。ここでは、第1の計測領域36における第1のキャリブレーション結果と、第2の計測領域38における第2のキャリブレーション結果とが比較される。
【0025】
次のステップS5では、比較された機構パラメータの差が予め定めた閾値を超える近くの計測領域があるか否かを判定する。例えば、機構パラメータが上述のエンコーダカウント値である場合に、第1の計測領域36でのキャリブレーションによって得られた、ロボットのある軸の0度位置に相当するエンコーダカウント値が10であり、第2の計測領域38でのキャリブレーションによって得られた、ロボットの同じ軸の0度位置に相当するエンコーダカウント値が13であり、かつ上記閾値が2であるときは、機構パラメータの差は該閾値を超えていると判断される。このような場合、同じ軸について0度位置に相当する角度が、両計測領域間で所定の許容値(例えば0.5度)を超えて異なっていると判断できるからである。
【0026】
ステップS5において機構パラメータの差が閾値を超える近くの計測領域がある場合は、ステップS6に進み、機構パラメータの差が最も大きい近くの計測領域の間に新たな計測領域を規定する。ここでは、第1の計測領域36と第2の計測領域38との間に新たな(第3の)計測領域40を規定し、ステップS2に戻る。ステップS2では、新たな計測領域40内で、第1及び第2の計測領域と同様に、機構パラメータのキャリブレーションを行い、ステップS3では、第3の計測領域40でのキャリブレーションによって得られた機構パラメータを第3のキャリブレーション結果として記憶部に記憶する。ステップS4では、第1の計測領域36と第3の計測領域40とについて、さらに第2の計測領域38と第3の計測領域40とについて、機構パラメータを比較し、ステップS5で機構パラメータの差が閾値を超えるかを判定する。例えば、第1のキャリブレーション結果と第3のキャリブレーション結果との間の差が閾値を超えていて、第2のキャリブレーション結果と第3のキャリブレーション結果との間の差より大きい場合は、ステップS6で第1の計測領域36と第3の計測領域40との間にさらなる(第4の)計測領域を規定し、ステップS2に戻る。
【0027】
このように、機構パラメータの差が閾値を超える近くの計測領域の間に新たな計測領域を規定し、キャリブレーション及びその結果の記憶を行うことを、近くの計測領域間で機構パラメータの差が閾値を超えることがなくなるまで繰り返す。
【0028】
一方、ステップS5において機構パラメータの差が閾値を超える近くの計測領域がない場合は、別途(オフラインで)用意した動作プログラムの実行に際し、該動作プログラムに含まれる各教示点に対し、その教示点に最も近い計測領域でのキャリブレーションにより得られた機構パラメータを適用して、ロボットの位置(及び姿勢)を計算する(ステップS7)。
【0029】
なお本開示における第3の計測領域のような、複数(第1及び第2)の計測領域の「間」の計測領域は、例えば各計測領域の代表位置の中間位置を代表位置とする計測領域として規定することができる。
【0030】
本開示では、互いに異なる2つの計測領域でそれぞれキャリブレーションを行い、それぞれのキャリブレーション結果に対応する機構パラメータ間に所定の閾値を超える差があった場合に限り、それらの計測領域の間に新たな計測領域を設定して、該新たな計測領域でさらにキャリブレーションを行う、という処理が可能である。従ってロボットの動作プログラムを実行する際は、該動作プログラムに含まれる各教示点について、該教示点に最も近い計測領域でのキャリブレーション結果に対応する機構パラメータを使用することにより、極めて位置決め精度の高いロボット動作を実現することができる。従って本開示では、1つの計測領域しか設定しない場合に比べて位置決め精度が向上することに加え、予め3つ以上の計測領域を設定してそれぞれの計測領域でキャリブレーションを行う場合に比べ、不要な(精度向上に殆ど寄与しない)計測領域を設定してしまうことを防止することができる。
【符号の説明】
【0031】
1 ロボット
2 画像処理装置
3 モニタ
4 カメラ
5 ロボット制御装置
6 ターゲット
7 マーク
11 メインCPU
12 メモリ
13 教示操作盤用インターフェイス
14 通信インターフェイス(ロボット制御装置側)
15 サーボ制御部
16 外部装置用インターフェイス
17 バス
18 教示操作盤
18a ディスプレイ
20 CPU
21 ROM
22 画像処理プロセッサ
23 カメラインターフェイス
24 モニタインターフェイス
25 入力機器
26 フレームメモリ
27 不揮発性メモリ
28 RAM
29 通信インターフェイス(画像処理装置側)
30 バスライン
31 カメラ注視点
32 ツール取付面
36 第1の計測領域
38 第2の計測領域
40 第3の計測領域
図1
図2
図3
図4
図5
図6
図7