(57)【要約】【課題】  回転軸中心や主軸旋回中心が本来の位置からずれていても、そのずれを補正して精度の高い加工ができる数値制御装置及び制御方法を得る。【解決手段】  工具ヘッド１がＣ軸(Ｚ軸周り)、Ａ軸(Ｘ軸周り)によって回転する機械である。工具長ベクトルに主軸の傾斜誤差(αs-H, βs-H, γs-H)及びずれ成分δs-Hを補正するマトリックスをかけ、主軸のずれによる工具長ベクトルを求める。さらに、Ａ軸のずれδa-H，(αa-H, βa-H, γa-H)とＡ軸への回転指令ａを含む変換マトリックスをかけてＡ軸のずれを補正し、指令ａだけ回転したときの工具長ベクトルを求める。さらに、Ｃ軸のずれδac-H，(αc-H, βc-H, γc-H)とＣ軸への回転指令ｃを含む変換マトリックスをかけてＣ軸のずれを補正し、指令ｃだけ回転したときの工具長ベクトルを求める。これに位置指令値(x,y,z)のベクトル、ワーク原点オフセットベクトルＭwo-H を加えて機械位置Ｖm-H'を求める。【選択図】      図２
2004272887.tif 000002
【特許請求の範囲】
【請求項１】
直線移動軸と工具ヘッドあるいはテーブルに少なくとも１つの回転軸を有する機械を制御する数値制御装置において、
前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量から、前記機械誤差がない場合の工具と加工物との相対関係が保持されるように実際に機械が移動すべき機械位置を求める手段と、
該手段で求められた機械位置へ前記直線移動軸及び前記回転軸を駆動する駆動制御手段を備えることを特徴とする数値制御装置。
【請求項２】
前記機械は工具ヘッドが少なくとも１つの軸周りに回転する機械である請求項１に記載の数値制御装置。
【請求項３】
前記機械はテーブルが少なくとも１つの軸周りに回転する機械である請求項１に記載の数値制御装置。
【請求項４】
前記機械は工具ヘッド及びテーブルが回転する機械である請求項１に記載の数値制御装置。
【請求項５】
前記ずれ量は数値制御装置内のパラメータに設定されることを特徴とする請求項１乃至４の内いずれか１項に記載の数値制御装置。
【請求項６】
前記ずれ量は、前記機械から数値制御装置への信号によって数値制御装置に通知されることを特徴とする請求項１乃至４の内いずれか１項に記載の数値制御装置。
【請求項７】
前記ずれ量は、外部機器から数値制御装置への信号によって数値制御装置に通知されることを特徴とする請求項１乃至４の内いずれか１項に記載の数値制御装置。
【請求項８】
直線移動軸と工具ヘッドあるいはテーブルに少なくとも１つの回転軸を有する機械の数値制御装置による数値制御方法であって、
前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量から、前記機械誤差がない場合の工具と加工物との相対関係が保持されるように実際に機械が移動すべき機械位置を求め、
該求められた機械位置へ前記直線移動軸及び前記回転軸を移動させることを特徴とする数値制御方法。
【請求項９】
前記機械は工具ヘッドが少なくとも１つの軸周りに回転する機械であって、
前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量と前記回転軸への指令より、工具長ベクトルを補正し、
補正された工具長ベクトルに指令位置ベクトルを加算し機械位置を求める請求項８に記載の数値制御方法。
【請求項１０】
前記機械はテーブルが少なくとも１つの軸周りに回転する機械であって、
テーブル座標系上における指令位置に該テーブル座標系原点のオフセットを加算して機械座標系上の指令位置を求め、
前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量と前記回転軸への指令位置から、機械座標系上の指令位置をずれ補正し、かつ指令された回転軸の回転位置へ回転した位置を求め、該位置に工具長ベクトルを加算して機械位置を求める請求項８に記載の数値制御方法。
【請求項１１】
前記機械は工具ヘッド及びテーブルが回転する機械であって、
テーブル座標系上の位置指令値にテーブル座標系原点オフセット量を加算して機械座標系上の指令位置を求め、
テーブルに設けられた回転軸の機械誤差がない基準位置と実際の回転軸のずれ量と該テーブルに設けられた回転軸への指令位置からずれを補正した指令位置を求め、
工具長ベクトルに工具ヘッドに設けられた回転軸の機械誤差がない基準位置と実際の回転軸のずれ量と該工具ヘッドに設けられた回転軸の指令位置からずれを補正した工具の姿勢を求め、
前記ずれを補正した指令位置とずれを補正した工具の姿勢より機械位置を求める請求項８に記載の数値制御方法。
【請求項１２】
前記ずれ量は、数値制御装置にパラメータ設定により、前記機械の信号により、又は、外部機器の信号のいずれかにより数値制御装置に通知されることを特徴とする請求項８乃至１１の内いずれか１項に記載の数値制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、直線移動軸以外に回転軸を有する機械を制御する数値制御装置及びその制御方法に関する。
【背景技術】
【０００２】
金型等の自由曲面を加工する工作機械として、直線移動軸以外に回転軸を有する機械が使用されている。Ｘ，Ｙ，Ｚの直線移動軸と、２つの回転軸を備えた５軸工作機械が知られている。回転軸を備えていることから、これらの回転軸の回転に伴って、工具を被加工物のワーク加工面に対して任意に傾けて加工することができる。工具が傾くことによって工具長補正量が変化することから、この工具長を補正しながら加工するようにされている（例えば、特許文献１，特許文献２参照）。
【０００３】
又、Ｘ，Ｙ，Ｚの直線移動軸と鉛直軸線周りの回転軸のＣ軸、該Ｃ軸に対して所定角度傾斜したＢ’軸周りに回転する部材を備えた５軸工作機械において、Ｃ軸の鉛直線軸からの傾き誤差、Ｂ’軸の傾斜角度誤差、及びＢ’，Ｃ軸の回転中心位置の誤差を補正するために、Ｂ’軸を所定角度に固定し、Ｃ軸周りに回転させ所定旋回角度毎の主軸先端位置を測定し、この測定データから回帰方程式より重回帰分析して旋回平面を求めて、Ｃ軸部材の軸方向ベクトルを求め、Ｃ軸を所定角度に固定し、Ｂ軸周りに回転させ所定旋回角度毎の主軸先端位置を測定し、この測定データから回帰方程式より重回帰分析して旋回平面を求めてＢ軸部材の軸方向ベクトルを求め、これら軸方向ベクトルの軸線周りに旋回した状態での主軸先端位置を求め、この主軸先端位置と誤差のない場合の主軸位置との差分を主軸頭位置誤差とし、主軸頭位置誤差の符号を反転させて補正値とし、ＮＣプログラムの座標系をオフセットして主軸頭誤差補正を行うようにしたものが知られている（特許文献３参照）。
【０００４】
【特許文献１】特開平３−１０９６０６号公報
【特許文献２】特開平５−１００７２３公報
【特許文献３】特開２００１−２６９８３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
前述した特許文献１，２の工具長補正方法では、回転軸中心のずれや傾斜は考慮されていない。回転軸中心が本来の位置から乖離または傾斜している場合（加工プログラムを実行する制御系が認識している回転中心軸及びその方向と実際に回転中心軸及びその方向に誤差がある場合）は考慮されていない。また、主軸旋回中心が本来の位置から乖離または傾斜している場合においても、考慮されていない。
【０００６】
しかし、工作機械の製造上、回転軸中心を本来の位置、方向に、また主軸旋回中心を本来の位置、方向に正確に製造することは困難で誤差が発生する。前述した特許文献３では、回転軸の中心位置誤差、傾きの誤差を考慮し、主軸頭位置誤差補正を行っているが、この方法は、２つある一方の回転軸を固定し、他方を所定角度回転させた位置毎に主軸先端位置を測定して得られたデータに基づいて回帰方程式より重回帰分析して旋回平面を求めて軸方向ベクトルを求め、さらに、これらの軸方向ベクトルを旋回させた状態での主軸先端位置を求め、本来の主軸位置との差を主軸頭位置誤差として、ＮＣ座標系をこの主軸頭位置誤差に対応してオフセットするものであり、処理が複雑である。
【０００７】
さらに、特許文献３に記載された方法では、次のような問題点がある。  
２つの回転軸の位置決めごとに、それらの回転軸を所定角度ずつ旋回させて測定し、それらの回転軸の実際の方向ベクトルを求めている。従って、回転軸の位置決めごとに測定のための時間がかかるという問題と、回転軸の移動を含めた連続加工には使用できないという問題がある。又、２つある回転軸の回転中心はお互いに交叉していることを前提としており、２つの回転中心の間に乖離がある場合を考慮していない。さらに、主軸回転中心と回転軸の間の誤差を考慮していないという問題がある。
【０００８】
そこで、本発明の目的は、回転軸を含む機械を制御する数値制御装置において、回転軸中心が本来の位置から乖離または傾斜している場合や、主軸旋回中心が本来の位置から乖離または傾斜している場合においても、簡単で精度の高い加工、かつ回転軸の移動を含めた連続加工ができる数値制御装置及び制御方法を提供することにある。
【課題を解決するための手段】
【０００９】
請求項１に係わる発明は、直線移動軸と工具ヘッドあるいはテーブルに少なくとも１つの回転軸を有する機械を制御する数値制御装置において、前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量から、前記機械誤差がない場合の工具と加工物との相対関係が保持されるように実際に機械が移動すべき機械位置を求める手段と、該手段で求められた機械位置へ前記直線移動軸及び前記回転軸を駆動する駆動制御手段を設けることにより、ずれ補正を可能とした。そして、請求項２に係わる発明は、前記機械を工具ヘッドが少なくとも１つの軸周りに回転する機械とした。又、請求項３に係わる発明は、前記機械をテーブルが少なくとも１つの軸周りに回転する機械とした。さらに、請求項４に係わる発明は、前記機械を工具ヘッド及びテーブルが回転する機械とした。
【００１０】
又、請求項５に係わる発明は、前記ずれ量を数値制御装置内のパラメータに設定するようにし、請求項６に係わる発明は、機械から数値制御装置への信号によってずれ量が数値制御装置に通知されるものとし、請求項７に係わる発明は、外部機器から数値制御装置への信号によって数値制御装置にずれ量が通知されるものとした。
【００１１】
請求項８に係わる発明は、直線移動軸と工具ヘッドあるいはテーブルに少なくとも１つの回転軸を有する機械の数値制御装置による数値制御方法であって、前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量から、前記機械誤差がない場合の工具と加工物との相対関係が保持されるように実際に機械が移動すべき機械位置を求め、該求められた機械位置へ前記直線移動軸及び前記回転軸を移動させるようにした数値制御である。
【００１２】
また、請求項９に係わる発明は、前記機械が工具ヘッドが少なくとも１つの軸周りに回転する機械であって、前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量、及び／又は主軸旋回中心の機械誤差のない基準位置及び前記主軸旋回中心の基準位置と実際の主軸旋回中心のずれ量と前記回転軸への指令より、工具長ベクトルを補正し、補正された工具長ベクトルに指令位置ベクトルを加算し機械位置を求める数値制御方法とした。
【００１３】
請求項１０に係わる発明は、前記機械がテーブルが少なくとも１つの軸周りに回転する機械であって、テーブル座標系上における指令位置に該テーブル座標系原点のオフセットを加算して機械座標系上の指令位置を求め、前記回転軸の機械誤差がない基準位置及び該基準位置と実際の回転軸のずれ量と前記回転軸への指令位置から、機械座標系上の指令位置をずれ補正し、かつ指令された回転軸の回転位置へ回転した位置を求め、該位置に工具長ベクトルを加算して機械位置を求める数値制御方法とした。
【００１４】
請求項１１に係わる発明は、前記機械は工具ヘッド及びテーブルが回転する機械であって、テーブル座標系上の位置指令値にテーブル座標系原点オフセット量を加算して機械座標系上の指令位置を求め、テーブルに設けられた回転軸の機械誤差がない基準位置と実際の回転軸のずれ量と該テーブルに設けられた回転軸への指令位置からずれを補正した指令位置を求め、工具長ベクトルに工具ヘッドに設けられた回転軸の機械誤差がない基準位置と実際の回転軸のずれ量と該工具ヘッドに設けられた回転軸の指令位置からずれを補正した工具の姿勢を求め、前記ずれを補正した指令位置とずれを補正した工具の姿勢より機械位置を求める数値制御方法とした。さらに、請求項１２に係わる発明は、前記ずれ量を、数値制御装置にパラメータ設定により、前記機械の信号により、又は、外部機器の信号のいずれかにより数値制御装置に通知することにより、設定するようにした数値制御方法である。
【発明の効果】
【００１５】
本発明は、回転軸や主軸旋回軸にずれがあっても、そのずれを補正して機械位置が指令されることになるから、加工精度の高い制御を行うことができる。
【発明を実施するための最良の形態】
【００１６】
回転軸を有する機械（工作機械）には、複数のタイプ（構成の差異）がある。各タイプの機械に対する本発明の適用の実施形態を、工具ヘッド回転形の機械、テーブル回転形の機械、工具ヘッド及びテーブル回転形の機械の、３つのタイプの機械に適用するものとし、以下この３つの実施形態の本発明の原理について説明する。
１．本発明の第１の実施形態（工具ヘッド回転形の機械）
本発明の第１の実施形態として、工具ヘッド回転式の機械であって、直交するＸ，Ｙ，Ｚ軸の直線移動軸と、工具ヘッドに回転軸としてＡ軸（Ｘ軸周り）とＣ軸（Ｚ軸周り）を備え、Ｃ軸がマスタ軸となり、Ｃ軸上でＡ軸が動作し、かつ、Ａ軸、Ｃ軸の回転角が「０」のとき、工具方向はＺ軸方向である工具ヘッド回転形の機械について説明する。
【００１７】
なお、Ａ軸、Ｃ軸の回転角が「０」のときの工具長ベクトルＶt-H(0,0,h,1) T、ワーク原点オフセット量ＷＯ-H(WOx-H,WOy-H,WOz-H,1) Tは初期条件として与えられているものとする。また、以降、同次座標系で表し「T」は転置を意味する。
（１−１）ずれのない場合の機械位置の求め方
まず、回転軸中心や主軸旋回中心が位置ずれや傾きがなく本来の位置から乖離または傾斜がなく、ずれがない場合、すなわち、加工プログラム及び制御系が認識している回転軸中心や主軸旋回中心の位置及び方向と実際の位置と方向が一致している場合について説明する。
【００１８】
図１は、このずれのない場合での機械位置の算出を説明する説明図である。符号１は工具ヘッドで、符号２は工具である。  
Ｘ，Ｙ，Ｚ軸の直線移動軸に対しては位置指令値Ｐ（ｘ，ｙ，ｚ）及び回転軸のＡ軸、Ｃ軸に対しては位置指令Ｒ（ａ，ｃ）が与えられたとき、機械位置Ｖm-H（Ｘ，Ｙ，Ｚ，１）Ｔは、次の１式によって求められる。
Ｖm-H＝Ｍwo-H＊Ｍp-H＊Ｍc-H＊Ｍa-H＊Ｖt-H      ……（１）
この１式において、Ｍwo-H，Ｍp-H，Ｍc-H，Ｍa-Hは変換マトリックスで、次の通りである。
【００１９】
【数１】
2004272887.tif 000003
【００２０】
すなわち、マトリックスＭwo-Hは初期条件として与えられているワーク原点オフセット量ＷＯ-H(WOx-H,WOy-H,WOz-H,1) Tによって決まるものであり、マトリックスＭp-H，は、位置指令値Ｐ（ｘ，ｙ，ｚ）によって求められる。マトリックスＭc-H，は、回転軸Ｃ軸への指令ｃによってもとめられ、マトリックスＭa-Hは回転軸Ａ軸への指令ａによって求められるものである。
【００２１】
図１に示すように、機械原点に設定されているワーク原点オフセット量ＷＯ-Hのベクトルを加算してワーク座標系原点位置を求め、さらに、該ワーク座標系原点位置からプログラム指令値Ｐ（ｘ，ｙ，ｚ）に対応するベクトルを加算し、さらに、Ａ軸，Ｃ軸の回転量が「０」のときの工具長ベクトルＶt-H(0,0,h,1) TをＡ軸，Ｃ軸を回転指令ａ，ｃだけ回転させて得られた工具長ベクトルを加算することによって、機械位置Ｖm-H（Ｘ，Ｙ，Ｚ，１）Ｔが求まる。
【００２２】
（１−２）ずれ（回転中心軸、主軸旋回中心の位置の乖離、及び傾斜）の要素について
この第１の実施形態において発生するずれは、（ｉ）Ｃ軸回転中心のずれ、（ii）Ａ軸回転中心のずれ、（iii）主軸旋回中心のずれである。これらずれを表すにあたって、関連する事項を次の記号で表す。また図２は、このずれを有する機械の位置の算出を説明する説明図である。
Ａs-H：Ａ＝０,Ｃ＝０の時の実際の主軸旋回中心
Ｃs-H：Ａ＝０,Ｃ＝０の時の本来の主軸旋回中心（基準位置）
Ａc-H：実際のＣ軸回転中心
Ｃc-H：本来のＣ軸回転中心（基準位置）
Ａa-H：実際のＡ軸回転中心
Ｃa-H：本来のＡ回転中心（基準位置）
また、本来のＣ軸回転中心（基準位置）Ｃc-Hの軸とＡ軸回転中心（基準位置）Ｃa-Hの軸は直交するものとしている。
【００２３】
（ｉ）実際のＣ軸回転中心Ａc-Hの本来のＣ軸回転中心（基準位置） Ｃc-Hに対するずれ    （Ｃ軸のずれ）。
このずれを、実際のＡ軸回転中心Ａa-Hから実際のＣ軸回転中心Ａc-Hへの乖離距離のＸ，Ｙ，Ｚ軸各成分δac-H (δacx-H, δacy-H, δacz-H)と、Ｃ軸回転中心のこれらＸ，Ｙ，Ｚ軸の軸周りの回転ずれ（αc-H, βc-H, γc-H）で表す。
【００２４】
δac-H (δacx-H, δacy-H, δacz-H) ：
実際のＡ軸回転中心Ａa-Hから実際のＣ軸回転中心Ａc-Hへの乖離距離のＸ，Ｙ，Ｚ各成分は、実際のＡ軸回転中心から実際のＣ軸回転中心へのベクトルであり、これは、本来のＣ軸回転中心Ｃc-Hと本来のＡ軸回転中心Ｃa-Hの交点から実際のＣ軸回転中心Ａc-Hへのベクトルをδc-H (δcx-H, δcy-H, δcz-H)とすると、δac-H=−δa-H＋δc-H である。（なお、δa-Hは後述する。）
（αc-H, βc-H, γc-H）：
実際のＣ軸回転中心Ａc-Hが本来のＣ軸回転中心Ｃc-Hから、Ｘ軸周りにαc-H、Ｙ軸周りにβc-H、Ｚ軸周りにγc-H回転して傾斜したずれを表す。
【００２５】
（ii）実際のＡ軸回転中心Ａa-Hの本来のＡ軸回転中心（基準位置）Ｃa-Hに対するずれ（      Ａ軸のずれ）。
このずれを、Ｘ，Ｙ，Ｚ軸の直線軸方向のずれδa-H (δax-H, δay-H, δaz-H)と、Ａ軸回転中心のこれらの軸周りの回転ずれ（αa-H, βa-H, γa-H）で表す。
δa-H (δax-H, δay-H, δaz-H) ：
本来のＡ軸回転中心Ｃa-Hから実際のＡ軸回転中心Ａa-Hへの乖離距離のＸ，Ｙ，Ｚ各成分 (本来のＣ軸回転中心Ｃc-Hと本来のＡ軸回転中心Ｃa-Hの交点から実際のA軸回転中心へのベクトル)。
（αa-H, βa-H, γa-H） ：
実際のＡ軸回転中心Ａa-Hが本来のＡ軸回転中心Ｃa-Hから、Ｘ軸周りにαa-H、Ｙ軸周りにβa-H、Ｚ軸周りにγa-H回転して傾斜した誤差を表す。
【００２６】
（iii）実際の主軸旋回中心Ａs-Hの本来の主軸旋回中心（基準位置）Ｃs-Hに対するずれ      （主軸のずれ）。
このずれを、Ｘ，Ｙ，Ｚ軸の直線軸方向のずれδs-H (δsx-H, δsy-H, δsz-H)と、主軸旋回中心のこれらの軸周りの回転ずれεs-H（αs-H, βs-H, γs-H）で表す。
δs-H (δsx-H, δsy-H, δsz-H) ：
実際の主軸旋回中心Ａs-Hから本来の主軸旋回中心Ｃs-Hへの乖離距離のＸ，Ｙ，Ｚ各成分 （Ａ，Ｃ＝０の時の工具先端から実際の主軸旋回中心Ａs-H上を工具長分(ｈ)延ばした位置から本来のＣ軸回転中心Ｃc-Hと本来のＡ軸回転中心Ｃa-H との交点へのベクトル）。
εs-H（αs-H, βs-H, γs-H） ：
実際の主軸旋回中心Ａs-Hが本来の主軸旋回中心Ｃs-Hから、Ｘ軸周りにαs-H、Ｙ軸周りにβs-H、Ｚ軸周りにγs-H回転して傾斜した誤差を表す。なお、以降も含めて、回転角を表すα, β, γの単位はラジアンである。
【００２７】
（１−３）ずれがある場合の機械位置の求め方
上述したＣ軸、Ａ軸、主軸の３つのずれ（直線移動軸成分の乖離距離と回転量）の何れかが１つある場合、このずれを考慮して、機械位置を求める必要がある。図２はこれらずれを考慮して機械位置を求める説明図であり、図３は、ずれのみを表した説明図である。また、図４〜図６は、これらずれを考慮して機械位置を求める原理説明図である。
【００２８】
図４は回転軸Ａ，Ｃが「０」である状態を示している。破線で示したベクトルは、本来の主軸旋回中心Ｃs-Hに沿った工具先端から本来のＣ軸回転中心Ｃc-Hと本来のＡ軸回転中心Ｃa-Hの交点Ｐ１までの実工具長ベクトルＶ１を表す。主軸の傾斜誤差εs-H（αs-H, βs-H, γs-H）によってこのベクトルはＶ２となる。さらに、主軸の直線軸方向の誤差δs-H (δsx-H, δsy-H, δsz-H)によって、このベクトルはＶ３となる。すなわち、ベクトルＶ３は、回転軸Ａ，Ｃの回転角が「０」で、主軸のずれによる工具先端から工具長ｈの実工具長ベクトルを表すことになる。この実工具長ベクトルＶ３は、実際のＡ軸回転中心Ａa-Hの本来のＡ回転中心Ｃa-Hに対するずれとＡ軸への回転指令ａによって、図５に示すＶ５のベクトルに変わる。すなわち、図４で求めた、実工具長ベクトルＶ３は、Ａ軸のずれδa-H (δax-H, δay-H, δaz-H)、（αa-H, βa-H, γa-H）によって、ベクトルＶ４に変わり、実際のＡ軸の回転中心はＰ２となる。そして、Ａ軸への回転指令ａだけ工具が回転すると、この回転後の実工具長ベクトルはＶ５となる。
【００２９】
さらに、この実工具長ベクトルＶ５は、実際のＣ軸中心Ａc-Hの本来のＣ軸中心Ｃc-Hに対するずれとＣ軸への回転指令ｃによって、図６に示すベクトルＶ７となる。Ｃ軸のずれ、すなわち、実際のＡ軸回転中心Ａa-Hから実際のＣ軸回転中心Ａc-Hへの乖離距離のＸ，Ｙ，Ｚ軸、各成分δac-H (δacx-H, δacy-H, δacz-H)と、これらＸ，Ｙ，Ｚ軸の軸周り回転ずれ（αc-H, βc-H, γc-H）によりＣ軸の回転中心は、図６の点Ｐ３に移動し、実工具長ベクトルＶ５はベクトルＶ６に変わる。そして、点Ｐ３を中心にＣ軸回転指令値ｃだけ回転することにより、実工具長ベクトルはＶ７となる。そしてこの点Ｐ３が、ずれがある場合の機械位置となる。これにより、位置指令Ｐ（ｘ，ｙ，ｚ）に対して、ずれ補正と回転軸のＡ，Ｃ軸への位置指令Ｒ（ａ，ｃ）を実行したときの実工具長ベクトルＶ７を加えれば機械位置が求まることになる（図２参照）。
【００３０】
よって、ずれがある場合の機械位置Ｖm-H’は次の２式を演算することによって求められる。
Ｖm-H'＝Ｍwo-H*Ｍp-H*Ｍc-H'*δac-H*Ｍa-H'*δa-H*δs-H*εs-H*Ｖt-H  ……（２）
上記２式において、変換マトリックスＭwo-H，Ｍp-Hは前述した通りであり他の要素は、次の通りである。
【００３１】
【数２】
2004272887.tif 000004
【００３２】
上記２式を説明すると、初期設定されている工具長ベクトルＶt-H(0,0,h,1) Tに主軸のＸ，Ｙ，Ｚ軸の回転誤差εs-Hの変換マトリックス、及び主軸ずれのＸ，Ｙ，Ｚ成分δs-Hをかけて図４に示す実工具長ベクトルＶ３を求め、さらに、Ａ軸のＸ，Ｙ，Ｚ成分ずれδa-HとＸ，Ｙ，Ｚ軸周りの回転ずれ（αa-H, βa-H, γa-H）、及びＡ軸への回転指令ａを含む変換マトリックスＭa-H’をかけて図５に示す実工具長ベクトルＶ５を求める。
【００３３】
さらに、実際のＡ軸回転中心Ａa-Hから実際のＣ軸回転中心Ａc-Hへの乖離距離のＸ，Ｙ，Ｚの各成分δac-Hの変換マトリックスと、Ｃ軸のＸ，Ｙ，Ｚ軸周りの回転ずれ（αc-H, βc-H, γc-H）とＣ軸への回転指令ｃを含む変換マトリックスＭc-H’をかけて図６に示す実工具長ベクトルＶ７を求める。
そして図２に示すように、ワーク座標系原点から位置指令値Ｐ（ｘ，ｙ，ｚ）のベクトルを加えるマトリックスＭp-Hをかけ、さらに機械原点とワーク原点オフセットベクトルを加えるマトリックスＭwo-H をかけることによって、ずれがある機械において、そのずれを補正した指令位置における機械位置Ｖm-H'が求められる。
【００３４】
２．本発明の第２の実施形態（テーブル回転形の機械）
本発明の第２の実施形態として、２軸の回転軸でワークを取り付けるテーブルが回転する機械の例を説明する。図７に示すように、直交するＸ，Ｙ，Ｚ軸の直線移動軸と、テーブル３の回転軸としてＡ軸（Ｘ軸周り）とＣ軸（Ｚ軸周り）を備え、Ａ軸がマスタ軸となり、Ａ軸上でＣ軸が動作し、かつ、Ａ軸の回転中心Ｃa-TとＣ軸の回転中心Ｃc-Tは直交するものとする。また、工具方向はＺ軸方向とする。
【００３５】
この第２の実施形態の場合は、工具長ベクトルＶt--T (0,0,h,1) T、ワーク原点オフセット量ＷＯ-T  (WOx-T ,WOy-T ,WOz-T  ,1) T、Ａ軸の回転中心Ｃa-TとＣ軸の回転中心Ｃc-Tの交点ベクトルCo-T(Cox-T,Coy-T,Coz-T,1)Tが初期条件として与えられているものとする。
【００３６】
（２−１）ずれのない場合の機械位置の求め方
テーブル座標系（ワーク座標系）上のＸ，Ｙ，Ｚ座標に対する位置指令値Ｐ（ｘ，ｙ，ｚ）、及び回転軸Ａ，Ｃに対する位置指令Ｒ（ａ，ｃ）が与えられているとき、機械位置Ｖm-T (Ｘ．Ｙ．Ｚ，１)Ｔは、次の３式によって求められる。
Ｖm-T＝Ｍvt-T＊Ｍad-T＊Ｍcd-T＊Ｍwo-T＊Ｐ-T   …………（３）
この３式における要素の各変換マトリックスは次の通りである。
【００３７】
【数３】
2004272887.tif 000005
【００３８】
すなわち、図７に示すように、テーブル座標系（ワーク座標系）上で指令された位置Ｐ（ｘ，ｙ，ｚ）のベクトルＰ-Tに機械座標原点からテーブル座標系（ワーク座標系）の原点までのワーク原点オフセットベクトルを加算するマトリックスＭwo-Tをかけることによって、回転軸Ａ，Ｃの回転がないときの指令位置が求まる。これに対して、Ｃ軸を指令位置ｃだけ回転させる変換マトリックスＭcd-Tをかけることによって、Ｃ軸を指令ｃだけ回転させたときの指令位置が求まる。さらに、Ａ軸を指令位置ａだけ回転させる変換マトリックスＭad-Tをかけることによって、Ａ軸を指令ａだけ回転させたときの指令位置が求まる。これに、工具長ベクトルを加算するマトリックスＭvt-Tをかけることによって、機械位置Ｖm-Tが求まる。
【００３９】
この機械位置を求める３式とヘッド回転式における１式を比較し、１式における変換マトリックスＭc-H，Ｍa-Hと３式における変換マトリックスＭci-T，Ｍai-Tは、角度の符号が反転している。これは、指令角度に対してヘッドは指令された方向（回転軸ベクトルのベクトルの根元側からベクトル先端側を見たとき、時計方向がプラス回転）に回転するが、テーブルは逆方向に回転するためである。
【００４０】
（２−２）ずれ（回転中心軸、主軸旋回中心の位置の乖離、及び傾斜）の要素について
この第２の実施形態（テーブル回転形）においては、（ｉ）Ｃ軸回転中心のずれ、（ii）Ａ軸回転中心のずれがあるものとする。そこで、
Ａc-T ：実際のＣ軸回転中心
Ｃc-T ：本来のＣ軸回転中心（基準位置）
Ａa-T ：実際のＡ軸回転中心
Ｃa-T ：本来のＡ軸回転中心（基準位置）
とすると、
【００４１】
（ｉ）Ｃ軸回転中心のずれ、
実際のＣ軸回転中心Ａc-Tの本来のＣ軸回転中心（基準位置）Ｃc-Tに対するずれを直線移動軸Ｘ，Ｙ，Ｚ方向のずれδc-T(δcx-T, δcy-T, δcz-T)と、該各軸周りの回転ずれ（αc-T, βc-T, γc-T）で表す。
δc-T(δcx-T, δcy-T, δcz-T) ：
実際のＣ軸回転中心Ａc-Tから本来のＣ軸回転中心Ｃc-Tへの乖離距離のＸ，Ｙ，Ｚ各成分である。本来のＣ軸回転中心Ｃc-Tと本来のＡ軸回転中心Ｃa-Tの交点から実際のＣ軸回転中心へのベクトルとして表す。
（αc-T, βc-T, γc-T）：
実際のＣ軸回転中心Ａc-Tが本来のＣ軸回転中心Ｃc-Tから、Ｘ軸周りにαc-T、Ｙ軸周りにβc-T、Ｚ軸周りにγc-T回転して傾斜しているずれとして表す。
【００４２】
（ii）Ａ軸回転中心のずれ
実際のＡ軸回転中心Ａa-Tの本来のＡ軸回転中心（基準位置）Ｃa-Tに対するずれを、次のように表す。
δa-T (δax-T, δay-T, δaz-T) ：
本来のＡ軸回転中心Ｃa-Tから実際のＡ軸回転中心Ａa-Tへの乖離距離のＸ，Ｙ，Ｚ各成分で表す。本来のＣ軸回転中心Ｃc-Tと本来のＡ軸回転中心Ｃa-Tの交点から実際のＡ軸回転中心へのベクトルで表す。
（αa-T, βa-T, γa-T） ：
実際のＡ軸回転中心Ａa-Tが本来のＡ軸回転中心Ｃa-Tから、Ｘ軸周りにαa-T、Ｙ軸周りにβa-T、Ｚ軸周りにγa-T回転して傾斜いるずれとして表す。
なお、この第２の実施形態では、工具長ベクトルＶt-Tに対するずれはないものとする。
【００４３】
（２−３）ずれがある場合の機械位置の求め方
この第２実施形態におけるずれのある機械の機械位置は、上述したずれのない場合の機械位置を求める３式に対応する計算式は次の４式となる。  
Ｖm-T' =Ｍvt-T*Ｍad-T' *Ｍcd-T' *Ｍwo-T*Ｐ-T    ………（４）
４式に示す要素の変換マトリックスは次の通りである。
【００４４】
【数４】
2004272887.tif 000006
【００４５】
なお、指令位置Ｐ（ｘ，ｙ，ｚ）のベクトルＰ-T、及びワーク原点オフセット量ＷＯ-T  (WOx-T ,WOy-T ,WOz-T  ,1) Tの変換マトリックスＭwo-T、工具長ベクトルＶt-T (0,0,h,1) TのマトリックスＭvt-Tは、前述した通りである。
【００４６】
図８に示すように、テーブル座標系上における指令位置Ｐ（ｘ，ｙ，ｚ）のベクトルＰ-T、にワーク原点オフセット量ＷＯ-Tのベクトルを加算して機械座標系上の指令位置を求める。そして、Ｃ軸のずれδc-T(δcx-T, δcy-T, δcz-T)、（αc-T, βc-T, γc-T）とＣ軸への指令ｃによる変換行列Ｍcd-T'をかけてＣ軸のずれを補正し、Ｃ軸を指令ｃだけ回転させた位置を求める。さらに、Ａ軸のずれδa-T (δax-T, δay-T, δaz-T)、（αa-T, βa-T, γa-T）とＡ軸への指令ａによる変換行列Ｍad-T'をかけてＡ軸のずれを補正しＡ軸を指令ａだけ回転させた位置を求める。そして、工具長ベクトルＶt-T (0,0,h,1) T、のマトリックスＭvt-Tをかけて機械位置Ｖm-T'を求めるものである。
【００４７】
３．本発明の第３の実施形態（工具ヘッド及びテーブルが回転する機械）
本発明の第３の実施形態として、１軸の回転軸(Ｃ軸)でテーブル３を回転させ、他の１軸の回転軸(Ｂ軸)で工具ヘッド１を回転させる機械とし、Ｃ軸はＺ軸周り、Ｂ軸はＹ軸周りの回転とする。また、回転軸位置がともに０（Ｂ，Ｃ＝０）の場合の工具方向はＺ方向とする。
この第３の実施形態においては、次のデータが初期条件として与えられている。
・工具長ベクトルＶt-M(0,0,h,1) T
・ワーク原点オフセット量WO-M (WOx-M,WOy-M,WOz-M,1) T
・Ｃ軸の回転中心Ｃc-M (Ccx-M,Ccy-M,Ccz-M,1)T
【００４８】
（３−１）ずれがない場合の機械位置の求め方
この第３の実施形態においては、Ｘ，Ｙ，Ｚに対するテーブル座標系上の位置指令値Ｐ(ｘ，ｙ，ｚ)、および回転軸Ｂ,Ｃ軸に対する位置指令値Ｒ(ｂ，ｃ)が与えられたとき、次の演算を行って工具長補正をした機械位置Ｖm-M(ｘ，ｙ，ｚ，１)Tを求める。
Ｖp-M＝Ｍcd-M＊Ｍwo-M＊Ｐ-M    …………（５）
Ｖv-M＝Ｍb-M＊Ｖt-M            …………（６）
とすると、
Ｖm-M＝Ｖp-M＋Ｖv-M            …………（７）
上記５〜７式における各要素は以下の通りである。
【００４９】
【数５】
2004272887.tif 000007
【００５０】
すなわち、図９に示すように、テーブル座標系上の位置指令値Ｐ(ｘ，ｙ，ｚ)を示すベクトルＰ-Mにワーク原点オフセット量WO-M (WOx-M,WOy-M,WOz-M,1) TのベクトルＭwo-Mを加算し、さらに、Ｃ軸回転指令ｃの回転変換マトリックスＭcd-Mをかけて、Ｃ軸を指令ｃだけ回転させた後の指令位置Ｖp-Mを求める（５式）。  
また、工具長ベクトルＶt-MにＢ軸を指令ｂだけ回転させる回転変換マトリックスＭb-MをかけてＢ軸をｂだけ回転させた工具長ベクトルＶv-M を求める（６式）。
そして、上記７式に示すように、Ｃ軸を指令ｃだけ回転させた後の指令位置Ｖp-MにＢ軸をｂだけ回転させた工具長ベクトルＶv-Mを加算することによって、機械位置Ｖm-Mが求まる。
【００５１】
（３−２）ずれ（回転中心軸、主軸旋回中心の位置の乖離、及び傾斜）の要素について
この第３の実施形態（工具ヘッド及びテーブル回転形）において発生するずれを、（ｉ）Ｃ軸回転中心のずれ、（ii）Ｂ軸回転中心のずれとする。そこで、
Ａc-M ：実際のＣ軸回転中心
Ｃc-M ：本来のＣ軸回転中心（基準位置）
Ａb-M ：実際のＢ軸回転中心
Ｃb-M ：本来のＢ軸回転中心（基準位置）
とすると、
【００５２】
（ｉ）Ｃ軸回転中心のずれ、
実際のＣ軸回転中心Ａc-Mの本来のＣ軸回転中心（基準位置）Ｃc-Mに対するずれを直線移動軸Ｘ，Ｙ，Ｚ方向のずれδc-M(δcx-M, δcy-M, δcz-M)と、該各軸周りの回転ずれ（αc-M, βc-M, γc-M）で表す。
δc-M(δcx-M, δcy-M, δcz-M)：
実際のＣ軸回転中心Ａc-Mから本来のC軸回転中心Ｃc-Mへの乖離距離のＸ，Ｙ，Ｚ各成分である。
（αc-M, βc-M, γc-M）：
実際のＣ軸回転中心Ａc-Mが本来のＣ軸回転中心Ｃc-Mから、Ｘ軸周りにαc-M、Ｙ軸周りにβc-M、Ｚ軸周りにγc-M回転して傾斜しているずれを表す。
【００５３】
（ii）Ｂ軸回転中心のずれ
実際のＢ軸回転中心Ａb-Mの本来のＢ軸回転中心（基準位置）Ｃb-Mに対するずれを、次のように表す。
δb-M(δbx-M, δby-M, δbz-M) ：
本来のＢ軸回転中心Ｃb- Mから実際のＢ軸回転中心Ａb- Mへの乖離距離のＸ，Ｙ，Ｚ各成分で表す。
（αb-M, βb-M, γb-M） ：
実際のＢ軸回転中心Ａb-Mが本来のＢ軸回転中心Ｃb-Mから、Ｘ軸周りにαb-M、Ｙ軸周りにβb-M、Ｚ軸周りにγb-M回転して傾斜していることを表す。  
また、工具長ベクトルＶt-Mに対するずれはないものとする。
【００５４】
（３−３）ずれがある場合の機械位置の求め方
この第３実施形態におけるずれのある機械の機械位置は、上述したずれのない場合の機械位置を求める５〜７式に対応する計算式は次の８〜１０式となる。
Ｖp-M'＝Ｍcd-M'＊Ｍwo-M＊Ｐ-M    …………（８）
Ｖv-M'＝Ｍb-M'＊δb-M＊Ｖt-M      …………（９）
Ｖm-M'＝Ｖp-M'＋Ｖv-M'         …………（１０）
上記８〜１０式における各要素は以下の通りである。
【００５５】
【数６】
2004272887.tif 000008
【００５６】
すなわち、図１０に示すように、テーブル座標系上の位置指令値Ｐ(ｘ，ｙ，ｚ)を示すベクトルＰ-Mにワーク原点オフセット量WO-M (WOx-M,WOy-M,WOz-M,1) Tのベクトルを加算するマトリックスＭwo-Mをかけて機械座標系上の指令位置を求める。そして、Ｃ軸のずれδc-M(δcx-M, δcy-M, δcz-M)、（αc-M, βc-M, γc-M）とＣ軸への指令ｃによる変換マトリックスＭcd-M'をかけてＣ軸のずれを補正し、Ｃ軸を指令ｃだけ回転させた位置Ｖp-M'を求める（８式）。
【００５７】
また、工具長ベクトルＶt-MにＢ軸のＸ，Ｙ，Ｚ成分のずれのベクトルを加算するマトリックスδb-M をかけ、さらに、Ｂ軸の回転ずれを補正し、Ｂ軸を指令ｂだけ回転させる変換マトリックスＭb-M'をかけてＢ軸の回転ずれを補正し、Ｂ軸を指令ｂだけ回転させた工具長ベクトルＶv-M'を求める（９式）。
そして、上記１０式に示すように、Ｃ軸を指令ｃだけ回転させた後の指令位置Ｖp-M'にＢ軸をｂだけ回転させた工具長ベクトルＶv-M'を加算することによって、機械位置Ｖm-M'が求まる。
【００５８】
（４）その他の機械の場合、
主軸旋回中心が基準位置からずれている場合については、工具ヘッド回転形の機械の場合にのみ説明したが、同様にテーブル回転形機械、および、工具ヘッドおよびテーブルが回転する機械に対しても適用することができるものである。
【００５９】
さらに、工具ヘッド回転形の機械の場合において主軸旋回中心が基準位置からずれている場合について述べたが、機構上主軸旋回中心が主軸の乗った回転軸の回転中心になく、図１１に示すように、主軸旋回中心Ｃs-HがＡ軸回転中心Ｃa-Hと交差しない場合や、図１２に示すように、テーブルが回転する機械において、Ｃ軸回転中心Ｃc-TとＡ軸回転中心Ｃa-Tが交差しない場合も、本発明は適用できるものである。
【００６０】
さらに、工具ヘッド回転形の機械の場合、および、テーブル回転形機械の場合において、回転軸間は直交しているとしたが、直交していない場合にも適用できる。  
又、回転軸の構成について、上述した各実施形態では、工具ヘッド回転形の機械の場合はＣ，Ａ軸、テーブル回転形機械の場合はＡ，Ｃ軸、および、工具ヘッドおよびテーブルが回転する機械の場合はＣ，Ｂ軸、としたが、他の軸構成の機械の場合にも適用できるものであり、又、当然、１つの回転軸しか備えないものにも適用できるものである。  
さらに、回転軸位置＝０の時、工具方向はＺ軸方向としたが、他の軸方向の場合にも当然適用できるものである。
【００６１】
図１３は上述したずれを補正して機械位置を求める各実施形態の方法を実施する数値制御装置のブロック図である。  
ＣＰＵ１１は数値制御装置１００を全体的に制御するプロセッサである。ＣＰＵ１１は、ＲＯＭ１２に格納されたシステムプログラムを、バス２０を介して読み出し、該システムプログラムに従って数値制御装置全体を制御する。ＲＡＭ１３には一時的な計算データや表示データ及び表示器／ＭＤＩユニット７０を介してオペレータが入力した各種データが格納される。ＣＭＯＳメモリ１４は図示しないバッテリでバックアップされ、数値制御装置１００の電源がオフされても記憶状態が保持される不揮発性メモリとして構成される。ＣＭＯＳメモリ１４中には、インターフェイス１５を介して読み込まれた加工プログラムや表示器／ＭＤＩユニット７０を介して入力された加工プログラム等が記憶される。また、ＲＯＭ１２には、本発明のずれ補正を実施するための上述した１〜１０式の演算処理を行うソフトウェアも格納されている。
【００６２】
インターフェイス１５は、数値制御装置１００とアダプタ等の外部機器７２との接続を可能とするものである。外部機器７１側からは加工プログラム等が読み込まれる。また、数値制御装置１００内で編集した加工プログラムは、外部機器７２を介して外部記憶手段に記憶させることができる。ＰＭＣ（プログラマブル・マシン・コントローラ）１６は、内蔵されたシーケンスプログラムで工作機械の補助装置（例えば、工具交換用のロボットハンドといったアクチュエータ）にＩ／Ｏユニット１７を介して信号を出力し制御する。なお、ＰＭＣは機械側に設けられる場合がある。工作機械の本体に配備された操作盤の各種スイッチ等の信号を受け、必要な信号処理をした後、ＣＰＵ１１に渡す。
【００６３】
表示器／ＭＤＩユニット７０はディスプレイやキーボード等を備えた手動データ入力装置であり、インターフェイス１８はＣＲＴ／ＭＤＩユニット７０のキーボードからの指令，データを受けてＣＰＵ１１に渡す。
【００６４】
各軸の軸制御回路３０〜３３はＣＰＵ１１からの各軸の移動指令量を受けて、各軸の指令をサーボアンプ４０〜４３に出力する。サーボアンプ４０〜４３はこの指令を受けて、各軸（直線移動軸のＸ，Ｙ，Ｚ軸及び回転軸）のサーボモータ５０〜５３を駆動する。各軸のサーボモータ５０〜５３は位置・速度検出器を内蔵し、この位置・速度検出器からの位置・速度フィードバック信号を軸制御回路３０〜３３にフィードバックし、位置・速度のフィードバック制御を行う。なお、図１３では、位置・速度のフィードバックについては省略している。
【００６５】
また、スピンドル制御回路６０は主軸旋回指令を受け、スピンドルアンプ６１にスピンドル速度信号を出力する。スピンドルアンプ６１はスピンドル速度信号を受けて、主軸モータ６２を指令された回転速度で回転させる。ポジションコーダ６３は、主軸モータ６２の回転に同期して帰還パルスをスピンドル制御回路６０にフィードバックし、速度制御を行う。
【００６６】
上述した数値制御装置の構成は従来の数値制御装置の構成と差異はない。但し、前述したように、機械のずれを補正して指令位置を出力するソフトウエアが記憶手段内に格納され、回転軸中心の本来の位置からの乖離と傾斜のずれ、主軸旋回中心の本来の位置からの乖離と傾斜で表されるずれを補正して、移動指令を機械に出力する従来の数値制御装置にない機能が加わっているものである。
【００６７】
まず、機械に数値制御装置１００を取り付ける際に、その機械のタイプに応じて、前述したずれを数値制御装置に設定登録する。すなわち、機械が工具ヘッド回転形の機械で回転軸をＡ，Ｃ軸を備えている第１の実施形態として説明した場合においては、Ｃ軸のずれ、δac-H (δacx-H, δacy-H, δacz-H)、（αc-H, βc-H, γc-H）、Ａ軸のずれδa-H (δax-H, δay-H, δaz-H)、（αa-H, βa-H, γa-H）、主軸のずれδs-H (δsx-H, δsy-H, δsz-H)、εs-H（αs-H, βs-H, γs-H）を設定する。
【００６８】
又、テーブルが回転する第２の実施形態として説明した機械の場合には、Ｃ軸のずれδc-T(δcx-T, δcy-T, δcz-T)、（αc-T, βc-T, γc-T）、Ａ軸のずれδa-T (δax-T, δay-T, δaz-T)、（αa-T, βa-T, γa-T）を設定する。又、第３の実施形態のとして説明した機械の場合には、Ｃ軸のずれδc-M(δcx-M, δcy-M, δcz-M)、（αc-M, βc-M, γc-M）、Ｂ軸のずれδb-M(δbx-M, δby-M, δbz-M)、（αb-M, βb-M, γb-M）を設定する。
【００６９】
これらずれ量を設定する方法としては、数値制御装置１００内のＣＭＯＳメモリ１４等に設けられたパラメータに設定する。又は、機械に予めこれらの誤差量を記憶しておき、機械を数値制御装置１００に接続したとき、機械側に設けられたＰＬＣ（プログラマブル・ロジック・コントローラ）からこのずれ量を送信し、この送り込まれてきたずれ量を設定するようにする。さらには、外部コンピュータからインターフェイス１５等を介して、ずれ量を通信で受信しこれを設定するようにする。
【００７０】
そして、数値制御装置１００には、接続した機械のタイプ、すなわち、工具ヘッド回転形の機械か、テーブル回転形の機械か、工具ヘッド及びテーブルが回転する機械か等の機械のタイプを設定しておく。なお、工具長、ワーク原点（ワーク原点オフセット）、さらには、テーブル回転形の機械の場合には、Ａ軸の回転中心とＣ軸の回転中心の交点が設定、工具ヘッド及びテーブルが回転する機械の場合には、Ｃ軸回転中心位置が設定されているものとする。
【００７１】
図１４は、数値制御装置１００が実行する工具長補正の処理のフローチャートである。  まず、ＣＰＵ１１は、ずれ量が設定されているか否か判別し（ステップ１）、ずれ量が設定されていなければ、設定されている機械の構成（タイプ）を判別し（ステップ２）、工具ヘッド回転形の機械であれば前述した１式の演算処理を選択し（ステップ３）、以後プログラムで指令される位置指令に対して１式の演算を行って工具長補正処理がなされる。
【００７２】
又、テーブル回転形の機械であれば３式の演算処理を選択し（ステップ４）、工具ヘッド及びテーブルが回転する機械であれば５〜７式の演算処理を選択し（ステップ５）、以後プログラムで指令される位置指令に対して選択された演算処理を行って工具長補正処理がなされる。
【００７３】
又、ずれ量が設定されている場合には、機械の構成（タイプ）を判別し（ステップ６）、工具ヘッド回転形の機械であれば前述した２式の演算処理を選択し（ステップ７）、テーブル回転形の機械であれば４式の演算処理を選択し（ステップ８）、工具ヘッド及びテーブルが回転する機械であれば８〜１０式の演算処理を選択し（ステップ９）、以後プログラムで指令される位置指令に対して選択された演算処理を行って工具長補正処理がなされる。
【００７４】
なお、この工具長補正の計算はブロック毎に行うことも可能であるが、補間周期で行うことや、数値制御装置内における他のタイミングで行うことも可能である。
【図面の簡単な説明】
【００７５】
【図１】Ａ軸、Ｃ軸の回転軸を有する機械において、ずれのない場合での機械位置の算出を説明する説明図である。
【図２】同機械においてずれを有するときの機械位置算出の説明図である。
【図３】同機械においてずれ部分の拡大説明図である。
【図４】同機械において、主軸旋回中心のずれによる工具長ベクトルの変化の説明図である。
【図５】同機械において、Ａ軸回転中心のずれとＡ軸への指令による工具長ベクトルの変化の説明図である。
【図６】同機械において、Ｃ軸回転中心のずれとＣ軸への指令による工具長ベクトルの変化の説明図である。
【図７】テーブルに回転軸Ａ，Ｃ軸を有する機械において、ずれがない場合の機械位置の求め方の説明図である。
【図８】テーブルに回転軸Ａ，Ｃ軸を有する機械において、ずれがある場合の機械位置の求め方の説明図である。
【図９】工具ヘッドとテーブルに回転軸を有する機械において、ずれがない場合の機械位置の求め方の説明図である。
【図１０】工具ヘッドとテーブルに回転軸を有する機械おいて、ずれがある場合の機械位置の求め方の説明図である。
【図１１】本発明が適用可能な主軸旋回中心がＡ軸回転中心と交差しない機械の説明図である。
【図１２】本発明が適用可能なテーブルが回転する機械において、Ｃ軸回転中心とＡ軸回転中心が交差しない機械の説明図である。
【図１３】各機械のずれを補正して工具長補正を行う数値制御装置の一実施形態の要部ブロック図である。
【図１４】同数値制御装置の一実施形態が実行する工具長補正の処理フローチャートである。
【符号の説明】
【００７６】
１  工具ヘッド
２  工具
３  テーブル
【図１】
2004272887.tif 000009
【図２】
2004272887.tif 000010
【図３】
2004272887.tif 000011
【図４】
2004272887.tif 000012
【図５】
2004272887.tif 000013
【図６】
2004272887.tif 000014
【図７】
2004272887.tif 000015
【図８】
2004272887.tif 000016
【図９】
2004272887.tif 000017
【図１０】
2004272887.tif 000018
【図１１】
2004272887.tif 000019
【図１２】
2004272887.tif 000020
【図１３】
2004272887.tif 000021
【図１４】
2004272887.tif 000022