(57)【要約】【課題】加工時間の予測精度の向上と加工時間の予測するための処理時間を短縮することができる数値制御工作機械による加工時間の予測方法および予測装置を提供すること。【解決手段】ＮＣ指令を解読するＮＣ指令解読部１０と、工具経路を細かい切片であるセグメントに分割するセグメントデータ生成部３０と、セグメントデータを格納する中間メモリ４０と、セグメントの接線方向の速度を求める速度制約処理部２０と、速度制約処理部２０によって求めた速度に基づいて各セグメントを工具が移動するのに要する時間を算出するセグメント移動時間算出部５０と、各セグメントを移動する時間の総和を工具移動時間とする全移動時間算出部６０と、を備えたＮＣ指令によって工具が指定された経路を移動するのに要する時間を算出する加工時間予測装置１。【選択図】図１
2012093975.tif 000002
【特許請求の範囲】
【請求項１】
ＮＣ指令によって工具が指定された経路を移動するのに要する時間を算出する装置であって、
工具経路を細かい切片であるセグメントに分割する手段と、
セグメントの接線方向の速度を求める速度算出手段と、
前記速度算出手段によって求めた接線方向の速度に基づいて各セグメントを前記工具が移動するのに要する時間を算出するセグメント移動時間算出手段と、
前記セグメント移動時間算出手段により算出された各セグメントを移動する時間の総和を工具移動時間として求める工具移動時間算出手段と、
を備えたことを特徴とする加工時間予測装置。
【請求項２】
前記セグメントに分割する手段は、前記ＮＣ指令による指令速度に所定の係数または工具経路の曲率に基づいて決めた係数を乗じて工具の速度を求め、該工具の速度で工具が移動するとして工具経路を所定の時間間隔で分割し、分割された各区間をセグメントとする手段であることを特徴とする請求項１に記載の加工時間予測装置。
【請求項３】
前記所定の時間間隔は可変であることを特徴とする請求項２に記載の加工時間予測装置。
【請求項４】
前記速度算出手段は、セグメントの始点から終点にかけてセグメントの接線方向の速度を算出する手段であって、各セグメント終点における速度を、隣り合うセグメントの速度差、加速度差、加加速度差、工具経路の曲率、速度算出に使用するセグメント数のうち少なくとも一つに基づいて決める終点速度算出手段と、
セグメントの接線方向の接線加速度を前記ＮＣ指令によって駆動される軸方向の成分が各軸の最大加速度を超えない最大の値とする接線加速度算出手段と、
セグメントの上限速度を指令速度に所定の係数を乗じた値と曲率に基づく所定の値とを比較して決める上限速度算出手段と、
前記接線加速度算出手段により求めた接線加速度を用いて前記上限速度を超えないように、かつ、終点における速度が前記求めた速度を超えないようにセグメントの接線方向の速度である速度カーブを算出する速度カーブ算出手段と、
を備えたことを特徴とする請求項１に記載の加工時間予測装置。
【請求項５】
前記速度カーブ算出手段は、予め用意した複数の速度カーブ算出手段のうちの１つの算出手段を選択し、該選択した算出手段により速度カーブを算出する手段を備えたことを特徴とする請求項４に記載の加工時間予測装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御工作機械の加工時間予測装置に関する。本発明における加工時間とは数値制御工作機械における工具の移動による加工時間をいう。
【背景技術】
【０００２】
数値制御工作機械による加工時間を予め予測することは、工作機械を効率的に運用するために重要である。
【０００３】
加工時間を予測するためには工具の移動速度が分かっていなければならない。例えば、実際の工具の速度を予測する手法として、特許文献１には、加工機の機種および加工モードの少なくとも一方に応じて設定された速度制御パラメータをデータベース化し、移動指令データをプログラムしたＮＣデータ（ＮＣ指令）を加工時間予測モジュールに入力し、選択された加工機の機種や加工モードに応じた速度制御パラメータを前記加工時間予測モジュールによって読み出し、読み出された速度制御パラメータと前記移動指令とに基づいて加工時間を予測する技術が開示されている。
【０００４】
特許文献２には、工具軌跡を小さい間隔で分割した分割軌跡を求め、工具を指定された移動速度に従った速度で分割軌跡上を移動させてワークを加工するときの分割軌跡上の任意の位置の工具位置と各分割軌跡上における各軸方向の工具移動速度の時間変化とを軸制御データとして求め、軸制御データで指定された前記各軸方向の移動速度の時間変化から加工所要時間を算出する技術が開示されている。
【０００５】
特許文献３には、ＮＣ工作機械（数値制御工作機械）の駆動用補間アルゴリズムと同じ補間アルゴリズムで工作機械に対する軸移動指令において指令された移動軌跡を補間し、前記軸移動指令において指令された移動軌跡の補間回数をカウントし、数値制御工作機械を駆動制御する際の補間周期と前記カウントした補間回数とを乗じて軸移動指令の軸移動時間を算出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−２５９４５号公報
【特許文献２】特開２００９−９８９８１号公報
【特許文献３】特開２００５−３０１４４０号公報
【特許文献４】特開２００７−９４９３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したように、加工時間を予測するためには工具の移動速度が分かっていなければならないが、加工中の工具の速度は、ＣＮＣ（数値制御装置）による様々な速度制御の結果、一般に、ＮＣ指令（加工プログラム）で与えられる指令速度とＣＮＣのパラメータに設定された加減速の加速度から予想される速度とは異なる。
【０００８】
現在のＣＮＣは、機械への衝撃を抑えてなめらかな工具の動きを実現するため、非常に短い周期で工具の移動速度を制御しているため、工具経路に沿って接線方向の工具の移動速度は時々刻々変化している。そのため、特許文献１に開示されているように、ブロック単位の速度を考える方法では、ブロック長よりも短い単位で変化する速度の効果を取り入れることができない。
【０００９】
また、金型の加工のように時間のかかる加工では、予測した加工時間の精度に加えて予測に要する時間（処理時間）が短いことも重要である。特許文献２に開示される技術では、各軸毎の速度データを使用するために工具の動きを各軸の動作に分解する必要があるため計算に時間を要し、処理時間が長くなる。また、特許文献３に開示される方法では、ＣＮＣの補間処理を利用するため、ＮＣ指令の解読から補間までＣＮＣのほとんどの機能を実行することになり、実際の加工に比べて処理時間を大幅に短縮することはできない。
【００１０】
そこで本発明の目的は、上記従来技術の問題点に鑑み、加工時間の予測精度の向上と加工時間の予測するための処理時間を短縮することができる数値制御工作機械による加工時間の予測方法および予測装置を提供することである。
【課題を解決するための手段】
【００１１】
本願の請求項１に係る発明は、ＮＣ指令によって工具が指定された経路を移動するのに要する時間を算出する装置であって、工具経路を細かい切片であるセグメントに分割する手段と、セグメントの接線方向の速度を求める速度算出手段と、前記速度算出手段によって求めた接線方向の速度に基づいて各セグメントを前記工具が移動するのに要する時間を算出するセグメント移動時間算出手段と、前記セグメント移動時間算出手段により算出された各セグメントを移動する時間の総和を工具移動時間として求める工具移動時間算出手段と、を備えたことを特徴とする加工時間予測装置である。
【００１２】
請求項２に係る発明は、前記セグメントに分割する手段は、前記ＮＣ指令による指令速度に所定の係数または工具経路の曲率に基づいて決めた係数を乗じて工具の速度を求め、該工具の速度で工具が移動するとして工具経路を所定の時間間隔で分割し、分割された各区間をセグメントとする手段であることを特徴とする請求項１に記載の加工時間予測装置である。  
請求項３に係る発明では、前記所定の時間間隔は可変であることを特徴とする請求項２に記載の加工時間予測装置である。
【００１３】
請求項４に係る発明では、前記速度算出手段は、セグメントの始点から終点にかけてセグメントの接線方向の速度を算出する手段であって、各セグメント終点における速度を、隣り合うセグメントの速度差、加速度差、加加速度差、工具経路の曲率、速度算出に使用するセグメント数のうち少なくとも一つに基づいて決める終点速度算出手段と、セグメントの接線方向の接線加速度を前記ＮＣ指令によって駆動される軸方向の成分が各軸の最大加速度を超えない最大の値とする接線加速度算出手段と、セグメントの上限速度を指令速度に所定の係数を乗じた値と曲率に基づく所定の値とを比較して決める上限速度算出手段と、前記接線加速度算出手段により求めた接線加速度を用いて前記上限速度を超えないように、かつ、終点における速度が前記求めた速度を超えないようにセグメントの接線方向の速度である速度カーブを算出する速度カーブ算出手段と、を備えたことを特徴とする請求項１に記載の加工時間予測装置である。
【００１４】
請求項５に係る発明では、前記速度カーブ算出手段は、予め用意した複数の速度カーブ算出手段のうちの１つの算出手段を選択し、該選択した算出手段により速度カーブを算出する手段を備えたことを特徴とする請求項４に記載の加工時間予測装置である。
【発明の効果】
【００１５】
本発明により、加工時間の予測精度の向上と加工時間を予測するための処理時間を短縮することができる数値制御工作機械による加工時間の予測装置を提供できる。つまり、請求項１の発明により、加工に要する時間を従来よりも正確に予測できるので、個々の加工で機械を使用する時間を事前にきめ細かく把握することが可能となり、機械の空き時間を少なくして効率的に運用でき、また、加工終了までの時間を従来よりも正確に予想できるので、生産計画を正確に立てることができる。請求項２の発明により、ＮＣ指令の指令速度で加工する場合の他に、速度オーバライドをかけた時の加工時間を求めることができる。請求項３の発明により、加工時間の予測値の精度との兼ね合いで処理時間を短縮できる。請求項４により、速度、加速度、加加速度、工具経路の曲率による速度制御がかかる場合にも、正確に加工時間を予測できる。請求項５の発明により、加工時間の予測値の精度との兼ね合いで処理時間を短縮することができる。
【図面の簡単な説明】
【００１６】
【図１】加工時間予測装置の機能ブロック図である。
【図２】減速曲線の求め方を説明する図である。
【図３】工具経路に沿って測った距離と接線速度を説明する図である。
【図４】セグメント内部の速度カーブを説明する図である。
【図５】許容速度の求め方を説明する図である。
【図６】移動時間の計算のアルゴリズムを示すフローチャートである。
【図７】セグメント移動時間の計算のアルゴリズムを示すフローチャートである。
【図８】速度カーブを求める第２の方法を説明する図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態を図面と共に説明する。
本発明は、工具経路をセグメントとよぶ微小な切片に分割し、セグメントの始点から終点にかけて接線方向の速度の変化を表す速度カーブを求め、工具が求めた速度カーブに従って動くとしてセグメントを移動するのに要する時間を算出する。全工具経路を移動するのに要する時間は、セグメント毎の移動時間の総和で与えられる。
隣り合うセグメントの間の速度差、加速度の差、加加速度の差、工具経路の曲率、速度算出に用いるセグメントデータの数によって決まる速度に対する制約を取り入れて速度カーブを決めることにより、算出した加工時間の精度を向上させる。
工具の動作を各軸の動作に分解せず、接線方向の速度を扱う１次元の問題として処理できるので、処理時間を短縮する。更に、セグメントへの分割間隔を可変にすることにより、移動時間の予測値と予測値の精度の調整を可能にする。  
図１は、本発明の一実施形態を説明するブロック図である。加工時間予測装置１は、ＮＣ指令解読部１０、速度制約処理部２０、セグメントデータ生成部３０、中間メモリ（バッファメモリ）４０、セグメント移動時間計算部５０、全移動時間計算部６０を含む。
【００１８】
ＮＣ指令解読部１０は、ＮＣ指令（加工プログラム）２を入力として受け取り、その内容を解読してＮＣ指令（加工プログラム）２に記述されるブロック毎の指令データに分割してブロックデータを生成する。入力されるＮＣ指令２は、ＣＮＣ（数値制御装置）に入力されるものと同じであり、テキストファイルやＣＮＣのプログラムメモリに記憶されたバイナリデータなど、その形式は問わない。
【００１９】
ブロックデータは元のＮＣ指令（加工プログラム）２を構成する各ブロックの指令内容を表したもので、ブロックの始点と終点の位置の情報、始点から終点までの経路の種類（直線、円弧など）と経路を決める情報（円弧の場合の中心位置など）、ブロックを移動する時の工具の速度情報が含まれる。
【００２０】
速度制約処理部２０は、大域速度制約処理部２１、局所速度制約処理部２２、および、データ量依存速度制約処理部２３を含む。  
大域速度制約処理部２１は、ＮＣ指令（加工プログラム）２において指令される指令速度Ｖｃと工具経路の曲率に応じて予め決められた速度Ｖｉａを比較し、小さい方の値を上限速度Ｖｌｉｍとする。指令速度Ｖｃのデータと工具経路の曲率のデータはＮＣ指令解読部１０で生成されるブロックデータに基づく。工具経路の曲率に応じて予め決められた速度Ｖｉａのデータは図示しないメモリに記憶しておく。速度オーバライドがかかった状態での工具の移動時間を算出する場合は、指令速度Ｖｃの代わりに指令速度Ｖｃにオーバライドの比率を乗じた速度を用いる。局所速度制約処理部２２とデータ量依存速度制約処理部２３は、セグメントデータを利用するので、後述する。
【００２１】
セグメントデータ生成部３０はＮＣ指令解読部１０で生成されたブロックデータを受け取り、各ブロックの始点から終点までの工具経路をセグメントへ分割する。この分割方法は、指令速度Ｖｃに所定の係数ｋまたは工具経路の曲率に基づいて決めた係数を乗じて分割速度Ｖｄを決め、分割速度Ｖｄに所定の時間τを乗じて得られる距離Ｖｄ・τを分割間隔として、ブロック始点から順次セグメントを切り出して行く。このようにして生成された個々のセグメントは工具経路の微小な切片である。セグメントの長さをＬとすると、Ｌ＝Ｖｄ・τで表すことができる。所定の時間τは補間周期ないしそれより長い時間とする。
【００２２】
切り出された微小な切片は、セグメントデータとして中間メモリ（バッファ）４０に蓄積（格納）される。中間メモリ４０に蓄積（格納）されるセグメントデータは、セグメントの長さＬ、セグメントの方向（始点から終点に向かうベクトル）、前記上限速度と局所速度制約処理部２２で求めたコーナ速度Ｖｒを含む。
【００２３】
局所速度制約処理部２２は、セグメントデータ生成部３０によって生成されたセグメントについて、隣り合うセグメントの間の速度差、加速度差、および、加加速度がそれぞれ予め設定された許容値以下に収まる速度の中で最大の速度を求め、その速度を隣り合うセグメントの接続点におけるコーナ速度Ｖｒとする。なお、工具経路の曲率を大域速度制約処理部２１で考慮する代わりに、局所速度制約処理部２２で考慮してもよい。このようにして値が設定されたセグメントデータは、中間メモリ（バッファ）４０に蓄積（格納）される。
【００２４】
データ量依存速度制約処理部２３は、セグメントデータの数によって決まる工具の移動速度に対する制約を取り入れて、算出した加工時間の精度を向上させるための手段である。これは、特許文献４に開示されているような先読み処理部によって読み込まれたデータ数によって速度に対する制約が決まることを、加工時間の予測装置において再現するために備わった処理部である。  
データ量依存型速度制約処理部２３は、中間メモリ（バッファ）４０に蓄積された末尾のセグメント（最も後に生成されたセグメント）の終点で所定の速度Ｕａになるとして、中間メモリ（バッファ）４０の先頭のセグメントへ向かって減速曲線と呼ぶ速度の変化を表す速度カーブＵ（ｔ）を形成する。工具は速度カーブＵ（ｔ）以上の速度では移動することはできないので、該Ｕ（ｔ）を許容速度と称する。通常、所定の速度Ｕａは０とするが、有限の値でもよい。
【００２５】
図２に減速曲線の一例を示す。ｓ１が中間メモリ（バッファ）に蓄積されている先端のセグメントであり、ｓ８が末端のセグメントを表す。つまり、図２の例では、ｓ１〜ｓ８のセグメントの中で、ｓ８のセグメントが最も後に生成されたセグメントである。この場合は、末端のセグメントであるｓ８の終点で所定の速度Ｕａが０になるように先頭のセグメント（ｓ１）に向かって減速曲線が形成されている。
【００２６】
減速曲線の傾きは接線加速度αの大きさを表す。減速曲線と各セグメントの始点と終点を表す点線で切り取られた柱状の領域の面積が、そのセグメントの移動距離（Ｌ＝Ｖｄ・τ）に等しい。  
接線加速度αは、それを機械の駆動軸方向の成分に分解した時、各軸の許容加速度を超えない最大の値とする。つまり、急激な減速によって機械に損傷を与えないように減速する方向の加速度に制限が設けられていることに対応するものである。中間メモリ（バッファ）４０の先頭のセグメント（ｓ１）（最も前に生成されたセグメント）について、減速曲線によって決まるセグメントの終点における速度Ｕｎとコーナ速度Ｖｒを比較し、小さい方をセグメント終点における速度Ｕｅとする。
【００２７】
セグメント移動時間計算部５０は、中間メモリ（バッファ）４０の先頭からセグメントデータを１つ取り出し、そのセグメントの移動に要する時間を計算する。セグメントの長さをＬとし、セグメントの始点の時刻を０、時刻ｔにおける工具の移動速度である速度カーブをＶ（ｔ）とすると、任意の１つのセグメントの移動に要する時間Ｔは数１式を満たす。速度カーブＶ（ｔ）は図３に示されるように工具経路に沿って測った距離ｓ（ｔ）の時間微分を表す。
【００２８】
【数１】
2012093975.tif 000003
【００２９】
工具の移動速度である速度カーブＶ（ｔ）が、図４に示すように区分的に高々１次式で表されるとする。図４では１つのセグメントの中には加速区間、定速区間、および減速区間がある。ここで、Ｖｓは区間の始点における速度、Ｖｅは区間の終点における速度である。Ｖ０はｔ＝０の時の速度で、セグメントの始点における速度である。一番最初の動き出しのセグメントではＶ０＝０であり、それ以降のセグメントではＶ０は１つ前のセグメントの終点の速度Ｕｅに等しい。加速区間と減速区間の傾きはセグメントの接線加速度αから決まる。Ｖｌｉｍは大域速度制約処理部２１で求めた上限速度である。
【００３０】
工具の運動の状態は図４に示されるように、工具の移動速度が増加している加速状態、一定速度で推移している定速状態、速度が減少している減速状態のいずれかに分類される。実現される状態の判定（現実の工具の運動状態）と加速状態から定速状態への移行のような状態遷移の判定に、予め決めた評価関数を用いる。
【００３１】
セグメント始点の速度Ｖ０は前記のように決まっているので、始点における初期状態を決め、状態遷移の判定と遷移による状態の更新を行うことにより、セグメント内部の速度カーブＶ（ｔ）を決めることができる。速度カーブＶ（ｔ）が決まると、数１式を用いて移動時間Ｔが求められる。なお、図４では、３つの状態が全て現れる場合を図示しているが、条件によって、加速状態のみ、定速状態と減速状態など、様々の速度変化の形態が現れる。
【００３２】
評価関数は、工具の実際の速度に近い速度カーブＶ（ｔ）を実現するものを採用する。例えば、特許文献４に記載されている現在の許容速度と加速後の速度を比較する方法では、時刻ｔにおける評価関数Ｗ（ｔ）の値は数２式で表される。
【００３３】
【数２】
2012093975.tif 000004
【００３４】
数２式で、Ｗ（ｔ）＞０の時は加速可能な状態と判定される。ここで、Ｖ（ｔ）は時刻ｔにおける速度、αは接線加速度（接線方向加速度）、Ｕ（ｔ）は減速曲線を基に決めた時刻ｔにおける許容速度を表す。許容速度Ｕ（ｔ）は、図５に示すように、減速曲線に沿って減速する時に時刻ｔまでに移動した距離だけ進んだ点において減速曲線が示す速度である。Δｔは微小な時間であり、例えば１ｍｓｅｃであるとする。後述の式のΔｔも同様である。
【００３５】
図６はセグメントデータを用いて移動時間を計算する手順を示すフローチャート、また、図７は１つのセグメントの移動時間の計算の手順を示すフローチャートである。以下、これらの図に基づいて計算方法を説明する。
【００３６】
図６に示す処理は、所定の数のセグメントデータが生成され中間メモリ（バッファ）４０に供給された時に開始される。以下、各ステップに従って説明する。
●［ステップＳＡ１００］変数の初期化を行う。すなわち、前セグメント終点の速度Ｕｅを０に、また、移動時間を加算する変数Ｔを０に設定する。
●［ステップＳＡ１０１］バッファの先頭からセグメントデータを１つ取り出し、図７に示すフローチャートの処理でそのセグメントの移動時間を計算する。
●［ステップＳＡ１０２］前ステップで計算した時間をＴに加算する。
●［ステップＳＡ１０３］全てのセグメントの移動時間の計算が終了したか否かを判断し、終了していなければ、ステップＳＡ１０４へ移行し、終了していれば、処理を終了する。
●［ステップＳＡ１０４］セグメントデータを１つ生成してバッファに供給し、ステップＳＡ１０１へ戻る。
【００３７】
図７は、図６のステップＳＡ１０１の移動時間を計算するフローチャートを示す。この方法は、セグメントを状態によって区間に分割し、区間毎に移動時間を求めて、その総和をセグメント移動時間とする。ここで、状態を表す以下の変数を導入する。Ｖｓ：区間の始点における速度、Ｖｅ：区間の終点における速度、ｔｉｍｅ：セグメント始点から積算した移動時間、Ｒｄ：セグメントの残り距離とする。
【００３８】
評価関数は、数３式を採用する。ただし、Ｖ（ｔ）＋αΔｔは上限速度Ｖｌｉｍでクランプされる。
【００３９】
【数３】
2012093975.tif 000005
【００４０】
状態の判定は、以下のａ）〜ｃ）の条件によって行う。
ａ）０≦Ｗ（ｔ）、かつ、Ｖ（ｔ）＜上限速度Ｖｌｉｍのときは加速
ｂ）０≦Ｗ（ｔ）、かつ、Ｖ（ｔ）＝上限速度Ｖｌｉｍのときは定速
ｃ）Ｗ（ｔ）＜０のときは減速
【００４１】
以下、各ステップに従って説明する。
●［ステップＳＢ１００］セグメント始点での値を設定する。つまり、Ｕｓ＝Ｕｅ（前セグメント終点における速度）、Ｒｄ＝Ｌ（セグメントの長さ）、ｔｉｍｅ＝０に設定する。Ｕｅは、図６のステップＳＡ１００によって最初のセグメントではＵｅ＝０に初期化されている。
●［ステップＳＢ１０１］評価関数によって現在の状態を判定する。区間の始点における速度Ｖｓ、図５に示す速度曲線から求めた区間の始点における許容速度Ｕ０と接線加速度αを評価関数に代入し、上記の判定条件を適用して決める。
●［ステップＳＢ１０２］評価関数を使って次の状態遷移が発生するポイントを決める。例えば、現在の状態が加速状態であれば、以下のように計算する。区間の始点から時間ｔが経過すると、速度は、数４式で表される。
【００４２】
【数４】
2012093975.tif 000006
【００４３】
許容速度Ｕ（ｔ）は、数５式から求める。
【００４４】
【数５】
2012093975.tif 000007
【００４５】
状態遷移ポイントまでの時間Ｔ’は、数６式から求める。ただし、Ｖｌｉｍ＜Ｖｓ＋αＴの場合はＶｌｉｍ＝Ｖｓ＋αｔとなるｔを状態遷移ポイントまでの時間Ｔ’とする。
【００４６】
【数６】
2012093975.tif 000008
【００４７】
現在の状態が定速状態であれば、速度はＶｌｉｍなので、許容速度がＵ（ｔ）＝Ｖｌｉｍを満足する点が状態遷移ポイントである。状態遷移ポイントまでの経過時間をＴ’とすると、状態遷移ポイントまでに進む距離はＶｌｉｍ・Ｔ’であるので、数７式がなりたつ。
【００４８】
【数７】
2012093975.tif 000009
【００４９】
現在の状態が減速状態であれば、局所速度制約処理部２２で求めたセグメント終点の速度をＵｅとして、状態遷移ポイントまでの時間Ｔ’ は式８式を満たす。状態遷移ポイントに到達した後は速度をＵｅに保つ。
【００５０】
【数８】
2012093975.tif 000010
【００５１】
●［ステップＳＢ１０３］状態遷移ポイントまでの時間Ｔ’を用いて区間の始点から状態遷移ポイントまでに移動する距離を計算する。加速区間の場合、数９式で表される。
【００５２】
【数９】
2012093975.tif 000011
【００５３】
定速区間では、数１０式で表される。
【００５４】
【数１０】
2012093975.tif 000012
【００５５】
減速区間では、数１１式で表される。
【００５６】
【数１１】
2012093975.tif 000013
【００５７】
●［ステップＳＢ１０４］状態遷移ポイントがセグメント終点の手前にあるか否か判断する。Ｒｄ＜Ｄであれば状態遷移ポイントへ到達する前にセグメント終点に到達する。
●［ステップＳＢ１０５］状態遷移ポイントが終点より手前にある場合の処理で、状態遷移ポイントまでの移動時間をｔｉｍｅに加算し、現区間の終点の状態を次の区間の始点になるようにＶｓとＲｄを更新して、ステップＳＢ１０１に戻って処理を繰り返す。更新された値は、現区間の終点の速度をＶｅとすると、Ｖｓ＝Ｖｅ，Ｒｄ＝Ｒｄ−Ｄとなる。
●［ステップＳＢ１０６］セグメント終点が状態遷移ポイントより手前にある場合の処理で、区間の始点から終点までの移動時間Ｔｅをｔｉｍｅに積算して終了する。
加速区間の場合、Ｔｅは数１２式から求める。
【００５８】
【数１２】
2012093975.tif 000014
【００５９】
定速区間の場合は、数１３式から求める。
【００６０】
【数１３】
2012093975.tif 000015
【００６１】
減速区間の場合は、数１４式から求める。
【００６２】
【数１４】
2012093975.tif 000016
【００６３】
この手順により、各区間の移動時間がｔｉｍｅに積算され、処理が終了した時にｔｉｍｅがセグメントの移動時間を保持している。
全移動時間計算部６０では、前記ｔｉｍｅに保持されている値を全移動時間とする。
本発明の一実施例の説明では、セグメントの始点から終点にかけて接線加速度を一定としたが、速度算出手段はこれに限定されるものではない。例えば、接線加速度αが速度ｖに依存し、その関係が線型でα＝ｖ・ｈ＋ｋであり、ｈとｋは定数と表されるとすると、数１５式の式が成り立つ。
【００６４】
【数１５】
2012093975.tif 000017
【００６５】
数１式の積分は解析的に求まるので、数１５式で表される速度で表される工具の移動時間を求めることができる。
【００６６】
一実施例でセグメントへの分割に用いた時間τの値を選択できるようにすることにより、分割の時間間隔を可変にできる。これによって請求項３に記述した加工時間予測装置を実現できる。処理時間はセグメントの数に関係するので、分割の時間間隔を大きくすることにより、処理時間を削減できる。
【００６７】
速度算出手段については、上述した本発明の一実施形態の方法よりも簡易化された実施形態として、評価関数を使わずに、速度カーブＶ（ｔ）を以下のアルゴリズムで構成する手法を採用してもよい。  
セグメント始点の速度をＶ０、局所速度制約処理部２２で求めたセグメント終点の速度をＵｅ、接線加速度をαとする。評価関数を使わないので、局所速度制約処理部２２で求めたコーナ速度Ｖｒが、セグメント終点の速度Ｕｅとして扱われる。
１）Ｖ０≦Ｕｅの場合
始点から終点への接線加速度αで一様に加速した時の終点の速度をＶｆとする。  
Ｖｆ≦Ｕｅの場合、接線加速度αで一様に減速する直線を速度カーブとする（図８（ａ）参照）。
【００６８】
Ｕｅ＜Ｖｆの場合は、速度がＵｅに到達後、一定速度で推移する折れ線を速度カーブとする（図８（ｂ））。
２）Ｕｅ＜Ｖ０の場合
始点から終点へ接線加速度αで一様に減速した時の終点の速度をＶｆとする。  
Ｕｅ≦Ｖｆの場合は、接線加速度αで一様に減速する直線を速度カーブとする（図８（ｃ））  
Ｖｆ＜Ｕｅの場合は、速度がＵｅに到達後、一定速度で推移する折れ線を速度カーブとする（図８（ｄ））。
【００６９】
このような速度カーブの算出方法を複数用意し、その中の１つを選択可能にすることに
より、請求項５に記載の加工時間予測装置を実現できる。
【００７０】
評価関数は、この実施例で採用したものに限る必要はない。ＣＮＣの速度制御によって
決まる実施の速度を近似的に再現するものであれば、採用することができる。また、前記
のように、評価関数をあからさまに用いない手法でもよい。
【００７１】
本発明に係る加工時間予測装置は、独立した装置である必要はない。請求項１〜５に記載した装置を構成する手段をＣＮＣに搭載し、ＣＮＣ自体を加工時間予測装置１とする構成も可能である。
【００７２】
なお、図１では明示していないが、工具停止指令がなされたときの停止時間を加算する加算部や、補助機能実行時間計算部を含むようにしてもよい。補助機能実行時間計算部はＭコードなどの移動指令以外の命令の実行時間を計算するものである。
【符号の説明】
【００７３】
１  加工時間予測装置
２  ＮＣ指令
１０  ＮＣ指令解読部
２０  速度制約処理部
３０  セグメントデータ生成部
４０  中間メモリ
５０  セグメント移動時間計算部
６０  全移動時間計算部
Ｖｒ  コーナ速度
Ｖｃ  指令速度
Ｖｄ  分割速度
Ｖｓ  区間の始点における速度
Ｖｅ  区間の終点における速度
Ｖｉａ  工具経路の曲率に応じて予め決められた速度
Ｖｌｉｍ  上限速度
τ  所定の時間
ｋ  所定の係数
Ｖｄ・τ  分割間隔
Ｖ（ｔ）  速度カーブ
Ｔ    セグメント毎の移動時間を積算した時間
Ｔ’  状態遷移ポイントまでの時間
Ｗ（ｔ）  評価関数
α  接線方向の加速度
Ｕ（ｔ）  許容速度
Ｕｎ  減速曲線によって決まるセグメント終点における速度
Ｕｓ  セグメント始点における速度
Ｕｅ  セグメント終点における速度
Ｕ０  セグメントの区間の開始点における許容速度
Ｌ  セグメントの長さ
ｔｉｍｅ  セグメント始点から積算した移動時間
Ｒｄ  セグメントの残り距離
ｓ（ｔ）  工具経路に沿って測った距離
【図１】
2012093975.tif 000018
【図２】
2012093975.tif 000019
【図３】
2012093975.tif 000020
【図４】
2012093975.tif 000021
【図５】
2012093975.tif 000022
【図６】
2012093975.tif 000023
【図７】
2012093975.tif 000024
【図８】
2012093975.tif 000025
【手続補正書】
【提出日】平成24年3月12日(2012.3.12)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】変更
【補正の内容】
【００１１】
本願の請求項１に係る発明は、ＮＣ指令によって工具が指定された経路を移動するのに要する時間を算出する装置であって、工具経路を細かい切片であるセグメントに分割する手段と、セグメントの接線方向の速度を求める速度算出手段と、前記速度算出手段によって求めた接線方向の速度に基づいて各セグメントを前記工具が移動するのに要する時間を算出するセグメント移動時間算出手段と、前記セグメント移動時間算出手段により算出された各セグメントを移動する時間の総和を工具移動時間として求める工具移動時間算出手段と、を備え、前記速度算出手段は、セグメントの始点から終点にかけて、セグメントの接線方向の速度を所定の制約条件に基づいて算出する手段であり、該接線方向の速度を、数値制御装置が実際の加工制御において算出する接線速度の時間依存性にかかわらず、時間について区分一次式とするものであって、前記セグメント移動時間算出手段は、前記接線速度を積分した値をセグメントの長さに同定することにより移動時間を算出する手段であること、を特徴とする加工時間予測装置である。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】変更
【補正の内容】
【００１３】
請求項４に係る発明は、前記速度算出手段は、各セグメント終点における速度を、隣り合うセグメントの速度差、加速度差、加加速度差、工具経路の曲率、速度算出に使用するセグメント数のうち少なくとも一つに基づいて決める終点速度算出手段と、セグメントの接線方向の接線加速度を前記ＮＣ指令によって駆動される軸方向の成分が各軸の最大加速度を超えない最大の値とする接線加速度算出手段と、セグメントの上限速度を指令速度に所定の係数を乗じた値と曲率に基づく所定の値とを比較して決める上限速度算出手段と、前記接線加速度算出手段により求めた接線加速度を用いて前記上限速度を超えないように、かつ、終点における速度が前記求めた速度を超えないようにセグメントの接線方向の速度である速度カーブを算出する速度カーブ算出手段と、を備えたことを特徴とする請求項１に記載の加工時間予測装置である。
【手続補正３】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項１
【補正方法】変更
【補正の内容】
【請求項１】
ＮＣ指令によって工具が指定された経路を移動するのに要する時間を算出する装置であって、
工具経路を細かい切片であるセグメントに分割する手段と、
セグメントの接線方向の速度を求める速度算出手段と、
前記速度算出手段によって求めた接線方向の速度に基づいて各セグメントを前記工具が移動するのに要する時間を算出するセグメント移動時間算出手段と、
前記セグメント移動時間算出手段により算出された各セグメントを移動する時間の総和を工具移動時間として求める工具移動時間算出手段と、
を備え、
前記速度算出手段は、セグメントの始点から終点にかけて、セグメントの接線方向の速度を所定の制約条件に基づいて算出する手段であり、該接線方向の速度を、数値制御装置が実際の加工制御において算出する接線速度の時間依存性にかかわらず、時間について区分一次式とするものであって、
前記セグメント移動時間算出手段は、前記接線速度を積分した値をセグメントの長さに同定することにより移動時間を算出する手段であること、を特徴とする加工時間予測装置。
【手続補正４】
【補正対象書類名】特許請求の範囲
【補正対象項目名】請求項４
【補正方法】変更
【補正の内容】
【請求項４】
前記速度算出手段は、各セグメント終点における速度を、隣り合うセグメントの速度差、加速度差、加加速度差、工具経路の曲率、速度算出に使用するセグメント数のうち少なくとも一つに基づいて決める終点速度算出手段と、
セグメントの接線方向の接線加速度を前記ＮＣ指令によって駆動される軸方向の成分が各軸の最大加速度を超えない最大の値とする接線加速度算出手段と、
セグメントの上限速度を指令速度に所定の係数を乗じた値と曲率に基づく所定の値とを比較して決める上限速度算出手段と、
前記接線加速度算出手段により求めた接線加速度を用いて前記上限速度を超えないように、かつ、終点における速度が前記求めた速度を超えないようにセグメントの接線方向の速度である速度カーブを算出する速度カーブ算出手段と、
を備えたことを特徴とする請求項１に記載の加工時間予測装置。