(57)【特許請求の範囲】
【請求項１】
同時に動作する複数のロボットであって、前記複数のロボット毎に、制御手段から出力される動作指令によって２つの目標位置間で往復移動する複数のロボットの干渉回避方法において、
前記複数のロボット毎に、
自身の前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での占有領域を求め、且つ他のロボットとの通信によって当該他のロボットの前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での当該他のロボットの占有領域を求めたとき、自身の前記占有領域が前記他のロボットの前記占有領域と重なり合う干渉領域が存在した場合には、前記他のロボットとの通信によって当該他のロボットが前記干渉領域内に進入したことを検出したとき、前記自身の占有領域の内側であって前記干渉領域へ進入する前で動作を停止し、前記自身の占有領域から前記他のロボットが退出したとき、前記自身の目標位置へ移動する動作を再開するようにし、
自身の前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での占有領域を求め、且つ他のロボットとの通信によって当該他のロボットの前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での当該他のロボットの占有領域を求めたとき、前記干渉領域が存在しない場合には、前記他のロボットとの通信によって当該他のロボットが前記自身の占有領域内に位置していることを検出したとき、前記自身の占有領域へ進入する前で動作を停止し、前記他のロボットが前記自身の占有領域から退出したとき、前記自身の占有領域へ進入する動作を再開するようにした
ことを特徴とするロボットの干渉回避方法。
【請求項２】
ロボット本体と、
このロボット本体に２つの目標位置間で往復移動するように動作指令を発すると共に、前記ロボット本体が前記動作指令通りの動作を行うように制御する制御手段と、
前記ロボット本体が前記動作指令によって移動する前記２つの目標位置での当該ロボット本体の占有領域を定める占有領域設定手段と、
他のロボットと通信して当該他のロボットの移動に関する情報を取得する通信手段と、
前記占有領域設定手段により取得した前記占有領域と前記通信手段によって取得した情報に基づく前記他のロボットの前記占有領域とが重なる領域を干渉領域として定める干渉領域設定手段と、
前記干渉領域設定手段によって定められた前記干渉領域が存在し、且つ前記通信手段によって取得した情報に基づく前記他のロボットの現在位置が前記干渉領域内にあるとき、前記ロボット本体を自身の前記占有領域の内側であって前記干渉領域に進入する前で停止させ、前記干渉領域設定手段によって定められた前記干渉領域がなく、且つ前記通信手段によって取得した情報に基づく前記他のロボットの現在位置が前記ロボット本体の前記占有領域内にあるとき、前記ロボット本体を自身の占有領域に進入する前で停止させる停止手段と
を具備してなるロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のロボットが同時に動作する場合の互いの干渉を回避するためのロボットの干渉回避方法およびロボットに関する。
【背景技術】
【０００２】
特許文献１には、複数のロボットが同時に動作する場合の干渉を回避する方法が開示されている。この方法は、図９に示すように、２台のロボットＲＡ，ＲＢが同時に動作する場合に、それらロボットＲＡ，ＲＢの各々が、動作指令によって移動する目標位置ＰＡ，ＰＢに移動するとき、それらの目標位置ＰＡ，ＰＢにおける占有領域ＭＡ，ＭＢを求め、互いの占有領域を通信によって記憶しておく。そして、ロボットＲＡ，ＲＢの占有領域ＭＡ，ＭＢが互いに重なる部分を有する場合、ロボットＲＡ，ＲＢのうちの一方のロボットが先に自身の占有領域に移動すると、他方のロボットは、自身の占有領域に入る手前で停止する、という構成である。
【特許文献１】特許第２８９５６７２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記構成では、２台のロボットのうち、一方のロボットが先に自身の占有領域に入ると、他方のロボットは、自身の占有領域に入ることなく、その時点で停止し、一方のロボットが自身の占有領域から退出した後で占有領域への進入動作を再開する。図９の例では、一方のロボットＲＡが先に自身の占有領域ＭＡに進入した状態を示しており、他方のロボットＲＢは、その時点で、自身の占有領域ＭＢに入ることなく停止する。そして、一方のロボットＲＡが自身の占有領域ＭＡから退出すると、他方のロボットＲＢが自身の占有領域ＭＢに進入する動作を再開するのである。
【０００４】
しかしながら、この構成では、後から自身の占有領域に侵入するロボットは、先に自身の占有領域に侵入したロボットが退出した後でしか自身の占有領域への進入動作を開始しない。このため、２台のロボットは、それらの占有領域が重なる領域（干渉領域）に同時に入らなければ干渉する事態は生じないにもかかわらず、後から自身の占有領域に向って移動するロボットは、自身の占有領域の外側で待機しなければならず、一連の動作を完了するに要する時間が長くなる。
【０００５】
本発明は上記の事情に鑑みてなされたもので、その目的は、同時に動作する複数のロボットにおいて、それらのロボットが干渉を回避するために待機する場合、できるだけ目標位置近くで待機して干渉の恐れがなくなったときに短時間で目標位置に到着することができるロボットの干渉回避方法およびロボットを提供することにある。
【課題を解決するための手段】
【０００６】
請求項１の発明は、同時に動作する複数のロボットであって、前記複数のロボット毎に、制御手段から出力される動作指令によって２つの目標位置間で往復移動する複数のロボットの干渉回避方法において、前記複数のロボット毎に、自身の前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での占有領域を求め、且つ他のロボットとの通信によって当該他のロボットの前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での当該他のロボットの占有領域を求めたとき、自身の前記占有領域が前記他のロボットの前記占有領域と重なり合う干渉領域が存在した場合には、前記他のロボットとの通信によって当該他のロボットが前記干渉領域内に進入したことを検出したとき、前記自身の占有領域の内側であって前記干渉領域へ進入する前で動作を停止し、前記自身の占有領域から前記他のロボットが退出したとき、前記自身の目標位置へ移動する動作を再開するようにし、自身の前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での占有領域を求め、且つ他のロボットとの通信によって当該他のロボットの前記２つの目標位置のうち、前記制御手段から出力された動作指令によって移動する目標位置での当該他のロボットの占有領域を求めたとき、前記干渉領域が存在しない場合には、前記他のロボットとの通信によって当該他のロボットが前記自身の占有領域内に位置していることを検出したとき、前記自身の占有領域へ進入する前で動作を停止し、前記他のロボットが前記自身の占有領域から退出したとき、前記自身の占有領域へ進入する動作を再開するようにしたことを特徴とするロボットの干渉回避方法にある。
【０００７】
請求項２の発明は、ロボット本体と、このロボット本体に２つの目標位置間で往復移動するように動作指令を発すると共に、前記ロボット本体が前記動作指令通りの動作を行うように制御する制御手段と、前記ロボット本体が前記動作指令によって移動する前記２つの目標位置での当該ロボット本体の占有領域を定める占有領域設定手段と、他のロボットと通信して当該他のロボットの移動に関する情報を取得する通信手段と、前記占有領域設定手段により取得した前記占有領域と前記通信手段によって取得した情報に基づく前記他のロボットの前記占有領域とが重なる領域を干渉領域として定める干渉領域設定手段と、前記干渉領域設定手段によって定められた前記干渉領域が存在し、且つ前記通信手段によって取得した情報に基づく前記他のロボットの現在位置が前記干渉領域内にあるとき、前記ロボット本体を自身の前記占有領域の内側であって前記干渉領域に進入する前で停止させ、前記干渉領域設定手段によって定められた前記干渉領域がなく、且つ前記通信手段によって取得した情報に基づく前記他のロボットの現在位置が前記ロボット本体の前記占有領域内にあるとき、前記ロボット本体を自身の占有領域に進入する前で停止させる停止手段とを具備してなるロボットにある。
【０００８】
上記構成の本発明によれば、複数のロボットは、それぞれの目標位置での占有領域が互いに重なる場合、その重なり合う干渉領域にいずれかのロボットが進入したとき、他のロボットは、その干渉領域に進入する直前で停止する。このように、他のロボットは、自身の占有領域への進入は許容されるので、自身の占有領域の外側で待機する構成に比べ、寄り目標位置の近くで待機でき、その後に動作再開となった場合に、目標位置に早く到着することができる。
【発明を実施するための最良の形態】
【０００９】
以下、本発明の一実施形態を図１ないし図８に基づいて説明する。この実施形態では、図８に示すように、２台のロボット１，２が互いに接近して配置され、それら２台のロボットのうち、第１のロボット１が前工程作業を行い、第２のロボット２が後工程作業を行うものとする。そして、第１のロボット１は、作業台３で前工程作業を行い、その作業終了後、作業対象物であるワーク４をパレット５に収納し、第２のロボット２は、パレット５からワーク４を把持して作業台６にて次工程作業を行うものとする。このような２台のロボット１，２において、それらの作業領域Ｅ１，Ｅ２は、その一部領域、この実施形態ではパレット５部分において互いに重なり合っている。この重なり合う領域は、２台のロボット１，２の共有領域Ｂである。
【００１０】
第１および第２のロボット１および２は同一構成のもので、図４に示すように、ロボット本体７、制御装置８およびティーチングペンダント９からなる。ロボット本体７は、例えば６軸の垂直多関節型のもので、床に固定されたベース１０と、このベース１０に水平方向に旋回可能に支持されたショルダ部１１と、このショルダ部１１に上下方向に旋回可能に支持された下アーム１２と、この下アーム１２に上下方向に旋回可能に支持された第１の上アーム１３と、この第１の上アーム１３の先端部に捻り回転可能に支持された第２の上アーム１４と、この第２の上アーム１４に上下方向に回転可能に支持された手首１５と、この手首１５に回転（捻り動作）可能に支持されたフランジ１６とから構成されている。上記のベース１０を含め、ショルダ部１１、下アーム１２、第１の上アーム１３、第２の上アーム１４、手首１５、フランジ１６は、ロボットにおけるリンクとして機能する。そして、ワーク４を把持するハンド１７（図１、図２、図８参照）は、最先端のリンクであるフランジ１６に取り付けられている。
【００１１】
一方、前記制御装置８は、図７に示すように、制御手段としてのＣＰＵ１８、駆動回路１９、位置検出手段としての位置検出回路２０を備えている。そして、上記ＣＰＵ１８には、記憶手段として、ロボット全体のシステムプログラムおよび動作プログラムを作成するためのロボット言語などを記憶するＲＯＭ２１と、垂直多関節型ロボット２の動作プログラムなどを記憶するＲＡＭ２２とが接続されていると共に、ティーチング作業を行なう際に使用する前記ティーチングペンダント９および他のロボットと通信して当該他のロボットの現在位置情報などを取得する通信手段としての通信回路２３が接続されている。
【００１２】
上記位置検出回路２０は、ベース１０を除く各リンク１１〜１６の位置を検出するためのもので、この位置検出回路２０には、各リンク１１〜１６の駆動源であるモータ２４に設けられた位置センサとしてのロータリエンコーダ２５が接続されている。上記位置検出回路２０は、ロータリエンコーダ２５の検出信号によってベース１０に対するショルダ部１１の回転角度、ショルダ部１１に対する下アーム１２の回転角度、下アーム１２に対する第１の上アーム１３の回転角度、第１の上アーム１３に対する第２の上アーム１４の回転角度、第２の上アーム１４に対する手首１５の回転角度、および手首１５に対するフランジ１６の回転角度を検出し、その位置検出情報はＣＰＵ１８に与えられる。
【００１３】
そして、ＣＰＵ１８は、動作プログラムに基づいてショルダ部１１、各アーム１２〜１４、手首１５およびフランジ１６を動作させる際、位置検出回路２０からの入力信号をフィードバック信号としてそれらの動作を制御するようになっている。なお、図４では、モータ２４およびロータリエンコーダ２５は１個のみ示すが、実際には、ベース１０を除く各リンク１１〜１６に対して一対一の関係で複数設けられているものである。
【００１４】
各モータ２４は、ベース１０を除く各リンク１１〜１６の駆動源であると共に、回生制動、或いは逆転トルク制動（逆転トルクを発生して制動する。）によって各リンク１１〜１６を制動する制動手段としても機能する。そして、各リンク１１〜１６の質量が既知であり、またモータ２４の回転速度から所望時点での各リンク１１〜１６の速度を検出可能であることから、所望時点で制動の開始から停止までの間にハンド１７が移動する距離（以下、ハンド１７の制動距離Ｓという。）を演算することができるようになっている。
【００１５】
ここで、各リンク１１〜１６には、それぞれ３次元の座標が固定されている。このうち、床面に据え付けられるベース１０の座標系は不動である。この不動のベース１０の座標系は、垂直多関節型ロボット２の基準座標とされるものであり、他の座標系は各回転関節の回転によって基準座標上での位置と向きが変化する。そして、制御装置８（ＣＰＵ１８）は、位置検出回路２０から入力されるショルダ部１１、各アーム１２〜１４、手首１５およびフランジ１６の各回転関節の位置検出情報と予め記憶されている各関節の長さ情報に基づいて、各関節の座標の位置と向きを、座標変換の演算機能により基準座標上での位置と向きに変換して認識することができるようになっている。
【００１６】
さて、上記各関節の座標系のうち、フランジ１６の座標系は、図５に示すように、フランジ１６の先端面の回転中心Ｐ0 を原点とし、フランジ１１の先端面上で２つの座標軸、フランジ１６の回転軸上で１つの座標軸が定められている。これら３つの座標軸Ｘf ，Ｙf ，Ｚf の方向は使用者において自由に設定できるようになっている。この実施例では、図５に示すように、Ｘf およびＹf の２軸はフランジ１６の先端面上に存在し、残るＺf 軸はフランジ１６の回転軸上に存在するように定められているものとする。
【００１７】
そして、ロボットの姿勢、すなわちロボットアームの先端のフランジ１６の姿勢は、図５に示すように、フランジ１６の座標系の原点Ｐ0からＺf 軸に沿ってその負方向に突出する単位長さ「１」のアプローチベクトルＡと、原点Ｐ0 からＸf 軸に沿ってその正方向に突出する単位長さ「１」のオリエントベクトルＯを設定し、フランジ１６の座標系をその原点Ｐ0 が基準座標系の原点に合致するように平行移動させたとき、その基準座標系上でのアプローチベクトルＡとオリエントベクトルＯで表すようにしている。
【００１８】
このフランジ１６に取り付けられた前記ハンド１７は、把持したワーク４をパレット５内に収納する場合、およびパレット５からワーク４を取り出す場合、鉛直下向きとなってワーク４の把持を解いたり、ワーク４を把持したりする。このため、パレット５近くでは、ロボット１，２は、ハンド１７を垂直下向きにして作業を行うようになっており、このときフランジ１６は、先端面が水平となるようにアプローチベクトルＡを鉛直下向きにした状態となる。
【００１９】
さて、本実施形態では、パレット５近くでハンド１７を鉛直下向きとするような姿勢をとるロボット１，２において、それぞれの先端であるハンド１７部分に占有領域Ｍを設定する。この占有領域Ｍは、共有領域Ｂ内に２台のロボット１，２が進入しても、当該占有領域Ｍ内に相手のロボットが進入しなければ互いに干渉しないような領域として定める。本実施形態では、ロボット１，２の占有領域Ｍを、図６に示すように、フランジ１６のＺｆ軸を中心軸とし、直径ｒが手首１５を支持する第２の上アーム１４の先端部分における左右方向の最大幅寸法或いはこれよりもやや長い寸法の円筒形領域に定めるものとする。この占有領域Ｍは、記憶手段としてＲＡＭ２２に記憶させてある。
【００２０】
ロボット１，２に、ロボット本体７が行う作業内容を記憶させるためのティーチングは、ティーチングペンダント９を用いてハンド１７を所望する複数の経由点に移動させ且つ各経由点でハンド１７に所望の姿勢を取らせることによって行われる。ティーチングによって定められたハンド１７の経由点とハンド１７の姿勢、即ちフランジ１６の経由点の基準座標上の位置と姿勢、およびフランジ１６にその経由点と姿勢を取らせるための各リンク１１〜１６の基準座標上の位置と姿勢は、制御装置８のＲＡＭ２２に記憶される。本実施形態でのティーチングは、各ロボット１，２について作業台３，６での作業、作業台３，６とパレット５との間でのワーク４の搬送作業である。
【００２１】
さて、２台のロボット１，２に前工程作業および後工程作業を行わせるためにティーチングした作業を実行させると、各制御装置８のＣＰＵ１８は、各モータ２４に目標位置へ移動する動作指令を出力し、当該目標位置に到着すると次の目標位置へ移動する動作指令を出力することを繰り返す。本実施形態では、第１のロボット１は、作業台３とパレット５とを目標位置とし、第２のロボット２は、パレット５と作業台６とを目標位置として、その目標位置間で繰り返し往復移動動作を行う。なお、目標位置間で各ロボット１，２が移動する動作は、ティーチングされた経由位置を通る移動動作となる。
【００２２】
以上のような両ロボット１，２にあっては、第１のロボット１がパレット５にワーク４を収納し、第２のロボット２がパレット５からワーク４を取り出すとき、場合によっては両ロボット１，２が同時に共有領域Ｂ内に進入し、干渉し合う可能性がでてくる。本実施形態では、各ロボット１，２が有する干渉回避機能によって２台のロボット１，２が同時に共有領域Ｂ内に進入しても、干渉回避機能によって互いに干渉し合うことを回避する。この干渉回避機能について、図３のフローチャートをも参照しながら説明する。
【００２３】
各ロボット１，２において、その制御装置８のＣＰＵ１８は、各モータ２４に目標位置へ移動する動作指令を出力する（ステップＳ１）と共に、その目標位置においてアプローチベクトルＡを鉛直方向を向けた状態での占有領域Ｍを設定（標準座標上で）してこれをＲＡＭ２２に記憶し（ステップＳ２：占有領域設定手段）、目標位置へ移動する動作を開始させる（ステップＳ３）。そして、各ロボット１，２は、通信回路２３を介して目標位置と当該目標位置での占有領域Ｍとを互いに通知する。また、各ロボット１，２は、自身の位置を逐次通信回路２３を介して互いに通知するようにもなっている。
【００２４】
目標位置への移動動作を開始させると、ＣＰＵ１８は、占有領域Ｍが他のロボットの占有領域Ｍと重なるか否かを判断する（ステップＳ４：干渉領域発生判断手段）。例えば、第１のロボット１の目標位置がパレット５で、第２のロボット２の目標位置が作業台６であるような場合には、両ロボット１，２の占有領域Ｍ１，Ｍ２は重ならず、ＣＰＵ１８は、ステップＳ４では「ＮＯ」と判断する。また、両ロボット１，２の目標位置が共にパレット５である場合には、それらの占有領域が重なる部分（干渉領域）ができる。
【００２５】
（占有領域が重ならない場合）
両ロボット１，２の占有領域Ｍ１，Ｍ２が重ならない場合、各ロボット１，２のＣＰＵ１８は、ステップＳ４で「ＮＯ」と判断し、ステップＳ５に移行する。ステップＳ５では、ＣＰＵ１８は、現在位置、各リンク１１〜１６の質量と現在速度とから、現時点で制動を開始したと仮定したとき、その停止位置が自身の占有領域Ｍ内であるか否かを判断する。制動停止位置が占有領域Ｍ外であった場合（ステップＳ５で「ＮＯ」）、ＣＰＵ１８は、動作を継続する。この動作継続により、ハンド１７部分が占有領域Ｍに次第に近付いて行き、制動停止位置が占有領域Ｍ内になると、ＣＰＵ１８は、ステップＳ５で「ＹＥＳ」と判断してステップＳ７に移行する。
【００２６】
ステップＳ７でＣＰＵ１８は、自身の占有領域Ｍ内に他のロボットがいるか否かを判断する。例えば、図２（ａ）に示すように、第１のロボット１の目標位置Ｐ１がパレット５で、第２のロボット２がパレット５から目標位置Ｐ２である作業台６に向って動作し始めたような場合には、第１のロボット１の占有領域Ｍ１内に第２のロボット２が位置しているので、第１のロボット１のＣＰＵ１８は、ステップＳ７で「ＹＥＳ」と判断する。また、図２（ｂ）に示すように、第１のロボット１の目標位置Ｐ１がパレット５で、第２のロボット２がパレット５から目標位置Ｐ２である作業台６の近くまで移動していたような場合には、第２のロボット２は、第１のロボット１の占有領域Ｍ１から退出しているので、第１のロボット１のＣＰＵ１８は、ステップＳ７で「ＮＯ」と判断する。
【００２７】
自身の目標位置での占有領域Ｍに他のロボットがおらず、ステップＳ７で「ＮＯ」と判断した場合、ＣＰＵ１８は、ロボット本体７を目標位置に向って動作させ続ける（ステップＳ８、ステップＳ９で「ＮＯ」のくり返し）。そして、ハンド１７が目標位置に到着して所定の作業を終えると、ＣＰＵ１８は、ステップＳ９で「ＹＥＳ」と判断して最初のステップＳ１に戻り、次の目標位置への動作指令を出力する。
【００２８】
自身の目標位置での占有領域Ｍに他のロボットがいてステップＳ７で「ＹＥＳ」と判断した場合には、ＣＰＵ１８は、その時点で制動を開始してロボット本体７を停止させる（ステップＳ１０）。これにより、ロボット本体７は、ハンド１７が自身の占有領域Ｍの直前で停止させる。なお、制動を開始したと仮定したとき、その停止位置が自身の占有領域Ｍ内であるか否かを判断する場合の制動力よりも、実際の制動時の制動力の方を若干強くすることによって、占有領域Ｍの直前でハンド１７を停止させることができる。この制動により、両ロボット１，２が一方のロボットの占有領域Ｍ内で干渉し合うことが回避される。そして、他のロボットが自身の占有領域Ｍから退出すると（ステップＳ１１で「ＹＥＳ」）、ＣＰＵ１８は、ロボット本体７に動作を再開させ（ステップＳ１２）、目標位置へ向って動作する（ステップＳ５で「ＹＥＳ」、ステップＳ７で「ＮＯ」、ステップＳ８、ステップＳ９）。
【００２９】
（占有領域が重なる場合）
一方、図１（ａ）に示すように、両ロボット１，２の目標位置Ｐ１，Ｐ２がパレット５部分で、両者の占有領域Ｍ１，Ｍ２が重なって干渉領域Ｖを生ずる場合がある。この場合には、各ロボット１，２のＣＰＵ１８は、ステップＳ４で「ＹＥＳ」と判断した後、現時点で制動を開始した場合の停止位置が干渉領域Ｖ内となるか否かを判断する（ステップＳ１３）。制動停止位置が干渉領域Ｖ内とならない場合、ＣＰＵ１８は、ロボット本体７に動作を継続させる（ステップＳ１３で「ＮＯ」、ステップＳ１４）。
【００３０】
そして、動作継続により、制動停止位置が干渉領域Ｖ内になると（ステップＳ１３で「ＹＥＳ」）、ＣＰＵ１８は、次に他のロボットが干渉領域内にあるか否かを判断する（ステップＳ１５：他ロボット存在判断手段）。他のロボットが干渉領域にない場合、ＣＰＵ１８は、目標位置への移動動作を継続し（ステップＳ１６で「ＮＯ」、ステップＳ１５で「ＮＯ」の繰り返し）、ロボット本体７が目標位置に移動し終えると（ステップＳ１６で「ＹＥＳ」）、ステップＳ１に戻って新たな目標位置への移動動作を開始する。
【００３１】
このステップＳ１５で「ＮＯ」、ステップＳ１６で「ＮＯ」の繰り返しで目標位置に到着する動作は、図１においてロボット２の動作に相当する。つまり、図１（ｂ）に示すように、制動停止位置が干渉領域Ｖ内になったときには、第１のロボット１は、干渉領域Ｖの外側にあるので、先に目標位置Ｐ２に到着し、次に図１（ｃ）、（ｄ）に示すように、目標位置Ｐ２を作業台６に変えて当該目標位置Ｐ２への移動を開始するのである。
【００３２】
ところで、制動を開始したと仮定したときの停止位置が干渉領域Ｖ内になった場合、その干渉領域Ｖ内に他のロボットがいることがある。図１（ｂ）の例は、第２のロボット２が干渉領域Ｖ内にあって、第１のロボット１が破線で示す位置で制動を開始すると干渉領域Ｖの直前で停止する場合を示している。このような場合、現在位置が干渉領域Ｖ外にあるロボットのＣＰＵ１８は、ステップＳ１５で「ＹＥＳ」と判断し、ここで実際に制動を開始する（ステップＳ１７：停止手段）。すると、そのロボット本体７は、干渉領域Ｖの直前で停止する。
【００３３】
そして、他のロボットが干渉領域Ｖ内での作業を終了し、そして新たな目標位置に向って動作を開始すると、制動をかけて停止したロボットのＣＰＵ１８は、他のロボットが干渉領域Ｖから退出したことを検出し（ステップＳ１８で「ＹＥＳ」）、動作を再開する（ステップＳ１９）。このように他のロボットが自身の占有領域Ｍから退出したことによって、動作を再開したロボットのＣＰＵ１８は、ステップＳ４で「ＮＯ」となって前述の（占有領域が重ならない場合）と同様の制御動作を行い、これによりロボット本体７は、他のロボットのロボット本体７と干渉することなく、目標位置まで移動し所定の動作を行う。図１（ｃ）および（ｄ）の例では第２のロボット２が新たな目標位置Ｐ２を作業台６に定めて移動動作を開始し、第１のロボット１の占有領域Ｍ１から退出したこと、その後、第１のロボット１が動作を再開して目標位置Ｐ１へ移動したことを示している。
【００３４】
このように本実施形態によれば、２台のロボット１，２の目標位置での占有領域が互いに重なり合う場合、それらの占有領域の重なり部分である干渉領域で一方のロボットが作業していても、他方のロボットは自身の目的位置での占有領域の外側で待機するのではなく、干渉領域の直前で待機するので、他方のロボットが干渉領域から退出すると、その後、短時間で目標位置まで到着でき、ロボットの一作業サイクルに要する時間を短縮できる。
【００３５】
なお、本発明は上記し且つ図面に示す実施例に限定されるものではなく、以下のような拡張或いは変更が可能である。
円筒形の占有領域Ｍは、軸方向長さが無限のものとして設定しても良いし、有限のものとして設定しても良い。有限のものとして設定した場合、平面的に見たとき複数ロボットで重なっても、上下方向で見たとき重ならないときには、干渉領域なしと判断される。
占有領域Ｍは、第２の上アーム１４の最大幅を直径とする円筒形の領域に限られない。
ロボット本体７としては、垂直多関節型ロボットに限らない。
３台以上のロボットを同時に動作させる場合にも適用できる。
【図面の簡単な説明】
【００３６】
【図１】本発明の一実施形態を示すもので、作用を説明するための概略的な平面図その１
【図２】作用を説明するための概略的な平面図その２
【図３】干渉回避のための制御内容を示すフローチャート
【図４】ロボットの斜視図
【図５】ロボット本体の先端部であるフランジの座標を示す斜視図
【図６】ロボットの占有領域を示す斜視図
【図７】ロボットの電気的構成を示すブロック図
【図８】ロボットの動作領域を示す概略的な平面図
【図９】従来のロボットの干渉回避動作を説明するための概略的な平面図
【符号の説明】
【００３７】
図面中、１および２は第１および第２のロボット、７はロボット本体、８は制御装置、１６はフランジ、１７はハンド、１８はＣＰＵ（制御手段、占用領域設定手段、干渉領域設定手段、停止手段）、２４は通信回路（通信手段）を示す。
【図１】
0004544145.tif 000002
【図２】
0004544145.tif 000003
【図３】
0004544145.tif 000004
【図４】
0004544145.tif 000005
【図５】
0004544145.tif 000006
【図６】
0004544145.tif 000007
【図７】
0004544145.tif 000008
【図８】
0004544145.tif 000009
【図９】
0004544145.tif 000010