JPH0863234A - 制御装置 - Google Patents

制御装置

Info

Publication number
JPH0863234A
JPH0863234A JP6219534A JP21953494A JPH0863234A JP H0863234 A JPH0863234 A JP H0863234A JP 6219534 A JP6219534 A JP 6219534A JP 21953494 A JP21953494 A JP 21953494A JP H0863234 A JPH0863234 A JP H0863234A
Authority
JP
Japan
Prior art keywords
coordinate system
block
value
torque
input
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
JP6219534A
Other languages
English (en)
Inventor
Bunichi Sugimoto
文一 杉本
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.)
KYB Corp
Original Assignee
Kayaba Industry Co 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 Kayaba Industry Co Ltd filed Critical Kayaba Industry Co Ltd
Priority to JP6219534A priority Critical patent/JPH0863234A/ja
Publication of JPH0863234A publication Critical patent/JPH0863234A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Feedback Control In General (AREA)
  • Control Of Position Or Direction (AREA)
  • Numerical Control (AREA)
  • Manipulator (AREA)

Abstract

(57)【要約】 【目的】 誤差が収束しなかったり、収束に時間がかか
ったりしないように、NNの負担を軽減し、解の収束性
を向上すること、また、実務的に得られる関節角データ
を直接に学習できるようにすること。 【構成】 回転座標系でのトルク値および状態量の入力
に対し、回転座標系での状態量を出力し、この入出力関
係を学習するNNブロックと、このNNブロックの出力
値を直交座標系に変換して出力する座標変換ブロックと
を備え、直交座標系で与える目標値と座標変換ブロック
の出力値との誤差関数を、座標変換ブロックを通して、
回転座標系での状態量で偏微分して、この量をNNを通
してバックプロパゲーション法によりトルクの増分量を
求め、これを用いて、マニピュレータに入力すべきトル
ク値を決定する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、関節の回りに回転運
動するロボットの腕などのような、マニピュレーターの
運動軌跡を制御するための装置に関するものである。
【0002】
【従来の技術】マニピュレータの運動を制御する場合
に、ニューラルネットワーク(以下NNという)を用い
る方法があった。NNを用いた運動制御の方法とは、N
Nにより、マニピュレータの前向きダイナミクスを学習
しておき、次に、運動の最終目的地点や、経由点、運動
の滑らかさなどの条件を与え、これらの条件に対する誤
差を最小化することによって、目標軌道を実現する制御
入力τ1、τ2を求めるものである。たとえば、図1のよ
うに第1および第2関節O、P、手先Qを有するマニピ
ュレータの場合、その運動を、第1関節O回りのトルク
τ1、第2関節P回りのトルクτ2、で、手先Qの位置
は、X−Y座標系の点(x,y)として表される。マニ
ピュレータにトルクτ1(t)、τ2(t)を入力したと
き、実際の手先Qの状態量がx(t)*、Dx(t)*
y(t)*、Dy(t)*となる。ただし、D=d/dt
とする。
【0003】また、図8のように、時刻tでの、入力値
をAtをx(t)、Dx(t)、y(t)、Dy
(t)、τ1(t)、τ2(t)とし、AtをNNに入力
すると、その時刻における手先Qの、状態変化量Δx
(t)、ΔDx(t)、Δy(t)、ΔDy(t)(こ
れら出力値をBtとする)を出力するものとする。この
NNの構造は図9に示すようになっていて、ひとつのニ
ューロン4から別のニューロン4へと信号が伝達され最
終出力を得るようになっている。そして、どのニューロ
ンもひとつ前の層からのみ入力を受け、次の層のみへ出
力を送るようになっている。また、各層のニューロン4
へ信号を伝達する部分をシナプス5といい、前層からの
信号を次層の各ニューロンへ、伝達する伝達率をシナプ
ス荷重という。NNの学習は、入力値Atと、Atに対応
する実際の手先Qの状態変化量B*の組(At、B*)を
多数記憶させる。次に、NNにAtを入力した時に出力
されるBtが、B*との誤差が最小となるように、図9に
示すNN内のシナプス5のシナプス荷重(前層との結合
荷重)を決定する。このようにして、Atを入力した時
にB*が出力されるように、つまり、(B*−Bt)が最
小となるようにシナプス荷重を決定し、固定化すること
で完了する。そして、学習を完了したNNを特開平2−
181201号公報の第1図のように結合して、マニピ
ュレータの目標軌道を実現する。運動の最終目的地点*
Bや、その他の条件Zを設定し、これらの条件に対する
誤差を最小化することによって、目標軌道を実現する制
御入力トルクτ1、τ2を求める(図10)。
【0004】
【発明が解決しようとする課題】上記の方法では、
τ1、τ2という回転座標系の入力を与え、直交座標系の
出力値Btとの対応関係を学習することになる。直交座
標系の出力値を得るのは、手先位置や、障害物の範囲な
どの目標値の設定には、直交座標を用いる方が適してい
るためである。このために、学習中に回転座標系から、
直交座標系への非線形変換が含まれ、NNの学習が非常
に難しい。すなわち、誤差が収束しなかったり、収束ま
でに長時間かかってしまうという問題があった。また、
多関節型マニピュレータの状態量の計測が、手先Qの位
置(x,y)について実施するよりも、関節角α、βに
ついて実施する方が容易であり、一般的であるので、入
力値として、x(t)、y(t)を用いることは、実務
的に学習データが得難いという問題があった。そこで、
本発明の目的は、誤差が収束しなかったり、収束に時間
がかかったりしないように、NNの負担を軽減し、解の
収束性を向上することである。また、実務的に得られる
関節角データを直接に学習できるようにすることであ
る。
【0005】
【課題を解決するための手段】本発明の制御装置は、回
転座標系でのトルク値および状態量の入力に対し、回転
座標系での状態量を出力し、この入出力関係を学習する
NNブロックと、このNNブロックの出力値を直交座標
系に変換して出力する座標変換ブロックとを備え、直交
座標系で与える目標値と座標変換ブロックの出力値との
誤差関数を、座標変換ブロックを通して、回転座標系で
の状態量で偏微分して、この量をNNを通してバックプ
ロパゲーション法によりトルクの増分量を求め、これを
用いて、マニピュレータに入力すべきトルク値を決定
し、マニピュレータを制御するものである。
【0006】
【作用】NNブロックでは、回転座標系での入出力関係
を学習するので、座標変換が含まれず、誤差の収束性が
良い。NNブロックに座標変換ブロックを付加して、回
転座標系での入力に対して、直交座標系の出力を得る。
目標値は、直交座標系で与え、ここから、バックプロパ
ゲーション法を用いて、マニピュレータ等に入力すべき
トルク値を決定する。
【0007】
【実施例】図1〜図7に示す実施例は、リンク1、およ
び、リンク2からなり、点O、Pを関節、Qを手先とす
るマニピュレータの運動を制御するものである。全体を
図2に示すように、NNブロック3と、座標変換ブロッ
ク6とを備え、司令部8からの司令*Bに応じて、必要
なトルクτ1、τ2を決定し、駆動部9からマニピュレー
タ7に入力する制御装置である。マニピュレータ7のモ
デルは図1に示すように、第1関節O回りのリンク1の
運動として、関節角α、回転角速度Dαと、第1関節O
回りのトルクτ1、第2関節P回りのリンク2の運動と
して、関節角β、回転角速度Dβ、第2関節回りのトル
クτ2で表され、一方、手先Qの位置は、X−Y座標状
の点Q(x,y)として表される。ただし、D=d/d
tとする。リンク2の関節角としては、リンク1からの
角度γの計測の方が、実際的であるが、以下の計算の都
合上、ここでは、X座標からの角度β(β=α+γ)を
用いることにする。先ず、図3に示すNNブロック3を
用いて回転座標系で学習させる。この学習方法は、従来
のNNによる学習方法と同様であるが、ここでは回転座
標系での入出力関係を学習するので、従来例のx
(t)、y(t)の代わりに、α(t)、β(t)を入
力する。
【0008】ここで、 l1:リンク1の長さ l2:リンク2の長さ Δt:サンプリング時間であり、 Δα(t)=α(t+Δt)−α(t)…(1) ΔDα(t)=Dα(t+Δt)−Dα(t)…(2) Δβ(t)=β(t+Δt)−β(t)…(3) ΔDβ(t)=Dβ(t+Δt)−Dβ(t)…(4)
である。このNNでは、回転座標系でのマニピュレータ
7の運動を学習するので、従来のように座標変換の演算
まで、NNで実行させるものと比較して、NNの負担が
小さい。しかし、実際の応用では直交座標系で表現され
ている方が便利である。
【0009】そこで、図4に示すような、座標変換ブロ
ック6によって、直交座標系に変換する。ここで、 x=l1cosα+l2cosβ…(5) y=l1sinα+l2sinβ…(6) Dx=sinDα−l2sinDβ…(7) Dy=l1cosDα+l2cosDβ…(8)である。座標変
換ブロック6と、NNブロック3とを結合したマニピュ
レータ7の運動計算モデルは図5のように表現できる。
【0010】図3に示す単位ブロックとして、図6のよ
うな階層型のNNを構成し、以下のように記号を決め
る。 K :単位ブロックのNNの層数 Nk :第k層の素子数 yj :第1層(入力層)の素子jへの入力 yj (k) :第k−1層の素子jの出力、(k=2、…K+
2) wji (k) :第k−1層の素子iから第k層の素子jへ
の結合荷重、(k=2、…、k; i=1、…、Nk-1; j=
1、…Nk) θj (k) :第k層の素子jのしきい値、(k=2、…K;
j=1、…Nk) uj (k) :第k層の素子jの膜電位、(k=1、…、K+1;
j=1、…Nk) yj (K+2) :前ブロックの第K+1層(出力層)の素子
jの出力、(j=1、…Nk+1) aIj :j番目の入力に対する正規化係数の除数部 bIj :j番目の入力に対する正規化係数の偏差部 aOj :j番目の出力に対する正規化係数の除数部 bOj :j番目の出力に対する正規化係数の偏差部 Σi j :iについてjまでの和 D=d/dt とする。
【0011】この時、第1層については、分岐および正
規化の機能のみを持たせ、 uj (1)=yj 、 (j=1、…N1) …(9) yj (2)=(uj (1)−bIj)/aIj 、 (j=1、…N1) …(10) とし、第2層から第K層ついては通常のシグモイド関数
を用いて、 Σi=1 Nk-1ji (k)j (k)−θj (k) 、 (k=2、…、K; j=1、…、Nk) …(11) yj (k+1)=1/{1+exp(−uj (k))} 、 (k=2、…、K; j=1、…、Nk) …(12) とする。
【0012】さらに、出力との和および、逆正規化の機
能のみを持たせた第K+1層を追加して、 uj (K+1)=yj (K+2)+aOjj (K+1) …(13) yj (K+2)=uj (K+1)+bOj …(14) とし、このように構成したNN単位ブロック3を図5の
ように結合している。以後、肩付き添え字0は、初期値
を、肩付き添え字cは、第cブロックの状態量を示すも
のとする。また、式の展開を簡単にするために、拘束す
るの最後のブロックの出力のみとし、*印で、拘束値を
示すものとする。この時、誤差関数Lは、 L≡E+U …(15) 拘束値との誤差を表す量Eは、 E≡{(xC−*xC2+(DxC−*DxC)+(yC−*yC2 +(DyC−*DyC2}/2 …(16) トルクに関する評価関数Uは、 U≡λΣc=2 C{(τ1 c−τ1 c-12+(τ2 c−τ2 c-12}/2 …(17) であり、ここではトルクの滑らかさを表す量であるが、
他のものでも良い。ただし、λは、EとUとの配分を決
める定数である。
【0013】ここで、sを素子の状態変化の時間、Tを
その時定数とすると、微分方程式 dτm c/ds=−1/T・∂L/∂dτm c 、 (c=1、…、C; m=1、2) …(18) において、Lはリアプノフ関数となり、この系は安定平
衡点に収束する。従ってεは十分に小さい正の数とし
て、 τm cnew=τm cold+ε(dτm c/ds) (c=1、…、C; m=1、2) …(19) とすることによって、逐次的にτm cを決定することがで
きる。ここで、ε(dτm c/ds)をトルクの増分量と
いう。また、式(15)をτm cで偏微分すると、 ∂L/∂τm c=∂E/∂τm c+∂U/∂τm c 、 (c=1、…、C; m=1、2) …(20)となる。ここ
で、 τm 0=τm 1 、(m=1、2) …(21) τm C+1=τm C 、(m=1、2) …(22) のように定義すれば、式(17)は、 ∂U/∂τm c=−λ(τm c+1−2τm c+τm c-1) (c=1、…、C; m=1、2) …(23)
【0014】次に、∂E/∂τm cを求める方法を説明す
る。 δj (k)c=∂E/∂yj (k+1)c 、 (c=1、…、C; k=1、…、K+1; j=1、…、Nk) …(24) とおく。δj (k)cは、NN上にバックプロパゲーション
法を適用すれば、求めることができるが、本発明では図
7に示すようにに示す座標変換ブロック6を通して用い
なければならない。このとき、 δ1 (K+1)C=∂E/∂yj (K+2)C =∂E/∂xC・∂xC/∂αC+∂E/∂DxC・∂DxC/∂αC +∂E/∂yC・∂yC/∂αC+∂E/∂DyC・∂DyC/∂αC =−(xC−*xC)l1sinαC−(DxC−*DxC)l1sinDαC +(yC−*yC)l1cosαC−(DyC−*DyC)l1cosDαC …(25)となり、同様に、 δ2 (K+1)C=−(DxC−*DxC)l1sinDαC +(DyC−*DyC)l1cosDαC …(26) δ3 (K+1)C=−(xC−*xC)l2sinβC−(DxC−*DxC)l2sinDβC +(yC−*yC)l2cosβC−(DyC−*DyC)l2cosDβC …(27) δ4 (K+1)C=−(DxC−*DxC)l2sinDβC +(DyC−*DyC)l2cosDβC …(28) を得る。さらに、式(24)にc=C、k=Kを代入す
ると δj (K)C=∂E/∂yj (K+1)C =δj (K+1)Coj 、(j=1、…、4) …(29) と
なり、このδj (K)Cを逆伝播することにより、
δj (K-1)C、δj (K-2)C、…、δj (1)Cを求めることがで
きる。
【0015】さらに、 δj (K+1)C-1=∂E/∂yj (K+2)C-1 =δj (K+1)C+(δj (1)C/aIj) 、(j=1、…、4) …(30) となり、以下同様にしてすべてのδj (K)Cを決定でき
る。このとき、 ∂E/∂τm c=δJ(m) (1)c/aIj(m) 、(c=1、…、C)…(31) で与えられる。ただし、J(1)=3、J(2)=6で
ある。以上のように、式(18)〜(23)により、ト
ルクτm cを逐次的に決定できる。つまり、図2に示す司
令部8の目的値*Bに対して、必要なトルクτ1 c、τ2 c
(c=1、…、C)を決定し、このトルクτ1 c、τ2 cをマ
ニピュレータ7に入力することで、目標軌道を実現す
る。この制御装置のNNの入出力関係の学習は、回転座
標系に統一されているので、従来のものよりもNNの負
担を軽減できるうえ、運動の測定も回転座標系で行うの
で、実務に即している。以上の考え方は、リンクが3個
以上の多関節型マニピュレータにも同様に適応できる。
【0016】
【発明の効果】本発明によれば、実務的に得られる関節
角データを直接に学習できるようになった。また、座標
変換をNNブロックから分離することによって、NNの
負担を軽減することができたので、解の収束性が向上
し、誤差が収束しなかったり、収束に時間がかかったり
しなくなった。
【図面の簡単な説明】
【図1】2軸マニピュレータのモデルである。
【図2】本実施例の全体構成図である。
【図3】本実施例のNNブロックを示す図である。
【図4】本実施例の座標変換ブロックを示す図である。
【図5】本実施例のマニピュレータの運動計算モデルで
ある。
【図6】階層型NNの構成図である。
【図7】本実施例のバックプロパゲーション法による計
算モデルである。
【図8】従来例のNNブロックを示す図である。
【図9】NNの構成説明図である。
【図10】NNの説明図である。
【符号の説明】
3 ニューラルネットワークブロック 6 座標変換ブロック 7 マニピュレータ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成6年12月1日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】0009
【補正方法】変更
【補正内容】
【0009】そこで、図4に示すような、座標変換ブロ
ック6によって、直交座標系に変換する。ここで、 x=l1cosα+l2cosβ…(5) y=l1sinα+l2sinβ…(6) Dx=-l1sinDα−l2sinDβ…(7) Dy=l1cosDα+l2cosDβ…(8)である。座標変
換ブロック6と、NNブロック3とを結合したマニピュ
レータ7の運動計算モデルは図5のように表現できる。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】図1
【補正方法】変更
【補正内容】
【図1】
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06F 15/18 550 E 8837−5L G06G 7/60 // G05B 19/18

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 回転座標系でのトルク値および状態量の
    入力に対し、回転座標系での状態量を出力し、この入出
    力関係を学習するニューラルネットワークブロックと、
    このニューラルネットワークブロックの出力値を直交座
    標系に変換して出力する座標変換ブロックとを備え、直
    交座標系で与える目標値と座標変換ブロックの出力値と
    の誤差関数を、座標変換ブロックを通して、回転座標系
    での状態量で偏微分して、この量をニューラルネットワ
    ークを通してバックプロパゲーション法によりトルクの
    増分量を求め、これを用いて、マニピュレータに入力す
    べきトルク値を決定し、マニピュレータを制御する制御
    装置。
JP6219534A 1994-08-22 1994-08-22 制御装置 Pending JPH0863234A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6219534A JPH0863234A (ja) 1994-08-22 1994-08-22 制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6219534A JPH0863234A (ja) 1994-08-22 1994-08-22 制御装置

Publications (1)

Publication Number Publication Date
JPH0863234A true JPH0863234A (ja) 1996-03-08

Family

ID=16736996

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6219534A Pending JPH0863234A (ja) 1994-08-22 1994-08-22 制御装置

Country Status (1)

Country Link
JP (1) JPH0863234A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103901774A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 高效鲁棒的基于多传感器的slam协调方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103901774A (zh) * 2012-12-28 2014-07-02 联想(北京)有限公司 高效鲁棒的基于多传感器的slam协调方法及系统

Similar Documents

Publication Publication Date Title
CN110900598B (zh) 机器人三维运动空间动作模仿学习方法和系统
Parlaktuna et al. Adaptive control of free-floating space manipulators using dynamically equivalent manipulator model
Hasan et al. Artificial neural network-based kinematics Jacobian solution for serial manipulator passing through singular configurations
CN110076770B (zh) 一种用于冗余机械臂的自运动方法
US6000827A (en) System identifying device and adaptive learning control device
CN108555914B (zh) 一种基于腱驱动灵巧手的dnn神经网络自适应控制方法
Jiao et al. Adaptive hybrid impedance control for dual-arm cooperative manipulation with object uncertainties
GB2258742A (en) "predictive control method and apparatus".
Si et al. Adaptive compliant skill learning for contact-rich manipulation with human in the loop
Perrusquía et al. Robot position/force control in unknown environment using hybrid reinforcement learning
Deutschmann et al. Position control of an underactuated continuum mechanism using a reduced nonlinear model
CN115122325A (zh) 一种具有视场约束的拟人化机械手鲁棒视觉伺服控制方法
CN112809666A (zh) 一种基于神经网络的5-dof机械臂力位跟踪算法
Perrusquía et al. Task space human-robot interaction using angular velocity Jacobian
CN112388620B (zh) 一种用于气动肌肉驱动系统的轨迹跟踪控制算法
Yan et al. Robot learning control based on recurrent neural network inverse model
JPH0863234A (ja) 制御装置
JPH0683427A (ja) 柔軟マニピュレータの作業点位置制御システム
JP3105694B2 (ja) マニピュレータ制御方法
JP2629291B2 (ja) マニピュレータ学習制御方法
CN110000780B (zh) 一种能抵抗周期噪声的龙格库塔型周期节律神经网络方法
Yan et al. Cerebellum-Inspired Model Predictive Control for Redundant Manipulators with Unknown Structure Information
JP3532258B2 (ja) 制御装置
CN112894819A (zh) 一种基于双神经网络的机器人动力学运动控制方法及装置
JPH06106490A (ja) 制御装置