JPH04306712A - Controller for manipulator - Google Patents

Controller for manipulator

Info

Publication number
JPH04306712A
JPH04306712A JP7129691A JP7129691A JPH04306712A JP H04306712 A JPH04306712 A JP H04306712A JP 7129691 A JP7129691 A JP 7129691A JP 7129691 A JP7129691 A JP 7129691A JP H04306712 A JPH04306712 A JP H04306712A
Authority
JP
Japan
Prior art keywords
acceleration
manipulator
workpiece handling
handling section
value
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
JP7129691A
Other languages
Japanese (ja)
Inventor
Yoshiharu Nishida
吉晴 西田
Takashi Harada
孝 原田
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.)
Kobe Steel Ltd
Original Assignee
Kobe Steel 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 Kobe Steel Ltd filed Critical Kobe Steel Ltd
Priority to JP7129691A priority Critical patent/JPH04306712A/en
Publication of JPH04306712A publication Critical patent/JPH04306712A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To provide the controller of a manipulator, whose work handling part operates in accordance with a set dynamic characteristic and which can precisely follow a set target track. CONSTITUTION:The above controller 1 obtains set impedance (g) equivalent to the acceleration command value of the work handling part 25 of the manipulator 20, and the estimated value of inertia of the work handling part is obtained by the estimated value M*(theta) of an inertia from an inertia term operation part 31 and said set impedance (g). Furthermore, the torque tau of an articurate moter is calculated. The acceleration d<2>x/dt<2> of the work handling part, which is driven based on the torque is obtained based on a detected angle theta. As value obtained by multiplying difference of the acceleration d2x/dt<2> and set impedance(g) by a gain G is fed-back, the set change of the gain G can turn the difference of the estimated value reflected on the acceleration d2x/dt<2> smaller.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】本発明は,マニピュレータのワー
ク取扱い部を目標とする動力学インピーダンスで動作さ
せるためのトルクを上記ワーク取扱い部に与えるいわゆ
るインピーダンス制御を行う制御装置に係り,特にワー
ク取扱い部をその目標軌道に精度良く追随させることの
できるマニピュレータの制御装置に関する。
[Field of Industrial Application] The present invention relates to a control device that performs so-called impedance control that applies torque to the workpiece handling section of a manipulator to operate it at a target dynamic impedance, and in particular, The present invention relates to a control device for a manipulator that allows a manipulator to accurately follow its target trajectory.

【0002】0002

【従来の技術】上記したようなマニピュレータの制御装
置としては,論文”Impedance Contro
lAn Approach to Manipulat
ion”,  ASME J. of Dynamic
 Systems,  Measurement,an
d Control, N.Hogan, Vol.1
07−1, pp.1/22 (1985) に開示さ
れた装置がある。上記制御装置に対応する制御ブロック
図を図4に示す。同図において,マニピュレータの制御
装置1a は,マニピュレータ20のワーク取扱い部の
目標とする動力学的な挙動を表現する動力学インピーダ
ンスの設定部3を備えている。上記動力学インピーダン
ス設定部3には,それぞれ目標弾性mにより除されてな
る目標弾性係数行列4(k/m),目標粘性係数行列5
(b/m),目標慣性係数行列6(1/m)が予め設定
されている。又,上記マニピュレータ20のワーク取扱
い部には,外部環境からの反力Fのベクトルを検出する
,例えば歪センサよりなる力センサ14が設けられてい
る。上記マニピュレータ20の動作は次の運動方程式で
与えられる。         M(θ)・d2 θ/dt2 +C(
dθ/dt,θ)                =
τ+J(θ)T ・F+D             
         …(1)ここで,        
          θ:関節角(ベクトル)M(θ)
:慣性項(行列) C(dθ/dt,θ):コリオリ力,求心力,粘性,ク
ーロン摩擦等の非線形項(行列) τ:関節モータに与えられるトルク D:トルクリップル等の外乱 J(θ)T :ヤコビアンの転置行列 F:ワーク取扱い部が外部環境から受ける反力そして,
上記制御装置1a は,マニピュレータ20の関節モー
タに設けられた角度センサ21より出力された関節の揺
動角(角度θ)に基づいて,上記ワーク取扱い部の状態
量としての位置x,速度dx/dtを微分器34,変換
部2を用いて演算する。更に,上記制御装置1a は,
上記位置xと目標位置設定部7より設定された目標位置
x0 との偏差x−x0 と,上記演算された速度dx
/dtと,上記力センサ14より出力された反力Fと,
上記動力学インピーダンス設定部3の各係数行列4,5
,6とより設定インピーダンスgを演算するようになっ
ている。上記設定インピーダンスgは,ワーク取扱い部
に指令として与えられる加速度に相当し,変換部8にお
いて上記角度θの関数に変換される。即ち,上記設定イ
ンピーダンスgを求める構成が本発明にいう加速度演算
手段である。上記変換部8では,次の(2)式を用いて
上記設定インピーダンスgに相当する加速度d2 x/
dt2 を角加速度d2 θ/dt2 に変換する。         d2 θ/dt2 =J(θ)−1{
d2 x/dt2 −(dθ/dt)2       
                  ・dJ(θ)/
dθ}                  …(2)
又,慣性項演算部31はワーク取扱い部に係る慣性項を
求めるための数学モデルを備えている。そして,上記変
換部8を経て慣性項演算部31に入力された角度θと上
記数学モデルとに基づいて,そのときのマニピュレータ
20の慣性項の推定値M* (θ)が求められ,この推
定値M* (θ)と上記変換された角加速度d2 θ/
dt2 とにより慣性力の推定値M* (θ)・d2 
θ/dt2 が求められる。即ち,上記変換部8及び慣
性項演算部31が,上記演算された加速度指令値d2 
x/dt2 と上記関節の角度θ(位置),角加速度d
θ/dtに基づいて上記加速度指定値を実現するために
必要なマニピュレータ20の慣性力の推定値M* (θ
)・d2 θ/dt2 を演算する推定値演算手段であ
る。一方,非線形補償演算器30はコリオリ力,求心力
,粘性,クーロン摩擦等の項(以下,非線形項という)
を求めるための数学モデルを備えている。上記非線形項
は,上記関節の角度,角速度に基づいて上記数学モデル
を解いて得た推定値C* (dθ/dt,θ)である。 そして,上記慣性力の推定値M* (θ)・d2 θ/
dt2 と,非線形項の推定値C* (dθ/dt,θ
)と,上記力センサ14により検出され変換部32によ
り角度θの関数に変換された反力F・J(θ)T とに
基づいて,ワーク取扱い部の動力学特性が上記動力学イ
ンピーダンス設定部3に設定された目標弾性・粘性・慣
性k,b,mになるようなトルクτが求められる。ちな
みに,上記制御装置1a に設定され,上記トルクτに
対応する演算式を以下の(3)式に示す。         τ=C* (θ,dθ/dt)−J(
θ)T ・F+M* (θ)J(θ)−1      
      ・{−(dθ/dt)2 ・dJ(θ)/
dθ+m−1{F−b            ・dx
/dt−k(x−x0 )}}           
       …(3)但し,x=L(θ),dx/d
