JPH03213285A - ロボットの制御方法 - Google Patents
ロボットの制御方法Info
- Publication number
- JPH03213285A JPH03213285A JP1100990A JP1100990A JPH03213285A JP H03213285 A JPH03213285 A JP H03213285A JP 1100990 A JP1100990 A JP 1100990A JP 1100990 A JP1100990 A JP 1100990A JP H03213285 A JPH03213285 A JP H03213285A
- Authority
- JP
- Japan
- Prior art keywords
- acceleration
- time
- movement
- deceleration
- motion
- 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
Links
Landscapes
- Manipulator (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の目的〕
(産業上の利用分野)
本発明は、アーム先端を始動位置から目標位置まで移動
させるにあたって一方向への移動動作か完了する以前に
他の方向への移動動作を開始させるパス動作の実行が可
能なロボットの制御方法に関する。
させるにあたって一方向への移動動作か完了する以前に
他の方向への移動動作を開始させるパス動作の実行が可
能なロボットの制御方法に関する。
(従来の技術)
産業用ロボット例えばアーム先端のハンドによりワーク
を把F、’j L、これを搬送するといった動作を行う
ロボットにあっては、例えばアームの上下方向移動及び
水平方向の旋回移動などの複数方向への動作を夫々別個
のモータにより独立して制御できるようにしている。
を把F、’j L、これを搬送するといった動作を行う
ロボットにあっては、例えばアームの上下方向移動及び
水平方向の旋回移動などの複数方向への動作を夫々別個
のモータにより独立して制御できるようにしている。
このようなロボットにおいて、今、第6図に示すように
、例えば点POにてワークを把持し、点P2まで搬送し
てワークを離すような動作を実行させる場合、通常は、
アーム先端を、上下移動を司るモータにより点POから
途中目標点P1まで上昇移動させ、この点P1で′−旦
停止させた後、旋回移動を司るモータにて点P1から目
標点P2まで水平移動させるようにしている。ところが
、アーム先端が周辺の装置や他のワークなどと干渉する
ことがなければ、上昇移動動作が完了する以前に旋回移
動動作を開始させ、同図に実線で示すような点P1を通
らないなめらかな経路でアーム先端を移動させるパス動
作を実行させれば良い。
、例えば点POにてワークを把持し、点P2まで搬送し
てワークを離すような動作を実行させる場合、通常は、
アーム先端を、上下移動を司るモータにより点POから
途中目標点P1まで上昇移動させ、この点P1で′−旦
停止させた後、旋回移動を司るモータにて点P1から目
標点P2まで水平移動させるようにしている。ところが
、アーム先端が周辺の装置や他のワークなどと干渉する
ことがなければ、上昇移動動作が完了する以前に旋回移
動動作を開始させ、同図に実線で示すような点P1を通
らないなめらかな経路でアーム先端を移動させるパス動
作を実行させれば良い。
このパス動作により、停止させる場合に比べて移動に要
する時間ひいては作業時間の短縮を図ることができる。
する時間ひいては作業時間の短縮を図ることができる。
ところで、上述のようなパス動作を行わせる場合、マイ
クロコンピュータなどからなる制御装置により、アーム
先端の位置、速度、加速度が連続となるように軌道計、
算を行いこれに基づいて各モータを制御することが行な
われる。また、この軌道計算はプログラムの解析と平行
して行なわれ、例えば現在アームが移動中の区間(教示
点から次の教示点までの間)にて次の区間の軌道=]算
を行い、所定時刻になった時点でその31算に基づ<
ii1ノ御に切り換えるといった方式により一連の動作
が実行されるようになっている。このようなパス動作中
の軌道計算方式としては、RichardP、Paul
の式が知られている(コロナ社刊「ロボット・マニピュ
レータ」 (吉川恒夫訳))。
クロコンピュータなどからなる制御装置により、アーム
先端の位置、速度、加速度が連続となるように軌道計、
算を行いこれに基づいて各モータを制御することが行な
われる。また、この軌道計算はプログラムの解析と平行
して行なわれ、例えば現在アームが移動中の区間(教示
点から次の教示点までの間)にて次の区間の軌道=]算
を行い、所定時刻になった時点でその31算に基づ<
ii1ノ御に切り換えるといった方式により一連の動作
が実行されるようになっている。このようなパス動作中
の軌道計算方式としては、RichardP、Paul
の式が知られている(コロナ社刊「ロボット・マニピュ
レータ」 (吉川恒夫訳))。
このPaulの式では、−膜化位置qが時間tの関数と
して、 qs=a、t’ +a2t’ 十a、t2+a4tとい
う4次多項式で表される。
して、 qs=a、t’ +a2t’ 十a、t2+a4tとい
う4次多項式で表される。
ところが、マイクロコンピュータは実際には20 rn
s程度の短時間で軌道計算を行わなければならないの
に対して、上述の軌道方程式は4次多項式であるため、
これを短時間で解くことは無理があるなどの問題点があ
った。
s程度の短時間で軌道計算を行わなければならないの
に対して、上述の軌道方程式は4次多項式であるため、
これを短時間で解くことは無理があるなどの問題点があ
った。
このため、従来では一般に、上昇動作の時間と速度の関
係を示した第7図(b)及び、旋回動作の時間と速度の
関係を示した第7図(c)のように、各方向への移動を
最高速度まで一定の加速度で加速し最高速度から一定の
加速度で減速するいわゆる直線加減速を採用するように
していた。このように直線加減速を採用じた場合には、
パス動作時の軌道は、同図(a)に示すように各方向へ
の動作の移動速度の重ね合わせて計算できるから、短時
間での軌道シ[算が可能となるのである。
係を示した第7図(b)及び、旋回動作の時間と速度の
関係を示した第7図(c)のように、各方向への移動を
最高速度まで一定の加速度で加速し最高速度から一定の
加速度で減速するいわゆる直線加減速を採用するように
していた。このように直線加減速を採用じた場合には、
パス動作時の軌道は、同図(a)に示すように各方向へ
の動作の移動速度の重ね合わせて計算できるから、短時
間での軌道シ[算が可能となるのである。
(発明が解決しようとする課題)
しかしながら、第7図(a)に示したような時間に対す
る速度変化をとる場合、始動位置(点PO)からの始動
時、及び目標位置(点P2)での停止時において、速度
変化が急激であるため、滑らかなスタート・ストップが
できずに、ワークなどに振動が力1目)る不具合があっ
た。この振動をできるだけ防止するには、加速度を小さ
くすれば良いが、これでは加速時間及び減速時間が長く
なって移動に要する時間が長くなるという問題点が生じ
てしまう。
る速度変化をとる場合、始動位置(点PO)からの始動
時、及び目標位置(点P2)での停止時において、速度
変化が急激であるため、滑らかなスタート・ストップが
できずに、ワークなどに振動が力1目)る不具合があっ
た。この振動をできるだけ防止するには、加速度を小さ
くすれば良いが、これでは加速時間及び減速時間が長く
なって移動に要する時間が長くなるという問題点が生じ
てしまう。
本発明は上記事情に鑑みてなされたもので、その目的は
、アーム先端の始動位置からの始動時及び目標位置での
停止時に、滑らかな動作を行い得てアーム先端の振動を
防止し得、しかも、作業時間の短縮を図ることができる
ロボットの制御方法を提供するにある。
、アーム先端の始動位置からの始動時及び目標位置での
停止時に、滑らかな動作を行い得てアーム先端の振動を
防止し得、しかも、作業時間の短縮を図ることができる
ロボットの制御方法を提供するにある。
[発明の構成]
(課題を解決するための手段)
本発明のロボットの制御方法は、始動位置からの移動動
作開始直後の加速時及び目標位置での移動動作停止直前
の減速時にはアーム先端の移動の加速度が夫々所定の率
で増加及び減少するように制御し、パス動作時にはアー
ム先端のそのパス動作に係る一方向への移動の最高速度
からの減速時及び他の方向への移動の最高速度までの加
速時の加速度が夫々一定となるように制御するところに
特徴を有する。
作開始直後の加速時及び目標位置での移動動作停止直前
の減速時にはアーム先端の移動の加速度が夫々所定の率
で増加及び減少するように制御し、パス動作時にはアー
ム先端のそのパス動作に係る一方向への移動の最高速度
からの減速時及び他の方向への移動の最高速度までの加
速時の加速度が夫々一定となるように制御するところに
特徴を有する。
(作用)
上記した制御方法によれば、始動位置からの移動動作開
始直後の加速時及び目標位置での移動動作停止直前の減
速時には、アーム先端の移動速度は夫々ゆるやかに増加
及び減少するから、滑らかな動作ができて振動を防止す
ることができる。
始直後の加速時及び目標位置での移動動作停止直前の減
速時には、アーム先端の移動速度は夫々ゆるやかに増加
及び減少するから、滑らかな動作ができて振動を防止す
ることができる。
そして、パス動作時には、いわゆる直線加減速を採用し
ているから、パス動作時の軌道は各方向への動作の移動
速度の重ね合わ−せとなって短時間での軌道=1算が可
能となる。
ているから、パス動作時の軌道は各方向への動作の移動
速度の重ね合わ−せとなって短時間での軌道=1算が可
能となる。
(実施例)
以下本発明の一実施例について、第1図乃至第5図を参
照して説明する。
照して説明する。
まず、図示はしないが、ロボットの構成について簡!1
1に述べるに、ロボットのアームの先端にはワークを把
持するためのハンドなどが設けられ、このアーム先端は
二以上の異なる方向への独立した動作が可能となってい
る。このアームの各方向への動作は、夫々別個のモータ
によりなされ、これら複数のモータは、マイクロコンピ
ュータなどからなる制御装置により制御されるようにな
っている。
1に述べるに、ロボットのアームの先端にはワークを把
持するためのハンドなどが設けられ、このアーム先端は
二以上の異なる方向への独立した動作が可能となってい
る。このアームの各方向への動作は、夫々別個のモータ
によりなされ、これら複数のモータは、マイクロコンピ
ュータなどからなる制御装置により制御されるようにな
っている。
この制御装置には、後述するようなプログラムが設定さ
れるようになっており、このプログラムに従ってアーム
先端はある位置(教示点)から次の教示点に向けて移動
されるものであるが、アーム先端を始動位置から11標
位置まで移動させるにあたって、それらの途中位置にお
いて、経路を例えば移動方向毎の複数の区間にて区切る
ようないくつかの途中目標点が教示される。ここで移動
方向とは、上昇や旋回といった単独のモータ(1輔)の
作動により実現できるものの他、例えば2つのモータ(
2軸)の作動により水平面上のX軸方向への移動とY軸
方向への移動とを同時に行って水毛面上斜め方向へ移動
させるといったことをも含んでいる。
れるようになっており、このプログラムに従ってアーム
先端はある位置(教示点)から次の教示点に向けて移動
されるものであるが、アーム先端を始動位置から11標
位置まで移動させるにあたって、それらの途中位置にお
いて、経路を例えば移動方向毎の複数の区間にて区切る
ようないくつかの途中目標点が教示される。ここで移動
方向とは、上昇や旋回といった単独のモータ(1輔)の
作動により実現できるものの他、例えば2つのモータ(
2軸)の作動により水平面上のX軸方向への移動とY軸
方向への移動とを同時に行って水毛面上斜め方向へ移動
させるといったことをも含んでいる。
そして、各モータの制御は、後述するような軌道計算に
基づいて行なわれる。このとき、一方向への移動動作が
完了する以前に他の方向への移動動作を開始させる、言
換えるならばアーム先端をある途中目標点にて停止せず
にその点あるいはその点の近傍を通過させるパス動作の
実行が可能となっている。一方、ある教示点から次の教
示点まで移動しここで一旦停止する動作を、単セグメン
ト動作と称する。
基づいて行なわれる。このとき、一方向への移動動作が
完了する以前に他の方向への移動動作を開始させる、言
換えるならばアーム先端をある途中目標点にて停止せず
にその点あるいはその点の近傍を通過させるパス動作の
実行が可能となっている。一方、ある教示点から次の教
示点まで移動しここで一旦停止する動作を、単セグメン
ト動作と称する。
ここで、ロボット言語によるプログラムについて簡単に
説明しておく。
説明しておく。
プログラムの一例を以下に示す。また、このプログラム
に対応したアーム先′端の時間に関する速度変化を第5
図に示す。
に対応したアーム先′端の時間に関する速度変化を第5
図に示す。
PROGRAM MAIN
MOVE PO
PASS−75
ENABLE PASS
MOVE PI
MOVE P2
DISABLE PASS
MOVE P3
MOVE P4
ND
このプログラムにおいて、1行月はこのプログラム名が
rMA I NJという名前であることを示している。
rMA I NJという名前であることを示している。
2行L1はF T P (POINT To POIN
T)動作で教示点POに移動せよという命令である。こ
こで、PTP動作とは、一方向への動作によりアーム先
端をある点からある点まで移動させる動作のことである
。3行月はパス動作を行うタイミングを示すもので、こ
の場合、点P1に向かう距離の75%まで移動したら(
パス率75%)点P2に向かえという命令を表わす。こ
のパス率は一般に50〜100%の範囲で設定される。
T)動作で教示点POに移動せよという命令である。こ
こで、PTP動作とは、一方向への動作によりアーム先
端をある点からある点まで移動させる動作のことである
。3行月はパス動作を行うタイミングを示すもので、こ
の場合、点P1に向かう距離の75%まで移動したら(
パス率75%)点P2に向かえという命令を表わす。こ
のパス率は一般に50〜100%の範囲で設定される。
4行目はパス動作を開始せよという命令である。5,6
行目は夫々PTP動作で教示点PI、P2に移動せよと
いう命令である。7行目はパス動作を解除する命令であ
る。8.9行目は夫々FTP動作で教示点P3.P4に
移動せよという命令である。10行目はプログラムの終
りを示している。
行目は夫々PTP動作で教示点PI、P2に移動せよと
いう命令である。7行目はパス動作を解除する命令であ
る。8.9行目は夫々FTP動作で教示点P3.P4に
移動せよという命令である。10行目はプログラムの終
りを示している。
このようなプログラムにより、パス動作を行なうかどう
か及びパス動作のタイミングが指定されるようになって
いる。その他、制御装置には、指定速度、最大加速度、
加加速時間(後述)等のシステムパラメータが予め設定
されている。制御装置は、上述のようなプログラムの解
析と弔行し、どのようにアーム先端を移動させるか即ち
あるサンプリング時刻における位置、速度、加速度をど
れだけにすべきであるかの軌道計算を行ない、これに基
づいて各モータを制御するようになっている。この軌道
計算は、例えば現在アームが移動中の区間(教示点から
次の教示点までの間)にて次の区間における=1算を行
い、所定時刻になった時点てその軌道計算に基づく制御
に切り換えるといった方式により一連の動作を実行する
。
か及びパス動作のタイミングが指定されるようになって
いる。その他、制御装置には、指定速度、最大加速度、
加加速時間(後述)等のシステムパラメータが予め設定
されている。制御装置は、上述のようなプログラムの解
析と弔行し、どのようにアーム先端を移動させるか即ち
あるサンプリング時刻における位置、速度、加速度をど
れだけにすべきであるかの軌道計算を行ない、これに基
づいて各モータを制御するようになっている。この軌道
計算は、例えば現在アームが移動中の区間(教示点から
次の教示点までの間)にて次の区間における=1算を行
い、所定時刻になった時点てその軌道計算に基づく制御
に切り換えるといった方式により一連の動作を実行する
。
さて、本実施例では、第1図に示すフローチャートに従
って、軌道方程式が設定され、軌道計算がなされる。こ
こでは、説明の簡略化のため、点PO,点PI、点P2
の順にアーム先端が移動される場合を例として述べる。
って、軌道方程式が設定され、軌道計算がなされる。こ
こでは、説明の簡略化のため、点PO,点PI、点P2
の順にアーム先端が移動される場合を例として述べる。
このフローチャートに示されたルーチンは、アーム先端
が点POで移動が始まったときに点P1−点P2の区間
の軌道旧算を開始するというように、順に次の区間に関
して実行されるようになっている。従って、点P〇−点
P1の区間の軌道計算は、以下に述べる点P1−点P2
の区間と同様にして既に計算が完了しており、この軌道
計算に基づいて点POからの動作が開始されているので
ある。
が点POで移動が始まったときに点P1−点P2の区間
の軌道旧算を開始するというように、順に次の区間に関
して実行されるようになっている。従って、点P〇−点
P1の区間の軌道計算は、以下に述べる点P1−点P2
の区間と同様にして既に計算が完了しており、この軌道
計算に基づいて点POからの動作が開始されているので
ある。
まず、ステップ81〜ステツプS4では、次の区間(セ
グメント)がパス動作か単セグメント動作かの区別をせ
ず、次区間の開始点PI(速度O)から最高速度まで加
速するとき、及び、最高速度から次の目標点P2に停止
させるまで減速するときに、いわゆる5字加減速の採用
を前提として、時間に対する速度変化のパターンの設定
が行われる。ここで、5字加減速とは、第3図に示すよ
うに、加速時にあっては、時間TAIの量論速度が所定
の率で増加(以下これを加加速と称する)、時間TA2
−TAIの間等加速度、時間TAB−TA2 (−TA
I)の量論速度が所定の率で減少するように加速するこ
とをいい、また減速時にあってはそれとは対称的に減速
することをいう。
グメント)がパス動作か単セグメント動作かの区別をせ
ず、次区間の開始点PI(速度O)から最高速度まで加
速するとき、及び、最高速度から次の目標点P2に停止
させるまで減速するときに、いわゆる5字加減速の採用
を前提として、時間に対する速度変化のパターンの設定
が行われる。ここで、5字加減速とは、第3図に示すよ
うに、加速時にあっては、時間TAIの量論速度が所定
の率で増加(以下これを加加速と称する)、時間TA2
−TAIの間等加速度、時間TAB−TA2 (−TA
I)の量論速度が所定の率で減少するように加速するこ
とをいい、また減速時にあってはそれとは対称的に減速
することをいう。
まず、ステップS1では、次のセグメント動作における
移動距離D C[ilを調べて、加速減速なしに指令速
度SPDで移動させた場合に要する移動時間T1を次の
ように算出する。このとき、2軸以上の同時動作の場合
は最も長くかかる軸の移動時間として算出する。
移動距離D C[ilを調べて、加速減速なしに指令速
度SPDで移動させた場合に要する移動時間T1を次の
ように算出する。このとき、2軸以上の同時動作の場合
は最も長くかかる軸の移動時間として算出する。
T[il −DC[I] /S PD
TI−max (T[il )
次のステップS2では、各軸の移動時間をT1に揃えて
各軸の最高速度を算′出する。
各軸の最高速度を算′出する。
S PD[+1−DC[l] /T Iそして、ステッ
プS3では、加速あるいは減速に要する加減速時間TA
Bを、上記S P D [il及び、予め設定されてい
る加加速時間TAIと最大加速度A CC[11とから
算出する。ここでは加減速時間TABは、第3図に示す
ように、加加速時間TAIと、等加速度A CC[!]
にて動作させたときに速度0から速度S P D [1
]までに上昇させるに要する時間TA2との和となる。
プS3では、加速あるいは減速に要する加減速時間TA
Bを、上記S P D [il及び、予め設定されてい
る加加速時間TAIと最大加速度A CC[11とから
算出する。ここでは加減速時間TABは、第3図に示す
ように、加加速時間TAIと、等加速度A CC[!]
にて動作させたときに速度0から速度S P D [1
]までに上昇させるに要する時間TA2との和となる。
また、多軸の場合には最も長くかかる軸の時間として算
出する。
出する。
TAB[fコ − Ta2[iコ + TAITA2
口] −3PD[il /ACC[1コTAB−
ma x (TAB[jl )ステップS4では
、加減速時間をTABに揃えて各軸の最大加速度を補正
する。
口] −3PD[il /ACC[1コTAB−
ma x (TAB[jl )ステップS4では
、加減速時間をTABに揃えて各軸の最大加速度を補正
する。
ACC[]] −5PD[+] / (TAB−TAI
)これにより、すべての軸の加速度が、上述のような5
字加減速に設定される。
)これにより、すべての軸の加速度が、上述のような5
字加減速に設定される。
そして、次のステップS5では、パス動作かどうかが判
断される。これは、現在アーム先端が移動している区間
の目標点PI(即ち次の区間の開始点)にて停止せずに
通過して次の点P2に向かうパス動作を行うかどうかを
判断するもので、これは、プログラムの解析に基づくパ
ス指令の有無にて判断される。ここで、所定時間内にパ
ス指令がない場合には(rNOJ)、単セグメント動作
として、そのままステップS7へ向かう。
断される。これは、現在アーム先端が移動している区間
の目標点PI(即ち次の区間の開始点)にて停止せずに
通過して次の点P2に向かうパス動作を行うかどうかを
判断するもので、これは、プログラムの解析に基づくパ
ス指令の有無にて判断される。ここで、所定時間内にパ
ス指令がない場合には(rNOJ)、単セグメント動作
として、そのままステップS7へ向かう。
一方、パス指令があった場合には(rYes」)ステッ
プS6にて、パス動作時の速度のパターンが補正される
。即ち、パス動作時には、第2図及び第4図に示すよう
に、2方向への移動速度のパターンが重ね合わされた速
度パターンとなるものであるが、既に軌道計算されてい
る現在の区間(点P〇−点P点間1間最高速度からの減
速時の加速度が5字加減速から直線減速に補正され、次
の区間(点P1−点P2間)における加速時の加速度も
同様゛に5字加減速から直線加速に補正される。直線減
速及び直線加速(以下これを合わせて直線加減速と称す
る)とは、′時間に対する速度変化か直線即ち加速度が
一定であるこという。この直線加減速の加速度は、2つ
の速度パターン夫々の最高速度を前記加減速時間TAB
で除算すれば得られ、その始点、終点は、8字加減速と
同一のタイミングとなる。
プS6にて、パス動作時の速度のパターンが補正される
。即ち、パス動作時には、第2図及び第4図に示すよう
に、2方向への移動速度のパターンが重ね合わされた速
度パターンとなるものであるが、既に軌道計算されてい
る現在の区間(点P〇−点P点間1間最高速度からの減
速時の加速度が5字加減速から直線減速に補正され、次
の区間(点P1−点P2間)における加速時の加速度も
同様゛に5字加減速から直線加速に補正される。直線減
速及び直線加速(以下これを合わせて直線加減速と称す
る)とは、′時間に対する速度変化か直線即ち加速度が
一定であるこという。この直線加減速の加速度は、2つ
の速度パターン夫々の最高速度を前記加減速時間TAB
で除算すれば得られ、その始点、終点は、8字加減速と
同一のタイミングとなる。
A CC[1コ − S P D[il /T
A B [il尚、パス動作のタイミング即ち重ね
合わせ部分がどれだけかは、プログラムで指定されるパ
ス率により定められる。
A B [il尚、パス動作のタイミング即ち重ね
合わせ部分がどれだけかは、プログラムで指定されるパ
ス率により定められる。
第4図は8字加減速を直線加減速に補正する方法及びパ
ス動作時の速度を求める方法を示している。上述のよう
に2つの速度変化のパターン(第2図で(b)、(C)
に示す)が、指定のパス率に基づいて点F−点点間間時
間の部分にて重ね合わせられている。ここで、破線で示
した8字加減速部分と直線加減速部分とを比べると、減
速部分の三角形ABCの面積と、辺AB、辺BC,破線
のS字曲線で囲まれる部分の面積とは、上述のように8
時加減速の部分の対称性により直線ACから上方へはみ
だす部分とへこんだ部分との面積が等しいことにより、
同等となる。この面積は移動距離を表わしているから、
S字減速時の移動距離と補正後の移動距離は等しくなる
。同様のことが加速部分(三角形FGH)についても言
える。パス動作時の速度は、これら2つの速度変化を重
ね合わせることにより得られ、同図に太い実線で示すよ
うな速度変化となる。ここで、パス動作でも単セグメン
ト動作でも移動距離は等しくなければならない。言い換
えるならば、第4図で三角形EFCと三角形EIJとの
面積が等しくなければならない。これは、三角形JIC
と三角形JFCとが、底辺JCが共通で且つ高さFCも
共通だから等しい面積であることから証明できる。従っ
て、パス動作時の移動距離は、8字加減速部分でも直線
加減速に補正した後も、等しくなっていることがいえる
。よって、この補正方法を用いれば、第7図に示した従
来の軌道方程式をそのまま利用できるのである。
ス動作時の速度を求める方法を示している。上述のよう
に2つの速度変化のパターン(第2図で(b)、(C)
に示す)が、指定のパス率に基づいて点F−点点間間時
間の部分にて重ね合わせられている。ここで、破線で示
した8字加減速部分と直線加減速部分とを比べると、減
速部分の三角形ABCの面積と、辺AB、辺BC,破線
のS字曲線で囲まれる部分の面積とは、上述のように8
時加減速の部分の対称性により直線ACから上方へはみ
だす部分とへこんだ部分との面積が等しいことにより、
同等となる。この面積は移動距離を表わしているから、
S字減速時の移動距離と補正後の移動距離は等しくなる
。同様のことが加速部分(三角形FGH)についても言
える。パス動作時の速度は、これら2つの速度変化を重
ね合わせることにより得られ、同図に太い実線で示すよ
うな速度変化となる。ここで、パス動作でも単セグメン
ト動作でも移動距離は等しくなければならない。言い換
えるならば、第4図で三角形EFCと三角形EIJとの
面積が等しくなければならない。これは、三角形JIC
と三角形JFCとが、底辺JCが共通で且つ高さFCも
共通だから等しい面積であることから証明できる。従っ
て、パス動作時の移動距離は、8字加減速部分でも直線
加減速に補正した後も、等しくなっていることがいえる
。よって、この補正方法を用いれば、第7図に示した従
来の軌道方程式をそのまま利用できるのである。
このように補正が行われると、次のステップS7にて軌
道方程式で使用する゛係数及び後述するような時間管理
パラメータを算出する。そして、ステップS8にて、そ
の軌道方程式を解いて、軌道計算が終了する。
道方程式で使用する゛係数及び後述するような時間管理
パラメータを算出する。そして、ステップS8にて、そ
の軌道方程式を解いて、軌道計算が終了する。
これにより、例えば第2図(a)に太い実線で示すよう
な速度パターンでアーム先端が点POから点P2へ移動
されるときには、軌道計算は、同図に示すようなI〜■
の各部分軌道に分けて、後述するような軌道方程式を解
くことにより行われる。また、それらは次の時間管理パ
ラメータにより時間管理される。尚、時刻0は同図に示
すように次々とリセットされるようになっている。
な速度パターンでアーム先端が点POから点P2へ移動
されるときには、軌道計算は、同図に示すようなI〜■
の各部分軌道に分けて、後述するような軌道方程式を解
くことにより行われる。また、それらは次の時間管理パ
ラメータにより時間管理される。尚、時刻0は同図に示
すように次々とリセットされるようになっている。
T1:ある点から次の点までの最高速度、加速度無限大
で移動するときに要する時間。
で移動するときに要する時間。
T2:動作開始時にあっては、動作を開始してから等速
になるまでの時間の1/2の時間。
になるまでの時間の1/2の時間。
パス動作時にあっては、パス動作を開
始してから終了するまでの時間の1/2の時間。
減速停止時にあっては、減速を開始し
てから停止するまでの時間の1/2の時間。
T3:時刻Oから減速を開始するまでの時間。
T4:パス動作を開始する時間。時刻(TIT4)から
パス動作を開始する。
パス動作を開始する。
T6:時刻0から次の動作の加速を終了するまでの時間
。
。
TAI、Ta2.Ta2は夫々上記したような時間であ
る。
る。
このような時間パラメータに基づき、ロボットのアーム
先端は次のように動作する。また、それら各軌道におけ
る軌道方程式を共に示す。ここで、Q [+]は次のサ
ンプリング時刻tにおける位置を表し、B [ilは前
回の目標点、C[ilは今回の目標点、N1〜N7はパ
ラメータを示す。
先端は次のように動作する。また、それら各軌道におけ
る軌道方程式を共に示す。ここで、Q [+]は次のサ
ンプリング時刻tにおける位置を表し、B [ilは前
回の目標点、C[ilは今回の目標点、N1〜N7はパ
ラメータを示す。
(I)動作開始加速軌道
時刻を−T2として8字加速で動作を開始する。
軌道方程式:
%式%]
時刻が十T2になったら等速度動作に移行する。
軌道方程式:
%式%[1]
(III)パス動作前の減速軌道
時刻が十T3になったら直線減速動作を開始する。
軌道方程式:
%式%(
[1
(IV)パス動作軌道
時刻が(十T 1−74)になったら時刻を−T2に変
えてパス動作を開始する。
えてパス動作を開始する。
軌道方程式:
%式%)
[]
(V)パス動作軌道後の加速軌道
時刻が十T2になったら次の動作の直線加速動作に移行
する。
する。
軌道方程式:
%式%)
[1
時刻が十T6になったら等速動作に移行する。
(■)動作終了軌道
時刻が十T3になったら時刻を−T2に変えてS字減速
動作を開始する。時刻が十T2になったら動作を終了す
る。
動作を開始する。時刻が十T2になったら動作を終了す
る。
軌道方程式:
%式%](
)
尚、単セグメント動作を行う場合についての詳しい説明
は省略するが、第2図(b)、(c)に示すような加速
、減速時共に8字加減速を採用した軌道にて、アーム先
端は移動される。
は省略するが、第2図(b)、(c)に示すような加速
、減速時共に8字加減速を採用した軌道にて、アーム先
端は移動される。
このような本実施例によれば、アームの先端の始動位置
(点PO)からの移動の加速時(軌道I)及び1」標値
iI¥(点p2)に停止りさせるときの減速時(軌道■
)に、8字加減速を採用したから、始動位置からの移動
動作開始直後の加速時及び目標位置での移動動作停止直
前の減速時には、アーム先端の移動速度は夫々ゆるやか
に増加及び減少する。従って、第7図に示した従来の制
御方法と異なり、このときのアーム先端′は滑らかに動
作するようになり、ワークに振動が加わるといった不具
合を防止することができるものである。
(点PO)からの移動の加速時(軌道I)及び1」標値
iI¥(点p2)に停止りさせるときの減速時(軌道■
)に、8字加減速を採用したから、始動位置からの移動
動作開始直後の加速時及び目標位置での移動動作停止直
前の減速時には、アーム先端の移動速度は夫々ゆるやか
に増加及び減少する。従って、第7図に示した従来の制
御方法と異なり、このときのアーム先端′は滑らかに動
作するようになり、ワークに振動が加わるといった不具
合を防止することができるものである。
そして、パス動作時には、8字加減速を加速度が一定の
いわゆる直線加減速に補正し、直線加減速を採用した2
つの速度パターンの重ね合わせどして軌道計算を行うよ
うにしたので、2次の軌道方程式を解くだけで済み、P
aulの式を用いた4次の軌道方程式を解く場合に比べ
てマイクロコンピュータの負担が少なく短時間での軌道
計算が可能となる。従って、上述の8字加減速により加
速、減速時間を長くすることなく振動を防止し得ること
と合イ)せて、パス動作の本来の目的であるアーム先端
の移動に要する時間の短縮ひいては作業時間の短縮が十
分達成できるものである。
いわゆる直線加減速に補正し、直線加減速を採用した2
つの速度パターンの重ね合わせどして軌道計算を行うよ
うにしたので、2次の軌道方程式を解くだけで済み、P
aulの式を用いた4次の軌道方程式を解く場合に比べ
てマイクロコンピュータの負担が少なく短時間での軌道
計算が可能となる。従って、上述の8字加減速により加
速、減速時間を長くすることなく振動を防止し得ること
と合イ)せて、パス動作の本来の目的であるアーム先端
の移動に要する時間の短縮ひいては作業時間の短縮が十
分達成できるものである。
[発明の効果]
以上の説明にて明らかなように、本発明のロボットの制
御方法によれば、始動位置からの移動動作開始直後の加
速時及び目標位置での移動動作停止直前の減速時にはア
ーム先端の移動の加速度が夫々所定の率で増加及び減少
するように制御し、パス動作時にはアーム先端のそのパ
ス動作に係る一方向への移動の最高速度からの減速時及
び他の方向への移動の最高速度までの加速時の加速度が
夫々一定となるように制御するようにしたので、アーム
先端の始動位置からの始動時及び目標位置での停止り時
に、滑らかな動作を行い得てアーム先端の振動を防止し
得、しかも、作業時間の短縮を図ることができるという
優れた効果を奏する。
御方法によれば、始動位置からの移動動作開始直後の加
速時及び目標位置での移動動作停止直前の減速時にはア
ーム先端の移動の加速度が夫々所定の率で増加及び減少
するように制御し、パス動作時にはアーム先端のそのパ
ス動作に係る一方向への移動の最高速度からの減速時及
び他の方向への移動の最高速度までの加速時の加速度が
夫々一定となるように制御するようにしたので、アーム
先端の始動位置からの始動時及び目標位置での停止り時
に、滑らかな動作を行い得てアーム先端の振動を防止し
得、しかも、作業時間の短縮を図ることができるという
優れた効果を奏する。
第1図乃至第5図は本発明の一実施例を示すもので、第
1図は軌道方程式の設定のフローチャート、第2図はア
ーム先端の時間に関する速度変化パターンを示したもの
で、(a)は2方向の移動をパス動作により重ね合わせ
たもの、(b)は一方向への移動、(C)は他の方向へ
の移動を示したものであ1、第3図は加速時、減速時の
時間に関する速度及び加速度の変化を示す図、第4図は
8字加減速を直線加減速に補正する方法を示すための第
2図(a)の部分拡大図、第5図はプログラム例を説明
するための時−間に関する速度変化を示す図である。ま
た、第6図及び第7図は従来例を示すもので、第6図は
パス動作を説明するための目標点とアーム先端の軌道と
の関係を概略的にボす図、 第7図は第2図相当図である。
1図は軌道方程式の設定のフローチャート、第2図はア
ーム先端の時間に関する速度変化パターンを示したもの
で、(a)は2方向の移動をパス動作により重ね合わせ
たもの、(b)は一方向への移動、(C)は他の方向へ
の移動を示したものであ1、第3図は加速時、減速時の
時間に関する速度及び加速度の変化を示す図、第4図は
8字加減速を直線加減速に補正する方法を示すための第
2図(a)の部分拡大図、第5図はプログラム例を説明
するための時−間に関する速度変化を示す図である。ま
た、第6図及び第7図は従来例を示すもので、第6図は
パス動作を説明するための目標点とアーム先端の軌道と
の関係を概略的にボす図、 第7図は第2図相当図である。
Claims (1)
- 1、アーム先端の二以上の異なる方向への移動を独立し
て制御でき、前記アーム先端を始動位置から目標位置ま
で移動させるにあたって一方向への移動動作が完了する
以前に他の方向への移動動作を開始させるパス動作の実
行が可能なロボットにおいて、前記始動位置からの移動
動作開始直後の加速時及び目標位置での移動動作停止直
前の減速時には前記アーム先端の移動の加速度が夫々所
定の率で増加及び減少するように制御し、前記パス動作
時には前記アーム先端のそのパス動作に係る一方向への
移動の最高速度からの減速時及び他の方向への移動の最
高速度までの加速時の加速度が夫々一定となるように制
御することを特徴とするロボットの制御方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1100990A JPH03213285A (ja) | 1990-01-19 | 1990-01-19 | ロボットの制御方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1100990A JPH03213285A (ja) | 1990-01-19 | 1990-01-19 | ロボットの制御方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH03213285A true JPH03213285A (ja) | 1991-09-18 |
Family
ID=11766121
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1100990A Pending JPH03213285A (ja) | 1990-01-19 | 1990-01-19 | ロボットの制御方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH03213285A (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001088073A (ja) * | 1999-09-16 | 2001-04-03 | Denso Corp | 外観検査装置 |
| JP2010269385A (ja) * | 2009-05-20 | 2010-12-02 | Toshiba Mach Co Ltd | S字加減速軌道生成方法および多関節型ロボットシステム |
| US20130317646A1 (en) * | 2012-05-24 | 2013-11-28 | Fanuc Corporation | Robot program changing device |
-
1990
- 1990-01-19 JP JP1100990A patent/JPH03213285A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2001088073A (ja) * | 1999-09-16 | 2001-04-03 | Denso Corp | 外観検査装置 |
| JP2010269385A (ja) * | 2009-05-20 | 2010-12-02 | Toshiba Mach Co Ltd | S字加減速軌道生成方法および多関節型ロボットシステム |
| US20130317646A1 (en) * | 2012-05-24 | 2013-11-28 | Fanuc Corporation | Robot program changing device |
| US8831777B2 (en) * | 2012-05-24 | 2014-09-09 | Fanuc Corporation | Robot program changing device |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN107263484A (zh) | 机器人关节空间点到点运动的轨迹规划方法 | |
| JPS61157909A (ja) | ロボツトの経路誤差補正方式 | |
| JP5417390B2 (ja) | 数値制御装置 | |
| JPH0944225A (ja) | ロボットの制御方法 | |
| US5740327A (en) | Method of and apparatus for robot tip trajectory control | |
| JPH03213285A (ja) | ロボットの制御方法 | |
| KR100842978B1 (ko) | 서보 제어방법 | |
| US20230027260A1 (en) | Robot controller and emergency stop method of robot | |
| JP2005118995A (ja) | ロボットの制御方法および制御装置 | |
| CN105700467A (zh) | 数值控制装置 | |
| JPH11249723A (ja) | ロボットの制御方法および制御装置 | |
| JP3000889B2 (ja) | ロボットの軌跡制御方法 | |
| JPH09190211A (ja) | 数値制御装置の経路制御方式 | |
| JP3644551B2 (ja) | ロボットの制御方法 | |
| EP0864400B1 (en) | Stitch processing method using industrial robot | |
| CN113858213A (zh) | 一种用于目标同步的机器人动态轨迹规划方法 | |
| JPH02308311A (ja) | 多関節ロボットの補間速度指令方法 | |
| JP3352880B2 (ja) | 複数台ロボットの干渉防止方法 | |
| JPH04141383A (ja) | ロボットの制御方法及びその装置 | |
| JP3512651B2 (ja) | ロボットの制御装置および制御方法 | |
| JPS6284304A (ja) | 産業用ロボツトの軌跡補間装置 | |
| JP7725001B1 (ja) | 制御装置及び制御方法 | |
| JPH01119809A (ja) | ロボット軌跡制御方法 | |
| JP2003076411A (ja) | 加減速制御装置、加減速制御方法およびその方法をコンピュータに実行させるプログラム | |
| JPH02122305A (ja) | ロボットの制御方法 |