JP3886842B2 - Robot control device - Google Patents
Robot control device Download PDFInfo
- Publication number
- JP3886842B2 JP3886842B2 JP2002123472A JP2002123472A JP3886842B2 JP 3886842 B2 JP3886842 B2 JP 3886842B2 JP 2002123472 A JP2002123472 A JP 2002123472A JP 2002123472 A JP2002123472 A JP 2002123472A JP 3886842 B2 JP3886842 B2 JP 3886842B2
- Authority
- JP
- Japan
- Prior art keywords
- speed
- robot
- speed command
- straight line
- point
- 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
- Numerical Control (AREA)
- Manipulator (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、多関節型のロボットが特異点近傍を通過するロボットの制御装置の改良に関する。
【0002】
【従来の技術】
ロボットの制御点の軌跡が直線を描くように動作させる直線補間動作は、動作開始位置と目標位置の位置と姿勢の情報(以下、直交データという)をロボットの制御装置に予め記憶しておき、それら2つの位置の間を制御点が直線を描くようにロボットの制御周期毎に直交データを算出し、その直交データから座標変換により各関節軸の角度(以下、関節データという)を求め、該関節データに一致するように各軸のモータを制御することにより実現している。
【0003】
多関節型のロボットにおいては、直交データから関節データに座標変換する際、一意に関節データを求めることのできない特異点と呼ばれる位置が存在し、特異点又は特異点の近傍を通過する場合には、特定の関節軸において非常に大きな速度で回転しなければならないことが知られている。
そこで、補間動作中において、常に関節軸の速度指令を算出し、速度指令の増加率からロボットの制御点が特異点に近付いたか否かを判定し、近付いたと判断した場合、特異点近傍を通過できるような補間手段に処理を切り替えたり、特異点からの距離に応じて速度指令を補正して特異点近傍を通過させたりする手段が提案されている(特開平5−324044号公報)。
【0004】
【発明が解決しようとする課題】
しかしながら、上記のような技術的な手段は、補間動作中において、常に特異点近傍に対する判断処理、速度の補正処理が実行されている。このため、元々、特異点近傍を通過しない補間動作に対しては無駄な処理を実行しているので、補間動作の処理に時間が占有されることにより演算時間が増加する。したがって、迅速な制御が制約されるという問題点があった。
【0005】
本発明は、上記の課題を解決するためになされたもので、補間動作の実行前に特異点近傍を通過するか否かを判断し、通過する場合のみ補間動作において特異点近傍通過のための処理を実行するロボットの制御装置を提供することを目的とするものである。
【0006】
【課題を解決するための手段】
第1の発明に係るロボットの制御装置は、複数の関節軸を有する水平多関節型のロボットの制御装置において、前記ロボットの制御点を教示することにより、前記制御点の開始位置と目標位置を記憶する記憶手段と、前記ロボットが動作する前に、前記記憶手段から前記開始位置及び前記目標位置を読み出して、前記開始位置と前記目標位置とを結ぶ直線を求める演算手段と、前記ロボットの特異点の周りに設定された速度調整領域を、前記直線が通過するか否かを判断する第1の判断手段と、前記速度調整領域を前記直線が通過する場合、前記制御点から前記特異点までの距離に基づいて速度調整領域の通過を可能とする調整速度指令としての第1の速度指令を生成する第1の速度指令生成手段とを備えたことを特徴とするものである。
かかるロボットの制御装置によれば、直線補間動作を行う前に、第1の判断手段によりロボットの制御点が速度調整領域を通過するかどうか判断し、通過する場合には、制御点から特異点までの距離に基づいて第1の速度指令によりロボットの制御点が補間動作する。したがって、特異点近傍の速度調整領域を元々制御点が通過しない場合、特異点近傍を通過するための無駄な処理がロボットの動作中に実行されないので、演算の処理が円滑になるという効果がある。
【0007】
第2の発明に係るロボットの制御装置は、記憶手段から読み出した前記開始位置、目標位置に基づいて制御点を所定の速度で補間する第2の速度指令を生成する第2の速度指令生成手段と、第1の判断手段により直線が通過すると判断することにより、制御点の補間動作を実行しながら第1の速度指令と第2の速度指令を比較して低い方の速度指令を選択する選択手段とを備えたことを特徴とするものである。
かかるロボットの制御装置によれば、選択手段が第1の速度指令と第2の速度指令を比較して低い方の速度指令を選択して制御点を補間動作させる。したがって、ロボットの制御点がより円滑に速度調整領域を通過できるという効果がある。
【0008】
第3の発明に係るロボットの制御装置における第1の速度指令生成手段は、前記特異点から前記制御点までの距離をRとし、特異点の影響を受け速度調整の対象となる所定の関節軸の最高回転速度をΔθ1maxとし、前記直線補間の動作方向と水平方向の成す角をφとすると、前記第1の速度指令Vrcが下式となる
Vrc=R・Δθ1max/cosφ
ことを特徴とするものである。
かかるロボットの制御装置によれば、水平方向と併せて垂直方向の移動量も考慮するので、制御点が速度調整領域で水平方向に対して垂直方向に大きく動作する場合、水平方向のみ調整速度指令に対して、制御点の速度を適切に低下して速度調整領域を円滑に動作できるという効果がある。
【0009】
第4の発明に係るロボットの制御装置は、特異点の周りに設定されると共に、前記速度調整領域よりも狭い特異点領域を有し、前記ロボットが動作する前に、前記直線が該特異点領域を通過するか否かを判断する第2の判断手段と、前記第2の判断手段によって前記直線が特異点領域を通過すると判断された場合に、警報を発生する警報手段とを備えたことを特徴とするものである。
ロボットの制御点が特異点領域を通過すると判断した場合は、通常の直線補間では動作できないので、動作開始前に警告を発する。かかる警告に基づいて、例えば、制御点の開始位置、目標位置を変更したり、直線補間を関節補間に変更したりすることにより制御点が特異点を通過しないようにすることができるという効果がある。
【0010】
【発明の実施の形態】
実施の形態1.
本発明の一実施の形態を図1乃至図9によって説明する。図1において、多関節型のロボット1は、基柱3に設けられた上下方向に移動可能な直同軸J0と、回転可能な第1の関節J1と、回転可能な第2の関節J2と、第1の関節J1と第2の関節J2を連結させるアーム5と、先端に制御点Cpを有すると共に、第2の関節J2に連結されたアーム5と長さが等しいアーム7とから成っている。
【0011】
図1に示すような、アーム5とアーム7の長さが等しい3自由度の水平多関節型ロボットでは、図2のようにアーム5とアーム7が折り重なった位置が特異点一つとなることが知られており、図3に示すように、状態1から状態7の制御点Cpにおける動作速度を一定に保ち、図2の特異点を通過するように直線補間の動作を実行しようとすると、状態4から状態5に移動する際、第1の関節J1は瞬時に180度回転しなければならない。このように制御点Cpが特異点近傍を通過しようとすると不具合が生じるので、かかる不具合を除去する補間処理の実行手段を以下に説明する。
【0012】
図4において、補間処理手段は、教示により補間種類等を記憶した指令部10と、制御点Cpの補間動作が特異点近傍の特異点領域As又は、特異点領域Asよりも広い特異点速度調整領域Acを通過するか否かを判断する速度調整判断部14と、補間処理を成す補間処理部12と、速度調整判断部14が特異点領域Asを通過すると判断することにより警報を発生する警報部17と、算出された補間位置を各関節J0〜J2の位置指令に変換する座標変換部26と、座標変換部26からの指令に基づいて各関節J0〜J2のモータの位置を制御するサーボ制御部28とを備えている。
【0013】
指令部10は、補間指令を記憶した記憶手段としてのRAMから成っており、補間の種類を記憶した補間種類領域10aと、制御点Cpの動作すべき開始位置を記憶した開始位置領域10bと、制御点Cpの目標位置を記憶した目標位置領域10cとを有している。
補間処理部12には、指令部10からの補間指令に基づいて所望の第2の速度指令Vcを生成する第2の速度指令生成手段としての速度指令部13と、特異点領域As又は速度調整領域Acを通過するか否かを判断する第1及び第2の判断手段としての速度調整判断部14と、速度調整領域Ac、特異点領域As、調整速度指令Vrcを求める演算式を記憶した速度調整生成部16と、速度調整領域Acを通過すると判断した場合、速度調整領域Acの通過を可能とする第1の速度指令としての調整速度指令Vrcを生成する第1の速度指令生成手段としての速度調整指令部18と、速度調整領域Acを通過すると判断すると、制御点Cpの補間動作において、調整速度指令Vrcと速度指令Vcとを比較してVrc<Vcであれば、切換スイッチ22をa端子側に投入し、Vrc≧Vcであれば、切換スイッチ22をb端子側に投入する信号を発生する速度指令決定部19と、速度指令Vc又は調整速度指令Vrcに基づいて補間位置を生成する補間位置生成部24とを備えている。なお、速度指令決定部19及び切換スイッチ22により選択手段を成している。
【0014】
速度調整生成部16は、特異点から円形の領域であると共に、特異点領域Asよりも広い速度調整領域Acを記憶した速度調整領域16aと、特異点から円形の領域となる特異点領域Asを記憶した特異点領域16bと、制御点Cpが速度調整領域Acを通過する場合に調整速度指令Vrcを求める後述する所定の演算式が記憶された速度調整演算式領域16cとを有するRAMから成っている。
ここで、速度調整領域Acは、図1に示すロボットをX軸に沿って直線補間で水平動作させた場合、ロボットの制御点Cpが特異点の1つである第1の関節J1軸の位置に最も近付くのは、図5に示すように制御点CpがY軸上に達したときである。この達した瞬間における制御点Cpの速度を速度指令Vcとする。
ここで、図5に示すように第1の関節J1を中心とした半径Rの円を考え、第1の関節J1軸から距離R離れた位置において、第1の関節J1軸を回転することにより発生可能な最高速度Vrmax(m/sec)は、第1の関節J1軸の最高回転速度をΔθ1max(rad/sec)とすると、下式となる。なお、Y軸上では最高速度Vrmaxと速度指令Vcの方向が一致する。
Vrmax=R・Δθ1max ・・・・・・(1)
速度指令Vcに対する円形の速度調整領域Acを、特異点を中心に定め、その半径Rcは、(1)式を変形して下式となる。
Rc =Vc/Δθ1max ・・・・(2)
簡単のために、速度指令Vcを、ロボットの最高指令速度Vcmaxとした固定した値として上記(2)式に代入すると、半径Rcは下式となる。
Rc=Vcmax/Δθ1max ・・・・(3)
また、速度調整領域Acの内側に設定する特異点領域Asの半径Rsは、下記の関係がある。
0<Rs<Rc ・・・・(4)
この(4)式を満足する範囲で、半径Rsを大きな値にすると、ロボットの動作範囲が制限されるので、所定の範囲に設定される。半径Rsの値は、例えば2mmである。
【0015】
速度調整指令部18は、制御点Cpの軌跡として開始位置と目標位置の軌跡が速度調整領域Acを通過する場合、調整速度指令Vrcを発生する。
また、図6に示すように制御点Cpを斜めに直線補間動作する場合は、制御点Cpの軌跡に沿って速度指令Vcが生成される。速度指令Vcは、水平方向の動作速度Vhに対するものであるので、直線補間の動作方向と水平方向のなす角をφとすると、下式となる。
Vh =Vc・cosφ ・・・・(5)
この(5)式より、調整速度指令Vrcとすると、調整速度指令Vrcは、下式となり特異点からの制御点Cpまでの半径Rに比例する。
Vrc=R・Δθ1max/cosφ ・・・・(6)
【0016】
速度調整判断部14は、特異点領域As、速度調整領域Acを通過する補間か否かを判断するもので、図7に示すように開始位置P1s〜P5sと目標位置P1t〜P5tをそれぞれ結んだ直線L1〜L5を求め(演算手段)、直線L1〜L5が速度調整領域Acを通過するか否かを判断し、速度調整領域Acを通過しないと判断した場合、切換スイッチ22をb端子側に投入する。
【0017】
教示された制御点Cpの開始位置と目標位置のX座標とY座標は任意の値を取るため、開始位置と目標位置を結んだ直線が速度調整領域Acを通過するか否か判断しにくい。したがって、図7に示すようにX座標方向の移動量ΔXとY座標方向の移動量ΔYとの傾きαを求め、傾きαを用い、次の式により直線L1,〜L5を原点周りに−α回転させたX´,Y´を下式により求めて特異点領域As、速度調整領域Acを通過するか否かを判断する。
【0018】
【数1】
【0019】
このような座標変換することにより動作開始位置P1s´,P2s´,P3s´,P4s´,P5s´と目標位置P1t´,P2t´,P3t´,P4t´,P5t´をそれぞれ結んだ直線L1´,L2´,L3´,L4´,L5´が図8のようになる。
【0020】
速度調整判断部14は、直線L1´〜L5´が速度調整領域Ac、特異点領域Asを通過するか否かを以下のようにして判断する。
▲1▼.直線L1´のX座標値X1S,X1tが速度調整領域Acの半径Rcよりも大きい場合、すなわち、X1S,X1t>Rcの場合には、速度調整領域Acを通過しないと判断する。
▲2▼.直線L2´のY座標値Y2s,Y2tの積、すなわち、Y2s・Y2t≦0であれば、直線L2´がX軸を横切ると判断し、X座標値X2s,X2t<Rcの場合には、速度調整領域Acを通過すると判断する。
同様に、直線L3´のY座標値Y3s,Y3tの積、すなわち、Y3s・Y3t≦0であれば、直線L3´がX軸を横切りと判断し、X座標値X3s,X3t<Rsの場合には、特異点領域Asを通過すると判断する。
▲3▼.直線Lx´の座標値Xxs´,Yxs´,Xxt´,Yxt´が速度調整領域Acに存在する場合、すなわち、Lc1≦Rc 又はLc2≦Rcの場合には、直線Lx´が速度調整領域Acを通過すると判断する。例えば、直線L4´が該当する。
ここに、Lc1=(Xxs´2+Yxs´2)1 / 2
Lc2=(Xxt´2+Yxt´2)1 / 2
また、直線Lx´の座標値Xxs´,Yxs´,Xxt´,Yxt´が特異領域Asに存在する場合、すなわち、Lc1≦Rs 又はLc2≦Rsの場合には、直線Lx´が特異点領域Asを通過すると判断する。例えば、直線L5´が該当する。
【0021】
上記のように構成されたロボットの制御装置の動作を図1乃至図9によって説明する。まず、作業者は、補間種類として直線補間を補間種類領域10aに記憶し、制御点Cpを教示して開始位置P1s〜P5sを開始位置領域10bに記憶し、目標位置P1t〜P5tを目標位置領域10cに記憶する。速度生成部16の速度調整領域16aに速度調整領域Acを記憶し、特異点領域16bに特異点領域Asを記憶し、上記(6)式の速度調整の演算式を速度調整演算式領域16cに記憶する。
【0022】
速度調整判断部14は、指令部10の補間種類領域10aから直線補間を読み出し、開始位置領域10b、目標位置領域10cからそれぞれ開始位置P1s、目標位置P1tを読み出してX,Y座標の移動量ΔX,ΔYにより傾きαを求めることにより上記(7)式の演算により直線L1を原点周りに−α回転させた直線L1´を求め、直線L1´の位置P1s´,P1t´のX,Y座標値X1s´,X1t´,Y1s´,Y1t´を求める。速度調整判断部14は、X座標値X1s´>速度調整領域Acの半径Rcであるので、速度調整領域Acを通過しないと判断し、切換スイッチ22をb端子側に投入する。ロボットの動作を開始して、速度指令部13からの速度指令Vcにより補間位置生成部24、座標変換部26、サーボ制御部28を介して制御点Cpが直線補間動作する。
【0023】
また、速度調整判断部14は、上記のようにして開始位置P2s、目標位置P2tを読みして直線L2´を求め、直線L2´の位置P2s´,P2t´のX,Y座標値X2s´,X2t´,Y2s´,Y2t´を求める。速度調整判断部14は、Y座標値Y2s´とY2t´との積を求め、該積の値が負となるので、直線L2´がX軸を横切ると判断し、X座標値X1s´<速度調整領域Acになることを判断する。すなわち、直線L2´が速度調整領域Acを通過すると判断する。
ロボットの動作を開始し、補間動作において速度指令決定部19は、速度指令部13からの速度指令Vcと速度調整指令部18からの調整速度指令Vrcとを比較し、Vrc<Vcであれば、切換スイッチ22をa端子側に投入し、Vrc≧Vcであれば、切換スイッチ22をb端子側に投入することにより速度指令Vc、調整速度指令Vrcを適宜選択しながら補間位置生成部24、座標変換部26、サーボ制御部28を介して制御点Cpが直線補間する。
【0024】
また、速度調整判断部14は、上記のようにして開始位置P3s、目標位置P3tを読み出して直線L3´を求め、直線L3´の位置P3s´,P3t´のX,Y座標値X3s´,Y3s´,値X3t´,Y3t´を求める。速度調整判断部14は、Y座標値Y3s´とY3t´との積を求め、該積の値が負となるので、直線L2´がX軸を横切ると判断し、X座標値X3s´<特異点領域Asと判断する。すなわち、速度調整判断部14は、直線L3´が特異点領域Asを通過すると判断するので、警報部17から警報を発する。かかる警告に基づいて、例えば、制御点Cpの開始位置、目標位置を変更したり、直線補間を関節補間に変更したりすることにより制御点Cpが特異点を通過しないようにする。
【0025】
また、速度調整判断部14は、上記のようにして開始位置P4s、目標位置P4tを読み出して直線L4´を求め、直線L4´の位置P4s´,P4t´のX,Y座標値X4s´,Y4s´,値X4t´,Y4t´を求め、直線L4´の座標値X4s´,Y4s´が速度調整領域Acの半径Rcの範囲内となる。ロボットの動作を開始すると、上記の直線L2´のように制御点Cpが補間動作する。
【0026】
また、速度調整判断部14は、上記のようにして開始位置P5s、目標位置P5tを読みして直線L5´を求め、直線L5´の位置P5s´,P5t´のX,Y座標値X5s´,Y5s´,X5t´,Y5t´を求める。直線L5´の座標値X5s´,Y5s´が特異点領域Asの半径Rsの範囲内であるので、警報部17から警報を発する。
【0027】
上記実施の形態では、速度調整判断部14は、直線L1´〜L5´が速度調整領域Acを通過すると判断することにより、制御点Cpの補間動作を実行しながら速度指令決定部19が速度指令Vcと調整速度指令Vrcを比較して低い方の速度指令を選択して制御点Cpの補間動作を実行した。しかしながら、速度調整判断部14は、直線L1´〜L5´が速度調整領域Acを通過すると判断することにより、調整速度指令Vrcのみによって制御点Cpの補間動作を実行しても良い。
【図面の簡単な説明】
【図1】 本発明の一実施の形態を示す3自由度の水平多関節型ロボットの全体概念構成図である。
【図2】 図1に示すロボットのアームどうしが折り重なった状態を示す平面図である。
【図3】 図1に示すロボットが図2の特異点を直線補間で通過する際の水平アーム部の動きを表す図である。
【図4】 図1に示すロボットの制御点を補間処理させるブロック図である。
【図5】 図1に示すロボットの制御点が特異点に最も近付いたときの速度指令と、その位置においてJ1軸の回転により生成される速度を表す図である。
【図6】 図1に示すロボットの制御点が斜めに直線補間動作する場合の水平方向と垂直方向の速度成分を示す図である。
【図7】 図1に示すロボットの制御点の開始位置と目標位置を結ぶ直線と速度調整領域との関係を表す図である。
【図8】 図7に示す直線L1〜L4を原点周りに回転させてX軸の値を一定とした例を表した図である。
【図9】 図1に示すロボットの制御点の開始位置と目標位置を結ぶ直線が速度調整領域を通過するか否かを判断するために用いる図である。
【符号の説明】
10 指令部(RAM,記憶手段)、14 速度調整判断部(演算手段,第1及び第2の判断手段)、17 警報部、18 速度調整指令部(速度指令調整手段)。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an improvement in a robot control apparatus in which an articulated robot passes near a singular point.
[0002]
[Prior art]
In the linear interpolation operation for making the locus of the control point of the robot draw a straight line, information on the operation start position, the position of the target position and the posture (hereinafter referred to as orthogonal data) is stored in advance in the robot control device, Orthogonal data is calculated for each robot control cycle so that the control point draws a straight line between these two positions, and the angle of each joint axis (hereinafter referred to as joint data) is obtained by coordinate transformation from the orthogonal data. This is realized by controlling the motor of each axis so as to match the joint data.
[0003]
In a multi-joint type robot, when coordinates are converted from orthogonal data to joint data, there is a position called a singular point where joint data cannot be obtained uniquely, and when passing through a singular point or the vicinity of a singular point It is known that a particular joint axis must rotate at a very high speed.
Therefore, during the interpolation operation, the joint axis speed command is always calculated, and it is determined whether the control point of the robot has approached the singular point from the rate of increase of the speed command. Means have been proposed for switching the processing to such an interpolation means, or for correcting the speed command according to the distance from the singular point and passing the vicinity of the singular point (Japanese Patent Laid-Open No. 5-324044).
[0004]
[Problems to be solved by the invention]
However, in the technical means as described above, determination processing and speed correction processing for the vicinity of the singular point are always executed during the interpolation operation. For this reason, useless processing is originally executed for the interpolation operation that does not pass through the vicinity of the singular point, so that the computation time increases due to the time occupied by the interpolation operation processing. Therefore, there is a problem that quick control is restricted.
[0005]
The present invention has been made to solve the above-described problem, and determines whether or not to pass near the singular point before the execution of the interpolation operation. It is an object of the present invention to provide a control device for a robot that executes processing.
[0006]
[Means for Solving the Problems]
Control apparatus for a robot according to a first aspect of the present invention is the control device of the horizontal articulated robot having a plurality of joint axes, Ri by to teach the control point of the robot, the start position of the previous SL control points Storage means for storing a target position; calculation means for reading the start position and the target position from the storage means before the robot operates, and obtaining a straight line connecting the start position and the target position; First determination means for determining whether or not the straight line passes through a speed adjustment region set around a singular point of the robot, and when the straight line passes through the speed adjustment region, And a first speed command generating means for generating a first speed command as an adjusted speed command that allows passage through the speed adjustment region based on the distance to the singular point.
According to such a robot control device, before the linear interpolation operation is performed, the first determination means determines whether or not the robot control point passes the speed adjustment region. Based on the distance up to, the control point of the robot is interpolated by the first speed command. Therefore, if the control point does not originally pass through the speed adjustment region in the vicinity of the singular point, useless processing for passing through the vicinity of the singular point is not executed during the operation of the robot, so that the calculation process is smooth. .
[0007]
According to a second aspect of the present invention, there is provided a control apparatus for a robot, wherein a second speed command generating means for generating a second speed command for interpolating a control point at a predetermined speed based on the start position and the target position read from a storage means. And selecting the lower speed command by comparing the first speed command and the second speed command while executing the control point interpolation operation by determining that the straight line passes by the first determination means. Means.
According to such a robot control apparatus, the selection means compares the first speed command and the second speed command, selects the lower speed command, and interpolates the control points. Therefore, there is an effect that the control point of the robot can pass through the speed adjustment region more smoothly.
[0008]
The first speed command generating means in the robot control apparatus according to the third invention is such that the distance from the singular point to the control point is R, and a predetermined joint axis that is subject to speed adjustment under the influence of the singular point Is the maximum rotational speed of Δθ 1max and the angle between the linear interpolation operation direction and the horizontal direction is φ, the first speed command Vrc is expressed by the following equation: Vrc = R · Δθ 1max / cosφ
It is characterized by this.
According to such a robot control device, since the amount of movement in the vertical direction is also taken into account in the horizontal direction, when the control point moves largely in the vertical direction relative to the horizontal direction in the speed adjustment region, the adjustment speed command only in the horizontal direction. On the other hand, there is an effect that the speed adjustment region can be smoothly operated by appropriately reducing the speed of the control point.
[0009]
A robot control device according to a fourth aspect of the present invention is set around a singular point and has a singular point region narrower than the speed adjustment region, and before the robot operates, the straight line is the singular point. A second determination unit that determines whether or not the region passes; and an alarm unit that generates an alarm when the second determination unit determines that the straight line passes through the singular point region. It is characterized by.
If it is determined that the control point of the robot passes through the singular point region, it cannot be operated by normal linear interpolation, so a warning is issued before the operation starts. Based on such warning, for example, the control point can be prevented from passing through the singular point by changing the start position and the target position of the control point or changing the linear interpolation to the joint interpolation. is there.
[0010]
DETAILED DESCRIPTION OF THE INVENTION
An embodiment of the present invention will be described with reference to FIGS. In FIG. 1, an articulated
[0011]
In a three-degree-of-freedom horizontal articulated robot having the same lengths of the
[0012]
In FIG. 4, the interpolation processing means includes a command unit 10 that stores the interpolation type and the like by teaching, and the singularity region As near the singularity or the singularity velocity adjustment in which the interpolation operation of the control point Cp is wider than the singularity region As. A speed
[0013]
The command unit 10 includes a RAM as a storage unit that stores an interpolation command, an
The
[0014]
The speed
Here, when the robot shown in FIG. 1 is horizontally operated by linear interpolation along the X axis, the speed adjustment area Ac is the first joint J 1 axis whose robot control point Cp is one of the singular points. The position closest to the position is when the control point Cp reaches the Y axis as shown in FIG. The speed of the control point Cp at the moment when this is reached is defined as a speed command Vc.
Here, consider a circle of radius R around the first joint J 1 as shown in FIG. 5, at a position away distance R from the first joint J1 axis, for rotating the first joint J 1 axis maximum speed Vrmax (m / sec) can be generated by, when a maximum rotational speed of the first joint J 1 axis and Δθ 1max (rad / sec), the following equation. Note that the direction of the maximum speed Vrmax and the speed command Vc coincide on the Y axis.
Vrmax = R · Δθ 1max (1)
A circular speed adjustment region Ac with respect to the speed command Vc is determined with the singular point as the center, and the radius Rc is obtained by modifying the formula (1) as follows.
Rc = Vc / Δθ 1max (2)
For the sake of simplicity, if the speed command Vc is substituted into the above equation (2) as a fixed value with the maximum command velocity Vcmax of the robot, the radius Rc becomes the following equation.
Rc = Vcmax / Δθ 1max (3)
Further, the radius Rs of the singular point region As set inside the speed adjustment region Ac has the following relationship.
0 <Rs <Rc (4)
If the radius Rs is set to a large value within a range satisfying the expression (4), the robot operation range is limited, and thus the predetermined range is set. The value of the radius Rs is 2 mm, for example.
[0015]
The speed
Further, when the control point Cp is linearly interpolated obliquely as shown in FIG. 6, the speed command Vc is generated along the locus of the control point Cp. Since the speed command Vc is for the horizontal operation speed Vh, if the angle formed by the linear interpolation operation direction and the horizontal direction is φ, the following equation is obtained.
Vh = Vc · cosφ (5)
From this equation (5), if the adjustment speed command Vrc is used, the adjustment speed command Vrc is expressed by the following equation and is proportional to the radius R from the singular point to the control point Cp.
Vrc = R · Δθ 1max / cosφ (6)
[0016]
The speed
[0017]
Since the start position of the taught control point Cp and the X and Y coordinates of the target position take arbitrary values, it is difficult to determine whether or not a straight line connecting the start position and the target position passes through the speed adjustment region Ac. Accordingly, as shown in FIG. 7, the inclination α between the movement amount ΔX in the X coordinate direction and the movement amount ΔY in the Y coordinate direction is obtained, and the straight line L1,. The rotated X ′ and Y ′ are obtained by the following equation to determine whether or not the singular point region As and the speed adjustment region Ac are passed.
[0018]
[Expression 1]
[0019]
By such coordinate conversion, straight lines L1 'connecting the operation start positions P1s', P2s', P3s', P4s', P5s' and the target positions P1t', P2t ', P3t', P4t ', P5t', respectively. L2 ', L3', L4 ', and L5' are as shown in FIG.
[0020]
The speed
(1). When the X coordinate values X1S, X1t of the straight line L1 ′ are larger than the radius Rc of the speed adjustment area Ac, that is, when X1S, X1t> Rc, it is determined that the speed adjustment area Ac is not passed.
(2). If the product of the Y coordinate values Y2s and Y2t of the straight line L2 ′, that is, Y2s · Y2t ≦ 0, it is determined that the straight line L2 ′ crosses the X axis, and if the X coordinate values X2s and X2t <Rc, the speed It is determined that it passes through the adjustment area Ac.
Similarly, if the product of the Y coordinate values Y3s and Y3t of the straight line L3 ′, that is, Y3s · Y3t ≦ 0, it is determined that the straight line L3 ′ crosses the X axis, and the X coordinate values X3s and X3t <Rs. Is determined to pass through the singularity region As.
(3). When the coordinate values Xxs ′, Yxs ′, Xxt ′, and Yxt ′ of the straight line Lx ′ exist in the speed adjustment area Ac, that is, when Lc1 ≦ Rc or Lc2 ≦ Rc, the straight line Lx ′ has the speed adjustment area Ac. Judge that it will pass. For example, the straight line L4 ′ is applicable.
Here, Lc1 = (Xxs' 2 + Yxs' 2) 1/2
Lc2 = (Xxt' 2 + Yxt' 2 ) 1/2
Further, when the coordinate values Xxs ′, Yxs ′, Xxt ′, and Yxt ′ of the straight line Lx ′ are present in the singular region As, that is, when Lc1 ≦ Rs or Lc2 ≦ Rs, the straight line Lx ′ is the singular point region As. Judging to pass. For example, the straight line L5 ′ is applicable.
[0021]
The operation of the robot control apparatus configured as described above will be described with reference to FIGS. First, the operator stores linear interpolation as the interpolation type in the
[0022]
The speed
[0023]
Further, the speed
In the interpolation operation, the speed
[0024]
Further, the speed
[0025]
Further, the speed
[0026]
Further, the speed
[0027]
In the above embodiment, the speed
[Brief description of the drawings]
FIG. 1 is an overall conceptual configuration diagram of a three-degree-of-freedom horizontal articulated robot showing an embodiment of the present invention.
FIG. 2 is a plan view showing a state where arms of the robot shown in FIG. 1 are folded.
3 is a diagram showing the movement of the horizontal arm unit when the robot shown in FIG. 1 passes through the singular point of FIG. 2 by linear interpolation.
4 is a block diagram for interpolating control points of the robot shown in FIG.
FIG. 5 is a diagram showing a speed command when the control point of the robot shown in FIG. 1 is closest to a singular point and a speed generated by rotation of the J1 axis at that position.
6 is a diagram showing velocity components in the horizontal direction and the vertical direction when the control point of the robot shown in FIG. 1 performs a linear interpolation operation obliquely. FIG.
7 is a diagram showing a relationship between a straight line connecting a start position of a control point and a target position of the robot shown in FIG. 1 and a speed adjustment region.
8 is a diagram illustrating an example in which the value of the X axis is made constant by rotating the straight lines L1 to L4 shown in FIG. 7 around the origin.
9 is a diagram used to determine whether or not a straight line connecting a start position of a control point and a target position of the robot shown in FIG. 1 passes through a speed adjustment region.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 10 Command part (RAM, memory | storage means), 14 Speed adjustment judgment part (Calculation means, 1st and 2nd judgment means), 17 Alarm part, 18 Speed adjustment command part (Speed command adjustment means).
Claims (4)
前記ロボットの制御点を教示することにより、前記制御点の開始位置と目標位置を記憶する記憶手段と、
前記ロボットが動作する前に、前記記憶手段から前記開始位置及び前記目標位置を読み出して、前記開始位置と前記目標位置とを結ぶ直線を求める演算手段と、
前記ロボットの特異点の周りに設定された速度調整領域を、前記直線が通過するか否かを判断する第1の判断手段と、
前記速度調整領域を前記直線が通過する場合、前記制御点から前記特異点までの距離に基づいて速度調整領域の通過を可能とする調整速度指令としての第1の速度指令を生成する第1の速度指令生成手段と、
を備えたことを特徴とするロボットの制御装置。 In a control apparatus for a horizontal articulated robot having a plurality of joint axes,
Ri by to teach the control points of the robot, storage means for storing the starting position and the target position of the previous SL control point,
Before the robot operates, a calculation unit that reads the start position and the target position from the storage unit and obtains a straight line connecting the start position and the target position;
First determination means for determining whether or not the straight line passes through a speed adjustment region set around a singular point of the robot;
When the straight line passes through the speed adjustment region, a first speed command is generated as an adjustment speed command that allows passage through the speed adjustment region based on a distance from the control point to the singular point. Speed command generation means;
A robot control device comprising:
前記第1の判断手段により前記直線が通過すると判断することにより、前記制御点の補間動作を実行しながら前記第1の速度指令と前記第2の速度指令を比較して低い方の速度指令を選択する選択手段と、
を備えたことを特徴とする請求項1に記載のロボットの制御装置。 Read before Symbol start position from the storage means, a second speed command generating means for generating a second speed command for interpolating the control point at a predetermined speed based on the target position,
By determining that the straight line passes by the first determining means, the first speed command and the second speed command are compared while executing the interpolation operation of the control point, and the lower speed command is determined. A selection means to select;
The robot control device according to claim 1, further comprising:
Vrc=R・Δθ1max/cosφ
ことを特徴とする請求項1又は2に記載のロボットの制御装置。The first speed command generation means sets R as the distance from the singular point to the control point, and sets the maximum rotation speed of a predetermined joint axis that is subject to speed adjustment under the influence of the singular point as Δθ 1max. When the angle formed by the linear interpolation operation direction and the horizontal direction is φ, the first speed command Vrc is expressed by the following equation: Vrc = R · Δθ 1max / cosφ
The robot control device according to claim 1, wherein the control device is a robot.
前記第2の判断手段によって前記直線が特異点領域を通過すると判断された場合に、警報を発生する警報手段と、
を備えたことを特徴とする請求項1に記載のロボットの制御装置。A singularity area that is set around the singularity and that is narrower than the speed adjustment area, and determines whether or not the straight line passes through the singularity area before the robot operates. 2 judgment means;
Alarm means for generating an alarm when the second determination means determines that the straight line passes through the singularity area ;
The robot control device according to claim 1, further comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002123472A JP3886842B2 (en) | 2002-04-25 | 2002-04-25 | Robot control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002123472A JP3886842B2 (en) | 2002-04-25 | 2002-04-25 | Robot control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003311664A JP2003311664A (en) | 2003-11-05 |
JP3886842B2 true JP3886842B2 (en) | 2007-02-28 |
Family
ID=29538750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002123472A Expired - Fee Related JP3886842B2 (en) | 2002-04-25 | 2002-04-25 | Robot control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3886842B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4810582B2 (en) * | 2009-03-26 | 2011-11-09 | 株式会社東芝 | Mobile object image tracking apparatus and method |
JP6057284B2 (en) * | 2012-10-09 | 2017-01-11 | シンフォニアテクノロジー株式会社 | Articulated robot and semiconductor wafer transfer device |
JP6238628B2 (en) | 2013-08-06 | 2017-11-29 | キヤノン株式会社 | Robot device, robot control method, robot control program, and part manufacturing method using robot device |
WO2023162225A1 (en) * | 2022-02-28 | 2023-08-31 | ファナック株式会社 | Robot control device and multijoint robot |
CN114924529B (en) * | 2022-06-20 | 2024-06-18 | 九众九机器人有限公司 | Robot pairing control method and device, electronic equipment and storage medium |
-
2002
- 2002-04-25 JP JP2002123472A patent/JP3886842B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2003311664A (en) | 2003-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4243309B2 (en) | Robot arm control device | |
JPH0212504A (en) | Vision seam tracking method and apparatus for manipulator | |
JPH079606B2 (en) | Robot controller | |
JP2011062793A (en) | Control device for robot | |
JP3207409B2 (en) | Robot tool attitude control method | |
JP2010201592A (en) | Method for generating operation route for robot | |
JP3886842B2 (en) | Robot control device | |
JP5228783B2 (en) | Robot origin return device | |
JP5729226B2 (en) | Robot position and orientation interpolation method and robot control apparatus | |
WO1986001617A1 (en) | System for controlling posture of tool | |
JP2011056646A (en) | Method for controlling robot arm | |
JPH08154321A (en) | Remote control robot | |
KR20170135150A (en) | Welding robot system for working of curved block narrow range and control method thereof | |
JP5729052B2 (en) | Robot control device | |
JP2001318715A (en) | Teaching method and device for robot for welding | |
JP5382148B2 (en) | Robot motion control apparatus and motion control method thereof | |
WO2023162225A1 (en) | Robot control device and multijoint robot | |
JPH06236206A (en) | Control method for industrial robot mounted on turn table | |
JP2020019125A (en) | Robot control method | |
CN113892848B (en) | Overturning following track planning method, device and system for overturning object | |
JPH07141008A (en) | Successive control method for sensor orienting direction | |
JP5343725B2 (en) | Robot controller | |
JP7388870B2 (en) | Robot systems and control equipment | |
JPS6125210A (en) | Industrial joint robot | |
US20220258353A1 (en) | Calibration Method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20040707 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041206 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20060621 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060818 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060829 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061027 |
|
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: 20061121 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20061122 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3886842 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091201 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101201 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111201 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121201 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121201 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131201 Year of fee payment: 7 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |