JPH0569358A - ロボツトの力制御装置 - Google Patents
ロボツトの力制御装置Info
- Publication number
- JPH0569358A JPH0569358A JP40435690A JP40435690A JPH0569358A JP H0569358 A JPH0569358 A JP H0569358A JP 40435690 A JP40435690 A JP 40435690A JP 40435690 A JP40435690 A JP 40435690A JP H0569358 A JPH0569358 A JP H0569358A
- Authority
- JP
- Japan
- Prior art keywords
- force
- value
- digital filter
- robot
- detected
- 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.)
- Withdrawn
Links
Landscapes
- Feedback Control In General (AREA)
- Manipulator (AREA)
Abstract
(57)【要約】
【目的】本発明は、ロボットの力制御を行う装置に関
し、接触/非接触モードの切り換わり時に力目標値を各
モードに最適な値に速やかに変化させ、ひいてはハンド
の接触力を当該目標値に正確に一致させて高精度な力制
御を行うことを目的とする。 【構成】ハンドと作業対象物とが接触した際に生じるば
ね力Fεを検出し、該検出力と力指令値F0Kとの差に基
づき該ハンドの接触力Fe を定常状態において力目標値
F0 に一致させるように力制御を行う際に、力制御系FC
における各種補償器の零点を消去するような伝達関数を
持ったディジタル・フィルタDFを備え、上記ばね力Fε
>所定の力しきい値Fthd の時はF0 −Fthd のステッ
プ状の力増分量を上記ディジタル・フィルタによって変
化させ、該力増分量と力しきい値との和を上記力指令値
とし、Fε≦Fthd の時は該力指令値を0にし、該ディ
ジタル・フィルタを出力0の定常状態にするように構成
する。
し、接触/非接触モードの切り換わり時に力目標値を各
モードに最適な値に速やかに変化させ、ひいてはハンド
の接触力を当該目標値に正確に一致させて高精度な力制
御を行うことを目的とする。 【構成】ハンドと作業対象物とが接触した際に生じるば
ね力Fεを検出し、該検出力と力指令値F0Kとの差に基
づき該ハンドの接触力Fe を定常状態において力目標値
F0 に一致させるように力制御を行う際に、力制御系FC
における各種補償器の零点を消去するような伝達関数を
持ったディジタル・フィルタDFを備え、上記ばね力Fε
>所定の力しきい値Fthd の時はF0 −Fthd のステッ
プ状の力増分量を上記ディジタル・フィルタによって変
化させ、該力増分量と力しきい値との和を上記力指令値
とし、Fε≦Fthd の時は該力指令値を0にし、該ディ
ジタル・フィルタを出力0の定常状態にするように構成
する。
Description
【0001】
【産業上の利用分野】本発明は、ロボットの力制御を行
う技術に係り、特に、ロボットのハンドと作業対象物と
が接触した際に生じるばね力を検出し、該検出した力と
力指令値との差に基づき該ハンドの接触力を定常状態に
おいて力目標値に一致させるように制御を行う装置に関
する。
う技術に係り、特に、ロボットのハンドと作業対象物と
が接触した際に生じるばね力を検出し、該検出した力と
力指令値との差に基づき該ハンドの接触力を定常状態に
おいて力目標値に一致させるように制御を行う装置に関
する。
【0002】
【従来の技術】ロボットの力制御系の一例として、例え
ば図7に示すような直列構造の制御対象(ロボット、力
検出器、ハンドおよび作業対象物)を例にとって、該ハ
ンドと作業対象物の間の接触力Fe を定常状態において
力目標値(F0)に一致させる制御を考える。
ば図7に示すような直列構造の制御対象(ロボット、力
検出器、ハンドおよび作業対象物)を例にとって、該ハ
ンドと作業対象物の間の接触力Fe を定常状態において
力目標値(F0)に一致させる制御を考える。
【0003】図8に従来のロボット力制御系のブロック
線図を示す。図中、要素Gc (s) は力補償器の伝達関
数、要素Gr (s) は位置補償器の伝達関数であって、力
補償器の出力すなわち速度指令X0(S)* に対するロボッ
トハンドの移動速度X1(s)* の伝達関数を示す。なお、
以下の記述においてsはラプラス演算子を表し、また、
符号「* 」は時間的変分量(d/dt=s)を表すものとす
る。
線図を示す。図中、要素Gc (s) は力補償器の伝達関
数、要素Gr (s) は位置補償器の伝達関数であって、力
補償器の出力すなわち速度指令X0(S)* に対するロボッ
トハンドの移動速度X1(s)* の伝達関数を示す。なお、
以下の記述においてsはラプラス演算子を表し、また、
符号「* 」は時間的変分量(d/dt=s)を表すものとす
る。
【0004】力検出器により検出されるばね力Fε(s)
と力検出器がハンドに及ぼす力Fd (s) との関係は式
(1) で与えられる。 Fd (s) ={1+(Cd /Kd ) s}Fε(s) ……………………………… (1) また、図8のブロック線図を辿ることで、 Fε(s) ={GC (s) Gr (s)(F0(s)−Fε(s))/s−X2(s)}Kd … (2) が得られ、この式(2) より、 Fε(s) ={(Kd +Cd s)(Gc (s) Gr (s) F0(s)−X2(s)s)} /(s+Gc (s) Gr (s) Kd )…… (3) が得られる。また、ブロック線図を辿ることでロボット
ハンドの実位置、すなわち X2(s)={Fd (s) −Ke X2(s)−Ce X2(s)s}/ms2 …………… (4) が得られ、この式(4) に式(1),(3) を代入してFd (s)
を消去し、整理すると、 X2(s)/F0(s)=(Kd +Cd s)Gc (s) Gr (s) /P(s) …………… (5) となる。但し、 P(s) =ms3 +{mkd Gc (s) Gr (s) +Cd +Ce }s2 +{kd +ke +Ce kd Gc (s) Gr (s) }s +ke kd Gc (s) Gr (s) …………………… (6) である。さらに、ブロック線図を辿ることで、 Fe (s) =(ke +Ce s)X2(s)………………………………………… (7) が得られる。この式(7) を式(5) に代入すると、 Fe (s) /F0(s)=(ke +Ce s)(kd +Cd s) ×Gc (s) Gr (s) /P(s) …………………… (8) となる。
と力検出器がハンドに及ぼす力Fd (s) との関係は式
(1) で与えられる。 Fd (s) ={1+(Cd /Kd ) s}Fε(s) ……………………………… (1) また、図8のブロック線図を辿ることで、 Fε(s) ={GC (s) Gr (s)(F0(s)−Fε(s))/s−X2(s)}Kd … (2) が得られ、この式(2) より、 Fε(s) ={(Kd +Cd s)(Gc (s) Gr (s) F0(s)−X2(s)s)} /(s+Gc (s) Gr (s) Kd )…… (3) が得られる。また、ブロック線図を辿ることでロボット
ハンドの実位置、すなわち X2(s)={Fd (s) −Ke X2(s)−Ce X2(s)s}/ms2 …………… (4) が得られ、この式(4) に式(1),(3) を代入してFd (s)
を消去し、整理すると、 X2(s)/F0(s)=(Kd +Cd s)Gc (s) Gr (s) /P(s) …………… (5) となる。但し、 P(s) =ms3 +{mkd Gc (s) Gr (s) +Cd +Ce }s2 +{kd +ke +Ce kd Gc (s) Gr (s) }s +ke kd Gc (s) Gr (s) …………………… (6) である。さらに、ブロック線図を辿ることで、 Fe (s) =(ke +Ce s)X2(s)………………………………………… (7) が得られる。この式(7) を式(5) に代入すると、 Fe (s) /F0(s)=(ke +Ce s)(kd +Cd s) ×Gc (s) Gr (s) /P(s) …………………… (8) となる。
【0005】従来の方式では、ロボットの力制御が安定
となるように、式(6) =0の根、すなわち式(8) の極が
S平面において左半面にあるように力補償器の伝達関数
Gc (s) を設計していた。
となるように、式(6) =0の根、すなわち式(8) の極が
S平面において左半面にあるように力補償器の伝達関数
Gc (s) を設計していた。
【0006】
【発明が解決しようとする課題】式(8) から明らかなよ
うに零点(−Ke /Ce 、−Kd /Cd 、Gc(s) およ
びGr (s) の4個の零点)が存在するために、従来の方
式では、力目標値F0(s)に対する接触力Fe (s) の過渡
応答波形まで考慮して設計することは極めて困難であ
り、十分な設計を行っていないのが実情である。このた
め、図6(a) に示されるように力目標値F0 としてステ
ップ状に値を与えた場合(実線表示)、ハンドと作業対
象物とが接触した際に生じるばね力Fε(破線表示)、
すなわちハンドの接触力が「オーバーシュート」してし
まい、力目標値F0 よりも大きな力を作業対象物に与え
てしまうなどの望ましくない状態が発生するという問題
があった。
うに零点(−Ke /Ce 、−Kd /Cd 、Gc(s) およ
びGr (s) の4個の零点)が存在するために、従来の方
式では、力目標値F0(s)に対する接触力Fe (s) の過渡
応答波形まで考慮して設計することは極めて困難であ
り、十分な設計を行っていないのが実情である。このた
め、図6(a) に示されるように力目標値F0 としてステ
ップ状に値を与えた場合(実線表示)、ハンドと作業対
象物とが接触した際に生じるばね力Fε(破線表示)、
すなわちハンドの接触力が「オーバーシュート」してし
まい、力目標値F0 よりも大きな力を作業対象物に与え
てしまうなどの望ましくない状態が発生するという問題
があった。
【0007】これに対処するため、本出願人は、前に、
上記の零点を極に持つようなフィルタに力目標値(のデ
ータ)を通すことで上記の不都合を解消した技術(平成
2年7月9日付出願の特願平2−181857号)を提
案した。しかしながら、ロボットに、接触、非接触、接
触、非接触、……の連続動作を行わせる時、制御系は接
触モードと非接触モードとに頻繁に切り換えられること
になるため、上記特定のフィルタには以下の条件、すな
わち、非接触時に出力が直ちに0となること、接触
モードに切り換わった時に接触力のしきい値からの立ち
上がり(応答)が速やかにできること、が必要となる。
ところが従来の技術では、このような条件を満足させる
ような所望のフィルタを構成することが困難であった。
上記の零点を極に持つようなフィルタに力目標値(のデ
ータ)を通すことで上記の不都合を解消した技術(平成
2年7月9日付出願の特願平2−181857号)を提
案した。しかしながら、ロボットに、接触、非接触、接
触、非接触、……の連続動作を行わせる時、制御系は接
触モードと非接触モードとに頻繁に切り換えられること
になるため、上記特定のフィルタには以下の条件、すな
わち、非接触時に出力が直ちに0となること、接触
モードに切り換わった時に接触力のしきい値からの立ち
上がり(応答)が速やかにできること、が必要となる。
ところが従来の技術では、このような条件を満足させる
ような所望のフィルタを構成することが困難であった。
【0008】本発明は、かかる従来技術における課題に
鑑み創作されたもので、接触/非接触モードの切り換わ
り時に力目標値を各モードに最適な値に速やかに変化さ
せ、ひいてはハンドの接触力を当該目標値に正確に一致
させて高精度な力制御を行うことができるロボットの力
制御装置を提供することを目的としている。
鑑み創作されたもので、接触/非接触モードの切り換わ
り時に力目標値を各モードに最適な値に速やかに変化さ
せ、ひいてはハンドの接触力を当該目標値に正確に一致
させて高精度な力制御を行うことができるロボットの力
制御装置を提供することを目的としている。
【0009】
【課題を解決するための手段】上記課題を解決するため
本発明によれば、図1に示されるように、ロボットのハ
ンドと作業対象物とが接触した際に生じるばね力Fεを
検出し、該検出した力と力指令値F0Kとの差に基づき該
ハンドの接触力Fe を定常状態において力目標値F0 に
一致させるように制御を行うロボットの力制御装置であ
って、力制御系FCにおける各種補償器の零点を消去する
ような伝達関数を持ったディジタル・フィルタDFを有
し、該ディジタル・フィルタの出力に基づき前記力指令
値を発生する制御手段Cを具備し、該制御手段は、前記
検出した力の大きさが所定の力しきい値Fthd を越えた
時は該力しきい値から前記力目標値までのステップ状の
力増分量を前記ディジタル・フィルタによって変化させ
ると共に、該力増分量と該力しきい値との和を前記力指
令値とし、該検出した力の大きさが該力しきい値を越え
ない時は該力指令値を0にすると共に、該ディジタル・
フィルタを出力0の定常状態にすることを特徴とするロ
ボットの力制御装置が提供される。
本発明によれば、図1に示されるように、ロボットのハ
ンドと作業対象物とが接触した際に生じるばね力Fεを
検出し、該検出した力と力指令値F0Kとの差に基づき該
ハンドの接触力Fe を定常状態において力目標値F0 に
一致させるように制御を行うロボットの力制御装置であ
って、力制御系FCにおける各種補償器の零点を消去する
ような伝達関数を持ったディジタル・フィルタDFを有
し、該ディジタル・フィルタの出力に基づき前記力指令
値を発生する制御手段Cを具備し、該制御手段は、前記
検出した力の大きさが所定の力しきい値Fthd を越えた
時は該力しきい値から前記力目標値までのステップ状の
力増分量を前記ディジタル・フィルタによって変化させ
ると共に、該力増分量と該力しきい値との和を前記力指
令値とし、該検出した力の大きさが該力しきい値を越え
ない時は該力指令値を0にすると共に、該ディジタル・
フィルタを出力0の定常状態にすることを特徴とするロ
ボットの力制御装置が提供される。
【0010】
【作用】上述した構成によれば、検出力Fε>所定の力
しきい値Fthd の時(つまり接触モードの時)、力しき
い値Fthd から力目標値F0 までのステップ状の力増分
量を上記特定の伝達関数を持ったディジタル・フィルタ
DFによって変化させ、検出力Fε≦所定の力しきい値F
thd の時(つまり非接触モードの時)、ディジタル・フ
ィルタDFを直ちに出力0の定常状態となるように制御し
ている。つまり、前述した従来の課題およびに対処
できるようにディジタル・フィルタの機能が制御されて
いる。
しきい値Fthd の時(つまり接触モードの時)、力しき
い値Fthd から力目標値F0 までのステップ状の力増分
量を上記特定の伝達関数を持ったディジタル・フィルタ
DFによって変化させ、検出力Fε≦所定の力しきい値F
thd の時(つまり非接触モードの時)、ディジタル・フ
ィルタDFを直ちに出力0の定常状態となるように制御し
ている。つまり、前述した従来の課題およびに対処
できるようにディジタル・フィルタの機能が制御されて
いる。
【0011】従って、接触/非接触モードの切り換わり
時に力目標値FO をそれぞれ最適な値(FO または0)
に速やかに変化させることができるので、従来形の場合
に比して過渡応答特性を改善することができる。これに
よって、ハンドの接触力を当該目標値に正確に且つ速や
かに一致させ、高精度なロボット力制御を行うことが可
能となる。
時に力目標値FO をそれぞれ最適な値(FO または0)
に速やかに変化させることができるので、従来形の場合
に比して過渡応答特性を改善することができる。これに
よって、ハンドの接触力を当該目標値に正確に且つ速や
かに一致させ、高精度なロボット力制御を行うことが可
能となる。
【0012】なお、本発明の他の構成上の特徴および作
用の詳細については、添付図面を参照しつつ以下に記述
される実施例を用いて説明する。
用の詳細については、添付図面を参照しつつ以下に記述
される実施例を用いて説明する。
【0013】
【実施例】図2に本発明の一実施例の構成が示される。
同図において、ロボットアーム11に力検出器12を介して
ハンド13が取り付けてあり、作業対象物14に目標力(F
O * )で接触させる作業を行う場合について説明する。
この場合、ロボットアーム11は、ボールねじ15によって
移動可能となっており、タコジェネレータ(G)17が連
結されたモータ(M)16によって駆動される。
同図において、ロボットアーム11に力検出器12を介して
ハンド13が取り付けてあり、作業対象物14に目標力(F
O * )で接触させる作業を行う場合について説明する。
この場合、ロボットアーム11は、ボールねじ15によって
移動可能となっており、タコジェネレータ(G)17が連
結されたモータ(M)16によって駆動される。
【0014】力検出器12のばねの表面には歪ゲージ18が
貼付されており、接触による応力によって生じた歪みに
比例した電圧が得られるようになっている。この電圧は
コントローラ20内のアンプ21によって(ばね力)/(電
圧)の関係となる較正率で増幅され、それによってばね
力(検出力)Fεが計測される。なお、歪は力検出器12
が受ける力を表すため、アンプ21は「逆極性」で増幅を
行う。検出されたばね力Fεは、加算器22に入力される
と共に、プロセッサ30内のアナログ/ディジタル(A/
D)コンバータ32にも入力される。後述する図4および
図5の処理に従って、接触モードの時に、プロセッサ30
は、力目標値FO をディジタル・フィルタDF(図1参
照)に通して生成した力指令値F0Kを電圧変換したもの
(ディジタル/アナログ(D/A)コンバータ33の出
力)を加算器22に出力し、そこで該力指令値に相当する
電圧とばね力Fεに相当する電圧との偏差が生成され
る。この偏差は力補償器GC (s) 23に入力されて、速度
指令値XO * を生成する。なお、力補償器Gc (s) は、
位相遅れ要素、位相進み要素、PI要素またはPD要素
のいずれかで構成される。
貼付されており、接触による応力によって生じた歪みに
比例した電圧が得られるようになっている。この電圧は
コントローラ20内のアンプ21によって(ばね力)/(電
圧)の関係となる較正率で増幅され、それによってばね
力(検出力)Fεが計測される。なお、歪は力検出器12
が受ける力を表すため、アンプ21は「逆極性」で増幅を
行う。検出されたばね力Fεは、加算器22に入力される
と共に、プロセッサ30内のアナログ/ディジタル(A/
D)コンバータ32にも入力される。後述する図4および
図5の処理に従って、接触モードの時に、プロセッサ30
は、力目標値FO をディジタル・フィルタDF(図1参
照)に通して生成した力指令値F0Kを電圧変換したもの
(ディジタル/アナログ(D/A)コンバータ33の出
力)を加算器22に出力し、そこで該力指令値に相当する
電圧とばね力Fεに相当する電圧との偏差が生成され
る。この偏差は力補償器GC (s) 23に入力されて、速度
指令値XO * を生成する。なお、力補償器Gc (s) は、
位相遅れ要素、位相進み要素、PI要素またはPD要素
のいずれかで構成される。
【0015】ロボットアーム11の移動速度X1 * は、タ
コジェネレータ17の出力電圧を(ボールねじの送り速
度)/(モータの回転速度)の関係となる較正率でアン
プ24により増幅することにより、検出される。この検出
された移動速度X1 * は、プロセッサ30内のD/Aコン
バータ31を介して供給される接近速度指令値Xak * およ
び力補償器GC (s) 23の出力(速度指令値X0 * )と共
に加算器25に入力され、そこで移動速度X1 * に相当す
る電圧と接近速度指令値Xak * または速度指令値X0 *
に相当する電圧との偏差が生成される。この偏差は位置
補償器Gr (s) 26に入力され、操作量としてのモータ駆
動指令電圧を生成する。なお、位置補償器Gr (s) はP
ID要素で構成される。生成された指令電圧は、パワー
アンプ19を介してモータ16に供給される。
コジェネレータ17の出力電圧を(ボールねじの送り速
度)/(モータの回転速度)の関係となる較正率でアン
プ24により増幅することにより、検出される。この検出
された移動速度X1 * は、プロセッサ30内のD/Aコン
バータ31を介して供給される接近速度指令値Xak * およ
び力補償器GC (s) 23の出力(速度指令値X0 * )と共
に加算器25に入力され、そこで移動速度X1 * に相当す
る電圧と接近速度指令値Xak * または速度指令値X0 *
に相当する電圧との偏差が生成される。この偏差は位置
補償器Gr (s) 26に入力され、操作量としてのモータ駆
動指令電圧を生成する。なお、位置補償器Gr (s) はP
ID要素で構成される。生成された指令電圧は、パワー
アンプ19を介してモータ16に供給される。
【0016】プロセッサ30は、ディジタル量の接近速度
指令値Xa * をアナログ値に変換するD/Aコンバータ
31と、コントローラ20からのアナログ値のばね力検出値
Fεをディジタル量に変換するA/Dコンバータ32と、
ディジタル量の力目標値FO をディジタル・フィルタに
通して生成した力指令値F0Kをアナログ値に変換するD
/Aコンバータ33と、該プロセッサが行う処理を規定し
たプログラムを格納するためのプログラムROM34と、
キーボード40から入力した各種データ(パラメータ、フ
ィルタ変数等)を格納するためのメモリ35と、キーボー
ド40から入力した各種データをバス38に接続するための
インタフェース(I/F)36と、プログラムに従って各
種処理(図4および図5の処理)を実行するCPU37と
から構成されており、各要素はバス38を介して互いに接
続されている。プロセッサ30は全体として、命令解析、
ディジタル・フィルタのパラメータ設定および指令値発
生の機能を有し、各機能はプログラム処理で実行される
ようになっている。
指令値Xa * をアナログ値に変換するD/Aコンバータ
31と、コントローラ20からのアナログ値のばね力検出値
Fεをディジタル量に変換するA/Dコンバータ32と、
ディジタル量の力目標値FO をディジタル・フィルタに
通して生成した力指令値F0Kをアナログ値に変換するD
/Aコンバータ33と、該プロセッサが行う処理を規定し
たプログラムを格納するためのプログラムROM34と、
キーボード40から入力した各種データ(パラメータ、フ
ィルタ変数等)を格納するためのメモリ35と、キーボー
ド40から入力した各種データをバス38に接続するための
インタフェース(I/F)36と、プログラムに従って各
種処理(図4および図5の処理)を実行するCPU37と
から構成されており、各要素はバス38を介して互いに接
続されている。プロセッサ30は全体として、命令解析、
ディジタル・フィルタのパラメータ設定および指令値発
生の機能を有し、各機能はプログラム処理で実行される
ようになっている。
【0017】プロセッサ30が行う命令は、キーボード40
から適宜入力される。例えば、命令(CMD) が “CMD" <parameter>, <parameter>,……… の書式で入力されるものとすると、押し付け動作命令
は、 "PRS" <FO * >, <Fthd >, <α>, <Xamax * > 、 の形で入力され、ディジタル・フィルタ設定命令は、 "DF1" <T1> (要素1) "DF2" <KPD>, <KPP>, <KPI> (要素2) "DF3" <T2>, <T3> (要素3) の形で入力される。
から適宜入力される。例えば、命令(CMD) が “CMD" <parameter>, <parameter>,……… の書式で入力されるものとすると、押し付け動作命令
は、 "PRS" <FO * >, <Fthd >, <α>, <Xamax * > 、 の形で入力され、ディジタル・フィルタ設定命令は、 "DF1" <T1> (要素1) "DF2" <KPD>, <KPP>, <KPI> (要素2) "DF3" <T2>, <T3> (要素3) の形で入力される。
【0018】上記構成において、位置補償器の伝達関
数、すなわち速度補償のための伝達関数Gr (s) は、図
3より Gr (s) =X1(s)* /X0(s)* =(KPDs2 +KPPs+KPI) /{Ms3 +(KPD+Cr )s2 +KPPs+KPI}……… (9) で与えられる。但し駆動系に高減速比の伝達軸を用いる
ことで、力検出器12からロボットへの反力(−Fd )を
サーボに影響しない外乱と見做す。
数、すなわち速度補償のための伝達関数Gr (s) は、図
3より Gr (s) =X1(s)* /X0(s)* =(KPDs2 +KPPs+KPI) /{Ms3 +(KPD+Cr )s2 +KPPs+KPI}……… (9) で与えられる。但し駆動系に高減速比の伝達軸を用いる
ことで、力検出器12からロボットへの反力(−Fd )を
サーボに影響しない外乱と見做す。
【0019】そして、図1に示したように目標力F0(s)
と力補償器GC (s) の間に−Ke /Ce 、−Kd /
Cd 、Gc (s) およびGr (s) の零点を極に持つような
5次遅れ要素からなるディジタル・フィルタDFを挿入
し、式(8) の零点を消去する。この時、ディジタル・フ
ィルタDFにおける連続系の伝達関数Gq (s) (=F
0k(s) /F0(s))は、 Gq (s) =KPI/{(T1 s+1)(T2 s+1)(T3 s+1) × (KPDs2 +KPPs+KPI)}……………………(10) で表される。ここで、T1 およびT2 の値はそれぞれ、 T1 =Cd /Kd 、 T2 =Ce /Ke ……………………………………(11) で与えられる。また、T3 の値は、Gc (s) を位相遅れ
/進み要素KF ( Ta s+1) /( Tb s+1)で構成
した場合には、 T3 =Ta …………………………………………………………………(12) で与えられ、積分・比例要素KP {1+1/(T
I s)}で構成した場合には、 T3 =TI …………………………………………………………………(13) で与えられ、比例・微分要素KP (1+TD s )で構成し
た場合には、 T3 =TD …………………………………………………………………(14) で与えられる。
と力補償器GC (s) の間に−Ke /Ce 、−Kd /
Cd 、Gc (s) およびGr (s) の零点を極に持つような
5次遅れ要素からなるディジタル・フィルタDFを挿入
し、式(8) の零点を消去する。この時、ディジタル・フ
ィルタDFにおける連続系の伝達関数Gq (s) (=F
0k(s) /F0(s))は、 Gq (s) =KPI/{(T1 s+1)(T2 s+1)(T3 s+1) × (KPDs2 +KPPs+KPI)}……………………(10) で表される。ここで、T1 およびT2 の値はそれぞれ、 T1 =Cd /Kd 、 T2 =Ce /Ke ……………………………………(11) で与えられる。また、T3 の値は、Gc (s) を位相遅れ
/進み要素KF ( Ta s+1) /( Tb s+1)で構成
した場合には、 T3 =Ta …………………………………………………………………(12) で与えられ、積分・比例要素KP {1+1/(T
I s)}で構成した場合には、 T3 =TI …………………………………………………………………(13) で与えられ、比例・微分要素KP (1+TD s )で構成し
た場合には、 T3 =TD …………………………………………………………………(14) で与えられる。
【0020】なお、上記の5次遅れ要素のうち、T1 は
力検出器に係わる値であるので一定の値となり、KPD、
KPPおよびKPIはロボットの関節サーボに係わる値であ
るので同様にほぼ一定の値となり、そして、T2 および
T3 は作業対象物に応じて変化させる可変の値となる。
そこで、伝達関数Gq (s) を以下の3要素Gq1(s) 、G
q2(s) およびGq3(s)に分割し、これらを分割した順に
直列結合させることにする。従って、以下の関係が成り
立つ。
力検出器に係わる値であるので一定の値となり、KPD、
KPPおよびKPIはロボットの関節サーボに係わる値であ
るので同様にほぼ一定の値となり、そして、T2 および
T3 は作業対象物に応じて変化させる可変の値となる。
そこで、伝達関数Gq (s) を以下の3要素Gq1(s) 、G
q2(s) およびGq3(s)に分割し、これらを分割した順に
直列結合させることにする。従って、以下の関係が成り
立つ。
【0021】 Gq1(s) =1/(T1 s+1)………………………………………………(15) Gq2(s) =KPI/(KPDs2 +KPPs+KPI)……………………………(16) Gq3(s) =1/{(T2 s+1)(T3 s+1)}…………………………(17) 本発明ではこれらを離散形で実現し、それによって従来
の課題に対処できるディジタル・フィルタDFを構成して
いる。ここでサンプリング周期をτとして、式(15)〜(1
7)に双線形変換 S=(2/τ)(1−z-1) /(1+z -1) …………………………………(18) を施し、IIR形フィルタを構成すると、以下の式(19)
〜(21)を得る。
の課題に対処できるディジタル・フィルタDFを構成して
いる。ここでサンプリング周期をτとして、式(15)〜(1
7)に双線形変換 S=(2/τ)(1−z-1) /(1+z -1) …………………………………(18) を施し、IIR形フィルタを構成すると、以下の式(19)
〜(21)を得る。
【0022】 Vk =a10(Uk +Uk-1)+a11Vk-1 ……………………………………(19) Wk =a20(Vk +2Vk-1 +Vk-2)+a21Wk-1 +a22Wk-2 ………(20) Yk =a30(Wk +2Wk-1 +Wk-2)+a31Yk-1 +a32Yk-2 ………(21) 但し、 a10=τ/(τ+2T1)……………………………………………………(22) a11=(τ−2T1)/(τ+2T1)………………………………………(23) a20=(τ2 KPI/KPD)Ф………………………………………………(24) a21=(8−2τ2 KPI/KPD)Ф………………………………………(25) a22=−{4−2τ(KPP/KPD)+(τ2 KPI/KPD)}Ф………(26) Ф=4+2τ(KPP/KPD)+(τ2 KPI/KPD)……………………(27) a30=(τ2 /T2 T3)/Ψ………………………………………………(28) a31=(8−2τ2 /T2 T3)/Ψ………………………………………(29) a32−{4−2τ(T2 +T3)/T2 T3 +(τ2 /T2 T3)}/Ψ …(30) Ψ=4+2τ(T2 +T3)/T2 T3 +(τ2 /T2 T3)……………(31) である。ここで、kに対してk−1を1周期前のサンプ
リング値を表すものとすると、Uk は第1要素の入力、
Vk は第1要素の出力であって且つ第2要素の入力、W
k は第2要素の出力であって且つ第3要素の入力、そし
てYk は第3要素の出力に相当する。
リング値を表すものとすると、Uk は第1要素の入力、
Vk は第1要素の出力であって且つ第2要素の入力、W
k は第2要素の出力であって且つ第3要素の入力、そし
てYk は第3要素の出力に相当する。
【0023】 接触モード いま、力目標値FO * 、接触力のしきい値Fthd( >
0)に対して、或るサンプリング時のばね力検出値Fε
k が押し付け方向にFthd の値を越えた時、接触モード
と見做し、Uk に次の値を与える。すなわち、 sgn(FO * ) ・Fεk >Fthd ……………………………………………(32) の時、 Uk =Fo * −sgn(Fo * ) ・Fthd …………………………………(33) である。そして、力追従サーボ系への力指令値F0kは、
以下の式 Fok=Yk +sgn(Fo * ) ・Fthd,……………………………………(34) で与えられる。なお、sgn( )は( ) 内の関数値の符号を
示す。また、接近速度指令値Xak * は0である。
0)に対して、或るサンプリング時のばね力検出値Fε
k が押し付け方向にFthd の値を越えた時、接触モード
と見做し、Uk に次の値を与える。すなわち、 sgn(FO * ) ・Fεk >Fthd ……………………………………………(32) の時、 Uk =Fo * −sgn(Fo * ) ・Fthd …………………………………(33) である。そして、力追従サーボ系への力指令値F0kは、
以下の式 Fok=Yk +sgn(Fo * ) ・Fthd,……………………………………(34) で与えられる。なお、sgn( )は( ) 内の関数値の符号を
示す。また、接近速度指令値Xak * は0である。
【0024】 非接触モード 一方、或るサンプリング時のばね力検出値Fεk が押し
付け方向にFthd の値を越えない時、非接触モードと見
做し、力追従サーボ系への力指令値FOkを0とし、位置
補償器への速度指令XOk * に接近速度指令値Xak * が加
えられる。この時、ディジタル・フィルタDFを直ちに出
力0の定常状態にする。すなわち、 sgn(FO * ) ・Fεk ≦Fthd ……………………………………………(35) の時、 Uk =Uk-1 =Vk =Vk-1 =Vk-2 =0……………………………(36) Wk =Wk-1 =Wk-2 =Yk =Yk-1 =Yk-2 =0…………………(37) Fok=0……………………………………………………………………(38) であり、非接触モードになってからのサンプリング回数
nに対して、 Xan * =Xan-1 * +sgn(Fo * ) ・ατ(n<Xamax * /ατ)………(39) Xan * =sgn(Fo * ) ・Xamax * (n≧Xamax * /ατ)………(40) Xak * =Xan * ………………………………………………………………(41) で与える。
付け方向にFthd の値を越えない時、非接触モードと見
做し、力追従サーボ系への力指令値FOkを0とし、位置
補償器への速度指令XOk * に接近速度指令値Xak * が加
えられる。この時、ディジタル・フィルタDFを直ちに出
力0の定常状態にする。すなわち、 sgn(FO * ) ・Fεk ≦Fthd ……………………………………………(35) の時、 Uk =Uk-1 =Vk =Vk-1 =Vk-2 =0……………………………(36) Wk =Wk-1 =Wk-2 =Yk =Yk-1 =Yk-2 =0…………………(37) Fok=0……………………………………………………………………(38) であり、非接触モードになってからのサンプリング回数
nに対して、 Xan * =Xan-1 * +sgn(Fo * ) ・ατ(n<Xamax * /ατ)………(39) Xan * =sgn(Fo * ) ・Xamax * (n≧Xamax * /ατ)………(40) Xak * =Xan * ………………………………………………………………(41) で与える。
【0025】以上説明したように本実施例の制御方式に
よれば、接触モードの時に、上記特定の伝達関数を持っ
たディジタル・フィルタDFに力目標値FO を通して生成
した力指令値F0Kと、ばね力検出値Fεとの偏差を生成
し、この偏差を力補償器GC (s) に入力して速度指令値
XO * を生成し、さらに速度指令値XO * または接近速
度指令値Xak * と、タコジェネレータ17によって検出さ
れアンプ24によって増幅された移動速度X1 * との偏差
を生成し、この偏差を位置補償器Gr (s) に入力して生
成した操作量でモータ16を駆動するようにしている。一
方、非接触モードの時、ディジタル・フィルタDFは、直
ちに出力0の定常状態となるよう制御されている。従っ
て、力制御系(図1の力制御系FC参照)の零点を消去し
て過渡応答特性を改善することが可能となる(後述の図
6(b) 参照)。
よれば、接触モードの時に、上記特定の伝達関数を持っ
たディジタル・フィルタDFに力目標値FO を通して生成
した力指令値F0Kと、ばね力検出値Fεとの偏差を生成
し、この偏差を力補償器GC (s) に入力して速度指令値
XO * を生成し、さらに速度指令値XO * または接近速
度指令値Xak * と、タコジェネレータ17によって検出さ
れアンプ24によって増幅された移動速度X1 * との偏差
を生成し、この偏差を位置補償器Gr (s) に入力して生
成した操作量でモータ16を駆動するようにしている。一
方、非接触モードの時、ディジタル・フィルタDFは、直
ちに出力0の定常状態となるよう制御されている。従っ
て、力制御系(図1の力制御系FC参照)の零点を消去し
て過渡応答特性を改善することが可能となる(後述の図
6(b) 参照)。
【0026】図4および図5には、プロセッサ30が行う
処理(プログラム)のフローが示される。まずステップ
41では、命令の割り込み処理すなわち命令(CMD) の入力
が有った(YES) か否(NO)かの判定を行う。判定結果がYE
S の場合にはの処理すなわちステップ51に進み、判定
結果がNOの場合には次のステップ42に進む。ステップ42
では、コントローラ20から或るサンプリング時のばね力
検出値Fεk をA/Dコンバータ32内に取り込む。
処理(プログラム)のフローが示される。まずステップ
41では、命令の割り込み処理すなわち命令(CMD) の入力
が有った(YES) か否(NO)かの判定を行う。判定結果がYE
S の場合にはの処理すなわちステップ51に進み、判定
結果がNOの場合には次のステップ42に進む。ステップ42
では、コントローラ20から或るサンプリング時のばね力
検出値Fεk をA/Dコンバータ32内に取り込む。
【0027】次のステップ43では、式(32)の関係が成り
立つ(YES) か或いは式(35)の関係が成り立つ(NO)かの判
定を行う。判定結果がYES の場合には、接触モードと見
做してステップ44の処理(パラメータ設定および指令値
発生)を行い、判定結果がNOの場合には、非接触モード
と見做してステップ45の処理(パラメータ設定および指
令値発生)を行う。次のステップ46では、ステップ44ま
たは45において設定された力指令値FOkおよび接近速度
指令値Xak * をそれぞれD/Aコンバータ33および31に
出力する。ステップ46の処理が終了すると、の処理す
なわちステップ41に戻って上記処理を繰り返す。
立つ(YES) か或いは式(35)の関係が成り立つ(NO)かの判
定を行う。判定結果がYES の場合には、接触モードと見
做してステップ44の処理(パラメータ設定および指令値
発生)を行い、判定結果がNOの場合には、非接触モード
と見做してステップ45の処理(パラメータ設定および指
令値発生)を行う。次のステップ46では、ステップ44ま
たは45において設定された力指令値FOkおよび接近速度
指令値Xak * をそれぞれD/Aコンバータ33および31に
出力する。ステップ46の処理が終了すると、の処理す
なわちステップ41に戻って上記処理を繰り返す。
【0028】一方、ステップ51では、命令CMD の種類が
押し付け動作命令PRS である(YES)か否(NO)かの判定を
行う。判定結果がYES の場合にはステップ52に進み、判
定結果がNOの場合にはステップ53に進む。ステップ52で
は、解読された命令をメモリ35に書き込み、この後、
の処理すなわちステップ41に戻る。ステップ53では、命
令CMD の種類がディジタル・フィルタ設定命令DF1 であ
る(YES) か否(NO)かの判定を行う。判定結果がYES の場
合にはステップ54に進み、判定結果がNOの場合にはステ
ップ55に進む。ステップ54では、式(22),(23) のパラメ
ータ設定処理を行い、この後、ステップ52に進む。
押し付け動作命令PRS である(YES)か否(NO)かの判定を
行う。判定結果がYES の場合にはステップ52に進み、判
定結果がNOの場合にはステップ53に進む。ステップ52で
は、解読された命令をメモリ35に書き込み、この後、
の処理すなわちステップ41に戻る。ステップ53では、命
令CMD の種類がディジタル・フィルタ設定命令DF1 であ
る(YES) か否(NO)かの判定を行う。判定結果がYES の場
合にはステップ54に進み、判定結果がNOの場合にはステ
ップ55に進む。ステップ54では、式(22),(23) のパラメ
ータ設定処理を行い、この後、ステップ52に進む。
【0029】同様にして、ステップ55および57において
それぞれ命令CMD の種類がディジタル・フィルタ設定命
令DF2,DF3 であるか否かの判定を行い、それぞれ判定結
果に基づいて対応するステップ56、58の処理を行う。各
処理の終了後、ステップ52に進む。図6は、従来例と対
比させた本実施例装置による効果の例示するものであ
り、ハンドが作業対象物に対して「接触」と「非接触」
の各モードを繰り返した時の目標力すなわち力目標値F
0 (実線表示)とばね力Fε(破線表示)の関係を示し
ている。同図において、(a) が従来例の場合、(b) が本
発明の一例の場合に相当している。
それぞれ命令CMD の種類がディジタル・フィルタ設定命
令DF2,DF3 であるか否かの判定を行い、それぞれ判定結
果に基づいて対応するステップ56、58の処理を行う。各
処理の終了後、ステップ52に進む。図6は、従来例と対
比させた本実施例装置による効果の例示するものであ
り、ハンドが作業対象物に対して「接触」と「非接触」
の各モードを繰り返した時の目標力すなわち力目標値F
0 (実線表示)とばね力Fε(破線表示)の関係を示し
ている。同図において、(a) が従来例の場合、(b) が本
発明の一例の場合に相当している。
【0030】図示されるように本実施例では、従来形に
見られたようなオーバーシュートを生じることなく、力
目標値FO が接触/非接触モードの切り換わり時にそれ
ぞれ最適な値(FO または0)に速やかに変化している
ので、従来形の場合に比して過渡応答特性を改善するこ
とができる。つまり、ハンドの接触力が当該目標値に正
確に且つ速やかに一致するように制御がなされているた
め、高精度なロボット力制御を行うことができる。
見られたようなオーバーシュートを生じることなく、力
目標値FO が接触/非接触モードの切り換わり時にそれ
ぞれ最適な値(FO または0)に速やかに変化している
ので、従来形の場合に比して過渡応答特性を改善するこ
とができる。つまり、ハンドの接触力が当該目標値に正
確に且つ速やかに一致するように制御がなされているた
め、高精度なロボット力制御を行うことができる。
【0031】
【発明の効果】以上説明したように本発明によれば、接
触/非接触モードの切り換わり時に力目標値を各モード
に最適な値に速やかに変化させることにより、過渡応答
特性を良好にしてオーバーシュート等の不都合を解消
し、ひいてはハンドの接触力を当該目標値に正確に一致
させて高精度な力制御を行うことができる。
触/非接触モードの切り換わり時に力目標値を各モード
に最適な値に速やかに変化させることにより、過渡応答
特性を良好にしてオーバーシュート等の不都合を解消
し、ひいてはハンドの接触力を当該目標値に正確に一致
させて高精度な力制御を行うことができる。
【図1】本発明によるロボットの力制御装置の原理構成
図である。
図である。
【図2】本発明の一実施例の構成図である。
【図3】本発明に係る速度補償の説明図である。
【図4】図2のプロセッサが行う処理の一部を示すフロ
ーチャートである。
ーチャートである。
【図5】図2のプロセッサが行う処理の一部を示すフロ
ーチャートである。
ーチャートである。
【図6】従来例と対比させた本実施例装置による効果の
説明図である。
説明図である。
【図7】ロボットの力制御系の説明図である。
【図8】従来形におけるロボット力制御系のブロック線
図である。
図である。
C…制御手段 DF…ディジタル・フィルタ FC…力制御系 F0 …力目標値 F0K…力指令値 Fε…ばね力(検出値) Fe …接触力 Fthd …所定の力しきい値 Gq1(s),Gq2(s),Gq3(s) …ディジタル・フィルタの伝
達関数
達関数
Claims (3)
- 【請求項1】 ロボットのハンドと作業対象物とが接触
した際に生じるばね力(Fε)を検出し、該検出した力
と力指令値(F0K)との差に基づき該ハンドの接触力
(Fe ) を定常状態において力目標値(F0)に一致させ
るように制御を行うロボットの力制御装置であって、 力制御系(FC)における各種補償器の零点を消去するよう
な伝達関数を持ったディジタル・フィルタ(DF)を有し、
該ディジタル・フィルタの出力に基づき前記力指令値を
発生する制御手段(C) を具備し、 該制御手段は、前記検出した力の大きさが所定の力しき
い値(Fthd )を越えた時は該力しきい値から前記力目
標値までのステップ状の力増分量を前記ディジタル・フ
ィルタによって変化させると共に、該力増分量と該力し
きい値との和を前記力指令値とし、該検出した力の大き
さが該力しきい値を越えない時は該力指令値を0にする
と共に、該ディジタル・フィルタを出力0の定常状態に
することを特徴とするロボットの力制御装置。 - 【請求項2】 前記ディジタル・フィルタは、パラメー
タが一定の1次フィルタ(Gq1)と、パラメータがほぼ
一定の2次フィルタ(Gq2)と、パラメータが可変の2
次フィルタ(Gq3)との直列結合によって構成されてい
ることを特徴とする請求項1に記載のロボットの力制御
装置。 - 【請求項3】 前記制御手段の出力に基づき、前記検出
した力の大きさが前記力しきい値を越えた時は該力指令
値発生手段の出力に対する追従サーボ制御を行い、該検
出した力の大きさが該力しきい値を越えない時は前記ハ
ンドを押し付け方向へ指定速度で移動させることを特徴
とする請求項1に記載のロボットの力制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP40435690A JPH0569358A (ja) | 1990-12-20 | 1990-12-20 | ロボツトの力制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP40435690A JPH0569358A (ja) | 1990-12-20 | 1990-12-20 | ロボツトの力制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0569358A true JPH0569358A (ja) | 1993-03-23 |
Family
ID=18514034
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP40435690A Withdrawn JPH0569358A (ja) | 1990-12-20 | 1990-12-20 | ロボツトの力制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0569358A (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7953509B2 (en) | 2008-02-26 | 2011-05-31 | Toyota Jidosha Kabushiki Kaisha | Power assist apparatus and control method thereof |
US20150202775A1 (en) * | 2012-01-17 | 2015-07-23 | Seiko Epson Corporation | Robot controller, robot system, robot control method |
US9849592B2 (en) | 2014-09-16 | 2017-12-26 | Canon Kabushiki Kaisha | Robot apparatus, robot control method, program, and recording medium |
JP2018506439A (ja) * | 2015-02-24 | 2018-03-08 | カスタニエンバオム ゲーエムベーハーKastanienbaum Gmbh | ロボット・マニピュレ−タを制御する装置及び方法 |
-
1990
- 1990-12-20 JP JP40435690A patent/JPH0569358A/ja not_active Withdrawn
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7953509B2 (en) | 2008-02-26 | 2011-05-31 | Toyota Jidosha Kabushiki Kaisha | Power assist apparatus and control method thereof |
US20150202775A1 (en) * | 2012-01-17 | 2015-07-23 | 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 |
US9849592B2 (en) | 2014-09-16 | 2017-12-26 | Canon Kabushiki Kaisha | Robot apparatus, robot control method, program, and recording medium |
JP2018506439A (ja) * | 2015-02-24 | 2018-03-08 | カスタニエンバオム ゲーエムベーハーKastanienbaum Gmbh | ロボット・マニピュレ−タを制御する装置及び方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0948124B1 (en) | Motor controller | |
US7366576B2 (en) | Position control device and position control method for machine tools | |
WO1991005296A1 (en) | Sliding mode control method | |
CN113517832A (zh) | 一种低压伺服离散线性自抗扰控制方法 | |
JPH0569358A (ja) | ロボツトの力制御装置 | |
JP2950149B2 (ja) | オートチューニングコントローラ | |
JPH01186182A (ja) | サーボモータの制御装置 | |
Luna et al. | A Delay-based Nonlinear Controller for Nanopositioning of Linear Ultrasonic Motors | |
CN109067284B (zh) | 一种基于滤波误差的电机控制方法及装置 | |
CN115167111A (zh) | 基于改进型分数阶pid的伺服电机控制方法及系统 | |
CN114294461A (zh) | 一种智能阀门电动执行机构的控制系统构建方法 | |
CN113141138A (zh) | 一种用于异步电机驱动的自整定模糊控制方法 | |
JP2691591B2 (ja) | 力制御ロボットの制御方式 | |
JPS60256815A (ja) | サ−ボ制御方法 | |
JPH03122701A (ja) | セルフチューニング方法 | |
JP2000020104A (ja) | 速度制御ゲイン調整方法および装置 | |
JP4247699B2 (ja) | 非線形制御対象のフィードバック制御方法 | |
Fujisaki et al. | Motion-Copying System with In-Tool Sensing | |
JPS6267304A (ja) | デイジタル弁クロ−ズドル−プ制御装置 | |
JPH10177402A (ja) | 単純適応制御装置 | |
WO1994014234A1 (en) | Method and apparatus for determining constants of functions expressing characteristics of controlled system | |
JP3200956B2 (ja) | モータ制御装置 | |
Ersalı et al. | Real time PID controlled speed regulation of a DC motor using LabVIEW | |
Kraft et al. | Experimental microprocessor-based adaptive control system | |
JP2791011B2 (ja) | プラント制御系の制御定数設定装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 19980312 |