t=J(θ)・dθ/dtが成立し,L(θ)は関節座
標系から直行座標系への変換行列であるとする。又,上
記設定インピーダンスgは次式で表わされる。     g=g(F,dx/dt,x,d2 x0 /
dt2 ,dx0 /dt,x0 )      =m
−1・{F−b・dx/dt−k(x−x0 )}  
        …(4)上記制御装置1a により制
御されるマニピュレータ20を用いて,予め設定された
目標軌道に対するワーク取扱い部の倣い動作を行った例
を図5に示す。同図において,ワーク取扱い部の目標軌
道P0 上には障害物40が存在している。上記ワーク
取扱い部は,予め設定された目標軌道P0 に追随する
ように,関節モータの駆動により始点Sから図中時計廻
りに移動する。このときのワーク取扱い部の実際の移動
軌跡を実線P2 で示す。そして,ワーク取扱い部が障
害物40に接触すると,ワーク取扱い部は障害物40の
表面に沿って移動し,同時に障害物40からの反力Fを
受ける。上記反力Fはワーク取扱い部の力センサ14に
より検出される。但し,図中反力Fを示す複数の直線は
,それぞれの直線が交差する障害物40上からの反力の
ベクトルを示す。
[Prior Art] As a control device for the above-mentioned manipulator, there is a method described in the paper "Impedance Control".
lAn Approach to Manipulation
ion”, ASME J. of Dynamic
Systems, Measurement, an
d Control, N. Hogan, Vol. 1
07-1, pp. There is a device disclosed in 1/22 (1985). A control block diagram corresponding to the above control device is shown in FIG. In the figure, the manipulator control device 1a is equipped with a dynamic impedance setting section 3 that expresses the target dynamic behavior of the workpiece handling section of the manipulator 20. The dynamic impedance setting unit 3 includes a target elastic coefficient matrix 4 (k/m) divided by the target elasticity m, and a target viscosity coefficient matrix 5.
(b/m) and a target inertia coefficient matrix 6 (1/m) are set in advance. Further, the workpiece handling section of the manipulator 20 is provided with a force sensor 14 made of, for example, a strain sensor, which detects the vector of the reaction force F from the external environment. The operation of the manipulator 20 is given by the following equation of motion. M(θ)・d2 θ/dt2 +C(
dθ/dt, θ) =
τ+J(θ)T ・F+D
…(1) Here,
θ: Joint angle (vector) M(θ)
: Inertia term (matrix) C (dθ/dt, θ): Nonlinear term (matrix) such as Coriolis force, centripetal force, viscosity, Coulomb friction, etc. τ: Torque given to joint motor D: Disturbance J (θ) such as torque ripple T: Transposed matrix of Jacobian F: Reaction force that the workpiece handling section receives from the external environment, and
The control device 1a determines the position x and speed dx/dx of the workpiece handling section based on the swing angle (angle θ) of the joint output from the angle sensor 21 provided on the joint motor of the manipulator 20. dt is calculated using the differentiator 34 and the converter 2. Furthermore, the control device 1a is
The deviation x−x0 between the above position x and the target position x0 set by the target position setting unit 7, and the above calculated speed dx
/dt, the reaction force F output from the force sensor 14,
Each coefficient matrix 4, 5 of the dynamic impedance setting section 3
, 6 to calculate the set impedance g. The set impedance g corresponds to the acceleration given as a command to the workpiece handling section, and is converted by the conversion section 8 into a function of the angle θ. That is, the configuration for determining the set impedance g is the acceleration calculation means according to the present invention. The conversion unit 8 calculates the acceleration d2 x/corresponding to the set impedance g using the following equation (2).
Convert dt2 to angular acceleration d2 θ/dt2. d2 θ/dt2 = J(θ)-1{
d2 x/dt2 - (dθ/dt)2
・dJ(θ)/
dθ} …(2)
Further, the inertia term calculation unit 31 includes a mathematical model for determining an inertia term related to the workpiece handling unit. Then, the estimated value M* (θ) of the inertia term of the manipulator 20 at that time is determined based on the angle θ input to the inertia term calculation unit 31 via the conversion unit 8 and the above mathematical model. Value M* (θ) and the above converted angular acceleration d2 θ/
dt2, the estimated value of inertia force M* (θ)・d2
θ/dt2 is determined. That is, the converter 8 and the inertia term calculator 31 convert the calculated acceleration command value d2 into
x/dt2, the angle θ (position) of the above joint, and the angular acceleration d
The estimated value M* (θ
)・d2 θ/dt2 is an estimated value calculation means. On the other hand, the nonlinear compensation calculator 30 uses terms such as Coriolis force, centripetal force, viscosity, and Coulomb friction (hereinafter referred to as nonlinear terms).
It is equipped with a mathematical model to find the . The nonlinear term is an estimated value C* (dθ/dt, θ) obtained by solving the mathematical model based on the angle and angular velocity of the joint. Then, the estimated value of the above inertial force M* (θ)・d2 θ/
dt2 and the estimated value of the nonlinear term C* (dθ/dt, θ
) and the reaction force F・J(θ)T detected by the force sensor 14 and converted into a function of the angle θ by the conversion unit 32, the dynamic characteristics of the workpiece handling unit are determined by the dynamic impedance setting unit. The torque τ that satisfies the target elasticity, viscosity, and inertia k, b, and m set as 3 is calculated. Incidentally, the calculation formula set in the control device 1a and corresponding to the torque τ is shown in the following equation (3). τ=C* (θ, dθ/dt)−J(
θ)T ・F+M* (θ)J(θ)−1
・{-(dθ/dt)2 ・dJ(θ)/
dθ+m−1 {F−b ・dx
/dt-k(x-x0)}}
...(3) However, x=L(θ), dx/d
Assume that t=J(θ)·dθ/dt holds, and L(θ) is a transformation matrix from the joint coordinate system to the orthogonal coordinate system. Further, the above-mentioned set impedance g is expressed by the following equation. g=g(F, dx/dt, x, d2 x0 /
dt2,dx0/dt,x0) = m
-1・{F-b・dx/dt-k(x-x0)}
(4) FIG. 5 shows an example in which the workpiece handling section follows a preset target trajectory using the manipulator 20 controlled by the control device 1a. In the figure, an obstacle 40 exists on the target trajectory P0 of the workpiece handling section. The workpiece handling section moves clockwise in the figure from the starting point S by the drive of the joint motor so as to follow a preset target trajectory P0. The actual movement locus of the workpiece handling section at this time is shown by a solid line P2. When the workpiece handling section comes into contact with the obstacle 40, the workpiece handling section moves along the surface of the obstacle 40 and receives a reaction force F from the obstacle 40 at the same time. The reaction force F is detected by the force sensor 14 of the workpiece handling section. However, in the figure, the plurality of straight lines indicating the reaction force F indicate the vector of the reaction force from above the obstacle 40 that each straight line intersects.

