(57)【要約】【課題】冗長マニピュレータの冗長性及び汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を延ばすことができる冗長マニピュレータ、制御装置、制御方法及び制御プログラム並びに冗長マニピュレータシステムを提供すること。【解決手段】冗長マニピュレータの先端軸に回転工具を取り付ける際に、目標先端位置姿勢値〔Ｔｒ〕から求められた各軸の指令値（軸角速度〔θ´〕）のうち、先端軸の指令値（軸角速度θ７´）を先端軸に出力せず、先端軸の指令値（軸角速度θ７´）から先端軸の予想軸角度θ７を生成し、先端軸の予想軸角度θ７と冗長マニピュレータの先端軸以外の現在の軸角度θ１〜θ６から現在先端位置姿勢値〔Ｔｐ〕を求め、目標先端位置姿勢値〔Ｔｒ〕と現在先端位置姿勢値〔Ｔｐ〕を比較することでフィードバック制御を行う。【選択図】　　　図３
2004090111.tif 000002
【特許請求の範囲】
【請求項１】
先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータにおいて、
回転工具を取り付ける際には、当該回転工具の回転運動を前記冗長マニピュレータの先端軸により行うことを特徴とする冗長マニピュレータ。
【請求項２】
前記回転工具は、回転工具用アタッチメントを介して前記冗長マニピュレータの先端軸に取り付けられることを特徴とする請求項１に記載の冗長マニピュレータ。
【請求項３】
先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータの各軸をフィードバック制御により制御する制御装置において、
前記冗長マニピュレータの先端軸に回転工具を取り付ける際には、
目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、前記先端軸の軸角速度指令値を先端軸に出力せず、
前記先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、
前記先端軸の予想軸角度と前記冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、
前記目標先端位置姿勢値と前記現在先端位置姿勢値を比較することを特徴とする制御装置。
【請求項４】
先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータの各軸をフィードバック制御により制御する制御方法において、
前記冗長マニピュレータの先端軸に回転工具を取り付ける際には、
目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、前記先端軸の軸角速度指令値を先端軸に出力せず、
前記先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、
前記先端軸の予想軸角度と前記冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、
前記目標先端位置姿勢値と前記現在先端位置姿勢値を比較することを特徴とする制御方法。
【請求項５】
請求項４に記載の制御方法をコンピュータに実行させることを特徴とする制御プログラム。
【請求項６】
少なくとも冗長マニピュレータと当該冗長マニピュレータを制御する制御装置とを備える冗長マニピュレータシステムにおいて、
前記冗長マニピュレータに請求項１または２に記載の冗長マニピュレータを用い、
前記制御装置に請求項３に記載の制御装置を用いることを特徴とする冗長マニピュレータシステム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、冗長マニピュレータ、制御装置、制御方法及び制御プログラム並びに冗長マニピュレータシステムに関し、更に詳しくは、回転工具を先端軸により回転させる冗長マニピュレータ、制御装置、制御方法及び制御プログラム並びに冗長マニピュレータシステムに関する。
【０００２】
【従来の技術】
従来、産業用ロボットなどとして使用されるマニピュレータは、制御軸を６軸有するマニピュレータが大部分であった。これはマニピュレータの先端（手先）の位置と姿勢は、マニピュレータの先端の３次元的の位置ｘ、ｙ、ｚとこの位置におけるマニピュレータの先端の姿勢ｙａｗ、ｐｉｔｃｈ、ｒｏｌｌの６つの要素を有するからである。一方、人間の腕は制御軸を７軸有するマニピュレータに相当する。人間は、手の位置と方向（姿勢）を固定しても、肘を動かすことができる。従って、人間の腕は、手を固定していても、肘を動かすことで障害物などを回避することができる。
【０００３】
そこで、マニピュレータの先端（手先）の位置・姿勢（ｘ、ｙ、ｚ、ｙａｗ、ｐｉｔｃｈ、ｒｏｌｌ）を制御することができ、且つ冗長性（人間の腕のように手を固定していても、肘を動かすことできる）を有する制御軸を７軸有する冗長マニピュレータが開発されている。この冗長マニピュレータは、先端にメカニカルインターフェースを有し、このメカニカルインターフェースに工具を脱着することができる。これにより、冗長マニピュレータ、種々の作業が可能となる。
【０００４】
【発明が解決しようとする課題】
上記のように冗長マニピュレータは汎用性を有するので、工具が回転することで行う作業にも用いることができる。この作業としては、例えばドリルを冗長マニピュレータのメカニカルインターフェースに装着して対象物を穿孔する作業、研磨工具をメカニカルインターフェースに装着して対象物の表面などを研磨する作業などがある。これらの回転工具（ドリル、研磨工具）が回転することで行う作業には、回転工具を回転させるための駆動装置、例えばモータが必要である。
【０００５】
ここで、回転工具の多くは、高回転（例えば、ドリルでは数千ｒｐｍ）させる必要があるため、出力の大きい駆動装置が必要である。従って、冗長マニピュレータのメカニカルインターフェースには、工具と重量のある駆動装置を装着しなければならなかった。これにより、冗長マニピュレータの先端の重量が増加し、この重量の増加により、先端の位置・姿勢を制御する際に悪影響を与える恐れがあった。また、冗長マニピュレータの先端の重量が重くなることで、各軸に備えられた駆動装置に負担をかけ、この駆動装置の寿命を縮める恐れがあった。
【０００６】
そこで、この発明は、上記に鑑みてなされたものであって、冗長マニピュレータの冗長性及び汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を延ばすことができる冗長マニピュレータ、制御装置、制御方法及び制御プログラム並びに冗長マニピュレータシステムを提供することを目的とする。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、この発明では、先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータにおいて、回転工具を取り付ける際には、当該回転工具の回転運動を冗長マニピュレータの先端軸により行うことを特徴とする。
【０００８】
この発明によれば、回転工具を取り付ける際には、当該回転工具の回転運動を冗長マニピュレータの先端軸により行うので、回転工具の回転運動をさせるために必要な駆動装置を別個設ける必要がなく、冗長マニピュレータの先端の重量を増加させないで、回転工具を装着することができる。これにより、冗長マニピュレータの汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を伸ばすことができる。ここで、回転工具とは、工具が回転することで対象物に対して作業を行うものをいい、例えばドリル、研磨工具などである（以下同様）。
【０００９】
また、この発明では、請求項１に記載の冗長マニピュレータにおいて、回転工具は、回転工具用アタッチメントを介して冗長マニピュレータの先端軸に取り付けられることを特徴とする。
【００１０】
この発明によれば、回転工具を回転工具用アタッチメントを介して冗長マニピュレータの先端軸に取り付けるので、種々の回転工具（例えば、ドリル、研磨工具など）を容易に冗長マニピュレータの先端軸に取り付けることができる。また、短時間で種々の回転工具を取り替えることができる。
【００１１】
また、この発明では、先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータの各軸をフィードバック制御により制御する制御装置において、冗長マニピュレータの先端軸に回転工具を取り付ける際には、目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、先端軸の軸角速度指令値を先端軸に出力せず、先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、先端軸の予想軸角度と冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、目標先端位置姿勢値と現在先端位置姿勢値を比較することを特徴とする。
【００１２】
また、この発明では、先端の工具を取り替えることで、種々の作業を行うことができる冗長マニピュレータの各軸をフィードバック制御により制御する制御方法において、冗長マニピュレータの先端軸に回転工具を取り付ける際には、目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、先端軸の軸角速度指令値を先端軸に出力せず、先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、先端軸の予想軸角度と冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、目標先端位置姿勢値と現在先端位置姿勢値を比較することを特徴とする。
【００１３】
上記これら発明によれば、冗長マニピュレータの先端軸に回転工具を取り付ける際には、目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、先端軸の軸角速度指令値を先端軸に出力せず、先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、先端軸の予想軸角度と冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、目標先端位置姿勢値と現在先端位置姿勢値を比較するので、冗長マニピュレータの先端軸に回転工具を取り付けても、冗長マニピュレータの冗長性を確保することができる。また、冗長マニピュレータに回転工具以外の工具を取り付けた場合における制御方法又は制御装置を用いて、この冗長マニピュレータの先端軸に回転工具を取り付けた場合における冗長マニピュレータの制御を容易に行うことができる。
【００１４】
また、この発明の制御プログラムは、請求項４に記載の制御方法をコンピュータに実行させることを特徴とする。
【００１５】
この発明によれば、制御プログラムをコンピュータに読み取らせて実行することによって、請求項４に記載の制御方法をコンピュータを利用して実現することができ、この方法と同様の効果を得ることができる。
【００１６】
また、この発明では、少なくとも冗長マニピュレータと当該冗長マニピュレータを制御する制御装置とを備える冗長マニピュレータシステムにおいて、冗長マニピュレータに請求項１又は２に記載の冗長マニピュレータを用い、制御装置に請求項３に記載の制御装置を用いることを特徴とする。
【００１７】
また、この発明によれば、回転工具の回転運動をさせるために必要な駆動装置を別個設ける必要がなく、冗長マニピュレータの先端の重量を増加させないで、回転工具を装着することができる。また、冗長マニピュレータに回転工具以外の工具を取り付けた場合における制御装置を用いて、この冗長マニピュレータの先端軸に回転工具を取り付けた場合における冗長マニピュレータの制御を容易に行うことができる。これにより、冗長マニピュレータの冗長性及び汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を延ばすことができる。
【００１８】
【発明の実施の形態】
以下、この発明につき図面を参照しつつ詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。また、下記実施の形態における構成要素には、当業者が容易に想定できるもの或いは実質的に同一のものが含まれる。また、下記実施の形態における構成要素には、当業者が容易に想定できるものが含まれるものとする。
【００１９】
図１は、この発明にかかる冗長マニピュレータシステムの概略構成例を示す図である。同図に示すように、冗長マニピュレータシステムは、冗長マニピュレータ１と、制御装置１０と、サーボドライバ２０とにより構成されている。冗長マニピュレータ１は、床などに固定されている肩部３と、上腕部４と、肘部５と、下腕部６と、手首部７とにより構成されている。肩部３は、冗長マニピュレータ１の各軸に備えられたモータの制御信号を入出力するコネクタ２を有する。なお、冗長マニピュレータ１には、上記コネクタ２を介して、サーボドライバ２０及び制御装置１０が接続されている。ここで、制御装置１０は、サーボドライバ２０から出力される冗長マニピュレータ１の各軸の軸角度の現在値に基づいて、冗長マニピュレータ１の各軸角速度をサーボドライバ２０に出力する。一方、サーボドライバ２０は、制御装置１０から出力される各軸角速度に基づいて、冗長マニピュレータ１の各軸に駆動信号を出力する。
【００２０】
肩部３と上腕部４との間には、上腕部４を左右旋回するための軸Ｓ１と上腕部４を上下旋回するための軸Ｓ２が設けられている。また、上腕部４と肘部５との間には、肘部５を左右旋回するための軸Ｓ３が設けられている。また、肘部５と下腕部６との間には、下腕部６を上下旋回するための軸Ｓ４が設けられている。また、下腕部６と手首部７との間には、手首部７を左右旋回するための軸Ｓ５が設けられている。手首部７には、ドリル８を上下旋回させるための軸Ｓ６とこのドリル８を回転させるための軸Ｓ７が設けられている。なお、各軸Ｓ１〜Ｓ７は、ハーモニックギアなどの減速機と駆動装置であるモータにより構成されており、各モータが駆動することにより各軸Ｓ１〜Ｓ７は低速回転することができる。なお、各軸Ｓ１〜Ｓ７の回転方向は、θ１〜θ７で示す。
【００２１】
図２は、冗長マニピュレータの先端の概略構成例を示す図であり、同図（ａ）は従来の冗長マニピュレータの先端に回転工具を取り付けた状態、同図（ｂ）はこの発明にかかる冗長マニピュレータの先端に回転工具を取り付けた状態、同図（ｃ）はこの発明にかかる冗長マニピュレータの先端に他の工具を取り付けた状態を示す図である。同図（ａ）に示すように、従来において軸Ｓ７は、手首部７に取り付けられたハーモニックギアなどの減速機３１、モータ３０などにより構成されている。モータ３０の回転運動は、モータ３０の図示しない回転軸に接続された減速機３１により減速され、メカニカルインターフェース３２に伝達することで低速回転していた。この場合は、モータ３０の回転軸、すなわち軸Ｓ７を軸を中心に高速回転する回転工具（例えば、ドリル８など）を用いて冗長マニピュレータ１に作業をさせる際は、別個回転工具の駆動装置として高速回転するモータ４０が必要であった。つまり、軸Ｓ７に取り付けられた（減速機３１の出力側に取り付けたれた）メカニカルインターフェース３２にモータ４０を装着し、このモータ４０の回転軸にドリル８を取り付ける必要があった。
【００２２】
一方、この発明にかかる冗長マニピュレータ１にドリル８を取り付ける場合は、同図（ｂ）に示すように、手首部７の減速機３１及びメカニカルインターフェース３２の替わりに、この手首部７に回転工具用アタッチメント３３を取り付け、モータ３０と回転工具用アタッチメント３３を接続し、この回転工具用アタッチメント３３にドリル８を取り付ける。すなわち、回転工具であるドリル８を減速機３１を介さずに先端軸である軸Ｓ７（モータ３０）に接続し、ドリル８の回転運動を冗長マニピュレータ１の先端軸により行う。従って、回転工具（ドリル８）に回転運動をさせるために必要な駆動装置であるモータ４０を別個設ける必要がなく、冗長マニピュレータ１の先端の重量を増加させないで、回転工具を装着することができる。
【００２３】
なお、冗長マニピュレータ１の先端には、同図（ｃ）に示すように、ハンド９などの回転工具以外の工具を取り付けることもできる。この場合は、同図（ｂ）に示す、回転工具用アタッチメント３３を手首部７から取り外し、この手首部７に減速機３１及びメカニカルインターフェース３２を取り付け、このメカニカルインターフェース３２にハンド９を装着する。これにより、冗長マニピュレータ１には、回転工具（ドリル８）や回転工具以外の工具（ハンド９）を取り付けることができ、この冗長マニピュレータの汎用性を確保することができる。
【００２４】
次に、この発明にかかる冗長マニピュレータの制御方法について説明する。図３は、この発明にかかる冗長マニピュレータの制御ブロック図である。冗長マニピュレータ１をある決まった軌道上を移動させたい場合は、目標先端位置姿勢値設定手段１１により目標先端位置姿勢値〔Ｔｒ〕を設定し、この設定された目標先端位置姿勢値〔Ｔｒ〕から各軸Ｓ１〜Ｓ７の軸角速度〔θ´〕を求める。求められた軸角速度〔θ´〕をサンプリング周期における各軸Ｓ１〜Ｓ７のモータの指令値として図１に示すサーボドライバ２０に与える。サーボドライバ２０は、軸角速度〔θ´〕に基づいて各軸Ｓ１〜Ｓ７のモータを駆動する。ここで、先端位置姿勢値とは、冗長マニピュレータ１の先端の３次元の位置ｘ、ｙ、ｚとこの位置における冗長マニピュレータ１の先端の姿勢ｙａｗ、ｐｉｔｃｈ、ｒｏｌｌの６つの要素からなる。
【００２５】
次に、この発明にかかる冗長マニピュレータ１の先端軸に回転工具を取り付けた場合の制御方法について、詳細に説明する。図示しない冗長マニピュレータ１の各軸Ｓ１〜Ｓ７のモータに取り付けられたエンコーダなどの軸角度検出手段から各軸Ｓ１〜Ｓ７の軸角度θ１〜θ６を現在値としてサーボドライバ２０が検出し、このサーボドライバ２０は検出された現在値（軸角度θ１〜θ６）を制御装置１０に出力する。ここで、冗長マニピュレータ１の先端軸である軸Ｓ７には、回転工具（図１では、ドリル８）が取り付けられているため、この軸Ｓ７の現在の軸角度は制御装置１０に入力しない。これは、回転工具を軸Ｓ７のモータに取り付けているので、軸Ｓ７は回転工具を駆動するための別の制御が行われているからである。
【００２６】
制御装置１０に入力された現在値（軸角度θ１〜θ６）と後述する先端軸角度生成手段１７により生成された先端軸である軸Ｓ７の予想軸角度θ７と〔θ〕として先端位置姿勢座標変換手段１６とヤコビ行列及び擬似逆ヤコビ行列生成手段１５に入力する。先端位置姿勢座標変換手段１６は、〔θ〕を現在の冗長マニピュレータ１の先端位置姿勢値〔Ｔｐ〕に変換する。変換された先端位置姿勢値〔Ｔｐ〕は比較手段１２に入力される。
【００２７】
一方、目標先端位置姿勢値設定手段１１は、冗長マニピュレータ１の先端の目標先端位置姿勢値〔Ｔｒ〕を設定し、この設定した目標先端位置姿勢値〔Ｔｒ〕は比較手段１２に入力される。入力された目標先端位置姿勢値〔Ｔｒ〕は、比較手段１２により先端位置姿勢値〔Ｔｐ〕と比較され、先端位置姿勢値偏差〔Ｅｐ〕が求められる。求められた先端位置姿勢値偏差〔Ｅｐ〕は、位置制御ゲイン１３に入力され、この位置制御ゲイン１３から、冗長マニピュレータ１の各軸Ｓ１〜Ｓ７の修正速度〔Ｖｐｗ〕が求められる。求められた修正速度〔Ｖｐｗ〕は、軸角速度変換手段１４に入力される。
【００２８】
ヤコビ行列及び擬似逆ヤコビ行列生成手段１５は、〔θ〕から、ヤコビ行列〔Ｊ〕及び擬似逆ヤコビ行列〔Ｊ＃〕を生成する。生成されたヤコビ行列〔Ｊ〕及び擬似逆ヤコビ行列〔Ｊ＃〕は、軸角速度変換手段１４に入力される。
【００２９】
軸角速度変換手段１４は、修正速度〔Ｖｐｗ〕とヤコビ行列〔Ｊ〕及び擬似逆ヤコビ行列〔Ｊ＃〕とを下記の式を用いて、冗長マニピュレータ１の各軸Ｓ１〜Ｓ７のモータの軸角速度〔θ´〕に変換する。
〔θ´〕＝〔Ｊ＃〕・〔Ｖｐｗ〕＋（〔Ｉ〕−〔Ｊ＃〕・〔Ｊ〕）ξ（θ）・〔Ｋｐ〕　（１）
ここで、〔Ｉ〕は単位行列、ξ（θ）は評価関数、〔Ｋｐ〕は調整ゲイン（冗長軸例えば、肘部５に設けられている軸Ｓ３が落ち着く速度）である。
【００３０】
ここで、上記式（１）は、第１項と第２項の和で構成されており、第１項の〔Ｊ＃〕・〔Ｖｐｗ〕はヤコビアンと呼ばれ周知の項であり、冗長マニピュレータ１においては、無限個の解が存在する項である。一方、第２項の（〔Ｉ〕−〔Ｊ＃〕・〔Ｊ〕）ξ（θ）・〔Ｋｐ〕は、評価関数ξ（θ）に基づいて各軸Ｓ１〜Ｓ７を１つに定める働きを有する項である。
【００３１】
変換された軸角速度〔θ´〕のうち、軸角速度θ１´〜θ６´は、冗長マニピュレータ１の軸Ｓ１〜Ｓ６のモータに与える指令値として、サーボドライバ２０に入力される。このサーボドライバ２０は、軸角速度θ１´〜θ６´に基づいて、軸Ｓ１〜Ｓ６のモータを駆動する。一方、軸角速度θ７´は、先端軸角度生成手段１７に入力され、この先端軸角度生成手段１７は、下記の式を用いて軸角速度θ７´より予想軸角度θ７を生成する。
θ７＝θ６＋θ７´Δｔ　　　　　　　　　　　　　　　　　　　　　　　（２）
ここで、Δｔは、サンプリングの時間である。
【００３２】
先端軸角度生成手段１７で上記式（２）により生成された予想軸角度θ７は、現在の軸角度θ１〜θ６とともに〔θ〕として先端位置姿勢座標変換手段１６とヤコビ行列及び擬似逆ヤコビ行列生成手段１５に入力される。以上により、冗長マニピュレータ１の先端軸に回転工具を取り付けた場合の制御が行われる。従って、冗長マニピュレータ１の先端軸（軸Ｓ７）に回転工具を取り付けても、冗長マニピュレータ１の冗長性を確保することができる。ここで、制御装置１０は、サーボドライバ２０を介して軸Ｓ７のモータに指令値である軸角速度θ７´を出力しないが、これは、通常、軸Ｓ７は固定されていない状態となる。つまり、冗長マニピュレータ１の先端位置姿勢値のうちｒｏｌｌについては、制御されていない状態となる。しかし、軸Ｓ７のモータは回転工具を高速回転させる駆動装置として用いられており、回転工具の回転方向はｒｏｌｌ方向であるので特に問題はない。
【００３３】
なお、回転工具以外の工具を取り付けた場合の冗長マニピュレータの制御方法は、図３において、冗長マニピュレータ１の各軸Ｓ１〜Ｓ７のモータのすべての現在値（軸角度θ１〜θ７）をサーボドライバ２０を介して制御装置１０の先端位置姿勢座標変換手段１６及びヤコビ行列及び擬似逆ヤコビ行列生成手段１５に入力し、軸角速度変換手段１４から出力される軸角速度〔θ´〕（θ１´〜θ７´）を冗長マニピュレータ１の軸Ｓ１〜Ｓ７のモータに与える指令値として、サーボドライバ２０に入力し、軸角速度θ１´〜θ７´に基づいて、軸Ｓ１〜Ｓ７のモータを駆動する。つまり、冗長マニピュレータ１に回転工具以外の工具を取り付けた場合は、予想軸角度θ７を生成する先端軸角度生成手段１７が必要ではなくなる。従って、冗長マニピュレータ１に回転工具以外の工具を取り付けた場合における制御方法を用いて、この冗長マニピュレータ１の先端軸に回転工具を取り付けた場合における冗長マニピュレータ１の制御を容易に行うことができる。
【００３４】
また、上記制御方法をプログラムとして処理することで、制御装置１０としてコンピュータを用いることもできる。この場合、冗長マニピュレータ１の先端に取り付ける工具（回転工具、回転工具以外の工具）により、冗長マニピュレータ１の先端軸に回転工具を取り付けた場合の制御方法か回転工具以外の工具を取り付けた場合の冗長マニピュレータの制御方法かのいずれにより処理するかをコンピュータが自動的に判断することで、冗長マニピュレータ１を制御しても良い。
【００３５】
【発明の効果】
以上説明したように、請求項１に記載の発明によれば、回転工具を取り付ける際には、当該回転工具の回転運動を冗長マニピュレータの先端軸により行うので、回転工具の回転運動をさせるために必要な駆動装置を別個設ける必要がなく、冗長マニピュレータの先端の重量を増加させないで、回転工具を装着することができる。これにより、冗長マニピュレータの汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を伸ばすことができる。
【００３６】
また、請求項２に記載の発明によれば、回転工具を回転工具用アタッチメントを介して冗長マニピュレータの先端軸に取り付けるので、種々の回転工具（例えば、ドリル、研磨工具など）を容易に冗長マニピュレータの先端軸に取り付けることができる。また、短時間で種々の回転工具を取り替えることができる。
【００３７】
また、請求項３又は４に記載の発明によれば、冗長マニピュレータの先端軸に回転工具を取り付ける際には、目標先端位置姿勢値から求められた各軸の軸角速度指令値のうち、先端軸の軸角速度指令値を先端軸に出力せず、先端軸の軸角速度指令値から先端軸の予想軸角度を生成し、先端軸の予想軸角度と冗長マニピュレータの先端軸以外の現在の軸角度とから現在先端位置姿勢値を求め、目標先端位置姿勢値と現在先端位置姿勢値を比較するので、冗長マニピュレータの先端軸に回転工具を取り付けても、冗長マニピュレータの冗長性を確保することができる。また、冗長マニピュレータに回転工具以外の工具を取り付けた場合における制御方法又は制御装置を用いて、この冗長マニピュレータの先端軸に回転工具を取り付けた場合における冗長マニピュレータの制御を容易に行うことができる。
【００３８】
また、請求項５に記載の発明によれば、制御プログラムをコンピュータに読み取らせて実行することによって、請求項４に記載の制御方法をコンピュータを利用して実現することができ、この方法と同様の効果を得ることができる。
【００３９】
また、請求項６に記載の発明によれば、回転工具の回転運動をさせるために必要な駆動装置を別個設ける必要がなく、冗長マニピュレータの先端の重量を増加させないで、回転工具を装着することができる。また、冗長マニピュレータに回転工具以外の工具を取り付けた場合における制御装置を用いて、この冗長マニピュレータの先端軸に回転工具を取り付けた場合における冗長マニピュレータの制御を容易に行うことができる。これにより、冗長マニピュレータの冗長性及び汎用性を確保するとともに、冗長マニピュレータの各軸の駆動装置の寿命を延ばすことができる。
【図面の簡単な説明】
【図１】この発明にかかる冗長マニピュレータシステムの概略構成例を示す図である。
【図２】冗長マニピュレータの先端の概略構成例を示す図であり、同図（ａ）は従来の冗長マニピュレータの先端に回転工具を取り付けた状態、同図（ｂ）はこの発明にかかる冗長マニピュレータの先端に回転工具を取り付けた状態、同図（ｃ）はこの発明にかかる冗長マニピュレータ先端に回転工具以外の工具を取り付けた状態を示す図である。
【図３】この発明にかかる冗長マニピュレータの制御ブロック図である。
【符号の説明】
１　　　　　冗長マニピュレータ
２　　　　　コネクタ
３　　　　　肩部
４　　　　　上腕部
５　　　　　肘部
６　　　　　下腕部
７　　　　　手首部
８　　　　　ドリル
９　　　　　ハンド
１０　　　　制御装置
１１　　　　目標先端位置姿勢値設定手段
１２　　　　比較手段
１３　　　　位置制御ゲイン
１４　　　　軸角速度変換手段
１５　　　　ヤコビ行列及び擬似逆ヤコビ行列生成手段
１６　　　　先端位置姿勢座標変換手段
１７　　　　先端軸角度生成手段
２０　　　　サーボドライバ
３０　　　　モータ
３１　　　　減速機
３２　　　　メカニカルインターフェース
３３　　　　回転工具用アタッチメント
４０　　　　モータ
【図１】
2004090111.tif 000003
【図２】
2004090111.tif 000004
【図３】
2004090111.tif 000005