(57)【特許請求の範囲】
【請求項１】
被加工物を保持する支持台と、前記被加工物の加工を行う加工領域と工具交換を行う工具交換領域との間で移動可能に設けた主軸ヘッドと、当該主軸ヘッドが回転可能に支持し、工具を保持する第一主軸と、前記第一主軸を回転駆動する第一モータとを備えた工作機械において、
前記支持台を支持する第二主軸と、
当該第二主軸を回転駆動する第二モータと、
前記第一主軸及び前記主軸ヘッドを前記工具交換領域内に移動させることにより前記第一主軸に装着している工具である現在工具を次に前記第一主軸に装着する工具である次工具に交換する工具交換装置と、
加工プログラムの制御指令によって前記工作機械を制御する数値制御装置とを備え、
前記数値制御装置は、
前記工具交換装置、前記主軸ヘッド、前記第一モータ及び前記第二モータを制御する制御手段と、
前記工具交換装置による工具交換時に、現在前記第一主軸が装着する現在工具及び次に前記第一主軸に装着する次工具が、回転して加工を行う回転工具か回転しない非回転工具かを各々判断する工具判断手段と
を備え、
前記現在工具が非回転工具であり、前記次工具が非回転工具であると前記工具判断手段が判断した場合には、前記制御手段は前記第二主軸の回転を停止せずに前記工具交換装置により工具交換動作を行い、
前記現在工具が非回転工具であり、前記次工具が回転工具であると前記工具判断手段が判断し、且つ前記第二主軸の指定位置への位置決め指令が有る場合には、前記位置決め指令に基づき、前記第二主軸の前記指定位置への位置決め動作を開始し、前記第二主軸の前記位置決め動作が完了する前に、前記工具交換装置による工具交換の為の前記主軸ヘッドの機械原点への上昇を開始することを特徴とする工作機械。
【請求項２】
前記工具交換後に、前記主軸ヘッドの機械原点への下降が完了した場合に、前記第二主軸の回転の停止が完了していなければ、前記制御手段は、前記制御指令が前記主軸ヘッドの下降を指示する指令の場合でも、前記主軸ヘッドの下降の開始は、前記第二主軸の停止の完了後に行うことを特徴とする請求項１に記載の工作機械。
【請求項３】
前記第二主軸を固定する固定装置を備え、
前記現在工具が回転工具であり、前記次工具が非回転工具であると前記工具判断手段が判断した場合には、
前記制御手段は、
前記固定装置による前記第二主軸の固定の解除と、前記主軸ヘッドの前記機械原点への上昇動作とを並列に行い、
前記第二主軸の連続回転開始は、前記主軸ヘッドが前記機械原点から前記工具交換領域内で前記工具交換装置の工具マガジンが旋回可能な位置である工具交換原点までの上昇動作と並列に行うことを特徴とする請求項１又は２に記載の工作機械。
【請求項４】
前記工具交換後に前記主軸ヘッドが前記機械原点へ下降した場合に、前記第二主軸が前記制御指令の指令回転数に達していなくても、前記制御手段は、前記制御指令の指示する位置への前記主軸ヘッドの下降動作を行うことを特徴とする請求項１から３の何れかに記載の工作機械。
【請求項５】
前記工具判断手段は、前記現在工具及び前記次工具が回転工具か非回転工具かの判断を、実行中の前記制御指令、工具の種類に関するデータ、及び前記第二主軸の回転指令のうち少なくとも何れかで行うことを特徴とする請求項１から４の何れかに記載の工作機械。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は工作機械に関し、詳細には、被加工物を主軸が保持した回転工具で加工するか、被加工物を回転して主軸が保持した非回転工具で切削加工するかを選択できる工作機械に関する。
【背景技術】
【０００２】
工作機械はフライス加工及びねじ立て等の種々の加工を行う。工作機械は、制御部からの指令に基づいて、複数の工具を格納する工具マガジンから所定の工具を取り出して加工軸に装着し被加工物を加工する。
【０００３】
特許文献１は、被加工物をテーブルに保持し、テーブルがＸ軸方向（左右方向）、Ｙ軸方向（前後方向）に移動し、工具を保持した第一主軸がＺ軸方向（上下方向）に移動して、被加工物を加工する工作機械を開示する。工作機械では、テーブルを１８０度回転可能に保持する第二主軸（以下、「Ｃ軸」とも言う。）の回転により、被加工物を入れ替えるためにテーブルの回転が可能である。この工作機械では、Ｃ軸を回転するＣ軸作動指令が発せられたときには、次の作動指令を読み込み、次の作動指令が第一主軸のＺ軸方向の移動である場合には、Ｃ軸を回転しないように固定するクランプ作動が終了してから、第一主軸のＺ軸方向への移動指令を発し、次の作動指令が第一主軸のＺ軸方向への移動でなく、Ｘ軸方向あるいはＹ軸方向への移動である場合には、Ｃ軸のクランプ作動が終了する以前にＸ軸あるいはＹ軸移動指令を発して並行作動を行っていた。
【０００４】
また、第一主軸に保持した回転工具を回転させて被加工物の加工を行うミーリング加工と、被加工物を保持したテーブルを連続回転させ、第一主軸に非回転の切削工具を保持して、被加工物の切削加工とを行う工作機械も存在する。このような工作機械の場合、第一主軸が保持する工具の交換は、回転工具から回転工具、回転工具から非回転工具、非回転工具から回転工具、非回転工具から非回転工具への交換の四つのパターンがある。この工作機械では、工具交換時は、非回転工具から回転工具への交換の場合には、次の加工は、被加工物を保持したテーブルを回転しないようにして回転工具による被加工物の加工を行うので、Ｃ軸を回転しないように固定するクランプ作動が終了してから、工具を交換する必要がある。これに対して、非回転工具から非回転工具への工具交換の場合は、次の加工も被加工物を保持したテーブルを回転して非回転工具による切削加工であるにも拘わらず、Ｃ軸を回転しないように固定するクランプ作動が終了してから、工具を交換していた。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平５−３１３７１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしなから、上記のような工作機械では、非回転工具から非回転工具への工具交換の場合は、Ｃ軸を回転しないように固定するクランプ作動が終了してから、工具を交換するため工具交換の時間が短縮できないという問題点があった。
【０００７】
本発明は上記課題を解決する為になされたものであり、回転工具と非回転工具により加工を行う工作機械において、工具交換の時間が短縮できる工作機械を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の請求項１に係る工作機械は、被加工物を保持する支持台と、前記被加工物の加工を行う加工領域と工具交換を行う工具交換領域との間で移動可能に設けた主軸ヘッドと、当該主軸ヘッドが回転可能に支持し、工具を保持する第一主軸と、前記第一主軸を回転駆動する第一モータとを備えた工作機械において、前記支持台を支持する第二主軸と、当該第二主軸を回転駆動する第二モータと、前記第一主軸及び前記主軸ヘッドを前記工具交換領域内に移動させることにより前記第一主軸に装着している工具である現在工具を次に前記第一主軸に装着する工具である次工具に交換する工具交換装置と、加工プログラムの制御指令によって前記工作機械を制御する数値制御装置とを備え、前記数値制御装置は、前記工具交換装置、前記主軸ヘッド、前記第一モータ及び前記第二モータを制御する制御手段と、前記工具交換装置による工具交換時に、現在前記第一主軸が装着する現在工具及び次に前記第一主軸に装着する次工具が、回転して加工を行う回転工具か回転しない非回転工具かを各々判断する工具判断手段とを備え、前記現在工具が非回転工具であり、前記次工具が非回転工具であると前記工具判断手段が判断した場合には、前記制御手段は前記第二主軸の回転を停止せずに前記工具交換装置により工具交換動作を行い、前記現在工具が非回転工具であり、前記次工具が回転工具であると前記工具判断手段が判断し、且つ前記第二主軸の指定位置への位置決め指令が有る場合には、前記位置決め指令に基づき、前記第二主軸の前記指定位置への位置決め動作を開始し、前記第二主軸の前記位置決め動作が完了する前に、前記工具交換装置による工具交換の為の前記主軸ヘッドの機械原点への上昇を開始することを特徴とする。
【０００９】
故に、現在工具が非回転工具であり、次工具が非回転工具であると工具判断手段が判断した場合には、制御手段は第二主軸の回転を停止せずに工具交換装置により工具交換動作を行うので、工具交換の時間を短縮することができる。
【００１０】
【００１１】
また請求項２に係る発明の工作機械は、請求項１に記載の発明の構成に加え、前記工具交換後に、前記主軸ヘッドの機械原点への下降が完了した場合に、前記第二主軸の回転の停止が完了していなければ、前記制御手段は、前記制御指令が前記主軸ヘッドの下降を指示する指令の場合でも、前記主軸ヘッドの下降の開始は、前記第二主軸の停止の完了後に行うことを特徴とする。故に、主軸ヘッドが保持した工具の被加工物への干渉を避けることができる。
【００１２】
また請求項３に係る発明の工作機械は、請求項１又は２に記載の発明の構成に加え、前記第二主軸を固定する固定装置を備え、前記現在工具が回転工具であり、前記次工具が非回転工具であると前記工具判断手段が判断した場合には、前記制御手段は、前記固定装置による前記第二主軸の固定の解除と、前記主軸ヘッドの前記機械原点への上昇動作とを並列に行い、前記第二主軸の連続回転開始は、前記主軸ヘッドが前記機械原点から前記工具交換領域内で前記工具交換装置の工具マガジンが旋回可能な位置である工具交換原点までの上昇動作と並列に行うことを特徴とする。
【００１３】
故に、現在工具が回転工具であり、次工具が非回転工具である場合には、制御手段が、第二主軸の固定の解除と、主軸ヘッドの機械原点への上昇動作とを並列に行い、第二主軸の連続回転開始は、主軸ヘッドが機械原点から前記工具交換領域で工具マガジンが旋回可能な位置である工具交換原点までの上昇動作と並列に行うので、回転工具から非回転工具への工具交換の場合に、迅速に次の加工が開始できる。
【００１４】
また請求項４に係る発明の工作機械は、請求項１から３の何れかに記載の発明の構成に加え、前記工具交換後に前記主軸ヘッドが前記機械原点へ下降した場合に、前記第二主軸が前記制御指令の指令回転数に達していなくても、前記制御手段は、前記制御指令の指示する位置への前記主軸ヘッドの下降動作を行うことを特徴とする。
【００１５】
故に、工具交換後に前記主軸ヘッドが前記機械原点へ下降した場合に、第二主軸が制御指令の指令回転数に達していなくても、制御手段は、制御指令の指示する位置への主軸ヘッドの下降動作を行うので、迅速に次の加工が開始できる。
【００１６】
また請求項５に係る発明の工作機械は、請求項１から４の何れかに記載の発明の構成に加え、前記工具判断手段は、前記現在工具及び前記次工具が回転工具か非回転工具かの判断を、実行中の前記制御指令、工具の種類に関するデータ、及び前記第二主軸の回転指令のうち少なくとも何れかで行うことを特徴とする。
【００１７】
故に、次の制御指令中に、第二主軸による加工を示す制御指令があれば、工具判断手段は、次の工具は非回転工具であると判断できる。また、次の制御指令中に、第一主軸による加工を示す制御指令があれば、工具判断手段は、次の工具は回転工具であると判断できる。また、工具番号に対応付けて工具の種類に関するデータが有れば、そのデータに基づいて、工具判断手段は、次の工具は回転工具であるか非回転工具であるかを判断できる。また、第二主軸の回転指令が有れば、工具判断手段は、次の工具は非回転工具であると判断できるし、第二主軸の回転指令が無ければ、工具判断手段は、次の工具は回転工具であると判断できる。
【図面の簡単な説明】
【００１８】
【図１】工作機械２の斜視図。
【図２】工作機械２の側面図。
【図３】被加工物保持装置１００の斜視図。
【図４】数値制御装置２０と工作機械２の電気的構成を示すブロック図。
【図５】加工処理のフローチャート。
【図６】図５の続きを示すフローチャート。
【図７】図６の続きを示すフローチャート。
【図８】工具判断処理のフローチャート。
【図９】第一パターンの工具交換のタイミングチャート。
【図１０】第二パターンの工具交換のタイミングチャート。
【図１１】第三パターンの工具交換のタイミングチャート。
【図１２】第四パターンの工具交換のタイミングチャート。
【発明を実施するための形態】
【００１９】
以下本発明の一実施形態の工作機械２について図面を参照して説明する。以下、図１に於ける、左斜め下を工作機械２の前側とし、右斜め上を工作機械２の後側とする。また、工作機械２の前側から向かって右側、左側を夫々右側、左側とする。図１、図２に示すように、工作機械２は前後に長い矩形箱形の基台部１を備える。基台部１は下部の四隅に脚３を夫々備える。工作機械２は基台部１の上面に、主軸ヘッド３８を保持するコラム３５と、被加工物を保持する被加工物保持装置１００とを備える。被加工物保持装置１００は基台部１の前側に位置し、コラム３５は後側に位置する。
【００２０】
基台部１は上面に前後方向に長い直方体状の支持体３０を備える。支持体３０は基台部１と一体に成形してある。支持体３０の上面における左右端部には、前後方向（Ｙ軸方向）に長いＹ軸レール３２、３２が夫々設けてある。各Ｙ軸レール３２には、二つのスライダ３２Ａ、３２Ａが摺動可能に嵌合している。支持体３０の上面において、Ｙ軸レール３２に平行なＹ軸ボールねじ機構３２ＢがＹ軸レール３２の間に固定してある。Ｙ軸ボールねじ機構３２Ｂの後端部に、Ｙ軸ボールねじ機構３２Ｂを駆動するＹ軸モータ５２が設けてある。
【００２１】
両Ｙ軸レール３２、３２の上側に、左右方向（Ｘ軸方向）に長い二つのＸ軸レール３１、３１が前後に並設してある。Ｘ軸レール３１は、各Ｙ軸レール３２、３２に嵌合したスライダ３２Ａ、３２Ａに固定してある。Ｘ軸レール３１は、Ｙ軸ボールねじ機構３２Ｂのナット部（不図示）に連結している。Ｙ軸モータ５２の回転によって、Ｙ軸ボールねじ機構３２Ｂのナット部がＹ軸方向に移動し、Ｘ軸レール３１、３１はＹ軸方向に移動する。
【００２２】
各Ｘ軸レール３１には、二つのスライダ３１Ａ、３１Ａが摺動可能に嵌合している。Ｘ軸レール３１に平行なＸ軸ボールねじ機構３１ＢがＸ軸レール３１の間に配置してある。該Ｘ軸ボールねじ機構３１ＢはＸ軸レール３１に連結している。Ｘ軸ボールねじ機構３１Ｂの右端部にＸ軸ボールねじ機構３１Ｂを駆動するＸ軸モータ５１が設けてある。
【００２３】
両Ｘ軸レール３１の上側に、上下に長い柱状のコラム３５が配置してある。該コラム３５はＸ軸レール３１に嵌合したスライダ３１Ａに固定してある。またコラム３５はＸ軸ボールねじ機構３１Ｂのナット部（不図示）に連結している。Ｘ軸モータ５１の回転によって、Ｘ軸ボールねじ機構３１Ｂのナット部はＸ軸方向に移動し、コラム３５はＸ軸方向に移動する。
【００２４】
コラム３５の前面において、左右端部に上下方向（Ｚ軸方向）に長いＺ軸レール３３、３３が夫々設けてある。各Ｚ軸レール３３には、二つのスライダ３３Ａ、３３Ａが摺動可能に嵌合している。コラム３５の前面において、Ｚ軸レール３３に平行なＺ軸ボールねじ機構３３ＢがＺ軸レール３３、３３の間に固定してある。Ｚ軸ボールねじ機構３３Ｂの上端部にＺ軸ボールねじ機構３３Ｂを駆動するＺ軸モータ５３が設けてある。
【００２５】
各Ｚ軸レール３３に嵌合したスライダ３３Ａに連結部３４が固定してある。連結部３４は主軸ヘッド３８とＺ軸ボールねじ機構３３Ｂのナット部（不図示）を連結している。連結部３４の前端部は主軸ヘッド３８に固定してある。Ｚ軸モータ５３の回転によって、Ｚ軸ボールねじ機構３３Ｂのナット部はＺ軸方向に移動し、連結部３４はＺ軸方向に移動する。主軸ヘッド３８の上端部に第一主軸３６をＺ軸回りに回転させる主軸モータ５４が設けてある。従って、主軸ヘッド３８は第一主軸３６、連結部３４、主軸モータ５４を備える。第一主軸３６は主軸ヘッド３８下部に設けてある。第一主軸３６は工具１０６を装着する。装着された工具１０６は下向きになる。基台部１の上面前部に、二つの支持台１０、１０を間隔を空けて左右に並設してある。支持台１０、１０は被加工物保持装置１００を支持する。
【００２６】
図３を参照して、被加工物保持装置１００の構造について説明する。被加工物保持装置１００は、支持台１０、１０に固定する二つの固定部１１、１１を備える。該固定部１１、１１の間に、略円柱状の治具１０２を回転可能に保持する治具固定テーブル１０１が配置してある。治具固定テーブル１０１は、テーブル部１０１Ａと、左連結部１０１Ｂと、右連結部１０１Ｃとを備える。また治具固定テーブル１０１は、円柱状の治具１０２を固定可能且つ円柱の軸線周りに回転させるＣ軸モータ５６を下面側に固定する。Ｃ軸モータ５６の回転軸であるＣ軸（第二主軸）１０３は治具１０２の底面に接続している。なお治具１０２の軸線方向及びＣ軸１０３の軸線方向はテーブル部１０１Ａの表面に対して直交している。従って、Ｃ軸１０３の回転により治具１０２は回転する。また、左連結部１０１Ｂは、テーブル部１０１Ａから左上方向に延出しており、左側の固定部１１にＸ軸回りに回転可能に連結してある。右連結部１０１Ｃは、テーブル部１０１Ａから右上方向に延出しており、右側の固定部１１にＸ軸回りに回転可能に連結してある。
【００２７】
右側の固定部１１には、治具固定テーブル１０１をＸ軸回りに回転するチルトモータ５７が固定してある。チルトモータ５７の回転軸は右連結部１０１Ｃに連結している。図３に示すように、チルトモータ５７の回転によって、Ｚ軸上側を基準にして後側への回転角度をマイナスの角度、前側をプラスの角度とした場合、−５度〜＋９５度の範囲で治具固定テーブル１０１は回転する。−５度〜０度及び＋９０度〜＋９５度の範囲を設定することによって、組み付け時の誤差が生じても０度〜＋９０度の範囲で治具固定テーブル１０１を確実に回転させることができる。また前側に９０度以上回転するように構成することによって、作業空間を確保し易い工作機械の前方において、作業者は被加工物１０５を治具１０２に対し脱着することができ、作業効率が向上する。後側に９０度以上回転するように構成した場合、作業空間を確保することは難しい。
【００２８】
図３に示すように、治具１０２に固定された被加工物１０５は、テーブル部１０１Ａが水平な姿勢を保っている場合、Ｃ軸モータ５６の回転によってＣ軸１０３回りに回転する。なお治具固定テーブル１０１の回転に拘わらず、被加工物１０５は、Ｃ軸モータ５６によってテーブル部１０１Ａに対して直角な軸の回りを回転する。
【００２９】
Ｃ軸モータ５６によって回転した被加工物１０５に、第一主軸３６に取り付けた工具１０６をＸ軸モータ５１〜Ｚ軸モータ５３によって近接させて、被加工物１０５を加工する。このときチルトモータ５７によってＸ軸回りの被加工物１０５の姿勢を調整し、所望の部位を加工することができる。この場合、主軸モータ５４を回転させる必要はない。
【００３０】
また主軸モータ５４によって工具１０６を回転させて、回転した工具１０６をＸ軸モータ５１〜Ｚ軸モータ５３によって被加工物１０５に近接させて被加工物１０５を加工する。この場合もチルトモータ５７によってＸ軸回りの被加工物１０５の姿勢を調整し、所望の部位を加工することができる。この場合、Ｃ軸モータ５６を回転させる必要はない。なお主軸モータ５４及びＣ軸モータ５６を回転させて、被加工物１０５を加工してもよい。
【００３１】
図１，図２を参照して、工具交換装置６０について説明する。工具交換装置６０は例えば工具マガジン６１、マガジン支持部材６２、マガジンモータ５５、駆動ギヤ６５等を備える。マガジン支持部材６２は楕円状の金属製板部材である。マガジン支持部材６２はコラム５に取り付けてある。工具マガジン６１はマガジン支持部材６２の外周に沿って取り付けてある。工具マガジン６１はチェーン６４、複数のポット６７を備える。チェーン６４はマガジン支持部材６２の外周に沿って移動可能に取り付けてある。複数のポット６７はチェーン６４に夫々取り付けてある。ポット６７は工具を保持可能である。ポット６７は例えばアーム状に形成し且つ揺動可能に取り付けてある。
【００３２】
マガジンモータ５５の駆動軸は正逆何れの方向にも回転可能である。駆動ギヤ６５はマガジンモータ５５の駆動軸に取り付けてある。駆動ギヤ６５はマガジンモータ５５の駆動軸と共に回転する。駆動ギヤ６５は工具マガジン６１のチェーン６４に噛合する。チェーン６４は駆動ギヤ６５の駆動によりマガジン支持部材６２の外周に沿って正逆何れかの方向に移動する。故にポット６７はチェーン６４と共にマガジン支持部材６２の外周に沿って移動する。工具マガジン６１の最下部に位置するポット６７の位置は工具交換位置である。工具交換位置は第一主軸３６に最も近接する位置である。工具交換装置６０は、工具交換位置にあるポット６７が保持する工具を、第一主軸３６に装着している工具と交換する。
【００３３】
図４を参照して、工作機械２及び数値制御装置２０の電気的構成について説明する。工作機械２を制御する数値制御装置２０は、ＣＰＵ２１、ＲＯＭ２２、ＲＡＭ２３、フラッシュメモリ２４と、入力インタフェイス２５と、入出力インタフェイス２６とを備えている。入力インタフェイス２５は、キーボード１２及びＺ軸原点センサ１３に接続している。
【００３４】
ＲＯＭ２２は、数値制御装置２０のメインプログラムに加え、加工プログラムを１ブロックずつ読込んで工作機械２のＸ軸モータ５１、Ｙ軸モータ５２、Ｚ軸モータ５３、主軸モータ５４、Ｃ軸モータ５６、マガジンモータ５５、チルトモータ５７、クランプ装置５８等を制御する制御プログラム等を記憶する。制御プログラムは、コンピュータで読み取り可能な記憶媒体としてのフラッシュメモリ２４等に記憶してもよい。図４に示すように、フラッシュメモリ２４は、加工プログラムを記憶する加工プログラム記憶領域２４１と、その他のデータの記憶領域２４２を少なくとも備えている。
【００３５】
入出力インタフェイス２６は、Ｘ軸モータ５１を駆動する駆動回路４１と、Ｙ軸モータ５２を駆動する駆動回路４２と、Ｚ軸モータ５３を駆動する駆動回路４３と、主軸モータ５４を駆動する駆動回路４４と、マガジンモータ５５を駆動する駆動回路４５と、Ｃ軸モータ５６を駆動する駆動回路４６と、チルトモータ５７を駆動する駆動回路４７と、クランプ装置５８を駆動する駆動回路４８と、ディスプレイ１５を駆動する駆動回路４９に接続している。
【００３６】
Ｘ軸モータ５１及びＹ軸モータ５２は、工作機械２の第一主軸３６を治具固定テーブル１０１に対してＸ軸方向及びＹ軸方向に移動する。Ｚ軸モータ５３は、工作機械２の第一主軸３６をＺ軸方向に移動する。主軸モータ５４は、第一主軸３６に装着された工具１０６をその軸線周りに回転させる。マガジンモータ５５は、工具交換装置４０を構成する複数の工具を収納した工具マガジン６１を工具交換時に回転する。Ｃ軸モータ５６は、工作機械２の治具１０２をＺ軸の軸線周りに回転する。チルトモータ５７は、治具固定テーブル１０１の傾斜角度を調整する。クランプ装置５８は、治具固定テーブル１０１の裏面側に設けられ、治具１０２の回転軸を固定保持する。ディスプレイ１５は、作業者が後述する加工プログラム等を入力する際、キーボード１２を介して入力した情報を表示する。
【００３７】
Ｘ軸モータ５１、Ｙ軸モータ５２、Ｚ軸モータ５３、主軸モータ５４、マガジンモータ５５、Ｃ軸モータ５６、チルトモータ５７は、各モータの位置を検出するエンコーダ（図示省略）を備えている。各エンコーダは、各駆動回路４１〜４８に接続している。尚、マガジンモータ５５は、工具交換装置４０の工具マガジン６１を回転駆動する。
【００３８】
次に、図５〜図７に示す加工処理のフローチャートと、図８に示す工具判断処理のフローチャートと、図９〜図１３のタイミングチャートを参照して、本実施形態の工作機械２の加工処理について説明する。加工処理を行うプログラムは、ＲＯＭ２２が記憶しており、ＣＰＵ２１が実行する。
【００３９】
ＣＰＵ２１は、加工プログラムについて１ブロック解釈する（Ｓ１）。ＣＰＵ２１は内部処理形式（ブロックデータ）に変換する。加工プログラムを構成するブロックは制御指令を備える。例えば以下の制御指令がある。
Ｍ１４１  Ｇ１００  Ｔ１；（Ｍ１４１⇒Ｍ１４１：回転工具⇒回転工具）
Ｍ１４２  Ｇ１００  Ｔ２；（Ｍ１４１⇒Ｍ１４２：回転工具⇒非回転工具）
Ｍ１４１は第一主軸選択指令である。Ｍ１４２はＣ軸選択指令である。現在、Ｍ１４１により第一主軸３６の回転で加工を行っているとする。回転工具の一例としては、エンドミルや平面フライス等がある。非回転工具の一例としては、バイトがある。
【００４０】
以下説明では、工作機械２は第一パターン〜第四パターンの何れかの工具交換を行うものとする。
第一パターン：回転工具から回転工具への工具交換。
第二パターン：回転工具から非回転工具への工具交換。
第三パターン：非回転工具から回転工具への工具交換。
第四パターン：非回転工具から非回転工具への工具交換。
【００４１】
ＣＰＵ２１は、Ｓ１で解釈した１ブロックの制御指令は、加工終了指令か否かを判断する（Ｓ２）。加工終了指令の場合（Ｓ２：ＹＥＳ）、加工処理を終了する。ＣＰＵ２１は制御指令が加工終了指令でない場合（Ｓ２：ＮＯ）、工具判断処理を実行する（Ｓ３）。工具判断処理は、工具交換のパターンが上記第一〜第四パターンの何れであるかを判断する処理である。工具交換は、第一主軸３６が装着する現在の工具（以下「現在工具」と呼ぶ）から次の工具（以下「次工具」と呼ぶ）に交換する動作である。ＣＰＵ２１は図８に示す工具判断処理を実行する。
【００４２】
図８を参照して、工具判断処理について説明する。ＣＰＵ２１は第一主軸３６が装着する現在工具は回転工具か否かを判断する（Ｓ５１）。ＣＰＵ２１は判断の一例として、現在実行中のモードがＭ１４１かＭ１４２かで判断する。Ｍ１４１であれば第一主軸モードであり、第一主軸３６が装着する現在工具は回転工具である。Ｍ１４２であればＣ軸モードであり、第一主軸３６が装着する現在工具は非回転工具である。
【００４３】
ＣＰＵ２１は、第一主軸３６が装着する現在工具が回転工具と判断した場合（Ｓ５１：ＹＥＳ）、次に第一主軸３６に装着する次工具が回転工具か否かを判断する（Ｓ５２）。ＣＰＵ２１は、図５のＳ１で読み込んだ次の１ブロックが第一主軸３６の回転を選択しているか、Ｃ軸１０３の回転を選択しているかで判断する。例えばＳ１で読み込んだ次の１ブロックがＭ１４１を含む場合、次工具は回転工具である。ＣＰＵ２１は、次工具が回転工具と判断した場合（Ｓ５２：ＹＥＳ）、工具交換は第一パターンであると判断し（Ｓ５３）、ＲＡＭ２３に記憶する。Ｓ１で読み込んだ次の１ブロックがＭ１４２を含む場合、次工具は非回転工具である。ＣＰＵ２１は、次工具が非回転工具と判断した場合（Ｓ５２：ＮＯ）、工具交換は第二パターンであると判断し（Ｓ５４）、ＲＡＭ２３に記憶する。
【００４４】
ＣＰＵ２１は、第一主軸３６が装着する現在工具は非回転工具と判断した場合（Ｓ５１：ＮＯ）、次工具が回転工具か否かを判断する（Ｓ５５）。判断方法は上記と同じである。ＣＰＵ２１は、次工具が回転工具と判断した場合（Ｓ５５：ＹＥＳ）、工具交換は第三パターンであると判断し（Ｓ５６）、ＲＡＭ２３に記憶する。Ｓ１で読み込んだ次の１ブロックがＭ１４２を含む場合、次工具は非回転工具である。ＣＰＵ２１は、次工具が非回転工具と判断した場合（Ｓ５５：ＮＯ）、工具交換は第四パターンであると判断し（Ｓ５７）、ＲＡＭ２３に記憶する。Ｓ５３〜Ｓ５７の判断処理の何れかが終了した場合には、図５に示す加工処理のフローチャートに戻る。
【００４５】
図５に戻り、ＣＰＵ２１は、Ｓ１で読み込んだ１ブロックに工具交換指令（例えばＧ１００）が有るか否かを判断する（Ｓ４）。工具交換指令が有る場合（Ｓ４：ＹＥＳ）、工具判断処理（Ｓ３）で判断したパターンの種類を判断する（Ｓ５，Ｓ１０，Ｓ１４）。ＣＰＵ２１は、工具交換指令が無い場合（Ｓ４：ＮＯ）、加工プログラムの制御指令に従って処理を実行する（Ｓ９）。ＣＰＵ２１はＳ１に戻る。ＲＡＭ２３が第一パターンであると記憶している場合（Ｓ５：ＹＥＳ）、ＣＰＵ２１は、解釈した１ブロックにＣ軸位置決め指令が有るか否かを判断する（Ｓ６）。ＣＰＵ２１はＣ軸位置決め指令が有ると判断した場合（Ｓ６：ＹＥＳ）、駆動回路４８によりクランプ装置５８を制御して、Ｃ軸１０３の固定を解除してアンクランプ状態にする（Ｓ７）。ＣＰＵ２１は、主軸停止指令を駆動回路４４に出力し、主軸モータ５４を停止する（Ｓ８）。ＣＰＵ２１は、Ｃ軸位置決め指令が無いと判断した場合（Ｓ６：ＮＯ）、Ｃ軸１０３を固定したクランプ状態を維持して、主軸モータ５４を停止し第一主軸３６を停止する（Ｓ８）。次いで、ＣＰＵ２１は、駆動回路４３によりＺ軸モータ５３を制御して、主軸ヘッド３８と一体的に第一主軸３６のＺ軸原点への上昇を行う（図６のＳ２１）。
【００４６】
また、第一パターンでなく（Ｓ５：ＮＯ）、ＲＡＭ２３に第二パターンであると記憶されている場合には（Ｓ１０：ＹＥＳ）、ＣＰＵ２１は、解釈した１ブロックにＣ軸回転指令が有るか否かを判断する（Ｓ１１）。Ｃ軸回転指令がある場合には（Ｓ１１：ＹＥＳ）、ＣＰＵ２１は、駆動回路４８によりクランプ装置５８を制御して、Ｃ軸１０３の固定を解除してアンクランプ状態にする（Ｓ１２）。次いで、ＣＰＵ２１は、主軸停止指令を駆動回路４４に出し、主軸モータ５４を停止する（Ｓ１３）。Ｃ軸回転指令が無いと判断した場合には（Ｓ１１：ＮＯ）、Ｃ軸１０３を固定したクランプ状態を維持して、主軸モータ５４を停止し第一主軸３６を停止する（Ｓ１３）。次いで、ＣＰＵ２１は、駆動回路４３によりＺ軸モータ５３を制御して、第一主軸３６のＺ軸原点への上昇を行う（図６のＳ２１）。
【００４７】
また、第一パターンでなく（Ｓ５：ＮＯ）、第二パターンでもなく（Ｓ１０：ＮＯ）、第三パターンであるとＲＡＭ２３が記憶している場合には（Ｓ１４：ＹＥＳ）、解釈した１ブロックにＣ軸位置決め指令が有るか否かを判断する（Ｓ１５）。Ｃ軸位置決め指令が有る場合には（Ｓ１５：ＹＥＳ）、ＣＰＵ２１は、駆動回路４６によりＣ軸モータ５６を制御して、Ｃ軸オリエント動作でＣ軸１０３の回転を停止する（Ｓ１６）。Ｃ軸オリエント動作とは、Ｃ軸１０３の停止位置を指定位置に割り出す動作である。故にＣ軸１０３は連続回転している状態から指定位置で停止する。Ｃ軸位置決め指令が無い場合には（Ｓ１５：ＮＯ）、ＣＰＵ２１は、駆動回路４６によりＣ軸モータ５６を停止し、Ｃ軸１０３の回転を停止する（Ｓ１７）。次いで、ＣＰＵ２１は、駆動回路４３によりＺ軸モータ５３を制御して、第一主軸３６のＺ軸原点への上昇を行う（図６のＳ２１）。
【００４８】
また、第一パターンでなく（Ｓ５：ＮＯ）、第二パターンでもなく（Ｓ１０：ＮＯ）、第三パターンでもない場合（Ｓ１４：ＮＯ）、第四パターンであるので、解釈した１ブロックにＣ軸回転指令が有るか否かを判断する（Ｓ１８）。Ｃ軸回転指令がある場合には（Ｓ１８：ＹＥＳ）、ＣＰＵ２１は、駆動回路４６によりＣ軸モータ５６を制御して、Ｃ軸１０３の回転を行う（Ｓ１９）。次いで、ＣＰＵ２１は、駆動回路４３によりＺ軸モータ５３を制御して、第一主軸３６のＺ軸原点への上昇を行う（図６のＳ２１）。Ｃ軸回転指令が無い場合には（Ｓ１８：ＮＯ）、ＣＰＵ２１は、駆動回路４３によりＺ軸モータ５３を制御して、第一主軸３６のＺ軸原点への上昇を行う（図６のＳ２１）。
【００４９】
図６に示すように、ＣＰＵ２１は、第一主軸３６がＺ軸原点まで上昇したか否かを判断する（Ｓ２２）。ＣＰＵ２１は、第一主軸３６がＺ軸原点まで上昇するまで待ち（Ｓ２２：ＮＯ）、第一主軸３６がＺ軸原点まで上昇した場合（Ｓ２２：ＹＥＳ）、工具交換は第一パターンか否か判断する（Ｓ２３）。ＣＰＵ２１は第一パターンであると判断した場合（Ｓ２３：ＹＥＳ）、解釈した１ブロックにＣ軸位置決め指令が有るか否か判断する（Ｓ２４）。Ｃ軸位置決め指令がある場合（Ｓ２４：ＹＥＳ）、ＣＰＵ２１は、駆動回路４６によりＣ軸モータ５６を制御して、Ｃ軸１０３をＣ軸指令位置まで回転移動する（Ｓ２５）。次いで、ＣＰＵ２１は、Ｘ，Ｙ軸指令位置へ第一主軸３６を移動する。第一主軸３６をＺ軸のＡＴＣ原点まで上昇する（Ｓ２６）。ＡＴＣ原点はＺ軸方向に於ける工具交換の原点である。主軸ヘッド３７がＡＴＣ原点に移動すると、工具交換領域で工具マガジン６１は工具交換領域内で旋回可能である。
【００５０】
ＣＰＵ２１はＣ軸位置決め指令が無い場合（Ｓ２４：ＮＯ）、第一主軸３６をＸ，Ｙ軸指令位置へ移動し、且つＺ軸のＡＴＣ原点まで上昇する（Ｓ２６）。
【００５１】
第一パターンでなく（Ｓ２３：ＮＯ）、第二パターンの場合（Ｓ２８：ＹＥＳ）、解釈した１ブロックにＣ軸回転指令が有るか否か判断する（Ｓ２９）。ＣＰＵ２１はＣ軸回転指令が有ると判断した場合（Ｓ２９：ＹＥＳ）、Ｃ軸１０３の回転を開始する（Ｓ３０）。その後、ＣＰＵ２１はＳ２６の処理を実行する。Ｃ軸回転指令が無い場合（Ｓ２９：ＮＯ）、ＣＰＵ２１は、Ｃ軸１０３は非回転のまま、Ｓ２６の処理を実行する。
【００５２】
工具交換は第一パターンでなく（Ｓ２３：ＮＯ）、第二パターンでもない場合（Ｓ２８：ＮＯ）、第三パターン又は第四パターンである。ＣＰＵ２１はＳ２６の処理を実行する。
【００５３】
ＣＰＵ２１は、第一主軸３６がＡＴＣ原点まで上昇したか否か判断する（Ｓ２７）。ＣＰＵ２１は第一主軸３６がＡＴＣ原点まで上昇するまでは（Ｓ２７：ＮＯ）、待機する。第一主軸３６がＡＴＣ原点まで上昇した場合（Ｓ２７：ＹＥＳ）、ＣＰＵ２１は、駆動回路４５によりマガジンモータ５５を制御し、工具マガジン６１を旋回する（Ｓ３１）。ＣＰＵ２１は工具マガジン６１の旋回が完了したか否か判断する（Ｓ３２）。ＣＰＵ２１は工具マガジン６１の旋回が完了するまでは（Ｓ３２：ＮＯ）、Ｓ３２に戻り待機する。ＣＰＵ２１は工具マガジン６１の旋回が完了した場合（Ｓ３２：ＹＥＳ）、第一主軸３６をＺ軸原点へ下降する（Ｓ３３）。ＣＰＵ２１は第一主軸３６がＺ原点まで下降したか否か判断する（Ｓ３４）。ＣＰＵ２１は第一主軸３６がＺ原点まで下降するまで（Ｓ３４：ＮＯ）、Ｓ３４に戻り待機する。ＣＰＵ２１は第一主軸３６のＺ軸原点への下降が完了した場合（Ｓ３４：ＹＥＳ）、第一パターン又は第三パターンか否か判断する（Ｓ３５）。ＣＰＵ２１は第一パターン又は第三パターンであると判断した場合（Ｓ３５：ＹＥＳ）、Ｘ軸、Ｙ軸、Ｃ軸方向に於ける各動作が完了したか否か判断する（Ｓ３６）。ＣＰＵ２１はＸ軸、Ｙ軸、Ｃ軸方向に於ける各動作が完了するまで（Ｓ３６：ＮＯ）、Ｓ３６に戻り待機する。
【００５４】
ＣＰＵ２１はＸ軸、Ｙ軸、Ｃ軸に於ける各動作が完了した場合（Ｓ３６：ＹＥＳ）、Ｓ１で読み込んだ１ブロック内に主軸回転指令があるか否か判断する（Ｓ３７）。ＣＰＵ２１は主軸回転指令が有ると判断した場合（Ｓ３７：ＹＥＳ）、第一主軸３６を回転する（Ｓ３８）。ＣＰＵ２１は第一主軸３６をＺ軸指令位置まで移動する（Ｓ３９）。Ｚ軸指令位置はＺ軸方向の指令位置である。ＣＰＵ２１はＳ１で読み込んだ１ブロック内に主軸回転指令が無い場合（Ｓ３７：ＮＯ）、第一主軸３６をＺ軸指令位置までの移動を開始する（Ｓ３９）。
【００５５】
ＣＰＵ２１は第一パターン又は第三パターンでないと判断した場合（Ｓ３５：ＮＯ）、第二パターン又は第四パターンである。ＣＰＵ２１は、Ｘ軸、Ｙ軸方向に於ける各動作が完了したか否か判断する（Ｓ４１）。ＣＰＵ２１はＸ軸、Ｙ軸方向に於ける各動作が完了するまでは（Ｓ４１：ＮＯ）、Ｓ４１に戻り待機する。ＣＰＵ２１はＸ軸、Ｙ軸方向に於ける各動作が完了した場合（Ｓ４１：ＹＥＳ）、第一主軸３６をＺ軸指令位置への移動を開始する（Ｓ３９）。
【００５６】
ＣＰＵ２１は、第一主軸３６のＺ軸指令位置への移動が完了したか否か判断する（Ｓ４０）。ＣＰＵ２１はＺ軸指令位置への移動が完了するまで（Ｓ４０：ＮＯ）、Ｓ４０に戻り待機する。ＣＰＵ２１は第一主軸３６のＺ軸指令位置への移動が完了した場合（Ｓ４０：ＹＥＳ）、Ｓ１の処理に戻り、次ブロック以降、上記処理を繰り返す。ＣＰＵ２１は解釈した制御指令が加工終了指令であった場合（Ｓ２：ＹＥＳ）、本処理を終了する。
【００５７】
次に、図９〜図１２のタイミングチャートを参照して、上記構成の工作機械２の動作の具体例を説明する。図９を参照して、第一パターンの工具交換を含む加工動作の具体例について説明する。
【００５８】
本具体例は、例えば加工プログラム中の以下のブロック１，２を実行する場合を想定して説明する。
ブロック１：Ｍ１４１  Ｍ０３  Ｓ２０００  Ｚ２３５．Ｃ０；
ブロック２：Ｍ１４１  Ｇ１００  Ｔ１  Ｘ１０  Ｙ１０  Ｚ２３５  Ｃ１８０  Ｍ０３  Ｓ３０００；
ブロック１は、第一主軸モードで、第一主軸３６を毎分２０００回転で正回転、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）に位置決め、Ｃ軸１０３を０度に位置決めする指令である。ブロック２は、第一主軸モードで、工具Ｔ１に工具交換後、Ｘ軸指令位置（Ｘ＝１０ｍｍ）、Ｙ軸指令位置（Ｙ＝１０ｍｍ）、Ｚ軸指令位置（２３５ｍｍ）に位置決めし、Ｃ軸１０３を１８０度に位置決めし、第一主軸３６を毎分３０００回転で正回転する指令である。
【００５９】
ＣＰＵ２１は例えば時間Ａ０でブロック１を実行中である。ＣＰＵ２１は時間Ａ１でブロック２を実行する（Ｓ１，Ｓ２：ＹＥＳ）。ＣＰＵ２１は工具判断処理を実行する（Ｓ３）。時間Ａ１で第一主軸３６が装着している工具１０６は、ブロック１が含むＭ１４１により回転工具である（Ｓ５１：ＹＥＳ）。第一主軸３６が次に装着する工具１０６は、ブロック２が含むＭ１４１により回転工具である（Ｓ５２：ＹＥＳ）。故にＣＰＵ２１は、工具交換が第一パターンと判断する（Ｓ５３）。ブロック２はＧ１００  Ｔ１の工具交換指令を含む（Ｓ４：ＹＥＳ）。上記の通り、工具交換は第一パターン（Ｓ５：ＹＥＳ）であり、且つブロック２は更にＣ１８０のＣ軸位置決め指令を含むので（Ｓ６：ＹＥＳ）、ＣＰＵ２１は、時間Ａ１で、クランプ装置５８によるＣ軸１０３のクランプを中止しアンクランプを開始する（Ｓ７）。ＣＰＵ２１は時間Ａ１から確認時間Ｋ１を待つ。確認時間Ｋ１が経過する時間Ａ２でクランプ装置５８はアンクランプを完了する。ＣＰＵ２１は、時間Ａ１から第一主軸３６の停止を開始する（Ｓ８）。時間Ａ３で第一主軸３６は停止する。時間Ａ１で、ＣＰＵ２１は第一主軸３６のＺ軸原点への上昇を開始する（Ｓ２１、Ｓ２２：ＮＯ）。時間Ａ４でＺ軸原点への上昇は完了する（Ｓ２２：ＹＥＳ）。ＣＰＵ２１は工具交換が第一パターンであり（Ｓ２３：ＹＥＳ）、ブロック２にはＣ軸位置決め指令が有るので（Ｓ２４：ＹＥＳ）、時間Ａ４からＣ軸１０３を指定位置（１８０度）に移動する（Ｓ２５）。
【００６０】
次いで、時間Ａ４で、ＣＰＵ２１は第一主軸３６のＸ，Ｙ軸指定位置への移動を開始し、Ｚ軸ＡＴＣ原点への上昇を開始する（Ｓ２６）。時間Ａ５で、第一主軸３６はＺ軸ＡＴＣ原点への上昇を完了する（Ｓ２７：ＹＥＳ）。時間Ａ５で、ＣＰＵ２１は次工具を工具交換位置に割り出す為に、工具マガジン６１を旋回する（Ｓ３１）。時間Ａ６で工具マガジン６１の旋回は完了し（Ｓ３２：ＹＥＳ）、ＣＰＵ２１は第一主軸３６のＺ軸原点への下降を開始する（Ｓ３３）。尚、ＣＰＵ２１はＣ軸１０３の指令位置への位置決め完了後、時間Ａ６でクランプ装置５８によるクランプを開始する。ＣＰＵ２１は時間Ａ６から確認時間Ｋ２を待つ。確認時間Ｋ２が経過した時間Ａ７でクランプは完了する。時間Ａ８で第一主軸３６のＺ軸原点への下降は完了する（Ｓ３４：ＹＥＳ）。ここで、工具交換は第一パターンであり（Ｓ３５：ＹＥＳ）、既にＸ軸，Ｙ軸，Ｃ軸の動作は完了している（Ｓ３６：ＹＥＳ）。ブロック２は第一主軸３６の正回転指令（Ｍ０３）を含む（Ｓ３７：ＹＥＳ）。従って、時間Ａ８で、ＣＰＵ２１は第一主軸３６を毎分３０００回転（Ｓ３０００）で正回転する（Ｓ３８）。ＣＰＵ２１は更に並行して第一主軸３６をＺ軸指令位置（Ｚ＝２３５）へ移動し、時間Ａ９で移動速度を落とす。時間Ａ１０で、第一主軸３６のＺ軸指令位置への移動は完了する（Ｓ４０）。以上でブロック１，２の制御動作は完了する。
【００６１】
図１０を参照して、第二パターンの工具交換を含む加工動作の具体例について説明する。第二パターンでは、回転工具から非回転工具に工具交換する際に、ＣＰＵ２１はＣ軸１０３のアンクランプ動作と並列に工具交換動作を行う点に特徴がある。
【００６２】
本具体例は、例えば加工プログラム中の以下のブロック３、４を実行する場合を想定して説明する。
ブロック３：Ｍ１４１  Ｍ０３  Ｓ２０００  Ｚ２３５  Ｃ０； 
ブロック４：Ｍ１４２  Ｇ１００  Ｔ２  Ｘ１０  Ｙ１０  Ｚ２３５  Ｍ３０３  Ｓ２０００； 
ブロック３は、第一主軸モードで、第一主軸３６を毎分２０００回転で正回転、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）に位置決め、Ｃ軸１０３を０度に位置決めする指令である。ブロック４は、Ｃ軸モードで、工具Ｔ２に工具交換、Ｘ軸指令位置（Ｘ＝１０ｍｍ）、Ｙ軸指令位置（Ｙ＝１０ｍｍ）、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）に位置決め、Ｃ軸１０３を毎分２０００回転で正回転する指令である。
【００６３】
ＣＰＵ２１は例えば時間Ｂ０でブロック３を実行中である。ＣＰＵ２１は時間Ｂ１でブロック４を実行する（Ｓ１，Ｓ２：ＹＥＳ）。ＣＰＵ２１は工具判断処理を実行する（Ｓ３）。時間Ｂ１で第一主軸３６が装着している工具１０６は、ブロック３が含むＭ１４１により回転工具である（Ｓ５１：ＹＥＳ）。第一主軸３６が次に装着する工具１０６は、ブロック４が含むＭ１４２により非回転工具である（Ｓ５２：ＮＯ）。故にＣＰＵ２１は工具交換が第二パターンと判断する（Ｓ５４）。次いで、ブロック４は、Ｇ１００  Ｔ２の工具交換指令を含むので（Ｓ４：ＹＥＳ）、工具交換は第二パターン（Ｓ５：ＮＯ、Ｓ１０：ＹＥＳ）である。ブロック４はＭ３０３のＣ軸回転指令を含むので（Ｓ１１：ＹＥＳ）ＣＰＵ２１は、時間Ｂ１で、クランプ装置５８によるＣ軸１０３のクランプ状態からアンクランプを開始する（Ｓ１２）。ＣＰＵ２１は時間Ｂ１から確認時間Ｋ３を待つ。確認時間Ｋ３が経過する時間Ｂ２で、クランプ装置５８はアンクランプを完了する。ＣＰＵ２１は、時間Ｂ１で第一主軸３６の停止を開始する（Ｓ１３）。時間Ｂ３で第一主軸３６は停止する。アンクランプを開始する時間Ｂ１で、ＣＰＵ２１は第一主軸３６のＺ軸原点への上昇を開始する（Ｓ２１、Ｓ２２：ＮＯ）。時間Ｂ４でＺ軸原点への上昇は完了する（Ｓ２２：ＹＥＳ）。ＣＰＵ２１は工具交換が第二パターンであり（Ｓ２３：ＮＯ、Ｓ２８：ＹＥＳ）、ブロック４にはＭ３０３  Ｓ２０００のＣ軸回転指令が有るので（Ｓ２９：ＹＥＳ）、時間Ｂ４からＣ軸１０３の正回転を開始し、毎分２０００回転で回転する（Ｓ３０）。
【００６４】
次いで、時間Ｂ４で、ＣＰＵ２１は第一主軸３６のＸ，Ｙ軸指定位置への移動を開始し、Ｚ軸ＡＴＣ原点への上昇を開始する（Ｓ２６）。時間Ｂ５で、第一主軸３６はＺ軸ＡＴＣ原点への上昇を完了する（Ｓ２７：ＹＥＳ）。時間Ｂ５で、ＣＰＵ２１は次工具を工具交換位置に割り出す為に、工具マガジン６１を旋回する（Ｓ３１）。時間Ｂ６で工具マガジン６１の旋回は完了し（Ｓ３２：ＹＥＳ）、ＣＰＵ２１は第一主軸３６のＺ軸原点への下降を開始する（Ｓ３３）。尚、時間Ｂ８で、Ｃ軸１０３は指令回転速度に到達する。その間、時間Ｂ７で第一主軸３６のＺ軸原点への下降は完了する（Ｓ３４：ＹＥＳ）。ここで、工具交換は第二パターンであるので（Ｓ３５：ＮＯ）、ＣＰＵ２１は、Ｘ軸，Ｙ軸の動作が既に完了していれば（Ｓ４１：ＹＥＳ）、Ｃ軸１０３の指令回転速度の到達を待たずに、第一主軸３６のＺ軸指令位置（Ｚ＝２３５ｍｍ）への移動を開始する（Ｓ３９）。時間Ｂ８で、第一主軸３６のＺ軸指令位置への移動は完了する（Ｓ４０）。以上でブロック３，４の制御動作は完了する。
【００６５】
第二パターンの工具交換は、Ｃ軸１０３のアンクランプ動作と並列して工具交換動作を行う。故に工具交換を待たずにＣ軸１０３の回転を開始できる。
【００６６】
図１１を参照して、第三パターンの工具交換を含む加工動作の具体例について説明する。
【００６７】
本具体例は、例えば加工プログラム中の以下のブロック５，６を実行する場合を想定して説明する。
ブロック５：Ｍ１４２  Ｍ３０３  Ｓ２０００  Ｚ２３５；
ブロック６：Ｍ１４１  Ｇ１００  Ｔ１  Ｘ１０  Ｙ１０  Ｚ２３５  Ｃ１８０  Ｍ０３  Ｓ２０００；
ブロック５は、Ｃ軸モードで、Ｃ軸１０３を毎分２０００回転で正回転、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）に位置決めする指令である。ブロック６は、第一主軸モードで、工具Ｔ１に工具交換、Ｘ軸指令位置（Ｘ＝１０ｍｍ）、Ｙ軸指令位置（Ｙ＝１０ｍｍ）、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）に位置決め、Ｃ軸１０３を１８０度に位置決め、第一主軸３６を毎分２０００回転で正回転する指令である。
【００６８】
ＣＰＵ２１は例えば時間Ｃ０でブロック５を実行中である。ＣＰＵ２１は時間Ｃ１でブロック６を実行する（Ｓ１，Ｓ２：ＹＥＳ）。ＣＰＵ２１は工具判断処理を実行する（Ｓ３）。時間Ｃ１で第一主軸３６が装着している工具１０６は、ブロック５が含むＭ１４２により非回転工具である（Ｓ５１：ＮＯ）。第一主軸３６が装着する次の工具１０６は、ブロック６が含むＭ１４１により回転工具である（Ｓ５２：ＹＥＳ）。故にＣＰＵ２１は工具交換が第三パターンと判断する（Ｓ５６）。次いで、ブロック６は、Ｇ１００  Ｔ１の工具交換指令を含むので（Ｓ４：ＹＥＳ）、工具交換は第三パターン（Ｓ５：ＮＯ，Ｓ１０：ＮＯ，Ｓ１４：ＹＥＳ）である。ブロック６はＣ１８０の位置決め指令を含む（Ｓ１５：ＹＥＳ）。ＣＰＵ２１は時間Ｃ１でＣ軸１０３の指定位置へのオリエント動作を開始する（Ｓ１６）。ＣＰＵ２１は、Ｃ軸１０３のオリエント動作が完了する前に、時間Ｃ１で第一主軸３６のＺ軸原点への上昇を開始する（Ｓ２１、Ｓ２２：ＮＯ）。時間Ｃ２でＺ軸原点への上昇を完了する（Ｓ２２：ＹＥＳ）。ＣＰＵ２１は工具交換が第三パターンであり（Ｓ２３：ＮＯ，Ｓ２８：ＮＯ）、時間Ｃ２で、第一主軸３６のＸ，Ｙ軸指定位置への移動を開始し、Ｚ軸ＡＴＣ原点への上昇を開始する（Ｓ２６）。時間Ｃ３で、第一主軸３６はＺ軸ＡＴＣ原点への上昇を完了する（Ｓ２７：ＹＥＳ）。時間Ｃ３で、ＣＰＵ２１は次工具を工具交換位置に割り出す為に、工具マガジン６１を旋回する（Ｓ３１）。時間Ｃ６で工具マガジン６１の旋回は完了し（Ｓ３２：ＹＥＳ）、ＣＰＵ２１は第一主軸３６のＺ軸原点への下降を開始する（Ｓ３３）。尚、ＣＰＵ２１はＣ軸１０３の指令位置へのオリエント動作完了後、クランプを開始する。ＣＰＵ２１は時間Ｃ４から確認時間Ｋ４を待つ。確認時間Ｋ４が経過する時間Ｃ５でクランプは完了する。時間Ｃ７で第一主軸３６のＺ軸原点への下降は完了する（Ｓ３４：ＹＥＳ）。ここで、工具交換は第三パターンであり（Ｓ３５：ＹＥＳ）、既にＸ軸，Ｙ軸，Ｃ軸の動作は完了している（Ｓ３６：ＹＥＳ）。ブロック６は第一主軸３６の正回転指令（Ｍ０３）を含む（Ｓ３７：ＹＥＳ）。従って、時間Ｃ７で、第一主軸３６を毎分２０００回転で正回転する（Ｓ３８）。ＣＰＵ２１は更に並行して、第一主軸３６のＺ軸指令位置（Ｚ＝２３５ｍｍ）へ移動し、時間Ｃ８で、第一主軸３６がＺ軸指令位置への移動は完了する（Ｓ４０）。以上でブロック５，６の制御動作は完了する。
【００６９】
図１２を参照して、第四パターンの工具交換を含む加工動作の具体例について説明する。第四パターンでは、非回転工具から非回転工具に工具交換する際に、ＣＰＵ２１はＣ軸１０３の回転を止めずに工具交換を行う点に特徴がある。
【００７０】
本具体例は、例えば加工プログラム中の以下のブロック７，８を実行する場合を想定して説明する。
ブロック７：Ｍ１４２  Ｍ３０３  Ｓ２０００  Ｚ２３５；
ブロック８：Ｍ１４２  Ｇ１００  Ｔ２  Ｘ１０  Ｙ１０  Ｚ２３５  Ｍ３０３  Ｓ１５００； 
ブロック７は、Ｃ軸モードで、Ｃ軸１０３を毎分２０００回転で正回転、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）へ位置決めする指令である。ブロック８は、Ｃ軸モードで、工具Ｔ２に工具交換、Ｘ軸指令位置（Ｘ＝１０ｍｍ）、Ｙ軸指令位置（Ｙ＝１０ｍｍ）、Ｚ軸指令位置（Ｚ＝２３５ｍｍ）へ位置決め、Ｃ軸１０３を毎分１５００回転で正回転する指令である。
【００７１】
ＣＰＵ２１は例えば時間Ｅ０でブロック７を実行中である。ＣＰＵ２１は時間Ｅ１でブロック８を実行する（Ｓ１，Ｓ２：ＹＥＳ）。ＣＰＵ２１は工具判断処理を実行する（Ｓ３）。時間Ｅ１で第一主軸３６が装着している工具１０６は、ブロック７が含むＭ１４２により非回転工具である（Ｓ５１：ＮＯ）。第一主軸３６が次に装着する工具１０６は、ブロック８が含むＭ１４２により非回転工具である（Ｓ５５：ＮＯ）。故にＣＰＵ２１は工具交換が第四パターンと判断する（Ｓ５７）。次いで、ブロック８は、Ｇ１００  Ｔ２の工具交換指令を含むので（Ｓ４：ＹＥＳ）、工具交換は第四パターン（Ｓ５：ＮＯ、Ｓ１０：ＮＯ、Ｓ１４：ＮＯ）である。ブロック８は、Ｍ３０３  Ｓ１５００のＣ軸回転指令を含む（Ｓ１８：ＹＥＳ）。ＣＰＵ２１は時間Ｅ１で、Ｃ軸１０３の回転数を２０００回転から１５００回転に低下する（Ｓ１９）。Ｃ軸１０３は１５００回転を保持した状態で回転を継続する。時間Ｅ１で、ＣＰＵ２１は第一主軸３６のＺ軸原点への上昇を開始する（Ｓ２１、Ｓ２２：ＮＯ）。時間Ｅ２でＺ軸原点への上昇は完了する（Ｓ２２：ＹＥＳ）。
【００７２】
工具交換は第四パターンであるので（Ｓ２３：ＮＯ、Ｓ２８：ＮＯ）、時間Ｅ２で、ＣＰＵ２１は第一主軸３６のＸ，Ｙ軸指定位置への移動を開始し、Ｚ軸ＡＴＣ原点への上昇を開始する（Ｓ２６）。時間Ｅ３で、第一主軸３６のＺ軸ＡＴＣ原点への上昇は完了する（Ｓ２７：ＹＥＳ）。時間Ｅ３で、ＣＰＵ２１は次工具を工具交換位置に割り出す為に、工具マガジン６１を旋回する（Ｓ３１）。時間Ｅ４で工具マガジン６１の旋回は完了し（Ｓ３２：ＹＥＳ）、ＣＰＵ２１は第一主軸３６のＺ軸原点への下降を開始する（Ｓ３３）。時間Ｅ５で第一主軸３６のＺ軸原点への下降は完了する（Ｓ３４：ＹＥＳ）。ここで、工具交換は第四パターンであり（Ｓ３５：ＮＯ）、既にＸ軸，Ｙ軸の動作は完了している（Ｓ４１：ＹＥＳ）。ＣＰＵ２１は第一主軸３６をＺ軸指令位置（Ｚ＝２３５）への移動を開始する（Ｓ３９）。時間Ｅ６で、第一主軸３６のＺ軸指令位置への移動は完了する（Ｓ４０）。以上でブロック７，８の制御動作は完了する。
【００７３】
第四パターンの工具交換は、Ｃ軸１０３の回転を止めずに工具交換動作を行う。故に工作機械２は工具交換後、次の加工を速やかに実行できる。
【００７４】
以上説明したように、本実施の形態の工作機械２では、現在工具が非回転工具であり、次工具が非回転工具であるとＣＰＵ２１が判断した場合には、Ｃ軸１０３の回転を停止せずに工具交換装置により工具交換動作を行うので、工具交換の時間を短縮できる。尚、上記実施の形態では、第一主軸３６が第一主軸の一例であり、Ｃ軸１０３が第二主軸の一例である。主軸モータ５４が第一モータの一例であり、Ｃ軸モータ５６が第二モータの一例である。ＣＰＵ２１が制御手段の一例である。Ｓ５１，Ｓ５２及びＳ５５の判断処理を行うＣＰＵ２１が工具判断手段の一例である。クランプ装置５８が固定装置の一例である。
【００７５】
以上説明した実施の形態は本発明の例示であり、本発明は特許請求の範囲に記載された事項及び特許請求の範囲の記載に基づいて定められる範囲内において種々変更した形態で実施することができる。
【００７６】
例えば、工具判断処理Ｓ３の回転工具か非回転工具かの判断は、工具番号Ｔ１、Ｔ２・・・Ｔｎに対応して、各々回転工具か非回転工具かをフラッシュメモリ２４に工具テーブルとして記憶しておき、その工具テーブルをＣＰＵ２１が参照して判断してもよい。
【００７７】
また、ブロック５に含まれるＭ３０３に基づいて、回転工具か非回転工具かを判断するようにしてもよい。M３０３は、Ｃ軸１０３を回転するＣ軸回転指令である。Ｍ３０３が有る場合、その時の第一主軸３６に装着している現在工具は非回転工具となる。
【符号の説明】
【００７８】
２  工作機械
２０  数値制御装置
２１  ＣＰＵ 
３６  第一主軸
３８  主軸ヘッド
４０  工具交換装置
４１〜４８  駆動回路
５１  Ｘ軸モータ
５２  Ｙ軸モータ
５３  Ｚ軸モータ
５４  主軸モータ
５５  マガジンモータ
５６  Ｃ軸モータ
５８  クランプ装置
６０  工具交換装置
６１  工具マガジン
１０３  Ｃ軸
【図１】
0005870796.tif 000002
【図２】
0005870796.tif 000003
【図３】
0005870796.tif 000004
【図４】
0005870796.tif 000005
【図５】
0005870796.tif 000006
【図６】
0005870796.tif 000007
【図７】
0005870796.tif 000008
【図８】
0005870796.tif 000009
【図９】
0005870796.tif 000010
【図１０】
0005870796.tif 000011
【図１１】
0005870796.tif 000012
【図１２】
0005870796.tif 000013