(57)【要約】  １台の数値制御装置の性能仕様を越えた多軸多系統数値制御加工を行える数値制御システムを得る。  第二の数値制御装置２０１に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部１５５を有する第一の数値制御装置１０１と、外部切り換え軸設定部２５６にて設定された軸を、自己が制御するか、第一の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部２５４を有する第二の数値制御装置２０１とを備え、軸制御権切り換え処理部２５４により制御権を第一の数値制御装置１０１に与えている場合、第一の数値制御装置１０１が、第一の数値制御装置１０１に結合された所定の軸と第二の数値制御装置２０１に結合され第一の仮想軸設定部１５５にて設定された所定の軸とを同期制御する。
2008136110.tif 000002
【特許請求の範囲】
【請求項１】
外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記外部の数値制御装置に送信するとともに、前記外部の数値制御装置からのフィードバックデータを受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部とを備え、前記補間制御部の補間出力に基づいて、自己に結合された所定の軸と前記仮想軸設定部にて設定された外部の数値制御装置に結合された所定の軸とを同期制御することを特徴とする数値制御装置。
【請求項２】
自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記外部の数値制御装置から受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を補間処理する補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、この軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、前記外部切り換え軸設定部にて設定された軸が、前記外部の数値制御装置から補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された軸と同期制御されることを特徴とする数値制御装置。
【請求項３】
外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記外部の数値制御装置のフィードバックデータを前記外部の数値制御装置から受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記外部の数値制御装置のフィードバックデータに基づいて補間処理する補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、前記補間制御部の補間出力に基づいて、自己に結合された所定の軸と前記仮想軸設定部にて設定された外部の数値制御装置に結合された所定の軸とを同期制御するとともに、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、前記外部切り換え軸設定部にて設定された軸が、前記外部の数値制御装置から補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された軸と同期制御されることを特徴とする数値制御装置。
【請求項４】
外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記外部の数値制御装置のフィードバックデータを、前記外部の数値制御装置から受信する外部通信部と、自己に結合された所定系統の軸と前記外部の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う軸交換制御部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記外部の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を自己に与えている場合、前記補間制御部の補間出力に基づいて、前記外部の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として自己に結合された軸と同期制御し、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、自己に結合され且つ前記外部の数値制御装置に結合された所定系統の軸と軸交換された所定の軸が、前記外部の数値制御装置より送られる補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された所定系統の軸として制御されることを特徴とする数値制御装置。
【請求項５】
自己に結合された軸と外部の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたことを特徴とする請求項１〜請求項４の何れかに記載の数値制御装置。
【請求項６】
前記補間制御部の補間出力が速度指令データであり、前記外部の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項１〜請求項５の何れかに記載の数値制御装置。
【請求項７】
前記補間制御部の補間出力が位置指令データであり、前記外部の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項１〜請求項５の何れかに記載の数値制御装置。
【請求項８】
前記補間制御部は、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とする請求項１〜請求項５の何れかに記載の数値制御装置。
【請求項９】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記第二の数値制御装置に送信するとともに、前記第二の数値制御装置からのフィードバックデータを受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する仮想軸制御部とを有する第一の数値制御装置と、
自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を補間処理する第二の補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記軸制御権切り換え処理部により制御権を前記第一の数値制御装置に与えている場合、前記第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御することを特徴とする数値制御システム。
【請求項１０】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを前記第二の数値制御装置から受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理する第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の補間出力に基づいて、第二の数値制御装置に結合された所定の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定の軸とを同期制御することを特徴とする数値制御システム。
【請求項１１】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを、前記第二の数値制御装置から受信する第一の外部通信部と、自己に結合された所定系統の軸と前記第二の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第一の軸交換制御部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを、前記第一の数値制御装置から受信する第二の外部通信部と、自己に結合された所定系統の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第二の軸交換制御部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記第二の軸交換制御部で交換する軸の組合せの系統で補間処理をする第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の出力に基づいて、第二の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の出力に基づいて、第一の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御することを特徴とする数値制御システム。
【請求項１２】
前記第一の数値制御装置及び第二の数値制御装置の少なくとも一方に、自己に結合された軸と接続される他方の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたことを特徴とする請求項９〜請求項１１の何れかに記載の数値制御システム。
【請求項１３】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が速度指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項９〜請求項１２の何れかに記載の数値制御システム。
【請求項１４】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が位置指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項９〜請求項１２の何れかに記載の数値制御システム。
【請求項１５】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方が、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とする請求項９〜請求項１４の何れかに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の系統を制御する数値制御（Numerical Control；以下ＮＣという）装置及びＮＣシステムに関するものである。
【背景技術】
【０００２】
従来の多軸多系統のＮＣ装置は、図３０のように構成されており、１台のＮＣ装置内に複数系統の解析処理部１１１、１１２を有し、系統毎に、メモリ（図示せず）に格納された各系統のＮＣプログラムを夫々１ブロックずつ読み出し、補間制御部１２０で補間処理を行うために解析を行う。補間制御部１２０で補間処理の結果、各制御軸の移動パルスが生成され、軸制御部１２３は当該軸を駆動するサーボ制御部１０２、１０３、２０２、２０３及び主軸制御部１０４、２０４に移動パルスを出力する。【０００３】
サーボ制御部１０２、１０３、２０２、２０３は指令された移動パルスに従い、結合しているサーボモータ１０５、１０６、２０５、２０６を夫々駆動し、また主軸制御部１０４、２０４は指令された移動パルスに従い、結合している主軸モータ１０７、２０７を夫々駆動する。ＮＣ装置に備えられた軸制御部１２３は、結合しているサーボ制御部１０２、１０３、２０２、２０３もしくは主軸制御部１０４、２０４の制御軸の駆動が可能となっている。
これは、制御系を複数セット  １つのハードウェア内に実現したものであり、夫々の系統で独立した加工プログラム及び各制御信号により制御され、同ＮＣ装置を備えるＮＣ工作機械においては、複数の制御系統で同一または異なる製品を、夫々一つまたは複数加工できるようになっている。【０００４】
なお、図３０に示すＮＣ装置の例の場合、表示装置１３０、ＰＬＣ制御部１２１及び軸交換制御部１２２を備え、またサーボ制御部１０２、１０３、主軸制御部１０４、サーボモータ１０２，１０６及び主軸モータ１０７が、第一系統に属し、またサーボ制御部２０２、２０３、主軸制御部２０４、サーボモータ２０２，２０６及び主軸モータ２０７が、第二系統に属する。
また、従来の多軸多系統のＮＣ装置は、軸交換制御部１２２により、各系統に属する制御軸の一部または全部を、系統間で交換できるように構成されている。【０００５】
図３１に、従来の多軸多系統のＮＣ装置で制御可能な工作機械の一例を示す。図３１の例の場合、刃物台＃１を駆動するＸ１軸と主軸で掴んだワークを長手方向に移動するＺ１軸とで第１系統が構成され、刃物台＃２を駆動するＸ２軸とＺ２軸とで第２系統が構成されている。
通常は、第１系統において、Ｘ１軸、Ｚ１軸、Ｓ１軸に対するプログラム指令を行い、刃物台＃１と主軸Ｓ１との組合せで加工を行い、また、第２系統において、Ｘ２軸、Ｚ２軸、Ｓ２軸に対するプログラム指令を行い、刃物台＃２と主軸Ｓ２との組合せで加工を行う。【０００６】
従来の多軸多系統のＮＣ装置は、更に、例えば、第２系統において、Ｘ２軸、Ｚ１軸、Ｓ１軸に対する指令を行えるよう、軸交換制御部により、第１の系統のＺ１軸と、第２の系統のＺ２軸とを系統間で交換して、刃物台＃２と主軸Ｓ１軸との組合せで加工を行うことで、加工時間の短縮や、複雑な加工を行うができる（例えば、特許文献１参照）。【０００７】
上記のような従来のＮＣ装置は、１つのハードウェア上で、全ての系統、軸を制御しなければならないため、制御可能な系統数及び軸数は、メモリやＣＰＵ処理速度により自ずと制約される課題があった。
このため、制御が必要な系統数及び軸数の要求が増えてくると、更に大容量のメモリや高速なＣＰＵを搭載したＮＣ装置を新たに開発しなければならず、開発コストが増大になるという問題点があった。【０００８】
また、そのように多くの系統数、軸数を要する被制御対象は、特殊な専用工作機械もしくは大規模なＮＣ加工システムである場合が大半であり、一般的なＮＣ工作機械に適用可能なＮＣ装置と共通の開発を行うと、一般的なＮＣ工作機械に適用するには、必要以上の性能を要するハードウェアのため、製造コストが増大する課題があった。【０００９】
このような問題点の一部を解決しようとするものとして、マスターとなる１台のＮＣ装置と、複数のスレーブとなるＮＣ装置で構成され、スレーブ側の各ＮＣ装置が、マスターのＮＣ装置からの信号等により同期しながら、各ＮＣ装置で同期制御を行う方法が公知である。
これは、複数のスレーブのＮＣ装置が、マスターとなる１台のＮＣ装置と同期して運転するので、スレーブとなるＮＣ装置を増設することにより、同時に運転可能な系統数を増やすことができる（例えば、特許文献２参照）。【００１０】
また、通信路を介して複数の自動機械により制御される自動機械制御システムにおいて、複数の制御装置より間接制御される共有軸を備える自動機械を排他的に管理して、複数の自動機械を安全に安定に制御する自動機械制御システムが公知である。
これは、他の自動機械から通信路を介して間接制御可能な共有軸に対し、共有軸の占有を制御し、複数の制御装置から同時に間接制御可能とならないように排他制御を行う。上記の自動機械制御システムは、マスターの自動機械と、マスターの自動機械が占有権を取得したスレーブの自動機械とが、協調動作をする自動機械制御機械において、スレーブの自動機械を制御するマスターの自動機械が２つ以上存在する場合、スレーブの自動機械は、異なる自動機械から複数の指令を受信することになり、動作が保証されないため、他の制御装置で制御する自動機械の占有権を制御することで、安全かつ安定に制御するものである（例えば、特許文献３）。【００１１】
【特許文献１】特開平３−２８９０８号公報
【特許文献２】特開平９−１４６６２３号公報
【特許文献３】特開２００５−１７３８４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
しかしながら、前記特許文献２に開示のＮＣ装置において、系統間で軸を交換できるのは、同一のＣＰＵで制御可能な軸に限られ、ＮＣ装置の増設により、同時に運転を行う系統数を増やしても、同時に異なるＮＣ装置の系統の制御軸を自由に制御できないという難点があった。【００１３】
また、前記特許文献３に開示の動機械制御システムの場合、各自動機械の動作は、同自動機械を制御する制御装置により行われ、スレーブの自動機械の占有を許可されたマスターの自動機からの位置指令に対し、スレーブの制御装置が動作制御を行うのみで、マスターの自動機械とスレーブの自動機械の移動中の相関関係は何ら明記されておらず、マスターの制御装置の軸と、スレーブの制御装置の軸との間での補間及び同期は保証されていない。【００１４】
本発明は、かかる問題点を解決するためになされたもので、異なるＮＣ装置の制御軸を意識せず、軸を組み合わせて、自由に補間制御や同期制御できるＮＣ装置及びＮＣシステムを得ることを目的としている。
【課題を解決するための手段】
【００１５】
本発明の数値制御装置は、外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記外部の数値制御装置に送信するとともに、前記外部の数値制御装置からのフィードバックデータを受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部とを備え、前記補間制御部の補間出力に基づいて、自己に結合された所定の軸と前記仮想軸設定部にて設定された外部の数値制御装置に結合された所定の軸とを同期制御するものである。【００１６】
また、本発明の数値制御装置は、自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記外部の数値制御装置から受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を補間処理する補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、この軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、前記外部切り換え軸設定部にて設定された軸が、前記外部の数値制御装置から補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された軸と同期制御されるものである。【００１７】
また、本発明の数値制御装置は、外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記外部の数値制御装置のフィードバックデータを前記外部の数値制御装置から受信する外部通信部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記外部の数値制御装置のフィードバックデータに基づいて補間処理する補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、前記補間制御部の補間出力に基づいて、自己に結合された所定の軸と前記仮想軸設定部にて設定された外部の数値制御装置に結合された所定の軸とを同期制御するとともに、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、前記外部切り換え軸設定部にて設定された軸が、前記外部の数値制御装置から補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された軸と同期制御されるものである。【００１８】
また、本発明の数値制御装置は、外部の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、自己に結合された所定の軸を、外部の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記外部の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記外部の数値制御装置のフィードバックデータを、前記外部の数値制御装置から受信する外部通信部と、自己に結合された所定系統の軸と前記外部の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う軸交換制御部と、NCプログラムを解析する解析処理部と、この解析処理部の解析結果を前記外部の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記外部の数値制御装置に出力する仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記外部の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを備え、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を自己に与えている場合、前記補間制御部の補間出力に基づいて、前記外部の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として自己に結合された軸と同期制御し、前記軸制御権切り換え処理部により、前記外部切り換え軸設定部にて設定された軸の制御権を前記外部の数値制御装置に与えている場合、自己に結合され且つ前記外部の数値制御装置に結合された所定系統の軸と軸交換された所定の軸が、前記外部の数値制御装置より送られる補間データに基づいて、前記外部の数値制御装置により、前記外部の数値制御装置に結合された所定系統の軸として制御されるものである。【００１９】
また、本発明の数値制御装置は、前記の数値制御装置に、自己に結合された軸と外部の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたものである。【００２０】
また、本発明の数値制御装置は、前記補間制御部の補間出力が速度指令データであり、前記外部の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。【００２１】
また、本発明の数値制御装置は、前記補間制御部の補間出力が位置指令データであり、前記外部の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。【００２２】
また、本発明の数値制御装置は、前記補間制御部が、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とするものである。【００２３】
また、本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記第二の数値制御装置に送信するとともに、前記第二の数値制御装置からのフィードバックデータを受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する仮想軸制御部とを有する第一の数値制御装置と、
自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を補間処理する第二の補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記軸制御権切り換え処理部により制御権を前記第一の数値制御装置に与えている場合、前記第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するものである。【００２４】
また、本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを前記第二の数値制御装置から受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理する第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の補間出力に基づいて、第二の数値制御装置に結合された所定の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定の軸とを同期制御するものである。【００２５】
また、本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを、前記第二の数値制御装置から受信する第一の外部通信部と、自己に結合された所定系統の軸と前記第二の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第一の軸交換制御部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを、前記第一の数値制御装置から受信する第二の外部通信部と、自己に結合された所定系統の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第二の軸交換制御部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記第二の軸交換制御部で交換する軸の組合せの系統で補間処理をする第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の出力に基づいて、第二の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の出力に基づいて、第一の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するものである。【００２６】
また、本発明の数値制御装置システムは、前記第一の数値制御装置及び第二の数値制御装置の少なくとも一方に、自己に結合された軸と接続される他方の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたものである。【００２７】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が速度指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。【００２８】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が位置指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。【００２９】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方が、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とするものである。
【発明の効果】
【００３０】
本発明によれば、ハードウェアが異なる各ＮＣ装置に結合された制御軸を自由に組み合わせて補間制御や同期制御を行うことができる。
従って、１台のハードウェアで実現可能な能力以上の加工が必要な工作機械に適用する場合、ＮＣ装置を更に付加することによって、機械オペレータが、複数台のＮＣ装置で制御されていることを意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、ＮＣ装置間の協調加工（同期制御加工）などを行うことができる。
また、安価なハードウェアを使用して、個々のＮＣ装置の性能が低くても高機能な多軸系統制御を実現できるため、一般的な機械に対して最適な性能のＮＣ装置に集約すれば足りるようになって、１台で全ての仕様をカバーする一般的な機械に対しては過剰仕様となる多軸多系統のＮＣ装置を開発する必要がなくなり、よって開発コスト及び製造コストを削減できる。【００３１】
また、ＮＣ装置間に跨る軸の制御タイミングを一致させることができ、ひいてはＮＣ装置間に跨る軸の同期制御を精度よく行うことができる。【００３２】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り換え、主軸速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送りやねじ切り加工などが行える。【００３３】
また、各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、直線軸または回転軸の制御系統の切り換え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間などが行える。【００３４】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、また各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置や、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り替え、主軸速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送りやねじ切りなどが行えるとともに、直線軸または回転軸の制御系統の切り替え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間などが行える。
【図面の簡単な説明】
【００３５】
【図１】本発明の実施の形態１に係るＮＣシステムの構成を示す要部ブロック図である。
【図２】本発明の実施の形態１に係るＮＣシステムの軸構成例を示す図である。
【図３】本発明の実施の形態１に係るＮＣシステムの仮想軸及び外部切り替え有効軸の設定例を示す図である。
【図４】本発明の実施の形態１に係るＮＣシステムのプログラム例を示す図である。
【図５】図４のプログラム例に対する動作例を示す図である。
【図６】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の主軸指令時の動作を示すフローチャートである。
【図７】本発明の実施の形態１に係るＮＣシステムにおける仮想軸制御部の仮想主軸に対する補間出力動作を示すフローチャートである。
【図８】本発明の実施の形態１に係るＮＣシステムにおける制御軸制御権切り替えの通信シーケンスを示す図である。
【図９】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の動作を説明する図で、Ｓ２軸のフィードバック位置及びＺ１軸の指令位置を示す図である。
【図１０】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の動作を説明する図で、Ｓ２軸のフィードバック位置差分及びＺ１軸の補間移動量を示す図である。
【図１１】本発明の実施の形態１に係るＮＣシステムの変形例を示す要部ブロック図である。
【図１２】本発明の実施の形態２に係るＮＣシステムの構成を示す要部ブロック図である。
【図１３】本発明の実施の形態２に係るＮＣシステムのタイムチャートを示す図である。
【図１４】本発明の実施の形態２に係るＮＣシステムの軸構成例を示す図である。
【図１５】本発明の実施の形態２に係るＮＣシステムの仮想軸及び外部切り替え有効軸の設定例を示す図である。
【図１６】本発明の実施の形態２に係るＮＣシステムのプログラム例を示す図である。
【図１７】本発明の実施の形態２に係るＮＣシステムにおける軸交換制御部の軸交換指令時の動作を示すフローチャートである。
【図１８】本発明の実施の形態２に係るＮＣシステムにおける仮想軸制御部の仮想軸に対する補間出力動作を示すフローチャートである。
【図１９】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の一例を示す構成図である。
【図２０】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の系統・軸構成例を示す図である。
【図２１】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工１サイクル目の系統・軸構成例を示す図である。
【図２２】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工２サイクル目の系統・軸構成例を示す図である。
【図２３】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工３サイクル目の系統・軸構成例を示す図である。
【図２４】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工４サイクル目の系統・軸構成例を示す図である。
【図２５】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工５サイクル目の系統・軸構成例を示す図である。
【図２６】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工６サイクル目の系統・軸構成例を示す図である。
【図２７】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工プログラムの構成例を示す図である。
【図２８】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械のＮＣ＃１の制御軸交換動作を示すフローチャートである。
【図２９】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械のＮＣ＃２の制御軸交換動作を示すフローチャートである。
【図３０】従来の多軸多系統のＮＣ装置の構成を示すブロック図である。
【図３１】従来の多軸多系統のＮＣ装置で制御可能な工作機械の軸構成例を示す図である。
【符号の説明】
【００３６】
１０１、２０１  ＮＣ装置
１０２、１０３、１０８、１０９、２０２、２０３、２０８、２１０  サーボ制御部
１０４、２０４  主軸制御部
１０５、１０６、１１０、１１１、２０５、２０６、２０９、２１１  サーボモータ
１０７、２０７  主軸モータ
１１１、１１２、２１１、２１２  解析処理部
１２０、２２０  補間制御部
１２１、２２１  ＰＬＣ制御部
１２２、２２２  軸交換制御部
１２３、１２３  軸制御部
１３０  表示装置
１４０、２４０  ＮＣプログラム
１４１、１４２、２４１  ＮＣプログラム
１５１、２５１  仮想軸制御部
１５２、２５２  遅延制御部
１５３、２５３  外部通信部
１５４、２５４  軸制御切り替え処理部
１５５、２５５  仮想軸設定部
１５６、２５６  外部切り替え軸設定部
【発明を実施するための最良の形態】
【００３７】
実施の形態１．
以下、本発明の実施の形態１を、図１〜図１１を用いて説明する。なお、この実施の形態１は、本発明を、ＮＣ旋盤を２台並べた加工ラインに適用した場合の例である。
図１は本発明の実施の形態１に係るＮＣシステムの構成を示す要部ブロック図であり、１０１、２０１は夫々別個にＣＰＵを有し夫々独立して制御可能なＮＣ装置で、ＮＣ装置１０１は一方のＮＣ旋盤に搭載され、またＮＣ装置２０１は他方のＮＣ旋盤に搭載される。
１０２、１０３はＮＣ装置１０１と結合された制御軸のサーボ制御部、１０４はＮＣ装置１０１と結合された主軸制御部、１０５、１０６はサーボ制御部１０２、１０３が駆動するサーボモータで、NC装置１０１に位置情報をフィードバックする位置検出器を有する。【００３８】
１０７は主軸制御部１０４が駆動する主軸モータで、この主軸モータで制御される主軸に、NC装置１０１に位置情報をフィードバックする位置検出器が設けられている。また、２０２、２０３、２０８はＮＣ装置２０１と結合された制御軸のサーボ制御部、２０４はＮＣ装置２０１と結合された主軸制御部、２０５、２０６、２０９はサーボ制御部２０２、２０３、２０８が駆動するサーボモータで、NC装置２０１に位置情報をフィードバックする位置検出器を有する。２０７は主軸制御部２０４が駆動する主軸モータで、この主軸モータで駆動される主軸に、NC装置２０１に位置情報をフィードバックする位置検出器が設けられている。【００３９】
なお、NC装置２０１の軸制御部２２３にフィードバックされた位置情報は、NC装置１０１の補間制御部１２０にもフィードバックされる。
また、NC装置１０１とNC装置２０１とで共用される表示装置１３０は、表示画面、キーボードなどを有するもので、公知のものである。
また、ＮＣ装置１０１、２０１は、ＣＰＵ、メモリなどからなる公知のハードウェア構成を有し、以下に説明する処理部、制御部、設定部などがソフトウエアにより構成され、搭載されている。【００４０】
ＮＣ装置１０１は、解析処理部１１１、補間制御部１２０、ＰＬＣ制御部１２１、軸制御部１２３を備える。
また、ＮＣ装置２０１は、解析処理部２１１、補間制御部２２０、ＰＬＣ制御部２２１、軸制御部２２３を備える。【００４１】
NC装置１０１の解析処理部１１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部１２０は、解析処理部１１１の解析結果を受け、また軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じて送られたNC装置２０１からのフィードバックデータ（前記主軸の検出器により検出された位置情報など）に基づいて所定時間毎の補間処理を行う。また、この補間制御部１２０は、NC装置２０１に結合された制御軸（例えば主軸モータ２０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部１２３は、結合しているサーボ制御部１０２、１０３及び主軸制御部１０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部１０２、１０３及び主軸制御部１０４は、指令された移動量に従い、結合しているモータ１０５〜１０７を駆動する。【００４２】
またNC装置２０１の解析処理部２１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部２２０は、解析処理部１１１の結果を受け、所定時間毎の補間処理を行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部２２３は、結合しているサーボ制御部２０２、２０３、２０８及び主軸制御部２０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部２０２、２０３、２０８及び主軸制御部２０４は、指令された移動量に従い、結合しているモータ２０５〜２０７、２０９を駆動する。
なお、補間制御部１２０の詳細機能は、図６、図９及び図１０を用いて後述する。
また、ＰＬＣ制御部１２１、２２１は、NCプログラムより指令される補助指令（M指令）などを処理するもので、公知のものであるので、その説明は省略する。【００４３】
更に、ＮＣ装置１０１は、仮想軸制御部１５１、外部通信部１５３、仮想軸設定部１５５を備え、ＮＣ装置２０１は、外部通信部２５３、軸制御権切り替え処理部２５４、外部切り替え軸設定部２５６を備える。【００４４】
ＮＣ装置１０１が備える仮想軸制御部１５１は、補間制御部１２０によって補間処理された制御軸のうち、ＮＣ装置１０１の軸制御部１２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１に示すNCシステムの場合、例えばNC装置２０１に結合された主軸モータ２０７にて制御される主軸が仮想軸として設定されておれば、仮想軸制御部１５１はその主軸モータ２０７を制御する。
即ち、仮想軸制御部１５１は、補間制御部１２０で補間処理された、仮想軸設定部１５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、外部通信部２５３を通じて、ＮＣ装置２０１の軸制御部２２３に送信することにより、仮想軸の制御を行う。【００４５】
なお、外部通信部１５３とＮＣ装置２０１の外部通信部２５３とは、双方向シリアル通信、イーサネット（登録商標）もしくはバスの通信路で結合され、一定周期毎に相互に通信を行う。このため、仮想軸制御部１５１が送信する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信でき、またNC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。【００４６】
ＮＣ装置２０１が備える軸制御権切り替え処理部２５４は、軸制御部２２３により制御可能な軸のうち、ＮＣ装置２０１の外部切り替え軸設定部２５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部２５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。また、軸制御権切り替え処理部２５４は、外部のＮＣ装置１０１で運転される加工プログラムの指令、またはＮＣ装置２０１で運転される加工プログラムの指令によって、優先度に従い、制御権が切り替えられる。
なお、制御権の切り替えは、PLC制御部２２１からの信号により行うことも可能である。
また、仮想軸設定部１５５及び外部切り替え軸設定部２５６の機能は、図３を用いて後述する。【００４７】
図２は本発明の実施の形態１に係るＮＣシステムの軸構成例を示す図である。ＮＣ装置１０１とＮＣ装置２０１は、別ＣＰＵで動作する装置であるので、夫々のＮＣ装置は独立して、各々の制御系統で別のＮＣプログラムに従い運転を行う。また、ＮＣ装置１０１とＮＣ装置２０１は外部通信部１５３と外部通信部２５３により結合される。
この例の場合、ＮＣ装置１０１は、Ｘ１軸、Ｚ１軸、Ｓ１軸（主軸）が結合された１系統構成のＮＣ装置としている。ＮＣ装置１０１の第１系統で実行するＮＣプログラム１４０により、Ｘ１軸、Ｚ１軸、Ｓ１軸は、夫々Ｘ、Ｚ、Ｓのアドレスでプログラム指令可能である。また、ＮＣ装置２０１は、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸（主軸）が結合された１系統構成のＮＣ装置としている。ＮＣ装置２０１の第１系統で実行するＮＣプログラム２４０により、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸は、夫々Ｘ、Ｚ、Ｙ、Ｓのアドレスでプログラム指令可能である。【００４８】
更に、ＮＣ装置１０１においては、ＮＣ装置１０１に結合されたＸ１軸、Ｚ１軸、Ｓ１軸が、ＮＣプログラム１４０のＸ、Ｚ、Ｓのアドレスで指令可能な軸構成に加えて、Ｇコード(例えばG４４指令)により制御主軸を切り替えＳアドレスで指令を与える、もしくは専用のＳ指令（Ｓ２＝）で指令を与える仮想の主軸（Ｓ２軸）が設定される。【００４９】
図３に、図２に示すような軸構成としたＮＣシステムにおける仮想軸及び外部切り替え有効軸の設定例を示す。ＮＣ装置１０１においては、仮想軸設定部１５５にて、Ｘ１軸、Ｚ１軸、Ｓ１軸が、ＮＣ装置１０１に結合された０１局、０２局、０３局のサーボ制御部もしくは主軸制御部の軸として設定され、Ｓ２軸が仮想軸としてＮＣ装置１０１の仮想軸出力局Ｖ０１に割り付けられ、ＮＣ装置１０１のＳ２軸に対する補間出力移動量はＮＣ装置２０１を示すＭ０２の入力局Ｐ０１に対し、送信するように設定される。
一方、ＮＣ装置２０１においては、外部切り替え軸設定部２５６にて、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸が、ＮＣ装置２０１に結合された０１局、０２局、０３局、０４局のサーボ制御部もしくは主軸制御部の軸として設定され、更に、Ｓ２軸は、入力局Ｐ０１が選択された場合に入力局Ｐ０１が受信した補間出力に従い制御される外部切り替え有効軸として設定される。また、入力局Ｐ０１は、ＮＣ装置１０１を示すＭ０１の出力局Ｖ０１に対し通信を行うように設定される。
なお、このような設定は、機械稼動前に行われ、また表示装置１３０に図３に示すような設定画面を表示し、オペレータがＮＣ装置１０１，２０１の備えられているキーボードより入力することにより行われる。
また、各NCプログラムの先頭に前記設定内容を記述し、各NCプログラムの読込み時に各設定部１５５、２５６に前記設定をさせるようにしてもよい。【００５０】
また、図６は、図４に示すようなＮＣプログラムで主軸に対する指令がされたときの、補間制御部の主軸の選択に対するフローチャートである。
即ち、ステップＳ５０１で、Ｓ指令ブロックもしくはＧ９６指令（周速度一定制御指令）ブロックかどうか、即ち主軸に対する指令か否かを判別する。主軸に対する指令ブロックでない場合は、処理を終了し、主軸に対する指令ブロックの場合は、ステップＳ５０２で、Ｇ４４指令（仮想軸として設定された主軸の選択指令）がモーダル中かどうかを判定する。【００５１】
Ｇ４４指令がモーダル中でない場合はＳ１軸選択中と判定（ステップＳ５０３）し、ステップＳ５０４で、仮想軸設定部の設定情報からＳ１軸が仮想主軸かどうかを判定する。Ｓ１軸が仮想主軸でない場合は、この補間制御部が所属するＮＣ装置の接続軸と判断し、ステップＳ５０５で軸制御部に対し速度指令を出力する。ステップＳ５０４でＳ１軸が仮想主軸と判定した場合は、ステップＳ５０６で、Ｓ１軸の速度制御の補間出力を仮想軸制御部に出力し、後述するように、仮想軸制御部では、Ｓ１軸に登録している出力局に対し出力し、当該ＮＣ装置が制御権を取得する。【００５２】
ステップＳ５０２で、Ｇ４４指令モーダル中の場合は、Ｓ２軸選択中と判定（ステップＳ５０７）し、ステップＳ５０８で、仮想軸設定部の設定情報からＳ２軸が仮想主軸かどうかを判定する。Ｓ２軸が仮想主軸でない場合は、この補間制御部が所属するＮＣ装置の接続軸と判断し、ステップＳ５０９で軸制御部に対し速度指令を出力する。ステップＳ５０８でＳ２軸が仮想主軸と判定した場合は、ステップＳ５１０で、Ｓ２軸の速度制御の補間出力を仮想軸制御部に出力し、後述するように、仮想軸制御部では、Ｓ２軸に登録している出力局に対し出力し、当該ＮＣ装置が制御権を取得する。
このフローにおいて、図２に示す軸構成で、且つ図３に示す仮想軸及び外部切り替え有効軸の設定を行った場合には、ステップS５０４での判定は、S１は仮想主軸でないと判断され、ステップS５０５に移行し、またステップS５０８での判定は、S２は仮想主軸であると判断され、ステップS５１０に移行する。【００５３】
また、図７は、仮想軸制御部１５１における、仮想軸に対する速度制御補間出力のフローチャートである。ステップＳ５５０で、仮想軸の設定かどうか判定する。仮想軸設定の場合、ステップＳ５５１で、仮想軸が、主軸または回転軸（直線軸X軸、Y軸、Z軸まわりのA軸、B軸、C軸など）かを判定する。仮想軸が主軸または回転軸の場合、ステップＳ５５２で仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ５５３で、仮想軸に設定された出力局に、当該仮想軸の速度制御の補間結果を出力する。【００５４】
また、ＮＣ装置１０１において仮想軸として設定されたＳ２軸の選択指令がNCプログラム１４０よりなされた場合、仮想軸制御部１５１は外部通信部１５３及び外部通信部２５３を経由し、軸制御権切り替え処理部２５４に対して、制御権の切り替え要求を行い、軸制御権切り替え処理部２５４は、Ｓ２軸の制御権を外部入力局Ｐ０１の指令に切り替えることで、ＮＣ装置１０１に制御権を与える。このときの、ＮＣ装置１０１とＮＣ装置２０１間におけるＳ２軸の制御権切り替えの通信シーケンスを図８に示す。【００５５】
即ち、図８に示すように、ＮＣ装置１０１において仮想軸として設定され、ＮＣ装置２０１に結合された、Ｓ２軸の選択指令がなされた場合、外部通信部を介して、ＮＣ装置１０１からＮＣ装置２０１に対して、Ｓ２軸の制御権切り替え要求が送信される。
次いで、ＮＣ装置２０１は、外部切り替え有効軸であるＳ２軸の制御権を入力局Ｐ０１に切り替え、ＮＣ装置１０１に対して、制御権切り替え完了を通知する。
以降、ＮＣ装置１０１は、仮想軸Ｓ２軸に対する指令に従い、移動量を所定の通信周期に従い、ＮＣ装置２０１に送信する。
次いで、ＮＣ装置２０１においてＳ２軸の制御権の切り替えがなされ、制御権が別のＮＣ装置に切り替わった場合、ＮＣ装置２０１は、ＮＣ装置１０１に対し、制御権が切り離されたことを通知する。【００５６】
なお、上記の通信シーケンスの如何に係らず、ＮＣ装置２０１は、ＮＣ装置１０１にＳ２軸のフィードバック位置情報を送信し、ＮＣ装置１０１は、受信したフィードバック位置情報に従い、Ｓ２軸での毎回転送り指令、ねじ切り指令を行う。【００５７】
図２に示すような軸構成で、図３に示すように設定されたＮＣシステムにおいて、図４に示すNCプログラムが実行された場合、即ちＮＣプログラム１４０がＮＣ装置１０１の第１系統で運転され、ＮＣプログラム２４０がＮＣ装置２０１の第１系統で運転された場合、ＮＣ装置２０１に結合され、仮想軸として設定されたＳ２軸は、図５に示すように動作する。【００５８】
即ち、ＮＣプログラム２４０がＮＣ装置２０１の第１系統で運転され、Ｎ１０ブロックにおいて、Ｓ２軸に対し１０００ｒ／ｍｉｎの速度指令が与えられ、同速度で回転を行う。
次いで、ＮＣ装置１０１の第１系統で運転されるＮＣプログラム１４０のＮ３０ブロックにて、Ｇ４４指令により、ＮＣ装置１０１に仮想軸として設定されたＳ２軸の選択指令がなされ、Ｓ５００指令により、５００ｒ／ｍｉｎの速度指令が与えられる。このとき、ＮＣ装置２０１の軸制御権切り替え処理部２５４は、切り替え要求の順に優先度を決定し、Ｓ２軸の制御権をＮＣ装置１０１の指令に切り替え、Ｓ２軸は、ＮＣ装置１０１で与えられた速度指令の５００ｒ／ｍｉｎで回転を行い、Ｎ３１ブロック（Ｇ９５：毎回転送り指令（工具を主軸1回転あたりどれだけ送るかを指令する切削送り指令））にて、Ｓ２軸の回転速度に対し、１回転辺り１ｍｍの毎回転送り速度でＺ１軸が移動し、旋削を行う。なお、毎回転送り指令は、同期制御の一種である。【００５９】
次いで、ＮＣ装置２０１の第１系統で運転されるＮＣプログラム２４０のＮ４０ブロックにて、Ｇ４３指令によりＮＣ装置２０１の第１系統におけるＳ２軸の選択指令がなされ、８００ｒ／ｍｉｎの速度指令が与えられる。ＮＣ装置２０１の軸制御権切り替え処理部２５４は、Ｓ２軸の制御権をＮＣ装置２０１で与えられた速度指令に切り替え、Ｓ２軸は、ＮＣ装置２０１で与えられた速度指令の８００ｒ／ｍｉｎで回転を行う。【００６０】
次いで、ＮＣ装置１０１の第１系統で運転されるＮＣプログラム１４０のＮ５０ブロックにおいて、Ｓ２軸に対し３００ｒ／ｍｉｎの速度指令が与えられ、ＮＣ装置１０１に仮想軸として設定されたＳ２軸の選択指令がなされ、ＮＣ装置２０１はＳ２軸の制御権をＮＣ装置１０１の指令に切り替え、Ｓ２軸は、ＮＣ装置１０１で与えられた速度指令の３００ｒ／ｍｉｎで回転を行う。そして、ＮＣ装置１０１に結合されたＸ１軸及びＺ１軸によりねじ切りバイトを固定した工具台を駆動し、またＮＣ装置２０１に結合されたＳ２軸でワークを回転させる主軸を駆動する機械構成となっている場合、Ｎ５１ブロック（Ｇ３３：ねじ切り指令）にて、Ｓ２軸の回転速度に対し、０．５ｍｍピッチのねじ切り加工を行う。なお、ねじ切り指令も同期制御の一種である。【００６１】
このねじ切り加工時に、本ＮＣシステムは図９及び図１０に示すように動作する。なお、図９はＳ２軸のフィードバック位置及びＺ１軸の指令位置を示し、また図１０はＳ２軸のフィードバック位置差分及びＺ１軸の補間移動量を示す図である。
即ち、ＮＣ装置１０１の補間制御部１２０は、ねじ切り指令がされた後、軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じてNC装置２０１からのフィードバックされるＳ２軸のフィードバック位置データから、所定の角度位置（１回転基準位置）をまたぐ変化が発生することを検出し、Ｓ２軸が所定の角度位置を通過するのを待つ。次いで、Ｓ２軸が１回転基準位置を通過したことを検出した時、１回転基準位置からのフィードバック位置変化量（ΔＰ）を算出し、初回のＺ１軸移動量を算出する。次いで、ねじ切り指令の終点座標まで、フィードバック位置データの変化量に対してＺ１軸（ねじ切りリード軸）の移動量を算出し、Ｚ１軸の移動量を算出する。【００６２】
ねじのピッチがＰ［ｍｍ］で、ＮＣ装置１０１がＳ２軸のフィードバック位置データを受信する周期ΔＴｓ［ｍｓ］当たりのフィードバック位置データの変化量がΔＰ［度］の場合、補間単位時間ΔＴｉ［ｍｓ］当たりのねじ切りリード軸（Ｚ１軸）の補間移動量は下記式で算出できる。
（Ｚ１軸補間移動量）＝Ｐ×（ΔＴｉ／ΔＴｓ）×ΔＰ／３６０
例えば、ＮＣ装置１０１の補間処理周期（ΔＴｉ）が４ｍｓ、ＮＣ装置１０１とＮＣ装置２０１が通信しＮＣ装置２０１からフィードバック位置データを受信する周期（ΔＴｓ）が８ｍｓ、Ｓ２軸が３００ｒ/ｍｉｎで回転して、ピッチ０．５ｍｍのねじ切りを行う場合、Ｓ２軸のフィードバック位置データはΔＴｓ（８ｍｓ）周期毎に値が更新され、変化量ΔＰは１９度であった場合、Ｚ１軸の補間処理周期（ΔＴｉ）当たりの補間移動量は、
（Ｚ１軸補間移動量）＝０．５［ｍｍ］×（４／８）×１９［度］／３６０
＝０．０１３ｍｍ
として算出され、同補間移動量を出力する。なお、上記計算式で、補間移動量の計算上の端数は、端数処理がなされなければいけないことは言うまでも無い。上記補間移動量計算を行うことで、ＮＣ装置１０１に結合されたＺ１軸は、ＮＣ装置２０１に結合されたＳ２軸が１回転する毎に、０．５ｍｍの補間移動を行い、ねじ切りを行う。【００６３】
なお、図１の例では記載を省略しているが、図１１に示すように、ＮＣ装置１０１に、ＮＣ装置２０１の軸制御権切り替え処理部２５４、外部切り替え軸設定部２５６と実質的に同一の機能を有する軸制御権切り替え処理部１５４、外部切り替え軸設定部１５６を備え、またＮＣ装置２０１に、ＮＣ装置１０１の仮想軸制御部１５１、仮想軸設定部１５５と実質的に同一の機能を有する仮想軸制御部２５１、仮想軸設定部２５５を備える構成としてもよい。
即ち、ＮＣ装置１０１とＮＣ装置２０１とを同一の構成としてもよい。【００６４】
図１１に示すような構成とした場合、仮想軸制御部１５１が送信する指令位置を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信できるとともに、NC装置１０１にフィードバックされた位置情報を、軸制御部１２３、外部通信部１５３、２５３、仮想軸制御部２５１を通じてNC装置２０１の補間制御部２２０に送信できる。また、仮想軸制御部２５１が送信する指令位置を、外部通信部２５３、１５３を通じてＮＣ装置１０１の軸制御部１２３に送信できるとともに、NC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。【００６５】
また、NC装置２０１の仮想軸設定部２５５でNC装置１０１に結合された所定の軸（例えば主軸モータ１０７で制御される軸）を仮想軸として設定するとともに、NC装置１０１の外部切り替え軸設定部１５６で、その仮想軸として設定されたNC装置１０１に結合された所定の軸（例えば主軸モータ１０７で制御される軸）を、外部切り替え軸設定部１５６において外部切り替え有効軸として設定すれば、NC装置２０１側から、NC装置１０１に結合された所定の軸をNC装置２０１に結合された軸と同期制御することができる。【００６６】
以上説明したように、この実施の形態１によれば、１台のハードウェアで実現可能な能力以上の加工が必要な工作機械に適用する場合、ＮＣ装置を更に付加することによって、機械オペレータが、複数台のＮＣ装置で制御されていることを意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、ＮＣ装置間の協調加工（同期制御加工）などを行うことができる。
また、安価なハードウェアを使用して、個々のＮＣ装置の性能が低くても高機能な多軸系統制御を実現できるため、一般的な機械に対して最適な性能のＮＣ装置に集約すれば足りるようになって、１台で全ての仕様をカバーする一般的な機械に対しては過剰仕様となる多軸多系統のＮＣ装置を開発する必要がなくなり、よって開発コスト及び製造コストを削減できる。【００６７】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り換え、速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送り及びねじ切り加工が行える。【００６８】
実施の形態２．
次に本発明の実施の形態２を、図１２〜図１８を用いて説明する。なお、この実施の形態２は、本発明を、ＮＣ旋盤を２台並べた加工ラインに適用した場合の例である。
図１２は本発明の実施の形態２に係るＮＣシステムの構成を示す要部ブロック図であり、１０１、２０１は夫々別個にＣＰＵを有し夫々独立して制御可能なＮＣ装置で、ＮＣ装置１０１は一方のＮＣ旋盤に搭載され、またＮＣ装置２０１は他方のＮＣ旋盤に搭載される。【００６９】
１０２、１０３、１０８、１０９はＮＣ装置１０１と結合された制御軸のサーボ制御部、１０４はＮＣ装置１０１と結合された主軸制御部、１０５、１０６、１１０、１１１はサーボ制御部１０２、１０３、１０８、１０９が駆動するサーボモータで、NC装置１０１に位置情報をフィードバックする位置検出器を有する。１０７は主軸制御部１０４が駆動する主軸モータで、この主軸モータで制御される主軸に、NC装置１０１に位置情報をフィードバックする位置検出器が設けられている。また、２０２、２０３、２０８、２１０はＮＣ装置２０１と結合された制御軸のサーボ制御部、２０４はＮＣ装置２０１と結合された主軸制御部、２０５、２０６、２０９、２１１はサーボ制御部２０２、２０３、２０８，２１０が駆動するサーボモータで、NC装置２０１に位置情報をフィードバックする位置検出器を有する。２０７は主軸制御部２０４が駆動する主軸モータで、この主軸モータで駆動される主軸に、NC装置２０１に位置情報をフィードバックする位置検出器が設けられている。【００７０】
なお、NC装置２０１の軸制御部２２３にフィードバックされた位置情報は、NC装置１０１の補間制御部１２０にもフィードバックされ、NC装置１０１の軸制御部１２３にフィードバックされた位置情報は、NC装置２０１の補間制御部２２０にもフィードバックされる。
また、NC装置１０１とNC装置２０１とで共用される表示装置１３０は、表示画面、キーボードなどを有するもので、公知のものである。
また、ＮＣ装置１０１、２０１は、ＣＰＵ、メモリなどからなる公知のハードウェア構成を有し、以下に説明する処理部、制御部、設定部などがソフトウエアにより構成され、搭載されている。【００７１】
ＮＣ装置１０１は、解析処理部１１１、補間制御部１２０、ＰＬＣ制御部１２１、軸制御部１２３を備える。
またＮＣ装置２０１は、解析処理部２１１、補間制御部２２０、ＰＬＣ制御部２２１、軸制御部２２３を備える。【００７２】
解析処理部１１１、２１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部１２０は、解析処理部１１１の結果を受け、また軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じて送られたNC装置２０１からのフィードバックデータに基づいて所定軸の所定時間毎の補間処理を行う。また、この補間制御部１２０は、NC装置２０１に結合された制御軸（例えば主軸モータ２０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部１２３は、結合しているサーボ制御部１０２、１０３及び主軸制御部１０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部１０２、１０３、１０８、１０９及び主軸制御部１０４は、指令された移動量に従い、結合しているモータ１０５〜１０７、１１０、１１１を駆動する。【００７３】
また、補間制御部２２０は、解析処理部２１１の結果を受け、また軸制御部１２３、外部通信部１５３、外部通信部２５３、仮想軸制御部２５１を通じて送られたNC装置１０１からのフィードバックデータに基づいて所定軸の所定時間毎の補間処理を行う。また、この補間制御部２２０は、NC装置１０１に結合された制御軸（例えば主軸モータ１０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部２２３は、結合しているサーボ制御部２０２、２０３、２０８、２１０及び主軸制御部２０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部２０２、２０３、２０８、２１０及び主軸制御部２０４は、指令された移動量に従い、結合しているモータ２０５〜２０７、１１０、１１１を駆動する。
また、補間制御部１２０、２２０は、図６、図９及び図１０を用いて前述した通りの動作も行う。。
また、ＰＬＣ制御部１２１、２２１は、NCプログラムより指令される補助指令（M指令）などを処理するもので、公知のものであるので、その説明は省略する。【００７４】
更に、ＮＣ装置１０１は、軸交換制御部１２２、仮想軸制御部１５１、遅延制御部１５２、外部通信部１５３、軸制御権切り替え処理部１５４、仮想軸設定部１５５、外部切り替え軸設定部１５６を備え、ＮＣ装置２０１は、軸交換制御部２２２、仮想軸制御部２５１、遅延制御部２５２、外部通信部２５３、軸制御権切り替え処理部２５４、仮想軸設定部２５５、外部切り替え軸設定部２５６を備える。【００７５】
軸交換制御部１２２は、ＮＣ装置１０１におけるプログラム指令等により、系統に属する制御軸の一部または全部の交換を行う。また、軸交換制御部２２２は、ＮＣ装置２０１におけるプログラム指令等により、系統に属する制御軸の一部または全部の交換を行う。本実施の形態２の軸交換制御部１２２、２２２においては、仮想軸設定された軸も軸交換できる制御軸の対象となる。【００７６】
ＮＣ装置１０１が備える仮想軸制御部１５１は、補間制御部１２０によって補間処理された制御軸のうち、ＮＣ装置１０１の軸制御部１２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部１５５にて設定される仮想軸の制御を行う。
即ち、仮想軸制御部１５１は、補間制御部１２０で補間処理された、仮想軸設定部１５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、外部通信部２５３を通じて、ＮＣ装置２０１の軸制御部２２３に送信することにより、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１２に示すNCシステムの場合、例えばNC装置２０１に結合された主軸モータ２０７にて制御される軸が仮想軸として設定されておれば、仮想軸制御部１５１はその主軸モータ２０７を制御する。【００７７】
なお、外部通信部１５３とＮＣ装置２０１の外部通信部２５３とは、双方向シリアル通信、イーサネット（登録商標）もしくはバスの通信路で結合され、一定周期毎に相互に通信を行う。このため、仮想軸制御部１５１が送信する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信できる。また、NC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。【００７８】
また、ＮＣ装置２０１が備える仮想軸制御部２５１も、ＮＣ装置１０１が備える仮想軸制御部１５１と同様の機能を有するものである。即ち、補間制御部２２０によって補間処理された制御軸のうち、ＮＣ装置２０１の軸制御部２２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部２５５にて設定される仮想軸の制御を行う。
即ち、仮想軸制御部２５１は、補間制御部２２０で補間処理された、仮想軸設定部２５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部２５３、外部通信部１５３を通じて、ＮＣ装置１０１に送信することにより、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１２に示すNCシステムの場合、例えばNC装置1０１に結合された主軸モータ１０７にて制御される主軸が仮想軸として設定されておれば、仮想軸制御部２５１はその主軸モータ１０７を制御する。【００７９】
また、本実施の形態２のＮＣ装置において、ＮＣ装置２０１に結合された軸をＮＣ装置１０１の仮想軸として割り当て、ＮＣ装置１０１の補間制御部１２０において、ＮＣ装置１０１に結合した軸と仮想軸とが補間処理されたとき、ＮＣ装置２０１に結合された制御軸を駆動するサーボ制御部もしくは主軸制御部への指令は、仮想軸制御部１５５、外部通信部１５３、外部通信部２５３、軸制御切り替え処理部２５４、軸制御部２２３を経由して出力されるため、ＮＣ装置１０１に結合された制御軸を駆動するサーボ制御部もしくは主軸制御部に対し出力する場合に比べて、応答が遅れることになる。NC装置１０１の遅延制御部１５２は、この応答遅れによる出力タイミングのずれを補正するために設けられたもので、図１３のタイムチャートに示すように、同タイミングの補間出力に対し、ＮＣ装置１０１に結合された軸に対する移動量を一旦バッファリングし、軸制御部１２３への出力を遅延させるものである。この結果、その遅延を、ＮＣ装置１０１がＮＣ装置２０１に結合されたサーボ制御部もしくは主軸制御部に出力するまでの時間または周期とすることによって、NC装置１０１、NC装置２０１とも同一のタイミングで出力を行うことができる。【００８０】
また、ＮＣ装置２０１の遅延制御部２５２も、ＮＣ装置１０１の遅延制御部１５２と同様の機能を有するもので、ＮＣ装置２０１において、ＮＣ装置２０１に結合された軸とＮＣ装置１０１に結合された仮想軸とで補間処理が施され、各々の移動量が、対応するサーボ制御部、もしくは、主軸制御部に伝わる時間が同時期になるように、補間制御部２２０から軸制御部２２３に出力する移動量を一旦バッファリングし、軸制御部２２３への出力を遅延させるものである。【００８１】
また、ＮＣ装置1０１が備える軸制御権切り替え処理部１５４は、軸制御部１２３により制御可能な軸のうち、ＮＣ装置１０１の外部切り替え軸設定部１５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部１５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。軸制御権切り替え処理部１５４は、外部のＮＣ装置２０１で運転される加工プログラムの指令、またはＮＣ装置１０１で運転される加工プログラムの指令によって、優先度に従い、制御権が切り替えられる。
なお、制御権の切り替えは、PLC制御部からの信号により行うことも可能である。【００８２】
また、ＮＣ装置２０１が備える軸制御権切り替え処理部２５４は、ＮＣ装置１０１の軸制御権切り替え処理部１５４と同様の機能を有するものである。即ち、軸制御部２２３により制御可能な軸のうち、ＮＣ装置２０１の外部切り替え軸設定部２５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部２５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。
なお、仮想軸設定部１５５、２５５及び外部切り替え軸設定部１５６、２５６の機能は、図１５を用いて後述する。【００８３】
図１４は本発明の実施の形態２に係るＮＣシステムの軸構成例を示す図である。ＮＣ装置１０１とＮＣ装置２０１は、別ＣＰＵで動作する装置であるので、夫々のＮＣ装置は独立して、各々の制御系統で別々のＮＣプログラムに従い運転を行う。また、ＮＣ装置１０１とＮＣ装置２０１は外部通信部１５３と外部通信部２５３により結合される。【００８４】
この例の場合、ＮＣ装置１０１は、Ｘ１１軸、Ｚ１１軸、Ｃ１１軸で構成される第１系統と、Ｘ１２軸、Ｚ１２軸で構成する第２系統の２系統構成のＮＣ装置としている。ＮＣ装置１０１の第１系統で実行するＮＣプログラム１４０により、Ｘ１１軸、Ｚ１１軸、Ｃ１１軸は、夫々、Ｘ、Ｚ、Ｃのアドレスで位置決め指令が可能である。また、ＮＣ装置１０１の第２系統で実行するＮＣプログラム１４０により、Ｘ１２軸、Ｚ１２軸は、夫々Ｘ、Ｚの軸アドレスで位置決め指令が可能である。なお、Ｃ１１軸は、Ｓアドレスによる速度指令により、回転指令が可能な主軸Ｃ軸制御軸として割り当てられ、Ｃ１１軸として位置決め指令だけでなく、Ｓ１１軸としても動作する。【００８５】
ＮＣ装置２０１は、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸（回転軸）で構成された１系統構成のＮＣ装置としている。ＮＣ装置２０１の第１系統で実行するＮＣプログラム２４０により、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸は、夫々、Ｘ、Ｚ、Ｙ、Ｃ、Ｖの軸アドレスで位置決め指令が可能である。なお、Ｃ２１軸は、Ｓアドレスによる速度指令により、回転指令が可能な主軸Ｃ軸制御軸として割り当てられ、Ｃ２１軸として位置決め指令だけでなく、Ｓ２１軸としても動作する。【００８６】
更に、ＮＣ装置１０１においては、ＮＣ装置１０１に結合された制御軸（Ｘ１１軸、Ｚ１１軸、Ｃ１１軸、Ｘ１２軸、Ｚ１２軸）に加えて、仮想の位置決め軸として、仮想Ｃ２１軸、及び、仮想Ｖ２１軸が設定される。また、ＮＣ装置２０１においては、ＮＣ装置２０１に結合された制御軸（Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸）に加えて、仮想の位置決め軸として、仮想Ｃ１１軸が設定される。【００８７】
図１５に、図１４に示すような軸構成としたＮＣシステムにおける仮想軸及び外部切り替え有効軸の設定例を示す。ＮＣ装置１０１においては、第１系統のＸ１１軸、Ｚ１１軸、Ｃ１１軸（Ｓ１１軸）、第２系統のＸ１２軸、Ｚ１２軸が結合され、仮想軸として、Ｃ２１軸、Ｖ２１軸が割り当てられている。また、ＮＣ装置２０１においては、第１系統のＸ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸（Ｓ２１軸）、Ｖ２１軸が結合され、仮想軸として、Ｃ１１軸が割り当てられている。【００８８】
図１５の設定例の場合、仮想軸設定部１５５により、ＮＣ装置１０１側の仮想軸の通信局Ｖ０１〜Ｖ０４のうち、Ｖ０１局にＣ２１軸が仮想軸として設定され、通信の接続先として、ＮＣ装置２０１を示すＭ０２の外部切り替え有効軸のＰ０１局に割り付けられている。また、Ｖ０２局にＶ２１軸が設定され、通信の接続先として、ＮＣ装置２０１を示すＭ０２の外部切り替え有効軸のＰ０２局に割り付けられている。【００８９】
また、外部切り替え軸設定部１５６により、ＮＣ装置２０１側の外部切り替え有効軸の通信局Ｐ０１〜Ｐ０４のうち、Ｐ０１局には、Ｃ２１軸が外部切り替え軸として設定されており、ＮＣ装置１０１で、仮想Ｃ２１軸に対する指令を行う場合は、ＮＣ装置１０１の仮想軸通信局Ｖ０１とＮＣ装置２０１の外部切り替え軸通信局Ｐ０１が所定の周期で通信を行い、ＮＣ装置２０１の外部切り替え軸通信局Ｐ０１に設定された、ＮＣ装置２０１に結合されているＣ２１軸の制御権を切り替えて、移動を行うように設定される。また、Ｐ０２局には、Ｖ２１軸が外部切り替え軸として設定されており、ＮＣ装置１０１で、仮想Ｖ２１軸に対する指令を行う場合は、ＮＣ装置１０１の仮想軸通信局Ｖ０２とＮＣ装置２０１の外部切り替え軸通信局Ｐ０２が所定の周期で通信を行い、ＮＣ装置２０１の外部切り替え軸通信局Ｐ０２に設定された、ＮＣ装置２０１に結合されているＶ２１軸の制御権を切り替えて、移動を行うように設定される。【００９０】
また、仮想軸設定部２５５により、ＮＣ装置２０１側の仮想軸の通信局Ｖ０１〜Ｖ０４のうち、Ｖ０１局にＣ１１軸が仮想軸として設定され、通信の接続先として、ＮＣ装置１０１を示すＭ０１の外部切り替え有効軸のＰ０１局に割り付けられている。
また、外部切り替え軸設定部２５６により、ＮＣ装置１０１側の外部切り替え有効軸の通信局Ｐ０１〜Ｐ０４のうち、Ｐ０１局には、Ｃ１１軸が外部切り替え軸として設定されており、ＮＣ装置２０１で、仮想Ｃ１１軸に対する指令を行う場合は、ＮＣ装置２０１の仮想軸通信局Ｖ０１とＮＣ装置１０１の外部切り替え軸通信局Ｐ０１が所定の周期で通信を行い、ＮＣ装置１０１の外部切り替え軸通信局Ｐ０１に設定された、ＮＣ装置２０１に結合されているＣ１１軸の制御権を切り替えて、移動を行うように設定される。【００９１】
なお、このような設定は、機械稼動前に行われ、また表示装置１３０に図１５に示すような設定画面を表示し、オペレータがＮＣ装置１０１，２０１の備えられているキーボードより入力することにより行われる。
また、各NCプログラムの先頭に前記設定内容を記述し、各NCプログラムの読込み時に各設定部１５５、１５６、２５５、２５６に前記設定をさせるようにしてもよい。【００９２】
図１７は、図１４に示す軸構成で、且つ図１５に示すように設定されている状態で、図１６に示すような軸交換（Ｇ１４０）指令がなされた場合、ＮＣ装置の軸交換制御部１２２，２２２の動作を示すフローチャートである。
即ち、ステップＳ１１００で、Ｇ１４０指令かどうか判定し、Ｇ１４０指令の場合、ステップＳ１１０１で、交換が必要な軸をチェックする。具体的には、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｃ＝Ｃ１１；指令がなされた場合、Ｘ指令の制御軸がＸ１２軸、Ｚ指令の制御軸がＺ１２軸、Ｃ指令の制御軸がＣ１１軸として保有しているかどうか判定し、保有していない制御軸に対しては、軸の交換を要求する。【００９３】
次いで、ステップＳ１１０２で、交換要求軸が交換可能な状態にあるかどうかを判定し、交換可能な状態にある場合は、ステップＳ１１０３で、軸の制御権を確保し、交換を行う。次に、ステップＳ１１０４で、交換要求軸が全て交換完了した場合は、ステップＳ１１０５で、Ｇ１４０指令ブロックを完了し、次ブロックに進む。【００９４】
また、図１８は、この実施の形態２における仮想軸制御部１５１、２５１の仮想軸に対する補間出力のフローチャートである。ステップＳ１１５０で、仮想軸の設定かどうか判定する。仮想軸設定の場合、ステップＳ１１５１で、仮想軸が主軸（例えばＳ１１軸、Ｓ２１軸）または回転軸（例えばＶ２１軸、Ｃ１１軸、Ｃ２１軸）かを判定する。仮想軸が主軸または回転軸の場合、ステップＳ１１５２で、仮想軸が主軸制御モードかどうか判定する。主軸制御モードが選択されている場合、ステップＳ１１５３で仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ１１５４で、仮想軸に設定された出力局に、当該仮想軸の速度制御の補間出力を出力する。
ステップＳ１１５１で、仮想軸が位置指令を与える直線軸（例えばＸ１１軸、Ｚ１１軸、Ｘ１２軸、Ｚ１２軸、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸）の場合、もしくは、ステップＳ１１５２で、仮想軸（主軸または回転軸）が主軸制御モードでなく、位置指令を与える回転軸の場合、ステップＳ１１５５で、仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ１１５６で、仮想軸に設定された出力局に、当該仮想軸の位置制御の補間出力を出力する。【００９５】
図１４に示すような軸構成で、図１５に示すように仮想軸などが設定されたＮＣシステムにおいて、図１６に示すNCプログラムが実行された場合、NCシステム１０１、２０１は次の通り動作する。即ち、ＮＣ装置１０１の第２系統で運転するＮＣプログラム１４２のＮ２ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｃ＝Ｃ１１；指令により、ＮＣ装置１０１の第２系統は、最初に同系統を構成しているＸ１２軸、及び、Ｚ１２軸に加え、ＮＣ装置１０１の第１系統のＣ１１軸を、第２系統に交換して制御権を取得し、Ｘ１２軸、Ｚ１２軸、Ｃ１１軸に対する位置指令を夫々、Ｘ、Ｚ、Ｃアドレスで指令を行う。【００９６】
次いで、ＮＣ装置１０１の第１系統で動作するＮＣプログラム１４１のＮ１ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１１  Ｚ＝Ｚ１１  Ｃ＝Ｃ２１；指令により、ＮＣ装置１０１の第１系統は、Ｘ１１軸、Ｚ１１軸の制御権に加え、ＮＣ装置２０１に結合されたＣ２１軸の制御権を取得する。このとき、ＮＣ装置１０１は、図８で説明したシーケンスと同様のシーケンスで、仮想軸通信局Ｖ０１からＮＣ装置２０１の外部切り替え有効軸通信局Ｐ０１と通信を行い、Ｃ２１軸の制御権を取得し、ＮＣ装置２０１は、Ｃ２１軸の制御を、外部切り替え有効軸通信局Ｐ０１に切り替える。ＮＣ装置１０１の第１系統は、Ｃ２１に対する指令位置を、所定の周期でＮＣ装置２０１に送信し、ＮＣ装置１０１の補間出力に従い、Ｃ２１軸の制御を行うことができる。【００９７】
同様にして、ＮＣ装置２０１の第１系統で動作するＮＣプログラム２４１のＮ４ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ２１  Ｚ＝Ｚ２１  Ｙ＝Ｙ２１  Ｃ＝Ｃ１１；指令により、ＮＣ装置２０１は、ＮＣ装置１０１に結合されたＣ１１軸の制御を行える。【００９８】
次いで、ＮＣ装置１０１の第２系統で動作するＮＣプログラム１４２のＮ３ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｖ＝Ｖ２１；指令により、ＮＣ装置１０１はＸ１２軸、Ｚ１２軸、Ｖ２１軸の制御権を取得する。ＮＣ装置２０１はその前に実行されるＮ４ブロックにおいてＶ２１軸の制御権を事前に開放しているが、ＮＣ装置１０１がＶ２１軸の制御権を取得したことを受けて、ＮＣ装置１０１とＮＣ装置２０１は所定周期で通信を行い、ＮＣ装置１０１で生成された仮想軸としてのＶ２１軸に対する補間出力を、ＮＣ装置２０１の外部切り替え有効軸通信局Ｐ０２と所定周期で通信し、ＮＣ装置２０１に結合されたＶ２１軸に出力する。ＮＣ装置２０１は、Ｖ２１軸のフィードバック位置をＮＣ装置１０１に送信する。【００９９】
なおこの実施の形態２にあっても、ＮＣ装置１０１、２０１間の系統に跨る制御軸の組合せ（例えば、Ｘ１１軸、Ｚ１１軸及びＳ２１軸の組合せ、Ｘ１２軸、Ｚ１２軸及びＳ２１軸の組合せ、Ｘ２１軸、Ｚ２１軸及びＳ１１軸の組合せ）により、図１で説明したような、毎回転送り制御、ねじ切り加工などの同期制御が可能である。例えば、Ｘ２１軸、Ｚ２１軸及びＳ１１軸の組合せ構成（Ｘ２１軸及びＺ２１軸でねじ切りバイト固定した工具台を移動し、Ｓ１１軸にてワークを回転させる構成）とし、ＮＣ装置２０１からの補間出力でねじ切り加工を行う場合、ＮＣ装置１０１のＳ１１軸の位置検出器からのフィードバック位置データを、ＮＣ装置２０１の補間制御部２２０に取込み、実施の形態１で説明した場合と同様に、補間制御部２２０でＺ２１軸の移動量を演算しＺ２１軸に対し出力することにより、Ｚ２１軸がＺ軸方向に送られ、Ｓ１１軸にて回転されるワークにねじを施すことができる。【０１００】
以上説明したように、この実施の形態２によれば、当該ＮＣ装置に結合された制御軸または仮想制御軸を組み合わせて系統を構成し、また系統間で軸交換を行い、系統を構成する軸の組合せを入れ替え、補間制御や同期制御を行うようにした。また仮想軸の補間出力を、別のＮＣ装置と通信して、別のＮＣ装置に結合された制御軸に対して送り、仮想軸を制御できるようにしたので、当該ＮＣ装置に結合された制御軸だけでなく、異なるＣＰＵで動作するＮＣ装置の制御軸を組み合わせて系統を構築し、補間制御や同期制御を行なうことができる。【０１０１】
また、一般的なＮＣ工作機械に適用可能な、系統数、制御軸数のＮＣ装置を組合せて補間を行うことができるので、専用の高性能なハードウェアを開発することなく、同時に運転可能な系統数を増やし、かつＮＣ装置のハードウェアに関わらず、系統間での制御軸の交換を行い、必要な軸をもって系統を構成し、ＮＣ制御を行うことができる。【０１０２】
また、ＮＣ装置間に跨る軸の制御タイミングを一致させることができ、ひいてはＮＣ装置間に跨る軸の同期制御を精度よく行うことができる。【０１０３】
また、各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、直線軸または回転軸の制御系統の切り換え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間制御が行える。【０１０４】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、また各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置や、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り替え、速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送り及びねじ切りが行えるとともに、直線軸または回転軸の制御系統の切り替え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間が行える。【０１０５】
なお、実施の形態２で説明した遅延制御部を、実施の形態１のＮＣ装置１０１に設けることも可能で、この遅延制御部をＮＣ装置１０１に設ければ、実施の形態１においても、ＮＣ装置１０１に結合された制御軸とＮＣ装置２０１に結合された制御軸との間の制御タイミングを一致させることができる。【０１０６】
実施の形態３．
以下、本発明を多軸自動旋盤に適用した場合の実施の形態３を、図１９〜図２９を用いて説明する。
図１９は実施の形態３に係るＮＣシステムで制御を行う工作機械の一例を示す図である。この工作機械は多軸自動旋盤で、加工するワークを把持し回転させる主軸が、主軸ドラムにＳ１からＳ６まで計６個搭載されており、主軸ドラムが旋回することによって、主軸の配置が決められたステーションに移動するようになっている。また、各ステーションでワークを加工するために、ステーションごとに工具Ｔ１からＴ６が配置され、夫々、独立した系統で制御される。【０１０７】
本実施の形態３においては、工具Ｔ１はＸ１軸及びＺ１軸で動作し、工具Ｔ２はＸ２軸及びＺ２軸で動作し、工具Ｔ３はＸ３軸及びＺ３軸で動作し、工具Ｔ４はＸ４軸及びＺ４軸で動作し、工具Ｔ５はＸ５軸、Ｚ５軸及びＹ５軸で動作し、工具Ｔ６はＸ６軸、Ｚ６軸及びＹ６軸で動作するものとする。また、主軸Ｓ１軸はＣ１軸として位置制御でき、主軸Ｓ２軸はＣ２軸として位置制御でき、主軸Ｓ３軸はＣ３軸として位置制御でき、主軸Ｓ４軸はＣ４軸として位置制御でき、主軸Ｓ５軸はＣ５軸として位置制御でき、主軸Ｓ６軸はＣ６軸として位置制御できるものとする。【０１０８】
上記のような工作機械をＮＣ制御するためには、合計で６系統２０軸制御できるＮＣ装置が必要であるが、本実施の形態３においては、工具Ｔ１はＮＣ装置１（以下ＮＣ＃１）に接続されたＸ１軸及びＺ１軸で動作し、工具Ｔ２はＮＣＮＣ＃１に接続されたＸ２軸及びＺ２軸で動作し、工具Ｔ３はＮＣ＃１に接続されたＸ３軸及びＺ３軸で動作し、工具Ｔ４はＮＣ＃１に接続されたＸ４軸及びＺ４軸で動作し、工具Ｔ５はＮＣ装置２（以下ＮＣ＃２）に接続されたＸ５軸、Ｚ５軸、及び、Ｙ５軸で動作し、工具Ｔ６はＮＣ＃２に接続されたＸ６軸、Ｚ６軸、及び、Ｙ６軸で動作するものとする。また、主軸Ｓ１軸からＳ６軸は、ＮＣ＃２に接続され、夫々、主軸Ｓ１軸はＣ１軸として位置制御でき、主軸Ｓ２軸はＣ２軸として位置制御でき、主軸Ｓ３軸はＣ３軸として位置制御でき、主軸Ｓ４軸はＣ４軸として位置制御でき、主軸Ｓ５軸はＣ５軸として位置制御でき、主軸Ｓ６軸はＣ６軸として位置制御できるように配置している。また、ＮＣ＃１は、仮想軸として、主軸Ｓ１軸（Ｃ１軸）、主軸Ｓ２軸（Ｃ２軸）、主軸Ｓ３軸（Ｃ３軸）、主軸Ｓ４軸（Ｃ４軸）、主軸Ｓ５軸（Ｃ５軸）、主軸Ｓ６軸（Ｃ６軸）の各主軸／Ｃ軸を保有する。【０１０９】
即ち、図２０に示すように、ＮＣ＃１は、接続軸としてＸ１軸、Ｚ１軸、Ｘ２軸、Ｚ２軸、Ｘ３軸、Ｚ３軸、Ｘ４軸、Ｚ４軸の計８軸、仮想軸としてＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の計６軸で、合わせて１４軸の制御を行い、ＮＣ＃２は、接続軸としてＸ５軸、Ｚ５軸、Ｙ５軸、Ｘ６軸、Ｚ６軸、Ｙ６軸、Ｓ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の計１２軸の制御を行う。更に、ＮＣ＃２に接続されたＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）は、夫々、ＮＣ＃１の仮想軸Ｓ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の指令に従い駆動するように切り替えられる、外部切り替え軸として設定する。
なお、この設定は、図１２に示す仮想軸設定部及び外部切り替え設定部にて設定される。【０１１０】
また、初期の配置としては、ＮＣ＃１において、仮想軸のＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）は、系統１から系統４で制御権を持たないため、未使用軸としてフリーの状態とする。また、ＮＣ＃２において、接続軸のＳ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）は、同様にＮＣ＃２の系統１から系統２で制御権を持たないため、未使用軸としてフリーの状態とする。【０１１１】
本実施の形態３の工作機械において、１サイクル目の加工開始前に、主軸ドラムが旋回し、ステーション１に主軸Ｓ１、ステーション２に主軸Ｓ６、ステーション３に主軸Ｓ５、ステーション４に主軸Ｓ４、ステーション５に主軸Ｓ３、ステーション６に主軸Ｓ２が配置される。
この後、ステーション１において、工具Ｔ１と主軸Ｓ１の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ６の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ５の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ４の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ３の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ２の組み合わせで加工を行うように、加工開始前に、図２１に示す系統及び軸構成に配置が切り替わり、各系統で、プログラム指令に対する補間及び同期運転を行う。【０１１２】
次いで、２サイクル目の加工開始前に、主軸ドラムが旋回し、ステーション１に主軸Ｓ２、ステーション２に主軸Ｓ１、ステーション３に主軸Ｓ６、ステーション４に主軸Ｓ５、ステーション５に主軸Ｓ４、ステーション６に主軸Ｓ３が配置される。
この後、ステーション１において、工具Ｔ１と主軸Ｓ２の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ１の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ６の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ５の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ４の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ３の組み合わせで加工を行う。即ち、図２２に示す系統及び軸構成に配置され、各系統で、プログラム指令に対する補間及び同期運転を行う。【０１１３】
以降、１サイクル毎に主軸ドラムが旋回し、各ステーションに配置される主軸が順次変化し、図２３から図２６に示す系統及び軸構成に配置され、各サイクルでの加工を行い、６サイクル目では、図２７に示す系統及び軸構成に配置され、ステーション１において、工具Ｔ１と主軸Ｓ６の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ５の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ４の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ３の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ２の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ１の組み合わせで加工を行う。【０１１４】
次いで、７サイクル目では、主軸ドラムが旋回し、ステーション１に主軸Ｓ１、ステーション２に主軸Ｓ６、ステーション３に主軸Ｓ５、ステーション４に主軸Ｓ４、ステーション５に主軸Ｓ３、ステーション６に主軸Ｓ２が配置されるので、図２１に示す軸構成に戻り、１サイクル目と同様の構成で加工を行い、以降、１〜６サイクルと同様の加工を繰り返し実行する。【０１１５】
上記のように、各工具を制御する系統において、ワークを回転または位置決めする主軸が順次切り替わるが、各ステーションにおいて、主軸の回転に同期して旋削もしくはねじ切りを行う場合は、主軸の回転に同期して、工具の移動を補間しなければならない。また、各ステーションにおいてミル加工等を行う場合は、主軸を位置制御軸（Ｃ軸）に切り替えて、工具の送り軸と主軸の回転軸（Ｃ軸）を同時に補間が必要となる。【０１１６】
本実施の形態の工作機械を制御するＮＣシステムの場合、図２７に示すように、ＮＣ＃１の系統１においてステーション１（ＳＴ１）の加工プログラムＰ１を実行し、ＮＣ＃１の系統２においてステーション２（ＳＴ２）の加工プログラムＰ２を実行し、ＮＣ＃１の系統３においてステーション３（ＳＴ３）の加工プログラムＰ３を実行し、ＮＣ＃４の系統４においてステーション４（ＳＴ４）の加工プログラムＰ４を実行し、ＮＣ＃２の系統１においてステーション５（ＳＴ５）の加工プログラムＰ５を実行し、ＮＣ＃２の系統２においてステーション６（ＳＴ６）の加工プログラムＰ６を実行し、各ステーションに配置された工具に適した加工を実行する。【０１１７】
また、加工を実行する前に、各主軸が所定のステーション位置になるように、主軸ドラムを旋回する必要があるので、ステーション１（ＳＴ１）においては、主軸ステーション切り替えのためのプログラムＭ１、ステーション２（ＳＴ２）においては、主軸ステーション切り替えのためのプログラムＭ２、ステーション３（ＳＴ３）においては、主軸ステーション切り替えのためのプログラムＭ３、ステーション４（ＳＴ４）においては、主軸ステーション切り替えのためのプログラムＭ４、ステーション５（ＳＴ５）においては、主軸ステーション切り替えのためのプログラムＭ５、ステーション６（ＳＴ６）においては、主軸ステーション切り替えのためのプログラムＭ６が実行され、主軸ドラムを旋回し、Ｓ１軸（Ｃ１軸）からＳ６軸（Ｃ６軸）の配置をローテーションする。【０１１８】
このとき、ＮＣ＃１の主軸ステーション切り替えプログラム内で、図２８のフローチャートに従い、各系統のＣ軸（主軸）の軸交換要求が行われ、例えば、ＮＣ＃１の系統１においては、１サイクル目はＸ１軸、Ｚ１軸、Ｃ１軸（Ｓ１軸）の軸構成、２サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ２軸（Ｓ２軸）の軸構成、３サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ３軸（Ｓ３軸）の軸構成、４サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ４軸（Ｓ４軸）の軸構成、５サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ５軸（Ｓ５軸）の軸構成、６サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ６軸（Ｓ６軸）の軸構成となり、１サイクル毎に、随時、各系統の制御主軸（Ｃ軸）を切り換えて、加工を繰り返す。【０１１９】
また、ＮＣ＃２の主軸ステーション切り替えプログラム内では、図２９のフローチャートに従い、各系統のＣ軸（主軸）の軸交換要求が行われ、例えば、ＮＣ＃２の系統１においては、１サイクル目はＸ５軸、Ｚ５軸、Ｙ５軸、Ｃ３軸（Ｓ３軸）の軸構成、２サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ４軸（Ｓ４軸）の軸構成、３サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ５軸（Ｓ５軸）の軸構成、４サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ６軸（Ｓ６軸）の軸構成、５サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ１軸（Ｓ１軸）の軸構成、６サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ２軸（Ｓ２軸）の軸構成となり、１サイクル毎に、随時、各系統の制御主軸（Ｃ軸）を切り換えて、加工を繰り返す。【０１２０】
このとき、ＮＣ＃１の各系統で制御する主軸（Ｃ軸）は、各系統においてＣ軸制御（位置指令）モードか、主軸制御モードかにより、夫々補間出力を、位置指令データまたは速度指令データとして、ＮＣ＃２に送信され、ＮＣ＃２は、対応する外部切り替え軸を、ＮＣ＃１から送信される補間出力に従い、位置制御もしくは速度制御を行う。更に、ＮＣ＃２は制御軸のフィードバック位置データをＮＣ＃１に送信し、ＮＣ＃１は、ＮＣ＃２から送られるフィードバック位置を周期的に取得し、変化量に同期して毎回転送りもしくはねじ切り加工等を行うことができる。【０１２１】
以上のように、工程の切り替わりで、系統間で交換しなければならない軸は、本発明の実施の形態３の場合、Ｓ１軸（Ｃ１軸）からＳ６軸（Ｃ６軸）の６軸に限られ、交換が必要な軸のみ、同制御軸を接続しているＮＣ装置において外部切り替え軸として設定し、同制御軸を接続していないＮＣ装置では、仮想軸として設定することで、各ＮＣ装置間で共通に制御ができ、かつ各ＮＣ装置の系統において、異なるＮＣ装置に接続された制御軸であることを機械オペレータが意識せず、必要な軸を組み合わせて補間制御及び同期制御を行うことができる。
【産業上の利用可能性】
【０１２２】
本発明の数値制御装置及び数値制御システムは、ＮＣ工作機械を複数台並べて一連の加工を行う場合などにおいて、制御軸数や制御系統数を増加させるために用いられるのに適している。
【図１】
2008136110.tif 000003
【図２】
2008136110.tif 000004
【図３】
2008136110.tif 000005
【図４】
2008136110.tif 000006
【図５】
2008136110.tif 000007
【図６】
2008136110.tif 000008
【図７】
2008136110.tif 000009
【図８】
2008136110.tif 000010
【図９】
2008136110.tif 000011
【図１０】
2008136110.tif 000012
【図１１】
2008136110.tif 000013
【図１２】
2008136110.tif 000014
【図１３】
2008136110.tif 000015
【図１４】
2008136110.tif 000016
【図１５】
2008136110.tif 000017
【図１６】
2008136110.tif 000018
【図１７】
2008136110.tif 000019
【図１８】
2008136110.tif 000020
【図１９】
2008136110.tif 000021
【図２０】
2008136110.tif 000022
【図２１】
2008136110.tif 000023
【図２２】
2008136110.tif 000024
【図２３】
2008136110.tif 000025
【図２４】
2008136110.tif 000026
【図２５】
2008136110.tif 000027
【図２６】
2008136110.tif 000028
【図２７】
2008136110.tif 000029
【図２８】
2008136110.tif 000030
【図２９】
2008136110.tif 000031
【図３０】
2008136110.tif 000032
【図３１】
2008136110.tif 000033
【手続補正書】
【提出日】平成21年6月22日(2009.6.22)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記第二の数値制御装置に送信するとともに、前記第二の数値制御装置からのフィードバックデータを受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する仮想軸制御部とを有する第一の数値制御装置と、
自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を補間処理する第二の補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記軸制御権切り換え処理部により制御権を前記第一の数値制御装置に与えている場合、前記第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御することを特徴とする数値制御システム。
【請求項２】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを前記第二の数値制御装置から受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理する第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の補間出力に基づいて、第二の数値制御装置に結合された所定の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定の軸とを同期制御することを特徴とする数値制御システム。
【請求項３】
第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを、前記第二の数値制御装置から受信する第一の外部通信部と、自己に結合された所定系統の軸と前記第二の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第一の軸交換制御部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、  第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを、前記第一の数値制御装置から受信する第二の外部通信部と、自己に結合された所定系統の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第二の軸交換制御部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記第二の軸交換制御部で交換する軸の組合せの系統で補間処理をする第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の出力に基づいて、第二の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の出力に基づいて、第一の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御することを特徴とする数値制御システム。
【請求項４】
前記第一の数値制御装置及び第二の数値制御装置の少なくとも一方に、自己に結合された軸と接続される他方の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたことを特徴とする請求項１〜請求項３の何れかに記載の数値制御システム。
【請求項５】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が速度指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項１〜請求項４の何れかに記載の数値制御システム。
【請求項６】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が位置指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とする請求項１〜請求項４の何れかに記載の数値制御システム。
【請求項７】
前記第一の補間制御部及び第二の補間制御部の少なくとも一方が、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とする請求項１〜請求項６の何れかに記載の数値制御システム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の系統を制御する数値制御（Numerical Control；以下ＮＣという）システムに関するものである。
【背景技術】
【０００２】
従来の多軸多系統のＮＣ装置は、図３０のように構成されており、１台のＮＣ装置内に複数系統の解析処理部１１１、１１２を有し、系統毎に、メモリ（図示せず）に格納された各系統のＮＣプログラムを夫々１ブロックずつ読み出し、補間制御部１２０で補間処理を行うために解析を行う。補間制御部１２０で補間処理の結果、各制御軸の移動パルスが生成され、軸制御部１２３は当該軸を駆動するサーボ制御部１０２、１０３、２０２、２０３及び主軸制御部１０４、２０４に移動パルスを出力する。
【０００３】
サーボ制御部１０２、１０３、２０２、２０３は指令された移動パルスに従い、結合しているサーボモータ１０５、１０６、２０５、２０６を夫々駆動し、また主軸制御部１０４、２０４は指令された移動パルスに従い、結合している主軸モータ１０７、２０７を夫々駆動する。ＮＣ装置に備えられた軸制御部１２３は、結合しているサーボ制御部１０２、１０３、２０２、２０３もしくは主軸制御部１０４、２０４の制御軸の駆動が可能となっている。
これは、制御系を複数セット  １つのハードウェア内に実現したものであり、夫々の系統で独立した加工プログラム及び各制御信号により制御され、同ＮＣ装置を備えるＮＣ工作機械においては、複数の制御系統で同一または異なる製品を、夫々一つまたは複数加工できるようになっている。
【０００４】
なお、図３０に示すＮＣ装置の例の場合、表示装置１３０、ＰＬＣ制御部１２１及び軸交換制御部１２２を備え、またサーボ制御部１０２、１０３、主軸制御部１０４、サーボモータ１０２，１０６及び主軸モータ１０７が、第一系統に属し、またサーボ制御部２０２、２０３、主軸制御部２０４、サーボモータ２０２，２０６及び主軸モータ２０７が、第二系統に属する。
また、従来の多軸多系統のＮＣ装置は、軸交換制御部１２２により、各系統に属する制御軸の一部または全部を、系統間で交換できるように構成されている。
【０００５】
図３１に、従来の多軸多系統のＮＣ装置で制御可能な工作機械の一例を示す。図３１の例の場合、刃物台＃１を駆動するＸ１軸と主軸で掴んだワークを長手方向に移動するＺ１軸とで第１系統が構成され、刃物台＃２を駆動するＸ２軸とＺ２軸とで第２系統が構成されている。
通常は、第１系統において、Ｘ１軸、Ｚ１軸、Ｓ１軸に対するプログラム指令を行い、刃物台＃１と主軸Ｓ１との組合せで加工を行い、また、第２系統において、Ｘ２軸、Ｚ２軸、Ｓ２軸に対するプログラム指令を行い、刃物台＃２と主軸Ｓ２との組合せで加工を行う。
【０００６】
従来の多軸多系統のＮＣ装置は、更に、例えば、第２系統において、Ｘ２軸、Ｚ１軸、Ｓ１軸に対する指令を行えるよう、軸交換制御部により、第１の系統のＺ１軸と、第２の系統のＺ２軸とを系統間で交換して、刃物台＃２と主軸Ｓ１軸との組合せで加工を行うことで、加工時間の短縮や、複雑な加工を行うができる（例えば、特許文献１参照）。
【０００７】
上記のような従来のＮＣ装置は、１つのハードウェア上で、全ての系統、軸を制御しなければならないため、制御可能な系統数及び軸数は、メモリやＣＰＵ処理速度により自ずと制約される課題があった。
このため、制御が必要な系統数及び軸数の要求が増えてくると、更に大容量のメモリや高速なＣＰＵを搭載したＮＣ装置を新たに開発しなければならず、開発コストが増大になるという問題点があった。
【０００８】
また、そのように多くの系統数、軸数を要する被制御対象は、特殊な専用工作機械もしくは大規模なＮＣ加工システムである場合が大半であり、一般的なＮＣ工作機械に適用可能なＮＣ装置と共通の開発を行うと、一般的なＮＣ工作機械に適用するには、必要以上の性能を要するハードウェアのため、製造コストが増大する課題があった。
【０００９】
このような問題点の一部を解決しようとするものとして、マスターとなる１台のＮＣ装置と、複数のスレーブとなるＮＣ装置で構成され、スレーブ側の各ＮＣ装置が、マスターのＮＣ装置からの信号等により同期しながら、各ＮＣ装置で同期制御を行う方法が公知である。
これは、複数のスレーブのＮＣ装置が、マスターとなる１台のＮＣ装置と同期して運転するので、スレーブとなるＮＣ装置を増設することにより、同時に運転可能な系統数を増やすことができる（例えば、特許文献２参照）。
【００１０】
また、通信路を介して複数の自動機械により制御される自動機械制御システムにおいて、複数の制御装置より間接制御される共有軸を備える自動機械を排他的に管理して、複数の自動機械を安全に安定に制御する自動機械制御システムが公知である。
これは、他の自動機械から通信路を介して間接制御可能な共有軸に対し、共有軸の占有を制御し、複数の制御装置から同時に間接制御可能とならないように排他制御を行う。上記の自動機械制御システムは、マスターの自動機械と、マスターの自動機械が占有権を取得したスレーブの自動機械とが、協調動作をする自動機械制御機械において、スレーブの自動機械を制御するマスターの自動機械が２つ以上存在する場合、スレーブの自動機械は、異なる自動機械から複数の指令を受信することになり、動作が保証されないため、他の制御装置で制御する自動機械の占有権を制御することで、安全かつ安定に制御するものである（例えば、特許文献３）。
【先行技術文献】
【特許文献】
【００１１】
特開平３−２８９０８号公報・・・・・・特許文献１
特開平９−１４６６２３号公報・・・・・特許文献２
特開２００５−１７３８４９号公報・・・特許文献３
【発明の概要】
【発明が解決しようとする課題】
【００１２】
しかしながら、前記特許文献２に開示のＮＣ装置において、系統間で軸を交換できるのは、同一のＣＰＵで制御可能な軸に限られ、ＮＣ装置の増設により、同時に運転を行う系統数を増やしても、同時に異なるＮＣ装置の系統の制御軸を自由に制御できないという難点があった。
【００１３】
また、前記特許文献３に開示の動機械制御システムの場合、各自動機械の動作は、同自動機械を制御する制御装置により行われ、スレーブの自動機械の占有を許可されたマスターの自動機からの位置指令に対し、スレーブの制御装置が動作制御を行うのみで、マスターの自動機械とスレーブの自動機械の移動中の相関関係は何ら明記されておらず、マスターの制御装置の軸と、スレーブの制御装置の軸との間での補間及び同期は保証されていない。
【００１４】
本発明は、かかる問題点を解決するためになされたもので、異なるＮＣ装置の制御軸を意識せず、軸を組み合わせて、自由に補間制御や同期制御できるＮＣシステムを得ることを目的としている。
【課題を解決するための手段】
【００１５】
本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する仮想軸設定部と、この仮想軸設定部にて設定された軸の補間データを前記第二の数値制御装置に送信するとともに、前記第二の数値制御装置からのフィードバックデータを受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記フィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する仮想軸制御部とを有する第一の数値制御装置と、
自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する外部切り換え軸設定部と、自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を補間処理する第二の補間制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記軸制御権切り換え処理部により制御権を前記第一の数値制御装置に与えている場合、前記第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するものである。
【００１６】
また、本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを前記第二の数値制御装置から受信する第一の外部通信部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理する第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを前記第一の数値制御装置から受信する第二の外部通信部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理する第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間データを、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の補間出力に基づいて、第一の数値制御装置に結合された所定の軸と前記第二の数値制御装置に結合され前記第一の仮想軸設定部にて設定された所定の軸とを同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の補間出力に基づいて、第二の数値制御装置に結合された所定の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定の軸とを同期制御するものである。
【００１７】
また、本発明の数値制御システムは、第二の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第一の仮想軸設定部と、自己に結合された所定の軸を、第二の数値制御装置で制御される軸として設定する第一の外部切り換え軸設定部と、前記仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第二の数値制御装置へ送信するとともに、前記外部切り換え軸設定部にて設定された軸の補間データ及び前記第二の数値制御装置のフィードバックデータを、前記第二の数値制御装置から受信する第一の外部通信部と、自己に結合された所定系統の軸と前記第二の数値制御装置に結合され前記仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第一の軸交換制御部と、NCプログラムを解析する第一の解析処理部と、この解析処理部の解析結果を前記第二の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記軸交換制御部で交換する軸の組合せの系統で補間処理をする第一の補間制御部と、この補間制御部の補間出力が前記仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記外部通信部を通じて前記第二の数値制御装置に出力する第一の仮想軸制御部と、前記外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第二の数値制御装置が制御するかの制御権を切り換える第一の軸制御権切り換え処理部とを有する第一の数値制御装置と、
第一の数値制御装置に結合された所定の軸を、自己が制御する軸として設定する第二の仮想軸設定部と、自己に結合された所定の軸を、第一の数値制御装置で制御される軸として設定する第二の外部切り換え軸設定部と、前記第二の仮想軸設定部にて設定された軸の補間データ及び自己のフィードバックデータを前記第一の数値制御装置へ送信するとともに、前記第二の外部切り換え軸設定部にて設定された軸の補間データ及び前記第一の数値制御装置のフィードバックデータを、前記第一の数値制御装置から受信する第二の外部通信部と、自己に結合された所定系統の軸と前記第一の数値制御装置に結合され前記第二の仮想軸設定部にて設定された所定系統の軸とを入れ替える軸交換を行う第二の軸交換制御部と、NCプログラムを解析する第二の解析処理部と、この解析処理部の解析結果を前記第一の数値制御装置のフィードバックデータに基づいて補間処理するとともに、前記第二の軸交換制御部で交換する軸の組合せの系統で補間処理をする第二の補間制御部と、この補間制御部の補間出力が前記第二の仮想軸設定部にて設定された軸の補間データである場合、その補間出力を、前記第二の外部通信部を通じて前記第一の数値制御装置に出力する第二の仮想軸制御部と、前記第二の外部切り換え軸設定部にて設定された軸を、自己が制御するか、前記第一の数値制御装置が制御するかの制御権を切り換える第二の軸制御権切り換え処理部とを有する第二の数値制御装置と、を備え、
前記第二の軸制御権切り換え処理部が第一の数値制御装置に制御権を与えている場合、第一の数値制御装置が、その第一の補間制御部の出力に基づいて、第二の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するとともに、前記第一の軸制御権切り換え処理部が第二の数値制御装置に制御権を与えている場合、前記第二の数値制御装置が、その第二の補間制御部の出力に基づいて、第一の数値制御装置に結合され且つ自己に結合された所定系統の軸と軸交換された軸を、自己に結合された所定系統の軸として、自己に結合された所定系統の軸と同期制御するものである。
【００１８】
また、本発明の数値制御装置システムは、前記第一の数値制御装置及び第二の数値制御装置の少なくとも一方に、自己に結合された軸と接続される他方の数値制御装置に結合された軸との制御タイミングが一致するよう、自己に結合された軸への補間出力を遅延させる遅延制御部を設けたものである。
【００１９】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が速度指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。
【００２０】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方の補間出力が位置指令データであり、前記第一、第二の数値制御装置からのフィードバックデータが位置データであることを特徴とするものである。
【００２１】
また、本発明の数値制御システムは、前記第一の補間制御部及び第二の補間制御部の少なくとも一方が、前記仮想軸設定部にて設定される軸に応じて、速度指令データ及び位置指令データの何れかを補間出力することを特徴とするものである。
【発明の効果】
【００２２】
本発明によれば、ハードウェアが異なる各ＮＣ装置に結合された制御軸を自由に組み合わせて補間制御や同期制御を行うことができる。
従って、１台のハードウェアで実現可能な能力以上の加工が必要な工作機械に適用する場合、ＮＣ装置を更に付加することによって、機械オペレータが、複数台のＮＣ装置で制御されていることを意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、ＮＣ装置間の協調加工（同期制御加工）などを行うことができる。
また、安価なハードウェアを使用して、個々のＮＣ装置の性能が低くても高機能な多軸系統制御を実現できるため、一般的な機械に対して最適な性能のＮＣ装置に集約すれば足りるようになって、１台で全ての仕様をカバーする一般的な機械に対しては過剰仕様となる多軸多系統のＮＣ装置を開発する必要がなくなり、よって開発コスト及び製造コストを削減できる。
【００２３】
また、ＮＣ装置間に跨る軸の制御タイミングを一致させることができ、ひいてはＮＣ装置間に跨る軸の同期制御を精度よく行うことができる。
【００２４】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り換え、主軸速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送りやねじ切り加工などが行える。
【００２５】
また、各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、直線軸または回転軸の制御系統の切り換え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間などが行える。
【００２６】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、また各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置や、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り替え、主軸速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送りやねじ切りなどが行えるとともに、直線軸または回転軸の制御系統の切り替え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間などが行える。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施の形態１に係るＮＣシステムの構成を示す要部ブロック図である。
【図２】本発明の実施の形態１に係るＮＣシステムの軸構成例を示す図である。
【図３】本発明の実施の形態１に係るＮＣシステムの仮想軸及び外部切り替え有効軸の設定例を示す図である。
【図４】本発明の実施の形態１に係るＮＣシステムのプログラム例を示す図である。
【図５】図４のプログラム例に対する動作例を示す図である。
【図６】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の主軸指令時の動作を示すフローチャートである。
【図７】本発明の実施の形態１に係るＮＣシステムにおける仮想軸制御部の仮想主軸に対する補間出力動作を示すフローチャートである。
【図８】本発明の実施の形態１に係るＮＣシステムにおける制御軸制御権切り替えの通信シーケンスを示す図である。
【図９】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の動作を説明する図で、Ｓ２軸のフィードバック位置及びＺ１軸の指令位置を示す図である。
【図１０】本発明の実施の形態１に係るＮＣシステムにおける補間制御部の動作を説明する図で、Ｓ２軸のフィードバック位置差分及びＺ１軸の補間移動量を示す図である。
【図１１】本発明の実施の形態１に係るＮＣシステムの変形例を示す要部ブロック図である。
【図１２】本発明の実施の形態２に係るＮＣシステムの構成を示す要部ブロック図である。
【図１３】本発明の実施の形態２に係るＮＣシステムのタイムチャートを示す図である。
【図１４】本発明の実施の形態２に係るＮＣシステムの軸構成例を示す図である。
【図１５】本発明の実施の形態２に係るＮＣシステムの仮想軸及び外部切り替え有効軸の設定例を示す図である。
【図１６】本発明の実施の形態２に係るＮＣシステムのプログラム例を示す図である。
【図１７】本発明の実施の形態２に係るＮＣシステムにおける軸交換制御部の軸交換指令時の動作を示すフローチャートである。
【図１８】本発明の実施の形態２に係るＮＣシステムにおける仮想軸制御部の仮想軸に対する補間出力動作を示すフローチャートである。
【図１９】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の一例を示す構成図である。
【図２０】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の系統・軸構成例を示す図である。
【図２１】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工１サイクル目の系統・軸構成例を示す図である。
【図２２】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工２サイクル目の系統・軸構成例を示す図である。
【図２３】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工３サイクル目の系統・軸構成例を示す図である。
【図２４】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工４サイクル目の系統・軸構成例を示す図である。
【図２５】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工５サイクル目の系統・軸構成例を示す図である。
【図２６】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工６サイクル目の系統・軸構成例を示す図である。
【図２７】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械の加工プログラムの構成例を示す図である。
【図２８】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械のＮＣ＃１の制御軸交換動作を示すフローチャートである。
【図２９】本発明の実施の形態３に係り、本発明に係るＮＣシステムを適用する工作機械のＮＣ＃２の制御軸交換動作を示すフローチャートである。
【図３０】従来の多軸多系統のＮＣ装置の構成を示すブロック図である。
【図３１】従来の多軸多系統のＮＣ装置で制御可能な工作機械の軸構成例を示す図である。
【発明を実施するための最良の形態】
【００２８】
実施の形態１．
以下、本発明の実施の形態１を、図１〜図１１を用いて説明する。なお、この実施の形態１は、本発明を、ＮＣ旋盤を２台並べた加工ラインに適用した場合の例である。
図１は本発明の実施の形態１に係るＮＣシステムの構成を示す要部ブロック図であり、１０１、２０１は夫々別個にＣＰＵを有し夫々独立して制御可能なＮＣ装置で、ＮＣ装置１０１は一方のＮＣ旋盤に搭載され、またＮＣ装置２０１は他方のＮＣ旋盤に搭載される。
１０２、１０３はＮＣ装置１０１と結合された制御軸のサーボ制御部、１０４はＮＣ装置１０１と結合された主軸制御部、１０５、１０６はサーボ制御部１０２、１０３が駆動するサーボモータで、NC装置１０１に位置情報をフィードバックする位置検出器を有する。
【００２９】
１０７は主軸制御部１０４が駆動する主軸モータで、この主軸モータで制御される主軸に、NC装置１０１に位置情報をフィードバックする位置検出器が設けられている。また、２０２、２０３、２０８はＮＣ装置２０１と結合された制御軸のサーボ制御部、２０４はＮＣ装置２０１と結合された主軸制御部、２０５、２０６、２０９はサーボ制御部２０２、２０３、２０８が駆動するサーボモータで、NC装置２０１に位置情報をフィードバックする位置検出器を有する。２０７は主軸制御部２０４が駆動する主軸モータで、この主軸モータで駆動される主軸に、NC装置２０１に位置情報をフィードバックする位置検出器が設けられている。
【００３０】
なお、NC装置２０１の軸制御部２２３にフィードバックされた位置情報は、NC装置１０１の補間制御部１２０にもフィードバックされる。
また、NC装置１０１とNC装置２０１とで共用される表示装置１３０は、表示画面、キーボードなどを有するもので、公知のものである。
また、ＮＣ装置１０１、２０１は、ＣＰＵ、メモリなどからなる公知のハードウェア構成を有し、以下に説明する処理部、制御部、設定部などがソフトウエアにより構成され、搭載されている。
【００３１】
ＮＣ装置１０１は、解析処理部１１１、補間制御部１２０、ＰＬＣ制御部１２１、軸制御部１２３を備える。
また、ＮＣ装置２０１は、解析処理部２１１、補間制御部２２０、ＰＬＣ制御部２２１、軸制御部２２３を備える。
【００３２】
NC装置１０１の解析処理部１１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部１２０は、解析処理部１１１の解析結果を受け、また軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じて送られたNC装置２０１からのフィードバックデータ（前記主軸の検出器により検出された位置情報など）に基づいて所定時間毎の補間処理を行う。また、この補間制御部１２０は、NC装置２０１に結合された制御軸（例えば主軸モータ２０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部１２３は、結合しているサーボ制御部１０２、１０３及び主軸制御部１０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部１０２、１０３及び主軸制御部１０４は、指令された移動量に従い、結合しているモータ１０５〜１０７を駆動する。
【００３３】
またNC装置２０１の解析処理部２１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部２２０は、解析処理部１１１の結果を受け、所定時間毎の補間処理を行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部２２３は、結合しているサーボ制御部２０２、２０３、２０８及び主軸制御部２０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部２０２、２０３、２０８及び主軸制御部２０４は、指令された移動量に従い、結合しているモータ２０５〜２０７、２０９を駆動する。
なお、補間制御部１２０の詳細機能は、図６、図９及び図１０を用いて後述する。
また、ＰＬＣ制御部１２１、２２１は、NCプログラムより指令される補助指令（M指令）などを処理するもので、公知のものであるので、その説明は省略する。
【００３４】
更に、ＮＣ装置１０１は、仮想軸制御部１５１、外部通信部１５３、仮想軸設定部１５５を備え、ＮＣ装置２０１は、外部通信部２５３、軸制御権切り替え処理部２５４、外部切り替え軸設定部２５６を備える。
【００３５】
ＮＣ装置１０１が備える仮想軸制御部１５１は、補間制御部１２０によって補間処理された制御軸のうち、ＮＣ装置１０１の軸制御部１２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１に示すNCシステムの場合、例えばNC装置２０１に結合された主軸モータ２０７にて制御される主軸が仮想軸として設定されておれば、仮想軸制御部１５１はその主軸モータ２０７を制御する。
即ち、仮想軸制御部１５１は、補間制御部１２０で補間処理された、仮想軸設定部１５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、外部通信部２５３を通じて、ＮＣ装置２０１の軸制御部２２３に送信することにより、仮想軸の制御を行う。
【００３６】
なお、外部通信部１５３とＮＣ装置２０１の外部通信部２５３とは、双方向シリアル通信、イーサネット（登録商標）もしくはバスの通信路で結合され、一定周期毎に相互に通信を行う。このため、仮想軸制御部１５１が送信する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信でき、またNC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。
【００３７】
ＮＣ装置２０１が備える軸制御権切り替え処理部２５４は、軸制御部２２３により制御可能な軸のうち、ＮＣ装置２０１の外部切り替え軸設定部２５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部２５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。また、軸制御権切り替え処理部２５４は、外部のＮＣ装置１０１で運転される加工プログラムの指令、またはＮＣ装置２０１で運転される加工プログラムの指令によって、優先度に従い、制御権が切り替えられる。
なお、制御権の切り替えは、PLC制御部２２１からの信号により行うことも可能である。
また、仮想軸設定部１５５及び外部切り替え軸設定部２５６の機能は、図３を用いて後述する。
【００３８】
図２は本発明の実施の形態１に係るＮＣシステムの軸構成例を示す図である。ＮＣ装置１０１とＮＣ装置２０１は、別ＣＰＵで動作する装置であるので、夫々のＮＣ装置は独立して、各々の制御系統で別のＮＣプログラムに従い運転を行う。また、ＮＣ装置１０１とＮＣ装置２０１は外部通信部１５３と外部通信部２５３により結合される。
この例の場合、ＮＣ装置１０１は、Ｘ１軸、Ｚ１軸、Ｓ１軸（主軸）が結合された１系統構成のＮＣ装置としている。ＮＣ装置１０１の第１系統で実行するＮＣプログラム１４０により、Ｘ１軸、Ｚ１軸、Ｓ１軸は、夫々Ｘ、Ｚ、Ｓのアドレスでプログラム指令可能である。また、ＮＣ装置２０１は、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸（主軸）が結合された１系統構成のＮＣ装置としている。ＮＣ装置２０１の第１系統で実行するＮＣプログラム２４０により、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸は、夫々Ｘ、Ｚ、Ｙ、Ｓのアドレスでプログラム指令可能である。
【００３９】
更に、ＮＣ装置１０１においては、ＮＣ装置１０１に結合されたＸ１軸、Ｚ１軸、Ｓ１軸が、ＮＣプログラム１４０のＸ、Ｚ、Ｓのアドレスで指令可能な軸構成に加えて、Ｇコード(例えばG４４指令)により制御主軸を切り替えＳアドレスで指令を与える、もしくは専用のＳ指令（Ｓ２＝）で指令を与える仮想の主軸（Ｓ２軸）が設定される。
【００４０】
図３に、図２に示すような軸構成としたＮＣシステムにおける仮想軸及び外部切り替え有効軸の設定例を示す。ＮＣ装置１０１においては、仮想軸設定部１５５にて、Ｘ１軸、Ｚ１軸、Ｓ１軸が、ＮＣ装置１０１に結合された０１局、０２局、０３局のサーボ制御部もしくは主軸制御部の軸として設定され、Ｓ２軸が仮想軸としてＮＣ装置１０１の仮想軸出力局Ｖ０１に割り付けられ、ＮＣ装置１０１のＳ２軸に対する補間出力移動量はＮＣ装置２０１を示すＭ０２の入力局Ｐ０１に対し、送信するように設定される。
一方、ＮＣ装置２０１においては、外部切り替え軸設定部２５６にて、Ｘ２軸、Ｚ２軸、Ｙ２軸、Ｓ２軸が、ＮＣ装置２０１に結合された０１局、０２局、０３局、０４局のサーボ制御部もしくは主軸制御部の軸として設定され、更に、Ｓ２軸は、入力局Ｐ０１が選択された場合に入力局Ｐ０１が受信した補間出力に従い制御される外部切り替え有効軸として設定される。また、入力局Ｐ０１は、ＮＣ装置１０１を示すＭ０１の出力局Ｖ０１に対し通信を行うように設定される。
なお、このような設定は、機械稼動前に行われ、また表示装置１３０に図３に示すような設定画面を表示し、オペレータがＮＣ装置１０１，２０１の備えられているキーボードより入力することにより行われる。
また、各NCプログラムの先頭に前記設定内容を記述し、各NCプログラムの読込み時に各設定部１５５、２５６に前記設定をさせるようにしてもよい。
【００４１】
また、図６は、図４に示すようなＮＣプログラムで主軸に対する指令がされたときの、補間制御部の主軸の選択に対するフローチャートである。
即ち、ステップＳ５０１で、Ｓ指令ブロックもしくはＧ９６指令（周速度一定制御指令）ブロックかどうか、即ち主軸に対する指令か否かを判別する。主軸に対する指令ブロックでない場合は、処理を終了し、主軸に対する指令ブロックの場合は、ステップＳ５０２で、Ｇ４４指令（仮想軸として設定された主軸の選択指令）がモーダル中かどうかを判定する。
【００４２】
Ｇ４４指令がモーダル中でない場合はＳ１軸選択中と判定（ステップＳ５０３）し、ステップＳ５０４で、仮想軸設定部の設定情報からＳ１軸が仮想主軸かどうかを判定する。Ｓ１軸が仮想主軸でない場合は、この補間制御部が所属するＮＣ装置の接続軸と判断し、ステップＳ５０５で軸制御部に対し速度指令を出力する。ステップＳ５０４でＳ１軸が仮想主軸と判定した場合は、ステップＳ５０６で、Ｓ１軸の速度制御の補間出力を仮想軸制御部に出力し、後述するように、仮想軸制御部では、Ｓ１軸に登録している出力局に対し出力し、当該ＮＣ装置が制御権を取得する。
【００４３】
ステップＳ５０２で、Ｇ４４指令モーダル中の場合は、Ｓ２軸選択中と判定（ステップＳ５０７）し、ステップＳ５０８で、仮想軸設定部の設定情報からＳ２軸が仮想主軸かどうかを判定する。Ｓ２軸が仮想主軸でない場合は、この補間制御部が所属するＮＣ装置の接続軸と判断し、ステップＳ５０９で軸制御部に対し速度指令を出力する。ステップＳ５０８でＳ２軸が仮想主軸と判定した場合は、ステップＳ５１０で、Ｓ２軸の速度制御の補間出力を仮想軸制御部に出力し、後述するように、仮想軸制御部では、Ｓ２軸に登録している出力局に対し出力し、当該ＮＣ装置が制御権を取得する。
このフローにおいて、図２に示す軸構成で、且つ図３に示す仮想軸及び外部切り替え有効軸の設定を行った場合には、ステップS５０４での判定は、S１は仮想主軸でないと判断され、ステップS５０５に移行し、またステップS５０８での判定は、S２は仮想主軸であると判断され、ステップS５１０に移行する。
【００４４】
また、図７は、仮想軸制御部１５１における、仮想軸に対する速度制御補間出力のフローチャートである。ステップＳ５５０で、仮想軸の設定かどうか判定する。仮想軸設定の場合、ステップＳ５５１で、仮想軸が、主軸または回転軸（直線軸X軸、Y軸、Z軸まわりのA軸、B軸、C軸など）かを判定する。仮想軸が主軸または回転軸の場合、ステップＳ５５２で仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ５５３で、仮想軸に設定された出力局に、当該仮想軸の速度制御の補間結果を出力する。
【００４５】
また、ＮＣ装置１０１において仮想軸として設定されたＳ２軸の選択指令がNCプログラム１４０よりなされた場合、仮想軸制御部１５１は外部通信部１５３及び外部通信部２５３を経由し、軸制御権切り替え処理部２５４に対して、制御権の切り替え要求を行い、軸制御権切り替え処理部２５４は、Ｓ２軸の制御権を外部入力局Ｐ０１の指令に切り替えることで、ＮＣ装置１０１に制御権を与える。このときの、ＮＣ装置１０１とＮＣ装置２０１間におけるＳ２軸の制御権切り替えの通信シーケンスを図８に示す。
【００４６】
即ち、図８に示すように、ＮＣ装置１０１において仮想軸として設定され、ＮＣ装置２０１に結合された、Ｓ２軸の選択指令がなされた場合、外部通信部を介して、ＮＣ装置１０１からＮＣ装置２０１に対して、Ｓ２軸の制御権切り替え要求が送信される。
次いで、ＮＣ装置２０１は、外部切り替え有効軸であるＳ２軸の制御権を入力局Ｐ０１に切り替え、ＮＣ装置１０１に対して、制御権切り替え完了を通知する。
以降、ＮＣ装置１０１は、仮想軸Ｓ２軸に対する指令に従い、移動量を所定の通信周期に従い、ＮＣ装置２０１に送信する。
次いで、ＮＣ装置２０１においてＳ２軸の制御権の切り替えがなされ、制御権が別のＮＣ装置に切り替わった場合、ＮＣ装置２０１は、ＮＣ装置１０１に対し、制御権が切り離されたことを通知する。
【００４７】
なお、上記の通信シーケンスの如何に係らず、ＮＣ装置２０１は、ＮＣ装置１０１にＳ２軸のフィードバック位置情報を送信し、ＮＣ装置１０１は、受信したフィードバック位置情報に従い、Ｓ２軸での毎回転送り指令、ねじ切り指令を行う。
【００４８】
図２に示すような軸構成で、図３に示すように設定されたＮＣシステムにおいて、図４に示すNCプログラムが実行された場合、即ちＮＣプログラム１４０がＮＣ装置１０１の第１系統で運転され、ＮＣプログラム２４０がＮＣ装置２０１の第１系統で運転された場合、ＮＣ装置２０１に結合され、仮想軸として設定されたＳ２軸は、図５に示すように動作する。
【００４９】
即ち、ＮＣプログラム２４０がＮＣ装置２０１の第１系統で運転され、Ｎ１０ブロックにおいて、Ｓ２軸に対し１０００ｒ／ｍｉｎの速度指令が与えられ、同速度で回転を行う。
次いで、ＮＣ装置１０１の第１系統で運転されるＮＣプログラム１４０のＮ３０ブロックにて、Ｇ４４指令により、ＮＣ装置１０１に仮想軸として設定されたＳ２軸の選択指令がなされ、Ｓ５００指令により、５００ｒ／ｍｉｎの速度指令が与えられる。このとき、ＮＣ装置２０１の軸制御権切り替え処理部２５４は、切り替え要求の順に優先度を決定し、Ｓ２軸の制御権をＮＣ装置１０１の指令に切り替え、Ｓ２軸は、ＮＣ装置１０１で与えられた速度指令の５００ｒ／ｍｉｎで回転を行い、Ｎ３１ブロック（Ｇ９５：毎回転送り指令（工具を主軸1回転あたりどれだけ送るかを指令する切削送り指令））にて、Ｓ２軸の回転速度に対し、１回転辺り１ｍｍの毎回転送り速度でＺ１軸が移動し、旋削を行う。なお、毎回転送り指令は、同期制御の一種である。
【００５０】
次いで、ＮＣ装置２０１の第１系統で運転されるＮＣプログラム２４０のＮ４０ブロックにて、Ｇ４３指令によりＮＣ装置２０１の第１系統におけるＳ２軸の選択指令がなされ、８００ｒ／ｍｉｎの速度指令が与えられる。ＮＣ装置２０１の軸制御権切り替え処理部２５４は、Ｓ２軸の制御権をＮＣ装置２０１で与えられた速度指令に切り替え、Ｓ２軸は、ＮＣ装置２０１で与えられた速度指令の８００ｒ／ｍｉｎで回転を行う。
【００５１】
次いで、ＮＣ装置１０１の第１系統で運転されるＮＣプログラム１４０のＮ５０ブロックにおいて、Ｓ２軸に対し３００ｒ／ｍｉｎの速度指令が与えられ、ＮＣ装置１０１に仮想軸として設定されたＳ２軸の選択指令がなされ、ＮＣ装置２０１はＳ２軸の制御権をＮＣ装置１０１の指令に切り替え、Ｓ２軸は、ＮＣ装置１０１で与えられた速度指令の３００ｒ／ｍｉｎで回転を行う。そして、ＮＣ装置１０１に結合されたＸ１軸及びＺ１軸によりねじ切りバイトを固定した工具台を駆動し、またＮＣ装置２０１に結合されたＳ２軸でワークを回転させる主軸を駆動する機械構成となっている場合、Ｎ５１ブロック（Ｇ３３：ねじ切り指令）にて、Ｓ２軸の回転速度に対し、０．５ｍｍピッチのねじ切り加工を行う。なお、ねじ切り指令も同期制御の一種である。
【００５２】
このねじ切り加工時に、本ＮＣシステムは図９及び図１０に示すように動作する。なお、図９はＳ２軸のフィードバック位置及びＺ１軸の指令位置を示し、また図１０はＳ２軸のフィードバック位置差分及びＺ１軸の補間移動量を示す図である。
即ち、ＮＣ装置１０１の補間制御部１２０は、ねじ切り指令がされた後、軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じてNC装置２０１からのフィードバックされるＳ２軸のフィードバック位置データから、所定の角度位置（１回転基準位置）をまたぐ変化が発生することを検出し、Ｓ２軸が所定の角度位置を通過するのを待つ。次いで、Ｓ２軸が１回転基準位置を通過したことを検出した時、１回転基準位置からのフィードバック位置変化量（ΔＰ）を算出し、初回のＺ１軸移動量を算出する。次いで、ねじ切り指令の終点座標まで、フィードバック位置データの変化量に対してＺ１軸（ねじ切りリード軸）の移動量を算出し、Ｚ１軸の移動量を算出する。
【００５３】
ねじのピッチがＰ［ｍｍ］で、ＮＣ装置１０１がＳ２軸のフィードバック位置データを受信する周期ΔＴｓ［ｍｓ］当たりのフィードバック位置データの変化量がΔＰ［度］の場合、補間単位時間ΔＴｉ［ｍｓ］当たりのねじ切りリード軸（Ｚ１軸）の補間移動量は下記式で算出できる。
（Ｚ１軸補間移動量）＝Ｐ×（ΔＴｉ／ΔＴｓ）×ΔＰ／３６０
例えば、ＮＣ装置１０１の補間処理周期（ΔＴｉ）が４ｍｓ、ＮＣ装置１０１とＮＣ装置２０１が通信しＮＣ装置２０１からフィードバック位置データを受信する周期（ΔＴｓ）が８ｍｓ、Ｓ２軸が３００ｒ/ｍｉｎで回転して、ピッチ０．５ｍｍのねじ切りを行う場合、Ｓ２軸のフィードバック位置データはΔＴｓ（８ｍｓ）周期毎に値が更新され、変化量ΔＰは１９度であった場合、Ｚ１軸の補間処理周期（ΔＴｉ）当たりの補間移動量は、
（Ｚ１軸補間移動量）＝０．５［ｍｍ］×（４／８）×１９［度］／３６０
＝０．０１３ｍｍ
として算出され、同補間移動量を出力する。なお、上記計算式で、補間移動量の計算上の端数は、端数処理がなされなければいけないことは言うまでも無い。上記補間移動量計算を行うことで、ＮＣ装置１０１に結合されたＺ１軸は、ＮＣ装置２０１に結合されたＳ２軸が１回転する毎に、０．５ｍｍの補間移動を行い、ねじ切りを行う。
【００５４】
なお、図１の例では記載を省略しているが、図１１に示すように、ＮＣ装置１０１に、ＮＣ装置２０１の軸制御権切り替え処理部２５４、外部切り替え軸設定部２５６と実質的に同一の機能を有する軸制御権切り替え処理部１５４、外部切り替え軸設定部１５６を備え、またＮＣ装置２０１に、ＮＣ装置１０１の仮想軸制御部１５１、仮想軸設定部１５５と実質的に同一の機能を有する仮想軸制御部２５１、仮想軸設定部２５５を備える構成としてもよい。
即ち、ＮＣ装置１０１とＮＣ装置２０１とを同一の構成としてもよい。
【００５５】
図１１に示すような構成とした場合、仮想軸制御部１５１が送信する指令位置を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信できるとともに、NC装置１０１にフィードバックされた位置情報を、軸制御部１２３、外部通信部１５３、２５３、仮想軸制御部２５１を通じてNC装置２０１の補間制御部２２０に送信できる。また、仮想軸制御部２５１が送信する指令位置を、外部通信部２５３、１５３を通じてＮＣ装置１０１の軸制御部１２３に送信できるとともに、NC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。
【００５６】
また、NC装置２０１の仮想軸設定部２５５でNC装置１０１に結合された所定の軸（例えば主軸モータ１０７で制御される軸）を仮想軸として設定するとともに、NC装置１０１の外部切り替え軸設定部１５６で、その仮想軸として設定されたNC装置１０１に結合された所定の軸（例えば主軸モータ１０７で制御される軸）を、外部切り替え軸設定部１５６において外部切り替え有効軸として設定すれば、NC装置２０１側から、NC装置１０１に結合された所定の軸をNC装置２０１に結合された軸と同期制御することができる。
【００５７】
以上説明したように、この実施の形態１によれば、１台のハードウェアで実現可能な能力以上の加工が必要な工作機械に適用する場合、ＮＣ装置を更に付加することによって、機械オペレータが、複数台のＮＣ装置で制御されていることを意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、ＮＣ装置間の協調加工（同期制御加工）などを行うことができる。
また、安価なハードウェアを使用して、個々のＮＣ装置の性能が低くても高機能な多軸系統制御を実現できるため、一般的な機械に対して最適な性能のＮＣ装置に集約すれば足りるようになって、１台で全ての仕様をカバーする一般的な機械に対しては過剰仕様となる多軸多系統のＮＣ装置を開発する必要がなくなり、よって開発コスト及び製造コストを削減できる。
【００５８】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り換え、速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送り及びねじ切り加工が行える。
【００５９】
実施の形態２．
次に本発明の実施の形態２を、図１２〜図１８を用いて説明する。なお、この実施の形態２は、本発明を、ＮＣ旋盤を２台並べた加工ラインに適用した場合の例である。
図１２は本発明の実施の形態２に係るＮＣシステムの構成を示す要部ブロック図であり、１０１、２０１は夫々別個にＣＰＵを有し夫々独立して制御可能なＮＣ装置で、ＮＣ装置１０１は一方のＮＣ旋盤に搭載され、またＮＣ装置２０１は他方のＮＣ旋盤に搭載される。
【００６０】
１０２、１０３、１０８、１０９はＮＣ装置１０１と結合された制御軸のサーボ制御部、１０４はＮＣ装置１０１と結合された主軸制御部、１０５、１０６、１１０、１１１はサーボ制御部１０２、１０３、１０８、１０９が駆動するサーボモータで、NC装置１０１に位置情報をフィードバックする位置検出器を有する。１０７は主軸制御部１０４が駆動する主軸モータで、この主軸モータで制御される主軸に、NC装置１０１に位置情報をフィードバックする位置検出器が設けられている。また、２０２、２０３、２０８、２１０はＮＣ装置２０１と結合された制御軸のサーボ制御部、２０４はＮＣ装置２０１と結合された主軸制御部、２０５、２０６、２０９、２１１はサーボ制御部２０２、２０３、２０８，２１０が駆動するサーボモータで、NC装置２０１に位置情報をフィードバックする位置検出器を有する。２０７は主軸制御部２０４が駆動する主軸モータで、この主軸モータで駆動される主軸に、NC装置２０１に位置情報をフィードバックする位置検出器が設けられている。
【００６１】
なお、NC装置２０１の軸制御部２２３にフィードバックされた位置情報は、NC装置１０１の補間制御部１２０にもフィードバックされ、NC装置１０１の軸制御部１２３にフィードバックされた位置情報は、NC装置２０１の補間制御部２２０にもフィードバックされる。
また、NC装置１０１とNC装置２０１とで共用される表示装置１３０は、表示画面、キーボードなどを有するもので、公知のものである。
また、ＮＣ装置１０１、２０１は、ＣＰＵ、メモリなどからなる公知のハードウェア構成を有し、以下に説明する処理部、制御部、設定部などがソフトウエアにより構成され、搭載されている。
【００６２】
ＮＣ装置１０１は、解析処理部１１１、補間制御部１２０、ＰＬＣ制御部１２１、軸制御部１２３を備える。
またＮＣ装置２０１は、解析処理部２１１、補間制御部２２０、ＰＬＣ制御部２２１、軸制御部２２３を備える。
【００６３】
解析処理部１１１、２１１は、メモリ（図示せず）に格納されたＮＣプログラムを１ブロックずつ読み出し、補間処理などを行うため解析を行う。補間制御部１２０は、解析処理部１１１の結果を受け、また軸制御部２２３、外部通信部２５３、外部通信部１５３、仮想軸制御部１５１を通じて送られたNC装置２０１からのフィードバックデータに基づいて所定軸の所定時間毎の補間処理を行う。また、この補間制御部１２０は、NC装置２０１に結合された制御軸（例えば主軸モータ２０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部１２３は、結合しているサーボ制御部１０２、１０３及び主軸制御部１０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部１０２、１０３、１０８、１０９及び主軸制御部１０４は、指令された移動量に従い、結合しているモータ１０５〜１０７、１１０、１１１を駆動する。
【００６４】
また、補間制御部２２０は、解析処理部２１１の結果を受け、また軸制御部１２３、外部通信部１５３、外部通信部２５３、仮想軸制御部２５１を通じて送られたNC装置１０１からのフィードバックデータに基づいて所定軸の所定時間毎の補間処理を行う。また、この補間制御部２２０は、NC装置１０１に結合された制御軸（例えば主軸モータ１０７にて制御される主軸）に対して仮想軸が設定されている場合、その仮想軸の補間処理も行う。補間処理の結果、各制御軸の補間単位当たりの移動量が生成され、軸制御部２２３は、結合しているサーボ制御部２０２、２０３、２０８、２１０及び主軸制御部２０４に対して、各制御軸の加減速等の処理を行った後の単位周期当たりの移動量を出力する。サーボ制御部２０２、２０３、２０８、２１０及び主軸制御部２０４は、指令された移動量に従い、結合しているモータ２０５〜２０７、１１０、１１１を駆動する。
また、補間制御部１２０、２２０は、図６、図９及び図１０を用いて前述した通りの動作も行う。
また、ＰＬＣ制御部１２１、２２１は、NCプログラムより指令される補助指令（M指令）などを処理するもので、公知のものであるので、その説明は省略する。
【００６５】
更に、ＮＣ装置１０１は、軸交換制御部１２２、仮想軸制御部１５１、遅延制御部１５２、外部通信部１５３、軸制御権切り替え処理部１５４、仮想軸設定部１５５、外部切り替え軸設定部１５６を備え、ＮＣ装置２０１は、軸交換制御部２２２、仮想軸制御部２５１、遅延制御部２５２、外部通信部２５３、軸制御権切り替え処理部２５４、仮想軸設定部２５５、外部切り替え軸設定部２５６を備える。
【００６６】
軸交換制御部１２２は、ＮＣ装置１０１におけるプログラム指令等により、系統に属する制御軸の一部または全部の交換を行う。また、軸交換制御部２２２は、ＮＣ装置２０１におけるプログラム指令等により、系統に属する制御軸の一部または全部の交換を行う。本実施の形態２の軸交換制御部１２２、２２２においては、仮想軸設定された軸も軸交換できる制御軸の対象となる。
【００６７】
ＮＣ装置１０１が備える仮想軸制御部１５１は、補間制御部１２０によって補間処理された制御軸のうち、ＮＣ装置１０１の軸制御部１２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部１５５にて設定される仮想軸の制御を行う。
即ち、仮想軸制御部１５１は、補間制御部１２０で補間処理された、仮想軸設定部１５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、外部通信部２５３を通じて、ＮＣ装置２０１の軸制御部２２３に送信することにより、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１２に示すNCシステムの場合、例えばNC装置２０１に結合された主軸モータ２０７にて制御される軸が仮想軸として設定されておれば、仮想軸制御部１５１はその主軸モータ２０７を制御する。
【００６８】
なお、外部通信部１５３とＮＣ装置２０１の外部通信部２５３とは、双方向シリアル通信、イーサネット（登録商標）もしくはバスの通信路で結合され、一定周期毎に相互に通信を行う。このため、仮想軸制御部１５１が送信する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部１５３、２５３を通じてＮＣ装置２０１の軸制御部２２３に送信できる。また、NC装置２０１にフィードバックされた位置情報を、軸制御部２２３、外部通信部２５３、１５３、仮想軸制御部１５１を通じてNC装置１０１の補間制御部１２０に送信できる。
【００６９】
また、ＮＣ装置２０１が備える仮想軸制御部２５１も、ＮＣ装置１０１が備える仮想軸制御部１５１と同様の機能を有するものである。即ち、補間制御部２２０によって補間処理された制御軸のうち、ＮＣ装置２０１の軸制御部２２３が制御可能な軸以外の軸の制御を行うために備えられたもので、仮想軸設定部２５５にて設定される仮想軸の制御を行う。
即ち、仮想軸制御部２５１は、補間制御部２２０で補間処理された、仮想軸設定部２５５にて設定された仮想軸に対する指令位置（仮想軸の加減速等の処理を行った後の単位周期当たりの移動量）を、外部通信部２５３、外部通信部１５３を通じて、ＮＣ装置１０１に送信することにより、仮想軸設定部１５５にて設定される仮想軸の制御を行う。図１２に示すNCシステムの場合、例えばNC装置1０１に結合された主軸モータ１０７にて制御される主軸が仮想軸として設定されておれば、仮想軸制御部２５１はその主軸モータ１０７を制御する。
【００７０】
また、本実施の形態２のＮＣ装置において、ＮＣ装置２０１に結合された軸をＮＣ装置１０１の仮想軸として割り当て、ＮＣ装置１０１の補間制御部１２０において、ＮＣ装置１０１に結合した軸と仮想軸とが補間処理されたとき、ＮＣ装置２０１に結合された制御軸を駆動するサーボ制御部もしくは主軸制御部への指令は、仮想軸制御部１５５、外部通信部１５３、外部通信部２５３、軸制御切り替え処理部２５４、軸制御部２２３を経由して出力されるため、ＮＣ装置１０１に結合された制御軸を駆動するサーボ制御部もしくは主軸制御部に対し出力する場合に比べて、応答が遅れることになる。NC装置１０１の遅延制御部１５２は、この応答遅れによる出力タイミングのずれを補正するために設けられたもので、図１３のタイムチャートに示すように、同タイミングの補間出力に対し、ＮＣ装置１０１に結合された軸に対する移動量を一旦バッファリングし、軸制御部１２３への出力を遅延させるものである。この結果、その遅延を、ＮＣ装置１０１がＮＣ装置２０１に結合されたサーボ制御部もしくは主軸制御部に出力するまでの時間または周期とすることによって、NC装置１０１、NC装置２０１とも同一のタイミングで出力を行うことができる。
【００７１】
また、ＮＣ装置２０１の遅延制御部２５２も、ＮＣ装置１０１の遅延制御部１５２と同様の機能を有するもので、ＮＣ装置２０１において、ＮＣ装置２０１に結合された軸とＮＣ装置１０１に結合された仮想軸とで補間処理が施され、各々の移動量が、対応するサーボ制御部、もしくは、主軸制御部に伝わる時間が同時期になるように、補間制御部２２０から軸制御部２２３に出力する移動量を一旦バッファリングし、軸制御部２２３への出力を遅延させるものである。
【００７２】
また、ＮＣ装置1０１が備える軸制御権切り替え処理部１５４は、軸制御部１２３により制御可能な軸のうち、ＮＣ装置１０１の外部切り替え軸設定部１５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部１５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。軸制御権切り替え処理部１５４は、外部のＮＣ装置２０１で運転される加工プログラムの指令、またはＮＣ装置１０１で運転される加工プログラムの指令によって、優先度に従い、制御権が切り替えられる。
なお、制御権の切り替えは、PLC制御部からの信号により行うことも可能である。
【００７３】
また、ＮＣ装置２０１が備える軸制御権切り替え処理部２５４は、ＮＣ装置１０１の軸制御権切り替え処理部１５４と同様の機能を有するものである。即ち、軸制御部２２３により制御可能な軸のうち、ＮＣ装置２０１の外部切り替え軸設定部２５６において外部切り替え有効軸として設定された制御軸に対し、同ＮＣ装置２０１が備える補間制御部２２０の補間処理の結果生成される補間移動量に従い軸の移動を行うか、外部のＮＣ装置１０１が備える補間制御部１２０の補間処理の結果生成される仮想制御軸に対する補間移動量を、外部通信部２５３を介して受信し、受信した補間移動量に従い軸の移動を行うか、の制御権を切り替えるものである。
なお、仮想軸設定部１５５、２５５及び外部切り替え軸設定部１５６、２５６の機能は、図１５を用いて後述する。
【００７４】
図１４は本発明の実施の形態２に係るＮＣシステムの軸構成例を示す図である。ＮＣ装置１０１とＮＣ装置２０１は、別ＣＰＵで動作する装置であるので、夫々のＮＣ装置は独立して、各々の制御系統で別々のＮＣプログラムに従い運転を行う。また、ＮＣ装置１０１とＮＣ装置２０１は外部通信部１５３と外部通信部２５３により結合される。
【００７５】
この例の場合、ＮＣ装置１０１は、Ｘ１１軸、Ｚ１１軸、Ｃ１１軸で構成される第１系統と、Ｘ１２軸、Ｚ１２軸で構成する第２系統の２系統構成のＮＣ装置としている。ＮＣ装置１０１の第１系統で実行するＮＣプログラム１４０により、Ｘ１１軸、Ｚ１１軸、Ｃ１１軸は、夫々、Ｘ、Ｚ、Ｃのアドレスで位置決め指令が可能である。また、ＮＣ装置１０１の第２系統で実行するＮＣプログラム１４０により、Ｘ１２軸、Ｚ１２軸は、夫々Ｘ、Ｚの軸アドレスで位置決め指令が可能である。なお、Ｃ１１軸は、Ｓアドレスによる速度指令により、回転指令が可能な主軸Ｃ軸制御軸として割り当てられ、Ｃ１１軸として位置決め指令だけでなく、Ｓ１１軸としても動作する。
【００７６】
ＮＣ装置２０１は、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸（回転軸）で構成された１系統構成のＮＣ装置としている。ＮＣ装置２０１の第１系統で実行するＮＣプログラム２４０により、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸は、夫々、Ｘ、Ｚ、Ｙ、Ｃ、Ｖの軸アドレスで位置決め指令が可能である。なお、Ｃ２１軸は、Ｓアドレスによる速度指令により、回転指令が可能な主軸Ｃ軸制御軸として割り当てられ、Ｃ２１軸として位置決め指令だけでなく、Ｓ２１軸としても動作する。
【００７７】
更に、ＮＣ装置１０１においては、ＮＣ装置１０１に結合された制御軸（Ｘ１１軸、Ｚ１１軸、Ｃ１１軸、Ｘ１２軸、Ｚ１２軸）に加えて、仮想の位置決め軸として、仮想Ｃ２１軸、及び、仮想Ｖ２１軸が設定される。また、ＮＣ装置２０１においては、ＮＣ装置２０１に結合された制御軸（Ｘ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸、Ｖ２１軸）に加えて、仮想の位置決め軸として、仮想Ｃ１１軸が設定される。
【００７８】
図１５に、図１４に示すような軸構成としたＮＣシステムにおける仮想軸及び外部切り替え有効軸の設定例を示す。ＮＣ装置１０１においては、第１系統のＸ１１軸、Ｚ１１軸、Ｃ１１軸（Ｓ１１軸）、第２系統のＸ１２軸、Ｚ１２軸が結合され、仮想軸として、Ｃ２１軸、Ｖ２１軸が割り当てられている。また、ＮＣ装置２０１においては、第１系統のＸ２１軸、Ｚ２１軸、Ｙ２１軸、Ｃ２１軸（Ｓ２１軸）、Ｖ２１軸が結合され、仮想軸として、Ｃ１１軸が割り当てられている。
【００７９】
図１５の設定例の場合、仮想軸設定部１５５により、ＮＣ装置１０１側の仮想軸の通信局Ｖ０１〜Ｖ０４のうち、Ｖ０１局にＣ２１軸が仮想軸として設定され、通信の接続先として、ＮＣ装置２０１を示すＭ０２の外部切り替え有効軸のＰ０１局に割り付けられている。また、Ｖ０２局にＶ２１軸が設定され、通信の接続先として、ＮＣ装置２０１を示すＭ０２の外部切り替え有効軸のＰ０２局に割り付けられている。
【００８０】
また、外部切り替え軸設定部１５６により、ＮＣ装置２０１側の外部切り替え有効軸の通信局Ｐ０１〜Ｐ０４のうち、Ｐ０１局には、Ｃ２１軸が外部切り替え軸として設定されており、ＮＣ装置１０１で、仮想Ｃ２１軸に対する指令を行う場合は、ＮＣ装置１０１の仮想軸通信局Ｖ０１とＮＣ装置２０１の外部切り替え軸通信局Ｐ０１が所定の周期で通信を行い、ＮＣ装置２０１の外部切り替え軸通信局Ｐ０１に設定された、ＮＣ装置２０１に結合されているＣ２１軸の制御権を切り替えて、移動を行うように設定される。また、Ｐ０２局には、Ｖ２１軸が外部切り替え軸として設定されており、ＮＣ装置１０１で、仮想Ｖ２１軸に対する指令を行う場合は、ＮＣ装置１０１の仮想軸通信局Ｖ０２とＮＣ装置２０１の外部切り替え軸通信局Ｐ０２が所定の周期で通信を行い、ＮＣ装置２０１の外部切り替え軸通信局Ｐ０２に設定された、ＮＣ装置２０１に結合されているＶ２１軸の制御権を切り替えて、移動を行うように設定される。
【００８１】
また、仮想軸設定部２５５により、ＮＣ装置２０１側の仮想軸の通信局Ｖ０１〜Ｖ０４のうち、Ｖ０１局にＣ１１軸が仮想軸として設定され、通信の接続先として、ＮＣ装置１０１を示すＭ０１の外部切り替え有効軸のＰ０１局に割り付けられている。
また、外部切り替え軸設定部２５６により、ＮＣ装置１０１側の外部切り替え有効軸の通信局Ｐ０１〜Ｐ０４のうち、Ｐ０１局には、Ｃ１１軸が外部切り替え軸として設定されており、ＮＣ装置２０１で、仮想Ｃ１１軸に対する指令を行う場合は、ＮＣ装置２０１の仮想軸通信局Ｖ０１とＮＣ装置１０１の外部切り替え軸通信局Ｐ０１が所定の周期で通信を行い、ＮＣ装置１０１の外部切り替え軸通信局Ｐ０１に設定された、ＮＣ装置２０１に結合されているＣ１１軸の制御権を切り替えて、移動を行うように設定される。
【００８２】
なお、このような設定は、機械稼動前に行われ、また表示装置１３０に図１５に示すような設定画面を表示し、オペレータがＮＣ装置１０１，２０１の備えられているキーボードより入力することにより行われる。
また、各NCプログラムの先頭に前記設定内容を記述し、各NCプログラムの読込み時に各設定部１５５、１５６、２５５、２５６に前記設定をさせるようにしてもよい。
【００８３】
図１７は、図１４に示す軸構成で、且つ図１５に示すように設定されている状態で、図１６に示すような軸交換（Ｇ１４０）指令がなされた場合、ＮＣ装置の軸交換制御部１２２，２２２の動作を示すフローチャートである。
即ち、ステップＳ１１００で、Ｇ１４０指令かどうか判定し、Ｇ１４０指令の場合、ステップＳ１１０１で、交換が必要な軸をチェックする。具体的には、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｃ＝Ｃ１１；指令がなされた場合、Ｘ指令の制御軸がＸ１２軸、Ｚ指令の制御軸がＺ１２軸、Ｃ指令の制御軸がＣ１１軸として保有しているかどうか判定し、保有していない制御軸に対しては、軸の交換を要求する。
【００８４】
次いで、ステップＳ１１０２で、交換要求軸が交換可能な状態にあるかどうかを判定し、交換可能な状態にある場合は、ステップＳ１１０３で、軸の制御権を確保し、交換を行う。次に、ステップＳ１１０４で、交換要求軸が全て交換完了した場合は、ステップＳ１１０５で、Ｇ１４０指令ブロックを完了し、次ブロックに進む。
【００８５】
また、図１８は、この実施の形態２における仮想軸制御部１５１、２５１の仮想軸に対する補間出力のフローチャートである。ステップＳ１１５０で、仮想軸の設定かどうか判定する。仮想軸設定の場合、ステップＳ１１５１で、仮想軸が主軸（例えばＳ１１軸、Ｓ２１軸）または回転軸（例えばＶ２１軸、Ｃ１１軸、Ｃ２１軸）かを判定する。仮想軸が主軸または回転軸の場合、ステップＳ１１５２で、仮想軸が主軸制御モードかどうか判定する。主軸制御モードが選択されている場合、ステップＳ１１５３で仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ１１５４で、仮想軸に設定された出力局に、当該仮想軸の速度制御の補間出力を出力する。
ステップＳ１１５１で、仮想軸が位置指令を与える直線軸（例えばＸ１１軸、Ｚ１１軸、Ｘ１２軸、Ｚ１２軸、Ｘ２１軸、Ｚ２１軸、Ｙ２１軸）の場合、もしくは、ステップＳ１１５２で、仮想軸（主軸または回転軸）が主軸制御モードでなく、位置指令を与える回転軸の場合、ステップＳ１１５５で、仮想軸の制御権があるかどうかを判定する。制御権がある場合、ステップＳ１１５６で、仮想軸に設定された出力局に、当該仮想軸の位置制御の補間出力を出力する。
【００８６】
図１４に示すような軸構成で、図１５に示すように仮想軸などが設定されたＮＣシステムにおいて、図１６に示すNCプログラムが実行された場合、NCシステム１０１、２０１は次の通り動作する。即ち、ＮＣ装置１０１の第２系統で運転するＮＣプログラム１４２のＮ２ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｃ＝Ｃ１１；指令により、ＮＣ装置１０１の第２系統は、最初に同系統を構成しているＸ１２軸、及び、Ｚ１２軸に加え、ＮＣ装置１０１の第１系統のＣ１１軸を、第２系統に交換して制御権を取得し、Ｘ１２軸、Ｚ１２軸、Ｃ１１軸に対する位置指令を夫々、Ｘ、Ｚ、Ｃアドレスで指令を行う。
【００８７】
次いで、ＮＣ装置１０１の第１系統で動作するＮＣプログラム１４１のＮ１ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１１  Ｚ＝Ｚ１１  Ｃ＝Ｃ２１；指令により、ＮＣ装置１０１の第１系統は、Ｘ１１軸、Ｚ１１軸の制御権に加え、ＮＣ装置２０１に結合されたＣ２１軸の制御権を取得する。このとき、ＮＣ装置１０１は、図８で説明したシーケンスと同様のシーケンスで、仮想軸通信局Ｖ０１からＮＣ装置２０１の外部切り替え有効軸通信局Ｐ０１と通信を行い、Ｃ２１軸の制御権を取得し、ＮＣ装置２０１は、Ｃ２１軸の制御を、外部切り替え有効軸通信局Ｐ０１に切り替える。ＮＣ装置１０１の第１系統は、Ｃ２１に対する指令位置を、所定の周期でＮＣ装置２０１に送信し、ＮＣ装置１０１の補間出力に従い、Ｃ２１軸の制御を行うことができる。
【００８８】
同様にして、ＮＣ装置２０１の第１系統で動作するＮＣプログラム２４１のＮ４ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ２１  Ｚ＝Ｚ２１  Ｙ＝Ｙ２１  Ｃ＝Ｃ１１；指令により、ＮＣ装置２０１は、ＮＣ装置１０１に結合されたＣ１１軸の制御を行える。
【００８９】
次いで、ＮＣ装置１０１の第２系統で動作するＮＣプログラム１４２のＮ３ブロックにおいて、Ｇ１４０  Ｘ＝Ｘ１２  Ｚ＝Ｚ１２  Ｖ＝Ｖ２１；指令により、ＮＣ装置１０１はＸ１２軸、Ｚ１２軸、Ｖ２１軸の制御権を取得する。ＮＣ装置２０１はその前に実行されるＮ４ブロックにおいてＶ２１軸の制御権を事前に開放しているが、ＮＣ装置１０１がＶ２１軸の制御権を取得したことを受けて、ＮＣ装置１０１とＮＣ装置２０１は所定周期で通信を行い、ＮＣ装置１０１で生成された仮想軸としてのＶ２１軸に対する補間出力を、ＮＣ装置２０１の外部切り替え有効軸通信局Ｐ０２と所定周期で通信し、ＮＣ装置２０１に結合されたＶ２１軸に出力する。ＮＣ装置２０１は、Ｖ２１軸のフィードバック位置をＮＣ装置１０１に送信する。
【００９０】
なおこの実施の形態２にあっても、ＮＣ装置１０１、２０１間の系統に跨る制御軸の組合せ（例えば、Ｘ１１軸、Ｚ１１軸及びＳ２１軸の組合せ、Ｘ１２軸、Ｚ１２軸及びＳ２１軸の組合せ、Ｘ２１軸、Ｚ２１軸及びＳ１１軸の組合せ）により、図１で説明したような、毎回転送り制御、ねじ切り加工などの同期制御が可能である。例えば、Ｘ２１軸、Ｚ２１軸及びＳ１１軸の組合せ構成（Ｘ２１軸及びＺ２１軸でねじ切りバイト固定した工具台を移動し、Ｓ１１軸にてワークを回転させる構成）とし、ＮＣ装置２０１からの補間出力でねじ切り加工を行う場合、ＮＣ装置１０１のＳ１１軸の位置検出器からのフィードバック位置データを、ＮＣ装置２０１の補間制御部２２０に取込み、実施の形態１で説明した場合と同様に、補間制御部２２０でＺ２１軸の移動量を演算しＺ２１軸に対し出力することにより、Ｚ２１軸がＺ軸方向に送られ、Ｓ１１軸にて回転されるワークにねじを施すことができる。
【００９１】
以上説明したように、この実施の形態２によれば、当該ＮＣ装置に結合された制御軸または仮想制御軸を組み合わせて系統を構成し、また系統間で軸交換を行い、系統を構成する軸の組合せを入れ替え、補間制御や同期制御を行うようにした。また仮想軸の補間出力を、別のＮＣ装置と通信して、別のＮＣ装置に結合された制御軸に対して送り、仮想軸を制御できるようにしたので、当該ＮＣ装置に結合された制御軸だけでなく、異なるＣＰＵで動作するＮＣ装置の制御軸を組み合わせて系統を構築し、補間制御や同期制御を行なうことができる。
【００９２】
また、一般的なＮＣ工作機械に適用可能な、系統数、制御軸数のＮＣ装置を組合せて補間を行うことができるので、専用の高性能なハードウェアを開発することなく、同時に運転可能な系統数を増やし、かつＮＣ装置のハードウェアに関わらず、系統間での制御軸の交換を行い、必要な軸をもって系統を構成し、ＮＣ制御を行うことができる。
【００９３】
また、ＮＣ装置間に跨る軸の制御タイミングを一致させることができ、ひいてはＮＣ装置間に跨る軸の同期制御を精度よく行うことができる。
【００９４】
また、各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも1台のＮＣ装置で制御しているかのごとく、直線軸または回転軸の制御系統の切り換え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間制御が行える。
【００９５】
また、各系統で速度指令する主軸が別のＮＣ装置に結合されていた場合でも、また各系統で位置指令する直線軸または回転軸が別のＮＣ装置に結合されていた場合でも、機械オペレータが、主軸を結合しているＮＣ装置や、直線軸または回転軸を結合しているＮＣ装置を意識せず、あたかも１台のＮＣ装置で制御しているかのごとく、主軸の制御系統の切り替え、速度制御、各系統の直線軸または回転軸の座標値に同期した周速度一定制御、主軸の回転に同期した毎回転送り及びねじ切りが行えるとともに、直線軸または回転軸の制御系統の切り替え、位置決め、異なるＮＣ装置の軸を組み合わせた移動指令の補間が行える。
【００９６】
なお、実施の形態２で説明した遅延制御部を、実施の形態１のＮＣ装置１０１に設けることも可能で、この遅延制御部をＮＣ装置１０１に設ければ、実施の形態１においても、ＮＣ装置１０１に結合された制御軸とＮＣ装置２０１に結合された制御軸との間の制御タイミングを一致させることができる。
【００９７】
実施の形態３．
以下、本発明を多軸自動旋盤に適用した場合の実施の形態３を、図１９〜図２９を用いて説明する。
図１９は実施の形態３に係るＮＣシステムで制御を行う工作機械の一例を示す図である。この工作機械は多軸自動旋盤で、加工するワークを把持し回転させる主軸が、主軸ドラムにＳ１からＳ６まで計６個搭載されており、主軸ドラムが旋回することによって、主軸の配置が決められたステーションに移動するようになっている。また、各ステーションでワークを加工するために、ステーションごとに工具Ｔ１からＴ６が配置され、夫々、独立した系統で制御される。
【００９８】
本実施の形態３においては、工具Ｔ１はＸ１軸及びＺ１軸で動作し、工具Ｔ２はＸ２軸及びＺ２軸で動作し、工具Ｔ３はＸ３軸及びＺ３軸で動作し、工具Ｔ４はＸ４軸及びＺ４軸で動作し、工具Ｔ５はＸ５軸、Ｚ５軸及びＹ５軸で動作し、工具Ｔ６はＸ６軸、Ｚ６軸及びＹ６軸で動作するものとする。また、主軸Ｓ１軸はＣ１軸として位置制御でき、主軸Ｓ２軸はＣ２軸として位置制御でき、主軸Ｓ３軸はＣ３軸として位置制御でき、主軸Ｓ４軸はＣ４軸として位置制御でき、主軸Ｓ５軸はＣ５軸として位置制御でき、主軸Ｓ６軸はＣ６軸として位置制御できるものとする。
【００９９】
上記のような工作機械をＮＣ制御するためには、合計で６系統２０軸制御できるＮＣ装置が必要であるが、本実施の形態３においては、工具Ｔ１はＮＣ装置１（以下ＮＣ＃１）に接続されたＸ１軸及びＺ１軸で動作し、工具Ｔ２はＮＣＮＣ＃１に接続されたＸ２軸及びＺ２軸で動作し、工具Ｔ３はＮＣ＃１に接続されたＸ３軸及びＺ３軸で動作し、工具Ｔ４はＮＣ＃１に接続されたＸ４軸及びＺ４軸で動作し、工具Ｔ５はＮＣ装置２（以下ＮＣ＃２）に接続されたＸ５軸、Ｚ５軸、及び、Ｙ５軸で動作し、工具Ｔ６はＮＣ＃２に接続されたＸ６軸、Ｚ６軸、及び、Ｙ６軸で動作するものとする。また、主軸Ｓ１軸からＳ６軸は、ＮＣ＃２に接続され、夫々、主軸Ｓ１軸はＣ１軸として位置制御でき、主軸Ｓ２軸はＣ２軸として位置制御でき、主軸Ｓ３軸はＣ３軸として位置制御でき、主軸Ｓ４軸はＣ４軸として位置制御でき、主軸Ｓ５軸はＣ５軸として位置制御でき、主軸Ｓ６軸はＣ６軸として位置制御できるように配置している。また、ＮＣ＃１は、仮想軸として、主軸Ｓ１軸（Ｃ１軸）、主軸Ｓ２軸（Ｃ２軸）、主軸Ｓ３軸（Ｃ３軸）、主軸Ｓ４軸（Ｃ４軸）、主軸Ｓ５軸（Ｃ５軸）、主軸Ｓ６軸（Ｃ６軸）の各主軸／Ｃ軸を保有する。
【０１００】
即ち、図２０に示すように、ＮＣ＃１は、接続軸としてＸ１軸、Ｚ１軸、Ｘ２軸、Ｚ２軸、Ｘ３軸、Ｚ３軸、Ｘ４軸、Ｚ４軸の計８軸、仮想軸としてＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の計６軸で、合わせて１４軸の制御を行い、ＮＣ＃２は、接続軸としてＸ５軸、Ｚ５軸、Ｙ５軸、Ｘ６軸、Ｚ６軸、Ｙ６軸、Ｓ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の計１２軸の制御を行う。更に、ＮＣ＃２に接続されたＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）は、夫々、ＮＣ＃１の仮想軸Ｓ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）、Ｓ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）の指令に従い駆動するように切り替えられる、外部切り替え軸として設定する。
なお、この設定は、図１２に示す仮想軸設定部及び外部切り替え設定部にて設定される。
【０１０１】
また、初期の配置としては、ＮＣ＃１において、仮想軸のＳ１軸（Ｃ１軸）、Ｓ２軸（Ｃ２軸）は、系統１から系統４で制御権を持たないため、未使用軸としてフリーの状態とする。また、ＮＣ＃２において、接続軸のＳ３軸（Ｃ３軸）、Ｓ４軸（Ｃ４軸）、Ｓ５軸（Ｃ５軸）、Ｓ６軸（Ｃ６軸）は、同様にＮＣ＃２の系統１から系統２で制御権を持たないため、未使用軸としてフリーの状態とする。
【０１０２】
本実施の形態３の工作機械において、１サイクル目の加工開始前に、主軸ドラムが旋回し、ステーション１に主軸Ｓ１、ステーション２に主軸Ｓ６、ステーション３に主軸Ｓ５、ステーション４に主軸Ｓ４、ステーション５に主軸Ｓ３、ステーション６に主軸Ｓ２が配置される。
この後、ステーション１において、工具Ｔ１と主軸Ｓ１の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ６の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ５の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ４の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ３の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ２の組み合わせで加工を行うように、加工開始前に、図２１に示す系統及び軸構成に配置が切り替わり、各系統で、プログラム指令に対する補間及び同期運転を行う。
【０１０３】
次いで、２サイクル目の加工開始前に、主軸ドラムが旋回し、ステーション１に主軸Ｓ２、ステーション２に主軸Ｓ１、ステーション３に主軸Ｓ６、ステーション４に主軸Ｓ５、ステーション５に主軸Ｓ４、ステーション６に主軸Ｓ３が配置される。
この後、ステーション１において、工具Ｔ１と主軸Ｓ２の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ１の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ６の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ５の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ４の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ３の組み合わせで加工を行う。即ち、図２２に示す系統及び軸構成に配置され、各系統で、プログラム指令に対する補間及び同期運転を行う。
【０１０４】
以降、１サイクル毎に主軸ドラムが旋回し、各ステーションに配置される主軸が順次変化し、図２３から図２６に示す系統及び軸構成に配置され、各サイクルでの加工を行い、６サイクル目では、図２７に示す系統及び軸構成に配置され、ステーション１において、工具Ｔ１と主軸Ｓ６の組み合わせで加工を行い、同時に、ステーション２において工具Ｔ２と主軸Ｓ５の組み合わせ、ステーション３において工具Ｔ３と主軸Ｓ４の組み合わせ、ステーション４において工具Ｔ４と主軸Ｓ３の組み合わせ、ステーション５において工具Ｔ５と主軸Ｓ２の組み合わせ、ステーション６において工具Ｔ６と主軸Ｓ１の組み合わせで加工を行う。
【０１０５】
次いで、７サイクル目では、主軸ドラムが旋回し、ステーション１に主軸Ｓ１、ステーション２に主軸Ｓ６、ステーション３に主軸Ｓ５、ステーション４に主軸Ｓ４、ステーション５に主軸Ｓ３、ステーション６に主軸Ｓ２が配置されるので、図２１に示す軸構成に戻り、１サイクル目と同様の構成で加工を行い、以降、１〜６サイクルと同様の加工を繰り返し実行する。
【０１０６】
上記のように、各工具を制御する系統において、ワークを回転または位置決めする主軸が順次切り替わるが、各ステーションにおいて、主軸の回転に同期して旋削もしくはねじ切りを行う場合は、主軸の回転に同期して、工具の移動を補間しなければならない。また、各ステーションにおいてミル加工等を行う場合は、主軸を位置制御軸（Ｃ軸）に切り替えて、工具の送り軸と主軸の回転軸（Ｃ軸）を同時に補間が必要となる。
【０１０７】
本実施の形態の工作機械を制御するＮＣシステムの場合、図２７に示すように、ＮＣ＃１の系統１においてステーション１（ＳＴ１）の加工プログラムＰ１を実行し、ＮＣ＃１の系統２においてステーション２（ＳＴ２）の加工プログラムＰ２を実行し、ＮＣ＃１の系統３においてステーション３（ＳＴ３）の加工プログラムＰ３を実行し、ＮＣ＃４の系統４においてステーション４（ＳＴ４）の加工プログラムＰ４を実行し、ＮＣ＃２の系統１においてステーション５（ＳＴ５）の加工プログラムＰ５を実行し、ＮＣ＃２の系統２においてステーション６（ＳＴ６）の加工プログラムＰ６を実行し、各ステーションに配置された工具に適した加工を実行する。
【０１０８】
また、加工を実行する前に、各主軸が所定のステーション位置になるように、主軸ドラムを旋回する必要があるので、ステーション１（ＳＴ１）においては、主軸ステーション切り替えのためのプログラムＭ１、ステーション２（ＳＴ２）においては、主軸ステーション切り替えのためのプログラムＭ２、ステーション３（ＳＴ３）においては、主軸ステーション切り替えのためのプログラムＭ３、ステーション４（ＳＴ４）においては、主軸ステーション切り替えのためのプログラムＭ４、ステーション５（ＳＴ５）においては、主軸ステーション切り替えのためのプログラムＭ５、ステーション６（ＳＴ６）においては、主軸ステーション切り替えのためのプログラムＭ６が実行され、主軸ドラムを旋回し、Ｓ１軸（Ｃ１軸）からＳ６軸（Ｃ６軸）の配置をローテーションする。
【０１０９】
このとき、ＮＣ＃１の主軸ステーション切り替えプログラム内で、図２８のフローチャートに従い、各系統のＣ軸（主軸）の軸交換要求が行われ、例えば、ＮＣ＃１の系統１においては、１サイクル目はＸ１軸、Ｚ１軸、Ｃ１軸（Ｓ１軸）の軸構成、２サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ２軸（Ｓ２軸）の軸構成、３サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ３軸（Ｓ３軸）の軸構成、４サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ４軸（Ｓ４軸）の軸構成、５サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ５軸（Ｓ５軸）の軸構成、６サイクル目は、Ｘ１軸、Ｚ１軸、Ｃ６軸（Ｓ６軸）の軸構成となり、１サイクル毎に、随時、各系統の制御主軸（Ｃ軸）を切り換えて、加工を繰り返す。
【０１１０】
また、ＮＣ＃２の主軸ステーション切り替えプログラム内では、図２９のフローチャートに従い、各系統のＣ軸（主軸）の軸交換要求が行われ、例えば、ＮＣ＃２の系統１においては、１サイクル目はＸ５軸、Ｚ５軸、Ｙ５軸、Ｃ３軸（Ｓ３軸）の軸構成、２サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ４軸（Ｓ４軸）の軸構成、３サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ５軸（Ｓ５軸）の軸構成、４サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ６軸（Ｓ６軸）の軸構成、５サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ１軸（Ｓ１軸）の軸構成、６サイクル目は、Ｘ５軸、Ｚ５軸、Ｙ５軸、Ｃ２軸（Ｓ２軸）の軸構成となり、１サイクル毎に、随時、各系統の制御主軸（Ｃ軸）を切り換えて、加工を繰り返す。
【０１１１】
このとき、ＮＣ＃１の各系統で制御する主軸（Ｃ軸）は、各系統においてＣ軸制御（位置指令）モードか、主軸制御モードかにより、夫々補間出力を、位置指令データまたは速度指令データとして、ＮＣ＃２に送信され、ＮＣ＃２は、対応する外部切り替え軸を、ＮＣ＃１から送信される補間出力に従い、位置制御もしくは速度制御を行う。更に、ＮＣ＃２は制御軸のフィードバック位置データをＮＣ＃１に送信し、ＮＣ＃１は、ＮＣ＃２から送られるフィードバック位置を周期的に取得し、変化量に同期して毎回転送りもしくはねじ切り加工等を行うことができる。
【０１１２】
以上のように、工程の切り替わりで、系統間で交換しなければならない軸は、本発明の実施の形態３の場合、Ｓ１軸（Ｃ１軸）からＳ６軸（Ｃ６軸）の６軸に限られ、交換が必要な軸のみ、同制御軸を接続しているＮＣ装置において外部切り替え軸として設定し、同制御軸を接続していないＮＣ装置では、仮想軸として設定することで、各ＮＣ装置間で共通に制御ができ、かつ各ＮＣ装置の系統において、異なるＮＣ装置に接続された制御軸であることを機械オペレータが意識せず、必要な軸を組み合わせて補間制御及び同期制御を行うことができる。
【産業上の利用可能性】
【０１１３】
本発明の数値制御システムは、ＮＣ工作機械を複数台並べて一連の加工を行う場合などにおいて、制御軸数や制御系統数を増加させるために用いられるのに適している。
【符号の説明】
【０１１４】
１０１、２０１  ＮＣ装置
１０２、１０３、１０８、１０９、２０２、２０３、２０８、２１０  サーボ制御部
１０４、２０４  主軸制御部
１０５、１０６、１１０、１１１、２０５、２０６、２０９、２１１  サーボモータ
１０７、２０７  主軸モータ
１１１、１１２、２１１、２１２  解析処理部
１２０、２２０  補間制御部
１２１、２２１  ＰＬＣ制御部
１２２、２２２  軸交換制御部
１２３、１２３  軸制御部
１３０  表示装置
１４０、２４０  ＮＣプログラム
１４１、１４２、２４１  ＮＣプログラム
１５１、２５１  仮想軸制御部
１５２、２５２  遅延制御部
１５３、２５３  外部通信部
１５４、２５４  軸制御切り替え処理部
１５５、２５５  仮想軸設定部
１５６、２５６  外部切り替え軸設定部
【国際調査報告】
2008136110.tif 000034
2008136110.tif 000035
2008136110.tif 000036
2008136110.tif 000037