(57)【特許請求の範囲】
【請求項１】
多関節ロボットのアームが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記アームの関節を中心とする第２所定半径の球とを求め、
前記外球と前記アームの関節を中心とする所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記アームは動作可能領域範囲内に存在すると判断することを特徴とするロボットの領域監視方法。
【請求項２】
多関節ロボットの制御点が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記制御点を中心とする第２所定半径の球とを求め、
前記外球と前記制御点を中心とする第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記制御点は動作可能領域範囲内に存在すると判断することを特徴とするロボットの領域監視方法。
【請求項３】
多関節ロボットの作業用ツールが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記作業用ツールを覆う第２所定半径の球とを求め、
前記外球と前記作業用ツールを覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記作業用ツールは動作可能領域範囲内に存在すると判断することを特徴とするロボットの領域監視方法。
【請求項４】
多関節ロボットのアームに取り付けられたロボット付属部品が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記ロボット付属部品を覆う第２所定半径の球とを求め、
前記外球と前記ロボット付属部品を覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記ロボット付属部品は動作可能領域範囲内に存在すると判断することを特徴とするロボットの領域監視方法。
【請求項５】
多関節ロボットのアームが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記アームの関節を中心とする第２所定半径の球とを求め、前記外球と前記アームの関節を中心とする所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記アームは動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするロボットの制御装置。
【請求項６】
多関節ロボットの制御点が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記制御点を中心とする第２所定半径の球とを求め、前記外球と前記制御点を中心とする第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記制御点は動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするロボットの制御装置。
【請求項７】
多関節ロボットの作業用ツールが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記作業用ツールを覆う第２所定半径の球とを求め、前記外球と前記作業用ツールを覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記作業用ツールは動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするロボットの制御装置。
【請求項８】
多関節ロボットのアームに取り付けられたロボット付属部品が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記ロボット付属部品を覆う第２所定半径の球とを求め、前記外球と前記ロボット付属部品を覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記ロボット付属部品は動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするロボットの制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットのリアルタイム動作領域監視を行う制御装置に関する。  
【背景技術】
【０００２】
従来のロボットアームの領域監視は、ロボットアームが予め設定された各ロボットアームの動作範囲を超えて動作した場合に、動作可能領域外と判断していた。
また、ロボットアームが予め設定された干渉領域に侵入した場合に干渉状態と判断する干渉判断方法としては、干渉領域のすべての頂点を通るような外球を求め、ロボットアームと外球の交点を求め、その交点が外球内にあれば干渉領域内と判断する方法もある（例えば、特許文献１参照）。
【特許文献１】特開２００４−１７２４５号公報（第３−６頁、図１）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
従来の干渉判断方法は、干渉領域のすべての頂点を通るような外球を求める。したがって、外球は、設定された干渉領域よりも大きい領域でモデル化することになる。この発明は、干渉領域にロボットアームが侵入したかどうかを判断することが目的であるため、設定された干渉領域よりも大きい領域でモデル化することは問題にはならない。しかし、ロボットアームが動作可能領域から出ないことを判断する場合、上記のモデルを用いると、設定された領域からロボットアームが出てしまうことがあるため使用できないという問題があった。
本発明はこのような問題点に鑑みてなされたものであり、動作可能領域の各面の頂点を通る外球を使用して、動作可能領域をモデル化することにより高速にロボットアームの動作領域を監視する手法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、本発明は、次のように構成したのである。
請求項１に記載の発明は、多関節ロボットのアームが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記アームの関節を中心とする第２所定半径の球とを求め、前記外球と前記アームの関節を中心とする所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記アームは動作可能領域範囲内に存在すると判断することを特徴とするものである。
また、請求項２に記載の発明は、多関節ロボットの制御点が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記制御点を中心とする第２所定半径の球とを求め、前記外球と前記制御点を中心とする第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記制御点は動作可能領域範囲内に存在すると判断することを特徴とするものである。
また、請求項３に記載の発明は、多関節ロボットの作業用ツールが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、
前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記作業用ツールを覆う第２所定半径の球とを求め、
前記外球と前記作業用ツールを覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記作業用ツールは動作可能領域範囲内に存在すると判断することを特徴とするものである。
また、請求項４に記載の発明は、多関節ロボットのアームに取り付けられたロボット付属部品が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの動作領域監視方法において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記ロボット付属部品を覆う第２所定半径の球とを求め、前記外球と前記ロボット付属部品を覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記ロボット付属部品は動作可能領域範囲内に存在すると判断することを特徴とするものである。
また、請求項５に記載の発明は、多関節ロボットのアームが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記アームの関節を中心とする第２所定半径の球とを求め、前記外球と前記アームの関節を中心とする所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記アームは動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするものである。
また、請求項６に記載の発明は、多関節ロボットの制御点が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記制御点を中心とする第２所定半径の球とを求め、前記外球と前記制御点を中心とする第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記制御点は動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするものである。
また、請求項７に記載の発明は、多関節ロボットの作業用ツールが、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記作業用ツールを覆う第２所定半径の球とを求め、前記外球と前記作業用ツールを覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記作業用ツールは動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするものである。
また、請求項８に記載の発明は、多関節ロボットのアームに取り付けられたロボット付属部品が、動作可能領域を表す所定の多面体内に存在することを判断するロボットの制御装置において、前記多面体を構成する複数の面ごとにその面を構成する頂点を通る第１所定半径の外球と前記ロボット付属部品を覆う第２所定半径の球とを求め、前記外球と前記ロボット付属部品を覆う第２所定半径の球との中心間距離が、前記第１所定半径と第２所定半径との和よりも大きい場合は、前記ロボット付属部品は動作可能領域範囲内に存在すると判断する手段を備えたことを特徴とするものである。
【発明の効果】
【０００５】
本発明によると、ロボットの動作可能領域を複数の球でモデル化し、球とロボットアームとの位置関係から、動作可能領域内にロボットアームが存在するかを判断することができる。また、幾何学的に単純な球を用いることにより、各ロボットアームに対する計算量を軽減でき、高速な動作領域監視が可能となる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【０００７】
図１は、本発明の実施フローである。図２はロボット側面から見た図、図３はロボット上方から見た図である。ロボット１はロボット制御装置２により動作制御される。ここでは、例として直方体の動作可能領域を設定する場合について説明する。
まず、手順の概略について説明する。
最初に、手順１で動作可能領域を設定する。
次に、手順２で動作可能領域の面毎にその面の全ての頂点を通る外球４、５、６、７、８、９、を求める。ロボットの動作可能領域は直方体であり、６つの面を持つため、求める外球は６つである。
次に、手順３でロボットアームが外球内に存在しない場合には、動作可能領域内であると判断する。ロボットアームが外球内に存在する場合には、動作可能領域外であると判断する。
【０００８】
続いて、上記手順について詳細に説明する。
まず、手順１では、８つの頂点Ｐ１〜Ｐ８から構成される動作可能領域３を定義する。ここで、図４は動作可能領域の設定に関する概要図である。操作者は、図４の頂点Ｐ１、Ｐ２、Ｐ７、Ｐ８の位置を数値入力により教示し、ロボット制御装置２に記憶させる。これにより、動作可能領域３は一意に決定される。なお、教示する数値は任意座標系での値であるが、任意座標系とロボットの座標計算で用いる座標系との相対関係は予め設定しておく必要がある。
なお、頂点Ｐ１、Ｐ２、Ｐ７、Ｐ８にロボットを動作させて教示しても良い。また、動作可能領域の各頂点を教示しても良い。また、動作可能領域は、Ｐ１、Ｐ８と領域の中心点を教示することで決定しても良いが、この場合には，同時に座標系を指定する。要するに、手順１では、領域を一意に決定できれば、任意の方法で定義すれば良い。
【０００９】
次に、手順２では、外球４（頂点Ｐ１、Ｐ３、Ｐ４、Ｐ２を通る外球）の中心Ｑ４と半径Ｒ４を求める（外球４は図４においては不図示）。Ｐ１、Ｐ２、Ｐ３の各座標要素をＰ１（ｘ１, ｙ１,ｚ１）、Ｐ２（ｘ２, ｙ２,ｚ２）、Ｐ３（ｘ３, ｙ３,ｚ３）とし、この３点を含む面を面Ｓとする。外球４の中心Ｑ４（ｘｃ，ｙｃ，ｚｃ）は、動作可能領域３の中心ＰＯと面Ｓの中心点ＰＳを結ぶ直線Ｌ１上に存在する。
ここでは、図４に示す矢視で見たときの図５に基づき説明する。
Ｑ４は距離ｄだけ動作可能領域内に入る点ＰＤを通るものとする。距離ｄは動作可能領域の近似精度に影響するパラメータである。このパラメータは、ロボット制御装置に予め設定してもよいし、動作可能領域設定時に設定されてもよい。
Ｐ２とＰ３の距離をａとおくと、∠（ＰＤ）（Ｐ２）（Ｐ３）であるθ1、∠（Ｐ２）（ＰＤ）（Ｑ４）であるθ２はそれぞれ、
【００１０】
【数１】
0004798552.tif 000002
【００１１】
【数２】
0004798552.tif 000003
【００１２】
と表される。  △（Ｐ２）（Ｑ４）（ＰＤ）は２等辺三角形であるので、
【００１３】
【数３】
0004798552.tif 000004
【００１４】
となり、外球４の半径Ｒ４は以下のように表すことができる。
【００１５】
【数４】
0004798552.tif 000005
【００１６】
また、図５に示すｂは以下のようになる。
【００１７】
【数５】
0004798552.tif 000006
【００１８】
また、ＰＳの位置ＴＰＳは、Ｐ２とＰ３の中点であることから、
【００１９】
【数６】
0004798552.tif 000007
【００２０】
となる。
ここで、図６に動作可能領域と外球との関係を示す立体図を示す。なお、図６においては、外球はその一部のみ図示している。図６に示すように、面Ｓの法線ベクトルをtとすると、外球４の中心位置Ｑ４（ｘｃ，ｙｃ，ｚｃ）は以下のように表すことができる。
【００２１】
【数７】
0004798552.tif 000008
【００２２】
外球５、６、７、８、９についても同様に中心と半径を求めることができる。
【００２３】
次に、手順３では、ロボットアームと動作可能領域に基づいて作成された外球との位置関係を計算する。図７は、ロボットアームの動作領域監視の概要図である。
位置関係を計算するに当たり、ロボットアームを球１０でモデル化する。具体的には、ロボットアームの関節の回転中心からある半径をもつ球を球１０として考える。
そうすると、球１０の中心をＱ１０(ｘ１０,ｙ１０,ｚ１０)、球１０の半径をＲ１０とすることにより、手順２の式（４）、式（７）でそれぞれ求めた外球４の中心Ｑ４（ｘｃ,ｙｃ,ｚｃ）および外球４の半径Ｒ４から、以下の条件が成立した場合は、両者は接触しない。
【００２４】
【数８】
0004798552.tif 000009
【００２５】
ロボットアームの全ての関節についてモデル化されている場合は、同様の計算を各ロボットアームの関節について外球の個数分行う。そして、少なくとも１つの関節がいずれかの外球内に存在する場合は、動作可能領域外と判断する。
【実施例２】
【００２６】
ロボットのツール先端である制御点の動作領域監視を行う場合には、制御点を囲う球を準備する。その球がいずれかの外球内に存在する場合は、制御点が動作可能領域外と判断する。
【実施例３】
【００２７】
多関節ロボットに取り付けられた作業用ツールの動作領域監視を行う場合には、作業用ツールを覆う球を準備する。その球がいずれかの外球内に存在する場合は、作業用ツールが動作可能領域外と判断する。なお、作業用ツールを包含するモデルであれば、球に限らず、任意の近似モデルでよい。
【実施例４】
【００２８】
多関節ロボットのロボットアームに取り付けられたロボット付属部品の動作領域監視を行う場合には、ロボット付属部品を覆う球を準備する。その球がいずれかの外球内に存在する場合は、作業用ツールが動作可能領域外と判断する。なお、ロボット付属部品を包含するモデルであれば、球に限らず、任意の近似モデルでよい。
【００２９】
なお、上記実施例においては、動作可能領域は、直方体であるが、任意の多面体にも適用できる。他の多面体については、記載していないが、当業者にとっては同様な幾何学を適用することで、説明するまでもなく実施可能である。
【図面の簡単な説明】
【００３０】
【図１】本発明の実施フロー図
【図２】本発明のロボット側面からみた概要図
【図３】本発明のロボット上方からみた概要図
【図４】動作可能領域の設定に関する概要図
【図５】動作可能領域と外球との関係を示す平面図
【図６】動作可能領域と外球との関係を示す立体図
【図７】ロボットアームの動作領域監視の概要図
【符号の説明】
【００３１】
１  ロボット
２  ロボット制御装置
３  動作可能領域
４、５、６、７、８、９  動作可能領域をモデル化した外球
１０  ロボットアームをモデル化した球
【図１】
0004798552.tif 000010
【図２】
0004798552.tif 000011
【図３】
0004798552.tif 000012
【図４】
0004798552.tif 000013
【図５】
0004798552.tif 000014
【図６】
0004798552.tif 000015
【図７】
0004798552.tif 000016