(57)【特許請求の範囲】
【請求項１】
複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有するＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング方法であって、
前記ＮＣ工作機械で工作物を作製するために必要な複数の工程を制御する複数のプログラムを、前記複数の系統への割付を考慮せずに個々に作成して予め登録し、
前記ＮＣ工作機械で実施可能な複数種類の切削加工工程で使用できる複数種類の工具の属性に関する工具データを予め登録し、
前記少なくとも１つの刃物台に設けた複数の工具装着部の該刃物台上での位置に関する工具装着部データを予め登録し、
前記複数の工具装着部に装着できる複数種類の工具ホルダの属性に関する工具ホルダデータであって、該複数種類の工具ホルダの属性別の在庫数を含む工具ホルダデータを予め登録し、
前記複数のプログラムのうち幾つかが前記複数の系統のうち少なくとも２つの系統で並行して実行されることを前提に、該複数のプログラムで指定される複数の指定工具の取付場所を前記複数の工具装着部に割振るための、工具配置決定アルゴリズムを予め設定、登録し、
前記工具配置決定アルゴリズムに従い、前記複数の指定工具の取付場所として、前記複数の工具装着部のうちでそれら指定工具に関連するプログラムを実行可能な複数の工具装着部を、前記工具データ及び前記工具装着部データに基づき特定するとともに、特定した該複数の工具装着部に対応の該複数の指定工具を取付けるために使用される複数の工具ホルダを、該工具データ及び前記工具ホルダデータに基づき、前記在庫数を考慮して選定し、
前記複数の工具ホルダの選定が完了した後に、特定した前記複数の工具装着部を指定する指令を前記複数のプログラムに記述して、該複数のプログラムを前記複数の系統へ自動的に割付けること、
を特徴とする自動プログラミング方法。
【請求項２】
前記少なくとも１つの主軸と前記少なくとも１つの刃物台とを適宜組合わせて行なう加工動作を規定する複数種類の加工パターンを予め設定、登録し、該複数種類の加工パターンから選択した幾つかの加工パターンに基づいて、前記複数のプログラムを前記複数の系統へ割付ける請求項１に記載の自動プログラミング方法。
【請求項３】
前記工具ホルダデータは、前記複数種類の工具ホルダの各々に固有の属性として予め登録された工具刃先偏倚量を含み、前記複数の工具ホルダの選定が完了した後に、選定したそれら工具ホルダの各々の該工具刃先偏倚量に基づいて、前記複数のプログラムに位置補正指令を記述する請求項１又は２に記載の自動プログラミング方法。
【請求項４】
複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有するＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング装置であって、
前記ＮＣ工作機械で工作物を作製するために必要な複数の工程を制御するべく前記複数の系統への割付を考慮せずに個々に作成した複数のプログラム、該ＮＣ工作機械で実施可能な複数種類の切削加工工程で使用できる複数種類の工具の属性に関する工具データ、前記少なくとも１つの刃物台に設けた複数の工具装着部の該刃物台上での位置に関する工具装着部データ、該複数の工具装着部に装着できる複数種類の工具ホルダの属性に関する工具ホルダデータであって該複数種類の工具ホルダの属性別の在庫数を含む工具ホルダデータ、及び該複数のプログラムのうち幾つかが該複数の系統のうち少なくとも２つの系統で並行して実行されることを前提に該複数のプログラムで指定される複数の指定工具の取付場所を該複数の工具装着部に割振るための工具配置決定アルゴリズムを予め格納してある記憶部と、
前記記憶部に格納された前記工具配置決定アルゴリズムに従い、前記複数の指定工具の取付場所として、前記複数の工具装着部のうちでそれら指定工具に関連するプログラムを実行可能な複数の工具装着部を、該記憶部に格納された前記工具データ及び前記工具装着部データに基づき特定するとともに、特定した該複数の工具装着部に対応の該複数の指定工具を取付けるために使用される複数の工具ホルダを、該記憶部に格納された該工具データ及び前記工具ホルダデータに基づき、該工具ホルダデータから読出した前記在庫数を考慮して選定し、該複数の工具ホルダの選定が完了した後に、特定した該複数の工具装着部を指定する指令を該記憶部に格納された前記複数のプログラムに記述して、該複数のプログラムを前記複数の系統へ自動的に割付けるプログラム割付処理部と、
を具備することを特徴とする自動プログラミング装置。
【請求項５】
前記記憶部は、前記少なくとも１つの主軸と前記少なくとも１つの刃物台とを適宜組合わせて行なう加工動作を規定する複数種類の加工パターンを予め格納してあり、前記プログラム割付処理部は、該記憶部に格納された該複数種類の加工パターンから選択した幾つかの加工パターンに基づいて、前記複数のプログラムを前記複数の系統へ割付ける請求項４に記載の自動プログラミング装置。
【請求項６】
前記記憶部に格納された前記工具ホルダデータは、前記複数種類の工具ホルダの各々に固有の属性として予め登録された工具刃先偏倚量を含み、前記プログラム割付処理部は、前記複数の工具ホルダの選定が完了した後に、選定したそれら工具ホルダの各々の該工具刃先偏倚量を該工具ホルダデータから読出し、読出した該工具刃先偏倚量に基づいて、前記複数のプログラムに位置補正指令を記述する請求項４又は５に記載の自動プログラミング装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有するＮＣ（数値制御）工作機械で実行される多系統プログラムを自動作成するための自動プログラミング方法及び自動プログラミング装置に関する。
【０００２】
【従来の技術】
近年、ＮＣ工作機械の分野では、複雑かつ多彩な形状の工作物を自動加工できるようにするために、バイト、ドリル、フライス等の多種類の工具を刃物台に交換可能に装備して、旋削加工、穴あけ加工、フライス加工等の多様な加工工程を実施可能とする複合機械化が進められている。また、ＮＣ旋盤に代表される自動旋盤（すなわち自動加工可能な旋盤）においては、加工時間の短縮を図るべく、１つの旋盤機台に、複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を集約的に搭載し、同一の棒材（すなわち加工対象素材）に対する異種（例えば外径削りと中ぐり）同時加工や、異なる棒材に対する同時加工を実施できるようにした多機能型のＮＣ旋盤が、種々提案されている。なお、「系統」という用語は、１つの加工プログラムで制御する制御軸群の組合せ（制御軸が１つしか無い場合も含む）を意味するものであり、１台のＮＣ工作機械上でそのような制御軸群の組合せを複数種類設定できる場合、このＮＣ工作機械における制御方式を一般に「多系統制御 (multi-path control) 」と称する。
【０００３】
他方、ＮＣ工作機械の分野では、加工プログラムの作成に際してオペレータに要求される労力を軽減するために、ＮＣ装置に関連して装備される様々な構成の自動プログラミング装置が提案されている。この種の自動プログラミング装置は通常、ＣＰＵ、メモリ、キーボード、ディスプレイ等を備え、加工工程を実施するために必要なデータを、ディスプレイに順繰りに表示される種々の選択項目や要求事項に対するオペレータからの対話式指示及び入力データ、並びに必要に応じてＣＡＤのような図形入力装置を介して図面形式で入力された工作物の幾何学的データから獲得し、それにより所要の加工プログラムを自動的に生成するようになっている。このような自動プログラミング装置によれば、オペレータが加工プログラムを逐語的に入力する作業が排除されるので、プログラム作成技術に劣るオペレータであっても、複雑な加工プログラムを比較的短時間で作成することができる。
【０００４】
【発明が解決しようとする課題】
上記した従来の自動プログラミング装置においては、オペレータによる加工プログラムの作成時間が効果的に短縮されるものの、プログラム生成に必要な種々のデータ（工具の種類、刃先の移動位置、刃先の相対的切削速度、刃物台の相対的切削送り量等）は、オペレータが工作物の設計図面を参照して判断し、設定するものであるから、加工工程や工具属性に対する十分な知識がオペレータに要求されることになる。さらに、例えば前述した多軸多系統型のＮＣ旋盤で、１つの工作物に対する種々の自動切削加工を複数の系統で並行して実施するための多系統プログラムを作成するような場合には、オペレータは、工作物の設計図面から加工に必要な工程種類を読取った後、個々の工程をどの系統でどの時期に実施することが作業効率上最も有利であるかを、適正に判断して指定しなければならない。特に、各切削加工工程で使用される指定工具を刃物台上の工具装着部に取付ける際に、指定工具の種類や刃物台の構成によっては専用の工具ホルダを使用する必要が生じるが、その場合オペレータは、１つ以上の刃物台に設けた複数の工具装着部に複数の指定工具をどのように割振って取付けるかを、複数種類の工具ホルダの種類別在庫数や各々の属性（装着可能な刃物台の種類、使用対象工程の種類、使用対象工具の属性等）と照らし合せて決定しなければならない。
【０００５】
このように、従来の自動プログラミング装置で高効率の多系統プログラムを作成するためには、オペレータは、対象となるＮＣ工作機械の機械構成を熟知し、かつ当該ＮＣ工作機械で使用できる複数種類の工具ホルダの属性及び在庫数を正確に把握したうえで、複数の指定工具の取付場所を１つ以上の刃物台の複数の工具装着部に適正に割振って指定しなければならない。その結果、多系統プログラムの作成に多大な時間と労力を消費することになり、また、自動作成された多系統プログラムの品質（サイクル時間の長さ、工具配置の妥当性、加工精度等）は、オペレータの知識や経験の多寡によって著しく左右される傾向がある。
【０００６】
したがって本発明の目的は、多軸多系統型のＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング方法及び自動プログラミング装置において、工作物の作製に必要な複数の工程を複数の系統に効率良く適正に自動割付でき、以って、オペレータの知識や経験の多寡によって左右されることなく、高品質の多系統プログラムを迅速に自動作成できる自動プログラミング方法及び自動プログラミング装置を提供することにある。
【０００７】
【課題を解決するための手段】
上記目的を達成するために、請求項１に記載の発明は、複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有するＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング方法であって、前記ＮＣ工作機械で工作物を作製するために必要な複数の工程を制御する複数のプログラムを、前記複数の系統への割付を考慮せずに個々に作成して予め登録し、前記ＮＣ工作機械で実施可能な複数種類の切削加工工程で使用できる複数種類の工具の属性に関する工具データを予め登録し、前記少なくとも１つの刃物台に設けた複数の工具装着部の該刃物台上での位置に関する工具装着部データを予め登録し、前記複数の工具装着部に装着できる複数種類の工具ホルダの属性に関する工具ホルダデータであって、該複数種類の工具ホルダの属性別の在庫数を含む工具ホルダデータを予め登録し、前記複数のプログラムのうち幾つかが前記複数の系統のうち少なくとも２つの系統で並行して実行されることを前提に、該複数のプログラムで指定される複数の指定工具の取付場所を前記複数の工具装着部に割振るための、工具配置決定アルゴリズムを予め設定、登録し、前記工具配置決定アルゴリズムに従い、前記複数の指定工具の取付場所として、前記複数の工具装着部のうちでそれら指定工具に関連するプログラムを実行可能な複数の工具装着部を、前記工具データ及び前記工具装着部データに基づき特定するとともに、特定した該複数の工具装着部に対応の該複数の指定工具を取付けるために使用される複数の工具ホルダを、該工具データ及び前記工具ホルダデータに基づき、前記在庫数を考慮して選定し、前記複数の工具ホルダの選定が完了した後に、特定した前記複数の工具装着部を指定する指令を前記複数のプログラムに記述して、該複数のプログラムを前記複数の系統へ自動的に割付けること、を特徴とする自動プログラミング方法を提供する。
【０００９】
請求項２に記載の発明は、請求項１に記載の自動プログラミング方法において、前記少なくとも１つの主軸と前記少なくとも１つの刃物台とを適宜組合わせて行なう加工動作を規定する複数種類の加工パターンを予め設定、登録し、該複数種類の加工パターンから選択した幾つかの加工パターンに基づいて、前記複数のプログラムを前記複数の系統へ割付ける自動プログラミング方法を提供する。
【００１０】
請求項３に記載の発明は、請求項１又は２に記載の自動プログラミング方法において、前記工具ホルダデータは、前記複数種類の工具ホルダの各々に固有の属性として予め登録された工具刃先偏倚量を含み、前記複数の工具ホルダの選定が完了した後に、選定したそれら工具ホルダの各々の該工具刃先偏倚量に基づいて、前記複数のプログラムに位置補正指令を記述する自動プログラミング方法を提供する。
【００１２】
請求項４に記載の発明は、複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有するＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング装置であって、前記ＮＣ工作機械で工作物を作製するために必要な複数の工程を制御するべく前記複数の系統への割付を考慮せずに個々に作成した複数のプログラム、該ＮＣ工作機械で実施可能な複数種類の切削加工工程で使用できる複数種類の工具の属性に関する工具データ、前記少なくとも１つの刃物台に設けた複数の工具装着部の該刃物台上での位置に関する工具装着部データ、該複数の工具装着部に装着できる複数種類の工具ホルダの属性に関する工具ホルダデータであって該複数種類の工具ホルダの属性別の在庫数を含む工具ホルダデータ、及び該複数のプログラムのうち幾つかが該複数の系統のうち少なくとも２つの系統で並行して実行されることを前提に該複数のプログラムで指定される複数の指定工具の取付場所を該複数の工具装着部に割振るための工具配置決定アルゴリズムを予め格納してある記憶部と、前記記憶部に格納された前記工具配置決定アルゴリズムに従い、前記複数の指定工具の取付場所として、前記複数の工具装着部のうちでそれら指定工具に関連するプログラムを実行可能な複数の工具装着部を、該記憶部に格納された前記工具データ及び前記工具装着部データに基づき特定するとともに、特定した該複数の工具装着部に対応の該複数の指定工具を取付けるために使用される複数の工具ホルダを、該記憶部に格納された該工具データ及び前記工具ホルダデータに基づき、該工具ホルダデータから読出した前記在庫数を考慮して選定し、該複数の工具ホルダの選定が完了した後に、特定した該複数の工具装着部を指定する指令を該記憶部に格納された前記複数のプログラムに記述して、該複数のプログラムを前記複数の系統へ自動的に割付けるプログラム割付処理部と、を具備することを特徴とする自動プログラミング装置を提供する。
【００１４】
請求項５に記載の発明は、請求項４に記載の自動プログラミング装置において、前記記憶部は、前記少なくとも１つの主軸と前記少なくとも１つの刃物台とを適宜組合わせて行なう加工動作を規定する複数種類の加工パターンを予め格納してあり、前記プログラム割付処理部は、該記憶部に格納された該複数種類の加工パターンから選択した幾つかの加工パターンに基づいて、前記複数のプログラムを前記複数の系統へ割付ける自動プログラミング装置を提供する。
【００１５】
請求項６に記載の発明は、請求項４又は５に記載の自動プログラミング装置において、前記記憶部に格納された前記工具ホルダデータは、前記複数種類の工具ホルダの各々に固有の属性として予め登録された工具刃先偏倚量を含み、前記プログラム割付処理部は、前記複数の工具ホルダの選定が完了した後に、選定したそれら工具ホルダの各々の該工具刃先偏倚量を該工具ホルダデータから読出し、読出した該工具刃先偏倚量に基づいて、前記複数のプログラムに位置補正指令を記述する自動プログラミング装置を提供する。
【００１７】
【発明の実施の形態】
以下、添付図面を参照して、本発明の実施の形態を詳細に説明する。図面において、同一又は類似の構成要素には共通の参照符号を付す。
図１は、本発明の一実施形態による自動プログラミング装置１０の全体構成を示すブロック図である。自動プログラミング装置１０は、本発明に係る自動プログラミング方法を遂行して、複数の系統における制御下で動作可能な少なくとも１つの主軸及び少なくとも１つの刃物台を有する図示しないＮＣ工作機械で実行される多系統加工プログラムを自動作成するものであり、ＮＣ工作機械に装備されるＮＣ装置（図示せず）が、自動プログラミング装置１０から受取った多系統プログラムに従ってＮＣ工作機械の動作を制御する。
【００１８】
図１に示すように、自動プログラミング装置１０は、入力部１２、表示部１４、制御部１６、記憶部１８及びプログラム割付処理部２０を備える。概説すれば、入力部１２は、図示しない数値キー付きのキーボードやマウス等のポインティングデバイスを有し、表示部１４に表示された後述する様々な画面を参照しながら、オペレータが対話式の指示やデータ入力を行なえるようになっている。表示部１４は、図示しないＣＲＴやＬＣＤ等のディスプレイを有し、オペレータによる対話式入力を可能にすべく、記憶部１８に格納された後述する種々のデータに関連する各種画面を選択的に表示するとともに、後述する手順に従って自動作成した多系統プログラムを表示する。
【００１９】
制御部１６は、例えば図示しないコンピュータのＣＰＵを有し、入力部１２で入力された各種の指示やデータを記憶部１８に記憶させたり、表示部１４に前述した各種画面を適宜表示させたり、プログラム割付処理部２０に後述する種々の処理を実行させたりといった、自動プログラミング装置１０における多系統プログラム自動作成に関わるあらゆる動作を制御する。記憶部１８は、例えば図示しないコンピュータのＲＯＭ、ＲＡＭやフロッピーディスク等の外部記憶媒体を有し、多系統プログラム自動作成に関わる後述する種々のデータ、画面等を予め格納するとともに、入力部１２で入力されたデータや自動作成した多系統プログラムを記憶する。プログラム割付処理部２０は、例えば図示しないコンピュータのＣＰＵによって構成でき、制御部１６の制御下で、入力部１２、表示部１４及び記憶部１８との間でデータや指示の授受を行ない、所望の多系統プログラムを生成する。
【００２０】
さらに詳述すると、記憶部１８には、ＮＣ工作機械で工作物を作製するために必要な複数の工程を制御するべく複数の系統への割付を考慮せずに個々に作成した複数のプログラム２２と、ＮＣ工作機械で実施可能な複数種類の切削加工工程で使用できる複数種類の工具の属性に関する工具データ２４と、ＮＣ工作機械の少なくとも１つの刃物台に設けた複数の工具装着部の刃物台上での位置に関する工具装着部データ２６と、複数の工具装着部に装着できる複数種類の工具ホルダの属性に関する工具ホルダデータ２８と、複数のプログラム２２のうち幾つかが複数の系統のうち少なくとも２つの系統で並行して実行されることを前提にそれらプログラム２２で指定される複数の指定工具の取付場所を複数の工具装着部に割振るための工具配置決定アルゴリズム３０とが、予め格納されている。
【００２１】
また、プログラム割付処理部２０は、制御部１６の制御下で、記憶部１８に格納された工具配置決定アルゴリズム３０に従い、複数の指定工具の取付場所として、複数の工具装着部のうちでそれら指定工具に関連するプログラム２２を実行可能な複数の工具装着部を、記憶部１８に格納された工具データ２４及び工具装着部データ２６に基づき特定するとともに、特定した複数の工具装着部に対応の複数の指定工具を取付けるために使用される複数の工具ホルダを、記憶部１８に格納された工具データ２４及び工具ホルダデータ２８に基づき選定し、複数の工具ホルダの選定が完了した後に、特定した複数の工具装着部を指定する指令を記憶部１８に格納された複数のプログラム２２に記述して、それらプログラム２２を複数の系統へ自動的に割付けるように処理する。
【００２２】
上記した自動プログラミング装置１０の構成をさらに具体的に説明するために、まず図２を参照して、自動プログラミング装置１０を適用可能なＮＣ工作機械の一例としての、多軸多系統型ＮＣ旋盤の構成を概説する。
このＮＣ旋盤は、旋盤外部から供給された棒材を把持して回転する主要な（又は正面側の）第１主軸３２と、第１主軸３２に軸線方向へ同軸状に対向して配置でき、第１主軸３２から受け渡された一部加工済みの棒材を把持して回転する補助的な（又は背面側の）第２主軸３４と、複数の工具３６、３８をそれぞれに装備して独立動作する第１及び第２刃物台４０、４２と、複数の工具３８を装備して固定的に配置される第３刃物台４４とを備える。このＮＣ旋盤では、第１主軸３２、第２主軸３４、第１刃物台４０及び第２刃物台４２が、後述する３つの系統における制御下で動作し、それにより、同時加工を含む多様な自動加工が遂行される。
【００２３】
第１主軸３２は、それ自体の回転軸線３２ａに平行な送り制御軸（Ｚ１軸）に沿って直線移動するように構成される。第１主軸３２の軸線方向前方の所定位置には、第１主軸３２に把持された棒材をその先端の被加工部位の近傍で支持する補助支持装置としてのガイドブッシュ４６が、第１主軸３２に対し同軸状に設置される。
【００２４】
第１刃物台４０は、第１主軸３２の軸線方向前方でガイドブッシュ４６の側方に近接して配置され、第１主軸３２のＺ１軸に直交する送り制御軸（Ｘ１軸）並びにＺ１軸及びＸ１軸の両者に直交する送り制御軸（Ｙ１軸）に沿って直線移動するように構成される。第１刃物台４０は、複数の工具３６、３８を並列配置で保持する複数の工具装着部４８を備えたいわゆるくし歯刃物台であり、バイト、ドリル等の旋削工具やフライス等の回転工具を、第１主軸３２の回転軸線３２ａに対し直交して位置決め可能な配置で装備できる。第１刃物台４０は基本的に、第１の系統で制御されるそれ自体のＹ１軸移動で割出選択した所望の工具３６、３８の刃先を、同じ第１の系統で制御される第１刃物台４０自体のＸ１軸移動と第１主軸３２のＺ１軸移動との協働により、ＮＣプログラムに従い補間動作させることができ、それによって、第１主軸３２に把持された棒材に所望の切削加工が施される。なお、第１刃物台４０のＹ１軸移動は、工具選択動作であるだけでなく、例えば回転工具を選択した場合には棒材外周面の切削加工（Ｄカット）動作としても機能する。また、第１刃物台４０の所定の工具装着部４８には、図示しない複数種類の工具ホルダを用いて、穴あけ工具や回転工具を装着できる。
【００２５】
第２刃物台４２は、ガイドブッシュ４６を挟んで第１刃物台４０の略反対側に配置され、第１主軸３２のＺ１軸に直交する送り制御軸（Ｘ２軸）及びＺ１軸に平行な送り制御軸（Ｚ２軸）に沿って直線移動するように構成される。第２刃物台４２は、複数の工具３６、３８を周方向等間隔配置で保持する複数の工具装着部５０を備えたいわゆるタレット刃物台であり、Ｚ２軸に平行な回転割出制御軸（ＴＩ軸）を有するとともに、バイト、ドリル等の旋削工具やフライス等の回転工具を、第１主軸３２の回転軸線３２ａに対し直交して又は平行に位置決め可能な配置で装備できる。第２刃物台４２は基本的に、第２の系統で制御されるそれ自体のＴＩ軸回転で割出選択した所望の工具３６、３８の刃先を、同じ第２の系統で制御される第２刃物台４２自体のＸ２軸移動とＺ２軸移動との協働により、ＮＣプログラムに従い補間動作させることができ、それによって、第１主軸３２に把持された棒材に所望の切削加工が施される。
【００２６】
第２刃物台４２の各工具装着部５０には、複数種類の工具ホルダ５２を用いて、様々な種類の工具３６、３８を装着できる。このとき、工具ホルダ５２の構成によっては、１つの工具装着部５０に、第１主軸３２に把持した棒材と第２主軸３４に把持した棒材との双方を同時に加工できるように方向付けして一対の工具を装着することもできる。
【００２７】
第２主軸３４は、第１主軸３２の回転軸線３２ａに平行な回転軸線３４ａを有して、第１主軸３２の軸線方向前方にガイドブッシュ４６を挟んで対向可能に配置され、第１主軸３２のＺ１軸に直交する送り制御軸（Ｘ３軸）及びＺ１軸に平行な送り制御軸（Ｚ３軸）に沿って直線移動するように構成される。これに対し、第３刃物台４４は、複数の工具３８を並列配置で保持する複数の工具装着部５４を備えたくし歯刃物台の構成を有し、ドリル等の旋削工具やエンドミル等の回転工具を、第２主軸３４の回転軸線３４ａに対し平行に位置決め可能な配置で装備して、第２主軸３４のＸ３軸移動経路に対向配置される。なお第３刃物台４４は、その構成から例えば背面三本軸と呼称できる。第２主軸３４は基本的に、第３の系統で制御されるそれ自体のＸ３軸移動により第３刃物台４４上の所望の工具３８を選択するとともに、同じ第３の系統で制御されるそれ自体のＸ３軸移動とＺ３軸移動との協働により、当該工具３８の刃先をＮＣプログラムに従い相対的に補間動作させることができ、それによって、第１主軸３２から第２主軸３４に受け渡された棒材に所望の切削加工が施される。なお、第３刃物台４４の各工具装着部５４には、図示しない複数種類の工具ホルダを用いて、穴あけ工具や回転工具を装着できる。
【００２８】
さらに、第１主軸３２及び第２主軸３４は、それぞれに回転角度制御軸（Ｃ１軸及びＣ２軸）を有することができる。したがって第１及び第２主軸３２、３４は、それぞれのＣ１軸及びＣ２軸の位置決め割出動作により、それぞれに把持した棒材の端面や外周面の所望位置に、所望の刃物台４０、４２、４４に装備した回転工具を用いた多様な加工を施すことを可能にする。
【００２９】
このように、上記したＮＣ旋盤は、３系統プログラムに従って各主軸３２、３４及び各刃物台４０、４２、４４の動作を多数の制御軸に沿って制御することにより、３つの刃物台４０、４２、４４上で選択した最多で３個の工具３６、３８を同時使用して、両主軸３２、３４に把持した棒材をそれぞれに自動加工することができる。
【００３０】
次に、図３及び図４に示すフローチャート、図５に示す工作物加工例、並びに図６〜図１２に示す各種表示画面を参照して、自動プログラミング装置１０及びそこで遂行される自動プログラミング方法の具体例を、上記したＮＣ旋盤に関連して説明する。
【００３１】
まず、図３及び図４のフローチャートのステップＳ１で、オペレータは、ＮＣ旋盤で工作物を作製するために必要な複数の工程を、その工作物の設計図面から読取って、それら工程を制御する複数のプログラム２２を、ＮＣ旋盤の３つの系統への割付を考慮せずに（すなわち各プログラムで指定される工具の取付場所を指定せずに）個々に作成する。図５の加工例では、（１）外径切削工程、（２）外径ネジ切り工程、（３）Ｄカット工程、（４）クロス穴センタ工程、（５）クロス穴工程（以上、棒材を正面側の第１主軸３２に把持）、（６）突切りピックオフ工程（棒材を第１主軸３２から第２主軸３４へ受渡す）、（Ｂ−１）端面穴センタ工程、（Ｂ−２）端面穴工程、（Ｂ−３）端面穴タップ工程、（Ｂ−４）外径切削工程（以上、棒材を背面側の第２主軸３４に把持）の、計１０個の切削加工工程（工具経路を矢印で略示する）が設計図面から読取られる。
【００３２】
またオペレータは、所望の工具の取付場所を、いずれか１つの刃物台４０、４２、４４上の予め定めた工具装着部４８、５０、５４に指定する指令を意図的に記述して、プログラム２２を作成することもできる。この場合、以下の多系統プログラム自動作成フローで、使用者側で設定したこのような工具配置の予設定データを優先的に保持しつつ、予設定データの無い工具に対してのみ、残りの工具装着部へ取付場所を自動的に割振るように構成できる。さらに、多系統プログラムの自動作成を開始する前に、そのような工具配置予設定データを優先保持するか否かをオペレータが指定できるようにすることが有利である。これについては、「割付条件の選択」という事項に関連してさらに後述する。
【００３３】
設計図面から読取った各工程のプログラム２２は、オペレータが手作業で作成するか、又は他の公知の自動プログラミング装置を用いて作成することができる。或いは、自動プログラミング装置１０に、そのような工程ごとの自動プログラミング機能を付加することもできる。作成された１０種類のプログラム２２は、加工順序（上記説明順）に従って、かつ加工順序の最初に準備工程を追加するとともに最後に背面回収工程及び終了工程を追加して、記憶部１８に予め格納される。なお、図５で各工程に付記したＴコードは、自動プログラミング装置１０で作成された多系統プログラムに記述される各指定工具の取付場所を示す工具番号である。
【００３４】
記憶部１８には、１つの工作物の加工に必要な全ての工程を列記する工程一覧画面５６（図６参照）が予め格納されており、記憶部１８に格納された上記工程毎のプログラム２２は、制御部１６の制御下で、工程一覧画面５６に列記して随時、表示部１４のディスプレイに一覧表示される。図６に示すように、表示部１４のディスプレイには、工程一覧画面５６に並列して、工程一覧画面５６で指定した工程（図では端面穴工程）に関連する諸データを入力できるデータ入力画面５８と、その工程のプログラム（図では端面穴あけプログラム）を記述したプログラム画面６０とを表示することができる。なお、図示のプログラム画面６０に記述されたプログラムでは、まだ工具番号が指定されていない。
【００３５】
次にステップＳ２で、制御部１６はまず、記憶部１８に格納された複数のプログラム２２をＮＣ旋盤の３つの系統へ仮に割付ける。このような仮割付作業は、以下のステップにおけるプログラム割付手順を円滑に進めるためのものであり、必須ではないが、例えば適当な仮割付手順を工具配置決定アルゴリズム３０に設定しておくことが有利である。ここで、図２に示すＮＣ旋盤の機械構成では、系統１における第１刃物台４０上の工具３６、３８による切削加工工程を主工程と規定し、他の系統２及び３における第２及び第３刃物台４２、４４上の工具３６、３８による切削加工工程を補助的な工程と規定することが適当である。そのような観点で設定した図示実施形態における仮割付手順を概略説明する。
【００３６】
まず、最初に実施される工程（準備工程）のプログラムを、系統１に対応する記憶部１８内のプログラム記述領域＄１の１番目に配置し、その後に続けて、第１主軸３２に把持した棒材に対する一連の正面加工工程（１）〜（５）のプログラムを加工順に配置する。そしてその後段に、突切りピックオフ工程（６）のプログラムのうち第１主軸３２を動作させる部分（ブロック列）を配置する。系統２に対応する記憶部１８内のプログラム記述領域＄２には、第２主軸３４に把持した棒材に対する一連の背面加工工程（Ｂ−１）〜（Ｂ−４）のプログラムを加工順に配置し、その後段に、背面回収工程のプログラムを配置する。系統３に対応する記憶部１８内のプログラム記述領域＄３には、突切りピックオフ工程（６）のプログラムのうち第２主軸３４を動作させる部分（ブロック列）を配置する。そして各プログラム記述領域＄１、＄２、＄３内のブロック列の最後に、終了工程のプログラムを配置して、仮割付が完了する。仮割付の段階では、プログラム記述領域＄３には切削加工工程のプログラムを割付けない。
【００３７】
プログラムの仮割付が完了すると、前述したようにプログラム割付処理部２０は、制御部１６の制御下で、仮割付した複数のプログラムにおける指定工具３６、３８の取付場所を、３つの刃物台４０、４２、４４上の複数の工具装着部４８、５０、５４から選択して特定する（ステップＳ３）。ここで、図示実施形態における工具配置決定アルゴリズム３０を簡単に説明する。まず、各プログラム記述領域＄１、＄２に記述される複数のプログラムに対し、指定工具３６、３８の取付場所を、プログラムの配置順序に従って第１刃物台４０と第２刃物台４２とから交互に選択していく。この場合、選択の基準となる工具取付場所を特定するために、複数の指定工具３６、３８の中で突切りバイトの取付場所を、第１及び第２刃物台４０、４２のいずれかの工具装着部４８、５０に予め指定しておく。突切りバイトをこのような基準工具とする理由は、棒材を突切りバイトで突切って形成した棒材端面の位置を基準として、全ての位置座標データが作成されるからである。なお、突切りバイトの取付場所は、例えば図７に示すような、加工対象素材の材質を指定するための材質指定画面６２を利用して、材質指定と同時に基本データ（図では「突切りバイト番号」）として指定することができる。材質指定画面６２は、例えば個々の工程のプログラムを自動作成する際に利用できるものであり、予め記憶部１８に格納しておくことができる。
【００３８】
そこでプログラム割付処理部２０は、予め指定した突切りバイトの取付場所が第１刃物台４０上の工具装着部４８（工具装着部データ２６にて例えばＴ１０番台の識別番号を付す）である場合は、準備工程の次の工程（図５の加工例では（１）外径切削工程）における指定工具の取付場所を、第２刃物台４２上の工具装着部５０（同様に例えばＴ２０番台の識別番号を付す）から選択して特定し、さらに後続の工程へ順次交互にＴ１０番台、Ｔ２０番台を特定していく。逆に、突切りバイトの取付場所がＴ２０番台である場合は、準備工程の次の工程における指定工具の取付場所をＴ１０番台から特定し、さらに後続の工程へ順次交互にＴ２０番台、Ｔ１０番台を特定していく。このようにして、全ての指定工具３６、３８の取付場所を、第１及び第２刃物台４０、４２上の工具装着部４８、５０に割振る。
【００３９】
同時にプログラム割付処理部２０は、前述したように、それら指定工具３６、３８を対応の工具装着部４８、５０に取付けるために使用される複数の工具ホルダ（例えば工具ホルダ５２）を、工具ホルダデータ２８に基づき選定する（ステップＳ４）。ここで、工具ホルダデータ２８は、複数種類の工具ホルダをそれらの名称別に登録してあり、また各工具ホルダの属性として、装着対象の刃物台の種類、装着可能な工具装着部の位置、使用対象工程の種類、使用対象工具の属性、工具刃先偏倚量（いわゆるシフト量）等が登録されている。したがってプログラム割付処理部２０は、工具データ２４に登録された指定工具３６、３８の属性と工具装着部データ２６に登録された工具装着部４８、５０の位置とを参照しつつ、工具ホルダを選定することができる。なお、指定工具の属性及び工具装着部の位置によっては、工具ホルダの使用を要しないものもあることは勿論である。
【００４０】
なお図示実施形態では、前述したようにオペレータが所望の指定工具に関して取付場所の予設定データをプログラムに登録している場合、プログラム割付処理部２０は、オペレータの指示により、そのような指定工具の取付場所を予設定データに従って特定するとともに、予設定データの無い他の指定工具の取付場所を、残りの工具装着部４８、５０、５４へ適当に割振るように構成される。また、予設定データに従って取付場所を特定した指定工具に対し、プログラム割付処理部２０は、特定した工具装着部に装着できる工具ホルダを優先的に、工具ホルダデータ２８から選定する。
【００４１】
一般に、工具ホルダを選定する際には、選定しようとする工具ホルダの在庫の有無を確認する必要がある。そこで図示実施形態では、ＮＣ旋盤の各刃物台４０、４２、４４に装着可能な種々の工具ホルダの在庫数を、それら工具ホルダの属性別に、工具ホルダデータ２８に予め登録しておく。工具ホルダの在庫数の登録は、例えば図８に示すようなホルダ在庫画面６４を用いて行なうことができる。ホルダ在庫画面６４は、予め記憶部１８に格納しておくことができ、オペレータが入力部１２を操作して表示部１４のディスプレイに表示させることができる。
【００４２】
プログラム割付処理部２０は、ステップＳ４で複数の工具ホルダを選定した後、それら工具ホルダの在庫の有無を工具ホルダデータ２８から読出すことにより確認し（ステップＳ５）、選定した全ての工具ホルダの在庫が有ると判断したときに、ホルダ選定を完了して次のステップへ進む。選定した工具ホルダのうち、在庫が無いものが存在した場合には、ステップＳ３及びＳ４に戻り、在庫の無い工具ホルダを選定した指定工具を、他の在庫の有る工具ホルダを用いて他の取付場所に取付けることができるように、工具装着部４８、５０の特定及び工具ホルダの選定を全ての指定工具に対してやり直す。そのようにして指定工具と工具装着部と工具ホルダとの組合せを可能な範囲で全て試行しても、在庫の無い工具ホルダが生じてしまう場合には、エラーと判断してプログラム作成フローを停止する。
【００４３】
このようにして全ての指定工具に対し工具装着部４８、５０の特定及び工具ホルダの選定を行なう際には、一部又は全部の指定工具に対する工具配置の予設定データを優先するか否かの判断だけでなく、多系統プログラムのサイクル時間を可及的に短縮するための工具配置や、加工精度を可及的に向上させるための工具配置を、十分に検討した上で決定することが、ＮＣ旋盤の３つの系統の全てを効率良く使用すべく、個々の工程を作業効率上最も有利な形態で系統に割付ける点で肝要である。そこで図示実施形態では、工具配置の予設定データ優先、多系統プログラムのサイクル時間短縮及び加工精度の向上の、３つの割付条件から選択したいずれか１つの割付条件を、前述した工具配置決定アルゴリズム３０に付加し、選択した割付条件の下で、複数のプログラムをＮＣ旋盤の３つの系統へ割付けることができるように構成している。
【００４４】
この場合、オペレータは、例えば自動プログラミング装置１０におけるプログラム作成フローの最初の段階で、入力部１２を操作して、上記した３つの割付条件のうちいずれか１つの割付条件を選択する指令を入力することができる。それにより制御部１６は、入力部１２で指定された割付条件を、記憶部１８に格納された工具配置決定アルゴリズム３０に付加し、そしてプログラム割付処理部２０は、指定された割付条件の下で、上記したようにして工具装着部４８、５０の特定及び工具ホルダの選定を行なう。
【００４５】
概説すると、「工具配置の予設定データ優先」を割付条件として指定した場合には、前述したように、オペレータが登録した予設定データを優先して工具装着部の特定及び工具ホルダの選定を行なう。また、「多系統プログラムのサイクル時間短縮」を割付条件として指定した場合は、オペレータによる予設定データの有無に関わらず、サイクル時間（１回の多系統並行制御の開始から終了までの総計時間）の短縮を最優先に、全ての加工工程に対して工具装着部の特定及び工具ホルダの選定を行なう。また、「加工精度の向上」を割付条件として指定した場合には、所定の精度が要求される加工工程（予め記憶部１８に格納）で使用する工具の工具装着部及び工具ホルダ並びに主軸を、高精度加工が可能な刃物台と主軸との組合せ（予め記憶部１８に格納）で優先的に特定した後、残りの加工工程に対して工具装着部の特定及び工具ホルダの選定を行なう。このようにして、最終的に複数のプログラムをＮＣ旋盤の３つの系統へ効率良く割付けることが可能になる。
【００４６】
ここで、図２に示すＮＣ旋盤の機械構成において作業効率を向上させるための、３系統の使い分けに関する基本的考え方の例を簡単に説明する。例えば、第１刃物台４０（くし歯）と第２刃物台４２（タレット）とは、第２刃物台４２における工具選択動作に時間を要することを考慮して、前述したようにプログラムの配置順に交互に使用する（すなわち工具配置する）ことが有利である。このとき、背面加工工程における穴あけ、タップ等の工程で第３刃物台４４（背面三本軸）を有効に使用すれば、その間に正面加工工程では第１刃物台４０と第２刃物台４２とを交互に使用できるので、工具選択時間を有効に削減できる。なお、背面加工工程における内外径旋削工程は、第２刃物台４２上の工具でしか実施できないので、その間は正面加工工程で第１刃物台４０を使用する。また、正面加工工程における外径ネジ切り工程は、ネジ切り動作を反復する必要があるので、基本的には第１刃物台４０（Ｚ軸移動不能）ではなく第２刃物台４２（Ｚ軸移動可能）を使用する。外径ネジ切り工程で第１刃物台４０を用いる場合には、第１主軸３２をＺ軸移動させるので、棒材の被加工部位がガイドブッシュ４６内に反復して引き込まれることを承知しておく必要がある。
【００４７】
このように、工作物の作製に要する複数の工程をＮＣ旋盤の複数の系統に割付ける際に、ＮＣ旋盤における作業効率を考慮するためには、第１及び第２主軸３２、３４と第１〜第３刃物台４０、４２、４４とを適宜組合わせて加工動作させる複数種類の加工パターンを予め設定しておくことが有利である。そこで図示実施形態では、そのような複数種類の加工パターン６６（図１）を予め設定して記憶部１８に格納しておき、プログラム割付処理部２０は、記憶部１８に格納されたそれら複数種類の加工パターン６６から、前述した指定の割付条件の下で適当な幾つかの加工パターンを選択し、それら選択した加工パターンに基づいて、複数のプログラムをＮＣ旋盤の３つの系統へ割付けるように処理している。
【００４８】
このような加工パターンの例として、図示実施形態では、「ツインタレット加工」、「ツーサドル加工」、「背面正面同時加工」、「３系統同時加工」及び「ピックオフ／センタサポート」の、５種類の加工パターンが記憶部１８に格納されている。ツインタレット加工は、最も多用される標準的加工パターンであって、プログラム割付処理部２０は基本的にこの加工パターンを選択した後、他の組合せ可能な加工パターンを選択する。ツインタレット加工によって規定される加工動作は、系統１で第１刃物台４０（くし歯）と第２刃物台４２（タレット）とを交互に用いる正面加工動作であって、その間に、系統３で第３刃物台４４（背面三本軸）により背面加工を行なうことができる。ツーサドル加工は、系統１と系統２とで粗／仕上げ加工や同時ネジ切り（異ピッチ）等の正面同時加工を行なったり、第１主軸３２のＣ１軸位置決め動作を第１刃物台４０（系統１）と第２刃物台４２（系統２）とのいずれかに割振ったりする加工パターンであって、その間に、系統３で第３刃物台４４を用いて背面加工を行なうことができる。背面正面同時加工は、正面加工と背面加工とを互いに独立して行なう加工パターンであって、複数の工程中に背面加工工程が含まれている場合、プログラム割付処理部２０は基本的にこの加工パターンも選択する。背面正面同時加工では、系統２と系統３とで第２刃物台４２と第３刃物台４４とを交互に用いて背面加工を行なうことができる。３系統同時加工は、３つの系統における同時加工（例えば正面外径加工と正面背面センタ加工）を行なう場合に選択する。ただし３系統同時加工では、第３刃物台４４は使用できない。ピックオフ／センタサポートは、第１主軸３２から第２主軸３４への棒材の受渡しや、第２主軸３４を用いたセンタサポートを行なう場合に選択する。
【００４９】
このように自動プログラミング装置１０では、予め設定した加工パターンに基づいて複数の工程を３系統に割付けているが、背面加工工程の有無によって、加工パターンの最も効率的な組合せを決定する手順が若干相違することになる。再び図３及び図４のフローチャートを参照すると、ステップＳ３〜Ｓ５で、全ての指定工具に対して工具装着部４８、５０の特定及び工具ホルダの選定が完了した後、制御部１６は次のステップＳ６で、複数のプログラムの中に背面加工工程のプログラムが有るか否かを判断し、背面加工工程が有る場合には、全ての工程をどのような加工パターンの組合せで行なうかを仮に決定する（ステップＳ７）。そして、仮決定された加工パターンの組合せに基づいて複数のプログラムを３系統に割付けた後、正面加工工程と背面加工工程との個々のプログラム実行時間を算出して、さらに効率が改善される（すなわち並行作業時間が増える）最善の加工パターンの組合せに変更できるか否かを、前述した指定の割付条件下で再検討し、そのような変更が可能なときには最善の加工パターンの組合せを採用する（ステップＳ８）。他方、複数のプログラムの中に背面加工工程のプログラムが無い場合には、加工パターンの仮決定のステップは不要であり、直ちにステップＳ８で加工パターンの組合せを決定する。
【００５０】
上記のようにして、工具装着部４８、５０の特定及び工具ホルダの選定が完了し、さらに加工パターンの組合せが決定されると、記憶部１８に格納された複数のプログラム２２が作業効率上最も有利な形態で、ＮＣ旋盤の３つの系統に割付けられる（ステップＳ９）。このとき、プログラム割付処理部２２は、記憶部１８に格納された複数のプログラム２２に、それぞれの指定工具に対して特定した工具装着部４８、５０、５４を指定する工具配置指令（Ｔコード）を記述する。確定したＴコード並びに対応の指定工具及び工具ホルダの名称等は、例えば図９に示すような工具配置決定画面６８を用いて、表示部１４のディスプレイに表示できる。
【００５１】
前述したように、ＮＣ旋盤で使用される種々の工具ホルダは、それぞれに異なる固有の工具刃先偏倚量（シフト量）を属性として有している。そこで図示実施形態では、ステップＳ９で、個々の切削加工プログラムにおける工具配置指令が確定した後に、プログラム割付処理部２０は、ステップＳ３〜Ｓ５で選定した複数の工具ホルダの各々の工具刃先偏倚量（シフト量）を、記憶部１８に格納した工具ホルダデータ２８から読出し、読出した工具刃先偏倚量に基づいて、各切削加工プログラムに工具刃先の位置補正指令を記述する（ステップＳ１０）ように構成される。このようにして、多系統プログラムの自動作成が完了する。作成された多系統プログラムは、例えば図１０に示すような多系統プログラム画面７０を用いて、表示部１４のディスプレイに表示できる。
【００５２】
自動プログラミング装置１０は、上記のようにして自動作成した多系統プログラムを、オペレータの指示により表示部１４のディスプレイにグラフィック表示するグラフィック機能を有することができる。この場合、記憶部１８には、多系統プログラムをグラフィック表示するためのグラフィック画面が予め格納されており、制御部１６は、プログラム割付処理部２０によって３つの系統に割付けられた複数のプログラムを、それら系統毎に時系列で複数の帯に整列配置してグラフィック画面に表示させる。グラフィック画面は、図１１及び図１２に例示する画面構成を有する。図１１に示すグラフィック画面７２は、図１０の多系統プログラム画面７０で表示した多系統プログラムをグラフィック表示したものであり、この多系統プログラムは、前述したプログラム作成フローに従って「工具配置の予設定データ優先」の割付条件の下で自動作成したものである。
【００５３】
図示のように、ＮＣ旋盤の系統１に対応するグラフィック画面７２内のプログラム記述領域＄１には、図５の加工例における正面加工工程（１）〜（５）のプログラムが、複数の帯の形で図の左から右へと加工順に配置されている。この表示例では、各帯の直上にプログラムの内容を表す絵が表示されており、外径切削工程（１）、Ｄカット工程（３）、クロス穴センタ工程（４）及びクロス穴工程（５）が第１刃物台４０（くし歯）上の工具によって行なわれるとともに、外径ネジ切り工程（２）が第２刃物台４２（タレット）上の工具によって行なわれることが、各工程の経過時間を含めて一見して理解されるようになっている。そして、これら正面加工工程の帯群の後方（図で右方）に、突切りピックオフ工程（６）のプログラムのうち第１主軸３２を動作させる部分に対応する帯が配置されている。
【００５４】
また、系統３に対応するプログラム記述領域＄３には、図５の加工例における背面加工工程のうち、端面穴センタ工程（Ｂ−１）、端面穴工程（Ｂ−２）及び端面穴タップ工程（Ｂ−３）のプログラムが、複数の帯の形で、それらプログラムの内容を表す絵と共に図の左から右へと加工順に配置されている。これらの背面加工工程は、系統１で実施される正面加工工程が終了した後にピックオフ工程を経て第１主軸３２から第２主軸３４へ受け渡された棒材に対して実施されるものである。この表示例では、これら背面加工工程がいずれも第３刃物台４４（背面三本軸）を用いることが、各工程の経過時間を含めて一見して理解される。そして、これら背面加工工程の帯群の後方（図で右方）に、突切りピックオフ工程（６）のプログラムのうち第２主軸３４を動作させる部分に対応する帯が配置されている。なお、系統１における１〜２番目の加工工程は「ツインタレット加工」の加工パターンで割付けられており、これら２つの正面加工工程に並行して、１〜２番目の背面加工工程が同時加工となるように系統３に割付けられている。
【００５５】
また、系統２に対応するプログラム記述領域＄２には、図５の加工例における背面加工工程の最後の外径切削工程（Ｂ−４）のプログラムと、その後の背面回収工程のプログラムとが、複数の帯の形で、それらプログラムの内容を表す絵と共に図の左から右へと加工順に配置されている。この表示例では、これら背面工程のいずれも第２刃物台４２（タレット）を用いることが、各工程の経過時間を含めて一見して理解される。また、系統２における背面加工工程が、系統３における背面加工工程の終了後に、適正な待合せを行なったうえで実行されることも、一目で理解される。なお、系統１における３〜５番目の正面加工工程と系統３における３番目の背面加工工程と系統２における背面加工工程とは、「背面正面同時加工」の加工パターンでそれら系統に割付けられている。さらに、加工パターンが切替わる位置でも、３つの系統間で待合せ処理が行なわれていることが理解されよう。このように、多系統プログラムをグラフィック表示すれば、系統間の並行ないし同時性及び待合せの有無が、一目で容易に理解される利点がある。
【００５６】
図１１のグラフィック画面７２に表示した多系統プログラムは、前述したように「工具配置の予設定データ優先」を割付条件として作成したものであり、正面加工工程における外径ネジ切り工程（２）が、オペレータが指定した予設定データに従って第２刃物台４２（タレット）上の工具により実施されている。この多系統プログラムにおけるサイクル時間は、図示のように４２．５秒である。これに対し、図１２のグラフィック画面７４に表示した多系統プログラムは、図１１の多系統プログラムと同一の工程群を有する多系統プログラムを、「多系統プログラムのサイクル時間短縮」を割付条件として作成したものである。この多系統プログラムでは、図１１の多系統プログラムに比べて、指定された条件通り、サイクル時間が図示のように４０．７秒と短縮されている。しかし、正面加工工程における外径ネジ切り工程（２）は、オペレータによる予設定データの有無に関わらず、第１刃物台４０（くし歯）を用いて実施されている。
【００５７】
なお、自動プログラミング装置１０においては、オペレータが入力部１２を適宜操作して、表示部１４に表示されたグラフィック画面上で、加工パターンの組合せの変更を指令できるように構成することが有利である。それにより、オペレータの経験や知識を生かして、自動作成した多系統プログラムを自由に修正することが可能になる。
【００５８】
上記したように、自動プログラミング装置１０によれば、１つの工作物を作製するために必要な複数の工程をＮＣ工作機械の複数の系統で並行して実施するための多系統プログラムを作成する際に、オペレータは、個々の工程をどの系統に割付けるかを詳細に検討する必要がない。しかも自動プログラミング装置１０では、１つ以上の刃物台に設けた複数の工具装着部への複数の指定工具の割振りが、複数種類の工具ホルダの種類別在庫数や各々の属性と照らし合せて自動的に決定されるとともに、所望の割付条件の下で、全ての工程が作業効率上最も有利な形で複数の系統に割付けられるので、知識や経験に劣るオペレータであっても品質（サイクル時間の長さ、工具配置の妥当性、加工精度等）に優れた多系統プログラムを自動作成することができる。
【００５９】
【発明の効果】
以上の説明から明らかなように、本発明によれば、多軸多系統型のＮＣ工作機械で実行される多系統プログラムを自動作成するための自動プログラミング方法及び自動プログラミング装置において、工作物の作製に必要な複数の工程を複数の系統に効率良く適正に自動割付することが可能になり、したがって、オペレータの知識や経験の多寡によって左右されることなく高品質の多系統プログラムを迅速に自動作成することが可能になる。
【図面の簡単な説明】
【図１】本発明の一実施形態による自動プログラミング装置の構成を示すブロック図である。
【図２】図１の自動プログラミング装置を適用可能なＮＣ旋盤の主要部の構成を概略で示す図である。
【図３】図１の自動プログラミング装置で実行される自動プログラミング方法のフローチャートである。
【図４】図１の自動プログラミング装置で実行される自動プログラミング方法のフローチャートである。
【図５】図１の自動プログラミング装置で作成される多系統プログラムによる加工例を示す図である。
【図６】図１の自動プログラミング装置における工程一覧画面、データ入力画面及びプログラム画面の図である。
【図７】図１の自動プログラミング装置における材質指定画面の図である。
【図８】図１の自動プログラミング装置におけるホルダ在庫画面の図である。
【図９】図１の自動プログラミング装置における工具配置決定画面の図である。
【図１０】図１の自動プログラミング装置における多系統プログラム画面の図である。
【図１１】図１の自動プログラミング装置で作成した１つの多系統プログラムを表示するグラフィック画面の図である。
【図１２】図１の自動プログラミング装置で作成した他の多系統プログラムを表示するグラフィック画面の図である。
【符号の説明】
１０…自動プログラミング装置
１２…入力部
１４…表示部
１６…制御部
１８…記憶部
２０…プログラム割付処理部
２２…プログラム
２４…工具データ
２６…工具装着部データ
２８…工具ホルダデータ
３０…工具配置決定アルゴリズム
３２…第１主軸
３４…第２主軸
３６、３８…工具
４０…第１刃物台
４２…第２刃物台
４４…第３刃物台
４８、５０、５４…工具装着部
５２…工具ホルダ
６６…加工パターン
【図１】
0004592919.tif 000002
【図２】
0004592919.tif 000003
【図３】
0004592919.tif 000004
【図４】
0004592919.tif 000005
【図５】
0004592919.tif 000006
【図６】
0004592919.tif 000007
【図７】
0004592919.tif 000008
【図８】
0004592919.tif 000009
【図９】
0004592919.tif 000010
【図１０】
0004592919.tif 000011
【図１１】
0004592919.tif 000012
【図１２】
0004592919.tif 000013