(57)【要約】【課題】内挿誤差を低減するエンコーダの信号処理装置を提供する。【解決手段】エンコーダの信号処理装置Ｄは、位置データ取得部１ａ，１ｂ、２ａ，２ｂ、３と、１周期の所定数の位置データにおける誤差データを算出する誤差データ算出部４と、算出された誤差データに基づいて位置データを補正する補正部５とを備え、誤差データ算出部４は、１周期内において第１所定時間間隔ΔＴｎでサンプリングされた所定数の位置データにおける第１誤差データを算出し、第１誤差データを誤差データとし、更に、第１所定時間間隔ΔＴｎ各々内において第２所定時間間隔ΔＴｋでサンプリングされた位置データにおける第２誤差データを算出し、第１及び第２誤差データの誤差特性における極値又は変曲点に最も近い第２誤差データを第１誤差データと置換して、誤差データの所定数を増減することなく、誤差データの時間間隔を変更する。【選択図】図１
2019168399.tif 000002
【特許請求の範囲】
【請求項１】
被測定体の移動に応じて周期的に発生するアナログ信号を信号処理して前記被測定体の位置に応じた位置データを生成するエンコーダの信号処理装置であって、
前記アナログ信号をサンプリングして前記被測定体の位置に応じた位置データを取得する位置データ取得部と、
前記位置データ取得部で取得された１周期の位置データのうちの所定数の位置データと、１周期において位置が直線的に変化すると仮定した理想的な位置データとの差分に基づいて誤差データを算出する誤差データ算出部と、
前記誤差データ算出部で算出された前記誤差データに基づいて、前記位置データ取得部で取得された位置データを補正する補正部と、
を備え、
前記誤差データ算出部は、
１周期内において第１所定時間間隔ΔＴｎでサンプリングされた前記所定数の位置データと前記理想的な位置データとの差分に基づいて第１誤差データを算出し、前記第１誤差データを前記誤差データとし、
更に、前記第１所定時間間隔ΔＴｎ各々内において第２所定時間間隔ΔＴｋでサンプリングされた位置データと前記理想的な位置データとの差分に基づいて第２誤差データを算出し、
前記第１誤差データと前記第２誤差データとの誤差特性に基づいて、前記誤差特性における極値又は変曲点に前記第１誤差データよりも近い前記第２誤差データがある場合、前記誤差特性における極値又は変曲点に最も近い第２誤差データを前記第１誤差データのうちの何れかと置換して、前記誤差データの前記所定数を増減することなく、前記誤差データの時間間隔を変更する、
エンコーダの信号処理装置。
【請求項２】
前記誤差データ算出部は、前記誤差特性における極値に最も近い第２誤差データを、前記誤差特性における変曲点に最も近い第２誤差データよりも優先して、前記第１誤差データと置換する、請求項１に記載のエンコーダの信号処理装置。
【請求項３】
前記誤差データ算出部は、前記誤差特性における極値に最も近い第２誤差データの中でも、前記誤差特性における極値を形成する曲線の傾きが大きい極値に最も近い第２誤差データを優先して、前記第１誤差データと置換する、請求項２に記載のエンコーダの信号処理装置。
【請求項４】
前記誤差データ算出部は、前記誤差特性における変曲点に最も近い第２誤差データの中でも、前記誤差特性における変曲点を形成する曲線の傾きが大きい変曲点に最も近い第２誤差データを優先して、前記第１誤差データと置換する、請求項２に記載のエンコーダの信号処理装置。
【請求項５】
前記補正部は、前記誤差データ算出部で算出された前記誤差データの補間処理を行うことにより、前記位置データ取得部で取得された前記位置データに対応する誤差データを求め、当該位置データを対応する誤差データで補正する、請求項１〜４の何れか１項に記載のエンコーダの信号処理装置。
【請求項６】
請求項１〜５の何れか１項に記載のエンコーダの信号処理装置を備える、エンコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンコーダの信号処理装置、及びエンコーダに関する。
【背景技術】
【０００２】
工作機械又は産業機械等のモータ又はテーブル（非測定体）の位置（又は速度）を検出するエンコーダ、例えば回転角度（位置）を検出するロータリエンコーダ、直線移動位置を検出するリニアスケール等のエンコーダがある。このようなエンコーダの信号処理装置は、被測定体の移動に応じて周期的に発生するアナログ信号をサンプリングして被測定体の位置に応じた位置データを生成する。その際、エンコーダの信号処理装置は、内挿処理（補間処理：Ｉｎｔｅｒｐｏｌａｔｉｏｎ）を行い、内挿誤差の補正を行う（例えば、特許文献１及び２参照）。
【０００３】
例えば、特許文献２に記載のエンコーダの信号処理装置は、１周期内において等間隔でサンプリングされた所定数の位置データと理想的な位置データとの差分に基づいて誤差データを算出し、算出した誤差データに基づいて位置データを補正する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１２−１６３４３６号公報
【特許文献２】特許第３７７２１２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかし、特許文献２に記載のエンコーダの信号処理装置では、演算高速化及びレジスタ容量低減のため、誤差データのサンプリング数を位置データのサンプリング数よりも少なくし、誤差データを補間処理（例えば、直線補間処理）して位置データを補正している。この場合、誤差データの誤差特性における極値を見逃し、補正後の位置データに誤差が残ることがある。
【０００６】
本発明は、内挿誤差を低減するエンコーダの信号処理装置、及びエンコーダを提供することを目的とする。
【課題を解決するための手段】
【０００７】
（１）  本発明に係るエンコーダの信号処理装置（例えば、後述のエンコーダの信号処理装置Ｄ）は、被測定体の移動に応じて周期的に発生するアナログ信号を信号処理して前記被測定体の位置に応じた位置データを生成するエンコーダの信号処理装置であって、前記アナログ信号をサンプリングして前記被測定体の位置に応じた位置データを取得する位置データ取得部（例えば、後述のアナログ増幅回路１ａ，１ｂ、アナログ−ディジタル変換回路２ａ，２ｂ及びディジタル内挿回路３）と、前記位置データ取得部で取得された１周期の位置データのうちの所定数の位置データと、１周期において位置が直線的に変化すると仮定した理想的な位置データとの差分に基づいて誤差データを算出する誤差データ算出部（例えば、後述の検出誤差データ算出回路４）と、前記誤差データ算出部で算出された前記誤差データに基づいて、前記位置データ取得部で取得された位置データを補正する補正部（例えば、後述の検出誤差補正回路５）とを備え、前記誤差データ算出部は、１周期内において第１所定時間間隔ΔＴｎでサンプリングされた前記所定数の位置データと前記理想的な位置データとの差分に基づいて第１誤差データを算出し、前記第１誤差データを前記誤差データとし、更に、前記第１所定時間間隔ΔＴｎ各々内において第２所定時間間隔ΔＴｋでサンプリングされた位置データと前記理想的な位置データとの差分に基づいて第２誤差データを算出し、前記第１誤差データと前記第２誤差データとの誤差特性に基づいて、前記誤差特性における極値又は変曲点に前記第１誤差データよりも近い前記第２誤差データがある場合、前記誤差特性における極値又は変曲点に最も近い第２誤差データを前記第１誤差データのうちの何れかと置換して、前記誤差データの前記所定数を増減することなく、前記誤差データの時間間隔を変更する。
【０００８】
（２）  （１）に記載のエンコーダの信号処理装置において、前記誤差データ算出部は、前記誤差特性における極値に最も近い第２誤差データを、前記誤差特性における変曲点に最も近い第２誤差データよりも優先して、前記第１誤差データと置換してもよい。
【０００９】
（３）  （２）に記載のエンコーダの信号処理装置において、前記誤差データ算出部は、前記誤差特性における極値に最も近い第２誤差データの中でも、前記誤差特性における極値を形成する曲線の傾きが大きい極値に最も近い第２誤差データを優先して、前記第１誤差データと置換してもよい。
【００１０】
（４）  （２）に記載のエンコーダの信号処理装置において、前記誤差データ算出部は、前記誤差特性における変曲点に最も近い第２誤差データの中でも、前記誤差特性における変曲点を形成する曲線の傾きが大きい変曲点に最も近い第２誤差データを優先して、前記第１誤差データと置換してもよい。
【００１１】
（５）  （１）から（４）のいずれかに記載のエンコーダの信号処理装置において、前記補正部は、前記誤差データ算出部で算出された前記誤差データの補間処理を行うことにより、前記位置データ取得部で取得された前記位置データに対応する誤差データを求め、当該位置データを対応する誤差データで補正してもよい。
【００１２】
（６）  本発明に係るエンコーダは、（１）から（５）のいずれかに記載のエンコーダの信号処理装置を備える。
【発明の効果】
【００１３】
本発明によれば、内挿誤差を低減するエンコーダの信号処理装置、及びエンコーダを提供することができる。
【図面の簡単な説明】
【００１４】
【図１】本実施形態に係るエンコーダの信号処理装置の構成を示す図である。
【図２】図１に示す開始条件判定回路の構成を示す図である。
【図３】図１に示す検出誤差データ算出回路における検出誤差計算回路による検出誤差データ算出処理（従来同等処理）を説明する図である。
【図４】検出誤差データ算出回路による検出誤差データ算出処理（従来同等処理）、及び、検出誤差補正回路による検出誤差補正処理（従来同等処理）の一例を示す模式図である。
【図５】検出誤差データ算出回路による検出誤差データ算出処理（本発明処理）、及び、検出誤差補正回路による検出誤差補正処理（本発明処理）の一例を示す模式図である。
【図６】検出誤差データ算出回路による検出誤差データ算出処理（従来同等処理）の一例を示す模式図である。
【図７】検出誤差データ算出回路による検出誤差データ算出処理（本発明処理）の一例を示す模式図である。
【図８】検出誤差データ算出回路による検出誤差データ算出処理（本発明処理）の一例を示す模式図である。
【図９】検出誤差データ算出回路をプロセッサで構成したときのプロセッサによる検出誤差データ算出処理のフローチャートである。
【図１０】検出誤差補正回路５をプロセッサで構成したときのプロセッサによる検出誤差補正処理のフローチャートである。
【発明を実施するための形態】
【００１５】
以下、添付の図面を参照して本発明の実施形態の一例について説明する。なお、各図面において同一又は相当の部分に対しては同一の符号を附すこととする。
【００１６】
図１は、本実施形態に係るエンコーダの信号処理装置の構成を示す図である。図１に示す信号処理装置Ｄは、エンコーダの感知部から出力される正弦波（所謂Ａ相信号）Ｓａ及び余弦波（所謂Ｂ相信号）Ｓｂの元信号を入力し、この元信号をアナログ−ディジタル変換して位置データ（ポジションデータ）を生成する装置である。信号処理装置Ｄは、アナログ増幅回路１ａ，１ｂと、アナログ−ディジタル変換回路２ａ，２ｂと、ディジタル内挿回路３と、検出誤差データ算出回路４と、検出誤差補正回路５と、ポジションデータ生成回路６とを備える。
【００１７】
アナログ増幅回路１ａは、エンコーダの感知部から出力される正弦波Ｓａの元信号を次段のアナログ−ディジタル変換回路２ａの入力に合うように増幅する。同様に、アナログ増幅回路１ｂは、エンコーダの感知部から出力される余弦波Ｓｂの元信号を次段のアナログ−ディジタル変換回路２ｂの入力に合うように増幅する。
【００１８】
アナログ−ディジタル変換回路２ａは、アナログ増幅回路１ａで増幅されたアナログ信号を一定サンプリング周期毎にディジタル信号に変換する。同様に、アナログ−ディジタル変換回路２ｂは、アナログ増幅回路１ｂで増幅されたアナログ信号を一定サンプリング周期毎にディジタル信号に変換する。
【００１９】
ディジタル内挿回路３は、アナログ−ディジタル変換回路２ａ，２ｂで変換されたディジタル値に基づいて、元信号１周期（正弦波１周期）内の位置を計算して位置データを生成する。なお、これらのアナログ増幅回路１ａ，１ｂ、アナログ−ディジタル変換回路２ａ，２ｂ、及びディジタル内挿回路３が位置データ取得部に相当する。
【００２０】
検出誤差データ算出回路４は、ディジタル内挿回路３で生成された位置データに基づいて、検出誤差データを算出する。検出誤差データ算出回路４は、開始条件判定回路４１、レジスタ群４２、検出誤差計算回路４３、検出誤差格納レジスタ４４、平均化回路４５を備える。
【００２１】
開始条件判定回路４１は、ディジタル内挿回路３で生成された位置データに基づいて、開始時要件を満たしているか否かを判別し、満たしていれば、元信号の１周期分の位置データをレジスタ群４２に格納する。具体的には、開始条件判定回路４１は、元信号が一定サンプリング間隔でサンプリングされた位置データのうちの、１周期内において第１所定時間間隔（誤差サンプリング間隔）ΔＴｎでサンプリングされた所定数ｎ＋１の位置データＰ（０）〜Ｐ（ｎ）をレジスタ群４２に格納する。なお、開始条件判定回路４１は、元信号の１周期分のサンプリング数より僅か多いサンプリング数の位置データＰ（０）〜Ｐ（ｎ＋α）をレジスタ群４２に格納してもよい。
更に、開始条件判定回路４１は、各第１所定時間間隔ΔＴｎ内において第２所定時間間隔ΔＴｋでサンプリングされた位置データをレジスタ群４２に格納する。開始条件判定回路４１の詳細は後述する。
【００２２】
検出誤差計算回路４３は、レジスタ群４２に格納された第１所定時間間隔ΔＴｎの位置データＰ（０）〜Ｐ（ｎ）及び第２所定時間間隔ΔＴｋの位置データの状態に基づいて、１周期内において所定数ｎ＋１の検出誤差データを算定する。検出誤差計算回路４３の詳細は後述する。
【００２３】
検出誤差格納レジスタ４４は、算出された検出誤差データを過去数回に渡り記憶する。平均化回路４５は、検出誤差格納レジスタ４４に記憶された過去数回分の検出誤差データを平均化する。複数の検出誤差データの平均をとるのは、検出誤差データの精度を向上させるためのものであり、検出誤差データの算出を簡単に行う場合には、検出誤差格納レジスタ４４、平均化回路４５を設けずに、検出誤差計算回路４３で求めた検出誤差データをそのまま用いてもよい。
【００２４】
検出誤差補正回路５は、検出誤差データ算出回路４で算出された検出誤差データに基づいて、ディジタル内挿回路３から出力された位置データを補正する。検出誤差補正回路５は、補正用検出誤差格納レジスタ５１と補正計算回路５２とを備える。
【００２５】
補正用検出誤差格納レジスタ５１は、平均化回路４５で平均化された平均値の検出誤差データ、又は、検出誤差計算回路４３で求められた検出誤差データを格納する。
【００２６】
補正計算回路５２は、補正用検出誤差格納レジスタ５１に格納された検出誤差データの補間処理（例えば、直線補間処理）を行うことにより、ディジタル内挿回路３から出力される位置データに対応する検出誤差データを求め、この位置データを、対応する検出誤差データで補正する。補正計算回路５２は、補正した位置データをポジションデータ生成回路６に出力する。
【００２７】
ポジションデータ生成回路６は、補正計算回路５２で補正された１周期内の位置データと、このブロック図では省略されている元信号の周期を数えているカウンタのデータよりポジションデータを生成する。
【００２８】
次に、検出誤差データ算出回路４における開始条件判定回路４１について説明する。図２は、開始条件判定回路４１の構成を示す図である。開始条件判定回路４１は、今回、前回、前々回の位置データレジスタ４１１ａ，４１１ｂ，４１１ｃと、第１及び第２の速度計算回路４１２ａ，４１２ｂと、ゼロクロスポイント検出回路４１３と、加速度計算回路４１４と、位置データレジスタ格納開始判定及び誤差計算開始信号判定回路４１５とを備える。
【００２９】
今回、前回、前々回の位置データレジスタ４１１ａ，４１１ｂ，４１１ｃは、ディジタル内挿回路３から所定サンプリング周期毎出力される位置データのうち、今回、前回、前々回のサンプリング周期の位置データをそれぞれ記憶する。各位置データレジスタ４１１ａ，４１１ｂ，４１１ｃに記憶された位置データは、ディジタル内挿回路３から位置データが出力される毎（サンプリング周期毎）にシフトされる。具体的には、ディジタル内挿回路３から出力された所定サンプリング周期毎の位置データは、今回の位置データレジスタ４１１ａに格納され、今回の位置データレジスタ４１１ａに格納されていた位置データは、前回の位置データレジスタ４１１ｂに格納され、前回の位置データレジスタ４１１ｂに格納されていた位置データは、前々の位置データレジスタ４１１ｃに格納される。
【００３０】
第１の速度計算回路４１２ａは、今回の位置データレジスタ４１１ａに記憶された今回の位置データと前回の位置データレジスタ４１１ｂに記憶された前回の位置データとの差から現在速度を求める。第２の速度計算回路４１２ｂは、前回の位置データレジスタ４１１ｂに記憶された前回の位置データと前々回の位置データレジスタ４１１ｃに記憶された前々回の位置データとの差から１周期前の現在速度を求める。また、加速度計算回路４１４は、第１及び第２の速度計算回路４１２ａ，４１２ｂで求めた速度の差から加速度を求める。ゼロクロスポイント検出回路４１３は、今回の位置データレジスタ４１１ａに記憶された今回の位置データと前回の位置データレジスタ４１１ｃに記憶された前回の位置データとから元信号Ｓａ，Ｓｂの１周期の開始であるゼロクロスポイントを検出する。
【００３１】
位置データレジスタ格納開始判定及び誤差計算開始信号判定回路４１５は、位置データの設定取り込み条件が満足したことを条件として、ゼロクロスポイント検出回路４１３でゼロクロスポイントが検出されたときに、ゼロクロスポイントから次のゼロクロスポイントを包含する元信号の１周期分の第１所定時間間隔ΔＴｎの位置データＰ（０）〜Ｐ（ｎ）及び第２所定時間間隔ΔＴｋの位置データをレジスタ群４２へ格納させる。また、位置データレジスタ格納開始判定及び誤差計算開始信号判定回路４１５は、次のゼロクロスポイント検出時に検出誤差計算回路４３に誤差計算開始信号を渡す。
【００３２】
位置データの取り込み条件としては、第１の速度計算回路４１２ａで求められる速度（位置データＰ（−１）とＰ（０）の差）が所定範囲に入ったとき、さらに、精度を向上させるときには、加速度計算回路４１４で求められる加速度（位置データＰ（−２）とＰ（−１）の差と、Ｐ（−１）とＰ（０）の差との差）が規定範囲に達に入ったとき、さらには、元信号の１周期の終了時点において、前記第１の速度計算回路４１２ａで検出される加速度（位置データＰ（ｎ−２）とＰ（ｎ−１）の差と、Ｐ（ｎ−１）とＰ（ｎ）の差との差）が規定値内に入っているときとする。
【００３３】
次に、検出誤差データ算出回路４における誤差計算回路４３について説明する。図３は、検出誤差データ算出回路４における検出誤差計算回路４３による検出誤差データ算出処理（従来同等処理）を説明する図である。図３には、元信号の１周期分の第１所定時間間隔ΔＴｎの位置データＰ（０）〜Ｐ（ｎ）が示されている。ここで、サンプリング周期をＴｓとし、エンコーダの感知部が取り付けられた移動体（回転体）の移動速度が一定速度ｖであるとする。また、１周期分での移動体の移動量（回転角）がＬであったとすると、Ｌ＝ｎ・Ｔｓ・ｖである。そして、ゼロクロスポイントを検出した後の最初のサンプリング時点を時間０とし、このときサンプリングした位置データをＰ（０）、次のゼロクロスポイントを検出した後の最初のサンプリング時の位置データをＰ（ｎ）とすると、位置データＰ（０）から位置データＰ（ｎ）が得られるまでは約１周期に該当する（Ｐ（ｎ）−Ｐ（０）＝Ｌ）。
【００３４】
この１周期内の第１所定時間間隔ΔＴｎの位置データＰ（０）〜Ｐ（ｎ）を、横軸を時間軸、縦軸を検出位置としてプロットすると、図３に丸で示したようになったとする。なお、図３において、検出位置データは０〜Ｌまで繰り返し検出されるものであるから、１周期Ｌに達したときこの点を次の１周期の「０」として連続的に直線上に表している。
【００３５】
位置データはサンプリング周期Ｔｓ毎に求められたものであるが、速度ｖが一定で、サンプリング周期Ｔｓも一定であるから、サンプリング間の移動距離ｌ＝ｖ・Ｔｓは一定である。よって、図３における横軸は移動体の移動距離（回転角度）をも表す。すなわち、ｍ回目のサンプリング時では、位置データＰ（０）が得られたサンプリング時からｍ・Ｔｓの時間経過したときであり、移動体の移動距離（回転角度）ｌ＝ｍ・ｖ・Ｔｓの位置である。
【００３６】
等速ｖで移動し、サンプリング周期Ｔｓがｎ回で、元信号１周期分の距離Ｌ移動するものであるから、位置はリニアに変化し、ｍ回目のサンプリング時では、移動距離ｌ＝Ｌ・ｍ／ｎである。そこで、位置データＰ（ｎ）が位置データＰ（０）の１周期遅れの同じ値とすれば、位置データＰ（０）とＰ（ｎ）を結ぶ図３に波線で示す直線上に位置するはずである。図３に示す波線直線は１周期分移動するとき、この検出されるべき位置を示している（理想的な位置データ）。しかし、実際にサンプリングされて検出された位置が図３の丸印で示された位置Ｐ（ｍ）であったとき、検出誤差Ｄ（ｍ）は、
Ｄ(ｍ)＝Ｐ(ｍ)−［Ｐ(０)＋Ｌ・ｍ／ｎ］
＝Ｐ（ｍ）−［Ｐ(０)＋{Ｐ(ｎ)−Ｐ(０)}×ｍ／ｎ］…（１）
として求められる。
【００３７】
そこで、各サンプリング位置ｍ（＝０，１，２…）の検出位置データＰ（ｍ）を基準データの位置データＰｓ（ｍ）、各サンプリング位置で求められる検出誤差Ｄ（ｍ）を基準データの検出誤差Ｄ（ｍ）として、これらを対応させて記憶する。すなわち、図２のレジスタ群４２に格納された１周期分の位置データＰ（０）〜Ｐ（ｎ）に対して、検出誤差計算回路４３で上記（１）式で示される演算を行い検出誤差Ｄ（０）〜Ｄ（ｎ）をそれぞれ求める。この例の場合は、平均化を行わず、検出誤差計算回路４３で求めた検出誤差Ｄ（０）〜Ｄ（ｎ）を検出各位置データＰ（０）〜Ｐ（ｎ）（この検出位置データを基準データの検出位置データＰｓ（０）〜Ｐｓ（ｎ）とする)に対応されて、基準データ［Ｐｓ（０）〜Ｐｓ（ｎ）、Ｄ（０）〜Ｄ（ｎ）］として補正用検出誤差格納レジスタ５１に格納する。
【００３８】
その後、補正計算回路５２は、ディジタル内挿回路３から出力される位置データＰ（ｘ）と補正用検出誤差格納レジスタ５１に記憶する基準データの位置データＰｓ（０）〜Ｐｓ（ｎ）を比較し、検出位置データＰ（ｘ）が補正用検出誤差格納レジスタ５１に記憶する位置データＰｓ（ｍ）とＰｓ（ｍ＋１）の間にあったとすれば、検出位置データＰ（ｘ）に対する検出誤差Ｄ（ｘ）を、位置データＰｓ（ｍ）、Ｐｓ（ｍ＋１）に対して記憶する検出誤差データＤ（ｍ）、Ｄ（ｍ＋１）によって、補間計算（例えば、直線補間）を行って求める。こうして求めた検出誤差Ｄ（ｘ）を検出位置データＰ（ｘ）が有するものとして、補正計算回路５２は、検出位置データＰ（ｘ）からこの検出誤差Ｄ（ｘ）を差し引いて補正し１周期内の位置データとして出力する。
【００３９】
上述したように、本実施形態では、検出誤差データ算出回路４及び検出誤差補正回路５の演算高速化及びレジスタ容量低減のため、検出誤差データのサンプリング数ｎを位置データのサンプリング数よりも少なくし、検出誤差データを補間処理（例えば、直線補間処理）して位置データを補正している。この場合、以下のような問題がある。
【００４０】
図４は、検出誤差データ算出回路４による検出誤差データ算出処理（従来同等処理）、及び、検出誤差補正回路５による検出誤差補正処理（従来同等処理）の一例を示す模式図である。図４には、１周期内を第１所定時間間隔（等間隔）ΔＴｎでｎ＝４分割した所定数ｎ＋１＝５の補正点Ｔ０〜Ｔ４における誤差データの誤差特性（補正前）が示されている。
図４に示すように、誤差データの誤差特性（補正前）において補正点Ｔ０〜Ｔ４間を直線補間して直線近似曲線（補正量）を求め、求めた直線近似曲線（補正量）で位置データを補正する場合、誤差データの誤差特性（補正前）における極値を見逃し、補正後の位置データに誤差（補正後）が残ることがある。
【００４１】
図５は、検出誤差データ算出回路４による検出誤差データ算出処理（本発明処理）、及び、検出誤差補正回路５による検出誤差補正処理（本発明処理）の一例を示す模式図である。図５に示すように、本実施形態では、５つの補正点Ｔ０〜Ｔ４のうちのＴ１、Ｔ２、Ｔ３、Ｔ４が誤差データの誤差特性（補正前）における極値又は変曲点の近傍となるように、補正点の数を増減することなく、第１所定時間間隔ΔＴｎを変更する。
これにより、誤差データの誤差特性（補正前）において補正点Ｔ０〜Ｔ４間を直線補間して直線近似曲線（補正量）を求め、求めた直線近似曲線（補正量）で位置データを補正しても、補正後の位置データの誤差（補正後）を低減することができる。
【００４２】
以下、図６〜図８を参照して、検出誤差データ算出回路４による検出誤差データ算出処理（本発明処理）について説明する。図６は、検出誤差データ算出回路４による検出誤差データ算出処理（従来同等処理）の一例を示す模式図であり、図７及び図８は、検出誤差データ算出回路４による検出誤差データ算出処理（本発明処理）の一例を示す模式図である。なお、図６〜図８では、説明の便宜上、サンプリング数が上述した図４及び図５とは異なる。
【００４３】
具体的には、検出誤差データ算出回路４は、上述したように、１周期内において第１所定時間間隔（誤差サンプリング間隔、補正間隔）ΔＴｎでサンプリングされた所定数ｎ＋１の位置データＰ（０）〜Ｐ（ｎ）と、理想的な位置データとの差分に基づいて誤差データを算出する。理想的な位置データとは、上述したように、１周期において位置が直線的に変化すると仮定した位置データである。これにより、例えば図６に示すように、１周期内を第１所定時間間隔（等間隔）ΔＴｎでｎ＝５分割した所定数ｎ＋１＝６の補正点Ｔ０〜Ｔ５における誤差データの誤差特性（実線上の黒丸）が得られる。
このとき、上述したように、検出誤差補正回路５により６つの補正点Ｔ０〜Ｔ５間を直線補間して直線近似曲線（点線）を求め、求めた直線近似曲線で位置データを補正（直線補間）する場合、誤差データの誤差特性における極値を見逃し、補正後の位置データに誤差が残ることがある。
【００４４】
そこで、検出誤差データ算出回路４は、更に、各第１所定時間間隔ΔＴｎ内において第２所定時間間隔ΔＴｋでサンプリングされた位置データと、理想的な位置データとの差分に基づいて誤差データを算出する。これにより、例えば図７に示すように、第１所定時間間隔ΔＴｎ内を第２所定時間間隔（等間隔）ΔＴｋでｋ＝５分割した６つの補正点Ｔ１，Ｔ１１〜Ｔ１４，Ｔ２における誤差データの誤差特性（実線上の黒丸）が得られる。
【００４５】
検出誤差データ算出回路４は、第１所定時間間隔ΔＴｎの誤差データ及び第２所定時間間隔ΔＴｋの誤差データに基づいて、誤差データの誤差特性における極値又は変曲点に第１所定時間間隔ΔＴｎの誤差データよりも近い第２所定時間間隔ΔＴｋの誤差データがある場合、誤差特性における極値又は変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データを第１所定時間間隔ΔＴｎの誤差データと置換する。例えば、図７に示すように、検出誤差データ算出回路４は、誤差特性における極値に補正点Ｔ１，Ｔ２の誤差データよりも近い補正点Ｔ１２の誤差データがある場合、誤差特性における極値に最も近い補正点Ｔ１２の誤差データを補正点Ｔ１又はＴ２の誤差データと置換する。これにより、例えば図８に示すように、検出誤差データ算出回路４は、誤差データの数を増減することなく、誤差データの時間間隔ΔＴｎを変更する。
【００４６】
このとき、検出誤差データ算出回路４は、誤差特性における極値に最も近い第２所定時間間隔ΔＴｋの誤差データを、誤差特性における変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データよりも優先して、第１所定時間間隔ΔＴｎの誤差データと置換してもよい。また、検出誤差データ算出回路４は、誤差特性における極値に最も近い第２所定時間間隔ΔＴｋの誤差データの中でも、誤差特性における極値を形成する曲線の傾きが大きい極値に最も近い第２所定時間間隔ΔＴｋの誤差データを優先して、第１所定時間間隔ΔＴｎの誤差データと置換してもよい。また、検出誤差データ算出回路４は、誤差特性における変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データの中でも、誤差特性における変曲点を形成する曲線の傾きが大きい変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データを優先して、第１所定時間間隔ΔＴｎの誤差データと置換してもよい。
【００４７】
上述した各実施形態においては、検出誤差データ算出回路４中に開始条件判定回路４１を設け、該開始条件判定回路４１で判別してレジスタ群４２へのデータ取り込み、及び基準データの算出指令を出力するようにしたが、この開始条件判定回路４１を設けず、このエンコーダを取り付けた機械や装置を制御する数値制御装置等の制御装置によって、開始条件を判別し、この制御装置からデータ取り込み、及び基準データの算出指令を出力するようにしてもよい。
【００４８】
また、検出誤差データ算出回路４さらには検出誤差補正回路５をプロセッサで構成し、ソフトウエアによって、検出誤差データ算出処理及び検出誤差補正処理を行うようにしてもよい。図９は、検出誤差データ算出回路４をプロセッサで構成したときのプロセッサによる検出誤差データ算出処理のフローチャートである。まず、基準データ作成指令が、手動若しくはこのエンコーダを取り付けた機械や装置を制御する制御装置からの指令として入力されたとき、プロセッサは、ディジタル内挿回路３が出力されるサンプリング位置データに基づいて、設定検出誤差算出開始条件を満たしているか否かを判別する。すなわち、プロセッサは、現在の速度が規定値であるか、さらには、加速度が規定値内かを判別する（ステップａ１）。
【００４９】
設定検出誤差算出開始条件を満たしていることが判別されると、プロセッサは、ディジタル内挿回路３から出力されるサンプリング位置データを１周期分取り込む（ステップａ２、ａ３）。この位置データの取り込みが完了すると、プロセッサは、１周期分の位置データが取り込み完了時での加速度が規定範囲内か判断する（ステップａ４）。規定範囲からはずれている場合には、位置データを取得した１周期分内で速度変化があったことを意味するので、プロセッサは、ステップａ１に戻り再度位置データの取り込みを行う。
【００５０】
ステップａ４で、加速度が規定範囲内と判断された場合には、取り込んだ位置データは速度一定のデータとみなされ、プロセッサは、この位置データから、１周期分の第１所定時間間隔ΔＴｎでサンプリングされた位置データＰ（０）〜Ｐ（ｎ）、及び、各第１所定時間間隔ΔＴｎ内において第２所定時間間隔ΔＴｋでサンプリングされた位置データを記憶する（ステップａ５）。
【００５１】
プロセッサは、１周期内の第１所定時間間隔ΔＴｎの位置データＰ（０）〜Ｐ（ｎ）と、理想的な位置データとの差分に基づいて誤差データを算出する（ステップａ６）。
更に、プロセッサは、各第１所定時間間隔ΔＴｎ内の第２所定時間間隔ΔＴｋの位置データと、理想的な位置データとの差分に基づいて誤差データを算出する（ステップａ７）。
【００５２】
プロセッサは、第１所定時間間隔ΔＴｎの誤差データ及び第２所定時間間隔ΔＴｋの誤差データに基づいて、これらの誤差データの誤差特性における極値又は変曲点に第１所定時間間隔ΔＴｎの誤差データよりも近い第２所定時間間隔ΔＴｋの誤差データがある場合、誤差特性における極値又は変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データを第１所定時間間隔ΔＴｎの誤差データと置換する。すなわち、プロセッサは、補正点が誤差データの誤差特性における極値又は変曲点の近傍となるように、誤差データの数を増減することなく、誤差データの時間間隔ΔＴｎを変更する。プロセッサは、これらの誤差データを記憶する（ステップａ８）。
【００５３】
プロセッサは、指標ｊを１インクリメントし（該指標ｊは初期設定で「０」にセットされている）、該指標ｊの値が設定回数か判断し（ステップａ９，ａ１０）設定回数でなければ、ステップａ１に戻る。プロセッサは、以下ステップａ１からステップａ１０の処理を繰り返し、指標ｊが設定回数に達すると、予想される検出位置に対して記憶したｊ個の検出誤差の平均を求め（ステップａ１１）、予想される検出位置とこの検出誤差の平均の組を基準データとして記憶し（ステップａ１２）、基準データの取得処理は終了する。
【００５４】
図１０は、検出誤差補正回路５をプロセッサで構成したときのプロセッサによる検出誤差補正処理のフローチャートである。プロセッサは、ディジタル内挿回路３の出力である位置データＰ（ｘ）を読み（ステップｂ１）、基準データとして記憶する位置データの中から、この読みとった位置データＰ（ｘ）の前後の位置データＰ（ｍ），Ｐ（ｍ＋１）を求める（ステップｂ２）。プロセッサは、求められた位置データＰ（ｍ），Ｐ（ｍ＋１）に対して記憶されている検出誤差データＤ（ｍ），Ｄ（ｍ＋１）を求め（ステップｂ３）、位置データＰ（ｍ），Ｐ（ｍ＋１）と誤差データＤ（ｍ），Ｄ（ｍ＋１）に基づいて、読みとった位置データＰ（ｘ）に対する検出誤差Ｄ（ｘ）を補間演算処理を行って求める（ステップｂ４）。プロセッサは、求めた検出誤差Ｄ（ｘ）で、読みとった位置データＰ（ｘ）を補正して、１周期内の検出位置データとして出力する（ステップｂ５）。
【００５５】
これにより、ポジションデータ生成回路６は、この補正された検出位置データと周期を計数するカウンタのデータ値により、ポジションデータとして出力する。
【００５６】
以上説明したように、本実施形態のエンコーダの信号処理装置Ｄによれば、検出誤差データ算出回路４が、１周期内において第１所定時間間隔ΔＴｎでサンプリングされた所定数ｎ＋１の位置データにおける誤差データを算出し、この第１所定時間間隔ΔＴｎの誤差データ（第１誤差データ）を誤差データとする。更に、検出誤差データ算出回路４は、第１所定時間間隔ΔＴｎ各々内において第２所定時間間隔ΔＴｋでサンプリングされた位置データにおける誤差データ（第２誤差データ）を算出し、第１所定時間間隔ΔＴｎの誤差データと第２所定時間間隔ΔＴｋの誤差データとの誤差特性に基づいて、誤差特性における極値又は変曲点に第１所定時間間隔ΔＴｎの誤差データよりも近い第２所定時間間隔ΔＴｋの誤差データがある場合、誤差特性における極値又は変曲点に最も近い第２所定時間間隔ΔＴｋの誤差データを第１所定時間間隔ΔＴｎの誤差データのうちの何れかと置換する。これにより、検出誤差データ算出回路４は、補正点が誤差データの誤差特性における極値又は変曲点の近傍となるように、補正点の数（誤差データのサンプリング数）を増減することなく、第１所定時間間隔ΔＴｎ（誤差データの時間間隔）を変更する。
これにより、誤差データの誤差特性において補正点間を直線補間して直線近似曲線を求め、求めた直線近似曲線で位置データを補正しても、補正後の位置データの誤差（内挿誤差）を低減することができる。その結果、エンコーダの検出精度を向上することができる。
【００５７】
なお、特許文献１（第１実施形態）には、補正ポイントのうちの少なくとも１つを誤差曲線の極値と一致するように、補正ポイント全体をシフトする技術が記載されている。しかし、補正ポイントの間隔が等間隔のままであるため、誤差曲線の極値のすべてを補正ポイントにすることができない。
また、特許文献１（第２実施形態）には、誤差特性の形状における極大値、極小値、及び変曲点を利用して誤差の大きさに応じて補正区間の区間幅を変更する技術、具体的には誤差の大きい箇所には補正区間の区間幅を狭くし、誤差の小さい箇所には補正区間の区間幅を広くする技術が記載されている。しかし、補正ポイントが増加してしまう可能性があり、信号処理時間、すなわち検出時間が増加してしまう可能性がある。
また、特許文献１には、これらの方法を組み合わせてもよいことが記載されているが、補正ポイントの数を増減することなく、補正ポイントを誤差特性の極値又は変曲点にシフトする技術について示唆されていない。
【００５８】
以上、本発明の実施形態について説明したが、本発明は上述した実施形態に限定されることなく、種々の変更及び変形が可能である。
【符号の説明】
【００５９】
Ｄ  エンコーダの信号処理装置
１ａ，１ｂ  アナログ増幅回路（位置データ取得部）
２ａ，２ｂ  アナログ−ディジタル変換回路（位置データ取得部）
３  ディジタル内挿回路（位置データ取得部）
４  検出誤差データ算出回路（誤差データ算出部）
４１  開始条件判定回路
４２  レジスタ
４３  検出誤差計算回路
４４  検出誤差格納レジスタ
４５  平均化回路
４１１ａ，４１１ｂ，４１１ｃ  位置データレジスタ
４１２ａ  第１の速度計算回路
４１２ｂ  第２の速度計算回路
４１３  ゼロクロスポイント検出回路
４１４  加速度計算回路
４１５  位置データレジスタ格納開始判定及び誤差計算開始信号判定回路
５  検出誤差補正回路
５１  補正用検出誤差格納レジスタ
５２  補正計算回路５２
６  ポジションデータ生成回路
【図１】
2019168399.tif 000003
【図２】
2019168399.tif 000004
【図３】
2019168399.tif 000005
【図４】
2019168399.tif 000006
【図５】
2019168399.tif 000007
【図６】
2019168399.tif 000008
【図７】
2019168399.tif 000009
【図８】
2019168399.tif 000010
【図９】
2019168399.tif 000011
【図１０】
2019168399.tif 000012