(57)【要約】【課題】電子カムプログラムによる制御時においても周速一定制御を行うことを可能にし、それによって、加工効率を向上させることを可能にする工作機械の数値制御装置と工作機械の数値制御方法を提供すること。【解決手段】ＮＣプログラム記憶部と、ＮＣプログラムを電子カムデータに変換する電子カムデータ変換手段と、ＮＣプログラム中に周速度一定制御指令の有無を検出する周速度一定制御指令検出手段と、データの作成間隔を設定する基準軸間隔設定手段と、周速度一定制御指令が検出された場合に所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算する主軸回転数計算手段と、計算された主軸回転数に基づいて軸送り速度を計算する軸送り速度計算手段と、設定された間隔で得られた軸送り速度に基づいて軸位置の計算を行う軸位置データ演算手段とを具備したもの。【選択図】  図１
2004362104.tif 000002
【特許請求の範囲】
【請求項１】
素材を所望の形状に加工するために作成されたＮＣプログラムを記憶するＮＣプログラム記憶部と、
上記ＮＣプログラム記憶部に記憶されるＮＣプログラムを電子カムデータに変換する電子カムデータ変換手段と、
上記ＮＣプログラム記憶部に記憶されているＮＣプログラム中に、切削中の切削速度が概略一定になるような制御を行う周速度一定制御を実行する為の指令が有るか否かを検出する周速度一定制御指令検出手段と、
データの作成間隔を設定する基準軸間隔設定手段と、
上記周速度一定制御指令検出手段によって周速度一定制御指令が検出された場合に、所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算する主軸回転数計算手段と、
上記主軸回転数計算手段によって計算された主軸回転数に基づいて軸送り速度を計算する軸送り速度計算手段と、
上記基準軸間隔設定手段により設定された間隔で上記軸送り速度計算手段により得られた軸送り速度に基づいて軸位置の計算を行う軸位置データ演算手段と、
を具備したことを特徴とする工作機械の数値制御装置。
【請求項２】
請求項１記載の工作機械の数値制御装置において、
軸送り速度の限界値を計算する軸送り限界速度計算手段を備え、
上記軸位置データ演算手段は、上記限界速度計算手段によって計算された軸送り速度の限界値と上記軸送り速度計算手段によって計算された軸送り速度を比較して、軸送り速度の限界値を超えないように軸位置の計算を行うようにしたことを特徴とする工作機械の数値制御装置。
【請求項３】
請求項２記載の工作機械の数値制御装置において、
上記軸位置データ演算手段は、上記限界速度計算手段によって計算された軸送り速度の限界値と上記軸送り速度計算手段によって計算された軸送り速度を比較して、軸送り速度が軸送り速度の限界値より小さい場合には該軸送り速度を選択して軸位置の計算を行い、軸送り速度が軸送り速度の限界値より大きい場合には軸送り速度の限界値を選択して軸位置の計算を行うようにしたことを特徴とする工作機械の数値制御装置。
【請求項４】
請求項２又は請求項３記載の工作機械の数値制御装置において、
上記軸送り速度の限界値は軸駆動モータの性能によって決定されるものであることを特徴とする工作機械の数値制御装置。
【請求項５】
ＮＣプログラムを読み込むステップと、
上記ステップにて読み込んだＮＣプログラムを電子カムデータに変換するステップと、
を具備し、
上記電子カムデータに変換するステップは、
上記ＮＣプログラム中に、切削中の切削速度が概略一定になるような制御を行う周速度一定制御を実行する為の指令が有るか否かを検出するステップと、
データの作成間隔を設定するステップと、
上記周速度一定制御指令が検出された場合に、所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算するステップと、
上記ステップによって計算された主軸回転数に基づいて軸送り速度を計算するステップと、
上記データ作成間隔で上記軸送り速度に基づいて軸位置の計算を行うステップと、
を具備したことを特徴とする工作機械の数値制御方法。
【請求項６】
請求項５記載の工作機械の数値制御方法において、
軸送り速度の限界値を計算するステップと、
上記軸送り速度の限界値と計算された軸送り速度を比較して、軸送り速度の限界値を超えないように軸位置の計算を行うステップと、
をさらに具備したことを特徴とする工作機械の数値制御方法。
【請求項７】
請求項６記載の工作機械の数値制御方法において、
上記軸位置の計算を行うステップは、
上記軸送り速度の限界値と計算された軸送り速度を比較して、計算された軸送り速度が軸送り速度の限界値より小さい場合には該計算された軸送り速度を選択して軸位置の計算を行うステップと、
上記軸送り速度の限界値と計算された軸送り速度を比較して、計算された軸送り速度が軸送り速度の限界値より大きい場合には軸送り速度の限界値を選択して軸位置の計算を行うステップと、
から構成されていることを特徴とする工作機械の数値制御方法。
【請求項８】
請求項６又は請求項７記載の工作機械の数値制御方法において、
上記軸送り速度の限界値は軸駆動モータの性能によって決定されるものであることを特徴とする工作機械の数値制御方法。
【発明の詳細な説明】
【０００１】
【発明が属する技術分野】
本発明は工作機械の数値制御装置と工作機械の数値制御方法に係り、特に、電子カムプログラム制御による運転においても周速度を一定にする制御を行うことを可能にし、それによって、切削速度の一定化ひいては加工精度の向上を図ることができると共に、ＮＣプログラムから電子カムプログラムへの変換率を高めて加工効率を向上させることができるように工夫したものに関する。
【０００２】
【従来の技術】
例えば、工作機械に素材をセットしてバイト等の工具を利用して所望の形状に加工するに際して、数値制御プログラム（ＮＣプログラム）を作成し、該ＮＣプログラムによってバイト等の工具を含む各部を自動的に動作させ、それによって、所望形状の加工部品を得る数値制御工作機械が一般的に知られている。
【０００３】
上記のような加工部品を得るために作成されたＮＣプログラムそのものは、通常、数値制御工作機械上でも作成・修正可能であり、例えば、加工部品を試し削りした結果、加工部品が図面公差内に入っていない等の不具合がある場合には、機上にてその不具合をなくすための修正を行うことができるものであり、その結果、高い作業効率を提供することができるものである。
【０００４】
一方、ＮＣプログラムではなく電子カムプログラムを利用して、工作機械にセッテングされた素材から、所望の形状をバイト等の工具を利用して加工することが行われている。ここでいう電子カムプログラムを利用した制御とは、例えば、特許文献１に開示されているようなものである。
【０００５】
【特許文献１】
特開２００１−１７０８４３号公報
【０００６】
すなわち、上記特許文献１に開示されているように、基準軸に取りつけられたパルスエンコーダが出力するパルス信号により時々刻々の回転位置データと、基準軸の単位回転位置ごとに対応してそれぞれ設定された移動軸の指令位置データとから時々刻々の移動軸の指令データを生成する。この移動指令データと回転位置データとから回転物の回転速度に同期する移動軸の指令速度データを生成して、生成した移動指令データと指令速度データに基づいて工具の位置を制御するものである。そして、この種の電子カムプログラムを利用した数値制御工作機械では、主軸の累積回転角に対する工具又は被加工物夫々の位置データを定めるものであり、よって、ＮＣプログラムを利用するものに比べてより短時間、且つ、高精度にて加工を行うことができるという利点がある。
【０００７】
又、この種の電子カムプログラムは、通常、図面情報、指定された加工パス、加工工程、工具情報、ツーリング情報等を数値制御工作機械とは別個に設けられたパーソナルコンピュータ等にインストールされたＣＡＭソフト等に入力して作成していたが、ある種の変換ソフトを利用して、ＮＣプログラムを電子カムプログラムに変換することが考えられている。
【０００８】
【発明が解決しようとする課題】
上記従来の構成によると次のような問題があった。
すなわち、電子カムプログラムによって機械を動作させる場合において、いわゆる「周速度一定制御」を行うことができないという問題があった。その為、周速度一定制御を実行する場合には、一旦、ＮＣプログラム運転モードに戻して行う必要があった。
ここで、上記周速度一定制御に関して説明する。まず、切削加工時における切削速度（Ｖｃ）は次の式（Ｉ）により算出される。
Ｖｃ＝π・Ｄｍ・ｎ／１０００（ｍ／ｍｉｎ）―――（Ｉ）
但し、
Ｖｃ：切削速度
Ｄｍ：被切削材の直径（ｍｍ）
ｎ  ：主軸回転数（ｒｐｍ）
【０００９】
周速度一定制御とは、上記切削速度（Ｖｃ）がある一定値となるよう、被切削材の直径（Ｄｍ）に応じて主軸回転数（ｎ）を変化させる制御方法を意味している。
そして、ＮＣプログラムにおける周速度一定制御は、制御周期ごとに、被切削材の中心と指定された刃物軸の切削位置との距離より主軸回転数を計算し、主軸制御部へその計算値を指令することにより切削速度が一定となるよう制御するものである。
一方、電子カム制御においては、予めある時間間隔における各軸の位置を計算し、カーブテーブルデータを作成しておく必要がある。しかし通常主軸は予測制御ができないため指令に対する追従性が低く、その為予めある時間間隔ごとにおける主軸回転数を計算して、データ通りに主軸回転数を変化させることは困難である。また実際の主軸回転数変化が予めわからないため、刃物軸の位置を計算する際に、送り速度が予め指令された値Ｆ（ｍｍ／ｒｅｖ）になるように計算することができないという事情があった。
その為、既に説明したように、周速度一定制御を実行する場合には、一旦、ＮＣプログラム運転モードに戻して行っていたものであり、それが原因して、ＮＣプログラムから電子カムプログラムへの変換率が低くなり、加工効率を向上させる上で障害になっていた。
【００１０】
本発明はこのような点に基づいてなされたものでその目的とするところは、電子カムプログラムによる制御時においても周速度一定制御を行うことを可能にし、それによって、加工精度を向上させ、加工時間を短縮することを可能にすると共に、ＮＣプロムグラムから電子カムプログラムへの変換率を高めて加工効率の向上を図ることができる工作機械の数値制御装置と工作機械の数値制御方法を提供することにある。
【００１１】
【課題を解決するための手段】
上記目的を達成するべく本願発明の請求項１による工作機械の数値制御装置は、素材を所望の形状に加工するために作成されたＮＣプログラムを記憶するＮＣプログラム記憶部と、上記ＮＣプログラム記憶部に記憶されるＮＣプログラムを電子カムデータに変換する電子カムデータ変換手段と、上記ＮＣプログラム記憶部に記憶されているＮＣプログラム中に、切削中の切削速度が概略一定になるような制御を行う周速度一定制御を実行する為の指令が有るか否かを検出する周速度一定制御指令検出手段と、データの作成間隔を設定する基準軸間隔設定手段と、上記周速度一定制御指令検出手段によって周速度一定制御指令が検出された場合に、所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算する主軸回転数計算手段と、上記主軸回転数計算手段によって計算された主軸回転数に基づいて軸送り速度を計算する軸送り速度計算手段と、上記基準軸間隔設定手段により設定された間隔で上記軸送り速度計算手段により得られた軸送り速度に基づいて位置の計算を行う位置データ演算手段と、を具備したことを特徴とするものである。
又、請求項２による工作機械の数値制御装置は、求項１記載の工作機械の数値制御装置において、軸送り速度の限界値を計算する軸送り限界速度計算手段を備え、上記位置データ演算手段は、上記限界速度計算手段によって計算された軸送り速度の限界値と上記軸送り速度計算手段によって計算された軸送り速度を比較して、軸送り速度の限界値を超えないように位置の計算を行うようにしたことを特徴とするものである。
又、請求項３による工作機械の数値制御装置は、請求項２記載の工作機械の数値制御装置において、上記軸位置データ演算手段は、上記限界速度計算手段によって計算された軸送り速度の限界値と上記軸送り速度計算手段によって計算された軸送り速度を比較して、軸送り速度が軸送り速度の限界値より小さい場合には該軸送り速度を選択して軸位置の計算を行い、軸送り速度が軸送り速度の限界値より大きい場合には軸送り速度の限界値を選択して軸位置の計算を行うようにしたことを特徴とするものである。
又、請求項４による工作機械の数値制御装置は、請求項２又は請求項３記載の工作機械の数値制御装置において、上記軸送り速度の限界値は軸駆動モータの性能によって決定されるものであることを特徴とするものである。
又、請求項５による工作機械の数値制御方法は、ＮＣプログラムを読み込むステップと、上記ステップにて読み込んだＮＣプログラムを電子カムデータに変換するステップと、を具備し、上記電子カムデータに変換するステップは、上記ＮＣプログラム中に、切削中の切削速度が概略一定になるような制御を行う周速度一定制御を実行する為の指令が有るか否かを検出するステップと、データの作成間隔を設定するステップと、上記周速度一定制御指令が検出された場合に、所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算するステップと、上記ステップによって計算された主軸回転数に基づいて軸送り速度を計算するステップと、  上記データ作成間隔で上記軸送り速度に基づいて位置の計算を行うステップと、を具備したことを特徴とするものである。
又、請求項６による工作機械の数値制御方法は、請求項５記載の工作機械の数値制御方法において、軸送り速度の限界値を計算するステップと、上記軸送り速度の限界値と計算された軸送り速度を比較して、軸送り速度の限界値を超えないように位置の計算を行うステップと、をさらに具備したことを特徴とするものである。
又、請求項７による工作機械の数値制御方法は、請求項６記載の工作機械の数値制御方法において、上記軸位置の計算を行うステップは、上記軸送り速度の限界値と計算された軸送り速度を比較して、計算された軸送り速度が軸送り速度の限界値より小さい場合には該計算された軸送り速度を選択して軸位置の計算を行うステップと、上記軸送り速度の限界値と計算された軸送り速度を比較して、計算された軸送り速度が軸送り速度の限界値より大きい場合には軸送り速度の限界値を選択して軸位置の計算を行いステップと、から構成されていることを特徴とするものである。
又、請求項８による工作機械の数値制御方法は、請求項６又は請求項７記載の工作機械の数値制御方法において、上記軸送り速度の限界値は軸駆動モータの性能によって決定されるものであることを特徴とするものである。
【００１２】
つまり、本願発明による工作機械の数値制御装置は、素材を所望の形状に加工するために作成されたＮＣプログラムを記憶するＮＣプログラム記憶部と、上記ＮＣプログラム記憶部に記憶されるＮＣプログラムを電子カムデータに変換する電子カムデータ変換手段と、上記ＮＣプログラム記憶部に記憶されているＮＣプログラム中に、切削中の切削速度が概略一定になるような制御を行う周速度一定制御を実行する為の指令が有るか否かを検出する周速度一定制御指令検出手段と、データの作成間隔を設定する基準軸間隔設定手段と、上記周速度一定制御指令検出手段によって周速度一定制御指令が検出された場合に、所望の切削速度が維持されることを仮定した上で工具刃先位置相当のパラメータに基づき主軸の回転数を計算する主軸回転数計算手段と、上記主軸回転数計算手段によって計算された主軸回転数に基づいて軸送り速度を計算する軸送り速度計算手段と、上記基準軸間隔設定手段により設定された間隔で上記軸送り速度計算手段により得られた軸送り速度に基づいて位置の計算を行う位置データ演算手段とを具備したものであり、それによって、電子カムプログラムによる制御においても、所望の切削速度が維持されること及び工具刃先位置を仮定したことにより主軸の回転数を演算できるようにしたことで、周速度一定制御が可能になり、加工精度の向上、加工時間の短縮化を図ることができる。又、ＮＣプログラムから電子カムプログラムへの変換率も向上することになり、それによって、加工効率の向上を図ることができるようになった。
その際、軸送り速度の限界値を超えないように軸位置の計算を行うことが考えられ、それによって、機器の健全性の維持を図ることができる。
又、軸送り速度の限界値を考慮した制御としては、例えば、限界速度計算手段によって計算された軸送り速度の限界値と軸送り速度計算手段によって計算された軸送り速度を比較して、軸送り速度が軸送り速度の限界値より小さい場合には該軸送り速度を選択して軸位置の計算を行い、軸送り速度が軸送り速度の限界値より大きい場合には軸送り速度の限界値を選択して軸位置の計算を行うようにすることが考えられる。
又、限界値に関しては、例えば、軸駆動モータの性能によって決定することが考えられる。
又、請求項５〜請求項８はプログラムクレームとして規定したものである。
【００１３】
【発明の実施の形態】
以下、図１乃至図４を参照して本発明の一実施の形態を説明する。
図１は本実施形態に係る数値制御工作機械の全体構成を示すブロック図であり、又、図２は該数値制御工作機械の概略制御軸構成を示す平面図である。
図１において、数値制御工作機械１は、主軸回転用モータ３、工具移動用モータ５、被加工物移動用モータ７、背面主軸移動用モータ９、背面主軸回転用モータ１１及びこれら主軸回転用モータ３、工具移動用モータ５、被加工物移動用モータ７、背面主軸移動用モータ９、背面主軸回転用モータ１１の駆動を制御するための制御ユニット部１３を有している。
【００１４】
上記主軸回転用モータ３は、被加工物が保持可能に構成された主軸（図２中符号Ｓ１で示す）を回転駆動させるためのもので、駆動回路１５及び主軸回転制御回路１７等を介して制御ユニット部１３に接続されている。また、主軸回転用モータ３には、主軸回転用モータ３の回転を検知するためのパルスエンコーダ１９が設けられている。このパルスエンコーダ１９の出力は制御ユニット部１３及び速度信号生成回路２１に接続されており、パルスエンコーダ１９から出力される回転検出信号が制御ユニット部１３及び速度信号生成回路２１に入力される。パルスエンコーダ１９は、主軸回転用モータ３の回転に同期して回転検出信号を発生し、制御ユニット部１３及び速度信号生成回路２１に出力する。速度信号生成回路２１は、パルスエンコーダ１９から出力される回転検出信号を主軸回転用モータ３の回転速度を意味する主軸回転速度信号に変換する。速度信号生成回路２１の出力は主軸回転制御回路１７に接続されており、変換された主軸回転速度信号が主軸回転制御回路１７に入力される。
【００１５】
上記主軸回転制御回路１７は、クロック信号発生回路２３にて発生して出力されたクロック信号を基準にして所望の回転速度となるように被加工物（主軸Ｓ１に把持される被加工物）の回転を制御するためのものであり、制御ユニット部１３から出力される主軸回転速度指令信号と、速度信号生成回路２１から出力される主軸回転速度信号とを比較して、その差に応じた制御信号をクロック信号を基準にして生成する。主軸回転制御回路１７にて生成された制御信号は、駆動回路１５に出力される。
【００１６】
上記駆動回路１５は、主軸回転制御回路１７から出力された制御信号に基づいて、主軸回転用モータ３（主軸Ｓ１）の回転速度が後述する主軸回転速度指令値となるように主軸回転用モータ３への供給電力を制御する。これら駆動回路１５、主軸回転制御回路１７、及び、速度信号生成回路２１は、主軸回転用モータ３（主軸Ｓ１）の回転速度のフィードバック制御系を構成している。
【００１７】
次に、上記工具移動用モータ５は、被加工物を加工するための工具（旋削加工用バイト等、図２中符号ＴＳ１、ＴＳ３で示す）を、たとえば主軸回転用モータ３（主軸Ｓ１）の回転中心軸に対して直交する方向（Ｘ軸方向、Ｙ軸方向）、又は主軸と平行な方向（Ｚ軸方向）に移動させるためのもので、駆動回路２５及び工具送り制御回路２７を介して制御ユニット部１３に接続されている。
因みに、この実施の形態の場合には、図２に示すように、工具ＴＳ１はＸ１軸方向とＹ１軸方向に移動制御されるように構成されており、一方、工具ＴＳ３はＸ３軸方向とＹ３軸方向とＺ３軸方向に移動制御されるように構成されている。
【００１８】
又、工具としては工具ＴＳ１、ＴＳ３以外に、背面加工用工具ＴＳ２が設けられている。
又、工具移動用モータ５には、工具移動用モータ５の回転を検出するパルスエンコーダ２９が設けられている。このパルスエンコーダ２９の出力は工具送り制御回路２７に接続されており、パルスエンコーダ２９の回転検出信号が工具送り制御回路２７に入力される。パルスエンコーダ２９は、工具移動用モータ５の所定回転角度毎に回転位置信号を発生して、工具送り制御回路２７に出力する。
【００１９】
工具送り制御回路２７は、パルスエンコーダ２９から出力された回転位置信号に基づいて実際の工具ＴＳ１、ＴＳ３の移動位置を認識すると共に、認識した実際の工具ＴＳ１、ＴＳ３の移動位置と後述する制御ユニット部１３から出力される工具位置指令信号とを比較して、この比較結果に基づいて工具駆動信号を生成する。工具送り制御回路２７にて生成された工具駆動信号は、駆動回路２５に出力される。駆動回路２５は、工具送り制御回路２７から出力された工具駆動信号に基づいて工具移動用モータ５への供給電力を制御する。これら、駆動回路２５及び工具送り制御回路２７は、工具ＴＳ１、ＴＳ３の移動位置のフィードバック制御系を構成している。
【００２０】
次に、上記被加工物移動用モータ７は、被加工物を、例えば、主軸回転用モータ３（主軸Ｓ１）の回転中心軸に対して平行な方向（Ｚ１軸方向）に移動させるためのもので、駆動回路３１及び被加工物送り制御回路３３を介して制御ユニット部１３に接続されている。また、被加工物移動用モータ７には、被加工物移動用モータ７の回転を検出するパルスエンコーダ３５が設けられている。このパルスエンコーダ３５の出力は被加工物送り制御回路３３に接続されており、パルスエンコーダ３５の回転検出信号が被加工物送り制御回路３３に入力される。パルスエンコーダ３５は、被加工物移動用モータ７の所定回転角度毎に回転検出信号を発生して、被加工物送り制御回路３３に出力する。
【００２１】
上記被加工物送り制御回路３３は、パルスエンコーダ３５から出力された回転検出信号に基づいて実際の被加工物の移動位置を認識すると共に、認識した実際の被加工物の移動位置と制御ユニット部１３から出力される被加工物位置指令信号とを比較して、この比較結果に基づいて被加工物駆動信号を生成する。所定回転角度毎に生成された被加工物駆動信号は、駆動回路３１に出力される。駆動回路３１は、所定回転角度毎に出力された被加工物駆動信号に基づいて被加工物移動用モータ７への供給電力を制御する。これら、駆動回路３１及び上記被加工物送り制御回路３３は、被加工物の移動位置のフィードバック制御系を構成している。
【００２２】
次に、上記背面主軸台移動用モータ９は、背面主軸Ｓ２を、例えば、主軸回転用モータ３（主軸Ｓ１）の回転中心軸に対して平行な方向（Ｚ２軸方向）、又は、これと直交する方向（Ｘ２軸方向）に移動させるためのもので、駆動回路３７及び背面主軸台送り制御回路３９を介して制御ユニット部１３に接続されている。また、背面主軸台移動用モータ９には、背面主軸台移動用モータ９の回転を検出するパルスエンコーダ４１が設けられている。このパルスエンコーダ４１の出力は背面主軸台送り制御回路３９に接続されており、パルスエンコーダ４１の回転検出信号が背面主軸台送り制御回路３９に入力される。パルスエンコーダ４１は、背面主軸台移動用モータ９の所定回転角度毎に回転位置信号を発生して、背面主軸台送り制御回路３９に出力する。
【００２３】
上記背面主軸台送り制御回路３９は、パルスエンコーダ４１から出力された回転位置信号に基づいて実際の背面主軸Ｓ２の移動位置を認識すると共に、認識した実際の背面主軸Ｓ２の移動位置と後述する制御ユニット部１３から出力される背面主軸台位置指令信号とを比較して、この比較結果に基づいて背面主軸台駆動信号を生成する。背面主軸台送り制御回路３９にて生成された背面主軸台駆動信号は、駆動回路３７に出力される。駆動回路３７は、背面主軸台送り制御回路３９から出力された駆動信号に基づいて背面主軸台移動用モータ９への供給電力を制御する。これら、駆動回路３７及び背面主軸台送り制御回路３９は、背面主軸台の移動位置のフィードバック制御系を構成している。
【００２４】
次に、上記背面主軸回転用モータ１１は、被加工物を保持可能に構成された背面主軸Ｓ２をＣ２方向に回転駆動させるためのもので、駆動回路４３及び背面主軸回転制御回路４５等を介して制御ユニット部１３に接続されている。また、背面主軸回転用モータ１１には、背面主軸回転用モータ１１の回転を検知するためのパルスエンコーダ４７が設けられている。このパルスエンコーダ４７の出力は制御ユニット部１３及び速度信号生成回路４９に接続されており、パルスエンコーダ４７から出力される回転検出信号が制御ユニット部１３及び速度信号生成回路４９に入力される。パルスエンコーダ４７は、背面主軸回転用モータ１１（背面主軸Ｓ２）の回転に同期して回転検出信号を発生し、制御ユニット部１３及び速度信号生成回路４９に出力する。速度信号生成回路４９は、パルスエンコーダ４７から出力される回転検出信号を背面主軸回転用モータ１１（背面主軸Ｓ２）の回転速度をあらわす背面主軸回転速度信号に変換する。速度信号生成回路４９の出力は背面主軸回転制御回路４５に接続されており、変換された背面主軸回転速度信号が背面主軸回転制御回路４５に入力される。
【００２５】
上記背面主軸回転制御回路４５は、クロック信号発生回路２３にて発生して出力されたクロック信号を基準にして所望の回転速度となるように被加工物（背面主軸Ｓ２）の回転を制御するためのものであり、制御ユニット部１３から出力される背面主軸回転速度指令信号と、速度信号生成回路４９から出力される背面主軸回転速度信号とを比較して、その差に応じた制御信号をクロック信号を基準にして生成する。背面主軸回転制御回路４５にて生成された制御信号は、駆動回路４３に出力される。
【００２６】
上記駆動回路４３は、背面主軸回転制御回路４５から出力された制御信号に基づいて、背面主軸回転用モータ１１（背面主軸Ｓ２）の回転速度が後述する背面主軸回転速度指令値となるように背面主軸回転用モータ１１への供給電力を制御する。これら駆動回路４３、背面主軸回転制御回路４５、及び、速度信号生成回路４５は、背面主軸回転用モータ１１（背面主軸Ｓ２）の回転速度のフィードバック制御系を構成している。
【００２７】
上記制御ユニット部１３は、図１に示されるように、中央演算ユニット（ＣＰＵ）５１、パルス信号発生回路５３、５５、既に説明したクロック信号発生回路２３、分割タイミング信号発生回路５７、ＲＡＭ５９、ＲＯＭ６１等を有している。
【００２８】
上記ＣＰＵ５１は、制御ユニット部１３全体の信号処理等を司る演算部である。ＣＰＵ５１は、周知のマルチプロセッシング（ｍｕｌｔｉ―ｐｒｏｃｅｓｓｉｎｇ）処理、すなわち多重処理を行う。多重処理は、複数の仕事（プログラム）を記憶しておき、これら複数のプログラムを短い時間で切り替えながら実行し、見かけ上、複数のプログラムが同時処理されているようにするもので、時分割処理するものや、各々の仕事に優先順位を付しておき優先順位が高い順に処理を切り替えながらタスク処理するもの等が知られている。
【００２９】
上記パルス信号発生回路５３、５５は、それぞれ、パルスエンコーダ１９、４７に接続されており、パルスエンコーダ１９、４７の夫々から出力された回転検出信号が図示しないインターフェース（Ｉ／Ｆ）等を介して入力される。この入力された回転検出信号に基づいて、所定回転角度毎にパルス信号を発生するように構成されている。又、パルス信号発生回路５３、５５は、ＣＰＵ５１にも接続されており、所定回転角度毎に発生するパルス信号をＣＰＵ５１に出力するようにも構成されている。本実施形態において、パルス信号発生回路５３、５５は、主軸回転用モータ３（主軸Ｓ１）或いは、背面主軸回転用モータ１１（背面主軸Ｓ２）が一回転する間に、主軸回転用モータ３（主軸Ｓ１）、背面主軸回転用モータ１１（背面主軸Ｓ２）に同期して等間隔で４０９６個のパルス信号が出力されるように構成されている。
【００３０】
上記クロック信号発生回路２３は、ＣＰＵ５１から出力される所定の指令信号を受けて、所定の周期、たとえば０．２５ミリ秒周期のクロック信号を生成して出力するように構成されており、クロック信号発生回路２３にて生成されたクロック信号は分割タイミング信号発生回路５７に出力される。分割タイミング信号発生回路５７は、クロック信号発生回路２３から出力されたクロック信号の発生回数をカウントするように構成されており、カウントの結果たとえば１ミリ秒経過する毎に分割タイミング信号を生成してＣＰＵ５１に出力する。したがって、分割タイミング信号発生回路５７は、１ミリ秒周期の分割タイミング信号を後述する割込みタイミング信号としてＣＰＵ５１に出力することになる。なお、クロック信号及び分割タイミング信号の周期は上述した数値に限られることなく、ＣＰＵ５１の処理能力、パルスエンコーダ２９、３５、４１の分解能、各モータ３、５、７、９の性能等を考慮して適宜設定可能である。
【００３１】
上記ＲＡＭ５９は、ＣＰＵ５１における各種演算の結果を読み出し可能に一時的に記憶するように構成されている。そして、ＲＡＭ５９には、ＮＣプログラム記憶部６３、運転プログラム記憶部６５、機械固有情報記憶部６７、最適化データ記憶部６８、トランスフォーマ記憶部６９、トランスフォーマ作業データ記憶部７１とが設けられている。又、ＲＡＭ５９は、ＣＰＵ５１における各種演算の結果を読み出し可能に一時的に記憶するように構成されている。
【００３２】
上記ＮＣプログラム記憶部６３は、複数種類のワークの加工に対応できるように、それぞれのワークの加工用ＮＣプログラムが、複数記憶される領域である。この記憶領域に対して図示しない操作入力装置を操作しアクセスすることによって、所望の加工用ＮＣプログラムを選択可能となるようにしている。
【００３３】
上記運転プログラム記憶部６５は、数値制御工作機械１を実際に稼働させるためのＮＣプログラム又は電子カムプログラムを記憶させる領域となっている。つまり、工作機械１をＮＣプログラムで稼働させるときには、ＮＣプログラム記憶部６３に記憶されているＮＣプログラムの何れかが選択されて、運転プログラム記憶部６５にロードされ、あるいは、ＮＣ操作盤（不図示）に備えられたモニター上で作成されたＮＣプログラムがそのままこの領域にロードされる。一方、電子カムプログラムを含む最適化プログラムで稼働させる時には、最適化メインプログラムのみが、運転プログラム記憶部６５に、ロードされるものとなっている（最適化プログラムは実質的には電子カムコードを含む点が特殊なＮＣプログラムである。）。
【００３４】
上記機械固有情報記憶部６７は、例えば、工具ＴＳ１、ＴＳ２、ＴＳ３のオフセット値を記憶する為に設けられている領域である。
【００３５】
上記ＲＯＭ６１は、各種処理プログラムを記憶する記憶部であって、その一部に、トランスフォーマ７３が記憶されている。又、電子カム制御コマンドもこれに記憶されている。
又、上記最適化データ記憶部６８は、ＮＣプログラムが最適化変換された時に作成される最適化メインプログラムに記述されるコマンドが参照するデータを格納する領域として設定される。上記最適化データ自体は、工具等が移動する軌跡データ、Ｍ、Ｇ、Ｔコード機能データをテーブル化したものである。
【００３６】
既に説明したＲＡＭ５９の運転プログラム記憶部６５であるが、ここには、既に説明したように、実際の加工動作を行う時に必要とされるＮＣプログラムが格納されている。そして、その一部に、第１のチャンネル加工手順記憶部と、第２のチャンネル加工手順記憶部と、第３のチャンネル加工手順記憶部とが設けられている。
【００３７】
上記第１のチャンネル加工手順記憶部と、第２のチャンネル加工手順記憶部と、第３のチャンネル加工手順記憶部に記憶されたＮＣプログラムにより、実際に動作させられる部分を図２を参照して説明する。
まず、第１のチャンネル加工手順記憶部に記憶されたＮＣプログラムにより、主軸Ｓ１を回転させる主軸回転用モータ３、被加工物送り用モータ７、工具送りモータ５が制御される。これによって、主軸Ｓ１は、図２中矢印で示すＺ１軸方向に移動制御されると共にＣ１回転方向に回転制御される。一方、工具ＴＳ１は、図２中矢印で示すＸ１軸、Ｙ１軸に移動制御される。チャンネル１では、主軸台の移動制御、回転制御又は、工具ＴＳ１を支持する刃物台の各矢印方向の移動制御、工具ＴＳ１の中に回転工具が含まれていて、その制御が必要であるものの場合は回転等の制御を行う。
【００３８】
次に、第２のチャンネル加工手順記憶部に記憶されたＮＣプログラムにより、背面主軸Ｓ２を回転させる背面主軸回転モータ１１、背面主軸移動用モータ９、工具ＴＳ２の回転が制御される。これによって、背面主軸Ｓ２は、図２中矢印で示すＺ２軸方向、Ｘ２軸方向に移動制御されると共にＣ２回転方向に背面主軸回転が制御される。一方工具ＴＳ２そのものは、固定刃物台に設置されるものであって、バイト等の非可動のもの或いは、ドリル等の回転可能なものを取付可能としているものである。ドリル等の回転可能なものを使う場合には、第２のチャンネル加工手順記憶部に記憶されたＮＣプログラムにより回転が制御される。
【００３９】
次に、第３のチャンネル加工手順記憶部に記憶されたＮＣプログラムにより、工具送りモータ５が制御される。これによって、工具ＴＳ３は、図２中矢印で示すＸ３，Ｙ３，Ｚ３軸方向に移動制御される。チャンネル３では、この工具ＴＳ３を支持する刃物台の移動制御あるいは、保持される工具の内回転工具の制御が必要な場合に回転等の制御を行う。
尚、この実施の形態では、工具ＴＳ３はチャンネル３に、ＴＳ２はチャンネル２に、ＴＳ１はチャンネル１に割り付けられているが、ＴＳ１或いはＴＳ３に関してはどのチャンネルで制御しても良く、必要に応じて適宜工具ＴＳ１、ＴＳ２、ＴＳ３のチャンネル割り当ては変更できる。同様に主軸Ｓ１、背面主軸Ｓ２もチャンネル割り当ては変更できる。
【００４０】
以上の構成を基にその作用を説明する。
まず、図３を参照して主たる手順の流れを説明する。ステップＳ１において、ＮＣプログラムを読み込む。次いで、ステップＳ２に移行して、読み込んだＮＣプログラムを電子カムデータに変換する。次に、ステップＳ３に移行して、ＮＣプログラムを電子カムデータに変換できたか否かを判別する。この判別によって、ＮＣプログラムを電子カムデータに変換できたと判別された場合には、ステップＳ４に移行して、電子カムデータを出力する。これに対して、ＮＣプログラムを電子カムデータに変換できないと判別された場合には、ステップＳ５に移行して、エラーメッセージを出力する。
以上が主たる手順である。
本実施例では、上記ステップＳ２における電子カムデータへの変換に際して、周速度一定制御を可能にするような処理を施しているものである。この変換を行う対象となるＮＣプログラムにおいて、周速度一定制御開始コマンドの有無を検出し、一連の処理を行うものになっている。
【００４１】
以下、図４を参照して、周速度一定軸位置計算に関する処理を詳細に説明する。
まず、ステップＳ１１において、読み込まれたＮＣプログラムにおけるブロックに記述されるコマンドが周速度一定制御であるか否かを判別する。周速度一定制御でない場合はそのまま終了する。これに対して、周速度一定制御の場合には、ステップＳ１２に移行する。このステップＳ１２では、必要なデータ、すなわち、切削速度Ｖｃ（ｍ／ｍｉｎ）、軸送り速度Ｆ１（ｍｍ／ｒｅｖ）を、変換元のＮＣプログラムから読み取る。又、トランスフォーマ作業データ記憶部７１から、データ作成間隔時間ｔｃ（ｓｅｃ）を読み取る。
【００４２】
次いで、ステップＳ１３に移行する。このステップＳ１３では、現在時刻ｔ（ｓｅｃ）における現在軸位置Ｐｔ（ｍｍ）を取得する。
尚、この位置Ｐｔ（ｍｍ）は、ＮＣプログラム中において、周速度一定制御開始コマンドが発効した段階においてバイト刃先が取る位置になっている。
因みに、ここでいう軸位置とは図２に示したＸ軸に沿った軸位置を意味している。
次に、ステップＳ１４に移行する。このステップＳ１４では主軸回転数（ｎ１）を計算する。上記主軸回転数（ｎ１）の計算は次の式（ＩＩ）に基づいて行われる。
ｎ１＝１０００・Ｖｃ／π・Ｐｔ−――（ＩＩ）
但し、
ｎ１：主軸の回転数（ｒｐｍ）
Ｖｃ：切削速度（ｍ／ｍｉｎ）（ＮＣプログラム中に指定される値を取得）
Ｐｔ：：現在軸位置（ｍｍ）
又、ここでいう主軸としては、図２に示すように、主軸Ｓ１と背面主軸Ｓ２がある。
【００４３】
次に、ステップＳ１５に移行して、上記主軸回転数（ｎ１）より決定される軸送り速度Ｆ２（ｍｍ／ｍｉｎ）を計算する。この軸送り速度Ｆ２（ｍｍ／ｍｉｎ）は次の式（ＩＩＩ）に基づいて算出される。
Ｆ２（ｍｍ／ｍｉｎ）＝Ｆ１（ｍｍ／ｒｅｖ）・ｎ１（ｒｐｍ）―――（ＩＩＩ）
但し、
Ｆ２（ｍｍ／ｍｉｎ）：軸送り速度
Ｆ１（ｍｍ／ｒｅｖ）：１回転当たりの軸送り速度（変換元となるＮＣプログラムにおいて指定された値を取得）
ｎ１（ｒｐｍ）      ：主軸回転数
【００４４】
次に、ステップＳ１６に移行して、上記軸送り速度Ｆ２（ｍｍ／ｍｉｎ）を目標値とした加減速計算を実行する。すなわち、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時における軸送り速度を計算するものである。次に、ステップＳ１７に移行して、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時における始点からの距離を算出する。
【００４５】
次いで、ステップＳ１８に移行して、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時における軸位置の計算を実行すると共にステップＳ１９に移行して、ｔ＝ｔ＋ｔｃとする。次に、ステップＳ２０に移行して、周速度一定制御を終了するか否かを判別する。周速度一定制御を終了する場合にはそのまま終了する。これに対して、周速度一定制御を終了しない場合は、ステップＳ１３に戻り、以下同様のステップを繰り返すものである。
【００４６】
以上本実施の形態によると次のような効果を奏することができる。
まず、電子カムデータによる運転モード時においても、周速度一定制御を実行することができるようになり、それによって、加工精度の向上を図ることができるようになった。
又、それによって、ＮＣプログラムから電子カムプログラムへの変換率も高くなり、全体として、加工効率の向上に大きく寄与するものである。
【００４７】
次に、図５及び図６を参照して第２の実施の形態を説明する。図５は周速度一定制御に関する処理を詳細に説明するためのフローチャートである。
尚、機械構成等については前記第１の実施の形態の場合と同じである。
まずは、ステップＳ２１において、周速度一定制御であるか否かを判別する。ここで、周速度一定制御を開始しないと判別された場合にはそのまま終了する。これに対して、周速度一定制御を実行する場合には、ステップＳ２２に移行して、必要なデータ、すなわち、切削速度Ｖｃ（ｍ／ｍｉｎ）、データ作成時間間隔ｔｃ（ｓｅｃ）、軸送り速度Ｆ１（ｍｍ／ｒｅｖ）を入力する。
尚、切削速度Ｖｃ（ｍ／ｍｉｎ）と軸送り速度Ｆ１（ｍｍ／ｒｅｖ）については、変換元のＮＣプログラムに記述される定数を取得している。又、データ作成時間間隔ｔｃ（ｓｅｃ）については、機械内部で設定された４ミリ秒、８ミリ秒の値を使用している。
【００４８】
次に、ステップＳ２３に移行して、現在時刻ｔ（ｓｅｃ）における現在軸位置Ｐｔ（ｍｍ）を取得する。
因みに、ここでいう軸位置とは、前記第１の実施の形態の場合と同様に、図２に示したＸ軸に沿った軸位置を意味している。
次に、ステップＳ２４に移行して、主軸の回転数（ｎ１）を計算する。この主軸の回転数（ｎ１）の計算は次の式（ＩＶ）に基づいて実行される。
ｎ１＝１０００・Ｖｃ／π・Ｐｔ−――（ＩＶ）
但し、
ｎ１：主軸の回転数（ｒｐｍ）
Ｖｃ：切削速度（ｍ／ｍｉｎ）（ＮＣプログラム中に指定される値を取得）
Ｐｔ：現在軸位置（ｍｍ）
【００４９】
次に、ステップＳ２５に移行して、主軸の回転数（ｎ１）より決定される軸送り速度Ｆ２（ｍｍ／ｍｉｎ）の計算を行う。この軸送り速度の計算は次の式（Ｖ）に基づいて実行される。
Ｆ２（ｍｍ／ｍｉｎ）＝Ｆ１（ｍｍ／ｒｅｖ）・ｎ１（ｒｐｍ）―――（Ｖ）
但し、
Ｆ２（ｍｍ／ｍｉｎ）：軸送り速度
Ｆ１（ｍｍ／ｒｅｖ）：１回転当たりの軸送り速度（変換元となるＮＣプログラムにおいて指定された値を取得）
ｎ１（ｒｐｍ）      ：主軸回転数
【００５０】
次に、ステップＳ２６に移行して、モータ（例えば、図１に示した工具移動用モータ５）の性能により決定される軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）を計算する。この軸送り限界速度は次の式（ＶＩ）に基づいて実行される。
Ｆ２´（ｍｍ／ｍｉｎ）＝Ｖｏ（ｍｍ／ｍｉｎ）＋αｔ―――（ＶＩ）
但し、
Ｆ２´（ｍｍ／ｍｉｎ）：軸送り限界速度
Ｖｏ（ｍｍ／ｍｉｎ）  ：軸位置Ｐｔにおける切削速度
α                    ：モータの能力として規定される限界加速度を示す定数
【００５１】
次に、ステップＳ２７に移行して、軸送り速度Ｆ２（ｍｍ／ｍｉｎ）と軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）の対比を行う。軸送り速度Ｆ２（ｍｍ／ｍｉｎ）が軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）より小さい場合には、ステップＳ２８に移行する。これに対して、軸送り速度Ｆ２（ｍｍ／ｍｉｎ）が軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）より小さくない場合には、ステップＳ２９に移行する。上記ステップＳ２８においては、目標軸送り速度として軸送り速度Ｆ２（ｍｍ／ｍｉｎ）を代入する。これに対して、上記ステップＳ２９においては、目標軸送り速度として軸送り速度Ｆ２´（ｍｍ／ｍｉｎ）を代入する。
【００５２】
何れの場合においても、次に、ステップＳ３０に移行する。このステップＳ３０においては、加減速計算、すなわち、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時における送り速度計算を実行する。次いで、ステップＳ３１において、｛ｔ＋ｔｃ（ｓｅｃ）｝時の始点からの距離を計算する。次いで、ステップＳ３２において、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時の軸位置の計算を実行する。次いで、ステップＳ３３に移行して、ｔ＝ｔ＋ｔｃ（ｓｅｃ）とする。そして、ステップＳ３４に移行して、周速度一定制御を終了するか否かを判別する。周速度一定制御を終了する場合にはそのまま終了する。これに対して、周速度一定制御を終了しない場合には、ステップＳ２３に戻り、以下同様の処理を繰り返すものである。
【００５３】
次に、図５に示されているフローチャートの手順によって、求められる軌跡を構成する点の列が得られる状態を図６を参照しながら具体的に説明する。すなわち、ステップＳ２３からステップＳ２８までの処理を行った結果を用いて、最終的にステップＳ３２において得られる時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時の位置がどのようにして得られるのかについて説明する。
図６に実線で示されているバイトＢの刃先位置が、周速度一定制御を開始する点として示されるＰｔ（０）＝（ａ、ｂ、ｃ）に一瞬合わされる。この点に瞬間的にバイトＢの刃先が合うので、このタイミングでは刃物送り速度は「０」又は略「０」に近い値を取るものとされる。又、周速度一定制御の終了点をＰｔ（ｎｔｃ）＝（ＸＥ、ＹＥ、ＺＥ）とすれば、これ以降の計算ではＰｔ（０）＝（ａ、ｂ、ｃ）とＰｔ（ｎｔｃ）＝（ＸＥ、ＹＥ、ＺＥ）の間で、刃先がｔｃ間隔で辿っていく点（座標）を求める処理になっている。
尚、図６中ワークを符号Ｗで示す。
まず、時刻０（ｓｅｃ）における軸位置Ｐｔ（０）（ｍｍ）では、バイト刃先の送り速度は、「０」になっている。ここで、ステップＳ２５、Ｓ２６により、軸送り速度Ｆ２（ｍｍ／ｍｉｎ）又は軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）の形で得られている軸送り速度を用いて、ステップＳ３１の計算、すなわち、時刻ｔｃ（ｓｅｃ）時の始点からの距離の計算を行う。
尚、ステップＳ２４、Ｓ２５から理解されるように、Ｆ２の値は、位置Ｐｔにおける切削速度Ｖｃを仮定した上で求められる主軸回転数ｎ１を利用して求められるものである。例えば、図６に示すように、Ｐｔ（０）におけるバイトＢの刃先の送り速度となるべき値を計算しているものとなっている。これらの一連の処理は、開始点を設定した上で、それを前提として次の点を求めるものである。例えば、Ｐｔ（０）を設定して、Ｐｔ（ｔｃ）の点を求めるということである。この場合、Ｐｔ（ｔｃ）における刃物台送り速度を得るには、ステップＳ２５の計算式によれば、Ｐｔ（ｔｃ）におけるｎ１が演算されなくてはならないが、その計算の為には、計算を行う時点でＰｔ（ｔｃ）が既知の値となっている必要がある。しかしながら、これら一連の処理は、その値を求めることが目的のものであって、Ｐｔ（ｔｃ）を既知の値として計算に使用することができないものである。
このために、本処理では、Ｐｔ（ｔｃ）に対するＰｔ（０）のように、求めたい座標の一つ手前の座標として、既知になっている値からｎ１を計算するようにしている。これは、座標を演算する時間間隔ｔｃが十分に小さく、Ｐｔ（ｔｃ）とＰｔ（０）の間では、刃物送り速度の変化が大きくならないという経験から、本来そうなるべき値に対しての誤差が、制御目的に対して影響しないという判断に基づき、そのような計算の仕方を行うものとしている。つまり、Ｐｔ（ｔｃ）における刃物送り速度がＰｔ（０）における刃物送り速度であると仮定して、この計算が可能になるようにしているものである。
尚、Ｆ２´についても同じ考え方で扱うようにしている。Ｆ２´では、更新されたｔｃを計算式に代入するだけで、送り速度が計算可能であるが、これのみをそのように扱うと、Ｆ２に基づいて計算される座標との間での整合性を確保できないため、そのように取り扱うものとしている。
【００５４】
上記計算は次に示す式（ＶＩＩ）又は式（ＶＩＩＩ）によるものである。すなわち、ステップＳ２７の判別において、Ｆ２＞Ｆ２´であると判別されて、軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）を選択した場合には次の式（ＶＩＩ）による計算を行うことになる。
Ｓ＝｛（Ｆ２´）２−Ｖｏ２｝／２α―――（ＶＩＩ）
但し、
Ｓ                    ：時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時の始点からの距離
Ｆ２（ｍｍ／ｍｉｎ）  ：軸送り速度
Ｆ２´（ｍｍ／ｍｉｎ）：軸送り限界速度
Ｖｏ（ｍｍ／ｍｉｎ）  ：軸位置Ｐｔにおける切削速度
α                    ：モータの能力として規定される限界加速度を示す定数
【００５５】
これに対して、ステップＳ２７の判別において、Ｆ２´＞Ｆ２であると判別されて、軸送り速度Ｆ２（ｍｍ／ｍｉｎ）を選択した場合に次の式（ＶＩＩＩ）による計算を行うことになる。
Ｓ＝｛（Ｆ２）２−Ｖｏ２｝／２α´―――（ＶＩＩＩ）
但し、
α´＝（Ｆ２−Ｖｏ）６０／ｔｃ
Ｓ                    ：時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時の始点からの距離
Ｆ２（ｍｍ／ｍｉｎ）  ：軸送り速度
Ｆ２´（ｍｍ／ｍｉｎ）：軸送り限界速度
Ｖｏ（ｍｍ／ｍｉｎ）  ：軸位置Ｐｔにおける切削速度
尚、これら式（ＶＩＩ）又は式（ＶＩＩＩ）による計算では、上述したように、ステップＳ２５、Ｓ２６にて得られた軸送り限界速度Ｆ２´（ｍｍ／ｍｉｎ）、軸送り速度Ｆ２（ｍｍ／ｍｉｎ）の値をそのまま計算に用いてｔｃ時間経過時でその送り速度であると仮定している。
【００５６】
このようにして得られた距離Ｓを用いて、ステップＳ３２における計算、すなわち、時刻｛ｔ＋ｔｃ（ｓｅｃ）｝時の位置の計算を行う。これを図６を参照して説明する。
まず、時刻０（ｓｅｃ）における周速度一定制御開始基点となる軸位置Ｐｔ（０）（ｍｍ）の座標を（ａ、ｂ、ｃ）、時刻ｔｃ（ｓｅｃ）時における軸位置Ｐｔ（ｔｃ）の座標を（Ｘｔｃ、Ｙｔｃ、Ｚｔｃ）とする。又、時刻ｍｔｃ（ｓｅｃ、但し、ｍは正の整数）時の距離Ｓの繰り返し計算によって生じる誤差が積み重ならないようにするため、内分点の計算を行って、ステップＳ３２の位置の計算を行うものとする。
尚、周速度一定制御終了時のＰｔ（ｎｔｃ）の座標を（ＸＥ、ＹＥ、ＺＥ）とする（周速度一定制御は、主軸モータの制御回転数が上限値に近くなるタイミングにて終了する。）。これらＰｔ（０）、Ｐｔ（ｎｔｃ）の両者は、計算を行う際に予め変換元のＮＣプログラムから取得される既知の値（座標）である。このステップＳ３２の処理は、要は、既知の座標間に軌跡を構成する点を求める処理となるものである。
【００５７】
図６に示す加工では次の式（ＩＸ）、（Ｘ）が成立する。
Ｙ＝Ｙｔｃ＝ＹＥ―――（ＩＸ）
Ｚ＝Ｚｔｃ＝ＺＥ―――（Ｘ）
そして、Ｘにのみ着目して座標を計算すると次の式（ＸＩ）に示すようなものとなる。
Ｘｔｃ＝ａ＋ｓ  ―――（ＸＩ）
この計算はＸの一次元の計算故にこのような簡単な形式になるが、三次元の計算をした場合には形は複雑になる。
【００５８】
ここで、ステップＳ３４の周速度一定制御終了となる条件を満たさない限りは、ステップＳ２４からの処理が繰り返され、時刻ｔがｔｃだけ加算される毎に距離がＳだけ増加される。そして、上記内分点の式｛式（ＸＩ）｝におけるＳに、前回Ｓに今回求められたＳを加えた累積値を代入して、Ｘｔｃの座標値を計算するものとしている。
尚、周速度一定制御終了は、この例では、ＸｔｃがＸＥよりも主軸中心側の点となった状態を判定した場合である。
【００５９】
以上この第２の実施の形態によると、前記第１の実施の形態の場合と同様の効果を奏することができると共に、限界軸送り速度Ｆ２´（ｍｍ／ｍｉｎ）を算出して吟味しているので、機器の健全性を維持する上で効果的である。
【００６０】
尚、本発明は前記第１、第２の実施の形態に限定されるものではない。
まず、前記第１、第２の実施の形態における機械構成はあくまで一例であり、それに限定されるものではない。
又、その他図示した構成はあくまで一例である。
【００６１】
【発明の効果】
以上詳述したように、本願発明による工作機械の数値制御装置と工作機械の数値制御方法によると、まず、電子カムデータによる運転モード時においても、周速度一定制御を実行することができるようになり、それによって、加工精度の向上を図ることができるようになった。
又、それによって、ＮＣプログラムから電子カムプログラムへの変換率も高くなり、全体として、加工効率の向上に大きく寄与するものである。
又、限界軸送り速度を算出して吟味するようにした場合には機器の健全性を維持する上で効果的である。
【図面の簡単な説明】
【図１】本発明の第１の実施の形態を示す図で、数値制御工作機械の構成を示すブロック図である。
【図２】本発明の第１の実施の形態を示す図で、数値制御工作機械のチャンネル構成を示す平面図である。
【図３】本発明の第１の実施の形態を示す図で、制御プログラムの主たる手順を示すフローチャートである。
【図４】本発明の第１の実施の形態を示す図で、周速一定制御のための内容を示すフローチャートである。
【図５】本発明の第２の実施の形態を示す図で、周速一定位置計算制御の内容を示すフローチャートである。
【図６】本発明の第２の実施の形態を示す図で、具体例を示す図である。
【符号の説明】
１  数値制御工作機械
１３  制御ユニット
５１  中央演算ユニット
５９  ＲＡＭ
６１  ＲＯＭ
６３  ＮＣプログラム記憶部
６５  運転プログラム記憶部
６７  機械固有情報記憶部
６９  トランスフォーマ記憶部
７１  トランスフォーマ作業データ記憶部
７３  トランスフォーマ
【図１】
2004362104.tif 000003
【図２】
2004362104.tif 000004
【図３】
2004362104.tif 000005
【図４】
2004362104.tif 000006
【図５】
2004362104.tif 000007
【図６】
2004362104.tif 000008