[go: up one dir, main page]

JPH0569354A - Articulated link mechanism control device - Google Patents

Articulated link mechanism control device

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
Japanese (ja)
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/en
Publication of JPH0569354A publication Critical patent/JPH0569354A/en
Pending legal-status Critical Current

Links

Landscapes

  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】多関節リンク機構の運動制御装置に冗長自由度
が存在しても計算可能で、特異点の近傍でも計算が破綻
せず、解の連続性が保たれる汎用的制御装置を提供す
る。 【構成】関節とリンク機構の先端位置を含む平面より目
標位置が上にある場合に関節角度を正の方向に修正し、
下にある場合に負の方向に修正する複数の演算装置1,
2,3と、関節角度と座標変換行列を記憶する共有メモ
リ装置10を設ける。 【効果】汎用的な一つの演算手順により冗長自由度を持
つものも含めて様々なリンク機構の制御を行える。ま
た、特異姿勢の近くでも連続的な機構制御を実現でき
る。さらに、並列計算により高速に制御データを計算で
きる。
(57) [Abstract] [Purpose] It is possible to calculate even if there are redundant degrees of freedom in the motion controller of an articulated link mechanism, the calculation does not fail even near the singular point, and the continuity of the solution is maintained. To provide a dynamic control device. [Constitution] When the target position is above the plane including the joint and the tip position of the link mechanism, the joint angle is corrected in the positive direction,
A plurality of arithmetic units 1, which corrects in the negative direction when below
A shared memory device 10 for storing the joint angles and the coordinate conversion matrix is provided. [Effect] Various link mechanisms including those having redundant degrees of freedom can be controlled by one general-purpose operation procedure. Further, continuous mechanical control can be realized even near a peculiar posture. Furthermore, control data can be calculated at high speed by parallel calculation.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は複数の関節をもつリンク
機構の運動の制御装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a motion control device for a link mechanism having a plurality of joints.

【0002】[0002]

【従来の技術】多関節リンク機構の制御では、リンク機
構の先端の位置・姿勢が与えられ、それを実現する関節
角度を計算し、これを制御機構に与えることにより運動
の制御を行うことが多い。この先端位置・姿勢から関節
角度を計算する逆変換計算には従来以下のような方法が
とられている。
2. Description of the Related Art In the control of an articulated link mechanism, the position / orientation of the tip of the link mechanism is given, the joint angle that realizes this is calculated, and this is given to the control mechanism to control the motion. Many. Conventionally, the following method is used for the inverse transform calculation for calculating the joint angle from the tip position / posture.

【0003】第一の方法は、関節角度と先端位置の関係
を与える連立方程式を直接解いて、角度を求める方法で
ある。
The first method is a method of directly solving a simultaneous equation that gives the relationship between the joint angle and the tip position to obtain the angle.

【0004】第二の方法は、この連立方程式をヤコビア
ンにより局所線形近似し、ある初期値から繰返し計算に
より再帰的に解を求める方法である。
The second method is a method in which the simultaneous equations are locally linearly approximated by the Jacobian and a solution is recursively calculated from a certain initial value by iterative calculation.

【0005】また、リンク機構先端の位置・姿勢は六個
のパラメータにより表現される。よってリンク機構の自
由度(独立な関節の数)が七以上存在する場合(冗長自
由度がある場合)には、一般に解を一意に決定すること
はできない。従って、運動エネルギの最小化など何らか
の拘束条件を導入し、疑似的に自由度を落すことにより
計算を行っている。
The position / orientation of the tip of the link mechanism is represented by six parameters. Therefore, when the link mechanism has seven or more degrees of freedom (the number of independent joints) (when there is a redundant degree of freedom), it is generally impossible to uniquely determine the solution. Therefore, some constraint conditions such as kinetic energy minimization are introduced, and the degree of freedom is artificially reduced to perform the calculation.

【0006】[0006]

【発明が解決しようとする課題】第一の方法では、連立
方程式は多くの三角関数を含む非線形な方程式となるの
で、解を解析的に求めるのは困難であることが多い。解
が求まる場合についても機構の軸構成に依存した計算手
順となるので汎用性が確保されない。
In the first method, since the simultaneous equations are non-linear equations including many trigonometric functions, it is often difficult to obtain a solution analytically. Even when a solution is obtained, the calculation procedure depends on the shaft configuration of the mechanism, so versatility cannot be ensured.

