(57)【要約】【課題】  加工仕様パターンを抽出・登録することで、プログラムを再利用し、制御プログラム作成を容易にする。【解決手段】  基本情報処理部３１は、工具設計情報２３、加工仕様特徴（パターン）情報２５、及びＮＣＰＧ（プログラム）２６に基づいて、ＮＣＰＧ（プログラム）２６から、既存パターンには無い加工仕様パターン部分を抽出した場合には、これをライブラリ化してデータベースに格納する。また、当該加工仕様パターン部分の移動特徴、Ｇコード特徴等を加工仕様特徴（パターン）情報２５に登録する。【選択図】図２
2004240966.tif 000002
【特許請求の範囲】
【請求項１】
ワークの加工のために生産設備を制御する制御装置において実行される制御プログラムを基に、加工仕様のパターン化を行う方法であって、
処理対象の制御プログラムを取得すると共に、ワーク設計情報、加工工程設計情報、工具設計情報を取得し、
各処理対象工具毎に、前記制御プログラムを各加工工程毎に分割すると共に、該工具移動のツールパス特徴を抽出し、
前記制御プログラムの各分割部分をライブラリとし、該ライブラリを１つの加工仕様パターンとして前記抽出したツールパス特徴、工具情報と対応付けて登録することを特徴とする加工仕様のパターン化方法。
【請求項２】
前記各加工仕様パターン毎に、そのツールパス特徴を視覚的に表示する為の汎用ドキュメントと、その切削パターンを視覚的に表示する為の図形ドキュメントとを作成し、これらを前記加工仕様パターンに対応付けて登録することを特徴とする請求項１記載の加工仕様のパターン化方法。
【請求項３】
ワークの加工のために生産設備を制御する制御装置において実行される制御プログラムから、切削条件・サイクルタイムを抽出する方法において、
前記制御プログラムを、工具毎の加工工程で分割して、
請求項１記載の加工仕様のパターン化方法によって登録された加工仕様パターン情報を用いて、前記制御プログラムを分割した各部分の中で、登録されている加工仕様パターンに該当する部分は、切削記述と判断したうえで、前記切削条件・サイクルタイムを抽出する処理を実行することを特徴とするパターン化情報を用いた切削条件・サイクルタイム抽出方法。
【請求項４】
コンピュータに、
ワークの加工のために生産設備を制御する制御装置において実行される制御プログラム群の中から、処理対象の制御プログラムを取得すると共に、ワーク設計情報、加工工程設計情報、工具設計情報を取得する機能と、
各処理対象工具毎に、前記制御プログラムを各加工工程毎に分割すると共に、  該工具移動のツールパス特徴を抽出する機能と、
前記制御プログラムの各分割部分をライブラリとし、該ライブラリを１つの加工仕様パターンとして前記抽出したツールパス特徴、工具情報と対応付けて登録する機能と、
を実現させるためのプログラム。
【請求項５】
前記加工仕様パターンとして登録されているパターンに該当するプログラム部分は、切削記述と判断したうえで、切削条件・サイクルタイムを抽出する機能を更に有することを特徴とする請求項４記載のプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ワークの加工のために生産設備を制御するシステムとそのプログラムに係わり、特に加工仕様のパターン化方法、パターン化情報を用いた切削条件・Ｃ／Ｔ抽出方法に関する。
【背景技術】
【０００２】
近年、人々の価値観は多様化し、その変化も速くなっている。それにより、製品生産のための生産設備は、多品種の生産に使用される傾向にある。生産コストの低減の面からは、自動化（無人化）が求められている。これらのことから、生産設備の多くは、プログラムを実行する制御装置の制御下で工作機械を動作させる構成となっている。その制御装置としては、プログラムロジックコントローラ（以下、ＰＬＣ）やＮＣ（Numerical Control ）装置（数値制御装置）、モーションコントローラ（以下、ＭＣ）などがある。なお、現在では、ＮＣ装置の多くはＣＮＣ（Computerized Numerical Control ）装置となっているが、特に断らない限り、以降ＮＣ装置とはＣＮＣ装置を含む意味で用いる。
【０００３】
生産ラインは、複数の生産設備を有機的に結合させることにより構築される。加工には、変形加工（鍛造、粉末加工、プラスチック成形加工など）や除去加工（切削加工、砥粒加工、或いは光学的加工など）、接合加工（溶接加工、接着加工、結合加工、組立加工など）、及び処理加工（表面処理、熱処理など）といった様々なものがある。生産ラインを構成させる生産設備は、ワーク（加工物）の種類やそれに対して行うべき加工内容に応じて決定される。
【０００４】
ＮＣ装置が実行するプログラム（ＮＣプログラム）は、作業者が自動プログラミング装置を用いて対話形式で作成（ここでは変更を含む）するのが普通である。ワークの設計は、ＣＡＤ／ＣＡＭ（Computer Aided Design and Manufacturing ）システムを用いて行われるのが殆どである。このことから、自動プログラミング装置は、ＮＣ装置と接続される操作盤に搭載されるだけでなく、ＣＡＤ（Computer Aided Design ）システムにも標準的に搭載されている。
【０００５】
そのＣＡＤシステムには、作成、或いは変更したＮＣプログラムをＮＣ装置に実行させた場合のシミュレーションを行う機能も標準的に搭載されている。それにより、作成、或いは変更したＮＣプログラムをＮＣ装置に実際に実行させた場合に、ワークの加工に要すると予測される時間をサイクルタイムとして作業者が確認できるようにさせている。
【０００６】
従来のシミュレーションでは、ＮＣプログラムを模擬的に実行し、その実行にかかる時間を計時することでサイクルタイムを求めていた。しかし、そのようにして求められたサイクルタイムでは、生産設備全体でワークの加工に要する時間しか確認することはできない。
【０００７】
生産設備にワークの複数箇所の加工を行わせることは多い。その場合、加工に要する実際の時間は、通常、加工を行わせる順序によって変動する。
また、例えば、特許文献１記載の従来技術が存在する。
【０００８】
特許文献１は、熟練作業者のもつノウハウをデータベースに取り込んで、工具及び加工条件を自動的に決定するものである。また、オペレータが指定した加工領域のみの工具経路を高速で表示装置に表示できるようにし、更に、この工具経路を局所的に修正することで、ＮＣプログラムの修正を行うことができる工作機械の数値制御装置を提供するものである。また、オペレータが指定した加工領域に対する使用工具の種類と加工条件を識別して、これらの情報を表示できるようにし、更に表示された使用工具の種類と加工条件をオペレータが修正できるようにし、これによりＮＣプログラムの修正を行うことができる工作機械の数値制御装置を提供するものである。
【特許文献１】特開平７−２９５６１９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
上記特許文献１では、ＮＣプログラムの局所的な修正が容易に行えるようになるかもしれないが、ＮＣプログラムを作成する作業を容易にすることについては、不十分である。
また、本出願の出願人は、既に、特願２００２−１１４６３４号などで、切削条件・サイクルタイム抽出方法を提案しているが、その正確性・精度を向上させることが望まれている。
【００１０】
本発明の課題は、ワークの加工のために生産設備を制御する為のプログラムをライブラリ化して、その加工仕様特徴を登録することで、このライブラリを再利用した新たなプログラムの構築を行うことを可能にし、プログラム作成を容易にすることができる加工仕様のパターン化方法、及びこのパターン化情報を用いることで切削条件・サイクルタイム抽出の正確性・精度を向上させることができる切削条件・サイクルタイム抽出方法、これらの方法をコンピュータにおいて実現させるプログラム等を提供することである。
【課題を解決するための手段】
【００１１】
本発明の加工仕様のパターン化方法は、ワークの加工のために生産設備を制御する制御装置において実行される制御プログラムを基に、加工仕様のパターン化を行う方法であって、処理対象の制御プログラムを取得すると共に、ワーク設計情報、加工工程設計情報、工具設計情報を取得し、各処理対象工具毎に、前記制御プログラムを各加工工程毎に分割すると共に、該工具移動のツールパス特徴を抽出し、前記制御プログラムの各分割部分をライブラリとし、該ライブラリを１つの加工仕様パターンとして前記抽出したツールパス特徴、工具情報と対応付けて登録する。
【００１２】
上記の方法によれば、既存の制御プログラムに基づいて、様々な加工仕様パターン（ドリルでの穴あけ、戻り切削パターン有りボーリング、穴通しで裏面取り＿戻り切削、等など）のライブラリを抽出して、これを登録することによって、後に新たな制御プログラムを作成する場合等に、これを利用することで（プログラムの再利用）、作成を容易にすること等ができる。
【００１３】
また、例えば、前記各加工仕様パターン毎に、そのツールパス特徴を視覚的に表示する為の汎用ドキュメントと、その切削パターンを視覚的に表示する為の図形ドキュメントとを作成し、これらを前記加工仕様パターンに対応付けて登録する。
【００１４】
このようにすることで、後にユーザ等が既存の加工仕様パターンを参照、利用等する際に、その特徴が一目で分かるようになる。
本発明のパターン化情報を用いた切削条件・サイクルタイム抽出方法は、ワークの加工のために生産設備を制御する制御装置において実行される制御プログラムから、切削条件・サイクルタイムを抽出する方法において、前記制御プログラムを、工具毎の加工工程で分割して、請求項１記載の加工仕様のパターン化方法によって登録された加工仕様パターン情報を用いて、前記制御プログラムを分割した各部分の中で、登録されている加工仕様パターンに該当する部分は、切削記述と判断したうえで、前記切削条件・サイクルタイムを抽出する処理を実行する。
【００１５】
上記方法によれば、切削を行うにも係わらず切削記述と判断されない部分についても、加工仕様パターン情報を参照することで、切削記述と判断できるので、その後の切削条件・サイクルタイム抽出の正確性・精度を向上させることができる。
【００１６】
なお、上述した方法を実現する制御をコンピュータに行なわせるプログラムを記憶したコンピュータ読み取り可能な記憶媒体から、そのプログラムをコンピュータに読み出させて実行させることによっても、前述した課題を解決することができる。
【発明の効果】
【００１７】
本発明の加工仕様のパターン化方法によれば、ワークの加工のために生産設備を制御する為のプログラムをライブラリ化して、その加工仕様特徴を登録することで、このライブラリを再利用した新たなプログラムの構築を行うことを可能にし、プログラム作成を容易にすることができる。また、各加工仕様パターン毎に、そのツールパス、切削パターンを、ユーザにとって分かり易いように視覚的に表示させることができる。また、このパターン化情報を用いることで切削条件・サイクルタイム抽出の正確性・精度を向上させることができる。
【発明を実施するための最良の形態】
【００１８】
以下、図面を参照して、本発明の実施の形態について説明する。
図１は、本実施の形態による装置が適用されるネットワークシステム全体の構成を示す図である。
【００１９】
図示のネットワークシステムは、例えば製品の製造を行う工場を所有する企業に構築されたクライアント／サーバ型のシステムである。図１に示すように、構内ＬＡＮ１と工場ローカルＬＡＮ２をルータ３により結んでいる。
【００２０】
構内ＬＡＮ１には、設備設計情報システムサーバ４、工具設計情報システムサーバ５、工程設計情報システムサーバ６、及びデータベース（ＤＢ）サーバ７が接続されている。
一方の工場ローカルＬＡＮ（以降、ローカルＬＡＮと略記）２には、ラインサーバ８や複数のアクセスポイント（以降、ＡＰ）９が接続されている。各ＡＰ９は、その子機に当たるＡＰ１０と通信を行う。
【００２１】
そのローカルＬＡＮ２は、生産ライン１２、１３が設置された工場に敷設されている。生産ライン１２、１３は、それぞれ９台、２２台の生産設備から構成されている。
それらの生産設備は、ＮＣ制御装置、ＰＬＣ、或いはＭＣの制御下でワークを加工するか、或いはそれを搬送するものである。例えばマシンニングセンタ、打ち抜き装置、バリ取り装置、或いは洗浄装置などを備えたものである。その構成は、周知のものであることから、特に詳細な説明は省略するが、例えば以下のようになっている。
【００２２】
生産ライン１２を構成する１台の生産設備１２ａは、例えばＰＬＣ内蔵のＮＣ制御装置の制御下でワークの加工を行うものである。そのＮＣ制御装置に、操作盤１２ｂ、及びＡＰ１２ｃが接続されている。そのＡＰ１２ｃによって、ＮＣ制御装置はローカルＬＡＮ２と接続させている。作業員は、操作盤１２ｂを操作してＮＣ制御装置が実行するＮＣプログラムやパラメータ（仕様を決めるために設定されたデータ）を変更することができる。
【００２３】
生産ライン１３を構成する１台の生産設備１３ａは、例えばＮＣ制御装置の制御下でワークの加工を行う部分（以降、部分設備と記す）と、ＰＬＣ内蔵のＮＣ制御装置の制御下でワークの加工を行う部分設備とから構成されている。それらの制御装置は接続され、部分設備のＮＣ制御装置はハブ１３ｂと接続されている。そのハブ１３ｂには、他に、操作盤１３ｃ、及びＡＰ１３ｄが接続されている。そのＡＰ１３ｄによって、各部分設備のＮＣ制御装置はローカルＬＡＮ２と接続させている。作業員は、操作盤１３ｃを操作して各ＮＣ制御装置が実行するＮＣプログラムやパラメータを変更することができる。
【００２４】
上記ラインサーバ８は、各生産設備の制御装置から所定のデータを収集することにより、各生産設備の動作状態の監視を行う。
上記ＤＢサーバ７には、設備設計情報システムサーバ４、工具設計情報システムサーバ５、工程設計情報システムサーバ６で作成された各種データが一元管理・格納される。よって、本例による装置（図２の装置３０や図１０の装置１１０）は、ＤＢサーバ７において実現することが望ましいが、これに限らず、他の装置において実現してもよい。
【００２５】
尚、生産設備を制御する制御装置が実行するプログラムは、その制御装置の種類によって普通は異なる。同じ種類の制御装置にも複種類のプログラム言語が開発されている。よって、以下の説明中で図面等に示すプログラム等は、一例を示しているのであり、この一例に限るわけではない。
【００２６】
図２は、第１の実施例による装置３０の機能ブロック図である。
図示の装置３０は、基本情報処理部３１、加工仕様パターン登録処理部３２を有する。装置３０は、予め作成されている各種データベースの情報に基づいて処理を実行し、加工仕様特徴パターン情報/各種加工パターンのＰＧライブラリ４０を作成する。各種データベースとしては、図示のワーク設計情報２１、工具設計情報２３、加工仕様特徴（パターン）情報２５、及びＮＣＰＧ（プログラム）２６である。
【００２７】
図３は、基本情報処理部３１によって実行される処理手順を説明する為のフローチャート図である。
同図において、まず、ユーザ等がコンピュータのキーボード、マウス等を操作して、任意の処理対象ＮＣＰＧを設定することで（ステップＳ１３）、処理対象のＮＣＰＧが決定される（ステップＳ１４）。尚、その際に、処理対象の機器（ＰＬＣ／ＮＣの機種名、型式等）も設定させるようにしてもよい。これは、機種毎に後述するＧコードの体系（つまり、どのコードがどの様な動作に対応するのか）が異なるからである。但し、これは、本処理には直接関係しないので、以下の説明では省略する。
【００２８】
基本情報処理部３１は、上記決定されたＮＣＰＧを、各種ＮＣＰＧを蓄積した不図示のデータベースから取得する（ステップＳ１６）。
そして、対象ＮＣＰＧを解析して、処理対象工具を１つ決定して（ステップＳ２０）、決定した処理対象毎にステップＳ２１〜ステップＳ３０の処理を繰り返し実行する。
【００２９】
まず、工具設計情報２３を参照して、処理対象工具の工具種類、工具径、工程名、動き特徴（回転／平移動）等の情報を取得する。また、工程名より、点加工か面加工かを判別する。例えば、工程名に“面”がある場合は面加工、“穴”がある場合は点加工と判定する。尚、これら回転、平移動、点加工、面加工などをまとめて、以下、加工方法と呼ぶ場合もある（ステップＳ２１）。
【００３０】
図４に工具設計情報２３の一例を示す。
図示の工具設計情報２３は、工程ＮＯ．８１、工程名８２、工具８３（工具Ｎｏ．、工具径、工具種類）、刃具ＣＤ（コード）８４、チップ数Ｄｒ種類８５、刃具材質８６、工具３Ｄデータベース名８７、切削条件８８（周速、送り量、回転数、送り速度）、寿命８９、寿命特性９０、コスト９１、及び動き特徴９２（回転、平移動）等より成る。
【００３１】
ここで、寿命特性９０は、例えば図４の図上下側に示す「エンドミル刃具寿命特性例」のように、切削速度と刃具寿命との対応関係を示すものである。図示の通り、切削速度が早くなるほど、刃具寿命は短くなる。切削速度を早くすれば、作業効率は良くなるが、特に使用する刃具が高価であると、コストが増大することになる。但し、寿命特性９０はここでは関係ない。
【００３２】
次に、処理対象ＮＣＰＧから処理対象工具に関する記述部分を抽出し、まず、これを加工工程・部位毎に分割し、更にこれら各々には通常サブプログラム（ＰＧ）を呼び出す記述があるので、呼出先のサブＰＧを取得して、これをＧコードで分割し、工具経路（ツールパス）、移動特徴、Ｇコード特徴等を抽出する（ステップＳ２２）。
【００３３】
上記ステップＳ２２の処理について説明する。まず、加工工程・部位毎に分割するとは、後述する図１１〜図１５で説明する“ツール工程のブロック群に分ける”ことである。そして、任意のツール工程のブロックから呼び出すサブＰＧが例えば図６の図上右下に示すＰＧであったとすると、上記Ｇコードで分割するとは、これを図示の(1)〜(6)に分割することを意味する。この(1)〜(6)には、工具の移動の仕方が記述されているので（例えば(1)ではＧ００により早送り、Ｚ４０．５によりＺ軸方向に４０．５(mm)移動させることが記述されている）、これに基づいて、図６に示すようなツールパスが作成できる。上記移動特徴とは、このツールパスから、特徴的な点（切削パターン）を抽出したものである。これは、例えば図６の図上左上に「切削パターンの特徴」として示した各特徴（穴通し時に主軸回転せず、Ｇ０１で戻り切削をする、戻りパスは送りパスと一部重複しない等）を抽出するものである（但し、これは説明上言葉で示してあるが、実際にはこれら特徴を示すプログラム部分などが抽出される。またコンピュータが抽出した特徴だけでなく、ユーザが判断して入力した特徴が加わってもよい。例えば“Ｇ０１で戻り切削をする”はユーザが判断して入力したものである）。更に、切削に係わるＧコード特徴も抽出する。図６の例ではＧ０１が抽出される。
【００３４】
そして、上記ツール工程毎に上記ステップＳ２２の処理により得た情報を用いて、ステップＳ２５〜ステップＳ２９の処理を繰り返し実行する。
まず、任意の処理対象を１つ決定し（ステップＳ２５）、この処理対象について上記取得・抽出したデータを用いて、既存の加工仕様特徴（パターン）情報２５との照合を行い（ステップＳ２６）、既存パターンにないパターンであるか否かを判定し（ステップＳ２７）、そうである場合には（ステップＳ２７，ＹＥＳ）、新規パターンとして加工仕様特徴（パターン）情報２５に追加・登録する（ステップＳ２８）。これらステップＳ２６〜Ｓ２８の処理について、以下、詳しく説明する。
【００３５】
まず、図５に、加工仕様特徴（パターン）情報２５の一例を示す。
図示の加工仕様特徴（パターン）情報２５は、加工仕様パターン名１０１、加工法特徴１０２、工具種類１０３、Ｇコード特徴１０４、相対的ルールパス記述１０５、ツールパス特徴１０６、図形ドキュメント記述ファイル名１０７、汎用ドキュメント（ＸＭＬベース）記述ファイル名１０８、ＮＣＰＧのライブラリファイル名１０９、動き特徴２０１、及び移動特徴２０２よりなる。
【００３６】
上記ステップＳ２６の処理は、上記ステップＳ２１で得た加工方法（回転／平移動、点加工／面加工）、ステップＳ２２で得た移動特徴（切削パターンの特徴）、Ｇコード特徴と、加工仕様特徴（パターン）情報２５の各データとを比較して、全て一致するものがあるか否かを判定する処理である。回転／平移動は、動き特徴２０１に格納されている。点加工／面加工は、加工法特徴１０２に基づいて判別する（“面”の文字があれば面加工、それ以外は全て点加工と判定する）。Ｇコード特徴は、Ｇコード特徴１０４に格納されており、移動特徴は移動特徴２０２に格納されているので（特にデータ例は示さない）、これらを比較する。
【００３７】
そして、３つ全て一致するものが、加工仕様特徴（パターン）情報２５に登録されていなかった場合には（ステップＳ２７，ＹＥＳ）、ステップＳ２８の処理を行う。尚、３つ全てといっても、特に重要なのは移動特徴である。すなわち、本手法の特徴は、様々な切削パターンについてプログラムをライブラリ化して登録しておくことで、プログラム作成の手間を軽減できるようにすることである。つまり、プログラム作成者は、所望の切削パターンに対応するライブラリを取得して、工具移動距離や切削条件等の数値を修正するだけで、例えば後述する図８に示す(6)の各々（パターン１の加工記述〜パターン１０の加工記述の各々）を作成できるようになる。これより、新たな切削パターンが見つかる毎に加工仕様特徴（パターン）情報２５に新規登録していくことが、図３の処理の趣旨である。
【００３８】
ステップＳ２８の処理は、まず、ステップＳ２１，Ｓ２２で得た動き特徴、Ｇコード特徴、移動特徴、及びツールパス情報を、それぞれ、図５の動き特徴２０１、Ｇコード特徴１０４、移動特徴２０２、及び相対的ツールパス記述１０５に格納する処理である。更に、加工仕様パターン名１０１、加工法特徴１０２、ツールパス特徴１０６には、ユーザが任意に決めて入力したパターン名、特徴名等が格納される。更に、当該新規登録した切削パターンに対応するサブプログラムをファイルに格納し、任意のファイル名を割り当てて、このファイル名をＮＣＰＧのライブラリファイル名１０９に格納する。例えば、図６の例では図上右下に示すサブプログラムがファイルに格納されて、任意のファイル名が割り当てられることになる。
【００３９】
一方、図形ドキュメント記述ファイル名１０７、汎用ドキュメント（ＸＭＬベース）記述ファイル名１０８は、後に説明する図７の処理によって作成・追加されたドキュメントファイルのファイル名が格納される。
【００４０】
以上の処理を、全ての対象について行うまで繰り返し実行したら（ステップＳ２９、Ｓ３０、Ｓ３１）、最後に、上記当該新規登録した切削パターンに対応するサブプログラムのファイルをＮＣＰＧライブラリデータベース４０に格納して（ステップＳ３２）、当該処理を終了する。尚、図示の「工具毎の各加工工程・部位対応の加工仕様情報」２５’とは、新規登録が行われた後の加工仕様特徴（パターン）情報２５のことであるので、以下の説明では加工仕様特徴（パターン）情報２５’として説明する。
【００４１】
次に、加工仕様パターンの登録処理部３２について説明する。
図７は、加工仕様パターンの登録処理部３２によって実行される処理手順を説明するためのフローチャート図である。
【００４２】
同図において、まず、加工仕様特徴（パターン）情報２５’を取得する。例えば、図５に示す情報を取得する（ステップＳ４１）。
ユーザ等が、取得した情報から、処理対象を決定することで（ステップＳ４２）、処理対象の情報が表示される（ステップＳ４３）。ユーザは、この処理対象のパターン名を決定して入力する（ステップＳ４４）。
【００４３】
そして、処理対象の相対的ツールパス記述１０５の情報を取得して、これを既存の市販の変換ツールを用いて、ＸＭＬベースでの汎用ドキュメント４１に変換し、これに任意のファイル名をつけてデータベースに格納する。更に、このファイル名を図５の汎用ドキュメント（ＸＭＬベース）記述ファイル名１０８に格納する（ステップＳ４５）。既存の市販の変換ツールの例としては、例えば、ACDTOSVG（カーネルコンピュータシステム株式会社製(Kernel Computer System Co.,Ltd.)）が知られている。
【００４４】
次に、ワーク設計情報２１から、ワークの加工部位（名称、形状）、基準面からの寸法、ＣＡＤ図面ファイル名のファイルのＣＡＤ図面データを取得すると共に（ステップＳ４６）、工具設計情報２３から工具形状情報（工具３Ｄデータベース名７７等）を取得する（ステップＳ４７）。
【００４５】
図９に、ワーク設計情報２１の一例を示す。
ワーク設計情報２１は、ワーク（加工対象）の素材/製品形状・寸法、精度、公差、材質、硬度、表面処理（塗装・焼入れ）、面粗度等の情報より成るが、本システムの処理で利用するのは、加工部位６１（名、形状）、基準面からの寸法６２等である。
【００４６】
加工部位６１は、各加工部位の名称、形状のデータより成る。図示の例では、加工部位は６箇所であり、各々の名称は“Ａ１面”、“Ｂ１面”、“Ｃ１穴”、“Ｃ２穴”、“Ｄ１面”、及び“Ｅ１穴”であり、それぞれ、形状、及び基準面からの寸法６２（方位、位置、径（幅）、深さ等）、その他のデータが対応付けられて格納されている。更に、ＣＡＤ図面ファイル名６３が格納されており、ステップＳ１８では、このＣＡＤ図面ファイル名６３のファイルからＣＡＤ図面データを取得する。
【００４７】
そして、これら取得した情報に基づいて、処理対象パターンの図形ドキュメントを作成する（例えば２つの図形データを合成する）（ステップＳ４８）。作成した図形ドキュメントは、ディスプレイ等に表示する（ステップＳ４９）。ユーザ等は、この表示内容を見て、必要であれば、修正等を行う（ステップＳ５０）。そして、作成／修正された図形ドキュメント４２に任意のファイル名を付けてデータベースに格納すると共に、このファイル名を図５の図形ドキュメント記述ファイル名１０７に格納する（ステップＳ５１）。
【００４８】
他にも処理対象があれば（ステップＳ５２、ＹＥＳ）、ステップＳ４２の処理に戻って、次の処理対象を決定し、同様の処理を行う。
以上説明した図７の処理によって作成・更新された、各種パターンのＸＭＬベースでの汎用ドキュメント・データベース４１、各種パターンの図形ドキュメント・データベース４２のデータを用いることで、例えば表示画面４３に示すような表示が行われるので、各種加工仕様パターンの構成・動作内容などが、プログラム作成者にとって視覚的に分かり易くなる。つまり、プログラム作成者は、自己が作成しようとする切削パターンと同じパターンのライブラリが既に登録されているか否かを、判断し易くなる。
【００４９】
以上説明したように、各種加工仕様パターン（切削パターン）対応の各ＮＣＰＧライブラリを登録しておくことで、新たな任意のＮＣＰＧを作成する際に、このライブラリを利用することで、プログラム作成を容易に行えるようになり、またプログラム作成を自動化することも可能となる。図８に、その具体的なイメージを示す。
【００５０】
図８の図上右側に、上記ライブラリを利用して作成したＮＣＰＧ（プログラム）の一例を示す。図示のプログラムでは、メインプログラム中からサブＰＧ（プログラム）をコールする。このサブＰＧは、上記ライブラリに基づいて作成される。
【００５１】
図示のＮＣＰＧは、(1)〜(7)の各部分より成る。
(1)〜(4)はメインプログラムであり、(5)〜(7)は、このメインプログラム中で呼び出されるサブプログラム群である。
また、(1)、(4)、(7)は、加工仕様に関係ない部分である。一方、(2)、(3)、(5)、(6)は、加工仕様に関係する部分である為、加工仕様が変更される毎にその記述内容を変更すべき部分である。
【００５２】
(1)は、設備仕様に関する設定、準備処理１（治具動作等）に関するプログラムである。
(2)は、準備処理２（座標設定等）に関するプログラムである。
【００５３】
(3)は、指定順序の加工工程組合せ（１〜ｎ工程から構成され、サブＰＧコールにより組立）に関するプログラムである。
(4)は、加工完了処理に関するプログラムである。
【００５４】
(5)は、工具別の加工工程仕様を記述するサブプログラム群である。この例では、工具１〜工具１０の各々の加工仕様を記述したサブプログラムが存在する。これらサブプログラムは、(3)のプログラムによって呼び出される。
【００５５】
(6)は、加工特徴パターン別の加工仕様を記述するサブプログラム群である。この例では、加工特徴パターン１〜加工特徴パターン１０の各々の加工仕様を記述したサブプログラムが存在する。これらサブプログラムは、(5)のサブプログラム中から呼び出される。
【００５６】
(7)は、補正、工具交換、刃具検知等の処理を記述したサブプログラム群である。
また、図示のプログラムの各行は、シンボル“Ｎ”に続く数値で表されたシーケンス番号を先頭に、機能の種類を表すシンボル、及びそれに続くコード化された数値からなるデータ（コード）が１つ以上、続く構成となっている。
シーケンス番号は、ＮＣプログラムの先頭に近づくほど小さな値となる昇順で記述される。
【００５７】
上記機能の種類を表すシンボルである“Ｇ”“Ｍ”“Ｓ”及び“Ｔ”は、それぞれ異なる機能の種類を表すシンボルであり、それに続くコード化された数値が機能の命令（指令）を表すようになっている。
【００５８】
シンボル“Ｇ”は準備機能を表し、補間の種類や座標系の選択、固定サイクル、ねじ切り、準備機能、或いはその他のことは、それに続く数値（Ｇコード）で指定する。シンボル“Ｘ”、“Ｙ”は、それに続く数値で座標位置などを指定するために用いられる。
【００５９】
シンボル“Ｍ”は補助機能を表し、主軸の回転や停止、その回転方向、工具交換などは、それに続く数値（Ｍコード）で指定することができる。シンボル“Ｓ”は主軸機能を表し、主軸の回転速度は、それに続く数値（Ｓコード）で指定することができる。シンボル“Ｔ”は工具機能を表し、それに続く数値（Ｔコード）で使用する工具（ツール）を指定することができる。
【００６０】
また、上記加工仕様特徴（パターン）情報２５’を利用することで、ＮＣＰＧから切削条件・Ｃ／Ｔ（サイクルタイム）情報を抽出する処理において（例えば、先出願（特願２００２−１１４６３４号）において本出願人が提案済み）、正確性・精度の向上を図ることができる。
【００６１】
図１０は、第２の実施例による切削条件・Ｃ／Ｔ抽出装置１１０の機能・構成を概略的に示す図である。
図１０において、切削条件・Ｃ／Ｔ抽出装置１１０は、ワーク設計情報２１、工具設計情報２３、加工仕様特徴（パターン）情報２５’（これらは、図２に示すものと同じであってよく、同一符号を付してある）、更に設備設計情報２２、及び加工工程設計情報２４に基づいて、任意のＮＣＰＧ２６から切削条件・Ｃ／Ｔ情報１２０を抽出する。
【００６２】
切削条件・Ｃ／Ｔ抽出装置１１０において、ＮＣＰＧ読込１１１、工具情報取得１１２、工程情報認識１１３、（ワーク設計情報２１、設備設計情報２２の取得も行う）、及び切削条件・Ｃ／Ｔ抽出計算処理１１６は、上記先出願においても行っていることであるので、ここでの説明は省略する。異なるのは、加工仕様特徴（パターン）情報２５’に基づいて切削パターン認識１１４を行ったうえで、「切削・加工するかどうかを判断」１１５している点である。これによって、切削条件・Ｃ／Ｔ抽出の正確性・精度を向上させることができる。
【００６３】
ここで、上記先出願で提案している切削条件・Ｃ／Ｔ抽出手法について説明しておく。
生産設備を制御する制御装置が実行するプログラムは、その制御装置の種類によって普通は異なる。また、同じ種類の制御装置に対しても、複数種類のプログラムが開発されていることはいうまでもない。図１１にそのようなプログラムの一例を示す。
【００６４】
図１１において各ブロックは、ＮＣプログラムを構成する１命令文に当たる。ＮＣプログラムは、基本的に、そのブロック実行順に並べた形で構成されている。
１ブロックはシンボル“Ｎ”に続く数値で表されたシーケンス番号を先頭に、機能の種類を示すシンボル、そのシンボルに続いてコード化された数値からなるデータ（コード）が１つ以上続く構成となっている。シーケンス番号は、ＮＣプログラムの先頭に近づくほど小さな値となる昇順で記述される。以降、プログラムをＰＧと略記する。
【００６５】
図１１において、“Ｇ”“Ｍ”“Ｓ”“Ｔ”は、それぞれ異なる機能の種類を表すシンボルであり、それに続くコード化された数値が機能の命令（指令）を表している。
シンボル“Ｇ”は準備機能を表し、補間の種類や座標系の選択、固定サイクル、ねじ切り、準備機能、或いはその他のことは、それに続く数値（Ｇコード）で指定する。シンボル“Ｘ”“Ｙ”は、それに続く数値で座標位置などを指定するために用いられる。
【００６６】
シンボル“Ｍ”は補助機能を表し、主軸の回転や停止、その回転方向、工具交換などは、それに続く数値（Ｍコード）で指定することができる。シンボル“Ｓ”は主軸機能を表し、主軸の回転速度は、それに続く数値（Ｓコード）で指定することができる。シンボル“Ｔ”は工具機能を表し、それに続く数値（Ｔコード）で使用する工具（ツール）を指定することができる。
【００６７】
上述した機能が用意されていることからも明らかなように、生産設備でのワークへの加工は、随時、ツールを交換しながら、そのツールを用いてワークの複数の箇所を加工することがある。このことから、本実施形態では、加工に使用するツールの種類、及びそのツールでワークを加工する動作を一時的に中断するときの動作に着目してプログラムの解析を行うことにより、プログラムを実行する制御装置の制御下で生産設備がワークを加工する加工工程を基本的な加工工程に分割し、そのサイクルタイムを算出するようにしている。例えば同じツールを用いてワークに穴を開ける加工を複数回行わせるようなＰＧの場合、そのツールに動力を伝える主軸を一時的に回転停止させる動作に着目し、加工工程を分割する。これは、ツールを近い加工点間に移動させるときは主軸の回転を通常、停止せずに、主軸を移動させるが、加工と加工の間にワークの回転などが必要とされ、かつ、ワークの回転に要する時間が長い場合、通常、主軸を停止させるのが普通であるためである。それにより、主軸停止の前後の各工程はそれぞれ１加工工程とみなし、停止前に加工させる穴を空けるのに要する時間と、停止後再回転してから加工させる穴を空けるのに要する時間と、をそれぞれの工程のサイクルタイムとして算出するようにしている。
【００６８】
ツールの位置を随時移動させつつ、ワークの加工を複数回行うような場合、その加工に要する全体の加工時間は、その加工を行っている間にツールを移動させる距離によって変化する。その距離は、加工を行う位置の順序によって変化するのが普通である。その距離を短くするほど、全体の時間が短くなることはいうまでもない。生産設備がワークを加工する加工工程を基本的な加工工程に分割してサイクルタイムを算出するのは、このためである。
【００６９】
そのように分割した加工工程の順序を変化させると、それに伴い、各加工工程のサイクルタイム、更には全体の加工時間が変化する。このため、そのサイクルタイムを提示することにより、作業者（端末装置１０４のユーザ）は、問題のある加工工程を正確に把握できるようになる。それにより、ツールの調整や加工工程の見直しも容易に行えるようになる。この結果、加工工程の最適化、例えば全体の加工時間を最も短くさせたり、その加工時間を目標とする時間と一致させたりすることも容易となる。
【００７０】
また、サイクルタイムと併せて、加工工程の加工条件（ツールの種類、切削条件や加工位置、加工方法（ツールの使い方やその移動方向など）など）を提示するようにした場合、サイクルタイムの変化に影響を及ぼす要因の特定が更に容易となる。また、加工条件からツールの寿命、加工の品質を容易、且つ、正確に把握できるようになる。
【００７１】
図１２は、加工工程の分割方法を説明する図である。ここでは、主軸を回転させてワークを加工する生産設備を例にとり、その制御を行う制御装置が実行するプログラムから、その生産設備がワークを加工する加工工程を基本的な加工工程に分割する方法を説明する。
【００７２】
図１２に示すように、まず、ツール（工具）交換を指令するブロックを検出し、そのブロックでＰＧを分ける。それにより、同一のツールで加工を行わせるためのブロック群を特定する。以降、基本的な加工工程と区別するために、同一のツールを用いて行われる加工工程全体を指してツール工程と呼ぶ。ツール工程は、１以上の基本的な加工工程から構成される。
【００７３】
図１２に示すＰＧでは、工具交換指令は１個、または２個のブロックで行われる。図１２中の「ケース１」「ケース３」は、共に１ブロック（命令文）で工具交換指令を実現させたケースである。「ケース３」は、マクロとして用意されたサブＰＧを呼び出すことで、工具交換指令を実現させている。また、「ケース２」は、工具の準備を指令するブロック、準備を指令した工具への交換を指令するブロックの２個のブロックで工具交換指令を実現させたケースである。いずれのケースでも、実際に工具を交換させることになる指令のブロックでＰＧを分けている。
【００７４】
工具（ツール）交換に着目してＰＧを１つ以上のブロック群に分割すると、次に各ブロック群（ツール）ごとに、そのブロック群を、主軸停止を指令するブロックに着目して更に分割する。より具体的には、そのブロックとして、ここでは一時的に主軸停止を指令することになるブロック、すなわち、主軸の回転を指令するブロックが後に配置されている主軸停止を指令するブロックに着目している。その理由は、主軸を回転させてワークを加工する生産設備では、主軸を停止させたままワークを加工することは有り得ないためである。尚、１ツールで１回の加工を行う場合には、そのツールのツール工程は分割せず、ツール工程は１基本加工工程から構成される。
【００７５】
そのようにして各加工工程ごとにＰＧを更に細かく分割すると、次に各ブロック群に対し、加工条件（ここでは切削条件）を抽出する。ここで抽出している切削条件は、主にサイクルタイムを算出する上で必要な条件であり、本実施形態では、その切削条件として、Ｆ、Ｅ、Ｓ、Ｄ値を状況に応じて抽出している。それらの値は、いずれもブロック（図１２参照）に機能のコードとして記述することが可能な値である。Ｆ値（Ｆコード）は、主軸の移動速度を表し、Ｅ値（Ｅコード）は、主軸の１回転当たりの移動量を表し、Ｄ値（Ｄコード）は、ツールの周速を表している。
【００７６】
主軸は、ツールで加工を行わない場合、パラメータで設定された速度で移動する。予め定められた原点に主軸を戻すのが早戻しであり、それ以外の移動が早送りである。ワークへの穴空けは、Ｚ軸上の位置を減少させることで行われる。ワークにツールを接触させた状態で主軸をＸＹ平面上に移動させれば、ワークに溝が形成されたり、ワークの表面を削ることができたりする。これらのことから、本実施形態では、図１３に示すように、切削、早送り、早戻しの識別を行うようにしている。図１３中のＧコード「Ｇ０１」は直線補間、Ｇコード「Ｇ００」は位置決めをそれぞれ表している。
【００７７】
図１４は、加工工程の分割例を説明する図である。上述したようにして実際のＰＧを解析することで加工工程ごとにＰＧをブロック群に分け、各ブロック群から切削条件を抽出する様子を示したものである。図１４に示すＰＧでは、Ｔコードを持つブロックを実行することで呼び出されるサブＰＧはマクロとして用意されている。図中の「工程１」「工程２」は、それぞれツール工程を表している。
【００７８】
図１５は、１生産設備により加工されたワークを示す図である。
図１５に示すワークには、形状が異なる４種類の穴＃１〜４が空けられている。それらの穴＃１〜４は、それぞれ異なるツールを用いて空けられている。形状が同じ穴＃２は２個空けられている。穴＃３は、円形ではなく細長い形状に空けられている。
【００７９】
そのような穴＃１〜４を空ける加工を行わせるためのＰＧでは、それを４つのツール工程のブロック群に分けることになる。図中の工程１〜４は、ブロック群に分けられたツール工程、それに付された番号は、そのツール工程が行われる順序を示している。穴＃２は２個あることから、工程２に対応するブロック群は更に２つのブロック群に分けられる。
【００８０】
穴＃３は、他とは異なり、ワークの表面の形状が細長くなっている。そのような形状の穴＃３は、例えばツール（例えばエンドミル）でＺ軸に沿った穴を空けた後、そのツール（主軸）をＸＹ平面上に移動させることによって形成される。それにより、図１２を参照して説明した加工条件（ここでは切削条件）が変化する。穴＃３を空けるのに要するサイクルタイムを算出する場合、Ｚ軸に沿った穴を空けるのに要する時間と、ツールをＸＹ平面上に移動させた時間とは、別々に計算しなければならない。このことから、そのような加工条件を抽出するようにしている。
【００８１】
図１６は、サイクルタイムの定義と計算方法を説明する図である。図１７は、そのサイクルタイム計算用データの取得方法を説明する図である。次に、図１６、及び図１７を参照して、計算の対象とするサイクルタイム、その計算方法、及びその計算に用いるデータの取得方法について説明する。それら図１６、及び図１７は、切削加工を行う生産設備を例にとった場合のものである。
【００８２】
図１６において、「Ｔ工程サイクル１」「Ｔ工程サイクルN」は、それぞれ、同じツールを用いてワークを加工する基本加工工程に対応する。図１５に示すワークでは、２つの穴＃２を空けるためのそれぞれの加工工程に対応する。そのサイクルタイムＴRKは、その基本加工工程の加工を行うために生産設備を稼動させている稼動時間である。
【００８３】
「ツールサイクル」は、上記ツール工程に対応し、そのツール工程で行われる全基本加工工程から構成される。従って、そのサイクルタイムＴjは、図１６に示すように、各基本加工工程のサイクルタイムＴRKを積算して計算される時間となる。「設備サイクル」は、生産設備でワークを加工する工程全体に対応し、全ツール工程はその一部として行われる。このため、そのサイクルタイムＴは、各ツール工程のサイクルタイムＴRを積算して計算される時間に、生産設備固有のワークの加工に必要な時間を加算して得られる時間となる。加工するワークを作業員がセットして安全用の扉を閉め、その扉を開けて加工が終わったワークを取り出すのであれば、図１６に示すように、固有の時間として、ワークをセットして扉を閉めるのに要する時間ＴBS、扉を開けてワークを取り出すのに要する時間ＴBEを加算することになる。
【００８４】
「ラインサイクル」は、１生産ラインでワークを加工する工程全体に対応し、全設備サイクル（工程）はその一部として行われる。このため、そのサイクルタイムＴＬは、各設備サイクルのサイクルタイムＴを積算して計算される時間に、生産ライン固有のワークの加工に必要な時間を加算して得られる時間となる。生産設備間でのワークの受け渡しを作業員が運搬して行うのであれば、固有の時間として、生産設備間の運搬時間をそれぞれ加算することになる。
【００８５】
基本加工工程のサイクルタイムＴRKは、図１６に示すように、その添字で示す基本加工工程ＲＫにおける早送り時間（主軸を早送りするのに要する時間）Ｔqf＿RK、位置決め時間Ｔld＿RK、ＡＴＣ時間（ツールの自動交換に要する時間）Ｔatc＿RK、テーブル割出時間（ワークをセットするテーブルの割出角度を変化させるために要する時間）Ｔtac＿RK、ドウエル時間Ｔd＿RK、主軸加速度タップロス時間（主軸の回転速度が目標値に達するまでに要する時間）Ｔal＿RK、総切削（加工）時間Ｔts＿RK、早戻し時間（主軸を原点に向けて早戻しするのに要する時間）Ｔqr＿RK、及び工具検知時間Ｔtcc＿RKを加算することで計算される。
【００８６】
上記総切削（加工）時間Ｔts＿RKは、上述したように、ＰＧ中から抽出した加工条件別に加工に要する時間を算出し、算出した時間を積算することで求められる時間である。例えば図１５に示すような穴＃３では、Ｚ軸に沿って穴を空けるのに要する時間と、主軸をＸＹ平面上に移動させるのに要する時間とを加算した時間となる。
【００８７】
上記各時間は、上述したようにツール工程を基本加工工程に分割することから、切削加工では、早送り時間Ｔqf＿RK、位置決め時間Ｔld＿RK、主軸加速度タップロス時間Ｔal＿RK、及び総切削（加工）時間Ｔts＿RK以外の時間は０であることがあり得る。例えばＡＴＣ時間Ｔatc＿RKは、最初の基本加工工程以外では０となり、早戻し時間Ｔqr＿RKは、最後の基本加工工程以外では０となる。工具検知時間Ｔtcc＿RKは、生産設備によっては主軸に別の動きを行わせている間に工具の検知を行うようにしていることから、０ということもある。このことから、工具検知時間Ｔtcc＿RKは、ファイルに保存した固定値を使用するようにしている。それ以外には、位置決め時間Ｔld＿RK、ＡＴＣ時間Ｔatc＿RK、更には時間ＴBS、ＴBEもファイルに保存した固定値を使用するようにしている（図１７参照）。以降、そのファイルについては、サイクルタイム算出用に用意したものであることから、算出用ファイルと呼ぶ。
【００８８】
上記早送り時間Ｔqf＿RK、及び早戻し時間Ｔqr＿RKは、主軸の移動上の制約を考慮して算出される。例えば主軸を同時には１軸上にしか移動できなければ、各軸の移動距離の積算値が主軸の移動距離となる。その移動距離を移動するのにかかる時間は、各軸につき、その移動距離をその軸の早送り速度で割って得られる時間を積算したものとなる。複数軸上に移動できるのであれば、各軸上の移動距離をその軸の早送り速度で割って得られる時間の最大時間が移動にかかる時間となる。このことから、主軸の移動上の制約を考慮して時間を算出している。各軸上を含め、移動距離は、ＰＧから取得し、早送り速度は、各軸につき、生産設備の制御装置から収集したパラメータ中から取得している。
【００８９】
テーブル割出時間Ｔtac＿RKを算出するための割出角度θは、ＰＧ中から取得する。その算出は、９０度のテーブルを回転するのに要する基準時間αに、割出角度θを９０で割った値を掛けることで行っている。基準時間αは、上記算出用ファイル内に用意するか、或いはサイクルタイム算出用にラインサーバ１０８が実行するプログラム内で定義されている。
【００９０】
ドウエル時間Ｔd＿RKは、ＰＧ中から取得する。それが複数存在していれば、その累計値が時間Ｔd＿RKとなる。主軸加速度タップロス時間Ｔal＿RKは、Ｓコードで指令される回転速度に主軸が達するのに要する時間である。その時間は、例えば算出用ファイルにテーブル形式、或いはそれを算出するための方程式の形で格納されている。図１７に示す例は、Ｓコードで指令される回転速度が１５００ｒｐｍまでは固定値ａ、その回転速度が１５００〜３０００ｒｐｍの間は固定値ｂ、その回転速度が３０００ｒｐｍ以上であれば固定値ｃを時間Ｔal＿RKとすることを表している。
【００９１】
加工では、同じ、或いは同じと見なせる加工を繰り返し行うことがある。例えばフライス加工では、フライス面を加工するのにツールを複数回、場所や方向を変えつつ移動させることがある。ここでは、ツールを１回移動させる加工を１パスと呼んでいる。それにより、総切削時間Ｔts＿RKは、１パス当たりの切削（加工）時間にパス数ＰＮ＿ＲＫを掛けて算出している。１パス当たりの切削時間は、そのパスでの切削距離を送り速度で割ることで求めている。切削距離、送り速度、及びパス数ＰＮ＿ＲＫは、共にＰＧから取得している。
【００９２】
上記先出願の方法では、切削・加工か否かの判断は、特殊な加工方法には対応しきれなかった。例えばワークの穴にツールを通した後、戻り動作を行いつつ裏側の切削を行う（戻り切削）のような加工方法の場合、この戻り切削は、切削・加工とは見なさなかった。
【００９３】
本例では、このような例外についても、加工仕様パターン情報２５’に「切削」として登録されているものは切削・加工と見なすようにすることで、「切削・加工するかどうかを判断」１１５をより正確に行えるので、これによって、切削条件・Ｃ／Ｔ抽出の正確性・精度を向上させることができる。
【００９４】
図１８に、切削条件・Ｃ／Ｔ抽出装置１１０の処理フローチャート図を示す。
図１８において、ステップＳ６１〜ステップＳ６８の処理は、図１０でも述べた通り上記先出願に記載の処理と略同様であるので、その説明は省略する。
【００９５】
また、ステップＳ６８以降の処理のうち、ステップＳ２１、Ｓ２２、Ｓ２５、Ｓ２６の処理は、図３の同一符号の処理と同じであるので、ここでの説明は省略する。
そして、処理対象の加工仕様パターン（切削パターン等）と一致するものが既に加工仕様パターン情報２５に登録されていた場合には（ステップＳ７５，ＹＥＳ）、当該一致する登録パターンについてのＧコード特徴１０４と移動特徴２０２を取得して、これに基づいて図１０の「切削・加工するかどうかを判断」１１５の処理を行ったうえで、切削条件・Ｃ／Ｔ抽出を行い（ステップＳ７６）、最終的には切削条件・Ｃ／Ｔ情報１２０を作成する。図１９に、抽出した切削条件・Ｃ／Ｔ情報の一例を示すが、上述してある通り、これは特に重要ではない。
【００９６】
重要なのは、Ｇコード特徴１０４と移動特徴２０２を取得して、これに基づいて図１０の「切削・加工するかどうかを判断」１１５の処理を行うことであるので、これについて以下具体例を挙げて説明する。
【００９７】
ここでは、図６に示す例に対応する加工仕様パターンが、既に加工仕様パターン情報２５に登録されていたものとし、その加工仕様パターンと処理対象のサブＰＧの加工仕様パターン（Ｇコード特徴、移動特徴等）とが、一致したものとする。この場合、Ｇコード特徴はＧ０１であるが、Ｇ０１の場合、図１３に示した例では、Ｘ値、Ｙ値が変化なしでＺ値が増加する場合は、「戻り」と判定されてしまい、「切削」と判定されることはない。しかしながら、図６に示す(3)のように、Ｘ値、Ｙ値が変化なしでＺ値が増加する場合でも「切削」と行う例外的なケースがある。本手法では、この様な場合でも、正しく、「切削」と判定することができる。すなわち、既に説明してあるように上記の例の場合、移動特徴２０２には図６の図上左上に示す切削パターンの特徴が記録されており、その中に「Ｇ０１で戻り切削する」ことを示す情報が格納されているので、これより「切削」と判定できる。
【００９８】
尚、他に処理対象工具が残っていれば（ステップＳ７８、ＮＯ）、ステップＳ６８に戻って、新たな処理対象工具を決定し、この処理対象工具について同様の処理を行う。また、他に、処理対象のＮＣＰＧがあれば、ステップＳ６３に戻って、上述した処理を行う。そして、全ての処理対象について処理が終わったら、図１９に一例を示す切削条件・Ｃ／Ｔの抽出結果を出力する（ステップＳ８０）。
【００９９】
尚、上記の通り、設備設計情報２２、加工工程設計情報２４等のデータ取得については説明は省略するが、一応、設備設計情報２２、加工工程設計情報２４の一例を、図２０、図２１に示しておく。
【０１００】
図２０に、設備設計情報２２の一例を示す。
図示の設備設計情報２２は、Ｃ／Ｔ（サイクルタイム）関連情報５１、エネルギー関連情報５２、設備情報５３等より成る。尚、実際には、これら以外にも、サイズ、工具、精度、信頼性等の情報もあるが、ここでは関係ないので、省略する。
【０１０１】
Ｃ／Ｔ関連情報５１は、その設備（ＮＣまたはＰＬＣ；ここではＮＣを例にする）の最大能力を示す情報であり、例えば早送り速度（ＸＹＺ）とは、その設備の早送り速度のＭＡＸ値を意味する。他の切削送り速度（ＸＹＺ）等も同様である。
【０１０２】
エネルギー関連情報５２は、ここでは関係ないので、説明は省略する。
設備情報５３は、その設備（ＮＣ、ＰＬＣ等）の機種名、メーカー、型式等の情報である。同一メーカーであっても、機種、型式によって、使用するプログラムが異なる場合も多いので、この設備情報５３に基づいて、使用するプログラムを判断する。更に、制御装置パラメータファイル名が格納されている。制御装置パラメータ５４は、主軸動作方式、リファレンス点座標等である。
【０１０３】
図２１に示す加工工程設計情報２４の一例について説明する。
図２１に示す加工工程設計情報２４の一例は、上記図９に示す例のワークの各加工部位を加工する為の加工工程を示す。
【０１０４】
図示の加工工程設計情報２４は、工程ＮＯ．７１、設備工程名７２、工程内容７３、刃具径７４、刃具種類７５より成る。
工程ＮＯ７１．は、当該加工工程の順番を示すものであり、この番号順に加工が行われる。
【０１０５】
設備工程名７２は各工程に任意に付けられた名称であり、工程内容７３はその実際の工程内容（面削り、穴明け等）であり、刃具径７４及び刃具種類７５は各工程で用いる工具（刃具）である。例えば、ＮＯ．＝１の工程では、径が６０．０のフライスを用いて、Ａ１面の面削りを行うことを意味する。
【０１０６】
図２２は、上記の装置の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
同図に示すコンピュータ１３０は、ＣＰＵ１３１、メモリ１３２、入力部１３３、出力部１３４、記憶部１３５、記録媒体駆動部１３６、及びネットワーク接続部１３７を有し、これらがバス１３８に接続された構成となっている。同図に示す構成は一例であり、これに限るものではない。
【０１０７】
ＣＰＵ１３１は、当該コンピュータ１３０全体を制御する中央処理装置である。
メモリ１３２は、プログラム実行、データ更新等の際に、記憶部１３５（あるいは可搬型記録媒体１３９）に記憶されているプログラムあるいはデータを一時的に格納するＲＡＭ等のメモリである。ＣＰＵ１３１は、メモリ１３２に読み出したプログラム／データを用いて、上述してある各種処理を実行する。
【０１０８】
入力部１３３は、例えば、キーボード、マウス等である。
出力部１３４は、例えばディスプレイである。
記憶部１３５は、例えばハードディスク等であり、上述した様々な処理・機能（図２，図１０の各機能部、図３，図７，図１８のフローチャートの処理）を、コンピュータ１３０に実行させるためのプログラム／データ（データ；図４，図５，図９，図１９〜図２１等）が格納されている。
【０１０９】
ネットワーク接続部１３７は、任意のネットワークに接続して、他の情報処理装置とのコマンド／データ送受信を行う為の構成である。
あるいは、これらプログラム／データは、可搬型記録媒体１３９に記憶されているものであってもよい。この場合、可搬型記録媒体１３９に記憶されているプログラム／データは、記録媒体駆動部１３６によって読み出される。可搬型記録媒体１３９とは、例えば、ＦＤ（フレキシブル・ディスク）１３９ａ、ＣＤ−ＲＯＭ１３９ｂ、その他、ＤＶＤ、光磁気ディスク等である。
【０１１０】
あるいは、また、上記プログラム／データは、ネットワーク接続部１３７により接続しているネットワークを介して、他の装置内に記憶されているものをダウンロードするものであってもよい。あるいは、更に、インターネットを介して、外部の他の装置内に記憶されているものをダウンロードするものであってもよい。
【０１１１】
また、本発明は、上記本発明の各種処理をコンピュータ上で実現するプログラムを記録した可搬型記憶媒体として構成できるだけでなく、当該プログラム自体として構成することもできる。
【図面の簡単な説明】
【０１１２】
【図１】本実施の形態による装置が適用されるネットワークシステム全体の構成を示す図である。
【図２】第１の実施例による装置の機能ブロック図である。
【図３】基本情報処理部の処理フローチャート図である。
【図４】工具設計情報の一例を示す図である。
【図５】加工仕様特徴（パターン）情報の一例を示す図である。
【図６】プログラム分割、ツールパス作成、移動特徴、Ｇコード特徴抽出を具体的に説明する為の図である。
【図７】加工仕様パターンの登録処理部の処理フローチャート図である。
【図８】ライブラリを利用したＮＣＰＧの一例とその説明図である。
【図９】ワーク設計情報の一例を示す図である。
【図１０】第２の実施例による装置の機能・構成を概略的に示す図である。
【図１１】プログラムの構成を説明する図である。
【図１２】加工工程の分割方法を説明する図である。
【図１３】切削、早送り、及び早戻しの識別方法の説明図である。
【図１４】加工工程の分割例を説明する図である。
【図１５】１生産設備により加工されたワークを示す図である。
【図１６】サイクルタイムの定義と計算方法を説明する図である。
【図１７】サイクルタイム計算用データの取得方法を説明する図である。
【図１８】切削条件・Ｃ／Ｔ抽出装置の処理フローチャート図である。
【図１９】抽出した切削条件・Ｃ／Ｔ情報の一例を示す。
【図２０】設備設計情報の一例を示す図である。
【図２１】加工工程設計情報の一例を示す図である。
【図２２】本例の装置の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
【符号の説明】
【０１１３】
１  構内ＬＡＮ
２  工場ローカルＬＡＮ
３  ルータ
４  設備設計情報システムサーバ
５  工具設計情報システムサーバ
６  工程設計情報システムサーバ
７  データベース（ＤＢ）サーバ
８  ラインサーバ
９、１０  アクセスポイント（ＡＰ）
１２，１３  生産ライン
２１  ワーク設計情報
２２  設備設計情報
２３  工具設計情報
２４  加工工程設計情報
２５  加工仕様特徴（パターン）情報
２６  ＮＣＰＧ（プログラム）
３０  装置
３１  基本情報処理部
３２  加工仕様パターン登録処理部
４０  加工仕様特徴/ライブラリ
５１  Ｃ／Ｔ（サイクルタイム）関連情報
５２  エネルギー関連情報
５３  設備情報
５４  制御装置パラメータ
６１  加工部位
６２  基準面からの寸法
６３  ＣＡＤ図面ファイル名
７１  工程ＮＯ．
７２  設備工程名
７３  工程内容
７４  刃具径
７５  刃具種類
８１  工程ＮＯ．
８２  工程名
８３  工具（刃具径、刃具種類）
８４  刃具ＣＤ（硬度）
８５  チップ数Ｄｒ種類
８６  刃具材質
８７  工具３Ｄデータベース名
８８  切削条件（周速、送り量、回転数、送り速度）
８９  寿命
９０  寿命特性
９１  コスト
９２  動き特徴
１０１  加工仕様パターン名
１０２  加工法特徴
１０３  工具区分例
１０４  Ｇコード特徴
１０５  相対的ルールパス記述
１０６  ツールパス特徴
１０７  図形ドキュメント記述ファイル名
１０８  汎用ドキュメント（ＸＭＬベース）記述ファイル名
１０９  ＮＣＰＧのライブラリファイル名
１１０  切削条件・Ｃ／Ｔ抽出装置
１１１  ＮＣＰＧ読込
１１２  工具情報取得
１１４  切削パターン認識
１１３  工程情報認識
１１５  「切削・加工するかどうかを判断」
１１６  切削条件・Ｃ／Ｔ抽出計算処理
１２０  切削条件・Ｃ／Ｔ情報
１３０  コンピュータ
１３１  ＣＰＵ
１３２  メモリ
１３３  入力部
１３４  出力部
１３５  記憶部
１３６  記録媒体駆動部
１３７  ネットワーク接続部
１３８  バス
１３９  可搬型記録媒体
２０１  動き特徴
２０２  移動特徴
【図２】
2004240966.tif 000003
【図３】
2004240966.tif 000004
【図４】
2004240966.tif 000005
【図５】
2004240966.tif 000006
【図８】
2004240966.tif 000007
【図９】
2004240966.tif 000008
【図１０】
2004240966.tif 000009
【図１１】
2004240966.tif 000010
【図１２】
2004240966.tif 000011
【図１３】
2004240966.tif 000012
【図１４】
2004240966.tif 000013
【図１６】
2004240966.tif 000014
【図１７】
2004240966.tif 000015
【図１８】
2004240966.tif 000016
【図１９】
2004240966.tif 000017
【図２０】
2004240966.tif 000018
【図２１】
2004240966.tif 000019
【図２２】
2004240966.tif 000020
【図１】
2004240966.tif 000021
【図６】
2004240966.tif 000022
【図７】
2004240966.tif 000023
【図１５】
2004240966.tif 000024