(57)【特許請求の範囲】
【請求項１】
数値制御装置により制御される工作機械で使用されるＮＣプログラムを生成するＮＣプログラム生成方法であって、
ＮＣシミュレータにより、前記ＮＣプログラムを予め設定された処理間隔ごとのＮＣシミュレーションを実行し、
加工条件取得部により、前記ＮＣシミュレータからの前記処理間隔ごとの加工条件を取得し、
加工状態取得部により、前記ＮＣシミュレータからの前記処理間隔ごとの加工状態を取得し、
工具摩耗量算出部により、前記加工条件および前記加工状態に対応して設定された工具の工具摩耗量の情報が登録された工具摩耗データベースから加工状態に応じた工具摩耗量を参照し、前記処理間隔ごとの工具摩耗量に関する情報を算出し、
ＮＣプログラム最適化処理部により、加工対象物に対する加工の途中で前記工具摩耗量が限界工具摩耗量を越えて工具交換が必要になる場合、当該加工対象物に対する加工を当該工具の交換なしに完了できる加工条件に変更して、前記ＮＣプログラムを生成することを特徴とするＮＣプログラム生成方法。
【請求項２】
請求項１に記載のＮＣプログラム生成方法において、
前記工具摩耗データベースに登録された工具摩耗情報は、前記加工条件および前記加工状態に対応した複数の異なるグラフ、テーブル、または関数からなり、前記グラフまたは関数は複数の変曲点を有することを特徴とするＮＣプログラム生成方法。
【請求項３】
請求項１に記載のＮＣプログラム生成方法において、
前記工具摩耗量算出部により算出される工具摩耗量が分布を持つことを特徴とするＮＣプログラム生成方法。
【請求項４】
請求項１に記載のＮＣプログラム生成方法において、
前記ＮＣプログラム最適化処理部により、前記工具摩耗量算出部で算出された前記工具摩耗量に関する情報に基づいて、前記ＮＣプログラムを構成する１つのプログラムを分割することを特徴とするＮＣプログラム生成方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、３次元形状切削を行うＮＣ工作機械のＮＣプログラム生成方法に関し、特に、工具の摩耗予測に基づいたＮＣプログラムの生成に関するものである。
【背景技術】
【０００２】
本技術分野の背景技術として、特開平５−１３８４９７号公報（特許文献１）、特開２００４−２５５５１４号公報（特許文献２）、国際公開第００／１２２６０号パンフレット（特許文献３）、国際公開第９８／１９８２０号パンフレット（特許文献４）に記載された技術があった。
【０００３】
特許文献１には、「工具の使用時間を計測し、計測された時間に応じて工具の摩耗量を常時、推定し、工具オフセット量を補正する」と記載されている（要約参照）。
【０００４】
また、特許文献２には、「摩耗量と切削距離の関係が求まるため、工具寿命が予測でき、工具交換のタイミングを決定できる」と記載されている（要約参照）。
【０００５】
また、特許文献３には、加工シミュレーションにより、刃先ポイントごとの切削量、切削長積算、衝突回数から摩耗量を推定する方法が記載されている。
【０００６】
また、特許文献４には、最終的に現場で利用した実加工ＮＣプログラムを解析し、最適な加工情報、加工条件を抽出しデータベースとして用いることで、ＮＣプログラムを最適化する方法が記載されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開平５−１３８４９７号公報
【特許文献２】特開２００４−２５５５１４号公報
【特許文献３】国際公開第００／１２２６０号パンフレット
【特許文献４】国際公開第９８／１９８２０号パンフレット
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献１に記載のものは、計測した工具の使用時間に応じて工具の摩耗量を推定する方法が記載されているが、特許文献１の摩耗量推定方法では、実際に加工を実施しなければ工具の使用時間を計測することができないという問題があった。
【０００９】
また、特許文献２には、加工実施前に工具摩耗を予測する方法として、加工経路の総切削距離や工具使用時間から摩耗量を推定する方法が記載され、特許文献３には、加工シミュレーションにより、刃先ポイントごとの切削量、切削長積算、衝突回数から摩耗量を推定する方法が記載されているが、３次元形状の切削においては、軸切込みや径切込みなどの加工状態が時々刻々変化するため、一定の加工状態での切削を前提とした総切削距離や工具使用時間に基づく特許文献２の技術や、刃先ポイントに着目した特許文献３の工具摩耗予測の技術では誤差が大きくなってしまうという問題があった。
【００１０】
また、工作機械や工具、材料が同一でも、加工対象が異なり形状が複雑である場合、特許文献４の方法では工具摩耗の進展までを考慮してＮＣプログラムを最適化することはできないという問題があった。
【００１１】
そこで、本発明の目的は、３次元形状切削において、加工実施前に工具摩耗を高精度に予測し、工具交換等を考慮したＮＣプログラムを生成することができるＮＣプログラム生成方法を提供することにある。
【００１２】
本発明の前記ならびにその他の目的と新規な特徴は、本明細書の記述および添付図面から明らかになるであろう。
【課題を解決するための手段】
【００１３】
本願において開示される発明のうち、代表的なものの概要を簡単に説明すれば、次の通りである。
【００１４】
すなわち、代表的なものの概要は、ＮＣプログラム生成方法であって、ＮＣシミュレータにより、ＮＣプログラムを予め設定された処理間隔ごとのＮＣシミュレーションを実行し、加工条件取得部により、ＮＣシミュレータからの処理間隔ごとの加工条件を取得し、加工状態取得部により、ＮＣシミュレータからの処理間隔ごとの加工状態を取得し、工具摩耗量算出部により、加工条件および加工状態に対応して設定された工具摩耗量の情報が登録された工具摩耗データベースから加工状態に応じた工具摩耗量を参照し、処理間隔ごとの工具摩耗量に関する情報を算出し、ＮＣプログラム最適化処理部により、工具摩耗量算出部で算出された処理間隔ごとの工具摩耗量に関する情報に基づいて、工具を無駄なく利用できるように、ＮＣプログラムの加工条件を変更し、ＮＣプログラムを最適化するものである。
【発明の効果】
【００１５】
本願において開示される発明のうち、代表的なものによって得られる効果を簡単に説明すれば以下の通りである。
【００１６】
すなわち、代表的なものによって得られる効果は、工具摩耗予測に基づきＮＣプログラムを最適化することで、加工能率向上、工具費低減を可能とするＮＣプログラム生成方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】本発明の一実施の形態に係るＮＣプログラム生成方法を実施するコンピュータシステムの構成を示す構成図である。
【図２】本発明の一実施の形態に係るＮＣプログラム生成方法による処理の概要を示すフローチャートである。
【図３】本発明の一実施の形態に係るＮＣプログラム生成方法による工具摩耗量算出処理を示すフローチャートである。
【図４】本発明の一実施の形態に係るＮＣプログラム生成方法における切削状況を説明するための説明図である。
【図５】本発明の一実施の形態に係るＮＣプログラム生成方法における工具摩耗を説明するための説明図である。
【図６】本発明の一実施の形態に係るＮＣプログラム生成方法で使用される工具摩耗ＤＢに登録された工具摩耗グラフの一例を示す図である。
【図７】本発明の一実施の形態に係るＮＣプログラム生成方法で使用される工具摩耗ＤＢに登録された工具摩耗テーブルの一例を示す図である。
【図８】本発明の一実施の形態に係るＮＣプログラム生成方法による工具摩耗量の結果の一例を示す図である。
【図９】本発明の一実施の形態に係るＮＣプログラム生成方法による予測の出力結果の一例を示す図である。
【図１０】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を示すフローチャートである。
【図１１】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の最適化条件の入力画面の表示の一例を示す図である。
【図１２】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の最適化条件設定ファイルの一例を示す図である。
【図１３】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の加工条件最適化処理を示すフローチャートである。
【図１４】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を実行した例について説明するための説明図である。
【図１５】本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を実行した例について説明するための説明図である。
【図１６】本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を示すフローチャートである。
【図１７】本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を実行した例について説明するための説明図である。
【図１８】本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を実行した例について説明するための説明図である。
【図１９】本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【図２０】（ａ）〜（ｄ）は本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【図２１】は本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【図２２】（ａ）、（ｂ）は本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【図２３】（ａ）、（ｂ）は本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【図２４】本発明の一実施の形態に係るＮＣプログラム生成方法において境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を示すフローチャートである。
【図２５】本発明の一実施の形態に係るＮＣプログラム生成方法において境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を実行した例について説明するための説明図である。
【発明を実施するための形態】
【００１８】
以下、本発明の実施の形態を図面に基づいて詳細に説明する。なお、実施の形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。
【００１９】
＜ＮＣプログラム生成方法を実施するコンピュータシステムの構成＞
図１により、本発明の一実施の形態に係るＮＣプログラム生成方法を実施するコンピュータシステムの構成について説明する。図１は本発明の一実施の形態に係るＮＣプログラム生成方法を実施するコンピュータシステムの構成を示す構成図である。
【００２０】
図１において、コンピュータシステムは、処理部１０１、記憶部１０２、入力部１、出力部２、ＮＣシミュレータ５およびそれらを接続する接続線１０３から構成されている。接続線１０３にＣＡＤ３、ＣＡＭ４が接続されてもよい。
【００２１】
処理部１０１は、例えばＣＰＵなどのプロセッサであり、記憶部１０２は例えばＨＤＤや半導体メモリであり、入力部１は例えばキーボードやマウスであり、出力部２は例えばディスプレイやプリンタであり、接続線１０３は例えば接続コードやネットワークである。
【００２２】
処理部１０１は、その上で記憶装置などに記憶されたプログラムを実行することによって、加工条件取得部６、加工状態取得部７、工具摩耗量算出部８、ＮＣプログラム最適化処理部９として機能する。処理部１０１の記憶装置は、工具摩耗ＤＢ１０、ＮＣプログラムＤＢ１１を記憶している。この記憶装置には、最適化条件設定ファイル１２を記憶しておいてもよい。
【００２３】
入力部１は、ユーザの指示の入力を受け付け、出力部２は、本コンピュータシステムの処理結果を表示したり印刷したりする。
【００２４】
ＮＣシミュレータ５は、ＣＡＭ４で作成されたＮＣプログラムまたはＮＣプログラムＤＢ１１に記憶されたＮＣプログラムをロードし、加工シミュレーションを実行する。
【００２５】
加工条件取得部６は、ロードしたＮＣプログラムの情報から、工具回転数、工具送り速度などの加工条件を取得する。
【００２６】
加工状態取得部７は、ＮＣシミュレーションの実行結果から、径切込み量、軸切込み量、接触面積、切削体積、切削距離、加工時間などの加工状態を逐次取得する。
【００２７】
工具摩耗量算出部８は、加工条件取得部６および加工状態取得部７で取得した情報を入力とし、工具摩耗データベース１０を参照し、工具摩耗量を算出する。
【００２８】
ＮＣプログラム最適化処理部９は、加工条件取得部６で取得した情報および工具摩耗量算出部８で算出した工具摩耗量に基づき、ＮＣプログラムを最適化し、最適化結果をＮＣプログラムデータベース１１に登録する。
【００２９】
工具摩耗データベース１０（図中、工具摩耗ＤＢと略す）は、実験的に求められた工具の摩耗量が登録されている。工具摩耗量は例えば、グラフ、テーブル、関数などとして登録されている。
【００３０】
ＮＣプログラムデータベース１１（図中、ＮＣプログラムＤＢと略す）は、既存のＮＣプログラムおよび最適化されたＮＣプログラムが登録されている。
【００３１】
最適化条件設定ファイル１２は、ＮＣプログラム最適化処理部９の処理で必要な設定値が登録されている。ＮＣプログラム最適化処理部９で直接入力を受け付ける場合には、最適化条件設定ファイル１２は必須ではない。
【００３２】
＜ＮＣプログラム生成方法による処理の概要＞
次に、図２により、本発明の一実施の形態に係るＮＣプログラム生成方法による処理の概要について説明する。図２は本発明の一実施の形態に係るＮＣプログラム生成方法による処理の概要を示すフローチャートである。
【００３３】
まず、ステップＳ２０１では、入力部１を介してＮＣプログラムＤＢ１１から処理対象とするＮＣプログラムの入力を受け付ける。ステップＳ２０２では、ステップＳ２０１で受け付けたＮＣプログラムについてＮＣシミュレーションを実行し、工具摩耗量を算出する。工具摩耗量算出処理の詳細については後述する。
【００３４】
ステップＳ２０３では、ステップＳ２０２で算出した工具摩耗量に基づき最適化処理実施の是非を判定し、最適化処理の完了を決定するか、ＮＣプログラムの最適化処理を行う。ＮＣプログラム最適化処理の詳細については後述する。
【００３５】
ステップＳ２０４では、ステップＳ２０３で最適化処理が完了したかどうかを判定し、終了していればステップＳ２０５へ処理を進め、完了していなければ、ステップＳ２０２に戻り、再度ステップＳ２０３で最適化したＮＣプログラムについて工具摩耗量の算出を行う。
【００３６】
ステップＳ２０５では、ステップＳ２０３で最適化したＮＣプログラムをＮＣプログラムＤＢ１１に登録する。
【００３７】
なお、ステップＳ２０１で入力を受け付けるＮＣプログラムは１つに限定されない。工程ごとに複数に分割されたＮＣプログラムや、同一のＮＣプログラムを複数個設定することが可能である。これにより１つの工具で工具交換を行わずに加工を継続した場合の工具摩耗を予測することができる。
【００３８】
＜工具摩耗量算出処理＞
次に、図３により、本発明の一実施の形態に係るＮＣプログラム生成方法による工具摩耗量算出処理について説明する。図３は本発明の一実施の形態に係るＮＣプログラム生成方法による工具摩耗量算出処理を示すフローチャートである。
【００３９】
まず、ステップＳ３０１では、ＮＣシミュレーションの番号ｎと工具摩耗量ＶＢn内部変数の値を初期化する。ステップＳ３０２では、ＮＣシミュレーションの処理間隔をΔｄとして工具移動距離を設定する。Δｄの値は入力部１が受け付けたユーザの入力値または加工条件取得部６、加工状態取得部７が初期状態で保持している値を用いる。
【００４０】
ステップＳ３０３では、ステップＳ３０２で設定した処理間隔ΔｄだけＮＣシミュレーションを実行し、ＮＣシミュレーションの番号ｎに１を加算する。
【００４１】
ステップＳ３０４では、ステップＳ３０３で実行したＮＣシミュレーションの結果から加工条件取得部６、加工状態取得部７が加工条件および加工状態を取得する。ステップＳ３０５では、ステップＳ３０４で取得した加工状態の情報から処理間隔Δｄの区間で工具が被削材を切削したかを判断する。
【００４２】
ステップＳ３０５で切削していればステップＳ３０６へ、ステップＳ３０５で切削していなければステップＳ３０８へ処理を進める。
【００４３】
ステップＳ３０６では、ステップＳ３０４で取得した加工条件、加工状態に基づき、工具摩耗ＤＢ１０を参照し、処理間隔Δｄの区間での工具摩耗進展量ΔＶＢを算出する。ステップＳ３０７では、前記算出した工具摩耗進展量ΔＶＢをそれまでの処理で算出した工具摩耗量ＶＢに加算する。
【００４４】
ステップＳ３０８では、処理対象のＮＣプログラムの終了を判定する。ＮＣプログラムの全ブロックを処理した場合は工具摩耗量算出処理を終了し、ＮＣプログラムに未処理のブロックがあればステップＳ３０３に戻り処理を継続する。
【００４５】
ここでブロックとはＮＣプログラムを構成する１行分のプログラムのことである。
【００４６】
また、処理間隔Δｄは、工具の移動距離（メートルまたはインチ）だけでなく、工具刃先が実際に加工した距離である摺動距離（メートルまたはインチ）や、加工時間（秒または分）、切削体積（立方メートルまたは立法インチ）などが採用可能である。
【００４７】
＜ＮＣプログラム生成方法で使用するデータおよび出力結果の一例＞
ここで、図４〜図９により、本発明の一実施の形態に係るＮＣプログラム生成方法で使用するデータおよび出力結果の一例について説明する。図４は本発明の一実施の形態に係るＮＣプログラム生成方法における切削状況を説明するための説明図、図５は本発明の一実施の形態に係るＮＣプログラム生成方法における工具摩耗を説明するための説明図、図６は本発明の一実施の形態に係るＮＣプログラム生成方法で使用される工具摩耗ＤＢに登録された工具摩耗グラフの一例を示す図、図７は本発明の一実施の形態に係るＮＣプログラム生成方法で使用される工具摩耗ＤＢに登録された工具摩耗テーブルの一例を示す図、図８は本発明の一実施の形態に係るＮＣプログラム生成方法による工具摩耗量の結果の一例を示す図、図９は本発明の一実施の形態に係るＮＣプログラム生成方法による予測の出力結果の一例を示す図である。
【００４８】
図４に示すように、１つまたは複数のカッターが付いた回転工具が回転数Ｓ（ｒｐｍ）で回転しながら、送り速度Ｆ（ｍｍ／ｍｉｎ）で進むことで被削材を切削している。また、この時の軸切込みおよび径切込みの量は、図４に示すように定義している。
【００４９】
図５に示すように、工具の代表的な摩耗として、逃げ面摩耗、すくい面摩耗があり、工具摩耗の判断基準として、逃げ面摩耗の最大幅ＶＢを用いることが一般的である。
【００５０】
ただし、工具摩耗ＤＢ１０に登録される工具摩耗量はこれに限定されない。例えば、カッター底面部の逃げ面摩耗ＶＢ’や、逃げ面摩耗の平均値ＶＢAVE、すくい面摩耗の深さＫＴや幅ＫＢなどが採用可能である。
【００５１】
なお、図４および図５においては、丸型のカッターを用いているが、カッター形状として、四角や三角などの多角形型、菱形、さらにそれらの角部にテーパや円弧を付けたものなどが採用可能である。また、交換式のカッターだけでなく、工具と刃が一体形状となっている工具なども採用可能である。
【００５２】
図６は、工具摩耗ＤＢ１０に登録された工具摩耗グラフの一例（横軸：加工時間（分）、縦軸：逃げ面摩耗（ｍｍ））を示しており、図６の例では軸切込み量を一定とし、径切込み量を変化させた場合（１２．５ｍｍ、２５．０ｍｍ、３７．５ｍｍ）の実験結果を示している。軸切込み量、径切込み量などの加工状態を変数としてもっていること、また、直線ではなく複数の変曲点を持つグラフであることを特徴としている。
【００５３】
図７は工具摩耗ＤＢ１０に登録された工具摩耗テーブルの一例を示しており、対象とする被削材材質、工具型番、工具径、カッターＲなどの情報と、カッターの刃数、回転数、送り速度、一刃送り、切削速度、径切込み量、軸切込み量などの加工条件と、加工時間ごとの工具摩耗量が関連づけられて登録されている。
【００５４】
図７の例では、テーブルの列７０１および列７０２の対象は同一（ＳＵＳ４０３）であり、加工条件のうち径切込み量のみ変化させた場合（１２．５ｍｍ、２５ｍｍ）の実験結果を示している。加工時間ごとの工具摩耗量の欄は、実験で取得したデータによって空欄があったり、加工時間の列が追加されてもよい。
【００５５】
また、工具摩耗ＤＢ１０に登録されている工具摩耗を定義する関数の一例として、以下の数１の式を用いている。
【００５６】
工具摩耗量ＶＢnは、対象および加工状態から決定される係数αiと加工時間ｘの関数として定義している。ここでβは３以上の値であり、直線ではなく複数の変曲点を持つ関数であることを特徴としている。
【００５７】
【数１】
0005792649.tif 000002
【００５８】
また、工具摩耗ＤＢ１０に登録される関数は数１の式に限らず、切片が０であり、複数の変曲点を持つ関数が採用可能である。
【００５９】
なお、図６、図７、数１の式においては、加工時間ごとの工具摩耗量を登録しているが、工具の移動距離や、工具刃先が実際に加工した距離である摺動距離、切削体積ごとの工具摩耗量などが登録データとして採用可能である。
【００６０】
また、図８は工具摩耗量算出部８によって算出された工具摩耗量の予測結果を出力部２で表示した一例である。工具摩耗量がグラフとして表示され、タブ切替などにより加工時間（横軸：加工時間（分）、縦軸：逃げ面摩耗量（ｍｍ））だけでなく、工具の移動距離や、工具刃先が実際に加工した距離である摺動距離、切削体積ごとの工具摩耗量などを表示することが可能である。
【００６１】
また、前記工具摩耗ＤＢ１０は、予測の分布を係数や関数として持ってもよい。分布の関数として正規分布や三角型ファジィ数などが採用可能である。
【００６２】
図９は分布を持った工具摩耗量予測の出力結果の一例である。工具摩耗量が正規分布９０１の分布を持って予測されていることがわかる。
【００６３】
さらに、前記工具摩耗ＤＢ１０は、対象および加工条件の組み合わせに対して限界工具摩耗量ＶＢMAXを登録することが可能である。
【００６４】
＜ＮＣプログラム最適化処理＞
次に、図１０〜図１３により、本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理について説明する。図１０は本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を示すフローチャート、図１１は本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の最適化条件の入力画面の表示の一例を示す図、図１２は本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の最適化条件設定ファイルの一例を示す図、図１３は本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理の加工条件最適化処理を示すフローチャートである。
【００６５】
まず、図１０において、ステップＳ１００１では、最適化条件を設定する。設定値は、入力部１で受け付けたユーザの入力値または最適化条件設定ファイル１２の値を用いる。
【００６６】
ステップＳ１００２では、許容する限界工具摩耗量ＶＢMAXを設定する。限界工具摩耗量ＶＢMAXの値は入力部１が受け付けたユーザの入力値または工具摩耗ＤＢ１０で保持している値を用いる。
【００６７】
ステップＳ１００３では、工具摩耗量算出部８で取得した工具摩耗量ＶＢnを設定する。ステップＳ１００４では、限界工具摩耗量ＶＢMAXと工具摩耗量ＶＢnとの乖離度を百分率で示した値γを算出する。γは以下の数２の式より算出される。
【００６８】
【数２】
0005792649.tif 000003
【００６９】
ステップＳ１００５では、ステップＳ１００１の設定値から加工条件の変更が可能かを判断する。ステップＳ１００５で変更可能であればステップＳ１００６へ処理を進め、ステップＳ１００５で変更不可であればステップＳ１００８へ処理を進める。
【００７０】
ステップＳ１００６では、ステップＳ１００４で算出した乖離度γの値が０より大きく、ステップＳ１００１で設定した最適化条件γINIよりも小さいかどうかを判定する。ステップＳ１００６で判定条件を満たせばステップＳ１０１０へ処理を進め、ステップＳ１００６で判定条件を満たさなければステップＳ１００７へ処理を進める。
【００７１】
乖離度γの値が０より大きく、かつ、最適化条件γINIよりも小さければ、工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXを越えない範囲で、工具摩耗量ＶＢnと限界工具摩耗量ＶＢMAXとの乖離が、設定した条件内に収まっていることとなることから、最適化処理を完了してよいと判定できる。
【００７２】
ステップＳ１００７では、加工条件の最適化処理を行う。加工条件最適化処理については後述する。ステップＳ１００８では、ステップＳ１００４で算出した乖離度γの値が０より大きいかどうかを判定する。ステップＳ１００８で判定条件を満たせばステップＳ１０１０へ処理を進め、ステップＳ１００８で判定条件を満たさなければステップＳ１００９へ処理を進める。
【００７３】
加工条件の変更が不可であることから、最適化条件γINIの値に関わらず乖離度γの値が０より大きいこと、すなわち工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXを越えていないことを判定することで、最適化処理の完了を判定できる。
【００７４】
ステップＳ１００９では、対象とするＮＣプログラムに工具交換コードを挿入する処理を行う。この工具交換コード挿入処理については後述する。
【００７５】
ステップＳ１０１０では、最適化処理の完了を決定し、処理を終了する。この決定は、図２に示すフローチャートのステップＳ２０４の最適化処理の完了判定に用いられる。
【００７６】
図１１は、ＮＣプログラム最適化処理における最適化条件の入力画面の表示の一例である。図１１に示す画面は、出力部２に表示され、入力部１でユーザの入力を受け付ける。最適化条件として、工具摩耗量乖離度γの許容限界γINI、加工条件変更の可否（可：Ｙｅｓ、否：Ｎｏ）、実行ＮＣプログラム数の変更可否、最適化の優先条件の選択（加工時間、工具交換回数）、ブロック途中での工具交換の可否、代替パスの検索可否などが数値入力および選択式にて設定可能である。
【００７７】
図１２は、ＮＣプログラム最適化処理における最適化条件設定ファイル１２の一例である。図１１に示す例と同様の最適化条件がiniファイルやＸＭＬファイルなどテキスト情報として登録される。
【００７８】
また、図１０のステップＳ１００７の加工条件最適化処理は、図１３に示すように、工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXに近づくように加工条件を最適化することで、加工能率を上げて加工時間を短縮したり、あえて加工条件を下げて工具使用量を適正化することが可能である。
【００７９】
まず、ステップＳ１３０１では、工具摩耗量ＶＢnと限界工具摩耗量ＶＢMAXとを比較する。ステップＳ１３０１で工具摩耗量ＶＢnの方が大きければステップＳ１３０２へ処理を進め、ステップＳ１３０１で工具摩耗量ＶＢnの方が大きくなければステップＳ１３０９へ処理を進める。
【００８０】
ステップＳ１３０２では、入力を受け付けたＮＣプログラムの数を確認し、ＮＣプログラムが複数あればステップＳ１３０３へ処理を進め、ＮＣプログラムが１つであればステップＳ１３０８へ処理を進める。
【００８１】
ステップＳ１３０３では、図１０のステップＳ１００１の設定値から実行するＮＣプログラムの数を変更可能かを判断する。ステップＳ１３０３で変更可能であればステップＳ１３０４へ処理を進め、ステップＳ１３０３で変更不可であればステップＳ１３０８へ処理を進める。
【００８２】
ステップＳ１３０４では、図１０のステップＳ１００１の設定値から優先する最適化条件を判断する。ステップＳ１３０４で加工時間優先であればステップＳ１３０５へ処理を進め、ステップＳ１３０４で加工時間優先ではなく工具交換回数優先であればステップＳ１３０８へ処理を進める。
【００８３】
ステップＳ１３０５では、複数あるＮＣプログラムから一番最後のＮＣプログラム１つを実行対象から除く処理を行う。ステップＳ１３０６では、実行するＮＣプログラムを１つ除いた場合の工具摩耗量ＶＢnと限界工具摩耗量ＶＢMAXとを比較する。
【００８４】
ステップＳ１３０６でＮＣプログラムを１つ除いても工具摩耗量ＶＢnの方が大きければステップＳ１３０７へ処理を進め、ステップＳ１３０６で工具摩耗量ＶＢnの方が小さければステップＳ１３０９へ処理を進める。
【００８５】
ステップＳ１３０７では、実行ＮＣプログラムの残り数を確認し、最後の１つであれば、加工条件を上げることができないためステップＳ１３０８へ処理を進め、複数残っていればステップＳ１３０５へ戻る。
【００８６】
ステップＳ１３０８では、本処理を行う場合の乖離度γは負であるため、加工条件を｜γ｜％下げることで、工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXを下回るようにし、設定した工具で加工が終了できるようＮＣプログラムを最適化する。
【００８７】
ステップＳ１３０９では、本処理を行う場合の乖離度γは正であるため、加工条件をγ％上げることで、工具摩耗量ＶＢnを限界工具摩耗量ＶＢMAXに近づけ、設定した工具を無駄なく使い切るようＮＣプログラムを最適化する。
【００８８】
加工条件を変更する場合、一刃送りを一定とし、回転数を変更することで、切削速度、送り速度を回転数に伴い変更する方法が一般的であるが、本実施の形態での加工条件最適化はこの方法に限定されない。例えば、回転数を一定とし、一刃送りを変更することで、送り速度を一刃送りに伴い変更する方法が採用可能である。
【００８９】
＜加工条件最適化処理を実行した例＞
次に、図１４および図１５により、本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を実行した例について説明する。図１４および図１５は本発明の一実施の形態に係るＮＣプログラム生成方法によるＮＣプログラム最適化処理を実行した例について説明するための説明図である。
【００９０】
図１４に示す例では、最適化処理条件は、図１１に示す設定を用いることとする。この例では、ＶＢn＝３．２ｍｍ、ＶＢMAX＝４．０ｍｍであり、工具摩耗量ＶＢnの方が限界工具摩耗量ＶＢMAXより小さいことから、図１３のフローチャートにおいて、ステップＳ１３０１、Ｓ１３０９の順に処理が進む。ステップＳ１３０９において、乖離度γ＝２０（％）より、加工条件を２０％上げる。この例では、一刃送りを一定とし、回転数を１０００ｒｐｍから１２００ｒｐｍへと２０％増加させることで、切削速度が１５７ｍ／ｍｉｎから１８８ｍ／ｍｉｎに、送り速度が２００ｍｍ／ｍｉｎから２４０ｍｍ／ｍｉｎに向上し、加工時間を２０％短縮する結果となっている。最適化後、図２のステップＳ２０４からステップＳ２０２に戻り、最適化後のＮＣプログラムの工具摩耗量を算出し、ステップＳ２０３へと処理が進む。ＶＢn＝３．９ｍｍ、ＶＢMAX＝４．０ｍｍから乖離度γ＝２．５（％）となり、図１０のステップＳ１００６を満たし、ステップＳ１０１０の処理にて、最適化処理が完了する。
【００９１】
図１５に示す例では、最適化処理条件は、図１１の設定を用いることとする。この例では、ＶＢn＝５．０ｍｍ、ＶＢMAX＝４．０ｍｍであり、工具摩耗量ＶＢnの方が限界工具摩耗量ＶＢMAXより大きく、ＮＣプログラムが複数あり、最適化条件において実行ＮＣプログラム数の変更が不可であることから、図１３のフローチャートにおいて、ステップＳ１３０１、Ｓ１３０２、Ｓ１３０３、Ｓ１３０８の順に処理が進む。
【００９２】
ステップＳ１３０８において、乖離度γ＝−２５（％）より、加工条件を２５％下げる。この例では、一刃送りを一定とし、回転数を１４００ｒｐｍから１０５０ｒｐｍへと２５％減少させることで、切削速度が２２０ｍ／ｍｉｎから１６５ｍ／ｍｉｎに、送り速度が２８０ｍｍ／ｍｉｎから２１０ｍｍ／ｍｉｎに下げることで、加工時間は２５％増加するが、工具交換なしに２つのＮＣプログラムからなる加工工程を終了可能とする結果となっている。
【００９３】
最適化後、図２のステップＳ２０４からステップＳ２０２に戻り、最適化後のＮＣプログラムの工具摩耗量を算出し、ステップＳ２０３へと処理が進む。ＶＢn＝３．９５ｍｍ、ＶＢMAX＝４．０ｍｍから乖離度γ＝１．２５（％）となり、図１０のステップＳ１００６を満たし、ステップＳ１０１０の処理にて、最適化処理が完了する。
【００９４】
＜工具交換コード挿入処理＞
次に、図１６により、本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理について説明する。図１６は本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を示すフローチャートである。
【００９５】
図１６に示すように、工具交換コードをＮＣプログラムの適切な箇所に挿入することで、工具の摩耗量限界を越えないＮＣプログラムとすることが可能である。
【００９６】
まず、ステップＳ１６０１では、図１０のステップＳ１００１の設定値からＮＣプログラムを構成するブロックの途中での工具交換の可否を判断する。
【００９７】
ステップＳ１６０１でブロック途中での工具交換が可能であればステップＳ１６０２へ処理を進め、ステップＳ１６０１で不可であればステップＳ１６０３へ処理を進める。
【００９８】
ステップＳ１６０２では、ＶＢs≦ＶＢMAX（ｓ≦ｎ）となる位置でブロックを分割し、工具交換コードを挿入する。
【００９９】
ステップＳ１６０３では、図１０のステップＳ１００１の設定値から代替パスの検索を行うか否かを判断する。ステップＳ１６０３で代替パスを検索する場合にはステップＳ１６０４へ処理を進め、ステップＳ１６０３で検索しない場合にはステップＳ１６０８へ処理を進める。
【０１００】
ステップＳ１６０４では、ＮＣプログラムＤＢ１１から対象とするＮＣプログラムの代替パスを検索する。ステップＳ１６０５では、ステップＳ１６０４での検索の結果、代替パスがあればステップＳ１６０６へ処理を進め、代替パスがなければステップＳ１６０８へ処理を進める。代替パスは複数あっても構わない。
【０１０１】
ステップＳ１６０６では、対象のＮＣプログラムおよび代替パスの各パスでのＶＢs＝ＶＢMAX（ｓ≦ｎ）となるブロックの先頭での工具摩耗量ＶＢt（ｔ≦ｓ）を算出する。ステップＳ１６０７では、ＶＢtの値が最大となるパスを選択し、ｔの位置に工具交換コードを挿入する。対象ＮＣプログラムのパスでのｔの値が、代替パスでのｔの値よりも大きければ、代替パスを利用せずに対象ＮＣプログラムを用いる。
【０１０２】
ステップＳ１６０８では、ＶＢs≦ＶＢMAX（ｓ≦ｎ）となるブロックの先頭に工具交換コードを挿入する。
【０１０３】
＜工具交換コード挿入処理を実行した例＞
次に、図１７および図１８により、本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を実行した例について説明する。図１７および図１８は本発明の一実施の形態に係るＮＣプログラム生成方法による工具交換コード挿入処理を実行した例について説明するための説明図である。
【０１０４】
図１７に示す例では、処理間隔Δｄは工具移動距離０．０１ｍｍを、最適化処理条件は図１１の設定を用いることとする。この例では、ブロック途中での交換が可能であることから、図１６のフローチャートにおいて、ステップＳ１６０１、Ｓ１６０２の順に処理が進む。
【０１０５】
最適化前のＮＣプログラム１７０１のブロック「Ｙ１００．」の途中、Ｙ軸方向に５３．１０ｍｍ移動したところで工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXを越えるとする。ステップＳ１６０２の処理では、まず、ＶＢs≦ＶＢMAXとなる位置、すなわち５３．１０ｍｍから処理間隔Δｄ＝０．０１ｍｍを減じた５３．０９ｍｍとなる位置でブロックを分割する。次に、分割したブロックの後に工具交換コードを挿入する。
【０１０６】
最後に、分割したブロックの残り移動量を補間するため、１００ｍｍ−５３．０９ｍｍ＝４６．９１ｍｍの移動分のブロックを挿入する。以上の結果、最適化後のＮＣプログラム１７０２では、最適化前のＮＣプログラム１７０１の「Ｙ１００．」が、「Ｙ５３．０９」「Ｔ１００１」「Ｙ４６．９１」に変換される。
【０１０７】
図１８に示す例では、処理間隔Δｄは工具移動距離０．０１ｍｍを、最適化処理条件はブロック途中での工具交換不可、代替パスの検索ありとする。また、代替パスが１つＮＣプログラムＤＢ１１にあるとする。この例では、ブロック途中での交換が不可であり、代替パスの検索を行い、代替パスが存在することから、図１６のフローチャートにおいて、ステップＳ１６０１、Ｓ１６０３、Ｓ１６０４、Ｓ１６０５、Ｓ１６０６、Ｓ１６０７の順に処理が進む。
【０１０８】
図１８の１８０１（５０ｍｍ×３０ｍｍ×３０ｍｍ）のハッチング面を加工するＮＣプログラムのパスとして１８０２が入力されており、代替パスとして１８０３がＮＣプログラムＤＢ１１に登録されている。ステップＳ１６０６において、各パスでＶＢs≦ＶＢMAX（ｓ≦ｎ）となるブロックの先頭での工具摩耗量ＶＢt（ｔ≦ｓ）を算出すると、対象ＮＣプログラムでは、ｔ＝１０００の位置で、ＶＢt＝３．０、代替パスでは、ｔ＝１２００の位置でＶＢt＝３．５となった。ステップＳ１６０７において、ＶＢtの値が最大となるパスとして代替パスを選択し、ｔ＝１２００の位置に工具交換コードを挿入する。この処理により、設定された最適化条件の中で可能な限り工具摩耗量を限界工具摩耗量に近づけるＮＣプログラムの作成が可能となる。
【０１０９】
＜境界摩耗を考慮した軸切込み変化加工方法＞
次に、図１９〜図２３により、本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明する。図１９〜図２３は本発明の一実施の形態に係るＮＣプログラム生成方法による軸切込み変化加工について説明するための説明図である。
【０１１０】
加工前の被削材は角材などが用いられることが多く、仕上げ加工によって設計形状に追い込む前に、機械の平行移動軸のみを用い、軸切込みを一定とすることで加工条件を上げて加工を行う荒加工を行うことが一般的である。
【０１１１】
荒加工では、工具逃げ面が摩耗限界に達する前に工具の交換を行っている。荒加工は仕上げ加工に比べ要求精度が低いので、工具交換は工具破損など、安全面を考慮したタイミングで行っていると言える。荒加工では、除去量が多いため、工具使用量が多く、工具交換による作業遅延や工具費の増大が課題となっている。
【０１１２】
図１９に示すように、荒加工では摩耗の進展は境界部で顕著であり、これを境界摩耗と呼ぶ。境界摩耗が顕著となる理由として、加工面において外気と接する境界部において酸化反応が起こるため摩耗進展が大きくなるとする説がある。
【０１１３】
このため、工具底面から境界部までの部分での摩耗進展は、工具が被削材と接触しているにも関わらず、境界部に比べ極めて小さい。ＮＣプログラム最適化処理部において、摩耗が進展していない領域を有効活用する加工方法を提案することで、工具費および工具交換回数の低減に寄与する。
【０１１４】
図２０（ａ）に示すように、カッター径がＲ６の工具を用いて軸切込み３ｍｍで加工を行うと、図２０（ｂ）の２００１で示す境界摩耗が進展する。
【０１１５】
従来の加工方法では、図２０（ｂ）の２００１で示す摩耗が摩耗限界に達した時点で工具交換を行うことが一般的である。しかし、図２０（ｂ）の２００２で示す部分は加工中に被削材と接触しているにも関わらず、２００１に比べて摩耗量は極めて小さく、十分利用可能である。
【０１１６】
ここで、軸切込み量を３ｍｍから２ｍｍに変化させると図２０（ｂ）の２００１で示す摩耗は被削材と接触しなくなるため進展しなくなり、図２０（ｃ）の２００３で示す境界摩耗が進展する。
【０１１７】
さらに軸切込み量を２ｍｍから１ｍｍに変化させることで図２０（ｃ）の２００３で示す摩耗が進展しなくなり、図２０（ｄ）の２００４で示す境界摩耗が進展する。
【０１１８】
上記のように、軸切込み量を制御し、境界摩耗を段階的に発生させる加工方法とすることで、工具を使い切ることができる。
【０１１９】
図２１〜図２３は、軸切込み１ｍｍ、軸切込み２ｍｍ、軸切込み２ｍｍから途中で１ｍｍに変化させた場合の３つの加工方法を比較した結果の一例である。図２１において、条件２１０３で、軸切込みを変化させるタイミングは逃げ面摩耗ＶＢ＝０．２ｍｍとした。また、限界摩耗はＶＢ＝０．４ｍｍとした。
【０１２０】
図２２（ａ）に示すように、図２１の条件２１０３の加工方法を用いることにより、条件２１０１、条件２１０２に比べ、限界摩耗ＶＢ＝０．４ｍｍになるまでの加工時間が長くなっており、図２２（ｂ）に示すように、限界摩耗ＶＢ＝０．４ｍｍになる工具寿命としては、最大で２倍の効果があることが分かる。
【０１２１】
また、図２３（ａ）に示すように、図２１の条件２１０３の加工方法を用いることにより、条件２１０１、条件２１０２に比べ、限界摩耗ＶＢ＝０．４ｍｍになるまでの除去体積が多くなっており、図２３（ｂ）に示すように、限界摩耗ＶＢ＝０．４ｍｍになるまでの除去体積としては、最大で１．８倍の効果があることが分かる。
【０１２２】
＜境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理＞
次に、図２４により、本発明の一実施の形態に係るＮＣプログラム生成方法において、境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理について説明する。図２４は本発明の一実施の形態に係るＮＣプログラム生成方法において境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を示すフローチャートである。
【０１２３】
まず、図２４において、ステップＳ２２０１では、最適化条件を設定する。最適化条件として、軸切込み量の変化幅を設定する。設定値は、入力部１で受け付けたユーザの入力値または最適化条件設定ファイルの値を用いる。最適化条件の設定は、図１１および図１２に記載の内容を変更した形でも実現可能である。
【０１２４】
ステップＳ２２０２では、許容する限界工具摩耗量ＶＢMAXを設定する。限界工具摩耗量ＶＢMAXの値は入力部１が受け付けたユーザの入力値または工具摩耗ＤＢ１０で保持している値を用いる。限界工具摩耗量ＶＢMAXは軸切込み量に応じて設定してもよい。
【０１２５】
ステップＳ２２０３では、ＮＣシミュレータ５により被削材の一面を切削する過程をシミュレーションする。
【０１２６】
ステップＳ２２０４では、工具摩耗量算出部８で取得した工具摩耗量ＶＢnを設定する。
【０１２７】
ステップＳ２２０５では、限界工具摩耗量ＶＢMAXと工具摩耗量ＶＢnとの大小関係を判定する。ステップＳ２２０５で工具摩耗量ＶＢnが限界工具摩耗量ＶＢMAXを越えていなければステップＳ２２０６へ、越えていればステップＳ２２０７へ処理を進める。
【０１２８】
ステップＳ２２０６では、被削材の加工対象面全てを加工したかを判定する。全面加工終了していれば処理を完了し、全面加工終了していなければ、ステップＳ２２０３へ進み、次の面を加工する。
【０１２９】
ステップＳ２２０７では、ステップＳ２２０１の条件設定に基づき、軸切込み量を現在より小さい値に変更し、ＮＣプログラムを再生成する。この際、軸切込み量が小さくなることで、一面切削あたりの除去体積は小さくなるため、面を切削する回数は増加し、増加分の加工パスおよびＮＣプログラムも生成される。
【０１３０】
＜境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を実行した例＞
次に、図２５により、本発明の一実施の形態に係るＮＣプログラム生成方法において境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を実行した例について説明する。図２５は本発明の一実施の形態に係るＮＣプログラム生成方法において境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を実行した例について説明するための説明図である。
【０１３１】
図２５に示す例では、被削材２３０１の上面１０ｍｍにあたる２３０２の領域を荒加工で除去するとする。図２のフローチャートの工具摩耗量算出処理Ｓ２０２の結果、軸切込み２．０ｍｍの場合、５面目の途中で限界摩耗に達するとする。従来の加工方法では、安全をみて４面目終了時点で工具交換を行い、残り１面を新しい工具で加工する必要があるため、合計で２本の工具が必要である。
【０１３２】
本実施の形態では、境界摩耗を考慮した軸切込み変化加工によるＮＣプログラム最適化処理を実行するにあたり、図２４に示すステップＳ２２０１では最適化条件として、軸切込み変化量１．０ｍｍを設定するとする。また、ステップＳ２２０３においてＮＣシミュレータで１面ごとに切削し、ステップＳ２２０４で工具摩耗量を算出する。
【０１３３】
ステップＳ２２０５での判定の結果、４面まではステップＳ２２０２で設定した限界摩耗に達しないため、ステップＳ２２０６へと進み、全面加工終了していないため、ステップＳ２２０３へと戻る。５面目終了時点では限界摩耗を越えるため、ステップＳ２２０５からステップＳ２２０７へと進む。
【０１３４】
ステップＳ２２０７において、ステップＳ２２０１での設定により、軸切込みを２．０ｍｍから１．０ｍｍに変更し、ＮＣプログラムも残り１面分から軸切込み変化に応じて２面分に変更し再生成する。再生成したＮＣプログラムを用いてステップＳ２２０３において５面目の加工を再度実行する。
【０１３５】
このように、本実施の形態では、軸切込みを変更することで工具交換を行わずに全面加工を終了することができる。この処理により、設定された最適化条件の中で可能な限り工具を使い切り、工具交換回数を少なくするＮＣプログラムの作成が可能となる。
【０１３６】
なお、本発明は上記した実施の形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施の形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。
【０１３７】
また、ある実施の形態の構成の一部を他の実施の形態の構成に置き換えることが可能であり、また、ある実施の形態の構成に他の実施の形態の構成を加えることも可能である。また、実施の形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。
【０１３８】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部または全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、または、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に置くことができる。
【０１３９】
また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【産業上の利用可能性】
【０１４０】
本発明は、３次元形状切削を行うＮＣ工作機械のＮＣプログラム生成方法に関し、工具の摩耗予測を行うシステムや装置などに広く適用可能である。
【符号の説明】
【０１４１】
１…入力部、２…出力部、３…ＣＡＤ、４…ＣＡＭ、５…ＮＣシミュレータ、６…加工条件取得部、７…加工状態取得部、８…工具摩耗量算出部、９…ＮＣプログラム最適化処理部、１０…工具摩耗データベース（工具摩耗ＤＢ）、１１…ＮＣプログラムデータベース（ＮＣプログラムＤＢ）、１０１…処理部、１０２…記憶部、１０３…接続線。
【図１】
0005792649.tif 000004
【図２】
0005792649.tif 000005
【図３】
0005792649.tif 000006
【図４】
0005792649.tif 000007
【図５】
0005792649.tif 000008
【図６】
0005792649.tif 000009
【図７】
0005792649.tif 000010
【図８】
0005792649.tif 000011
【図１０】
0005792649.tif 000012
【図１１】
0005792649.tif 000013
【図１２】
0005792649.tif 000014
【図１３】
0005792649.tif 000015
【図１４】
0005792649.tif 000016
【図１５】
0005792649.tif 000017
【図１６】
0005792649.tif 000018
【図１７】
0005792649.tif 000019
【図１８】
0005792649.tif 000020
【図１９】
0005792649.tif 000021
【図２０】
0005792649.tif 000022
【図２１】
0005792649.tif 000023
【図２２】
0005792649.tif 000024
【図２３】
0005792649.tif 000025
【図２４】
0005792649.tif 000026
【図２５】
0005792649.tif 000027
【図９】
0005792649.tif 000028