機械の可動部が複数の可動軸によって駆動され、前記複数の可動軸のモータを同時制御することにより前記可動部の軌跡を制御する軌跡制御装置において、各可動軸の位置指令に基づいてサーボ系応答軌跡を演算するサーボ系応答軌跡算出部と、前記位置指令から指令経路の形状が直線であるか曲線であるかを判定して形状特徴量を出力する形状特徴判定部と、前記位置指令と前記サーボ系応答軌跡と前記形状特徴量に基づいてベクトル演算により位置指令を補正し、補正後の位置指令を出力する位置ベクトル補正部と、各可動軸の位置が前記補正後位置指令に追従するようにモータ駆動トルクを出力することにより各可動軸のモータを制御する複数のサーボ制御部と、を備えることを特徴とする軌跡制御装置。前記位置ベクトル補正部は、前記サーボ系応答軌跡と前記位置指令との差に補正ゲインを乗じた補正ベクトルを前記位置指令に加算した位置を仮補正位置とし、さらに前記位置指令と前記仮補正位置と前記形状特徴量の位置関係に基づいて補正後の位置ベクトルを演算して、この位置ベクトルの各軸成分を前記補正後の位置指令として出力することを特徴とする請求項1に記載の軌跡制御装置。前記形状特徴判定部は、前記位置指令の軌跡が直線から曲線に変化する部分を抽出し、その境界点の位置と境界点の直前の移動方向とを前記形状特徴量として出力し、前記位置ベクトル補正部は、前記境界点の近傍において、前記位置指令と前記仮補正位置とが、前記境界点の直前の移動方向で定まる基準直線に対して反対となるとき、前記仮補正位置を前記基準直線上に移動させた位置を前記補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が前記基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算することを特徴とする請求項2に記載の軌跡制御装置。前記形状特徴判定部は、前記位置指令の軌跡が曲線から直線に変化する部分を抽出し、その境界点の位置と境界点の直後の移動方向とを前記形状特徴量として出力し、前記位置ベクトル補正部は、前記境界点の近傍において、前記位置指令と前記仮補正位置とが、前記境界点の直後の移動方向で定まる基準直線に対して反対となるとき、前記仮補正位置を前記基準直線上に移動させた位置を前記補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が前記基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算することを特徴とする請求項2に記載の軌跡制御装置。前記形状特徴判定部は、前記位置指令の軌跡の法線ベクトルの向きが反転する部分を抽出し、その境界点の位置と境界点における移動方向とを前記形状特徴量として出力し、前記位置ベクトル補正部は、前記境界点の近傍において、前記位置指令と前記仮補正位置とが、前記境界点における移動方向で定まる基準直線に対して反対となるとき、前記仮補正位置を前記基準直線上に移動させた位置を前記補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が前記基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算することを特徴とする請求項2に記載の軌跡制御装置。前記サーボ制御部は、規範モデル部を用いた2自由度制御器を有し、前記サーボ系応答軌跡算出部は、前記サーボ制御部で用いられている前記規範モデル部と同一のモデルに前記位置指令を与えたときの出力軌跡を前記サーボ系応答軌跡として出力することを特徴とする請求項1に記載の軌跡制御装置。前記サーボ系応答軌跡算出部は、各時刻における前記位置指令の加速度ベクトルに前記サーボ制御部の応答性で決まる所定の係数を乗じたベクトルを前記位置指令の軌跡から差し引いた軌跡を前記サーボ系応答軌跡として出力することを特徴とする請求項1に記載の軌跡制御装置。しかしながら、上記特許文献1に開示されたような方法では、単なる円または円弧のように定常的に同じ量だけ軌跡誤差が生じる場合には効果的に軌跡誤差を補正することが可能であるが、直線から円弧に切り替るような指令経路の場合、その境界の部分においては軌跡誤差を十分に補正することができず、補正後の移動経路においても軌跡誤差が残ってしまうという問題があった。つまり、直線部分では軌跡誤差が生じないため、軌跡誤差を補正するための補正量は発生しないが、円弧のような曲線部分では、前述のように指令経路の法線方向の誤差、すなわち軌跡誤差が発生するため、軌跡誤差を補正するための補正量が発生する。そして、直線部分と円弧部分の境界部分では、軌跡誤差の大きさや向きが過渡的に大きく変化することとなり、その結果、軌跡誤差を補正するための補正量も過渡的に変化することになる。このような場合には、推定した軌跡誤差をそのまま使って指令経路を補正すると、境界部分における補正量が理想的な補正量と異なってしまい、軌跡誤差を十分に補正することができない。例えば、XY平面上の指令経路に沿って移動する場合で、X軸方向に直線で移動したあと、円弧指令となる場合を考える。このとき、直線と円弧入口の接線の向きは一致しているものとし、円弧部分ではY軸は正の方向に移動するものとする。この場合、円弧の部分で発生する軌跡誤差を補正するため、指令経路に垂直な方向に補正量が加算され、補正後の指令経路は円弧部分が外側に膨らんだ経路となる。このような場合、円弧指令に移って一定の時間が経過したあとでは、補正後の経路は指令経路と一致するが、円弧指令に移った直後は、補正後の移動経路は指令経路に対してオーバーシュートし、外側に膨らんだ経路となる。つまり、円弧指令に移った直後、Y軸が一旦負方向に移動し、そののち正方向に移動する。これは、指令経路に対して垂直な方向に指令を補正するために、指令経路の円弧部分が外側に膨らんだ経路となるためであり、その際に補正後の指令経路のY軸成分が、一旦負方向に移動したあと正方向に移動するような変化をすることが原因となって生じる。工作機械においては、工具刃物の移動経路の形状が加工面に転写されるため、上記の例のように、直線から円弧の境界で本来はなめらかに軌跡が接続している部分において移動経路が外側に膨らむと、その影響が加工面に突起や筋目といった加工不良となって現れることとなり、加工面の品位を低下させるので好ましくない。本発明は、上記に鑑みてなされたものであって、直線と曲線が連続するような指令経路が与えられた場合でも、直線と曲線の境界部分のような軌跡誤差の大きさや向きが過渡的に変化する箇所も含めて軌跡誤差を十分小さく抑制した補正を行うことができる軌跡制御装置を得ることを目的とする。上述した課題を解決し、目的を達成するために、本発明の軌跡制御装置は、機械の可動部が複数の可動軸によって駆動され、前記複数の可動軸のモータを同時制御することにより前記可動部の軌跡を制御する軌跡制御装置において、各可動軸の位置指令に基づいてサーボ系応答軌跡を演算するサーボ系応答軌跡算出部と、前記位置指令から指令経路の形状が直線であるか曲線であるかを判定して形状特徴量を出力する形状特徴判定部と、前記位置指令と前記サーボ系応答軌跡と前記形状特徴量に基づいて位置ベクトルを補正し、補正後の位置指令を出力する位置ベクトル補正部と、各可動軸の位置が前記補正後位置指令に追従するようにモータ駆動トルクを出力することにより各可動軸のモータを制御する複数のサーボ制御部と、を備えたことを特徴とする。本発明によれば、直線と曲線が連続するような指令経路における直線と曲線の境界部分や変曲点といった、軌跡誤差の大きさや向きが過渡的に変化するような場合でも軌跡誤差を効果的に抑制することが可能となり、軌跡精度が向上する。その結果、加工面の傷や筋目といった加工不良を回避でき、加工面品位が向上するという効果を奏する。実施の形態1.図1は、本発明の軌跡制御装置の実施の形態1を示すブロック図である。軌跡制御装置10は、サーボ系応答軌跡算出部1と形状特徴判定部9と位置ベクトル補正部2と第1軸サーボ制御部7と第2軸サーボ制御部8とを含んで構成されている。工具刃物の指令経路は、NCプログラム等の形式で機械の第1軸および第2軸位置指令として与えられる。サーボ系応答軌跡算出部1において、第1軸位置指令と第2軸位置指令が与えられたときサーボ系の応答軌跡が演算される。この応答軌跡の演算方法については後述する。形状特徴判定部9は、第1軸および第2軸位置指令に基づいて決まる指令経路が直線か曲線かを判定し、直線と曲線の境界点位置および直線の方向を形状特徴量として出力する。位置ベクトル補正部2は、上記サーボ系応答軌跡と位置指令から軌跡誤差を算出し、算出した軌跡誤差と形状特徴量を用いて軌跡のオーバーシュートが生じないようにして軌跡誤差を抑制するための補正後位置指令を演算する。補正は、第1軸位置指令および第2軸位置指令を合成して指令位置ベクトルとし、これをベクトル演算することにより補正を行い、補正した結果の位置ベクトルの各軸成分を第1軸および第2軸の補正後位置指令とすることによって行う。第1軸サーボ制御部7および第2軸サーボ制御部8は、第1の可動軸の位置および第2の可動軸の位置が、第1軸補正後位置指令および第2軸補正後位置指令にそれぞれ追従するように、第1軸および第2軸のモータ駆動トルクをそれぞれ出力する。第1軸サーボ制御部7および第2軸サーボ制御部8は同一の構成をしており、そのブロック図を図2にサーボ制御部11として示す。サーボ制御部11へ入力された補正後位置指令は、減算器20でモデル位置が減算され、モデルゲイン乗算器21で第1のモデルゲインK1が乗算され、減算器22でモデル速度が減算され、さらにモデルゲイン乗算器23で第2のモデルゲインK2が乗算されてモデル加速度が出力される。積分器24でモデル加速度が積分されてモデル速度が出力され、積分器25でモデル速度が積分されてモデル位置が出力される。ここで、補正後位置指令が入力され、モデル位置、モデル速度及びモデル加速度が出力されるブロックを規範モデル部12と呼ぶ。減算器26でモデル位置からモータ位置信号が減算されて位置誤差が出力される。位置制御器27では位置誤差に対して比例制御等の制御を行う。加減算器28において位置制御器出力にモデル速度が加算され、さらにモータ速度信号が減算されて速度誤差が出力される。速度制御器29では速度誤差に対して比例制御あるいは積分制御等の制御を行う。乗算器30で、モデル加速度に制御対象のイナーシャに相当する値を乗算してモデルトルクが演算され、加算器31で速度制御器出力にモデルトルクが加算されてモータトルク信号が出力される。モータ32および負荷33からなる機械系13は、このモータトルク信号により駆動され、モータ速度信号とモータ位置信号がフィードバック信号としてサーボ制御部11へ出力される。本実施の形態のサーボ制御部11は、規範モデル部12を用いた2自由度制御器であり、指令に対する追従性と外乱に対する応答性を独立して設計することができる。位置指令に対するモータ位置の追従性は第1のモデルゲインK1および第2のモデルゲインK2で決まり、外乱に対するモータ位置の応答性は位置制御器および速度制御器の設計で決まる。したがって、モータ位置の応答は、実際の制御対象の特性にかかわらず、規範モデルの出力であるモデル位置に追従するように制御される。サーボ系応答軌跡算出部1におけるサーボ系応答軌跡の演算は、以下のように行われる。前述のように、サーボ系の応答は規範モデルの応答で表すことができるので、第1軸および第2軸位置指令が入力として与えられた場合の、規範モデルの出力であるモデル位置を求めることにより第1軸および第2軸のサーボ系応答位置をそれぞれ求める。そして、第1軸および第2軸のサーボ系応答位置を各可動軸方向の成分とするベクトルをサーボ系応答位置ベクトルとし、この位置ベクトルが描く軌跡をサーボ系応答軌跡とする。規範モデルの出力であるモデル位置は、図2に示す規範モデル部12を微分方程式、差分方程式、伝達関数等の形式で表し、数値計算によりその解を計算することで求めることができる。また、指令形状が既知である場合は、積分計算により解析解を求めることができる。例えば、図2に示した規範モデルの伝達関数Gmsは次式で表される。規範モデルにある入力が与えられたときの出力は、規範モデルの伝達関数と与えられた入力のラプラス変換との積を逆ラプラス変換することにより求められる。時刻tにおける第1軸および第2軸位置指令がそれぞれxc1t、xc2tで与えられたとき、位置指令ベクトルは次式で表される。このとき、第1軸および第2軸のサーボ系応答位置xr1t、xr2tは次式で表される。ただし、L[ft]はftのラプラス変換を、L-1[Fs]はFsの逆ラプラス変換を表す。また、サーボ系の応答遅れ時間は、規範モデルの伝達関数から求めることができる。ここでは、サーボ系に一定速度の入力が与えられたときの指令に対する応答の定常的な遅れ時間をサーボ系応答遅れ時間とする。図2に示した規範モデル部12では、サーボ系応答遅れ時間tdは第1のモデルゲインの逆数となり、次式で表される。図3は、実施の形態1における位置ベクトル補正部2のうち、軌跡誤差の計算部分の動作を説明する図である。ここでは、指令経路が直線と円弧が連続する経路である場合について記述している。このとき、サーボ系応答軌跡は図3の破線のような経路をとり、時刻tにおいてxrtの位置にある。軌跡誤差の推定のための演算では、サーボ系の応答遅れによる追従誤差の影響を除くため、同時刻のサーボ系応答位置と位置指令の減算ではなく、サーボ系応答遅れ時間だけすすんだサーボ系応答位置と位置指令の差を求めて軌跡誤差の推定値とする。したがって、軌跡誤差etは、次式で表される。なお、位置指令の補正をすべての時刻に対して一括して行う場合は、サーボ系応答遅れ時間分先のサーボ系応答位置を求めることは容易であるが、時々刻々の位置指令を逐次的に処理して位置指令の補正を行う場合には、位置指令をサーボ系応答遅れ時間分先読みする必要がある。図4は、形状特徴判定部9の動作を説明する図である。ここでは、指令経路が直線と円弧が連続する経路である場合について記述している。形状特徴判定部9では、指令経路が直線であるか曲線であるかを判別し、直線から曲線へと状態が変化する場合には、その境界点における位置座標値を形状特徴量境界点座標として出力し、さらに直線部分の移動方向を形状特徴量直線部分移動方向として出力する。すなわち、この場合、直線から円弧に移る場合であり、直線と円弧の継ぎ目境界点における座標xbと、その手前の直線部分における移動方向vbとを形状特徴量として出力する。指令経路が曲線であるか直線であるかの判定と、境界点の判定は、以下に挙げるようないくつかの方法が考えられるが、どの方法を用いてもよい。すなわち、1指令経路の曲率が0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定し、曲率が0から0でない値になる点を境界点とする方法、2指令経路の法線方向加速度時々刻々の位置指令ベクトルを時間について2回微分することにより求めた加速度ベクトルを、指令経路の法線方向に射影したベクトルの長さが0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定し、加速度ベクトルの長さが0から0でない値になる点を境界点とする方法、3NCプログラムを解析し、直線指令NC制御において汎用的に用いられているEIAコードにおけるG1指令などと曲線指令同G2又はG3指令などの境界を抽出し、直線指令から曲線指令に移るときの接続点を境界点とする方法、などである。なお、これらの方法の中で値が0であるかどうかを判定する場合には、数値演算の丸め誤差の影響を避けるため、所定の閾値以下であるかどうかの判定をもってその値が0であるかどうかの判定に代えるようにしてもよい。図5は、位置ベクトル補正部2のうち、形状特徴量と位置指令及び軌跡誤差から補正後の位置指令を演算する部分の動作を説明する図である。まず、軌跡誤差etに補正ゲインαをかけて符号を反転したものを仮補正ベクトルctmptとする。すなわち、補正ゲインαは通常0と1の間で設定され、1に近い値を設定するほど軌跡誤差を小さくすることができる。好ましくは、1に設定することにより法線方向の誤差ベクトルを打ち消すように位置指令を補正するので、軌跡誤差を効果的に抑制することができる。次に、位置指令、仮補正ベクトルおよび形状特徴量の関係から補正後位置指令xtを演算する。位置指令xctに仮補正ベクトルctmptを加算したあとの位置を、仮補正位置xtmptとする。このとき、補正ベクトル指令経路が含まれる平面内において、境界点xbを通り、移動方向vbと同じ向きの直線を基準直線と定義し、もしも位置指令xctと仮補正位置xtmptとがこの基準直線に対して反対の位置関係にある場合には、仮補正位置xtmptを基準直線上に移動させた位置を補正後位置指令xtとすることで、位置指令と補正後位置指令とが基準直線に対して反対の位置関係とならないようにする。一方、位置指令xctと仮補正位置xtmptとが基準直線に対して反対の位置関係にない場合は、仮補正位置xtmptをそのまま補正後位置指令xtとする。補正後位置指令xtを求めるための一連の演算を数式で表すと、以下のようになる。まず、位置指令xctと仮補正位置xtmptを、境界点xbを始点とするベクトルに変換し、それぞれxc’、xtmp’とおく。次に、境界点xbを通り基準直線に垂直なベクトルを基準法線ベクトルnbとして求める。ここで、基準法線ベクトルの方向は、基準法線ベクトルnbと、位置指令と境界点位置の差xc’との内積が正となるようにとる。また、基準法線ベクトルの長さは1となるように正規化する。次に、境界点xbから仮補正位置xtmptまでのベクトルxtmp’tと基準法線ベクトルnbの内積を求め、その値が負の場合は、境界点xbから以下のように仮補正位置xtmptを修正して補正後の位置xtを求める。一方、境界点xbから仮補正位置までのベクトルxtmp’tと基準法線ベクトルnbの内積が0以上の場合は、仮補正位置xtmptをそのまま補正後の位置xtとする。境界点位置から式10で求まった補正後位置指令までのベクトルと、基準法線ベクトルの内積をとると、次式のように0となる。すなわち、式10で求まる補正後位置指令は基準直線上にあることがわかる。本実施の形態では可動軸が2軸の場合なので、補正後の位置xtの第1要素x1tおよび第2要素x2tが、それぞれ第1軸および第2軸の補正後の位置指令となる。第1軸サーボ制御部711および第2軸サーボ制御部811では、それぞれ補正後位置指令x1t、x2tに対して図2に示すサーボ制御系11により第1軸および第2軸のモータが駆動され、機械の可動部の位置が制御される。図6は、本実施の形態により軌跡制御を行った場合の軌跡誤差抑制の効果を示す図である。図6のうち、aは位置ベクトルの補正を行わない場合位置指令をそのままサーボ制御部に入力した場合、bは位置ベクトルの補正は行うが形状特徴判定を行わない場合、すなわち、前述の仮補正位置xtmptを常にそのまま補正後位置指令とした場合、cは位置ベクトルの補正を行い、かつ形状特徴判定を行う場合の軌跡を示し、それぞれ細実線が指令経路、太実線が補正後位置指令の経路、破線がサーボ系応答軌跡を表している。指令経路は、直線から円弧に移る経路となっている。aの位置ベクトルの補正を行わない場合、サーボ系応答軌跡はサーボ系の応答遅れによって円弧部分で内回りをする軌跡となり、内側に軌跡誤差が生じる。bの位置ベクトルの補正は行うが形状特徴判定を行わない場合、補正後の位置指令が外側に膨らみ、その結果、位置指令が直線から円弧に移ってしばらくすると軌跡誤差はほぼ0となるが、直線と円弧の継ぎ目境界点の近傍では、サーボ系応答軌跡は補正後の位置指令が外側に膨らむ影響を受けて外側に膨らんでしまい、軌跡誤差が生じる。一方、cの位置ベクトルの補正を行い形状特徴判定も行った場合、境界点を通り直線部分の移動方向と同じ方向の直線から外側にはみ出さないように補正後の位置指令を生成するため、境界点付近でのサーボ系応答軌跡の膨らみが生じず、軌跡誤差を抑制することができる。以上のように、本実施の形態1によれば、直線であるか曲線であるかを判定する形状特徴量判定部の出力する形状特徴量に基づいて補正後の位置を演算するため、直線と曲線が連続するような指令形状における直線と曲線の境界部分や変曲点といった、軌跡誤差の大きさや向きが過渡的に変化するような場合でも軌跡誤差を効果的に抑制することが可能となり、軌跡精度が向上する。その結果、加工面の傷や筋目といった加工不良を回避でき、加工面品位が向上するという効果が得られる。また、本実施の形態1によれば、サーボ系応答軌跡と位置指令との差に補正ゲインを乗じた補正ベクトルを位置指令に加算した位置を仮補正位置とし、さらに位置指令と仮補正位置と形状特徴量の位置関係に基づいて補正後の位置ベクトルを演算して、この位置ベクトルの各軸成分を補正後の位置指令として出力することにより、指令の形状やサーボ系の応答にかかわらず軌跡誤差を抑制することができる。また、本実施の形態1によれば、位置指令の軌跡が直線から曲線に変化する部分を抽出し、その境界点の位置と境界点の直前の移動方向とを形状特徴量として出力し、位置ベクトル補正部は、境界点の近傍において、位置指令と仮補正位置とが、境界点の直前の移動方向で定まる基準直線に対して反対となるとき、仮補正位置を基準直線上に移動させた位置を補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算するので、直線から曲線に移る部分での軌跡誤差を抑制できる。さらに、本実施の形態1によれば、サーボ制御部に規範モデルを用いた2自由度制御器を用いることで、制御対象の特性にかかわらずサーボ制御部の応答を規範モデルの応答から正確に算出することができ、さらにこの規範モデルを用いて応答軌跡を求めて位置指令を補正することにより、サーボ制御部の応答性に起因して生じる軌跡誤差を正確に補正することができる。なお、本実施の形態1では、可動軸の数が2であるが、可動軸の数は3以上であってもよい。サーボ系応答軌跡ベクトル、誤差ベクトル、補正ベクトルを2次元ではなく3以上の次元のベクトルとすることで、同様の補正を行うことができる。実施の形態2.実施の形態2の構成は実施の形態1と概略同一であり、その構成は図1で表される。実施の形態1との相違点は、補正ベクトル演算部3における参照点および補正ベクトルの決定方式である。以下、これらの相違点について説明する。サーボ系応答軌跡演算部1の動作は、実施の形態1と同様である。また、位置ベクトル補正部2の動作のうち、軌跡誤差の演算の部分は実施の形態1と同様である。図7は、本実施の形態2の形状特徴判定部9の動作を示す図である。本実施の形態では、円弧から直線に移る場合の動作を想定している。したがって、形状特徴量境界点座標として、円弧と直線の継ぎ目境界点の座標値を出力し、形状特徴量直線部分移動方向として、境界点を通過したあとの直線部分の移動方向を出力する。指令経路が曲線であるか直線であるかの判定と、境界点の判定は、以下に挙げるようないくつかの方法が考えられるが、どの方法を用いてもよい。すなわち、1指令経路の曲率が0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定し、曲率が0でない値から0になる点を境界点とする方法、2指令経路の法線方向加速度時々刻々の位置指令ベクトルを時間について2回微分することにより求めた加速度ベクトルを、指令経路の法線方向に射影したベクトルの長さが0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定し、加速度ベクトルの長さが0でない値から0になる点を境界点とする方法、3NCプログラムを解析し、直線指令NC制御において汎用的に用いられているEIAコードにおけるG1指令などと曲線指令同G2又はG3指令などの境界を抽出し、曲線指令から直線指令に移るときの接続点を境界点とする方法、などである。なお、これらの方法の中で値が0であるかどうかを判定する場合には、数値演算の丸め誤差の影響を避けるため、所定の閾値以下であるかどうかの判定をもってその値が0であるかどうかの判定に代えるようにしてもよい。図8は、本発明の実施の形態2における位置ベクトル補正部2のうち、形状特徴量と位置指令及び軌跡誤差から補正後位置指令を演算する部分の動作を説明する図である。補正後位置指令を演算する手順は実施の形態1と同様であるが、本実施の形態では、円弧から直線に移る場合の動作を想定している。したがって、境界点よりも手前の円弧部分において、軌跡誤差から式6を用いて仮補正ベクトルctmptを演算し、さらに仮補正ベクトルと境界点座標xbと移動方向vbの位置関係から補正後位置指令xtを演算する。補正後の位置を求める際には、基準法線ベクトルを式9を用いて演算し、境界点xbから仮補正位置xtmptまでのベクトルxtmp’tと基準法線ベクトルnbの内積を求め、その値が負の場合は、式10を用いて仮補正位置xtmptを修正して補正後の位置xtを求める。一方、境界点xbから仮補正位置までのベクトルxtmp’tと基準法線ベクトルnbの内積が0以上の場合は、仮補正位置xtmptをそのまま補正後の位置xtとする。また、第1軸サーボ制御部7および第2軸サーボ制御部8の動作は、実施の形態1と同様である。以上のように、本実施の形態2によれば、直線であるか曲線であるかを判定する形状特徴量判定部の出力する形状特徴量に基づいて補正後の位置を演算するため、直線と曲線が連続するような指令形状における直線と曲線の境界部分や変曲点といった、軌跡誤差の大きさや向きが過渡的に変化するような場合でも軌跡誤差を効果的に抑制することが可能となり、軌跡精度が向上する。その結果、加工面の傷や筋目といった加工不良を回避でき、加工面品位が向上するという効果が得られる。また、本実施の形態2によれば、サーボ系応答軌跡と位置指令との差に補正ゲインを乗じた補正ベクトルを位置指令に加算した位置を仮補正位置とし、さらに位置指令と仮補正位置と形状特徴量の位置関係に基づいて補正後の位置ベクトルを演算して、この位置ベクトルの各軸成分を補正後の位置指令として出力することにより、指令の形状やサーボ系の応答にかかわらず軌跡誤差を抑制することができる。また、本実施の形態2によれば、位置指令の軌跡が曲線から直線に変化する部分を抽出し、その境界の位置と、境界の直前の移動方向を形状特徴量として出力し、位置ベクトル補正部は、境界点の近傍において、位置指令と仮補正位置とが、境界点の直前の移動方向で定まる基準直線に対して反対となるとき、仮補正位置を基準直線上に移動させた位置を補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算するので、曲線から直線に移る部分での軌跡誤差を抑制できる。さらに、本実施の形態2によれば、サーボ制御部に規範モデルを用いた2自由度制御器を用いることで、制御対象の特性にかかわらずサーボ制御部の応答を規範モデルの応答から正確に算出することができ、さらにこの規範モデルを用いて応答軌跡を求めて位置指令を補正することにより、サーボ制御部の応答性に起因して生じる軌跡誤差を正確に補正することができる。なお、本実施の形態2では、可動軸の数が2であるが、可動軸の数は3以上であってもよい。サーボ系応答軌跡ベクトル、誤差ベクトル、補正ベクトルを2次元ではなく3以上の次元のベクトルとすることで、同様の補正を行うことができる。実施の形態3.実施の形態3の構成は、実施の形態2の構成と概略同一であり、その全体構成は図1で表される。実施の形態2との相違点は、サーボ系応答軌跡演算部の動作である。また、指令経路の形状として、向きが異なる連続する円弧指令を与えている。図9は、本実施の形態3におけるサーボ系応答軌跡演算部1の動作を説明する図である。本実施の形態3では、サーボ系の応答軌跡を、サーボ系のモデルを用いて求めるのではなく、位置指令の情報のみを用いて求める。指令形状が円弧などのなめらかに変化する形状である場合、軌跡誤差は、指令経路の加速度方向に、加速度の大きさに比例して生じる性質がある。この比例係数は、サーボ系の応答性から定める。時刻tにおけるサーボ系応答の位置を、同時刻における位置指令に誤差ベクトルetを加算することにより求める。軌跡誤差ベクトルetは、位置指令の加速度ベクトルd2xc/dt2に、係数aをかけることにより求める。この係数aは、サーボ系応答遅れ時間tdの二乗に比例するように定める。この関係式は、指令加速度と軌跡誤差量の関係を実測して求める方法のほか、円弧指令時の軌跡誤差量の理論値と指令加速度の比を解析的に求める方法により設定する。後者の方法では、まず円弧指令時の軌跡誤差量を、指令半径からサーボ系の周波数応答伝達関数の絶対値に指令半径を乗じた値を引くことにより求め、この軌跡誤差量を指令加速度で除することにより求める。式で表すと、以下のようになる。半径R、各速度ωの円弧指令時の場合、軌跡誤差量と指令加速度の比は、サーボ系の伝達関数Gsを用いて以下で与えられる。ここで、jは虚数単位である。図2に示すサーボ制御系は伝達関数が式1で表され、サーボ系応答遅れ時間は式4で表される。第2のモデルゲインが第1のモデルゲインの4倍である場合、すなわちK2=4K1である場合の、軌跡誤差量とサーボ系応答遅れ時間との関係を式12を用いて求めると、次式のようになる。図10は、本実施の形態3の形状特徴判定部9の動作を示す図である。本実施の形態では、向きの違う円弧が連続して指令された場合の動作を想定している。したがって、形状特徴量境界点座標として、円弧と円弧の継ぎ目境界点の座標値を出力し、形状特徴量直線部分移動方向として、境界点における移動方向を出力する。このとき、移動方向は境界点における曲線の接線方向となる。これは、1つめの円弧と2つめの円弧の間に微小な直線部分が存在している場合と解釈することができる。境界点の判定は、以下に挙げるようないくつかの方法が考えられるが、どの方法を用いてもよい。すなわち、1指令経路の曲率が0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定するとともに、曲率中心の方向が進行方向に向かって右側にあるか左側にあるかを調べ、曲率中心の方向が変化する点を境界点とする方法、2指令経路の法線方向加速度時々刻々の位置指令ベクトルを時間について2回微分することにより求めた加速度ベクトルを、指令経路の法線方向に射影したベクトルの長さが0であるかどうかを調べ、0であれば直線、0でなければ曲線と判定し、さらに、加速度ベクトルと速度ベクトルの外積を調べ、その符号が変化する点を境界点とする方法、3NCプログラムを解析し、回転の向きの違う曲線指令NC制御において汎用的に用いられているEIAコードにおけるG2指令とG3指令などの境界を抽出する方法、などである。なお、これらの方法の中で値が0であるかどうかを判定する場合には、数値演算の丸め誤差の影響を避けるため、所定の閾値以下であるかどうかの判定をもってその値が0であるかどうかの判定に代えるようにしてもよい。図11は、本実施の形態3における位置ベクトル補正部2のうち、形状特徴量、位置指令及び軌跡誤差から補正後位置指令を演算する部分の動作を説明する図である。補正後位置指令を演算する手順は実施の形態1と同様であるが、本実施の形態では、向きの違う円弧が連続して指令された場合の動作を想定している。したがって、境界点よりも手前の円弧部分と、境界点を越えたあとの円弧部分それぞれにおいて、軌跡誤差から式6を用いて仮補正ベクトルctmptを演算し、さらに仮補正ベクトルと境界点座標xbと移動方向vbの位置関係から補正後位置指令xtを演算する。補正後の位置を求める際には、基準法線ベクトルを式9を用いて演算し、境界点xbから仮補正位置xtmptまでのベクトルxtmp’tと基準法線ベクトルnbの内積を求め、その値が負の場合は、式10を用いて仮補正位置xtmptを修正して補正後の位置xtを求める。一方、境界点xbから仮補正位置までのベクトルxtmp’tと基準法線ベクトルnbの内積が0以上の場合は、仮補正位置xtmptをそのまま補正後の位置xtとする。また、第1軸サーボ制御部7および第2軸サーボ制御部8の動作は、実施の形態1と同様である。以上のように、本実施の形態3によれば、直線であるか曲線であるかを判定する形状特徴量判定部の出力する形状特徴量に基づいて補正後の位置を演算するため、直線と曲線が連続するような指令形状における直線と曲線の境界部分や変曲点といった、軌跡誤差の大きさや向きが過渡的に変化するような場合でも軌跡誤差を効果的に抑制することが可能となり、軌跡精度が向上する。その結果、加工面の傷や筋目といった加工不良を回避でき、加工面品位が向上するという効果が得られる。また、本実施の形態3によれば、サーボ系応答軌跡と位置指令との差に補正ゲインを乗じた補正ベクトルを位置指令に加算した位置を仮補正位置とし、さらに位置指令と仮補正位置と形状特徴量の位置関係に基づいて補正後の位置ベクトルを演算して、この位置ベクトルの各軸成分を補正後の位置指令として出力することにより、指令の形状やサーボ系の応答にかかわらず軌跡誤差を抑制することができる。また、本実施の形態3によれば、位置指令の軌跡の変曲点の部分、すなわち向きの違う円弧が連続して指令された場合の接続点を抽出し、その境界の位置と、境界における移動方向を形状特徴量として出力し、位置ベクトル補正部は、境界点の近傍において、位置指令と仮補正位置とが、境界点の直前の移動方向で定まる基準直線に対して反対となるとき、仮補正位置を基準直線上に移動させた位置を補正後の位置指令とすることで、補正前の位置指令と補正後の位置指令が基準直線に対して反対の位置関係にならないように補正後の位置ベクトルを演算するので、指令曲線の変曲点の部分での軌跡誤差を抑制できる。さらに、本実施の形態3によれば、サーボ制御部のモデルを用いずに、位置指令軌跡の情報だけでサーボ系応答軌跡を求めることにより、サーボ系応答軌跡を求めるための演算負荷を軽減することができる。なお、本実施の形態3では、可動軸の数が2であるが、可動軸の数は3以上であってもよい。サーボ系応答軌跡ベクトル、誤差ベクトル、補正ベクトルを2次元ではなく3以上の次元のベクトルとすることで、同様の補正を行うことができる。