(57)【要約】【課題】  カメラの配置位置に起因する誤差を抑制し、ロボットに動作姿勢を精度よく教示することができる技術を提供する。【解決手段】  第１部品の組付部に対応する位置に設けられたカメラ１０を有するパレット４に、第２部品の組付部を模した模擬部品８が設けられているマスタ部品が６固定された状態でカメラ１０が撮影した第１画像から第２部品の目標位置を計算し、マスタ部品６が固定されていない状態のパレット４が第１部品の配置位置に配置されるとともに第２部品がロボット１６によって保持された状態でカメラ１０が撮影した第２画像から第２部品の実際位置を計算し、第２部品の目標位置と実際位置との間の偏差が所定の値よりも小さくなるときの姿勢を、第１部品に第２部品を組み付つける組み付け姿勢として、ロボット１６に教示する。【選択図】図１
2009279719.tif 000002
【特許請求の範囲】
【請求項１】
第１部品をロボットに対して配置し、第２部品をロボットによって保持し、ロボットを動作させることによって第１部品に第２部品を組み付ける際の動作姿勢をロボットに教示するティーチング作業のためのティーチング装置であり、
第１部品の配置位置に配置可能であり、第２部品が組み付けられる第１部品の組付部に対応する位置に設けられたカメラを有するパレットと、
パレットに固定可能であり、第１部品の組付部に組み付けられる第２部品の組付部を模した模擬部品が、第１部品の組付部に対する第２部品の組付部の目標位置に対応する位置に設けられているマスタ部品と、
カメラが撮影した画像を処理する処理装置を備え、
処理装置は、パレットにマスタ部品が固定された状態でカメラが撮影した模擬部品の画像から模擬部品の位置を計算し、マスタ部品が固定されていない状態のパレットが第１部品の配置位置に配置されるとともに第２部品がロボットによって保持された状態でカメラが撮影した第２部品の画像から第２部品の位置を計算し、計算した模擬部品の位置と第２部品の位置との間の偏差を計算することを特徴とするティーチング装置。
【請求項２】
前記処理装置は、計算した模擬部品の位置と第２部品の位置との間の偏差を用いて、ロボットに動作指令を与えることを特徴とする請求項１に記載のティーチング装置。
【請求項３】
第１部品をロボットに対して配置し、第２部品をロボットによって保持し、ロボットを動作させることによって第１部品第２部品を組み付ける際の動作姿勢をロボットに教示するティーチング方法であり、
第１部品に換えてロボットに対して配置可能であり、第２部品が組み付けられる第１部品の組付部に対応する位置に設けられたカメラを有するパレットと、パレットに固定可能であり、第１部品の組付部に組み付けられる第２部品の組付部を模した模擬部品が、第２部品を第１部品に組み付ける際の第２部品の目標位置に対応する位置に設けられているマスタ部品と、カメラが撮影した画像を処理する処理装置を準備する準備工程と、
パレットにマスタ部品を固定し、カメラによって模擬部品を撮影する第１撮影工程と、
処理装置によって、第１撮影工程で撮影した模擬部品の画像から模擬部品の位置を計算する目標位置計算工程と、
マスタ部品が固定されていない状態のパレットを第１部品に換えてロボットに対して配置するとともにロボットによって第２部品を保持し、カメラによって第２部品を撮影する第２撮影工程と、
処理装置によって、第２撮影工程で撮影した第２部品の画像から第２部品の位置を計算する実際位置計算工程と、
処理装置によって、目標位置計算工程で計算した模擬部品の位置と実際位置計算工程で計算した第２部品の位置との間の偏差を計算する偏差計算工程と、
を備えるティーチング方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットに動作姿勢を教示するティーチング技術に関する。特に、第１部品をロボットに対して配置し、第２部品をロボットによって保持し、ロボットを動作させることによって第１部品に第２部品を組み付ける際の動作姿勢をロボットに教示するティーチング技術に関する。
【背景技術】
【０００２】
特許文献１には、マスタ部品とカメラを用いてロボットに動作姿勢を教示するティーチング技術が記載されている。特許文献１の技術では、マスタ部品をロボットの作業位置に設置し、そのマスタ部品をカメラによって撮影し、撮影したマスタ部品の画像から抽出される座標を用いて、ロボットの動作プログラムが作成される。
【０００３】
【特許文献１】特開平５−６２１４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
例えば、第１部品に形成された凹部に、凹部の直径とほぼ同一の直径を有する第２部品を挿入する動作をロボットに行わせるような場合、ロボットに教示する姿勢には厳しい精度要求が課せられる。上記したような精密さを要する組み付け動作をマスタ部品とカメラを用いたティーチング技術を用いて教示する場合、教示されるロボットの姿勢の精度は、カメラが設置された位置によって影響を受ける。例えば、第１部品の凹部と第２部品を鳥瞰する位置にカメラを設置した場合、カメラレンズの歪曲収差の影響を受けることによって、第１部品の凹部と凹部に挿入される第２部品の先端部分との位置関係を正確に把握することができなくなる。この場合、ロボットに正しい動作姿勢を教示できないおそれがある。
上記を鑑み、本発明は、カメラの配置位置に起因する誤差を抑制し、ロボットに動作姿勢を精度よく教示することができる技術を提供する。
【課題を解決するための手段】
【０００５】
本発明は、第１部品をロボットに対して配置し、第２部品をロボットによって保持し、ロボットを動作させることによって第１部品に第２部品を組み付ける際の動作姿勢をロボットに教示するティーチング作業のためのティーチング装置に具現化される。このティーチング装置は、第１部品の配置位置に配置可能であり、第２部品が組み付けられる第１部品の組付部に対応する位置に設けられたカメラを有するパレットと、パレットに固定可能であり、第１部品の組付部に組み付けられる第２部品の組付部を模した模擬部品が、第１部品の組付部に対する第２部品の組付部の目標位置に対応する位置に設けられているマスタ部品と、カメラが撮影した画像を処理する処理装置を備えている。
処理装置は、パレットにマスタ部品が固定された状態でカメラが撮影した模擬部品の画像から模擬部品の位置を計算し、マスタ部品が固定されていない状態のパレットが第１部品の配置位置に配置されるとともに第２部品がロボットによって保持された状態でカメラが撮影した第２部品の画像から第２部品の位置を計算し、計算した模擬部品の位置と第２部品の位置との間の偏差を計算する。
【０００６】
第１部品、第１部品の組付部、第２部品、第２部品の組付部の形状は、特に限定されない。例えば、第１部品が板状の部品であり、その板状部品に挿入孔が形成されており、第２部品はその挿入孔に挿入される棒状の部品であってもよい。この場合、パレットには、板状部品において挿入孔が形成される位置に対応する位置にカメラが設けられており、マスタ部品には、少なくとも棒状部品の挿入孔に挿入される先端部分を模した模擬部品が形成されている。また、パレットは板状部品と同型状に形成されていてもよいし、板状部品を搭載するための治具を含む形状であってもよいし、それらと大きく異なる形状であってもよい。
【０００７】
本発明に係る装置では、第２部品が組み付けられる第１部品の組付部に対応する位置に、カメラが設けられている。そのことから、パレットにマスタ部品を固定し、マスタ部品に設けられた模擬部品をカメラによって撮影する際に、模擬部品を撮影範囲の中央に捉えて撮影することができる。また、マスタ部品が固定されていない状態のパレットを第１部品の配置位置に配置し、ロボットによって保持された第２部品をカメラによって撮影する際にも、第２部品を撮影範囲の中央に捉えて撮影することができる。そのことから、カメラによる撮影画像に、歪曲収差による影響が生じにくい。従って、カメラによる撮影画像から模擬部品の位置及び第２部品の位置を正確に把握することができ、第２部品が目標位置に保持される動作姿勢をロボットに正確に教示することができる。
この装置によると、カメラの配置位置に起因する誤差を抑制し、ロボットに動作姿勢を精度よく教示することができる。
【０００８】
前記した処理装置は、計算した模擬部品の位置と第２部品の位置との間の偏差を用いて、ロボットに動作指令を与えることが好ましい。
この構成によると、ティーチング装置とロボットの間でティーチング作業を自動的に行わせることができる。
【０００９】
本発明は、上記したティーチング装置を用いたロボットへのティーチング方法にも具現化される。このティーチング方法は、パレットにマスタ部品を固定し、カメラによって模擬部品を撮影する第１撮影工程と、処理装置によって、第１撮影工程で撮影した模擬部品の画像から模擬部品の位置を計算する目標位置計算工程と、マスタ部品が固定されていない状態のパレットを第１部品に換えてロボットに対して配置するとともにロボットによって第２部品を保持し、カメラによって第２部品を撮影する第２撮影工程と、処理装置によって、第２撮影工程で撮影した第２部品の画像から第２部品の位置を計算する実際位置計算工程と、処理装置によって、目標位置計算工程で計算した模擬部品の位置と実際位置計算工程で計算した第２部品の位置との間の偏差を計算する偏差計算工程を備えている。
この方法によると、カメラの配置位置に起因する誤差を抑制し、ロボットに動作姿勢を精度よく教示することができる。
【発明の効果】
【００１０】
本発明によると、第１部品に第２部品を組み付ける際の動作姿勢を正確にロボットに教示することができる。ロボットに教示する動作姿勢に厳しい精度要求が課せられる場合であっても、ロボットに支持される第２部品を第１部品に組み付ける際の組み付け姿勢をロボットに正確に教示することができる。
【発明を実施するための最良の形態】
【００１１】
以下に説明する実施例の主要な特徴を列記する。
（特徴１）  カメラはパレットに固定されており、模擬部品と第２部品を、パレット上の同位置から、同じ撮影条件で撮影する。
（特徴２）  処理装置は、カメラによって撮影された画像から、模擬部品又は第２部品の組付部の位置と輪郭形状を抽出し、第２部品の組付部の位置が模擬部品の位置に一致するとともに、第２部品の組付部の輪郭形状が模擬部品の輪郭形状に重畳するときのロボットの姿勢をロボットに記憶させる。
（特徴３）  複数の第２部品を同時に組み付ける場合には、パレットには、第２部品毎にカメラが設けられる。
（特徴４）  処理装置は、第２部品の画像から計算される第２部品の位置と模擬部品の画像から計算される模擬部品の位置の偏差に基づいて、ロボットに指令する動作量と動作方向を計算する。処理装置は、計算した動作量と動作方向に基づいてロボットに動作指令を与え、ロボットに保持された第２部品が模擬部品の画像から計算した目標位置に移動するように、ロボットを動作させる。
【実施例】
【００１２】
本発明の実施例について図面を参照しながら説明する。図１は、ティーチング装置２と多関節ロボット１６の概略構成を示す。ティーチング装置２は、第１部品（図示せず）を多関節ロボット１６に対して配置し、第２部品（図示せず）を多関節ロボット１６によって保持し、多関節ロボット１６を動作させることによって第１部品に第２部品を組み付ける際の動作姿勢を多関節ロボット１６に教示するティーチング作業に用いられる。本実施例では、第１部品はパレットに搭載されて作業される部品であって１組の挿入孔を有しており、第２部品は棒状であり、その先端部が第１部品の挿入孔に挿入されるものである。
【００１３】
ティーチング装置２は、パレット４と、マスタ部品６と、画像処理装置２８を備える。パレット４は、第１部品が搭載されるパレットの形状を有している。パレット４上には、一組のＣＣＤカメラ１０が設けられている。それぞれのカメラ１０ａ，１０ｂは画像処理装置２８に接続されており、カメラ１０ａ，１０ｂによって撮影された画像は、画像処理装置２８によって処理される。図１に示されるように、本実施例のティーチング作業時には、パレット４は、固定板１２の第１部品が多関節ロボット１６の作業領域に配置される際にパレット４が配置される位置に固定される。マスタ部品６は、パレット４に脱着可能に固定することができる。マスタ部品６には、一組の模擬部品８が設けられている。それぞれの模擬部品８ａ，８ｂは、第１部品に組み付けられる第２部品の先端部を模したものである。パレット４とマスタ部品６の構成については、後で詳しく説明する。
【００１４】
画像処理装置２８は、位置座標計算部３０と、偏差計算部３２と、記憶部３６と、操作部３８と、表示部４０を備えている。また、画像処理装置２８は、ロボットコントローラ４２と通信可能に接続されている。位置座標計算部３０は、カメラ１０ａ，１０ｂが撮影した画像に基づいて、撮影された部品の位置を計算する。例えば、模擬部品８ａ，８ｂが撮影された画像であれば、位置座標計算部３０は画像における模擬部品８ａ，８ｂの位置座標をそれぞれ計算する。また、位置座標計算部３０は、第２部品が撮影された画像からは、画像における第２部品の位置を計算する。偏差計算部３２は、位置座標計算部３０によって計算された模擬部品８の位置と第２部品の位置の偏差を計算する。計算された偏差は、ロボットコントローラ４２に送信することができる。記憶部３６は、カメラ１０ａ，１０ｂが撮影した画像データと、上記の計算部３０，３２が計算した数値を表わすデータと、画像情報処理装置２８を動作させるのに必要な各種プログラムを記憶している。画像処理装置２８は、パーソナルコンピュータ等の情報処理装置が上述のプログラムを実行することによって実現される。即ち、上述した計算部３０，３２は、記憶部３６に記憶されるプログラムがコンピュータのＣＰＵ等によって読み出され、実行されることで具現化されるものである。操作部３８は、キーボード等の操作手段からなり、操作者は操作部３８を操作することによって様々な情報を画像処理装置２８に入力することができる。表示部４０は、画像処理装置２８によって処理される様々な情報を表示することができる。
【００１５】
多関節ロボット１６は、図示しない固定冶具によって固定板１２に固定されるアーム型ロボットである。多関節ロボット１６は、アーム１７，１９と、アーム関節１８，２０と基板支持関節２２と、チャック基板部２４と、一組のチャック部２６を備えている。多関節ロボット１６の動作は、多関節ロボット１６に接続されるロボットコントローラ４２によって制御される。ロボットコントローラ４２は、操作部４４と、動作量計算部４５と、関節制御部４６と、記憶部４８を備えている。記憶部４８は、多関節ロボット１６の関節１８，２０，２２の回転角度等を記憶する。また、記憶部４８は、多関節ロボット１６に対してパレット４が配置される位置に関する情報を記憶する。さらに、記憶部４８は、多関節ロボット１６を動作させるのに必要な各種プログラムを記憶している。動作量計算部４５は、画像情報処理装置２８から送信された偏差から、多関節ロボット１６の移動量と移動方向等の動作量を計算する。計算された動作量は関節制御部４６へと入力される。関節制御部４６は、関節１８，２０，２２の動作を制御する。また、関節制御部４６は、多関節ロボット１６の動作量（関節１８，２０，２２の回転量等）を計算する処理を実行する。操作部４４は、操作者が多関節ロボット１６を操作することを許容する。例えば、操作者が操作部４４を操作することにより、関節１８，２０，２２の駆動指示を入力することができる。入力された指示は、関節制御部４６へと出力され、関節制御部４６はその指示に従って関節１８，２０，２２を駆動させる。また、関節制御部４６は、記憶部４８に記憶されるデータに基づいて、関節１８，２０，２２を駆動させることもできる。さらに、関節制御部４６は、動作量計算部４５によって計算された動作量に従って、関節１８，２０，２２を駆動させることもできる。操作部４４は、多関節ロボット１６の操作に加えて、多関節ロボット１６の姿勢を記憶部４８に記憶させる指示や、実際の組み付け動作を開始する指示等を入力することができる。
【００１６】
アーム関節１８は、アーム１９の上流側の端に接続しており、アーム１９を揺動可能に支持している。アーム１９の下流側の端は、アーム関節２０に接続されている。また、アーム関節２０はアーム１７の上流側の端に接続しており、アーム１７を揺動可能に支持している。アーム１７の下流側の端は基板支持関節２２に接続されている。基板支持関節２２は、チャック基板部２４に接続しており、チャック基板部２４を回転及び上下方向に移動可能に支持している。チャック基板部２４には、一組のチャック部２６が設けられている。多関節ロボット１６は、このチャック部２６を用いて、第２部品を把持する。
【００１７】
図２に、図１に示したパレット４とマスタ部品６の拡大側面図を示す。図３は、パレット４の平面図である。パレット４のカメラ１０ａ，１０ｂは、図示しない固定具によってカメラ支持部５６に固定されている。カメラ１０ａ，１０ｂは、第２部品が組み付けられる第１部品の各挿入孔にそれぞれ対応する位置に位置決めされる。図３に、第１部品の挿入孔の位置を破線５８ａ，５８ｂで示す。本実施例では、カメラ１０ａ，１０ｂは、レンズ５４ａ，５４ｂの中心６０ａ，６０ｂが、第１部品の挿入孔の位置５８ａ，５８ｂの中心とそれぞれほぼ一致するように配設されている。即ち、カメラ１０ａ，１０ｂの光軸は、第１部品の挿入孔の軸とほぼ一致している。このため、本実施例では、カメラ１０ａ，１０ｂは第１部品の挿入孔に組付けられる第２部品（パレット４にマスタ部品６が固定されている場合には、模擬部品８ａ，８ｂ）を、真下から、撮影範囲の中央に捉えて撮影する。即ち、カメラ１０ａ，１０ｂによって撮影される画像には、画像の中央の領域に第２部品あるいは模擬部品８ａ，８ｂの組付面（図４の第２部品５０の端面５１と図２の模擬部品８の端面５２を参照）が撮影される。このため、カメラ１０による撮影画像に、歪曲収差による影響が生じにくい。カメラ１０による撮影画像から模擬部品８の位置及び第２部品の位置を正確に把握することができ、第２部品が正しい組み付け位置に保持される動作姿勢を多関節ロボット１６に正確に教示することができる。
なお、マスタ部品６がパレット４に固定されたときに実現される模擬部品８とカメラ１０の位置関係は、カメラ１０の撮影軸に垂直な面方向、即ち、カメラ１０によって撮影される模擬部品８の端面５２と平行な面において、第２部品の先端部が第１部品の挿入孔に対して目標位置にあるときの位置関係を正確に再現していればよい。一方で、カメラ１０の撮影軸に平行の方向における位置関係、即ち、端面５２とカメラ１０のレンズ５４との距離ｄ１は、目標位置に配置されたときの第２部品の先端部と第１部品の挿入孔の距離と一致していなくてもよい。図３に示す距離ｄ１は、カメラ１０の焦点距離等の性能に応じて適宜設定することができる。
【００１８】
上述したように、マスタ部品６に形成されている模擬部品８ａ，８ｂは、第１部品に組み付けられる第２部品の組付部（本実施例では、棒状部品の先端部）を模したものである。模擬部品８ａ，８ｂは、マスタ部品６をパレット４に固定したときに、第１部品の挿入孔に対して第２部品の先端部が位置すべき目標位置に固定される。このことから、ロボット１６に保持させた第２部品の位置が、マスタ部品６をパレット４に固定したときの模擬部品８の位置と一致するように、ロボット１６に動作姿勢を教示することで、第１部品に第２部品を組み付ける際の第２部品の目標位置を正確に実現する姿勢を多関節ロボット１６に教示することができる。
【００１９】
図５に、ティーチング装置２を用いて関節ロボット１６を教示するティーチング作業の作業工程を表わすフローチャートを示す。ステップＳ２では、パレット４を固定板１２の配置位置に位置決めして固定する（図１参照）。パレット４は、複数のパレット固定具１４によって固定板１２に固定される。上述したように、本実施例では、パレット４は第１部品が搭載されるパレットの形状を有している。このことから、予め固定板１２に取り付けておいたパレット固定具１４でパレット４を固定することで、容易にパレット４を固定板１２に位置決めすることができる。固定板１２にパレット４を固定したときにカメラ１０ａ，１０ｂが配置される位置は、固定板１２に第１部品を搭載するパレットを固定したときに第１部品の挿入孔が配置される位置に略一致する（図３を参照）。
【００２０】
次いで、ステップＳ４では、固定板１２に固定されたパレット４の上部に、マスタ部品６を固定する（図１及び図２を参照）。マスタ部品６がパレット４に固定されると、マスタ部品６の模擬部品８ａ，８ｂはその端面５２ａ，５２ｂが、パレット４のカメラ１０ａ，１０ｂとそれぞれ向かい合う位置に配置される。ステップＳ６では、パレット４にマスタ部品６が固定された状態で、カメラ１０によって模擬部品８を撮影する。このステップでカメラ１０ａによって撮影された第１画像には、画像の中央に模擬部品８ａが写っており、カメラ１０ｂによって撮影された第１画像には、画像の中央に模擬部品８ｂが写っている。
ステップＳ８では、位置座標計算部３０によって、カメラ１０ａ，１０ｂがそれぞれ撮影した第１画像から模擬部品８ａ，８ｂの位置を計算する。このステップでは、画像上の位置を空間座標に換算して、模擬部品８の位置座標を計算してもよい。例えば、第１画像に写る模擬部品８の輪郭を抽出し、抽出された輪郭が有する座標値を計算してもよいし、抽出された輪郭の中心点の座標を計算してもよい。位置座標計算部３０によって算出された位置座標は、第２部品の先端部の目標位置座標として記憶部３６に記憶される。ここで、計算した模擬部品８ａ，８ｂの位置が各第１画像の中央から外れている場合には、カメラ１０ａ，１０ｂの位置を調整した上で、ステップＳ６の撮影処理から再度実行するとよい。
【００２１】
パレット４からマスタ部品６を取り外すと（ステップＳ１０）、次いで、ステップＳ１２では、実際の組み付けに用いられる第２部品５０を、多関節ロボット１６のチャック部２６で把持する（図４を参照）。例えば、操作者がロボットコントローラ４２の操作部４４を操作して、多関節ロボット１６に第２部品を把持させることができる。
【００２２】
ステップＳ１３では、関節制御部４６によって、パレット４の位置と多関節ロボット１６の現在の姿勢から、各関節１８，２０，２２の動作量が計算される。このステップでは、ロボットコントローラ４２の記憶部４８に記憶されるパレット４の固定位置に関する情報と、多関節ロボット１６の現在の姿勢から計算されるチャック部２６の位置に関する情報から、第２部品を把持したチャック部２６がパレット４の上方に位置するために必要な多関節ロボット１６の動作量が計算される。そして、ステップＳ１４では、計算した動作量に基づいて、多関節ロボット１６を動作させる。具体的には、関節制御部４６が、ステップＳ１３で算出した動作量に従って関節１８，２０，２２を駆動して、チャック部２６を移動する（図４を参照）。
なお、ロボットコントローラ４２がパレット４の固定位置に関する情報を保持していない場合には、上記したステップＳ１３の処理に替えて操作者が操作部４４を操作することによって、目測でチャック部２６をパレット４の上方に移動させてもよい。
【００２３】
ステップＳ１４の多関節ロボット１６の動作によって、第２部品５０ａ，５０ｂがパレット４の上方に移動されると、第２部品５０ａ，５０ｂの先端部は、パレット４のカメラ１０ａ，１０ｂの上方に配置される。ステップＳ１６では、カメラ１０によって第２部品５０を撮影する。このステップでは、模擬部品８ａ，８ｂを撮影したときと同じ条件（カメラ１０ａ，１０ｂの位置や焦点距離等）で撮影が行われる。カメラ１０ａによって撮影された第２画像には第２部品５０ａの端面５１ａが写っており、カメラ１０ｂによって撮影された第２画像には第２部品５０ｂの端面５１ｂが写っている。
ステップＳ１８では、位置座標計算部３０によって、カメラ１０ａ，１０ｂがそれぞれ撮影した第２画像から第２部品５０ａ，５０ｂの位置を計算する。このステップでは、ステップＳ８における目標位置の計算と同様に、画像上の位置を空間座標に換算して、第２部品５０の位置座標を計算してもよい。また、第２画像に写る第２部品５０の輪郭を抽出し、抽出された輪郭が有する座標値を計算してもよいし、抽出された輪郭の中心点の座標を計算してもよい。位置座標計算部３０によって算出された位置座標は、第２部品５０の先端部の実際位置座標として記憶部３６に記憶される。
【００２４】
ステップＳ２０では、偏差計算部３２によって、ステップＳ８で第１画像から計算された目標位置と、ステップＳ１８で第２画像から計算された実際位置の偏差を計算する。上述したように、カメラ１０ａ，１０ｂが撮影した第１画像から計算される模擬部品８ａ，８ｂの位置によって、第１部品の組み付け位置に第２部品５０ａ，５０ｂが組付けられる際の第２部品５０ａ，５０ｂの正しい位置が表わされている。このため、第２部品５０ａ，５０ｂが正しい位置に近接して配置されているほど、偏差計算部３２によって計算される偏差は小さくなる。
【００２５】
ステップＳ２１では、偏差計算部３２によって計算された偏差が画像情報処理装置２８からロボットコントローラ４２へと送信される。送信された偏差は、動作量計算部４５に入力される。
ステップＳ２２では、ステップＳ２１で入力された偏差が、閾値以下であるか否かが判断される。閾値は、組み付け位置の教示に対して要求される精度に応じて、任意に設定することができる。例えば、組み付け位置の教示に関して非常に厳しい精度要求が存在する場合には、第２部品について計算される実際位置が模擬部品について計算される目標位置と一致する（即ち、偏差がゼロである）のか否かを判断してもよい。
なお、先に説明したステップＳ２０では、カメラ１０ａによって撮影された画像とカメラ１０ｂによって撮影された画像の両画像から、目標位置と実際位置の偏差がそれぞれ計算される。このため、ステップＳ２２ではそれぞれの偏差について判断処理を実行してもよいし、それらを統合した値について判断処理を実行してもよい。例えば、偏差平均について判断処理を実行してもよい。
【００２６】
偏差が閾値以下である場合（ステップＳ２２でＹＥＳ）には、多関節ロボット１６は正しい組み付け姿勢を実現している。このことから、その姿勢を第１部品に第２部品を組み付ける際の組み付け姿勢としてロボットコントローラ４２の記憶部４８に記憶し（ステップＳ２６）、ティーチング作業を終了する。ステップＳ２６の処理は、例えば、画像情報処理装置２８の表示部４０に偏差と偏差の比較判断処理に関する情報を表示し、算出された偏差が閾値以下である場合に、操作者がロボットコントローラ４２に姿勢を記憶する指示を入力することで実行されてもよい。
【００２７】
偏差が閾値よりも大きい場合（ステップＳ２２でＮＯ）には、多関節ロボット１６は、要求される精度条件を未だ満たしておらず、さらなる姿勢の修正を要している。このため、ステップＳ２４では、動作量計算部４５によって、上記の偏差に基づいて、チャック部２６の移動量と移動方向を計算する。計算された動作量は、関節制御部４６に入力される。
ステップＳ２５では、関節制御部４６によって、入力されたチャック部２６の移動量及び移動方向と現在の多関節ロボット１６の姿勢から、多関節ロボット１６の各間接１８，２０，２２の動作量が計算される。そして、ステップＳ１４では、関節制御部４６は計算された動作量に従って多関節ロボット１６を動作させる。例えば、第１画像から計算された模擬部品８の端面５２中心点と第２画像から計算された第２部品５０の端面５１の中心点は一致しているものの、その輪郭が重畳しないような場合には、カメラ１０から模擬部品８までの距離ｄ１（図２を参照）と、カメラ１０から第２部品までの距離ｄ２（図４を参照）が同距離でないことが理解される。このような場合には、ステップＳ２２でＮＯと判断され、ステップＳ１４の多関節ロボット１６の動作によって、カメラ１０から第２部品までの距離ｄ２が修正される。そして、動作後の第２部品の実際位置と目標位置の偏差が再度算出され、評価される。第１画像と第２画像から抽出される模擬部品８の端面５２と第２部品５０の端面５１の輪郭が重畳し、第２部品が位置する実際位置が目標位置に所望の精度を満たす程度まで接近する（即ち、ステップＳ２２でＹＥＳと判断される）まで、一連の処理が繰り返される。
【００２８】
上記のティーチング装置２によると、カメラ１０の配置位置に起因する誤差を抑制し、多関節ロボット１６に動作姿勢を自動ティーチングによって精度よく教示することができる。第１部品に第２部品を組み付ける際の組み付け姿勢を、正確に多関節ロボット１６に教示することができる。
【００２９】
上記の実施例では、多関節ロボット１６に組み付け姿勢を教示するティーチングの一例を示したが、本発明の実施形態はこれに限定されない。例えば、動作量の計算を画像情報処理装置２８で実行し、ロボットコントローラ４２へは関節制御部４６への指示を送信してもよい。あるいは、動作量計算部４５の実行する処理を関節制御部４６が実行してもよい。
【００３０】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には、以上に例示した具体例を様々に変形、変更したものが含まれる。
本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時の請求項に記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【図面の簡単な説明】
【００３１】
【図１】ティーチング作業中の多関節ロボットとティーチング装置の概略構成を表わす図（１）である。
【図２】パレットとマスタ部品の側面図である。
【図３】パレットの平面図である。
【図４】ティーチング作業中の多関節ロボットとティーチング装置の概略構成を表わす図（２）である。
【図５】ティーチングの作業工程を表わすフローチャートである。
【符号の説明】
【００３２】
２：ティーチング装置
４：パレット
６：マスタ部品
８，８ａ，８ｂ：模擬部品
１０，１０ａ，１０ｂ：カメラ
１２：固定板
１４：パレット固定具
１６：多関節ロボット
１７，１９：アーム
１８，２０：アーム関節
２２：基板支持関節
２４：チャック基板部
２６，２６ａ，２６ｂ：チャック部
２８：画像処理装置
３０：位置座標計算部
３２：偏差計算部
３６：記憶部
３８：操作部
４０：表示部
４２：ロボットコントローラ
４４：操作部
４５：動作量計算部
４６：関節制御部
４８：記憶部
５０，５０ａ，５０ｂ：第２部品
５１，５１ａ，５１ｂ：第２部品の端面
５２，５２ａ，５２ｂ：模擬部品の端面
５４，５４ａ，５４ｂ：レンズ
５６：カメラ支持部
５８ａ，５８ｂ：第１部品の組付部（挿入孔）の位置
６０ａ，６０ｂ：中心
【図１】
2009279719.tif 000003
【図２】
2009279719.tif 000004
【図３】
2009279719.tif 000005
【図４】
2009279719.tif 000006
【図５】
2009279719.tif 000007