(57)【特許請求の範囲】
【請求項１】
工作機械と、工作機械の周辺に配置される周辺機器と、を数値制御プログラムにしたがって制御する数値制御装置において、
前記周辺機器の軸構成、当該数値制御装置で固有のＭコードまたは前記周辺機器の移動量を変数として用いた前記周辺機器での動作を実行させる指令を含む動作パターンを記憶する動作パターン記憶手段と、
前記周辺機器の軸ごとにまたは前記固有のＭコードごとに、前記変数に対する値を対応付けた機械情報を記憶する機械情報記憶手段と、
前記数値制御プログラムを受け付け、前記数値制御プログラム中の指令が前記工作機械向けの指令である場合に数値制御手段へと前記指令を渡し、前記指令が前記動作パターン記憶手段中の動作パターンを指示する第１引数および前記周辺機器の移動量を指示する第２引数を有する前記周辺機器向けの指令である場合に、前記第１引数に対応する動作パターンを前記動作パターン記憶手段から取得し、前記第２引数の移動量とともに周辺機器動作生成手段に渡すプログラム解析手段と、
取得した前記動作パターンを構成する指令の各変数に、対応する前記機械情報または取得した前記移動量を代入して周辺機器用指令を生成する前記周辺機器動作生成手段と、
前記数値制御プログラム中の指令または前記周辺機器用指令から前記工作機械または前記周辺機器を構成する軸に対する移動指令を生成する数値制御手段と、
前記周辺機器または前記周辺機器と干渉する位置に存在する前記工作機械の構成部材の動作を規定した動作情報を記憶する動作情報記憶手段と、
を備え、
前記動作パターンの前記変数には、前記周辺機器または前記周辺機器と干渉する位置にある前記工作機械の構成部材に対する動作がさらに含まれ、
前記周辺機器動作生成手段は、前記動作パターンを構成する指令の各変数に、対応する前記機械情報、取得した前記移動量、または対応する前記動作情報を代入して前記周辺機器用指令を生成することを特徴とする数値制御装置。
【請求項２】
前記動作パターンは、当該数値制御装置のユーザによって前記周辺機器を用いた任意の動作処理について定義されるものであることを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記動作パターンには、前記周辺機器の動作時に前記工作機械を構成する刃物台と前記周辺機器との間の干渉を判断し、干渉する場合に前記刃物台を待避させる指令が含まれることを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、数値制御装置に関するものである。
【背景技術】
【０００２】
数値制御（Numerical  Control：以下、ＮＣという）装置で振れ止めを用いる場合の駆動制御方法として、加工中のワークの長さが所定値以上あるかを判定し、所定値以上ある場合には振れ止めの位置決めを行ってワークの平坦部を支持する方法が提案されている（たとえば、特許文献１参照）。このようなＮＣ工作機械に備えられたテールストックまたは振れ止め等の周辺機器への指令には、ＩＳＯ（International  Organization  for  Standardization）／ＥＩＡ（Electronic  Industries  Alliance）によるプログラム指令が用いられる。【０００３】
ＩＳＯ／ＥＩＡプログラムによる周辺機器への指令には、位置を移動させるための指令と動作を行うための指令がある。位置を移動させる場合には、周辺機器の駆動モータ毎に割り当てた軸の名称に対して移動指令を行う。また、周辺機器を動作させる場合には、補助指令（以下、Ｍコードという）による指令を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開昭６１−４６３７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、周辺機器の駆動モータに割り当てた軸名称は、機械構成毎に異なるのが一般的である。たとえば、テールストック付きの機械構成では、テールストックの駆動モータに割り当てられている軸の名称は、ユーザによって自由に設定される。また、ＮＣプログラム上で指令するＭコードは代表的なコード以外は各工作機械メーカおよび各ＮＣメーカによって仕様が異なる。したがって、周辺機器に対して同じ動作をさせたくても、同じプログラム指令を使用できない場合が多い。【０００６】
このように、周辺機器を制御するためには、機械構成毎に異なる軸名称およびＭコードを理解してＩＳＯ／ＥＩＡプログラム上で指令しなければならないため、プログラムの流用は難しい。そのため、プログラム作成時間の増大に繋がってしまう。また、移動指令とＭコードの指令の順序およびタイミングを判断してＩＳＯ／ＥＩＡをプログラミングするのは初心者には難しい。【０００７】
この発明は上記に鑑みてなされたもので、周辺機器を備える工作機械を制御するＮＣ装置において、周辺機器の軸名称または工作機械メーカおよびＮＣメーカによって異なるＭコードに依存せずに、容易に周辺機器の指令をプログラムすることができるＮＣ制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、この発明にかかる数値制御装置は、工作機械と、工作機械の周辺に配置される周辺機器と、を数値制御プログラムにしたがって制御する数値制御装置において、前記周辺機器の軸構成、当該数値制御装置で固有のＭコードまたは前記周辺機器の移動量を変数として用いた前記周辺機器での動作を実行させる指令を含む動作パターンを記憶する動作パターン記憶手段と、前記周辺機器の軸ごとにまたは前記固有のＭコードごとに、前記変数に対する値を対応付けた機械情報を記憶する機械情報記憶手段と、前記数値制御プログラムを受け付け、前記数値制御プログラム中の指令が前記工作機械向けの指令である場合に数値制御手段へと前記指令を渡し、前記指令が前記動作パターン記憶手段中の動作パターンを指示する第１引数および前記周辺機器の移動量を指示する第２引数を有する前記周辺機器向けの指令である場合に、前記第１引数に対応する動作パターンを前記動作パターン記憶手段から取得し、前記第２引数の移動量とともに周辺機器動作生成部に渡すプログラム解析手段と、取得した前記動作パターンを構成する指令の各変数に、対応する前記機械情報または取得した前記移動量を代入して周辺機器用指令を生成する前記周辺機器動作生成手段と、前記数値制御プログラム中の指令または前記周辺機器用指令から前記工作機械または前記周辺機器を構成する軸に対する移動指令を生成する数値制御手段と、前記周辺機器または前記周辺機器と干渉する位置に存在する前記工作機械の構成部材の動作を規定した動作情報を記憶する動作情報記憶手段と、を備え、前記動作パターンの前記変数には、前記周辺機器または前記周辺機器と干渉する位置にある前記工作機械の構成部材に対する動作がさらに含まれ、前記周辺機器動作生成手段は、前記動作パターンを構成する指令の各変数に、対応する前記機械情報、取得した前記移動量、または対応する前記動作情報を代入して前記周辺機器用指令を生成することを特徴とする。
【発明の効果】
【０００９】
この発明によれば、周辺機器の制御を「動作」と「移動量」の２つを指定するだけで、動作パターン記憶手段に記憶されている動作パターンに応じて周辺機器用指令を生成するようにしたので、今までユーザが自分でプログラミングしていた軸名称、Ｍコードまたは指令順序を気にすることなく、簡単にプログラムを作成し、かつ簡単に周辺機器を制御することができるという効果を有する。
【図面の簡単な説明】
【００１０】
【図１】図１は、テールストックを備えたＮＣ工作機械の構成の一例を模式的に示す斜視図である。
【図２】図２は、振れ止めを備えたＮＣ工作機械の構成の一例を模式的に示す斜視図である。
【図３】図３は、周辺機器への指令コードの一例を示す図である。
【図４】図４は、この実施の形態によるＮＣ装置の機能構成を模式的に示すブロック図である。
【図５】図５は、動作パターン情報の一例を示す図である。
【図６】図６は、動作情報の一例を示す図である。
【図７】図７は、機械情報の一例を示す図である。
【図８】図８は、実施の形態による動作処理手順の一例を示すフローチャートである。
【図９】図９は、テールストックを備えるＮＣ装置の場合の周辺機器用指令の生成処理の手順の一例を示すフローチャートである。
【図１０】図１０は、テールストックを備えるＮＣ装置に対する周辺機器用指令を示す図である。
【図１１】図１１は、振れ止めを備えるＮＣ装置の場合の周辺機器用指令の生成処理の手順の一例を示すフローチャートである。
【図１２】図１２は、テールストックを備えるＮＣ装置に対する周辺機器用指令を示す図である。
【発明を実施するための形態】
【００１１】
以下に添付図面を参照して、この発明にかかる数値制御装置の好適な実施の形態を詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１２】
図１は、テールストックを備えたＮＣ工作機械の構成の一例を模式的に示す斜視図であり、図２は、振れ止めを備えたＮＣ工作機械の構成の一例を模式的に示す斜視図である。なお、これらの図で、主軸の方向をＸ方向とし、高さ方向をＺ方向とし、Ｘ方向とＺ方向の両方に垂直な方向をＹ方向とする。
【００１３】
図１に示されるように、テールストックを備えたＮＣ工作機械は、所定の高さに固定され、Ｘ方向に延在するワーク２のＸ負方向側の端部を保持する主軸１と、ワーク２のＸ正方向側の端部側に設けられるテールストック３と、テールストック３を支持し、Ｘ方向に駆動可能な軸４と、工具６が装着され、ワーク２に対して加工を行う刃物台５と、を備える。
【００１４】
このようなテールストックを備えたＮＣ工作機械においては、主軸１に装着されたワーク２のＸ正方向側の端面を、Ｘ方向に駆動可能な軸４の上に位置するテールストック３の先端が押されることでワーク２が固定される。そして、ワーク２が固定された状態で、刃物台５に装着した工具６と、主軸１に支持されたワーク２と、テールストック３と、をプログラムにしたがって動作させることでワーク２の加工が行われる。
【００１５】
また、図２に示されるように、振れ止めを備えたＮＣ工作機械は、所定の高さに固定され、Ｘ方向に延在するワーク２のＸ負方向側の端部を保持する主軸１と、ワーク２のＺ負方向側の側面の一部を指示するように設けられる振れ止め７と、振れ止め７を支持し、Ｘ方向に駆動可能な軸４と、工具６が装着され、ワーク２に対して加工を行う刃物台５と、を備える。
【００１６】
このような振れ止めを備えたＮＣ工作機械においては、主軸１に装着されたワーク２のＺ負方向側の側面の一部を下側から振れ止め７が支えることによって、刃物台５に装着した工具６と、主軸１に支持されたワーク２と、振れ止め７と、をプログラムにしたがって動作させることでワーク２の加工が行われる。
【００１７】
これらの工作機械は、プログラムに基づいてＮＣ装置によって制御される。この実施の形態では、予め周辺機器への指令であることを示す指令コードを決定しておく。図３は、周辺機器への指令コードの一例を示す図である。図３（ａ）に示されるように、この例では「Ｇ３０５」を周辺機器への指令コードと定義し、この指令コードに、動作を示す引数Ｌと、移動量を示す引数Ｋと、を設定するようにしている。動作は、周辺機器での動作が規定されたプログラムを指定するものであり、移動量は、周辺機器の移動量を指定するものである。図３（ｂ）に実際のプログラム例が示されている。この例では、動作を示す引数に格納された「１」で指定されるプログラムを用い、移動量を示す引数に格納された「１００」を移動量として周辺機器の指令を作成することが示されている。なお、周辺機器への指令コードは「Ｇ３０５」に限られるものではなく、指令に付随するアドレス「Ｌ」、「Ｋ」に関しても、これらの文字に限られるものではない。
【００１８】
図４は、この実施の形態によるＮＣ装置の機能構成を模式的に示すブロック図である。ＮＣ装置１０は、動作パターン記憶部１１と、プログラム解析部１２と、動作情報記憶部１３と、機械情報記憶部１４と、周辺機器動作生成部１５と、ＮＣ制御部１６と、サーボ制御部１７と、を備える。
【００１９】
動作パターン記憶部１１は、周辺機器の動作を、複数の指令で規定した動作パターンを含む動作パターン情報を記憶する。動作パターン情報は、ＮＣプログラム１００中の周辺機器への指令コードを含む動作パターンに、この動作パターンを指定する際に用いる識別番号が付されたものである。図５は、動作パターン情報の一例を示す図である。ここでは、「動作」が識別子に対応するものである。動作「１」には、テールストックの押し付け動作に関する動作パターンが格納され、動作「２」には、振れ止めを用いた支持動作に関する動作パターンが格納されている。
【００２０】
この動作パターンは、複数の指令から構成されている。指令中の各ＮＣ工作機械の機械構成に応じて変わる部分には、変数が割り当てられている。この変数の部分は、たとえばユーザによって設定されたＭコードであったり、ＮＣ工作機械に応じた位置であったり、軸に付された軸名称であったりする。図５の例では、指令中の大括弧（［］）で括られる部分には、変数名称が記載されている。この動作パターンは、ユーザが自由に変更したり、追加したりすることが可能である。
【００２１】
プログラム解析部１２は、ＮＣプログラム１００を読み込んで解析し、周辺機器を制御する指令であるか否かを判定する。周辺機器への指令でない場合には、ＮＣ制御部１６へと指令を渡す。また、周辺機器への指令である場合には、周辺機器への指令中の動作に関する引数に対応する動作パターンを動作パターン記憶部１１から取得するとともに、指令中の移動量に関する引数を取得し、それらを周辺機器動作生成部１５へと渡す。
【００２２】
動作情報記憶部１３は、動作パターン中の各指令において、周辺機器または刃物台の動作を規定する動作情報を記憶する。図６は、動作情報の一例を示す図である。各内容（変数名）に対して、その値が規定されている。ここで、内容（変数名）は、周辺機器への指令コード中の変数名に対応している。この図では、テールストックで干渉がおきた場合の刃物台の待避位置、テールストックのワークへの押し付け量および押し付け速度などが規定されている。振れ止めなどの他の周辺機器の場合にも図示していないが同様に周辺機器または刃物台の動作が規定される。この動作情報は、たとえば動作パターンごとに設けられる。
【００２３】
機械情報記憶部１４は、ＮＣ工作機械の軸構成と固有のＭコードを規定した機械情報を記憶する。図７は、機械情報の一例を示す図である。各内容（変数名）に対して、その値が規定されている。この図では、一番上のレコードに周辺機器の軸名称が格納され、そのつぎのレコードから、たとえばユーザが固有に設定したＭコードについて、内容と数値（Ｍの後に続く値）が対応付けられている。なお、固有のＭコードがどのような指令であるかについては、図示しないが別途規定されている。
【００２４】
周辺機器動作生成部１５は、プログラム解析部１２から動作パターンと移動量とが渡されると、移動量と、動作情報記憶部１３中の動作情報と、機械情報記憶部１４中の機械情報と、を用いて、動作パターン中の変数に値を代入し、対象とするＮＣ工作機械用の周辺機器用指令を作成する。生成した周辺機器用指令は、ＮＣ制御部１６に渡される。
【００２５】
ＮＣ制御部１６は、プログラム解析部１２から渡された指令と周辺機器用指令とを各軸の移動指令に変換し、サーボ制御部１７に渡す。
【００２６】
サーボ制御部１７は、受け取った移動指令からサーボアンプへの指令を生成し、図示しないＮＣ工作機械のモータを駆動させる。
【００２７】
つぎに、このような構成のＮＣ装置の動作処理について説明する。図８は、実施の形態による動作処理手順の一例を示すフローチャートである。まず、プログラム解析部１２にＮＣプログラム１００が入力されると（ステップＳ１１）、プログラム解析部１２は、周辺機器への指令かどうかを判断する（ステップＳ１２）。
【００２８】
周辺機器への指令である場合（ステップＳ１２でＹｅｓの場合）には、プログラム解析部１２は、入力されたＮＣプログラム１００の周辺機器への指令中の引数「動作（Ｌ）」で指定される動作パターンを、動作パターン記憶部１１から取得する（ステップＳ１３）。また、プログラム解析部１２は、入力されたＮＣプログラム１００の周辺機器への指令中の引数「移動量（Ｋ）」を取得する（ステップＳ１４）。そして、プログラム解析部１２はこの取得した動作パターンと移動量を周辺機器動作生成部１５へ渡す。
【００２９】
ついで、周辺機器動作生成部１５は、周辺機器用指令を生成する処理を行う（ステップＳ１５）。より詳細には、周辺機器動作生成部１５は、取得した動作パターン中の変数に、取得した移動量と、動作情報記憶部１３中の動作情報と、機械情報記憶部１４中の機械情報と、から得られる情報を代入し、周辺機器用指令を生成する。
【００３０】
その後、またはステップＳ１２で周辺機器への指令でない場合（ステップＳ１２でＮｏの場合）には、ＮＣ制御部１６は、入力された指令または周辺機器用指令を実行する（ステップＳ１６）。具体的には、ＮＣ制御部１６は、受け取った指令または周辺機器用指令を各軸の移動指令に変換し、サーボ制御部１７へと渡す。その後、サーボ制御部１７ではサーボアンプへの指令を生成し、モータを駆動させて制御を実行する。なお、ステップＳ１２で周辺機器への指令でない場合には、プログラム解析部１２は、通常通りＮＣ制御部１６へ指令を渡している。以上によって、処理が終了する。
【００３１】
ここで、ステップＳ１５の周辺機器用指令の生成処理の具体例を図１のテールストックを備える工作機械を制御するＮＣ装置の場合と、図２の振れ止めを備える工作機械を制御するＮＣ装置の場合のそれぞれについて説明する。
【００３２】
図９は、テールストックを備えるＮＣ装置の場合の周辺機器用指令の生成処理の手順の一例を示すフローチャートである。なお、ここでは、図３（ｂ）に示されるようにプログラムとして「Ｇ３０５  Ｌ１  Ｋ１００」という周辺機器への指令が入力されたものとする。また、図８のステップＳ１３では、図５の動作「１」に示される動作パターンが取得され、移動量として「１００」が取得された状態にあるものとする。
【００３３】
図５の動作パターン「１」では、最初にテールストックが移動した場合に刃物台と干渉するかの干渉判定を行う（ステップＳ３１）。干渉すると判断される場合（ステップＳ３１でＹｅｓの場合）には、刃物台待避指令を生成する（ステップＳ３２）。具体的には、刃物台待避指令は、次式（１−１）のように表されている。
Ｇ９０Ｇ０Ｘ［待避位置Ｘ］Ｙ［待避位置Ｙ］Ｚ［待避位置Ｚ］  ・・・（１−１）
【００３４】
この（１−１）式中の変数名である［待避位置Ｘ］、［待避位置Ｙ］、［待避位置Ｚ］を図６の動作情報記憶部１３の動作情報から取得する。図６より、待避位置Ｘは「１００．」であり、待避位置Ｙは「０．」であり、待避位置Ｚは「１００．」であるので、それぞれ代入することによって、（１−１）式は、（１−２）式のように書き換えられる。
Ｇ９０Ｇ０Ｘ１００．Ｙ０．Ｚ１００．  ・・・（１−２）
【００３５】
その後、またはステップＳ３１で干渉しないと判断される場合（ステップＳ３１でＮｏの場合）には、動作パターン「１」中のつぎのテールストック動作準備指令を生成する（ステップＳ３３）。このテールストック動作準備指令は、次式（２）のように表されている。
Ｍ５Ｍ９  ・・・（２）
【００３６】
このＭコードは、ユーザやメーカに関係なく共通的に規定されているものである。すなわち、「Ｍ５」は主軸停止を示し、「Ｍ９」はクーラントオフを示す命令である。この指令中には変数がないので、（２）式の指令はそのままである。
【００３７】
ついで、動作パターン「１」中のつぎのテールストック移動指令を生成する（ステップＳ３４）。図５より、テールストック移動指令は、次式（３−１）のように表されている。
Ｇ９０Ｇ０［周辺機器軸名称］［［移動量］−［押し付け量］］  ・・・（３−１）
【００３８】
この（３−１）式中の変数名である［周辺機器軸名称］を機械情報記憶部１４の機械情報から取得し、［押し付け量］を動作情報記憶部１３の動作情報から取得し、［移動量］を周辺機器への指令中の引数から取得する。図７より、周辺機器軸名称は「Ｗ」であり、図６より、押し付け量は「１．」であり、周辺機器への指令中の引数より、移動量は「１００」である。これらの値を（３−１）式に代入することによって、次式（３−２）が得られる。
Ｇ９０Ｇ０Ｗ９９．  ・・・（３−２）
【００３９】
その後、押し付け量があるか否かの押し付け判断を行う（ステップＳ３５）。この押し付け量の判断は、動作情報記憶部１３の動作情報中の押し付け量を取得して行われる。図６より、押し付け量は「１．」であるので、この例では、押し付け量があることになる。
【００４０】
押し付け量がある場合（ステップＳ３５でＹｅｓの場合）には、テールストック押し付け動作指令を生成する（ステップＳ３６）。図５よりテールストック押し付け動作指令は、次式（４−１）のように表されている。
Ｇ３１［周辺機器軸名称］［押し付け量］Ｍ［推力（高）］Ｍ［推力ＯＮ］Ｆ  ・・・（４−１）
【００４１】
この（４−１）式中の変数名である［周辺機器軸名称］と［推力（高）］と［推力ＯＮ］とを機械情報記憶部１４の機械情報から取得し、［押し付け量］を動作情報記憶部１３の動作情報から取得する。図７より周辺機器軸名称は「Ｗ」であり、推力（高）は「８３１」であり推力ＯＮは「５０４」である。また、図６より、押し付け量は「１．」である。これらの値を（４−１）式に代入することによって、次式（４−２）が得られる。
Ｇ３１Ｗ１．Ｍ８３１Ｍ５０４Ｆ  ・・・（４−２）
【００４２】
その後、またはステップＳ３５で押し付け量がない場合（ステップＳ３５でＮｏの場合）には、上記（１−２）式、（２）式、（３−２）式および（４−２）式を有する動作パターンを周辺機器用指令とすることによって、周辺機器用指令の生成処理が終了する。図１０は、テールストックを備えるＮＣ装置に対する周辺機器用指令を示す図である。その後、処理が図８に戻る。
【００４３】
図１１は、振れ止めを備えるＮＣ装置の場合の周辺機器用指令の生成処理の手順の一例を示すフローチャートである。なお、ここでは、次式（５）に示されるプログラムが周辺機器への指令として入力されたものとする。
Ｇ３０５  Ｌ２  Ｋ１００  ・・・（５）
【００４４】
また、図８のステップＳ１３では、図５の動作「２」に示される動作パターンが取得され、移動量として「１００」が取得された状態にあるものとする。
【００４５】
図５の動作パターン「２」では、最初に振れ止めが移動した場合に刃物台と干渉するかの干渉判定を行う（ステップＳ５１）。干渉すると判断される場合（ステップＳ５１でＹｅｓの場合）には、刃物台待避指令を生成する（ステップＳ５２）。具体的には、刃物台待避指令は、次式（６−１）のように表されている。
Ｇ９０Ｇ０Ｘ［待避位置Ｘ］Ｙ［待避位置Ｙ］Ｚ［待避位置Ｚ］  ・・・（６−１）
【００４６】
この（６−１）式中の変数名である［待避位置Ｘ］、［待避位置Ｙ］、［待避位置Ｚ］を図６の動作情報記憶部１３の動作情報から取得する。図６より、待避位置Ｘは「１００．」であり、待避位置Ｙは「０．」であり、待避位置Ｚは「１００．」であるので、それぞれ代入することによって、（６−１）式は、（６−２）式のように書き換えられる。
Ｇ９０Ｇ０Ｘ１００．Ｙ０．Ｚ１００．  ・・・（６−２）
【００４７】
その後、またはステップＳ５１で干渉しないと判断される場合（ステップＳ５１でＮｏの場合）には、動作パターン「２」中のつぎの振れ止め動作準備指令を生成する（ステップＳ５３）。この振れ止め動作準備指令は、次式（７）のように表されている。
Ｍ５Ｍ９  ・・・（７）
【００４８】
このＭコードは、ユーザやメーカに関係なく共通的に規定されているものである。すなわち、「Ｍ５」は主軸停止を示し、「Ｍ９」はクーラントオフを示す命令である。この指令中には、変数がないので、（７）式の指令はそのままである。
【００４９】
ついで、動作パターン中のつぎの振れ止めアーム開指令を生成する（ステップＳ５４）。図５より、振れ止め開指令は、次式（８−１）のように表されている。
Ｍ［振れ止めアーム開指令］  ・・・（８−１）
【００５０】
この（８−１）式中の変数名である［振れ止めアーム開指令］を機械情報記憶部１４の機械情報から取得する。図７より、振れ止めアーム開指令は「２９２」であるので、この値を（８−１）式に代入することによって、次式（８−２）が得られる。
Ｍ２９２  ・・・（８−２）
【００５１】
ついで、動作パターン中のつぎの振れ止め移動指令を生成する（ステップＳ５５）。図５より、振れ止め移動指令は、次式（９−１）のように表されている。
Ｇ９０Ｇ０［周辺機器軸名称］［移動量］  ・・・（９−１）
【００５２】
この（９−１）式中の変数名である［周辺機器軸名称］を機械情報記憶部１４の機械情報から取得し、［移動量］を周辺機器への指令中の引数から取得する。図７より、周辺機器軸名称は「Ｗ」であり、周辺機器への指令中の引数より、移動量は「１００」である。これらの値を（９−１）式に代入することによって、次式（９−２）が得られる。
Ｇ９０Ｇ０Ｗ１００．  ・・・（９−２）
【００５３】
その後、動作パターン中のつぎの振れ止めアーム締指令を生成する（ステップＳ５６）。図５より、振れ止めアーム締指令は、次式（１０−１）のように表されている。
Ｍ［振れ止めアーム締指令］  ・・・（１０−１）
【００５４】
この（１０−１）式中の変数名である［振れ止めアーム締指令］を機械情報記憶部１４の機械情報から取得する。図７より、振れ止めアーム締指令は「２９３」であるので、この値を（１０−１）式に代入することによって、次式（１０−２）が得られる。
Ｍ２９３  ・・・（１０−２）
【００５５】
その後、上記（６−２）式、（７）式、（８−２）式、（９−２）式および（１０−２）式を有する動作パターンを周辺機器用指令とすることによって、周辺機器用指令の生成処理が終了する。図１２は、テールストックを備えるＮＣ装置に対する周辺機器用指令を示す図である。その後、処理が図８に戻る。
【００５６】
この実施の形態では、周辺機器の動作に関する指令をＮＣ工作機械の構成などに応じて変化する部分を変数として表現した動作パターンを定義した動作パターン記憶部１１と、機械構成ごとに定義した軸名称および固有に定義したＭコードを変数に対応付けした機械情報を記憶する機械情報記憶部１４と、動作パターンでの所定の動作と変数とを対応付けした動作情報記憶部１３と、を備え、周辺機器への指令を、動作パターンを指示する引数と移動量を指示する引数で定義するようにした。そして、プログラム解析部で周辺機器への指令であると判定した場合には、引数で指示される動作パターンを動作パターン記憶部１１から取得し、引数で指示される移動量とともに周辺機器動作生成部１５へと渡し、周辺機器動作生成部１５で動作パターンの変数を、取得した移動量、動作情報記憶部１３の動作情報または機械情報記憶部１４の機械情報から取得される値で置換して周辺機器用指令を生成し、ＮＣ制御部１６に渡すようにした。これによって、ユーザは周辺機器に動作させたい動作パターンと移動量を指定するだけで、自動的に周辺機器の制御を行う周辺機器用指令が生成され、周辺機器の制御を行うことができるという効果を有する。また、今までユーザが自分でプログラムしていた軸名称、Ｍコードまたは指令順序を気にする必要がなく、簡単にプログラミングすることが可能になるとともに、簡単に周辺機器の制御を行うことができる。その結果、プログラムの作成時間を削減することができるという効果を有する。
【産業上の利用可能性】
【００５７】
以上のように、この発明にかかる数値制御装置は、工作機械の周囲に周辺機器を備える数値制御装置に有用である。
【符号の説明】
【００５８】
１  主軸、２  ワーク、３  テールストック、４  軸、５  刃物台、６  工具、７  振れ止め、１０  ＮＣ装置、１１  動作パターン記憶部、１２  プログラム解析部、１３  動作情報記憶部、１４  機械情報記憶部、１５  周辺機器動作生成部、１６  ＮＣ制御部、１７  サーボ制御部、１００  ＮＣプログラム。
【要約】
周辺機器の軸構成、固有のＭコードまたは前記周辺機器の移動量を変数として用いた前記周辺機器での動作を実行させる指令を含む動作パターンを記憶する動作パターン記憶部（１１）と、前記周辺機器の軸または前記固有のＭコードに前記変数に対する値を対応付けた機械情報を記憶する機械情報記憶部（１４）と、受け付けた数値制御プログラム中の指令が前記周辺機器向けの指令である場合に、前記動作パターンを指示する引数に対応する動作パターンを取得し、前記周辺機器の移動量を指示する引数の移動量とともに周辺機器動作生成部（１５）に渡すプログラム解析部（１２）と、取得した前記動作パターンを構成する指令の各変数に、対応する前記機械情報または前記移動量を代入して周辺機器用指令を生成する前記周辺機器動作生成部（１５）と、前記周辺機器用指令から前記工作機械または前記周辺機器を構成する軸に対する移動指令を生成する数値制御部（１６）と、を備える。【図１】
0005456216.tif 000002
【図２】
0005456216.tif 000003
【図３】
0005456216.tif 000004
【図４】
0005456216.tif 000005
【図５】
0005456216.tif 000006
【図６】
0005456216.tif 000007
【図７】
0005456216.tif 000008
【図８】
0005456216.tif 000009
【図９】
0005456216.tif 000010
【図１０】
0005456216.tif 000011
【図１１】
0005456216.tif 000012
【図１２】
0005456216.tif 000013