(57)【特許請求の範囲】
【請求項１】
ロボットの現在位置を検出する位置検出手段と、
複数のロボットが稼動している作業ステージ上で、他のロボットが作動中で前記ロボットが位置決め停止中に前記位置検出手段が検出している現在位置の教示位置に対するずれ量を検出する位置ずれ検出手段と、
あらかじめ前記ロボットの停止中における位置決め位置と前記位置検出手段が検出した現在位置とを、停止した前記ロボットの周辺で他のロボットが干渉することなく動作している間の時間比較し、その差が最も大きくなった値を許容値として設定し、該設定された許容値と、前記位置ずれ検出手段が検出したずれ量とを比較して、該ずれ量が該許容値を超えた場合に干渉ありと判断する干渉判断手段と、を有し、
前記他のロボットの振動によって現れている現在位置のずれを干渉として検出しないようにし、振動と干渉とを分けて干渉のみを検出することを特徴とするロボットの干渉検出装置。
【請求項２】
前記許容値は、前記ロボットの停止中におけるある位置決め位置で設定された前記許容値を他の位置決め位置での前記許容値として使用することを特徴とする請求項１記載のロボットの干渉検出装置。
【請求項３】
前記停止しているロボットは、ワークを所定の位置に位置決めしておく位置決めロボットであることを特徴とする請求項１記載のロボットの干渉検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ロボットの干渉検出装置に関する。
【０００２】
【従来の技術】
産業ロボットは様々な生産工場において用いられており、例えば、自動車生産工場は、その代表的なものである。
【０００３】
中でも、自動車車体の組み立て工場では、メインボディーに対して、フロア面、左右側面、ルーフ面など溶接する工程があり、これらすべての工程で様々なロボットが利用されている。例えば、メインボディーや各種取り付けパネル部品を搬送する搬送ロボット、搬送されたパネル部品などを所定の位置に位置決めする位置決めロボット、そして、メインボディーに対しパネル部品を溶接する溶接ロボットなどが、一つの作業ステージ内で数多く稼働している。このような作業ステージでは、搬送ロボットや位置決めロボットの間を縫って溶接ロボットが動き、ボディーへの部品の溶接作業を行っている。
【０００４】
ところで、複数のロボットを同一領域で動作させる場合に注意しなければならないことの一つに、ロボット同士、あるいはロボットとワークや周辺構造物との干渉の問題がある。ロボットの稼動数がさほど多くなかった時代では、作業者が目視により干渉のチェックを行って、干渉しないようなロボットの動作軌跡を教示していた。しかし、現在では、一つの作業ステージだけでも、数台から数十台のロボットが協調して動作しており、さらにこのような作業ステージが連続したラインでは、ロボットの数も数十台から百台に近い数となり、可動軸総数にいたっては数百軸を超えるようになっているため、作業者の目視によるだけでは、干渉のチェックに多くの時間と工数が掛かっている状況である。
【０００５】
このため、ロボットの干渉検出のために各種技術が開発されている。例えば実開昭６２−１４７４８７号公報には、動作中のロボット同士が衝突するのを防止するために、ロボットの位置偏差が許容値を越えたときに干渉ありとする技術が開示されている。
【０００６】
また、実開平３−２９２７８号公報には、ロボット同士の衝突を防止するために、ロボットに教示した位置データと実際の動作フィードバックデータの偏差を監視して、この偏差の値が所定の許容値以上となった場合に干渉ありとする技術が開示されている。
【０００７】
また、例えば特開平７−１５２４１３号公報には、ロボット各軸の速度フィードバックデータ、負荷電流値、位置変化を監視して、これらいずれかに所定値以上の変動があった場合に、干渉ありとする技術が開示されている。
【０００８】
また、例えば特開平７−１４５１６号公報には、直接実際のロボットの干渉をチェックするのではなく、ロボットの教示データ作成時に、ロボットの動きをコンピュータを用いたシミュレーションによって検証することで、ロボットが干渉せずに動作することのできる教示データを作成する技術が開示されている。
【０００９】
【発明が解決しようとする課題】
しかしながら、上記実開昭６２−１４７４８７号公報の技術では、動作中のロボットにおける位置偏差を検出しているため、速度に応じて指令位置に対する適切な許容偏差値が異なり、そのため、速度条件から許容偏差値を変更する必要があり、また、許容偏差値を変更設定する際の精度にも限界があるため、ケーブル類の接触など、ごくわずかな干渉は検出することができないという問題がある。
【００１０】
また、実開平３−２９２７８号公報の技術でも、同様に動作中のロボット本体の干渉検出を対象としたものであるため、ロボットの動作速度によって干渉していないときの位置指令値に対する検出位置のずれ量が変化し、そのため速度に応じて許容値を変更する必要があり、その許容値の精度にも限度がある。そのため、干渉の度合いが比較的大きい場合しか検出することができず、例えばロボットに接続されているケーブル同士が接触するようなわずかな干渉を検出することが難しいといった問題がある。また、特開平７−１５２４１３号公報においても動作中のロボットの速度変化や負荷電流値、位置などの変化から干渉を検出しているため、これらの変化の許容値の精度上の限界から、ケーブル類の接触のようなごくわずかな干渉は検出しづらい。
【００１１】
さらに、特開平７−１４５１６号公報の技術のように、シミュレーションによって複数のロボットの動作状態を検証しても、各ロボットのケーブル類の動きまで検証することはできていないのが現状である。
【００１２】
このようなわずかな接触による干渉は、ワークを搬送して位置決めする位置決めロボットなどに対し、溶接ロボットが動作した際にケーブルが接触するような場合に特に問題となる。例えば、位置決めロボットは、直接ワークを把持または支持しているため、わずかな接触であっても、そのために起きた振動などによってワークに傷をつけたり、ワークの位置決め位置にずれが生じたりといった問題を起こしかねない。また、ケーブルなどの接触は、なかなか検出されないため、長い間そのまま同じ部分ばかりが接触していることが多く、その部分が擦り切れて、最悪の場合断線などの障害を引き起こすこともある。
【００１３】
そこで本発明の目的は、複数のロボットが稼動している作業ステージ上において、ロボットに接続されているケーブル類が接触するようなごくわずかな干渉をチェックすることができる干渉検出装置を提供することである。
【００１４】
【課題を解決するための手段】
本発明の目的は、以下の構成により達成される。
【００１５】
（１）ロボットの現在位置を検出する位置検出手段と、複数のロボットが稼動している作業ステージ上で、他のロボットが作動中で前記ロボットが位置決め停止中に前記位置検出手段が検出している現在位置の教示位置に対するずれ量を検出する位置ずれ検出手段と、あらかじめ前記ロボットの停止中における位置決め位置と前記位置検出手段が検出した現在位置とを、停止した前記ロボットの周辺で他のロボットが干渉することなく動作している間の時間比較し、その差が最も大きくなった値を許容値として設定し、該設定された許容値と、前記位置ずれ検出手段が検出したずれ量とを比較して、該ずれ量が該許容値を超えた場合に干渉ありと判断する干渉判断手段と、を有し、前記他のロボットの振動によって現れている現在位置のずれを干渉として検出しないようにし、振動と干渉とを分けて干渉のみを検出することを特徴とするロボットの干渉検出装置。
【００１６】
（２）前記許容値は、前記ロボットの停止中におけるある位置決め位置で設定された前記許容値を他の位置決め位置での前記許容値として使用することを特徴とする請求項１記載のロボットの干渉検出装置。
【００１８】
（３）前記停止しているロボットは、ワークを所定の位置に位置決めしておく位置決めロボットであることを特徴とする。
【００１９】
【発明の効果】
本発明は請求項ごとに以下のような効果を奏する。
【００２０】
請求項１記載の本発明によれば、干渉の検出を行うロボットは、複数のロボットが稼動している作業ステージ上で、他のロボットが作動中に停止しているロボットであり、このロボットが位置決め位置で停止中にその現在位置を取得し、現在位置の位置決め位置に対するずれ量があらかじめ設定された許容値と比較して、許容値を越えた場合に、干渉があるものと判断することとしたので、停止中のロボットは、指令位置に対する検出位置の最大変動幅がどの位置でもほぼ一定であるので、他のロボットや作業機械、あるいはこれらのケーブル類が接触したようなごくわずかな干渉を確実に検出することができる。しかも、あらかじめ設定された許容値は、前記ロボットの停止中における位置決め位置と前記位置検出手段が検出した現在位置とを、停止した前記ロボットの周辺で他のロボットが干渉することなく動作している間の時間比較し、その差が最も大きくなった値を許容値として設定したものであるから、停止中のロボットに振動などによって現れている現在位置のずれを干渉として検出しないようにし、干渉と振動現象とを分けて、確実に干渉のみを検出することができる。特に、動いているロボットが停止中のロボットに接触するような干渉を検出することができる。
【００２１】
請求項２記載の本発明によれば、ある位置決め位置で設定された前記許容値を他の位置決め位置での許容値として使用することとしたので、ロボットの位置決めや動作させたときの速度変化などに依存せずに、一つの許容値を用いることができる。
【００２３】
請求項３記載の本発明は、干渉検出の対象とするロボットを、ワークを所定の位置に位置決めしておく位置決めロボットとしたので、通常の作業において停止している位置決めロボットに、動いているロボットが接触するような干渉を検出することができる。
【００２４】
【発明の実施の形態】
以下添付した図面を参照して本発明の一実施の形態を説明する。
【００２５】
図１は、本発明を適用したロボットの干渉検出装置の構成を示すブロック図である。
【００２６】
このロボットの干渉検出装置１（以下単に干渉検出装置と称する）は、本干渉検出装置１が接続されている制御装置によって動作させているロボットが位置決め位置で停止した状態のときに、他に動作しているロボットやそのケーブルなどが接触した場合に、これを干渉として検出するものである。
【００２７】
この干渉検出装置１は、ロボットの制御装置５０に接続されていて、その構成は、ロボットの現在位置を算出するための現在位置算出部１１と、許容値であるずれ許容値を設定するずれ許容値設定部１２と、設定されたずれ許容値を記憶するずれ許容値格納部１３と、教示位置に対する現在位置のずれ量を検出するずれ量検出部１４と、ずれ許容値と現在位置のずれ量から干渉を検出する干渉検出部１５と、干渉検出の結果を出力する検出結果出力部１６と、結果を表示する表示部１７とからなる。
【００２８】
ロボットの制御装置５０は、通常のものであり、位置決め位置や動作軌跡などの教示データを格納している教示データ格納部５１と、教示データに従って位置指令値を出力する位置指令部５２と、位置指令値をロボットのモータ駆動アンプ５４に伝えるためのアンプインターフェース（Ｉ／Ｆ）５３と、位置指令値に従ってロボットのモータ５６を駆動するモータ駆動アンプ５４と、モータの回転位置を検出するエンコーダ５７とからなる。
【００２９】
ここでまず、ロボットの制御動作の概略について説明する。
【００３０】
まず、教示データ格納部５１に格納されている教示データが位置指令部５２により読み出される。位置指令部５２では、教示データによる位置決め位置までロボットの軸を動作させるためのモータ回転量を指令するパルス数を算出する。算出された指令パルス数は、アンプＩ／Ｆ５３を通してモータ駆動アンプ５４に出力される。モータ駆動アンプ５４ではエンコーダ５７から出力されるパルス数をカウントして、指令されたモータ回転パルス数と、エンコーダ５７の出力パルス数が一致するまで、モータ５６を駆動する。これにより、教示データに基づいてロボットの軸が移動する。
【００３１】
なお、図１では、ロボットの一つの軸を作動させている一つのモータについて示したが、多軸ロボットの場合でも各軸毎に制御されているものであるため、その制御動作は同じである。また、このようなロボットの動作制御自体は通常のものと同様であるので詳細な説明は省略する。
【００３２】
次に干渉検出装置１の動作を説明する。
【００３３】
干渉検出装置１は、上記のようにしてロボットの動作を制御している制御装置５０に接続されていて、位置指令部５２から位置指令に用いた教示データの指令位置データを取得し、アンプＩ／Ｆ５３を通してエンコーダ５７の出力を取得する。位置データは直接ずれ量検出部１４に入力され、一方、エンコーダ５７から得られたパルス信号は、一旦現在位置算出部１１によって現在位置データに変換された後、ずれ量検出部１４に入力される。ここで、現在位置算出部１１は、用いているエンコータ５７の種類にもよるが、ここでは、モータの回転にともなって発せられたパルスと、そのときの回転方向を示す信号のみであるため、このパルス数を積算することにより現在位置を求めている。
【００３４】
ずれ量検出部１４では、入力された指令位置データと現在位置データを比較して指令位置に対する現在位置のずれ量を検出する。このずれ量は、他のロボットとの干渉がなければ、通常、ロボットが停止した状態の場合、一定の許容範囲内である。
【００３５】
そして、干渉検出部１５では、ずれ量検出部１４が検出したずれ量と、ずれ許容値を比較して、ずれ量が許容範囲から外れた場合に何らかの干渉があるものと判断する。
【００３６】
一方、ずれ量許容値設定部１２は、干渉の有無を判断するための基準値となるずれ許容値の設定を行っており、ここでは、停止状態で、かつ干渉のない所定時間の間に、エンコーダの値を取り込みその中での最大位置変化量をずれ許容値として設定している。設定されたずれ許容値は、ずれ許容値格納部１３に格納される。
【００３７】
ここで、ずれ許容値の設定について説明する。通常、ロボットの各軸は、位置決め位置に到達した時点で教示された内容に従い停止する。例えばワークを所定の位置に位置決めする位置決めロボットでは、ワークを把持（または単に下から支持）した状態で、所定位置に位置決めされて停止する。この状態で見た目には停止しており、作業にはまったく支障がなのであるが、各軸のモータに設けられているエンコーダの値は、微小な触れを示すことがある。これは、例えば作業ステージ上おける他のロボットの動きなどによって起こる振動などが原因であり、干渉がない状態でも発生する。このような停止状態で記録されるずれ量は、エンコーダの検出精度やロボットの組み付け精度、重量などによって異なるが、多い場合には、１／４０回転程度記録されることがある。
【００３８】
そこで、本実施の形態では、先に説明したように、所定時間、例えば停止したロボットの周辺で、他のロボットが干渉することなく動作している間の時間などの間に、この停止状態におけるエンコーダの位置変化を取り込んで、そのときの指令位置に対する変化の最大値をずれ許容値としている。なお、この停止中におけるロボットのずれ量は、指令位置に対する検出位置の最大変動幅がどの位置でもほぼ一定であるため、位置決め位置がどのような地点であってもほぼ同じ値となる。したがって、ある位置決め位置で、許容値を設定すれば、その他の位置決め位置においてもその許容値を使用することができる。すなわち、ロボットの位置決めや動作させたときの速度変化などに依存せずに、一つの許容値を用いることができる。
【００３９】
一方、干渉があった場合のずれ量は、ロボット本体同士ではなく、ケーブル類の接触のようなごくわずかな干渉であっても、停止したロボットにおいては、ロボットの軸そのものが少なからず移動するため、干渉がない状態で記録される位置ずれ量より大きな値となる。したがって、単なる振動によるずれ量の最大値を許容値とすることで、それより大きなずれがあればこれを干渉として検出することができるのである。
【００４０】
次に、図２を参照して、ずれ許容値の設定と、干渉検出動作の手順を説明する。
【００４１】
まず、ずれ許容値の設定処理について説明する。
【００４２】
まず、位置ずれ許容値の設定モードか否かを判断する（Ｓ１）。ここでずれ許容値の設定モードが選択されると、続いて、ずれ許容値設定部１２が、ロボットが停止した状態で、モータ５６の現在値を読み出す（Ｓ１１）。
【００４３】
そして、読み出した現在値から位置指令部５２が出力した指令値を引くことにより、停止状態におけるロボットの位置ずれ量を算出する（Ｓ１２）。
【００４４】
続いて、算出したずれ量がこれまでに記録しているずれ最大値を越えたか否かを判断する（Ｓ１３）。ここで、算出したずれ量がずれ最大値を越えている場合には算出したずれ量をずれ最大値に記録して（Ｓ１４）、ステップＳ１５へ進む。一方、算出したずれ量がずれ最大値を越えていなければ、そのままステップＳ１５へ進む。
【００４５】
続いて、所定時間が経過したか否かを判断し（Ｓ１５）、所定時間が経過していなければ、ステップＳ１１へ戻り、以降所定時間が経過するまで、ステップＳ１１〜Ｓ１５までを繰り返し実行する。一方、ここで、所定時間が経過したなら、ずれ最大値を許容値としてずれ許容値格納部１３へ格納して許容値を更新し（Ｓ１６）、処理を終了する。
【００４６】
なお、ここで、許容値を設定するための所定時間は、例えば、ロボットが位置決め位置で停止した後、次に動き出すまでの時間、また、位置決め位置で停止した後、周辺で接触する可能性のあるロボットが動き出すまでの時間などとするなど、ロボットが停止していて（動作指令が発せられていないこと）、他のロボットとの干渉が発生しない時間であればよい。
【００４７】
次に、干渉検出処理について説明する。
【００４８】
まず、ずれ許容値の設定モードか否かを判断し（Ｓ１）、ここで位置ずれ許容値の設定モードではないことが選択されることで、干渉検出モードとなる。干渉モードでは、続いて、ロボットが停止状態（動作指令が発せられていないこと）であるか否かを判断する（Ｓ２）。ここで、ロボットが停止していなければそのまま処理を終了する。
【００４９】
続いて、ずれ量検出部１４が、ロボットが停止した状態において、モータ５６の現在値を読み出す（Ｓ３）。
【００５０】
そして、読み出した現在値から位置指令部５２が出力した指令値を引くことにより、停止状態におけるロボットの位置ずれ量を算出する（Ｓ４）。
【００５１】
続いて、算出したずれ量が干渉検出部１５へ送られて、算出したずれ量が許容値を超えているか否かを判断する（Ｓ５）。ここで、ずれ量が許容値を越えている場合には、検出結果出力部１６へその旨を伝えて、表示部１７から異常表示を行なって（Ｓ６）、処理を終了する。一方、ずれ量が許容値を越えていなければ、そのまま、ステップＳ２へ戻り、ロボットが動き出すまで干渉検出が行われる。
【００５２】
以上のように本実施形態では、あらかじめ停止状態において、振動などによって生じる位置ずれから許容値を設定し、位置決め位置などで停止した状態での干渉をチェックすることとしているので、単なる周囲の振動などで起こる位置ずれと、他のロボットのケーブル類が接触したような微小な干渉とを区別して、ごくわずかな干渉であっても確実に検出することができる。
【００５３】
したがって、本実施の形態は、例えば、ワークなどを把持または支持して、ワークを所定の位置に位置決めして停止しているような位置決めロボットが、溶接ロボットなど比較的動きの大きなロボットによって干渉されるような場合、特に溶接ロボットのケーブルなどがわずかに触れるような干渉を検出するに好適である。
【図面の簡単な説明】
【図１】  本発明を適用した一実施の形態にかかる干渉検出装置の構成を示すブロック図である。
【図２】  上記干渉検出装置の処理手順を示すフローチャートである。
【符号の説明】
１…干渉検査装置、
１１…現在位置算出部、
１２…ずれ許容値設定部、
１３…ずれ許容値格納部、
１４…ずれ量検出部、
１５…干渉検出部、
１６…検出結果出力部、
１７…表示部。
【図１】
0003855629.tif 000002
【図２】
0003855629.tif 000003