(57)【要約】【課題】サンプリング周期の長さやオフセットの大きさに関わらず、正しいオフセット量を得る。【解決手段】位相が90度異なる第１相（Ａ）と第２相（Ｂ）の信号を同一タイミングでサンプリングし、A/D変換したデジタル信号に基づき角度信号を検出するエンコーダで、第１相のA/D変換値（ＡD）が第１値（ＸA）の近傍の場合の第２の相のA/D変換値（ＢD）を用いて第２相（Ｂ）のオフセット値（Bofs）を求め、第２相のA/D変換値（ＢD）が第２値（ＸB）の近傍の場合の第１相のA/D変換値（ＡD）を用いて第１相（Ａ）のオフセット値（Aofs）を求め、次回の第１及び第２オフセット値（Aofs）（Bofs）の算出時に、第１値（ＸA）には今回求めた第１オフセット値（Aofs）を用い、第２値（ＸB）には今回求めた第２オフセット値（Bofs）を用いるオフセット検出回路と、第１及び第２オフセット値（Aofs）（Bofs）を用いて第１及び第２相信号のオフセットを補正する。【選択図】図６
2007218667.tif 000002
【特許請求の範囲】
【請求項１】
位相が相互にほぼ90度異なる第１の相の信号及び第２の相の信号を同一タイミングでサンプリングし、A/D変換して得られるデジタル信号に基づいて角度信号を検出するエンコーダにおいて、前記第１の相のA/D変換値が第１の値の近傍の場合の前記第２の相のA/D変換値を用いて前記第２の相のオフセット値（Bofs）を求め、前記第２の相のA/D変換値が第２の値の近傍の場合の前記第１の相のA/D変換値を用いて前記第１の相のオフセット値（Aofs）を求め、次回の前記第１のオフセット値（Aofs）及び前記第２のオフセット値（Bofs）を算出する時に、前記第１の値には今回求めた前記第１のオフセット値（Aofs）を用い、前記第２の値には今回求めた前記第２のオフセット値（Bofs）を用いるオフセット検出回路と、前記第１のオフセット値（Aofs）及び前記第２のオフセット値（Bofs）を用いて前記第１の相信号及び前記第２の相信号のオフセットを補正する補正回路とを備えた事を特徴とするエンコーダのオフセット補正回路。
【請求項２】
前記オフセット検出回路は、前記第１の値、前記第２の値の初期値を零とする事を特徴とする請求項1記載のエンコーダのオフセット補正回路。
【請求項３】
前記オフセット検出回路は、前記第１の相のA/D変換値が前記第１の値の近傍のしきい値で設定される範囲内にある場合における、前記第２の相の正のA/D変換値と前記第２の相の負のA/D変換値との平均値を演算し、該平均値を前記第２の相のオフセット値として検出する事と、前記第２の相のA/D変換値が前記第２の値の近傍のしきい値で設定される範囲内にある場合における、前記第１の相の正のA/D変換値と前記第１の相の負のA/D変換値との平均値を演算し、該平均値を前記第１の相のオフセット値として検出する事とを特徴とする請求項1および請求項2記載のエンコーダのオフセット補正回路。
【請求項４】
前記オフセット値は、複数の正のA/D変換値と複数の負のA/D変換値から算出した値である事を特徴とする請求項3記載のエンコーダのオフセット補正回路。
【請求項５】
平均値を求める為の前記正のA/D変換値と負のA/D変換値は、交互に更新する事を特徴とする請求項4記載のエンコーダのオフセット補正回路。
【請求項６】
前記補正回路は、前記第１の相及び前記第２の相のいずれか一方の相のＡ／Ｄ変換値から、前記オフセット検出回路で求めた一方の相のオフセット値を減算する減算回路であることを特徴とする、請求項１から５のいずれか一項記載のエンコーダのオフセット補正回路。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、本出願人による特許第３０２６９４９号「エンコーダのオフセット補正回路」の改良であって、ＮＣ工作機械，産業用ロボットに使用されるモータやリニアエンコーダの位置検出に用いられるエンコーダに関し、特にエンコーダのオフセットを補償するためのオフセット補正回路に関する。
【背景技術】
【０００２】
移動体の移動量を角度量として求める場合、移動体の移動量を位置検出器によって正弦波や余弦波等のアナログ量として検出し、検出したアナログ量をデジタル量に変換した後、エンコーダによって角度量に変換して求める方法が知られている。
【０００３】
エンコーダは、分解能を向上させるために位相のずれたＡ相信号とＢ相信号の２つの信号を検出し、この２相の信号をそれぞれＡ／Ｄコンバータでデジタル信号に変換し、変換したデジタル信号を基にして角度を算出している。エンコーダ内において正弦波や余弦波のゼロレベルがずれると、オフセットが生じ、検出された角度量にも誤差が生じることになる。
【０００４】
図１は本出願人による上記特許第３０２６９４９号に記載のエンコーダのオフセット補正回路の概略ブロック線図である。図１において、破線で示されるオフセット補正回路１は、Ａ相オフセット検出回路１０Ａと、Ｂ相オフセット検出回路１０Ｂと、減算回路１１Ａ，１１Ｂとを備えている。
【０００５】
Ａ相オフセット検出回路１０Ａは、Ｂ相のＡ／Ｄ変換値が零の近傍の場合のＡ相のＡ／Ｄ変換値を用いてＡ相のオフセット値Ａｏｆｓを求める検出回路であり、Ａ相信号をＡ／Ｄ変換器２ＡでＡ／Ｄ変換したデジタル値ＡDと、Ｂ相信号をＡ／Ｄ変換器２ＢでＡ／Ｄ変換したデジタル値ＢDとを入力し、Ｂ相のＡ／Ｄ変換値ＢDが零の近傍にあるか否かを、０−Ｖｄ≦ＢD≦０＋Ｖｄを満たすかどうかにより判定し、Ｂ相が零近傍となるときのＡ／Ｄ変換のクロックのタイミング時においてＡ相側のＡ／Ｄ変換値を検出し、この値を用いてＡ相のオフセット値Ａｏｆｓを求める。
【０００６】
また、Ｂ相オフセット検出回路１０Ｂは、Ａ相のＡ／Ｄ変換値が零の近傍の場合のＢ相のＡ／Ｄ変換値ＢDを用いてＢ相のオフセット値Ｂｏｆｓを求める検出回路であり、Ｂ相信号をＡ／Ｄ変換器２ＢでＡ／Ｄ変換したデジタル値ＢDと、Ａ相信号をＡ／Ｄ変換器２ＡでＡ／Ｄ変換したデジタル値ＡDとを入力し、Ａ相信号がゼロクロス時点の近傍のＡ相のＡ／Ｄ変換値を検出し、この値を用いてＢ相のオフセット値Ｂｏｆｆを求める。
【０００７】
減算回路１１Ａ，１１Ｂは、オフセット検出回路１０Ａ，１０Ｂが検出したオフセット値を用いて、各相のＡ／Ｄ変換値に含まれるオフセットを補償する補償回路である。減算回路１１Ａは、Ａ相のＡ／Ｄ変換値ＡDをＰ端子に入力しＡ相オフセット値ＡｏｆｆをＮ端子に入力して、（ＡD−Ａｏｆｆ）の減算演算を行う。また、減算回路１１Ｂは、Ｂ相のＡ／Ｄ変換値ＢDをＰ端子に入力しＢ相オフセット値ＢｏｆｆをＮ端子に入力して、（ＢD−Ｂｏｆｆ）の減算演算を行う。減算回路１１Ａ，１１Ｂからは、オフセット補正されたＡ相信号およびＢ相信号が出力され、角度検出回路３によって角度検出が行われる。
【０００８】
図２は図１に示した従来のオフセット検出回路のオフセット値の検出動作の一例を説明するための図であり、図３は図１に示した従来のオフセット検出回路のオフセット値の検出動作の他の一例を説明するための図である。図２及び図３において、円の一周はＡ相又はＢ相の信号の３６０°分を表しており、円上の白丸はサンプリング時点を表している。一点鎖線の縦軸と横軸が円と交わる点はそれぞれ、オフセットがゼロの場合のＡ相及びＢ相のゼロクロス時を表している。実線の縦方向の０及び横方向の０が円と交わる点はそれぞれ、オフセットが有限値である場合のＡ相及びＢ相のゼロクロス時を表している。
【０００９】
図示のように、実際の信号のサンプリングでは、必ずしもゼロクロス時と信号のサンプリング周期が一致するとは限らない。このため、信号がゼロクロスしたときにゼロクロスを検出するしきい値に幅（０±Ｖｄ）を持たせ、この範囲内で検出されたサンプリング値を、信号がゼロクロスしたときの各相のサンプリング値としている。
【００１０】
すなわち、オフセットが無い場合には、一点鎖線で示す座標上で、Ｂ相側のゼロクロス点でのＡ相側の正および負の値は絶対値が等しくなり、また、Ａ相側のゼロクロス点でのＢ相側の正および負の値は絶対値が等しくなる。このときは（０±Ｖｄ）の範囲内でサンプリングされた値をＡ相及びＢ相の値とする。
【００１１】
また、オフセットが存在する場合には、実線で示す座標上で、Ｂ相側のゼロクロス点でのＡ相側の正の値Ａｐ’（図２中のサンプリング時点２１のサンプリング値）と負の値Ａｎ’（図２中のサンプリング時点２２のサンプリング値）の絶対値の平均値をＡ相の値とする。同様に、Ａ相側のゼロクロス点でのＢ相側の正の値Ｂｐ’（図２中の白丸２３）と負の値Ｂｎ’（図２中の白丸２４）の絶対値の平均値をＢ相の値とする。
【００１２】
このように、従来の回路では、各相の電圧の検出を、他方の相のＡ／Ｄ変換値がゼロクロス時ではなく、ゼロクロス時の近傍（０±Ｖｄ）で行っている。この為、図２に示すように、サンプリング周期Ｔ１が入力信号の３６０°の周期（図２の円の一周）との相対関係において比較的大きい場合には、ゼロクロス時とサンプリング時がずれている場合にも、オフセット量を得る事が出来る。
【００１３】
【特許文献１】特許第３０２６９４９号
【発明の開示】
【発明が解決しようとする課題】
【００１４】
しかし、図３に示すように、サンプリング周期Ｔ２が入力信号周期との相対関係において比較的小さい時は、（０±Ｖｄ）の範囲内に複数のサンプリング値が存在することになる。例えば、Ａ相については、Ｂ相のＡ／Ｄ変換値が０±Ｖｄの範囲内に複数のサンプリング時点４１、４２、４３、４４、４５、４６、４７、４８が存在する。図示反時計回りにサンプリング値を取得する場合には、Ｂ相のＡ／Ｄ変換値が０＋Ｖｄの場合のＡ相の正の変換値Ａｐ’はサンプリング時点４１〜４４の中で最初のサンプリング時点４１の値であり、Ｂ相のＡ／Ｄ変換値が０−Ｖｄの場合のＡ相の正の変換値Ａｎ’はサンプリング時点４５〜４８の中で最初のサンプリング時点４５の値である。そして、この２つの値の平均値｛（Ａｐ’＋Ａｎ’）／２｝をオフセット値としてしまう。
【００１５】
すなわち、オフセット値は以下のように表現される。
（Ａｐ’＋Ａｎ’）／２＝｛（Ａｐ−ΔＡｐ）＋（Ａｎ−ΔＡｎ）｝／２
＝（Ａｐ＋Ａｎ）／２−（ΔＡｐ＋ΔＡｎ）／２
【００１６】
この問題を図４及び図５により説明する。
まず、図４の状態では問題がない。
図４の（ａ）はＢ相のオフセットが０の時のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｐとそのオフセット値が−ΔＡｐである場合のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｐ’とを示すグラフであり、図４の（ｂ）はＢ相のオフセットが０の時のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｎとそのオフセット値が−ΔＡｎである場合のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｐ’とを示すグラフである。この場合は、オフセット値−ΔＡｐ及び−ΔＡｎが小さいので、
−ΔＡｐ＋（−ΔＡ）≒０
（Ａｐ’＋Ａｎ’）／２≒（Ａｐ＋Ａｎ）／２
となり、全体としてのオフセット値はオフセットがない場合にほぼ等しくなる。
同様にして、Ａ相のゼロクロス近傍でのＢ相のサンプリング値のＡ／Ｄ変換値Ｂｐとオフセット値ΔＢｐ及びΔＢｎが比較的小さい場合には、
ΔＢｐ＋ΔＢｎ≒０
（Ｂｐ’＋Ｂｎ’）／２≒（Ｂｐ＋Ｂｎ）／２
となり、全体としてのオフセット値はオフセットがない場合にほぼ等しくなる。
このように、両方の相でオフセット値が小さい場には、特に問題はない。
【００１７】
図５の（ａ）はＢ相のオフセットが０の時のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｐとオフセット値が＋ΔＡｐである場合のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｐ’とを示すグラフである。図５の（ｂ）はＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｎとオフセット値＋ΔＡｎが比較的大きい場合のＢ相のゼロクロス点に対応するＡ相のサンプリング値のＡ／Ｄ変換値Ａｎ’とを示すグラフである。図５に示した場合では、オフセットの値＋ΔＡｎが比較的大きいので、次の式で表されるように全体としてのオフセット値に大きな誤差αを含んでしまう。
ΔＡｐ＋ΔＡｎ≠０
（Ａｐ’＋Ａｎ’）／２＝（Ａｐ＋Ａｎ）／２−α
同様に、Ｂ相におけるオフセット値が大きい場合にも、平均値としてのオフセット値に大きな誤差を含んでしまう。
【００１８】
従って、従来技術では、少なくともいずれか一方の相のオフセットが大きく、サンプリング周期Ｔ２が入力信号周期との相対関係において小さい時には、正しいオフセット量を得る事が出来ないという問題点がある。
本発明の目的は、上記従来技術における問題に鑑み、サンプリング周期の長さやオフセットの大きさに関わらず、正しいオフセット量を得ることが可能なエンコーダのオフセット補正回路を提供することにある。
【課題を解決するための手段】
【００１９】
本発明の第１の態様によれば、位相が相互にほぼ９０度異なる第１の相の信号及び第２の相の信号を同一タイミングでサンプリングし、Ａ／Ｄ変換して得られるデジタル信号に基づいて角度信号を検出するエンコーダにおいて、第１の相のＡ／Ｄ変換値が第１の値の近傍の場合の第２の相のＡ／Ｄ変換値を用いて第２の相のオフセット値を求め、第２の相のＡ／Ｄ変換値が第２の値の近傍の場合の第１の相のＡ／Ｄ変換値を用いて第１の相のオフセット値を求め、次回の第１のオフセット値及び第２のオフセット値を算出する時に、第１の値には今回求めた第１のオフセット値を用い、第２の値には今回求めた第２のオフセット値を用いるオフセット検出回路と、第１のオフセット値及び第２のオフセット値を用いて第１の相信号及び第２の相信号のオフセットを補正する補正回路とを備えた事を特徴とするエンコーダのオフセット補正回路が提供される。
【００２０】
オフセット検出回路は、第１の値、第２の値の初期値を零とする事が好ましい。
【００２１】
さらに、オフセット検出回路は、第１の相のＡ／Ｄ変換値が第１の値の近傍のしきい値で設定される範囲内にある場合における、第２の相の正のＡ／Ｄ変換値と第２の相の負のＡ／Ｄ変換値との平均値を演算し、該平均値を第２の相のオフセット値として検出する事と、第２の相のＡ／Ｄ変換値が第２の値の近傍のしきい値で設定される範囲内にある場合における、第１の相の正のＡ／Ｄ変換値と第１の相の負のＡ／Ｄ変換値との平均値を演算し、該平均値を第１の相のオフセット値として検出する事も好ましい。
【００２２】
さらに、オフセット値は、複数の正のＡ／Ｄ変換値と複数の負のＡ／Ｄ変換値から算出した値である事も好ましい。
【００２３】
さらに、平均値を求める為の正のＡ／Ｄ変換値と負のＡ／Ｄ変換値は、交互に更新する事も好ましい。
【００２４】
さらに、補正回路は、一方の相のＡ／Ｄ変換値から、オフセット検出回路で求めた一方の相のオフセット値を減算する補償回路である事も好ましい。
【発明の効果】
【００２５】
従来技術では、オフセット量を得るための各相の電圧を検出する条件は”０±Ｖｄ”で固定であるが、本発明では、オフセット量を得るための各相の電圧を検出する条件は”ＸA±Ｖｄ”、”ＸB±Ｖｄ”で、ＸA、ＸBは算出したオフセット値に追従する。
その為、計算を繰り返すにつれ、算出したオフセット値が正しい値へと近づいていくという効果が得られる。
【発明を実施するための最良の形態】
【００２６】
図６は本発明の実施例によるエンコーダのオフセット補正回路の概略ブロック図である。同図において、破線で示されるオフセット補正回路６０は、Ａ相オフセット回路６２ＡとＢ相オフセット回路６２Ｂと、減算回路６３Ａ，６３Ｂとを備えている。Ａ相信号とＢ相信号とは位相が相互にほぼ９０度異なる。Ａ相信号はＡ／Ｄ変換機６１Ａによりデジタル信号ＡDに変換されてＡ相オフセット検出回路６２ＡとＢ相オフセット検出回路６２Ｂに入力される。Ｂ相信号はＡ／Ｄ変換機６１Ｂによりデジタル信号ＢDに変換されてＡ相オフセット検出回路６２ＡとＢ相オフセット検出回路６２Ｂに入力される。Ａ相オフセット回路６２Ａ及びＢ相オフセット回路６２ＢはこれらＡ相及びＢ相のデジタル信号に基づいて以下に記載する方法でオフセット値Ａｏｆｆ及びＢｏｆｆを得る。
【００２７】
Ａ相オフセット回路６２Ａは、Ｂ相のＡ／Ｄ変換値ＢDが値ＸBの近傍の場合のＡ相のＡ／Ｄ変換値ＡDを用いてＡ相のオフセット値Ａｏｆｓを求める。そして、次回のオフセット値Ａｏｆｓを算出する時に、値ＸBには今回求めたオフセット値Ｂｏｆｓを用いる。
【００２８】
また、Ｂ相オフセット回路６２Ｂは、Ａ相のＡ／Ｄ変換値ＡDが値ＸAの近傍の場合のＢ相のＡ／Ｄ変換値ＢDを用いてＢ相のオフセット値Ｂｏｆｓを求める。そして、次回のオフセット値Ｂｏｆｓを算出する時に、値ＸAには今回求めたオフセット値Ａｏｆｓを用いる。
【００２９】
減算回路６３Ａ、６３Ｂは、オフセット検出回路６２Ａ，６２Ｂが検出したオフセット値を用いて、各相のＡ／Ｄ変換値に含まれるオフセットを補償する補償回路である。減算回路６３Ａは、Ａ相のＡ／Ｄ変換値をＰ端子に入力しＡ相オフセット地をＮ端子に入力して、ＡD−Ａｏｆｓの演算を行う。また、減算回路６３Ｂは、Ｂ相のＡ／Ｄ変換値ＢDをＰ端子に入力しＢ相オフセット値ＢｏｆｆをＮ端子に入力して、（ＢD−Ｂｏｆｆ）の減算演算を行う。減算回路６３Ａ，６３Ｂからは、オフセット補正されたＡ相信号およびＢ相信号が出力され、角度検出回路６４によって角度検出が行われる。
【００３０】
次に本発明の実施例によるオフセット検出回路のオフセット検出動作を図７により説明する。
図７の（ａ）から（ｃ）はそれぞれ時刻ｔ＝０、ｔ＝ｔ１、ｔ＝ｔ２の状態でのオフセット検出動作を説明するための図である。ここで、時刻ｔは０＜ｔ１＜ｔ２である。図からわかるように、ｔ＝０ではＸAは比較的低い値であるが、ｔ＝１、ｔ＝２になると次第に高い値になっている。また、ｔ＝０ではＸBも比較的低い値であるが、ｔ＝１、ｔ＝２になると次第に高い値になっている。これらの値ＸA、ＸBの変化に応じてサンプリング値Ａｐ’，Ａｎ’，Ｂｐ’、Ｂｎ’も時刻とともに変化している。
【００３１】
値ＸA，ＸBの初期値は零とする事が好ましい。
オフセット検出回路は、第１の相のＡ／Ｄ変換値ＡDが第１の値ＸAの近傍のしきい値で設定される範囲内にある場合における、Ｂ相の正のＡ／Ｄ変換値Ｂｐ’とＢ相の負のＡ／Ｄ変換値Ｂｎ’との平均値を演算し、その平均値をＢ相のオフセット値として検出する。第２の相のＡ／Ｄ変換値ＢDが第２の値ＸBの近傍のしきい値で設定される範囲内にある場合における、Ａ相の正のＡ／Ｄ変換値Ａｐ’とＡ相の負のＡ／Ｄ変換値Ａｎ’との平均値を演算し、その平均値をＡ相のオフセット値として検出する。
オフセット値は、複数の正のＡ／Ｄ変換値と複数の負のＡ／Ｄ変換値から算出した値である。
平均値を求める為の正のＡ／Ｄ変換値と負のＡ／Ｄ変換値は、交互に更新する。
減算回路は、オフセット検出回路が検出したオフセット値を用いて、Ａ相及びＢ相のＡ／Ｄ変換値に含まれるオフセットを補償する補償回路である。
【産業上の利用可能性】
【００３２】
ＮＣ工作機械，産業用ロボットに使用されるモータやリニアエンコーダの位置検出に用いられるエンコーダにおいて、サンプリング周期の長さやオフセットの大きさに関わらず、正しいオフセット量を得ることを可能にする。
【図面の簡単な説明】
【００３３】
【図１】本出願人による特許第３０２６９４９号に記載のエンコーダのオフセット補正回路の概略ブロック線図である。
【図２】図１に示した従来のオフセット検出回路のオフセット値の検出動作の一例を説明するための図である。
【図３】図１に示した従来のオフセット検出回路において、サンプリング周期が入力信号周期との関係で小さい時の問題を説明する図である。
【図４】図１に示した従来のオフセット検出回路において、サンプリング周期が入力信号周期との関係で小さい時でも問題がない場合を説明する図である。
【図５】図１に示した従来のオフセット検出回路において、サンプリング周期が入力信号周期との関係で小さい時の問題がある場合を説明する図である。
【図６】本発明の実施例によるエンコーダのオフセット補正回路の概略ブロック図である。
【図７】（ａ）から（ｃ）はそれぞれ時刻ｔ＝０、ｔ＝ｔ１、ｔ＝ｔ２の状態でのオフセット検出動作を説明するための図である。
【符号の説明】
【００３４】
６０    オフセット補正回路
６１Ａ，６１Ｂ    Ａ／Ｄ変換器
６２Ａ，６２Ｂ    オフセット検出回路
６３Ａ，６３Ｂ    減算回路
６４    角度検出回路
【図１】
2007218667.tif 000003
【図２】
2007218667.tif 000004
【図３】
2007218667.tif 000005
【図４】
2007218667.tif 000006
【図５】
2007218667.tif 000007
【図６】
2007218667.tif 000008
【図７】
2007218667.tif 000009