【0007】第二の方法では、ヤコビアンが正則である
ことが条件となる。ヤコビアンが正則でなくなる特異姿
勢の近傍では、数値計算が破綻しやすく、解が不連続と
なることが多い。これが連続的な機構制御の障害となっ
ている。
The second method is subject to the Jacobian being regular. In the vicinity of the singular pose in which the Jacobian is no longer regular, numerical calculation tends to fail and the solution is often discontinuous. This is an obstacle to continuous mechanical control.

【0008】冗長自由度がある場合には、導入する拘束
条件をうまく選ぶ必要がある。
When there is a redundancy degree of freedom, it is necessary to properly select the constraint condition to be introduced.

【0009】本発明の目的は、冗長自由度が存在する場
合にも計算可能で、特異点の近傍でも計算が破綻せず、
解の連続性が保たれた制御装置を提供することにある。
The object of the present invention is that calculation is possible even when there are redundant degrees of freedom, and the calculation does not break even in the vicinity of a singular point,
It is to provide a control device in which the continuity of solution is maintained.

【0010】[0010]

【課題を解決するための手段】上記目的は、各関節ごと
に独立した角度の増減判定規範を与え、協調的に解を計
算する関節角修正量計算手段により達成される。
The above object can be achieved by a joint angle correction amount calculating means for giving an independent angle increasing / decreasing criterion for each joint and calculating a solution cooperatively.

【0011】即ち、各関節iに関してある時刻tにおけ
る関節角度をθi(t)、先端位置を目標位置により近付け
るθiの修正量をΔθi(t) とするとき、時刻t+1にお
ける関節角度θi(t+1)を
That is, when the joint angle at a certain time t for each joint i is θ i (t) and the correction amount of θ i that brings the tip end position closer to the target position is Δθ i (t), the joint angle θ at the time t + 1. i (t + 1)

【0012】[0012]

【数1】 [Equation 1]

【0013】により与える。この操作を各関節ごとに独
立して繰返し行うことにより先端位置を目標位置に近付
ける。
Given by By repeating this operation independently for each joint, the tip position is brought closer to the target position.

【0014】今、ベクトルzi,ri,xiを図3に示す
ようにそれぞれ第i番目の関節Jiの回転軸方向単位ベ
クトル、Jiから先端位置Rへのベクトル、Jiから目標
位置Xへのベクトルとすると、Δθi(t) は、例えばΔ
θiは以下のように決めればよい。
Now, as shown in FIG. 3, the vectors z i , r i , and x i are the unit vectors in the rotation axis direction of the i-th joint J i , the vector from J i to the tip position R, and the target from J i to the target. Assuming that the vector to the position X, Δθ i (t) is, for example, Δ
θ i may be determined as follows.

【0015】[0015]

【数2】 [Equation 2]

【0016】但し、αiは正の修正量、|(zi ri xi)|
は、ベクトルzi,ri,xiを列とする3×3行列の行
列式である。
Where α i is a positive correction amount, and | (z i r i x i ) |
Is a determinant of a 3 × 3 matrix having vectors z i , r i , and x i as columns.

【0017】[0017]

【作用】数2に示した行列式はThe determinant shown in equation 2 is

【0018】[0018]

【数3】 [Equation 3]

【0019】のように変形できる。これは図3に示すよ
うに関節の回転軸ziと先端位置Rにより決まる平面S
riに対して、目標位置Xが上(表側)にある場合には正
となり、下(裏側)にある場合には負となる。従って、
数1のΔθiは、目標位置がSriより上にある場合には
θi を増加し、下(裏側)にある場合には減少させる操
作を各関節について独立に行いながら先端を目標位置に
近づけていく。
It can be modified as follows. This is a plane S determined by the joint rotation axis z i and the tip position R as shown in FIG.
With respect to ri , it is positive when the target position X is above (front side), and is negative when it is below (back side). Therefore,
The Δθ i of Equation 1 increases θ i when the target position is above S ri and decreases θ i when the target position is below (on the back side), while independently performing the operation for each joint, the tip is set to the target position. Get closer.

【0020】ベクトルzi,ri,xiは、時刻tにおけ
る各関節の角度θ(t)と目標位置Xが与えられれば計算
できるので
The vectors z i , r i , and x i can be calculated if the angle θ (t) of each joint at the time t and the target position X are given.

【0021】[0021]

【数4】 [Equation 4]

【0022】と表現できる。但し、It can be expressed as However,

【0023】[0023]

【数5】 [Equation 5]

【0024】とする。以後数4を関節制御関数、数5を
符号判定条件と呼ぶことにする。数4の構造は、制御入
力である関節修正量が状態量である関節角度と先端位置
により陽に表現される形になっている。よって、計算手
順が単純で様々なタイプの制御特性を容易に組み込むこ
とができる。また、陽な表現形式であるため、ヤコビア
ンを用いた場合のような逆行列計算が必要ないので特異
点の近傍でも計算が破綻せず、解の連続性が保たれる。
It is assumed that Hereinafter, Equation 4 will be referred to as a joint control function, and Equation 5 will be referred to as a code determination condition. The structure of Expression 4 is in a form in which the joint correction amount which is the control input is explicitly expressed by the joint angle and the tip position which are the state amounts. Therefore, the calculation procedure is simple and various types of control characteristics can be easily incorporated. In addition, since it is an explicit expression form, the inverse matrix calculation as in the case of using the Jacobian is not necessary, so the calculation does not fail even near the singular point, and the continuity of the solution is maintained.

【0025】数4の構造より関節の修正量決定手順を関
節ごとに独立に与えることができる。よって、冗長自由
度が存在する場合にも計算可能である。
From the structure of Equation 4, the joint correction amount determination procedure can be given independently for each joint. Therefore, it can be calculated even when there is a redundant degree of freedom.

【0026】数2にはリンク機構の軸構成固有の計算手
順は含まれていないので、本発明は任意の軸構成のリン
ク機構に対して適用可能な汎用性を持っている。
Since the equation 2 does not include the calculation procedure peculiar to the shaft configuration of the link mechanism, the present invention has general versatility applicable to the link mechanism of any shaft configuration.

【0027】[0027]

【実施例】関節制御関数の数4は、単に時刻tにおける
関節角度θ(t)と目標位置X(t)から関節角修正量Δθ
i を決めることを指定するだけで、関数fの形としては
符号判定条件数5が指定する条件を満たす関数であれば
どのような形であっても良い。本発明の実施例として、
fが可変ゲイン型フィードバックタイプの制御を与える
式である場合を以下に示す。
[Embodiment] The number 4 of the joint control function is simply the joint angle correction amount Δθ from the joint angle θ (t) and the target position X (t) at the time t.
The shape of the function f may be any shape as long as the function satisfies the condition specified by the code determination condition number 5, only by specifying to determine i . As an example of the present invention,
The case where f is an expression that gives variable gain type feedback type control is shown below.

【0028】まず、関節制御関数としてFirst, as a joint control function

【0029】[0029]

【数6】 [Equation 6]

【0030】なる式を考える。ここでθeiは目標位置に
対する先端位置のずれ量を関節角におけるずれ量に換算
した値、ki(χ) はフィードバックゲインであり、フィ
ードバックゲインは関節感度χiの関数となっている。
θei、kii)、χiはそれぞれ以下のように計算され
る。
Consider the equation Here, θ ei is a value obtained by converting the amount of displacement of the tip position with respect to the target position into the amount of displacement at the joint angle, k i (χ) is the feedback gain, and the feedback gain is a function of the joint sensitivity χ i .
θ ei , k ii ), and χ i are calculated as follows, respectively.

【0031】今、ベクトルnri、nxiとして以下のもの
を考えると
Considering the following as the vectors n ri and n xi ,

【0032】[0032]

【数7】 [Equation 7]

【0033】[0033]

【数8】 [Equation 8]

【0034】nriは、図3において回転軸zi と先端位
置Rにより決定される平面Sriの単位法線ベクトルとな
り、nxi は、図3において回転軸ziと目標位置Xによ
り決定される平面Sxiの単位法線ベクトルとなる。これ
より、先端位置のずれ量の関節角度換算値θeiは以下の
式で与えられる。
N ri is a unit normal vector of the plane S ri determined by the rotation axis z i and the tip position R in FIG. 3, and n xi is determined by the rotation axis z i and the target position X in FIG. Becomes a unit normal vector of the plane S xi . From this, the joint angle conversion value θ ei of the displacement amount of the tip position is given by the following equation.

【0035】[0035]

【数9】 [Equation 9]