【0003】0003

【発明が解決しようとする課題】ところで,上記従来の
マニピュレータの制御装置1a において,上記慣性項
や非線形項の各推定値M* ,C* を用いてトルクを
演算する場合,演算されたトルク((3)式)には,上
記各推定値の推定誤差ΔM(θ)(=M(θ)−M* 
(θ)),ΔC(θ)(=C(dθ/dt,θ)−C*
 (dθ/dt,θ))(以下,モデル化誤差という。 ただし,M(θ),C(dθ/dt,θ)は未知であっ
て,上記各項の真値を示す。)が当然ながら含まれ上記
反力Fにも反映される。そのため,上記反力Fを用いて
演算される加速度は上記モデル化誤差により見掛け上小
さく演算される。従って,上記ワーク取扱い部の移動軌
跡P2 は図示の如く目標軌道P0 からずれるという
問題があった。そこで,上記制御装置1a では,上記
設定部3の各係数行列4,5,6(k/m,b/m,1
/m)の値を大きく設定変更することにより,上記目標
軌道P0 に対する移動軌跡の追随精度を高くすること
ができる。例えば,特に目標弾性kの値を図5の場合と
比べて3倍大きく設定したときのワーク取扱い部の倣い
動作を図6に示す。図示のように,上記移動軌跡P3 
は目標軌道P0 に近付いており,その追随精度が向上
している。 しかしながら,上記kの値の設定変更により,ワーク取
扱い部が受ける反力Fも約3倍の大きさになる。これで
は,上記ワーク取扱い部の目標軌道に対する追随精度と
所定の動力学特性に対応した動作とを同時に満足させる
ことができない。従って,本発明の目的とするところは
,ワーク取扱い部が設定された目標軌道に精度良く追随
し且つ設定された動力学特性で動作することのできるマ
ニピュレータの制御装置を提供することにある。
By the way, in the conventional manipulator control device 1a, when calculating torque using the estimated values M* and C* of the inertia term and nonlinear term, the calculated torque ( Equation (3)) contains the estimation error ΔM(θ) (=M(θ)−M*
(θ)), ΔC(θ)(=C(dθ/dt, θ)−C*
(dθ/dt, θ)) (hereinafter referred to as modeling error. However, M(θ) and C(dθ/dt, θ) are unknown and represent the true values of each term above.) It is also reflected in the reaction force F mentioned above. Therefore, the acceleration calculated using the reaction force F is apparently calculated to be small due to the modeling error. Therefore, there is a problem in that the movement trajectory P2 of the workpiece handling section deviates from the target trajectory P0 as shown in the figure. Therefore, in the control device 1a, each coefficient matrix 4, 5, 6 (k/m, b/m, 1
By changing the value of /m) to a large value, it is possible to increase the accuracy of tracking the movement trajectory with respect to the target trajectory P0. For example, FIG. 6 shows the copying operation of the workpiece handling section when the value of the target elasticity k is set three times larger than that shown in FIG. 5. As shown, the above movement trajectory P3
is approaching the target trajectory P0, and its tracking accuracy is improving. However, by changing the setting of the value of k described above, the reaction force F applied to the workpiece handling section also becomes about three times as large. In this case, it is not possible to simultaneously satisfy the following accuracy of the workpiece handling section with respect to the target trajectory and the operation corresponding to the predetermined dynamic characteristics. Therefore, an object of the present invention is to provide a manipulator control device that allows a workpiece handling section to accurately follow a set target trajectory and operate with set dynamic characteristics.

【0004】0004

【課題を解決するための手段】上記目的を達成するため
に,本発明が採用する主たる手段は,その要旨とすると
ころが,複数のリンクを関節を介して連結してなるマニ
ピュレータの,あるリンクに設けられたワーク取扱い部
の位置,速度,反力と上記ワーク取扱い部の設定された
動力学特性とに基づいて上記ワーク取扱い部の加速度指
令値を演算する加速度演算手段と,上記加速度指令値を
実現するために必要な上記マニピュレータの慣性力の推
定値を上記加速度指令値と上記関節の位置,速度に基づ
いて演算する推定値演算手段とを少なくとも備え,少な
くとも上記慣性力の推定値と上記反力とによって上記関
節を駆動する駆動源のトルクを演算し出力する制御装置
において,上記ワーク取扱い部の加速度を検出する加速
度検出手段と,上記演算された加速度指令値と上記加速
度検出手段により検出された加速度との差にゲインを乗
じた値を上記演算された加速度指令値に加算する制御ル
ープを具備してなる点に係るマニピュレータの制御装置
として構成されている。
[Means for Solving the Problems] In order to achieve the above object, the main means adopted by the present invention is to connect a certain link of a manipulator formed by connecting a plurality of links via joints. an acceleration calculation means for calculating an acceleration command value for the workpiece handling section based on the position, speed, and reaction force of the workpiece handling section provided and set dynamic characteristics of the workpiece handling section; at least an estimated value calculation means for calculating an estimated value of the inertia force of the manipulator necessary for realizing the above based on the acceleration command value and the position and velocity of the joint; In the control device that calculates and outputs the torque of the drive source that drives the joint according to the force, the control device includes an acceleration detection means that detects the acceleration of the workpiece handling section, and an acceleration command value detected by the acceleration command value and the acceleration detection means that detects the acceleration of the workpiece handling section. The control device for the manipulator includes a control loop that adds a value obtained by multiplying the difference between the acceleration and the calculated acceleration by a gain to the calculated acceleration command value.

【0005】[0005]

【作用】本発明のマニピュレータの制御装置では,マニ
ピュレータの関節を駆動する駆動源に出力されるトルク
の演算の際に,推定値演算手段により演算されたワーク
取扱い部の慣性力の推定値が少なくとも用いられる。推
定値というのは一般的に推定誤差を含んでいるので,ワ
ーク取扱い部が上記トルクに基づいて駆動された結果そ
のときのワーク取扱い部の加速度や外部から受けた反力
にも上記推定誤差が反映される。即ち,加速度検出手段
により検出された加速度と上記加速度演算手段により演
算された加速度指令値との差は上記推定誤差や例えば外
乱を表わす。そこで,上記検出された加速度と上記演算
された加速度指令値との差にゲインを乗じ,このゲイン
を設定変更することにより上記慣性力の推定値に含まれ
る推定誤差を調整することができる。従って,上記制御
装置は,ワーク取扱い部が設定された動力学特性に基づ
く動作になるように,ワーク取扱い部を精度良く駆動制
御することができる。
[Operation] In the manipulator control device of the present invention, when calculating the torque output to the drive source that drives the joints of the manipulator, the estimated value of the inertia force of the workpiece handling section calculated by the estimated value calculation means is at least used. Estimated values generally include estimation errors, so when the workpiece handling section is driven based on the above torque, the acceleration of the workpiece handling section at that time and the reaction force received from the outside also include the above estimation error. reflected. That is, the difference between the acceleration detected by the acceleration detection means and the acceleration command value calculated by the acceleration calculation means represents the estimation error or, for example, disturbance. Therefore, by multiplying the difference between the detected acceleration and the calculated acceleration command value by a gain, and changing the setting of this gain, it is possible to adjust the estimation error included in the estimated value of the inertial force. Therefore, the above control device can accurately drive and control the workpiece handling section so that the workpiece handling section operates based on the set dynamic characteristics.

【0006】[0006]

