IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ファナック株式会社の特許一覧

<>
  • 特許-数値制御装置 図1
  • 特許-数値制御装置 図2
  • 特許-数値制御装置 図3
  • 特許-数値制御装置 図4
  • 特許-数値制御装置 図5
  • 特許-数値制御装置 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-04-14
(45)【発行日】2025-04-22
(54)【発明の名称】数値制御装置
(51)【国際特許分類】
   G05B 19/416 20060101AFI20250415BHJP
   G05B 19/4103 20060101ALI20250415BHJP
【FI】
G05B19/416 L
G05B19/4103 Z
【請求項の数】 2
(21)【出願番号】P 2023552476
(86)(22)【出願日】2021-10-06
(86)【国際出願番号】 JP2021036983
(87)【国際公開番号】W WO2023058153
(87)【国際公開日】2023-04-13
【審査請求日】2024-05-15
(73)【特許権者】
【識別番号】390008235
【氏名又は名称】ファナック株式会社
(74)【代理人】
【識別番号】100106002
【弁理士】
【氏名又は名称】正林 真之
(74)【代理人】
【識別番号】100165157
【弁理士】
【氏名又は名称】芝 哲央
(74)【代理人】
【識別番号】100160794
【弁理士】
【氏名又は名称】星野 寛明
(72)【発明者】
【氏名】八木 順
(72)【発明者】
【氏名】西村 竜太朗
【審査官】松浦 陽
(56)【参考文献】
【文献】特開平04-245307(JP,A)
【文献】特開昭54-130775(JP,A)
【文献】特開2016-081470(JP,A)
【文献】特開平06-289922(JP,A)
【文献】特開2001-092518(JP,A)
【文献】特開昭62-032508(JP,A)
【文献】特開2002-132349(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05B 19/18 - 19/416
(57)【特許請求の範囲】
【請求項1】
加工プログラムに含まれるブロックの残り移動量を算出する残り移動量算出部と、
前記ブロックの前記残り移動量と、指定された加速度で現在の指令速度からコーナ速度まで減速するのに必要な移動量と、の差を余り移動量として算出する余り移動量算出部と、
前記余り移動量と、前記現在の指令速度と、前記コーナ速度と、指定された前記加速度とに基づいて、前記現在の指令速度から前記コーナ速度まで減速する減速区間における補間回数で前記余り移動量を全て使用するための減速開始時の加速度調整量を、前記余り移動量が前記減速区間の最初の補間周期における前記加速度調整量を底辺とし残りの前記補間回数を高さとする三角形の面積と等しくなるとする関係から算出する調整量算出部と、
前記減速開始時において前記現在の指令速度を減速するための指定された前記加速度を前記加速度調整量により調整した第1の加速度を算出するとともに、前記第1の加速度で減速した後の指令速度から残りの前記補間回数で前記コーナ速度まで減速する第2の加速度を算出する加速度算出部と、
前記減速開始時に前記第1の加速度を指定して、残りの前記補間回数において前記第2の加速度を指定する補間前加減速処理部と、
を備える数値制御装置。
【請求項2】
前記余り移動量が、前記補間周期毎の移動量よりも小さいときに減速処理を実行する減速処理実行部と、
前記減速処理実行部によって実行され、前記補間周期毎に前記現在の指令速度から前記第1の加速度又は前記第2の加速度を減算して次の補間周期における指令速度を求める減速処理部と、を備える、請求項1に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、数値制御装置に関する。
【背景技術】
【0002】
数値制御装置は、加工プログラムのブロック毎の移動量を補間周期毎の移動量で分割して補間することで、工作機械の動作を制御している。その際、1ブロックの移動量を補間周期毎の移動量で分割していくと、余り移動量が生じる場合がある。
この点、設定された一定の加速度で減速させている途中で当該加速度による減速を一時中断することにより、余り移動量を生じさせない技術が知られている。例えば、特許文献1参照。
また、減速開始時の最初の補間周期において予め設定された一定の加速度を調整した加速度で減速させ、残りの補間周期において当該一定の加速度で減速させることで余り移動量を生じさせない技術が知られている。例えば、特許文献2参照。
【先行技術文献】
【特許文献】
【0003】
【文献】特開平6-289922号公報
【文献】特開2001-92518号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
図5は、特許文献1における減速処理の一例を示す図である。図6は、特許文献2における減速処理の一例を示す図である。
図5に示すように、例えば、指令速度Vからコーナ速度Vcまで減速する理想的なタイミング(破線で示す)が時刻taと時刻tbとの間にあるとしても、補間周期のタイミングである時刻taで実際の減速(一点鎖線で示す)を開始する。そこで、特許文献1では、実際の減速と理想的な減速との差、すなわち余り移動量を生じないようにするために、例えば、時刻tdの減速を一時中断する。しかしながら、減速の一時中断により、減速トルクが減速途中で変動するため、工作機械の駆動系における振動の原因となるという問題がある。
一方、特許文献2では、図6に示すように、減速開始時の最初の補間周期において予め設定された一定の加速度を調整した加速度で減速させ、以降の補間周期において、図5の場合と比べて減速中の全補間の速度を上昇させることで余り移動量を使用する。これにより、減速の一時中断は発生しないため、機械駆動系の振動は抑えられる。しかしながら、最終の補間周期の時刻tfにおいて、調整分だけコーナ速度Vcに対する偏差が発生するという問題がある。そして、当該偏差にはばらつきがあるため工作機械の調整が困難である。なお、図6の破線は、図5の特許文献1の減速のプロファイルを示す。
【0005】
そこで、減速中の挙動を一定に保ちつつ、コーナ速度に対する偏差なしで減速することが望まれている。
【課題を解決するための手段】
【0006】
本開示の数値制御装置の一態様は、加工プログラムに含まれるブロックの残り移動量を算出する残り移動量算出部と、前記ブロックの前記残り移動量と、指定された加速度で現在の指令速度からコーナ速度まで減速するのに必要な移動量と、の差を余り移動量として算出する余り移動量算出部と、前記余り移動量と、前記現在の指令速度と、前記コーナ速度と、指定された前記加速度とに基づいて、前記現在の指令速度から前記コーナ速度まで減速する減速区間における補間回数で前記余り移動量を全て使用するための減速開始時の加速度調整量を算出する調整量算出部と、前記減速開始時において前記現在の指令速度を減速するための指定された前記加速度を前記加速度調整量により調整した第1の加速度を算出するとともに、前記第1の加速度で減速した後の指令速度から残りの前記補間回数で前記コーナ速度まで減速する第2の加速度を算出する加速度算出部と、前記減速開始時に前記第1の加速度を指定して、残りの前記補間回数において前記第2の加速度を指定する補間前加減速処理部と、を備える。
【発明の効果】
【0007】
一態様によれば、減速中の挙動を一定に保ちつつ、コーナ速度に対する偏差なしで減速することができる。
【図面の簡単な説明】
【0008】
図1】一実施形態に係る数値制御装置の機能的構成例を示す機能ブロック図である。
図2】補間周期と指令速度との関係の一例を示す図である。
図3】調整量算出部の動作の説明の一例を示す図である。
図4】数値制御装置の加速度補正処理について説明するフローチャートである。
図5】特許文献1における減速処理の一例を示す図である。
図6】特許文献2における減速処理の一例を示す図である。
【発明を実施するための形態】
【0009】
数値制御装置の具体的な実施形態について、工作機械のサーボ軸等の駆動部を減速する場合を例示して説明する。なお、本発明は、駆動部を減速する場合に限定されず、例えば駆動部を加速する場合に対しても適用可能である。
【0010】
<一実施形態>
図1は、一実施形態に係る数値制御装置の機能的構成例を示す機能ブロック図である。
数値制御装置1は、当業者にとって公知の数値制御装置であり、図示しない接続インタフェースを介して図示しない工作機械と直接接続されてもよい。また、数値制御装置1は、LAN(Local Area Network)やインターネット等の図示しないネットワークを介して図示しない工作機械と接続されていてもよい。この場合、数値制御装置1は、かかる接続によって図示しない工作機械と通信を行うための図示しない通信部を備えてもよい。
数値制御装置1は、例えば、図示しないCAD/CAM装置等から取得した加工プログラムに基づいて動作指令を生成し、生成した動作指令を工作機械(図示しない)に送信する。これにより、数値制御装置1は、図示しない工作機械の動作を制御する。なお、図示しない工作機械がロボット等の場合、数値制御装置1は、ロボット制御装置等でもよい。
【0011】
図1に示すように、数値制御装置1は、制御部10を有する。また、制御部10は、補間前加減速処理部110、補間処理部120、及び駆動軸制御部130を有する。また、補間前加減速処理部110は、残り移動量算出部111、余り移動量算出部112、減速処理実行部113、減速処理部114、調整量算出部115、及び加速度算出部116を有する。
【0012】
制御部10は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、CMOS(Complementary Metal-Oxide-Semiconductor)メモリ等を有し、これらはバスを介して相互に通信可能に構成される、当業者にとって公知のものである。
CPUは数値制御装置1を全体的に制御するプロセッサである。CPUは、ROMに格納されたシステムプログラム及びアプリケーションプログラムを、バスを介して読み出し、システムプログラム及びアプリケーションプログラムに従って数値制御装置1全体を制御する。これにより、図1に示すように、制御部10が、補間前加減速処理部110、補間処理部120、及び駆動軸制御部130の機能を実現するように構成される。また、補間前加減速処理部110は、残り移動量算出部111、余り移動量算出部112、減速処理実行部113、減速処理部114、調整量算出部115、及び加速度算出部116の機能を実現するように構成される。RAMには一時的な計算データや表示データ等の各種データが格納される。また、CMOSメモリは図示しないバッテリでバックアップされ、数値制御装置1の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。
【0013】
残り移動量算出部111は、加工プログラムに含まれるブロックの残り移動量を算出する。
具体的には、例えば、補間周期Tが1ms/1補間の場合で、ブロックが「G01 X100. F6000」の場合、1000補間周期(1000T)の間に速度0.1mm/ms(=6000mm/min)でX軸方向に100mm移動する。
図2は、補間周期Tと指令速度Vとの関係の一例を示す図である。
この場合、1ブロックの移動量(100mm)は、式(1)のように表せる。
1ブロックの移動量=d_1+d_2+d_3+・・・+d_N (1)
d_1~d_Nは補間周期T毎の移動量を示し、上述の場合では0.1mmである。また、Nは、最後の補間周期Tを示し、上述の場合ではN=1000である。
そこで、残り移動量算出部111は、式(2)を用いて、バッファリングした補間周期T毎の移動量を加算することにより残り移動量Drを算出する(iは1以上の整数)。
Dr=d_i+d_(i+1)+d_(i+2)+・・・+d_N (2)
ここで、d_iは現在のブロックの補間周期Tの移動量を示し、d_Nは当該ブロックの最後の補間周期の移動量を示す。また、t0~tNは補間時刻を示す。
なお、以下の説明では、図2に示すように、N回目の補間後、工作機械(図示しない)へのショック等を考慮して、時刻tNから図5の一点鎖線で示す指定された加速度A[mm/ms/ms]でn回(例えば、5回)の補間周期Tの減速区間でコーナ速度Vcまで減速する場合を例示する。
【0014】
余り移動量算出部112は、残り移動量算出部111により算出されたブロックの残り移動量Drと、指定された加速度で現在の指令速度からコーナ速度まで減速するのに必要な移動量との差を、余り移動量として算出する。
具体的には、余り移動量算出部112は、式(3)を用いて、現在の指令速度V[mm/ms]からコーナ速度Vc[mm/ms]まで指定された加速度A[mm/ms/ms]で減速するのに必要な移動量Dc[mm]を算出する。
Dc=(V+Vc)×(n+1)/2 (3)
ここで、減速区間の補間回数n=(V-Vc)/(A×T)である。
余り移動量算出部112は、残り移動量算出部111により算出された残り移動量Drと、算出した移動量Dcと、式(4)と、を用いて余り移動量Ds[mm]を算出する。
Ds=Dr-Dc (4)
【0015】
減速処理実行部113は、例えば、補間周期T毎の移動量dを監視して、余り移動量算出部112により算出された余り移動量Dsが、補間周期毎の移動量dより小さいか否かを判定する。余り移動量Dsが補間周期Tの移動量dより小さい場合、後述する減速処理部114は減速処理を実行する。一方、余り移動量Dsが補間周期の移動量d以上の場合、減速処理実行部113は現在の指令速度Vを維持する。
【0016】
減速処理部114は、後述する加速度算出部116により算出された加速度を現在の指令速度Vから減算し、次の補間周期の速度V’を算出する。
【0017】
調整量算出部115は、余り移動量Dsと、現在の指令速度Vと、コーナ速度Vcと、指定された加速度Aとに基づいて、現在の指令速度Vからコーナ速度Vcまで減速する減速区間の補間回数nで余り移動量Dsを全て使用するための減速開始時の加速度調整量adjを算出する。
図3は、調整量算出部115の動作の説明の一例を示す図である。図3では、本実施形態に係る指令速度Vの減速を実線で示し、図5の指令速度Vの減速を破線で示す。また、本実施形態に係る指令速度Vの加速度(傾き)を破線で示し、図5の指令速度Vの加速度(傾き)を一点鎖線で示す。
図3の場合、現在の指令速度Vからコーナ速度Vcまでの減速区間は、補間回数nで時刻tNから時刻tN+n×Tの期間である。
この場合、減速開始時の最初の補間周期T(時刻tNから時刻tN+T)における加速度調整量adjは、余り移動量Dsが時刻tN+Tにおける加速度調整量adjを底辺とし時刻tN+Tから時刻tN+n×Tの間の補間回数(n-1)を高さとする三角形の面積と等しくなるとする、Ds=adj×(n-1)/2の関係から、式(5)が導出される。
adj=2×Ds/(n-1) (5)
調整量算出部115は、式(5)を用いて加速度調整量adjを算出する。
【0018】
加速度算出部116は、減速開始時の最初の補間周期(時刻tNから時刻tN+T)において現在の指令速度Vを減速するための指定された加速度Aを加速度調整量adjで調整した加速度A-adj(第1の加速度)を算出する。また、加速度算出部116は、加速度A-adjで減速した後の指令速度V-(A-adj)から残りの補間回数(n-1)でコーナ速度Vcまで減速する加速度A’ (第2の加速度)を、式(6)を用いて算出する。
A’=(V-(A-adj)-Vc)/(n-1) (6)
【0019】
補間前加減速処理部110は、加速度算出部116により算出された減速開始時の最初の補間周期Tの加速度をA-adjと指定することで、減速処理部114は、最初の補間周期Tにおいて現在の指令速度Vから指令速度V’(=V-(A-adj))まで減速させる。補間前加減速処理部110は、残りの補間回数(n-1)において式(6)の加速度A’を指定することで、減速処理部114は、残りの補間回数(n-1)において指令速度V-(A-adj)からコーナ速度Vcまで減速させる。
そうすることで、数値制御装置1は、図5の減速の一時中断をすることなく、かつ図6の偏差の発生を抑えることができる。
【0020】
補間処理部120は、例えば、加工プログラム及び補間前加減速処理部110からの指令速度に基づいて補間周期T毎に工作機械(図示しない)の主軸や工具等の経路に対して補間処理を行う。
【0021】
駆動軸制御部130は、例えば、補間処理部120による補間処理の結果に基づいて工作機械(図示しない)に含まれる駆動軸の制御を行う。
【0022】
<数値制御装置1の加速度補正処理>
次に、図4を参照しながら、数値制御装置1の加速度補正処理の流れを説明する。
図4は、数値制御装置1の加速度補間処理について説明するフローチャートである。ここで示すフローは、加工プログラムが実行される度に繰り返し実行される。
【0023】
ステップS1において、残り移動量算出部111は、式(2)を用いて、バッファリングした補間周期T毎の移動量を加算することにより残り移動量Drを算出する。
【0024】
ステップS2において、余り移動量算出部112は、ステップS1で算出されたブロックの残り移動量Drと、式(3)と、式(4)とを用いて余り移動量Dsを算出する。
【0025】
ステップS3において、減速処理実行部113は、ステップS2で算出された余り移動量Dsが、補間周期T毎の移動量dより小さいか否かを判定する。余り移動量Dsが補間周期の移動量dより小さい場合、処理はステップS4に進む。一方、余り移動量Dsが補間周期の移動量d以上の場合、減速処理実行部113は現在の指令速度Vを維持し、処理はステップS1に進む。
【0026】
ステップS4において、調整量算出部115は、式(5)を用いて加速度調整量adjを算出する。
【0027】
ステップS5において、加速度算出部116は、減速開始時の最初の補間周期Tにおいて現在の指令速度Vを減速するための指定された加速度Aを加速度調整量adjにより調整した加速度A-adjを算出する。
【0028】
ステップS6において、加速度算出部116は、加速度A-adjで減速した後の指令速度V-(A-adj)から残りの補間回数(n-1)でコーナ速度Vcまでの減速を行う加速度A’を、式(6)を用いて算出する。
【0029】
ステップS7において、補間前加減速処理部110は、減速区間の補間周期に応じて加速度を指定する。
【0030】
ステップS8において、減速処理部114は、ステップS7で指定された加速度で減速区間の補間周期毎の指令速度を算出する。
【0031】
ステップS9において、補間前加減速処理部110は、加工プログラムの次のブロックがあるか否かを判定する。次のブロックがある場合、処理はステップS1に戻る。一方、次のブロックがない場合、数値制御装置1の制御処理は終了する。
【0032】
以上により、一実施形態に係る数値制御装置1は、余り移動量Dsと、現在の指令速度Vと、コーナ速度Vcと、指定された加速度Aとに基づいて、現在の指令速度Vからコーナ速度Vcまで減速する減速区間の補間回数nで余り移動量Dsを全て使用するための減速開始時の加速度調整量adjを算出し、減速開始時の最初の補間周期において現在の指令速度Vを減速するための指定された加速度Aを加速度調整量adjにより調整した加速度A-adjを算出する。また、数値制御装置1は、加速度A-adjで減速した後の指令速度V-(A-adj)から残りの補間回数(n-1)でコーナ速度Vcまでの減速を行う加速度A’を算出する。これにより、数値制御装置1は、減速中の挙動を一定に保ちつつ、コーナ速度に対する偏差なしで減速することができる。
そして、数値制御装置1は、挙動が一定になることで、工作機械(図示しない)の駆動系のショックを軽減することができるとともに、偏差がないことにより駆動系の調整を容易にすることができる。また、数値制御装置1は、コーナ形状を一定に保つことができる。
【0033】
以上、一実施形態について説明したが、数値制御装置1は、上述の実施形態に限定されるものではなく、目的を達成できる範囲での変形、改良等を含む。
【0034】
<変形例>
上述の実施形態では、数値制御装置1は、現在の指令速度Vからコーナ速度Vcまで減速したが、これに限定されない。例えば、数値制御装置1は、現在の指令速度Vから所定の速度Va(Va>V)まで加速する場合についても適用してもよい。
【0035】
なお、一実施形態に係る数値制御装置1に含まれる各機能は、ハードウェア、ソフトウェア又はこれらの組み合わせによりそれぞれ実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータがプログラムを読み込んで実行することにより実現されることを意味する。
【0036】
プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(Non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(Tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM)を含む。また、プログラムは、様々なタイプの一時的なコンピュータ可読媒体(Transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は、無線通信路を介して、プログラムをコンピュータに供給できる。
【0037】
なお、記録媒体に記録されるプログラムを記述するステップは、その順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【0038】
以上を換言すると、本開示の数値制御装置は、次のような構成を有する各種各様の実施形態を取ることができる。
【0039】
(1)本開示の数値制御装置1は、加工プログラムに含まれるブロックの残り移動量を算出する残り移動量算出部111と、ブロックの残り移動量と、指定された加速度で現在の指令速度からコーナ速度まで減速するのに必要な移動量と、の差を余り移動量として算出する余り移動量算出部112と、余り移動量と、現在の指令速度と、コーナ速度と、指定された加速度とに基づいて、現在の指令速度からコーナ速度まで減速する減速区間における補間回数で余り移動量を全て使用するための減速開始時の加速度調整量を算出する調整量算出部115と、減速開始時において現在の指令速度を減速するための指定された加速度を加速度調整量により調整した第1の加速度を算出するとともに、第1の加速度で減速した後の指令速度から残りの補間回数で前記コーナ速度まで減速する第2の加速度を算出する加速度算出部116と、減速開始時に第1の加速度を指定して、残りの補間回数において第2の加速度を指定する補間前加減速処理部110と、を備える。
この数値制御装置1によれば、減速中の挙動を一定に保ちつつ、コーナ速度に対する偏差なしで減速することができる。
【0040】
(2) (1)に記載の数値制御装置1において、余り移動量が、補間周期毎の移動量よりも小さいときに減速処理を実行する減速処理実行部113と、減速処理実行部113によって実行され、補間周期毎に現在の指令速度から第1の加速度又は第2の加速度を減算して次の補間周期における指令速度を求める減速処理部と、を備えてもよい。
そうすることで、数値制御装置1は、減速処理を行うタイミングと補間周期毎の減速量とを最適化することができる。
【符号の説明】
【0041】
1 数値制御装置
10 制御部
110 補間前加減速処理部
111 残り移動量算出部
112 余り移動量算出部
113 減速処理実行部
114 減速処理部
115 調整量算出部
116 加速度算出部
120 補間処理部
130 駆動軸制御部
図1
図2
図3
図4
図5
図6