(57)【特許請求の範囲】
【請求項１】
ワークに対して前記ワークに対向する工具を工具軸周りにそれぞれ相対的に回転させる複数の主軸と、複数の前記ワークに複数の前記工具が相対的に近づくように送り動作を行う第１の送り軸と、前記複数の工具における１つの工具と前記１つの工具に対向するワークとの間の距離を変える第２の送り軸とを有する工作機械を制御する数値制御装置であって、
連動同期タップ指令に従って、前記第１の送り軸により、前記複数の主軸のうちの基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させるとともに、前記第２の送り軸により、前記基準側の主軸の工具及びワーク間の距離と前記連動側の主軸の工具及びワーク間の距離との違いが前記基準側の主軸の工具長と前記連動側の主軸の工具長との違いに対応したものになるように連動させて、前記工具の１つと前記複数の工具のうちの前記１つ以外の工具とで加工条件の異なる同期タップ加工を、前記複数の工具により同時に行う連動同期タップ加工手段を備えた
ことを特徴とする数値制御装置。
【請求項２】
ワークに対して前記ワークに対向する工具を工具軸周りにそれぞれ相対的に回転させる複数の主軸と、複数の前記ワークに複数の前記工具が相対的に近づくように送り動作を行う第１の送り軸と、前記複数の工具における１つの工具と前記１つの工具に対向するワークとの間の距離を変える第２の送り軸とを有する工作機械を制御する数値制御装置であって、
連動同期タップ指令に従って、前記第１の送り軸により、前記複数の主軸のうちの基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させるとともに、前記第２の送り軸により、前記基準側の主軸の加工穴深さと前記連動側の主軸の加工穴深さとの違いに対応したものになるように連動させて、前記工具の１つと前記複数の工具のうちの前記１つ以外の工具とで加工条件の異なる同期タップ加工を、前記複数の工具により同時に行う連動同期タップ加工手段を備えた
ことを特徴とする数値制御装置。
【請求項３】
前記連動同期タップ加工手段は、前記連動同期タップ指令に従って、前記基準側の主軸の回転方向と前記連動側の主軸の回転方向とが逆になるように連動させて、前記複数の工具で同時に逆タップ加工を行う
ことを特徴とする請求項１又は２に記載の数値制御装置。
【請求項４】
前記連動同期タップ加工手段は、前記連動同期タップ指令に従って、同一の送りに対する前記基準側の主軸の回転数及び前記連動側の主軸の回転数の違いが異なるピッチに対応したものになるように連動させて、前記複数の工具で同時に前記異なるピッチの同期タップ加工を行う
ことを特徴とする請求項１又は２に記載の数値制御装置。
【請求項５】
前記連動同期タップ加工手段は、前記連動同期タップ指令に従って、前記基準側の主軸の回転方向と前記連動側の主軸の回転方向とが逆になるように連動させて、前記複数の工具で同時に逆タップ加工を行う
ことを特徴とする請求項４に記載の数値制御装置。
【請求項６】
前記第１の送り軸は、前記複数のワークを前記複数の工具に近づく方向へ送り、
前記第２の送り軸は、前記１つの工具を前記１つの工具に対向するワークに近づく方向へ送る
ことを特徴とする請求項１から５のいずれか１項に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関する。
【背景技術】
【０００２】
特許文献１には、スピンドルモータで回転駆動される主軸がそれぞれに設けられた５個のタップ加工アセンブリと５個のタップ加工アセンブリを横一列に支持するとともに送りモータで往復駆動されるフレームとを有する多軸タップ加工装置において、各スピンドルモータを個別に送りモータと同期回転させて、各主軸の先端に装着されたタップにより工作物に対する各タップ孔の加工を行うことが記載されている。これにより、特許文献１によれば、工作物のタップ加工箇所の変更に対応して主軸の配置を変更するには、フレーム部材に形成する挿通孔と保持プレートを工作物の加工箇所に対応したものに変更して主軸を軸承するタップ加工アセンブリの配置を変えるだけでよいので、変更のために必要な部品点数が少なくなるとされている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−２５２８２５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に記載の多軸タップ加工装置では、工作物のタップ加工箇所の変更に対応して主軸の配置を適宜変更することを目的とするものであるため、各主軸間で加工条件（例えば、工具長、加工穴深さ）を同一にすることが前提となっている。すなわち、特許文献１に記載の多軸タップ加工装置は、各主軸間で加工条件が異なる場合に関する記載が一切なく、各主軸間で加工条件が異なる場合に複数の工具で同時に同期タップ加工を行う際の精度をどのようにして向上させるのかについても一切記載がない。【０００５】
本発明は、上記に鑑みてなされたものであって、各主軸間で加工条件が異なる場合に複数の工具で同時に同期タップ加工を行う際の精度を向上できる数値制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の１つの側面にかかる数値制御装置は、ワークに対して前記ワークに対向する工具を工具軸周りにそれぞれ相対的に回転させる複数の主軸と、複数の前記ワークに複数の前記工具が相対的に近づくように送り動作を行う送り軸とを有する工作機械を制御する数値制御装置であって、連動同期タップ指令に従って、前記複数の主軸のうちの基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させて、前記複数の工具で同時に同期タップ加工を行う連動同期タップ加工手段を備えたことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、連動同期タップ加工手段が、連動同期タップ指令に従って、複数の主軸のうちの基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させて、複数の工具で同時に同期タップ加工を行う。これにより、各主軸間の加工条件の違いを考慮しながら、複数の工具で同時に同期タップ加工を精度よく行うことができる。すなわち、各主軸間で加工条件が異なる場合に複数の工具で同時に同期タップ加工を行う際の精度を向上できる。
【図面の簡単な説明】
【０００８】
【図１】図１は、実施の形態における工作機械の構成を示す図である。
【図２】図２は、実施の形態にかかる数値制御装置の構成を示す図である。
【図３】図３は、実施の形態におけるＺ１軸を固定する場合の連動同期タップ指令を示す図である。
【図４】図４は、実施の形態におけるワーク座標系及び機械座標系を示す図である。
【図５】図５は、実施の形態における各主軸間で工具長・加工穴深さが同じでピッチが異なる場合のワークの加工手順を示す図である。
【図６】図６は、実施の形態におけるＺ１軸を稼働する場合の連動同期タップ指令の一例を示す図である。
【図７】図７は、実施の形態における各主軸間で工具長が同じで加工穴深さ・ピッチが異なる場合のワークの加工手順を示す図である。
【図８】図８は、実施の形態における各主軸間で工具長が同じで加工穴深さ・ピッチが異なる場合のワークの加工手順を示す図である。
【図９】図９は、実施の形態における各主軸間で工具長・加工穴深さ・ピッチが異なる場合のワークの加工手順を示す図である。
【図１０】図１０は、実施の形態における各主軸間で工具長・加工穴深さ・ピッチが異なる場合のワークの加工手順を示す図である。
【図１１】図１１は、実施の形態にかかる数値制御装置の動作を示すフローチャートである。
【図１２】図１２は、実施の形態の変形例における工作機械の構成を示す図である。
【図１３】図１３は、実施の形態の他の変形例における工作機械の構成を示す図である。
【図１４】図１４は、実施の形態の他の変形例における工作機械の構成を示す図である。
【図１５】図１５は、基本の形態における工作機械の構成を示す図である。
【図１６】図１６は、基本の形態における工作機械の構成及びワークの加工手順を示す図である。
【発明を実施するための形態】
【０００９】
以下に、本発明にかかる数値制御装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１０】
実施の形態．
実施の形態にかかる数値制御装置１ｉについて説明する前に、基本の形態にかかる数値制御装置１の概略構成について図１５及び図１６を用いて説明する。図１５は、基本の形態にかかる数値制御装置１の構成を示すブロック図である。図１６は、基本の形態における工作機械９００の構成及びワークＷ１の加工手順を示す図である。
【００１１】
工作機械９００は、図１６に示すように、刃物台９０６、及びワーク支持部９０７を有する。工作機械９００は、Ｘ１軸、Ｚ１軸、及びＳ１軸を有する。Ｘ１軸は、刃物台９０６を移動させる移動軸である。Ｚ１軸は、刃物台９０６をＸ１軸と垂直な方向に移動させる移動軸である。工具Ｔ１の工具軸Ｔ１ａは、その延長線がワークＷ１における被加工面Ｗ１ａに交差している。すなわち、Ｚ１軸は、工具Ｔ１に対向するワークＷ１に工具Ｔ１が相対的に近づく方向へ送り動作を行う送り軸である。Ｓ１軸は、Ｚ１軸に平行な回転中心線の周りにワーク支持部９０７を回転させる回転軸である。すなわち、Ｓ１軸は、ワークＷ１に対向する工具Ｔ１を工具軸Ｔ１ａ周りにワークＷ１に対して相対的に回転させる主軸である。
【００１２】
工具Ｔ１は、タップ加工を行うための工具であり、ワークＷ１に雌ネジ穴（タップ）を形成するための工具である。すなわち、工具Ｔ１は、雌ネジ穴に形成すべきネジ溝に対応した凸部を表面に有する。数値制御装置１は、工作機械９００を制御して、Ｓ１軸（主軸）の回転及び送りを同期させることで、同期タップ加工を行う。
【００１３】
なお、Ｚ１軸は、工具Ｔ１に対向するワークＷ１に工具Ｔ１が相対的に近づく方向へ送り動作を行うように、ワーク支持部９０７側に設けられていてもよい。Ｓ１軸は、ワークＷ１に対向する工具Ｔ１を工具軸Ｔ１ａ周りにワークＷ１に対して相対的に回転させるように、刃物台９０６側に設けられていてもよい。
【００１４】
工作機械９００は、図１５に示すように、さらに、サーボモータ５ａ〜５ｃを有する。サーボモータ５ａ，５ｂは、刃物台９０６に対して、それぞれ、Ｘ１軸の移動、Ｚ１軸（送り軸）の移動を行う。主軸モータ５ｃは、Ｓ１軸（主軸）の回転を行う。
【００１５】
数値制御装置１は、表示部３、入力操作部２、制御演算部５０、及び駆動部２０を備える。例えば、ユーザによる加工プログラム１１の自動起動ボタンの操作に応じて、加工プログラム１１の自動起動の信号が制御演算部５０へ供給される。これに応じて、制御演算部５０は、加工プログラム１１を起動して、加工プログラム１１に従い、Ｘ１軸の移動量指令、Ｚ１軸の移動量指令・移動速度指令、Ｓ１軸の回転数指令を生成して駆動部２０へ供給する。駆動部２０は、Ｘ１軸サーボ制御部４ａ、Ｚ１軸サーボ制御部４ｂ、及びＳ１軸主軸制御部４ｃを有し、制御演算部５０から入力されたＸ１軸の移動量指令、Ｚ１軸の移動量指令・移動速度指令、Ｓ１軸の回転数指令に従い、Ｘ１軸用のサーボモータ５ａ、Ｚ１軸用のサーボモータ５ｂ、及びＳ１軸用の主軸モータ５ｃを駆動する。
【００１６】
制御演算部５０は、記憶部８、解析処理部１７、補間処理部６０、加減速処理部７０、軸データ入出力部９０、入力制御部６、画面処理部１６、及びデータ設定部７を有する。
【００１７】
加工プログラム１１の自動起動の信号は、ＰＬＣ（図示せず）経由で機械制御信号処理部（図示せず）に入力される。機械制御信号処理部は、記憶部８経由で解析処理部１７に指示して加工プログラム１１を起動させる。
【００１８】
記憶部８は、パラメータ９、工具データ１０、加工プログラム１１、画面表示データ１５を記憶するとともに、ワークスペースとしての共有エリア１４及び演算データエリア１９を有している。工具データ１０は、例えば、工具補正番号と工具補正量とが複数の工具補正番号について対応付けられたテーブルデータである。工具データ１０を参照することにより、工具補正番号に対応する工具補正量を特定することができる。
【００１９】
解析処理部１７は、加工プログラム１１の起動指示に応じて、記憶部８から加工プログラム１１を読み出し、加工プログラム１１の各ブロック（各行）について解析処理を行う。例えば、解析処理部１７は、解析したブロック（行）にＧコード（例えば、Ｇコード「Ｇ０」、「Ｇ１」など）が含まれていれば、その解析結果に工具補正量を加味して補間処理部６０へ渡す。
【００２０】
補間処理部６０は、解析処理部１７から解析結果（位置指令）を受け取り、解析結果（位置指令）に対する補間処理を行い、補間処理の結果（移動量、回転量等）を加減速処理部７０へ供給する。
【００２１】
加減速処理部７０は、補間処理部６０から供給された補間処理の結果に対して加減速処理を行う。加減速処理部７０は、Ｘ１軸、Ｚ１軸、Ｓ１軸に関する加減速処理の結果（送り速度、回転数等）を軸データ入出力部９０に直接出力する。
【００２２】
例えば、数値制御装置１は、図１６に示すようなワークＷ１の加工を制御する。
【００２３】
図１６のステップ１６Ａでは、数値制御装置１が、加工プログラム１１の記述（例えば、Ｇコード「Ｇ０」）に従って、Ｚ１軸を制御して、工具Ｔ１を加工開始位置に移動させる。
【００２４】
図１６のステップ１６Ｂでは、数値制御装置１が、加工プログラム１１の記述（例えば、Ｇコード「Ｇ１」）に従って、Ｓ１軸、Ｚ１軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させる（すなわち、Ｓ１軸を回転させワークＷ１を回転させる）とともに、ワークＷ１に工具Ｔ１が相対的に近づくように送り動作を行う（すなわち、Ｚ１軸を移動させＳ１軸を送って工具Ｔ１をワークＷ１に近づける）。このとき、Ｓ１軸（主軸）の回転及び送りを同期させることで、工具Ｔ１によるワークＷ１の同期タップ加工を行う。これにより、雌ネジ穴Ｗ１ｂにおけるネジ溝のピッチを略一定にすることができ、ワークＷ１に雌ネジ穴Ｗ１ｂを高精度に形成することができる。
【００２５】
そして、ワークＷ１に雌ネジ穴Ｗ１ｂが形成されたら、数値制御装置１は、刃物台９０６及びワーク支持部９０７を制御して、Ｓ１軸（主軸）の回転方向を加工時と逆にするとともに、Ｓ１軸（主軸）の回転及び送りを同期させることで、工具Ｔ１を雌ネジ穴Ｗ１ｂから引き抜く。これにより、工具Ｔ１が雌ネジ穴Ｗ１ｂに干渉することを抑制しながら、工具Ｔ１を雌ネジ穴Ｗ１ｂから引き抜くことができる。
【００２６】
基本の形態では、図１５及び図１６に示されるように、数値制御装置１による１回の加工で１つの雌ネジ穴Ｗ１ｂしか加工できないので、加工したい雌ネジ穴が複数存在する場合に加工のサイクルタイムが全体として長くなりやすい。
【００２７】
それに対して、仮に、数値制御装置１において、主軸及び工具をそれぞれ複数設け、各主軸を互いに独立して個別に送り軸に同期させる場合を考える。この場合、複数の主軸で複数の工具を同時に回転させることができ、複数の雌ネジ穴の加工を同時に行うことができるため、加工のサイクルタイムを短縮できる。
【００２８】
しかし、各主軸を互いに独立して個別に送り軸に同期させるので、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なる場合に、加工条件の違いを無視した加工が行われる可能性があり、各主軸間で加工条件が異なる場合に複数の工具で同時に同期タップ加工を行うことができない可能性がある。
【００２９】
そこで、本実施の形態では、数値制御装置１ｉにおいて、各主軸を互いに独立して個別に送り軸に同期させるのではなく、基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させ、複数の工具で同時に同期タップ加工を行うことで、各主軸間で加工条件が異なる場合における複数の工具で同時に同期タップ加工を行う際の精度の向上と段取り時間の短縮によるサイクルタイム向上とを目指す。
【００３０】
具体的には、数値制御装置１ｉにおいて、以下の工夫を行う。図１は、それぞれ、実施の形態にかかる数値制御装置１ｉにより制御される工作機械９００ｉの構成を示す図である。図２は、実施の形態１にかかる数値制御装置１ｉの構成を示すブロック図である。以下では、基本の形態と異なる部分を中心に説明する。
【００３１】
工作機械９００ｉは、図１に示すように、２つの刃物台９０６ｉ１，９０６ｉ２、及び２つのワーク支持部９０７ｉ１，９０７ｉ２を有する。工作機械９００ｉは、Ｘ１軸、Ｚ１軸、Ｓ１軸、Ｘ２軸、Ｚ２軸、及びＳ２軸を有する。工作機械９００ｉでは、２つの工具Ｔ１，Ｔ２が設けられ、２つの工具Ｔ１，Ｔ２がそれぞれ対応するワークＷ１，Ｗ２に対向している。工作機械９００ｉでは、Ｚ２軸側に刃物台９０６ｉ１及びワーク支持部９０７ｉ２が設けられ、Ｚ１軸側にワーク支持部９０７ｉ１及び刃物台９０６ｉ２が設けられている。刃物台９０６ｉ２は、固定されている。
【００３２】
Ｚ１軸は、工具Ｔ１に対向するワークＷ１に工具Ｔ１が相対的に近づく方向へ送り動作を行う送り軸である。また、Ｚ１軸は、工具Ｔ１と工具Ｔ１に対向するワークＷ１との間の距離を変えるための送り動作を行う送り軸である。Ｓ１軸は、Ｚ１軸に平行な回転中心線の周りにワーク支持部９０７ｉ１を回転させる回転軸である。すなわち、Ｓ１軸は、ワークＷ１に対向する工具Ｔ１を工具軸Ｔ１ａ周りにワークＷ１に対して相対的に回転させる主軸である。
【００３３】
Ｚ２軸は、工具Ｔ１，Ｔ２に対向するワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づく方向へ送り動作を行う送り軸である。Ｚ２軸は、複数の工具Ｔ１，Ｔ２を複数のワークＷ１，Ｗ２に同時に近づけるように送り動作を行う。Ｓ２軸は、Ｚ２軸に平行な回転中心線の周りにワーク支持部９０７ｉ２を回転させる回転軸である。すなわち、Ｓ２軸は、ワークＷ２に対向する工具Ｔ２を工具軸Ｔ２ａ周りにワークＷ２に対して相対的に回転させる主軸である。
【００３４】
工具Ｔ２は、タップ加工を行うための工具であり、ワークＷ２に雌ネジ穴（タップ）を形成するための工具である。すなわち、工具Ｔ２は、雌ネジ穴に形成すべきネジ溝に対応した凸部を表面に有する。数値制御装置１ｉは、工作機械９００ｉを制御して、Ｓ２軸（主軸）の回転及び送りを同期させることで、同期タップ加工を行う。
【００３５】
工作機械９００ｉは、図２に示すように、サーボモータ５ａ〜５ｆを有する。サーボモータ５ａは、Ｘ１軸の移動を行う。サーボモータ５ｂは、Ｚ１軸（第２の送り軸）の移動を行う。主軸モータ５ｃは、Ｓ１軸（主軸）の回転を行う。サーボモータ５ｄ，５ｅは、刃物台９０６ｉ１及びワーク支持部９０７ｉ２に対して、それぞれ、Ｘ２軸の移動、Ｚ２軸（送り軸）の移動を行う。主軸モータ５ｆは、Ｓ２軸（主軸）の回転を行う。
【００３６】
なお、それに応じて、駆動部２０ｉは、Ｘ１軸サーボ制御部４ａ、Ｚ１軸サーボ制御部４ｂ、Ｓ１軸主軸制御部４ｃ、Ｘ２軸サーボ制御部４ｄ、Ｚ２軸サーボ制御部４ｅ、及びＳ２軸主軸制御部４ｆを有する。
【００３７】
数値制御装置１ｉは、制御演算部５０（図１５参照）に代えて、制御演算部（連動同期タップ加工手段）５０ｉを備える。制御演算部５０ｉは、解析処理部１７に代えて解析処理部１７ｉを有するとともに、連動同期タップ制御部３０ｉ及び連動同期タップ主軸制御部８０ｉを有する。
【００３８】
解析処理部１７ｉは、連動同期タップ指令解析手段１８ｉを有する。解析処理部１７ｉは、例えば、加工プログラムをブロック（行）毎に解析するが、解析対象ブロックに連動同期タップ指令（図３、図６参照）が含まれている場合、連動同期タップ指令解析手段１８ｉにより解析を行う。連動同期タップ指令解析手段１８ｉは、例えば、加工プログラム中の連動同期タップ指令を解析して、その解析結果を記憶部８経由で連動同期タップ制御部３０ｉへ供給する。
【００３９】
図２に示す連動同期タップ制御部３０ｉは、基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させるように制御を行う。例えば、連動同期タップ制御部３０ｉは、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の工具長と連動側の主軸（Ｓ１軸）の工具長との違いに対応したものになるように連動させる。あるいは、例えば、連動同期タップ制御部３０ｉは、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さと連動側の主軸（Ｓ１軸）の加工穴深さとの違いに対応したものになるように連動させる。
【００４０】
具体的には、連動同期タップ制御部３０ｉは、工具長演算手段３１ｉ、穴深さ演算手段３２ｉ、実行順序制御手段３３ｉ、シフト量演算手段３４ｉ、及び速度演算手段３５ｉを有する。
【００４１】
工具長演算手段３１ｉは、工具Ｔ１の工具補正番号「Ｔ１」と工具Ｔ２の工具補正番号「Ｔ２」とをそれぞれ解析処理部１７ｉから記憶部８経由で取得する。工具長演算手段３１ｉは、記憶部８の工具データ１０を参照し、工具補正番号「Ｔ１」，「Ｔ２」に対応した工具補正量をそれぞれ取得する。これにより、工具長演算手段３１ｉは、例えば基準工具長に工具補正量を加算することなどにより、工具Ｔ１の工具長Ｌｔ１と工具Ｔ２の工具長Ｌｔ２とをそれぞれ演算する。
【００４２】
穴深さ演算手段３２ｉは、Ｚ１軸の位置指令及びＺ２軸の位置指令をそれぞれ解析処理部１７ｉから記憶部８経由で取得する。穴深さ演算手段３２ｉは、Ｚ１軸の位置指令及びＺ２軸の位置指令に応じて、主軸（Ｓ１軸）の工具Ｔ１で加工すべき雌ネジ穴の加工穴深さＤ１と、主軸（Ｓ２軸）の工具Ｔ２で加工すべき雌ネジ穴の加工穴深さＤ２とをそれぞれ演算する。例えば、図３に示す場合、Ｚ１軸の位置指令（Ｚ１軸＝固定）及びＺ２軸の位置指令（Ｚ２＝５０）に応じて、主軸（Ｓ１軸）の加工穴深さＤ１と主軸（Ｓ２軸）の加工穴深さＤ２とが互いに均等な値として演算される。例えば工具長演算手段３１ｉにより求められた工具Ｔ１の工具長Ｌｔ１に応じた工具Ｔ１の工具先端位置をＺｔ１とし、解析処理部１７ｉにより解析されたＺ２軸の指令位置をＺｃ２とすると、加工穴深さＤ１，Ｄ２は、それぞれ、次の数式１により求めることができる。
Ｄ１＝Ｄ２＝Ｚｔ１−Ｚｃ２・・・数式１
【００４３】
あるいは、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なる場合（例えば、図６に示す連動同期タップ指令の場合）、Ｚ１軸を移動させる処理と、Ｚ２軸の移動及び各主軸（Ｓ１軸、Ｓ２軸）の回転を行う処理とを行う必要がある。実行順序制御手段３３ｉは、これらの複数の処理の実効順序を制御する。
【００４４】
例えば、実行順序制御手段３３ｉは、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なるとの解析結果を取得した場合、現在のブロックにおける前半の補間周期でＺ１軸を移動させる位置指令を生成し、後半の補間周期でＺ２軸を移動させる位置指令を生成する。すなわち、実行順序制御手段３３ｉは、１つのブロック内で複数の処理の実効順序を時系列的に制御する。
【００４５】
あるいは、例えば、実行順序制御手段３３ｉは、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なるとの解析結果を取得した場合、Ｚ２軸の位置指令を補間周期毎に生成しながらＺ２軸を移動させて、工具Ｔ１，Ｔ２の先端がワークＷ１，Ｗ２に到達するタイミングに同期してＺ１軸を移動させる位置指令を生成するとともに、Ｚ２軸を移動させる位置指令を生成する。すなわち、実行順序制御手段３３ｉは、１つのブロック内で複数の処理の実効順序を並行的に制御する。
【００４６】
シフト量演算手段３４ｉは、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なるとの解析結果を取得した場合（例えば、図６に示す連動同期タップ指令の場合）、Ｚ１軸の移動量ΔＺ１を演算する。
【００４７】
例えば、シフト量演算手段３４ｉは、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の工具長と連動側の主軸（Ｓ１軸）の工具長との違いに対応したものになるように、Ｚ１軸の移動量を演算する。例えば、加工穴深さＤ１と加工穴深さＤ２とが均等であり、工具Ｔ１の工具長Ｌｔ１と工具Ｔ１の工具長Ｌｔ２とが異なっている場合、Ｚ１軸の移動量ΔＺ１ａを次の数式２により求めることができる。
ΔＺ１ａ＝Ｌｔ１−Ｌｔ２・・・数式２
【００４８】
あるいは、例えば、シフト量演算手段３４ｉは、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように、Ｚ１軸の移動量を演算する。例えば、工具Ｔ１の工具長Ｌｔ１と工具Ｔ１の工具長Ｌｔ２とが均等であり、加工穴深さＤ１と加工穴深さＤ２とが異なっている場合、Ｚ１軸の移動量ΔＺ１ｂを次の数式３により求めることができる。
ΔＺ１ｂ＝Ｄ１−Ｄ２・・・数式３
【００４９】
速度演算手段３５ｉは、基準側のピッチ指令（例えば、図３に示す「Ｆ２＝０．５」）、及び基準側の回転数指令（例えば、図３に示す「Ｓ１０００」）を解析処理部１７ｉから記憶部８経由で取得する。速度演算手段３５ｉは、例えば、基準側の指令されたピッチに基準側の指令された回転数を乗算することで、基準側の主軸の送り速度を演算する。例えば、基準側の指令されたピッチをＰｆ２とし、基準側の指令された回転数をＮｃ２とすると、基準側のＺ２軸の送り速度ｖ２は、次の数式４により求めることができる。
ｖ２＝Ｐｆ２×Ｎｃ２・・・数式４
【００５０】
速度演算手段３５ｉは、例えば、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なるとの解析結果を取得した場合、連動側の主軸の送り速度をさらに演算する。例えば、工具Ｔ１の工具長Ｌｔ１と工具Ｔ１の工具長Ｌｔ２とが均等であり、加工穴深さＤ１と加工穴深さＤ２とが異なっている場合、基準側の工具がワーク表面に到達してから穴底に到達するまでの時間がΔｔ２＝Ｄ２／（ｖ２）であるので、連動側のＺ１軸の送り速度ｖ１は、次の数式５により求めることができる。
ｖ１＝（Ｄ１−Ｄ２）／（Δｔ２）
＝ｖ２（Ｄ１−Ｄ２）／（Ｄ２）・・・数式５
【００５１】
数式５において、Ｄ１≧０であり、Ｄ２≧０である。ｖ１＞０の場合、連動側のＺ１軸がＺ２軸に近づく方向に移動し、ｖ１＜０の場合、連動側のＺ１軸がＺ２軸から遠ざかる方向に移動する。
【００５２】
連動同期タップ主軸制御部８０ｉは、同一の送りに対する基準側の主軸の回転数及び連動側の主軸の回転数の違いが加工すべきネジ溝の異なるピッチに対応したものになるように、基準側の主軸の回転数と連動側の主軸の回転数とをそれぞれ求める。具体的には、連動同期タップ主軸制御部８０ｉは、基準主軸回転数演算手段８１ｉ及び連動主軸回転数演算手段８２ｉを有する。
【００５３】
基準主軸回転数演算手段８１ｉは、基準側の送り軸であるＺ２軸の移動量を、補間処理部６０から加減速処理部７０経由で取得する。また、基準主軸回転数演算手段８１ｉは、基準側のピッチ指令を、解析処理部１７ｉから記憶部８、連動同期タップ制御部３０ｉ、補間処理部６０、及び加減速処理部７０経由で取得する。基準主軸回転数演算手段８１ｉは、例えば、基準側のＺ２軸の移動量を基準側のピッチで除算することで、基準側の主軸の移動量（回転速度）を演算する。これにより、基準側の送り軸と基準側の主軸の移動（回転）とを同期させることができる。
【００５４】
連動主軸回転数演算手段８２ｉは、基準側の送り軸であるＺ２軸の移動量と、連動側の送り軸であるＺ１軸の移動量（例えば、上記の数式５で算出されたｖ１から補間処理部６０で演算された制御周期当たりの移動量）とを、補間処理部６０から加減速処理部７０経由で取得する。また、連動主軸回転数演算手段８２ｉは、連動側のピッチ指令を、解析処理部１７ｉから記憶部８、連動同期タップ制御部３０ｉ、補間処理部６０、及び加減速処理部７０経由で取得する。連動主軸回転数演算手段８２ｉは、基準側のＺ２軸の移動量と連動側のＺ１軸の移動量とを加算し、加算結果を連動側のピッチで除算することで、基準側の主軸の移動量（回転速度）を演算する。これにより、主軸の移動量（回転速度）を連動側のピッチに対応するとともに送り軸に同期したものとすることができる。
【００５５】
例えば、Ｚ１軸を固定する場合、演算された基準側のＺ２軸の送り速度をｖ２とし、連動側のＺ１軸の送り速度をｖ１とした場合、Ｚ１軸を固定とするため、ｖ１＝０となる。連動側の指令されたピッチをＰｆ１とすると、連動側の主軸（Ｓ１軸）について駆動すべき回転数Ｎ１は、次の数式６により求めることができる。
Ｎ１＝（ｖ１＋ｖ２）／（Ｐｆ１）
＝ｖ２／（Ｐｆ１）
＝Ｐｆ２×Ｎｃ２／（Ｐｆ１）・・・数式６
【００５６】
あるいは、例えば、各主軸間で加工条件（例えば、工具長、加工穴深さ）が異なる場合、演算された基準側のＺ２軸の送り速度をｖ２とし、連動側の指令されたピッチをＰｆ１とすると、連動側のＺ１軸の送り速度ｖ１は上記の数式５で求められるから、連動側の主軸（Ｓ１軸）について駆動すべき回転数Ｎ１は、次の数式７により求めることができる。
Ｎ１＝（ｖ１＋ｖ２）／（Ｐｆ１）
＝ｖ２×Ｄ１／｛（Ｄ２）×（Ｐｆ１）｝
＝Ｐｆ２×Ｎｃ２×Ｄ１／｛（Ｄ２）×（Ｐｆ１）｝
・・・数式７
【００５７】
連動同期タップ制御部３０ｉは、Ｚ１軸の駆動位置・送り速度、及びＺ２軸の駆動位置・送り速度を、補間処理部６０、加減速処理部７０、連動同期タップ主軸制御部８０ｉ、及び軸データ入出力部９０経由で駆動部２０ｉへ供給する。また、連動同期タップ主軸制御部８０ｉは、基準側の主軸（Ｓ２軸）の駆動回転数Ｎ２、及び連動側の主軸（Ｓ１軸）の駆動回転数Ｎ１を、軸データ入出力部９０経由で駆動部２０ｉへ供給する。これにより、基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させるように、Ｘ１軸、Ｚ１軸、Ｓ１軸、Ｘ２軸、Ｚ２軸、及びＳ２軸を連動駆動させる。
【００５８】
次に、Ｚ１軸を固定する場合の加工プログラム１１の連動同期タップ指令について図３を用いて説明する。図３は、Ｚ１軸を固定する場合の連動同期タップ指令を示す図である。
【００５９】
連動同期タップ指令は、例えば、図３に示すようなコードを含む。Ｇコード「Ｇ１８０」は、そのブロックが連動同期タップ指令であることを示している。
【００６０】
図３に示す「Ｚ２＝５０．」の記述は、主軸Ｓ２で加工すべき穴底の位置（ｍｍ）に対応したＺ２軸の位置指令を示す。図３に示す場合、「Ｚ１」についての記述が省略されていることから、Ｚ１軸を固定状態に維持することが指令されているものと解析される。
【００６１】
なお、Ｚ１軸の位置指令は、図４に示すＺ１軸の機械座標原点Ｏｚ１を基準にして指令される。Ｚ２軸の位置指令は、図４に示すＺ２軸の機械座標原点Ｏｚ２を基準にして指令される。Ｚ１軸の機械座標系では、Ｚ１軸の機械座標原点Ｏｚ１からＺ２軸の機械座標原点Ｏｚ２へ向かう方向が＋Ｚ方向である。Ｚ２軸の機械座標系では、Ｚ２軸の機械座標原点Ｏｚ２からＺ１軸の機械座標原点Ｏｚ１へ向かう方向が＋Ｚ方向である。図４は、ワーク座標系及び機械座標系を示す図である。図４に示すＯｗ１，Ｏｗ２は、それぞれ、連動側、基準側のワーク座標系の原点である。
【００６２】
図３に示す「Ｓ１＝Ｓ２」の記述は、複数の主軸のうちどの主軸が基準側の主軸でありどの主軸が連動側の主軸であるのかを指定している。図３の場合、「Ｓ１＝Ｓ２」の記述における最右辺の主軸（Ｓ２軸）が基準側の主軸でありそれ以外の軸（Ｓ１軸）が連動側の主軸であると解析される。
【００６３】
なお、基準側の主軸又は連動側の主軸の指定に「−」符号付きで指令した場合、逆タップの指令であると解析される。例えば、「Ｓ１＝−Ｓ２」の場合、連動側の主軸（Ｓ１軸）が正タップであり、基準側の主軸（Ｓ２軸）が逆タップであると解析される。あるいは、例えば、「−Ｓ１＝Ｓ２」の場合、連動側の主軸（Ｓ１軸）が逆タップであり、基準側の主軸（Ｓ２軸）が正タップであると解析される。例えば、「−Ｓ１＝−Ｓ２」の場合、連動側の主軸（Ｓ１軸）が逆タップであり、基準側の主軸（Ｓ２軸）が逆タップであると解析される。
【００６４】
「Ｆ１＝１．０」の記述は、主軸（Ｓ１軸）の工具Ｔ１で加工すべき雌ネジ穴のネジ溝のピッチ（ｍｍ）を示している。「Ｆ２＝０．５」の記述は、主軸（Ｓ２軸）の工具Ｔ２で加工すべき雌ネジ穴のネジ溝のピッチ（ｍｍ）を示している。
【００６５】
「Ｓ１０００」の記述は、基準側の主軸の回転数（ｒｐｍ）を示す。図３の場合、Ｓ２軸が基準側の主軸に指定されているので、「Ｓ１０００」の記述は、Ｓ２軸の回転数を示す。
【００６６】
「Ｔ１」の記述は、連動側の工具の工具補正番号を示している。図３の場合、連動側の工具として工具補正番号「Ｔ１」の工具Ｔ１が指定されているものと解析される。解析処理部１７ｉは、例えば工具補正番号「Ｔ１」を記憶部８経由で連動同期タップ制御部３０ｉへ供給する。
【００６７】
なお、基準側の工具は、連動同期タップ指令の前に、予め、Ｔ指令等により指定されている。図３の場合、基準側の工具として工具補正番号「Ｔ２」の工具Ｔ２が予め指定されて解析される。解析処理部１７ｉは、例えば工具補正番号「Ｔ２」を記憶部８経由で連動同期タップ制御部３０ｉへ供給する。
【００６８】
次に、各主軸間で工具長・加工穴深さが同じでピッチが異なる場合のワークの加工手順について、図５を用いて説明する。
【００６９】
ステップ５Ａでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図３に示す「Ｇ１８０」の記述）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。
【００７０】
ステップ５Ｂでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図３に示す「Ｚ２＝５０．  Ｓ１＝Ｓ２  Ｆ１＝１．０  Ｆ２＝０．５  Ｓ１０００  Ｔ１」の記述）に従って、Ｓ１軸、Ｓ２軸、Ｚ２軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させ（すなわち、Ｓ１軸を回転させワークＷ１を回転させ）、ワークＷ２に対して工具Ｔ２を工具軸Ｔａ２周りに相対的に回転させる（すなわち、Ｓ２軸を回転させワークＷ２を回転させる）とともに、ワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づくように送り動作を行う（すなわち、Ｚ２軸を移動させＳ１軸、Ｓ２軸をそれぞれ送って工具Ｔ１，Ｔ２をワークＷ１，Ｗ２に近づける）。このとき、同一の送りに対する基準側の主軸（Ｓ２軸）の回転数及び連動側の主軸（Ｓ１軸）の回転数の違いが加工すべきネジ溝の異なるピッチに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に行う。
【００７１】
例えば、図３に示す場合、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝０．５ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１０００ｒｐｍであるので、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝５００ｍｍ／ｍｉｎと求められる。そして、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝１．０ｍｍであり、Ｚ２軸の送り速度がｖ２＝５００ｍｍ／ｍｉｎであるので、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式６よりＮ１＝５００ｒｐｍと求められる。
【００７２】
あるいは、例えば、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝１ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１０００ｒｐｍである場合、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝１０００ｍｍ／ｍｉｎと求められる。そして、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝０．５ｍｍであるとすると、Ｚ２軸の送り速度がｖ２＝１０００ｍｍ／ｍｉｎであるので、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式６よりＮ１＝２０００ｒｐｍと求められる。
【００７３】
あるいは、例えば、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝０．７５ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１０００ｒｐｍである場合、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝７５０ｍｍ／ｍｉｎと求められる。そして、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝０．５ｍｍであるとすると、Ｚ２軸の送り速度がｖ２＝７５０ｍｍ／ｍｉｎであるので、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式６よりＮ１＝１５００ｒｐｍと求められる。
【００７４】
このように、加工すべきネジ溝のピッチが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。
【００７５】
次に、Ｚ１軸を稼働する場合の加工プログラムの連動同期タップ指令について図６を用いて説明する。図６は、Ｚ１軸を稼働する場合の連動同期タップ指令を示す図である。
【００７６】
図６に示す連動同期タップ指令では、「Ｚ１」についての記述が含まれている。すなわち、「Ｚ１＝５５．」は、主軸Ｓ１で加工すべき穴底の位置（ｍｍ）に対応したＺ１軸の位置指令を示す。図６に示す場合、「Ｚ１」についての記述が明示されていることから、Ｚ１軸を稼働するＺ１軸の位置指令が指令されているものと解析される。
【００７７】
例えば、図６に示す場合、Ｚ１軸の位置指令Ｚ１＝５５ｍｍとＺ２軸の位置指令Ｚ２＝５０ｍｍとの差Ｚ１−Ｚ２＝５ｍｍが、主軸（Ｓ１軸）の加工穴深さＤ１と主軸（Ｓ２軸）の加工穴深さＤ２との差Ｄ１−Ｄ２（≒５ｍｍ）に対応している。
【００７８】
次に、各主軸間で工具長が同じで加工穴深さ・ピッチが異なる場合のワークの加工手順について、図７を用いて説明する。図７では、加工穴深さＤ１が加工穴深さＤ２より大きい場合（Ｄ１＞Ｄ２）について例示している。
【００７９】
ステップ７Ａでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｇ１８０」の記述）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。
【００８０】
ステップ７Ｂでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｚ１＝５５．  Ｚ２＝５０．  Ｓ１＝Ｓ２  Ｆ１＝１．０  Ｆ２＝０．５  Ｓ１０００  Ｔ１」の記述）に従って、Ｓ１軸、Ｓ２軸、Ｚ１軸、Ｚ２軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させ（すなわち、Ｓ１軸を回転させワークＷ１を回転させ）、ワークＷ２に対して工具Ｔ２を工具軸Ｔａ２周りに相対的に回転させる（すなわち、Ｓ２軸を回転させワークＷ２を回転させる）とともに、ワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づくように送り動作を行う（すなわち、Ｚ２軸を移動させＳ１軸、Ｓ２軸をそれぞれ送って工具Ｔ１，Ｔ２をワークＷ１，Ｗ２に近づける）。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に行う。すなわち、Ｄ１＞Ｄ２であるので、＋Ｚ方向にＺ１軸を稼働させる。
【００８１】
例えば、図６に示す場合、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝０．５ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１０００ｒｐｍであるので、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝５００ｍｍ／ｍｉｎと求められる。そして、基準側の加工穴深さＤ２＝５ｍｍ、連動側の加工穴深さＤ１＝１０ｍｍとすると、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝１．０ｍｍであり、Ｚ２軸の送り速度がｖ２＝５００ｍｍ／ｍｉｎであるので、Ｚ１軸の送り速度は、上記の数式５より５００ｍｍ／ｍｉｎと求められ、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式７よりＮ１＝１０００ｒｐｍと求められる。
【００８２】
あるいは、例えば、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝０．５ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１５００ｒｐｍである場合、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝７５０ｍｍ／ｍｉｎと求められる。そして、基準側の加工穴深さＤ２＝６ｍｍ、連動側の加工穴深さＤ１＝１０ｍｍとし、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝０．７５ｍｍであるとすると、Ｚ２軸の送り速度がｖ２＝７５０ｍｍ／ｍｉｎであるので、Ｚ１軸の送り速度は、上記の数式５より５００ｍｍ／ｍｉｎと求められ、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式７よりＮ１≒１６６７ｒｐｍと求められる。
【００８３】
このように、加工すべき加工穴深さと加工すべきネジ溝のピッチとが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。
【００８４】
次に、各主軸間で工具長が同じで加工穴深さ・ピッチが異なる場合のワークの加工手順について、図８を用いて説明する。図８では、加工穴深さＤ１が加工穴深さＤ２より小さい場合（Ｄ１＜Ｄ２）について例示している。
【００８５】
ステップ８Ａでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｇ１８０」の記述）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。
【００８６】
ステップ８Ｂでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｚ１＝５５．  Ｚ２＝５０．  Ｓ１＝Ｓ２  Ｆ１＝１．０  Ｆ２＝０．５  Ｓ１０００  Ｔ１」の記述）に従って、Ｓ１軸、Ｓ２軸、Ｚ１軸、Ｚ２軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させ（すなわち、Ｓ１軸を回転させワークＷ１を回転させ）、ワークＷ２に対して工具Ｔ２を工具軸Ｔａ２周りに相対的に回転させる（すなわち、Ｓ２軸を回転させワークＷ２を回転させる）とともに、ワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づくように送り動作を行う（すなわち、Ｚ２軸を移動させＳ１軸、Ｓ２軸をそれぞれ送って工具Ｔ１，Ｔ２をワークＷ１，Ｗ２に近づける）。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に行う。すなわち、Ｄ１＜Ｄ２であるので、−Ｚ方向にＺ１軸を稼働させる。
【００８７】
例えば、基準側の指令されたピッチ（Ｆ２）がＰｆ２＝０．５ｍｍであり、基準側の指令された回転数（Ｓ）がＮｃ２＝１５００ｒｐｍである場合、Ｚ２軸の送り速度は、上記の数式４よりｖ２＝７５０ｍｍ／ｍｉｎと求められる。そして、基準側の加工穴深さＤ２＝６ｍｍ、連動側の加工穴深さＤ１＝４ｍｍとし、連動側の指令されたピッチ（Ｆ１）がＰｆ１＝０．７５ｍｍであるとすると、Ｚ２軸の送り速度がｖ２＝７５０ｍｍ／ｍｉｎであるので、Ｚ１軸の送り速度は、上記の数式５より−２５０ｍｍ／ｍｉｎと求められ、連動側の主軸（Ｓ１軸）の駆動回転数は、上記の数式７よりＮ１≒６６７ｒｐｍと求められる。
【００８８】
このように、加工すべき加工穴深さと加工すべきネジ溝のピッチとが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。
【００８９】
次に、各主軸間で工具長・加工穴深さ・ピッチが異なる場合のワークの加工手順について、図９を用いて説明する。図９では、工具Ｔ１の工具長Ｌｔ１が工具Ｔ２の工具長Ｌｔ２より長く（Ｌｔ１＞Ｌｔ２）、加工穴深さＤ１が加工穴深さＤ２より大きい場合（Ｄ１＞Ｄ２）について例示している。
【００９０】
ステップ９Ａでは、数値制御装置１ｉが、加工プログラム１１の位置決め指令（Ｇ００等）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２を基準位置に移動させる。
【００９１】
ステップ９Ｂでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図９に示す「Ｔ１」の記述）に従って、Ｚ１軸を制御して、ワークＷ１に対して工具Ｔ１を相対的に移動させ、工具Ｔ１とワークＷ１との間の距離を変える。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の工具長Ｌｔ２と連動側の主軸（Ｓ１軸）の工具長Ｌｔ１との違いに対応したものになるように連動させる。すなわち、Ｌｔ１＞Ｌｔ２であるので、−Ｚ方向にＬｔ１−Ｌｔ２の移動量でＺ１軸を稼働させる。
【００９２】
ステップ９Ｃでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｇ１８０」の記述）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。このとき、ステップ９Ｂで工具Ｔ１とワークＷ１との間の距離を変えたことにより、２つの工具Ｔ１，Ｔ２の先端をほぼ同時にワークＷ１，Ｗ２の表面に到達させることができる。
【００９３】
ステップ９Ｄでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｚ１＝５５．  Ｚ２＝５０．  Ｓ１＝Ｓ２  Ｆ１＝１．０  Ｆ２＝０．５  Ｓ１０００  Ｔ１」の記述）に従って、Ｓ１軸、Ｓ２軸、Ｚ１軸、Ｚ２軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させ（すなわち、Ｓ１軸を回転させワークＷ１を回転させ）、ワークＷ２に対して工具Ｔ２を工具軸Ｔａ２周りに相対的に回転させる（すなわち、Ｓ２軸を回転させワークＷ２を回転させる）とともに、ワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づくように送り動作を行う（すなわち、Ｚ２軸を移動させＳ１軸、Ｓ２軸をそれぞれ送って工具Ｔ１，Ｔ２をワークＷ１，Ｗ２に近づける）。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に行う。すなわち、Ｄ１＞Ｄ２であるので、＋Ｚ方向にＺ１軸を稼働させる。
【００９４】
このように、工具の工具長、加工すべきネジ溝のピッチ、及び加工穴深さが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。
【００９５】
次に、各主軸間で工具長・加工穴深さ・ピッチが異なる場合のワークの加工手順について、図１０を用いて説明する。図１０では、工具Ｔ１の工具長Ｌｔ１が工具Ｔ２の工具長Ｌｔ２より短く（Ｌｔ１＜Ｌｔ２）、加工穴深さＤ１が加工穴深さＤ２より大きい場合（Ｄ１＞Ｄ２）について例示している。
【００９６】
ステップ１０Ａでは、数値制御装置１ｉが、加工プログラム１１の位置決め指令（Ｇ００等）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２を基準位置に移動させる。
【００９７】
ステップ１０Ｂでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｔ１」の記述）に従って、Ｚ１軸を制御して、ワークＷ１に対して工具Ｔ１を相対的に移動させ、工具Ｔ１とワークＷ１との間の距離を変える。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の工具長Ｌｔ２と連動側の主軸（Ｓ１軸）の工具長Ｌｔ１との違いに対応したものになるように連動させる。すなわち、Ｌｔ１＜Ｌｔ２であるので、＋Ｚ方向にＬｔ２−Ｌｔ１の移動量でＺ１軸を稼働させる。
【００９８】
ステップ１０Ｃでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｇ１８０」の記述）に従って、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。このとき、ステップ１０Ｂで工具Ｔ１とワークＷ１との間の距離を変えたことにより、２つの工具Ｔ１，Ｔ２の先端をほぼ同時にワークＷ１，Ｗ２の表面に到達させることができる。
【００９９】
ステップ１０Ｄでは、数値制御装置１ｉが、加工プログラム１１の連動同期タップ指令（例えば、図６に示す「Ｚ１＝５５．  Ｚ２＝５０．  Ｓ１＝Ｓ２  Ｆ１＝１．０  Ｆ２＝０．５  Ｓ１０００  Ｔ１」の記述）に従って、Ｓ１軸、Ｓ２軸、Ｚ１軸、Ｚ２軸を制御して、ワークＷ１に対して工具Ｔ１を工具軸Ｔａ１周りに相対的に回転させ（すなわち、Ｓ１軸を回転させワークＷ１を回転させ）、ワークＷ２に対して工具Ｔ２を工具軸Ｔａ２周りに相対的に回転させる（すなわち、Ｓ２軸を回転させワークＷ２を回転させる）とともに、ワークＷ１，Ｗ２に工具Ｔ１，Ｔ２がそれぞれ相対的に近づくように送り動作を行う（すなわち、Ｚ２軸を移動させＳ１軸、Ｓ２軸をそれぞれ送って工具Ｔ１，Ｔ２をワークＷ１，Ｗ２に近づける）。このとき、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に行う。すなわち、Ｄ１＞Ｄ２であるので、＋Ｚ方向にＺ１軸を稼働させる。
【０１００】
このように、工具の工具長、加工すべきネジ溝のピッチ、及び加工穴深さが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。
【０１０１】
次に、実施の形態にかかる数値制御装置１ｉの動作について図１１を用いて説明する。図１１は、実施の形態にかかる数値制御装置１ｉの動作を示すフローチャートである。
【０１０２】
ステップＳＴ１では、数値制御装置１ｉが、連動同期タップ指令に従って、複数の主軸における基準側の主軸と連動側の主軸とをそれぞれ認識する。例えば、図３、図６に示す連動同期タップ指令の場合、Ｓ２軸が基準側の主軸であり、Ｓ１軸が連動側の主軸であると認識する。そして、数値制御装置１ｉは、基準側の主軸（Ｓ２軸）の工具長Ｌｔ２と連動側の主軸（Ｓ１軸）の工具長Ｌｔ１とをそれぞれ求め、工具長差ΔＴ＝Ｌｔ１−Ｌｔ２を求める。数値制御装置１ｉは、工具長差ΔＴが略０である（すなわち、絶対値が閾値未満である）か否かを判断し、工具長差ΔＴが略０である（ステップＳＴ１で「Ｙｅｓ」の）場合、処理をステップＳＴ５へ進め、工具長差ΔＴが略０でない（ステップＳＴ１で「Ｎｏ」の）場合、処理をステップＳＴ２へ進める。
【０１０３】
ステップＳＴ２では、数値制御装置１ｉが、工具長差ΔＴが０より小さい（すなわち、絶対値が閾値以上であり且つ負の値である）か否かを判断し、工具長差ΔＴが０より小さい（ステップＳＴ２で「Ｙｅｓ」の）場合、処理をステップＳＴ４へ進め、工具長差ΔＴが０以上である（ステップＳＴ２で「Ｎｏ」の）場合、処理をステップＳＴ３へ進める。
【０１０４】
ステップＳＴ３では、数値制御装置１ｉが、Ｚ１軸を工具長差ΔＴ分だけＺ１軸の−Ｚ方向へ早送り（Ｇ００）で移動させる。その後、数値制御装置１ｉは、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。
【０１０５】
ステップＳＴ４では、数値制御装置１ｉが、Ｚ１軸を工具長差ΔＴ分だけＺ１軸の＋Ｚ方向へ早送り（Ｇ００）で移動させる。その後、数値制御装置１ｉは、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させる。
【０１０６】
ステップＳＴ５では、数値制御装置１ｉが、連動同期タップ指令に従って、基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１とをそれぞれ求め、穴深さ差ΔＤ＝Ｄ１−Ｄ２を求める。数値制御装置１ｉは、穴深さ差ΔＤが略０である（すなわち、絶対値が閾値未満である）か否かを判断し、穴深さ差ΔＤが略０である（ステップＳＴ５で「Ｙｅｓ」の）場合、処理をステップＳＴ９へ進め、穴深さ差ΔＤが略０でない（ステップＳＴ５で「Ｎｏ」の）場合、処理をステップＳＴ６へ進める。
【０１０７】
ステップＳＴ６では、数値制御装置１ｉが、穴深さ差ΔＤが０より小さい（すなわち、絶対値が閾値以上であり且つ負の値である）か否かを判断し、穴深さ差ΔＤが０より小さい（ステップＳＴ６で「Ｙｅｓ」の）場合、処理をステップＳＴ８へ進め、穴深さ差ΔＤが０以上である（ステップＳＴ６で「Ｎｏ」の）場合、処理をステップＳＴ７へ進める。
【０１０８】
ステップＳＴ７では、数値制御装置１ｉが、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させ、切り込ませる。このとき、数値制御装置１ｉは、Ｚ２軸の制御と並行して、Ｚ１軸を穴深さ差ΔＤ分だけＺ１軸の＋Ｚ方向へ移動させる。また、基準側の主軸の送り速度ｖ２と連動側の主軸の送り速度ｖ１とを数式５により制御し、基準側の主軸の回転数Ｎ２と連動側の主軸の回転数Ｎ１とを数式７により制御する。
【０１０９】
ステップＳＴ８では、数値制御装置１ｉが、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させ、切り込ませる。このとき、数値制御装置１ｉは、Ｚ２軸の制御と並行して、Ｚ１軸を穴深さ差ΔＤ分だけＺ１軸の−Ｚ方向へ移動させる。また、基準側の主軸の送り速度ｖ２と連動側の主軸の送り速度ｖ１とを数式５により制御し、基準側の主軸の回転数Ｎ２と連動側の主軸の回転数Ｎ１とを数式７により制御する。
【０１１０】
ステップＳＴ９では、数値制御装置１ｉが、Ｚ１軸を固定状態に維持しながら、Ｚ２軸を制御して、工具Ｔ１，Ｔ２をそれぞれ加工開始位置に移動させ、切り込ませる。このとき、数値制御装置１ｉは、例えば、基準側の主軸の回転数Ｎ２と連動側の主軸の回転数Ｎ１とを互いに均等になるように制御してもよい。
【０１１１】
以上のように、実施の形態では、数値制御装置１ｉにおいて、制御演算部５０ｉが、連動同期タップ指令に従って、複数の主軸のうちの基準側の主軸（Ｓ２軸）の回転及び送りに連動側の主軸（Ｓ１軸）の回転及び送りを連動させて、複数の工具Ｔ１，Ｔ２で同時に同期タップ加工を行う。これにより、各主軸（Ｓ１軸、Ｓ２軸）間の加工条件の違いを考慮しながら、複数の工具Ｔ１，Ｔ２で同時に同期タップ加工を精度よく行うことができる。すなわち、各主軸間で加工条件が異なる場合に、複数の工具で同時に同期タップ加工を行う際の精度を向上でき、段取り時間の短縮によるサイクルタイム向上を実現できる。
【０１１２】
また、実施の形態では、数値制御装置１ｉにおいて、制御演算部５０ｉが、例えば、連動同期タップ指令に従って、同一の送りに対する基準側の主軸（Ｓ２軸）の回転数及び連動側の主軸（Ｓ１軸）の回転数の違いが加工すべきネジ溝の異なるピッチに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２で同時に異なるピッチの同期タップ加工を行う。これにより、各主軸間の加工条件の違いを考慮しながら、異なるピッチにより、複数の工具で同時に同期タップ加工を行うことができる。したがって、加工のバリエーションを広げることができる。
【０１１３】
また、実施の形態では、数値制御装置１ｉにおいて、制御演算部５０ｉが、例えば、連動同期タップ指令に従って、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の工具長と連動側の主軸（Ｓ１軸）の工具長との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２で同時に同期タップ加工を行う。例えば、各主軸をＺ２軸で送った時に各主軸がほぼ同時にワークの表面に到達するように、複数の主軸における一部の主軸（Ｓ１軸）と、一部の主軸（Ｓ１軸）に対向するワークＷ１との距離を変えてから、連動して同時に同期タップを行うことができる。これにより、工具の工具長が各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。したがって、加工のバリエーションを広げることができる。
【０１１４】
また、実施の形態では、数値制御装置１ｉにおいて、制御演算部５０ｉが、例えば、連動同期タップ指令に従って、基準側の主軸（Ｓ２軸）の工具Ｔ２及びワークＷ２間の距離と連動側の主軸（Ｓ１軸）の工具Ｔ１及びワークＷ１間の距離との違いが基準側の主軸（Ｓ２軸）の加工穴深さＤ２と連動側の主軸（Ｓ１軸）の加工穴深さＤ１との違いに対応したものになるように連動させて、複数の工具Ｔ１，Ｔ２で同時に同期タップ加工を行う。例えば、各主軸をＺ２軸で送った時に各主軸の加工穴深さが均等になるように、複数の主軸における一部の主軸（Ｓ１軸）と一部の主軸（Ｓ１軸）に対向するワークＷ１との距離を変えながら、連動して同時に同期タップを行うことができる。これにより、加工すべき加工穴深さが各主軸間で異なる場合に、複数の工具Ｔ１，Ｔ２による複数のワークＷ１，Ｗ２の同期タップ加工を同時に精度よく行うことができる。したがって、加工のバリエーションを広げることができる。
【０１１５】
なお、実施の形態では、基準側の主軸に対して１つの連動側の主軸が連動する場合について例示しているが、基準側の主軸に対して複数の連動側の主軸が連動してもよい。例えば、図３、図６に示す連動同期タップ指令において、「Ｓ１＝Ｓ２」の記述に代えて「Ｓ３＝Ｓ１＝Ｓ２」の記述を用いてもよい。この場合でも、「Ｓ３＝Ｓ１＝Ｓ２」の記述における最右辺の主軸（Ｓ２軸）が基準側の主軸でありそれ以外の軸（Ｓ３軸、Ｓ１軸）が連動側の主軸であると解析される。
【０１１６】
あるいは、工作機械９００ｊの構成は、図１２に示す構成であってもよい。工作機械９００ｊでは、Ｚ２軸側に２つのワーク支持部９０７ｉ１，９０７ｉ２が設けられ、Ｚ１軸側に２つの刃物台９０６ｉ１，９０６ｉ２が設けられている。刃物台９０６ｉ２は、固定されている。工作機械９００ｊにおいて、Ｚ２軸（送り軸）は、複数のワークＷ１，Ｗ２を複数の工具Ｔ１，Ｔ２に近づく方向へ送る。Ｚ１軸（第２の送り軸）は、１つの工具Ｔ１を１つの工具Ｔ１に対向するワークＷ１に近づく方向へ送る。この場合も、各主軸（Ｓ１軸、Ｓ２軸）、Ｚ１軸、Ｚ２軸を制御して、実施の形態と同様の制御を行うことができる。
【０１１７】
あるいは、工作機械９００ｋの構成は、図１３に示す構成であってもよい。工作機械９００ｋでは、Ｚ２軸側にワーク支持部９０７ｉ１及び刃物台９０６ｉ２が設けられ、Ｚ１軸側に刃物台９０６ｉ１及びワーク支持部９０７ｉ２が設けられている。刃物台９０７ｉ２は、固定されている。工作機械９００ｋにおいて、Ｚ２軸（送り軸）は、複数のワークＷ１，Ｗ２における一部のワークＷ１を工具Ｔ１に近づく方向へ送るとともに、複数の工具Ｔ１，Ｔ２における工具Ｔ１を除く残りの工具Ｔ２を残りの工具Ｔ２に対向するワークＷ２に近づく方向へ送る。Ｚ１軸（第２の送り軸）は、１つの工具Ｔ１を１つの工具Ｔ１に対向するワークＷ１に近づく方向へ送る。この場合も、各主軸（Ｓ１軸、Ｓ２軸）、Ｚ１軸、Ｚ２軸を制御して、実施の形態と同様の制御を行うことができる。
【０１１８】
あるいは、工作機械９００ｐの構成は、図１４に示す構成であってもよい。工作機械９００ｐでは、Ｚ２軸側に２つの刃物台９０６ｉ１，９０６ｉ２が設けられ、Ｚ１軸側に２つのワーク支持部９０７ｉ１，９０７ｉ２が設けられている。ワーク支持部９０７ｉ２は、固定されている。工作機械９００ｐにおいて、Ｚ２軸（送り軸）は、複数の工具Ｔ１，Ｔ２を複数のワークＷ１，Ｗ２に近づく方向へ送る。Ｚ１軸（第２の送り軸）は、１つの工具Ｔ１に対向するワークＷ１を１つの工具Ｔ１に近づく方向へ送る。この場合も、各主軸（Ｓ１軸、Ｓ２軸）、Ｚ１軸、Ｚ２軸を制御して、実施の形態と同様の制御を行うことができる。
【産業上の利用可能性】
【０１１９】
以上のように、本発明にかかる数値制御装置は、同期タップ加工に有用である。
【符号の説明】
【０１２０】
１，１ｉ  数値制御装置、５０，５０ｉ  制御演算部。
【要約】
数値制御装置（１ｉ）は、ワークに対して前記ワークに対向する工具を工具軸周りにそれぞれ相対的に回転させる複数の主軸と、複数の前記ワークに複数の前記工具が相対的に近づくように送り動作を行う送り軸とを有する工作機械（９００ｉ）を制御する数値制御装置（１ｉ）であって、連動同期タップ指令に従って、前記複数の主軸のうちの基準側の主軸の回転及び送りに連動側の主軸の回転及び送りを連動させて、前記複数の工具で同時に同期タップ加工を行う連動同期タップ加工手段（５０ｉ）を備える。【図１】
0005642298.tif 000002
【図２】
0005642298.tif 000003
【図３】
0005642298.tif 000004
【図４】
0005642298.tif 000005
【図５】
0005642298.tif 000006
【図６】
0005642298.tif 000007
【図７】
0005642298.tif 000008
【図８】
0005642298.tif 000009
【図９】
0005642298.tif 000010
【図１０】
0005642298.tif 000011
【図１１】
0005642298.tif 000012
【図１２】
0005642298.tif 000013
【図１３】
0005642298.tif 000014
【図１４】
0005642298.tif 000015
【図１５】
0005642298.tif 000016
【図１６】
0005642298.tif 000017