【0036】但し、atan2(x,y)は、x=sinθ,y=cosθ
なるθを与える関数である。また、nri=0、またはn
xi=0の場合にはθei=0とする。θeiは符号判定条件
(5)を満たす関数である。
However, atan2 (x, y) is x = sin θ, y = cos θ
Is a function that gives θ. Also, n ri = 0, or n
When xi = 0, θ ei = 0. θ ei is the sign judgment condition
It is a function that satisfies (5).

【0037】次に、関節感度χiは以下のように定義さ
れる。
Next, the joint sensitivity χ i is defined as follows.

【0038】図3において、関節iから先端位置Xへの
ベクトルxiが回転軸ziとほとんど平行である場合に
は、関節iの回転は先端位置を目標位置へ近付ける動き
にほとんど寄与しない。その一方で、xi のわずかな変
位に対して関節iが大きく変化し、不必要な回転運動が
生じることがある。そこで、先端位置の動きに対する各
関節の寄与の程度として関節感度を定義し、これにより
フィードバックゲインを調整する。
[0038] In FIG. 3, the vector x i from the joint i to tip position X when it is almost parallel to the rotation axis z i, the rotation of the joint i hardly contributes to the movement to bring the tip position to the target position. On the other hand, the joint i may change significantly with a slight displacement of x i , resulting in unnecessary rotational movement. Therefore, joint sensitivity is defined as the degree of contribution of each joint to the movement of the tip position, and the feedback gain is adjusted accordingly.

【0039】関節感度χiは以下の式で与えられる。The joint sensitivity χ i is given by the following equation.

【0040】[0040]

【数10】 [Equation 10]

【0041】ここで、ベクトルziとxiのなす角をφと
すると||zi||=1であるので、
Here, if the angle formed by the vectors z i and x i is φ, then || z i || = 1,

【0042】[0042]

【数11】 [Equation 11]

【0043】即ち、関節感度はsinφに他ならない。That is, the joint sensitivity is nothing but sin φ.

【0044】このχiを用いることにより、フィードバ
ックゲインkii)は
By using this χ i , the feedback gain k ii ) is

【0045】[0045]

【数12】 [Equation 12]

【0046】により計算する。但し、ki0は標準ゲイン
で正の定数である。kii)は非負の値をとる。
Calculate by However, k i0 is a standard gain and is a positive constant. k ii ) has a non-negative value.

【0047】以上により、数5は具体的にFrom the above, the equation 5 is specifically

【0048】[0048]

【数13】 [Equation 13]

【0049】の形で与えられる。It is given in the form of

【0050】次にnri,nxi等のベクトルを計算するた
めに必要なzi,ri,xiの計算手順を示す。これらは
以下の式により与えられる。
Next, a calculation procedure of z i , r i , and x i necessary for calculating the vector of n ri , n xi, etc. will be shown. These are given by the following equations.

【0051】[0051]

【数14】 [Equation 14]

【0052】[0052]

【数15】 [Equation 15]

【0053】[0053]

【数16】 [Equation 16]

【0054】ここで、Riはリンク機構の根元から関節
iまでのベクトルであり、Rn+1 は根元から先端まで
のベクトルとする。ezはワールド座標系FWのz軸方向
単位ベクトルである。Bi は関節位置を原点として、関
節の回転軸方向をz軸とする関節座標系Fiとワールド
座標系FWとの間の回転変換行列である。FWとFiの間
の座標変換マトリックスをAiとすると、RiはAi の右
端列ベクトルの上三要素で与えられ、BiはAiの左上3
×3部分行列で与えられる。即ち、
Here, R i is a vector from the root of the link mechanism to the joint J i , and R n + 1 is a vector from the root to the tip. e z is a unit vector in the z-axis direction of the world coordinate system F W. B i is a rotation conversion matrix between the joint coordinate system F i and the world coordinate system F W with the joint position as the origin and the joint rotation axis direction as the z axis. When the coordinate transformation matrix between F W and F i and A i, R i is given by three elements on the far right column vector A i, the upper left 3 B i is A i
× 3 submatrix. That is,

【0055】[0055]

【数17】 [Equation 17]

【0056】[0056]

【数18】 [Equation 18]

【0057】となる。It becomes

【0058】またFii+1への座標変換マトリックスを
iとすると、Tiは関節角θi の関数となり
If the coordinate transformation matrix to F i F i + 1 is T i , T i is a function of the joint angle θ i.

【0059】[0059]

【数19】 [Formula 19]

