[go: up one dir, main page]

JPH0569354A - 多関節リンク機構制御装置 - Google Patents

多関節リンク機構制御装置

Info

Publication number
JPH0569354A
JPH0569354A JP23150291A JP23150291A JPH0569354A JP H0569354 A JPH0569354 A JP H0569354A JP 23150291 A JP23150291 A JP 23150291A JP 23150291 A JP23150291 A JP 23150291A JP H0569354 A JPH0569354 A JP H0569354A
Authority
JP
Japan
Prior art keywords
joint
equation
link mechanism
calculation
joint angle
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.)
Pending
Application number
JP23150291A
Other languages
English (en)
Inventor
Tomoyuki Hamada
朋之 浜田
Takeshi Shibuya
竹志 渋谷
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP23150291A priority Critical patent/JPH0569354A/ja
Publication of JPH0569354A publication Critical patent/JPH0569354A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】多関節リンク機構の運動制御装置に冗長自由度
が存在しても計算可能で、特異点の近傍でも計算が破綻
せず、解の連続性が保たれる汎用的制御装置を提供す
る。 【構成】関節とリンク機構の先端位置を含む平面より目
標位置が上にある場合に関節角度を正の方向に修正し、
下にある場合に負の方向に修正する複数の演算装置1,
2,3と、関節角度と座標変換行列を記憶する共有メモ
リ装置10を設ける。 【効果】汎用的な一つの演算手順により冗長自由度を持
つものも含めて様々なリンク機構の制御を行える。ま
た、特異姿勢の近くでも連続的な機構制御を実現でき
る。さらに、並列計算により高速に制御データを計算で
きる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は複数の関節をもつリンク
機構の運動の制御装置に関する。
【0002】
【従来の技術】多関節リンク機構の制御では、リンク機
構の先端の位置・姿勢が与えられ、それを実現する関節
角度を計算し、これを制御機構に与えることにより運動
の制御を行うことが多い。この先端位置・姿勢から関節
角度を計算する逆変換計算には従来以下のような方法が
とられている。
【0003】第一の方法は、関節角度と先端位置の関係
を与える連立方程式を直接解いて、角度を求める方法で
ある。
【0004】第二の方法は、この連立方程式をヤコビア
ンにより局所線形近似し、ある初期値から繰返し計算に
より再帰的に解を求める方法である。
【0005】また、リンク機構先端の位置・姿勢は六個
のパラメータにより表現される。よってリンク機構の自
由度(独立な関節の数)が七以上存在する場合(冗長自
由度がある場合)には、一般に解を一意に決定すること
はできない。従って、運動エネルギの最小化など何らか
の拘束条件を導入し、疑似的に自由度を落すことにより
計算を行っている。
【0006】
【発明が解決しようとする課題】第一の方法では、連立
方程式は多くの三角関数を含む非線形な方程式となるの
で、解を解析的に求めるのは困難であることが多い。解
が求まる場合についても機構の軸構成に依存した計算手
順となるので汎用性が確保されない。
【0007】第二の方法では、ヤコビアンが正則である
ことが条件となる。ヤコビアンが正則でなくなる特異姿
勢の近傍では、数値計算が破綻しやすく、解が不連続と
なることが多い。これが連続的な機構制御の障害となっ
ている。
【0008】冗長自由度がある場合には、導入する拘束
条件をうまく選ぶ必要がある。
【0009】本発明の目的は、冗長自由度が存在する場
合にも計算可能で、特異点の近傍でも計算が破綻せず、
解の連続性が保たれた制御装置を提供することにある。
【0010】
【課題を解決するための手段】上記目的は、各関節ごと
に独立した角度の増減判定規範を与え、協調的に解を計
算する関節角修正量計算手段により達成される。
【0011】即ち、各関節iに関してある時刻tにおけ
る関節角度をθi(t)、先端位置を目標位置により近付け
るθiの修正量をΔθi(t) とするとき、時刻t+1にお
ける関節角度θi(t+1)を
【0012】
【数1】
【0013】により与える。この操作を各関節ごとに独
立して繰返し行うことにより先端位置を目標位置に近付
ける。
【0014】今、ベクトルzi,ri,xiを図3に示す
ようにそれぞれ第i番目の関節Jiの回転軸方向単位ベ
クトル、Jiから先端位置Rへのベクトル、Jiから目標
位置Xへのベクトルとすると、Δθi(t) は、例えばΔ
θiは以下のように決めればよい。
【0015】
【数2】
【0016】但し、αiは正の修正量、|(zi ri xi)|
は、ベクトルzi,ri,xiを列とする3×3行列の行
列式である。
【0017】
【作用】数2に示した行列式は
【0018】
【数3】
【0019】のように変形できる。これは図3に示すよ
うに関節の回転軸ziと先端位置Rにより決まる平面S
riに対して、目標位置Xが上(表側)にある場合には正
となり、下(裏側)にある場合には負となる。従って、
数1のΔθiは、目標位置がSriより上にある場合には
θi を増加し、下(裏側)にある場合には減少させる操
作を各関節について独立に行いながら先端を目標位置に
近づけていく。
【0020】ベクトルzi,ri,xiは、時刻tにおけ
る各関節の角度θ(t)と目標位置Xが与えられれば計算
できるので
【0021】
【数4】
【0022】と表現できる。但し、
【0023】
【数5】
【0024】とする。以後数4を関節制御関数、数5を
符号判定条件と呼ぶことにする。数4の構造は、制御入
力である関節修正量が状態量である関節角度と先端位置
により陽に表現される形になっている。よって、計算手
順が単純で様々なタイプの制御特性を容易に組み込むこ
とができる。また、陽な表現形式であるため、ヤコビア
ンを用いた場合のような逆行列計算が必要ないので特異
点の近傍でも計算が破綻せず、解の連続性が保たれる。
【0025】数4の構造より関節の修正量決定手順を関
節ごとに独立に与えることができる。よって、冗長自由
度が存在する場合にも計算可能である。
【0026】数2にはリンク機構の軸構成固有の計算手
順は含まれていないので、本発明は任意の軸構成のリン
ク機構に対して適用可能な汎用性を持っている。
【0027】
【実施例】関節制御関数の数4は、単に時刻tにおける
関節角度θ(t)と目標位置X(t)から関節角修正量Δθ
i を決めることを指定するだけで、関数fの形としては
符号判定条件数5が指定する条件を満たす関数であれば
どのような形であっても良い。本発明の実施例として、
fが可変ゲイン型フィードバックタイプの制御を与える
式である場合を以下に示す。
【0028】まず、関節制御関数として
【0029】
【数6】
【0030】なる式を考える。ここでθeiは目標位置に
対する先端位置のずれ量を関節角におけるずれ量に換算
した値、ki(χ) はフィードバックゲインであり、フィ
ードバックゲインは関節感度χiの関数となっている。
θei、kii)、χiはそれぞれ以下のように計算され
る。
【0031】今、ベクトルnri、nxiとして以下のもの
を考えると
【0032】
【数7】
【0033】
【数8】
【0034】nriは、図3において回転軸zi と先端位
置Rにより決定される平面Sriの単位法線ベクトルとな
り、nxi は、図3において回転軸ziと目標位置Xによ
り決定される平面Sxiの単位法線ベクトルとなる。これ
より、先端位置のずれ量の関節角度換算値θeiは以下の
式で与えられる。
【0035】
【数9】
【0036】但し、atan2(x,y)は、x=sinθ,y=cosθ
なるθを与える関数である。また、nri=0、またはn
xi=0の場合にはθei=0とする。θeiは符号判定条件
(5)を満たす関数である。
【0037】次に、関節感度χiは以下のように定義さ
れる。
【0038】図3において、関節iから先端位置Xへの
ベクトルxiが回転軸ziとほとんど平行である場合に
は、関節iの回転は先端位置を目標位置へ近付ける動き
にほとんど寄与しない。その一方で、xi のわずかな変
位に対して関節iが大きく変化し、不必要な回転運動が
生じることがある。そこで、先端位置の動きに対する各
関節の寄与の程度として関節感度を定義し、これにより
フィードバックゲインを調整する。
【0039】関節感度χiは以下の式で与えられる。
【0040】
【数10】
【0041】ここで、ベクトルziとxiのなす角をφと
すると||zi||=1であるので、
【0042】
【数11】
【0043】即ち、関節感度はsinφに他ならない。
【0044】このχiを用いることにより、フィードバ
ックゲインkii)は
【0045】
【数12】
【0046】により計算する。但し、ki0は標準ゲイン
で正の定数である。kii)は非負の値をとる。
【0047】以上により、数5は具体的に
【0048】
【数13】
【0049】の形で与えられる。
【0050】次にnri,nxi等のベクトルを計算するた
めに必要なzi,ri,xiの計算手順を示す。これらは
以下の式により与えられる。
【0051】
【数14】
【0052】
【数15】
【0053】
【数16】
【0054】ここで、Riはリンク機構の根元から関節
iまでのベクトルであり、Rn+1 は根元から先端まで
のベクトルとする。ezはワールド座標系FWのz軸方向
単位ベクトルである。Bi は関節位置を原点として、関
節の回転軸方向をz軸とする関節座標系Fiとワールド
座標系FWとの間の回転変換行列である。FWとFiの間
の座標変換マトリックスをAiとすると、RiはAi の右
端列ベクトルの上三要素で与えられ、BiはAiの左上3
×3部分行列で与えられる。即ち、
【0055】
【数17】
【0056】
【数18】
【0057】となる。
【0058】またFii+1への座標変換マトリックスを
iとすると、Tiは関節角θi の関数となり
【0059】
【数19】
【0060】なる関係がある。
【0061】以上の関係を整理するとθi(t)からθ
i(t+1)を計算する具体的な手順は以下のように示さ
れる。
【0062】
【数20】
【0063】
【数21】
【0064】即ち、時刻tにおける関節角度θ(t)を用
いてAi(t)(i=1...n)を計算し、Ai(t)とAn+1(t)
及びX(t)を用いて各関節制御関数fi を計算する。計
算手順をチャートにまとめたものを図4に示す。図中、
401は、時刻tのデータ、402は時刻t+1のデー
タ、403はデータを参照するタイミング、404はデ
ータが書き換わるタイミングを示す。
【0065】この計算手順による一ステップ当たりの計
算時間Δtは、tf を数20の計算に要する時間、tA
を数21の計算に要する時間とすると
【0066】
【数22】
【0067】となる。Δtは関節数nに比例して長くな
る。
【0068】今、Δtを十分小さく取ることができると
すると、Ai(t)とAi(t+1)はほとんど等しいとみな
すことができるので、数21は
【0069】
【数23】
【0070】と変形できる。これにより計算手順は図5
に示すようになり、計算時間Δtは
【0071】
【数24】
【0072】となり、nにかかわらず一定とすることが
できる。
【0073】以上の計算手順を実行する装置の構成を図
1に示す。
【0074】図において1,2,3は時刻tにおける関
節角度θi(t) ,目標位置X(t),座標変換マトリクス
i(t),An+1(t)より数20,数23に従ってA
i+1(t)と次の時刻t+1における関節角度θi(t+1)
を計算する演算装置である。この演算装置は制御対象
である多関節リンク機構の関節の数だけ用意する。10
は各計算ステップにおけるリンク機構の情報を記憶する
ための共有記憶装置である。その内部は記憶される情報
に応じて領域が分けられている。4,6,8はθi(t)
とX(t)よりベクトルzi,ri,xiを得るための座標
変換行列の時刻tにおける値Ai(t) を記憶するための
記憶領域である。5,7,9は時刻tにおける関節角度
θi(t) を記憶するための領域である。
【0075】演算装置1,2,3において実行される演
算手順を図2に示す。
【0076】今、演算装置2がi番目の関節角を制御す
る演算装置であるとすると、2はまず8に記憶されてい
るAi(t)より数16に従ってziを計算し(ステップ
1)、4に記憶されているAn+1(t)と8に記憶されて
いるAi(t)より数14に従ってriを計算し(ステップ
2)、入力されたX(t)とAi(t)より数15に従って
iを計算する(ステップ3)。次に、ziとxiより数
10に従ってχiを計算し(ステップ4)、xi,ri
iより数9に従ってθeiを計算する(ステップ5)。そ
して、χi,θeiより数6に従って関節制御量、即ち、
Δθiを計算し(ステップ6)、これを7に記憶されて
いる現在の関節角度θi(t) に加えることにより、次の
目標関節角度θi(t+1) を得て、これを7に書き込む
(ステップ7)。また、2は7のθi(t)と8のAi(t)
より数19に従ってAi+1(t) を計算し、これを6に書
き込む(ステップ8)。
【0077】以上の手順により関節角の制御動作が実行
される。
【0078】次に本発明を用いた第二の実施例について
説明する。
【0079】第一の実施例においては、制御装置には一
つの目標位置X(t)が与えられたが、第二の実施例にお
いては図6に示すように、複数の目標位置Xj(t)(j=
1...m)を用意し、複数の関節Jcjの位置を制御する装置
を示す。
【0080】この場合の関節制御関数は以下の式で与え
られる。
【0081】
【数25】
【0082】ここで、aijは正の重み付け定数で、fij
(θ,Xj)は、cj番目の関節Jcjを先端位置とし、X
jを目標位置とした場合の関節制御関数であり、
【0083】
【数26】
【0084】とする。また、Jcmはリンク機構の先端と
する。
【0085】これにより、θi(t)からθi(t+1)を計
算する具体的な手順数20は以下のように修正される。
【0086】
【数27】
【0087】図7に制御装置の構成を示す。図におい
て、4から10までは図1と同様である。501,50
2,503は時刻tにおける関節角度θi(t),目標位置
j(t)(j=1...m),座標変換マトリクスAi(t),A
n+1(t) より数27,数23に従ってAi+1(t)と次の
ステップt+1における関節角度θi(t+1)を計算す
る演算装置である。
【0088】演算装置501,502,503において
実行される演算手順を図8に示す。
【0089】今、演算装置502がi番目の関節角を制
御する演算装置であるとすると、502はまず8に記憶
されているAi(t)より数16に従ってziを計算する
(ステップ1)。次にj=1...mに関して、4に記憶され
ているAn+1(t)とAi(t)より数14に従ってriを計
算し(ステップ2)、入力されたXj(t)とAi(t) よ
りxijを計算し(ステップ3)、ziとxijよりχij
計算し(ステップ4)、xij,ri,ziよりθeijを計
算する(ステップ5)。そして、χij,θeijよりΔθi
を計算し(ステップ6)、これを7に記憶されている現在
の関節角度θi(t)に加えることにより、次の目標関節
角度θi(t+1) を得て、これを7に書き込む(ステッ
プ7)。また、502は7のθi(t)と8のAi(t)より
数19に従ってAi+1(t)を計算し、これを6に書き込
む(ステップ8)。
【0090】以上の手順により複数の目標位置に対する
関節角の制御動作が実行される。
【0091】以上の実施例では、関節制御関数として、
数6に示したような関節角ずれ量にフィードバックゲイ
ンを掛けた形のものを示したが、数6の構造としては数
5を満たす限り様々なタイプのものを用いることができ
る。
【0092】以上の実施例で演算装置1,2,3(ある
いは501,502,503)は、独立なものであると
したが、これらの演算装置で行われる演算は一つの演算
装置で行っても良い。但し、その場合高速な演算速度は
望めない。座標変換行列を記憶する領域4,6,8は演
算装置の内部に備えられた記憶領域であっても良い。関
節角度を記憶する領域5,7,9は関節角度検出装置と
関節駆動装置であっても良い。この場合、記憶領域に値
を書き込む操作は関節駆動装置に指令を与えることに対
応し、記憶領域から値を読む操作は関節角度検出装置か
ら値を読み出すことに対応する。
【0093】この実施例で、先端位置と関節位置を表す
ベクトルRi は演算装置により計算したが、先端位置と
関節位置を検出する位置検出装置によりこれらの値を得
ても良い。
【0094】次に第三の実施例について図9を用いて説
明する。
【0095】図において201,202,203は演算
装置、204,205,206は関節角度検出装置、2
07,208,209は位置検出装置、10は多関節リ
ンク機構である。図10に関節と関節角度検出装置と位
置検出装置の接続関係、及び回転方向の関係を示す。i
番目のリンクを101とすると、関節Ji(111)に取
り付けられた位置検出装置Si(7)はi−1番目のリ
ンクLi-1(102)に固定されている。位置検出装置
はリンク機構の先端位置401と目標位置402を関節
i の回転軸を中心とした円筒上の位置301,302
として検出し、図11に示すように円筒上の先端位置3
01が目標位置302に対して右回転の方向にある場合
には+1、左回転の方向にある場合には−1を出力す
る。
【0096】演算装置は位置検出装置の出力値が+1の
場合には関節角度検出装置より検出した角度を微小量Δ
θだけ増加した値をリンク機構のアクチエータに出力す
る。位置検出装置の出力値が−1の場合には関節角度検
出装置より検出した角度を微小量Δθだけ減じた値をリ
ンク機構のアクチエータに出力する。これらの機構が連
続的に動作することによりリンク機構の先端位置を常に
目標位置に近付けることができる。本実施例では、リン
ク機構のアクチエータが一部故障していても、残りの関
節による先端位置の自由度が許す範囲で、正常に動作す
ることができる。
【0097】
【発明の効果】本発明による制御装置を用いれば、機構
の軸構成に依存せず汎用的な一つの演算手順により様々
なタイプのリンク機構の制御を行える。また、解を解析
的に求めるのが困難な軸構成のリンク機構に対しても制
御を行うことができる。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック図である。
【図2】演算装置の動作の説明図。
【図3】本発明の動作原理の説明図。
【図4】制御量の計算手順チャート。
【図5】制御量の改良型計算手順チャート。
【図6】本発明の第二の実施例の説明図。
【図7】本発明の第二の実施例を示すブロック図。
【図8】本発明の第二の実施例の演算装置の動作の説明
図。
【図9】本発明の第三の実施例を示すブロック図。
【図10】本発明の第三の実施例における関節付近の構
造を示す斜視図。
【図11】本発明の第三の実施例における位置検出装置
の説明図。
【符号の説明】
1,2,3…演算装置、4,6,8…座標変換行列を記
憶する領域、5,7,9…関節角度を記憶する領域、1
0…共有メモリ装置。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】関節に対応した複数の演算装置と、現在の
    前記関節の角度と座標変換行列を記憶する共有メモリ装
    置とからなり、前記演算装置は各関節に対して共有メモ
    リに記憶された現在の前記関節角度と関節間の座標変換
    行列と目標位置とを入力とし、前記演算装置群により計
    算した先端位置と目標位置の差が小さくなる方向に関節
    角度を修正した値を出力し、それに応じて変化する新た
    な座標変換行列を出力することを特徴とする多関節リン
    ク機構制御装置。
