本発明は、ロボットのアーム先端部に装着されロボットと連動して移動する計測装置を用いてロボットの位置教示を行うロボット制御装置に関する。
ロボットの位置教示を行う際には、操作者が手動操作でロボットを所定位置に移動させるジョグ送りが一般的に利用される。ジョグ送りを用いた位置教示では、操作者が教示操作盤のジョグ送りボタンを操作しながらロボットを移動させ、ロボットのアーム先端部に装着されたツールの位置(基準点)と作業対象の位置とが所望される相対位置関係になったときにロボットが所望される教示位置に到達したとして、そのときのロボットの位置をロボットに教示し記憶させる作業が行われる。
このようなジョグ送りによる位置教示では、ロボットの基準点と作業対象とが所望される相対位置関係になったことを操作者が目視によって確認するため、操作者の熟練が必要とされ、また、熟練者でも高精度の教示は困難であった。さらに、作業対象とツールを極近傍まで接近させるのでツールと作業対象との接触事故を起こし易かった。そこで、特許文献1に開示されているように、ロボットのアーム先端部にカメラを装着し、カメラで作業対象物との位置関係を計測しカメラと作業対象物とが予め定められた位置関係になるようにロボットの移動を制御する技術が提案されている。
特許文献1に開示されるようなカメラを利用した位置教示では、カメラ座標系とロボット座標系との対応関係を定めるためにカメラのキャリブレーションを必要とし、そのキャリブレーションデータを用いて、カメラと作業対象との相対位置を演算し、ツールと作業対象との位置誤差が所定範囲内になるようにロボットを移動させる。ところが、このカメラのキャリブレーションや、カメラにより取得した画像情報からカメラと作業対象との相対位置を求めるには、複雑な演算又は変換が必要とされるという問題がある。また、正確なキャリブレーションを行うためには、キャリブレーション時のカメラとキャリブレーション用の計測対象との相対位置関係や照明の状態などに配慮する必要があるため、その実施には高度の知識が必要になるという問題もある。
よって、本発明の目的は、従来技術に存する問題を解消して、カメラなどの計測装置の種類によらず計測装置のキャリブレーションの必要なしに、ロボットと作業対象とを所望の相対位置関係に移動して教示位置の修正を自動的に行うことを可能にすることにある。
上記目的を達成するために、本発明によれば、ロボットのアーム先端部に装着され前記ロボットと連動して移動する計測装置を用いてロボットの位置教示を行うロボット制御装置であって、前記ロボットの基準点と基準標的とを予め定められた相対位置関係に配置したときに前記基準標的を計測する前記計測装置から出力された出力情報を記憶する基準標的情報記憶部と、前記ロボットの基準点と前記基準標的とが予め定められた相対位置関係に配置された状態から前記計測装置を予め定められた移動量だけ移動させたときの前記計測装置からの出力情報の変化量を求める出力変化量演算部と、前記移動量と前記出力変化量演算部により求められた出力変化量とを対応させて記憶する出力変化量記憶部と、作業対象物上に設けられた指定標的を計測したときの前記計測装置の出力情報と前記基準標的情報記憶部に記憶された出力情報との誤差を求める誤差検出部と、前記誤差検出部によって求められた誤差が予め定められた許容範囲以内になったか否かを判断する誤差判定部と、前記誤差が前記予め定められた許容範囲以内になるまで、前記出力変化量記憶部に記憶された前記移動量と前記出力変化量との関係に基づいて、前記誤差を小さくするように前記ロボットを移動させるロボット移動指令部と、前記誤差検出部によって求められた誤差が前記予め定められた許容範囲以内になったときに前記ロボットの基準点の位置を教示点として記憶する教示点記憶部とを備えたロボット制御装置が提供される。
上記ロボット制御装置では、前記予め定められた相対位置関係に配置された状態から前記計測装置を移動させるとき、互いに直交する3軸方向への前記計測装置の並進移動がそれぞれ行われ、前記計測装置からの出力情報が、少なくとも三つのパラメータを含むようにすることが好ましい。
一つの実施形態として、前記計測装置が受光デバイスを備え、前記少なくとも三つのパラメータが、異なる位置に配置された前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標を含むようにすることができる。
他の実施形態として、前記計測装置が異なる位置に配置された二つの受光デバイスを備え、前記少なくとも三つのパラメータが、前記二つの受光デバイスの各々の受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標を含むようにすることができる。
別の実施形態として、前記計測装置が一つの受光デバイスを備え、前記計測装置による計測が、前記一つの受光デバイスが前記ロボットに対して予め定められた第1の位置に配置されているときと前記一つの受光デバイスを前記第1の位置から該第1の位置と異なる第2の位置へ予め定められた移動量だけ移動させたときに行われ、前記少なくとも三つのパラメータが、前記第1の位置に配置された前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標と、前記第2の位置に配置された前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標とを含むようにすることができる。上記実施形態において、前記受光デバイスは、前記ロボットの移動により前記第1の位置から前記第2の位置へ移動させられるようにしてもよく、前記受光デバイスに設けられた移動機構により前記第1の位置から前記第2の位置へ移動させられるようにしてもよい。
別の実施形態として、前記計測装置が一つの受光デバイスとレーザスポット光投光装置とを備え、前記少なくとも三つのパラメータが、前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標と、前記レーザスポット光投光装置から前記基準標的又は前記指定標的上に投光されたレーザスポット光が前記受光デバイスの受光面に結像した輝点の前記受光面における位置座標とを含むようにすることができる。
さらに別の実施形態として、前記計測装置が一つの受光デバイスを備え、前記基準標的と前記指定標的が同じ形状及び大きさであり、前記少なくとも三つのパラメータが、前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標及び大きさを含むようにすることができる。
さらに別の実施形態として、前記計測装置が一つの受光デバイスを備え、前記計測装置による計測が、前記一つの受光デバイスが前記ロボットに対して予め定められた第1の位置に配置されているときと、前記一つの受光デバイスを前記第1の位置から該第1の位置と異なる第2の位置へ前記受光デバイスの前記受光面に対して概ね垂直で前記ロボットの基準点を通る軸線周りに予め定められた角度だけ回転させたときと、前記一つの受光デバイスを前記第1の位置から該第1の位置と異なる第3の位置へ前記受光デバイスの前記受光面に対して概ね平行で前記ロボットの基準点を通る軸線周りに予め定められた角度だけ回転させたときに行われ、前記少なくとも三つのパラメータが、前記第1の位置から前記第2の位置へ前記受光デバイスを回転させたときの前記受光デバイスの前記受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標の変化量と、前記第1の位置から前記第3の位置へ前記受光デバイスを回転させたときの前記受光デバイスの前記受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標の変化量とを含むようにすることができる。
また、上記ロボット制御装置において、前記予め定められた相対位置関係から前記計測装置を移動させるとき、前記3軸周りの前記計測装置の回転移動がそれぞれさらに行われ、前記計測装置からの出力情報が、少なくとも六つのパラメータを含むようにすることがさらに好ましい。
一つの実施形態として、前記計測装置が一つの受光デバイスを備え、前記指定標的と前記基準標的が同じ形状及び大きさであり、前記少なくとも六つのパラメータが、前記受光デバイスの受光面に結像した前記基準標的又は前記指定標的の前記受光面における位置座標、大きさ、回転量、扁平率及び扁平方向を含むようにすることができる。
各実施形態において、前記教示位置が前記作業対象物に対して実際に作業を行う際の前記ロボットの位置であってもよく、前記教示位置が前記作業対象物に対して実際に作業を行う際の前記ロボットの位置に対して所定の位置関係になっていてもよい。
例えば、前記ロボットの作業がスポット溶接であり、前記ロボットの基準点がスポット溶接の打点位置であり、前記基準標的が前記打点位置に定められるようにすることができる。
また、前記ロボットの作業がアーク溶接であり、前記ロボットの基準点が溶接線上の放電位置であり、前記基準標的が前記放電位置に定められるようにしてもよい。
本発明によれば、ロボットの基準点が指定標的の近傍に配置されれば、指定標的を計測したときの計測装置からの出力情報と基準標的情報記憶部に記憶される出力情報との誤差を検出し、出力変化量記憶部に記憶される計測装置の移動量と計測装置の出力変化量との関係に基づいて、ロボットを移動させることにより、検出される誤差が予め定められた許容範囲内になるように計測装置を自動的に移動させて、そのときのロボットの基準点の位置を教示点として記憶する。したがって、教示点の位置の修正作業が自動化される。また、指定標的を計測したときの計測装置からの出力情報と基準標的情報記憶部に記憶される出力情報との誤差は、計測装置の移動量と計測装置の出力変化量との関係に基づいて解消させるので、計測装置のキャリブレーションも不要になる。さらに、計測装置の移動量と計測装置の出力変化量との関係は、基準標的とロボットの基準点とを予め定められた相対位置関係に配置した状態にした後、その状態から予め定められた移動量だけ計測装置を移動させることにより得ることができるので、計測装置によらず容易に当該関係を求めることができる。
以下、図面を参照して、本発明の好ましい実施形態を説明する。
最初に、図1を参照して、本発明によるロボット制御装置の全体構成を説明する。ロボット制御装置10は、アーム先端部に計測装置12が取り付けられたロボット14の動作を制御するものである。ロボット14は、一般的なロボットであり、例えば複数のアームを関節部によって結合したアーム型ロボットとすることができる。また、計測装置12はロボット14に対して自身を移動させるための移動機構12aを備えることができる。図1を参照すると、ロボット制御装置10は、出力取込部16と、基準標的情報記憶部18と、微小移動指令部20と、出力変化量演算部22と、出力変化量記憶部24と、誤差検出部26と、誤差判定部28と、ロボット移動指令部30と、教示点記憶部32と、教示操作盤33とを含む。
出力取込部16は、計測装置12からの出力をロボット制御装置10内に取り込む。基準標的情報記憶部18は、任意の位置に設けられた基準標的34とロボット14(詳細には、その基準点14a)とが予め定められた相対位置関係に配置されたときに計測装置12から出力される出力情報を記憶する。ロボット14の基準点14aは、通常、ロボット14又はロボット14に装着されたツールTが作業対象物に作用を及ぼす作用点又は作用点に対して所定の位置関係にある点の位置に定められる。また、基準標的34は、計測装置12の移動とその移動による出力情報の変化量との関係を得るためにも用いられる標的であり、任意の場所に設けることができ、作業対象物36上に設けられる後述する指定標的38の一つを基準標的34として用いてもよい。さらに、計測装置12からの出力情報には、後述するように、標的の位置だけでなく、標的の大きさ、向き、扁平率、及び扁平方向、並びに、スポット光などの位置などの情報を含み得る。
微小移動指令部20は、ロボット14又は計測装置12の移動機構12aに動作指令を発して基準標的34とロボット14とが予め定められた相対位置関係に配置された状態から予め定められた軸方向に計測装置12を微小量だけ移動させる機能を果たす部分である。また、出力変化量演算部22は、微小移動指令部20によって作成される動作指令に従って計測装置12が予め定められた軸方向に移動させられたときの移動前後の計測装置12からの出力情報の変化量(すなわち、移動前の計測装置12からの出力情報に対する移動後の計測装置12からの出力情報の変化量)を求め、求められた出力情報の変化量を計測装置12の移動量と対応させて出力変化量記憶部24に記憶させる。
誤差検出部26は、操作者による操作又はロボット移動指令に従ったロボット14の移動の後に作業対象物36上に設けられた指定標的38を計測したときに計測装置12から出力される出力情報と基準標的情報記憶部18に記憶される出力情報との誤差を演算により求める機能を果たす。また、誤差判定部28は、誤差検出部26によって検出された誤差が予め設定された許容範囲以内にあるか否かを判定する。詳細には、誤差判定部28は、誤差が許容範囲以内であるときに、計測装置12からの出力情報が基準標的情報記憶部18に記憶される出力情報と一致した、すなわちロボット14が指定標的38に対して予め定められた相対位置関係に配置されたと判定し、誤差が許容範囲外にあるときに、計測装置12からの出力情報が基準標的情報記憶部18に記憶される出力情報と異なる、すなわちロボット14が指定標的38に対して予め定められた相対位置関係に配置されていないと判定する。ここで、指定標的38は、ロボット14に教示点を教示するために使用される標的であり、通常、ロボット14が作業対象物36に対して作業を行うべき場所又は当該場所と所定の位置関係にある場所に設けられる。
ロボット移動指令部30は、誤差検出部26によって検出された誤差が許容範囲を越えていると判定されたときに、出力変化量記憶部24に記憶された予め定められた軸方向への移動量と出力情報の変化量との関係に基づいて、誤差を小さくする方向(すなわち、計測装置12からの出力情報が基準標的情報記憶部18に記憶される出力情報に近づく方向)にロボット14を移動させるようにロボット移動指令を作成し、ロボット14に出力する。また、教示点記憶部32は、誤差検出部26によって検出された誤差が許容範囲内であると判定されたときに、そのときのロボット14の基準点の位置を教示点として記憶する。
教示操作盤33は、ケーブルによってロボット制御装置10に接続されており、操作者が手動でロボットを操作するときに用いられる。教示操作盤33には、ロボット14をジョグ送りするためのジョグ送りボタンや、計測装置12の移動機構12aを駆動させるための移動機構操作ボタンなどが具備されている。
次に、図2を参照して、図1に示されているロボット制御装置10の動作及び位置教示の流れを説明する。図2は、図1に示されているロボット制御装置10を用いたときの位置教示の流れを示すフローチャートである。
最初に、ロボット14のアーム先端部に装着されたツールTに計測装置12が取り付けられ、教示点の自動修正作業に必要となる基礎的データの収集が行われる。次に、操作者は、教示操作盤33を用いてロボット14を操作することにより、任意の場所に設置された基準標的34の近傍までロボット14を移動させた後、ジョグ送りでロボット14を移動させて、任意の場所に設置された基準標的34に対して予め定められた相対位置関係にロボット14の基準点を配置させる。後述する第1〜第4の実施形態においてはロボット14の基準点と基準標的34の相対位置関係は操作者の目視によって確認されるものとしているが、第5の実施形態においてはこのような目視による手動操作を行わない方法についても言及しているので、そちらも参照されたい。ロボット14の基準点が基準標的34に対して予め定められた相対位置関係になるようにロボット14が配置されたら、ロボット14に取り付けられた計測装置12を用いて基準標的34の計測を行い、計測装置12からの出力情報を基準標的情報記憶部18に記憶させる(ステップS100)。基準標的34の計測は、後述するように様々な手法によって行われ得る。
計測装置12からの出力情報が基準標的情報記憶部18に記憶されると、ロボット制御装置10の微小移動指令部20からの動作指令によりロボット14又は計測装置12の移動機構12aを動作させて、基準標的34とロボット14とが予め定められた相対位置関係に配置された状態から予め定められた軸方向に計測装置12を微小量だけ移動させ、出力変化量演算部22により移動前後の計測装置12からの出力情報の変化量(以下、出力変化量と記載する。)を求める(ステップS102)。計測装置12の移動は、ロボット14により行われてもよく、計測装置12に具備された移動機構12aにより行われてもよい。但し、移動機構12aによって計測装置12を移動する場合は、ロボット14に対する移動機構12aの移動方向(取り付け方向)を予め求めておき、移動機構12aによる計測装置12の移動をロボット14でも再現できるようにしておく必要がある。また、上記では微小移動指令部20からの動作指令により、ロボット14又は計測装置12の移動機構12aを動作させると説明しているが、教示操作盤33から手動で動作指令を入力してもよい。
次に、出力変化量演算部22により求められた出力変化量は、計測装置12の移動方向及び移動量と対応付けて出力変化量記憶部24に記憶される(ステップS104)。計測装置12の移動量は、微小移動指令部20からの動作指令から求められるものとする。
このようにして基礎的データの収集が終了すると、教示点の自動修正が可能になる。操作者は、教示操作盤33を用いてロボット14を操作することにより、作業対象物36上に設けられた一つ又は複数の指定標的38のうちの一つの近傍までロボット14を移動させる。ロボット14は、ロボット14のアーム先端部に取り付けられた計測装置12による指定標的38の計測が可能になる位置まで移動させられていれば十分であり、ロボット14のオフラインプログラミング装置等で作成したおおよその動作経路(動作プログラム)を利用することも可能である。
次に、計測装置12による指定標的38の計測が行われる(ステップS106)。指定標的38の計測は、後述するように様々な手法によって行うことができる。また、計測は、ロボット制御装置10に記憶されたプログラムにより自動的に開始されてもよく、教示操作盤33からの計測開始指令の入力によって開始されてもよい。計測装置12による指定標的38の計測が行われると、誤差検出部26が計測装置12からの出力情報と基準標的情報記憶部24に記憶される出力情報との誤差を演算により求め、誤差判定部28が、求められた誤差が予め定められた許容範囲以内であるか否かを判定する(ステップS108)。誤差判定部28は、誤差を絶対値として演算し、誤差が予め定められた許容値以下であるか否かを判定してもよい。
ステップS108において、誤差が許容範囲外であるときには、計測装置12からの出力情報が基準標的情報記憶部18に記憶された出力情報と一致していない(すなわち、異なっている)と判定される。このとき、ロボット14は指定標的38と予め定められた相対位置関係に配置されていないことになる。この場合、ロボット制御装置10のロボット移動指令部30は、出力変化量記憶部24に記憶された予め定められた軸方向への移動量と計測装置12からの出力情報の変化量との対応関係に基づいて、誤差を小さくする(すなわち、計測装置12からの出力情報を基準標的情報記憶部18に記憶される出力情報に近づける)ために必要なロボット14の移動方向及び移動量を決定し、これを実現するためのロボット移動指令を作成する(ステップS110)。次に、作成されたロボット移動指令に基づいて、ロボット14が移動させられ(ステップS112)、ステップS106に戻って、移動後の位置において計測装置12による指定標的38の計測が再度行われ、ステップS108において誤差判定部28によって誤差が許容範囲内であると判定されるまでステップS106〜ステップS112が繰り返される。
一方、ステップS108において、誤差が許容範囲内であるときには、計測装置12からの出力情報が基準標的情報記憶部18に記憶された出力情報と一致したと判定される。このとき、ロボット14は指定標的38と予め定められた相対位置関係に配置されたことになるので、この時点のロボット14の基準点の位置を教示点として教示点記憶部32に記憶する(ステップS114)。指定標的38が複数ある場合には、上記ステップS106〜ステップS114が各指定標的38について行われる。
このようにして、図1のロボット制御装置10による教示点の自動修正及び位置教示が行われる。
上述したように、教示点の修正は、出力変化量記憶部24に記憶された予め定められた軸方向への移動量とその移動による計測装置からの出力情報の変化量との対応関係に基づいて行われるので、計測装置12のキャリブレーションを予め行う必要はなく、また、教示点の修正が自動的に行われるので操作者に熟練が要求されることもない。
以下に、計測装置12による基準標的34及び指定標的38の計測と、出力変化量演算部22による演算が、具体的にどのように行われるかについて幾つかの実施形態を例示して説明する。なお、以下の実施形態において、上記説明と対応する部分には同じ参照番号を付している。また、各実施形態においても共通する部分には同じ参照番号を付している。
図3〜図5を参照して、本発明を用いたロボットシステム40の第1の実施形態を説明する。図3に示されているように、第1の実施形態では、ロボット14は、多関節型ロボットアームであり、旋回胴42と、一端が旋回胴42に旋回可能に接続された上腕部44と、上腕部44の他端と関節運動可能に接続された前腕部46と、前腕部46の一端に設けられた手首要素48とを備える。手首要素48には、実際に作業を行うツールTとして、スポット溶接装置すなわちスポットガン50が装着されている。
図3に示されているように、スポット溶接装置50は、手首要素48に対して固定的に取り付けられた固定側チップ(固定側電極)52と、固定側チップ52に対して移動可能に設けられた可動側チップ54(可動側電極)とを含み、固定側チップ52と可動側チップ54との間に板金等の作業対象物36を配置し、可動側チップ54を固定側チップ52に向かって移動させて固定側チップ52と可動側チップ54との間に作業対象物36を挟持した状態で固定側チップ52と可動側チップ54との間に電流又は電圧を印加することにより作業対象物36の溶接を行う。位置教示の際には、ブラケット等の保持部材56を介して可動側チップ54に計測装置12が取り付けられる。計測装置12は基準標的34の計測が可能な位置に強固に取り付けられればよく、可動側チップ54以外の場所に取り付けてもよい。本実施形態では、計測装置12は、異なる位置に配置される二つの受光デバイス58と、これら受光デバイス58とケーブル60を介して接続されている画像処理装置62とから構成されている。受光デバイス58としては例えばCCDカメラなどを使用することができる。また、画像処理装置62は、公知の典型的なものであり、受光デバイス58により取得された画像に処理を施して様々な情報を取得することができるものであれば特に限定されない。
ロボット14及び画像処理装置62には、図1に示されるロボット制御装置10がケーブル64、66を介して接続されている。また、ロボット制御装置10には、位置教示の際に操作者が使用するための教示操作盤33が接続されている。本実施形態では、画像処理装置62が、受光デバイス58やロボット制御装置10と別個の装置として設けられているが、受光デバイス58又はロボット制御装置10に組み入れられて一体的なユニットとして設けられていてもよい。
次に、上記のような構成のロボットシステム40における位置教示の手順を説明する。
最初に、位置教示のための準備作業が行われる。以下に、準備作業の詳細を説明する。まず、操作者が教示操作盤33を用いてロボット14をジョグ送りで移動させ、図4に示されているように、任意の場所に設けられた基準標的34の位置にスポット溶接装置50の固定側チップ52の先端を正確に一致させる。このときの一致は操作者の目視によって確認される。次に、その状態で可動側チップ54に取り付けられた計測装置12を用いて基準標的34の位置の計測を行う。詳細には、計測装置12の二つの受光デバイス58の受光面上に結像した画像をそれぞれ処理して、各受光デバイス58の受光面に結像した基準標的34の受光面における位置座標(すなわち、受光面座標系における位置座標)をそれぞれ求め、求められた基準標的34の位置座標を計測装置12の出力情報S0i(=(S01,S02,S03,S04))として基準標的情報記憶部18に記憶させる。ここで、S0iは、計測装置12の一方の受光デバイス58の受光面に結像した基準標的34の受光面座標系における位置座標(Vt1,Hz1)(=(S01,S02))と他方の受光デバイス58の受光面に結像した基準標的34の受光面座標系における位置座標(Vt2,Hz2)(=(S03,S04))とからなる出力情報を表す。
基準標的34についての計測装置12の出力情報が基準標的情報記憶部18に記憶されると、微小移動指令部20が、ロボット14を移動させることにより、記憶したときの状態から計測装置12をロボット14のアーム先端部に対して予め定められた座標系(予め定められた座標系がない場合は、ロボット14のメカニカルインタフェイス座標系を用いればよい)の直交する3軸であるX軸、Y軸及びZ軸の各方向に微小量だけそれぞれ並進移動させる。そして、それぞれの移動後の位置で計測装置12による基準標的34の計測が行われ、計測により求められた計測装置12からの出力情報が出力取込部16を介して出力変化量演算部22に伝達される。詳細には、計測装置12の受光デバイス58をX軸方向に微小量δXだけ並進移動させたときの計測装置12の出力情報SXi、計測装置12の受光デバイス58をY軸方向に微小量δYだけ並進移動させたときの計測装置12の出力情報SYi、計測装置12の受光デバイス58をZ軸方向に微小量δZだけ並進移動させたときの計測装置12の出力情報SZiが出力変化量演算部22に伝達される。ここで、SXi、SYi、SZiは、それぞれ、X軸、Y軸及びZ軸の各軸方向に微小量だけ移動したときの、計測装置12の一方の受光デバイス58の受光面に結像した基準標的34の受光面座標系における位置座標と他方の受光デバイス58の受光面に結像した基準標的34の受光面座標系における位置座標とからなる出力情報(SX1,SX2,SX3,SX4)、(SY1,SY2,SY3,SY4)、(SZ1,SZ2,SZ3,SZ4)を表す。なお、計測装置12は、計測装置12に設けた移動機構12aにより移動させてもよい。
次に、出力変化量演算部22は、基準標的情報記憶部18に記憶された移動前の計測装置12の出力情報と移動後の計測装置12から出力された出力情報とから移動前に対する移動後の計測装置12の出力情報の変化量dSXi(=(dSX1,dSX2,dSX3,dSX4))、dSYi(=(dSY1,dSY2,dSY3,dSY4))、dSZi(=(dSZ1,dSZ2,dSZ3,dSZ4))を以下の式を用いて演算により求め、求められた変化量dSXi,dSYi,dSZiを出力変化量記憶部24に記憶させる。
dSXi=SXi−S0i
dSYi=SYi−S0i
dSZi=SZi−S0i
一方、ロボット14がロボット14のアーム先端部に対して予め定められた座標系において任意の方向に微小移動量(dX,dY,dZ)だけ移動したときに、計測装置12の一方の受光デバイス58からの出力情報が(dS
1,dS
2)だけ変化し、計測装置12の他方の受光デバイス58からの出力情報が(dS
3,dS
4)だけ変化したとすると、ロボット14の微小移動量(dX,dY,dZ)と計測装置12からの出力情報の変化量dS
i(=(dS
1,dS
2,dS
3,dS
4))とは以下の関係式(1)を満たす。
よって、Mの擬似逆行列M
+を求めることにより、ロボット14の移動量(dX,dY,dZ)を以下の式(2)のように表すことができる。
ここで、M
+はMの転置行列M
Tを用いて、以下の式により求められる。
M
+=(M
TM)
-1M
T
なお、(M
TM)の行列式が0、又は極端に小さな値である場合は、(M
TM)の逆行列を求めることができないから、これはその計測装置ではロボット14を正しく誘導できないことを意味する。
次に、準備作業が終了すると、教示点の教示作業が行われる。
まず、図5に示されているように、作業対象物36上の所望される位置に指定標的38を設置する。本実施形態では、作業対象物36上においてスポット溶接を行うべき箇所(以下、打点位置と記載する。)に指定標的38を設置する。指定標的38の設置は、作業対象物36に別体の標的部材を貼り付け等によって取り付けることによって行ってもよく、作業対象物36上にマークを直接書き込むことによって行ってもよい。
次に、図5に示されているように、操作者は、教示操作盤33を用いて、計測装置12の受光デバイス58の視野内に指定標的38が捉えられる位置までロボット14をジョグ送りによって移動させ、その位置において、計測装置12を用いて指定標的38の位置を計測する。このときの計測装置12の出力情報をS1i(=(S11,S12,S13,S14))とすると、この状態において、計測装置12の各受光デバイス58の受光面に結像した指定標的38の受光面座標系における位置は、基準標的情報記憶部18に記憶された基準標的34の位置に対して誤差dS1i(=S0i−S1i)だけズレていることになる。ここで、S1iは、この位置における、計測装置12の一方の受光デバイス58の受光面に結像した指定標的38の受光面座標系における位置座標(S11、S12)と他方の受光デバイス58の受光面に結像した指定標的38の受光面座標系における位置座標(S13,S14)とからなる出力情報を表す。
次に、ロボット移動指令部30は、以下の式(3)を用いて、図5に矢印で示されるようにS1
iをS0
iに近づけるために必要なロボット14の移動量(dX1,dY1,dZ1)を求め、求められた移動量(dX1,dY1,dZ1)だけロボット14を移動させるように移動指令を作成し、移動指令に従ってロボット14を移動させる。
このとき、スポット溶接装置50の固定側チップ52と作業対象物36との接触を防止するために、可動側チップ54を所定量だけ持ち上げておくようにすることもできる。
次に、移動後の位置において計測装置12によって二つの受光デバイス58の各々の受光面座標系における指定標的38の位置を計測し、誤差判定部28は、誤差検出部26によって検出された計測結果S1iと基準標的情報記憶部18に記憶された基準標的情報S0iとの差が予め定められた許容範囲内にあるか否かを判定する。計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にあると判定されたときにはロボット14と指定標的38とが予め定められた相対位置関係に配置されたと判断し、そのときのロボット14の基準点の位置を教示点として教示点記憶部32に記憶する。一方、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にないと判定されたときには、ロボット14と指定標的38とが予め定められた相対位置関係に配置されておらず、ズレていると判断され、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内になるまで、上述したようなロボット14の移動とその位置における指定標的38の位置の計測が繰り返される。
なお、スポット溶接装置50の固定側チップ52と作業対象物36との接触を防止するためにロボット14の移動の際に可動側チップ54を所定量だけ持ち上げた場合には、記憶したロボット14の基準点の位置を可動側チップ54の移動方向へ所定量だけシフトさせることにより所望のロボット位置を得ることができる。
図6を参照して、本発明を用いたロボットシステム68の第2の実施形態を説明する。図6に示されている第2の実施形態は、計測装置12の受光デバイス58が一つのみであり、計測装置12が移動機構12aを備えている点において、第1の実施形態と異なっている。他の構成は、第1の実施形態と同じであるので、ここでは詳しく説明しない。
位置教示の手順も第1の実施形態と同じであるが、計測装置12の受光デバイス58が一つのみであることから、計測装置12からの出力情報が受光デバイス58の受光面上に結像した基準標的34又は指定標的38の受光面における位置座標(すなわち、受光面座標系における位置座標)と基準標的34又は指定標的38の大きさの三つを含む点において第1の実施形態と異なっている。ここで、基準標的34又は指定標的38の大きさとは、基準標的34又は指定標的38の代表寸法すなわち基準標的34又は指定標的38の予め定められた部分の寸法を意味している。例えば、基準標的34又は指定標的38が円形の場合、受光面上では円又は楕円状に結像するので、その直径又は長軸径とすることができる。
したがって、計測装置12を用いた基準標的34の計測の際には、計測装置12の受光デバイス58の受光面上に結像した画像を処理して、受光面上に結像した基準標的34の受光面座標系における位置座標(Vt,Hz)とその大きさとを求め、求められた基準標的34の位置座標及び大きさを計測装置12からの出力情報S0i(=(S01,S02,S03))として基準標的情報記憶部18に記憶させる。また、本実施形態においては、基準標的34の位置にスポット溶接装置50の固定側チップ52の先端の位置を一致させた状態からの計測装置12の受光デバイス58の移動は、移動機構12aを用いて行われるものとする。計測装置12の受光デバイス58をロボット14のアーム先端部に対して予め定められた座標系のX軸、Y軸及びZ軸の各方向に微小量δX、δY及びδZだけそれぞれ並進移動させたときに基準標的34を計測した計測装置12から出力される出力情報SXi,SYi及びSZiは、それぞれ、(SX1,SX2,SX3)、(SY1,SY2,SY3)、(SZ1,SZ2,SZ3)となり、移動前に対する移動後の計測装置12の出力情報の変化量もdSXi(=(dSX1,dSX2,dSX3))、dSYi(=(dSY1,dSY2,dSY3))及びdSZi(=(dSZ1,dSZ2,dSZ3))となる。なお、計測装置12の受光デバイス58は、第1の実施形態と同様にロボット14の移動により移動させてもよい。
さらに、本実施形態では、ロボット14がロボット14のアーム先端部に対して予め定められた座標系において任意の方向に微小移動量(dX,dY,dZ)だけ移動したときに、計測装置12からの出力情報が(dS
1,dS
2,dS
3)だけ変化するとしたとき、ロボット14の移動量(dX,dY,dZ)はMの逆行列M
-1を用いて以下の式(4)のように表される。
なお、Mの行列式が0、又は極端に小さな値である場合は、Mの逆行列を求めることができないから、これはその計測装置12ではロボット14を正しく誘導できないことを意味する。
よって、指定標的38の近傍にロボット14を配置したときに計測装置12から出力される出力情報をS1
i(=(S1
1,S1
2,S1
3))、基準標的情報記憶部18に記憶された出力情報S0
iに対する計測装置12から出力される出力情報S1
iの誤差をdS1
i(=S0
i−S1
i)とすると、第2の実施形態による位置教示では、第1の実施形態による位置教示の式(3)に代えて以下の式(5)を用いてロボット14の移動指令を作成し、作成された移動指令に従ってロボット14を移動させることになる。
第1の実施形態による位置教示における式(3)に代えて式(5)が用いられる点を除いて、第2の実施形態による位置教示の手順は、第1の実施形態の位置教示の手順と同様であるので、ここではこれ以上詳しく説明しない。
図7〜図10を参照して、本発明を用いたロボットシステム70の第3の実施形態について説明する。図7に示されているように、第3の実施形態でも、ロボット14として、第1の実施形態と同様の多関節型ロボットアームが用いられているので、ここでは、ロボット14の構成について説明を省略する。一方、ロボット14の手首要素48には、実際に作業を行うツールTとして、第1の実施形態のスポット溶接装置50に代えて、アーク溶接装置すなわちトーチ72が装着されている。
第3の実施形態における位置教示の際には、図7に示されているように、ブラケットなどの保持部材56を介してアーク溶接装置72に計測装置12が取り付けられると共に、アーク溶接装置72の先端部が取り外され、代わりにレーザスポット光投光装置74が取り付けられる。計測装置12は基準標的34の計測が可能な位置に強固に取り付けられていればよく、アーク溶接装置72以外の場所に取り付けることも可能である。本実施形態では、計測装置12は、一つの受光デバイス58と、受光デバイス58とケーブル60を介して接続されている画像処理装置62とから構成されている。受光デバイス58としては例えばCCDカメラなどを使用することができる。また、画像処理装置62は、公知の典型的なものであり、受光デバイス58により取得された画像に処理を施して様々な情報を取得することができるものであれば特に限定されない。
ロボット14及び画像処理装置62には、図1に示されるロボット制御装置10がケーブル64、66を介して接続されており、ロボット制御装置10には、さらに、位置教示の際に操作者が使用するための教示操作盤33が接続されている。本実施形態では、画像処理装置62が、受光デバイス58やロボット制御装置10と別個の装置として設けられているが、受光デバイス58又はロボット制御装置10に組み入れられて一体的なユニットとして設けられてもよい。
次に、上記のような構成のロボットシステム70における位置教示の手順を説明する。
最初に、教示作業のための準備作業が行われる。以下に、準備作業の詳細を説明する。まず、操作者が教示操作盤33を用いてロボット14をジョグ送りで移動させ、図8に示されているように、任意の場所に設けられた基準標的34の位置にアーク溶接装置72の先端を正確に一致させる。このときの一致は操作者の目視によって確認される。次に、図9に示されているように、アーク溶接装置72の先端部を取り外し、代わりにレーザスポット光投光装置74を取り付けると共に、基準標的34が捉えられる位置に計測装置12の受光デバイス58を取り付け、その状態で計測装置12を用いて基準標的34の計測を行う。詳細には、計測装置12の受光デバイス58の受光面上に結像した画像を処理して、受光デバイス58の受光面に結像した基準標的34及びレーザスポット光76の輝点の受光面における位置座標(すなわち、受光面座標系における基準標的34及びレーザスポット光76の輝点の位置座標)をそれぞれ求め、求められた基準標的34の位置座標(VtT,HzT)(=(S01,S02))とレーザスポット光76の輝点の位置座標(VtL,HzL)(=(S03,S04))を計測装置12の出力情報S0i(=(S01,S02,S03,S04))として基準標的情報記憶部18に記憶させる。
なお、アーク溶接装置72の先端にレーザスポット光投光装置74を取り付けた際に、投光されたレーザスポット光76の輝点が基準標的34の所定位置に一致していない場合、レーザスポット光76の輝点が基準標的34の所定位置に一致するようにロボット14を移動させ、そのときのロボット14の移動量を記憶しておく。
基準標的34についての計測装置12の出力情報が基準標的情報記憶部18に記憶されると、微小移動指令部20が、ロボット14を移動させることにより、記憶したときの状態から計測装置12をロボット14のアーム先端部に対して予め定められた座標系の直交する3軸であるX軸、Y軸及びZ軸の各方向に微小量だけそれぞれ並進移動させる。そして、それぞれの移動後の位置で計測装置12による基準標的34の計測が行われ、計測により求められた計測装置12からの出力情報が出力取込部16を介して出力変化量演算部22に伝達される。詳細には、計測装置12の受光デバイス58をX軸方向に微小量δXだけ並進移動させたときの計測装置12の出力情報SXi、計測装置12の受光デバイス58をY軸方向に微小量δYだけ並進移動させたときの計測装置12の出力情報SYi、計測装置12の受光デバイス58をZ軸方向に微小量δZだけ並進移動させたときの計測装置12の出力情報SZiが出力変化量演算部22に伝達される。ここで、SXi、SYi、SZiは、それぞれ、X軸、Y軸及びZ軸の各軸方向に微小量だけ移動したときの、計測装置12の受光デバイス58の受光面に結像した基準標的34及びレーザスポット光76の輝点の受光面座標系における位置座標からなる出力情報(SX1,SX2,SX3,SX4)、(SY1,SY2,SY3,SY4)、(SZ1,SZ2,SZ3,SZ4)を表す。図7には記載されていないが、前述の実施形態と同様に、計測装置12は、計測装置12に設けた移動機構12aにより移動させてもよい。
次に、出力変化量演算部22は、基準標的情報記憶部18に記憶された移動前の計測装置12の出力情報と移動後の計測装置12から出力された出力情報とから移動前に対する移動後の計測装置12の出力情報の変化量dSXi(=(dSX1,dSX2,dSX3,dSX4))、dSYi(=(dSY1,dSY2,dSY3,dSY4))、dSZi(=(dSZ1,dSZ2,dSZ3,dSZ4))を以下の式を用いて演算により求め、求められた変化量dSXi,dSYi,dSZiを出力変化量記憶部24に記憶させる。
dSXi=SXi−S0i
dSYi=SYi−S0i
dSZi=SZi−S0i
一方、ロボット14がロボット14のアーム先端部に対して予め定められた座標系において任意の方向に微小移動量(dX,dY,dZ)だけ移動したときに、計測装置12の受光デバイス58からの出力情報がdS
i=(dS
1,dS
2,dS
3,dS
4)だけ変化したとすると、ロボット14の微小移動量(dX,dY,dZ)と計測装置12からの出力情報の変化量dS
iとは以下の関係式(6)を満たす。
よって、Mの擬似逆行列M
+を求めることにより、ロボット14の移動量(dX,dY,dZ)を以下の式(7)のように表すことができる。
ここで、M+はMの転置行列MTを用いて、以下の式により求められる。
M+=(MTM)-1MT
なお、(MTM)の行列式が0、又は極端に小さな値である場合は、(MTM)の逆行列を求めることができないから、これはその計測装置12ではロボット14を正しく誘導できないことを意味する。
次に、準備作業が終了すると、教示点の教示作業が行われる。
まず、図10に示されているように、作業対象物36上の所望される位置に指定標的38を設置する。本実施形態では、アーク溶接を行う経路すなわち溶接線78に沿った適宜の位置に指定標的38を設置する。指定標的38の設置は、作業対象物36に別体の標的部材を貼り付け等によって取り付けることによって行ってもよく、作業対象物36上にマークを直接書き込むことによって行ってもよい。
次に、図10に示されているように、操作者は、教示操作盤33を用いて、計測装置12の受光デバイス58の視野内に指定標的38が捉えられる位置までロボット14をジョグ送りによって移動させ、その位置において、計測装置12を用いて指定標的38及びレーザスポット光76の輝点の位置を計測する。このときの計測装置12の出力情報をS1i(=(S11,S12,S13,S14))とすると、この状態において、計測装置12の受光デバイス58の受光面上に結像した指定標的38及びレーザスポット光76の輝点の受光面座標系における位置は、基準標的情報記憶部18に記憶された基準標的34及びレーザスポット光76の輝点の位置に対して誤差dS1i(=S0i−S1i)だけズレていることになる。ここで、S1iは、この位置における、計測装置12の受光デバイス58の受光面上に結像した基準標的34及びレーザスポット光76の輝点の受光面座標系における位置座標(S11、S12)及び(S13,S14)からなる出力情報を表す。
次に、ロボット移動指令部30は、以下の式(8)を用いて、図10に矢印で示されるようにS1
iをS0
iに近づけるために必要なロボット14の移動量(dX1,dY1,dZ1)を求め、求められた移動量(dX1,dY1,dZ1)だけロボット14を移動させるように移動指令を作成し、移動指令に従ってロボット14を移動させる。
次に、移動後の位置において計測装置12によって受光デバイス58の受光面座標系における指定標的38及びレーザスポット光76の輝点の位置を計測し、誤差判定部28は、誤差検出部26によって検出された計測結果S1iと基準標的情報記憶部18に記憶された基準標的情報S0iとの差が予め定められた許容範囲内にあるか否かを判定する。計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にあると判定されたときにはロボット14と指定標的38とが予め定められた相対位置関係に配置されたと判断し、そのときのロボット14の基準点の位置を教示点として教示点記憶部32に記憶する。一方、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にないと判定されたときには、ロボット14と指定標的38とが予め定められた相対位置関係に配置されておらず、ズレていると判断され、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内になるまで、上述したようなロボット14の移動とその位置における指定標的38の位置の計測が繰り返される。
なお、アーク溶接装置72の先端にレーザスポット光投光装置74を取り付けたときに、投光されたレーザスポット光76の輝点を基準標的34の位置に一致させるためにロボット14を移動させている場合には、その移動量分だけ記憶したロボット14の基準点の位置をシフトさせることにより所望のロボット位置を得ることができる。
図11〜図13を参照して、本発明を用いたロボットシステムの第4の実施形態を説明する。本実施形態は第2の実施形態において、X軸、Y軸及びZ軸方向の並進移動に加えてA軸、B軸及びC軸方向の回転も行うようにしたものである。ここで、A軸方向の回転とはX軸周りの回転を、B軸方向の回転とはY軸周りの回転を、C軸方向の回転とはZ軸周りの回転を意味する。第4の実施形態のロボットシステムの構成は、第2の実施形態のロボットシステム68の構成と同様であるので、ここでは、説明を省略する。また、本実施形態は、アーク溶接に適用することもでき、この場合、スポット溶接装置50に代えてアーク溶接装置72をロボット14の手首要素48に装着すればよいことはいうまでもない。
このように本実施形態では、ロボット14の移動を指示するためには六つのパラメータを特定しなければならないので、計測装置12からの出力情報も少なくとも六つのパラメータを含んだものでなければならない。そこで、本実施形態では、スポット溶接装置50の可動側チップ54にブラケットなどの保持部材56を介して取り付けられた一つの受光デバイス58とこれとケーブル60を介して接続されている画像処理装置62とによって構成された計測装置12によって、計測装置12の受光デバイス58の受光面上に結像した基準標的34又は指定標的38の位置座標(すなわち、受光面座標系における位置座標)及び大きさに加えて、受光面上における基準標的34又は指定標的38の回転量、扁平率及び扁平方向をさらに計測し、六つのパラメータにより特定される出力情報を計測装置12から出力するようにしている。また、基準標的34及び指定標的38(以下、単に標的とも記載する。)の回転量を検出するために、基準標的34及び指定標的38には、例えば直線や十字などの回転指標部を含むものが用いられる。
以下に、図11〜図13を参照して、計測装置12の受光デバイス58のA軸、B軸及びC軸方向の回転と、計測装置12により計測される標的34,38の回転量、扁平率及び扁平方向との関係について説明する。なお、図11〜図13では、説明のため、標的34,38の位置に原点を持ち受光デバイス58の光軸が概略Z軸と一致し、紙面左右方向をY軸、紙面前後方向をX軸とする座標系を用いる。
図11は、C軸方向の回転、すなわちZ軸周りの回転の例、図12は、A軸方向の回転、すなわちX軸周りの回転の例、図13は、B軸方向の回転、すなわちY軸周りの回転の例を示している。図11に示されているように、図11(a)に示されている姿勢から図11(b)に示される姿勢への受光デバイス58のZ軸周りの回転は、受光デバイス58の受光面上では、標的34,38の回転量の変化として現れる。また、図12に示されているように、図12(a)に示されている姿勢から図12(b)に示されている姿勢への受光デバイス58のX軸周りの回転は、受光デバイス58の受光面上では、左右方向(表示装置82の画面上では左右方向)への標的34,38の扁平として現れる。同様に、図13に示されているように、図13(a)に示されている姿勢から図13(b)に示されている姿勢への受光デバイス58のY軸周りの回転は、受光デバイス58の受光面上では、前後方向(表示装置82の画面上では上下方向)への標的34,48の扁平として現れる。そこで、標的34,38の中で最も寸法変化率が大きい部分の変化の度合いを扁平率、標的34,48の中で最も寸法変化率が大きい方向を扁平方向として求め、計測装置12から出力している。なお、扁平方向は、−90°〜+90°の範囲を用いて、予め定められた方向(例えば図11中の左右方向(Y軸方向))に対する角度で表され、扁平率が0°のときには扁平方向は求めない(0°としてもよい)。例えば、標的34,48が半径aの円であり、或る方向の半径がaからbへ最も大きい比率で変化したとき、扁平率は(a−b)/aで表される。また、例えば図12では、扁平方向が左右方向であるので0°が扁平方向として出力され、図13では、扁平方向が前後方向であるので90°が扁平方向として出力される。
このように第4の実施形態の計測装置12からの出力情報は、第2の実施形態の計測装置12からの出力情報とは異なるが、第4の実施形態における位置教示の手順は第2の実施形態における位置教示の手順と基本的に同様である。ただし、計測装置12からの出力情報の構成が異なるため、基準標的34の位置にスポット溶接装置50の固定側チップ52の先端の位置を一致させたときの計測装置12からの出力情報S0iは、(S01,S02,S03,S04,S05,S06)となる。ここで、(S01,S02)は、計測装置12の受光デバイス58の受光面上に結像した基準標的34の受光面における位置座標(受光面座標系における位置座標)を表し、S03は受光面上に結像した基準標的34の受光面座標系における大きさを表し、S04は受光面上に結像した基準標的34の受光面における回転量を表し、S05及びS06はそれぞれ受光面上に結像した基準標的34の受光面における扁平率及び扁平方向を表す。扁平率は0〜1の間の数値でもよく、0〜100%で表されてもよい。また、扁平方向は基準方向に対する角度として−90°〜+90°の範囲で表される。
基準標的34とロボット14とが予め定められた相対位置関係に配置されたときの基準標的34を計測した計測装置12からの出力情報が基準標的情報記憶部18に記憶されると、微小移動指令部20が、ロボット14を移動させることにより、基準標的情報記憶部18に記憶したときの状態から、計測装置12をロボット14のアーム先端部に対して予め定められた座標系の直交する3軸であるX軸、Y軸及びZ軸の各方向に微小量だけそれぞれ並進移動させると共に、A軸、B軸及びC軸の各方向に微小量だけそれぞれ回転移動させる。そして、それぞれの移動後の位置で計測装置12による基準標的34の計測が行われ、計測により得られた計測装置12からの出力情報が出力取込部16を介して出力変化量演算部22に伝達される。詳細には、計測装置12の受光デバイス58をX軸方向に微小量δXだけ並進移動させたときの計測装置12の出力情報SXi、計測装置12の受光デバイス58をY軸方向に微小量δYだけ並進移動させたときの計測装置12の出力情報SYi、計測装置12の受光デバイス58をZ軸方向に微小量δZだけ並進移動させたときの計測装置12の出力情報SZi、計測装置12の受光デバイス58をA軸方向に微小量δαだけ回転移動させたときの計測装置12の出力情報SAi、計測装置12の受光デバイス58をB軸方向に微小量δβだけ回転移動させたときの計測装置12の出力情報SBi、計測装置12の受光デバイス58をC軸方向に微小量δγだけ回転移動させたときの計測装置12の出力情報SCiが出力変化量演算部22に伝達される。ここで、SXi、SYi、SZi、SAi、SBi及びSCiは、それぞれ、X軸、Y軸、Z軸、A軸、B軸及びC軸の各軸方向に微小量だけ移動したときの、計測装置12の受光デバイス58に結像した基準標的34の受光面座標系における位置座標、大きさ、回転量、扁平率及び扁平方向からなる出力情報(SX1,SX2,SX3,SX4、SX5、SX6)、(SY1,SY2,SY3,SY4、SY5、SY6)、(SZ1,SZ2,SZ3,SZ4、SZ5、SZ6)、(SA1,SA2,SA3,SA4、SA5、SA6)、(SB1,SB2,SB3,SB4、SB5、SB6)、(SC1,SC2,SC3,SC4、SC5、SC6)を表す。
出力変化量演算部22は、基準標的情報記憶部18に記憶された移動前の計測装置12の出力情報と移動後の計測装置12から出力された出力情報とから移動前に対する移動後の計測装置12の出力情報の変化量dSXi(=(dSX1,dSX2,dSX3,dSX4,dSX5,dSX6))、dSYi(=(dSY1,dSY2,dSY3,dSY4,dSY5,dSY6))、dSZi(=(dSZ1,dSZ2,dSZ3,dSZ4,dSZ5,dSZ6))、dSAi(=(dSA1,dSA2,dSA3,dSA4,dSA5,dSA6))、dSBi(=(dSB1,dSB2,dSB3,dSB4,dSB5,dSB6))、dSCi(=(dSC1,dSC2,dSC3,dSC4,dSC5,dSC6))を以下の式を用いて演算により求め、求められた変化量dSXi、dSYi、dSZi、dSAi、dSBi、dSCiを出力変化量記憶部24に記憶させる。
dSXi=SXi−S0i
dSYi=SYi−S0i
dSZi=SZi−S0i
dSAi=SAi−S0i
dSBi=SBi−S0i
dSCi=SCi−S0i
一方、ロボット14がロボットのアーム先端部に対して予め定められた座標系において任意の並進方向及び回転方向に微小移動量(dX,dY,dZ、dα、dβ、dγ)だけ移動したときに、計測装置12の受光デバイス58からの出力情報がdS
i=(dS
1,dS
2,dS
3,dS
4,dS
5,dS
6)だけ変化したとすると、ロボット14の微小移動量(dX,dY,dZ、dα、dβ、dγ)と計測装置12からの出力情報の変化量dS
iとは以下の関係式(9)を満たす。
よって、Mの逆行列M
-1を求めることにより、ロボット14の移動量(dX,dY,dZ、dα、dβ、dγ)を以下の式(10)のように表すことができる。
なお、Mの行列式が0、又は極端に小さな値である場合は、Mの逆行列を求めることができないから、これはその計測装置12ではロボット14を正しく誘導できないことを意味する。
次に、準備作業が終了すると、教示点の教示作業が行われる。
まず、作業対象物36上の所望される位置に指定標的38を設置する。例えば、本実施形態におけるようなスポット溶接では、作業対象物36上においてスポット溶接を行うべき打点位置に指定標的38を設置する。指定標的38の設置は、作業対象物36に別体の標的部材を貼り付け等によって取り付けることによって行ってもよく、作業対象物36上にマークを直接書き込むことによって行ってもよい。なお、本実施形態においてアーク溶接を行う場合には、溶接線78に沿った適宜の位置に指定標的38を設置すればよいことはいうまでもない。
次に、操作者は、教示操作盤33を用いて、計測装置12の受光デバイス58の視野内に指定標的38が捉えられる位置までロボット14をジョグ送りによって移動させ、その位置において、計測装置12によって、指定標的38の位置座標、大きさ、回転量、扁平率及び扁平方向を計測する。このときの計測装置12の出力情報をS1i(=(S11,S12,S13,S14、S15,S16))とすると、この状態において、計測装置12の受光デバイス58の受光面上に結像した指定標的38の受光面座標系における位置座標、大きさ、回転量、扁平率及び扁平方向は、基準標的情報記憶部18に記憶された基準標的34の位置座標、大きさ、回転量、扁平率及び扁平方向に対して誤差dS1i(=S0i−S1i)だけズレていることになる。ここで、S1iは、この位置における、計測装置12の受光デバイス58の受光面上に結像した指定標的38の受光面座標系における位置座標(S11、S12)、大きさS13、回転量S14、扁平率S15及び扁平方向S16からなる出力情報を表す。
次に、ロボット移動指令部30は、以下の式(11)を用いて、S1
iをS0
iに近づけるために必要なロボット14の移動量(dX1,dY1,dZ1,dα1,dβ1,dγ1)を求め、求められた移動量(dX1,dY1,dZ1,dα1,dβ1,dγ1)だけロボット14を移動させるように移動指令を作成し、移動指令に従ってロボット14を移動させる。
次に、移動後の位置において計測装置12によって受光デバイス58の受光面座標系における指定標的38の位置座標、大きさ、回転量、扁平率及び扁平方向を計測し、誤差判定部28は、誤差検出部26によって検出された計測結果S1iと基準標的情報記憶部に記憶された基準標的情報S0iとの差が予め定められた許容範囲内にあるか否かを判定する。計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にあると判定されたときにはロボット14と指定標的28とが予め定められた相対位置関係に配置されたと判断し、そのときのロボット14の基準点の位置を教示点として教示点記憶部32に記憶する。一方、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内にないと判定されたときには、ロボット14と指定標的38とが予め定められた相対位置関係に配置されておらず、ズレていると判断され、計測結果S1iと基準標的情報S0iとの差が予め定められた許容範囲内になるまで、上述したようなロボット14の移動とその位置における指定標的38の位置の計測が繰り返される。
このように、本実施形態では、指定標的38と計測装置12の受光デバイス58との相対位置関係だけでなく姿勢に関する情報も計測され、教示点の修正に必要となるロボット14の並進移動並びに回転移動も行われるので、ロボット14の位置だけでなく姿勢まで自動的に誘導することができる。
なお、本実施形態では、説明の簡単化のために、標的34,38の基本形状が円形であるものとして説明しているが、標的34,38の基本形状は円形に限定されるものではない。また、回転指標部34a,38aも直線や十字以外のものを用いることができる。
図14〜図16を参照して、本発明を用いたロボットシステムの第5の実施形態を説明する。本実施形態のロボットシステムの構成は、第2の実施形態態と同じ構成を有しているが、本実施形態のロボット14は、X軸、Y軸及びZ軸方向の並進移動に加えてA軸(またはB軸)及びC軸方向の回転も行うようになっている。ここで、A軸方向の回転とはX軸周りの回転を、B軸方向の回転とはY軸周りの回転を、C軸方向の回転とはZ軸周りの回転を意味する。このように第5の実施形態のロボットシステムの構成は、第2の実施形態のロボットシステム68の構成と同様であるので、ここでは、説明を省略する。なお、本実施形態は、アーク溶接に適用することもでき、この場合、スポット溶接装置50に代えてアーク溶接装置72をロボット14の手首要素48に装着すればよいことはいうまでもない。
本実施形態では、ロボット14の位置教示の際に、X軸、Y軸及びZ軸方向の位置についてロボット14を誘導する。したがって、ロボット14の移動を指示するためには、三つのパラメータを特定しなければならないので、計測装置12からの出力情報も少なくとも三つのパラメータを含んだものでなければならない。しかしながら、本実施形態では、計測装置12がスポット溶接装置50の可動側チップ54にブラケットなどの保持部材56を介して取り付けられた一つの受光デバイス58とこれとケーブル60を介して接続されている画像処理装置62とによって構成されており、計測装置12の出力情報は、計測装置12の受光デバイス58の受光面上に結像した基準標的34又は指定標的38(以下、単に標的とも記載する。)の位置座標(すなわち、受光面座標系における位置座標)の二つのパラメータのみとなっている。そこで、第2の実施形態とは異なる計測を行うようにしている。
以下に、図14〜図16を参照して、計測装置12によって行われる計測について説明する。なお、図11〜図13では、説明のため、ロボット14の基準点が原点であり受光デバイス58の光軸がZ軸と一致し、図中左右方向をY軸、図中前後方向をX軸とする座標系を用いる。
ロボット14の基準点の位置が標的34,38の位置と一致している状態では、図14に示されているように、図14(a)に示される姿勢から図14(b)に示される姿勢へZ軸周りに計測装置12の受光デバイス58を回転させても、計測装置12の受光デバイス58の受光面上に結像した標的34,38の受光面上における位置(受光面座標系における標的34,38の位置座標)は変化しない。同様に、ロボット14の基準点の位置が標的34,38の位置と一致している状態では、X軸周りやY軸周りに計測装置12の受光デバイス58を回転させても、計測装置12の受光デバイス58の受光面上に結像した標的34,38の受光面上における位置(受光面座標系における標的34,38の位置座標)は変化しない。
一方、図15(a)に示されているようにロボット14の基準点の位置が標的34,38の位置に対してX軸及びY軸の一方又は両方にズレている状態では、図15(b)に示されるようにZ軸周りに計測装置12の受光デバイス58を回転させると、計測装置12の受光デバイス58の受光面上に結像した標的34,38の位置は円弧状に移動する。また、図16(a)に示されているようにロボット14の基準点の位置が標的34,38の位置に対してZ方向にズレている状態では、図16(b)に示されるようにX軸周りに計測装置12の受光デバイス58を回転させると、計測装置12の受光デバイス58の受光面上に結像した標的34,38の位置は受光面上においてY軸方向に移動し、同様に、Y軸周りに計測装置12の受光デバイス58を回転させると、受光面上に結像した標的34,38の位置は受光面上においてX軸方向に移動する。
このことを利用して、本実施形態では、計測装置12による計測の際に、各位置においてロボット14の基準点を中心に計測装置12の受光デバイス58をX軸周りに微小量だけ回転させたときの計測装置12の受光デバイス58の受光面上に結像した標的34,38の受光面上における移動量(dVtRx,dHzRx)(=(S1,S2))と、各位置においてロボット14の基準点を中心に計測装置12の受光デバイス58をZ軸周りに回転させたときの計測装置12の受光デバイス58の受光面上に結像した標的34,38の受光面上における移動量(dVtRz,dHzRz)(=(S3,S4))とを求め、計測装置12の出力情報として、移動量(dVtRx,dHzRx)と移動量(dVtRz,dHzRz)からなる四つのパラメータを有するSi=(S1,S2,S3,S4)を用いるようにしている。
以下に、本実施形態のロボットシステムにおける位置教示の手順を説明する。
最初に、教示作業のための準備作業が行われる。まず、操作者が教示操作盤33を用いてロボット14をジョグ送りで移動させ、任意の場所に設けられた基準標的34の位置にスポット溶接装置50の固定側チップ52の先端を正確に一致させる。このときの一致は操作者の目視によって確認される(目視による手動操作を行わない方法については後述)。これによりロボット14の基準点が基準標的34と一致することになる。次に、基準標的34が概ね計測装置12の受光デバイス58の光軸上に位置するように、ブラケットなどの保持部材56を用いてスポット溶接装置50の可動側チップ54に計測装置12の受光デバイス58を取り付ける。これにより受光デバイス58の光軸がZ軸と概ね一致するようになる。
次に、この状態で可動側チップ54に取り付けられた計測装置12を用いて基準標的34の位置の計測を行う。詳細には、ロボット14の基準点と基準標的34の位置とが一致し且つ計測装置12の受光デバイス58の光軸がZ軸と概ね一致する状態から、ロボット14又は計測装置12の移動機構12aを用いてX軸周りに微小量δαだけ計測装置12の受光デバイス58を回転させ、計測装置12の受光デバイス58の受光面上に結像した画像を処理して、受光デバイス58の受光面上に結像した基準標的34の受光面における回転前後の移動量(dVtRx,dHzRx)を求めると共に、ロボット14の基準点と基準標的34の位置とが一致し且つ計測装置12の受光デバイス58の光軸がZ軸と概ね一致する状態から、ロボット14又は計測装置12の移動機構12aを用いてZ軸周りに微小量δγだけ計測装置12の受光デバイス58を回転させ、計測装置12の受光デバイス58の受光面上に結像した画像を処理して、受光デバイス58の受光面上に結像した基準標的34の受光面における回転前後の移動量(dVtRz,dHzRz)を求め、求められた基準標的34の移動量を計測装置12の出力情報S0i(=(S01,S02,S03,S04))として基準標的情報記憶部18に記憶させる。ここで、S0iは、計測装置12の受光デバイス58の受光面に結像した基準標的34の受光面座標系における移動量(dVtRx,dHzRx)(=(S01,S02))、(dVtRz,dHzRz)(=(S03,S04))とからなる出力情報を表す。
なお、ロボット14の基準点とスポット溶接装置50の固定側チップ52の先端の位置とが一致している場合、基準標的34の位置とスポット溶接装置の固定側チップ52の先端が一致している状態で、計測装置12の受光デバイス58をX軸周り及びZ軸周りに回転させても基準標的34は移動しないはずであるので、計測装置12による計測を行わず、S0iを(0,0,0,0)として基準標的情報記憶部18に予め記憶しておいてもよい。これにより、操作者が教示操作盤33を用いてロボット14をジョグ送りで移動させ、基準標的34の位置にスポット溶接装置50の固定側チップ52の先端を正確に一致させるという目視による手動操作が不要となる。また、スポット溶接装置50の固定側チップ52の先端の位置にロボット14の基準点を自動で設定する方法の一例としては、特開2005−300230号公報を参照されたい。
基準標的34についての計測装置12の出力情報が基準標的情報記憶部18に記憶されると、微小移動指令部20が、ロボット14を移動させることにより又は計測装置12の移動機構12aを用いることにより、記憶したときの状態から計測装置12をロボット14のアーム先端部に対して予め定められた座標系の直交する3軸であるX軸、Y軸及びZ軸の各方向に微小量だけ並進移動させる。そして、それぞれの移動後の位置で計測装置12による基準標的34の計測が行われ、計測により求められた計測装置12からの出力情報が出力取込部16を介して出力変化量演算部22に伝達される。詳細には、計測装置12をX軸方向に微小量δXだけ並進移動させたときの計測装置12の出力情報SXi、計測装置12をY軸方向に微小量δYだけ並進移動させたときの計測装置12の出力情報SYi、計測装置12をZ軸方向に微小量δZだけ並進移動させたときの計測装置12の出力情報SZiが出力変化量演算部22に伝達される。ここで、SXi、SYi、SZiは、それぞれ、X軸、Y軸及びZ軸の各軸方向に微小量だけ計測装置12を並進移動させた後、並進移動後の状態からx軸周りに微小量δαだけ計測装置12の受光デバイス58を回転させた前後での受光デバイス58の受光面上に結像した基準標的34の受光面における移動量(dVtRx,dHzRx)とX軸、Y軸及びZ軸の各軸方向に微小量だけ計測装置12を並進移動させた後、並進移動後の状態からZ軸周りに微小量δγだけ計測装置12の受光デバイス58を回転させた前後での受光デバイス58の受光面上に結像した基準標的34の受光面における移動量(dVtRz,dHzRz)とからなる出力情報(SX1,SX2,SX3,SX4)、(SY1,SY2,SY3,SY4)、(SZ1,SZ2,SZ3,SZ4)を表す。
次に、出力変化量演算部22は、基準標的情報記憶部18に記憶された移動前の計測装置12の出力情報と移動後の計測装置12から出力された出力情報とから移動前に対する移動後の計測装置12の出力情報の変化量dSXi(=(dSX1,dSX2,dSX3,dSX4))、dSYi(=(dSY1,dSY2,dSY3,dSY4))、dSZi(=(dSZ1,dSZ2,dSZ3,dSZ4))を以下の式を用いて演算により求め、求められた変化量dSXi,dSYi,dSZiを出力変化量記憶部24に記憶させる。
dSXi=SXi−S0i
dSYi=SYi−S0i
dSZi=SZi−S0i
このように計測装置12を並進移動させた後に、並進移動後の位置からZ軸周り及びX軸周りに微小量の回転を行うことによる受光面座標系における標的34,38の移動量を計測装置12の出力情報とすれば、出力情報に含まれるパラメータの数は第1の実施形態と同じになる。したがって、ロボット14がロボット14のアーム先端部に対して予め定められた座標系において任意の方向に微小移動量(dX,dY,dZ)だけ移動したときに、Z軸周り及びX軸周りに微小量の回転を行うことにより求められる計測装置12からの出力情報が(dS
1,dS
2,dS
3,dS
4)だけ変化したとすれば、ロボット14の微小移動量(dX,dY,dZ)と計測装置12からの出力情報の変化量dS
i(=(dS
1,dS
2,dS
3,dS
4))とは、以下の関係式(12)を満たす。
よって、Mの擬似逆行列M
+を求めることにより、ロボット14の移動量(dX,dY,dZ)を以下の式(13)のように表すことができる。
ここで、M+はMの転置行列MTを用いて、以下の式により求められる。
M+=(MTM)-1MT
なお、(MTM)の行列式が0、又は極端に小さな値である場合は、(MTM)の逆行列を求めることができないから、これはその計測装置12ではロボット14を正しく誘導できないことを意味する。
次に、準備作業が終了すると、教示点の教示作業が行われる。
教示点の教示作業は、第1の実施形態とほぼ同様に行われる。ただし、計測装置12による指定標的38の計測は、計測が所望されているときの位置において、X軸周りに微小量δαだけ計測装置12の受光デバイス58を回転させた前後での受光デバイス58の受光面上に結像した指定標的58の受光面における移動量(dVtRx,dHzRx)(=(S11,S12))とZ軸周りに微小量δγだけ計測装置12の受光デバイス58を回転させた前後での受光デバイス58の受光面上に結像した指定標的38の受光面における移動量(dVtRz,dHzRz)(=(S13,S14))とを求め、これを出力情報S1i(=(S11,S12,S13,S14))として出力することにより行われる。それ以外の点は、第1の実施形態とほぼ同様である。
すなわち、計測装置12による指定標的38の計測が行われると、誤差判定部28が、計測結果S1
iと基準標的情報記憶部18に記憶された基準標的情報S0
iとの差が予め定められた許容範囲内にあるか否かを判定する。そして、計測結果S1
iと基準標的情報S0
iとの差が予め定められた許容範囲内にあると判定されたときにはロボット14と指定標的38とが予め定められた相対位置関係に配置されたと判断し、そのときのロボット14の基準点の位置を教示点として教示点記憶部32に記憶する。一方、計測結果S1
iと基準標的情報S0
iとの差が予め定められた許容範囲内にないと判定されたときには、ロボット14と指定標的38とが予め定められた相対位置関係に配置されておらず、ズレていると判断され、計測結果S1
iと指定標的情報S0
iとの差が予め定められた許容範囲内になるまで、ロボット移動指令部30は、以下の式(14)を用いて、S1
iをS0
iに近づけるために必要なロボット14の移動量(dX1,dY1,dZ1)を求め、求められた移動量(dX1,dY1,dZ1)だけロボット14を移動させ、移動後の位置において指定標的38の計測を行うことを繰り返す。
以上、図示される実施形態に基づいて本発明を説明したが、本発明は図示される実施形態に限定されるものではない。例えば、第1の実施形態では、計測装置12がロボット14によって移動させられているが、計測装置12に移動機構12aを設け、移動機構12aにより計測装置12を移動させてもよい。
本発明によるロボット制御装置の全体構成を示すブロック図である。
図1に示されているロボット制御装置による教示作業の流れを示すフローチャートである。
図1のロボット制御装置を用いたロボットシステムの第1の実施形態の全体構成図である。
第1の実施形態による教示作業における基準標的の計測の様子を示す拡大図である。
第1の実施形態による教示作業における指定標的の位置への自動修正の様子を示す拡大図である。
図1のロボット制御装置を用いたロボットシステムの第2の実施形態の全体構成図である。
図1のロボット制御装置を用いたロボットシステムの第3の実施形態の全体構成図である。
第3の実施形態のロボットシステムによる教示作業における基準標的とアーク溶接装置の先端との位置合せの様子を示す拡大図である。
第3の実施形態のロボットシステムによる教示作業における基準標的の計測の様子を示す拡大図である。
第3の実施形態のロボットシステムによる教示作業における指定標的の位置への自動修正の様子を示す拡大図である。
図1のロボット制御装置を用いたロボットシステムの第4の実施形態における計測装置のZ軸周りの回転とそれによる計測装置の受光面上での標的の扁平量及び扁平方向との関係を示す斜視図である。
第4の実施形態のロボットシステムにおける計測装置のX軸周りの回転とそれによる計測装置の受光面上での標的の扁平量及び扁平方向との関係を示す斜視図である。
第4の実施形態のロボットシステムにおける計測装置のY軸周りの回転とそれによる計測装置の受光面上での標的の扁平量及び扁平方向との関係を示す斜視図である。
図1のロボット制御装置を用いたロボットシステムの第5の実施形態において計測装置の受光デバイスの光軸上に位置するロボットの基準点が標的の位置と一致しているときの計測装置のZ軸周りの回転とそれによる計測装置の受光面上での標的の移動との関係を示す斜視図である。
第5の実施形態のロボットシステムにおいて計測装置の受光デバイスの光軸上に位置するロボットの基準点のX軸又はY軸方向の位置が標的の位置と一致していないときの計測装置のZ軸周りの回転とそれによる計測装置の受光面上での標的の移動との関係を示す斜視図である。
第5の実施形態のロボットシステムにおいて計測装置の受光デバイスの光軸上に位置するロボットの基準点のZ方向の位置が標的の位置と一致していないときの計測装置のX軸周りの回転とそれによる計測装置の受光面上での標的の移動との関係を示す斜視図である。
符号の説明
10 ロボット制御装置
12 計測装置
12a 移動機構
14 ロボット
18 基準標的記憶部
22 出力変化量演算部
24 出力変化量記憶部
26 誤差検出部
28 誤差判定部
30 ロボット移動指令部
32 教示点記憶部
34 基準標的
36 作業対象物
38 指定標的
40 ロボットシステム
50 スポット溶接装置
58 受光デバイス
62 画像処理装置
68 ロボットシステム
70 ロボットシステム
72 アーク溶接装置
74 レーザスポット光投光装置
76 レーザスポット光
80 ロボットシステム
84 ロボットシステム