(57)【要約】【課題】  教示部位が目視困難な場合でも教示を容易にする。【解決手段】  ツール座標系とワーク座標系との相対関係によって指定されるロボットの姿勢合わせ条件を設定記憶させておく。手動送り動作指令が入力されると、記憶している姿勢合わせ条件を満たすようなロボット姿勢とし、手動送り動作指令方向にロボットを駆動する（ｄ１）。接触を検出するセンサからの検出信号が出力されたとき、ロボットの各軸のいずれかのモータにかかる負荷トルクが設定トルクを越えたとき、手動送り動作開始後所定距離移動したときの内、いずれかを停止条件としてロボットに予め設定し、その停止条件が成立したとき手動送りを自動的に停止させる（ｄ２，ｄ３）。予め退避条件が設定されていると、ロボットを退避させ停止させる（ｄ５，ｄ６、ｄ７）。ツールと対象物が接触すると自動的に手動送りが停止されるので、教示が容易となる。【選択図】              図１０
2004188594.tif 000002
【特許請求の範囲】
【請求項１】
ロボットに取り付けられたツールに対して設定されたツール座標系と作業対象物に対して設定されたワーク座標系との相対関係によって指定されるロボットの姿勢合わせ条件を記憶する姿勢合わせ条件を記憶する記憶手段と、手動送り動作指令が入力されると、前記記憶している姿勢合わせ条件を満たすようにロボットの目標姿勢を求める手段と、前記ロボットを前記目標姿勢に自動的に動かす手段とを備え、
ロボットに取付けられたツールと作業対象物との接触を検出するセンサからの検出信号が出力されたとき、前記ロボットの各軸を駆動するモータのいずれかのモータにかかる負荷トルクが設定トルクを越えたとき、手動送り動作開始から所定距離移動したときの内、いずれかを手動動作停止条件としてロボット制御装置に予め設定し、前記手動動作停止条件が成立したかを監視する監視手段を備え、
前記ロボットに手動送り動作指令が入力されると、前記姿勢合わせ条件を満たすようにロボットを自動的に動作させた後、手動送り動作を行い、手動送り動作中に、前記監視手段から停止条件が成立したことが検出されると、手動送りを自動的に停止させることを特徴とするロボット制御装置。
【請求項２】
前記手動送り動作の送り方向は、ロボット基準座標系、ワーク座標系又はツール座標系のＸ，Ｙ，Ｚ軸のいずれかの軸方向を選択可能とした請求項１に記載されたロボット制御装置。
【請求項３】
前記停止条件が成立したときのロボットの位置を記憶する記憶手段を設け、停止条件が成立してから停止するまでに惰走したロボットを前記記憶手段に記憶した位置に戻すようにした請求項１又は請求項２に記載されたロボット制御装置。
【請求項４】
前記停止条件が成立した位置から退避する方向及び距離を設定記憶する記憶手段を設け、停止条件が成立した位置に停止した後、前記記憶手段に記憶した方向に設定距離だけ移動させるようにした請求項３に記載されたロボット制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボット制御装置に関し、特に教示作業が簡単になるロボット制御装置に関する。
【背景技術】
【０００２】
ロボットに作業動作を教示する方式として、ロボットを手動で移動させ各教示点等を教示していく直接教示方式がある。この方式は、作業者がロボットの手首に取り付けられたツールと作業対象物との位置関係を観察しながら教示点等を選択し教示するものである。
【０００３】
しかし、例えば、自動車の車体の下部をスポット溶接する位置として教示する場合等にあっては、その教示位置を目視することができない場合がある。このようなロボットのツールと作業対象の位置関係が目視困難な部位に対する教示は、従来は、作業者の勘を頼りにその教示点を教示していた。又、ツールと作業対象の接触位置を教示するような場合、接触具合は作業者の判断で行なっており、又、目視の困難な部位では、上述したように、作業者の勘を頼りに教示したり、ツールと作業対象物との接触を知らせるランプなどを作業者がみながら教示するという方法が行われている。
【０００４】
又、現在位置から一定方向に一定量ロボット（ツール）を動作させた位置を教示するような場合、従来は、作業者がロボット（ツール）の現在位置を確認しながら手動送り操作を行なって教示位置までロボット（ツール）を動作させたり、現在位置に動作させたい距離を加算して教示位置を直接求める方法が採用されている。
【０００５】
さらに、ツールの移動する部位にツール先端点を基準にして手動送り操作を行ない、ツールの位置姿勢を変更することが望ましい場合がある。このような場合、従来は、ツール先端点が設定されている部位が移動する毎にツール座標系を再設定していた。又、作業対象物に対してツールを一定の姿勢で接触あるいは接近させて教示点を教示するような場合、作業者が手動送り操作で希望する姿勢になるまでツールを動作させていた。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
目視が困難な部位に対する教示で、作業者の勘に頼ることは教示位置の不正確さを招くと共に、教示作業を困難にしている。又、作業対象物とツールの接触位置の教示の場合においても、作業者の勘を頼りにする教示や、作業対象物とツールの接触を知らせるランプを監視しながらの作業者による教示では、教示位置のバラツキが生じると共に正確な教示作業を困難にしている。
【０００７】
現在位置から一定方向に一定量動作させる場合においても、作業者の手動操作によってもしくは動作させたい距離を現在位置に加算して教示位置を求める方法では、教示位置のバラツキが生じかつ、教示作業が繁雑になるという欠点を有する。又、ツール先端点を基準にツール姿勢を変える場合にもツール先端点が移動する毎にツール座標系を再設定することや、作業対象物に対してツールを一定の姿勢で接近、又は接触させるような場合に手動操作でこの姿勢を得ることは教示作業を繁雑にしている。  
そこで、本発明の目的は、上述した課題を改善し、教示動作を補助し教示が容易なロボット制御装置を提供することにある。
【課題を解決するための手段】
【０００８】
本願請求項１に係わる発明は、ロボットに取り付けられたツールに対して設定されたツール座標系と作業対象物に対して設定されたワーク座標系との相対関係によって指定される、ロボットの姿勢合わせ条件を記憶する姿勢合わせ条件を記憶する記憶手段と、手動送り動作指令が入力されると、前記記憶している姿勢合わせ条件を満たすようにロボットの目標姿勢を求める手段と、前記ロボットを前記目標姿勢に自動的に動かす手段とを備え、ロボットに取付けられたツールと作業対象物との接触を検出するセンサからの検出信号が出力されたとき、前記ロボットの各軸を駆動するモータのいずれかのモータにかかる負荷トルクが設定トルクを越えたとき、手動送り動作開始から所定距離移動したときの内、いずれかを手動動作停止条件としてロボット制御装置に予め設定し、前記手動動作停止条件が成立したかを監視する監視手段を備え、前記ロボットに手動送り動作指令が入力されると、前記姿勢合わせ条件を満たすようにロボットを自動的に動作させた後、手動送り動作を行い、手動送り動作中に、前記監視手段から停止条件が成立したことが検出されると、手動送りを自動的に停止させることを特徴とするロボット制御装置である。これによって教示動作を容易にしたものである。  
又、請求項２に係わる発明は、前記手動送り動作の送り方向を、ロボット基準座標系、ワーク座標系又はツール座標系のＸ，Ｙ，Ｚ軸のいずれかの軸方向に選択できるものとした。請求項３に係わる発明は、前記停止条件が成立したときのロボットの位置を記憶する記憶手段を設け、停止条件が成立してから停止するまでに惰走したロボットを前記記憶手段に記憶した位置に戻すようにした。さらに、請求項４に係わる発明は、前記停止条件が成立した位置から退避する方向及び距離を設定記憶する記憶手段を設け、停止条件が成立した位置に停止した後、前記記憶手段に記憶した方向に設定距離だけ移動させるようにした。
【発明の効果】
【０００９】
本発明は、手動送り動作指令により、設定されたツール座標系とワーク座標系との相対関係の姿勢合わせ条件を満たすようにロボットを自動的に動作させ、設定された停止条件が成立すると、自動的に手動送りを停止するようにしたから、正確な教示が可能となる。
【発明を実施するための最良の形態】
【００１０】
図１は本発明の一実施形態のロボット制御装置の要部ブロック図であり、従来のロボット制御装置と同一の構成である。符号１０７で示されるバスに、メインプロセッサ（以下、単にプロセッサと言う。）１０１、ＲＡＭ、ＲＯＭ、不揮発性メモリ（ＥＥＰＲＯＭなど）からなるメモリ１０２、教示操作盤用インターフェイス１０３、外部装置用の入出力インターフェイス１０６及びサーボ制御部１０５が接続されている。又、教示操作盤用インターフェイス１０３には教示操作盤１０４が接続されている。
【００１１】
ロボット及びロボット制御装置の基本機能を支えるシステムプログラムは、メモリ１０２のＲＯＭに格納される。また、アプリケーションに応じて教示されるロボットの動作プログラム並びに関連設定データは、メモリ１０２の不揮発性メモリに格納される。そして、メモリ１０２のＲＡＭは、プロセッサ１０１が行なう各種演算処理におけるデータの一時記憶の記憶領域に使用される。
【００１２】
サーボ制御部１０５はサーボ制御器＃１〜＃ｎ（ｎ：ロボットの総軸数にツールの可動軸数を加算した数）を備えており、ロボット制御のための演算処理（軌道計画作成とそれに基づく補間、逆変換など）を経て作成された移動指令を受け、ロボット各軸機構部のアクチュエータを構成するサーボモータを各サーボアンプを介して制御する。
【００１３】
また、入出力インターフェイス１０６の外部入出力回路には、ロボットに設けられたセンサや周辺機器のアクチュエータやセンサが接続され、本発明に関係して、特に、ツールと作業対象物との接触を検出するセンサが接続されている。
【００１４】
上述したロボット制御装置の構成は、従来のロボット制御装置と何等変わりはなく、本発明においては、上述した教示操作盤１０４に姿勢合せキーが設けられていることと、教示補助のためにツールの姿勢、位置の制御等を自動的に実行できるようにした点に相違がある。
【００１５】
図２は、本実施形態における上記教示操作盤１０４の説明図である。この教示操作盤１０４は従来の教示操作盤と相違する点は、姿勢合せキー１９が設けられていることと、又、後述する教示補助のためのモードをソフトキー１１で選択できるようにした点である。他は従来と同様である。図２においては、本発明と関係する部分のみを図示し、他は省略している。即ち、従来と同様に、ＬＣＤ等のディスプレイ１０と、本発明に関係して教示補助のためのモード選択するソフトキー１１、座標系を選択するキー１６で選択された座標系（ロボット基準座標系、該基準座標系から相対的に設定されたワーク座標系、ツール座標系）の直交座標系におけるＸ，Ｙ，Ｚ軸、＋，−方向への移動を指令する直線動作キー１２、Ｘ，Ｙ，Ｚ軸回りの＋，−方向への回転動作を指令する回転動作キー１３、ロボットの各関節軸Ｊ１〜Ｊ６の＋，−方向への動作を指令する各軸動作キー１４を備える。なお、この実施形態では、ロボットは６軸を備えているものとしている。
又、教示操作盤１０４は従来と同様に、各動作キー１２，１３，１４と共に押圧して、それぞれの指令を入力するためのシフトキー１５、座標系を選択するキー１６、教示モード、再生モードを切換えるモードキー１７、各種座標系の設定や、パラメータの設定等のためにこれらの設定表示画面を選択し、設定可能とする機能選択キー１８等を備える。上述した以外に従来の教示操作盤と同様に各種指令キー等を備えているものであるが、図２では、直接本発明に関係するキー部分のみを図示している。
【００１６】
オペレータは、この教示操作盤１０４のマニュアル操作を通して、従来と同様に、ロボットの動作プログラムの教示、修正、登録、あるいは各種パラメータの設定の他、教示された動作プログラムの再生運転、ジョグ送り等を実行する。また、ディスプレイはオペレータへの指示、入力データの表示やシミュレーション結果の表示に使用される。
【００１７】
＜１軸による姿勢合わせモード＞
この姿勢合わせモードは、ロボットのアーム先端の手首に取り付けられたツールと作業対象物との関係が希望する関係になるようにツール姿勢を自動的に変更するものである。即ち、この姿勢合わせモードでは、ロボット基準座標系から相対的に作業対象物に設定されているワーク座標系Ｗ及びツールに対して設定されているツール座標系Ｔからそれぞれ１つの軸を選択し、この軸間において設定された関係（交角）になるように自動的にツール姿勢を変えるものである。後述する図１１（ｃ）のように、スポット溶接ガン（ツール）のチップが作業対象物の溶接位置の面と垂直になるようにスポット溶接ガンの姿勢を設定する場合等に適しているものである。
【００１８】
この１軸による姿勢合わせモードを、図３に示すロボット制御装置のプロセッサ１０１の処理と図４の動作説明図と共に説明する。なお、図４はツールとしてスポット溶接ガンを用いた例を示している。
【００１９】
まず、予め、図４（ａ）に示すように、機能選択キー１８を操作して、従来と同様にツール座標系Ｔ及びワーク座標系Ｗを設定しておく。さらに、この１軸による姿勢合わせモードはワーク座標系Ｗとツール座標系Ｔにおけるそれぞれ選択された１つの軸が設定交角になるように姿勢合わせを行なうものであり、そのために、予め、姿勢合わせを行なうツール座標系ＴのＸ，Ｙ，Ｚ軸の中の１つの軸、ワーク座標系ＷのＸ，Ｙ，Ｚ軸の中の１つの軸を選択設定し、かつ、この選択設定された軸間の交角を設定する。なお、図４に示す例では、選択軸がツール座標系Ｔ及びワーク座標系ＷともにＺ軸が選択され、かつ交角θが設定されているものとしている。なお、この交角の設定が０であれば、選択された軸が同一方向を向くことを意味する。又、姿勢合せのために手動送りされるときの動作速度をも予め設定しておく。
【００２０】
そこで、モードキー１７を操作して教示モードにして操作者がロボットを動作させ、ツール２０を作業対象物２１に対し教示しようとする位置に移動させた後、姿勢合わせのためにシフトキー１５と姿勢合せキー１９を押すと、プロセッサ１０１は、図３の処理を開始する。
【００２１】
ツール座標系Ｔの選択設定されている軸（図４ではＺ軸）に平行でツール座標系Ｔの原点を通る単位ベクトルｔを求める（図４（ｂ）参照）（ステップａ１）。次にワーク座標系Ｗにおける選択設定されている軸（図４ではＺ軸）に平行でツール座標系Ｔの原点を通る単位ベクトルｗを求める（図４（ｃ）参照）（ステップａ２）。単位ベクトルｔとｗの外積よりツール座標系Ｔの原点を通りベクトルｔとｗに直交する法線ベクトルｎを求める（図４（ｄ）参照）（ステップａ３）。
【００２２】
ｎ＝ｔ×ｗ      （×は外積の演算子）  
求めた法線ベクトルｎが「０」か否か判断し（ステップａ４）、もし法線ベクトルｎが「０」でなければ、ステップａ８に移行し、「０」であれば、単位ベクトルｔとｗが平行であることを意味し、法線ベクトルが一意に求まらないことを意味する。そこで、教示操作盤１０４のディスプレイ等にアラームを発生すると共に、ツール座標系の設定軸とは異なる２つの軸で形成される平面上にあるツール座標系Ｔの原点を通るベクトルｎ´の入力を促すメッセージを表示する（ステップａ５）。図４で示す例では、ツール座標系ＴのＺ軸が選択軸として設定されているから、この場合ツール座標系のＸＹ平面上にあるツール座標系Ｔの原点を通るベクトルｎ´の入力が促されることになるが、通常Ｘ軸若しくはＹ軸を指定すればよい。図４の例ではＸ軸が指定される。
【００２３】
ベクトルｎ´が入力されると（ステップａ６）、該ベクトルｎ´を法線ベクトルｎとし（ステップａ７）、ステップａ８に移行する。ステップａ８では、ベクトルｔとｗの交角αを求める（図４（ｅ）参照）。法線ベクトルｎの回りに、求めた交角αと設定されている目標交角θとの差（α−θ）だけ回転させる変換行列Ｆを求める（ステップａ９）。なお、設定されている目標交角が「０」の場合には、上記差α−θ＝α−０＝αとなり、ベクトルｔをベクトルｗに一致させる（図４の例ではツール座標系ＴのＺ軸とワーク座標系ＷのＺ軸を平行にする）変換行列Ｆを求めることになる。
【００２４】
ロボットの基準座標系からみた現在ロボットの位置姿勢におけるロボットアーム先端の手首フランジ面の座標系Ｒを求め、ロボットの基準座標系から見たツール先端の座標系Ｈを上記座標系Ｒとツール座標系Ｔより求める（ステップａ１０）。
【００２５】
Ｈ＝Ｒ・Ｔ
さらに、上記求めた座標系Ｈに上記変換行列Ｆをかけて、ツールの姿勢合せ目標位置姿勢の座標系Ｈ´を求める（ステップａ１１）（図４（ｆ）参照）。  
Ｈ´＝Ｈ・Ｆ
目標位置姿勢Ｈ´に向かって設定された動作速度で動作するようにロボットを駆動する（ステップａ１２）。なお、図４（ｇ）においては、姿勢合せを行なう前のツール姿勢Ｈを破線で、又姿勢合わせを行なった後（設定目標交角θ＝０）の姿勢Ｈ´を実線で表している。
【００２６】
以上のようにして、ツール座標系Ｔにおける選択された軸がワーク座標系Ｗの選択された軸に対して所定関係（設定交角θ）になるように自動的にロボットが駆動されツール２０の姿勢が作業対象物２１に対して所望する関係となる。
【００２７】
＜座標系による姿勢合わせモード＞
上記１軸による姿勢合わせモードは、ツール座標系Ｔとワーク座標系Ｗにおけるそれぞれ選択された軸が設定所定関係（設定交角関係）になるように、自動的にロボットを駆動してツール２０の姿勢を変えるものであったが、この座標系による姿勢合わせモードでは、ツール座標系Ｔをワーク座標系Ｗに対して、設定された相対関係になるようにロボットを自動的に駆動してツール姿勢を変えるものである。
【００２８】
まず、上述した１軸による姿勢合わせモードと同様に、ツール座標系Ｔ及びワーク座標系Ｗを設定しておく。又、姿勢合わせでの手動送りされるときの動作速度をも設定する。さらにワーク座標系Ｗとツール座標系Ｔ間で成立させたい相対関係を設定する。回転したワーク座標系をツール座標系Ｔの目標姿勢にしたい場合、ワーク座標系のＸ，Ｙ，Ｚ軸回りのそれぞれの回転角を設定しておく。そして、教示操作盤１０４のシフトキー１５と姿勢合せキー１９を同時に押し続けることによって、プロセッサ１０４は図５の処理を実行して、ツール姿勢を自動的に目標姿勢に変える。
【００２９】
なお、図６は、この座標系による姿勢合わせモードの動作説明図であり、図６（ａ）は、姿勢合せが行われる前の作業対象物（ワーク座標系）とツール（ツール座標系）の関係を示している。  
シフトキー１５と姿勢合せキー１９が同時に押されると、まず、設定されているワーク座標系Ｘ，Ｙ，Ｚ軸回りの回転角に基づいて、ワーク座標系Ｗをこの設定回転角だけ回転させる変換行列Ｆを求め（ステップｂ１）、この変換行列Ｆをワーク座標系Ｗに掛けて変換後のワーク座標系Ｇを求める（ステップｂ２）（図６（ｂ）参照）。
【００３０】
Ｇ＝Ｗ・Ｆ
次に、ロボットの基準座標系から見た現在ロボットの位置姿勢におけるロボットアーム先端の手首フランジ面の座標系Ｒを求め、ロボットの基準座標系から見たツール先端の座標系Ｈを上記座標系Ｒとツール座標系Ｔより求める（ステップｂ３）。
【００３１】
Ｈ＝Ｒ・Ｔ
求められた座標系ＧとＨをそれぞれ姿勢成分Ｇｒ、Ｈｒと位置成分Ｇｌ、Ｈｌとに分解し、座標系Ｈの姿勢成分Ｈｒを座標系Ｇの姿勢成分Ｇｒに置き換え、ツール先端の座標系の新しい座標系Ｈ´を求める（ステップｂ４）（図６（ｃ）参照）。  
即ち、座標系Ｇ及び座標系Ｈは次の１式、２式で表される。
【００３２】
【数１】
2004188594.tif 000003
【００３３】
【数２】
2004188594.tif 000004
座標系Ｈの姿勢成分Ｈｒを座標系Ｇの姿勢成分Ｇｒに置き換えた新しい座標系Ｈ´は、３式で表される。
【００３４】
【数３】
2004188594.tif 000005
上記３式で求められた新しい座標系Ｈ´に向かって設定動作速度でロボットを駆動して、ツール座標系がワーク座標系に対して設定された相対関係になるようツール姿勢を変えて、この姿勢合せ動作を終了する（ステップｂ５）。
【００３５】
＜ツール可動部材上の座標系設定モード＞
このツール可動部材上の座標系設定モードは、ツール２０として、サーボモータで駆動され、ツール可動部位置が検出できるサーボガン等を用いる場合に適用するものである。この座標系設定モードでは、ツール２０の可動部がロボット制御装置の付加軸としてサーボ制御されるものとし、ツール可動部の制御もロボット制御装置で行われるものとしている。又、ツール可動部を手動送りする手動操作手段としてキーを教示操作盤１０４に設けてもよいが、図２に示す例では、この手段は省略している。
【００３６】
そしてツール先端点（以下ＴＣＰという）を基準にして、ツールを回転させたり移動させた方が便利な場合に、ツール２０上にツール座標系Ｔが設定され、ＴＣＰが設定されている部位が移動する場合に、このＴＣＰの移動に合わせてツール座標系Ｔを自動的に設定するようにしたものである。以下、図７に示すロボット制御装置のプロセッサ１０１が実施する処理のフローチャートと、図８、図９に示す動作説明図と共に説明する。
【００３７】
まず、ツール２０の一部に基準となるツール座標系Ｔを設定する。図８（ａ）はツール２０の可動部２０ａに設定した例（スポット溶接ガンの可動側チップに設定した例）、図８（ａ´）はツール２０の固定部２０ｂに設定した例を示す。
以下、図８、図９において（ａ）〜（ｃ）はツール座標系Ｔをツール２０の可動部２０ａに設定した場合、（ａ´）〜（ｃ´）は、ツール座標系Ｔをツール２０の固定部２０ｂに設定した場合の例を示す。
【００３８】
次に、上記設定した基準ツール座標系Ｔに対して基準となる可動部の位置Ｏを設定する。図８（ｂ）、（ｂ´）では、可動部の基準位置Ｏを可動部のチップが設けられた側の固定部の位置を基準にしてツール座標系Ｔ上において設定する。
【００３９】
又、ツール２０の可動部２０ａの移動方向を、ツール座標系ＴのＸ，Ｙ，Ｚ軸の軸によって指定することにより設定する。図８（ｃ）、（ｃ´）の例では、ツール座標系ＴのＺ軸が設定されることになる。さらに、手動送り動作における動作速度を設定した後、ツール２０の可動部（可動側チップ）２０ａを手動送り、もしくはプログラム実行によって所望する位置Ｐに移動させる（図９（ａ），（ａ´）参照）。  
そして、シフトキー１５と動作方向キー１２を押し、ツール座標系Ｔに基づいて手動送りを指令すると、ロボット制御装置のプロセッサ１０１は図７の処理を開始する。
【００４０】
まず、設定されているツール可動部２０ａの基準位置Ｏからツール可動部２０ａの現在位置Ｐまでの距離Ｌ（Ｌ＝Ｐ−Ｏ）を求め（ステップｃ１）（図９（ｂ），（ｂ´）参照）、設定された移動方向の軸方向（この例ではＺ軸方向）への上記求めた距離Ｌの並進行列として変換行列Ｆを求める（ステップｃ２）。そして、設定されているツール座標系の基準座標系Ｔと上記変換行列Ｆによって新たなツール座標系Ｔ´を次式によって求める（ステップｃ３）（図９（ｃ），（ｃ´）参照）。
【００４１】
Ｔ´＝Ｔ・Ｆ
求められた新しいツール座標系Ｔ´に基づいて指令された軸方向の手動送り動作を実行する（ステップｃ４）。図９（ｂ）、（ｂ´）及び図９（ｃ）、（ｃ´）に示すように、ツール２０の可動部２０ａが移動しても、その移動後のツール座標系Ｔが自動的に求められ、該求められたツール座標系Ｔ´に基づいて、指令された動作方向の移動がなされるから、この移動中にツール２０と作業対象物２１が干渉するような不具合を避けることができる。
【００４２】
＜停止条件による停止モード＞
この停止条件による停止モードは、ロボットを手動で移動させている途中で、ある設定された停止条件が成立したときに、ロボット動作を自動的に停止させるものである。そのために、この実施形態では、この停止させる条件を予め設定しておかねばならない。この停止条件としては例えば、次のようなものがある。
（１）ツールと作業対象物が接触したことを検出するセンサを設け、該センサからの信号を入出力インタフェース１０６を介して検出し、これを停止条件とする。
（２）ロボットの各軸を駆動するサーボモータの負荷トルクを検出し、１軸でもしきい値を越えたとき、ツール２０と作業対象物２１が接触したとして検出しこれを停止条件とする。負荷トルクを、角軸のサーボモータの駆動電流のフィードバック値、又は、トルク指令値（電流指令値）に基づいて検出して、これにフィードバック値又はトルク指令値が設定しきい値以上のとき、停止条件とする。又、負荷トルクを推定するオブザーバが設けられている場合には、このオブザーバで推定される負荷トルクがしきい値以上になることによって停止させる停止条件としてもよい。
（３）手動送り開始点からの移動距離が設定値を越えたとき、自動停止させる。
停止条件としては、各種のものがあるが適用例に応じて、最適な停止条件を選択する。例えば、上述した（１）〜（３）の停止条件の判断がロボット制御装置のに設定されているとすれば、そのうちどの停止条件を選択するかを予め設定しておく。なお、上記（３）の停止条件を選択した場合には、自動停止させる開始点からの移動距離を設定値として設定する必要がある。
【００４３】
さらに、手動動作中の動作速度を設定すると共に、停止条件が成立した後、該停止位置から指定量、指定方向に動作させるか否かを設定し、これを設定した場合には、動作方向の基準となる座標系（ロボットの基準座標系，ワーク座標系，ツール座標系等）を選択設定し、かつ、この選択座標系のＸ，Ｙ，Ｚ軸のいずれかを動作方向として設定し、かつ、その移動距離をも設定する。
【００４４】
以上のように、停止条件、動作速度、停止条件成立後に退避させるか否か、退避させる場合その移動の方向、移動量を設定した後、シフトキー１５と動作方向キー１２又は１３を押し、手動送りを指令すると、ロボット制御装置のプロセッサ１０１は、図１０の処理を開始する。
【００４５】
プロセッサ１０１は、動作方向キー１２，１３で指令された動作方向へ設定されている動作速度で移動する移動指令を出力しロボットを設定動作速度で移動させ（ステップｄ１）、かつ停止条件が成立したか判断し（ステップｄ２）、成立していなければ、シフトキー１５又は動作方向キー１２，１３の押圧が解かれたかを判断し（ステップｄ８）、押圧が解かれてなければ、再び（ステップｄ１に戻り、ステップｄ１、ｄ２、ｄ８の処理を繰り返し実行する。そして、停止条件が成立したことが検出される前に、シフトキー１５又は動作方向キー１２，１３の押圧が解かれると、ロボット動作を停止させる（ステップｄ７）。
【００４６】
又、停止条件が成立したとき、即ち、上記（１）の停止条件が設定されていれば、センサからの接触検知信号が入出力インタフェース１０６に入力されているか、プロセッサ１０１は所定周期毎に判別し、接触検知信号が入力されていることが検出されたとき、このときの位置を記憶すると共に、ロボットの手動送り動作を自動的に停止させる（シフトキー１５及び動作方向キー１２，１３の押圧とは関係なく停止させる）（ステップｄ２，ｄ３）。又、停止条件として、上記（２）の条件が設定されている場合には、プロセッサ１０１は、所定周期毎ロボット各軸のモータにかかる負荷トルク（電流フィードバック値又はトルク指令値、オブザーバでの推定トルク値）がしきい値以上か否かで判断し（ステップｄ２）、いずれかの軸のモータの負荷トルクがしきい値以上になると停止条件成立として、このときの位置を記憶すると共にロボット動作を停止させる（ステップｄ３）。
【００４７】
さらに、上記（３）の停止条件が設定されている場合には、プロセッサ１０１は、ステップｄ１で手動移動を開始してから所定周期毎ロボットの移動量をレジスタに加算し、この加算値が設定値になったか否かで停止条件を判断する。この加算値が設定値以上になると、停止条件成立として（ステップｄ２）、そのときのロボットの位置を記憶すると共にロボットを停止させる（ステップｄ３）。
【００４８】
ロボット制御装置よりロボットを停止させる指令を出力しても、ロボットは堕走して停止するため、記憶した停止条件が成立したときの位置まで、ロボットを移動させ、停止条件が成立した位置に戻す（ステップｄ４）。そして、退避させることが設定されているか否か判断し（ステップｄ５）、退避させることが設定されていれば、設定方向に設定移動量移動させて（ステップｄ６）、ロボットを停止させる（ステップｄ７）。又、退避させることが設定されていなければ、停止条件位置に停止したままロボットを停止させる。
【００４９】
以上が本発明の教示動作を補助する手動送りの実施形態であるが、ロボット制御装置に上述した各姿勢合わせモード、座標系設定モードのいずれか１つを具備させ、又はすべてを具備して、それぞれをソフトキー等で呼び出して実行するようにしながら、停止条件による停止モードを実行する。
【００５０】
以下の実施例では、上述した「１軸による姿勢合せモード」、「座標系による姿勢合せモード」、「ツール可動部材上の座標系設定モード」及び「停止条件による停止モード」をロボット制御装置に格納しておき、ソフトキー１１によって選択して、選択方法の処理を実行するようにしている。
【００５１】
又、ワーク座標系、ツール座標系（「ツール可動部材上の座標系設定モード」における基準ツール座標系）はどのモードでも共通するから機能選択キー１８を操作して座標系の設定を選択し、教示動作を補助する上記４つのモードに対して一括してワーク座標系、ツール座標系を設定する。又、この教示補助動作の手動での動作速度の設定値もどのモードも共通として、予め設定しておいてもよく、又は、各モード毎この手動での動作速度を変える場合には、ソフトキー１１を操作して、各モードの設定を呼出し、それぞれの動作速度を設定する。さらに、「ツール可動部材上の座標系設定モード」においては、基準位置Ｏを設定しておかねばならないが、このような、各モード毎に固有の設定値はそれぞれ各モード設定を呼出して設定しておく。
【００５２】
＜サーボガンへの適用例＞
そこで、スポット溶接を行なうサーボモータ等で可動側チップが駆動されるサーボガンに適用した一実施例について説明する。この実施例においては、ガン開閉方向と作業対象物２１に対する打点面が垂直になるようにサーボガン２０の姿勢を教示する必要がある。又、固定側チップ２０ｂと作業対象物２１との接触位置を教示しなければならない。しかも、一般に行われている車体のスポット溶接においては、パネルの下部が車体の影になって目視困難である場合が多くあり、このような状況下での本発明の教示補助方法を用いて行なう教示について説明する。
【００５３】
まず、図１１（ａ）に示すように、ロボットを手動送りして、サーボガン２０を作業対象物２１の打点近傍に移動させる。次に、サーボガンの開閉方向と作業対象物の打点面が垂直になるように、サーボガンの姿勢を変える必要がある。この場合、３つの方法があり、１つは、上述した、「ツール可動部材上の座標系設定モード」を利用して行なう方法と、「１軸による姿勢合せモード」、「座標系による姿勢合せモード」による方法がある。
【００５４】
そこで、第１の方法として、教示操作盤１０４のソフトキー等を用いて、「ツール可動部材上の座標系設定モード」に切換え、サーボガンの可動側チップ移動させＴＣＰを作業対象物２１にできるだけ近付けた後、ガン開閉方向が作業対象物２１の打点面と垂直になるように回転動作キー１３を選択し、シフトキー１５と選択回転動作キー１３を押せば、ロボット制御装置のプロセッサ１０１は、図７に示す処理を行なって、可動チップ２０ａの先端に設定されたＴＣＰを基準にしてロボットを動作させる（図１１（ｂ）参照）。その結果、サーボガン２０と作業対象物２１が干渉することなく、サーボガン２０の開閉方向が作業対象物２１の打点面に垂直になるようにサーボガン２０の姿勢を手動で移動させることができる。
【００５５】
第２の方法として、「１軸による姿勢合せモード」を利用する場合には、ソフトキー１１によってこの「１軸による姿勢合せモード」を選択した後、姿勢合わせとなるツール座標系Ｔ、ワーク座標系Ｗの軸とその交角θを設定する。図１１（ｃ）の例では、ツール座標系Ｔ及びワーク座標系ＷからそれぞれＺ軸を姿勢合せ軸として選択し、かつ交角θを「０」と設定している（即ち、両座標系のＺ軸を平行の状態にする）。そして、シフトキー１５と姿勢合せキー１９を押すと、ロボット制御装置のプロセッサ１０１は、図３に示す処理を開始し、ツール座標系Ｔ及びワーク座標系Ｗのそれぞれの選択軸であるＺ軸が、設定交角θ（＝０）となるようにロボットが駆動され、サーボガン２０の開閉方向が作業対象物２１の打点面に対して垂直になるように位置決めされる（図１１（ｃ）参照）。
【００５６】
又、「座標系による姿勢合せモード」を選択し、ツール座標系Ｔとワーク座標系Ｗとの相対関係を規定するワーク座標系Ｗの各軸回りの回転角を設定し、シフトキー１５と姿勢合せキー１９を押せば、プロセッサ１０１は図５に示す処理を実行し、図１１（ｃ）に示すようにサーボガン２０の開閉方向が作業対象物２１の打点面に対して垂直になるように位置決めされる。なお、図１１（ｃ）の例では、ワーク座標系Ｗにツール座標系Ｔを合わせればよいから、設定する各軸回りの回転角はすべて「０」となり、図５のステップｂ１で求める変換行列Ｆは単位行列となる。
【００５７】
以上のようにして、サーボガン２０の開閉方向が作業対象物２１の打点面に対して垂直になるように位置決めした後、「停止条件による停止モード」に切換えて、監視する停止条件を選択設定し、又退避は行なわないと設定し、固定側チップが作業対象物２１に接触する方向の動作キー１２を押すと共にシフトキー１５を押せば、ロボット制御装置のプロセッサ１０１は、図１０の処理を実行し、作業対象物２１とツール２０の固定側チップ２０ｂが接触した位置（さらには、設定した方向及び移動量だけ移動した位置）に自動的に停止する。
【００５８】
＜エアガンへの適用例＞
スポット溶接ガンがサーボモータで駆動されるサーボガンではなく、エアの圧力で開閉するエアーガンの場合には、エアーガン２０の開閉方向が作業対象物２１に対する打点面と垂直になると共に、固定側チップ２０ａと作業対象物２１の間隔を指定距離だけ離す必要がある。そのため、エアーガン２０を使用した場合には、上述したサーボガンと同様に、ガンを解放状態にして作業対象物２１の打点付近の適当な位置に手動送りし、「座標系による姿勢合せモード」を選択して、サーボガンと同様に、ガン開閉方向を打点面に対して垂直にし、サーボガンと同様に、「停止条件による停止モード」を選択するが、この場合、サーボガン２０と作業対象物２１が接触した後、所定距離だけ離す必要があるから、退避させるを選択し、その退避方向と退避移動量を設定する。図１２の例では、退避方向をワーク座標系（ツール座標系でもよい）のＺ軸方向とし、目標とする移動量を設定しておく、そうすれば、図１０の処理でステップｄ５、ｄ６によって、作業対象物２１とツール２０の接触後、ツール２０は設定距離だけ離されてロボットは停止することになる。
【００５９】
＜サーボハンドへの適用例＞
図１３はサーボモータで駆動されるハンド２０に対して把持位置姿勢の教示に対して本発明を適用した例の説明図である。  
まず、ハンド２０を開いた状態にして、ロボットを手動動作して作業対象物２１に接近させる（図１３（ａ）参照）。次に、ハンドの挟持面と作業対象物の側面が平行になるようにハンドを回転させる必要があるが、この方法には、「１軸による姿勢合せモード」、「座標系による姿勢合せモード」、「ツール可動部材上の座標系設定モード」を利用する方法がある。
【００６０】
図１３（ｂ）は、「ツール可動部材上の座標系設定モード」を利用する場合の説明図で、まず、ハンドの可動部に設定されているＴＣＰを手動送りで移動させ、できるだけ作業対象物２１に近づける。そして、「ツール可動部材上の座標系設定モード」に切換えて、回転方向を選択し、その方向の回転動作方向キー１３とシフトキー１５を押せば、ロボット制御装置のプロセッサ１０１は、図７に示す処理を行なって、ＴＣＰ中心に回転し、手動でハンド２０の教示側面と作業対象物の側面が平行となるように動作させることができる（図１３（ｂ）参照）。
【００６１】
図１３（ｃ）は、「１軸による姿勢合せモード」又は「座標系による姿勢合せモード」を用いる場合の説明図である。「１軸による姿勢合せモード」を適用する場合には、例えば、ツール座標系Ｔにおけるハンド２０の挟持面と平行な軸（図１３（ｃ）ではＺ軸）とワーク座標系Ｗにおける作業対象物２１の側面と平行な軸（図１３（ｃ）ではＺ軸）を選択しその交角を「０」として、シフトキー１５と姿勢合せキー１９を押せば、プロセッサ１０１が図３の処理を行なって、ハンド２０の教示側面と作業対象物２１の側面が平行となるように動作させることができる。又、「座標系による姿勢合せモード」を用いた場合には、図１３（ｃ）の例においては、ワーク座標系ＷのＸ，Ｙ，Ｚ軸の各軸回りの回転角をすべて「０」と設定し、シフトキー１５と姿勢合せキー１９を押せば、プロセッサ１０１が図５の処理を行なって、ハンド２０の教示側面と作業対象物２１の側面が平行となるように動作させることができる。
【図面の簡単な説明】
【００６２】
【図１】本発明の一実施形態の要部ブロック図である。
【図２】同実施形態におれる教示操作盤の説明図である。
【図３】本発明の実施形態で用いる１軸による姿勢合せ処理のフローチャートである。
【図４】同１軸による姿勢合わせ処理における動作、作用説明図である。
【図５】本発明の実施形態で用いる座標系による姿勢合せ処理のフローチャートである。
【図６】同座標系による姿勢合せ処理における動作、作用説明図である。
【図７】本発明の実施形態で用いるツール可動部材上の座標系設定処理のフローチャートである。
【図８】同ツール可動部材上の座標系設定処理における動作、作用説明図である。
【図９】同ツール可動部材上の座標系設定処理における動作、作用説明図の続きである。
【図１０】本発明の実施形態における自動手動送り停止処理のフローチャートである。
【図１１】本発明の実施形態をスポット溶接を行なうサーボガンに適用したときの説明図である。
【図１２】本発明の実施形態をスポット溶接を行なうエアーガンに適用したときに、ツールが作業対象物に接触した後退避する動作の説明図である。
【図１３】本発明の実施形態を可動部がサーボシステムによって駆動されるハンドに適用したときの動作説明図である。
【符号の説明】
【００６３】
２０  ツール
２１  作業対象物
２０ａ  可動部
２０ｂ  固定部
１０４  教示操作盤
Ｔ  ツール座標系
Ｗ  ワーク座標系
【図１】
2004188594.tif 000006
【図２】
2004188594.tif 000007
【図３】
2004188594.tif 000008
【図４】
2004188594.tif 000009
【図５】
2004188594.tif 000010
【図６】
2004188594.tif 000011
【図７】
2004188594.tif 000012
【図８】
2004188594.tif 000013
【図９】
2004188594.tif 000014
【図１０】
2004188594.tif 000015
【図１１】
2004188594.tif 000016
【図１２】
2004188594.tif 000017
【図１３】
2004188594.tif 000018