"互いに相対的に移動可能な第1移動部及び第2移動部を備えた機械において、これらのうちの何れかに、少なくとも2つの並進軸と、少なくとも1つの回転軸がそれぞれ配置され、前記機械の幾何学的な誤差を補償するための補償値が適用された複数の指令値を用いて前記第1移動部及び/又は第2移動部の移動を制御する制御方法であって、第1移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第1インデックスと、第2移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第2インデックスとを有し、前記第1インデックスの示す前記回転軸の有無ないしつながり順番に従って、第2移動部の座標系における前記指令値をマトリックス演算して第1ベクトルを求めると共に、前記第2インデックスの示す前記回転軸の有無ないしつながり順番に従って、第1移動部の基準ベクトルをマトリックス演算して第2ベクトルを求め、前記第1ベクトルと前記第2ベクトルを合算することで前記補償値が適用された前記指令値とすることを特徴とする機械の移動部の制御方法。前記並進軸が直交していない場合に、前記並進軸の相対角度を表すマトリックスを、前記補償値が適用された前記指令値に対して乗算し、前記補償値が適用された指令値を更新することを特徴とする請求項1に記載の機械の移動部の制御方法。互いに相対的に移動可能な第1移動部及び第2移動部を備えた機械において、これらのうちの何れかに、少なくとも2つの並進軸と、少なくとも1つの回転軸がそれぞれ配置され、前記機械の幾何学的な誤差を補償するための補償値が適用された複数の指令値を用いて前記第1移動部及び/又は第2移動部の移動を制御する制御方法であって、第1移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第1インデックスと、第2移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第2インデックスとを有し、前記第1インデックスの要素毎に計算処理を場合分けし、前記第1インデックスの回転軸の有無ないしつながり順番に従って、第2移動部の座標系における前記指令値に対して前記場合分けされた計算処理を行って第1ベクトルを求めると共に、前記第2インデックスの要素毎に計算処理を場合分けし、前記第2インデックスの回転軸の有無ないしつながり順番に従って、第1移動部の基準ベクトルに対して前記場合分けされた計算処理を行って第2ベクトルを求め、前記第1ベクトルと前記第2ベクトルを合算することで前記補償値が適用された前記指令値とすることを特徴とする機械の移動部の制御方法。前記並進軸が直交していない場合に、前記並進軸の相対角度を用いて前記補償値が適用された前記指令値を変換して更新することを特徴とする請求項3に記載の機械の移動部の制御方法。機械は工作機械であり、第1移動部は工具を装着可能な主軸であり、第2移動部はワークを載置可能なテーブルであることを特徴とする請求項1ないし請求項4の何れかに記載の機械の移動部の制御方法。請求項1ないし請求項5の何れかに記載の機械の移動部の制御方法を、コンピュータに実行させるための機械の移動部の制御プログラム。しかし、特許文献1のものでは、前記各機械タイプによって計算式を用意する必要があることから、汎用性がなく、機械タイプ毎に異なる実装や管理を施さなければならず、煩わしい。更に、それぞれの計算においては、次に示す[数1]のように、4行4列のマトリックスと4行1列のマトリックスの乗算を行っているが、この計算では、加算を12回、乗算を16回行う必要があり、計算量が非常に多いものとなっている。しかも、このような計算は、実際に必要な最小限の計算に比べて多大なものとなっている。即ち、実際の計算において、例えば並進運動のマトリックス計算を行う場合、次の[数2]のように加算3回のみを行うだけで良い。従って、このような計算は、無駄な加算乗算を行う非常に効率の悪いものであり、処理能力の高いCPUを必要とする等コスト高となり処理速度の低下を招くという課題がある。そこで、本発明のうち、請求項1~5,6に記載のものでは、5軸機工作機械を始めとする機械において、様々なタイプの機械において共通の計算を行えると共に、計算量を少なくでき、効率の良い計算が可能である制御方法,プログラムを提供することを目的とする。なお、特に請求項2,4に記載の発明では、更に並進軸が互いに直交していなくても指令値の計算を可能とすることも目的とする。上記目的を達成するために、請求項1に記載の発明は、互いに相対的に移動可能な第1移動部及び第2移動部を備えた機械において、これらのうちの何れかに、少なくとも2つの並進軸と、少なくとも1つの回転軸がそれぞれ配置され、前記機械の幾何学的な誤差を補償するための補償値が適用された複数の指令値を用いて前記第1移動部及び/又は第2移動部の移動を制御する制御方法であって、第1移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第1インデックスと、第2移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第2インデックスとを有し、前記第1インデックスの示す前記回転軸の有無ないしつながり順番に従って、第2移動部の座標系における前記指令値をマトリックス演算して第1ベクトルを求めると共に、前記第2インデックスの示す前記回転軸の有無ないしつながり順番に従って、第1移動部の基準ベクトルをマトリックス演算して第2ベクトルを求め、前記第1ベクトルと前記第2ベクトルを合算することで前記補償値が適用された前記指令値とすることを特徴とするものである。請求項2に記載の発明は、上記発明にあって、前記並進軸が直交していない場合に、前記並進軸の相対角度を表すマトリックスを、前記補償値が適用された前記指令値に対して乗算し、前記補償値が適用された指令値を更新することを特徴とするものである。請求項3に記載の発明は、互いに相対的に移動可能な第1移動部及び第2移動部を備えた機械において、これらのうちの何れかに、少なくとも2つの並進軸と、少なくとも1つの回転軸がそれぞれ配置され、前記機械の幾何学的な誤差を補償するための補償値が適用された複数の指令値を用いて前記第1移動部及び/又は第2移動部の移動を制御する制御方法であって、第1移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第1インデックスと、第2移動部側における前記回転軸の有無ないし有る場合のつながり順番を示す第2インデックスとを有し、前記第1インデックスの要素毎に計算処理を場合分けし、前記第1インデックスの回転軸の有無ないしつながり順番に従って、第2移動部の座標系における前記指令値に対して前記場合分けされた計算処理を行って第1ベクトルを求めると共に、前記第2インデックスの要素毎に計算処理を場合分けし、前記第2インデックスの回転軸の有無ないしつながり順番に従って、第1移動部の基準ベクトルに対して前記場合分けされた計算処理を行って第2ベクトルを求め、前記第1ベクトルと前記第2ベクトルを合算することで前記補償値が適用された前記指令値とすることを特徴とするものである。請求項4に記載の発明は、上記発明にあって、前記並進軸が直交していない場合に、前記並進軸の相対角度を用いて前記補償値が適用された前記指令値を変換して更新することを特徴とするものである。請求項5に記載の発明は、上記発明にあって、機械は工作機械であり、第1移動部は工具を装着可能な主軸であり、第2移動部はワークを載置可能なテーブルであることを特徴とするものである。上記目的を達成するために、請求項6に記載の発明は、上記の機械の移動部の制御方法をコンピュータに実行させるための機械の移動部制御プログラムであることを特徴とする。本発明によれば、様々なタイプの工作機械において共通の計算を行え、タイプ毎に計算式を用意する必要がなくなり汎用的にでき、用意していないタイプの機械にも対応できるようになって、導入や管理を容易に行える。又、並進軸が互いに直交していなくても指令値の計算が可能となるし、計算量を少なくでき、効率の良い計算が可能になり、処理能力が低く安価なCPUを採用することができるようになる。以下、本発明に係る実施の形態の例として、3つの並進軸X軸Y軸Z軸と2つの回転軸R1軸R2軸を有する5軸機について説明する第1形態及び第2形態。このような5軸機は、第1移動部としての主軸頭と、第2移動部としてのテーブルを有し、主軸やテーブルは、当該並進軸や回転軸が適宜配置されることにより、並進移動や回転移動をする。又、このような5軸機にあっては、図1~3で示す各種のタイプが存在する。図1で示すタイプは、R1軸R2軸としてテーブル側のC軸A軸が相当し、図2で示すタイプは、R1軸R2軸として主軸側のB軸C軸が相当し、図3で示すタイプは、R1軸R2軸として主軸側のB軸テーブル側のC軸が相当する。これら工作機械は、それぞれ図示しない制御装置コンピュータを有しており、当該制御装置が出力する各種指令値に応じて対応する軸が駆動される。制御装置は、記憶手段を含んでおり、当該記憶手段は、揮発性若しくは不揮発性のメモリ、又はこれらの組合せ等により構成される。記憶手段には、指令値の適切な計算等を行うためのプログラムが格納されている。なお、工作機械として、3つの並進軸と2つの回転軸を有する5軸機以外の5軸機を用いても良いし、5軸以外の機械を用いても良い。又、工作機械として、マシニングセンタ図1~3に代えて、旋盤、複合加工機、研削盤等を採用することができる。更に、工作機械に限らず、ロボット、産業機械、建築機械等の各種機械に適用しても良い。[第1形態]ワークとテーブルの間に配置される回転軸の種類につきワーク側から並べた組をWリンクと呼ぶことにする。換言すれば、Wリンクは、ワークからテーブル側への回転軸へのつながり順番を表す第1インデックス。例えば、回転軸がテーブル側に2軸ともあり、ワーク、R1軸、R2軸の順番である場合、Wリンクは[R1,R2]となり、Wリンクの要素はR1及びR2となる。一方、回転軸がテーブル側にR1軸だけの場合、Wリンクは[R1]となり、Wリンクの要素はR1となる。他方、テーブル側に回転軸がない場合、Wリンクは0となり、Wリンクの要素はなしとなる。一方、主軸と機械本体の間に配置される回転軸の種類につき主軸側から並べた組をTリンクと呼ぶことにする。換言すれば、Tリンクは、主軸からの回転軸のつながり順番を表す第2インデックス。例えば、回転軸が主軸側に2軸ともあり、主軸、R1軸、R2軸の順番である場合、Tリンクは[R1,R2]となり、Tリンクの要素はR1及びR2となる。一方、回転軸が主軸側にR2軸だけの場合、Tリンクは[R2]となり、Tリンクの要素はR2となる。他方、主軸側に回転軸がない場合、Tリンクは0となり、Tリンクの要素はなしとなる。前記機械に幾何誤差がない場合について説明する。工具先端点座標指令値をPx,y,zとし、工具の傾き指令値を回転軸の指令値で表すこととして、各回転軸の指令値をR1軸につきr1、R2軸につきr2とする。一方、Wリンクの要素がR1及びR2の場合、Wリンクに従った変換行列Mwlは次の[数3]となる。Wリンクに従うことは、換言すれば、Wリンクの要素の順番通り、R1に関する行列R1に対応する回転変換行列、後述をまず演算対象とし、次いでR2に関する行列R2に対応する回転変換行列、後述をR1に関する行列とにおいて演算するために、R2を前側に配置して被乗算行列として、行列の乗算を行うことを意味し、式での順番はWリンクの要素の順番と逆となる。なお、回転軸が3つ以上の場合でも、ここでの場合と同様に、式での順番を丁度逆にする式の右から辿るとWリンクの要素の順序と同じとなる。ここで、変換行列M1oiとM2oiはそれぞれ、機械座標系におけるR1軸,R2軸の回転中心位置D1x1,y1,z1,D2x2,y2,z2を考慮した回転変換行列であり、下記[数4],[数5]から求めることができる。[数4],[数5]における変換行列M1,M2は、回転軸R1、R2がX,Y,Z軸と平行なA,B,C軸周りの回転行列の何れかであり、それぞれの回転軸指令値をa,b,cとすると、次の[数6]の変換行列Ma,Mb,Mcの何れかを選択する。若しくは、回転軸の回転軸ベクトルをRvλ,μ,νとし、回転軸の指令値をθとした場合、次の[数7]の変換行列Mωを選択する。要素がR1のみ若しくはR2のみの場合、変換行列MwlはM1oi若しくはM2oiとなり、Wリンクの要素がない場合は単位行列Iとなる。一方、Tリンクの要素がR1及びR2の場合、Tリンクに従った変換行列Mtlは次の[数8]となる。Tリンク[R1,R2]に従うので、変換行列Mtlは、R2に係る変換行列とR1に係る変換行列をこの順で乗算して算出されるものとなる。ここで、変換行列M1oとM2oはそれぞれ、下記[数9],[数10]から求めることができる。一方、Tリンクの要素がR1のみ若しくはR2のみの場合、変換行列Mtlは、M1o若しくはM2oとなり、要素がない場合は単位行列Iとなる。各駆動軸の基準となる機械座標系に対するワークの基準座標系の原点をPwxw,yw,zwとし、ワーク基準座標系を機械座標系のX,Y,Z軸に対してそれぞれaw、bw、cwだけ回転させるとすると、機械座標系上の先端点指令値Po’は次の[数11]となる。ここで、変換行列Mwは、下記[数12]で求めることができる。ただしMaw,Mbw,Mcwの掛け合わせる順番を変更しても良い。更に、テーブル側回転軸により回転された機械座標系上の先端点指令値Pwlは、次の[数13]となる。一方、工具長をtとすると、主軸側回転軸により回転された回転軸基準点Ptlは次の[数14]となる。次に、機械座標系でのX,Y,Z軸の指令値Pmxm,ym,zmは、下記[数15]から求めることができる。更に、X,Y,Z軸の指令値PnX,Y,Zは、次の[数16]から求める。ここで、τは並進軸の関係を表すものであり、各並進軸が直交している場合は単位行列Iとなる。図3の機械の場合、X軸とY軸は直交しておらず、図4に示すようにθだけ傾いている。この場合のτは下記[数17]となる。次に、機械に幾何誤差が存在する場合について説明する。幾何誤差としては、主軸工具の傾き誤差ωtαt,βt,γt、主軸工具の位置誤差δtδxt,δyt,δzt、各回転軸の中心位置誤差δ1δx1,δy1,δz1、δ2δx2,δy2,δz2、各回転軸の回転軸ベクトル傾き誤差ω1α1,β1,γ1、ω2を考えることにする。Wリンクの要素がR1、R2の場合、Wリンクの要素の順番に従った幾何誤差を考慮した変換行列Mwl’は下記[数18]となる。ここで、変換行列M1oi’とM2oi’はそれぞれ、次に示す[数19],[数20]から求めることができる。変換行列M1’は下記[数21]の変換行列Ma1,Mb1,Mc1、変換行列M2’は[数22]の変換行列Ma2,Mb2,Mc2のいずれかを選択する。若しくは、回転軸の傾き誤差ω1、ω2の代わりに、傾き誤差を含んだ回転軸の回転軸ベクトルRv’λ’,μ’,ν’を用いて、下記[数23]の変換行列Mω’を選択する。一方、Tリンクの要素がR1及びR2の場合、Tリンクに従った幾何誤差を考慮した変換行列Mtl’は次の[数24]となる。ここで、変換行列M1o’とM2o’はそれぞれ、下記[数25],[数26]から求めることができる。以上から、幾何誤差を考慮してテーブル側回転軸により回転された機械座標系上の先端点指令値Pwl’第1ベクトルは、下記[数27]から求めることができる。一方、主軸の傾き誤差αs,βs,γs、位置誤差δxs,δys,δzsがある場合の回転軸基準点Pt’回転軸基準ベクトルは下記[数28]となる。回転軸基準点Pt’は、下記[数28]の演算により、主軸の各種幾何的誤差を打ち消した基準点となり、当該幾何学的誤差の補償を適用したものとなる。更に、幾何誤差を考慮して主軸側回転軸により回転された回転軸基準点Ptl’第2ベクトルは次の[数29]となる。従って、幾何誤差を考慮したX,Y,Z軸の指令値Pn’を求める。並進軸が直交の場合、Pn’が幾何誤差を考慮した指令値となる。一方、並進軸が直交していない場合、その関係から場合分けして計算を行い、Pn’を更新する。更新後のPn’が、当該場合の幾何誤差を考慮した指令値である。例えば、図3の形態の場合は次の[数48]の計算を行い、xn,ynを更新する。"