(57)【要約】【課題】  割込み指令が入力された際の安全性を確保することができる数値制御式工作機械及びその割込み処理方法を提供すること。【解決手段】  数値制御装置５０に割込み指令が入力されると、数値制御装置５０は加工プログラム実行制御のバックグランドで割込み制御を実行させて、割込み受付フラグＦａが１であるか否かを判断する。ここで、割込み受付フラグＦａが１であるので（Ｓ２０；Ｙｅｓ）、リミットスイッチ８４がＯＮであるか否かを判断する。リミットスイッチ８４がＯＮである場合は（Ｓ２１；Ｙｅｓ）、タップ加工実行中であるか否かを判断する。ここではタップ加工を実行していないので（Ｓ２２；Ｎｏ）、割込み処理を実行させる（Ｓ２４）。【選択図】  図７
2010198432.tif 000002
【特許請求の範囲】
【請求項１】
機械本体と、加工プログラムに基づいてワークに加工を施すように前記機械本体を制御する数値制御装置とを有する数値制御式工作機械において、
前記数値制御装置は、
割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する加工判断手段と、
前記加工判断手段によりタップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後前記割込み指令による割込み処理を実行させ、前記加工判断手段によりタップ加工中であると判断された場合は、タップ加工終了後に前記割込み指令による割込み処理を実行させる割込み処理実行手段と、
を備えたことを特徴とする数値制御式工作機械。
【請求項２】
前記機械本体の加工領域を覆うスプラッシュカバーの開口部を開閉可能な開閉扉の開閉状態を検知する開閉検知手段を設け、
前記数値制御装置に、前記開閉検知手段により前記開閉扉が開状態であると検知された場合は、前記割込み処理実行手段に対して前記割込み指令による割込み処理の実行を禁止する割込み処理禁止手段を設けたことを特徴とする請求項１に記載の数値制御式工作機械。
【請求項３】
前記割込み処理実行手段に、入力された前記割込み指令を有効化する割込み有効化手段と、入力された前記割込み指令を無効化する割込み無効化手段とを設けたことを特徴とする請求項１又は２に記載の数値制御式工作機械。
【請求項４】
機械本体と、加工プログラムに基づいてワークに加工を施すように前記機械本体を制御する数値制御装置とを有する数値制御式工作機械の割込み処理方法において、
割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する第１ステップと、
前記第１ステップにおいてタップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後前記割込み指令による割込み処理を実行させ、前記第１ステップにおいてタップ加工中であると判断された場合は、タップ加工終了後に前記割込み指令による割込み処理を実行させる第２ステップと、
を備えたことを特徴とする数値制御式工作機械の割込み処理方法。
【請求項５】
前記機械本体の加工領域を覆うスプラッシュカバーの開口部を開閉可能な開閉扉の開閉状態を検知する開閉検知手段を予め設けておき、
前記第２ステップにおいて、前記開閉検知手段により前記開閉扉が開状態であると検知された場合は、前記割込み指令による割込み処理の実行を禁止することを特徴とする請求項４に記載の数値制御式工作機械の割込み処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御式工作機械及びその割込み処理方法に関し、特に加工プログラム実行中に割込み指令が入力された場合の安全性を向上させるように構成したものに関する。
【背景技術】
【０００２】
従来、数値制御（所謂、ＮＣ制御）可能な数値制御式工作機械は、ワークと工具とをＸＹＺ直交座標系における各軸方向へ独立に相対移動させることによって、ワークに所望の機械加工（例えば、「フライス削り」、「穴開け」、「切削」等）を施すことができる。
このような数値制御式工作機械では、加工の途中でその加工を中断し割込み処理を行わせる場合がある。加工プログラムの実行中に割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理を中断し、割込み指令による割込み処理を実行させる方法が、例えば特許文献１に開示してある。
【０００３】
特許文献１に記載の数値制御方式では、加工中に工具が折れたことを作業者が確認した場合、作業者が割込み信号を入力することでＮＣ装置が実行中の加工を中断し、予め登録しておいた工具交換プログラムを実行させた後、中断したプログラムを再開させる。
また、加工プログラムの実行中に割込み指令が入力されたとき、実行中の指令に応じて即座に割込み処理を実行するか否かを判断するようにしたものが特許文献２に開示してある。
【０００４】
特許文献２に記載のＮＣ加工装置及びその割込み処理方法では、割込み要求が入力された際に実行中の指令が割込み可能か否かを判断する。早送り指令の場合は割込み可能な指令として判断し、実行中の指令を中断して割込み指令による割込み処理を行う。一方、加工指令など早送り指令以外の場合は割込み不可能な指令として判断し、実行中の指令による処理を継続する。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開昭５９−９７０６号公報
【特許文献２】特開２０００−２９３２１２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献２のように加工指令を実行している場合は割込み不可能とするのではなく、加工中に工具が折損した場合には、加工中に工具交換を行うための割込み処理を行える方が望ましい。しかし、タップ加工中に工具が折損した場合に工具交換を行うための割込み処理を行うと、ワークに食い込んだタップ工具を逆転させずに上昇させるので、ワークからタップ工具を無理に引き抜くことになる。
【０００７】
この場合、特に主軸ヘッドを昇降させるＺ軸モータに大きな負荷が掛かるのでＺ軸モータが破損する虞がある。さらに、プログラム検証時や機械メンテナンス時などに、スプラッシュカバーの開閉扉を開けた状態で誤って割込み指令を入力した場合に割込み処理を行うと、スプラッシュカバー内で作業を行っている作業者の安全性が損なわれる虞がある。
【０００８】
本発明の目的は、割込み指令が入力された際の安全性を確保することができる数値制御式工作機械及びその割込み処理方法を提供することである。
【課題を解決するための手段】
【０００９】
請求項１の数値制御式工作機械は、機械本体と、加工プログラムに基づいてワークに加工を施すように前記機械本体を制御する数値制御装置とを有する数値制御式工作機械において、前記数値制御装置は、割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する加工判断手段と、前記加工判断手段によりタップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後前記割込み指令による割込み処理を実行させ、前記加工判断手段によりタップ加工中であると判断された場合は、タップ加工終了後に前記割込み指令による割込み処理を実行させる割込み処理実行手段とを備えたことを特徴としている。
【００１０】
この数値制御式工作機械では、割込み指令が入力されたとき、数値制御装置が、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する。数値制御装置がタップ加工中でないと判断した場合は、実行中のブロックに基づく処理を即座に停止させた後割込み指令による割込み処理を実行させる。一方、数値制御装置がタップ加工中であると判断した場合は、タップ加工終了後に割込み指令による割込み処理を実行させる。これにより、タップ加工中に工具交換のための割込み指令が入力された場合、タップ加工中に割込み処理を実行しない。それ故、ワークに食い込んだタップ工具を無理に引き抜かないので、主軸ヘッドを昇降させるＺ軸モータに大きな負荷が掛からない。
【００１１】
請求項２の数値制御式工作機械は、請求項１の発明において、前記機械本体の加工領域を覆うスプラッシュカバーの開口部を開閉可能な開閉扉の開閉状態を検知する開閉検知手段を設け、前記数値制御装置に、前記開閉検知手段により前記開閉扉が開状態であると検知された場合は、前記割込み処理実行手段に対して前記割込み指令による割込み処理の実行を禁止する割込み処理禁止手段を設けたことを特徴としている。
【００１２】
請求項３の数値制御式工作機械は、請求項１又は２の発明において、前記割込み処理実行手段に、入力された前記割込み指令を有効化する割込み有効化手段と、入力された前記割込み指令を無効化する割込み無効化手段とを設けたことを特徴としている。
【００１３】
請求項４の数値制御式工作機械の割込み処理方法は、機械本体と、加工プログラムに基づいてワークに加工を施すように前記機械本体を制御する数値制御装置とを有する数値制御式工作機械の割込み処理方法において、割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する第１ステップと、前記第１ステップにおいてタップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後前記割込み指令による割込み処理を実行させ、前記第１ステップにおいてタップ加工中であると判断された場合は、タップ加工終了後に前記割込み指令による割込み処理を実行させる第２ステップとを備えたことを特徴としている。
【００１４】
この数値制御式工作機械の割込み処理方法では、先ず、割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断する。次に、タップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後割込み指令による割込み処理を実行させる。タップ加工中であると判断された場合は、タップ加工終了後に割込み指令による割込み処理を実行させる。これにより、請求項１の場合と同様の作用を奏する。
【００１５】
請求項５の数値制御式工作機械の割込み処理方法は、請求項４の発明において、前記機械本体の加工領域を覆うスプラッシュカバーの開口部を開閉可能な開閉扉の開閉状態を検知する開閉検知手段を予め設けておき、前記第２ステップにおいて、前記開閉検知手段により前記開閉扉が開状態であると検知された場合は、前記割込み指令による割込み処理の実行を禁止することを特徴としている。
【発明の効果】
【００１６】
請求項１の発明によれば、加工判断手段によりタップ加工中であると判断された場合は、割込み処理実行手段がタップ加工終了後に割込み指令による割込み処理を実行させるので、タップ加工中に工具交換のための割込み指令が入力された場合、タップ加工中に割込み指令による割込み処理を実行させない。それ故、ワークに食い込んだタップ工具を無理に引き抜くことなく、主軸ヘッドを昇降させるＺ軸モータに大きな負荷が掛かるのを防止できるので、割込み指令が入力された際の安全性を確保することができる。また、加工判断手段によりタップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後割込み指令による割込み処理を実行させるので、迅速な割込み処理を行うことができる。
【００１７】
請求項２の発明によれば、開閉検知手段を設け、開閉検知手段により開閉扉が開状態であると検知された場合は、割込み処理禁止手段が割込み処理実行手段に対して割込み指令による割込み処理の実行を禁止するので、プログラム検証時や機械メンテナンス時などに開閉扉を開けた状態で誤って割込み指令を入力した場合にも、スプラッシュカバー内で作業を行っている作業者の安全性を確保することができる。
【００１８】
請求項３の発明によれば、割込み処理実行手段に、入力された割込み指令を有効化する割込み有効化手段と、入力された割込み指令を無効化する割込み無効化手段とを設けたので、作業者が加工プログラムの所望のブロックで割込み処理を許可又は禁止することで、割込み指令が入力された際の安全性を一層高めることができる。
【００１９】
請求項４の発明によれば、割込み指令が入力されたとき、加工プログラムにおける実行中のブロックに基づく処理がタップ加工か否か判断し、タップ加工中でないと判断された場合は、実行中のブロックに基づく処理を即座に停止させた後割込み指令による割込み処理を実行させ、タップ加工中であると判断された場合は、タップ加工終了後に割込み指令による割込み処理を実行させるので、請求項１の場合と同様の効果を奏する。
【００２０】
請求項５の発明によれば、機械本体の加工領域を覆うスプラッシュカバーの開口部を開閉可能な開閉扉の開閉状態を検知する開閉検知手段を予め設けておき、開閉検知手段により開閉扉が開状態であると検知された場合は、割込み指令による割込み処理の実行を禁止するので、請求項２の場合と同様の効果を奏する。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施例に係る数値制御式工作機械の正面図である。
【図２】工作機械の機械本体の斜視図である。
【図３】工作機械の制御系を示すブロック図である。
【図４】加工プログラムの一例である。
【図５】割込みプログラムの一例である。
【図６】加工プログラム実行制御プログラムのフローチャートである。
【図７】割込み判断制御プログラムのフローチャートである。
【図８】割込み処理の制御プログラムのフローチャートである。
【発明を実施するための形態】
【００２２】
以下、本発明を実施するための形態について説明する。
【実施例】
【００２３】
以下、本発明の実施例について図面に基づいて説明する。
図１、図２に示すように、マシニングセンタ（数値制御式工作機械）１は、図示外のワークと工具とが相対移動することで、ワークに所望の切削加工（例えば、「フライス削り」、「穴開け」、「切削」等）を施すことができる工作機械である。マシニングセンタ１は、鋳鉄製の基台であるベース２と、ベース２の上部に設けた機械本体３と、ベース２の上部に固定したスプラッシュカバー４とを構成の主体とする。機械本体３は、ワークの切削加工を行う。ベース２は、Ｙ軸方向（機械本体３の奥行き方向）に長い略直方体状の鋳造品である。ベース２の下部の四隅は、高さ調節可能な脚部２ａを夫々備えている。
【００２４】
次に、スプラッシュカバー４について説明する。
図１に示すように、スプラッシュカバー４は、機械本体３とベース２の上部を覆う略直方体状の箱状のものである。スプラッシュカバー４はベース２の上部に固定してある。このスプラッシュカバー４の内側に、機械本体３の加工領域を設けてある。スプラッシュカバー４の前面に開口部（図示略）を設けてある。
【００２５】
この開口部を開閉する１対のスライド式の開閉扉５，６を設けてある。この開閉扉５，６の略中央に、矩形状のガラス窓部５ａ，６ａを夫々設けてある。開閉扉５の右端部に把手部５ｂを設け、開閉扉６の左端部に把手部６ｂを設けてある。作業者が、これら把手部５ｂ，６ｂを互いに離れる方向に開くことにより開口部を開き、ベース２の上部のテーブル１０に対してワークの着脱を行うことができる。開閉扉５，６には、開閉扉５，６の開状態を検知する開閉検知手段としてのリミットスイッチ８４（図３参照）を設けてある。
【００２６】
正面開口部の右側に操作パネル８０を設けてある。この操作パネル８０は、マシニングセンタ１を操作する正面視長方形状のものである。この操作パネル８０は、テンキー、各種操作キーを備えたキーボード８１とディスプレイ８２を有する。ディスプレイ８２は、設定画面又は実行動作を表示するためのものであり、キーボード８１の上部に設けてある。
【００２７】
次に、機械本体３について説明する。
図２に示すように、機械本体３はベース２の上側にあり、機械本体３が加工プログラムに基づいてワークの切削加工を行う。機械本体３は、コラム１６と、主軸ヘッド７と、主軸９と、工具交換装置２０と、テーブル１０とを構成の主体とする。直方体状のコラム１６は、ベース２の後部にあるコラム座部１７の上面に固定しており、且つ鉛直上方に延びている。主軸ヘッド７は、その内部に主軸９を回転可能に支持している。
【００２８】
工具交換装置２０は、主軸ヘッド７の右側に設けてある。工具交換装置２０は、主軸９の先端に取付けた工具ホルダを他の工具ホルダに交換する。工具ホルダは、工具を装着している。テーブル１０は、ベース２の上部に設けてある。テーブル１０は、ワークを着脱可能に固定する。コラム１６の背面側には、箱状の制御ボックス１９を設けてある。制御ボックス１９は、その内側にマシニングセンタ１の動作を制御する数値制御装置５０（図３参照）を備えている。
【００２９】
次に、テーブル１０の移動機構について説明する。
図２に示すように、サーボモータからなるＸ軸モータ７１（図３参照）はテーブル１０をＸ軸方向（図２の左右方向）へ移動させる。サーボモータからなるＹ軸モータ７２（図３参照）はテーブル１０をＹ軸方向に移動させる。
【００３０】
このＸＹ移動機構について説明する。
１対のＹ軸送りガイドは、ベース２の上側においてベース２の長手方向（前後方向）に沿って延びている。この１対のＹ軸送りガイド上に直方体状の支持台１２を移動可能に支持している。テーブル１０の下側において、支持台１２の上にはＸ軸方向に延びる１対のＸ軸送りガイド（図示略）を設けてある。この１対のＸ軸送りガイドにテーブル１０を移動可能に支持している。
【００３１】
このようなＸＹ移動機構によって、Ｘ軸モータ７１がボールねじ機構を介してテーブル１０をＸ軸送りガイドに沿ってＸ軸方向に移動させる。Ｙ軸モータ７２が支持台１２とテーブル１０をボールねじ機構を介してＹ軸送りガイドに沿ってＹ軸方向に移動させる。
【００３２】
図２に示すように、テレスコピック式に収縮するテレスコピックカバー１３，１４が、テーブル１０の左右両側でＸ軸送りガイドレールを覆っている。テレスコピックカバー１５とＹ軸後カバーとが、支持台１２の前後で夫々Ｙ軸送りガイドレールを覆っている。テレスコピックカバー１３，１４，１５とＹ軸後カバーとは、テーブル１０がＸ軸方向とＹ軸方向の何れの方向に移動した場合でも、Ｘ軸送りガイドレールとＹ軸送りガイドレールを常に覆っている。それ故、テレスコピックカバー１３，１４，１５とＹ軸後カバーは、加工領域から飛散する切粉及びクーラント液等が各ガイドレール上に落下するのを防止する。
【００３３】
次に、主軸ヘッド７の昇降機構について説明する。
図２に示すように、コラム１６の前面側で上下方向に延びるガイドレール（図示略）が、リニアガイドを介して主軸ヘッド７を昇降自在に案内している。ナット（図示略）がコラム１６の前面側に上下方向に延びるように設けたＺ軸モータ７３（図３参照）がＺ軸ねじシャフトを正逆方向に回転駆動することで、主軸ヘッド７は上下方向に昇降駆動する。Ｚ軸制御部６３ａは、数値制御装置５０のＣＰＵ５１からの制御信号に基づいてＺ軸モータ７３を駆動する。Ｚ軸モータ７３が駆動することで、主軸ヘッド７は昇降駆動する。
【００３４】
図２に示すように、工具交換装置２０は、工具マガジン２１と、工具交換アーム２２とを備えている。工具マガジン２１は、工具を支持する工具ホルダを複数格納する。工具交換アーム２２は、主軸９に取付けた工具ホルダと他の工具ホルダとを把持し、且つ搬送して交換する。工具マガジン２１は、その内側に複数の工具ポット（図示略）と、搬送機構（図示略）とを備えている。工具ポットは、工具ホルダを支持する。搬送機構は、工具ポットを工具マガジン２１内で搬送する。
【００３５】
次に、マシニングセンタ１の制御系の電気的構成について説明する。
図３に示すように、数値制御装置５０は、マイクロコンピュータを含んで構成してあり、入出力インタフェース５４と、ＣＰＵ５１と、ＲＯＭ５２と、ＲＡＭ５３と、軸制御部６１ａ〜６４ａ，７５ａと、サーボアンプ６１〜６４と、微分器７１ｂ〜７４ｂなどを備えている。軸制御部６１ａ〜６４ａは、夫々サーボアンプ６１〜６４に接続している。サーボアンプ６１〜６４は、夫々Ｘ軸モータ７１、Ｙ軸モータ７２、Ｚ軸モータ７３、主軸モータ７４に接続している。軸制御部７５ａはマガジンモータ７５に接続している。
【００３６】
Ｘ軸モータ７１、Ｙ軸モータ７２は、夫々、テーブル１０をＸ軸方向、Ｙ軸方向に移動させるものである。Ｚ軸モータ７３は、主軸ヘッド７をＺ軸方向に昇降駆動させるものである。マガジンモータ７５は工具マガジン２１を回転移動させる為のものである。主軸モータ７４は、前記主軸９を回転させる為のものである。以下、Ｘ軸モータ７１、Ｙ軸モータ７２、Ｚ軸モータ７３、及び主軸モータ７４を総称して、モータ７１〜７４という。モータ７１〜７４は、夫々エンコーダ７１ａ〜７４ａを備えている。
【００３７】
軸制御部６１ａ〜６４ａは、ＣＰＵ５１からの移動指令量を受けて、電流指令量（モータトルク指令値）をサーボアンプ６１〜６４に出力する。サーボアンプ６１〜６４は、この指令を受けてモータ７１〜７４に駆動電流を出力する。軸制御部６１ａ〜６４ａは、エンコーダ７１ａ〜７４ａから位置フィードバック信号を受けて、位置のフィードバック制御を行う。微分器７１ｂ〜７４ｂは、エンコーダ７１ａ〜７４ａから入力した位置フィードバック信号を微分して速度フィードバック信号に変換し、軸制御部６１ａ〜６４ａに速度フィードバック信号を出力する。
【００３８】
軸制御部６１ａ〜６４ａは、微分器７１ｂ〜７４ｂから速度フィードバック信号を受けて、速度フィードバックの制御を行う。電流検出器６１ｂ〜６４ｂが、サーボアンプ６１〜６４からモータ７１〜７４に出力した駆動電流を検出する。電流検出器６１ｂ〜６４ｂで検出した駆動電流を、軸制御部６１ａ〜６４ａにフィードバックする。軸制御部６１ａ〜６４ａはフィードバックされた駆動電流に基づいて電流（トルク）制御を行う。
軸制御部７５ａは、ＣＰＵ５１からの移動指令量を受けて、マガジンモータ７５を駆動する。
【００３９】
ＲＯＭ５２は、マシニングセンタ１の加工プログラムを機能させるメインの制御プログラム、図６に示す加工プログラム実行制御の制御プログラム、図７に示す割込み指令入力時における割込み判断制御の制御プログラム、図８に示す割込み処理の制御プログラム等を記憶している。ＲＡＭ５３は、図４に示すワークの加工プログラム、図５に示す割込みプログラム等を記憶している。入出力インタフェース５４は、キーボード８１とディスプレイ８２と割込みスイッチ８３とリミットスイッチ８４に接続している。
【００４０】
次に、加工プログラムと割込みプログラムについて説明する。
数値制御装置５０は、操作パネル８０のディスプレイ８２に表示された加工プログラムに基づいて、機械本体３の動作を制御することによりワークを所望の形状に加工することができる。加工プログラム実行中に割込み指令が入力されたとき、数値制御装置５０は、割込み受付が有効でタップ加工中でない場合、且つ開閉扉５，６が閉状態であることを条件に割込み処理を実行させて割込みプログラムを実行する。図４、図５に示すように、加工プログラムと割込みプログラムはＮＣ言語によって記述されたＮＣプログラムである。このＮＣプログラムは複数のプログラムブロックの配列で構成してある。
【００４１】
各プログラムブロックには、ある特定の１つの動作（移動、停止、主軸回転等）を機械本体３に実行させるのに必要な情報が含まれ、プログラムブロック単位で完全な制御コマンドを構成している。それ故、それらプログラムブロックの制御コマンドに基づいて、機械本体３にある特定の動作を行わせることができる。マシニングセンタ１の加工プログラムは、機械の動作モード（各種位置決定、移動等）を決定するＧコードと、動作以外の補助的な機能を指令するＭコードとを主体に構成してある。
【００４２】
次に、主要なＧコード及びＭコードについて説明する。
「Ｇ０」は位置決めを指令する指令コード、「Ｇ１３３」はタップ加工（正転）を指令する指令コード、「Ｇ１３４」はタップ加工（逆転）を指令する指令コード、「Ｍ９６」は入力された割込み指令の有効化を指令する指令コード（割込み有効化手段に相当する）、「Ｍ９７」は入力された割込み指令の無効化を指令する指令コード（割込み無効化手段に相当する）、「Ｍ０６」は主軸９に装着された工具の交換を指令する指令コード、「Ｍ９９」は割込みプログラムの終了を指令する指令コード、「Ｍ３０」は加工プログラムの終了を指令する指令コードである。
【００４３】
次に、数値制御装置５０が実行する加工プログラム実行制御について、図４の加工プログラム、図５の割込みプログラム、図６〜図８のフローチャートに基づいて説明する。尚、図中Ｓｉ（ｉ＝１，２・・・）は各ステップを示す。
数値制御装置５０が図６に示す加工プログラム実行制御を実行すると、先ず、図４の加工プログラムをＲＡＭ５３からロードし（Ｓ１）、１ブロック解釈を行う（Ｓ２）。割込み受付フラグＦａが０であるので（Ｓ３；Ｎｏ）、Ｓ８へ移行する。ここで、１ブロック目はＧ０の位置決め指令であるので（Ｓ８；Ｎｏ，Ｓ１０；Ｎｏ，Ｓ１３；Ｎｏ）、Ｓ１５へ移行する。Ｓ１５において、位置決め指令による位置決めを行った後Ｓ２へ移行する。
【００４４】
次に、２ブロック目のＧ１３３のタップ加工指令を解釈し（Ｓ２）、前記と同様にＳ３，Ｓ８，Ｓ１０，Ｓ１３を経てタップ加工指令によるタップ加工を実行させた後（Ｓ１５）、Ｓ２へ移行する。以降、前記と同様の処理については説明を省略する。３ブロック目のＧ１３４のタップ加工指令を解釈し（Ｓ２）、タップ加工指令によるタップ加工を実行させる（Ｓ１５）。尚、加工プログラムの１〜３ブロック目に、割込み受付指令Ｍ９６が設定されていないので、１〜３ブロック目の指令を実行中に割込み指令が入力された場合にも、数値制御装置５０は割込み処理を実行させない。
【００４５】
次に、４ブロック目のＭ９６の割込み受付有効指令を解釈し（Ｓ２）、Ｓ３，Ｓ８を経てＳ１０へ移行する。Ｓ１０において、４ブロック目は割込み受付有効指令なので（Ｓ１０；Ｙｅｓ）、割込み受付フラグＦａを１にセットし（Ｓ１１）、Ｍ９６指令で設定された割込みプログラム番号（例えば２０００）をＲＡＭ５３に保存した後（Ｓ１２）、Ｓ２へ移行する。
【００４６】
５ブロック目のＧ０の位置決め指令を解釈すると（Ｓ２）、割込み受付フラグＦａが１なので（Ｓ３；Ｙｅｓ）、Ｓ４へ移行する。Ｓ４において、割込み予約フラグＦｂが０なので（Ｓ４；Ｎｏ）、位置決め指令による位置決めを実行させる（Ｓ１５）。ここで、作業者が割込みスイッチ８３をＯＮすることで、数値制御装置５０に割込み指令が入力されると、数値制御装置５０は図７に示す割込み判断制御を加工プログラム実行制御のバックグランドで実行する。
【００４７】
割込み判断制御を実行すると、先ず割込み受付状態か否か、つまり、割込み受付フラグＦａが１であるか否かを判断する。ここで、割込み受付フラグＦａが１であるので（Ｓ２０；Ｙｅｓ）、開閉扉５，６が閉状態、つまり、リミットスイッチ８４がＯＮであるか否かを判断する。リミットスイッチ８４がＯＮである場合は（Ｓ２１；Ｙｅｓ）、タップ加工実行中であるか否かを判断する。ここではタップ加工を実行させていないので（Ｓ２２；Ｎｏ）、割込み処理を実行させる（Ｓ２４）。一方、リミットスイッチ８４がＯＦＦである場合は（Ｓ２１；Ｎｏ）、今回入力された割込み指令による割込み処理の実行を禁止し、この処理を終了する。
【００４８】
数値制御装置５０が図８に示す割込み処理を実行させると、先ず、実行中の位置決め指令による処理を停止させてから（Ｓ３０）、実行ブロック情報をＲＡＭ５３にバックアップする（Ｓ３１）。実行ブロック情報として、停止させたブロックの指令と、その指令に基づく処理についてどこまで実行させたかを示す実行経過情報をＲＡＭ５３にバックアップする。割込み予約フラグＦｂを０にリセットし（Ｓ３２）、Ｓ１２においてＲＡＭ５３に保存したプログラム番号を参照し、図５に示す割込みプログラムをＲＡＭ５３からロードする（Ｓ３３）。Ｓ３４において割込みプログラムの１ブロック目を解釈する。
【００４９】
Ｓ３５においては、割込みプログラムの１ブロック目がプログラム終了指令であるか否かを判断する。割込みプログラムの１ブロック目は、Ｍ０６の工具交換指令であるので（Ｓ３５；Ｎｏ）、Ｓ３７に移行し、割込みプログラムの１ブロック目がプログラム終了指令であるか否かを判断する。１ブロック目はＭ０６の工具交換指令であるので（Ｓ３７；Ｎｏ）、工具交換指令による工具交換を行ってから（Ｓ４０）、Ｓ３４へ移行する。一方、Ｓ３５において、割込みプログラムの１ブロック目がＭ３０のプログラム終了指令の場合は（Ｓ３５；Ｙｅｓ）、割込み受付フラグＦａを０にリセットした後（Ｓ３６）、この処理を終了する。
【００５０】
次に、割込みプログラムの２ブロック目を解釈し（Ｓ３４）、２ブロック目は割込みプログラム終了指令であるので（Ｓ３７；Ｙｅｓ）、Ｓ３８へ移行する。Ｓ３８において、ＲＡＭ５３にバックアップした実行ブロック情報を参照して、加工プログラムのうち停止させたブロック以降のブロックをロードする（Ｓ３８）。停止させたブロックにおいて、まだ実行させていない残りの処理を実行させた後（Ｓ３９）、Ｓ２へ移行する。
【００５１】
次に、６ブロック目のＧ１３３のタップ加工指令によるタップ加工を実行させている際に（Ｓ１５）、作業者が割込みスイッチ８３より割込み指令を入力した場合を考える。前述したように、数値制御装置５０は加工プログラム実行制御のバックグランドで割込み判断制御を実行する。割込み受付フラグＦａが１であるので（Ｓ２０；Ｙｅｓ）、リミットスイッチ８４がＯＮである場合は（Ｓ２１；Ｙｅｓ）、タップ加工実行中であるか否かを判断する。タップ加工を実行させているので（Ｓ２２；Ｙｅｓ）、ここでは割込み処理を行わずに割込み予約フラグＦｂを１にセットし（Ｓ２３）、この処理を終了する。
【００５２】
加工プログラム実行制御においてタップ加工を終了すると（Ｓ１５）、Ｓ２へ移行し７ブロック目のＧ１３４のタップ加工指令を解釈する（Ｓ２）。割込み受付フラグＦａが１（Ｓ３；Ｙｅｓ）、且つ割込み予約フラグＦｂが１であるので（Ｓ４；Ｙｅｓ）、Ｓ５へ移行する。ここで、７ブロック目はタップ加工指令であるので（Ｓ５；Ｎｏ）、タップ加工指令によるタップ加工を実行させた後（Ｓ１５）、Ｓ２へ移行し８ブロック目のＭ９７の割込み受付無効指令を解釈する（Ｓ２）。
【００５３】
割込み受付フラグＦａが１（Ｓ３；Ｙｅｓ）、且つ割込み予約フラグＦｂが１なので（Ｓ４；Ｙｅｓ）、Ｓ５へ移行する。ここで、８ブロック目はタップ加工指令ではないので（Ｓ５；Ｙｅｓ）、リミットスイッチ８４がＯＮであるか否かを判断する。リミットスイッチ８４がＯＮである場合は（Ｓ６；Ｙｅｓ）、割込み処理を実行させる（Ｓ７）。
【００５４】
数値制御装置５０が割込み処理を実行させると、Ｓ３０において、実行中のブロックに基づく処理を停止させる（Ｓ３０）。ここで、解釈を行ったＭ９７の割込み受付無効指令による処理をまだ行っていないので、この場合は実行中のブロックに基づく処理の停止処理を行わない。Ｓ３１において、実行ブロック情報をＲＡＭ５３にバックアップする。割込み予約フラグＦｂを０にリセットし（Ｓ３２）、割込みプログラムをＲＡＭ５３からロードした後（Ｓ３３）、割込みプログラムの１ブロック目を解釈する（Ｓ３３）。
【００５５】
割込みプログラムの１ブロック目はＭ０６の工具交換指令であるので（Ｓ３５；Ｎｏ）、Ｓ３７に移行し、割込みプログラムの１ブロック目がプログラム終了指令であるか否かを判断する。１ブロック目はＭ０６の工具交換指令であるので（Ｓ３７；Ｎｏ）、工具交換指令による工具交換を行ってから（Ｓ４０）、Ｓ３４へ移行する。
【００５６】
次に、割込みプログラムの２ブロック目を解釈し（Ｓ３４）、２ブロック目は割込みプログラム終了指令であるので（Ｓ３７；Ｙｅｓ）、Ｓ３８へ移行する。Ｓ３８において、加工プログラムのうち停止させたブロック以降のブロックをロードし（Ｓ３８）、停止させたブロックにおいて、まだ実行させていない残りの処理を実行させる（Ｓ３９）。ここでは、Ｍ９７の割込み受付無効指令により割込み受付フラグＦａを０にリセットした後（Ｓ３９）、Ｓ２へ移行する。
【００５７】
次に、９ブロック目のＭ３０の加工プログラム終了指令を解釈し（Ｓ２）、割込み受付フラグＦａが０であるので（Ｓ３；Ｎｏ）、Ｓ８へ移行する。Ｍ３０の加工プログラム終了指令であるので（Ｓ８；Ｙｅｓ）、割込み受付フラグＦａを０にリセットした後（Ｓ９）、この処理を終了する。尚、Ｓ２２を実行する数値制御装置５０が加工判断手段に相当し、Ｓ４，Ｓ２３，Ｓ３０〜Ｓ４０を実行する数値制御装置５０が割込み処理実行手段に相当し、Ｓ６，Ｓ２１を実行する数値制御装置５０が割込み処理禁止手段に相当する。
【００５８】
次に、以上説明したマシニングセンタ１及びその割込み処理方法の作用、効果について説明する。
数値制御装置５０がタップ加工中であると判断した場合は、タップ加工終了後に割込み指令による割込み処理を実行させるので、タップ加工中に工具交換のための割込み指令が入力された場合はタップ加工中に割込み指令による割込み処理を実行させない。それ故、ワークに食い込んだタップ工具を無理に引き抜くことなく、主軸ヘッド７を昇降させるＺ軸モータ７３に大きな負荷が掛かるのを防止できるので、割込み指令が入力された際の安全性を確保することができる。また、数値制御装置５０がタップ加工中でないと判断した場合は、実行中のブロックに基づく処理を即座に停止した後割込み指令による割込み処理を実行させるので、迅速な割込み処理を行うことができる。
【００５９】
開閉扉５，６の開閉状態を検知するリミットスイッチ８４を設け、リミットスイッチ８４により開閉扉５，６が開状態であると検知された場合は、数値制御装置５０が割込み指令による割込み処理の実行を禁止するので、プログラム検証時や機械メンテナンス時などに開閉扉５，６を開けた状態で誤って割込み指令を入力した場合にも、スプラッシュカバー４内で作業を行っている作業者の安全性を確保することができる。
【００６０】
入力された割込み指令を有効化する割込み受付有効指令Ｍ９６と、入力された割込み指令を無効化する割込み受付無効指令Ｍ９７とを加工プログラムに設定可能にしたので、作業者が加工プログラムの所望のブロックで割込み処理を許可又は禁止することで、割込み指令が入力された際の安全性を一層高めることができる。
【００６１】
次に、前記実施例を部分的に変更した変更例について説明する。
１］Ｓ２２において、数値制御装置５０がタップ加工実行中であると判断した場合にＧ１３４のタップ加工指令（逆転）を実行させて、ワークに食い込んだタップ工具を安全に引き抜いてから、割込み処理を実行させることも可能である。この場合、割込み指令が入力された際の安全性を確保しつつ迅速な割込み処理を行うことができる。
【符号の説明】
【００６２】
１        マシニングセンタ
３        機械本体
４        スプラッシュカバー
５，６    開閉扉
５０      数値制御装置
８４      リミットスイッチ
【図１】
2010198432.tif 000003
【図２】
2010198432.tif 000004
【図３】
2010198432.tif 000005
【図４】
2010198432.tif 000006
【図５】
2010198432.tif 000007
【図６】
2010198432.tif 000008
【図７】
2010198432.tif 000009
【図８】
2010198432.tif 000010