JP7444588B2 - 軌道生成装置、自動位置制御装置および軌道生成方法 - Google Patents

軌道生成装置、自動位置制御装置および軌道生成方法 Download PDF

Info

Publication number
JP7444588B2
JP7444588B2 JP2019212268A JP2019212268A JP7444588B2 JP 7444588 B2 JP7444588 B2 JP 7444588B2 JP 2019212268 A JP2019212268 A JP 2019212268A JP 2019212268 A JP2019212268 A JP 2019212268A JP 7444588 B2 JP7444588 B2 JP 7444588B2
Authority
JP
Japan
Prior art keywords
point
curve
respect
trajectory
points
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.)
Active
Application number
JP2019212268A
Other languages
English (en)
Other versions
JP2021086181A (ja
Inventor
学 平川
雅一 一之瀬
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2019212268A priority Critical patent/JP7444588B2/ja
Publication of JP2021086181A publication Critical patent/JP2021086181A/ja
Application granted granted Critical
Publication of JP7444588B2 publication Critical patent/JP7444588B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Numerical Control (AREA)
  • Manipulator (AREA)

Description

本発明は、軌道生成装置、自動位置制御装置および軌道生成方法に関するものである。
従来、数値制御(NC)工作機械または産業用ロボット等の分野において、ツールの通過点として与えられた離散的な点の間を補間することによって、ツールの軌道を生成する方法が知られている(例えば、特許文献1参照。)。
一般に、隣接する2点間の区間毎に補間曲線を算出し、補間曲線を連結することによって軌道が生成される。ツールが減速することなく通過点を通過するためには、補間曲線同士が通過点で滑らかに接続される必要がある。
特許文献1では、点P,Pm+1間の区間の補間曲線S(t)の算出において、隣接する区間の補間曲線との接続を考慮するために、隣接する区間の点Pm-1,Pm+2も使用している。具体的には、特許文献1では、3つの点Pm-1,P,Pm+1を通過する2次曲線と、3つの点P,Pm+1,Pm+2を通過する2次曲線とを導出し、点P,Pm+1での2次曲線の1次微係数および2次微係数に基づいて補間曲線S(t)を算出している。
特公平06-058603号公報
特許文献1では、前述の方法によって、補間曲線S(t)の1次微係数および2次微係数が、隣接する補間曲線Sm-1(t)の1次微係数および2次微係数と点Pにおいてそれぞれ連続するように、補間曲線S(t)を算出している。このような軌道によって、ツールの滑らかな動きを実現することができる。しかし、ツールの非常に高精度な位置制御の要求に応えるためには、軌道のさらなる改善が求められる。
本開示の一態様は、n個の点P,P,…,Pを通過する軌道を生成する軌道生成装置であって、第1の曲線 (u によって表され、i-1番目からi+2番目の4つの点Pi-1,P,Pi+1,Pi+2によって定義される、i番目の点Pとi+1番目の点Pi+1との間の第1の部分軌道と、第2の曲線 i+1 (u i+1 によって表され、i番目からi+3番目の4つの点P,Pi+1,Pi+2,Pi+3によって定義される、i+1番目の点Pi+1とi+2番目の点Pi+2との間の第2の部分軌道とを算出し、ただし、1≦i≦n-2であり、 は、点P と点P i+1 との間の補間の進捗を0から1で表す変数であり、u i+1 =u -1であり、点Pi+1での前記第1の曲線 (u に対する1階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する1階の導関数の値とが、相互に一致し、点Pi+1での前記第1の曲線 (u に対する2階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する2階の導関数の値とが、相互に一致し、点Pi+1での前記第1の曲線 (u に対する3階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する3階の導関数の値とが、相互に一致し、連続する3点P i-1 ,P ,P i+1 を通過する曲線の関数F (u )と、連続する3点P ,P i+1 ,P i+2 を通過する曲線を関数F i+1 (u i+1 )とを算出し、前記第1の曲線S (u )を下式(1)から算出する、軌道生成装置である。
(u )=(1-K(u ))×F (u )+K(u )×F i+1 (u i+1 )…(1)
ただし、K(u )は、u が0から1に変化するときにK(u )の値が0から1へ増加する関数であり、かつ、u =0でのK(u )のu に対する1階および2階の導関数の値ならびにu =1でのK(u )のu に対する1階および2階の導関数の値の全てが0である。
一実施形態に係る自動位置制御装置および軌道生成装置のブロック図である。 軌道生成方法を説明する図である。 関数K(u)の一例および比較例の関数f(u),g(u),h(u)のグラフである。
以下に、一実施形態に係る軌道生成装置、自動位置制御装置および軌道生成方法について図面を参照して説明する。
自動位置制御装置2は、制御対象の位置を制御するものである。図1に示されるように、制御対象4aの一例は、産業用ロボット4のロボットアームの先端、または、ロボットアームの先端に接続されたハンドまたはツール等のエンドエフェクタである。制御対象の他の例は、数値制御(NC)工作機械のツールである。したがって、自動位置制御装置2は、産業用ロボットを制御するロボット制御装置またはNC工作機械を制御する数値制御装置であり得る。
自動位置制御装置2は、図1に示されるように、点列として与えられる離散的なn個の点P,P,…,Pを通過する軌道を生成する軌道生成装置1と、軌道生成装置1によって生成された軌道に沿って制御対象4aを移動させる制御部3とを備える。制御対象4aがロボットアームの先端またはエンドエフェクタである場合、制御部3は、ロボットアームの動作を制御するロボット制御部である。
軌道生成装置1は、中央演算処理装置のようなプロセッサ1aと、RAM、ROMおよびその他の任意の記憶装置を有する記憶部1bとを有する。
記憶部1bには、n個の点P(i=1,2,3,…,n)の位置が記憶されている。点Pは、例えば、作業者によって設定された教示点である。2次元平面内で移動する制御対象4aの場合、点Pの位置は2次元座標(x,y)で表され、3次元空間内で移動する制御対象4aの場合、点Pの位置は3次元座標(x,y,z)で表される。
また、記憶部1bには、軌道生成プログラムが格納されている。軌道生成装置1による後述の計算は、プロセッサ1aが軌道生成プログラムに従って処理を実行することによって実現される。
次に、軌道生成装置1による軌道生成方法について説明する。
図2に示されるように、軌道生成装置1は、点列において隣接する2点P,Pi+1を通過り2点P,Pi+1間を補間する曲線Sを算出し、曲線Sによって表される2点P,Pi+1間の部分軌道を算出する。点Pは点列におけるi番目の点である。ここで、軌道生成装置1は、i-1番目からi+2番目の4つの点Pi-1,P,Pi+1,Pi+2に基づいて曲線Siを算出することによって、4つの点Pi-1,P,Pi+1,Pi+2によって定義される点P,Pi+1間の部分軌道を算出する。軌道生成装置1は、隣接する2点P,Pi+1間の区間毎に曲線Sおよび部分軌道を算出することによって、n-1個の曲線S,S,…,Sn-1とn-1個の部分軌道とを得る。
次に、軌道生成装置1は、n-1個の部分軌道を相互に連結することによって、n個の点P,P,…,Pを全て通過する軌道を生成する。
ここで、軌道生成装置1は、下記3つの条件を満たす曲線S(ただし、1≦i≦n-2)を算出する。すなわち、点Pi+1において、曲線(第1の曲線)S(u)および曲線(第2の曲線)Si+1(ui+1)の1階の導関数の値が相互に一致する。また、点Pi+1において、曲線S(u)および曲線Si+1(ui+1)の2階の導関数の値が相互に一致する。また、点Pi+1において、曲線S(u)および曲線Si+1(ui+1)の3階の導関数の値が相互に一致する。
曲線S(u)の1階、2階および3階の導関数の値は、部分軌道に沿って移動する制御対象4aの速度、加速度および加加速度をそれぞれ表す。したがって、軌道生成装置1によって生成された軌道に沿って移動する制御対象4aの位置、速度、加速度および加加速度は、部分軌道の接続点である点P,P,…,Pn-1の全てにおいて連続する。
次に、曲線S(u)の具体的な算出方法について説明する。
図2に示されるように、i=2,3,…,n-1について、連続する3点Pi-1,P,Pi+1を通過する曲線の関数F(u)を算出し、i=1について、2点P,Pを通る関数F(u)を算出する。uは、点Pと点Pi+1との間の補間の進捗を0から1の値で表す変数である。ただし、ui+1=u-1である。すなわち、点Pにおいてu=0であり、点Pi-1においてu=-1であり、点Pi+1においてu=1である。関数F(u)は、u=-1において点Pi-1を通過し、u=0において点Pを通過し、u=1において点Pi+1を通過する。
図2には、変数uを表わすu軸とxを表わすx軸とを用いて表現されるu-x平面上の点列P,P,…,Pが示されている。前記平面において、関数F(u)は、円弧、惰円弧および放物線の中から選択される2次曲線の関数である。関数F(u)は、他の2次曲線の関数、または3次以上の曲線の関数であってもよい。
このように、点列P,P,…,Pをx次元、y次元およびz次元に分解して考える場合、u-x平面上の点列P,P,…,Pと同様に、u-y平面上の点列P,P,…,Pについて関数F(u)が算出され、u-z平面上の点列P,P,…,Pについて関数F(u)が算出される。
次に、下式(1)から、S(u)を算出する。
(u)=(1-K(u))×F(u)+K(u)×Fi+1(ui+1)…(1)
K(u)は、下記条件1および条件2を満たす関数である。
(条件1)uが0から1に変化するとき、K(u)の値が0から1へ単調増加する。
(条件2)u=0でのK(u)の1階および2階の導関数の値と、u=1でのK(u)の1階および2階の導関数の値と、の全てが0である。
一例において、K(u)は、下式(2)によって定義される関数である。
K(u)=u(10-15u+6u) …(2)
したがって、K(u)の1階の導関数K’(u)および2階の導関数K’’(u)は、それぞれ下記のように表される。
K’(u)=30u(1-2u+u
K’’(u)=60(1-3u+2u
図3は、式(2)のK(u)のグラフと、比較例として3つの関数f(u),g(u),h(u)のグラフとを示している。関数f(u),g(u),h(u)は、u=0において0であり、u=1において1である。ただし、関数f(u),g(u),h(u)の1次または2次の導関数の値は、u=0,1において0にならない。
K(u)は、式(2)の5次の関数に限らず、6次以上の関数であってもよい。例えば、K(u)は、下式によって定義される7次の関数であってもよい。
K(u)=u(35-84u+70u-20u
式(2)のK(u)およびその導関数K’(u),K’’(u)のu=0,1での値は、下記の通りである。
K(0)=0
K(1)=1
K’(0)=K’(1)=K’’(0)=K’’(1)=0
また、F(u)およびFi-1(ui-1)は共に点Pを通過するので、F(0)=Fi-1(1)である。
したがって、点Pでの曲線S(u),Si-1(ui-1)およびこれらの導関数の値は、下記の通りである。
(0)=Si-1(1)
’(0)=Si-1’(1)
’’(0)=Si-1’’(1)
’’’(0)=Si-1’’’(1)
このように、本実施形態によれば、隣接する2つの部分軌道の接続点Pi+1において、曲線S(u),Si+1(ui+1)の1次の導関数の値が相互に一致し、曲線S(u),Si+1(ui+1)の2次の導関数の値が相互に一致する。さらに、接続点Pにおいて、曲線S(u),Si+1(ui+1)の3次の導関数の値も相互に一致する。すなわち、接続点Pにおいて、制御対象4aの位置、速度および加速度のみならず加加速度も連続する。これにより、接続点P付近での制御対象4aの位置制御の精度を向上することができる。
なお、軌道生成装置1は、記憶部1bに予め記憶されているn個の点P,P,…,Pの全てを必ずしも通過する必要は無く、記憶されている点Pの近傍に新たな点P’を必要に応じて作成し、点Pに代えて点P’を通過するように軌道を生成してもよい。
例えば、n個の点P,P,…,Pが教示点である場合、一部の教示点については制御対象4aが厳密に通過する必要が無いことがある。このような場合、例えば制御対象4aを滑らかな移動により最適な軌道を生成するために、教示点Pを近傍の点P’に変更して教示点Pの近傍を通過する軌道を生成してもよい。
1 軌道生成装置
2 自動位置制御装置
3 制御部
4a 制御対象
(u) 第1の曲線

Claims (6)

  1. n個の点P,P,…,Pを通過する軌道を生成する軌道生成装置であって、
    第1の曲線 (u によって表され、i-1番目からi+2番目の4つの点Pi-1,P,Pi+1,Pi+2によって定義される、i番目の点Pとi+1番目の点Pi+1との間の第1の部分軌道と、第2の曲線 i+1 (u i+1 によって表され、i番目からi+3番目の4つの点P,Pi+1,Pi+2,Pi+3によって定義される、i+1番目の点Pi+1とi+2番目の点Pi+2との間の第2の部分軌道とを算出し、ただし、1≦i≦n-2であり、 は、点P と点P i+1 との間の補間の進捗を0から1で表す変数であり、u i+1 =u -1であり、
    点Pi+1での前記第1の曲線 (u に対する1階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する1階の導関数の値とが、相互に一致し、
    点Pi+1での前記第1の曲線 (u に対する2階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する2階の導関数の値とが、相互に一致し、
    点Pi+1での前記第1の曲線 (u に対する3階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する3階の導関数の値とが、相互に一致し、
    連続する3点P i-1 ,P ,P i+1 を通過する曲線の関数F (u )と、連続する3点P ,P i+1 ,P i+2 を通過する曲線を関数F i+1 (u i+1 )とを算出し、
    前記第1の曲線S (u )を下式(1)から算出する、軌道生成装置。
    (u )=(1-K(u ))×F (u )+K(u )×F i+1 (u i+1 )…(1)
    ただし、K(u )は、u が0から1に変化するときにK(u )の値が0から1へ増加する関数であり、かつ、u =0でのK(u )のu に対する1階および2階の導関数の値ならびにu =1でのK(u )のu に対する1階および2階の導関数の値の全てが0である。
  2. K(u)は、下式(2)によって定義される関数である、請求項に記載の軌道生成装置。
    K(u)=u(10-15u+6u) …(2)
  3. (u)が、円弧、惰円弧および放物線の中から選択される2次曲線の関数である、請求項または請求項に記載の軌道生成装置。
  4. 制御対象の位置を制御する自動位置制御装置であって、
    請求項1から請求項のいずれかに記載の軌道生成装置と、
    該軌道生成装置によって生成された軌道に沿って前記制御対象を移動させる制御部と、を備える自動位置制御装置。
  5. 前記制御部が、産業用ロボットのロボットアームの動作を制御するロボット制御部であり、
    前記制御対象が、ロボットアームの先端、または、該ロボットアームの先端に接続されたエンドエフェクタである、請求項に記載の自動位置制御装置。
  6. n個の点P,P,…,Pを通過する軌道を生成する軌道生成方法であって、
    第1の曲線 (u によって表され、i-1番目からi+2番目の4つの点Pi-1,P,Pi+1,Pi+2によって定義される、i番目の点Pとi+1番目の点Pi+1との間の第1の部分軌道と、第2の曲線 i+1 (u i+1 によって表され、i番目からi+3番目の4つの点P,Pi+1,Pi+2,Pi+3によって定義される、i+1番目の点Pi+1とi+2番目の点Pi+2との間の第2の部分軌道とを算出し、ただし、1≦i≦n-2であり、 は、点P と点P i+1 との間の補間の進捗を0から1で表す変数であり、u i+1 =u -1であり、
    点Pi+1での前記第1の曲線 (u に対する1階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する1階の導関数の値とが、相互に一致し、
    点Pi+1での前記第1の曲線 (u に対する2階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する2階の導関数の値とが、相互に一致し、
    点Pi+1での前記第1の曲線 (u に対する3階の導関数の値と、点Pi+1での前記第2の曲線 i+1 (u i+1 i+1 に対する3階の導関数の値とが、相互に一致し、
    連続する3点P i-1 ,P ,P i+1 を通過する曲線の関数F (u )と、連続する3点P ,P i+1 ,P i+2 を通過する曲線を関数F i+1 (u i+1 )とを算出し、
    前記第1の曲線S (u )を下式(1)から算出する、軌道生成方法。
    (u )=(1-K(u ))×F (u )+K(u )×F i+1 (u i+1 )…(1)
    ただし、K(u )は、u が0から1に変化するときにK(u )の値が0から1へ増加する関数であり、かつ、u =0でのK(u )のu に対する1階および2階の導関数の値ならびにu =1でのK(u )のu に対する1階および2階の導関数の値の全てが0である。
JP2019212268A 2019-11-25 2019-11-25 軌道生成装置、自動位置制御装置および軌道生成方法 Active JP7444588B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019212268A JP7444588B2 (ja) 2019-11-25 2019-11-25 軌道生成装置、自動位置制御装置および軌道生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019212268A JP7444588B2 (ja) 2019-11-25 2019-11-25 軌道生成装置、自動位置制御装置および軌道生成方法

Publications (2)

Publication Number Publication Date
JP2021086181A JP2021086181A (ja) 2021-06-03
JP7444588B2 true JP7444588B2 (ja) 2024-03-06

Family

ID=76087670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019212268A Active JP7444588B2 (ja) 2019-11-25 2019-11-25 軌道生成装置、自動位置制御装置および軌道生成方法

Country Status (1)

Country Link
JP (1) JP7444588B2 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922606B1 (en) 1999-11-19 2005-07-26 Siemens Energy & Automation, Inc. Apparatus and method for smooth cornering in a motion control system
JP2016036895A (ja) 2014-08-11 2016-03-22 ファナック株式会社 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
JP2016055404A (ja) 2014-09-12 2016-04-21 キヤノン株式会社 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0658603B2 (ja) * 1986-05-30 1994-08-03 株式会社安川電機 自動機械における軌道の補間方法
JPH06250725A (ja) * 1993-02-23 1994-09-09 Nisshinbo Ind Inc 数値制御における加減速制御方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6922606B1 (en) 1999-11-19 2005-07-26 Siemens Energy & Automation, Inc. Apparatus and method for smooth cornering in a motion control system
JP2016036895A (ja) 2014-08-11 2016-03-22 ファナック株式会社 駆動軸のジャークを低下させるロボットプログラムを生成するロボットプログラム生成装置
JP2016055404A (ja) 2014-09-12 2016-04-21 キヤノン株式会社 軌道生成方法、軌道生成装置、ロボット装置、プログラム及び記録媒体

Also Published As

Publication number Publication date
JP2021086181A (ja) 2021-06-03

Similar Documents

Publication Publication Date Title
CN109551485B (zh) 运动控制方法、装置和系统及存储介质
JP5762625B2 (ja) 軌跡制御装置
KR20100129206A (ko) 매니퓰레이터를 제어하기 위한 방법 및 장치
JP6450732B2 (ja) 数値制御装置
JP5555838B2 (ja) 軌道生成方法および軌道生成装置
JP6006277B2 (ja) 産業用ロボットのプログラム修正装置及びプログラム修正方法
De Maeyer et al. Cartesian path planning for arc welding robots: Evaluation of the descartes algorithm
WO1996035980A1 (fr) Procede et dispositif d'interpolation d'une surface de forme libre et appareil correspondant
JP2009053926A (ja) 経路計画装置及び経路計画方法
WO2020179798A1 (ja) 加工プログラム変換装置、数値制御装置、加工プログラム変換方法および機械学習装置
JP7509880B2 (ja) 軌道生成装置および自動位置制御装置
KR102036837B1 (ko) 다관절 로봇의 탄성 변형 보상 제어 장치
JP6514273B2 (ja) 速度を表示するロボットシステム
JP7444588B2 (ja) 軌道生成装置、自動位置制御装置および軌道生成方法
JP2003241811A (ja) 産業用ロボットの経路計画方法及び経路計画装置
JP6057284B2 (ja) 多関節ロボット及び半導体ウェハ搬送装置
JP2009274180A (ja) ロボット動作計画方法及び装置
CN107290959B (zh) 一种基于位移等效的机器人笛卡尔空间速度优化方法
WO1994017461A1 (en) Apparatus for controlling weaving of robot
JP2014104558A (ja) 制御装置
JP4560191B2 (ja) 数値制御装置
WO2023149298A1 (ja) 軌道生成装置
JPH10149210A (ja) 位置決め制御系の指令作成方法
JP2002366208A (ja) 工作機械の自由曲線補間方法及び数値制御装置
Kanna et al. Optimized NURBS based G-code part program for high-speed CNC machining

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220914

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231010

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231024

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231215

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: 20240123

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240222

R150 Certificate of patent or registration of utility model

Ref document number: 7444588

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150