【実施例】以下添付図面を参照して,本発明を具体化し
た実施例につき説明し,本発明の理解に供する。尚,以
下の実施例は,本発明を具体化した一例であって,本発
明の技術的範囲を限定する性格のものではない。ここに
,図1は本発明の一実施例に係るマニピュレータを示す
斜視図,図2は上記マニピュレータの制御装置を示すブ
ロック構成図,図3は上記マニピュレータのワーク取扱
い部の目標軌道に対する倣い動作を示す説明図である。 但し,図4に示した上記従来のマニピュレータの制御装
置1a と共通する要素には,同一の符号を使用すると
共に,その詳細な説明は省略する。本実施例に係るマニ
ピュレータ20は,図1に示すように,図示せぬ基台側
に固定された第1の関節モータ9a と,この関節モー
タ9a の回転駆動軸に固設された第1のリンク23と
,このリンク23の先端に固設された第2の関節モータ
9b と,この関節モータ9b の回転駆動軸に設けら
れた第2のリンク24と,リンク24の先端に配備され
たワーク取扱い部25とよりなっている。上記関節モー
タ9a 及び9b には,それぞれ角度センサ21とし
てのエンコーダ(360000p/回転)が一体的に設
けられており,上記基台に対して揺動するリンク23の
角度θa やリンク23の軸芯に対して揺動するリンク
24の角度θb を検出し出力するようになっている。 そして,上記リンク23及び24のリンク長は予め決ま
っているので,これらの角度θa 及びθb により上
記ワーク取扱い部25の,例えばx方向の位置が決定さ
れる。なお,図1中の関節モータ9は上記関節モータ9
a 及び9b のいずれも含むものであって,同じく角
度θは上記角度θa 及びθb を表わしている。そし
て,上記マニピュレータ20を制御する制御装置1は,
図2に示すように,上記従来の制御装置1a と基本的
構成をほぼ同様とし,上記従来の制御装置1a と構造
上異なる点は,上記角度センサ21により検出された角
度θに基づいて,角加速度d2 θ/dt2 ,加速度
d2 x/dt2 を演算する微分器33及び変換部2
と,上記目標インピーダンス設定部3からの設定インピ
ーダンスg(加速度指令値)と上記変換部2からの加速
度d2 x/dt2 との差(g−d2 x/dt2 
)を求める減算器17と,上記差(g−d2 x/dt
2 )に乗じられるゲインGを設定するゲイン設定部1
5と,上記差にゲインGを乗じた値G(g−d2 x/
dt2 )を上記設定インピーダンスgに加算する加算
器16とを備え,上記減算器17,ゲイン設定部15,
加算器16よりなる制御ループ構成が採用されたことで
ある。又,上記制御装置1では,ワーク取扱い部25の
目標速度dx0 /dtを設定する目標速度設定部12
と,目標加速度d2 x0 /dt2 を設定する目標
加速度設定部13とが設けられ,上記設定インピーダン
スgの演算において上記変換部2からの位置,速度とそ
れぞれの目標値との偏差と,上記目標加速度設定部13
からの目標加速度とが用いられるようになっている。従
って,上記設定インピーダンスgは次の(5)式のよう
に示される。         g=d2 x0 /dt2 +m−1
{F−b(dx/dt−dx0 /dt)      
      −k(x−xo )}         
                       …(
5)そして,上記設定インピーダンスgは変換部8にお
いて(2)式により角加速度に変換される。
DESCRIPTION OF THE PREFERRED EMBODIMENTS Examples embodying the present invention will be described below with reference to the accompanying drawings to provide an understanding of the present invention. It should be noted that the following examples are examples of embodying the present invention, and are not intended to limit the technical scope of the present invention. Here, FIG. 1 is a perspective view showing a manipulator according to an embodiment of the present invention, FIG. 2 is a block diagram showing a control device of the manipulator, and FIG. FIG. However, the same reference numerals are used for elements common to those of the conventional manipulator control device 1a shown in FIG. 4, and detailed explanation thereof will be omitted. As shown in FIG. 1, the manipulator 20 according to the present embodiment includes a first joint motor 9a fixed to a base (not shown) and a first joint motor 9a fixed to the rotational drive shaft of the joint motor 9a. A link 23, a second joint motor 9b fixed to the tip of the link 23, a second link 24 provided to the rotational drive shaft of the joint motor 9b, and a workpiece placed at the tip of the link 24. It consists of a handling section 25. The joint motors 9a and 9b are each integrally provided with an encoder (360000p/rotation) as an angle sensor 21, and the angle θa of the link 23 swinging with respect to the base and the axis of the link 23 can be measured. The angle θb of the link 24 swinging with respect to the angle θb is detected and output. Since the link lengths of the links 23 and 24 are determined in advance, the position of the workpiece handling section 25 in, for example, the x direction is determined by these angles θa and θb. Note that the joint motor 9 in FIG.
a and 9b, and similarly, the angle θ represents the above-mentioned angles θa and θb. The control device 1 that controls the manipulator 20 includes:
As shown in FIG. 2, the basic configuration is almost the same as that of the conventional control device 1a, and the difference in structure from the conventional control device 1a is that the angle θ detected by the angle sensor 21 is Differentiator 33 and converter 2 that calculate acceleration d2 θ/dt2 and acceleration d2 x/dt2
and the difference between the set impedance g (acceleration command value) from the target impedance setting section 3 and the acceleration d2 x/dt2 from the converting section 2 (g-d2 x/dt2
), and the subtracter 17 calculates the above difference (g-d2 x/dt
2) Gain setting unit 1 that sets the gain G to be multiplied by
5, and the value G (g-d2 x/
dt2) to the set impedance g, the subtracter 17, the gain setting section 15,
This is because a control loop configuration consisting of an adder 16 is adopted. Further, the control device 1 includes a target speed setting section 12 that sets the target speed dx0/dt of the workpiece handling section 25.
and a target acceleration setting section 13 for setting the target acceleration d2 Setting section 13
The target acceleration from Therefore, the set impedance g is expressed by the following equation (5). g=d2 x0 /dt2 +m-1
{F-b(dx/dt-dx0/dt)
−k(x−xo)}
…(
5) Then, the set impedance g is converted into angular acceleration in the conversion section 8 using equation (2).

【0007】一方,慣性項演算部31,非線形補償演算
器30は上記関節モータ9の角度センサ21から出力さ
れた角度θ,及びこの角度θから微分器33,34によ
り演算された角速度,角加速度に基づいて,慣性項の推
定値M* ( θ)と,上記非線形項の推定値C* (
θ,dθ/dt)を求める。即ち,上記角度センサ21
,微分器33が上記ワーク取扱い部25の加速度を検出
する加速度検出手段である。そして,上記関節モータ9
に与えられるべきトルクτは次の(6)式により求めら
れる。 即ち,(6)式が上記マニピュレータ20の制御則を表
わす。         τ=C* (θ,dθ/dt)−J(
θ)T F+M* (θ)J(θ)−1       
     {−(dθ/dt)2 ・dJ(θ)/dθ
+g  +G(g−d2 x            
/dt2 )}                  
                    …(6)従
