(57)【特許請求の範囲】
【請求項１】
ＮＣプログラムにて加工制御が行われるＮＣ加工において、ＮＣ加工に関する切削条件を、切削条件データベースとして記憶する記憶手段と、既に作成されているＮＣプログラムを分析してそのプログラムに用いられている切削条件を抽出する加工方法分析手段と、抽出された切削条件と同じ条件を前記切削条件データベースから検索し、検索された切削条件と抽出された切削条件とを、予め定められた加工時間優先又は精度優先の優先基準に従って比較し、前記優先基準に適する方の切削条件に修正して前記ＮＣプログラムを再編集するＮＣプログラム再編集手段と、を有するＮＣ加工におけるＮＣプログラムの最適化装置。
【請求項２】
前記切削条件データベースの検索に基づいて前記ＮＣプログラムを再編集して最適化する最適化モードと、前記加工方法分析手段により抽出された切削条件を前記切削条件データベースに記憶する解析記憶モードと、を切り換えるモード切換手段を有する請求項１記載のＮＣ加工におけるＮＣプログラムの最適化装置。
【請求項３】
前記ＮＣプログラム再編集手段は、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りに最適化することが可能な請求項１又は２記載のＮＣ加工におけるＮＣプログラムの最適化装置。
【請求項４】
前記ＮＣプログラム再編集手段は、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りのパターンの中から最適化する条件を選択することが可能な請求項１又は２記載のＮＣ加工におけるＮＣプログラムの最適化装置。
【請求項５】
ＮＣプログラムにて加工制御が行われるＮＣ加工において、既に作成されているＮＣプログラムを分析してそのプログラムに用いられている切削条件を抽出する加工方法分析ステップと、ＮＣ加工に関する切削条件を切削条件データベースとして記憶する記憶手段から、前記抽出された切削条件と同じ条件を検索し、検索された切削条件と抽出された切削条件とを、予め定められた加工時間優先又は精度優先の優先基準に従って比較し、前記優先基準に適する方の切削条件に修正して前記ＮＣプログラムを再編集するＮＣプログラム再編集ステップと、を有するＮＣ加工におけるＮＣプログラムの最適化方法。
【請求項６】
前記切削条件データベースの検索に基づき前記ＮＣプログラム再編集ステップにより前記ＮＣプログラムを再編集して最適化する最適化モードと、前記加工方法分析ステップにより抽出された切削条件を前記切削条件データベースに記憶する記憶ステップを含む解析記憶モードと、を切り換えるモード切換ステップを有する請求項５記載のＮＣ加工におけるＮＣプログラムの最適化方法。
【請求項７】
前記ＮＣプログラム再編集ステップは、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りに最適化することが可能な請求項５又は６記載のＮＣ加工におけるＮＣプログラムの最適化方法。
【請求項８】
前記ＮＣプログラム再編集ステップは、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りのパターンの中から最適化する条件を選択することが可能な請求項５又は６記載のＮＣ加工におけるＮＣプログラムの最適化方法。
【発明の詳細な説明】
【０００１】
技術分野
本発明はＮＣ加工におけるＮＣプログラムの最適化方法及び装置、特に数値制御情報を用いて各種の加工制御を行うＮＣ加工において、実加工に用いられるＮＣプログラムから各種の加工情報あるいは加工条件を抽出し、これが最適で無かった場合、既に記憶してある加工情報あるいは加工条件を基にＮＣプログラムを最適化し、この最適化された実加工プログラムの加工情報あるいは加工条件を抽出し、これを汎用情報として当該数値制御される工作機械あるいは他の数値制御工作機械に発展的に利用可能な情報として記憶することのできるＮＣプログラムの最適化方法及び装置に関するものである。
【０００２】
背景技術
通常、ＮＣプログラムなどの数値制御情報には、工具割り出し指令、主軸回転数指令、送り速度指令、移動・補間指令、補助機能指令等の独自情報や加工履歴が組み込まれ、加工制御対象である工作機械に適する数値制御情報がその都度ＮＣプログラムとして作成されている。
【０００３】
従来における数値制御情報は、素材データと最終部品形状が与えられることによって、ＣＡＤ／ＣＡＭあるいは自動プログラミングツール等を用いて所望のＮＣプログラムとして作成され、これを実際の工作機械においてシミュレーションあるいはテストカットを繰り返しながら現場にてＮＣプログラムの調整（修正編集）を行い、最終的に実加工ＮＣプログラムとして工作機械の加工制御に用いられていた。
【０００４】
このように従来のＮＣ加工システムにおいては、数値制御情報を修正編集したときの作業を繰り返し利用したり、フィードバックしたり、あるいはノウハウとして蓄積再利用可能としていなかった。
【０００５】
この問題を解決するものとしてＰＣＴ／ＪＰ９６／０３２６４のような技術が研究開発されている。これは、数値制御情報、特に修正編集の完了した実加工ＮＣプログラムを分析し、最終的に現場で量産加工に用いられる実加工ＮＣプログラムから逆に現場ノウハウその他の各種の加工条件すなわちある特定の作業に対する最適な加工情報あるいは加工条件を抽出し、これをデータベースとして用いることを可能とするものである。そうすることにより、最適な現場加工プログラムをこれらのフィードバックされたデータベースから瞬時に自動プログラミングすることが可能となる。
【０００６】
このように、前述した従来技術では、分析した実加工ＮＣプログラムの各種加工情報あるいは加工条件をノウハウとしてデータベース化することができる。しかし、実加工ＮＣプログラムの中には、修正編集が完了している実加工ＮＣプログラムでも時代の流れと共に最適ではなくなってしまっているもの、工具・チップ等の改良により同じ工具でも切削条件が最適でなくなっているもの、或いは、修正編集が完了しているかどうかが不明のものもある。従って、これらの実加工ＮＣプログラムを分析し、その加工情報や加工条件をデータベースにそのまま加えてしまうと、むしろデータベースが最適ではなくなってしまうという問題があった。
【０００７】
本発明は、このような課題に鑑みなされたものであり、その目的は、実加工ＮＣプログラムの加工情報あるいは加工条件が最適でない場合でも、その実加工ＮＣプログラムを最適化し、この最適化された実加工ＮＣプログラムの加工情報あるいは加工条件をデータベースとして用いることを可能とすることにある。
【０００８】
発明の開示
本発明は、ＮＣプログラムにて加工制御が行われるＮＣ加工において、ＮＣ加工に関する切削条件を、切削条件データベースとして記憶する記憶手段と、既に作成されているＮＣプログラムを分析してそのプログラムに用いられている切削条件を抽出する加工方法分析手段と、抽出された切削条件と同じ条件を前記切削条件データベースから検索し、検索された切削条件と抽出された切削条件とを、予め定められた加工時間優先又は精度優先の優先基準に従って比較し、前記優先基準に適する方の切削条件に修正して前記ＮＣプログラムを再編集するＮＣプログラム最適化手段と、を有することを特徴とする。
【０００９】
また、本発明は、前記切削条件データベースの検索に基づいて前記ＮＣプログラムを再編集する最適化モードと、前記加工方法分析手段により抽出された切削条件を前記切削条件データベースに記憶する解析記憶モードと、を切り換えるモード切換手段を有することを特徴とする。
【００１０】
更に本発明は、前記ＮＣプログラム再編集手段が、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りに最適化することが可能なことを特徴とする。
【００１１】
更に本発明は、前記ＮＣプログラム再編集手段が、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りのパターンの中から最適化する条件を選択することが可能なことを特徴とする。
【００１２】
更に本発明は、ＮＣプログラムにて加工制御が行われるＮＣ加工において、既に作成されているＮＣプログラムを分析してそのプログラムに用いられている切削条件を抽出する加工方法分析ステップと、ＮＣ加工に関する切削条件を切削条件データベースとして記憶する記憶手段から、前記抽出された切削条件と同じ条件を検索し、検索された切削条件と抽出された切削条件とを、予め定められた加工時間優先又は精度優先の優先基準に従って比較し、前記優先基準に適する方の切削条件に修正して前記ＮＣプログラムを再編集するＮＣプログラム再編集ステップと、を有することを特徴とする。
【００１３】
更に本発明は、前記切削条件データベースの検索に基づき前記ＮＣプログラム再編集ステップにより前記ＮＣプログラムを再編集して最適化する最適化モードと、前記加工方法分析ステップにより抽出された切削条件を前記切削条件データベースに記憶する記憶ステップを含む解析記憶モードと、を切り換えるモード切換ステップを有することを特徴とする。
【００１４】
更に本発明は、前記ＮＣプログラム再編集ステップが、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りに最適化することが可能なことを特徴とする。
【００１５】
更に本発明は、前記ＮＣプログラム再編集ステップが、前記加工時間優先の優先基準に従って再編集するパターンと、前記精度優先の優先基準に従って再編集するパターンとの２通りのパターンの中から最適化する条件を選択することが可能なことを特徴とする。
【００１６】
以上のように、本発明に係るＮＣ加工システムによれば、実加工ＮＣプログラムの加工条件が最適でない場合、その実加工ＮＣプログラムの加工方法を分析して、データベースの既存のデータを基にその実加工ＮＣプログラムを最適化することができる。そして、この最適化された実加工ＮＣプログラムの加工条件を抽出してデータベース化することが可能となるので、データベース化される加工条件は最適なデータのみとなり、データベースの加工条件を常に最適に保つことが可能となる。
【００１７】
発明を実施するための最良の形態
以下図面に基づいて、本発明の好適な実施形態を詳細に説明する。
【００１８】
図１には、本発明に係るＮＣプログラムの最適化方法及び装置が適用された数値制御工作機械システムの全体構成が示されている。
【００１９】
従来と同様に、素材データと最終部品形状が与えられることにより、ＮＣプログラムが作成される。図において、素材データは素材形状と材質を含む。ＮＣプログラム作成手段２０は前記入力された素材データと最終部品形状に各種のデータベースから与えられる過去に蓄積されたノウハウデータを加味して所望のＮＣプログラムを作成する。実施形態において、データベースは、作業展開データベース２１、切削条件データベース２２、工具データベース２３、加工履歴データベース２４からなり、これらの各データベースから、過去の現場ノウハウその他実際の加工に必要な条件及び使用する工作機械特有の条件がＮＣプログラム作成のために参照データとしてＮＣプログラム作成手段２０に供給されている。
【００２０】
以上のようにして作成されたＮＣプログラム、及び工具リストは数値制御装置２５に送られ、必要な空運転、テストカットあるいはシミュレーションを行い、従来と同様のＮＣプログラム修正編集を経て、数値制御装置２５の最終的に現場で用いられる実加工ＮＣプログラムとして完成する。図１においては、このようなＮＣプログラムの修正編集部については詳細には図示していない。
【００２１】
数値制御装置２５は工作機械２６を駆動するためにＮＣプログラム実行手段２７、サーボ制御手段２８及び誤差補正手段２９を含み、前記ＮＣプログラム及び工具リストそして素材データはそれぞれＮＣプログラム実行手段２７に入力される。ＮＣプログラム実行手段２７は、後述する測定結果を参照しながら前記各入力データにより適切な送り速度に基づいた補間処理を行ないサーボ制御手段２８にサーボ制御信号を供給し、工作機械２６をサーボ制御手段２８の出力駆動信号によって正しくＮＣプログラムに合せた送り駆動制御を行うことができる。誤差補正手段２９は、工作機械２６の温度変化などによる位置・寸法誤差を補正するために設けられ、工作機械２６に設けられた測定器の出力を用いて温度に起因する誤差などを補正することができる。
【００２２】
以上のようにして、工作機械２６は、テーブルに載置されたワークピース３０に対して、所望の作業要素加工、加工要素加工そして工程加工をＮＣプログラムに従って実行し、ワークピース３０の第１姿勢における加工を完了する。
【００２３】
第１姿勢によるワークピース３０の工程加工が完了すると、測定機３１が測定制御装置３２の測定プログラムに従ってワークピース３０の座標測定を行い、この測定結果は測定結果分析手段３３を介して前記数値制御装置２５のＮＣプログラム実行手段２７及び加工方法分析手段３４へフィードバックされ、また必要に応じて、この測定結果は前記各データベース２２，２３，２４へ供給される。以上のようにして、図示した実施形態によれば、作成されたＮＣプログラムに基づいてワークピース３０に所望の数値制御加工を施すことができ、ワークピース３０は第１姿勢での工程加工が終了した後、姿勢換えが行われ、第２姿勢において同様にＮＣプログラムに従った加工が継続的に行われる。
【００２４】
前述した従来のＰＣＴ出願技術では、前記数値制御装置２５において実行される実加工ＮＣプログラムの内容を適宜解析してこのＮＣプログラムに含まれている加工ノウハウなどの加工情報を抽出し、また、この抽出された加工情報を書き換え可能に記憶できる。前記加工情報は、各作業要素加工毎の加工条件として、ＮＣプログラムの解析結果から抽出され、この加工条件が各作業要素加工と対応して記憶手段に記憶される。
【００２５】
本発明に係るＮＣプログラムの最適化方法及び装置によれば、前述した従来技術における加工情報の解析記憶に加えて、このような各作業要素加工ごとの加工条件をそのまま取り込むことができない場合には、更に新たな最適化処理を施して各種データベースに供給することを特徴とする。
【００２６】
本発明において、このような２種類の加工条件抽出記憶は、前者を解析記憶モードとし、また後者を最適化モードとして扱う。
【００２７】
まず、従来のＰＣＴ出願技術において開示され、また本発明の解析記憶モードとして取り込まれているＮＣプログラムの最適化を説明する。
【００２８】
図１において、加工プログラム及び工具リストそして測定結果は、加工方法分析手段３４に供給されており、所定のアルゴリズムに従い、必要な加工情報が抽出される。そして、このようにして抽出された加工情報は、データベース作成手段３５に供給され、それぞれの項目毎に分類された加工情報が各作業要素加工と対応した加工条件として前述した各データベース、すなわち作業展開データベース２１、切削条件データベース２２、工具データベース２３及び加工履歴データベース２４に書込記憶される。
【００２９】
従って、各データベース２１〜２４は工作機械２６によるワークピース３０の実加工が行われた後は、この実加工に反映された現場ノウハウ等の加工情報を常時取り込み、そのデータベース内容を更新することができ、これを現在の加工に反映させることが可能となり、通常の場合、次のＮＣプログラム作成時に最適なデータベースとして加工情報を与えることが可能となる。
【００３０】
以上のように、このＮＣ加工システムによれば、それまで単に原ＮＣプログラムの修正編集用のみに用いられていた現場ノウハウその他の加工情報を最終現場加工に用いられる修正済の実加工ＮＣプログラムから逆に解析抽出し、これをデータベースに直ちに反映させることができるという大きな利点を奏することができる。このようなデータベースへの作業情報の反映によって、ＮＣプログラム作成手段は常に最新のかつ現場におけるノウハウを盛り込んだプログラム作成を行うことが可能となり、従来に比して原加工プログラムから実加工プログラムへの修正編集作業を著しく簡素化できるという利点がある。
【００３１】
また、このような加工情報のデータベースへの反映は、例えば実加工が開始されてから数加工要素の加工以内にデータベースへ反映させることができ、これに継続するＮＣプログラムあるいは現在のＮＣプログラムの再調整にも直ちに応用可能である。
【００３２】
更に、このシステムによれば、前述した加工情報の反映された各データベースは、ＣＩＭを構築しているいずれの工作機械にも任意に適用することができ、もちろん素材あるいは最終部品形状が変更された場合においても、工作機械あるいは工具に関連するデータベースの部分はそのまま他へ転用することができ、このようなデータをＣＩＭを構築する全ての端末機器に同様に開放することによって、いかなる数値制御情報の作成あるいはこれの実行においても利用可能となる。このような優れた利点は、本実施形態において、前記加工情報を各作業要素加工毎の加工条件としてモジュール化したことに依存しており、このことによって、記憶されたデータベースの汎用性を著しく高めることが可能となる。
【００３３】
以下に、加工方法分析手段３４におけるＮＣプログラムの解析及び加工情報あるいは加工条件の抽出工程を実例に合せて詳細に説明する。
【００３４】
図２は前述した数値制御システム（図１）におけるプログラム解析装置の部分を拡大して示したものであり、加工方法分析手段３４には前述したように実加工ＮＣプログラム、素材データ、工具リストが入力され、また、必要に応じて最終加工形状、測定結果も入力される。
【００３５】
加工方法分析手段３４において、前記入力された各データは記憶装置４０に記憶され、実加工ＮＣプログラムが１ブロックずつ解析され、数値データ変換部４１によってデータ変換され、Ｇコード展開リスト生成部４２においてＧコード展開リストとして各データが登録される。この時、マクロプログラムやサブプログラム等１ブロックで複数の動作をする場合には、ＲＳ−２７４−Ｄフォーマットに従い基本命令に展開後、Ｇコード展開リストに登録する。このＧコードへの展開は本発明において必ずしも必要ではないが、この実施形態においては実加工ＮＣプログラムをコンピュータ処理するために解析の容易なＧコードへ展開している。
【００３６】
加工方法分析手段３４においては、前記Ｇコード展開リストを参照しながら作業要素への分割部４３において連続した実加工プログラムが作業要素毎に分割される。そして、作業要素毎に分割されたＧコード展開プログラムはパターン定義記憶部４４に記憶されているパターン定義を参照しながら作業要素毎の加工条件が抽出部４５において抽出される。このようにして抽出された作業要素毎の加工条件は前述したようにデータベース作成手段３５を介して作業展開データベース２１、切削条件データベース２２、工具データベース２３及び加工履歴データベース２４に記憶される。
【００３７】
前記分割部４３における各作業要素加工毎へのプログラム分割は、通常の場合、シーケンス番号（Ｎ番号）、工具割り出し（Ｔコード）、工具交換（Ｍ６）及びオプショナルストップ（Ｍ０１）に注目して行うことが好適である。実際上、このような作業要素へのプログラム分割は、まず工具交換に着目し、工具交換の間は単一の工具が用いられるのでこれを作業要素の区切りとして用いることができる。しかしながら、同一の工具を用いて複数の作業要素加工が行われる場合があり、例えば同一のドリルにて複数の下穴を穴開けするような場合があるので、前記工具交換に加えて工具軌跡パターンを読み取り、これによって作業要素加工毎の分割を確実に行うことが好適である。
【００３８】
加工条件抽出部４５は前記作業要素毎に分割されたプログラムから必要な加工条件を抽出するが、本実施形態では、直接作業条件を抽出することが困難な場合、分割した範囲の工具軌跡とワーク形状から作業要素がどのような内容かを認識し、この結果を中間的にワークピースデータベースあるいは各パターンリストとして作成する。このようなパターンリストとしては、例えば穴加工の場合の穴加工要素リストなどが挙げられる。
【００３９】
本実施形態において、前述した加工条件は、作業要素加工毎に各データベースに書き込まれ、一般的な加工条件としては、各作業要素加工毎に、加工した素材と使用した工具そして各切削条件が関連したデータとして記憶保持される。この場合、切削条件は通常用いられる工具の回転速度あるいは送り量としてではなく、各工具の周速と１刃当たりの送り及び１回転当りの送りとしてデータ化することが好適であり、これによって、汎用性のあるモジュール化されたデータを作成することができ、またこれらの基礎データから近似した工具径の切削条件を必要に応じて演算することが可能となる。
【００４０】
以上のようにして、各種の加工条件が実加工に即してＮＣプログラムに反映され、この解析記憶モードによれば、多くの場合実際の実加工をＮＣプログラムに忠実に反映して最良の結果を得ることができる。
【００４１】
しかしながら、前述したように、必ずしも全ての場合に実加工データをＮＣプログラムにそのまま反映することが最適でない場合がある。このような場合に、本発明においては、最適化モードを選択し、これによって加工条件に最適化処理を施した上で各種データベースに編集された加工条件を反映させることによってＮＣプログラムを常に新しい環境で最適化することを可能とする。
【００４２】
このために、図１、図２において、加工方法分析手段３４の出力は前述したようにデータベース作成手段３５に直接供給されるばかりでなく、ＮＣプログラム編集手段３６にも選択的に供給される。従って、加工方法分析手段３４即ち図２に詳細に示される加工条件抽出部４５によって抽出された加工条件は、オペレータによって選択されたモードに従って、データベース作成手段３５に供給されるか或いはＮＣプログラム編集手段３６に供給されるかが択一的に選択される。
【００４３】
本発明において特徴的なことは、最適化モードが選択された場合においては、実加工条件には所定の編集が施されて、各種データベースにこのＮＣプログラム編集後の最適化条件が反映されることである。
【００４４】
本発明において、前記解析記憶モードと最適化モードとの選択は、ＮＣプログラムを分析する前に、オペレータがいずれかのモードを選択することによって行われる。
【００４５】
次に、ＮＣプログラム編集手段３６において行われる最適化処理について説明する。
【００４６】
最適化
実加工ＮＣプログラムから分析して得られたデータを本来入力すべきデータベース２２，２３，２４内のデータと照合し、同様の加工条件があった場合、その条件で実加工ＮＣプログラムを修正する。
【００４７】
例えば、切り込み量／切り込み深さ／工具回転数／送り速度など切削条件の最適化を行う場合を想定する。この時、切削条件の一部が同一である加工情報が切削条件データベース２２に存在する場合、例えば、ポケット加工とかタップ穴加工等の加工の種類と使用工具が同じ場合は、その加工情報をそのまま利用する。
【００４８】
一方、上記のような加工情報がデータベースに無い場合は、類似の加工情報を１つあるいは複数選択し、それらと比較して最適と考えられる加工条件を割り出し利用する。例えば、ポケット加工と側面加工とは実質的に加工条件は同じと考える。また、加工の種類と工具の種類が同じであるが工具径が同一の条件が無く、異なる工具径の条件が２つある場合、それらの比を取って該当する工具径の場合の条件を割り出す。
【００４９】
更に、上記のように比較できるような類似の加工情報もデータベースにない場合、その部分の最適化は行わず、また加工条件のＮＣプログラムへの反映も行わない。
【００５０】
加工方法の最適化
次に、例えば、直方体の素材に大きな円の外周加工を行う加工のツールパスにおいて、実加工ＮＣプログラムが空切削部分も切削部分と同様の送り速度で移動するようなツールパスの場合、空切削部分は早送りで直線移動するという加工方法に実加工ＮＣプログラムを変更する。
【００５１】
また、複数の面に対する加工において、面を優先する加工方法と工具を優先する加工方法とがデータベースに蓄積されている場合、加工を行う工作機械の工具交換時間と割り出し時間とを比較し、面優先の加工を行うか工具優先の加工を行うかを判断して、判断結果と実加工ＮＣプログラムとが異なっていれば実加工ＮＣプログラムを変更する。
【００５２】
更に、使用工具順も工具交換回数が少なくなるよう最適化する。
【００５３】
本発明において、最適化のタイプにも二通りあり、最適化完了後に選択可とする場合、若しくは、最適化開始時に選択可とする場合がある。
【００５４】
これらの二通りの最適化を行って２つの実加工ＮＣプログラムが作成される。オペレータはこれらをチェックし、最適な方を選択する。或いは、予めどちらの最適化を行うかが決められている場合、最適化の前に指定すればその最適化だけを行う。
【００５５】
加工時間優先（高速化）の最適化
切り込み量や切り込み深さを加工条件の許容範囲内で、切り込み回数が少なくなるようにする。
空切削部分は早送りで直線移動する。
面優先か工具優先かは加工時間の短い加工方法を選択する。
【００５６】
加工表面優先（高精度化）の最適化
切削条件を重視する。
空切削部分があっても、その部分を早送りで直線移動するのではなく、一連運動を行うツールパスとする。
複数面の加工を行う場合でも、面優先で行う。
【００５７】
プログラム最適化の一例
図３Ａ，３Ｂ，３Ｃには本実施形態で用いられる実加工ＮＣプログラムの一例が示されており、Ｏ０００１なるプログラム番号が付されている。
【００５８】
図４はこの実加工ＮＣプログラムにおいて加工される素材形状が示されており、また図５にはこの実加工プログラムによって図４で示した素材から製作される最終加工形状が示され、これらの素材データ（材質を含む）及び最終加工形状は前述したように加工方法分析手段３４にデータ供給されている。図５から明らかなように、この加工においては、素材の上面フライス加工、側面フライス加工そして上面の円側面加工、２個の面取り付穴開け加工及び正面のねじ穴加工が求められている。
【００５９】
図６はプログラムＯ０００１に用いられる工具リストを示し、各工具番号はＴコードで示され、それぞれの工具データが図示のようにリスト化され、この工具リストは前述したように加工方法分析手段３４に供給されている。図２のとおり、加工方法分析手段３４においては、まず実加工ＮＣプログラムが記憶装置４０に記憶された後数値データ変換部４１を経てＧコード展開リスト生成部４２によってコンピュータで解析し易いＧコード展開リストに変換される。
【００６０】
図７Ａ，７Ｂ，７Ｃ，７Ｄ，７Ｅは前記実加工プログラムＯ０００１がＧコードに展開された状態のリストを示し、両者は行番号によってリンクされており、その内容は実質的に全く同一である。
【００６１】
図８Ｂはこのようにして生成された前記実加工プログラムＯ０００１のＧコード展開リストを作業要素毎に分割し、各作業要素ごとに抽出した加工条件のうちの切削条件データベースである。
【００６２】
尚、図８Ａは同様にして抽出され保存されている過去の切削条件データベースであり、図１，２において符号２２で示されている切削条件データベースである。
【００６３】
以上図３から図８に示した例を基に、以下に本実施形態における最適化処理の具体例を説明する。
【００６４】
＜時間優先の最適化＞
１）切削条件は重視せず、切り込み回数が少なくなるようにする。
切削条件分析データと同内容の条件を切削条件データベース２２から検索し、同様のもの（作業要素、ワーク材質、工具番号など）が有ればその切削条件を比較し、周速、１刃当たりの送り、１回転当たりの送り、１回の切り込み幅、１回の切り込み高さにおいて、切削条件データベースのデータの方が大きければ、その条件を基に実加工プログラムを修正する。
【００６５】
例えば、工具番号１番のフライス荒加工（実加工プログラムのＮ１の加工）では１回の切り込み高さが切削条件分析データは2.5mmであるのに対し、切削条件データベースは4.9mmである。従って、切削条件データベースの条件に合せて実加工プログラムのＮ１部分を修正する（図９Ａの時間優先最適化サンプルＮＣプログラムのＮ１部分）。
【００６６】
また、切削条件分析データの側面荒では、工具番号５の１回の切り込み高さを15.0mmとしているのに対し、切削条件データベースの工具番号５の１回の切り込み高さは19.9mmとなっている。１回の切り込み幅も両者で異なるが、これは作業要素が側面荒とポケット荒というように異なるためであり、１回の切り込み幅のデータについてはその差を考慮しない。但し、最終切り込み幅がその他の切り込み幅より少ない場合は、切り込み回数を１回減らしてその分の切り込み量をその他の切り込み量に均等に割り振ったツールパスを作成する。この実加工プログラムの場合、最終切り込み幅がその他の切り込み幅より少ないということがないので１回の切り込み幅については修正を行わない。従って、切削条件データベースの１回の切り込み高さについて、条件に合せて実加工プログラムのＮ２部分を修正する（図９Ａ，９Ｂの時間優先最適化サンプルＮＣプログラムのＮ２部分）。
【００６７】
２）空切削部分を早送り移動にする。
ミーリング加工において、アプローチ点へのＺ軸降下時や切削部から切削部への移動時に切削送りで移動している部分を早送りに修正する。このときの、早送りから切削送りに移る際のアプローチ量と切削送りから早送りに移る際の逃げ量は数値制御装置に記憶されており、この例では、初めのＺ軸アプローチ時のアプローチ量を10.0mm、加工中のアプローチ量、逃げ量を3.0mmとして実加工プログラムを修正するものとする（図９Ａ，９Ｂの時間優先最適化サンプルＮＣプログラムのＮ１，Ｎ２，Ｎ３部分）。
【００６８】
３）面、工具の優先は時間の短い方法とし、工具順序の最適化も考慮する。
まず、工具順序の最適化を考える。図１０は加工要素毎の順序を表す図であり、図１１は各加工要素における使用工具の順序を表す図である。
【００６９】
図１０，１１を見ると、工具番号５のエンドミルが２度にわたって使用されるが、Ｍ１０タップ加工での使用はセンタドリルとドリルにて穴を開けた後の座ぐり加工であり、センタドリルとドリルは工具番号５のエンドミルを使用する円側面加工後のφ２０ドリル加工でも使用するので、このエンドミルの使用を１度に行うことは不可能である。従って、工具順序の最適化はこれ以上不可能と判断する。
【００７０】
次に、面割り出しと工具交換とを考慮した最適化を考える。図１２Ａはこの実加工プログラムの面割り出しと工具交換のリストである。
【００７１】
まず、図１２Ａを見ると、２つの面を加工する工具があるので、前後の工具の加工面と同じになるように同一工具における加工面の順序を調整する。工具番号１の工具の場合、前の工具はプログラムの最後に使用する工具番号９の工具でありＧ５５の面を加工する。後の工具は工具番号５の工具でありＧ５４の面を加工する。従って、工具番号１の工具の面の加工順序はＧ５５からＧ５４とする方が良い。工具番号２の工具は前後の工具ともＧ５４の面の加工であるのでこのままとする。工具番号８の工具も前後の工具ともＧ５５の面の加工であるのでこのままとする（図１２Ｂ参照）。
【００７２】
更に、図１０，１１から、加工要素の加工順序と加工要素ごとの使用工具順序に矛盾しないように工具の順序を入れ換えて面の割り出し回数が少なくなるかどうかを考える。図１０より、平面加工、円側面加工、φ２０ドリル加工の順序は入れ換えできないので、工具番号１，５，６，２，３，８の順序は入れ換えできないことが判断できる。φ２０ドリル加工とＭ１０タップ加工とは工具番号２と８が共通であるので、工具番号３の加工順序は工具番号４，５，７のどの位置であっても良いことが判断できる。工具番号８は２面を加工する工具であるので工具番号３の工具を工具番号８の工具の直前に移動させる。そうすると、Ｇ５４の面の加工である工具番号３の加工が抜けることになるのでその前後にあったＧ５５の面の加工が面の割り出し無しで加工できることになる（図１２Ｃ参照）。このようにすると、８回必要であった面の割り出しが４回になる。
【００７３】
時間優先の最適化は以上のように実加工プログラムを修正する（図９Ａ，９Ｂ，９Ｃ参照）。
【００７４】
＜精度優先の最適化＞
１）切削条件を重視する。
時間優先の最適化と同様、切削条件分析データと同内容の条件を切削条件データベースから検索する。同様のもの（作業要素、ワーク材質、工具番号など）が有ればその切削条件のうち、周速、１刃当たりの送り、１回転当たりの送り、１回の切り込み幅、１回の切り込み高さにおいて、切削条件データベースの条件を基に実加工プログラムを修正する。
【００７５】
例えば、工具番号１番のフライス荒加工と側面荒加工では、時間優先の最適化と同様、１回の切り込み高さを切削条件データベースの条件に合せ、実加工プログラムを修正する（図１３Ａの精度優先最適化サンプルＮＣプログラムのＮ１，Ｎ２部分）。工具番号５の工具の１回の切り込み幅のデータの違いについても、時間優先の最適化と同様、作業要素が異なるということで切削条件データベースの条件に修正することはしない。
【００７６】
また、面取り加工の周速の条件は切削条件データベースには23m/minしかないので、実加工プログラムの面取り加工における周速33m/minの部分は以下の通り23m/minに修正する（図１３Ｃの精度優先最適化サンプルＮＣプログラムのＮ９部分）。
Ｓ＝1000Ｖ／πＤ＝1000・23／(π・21)＝348.625…≒350
【００７７】
２）空切削部分があっても、その部分を早送りで直線移動するのではなく、一連運動を行うツールパスとする。
【００７８】
時間優先の最適化の側面荒・仕上加工のように、切削部から切削部への移動部分を早送りに修正するようなことは行わない。また、はじめからそのようなプログラムになっていた場合には、時間優先の最適化の逆で切削部と切削部の間の直線早送り部分も切削送りとし、一連のツールパスにおいてプログラムが複数ブロック（複数行）に分かれないようにする。これは、時間優先の最適化プログラムのように、切削部分と早送り部分との切り換わり位置に1000分の1ｍｍの単位の誤差を生じないようにするためである。
【００７９】
但し、ミーリング加工における、アプローチ点へのＺ軸降下部分は早送りに修正する（図１３Ａ，１３Ｂの精度優先最適化サンプルＮＣプログラムのＮ１，Ｎ２，Ｎ３部分）。
【００８０】
３）面優先のプログラムとし、工具順序の最適化も考慮する。
まず、図１２Ａのような実加工プログラムの順序を同一面における加工を連続して行う実加工プログラムに修正する（図１２Ｄ参照）。この際、図１０の加工要素の加工順序、及び、図１１の加工要素ごとの使用工具順序に矛盾しないようにする。
【００８１】
次に、同一面内において工具順序の最適化を考える。これは時間優先の最適化と同様に行うが、今回の場合は、同一面内で同一工具を複数回使用する場合は無い。
【００８２】
精度優先の最適化は以上のように実加工プログラムを修正する（図１３Ａ，１３Ｂ，１３Ｃ参照）。
【００８３】
以上のような両最適化が終了すると、オペレータは両方の最適化された実加工プログラムをチェックすることができ、どちらか一方を選択する。そうすると、自動的にモードが解析記憶モードに切り換わり、更に、その選択した実加工プログラムを修正することも可能で、以後は加工、測定し、そのデータも加工方法分析手段に入力され、各種データベースにその実加工プログラムの加工情報や加工条件が入力される。
【００８４】
尚、上記最適化において、実加工プログラムを修正するための切削条件データベースの該当する条件が複数存在する場合は、その時点でオペレータに選択させることができる。また、そういう場合は、自動的に最も最近使用した切削条件データを選択するようにしても良い。
【００８５】
また、両最適化のうち、どちらの最適化を行いたいかが最適化前からわかっている場合、最適化モードに切り換えた時点でどちらの最適化かを選択することも可能で、この場合、最適化が終了すると、自動的にモードが解析記憶モードに切り換わる。
【図面の簡単な説明】
【図１】  本発明に係るＮＣプログラム最適化方法及び装置が組み込まれた数値制御システムの全体構成を示すブロック図である。
【図２】  図１に示したシステム中の本発明に関するＮＣ加工システム要部を示すブロック図である。
【図３Ａ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例を示す図である。
【図３Ｂ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例を示す図である。
【図３Ｃ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例を示す図である。
【図４】  本実施形態で用いる素材形状を示す図である。
【図５】  本実施形態で用いる最終加工形状を示す図である。
【図６】  本実施形態で用いる工具リストを示す図である。
【図７Ａ】  本実施形態において、実加工ＮＣプログラムから導かれたＧコード展開リストを示す図である。
【図７Ｂ】  本実施形態において、実加工ＮＣプログラムから導かれたＧコード展開リストを示す図である。
【図７Ｃ】  本実施形態において、実加工ＮＣプログラムから導かれたＧコード展開リストを示す図である。
【図７Ｄ】  本実施形態において、実加工ＮＣプログラムから導かれたＧコード展開リストを示す図である。
【図７Ｅ】  本実施形態において、実加工ＮＣプログラムから導かれたＧコード展開リストを示す図である。
【図８Ａ】  図８Ａは、本実施形態における作業要素加工別の加工条件を切削条件データベースとして示した一例を示す説明図である。図８Ｂは、本実施形態において、実加工ＮＣプログラムから導かれた切削条件分析データを示す説明図である。
【図８Ｂ】  図８Ａは、本実施形態における作業要素加工別の加工条件を切削条件データベースとして示した一例を示す説明図である。図８Ｂは、本実施形態において、実加工ＮＣプログラムから導かれた切削条件分析データを示す説明図である。
【図９Ａ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して時間優先の最適化を実施した結果を示す図である。
【図９Ｂ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して時間優先の最適化を実施した結果を示す図である。
【図９Ｃ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して時間優先の最適化を実施した結果を示す図である。
【図１０】  本発明の実施形態において用いられる実加工ＮＣプログラムの加工要素ごとの順序を表す図である。
【図１１】  本発明の実施形態において用いられる実加工ＮＣプログラムの各加工要素における使用工具の順序を表す図である。
【図１２Ａ】  本発明の実施形態において用いられる実加工ＮＣプログラムの面割り出しと工具交換のリストを表す図である。
【図１２Ｂ】  本発明の実施形態において用いられる実加工ＮＣプログラムの面割り出しと工具交換のリストの時間優先の最適化の中間状態を表す図である。
【図１２Ｃ】  本発明の実施形態において用いられる実加工ＮＣプログラムの面割り出しと工具交換のリストの時間優先の最適化を実施した結果を表す図である。
【図１２Ｄ】  本発明の実施形態において用いられる実加工ＮＣプログラムの面割り出しと工具交換のリストの精度優先の最適化を実施した結果を表す図である。
【図１３Ａ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して精度優先の最適化を実施した結果を示す図である。
【図１３Ｂ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して精度優先の最適化を実施した結果を示す図である。
【図１３Ｃ】  本発明の実施形態において用いられる実加工ＮＣプログラムの一例に対して精度優先の最適化を実施した結果を示す図である。
【図１】
0003827951.tif 000002
【図２】
0003827951.tif 000003
【図３Ａ】
0003827951.tif 000004
【図３Ｂ】
0003827951.tif 000005
【図３Ｃ】
0003827951.tif 000006
【図４】
0003827951.tif 000007
【図５】
0003827951.tif 000008
【図６】
0003827951.tif 000009
【図７Ａ】
0003827951.tif 000010
【図７Ｂ】
0003827951.tif 000011
【図７Ｃ】
0003827951.tif 000012
【図７Ｄ】
0003827951.tif 000013
【図７Ｅ】
0003827951.tif 000014
【図８Ａ】
0003827951.tif 000015
【図８Ｂ】
0003827951.tif 000016
【図９Ａ】
0003827951.tif 000017
【図９Ｂ】
0003827951.tif 000018
【図９Ｃ】
0003827951.tif 000019
【図１０】
0003827951.tif 000020
【図１１】
0003827951.tif 000021
【図１２Ａ】
0003827951.tif 000022
【図１２Ｂ】
0003827951.tif 000023
【図１２Ｃ】
0003827951.tif 000024
【図１２Ｄ】
0003827951.tif 000025
【図１３Ａ】
0003827951.tif 000026
【図１３Ｂ】
0003827951.tif 000027
【図１３Ｃ】
0003827951.tif 000028