(57)【要約】一つのＣ軸に対して、Ｘ１軸、Ｚ１軸及び第一のタレット軸から成るメインセットと、Ｘ２軸、Ｚ２軸及び第二のタレット軸から成るサブセットとを、点対称に配置した機械を制御する数値制御装置において、メインセットのタレット軸とサブセットのタレット軸の夫々について、基準側、同期側を選択的に指定し、一方のセットのタレット軸の出力を用いて他方を同期して同時に作動させるモードを選択する同時Ｄカット制御モード指令を設定し、また当該同時Ｄカット制御モード指令を、解析実行する同時Ｄカット指令処理手段（１５）と、メインセット側の補間演算を行うＸ１／Ｙ１／Ｃ軸補間処理手段（１８）と、サブセット側の補間演算を行うＸ２／Ｙ２軸補間処理手段（１９）と、タレット軸及びＣ軸の回転角度制御データを、メインセット及びサブセットのどちらから得るかを選択するＨ軸指令選択手段（５７）とを設け、前記機械を制御する。
2012172594.tif 000002
【特許請求の範囲】
【請求項１】
一つのＣ軸に対して、Ｘ１軸、Ｚ１軸及び第一のタレット軸から成るメインセットと、Ｘ２軸、Ｚ２軸及び第二のタレット軸から成るサブセットとを、点対称に配置した機械を制御する数値制御装置において、
前記メインセットのタレット軸とサブセットのタレット軸の夫々について、基準側、同期側を選択的に指定し、一方のセットのタレット軸の出力を用いて他方を同期して同時に作動させるモードを選択する同時Ｄカット制御モード指令を設定し、
当該同時Ｄカット制御モード指令を、解析実行する同時Ｄカット指令処理手段と、メインセット側の補間演算を行うＸ１／Ｙ１／Ｃ軸補間処理手段と、サブセット側の補間演算を行うＸ２／Ｙ２軸補間処理手段と、タレット軸及びＣ軸の回転角度制御データを、メインセット及びサブセットのどちらから得るかを選択するＨ軸指令選択手段とを備え、
前記同時Ｄカット加工制御モード指令がされているとき、前記Ｈ軸指令選択手段がタレット軸及びＣ軸の回転角度制御データをメインセット及びサブセットのどちらから得るかを選択し、この選択されたデータに基づいてＣ軸に把持したワークの二表面へのＤカット加工を同時に行うよう前記機械を制御することを特徴とする数値制御装置。
【請求項２】
工具を装着したメインセットのタレット軸角度と工具を装着したサブセットのタレット軸角度とを比較し、両タレット間の角度が異なるか否かを判定するタレット軸演算基準判定手段と、このタレット軸演算基準判定手段による判定結果が、両タレット間の角度が異なる場合、タレット軸角度が小さい側のタレット軸角度が、タレット軸角度が大きい側のタレット軸角度に一致するよう、工具の実移動量を再計算するとともに、タレット軸角度が大きい側に与える指令速度を再計算する再計算制御処理手段とを更に備え、
前記Ｈ軸指令選択手段が、両タレット軸及びＣ軸の回転角度制御データを、タレット軸角度が小さい側のセットから得るよう選択するものであることを特徴とする請求項１に記載の数値制御装置。
【請求項３】
工具を装着したメインセットのタレット軸における工具の実移動量と工具を装着したサブセットのタレット軸における工具の実移動量とを比較し、両タレット間の工具の実移動量が異なるか否かを判定するタレット軸演算基準判定手段と、このタレット軸演算基準判定手段による判定結果が、両タレット間の工具補正後の工具の実移動量が異なる場合、実移動量が小さい側に与える指令速度を再計算する再計算制御処理手段とを更に備え、
前記Ｈ軸指令選択手段が、両タレット軸及びＣ軸の回転角度制御データを、工具の実移動量が大きい側のセットから得るよう選択するものであることを特徴とする請求項１に記載の数値制御装置。
【請求項４】
前記二表面へのＤカット加工は、Ｃ軸に把持したワークの直径方向の二表面へ平面加工を行う加工であることを特徴とする請求項１〜３の何れかに記載の数値制御装置。
【請求項５】
前記二表面へのＤカット加工は、Ｃ軸に把持したワークの二表面へ曲面加工を行う加工であることを特徴とする請求項１〜３の何れかに記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、数値制御（Numerical  Control、以下ＮＣと略すことがある）装置によって制御する数値制御旋盤によるワークの加工技術に関するものである。更に詳しくは、旋盤加工に於いてＸＺ平面に垂直なワーク直径方向平面に平行で、回転ワーク中心から離れた面に加工する偏心加工、所謂Ｄカットに関するものである。
【背景技術】
【０００２】
従来、旋盤の一つの型式として、ワークを把持して回転位置制御されるＣ軸と、当該Ｃ軸中心方向に接離するように位置制御されるＸ軸と、同様にＣ軸の軸線方向に移動するＺ軸と、前記Ｘ軸とＺ軸によって駆動される、前記Ｃ軸軸線に直角に任意角度に回転可能なタレット軸（Ｈ軸）を有する機械がある。この様な旋盤では通常の旋削加工の他に、ワークの円周方向を実際には存在しない仮想Ｙ軸により平面加工することができる。この加工は円形断面の一部を直線的に切り落とし、Ｄの文字に似た断面となることからＤカットと呼ばれる。【０００３】
前記加工を実現するためには、Ｃ軸に把持したワークの半径方向に、中心から任意の距離だけ離れた平面を想定し、Ｃ軸中心方向に対してはＨ軸上の回転工具をＣ軸中心方向に向け、Ｃ軸中心から離れた位置に対しては、その方向に工具が向くようにＨ軸を回転させるとともに、この工具に垂直になるようにＣ軸を回転させる。この一連の制御をＣ軸のワーク円周上に想定した面の一端から他端まで連続して仮想Ｙ軸上の速度が指令速度になるように行うことにより実現される。Ｘ軸は工具先端（＝加工面）のワーク中心からの距離にしたがって位置制御される。【０００４】
前記加工を実現するためにＣ軸回動と工具（タレット軸）の首振りを機械で同期制御したものが特許文献１に、前記と類似の動作をする、全サーボ制御による構成を一つのセットとし、これを６セット纏めた機械の構成および作動方法が特許文献２に開示されている。これらの文献では機械の構造や各部の動作が説明されており、これらの制御により所謂Ｄカットを行うことができる。
また、前記Ｄカットに似た加工内容が特許文献３に図示されているが、Ｘ、Ｚ、主軸／Ｃ軸、固定角度割出タレットで構成される機械であるので、Ｙ軸制御が必要な所を、極座標変換によってＣ軸角度に変換しており、加工点軌跡としては正しくても、例えばフラットエンドミルを使って加工すると中央では平面でも、両端に行くほど切削面への工具径による円弧状切込が大きくなり、加工面が保証されない。したがって実際に加工ができる構成・構造ではないといえる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特公平３−０３３４４１号公報  （関連記述：第８ページ第１６欄３２行目〜第９ページ第１７欄２８行目、第９ページ第１８欄１８行目〜第１０ページ第１９欄２９行目、第３図、第７図）
【特許文献２】特開２０００−２１８４２２号公報  （関連記述：第５ページ第７欄２５行目〜同３４行目、第１０ページ第１８欄２５行目〜第１１ページ第１９欄３２行目、図７〜図１１）
【特許文献３】特開昭６０−０４４２３９号公報  （関連記述：第３ページ第１欄７行目〜同１５行目、第７ページ第４欄１６行目〜第８ページ第１欄７行目、第１０ページ第３欄６行目〜同１８行目、第１１図、第１２図の直線形状、第４２図）
【発明の開示】
【発明が解決しようとする課題】
【０００６】
一方、円形断面の両側を切り落とした形に加工する、ダブルＤカット（加工されたワークの断面がスパナの開口部のようになることからスパナカットと呼ばれることもある）がある。これは、従来の機械で前記Ｄカットを同一ワークに２回施せば加工できるものの、加工時間が２倍になることから、加工効率を上げるために裏表を同時に加工したいという要求が出てきた。
また、前記Ｄカットではワークの円形断面の片側を直線で切り落とすが、これを凸または凹状の円弧に代表される曲線で切り落とすＤカット（この明細書では区別を容易にするために（直線）Ｄカット、円弧Ｄカットと称することとする）を行いたいという要求が出てきた。【０００７】
図１４に示すような従来の一組のＸＺＨＣ軸から成る機械構成に於いては、ワークを把持するＣ軸を中心にしてＸ軸方向に移動可能なように、Ｘ軸方向の円周方向（ワークの半径方向）首振りができるタレット軸（Ｈ軸）が配されており、Ｈ軸は任意の角度に回転制御できる。この構成によりＨ軸とＣ軸を同期して等角度回転させ、更にＨ軸をＸ軸方向に、前記回転に同期して回転工具を接離させることによってワーク中心から離れた位置に平面を仮想して切削や穴あけ等の加工を行うことができる。
尚、Ｚ軸の作動方向はＸＹ平面およびＨ軸Ｃ軸の作動面に垂直な方向であり、本願発明の基本的な動作に影響することは無いので、軸名として挙げても動作等についての説明は割愛する。【０００８】
図１５は図１４に示す構成の機械で、円柱体の直径方向の両端を削り落とす、所謂ダブルＤカット加工を行う様子を示したものである。
具体的には、フライス工具に工具交換され、且つＣ軸モードが選択されている状態で、次のように機械を制御することにより、ダブルＤカット加工を行う。
(1)工具方向と仮想平面Ｘ軸方向を平行にする
(2)仮想Ｙ軸補間モード指令（同期送りモードキャンセル、端面加工のＸＹ平面選択）
(3)工具を加工開始位置に移動
(4)フライス加工（Ｃ軸、Ｈ軸を同時に制御）
(5)工具方向と仮想平面X軸方向を平行にする
(6)仮想Ｙ軸補間モードキャンセル
(7)ワークを反転（Ｃ軸）
(8)仮想Ｙ軸補間モード指令
(9)加工開始位置に移動
(10)フライス加工（Ｃ軸、Ｈ軸を同時に制御）
(11)工具方向と仮想平面Ｘ軸方向を平行にする
(12)仮想Ｙ軸補間モードキャンセル
このように機械を制御することにより、ダブルＤカット加工を行うが、片面のＤカット加工が終わった時点で一旦仮想Ｙ軸補間モードをキャンセルしてＣ軸を反転させ、改めて仮想Ｙ軸補間モードで反対面に再度Ｄカット加工を施さなければならず、加工時間が長くなると言う課題があった。【０００９】
これに対して、図１に示すように、一つのＣ軸に対して、Ｘ１軸、Ｚ１軸、第一のタレット軸（Ｈ１軸）から成るメインセットと、Ｘ２軸、Ｚ２軸、第二のタレット軸（Ｈ２軸）から成るサブセットとを、点対称に配置し、メインセットとサブセットとを同時に制御することにより、短い加工時間で直線、円弧等のダブルＤカット加工を行う機械が考えられる。なお図１において、Ｔｘは工具長、Ｔｙは工具半径を指す。
ところが従来、この新たな機械を制御する数値制御装置、即ち、一つのＣ軸に対して、Ｘ１軸、Ｚ１軸、第一のタレット軸から成るメインセットと、Ｘ２軸、Ｚ２軸、第二のタレット軸から成るサブセットとを同時に制御し、もって直線、円弧等のダブルＤカット加工を同時に行うことができる数値制御装置が存在しなかった。【００１０】
この発明は、短い加工時間で直線、円弧等のダブルカット加工を行うことができるよう、前記新規構成の機械を制御できる数値制御装置を提供することを目的とする。【００１１】
またこの発明は、各タレットに取り付けられる工具の寸法諸元（工具長、工具径など）が異なっており、二つのタレット軸の振り角度に差が生じたり、二つのタレット軸の加工移動量に差が生じたりした場合であっても、短い加工時間で直線、円弧等のダブルカット加工を精度よく行うことができるよう、前記新規構成の機械を制御できる数値制御装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
この発明に係る数値制御装置は、一つのＣ軸に対して、Ｘ１軸、Ｚ１軸及び第一のタレット軸から成るメインセットと、Ｘ２軸、Ｚ２軸及び第二のタレット軸から成るサブセットとを、点対称に配置した機械を制御する数値制御装置において、
前記メインセットのタレット軸とサブセットのタレット軸の夫々について、基準側、同期側を選択的に指定し、一方のセットのタレット軸の出力を用いて他方を同期して同時に作動させるモードを選択する同時Ｄカット制御モード指令を設定し、
当該同時Ｄカット制御モード指令を、解析実行する同時Ｄカット指令処理手段と、メインセット側の補間演算を行うＸ１／Ｙ１／Ｃ軸補間処理手段と、サブセット側の補間演算を行うＸ２／Ｙ２軸補間処理手段と、タレット軸及びＣ軸の回転角度制御データを、メインセット及びサブセットのどちらから得るかを選択するＨ軸指令選択手段とを備え、
前記同時Ｄカット加工制御モード指令がされているとき、前記Ｈ軸指令選択手段がタレット軸及びＣ軸の回転角度制御データをメインセット及びサブセットのどちらから得るかを選択し、この選択されたデータに基づいてＣ軸に把持したワークの二表面へのＤカット加工を同時に行うよう前記機械を制御するものである。【００１３】
またこの発明に係る数値制御装置は、前記数値制御装置に、工具を装着したメインセットのタレット軸角度と工具を装着したサブセットのタレット軸角度とを比較し、両タレット間の角度が異なるか否かを判定するタレット軸演算基準判定手段と、このタレット軸演算基準判定手段による判定結果が、両タレット間の角度が異なる場合、タレット軸角度が小さい側のタレット軸角度が、タレット軸角度が大きい側のタレット軸角度に一致するよう、工具の実移動量を再計算するとともに、タレット軸角度が大きい側に与える指令速度を再計算する再計算制御処理手段とを更に備え、
前記Ｈ軸指令選択手段が、両タレット軸及びＣ軸の回転角度制御データを、タレット軸角度が小さい側のセットから得るよう選択するものである。【００１４】
またこの発明に係る数値制御装置は、前記数値制御装置に、工具を装着したメインセットのタレット軸における工具の実移動量と工具を装着したサブセットのタレット軸における工具の実移動量とを比較し、両タレット間の工具の実移動量が異なるか否かを判定するタレット軸演算基準判定手段と、このタレット軸演算基準判定手段による判定結果が、両タレット間の工具補正後の工具の実移動量が異なる場合、実移動量が小さい側に与える指令速度を再計算する再計算制御処理手段とを更に備え、
前記Ｈ軸指令選択手段が、両タレット軸及びＣ軸の回転角度制御データを、工具の実移動量が大きい側のセットから得るよう選択するものである。
【発明の効果】
【００１５】
この発明によれば、一つのＣ軸に対して、Ｘ１軸、Ｚ１軸、第一のタレット軸から成るメインセットとＸ２軸、Ｚ２軸、第二のタレット軸から成るサブセットとを、点対称に配置した機械におけるメインセットとサブセットとを、同時に制御することができるため、従来の約半分の時間で直線、円弧等のダブルカット加工を行うことができる。【００１６】
またこの発明によれば、各タレットに取り付けられる工具の寸法諸元（工具長、工具径など）が異なっており、二つのタレット軸の振り角度に差が生じたり、二つのタレット軸の加工移動量に差が生じたりした場合であっても、従来の約半分の時間で直線、円弧等のダブルカット加工を精度よく行うことができる。
【図面の簡単な説明】
【００１７】
【図１】この発明に係る機械構成及び同時Ｄカットの加工動作例を示す図である。
【図２】この発明の実施例１に係る、タレット１とタレット２に取り付けられる工具の寸法諸元が同一の場合の仮想Ｙ軸制御による同時Ｄカットの説明図である。
【図３】この発明の実施例２に係る、タレット１とタレット２に取り付けられる工具の工具長が異なる場合の仮想Ｙ軸制御による同時Ｄカットの説明図である。
【図４】この発明の実施例２に係る、タレット１とタレット２に取り付けられる工具の工具径が異なる場合の仮想Ｙ軸制御による同時Ｄカットの説明図である。
【図５】この発明の実施例２に係る、タレット１とタレット２に取り付けられる工具の工具長及び工具径が異なる場合の仮想Ｙ軸制御による同時Ｄカットの説明図である。
【図６】この発明の実施例１に係る、仮想Ｙ軸制御による同時Ｄカット制御のフローチャートである。
【図７】この発明の実施例１に係る数値制御装置の構成を示すブロック図である。
【図８】この発明の実施例２に係る数値制御装置の構成を示すブロック図である。
【図９】この発明の実施例２に係る、仮想Ｙ軸制御による同時Ｄカット制御のフローチャートである。
【図１０】この発明の実施例３に係る同時円弧Ｄカットの説明図である。
【図１１】この発明の実施例３に係る数値制御装置の構成を示すブロック図である。
【図１２】この発明の実施例３に係る、タレット１とタレット２に取り付けられる工具の寸法諸元が同一の場合の仮想Ｙ軸制御による同時円弧Ｄカット制御のフローチャートである。
【図１３】この発明の実施例３に係る、タレット１とタレット２に取り付けられる工具の寸法諸元が異なる場合の仮想Ｙ軸制御による同時円弧Ｄカット制御のフローチャートである。
【図１４】従来のＤカットを行う機械の軸構成図である。
【図１５】従来の機械によるダブルＤカットの動作例を示す図である。
【発明を実施するための最良の形態】
【００１８】
実施例１．
以下、この発明の実施例１について、図１、図２、図６及び図７を用いて説明する。
なお、この実施例１は、図２に示すように、タレット１とタレット２に取り付けられる工具の寸法諸元が同一（工具長、工具径などが同一）である場合の実施例である。
図１は、この発明の実施例１に係る新たな構成の機械（一つのＣ軸に対して、Ｘ１軸、Ｚ１軸、第一のタレット軸（Ｈ１軸）から成るメインセットと、Ｘ２軸、Ｚ２軸、第二のタレット軸（Ｈ２軸）から成るサブセットとを、点対称に配置した機械）を制御して行う、同時Ｄカット加工の動作を示すものである。なお、図１には、各系統のプログラム例も挙げているが、この中のシーケンス番号Ｎ１０１〜Ｎ１０３の付されたブロックの内容に基づき基準軸と同期軸が同じ動きをして同時にＤカットを行ない、表裏同時に加工ができることになる。
また、この機械でＤカット加工を行うには仮想Ｙ軸加工（制御）が必要であるが、この仮想Ｙ軸加工の事前の準備として、フライス工具に工具交換し、主軸を速度ループ制御から位置ループ制御であるＣ軸制御モードに切り換えておくことが必要である。【００１９】
図１に示す機械でダブルＤカット加工を行うには、図１に示すように、先ず、工具方向と仮想平面Ｘ軸方向を平行にする（各系統毎にＧ０Ｘｘ１Ｃ０Ｈ０；を指令する）。この指令によりＣ軸中心からＸ軸方向にｘ１離れた位置に工具先端（中心）が位置決めされ、Ｃ軸とＨ軸は０度に位置決めされる（図１の(1)の状態）。
メイン、サブ両セットについて前記位置決めを実行した上で、メインセット（系統１  ＄１）の加工プログラムで仮想Ｙ軸補間モード指令（ここでは例えばＭ３７とする）を指令して仮想Ｙ軸補間モードを確立し、且つＸ、Ｙの２軸で２軸補間を行うためのＸＹ平面を選択するＧ１７を指令し、更にメインセットとサブセット（系統２  ＄２）とを同期待ち合わせさせる指令（例えば「！」指令を用い、メインセットに「！２」、サブセットに「！１」を指令すれば、メインセットとサブセットとが同期待ち合わせすることになる）をする。【００２０】
なお、これらの指令は、図１のプログラム例に示すように、先ずＸ、Ｙの２軸で２軸補間を行うためのＸＹ平面を選択するＧ１７指令、仮想Ｙ軸補間モードを確立する仮想Ｙ軸補間モード指令（Ｍ３７）を指令の後、工具方向と仮想平面Ｘ軸方向を平行にする指令（Ｇ０Ｘｘ１Ｃ０Ｈ０）を指令してもよい。
続いて同時Ｄカット制御モード指令（ここではメインセットのＨ１軸データでサブセットのＨ２軸を制御するために、新たに定義した例えばＧ１２４Ｈ２＝Ｈ１；）を与える（図１の(2)の状態）。【００２１】
次に加工開始位置（仮想Ｙ軸の座標値）への位置決め指令を行うと、ワーク端面の座標系上に設定された仮想Ｙ軸位置に工具刃先中心が位置するようにＣ軸の角度を計算し、Ｃ軸とＨ軸を回転させると共にＨ軸中心がＸ軸上で移動する。更にＤカット面のＣ軸中心からの偏心量をＸｕ１として指令すると、前記回転したＣ軸の偏心した仮想Ｙ軸上に工具先端が一致するように工具中心を移動する（図１の(3)の状態）。次に仮想Ｙ軸上の終点を直線で指令すると前記加工開始位置から終点に向かって直線で仮想Ｙ軸上でのフライス加工を行う（図１の(4)の状態）。続いてワークと工具が干渉しない位置に工具を退避させると共に工具方向と仮想平面Ｘ軸方向を一致させ（図１の(5)の状態）、同時Ｄカット制御モードキャンセル（同様にここでは例えばＧ１２４Ｈ２；）を指令し、仮想Ｙ軸補間モードキャンセル（例えばＭ３８）を指令する（図１の(6)の状態）。【００２２】
以上のようにしてメインセット（系統１）への１切削工程の加工プログラムで、表裏両面に同時にＤカット加工が行なえることとなるが、この制御が行なえるのは前述したようにメインセットとサブセットの夫々のタレット軸に、寸法的諸元が同一の工具が等しく装着された場合に限られる。同時Ｄカット加工に於いて、サブセットはメインセット用に指令されたプログラム値を用いて補間計算や実軸座標変換を行ってＸ軸データをＸ２軸へ、メインセット側で計算されたＸ軸データはＸ１軸へ、Ｈ軸データはＨ１軸、Ｈ２軸及びＣ軸に入力することによって、タレット１、タレット２及びＣ軸の動作は同期して同時Ｄカット加工を実行できることになる。【００２３】
図２〜図５は前述の両タレットとワークの制御データの種々の関係を示したものであって、図２は両タレットに同一工具長、同一工具径の工具が等しく取り付けられた場合、図３はタレット２に取り付けられた工具の工具長がタレット１に取り付けられた工具の工具長より長い場合、図４はタレット１に取り付けられた工具の径がタレット２に取り付けられた工具の径より大きい場合、図５はタレット２に取り付けられた工具の工具長がタレット１に取り付けられた工具の工具長より長く、またタレット１に取り付けられた工具の径がタレット２に取り付けられた工具の径より大きい場合を示したものである。【００２４】
なお図２〜図５において、Ｒ１，Ｒ２はタレット軸回転中心から工具取付座までの距離、Ｔ１，Ｔ２は工具長、ｕ１，ｕ２は加工面のワーク中心からの偏心量である。加工プログラムで仮想Ｙ軸上の加工開始位置が指定されると工具長補正及び工具径補正が行なわれて工具中心位置ｐ１１が求められ、これに対応したＣ軸とＨ１軸の回転角度（ｈ１＝Ｃ１）及びＣ軸中心からのＨ１軸中心までの距離が計算されて夫々の軸が加工開始位置に移動する。
なお、図２〜図５上の各タレット軸回転角度ｈ１，ｈ２が０度中心とした片側の角度であるので、各タレット軸の切削移動量ｙ１，ｙ２は前記ｈ１，ｈ２の２倍の角度を用いて算出する必要がある。【００２５】
次に加工プログラムで加工終点位置が指定されると同様にｐ１２が求められ、ｐ１１とｐ１２を結ぶ線ｙ１を仮想ＸＹ平面上で直線補間する。また、サブセットもメインセットと同様にｐ２１が求められ、ｐ２１とｐ２２を結ぶ線ｙ２を仮想ＸＹ平面上で直線補間する。更に当該補間データを最終的にはＸ軸とＨ軸（回転軸）の実軸位置に変換して各軸のサーボ制御部に出力し、サーボモータを駆動することによりＣ軸回転、タレット回転、タレット軸のＣ軸方向への位置制御が協調して行なわれる。その結果、ワークの中心から指定距離だけ離れた位置で、半径方向と直角な面に平面加工や穴あけ加工を行うことができる。【００２６】
また、図２の場合は、両タレット軸にセットされた工具が同じものであるので、前記切削移動量ｙ１，ｙ２は等しくなり、切削速度も等しくなる。従ってＨ１軸とＨ２軸の回転角度と回転速度も等しいので、メインセットのＨ１軸の回転データをそのままＨ２軸に入力すれば強制的にＨ１軸とＨ２軸の回転角度と回転速度が合わせられ、問題無く同時にＤカット加工が行なえる。【００２７】
この様に同時Ｄカット加工を行うにあたってはＨ１軸、Ｈ２軸、Ｃ軸の回転角度を一致させる必要があるが、仮に図３、図４、図５の様に両セットに取り付けられた工具の工具長、工具径が違っていると前記ｙ１，ｙ２は不等となり、切削速度に差を持たせなければならないが、加工に際しての各軸制御の間に矛盾が生じる。この様なケースでの解決方法については実施例２で説明する。【００２８】
図６はこの発明の実施例１のＮＣ装置による加工プログラムの処理フローチャートの一例である。
Ｓｔｅｐ１で加工プログラムを読み込み、Ｓｔｅｐ２で仮想Ｙ軸に関するプログラム命令を解読し、所定の処理プログラムを実行する。仮想Ｙ軸に関する命令としては仮想Ｙ軸補間モードオン／オフ、この実施例ではＭ３７／Ｍ３８をこれに充てる。このＭ３７により仮想ＸＹ軸平面での補間演算を可能とし、通常の旋盤としてのＸＺ平面による加工と、仮想Ｙ軸を用いた制御ができる加工とを選択する切換処理部を作動させる。また、Ｍ３７／Ｍ３８は外部出力され、ＰＬＣ（Programmable Logic Controller）により外部入力信号として再度ＮＣ装置に入力する方法を採用しているが、ＮＣ装置内部で切り換えるようにすることも可能である。【００２９】
また他の命令としては同時Ｄカット加工を行うために、Ｇ１２４という、Ｈ軸及びＣ軸指令の入力選択を行うＧ指令を新たに追加している。このＧ１２４に続けてＨ２＝Ｈ１を指定することによりＨ２軸はＨ１軸データにより駆動されると解釈し、Ｈ１＝Ｈ２であれば逆にＨ１軸はＨ２軸データにより駆動されると解釈することになる。Ｇ１２４に続けてＨ２またはＨ１のみを指定することによりこれらの命令はキャンセルされる。このＧコードも任意に設定できるものである。
同じ取り付けがされた二つの同じ工具で加工経路が等しい時はタレット回転角度と回転速度も同じであるので、ここでは基本的な指令としてＧ１２４Ｈ２＝Ｈ１；を実行し、Ｈ１軸を基準側に、Ｈ２を同期側に定義しておく。【００３０】
Ｓｔｅｐ３ではＳｔｅｐ１で読み込んだ加工プログラムの位置指令に基づいて、タレット１、タレット２の指令位置について仮想ＸＹ平面上の現在位置ｐ１１，ｐ２１から、工具補正を行なった指令位置ｐ１２，ｐ２２までの移動量（加工線分長）ｙ１，ｙ２、及び当該ｙ１，ｙ２に対応するタレット軸の角度ｈ１，ｈ２を計算する。尚、図２ではｐ１１，ｐ１２，ｐ２１，ｐ２２等はＤカットの切削面の始点・終点を指しているが、加工に従って順次変化する相対的な記号であるので、フローチャート等での説明と必ずしも一致しているものではない。また、実施例１の場合には、タレット軸の角度ｈ２の計算は必須ではないが、タレットに取り付けられる工具の工具長や工具径が異なっている場合にはｈ２の計算も必要であり、ＮＣ装置として融通性のある（タレットに取り付けられる工具の工具長や工具径が異なっている場合の制御にも使用できる）ものを使用しているため、必然的にタレット軸の角度ｈ２の計算を行っている。【００３１】
Ｓｔｅｐ４ではＳｔｅｐ３で計算された仮想ＸＹ平面上の移動量ｙ１、ｙ２とタレット軸角度ｈ１をプログラムされた指令速度Ｆで補間計算を行う。
Ｓｔｅｐ５では仮想ＸＹ座標系上の前記補間計算値で、制御対象であるモータを駆動するために、実際に制御する実軸であるＸＨ平面上の座標値に変換する。【００３２】
Ｓｔｅｐ６では前記仮想ＸＹ座標値からＸＨ平面座標値に変換された実軸座標を基に実軸移動量を計算して各軸のサーボ制御部に出力し、対応するモータを駆動して所望の加工を行うように機械を作動させる。即ち、Ｘ１サーボ制御部に実軸座標補間データｘ１を、またＸ２サーボ制御部に実軸座標補間データｘ２を出力し、またＨ１軸サーボ制御部、Ｈ２サーボ制御部及びＣ軸サーボ制御部に、実軸座標補間データｈ１を出力して、Ｘ１軸、Ｘ２軸、Ｈ１軸、Ｈ２軸及びＣ軸を駆動することにより仮想Ｙ軸制御を行う。
以上の様な手順で加工プログラムを順次読み取って解析し、指定された寸法で表裏同時にＤカット加工が実行され、従来の半分の時間で加工を終えることができる。【００３３】
尚、表裏同時Ｄカット加工の加工プログラムでは夫々のＤカットの形状は同じであるので、図１のプログラム例に示すように、形状プログラムは第１系統にのみ指令し、第２系統の軸は第１系統の指令を利用する。実際の同時Ｄカット加工や第１系統や第２系統における他の加工作業の開始や終了等との時間的な関係は、同期待ち合わせ指令（例えば「！」指令）等を用いることによって制御される。【００３４】
図７は図６で説明した加工プログラムの処理を行うことができる、この発明の実施例１によるＮＣ装置の構成の一例を示すブロック図である。
図７において、１はＮＣ装置、２は入力操作部、３は入力制御部、４はメモリ、５はパラメータ記憶部、６は加工プログラム格納部、７は共有エリア、８は画面表示データ記憶部、９は画面処理部、１０は表示部である。１１は解析処理部、１２は機械制御信号処理部、１３はＰＬＣ、１４は仮想Ｙ軸補間モード信号処理部、１５は同時Ｄカット指令処理手段、１７は補間処理部、１８はＸ１／Ｙ１／Ｃ軸補間手段、１９はＸ２／Ｙ２軸補間処理手段、２０は軸データ出力部である。３１〜３５は夫々Ｘ１、Ｘ２、Ｈ１、Ｈ２、Ｃ軸のサーボ制御部、４１〜４５は夫々Ｘ１、Ｘ２、Ｈ１、Ｈ２、Ｃ軸のサーボモータである。また、５１は仮想Ｙ軸制御切換処理部、５２ａは第一の仮想Ｙ軸制御処理部、５３はＸ１／Ｙ１平面演算手段、５４はＸ２／Ｙ２平面演算手段、５５はＸ１／Ｙ１→Ｘ１／Ｈ１座標演算手段、５６はＸ２／Ｙ２→Ｘ２／Ｈ２座標演算手段、５７はＨ軸指令選択手段である。【００３５】
次に動作について説明する。ＮＣ装置１はオペレータが操作する入力操作部２のスイッチ信号の変化等を入力制御部３が検知し、メモリ４内のパラメータ記憶部５、加工プログラム格納部６、共有エリア７、画面表示データエリア８等の各所にアクセスしてメモリ内容を変更する書き込みや読み取り等の信号を与える。画面表示データエリア８の所定のアドレスに格納されている各種表示データは画面処理部９によって読み出され、表示部１０上の所定の位置にデータの表示を行う。【００３６】
パラメータ記憶部５に記憶されているパラメータにはＮＣ装置の仕様を決定したり、機械制御に必要な条件データ等が含まれる。加工プログラムは少なくとも一つのワークを加工するのに必要な、機械の動作内容や刃物の移動経路等がＮＣ装置の解読できるフォーマットで記述し、格納されている。共有エリア７は加工プログラムの解析や機械動作を制御中のシステム制御に必要な一時的なデータ等が記憶される。また、画面表示データエリア８には入力操作部２で指定された、オペレータが必要とする現在位置情報、主軸回転情報、ＮＣ装置の制御モード、各種選択信号の出力状態等の各種データを格納している。【００３７】
解析処理部１１は前記加工プログラム格納部６に記憶されている加工プログラムの内の、指定されたプログラムを先頭から順次読み出し、各種ＮＣ指令毎に指定された処理手順によって、パラメータ５を参照し、処理中のデータ等を共有エリア７に一時記憶しながらプログラムを解析し実行して行く。
機械制御信号処理部１２は、解析処理部１１からメモリ４に出力される機械周辺装置の制御に関する情報を読み取り、ＰＬＣ１３に出力してラダー回路に制御情報を与えたり、図示しない外部入出力信号Ｉ／Ｆから各種オン／オフ等の制御信号を機械側に出力する。また、ＰＬＣ１３からＮＣの各種処理部への制御用に入力される信号や機械側から入力される外部信号をメモリ４内の共有エリア７に書き込み、ＮＣ装置の制御に作用させ、ＮＣ装置及び機械の制御が正しく進行するように作動する。【００３８】
仮想Ｙ軸補間モード信号処理手段１４は、例えば仮想Ｙ軸補間モードのオン／オフをＮＣ装置の外部から入力される選択信号によって切り換える場合に、機械制御信号処理部１２に入力される外部信号を受け付け、所定のパラメータをセットまたはリセットする。この切換制御は加工プログラム中の命令によってＮＣ装置内部で処理することもできる。本願発明の実施例１に於いては補助指令（Ｍ３７及びＭ３８）でオン／オフ信号に変換してＮＣ装置に入力する方法を用いている。【００３９】
解析処理部１１内にある同時Ｄカット指令処理手段１５は、従来からある所謂Ｄカットを二つの系統のタレット軸を用いてワークの直径方向の両面に同時にＤカット加工を行なえるようにするための命令（本願発明では“Ｇ１２４  同期タレット軸名称＝基準タレット軸名称”とし、回転軸であるＨ１軸、Ｈ２軸の主従関係情報を例えばＨ２＝Ｈ１のように付加する）を解読する（図６のステップ１、２）。同時Ｄカットを最も簡単に行うには、少なくとも図２に示すように、Ｃ軸を中心にして点対称に配置された二つのタレット軸に同一の工具を等しく取り付け、二つのタレット軸のワーク中心からの位置（Ｘ軸）は夫々の系統の補間により求め、タレット軸の回転は前記命令の記述では、Ｈ２軸を基準軸となったＨ１軸の駆動データを用いて同期駆動すればよい。ワークを回転させるＣ軸も基準軸であるＨ１軸の駆動データを用いて同期駆動することにより、同時Ｄカットの動きが実現できる。【００４０】
補間処理部１７は、Ｘ１／Ｙ１／Ｃ軸補間処理手段１８、Ｘ２／Ｙ２軸補間処理手段１９から構成されている。ここで、本願発明の説明に於いては、ワーク長さ方向であるＺ軸についてはＤカット加工には直接の関与は無いので、Ｚ軸に関する図面記載や動作説明は割愛する。また、Ｄカット加工や同時Ｄカット加工を実行するまでに工具を加工開始点まで移動させるプログラムが必要であるが、ここでは図２のように、指令位置に対して工具補正された工具中心がｐ１１，ｐ２１に位置決めされているものとして説明する。【００４１】
通常の旋盤としての加工制御に於いては補間処理部１７内の図示しないＸ１，Ｚ１，Ｃ軸とＸ２，Ｚ２軸の補間処理手段を用い、加工プログラムから求められる相対移動量に直線や円弧等の補間処理を行ない、これらの出力データを軸データ出力部２０を介して各軸のサーボ制御部３１〜３５に入力し、該サーボ制御部３１〜３５が出力する駆動電力によってサーボモータ４１〜４５を回転駆動する。これによって制御対象機械である旋盤のＸＺ軸、主軸、Ｃ軸などを駆動して所望の加工を行なわせる。【００４２】
仮想Ｙ軸制御時には、外部から入力される仮想Ｙ軸補間モード信号によって仮想Ｙ軸制御切換処理部５１が作動し、前記補間処理部１７の補間計算結果を第一の仮想Ｙ軸制御処理部５２ａで使用できるように切り換える。
第一の仮想Ｙ軸制御処理部５２ａは、Ｘ１／Ｙ１平面演算手段５３、Ｘ２／Ｙ２平面演算手段５４、Ｘ１／Ｙ１→Ｘ１／Ｈ１座標演算手段５５、Ｘ２／Ｙ２→Ｘ２／Ｈ２座標演算手段５６、Ｈ軸指令選択手段５７から成り、Ｘ１／Ｙ１平面演算手段５３及びＸ２／Ｙ２平面演算手段５４は、夫々の系統の加工プログラムから、夫々の仮想ＸＹ平面上での工具補正された工具中心位置である加工開始点ｐ１１、ｐ２１、終点ｐ１２、ｐ２２、線分長ｙ１、ｙ２、及びタレットの振り角度ｈ１、ｈ２を計算し、メモリ４の共有エリア７に格納する（図６のステップ３）。【００４３】
Ｘ１／Ｙ１→Ｘ１／Ｈ１座標演算手段５５、Ｘ２／Ｙ２→Ｘ２／Ｈ２座標演算手段５６は、Ｘ１／Ｙ１平面演算手段５３及びＸ２／Ｙ２平面演算手段５４により生成された座標値と指令速度を用いて補間処理部１７から出力される補間データを積算して得られる座標値を、実際の機械に対応するＸＨ軸の実軸座標上の値に変換し、更にこれを実軸における実際の移動量である実軸移動量（増分値）に変換してタレット回転軸のＸ軸方向位置の制御とタレットの回転制御を行う。
またＨ軸指令選択手段５７は前述したように、同時Ｄカット制御時の基準タレットと同期タレット及びＣ軸を回転駆動する指令データを選択したり、指令を重畳するように作用する。これらは加工プログラムから与えられるＧ１２４指令によって指令データの選択が決定される。【００４４】
通常の片側のみのＤカット制御の技術は公知であるので詳細な説明は割愛するが、加工プログラムでＸ軸と仮想Ｙ軸から成る仮想ＸＹ座標系上での加工経路が指定され、工具補正後の工具中心が現在位置ｐ１１から終点位置ｐ１２までワーク上に指定された経路ｙ１を指定された速度で移動するようにＸ１／Ｙ１／Ｃ軸補間処理手段１８で補間演算し、Ｘ１、Ｙ１座標系及びＣ軸座標上での単位時間当たりのＸ１軸、Ｙ１軸、Ｃ軸の各移動量・回転角度を算出する。また工具補正後の工具中心が現在位置ｐ２１から終点位置ｐ２２までワーク上に指定された経路ｙ２を指定された速度で移動するようにＸ２／Ｙ２軸補間処理手段１９で補間演算し、Ｘ２、Ｙ２座標系上での単位時間当たりのＸ２軸、Ｙ２軸の各移動量を算出する（図６のステップ４）。この時のＸ軸の変位はタレット軸のＣ軸中心に対する変位となり、Ｙ軸の変位はタレット軸の回転軸（Ｈ軸）の回転角度に対応することになるが、これは別途、後述する座標変換によって行なわれる。このＨ軸の角度（工具中心線方向）とＣ軸の傾きは平行になるように制御される。【００４５】
前記算出されたＸ軸、Ｙ軸の補間計算後の位置は何れも座標位置で長さに相当するが、実際の機械構造は直線移動軸と首振り回転軸である。このため、前記算出した仮想ＸＹ座標系上の位置としてのＸ１，Ｘ２、Ｙ１、Ｙ２データを、Ｘ１／Ｙ１→Ｘ１／Ｈ１座標演算手段５５及びＸ２／Ｙ２→Ｘ２／Ｈ２座標演算手段５６によって位置と回転角度の実軸座標値に変換し、更に実軸移動量ｘ１，ｘ２、ｈ１を計算する（図６のステップ５）。
そして軸データ出力部２０を介して、Ｘ１サーボ制御部３１に実軸座標補間データｘ１を、またＸ２サーボ制御部３４に実軸座標補間データｘ２を出力し、また前記Ｇ１２４指令により、Ｈ１軸サーボ制御部３２、Ｈ２サーボ制御部３５及びＣ軸サーボ制御部３３に、実軸座標補間データｈ１を出力して、Ｘ１軸、Ｘ２軸、Ｈ１軸、Ｈ２軸及びＣ軸を駆動することにより仮想Ｙ軸制御を行い、同時Ｄカット加工を行う（図６のステップ６）。【００４６】
上述したように、同時Ｄカット加工に於いても各系統のタレット軸は同様に補間演算制御されるが、メイン（基準）側はＣ軸も含めて補間演算されるのに対して、サブ（同期）側はＸＹ軸のみでの演算となる。
但し、同時Ｄカット加工に於いては前記Ｇ１２４指令により、同期側のタレット軸角度は基準側のタレット軸の実軸移動量を同期側のタレット軸指令（指令上の演算結果は０）に重畳させることで基準側タレット軸と同一の動作をさせることができる。【００４７】
以上の制御によってメイン（基準側）セットは従来どおり片面に対してＤカット加工を行い、サブ（同期側）セットはメイン側のＸＹ軸指令がサブ側にも指令されたものと解釈して補間演算や座標変換等を同様に行い、タレット回転のみはメイン側のタレット軸回転と同じデータによって駆動するので、反対面にも同時にＤカット加工を行うことができる。【００４８】
前記算出されたＸ軸、Ｙ軸の補間計算後の位置は何れも座標位置で長さに相当するが、実際の機械構造は直線移動軸と首振り回転軸である。このため、前記算出した仮想ＸＹ座標系上の位置としてのＸ，ＹデータをＸ１／Ｙ１→Ｘ１／Ｈ１座標演算手段５５及びＸ２／Ｙ２→Ｘ２／Ｈ２座標演算手段５６によって位置と回転角度の実軸座標値に変換し、更に実軸移動量ｘ，ｈを計算するのは通常のＤカット加工と同じである。【００４９】
実施例２．
次に、この発明の実施例２について、図１、図３〜図５、図８及び図９を用いて説明する。
なお図３〜図５に示すように、メインセットとサブセットで工具諸元（工具長や工具径）が異なる場合、実施例１で説明した制御を行うだけでは同時Ｄカット加工が正常に行えない。実施例２は、メインセットとサブセットで工具諸元（工具長や工具径）が異なっていても正常な加工が行なえる実施例を示すものである。【００５０】
実施例２の場合も、実施例１の時と同様に、仮想Ｙ軸加工の事前の準備として、主軸を速度ループ制御から位置ループ制御であるＣ軸制御モードに切り換えておくことが必要で、またサブセットはメインセット用に指令されたプログラム値を用いて仮想平面計算、補間計算や座標変換を行い、Ｘ軸データをＸ２軸へ、メインセットのＸ軸データはＸ１軸へ、Ｈ軸データはＨ１軸、Ｈ２軸及びＣ軸に入力することによって、タレット１、タレット２及びＣ軸の動作は同期して作動し、同時Ｄカット加工が実行される。
図１に示す機械でダブルＤカット加工を行うには、加工に先立って、工具方向と仮想平面Ｘ軸方向を平行にする（各系統毎にＧ０Ｘｘ１Ｃ０Ｈ０；またはＧ０Ｘｘ１Ｈ０；を指令する）。この指令によりＣ軸中心からＸ軸方向にｘ１離れた位置に工具先端（中心）が位置決めされ、Ｃ軸とＨ軸は０度に位置決めされる。【００５１】
メイン、サブ両セットについて前記指令を実行した上で、メインセット（系統１  ＄１）の加工プログラムで仮想Ｙ軸補間モード指令（ここでは例えばＭ３７とする）を指令して仮想Ｙ軸補間モードを確立し、且つＸ、Ｙの２軸で２軸補間を行うためのＸＹ平面を選択するＧ１７を指令し、更にメインセットとサブセット（系統２  ＄２）とを同期待ち合わせさせる指令（例えば「！」指令を用い、メインセットに「！２」、サブセットに「！１」を指令すれば、メインセットとサブセットとが同期待ち合わせすることになる）をする。
なお、これらの指令は、図１のプログラム例に示すように、先ずＸ、Ｙの２軸で２軸補間を行うためのＸＹ平面を選択するＧ１７指令、仮想Ｙ軸補間モードを確立する仮想Ｙ軸補間モード指令（Ｍ３７）を指令の後、工具方向と仮想平面Ｘ軸方向を平行にする指令（Ｇ０Ｘｘ１Ｃ０Ｈ０）を指令してもよい。
続いて同時Ｄカット制御モード指令（ここでは仮の指令としてメインセットのＨ１軸データでサブセットのＨ２軸を制御するために、新たに定義した例えばＧ１２４Ｈ２＝Ｈ１；）を与える。但し、Ｈ軸の主従関係については工具の組合せにより異なってくるので、後で変更されることもある。【００５２】
この実施例２は、例えば図３に示すように、タレット２にはタレット１と工具径が同じであるが、工具長の長い工具がセットされているケースであるため、この状態で加工開始位置（仮想Ｙ軸の座標値）への位置決め指令を行ない、夫々の系統で工具補正された工具中心位置を計算すると、図示しないが、Ｈ１，Ｈ２軸の角度が異なり、Ｈ１，Ｈ２軸回転中心とワーク中心の距離も整合が取れなくなる。つまり、二つの工具長がＴ２＞Ｔ１の関係にあるので、各系統を独立して仮想Ｙ軸の加工開始位置に工具刃先を合わせると、タレット回転軸Ｈ１とＨ２の振り角がｈ１＞ｈ２となり、Ｈ１，Ｈ２，Ｃ軸を同一時間で同期して回転させることができない。従ってこのまま加工を続行するとダブルＤカットの両面が非平行・非対称な仕上がり面となり、正しい加工は行なえない。【００５３】
前記工具条件で正常な加工が行なえるようにするためには、両タレットの振り角を一致させ、夫々を同時に移動開始させ、移動終了させる必要がある。このようにすることにより、双方の工具中心の移動量ｙ１，ｙ２が異なってもワーク直径方向の両端を削り落とす加工であれば、目的の加工を行うことができる。
このための手順として、最初の工具補正付位置決め指令の演算を行なった時点で両タレットの振り角ｈ１，ｈ２を比較し、大きい角度（この例ではｈ１）に合うように他方（Ｈ２軸）の工具中心位置及びタレット回転（Ｈ）軸の中心位置を再計算し、両タレット軸の工具軸線が平行になるように修正する。
前記ｈ１、ｈ２の比較は図８のタレット軸演算基準判定手段５８で行なわれ、ｈ１＜ｈ２の場合は図８の再計算制御処理手段Ａ５９によって図９のＳｔｅｐ１７に対応する処理を行ない、ｈ１＞ｈ２の場合は同じく図８の再計算制御処理手段Ｂ６０によって図９のＳｔｅｐ１８に対応する処理を行なうことにより、両タレット軸の工具軸線を平行にできる。【００５４】
前記角度ｈ１に合うように再計算されるＨ２軸中心位置は、タレット１の振り角、タレット２の工具長Ｌ２が既知情報として存在するので、これらから求められる。また、これから求まる仮想Ｙ軸上に於ける移動量ｙ２とｙ１の大小比較を行い、大きい移動量の軸（ここではＨ２）についてｙ２，ｈ２を指令速度Ｆを用いて補間を行ない、小さい移動量の軸（Ｈ１）についてはｙ１，ｈ１を〔Ｆ×ｙ１／ｙ２〕の速度で補間を行う。これは大きさの異なるｙ１とｙ２を同一時間で移動完了させなければならないが、小さい移動量の軸（Ｈ１）について指令速度Ｆで補間した場合、Ｈ１軸とＨ２軸が同じ角速度で同期回転するとｙ２を移動する切削速度がｙ２／ｙ１倍に速くなり、正常に切削できない可能性がある等、加工に支障をきたす虞があるためである。【００５５】
なお図４（工具径が異なる場合の一例）、図５（工具径及び工具長が夫々で異なる場合の一例）に於いても、図３（工具長が異なる場合の一例）の場合と同様に、ｈ１とｈ２の角度を等しくして工具補正込みで再計算した場合の移動量ｙ１とｙ２を比較し、大きい移動量の方に指令速度を適用して補間演算を行う。Ｈ軸の駆動は大きい移動量側を基準とし、小さい移動量側を同期させて駆動する。【００５６】
図８はこの発明の実施例２によるＮＣ装置の構成の一例を示すブロック図で、実施例１に示すＮＣ装置の仮想Ｙ軸制御処理部５２ｂに、タレット軸演算基準判定手段５８、再計算制御処理手段Ａ５９及び再計算制御処理手段Ｂ６０が、追加されている。なおその他の構成は、実施例１のＮＣ装置と同様である。【００５７】
図９は実施例２のＮＣ装置による二つの異なる工具を用いて同時Ｄカット加工が行なえる、加工プログラムの処理の一例を示すフローチャートである。
Ｓｔｅｐ１１で加工プログラムを読み込み、Ｓｔｅｐ１２で仮想Ｙ軸に関するプログラム命令の解読処理を行い、所定の処理プログラムを実行する。主な命令としては実施例１と同じく仮想Ｙ軸補間モードオン／オフ（Ｍ３７／Ｍ３８）、このＭ３７により仮想ＸＹ軸平面での補間演算を可能とし、通常の旋盤としてのＸＺ平面による加工と、仮想Ｙ軸を用いた制御ができる加工とを選択する仮想Ｙ軸制御切換処理部を作動させる。また、Ｍ３７／Ｍ３８は外部出力され、ＰＬＣにより外部入力信号として再度ＮＣ装置に入力しているが、ＮＣ装置内部で切り換えるようにすることも可能である。【００５８】
また他の命令としては同時Ｄカット加工を行うためのＧ１２４指令がある。このＧ１２４に続けてＨ２＝Ｈ１を指定することによりＨ２軸はＨ１軸データにより駆動され、Ｈ１＝Ｈ２であれば逆にＨ１軸はＨ２軸データにより駆動される。Ｇ１２４に続けてＨ２またはＨ１のみを指定することによりこれらの命令はキャンセルされる。ここではＧ１２４Ｈ２＝Ｈ１；を実行し、Ｈ１軸を基準側に、Ｈ２を同期側に定義しておく。【００５９】
Ｓｔｅｐ１３では、Ｘ１／Ｙ１平面演算手段５３及びＸ２／Ｙ２平面演算手段５４が、Ｓｔｅｐ１１で読み込んだ加工プログラムの位置指令に基づいて、夫々のタレットに取り付けられた工具の補正データを用いてタレット１、タレット２の仮想ＸＹ平面上の現在位置ｐ１１，ｐ１２から指令位置ｐ２１，ｐ２２までの移動量（加工線分長）ｙ１，ｙ２、及び当該ｙ１，ｙ２に対応するタレット軸の角度ｈ１，ｈ２を計算する。尚、図３ではｐ１１，ｐ１２，ｐ２１，ｐ２２等はＤカットの切削面の始点・終点を指しているが、加工に伴って順次変化する相対的な記号であるので、フローチャート等での説明と必ずしも一致しているものではない。【００６０】
Ｓｔｅｐ１４では、タレット軸演算基準判定手段５８がＳｔｅｐ１３で計算された両タレット軸の振り角ｈ１とｈ２を比較する。比較結果がｈ１＝ｈ２であれば、夫々の仮想ＸＹ平面上での工具補正された工具中心位置である加工開始点ｐ１１、ｐ２１、終点ｐ１２、ｐ２２、線分長ｙ１、ｙ２、及びタレットの振り角度ｈ１、ｈ２を、メモリ４の共有エリア７に格納するとともに、Ｓｔｅｐ１６に分岐する。Ｓｔｅｐ１６では、ワークを二つの同一条件の工具で加工するのと同じであるので、Ｘ１／Ｙ１／Ｃ軸補間処理手段１８が、メモリ４の共有エリア７に格納されたデータを基に、基準側の系統の軸Ｘ１，Ｙ１，Ｈ１の移動量（仮想ＸＹ平面上の移動量ｙ１とタレット軸角度ｈ１）をプログラムされた指令速度Ｆで補間演算する。またＸ２／Ｙ２軸補間処理手段１９が、同期側の移動量Ｘ２，Ｙ２、Ｈ２の移動量（仮想ＸＹ平面上の移動量ｙ２とタレット軸角度ｈ２）を同様に指令速度Ｆで補間計算する。なおこの場合、Ｈ１軸が基準となるので、Ｈ２軸、Ｃ軸もＨ１軸データで回転駆動することになる（計算したＨ２軸データは使用しない）。【００６１】
Ｓｔｅｐ１５では、タレット軸演算基準判定手段５８がＳｔｅｐ１４でｈ１≠ｈ２と判定された値を更に大小判別する。ここでｈ１＞ｈ２でなければ（ｈ１＜ｈ２）“Ｎｏ”でＳｔｅｐ１７に分岐する。Ｓｔｅｐ１７では、再計算制御処理手段Ａ５９が角度の小さいｈ１がｈ２に一致するようにｐ１１，ｐ１２，ｙ１を再計算して求める。この結果はｙ１＞ｙ２となるので、更にｙ１，ｙ２，指令速度Ｆからサブセット側に適用する切削速度Ｆｂ＝Ｆ×ｙ２／ｙ１を求める。
そして、この再計算した加工開始点ｐ１１、終点ｐ１２、線分長ｙ１、切削速度Ｆｂ、及びＸ２／Ｙ２平面演算手段５４が計算した加工開始点ｐ２１、終点ｐ２２、線分長ｙ２、タレットの振り角度ｈ２（＝ｈ１）を、メモリ４の共有エリア７に格納する。【００６２】
またＸ１／Ｙ１／Ｃ軸補間処理手段１８が、メモリ４の共有エリア７に格納されたデータを基に、基準側の系統の軸Ｘ１，Ｙ１，Ｈ１の移動量（仮想ＸＹ平面上の移動量ｙ１とタレット軸角度ｈ１）をプログラムされた指令速度Ｆで補間演算する。またＸ２／Ｙ２軸補間処理手段１９が、同期側の移動量Ｘ２，Ｙ２、Ｈ２の移動量（仮想ＸＹ平面上の移動量ｙ２とタレット軸角度ｈ２）を新たに計算された切削速度Ｆｂで補間計算する。なおこの場合もＨ１軸が基準となるので、Ｈ２軸、Ｃ軸もＨ１軸データで回転駆動することになる（計算したＨ２軸データは使用しない）。【００６３】
Ｓｔｅｐ１５の大小判別でｈ１＞ｈ２と判定されるとＳｔｅｐ１８に分岐し、再計算制御処理手段Ｂ６０が角度の小さいｈ２がｈ１に一致するようにｐ２１，ｐ２２，ｙ２を再計算して求める。この結果はｙ１＜ｙ２となるので、更にｙ１，ｙ２，指令速度Ｆからメインセット側に適用する切削速度Ｆｂ＝Ｆ×ｙ１／ｙ２を求める。
そして、この再計算した加工開始点ｐ２１、終点ｐ２２、線分長ｙ２、切削速度Ｆｂ、及びＸ１／Ｙ１平面演算手段５３が計算した加工開始点ｐ１１、終点ｐ１２、線分長ｙ１、タレットの振り角度ｈ１（＝ｈ２）を、メモリ４の共有エリア７に格納する。【００６４】
またＸ１／Ｙ１／Ｃ軸補間処理手段１８が、メモリ４の共有エリア７に格納されたデータを基に、基準側の系統の軸Ｘ１，Ｙ１の移動量（仮想ＸＹ平面上の移動量ｙ１）を新たに計算された切削速度Ｆｂで補間演算する。またＸ２／Ｙ２軸補間処理手段１９が、同期側の移動量Ｘ２，Ｙ２、Ｈ２の移動量（仮想ＸＹ平面上の移動量ｙ２とタレット軸角度ｈ２）をプログラムされた指令速度Ｆで補間計算する。なおこの場合、Ｈ２軸が基準となるので、前記Ｇ１２４Ｈ２＝Ｈ１；に代えてＧ１２４Ｈ１＝Ｈ２；を実行し、Ｈ１軸、Ｃ軸をＨ２軸データで回転駆動するように配分モードを変更する（計算したＨ１軸データは使用しない）。【００６５】
Ｓｔｅｐ１６〜Ｓｔｅｐ１８の何れかの処理が終わるとＳｔｅｐ１９に進み、Ｘ１／Ｙ１→Ｘ１／Ｈ１座標演算手段５５及びＸ２／Ｙ２→Ｘ２／Ｈ２座標演算手段５６によって、前記仮想ＸＹ座標系上で求められた各ＸＹ軸の座標値を、実際に制御する実軸であるＸＨ平面に於ける座標値ｘ１，ｈ１，ｘ２，ｈ２に変換する。そしてＸＨ平面座標値に変換された実軸座標値を基に実軸移動量を計算して各軸のサーボ制御部３１〜３５に出力し、対応するモータ４１〜４５を駆動して、所望の加工を行うように機械を作動させる。
メインセットとサブセットで工具諸元（工具長や工具径）が異なっていても、以上の様な手順で加工プログラムを順次読み取って解析し、指定された寸法で表裏同時にＤカット加工が施され、従来の半分の時間で加工を終えることができる。【００６６】
尚、表裏同時Ｄカット加工の加工プログラムでは夫々の面のＤカットの形状は同じであるので、前述したように形状プログラムは第１系統にのみ指令し、第２系統の軸の形状データは第１系統のプログラム値を利用する。実際の同時Ｄカット加工や第１系統や第２系統における他の加工作業の開始や終了等との時間的な関係は、同期待ち合わせ指令等（例えば「！」指令）を用いることによって制御される。【００６７】
また、前記実施例２において、加工プログラムからの指令速度Ｆ及び計算した指令速度Ｆｂを、メインセット及びサブセットのいずれに与えるかの判断に、計算したタレット軸の角度ｈ１、ｈ２を比較し、この比較結果を用いているが、計算された移動量ｙ１、ｙ２はタレット軸の角度ｈ１、ｈ２にほぼ対応するため、つまりｈ１＞ｈ２の状態であればｙ１＜ｙ２、ｈ１＜ｈ２の状態であればｙ１＞ｙ２の関係にあるため、移動量ｙ１、ｙ２の比較結果を用いてもよい。
即ち、ｙ１＜ｙ２であればｙ２側のセットに加工プログラムからの指令速度Ｆを、またｙ１のセットに計算した指令速度Ｆｂを与え、またｙ１＞ｙ２であれば、ｙ１のセットに加工プログラムからの指令速度Ｆを、またｙ２のセットに計算した指令速度Ｆｂを与えればよい。【００６８】
実施例３．
以下、この発明の実施例３について図１０〜図１３を用いて説明する。
図１０は同時円弧Ｄカット加工の動作例で、ここではメインセットとサブセットで工具諸元（工具長）が異なる例を示している。ここでもワークを把持したＣ軸を中心にしてメインセットとサブセットのタレット軸が対向して配置される。仮想Ｙ軸加工の事前の準備として、主軸を速度ループ制御から位置ループ制御であるＣ軸制御モードに切り換えておくことが必要なのは前記実施例と同じである。同時円弧Ｄカット加工に於いても実施例１と実施例２の様に、二つの工具の寸法諸元が同一の場合と異なる場合があるが、前者の処理手順を図１２、後者の処理手順を図１３のフローチャートを用いて後述する。
円弧Ｄカットとは前述したように、通常のＤカットではワークの円形断面の片側を直線で切り落とすが、これを凸または凹状の円弧に代表される曲線で切り落とすＤカットのことである（本明細書では区別を容易にするために（直線）Ｄカット、円弧Ｄカットと称している）。【００６９】
加工に先立って、工具方向と仮想平面Ｘ軸方向を平行にする（各系統毎にＧ０Ｘｘ１Ｈ０Ｃ０；またはＧ０Ｘｘ１Ｈ０；を指令する）。この指令によりＣ軸中心からＸ軸方向にｘ１離れた位置に工具先端（中心）が位置決めされ、Ｈ軸とＣ軸は０度に位置決めされる。【００７０】
図１１は実施例３によるＮＣ装置のブロック図であるが、基本的な構成や動作は実施例２と同じであるので、以下では主に実施例２と異なる円弧Ｄカット指令処理部１６及び第三の仮想Ｙ軸制御処理部５２ｃについて説明する。第三の仮想Ｙ軸制御処理部５２ｃは、再計算制御処理手段Ｃ６１、再計算制御処理手段Ｄ６２が、実施例２に於ける第二の仮想Ｙ軸制御処理部５２ｂの構成要件の再計算制御処理手段Ａ５９、再計算制御処理手段Ｂ６０と入れ替わり、また解析処理部１１に円弧同時Ｄカット指令処理手段１６が追加されている。【００７１】
仮想Ｙ軸補間モードが設定されると仮想Ｙ軸制御切換処理部５１により、補間処理部１７の出力が第二の仮想Ｙ軸制御処理部５２ｃに入力されるようになる。タレット軸演算基準判定手段５８はメモリ４内に格納されているメイン・サブ各平面に於ける計算値からタレットの振り角度ｈ１，ｈ２を読み出して大小判別を行ない（図１３のＳｔｅｐ１１４，１１５）、この結果に基づいて基準となるタレット軸を判定し、以下に示す何れかの演算処理方法を決定する。【００７２】
前記大小判別の結果二つの角度が等しければ基準軸はメインセット側となり、通常に補間計算を行い、Ｈ１軸出力データを用いてＨ２軸及びＣ軸を回転駆動する。前記大小判別の結果ｈ１＜ｈ２と判定された時はこのままでは正常な加工が行なえないので、図１３のＳｔｅｐ１１７に示す様に基準軸がサブ側になるように演算条件を変更して再計算を行い、Ｈ軸選択指令を実行し、Ｈ１軸出力データを用いてＨ２軸及びＣ軸を回転駆動する。逆に前記大小判別の結果ｈ１＞ｈ２と判定された時もこのままでは正常な加工が行なえないので、図１３のＳｔｅｐ１１８に示す様に基準軸をメイン側になるように演算条件を変更して再計算を行い、Ｈ軸選択指令を実行し、Ｈ２軸出力データを用いてＨ１軸及びＣ軸を回転駆動する。【００７３】
再計算制御処理手段Ｃ６１及び再計算制御処理手段Ｄ６２は、前記タレット軸演算基準判定手段５８で大小判別した結果、大小関係がある場合に行なわれる処理を実行するもので、再計算制御処理手段Ｃ６１は図１３のＳｔｅｐ１１７に対応する処理を、再計算制御処理手段Ｄ６２はＳｔｅｐ１１８に対応する処理を行う。これら一連の処理を行なって再計算制御処理を行ない、最終的には実軸の移動量に変換し、軸データ出力部１９を経由して各軸サーボ制御部に移動データを出力し、サーボモータを駆動する。
以上のように各部が作動することにより、メインセットとサブセットのタレットに装着されている夫々の工具の寸法諸元が異なっていても、実行前に両タレットの振り角が異なるか否かをチェックし、異なっておれば同一角度になるように再計算するので、両セットを同時に作動させても全軸の動作の整合が取れて正しく同時Ｄカット加工を行うことができる。【００７４】
次に円弧Ｄカット指令処理部１６の動作について説明する。ワーク上に平面ではなく、円弧等の曲面を加工して疑似Ｄカット加工を行ないたい時に指令されるプログラムブロックを解析する処理部である。円弧の指令の方法としては現在位置から見た終点と中心位置、回転方向を指定するもの、同様に終点と半径値、中心方向、回転方向を指定するもの、通過する３点を指定するもの等がある。図１０に示す例では前記３点指示に類似したもので、現在位置（またはワーク外周円とワーク中心からのＸ位置との交点）から見た終点と凹みの深さを指定している。この例ではＮ１０２でＧ０３（反時計回り）を指定しているが、通過３点指定であるのでＧ０２（時計回り）としても円弧指令か否かを判別するだけなので影響は無い。回転方向も指令コードとは無関係に一義的に決まる。当該処理部１６により当該ブロックの指令値から加工円弧半径と中心位置が逆算できる。また、この通過点３点指示方式であれば既知半径のワークに加工される円弧両端のワーク中心からの距離（Ｘ値）と凹みの深さ（Ｘ値）だけでも指令ができる。この方式であれば、図１０のＮ１０１の座標値を手計算しなくてもＮＣ装置内部で計算させて実行できるというメリットがある。
これらのデータより仮想ＸＹ平面上に指定された円弧軌跡を描くことができ、これから円弧補間により各制御点の座標値が演算できる。【００７５】
メイン、サブ両セットについて前記指令を実行した上で、メインセット（系統１）の加工プログラムで仮想Ｙ軸補間モード指令（ここでは例えばＭ３７とする）を指令して仮想Ｙ軸補間モードを確立し、且つＸ、Ｙの２軸で２軸補間を行うためのＸＹ平面を選択するＧ１７を指令する。続いて同時Ｄカット制御モード指令（ここでは仮の指令としてメインセットのＨ１軸データでサブセットのＨ２軸を制御するために、新たに定義した例えばＧ１２４Ｈ２＝Ｈ１；）を与える。但し、Ｈ軸の主従関係については工具の組合せにより異なってくるので、後で変更されることもある。この実施例３では図１０に示すケースを例にして説明する。このケースでは図に示すように、タレット２にはタレット１と工具径が同じであるが、工具長の長い工具がセットされている。【００７６】
この状態で加工開始位置（仮想Ｙ軸の座標値）への位置決め指令を行ない、夫々の系統で工具補正された工具中心位置を計算すると、図示しないが、Ｈ１，Ｈ２軸の角度が異なり、Ｈ１，Ｈ２軸回転中心とワーク中心の距離も整合が取れなくなる。つまり、二つの工具長がＬ２＞Ｌ１の関係にあるので、各系統を独立して仮想Ｙ軸の加工開始位置に工具刃先を合わせると、タレット回転軸Ｈ１とＨ２の振り角がｈ10＞ｈ20となり、Ｈ１，Ｈ２，Ｃ軸を同一時間で同期して回転させることができない。従ってこのまま加工を続行するとダブル円弧Ｄカットの両面の曲率が違った仕上がり面となり、正しい加工は行なえない。
但し、前記Ｈ１，Ｈ２軸の角度が異なり、Ｈ１，Ｈ２軸回転中心とワーク中心の距離も整合が取れなくなるという問題はＨ１，Ｈ２軸を独立して駆動し、実移動量の大きいタレット軸のＨ軸回転制御データでＣ軸を作動させることにより解決される。【００７７】
前記工具条件で正常な加工が行なえるようにするためには、両タレットの振り角を一致させ、夫々を同時に移動開始させ、移動終了させる必要がある。このようにすることにより、双方の工具中心の円弧始点ｐ１１，ｐ２１、終点ｐ１２，ｐ２２が異なってもワーク直径方向の両端を削り落とす加工であれば、目的とする加工を行うことができる。
このための手順として、最初の工具補正付位置決め指令の演算を行なった時点で両タレットの振り角ｈ10，ｈ20を比較し、大きい角度（この例ではｈ10）に合うように他方（Ｈ２軸）の工具中心位置及びタレット回転（Ｈ２）軸の中心位置を再計算し、両タレット軸の工具軸線が平行になるように修正する。【００７８】
前記角度ｈ10に合うように再計算されるＨ２軸中心位置は、加工円の半径と中心位置、タレット１の振り角、タレット２の工具長Ｌ２が既知情報として存在するので、これらから求められる。また、これから求まる仮想Ｙ軸上に於ける振り角ｈ10，ｈ20の大小比較を行い、大きい角度の軸（ここではＨ２）について円弧始点ｐ２１、終点ｐ２２、振り角ｈ20を指令速度Ｆを用いて補間を行ない、小さい振り角の軸（Ｈ１）については円弧始点ｐ１１、終点ｐ１２、ｈ10を〔Ｆ×ｈ10／ｈ20〕の速度で補間を行う。これは長さの異なる始点ｐ１１〜終点ｐ１２と始点ｐ２１〜終点ｐ２２、を同一時間で移動完了させなければならないが、小さい振り角の軸（Ｈ１）について指令速度Ｆで補間した場合、Ｈ２軸のｈ20を回動する回転速度がｈ20／ｈ10倍に速くなり、正常に切削できない可能性がある等、加工に支障をきたす虞があるためである。【００７９】
図１２は実施例３のＮＣ装置による、寸法諸元が同一の工具を使用する場合の加工プログラムの処理フローチャートの一例であるが、ワーク正面に円弧加工、つまり円弧によるＤカットを行うためのものであり、図６によるものと手順は略同一である。
尚、実施例１の時と同様に、サブセットはメインセット用に指令されたプログラム値を用いて仮想平面計算、円弧補間計算や実軸座標変換を行い、Ｘ軸データをＸ２軸へ、メインセットのＸ軸データはＸ１軸へ、Ｈ軸データはＨ１軸、Ｈ２軸及びＣ軸に入力することによって、タレット１、タレット２及びＣ軸の動作は同期して作動し、同時円弧Ｄカット加工が実行される。【００８０】
Ｓｔｅｐ１０１で加工プログラムを読み込み、Ｓｔｅｐ１０２で仮想Ｙ軸に関するプログラム命令を解読し、所定の処理プログラムを実行する。仮想Ｙ軸に関する命令としては仮想Ｙ軸補間モードオン／オフ、この実施例ではＭ３７／Ｍ３８をこれに充てる。このＭ３７により仮想ＸＹ軸平面での補間演算を可能とし、通常の旋盤としてのＸＺ平面による加工と、仮想Ｙ軸を用いた制御ができる加工とを選択する切換処理部を作動させる。また、Ｍ３７／Ｍ３８は外部出力され、ＰＬＣにより外部入力信号として再度ＮＣ装置に入力する方法を採用しているが、ＮＣ装置内部で切り換えるようにすることも可能である。【００８１】
また他の命令としては同時Ｄカット加工を行うために、Ｇ１２４という、Ｈ軸及びＣ軸指令の入力選択を行うＧ指令を新たに追加している。このＧ１２４に続けてＨ２＝Ｈ１を指定することによりＨ２軸はＨ１軸データにより駆動されると解釈し、Ｈ１＝Ｈ２であれば逆にＨ１軸はＨ２軸データにより駆動されると解釈することになる。Ｇ１２４に続けてＨ２またはＨ１のみを指定することによりこれらの命令はキャンセルされる。このＧコードも任意に設定できるものである。
同じ取り付けがされた二つの同じ工具で加工経路が等しい時はタレット回転角度と回転速度も同じであるので、ここでは基本的な指令としてＧ１２４Ｈ２＝Ｈ１；を実行し、Ｈ１軸を基準側に、Ｈ２を同期側に定義しておく。【００８２】
Ｓｔｅｐ１０３ではＳｔｅｐ１０１で読み込んだ加工プログラムの位置指令に基づいて、タレット１、タレット２の指令位置について仮想ＸＹ平面上の現在位置ｐ１１，ｐ１２から、工具補正を行なった指令位置ｐ２１，ｐ２２、加工円弧半径及び中心位置、タレット軸中心位置及び振り角ｈ10を計算する。尚、図１２ではｐ１１，ｐ１２，ｐ２１，ｐ２２等は円弧Ｄカットの切削面の始点・終点を指しているが、加工に従って順次変化する相対的な記号であるので、フローチャート等での説明と必ずしも一致しているものではない。【００８３】
Ｓｔｅｐ１０４ではＳｔｅｐ１０３で計算された仮想ＸＹ平面上の位置とタレット軸角度ｈ10をプログラムされた指令速度Ｆで円弧補間計算を行う。
Ｓｔｅｐ１０５では仮想ＸＹ座標系上の前記円弧補間計算値で、制御対象であるモータを駆動するために、実際に制御する実軸であるＸＨ平面上の座標値に変換する。【００８４】
Ｓｔｅｐ１０６では前記仮想ＸＹ座標値からＸＨ平面座標値に変換された実軸座標を基に実軸移動量を計算して各軸のサーボ制御部に出力し、対応するモータを駆動して所望の加工を行うように機械を作動させる。以上の様な手順で加工プログラムを順次読み取って解析し、指定された寸法で表裏同時に円弧Ｄカット加工が実行され、従来の半分の時間で加工を終えることができる。【００８５】
図１３は実施例３のＮＣ装置による二つの異なる工具を用いて同時円弧Ｄカット加工を行う、加工プログラムの処理の一例を示すフローチャートである。Ｓｔｅｐ１１１で加工プログラムを読み込み、Ｓｔｅｐ１１２で仮想Ｙ軸に関するプログラム命令の解読処理を行い、所定の処理プログラムを実行する。主な命令としては実施例１及び実施例２と同じく仮想Ｙ軸補間モードオン／オフ（Ｍ３７／Ｍ３８）、このＭ３７により仮想ＸＹ軸平面での補間演算を可能とし、通常の旋盤としてのＸＺ平面による加工と、仮想Ｙ軸を用いた制御ができる加工とを選択する仮想Ｙ軸制御切換処理部を作動させる。また、Ｍ３７／Ｍ３８は外部出力され、ＰＬＣにより外部入力信号として再度ＮＣ装置に入力しているが、ＮＣ装置内部で切り換えるようにすることも可能である。【００８６】
また他の命令としては同時Ｄカット加工の時と同様にＧ１２４指令がある。このＧ１２４に続けてＨ２＝Ｈ１を指定することによりＨ２軸はＨ１軸データにより駆動され、Ｈ１＝Ｈ２であれば逆にＨ１軸はＨ２軸データにより駆動される。Ｇ１２４に続けてＨ２またはＨ１のみを指定することによりこれらの命令はキャンセルされる。ここではＧ１２４Ｈ２＝Ｈ１；を実行し、Ｈ１軸を基準側に、Ｈ２を同期側に定義しておく。【００８７】
更に関連する命令としては円弧Ｄカット加工を行うための円弧指令がある。この円弧Ｄカット加工ではプログラムが簡単になるように、円弧を特定できる３点指定に似た、疑似３点指令を使用することとする。具体的には円弧始点に位置決め後、円弧指令であることを示すＧ０２またはＧ０３コードに、円弧始点のＹ軸座標値の極性を反転した終点座標値、始点と終点を結ぶ線から円弧の底までのＸ座標相対値を付加することで表すこととする。この方法であれば始点位置は手計算等に頼る必要も無く、ＮＣ装置内部で計算させることもできる。また、この円弧の両端位置は円（ワーク）と交差する直線（凹面の両端を結ぶ直線＝ワーク中心からの距離）の関係から、円弧半径と中心位置は前記凹面の底位置を加えることで容易に求めることができる。また、この方法は通過点の３点指示と同じなので、回転方向も指令コードとは無関係に一義的に決まる。これらは他の指令方法に代えることもできる。【００８８】
Ｓｔｅｐ１１３ではＳｔｅｐ１１１で読み込んだ加工プログラムの位置指令に基づいて、夫々のタレットに取り付けられた工具の補正データを用いてタレット１、タレット２の仮想ＸＹ平面上の現在位置ｐ１１，ｐ１２から指令位置ｐ２１，ｐ２２までの移動角度（振り角）であるｈ10，ｈ20を計算する。タレット軸角度は加工円弧の始点、終点位置及び工具長でタレット軸中心位置と共に決定される。尚、図１０ではｐ１１，ｐ１２，ｐ２１，ｐ２２等は円弧Ｄカットの切削面の始点・終点を指しているが、加工に伴って順次変化する相対的な記号であるので、フローチャート等での説明と必ずしも一致しているものではない。【００８９】
Ｓｔｅｐ１１４ではＳｔｅｐ１１３で計算された両タレット軸の振り角ｈ10とｈ20を比較する。比較結果がｈ10＝ｈ20であればＳｔｅｐ１１６に分岐する。Ｓｔｅｐ１１６では、ワークを二つの同一条件の工具で加工するのと同じであるので、基準側の系統の軸Ｘ１，Ｙ１，Ｈ１の移動量をプログラムされた指令速度Ｆで、同期側の移動量Ｘ２，Ｙ２，Ｈ２の移動量を同様に指令速度Ｆで円弧補間計算し、Ｈ２軸を除く対応する軸データとして用いる。更にＨ１軸が基準となるので、Ｈ２軸、Ｃ軸もＨ１軸データで回転駆動する。【００９０】
Ｓｔｅｐ１１５ではＳｔｅｐ１１４でｈ10≠ｈ20と判定された値を更に大小判別する。ここでｈ10＞ｈ20でなければ“Ｎｏ”（ｈ10＜ｈ20）でＳｔｅｐ１１７に分岐する。Ｓｔｅｐ１１７では角度の小さいｈ10がｈ20に一致するようにｐ１１’，ｐ１２’，θ11を再計算して求める。ｐ１１’，ｐ１２’は工具長Ｌ１×ｃｏｓ（ｈ10）をＸ座標値とする直線と加工円弧との交点で決まり、その時の加工円弧の角度θ11は前記ｐ１１’，ｐ１２’の座標値と加工円弧の半径から求めることができる。この結果はθ11＞θ20となるので、更にθ11，θ20，指令速度Ｆからサブセット側に適用する切削速度Ｆｂ＝Ｆ×θ20／θ11を求め、Ｆはメインセット側に夫々適用して円弧補間計算を行う。基準側の系統の軸Ｘ１，Ｙ１，Ｈ１の移動量をプログラムされた指令速度Ｆで、同期側の移動量Ｘ２，Ｙ２，Ｈ２の移動量を同様に新たに計算されたＦｂで円弧補間計算し、Ｈ２軸を除く対応する軸データとして用いる。この場合もＨ１軸が基準となるので、Ｈ２軸、Ｃ軸もＨ１軸データで回転駆動する。
ここで比較対象となる円弧長は円弧半径×角度（ｒａｄ）であるが、円弧半径は加工半径であり、表面、裏面で等しい。従って円弧Ｄカットに於ける始点位置と終点位置の差は角度に対応するが、直線Ｄカットに於いては仮想座標位置そのものの差となる。【００９１】
ここで、切削移動量に差がある場合、切削速度を変更しなくても制御動作としては特に問題は無いが、短い移動量を指令速度で切削した場合、長い移動量の方が実加工速度が速くなり、切削不能となることがある。こういったケースが発生しないように、長い移動量に指令速度を割り当て、短い移動量にはそれに比例した速度を求めて適用し、夫々の長さに応じた速度で切削を行うように再計算を行わせる。【００９２】
Ｓｔｅｐ１１５の大小判別でｈ10＞ｈ20と判定されるとＳｔｅｐ１１８に分岐し、角度の小さいｈ20がｈ10に一致するようにｐ２１，ｐ２２，θ21を再計算して求める。この結果はθ10＜θ21となるので、更にθ21，θ10，指令速度Ｆからメインセット側に適用する切削速度Ｆｂ＝Ｆ×θ10／θ21を求め、Ｆはサブセット側に夫々適用して円弧補間計算を行う。基準側となる系統の軸Ｘ２，Ｙ２，Ｈ２の移動量をプログラムされた指令速度Ｆで、同期側の移動量Ｘ１，Ｙ１，Ｈ１の移動量を同様に新たに計算されたＦｂで円弧補間計算し、Ｈ１軸を除く対応する軸データとして用いる。この場合はＨ２軸が基準となるので、前記Ｇ１２４Ｈ２＝Ｈ１；に代えてＧ１２４Ｈ１＝Ｈ２；を実行し、Ｈ１軸、Ｃ軸をＨ２軸データで回転駆動するように配分モードを変更する。【００９３】
Ｓｔｅｐ１１６〜Ｓｔｅｐ１１８の何れかの処理が終わるとＳｔｅｐ１１９に進み、前記仮想ＸＹ座標系上で求められた各ＸＹ軸の座標値を、実際に制御する実軸であるＸＨ平面に於ける座標値ｘ１，ｈ１，ｘ２，ｈ２に変換し、ＸＨ平面座標値に変換された実軸座標値を基に実軸移動量を計算して各軸のサーボ制御部に出力し、対応するモータを駆動して所望の加工を行うように機械を作動させる。以上の様な手順で加工プログラムを順次読み取って解析し、指定された寸法で表裏同時にＤカット加工が施され、従来の半分の時間で加工を終えることができる。【００９４】
尚、表裏同時Ｄカット加工の加工プログラムでは夫々の面の円弧Ｄカットの形状は同じであるので、前述したように形状プログラムは第１系統にのみ指令し、第２系統の軸の形状データは第１系統のプログラム値を利用する。実際の同時Ｄカット加工や第１系統や第２系統における他の加工作業の開始や終了等との時間的な関係は、同期待ち合わせ指令等を用いることによって制御される。【００９５】
なお、前記実施例では二つのタレット軸とＣ軸について、同期側タレットは基準タレット軸の作動データを用いて同じ角度を同期回転させるようにしているが、二つのタレット軸を独立して演算・制御し、異なる回転角度を同一時間内に同期回転駆動させる場合は、再計算を行う必要は無く、各セットのタレット軸駆動データによって行なえばよく、Ｃ軸駆動データは振り角の大きいタレット軸から得るという選択制御で対応できる。
【産業上の利用可能性】
【００９６】
この発明に係る数値制御装置は、一つのＣ軸に対して、Ｘ１軸、Ｚ１軸、第一のタレット軸（Ｈ１軸）から成るメインセットとＸ２軸、Ｚ２軸、第二のタレット軸（Ｈ２軸）から成るサブセットとを点対称に配置した機械を数値制御するのに適している。
【符号の説明】
【００９７】
６  加工プログラム、７  共有エリア、１１  解析処理部、１２  機械制御信号処理部、１３  ＰＬＣ、１４  仮想Ｙ軸補間モード信号処理手段、１５  同時Ｄカット指令処理手段、１６  円弧同時Ｄカット指令処理手段、１８  Ｘ１／Ｙ１／Ｃ軸補間処理部、１９  Ｘ２／Ｙ２軸補間処理部、２０  軸データ出力部、５１  仮想Ｙ軸制御切換処理部、５２ａ  第一の仮想Ｙ軸制御処理部、５２ｂ  第二の仮想Ｙ軸制御処理部、５２ｃ  第三の仮想Ｙ軸制御処理部、５３  Ｘ１／Ｙ１平面演算手段、５４  Ｘ２／Ｙ２平面演算手段、５５  Ｘ１／Ｙ１→Ｘ１／Ｈ１座標演算手段、５６  Ｘ２／Ｙ２→Ｘ２／Ｈ２座標演算手段、５７  Ｈ軸指令選択手段、５８  タレット軸演算基準判定手段、５９  再計算制御処理手段Ａ、６０  再計算制御処理手段Ｂ、６１  再計算制御処理手段Ｃ、６２  再計算制御処理手段Ｄ。
【図１】
2012172594.tif 000003
【図２】
2012172594.tif 000004
【図３】
2012172594.tif 000005
【図４】
2012172594.tif 000006
【図５】
2012172594.tif 000007
【図６】
2012172594.tif 000008
【図７】
2012172594.tif 000009
【図８】
2012172594.tif 000010
【図９】
2012172594.tif 000011
【図１０】
2012172594.tif 000012
【図１１】
2012172594.tif 000013
【図１２】
2012172594.tif 000014
【図１３】
2012172594.tif 000015
【図１４】
2012172594.tif 000016
【図１５】
2012172594.tif 000017
【国際調査報告】
2012172594.tif 000018
2012172594.tif 000019
2012172594.tif 000020
2012172594.tif 000021