(57)【要約】【課題】リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセット誤差を検出し、内挿誤差の補正を行なう。【解決手段】所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する際、二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶するＭ個の記憶装置を備え、時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応する前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)を保存する保存処理を行ない、前記保存処理とは独立に、前記記憶装置から角度系列データとして二相正弦波信号ΦA(k)、ΦB(k)を順次読み出し、読み出された二相正弦波信号ΦA(k)、ΦB(k)に対して漸化的最小二乗法を適用して振幅誤差、位相誤差、オフセット誤差を推定し、推定された振幅誤差、位相誤差、オフセット誤差を用いて、前記二相正弦波信号φA(n)、φB(n)の補正を行なう。【選択図】図７
2006064402.tif 000002
【特許請求の範囲】
【請求項１】
所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する内挿誤差補正方法において、
二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶するＭ個の記憶装置を備え、
時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応する前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)を保存する保存処理を行ない、
前記保存処理とは独立に、前記記憶装置から角度系列データとして二相正弦波信号ΦA(k)、ΦB(k)を順次読み出し、読み出された二相正弦波信号ΦA(k)、ΦB(k)に対して漸化的最小二乗法を適用して振幅誤差、位相誤差、オフセット誤差を推定し、
推定された振幅誤差、位相誤差、オフセット誤差を用いて、前記二相正弦波信号φA(n)、φB(n)の補正を行なうことを特徴とする内挿誤差補正方法。
【請求項２】
前記保存処理の代わりに、
二相正弦波信号φA(n)、φB(n)のＬ周期分（Ｌ：２以上の整数）の値を、１周期当たりＭ分割して記憶するＭ行Ｌ列からなる記憶装置と、前記記憶装置の保存箇所を指定するＭ個の変数ｌ(m)とを備え、
時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応するｍ行と、ｍ行に対応する変数ｌ(m)を用いて、前記記憶装置のｍ行ｌ(m)列目に二相正弦波信号φA(n)、φB(n)を保存すると共に、
前記変数ｌ(m)≠Ｌの場合は前記変数ｌ(m)に１を加え、前記変数ｌ(m)＝Ｌの場合は前記変数ｌ(m)を１にする処理を行なうことにより、
前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)のＬ周期分の値を保存する保存処理を行なうことを特徴とする請求項１に記載の内挿誤差補正方法。
【請求項３】
前記角度θ(n)と１サンプリング前の角度θ(n-1)の差の絶対値に応じて、時系列データの二相正弦波信号φA(n)、φB(n)に漸化的最小二乗法を適用する補正方法との間で切り替えを行なうことを特徴とする請求項１に記載の内挿誤差補正方法。
【請求項４】
所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する内挿誤差補正装置において、
二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶するＭ個の記憶装置を備え、
時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応する前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)を保存する保存処理を行なう手段と、
前記保存処理とは独立に、前記記憶装置から角度系列データとして二相正弦波信号ΦA(k)、ΦB(k)を順次読み出し、読み出された二相正弦波信号ΦA(k)、ΦB(k)に対して漸化的最小二乗法を適用して振幅誤差、位相誤差、オフセット誤差を推定する手段と、
推定された振幅誤差、位相誤差、オフセット誤差を用いて、前記二相正弦波信号φA(n)、φB(n)の補正を行なう手段と、を備えたことを特徴とする内挿誤差補正装置。
【請求項５】
前記保存処理を行なう手段の代わりに、
二相正弦波信号φA(n)、φB(n)のＬ周期分（Ｌ：２以上の整数）の値を、１周期当たりＭ分割して記憶するＭ行Ｌ列からなる記憶装置と、前記記憶装置の保存箇所を指定するＭ個の変数ｌ(m)とを備え、
時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応するｍ行と、ｍ行に対応する変数ｌ(m)を用いて、前記記憶装置のｍ行ｌ(m)列目に二相正弦波信号φA(n)、φB(n)を保存すると共に、
前記変数ｌ(m)≠Ｌの場合は前記変数ｌ(m)に１を加え、前記変数ｌ(m)＝Ｌの場合は前記変数ｌ(m)を１にする処理を行なうことにより、
前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)のＬ周期分の値を保存する保存処理を行なう手段を備えたことを特徴とする請求項４に記載の内挿誤差補正装置。
【請求項６】
前記角度θ(n)と１サンプリング前の角度θ(n-1)の差の絶対値に応じて、時系列データの二相正弦波信号φA(n)、φB(n)に漸化的最小二乗法を適用する補正方式との間で切り替えを行なう手段を備えたことを特徴とする請求項４に記載の内挿誤差補正装置。
【請求項７】
請求項１、２又は３に記載の内挿誤差補正方法を実施するためのコンピュータプログラム。
【請求項８】
請求項４、５又は６に記載の内挿誤差補正装置を実現するためのコンピュータプログラム。
【請求項９】
請求項７又は８に記載のコンピュータプログラムが記録された、コンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内挿誤差補正方法及び装置に係り、特に位置検出に使用される位相差９０°の二相正弦波信号を内挿して、高分解能の位置を検出する際に適用して好適な内挿誤差補正方法及び装置に関する。
【背景技術】
【０００２】
位相差９０°の二相正弦波信号を内挿して、高分解能の位置を検出する位置検出装置において、位置を検出する際に使用される二相正弦波信号は、理想的な正弦波であることが仮定されている。しかし、実際には、検出部を構成する素子のノイズや温度ドリフト等により、二相正弦波信号には振幅、位相、オフセット誤差が含まれている。その結果、検出部からサンプリング入力される二相正弦波信号から求めた位置には、理想的な正弦波の場合に対して内挿誤差が含まれてしまう。
【０００３】
この内挿誤差の補正には、（１）別の手段を用いて前もって内挿誤差を測定しておくテーブル補正方式（例えば、特許文献１参照）、（２）二相正弦波信号の最大値、最小値等から、振幅、位相、オフセット誤差を演算し内挿誤差を補正する最大振幅値方式（例えば、特許文献２参照）、（３）二相正弦波信号の１周期分のデータを用いて、振幅、位相、オフセット誤差を算出し内挿誤差を補正する最小二乗円方式（例えば、特許文献３参照）の３つが、主に行なわれている。
【０００４】
【特許文献１】特開平５−２３１８７９号公報
【特許文献２】特開平６−１６７３５４号公報
【特許文献３】特開２００３−２５４７８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、前記（１）テーブル補正方式は、内挿誤差の時間的変化に対応しておらず、又、内挿誤差を測定するために、より高精度な基準が必要であるという欠点がある。
【０００６】
前記（２）最大振幅値方式は、計算時間が短くリアルタイム補正が可能であるが、補正を行なう際に特定のデータしか用いていないため、ノイズの影響を受け易いという欠点がある。
【０００７】
前記（３）最小二乗円方式は、ノイズの影響を受け難く、内挿誤差もかなり小さくできるが、計算時間が長くリアルタイム補正が難しいという欠点がある。
【０００８】
そこで、本出願人は、以上の問題点を解決するべく、特願２００３−４１４８０１において、漸化的最小二乗法を適用した内挿誤差補正方法を、既に提案している。
【０００９】
その要旨は、所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する内挿誤差補正方法において、前記二相正弦波信号φA(n)、φB(n)に対して漸化的最小二乗法を適用して求めた振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)に基づいて、所定の更新周期Ｎ毎に振幅誤差Δ’A、Δ’B、位相誤差Δα’A、Δα’B、オフセット誤差ΔＶ’A、ΔＶ’Bを更新する補正を行ない、更新された前記各補正誤差を用いて得られた二相正弦波信号φ’A(n)、φ’B(n)に、前記サンプリング周期毎に再度漸化的最小二乗法を適用して、振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)を推定し、前記二相正弦波信号φ’A(n)、φ’B(n)の補正を行なうことにより、リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセット誤差を算出し、内挿誤差を補正することができるようにしたものである。
【００１０】
以下、参考のために、この提案済み内挿誤差補正方法を、この方法が適用される位置検出装置の概要を示す図１のブロック図と、そのアルゴリズムを示す図２のフローチャートを参照して、詳細に説明する。
【００１１】
提案済み内挿誤差補正方法は、前記の如く、所定のサンプリング周期毎にサンプリングされた二相正弦波信号に対して、漸化的最小二乗法（Ｒecursive  Ｌeast  Ｓquares  method、以下ＲＬＳ法と略記する）を適用して、振幅、位相、オフセットを補正することにより、内挿誤差を補正する際、該ＲＬＳ法を適用する前に、サンプリングされた前記二相正弦波信号に対して、ＲＬＳ法によって既に得られている補正値に基づいた補正を行なうことにより、より高精度な補正を実現しようとするものである。以下に、数式に基づきこれを具体的に説明する。なお、このＲＬＳ法については、例えば、足立修一著：“ＭＡＴＬＡＢによる制御のためのシステム同定”、東京電機大学出版局（１９９６）に説明されている。
【００１２】
いま、図１の位置検出装置において、検出部１０から所定のサンプリング周期でサンプリングされ、Ａ／Ｄ変換されてコンピュータからなるデータ処理部１２に入力される、位相差９０°の二相正弦波信号φA(n)、φB(n)を、式（１）で表わす。
【００１３】
【数１】
2006064402.tif 000003
【００１４】
ここで、ΔA(n)、ΔB(n)は振幅誤差、ΔαA(n)、ΔαB(n)は位相誤差、ΔＶA(n)、ΔＶB(n)はオフセット誤差、ｎはサンプリング番号である。
【００１５】
前記データ処理部１２において、プログラムにより構築された各演算手段（図示せず）により、図２に示すアルゴリズムに従って式（１）に対してＲＬＳ法が適用されるようになっている。具体的なＲＬＳ法の適用方法を以下に説明する。
【００１６】
最初に、式（１）に対してＲＬＳ法が適用できるように該式の線形化を行なう。
【００１７】
まず、二相正弦波信号φA(n)、φB(n)から、式（２）を用いて角度θ’(n)を求める（ステップ１０１）。但し、最初の補正処理以外は、二相正弦波信号φA(n)、φB(n)に対しては、後に詳述するステップ１００の補正を予め行ない、補正された二相正弦波信号φ’A(n)、φ’B(n)を得る。そして、二相正弦波信号φ’A(n)、φ’B(n)を二相正弦波信号φA(n)、φB(n)と考えて以下の演算を行う。
【００１８】
【数２】
2006064402.tif 000004
【００１９】
そして、ｘ(n)を式（３）のように定義する（ステップ１０２）。すると、式（１）は、下記の如く式（４）、式（５）のように線形化することができる。ここでは、式（１）のθ(n)と式（２）のθ’(n)は等しいものと考えて式（１）の線形化を行なう。なお、以下の式で、Ｔは転置行列を表わす。
【００２０】
ｘ(n)＝［ｘ1(n)  ｘ2(n)  ｘ3(n)］T＝［sinθ’(n)  cosθ’(n)  １］T
…（３）
φA(n)＝（１＋ΔA(n)）cos（θ’(n)＋ΔαA(n)）＋ΔＶA(n)
＝（１＋ΔA(n)）sin（θ’(n)＋ΔαA(n)＋π／２）＋ΔＶA(n)
＝（１＋ΔA(n)）sinθ’(n)cos（ΔαA(n)＋π／２）
＋（１＋ΔA(n)）cosθ’(n)sin（ΔαA(n)＋π／２）＋ΔＶA(n)
＝ｃA1(n)ｘ1(n)＋ｃA2(n)ｘ2(n)＋ｃA3(n)ｘ3(n)
＝ｃTA(n)ｘ(n)                                      …（４）
φB(n)＝（１＋ΔB(n)）sin（θ’(n)＋ΔαB(n)）＋ΔＶB(n)
＝（１＋ΔB(n)）sinθ’(n)cosΔαB(n)
＋（１＋ΔB(n)）cosθ’(n)sinΔαB(n)＋ΔＶB(n)
＝ｃB1(n)ｘ1(n)＋ｃB2(n)ｘ2(n)＋ｃB3(n)ｘ3(n)
＝ｃTB(n)ｘ(n)                                      …（５）
【００２１】
ここで、
【数３】
2006064402.tif 000005
である。
【００２２】
この式（４）、式（５）に対してＲＬＳ法を適用して、ｃA(n)、ｃB(n)を算出する。但し、予め下記の式（１２）の関係を求めておく（ステップ１０３）。
【００２３】
具体的には、ｘ(n)と二相正弦波信号φA(n)、φB(n)を用いて、式（１０）、式（１１）によりｃA(n)、ｃB (n)を算出する（ステップ１０４、１０５）。
【００２４】
ｃA(n)＝ｃA(n-1)＋Ｑ(n)ｘ(n)（φA(n)−ｘT(n)ｃA(n-1)）        …（１０）
ｃB(n)＝ｃB(n-1)＋Ｑ(n)ｘ(n)（φB(n)−ｘT(n)ｃB(n-1)）        …（１１）
ｃA(0)＝［０  １  ０］T
ｃB(0)＝［１  ０  ０］T
【００２５】
ここで、Ｑ(n)は式（１２）から算出される行列である。
【００２６】
【数４】
2006064402.tif 000006
【００２７】
なお、Ｑ(0)の値としては、最初は単位行列等を用いる。Ｑ(n)が十分に収束した場合は、次回以降からはこのＱ(n)の値をＱ(0)として用いる。又、γは忘却要素であり、１以下の正数である。
【００２８】
式（１０）、式（１１）により求めたｃA(n)、ｃB(n)を、式（６）、式（８）、式（７）、式（９）に適用して、振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)を算出し（ステップ１０６、１０７）、各誤差を用いて二相正弦波信号φA(n)、φB(n)の補正を行ない、補正された二相正弦波信号φ”A(n)、φ”B(n)を得る（ステップ１０８）。そして、φ”A(n)、φ”B(n)から位置を算出することで内挿誤差を補正する。
【００２９】
通常のＲＬＳ法では、前述した如くθ(n)＝θ’(n)と考え、式（１）から式（４）、式（５）の線形化を行なっている。しかし、実際には二相正弦波信号φA(n)、φB(n)に含まれている振幅、位相、オフセット誤差のため、θ(n)＝θ’(n)とはならない。その結果、式（４）、式（５）の線形化には誤差が含まれてしまい、式（４）、式（５）にＲＬＳ法を適用して算出した振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)の推定結果にも誤差が含まれてしまうことになる。
【００３０】
そこで、ここでは、式（２）を適用してθ’(n)を算出する前に、ＲＬＳ法によって既に得られている補正値から求めた振幅誤差Δ’A、Δ’B、位相誤差Δα’A、Δα’B、オフセット誤差ΔＶ’A、ΔＶ’Bを用いて、サンプリング入力される二相正弦波信号φA(n)、φB(n)の補正を行なう。
【００３１】
その結果、二相正弦波信号φA(n)、φB(n)に含まれている振幅、位相、オフセット誤差は小さくなり、ＲＬＳ法を適用して求めた振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)の推定結果に含まれている誤差も小さくできる。
【００３２】
即ち、ここでは、前記ステップ１０１において式（２）を適用する前に、ステップ１００で行なう補正に用いる振幅誤差Δ’A、Δ’B、位相誤差Δα’A、Δα’B、オフセット誤差ΔＶ’A、ΔＶ’Bを、それ以前のＲＬＳ法による推定結果から予め求めておき、更新周期Ｎで式（１３）に示す更新を行なっている（ステップ１０９）。
【００３３】
【数５】
2006064402.tif 000007
【００３４】
例えば、更新周期Ｎ＝２００とした場合、振幅誤差Δ’Aは式（１４）のようになる。
【００３５】
【数６】
2006064402.tif 000008
【００３６】
なお、更新周期Ｎ毎に更新を行なっている理由は、ＲＬＳ法による推定結果が十分に収束したときの振幅誤差ΔA(n)、ΔB(n)、位相誤差ΔαA(n)、ΔαB(n)、オフセット誤差ΔＶA(n)、ΔＶB(n)を用いるためである。但し、各補正値の初期値は０とする。又、忘却要素γはγ＝０．９９、更新周期ＮはＮ＝１００〜２００程度が好ましい。
【００３７】
以上説明した本出願人が特願２００３−４１４８０１により提案済みの内挿誤差補正方法は、リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセットの各誤差を算出し、内挿誤差を補正することができるという点で極めて優れている。
【００３８】
しかしながら、この提案済み内挿誤差補正方法は、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合には、振幅、位相、オフセットの各誤差の推定結果が発散してしまう場合がある。
【００３９】
即ち、前記提案済の具体例では、振幅、位相、オフセット誤差の時間的変化にも対応できるように忘却要素を用いている。そのため、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合、振幅、位相、オフセット誤差の推定結果が発散してしまう場合がある。どのくらいの周期で発散してしまうかに関してはシミュレーション結果を図３に示す。この図から、例えば更新周期Ｎ＝１００のときは、サンプリング周期と比較して二相正弦波信号の周期が約３５０倍以下の場合は振幅、位相、オフセット誤差の推定結果は収束するが、約３５０倍以上の場合は振幅、位相、オフセット誤差の推定結果は発散してしまう。
【００４０】
本発明は、上記問題点を解決するべくなされたもので、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合でも、リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセット誤差を算出し、内挿誤差の補正を行なうことができる内挿誤差補正方法及び装置を提供することを課題とする。
【課題を解決するための手段】
【００４１】
本発明は、所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する内挿誤差補正方法において、二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶するＭ個の記憶装置を備え、時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応する前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)を保存する保存処理を行ない、前記保存処理とは独立に、前記記憶装置から角度系列データとして二相正弦波信号ΦA(k)、ΦB(k)を順次読み出し、読み出された前記二相正弦波信号ΦA(k)、ΦB(k)に対して漸化的最小二乗法を適用して振幅誤差、位相誤差、オフセット誤差を推定し、推定された振幅誤差、位相誤差、オフセット誤差を用いて、前記二相正弦波信号φA(n)、φB(n)の補正を行なうことにより、前記課題を解決したものである。
【００４２】
前記内挿誤差補正方法においては、前記保存処理の代わりに、二相正弦波信号φA(n)、φB(n)のＬ周期分（Ｌ：２以上の整数）の値を、１周期当たりＭ分割して記憶するＭ行Ｌ列からなる記憶装置と、前記記憶装置の保存箇所を指定するＭ個の変数ｌ(m)とを備え、時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応するｍ行と、ｍ行に対応する変数ｌ(m)を用いて、前記記憶装置のｍ行ｌ(m)列目に二相正弦波信号φA(n)、φB(n)を保存すると共に、前記変数ｌ(m)≠Ｌの場合は前記変数ｌ(m)に１を加え、前記変数ｌ(m)＝Ｌの場合は前記変数ｌ(m)を１にする処理を行なうことにより、前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)のＬ周期分の値を保存する保存処理を行なうようにしてもよい。
【００４３】
又、前記内挿誤差補正方法においては、前記角度θ(n)と１サンプリング前の角度θ(n-1)の差の絶対値に応じて、時系列データの二相正弦波信号φA(n)、φB(n)に漸化的最小二乗法を適用する補正方法との間で切り替えを行なうようにしてもよい。
【００４４】
本発明は、又、所定のサンプリング周期でサンプリングして得られた位相差９０°の二相正弦波信号φA(n)、φB(n)から算出される位置に含まれる内挿誤差を補正する内挿誤差補正装置において、二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶するＭ個の記憶装置を備え、時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応する前記記憶装置に前記二相正弦波信号φA(n)、φB(n)を保存する保存処理を行なう手段と、前記保存処理とは独立に、前記記憶装置から角度系列データとして二相正弦波信号ΦA(k)、ΦB(k)を順次読み出し、読み出された前記二相正弦波信号ΦA(k)、ΦB(k)に対して漸化的最小二乗法を適用して振幅誤差、位相誤差、オフセット誤差を推定する手段と、推定された振幅誤差、位相誤差、オフセット誤差を用いて、前記二相正弦波信号φA(n)、φB(n)の補正を行なう手段と、を備えたことにより、同様に前記課題を解決したものである。
【００４５】
前記内挿誤差補正装置においては、前記保存処理を行なう手段の変わりに、二相正弦波信号φA(n)、φB(n)のＬ周期分（Ｌ：２以上の整数）の値を、１周期当たりＭ分割して記憶するＭ行Ｌ列からなる記憶装置と、前記記憶装置の保存箇所を指定するＭ個の変数ｌ(m)とを備え、時系列的に入力される二相正弦波信号φA(n)、φB(n)から算出された角度θ(n)に対応するｍ行と、ｍ行に対応する変数ｌ(m)を用いて、前記記憶装置のｍ行ｌ(m)列目に二相正弦波信号φA(n)、φB(n)を保存すると共に、前記変数ｌ(m)≠Ｌの場合は前記変数ｌ(m)に１を加え、前記変数ｌ(m)＝Ｌの場合は前記変数ｌ(m)を１にする処理を行なうことにより、前記記憶装置に、前記二相正弦波信号φA(n)、φB(n)のＬ周期分の値を保存する保存処理を行なう手段を備えるようにしてもよい。
【００４６】
又、前記内挿誤差補正装置においては、前記角度θ(n)と１サンプリング前の角度θ(n-1)の差の絶対値に応じて、時系列データの二相正弦波信号φA(n)、φB(n)に漸化的最小二乗法を適用する補正方法との間で切り替えを行なう手段を備えるようにしてもよい。
【００４７】
本発明は又、前記の内挿誤差補正方法を実施するためのコンピュータプログラムを提供するものである。
【００４８】
又、前記の内挿誤差補正装置を実現するためのコンピュータプログラムを提供するものである。
【００４９】
又、前記のコンピュータプログラムが記録された、コンピュータ読取り可能な記録媒体を提供するものである。
【発明の効果】
【００５０】
本発明によれば、サンプリング周期に比べ二相正弦波信号の周期が非常に長い場合でも、リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセットの各誤差を算出し、内挿誤差を補正することができる。従って、高分解能の位置をリアルタイム且つ高精度に検出することができる。
【発明を実施するための最良の形態】
【００５１】
以下、図面を参照して、本発明の実施の形態を詳細に説明する。
【００５２】
まず、提案済み内挿誤差補正方法と本発明の内挿誤差補正方法の違いを概念的に説明する。
【００５３】
提案済み補正方法では、ＲＬＳ法が適用される二相正弦波信号φＡ(n)、φＢ(n)を時系列のデータとして入力していたため、図４（ａ）に示すように、二相正弦波信号の周期の変動に伴い、二相正弦波信号の角度間隔も変動していた。その結果、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合、１サンプリングの間で二相正弦波信号の値があまり変化せず、ほぼ同じ値に対してＲＬＳ法が適用され続けることになり、振幅、位相、オフセットの各誤差の推定結果が発散してしまう場合があった。
【００５４】
そこで、本発明は、順次入力される時系列のデータを角度系列のデータに変換することで、図４（ｂ）に●で示すように、二相正弦波信号ΦＡ(k)、ΦＢ(k)の角度間隔をほぼ一定にし、提案済のＲＬＳ法を用いた補正方法の欠点を解決している。
【００５５】
本発明では、以下に具体例を挙げて説明するように、時系列のデータから角度系列のデータに変換するために、二相正弦波信号を記憶する記憶装置（メモリ領域）を設けている。そして、この記憶装置に二相正弦波信号を保存する処理と、この保存処理とは独立に該記憶装置から二相正弦波信号を角度系列のデータとして読み出し、読み出した二相正弦波信号に対してＲＬＳ法を実行して振幅、位相、オフセットの各誤差を推定する処理を行なっている。
【００５６】
次に、本発明の第１実施形態の内挿誤差補正方法について説明する。
【００５７】
図５には、本実施形態の補正方法が適用される内挿誤差補正装置の概要を示す。この補正装置は、検出部２０、データ記憶部２１、内挿誤差推定部２２及び内挿誤差補正部２３を備えている。
【００５８】
いま、データ記憶部２１において、検出部２０から所定のサンプリング周期毎にサンプリングされ、該データ記憶部２１に時系列データとして入力される二相正弦波信号φA(n)、φB(n)から、次の式（１４）を用いて角度θ(n)が計算される。ここで、ｎはサンプリング番号である。
【００５９】
θ(n)＝tan-1（φA(n)／φB(n)）          …（１４）
【００６０】
前記データ記憶部２１には、二相正弦波信号φA(n)、φB(n)の１周期をＭ分割して記憶する、Ｍ個の記憶装置（メモリ領域）が備えられている。そして、図６の表１及び図７の概念図に示すように、式（１４）から得られる角度θ(n)の値に応じて設定されている１〜Ｍの番号の記憶装置に、二相正弦波信号φA(n)、φB(n)が順次保存される。なお、記憶装置の初期値として、二相正弦波信号１周期分の値を予め記憶させておく。
【００６１】
このように順次入力される時系列の二相正弦波信号φＡ(n)、φＢ(n)を、式（１４）で算出される角度θ(n)に応じて角度範囲（表１）の順番に設定された１〜Ｍの記憶装置に保存することにより、時系列データから角度系列データへの変換が実現される。
【００６２】
即ち、例えば、二相正弦波信号φＡ(n)、φＢ(n)が入力され、式（１４）から求めた角度θ(n)が（２π／Ｍ）×１≦θ(n)＜（２π／Ｍ）×２であったとすると、この場合は２番目の記憶装置に二相正弦波信号φＡ(n)、φＢ(n)が保存される。１サンプリング後、二相正弦波信号φＡ(n+1)、φＢ(n+1)から求めた角度θ(n+1)がまだ（２π／Ｍ）×１≦θ(n+1)＜（２π／Ｍ）×２のままであったとすると、２番目の記憶装置に保存されていた二相正弦波信号φＡ(n)、φＢ(n)の上に二相正弦波信号φＡ(n+1)、φＢ(n+1)が上書き保存される。
【００６３】
従って、便宜上Ｍ＝８として、入力された二相正弦波信号φＡ(n)、φＢ(n)が前記図４（ａ）のようであったと仮定すると、記憶装置から読み出される二相正弦波信号ΦＡ(k)、ΦＢ(k)は、同図（ｂ）に示すように〇のデータが除かれて●で示すデータだけが保存されることになり、結果として角度間隔がほぼ一定の角度系列データに変換されることになる。
【００６４】
一方、二相正弦波信号の読み出しは、所定のサンプリング周期毎に、ｋ＝１→２→・・・→Ｍ−１→Ｍ→１→２→・・・の順に角度系列でｋ番目の記憶装置に記憶された二相正弦波信号ΦA(k)、ΦB(k)を内挿誤差推定部２２に出力する。
【００６５】
この方法により、現在の二相正弦波信号φA(n)、φB(n)を含む常に最新の１周期分の値が記憶装置に記憶されることになる。又、この記憶装置から順次読み出された、内挿誤差推定部２２に入力される二相正弦波信号ΦA(k)、ΦB(k)は、最新の１周期分の二相正弦波信号で、且つ、各二相正弦波信号の角度間隔は２・２π／Ｍ＝４π／Ｍ以下ということになる。
【００６６】
内挿誤差推定部２２では、データ記憶部２１から角度系列データに変換されて出力される、前記図４（ｂ）に示したようなほぼ等間隔の二相正弦波信号ΦA(k)、ΦB(k)に対してＲＬＳ法を用いた補正方法を適用する。そして、内挿誤差補正部２３において、内挿誤差推定部２２により推定された振幅、位相、オフセットの各誤差を用いて、既に検出部２０から入力されている前記二相正弦波信号φA(n)、φB(n)の補正を行ない、補正された二相正弦波信号φ'A(n)、φ’B(n)を得る。
【００６７】
本実施形態では、前記データ記憶部２１で式（１４）による演算を行ない、更に内挿誤差推定部２２で式（２）による演算を行なっており、この推定部２２で実行するアルゴリズムの前記図２との差異と、内挿誤差補正部２３で実行される補正処理との関係を、図８に示す。
【００６８】
以上詳述した如く、本実施形態においては、時系列データの二相正弦波信号を角度系列データの二相正弦波信号に変換した後、ＲＬＳ法を適用するようにしたので、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合でも、リアルタイム且つ高精度な内挿誤差の補正を実現することができる。
【００６９】
次に、本発明の第２実施形態を説明する。この方法は、第１実施形態のデータ記憶部２１を改良し、最大保存周期Ｌを設定して、二相正弦波信号φA(n)、φB(n)のＬ周期分（Ｌ＝２、３、４、５、・・・）の値を、１周期当たりＭ分割して記憶できるようにしたものである。具体的には、Ｍ行Ｌ列からなる記憶装置と、該記憶装置の保存箇所（領域）を指定するＭ個の変数ｌ(m)とが備えられている。なお、変数ｌ(m)の値は１〜Ｌの整数であり、初期値は全て１とする。
【００７０】
そして、図９の表２に示すように、所定のサンプリング周期毎に入力される二相正弦波信号φA(n)、φB(n)から式（１４）を用いて角度θ(n)を計算し、得られた角度θ(n)に対応する角度範囲を表わすｍ行と、このｍ行に対応する保存列を表わす変数ｌ(m)を用いて、記憶装置のｍ行ｌ(m)列目に該当する二相正弦波信号φA(n)、φB(n)を保存する。そして、もし変数ｌ(m)≠Ｌならば変数ｌ(m)に１を加えて次の保存列を設定し、変数ｌ(m)＝Ｌであった場合は変数ｌ(m)を１にし、次は１列目に戻るようにする。
【００７１】
例えば、二相正弦波信号φA(n)、φB(n)が入力され、式（１４）から求めた角度θ(n)が（２π／Ｍ）×１≦θ(n)＜（２π／Ｍ）×２であったとし、この時の変数ｌ(2)＝１であり、Ｌ＝３であった場合について、図１０を用いて説明する。なお、この図で矢印に付した１〜４の数は、以下のステップ番号を表わしている。
【００７２】
この場合、二相正弦波信号φA(n)、φB(n)は記憶装置の２行１列目に保存され（ステップ１）、次の保存列を設定するために変数ｌ(2)に１を加える。次いで、数サンプリング後に、二相正弦波信号φA(n)、φB(n)から求めた角度θ(n)が（２π／Ｍ）×１≦θ(n)＜（２π／Ｍ）×２に再度なったとする。この時は、ｌ(2)＝２なので、二相正弦波信号φA(n)、φB(n)は記憶装置の２行２列目に保存され（ステップ２）、同様に変数ｌ(2)に１を加える。
【００７３】
更に数サンプリング後に、二相正弦波信号φA(n)、φB(n)から求めた角度θ(n)が（２π／Ｍ）×１≦θ(n)＜（２π／Ｍ）×２に再度なったとする。この時は、ｌ(2)＝３なので、二相正弦波信号φA(n)、φB(n)は記憶装置の２行３列目に保存され（ステップ３）、変数ｌ(2)＝Ｌであるので変数ｌ(2)を１にする。
【００７４】
更に数サンプリング後に、二相正弦波信号φA(n)、φB(n)から求めた角度θ(n)が（２π／Ｍ）×１≦θ(n)＜（２π／Ｍ）×２に再度なったとする。この時は、ｌ(2)＝１なので、二相正弦波信号φA(n)、φB(n)は記憶装置の２行１列目に保存・更新され（ステップ４）、変数ｌ(2)に１を加える。
【００７５】
以上の処理を所定のサンプリング周期毎に全ての角度θ(n)に対して行なう。そして、所定のサンプリング周期毎に、表２の矢印が示す順序で、記憶装置に記憶された角度系列の二相正弦波信号ΦA(k)、ΦB(k)を内挿誤差推定部２２に出力する。
【００７６】
この方法により、現在の二相正弦波信号を含む常に最新のＬ周期分の値が記憶装置に記憶されることになる。また、この記憶装置から順次読み出されて内挿誤差推定部２２に入力される二相正弦波信号は、最新のＬ周期分の二相正弦波信号となる。
【００７７】
本発明では、角度θ(n)と、１サンプリング前の角度θ(n-1)の差の絶対値が２π／Ｍ以上になると、記憶装置に保存されるデータがきちんと更新されないという問題が発生する。そのため、最大速度を考慮すると角度分割数Ｍはなるべく小さい方が良いことになるが、角度分割数Ｍが小さいと逆にデータ数が少なくなるため、ノイズの影響を受け易くなってしまう。
【００７８】
ところが、この第２実施形態によれば、角度分割数Ｍを大きくせずにデータ数を増加させることができるので、ノイズの影響を受け難くすることが可能となる。
【００７９】
次に、本発明の第３実施形態の内挿誤差補正方法が適用される内挿誤差補正装置の概要を図１１に示す。この図１１は、前記図５の内挿誤差補正装置に切り替え部２４を設けたものである。
【００８０】
切り替え部２４では、二相正弦波信号φA(n)、φB(n)から式（１４）を用いて求めた角度θ(n)と、１サンプリング前の角度θ(n-1)の差の絶対値を求め、図１２の表３に示すように、その値が２π／Ｍ以下であれば角度系列のデータに変換された二相正弦波信号ΦA(k)、ΦB(k)を内挿誤差推定部２２に出力し、２π／Ｍより大きければ時系列のデータのままの二相正弦波信号φA(n)、φB(n)を内挿誤差推定部２２に出力する。
【００８１】
この方法により、本発明の第１実施形態と、提案済のＲＬＳ法を用いた内挿誤差補正方法の切り換えを行なうことが可能となり、角度に応じて適切な二相正弦波信号φA(n)、φB(n)の補正を選択して行なうことが可能となる。
【００８２】
次に、本発明に係る第１実施形態の効果をシミュレーションにより確認した結果を示す。適用したシミュレーション条件としては、二相正弦波信号の振幅誤差２％、位相誤差２°、オフセット誤差２％、ノイズを振幅の±２％、１周期のデータ数は２０００個とした。又、内挿誤差の時間的変化として、オフセット誤差が１周期当たり０．２％ずつ増加していく時間的変化を与えた。又、１周期の分割数：Ｍ＝２００とした。
【００８３】
このシミュレーション条件のときのリサージュ波形を図１３に示す。この図１３から第１実施形態による補正を行なうことにより、リサージュ波形は理想値である真円に近づいていることが分かる。又、図１４に、波長λで正規化した位置Ｐについて、このときの内挿誤差ΔＰを示す。この図１４から補正を行なうことにより内挿誤差が小さくなっていることが分かる。
【００８４】
又、図１４の内挿誤差の空間周波数解析結果を図１５に示す。この図１５から第１実施形態による補正を行なうことにより、内挿誤差であるλ、λ／２の周期の誤差が減少していることが分かる。
【００８５】
なお、前記実施形態では特に明示しなかったが、サンプリングして得られる位相差９０°の二相正弦波信号は、対応する二相信号をサンプリングする場合に限らず、３相以上の多相正弦波信号を所定のサンプリング周期でサンプリングして得られた信号から求めるようにしてもよい。
【００８６】
又、本発明においては、記憶装置に保存されるデータが確実に更新されるようにするために、１周期のデータ数≧分割数Ｍとする。
【産業上の利用可能性】
【００８７】
以上詳述したとおり、本発明によれば、位置検出装置により位相差９０°の二相正弦波信号を使って位置を検出する際に、サンプリング周期に比べて二相正弦波信号の周期が非常に長い場合でも、リアルタイム且つ高精度に二相正弦波信号の振幅、位相、オフセット誤差を検出し、内挿誤差の補正を行なうことができることから、高分解能の位置検出をリアルタイム且つ高精度に行なうことができる。
【図面の簡単な説明】
【００８８】
【図１】提案済の参考例に適用される位置検出装置の概要を示すブロック図
【図２】上記参考例のアルゴリズムを示すフローチャート
【図３】補正誤差のシミュレーション結果の一例を示す線図
【図４】本発明の特徴を示す概念図
【図５】第１実施形態の内挿誤差補正装置の概要を示すブロック図
【図６】第１実施形態のデータ記憶部の特徴を示す図表
【図７】第１実施形態のデータ記憶部の特徴を示す概念図
【図８】第１実施形態のアルゴリズムを示すフローチャート
【図９】第２実施形態のデータ記憶部の特徴を示す図表
【図１０】第２実施形態のデータ記憶部の特徴を示す概念図
【図１１】第３実施形態の内挿誤差補正装置の概要を示すブロック図
【図１２】第３実施形態の切り換え部の特徴を示す図表
【図１３】本発明の効果を示す線図
【図１４】本発明の効果を示す他の線図
【図１５】本発明の効果を示す更に他の線図
【符号の説明】
【００８９】
１０、２０…検出部
１２…データ処理部
２１…データ記憶部
２２…内挿誤差推定部
２３…内挿誤差補正部
２４…切り換え部
【図１】
2006064402.tif 000009
【図２】
2006064402.tif 000010
【図３】
2006064402.tif 000011
【図４】
2006064402.tif 000012
【図５】
2006064402.tif 000013
【図６】
2006064402.tif 000014
【図７】
2006064402.tif 000015
【図８】
2006064402.tif 000016
【図９】
2006064402.tif 000017
【図１０】
2006064402.tif 000018
【図１１】
2006064402.tif 000019
【図１２】
2006064402.tif 000020
【図１３】
2006064402.tif 000021
【図１４】
2006064402.tif 000022
【図１５】
2006064402.tif 000023