(57)【要約】【課題】簡易な構成で容易かつ正確に工具使用に関する情報を管理できる工具寿命管理装置を得ること。【解決手段】Ｇコード等の制御指令コードで記述された加工プログラム３３に基づいて所定の装置を制御するとともに、加工プログラム３３に基づいて所定の装置で用いる工具毎の使用回数を工具寿命として管理する情報管理装置１において、所定の加工条件を指定する付加条件情報および制御指令コードに基づいて、加工プログラム３３から工具の使用回数をカウントする解析／設定部１３、ブロック処理部１４を備える。【選択図】        図１
2007021656.tif 000002
【特許請求の範囲】
【請求項１】
制御指令コードで記述されたプログラムに基づいて所定の装置を制御するとともに、前記プログラムに基づいて前記所定の装置で用いる工具毎の使用回数を工具寿命として管理する工具寿命管理装置において、
所定の加工条件を指定する付加条件情報および前記制御指令コードに基づいて、前記プログラムから前記工具の使用回数をカウントするカウント処理部を備えることを特徴とする工具寿命管理装置。
【請求項２】
所定の前記制御指令コードと対応付けされた第１の識別情報および前記付加条件情報を記憶する記憶部をさらに備え、
前記カウント処理部は、前記記憶部が記憶する第１の識別情報および付加条件情報に基づいて、前記プログラム内から前記第１の識別情報および付加条件情報に対応する前記制御指令コードおよび前記加工条件を抽出し、当該制御指令コードおよび加工条件を抽出できた場合に前記工具の使用回数をカウントすることを特徴とする請求項１に記載の工具寿命管理装置。
【請求項３】
前記付加条件情報は、前記加工条件として前記工具の切削移動に関する指令情報および／または前記工具の主軸の回転方向に関する指令情報を含むことを特徴とする請求項１または２に記載の工具寿命管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被加工物の加工を行う工具に関する情報を、加工プログラムに基づいて管理する工具寿命管理装置に関するものである。
【背景技術】
【０００２】
被加工物の加工処理（穴あけ）等を行う加工処理装置等は、数値制御装置によって制御されている。このような加工処理装置においては、複数の工具が複数の条件によって動作し、被加工物に種々の加工処理を行っている。被加工物を加工する工具は、被加工物の穴あけ処理等の回数に応じて劣化するものである。このため、各工具には工具寿命があり、それぞれの工具寿命を適切に管理することが望まれている。このような工具の工具寿命を、加工処理装置等を動作制御するための加工プログラムに基づいて管理する技術がある。
【０００３】
従来の数値制御装置における穴加工用の工具寿命管理方法は、穴あけ動作させるＧコードのみを加工プログラムから抽出し、Ｇコードが指令された回数に基づいて工具の寿命を管理するように構成されている。そして、実加工の実施前に加工工具の寿命の良否を判断して警告表示するように動作している（例えば、特許文献１，２参照）。
【０００４】
【特許文献１】特開平５−８８７２９号公報
【特許文献２】特開２０００−２４６５８６公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、上記従来の技術では、穴あけ動作であるＧコードのみを抽出して工具の寿命を判定しているので、同期タップサイクル、深穴ドリルサイクル等の複数の種類の穴あけ動作を監視するためには、穴あけ動作を監視するためのラダープログラムやシステムソフトウェアの処理をその都度修正しなければならないといった問題点があった。
【０００６】
また、固定サイクルやマクロプログラム等で記述された加工プログラムの場合には、１つの指令で複数の穴あけ動作を行うものがあり、Ｇコード指令の指令回数のみをカウントすると実際の穴加工回数よりも少なくカウントされてしまうといった問題点があった。
【０００７】
本発明は、上記に鑑みてなされたものであって、簡易な構成で容易かつ正確に工具使用に関する情報を管理できる工具寿命管理装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、制御指令コードで記述されたプログラムに基づいて所定の装置を制御するとともに、前記プログラムに基づいて前記所定の装置で用いる工具毎の使用回数を工具寿命として管理する工具寿命管理装置において、所定の加工条件を指定する付加条件情報および前記制御指令コードに基づいて、前記プログラムから前記工具の使用回数をカウントするカウント処理部を備えることを特徴とする。
【発明の効果】
【０００９】
この発明によれば、所定の加工条件を指定する付加条件情報および制御指令コードに基づいてプログラムから工具の使用回数をカウントするので、簡易な構成で工具使用に関する情報を正確に管理することが可能になるという効果を奏する。
【発明を実施するための最良の形態】
【００１０】
以下に、本発明にかかる工具寿命管理装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１１】
実施の形態
まず、本実施の形態にかかる情報管理装置（工具寿命管理装置）の概念について説明する。情報管理装置１は、被加工物の加工処理を行なう加工処理装置（工作機械）等の工具寿命に関する情報を管理する装置である。本実施の形態においては、情報管理装置１に、工具使用回数を計測するＧコードを予めパラメータ等によって設定しておく。そして、切削送り時、主軸正転時（主軸逆転時）等の加工処理に対する付加条件を予め設定しておき、これらの付加条件を満たした際に工具の使用回数をカウントする。
【００１２】
図１は、実施の形態にかかる情報管理装置の概念を説明するための説明図である。情報管理装置１は、工具の種類毎、工具の処理工程毎に予め設定した条件に基づいて、工具寿命を判定する。なお、ここでの解析／設定部１３、ブロック処理部１４が特許請求の範囲に記載のカウント処理部に対応する。
【００１３】
情報管理装置１へは、工具寿命を判定するための情報（設定条件情報３１）を予め入力しておき、記憶部１２に記憶させておく（１）。設定条件情報３１は、工具を識別する情報、Ｇコードに対応する工具寿命の判定方法を識別する情報、工具の使用回数をカウントする条件に関する情報、工具毎の寿命に関する情報等を含んで構成されている。
【００１４】
情報管理装置１が、図示しない加工処理装置の駆動手段（工具等の駆動手段）を制御する際、被加工物を加工するための加工プログラム３３（Ｇコード等の制御指令コードで記述されたプログラム）を入力する。
【００１５】
解析／設定部１３は、外部から入力された設定条件情報３１、加工プログラム３３を解析し（２）、設定条件情報３１、加工プログラム３３に基づいて、工具寿命を判定するための種々の設定を行なう。具体的には、解析／設定部１３は、工具寿命を判定するため、工具の使用回数をカウントするための条件設定等を行なう（３）。
【００１６】
ブロック処理部１４は、解析／設定部１３によって設定された条件に基づいて、加工プログラム３３のブロック毎に工具が使用された使用回数をカウントする（４）。そして、工具寿命判定部１５は、ブロック処理部１４によってカウントされた工具の使用回数、予め記憶しておいた設定条件情報３１内の工具寿命に基づいて、使用されている工具が寿命であるか否かを判定する（５）。
【００１７】
警告処理部１６は、工具寿命判定部１５の判定結果（工具が寿命であるか否か）に基づいて、工具が寿命であることを示す情報（警告メッセージ等）を外部装置や液晶モニタ等の表示手段（図示せず）に送信する。
【００１８】
ここで、実施の形態における工具寿命の判定方法と従来用いられていた工具寿命の判定方法の差異を明確にするため、従来用いられていた工具寿命の判定方法の問題点を説明する。
【００１９】
工具寿命の判定に用いる条件の従来の方法として、例えば工具の使用時間で工具寿命を判定する方法や工具の使用回数で工具寿命を判定する方法がある。工具の使用時間で工具寿命を判定する場合、例えば加工プログラム３３内のＧ０１等のＧコードで指令されている切削送りの時間のみをカウントし、カウントした切削送り時間が予め設定しておいた工具寿命の最大値を超えた時に工具が寿命に達したと判断する。
【００２０】
また、工具の使用回数で工具寿命を判定する場合、例えば工具が主軸に装着される回数で工具の寿命を判定する。すなわち、加工プログラム３３内のＴ指令（工具の指定）等に基づいて主軸に装着する工具を割り出した後、加工プログラム３３からＭ０６指令（工具交換指令）を抽出した時に主軸に工具が装着されたと判断して使用回数を１回分カウントする。このとき、次の工具交換が実施されるまでは使用回数をカウントアップしない。そして、カウントアップした工具の装着回数が、予め設定しておいた工具寿命の最大値を超えた時に、工具が寿命に達したと判断する。
【００２１】
ところで、加工プログラム３３等のプログラムにおいては、穴あけ加工として、例えば同期タップ指令等によって１つの動作で２回の切削送り（Ｇ０１）を指令する場合や、固定サイクルやマクロプログラム等によって１つの指令で複数の穴あけ動作を指令する場合がある。
【００２２】
図２は、同期タップ指令を説明するための図である。同図に示す同期タップ指令（Ｇ８４）では、Ｇ００指令によってＸ軸＝ｘ１，Ｙ軸＝ｙ１に位置決め（早送り）を行なうとともに（１１）、Ｇ００指令によってＺ軸＝ｒ１に位置決めを行なっている（１２）。そして、Ｇ０１指令によってＺ軸＝ｚ１の位置にｆ１の送り速度で切削送り（穴あけ処理）を行い（１３）、Ｇ０４指令によって穴底位置でｐ１のドウェル時間だけ停止する（１４）。
【００２３】
この後、Ｍ０４指令によって主軸逆転を行うとともに（１５）、Ｇ０１指令によってＺ軸＝−ｚ１の位置にｆ１の送り速度で切削送りを行い（１６）、Ｇ０４指令によって穴底位置でｐ１のドウェル時間だけ停止する（１７）。
【００２４】
そして、Ｍ０３指令によって主軸正転を行ない（１８）、Ｇ９８モードまたはＧ９９モードによる処理を行なう（１９）。ここでのＧ９８モードは、Ｇ００指令によってＺ軸＝−ｒ１に移動を行なう処理であり、Ｇ９９モードは移動なしである。
【００２５】
このような、同期タップ指令においては、１つの穴あけ動作で（１３）の処理と（１６）の処理の２回の切削送り（Ｇ０１指令）がある。このため、Ｇ０１指令の回数に基づいて穴あけ処理をカウントする従来の方法では、穴あけ回数が「２回」と判定されてしまう。
【００２６】
そして、これを回避するために、Ｇ８４指令（タッピングサイクル）の回数のみをカウントする方法がある。しかしながら、Ｇ８４指令の回数のみをカウントする場合であっても、固定サイクル等によって１つの指令で複数の穴あけ動作（例えば、グリッド状の穴あけ処理）を指令する場合には、穴あけの回数を適切にカウントすることができなくなる。
【００２７】
ここで、グリッド状の穴あけ処理について説明する。図３は、グリッド状の穴あけ処理を説明するための説明図である。同図に示すように、グリッド状の穴あけ処理は、例えば図内のＸ方向およびＹ方向に等間隔（例えば５０ｍｍ間隔）で複数個（例えば、Ｘ方向に１０個、Ｙ方向に５個）並んだ穴を加工する処理である。そして、このようなグリッド状の穴あけ処理に対しては、固定サイクル等によって１つのＧ３７．１指令等で複数の穴あけ処理が行われる。
【００２８】
図４は、Ｇ３７．１指令によるグリッド状の穴あけ処理のプログラムの一例を示す図である。Ｇ３７．１指令によるグリッド状の穴あけ処理は、工具をＺ軸の第２原点へ移動させ（Ｇ９１  Ｇ３０  Ｚ０）、次にＸ軸、Ｙ軸を第２原点に移動させる（Ｇ３０  Ｘ０  Ｙ０）。
【００２９】
つぎに、工具番号「１」の工具を呼び出し（Ｔ１）、工具交換を行って主軸に取り付ける（Ｍ６）。つぎに、絶対値指令でＸ＝１５０ｍｍ、Ｙ＝５０ｍｍの位置に位置決めを行なう（Ｇ９０  Ｇ０  Ｘ１５０  Ｙ５０）。つぎに、工具の長さを考慮してＺ軸を工具の先端が５０ｍｍの位置となるよう移動させ（Ｇ４３  Ｚ５０  Ｈ１）、主軸３０００回転で正転する（Ｓ３０００  Ｍ３）。
【００３０】
そして、プログラム５１で示す処理を行なう。すなわち、送りＦ２０でタップ加工（Ｇ９１、Ｇ８４）を指令し、図３に示したタップ加工を繰り返す（Ｇ３７．１  Ｘ２００  Ｙ１００  Ｉ５０  Ｊ５０  Ｐ１０  Ｋ５）。例えば、Ｇ３７．１指令によって始点からＸ方向に２００ｍｍ、Ｙ方向に１００ｍｍだけ離れた位置（Ｘ２００、Ｙ１００）を基準の穴として、Ｘ方向に５０ｍｍ、Ｙ方向に５０ｍｍの間隔（Ｉ５０、Ｊ５０）で並ぶグリッド状の穴であって、Ｘ方向に１０個ずつ、Ｙ方向に５個ずつ並ぶ穴（Ｐ１０、Ｋ５）を加工する。その後、タップ加工モードをキャンセルする（Ｇ８０）。
【００３１】
つぎに、Ｚ軸を５０ｍｍの位置に引き戻し（Ｇ１  Ｚ５０  Ｆ１００）、主軸の回転を止める（Ｍ５）。つぎに、Ｚ軸をリファレンス点に移動し（Ｇ９１  Ｇ２８  Ｚ０）、Ｘ軸、Ｙ軸をリファレンス点に移動し（Ｇ２８  Ｘ０  Ｙ０）、プログラムを終了する（Ｍ３０）。
【００３２】
このような加工プログラム３３内のＧ８４指令の回数のみをカウントする場合であっても、グリッド状の穴あけ指令の場合、１つのＧ３７．１指令によって複数の穴あけ処理が実行されるため穴あけの回数を適切にカウントすることができなくなる。
【００３３】
そこで、本実施の形態にかかる情報管理装置１は、Ｇ３７．１等の１つのＧコード指令によって複数個の穴あけ動作をする場合の処理に対して工具寿命の判定を行なう。具体的には、Ｇ３７．１指令等のＧコードによって穴あけ処理を行なう場合、Ｇ３７．１のＧコードが指令された回数のみをカウントする。そして、Ｇ３７．１が指令された回数をカウントする際の条件として、「Ｇ３７．１」が指令されたグリッド加工内の正回転または逆回転の一方のみの切削送りを、工具の使用回数としてカウントアップする。
【００３４】
図５は、Ｇ３７．１を展開したプログラムの一例である。Ｇ３７．１においては、まずＸ軸をｘ１、Ｙ軸をｙ１に移動させる（Ｇ００  Ｘｘ１  Ｙｙ１）。つぎに、ｎｙをコモン変数＃１００にコピーし（＃１００＝＃６）、Δｘをコモン変数＃２００にコピーする（＃２００＝＃４*）。
【００３５】
そして、＃２００の処理として、＃１００の値から１を引き、＃１００に格納する（＃１００＝＃１００−１）。＃１００の値が０より小さい場合はＮ５００にジャンプする（ＩＦ［＃１００  ＬＴ  ０］ＧＯＴＯ５００）。そして、ｎｘをコモン変数＃１０１にコピーする（＃１０１＝＃１６）。
【００３６】
つぎに、＃３００の処理として、＃１０１の値から１を引き、＃１０１に格納する（＃１０１＝＃１０１−１）。＃１０１の値が０よりも小さい場合はＮ４００にジャンプする（ＩＦ［＃１０１  ＬＴ  ０］ＧＯＴＯ４００）。つぎに、タップ加工モードでＺ軸をｚ１に移動し、図２で説明した（１３）〜（１８）の処理を行う。すなわち、（Ｇ１  Ｚｚ１  Ｆｆ１）、（Ｇ４  Ｐｐ１）、（Ｍ４）、（Ｇ１  Ｚ−ｚ１  Ｆｆ１）、（Ｇ４  Ｐｐ１）、（Ｍ３）の各処理（Ｇ８４  Ｚｚ１  Ｒｒ１  Ｆｆ１  Ｌ０）を行う。つぎに、Δｘ移動し（Ｇ０Ｘ［＃２００］）、Ｎ３００にジャンプする（ＧＯＴＯ３００）。つぎに、＃４００の処理として、Δｙ移動して（Ｇ０Ｙ［＃５］）、Ｘ軸方向を反転し（＃２００＝＃２００*−１）、Ｎ２００にジャンプする（ＧＯＴＯ２００）。
【００３７】
これにより、Ｇ３７．１指令の穴あけ動作時のＧ８４は、図２で説明した２つの切削送り（１３）、（１６）で実行されるが、後述する図７に示すようにＧ８４をＧ８４が指令された際に工具の使用回数として１回カウントアップする条件に設定し、かつＧ３７．１を主軸が正転（または逆転）している場合に工具の使用回数として１回カウントアップする条件を付加することによって、１つの指令で複数の穴あけ動作が行われる場合であっても正しい工具の使用回数をカウントすることが可能となる。
【００３８】
つぎに、本実施の形態にかかる情報管理装置１の構成について説明する。図６は、本発明の実施の形態にかかる情報管理装置の構成を示すブロック図である。情報管理装置１は、加工プログラム３３や工具による加工実績（穴あけ加工の履歴）に基づいて、工具寿命等の管理を行う装置（コンピュータ等）であり、入力部１１、記憶部１２、解析／設定部１３、ブロック処理部１４、工具寿命判定部１５、警告処理部１６からなる。
【００３９】
入力部１１は、マウス、キーボード等の情報入力手段を備えて構成され、被加工物の加工を行うための加工プログラム３３、工具が寿命であるか否かを判定するための設定条件情報３１等を入力する。加工プログラム３３は、加工機械および／またはＣＮＣ（Computerized Numerical Control）の機能モードを決める情報（Ｇコード）や被加工物を加工する工具を識別する情報（工具番号）等を含んでおり、設定条件情報３１は工具の使用回数、使用時間をカウントして工具寿命を判定するための情報（パラメータデータ）を含んでいる。記憶部１２は、入力部１１に入力された設定条件情報３１等を記憶する。
【００４０】
解析／設定部１３は、外部から入力された設定条件情報３１、加工プログラム３３を解析するとともに、設定条件情報３１、加工プログラム３３に基づいて工具寿命を判定するための種々の設定（工具の使用回数をカウントするための条件設定等）を行なう。解析／設定部１３は、所定の周期毎に処理の実行を行なうブロック処理部１４から起動される。解析／設定部１３は、寿命管理対象フラグ２１、付加条件設定フラグ２２を備えている。
【００４１】
寿命管理対象フラグ２１は、実行中の加工プログラム３３が、設定条件情報３１によって設定されている付加条件（切削送り時、主軸正転時、主軸逆転時）等を満たした場合に工具の使用回数をカウントするＧコードであるか否かを示すフラグである。付加条件設定フラグ２２は、設定条件情報３１内の付加条件を設定するフラグである。
【００４２】
ブロック処理部１４は、解析／設定部１３によって設定された工具寿命の判定条件（寿命管理対象フラグ２１、付加条件設定フラグ２２）に基づいて、加工プログラム３３のブロック毎に工具の使用回数をカウントする。ブロック処理部１４は、加工プログラム３３による被加工物の加工処理中に所定の周期（例えば５ｍｓｅｃ毎）で工具の使用回数をカウントする。
【００４３】
工具寿命判定部１５は、ブロック処理部１４によってカウントされた工具の使用回数、予め記憶部１２に記憶させておいた設定条件情報３１に基づいて、使用されている工具が寿命であるか否かを判定する。工具寿命判定部１５は、加工プログラム３３による被加工物の加工処理中に所定の周期（例えば５ｍｓｅｃ毎）で工具寿命の判定を行なう。
【００４４】
警告処理部１６は、工具寿命判定部１５の判定結果に基づいて、工具寿命に関する警告メッセージ等を液晶モニタ等の表示手段に送信する。警告処理部１６は、工具寿命判定部１５が工具の寿命であると判断した際に、工具寿命に関する警告処理を行なう。
【００４５】
つぎに、情報管理装置１の動作処理手順について説明する。ここでは、情報管理装置１の動作処理手順として、解析／設定部１３による工具使用回数のカウント設定の手順とブロック処理部１４による工具使用回数のカウント処理の手順について説明する。情報管理装置１へは、予め設定条件情報３１を入力部１１から入力し、記憶部１２に記憶させておく。ここで、設定条件情報３１の構成および関係を説明する。
【００４６】
図７は、設定条件情報の一例を示す図である。設定条件情報３１は、「工具番号」、「ＳＴ」、「方式」、「Ｇコード」、「切削」、「Ｍ０３／Ｍ０４」、「寿命」、「使用時間」に関する情報がそれぞれ対応付けされた情報テーブルである。なお、ここでの「方式」や「Ｇコード」が特許請求の範囲に記載の第１の識別情報に対応し、「切削」や「Ｍ０３／Ｍ０４」が付加条件情報に対応する。
【００４７】
「工具番号」は、加工処理装置が被加工物を加工する際に用いる工具を識別するための情報である。「工具番号」は、工具毎に識別可能な所定の番号等が割り当てられる。「ＳＴ」は、工具の使用状態や使用履歴に関するステータスコードである。「ＳＴ」が「０」の場合は未使用の工具を示し、「ＳＴ」が「１」の場合は使用中の工具であることを示し、「ＳＴ」が「２」の場合は寿命の過ぎた工具であることを示す。
【００４８】
「方式」は、工具寿命の判定方法を示す情報である。「方式」が「０」の場合は工具の使用時間（切削送りをしている時間）に基づいて工具寿命を判定し、「方式」が「１」の場合は工具が主軸に装着される回数を（主軸工具となる回数）に基づいて工具寿命を判定し、「方式」が「２」の場合は「Ｇコード」で所定のＧコードが指定された回数に基づいて工具寿命を判定することを示す。すなわち、「方式」が「２」の場合はパラメータ登録によるＧコード比較方式（Ｇコード指定タイプ）によって工具寿命を判定することを示す。
【００４９】
ここでの、パラメータ登録によるＧコード比較方式は、所定のＧコードが指定された場合に、工具の使用回数をカウントするための所定の条件（付加条件）に基づいて、工具寿命を判定することを示す。例えば、Ｇ３７．１指令が行なわれた場合であって、主軸正転時の切削送り毎に工具の使用回数をカウントし工具寿命を判定する。
【００５０】
「Ｇコード」は、「方式」の「２」で設定される工具寿命の判定方法に対応するＧコードである。例えば、「Ｇコード」が「３７．１」、「８４」、「３４」のときにＧ３７．１指令、Ｇ８４指令、Ｇ３４指令が指定された回数に基づいて工具寿命を判定する。なお、ここでのＧ３４指令は、ボルトホールサークルであり、Ｇ８４指令等の固定サイクルと組合わせて使用されるものである。具体的には、Ｇ３４は、ボルトホールサークルの中心位置から半径ｒの円周上で、Ｘ軸と角度θをなす点を始点として円周をｎ（ｎは自然数）等分してｎ個の穴明けを加工する指令である。なお、Ｇ３７．１指令、Ｇ８４指令、Ｇ３４指令が指定された回数に基づいて工具寿命を判定する際、設定条件情報３１の「切削」や「Ｍ０３／Ｍ０４」を考慮して工具寿命を判定する。また、「Ｇコード」で「０」が指定された場合は「方式」で指定される工具寿命の判定方法を用いる。
【００５１】
「切削」は、工具の使用回数をカウントする際の切削に関する条件である。「切削」において「０」が指定された場合は指定Ｇコードが指令された際に、工具の使用回数を１回カウントアップする。「切削」において「１」が指定された場合は、指定Ｇコードの中から切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップする。
【００５２】
「Ｍ０３／Ｍ０４」は、工具の使用回数をカウントする際の主軸の回転方向に関する条件である。「Ｍ０３／Ｍ０４」において「１」が指定された場合は、「切削」で「１」が指定された場合であって指定Ｇコードの中から主軸正転（Ｍ０３）の切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップする。
【００５３】
「Ｍ０３／Ｍ０４」において「２」が指定された場合は、「切削」で「１」が指定された場合であって指定Ｇコードの中から主軸逆転（Ｍ０４）の切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップする。
【００５４】
「Ｍ０３／Ｍ０４」において「０」が指定された場合は、「切削」で指定された条件に基づいて工具の使用回数を１回カウントアップする。すなわち、「切削」で「１」が指定された場合は、指定Ｇコードの中から主軸正転（主軸逆転）の切削送りが指定される毎に工具の使用回数を１回カウントアップする。また、「切削」で「０」が指定された場合は、「Ｇコード」で所定のＧコードが指定された際に、工具の使用回数を１回カウントアップする。
【００５５】
例えば、「工具番号」が「２」〜「４」の場合、方式「２」によって工具寿命を判定する。そして、「工具番号」が「２」の場合、Ｇ３７．１が指令されて、かつ主軸正転時に切削送りのＧコードが指令される毎に「工具番号」が「２」の工具の使用回数を１回カウントアップされる。
【００５６】
また、「工具番号」が「３」の場合、Ｇ８４が指令された際に、工具の使用回数が１回カウントアップされる。また、「工具番号」が「４」の場合、Ｇ３４が指令されて、指定Ｇコードの中から主軸正転または主軸逆転の切削送りのＧコードが指定される毎に工具の使用回数が１回カウントアップされる。
【００５７】
「寿命」は、工具の寿命に関する設定情報である。「寿命」は、工具の最大寿命の使用回数（例えば、工具番号が「５」の場合は２００回）または工具の最大寿命の使用時間（例えば、工具番号が「１」の場合は６６０分）を示している。なお、以下の説明では説明の便宜上、「方式」、「Ｇコード」、「切削」、「Ｍ０３／Ｍ０４」の項目をまとめて寿命管理データ６０という場合がある。「使用時間」は、工具の使用合計時間に関する情報である。「使用時間」は、設定条件情報３１が入力部１１に入力された後、工具の使用時間に応じて、情報管理装置１内で書き換えられていくものである。
【００５８】
図８は、解析／設定部による工具使用回数のカウント設定の手順を示すフローチャートである。情報管理装置１の記憶部１２へ、設定条件情報３１記憶させた後、加工プログラム３３を入力部１１から入力する。図示しない加工装置は、加工プログラム３３に基づいて、サーボ／主軸モータ等に被加工物の加工処理を開始させる。
【００５９】
加工プログラム３３による被加工物の加工処理が開始されると、ブロック処理部１４は解析／設定部１３を起動させる。解析／設定部１３は、図示しない加工処理装置等が現在実行中の加工プログラム３３から、次に加工処理を行なうための１ブロックデータを読み出す（ステップＳ１００）。
【００６０】
解析／設定部１３は、読み出した１ブロックのデータから現在主軸に装着されている工具の「工具番号」を抽出し、この「工具番号」に対応する設定条件情報３１内の情報（寿命管理データ６０）を、記憶部１２から取得する（ステップＳ１０１）。
【００６１】
解析／設定部１３は、記憶部１２から取得した設定条件情報３１に基づいて、現在主軸に装着されている工具に対応する「方式」が「２」であるか（パラメータ登録によるＧコード比較方式（Ｇコード指定タイプ））であるか否かを判断する（ステップＳ１０２）。
【００６２】
「方式」が「０」や「１」であり、パラメータ登録によるＧコード比較方式ではない場合（ステップＳ１０２、Ｎｏ）、解析／設定部１３はパラメータ登録によるＧコード比較方式による工具寿命の判定を終了し、「方式」で指定される情報に基づいて工具の使用時間または工具の使用回数で工具寿命を判定する。
【００６３】
「方式」が「２」であり、パラメータ登録によるＧコード比較方式である場合（ステップＳ１０２、Ｙｅｓ）、解析／設定部１３は既に前回ブロックの工具寿命判定処理において寿命管理対象フラグ２１がオフになっているか否かを判別する(ステップＳ１０３）。
【００６４】
解析／設定部１３が、寿命管理対象フラグ２１がオフになっていると判断した場合（ステップＳ１０３、Ｙｅｓ）、解析／設定部１３は、読み出した１ブロックデータと設定条件情報３１のＧコード（「方式」で指定されるＧコード）を比較する（ステップＳ１０４）。
【００６５】
そして、解析／設定部１３は、読み出した１ブロックデータと設定条件情報３１の「方式」の「２」で指定されるＧコードが一致するか否かを判断する（ステップＳ１０５）。具体的には、読み出した１ブロックデータにＧ３７．１指令。Ｇ８４指令、Ｇ３４指令等が含まれるか否かが判断される。
【００６６】
解析／設定部１３が、読み出した１ブロックデータと設定条件情報３１の「方式」で指定されるＧコードが一致すると判断すると（ステップＳ１０５、Ｙｅｓ）、解析／設定部１３は寿命管理対象フラグ２１をオンに設定する（ステップＳ１０６）。
【００６７】
一方、ステップＳ１０３の処理において、解析／設定部１３が寿命管理対象フラグ２１はオフになっていないと判断した場合には（ステップＳ１０３、Ｎｏ）、加工処理（読み出したブロック）が固定サイクル中やマクロプログラム中か否かを判断する（ステップＳ１１１）。
【００６８】
加工処理が固定サイクル中またはマクロプログラム中でない場合（ステップＳ１１１、Ｎｏ）、解析／設定部１３はステップＳ１０４，Ｓ１０５の処理を行なう。すなわち、解析／設定部１３は、読み出した１ブロックデータと設定条件情報３１のＧコードを比較し、これらが一致するか否かを判断する。
【００６９】
そして、解析／設定部１３が、読み出した１ブロックデータと設定条件情報３１の「方式」の「２」で指定されるＧコードが一致すると判断すると（ステップＳ１０５、Ｙｅｓ）、解析／設定部１３は寿命管理対象フラグ２１をオンに設定する（ステップＳ１０６）。
【００７０】
これにより、ブロック処理部１４は、寿命管理対象フラグ２１に基づいて、実行中の加工プログラム３３が付加条件（切削送り時、主軸正転時、主軸逆転時）等を満たした場合に工具の使用回数をカウントするＧコードであるか否かを判断することが可能となる。
【００７１】
なお、１ブロック内の指令がＧ３７．１指令の場合、Ｇ３７，１指令は複数ブロックの指令を１つにまとめた指令であるため、固定サイクルの指令が終わるまでは寿命管理対象フラグ２１をオンし続けておく。そして、解析／設定部１３による工具のカウント設定処理が、対象Ｇコード指令の範囲ではなくなった時点で寿命管理対象フラグ２１をオフする。
【００７２】
ステップＳ１１１の処理において、解析／設定部１３が、加工処理は固定サイクル中またはマクロプログラム中であると判断した場合（ステップＳ１１１、Ｙｅｓ）、解析／設定部１３は寿命管理対象フラグ２１をオンに設定する（ステップＳ１０６）。
【００７３】
ステップＳ１０６の処理の後、解析／設定部１３は設定条件情報３１内の付加条件（「切削」、「Ｍ０３／Ｍ０４」）が設定されているか否かを判断する（ステップＳ１０７）。具体的には、設定条件情報３１内の「切削」に「１」が設定されているか否か、「Ｍ０３／Ｍ０４」に「１」または「２」が設定されているか否かが判断される。
【００７４】
解析／設定部１３が、設定条件情報３１内に付加条件が設定されていると判断すると（ステップＳ１０７、Ｙｅｓ）、設定条件情報３１内の付加条件を付加条件設定フラグ２２に設定して解析／設定部１３による寿命管理対象フラグ２１、付加条件設定フラグ２２の設定処理を終了する（ステップＳ１０８）。
【００７５】
付加条件設定フラグ２２へは、設定条件情報３１内の付加条件として、例えば指定Ｇコードの中から切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップすること（「切削」の「１」に対応）、かつ指定Ｇコードの中から主軸正転（Ｍ０３）の切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップすること（「Ｍ０３／Ｍ０４」）の「１」に対応）等が設定される。
【００７６】
これにより、ブロック処理部１４は、付加条件設定フラグ２２に基づいて、実行中の加工プログラム３３が付加条件（切削送り時、主軸正転時、主軸逆転時）等を満たすか否かを判断することが可能となる。
【００７７】
一方、解析／設定部１３が、設定条件情報３１内に付加条件が設定されていないと判断すると（ステップＳ１０７、Ｎｏ）、そのまま解析／設定部１３による寿命管理対象フラグ２１、付加条件設定フラグ２２の設定処理を終了する（ステップＳ１０８）。
【００７８】
ステップＳ１０５の処理において、解析／設定部１３が、読み出した１ブロックデータと設定条件情報３１の「方式」で指定されるＧコードが一致しないと判断すると（ステップＳ１０５、Ｎｏ）、解析／設定部１３は寿命管理対象フラグ２１をオフに設定（クリア）する（ステップＳ１０９）。そして、解析／設定部１３は付加条件設定フラグ２２に設定されている付加条件データをクリアし（ステップＳ１１０）、解析／設定部１３による寿命管理対象フラグ２１、付加条件設定フラグ２２の設定処理を終了する（ステップＳ１０８）。
【００７９】
解析／設定部１３によって設定された寿命管理対象フラグ２１、付加条件設定フラグ２２内の情報は、１ブロック毎に１つのデータとして作成される加工プログラム３３の１ブロック解析データとして、ブロック処理部１４に送られる。
【００８０】
図９は、ブロック処理部による工具使用回数のカウント処理の手順を示すフローチャートである。ブロック処理部１４は、解析／設定部１３が読み出した加工プログラム３３の１ブロック（図８のステップＳ１００）が、初めてカウント処理の実行されるブロックであるか否かを判定する（ステップＳ２００）。
【００８１】
解析／設定部１３が読み出した加工プログラム３３の１ブロックが、初めてカウント処理の実行されるブロックでない場合（既に工具使用回数のカウント処理が完了したブロックである場合）（ステップＳ２００、Ｎｏ）、ブロック処理部１４はこの１ブロックの工具使用回数のカウント処理を終了する。
【００８２】
一方、解析／設定部１３が読み出した加工プログラム３３の１ブロックが、初めてカウント処理の実行されるブロックである場合（ステップＳ２００、Ｙｅｓ）、ブロック処理部１４は１ブロック毎の補間処理を行うとともに解析／設定部１３内の寿命管理対象フラグ２１がオンしているか否かを判別する（ステップＳ２０１）。
【００８３】
ここでの１ブロック毎の補間処理としては、例えばＸ軸等を移動させる際の移動地点間を所定の周期で分割して移動指令を作り出す。例えば、Ｘ軸を現在地０から１００ｍｍ移動させる場合に、５ｍｓｅｃの補間周期で分割して１補間処理あたりの移動指令約８．３μｍを作り出す。
【００８４】
寿命管理対象フラグ２１がオンしていない場合（ステップＳ２０１、Ｎｏ）、ブロック処理部１４はこの１ブロックの工具使用回数のカウント処理を終了する。一方、寿命管理対象フラグ２１がオンしている場合（ステップＳ２０１、Ｙｅｓ）、ブロック処理部１４は付加条件設定フラグ２２に所定の付加条件が設定されているか否かを判断する（ステップＳ２０２）。
【００８５】
ブロック処理部１４が、付加条件設定フラグ２２に所定の付加条件が設定されていると判断した場合（ステップＳ２０２、Ｙｅｓ）、ブロック処理部１４は、加工プログラム３３の１ブロック内のデータが付加条件設定フラグ２２に設定されている付加条件と一致するか否かを判断する（ステップＳ２０３）。
【００８６】
例えば、加工プログラム３３の１ブロック内のデータにおいて、指定Ｇコード（Ｇ３７．１等）の中から切削送りのＧコードが指定され、指定Ｇコードの中から主軸正転の切削送りのＧコードが指定されているか否かが判断される。
【００８７】
ブロック処理部１４が、加工プログラム３３の１ブロック内のデータは付加条件設定フラグ２２に設定されている付加条件と一致すると判断した場合（ステップＳ２０３、Ｙｅｓ）、ブロック処理部１４はブロックデータが付加条件を満たした際に工具の使用回数をカウントアップする（ステップＳ２０４）。
【００８８】
例えば、加工プログラム３３の１ブロック内のデータにおいて、指定Ｇコード（Ｇ３７．１等）の中から切削送りのＧコードが指定され、指定Ｇコードの中から主軸正転の切削送りのＧコードが指定されている場合、指定Ｇコードの中から主軸正転の切削送りのＧコードが指定される毎に工具の使用回数を１回カウントアップする。カウントアップした使用回数は記憶部１２等に記憶させておき、次回以降、ブロック処理部１４は記憶部１２に記憶している使用回数から工具の使用回数のカウントアップを行う。
【００８９】
これにより、情報管理装置１がパラメータ登録によるＧコード比較方式（予め設定したＧコード）に基づいて、予め設定した所定の付加条件を満たした場合に工具の使用回数をカウントアップするので、例えば切削送りで主軸が正転しているときのみ穴あけ加工の際の工具の使用回数をカウントアップすることが可能となる。すなわち、同期タップサイクル、深穴ドリルサイクル等の穴あけ個数に比例した工具の使用回数をカウントすることが可能となり、工具の寿命管理を正確に行うことが可能となう。
【００９０】
一方、ブロック処理部１４が、加工プログラム３３の１ブロック内のデータは付加条件設定フラグ２２に設定されている付加条件と一致しないと判断した場合（ステップＳ２０３、Ｎｏ）、ブロック処理部１４はこの１ブロックの工具使用回数のカウント処理を終了する。
【００９１】
また、ステップＳ２０２の処理において、ブロック処理部１４が、付加条件設定フラグ２２に所定の付加条件が設定されていないと判断した場合（ステップＳ２０２、Ｎｏ）、ブロック処理部１４は付加条件の確認を行わずに使用回数をカウントアップする（ステップＳ２０４）。すなわち、ここでのブロック処理部１４は、設定条件情報３１の「Ｇコード」で設定されるＧコード指令が、ブロック内で指令された際に、工具の使用回数をカウントアップする。ブロック処理部１４は、工具の使用回数をカウントアップすると、カウントした工具の使用回数を工具寿命判定部１５に送る。
【００９２】
工具寿命判定部１５は、解析／設定部１３による工具使用回数のカウント設定が行なわれた工具の「工具番号」に対応する設定条件情報３１内の情報（「寿命」）を、記憶部１２から取得する。そして、工具寿命判定部１５は、ブロック処理部１４から送られた工具の使用回数が「寿命」内で設定されている寿命管理の最大値を超えているか否かを判断する（ステップＳ２０５）。
【００９３】
工具寿命判定部１５が、ブロック処理部１４から送られた工具の使用回数が「寿命」内で設定されている寿命管理の最大値を超えていると判断した場合（ステップＳ２０５、Ｙｅｓ）、設定条件情報３１の「ＳＴ」の項目（ブロック処理部１４によって使用回数がカウントされている工具に対応する「ＳＴ」）を「２」（寿命工具）に変更して記憶部１２に記憶させる（ステップＳ２０６）。
【００９４】
警告処理部１６は、記憶部１２の設定条件情報３１内の「ＳＴ」が「２」に設定されると、外部装置への警告メッセージの送信、警告音の出力等によって警告処理を実行する（ステップＳ２０７）。また、同一種類の工具を複数本、予備用として用意している場合には、警告メッセージ等の代わりに同一の種類の工具に変更することとしてもよい。
【００９５】
このように、実施の形態によれば、パラメータ設定によって工具毎に工具使用回数をカウントするＧコード指令を登録することができるので、簡易な構成で工具寿命管理対象の指令を容易に登録することが可能となる。したがって、工具寿命管理対象の指令に基づいて、簡易な構成で工具使用に関する情報を正確に管理することが可能となる。
【００９６】
また、穴あけ動作等を指定するＧコードをパラメータにて工具毎に複数登録させるので、工具寿命を管理するためのラダープログラムもしくはシステムソフトウェアを変更せずに工具寿命管理を行うことが可能となる。したがって、加工プログラム３３の変更に柔軟に対応でき、工具寿命管理を容易に行うことが可能となる。
【００９７】
また、穴あけ動作等のＧコードが固定サイクル等で実現されている場合には、１つの固定サイクルプログラムで複数の穴あけ動作をする場合であっても、適切に工具の使用回数をカウントできるようパラメータ（付加条件）の設定ができるので、固定サイクルプログラムやマクロプログラム等で記述された穴あけ指令においても工具寿命管理を行うことが可能となる。したがって、固定サイクルプログラムやマクロプログラムに対しても、詳細な工具寿命管理が可能となる。
【００９８】
また、本発明はＧ７４、Ｇ８４等の固定サイクルとＧ３４、Ｇ３５、Ｇ３６、Ｇ３７．１等の（特別固定サイクルと称されるボトルサークル）の組み合わせに適用してもよい。なお、ここでのＧ７４指令は、逆タップサイクルであり、図２で説明したＧ８４指令（同期タップサイクル）と主軸の正転（１８）、逆転（１５）のみが異なる。具体的なＧ７４指令の動作は、Ｇ００指令によってＸ軸＝ｘ１，Ｙ軸＝ｙ１に位置決めを行なうとともに、Ｇ００指令によってＺ軸＝ｒ１に位置決めを行なう。そして、Ｇ０１指令によってＺ軸＝ｚ１の位置にｆ１の送り速度で切削送り（穴あけ処理）を行い、Ｇ０４指令によって穴底位置でｐ１のドウェル時間だけ停止する。この後、Ｍ０３指令によって主軸正転を行うとともに、Ｇ０１指令によってＺ軸＝−ｚ１の位置にｆ１の送り速度で切削送りを行い、Ｇ０４指令によって穴底位置でｐ１のドウェル時間だけ停止する。そして、Ｍ０４指令によって主軸逆転を行ない、Ｇ９８モードまたはＧ９９モードによる処理を行なう。
。
【００９９】
また、ここでのＧ３５指令は、ライトアングルであり、Ｇ８４指令等の固定サイクルと組合わせて使用されるものである。具体的には、Ｇ３５指令は、Ｘ，Ｙを始点座標として、Ｘ軸と角度θをなす方向に間隔ｄずつｎ個の穴明けを加工する指令である。
【０１００】
また、ここでのＧ３６指令は、アークであり、Ｇ８４指令等の固定サイクルと組合わせて使用されるものである。具体的には、Ｇ３６指令は、Ｘ，Ｙで指定された座標を中心とする半径ｒの円周上で、Ｘ軸と角度θをなす点を始点とし、角度間隔Δθで並ぶｎ個の点の穴明けを加工する指令である。
【産業上の利用可能性】
【０１０１】
以上のように、本発明にかかる工具寿命管理装置は、Ｇ８４等の固定サイクルとＧ３７．１等の特別固定サイクルとを組み合わせた場合の工具寿命の管理に適している。
【図面の簡単な説明】
【０１０２】
【図１】実施の形態にかかる情報管理装置の概念を説明するための説明図である。
【図２】同期タップ指令を説明するための図である。
【図３】グリッド状の穴あけ処理を説明するための説明図である。
【図４】Ｇ３７．１指令によるグリッド状の穴あけ処理のプログラムの一例を示す図である。
【図５】Ｇ３７．１を展開したプログラムの一例を示す図である。
【図６】実施の形態にかかる情報管理装置の構成を示すブロック図である。
【図７】設定条件情報の一例を示す図である。
【図８】工具使用回数のカウント設定の手順を示すフローチャートである。
【図９】工具使用回数のカウント処理の手順を示すフローチャートである。
【符号の説明】
【０１０３】
１  情報管理装置
１１  入力部
１２  記憶部
１３  解析／設定部
１４  ブロック処理部
１５  工具寿命判定部
１６  警告処理部
１７  駆動制御部
２１  寿命管理対象フラグ
２２  付加条件設定フラグ
３１  設定条件情報
３３  加工プログラム
５１  プログラム
６０  寿命管理データ
【図１】
2007021656.tif 000003
【図２】
2007021656.tif 000004
【図３】
2007021656.tif 000005
【図４】
2007021656.tif 000006
【図５】
2007021656.tif 000007
【図６】
2007021656.tif 000008
【図７】
2007021656.tif 000009
【図８】
2007021656.tif 000010
【図９】
2007021656.tif 000011