【0060】なる関係がある。There is the following relationship.

【0061】以上の関係を整理するとθi(t)からθ
i(t+1)を計算する具体的な手順は以下のように示さ
れる。
When the above relationships are summarized, θ i (t) can be converted to θ
The specific procedure for calculating i (t + 1) is shown below.

【0062】[0062]

【数20】 [Equation 20]

【0063】[0063]

【数21】 [Equation 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はデ
ータが書き換わるタイミングを示す。
That is, A i (t) (i = 1 ... n) is calculated using the joint angle θ (t) at time t, and A i (t) and A n + 1 (t) are calculated.
And X (t) are used to calculate each joint control function f i . FIG. 4 shows a chart summarizing the calculation procedure. In the figure,
Reference numeral 401 is data at time t, 402 is data at time t + 1, 403 is timing for referring to data, and 404 is timing for rewriting data.

【0065】この計算手順による一ステップ当たりの計
算時間Δtは、tf を数20の計算に要する時間、tA
を数21の計算に要する時間とすると
The calculation time Δt per step according to this calculation procedure is t A, the time required to calculate t f ,
Let be the time required to calculate equation 21

【0066】[0066]

【数22】 [Equation 22]

【0067】となる。Δtは関節数nに比例して長くな
る。
It becomes Δt becomes longer in proportion to the number of joints n.

【0068】今、Δtを十分小さく取ることができると
すると、Ai(t)とAi(t+1)はほとんど等しいとみな
すことができるので、数21は
Now, assuming that Δt can be made sufficiently small, it can be considered that A i (t) and A i (t + 1) are almost equal.

【0069】[0069]

【数23】 [Equation 23]

【0070】と変形できる。これにより計算手順は図5
に示すようになり、計算時間Δtは
It can be modified as follows. As a result, the calculation procedure is shown in Fig. 5.
The calculation time Δt is

【0071】[0071]

【数24】 [Equation 24]

【0072】となり、nにかかわらず一定とすることが
できる。
Therefore, it can be made constant regardless of n.

【0073】以上の計算手順を実行する装置の構成を図
1に示す。
FIG. 1 shows the configuration of an apparatus that executes the above calculation procedure.

【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) を記憶するための領域である。
In the figure, reference numerals 1, 2 and 3 represent the joint angle θ i (t) at the time t, the target position X (t), the coordinate transformation matrix A i (t) and A n + 1 (t). A according to 23
i + 1 (t) and the joint angle θ i (t + 1) at the next time t + 1
Is an arithmetic unit for calculating This arithmetic device is prepared by the number of joints of the articulated link mechanism to be controlled. 10
Is a shared storage device for storing the information of the link mechanism in each calculation step. The inside is divided into areas according to the stored information. 4, 6, 8 is θ i (t)
Is a storage area for storing the value A i (t) at the time t of the coordinate conversion matrix for obtaining the vectors z i , r i , and x i from X and (t). Reference numerals 5, 7, and 9 are areas for storing the joint angle θ i (t) at time t.

【0075】演算装置1,2,3において実行される演
算手順を図2に示す。
FIG. 2 shows a calculation procedure executed in the calculation devices 1, 2, and 3.

【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)。
Now, assuming that the arithmetic unit 2 is the arithmetic unit for controlling the i-th joint angle, 2 first calculates z i from A i (t) stored in 8 according to equation 16 (step 1 ) Calculating r i from A n + 1 (t) stored in 4 and A i (t) stored in 8 according to Equation 14 (step 2), and inputting X (t) and A From i (t), x i is calculated according to equation 15 (step 3). Next, χ i is calculated from z i and x i according to the equation 10 (step 4), and x i , r i ,
θ ei is calculated from z i according to Equation 9 (step 5). Then, from χ i and θ ei , the joint control amount, that is,
Calculate Δθ i (step 6) and add it to the current joint angle θ i (t) stored in 7 to obtain the next target joint angle θ i (t + 1), and set this to 7. Write (step 7). Also, 2 is θ i (t) of 7 and A i (t) of 8
Then, A i + 1 (t) is calculated according to the equation (19) and is written in 6 (step 8).

【0077】以上の手順により関節角の制御動作が実行
される。
The control operation of the joint angle is executed by the above procedure.

【0078】次に本発明を用いた第二の実施例について
説明する。
Next, a second embodiment using the present invention will be described.

【0079】第一の実施例においては、制御装置には一
つの目標位置X(t)が与えられたが、第二の実施例にお
いては図6に示すように、複数の目標位置Xj(t)(j=
1...m)を用意し、複数の関節Jcjの位置を制御する装置
を示す。
[0079] In the first embodiment, although one of the target position X (t) is given to the control device, in the second embodiment, as shown in FIG. 6, a plurality of target positions X j ( t) (j =
1 ... m) is prepared and a device for controlling the positions of a plurality of joints J cj is shown.

【0080】この場合の関節制御関数は以下の式で与え
られる。
The joint control function in this case is given by the following equation.

【0081】[0081]

【数25】 [Equation 25]

【0082】ここで、aijは正の重み付け定数で、fij
(θ,Xj)は、cj番目の関節Jcjを先端位置とし、X
jを目標位置とした場合の関節制御関数であり、
Here, a ij is a positive weighting constant, and f ij
(Θ, X j ), where the c j- th joint J cj is the tip position, X
The joint control function when j is the target position,

【0083】[0083]

【数26】 [Equation 26]

【0084】とする。また、Jcmはリンク機構の先端と
する。
It is assumed that J cm is the tip of the link mechanism.

【0085】これにより、θi(t)からθi(t+1)を計
算する具体的な手順数20は以下のように修正される。
[0085] Thus, specific steps number 20 for calculating a theta i from (t) θ i (t + 1) is modified as follows.

【0086】[0086]

【数27】 [Equation 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)を計算す
る演算装置である。
FIG. 7 shows the configuration of the control device. In the figure, 4 to 10 are the same as in FIG. 501,50
2, 503 are joint angles θ i (t) at time t, target position X j (t) (j = 1 ... m), coordinate transformation matrix A i (t), A
It is an arithmetic unit for calculating A i + 1 (t) and the joint angle θ i (t + 1) at the next step t + 1 according to the equations 27 and 23 from n + 1 (t).

【0088】演算装置501,502,503において
実行される演算手順を図8に示す。
FIG. 8 shows a calculation procedure executed by the calculation devices 501, 502 and 503.

【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)。
Now, assuming that the arithmetic unit 502 is an arithmetic unit for controlling the i-th joint angle, the 502 first calculates z i from A i (t) stored in 8 according to the equation 16 (step 1 ). Next, for j = 1 ... m, r i is calculated from A n + 1 (t) and A i (t) stored in 4 according to the equation 14 (step 2), and the input X j ( x ij is calculated from t) and A i (t) (step 3), χ ij is calculated from z i and x ij (step 4), and θ eij is calculated from x ij , r i , and z i (step 4). Step 5). Then, from χ ij and θ eij , Δθ i
Is calculated (step 6), and this is added to the current joint angle θ i (t) stored in 7 to obtain the next target joint angle θ i (t + 1), which is written in 7 ( Step 7). Further, 502 calculates A i + 1 (t) from θ i (t) of 7 and A i (t) of 8 according to the equation 19, and writes this in 6 (step 8).

【0090】以上の手順により複数の目標位置に対する
関節角の制御動作が実行される。
The control operation of the joint angles for a plurality of target positions is executed by the above procedure.

【0091】以上の実施例では、関節制御関数として、
数6に示したような関節角ずれ量にフィードバックゲイ
ンを掛けた形のものを示したが、数6の構造としては数
5を満たす限り様々なタイプのものを用いることができ
る。
In the above embodiment, as the joint control function,
Although the joint angle deviation amount as shown in Formula 6 is multiplied by the feedback gain, various types of structures can be used as the structure of Formula 6 as long as Formula 5 is satisfied.

【0092】以上の実施例で演算装置1,2,3(ある
いは501,502,503)は、独立なものであると
したが、これらの演算装置で行われる演算は一つの演算
装置で行っても良い。但し、その場合高速な演算速度は
望めない。座標変換行列を記憶する領域4,6,8は演
算装置の内部に備えられた記憶領域であっても良い。関
節角度を記憶する領域5,7,9は関節角度検出装置と
関節駆動装置であっても良い。この場合、記憶領域に値
を書き込む操作は関節駆動装置に指令を与えることに対
応し、記憶領域から値を読む操作は関節角度検出装置か
ら値を読み出すことに対応する。
In the above embodiments, the arithmetic units 1, 2, 3 (or 501, 502, 503) are independent, but the arithmetic operations performed by these arithmetic units are performed by one arithmetic unit. Is also good. However, in that case, a high calculation speed cannot be expected. The areas 4, 6 and 8 for storing the coordinate conversion matrix may be storage areas provided inside the arithmetic unit. The areas 5, 7 and 9 for storing the joint angle may be the joint angle detection device and the joint drive device. In this case, the operation of writing a value in the storage area corresponds to giving a command to the joint drive device, and the operation of reading the value from the storage area corresponds to reading the value from the joint angle detection device.