JP23150291A 1991-09-11 1991-09-11 多関節リンク機構制御装置 Pending JPH0569354A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23150291A JPH0569354A (ja) 1991-09-11 1991-09-11 多関節リンク機構制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23150291A JPH0569354A (ja) 1991-09-11 1991-09-11 多関節リンク機構制御装置

Publications (1)

Publication Number Publication Date
JPH0569354A true JPH0569354A (ja) 1993-03-23

Family

ID=16924501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23150291A Pending JPH0569354A (ja) 1991-09-11 1991-09-11 多関節リンク機構制御装置

Country Status (1)

Country Link
JP (1) JPH0569354A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9415518B2 (en) 2013-10-31 2016-08-16 Seiko Epson Corporation Robot control device and robot

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9415518B2 (en) 2013-10-31 2016-08-16 Seiko Epson Corporation Robot control device and robot
US10150215B2 (en) 2013-10-31 2018-12-11 Seiko Epson Corporation Robot control device and robot

Similar Documents

Publication Publication Date Title
US11845186B2 (en) Inverse kinematics solving method for redundant robot and redundant robot and computer readable storage medium using the same
CN111360827B (zh) 一种视觉伺服切换控制方法及系统
US5590034A (en) Method for controlling the movement of an industrial robot at and near singularities
JP4896276B2 (ja) ロボット、ロボットの制御装置、制御方法、及び制御プログラム
CN108297101A (zh) 多关节臂串联机器人末端位姿误差检测和动态补偿方法
CN114260896B (zh) 一种协作机器人的柔顺力控制方法及系统
CN110561420B (zh) 臂型面约束柔性机器人轨迹规划方法及装置
JPH04233602A (ja) ロボットのたわみ補正方法及びたわみ認識方法
JP2874238B2 (ja) 多関節形ロボットの制御方法
Dallej et al. 3D pose visual servoing relieves parallel robot control from joint sensing
JP2629291B2 (ja) マニピュレータ学習制御方法
JPS5815801B2 (ja) 工業用ロボツトの軌跡制御方式
Bourquardez et al. Stability and performance of image based visual servo control using first order spherical image moments
US20240217108A1 (en) Method for avoiding singularities of robotic arm, control device and computer-readable storage medium
JPH05345291A (ja) ロボットの動作範囲制限方式
JPH0569354A (ja) 多関節リンク機構制御装置
JP2703767B2 (ja) ロボットの教示データ作成方法
CN108247636B (zh) 并联机器人闭环反馈控制方法、系统及存储介质
CN114643582B (zh) 一种面向冗余机械臂的无模型关节容错控制方法及装置
JPH0693209B2 (ja) ロボツトの円弧補間姿勢制御装置
JPH06312392A (ja) 多関節ロボットの制御装置
JPH05177563A (ja) マスタスレーブマニピュレータの制御方法
JPH06187020A (ja) ロボットの動作軌跡教示方法
JPH0699372A (ja) ロボット制御装置
JPH0816845B2 (ja) 多関節形アームロボットの軌跡制御方法