JP3560710B2 - ロボットの位置決め方法および位置決め装置 - Google Patents
ロボットの位置決め方法および位置決め装置 Download PDFInfo
- Publication number
- JP3560710B2 JP3560710B2 JP31233095A JP31233095A JP3560710B2 JP 3560710 B2 JP3560710 B2 JP 3560710B2 JP 31233095 A JP31233095 A JP 31233095A JP 31233095 A JP31233095 A JP 31233095A JP 3560710 B2 JP3560710 B2 JP 3560710B2
- Authority
- JP
- Japan
- Prior art keywords
- robot
- positioning
- spring
- spring constant
- grinding
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Manipulator (AREA)
- Finish Polishing, Edge Sharpening, And Grinding By Specific Grinding Devices (AREA)
- Numerical Control (AREA)
Description
【発明の属する技術分野】
本発明は、ロボットの位置決め方法および位置決め装置に関し、特に、位置と力の制御に基づいて研削加工、バリ取り、曲面研磨等の力を伴う作業を行う多自由度の力制御ロボットに適用されるロボットの位置決め方法および位置決め装置に関する。
【0002】
【従来の技術】
ロボットの位置決め方法とは、再生動作(プレイバック動作)で目標経路に従って、作業工具を移動させるときの各教示点での移動の仕方をいう。ロボットの位置決め方法に関し、従来の実用的な方法は、例えば溶接作業を行う位置制御ロボット(プロセスロボット)で提案されたものがある。
【0003】
この位置制御ロボットにおける位置決め方法では、各教示点ごとに、教示点を通過するための条件を教示点通過時の位置決め監視幅として設定する方法が採用される。教示点通過時の位置決め監視幅は、例えば、「ナシ」、「ラフ」、「ファイン」と3段階に分けてユーザが設定するように構成される。
上記位置制御ロボットに対して、力制御ロボットでは、従来、実用的な位置決め方法は特に提案されていなかった。
【0004】
図5を参照して「ナシ」、「ラフ」、「ファイン」の位置決め監視幅における再生動作の状態を説明する。図5において、Aは「ナシ」の場合、Bは「ラフ」の場合、Cは「ファイン」の場合を示し、71は通過しようとする教示点、72は通過経路を示している。
【0005】
図5のA〜Cのそれぞれでは、作業工具が、前の教示点から教示点71に向かって移動し、位置決め監視幅の条件が満たされた後に、次の教示点に向かう移動状態が示されている。監視幅が「ファイン」の場合には、教示点71を通過する時の監視幅が狭く設定されるので、通過経路72では教示点71で一旦停止してから次の教示点へ移動する。
【0006】
監視幅が、「ラフ」の場合には、教示点71を通過する時の監視幅が広く設定されるので、通過経路72では教示点71で停止せず、教示点71の近傍を減速して通過し、次の教示点へ向かって移動する。
【0007】
監視幅が、「ナシ」の場合には、位置決めのための監視幅を特別に設定せず、教示点71の近傍を減速することなく通過し、次の教示点に向かって移動する。
【0008】
【発明が解決しようとする課題】
ところが、位置(姿勢を含む)と力の制御に基づいて力を伴う作業を行う力制御ロボットにおける位置決め方法として、前述した位置制御ロボットで採用されていた従来の位置決め方法を適用すると、次のような問題が生じる。
【0009】
問題を説明する前に、まず、力制御ロボットの一例として研削ロボットの構成を説明する。図6に示すように、研削ロボットは、多自由度機構を含むロボット本体81と、このロボット本体81の動作を制御するコントローラ82とからなり、ロボット本体81は、アーム先部の手首部83に、6軸力センサ84を備え、この力センサ84の先に作業工具としてグラインダ85を設けている。
【0010】
グラインダ85でワークを研削するとき、グラインダ85に加わる力およびモーメントは、力センサ84によって検出される。また、ロボット本体81の各関節部には、ロボット本体81を動作させるモータと、各関節部の動作量を検出するエンコーダとが配設される。各関節部に設けられたエンコーダの検出信号によって、作業中のグラインダ85の位置と姿勢とを求めることができる。
【0011】
コントローラ82には位置(姿勢を含む)と力の制御を実行するアルコリズムで実現される制御機能部が含まれる。ロボット本体81は、この制御機能部による制御に基づいて動作し、グラインダ85の位置と力が制御される。グラインダ85の位置の制御で、グラインダ85は、複数の教示点のそれぞれを、予め与えられた位置データに基づいて教示順序に従って移動する。
【0012】
その際、位置フィードバック制御が行われる。移動の最中にグラインダ85はワークに押し付けられ、ワークの各部で所望の研削が行われるようにグラインダ85に対して力の制御が行われる。グラインダ85に関する力の制御では、予め教示された力制御パラメータに基づいて制御が行われると共に、力センサ84で得られる実際の力に基づく力フィードバック制御が行われる。
【0013】
上記の位置と力の制御では、仮想コンプライアンス制御が採用されるものとする。
仮想コンプライアンス制御は、図7に示すように、グラインダ85をワーク86に押し付けた状態において、少なくとも押付け方向に関し、手首部83とグラインダ85との間に、あたかも、ばね87とダンパ88とが設けられているようにソフトウェアによって実現する制御方式である。
【0014】
以下、ばね87を仮想ばねといい、ダンパ88を仮想ダンパという。
仮想コンプライアンス制御で、グラインダ85は、研削作業を行うための目標経路89が与えられた状態において、この目標経路89に接近すべく、仮想ばね87に設定された、ばね力に応じた押付け力90で、ワーク86に押し付けられる。
【0015】
このようなことから、研削ロボット等の力制御ロボットでは、目標経路89を定める複数の教示点の位置データや力制御を行うための仮想ばね87等は、研削作業を行うにあたって重要なパラメータであり、それらの教示・設定は、力作業の状況を配慮して適切に行われなければならない。
【0016】
上記特性を有する研削ロボットに前述した従来の位置決め方法を適用した場合の問題を、図8を参照して説明する。
図8は、凸状の溶接ビード91で接合された2つの母材92、93において、当該溶接ビード91を凹状に研削しようする状態を示す。94は研削の目標経路である。
【0017】
目標経路94は、幾つかの教示点の位置データを与え、その中間部を円弧補間することにより決められる。図示した例では、説明の便宜上、両端と中間部の3つの教示点である始端部P1、中間部P2、終端部P3が示される。グラインダ85は、教示点P1、P2、P3の順序で目標経路94に沿って研削を行いながら移動する。
【0018】
目標経路94に沿って研削を行う場合、溶接ビード91が凸形状であることから、端部に位置する教示点P1及びP3の研削では、溶接ビード91の研削量を少なくし、中央に位置する教示点P2の研削では、溶接ビード91の研削量を多くすることが必要である。図8では、各教示点P1、P2、P3で互いに等しい位置到達判定範囲95が設定されている。
【0019】
この位置到達判定範囲95は、前述の監視幅に相当するもので、研削を行う力制御ロボットでは、研削部材が研削時に発生する熱で熱硬化を起こす等の不都合を生じないように、再生動作で停止させることはないので、各教示点で「ラフ」に相当するレベルで、かつ比較的に小さい位置到達判定範囲が共通に設定される。設定後、作業中においては、位置到達判定範囲は一定に保持される。
【0020】
位置到達判定範囲95は、各教示点を中心とする球体の範囲として設定される。グラインダ85による一定時間当たりの最大研削量は一定であるので、以上のように各教示点で等しく設定された位置到達判定範囲95に到達するためには、研削しようとする量に応じてグラインダ85を移動させる速度を調整することが必要となる。極端な例として、教示点P2は溶接ビード91の盛り量が教示点P1、P3に比較して多いので、速度を遅くし、または停止して研削を継続しなければならない。
【0021】
しかし、研削しようとする溶接ビード91の量に応じてグラインダ85の移動速度を調整するためには、グラインダ85を移動させながら移動先の溶接ビード91の量を測定しなければならず、測定のための視覚センサ等の特別な装置が必要となる。従って、装置構成が複雑となり、かつコストが高くなるという問題を有する。
【0022】
また、研削しようとする溶接ビード量が大きいときには、グラインダ85の移動速度を遅くしなければならない。グラインダ85の移動速度を遅くすると、グラインダの研削で溶接ビードに焼きが入り、その後の研削作業において良好な研削を行うことができないという問題を有する。
【0023】
なお、図8では説明を簡単にするため、各教示点で等しい位置到達判定範囲95が設定された例を示したが、本質的な問題として、実際に、溶接ビードの盛り量を事前に知ることは困難であるので、溶接ビードの研削作業で位置到達判定範囲を適切に設定することは困難であるという問題も存在する。
【0024】
本発明の目的は、位置と力の制御に基づき力作業を行う力制御ロボットにおいて、位置到達判定範囲を利用して、特別な装置を付加する必要がなく、簡素な構造で安価でありながら、円滑に力作業を行うことが可能なロボットの位置決め方法及び位置決め装置を実現することである。
【0025】
【課題を解決するための手段】
本発明は、上記目的を達成するため、次のように構成される。
位置と力との制御で動作する多自由度ロボットに適用され、作業工具を複数の教示点で決まる作業対象物の目標経路に沿って移動させることにより再生動作を行うとき、教示点のそれぞれで作業工具の位置決めを判定するロボットの位置決め方法において、制御用座標系の複数の軸方向のそれぞれに設定され、作業工具を作業対象物に押し付ける力を制御するためのばね要素のばね定数の中から、選択したばね定数に応じて、作業工具が目標位置近辺に到達したことを判定する位置決め監視幅を設定する。
好ましくは、上記ロボットの位置決め方法において、制御用座標系は、直交座標系とし、座標軸の並進方向3軸と回転方向3軸とに対して、それぞれに設定されたばね定数の中から選択したばね定数に応じて位置決め監視幅を設定するするとともに、制御用座標系は、直交座標系とし、座標軸の並進方向3軸と回転方向3軸とに対して、それぞれに設定されたばね定数の中から選択したばね定数に応じて上記位置決め監視幅を設定する。
【0027】
好ましくは、上記ロボットの位置決め方法において、位置決め監視幅を設定するばね定数は、複数の軸方向のそれぞれに設定されたばね要素の中の、最も低いばね定数である。
【0028】
また、好ましくは、上記ロボットの位置決め方法において、位置決め監視幅は、ばね定数が低いときには広く、ばね定数が高いときには狭く設定する。
また、好ましくは、上記ロボットの位置決め方法において、位置と力の制御は仮想コンプライアンス制御であり、ばね要素は仮想ばねである。
【0029】
また、好ましくは、上記ロボットの位置決め方法において、作業工具は、作業対象物を研削する研削工具であり、位置決め監視幅は、目標位置に対する研削残量に応じて、変化させ、研削残量が小となるに従って位置決め監視幅を小とする。
【0030】
また、位置と力との制御で動作する多自由度ロボットに適用され、作業工具を複数の教示点で決まる作業対象物の目標経路に沿って移動させることにより再生動作を行うとき、教示点のそれぞれで作業工具の位置決めを判定するロボットの位置決め装置において、制御用座標系の複数の軸方向のそれぞれに設定され、作業工具を作業対象物に押し付ける力を制御するためのばね要素のばね定数を記憶する手段と、記憶手段に記憶されたばね定数の中から、ばね定数を選択し、選択したばね定数に応じて、作業工具が目標位置近辺に到達したことを判定する位置決め監視幅を設定する位置到達判定範囲演算部と、作業工具の現在位置を監視し、監視した現在位置が位置到達判定範囲演算部により演算された監視幅に到達したか否かを判定する位置監視判定部とを備え、制御用座標系は、直交座標系とし、位置到達判定範囲演算部は、座標軸の並進方向3軸と回転方向3軸とに対して、それぞれに設定されたばね定数の中から選択したばね定数に応じて上記位置決め監視幅を設定する。
【0032】
好ましくは、上記ロボットの位置決め装置において、位置到達判定範囲演算部は、ばね定数は、複数の軸方向のそれぞれに設定されたばね要素の中の、最も低いばね定数を選択し、位置決め監視幅を設定する。
【0033】
また、好ましくは、上記ロボットの位置決め装置において、位置到達範囲演算部は、位置決め監視幅を、ばね定数が低いときには広く、ばね定数が高いときには狭く設定する。
また、好ましくは、上記ロボットの位置決め装置において、位置と力の制御は仮想コンプライアンス制御であり、ばね要素は仮想ばねである。
【0034】
また、好ましくは、上記ロボットの位置決め装置において、作業工具は、作業対象物を研削する研削工具であり、位置到達判定範囲演算部は、位置決め監視幅を、目標位置に対する研削残量に応じて、変化させ、研削残量が小となるに従って位置決め監視幅を小とする。
【0035】
本発明によるロボットの位置決め方法および位置決め装置では、力制御ロボットの位置決めに関し、従来の位置制御ロボットの位置決めで使用されていた監視幅を応用した位置到達判定範囲を利用するものである。位置目標値である複数の教示点のそれぞれで設定される位置到達判定範囲は、教示者によって与えられるばね要素のばね定数に対応させて設定される。
【0036】
位置と力の制御に従って動作する力制御ロボットでは、制御上設定されるばね要素のばね定数は、作業方向(力によって押し付けられる方向)に、作業しようとする部分の作業状況に応じて教示者が設定するので、位置到達判定範囲をばね要素のばね定数に応じて設定すれば、その位置到達判定範囲は、教示点に対応するワーク部分の作業状況に対応させて設定されたことになる。
【0037】
こうして、位置決めの監視幅である位置到達判定範囲をワーク各部の作業状況に応じて設定することにより、位置到達判定範囲を利用して支障なく円滑に力作業を行うことが可能となる。
【0038】
【発明の実施の形態】
以下、本発明の実施の形態を添付図面に基づいて説明する。
本発明が適用されるロボットの構成の基本的な部分は、図6等で説明された従来のロボットの構成と同じである。本発明の実施の形態の説明において、「従来の技術」において説明した要素と実質的に同一の要素には同一の符号を付している。
【0039】
本発明が適用されるロボットは、仮想コンプライアンス制御に基づき位置(姿勢を含む)と力を制御して力作業を行う力制御ロボットであり、一例として、前述した通り多自由度を有するロボット本体81と仮想コンプライアンス制御を実行する制御機能部を内蔵するコントローラ11(図3に示す)からなる研削ロボットについて説明する。
【0040】
この実施形態においても力制御ロボットの一例として研削ロボットを取り上げて説明する。研削ロボット本体81の手首部83に力センサ84を備え、その先にグラインダ85を取り付けている。本発明によるコントローラ11は、さらに、後述する位置決め方法を実行する制御機能を備える。
【0041】
なお、本実施形態では、上記の仮想コンプライアンス制御の内容については詳述しない。なお、参考文献として、例えば、計測自動制御学会論文集、vol.22,No.3(昭和61年3月)p.343−350、特開平60−3010号公報、特開平61−7905号公報がある。
【0042】
図1は、研削ロボットが研削しようとするワーク(加工対象物)の一例の概略図である。
ワークは、2つの母材92及び93が凸状の溶接ビード91で接合されたものである。本実施形態の研削作業では、グラインダ85によって、凸状に盛られた溶接ビード91を凹状に研削しようとするものである。この実施形態におけるグラインダ85は円盤状の砥石を備える。
【0043】
溶接ビード91を凹状に研削するための研削作業において、グラインダ85を移動させるための目標経路94は、研削作業開始前の教示作業で位置目標値として与えられた複数の教示点によって決められる。複数の教示点の位置データは、例えば、ユーザにおける作業者の教示作業での入力行為によって与えられる。
【0044】
この実施形態では、説明を簡単にするために3つの教示点P1、P2、P3を示している。教示点P1及びP3は目標経路94の両端の教示点であり、教示点P2は中間部の教示点である。
【0045】
この実施形態では、研削作業におけるグラインダ85の位置制御により、グラインダ85が、目標経路94に沿って端(P1)から端(P3)まで減速し過ぎることなく適切な速度で移動し、これを研削行程の単位(P1→P2→P3)として、(P1→P2→P3)→(P1→P2→P3)→P1→・・・という移動を繰り返す。
【0046】
グラインダ85の位置制御における移動速度は、グラインダ85の研削能力に応じて適切に決定される。上記の移動において、各教示点を通過するとき、以下に説明する方法で設定された位置到達判定範囲内に入ることを条件に、位置決めの条件が満たされたものとして次の教示点への移動が行われる。位置到達判定範囲は、グラインダ85が位置目標値である各教示点に到達したか否かを判定するために設定された範囲である。
【0047】
「従来の技術」において説明したように、仮想コンプライアンス制御で動作するグラインダ85は、図1に示されるように、ロボット本体81の手首部83に仮想ばね12で支持された状態で取り付けられていると考えられる。仮想ばね12は、ソフトウェアで実現される制御上の要素としての仮想的なばね要素である。なお、図1では、力センサ84の図示は省略されている。
【0048】
グラインダ85は、仮想ばね12で決まるばね力(弾性力または剛性(スティフネス):例えば柔らかいばねまたは固いばね等で、ばね定数で決まる)で溶接ビード91に押し付けられ、この押付け状態で溶接ビード91を研削しながら、目標経路94に沿って適切な速度で移動する。
【0049】
図1では、便宜上、押付け方向(溶接ビード91を研削する方向)に設定された仮想ばね12だけを示す。しかし、仮想コンプライアンス制御の上では、仮想ばねは、ワークに設定された目標経路94の各点で設定された座標系の各軸方向に設定される。図1に示すように、研削しようとする溶接ビード91で設定された各教示点P1、P2、P3では制御に用いられる、図2に示すような直交座標系(x,y,z)が設定される。
【0050】
この直交座標系は、ワークの研削予定部に沿って設定された座標系(ワーク座標系)である。この実施形態の場合、目標経路94の接線方向がx軸、図1の紙面に含まれかつx軸に直交する方向がz軸、x軸およびz軸に直交する方向(奥行き方向)がy軸になるように決められている。
【0051】
図1で、上記の目標経路94は、xz平面内に含まれている。従って、目標経路94に沿って移動するグラインダ85は、y軸方向に関してはずれることなく、xz平面内に含まれる目標経路94に沿って移動する。z軸方向は、溶接ビード91が盛られている方向であり、これをグラインダ85で目標経路94に対応する凹形状に研削するのであるから、z軸方向は上記押付け方向と一致する。
【0052】
z軸方向に設定される仮想ばね12は、グラインダ85を溶接ビード91に押付け研削を行う方向であるので、他の軸方向の仮想ばねに対して比較的に柔らかいばねとして設定される。また、x軸方向およびy軸方向に設定される仮想ばねは、通常の位置制御の場合と同様な固いばねに設定される。
【0053】
図1のP1、P2、P3の各点に示された、z軸方向が長軸となった楕円体の形状は、上記のように設定された仮想ばね12により、P1、P2、P3の各教示点を中心にした剛性(スティッフネス)がどの様になるかを示している。12aは楕円体をyz平面で切った楕円体を示し、12bは楕円体をxy平面で切った円形を示す。
【0054】
このように、z軸方向の溶接ビード91が盛られている方向に、柔らかい仮想ばねを設定することにより、グラインダ85を溶接ビード91に適当な強さで押し当て、x軸、y軸、の各軸方向に固い仮想ばねを設定することにより、目標経路94に沿ったグラインダ85の移動に関してx軸方向とy軸方向には高い経路精度を確保することができる。
【0055】
上記の教示点P1、P2、P3のそれぞれでは、各教示点を中心とする位置到達判定範囲13が設定される。この位置到達判定範囲13は、前述の直交座標系の各軸方向に設定された仮想ばねのばね定数のうち、最も柔らかいz軸方向のばね定数を選択し、これに基づいて決定する。
【0056】
これにより、教示者が必要に応じて設定した仮想ばねに応じて、位置到達判定範囲を、仮想ばねのばね定数が低いときには広く、ばね定数が高い時には狭く、自動的に設定される。また、手先を高速で動かしたときのサーボの遅れから来る位置(姿勢)の偏差が存在しても、全軸方向に最も遅れの出やすい方向(仮想ばねのばね定数の低い方向)をもとに監視幅を設定しているので、高速動作時の姿勢偏差により、グラインダ85が一箇所に留まってしまうという事態を回避することが可能となる。
【0057】
上記位置決め方法を実施するコントローラ11の制御機能を、図3を参照して説明する。
このコントローラ11の制御機能は、各機能の機能ブロックに分割されている。コントローラ11には、上記制御機能の他に、仮想コンプライアンス制御を実行する力制御演算部14と、力制御演算前処理部15とが含まれる。
【0058】
位置目標値格納部16には教示点P1、P2、P3の位置データが格納される。そして、この位置目標値格納部16に格納された位置データは、力制御演算部14で位置目標値として使用される。また、力制御パラメータ格納部17には各教示点での研削における力目標値、仮想ダンパ、仮想ばね等の力制御パラメータが格納される。なお、位置データや力制御パラメータの、位置目標値格納部16及び力制御パラメータ格納部17への格納は、作業者(ユーザ)の教示作業によって行われる。
【0059】
位置目標値として使用される各教示点P1、P2、P3の位置データは、位置目標値転送部18によって、下記の特定条件の下で順次に読み込まれ、力制御演算前処理部15を経由して力制御演算部14に設定される。力制御演算部14では、設定された教示点の位置データを位置目標値として、グラインダ85を移動させるための位置制御信号が生成される。
【0060】
位置目標として設定された教示点に到達したことを条件に、次の教示点に移動すべく、位置目標値転送部18は、次の教示点の位置データを位置目標値として位置目標値格納部16から読み込む。各教示点の間の移動すべき経路は、直線補間や円弧補間によって演算される。力制御パラメータ格納部17に格納される各種のパラメータは、力制御演算前処理部15を経由して力制御演算部14に設定される。
【0061】
力制御演算前処理部15は、位置制御に必要な位置データや力制御のための各種の力制御パラメータを、力制御演算部14と同期をとりながら力制御演算部14に対して供給する機能を有する。力制御演算部14は、仮想コンプライアンス制御方式に従って必要な位置と力の制御の演算を行い、生成された制御信号(速度信号やトルク信号)をサーボ回路19を介してロボット本体81のモータに与える。
【0062】
制御信号を与えられたロボット本体81は、所定の研削作業のための動作を行う。ロボット本体81が動作するとき、各関節部に設けられたエンコーダによって実際の位置の情報が得られ、また力センサ84によってグラインダ85に加わる力(モーメントを含む)の情報が得られる。位置の情報と力の情報は、力センサ84から力制御演算部14に取り込まれる。力制御演算部14および力制御演算前処理部15は、従来と同様な動作を実行するため、この実施形態では詳細な説明を省略する。
【0063】
次に、位置決め方法を実施するための特徴的構成部分を説明する。
監視レベル設定部20には、位置到達判定範囲を演算により設定するときの監視レベル係数が設定される。この監視レベル係数は、後述する式(1)で示す係数であり、設定は作業者の教示作業によって行われる。
【0064】
監視レベル設定部20での設定については、通常の位置制御ロボットの場合と同様に、一般的に「ファイン」や「ラフ」等を設定することができる。監視レベル設定部20に設定された監視レベル係数は、位置到達判定範囲演算部21に取り込まれる。
【0065】
位置監視判定部22は、位置目標値格納部16から位置目標値を取り込むと共に、実際に動作するロボット本体81のエンコーダから力制御演算部14および力制御演算前処理部15を通して取り出された位置の現在値(ロボット本体に関する実際の位置データ)を取り込む。
また、位置監視判定部22は、位置到達判定範囲演算部21に用意された位置到達判定範囲を参照する。
【0066】
以上の構成によって、位置監視判定部22では、位置目標値と位置の現在値とを比較して差を求め、その差が、位置到達判定範囲演算部21から得られる位置到達判定範囲に含まれるか否かを判定する。
【0067】
位置監視判定部22は、上記差が位置到達判定範囲内に含まれる場合には、教示点に到達したと判定し、次の位置目標値に基づいて移動処理を行うべく位置目標値転送部18に対して次の位置目標値(次の教示点の位置データ)を転送するように指示する。位置目標値転送部18は、位置監視判定部22からの指示を受けて次の教示点の位置データを力制御演算前処理部15を介して力制御演算部14に転送する。
【0068】
ばね定数選択部24は、力制御パラメータ格納部17から教示者が設定した仮想ばねのばね定数の全軸方向の情報を得ると共に、直交三軸の並進方向と、回転方向のそれぞれについて最小値を得る。
【0069】
並進方向の最小値をKzとし、以後これについて述べる。
位置到達判定範囲演算部21では、与えられたばね定数Kzを用いてこのばね定数に対応する位置到達判定範囲を演算する。バネ定数Kzを用いて、位置到達判定範囲演算部21は、次式(1)により位置到達判定範囲PAを演算する。
PA=α×PAn/Kz −−−(1)
上記において、αは係数であり、例えばロボットの機構系がもつ剛性を与える。PAnは前述の監視レベル係数で、例えば「ファイン」では0.5mm、「ラフ」では1mm程度である。
【0070】
図4は、図3の機能ブロックの動作フローチャートである。
図4のステップ100において、ばね定数選択部24は、力制御パラメータ格納部17に格納されたばね定数のうち、押し付け方向のばね定数を、最も柔らかい定数(通常は押し付け方向のばね定数となる)を選択する。
【0071】
次に、ステップ101において、位置到達判定範囲演算部21は、ばね定数選択部24から供給された供給されたばね定数から位置到達判定範囲を演算する。そして、ステップ102に進み、研削動作の実行が行われる。つまり、位置監視判定部22のの指令により位置目標値転送部18は、位置目標値格納部16から位置目標値を取り出し、力制御演算前処理部15を介して力制御演算部14に供給する。
【0072】
続いて、ステップ103において、位置監視判定部22は、位置現在値が、位置到達判定範囲に到達したか否かを判断し、到達していなければ、ステップ102に戻る。また、ステップ103において、位置現在値が位置到達判定範囲に到達したのであれば、ステップ104に進む。
【0073】
ステップ104において、位置監視判定部22は、位置現在値と位置目標値との差を算出し、この差が所定値以内か否か、つまり、その位置においては、研削が完了したかを判断する。上記差が所定値以内であれば、ステップ106に進む。
【0074】
ステップ104において、上記差が所定値以内でなければ、ステップ105において、位置監視判定部22は、その位置の目標値におけるばね定数を所定量だけ増加、つまり、硬くし、硬くしたばね定数でその位置における位置到達判定範囲を演算部21に演算させる。そして、ステップ106に進む。
【0075】
ステップ106において、位置監視判定部22は、目標経路における全ての位置で研削残量が所定値となったか否かを判断し、所定値となれば、研削動作は終了となる。また、ステップ106において、目標経路における全ての位置で研削残量が所定値となっていなければ、ステップ107に進む。
【0076】
ステップ107において、位置監視判定部22は、現在位置が目標経路の終端部(P3)か否かを判断する。そして、終端部であれば、位置監視判定部22は、位置目標転送部18に指令信号を供給し、目標位置を目標経路の始端部(P1)に再設定し、ステップ101に戻る。
【0077】
また、ステップ107において、現在位置が目標経路の終端部でなければ、ステップ108に進み、位置監視判定部22は、位置目標転送部18に指令信号を供給し、経路中、研削残りのある次の位置目標値に目標位置を更新させる。そして、ステップ101に戻る。
【0078】
ステップ101において、位置監視判定部22は、増加されたばね定数を使用して、再設定又は更新された目標位置の到達判定範囲を、位置到達判定範囲演算部21に演算させる。
そして、以降、上述したと同様にして、ステップ102〜108が実行される。 このようにして、目標経路94に対応した経路を、繰り返し移動して、円滑な研削動作が実行される。また、ステップ103において、NOの場合、位置現在値の微分値から、動作速度を算出し、ステップ102及び103の繰り返しにより、位置目標値近傍で動作速度が遅くなったときには、研削により研削対象物に焼きがはいらないように、エラー表示して動作を停止することも考えられる。この結果、研削された後の面は、段差等の無い滑らかな面に仕上げることができる。
【0079】
なお、上記実施形態においては、仮想コンプライアンス制御に基づいて説明したが、位置と力の制御はこれに限定されず、本発明によるロボットの位置決め方法は他の方式の位置と力の制御に適用することができる。上記実施形態においては、研削作業に限定して説明したが、バリ取り、曲面研磨等のその他の力作業においても同様に適用できる。
【0080】
【発明の効果】
以上の説明で明らかなように本発明によれば、力制御ロボットの教示された目標経路に沿った再生動作に基づく作業で、各位置目標値における位置決めを、各位置目標値で位置到達判定範囲を設定し、かつ、この位置到達判定範囲を各位置目標値に対応して教示者が設定した仮想ばねのばね定数に応じて最適な値に設定することにより行うようにしたため、位置決め監視の設定に関する教示作業を自動化できる。
【0081】
したがって、特別な装置を付加する必要がなく、簡素な構造で安価でありながら、円滑に力作業を行うことが可能なロボットの位置決め方法及び位置決め装置を実現することができる。
【0082】
また、位置決め監視幅の設定において、最も柔らかいばねを基準に設定しているためサーボ遅れがあっても支障なく位置決め監視を行うことができる。
さらに、本発明を研削工具により対象物を研削するロボットに適用した場合には、作業工具の押し付け方向におけるばね定数を最も柔らかい定数とし、位置決め監視幅を、目標位置に対する研削残量に応じて、変化させ、研削残量が小となるに従って位置決め監視幅を小とするので、目標経路に沿って繰り返し、自動的に研削作業が行われ、研削された後の面は、段差等の無い滑らかな面に仕上げることができる。
【図面の簡単な説明】
【図1】本発明に係わるロボットの位置決め方法を概念的に説明するための説明図である。
【図2】制御のために設定される座標系を示す図である。
【図3】本発明に係わるロボットの位置決め方法を実施する装置の一実施形態における機能ブロック図である。
【図4】本発明に係わるロボットの位置決め方法を実施する装置の動作フローチャートである
【図5】一般的な位置制御ロボットにおける位置決め方法を説明するための図である。
【図6】力制御ロボットの一例である研削ロボットの構成を示す外観図である。
【図7】仮想コンプライアンス制御の作動状態を説明するための図である。
【図8】従来の位置決め方法を力制御ロボットに適用した場合の問題点を説明するための図である。
【符号の説明】
11 コントローラ
12 仮想ばね
13 位置到達判定範囲
14 力制御演算部
15 力制御演算前処理部
16 位置目標値格納部
17 力制御パラメータ格納部
18 位置目標値転送部
19 サーボ回路
20 監視レベル設定部
21 位置到達判定範囲演算部
22 位置監視判定部
24 ばね定数選択部
81 ロボット本体
84 力センサ
85 グラインダ
91 溶接ビード
92、93 母材
94 目標経路
P1、P2、P3 教示点
Claims (10)
- 位置と力との制御で動作する多自由度ロボットに適用され、作業工具を複数の教示点で決まる作業対象物の目標経路に沿って移動させることにより再生動作を行うとき、上記教示点のそれぞれで上記作業工具の位置決めを判定するロボットの位置決め方法において、
制御用座標系の複数の軸方向のそれぞれに、作業工具を作業対象物に押し付ける力を制御するためのばね要素のばね定数を設定し、これらのばね定数の中から選択したばね定数に応じて、作業工具が目標位置近辺に到達したことを判定する位置決め監視幅を設定するとともに、制御用座標系は、直交座標系とし、座標軸の並進方向3軸と回転方向3軸とに対して、それぞれに設定されたばね定数の中から選択したばね定数に応じて上記位置決め監視幅を設定することを特徴とするロボットの位置決め方法。 - 請求項1記載のロボットの位置決め方法において、上記位置決め監視幅を設定するばね定数は、複数の軸方向のそれぞれに設定されたばね要素の中の最も低いばね定数であることを特徴とするロボットの位置決め方法。
- 請求項1記載のロボットの位置決め方法において、上記位置決め監視幅は、ばね定数が低いときには広く、ばね定数が高いときには狭く設定することを特徴とするロボットの位置決め方法。
- 請求項1〜3のうちのいずれか1項記載のロボットの位置決め方法において、上記位置と力の制御は仮想コンプライアンス制御であり、上記ばね要素は仮想ばねであることを特徴とするロボットの位置決め方法。
- 請求項1記載のロボットの位置決め方法において、上記作業工具は、作業対象物を研削する研削工具であり、上記位置決め監視幅は、目標位置に対する研削残量に応じて、変化させ、研削残量が小となるに従って上記位置決め監視幅を狭くすることを特徴とするロボットの位置決め方法。
- 位置と力との制御で動作する多自由度ロボットに適用され、作業工具を複数の教示点で決まる作業対象物の目標経路に沿って移動させることにより再生動作を行うとき、上記教示点のそれぞれで上記作業工具の位置決めを判定するロボットの位置決め装置において、
制御用座標系の複数の軸方向のそれぞれに設定され、作業工具を作業対象物に押し付ける力を制御するためのばね要素のばね定数を記憶する手段と、
記憶手段に記憶されたばね定数の中からばね定数を選択し、選択したばね定数に応じて、作業工具が目標位置近辺に到達したことを判定する位置決め監視幅を設定する位置到達判定範囲演算部と、
作業工具の現在位置を監視し、監視した現在位置が上記位置到達判定範囲演算部により演算された監視幅に到達したか否かを判定する位置監視判定部とを備え、
制御用座標系は、直交座標系とし、位置到達判定範囲演算部は、座標軸の並進方向3軸と回転方向3軸とに対して、それぞれに設定されたばね定数の中から選択したばね定数に応じて上記位置決め監視幅を設定することを特徴とするロボットの位置決め装置。 - 請求項6記載のロボットの位置決め装置において、上記位置到達判定範囲演算部は、ばね定数は、複数の軸方向のそれぞれに設定されたばね要素の中の、最も低いばね定数を選択し、位置決め監視幅を設定することを特徴とするロボットの位置決め装置。
- 請求項6記載のロボットの位置決め装置において、上記位置到達範囲演算部は、位置決め監視幅を、ばね定数が低いときには広く、ばね定数が高いときには狭く設定することを特徴とするロボットの位置決め装置。
- 請求項6〜8のうちのいずれか1項記載のロボットの位置決め装置において、上記位置と力の制御は仮想コンプライアンス制御であり、上記ばね要素は仮想ばねであることを特徴とするロボットの位置決め装置。
- 請求項6記載のロボットの位置決め装置において、上記作業工具は、作業対象物を研削する研削工具であり、上記位置到達判定範囲演算部は、位置決め監視幅を、目標位置に対する研削残量に応じて、変化させ、研削残量が小となるに従って上記位置決め監視幅を狭くすることを特徴とするロボットの位置決め装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31233095A JP3560710B2 (ja) | 1995-11-30 | 1995-11-30 | ロボットの位置決め方法および位置決め装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31233095A JP3560710B2 (ja) | 1995-11-30 | 1995-11-30 | ロボットの位置決め方法および位置決め装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09152906A JPH09152906A (ja) | 1997-06-10 |
JP3560710B2 true JP3560710B2 (ja) | 2004-09-02 |
Family
ID=18027946
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31233095A Expired - Fee Related JP3560710B2 (ja) | 1995-11-30 | 1995-11-30 | ロボットの位置決め方法および位置決め装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3560710B2 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2024122358A (ja) * | 2023-02-28 | 2024-09-09 | 株式会社ニコン | 負荷トルク算出装置、エンコーダシステム、アクチュエータ、ロボット装置、負荷トルク算出方法及びプログラム |
-
1995
- 1995-11-30 JP JP31233095A patent/JP3560710B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09152906A (ja) | 1997-06-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5350766B2 (ja) | 5軸加工機用数値制御装置 | |
JP3207409B2 (ja) | ロボットのツール姿勢制御方法 | |
JP4902815B1 (ja) | 数値制御装置 | |
JP6693939B2 (ja) | ロボットシステム | |
WO2014196066A1 (ja) | 数値制御装置 | |
JPH05108123A (ja) | ツール先端位置補正方法 | |
JP3560710B2 (ja) | ロボットの位置決め方法および位置決め装置 | |
JP6323744B2 (ja) | 研磨ロボットとその制御方法 | |
JP3154268B2 (ja) | ロボットの位置決め方法および位置決め装置 | |
JP3450459B2 (ja) | ロボットの位置決め方法および位置決め装置 | |
JP3213989B2 (ja) | 産業用ロボットにおける手先部の姿勢制御方法およびその装置 | |
JP2771458B2 (ja) | 産業用ロボットの撓み補正方法 | |
JPH09174467A (ja) | ロボットの位置決め方法および位置決め装置 | |
JPH1158285A (ja) | ハンド機構の力制御システム | |
JPH08267350A (ja) | バリ取り方法 | |
JP3350687B2 (ja) | ロボット制御方法およびロボット制御装置 | |
GB2364575A (en) | Generating positioning instructions for apparatus to process an object | |
JP3576421B2 (ja) | 工作機のワーク姿勢制御方法 | |
JP3162638B2 (ja) | 溶接チップ摩耗量検出方法 | |
JP3023432B2 (ja) | ロボット制御装置 | |
JPH03111151A (ja) | ワークコーナー部の倣い制御装置 | |
JPH11194813A (ja) | 産業用機械の動作指令作成方法 | |
JPH03149171A (ja) | 産業用ロボットの工具軌跡制御装置 | |
JPH07205068A (ja) | ロボットの座標系設定方法 | |
JP2020023013A (ja) | ロボット制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040223 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A132 Effective date: 20040302 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040419 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040525 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040526 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |