JP2016206800A - 工具経路の曲線化方法および曲線化装置 - Google Patents

工具経路の曲線化方法および曲線化装置 Download PDF

Info

Publication number
JP2016206800A
JP2016206800A JP2015085338A JP2015085338A JP2016206800A JP 2016206800 A JP2016206800 A JP 2016206800A JP 2015085338 A JP2015085338 A JP 2015085338A JP 2015085338 A JP2015085338 A JP 2015085338A JP 2016206800 A JP2016206800 A JP 2016206800A
Authority
JP
Japan
Prior art keywords
curve
freedom
degree
tool path
partial
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
Application number
JP2015085338A
Other languages
English (en)
Inventor
徹 水野
Toru Mizuno
徹 水野
千葉 琢司
Takushi Chiba
琢司 千葉
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 JP2015085338A priority Critical patent/JP2016206800A/ja
Publication of JP2016206800A publication Critical patent/JP2016206800A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)

Abstract

【課題】曲線の形状を決める要素の数を、曲線生成の試行回数が少なく、その変動も小さくなるように決めることにより、従来よりも短い時間で所望の曲線を得る手段を提供する。
【解決手段】点列取得部20はNC指令解読部10に対し、必要とする点列データを要求して取得し、曲線生成部30へ渡す。曲線生成部30は部分点列から部分曲線を生成する。部分曲線の生成は、曲線の自由度をある初期値に設定してパラメトリック曲線を生成し、生成された曲線が条件を満たすか否かを判定して、条件を満たさない場合は自由度を増やして曲線を再生成するという手順を繰り返す。条件を満たす曲線が得られたところで部分曲線の生成が終了する。曲線自由度更新部40は、曲線生成の試行の各回において、生成する部分曲線の自由度を曲線生成部30へ渡す。
【選択図】図2

Description

本発明は、点列で与えられた工具経路を曲線化する方法および曲線化装置に関する。
数値制御装置において、なめらかな加工面を得ることと加工時間の短縮を目的として、点列で与えられた工具経路を曲線へ変換する手法が用いられる(特許文献1〜5参照)。曲線生成においてよく使われる手法は、点列の個々の点(指令点)との距離が所定のトレランス以下になるように曲線を生成するもので、点列の各点の近傍を通る曲線を求める方法(非特許文献1、2参照)に基づいて、試行を繰り返して所望の曲線を得ている。
すなわち、曲線をBスプライン曲線などのパラメトリック曲線とし、その形状を決める変数であるノットと制御点の数を与えて曲線を生成し、要求を満たす曲線でなければノットと制御点を増やして曲線を再生成するという手順を繰り返すことにより、最終的に所望の曲線を得るというやり方である。
曲線生成では、点列を部分点列に分割し、部分点列を曲線化して部分曲線を生成するという操作を繰り返す。個々の部分曲線はパラメトリック曲線で表わす。パラメトリック曲線として3次のBスプライン曲線を採用すると、部分曲線は、uを曲線のパラメータ、Ni,3を3次のBスプライン基底関数、Pi(Pに矢印付き)を制御点として、数1式に表される。
Figure 2016206800
曲線が満たすべき条件には、幾つかの考え方があるが、部分点列の各点が曲線から所定の距離(トレランス)以内にあるとするものが多い。すなわち、Qi(矢印付き)は部分点列の点(i=0,・・・,N)、εはトレランスとして、数2式を条件とする。
Figure 2016206800
試行的な曲線生成方法では、ノットの数と制御点の数の初期値を小さな値に設定し、数3式が最小になるように、制御点{Pi(Pに矢印)}を求める。
Figure 2016206800
求めた制御点を用いて数2式を評価し、満足されない時は、ノットの数と制御点の数を一つ増やして制御点を求め直すという処理を、数2式が満たされるまで繰り返す。
特開2013−171376号公報 特開2007−293478号公報 特開2006−309645号公報 特開2005−182437号公報 特開2004−078516号公報
Les Piegl, Wayne Tiler, The NURBS Book, Springer-Verlag,pp405-453 I.J.Schoenberg, Spline functions and the problem of graduation, Proceedings of the National Academy of Sciences of the U.S.A., 52 (1964)
従来の試行的な方法では、ノットと制御点の初期値を小さな値に設定し、一つずつ増やして行くという方式が採用されている。これは、部分点列の点の数が少ない場合や点の並びに規則性がある時に少ない数のノットと制御点で曲線が生成できることを考慮した結果であるが、通常、このような綺麗な点列は少なく、所望の曲線が得られるまでの試行回数は、小さな値からある程度大きな値までバラつくことが多い。
ノットと制御点の数が大きくなると、曲線生成に要する時間が増えるので、小さな初期値から出発して一つずつ増やす従来の方法では、曲線を得るまでの時間が長くなる。この結果、数値制御工作機械では、機械を駆動するための指令を生成するのに要する時間が長くなり、加工速度を上げられないという問題が生じる。また、点列によって曲線が決まるまでの試行回数のバラツキが大きく、実加工速度の変動が大きくなるという問題もある。
そこで、本発明の目的は、かかる曲線生成上の問題を解決するために、曲線の形状を決める要素の数を、曲線生成の試行回数が少なく、その変動も小さくなるように決めることにより、従来よりも短い時間で所望の曲線を得る方法および装置を提供することにある。
本発明は、点列で指令された工具経路から曲線を生成する工具経路の曲線化方法であって、前記曲線の形状を決める変数の数である曲線の自由度の初期値を与えると共に、2回目以降に生成する曲線の自由度を決める自由度決定ステップと、前記決められた自由度の曲線を生成する曲線生成ステップと、前記生成された曲線が条件を満たす曲線であるか否かを判定する判定ステップと、を備え、前記判定ステップにより、前記生成された曲線が条件を満たさないと判定された場合は、前記自由度決定ステップにおいて前記自由度を増やし(但し、自由度を1つずつ増加するのは含まない)、前記曲線生成ステップにより曲線を再生成し、前記再生成された曲線が条件を満たすまで繰り返すことを特徴とする。これにより、点列で与えられた加工経路を曲線化する時に、従来よりも短い時間で所望の曲線を得ることが可能になる。
また、本発明は、前記自由度の増やし方を、設定によって変更できるようにしたことを特徴とする。これにより、加工プログラムに合わせて、曲線を得る時間を短縮することが可能になる。
また、本発明は、前記自由度の増やし方を、自動的に調整できるようにしたことを特徴とする。これにより、加工プログラムに合わせて曲線を得る時間を短縮するための詳しい手順を知らなくても、曲線生成の効率を上げることが可能になる。
本発明は、さらに、上述した特徴を有する工具経路の曲線化方法を搭載した曲線化装置であることを特徴とする。
本発明により、曲線の形状を決める要素の数を、曲線生成の試行回数が少なく、その変動も小さくなるように決めることにより、従来よりも短い時間で所望の曲線を得る方法および装置を提供できる。
部分曲線の自由度の分布を示す図である。 工具経路の曲線化装置の構成を示す図である。 部分曲線生成のフローを示す図である。 自由度の増やし方を自動で調整するフローを示す図である。
以下、本発明の実施形態を図面と共に説明する。
本発明は、点列で与えられた工具経路を曲線化する方法であって、曲線の形状を決める変数の数である曲線の自由度を非一様に増やすことにより、短い時間で所望の曲線を生成する方法およびその方法を用いる曲線化装置に関する。
従来の試行的な方法では、ノットと制御点の初期値を小さな値に設定し、一つずつ増やして行くという方式が採用されている。これは、部分点列の点の数が少ない場合や点の並びに規則性がある時に少ない数のノットと制御点で曲線が生成できることを考慮した結果であるが、通常、このような綺麗な点列は少なく、所望の曲線が得られるまでの試行回数は、小さな値からある程度大きな値までバラつくことが多い。
ノットと制御点の数が大きくなると、曲線生成に要する時間が増えるので、小さな初期値から出発して一つずつ増やす従来の方法では、曲線を得るまでの時間が長くなる。この結果、数値制御工作機械では、機械を駆動するための指令を生成するのに要する時間が長くなり、加工速度を上げられないという問題が生じる。また、点列によって曲線が決まるまでの試行回数のバラツキが大きく、実加工速度の変動が大きくなるという問題もある。
本発明の目的は、かかる曲線生成上の問題を解決するために、曲線の形状を決める要素の数を、曲線生成の試行回数が少なく、その変動も小さくなるように決めることにより、従来よりも短い時間で所望の曲線を得る手段を提供することにある。
以下では、パラメトリック曲線を3次のBスプライン曲線として、制御点の数の増やし方を工夫することにより、従来よりも短い時間で曲線を生成できることを示すが、ここで述べる方法は、パラメトリック曲線の種類や曲線が満たすべき条件によらず、試行的な曲線生成方法であれば適用できる。
曲線生成では、制御点の幾つかは境界条件で決まる。境界条件の指定の仕方は様々であるが、曲線が点列の端点を通ること、および、端点での1階微分を指定すると、制御点の中の4つは決まる。残りの制御点は、曲線の形状を調整するために自由に動かすことができるので、その数を曲線の自由度と呼ぶ。
従来の曲線生成方法では、自由度の初期値を0とし、一つずつ増やしていた。
このやり方で、自由度をnまで増加させた時に所望の曲線が得られたとする。この時の曲線が決まるまでの試行回数はnであるが(初回の自由度0の曲線生成は除く)を、自由度を0→n→・・・→n(n≦n)と跳びとびに増やす(跳び石法と呼ぶ)と、より少ないm回で曲線が得られる。曲線が決まるまでの自由度は部分曲線ごとに異なるが、自由度の増やし方は共通にして跳び石法を適用すると、どの部分曲線についても、試行回数を従来よりも少なく出来る。
一つの点列について、部分曲線の自由度は図1のような分布を示すので、曲線が決まるまでの演算時間は、
自由度の増やし方:0→n→n→n→・・・
m :従来の方法による自由度iの最大値
t(i) :自由度iの曲線を生成するのに要する時間
f(i) :自由度iの部分曲線の数
T:従来の方法による演算時間
T(バー):跳び石法による演算時間
とすると、数4式、数5式で表される。
Figure 2016206800
Figure 2016206800
ここでは、両者(数4式と数5式)の比較を容易にするため、跳び石法においても、自由度0から始めているが、初期値を他の値にしてもよい。
T(バー)の値は、自由度の増やし方と分布f(i)によって変わるが、少ない試行回数で求まる曲線が多い(iの小さいところに分布が集中している)場合を除き、一般に、T(バー)<Tとなる自由度の増やし方を決めることができる。
簡単なケースとして、2回目以降は自由度を一つずつ増やすとすると、数4式と数5式はそれぞれ数6式と数7式と表せる。
Figure 2016206800
Figure 2016206800
であり、t(j)は正値を取るから、数7式の右辺の第2項以降の各項は数7式の対応する項よりも大きい。したがって、数8式であれば、
Figure 2016206800
T(バー)<Tである。
自由度が大きいほど曲線を生成するのに多くの時間を要するので、t(j)はjの単調増加関数であり、数9式を満たすJが存在する。
Figure 2016206800
Figure 2016206800
数10式の右辺の第1項は負、第2項は正である。
両者の和の正負は分布f(i)によるが、分布がiの小さいところに集中している場合を除いて、n1を適当に選ぶことによりこれを正の値にすることができるので、T(バー)<Tが成り立つ。
分布がiの小さいところに集中している場合は、跳び石法によって演算時間は削減されず、逆に増えることもある。しかし、この場合は、少ない試行回数で部分曲線が決まること、および、曲線の自由度が小さいので処理時間自体も小さい値であることにより、この時間増加は問題ではない。したがって、一般に、曲線の自由度を跳びとびに増やすという手法は、曲線生成に要する時間の削減に有効である。
自由度の増やし方は、予め決めた設定値を記憶しておき、それを読み出して使う。部分曲線の生成に要する時間を最小にする自由度の増やし方は、一般に、部分点列ごとに異なるが、平均的によい結果を与えるものを採用する。
この設定値を決める第一の方法は、実験によって決めるものである。まず、自由度を一つずつ増やす従来の方法でいくつかのサンプル加工プログラムを実行して自由度の分布データと曲線生成に要する時間を採取し、次に、分布データに基づいて自由度の増やし方を複数用意し、曲線生成に要するそれぞれの時間を採取する。最も、短い時間を与える増やし方を採用する。
設定値を決める第二の方法は、適切な増やし方を自動的に求めるものである。第一の方法で決めた設定値は標準的な加工プログラムで決めたもので、実際に使う加工プログラムを用いてこれを調整するものである。まず、f(i)は、実際に使う加工プログラムから適当なサンプルを選んで、従来の方法で実行して求める。次に、第一の方法による設定値(これは予め与えられている)を初期値として、最初の数回の値、例えば1回目の値n1,2回目の値n2,3回目の値n2を初期値のまわりで少し変化させて曲線生成時間のデータをとり、最も短い時間を与える増やし方を採用する。曲線生成時間は、数5式により求める。t(i)は加工プログラムには依存しないので、予め測定した値を用いればよい。
図2は本発明の一実施形態を示すブロック図である。工具経路曲線化装置1は、NC指令解読部10、点列取得部20、曲線生成部30、曲線自由度更新部40、曲線出力部50を含む。
NC指令解読部10は数値制御装置に搭載されるNC指令解読部と同じもので、NC指令2(加工プログラム)を解読し、工具経路を構成する点列の点列データを取り出す。点列データは工具経路上の点の位置を表わすデータで、5軸加工の場合は位置に加えて工具の向きを表わすデータも含む。
点列取得部20はNC指令解読部10に対し、必要とする点列データを要求して取得する。所定の数Nの点のデータを取得することを基本とし、取得された点列(部分点列)を曲線生成部30へ渡す。
曲線生成部30は部分点列から部分曲線を生成する。部分曲線は部分点列の始点と終点を通り、その他の点の近傍を通るパラメトリック曲線である。部分曲線の生成は、曲線の自由度をある初期値に設定してパラメトリック曲線を生成し、生成された曲線が条件を満たすか否かを判定して、条件を満たさない場合は自由度を増やして曲線を再生成するという手順を繰り返す。条件を満たす曲線が得られたところで部分曲線の生成が終了する。曲線自由度更新部40は、曲線生成の試行の各回において、生成する部分曲線の自由度を曲線生成部30へ渡す。
本発明の目的は、部分曲線が確定するまでの演算時間を削減することにあり、部分点列の取り出し方、部分曲線が満たすべき条件、パラメトリック曲線の種類などによらず、適用できるものである。そこで、これらについてはその詳細を述べることは省略して、従来の方法、すなわち、パラメトリック曲線を3次のBスプライン曲線、曲線が満たすべき条件を「部分点列の各点が曲線からある距離以内にあること」とする。曲線の自由度を更新する方法を図3のフローチャートに従って説明する。
ステップSA100: ノットの数と制御点の数を初期値に設定する。3次Bスプライン曲線を使用し、自由度の初期値を0とするので、ノットの数を8、また、制御点の数を4とする。試行回数カウンタを0に設定する。
ステップSA101: 与えられた自由度の部分曲線を生成する。
ステップSA102: 部分点列の各点について、生成した部分曲線との距離dが予め設定したトレランスε以下であるか否かを判定する。全ての点についてd≦εであれば、部分曲線が求まったので処理を終了する。そうでなければ、ステップSA103へ進む。
ステップSA103; 試行回数カウンタの値を1増やし、曲線自由度更新部から試行回数に対応したノットの数と制御点の数を取得して、ステップSA101へ戻る。
次に、本発明の特徴である自由度の増やし方を自動で決める方法の手順を、図4のフローチャートに従って説明する。
ステップSB100: 自由度の増やし方を決めるために用いる加工プログラムを選択する。複数の加工プログラムを選択してもよい。
ステップSB101: 選択された加工プログラムの各々について、以下の2つの処理を行い、得られたデータを記憶する。
1) 自由度を一つずつ増やすやり方で曲線を生成し、自由度iの部分曲線の数の分布f(i)を求める。
2) 予め設定されている自由度の増やし方(基準値)で曲線を生成し、各加工プログラムで曲線生成に要する時間Tk(kはプログラムを識別するインデックス)を、f(i)と予め求めてあるt(i)を用いて数5式より求める。1回目〜3回目の試行の自由度の修正値の識別子jを1に設定してステップSB102へ進む。
ステップSB102: 自由度をjで指定された値にして曲線を生成し、各加工プログラムで曲線生成に要する時間Tt j kを数5式より求める。
ステップSB103: 自由度の修正値のすべての組み合わせをテストしたか否かを判定する。修正する自由度を、基準値、基準値±ずれ量の3通りに振る場合は、1回目〜3回目の試行の自由度を修正するので全部で9通りの組み合わせがあるが、そのうちの一つは基準値の組み合わせなので、調べるべきケースは8通りである。
テストが終了していれば、ステップSB105へ、終了していない場合は、ステップSB104へ進む。
ステップSB104: jを1増やして、ステップSB102へ戻る。
ステップSB105: 自由度の修正値の各組み合わせについて、生成時間の改善率Rj,kを数11式により求める。
Figure 2016206800
各加工プログラムに対する改善率の和を数12式により求める。
Figure 2016206800
その最大値を与える修正値の組み合わせに、基準値を変更する。
例えば、i回目の試行の自由度の基準値をni, 修正値をni±di (I = 1,2,3)とした時、n1+d1,d2,n3-d3の組が最大値を与える場合は、
n1→n1+d1、n3→n3−d3に置き換え、それ以外は基準値のままとする。
上記の説明では自由度を変更する対象を最初の3回の試行とし、自由度の変更を2通りとしたが、自由度を変更する範囲や変更値の選び方は、これに限るものではなく、様々のやり方が可能である。また、最適な自由度の与え方は、部分点列の点数によって異なる。点数ごとに異なる与え方を記憶しておく代わりに、ある点数に対する値だけを保持し、点数が異なる時はその値に点数の比を乗じて用いることにしてもよい。
1 工具経路曲線化装置
2 NC指令

10 NC指令解読部
20 点列取得部
30 曲線生成部
40 曲線自由度更新部
50 曲線出力部

Claims (6)

  1. 点列で指令された工具経路から曲線を生成する工具経路の曲線化方法であって、
    前記曲線の形状を決める変数の数である曲線の自由度の初期値を与えると共に、2回目以降に生成する曲線の自由度を決める自由度決定ステップと、
    前記決められた自由度の曲線を生成する曲線生成ステップと、
    前記生成された曲線が条件を満たす曲線であるか否かを判定する判定ステップと、
    を備え、
    前記判定ステップにより、前記生成された曲線が条件を満たさないと判定された場合は、前記自由度決定ステップにおいて前記自由度を増やし(但し、自由度を1つずつ増加するのは含まない)、前記曲線生成ステップにより曲線を再生成し、前記再生成された曲線が条件を満たすまで繰り返すことを特徴とする工具経路の曲線化方法。
  2. 前記自由度の増やし方は、設定によって変更できることを特徴とする請求項1に記載の工具経路の曲線化方法。
  3. 前記自由度の増やし方は、自動的に調整できることを特徴とする請求項1に記載の工具経路の曲線化方法。
  4. 点列で指令された工具経路から曲線を生成する工具経路の曲線化装置であって、
    前記曲線の形状を決める変数の数である曲線の自由度の初期値を与えると共に、2回目以降に生成する曲線の自由度を決める自由度決定手段と、
    前記決められた自由度の曲線を生成する曲線生成手段と、
    前記生成された曲線が条件を満たす曲線であるか否かを判定する判定手段と、
    を備え、
    前記判定手段により、前記生成された曲線が条件を満たさないと判定された場合は、前記自由度決定手段において前記自由度を増やし(但し、自由度を1つずつ増加するのは含まない)、前記曲線生成手段により曲線を再生成し、前記再生成された曲線が条件を満たすまで繰り返すことを特徴とする工具経路の曲線化装置。
  5. 前記自由度の増やし方を設定する手段を備えていることを特徴とする請求項4に記載の工具経路の曲線化装置。
  6. 前記自由度の増やし方を自動的に調整する手段を備えていることを特徴とする請求項4に記載の工具経路の曲線化装置。
JP2015085338A 2015-04-17 2015-04-17 工具経路の曲線化方法および曲線化装置 Pending JP2016206800A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015085338A JP2016206800A (ja) 2015-04-17 2015-04-17 工具経路の曲線化方法および曲線化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015085338A JP2016206800A (ja) 2015-04-17 2015-04-17 工具経路の曲線化方法および曲線化装置

Publications (1)

Publication Number Publication Date
JP2016206800A true JP2016206800A (ja) 2016-12-08

Family

ID=57489789

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015085338A Pending JP2016206800A (ja) 2015-04-17 2015-04-17 工具経路の曲線化方法および曲線化装置

Country Status (1)

Country Link
JP (1) JP2016206800A (ja)

Similar Documents

Publication Publication Date Title
JP6063013B1 (ja) びびり或いは工具摩耗/破損の発生を抑制する加工条件調整機能を有する数値制御装置
JP4980458B2 (ja) 数値制御工作機械の加工時間予測装置
JP5926358B1 (ja) 形状誤差を保証する工具経路の曲線化方法および曲線化装置
US9501053B2 (en) Goal-oriented numerical control automatic tuning system and method
US10509397B2 (en) Action information learning device, action information optimization system and computer readable medium
US9851709B2 (en) Numerical control device
US10549367B2 (en) Numerical controller for wire electrical discharge machine adapted for corner control of minute blocks
JP2018073097A (ja) 工具経路生成装置、工具経路生成方法及び工具経路生成プログラム
JP6105650B2 (ja) 機械の負荷を低減する数値制御装置
CN111857052A (zh) 机器学习装置、数值控制系统以及机器学习方法
CN109597359B (zh) 数值控制装置
US20180224808A1 (en) Learning model construction device, and control information optimization device
KR20220002250A (ko) 적층 제조를 위한 3d 모델의 층 두께를 결정하는 방법
JP2017146859A (ja) 数値制御工作機械の加工時間予測装置
CN110163409A (zh) 一种应用于置换流水车间的卷积神经网络调度方法
CN113128169A (zh) 宽度渐变波导的设计方法、装置及其计算机存储介质
JP2017191536A (ja) フィードバック制御における出力値の制御を行う数値制御装置
JP5715189B2 (ja) オーバライドの変化時に送り速度を円滑に変更する機能を有する数値制御装置
JP2017097701A (ja) 主軸負荷により送り速度を制御する数値制御装置
JP6017509B2 (ja) 運転停止時に送り速度を円滑に変更する数値制御装置
CN110687869B (zh) 数值控制装置、数值控制方法以及计算机可读介质
JP2016206800A (ja) 工具経路の曲線化方法および曲線化装置
US20150112474A1 (en) Machining curve creating apparatus and machining curve creating method thereof
US10401835B2 (en) Numerical controller performing table-format-data-based operation
CN113671898B (zh) 数控加工方法、系统、计算机设备及存储介质