JP2576171B2 - 多関節アーム制御装置 - Google Patents

多関節アーム制御装置

Info

Publication number
JP2576171B2
JP2576171B2 JP1499888A JP1499888A JP2576171B2 JP 2576171 B2 JP2576171 B2 JP 2576171B2 JP 1499888 A JP1499888 A JP 1499888A JP 1499888 A JP1499888 A JP 1499888A JP 2576171 B2 JP2576171 B2 JP 2576171B2
Authority
JP
Japan
Prior art keywords
arm
actuator
sin
arms
mathematical model
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.)
Expired - Fee Related
Application number
JP1499888A
Other languages
English (en)
Other versions
JPH01191209A (ja
Inventor
潔 袴塚
哲也 小南
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP1499888A priority Critical patent/JP2576171B2/ja
Publication of JPH01191209A publication Critical patent/JPH01191209A/ja
Application granted granted Critical
Publication of JP2576171B2 publication Critical patent/JP2576171B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)

Description

【発明の詳細な説明】 発明の目的 [産業上の利用分野] 本発明は多関節アーム制御装置に関し、特に一連のア
ームの先端振動を抑制し、同時にアーム先端の位置決め
精度の向上を図るものである。
[従来の技術] 作業用アームを備えた産業用ロボットの制御システム
として、例えばアームの各関節毎のサーボ系において
は、電動機等の出力軸の回転角度を検出するエンコーダ
の出力と、回転速度を検出するタコジェネレータの出力
とをフィードバックするシステムが通常実施されてい
る。しかし、高負荷重量のロボットにおいては、アーム
の慣性モーメントが大きく、減速機、トルク伝達機構及
びアーム等のばね要素により、アームの振動に関する固
有周波数が低下するため、アーム先端に低周期で振幅の
大きな振動が発生しやすくなりアーム先端の位置決め精
度が低下するといった問題が生じていた。
この課題に関しては、既に系の内部モデルを設計し、
このモデルからの推定出力値と実際の出力値との偏差を
零とするようにモデルの入力を修正して、修正後のモデ
ル出力値と入力値とをロボットの位置指令値にフィード
バックすることにより振動を防止しようとする提案がな
されている(特開昭61−255415号)。
[発明が解決しようとする課題] しかし、この様なシステムでは、複数あるアーム毎に
独立にモデルが設定されているが、実際にはアーム同士
が干渉する。このため、各アームが独立とは見なせずモ
デルが不適切なものとなる。従って、真に正確な制御が
実施されいるとはいい難く、振動の防止や位置決め精度
が不完全であった。ただ、一連のアームで一モデルを設
計すると、非線形になり、上記手法をそのまま適用する
ことはできなかった。
発明の構成 本発明は、上記問題点を解決することを目的とするも
のであり、元来非線形であるアースの数式モデルを各ア
ームの角度毎に線形として取り扱うことにより、アーム
振動の効果的防止及び高精度制御を実現する多関節アー
ム制御装置を提供するものである。
[課題を解決するための手段] 即ち、本発明の要旨とするところは、第1図に例示す
るごとく、 一連に配設された複数のアームM1と、 この各アームM1を動作させるアクチュエータM2と、 アクチュエータM2の位置を検出する位置検出手段M3
と、 上記アクチュエータM2を制御しアームM1に所定の動作
をさせる制御手段M4と、 を備えた多関節アーム制御装置において、 上記制御手段M4が、上記アクチュエータM2及びアーム
M1によって構成される系をばねと質量とからなる系と仮
定して設定された数式モデルM5であって、アクチュエー
タ駆動指令値から少なくともアクチュエータ変位または
アーム変位を推定する非線形の数式モデルM5を用いると
ともに、上記アクチュエータM2の変位毎に上記数式モデ
ルM5を線形として取り扱うことにより、アクチュエータ
駆動指令値及びアクチュエータ変位の実際値に応じてフ
ィードバック補償量を求め、このフィードバック補償量
にて上記アクチュエータ駆動指令値を補償することを特
徴とする多関節アーム制御装置にある。
[作用] 本発明の多関節アーム制御装置は多関節であるため
に、アクチュエータ変位またはアーム変位が推定できる
数式モデルM5が非線形となっているが、各アームがある
変位にある場合は、その変位での線形のモデルM5と見な
すことができる。従って、非線形な数式モデルM5も、ア
クチュエータM2またはアームM1の変位に応じた線形な数
式モデルが存在すると考えることができる。
このことから現代制御理論にて数式モデルM5を解くこ
とができるので、制御手段M4はこの数式モデルM5によ
り、アクチュエータ駆動指令値及びアクチュエータ変位
の実際値からフィードバック補償量を求め、上記アクチ
ュエータ駆動指令値を補償する。このことにより、停止
した際の一連のアームM1の先端振動を抑制できるととも
に、その振動を考慮してアームM1の先端を正確な位置に
制御できる。
次に、本発明の実施例を説明する。本発明はこれらに
限られるものではなく、その要旨を逸脱しない範囲の種
々の態様のものが含まれる。
[実施例] 第2図、第3図に本発明多関節アーム制御装置の一実
施例を示す。第2図はそのアーム部分の概略構成図であ
る。基台1上には第1アーム3、第2アーム5及び第3
アーム7が各揺動軸9,11,13を介して揺動自在に連結さ
れている。この各軸9,11,13には後述するサーボモータ
の出力軸がギヤの組合せからなる減速機構を介して結合
されており、上記アーム3,5,7は、後述する電子制御回
路によりサーボモータが駆動されると所望の回転位置に
位置し得るように構成されている。また第3アーム7の
先端には溶接用の電極15が配置され、所望の位置で電気
溶接できるように構成されている。
第3図に本実施例の全体のブロック図を示す。
上記各軸9,11,13には各アーム3,5,7の揺動角度を検出
するためのエンコーダ17,19,21が設けられ、電子制御回
路23にその信号が入力されるている。また各軸9,11,13
に設けられた上記サーボモータ25,27,29は上記電子制御
回路23にてその回転角度が制御されている。上記電子制
御回路23の構成の内、CPU23aは入力される信号に基づい
てサーボモータ25,27,29の駆動量等の演算及びその制御
を行う。また読み出し専用メモリであるROM23bにはCPU2
3aの処理において使用されるプログラム、定数あるいは
後述する数式モデルのデータ等が格納されている。読み
出し書き込み可能なメモリであるRAM23cにはCPU23aで求
められた演算結果や各エンコーダ17,19,21からの検出デ
ータ等が一時記憶される。
入力部23dは、各エンコーダ17,19,21や指示入力用キ
ーボード31等からの信号を受信するとともに、それらの
信号に対して波形成形等の信号処理を実行する。出力部
23eは、サーボモータ25,27,29の駆動回路を含み、CPU23
aで実行された処理結果に基づき、サーボモータ25,27,2
9あるいは図示しない溶接用高電圧回路等を必要に応じ
て駆動させるための信号を出力する。コモンバス23f
は、CPU23a、ROM23b、RAM23c、入力部23d、出力部23e間
を結び、データを相互伝達する。
ここで、上記一連のアーム3,5,7の数式モデルを設定
するために座標系を第4図のように表す。ただし第1ア
ーム3と第2アーム5とはxy平面上で揺動動作するもの
とし、その揺動の間は第3アーム7は揺動していないも
のとする。l1,l2,l3は各アーム3,5,7の長さ、d1,d2,d3
は軸9,11,13から各アーム3,5,7の重心までの距離、θA
1,θA2は第1,2アーム3,5の揺動角を表している。更に、
以後に出て来るm1,m2,m3は各アーム3,5,7の質量、DA1,
DA2,DA3は各アーム3,5,7の粘性抵抗(例えば摺動摩擦
等)を表すものとする。
また第3アームの先端での振動として、2次元のもの
を考え、第2アーム5の延長方向の振動成分とそれと垂
直な振動成分とに分ける。そのため、第5図に示すごと
く、第2アーム5の延長線p1とz軸とのなす平面αに第
3アーム7を投影した線q1と、第2アーム5に対するxy
平面上での垂線p2とz軸のなす平面βに第3アーム7を
投影した線q2とを考え、第3アーム7の角度を、上記線
q1とz軸との角θA31及び上記線q2とz軸との角θA32で
表すものとする。
上記アーム3,5,7の運動方程式は、ラグランジェ力学
により以下の通りにして導出される。
ラグランジアンLはシステムの総運動エネルギKと総
位置エネルギPの差として、次式のように定義される。
L=K−P …(1.1) そして運動方程式は、運動・位置エネルギを表した座
標によって、次式のように与えられる。
ここでqiは運動・位置エネルギを表す座標、iはそ
の速度、τiは対応するトルク、Dは散逸エネルギであ
る 上記運動方程式を上記一連のアーム3,5,7に適用する
ために、次のような処理をする。
(1)まず各アーム3,5,7の重心の位置を求めると、次
のように表される。
第1アーム3の重心座標 x1=d1・COSθA1 y1=d1・SINθA1 z1=0 …(1.3a) 第2アーム5の重心座標 x2=l1・COSθA1+d2・COS(θA1+θA2) y2=l1・SINθA1+d2・SIN(θA1+θA2) z2=0 …(1.3b) 第3アーム7の重心座標 x3=l1・COSθA1+l2・COS(θA1+θA2) +d3・SINθA31・COS(θA1+θA2) −d3・SINθA32・SIN(θA1+θA2) y3=l1・SINθA1+l2・SIN(θA1+θA2) +d3・SINθA31・SIN(θA1+θA2) −d3・SINθA32・COS(θA1+θA2) z3=−d3(1−SIN2θA31−SIN2θA32)1/2 (2)各アーム3,5,7の重心の速度は(1.3)式を微分す
ることにより、次のように表される。
第1アーム3の重心速度 1=−d1・SINθA1・A1 1=d1・COSθA1・A1 1=0 …(1.4a) 第2アーム5の重心速度 2=−l1・SINθA1+A1 −d2・SIN(θA1+θA2)・(A1+A2) 2=l1・COSθA1・A1 +d2・COS(θA1+θA2)・(A1+A2) 2=0 …(1.4b) 第3アーム7の重心速度 3=−l1・SINθA1・A1 −l2・SIN(θA1+θA2)・(A1+A2) −d3・SINθA31・SIN(θA1+θA2)・(A1+A2) −d3・SINθA32・COS(θA1+θA2)・(A1+A2) +d3・COSθA31・COS(θA1+θA2)・A31 −d3・COSθA32・SIN(θA1+θA2)・A32 3=l1・COSθA1・A1 +l2・COS(θA1+θA2)・(A1+A2) +d3・SINθA31・COS(θA1+θA2)・(A1+A2) −d3・SINθA32・SIN(θA1+θA2)・(A1+A2) +d3・COSθA32・SIN(θA1+θA2)・A31 +d3・COSθA32・COS(θA1+θA2)・A32 ただし、g(θ)=SINθ・COSθ・である。
(3)上述の関係から各アーム3,5,7の運動エネルギK1,
K2,K3は、次のように表される。
第1アーム3の運動エネルギK1 K1=(1/2)・m1・(12+12+12) =(1/2)・m1・d12・A12 …(1.5a) 第2アーム5の運動エネルギK2 K2=(1/2)・m2・(22+22+22) =(1/2)・m2・ {l12・A12+d22・(A1+A2) +2l1・d2・COSθA2・A1・(A1+A2)} …(1.5b) 第3アーム7の運動エネルギK3 K3=(1/2)・m3・(32+32+32) =m3・{l1・l2・COSθA2 +l1・d3・(COSθA2・SINθA31−SINθA2 ・SINθA32)+l2・d3・SINθA31+(1/2) ・[l12+l22+d32・(SIN2θA31+SIN2θA32]} ・A12+m3・l2・d3・SINθA31+(m3/2) ・{l22+d32・(SIN2θA31+SIN2θA32)} ・A22+(m3/2)・d32・COS2θA31・[1+SIN2θA31 /(1−SIN2θA31−SIN2θA32)]・A312 +(m3/2)・d32・COS2θA32・[1+SIN2θA32 /(1−SIN2θA31−SIN2θA32)]・A322+m3 ・{l1・l2・COSθA2+l1・d3・(COSθA2・SINθA31 +SINθA2・SINθA32)+2l2・d3・SIN2θA31+l22 +d32・(SIN2θA31+SIN2θA32)}・A1・A2+m3 ・d3・COSθA31・(l1・SINθA2−d3・SINθA32) ・A1・A31+m3・d3・COSθA32・(l1・COSθA2 +l2+d3・SINθA31)・A1・A32−m3・d32 ・COSθA31・SINθA32・A2・A31+m3・d3・COSθA3
2 ・(l2+d3・SINθA31)・A2・A32 +(m3・d32・SINθA31・COSθA31・SINθA32 ・COSθA32・A31・A32) /(1−SIN2θA31−SIN2θA32) …(1.5c) (4)上述の関係から各アーム3,5,7の位置エネルギP1,
P2,P3は、次のように表される。
第1アーム3の位置エネルギP1 P1=0 …(1.6a) 第2アーム5の位置エネルギP2 P2=0 …(1.6b) 第3アーム7の位置エネルギP3 P3= −m3・d3・g・(1−SIN2θA31−SIN2θA32)1/2 …(1.6c) (5)全体の散逸エネルギDは次のように表される。
D=1/2・{DA1・A12+DA2・A22 −DA3・(A312+A322)} …(1.7) ラグランジアンLは(1.1)式に基づき下式のごとく
表される。
L=K1+K2+K3−P1−P2−P3 …(1.8) この式を用いて(1.2)式より各アーム3,5,7でのトル
クを求めた後、以下の操作により簡略化を行う。即ち、
θA3i,A3i(i=1,2)は微小と考えると、 SINθA3i=θA3i COSθA3i=1 θA3i2=0 A3i2=0 …(1.9) と近似できる。
このようにして簡略化したトルクは以下の式で表され
る。
τ1={m1・d12+m2・l12+m2・d22+2m2・l1・d2・CO
SθA2+m3・l12+m3・l22+2m3・l1・l2 ・COSθA2+2m3・d3・(l2+l1・COSθA2)・θA31 −2m3・l1・d3・θA32・SINθA2}・A1 +{m2・d22+m2・l1・d2・COSθA2+m3・l22+m3・l1 ・l2・COSθA2+m3・d3・(2l2+l1・COSθA2)・θA31 −m3・l1・d3・θA32・SINθA2}・A2+m3・l1・d3 ・SINθA2・A31+m3・d3・(l1・COSθA2+l2) ・A32−{(m2・l1・d2+m3・l1・l2)・SINθA2 +m3・l1・d3・(θA31・SINθA2+θA32・COSθA2)} ・(A22+2A1・A2)+2m3・d3 ・(l1・COSθA2+l2)・(A1・A31+A2・A3
1) −2m3・l1・d3・SINθA2・(A1・A32 +A2 ・A32)+DA1・A1 …(1.10) τ2={m2・d22+m2・l1・d2・COSθA2+m3・l12・m3 ・l1・l2・COSθA2+m3・d3・(l1・COSθA2+2l2) ・θA31−m3・l1・d3・θA32・SINθA2}・A1 +(m2・d22+m3・l22+2m3・l2・d3・θA31)・A2 +m3・l2・d3・A32+{(m2・l1・d2+m3・l1・l2) ・SINθA2+m3・l1・d3・(θA31・SINθA2+θA32 ・COSθA2)}・A12+2m3・l2・d3・(A1・A31 +A2・A31)+DA2・A2 …(1.11) τ31=(m3・l1・d3・SINθA2−m3・d3・θA32)・A1 −m3・d32・θA32・A2+m3・d32・A31−m3・d3 ・(l2+l1・COSθA2+d3・θA31)・A12−m3・d3 ・(l2+d3・θA31)・(A22+2A1・A2)−2m3 ・d32・(A1・A32+A2・A32)+DA3・A31 +m3・d3・g・θA31 …(1.12) τ32=m3・d3・(l2+l1・COSθA2+d3・θA31)・A1
+m3・d3・(l2+d3・θA31)・A2+m3・d32・A32
+m3・d3・(l1・SINθA2−d3・θA32)・A12−m3・d
32・θA32・(A22+2A1・A2)+2m3・d32・(
A1・A31+A2・A31)+DA3+A32+m3・d3・g
・θA32 …(1.13) ここで(1.10)−(1.13)式に基づき、 とおくと、 ここで、 C11=a33・(a22・a44−a24・a42)/V C12=(−a12・a33・a44+a13・a32・a44 +a14・a33・a42)/V C13=a13・(a24・a42−a22・a44)/V C14=(a12・a24・a33−a14・a22 ・a33−a13・a24・a32)/V C21=a33・(a24・a41−a21・a44)/V C22=(a11・a33・a44−a13・a31 ・a44−a14・a33・a41)/V C23=a13・(a21・a44−a24・a41)/V C24=(−a11・a24・a33+a13・a24・a31 +a14・a21・a33)/V C31=[a31・(a24・a42−a22・a44) +a32・(a21・a44−a24・a41)]/V C32=[−a11・a33・a44+a12・a31 ・a44−a14・(a31・a42−a32・a41)]/V C33=[a11・(a22・a44−a24・a42)+a12 ・(a24・a41−a21・a44)+a14 ・(a21・a42−a22・a41)]/V C34=[a11・a24・a32−a12・a24 ・a31+a14・(a22・a31−a21・a32)]/V C41=a33・(a21・a42−a22・a41)/V C42=[−a11・a33・a42+a12・a33 ・a41+a13・(a31・a42−a32・a41)]/V C43=a13・(a22・a41−a21・a42)/V C44=[a11・a22・a33−a12・a21 ・a33+a13・(a21・a32−a22・a31)]/V ただし、 V=a11・a33・(a22・a44−a24・a42)・a12・a33 ・(a24・a41−a21・a44)+a13・a31・(a24・a42 −a22・a44)+a13・a32・(a21・a44−a24・a41) +a14・a33・(a21・a42−a22・a41) また、第1,第2アーム3,5のサーボモータ25,27と出力
部23e中の駆動回路とを含む駆動部は、第6図のブロッ
ク線図にて表される。図においてEiは各サーボモータ2
5,27にかかる電圧、T1〜T3は各アーム3,5,7のばねによ
る反力トルク、IMiは各サーボモータ25,27に流れる電
流、θMiは各サーボモータ25,27の回転角度、ωMiは各
サーボモータ25,27の回転角速度、θriは電子制御回路2
3からの指示角度(目標角度)値、θA1〜θA3はアーム
3,5,7の実際の角度、RMiはサーボモータ25,27の電機子
抵抗、G1,G2はギヤ比、JMiはサーボモータ25,27のイナ
ーシャ、DMiはサーボモータ25,27の粘性抵抗、KS1〜
KS3は各アーム3,5,7のばね定数、G2i,K1i,K2i,KEi,KA
i,KVi,KIi,KS1〜KS3,KTi,KPWMiは所定の係数を表して
いる。ただし、i=1,2である。このブロック線図より
次式を得る。
Ei={[G2i・K1i・(θri−θMi)−KVi・ωMi] ・K2i−KIi・IMi}・KAi・KPWMi …(2.1) Ei−KEi・ωMi=RMi・IMi …(2.2) 上記(2.1)、(2.2)式より、下式が導かれる。
(RMi+KIi・KAi・KPWMi)・IMi +(KEi+KVi・K2i・KAi+KPWMi)・ωMi =G2i・K1i・K2i・KAi・KPWMi・(θri−θMi)…
(2.5) 上記(2.3)、(2.4)式より、下式が導かれる。
上記(2.5)、(2.6)式より、下式が導かれる。
上記(2.7)式は次のように置き換える。
M1= d21・θM1+d22・ωM1+d25・θA1+dr1・θr1 M2= d43・θM2+d44・ωM2+d47・θA2+dr2・θr2 …(3.
1) 各アーム3,5,7のトルクは第6図のブロック線図よ
り、 τ1=KS1・(θM1/G1−θA1) τ2=KS2・(θM2/G2−θA2) τ31=−KS3・θA31 τ32=−KS3・θA32 …(3.2) と表され、(1.15)、(3.1)、(3.2)式より非線形の
運動方程式は次のように表される。
ここで、 d61=KS1/G1・C11 d63=KS2/G2・C12 d65=−KS1・C11 d66=−DA1・C11 d67=−KS2・C12 d68=−DA2・C12 d69=−KS31・C13 d6A=−DA3・C13 d6B=−KS32・C14 d6C=−DA3・C14 d81=KS1/G1・C21 d83=KS2/G2・C22 d85=−KS1・C21 d86=−DA1・C21 d87=−KS2・C22 d88=−DA2・C22 d89=−KS31・C23 d8A=−DA3・C23 d8B=−KS32・C24 d8C=−DA3・C24 dA1=KS1/G1・C31 dA3=KS2/G2・C32 dA5=−KS1・C31 dA6=−DA1・C31 dA7=−KS2・C32 dA8=−DA2・C32 dA9=−KS31・C33 dAA=−DA3・C33 dAB=−KS32・C34 dAC=−DA3・C34 dC1=KS1/G1・C41 dC3=KS2/G2・C42 dC5=−KS1・C41 dC6=−DA1・C41 dC7=−KS2・C42 dC8=−DA2・C42 dC9=−KS31・C43 dCA=−DA3・C43 dCB=−KS32・C44 dCC=−DA3・C44 である。
ここで、 上記(3.3)式は、 =Aχ+Bu …(3.4) と近似できる。
上記行列Aの要素d21〜dCCは、前述のごとくKS1〜K
S32、G1、G2、C11〜C44、DA1〜DA3から構成され、こ
のKS1〜KS32はばね定数であり、G1は第1アーム3と
そのサーボモータ25との間のギヤ比であり、G2は第2ア
ーム5とそのサーボモータ27との間のギヤ比であり、C1
1〜C44はa11〜a44から構成され(1.10)〜(1.13)式と
(1.14)式との関係から判るようにθA1〜θA32をパラ
メータとする関数であり、更にDA1〜DA3はアーム3,5,
7の粘性抵抗である。
ここで振動角度θA31,θA32は小さいので0と見なす
と、下式のごとくAはθA1,θA2のみの関数と考えるこ
とができる。
A=f(θA1,θA2) 従って、第1アーム3の角度θA1、第2アーム5の角
度θA2毎に、行列Aが一定の値と考えることができ、上
記運動方程式(=Aχ・Bu)は角度毎に線形と考える
ことができ、角度毎に現代制御理論が適用できる。上記
θA1,θA2の値は、アーム3,5,7が静止状態であると仮定
して、エンコーダ17,19の出力値にギヤ比を掛ければ求
められる。
一般的な現代制御理論では、第7図で表されるような
制御対象を線形の式で、 =Aχ+Bu y=Cχ と表す。ここで、フィードバックゲインFとオブザーバ
ゲインKとを、極配置法にて、目的とする制御結果が得
られるように決め、ホールド付離散化により、下式の係
数P,Q,Rを求めると、第8図に示すようなオブザーバ50
が設計できる。
P=e(A-KC)T ここで、Tはサンプリングタイム(例えば1msec)であ
り、τは積分用の変数である。上記(3.4)式は同型の
式であることから、現代制御理論が適用でき同様なオブ
ザーバが設計できる。
ただし、 とする。
第8図のオブザーバの処理を計算式で表すと、次式の
ごとくになる。
Z(n+1)=P・Z(n)+Q・u(n)+R・y
(n) u(n)=u(n)+F・Z(n) 本オブザーバ50は、一連のアーム3,5,7の状態変数θA
1,θA2,θA31,θA32が推定でき、この値からアーム3,5,
7の振動を考慮して第3アーム7の先端を所望の位置へ
移動制御することができる。
このオブザーバ50の処理を前記電子制御回路23にて実
現したフローチャートを第9図に示す。
まず、Z(n)の初期値が与えられる(ステップ10
0)。次に前回の指令値u(n)と、y(n)即ちエン
コーダ17,19,21の出力値とが取り込まれる(ステップ11
0)。次に行列Aの算出がなされる(ステップ112)。即
ちエンコーダ17,19の出力値をアーム3,5の静止状態での
θA1,θA2として用いて、その他前述の各種定数等を使
用してAを算出する。次に上記した式からP,Q,Rを算出
する(ステップ114)。
次に前回算出されたZ(n)と上記u(n)、y
(n)とを用いて、上記式のごとく次回に用いるZ(n
・1)を前記式に従って求める(ステップ120)。次に
前回求めたZ(n)から上記式に従って、新たな指令値
u(n)を求める(ステップ130)。次にこの新たな指
令値u(n)をサーボモータ25,27,29側に出力する(ス
テップ140)。
次に処理の終了条件が満足されたか否かが判定される
(ステップ150)。終了条件とは、指令が終わった状態
であり、例えば、溶接等の一連の作業が終了した状態等
をいう。
継続であれば、ステップ150にては否定判定されて、
再度ステップ110〜ステップ150の処理を繰り返し、第3
アーム7の先端を所定の位置に正確に移動する。この繰
り返しは上記サンプリングタイムT(例えば1msec)の
周期で行われ、測定されるy(n)の内のエンコーダ1
7,19の出力を、上記のごとくアーム3,5の静止状態での
θA1,θA2として、前記式A=f(θA1,θA2)に基づき
Aが求められることから、現代制御理論に従った制御が
実現されることとなる。
ステップ150にて肯定判定されれば、他の処理に移る
か、あるいはこのまま処理を終了する。
上述したごとく、本実施例の多関節アーム制御装置
は、予め多関節アームの数式モデルを作成し、そのモデ
ルにしたがって、角度のパラメータが一定ならば線形と
なる運動方程式を求め、オブザーバとしての各種演算式
を設計している。そのため、実際の制御に際して、第
1、第2アーム3,5の角度毎に現代制御理論が適用で
き、アーム3,5,7がばね系として振動するのを防止でき
るとともに、正確に第3アーム7の先端を所定の位置に
制御でき、ロボット等に精度の高い作業をさせることが
できる。
上記実施例において、サーボモータ25,27,29がアクチ
ュエータM2に該当し、エンコーダ17,19,21が位置検出手
段M3に該当し、電子制御回路23が制御手段M4に該当す
る。
発明の効果 本発明の多関節アーム制御装置は、非線形な数式モデ
ルM5をアームM1の角度毎に線形として取り扱うことによ
り、現代制御理論を適用でき、アームM1の振動を考慮し
てアクチュエータ駆動指令値を補償することができる。
従って、アームM1がばね系として振動しようとして
も、その振動を防止すると共に、正確にアームM1の先端
を所定の位置に制御でき、ロボット等に精度の高い作業
をさせることができる。
【図面の簡単な説明】
第1図は本発明の基本的構成を例示するブロック図、第
2図は本発明の一実施例のアーム部分を示す概略斜視
図、第3図はその電子制御装置のブロック図、第4図及
び第5図は各アームの動作説明図、第6図はサーボモー
タ駆動部のブロック線図、第7図は一般化した制御対象
のブロック線図、第8図は本実施例のブロック線図、第
9図は電子制御回路にて行われる処理のフローチャート
である。 M1……アーム、M2……アクチュエータ M3……位置検出手段、M4……制御手段 M5……数式モデル 3,5,7……アーム 17,19,21……エンコーダ 23……電子制御回路 25,27,29……サーボモータ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 昭63−46521(JP,A) 特開 昭58−3001(JP,A) 特開 昭60−69712(JP,A) 特開 昭62−160502(JP,A) 特開 昭60−231205(JP,A) 特開 昭61−39110(JP,A) 実開 昭63−92903(JP,U)

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】一連に配設された複数のアームと、 この各アームを動作させるアクチュエータと、 アクチュエータの位置を検出する位置検出手段と、 上記アクチュエータを制御しアームに所定の動作をさせ
    る制御手段と、 を備えた多関節アーム制御装置において、 上記制御手段が、上記アクチュエータ及びアームによっ
    て構成される系をばねと質量とからなる系と仮定して設
    定された数式モデルであって、アクチュエータ駆動指令
    値から少なくともアクチュエータ変位またはアーム変位
    を推定する非線形の数式モデルを用いるとともに、上記
    アクチュエータの変位毎に上記数式モデルを線形として
    取り扱うことにより、アクチュエータ駆動指令値及びア
    クチュエータ変位の実際値に応じてフィードバック補償
    量を求め、このフィードバック補償量にて上記アクチュ
    エータ駆動指令値を補償することを特徴とする多関節ア
    ーム制御装置。
JP1499888A 1988-01-26 1988-01-26 多関節アーム制御装置 Expired - Fee Related JP2576171B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1499888A JP2576171B2 (ja) 1988-01-26 1988-01-26 多関節アーム制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1499888A JP2576171B2 (ja) 1988-01-26 1988-01-26 多関節アーム制御装置

Publications (2)

Publication Number Publication Date
JPH01191209A JPH01191209A (ja) 1989-08-01
JP2576171B2 true JP2576171B2 (ja) 1997-01-29

Family

ID=11876593

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1499888A Expired - Fee Related JP2576171B2 (ja) 1988-01-26 1988-01-26 多関節アーム制御装置

Country Status (1)

Country Link
JP (1) JP2576171B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103941589B (zh) * 2014-04-24 2016-08-24 中国科学院自动化研究所 一种压电执行器的非线性模型预测控制方法
JP2016078193A (ja) * 2014-10-20 2016-05-16 株式会社小松製作所 工作機械、レーザ加工機、及び工作機械の制御方法
KR102469258B1 (ko) * 2014-11-18 2022-11-22 퍼시몬 테크놀로지스 코포레이션 엔드 이펙터 위치 추정을 위한 로봇의 적응형 배치 시스템

Also Published As

Publication number Publication date
JPH01191209A (ja) 1989-08-01

Similar Documents

Publication Publication Date Title
JP2645004B2 (ja) 多自由度マニピユレータの制御装置
JPH08118275A (ja) マニピュレータの制御装置
JP2604929B2 (ja) ロボットの制御装置
JP3380327B2 (ja) パラレルリンクマニピュレータのたわみ補正制御方法
JP2576171B2 (ja) 多関節アーム制御装置
JPH10128688A (ja) ロボットの非干渉化制御方法
JPH05143161A (ja) 位置および力を制御するハイブリツドシステム
JP2507891B2 (ja) マニピュレ―タのインピ―ダンス制御方式
JPS61201304A (ja) ロボツトの位置制御法
JPS6077210A (ja) 空間運動機構の制御方法
JP6565622B2 (ja) ロボットシステム及びロボット制御方法
JP2960232B2 (ja) ロボットの制御装置
JPH06332535A (ja) ロボットの制御装置
JPH07121239A (ja) ロボット装置の制御方法
JPH0760667A (ja) ロボットのウィービング制御装置
JP4449693B2 (ja) ロボット制御装置およびその制御方法
JP2960233B2 (ja) ロボットの制御装置
JPH04343690A (ja) 多関節マニピュレータの関節摩擦補償方法
JPS6148003A (ja) 多関節形ロボツトの制御装置
JP2594546B2 (ja) ロボツトの仮想内部モデルに基づく制御方法
JP2615423B2 (ja) マニピュレータの運動特性の評価および作業計画法
JP5343725B2 (ja) ロボット制御装置
JP2012061560A (ja) ロボットの制御装置
JP2692043B2 (ja) ロボツトの教示データの作成方法
JPS63276607A (ja) マニピュレータ装置

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees