(57)【特許請求の範囲】
【請求項１】
算出された複数の教示点とこれらの各教示点における姿勢ベクトルを基にして制御されるロボットの教示装置であって、工作物を撮像する撮像手段と、この撮像手段より加工軌跡の位置座標を検出する位置座標検出手段と、位置座標検出手段より検出された加工軌跡の位置座標より教示点の位置座標を算出する教示点座標算出手段と、教示点座標算出手段より算出された連続する３点の教示点により該３点の中間の教示点における姿勢ベクトルを算出する姿勢ベクトル算出手段とを備えたことを特徴とするロボットの教示装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、画像処理装置を用いてロボットの教示を自動的に行うロボットの教示装置に関する。
【０００２】
【従来の技術】
従来、ティーチングプレイバック方式のロボットにおいては、あらかじめ作業者がティーチングボックスを操作しながら基準工作物上でロボットを動かすことによって、加工軌跡の教示作業を行い、この教示作業によって記憶された教示データを基にしてロボットが加工軌跡を再現し、工作物の加工を行っている。
【０００３】
【発明が解決しようとする課題】
上述した教示データは、加工軌跡線上の所定の間隔毎の点である教示点の位置座標と、この教示点におけるロボットの姿勢を示す姿勢ベクトルから成っている。このため加工軌跡が長いものや、複雑な曲線のものは、教示点が膨大な数となり、作業者に大変な負担となるという問題点があった。
【０００４】
本発明は以上の問題点を解決するためになされたものであり、作業者の負担を軽減する簡単なロボットの教示装置を提供することを目的とする。
【０００５】
【課題を解決するための手段】
本発明は、上述した目的を達成するためになされたものであり、図１に示されるように、算出された複数の教示点とこれらの各教示点における姿勢ベクトルを基にして制御されるロボットＲの教示装置であって、工作物Ｗを撮像する撮像手段１と、この撮像手段１より加工軌跡の位置座標を検出する位置座標検出手段２と、位置座標検出手段２より検出された加工軌跡の位置座標より教示点の位置座標を算出する教示点座標算出手段３と、教示点座標算出手段３より算出された連続する３点の教示点により該３点の中間の教示点における姿勢ベクトルを算出する姿勢ベクトル算出手段４とを備えたものである。
【０００６】
【作用】
上記のように構成されたロボットの教示装置は、撮像手段１によって工作物Ｗを撮像し、この画像処理データを位置座標検出手段２に出力する。位置座標検出手段２は画像処理データを基に工作物Ｗ上の加工軌跡の位置座標を検出し、この加工軌跡の位置座標から教示点座標算出手段３は教示点を算出する。姿勢ベクトル算出手段４は教示点の連続性を基に姿勢ベクトルを算出する。このようにして求まった教示点の位置座標と姿勢ベクトルよりロボットＲは制御される。
【０００７】
【実施例】
本発明の実施例について図面を参照して説明する。
図２に示すように視覚装置２０は、対象物体である工作物２２を撮像するＣＣＤカメラ２４と、ＣＣＤカメラ２４から出力される画像信号を画像処理して対象物体の輪郭を特定し、この輪郭を直線近似して視覚座標Ｘ，Ｙの点群データとして定める画像処理装置２６から成り立っている。工作物２２はその輪郭線上を加工軌跡とするもので、半透明の基板２１上に設置されて下方の光源２３から透過光が照射されるようになっている。ＣＣＤカメラ２４は、この光源２３からの透過光による工作物２２と基板２１との明暗状態を画像信号として画像処理装置２６に出力する。画像処理装置２６はこの出力信号を用いて工作物２２は暗部としてデータ化するとともに、基板２１は明部としてデータ化し、この暗部と明部の境界を工作物２２の輪郭として検出する。
【０００８】
ロボット６０の制御を行うロボット制御装置５０は、視覚装置２０とインタフェース５１を介して結ばれたＣＰＵ５２と、ロボット６０の位置制御プログラム等を記憶したＲＯＭ５４、教示データ等を記憶したＲＡＭ５３、そしてロボット６０の各駆動軸を駆動するサーボモータを制御するサーボＣＰＵ５５を有している。
【０００９】
ロボット６０は、６軸型の多関節ロボットであり、各軸を駆動する図略のサーボモータがロボット制御装置５０によって制御されるようになっている。図３に示すようにロボット６０の手首部先端にはバリ取り用のグラインダ７１が取り付けられており、グラインダ７１はモータ７１ａによって回転駆動される。
グラインダ７１には工具座標系が設定され、ＲＡＭ５３内部に記憶されている。工具座標系は図３においてグラインダ７１の回転中心軸１００から下方にオフセットした位置であるグラインダ７１の加工点を原点ＯT として、回転中心軸１００と平行なグラインダ７１の裏面から表面（加工面）に向かう方向にＸT 軸、左方向にＹT 軸、下方向にＺT 軸が設定されている。これらの各軸は、後に算出する３つの姿勢ベクトルと対応するようになっている。即ち、グラインダ７１が工作物に接近する方向であるアプローチベクトルＡｖにはＺT 軸、グラインダ７１の向き指定するオリエントベクトルＯｖにはＹT 軸、これらの２つのベクトルＡｖ，Ｏｖが右手系を成すように設定されたノーマルベクトルＮｖにはＸT 軸が対応する。
【００１０】
ロボット制御装置５０は、後述する点ＡからＥの位置座標（教示点の位置座標）とこれらの点における姿勢ベクトルＡｖ，Ｏｖ，Ｎｖを教示データとして、目標とする点の位置座標と工具座標原点ＯT を一致させるとともに、この点における姿勢ベクトルＡｖ，Ｏｖ，Ｎｖと工具座標系の各軸ＸT ，ＹT ，ＺT との対応関係が正しくなるようにロボット６０を制御し、グラインダ７１による加工を行う。
【００１１】
次に本実施例のロボットの教示装置の説明をする。
図４に示されるようにＣＣＤカメラ２４によって撮像された工作物２２は、その輪郭を画像処理装置２６によって直線近似されて、これらの直線の交点が点群データ（Ｘ，Ｙ）として出力される。これらの点群データは実際にはかなり多くの数となるが、ここでは簡略化するためにＡからＥの５つの点データから成るものとし、以下の説明では、主に点Ａにおける教示データの作成手順を例にとって図７のフローチャートを基に説明する。
【００１２】
ロボット制御装置５０は、上述した点群データＡからＥを入力することによって、教示データの作成を開始する（ステップ１００）。
ステップ１１０では、図５に示すようにステップ１００にて入力した点ＡからＥの視覚座標（Ｘ，Ｙ）を原点Ｏｒとするロボット座標に変換し、教示点の位置座標を求める。このときＣＣＤカメラ２４から見た点Ａの視覚座標Ａ（Ｘ，Ｙ）を３次元化するためにＰｗｃ＝（Ｘ，Ｙ，０）として表す。この位置座標Ｐｗｃと、あらかじめわかっているロボット座標から見たＣＣＤカメラ２４の位置座標Ｐｃｒ＝（ｘ，ｙ，ｚ）とから、ロボット座標から見た点Ａの位置座標、即ち教示点Ａの位置座標Ｐｗｒ＝（Ｘｒ，Ｙｒ，Ｚｒ）は式１のように表される。但し、ここではＰｗｃにおいて点Ａの高さ方向（Ｚ方向）を０と設定してあるので、ＣＣＤカメラ２４の位置ＰｃｒのＺ方向の値ｚは、実際の工作物２２の設置高さＺｒに設定する必要があるためＺｒ＝ｚとなる。
【００１３】
Ｐｗｒ＝ＰｃｒＰｗｃ                          ・・・・・式１
ステップ１１０では同様に点ＢからＥまでの座標変換を行い、教示点の位置座標を算出する。
ステップ１２０からは、図６に示すように各教示点におけるロボットの姿勢ベクトルを算出する。姿勢ベクトルは、上述したようにアプローチベクトルＡｖ、オリエントベクトルＯｖ、およびノーマルベクトルＮｖの互いに直交する３つのベクトルから成る。
【００１４】
まずステップ１２０では工作物２２に対して下向きのベクトルＺｖを求める。ベクトルＺｖは点Ｅから点Ａに向かうベクトルＶEAと点Ａから点Ｂに向かうベクトルＶABとの外積より式２のように求まる。
Ｚｖ＝ＶEA×ＶAB                              ・・・・・式２
ステップ１３０では点ＡにおけるロボットのアプローチベクトルＡｖを求める。。ロボット６０は工作物２２の外周に沿って点Ａから点Ｅに向かって移動しながらバリ取り作業を行うものであるから点ＡにおけるアプローチベクトルＡｖは、点Ａから点Ｂに向かうベクトルＶABとなる（式３）。
【００１５】
Ａｖ＝ＶAB ・・・・・式３ステップ１４０ではベクトルＺｖとアプローチベクトルＡｖとの外積を用いて点ＡにおけるオリエントベクトルＯｖを式４のように求める。Ｏｖ＝Ａｖ×Ｚｖ ・・・・・式４ロボットの基本姿勢ベクトルのうち残りの点ＡにおけるノーマルベクトルＮｖは、以上のように求まったアプローチベクトルＡｖとオリエントベクトルＯｖとの外積をとることによりロボット制御装置５０内部で自動的に演算される。
【００１６】
以上の過程を点Ｂから点Ｅまで繰り返すことにより工作物２２を加工するのに必要な各点の姿勢ベクトルが求まったことになる（ステップ１５０）。これらの教示データを基にしてロボット６０を制御することによりロボット６０は工作物２２上をなぞるようにして工作物２２のバリ取り作業を行う。
本実施例ではロボット６０の手首部先端に設けられたグラインダ７１における工具座標系を図３のように設定してあるためにグラインダ７１は工作物２２上をなぞるように移動して加工を行うが、工具座標系の設定を所定に変化させることにより工作物２２に所定の角度をもって接触し、加工を行う等の種々の加工方法が可能である。また、アプローチベクトルＡｖとオリエントベクトルＯｖの設定の仕方は本実施例の方法に限定されるものではなく、例えばベクトルＺｖの角度方向を工作物下方ではなく種々に変化させることによりオリエントベクトルＯｖ方向を変化させ、各種の加工に対応した教示データを算出することができる。
【００１７】
以上述べた実施例では、工作物２２の位置座標を求めるのに、工作物２２の輪郭を形成する多数の点群データを直線近似しているが、この工作物の特定する方法は直線近似に限られるものではなく、輪郭を形成する点群データをそのまま用いてもよく、また多数の点群データを所定のピッチでサンプリングする方式、点群データを曲線近似する方式等を用いてもよい。
【００１８】
また、本実施例においては加工軌跡として工作物２２の輪郭を用いているが、ＣＣＤカメラによって加工軌跡が撮像できるようにすれば輪郭以外の加工も行うことができる。例えば工作物の下地を白色、加工軌跡を黒色に着色すれば加工軌跡を明確することができ、これを撮像して工作物上での加工を行うことができる。
【００１９】
さらに本実施例のロボットの教示装置は、上述したステップ１１０において、１台のＣＣＤカメラから得た２次元の点群データと、あらかじめ設定されている工作物の取り付け高さを用いて教示点の位置座標を３次元データに変換しているが、従来から行われている２台のＣＣＤカメラを用いた画像処理によって工作物の位置を３次元データとして求め、これを用いて教示データを作成する構成としてもよい。このような構成を用いても、Ｚ方向の値が各点毎に異なるのみで、教示データの算出方法は基本的に同じである。
【００２０】
【発明の効果】
以上述べたように本発明のロボット教示装置は、撮像手段によって得た画像処理データを基にしてロボットの制御に必要な教示点の位置座標と姿勢ベクトルを算出できるようにしたために、加工軌跡の長い工作物や、複雑な形状の工作物であっても撮像手段によって加工軌跡を検出し、自動的に教示データを作成することができる。また、作業者がロボットを動かしながら教示作業を行う必要がないために、教示作業による作業者の負担を大幅に軽減でき、特に工作物が種々に変化する多品種少量生産方式の工場では労力の削減に優れた効果を発揮する。
【図面の簡単な説明】
【図１】本発明のロボット教示装置のクレーム対応図である。
【図２】本実施例のロボット教示装置の全体構成図である。
【図３】本実施例におけるロボット手首部の詳細図である。
【図４】本実施例のロボット教示装置の作用を説明するための図である。
【図５】本実施例のロボット教示装置の作用を説明するための図である。
【図６】本実施例のロボット教示装置の作用を説明するための図である。
【図７】本実施例のロボット教示装置の作用を説明するためのフローチャートである。
【符号の説明】
１  撮像手段
２  位置座標検出手段
３  教示点座標算出手段
４  姿勢ベクトル算出手段
Ｒ，６０  ロボット
Ｗ，２２  工作物
２０  撮像装置
２４  ＣＣＤカメラ
２６  画像処理装置
【図１】
0003543329.tif 000002
【図２】
0003543329.tif 000003
【図３】
0003543329.tif 000004
【図４】
0003543329.tif 000005
【図５】
0003543329.tif 000006
【図６】
0003543329.tif 000007
【図７】
0003543329.tif 000008