【0093】この実施例で、先端位置と関節位置を表す
ベクトルRi は演算装置により計算したが、先端位置と
関節位置を検出する位置検出装置によりこれらの値を得
ても良い。
In this embodiment, the vector R i representing the tip position and the joint position is calculated by the arithmetic device, but these values may be obtained by the position detecting device which detects the tip position and the joint position.

【0094】次に第三の実施例について図9を用いて説
明する。
Next, a third embodiment will be described with reference to FIG.

【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を出力す
る。
In the figure, 201, 202 and 203 are arithmetic units, 204, 205 and 206 are joint angle detecting units and 2
Reference numerals 07, 208, and 209 denote position detection devices, and 10 denotes an articulated link mechanism. FIG. 10 shows the connection relationship between the joint, the joint angle detection device, and the position detection device, and the relationship in the rotation direction. i
Assuming that the 101st link is 101, the position detection device S i (7) attached to the joint J i (111) is fixed to the i− 1th link L i-1 (102). The position detecting device uses the tip end position 401 and the target position 402 of the link mechanism as cylindrical positions 301 and 302 about the rotation axis of the joint J i.
And the tip position 3 on the cylinder as shown in FIG.
If 01 is in the right rotation direction with respect to the target position 302, +1 is output, and if it is in the left rotation direction, -1 is output.

【0096】演算装置は位置検出装置の出力値が+1の
場合には関節角度検出装置より検出した角度を微小量Δ
θだけ増加した値をリンク機構のアクチエータに出力す
る。位置検出装置の出力値が−1の場合には関節角度検
出装置より検出した角度を微小量Δθだけ減じた値をリ
ンク機構のアクチエータに出力する。これらの機構が連
続的に動作することによりリンク機構の先端位置を常に
目標位置に近付けることができる。本実施例では、リン
ク機構のアクチエータが一部故障していても、残りの関
節による先端位置の自由度が許す範囲で、正常に動作す
ることができる。
When the output value of the position detecting device is +1, the arithmetic unit determines the angle detected by the joint angle detecting device by a small amount Δ.
The value increased by θ is output to the actuator of the link mechanism. When the output value of the position detection device is -1, a value obtained by subtracting the angle detected by the joint angle detection device by a minute amount Δθ is output to the actuator of the link mechanism. By continuously operating these mechanisms, the tip position of the link mechanism can be always brought close to the target position. In the present embodiment, even if the actuator of the link mechanism is partially defective, it can operate normally within the range allowed by the degree of freedom of the tip position by the remaining joints.

【0097】[0097]

【発明の効果】本発明による制御装置を用いれば、機構
の軸構成に依存せず汎用的な一つの演算手順により様々
なタイプのリンク機構の制御を行える。また、解を解析
的に求めるのが困難な軸構成のリンク機構に対しても制
御を行うことができる。
By using the control device according to the present invention, it is possible to control various types of link mechanisms by one general-purpose arithmetic procedure without depending on the axis configuration of the mechanism. In addition, it is possible to control even a link mechanism having an axial configuration in which it is difficult to analytically obtain a solution.

【図面の簡単な説明】[Brief description of drawings]

【図1】本発明の一実施例を示すブロック図である。FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】演算装置の動作の説明図。FIG. 2 is an explanatory diagram of the operation of the arithmetic device.

【図3】本発明の動作原理の説明図。FIG. 3 is an explanatory diagram of an operation principle of the present invention.

【図4】制御量の計算手順チャート。FIG. 4 is a control procedure calculation chart.

【図5】制御量の改良型計算手順チャート。FIG. 5 is an improved calculation procedure chart of a controlled variable.

【図6】本発明の第二の実施例の説明図。FIG. 6 is an explanatory diagram of a second embodiment of the present invention.

【図7】本発明の第二の実施例を示すブロック図。FIG. 7 is a block diagram showing a second embodiment of the present invention.

