(57)【特許請求の範囲】
【請求項１】
ＮＣプログラムで指令されるサイクル指令に基づいて、ワークに対して旋削加工を行う工作機械を制御する数値制御装置において、
前記工作機械は、
前記ワークを第１加工方向へ移動しながら旋削加工する第１工具と、
前記ワークを前記第１加工方向とは逆方向の第２加工方向へ移動しながら旋削加工する第２工具と、
前記数値制御装置の指令により、旋削加工に用いる工具を前記第１工具および前記第２工具の内の指令された工具へと切り換えて旋削加工可能な状態とする工具切り換え部と、
を備え、
前記数値制御装置は、前記サイクル指令に基づいて、前記工作機械に指令するサイクル動作を作成するサイクル動作作成部を備え、
前記サイクル動作は、前記第１工具による前記第１加工方向への旋削加工する第１動作と、前記工具切り換え部による前記第１工具から前記第２工具への切り換える第２動作と、前記第２工具による前記第２加工方向への旋削加工する第３動作と、前記工具切り換え部による前記第２工具から前記第１工具への切り換える第４動作とを含む往復旋削加工動作を繰り返す動作である、
ことを特徴とする数値制御装置。
【請求項２】
前記工具切り換え部は、
前記第１工具を装着した第１刃物台と、
前記第２工具を装着した第２刃物台と
前記第１刃物台および前記第２刃物台を、前記ワークを回転させる主軸の軸線を挟んで前記第１工具と前記第２工具とが略対向する配置で結合する結合部材と、
前記第１刃物台および前記第２刃物台を前記主軸の軸線と略垂直方向に駆動するモータと、から構成され、
前記第２動作は、前記第１工具を前記ワークから遠ざけることにより前記第２工具を前記ワークを加工する位置へと移動させる動作であり、
前記第４動作は、前記第２工具を前記ワークから遠ざけることにより前記第１工具を前記ワークを加工する位置へと移動させる動作である、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項３】
前記工具切り換え部は、
前記第１工具および前記第２工具を装着したタレットと、
前記タレットを駆動するモータと、
から構成され、
前記第２動作は、前記タレットを回転させることにより前記第２工具を割り出した後、前記第２工具を前記ワークを加工する位置へと移動させる動作であり、
前記第４動作は、前記タレットを回転させることにより前記第１工具を割り出した後、前記第１工具を前記ワークを加工する位置へと移動させる動作である、
ことを特徴とする請求項１に記載の数値制御装置。
【請求項４】
前記工具切り換え部は、
前記第１工具および前記第２工具を装着したくし形刃物台と、
前記くし形刃物台を駆動する駆動部と、
から構成され、
前記第２動作は、前記くし形刃物台を駆動することにより前記第２工具を割り出した後、前記第２工具を前記ワークを加工する位置へと移動させる動作であり、
前記第４動作は、前記くし形刃物台を駆動することにより前記第１工具を割り出した後、前記第１工具を前記ワークを加工する位置へと移動させる動作である、
ることを特徴とする請求項１に記載の数値制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、数値制御装置に関し、特に複合形固定サイクルによる旋削加工におけるサイクルタイムを短縮することを可能とする数値制御装置に関する。
【背景技術】
【０００２】
数値制御装置は、メモリに格納されている加工プログラムを読出し、該加工プログラムに従ってサーボモータおよびスピンドルモータを駆動させることにより工作機械を制御する。
数値制御装置における複合形固定サイクル指令は、ワーク加工パターンをプログラムし、そのワーク加工プログラムにより旋削加工を行う。サイクル動作として、図９に示すように、旋削加工の開始点（Ａ）の位置決め（１）、切削（２）、ワークからの逃げ動作（３）、そして再びワークの開始点の位置決め（４）を行い、以上をワークの加工終了まで、繰り返す。
【０００３】
このようなサイクル加工に関連する従来技術として、例えば特許文献１には「複合形固定サイクルの開始点経路短縮機能を有する数値制御装置」として、複合形固定サイクルにおいて、サイクルの切削完了位置から次のサイクルの切削開始位置へ直線経路を設定する処理を行い、複合形固定サイクル加工のサイクルタイム短縮を行う技術が開示されている。
【０００４】
また、例えば特許文献２には「軸状部材の加工方法」として、「第１工具および第２工具は、共通の工具ホルダに、各先端部が１８０°ずれた位置関係を有するように保持される。その後、第１工具および第２工具の各先端部が軸状部材の形成された構内に配置される。そして、軸状部材が中心軸線回りに回転されつつ、第１工具および第２工具の先端部が構内から中心軸線方向に移動されて、軸状部材の外周面が第１工具および第２工具よって切削（旋削）される。」ことを特徴とする旋削の技術が開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１５−０１１６６９号公報
【特許文献２】特開２０１４−１９５８５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、図９に示す旋削加工の動作は、旋削加工の方向が一方向であるため、１サイクルの旋削加工終了後、次回のサイクルの旋削加工を行うために工具を旋削加工の開始点に戻す必要がある。この開始点に戻る動作のため、旋削加工に無関係な時間がかかり、その分サイクルタイムが長くなるという課題がある。
【０００７】
実際に、特許文献１に開示される技術では、ある程度のサイクルタイムの改善には貢献はしているものの、旋削加工方向が一方向で行うことには変わりはなく、さらに切り込む時には、旋削した距離を戻ってから、次の旋削加工を行うため、戻る時間が必ずかかるという課題が残っている。
【０００８】
また、特許文献２に開示される技術においても、２つの工具が同一方向に移動し旋削するので、旋削加工方向が一方向で行うことに変わりはなく、更に切り込む時には旋削した距離を戻ってから次の旋削加工を行うので、当該技術においても、この戻る時間が必ずかかってしまうという課題がある。
【０００９】
そこで本発明の目的は、複合形固定サイクルによる旋削加工におけるサイクルタイムを短縮することを可能とする数値制御装置を提供することである。
【課題を解決するための手段】
【００１０】
本願の請求項１に係る発明は、ＮＣプログラムで指令されるサイクル指令に基づいて、ワークに対して旋削加工を行う工作機械を制御する数値制御装置において、前記工作機械は、前記ワークを第１加工方向へ移動しながら旋削加工する第１工具と、前記ワークを前記第１加工方向とは逆方向の第２加工方向へ移動しながら旋削加工する第２工具と、前記数値制御装置の指令により、旋削加工に用いる工具を前記第１工具および前記第２工具の内の指令された工具へと切り換えて旋削加工可能な状態とする工具切り換え部と、を備え、前記数値制御装置は、前記サイクル指令に基づいて、前記工作機械に指令するサイクル動作を作成するサイクル動作作成部を備え、前記サイクル動作は、前記第１工具による前記第１加工方向への旋削加工する第１動作と、前記工具切り換え部による前記第１工具から前記第２工具への切り換える第２動作と、前記第２工具による前記第２加工方向への旋削加工する第３動作と、前記工具切り換え部による前記第２工具から前記第１工具への切り換える第４動作とを含む往復旋削加工動作を繰り返す動作である、ことを特徴とする数値制御装置である。
【００１１】
本願の請求項２に係る発明は、前記工具切り換え部は、前記第１工具を装着した第１刃物台と、前記第２工具を装着した第２刃物台と、前記第１刃物台および前記第２刃物台を、前記ワークを回転させる主軸の軸線を挟んで前記第１工具と前記第２工具とが略対向する配置で結合する結合部材と、前記第１刃物台および前記第２刃物台を前記主軸の軸線と略垂直方向に駆動するモータと、から構成され、前記第２動作は、前記第１工具を前記ワークから遠ざけることにより前記第２工具を前記ワークを加工する位置へと移動させる動作であり、前記第４動作は、前記第２工具を前記ワークから遠ざけることにより前記第１工具を前記ワークを加工する位置へと移動させる動作である、ことを特徴とする請求項１に記載の数値制御装置である。
【００１２】
本願の請求項３に係る発明は、前記工具切り換え部は、前記第１工具および前記第２工具を装着したタレットと、前記タレットを駆動するモータと、から構成され、前記第２動作は、前記タレットを回転させることにより前記第２工具を割り出した後、前記第２工具を前記ワークを加工する位置へと移動させる動作であり、前記第４動作は、前記タレットを回転させることにより前記第１工具を割り出した後、前記第１工具を前記ワークを加工する位置へと移動させる動作である、ことを特徴とする請求項１に記載の数値制御装置である。
【００１３】
本願の請求項４に係る発明は、前記工具切り換え部は、前記第１工具および前記第２工具を装着したくし形刃物台と、前記くし形刃物台を駆動する駆動部と、から構成され、前記第２動作は、前記くし形刃物台を駆動することにより前記第２工具を割り出した後、前記第２工具を前記ワークを加工する位置へと移動させる動作であり、前記第４動作は、前記くし形刃物台を駆動することにより前記第１工具を割り出した後、前記第１工具を前記ワークを加工する位置へと移動させる動作である、ことを特徴とする請求項１に記載の数値制御装置である。
【発明の効果】
【００１４】
本発明により、工具の移動を必要最小限に抑えることができるため、サイクルタイムが短縮され、サイクルタイムを短縮されることによって生産性の向上が期待できる。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態１における数値制御装置が制御する工作機械の概略図である。
【図２】本発明の実施形態１における数値制御装置により制御されるサイクル動作の概要を説明する図である。
【図３】本発明の実施形態１における数値制御装置の要部ブロック図である。
【図４】本発明の実施形態１における数値制御装置により制御されるサイクル動作における軸移動量を説明する図である。
【図５】本発明に実施形態１における数値制御装置上で実行される処理のフローチャートである。
【図６】本発明の実施形態２における数値制御装置により制御されるサイクル動作の概要を説明する図である。
【図７】本発明に実施形態２における数値制御装置上で実行される処理のフローチャートである。
【図８】本発明の他の実施形態における数値制御装置により制御されるサイクル動作の概要を説明する図である。
【図９】従来技術におけるサイクル加工の制御動作を説明する図である。
【発明を実施するための形態】
【００１６】
以下、本発明の実施の形態を図面と共に説明する。
＜実施形態１＞
本実施形態では、図１に示すように、工具ａ，ｂがそれぞれ装着されている複数の刃物台を、工具ａ，ｂが対向するように配置して結合部材により結合した刃物台を備えた工作機械を使用する。この工作機械は、工具ａ，ｂを用いて複合形固定サイクルの旋削加工を一方向でなく往復で行うものであり、対向している刃物台を結合部材により結合しているので、工具ａによる旋削加工が済んで、旋削加工していた工具ａが逃げた時、反対側の工具ｂで旋削加工を逆方向に行うことができる。
図１に示した工作機械を用いた旋削加工の手順を、図２を用いて説明する。
【００１７】
●手順１：工具ａの現在位置とワークを加工するための１回分の切り込み量から求めた移動量を工具ａに指令し、工具ａがその移動量分、早送り速度でワークへ接近中（図２（１））に、反対側の工具ｂが同時に工具ａへの指令により同じ移動量分、早送り速度でワークから離れる（図２（１）’）。この動作により図９におけるサイクル動作（１）と動作（３）が同時に行われるので、サイクルタイムが短縮される。
【００１８】
●手順２：工具ａにプログラムで指令されているワークを加工する始点から終点間の距離を指令し、その指令距離内を切削速度で旋削加工中（図２（２））に、反対側の工具ｂが同時に工具ａへの指令により同じ移動量分、切削速度で移動する（図２（２）’）。この動作により、図９の動作（２）と動作（４）が同時に行われるので、サイクルタイムが短縮される。
【００１９】
●手順３：ワークを加工するための１回分の切り込み量と、工具ａと工具ｂの刃先間の距離から加工開始点と切り込み量の差分を引いた値を合計した移動量を工具ａに指令し、工具ｂがその移動量分、早送り速度でワークへ接近中（図２（３）’）に、反対側の工具ａが同時に同じ移動量分、早送り速度でワークから離れる（図２（３））。この動作により図９の動作（１）と動作（３）が同時に行われるので、サイクルタイムが短縮される。
【００２０】
●手順４：工具ａにプログラムで指令されているワークを加工する終点から始点間の距離を指令し、工具ａへの指令により工具ｂがその指令距離内を切削速度で旋削加工中（図２（４）’）に、反対側の工具ａが同時に同じ移動量分、切削速度で移動する（図２（４））。この動作により図９の動作（２）と動作（４）が同時に行われるので、サイクルタイムが短縮される。
【００２１】
図３は、図２に示した複合形固定サイクルの往復旋削の手順を工作機械に動作させる制御を行う本発明の一実施形態における数値制御装置の要部ブロック図である。数値制御装置１は、メモリ１０、指令解析部１１、サイクル動作作成部１２、補間処理部１３、座標更新部１４、加減速処理部１５を備える。
【００２２】
メモリ１０には、ワークを加工するために作成されたＮＣプログラムが記憶されており、後述する指令解析部１１により読み取りできるようになっている。
指令解析部１１は、メモリ１０からＮＣプログラムを読み出して解析し、読み出した指令が通常の加工指令である場合には該指令により指令される指令値と、該指令により制御される軸の現在位置とから、該軸の移動量に係るデータを作成して補間処理部へ出力し、一方で、読み出した指令がサイクル加工指令である場合には、サイクル動作作成部１２にサイクル動作の移動量に係るデータを作成するように指令し、サイクル動作作成部１２が作成したデータを補間処理部へ出力する。
【００２３】
サイクル動作作成部１２は、指令解析部１１により読み出された指令がサイクル加工指令である場合、該サイクル加工指令を解析し、該サイクル加工指令により制御される軸をサイクル動作させるための移動量に係るデータを作成し、指令解析部１１へと出力する。
【００２４】
補間処理部１３は、指令解析部１１から受けた移動量に係るデータと加工指令により指令された速度指令値とにより、単位周期時間あたりの補間データ（パルス）を作成する。
座標更新部１４は、補間処理部１３が作成した補間データ（パルス）に基づいて、数値制御装置１で表示している座標を更新する。
加減速処理部１５は、サーボモータの動きを円滑にするために、補間処理部１３が作成した補間データ（パルス）をサーボモータ２０に転送する前に、加速または、減速をかける。
【００２５】
このようにして数値制御装置１からサーボモータ２０に対してパルスが出力され、該出力されたパルスによりサーボモータ２０が駆動する。そして、サーボモータ２０の駆動がボールねじ等の機械機構である機械制御部２１を介して伝達され、工作機械が動作する。
以下では、図３に示した数値制御装置１による複合形固定サイクル制御の例を示す。
【００２６】
本実施形態では、図１で示した刃物台を備えた工作機械を数値制御装置１で制御し、複合形固定サイクルの旋削加工を一方向でなく、往復で行う例を示す。図１に示した刃物台を備えた工作機械では、装着されている刃物が対向するように配置されている刃物台が結合されているので、一方向の旋削加工が済んで、旋削加工していた工具が逃げた時、反対側の工具で旋削加工を逆方向に行うことができる。
【００２７】
本実施形態では、図１に示す刃物台を備えた工作機械の制御をＮＣプログラムで行うためのサイクル加工指令の一例として、以下に示すフォーマットのＧコード指令（Ｇ９００）を導入する。本実施形態で導入するサイクル加工指令は、工具ａに対する指令として解析される。
Ｇ９００  Ｘ＿  Ｚ＿  Ｕ＿  Ｌ＿  Ｆ＿；
Ｘ＿，Ｚ＿：  切削終了点Ａ’の座標値
Ｕ＿：  一回あたりの切り込み量
Ｌ＿：  工具ａと工具ｂの刃先間の距離
Ｆ＿：  切削送り速度
【００２８】
図４は、上記サイクル加工指令により指令された値に基づいて、図１に示す工作機械を制御する際に、サイクル動作作成部１２が算出する各動作の移動量データの算出方法を説明する図である。ここで、旋削を開始してからの旋削加工のサイクル回数をｎ（初回はｎ＝１となり工具ａによる旋削加工から開始される）とし、また、指令された時点での工具ａの位置、即ちワークを切り込む前の開始点Ａの座標値をＡ（Ｘ）、Ａ（Ｚ）とした場合において、図４に示す工具の動作（１）〜動作（５）における軸（サーボモータ）の各移動量は以下の数１式により算出される。
【００２９】
【数１】
0006259412.tif 000002
【００３０】
ここで、動作３の移動量を算出する数１式（３）における項（Ｌ−（（Ａ（Ｘ）−（Ｕ×ｎ））×２））は、工具ｂからワークへの距離を、工具ａと工具ｂの刃先間の距離Ｌから、切り込み時のＸ軸の移動量（Ｚ軸を挟んで等しい距離なので２倍）を引いて算出したものである。
【００３１】
なお、サイクル動作作成部１２は、サイクル加工の終盤における切り込み量を上記サイクル加工指令により指令される切込み量以下に調整して、最終的に工具ａが切削終了点Ａ’の座標値に到達する、又は工具ｂのＸ座標値が切削終了点Ａ’をＺ軸に対して対称となる位置に移動した点のＸ座標値に到達するような移動量データを作成する。
【００３２】
図４における開始点Ａに工具ａを位置決めした後、上記サイクル加工指令により旋削加工を指令すると、本実施形態の数値制御装置は、数１式で算出した各移動量に基づいて、以下の手順で旋削加工をするように工作機械の制御を開始する。
【００３３】
●手順１：ＮＣプログラムで指令された値に基づいて、数１式（１）を用いて工具ａの旋削加工のＸ軸の開始位置への移動量を求め、求めた移動量の分だけ工具ａを早送り速度でワークに接近するように制御する（動作（１））。同時に、反対側にある工具ｂが工具ａへの指令により同じ移動量分、早送り速度でワークから離れる（動作（１）’）。
【００３４】
●手順２：ＮＣプログラムで指令された値に基づいて、数１式（２）を用いて工具ａの旋削加工中のＺ軸の移動量を求め、求めた移動量分だけ工具ａを切削送り速度で移動させ、旋削加工を行うように制御する（動作（２））。同時に、反対側にある工具ｂは、工具ａへの指令により同じ移動量分、切削速度で移動する。該制御により、工具ｂは次の加工のため、ワークに接近する前の位置に移動する（動作（２）’）。
【００３５】
●手順３：ＮＣプログラムで指令された値に基づいて、数１式（３）を用いて工具ｂの旋削加工のＸ軸の開始位置への移動量を求め、求めた移動量の分だけ工具ａを早送り速度でワークから離れるように制御する（動作（３））。同時に、反対側にある工具ｂは、工具ａへの指令により同じ移動量の分だけ、早送り速度でワークに接近する（動作（３）’）。
【００３６】
●手順４：ＮＣプログラムで指令された値に基づいて、数１式（４）を用いて工具ｂの旋削加工中のＺ軸の移動量を求め、求めた移動量分だけ工具ａを切削送り速度で移動するよう制御する（動作（４））。同時に、反対側にある工具ｂは、工具ａへの指令により同じ移動量の分だけ切削送り速度で移動し、旋削加工が行われる（動作（４）’）。
【００３７】
●手順５：ＮＣプログラムで指令された値に基づいて、数１式（５）を用いて工具ａの現在位置から旋削加工の開始位置への移動量を求め、求めた移動量分だけ工具ａを早送り速度でワークに接近するように制御する（動作（５），動作（１））。同時に、反対側にある工具ｂが工具ａへの指令により同じ移動量分、早送り速度でワークから離れる（動作（５）’，動作（１）’）。
【００３８】
そして、以降は上記手順２〜手順５までを、工具ａが切削終了点Ａ’の位置に到達して旋削加工が終了するまで繰り返す。
図５は、本実施形態の数値制御装置１上で実行される上記手順のフローチャートである。本処理は、指令解析部１１によりワーク加工用のＮＣプログラムからサイクル加工指令（Ｇ９００）が読み出された場合に実行される。
【００３９】
●［ステップＳＡ０１］読み出されたサイクル加工指令を解析する。また、切り込み回数ｎを１に初期化する。
●［ステップＳＡ０２］切り込み回数ｎが１であるか否かを判定する。切り込み回数ｎが１である場合にはステップＳＡ０３へ進み、そうでない場合にはステップＳＡ０４へ進む。
【００４０】
●［ステップＳＡ０３］ステップＳＡ０１で解析したサイクル加工指令により指令される値に基づいて、数１式（１）を用いて工具ａをワークへ接近させるための移動量を算出する。
●［ステップＳＡ０４］ステップＳＡ０１で解析したサイクル加工指令により指令される値に基づいて、数１式（５）を用いて工具ａをワークへ接近させるための移動量を算出する。
●［ステップＳＡ０５］ステップＳＡ０３またはステップＳＡ０４で算出された移動量分だけ、工具ａを早送り速度でワークに接近する方向へ移動する制御を行う。この制御により、同時に反対側にある工具ｂが同じ移動量の分だけ早送り速度でワークから離れる方向へ移動する。
【００４１】
●［ステップＳＡ０６］ステップＳＡ０１で解析したサイクル加工指令により指令される値に基づいて、数１式（２）を用いて工具ａの旋削加工の移動量を算出する。
●［ステップＳＡ０７］ステップＳＡ０６で算出された移動量分だけ、工具ａを切削送り速度で移動して旋削加工を行うように制御する。この制御により、同時に反対側にある工具ｂが同じ移動量の分だけ切削送り速度で移動する。
●［ステップＳＡ０８］最後の加工が終了したか（切削終了点Ａ’の座標に到達したか）を判定する。最後の加工が終了した場合には本処理を終了し、終了していない場合にはステップＳＡ０９へ進む。
【００４２】
●［ステップＳＡ０９］ステップＳＡ０１で解析したサイクル加工指令により指令される値に基づいて、数１式（３）を用いて工具ｂをワークへ接近させるための移動量を算出する。
●［ステップＳＡ１０］ステップＳＡ０９で算出された移動量分だけ、工具ｂをワークへ接近させるために、該移動量の分だけ工具ａを早送り速度でワークから遠ざかる方向へ移動する制御を行う。この制御により、同時に反対側にある工具ｂが同じ移動量の分だけ早送り速度でワークへと接近する方向へ移動する。
【００４３】
●［ステップＳＡ１１］ステップＳＡ０１で解析したサイクル加工指令により指令される値に基づいて、数１式（４）を用いて工具ｂの旋削加工の移動量を算出する。
●［ステップＳＡ１２］ステップＳＡ１１で算出された移動量分だけ、工具ｂが切削送り速度で移動して旋削加工を行うように、該移動量の分だけ工具ａを切削送り速度で移動する制御を行う。この制御により、同時に反対側にある工具ｂが同じ移動量の分だけ切削送り速度で移動し旋削加工が行われる。
【００４４】
●［ステップＳＡ１３］最後の加工が終了したか（工具ｂの位置をＺ軸に対して対称となる位置に移動した点のＸ座標値が、切削終了点Ａ’のＸ座標値に到達したか）を判定する。最後の加工が終了した場合には本処理を終了し、終了していない場合にはステップＳＡ１４へ進む。
●［ステップＳＡ１４］切り込み回数ｎを２回分カウントアップし、ステップＳＡ０２へ戻る。
【００４５】
以上、説明したように、本実施形態の数値制御装置１は、図１に示す装着されている刃物が対向するように配置されている刃物台を備えた工作機械を、複合形固定サイクルの旋削加工を往復で行うように制御しているため、工具の移動を必要最小限に抑えることができ、複合形固定サイクルにおけるサイクルタイムを短縮することができる。
【００４６】
＜実施形態２＞
実施形態１では、本発明の数値制御装置により、図１に示すように装着されている刃物が対向するように配置されている刃物台を備えた工作機械を制御する例を説明した。本実施形態では、本発明の数値制御装置により、図６に示すような、タレットに装着した工具を備えた工作機械を制御する例を説明する。
【００４７】
本実施形態における数値制御装置の制御対象となる工作機械には、図６に示すように、旋削加工の方向が逆向きになるように工具ａ，ｂが装着された回転するタレットを備えており、該タレットは、工具ａで旋削加工を行う場合には図６（ａ）の回転位置に、工具ｂで旋削加工を行う場合には図６（ｂ）の回転位置に、それぞれ回転してクランプするように制御される。本実施形態の数値制御装置は、タレットのＸ−Ｚ座標位置と回転角度を制御することにより、複合形固定サイクルの旋削加工を、工具ａ，ｂを使用して往復で行うように工作機械を制御する。
【００４８】
本実施形態の数値制御装置による複合形固定サイクルの旋削加工を往復で行う動作を図６を用いて説明すると、最初に工具ａによる切削加工が可能な回転位置でタレットをクランプして工具ａの刃先を開始点Ａに位置決めしてワークに接近させ（図６（ａ）（１））、工具ａのＺ座標を切削終了点のＺ座標値まで移動させて旋削加工を行う（図６（ａ）（２））。
【００４９】
次に、図６（ａ）（２）の切削加工動作の終点においてタレットを回転させ、工具ｂを旋削加工に使用できる回転位置でクランプする（図６（ｂ））。その後、切り込み量の分だけ工具ｂをワークの方向へと移動させ（図６（ｂ）（３））、Ｚ軸方向において図６（ａ）（２）とは逆方向に工具ｂを移動させて旋削加工を行う（図６（ｂ）（４））。なお、図６の例では工具ａと工具ｂの工具長は同一である。
【００５０】
本実施形態では、図６に示す刃物台を備えた工作機械の制御をＮＣプログラムで行うためのサイクル加工指令として、以下に示すフォーマットのＧコード指令（Ｇ９００）を導入する。本実施形態で導入するサイクル加工指令は、工具ａに対する指令として解析される。
Ｇ９００  Ｘ＿  Ｚ＿  Ｕ＿  Ｆ＿；
Ｘ＿，Ｚ＿：  切削終了点Ａ’の座標値
Ｕ＿：  一回あたりの切り込み量
Ｆ＿：  切削送り速度
【００５１】
サイクル動作作成部１２は、上記サイクル加工指令により指令された値に基づいて、図６（ａ），図６（ｂ）に示す動作（１）〜動作（４）の送り動作の移動量を算出する。ここで、旋削を開始してからの旋削加工のサイクル回数をｎ（初回はｎ＝１となり工具ａによる旋削加工から開始される）とし、また、指令された時点での工具ａの位置、即ちワークを切り込む前の開始点Ａの座標値をＡ（Ｘ）、Ａ（Ｚ）とした場合において、図６に示す工具の動作（１）〜動作（４）における軸（サーボモータ）の各移動量は以下の数２式により算出される。
【００５２】
【数２】
0006259412.tif 000003
【００５３】
なお、サイクル動作作成部１２は、サイクル加工の終盤における切り込み量を上記サイクル加工指令により指令される切込み量以下に調整して、最終的に工具ａが切削終了点Ａ’の座標値に到達するような移動量データを作成する。
【００５４】
図６における開始点Ａに工具ａを位置決めした後、上記サイクル加工指令により旋削加工を指令すると、本実施形態の数値制御装置は、数２式で算出した各移動量に基づいて、以下の手順で旋削加工をするように工作機械の制御を開始する。
【００５５】
●手順１：ＮＣプログラムで指令された値に基づいて、数２式（１）を用いて工具ａの旋削加工のＸ軸の開始位置への移動量を求め、求めた移動量の分だけ工具ａを早送り速度でワークに接近するように制御する（動作（１））。
●手順２：ＮＣプログラムで指令された値に基づいて、数２式（２）を用いて工具ａの旋削加工中のＺ軸の移動量を求め、求めた移動量分だけ工具ａを切削送り速度で移動させ、旋削加工を行うように制御する（動作（２））。
●手順３：手順２においてＺ軸が旋削加工の切削終了点のＺ座標値に達したことを検知すると、タレットをアンクランプし、該タレットに接続している回転軸を工具ｂで旋削加工が可能な回転位置へと回転し、再度クランプするように制御する。
【００５６】
●手順４：ＮＣプログラムで指令された値に基づいて、数２式（３）を用いて工具ｂの旋削加工のＸ軸の開始位置への移動量を求め、求めた移動量の分だけ工具ｂを早送り速度でワークに接近するように制御する（動作（３））。
●手順５：ＮＣプログラムで指令された値に基づいて、数２式（４）を用いて工具ｂの旋削加工中のＺ軸の移動量を求め、求めた移動量分だけ工具ｂを切削送り速度で移動させ、旋削加工を行うように制御する（動作（４））。
●手順６：手順５においてＺ軸が旋削加工の開始点に達したことを検知すると、タレットをアンクランプし、該タレットに接続している回転軸を工具ａで旋削加工が可能な回転位置へと回転し、再度クランプするように制御する。
【００５７】
そして、以降は上記手順２〜手順６までを、旋削加工が終了するまで繰り返す。
図７は、本実施形態の数値制御装置１上で実行される上記手順のフローチャートである。本処理は、指令解析部１１によりワーク加工用のＮＣプログラムからサイクル加工指令（Ｇ９００）が読み出された場合に実行される。
●［ステップＳＢ０１］読み出されたサイクル加工指令を解析する。また、切り込み回数ｎを１に初期化する。
●［ステップＳＢ０２］ステップＳＢ０１で解析したサイクル加工指令により指令される値に基づいて、数２式（１）を用いて工具ａをワークへ接近させるための移動量を算出する。
●［ステップＳＢ０３］ステップＳＢ０２で算出された移動量分だけ、工具ａを早送り速度でワークに接近する方向へ移動する制御を行う。
【００５８】
●［ステップＳＢ０４］ステップＳＢ０１で解析したサイクル加工指令により指令される値に基づいて、数２式（２）を用いて工具ａの旋削加工の移動量を算出する。
●［ステップＳＢ０５］ステップＳＢ０４で算出された移動量分だけ、工具ａを切削送り速度で移動して旋削加工を行うように制御する。
●［ステップＳＢ０６］ステップＳＢ０５でＺ軸が旋削加工の切削終了点のＺ座標値に達したことを検知した場合、最後の加工が終了したか（切削終了点Ａ’の座標に到達したか）を判定する。最後の加工が終了した場合には本処理を終了し、終了していない場合にはステップＳＢ０７へ進む。
●［ステップＳＢ０７］タレットをアンクランプし、該タレットに接続している回転軸を工具ｂで旋削加工が可能な回転位置へと回転し、再度クランプするように制御する。
【００５９】
●［ステップＳＢ０８］ステップＳＢ０１で解析したサイクル加工指令により指令される値に基づいて、数２式（３）を用いて工具ｂをワークへ接近させるための移動量を算出する。
●［ステップＳＢ０９］ステップＳＢ０８で算出された移動量分だけ、工具ｂを早送り速度でワークに接近する方向へ移動する制御を行う。
【００６０】
●［ステップＳＢ１０］ステップＳＢ０１で解析したサイクル加工指令により指令される値に基づいて、数２式（４）を用いて工具ｂの旋削加工の移動量を算出する。
●［ステップＳＢ１１］ステップＳＢ１０で算出された移動量分だけ、工具ｂを切削送り速度で移動して旋削加工を行うように制御する。
●［ステップＳＢ１２］ステップＳＢ１１でＺ軸が旋削加工の開始点に達したことを検知すると、タレットをアンクランプし、該タレットに接続している回転軸を工具ａで旋削加工が可能な回転位置へと回転し、再度クランプするように制御する。
【００６１】
●［ステップＳＢ１３］最後の加工が終了したか（工具ｂのＸ座標値が、切削終了点Ａ’のＸ座標値に到達したか）を判定する。最後の加工が終了した場合には本処理を終了し、終了していない場合にはステップＳＢ１４へ進む。
●［ステップＳＢ１４］切り込み回数ｎを２回分カウントアップし、ステップＳＢ０２へ戻る。
【００６２】
以上、説明したように、本実施形態の数値制御装置１は、図６に示す旋削加工の方向が逆向きになるように工具ａ，ｂが装着された回転するタレットを備えた工作機械を、複合形固定サイクルの旋削加工を往復で行うように制御しているため、工具の移動を必要最小限に抑えることができ、複合形固定サイクルにおけるサイクルタイムを短縮することができる。
【００６３】
＜その他の実施形態＞
本発明は、実施形態１，２に示した以外にも２以上の工具を適切な位置に装着している工作機械を制御して実現することが可能となる。例えば、図８は、くし型刃物台に装着した工具ａ，ｂを用いて本発明を実現する例を示している。
【００６４】
図８に示す工作機械は、旋削加工の方向が逆向きになるように同一の工具長の工具ａと工具ｂを刃物台にくし形になる位置へ装着している。このような工作機械を制御して本発明を実現する場合には、図８（ａ）に示すように工具ａを開始点に位置決めした後、工具ａで旋削加工を行う。
【００６５】
工具ａによる旋削加工が終了後、Ｙ軸方向に刃物台を移動させて工具ｂにより逆方向に旋削加工を行うことで、実施形態１，２と同様に、複合形固定サイクルの旋削加工を、工具ａ，ｂを使用して往復で行うことが可能となる。
【００６６】
以上、本発明の実施の形態について説明したが、本発明は上述した実施の形態の例に限定されることなく、適宜の変更を加えることにより様々な態様で実施することができる。
例えば、実施形態１，２では、工具ａ，工具ｂの先端位置がＺ軸座標において一致するように刃物台またはタレットに装着しているが、各工具の先端位置がＺ軸座標において一致しない場合であっても、各工具の先端位置のＺ軸座標におけるずれを補正値として数値制御装置の設定領域に設定し、該補正値を用いて各動作における移動量を補正することにより上記ずれに対応することができる。また、各工具の工具長が異なる場合においても同様に、工具長の差に基づいて移動量を補正することで対応可能である。
【符号の説明】
【００６７】
１  数値制御装置
１０  メモリ
１１  指令解析部
１２  サイクル動作作成部
１３  補間処理部
１４  座標更新部
１５  加減速処理部
２０  サーボモータ
２１  機械制御部
【図１】
0006259412.tif 000004
【図２】
0006259412.tif 000005
【図３】
0006259412.tif 000006
【図４】
0006259412.tif 000007
【図５】
0006259412.tif 000008
【図６】
0006259412.tif 000009
【図７】
0006259412.tif 000010
【図８】
0006259412.tif 000011
【図９】
0006259412.tif 000012