って,上記ワーク取扱い部25の加速度d2 x/dt
2 は,(1)式,(5)式及びモデル化誤差を示す式
(ΔM=M(θ)−M* (θ),ΔC=C(dθ/d
t,θ)−C* (dθ/dt,θ))より,次の(7
)式のように示される。         d2 x/dt2 =g+{I+G}
−1{J(θ)}m−1{ΔM(θ)        
                ・d2 θ/dt2
 +ΔC(dθ/dt,θ)−D}         
                         
                         
     …(7)但し,Iは単位行列である。上記(
7)式において,右辺第2項は,モデル化誤差及び外乱
Dによる加速度d2 x/dt2 への影響を表わして
いる。そこで,上記ゲイン設定部15からゲインGを設
定変更することにより,上記モデル化誤差及び外乱の影
響を調整することができる。例えば,上記ゲインGを十
分大きくすることにより上記モデル化誤差及び外乱の影
響を極めて小さくすることが可能で,これによって,演
算された加速度d2 x/dt2 を上記設定インピー
ダンスgに限りなく近づけることができる。なお,上記
変換部2,8,32,動力学インピーダンス設定部3,
非線形補償演算器30,慣性項演算部31,微分器33
,34,ゲイン設定部15,加算器16,減算器17は
,図外のCPU上で動くソフトウエアにより全て構成さ
れ,プログラムとして同じく図外のメモリに格納されて
いる。また,上記マニピュレータ20は制御装置1のC
PUにより4ミリ秒のサンプリング周期で制御される。 なお,上記非線形補償算器30の数学モデルにおいて,
関節モータ9の駆動軸の粘性とクーロン摩擦とは停止中
の駆動軸に力(トルク)をステップ状に変えて与え,上
記駆動軸が動き始めた時のトルクを実測しこれに基づい
て予め求めた。また,上記慣性項に係る係数は,上記関
節モータ9に白色ノイズ状のトルクを与え,このとき同
時に計測して得た。
On the other hand, the inertia term calculation unit 31 and the nonlinear compensation calculation unit 30 calculate the angle θ output from the angle sensor 21 of the joint motor 9, and the angular velocity and angular acceleration calculated from the angle θ by the differentiators 33 and 34. Based on , the estimated value M* (θ) of the inertial term and the estimated value C* (
θ, dθ/dt). That is, the angle sensor 21
, the differentiator 33 is an acceleration detection means for detecting the acceleration of the workpiece handling section 25. Then, the joint motor 9
The torque τ to be applied to is determined by the following equation (6). That is, equation (6) represents the control law for the manipulator 20. τ=C* (θ, dθ/dt)−J(
θ)T F+M* (θ)J(θ)-1
{-(dθ/dt)2 ・dJ(θ)/dθ
+g +G(g-d2 x
/dt2)}
...(6) Therefore, the acceleration of the workpiece handling section 25 d2 x/dt
2 are equations (1), (5), and the modeling error equation (ΔM=M(θ)−M*(θ), ΔC=C(dθ/d
t, θ)-C* (dθ/dt, θ)), the following (7
) is shown as the formula. d2 x/dt2 =g+{I+G}
-1{J(θ)}m-1{ΔM(θ)
・d2 θ/dt2
+ΔC(dθ/dt,θ)−D}


...(7) However, I is a unit matrix. the above(
In Equation 7), the second term on the right side represents the influence of modeling error and disturbance D on acceleration d2 x/dt2 . Therefore, by changing the setting of the gain G from the gain setting section 15, the influence of the modeling error and disturbance can be adjusted. For example, by making the gain G sufficiently large, the effects of the modeling error and disturbance can be made extremely small, thereby making it possible to bring the calculated acceleration d2 x/dt2 as close as possible to the set impedance g. can. Note that the converting sections 2, 8, and 32, the dynamic impedance setting section 3,
Nonlinear compensation calculator 30, inertia term calculator 31, differentiator 33
, 34, the gain setting unit 15, the adder 16, and the subtracter 17 are all configured by software running on a CPU (not shown), and are stored as a program in a memory (not shown). Further, the manipulator 20 is connected to the C of the control device 1.
It is controlled by the PU at a sampling period of 4 milliseconds. In addition, in the mathematical model of the nonlinear compensation calculator 30,
The viscosity and Coulomb friction of the drive shaft of the joint motor 9 are determined in advance by applying force (torque) to the stopped drive shaft in steps and measuring the torque when the drive shaft starts moving. Ta. Further, the coefficient related to the inertia term was obtained by applying a white noise-like torque to the joint motor 9 and simultaneously measuring the torque.

