(57)【特許請求の範囲】
【請求項１】
単一のワークを複数の動作で対象物に組み付ける組立ロボットであって、
外力を計測する力センサを有しワークを把持するロボットハンドと、
該ロボットハンドを３次元空間内で位置と姿勢を移動可能なロボットアームと、
前記各動作におけるワークの動作条件を記憶し前記ロボットアームを制御するロボット制御装置とを備え、
該ロボット制御装置により、前記各動作において、ワークの位置と計測された外力を前記動作条件と照合し、
前記動作条件は、前提条件、成功条件及び失敗条件からなり、
前提条件は、直前の動作の成功条件以外の条件を含んでおり、
失敗条件は、成功条件が成立しない以外の条件を含んでおり、
前提条件が成立し、失敗条件が成立するとき、失敗と判断し、
前提条件が成立し、成功条件が成立するとき、成功と判断し、
前提条件が成立しないとき、前記各動作を継続し、
前提条件が成立し、失敗条件及び成功条件が成立しないとき、前記各動作を継続する、ことを特徴とする組立ロボット。
【請求項２】
単一のワークを複数の動作で対象物に組み付ける組立ロボットの制御方法であって、
外力を計測する力センサを有しワークを把持するロボットハンドと、
該ロボットハンドを３次元空間内で位置と姿勢を移動可能なロボットアームと、を備え、
（Ａ）前記各動作におけるワークの動作条件を記憶し、
（Ｂ）前記ロボットアームを制御して前記各動作を順次実行し、
（Ｃ）前記各動作において、ワークの位置と計測された外力を前記動作条件と照合し、
前記動作条件は、前提条件、成功条件及び失敗条件からなり、
前提条件は、直前の動作の成功条件以外の条件を含んでおり、
失敗条件は、成功条件が成立しない以外の条件を含んでおり、
前提条件が成立し、失敗条件が成立するとき、失敗と判断し、
前提条件が成立し、成功条件が成立するとき、成功と判断し、
前提条件が成立しないとき、前記各動作を継続し、
前提条件が成立し、失敗条件及び成功条件が成立しないとき、前記各動作を継続する、ことを特徴とする組立ロボットの制御方法。
【請求項３】
前記各動作にそれぞれ対応する制御方法を記憶し、
各動作に対応する制御方法に順次切り替える、ことを特徴とする請求項２に記載の制御方法。
【請求項４】
前記制御方法は、位置制御、速度制御、又は力制御であり、
前記力制御は、インピーダンス制御又はダンピング制御である、ことを特徴とする請求項３に記載の制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、単一のワークを複数の動作で対象物に組み付ける組立ロボットとその制御方法に関する。
【背景技術】
【０００２】
ロボットの手先に取り付けた力覚センサ、あるいはロボット関節のトルクから作業にかかる力やモーメントを計測し、これに応じて手先の位置や速度を変化させるのが「力制御」である。
力制御は、例えば精密部品の嵌め合い作業などに用いられる。力制御における調整パラメータは、仮想ばね、仮想ダンパ、仮想マスなどである。
【０００３】
ロボットによりワークを対象物に組み付ける際に力制御を用いることは、例えば、特許文献１〜６に開示されている。
【０００４】
特許文献１は、ロボットが対象物に接触する直前に位置制御モードから力制御モードに切り替え、接触前の位置制御と接触後の力制御を滑らかに接続するものである。
特許文献２は、挿入位置がある閾値を超える前に挿入方向に力がかかったら異常と判断し、閾値を超えて力がかかったら押し当てが正常終了と判断するものである。
特許文献３は、バルブを回す一連の動作を、分割した作業ごと（接近・接触、挿入穴探索、押し付け、など）に選択したパラメータで力制御を行なうものである。
【０００５】
特許文献４は、複数の工程で使われる物品の対応を記憶し、各行程において物品と関連付けて自動処理を実行するものである。
特許文献５は、内力管理制御により、強度が弱い部材であっても把持力を最適化して破損や変形を防ぎ、他の部材に組付けするものである。
特許文献６は、ワークをそのワーク座標の原点が目標粗位置まで移動するように各アクチュエータを位置制御した後、作業座標系をもとに組み付け位置にワークをローリング、ピッチング、ヨーイング方向に位置・力制御しながらワークを組み立てるものである。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平０３−２１３２８６号公報、「ロボットの力制御方式」
【特許文献２】特許第３３６６２４８号公報、「ロボットの制御方法および装置」
【特許文献３】特許第４３７８５１号公報、「丸型ハンドルバルブ操作用ロボットアーム制御装置」
【特許文献４】特許第２５４７８９９号公報、「自動装置の制御方法及び制御装置」
【特許文献５】特開２００９−２７９６７８号公報、「自動組立装置、自動組立方法、ならびに表示装置」
【特許文献６】特開平９−１２８０２３号公報、「ワークの組立方法及びその装置」
【発明の概要】
【発明が解決しようとする課題】
【０００７】
ロボットにより、あるワークを、嵌め合いを含む複数の工程で対象物に組み付ける場合、本質的には、ワークと対象物との接触前後だけでなく、嵌め合い工程などの接触中であってもその状況に応じてロボットの動作が切り替わる必要がある。
また、動作切り替えの条件も多種多様考えられる。
さらに、一般的に力制御中のロボットの動作は遅く低速であるが、嵌め合いが失敗している場合に力制御を継続するとワークや対象物に損傷を与えるおそれがある。従って、嵌め合い工程などの成功又は失敗の判定はできるだけ早い段階で行なうことが望ましい。
これらのことを考慮すると、特許文献１〜６には以下のよう問題点があった。
【０００８】
特許文献１は、接触前後の制御方式を限定した上で、これらを滑らかに接続する方法について言及しているのみである。接触後のはめあい中の切り替えについては触れられていない。
特許文献２では、挿入方向の力が設定値を超え、力制御が完了した時点でのみ成否判定が行なわれることになるので、挿入途中で作用力が変わるような形状の部品の場合には対応が困難である。
【０００９】
また、成功可否の判断に用いる距離は、挿入方向（特許文献１、図１のＺ方向）だけを考慮すればよいが、特許文献１では判定に不要な挿入方向に垂直な方向（図１のＸ方向）の変位も含んだ距離が用いられている。微小な閾値で成否の判定を行ないたいとき、この横方向の変位が閾値に対してある程度の大きさを持つと閾値の設定がシビアとなり、誤判定を起こすこともある。
【００１０】
また、計測力が目標値を超えたときの成否判定の閾値が位置だけでは不十分である。たとえば、はめあい部品の精度などの影響ではめあい途中に力の設定値を超えてしまうと失敗と判定されてしまう。また、大きな力がかかってかじるまで挿入失敗と判定できないため、その後の自動継続は困難で運転停止の原因となる。
【００１１】
特許文献３は、バルブ操作に限定した手法である。技術的にも、作業に適した力制御のパラメータを切り替えるのみで、異常時については一切言及されていない。
また、従来手法を繰り返すだけでは、力制御開始時の初期化動作によって力覚センサが計測していた値がリセットされるので、力を継続的かつ連続的に計測できない（通常は、力制御開始時の力の計測値を初期値＝０とし、重力や外力の影響をオフセットとみなすため）。
【００１２】
特許文献４は、複数の物品を順次組み付ける複数の工程を対象としており、単一のワークを複数の動作で対象物に組み付ける際の、各動作における条件の変化を考慮していない。
【００１３】
特許文献５、特許文献６も同様に、単一のワークを複数の動作で対象物に組み付ける際の、各動作における条件の変化を考慮していない。
【００１４】
本発明は、上述した問題点を解決するために創案されたものである。すなわち、本発明の目的は、単一のワークを複数の動作で対象物に組み付ける際に、各動作における条件の変化を考慮して、各動作においてその成功又は失敗を逐次判定することができる組立ロボットとその制御方法を提供することにある。
【課題を解決するための手段】
【００１５】
本発明によれば、単一のワークを複数の動作で対象物に組み付ける組立ロボットであって、
外力を計測する力センサを有しワークを把持するロボットハンドと、
該ロボットハンドを３次元空間内で位置と姿勢を移動可能なロボットアームと、
前記各動作におけるワークの動作条件を記憶し前記ロボットアームを制御するロボット制御装置とを備え、
該ロボット制御装置により、前記各動作において、ワークの位置と計測された外力を前記動作条件と照合し、
前記動作条件は、前提条件、成功条件及び失敗条件からなり、
前提条件は、直前の動作の成功条件以外の条件を含んでおり、
失敗条件は、成功条件が成立しない以外の条件を含んでおり、
前提条件が成立し、失敗条件が成立するとき、失敗と判断し、
前提条件が成立し、成功条件が成立するとき、成功と判断し、
前提条件が成立しないとき、前記各動作を継続し、
前提条件が成立し、失敗条件及び成功条件が成立しないとき、前記各動作を継続する、ことを特徴とする組立ロボットが提供される。
【００１６】
また本発明によれば、単一のワークを複数の動作で対象物に組み付ける組立ロボットの制御方法であって、
外力を計測する力センサを有しワークを把持するロボットハンドと、
該ロボットハンドを３次元空間内で位置と姿勢を移動可能なロボットアームと、を備え、
（Ａ）前記各動作におけるワークの動作条件を記憶し、
（Ｂ）前記ロボットアームを制御して前記各動作を順次実行し、
（Ｃ）前記各動作において、ワークの位置と計測された外力を前記動作条件と照合し、
前記動作条件は、前提条件、成功条件及び失敗条件からなり、
前提条件は、直前の動作の成功条件以外の条件を含んでおり、
失敗条件は、成功条件が成立しない以外の条件を含んでおり、
前提条件が成立し、失敗条件が成立するとき、失敗と判断し、
前提条件が成立し、成功条件が成立するとき、成功と判断し、
前提条件が成立しないとき、前記各動作を継続し、
前提条件が成立し、失敗条件及び成功条件が成立しないとき、前記各動作を継続する、ことを特徴とする組立ロボットの制御方法が提供される。
【発明の効果】
【００１７】
上記本発明の装置及び方法によれば、各動作におけるワークの動作条件を記憶し、各動作において、ワークの位置と計測された外力を動作条件と照合し、前記各動作の成功又は失敗を判断するので、単一のワークを複数の動作で対象物に組み付ける際に、各動作における条件の変化を考慮して、各動作においてその成功又は失敗を逐次判定することができる。
【００１８】
従って、力制御の最中に、状況に応じて適切な成否判定が行なえる。また，動作途中でも失敗判定が行なえるので、一連の動作における早い段階での失敗検出とその後の対応動作（再試行動作、システム停止など）が可能となる。
【図面の簡単な説明】
【００１９】
【図１】本発明による組立ロボットの実施形態図である。
【図２】本発明による組み付け動作の実施形態図である。
【図３】本発明による制御方法のフローチャートである。
【発明を実施するための形態】
【００２０】
以下、本発明の好ましい実施形態を添付図面に基づいて詳細に説明する。なお、各図において共通する部分には同一の符号を付し、重複した説明を省略する。
【００２１】
図１は、本発明による組立ロボットの実施形態図である。
この図において、組立ロボット１０は、単一のワーク１を複数の動作で対象物２に組み付ける自動装置であり、ロボットハンド１２、ロボットアーム１６、及びロボット制御装置２０を備える。
【００２２】
ワーク１は、後述する第１実施形態では、円筒形部材であり、その上端をロボットハンド１２が把持するようになっている。
【００２３】
ロボットハンド１２は、外力を計測する力センサ１４を有し、ワーク１を把持する。
【００２４】
力センサ１４は、ワーク１に作用する外力を検出するセンサである。
この例において、力センサ１４は直交３軸方向の力（Ｆｘ，Ｆｙ，Ｆｚ）と各軸まわりのトルク（Ｔｘ，Ｔｙ，Ｔｚ）を計測可能な６軸センサであり、３次元的に移動可能なロボットアーム１６に取り付けられ、これに作用する６自由度の外力（３方向の力Ｆｘ，Ｆｙ，Ｆｚと、３軸まわりのトルクＴｘ，Ｔｙ，Ｔｚ）を検出するようになっている。
なお、本発明はこれに限定されず、ワーク１に作用する外力が検出できる限りで、その他の力センサであってもよい。
【００２５】
ロボットアーム１６は、手先にロボットハンド１２を取付け、これを３次元空間内で位置と姿勢を移動可能に構成されている。
ロボットアーム１６は、この例では、多関節ロボットのロボットアームであるが、本発明はこれに限定されず、その他のロボットであってもよい。
【００２６】
ロボット制御装置２０は、記憶装置２１に各動作におけるワーク１の動作条件を記憶し、ロボットアーム１６を制御する。
ロボット制御装置２０は、例えば数値制御装置であり、指令信号によりロボットアーム１６を６自由度（３次元位置と３軸まわりの回転）に制御するようになっている。
【００２７】
記憶装置２１に記憶された各動作におけるワーク１の動作条件は、前提条件、成功条件及び失敗条件からなる。
また、記憶装置２１は、各動作にそれぞれ対応する動作条件と制御方法を記憶する。
制御方法は、位置制御、速度制御、又は力制御であり、力制御は、インピーダンス制御又はダンピング制御であるが、本発明はこれに限定されず、その他の力制御方法であってもよい。
【００２８】
記憶装置２１は、さらに各動作における軌道データテーブルを記憶する。軌道データテーブルは、ロボットハンド１２のＴＣＰの目標位置（Ｘ，Ｙ，Ｚ）と、押付け方向ベクトルからなる。
【００２９】
図２は、本発明による組み付け動作の実施形態図である。
この図において、ワーク１は円筒形部材である。また、対象物２はワーク１が嵌合する円筒形孔２ａを有し、作業台４（図１参照）に移動しないように固定されている。
円筒形孔２ａの内径は、ワーク１の直径よりわずかに大きく、ワーク１の下端が円筒形孔２ａの底面に達するまで、同心を維持したまま挿入できるようになっている。
円筒形孔２ａの内径とワーク１の直径の差は、例えば、０．０１ｍｍである。
【００３０】
この組み付け動作例は、単一のワーク１を３つの動作（１）〜（３）で対象物２の円筒形孔２ａに組み付けるものである。
動作（１）は、図で（Ａ）から（Ｂ）までであり、ワーク１の下端を円筒形孔２ａの上部に挿入するはめあいまでの近接動作である。
動作（２）は、図で（Ｂ）から（Ｃ）までであり、はめあい開始直後の動作である。この動作では、位置と姿勢のずれを修正する必要がある。
動作（３）は、図で（Ｃ）から（Ｄ）までであり、はめあい・挿入動作である。この動作（３）では、位置のずれを修正しつつワーク１を挿入する必要がある。
【００３１】
表１は、上記動作（１）〜（３）におけるワークの動作条件と失敗時又は成功時の動作を示すものである。
この表において、条件コード［１］〜［３］は、動作（１）〜（３）にそれぞれ対応し、条件コード［４］は、動作（１）〜（３）のすべてに対応する。
【００３２】
【表１】
0005218540.tif 000002
【００３３】
表１において、動作条件は、条件コード［１］〜［３］に対してそれぞれ前提条件、成功条件及び失敗条件からなる。なお、条件コード［４］に対しては、失敗条件のみである。
【００３４】
表２は、上述した動作（１）〜（３）におけるワークの動作条件、失敗時又は成功時の動作、及び動作パラメータを示すものである。
この表において、条件コード［１］〜［３］は、動作（１）〜（３）にそれぞれ対応し、条件コード［４］は、動作（１）〜（３）のすべてに対応する。
【００３５】
【表２】
0005218540.tif 000003
【００３６】
表２において、動作条件は、条件コード［１］〜［３］に対してそれぞれ前提条件、成功条件及び失敗条件からなる。なお、条件コード［４］に対しては、前提条件と失敗条件のみである。
またこの表において、動作パラメータとは、ワークの移動方向、移動速度、目標力、又は粘性係数を含む制御方法である。
制御方法は、位置制御、速度制御、又は力制御である。また、力制御は、インピーダンス制御又はダンピング制御である。
【００３７】
なお、表１と表２は動作パラメータの有無で相違するが、その他の項目は実質的に同一である。また各表における位置、速度、力の数値は例示であり、これらに限定されない。
【００３８】
図３は、本発明による制御方法のフローチャートである。
本発明による制御方法は、上述した組立ロボット１０を用い、以下の（Ａ）〜（Ｃ）を実行する。
【００３９】
（Ａ）上述した各動作（１）〜（３）におけるワーク１の動作条件、失敗時又は成功時の動作、及び動作パラメータを記憶装置２１に記憶する。
（Ｂ）ロボット制御装置２０により、ロボットアーム１６を制御して各動作（１）〜（３）を順次実行する。各動作（１）〜（３）において、条件コード［１］〜［３］に対応して動作パラメータを切り替える。
（Ｃ）各動作（１）〜（３）において、ワーク１の位置と力センサ１４で計測された外力を記憶した動作条件と照合し、各動作（１）〜（３）の成功又は失敗を判断する。
【００４０】
すなわち、図３において力制御を開始し（Ｓ１）、表１又は表２の判定条件を記憶装置２１から読み込み（Ｓ２）、リアルタイム制御ループ（Ｓ３〜Ｓ１１）を開始する。
【００４１】
リアルタイム制御ループ（Ｓ３〜Ｓ１１）において力制御を実施し（Ｓ４）、前提条件［１］の成立を判断し（Ｓ５）、不成立（Ｎｏ）の場合に、順次次の前提条件の成立を判断する。ここで前提条件［ｋ］（ｋ＝１，２、・・・）は条件コード［１］〜［ｋ］に対応する。
【００４２】
各前提条件［ｋ］（ｋ＝１，２、・・・）が成立（Ｙｅｓ）の場合に、失敗条件［ｋ］の成立を判断し（Ｓ６、Ｓ９）、成立（Ｙｅｓ）の場合に、失敗時動作を実施し（Ｓ１２）、異常終了コードを出力し（Ｓ１３）、力制御を終了する（Ｓ１４）。ここで失敗条件［ｋ］（ｋ＝１，２、・・・）は条件コード［１］〜［ｋ］に対応する。
【００４３】
各失敗条件［ｋ］（ｋ＝１，２、・・・）が不成立（Ｎｏ）の場合に、成功条件［ｋ］の成立を判断し（Ｓ７、Ｓ１０）、成立（Ｙｅｓ）の場合に、成功時動作を実施し（Ｓ１５）、終了でない（Ｓ１６でＮｏ）場合、動作を継続し、リアルタイム制御ループ（Ｓ３〜Ｓ１１）を再度実行する。
各成功条件［ｋ］（ｋ＝１，２、・・・）が不成立（Ｎｏ）の場合、動作を継続し、リアルタイム制御ループ（Ｓ３〜Ｓ１１）を再度実行する。ここで成功条件［ｋ］（ｋ＝１，２、・・・）は条件コード［１］〜［ｋ］に対応する。
【００４４】
Ｓ１６で終了（Ｙｅｓ）の場合、正常終了コードを出力し（Ｓ１７）、力制御を終了する（Ｓ１４）。
【００４５】
なお、失敗条件［ｋ］の成立の判断（Ｓ６、Ｓ９）と成功条件［ｋ］の成立の判断（Ｓ７、Ｓ１０）は、順序が逆であってもよい。
【００４６】
上述したように、本発明では、条件コード［１］〜［ｋ］において、
（Ｃ１）前提条件が成立し、失敗条件が成立するとき、失敗と判断し、
（Ｃ２）前提条件が成立し、成功条件が成立するとき、成功と判断し、
（Ｃ３）前提条件が成立しないとき、前記各動作を継続する。
【００４７】
また、各動作（１）〜（３）にそれぞれ対応する動作パラメータ［１］〜［ｋ］（ｋ＝１，２、・・・）を記憶し、各動作に対応する制御方法に順次切り替える。
【００４８】
上述したように本発明では、各動作（１）〜（３）において、ワーク１の位置と計測された外力を動作条件と照合し、各動作の成功又は失敗を判断する。
すなわち、成功条件又は失敗条件が満足するか否かを組立などの各動作中に逐次（リアルタイムで）判断し、成功又は失敗の判定が行なわれた時点で成功又は失敗時の動作を行なう。
【００４９】
また上述したように、好ましくは成功・失敗の条件だけでなく、制御方法を含む動作パラメータも条件コードごとに複数準備し、切り替える。
従って、図３のフローチャートでは、成功時動作で動作パラメータの変更がなされることになる。
【００５０】
上述したように本発明の装置及び方法によれば、各動作におけるワーク１の動作条件を記憶し、各動作において、ワーク１の位置と計測された外力を動作条件と照合し、各動作の成功又は失敗を判断するので、単一のワーク１を複数の動作で対象物に組み付ける際に、各動作における条件の変化を考慮して、各動作においてその成功又は失敗を逐次判定することができる。
【００５１】
従って、力制御の最中に、状況に応じて適切な成否判定が行なえる。また，動作途中でも失敗判定が行なえるので、一連の動作における早い段階での失敗検出とその後の対応動作（再試行動作、システム停止など）が可能となる。
【００５２】
なお、本発明は上述した実施形態に限定されず、特許請求の範囲の記載によって示され、さらに特許請求の範囲の記載と均等の意味および範囲内でのすべての変更を含むものである。
【符号の説明】
【００５３】
１  ワーク、１ａ  円筒形孔、
２  対象物、２ａ  円筒形孔、４  作業台、
１０  組立ロボット、１２  ロボットハンド、
１４  力センサ、１６  ロボットアーム、
２０  ロボット制御装置、２１記憶装置
【図１】
0005218540.tif 000004
【図２】
0005218540.tif 000005
【図３】
0005218540.tif 000006