JPH02198748A - 任意曲面の倣い制御装置 - Google Patents

任意曲面の倣い制御装置

Info

Publication number
JPH02198748A
JPH02198748A JP1265413A JP26541389A JPH02198748A JP H02198748 A JPH02198748 A JP H02198748A JP 1265413 A JP1265413 A JP 1265413A JP 26541389 A JP26541389 A JP 26541389A JP H02198748 A JPH02198748 A JP H02198748A
Authority
JP
Japan
Prior art keywords
force
speed
calculating
feed
work
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.)
Granted
Application number
JP1265413A
Other languages
English (en)
Other versions
JP3001211B2 (ja
Inventor
Kazunori Yamada
一徳 山田
Kunio Kashiwagi
柏木 邦雄
Tooru Kurenuma
透 槫沼
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 Construction Machinery Co Ltd
Original Assignee
Hitachi Construction Machinery 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 Hitachi Construction Machinery Co Ltd filed Critical Hitachi Construction Machinery Co Ltd
Publication of JPH02198748A publication Critical patent/JPH02198748A/ja
Application granted granted Critical
Publication of JP3001211B2 publication Critical patent/JP3001211B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Program-control systems
    • G05B19/02Program-control systems electric
    • G05B19/18Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form
    • G05B19/41Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of program data in numerical form characterised by interpolation, e.g. the computation of intermediate points between programmed end points to define the path to be followed and the rate of travel along that path
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Program-controlled manipulators
    • B25J9/16Program controls
    • B25J9/1679Program controls characterised by the tasks executed
    • B25J9/1684Tracking a line or surface by means of sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/37Measurements
    • G05B2219/37357Force, pressure, weight or deflection
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/45Nc applications
    • G05B2219/45151Deburring
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/49Nc machine tool, till multiple
    • G05B2219/49362Tool, probe at constant height to surface during machining

Landscapes

  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Manufacturing & Machinery (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)
  • Control Of Position Or Direction (AREA)
  • Machine Tool Copy Controls (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔−産業上の利用分野〕 本発明は少なくとも2自由度を持つロボットや工作機械
等の多自由度作業機械を用いた倣い制御装置に係わり、
特にパリ取り、曲面研磨等の曲面の倣い動作、教示、形
状計測、その他の動作を行うロボットや工作機械等の多
自由度作業機械を位置と力の制御で制御し、任意曲面を
倣わせる倣い制御装置に関する。
〔従来の技術〕
現在の産業用ロボットや自動工作機械のほとんどは、位
置情報をもとに位置の制御で動作している。しかしなが
ら、はめ合い作業や研磨作業に代表されるような作業で
は力加減を制御する必要が生じてきている。力加減を制
御するには位置と力の両方をうまく制御する必要があり
、このために種々の研究がなされている。その代表的な
ものに、位置制御と力制御を座標軸ごとに切換えて制御
するハイブリット制御や、位置と力の間をバネで関係f
けるコンプライアンス制御がある。
また近年、[計測自動制御学界論文集J vol 22
、No3 (1986)、343〜350頁、特開昭6
0−3010号及び特開昭61−7905号に記載のよ
うに仮想コンプライアンス制御と呼ばれているものがあ
る。これは、バネ・マス・ダンパーを有する力学系モデ
ルを仮想的に実現しようとするもので、力学系の式 m大十C交十にΔx=f のm、c、にの値を任意に与えて、その動作をソフトウ
ェア上で模擬して、その動きを実現するように制御を行
うものである。これを多自由度系で行うために、座標系
の各軸毎にm、c、にの値を変えられるようになってお
り、この値を適当に選べば各軸毎に特性を変えることが
出来る。またに=0にすれば、位置のフィードバックが
なくなり力制御モードになり、k、  cの値を大きく
してカフィードバックをなくすようにすれば、位置制御
モードとなり、いわゆるハイブリッド制御を行うことも
できる。このように仮想コンプライアンス制御は、ハイ
ブリッド制御とコンプライアンス制御を包含した制御方
式ということができる。
〔発明が解決しようとする課題〕
しかしながら、従来の仮想コンプライアンス制御を多自
由度作業機械を用いた倣い制御装置に応用した場合には
、任意曲面を倣わせるには限界があり、適切かつ効率的
な作業ができないという問題があった。
例えば、位置と力の制御により、ロボットが行う作業の
1つにワーク表面を倣って表面研磨やパリ取り等を行な
わせる曲面倣い動作がある。この場合、ロボットの作業
用ツールがワーク表面を倣って動くように制御される。
作業用ツールに加わる力及びモーメントは力センサによ
り検出される。
この曲面倣い動作を仮想コンプライアンス制御を応用し
て行う場合を考える。ここで、作業用ツールの移動方向
をX軸方向、作業用ツールの軸線方向を2軸方向とし、
簡単のためx−z平面で説明する。例えばX軸方向には
に、  cの値を大きくしてかたくし、作業用ツールを
位置制御によって速度V!で送り、2軸方向にはに=0
とし位置の拘束を解除し、作業用ツールを力制御により
目標力frで押し付ける。このとき、力センサにより検
出される力をfとすると、作業用ツールはz軸方向には m※t  +cvt  =f−fr の式を模擬して動いているので、速度変化のない定常状
態ではCV! =f−ftとなり、曲面を倣う速度vx
を発生するには、それに応じた力偏差Δf=f−frが
なければならないことが分かる。
ここでX方向の送り速度vxを一定とすると、速度v寞
は曲面の勾配に比例する。従って力偏差Δfは曲面の勾
配に比例した値となり、押付カーfは曲面の勾配によっ
て変化する。今、倣い動作で許容される力偏差をΔfO
とすれば、定常状態で追従できる勾配は Cv x となる。
ここで1 / cを大きくすれば、追従できる勾配も大
きくなるが、1 / cは力に対する速度のゲイン(v
=1/C11f)になるので、これを大きくするとハン
チングを起こしてしまう。そのため1/Cは小さくせね
ばならず、大きな勾配に対しては送り速度vxを小さく
して対応するしかなく、効率的でなく実用性に乏しくな
る。
このように、従来の倣い制御装置では任意曲面を倣わせ
るには限界がある。
本発明の目的は、曲面の勾配のいかんに係わらず必要な
送り速度で送ることができ、適切かつ効率的な作業を行
うことのできる多自由度作業機械を用いた倣い制御装置
を提供することにある。
〔課題を解決するための手段および作用〕上記目的を達
成するため、本発明によれば、ワーク面から作業用ツー
ルに加わる力を検出する手段、この検出した力と予め設
定した作業用ツールの押付は力の目標値ioとの偏差を
とる手段、この偏差に基づいて作業用ツールの速度指令
値uzを演算する手段、この速度指令値uxに基づいて
多自由度作業機械を動かす手段を含む少なくとも1つの
力制御ループと、作業用ツールの少なくとも1つの速度
指令値uxを指令する手段と、この速度指令値uxに基
づいて多自由度作業機械を動かす手段とを備えた、少な
くとも2自由度を持つ多自由度作業機械を用いた倣い制
御装置において、作業用ツールをワーク面上に前記力の
目標値fr。
で押付けながら前記速度指令値uxで送るときに、その
送り方向に対するワーク面の勾配tanαにより生じる
作業用ツールの押付は方向の移動速度VXo]を与える
(p「ovideする)第1の制御手段と、この押付は
方向の移動速度vzolを用いて前記力制御ループの制
御量f+oまたはuzを補正し、その速度v xofに
よる力fo[を相殺する(cancelする)第2の制
御手段とを有する任意曲面の倣い制御装置が提供される
一般に、本発明の係わる倣い制御装置においては、作業
用ツールをワーク面上に力の目標値fr。
で押付けながら速度指令値uxの基づく送り速度V!で
倣わせる場合、その送り方向に対するワーク面の勾配f
anαにより、押付は方向にvzof =V 1111
1αの速度を生じ、目標値froの力とは別に、その速
度V !i11によるfof=cvxlanα(Cは定
数)という押付は方向の力が発生する。
本発明においては、第1の制御手段ではその移動速度v
zofが与えられ(prowideされ)、第2の制御
手段ではこの移動速度vxorを用いて力制御ループの
制御量を補正し、その速度v wofによる力f、ol
を相殺する。このため、作業用ツールの押付は力は目標
値froにほぼ一致し、速度指令値V!にしたがった所
望の速度で倣うことが可能となる。
なお、「作業用ツールの少なくとも1つの速度指令値u
xを指令する手段」は種々の形態をとることができる。
例えば、ワーク面上を移動する作業用ツールの位置を検
出し、この検出した位置と予め設定した作業用ツールの
位置の目標値との偏差をとり、この偏差に基づいて作業
用ツールの速度指令値uxを演算する位置制御ループで
の手段であってもよく、ワーク面上を移動する作業用ツ
ールの速度を検出し、この検出した速度と予め設定した
作業用ツールの速度の目標値との偏差をとり、この偏差
に基づいて作業用ツールの速度指令値uzを演算する速
度制御ループでの手段であってもよい。また、これらの
場合、「予め設定した作業用ツールの位置の目標値」、
「予め設定した作業用ツールの速度の目標値」の代わり
にそれぞれ教示データとして記憶した位置情報から求め
た「作業用ツールの位置の目標値」、「作業用ツールの
速度の目標値」を用いてもよい。さらに、ジョイスティ
ック、キーボード等、オペレータの操作により直接速度
指令値uxを指令できる手段であってもよい。
第1の制御手段は、前記ワーク面の勾配tanαを演算
する第1の演算手段と、前記速度指令値UXで送られる
前記作業用ツールの送り速度vxを演算する第2の演算
手段と、前記第1の演算手段で求めた勾配tjnαと前
記第2の演算手段で求めた送り速度vxとから前記押付
は方向の移動速度vso[を演算する第3の演算手段と
で構成することができる。
ここで、第1の演算手段は、好ましくは、ワーク面上を
移動する作業用ツールの位置を検出する手段と、前記検
出手段で検出した作業用ツールのワーク面上の現在点を
含む2点の位置から前記ワ−り面の勾配tanαを演算
する手段とで構成される。この構成は、検出値としての
ワーク面上の2点の位置を用いるのであるから倣い動作
中の演算に適している。
また、第1の演算手段は、ワーク面上を移動する作業用
ツールの位置を検出する手段と、前記検出手段で検出し
た作業用ツールの現在点を含む2点の位置から前記作業
用ツールの送り速度ベクトルVの方向を演算する手段と
、前記送り速度ベクトルVの方向と前記力検出手段で検
出した力の方向とから前記ワーク面の勾配tanαを演
算する手段とで構成してもよい。この場合も、倣い動作
中の演算に適している。
また、第1の制御手段は、前記ワーク面の勾配tanα
を演算する第4の演算手段と、前記作業用ツールの送り
目標速度v x7oを設定する手段と、前記第4の演算
手段で求めた勾配tanαと前記送り目標速度V I7
0とから前記押付は方向の移動速度V !01を演算す
る第5の演算手段とで構成してもよい。
この場合、第4の演算手段は、好ましくは、ワーク面上
を移動する作業用ツールの位置を検出する手段と、作業
用ツールの送り目標位置を予め設定する手段と、前記検
出手段で検出した作業用ツールのワーク面上の現在点の
位置と前記設定手段で予め設定した送り目標位置との2
点の位置から作業用ツールの押付は方向に垂直な方向の
送り方向ベクトルmを演算する手段と、前記送り方向ベ
クトルmと前記力検出手段で検出した力の方向とから前
記ワーク面の勾配tanαを演算する手段とで構成され
る。これは、2点の位置の1つとして予め設定した送り
目標位置を用いるのであるから、作業用ツールがまだ移
動していない倣い動作開始時の演算に適している。
なお、以上において、勾配tallαを演算するのに力
検出手段で検出した力の方向を用いる場合は、力として
は3軸方向の力が必要であり、従って、力検出手段とし
ては作業用ツールに加わる少なくとも直交3軸方向の力
を検出できるものを用いる。
以上は、第1の制御手段はワーク面の勾配tanαを演
算し、この勾配tanαを用いて移動速度Vvolを演
算したが、勾配Unαを用いずに移動速度vvo[を演
算してもよい。例えば、第1の制御手段は、ワーク面上
を移動する作業用ツールの位置を検出する手段と、前記
検出手段で検出した作業用ツールのワーク面上の現在点
を含む2点の位置とその2点の位置の移動時間とから前
記押付は方向の移動速度V 101を演算する第6の演
算手段とで構成してもよい。この場合は、勾配を演算す
る必要がないので、演算が容易となり、高速演算処理が
可能となる。
さらに、第1の制御手段は、ワーク面の形状が既知で、
押付は方向の移動速度V!+11が予め予測できる場合
にはその予測した値を記憶しておき、この値を用いる構
成としてもよい。
また、第1の制御手段は、前記ワーク面の勾配tanα
を予め記憶する手段と、前記作業用ツールの送り目標速
度v xToを設定する手段と、前記予め記憶した勾配
fanαと前記送り目標速度v xy。
とから押付は方向の移動速度v!01を演算する第7の
演算手段とで構成してもよい。この場合、予め記憶した
勾配tinαを用いるので、リアルタイムでワーク面の
勾配I!nαを演算する上述の場合よりも演算量が少な
くて済み、高速演算処理が可能となる。
一方、第2の制御手段は、前記押付は方向の移動速度v
 tojによって生じる力fatを演算する第8の演算
手段と、この方fofを前記力制御ループの押付は力の
目標値froから差し引いて新しい押付は力の目標値f
「を演算する第9の演算手段とで構成することができる
また、前記第2の制御手段は、前記押付は方向の移動速
度v tolを速度補正値VICとし、この速度補正値
vzcを前記力制御ループの速度指令値U!0に加算し
、新たな速度指令値uzを演算する第10の演算手段で
構成してもよい。
前述したように、作業用ツールをfanαという勾配の
ワーク面上で速度Vlで倣わせた場合、押付は方向にv
to1=vx tanαの速度を生じ、その速度v !
ofによりfof=cvx Inn a (Cは定数)
という力が発生するのであるから、その速度vzofに
よる力fofを相殺する(cancelする)には、そ
の制御量である押付は力の目標値froを補正してもよ
いし、速度指令値u!、を補正してもよい。従って、第
2の制御手段は、力fofを押付は力の目標値froか
ら差し引いて新しい押付は力の目標値frを演算するこ
とにより力の目標値ft。
で押付けながらワーク面を倣わせることができ、また、
押付は方向の移動速度v !ofを速度補正値vzcと
し、この速度補正値vxCを速度指令値uxOに加算し
、新たな速度指令値uzを演算することによっても同様
の結果を得ることができる。
〔実施例〕
第1の実施例 本発明の第1の実施例を第1図〜第4図により説明する
第1図において、多自由度作業機械の一例である6自由
度の関節型ロボット1は平部2を有し、平部2には作業
用ツール4が取り付けられている。
作業用ツール4は、ロボット1の各関節廻りの駆動を行
う図示しない駆動モータを駆動することにより、その位
置及び姿勢が制御される。このようなロボット1に対す
る本実施例の倣い制御装置6は、検出手段として、平部
2と作業用ツール4の間に取り付けられ、作業用ツール
4に加わる力及びモーメントを検出する力センサ−3と
、ロボット1の各関節廻りの駆動を行う図示しない駆動
モータに取り付けられ、駆動モータの駆動量、従って、
各関節軸の軸角度データを検出する角度計、例えばエン
コーダ5とを有し、設定手段として、作業用ツール4の
押付は力及びモーメントの目標値(以下、押付は力の目
標値と略す)froをベース座標系の値として設定する
力目標値設定部7と、作業用ツール4の位置及び姿勢の
目標値XIをベース座標系の値として設定する位置目標
値設定部8とを有している。なお、ベース座標系とはロ
ボットが据え付けられた空間に固定の座標系のことであ
る。
また、倣い制御装置6は、力制御ループの構成要素とし
て、力センサ−3で検出した力及びモーメントをセンサ
座標系から手先座標系へ変換すると共に、作業用ツール
4の重力分を差し引く重力補償を行う力演鼻部9と、手
先座標系で表わされた力及びモーメントを、手先座標系
と原点を同じにとったベース座標系に変換する座標変換
部10と、座標変換部10で座標変換された力及びモー
メントfと後述する力目標補正部7Aで求めた力及びモ
ーメントの目標値ftと比較し、Δ1=1−ftを演算
して偏差Δtを求める力偏差演算部12とを有し、位置
制御ループの構成要素として、ロボット1のモータに取
付けたエンコーダ5からの軸角度データを入力し、関節
角0を算出する角度演算部13と、その関節角0からベ
ース座標系での手先の位置及び姿勢Xを求める位置演算
部14と、位置演算部14で演算した位置及び姿勢Xと
位置目標値設定部8で設定した位置及び姿勢の目標値X
rとを比較し、偏差Δλを求める位置偏差演算部15と
を有している。
力偏差演算部12で演算したベース座標系での力及びモ
ーメントの偏差Δtと位置偏差演算部15で演算したベ
ース座標系での位置及び姿勢の偏差Δ入は位置と力の制
御演算部17に入力され、制御演算部17ではこれらの
情報をもとにベース座標系での位置と力の制御演算を行
い、ベース座標系での速度指令値Uを演算する。本実施
例では、この位置と力の制御演算部17には仮想コンプ
ライアンス制御による制御演算を利用する。
即ち、制御演算部17は、不感帯演算部18と、バネ定
数乗算部19と、減算部20と、特性補償演算部21と
からなっている。不感帯演算部18は、力偏差演算部1
2で演算した力偏差Δ1に不感帯を持たせ、Δ1′を算
出すもので、ノイズや外乱などの微小力に反応しないよ
うに設定することができる。この不感帯幅は各座標軸毎
に自由に設定することが出来、不感帯をなくすことも出
来るし、不感帯幅を大きくとることによってこの出力を
常に0にし、カフィードバックをなくして、位置制御の
みを行うことも出来る。バネ定数乗算部19は各座標軸
毎に設定した仮想バネ定数行列Kを位置偏差Δ^に乗じ
てにΔスを演算する。Kは対角行列で、成分kiは各座
標軸毎の仮想バネ定数で、任意に設定出来る。特にki
 =Qにすれば位置のフィードバックをなくして、力制
御のみを行うことも出来る。
減算部20は、力の偏差Δtに不感帯演算を行った値Δ
t′から位置の偏差Δλに仮想バネ定数行列Kを乗じた
値にΔ工を減算する。
特性補償演算部21は、減算部の出力Δt′にΔ入に制
御上の特性補償演算を行って速度指令値Uを出力するも
ので、仮想コンプライアンス制御では、仮想質量行列M
と仮想粘性係数行列Cによって、 Mu+Cu=Δf’  −にΔx    ・(1)を模
擬して動くように速度指令値を演算する。
倣い制御装置6は、最後にその出力部分として、位置と
力の制御演算部17で演算された速度指令値Uから各関
節の角速度指令値台を演算する角速度演算部23と、こ
の角速度指令値台から各駆動モータの速度指令値を演算
するモータ速度演算部24とを有し、モータ速度演算部
24で演算された速度指令値はサーボアンプ25に送ら
れ、各駆動モータの速度指令値によってロボット1のモ
ータを駆動する。この中にはモータに取り付けたタコジ
ェネレータからの速度フィードバックも含まれる。
力センサ3、力演鼻部9、座標変換部10、力目標値設
定値7、力目標値補正部7A、力偏差演算部12、制御
演算部17、角速度演算部23、モータ速度演算部24
、サーボアンプ部25は力制御ループを構成し、エンコ
ーダ5、角度演算部13、位置演算部14、位置目標値
設定部8、位置偏差演算部15、制御演算部17、角速
度演算部23、モータ速度演算部24、サーボアンプ部
25は位置制御ループを構成する。
力目標値補正部7Aの機能を第2図により説明する。
第2図において、角度演算部13で算出された関節角e
は位置演算部14に送られ、関節角θからベース座標系
での手先の位置及び姿勢λが求められる。力目標値設定
部7には押付は力の目標値froがベース座標系の値と
して設定されている。
力目標値補正部7Aは、位置演算部14で求めた手先の
位置及び姿勢スの位置データを手先の移動に従って順次
記憶する記憶部60と、記憶部60に記憶された位置デ
ータをもとに作業用ツール4の押付は方向に垂直な平面
に対する作業用ツール4の移動方向のワーク面の勾配を
演算する勾配演算部61と、位置演算部14で求めた位
置とその検出時間とから押付は方向に垂直な平面に投影
した作業用ツール4の移動速度、即ち、送り速度を演算
する送り速度演算部62と、勾配演算部61で求めた勾
配、送り速度演算部62で求めた送り速度及び力目標値
設定部7で設定した押付は力の目標値froから押付は
力の指令値として新たな押付は力の目標値1rを演算す
る押付は力演鼻部63とからなる。
押付は力演鼻部63で求めた新たな押付は力の目標値f
tは力偏差演算部12に出力される。なお、記憶部60
で記憶される位置データは、任意の時間あるいは移動距
離毎に記憶され、その数は勾配演算部61で用いる範囲
とする。
次に、このように構成された倣い制御装置6の動作を説
明する。まず、第1図に示す制御装置全体の動作を説明
する。
ロボット1にワーク表面を倣って表面研磨やパリ取り等
を行なわせる曲面倣い動作をさせた場合、ロボット1に
取り付けられた作業用ツール4には押付は力の反力とし
ての力及びモーメントが加わる。力制御ループでは、こ
の方及びモーメントを力センサ−3で検出する。この検
出された力及びモーメントはセンサーに固定された、セ
ンサーの変形中心を原点とするセンサー座標系の値にな
っているので、これを力演鼻部9で作業用ツールの適当
な場所を原点とし、作業用ツールに固定されて手先と共
に移動する手先座標系に変換する。この原点は普通、力
の加わる着力点付近にとり、センサー座標系からの変換
行列は定数行列になる。
さらにこの力演鼻部9では、作業用ツール4の重力分を
差し引いて重力補償を行い、手先の姿勢によって変化す
る作業用ツール4の重力の影響を取り除く。
このように手先座標系に変換された力及びモーメントは
、座標変換部10によって手先座標系と原点を同じにす
るベース座標系に変換される。即ち、ここで言うベース
座標系とは直交3軸の方向がベース座標系と一致すると
いう意味であり、座標変換部10では方向のみベース座
標系に変換(回転変換)する。この座標変換は、ベース
座標系に対する手先座標系の方向によって与えられ、後
述する手先の姿勢を表す行列と同様なので、常に計算さ
れており、簡単に変換を行うことが出来る。
このようにして得られたベース座標系での力tは、押付
は力演鼻部63で求められた押付は力の目標値frと比
較され、力偏差演算部12によって力偏差Δtが演算さ
れる。
一方、位置制御ループに関しては、ロボット1のモータ
に取り付けたエンコーダの値から角度演算部13によっ
て関節角0を演算する。さらに、この関節角eから位置
演算部14によって、ベース座標系における手先の位置
及び姿勢Xを演算する。この手先の位置及び姿勢は手先
座標系の原点の位置及び座標軸の方向で見る。第1図で
は、図を理解しやすいようにベース座標系でのこの位置
及び姿勢を6次元ベクトルXで表わしており、この場合
、6次元ベクトルX中の姿勢を表す3次元ベクトルは、
ベース座標系に対する手先座標系の回転角度を表すベク
トル(方向が回転軸方向で大きさが回転角となるベクト
ル)となる。
実際の演算では、この姿勢は上記のように表記せず、手
先座標系の各座標軸方向の単位ベクトルをベース座標系
で表したih、jh、khからなる3×3行列(ih 
、 jh 、 kh )で表す。
このように位置演算部14で演算された位置及び姿勢X
は、設定部8で設定された位置及び姿勢目標値X「と比
較され、演算部15で位置及び姿勢の偏差ΔXが計算さ
れる。このうち姿勢の偏差は、目標姿勢と実際の姿勢と
の間の回転角を表すベクトルで表わせ、目標手先座標系
の姿勢を表す行列を(iht、 jhr、  khr)
とすれば姿勢の偏差はIFeで表せる。ここでeは回転
軸の単位ベクトルであり、マは軸廻りの回転角であり、
それぞれ以下のように表わされる。
このようにして得られたベース座標系での力の偏差Δt
と位置偏差Δ入を用いて位置と力の制御演算部17で制
御演算を行う。本実施例ではこの演算の具体例として、
前述したように要素18〜21による仮想コンプライア
ンス制御演算を行う。
即ち、不感帯演算部18では力偏差Δfの各座標軸毎に
不感帯演算をしてΔf′ を算出し、バネ定数乗算部1
9では各座標軸毎に設定した仮想バネ定数行列Kを位置
偏差ΔXに乗じてにΔλを演算し、減算部20では不感
帯演算を行った力の偏差Δ1′からにΔXを減算する。
特性補償演算部21では、減算部の出力Δf’  −に
Δ入に制御上の特性補償演算を行って速度指令値Uを出
力し、仮想コンプライアンス制御では、仮想頁行列Mと
仮想粘性係数行列Cによって前述した(+)式を模擬し
て動くように速度指令値を演算する。この演算は、実際
は例えば(1)式を離散系で変形したU =ΔtM’(
Δf’ −にΔX) +(1−Δt M−’C) u    −(2)の形で
行う。ここでΔtはサンプリング周期であり、U はn
回目のサンプリングを表す。またUは並進速度及び回転
速度を表わす6次元ベクトル、Δ貫′ は力及びモーメ
ントの偏差を表わす6次元ベクトル、Δλは位置及び姿
勢の偏差を表す6次元ベクトル、M、C,には6×6の
行列で、特に対角行列を用いる。
ここで、各要素のパラメータに、M、Cや不感帯幅はベ
ース座標系上で与えられており、位置と力の制御演算を
このベース座標系上で行う。
位置と力の制御演算部17で演算された速度指令値Uは
ロボット1を動かすための指令値である。
この速度指令値Uは角速度演算部23によってロボット
の各関節の角速度台に変換され、さらにモータ速度演算
部24で、モータの回転速度に変換した後、サーボアン
プ25によってこの速度で動くようにロボット1を制御
する。
次に、力目標値補正部7Aの作用を説明する。
まず、第3図及び第4図を参照して押付は力の演算に関
する考え方を説明する。
第3図は押付は力の目標値の与え方を示す図であり、作
業用ツール4でワーク50の表面を倣う場合の例を示す
。説明の便宜上、第1図の制御演算部17でX軸方向の
不感帯幅を大きくとって位置制御とし、Z軸方向のばね
定数を0として力制御とする。また、力目標値設定部7
で2軸方向に一定の押付は力の目標値froを設定し、
これを直接力偏差演算部12に出力するものとする。こ
の場合、力制御ループでは、力の目標値froと検出値
に基づく力及びモーメントtとの偏差Δtから制御演算
部17で速度指令値Uの2軸成分U!が演算され、作業
用ツール4はこの速度指令値U!により力の目標値fr
oでワーク面に押付けられる。
一方、位置制御ループでは、位置及び姿勢の目標値XI
と検出値に基づく位置及び姿勢入との偏差Δ入から制御
演算部17で速度指令値UのX軸成分uxが演算され、
作業用ツール4はこの速度指令値U!に基づいた送り速
度V!でX軸方向に送られる。
このような状態において、速度指令値U!により得られ
る作業用ツール4の送り方向に対するワーク面の傾斜角
をαとし、その勾配を【■αで表わすと、作業用ツール
4はワーク面上に力の目標値froで押付けられながら
速度指令値uxに基づく速度V!で送られているのであ
るから、作業用ツール4には送り方向のワーク面の勾配
tanαによりz軸方向に v zof = v xjanα の速度を生じる。従って、この速度V!01によって、
目標値fiOの力とは別に f ol= Cv !of という押付は力が発生する。但し、Cは仮想コンプライ
アンス制御で設定した粘性減衰係数である。
このため、力目標値設定部7で押付は力の目標値frO
を設定したにも係わらず、実際にはf = f r。
+ f ofの押付は力が生じる。従って、設定した押
付は力froを得るためには、押付は力の目標値fro
から力fofを差し引いた値を押付は力の指令値とすれ
ばよい。即ち、この押付は力の指令値をfrとすれば、
その指令値frは次式で求まる。
f r = f to−Cvxlanα本実施例は以上
の知見に基づくものであり、第1図に示す勾配演算部6
1、送り速度演算部62及び押付は力演鼻部63で上記
演算を行ってやることにより、作業用ツール4を一定の
押付は力でワーク面を倣うように制御する。
即ち、第4図に示すように、ワーク50の表面を倣いな
がら記憶部60に記憶された現在の位置を点Pi  (
xj、yj、zi)とし、その1つ前の位置を点Pi 
 (xi、yi、zi)とすると、点Pjでのワーク面
の勾配tanαは次式で近似することができる。
勾配演算部61では上式の演算を行う。
又、第4図において、点Pjでの作業用ツール4の送り
速度VのX軸方向成分Vl及びy軸方向成分v7は、 Vl : (xi −xi ) /ΔtVT =C’l
r −3’i ) /Δtで表わされる。ここでΔtは
、点Pi と点Pjの間の検出時間で・ある。Δtとし
ては、記憶部60で一定の時間間隔Δtで手先の位置を
順次記憶するようにし、その時間間隔Δtを送り速度演
算部62に記憶しておけばよい。従って、x−y平面に
平行な方向の送り速度の大きさVIFは次式で近似する
ことができる。
vx7=f■丁0ゴjコ1− 送り速度演算部62は上式の演算を行う。なお、第3図
に示す上述した例では送り速度のX軸方向成分のみが演
算されている。
そして押付は力演鼻部63においては、勾配演算部61
で演算した勾配tanαと送り速度演算部62で演算し
た送り速度VI7と予め設定した粘性減衰係数Cとから
速度v!yによって2軸方向に生じる力f of= C
v x71xnαを演算し、この力fofと内口標値設
定部7で設定した内口標値f+oとから新たな押付は力
の目標値’ftを、上述した式f t = f ro−
CV!! lamαより演算する。
このようにして押付は力演鼻部63で求めた新たな押付
は力の目標値ftは、内口標値frとして力偏差演算部
12に送られ、前述した力偏差Δtを求めるのに使用さ
れる。
本実施例は、以上のように構成したので、ロボット1で
ワーク表面を倣って表面研磨やパリ取り等を行なわせる
曲面倣い動作を行う場合、ワーク面に対し目標値fro
の力で押付けながら作業用ツール4を移動させることが
できるため、未知の形状のワークに対しても滑らかでか
つ効率的な作業を行うことができる。
又、曲面倣い動作を行う場合、ワーク面に対して一定の
押付は力で作業用ツール4を押し付ける手法としては移
動のための座標変換を行う等の手法も考えられるが(特
願昭63−48486−US  5erial  No
、  316. 696及びEPCpalent ap
plication no、89200495J対応−
参照)、本実施例ではワーク面の形状に合わせて押付は
力のみを制御するため、そのような手法に比べて座標変
換等の複雑な演算を必要とせず、高速演算処理が可能と
なる。
第2の実施例 本発明の第2の実施例を第5図及び第6図を参照して説
明する。図中、第1図及び第2図に示す部材と同等の部
材には同じ符号を付している。
本実施例の倣い制御装置における内口標値補正部7Bは
、第5図に示すように、第2図に示す第1の実施例の構
成に加えて、作業用ツール4の倣い動作開始時の送り目
標位置を記憶する記憶部70と、位置演算部14で演算
された位置と記憶部70に記憶された送り目標位置から
送り方向ベクトル1を演算する送り方向ベクトル演算部
71と、作業用ツールの倣い動作開始時の送り目標速度
VHaを設定する設定部62Aとを有している。勾配演
算部72は、第1の実施例における勾配演算部61の機
能に加えて、第1図に示す力演鼻部9及び座標変換部1
0で求めた作業用ツール4に作用する反力ベクトルtと
送り方向ベクトル演算部71で求めた送り方向ベクトル
1とからワーク面の勾配tanαを演算する機能を有し
、押付は力演鼻部63は、勾配演算部72で求めたワー
ク面の勾配jtnαと、送り速度演算部62で求めた送
り速度vx7又は設定部62Aに設定された送り目標速
度V !FOと、内口標値設定部7に設定された内口標
値froとから新たな押付は力の目標値t「を演算する
なお、設定部62Aの送り目標速度V 170は位置目
標値設定部8に送られ、現在の目標位置にτv !Yo
を加算し、新たな目標位置xrをサンプリングタイムτ
毎に順次計算する。この演算は後述する第17図に示す
実施例の移動位置目標値演算部97と同じであるので、
詳細は省略する。
倣い制御装置の他の構成は第1図に示す第1の実施例と
同じである。
次に、本実施例の動作を第6図を参照して説明する。第
6図は本実施例における内口標値補正部7Bにおけるワ
ーク面の勾配tanαの与え方を示す図であり、作業用
ツールをワーク50の表面に押付け、倣い動作を開始す
る状態を示している。
第6図において、位置演算部14で演算された現在の位
置を点P (xp、yp、zp)とし、記憶部70で記
憶された作業用ツールの送り目標位置を点Q (XQ、
VQ、ZQ)とする。この点P及び点Qから作業用ツー
ル4の送り方向を示す送り方向ベクトル1を求めると、
rtn (XQ −xp 。
yq −yp 、O)となる。送り方向ベクトル演算部
71ではこの演算を行う。
次に、点Pにおけるワーク面の押付反力ベクトルtを法
線ベクトル1に一致すると仮定すると、法線ベクトルn
の成分は反力ベクトルtのxyz方向の3分力(fx 
、f7 、fz)で表わされる。
又、点Pにおけるワーク面上での移動方向の単位ベクト
ルをtとし、その方向余弦を(tx、t7゜tI)で表
わす。ベクトルtは点Pにおけるワーク面の接線ベクト
ルであるから、法線方向ベクトルnと直交する。従って
、互いに直交するベクトルの内積は0であるから、次式
が成り立つ。
1・1=0 よって、 fx  ・tx  +f7 −t7  +fx  et
t  =0・・・(3) 今、x−y平面に垂直で点Qを通る直線と、ベクトルt
の延長線が交わる点をQ′ とし、点Pと点Q′ の距
離をEとすると、ベクトルPQ’ の成分はC1tx、
l ty、l ts)で表わされる。
従って、点Pにおけるワーク面の勾配tanαは送り方
向ベクトル1に対するベクトルtのなす勾配に一致し、
ワーク面の勾配fallαは次式で求めることができる
tan  a=l  ts /’   (ltx ) 
2+ (lt7)’・・・(4) ここで(3)式の両辺にlをかけてA’ttについて整
理すると、 l  t!= −1(ft  tx  +f7  LY
 ) /f!・・・(5) 又、A’l、j!tYは法線方向ベクトルnの成分より l  tx  =xq  −xp l  ty  =yq  −yll       ・・
・(6)従って、(5)式及び(6)式を用いて(4)
式を整理すると、 tan  α ・・・(7) が得られる。
勾配演算部72では、送り方向ベクトル演算部71で求
めた反力ベクトルfと座標変換部10で求めた送り方向
ベクトルmとを用いて以上の演算を行い、ワーク面の移
動方向の勾配fanαを求める。
押付は力演鼻部63においては、勾配演算部72で上記
のようにして求めた送り方向に対するワーク面の勾配f
anαと送り目標速度設定部62Aに設定された送り目
標速度v x7oと上目標値設定部7に設定された上目
標値froとを用いて、第1の実施例と同様に、f t
 = f ro−Cvxyo Un aを演算し、押付
は力の指令値として新たな押付は力の目標値frを演算
する。従って、第1の実施例と同様、送り目標速度V 
!7Gによって生じる押付は力の変化分が差し引かれ、
作業用ツール4を目標値troの力で押付けながらワー
ク面を倣わせることができる。
以上のようにして、倣い動作開始時における作業用ツー
ル4が停止状態から移動開始直後までは、記憶部70に
記憶された送り目標位置と設定部62Aに設定された送
り目標速度v x7oを用いて押付は力の目標値を演算
し、位置と力の制御を行う。
−旦作業用ツール4が動き始めた後は、第1の実施例と
同様な位置と力の制御を行う。即ち、勾配演算部72は
、記憶部60に記憶された位置データをもとに送り方向
に対するワーク面の勾配tanαを演算し、送り方向速
度演算部62は、記憶部60で記憶した位置情報を用い
て送り速度vBを演算し、押付は力演鼻部63は、勾配
演算部72で求めたワーク面の移動方向の勾配tanα
と送り速度演算部62で求めた送り速度v!Yと上目標
値設定部7に設定された上目標値troとを用いて押付
は力の指令値f+を演算する。
このように本実施例においては、位置又は速度の検出値
を用いることなく、記憶部70に記憶した倣い軌跡の位
置情報と設定部62Aに設定した送り速度v x7oを
用いて押付は力の目標値を演算するので、倣い動作開始
時の停止時においても押付は力の目標値を演算すること
ができ、倣い動作開始時にも押付は力を制御することが
できる。
なお、送り目標速度設定部62Aにおける送り目標速度
の設定の仕方としては、オペレータがジョイスティック
、キーボード等を操作して送り目標速度を指令する方法
、教示データ等の既知の2点を予め記憶しておく方法等
がある。
第3の実施例 本発明の第3の実施例を第7図及び第8図を参照して説
明する。図中、第1図及び第2図に示す部材と同等の部
材には同じ符号を付している。
本実施例の倣い制御装置における上目標値補正部7Cは
、第7図に示すように、位置演算部14で演算された位
置を順次記憶する記憶部60と、記憶部60で記憶した
位置から作業用ツール4の押付は方向に垂直な方向の送
り速度ベクトルVを演算する送り速度演算部80と、力
演鼻部9及び座標変換部10で演算された作業用ツール
4に作用する反力ベクトル1の方向と演算部80で求め
た送り速度ベクトルVの方向とから送り方向に対するワ
ーク面の勾配tanαを演算する勾配演算部81と、演
算部81で求めた勾配tanαと演算部80で求めた送
り速度ベクトルVの大きさと方間標値設定部7に設定さ
れた力目標値f+oとから新たな押付は力の目標値1「
を演算する押付は力演鼻部63とからなる。押付は力演
鼻部63で求めた新たな押付は力の目標値frは力偏差
演算部12に出力される。
倣い制御装置の他の構成は第1図に示す第1の実施例と
同じである。
次に、本実施例の動作を説明する。第4図を再び参照し
て、作業用ツール4でワーク50の表面を倣っている状
態を考える。このとき、記憶部60には任意の時間Δを
毎に位置演算部14で演算された作業用ツール4の位置
が記憶される。また、第4図において、Piは作業用ツ
ール4の現在の位置、Piはそ°の1つ前の位置である
。この2つの位置から、x−y平面に平行な方向の送り
速度ベクトルVの成分(vx 、  vy 、  VZ
 )は、vx = (xi −xi ) /Δtvy 
= (yi −yi ) /Δt■2=0      
      ・・・(8)となる。又、その平均速度は 1vl=F7「7下■〒”       −(9)とな
る。これは送り速度ベクトルVの大きさに一致し、第1
の実施例で説明した送り速度vxyと同じ値である。従
って、以下、送り速度をVZ7と表示する。送り速度演
算部80では以上の演算を行う。
第8図は本実施例の勾配演算部81におけるワーク面の
勾配tanαの与え方を示す図である。第8図において
、現在の検出位置を第4図と同様に点Piとし、Pj点
の送り速度ベクトルを上述のV (Vl、v7,0)で
表わしている。今、Pj点におけるワーク面の押付は反
力ベクトルf(fx、fy、fx)を法線方向ベクトル
と仮定する。
又、Pj点におけるワーク面上の移動方向単位ベクトル
を1、その方向余弦を(tx 、  ty 、  tx
 )で表わす。ベクトルtは点Piにおけるワーク面の
接線ベクトルであるから、反力ベクトルfと直交する。
従って、互いに直交するベクトルの内積は0であるから
、次式が成り立つ。
1・1=0 よって、 fx  φl  +f7  *  t7  +ft  
・tz  =0・・・(10) 次ニ、単位ベクトル1にlをかけ、ベクトルltをx−
y平面に投影したときの値が送り速度ベクトルVと一致
するようにlを定める。このときベクトル11の成分は
(A’ tx、l t7.l tx)で表わされる。従
って、点Piにおける勾配tanαは送り速度ベクトル
Vに対するベクトルtのなす勾配に一致し、倣い勾配t
anαは次式で求めることができる。
fan a=l Lx /   l tx ) 2+ 
(1ty)2・・・(11) ここで(10)式の両辺にlをかけてlt!について整
理すると、 l t!= −1(fx tx +fy ty ) /
fz・・・(12) 又、ltx、A’tyは送り速度ベクトルVの成分に一
致することから、 l t!=vx 11 =vr         −(13)従って、(
12)式及び(13)式を用いて(11)式を整理する
と、 tan  α 1(xi  −xi)+fr(Y j   yi)・・
・(14) が得られる。勾配演算部81では以上の演算を行う。
押付は力演鼻部63においては、第1の実施例と同様に
、送り速度V17と勾配tanαと力目標値ttoとか
らf r = f to−Cvx71anaを演算し、
新たな押付は力の目標値t【を求め、作業用ツール4を
一定の押付は力でワーク面を倣うように制御する。
本実施例においては、第1の実施例とは異なる手法で勾
配tanαを求め、第1の実施例と同様の効果を得るこ
とができる。
第4の実施例 本発明の第4の実施例を第9図を参照して説明する。図
中、第1図及び第2図に示す部材と同等の部材には同じ
符号を付している。
本実施例の倣い制御装置における力目標値補正部7Dは
、位置演算部14で求めた手先の位置及び姿勢Xの位置
データを手先の移動に従って一定時間ごとに順次記憶す
る記憶部60と、記憶部60に記憶された位置データを
もとに作業用ツール4の押付は方向の移動速度vxol
を演算する移動速度演算部82と、移動速度演算部82
で求めた移動速度v xol及び力目標値設定部7で設
定した押付は力の目標値troとから新たな押付は力の
目標値f+を演算する押付は力演鼻部83とからなる。
押付は力演鼻部83で求めた新たな押付は力の目標値f
rは力偏差演算部12に出力される。
ここで、記憶部60で記憶される位置データは、一定の
時間毎に記憶され、その数は移動速度演算部82で用い
る範囲とする。
倣い制御装置の他の構成は第1図に示す第1の実施例と
同じである。
本実施例の動作を第4図を再び参照して説明する。第4
図において、手先効果器4を2軸方向に押付けながらワ
ーク面を倣うとき、前述したように記憶部60に記憶さ
れた現在位置を点Pj (xi、yi、zi)とし、そ
の1つ前の位置を点P(xi、yi、zi )とすると
、点P1での2方向速度v zojは次式で近似できる
ここでΔtは点Pi と点Piの間の時間である。
時間Δtは移動速度演算部82に予め記憶しておく。移
動速度演算部82は上式の演算を行う。
押付は力演鼻部83においては、移動速度演算部82で
演算した移動速度vzolと予め設定した粘性減衰係数
Cとから送り速度によって2軸方向に生じる力f ol
= Cv xolを演算し、この方fofと力目標値設
定部7で設定した力目標値froとから新たな押付は力
の目標値f「を式ft=f+o−Cvzより演算する。
即ち、第1〜第3の実施例で勾配janαと送り速度V
Dを用いてZ軸方向に生じる力を演算した代わりに、z
軸方向の移動速度V 冨01から直接2軸方向に生じる
力fofを演算するものである。
このようにして押付は力演鼻部83で求めた新たな押付
は力の目標値frは力目標値t「とし力偏差演算部12
に送られ、力偏差ΔIを求めるのに使用される。
従って本実施例においても、第1の実施例と同様に作業
用ツール4を目標値froの力で押付けながらワーク面
を倣わせることができる。
又、本実施例においては、第1〜第3の実施例における
勾配を演算する手法に比べて演算が容易なので、−層の
高速演算処理が可能となる。
(以下余白) 第5の実施例 本発明の第5の実施例を第10図及び第11図を参照し
て説明する。図中、第1図及び第2図に示す部材と同等
の部材には同じ符号を付している。
第10図において、本実施例の倣い制御装置6Aは、制
御演算部17の特性補償演算部21で速度指令値UOを
演算し、この速度指令値uoを速度指令値補正部90A
で補正し、新たな速度指令値Uを得て、この速度指令値
Uが角速度演算部23で使用される。偏差演算部12に
は力目標値設定部7から直接力目標値t【が送られる。
速度指令値補正部90Aは、第11図に示すように、第
2図に示す第1の実施例の力目標値補正部7Aと同様、
位置演算部14で求めた手先の位置及び姿勢Xの位置デ
ータを手先の移動に従って順次記憶する記憶部60と、
記憶部60に記憶された位置データをもとに作業用ツー
ル4の送り方向に対するワーク面の勾配tanαを演算
する勾配演算部61と、位置演算部14で求めた位置と
その検出時間Δtとから作業用ツール4の送り速度vx
7を演算する送り速度演算部62とを有している。速度
指令値補正部90Aは、さらに、勾配演算部61で求め
た勾配tanαと送り速度演算部62で求めた送り速度
vHとから押付は方向の速度補正値vzcを演算する補
正速度演算部90と、制御演算部17で求めた速度指令
値uoの2軸成分usoに演算部90で求めた速度補正
値VZCを加算して新たな速度指令値Uを求め、これを
角速度演算部23に出力する加算器91とを有している
第3図及び第4図を参照して説明したように、力目標値
7で2軸方向に押付は力の目標値frを与えながらx−
y平面に平行な方向に速度vx7で作業用ツール4を移
動させるとき、送り方向の勾配tallαにより作業用
ツール4にはV2O3=vxylana の2軸方向の速度を生じ、この速度v gotによって f of= CV !01 という力が発生する。本実施例では、第11図に示す演
算部分で直接この速度v!01を演算し、これを押付は
方向の速度補正値として加算部91に加えることにより
、2軸方向の速度変化分v solの影響を除去し、ワ
ーク面を倣わせるものである。
即ち、第4図において、ワーク面を倣いながら記憶部6
0に記憶された現−在点Pi とそれより1つ前の点P
iの2点を用いて勾配演算部61では点Piでのワーク
面の勾配(anαを演算する。演算の手法は第1の実施
例で説明したのと同じである。
一方、送り速度演算部62では、第1の実施例と同様に
2点の位置Pi、Piの位置情報からX−y平面に平行
な方向の送り速度vx7を演算する。
補正速度演算部90では、演算部61で演算された勾配
tanαと演算部62で演算された送り速度VIFとか
ら次式の計算によりZ軸方向の速度V!o1を求める。
V !01 = V !yIana そして、この速度v wo[を速度補正値vxcと置き
、これを加算部91で加える。
このように本実施例においては、力目標値trを補正す
るのではなく、制御演算部17で演算された速度指令値
uoを補正することにより、第1の実施例と同様、作業
用ツール4を目標値frの力で押付けながらワーク面を
倣わせることができる。
従って、本実施例において、も第1の実施例と同じ効果
を得ることができる。
第6の実施例 本発明の第6の実施例を第12図を参照して説明する。
図中、第5図、第10図及び第11図に示す部材と同等
の部材には同じ符号を付している。
本実施例は、第5の実施例の速度指令値補正部における
勾配tinαの演算手段を第5図に示した第2の実施例
における勾配tinαの演算手段に置き換えたものであ
る。即ち、本実施例の速度指令値補正部90Bは、第1
2図に示すように、第5図に示した実施例の力目標値補
正部7Bと同様、記憶部60と、送り速度演算部62と
、送り目標位置を記憶する記憶部70と、位置演算部1
4で演算された位置と記憶部70に記憶された送り目標
位置から送り方向ベクトルmを演算する送り方向ベクト
ル演算部71と、力演鼻部9及び座標変換部10で演算
した作業用ツール4に作用する反力ベクトル1と演算部
71で求めた送り方向ベクトルmとからワーク面の勾配
tanαを演算する勾配演算部72と、送り目標速度V
 170を設定する設定部62Aとを有している。速度
指令値補正部90Bは、さらに、勾配演算部61で求め
た勾配tanαと送り速度演算部62で求めた送り速度
V1?又は設定部62Aに設定された送り目標速度Vx
yoとから押付は方向の速度補正値v!cを演算する補
正速度演算部90と、制御演算部17で求めた速度指令
値uoの2軸成分u!Oに演算部90で求めた速度補正
値v!cを加算して新たな速度指令値Uを求め、これを
角速度演算部23に出力する加算器91とを有している
反力ベクトル量と送り方向ベクトル1とからワーク面の
移動方向の勾配tanαを演算する勾配演算部72の演
算内容は、第5図に示す第2の実施例と同じであり、補
正速度演算部90の演算内容は第11図に示した第5の
実施例と同じである。
従って、本実施例においても、第5・の実゛施例と同様
に、制御演算部17で演算された速度指令値UOを速度
補正値vICで補正することにより作業用ツール4を目
標値frの力で押付けながらワーク面を倣うように制御
することができると共に、第2の実施例と同様、この制
御を作業用ツールが停止している倣い動作開始時から行
うことができる。
第7の実施例 本発明の第7の実施例を第13図を参照して説明する。
図中、第7図、第10図及び第11図に示す部材と同等
の部材には同じ符号を付している。
本実施例は、第5の実施例の速度指令値補正部における
勾配tanαの演算手段を第7図に示した第3の実施例
における勾配計■αの演算手段に置き換えたものである
。即ち、本実施例の速度指令値補正部90Cは、第13
図に示すように、第7図に示す実施例の力目標値補正部
7Cと同様、位置演算部14で演算された位置を順次記
憶する記憶部60と、記憶部60で記憶された位置から
作業用ツール4の送り速度ベクトルVを演算する送り速
度演算部80と、力演鼻部9及び座標変換部10で演算
した作業用ツール4に作用する反力ベクトルfの方向と
送り速度ベクトルマの方向とからワーク面の勾配l!n
αを演算する勾配演算部81とを有している。速度指令
値補正部90Cは、さらに、勾配演算部81で求めた勾
配tanαと送り速度演算部80で求めた送り速度ベク
トルVの大きさとから押付は方向の速度補正値vICを
演算する補正速度演算部90と、制御演算部17で求め
た速度指令値uoの2軸成分u!oに演算部90で求め
た速度補正値vxcを加算して新たな速度指令値Uを求
め、これを角速度演算部23に出力する加算器91とを
有している。
送り速度演算部80及び勾配演算部81で行われる演算
内容は第7図に示す第3の実施例と同じであり、補正速
度演算部90で行われる演算内容は第11図に示す第5
の実施例と同じである。
従って、本実施例においても、第3の実施例で説明した
のと同様の考えでワーク面の移動方向の勾配tinαを
演算しながら、第5の実施例と同様に制御演算部17で
演算された速度指令値uoを速度補正値vzcで補正す
ることにより作業用ツール4を目標値f「の力で押付け
ながらワーク面を倣うように制御することができる。
第8の実施例 本発明の第8の実施例を第14図を参照して説明する。
図中、第9図、第10図及び第11図に示す部材と同等
・の部材には同じ符号を付している。
本実施例は、第5の実施例の速度指令値補正部における
速度補正値v寞Cの演算手段を第9図に示した第4の実
施例における作業用ツールの押付は方向の移動速度vs
ofを演算する手段に置き換えたものである。即ち、本
実施例の速度指令値補正部90Dは、第14図に示すよ
うに、位置演算部14で求めた手先の位置及び姿勢λの
位置データを手先の移動に従って一定時間ごとに順次記
憶する記憶部60と、記憶部60に記憶された位置デー
タをもとに作業用ツール4の押付は方向の移動速度vz
ofを演算し、これを速度補正値vscとする移動速度
演算部82と、制御演算部17で求めた速度指令値uO
の2構成分uスOに演算部82で求めた速度補正値vI
Cを加算して新たな速度指令値Uを求め、これを角速度
演算部23に出力する加算器91とを有している。
移動速度演算部82で行われる演算内容は第9図に示す
第4の実施例と同じである。
従って、本実施例においても、第4の実施例で説明した
のと同様に比較的容易な演算を行いながら、第5の実施
例と同様に制御演算部17で演算された速度指令値uo
を速度補正値vzcで補正することにより作業用ツール
4を目標値f「の力で押付けながらワーク面を倣うよう
に制御することができる。
第9の実施例 本発明の第9の実施例を第15図を参照して説明する。
図中、第1図、第2図及び第5図に示す部材と同等の部
材には同じ符号を付している。
第1の実施例では、位置演算部14で求めた位置から送
り速度演算部62において作業用ツール4の実際の送り
速度vBを演算し、この送り速度VX7を用いて演算部
63で押付は力の目標値frを演算した。本実施例は、
送り速度演算部62を用いずに、送り目標速度設定部6
2Aを用いるものであり、その機能は第2の実施例の送
り目標速度設定部62Aと同じである。押付は力演鼻部
63では、演算部61で求めた勾配tanαと設定部6
2Aで設定した送り目標速度v x7oと上目標値設定
部7で設定した押付は力の目標値ttoとから新たな押
付は力の目標値frを演算する。
本実施例においても、第1の実施例と同様の効果が得ら
れることは明らかである。
なお、図示はしないが、第11図に示した第5の実施例
においても、同様に、移動速度演算部62に代えて送り
目標速度設定部62Aを用いることができる。
第10の実施例 本発明の第10の実施例を第16図及び第17図により
説明する。図中、第1図及び第2図に示す部材と同等の
部材には同じ符号を付している。
第16図において、本実施例の倣い制御装置6Cは、ワ
ーク面の勾配と作業用ツールの移動軌跡を予め教示デー
タとして記憶しておく位置及び内口標値演算部7Fを有
し、この目標値演算部7Fでは、再生時に、記憶した教
示データと、設定部7に予め設定した作業用ツール4の
押付力の目標値froと、送り目標速度設定部62Aに
予め設定した作業用ツール4の送り目標速度V 170
とから力及びモーメントの目標値itと移動位置目標値
Xrとを演算する。演算部7Fで演算した力及びモーメ
ントの目標値1rと移動位置目標値xrとはそれぞれ力
偏差演算部12及び位置偏差演算部15に送られ、力偏
差Δを及び位置偏差ΔXが求められる。倣い制御装置6
Cの他の構成は第1の実施例と同じである。
位置及び内口標値演算部7Fは、第17図に示すように
、位置演算部14で求めた手先の位置及び姿勢Xの位置
データを手先の移動に従って順次記憶する記憶部60と
、位置演算部14で求めた位置及び姿勢入の位置データ
をもとに作業用ツール4の送り方向に対するワーク面の
勾配tanαを演算する勾配演算部61と、勾配演算部
61で求めた勾装置11nαを作業用ツール4の移動に
従って順次記憶する勾配記憶部95と、記憶部95で記
憶された勾配tanαと送り目標速度設定部62Aに設
定された送り目標速度V !70と上目標値設定部7に
設定した押付は力の目標値1「0とから新たな押付は力
の目標値f+を演算する押付は力演鼻部63と、記憶部
60に記憶された位置データXと送り目標速度設定部6
2Aに設定された送り目標速度V 17Gとから、作業
用ツール4の送り速度が当該設定された送り目標速度と
なるように1サイクル毎の移動位置目標値xrを演算す
る移動位置目標値演算部97とからなっている。
教示作業に際して、位置演算部14で求められた作業用
ツール4の位置データλは勾配演算部61に順次送られ
、勾配演算部61では隣接する2点の位置からその2点
間の作業用ツール4が移動する方向のワーク面の勾配t
anαを演算し、その結果を順次記憶部95に記憶する
。勾配演算部61の演算内容は第2図に示す第1の実施
例の勾配演算部61と同じである。
同時に、位置演算部14で求められた作業用ツール4の
位置Xを手先の移動に従って順次記憶部60に記憶する
。このとき記憶される位置データは、任意の時間あるい
は移動距離毎に記憶され、その数は移動位置目標値演算
部97で用いる範囲とする。
次に、記憶部95.60に記憶された勾配及び位置デー
タを用いて再生を行う。即ち、押付は力演環部63では
、記憶部95で記憶された勾装置anαと送り目標速度
設定部62Aに設定された送り目標速度V 17Gと上
目標値設定部7に設定された押付は力の目標値tuとを
用いて、ワーク面を目標値froの力で押付けるのに必
要な目標値frを前述した実施例と同様に、t r =
 f to −Cv xlo tanαの式から演算す
る。
又、移動位置目標値演算部97では、記憶部60に記憶
された位置を通り、送り目標速度設定部62Aに設定さ
れた送り速度V 170で作業用ツール4が移動するよ
うに移動位置目標値xrを演算する。
この演算は例えば次のように行われる。記憶部60に記
憶されたi番目の位置データXI とi+1番目の位置
データxi+1からx−y平面上での移動ベクトルI!
yを求める。またI!yのX軸及びy軸方向の成分をl
x、lyとする。ここで、これれ2点間を与えられた送
り目標速度v xyoで移動するためには、1サンプリ
ングタイム当りの移動量を各サンプル毎に現在の目標値
に付加すれば良い。その移動量ΔlはΔ1=vxla 
・τ(τ:サンプリングタイム)である。
実際には上記移動ベクトルix7を考慮する必要があり
、移動ベクトル1!yの長さと各軸方向成分の比をとり
、移動ベクトルIB方向の移動量ΔlのX軸及びy軸方
向の成分を演算する。即ち、! ! Δ/x=vBo・τ・a□工。口。
を演算し、各軸の方向成分としての移動量を求める。そ
してこれを位置データに加算することにより、移動位置
目標値Xrを求める。
従って、本実施例によっても、再生時に押付は力の目標
値frと移動位置目標値X「をそれぞれ演算して与えて
やることにより、作業用ツールを目標値tの力で押付け
ながらワーク面を倣わせることができる。
また、本実施例によれば、演算したワーク面の勾配ta
nαを教示データとして一旦記憶し、再生時にこのデー
タを用いて押付は力の目標値を演算するので、リアルタ
イムでワーク面の勾装置1+1αも演算しながら押付は
力の目標値を演算する前述の実施例よりも、制御時の演
算量が少なくて済み、応答性の良好な倣い制御が可能で
ある。
なお、以上の幾つかの実施例では、作業用ツールの位置
データから送り速度vx7を演算したが、速度指令値U
を平均化し、その値を送り速度vxyの代わりに用いて
もよい。
また、以上の実施例では、全て、作業ツールをロボット
で把持し、ワークをベースに固定して倣い作業を行う場
合を説明したが、ワークをロボットで把持し、作業用ツ
ールをベースに固定して倣い作業を行う場合にも、本発
明は同様に適用できるものである。
〔発明の効果〕
本発明によれば、ワーク面の勾配fanαにより生じる
作業用ツールの押付は方向の移動速度vt。
1を与え、この押付は方向の移動速度v tolを用い
て力制御ループの制御量froまたはvzを補正するの
で、作業用ツールの押付は力は目標値f+。
にほぼ一致し、曲面の勾配のいかんに係わらず所望の送
り速度で倣うことができ、適切かつ効率的な倣い作業を
行うことができる。
【図面の簡単な説明】
第1図は本発明の第1の実施例による倣い制御装置の全
体構成を示す機能ブロック図であり、第2図はその倣い
制御装置の上目標値補正部の構成を示す機能ブロック図
であり、第3図は倣い動作時に発生する力を示す説明図
であり、第4図は本実施例における勾配の演算方法を示
す説明図であり、第5図は本発明の第2の実施例による
倣い制御装置の上目標値補正部の構成を示す機能ブロッ
ク図であり、第6図はその倣い制御装置における勾配の
演算方法を示す説明図であり、第7図は本発明の第3の
実施例による倣い制御装置の上目標値補正部の構成を示
す機能ブロック図であり、第8図はその倣い制御装置に
おける送り速度の演算方法を示す説明図であり、第9図
は本発明の第4の実施例による倣い制御装置の上目標値
補正部の構成を示す機能ブロック図であり、第10図は
本発明の第5の実施例による倣い制御装置の全体構成を
示す機能ブロック図であり、第11図はその倣い制御装
置の速度指令値補正部の構成を示す機能ブロック図であ
り、第12図は本発明の第6の実施例による倣い制御装
置の速度指令値補正部の構成を示す機能ブロック図であ
り、第13図は本発明の第7の実施例による倣い制御装
置の速度指令値補正部の構成を示す機能ブロック図であ
り、第14図は本発明の第8の実施例による倣い制御装
置の速度指令値補正部の構成を示す機能ブロック図であ
り、第15図は本発明の第9の実施例による倣い制御装
置の上目標値補正部の構成を示す機能ブロック図であり
、第16図は本発明の第10の実施例による倣い制御装
置の全体構成を示す機能ブロック図であり、第17図は
その倣い制御装置の位置及び力偏差演算部の構成を示す
機能ブロック図である。 符号の説明 1・・・ロボット(多自由度作業機械)3・・・力セン
サ 4・・・作業用ツール 5・・・エンコーダ 6・・・倣い制御装置 7・・・上目標値設定部 7A・・・上目標値補正部 8・・・位置目標値設定部 12・・・力偏差演算部 17・・・制御演算部 25・・・サーボアンプ 50・・・ワーク 61・・・勾配演算部(第1の制御手段)62・・・送
り速度演算部(第1の制御手段)63・・・押付は力演
鼻部(第1および第2の制御手段)

Claims (10)

    【特許請求の範囲】
  1. (1)ワーク面から作業用ツールに加わる力を検出する
    手段、この検出した力と予め設定した作業用ツールの押
    付け力の目標値f_r_oとの偏差をとる手段、この偏
    差に基づいて作業用ツールの速度指令値u_zを演算す
    る手段、この速度指令値u_zに基づいて多自由度作業
    機械を動かす手段を含む少なくとも1つの力制御ループ
    と、作業用ツールの少なくとも1つの速度指令値u_x
    を指令する手段と、この速度指令値u_xに基づいて多
    自由度作業機械を動かす手段とを備えた、少なくとも2
    自由度を持つ多自由度作業機械を用いた倣い制御装置に
    おいて、 作業用ツールをワーク面上に前記力の目標値f_r_o
    で押付けながら前記速度指令値u_xで送るときに、そ
    の送り方向に対するワーク面の勾配tanαにより生じ
    る作業用ツールの押付け方向の移動速度v_z_o_f
    を与える(provideする)第1の制御手段と、 この押付け方向の移動速度v_z_o_fを用いて前記
    力制御ループの制御量f_r_oまたはu_xを補正し
    、その速度v_z_o_fによる力f_o_fを相殺す
    る(cancelする)第2の制御手段と を有する倣い制御装置。
  2. (2)請求項1記載の倣い制御装置において、前記第1
    の制御手段は、 前記ワーク面の勾配tanαを演算する第1の演算手段
    と、 前記速度指令値u_xで送られる前記作業用ツールの送
    り速度v_xを演算する第2の演算手段と、前記第1の
    演算手段で求めた勾配tanαと前記第2の演算手段で
    求めた送り速度v_xとから前記押付け方向の移動速度
    v_z_o_fを演算する第3の演算手段と を含む倣い制御装置。
  3. (3)請求項2記載の倣い制御装置において、前記第1
    の演算手段は、 ワーク面上を移動する作業用ツールの位置を検出する手
    段と、 前記検出手段で検出した作業用ツールのワーク面上の現
    在点を含む2点の位置から前記ワーク面の勾配tanα
    を演算する手段と を含む倣い制御装置。
  4. (4)請求項2記載の倣い制御装置において、前記第1
    の演算手段は、 ワーク面上を移動する作業用ツールの位置を検出する手
    段と、 前記検出手段で検出した作業用ツールの現在点を含む2
    点の位置から前記作業用ツールの送り速度ベクトルvの
    方向を演算する手段と、 前記送り速度ベクトルvの方向と前記力検出手段で検出
    した力の方向とから前記ワーク面の勾配tanαを演算
    する手段と を含む倣い制御装置。
  5. (5)請求項1記載の倣い制御装置において、前記第1
    の制御手段は、 前記ワーク面の勾配tanαを演算する第4の演算手段
    と、 前記作業用ツールの送り目標速度v_x_y_oを設定
    する手段と、 前記第4の演算手段で求めた勾配tanαと前記送り目
    標速度v_x_y_oとから前記押付け方向の移動速度
    v_z_o_fを演算する第5の演算手段とを含む倣い
    制御装置。
  6. (6)請求項5記載の倣い制御装置において、前記第4
    の演算手段は、 ワーク面上を移動する作業用ツールの位置を検出する手
    段と、 作業用ツールの送り目標位置を予め設定する手段と、 前記検出手段で検出した作業用ツールのワーク面上の現
    在点の位置と前記設定手段で予め設定した送り目標位置
    との2点の位置から作業用ツールの押付け方向に垂直な
    方向の送り方向ベクトル■を演算する手段と、 前記送り方向ベクトル■と前記力検出手段で検出した力
    の方向とから前記ワーク面の勾配tanαを演算する手
    段と を含む倣い制御装置。
  7. (7)請求項1記載の倣い制御装置において、前記第1
    の制御手段は、 ワーク面上を移動する作業用ツールの位置を検出する手
    段と、 前記検出手段で検出した作業用ツールのワーク面上の現
    在点を含む2点の位置とその2点の位置の移動時間とか
    ら前記押付け方向の移動速度v_z_o_fを演算する
    第6の演算手段と を含む倣い制御装置。
  8. (8)請求項1記載の倣い制御装置において、前記第1
    の制御手段は、 前記ワーク面の勾配tanαを予め記憶する手段と、 前記作業用ツールの送り目標速度v_x_y_oを設定
    する手段と、 前記予め記憶した勾配tanαと前記送り目標速度v_
    x_y_oとから押付け方向の移動速度v_z_o_f
    を演算する第7の演算手段と を含む倣い制御装置。
  9. (9)請求項1記載の倣い制御装置において、前記第2
    の制御手段は、 前記押付け方向の移動速度v_z_o_fによって生じ
    る力f_o_fを演算する第8の演算手段と、この力f
    _o_fを前記力制御ループの押付け力の目標値f_r
    _oから差し引いて新しい押付け力の目標値f_rを演
    算する第9の演算手段と を含む倣い制御装置。
  10. (10)請求項1記載の倣い制御装置において、前記第
    2の制御手段は、 前記押付け方向の移動速度v_z_o_fを速度補正値
    v_z_cとし、この速度補正値v_z_cを前記力制
    御ループの速度指令値u_z_oに加算し、新たな速度
    指令値u_zを演算する第10の演算手段 を含む倣い制御装置。
JP1-265413A 1988-10-24 1989-10-12 任意曲面の倣い制御装置 Expired - Lifetime JP3001211B2 (ja)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP25859888 1988-10-14
JP26795288 1988-10-24
JP63-267952 1988-10-24
JP63-258598 1988-10-24

Publications (2)

Publication Number Publication Date
JPH02198748A true JPH02198748A (ja) 1990-08-07
JP3001211B2 JP3001211B2 (ja) 2000-01-24

Family

ID=

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010510479A (ja) * 2006-11-17 2010-04-02 カール ザイス インダストリエル メステクニーク ゲゼルシャフト ミット ベシュレンクテル ハフツング 多数の測定点の空間座標を判定するための方法および装置
JP2012112780A (ja) * 2010-11-24 2012-06-14 Canon Inc 接触式形状測定装置
JP2012526268A (ja) * 2009-05-07 2012-10-25 カール マール ホールディング ゲーエムベーハー 表面形状の測定方法および装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010510479A (ja) * 2006-11-17 2010-04-02 カール ザイス インダストリエル メステクニーク ゲゼルシャフト ミット ベシュレンクテル ハフツング 多数の測定点の空間座標を判定するための方法および装置
JP2012526268A (ja) * 2009-05-07 2012-10-25 カール マール ホールディング ゲーエムベーハー 表面形状の測定方法および装置
JP2012112780A (ja) * 2010-11-24 2012-06-14 Canon Inc 接触式形状測定装置

Also Published As

Publication number Publication date
EP0364057A2 (en) 1990-04-18
EP0364057B1 (en) 1995-05-17
EP0364057A3 (en) 1991-01-02
DE68922684T2 (de) 1995-10-19
DE68922684D1 (de) 1995-06-22
US4987356A (en) 1991-01-22

Similar Documents

Publication Publication Date Title
EP0364057B1 (en) Profiling control system for given curved surface
Hayati et al. Improving the absolute positioning accuracy of robot manipulators
Williams et al. Planar translational cable‐direct‐driven robots
Kao et al. Quasistatic manipulation with compliance and sliding
US4621332A (en) Method and apparatus for controlling a robot utilizing force, position, velocity, spring constant, mass coefficient, and viscosity coefficient
Badeau et al. Intuitive physical human-robot interaction: Using a passive parallel mechanism
JP2604929B2 (ja) ロボットの制御装置
JP4054984B2 (ja) ロボットの制御装置および制御方法
JP2619227B2 (ja) ロボットの制御方法および装置
JP3580562B2 (ja) ロボット
Tung et al. Application of MRAC theory for adaptive control of a constrained robot manipulator
JP3001211B2 (ja) 任意曲面の倣い制御装置
JPS59189416A (ja) 産業ロボツトの誘導教示方法
Hwang et al. Human interface, automatic planning, and control of a humanoid robot
JP2718687B2 (ja) 多自由度作業機械の位置と力の制御装置
JP2737325B2 (ja) ロボットの軌道生成方式
Wu et al. Off-line programmed error compensation of an industrial robot in ship hull welding
Shoham et al. Automation of surface finishing processes
Gorce et al. Numerical method applied to object tumbling with multi-body systems
JP2718688B2 (ja) 多自由度作業機械の位置と力の制御装置
JPH058187A (ja) ロボツト
Lin Identification of a class of nonlinear deterministic systems with application to manipulators
JPH0245806A (ja) 多自由作業機械の位置と力の制御装置
JP2773778B2 (ja) 力制御ロボットの倣い装置
JPH04300173A (ja) マスタスレーブマニピュレータ

Legal Events

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