【0008】上記した構成のマニピュレータ20の制御
装置1を用いて,ワーク取扱い部25の目標軌道に対す
る倣い動作を行なった例に付き図3に示す。この場合,
上記制御装置1には,上記ワーク取扱い部25の移動す
る目標位置x0 として従来と同様の目標軌道P0 が
予め設定されている。又,上記動力学インピーダンス設
定部3の目標弾性k,目標粘性b,目標慣性mとしては
,例えばk=1000N/m,b=200Ns/m,m
=10Kgが設定されている。これらは従来(図5)に
おいて設定されたものと同じ値である。更に,上記ゲイ
ンGとしては,G=2Iが設定されている。従来手法で
あれば上記ゲインGはG=0に相当するが,上記ゲイン
G(2I)の設定により,上記(7)式の右辺第2項の
値が従来と比べて1/3になり,制御精度が3倍になる
。そこで,上記マニピュレータ20の関節モータ9に上
記(6)式により求めたトルクτを与えると,ワーク取
扱い部25が始点Sから移動を始める。このとき,上記
ワーク取扱い部25が移動した移動軌跡P1 及びワー
ク取扱い部25が受けた反力Fを同図に示す。それによ
れば,上記マニピュレータ20のワーク取扱い部25は
,従来(図5)と比べて,同等の反力Fを障害物40か
ら受けつつ目標軌道P0 により近い移動軌跡P1 で
移動している。上記したように,本実施例のマニピュレ
ータの制御装置1は,上記モデル化誤差や外乱の影響を
ゲインGの調整によって任意に小さくすることにより,
ワーク取扱い部25を,設定された動力学特性に対応し
た動作で駆動し得る制御手法を採用しており,ワーク取
扱い部25の目標軌道追随精度を飛躍的に改善すること
ができる。しかも,従来と比べて,CPU演算に関して
減算(減算器17),加算(加算器16),乗算(ゲイ
ン設定部15)をひとつずつ増やすだけですむので,C
PU負荷は大きく増大しない。又,一般的に設定インピ
ーダンスgの設定範囲はワーク取扱い部25の位置,速
度,加速度のフィードバック量の上限により制限される
。しかしながら,本実施例装置によれば,ゲインGを変
化させることにより設定インピーダンスgと上記フィー
ドバック量との関係を従来よりも自由に決定することが
できる。従って,上記ゲインGを調整してフィードバッ
ク量の上限を超えないようにすることにより,設定イン
ピーダンスgの設定範囲を広げることができる。一方,
ワーク取扱い部25が,例えば硬い外部環境と接触する
場合,上記目標インピーダンス設定部3の目標弾性kの
値を小さく設定する必要がある。このような場合,従来
手法によれば,上記目標弾性kを小さく設定すると目標
軌道追随精度が極めて悪くなる。ところが,本願手法に
よれば,上記目標弾性kの値が小さくとも上記ゲインG
を大きく設定することにより,良好な追随精度でインピ
ーダンス制御を行うことができる。従って,硬い外部環
境と接触しながら高い追随精度が要求される作業や,例
えば破損しやすい部品の組立作業を精度良く行うことが
できる。
FIG. 3 shows an example in which the control device 1 of the manipulator 20 having the above-mentioned configuration is used to perform a copying operation for the target trajectory of the workpiece handling section 25. in this case,
In the control device 1, a target trajectory P0 similar to the conventional one is set in advance as the target position x0 to which the workpiece handling section 25 moves. Further, the target elasticity k, target viscosity b, and target inertia m of the dynamic impedance setting section 3 are, for example, k=1000N/m, b=200Ns/m, m
=10Kg is set. These are the same values as those set in the conventional case (FIG. 5). Further, the gain G is set to G=2I. In the conventional method, the above gain G corresponds to G=0, but by setting the above gain G(2I), the value of the second term on the right side of the above equation (7) becomes 1/3 compared to the conventional method, Control accuracy is tripled. Therefore, when the torque τ determined by the above equation (6) is applied to the joint motor 9 of the manipulator 20, the workpiece handling section 25 starts moving from the starting point S. At this time, the moving trajectory P1 of the workpiece handling section 25 and the reaction force F received by the workpiece handling section 25 are shown in the figure. According to this, the workpiece handling section 25 of the manipulator 20 is moving along a movement trajectory P1 closer to the target trajectory P0 while receiving the same reaction force F from the obstacle 40 as compared to the conventional method (FIG. 5). As described above, the manipulator control device 1 of this embodiment arbitrarily reduces the influence of the modeling error and disturbance by adjusting the gain G.
A control method is adopted in which the workpiece handling section 25 can be driven in an operation corresponding to the set dynamic characteristics, and the target trajectory tracking accuracy of the workpiece handling section 25 can be dramatically improved. Moreover, compared to conventional CPU operations, it is only necessary to increase one subtraction (subtracter 17), one addition (adder 16), and one multiplication (gain setting section 15).
PU load does not increase significantly. Further, the setting range of the set impedance g is generally limited by the upper limit of the feedback amount of the position, velocity, and acceleration of the workpiece handling section 25. However, according to the device of this embodiment, by changing the gain G, the relationship between the set impedance g and the feedback amount can be determined more freely than before. Therefore, by adjusting the gain G so as not to exceed the upper limit of the feedback amount, it is possible to widen the setting range of the set impedance g. on the other hand,
When the workpiece handling section 25 comes into contact with, for example, a hard external environment, it is necessary to set the value of the target elasticity k of the target impedance setting section 3 to a small value. In such a case, according to the conventional method, if the target elasticity k is set small, the target trajectory tracking accuracy becomes extremely poor. However, according to the method of the present invention, even if the value of the target elasticity k is small, the gain G
By setting a large value, impedance control can be performed with good tracking accuracy. Therefore, work that requires high tracking accuracy while coming into contact with a hard external environment, or work that assembles easily damaged parts, for example, can be performed with high precision.

【発明の効果】本発明は上記したように構成されている
。従って,上記ゲインを調整することにより,上記設定
された動力学特性に依存することなく制御精度を向上さ
せることができる。それにより,上記ワーク取扱い部は
上記設定された動力学特性で精度良く駆動制御される。
[Effects of the Invention] The present invention is constructed as described above. Therefore, by adjusting the gain, control accuracy can be improved without depending on the set dynamic characteristics. As a result, the workpiece handling section is accurately driven and controlled using the set dynamic characteristics.

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

【図1】  本発明の一実施例に係るマニピュレータを
示す斜視図。
FIG. 1 is a perspective view showing a manipulator according to an embodiment of the present invention.

【図2】  上記マニピュレータの制御装置を示すブロ
ック構成図。
FIG. 2 is a block configuration diagram showing a control device for the manipulator.

【図3】  上記マニピュレータのワーク取扱い部の目
標軌道に対する倣い動作を示す説明図。
FIG. 3 is an explanatory diagram showing a copying operation of the workpiece handling section of the manipulator with respect to a target trajectory.

【図4】  本発明の背景の一例となる従来のマニピュ
レータの制御装置を示すブロック構成図。
FIG. 4 is a block configuration diagram showing a conventional manipulator control device, which is an example of the background of the present invention.