【図8】本発明の第二の実施例の演算装置の動作の説明
図。
FIG. 8 is an explanatory diagram of the operation of the arithmetic unit according to the second embodiment of the present invention.

【図9】本発明の第三の実施例を示すブロック図。FIG. 9 is a block diagram showing a third embodiment of the present invention.

【図10】本発明の第三の実施例における関節付近の構
造を示す斜視図。
FIG. 10 is a perspective view showing a structure near a joint according to a third embodiment of the present invention.

【図11】本発明の第三の実施例における位置検出装置
の説明図。
FIG. 11 is an explanatory diagram of a position detection device according to a third embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1,2,3…演算装置、4,6,8…座標変換行列を記
憶する領域、5,7,9…関節角度を記憶する領域、1
0…共有メモリ装置。
1, 2, 3 ... Arithmetic device, 4, 6, 8 ... Area for storing coordinate transformation matrix, 5, 7, 9, ... Area for storing joint angle, 1
0 ... Shared memory device.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】関節に対応した複数の演算装置と、現在の
前記関節の角度と座標変換行列を記憶する共有メモリ装
置とからなり、前記演算装置は各関節に対して共有メモ
リに記憶された現在の前記関節角度と関節間の座標変換
行列と目標位置とを入力とし、前記演算装置群により計
算した先端位置と目標位置の差が小さくなる方向に関節
角度を修正した値を出力し、それに応じて変化する新た
な座標変換行列を出力することを特徴とする多関節リン
ク機構制御装置。
1. A plurality of arithmetic devices corresponding to joints and a shared memory device for storing the current angle and coordinate conversion matrix of the joint, wherein the arithmetic device is stored in a shared memory for each joint. The current joint angle, the coordinate transformation matrix between the joints, and the target position are input, and the value obtained by correcting the joint angle in the direction in which the difference between the tip position and the target position calculated by the arithmetic unit group becomes small is output. A multi-joint link mechanism control device, which outputs a new coordinate conversion matrix that changes according to the change.
JP23150291A 1991-09-11 1991-09-11 Articulated link mechanism control device Pending JPH0569354A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP23150291A JPH0569354A (en) 1991-09-11 1991-09-11 Articulated link mechanism control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP23150291A JPH0569354A (en) 1991-09-11 1991-09-11 Articulated link mechanism control device

Publications (1)

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

Family

ID=16924501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP23150291A Pending JPH0569354A (en) 1991-09-11 1991-09-11 Articulated link mechanism control device

Country Status (1)

Country Link
JP (1) JPH0569354A (en)

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 (en) A visual servo switching control method and system
US5590034A (en) Method for controlling the movement of an industrial robot at and near singularities
JP4896276B2 (en) ROBOT, ROBOT CONTROL DEVICE, CONTROL METHOD, AND CONTROL PROGRAM
CN114952868B (en) 7-degree-of-freedom SRS (sounding reference Signal) type mechanical arm control method and device and piano playing robot
CN108297101A (en) The position and attitude error detection of multi-joint arm serial manipulator end and dynamic compensation method
JPH04233602A (en) Deflection correcting system for robot
CN115922735B (en) Trajectory planning method, device, computer equipment and storage medium for singular region
CN114643582B (en) Model-free joint fault-tolerant control method and device for redundant mechanical arm
Dallej et al. 3D pose visual servoing relieves parallel robot control from joint sensing
JPH0683427A (en) Operation point position control system for flexible manipulator
JP2629291B2 (en) Manipulator learning control method
JPS5815801B2 (en) Trajectory control method for industrial robots
Bourquardez et al. Stability and performance of image based visual servo control using first order spherical image moments
CN108445778B (en) Dynamics modeling method for space non-cooperative target non-complete constraint assembly
JPH0693209B2 (en) Robot's circular interpolation attitude control device
JPH05345291A (en) Working area limitation for robot
JPH0569354A (en) Articulated link mechanism control device
JP2703767B2 (en) Robot teaching data creation method
JPH05177563A (en) Control method for master slave manipulator
CN108247636B (en) Parallel robot closed-loop feedback control method, system and storage medium
Bildstein et al. Visual Predictive Control for mobile manipulator: Visibility, manipulability, and stability
CN118106962A (en) A finite time synchronous motion control method and system for a pneumatic muscle robot
CN116787417A (en) Robot control method, apparatus, device and storage medium
JPH06187020A (en) Operational locus instructing method for robot