JPH07210233A - ロボットの軌道の補間方法と補間装置 - Google Patents
ロボットの軌道の補間方法と補間装置Info
- Publication number
- JPH07210233A JPH07210233A JP6007346A JP734694A JPH07210233A JP H07210233 A JPH07210233 A JP H07210233A JP 6007346 A JP6007346 A JP 6007346A JP 734694 A JP734694 A JP 734694A JP H07210233 A JPH07210233 A JP H07210233A
- Authority
- JP
- Japan
- Prior art keywords
- point
- interpolation
- acceleration
- speed
- deceleration
- 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
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
(57)【要約】
【目的】 2つの教示点間を直線補間するとき、教示点
の前後で速度が変化しないようにする目的で、始点教示
点の始点速度と終点教示点の終点速度とを所定の値に設
定して補間する。 【構成】 教示点データは、始点における速度Vs 、終
点における速度Ve 、教示点間を移動するときの最大速
度Vmax 、最大加速度amax を指定している。始点を速
度Vs で出発し、最大加速度amax により最大速度Vma
x を限度に加速する補間演算を移動ごとに演算する。つ
ぎの補間点における速度と終点までの残り距離が、最大
速度以下の可能な限り大きい加速度で減速して終点速度
Ve で終点に到達できるか否かを補間演算ごとに判定
し、可能なときはその補間点に移動してつぎの加速補間
点を演算し、不可能になったとき、現補間点の速度を初
速度として残り距離の区間を減速加速して終点速度Ve
で終点に到達するように補間演算と移動を繰り返す。
の前後で速度が変化しないようにする目的で、始点教示
点の始点速度と終点教示点の終点速度とを所定の値に設
定して補間する。 【構成】 教示点データは、始点における速度Vs 、終
点における速度Ve 、教示点間を移動するときの最大速
度Vmax 、最大加速度amax を指定している。始点を速
度Vs で出発し、最大加速度amax により最大速度Vma
x を限度に加速する補間演算を移動ごとに演算する。つ
ぎの補間点における速度と終点までの残り距離が、最大
速度以下の可能な限り大きい加速度で減速して終点速度
Ve で終点に到達できるか否かを補間演算ごとに判定
し、可能なときはその補間点に移動してつぎの加速補間
点を演算し、不可能になったとき、現補間点の速度を初
速度として残り距離の区間を減速加速して終点速度Ve
で終点に到達するように補間演算と移動を繰り返す。
Description
【0001】
【産業上の利用分野】本発明は、入力された教示点の間
を補間して目標軌道を生成するロボットの軌道の補間方
法と補間装置とに関する。
を補間して目標軌道を生成するロボットの軌道の補間方
法と補間装置とに関する。
【0002】
【従来の技術】近年、ロボットが産業分野で広く活用さ
れているが、その動作の円滑さが重要である。
れているが、その動作の円滑さが重要である。
【0003】以下、従来のロボット軌道補間装置につい
て説明する。ロボットの手先先端部が通過するべき点を
複数個の教示点として操作者があらかじめ登録してお
き、その教示点の間の通過点を直線や曲線で補間するこ
とによりロボットの軌道が決定される。この教示点の情
報を与える教示点データは、教示点の位置座標と、その
教示点間を通過する速度などを指定している。この教示
点データに従って2教示点間を補間する場合、ロボット
手先先端部が2教示点間を1動作で移動するように補間
するのでなく、複数個の移動を連結して移動するように
補間する方法がある。この補間方法においては、上記1
つの移動に費やす時間、すなわち補間周期tc が所定値
tu 以下の一定値になるように設定して処理している。
前記tu を基本補間単位周期と称す。たとえば、2教示
点間を直線で補間する場合、始点となる教示点に登録さ
れた指定速度Vと補間周期tc との積が1つの補間移動
距離であり、それに補間回数Nを乗じた値が2教示点間
の距離Lとなる。
て説明する。ロボットの手先先端部が通過するべき点を
複数個の教示点として操作者があらかじめ登録してお
き、その教示点の間の通過点を直線や曲線で補間するこ
とによりロボットの軌道が決定される。この教示点の情
報を与える教示点データは、教示点の位置座標と、その
教示点間を通過する速度などを指定している。この教示
点データに従って2教示点間を補間する場合、ロボット
手先先端部が2教示点間を1動作で移動するように補間
するのでなく、複数個の移動を連結して移動するように
補間する方法がある。この補間方法においては、上記1
つの移動に費やす時間、すなわち補間周期tc が所定値
tu 以下の一定値になるように設定して処理している。
前記tu を基本補間単位周期と称す。たとえば、2教示
点間を直線で補間する場合、始点となる教示点に登録さ
れた指定速度Vと補間周期tc との積が1つの補間移動
距離であり、それに補間回数Nを乗じた値が2教示点間
の距離Lとなる。
【0004】この補間周期tc は基本補間単位周期tu
に基づいて下記の演算により求める。2教示点間を移動
に要する時間、すなわち移動時間Tは、 T=L/V ・・・(1) である。このとき、2教示点間の移動を区分する数、す
なわち補間回数Nを(2)式で求める。
に基づいて下記の演算により求める。2教示点間を移動
に要する時間、すなわち移動時間Tは、 T=L/V ・・・(1) である。このとき、2教示点間の移動を区分する数、す
なわち補間回数Nを(2)式で求める。
【0005】 N=[T/tu] ・・・(2) ここで[x]は、実数xが1以上であれば小数点以下を
切り捨て、1未満であれば1となる関数である。この移
動時間Tと補間回数Nとにより、補間周期tc を(3)
式により求める。
切り捨て、1未満であれば1となる関数である。この移
動時間Tと補間回数Nとにより、補間周期tc を(3)
式により求める。
【0006】 tc=T/N ・・・(3) また、直線軌道上を指定速度Vと補間周期tc とでk番
目まで移動したときの始点からの距離をLkとすると、 Lk=V・tc・k (ただし、k=1〜N) ・・・(4) したがって、2教示点間における個々の補間点の位置座
標Pk は、個々の移動のベクトル合成により、 Pk=Ps+Lk・n ・・・(5) として求められる。ただし、Ps 始点の位置座標、nは
2教示点間の方向ベクトルであり、終点の位置座標をP
e とすると方向ベクトルnは(6)式で表される。
目まで移動したときの始点からの距離をLkとすると、 Lk=V・tc・k (ただし、k=1〜N) ・・・(4) したがって、2教示点間における個々の補間点の位置座
標Pk は、個々の移動のベクトル合成により、 Pk=Ps+Lk・n ・・・(5) として求められる。ただし、Ps 始点の位置座標、nは
2教示点間の方向ベクトルであり、終点の位置座標をP
e とすると方向ベクトルnは(6)式で表される。
【0007】 n=(Pe−Ps)/L ・・・(6) なお、2教示点間の距離が短いときなどにおいては、そ
の間を1動作で移動させる場合もあり、このときはN=
1、tc=tu に設定する。
の間を1動作で移動させる場合もあり、このときはN=
1、tc=tu に設定する。
【0008】
【発明が解決しようとする課題】このような従来のロボ
ット軌道補間装置では、ロボットの手先先端部の速度を
教示点間で一定速度としているため、教示点の前後で指
定速度が異なる場合には教示点における不連続な速度変
化が振動発生の原因となる。また、折れ線軌道の屈折部
を、内周りする円弧や放物線などの曲線軌道で補間する
とき、ロボットの構造上の問題からその曲線軌道上を移
動する速度に許容速度制限を設ける場合には、前記曲線
軌道に接続する直線部分を前記従来の一定速度の補間方
法で補間演算すると、その接続部分の前後で速度が不連
続に変化して振動の原因となる。
ット軌道補間装置では、ロボットの手先先端部の速度を
教示点間で一定速度としているため、教示点の前後で指
定速度が異なる場合には教示点における不連続な速度変
化が振動発生の原因となる。また、折れ線軌道の屈折部
を、内周りする円弧や放物線などの曲線軌道で補間する
とき、ロボットの構造上の問題からその曲線軌道上を移
動する速度に許容速度制限を設ける場合には、前記曲線
軌道に接続する直線部分を前記従来の一定速度の補間方
法で補間演算すると、その接続部分の前後で速度が不連
続に変化して振動の原因となる。
【0009】また、移動速度を一定としているので、ロ
ボットが動作可能な速度や加速度が活用されず、タクト
タイムを短縮しようとする動作にはなっていない。
ボットが動作可能な速度や加速度が活用されず、タクト
タイムを短縮しようとする動作にはなっていない。
【0010】本発明は上記課題を解決するもので、教示
点や接続部分で速度を連続にでき、振動を発生させない
ロボットの軌道の補間方法と補間装置を提供することを
目的とする。
点や接続部分で速度を連続にでき、振動を発生させない
ロボットの軌道の補間方法と補間装置を提供することを
目的とする。
【0011】
【課題を解決するための手段】請求項1に係わる本発明
は、教示点を通過する速度と、教示点間を通過するとき
に許容される最大速度および最大加速度とを有する教示
点データを用い、隣接する2つの教示点の一方を始点、
他方を終点として、前記始点から前記終点に至る間を前
記教示点データに従って直線軌道で補間するとき、前記
教示点データが与える始点速度で前記始点を出発し、前
記最大加速度で前記最大速度を限度に加速移動する加速
区間と、前記最大加速度に基づく減速時加速度で減速し
て前記教示点データが与える終点速度で前記終点に到達
する減速区間とを連結するとともに、加速区間および減
速区間を1つ以上の補間区間で構成し、前記始点を出発
し、つぎの移動先の教示点を補間演算して移動する動作
を順次に実行するとき、つぎの教示点の終速度および前
記終点までの残り距離とが前記減速区間を実現できる点
まで教示演算と加速移動とを順次に実行して減速区間に
移行し、前記加速区間の終速度を初速度とし、つぎの移
動先の教示点を補間演算して減速移動を順次実行するこ
とにより前記終点速度で前記終点に到達するように補間
および移動し、加速区間において前記最大速度に達した
ときは前記最大速度により補間および移動するようにし
たロボットの軌道の補間方法である。また、請求項3に
係わる本発明は、連続した2つの教示点データを入力
し、補間演算の開始点である始点の位置座標と始点速度
と、終了点である終点の位置座標と終点速度と、前記教
示点間を移動するときの最大速度および最大加速度を読
み取り、つぎの教示点データを入力するまで保存する教
示点データ読み取り手段と、前記始点を前記始点速度で
出発して、前記最大加速度により前記最大速度を限度に
直線加速移動するように補間点を移動ごとに演算する加
速区間演算手段と、前記加速区間の終速度を初速度と
し、終点までの残り区間を前記最大加速度に基づく加速
度で減速移動して前記終点速度で前記終点に到達するよ
うに補間点を移動ごとに演算する減速区間演算手段と、
前記加速区間演算手段および減速区間演算手段が演算し
た補間点データを入力してロボットをその教示点まで移
動させる関節角度を演算する関節角演算手段とを備え、
前記加速区間演算手段は、つぎの移動先の補間点を演算
し、その点における速度と終点までの残り距離とが前記
最大加速度以下で減速して前記終点速度で前記終点に到
達できる条件を満たすか否かを判断し、満たす場合はそ
の補間点のデータを前記関節角演算手段に出力し、満た
さないときは現在の補間点の位置および速度を前記減速
区間演算手段に出力して演算を終了する手段であり、ま
た、前記減速区間演算手段は、前記加速区間演算手段か
ら入力した速度を初速度とし、終点までの距離と終点速
度で決まる加速度で減速移動して終点速度で終点に到達
するように移動ごとに補間点を演算する手段であるロボ
ットの軌道の補間装置である。
は、教示点を通過する速度と、教示点間を通過するとき
に許容される最大速度および最大加速度とを有する教示
点データを用い、隣接する2つの教示点の一方を始点、
他方を終点として、前記始点から前記終点に至る間を前
記教示点データに従って直線軌道で補間するとき、前記
教示点データが与える始点速度で前記始点を出発し、前
記最大加速度で前記最大速度を限度に加速移動する加速
区間と、前記最大加速度に基づく減速時加速度で減速し
て前記教示点データが与える終点速度で前記終点に到達
する減速区間とを連結するとともに、加速区間および減
速区間を1つ以上の補間区間で構成し、前記始点を出発
し、つぎの移動先の教示点を補間演算して移動する動作
を順次に実行するとき、つぎの教示点の終速度および前
記終点までの残り距離とが前記減速区間を実現できる点
まで教示演算と加速移動とを順次に実行して減速区間に
移行し、前記加速区間の終速度を初速度とし、つぎの移
動先の教示点を補間演算して減速移動を順次実行するこ
とにより前記終点速度で前記終点に到達するように補間
および移動し、加速区間において前記最大速度に達した
ときは前記最大速度により補間および移動するようにし
たロボットの軌道の補間方法である。また、請求項3に
係わる本発明は、連続した2つの教示点データを入力
し、補間演算の開始点である始点の位置座標と始点速度
と、終了点である終点の位置座標と終点速度と、前記教
示点間を移動するときの最大速度および最大加速度を読
み取り、つぎの教示点データを入力するまで保存する教
示点データ読み取り手段と、前記始点を前記始点速度で
出発して、前記最大加速度により前記最大速度を限度に
直線加速移動するように補間点を移動ごとに演算する加
速区間演算手段と、前記加速区間の終速度を初速度と
し、終点までの残り区間を前記最大加速度に基づく加速
度で減速移動して前記終点速度で前記終点に到達するよ
うに補間点を移動ごとに演算する減速区間演算手段と、
前記加速区間演算手段および減速区間演算手段が演算し
た補間点データを入力してロボットをその教示点まで移
動させる関節角度を演算する関節角演算手段とを備え、
前記加速区間演算手段は、つぎの移動先の補間点を演算
し、その点における速度と終点までの残り距離とが前記
最大加速度以下で減速して前記終点速度で前記終点に到
達できる条件を満たすか否かを判断し、満たす場合はそ
の補間点のデータを前記関節角演算手段に出力し、満た
さないときは現在の補間点の位置および速度を前記減速
区間演算手段に出力して演算を終了する手段であり、ま
た、前記減速区間演算手段は、前記加速区間演算手段か
ら入力した速度を初速度とし、終点までの距離と終点速
度で決まる加速度で減速移動して終点速度で終点に到達
するように移動ごとに補間点を演算する手段であるロボ
ットの軌道の補間装置である。
【0012】
【作用】請求項1に係わる発明において、1教示点を始
点、つぎの教示点を終点とする直線軌道を移動させると
き、つぎの移動先の補間点を演算して移動する動作を順
次に繰り返して移動するようにし、始点を所定の始点速
度で出発して最大速度を限度に演算と加速移動とを繰り
返し、つぎの補間点の終速度と終点までの残り距離が、
最大加速度に基づく加速度で減速しながら所定の終点速
度で終点に到達できるか否かを演算チェックしながら加
速移動する。加速移動が前記チェックで不可能になった
補間点から減速補間と減速移動との繰り返しで終点まで
移動する。なお、加速により最大速度に達したときには
最大速度で移動したのち減速移動に移行する。始点速度
と終点速度を所定値としながら、その間は加速移動と減
速移動とを連結してタクトタイムを短縮する。また、請
求項3に係わる発明において、教示点データ読み取り手
段は補間演算したい2つの教示点のデータを読み取り、
加速区間演算手段は始点を始点速度で出発して最大速度
を限度に最大速度で加速する補間演算を移動ごとに実行
するとともに、終点に終点速度になるように減速して到
達できるか否かを判断し、可能なときはつぎの補間点を
求めて関節角演算手段に出力し、不可能なときは現補間
点の速度と残り移動距離を減速区間演算手段に出力す
る。減速区間演算手段は加速区間演算手段の終速度と残
り距離と終点速度とにより減速して、終点速度で終点に
到達するように移動ごとに補間演算する。
点、つぎの教示点を終点とする直線軌道を移動させると
き、つぎの移動先の補間点を演算して移動する動作を順
次に繰り返して移動するようにし、始点を所定の始点速
度で出発して最大速度を限度に演算と加速移動とを繰り
返し、つぎの補間点の終速度と終点までの残り距離が、
最大加速度に基づく加速度で減速しながら所定の終点速
度で終点に到達できるか否かを演算チェックしながら加
速移動する。加速移動が前記チェックで不可能になった
補間点から減速補間と減速移動との繰り返しで終点まで
移動する。なお、加速により最大速度に達したときには
最大速度で移動したのち減速移動に移行する。始点速度
と終点速度を所定値としながら、その間は加速移動と減
速移動とを連結してタクトタイムを短縮する。また、請
求項3に係わる発明において、教示点データ読み取り手
段は補間演算したい2つの教示点のデータを読み取り、
加速区間演算手段は始点を始点速度で出発して最大速度
を限度に最大速度で加速する補間演算を移動ごとに実行
するとともに、終点に終点速度になるように減速して到
達できるか否かを判断し、可能なときはつぎの補間点を
求めて関節角演算手段に出力し、不可能なときは現補間
点の速度と残り移動距離を減速区間演算手段に出力す
る。減速区間演算手段は加速区間演算手段の終速度と残
り距離と終点速度とにより減速して、終点速度で終点に
到達するように移動ごとに補間演算する。
【0013】
(実施例1)以下、本発明のロボットの軌道の補間方法
の一実施例について図面を参照しながら説明する。図1
は本実施例の補間方法により2つの教示点間を直線軌道
で補間したときにロボットの手先先端部が通過する速度
Vと移動距離Lとを時間経過で示す。図において、横軸
tはロボット手先先端部が、ある教示点(以下、始点と
称す)からつぎの教示点(以下、終点と称す)に向かっ
て移動を開始してからの経過時間を与え、縦軸Vはその
時間tにおけるロボット手先先端部の移動速度、縦軸L
は始点から移動した距離を与える。また、Vs は始点を
出発するときの速度(以下、始点速度と称す)、Ve は
終点に到達したときの速度(以下、終点速度と称す)、
Vmax は2教示点間を移動するときに許容する最大の速
度(以下、最大速度と称す)、ac は始点を出発した時
点から与える一定の加速度、adは終点に到達する前か
ら減速するために与える一定の加速度であって、これら
は操作者があらかじめ教示点データとして記憶手段(図
示せず)に記憶させてある。なお、加速度ac およびa
d の許容最大値amax も教示点データに記憶しておく。
また、Ta は加速度ac で始点速度Vs から最大速度V
max まで加速するのに要する加速時間、Td は加速度a
d で最大速度Vmax から終点速度Ve まで減速するのに
要する減速時間である。
の一実施例について図面を参照しながら説明する。図1
は本実施例の補間方法により2つの教示点間を直線軌道
で補間したときにロボットの手先先端部が通過する速度
Vと移動距離Lとを時間経過で示す。図において、横軸
tはロボット手先先端部が、ある教示点(以下、始点と
称す)からつぎの教示点(以下、終点と称す)に向かっ
て移動を開始してからの経過時間を与え、縦軸Vはその
時間tにおけるロボット手先先端部の移動速度、縦軸L
は始点から移動した距離を与える。また、Vs は始点を
出発するときの速度(以下、始点速度と称す)、Ve は
終点に到達したときの速度(以下、終点速度と称す)、
Vmax は2教示点間を移動するときに許容する最大の速
度(以下、最大速度と称す)、ac は始点を出発した時
点から与える一定の加速度、adは終点に到達する前か
ら減速するために与える一定の加速度であって、これら
は操作者があらかじめ教示点データとして記憶手段(図
示せず)に記憶させてある。なお、加速度ac およびa
d の許容最大値amax も教示点データに記憶しておく。
また、Ta は加速度ac で始点速度Vs から最大速度V
max まで加速するのに要する加速時間、Td は加速度a
d で最大速度Vmax から終点速度Ve まで減速するのに
要する減速時間である。
【0014】本発明のロボットの軌道の補間方法の骨子
を説明すると、図1(a)に示したように、本実施例の
補間処理は、始点を始点速度Vs で出発し、加速度ac
で最大速度Vmax に向かって加速しながら移動し、最大
速度Vmax に達するとその速度で移動し、終点に到達す
る手前から加速度ad で減速しながら移動し、終点での
速度が所定の終点速度Ve になるようにする。この場
合、加速度ac で直線移動している期間において、ロボ
ット手先先端部は複数回の移動を連結して移動するよう
にし、1回の補間演算でロボット手先先端部が移動する
時間、すなわち補間周期ta は、従来例と同様に、加速
時間Ta 、基本補間単位周期tu 、補間回数N=[Ta
/tu]によりta≦tuとなるように決定する。図1
(a)の加速時間Ta では4回の移動例を示している。
加速度ad で減速しながら移動している期間の補間周期
td についても同様である。また、補間処理を1回行う
ごとにカウンタで数え、そのカウント値をkとする。
を説明すると、図1(a)に示したように、本実施例の
補間処理は、始点を始点速度Vs で出発し、加速度ac
で最大速度Vmax に向かって加速しながら移動し、最大
速度Vmax に達するとその速度で移動し、終点に到達す
る手前から加速度ad で減速しながら移動し、終点での
速度が所定の終点速度Ve になるようにする。この場
合、加速度ac で直線移動している期間において、ロボ
ット手先先端部は複数回の移動を連結して移動するよう
にし、1回の補間演算でロボット手先先端部が移動する
時間、すなわち補間周期ta は、従来例と同様に、加速
時間Ta 、基本補間単位周期tu 、補間回数N=[Ta
/tu]によりta≦tuとなるように決定する。図1
(a)の加速時間Ta では4回の移動例を示している。
加速度ad で減速しながら移動している期間の補間周期
td についても同様である。また、補間処理を1回行う
ごとにカウンタで数え、そのカウント値をkとする。
【0015】また、図1(b)に示したように、2つの
教示点間の距離が短いなどの場合、始点を始点速度Vs
で出発してから加速するが、最大速度Vmax に到達する
までに減速を開始しなければ所定の終点速度Ve を実現
できない場合がある。したがって、最大速度Vmax に到
達するまで単純に加速を続けるのでなく、加速補間演算
によりつぎの移動先の位置と速度とを求めるごとに、そ
の位置から終点までの残りの距離の間で最大加速度ama
x 以下の加速度で減速移動して所定の終点速度Ve を実
現できるか否かを減速補間演算により確かめる処理を行
う。減速できる余地が残っているときは加速補間演算の
結果に従って加速移動を実行するとともにつぎの加速補
間演算を行う動作を繰り返し、残っていないときは直ち
に現在位置から減速処理に移行する。
教示点間の距離が短いなどの場合、始点を始点速度Vs
で出発してから加速するが、最大速度Vmax に到達する
までに減速を開始しなければ所定の終点速度Ve を実現
できない場合がある。したがって、最大速度Vmax に到
達するまで単純に加速を続けるのでなく、加速補間演算
によりつぎの移動先の位置と速度とを求めるごとに、そ
の位置から終点までの残りの距離の間で最大加速度ama
x 以下の加速度で減速移動して所定の終点速度Ve を実
現できるか否かを減速補間演算により確かめる処理を行
う。減速できる余地が残っているときは加速補間演算の
結果に従って加速移動を実行するとともにつぎの加速補
間演算を行う動作を繰り返し、残っていないときは直ち
に現在位置から減速処理に移行する。
【0016】以下、本実施例の具体的な補間演算処理に
ついて図面を参照しながら説明する。図2は本実施例の
補間演算処理の動作を示すフローチャートである。図に
おいて、まず、ステップ1で隣接した2つの教示点の教
示点データpj、pj+1から始点位置座標Ps と始点速度
Vs と終点位置座標Pe と教示点間を移動するときに許
容される最大速度Vmax と最大加速度amax とを読み取
る。
ついて図面を参照しながら説明する。図2は本実施例の
補間演算処理の動作を示すフローチャートである。図に
おいて、まず、ステップ1で隣接した2つの教示点の教
示点データpj、pj+1から始点位置座標Ps と始点速度
Vs と終点位置座標Pe と教示点間を移動するときに許
容される最大速度Vmax と最大加速度amax とを読み取
る。
【0017】ステップ2からステップ15までは、加速
補間の演算を1回実行するごとに移動先の位置と速度を
見積り、その位置からの減速補間の演算を行って、残り
の距離の区間で加速度ad で減速すれば所定の終点速度
Ve を実現できるか否かをチェックし、実現できる限り
移動を実行するとともにつぎの加速演算と移動を繰り返
し、実現できないときは減速移動に移行する動作を与え
る。なお、この過程で最大速度に達すれば、残りの距離
で減速できる位置まで最大速度Vmax で移動すればよい
ことは言うまでもない。
補間の演算を1回実行するごとに移動先の位置と速度を
見積り、その位置からの減速補間の演算を行って、残り
の距離の区間で加速度ad で減速すれば所定の終点速度
Ve を実現できるか否かをチェックし、実現できる限り
移動を実行するとともにつぎの加速演算と移動を繰り返
し、実現できないときは減速移動に移行する動作を与え
る。なお、この過程で最大速度に達すれば、残りの距離
で減速できる位置まで最大速度Vmax で移動すればよい
ことは言うまでもない。
【0018】まず、ステップ2において、(7)式によ
り加速度を最大加速度amax に設定し、(8)式により
始点速度Vs から最大速度Vmax まで最大加速度amax
で加速するのに必要な時間である加速時間Ta を求め、
(9)式によって加速区間の加速時補間回数Na を求め
る。
り加速度を最大加速度amax に設定し、(8)式により
始点速度Vs から最大速度Vmax まで最大加速度amax
で加速するのに必要な時間である加速時間Ta を求め、
(9)式によって加速区間の加速時補間回数Na を求め
る。
【0019】 ac=amax ・・・(7) Ta=(Vmax−Vs)/ac ・・・(8) Na=[Ta/tu] ・・・(9) なお、加速時補間回数Na は(9)式で与えられるが、
前述のように、この回数Na まで加速移動を実行してよ
いか否かは残り距離で減速して所定の終点速度を実現で
きるか否かで決まるのであって、ここでは単に最大速度
まで加速するに必要な補間回数を示しているだけであ
る。
前述のように、この回数Na まで加速移動を実行してよ
いか否かは残り距離で減速して所定の終点速度を実現で
きるか否かで決まるのであって、ここでは単に最大速度
まで加速するに必要な補間回数を示しているだけであ
る。
【0020】ステップ3において加速時補間回数Na の
値が1であるか否かをチェックする。Na が1となる場
合は、最大加速度amax で加速したときに速度がVmax
に達するまでの時間が1基本補間単位周期tu 未満であ
る場合である。この場合は加速度ac が最大速度Vmax
に対して相対的に大きいために、1基本補間単位周期t
u の期間に一気に最大速度Vmax を越える加速となる場
合であり、ステップ4へ移行して、1基本補間単位周期
tu で丁度最大速度Vmax まで加速するように、最大加
速度amax より小さい加速度ac を(10)式で設定
し、ステップ5に移行する。
値が1であるか否かをチェックする。Na が1となる場
合は、最大加速度amax で加速したときに速度がVmax
に達するまでの時間が1基本補間単位周期tu 未満であ
る場合である。この場合は加速度ac が最大速度Vmax
に対して相対的に大きいために、1基本補間単位周期t
u の期間に一気に最大速度Vmax を越える加速となる場
合であり、ステップ4へ移行して、1基本補間単位周期
tu で丁度最大速度Vmax まで加速するように、最大加
速度amax より小さい加速度ac を(10)式で設定
し、ステップ5に移行する。
【0021】 ac=(Vmax−Vs)/tu ・・・(10) このときの加速時間Ta は当然ながら Ta=tu ・・・(11) である。また、ステップ3において加速時補間回数Na
が1でなければ1回の加速補間処理と移動とで最大速度
Vmax に達しない場合であって、ステップ5に移行し
て、(12)式により加速時補間周期ta を求める。こ
のta は前述の決め方により ta=Ta/Na ・・・(12) である。
が1でなければ1回の加速補間処理と移動とで最大速度
Vmax に達しない場合であって、ステップ5に移行し
て、(12)式により加速時補間周期ta を求める。こ
のta は前述の決め方により ta=Ta/Na ・・・(12) である。
【0022】つぎに、ステップ6に移行して、k回目の
加速補間時における補間点の位置座標Pa(k)、その補間
点における速度V(k)、始点からの距離L(k)とし、加速
演算を開始する初期値を始点の教示点データと(13)
式、(14)式、(15)式により設定する。
加速補間時における補間点の位置座標Pa(k)、その補間
点における速度V(k)、始点からの距離L(k)とし、加速
演算を開始する初期値を始点の教示点データと(13)
式、(14)式、(15)式により設定する。
【0023】 Pa(0)=Ps ・・・(13) V(0)=Vs ・・・(14) L(0)=0 ・・・(15) また、1回目の加速補間をいまから行うので補間回数の
カウント値kを k=1 ・・・(16) に設定する。ステップ7においては、補間回数をカウン
ト値kによりチェックし、加速時補間演算と移動を最後
まで完了したか否かを判断する。補間回数のカウント値
kがNa 以下である場合は、補間処理が完結していない
としてステップ8へ移行し、(17)式に従って補間回
数がk時点の現在速度V(k) を求める。
カウント値kを k=1 ・・・(16) に設定する。ステップ7においては、補間回数をカウン
ト値kによりチェックし、加速時補間演算と移動を最後
まで完了したか否かを判断する。補間回数のカウント値
kがNa 以下である場合は、補間処理が完結していない
としてステップ8へ移行し、(17)式に従って補間回
数がk時点の現在速度V(k) を求める。
【0024】 V(k)=V(k-1)+ac・ta ・・・(17) また、ステップ7においてカウント値kが加速時補間回
数Na より大きい場合は、加速補間処理が終了したとし
て、ステップ9に移行して補間回数がk時点の現在速度
V(k) として前回の現在速度をそのまま出力する。
数Na より大きい場合は、加速補間処理が終了したとし
て、ステップ9に移行して補間回数がk時点の現在速度
V(k) として前回の現在速度をそのまま出力する。
【0025】 V(k)=V(k-1) ・・・(18) ステップ10においては、k回目の補間演算結果に従っ
て移動したときに占める補間点の位置座標Pa(k)、始点
からの距離L(k) を(19)式、(20)式、および、
(21)式に従って見積もる。ここで、nは(6)式で
表される2点間の方向ベクトル、△P(k) は位置座標の
変化量である。
て移動したときに占める補間点の位置座標Pa(k)、始点
からの距離L(k) を(19)式、(20)式、および、
(21)式に従って見積もる。ここで、nは(6)式で
表される2点間の方向ベクトル、△P(k) は位置座標の
変化量である。
【0026】 △P(k)=(V(k)+V(k-1))・ta/2 ・・・(19) Pa(k)=Pa(k-1)+△P(k)・n ・・・(20) L(k)=L(k-1)+△P(k) ・・・(21) つぎに、ステップ11に移行して、上記補間点に移動し
たと仮定した場合、その補間点から終点までの残りの距
離で減速して所定の終点速度Ve を実現できるか否かを
チェックするため、その位置と速度とに基づいて減速演
算を実行する。すなわち、(22)式と(23)式によ
り速度V(k) から終点速度Ve まで最大加速度amax で
減速するに要する減速時間Td と、減速に要する距離d
(k) とを求めるとともに、(24)式により残り移動距
離dL(k)を求める。ここで、Lは始点Pj から終点Pj+
1 に至る距離とする。
たと仮定した場合、その補間点から終点までの残りの距
離で減速して所定の終点速度Ve を実現できるか否かを
チェックするため、その位置と速度とに基づいて減速演
算を実行する。すなわち、(22)式と(23)式によ
り速度V(k) から終点速度Ve まで最大加速度amax で
減速するに要する減速時間Td と、減速に要する距離d
(k) とを求めるとともに、(24)式により残り移動距
離dL(k)を求める。ここで、Lは始点Pj から終点Pj+
1 に至る距離とする。
【0027】 Td=(V(k)−Ve)/amax ・・・(22) d(k)=(V(k)+Ve)・Td/2 ・・・(23) dL(k)=L−L(k) ・・・(24) ステップ12において、減速に必要な距離d(k) と、残
り移動距離dL(K) とを比較し、演算結果に従って実際
に加速移動したとき、減速に必要な距離が残っているか
否かをチェックする。減速に必要な距離d(k) が残り移
動距離dL(K)以上である場合は、その教示点に実際に
移動すると終点速度Ve を実現できないとしてステップ
16に移行する。また、距離d(k) が距離dL(K) より
小さい場合は、まだ加速移動する余地があるとしてステ
ップ13に移行する。ステップ13においては、減速に
要する減速時間Td と基本補間単位周期tu を比較し、
充分に加速したか否かをチェックする。Td がtu 以上
である場合は、充分に加速したとしてステップ16に移
行するが、Td がtu 未満である場合は、まだ加速でき
るとしてステップ14に移行し、演算結果が与える補間
点へ実際に移動するために、座標位置Pa(k)と加速時補
間周期ta から関節角の変化量を計算し、関節角を制御
するサーボ制御部へ出力する。つぎに、ステップ15に
おいては1回の補間演算と移動とが完了したので、補間
回数カウント値kに1を加算し、ステップ7へ戻ってつ
ぎの加速補間演算処理に移る。以上の処理を終点速度を
得るための減速処理の余地があってまだ加速処理が可能
な限り繰り返す。
り移動距離dL(K) とを比較し、演算結果に従って実際
に加速移動したとき、減速に必要な距離が残っているか
否かをチェックする。減速に必要な距離d(k) が残り移
動距離dL(K)以上である場合は、その教示点に実際に
移動すると終点速度Ve を実現できないとしてステップ
16に移行する。また、距離d(k) が距離dL(K) より
小さい場合は、まだ加速移動する余地があるとしてステ
ップ13に移行する。ステップ13においては、減速に
要する減速時間Td と基本補間単位周期tu を比較し、
充分に加速したか否かをチェックする。Td がtu 以上
である場合は、充分に加速したとしてステップ16に移
行するが、Td がtu 未満である場合は、まだ加速でき
るとしてステップ14に移行し、演算結果が与える補間
点へ実際に移動するために、座標位置Pa(k)と加速時補
間周期ta から関節角の変化量を計算し、関節角を制御
するサーボ制御部へ出力する。つぎに、ステップ15に
おいては1回の補間演算と移動とが完了したので、補間
回数カウント値kに1を加算し、ステップ7へ戻ってつ
ぎの加速補間演算処理に移る。以上の処理を終点速度を
得るための減速処理の余地があってまだ加速処理が可能
な限り繰り返す。
【0028】ステップ16からステップ22までが終点
速度Ve を実現するための減速補間演算処理の内容とな
る。ステップ16において、(27)式、(28)式に
より減速時補間回数Nd と減速時補間周期td を求め
る。さらに、ステップ17において(29)式から減速
時の加速度ad を求める。なお、減速を開始するときの
残り移動距離と減速に必要な時間はそれぞれ(25)式
と(26)式により与えられる。
速度Ve を実現するための減速補間演算処理の内容とな
る。ステップ16において、(27)式、(28)式に
より減速時補間回数Nd と減速時補間周期td を求め
る。さらに、ステップ17において(29)式から減速
時の加速度ad を求める。なお、減速を開始するときの
残り移動距離と減速に必要な時間はそれぞれ(25)式
と(26)式により与えられる。
【0029】 dL(k-1)=L−L(K-1) ・・・(25) Td=2dL/(V(k-1)+Ve) ・・・(26) Nd=[Td/tu] ・・・(27) td=Td/Nd ・・・(28) ad=(Ve−V(k-1))/Td ・・・(29) ここで、補間回数(k−1)の時点の現在速度V(k-1)
と移動距離L(k-1)を用いているのは、ステップ12、
ステップ13において補間回数k回の時点の移動を実行
すると現在速度から終点加速度へ変換するために必要な
距離が不足すると判断され、その前回の位置と速度から
減速を開始するためである。
と移動距離L(k-1)を用いているのは、ステップ12、
ステップ13において補間回数k回の時点の移動を実行
すると現在速度から終点加速度へ変換するために必要な
距離が不足すると判断され、その前回の位置と速度から
減速を開始するためである。
【0030】ステップ18において、減速補間開始時の
位置座標Pd(k)と、速度V(k) の初期値をそれぞれ(3
0)式と(31)式とで設定し、また補間回数のカウン
ト値kを(32)式により1に設定する。
位置座標Pd(k)と、速度V(k) の初期値をそれぞれ(3
0)式と(31)式とで設定し、また補間回数のカウン
ト値kを(32)式により1に設定する。
【0031】 Pd(0)=Pa(k-1) ・・・(30) V(0)=V(k-1) ・・・(31) k=1 ・・・(32) ステップ19において、補間回数のカウント値kが減速
時補間回数Nd より大となった場合は演算を終了する
が、そうでないときはステップ20に移行し、(33)
式に従って補間回数k時点の現在速度を求める。
時補間回数Nd より大となった場合は演算を終了する
が、そうでないときはステップ20に移行し、(33)
式に従って補間回数k時点の現在速度を求める。
【0032】 V(K)=V(K-1)+ad・td ・・・(33) つぎに、ステップ21に移行して、(34)式、(3
5)式に従って減速時の補間点位置座標Pa(k)を求め
る。
5)式に従って減速時の補間点位置座標Pa(k)を求め
る。
【0033】 dP(k)=(V(k)+V(k-1))・ta/2 ・・・(34) Pd(k)=Pd(k-1)+dP(k)・n ・・・(35) つぎに、ステップ22において、補間点座標位置Pd(k)
と減速時補間周期td から補間周期ごとの関節角の変化
量を計算し、関節角を制御するサーボ制御部へ出力す
る。つぎに、ステップ23において補間回数のカウント
値kを1増加させたのち、ステップ19に戻ってつぎの
補間演算に移行する。
と減速時補間周期td から補間周期ごとの関節角の変化
量を計算し、関節角を制御するサーボ制御部へ出力す
る。つぎに、ステップ23において補間回数のカウント
値kを1増加させたのち、ステップ19に戻ってつぎの
補間演算に移行する。
【0034】図3は本発明の補間方法を、折れ線上の教
示経路の屈折部を内周りする曲線と接続する直線経路部
に用いた場合のロボットの手先先端速度と移行時間の関
係を表している。図3(a)に示したように、折れ線の
屈折部を構成する2本の線分と内周りを行う円弧や放物
線などの曲線部分は、接線の方向が同一となるように接
続する。図3(b)に示したように前記線分上の補間軌
道生成に本発明の軌道補間方法を用いることにより、ロ
ボットの手先先端速度が接続点で連続して変化している
ことがわかる。
示経路の屈折部を内周りする曲線と接続する直線経路部
に用いた場合のロボットの手先先端速度と移行時間の関
係を表している。図3(a)に示したように、折れ線の
屈折部を構成する2本の線分と内周りを行う円弧や放物
線などの曲線部分は、接線の方向が同一となるように接
続する。図3(b)に示したように前記線分上の補間軌
道生成に本発明の軌道補間方法を用いることにより、ロ
ボットの手先先端速度が接続点で連続して変化している
ことがわかる。
【0035】以上のように本実施例のロボットの軌道の
補間方法によれば、隣接する2つの教示点の間を加速動
作と減速動作とを連結して直線補間演算することによ
り、所定の始点速度と終点速度とを実現して教示点の前
後で速度差を発生させず、かつ教示点間を速やかに移動
させることができる。また、各補間点の演算のすべてを
あらかじめの前演算処理で行うのでなく、ロボットの移
動とともに実行できる。
補間方法によれば、隣接する2つの教示点の間を加速動
作と減速動作とを連結して直線補間演算することによ
り、所定の始点速度と終点速度とを実現して教示点の前
後で速度差を発生させず、かつ教示点間を速やかに移動
させることができる。また、各補間点の演算のすべてを
あらかじめの前演算処理で行うのでなく、ロボットの移
動とともに実行できる。
【0036】(実施例2)以下、本発明のロボットの軌
道の補間装置の一実施例について説明する。図4は本実
施例の構成を示すブロック図である。本実施例の補間装
置は実施例1に示した補間方法に従って補間処理を実行
する。図において、1は教示点データ読み取り手段、2
は加速補間回数決定手段、3は加速演算処理手段4と減
速判断手段5とで構成される加速補間演算手段、6は減
速補間回数決定手段、7は減速補間演算手段、8は関節
角演算手段、9は加速区間演算手段、10は減速区間演
算手段である。
道の補間装置の一実施例について説明する。図4は本実
施例の構成を示すブロック図である。本実施例の補間装
置は実施例1に示した補間方法に従って補間処理を実行
する。図において、1は教示点データ読み取り手段、2
は加速補間回数決定手段、3は加速演算処理手段4と減
速判断手段5とで構成される加速補間演算手段、6は減
速補間回数決定手段、7は減速補間演算手段、8は関節
角演算手段、9は加速区間演算手段、10は減速区間演
算手段である。
【0037】上記構成要素の相互関係と動作について説
明する。教示点データ読み取り手段1は、連続した2つ
の教示点データpj、pj+1を入力して、補間演算の基本
設定値となる始点位置座標Ps と始点通過速度Vs と終
点位置座標Pe と終点速度Ve と指定教示点間を移動す
るときの最大速度Vmax と最大加速度amax とを読み取
り、つぎの教示点データが入力されるまで保存する。加
速補間回数決定手段2と加速補間演算手段3と減速補間
回数決定手段6と減速補間演算手段7とは、これらの基
本設定値を教示点データ読み取り手段1から自由に読み
取ることができる。
明する。教示点データ読み取り手段1は、連続した2つ
の教示点データpj、pj+1を入力して、補間演算の基本
設定値となる始点位置座標Ps と始点通過速度Vs と終
点位置座標Pe と終点速度Ve と指定教示点間を移動す
るときの最大速度Vmax と最大加速度amax とを読み取
り、つぎの教示点データが入力されるまで保存する。加
速補間回数決定手段2と加速補間演算手段3と減速補間
回数決定手段6と減速補間演算手段7とは、これらの基
本設定値を教示点データ読み取り手段1から自由に読み
取ることができる。
【0038】加速補間回数決定手段2は、教示点データ
読み取り手段1から最大速度Vmaxと始点通過速度Vs
と最大加速度amax とを入力し、それらに基づいて加速
時の補間周期ta と補間回数Na と加速時の加速度ac
を求め、加速補間演算手段3に出力する。このとき、加
速補間回数決定手段2は図2に示したフローチャートの
ステップ2からステップ5までの処理動作を実行する。
加速演算処理手段4は、教示点データ読み取り手段1か
ら開始点位置座標Ps と始点通過速度Vs と最大速度V
max と最大加速度amax とを入力するとともに、加速補
間回数決定手段2から補間周期ta と補間回数Na と加
速時の加速度ac を入力し、補間回数のカウント値がk
であるときの移動速度V(k) と加速時補間点位置座標P
a(k)と移動距離L(k) を演算により求め、減速判断手段
5に出力する。減速判断手段5は、入力した移動速度V
(k) と加速時補間点位置座標Pa(k)と移動距離L(k)
と、教示点データ読み取り手段1から入力した終点速度
Ve と最大加速度amax とに基づいて、終点速度Ve を
実現するために減速を開始しなければならないか否かを
判断する。減速を開始する必要ありと判断した場合、補
間回数のカウント値が(k−1)であるときの移動速度
V(k-1) と残り移動距離dL(k-1) を減速補間回数決定
手段6に出力し、移動速度V(k-1) と加速時補間点位置
座標Pa(k-1)とを減速補間演算手段7に出力する。ま
た、減速を開始する必要なしと判断した場合は、加速時
補間点位置座標Pa(k)と加速時補間周期ta を関節角演
算手段8に出力するとともに、補間回数のカウント値k
に1を加えて更新し、加速演算処理手段4に出力する。
上記の処理において、加速演算処理手段4の動作は図2
に示したフローチャートのステップ6からステップ10
までの処理動作と同一であり、また、減速判断手段5の
動作は図2に示したフローチャートのステップ11から
ステップ13までの処理動作およびステップ15の処理
内容と同一である。減速補間回数決定手段6は減速判断
手段5から前記加速時補間点位置座標Pa(k-1)と前記速
度V(k-1) と前記減速時補間周期td と前記減速補間回
数Nd と前記減速加速度ad を入力して減速時補間点位
置座標Pd(k)を演算により求め、前記減速時補間周期t
d とともに関節角演算手段8に出力する。このときの減
速補間演算手段7の動作は図2に示したフローチャート
のステップ18からステップ19までの処理動作および
ステップ23の処理動作と同一である。関節角演算手段
8は前記加速時補間点位置座標Pa(k) または前記減速
時補間点位置座標Pd(k) を入力し、各補間周期ごとの
関節角の変化量Jを演算により求め、外部に出力する。
読み取り手段1から最大速度Vmaxと始点通過速度Vs
と最大加速度amax とを入力し、それらに基づいて加速
時の補間周期ta と補間回数Na と加速時の加速度ac
を求め、加速補間演算手段3に出力する。このとき、加
速補間回数決定手段2は図2に示したフローチャートの
ステップ2からステップ5までの処理動作を実行する。
加速演算処理手段4は、教示点データ読み取り手段1か
ら開始点位置座標Ps と始点通過速度Vs と最大速度V
max と最大加速度amax とを入力するとともに、加速補
間回数決定手段2から補間周期ta と補間回数Na と加
速時の加速度ac を入力し、補間回数のカウント値がk
であるときの移動速度V(k) と加速時補間点位置座標P
a(k)と移動距離L(k) を演算により求め、減速判断手段
5に出力する。減速判断手段5は、入力した移動速度V
(k) と加速時補間点位置座標Pa(k)と移動距離L(k)
と、教示点データ読み取り手段1から入力した終点速度
Ve と最大加速度amax とに基づいて、終点速度Ve を
実現するために減速を開始しなければならないか否かを
判断する。減速を開始する必要ありと判断した場合、補
間回数のカウント値が(k−1)であるときの移動速度
V(k-1) と残り移動距離dL(k-1) を減速補間回数決定
手段6に出力し、移動速度V(k-1) と加速時補間点位置
座標Pa(k-1)とを減速補間演算手段7に出力する。ま
た、減速を開始する必要なしと判断した場合は、加速時
補間点位置座標Pa(k)と加速時補間周期ta を関節角演
算手段8に出力するとともに、補間回数のカウント値k
に1を加えて更新し、加速演算処理手段4に出力する。
上記の処理において、加速演算処理手段4の動作は図2
に示したフローチャートのステップ6からステップ10
までの処理動作と同一であり、また、減速判断手段5の
動作は図2に示したフローチャートのステップ11から
ステップ13までの処理動作およびステップ15の処理
内容と同一である。減速補間回数決定手段6は減速判断
手段5から前記加速時補間点位置座標Pa(k-1)と前記速
度V(k-1) と前記減速時補間周期td と前記減速補間回
数Nd と前記減速加速度ad を入力して減速時補間点位
置座標Pd(k)を演算により求め、前記減速時補間周期t
d とともに関節角演算手段8に出力する。このときの減
速補間演算手段7の動作は図2に示したフローチャート
のステップ18からステップ19までの処理動作および
ステップ23の処理動作と同一である。関節角演算手段
8は前記加速時補間点位置座標Pa(k) または前記減速
時補間点位置座標Pd(k) を入力し、各補間周期ごとの
関節角の変化量Jを演算により求め、外部に出力する。
【0039】以上のように本実施例のロボットの軌道の
補間装置によれば、実施例1に記載した補間方法により
教示点間を補間して直線移動させることにより、実施例
1同要の効果を得ることができる。
補間装置によれば、実施例1に記載した補間方法により
教示点間を補間して直線移動させることにより、実施例
1同要の効果を得ることができる。
【0040】なお、本実施例の各構成要素と動作はマイ
クロコンピュータのプログラム制御により実現できるこ
とはいうまでもない。
クロコンピュータのプログラム制御により実現できるこ
とはいうまでもない。
【0041】
【発明の効果】以上の実施例から明らかなように、本発
明は、教示点を通過する速度と、教示点間を通過すると
きに許容される最大速度および最大加速度とを有する教
示点データを用い、隣接する2つの教示点の一方を始
点、他方を終点として、前記始点から前記終点に至る間
を前記教示点データに従って直線軌道で補間するとき、
前記教示点データが与える始点速度で前記始点を出発
し、前記最大加速度で前記最大速度を限度に加速移動す
る加速区間と、前記最大加速度以下の可能な限り大きい
減速時加速度で減速して前記教示点データが与える終点
速度で前記終点に到達する減速区間とを連結するととも
に、加速区間および減速区間を1つ以上の補間区間で構
成し、前記始点を出発し、つぎの移動先の教示点を補間
演算して移動する動作を順次に実行するとき、つぎの補
間点における速度および前記終点までの残り距離とが前
記減速区間を実現できる点まで教示演算と加速移動とを
順次に実行して減速区間演算に移行し、前記加速区間の
終速度を初速度とし、終点までの距離と終点速度から決
まる加速度で減速して終点速度で終点に到達するように
補間点を移動ごとに演算し、また、前記加速区間演算に
おいて前記最大速度に達したときは前記最大速度により
補間および移動したのち減速区間演算に移行するように
した軌道補間方法および、上記の補間演算を実行する軌
道補間装置により、教示点の速度を所定の速度に設定し
て直線補間でき、教示点の前後で速度変化をなくし、振
動を発生させないようにできるとともに、加速移動と減
速移動とを用いることにより教示点間を移動する時間を
短縮することができる。
明は、教示点を通過する速度と、教示点間を通過すると
きに許容される最大速度および最大加速度とを有する教
示点データを用い、隣接する2つの教示点の一方を始
点、他方を終点として、前記始点から前記終点に至る間
を前記教示点データに従って直線軌道で補間するとき、
前記教示点データが与える始点速度で前記始点を出発
し、前記最大加速度で前記最大速度を限度に加速移動す
る加速区間と、前記最大加速度以下の可能な限り大きい
減速時加速度で減速して前記教示点データが与える終点
速度で前記終点に到達する減速区間とを連結するととも
に、加速区間および減速区間を1つ以上の補間区間で構
成し、前記始点を出発し、つぎの移動先の教示点を補間
演算して移動する動作を順次に実行するとき、つぎの補
間点における速度および前記終点までの残り距離とが前
記減速区間を実現できる点まで教示演算と加速移動とを
順次に実行して減速区間演算に移行し、前記加速区間の
終速度を初速度とし、終点までの距離と終点速度から決
まる加速度で減速して終点速度で終点に到達するように
補間点を移動ごとに演算し、また、前記加速区間演算に
おいて前記最大速度に達したときは前記最大速度により
補間および移動したのち減速区間演算に移行するように
した軌道補間方法および、上記の補間演算を実行する軌
道補間装置により、教示点の速度を所定の速度に設定し
て直線補間でき、教示点の前後で速度変化をなくし、振
動を発生させないようにできるとともに、加速移動と減
速移動とを用いることにより教示点間を移動する時間を
短縮することができる。
【図1】本発明のロボットの軌道の補間方法を説明する
ためのロボットの手首先端速度と経過時間との関係を示
す特性図
ためのロボットの手首先端速度と経過時間との関係を示
す特性図
【図2】本発明のロボットの軌道の補間方法の動作を示
すフローチャート
すフローチャート
【図3】折れ線の屈折部の曲線軌道に接続した直線軌道
の補間に本発明のロボットの軌道の補間方法を用いたと
きの、直線軌道と曲線軌道における速度を時間経過で示
す特性図
の補間に本発明のロボットの軌道の補間方法を用いたと
きの、直線軌道と曲線軌道における速度を時間経過で示
す特性図
【図4】本発明のロボットの軌道の補間装置の一実施例
の構成を示すブロック図
の構成を示すブロック図
Vmax 最大速度 ac 加速度 amax 最大加速度 ad 最大加速度に基づく減速時加速度 Vs 始点速度 Ve 終点速度 t 経過時間
Claims (7)
- 【請求項1】 教示点を通過する速度と、教示点間を通
過するときに許容される最大速度および最大加速度とを
有する教示点データを用い、隣接する2つの教示点の一
方を始点、他方を終点として、前記始点から前記終点に
至る間を前記教示点データに従って直線軌道で補間する
とき、前記教示点データが与える始点速度で前記始点を
出発し、前記最大加速度で前記最大速度を限度に加速移
動する加速区間と、前記最大加速度以下の可能な限り大
きい減速時加速度で減速して前記教示点データが与える
終点速度で前記終点に到達する減速区間とを連結すると
ともに、加速区間および減速区間を1つ以上の補間区間
で構成し、前記始点を出発し、つぎの移動先の教示点を
補間演算して移動する動作を順次に実行するとき、つぎ
の補間点における速度および前記終点までの残り距離と
が前記減速区間を実現できる点まで教示演算と加速移動
とを順次に実行して減速区間演算に移行し、前記加速区
間の終速度を初速度とし、終点までの距離と終点速度か
ら決まる加速度で減速して終点速度で終点に到達するよ
うに補間点を移動ごとに演算し、また、前記加速区間演
算において前記最大速度に達したときは前記最大速度に
より補間および移動したのち減速区間演算に移行するよ
うにしたロボットの軌道の補間方法。 - 【請求項2】 折れ線状の教示経路の屈折部の軌道を、
前記折れ線に接して内周りする曲線軌道と直線軌道との
接続で構成し、前記直線軌道を補間するとき、前記曲線
軌道との接続点を始点または終点とし、始点速度または
終点速度を前記曲線軌道の速度に設定するようにした請
求項1記載のロボットの軌道の補間方法。 - 【請求項3】 連続した2つの教示点データを入力し、
補間演算の開始点である始点の位置座標と始点速度と、
終了点である終点の位置座標と終点速度と、前記教示点
間を移動するときの最大速度および最大加速度を読み取
り、つぎの教示点データを入力するまで保存する教示点
データ読み取り手段と、前記始点を前記始点速度で出発
して、前記最大加速度により前記最大速度を限度に直線
加速移動するように補間点を移動ごとに演算する加速区
間演算手段と、前記加速区間の終速度を初速度とし、終
点までの残り区間を前記最大加速度に基づく加速度で減
速移動して前記終点速度で前記終点に到達するように補
間点を移動ごとに演算する減速区間演算手段と、前記加
速区間演算手段および減速区間演算手段が演算した補間
点データを入力してロボットをその教示点まで移動させ
る関節角度を演算する関節角演算手段とを備え、前記加
速区間演算手段は、つぎの移動先の補間点を演算し、そ
の点における速度と終点までの残り距離とが前記最大加
速度以下で減速して前記終点速度で前記終点に到達でき
る条件を満たすか否かを判断し、満たす場合はその補間
点のデータを前記関節角演算手段に出力し、満たさない
ときは現在の補間点の位置および速度を前記減速区間演
算手段に出力して演算を終了する手段であり、また、前
記減速区間演算手段は、前記加速区間演算手段から入力
した速度を初速度とし、終点までの距離と終点速度で決
まる加速度で減速移動して終点速度で終点に到達するよ
うに移動ごとに補間点を演算する手段であるロボットの
軌道の補間装置。 - 【請求項4】 加速区間演算手段は、始点速度から最大
加速度により最大速度まで加速するのに必要な時間を所
定の基本補間単位周期で除した値を基本にして加速時補
間回数を決定し、前記加速時補間回数と前記加速時間と
により加速時補間周期を決定する加速時補間回数決定手
段を備え、前記加速時補間周期と加速時補間回数とによ
り加速区間の補間演算を行うようにした請求項3記載の
ロボットの軌道の補間装置。 - 【請求項5】 加速区間演算手段は、加速時補間回数を
カウントし、そのカウント数が加速時補間回数に達する
までは加速補間演算処理を行い、前記カウント数が前記
補間回数に達した場合には最大速度で直線補間を行う加
速演算処理手段と、つぎの補間点における速度と終点ま
での残り移動距離とが最大加速度以下の可能なかぎり大
きい加速度で減速して終点速度で終点に到達できるか否
かを判定し、減速補間演算に移行するタイミングを決定
する減速判断手段とを備えた加速補間演算手段を備え、
加速区間の補間演算と終了とを処理するようにした請求
項3記載のロボットの軌道の補間装置。 - 【請求項6】 減速区間演算手段は、終点までの残り距
離において加速区間の終速度から減速して終点速度で終
点に減速して到達するに要する到達時間を所定の基本補
間単位周期で除した値を基本に減速時補間回数を決定
し、前記減速時補間回数と前記到達時間とにより減速時
補間周期を決定し、前記終速度と終点速度とで減速時加
速度を決定する減速時補間回数決定手段を備え、前記減
速時補間周期と、前記減速時補間回数と、前記減速時加
速度により減速補間点を演算するようにした請求項3記
載のロボットの軌道の補間装置。 - 【請求項7】 減速区間演算手段は、減速時補間回数を
カウントし、前記カウント数が減速時補間回数となるま
で減速補間演算処理を行う減速補間演算手段を備えた請
求項3記載のロボットの軌道の補間装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6007346A JPH07210233A (ja) | 1994-01-27 | 1994-01-27 | ロボットの軌道の補間方法と補間装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP6007346A JPH07210233A (ja) | 1994-01-27 | 1994-01-27 | ロボットの軌道の補間方法と補間装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH07210233A true JPH07210233A (ja) | 1995-08-11 |
Family
ID=11663395
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP6007346A Pending JPH07210233A (ja) | 1994-01-27 | 1994-01-27 | ロボットの軌道の補間方法と補間装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH07210233A (ja) |
Cited By (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2012049866A1 (ja) * | 2010-10-13 | 2012-04-19 | オムロン株式会社 | 制御装置、制御システムおよび制御方法 |
| JP2018037021A (ja) * | 2016-09-02 | 2018-03-08 | オムロン株式会社 | 制御装置および制御システム |
| CN109202894A (zh) * | 2017-07-03 | 2019-01-15 | 发那科株式会社 | 进行学习控制的机器人及其控制方法 |
| JP2019145816A (ja) * | 2011-09-02 | 2019-08-29 | ブルックス オートメーション インコーポレイテッド | 基板を搬入および搬出する方法ならびに基板搬送装置 |
| DE102017219199B4 (de) * | 2016-10-27 | 2020-11-05 | Kabushiki Kaisha Yaskawa Denki | Roboter-system, roboter-system-steuerverfahren, und aktions-befehl-erzeugungs-vorrichtung |
| CN114019914A (zh) * | 2021-10-29 | 2022-02-08 | 深圳数马电子技术有限公司 | 终点速度的校正方法、装置、计算机设备和存储介质 |
| CN114872035A (zh) * | 2020-10-16 | 2022-08-09 | 深圳市华成工业控制股份有限公司 | 一种局部减速控制方法、运动速度的规划方法、运动路径的规划方法和数据更新方法 |
| CN117193161A (zh) * | 2023-09-20 | 2023-12-08 | 苏州浩智工业控制技术有限公司 | 点位运动规划方法及系统 |
-
1994
- 1994-01-27 JP JP6007346A patent/JPH07210233A/ja active Pending
Cited By (14)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2012083982A (ja) * | 2010-10-13 | 2012-04-26 | Omron Corp | 制御装置、制御システムおよび制御方法 |
| US9606524B2 (en) | 2010-10-13 | 2017-03-28 | Omron Corporation | Control apparatus, control system and control method |
| WO2012049866A1 (ja) * | 2010-10-13 | 2012-04-19 | オムロン株式会社 | 制御装置、制御システムおよび制御方法 |
| JP2019145816A (ja) * | 2011-09-02 | 2019-08-29 | ブルックス オートメーション インコーポレイテッド | 基板を搬入および搬出する方法ならびに基板搬送装置 |
| JP2018037021A (ja) * | 2016-09-02 | 2018-03-08 | オムロン株式会社 | 制御装置および制御システム |
| DE102017219199B4 (de) * | 2016-10-27 | 2020-11-05 | Kabushiki Kaisha Yaskawa Denki | Roboter-system, roboter-system-steuerverfahren, und aktions-befehl-erzeugungs-vorrichtung |
| US11103993B2 (en) | 2016-10-27 | 2021-08-31 | Kabushiki Kaisha Yaskawa Denki | Robot system, robot system control method, and action command generation device |
| CN109202894B (zh) * | 2017-07-03 | 2020-06-16 | 发那科株式会社 | 进行学习控制的机器人及其控制方法 |
| CN109202894A (zh) * | 2017-07-03 | 2019-01-15 | 发那科株式会社 | 进行学习控制的机器人及其控制方法 |
| CN114872035A (zh) * | 2020-10-16 | 2022-08-09 | 深圳市华成工业控制股份有限公司 | 一种局部减速控制方法、运动速度的规划方法、运动路径的规划方法和数据更新方法 |
| CN114872035B (zh) * | 2020-10-16 | 2023-08-22 | 深圳市华成工业控制股份有限公司 | 运动速度和路径的规划方法及减速控制和数据更新的方法 |
| CN114019914A (zh) * | 2021-10-29 | 2022-02-08 | 深圳数马电子技术有限公司 | 终点速度的校正方法、装置、计算机设备和存储介质 |
| CN114019914B (zh) * | 2021-10-29 | 2024-02-13 | 深圳数马电子技术有限公司 | 终点速度的校正方法、装置、计算机设备和存储介质 |
| CN117193161A (zh) * | 2023-09-20 | 2023-12-08 | 苏州浩智工业控制技术有限公司 | 点位运动规划方法及系统 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4528632A (en) | Industrial articulated robot linear interpolation control device | |
| EP2022608A2 (en) | Improved blending algorithm for trajectory planning | |
| EP0130570B1 (en) | Method and apparatus for controlling a robot hand along a predetermined path | |
| CN111796558B (zh) | 多轴联动实时动态前瞻轨迹规划方法、装置及存储介质 | |
| CN111604905B (zh) | 关节轨迹规划的方法、装置、系统及存储介质 | |
| US5276383A (en) | Route interpolation method for robot | |
| JPH07210233A (ja) | ロボットの軌道の補間方法と補間装置 | |
| JP3204042B2 (ja) | ロボットの軌道の生成装置 | |
| JP4146549B2 (ja) | 軌跡制御方法及び軌跡制御方法を記録した記録媒体 | |
| CN116909263A (zh) | 路径生成方法以及机器人控制系统 | |
| JP2003076410A (ja) | 速度制御装置、速度制御方法およびその方法をコンピュータに実行させるプログラム | |
| JP2737725B2 (ja) | ロボット制御装置及び方法 | |
| JP2790643B2 (ja) | 数値制御装置 | |
| JPH0127443B2 (ja) | ||
| JP2014104558A (ja) | 制御装置 | |
| JPS634201B2 (ja) | ||
| JPH0764621A (ja) | ロボットの軌道補間装置 | |
| JP2000163114A (ja) | 補間曲線内加減速処理方法 | |
| JPS6284304A (ja) | 産業用ロボツトの軌跡補間装置 | |
| JPS58101303A (ja) | 自動位置制御装置の軌道補間方式 | |
| CN118763953B (zh) | 一种伺服控制实时位置规划方法及系统 | |
| CN114589695B (zh) | 一种机器人运动轨迹的转接方法、装置及存储介质 | |
| JP4118538B2 (ja) | 速度制御装置、速度制御方法およびその方法をコンピュータに実行させるプログラム | |
| KR102470393B1 (ko) | 스플라인 경로 생성 장치 | |
| JP2707729B2 (ja) | 産業用ロボットのウィービング装置 |