【図5】  上記従来のマニピュレータのワーク取扱い
部の倣い動作を示す説明図。
FIG. 5 is an explanatory diagram showing the copying operation of the workpiece handling section of the conventional manipulator.

【図6】  図5の倣い動作とは異なる設定条件により
行った倣い動作を示す説明図。
FIG. 6 is an explanatory diagram showing a copying operation performed under different setting conditions from the copying operation in FIG. 5;

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

1,1a …制御装置 3…動力学インピーダンス設定部 4…目標弾性係数行列 5…目標粘性係数行列 6…目標慣性係数行列 8…変換部 9,9a ,9b …関節モータ 14…力センサ 15…ゲイン設定部 16…加算器 17…減算器 20…マニピュレータ 21…角度センサ 23…リンク 24…リンク 25…ワーク取扱い部 31…慣性項演算部 1, 1a...control device 3...Dynamic impedance setting section 4...Target elastic coefficient matrix 5...Target viscosity coefficient matrix 6...Target inertia coefficient matrix 8... Conversion section 9, 9a, 9b...Joint motor 14...force sensor 15...gain setting section 16... Adder 17...Subtractor 20...Manipulator 21...Angle sensor 23...Link 24...Link 25...Work handling section 31...Inertia term calculation unit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  複数のリンクを関節を介して連結して
なるマニピュレータの,あるリンクに設けられたワーク
取扱い部の位置,速度,反力と上記ワーク取扱い部の設
定された動力学特性とに基づいて上記ワーク取扱い部の
加速度指令値を演算する加速度演算手段と,上記加速度
指令値を実現するために必要な上記マニピュレータの慣
性力の推定値を上記加速度指令値と上記関節の位置,速
度に基づいて演算する推定値演算手段とを少なくとも備
え,少なくとも上記慣性力の推定値と上記反力とによっ
て上記関節を駆動する駆動源のトルクを演算し出力する
制御装置において,上記ワーク取扱い部の加速度を検出
する加速度検出手段と,上記演算された加速度指令値と
上記加速度検出手段により検出された加速度との差にゲ
インを乗じた値を上記演算された加速度指令値に加算す
る制御ループを具備してなることを特徴とするマニピュ
レータの制御装置。
[Claim 1] The position, velocity, and reaction force of a workpiece handling section provided on a certain link of a manipulator formed by connecting a plurality of links via joints, and the set dynamic characteristics of the workpiece handling section. an acceleration calculation means that calculates an acceleration command value for the workpiece handling section based on the acceleration command value, and an estimated value of the inertia force of the manipulator necessary to realize the acceleration command value, based on the acceleration command value and the position and velocity of the joint. and an estimated value calculating means for calculating based on the estimated value of the inertial force and the reaction force, the control device calculates and outputs the torque of the drive source that drives the joint based on the estimated value of the inertial force and the reaction force. and a control loop that adds a value obtained by multiplying the difference between the calculated acceleration command value and the acceleration detected by the acceleration detection means by a gain to the calculated acceleration command value. A manipulator control device characterized by:
JP7129691A 1991-04-04 1991-04-04 Controller for manipulator Pending JPH04306712A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7129691A JPH04306712A (en) 1991-04-04 1991-04-04 Controller for manipulator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7129691A JPH04306712A (en) 1991-04-04 1991-04-04 Controller for manipulator

Publications (1)

Publication Number Publication Date
JPH04306712A true JPH04306712A (en) 1992-10-29

Family

ID=13456566

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7129691A Pending JPH04306712A (en) 1991-04-04 1991-04-04 Controller for manipulator

Country Status (1)

Country Link
JP (1) JPH04306712A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10329071A (en) * 1997-05-30 1998-12-15 Yaskawa Electric Corp Impedance control device for robot arm
US9020642B2 (en) 2012-01-17 2015-04-28 Seiko Epson Corporation Robot controller, robot system, robot control method
US9050721B2 (en) 2012-01-17 2015-06-09 Seiko Epson Corporation Robot controller, robot system, robot control method

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10329071A (en) * 1997-05-30 1998-12-15 Yaskawa Electric Corp Impedance control device for robot arm
US9020642B2 (en) 2012-01-17 2015-04-28 Seiko Epson Corporation Robot controller, robot system, robot control method
US9050721B2 (en) 2012-01-17 2015-06-09 Seiko Epson Corporation Robot controller, robot system, robot control method
US9517562B2 (en) 2012-01-17 2016-12-13 Seiko Epson Corporation Robot controller, robot system, robot control method

Similar Documents

Publication Publication Date Title
EP0280324B1 (en) Nonlinear control unit for a multi-degree-of freedom manipulator
US4943759A (en) Multiple-articulated robot control apparatus
US5994864A (en) Robot controller
US4904152A (en) Industrial robot
JP6044511B2 (en) Robot control method and robot system
JP2604929B2 (en) Robot control device
US7433758B2 (en) Control apparatus of robot
JP4639417B2 (en) Robot control device
US11491666B2 (en) Control system, control method, and control program
JPH04306712A (en) Controller for manipulator
JP2906256B2 (en) Servo control device
JP2798518B2 (en) Manipulator control device
JP4134369B2 (en) Robot control device
JPH06332535A (en) Robot controller
JPS5858609A (en) Locus interpolating method of industrial robot
JP2960232B2 (en) Robot control device
JPS61121102A (en) Motor position controller
JP2691591B2 (en) Control system of force control robot
JP4507071B2 (en) Motor control device
JPH06104307B2 (en) Control device for articulated manipulator
JPS63314607A (en) Controller for articulated robot
JPS61217802A (en) Robot controller
Daniel et al. Chaos in high performance digital robot controllers
JPH117303A (en) Driving controller for servo system
JPH0245806A (en) Control device for position and force of multi-free working machine