(57)【特許請求の範囲】
【請求項１】
工具を有した主軸を回転駆動する主軸駆動手段と、前記主軸を回転可能に支持する主軸ヘッドを移動する主軸ヘッド移動手段と、工具交換装置と、加工プログラムに基づいて前記主軸駆動手段と前記主軸ヘッド移動手段と前記工具交換装置とを制御する制御手段とを備えた数値制御工作機械において、
前記加工プログラムの同一ブロックには、少なくとも工具交換の指令と補助動作の指令とが記録され、
前記補助動作の指令と、当該指令の動作の内容と、当該動作の実行タイミングとを一対にしたものを複数記憶したタイミングテーブルを備え、
前記タイミングテーブルに記憶される実行タイミングの１つは、工具がワーク及び治具に干渉しない第一タイミングであり、
前記制御手段は、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行することを特徴とする数値制御工作機械。
【請求項２】
前記タイミングテーブルに記憶される実行タイミングの他の１つは、前記工具交換装置による工具交換が終了する第二タイミングであることを特徴とする請求項１に記載の数値制御工作機械。
【請求項３】
前記タイミングテーブルに記憶される実行タイミングとしては、前記第二タイミングより後の所定のタイミングも存在することを特徴とする請求項２に記載の数値制御工作機械。
【請求項４】
工具を有した主軸を回転駆動する主軸駆動手段と、前記主軸を回転可能に支持する主軸ヘッドを移動する主軸ヘッド移動手段と、工具交換装置と、加工プログラムに基づいて前記主軸駆動手段と前記主軸ヘッド移動手段と前記工具交換装置とを制御する制御手段とを備え、前記加工プログラムの同一ブロックには、少なくとも工具交換の指令と補助動作の指令とが記録され、さらに、前記補助動作の指令と、当該指令の動作の内容と、当該動作の実行タイミングとを一対にしたものを複数記憶したタイミングテーブルを備えた数値制御工作機械における前記制御手段を機能させる制御プログラムであって、
前記タイミングテーブルに記憶される実行タイミングの１つは、工具がワーク及び治具に干渉しない第一タイミングであり、
制御手段としてのコンピュータに、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行させることを特徴とする数値制御工作機械の制御プログラム。
【請求項５】
請求項４に記載の制御プログラムを記憶したことを特徴とする記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御工作機械、当該数値制御工作機械の制御プログラム及び当該制御プログラムを記憶した記憶媒体に関する。
【背景技術】
【０００２】
従来、複数の工具を着脱可能に備え、対話式入力による加工プログラムが指定する工具を順に主軸に装着して様々な加工を連続的に行うことができる数値制御工作機械が知られている。このような数値制御工作機械では、主軸ヘッドを加工領域から工具交換領域（ＡＴＣ原点）に移動させてワークと工具の干渉を防止して、主軸に装着された工具を次に使用される工具と交換する作業を行うようになっている（例えば、特許文献１参照）。この場合、工具交換作業と並行して他の補助動作も行い、作業時間の短縮化が図られている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−３１４２３６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に記載のような数値制御工作機械では、工具交換を終了した後に、第一補助動作（例えば、ＢＣＤ信号出力）を行い、当該第一補助動作が終了したら、第二補助動作（例えば、主軸正転）を行い、当該第二補助動作が終了したら、第三補助動作（例えば、マガジンの旋回）を行うようになっていた。従って、工具交換サイクルを短縮できないという問題点があった。
【０００５】
本発明は、上記課題を解決するためになされたものであり、工具交換指令と並列実行させたい補助動作の指令を同時に指令しても、自動的に適切なタイミングで実行することができ、工具交換サイクルを短縮できる数値制御工作機械、制御プログラム及び記憶媒体を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係る数値制御工作機械は、工具を有した主軸を回転駆動する主軸駆動手段と、前記主軸を回転可能に支持する主軸ヘッドを移動する主軸ヘッド移動手段と、工具交換装置と、加工プログラムに基づいて前記主軸駆動手段と前記主軸ヘッド移動手段と前記工具交換装置とを制御する制御手段とを備えた数値制御工作機械において、前記加工プログラムの同一ブロックには、少なくとも工具交換の指令と補助動作の指令とが記録され、前記補助動作の指令と、当該指令の動作の内容と、当該動作の実行タイミングとを一対にしたものを複数記憶したタイミングテーブルを備え、前記タイミングテーブルに記憶される実行タイミングの１つは、工具がワーク及び治具に干渉しない第一タイミングであり、前記制御手段は、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行することを特徴とする。
【０００７】
第１態様の数値制御工作機械では、前記制御手段は、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行する。それ故、第１態様の数値制御工作機械は、工具交換指令と並列実行させたい指令を同時に指令しても、実行順序を考えることなく、自動的に適切なタイミングで実行することができる。
【０００８】
また、第１態様の数値制御工作機械では、前記タイミングテーブルに記憶される実行タイミングの１つを工具がワーク及び治具に干渉しない第一タイミングであるので、工具がワーク及び治具に干渉しないようにできる。
【０００９】
また、前記タイミングテーブルに記憶される実行タイミングの他の１つを前記工具交換装置による工具交換が終了する第二タイミングにしてもよい。このようにすることにより、工具交換が終了する第二タイミングから実行させたい動作を並列実行できる。
【００１０】
また、前記タイミングテーブルに記憶される実行タイミングとしては、前記第二タイミングより後の所定のタイミングでもよい。このようにすることにより、工具交換が終了する第二タイミングより後の所定のタイミングから実行させたい動作を並列実行できる。
【００１１】
本発明の第２態様に係る制御プログラムは、工具を有した主軸を回転駆動する主軸駆動手段と、前記主軸を回転可能に支持する主軸ヘッドを移動する主軸ヘッド移動手段と、工具交換装置と、加工プログラムに基づいて前記主軸駆動手段と前記主軸ヘッド移動手段と前記工具交換装置とを制御する制御手段とを備え、前記加工プログラムの同一ブロックには、少なくとも工具交換の指令と補助動作の指令とが記録され、さらに、前記補助動作の指令と、当該指令の動作の内容と、当該動作の実行タイミングとを一対にしたものを複数記憶したタイミングテーブルを備えた数値制御工作機械における前記制御手段を機能させる制御プログラムであって、前記タイミングテーブルに記憶される実行タイミングの１つは、工具がワーク及び治具に干渉しない第一タイミングであり、制御手段としてのコンピュータに、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行させることを特徴とする。
【００１２】
第２態様に係る制御プログラムでは、制御手段としてのコンピュータに、前記指令に対応した前記補助動作を前記タイミングテーブルの実行タイミングを参照して実行させる。従って、工具交換指令と並列実行させたい指令を同時に指令しても、実行順序を考えることなく、自動的に適切なタイミングで実行することができる。また、タイミングテーブルに記憶される実行タイミングの１つは工具がワーク及び治具に干渉しない第一タイミングであるので、工具がワーク及び治具に干渉しないようにできる。
【００１３】
本発明の第３態様に係る記憶媒体は、第２態様の制御プログラムを記憶したことを特徴とする。
【００１４】
第３態様では、記憶媒体に第２態様の制御プログラムを記憶している。故に、コンピュータが記憶媒体に記憶された制御プログラムを実行することで、第２態様に記載の効果を得ることができる。
【図面の簡単な説明】
【００１５】
【図１】マシニングセンタ１の正面図である。
【図２】スプラッシュカバー３を除いた、マシニングセンタ１の斜視図である。
【図３】マシニングセンタ１における、工具交換機構２０及び主軸ヘッド７を中心とした正面図である。
【図４】マシニングセンタ１の電気的構成を示すブロック図である。
【図５】フラッシュメモリ７６の記憶領域の概念図である。
【図６】工具交換動作中の補助動作の並列実行処理のタイミングテーブル１７０の概念図である。
【図７】工具交換動作中の補助動作の並列実行処理のタイミングチャートである。
【図８】工具交換動作中の補助動作の並列実行処理のフローチャートである。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態であるマシニングセンタ１について、図面に基づいて説明する。はじめに、マシニングセンタ１の全体構成について説明する。図１に示すように、マシニングセンタ１は、図示外のワークと工具６（図３参照）とを相対移動させて、ワークに所望の機械加工（例えば、「中ぐり」、「フライス削り」、「穴空け」、「切削」等）を施すことができる数値制御工作機械である。そして、マシニングセンタ１は、ワークを加工する機械本体と、機械本体の土台となるベッド２と、ベッド２の上部に設けられて機械本体の周囲を囲繞する略直方体状のボックス型のスプラッシュカバー３とを主体に構成されている。
【００１７】
図２に示すように、ベッド２は、鉄製の土台であり、その下部の四隅には、脚部２ａが各々設けられ、これら４本の脚部２ａが工場などの床面に設置されることにより、マシニングセンタ１が所定場所に設置される。さらに、ベッド２の芯部は、軽量化および高強度化のため、いわゆる肉抜き成形（リブによる骨組構造）されている。
【００１８】
図１に示すように、スプラッシュカバー３は、略直方体状のボックス型に形成され、その内側には機械本体によりワーク加工がおこなわれる加工領域が設けられている。スプラッシュカバー３の前面には、開口部を開閉するスライド式の開閉扉４，５が各々設けられている。この開閉扉４，５の略中央には、ガラス窓部４ａ，５ａが各々設けられ、開閉扉４の右側端部近傍には取っ手部４ｂが設けられ、開閉扉５の左側端部近傍には取っ手部５ｂが設けられている。よって、これら取っ手部４ｂ，５ｂを互いに離れる方向に開くことにより開口部が開口される。そして、作業者はこの開口部を介して、スプラッシュカバー３の内側に配設されたテーブル１０（図２参照）に対して、ワークの着脱を行う。
【００１９】
上記構成からなるスプラッシュカバー３は、機械本体の周囲を囲繞して外部より保護するとともに、機械本体から排出される切り屑及び切削液の飛沫等が外部へ飛散するのを遮断して、外部環境が汚染されるのを防止している。
【００２０】
スプラッシュカバー３の正面右側には、マシニングセンタ１の操作をおこなう正面視略長方形状の操作パネル８０が設けられている。この操作パネル８０の前面には、各種キーを備えたキーボード８１が設けられ、その上部には設定画面又は実行動作を表示するためのＣＲＴ（ディスプレイ）８９が設けられている。
【００２１】
操作パネル８０のキーボード８１には、各種操作モードを選択するためのモード選択ボタン、アルファベットを入力するためのアルファベットキー、数字を入力するためのテンキー、カーソルを移動させるためのカーソルキー、各種機能を選択するためのファンクションキーなど、複数のキーやボタンなどが設けられている。
【００２２】
この操作パネル８０では、ユーザによるキーボード８１の操作に応じてＣＲＴ（ディスプレイ）８９の表示画面が遷移するように制御される。そのため、ユーザはＣＲＴ８９の表示画面を参照しながらキーボード８１を用いてＮＣプログラム（ＮＣ言語で作成された加工プログラム）や工具データの編集などを行うことができる。
【００２３】
次に、マシニングセンタ１の機械本体について説明する。図２に示すように、マシニングセンタ１の機械本体は、スプラッシュカバー３の内側に収納されている。当該機械本体は、ベッド２のコラム座部１７ａの上面に載置して固定されている。当該機械本体は、垂直上方に延設された略角柱状のコラム１７ｂと、コラム１７ｂの前面に沿って昇降可能に設けられた主軸ヘッド７と、主軸ヘッド７の下部前側から鉛直下方に突出する主軸９と、主軸ヘッド７の右側に設けられ、主軸９の先端に装着された後述の工具６を、他の工具６に交換する工具交換機構（ＡＴＣ）２０と、ベッド２の上部に設けられてワークを着脱可能に保持するテーブル１０と、コラム１７ｂの背面側に設けられ、電源装置や制御基板などの各装置を内蔵する制御盤１９とを主体に構成されている。なお、制御盤１９の内部には、マシニングセンタ１の制御を司る制御装置７０（図４参照）が配設されているが、詳細は後述する。
【００２４】
コラム１７ｂの前面には、上下方向に延設され、主軸ヘッド７を案内する一対のガイドレール（図示外）が上下方向に固定されている。コラム１７ｂの上面には、サーボモータであるＺ軸モータ８６（図４参照）が設けられており、このＺ軸モータ８６によりその下方に延設された送りねじ（図示外）が正逆方向へ選択的に回転駆動されて、主軸ヘッド７が上下方向に移動するようになっている。
【００２５】
また、主軸ヘッド７には、加工軸に相当する主軸９が回転可能に装着され、主軸９を回転駆動させるための主軸モータ８（図４参照）を上部に備える。主軸９の先端には後述の工具６が着脱可能に装着され、主軸９が主軸モータ８（図４参照）により回転駆動されることによって工具６が回転され、テーブル１０上に固定されたワークを加工するようになっている。
【００２６】
主軸９の下方には、テーブル１０が配設されている。テーブル１０には、ワークが図示外の治具により着脱自在に固定される。テーブル１０はサーボモータからなるＸ軸モータ８７及びＹ軸モータ８８（図４参照）により、Ｘ軸方向（左右方向）及びＹ軸方向（奥行き方向）へ移動制御される。テーブル１０の下側には略直方体状の支持台１２が設けられており、支持台１２の上部にはＸ軸方向に沿って延設された一対のＸ軸送りガイド（図示外）が設けられて、Ｘ軸送りガイド上にテーブル１０が移動可能に支持されている。支持台１２は、ベッド２の長手方向に沿って延設された一対のＹ軸送りガイド上に移動可能に支持されている。このような状態で、テーブル１０は、ベッド２上に設けられたＸ軸モータ８７により、Ｘ軸送りガイドに沿ってＸ軸方向に移動し、同じくベッド２上に設けられたＹ軸モータ８８により、Ｙ軸送りガイドに沿ってＹ軸方向に移動するようになっている。
【００２７】
図３に示すように、工具交換機構２０は、工具６が取り付けられた工具ホルダ６０を複数格納する側面視略小判型状の工具マガジン３０と、主軸９に装着されている工具ホルダ６０と他の工具ホルダ６０とを把持及び搬送するための工具交換アーム４０とを備えている。
【００２８】
工具交換アーム４０は、回転可能および上下動可能に装着された円筒状のアーム旋回軸４３の下端部において、その両端部に工具ホルダ６０を各々把持可能な把持部４１，４１が設けられたアーム部４２が固定されて構成されている。アーム旋回軸４３はＺ軸方向と平行をなし、アーム部４２はアーム旋回軸４３を軸として回動可能である。なお、工具交換アーム４０の上部には工具交換モータ２７（図４参照）が設けられており、この工具交換モータ２７の回転駆動によって工具交換アーム４０の旋回及び上下動が行われる。
【００２９】
工具マガジン３０は、その内側に複数の工具６を各々収納可能な複数の工具ポット３１が配設された移送機構（図示外）が装着されており、各工具ポット３１では工具ホルダ６０に取り付けられた工具６が横方向に向けた状態（格納状態）に維持されている。なお、工具マガジン３０の上部にはマガジンモータ２６（図４参照）が設けられており、このマガジンモータ２６の回転駆動によって複数の工具ポット３１が移送機構（図示外）により搬送される。
【００３０】
工具マガジン３０の下端側には割出口３２が形成され、この割出口３２が形成された位置に限り、工具ポット３１が格納状態から工具６を下方に向けた状態（交換可能状態）まで回動可能となっている。割出口３２の近傍に、エアシリンダ２８（図４参照）により駆動されて、工具ポット３１を格納状態又は交換可能状態へと回動させるポット昇降機構（図示外）が配設されている。
【００３１】
主軸９に装着される工具６の交換時には、工具交換アーム４０がＡＴＣ原点（図７参照）に上昇されている状態において、まず、工具交換アーム４０が旋回し、工具マガジン３０側の工具ホルダ６０と主軸９に装着された工具ホルダ６０とが、把持部４１，４１でそれぞれ把持される。次いで、工具交換アーム４０が下降して、工具抜脱動作が行われる。その後、工具交換アーム４０が旋回して主軸９側の工具ホルダ６０と工具マガジン３０側の工具ホルダ６０とが入れ替わる。このとき、工具交換アーム４０は１８０度回転することになる。その後、工具交換アーム４０が上昇し、工具交換アーム４０に把持された工具６は、工具マガジン３０側の工具ポット３１あるいは主軸９に装着される。そして、工具交換アーム４０が所定角度旋回して、把持部４１，４１から工具ホルダ６０がそれぞれ開放されて、工具交換アーム４０のアーム旋回動作の１サイクルが終了する。
【００３２】
次に、マシニングセンタ１の電気的構成について説明する。図４に示すように、マシニングセンタ１の全体制御を司る制御装置７０は、ＣＰＵ７１，ＲＯＭ７２，ＲＡＭ７３，フラッシュメモリ７６，入力インタフェース７４，出力インタフェース７５を基本に構成されている。操作パネル８０に設けられたキーボード８１が制御装置７０の入力インタフェース７４に接続され、ＣＲＴ８９が制御装置７０の出力インタフェース７５に接続されている。ＣＰＵ７１が後述する制御プログラムを実行することによりマシニングセンタ１は制御される。
【００３３】
制御装置７０の出力インタフェース７５には、先述のＺ軸モータ８６，Ｘ軸モータ８７，Ｙ軸モータ８８，主軸モータ８，マガジンモータ２６，工具交換モータ２７，エアシリンダ２８が接続されている。Ｚ軸モータ８６，Ｘ軸モータ８７，Ｙ軸モータ８８，主軸モータ８，マガジンモータ２６，工具交換モータ２７には、各々の回転角を検出するエンコーダ８６ａ，８７ａ，８８ａ，８ａ，２６ａ，２７ａがそれぞれ設けられており、これらは入力インタフェース７４に各々接続されている。そして、各エンコーダ８６ａ，８７ａ，８８ａ，８ａ，２６ａ，２７ａからの信号が入力インタフェース７４を介して制御装置７０に各々入力される。これにより、制御装置７０によって、Ｚ軸モータ８６，Ｘ軸モータ８７，Ｙ軸モータ８８，主軸モータ８，マガジンモータ２６，工具交換モータ２７の各速度制御がそれぞれ行われる。
【００３４】
また、制御装置７０の入力インタフェース７４には、キーボード８１，アームセンサ８２，Ｚ軸原点センサ８３，ポット上昇センサ８４，ポット下降センサ８５が接続されている。アームセンサ８２は、工具交換アーム４０のアーム旋回動作の１サイクルの動作終了を検出するものであり、その検出信号に基づいて工具交換アーム４０の動作制御が行われる。Ｚ軸原点センサ８３は、主軸ヘッド７の原点（主軸ヘッド７の工具交換高さ位置）を検出するものであり、その検出信号に基づいて主軸ヘッド７の位置決め制御が行われる。ポット上昇センサ８４は、工具ポット３１が格納状態となったことを検出するものであり、ポット下降センサ８５は、工具ポット３１が交換可能状態となったことを検出するものであり、これらの検出信号に基づいてポット昇降機構（図示外）の昇降制御が行われる。
【００３５】
なお、先述の複数の工具ポット３１には、その工具ポット３１と一体的に移動するポット識別板７８が設けられている。このポット識別板７８には、工具ポット３１ごとに異なるパターンの光透過部（図示外）が形成されており、各工具ポット３１を個別に識別できるようになっている。そして、工具マガジン３０には、複数の工具ポット３１を個々に識別する識別センサ７９が設けられている。識別センサ７９は、ポット識別板７８を挟んで対向して配置された投光素子７９ａと受光素子７９ｂとから構成されており、受光素子７９ｂからの信号に基づいて工具マガジン３０の割出口３２に何れの工具ポット３１が搬送されたかを検出するものであり、この検出信号に基づいて所定の工具６の位置決め制御が行われる。
【００３６】
制御装置７０のＲＡＭ７３は、後述する制御プログラムの実行中に算出した値等を一時的に記憶する。図５に示すように、フラッシュメモリ７６には、後述するタイミングテーブル１７０を記憶するタイミングテーブル記憶領域７６ａ、作業者が入力して登録した種々の加工プログラムを記憶する加工プログラム記憶領域７６ｂ等が設けられている。制御装置７０のＲＯＭ７２には、後述の主軸ヘッド７のＺ軸方向への移動処理（図８参照）を実行する制御プログラムがあらかじめ記憶されている。
【００３７】
次に、図６を参照して、フラッシュメモリ７６のタイミングテーブル記憶領域７６ａに記憶されているタイミングテーブル１７０について説明する。タイミングテーブル１７０には、Ｍコード（補助動作）の指令１７１と、当該指令１７１に対応した動作の内容１７２と、当該動作の実行タイミング１７３とが複数組記憶されている。図６に示す一例では、例えば、指令Ｍ０３の動作内容は主軸の正転であり、当該動作を実行するタイミングはタイミングＢである。また、指令Ｍ０９の動作内容はクーラントポンプ切であり、当該動作を実行するタイミングはタイミングＡである。また、指令Ｍ４３６の動作内容はマガジン旋回速度１であり、当該動作を実行するタイミングはタイミングＣである。また、指令が２桁のＢＣＤ信号の場合には、動作内容はＢＣＤ信号出力であり、当該動作を実行するタイミングはタイミングＡである。図７に示すように、タイミングＡは、主軸ヘッド７がＺ軸の工具交換位置への上昇中に、ワークから工具が離れる位置（Ｒ点）のタイミングである。また、タイミングＢは、工具交換後、Ｚ軸の工具交換位置からＲ点へ向けて降下を開始するタイミングである。タイミングＣは、工具がワークの加工を開始する位置（Ｒ点）から主軸ヘッド７がＺ軸の指令位置への降下の開始タイミングである。
【００３８】
タイミングテーブル１７０では、各指令の動作内容を実行するタイミングを予め任意に設定しておけるようになっている。制御装置７０のＣＰＵ７１は、作業者が入力してフラッシュメモリ７６の加工プログラム記憶領域７６ｂに記憶されている加工プログラムを読み込んで、タイミングテーブル１７０を参照して、加工プログラムを解析して実行する。
【００３９】
次に、加工プログラムであるＮＣプログラムの一例である例１を以下に説明する。
例１「Ｇ１００  Ｔ１  Ｒ５０．Ｚ０．Ｍ１０  Ｍ０３  Ｍ４３６；」
上記例１の場合は、Ｇ１００は、工具交換指令であり、Ｔ１は、交換する工具番号であり、Ｒ５０は、シングル運動の場合に、主軸ヘッド７が下降して一時停止するＲ点（Ｚ＝５０）の値である。Ｚ０は、主軸ヘッド７（Ｚ軸）が０に位置決めする指令ある。Ｍ１０は、タイミングテーブル１７０を参照すると、直接書かれておらず、２桁のＢＣＤ信号であるので、ＢＣＤ信号を出力する。Ｍ０３は、タイミングテーブル１７０を参照すると、主軸正転で、実行タイミングは、図７に示すタイミングＢである。Ｍ４３６は、マガジン旋回速度１を示し、実行タイミングは、図７に示すタイミングＣである。従って、例１では、タイミングＡでＢＣＤ信号を出力し（Ｍ１０）、タイミングＢで主軸の正転を実行し（Ｍ０３）、タイミングＣでマガジン回転速度１を実行する（Ｍ４３６）。
【００４０】
次に、加工プログラムであるＮＣプログラムの一例である例２を以下に説明する。
例２「Ｇ１００  Ｔ１  Ｒ５０．Ｚ０．Ｍ１０  Ｍ０３  Ｍ０８；」
上記例１と同一指令はその説明を省略する。Ｍ０８は、クーラントポンプ入りを示し、実行タイミングは、図７に示すタイミングＢである。従って、例２では、タイミングＡでＢＣＤ信号を出力し（Ｍ１０）、タイミングＢで主軸の正転を実行し（Ｍ０３）、タイミングＣでクーラントポンプが入り（ＯＮ）（Ｍ０８）となる。
【００４１】
次に、図７を参照して、工具交換動作中の主軸ヘッド７のＺ軸方向への移動処理について説明する。工具交換指令を受けると、Ｚ軸方向の原点Ｚ＝０から主軸ヘッド７が上昇し、タイミングＡで、Ｒ点（Ｚ＝５０）まで主軸ヘッド７が上昇する。このタイミングＡで工具がワークから離れる。このタイミングＡまで主軸ヘッド７が上昇すると工具がワーク及び治具に干渉しない。このタイミングＡが工具がワーク及び治具に干渉しない第一タイミングである。また、タイミングＡから主軸ヘッド７が上昇を続け、タイミングＡ１で、主軸ヘッド７が工具交換が可能となる工具交換位置であるＡＴＣ原点にまで上昇する。このタイミングＡ１から工具交換機構２０により工具交換を開始し、タイミングＢで工具交換が完了する。このタイミングＢが工具交換が完了する第二タイミングである。次いで、タイミングＢから主軸ヘッド７が降下してタイミングＣでＲ点に到達し、タイミングＣからＺ軸上の指令位置まで主軸ヘッド７が降下する。
【００４２】
次に、ＣＰＵ７１による工具交換動作の制御中の他の処理の並列実行処理について、図８のフローチャートを参照して説明する。作業者は、操作パネル８０のキーボード８１（図１参照）により、加工プログラム実行の指示を入力する。ＣＰＵ７１は、フラッシュメモリ７６の加工プログラム記憶領域７６ｂ（図５参照）に記憶した加工プログラムを読み込んで実行する。
【００４３】
図８に示すように、ＣＰＵ７１は、加工ブロックの１ブロックを読み込んで解釈する（Ｓ１）。このＳ１の処理では、ＣＰＵ７１は、図６に示すタイミングテーブル１７０を参照して、各指令の内容と、実行タイミングを読み取り、タイミング順に指令の内容を並び替えて、図４に示す制御装置７０のＲＡＭ７３に記憶する。
【００４４】
次いで、ＣＰＵ７１は、解釈した１ブロックの指令が終了指令（Ｍ３０）か否かを判断する（Ｓ２）。ＣＰＵ７１は、指令が終了指令（Ｍ３０）であると判断した場合（Ｓ２：ＹＥＳ）、処理を終了する。ＣＰＵ７１は、指令が終了指令（Ｍ３０）でないと判断した場合（Ｓ２：ＮＯ）、指令が工具交換指令か否か判断する（Ｓ３）。ＣＰＵ７１は、指令が工具交換指令と判断した場合（Ｓ３：ＹＥＳ）、工具交換動作を開始する（Ｓ４）。即ち、主軸ヘッド７をＲ点を経由してＡＴＣ原点に向けて上昇させる（Ｓ４）。ＣＰＵ７１は、指令が工具交換指令でないと判断した場合（Ｓ３：ＮＯ）、ＣＰＵ７１は軸移動指令、又は切削指令等のブロック指令に従って処理を実行する（Ｓ８）。ＣＰＵ７１は、解釈するブロックを次ブロックに移動し、Ｓ１に戻り、処理を繰り返す。
【００４５】
Ｓ３でＹＥＳと判断された場合には、工具交換動作を開始し（Ｓ４）、ＣＰＵ７１は、Ｚ軸上昇処理を実行する。Ｚ軸上昇処理は、主軸ヘッド７が現在の位置から工具交換位置（ＡＴＣ原点）まで上昇する処理である。ＣＰＵ７１は、図７に示すように、Ｚ軸上昇処理中に主軸ヘッド７がＲ点まで上昇するとタイミングＡに到達したと判断する（Ｓ５：ＹＥＳ）。主軸ヘッド７がＲ点まで上昇していない場合には、Ｓ５の判断処理に戻る。主軸ヘッド７がＲ点まで上昇した場合に（Ｓ５：ＹＥＳ）、Ｓ１の１ブロック読み取り処理でＲＡＭ７３に記憶した指令の内容にタイミングＡで実行する指令がある場合には（Ｓ６：ＹＥＳ）、当該タイミングＡで実行する指令の内容を実行する（Ｓ７）。前記例１及び例２の場合には、タイミングＡで実行する指令は、Ｍ１０であるので、ＢＣＤ信号の出力を行う（Ｓ７）。
【００４６】
次いで、指令実行（Ｓ７）が終了するとＳ６の判断処理に戻る。タイミングＡで実行すべき全ての指令が終了している場合には（Ｓ６：ＮＯ）、工具交換が終了したタイミングＢになったか否かを判断する（Ｓ９）。図７に示すように、このタイミングＢは、主軸ヘッド７がＲ点から上昇し、ＡＴＣ原点に到達して（タイミングＡ１）、工具交換機構２０により工具交換を実行して、工具交換が終了したタイミングである。タイミングＢになった場合には（Ｓ９：ＹＥＳ）、Ｓ１の１ブロック読み取り処理でＲＡＭ７３に記憶した指令の内容にタイミングＢで実行する指令がある場合には（Ｓ１０：ＹＥＳ）、当該タイミングＢで実行する指令の内容を実行する（Ｓ１１）。前記例１及び例２の場合には、タイミングＢで実行する指令は、Ｍ０３であるので、主軸９の正転である（Ｓ１１）。
【００４７】
次いで、指令実行（Ｓ１１）が終了するとＳ１０の判断処理に戻る。タイミングＢで実行すべき全ての指令が終了している場合には（Ｓ１０：ＮＯ）、タイミングＣになったか否かを判断する（Ｓ１２）。図７に示すように、このタイミングＣは、ワークに工具が当接してワークの加工を行うＲ点まで主軸ヘッド７が下がったタイミングである。タイミングＣになった場合には（Ｓ１２：ＹＥＳ）、Ｓ１の１ブロック読み取り処理でＲＡＭ７３に記憶した指令の内容にタイミングＣで実行する指令がある場合には（Ｓ１３：ＹＥＳ）、当該タイミングＣで実行する指令の内容を実行する（Ｓ１４）。前記例１の場合には、タイミングＣで実行する指令は、Ｍ４３６であるので、マガジン旋回速度１でマガジンの旋回を行う。また、前記例２の場合には、タイミングＣで実行する指令は、Ｍ０８であるので、クーラントポンプの入（ＯＮ）である。
【００４８】
次いで、指令実行（Ｓ１４）が終了するとＳ１３の判断処理に戻る。タイミングＣで実行すべき全ての指令が終了している場合には（Ｓ１３：ＮＯ）、工具交換の動作終了か否かを判断する（Ｓ１５）。この判断は、工具交換指令中に含まれる動作が全て終了したか否かで判断される。工具交換動作終了の場合は（Ｓ１５：ＹＥＳ）、Ｓ１の処理に戻る。工具交換動作終了でない場合は（Ｓ１５：ＮＯ）、Ｓ１５の判断処理で、工具交換動作終了まで待機する。
【００４９】
なお、以上説明において、制御装置７０のＣＰＵ７１が本発明の「制御手段」として機能し、主軸モータ８が本発明の「主軸駆動手段」として機能し、Ｚ軸モータ８６が本発明の「主軸ヘッド移動手段」として機能する。タイミングテーブル１７０が本発明の「タイミングテーブル」として機能し、タイミングＡが本発明の「第一タイミング」として機能し、タイミングＢが本発明の「第二タイミング」として機能し、タイミングＣが本発明の「所定のタイミング」として機能する。ＲＯＭ７２が制御プログラムの記憶媒体として機能する。
【００５０】
以上説明したように、本実施形態のマシニングセンタ１は、工具交換指令と並列実行させたい指令を同時に指令しても、自動的に適切なタイミングで実行することができる。従って、工具交換サイクルを短縮できる。
【００５１】
なお、本発明の数値制御工作機械、制御プログラム及び記憶媒体は、上記実施形態に限らず、各種の変形が可能なことはいうまでもない。例えば、タイミングテーブル１７０の実行タイミング１７３は、操作パネル８０のキーボード８１を操作して変更可能としても良い。また、タイミングは、タイミングＡ、Ｂ、Ｃの３つ以外にも設定しても良い。例えば、Ｚ＝０の位置からＲ点への主軸ヘッド７の上昇開始時である。
【００５２】
上記実施形態では縦型のマシニングセンタ１を例に説明したが、本発明は横型の工作機械にも適用可能である。工具交換機構２０は、他の方式の機構でもよい。例えば、主軸ヘッド７の上昇下降の動作に連動して工具ホルダの着脱装着が可能なタレット方式でもよい。
【符号の説明】
【００５３】
１  マシニングセンタ
７  主軸ヘッド
８  Ｚ軸モータ
９  主軸
１０  テーブル
２０  工具交換装置
２６  マガジンモータ
７０  制御装置
７１  ＣＰＵ
７２  ＲＯＭ 
７３  ＲＡＭ
７６  フラッシュメモリ
７６ａ  タイミングテーブル記憶領域７６ａ
７６ｂ  加工プログラム記憶領域７６ｂ
８７  Ｘ軸モータ
８８  Ｙ軸モータ
５４  主軸モータ
１７０  タイミングテーブル
１７１  指令
１７２  内容
１７３  実行タイミング
【図１】
0005556656.tif 000002
【図２】
0005556656.tif 000003
【図３】
0005556656.tif 000004
【図４】
0005556656.tif 000005
【図５】
0005556656.tif 000006
【図６】
0005556656.tif 000007
【図７】
0005556656.tif 000008
【図８】
0005556656.tif 000009