JPH10329066A - 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法 - Google Patents

冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法

Info

Publication number
JPH10329066A
JPH10329066A JP13531297A JP13531297A JPH10329066A JP H10329066 A JPH10329066 A JP H10329066A JP 13531297 A JP13531297 A JP 13531297A JP 13531297 A JP13531297 A JP 13531297A JP H10329066 A JPH10329066 A JP H10329066A
Authority
JP
Japan
Prior art keywords
posture
redundant manipulator
singular
determinant
manipulator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP13531297A
Other languages
English (en)
Inventor
Noriko Endo
紀子 遠藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP13531297A priority Critical patent/JPH10329066A/ja
Publication of JPH10329066A publication Critical patent/JPH10329066A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

(57)【要約】 【課題】冗長マニピュレータの特異姿勢を検知すること
ができる冗長マニピュレータの特異姿勢検知方法を提供
する。 【解決手段】少なくとも7つの軸を有する冗長マニピュ
レータの特異姿勢検知方法において、冗長マニピュレー
タの各関節角速度θ′と手先位置姿勢速度r′との関係
を示すヤコビ行列の行列式(デターミナント)Dを求め
(ステップS21)、さらにデターミナントDの微分値
D′を求めて(ステップS22)、この結果により、デ
ターミナントDが連続α回の減少傾向で(ステップS2
3)、かつ関節角速度θ′がリミット速度のβ%以上の
大きい値になっていいるとき(ステップS24)、冗長
マニピュレータの手先位置が特異点近傍空間内にあり、
全体の姿勢が特異姿勢に近づいていると判断する(ステ
ップS25)。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、例えば7軸以上の
多軸リンク構造からなるロボットに適用される冗長マニ
ピュレータの特異姿勢検知方法および特異姿勢回避方法
に関する。
【0002】
【従来の技術】従来から、マニピュレータを駆動すると
きは手先位置姿勢を指示して各軸角速度を制御すること
が一般的であるが、このとき、マニピュレータ全体の姿
勢を特異姿勢から遠ざけなければならないことが知られ
ている。
【0003】マニピュレータの特異姿勢とは、各軸角度
が特定の組合せになったとき、ある方向に手先位置姿勢
を動かすことが問題となるような姿勢のことをいい、マ
ニピュレータが特異姿勢になったときは、暴走などを防
ぐためにその特定の方向に手先を動かすことができなく
なってしまう。なお、マニピュレータが特異姿勢になっ
たときの手先位置を特異点といっている。
【0004】この場合、マニピュレータの姿勢が特異姿
勢に近づくこと、すなわち手先位置が特異点近傍に近づ
くことだけでも問題があり、例えば手先位置姿勢に対応
する各軸角速度を数学的に求めるとき、それらの解が数
学上求められなくなったり、誤って非常に大きな値を算
出するといったことが起こり、後者の場合は軸が高速回
転してマニピュレータが暴走してしまう。
【0005】ここで、図8に示されるように6つの軸7
1〜76およびハンド77を備えたマニピュレータ70
では、図9に示されるような3つの特異姿勢が例として
考えられる。この場合、(a)は手首特異姿勢を示して
おり、軸74と軸76とが一直線上で、この姿勢からハ
ンド77すなわち、手先をY方向に移動させるか、手先
をY方向に移動させながらこの姿勢を通過しようとする
と、軸74,76に逆方向で非常に大きい軸角速度が指
令され、マニピュレータが暴走する。このとき、手先を
Z方向に移動させたとしても暴走は起こらない。同様
に、(b)は軸72,75が一直線上にある肩特異姿
勢、(c)は軸71,73,75が一直線上にある肘特
異姿勢を示しており、それぞれ特定の方向に手先を移動
させるたときにマニピュレータが暴走がする。
【0006】ここで、図10に示されるように、異なる
特異姿勢をドット81,82で表わすならば、各特異姿
勢に対応する特異点近傍はドット81,82を含む大き
さの異なる領域83,84によって表される。つまり、
あるマニピュレータについて複数の特異姿勢が存在した
とき、特異点近傍の大きさや形は特異姿勢毎にそれぞれ
異なり、手先が特異点へと向かう方向によっても変化す
る。
【0007】ところで、従来から6軸以下のマニピュレ
ータの特異姿勢は有限個で、手先位置姿勢速度と軸角速
度との関係を示すヤコビ行列Jに着目すると、行列式
detJ=0という条件で各特異姿勢に対応する各軸
角度が一意に決まり、これらを数学的に算出できること
が知られている。
【0008】このため、従来は6軸以下のマニピュレー
タを駆動する場合、特異姿勢となる各軸角度の組み合わ
せを予め求めておき、これらの値を駆動中の各軸角度と
比較することにより、マニピュレータが特異姿勢になる
ことを検知している。
【0009】また、マニピュレータを駆動しながらヤコ
ビ行列Jの特異値分解を行うことにより、ヤコビ行列
Jの行列特性を求め、その結果に基づいてマニピュレ
ータが特異姿勢になることを検知する特異姿勢検知方法
もある。この場合、特異値分解の結果からヤコビ行列
Jの行列式detJを求め、その値が0に近づけば
特異姿勢(行列特性が低下している)に近づいていると
判定する。
【0010】一方、6軸以下のマニピュレータの特異姿
勢が一意に決まることから、従来の6軸以下のマニピュ
レータの特異姿勢回避方法として、予めマニピュレータ
が特異姿勢とならないように作業軌道を設定しておく方
法や、逆に設定された作業軌道内で特異姿勢とならない
ようにマニピュレータのリンク長およびリンク構成を設
定する方法が知られている。
【0011】
【発明が解決しようとする課題】上述した従来の特異姿
勢検知方法のうち、予め求めておいた特異姿勢に対応す
る軸角度と実際の軸角度を比較する方法は、マニピュレ
ータの特異姿勢が有限で一意に決定されることを前提と
しているため、7軸以上の軸を有するマニピュレータ
(以下、冗長マニピュレータと称する)には適用するこ
とができないという問題がある。これは、冗長マニピュ
レータでは、手先位置姿勢が決まっても、それを満たす
多くの軸角度の組合せが存在し、それだけでは全体の姿
勢が決定されないため、6軸以下のマニピュレータのよ
うに特異姿勢を数学的に求めることができないことが原
因となっている。
【0012】また、ヤコビ行列Jの特異値分解を行っ
て行列式detJを求める方法では、特異値分解のた
めに複雑な演算が必要であり、処理に時間がかかるとい
う問題がある。また、行列式detJが0に近づいて
いるか否かを判定するための判定値は、特異姿勢毎にか
なりのバラつきがあり一意に決めることはできない。仮
に、適切な判定値が得られたとしても、行列式det
Jの値のみに着目し、特異点近傍の大きさの違いや手
先が特異点に向かう方向などを考慮していないため、検
知が遅れてマニピュレータが暴走してしまったり、暴走
の起こらない方向から手先が近づいた場合を異常と検知
することもある。
【0013】一方、従来の特異姿勢回避方法も、マニピ
ュレータの特異姿勢が有限で一意に求められることを前
提としているため、冗長マニピュレータに適用すること
ができないという問題がある。また、複雑な特異姿勢の
データに基づいて作業軌道やリンク構成を予め設定しな
ければならないため、経験の豊かな者でないと設定を行
えず、設定自体にも多くの時間を必要とする。さらに、
作業の一つ一つに対応しなければならないため、汎用的
にマニピュレータを使用するには不向きで、しかも最終
的に設定された作業軌道には、所望とする作業本来の軌
道に比べて余分な動き、例えば軌道の変更などが含まれ
ているため、その分だけ余計な作業時間がかかるという
問題がある。
【0014】本発明は、このような問題を解決するため
になされたもので、7軸以上の冗長マニピュレータの特
異姿勢を検知することができる冗長マニピュレータの特
異姿勢検知方法を提供することを目的とする。
【0015】また、本発明の他の目的は7軸以上の冗長
マニピュレータを特異姿勢を回避させながら駆動するこ
とができる冗長マニピュレータの特異姿勢回避方法を提
供することにある。
【0016】
【課題を解決するための手段】本発明の冗長マニピュレ
ータの特異姿勢検知方法は、少なくとも7つの軸を有す
る冗長マニピュレータの特異姿勢検知方法において、冗
長マニピュレータの各軸角速度と手先位置姿勢速度との
関係を示すヤコビ行列式Jとその転置行列式JT
の積JJT の次式に示すデターミナントD
【0017】
【数3】 の減少傾向および冗長マニピュレータの各軸角速度に基
づいて、冗長マニピュレータの姿勢が特異姿勢に近づい
ていることを検知する。このとき、行列式の値の減少傾
向は、行列式の微分値の変化に基づいて判断することが
望ましい。
【0018】また、本発明の冗長マニピュレータの特異
姿勢回避方法は、少なくとも7つの軸を有する冗長マニ
ピュレータの特異姿勢回避方法において、冗長マニピュ
レータの各軸角速度と手先位置姿勢速度との関係を示す
ヤコビ行列式Jとその転置行列式JT との積J
T の次式に示すデターミナントD
【0019】
【数4】 の減少傾向および冗長マニピュレータの各軸角速度に基
づいて、冗長マニピュレータの姿勢が特異姿勢に近づい
ているか否かを検知し、冗長マニピュレータの姿勢が特
異姿勢に近づいていると検知されたとき、行列式の値が
増加するように冗長マニピュレータを制御する第1の特
異姿勢回避方法と、冗長マニピュレータの各軸角速度を
減少させる第2の特異姿勢回避方法とを組み合わせて行
うことにより、冗長マニピュレータの姿勢を特異姿勢か
ら回避する。
【0020】
【発明の実施の形態】図1は、本発明の一実施形態に係
る冗長マニピュレータの特異姿勢検知方法および特異姿
勢回避方法を適用した冗長マニピュレータの制御方法を
示すフローチャートであり、図2はこのフローチャート
に従って制御される冗長マニピュレータの構成を示して
いる。
【0021】図2に示されるとおり、この冗長マニピュ
レータは7つの軸(関節)2,4,6,8,10,1
2,14を備えた7自由度のマニピュレータである。ベ
ース面16にアーム1が設置され、このアーム1から軸
2を介してアーム3が設けられ、アーム3から軸4を介
してアーム5が設けられている。アーム5からは、軸6
を介してアーム7が設けられており、アーム7からは軸
8を介してアーム9が設けられている。アーム9から
は、軸10を介してアーム11が設けられており、アー
ム11からは軸12を介してアーム13が設けられてい
る。アーム13からは軸14を介してハンド15が設け
られている。ハンド15は、この冗長マニピュレータの
手先として設けられており、塗装作業や溶接作業を行う
ときはハンド15の代わりに塗装ガンや溶接トーチを設
置してもよい。
【0022】7つの軸2,4,6,8,10,12,1
4のなかで軸6は、この冗長マニピュレータにおいて姿
勢を決定するキーとなる軸、すなわち冗長軸である。冗
長マニピュレータ全体の冗長性は、冗長軸である軸6の
軌跡となって現れ、軸6を制御することによって手先位
置姿勢を変えずに全体の姿勢を変えることができるよう
になっている。ただし、マニピュレータのリンク構成、
軸数によって冗長軸となる軸は変化する。
【0023】このような冗長マニピュレータを駆動する
場合、手先位置および手先姿勢をそれぞれ3要素のデー
タで示した計6要素のデータからなる手先位置姿勢値を
定義し、所望とする手先位置姿勢の軌道に従った幾つか
のポイントの手先位置姿勢値を予め冗長マニピュレータ
に与えておく。
【0024】この場合、冗長マニピュレータは一定のサ
ンプリング周期で(ここでは10msとする)、その時
の手先位置姿勢値と与えられた手先位置姿勢値とを比較
して、手先位置姿勢に対応した6要素の手先位置姿勢速
度r′を求める(ステップS1)。
【0025】次に、手先位置姿勢速度r′と各軸2,
4,6,8,10,12,14の軸角速度(以下、関節
角速度と称する)θ′との関係を示すヤコビ行列Jを
求める(ステップS2)。このヤコビ行列Jを用いる
ことで、手先位置姿勢速度r′と関節角速度θ′とは関
係式r′=Jθ′によって表される。ただし、手先位
置姿勢速度r′は6要素で、関節角速度θ′は7要素で
あるため、ヤコビ行列Jは6×7行列となる。
【0026】次に、この関係式r′=Jθ′を変形し
て得られる次式によって、手先位置姿勢速度r′から関
節角速度θ′を求める(ステップS3)。 θ′=J# ・r′+(Ι−J# ・J)・ξ(θ)・K ……(1) ただし、J# は7×6疑似ヤコビ行列、ξ(θ)は評
価関数と呼ばれる7×1方向ベクトル、Kは任意のスカ
ラー値である。また、右辺第1項目のJ# ・r′は特
殊解と呼ばれ、冗長マニピュレータを目標とする手先位
置姿勢に移動させるための最も移動量が小さい解であ
り、手先位置姿勢速度r′によって一意に決まる。ま
た、右辺第2項の(Ι−J# ・J)・ξ(θ)・K
は同次項と呼ばれ、この値によって冗長マニピュレータ
の手先位置姿勢は変わらずに、冗長マニピュレータ全体
の姿勢(肘の位置)のみが変化する。同次項のうち評価
関数ξ(θ)によって冗長マニピュレータ全体の姿勢が
定まる。すなわち、この評価関数ξ(θ)の値を調節す
ることにより、冗長マニピュレータの冗長性を制御する
ことができ、同じ手先位置姿勢のままで無限個の姿勢を
とることができる。
【0027】ここでは、予め設定された条件に従って評
価関数ξ(θ)を適当に決定し、それに対応する関節角
速度θ′で冗長マニピュレータを駆動して、後述するよ
うにして手先位置が特異点近傍に近づいているか否かを
検知する(ステップS4)。
【0028】このとき、冗長マニピュレータの手先位置
が特異点近傍に近づいていなければ(ステップS5でN
o)、そのまま通常通りに冗長マニピュレータを駆動
し、手先位置が特異点近傍に近づいていれば(ステップ
S5でYes)、後述するように冗長マニピュレータの
冗長性を利用して、手先位置姿勢の軌道そのものは変化
させることなく、冗長マニピュレータの姿勢のみを変化
させて冗長マニピュレータを特異姿勢から回避させる
(ステップS6)。
【0029】このようなステップS1〜ステップS6の
処理をサンプリング周期毎に繰り返すことによって、冗
長マニピュレータが特異姿勢に近づいているか否かを自
動的に検知し、特異姿勢に近づいているときはそれを回
避しながら冗長マニピュレータを駆動して、最終的な目
標まで手先位置姿勢を変化させる。
【0030】次に、ステップS4で示される特異姿勢検
知処理について、図3のフローチャートを参照して詳細
に説明する。この場合、まず特異点近傍を検知するため
のデータの一つとして、図1中のステップS2で得られ
たヤコビ行列Jの行列式(以下、デターミナントと称
する)Dを求める(ステップS21)。このとき、冗長
性のない6軸以下のマニピュレータであればヤコビ行列
Jは6×6の正方行列となるが、7軸の冗長マニピュ
レータののときはヤコビ行列Jは6×7であり正方行
列ではないので、ヤコビ行列Jとその転置行列JT
とによりデターミナントDは次式のように定義される。
【0031】
【数5】
【0032】この定義に従ってデターミナントDを算出
する方法の一つとして、特異値分解を行って固有値を求
め、求められた固有値からデターミナントDを得る方法
がある。しかし、この方法では処理に非常に時間がかか
り、サンプリング周期の10ms毎にデターミナントD
を求めることは難しい。そこで、以下に述べるようにガ
ウス・ザイデル法を用い、最小限の計算量でデターミナ
ントDを求める。具体的には、まずヤコビ行列Jとそ
の転置行列JT とを掛け合わせて、次式に示されるよ
うな6×6行列J×JT を求める。
【0033】
【数6】
【0034】次に、行列J×JT の1列目要素(A
11,A21,A31,A41,A51,A61)のなかから絶対値
の最も大きい要素(ピボットと呼ぶ)を探し、ピボット
の存在する行を1行目と交換する。例えば、要素A31
ピボットであったとすると、次式に示されるように3行
目と1行目とが交換される。
【0035】
【数7】
【0036】次に、1列目のピボット以下の要素の値が
すべて0になるように行列演算を行う。先の例と同様
に、要素A31がピボットであったとすると、2行目の各
要素に対しては次式のような行列演算が行われる。 2行目1列:A21−A31×A21/A31=0 2行目2列:A22−A32×A21/A31=B11 2行目3列:A23−A33×A21/A31=B12 2行目4列:A24−A34×A21/A31=B13 2行目5列:A25−A35×A21/A31=B14 2行目6列:A26−A36×A21/A31=B15 以下同様に、3行目以下の各要素についても演算を行
い、行列J×JT を次式に示されるように変形す
る。
【0037】
【数8】
【0038】次に、行列J×JT のうち0でない値
を有する要素Bij(i=1〜5,j=1〜5)の部分を
対象として、同様にピボット探索、行交換、ピボット列
の要素消去を行って要素Cij(i=1〜4,j=1〜
4)を求める。そして、以下同じように処理を繰り返す
ことにより、行列J×JT を最終的に次式に示され
るような右上三角行列に変形する。
【0039】
【数9】
【0040】この場合、対角要素A1 ,B1 ,C1 ,D
1 ,E1 ,F1 を互いに掛け合わせた値がデターミナン
トDとなる。つまり、デターミナントDは次式のように
示される。
【0041】D=A1 ×B1 ×C1 ×D1 ×E1 ×F1 このデターミナントDが0のとき冗長マニピュレータが
特異姿勢、つまり手先位置が特異点となることから、理
論上は冗長マニピュレータの暴走が起こり得る特異点近
傍とそれ以外の領域とを区別するためにデターミナント
Dの境界値を適当に設定しておき、その境界値と実際の
デターミナントDの値を比較して、冗長マニピュレータ
の手先位置が特異点近傍にあるか否かを検知すればよ
い。
【0042】しかし、特異点近傍の大きさは特異姿勢毎
に異なり、手先が特異点に向かう向きによっても変化す
ることから、通常はそのような境界値を設定することが
難しく、またデターミナントDの値が12ケタの正数で
あっても、冗長マニピュレータが特異姿勢となって暴走
することもある。
【0043】そこで、さらにターミナントDの微分値
D′を求め(ステップS22)、この微分値D′に基づ
いてデターミナントDの時間的変化、特に減少傾向を調
べ、その結果から以下のようにして冗長マニピュレータ
の手先位置が特異点近傍に近づいているか否かを判断す
る。
【0044】ここで、この冗長マニピュレータが駆動中
に特異姿勢となり暴走したときのデターミナントDとそ
の微分値D′を調べておき、その結果が図4に示される
ようになったとする。(a)はデターミナントD、
(b)はその微分値D′の時間的変化を示し、それぞれ
横軸は時間t、縦軸はデターミナントDもしくは微分値
D′の値を表しており、(a)において線21がデター
ミナントDを示し、線22がエラーを示している。
【0045】この場合、時間t=t1において暴走が起
こっており、それまでのデターミナントDの時間的変化
を調べると、連続してデターミナントDが減少し、微分
値D′(減少率)は増大しながら徐々に特異姿勢に近づ
いている。また、暴走する直前の時間t=t2において
微分値D′が最小値に達している。このとき、関節角速
度θ′は冗長マニピュレータのモータが有するリミット
速度の約30%といった非常に大きな値になっている。
すなわち、冗長マニピュレータの手先位置が特異点近傍
に近づくと、デターミナントDが連続して減少し、関節
角速度θ′が異常に増大することがわかる。
【0046】従って、これらデターミナントDの増減
や、関節角速度θ′の大きさに着目すれば、デターミナ
ントDの値のみに着目したときに比べて、より適切に特
異姿勢検知を行うことができると考えられる。しかし、
上述したように特異点近傍の大きさは特異姿勢によって
それぞれ異なり、特異点に向かう方向によっても変化す
るので、これらの値に着目したとしても、どの時点を特
異点近傍とするかは後述する特異姿勢回避法との関わり
もあって一意には決められない。一方、一般的に考えて
特異姿勢回避が容易にできるような、暴走の危険の小さ
い段階を特異点近傍と判断しておいた方がよいと思われ
る。
【0047】そこで、本実施形態では図5に示されるよ
うにポイントAからBまでの間に特異点Sが存在したと
き、その特異点Sから外に広がる5つの特異点近傍空
間、すなわち暴走する危険の高い順に第1の特異点近傍
空間31、第2の特異点近傍空間32、第3の特異点近
傍空間33、第4の特異点近傍空間34および第5の特
異点近傍空間35を設定する。そして、第1から第5の
特異点近傍空間をそれぞれ特異点近傍段階1〜5に対応
させ、各特異点近傍段階に対して図6に示されるような
特異点近傍検知判断条件を定めて、手先位置が特異点近
傍に近づいているか否かを段階的に検知する。なお、図
6には後述する各特異点近傍段階に対応する特異姿勢回
避方法も併せて示されている。
【0048】この場合、ステップS23においてデター
ミナントDの時間的な変化を調べ、デターミナントDが
連続100回(α=100)以上減少し、かつ関節角速
度θ′の要素の一つでもリミット速度のβ%(β=1,
5,8,12,15)を越えていれば(ステップS24
でYes)、手先位置が上述した第1から第5のいずれ
かの特異点近傍空間内であると判断し(ステップS2
5)、そのときの関節角速度θ′の値に従って特異点近
傍段階(1〜5)を決める(ステップS26)。
【0049】この際、最初にデターミナントDが連続1
00回以上減少し、かつ関節角速度θ′の要素がリミッ
ト速度の1%を越えたとき、手先位置が特異点近傍空間
外から特異点近傍空間35に入ったものとして特異点近
傍段階を5に設定する。さらに、デターミナントDが連
続100回以上減少し、関節角速度θ′の要素が1つで
もリミット速度の5%を越えたとき、特異点近傍段階を
4に設定するといったように、特異点近傍段階を5から
1まで段階的に一つづつ変化させる。
【0050】なお、αおよびβの値は、冗長マニピュレ
ータやその移動データに依存しており、冗長マニピュレ
ータの特性、作業内容の特性などによって調整可能なパ
ラメータである。例えば、もうすこし早い時点で特異点
近傍に入ったことを検知したい場合は、これらα,βの
値を小さくすればよい。
【0051】一方、ステップS23でデターミナントD
の時間的な変化を調べた結果、デターミナントDが連続
100回(α=100)以上増大していたときは、逆に
手先位置が特異点近傍空間の外側に向かっていると判断
し(このときは関節角速度θ′に関する条件はない)、
特異点近傍段階を一つ戻す(ステップS28)。
【0052】次に、上述したようにして冗長マニピュレ
ータの手先位置が特異点近傍にあると検知されたときの
特異姿勢回避処理について詳細に説明する。この場合、
デターミナントDが連続して減少しており、関節角速度
θ′が大きくなっている状態である。
【0053】このとき、デターミナントDが増加するよ
うに冗長マニピュレータを制御する第1の特異姿勢回避
方法と、冗長マニピュレータの手先位置姿勢速度r′を
減少させる第2の特異姿勢回避方法とを組み合わせて用
いることを考える。
【0054】第1の特異姿勢回避方法の場合、冗長マニ
ピュレータの冗長性を利用して、(1)式に含まれる評
価関数ξ(θ)を適当に調節することにより、デターミ
ナントDが増加し、全体の姿勢が向かいつつある特異姿
勢とは逆の姿勢になるように、すなわち手先位置を特異
点に向かう方法とは逆方向に移動させる。このとき、手
先位置姿勢の変化を一旦停止させ、冗長マニピュレータ
全体の姿勢を特異姿勢から遠ざけるようにすることで、
手先位置姿勢の軌道を変えることなくデターミナントD
を増加方向に向かわせる。
【0055】一方、第2の特異姿勢回避方法の場合、冗
長マニピュレータを通常状態で駆動していたとき、サン
プリング周期毎に現在位置から次の目標値まで一定速度
で到達できるように分割して得られた1サンプリング毎
の手先位置姿勢速度r′を、さらに細かく分割すること
により手先位置姿勢速度r′を減少させて、対応する関
節角速度θ′を小さくする。ただし、速度を減少させる
ので、作業にかかる時間そのものは少し増大する。
【0056】ここで、これらの第1および第2の特異姿
勢回避方法は、図6に示されるように手先位置の特異点
近傍段階に応じて組み合わされる。つまり、暴走の危険
性が最も小さい特異点近傍段階5では、まず第2の特異
姿勢回避方法を用いて通常速度の0.1倍に手先位置姿
勢速度r′を落とす。次の、特異点近傍段階4では一定
時間(例えば1s)の間だけ第1の特異姿勢回避方法を
用いて、冗長マニピュレータ全体の姿勢を特異姿勢から
遠ざける。特異点近傍段階3,2,1では、第1および
第2の特異点回避方法を共に用いることにより、冗長マ
ニピュレータ全体の姿勢を特異姿勢から遠ざけたまま、
手先位置姿勢速度r′をさらに落とす。
【0057】このようにして、第1および第2の特異姿
勢回避方法を組み合わせて用いながら冗長マニピュレー
タを駆動した場合、デターミナントDおよびその微分値
D′の変化は図7に示されるようになる。ここで、
(a)はデターミナントD、(b)はその微分値D′の
時間的変化を示し、それぞれ横軸は時間t、縦軸はデタ
ーミナントDもしくは微分値D′の値を表している。
【0058】同図に示されるように、上述した特異姿勢
回避方法を用いなかったときは、点線42に示されるよ
うにデターミナントDが急激に減少して暴走が起こって
いるのに対し、特異姿勢回避方法を用いたときは、実線
42で示されるようにt=t1において特異点近傍段階
が5になり、t=t2において特異点近傍段階が4にな
り、t=3において特異点近傍段階が3になり、t=4
において特異点近傍段階が4になり、t=5において特
異点近傍段階が5になるといったように、手先位置が徐
々に特異点に近づいていき、それ以後はt=t6におい
て特異点近傍段階が2に戻り、さらにt=7において特
異点近傍段階が3に戻って、以下特異点から徐々に遠ざ
かっている。
【0059】このように、各特異点近傍段階において第
1および第2の特異姿勢回避方法を組み合わせて用いた
ことにより、冗長マニピュレータを暴走させることな
く、手先位置姿勢が軌道を変えずに目標地点まで到達す
る。
【0060】以上のように、本実施形態の特異姿勢検知
方法によれば、ヤコビ行列JのデターミナントDとそ
の微分値D′とを算出して、デターミナントDの時間的
な増減傾向を調べ、デターミナントDがα回連続に減少
し、かつ関節角速度θ′がリミット速度のβ%といった
大きな値になっているとき、冗長マニピュレータが特異
姿勢に近づいているものと検知する。
【0061】すなわち、デターミナントDの値だけで特
異姿勢検知を行うのではなく、その微分値D′と各関節
各速度θ′との関係を調べることによって、特異姿勢が
一意に求められないような7軸以上の冗長マニピュレー
タでも特異姿勢検知を行うことができる。しかも、マニ
ピュレータの移動方向によって異なる特異点近傍の境界
を考慮しているので、手先位置が暴走の起こらない方向
から特異点に近づいた場合などは無視され、常に適切に
特異姿勢検知を行うことができる。
【0062】一方、本実施形態の特異姿勢回避方法によ
れば、冗長マニピュレータの冗長性を利用して特異姿勢
を回避しているので、予め特異姿勢を求めておくことが
できない冗長マニピュレータでも特異姿勢を回避するこ
とができる。しかも、冗長軸を用いることによって、手
先位置姿勢を変化させずに全体の姿勢を変化させている
ので、従来のように手先位置姿勢の無駄な軌道変更が必
要なくなる。
【0063】また、冗長マニピュレータが特異姿勢に近
づいたことを自動的に検知して特異姿勢回避を行い、特
異姿勢の近傍を通過した後は自動的に特異姿勢回避を終
了して通常通りの制御に戻るようにして、リアルタイム
で冗長マニピュレータの特異姿勢回避を行っている。つ
まり、従来6軸以下のマニピュレータに対して行ってい
たように、マニピュレータのリンク構成やリンク長の調
整、作業内容の調整などを予め行っておく必要がなくな
り、作業者は特異姿勢回避に関わる処理を全てマニピュ
レータに任せ、特異姿勢のことは全く考慮せずに作業軌
道を決めることができる。従って、経験の浅い作業者で
も冗長マニピュレータのティーチング作業を簡単に行え
るようになり、作業時間が短縮され、作業員の数も軽減
する。
【0064】この結果、冗長マニピュレータによる作業
全般、すなわち溶接作業や塗装作業、さらに複雑な障害
物を回避する作業など汎用マニピュレータに必要とされ
る様々な作業を従来よりも容易、かつ適切に行うことが
できる。
【0065】
【発明の効果】以上述べたように、本発明にかかる冗長
マニピュレータの特異姿勢検知方法によれば、冗長マニ
ピュレータの各軸角速度と手先位置姿勢速度との関係を
示すヤコビ行列の行列式の値の減少傾向および冗長マニ
ピュレータの各軸角速度に基づいて、冗長マニピュレー
タの姿勢が特異姿勢に近づいていることを検知している
ので、7軸以上の冗長マニピュレータでも特異姿勢検知
を行うことができ、しかも冗長マニピュレータの移動方
向によって異なる特異点近傍を考慮できるので、従来の
6軸マニピュレータに適用されていた特異姿勢検知方法
に比べて、適切に特異姿勢検知を行うことが可能にな
る。
【0066】また、本発明にかかる冗長マニピュレータ
の特異姿勢回避方法によれば、上述した特異姿勢検知方
法によってマニピュレータの姿勢が特異姿勢に近づいて
いると検知されたとき、行列式の値が増加するように冗
長マニピュレータを制御する第1の特異姿勢回避方法
と、冗長マニピュレータの各軸角速度を減少させる第2
の特異姿勢回避方法とを組み合わせて行うことにより、
冗長マニピュレータでも特異姿勢回避を行うことができ
るようになる。しかも、冗長マニピュレータの冗長性を
利用して、手先位置姿勢を保ったまま全体の姿勢を変化
させて、リアルタイムで冗長マニピュレータを特異姿勢
から回避させているので、従来のように予めマニピュレ
ータの特異姿勢を調べてリンク構成や作業経路の設定を
行う必要がなくなり、冗長マニピュレータを用いた作業
を容易かつ短時間で行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る冗長マニピュレータ
の特異姿勢検知方法および特異姿勢回避方法を適用した
冗長マニピュレータの制御を示すフローチャート
【図2】図1に示されるフローチャートにしたがって制
御される冗長マニピュレータの構成を示す図
【図3】図1中の特徴点近傍検知処理を説明するための
フローチャート
【図4】図2に示される冗長マニピュレータが暴走した
ときのデターミナントとその微分値の変化の例を示す図
【図5】同実施形態における特異点近傍段階について説
明するための図
【図6】同実施形態における特異点近傍段階の各段階の
条件データおよび特異姿勢回避
【図7】同実施形態の制御方法を適用したときの冗長マ
ニピュレータのデターミナントとその微分値を示す図
【図8】従来の6軸マニピュレータのリンク構成の例を
示す図
【図9】図8に示したマニピュレータの特異姿勢の例を
示す図
【図10】従来のマニピュレータにおいて特異姿勢と特
異点近傍の大きさとの関係を説明するための図
【符号の説明】
1,3,5,7,9,11,13…アーム 2,4,6,8,10,12,14…軸 15…ハンド 16…ベース面

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】少なくとも7つの軸を有する冗長マニピュ
    レータの特異姿勢検知方法において、 前記冗長マニピュレータの各軸角速度と手先位置姿勢速
    度との関係を示すヤコビ行列式Jとその転置行列式
    T との積JJT の次式に示すデターミナントD 【数1】 の減少傾向および前記冗長マニピュレータの各軸角速度
    に基づいて、前記冗長マニピュレータの姿勢が特異姿勢
    に近づいていることを検知することを特徴とする冗長マ
    ニピュレータの特異姿勢検知方法。
  2. 【請求項2】前記デターミナントDの減少傾向は、前記
    デターミナントDの微分値の変化に基づいて判断するこ
    とを特徴とする請求項1に記載の冗長マニピュレータの
    特異姿勢検知方法。
  3. 【請求項3】少なくとも7つの軸を有する冗長マニピュ
    レータの特異姿勢回避方法において、 前記冗長マニピュレータの各軸角速度と手先位置姿勢速
    度との関係を示すヤコビ行列式Jとその転置行列式
    T との積JJT の次式に示すデターミナントD 【数2】 の減少傾向および前記冗長マニピュレータの各軸角速度
    に基づいて前記冗長マニピュレータの姿勢が特異姿勢に
    近づいているか否かを検知し、 前記冗長マニピュレータの姿勢が特異姿勢に近づいてい
    ると検知されたとき、前記行列式の値が増加するように
    前記冗長マニピュレータを制御する第1の特異姿勢回避
    方法と、前記冗長マニピュレータの各軸角速度を減少さ
    せる第2の特異姿勢回避方法とを組み合わせて行うこと
    により、前記冗長マニピュレータを特異姿勢から回避す
    ることを特徴とする冗長マニピュレータの特異姿勢回避
    方法。
JP13531297A 1997-05-26 1997-05-26 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法 Withdrawn JPH10329066A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13531297A JPH10329066A (ja) 1997-05-26 1997-05-26 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13531297A JPH10329066A (ja) 1997-05-26 1997-05-26 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法

Publications (1)

Publication Number Publication Date
JPH10329066A true JPH10329066A (ja) 1998-12-15

Family

ID=15148799

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13531297A Withdrawn JPH10329066A (ja) 1997-05-26 1997-05-26 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法

Country Status (1)

Country Link
JP (1) JPH10329066A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6261095A (ja) * 1985-09-11 1987-03-17 カシオ計算機株式会社 波形エディット装置
JP2010502454A (ja) * 2006-08-31 2010-01-28 ザ・ボーイング・カンパニー 機械運動学的特異点に対する接近および補正
JP2010537831A (ja) * 2007-08-28 2010-12-09 ザ ユニバーシティー オブ サリー 逆運動学
JP2014140942A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
WO2023238268A1 (ja) * 2022-06-08 2023-12-14 ヤマハ発動機株式会社 ロボットの制御方法およびロボットシステム

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6261095A (ja) * 1985-09-11 1987-03-17 カシオ計算機株式会社 波形エディット装置
JP2010502454A (ja) * 2006-08-31 2010-01-28 ザ・ボーイング・カンパニー 機械運動学的特異点に対する接近および補正
JP2010537831A (ja) * 2007-08-28 2010-12-09 ザ ユニバーシティー オブ サリー 逆運動学
JP2014140942A (ja) * 2013-01-25 2014-08-07 Seiko Epson Corp ロボット制御システム、ロボット、ロボット制御方法及びプログラム
WO2023238268A1 (ja) * 2022-06-08 2023-12-14 ヤマハ発動機株式会社 ロボットの制御方法およびロボットシステム

Similar Documents

Publication Publication Date Title
US6845295B2 (en) Method of controlling a robot through a singularity
Baeten et al. Hybrid vision/force control at corners in planar robotic-contour following
US8600554B2 (en) System and method for robot trajectory generation with continuous accelerations
JP3207728B2 (ja) 冗長マニピュレータの制御方法
Wilson et al. Relative end-effector control using cartesian position based visual servoing
JP5114019B2 (ja) エフェクタの軌道を制御するための方法
KR101479233B1 (ko) 로봇 및 그 협조작업 제어방법
US8560122B2 (en) Teaching and playback method based on control of redundancy resolution for robot and computer-readable medium controlling the same
CN111152224B (zh) 一种双重寻优的机器人运动轨迹优化方法
US20140229006A1 (en) Method And Control Means For Controlling A Robot
CN107351085B (zh) 一种基于多个控制点的空间机器人避撞方法
JPH079606B2 (ja) ロボット制御装置
US7047107B2 (en) Robot control apparatus
KR100253898B1 (ko) 한 평면내 다자유도 스카라형 로봇의 궤적 제어장치 및 궤적제어방법 및 한 평면내 다자유도 스카라형 로봇의 궤적 제어프로그램을 기록한 컴퓨터 판독 가능한 기록매체
JPH10329066A (ja) 冗長マニピュレータの特異姿勢検知方法および特異姿勢回避方法
He et al. High-speed high-accuracy spatial curve tracking using motion primitives in industrial robots
Yang et al. Optimal configuration for mobile robotic grinding of large complex components based on redundant parameters
CN114378830B (zh) 一种机器人腕关节奇异规避方法及***
JP4613539B2 (ja) ロボットの動作計画方法
CN116214495A (zh) 机器人动态运动规划和控制的方法
WO2020149020A1 (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
CN114750149B (zh) 基于输入时延和输出约束的关节型机器人跟踪控制方法
JPH0523982A (ja) ロボツトの制御方法及び装置
Lyu et al. Tool path interpolation and redundancy optimization of manipulator
JP2594546B2 (ja) ロボツトの仮想内部モデルに基づく制御方法

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20040803