(57)【要約】  加工プログラムのうち固定サイクルに対する指令コードと、指令コードに応じた処理を実行するためのサブプログラムとが登録されたテーブルを保持するテーブル保持部（１３）と、加工プログラムから読み込まれた指令コードに対応するサブプログラムをテーブルから読み出し、サブプログラムに応じた処理を実行する指令実行部（１２）と、テーブルの登録内容の変更を受け付けるインタフェースである表示部（１４）と、を有し、インタフェースは、指令コードによって指定される処理の内容を指令実行部が正常に認識可能とする本来仕様とは異なる外来仕様の加工プログラムのサブプログラムに対する、マクロ処理の実行のためのマクロ設定を受け付ける。
2014068650.tif 000002
【特許請求の範囲】
【請求項１】
加工プログラムのうち固定サイクルに対する指令コードと、前記指令コードに応じた処理を実行するためのサブプログラムとが登録されたテーブルを保持するテーブル保持部と、
前記加工プログラムから読み込まれた前記指令コードに対応する前記サブプログラムを前記テーブルから読み出し、前記サブプログラムに応じた処理を実行する指令実行部と、
前記テーブルの登録内容の変更を受け付けるインタフェースと、を有し、
前記インタフェースは、前記指令コードによって指定される処理の内容を前記指令実行部が正常に認識可能とする本来仕様とは異なる外来仕様の前記加工プログラムの前記サブプログラムに対する、マクロ処理の実行のためのマクロ設定を受け付けることを特徴とする数値制御装置。
【請求項２】
前記加工プログラムから読み込まれた前記指令コードが前記外来仕様によるものでありかつ前記マクロ設定がなされている場合、前記指令実行部は、前記指令コードに対応する前記サブプログラムを前記本来仕様によるものへ変換することを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記インタフェースは、前記指令コードごとの前記マクロ設定を表示するインタフェース画面を備える表示部であることを特徴とする請求項１または２に記載の数値制御装置。
【請求項４】
前記インタフェースは、前記固定サイクルのうち、加工の前処理および実行処理と、前記加工の正常終了における後処理と、前記加工の異常終了における例外処理と、のそれぞれに対し、前記マクロ設定を受け付け可能とすることを特徴とする請求項１から３のいずれか一つに記載の数値制御装置。
【請求項５】
前記インタフェースは、前記マクロ設定により前記前処理の内容の変更を受け付け可能とすることを特徴とする請求項４に記載の数値制御装置。
【請求項６】
前記指令実行部は、前記前処理において、前記マクロ設定に応じた変更前における前記サブプログラムに関する設定内容を保存し、前記後処理および前記例外処理において、前記設定内容を前記変更前の状態に戻すことを特徴とする請求項４または５に記載の数値制御装置。
【請求項７】
前記指令実行部は、前記例外処理において、加工開始のための基準位置にまで加工ツールを戻すことを特徴とする請求項４から６のいずれか一つに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御（Numerical  Control；ＮＣ）装置に関する。
【背景技術】
【０００２】
従来、ＮＣ装置は、固定サイクルに対する指令コード（例えばＧコード）とサブプログラムとを対応付けるテーブルを保持するものがある。ＮＣ装置は、ユーザによって入力された加工プログラム中の、固定サイクルに対するＧコードを読み込むと、そのＧコードに対応するサブプログラムを読み出す。ＮＣ装置は、読み出したサブプログラムによる処理を実行する。【０００３】
製造メーカが異なるＮＣ装置同士において、同一の機能に対して異なる仕様の指令が使用される場合がある。例えば、Ｇコードにおける引数の設定は、ＮＣ装置ごとに異なることがある。従来、ＮＣ装置は、保持するテーブルに存在しないＧコードを読み込んだ場合や、引数の設定が異なるＧコードを読み込んだ場合、エラー処理を実行し、サブプログラムの実行を中止する。ＮＣ装置が本来保有する仕様とは異なる仕様の加工プログラムは、Ｇコードやその引数をユーザによって記述し直してから使用することとなる。【０００４】
この問題に関し、例えば特許文献１には、ＮＣ装置の仕様とは異なる仕様の指令について、機械語への変換処理を行うことで、ＮＣ装置への適用を可能とする技術が提案されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平１１−１４３５１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１に開示されている数値制御装置は、ＮＣ装置の仕様とは異なる仕様の指令を機械語へ変換するものであって、仕様の異なる指令コード同士の変換を可能とするものではない。指令コードから機械語への変換は、システムに固有の処理とされる。各固定サイクルによる加工時と、固定サイクル以外の通常の加工時とで、同様の設定で加工が行われると、各固定サイクルにおいて最適な条件での加工を行うことが困難となる。【０００７】
本発明は、上記に鑑みてなされたものであって、仕様の異なる加工プログラムを使用して、各固定サイクルにおいて最適な条件での加工を可能とする数値制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決し、目的を達成するために、本発明は、加工プログラムのうち固定サイクルに対する指令コードと、前記指令コードに応じた処理を実行するためのサブプログラムとが登録されたテーブルを保持するテーブル保持部と、前記加工プログラムから読み込まれた前記指令コードに対応する前記サブプログラムを前記テーブルから読み出し、前記サブプログラムに応じた処理を実行する指令実行部と、前記テーブルの登録内容の変更を受け付けるインタフェースと、を有し、前記インタフェースは、前記指令コードによって指定される処理の内容を前記指令実行部が正常に認識可能とする本来仕様とは異なる外来仕様の前記加工プログラムの前記サブプログラムに対する、マクロ処理の実行のためのマクロ設定を受け付けることを特徴とする。
【発明の効果】
【０００９】
本発明にかかる数値制御装置は、サブプログラムに対するマクロ処理によって、加工プログラムを外来仕様から本来仕様へと変換可能とする。ユーザは、外来仕様の加工プログラムについて別途修正を施すこと無く、数値制御装置に使用することができる。数値制御装置は、固定サイクルにおける処理ごとのマクロ設定の編集を適宜受け付けることで、各固定サイクルにおいて最適な条件での加工を可能とする。これにより、数値制御装置は、仕様の異なる加工プログラムを使用して、各固定サイクルにおいて最適な条件での加工を実現できる。
【図面の簡単な説明】
【００１０】
【図１】図１は、本発明の実施の形態にかかる数値制御装置の概略構成を示すブロック図である。
【図２】図２は、表示部が備えるインタフェース画面における表示の例を示す図である。
【図３】図３は、ＮＣ装置の動作の手順を説明するフローチャートである。
【図４】図４は、加工プログラムと、前処理、実行処理、後処理および例外処理の各マクロ設定との一例を示す図である。
【発明を実施するための形態】
【００１１】
以下に、本発明にかかる数値制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
実施の形態．
図１は、本発明の実施の形態にかかる数値制御装置の概略構成を示すブロック図である。数値制御（Numerical  Control；ＮＣ）装置１は、例えば穴あけ加工等を実施する工作機械（図示省略）の駆動を制御する。ＮＣ装置１は、加工プログラム解析部１１、指令実行部１２、テーブル保持部１３および表示部１４を有する。
【００１３】
加工プログラム解析部１１は、ＮＣ装置１へ入力された加工プログラムを読み込み、解析を行う。指令実行部１２は、加工プログラム解析部１１で解析された指令に応じた処理を実行する。テーブル保持部１３は、テーブルを保持する。
【００１４】
テーブル保持部１３が保持するテーブルは、加工プログラムのうちの固定サイクルにかかる指令コードとサブプログラムとが対応付けられ登録された対応表とする。ＮＣ装置１は、固定サイクルにかかる指令コードをテーブル保持部１３内のテーブルに登録することで、固定サイクルにかかる指令コードとその他の指令コードとを区別する。指令コードは、例えばＧコードとする。
【００１５】
指令実行部１２は、加工プログラムから読み込まれた指令コードに対応するサブプログラムをテーブル保持部１３のテーブルから読み出す。指令実行部１２は、サブプログラムに応じた処理を実行する。表示部１４は、テーブル保持部１３が保持するテーブルの内容の変更を受け付けるインタフェースとして機能する。
【００１６】
ＮＣ装置１は、本来仕様の加工プログラムのほか、外来仕様の加工プログラムについても入力を受け付ける。ここで、本来仕様とは、指令コードによって指定される処理の内容を指令実行部１２が正常に認識可能とする加工プログラムの仕様とする。外来仕様とは、本来仕様とは異なる仕様とする。外来仕様の加工プログラムは、例えば、本実施の形態にかかるＮＣ装置１以外の他のＮＣ装置に適合するように生成された加工プログラムとする。
【００１７】
図２は、表示部が備えるインタフェース画面における表示の例を示す図である。表示部１４は、インタフェース画面１５を備える。表示部１４は、外来仕様の加工プログラムのサブプログラムに対するマクロ処理の実行のためのマクロ設定を、インタフェース画面１５において受け付ける。インタフェース画面１５において受け付けられたマクロ設定は、テーブル保持部１３が保持するテーブルに登録される。インタフェース画面１５は、指令コードごとに登録されているマクロ設定を、マクロ設定画面として表示する。
【００１８】
表示部１４は、固定サイクルのうち、加工の前処理および実行処理と、加工の正常終了における後処理と、加工の異常終了における例外処理と、のそれぞれに対し、マクロ設定を受け付け可能とする。
【００１９】
Ｇコードは、文字「Ｇ」と２桁の数字によって表される。「前処理マクロ」の欄は、加工の前処理に対してユーザが登録したマクロ設定を表す。「実行処理マクロ」の欄は、加工の実行処理に対してユーザが登録したマクロ設定を表す。「後処理マクロ」の欄は、加工の正常終了における後処理に対してユーザが登録したマクロ設定を表す。「例外処理マクロ」の欄は、加工の異常終了における例外処理に対してユーザが登録したマクロ設定を表す。なお、「前処理マクロ」、「実行処理マクロ」、「後処理マクロ」および「例外処理マクロ」の各欄のうち「−」は、マクロ設定がなされておらず、特殊な処理を行わない設定であることを表す。
【００２０】
図２に示す例によると、Ｇコード「Ｇ８３」に対して、前処理マクロとして「マクロ１」、実行処理マクロとして「マクロ２」、後処理マクロとして「マクロ３」、例外処理マクロとして「マクロ４」がそれぞれ登録されている。指令実行部１２は、Ｇコード「Ｇ８３」についてこれらのマクロ設定を参照した場合に、前処理マクロとして「マクロ１」、実行処理マクロとして「マクロ２」、後処理マクロとして「マクロ３」、例外処理マクロとして「マクロ４」をそれぞれ実行する。
【００２１】
Ｇコード「Ｇ８４」に対しては、前処理マクロとして「マクロ１」、実行処理マクロとして「マクロ５」、後処理マクロとして「マクロ６」がそれぞれ登録されている。例外処理マクロは、設定されていない。Ｇコード「Ｇ８５」に対しては、前処理マクロ、実行処理マクロ、後処理マクロおよび例外処理マクロのいずれも設定されていない。Ｇコード「Ｇ８５」に対しては、Ｇコード「Ｇ８５」に応じた通常の処理を実行する。
【００２２】
Ｇコード「Ｇ８６」に対しては、前処理マクロとして「マクロ７」、実行処理マクロとして「マクロ８」、後処理マクロとして「マクロ９」、例外処理マクロとして「マクロ９」がそれぞれ登録されている。ＮＣ装置１は、Ｇコード「Ｇ８６」に対しては、加工の正常終了における後処理と、加工の異常終了における例外処理とで、「マクロ９」による同じ動作をなす。
【００２３】
図３は、ＮＣ装置の動作の手順を説明するフローチャートである。加工プログラム解析部１１は、ＮＣ装置１へ入力された加工プログラムを読み込み、解析を行う（ステップＳ１）。指令実行部１２は、加工プログラムから読み取ったＧコードが固定サイクルにかかるものであるか否か、かつテーブル保持部１３に登録されているか否かを判断する（ステップＳ２）。
【００２４】
加工プログラムから読み取ったＧコードが固定サイクルにかかるものではない場合、およびＧコードがテーブル保持部１３に登録されていない場合（ステップＳ２、Ｎｏ）、指令実行部１２は、読み取ったＧコードに応じた通常の処理を実行する（ステップＳ１４）。
【００２５】
加工プログラムから読み取ったＧコードが固定サイクルにかかるものであり、かつテーブル保持部１３に登録されている場合（ステップＳ２、Ｙｅｓ）、指令実行部１２は、前処理、実行処理、後処理および例外処理の各マクロ設定のいずれかが登録されているか否かを判断する（ステップＳ３）。前処理、実行処理、後処理および例外処理の各マクロ設定のいずれかが登録されていない場合（ステップＳ３、Ｎｏ）、指令実行部１２は、読み取ったＧコードに応じた通常の処理を実行する（ステップＳ１４）。
【００２６】
例えば、図２に示す例の場合、Ｇコード「Ｇ８５」は、固定サイクルにかかるものとしてテーブル保持部１３に登録されている一方、前処理、実行処理、後処理および例外処理の各マクロ設定のいずれも登録されていない。指令実行部１２は、Ｇコード「Ｇ８５」に応じた通常の処理を実行する。
【００２７】
前処理、実行処理、後処理および例外処理の各マクロ設定のいずれかが登録されている場合（ステップＳ３、Ｙｅｓ）、指令実行部１２は、マクロ設定に応じた変更前におけるサブプログラムに関する設定内容である現在のモーダルおよびパラメータ等の状態を自動的に保存し、バックアップとする（ステップＳ４）。指令実行部１２は、設定変更フラグをＯＮにする（ステップＳ５）。設定変更フラグは、モーダルおよびパラメータ等の設定が変更されているか否かを示すフラグとする。
【００２８】
例えば、図２に示す例の場合、Ｇコード「Ｇ８３」は、固定サイクルにかかるものとしてテーブル保持部１３に登録されており、かつ前処理、実行処理、後処理および例外処理の各マクロ設定がいずれも登録されている。指令実行部１２は、Ｇコード「Ｇ８３」について、現在のモーダルおよびパラメータ等の設定を保存し、設定変更フラグをＯＮにする。
【００２９】
指令実行部１２は、ステップＳ１における解析の結果から、加工プログラムから読み込まれたＧコードが外来仕様によるものか否かを判断する（ステップＳ６）。
【００３０】
図４は、加工プログラムと、前処理、実行処理、後処理および例外処理の各マクロ設定との一例を示す図である。図４に示す加工プログラムは、外来仕様である仕様ＡによるＧコード「Ｇ８３」を含むものとする。仕様ＡのＧコードは、例えば、アドレスを「Ｓ」および「Ｆ」によって指定するものとする。
【００３１】
一方、ＮＣ装置１は、本来仕様として仕様Ｂが設定されているものとする。仕様ＢのＧコードは、例えば、アドレスを「Ｐ」によって指定するものとする。「Ｓ」、「Ｆ」および「Ｐ」は、Ｐ＝Ｓ／Ｆの関係を満たすものとする。
【００３２】
指令実行部１２は、ステップＳ１による解析結果から、Ｇコードの仕様を確認する。仕様は、Ｇコード内の引数であるアドレスに使用されているアルファベットにより判定する。Ｇコードが外来仕様によるものである場合（ステップＳ６、Ｙｅｓ）、指令実行部１２は、各固定サイクルのＧコードに対応するサブプログラムを、本来仕様のサブプログラムへ変換する（ステップＳ７）。仕様の区別のために参照する引数に関する情報や、異なる仕様のサブプログラムへの変換の手法に関する情報は、例えばユーザにより、ＮＣ装置１にあらかじめ登録可能であるものとする。
【００３３】
図４に示す例では、指令実行部１２は、アドレスが「Ｓ」および「Ｆ」によって指定されていることから、ステップＳ１で解析されたＧコードが仕様Ａによるものと判定する。指令実行部１２は、仕様ＡのＧコード「Ｇ８３」において「Ｓ」および「Ｆ」によって指定されているアドレスを、仕様Ｂにしたがい、「Ｐ」によって指定されたアドレスへ変換する。このように、指令実行部１２は、加工プログラムから読み込まれた指令コードが外来仕様によるものでありかつテーブル保持部１３にマクロ設定が登録されている場合、指令コードに対応するサブプログラムを、マクロ設定に応じて変換する。
【００３４】
Ｇコードが外来仕様によるものではなく本来仕様によるものである場合（ステップＳ６、Ｎｏ）、指令実行部１２は、ステップＳ７による変換を行わず、ステップＳ８へ移行する。
【００３５】
指令実行部１２は、ステップＳ１で解析されたＧコードについて、インタフェース画面１５から設定されている前処理マクロを実行する（ステップＳ８）。例えば、Ｇコード「Ｇ８３」については、前処理マクロとして登録されている「マクロ１」が呼び出される。指令実行部１２は、「マクロ１」の実行により、例えば、「Ｇ１０Ｌ７０」のモードを補間後加減速から補間前加減速へと変更する。インタフェースである表示部１４は、インタフェース画面１５におけるマクロ設定により、前処理の内容の変更を受け付け可能とする。
【００３６】
ＮＣ装置１は、マクロ設定を適宜編集することで、各固定サイクルにおけるモードやパラメータの設定を最適化することができる。ＮＣ装置１は、目的の固定サイクルを対象とした設定の最適化により、高効率な加工を実現することができる。
【００３７】
指令実行部１２は、ステップＳ１で解析されたＧコードについて、インタフェース画面１５から設定されている実行処理マクロを実行する（ステップＳ９）。例えば、Ｇコード「Ｇ８３」については、実行処理マクロとして登録されている「マクロ２」が呼び出される。「マクロ２」については、仕様Ａにより「Ｓ」および「Ｆ」で指定されているアドレスを、仕様Ｂの「Ｐ」で指定されたアドレスへの変換を行う。
【００３８】
指令実行部１２は、「Ｐ」で指定されるアドレスを算出してから、Ｇコード「Ｇ８３」の指令を実行する。このとき、指令実行部１２は、上述の設定変更フラグを読み込む。指令実行部１２は、読み込んだ設定変更フラグがＯＮである場合、実行処理マクロ内のＧコード「Ｇ８３」に対する前処理、実行処理、後処理および例外処理の各マクロ処理を行わないものとする。これにより、指令実行部１２は、実行処理マクロ内のＧコード「Ｇ８３」に対して再び前処理マクロの処理が行われてしまうループを防ぐこととしている。
【００３９】
指令実行部１２は、固定サイクルによる処理が正常に終了したか否かを判定する（ステップＳ１０）。固定サイクルによる処理が例えばＧコード「Ｇ８０」等により正常に終了した場合（ステップＳ１０、Ｙｅｓ）、指令実行部１２は、インタフェース画面１５から設定されている後処理マクロを実行する（ステップＳ１１）。
【００４０】
例えば、Ｇコード「Ｇ８３」については、後処理マクロとして登録されている「マクロ３」が呼び出される。指令実行部１２は、「マクロ３」では、指令コードによる処理が正常に終了した場合のために、モーダルおよびパラメータ等の設定内容を、ステップＳ４で自動保存された変更前の状態に戻す処理を行う。
【００４１】
固定サイクルによる処理が例えば電源の遮断やリセット等により正常に終了しなかった場合（ステップＳ１０、Ｎｏ）、指令実行部１２は、インタフェース画面１５から設定されている例外処理マクロを実行する（ステップＳ１２）。
【００４２】
例えば、Ｇコード「Ｇ８３」については、例外処理マクロとして登録されている「マクロ４」が呼び出される。指令実行部１２は、「マクロ４」では、指令コードによる処理が正常に終了しなかった場合のために、モーダルおよびパラメータ等の設定内容を、ステップＳ４で自動保存された変更前の状態に戻す処理を行う。指令実行部１２は、「マクロ４」では、例えば、途中で停止している加工ツールを所定の位置、例えば加工開始のための基準位置にまで戻す処理を行う。これにより、指令実行部１２は、異常により停止している状態から復帰する。
【００４３】
ステップＳ１１またはステップＳ１２に次いで、指令実行部１２は、設定変更フラグをＯＦＦにし（ステップＳ１３）、固定サイクルプログラムの変換を終了する。
【００４４】
ＮＣ装置１は、サブプログラムに対するマクロ処理によって、加工プログラムを外来仕様から本来仕様へと変換可能とする。ユーザは、外来仕様の加工プログラムについて別途修正を施すこと無く、ＮＣ装置１に使用することができる。ＮＣ装置１は、固定サイクルにおける処理ごとのマクロ設定の編集を適宜受け付けることで、各固定サイクルにおいて最適な条件での加工を可能とする。これにより、ＮＣ装置１は、仕様の異なる加工プログラムを使用して、各固定サイクルにおいて最適な条件での加工を実現できる。
【符号の説明】
【００４５】
１  数値制御（ＮＣ）装置、１１  加工プログラム解析部、１２  指令実行部、１３  テーブル保持部、１４  表示部、１５  インタフェース画面。
【図１】
2014068650.tif 000003
【図２】
2014068650.tif 000004
【図３】
2014068650.tif 000005
【図４】
2014068650.tif 000006
【国際調査報告】
2014068650.tif 000007
2014068650.tif 000008
2014068650.tif 000009