JP2012149924A - ロータリーエンコーダによる測定角度の誤差算出方法 - Google Patents
ロータリーエンコーダによる測定角度の誤差算出方法 Download PDFInfo
- Publication number
- JP2012149924A JP2012149924A JP2011007249A JP2011007249A JP2012149924A JP 2012149924 A JP2012149924 A JP 2012149924A JP 2011007249 A JP2011007249 A JP 2011007249A JP 2011007249 A JP2011007249 A JP 2011007249A JP 2012149924 A JP2012149924 A JP 2012149924A
- Authority
- JP
- Japan
- Prior art keywords
- pulse
- error
- rotary encoder
- rotation angle
- rotation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Transmission And Conversion Of Sensor Element Output (AREA)
Abstract
【課題】 回転体の回転角度を精度よく検出することができるロータリーエンコーダによる測定角度の誤差算出方法を提供する。
【解決手段】 回転体を惰行回転させ、回転体の回転に対応するパルスを出力するパルス出力手段から出力されたパルスのパルス列を記録する。次に、パルスに対応する回転角度を時刻の関数として関数近似する。次に、関数近似に基づいて、前記パルスにおける個々のパルスの回転角度に対する位置の誤差を算出する。
【選択図】 図1
【解決手段】 回転体を惰行回転させ、回転体の回転に対応するパルスを出力するパルス出力手段から出力されたパルスのパルス列を記録する。次に、パルスに対応する回転角度を時刻の関数として関数近似する。次に、関数近似に基づいて、前記パルスにおける個々のパルスの回転角度に対する位置の誤差を算出する。
【選択図】 図1
Description
本発明は、ロータリーエンコーダによる測定角度の誤差算出方法に関する。
回転体の回転角度を検出する装置として、ロータリーエンコーダが知られている。このロータリーエンコーダでは、スリット板と光電検出装置、あるいは磁気検出装置などを後いて回転体の回転に対応するパルス波を取得する。このパルス波をカウントすることによって、回転角度を検出するというものである。
この種のロータリーエンコーダとして、従来、所定の信号処理を施すエンコーダが知られている(たとえば、特許文献1参照)。このエンコーダは、位相差がπ/2の2相正弦波であるエンコーダ信号を所定の増幅器および3区間の抵抗を備える回路に入力し、抵抗の抵抗比によってエンコーダ信号の正弦波に対して、位相角で誤差φn分遅れた正弦波形を作る信号処理を行うものである。このエンコーダは、回転体が加減速状態で動いている場合でも、回転体の回転角度を精度よく検出することができるというものである。
上記特許文献1に開示されたエンコーダでは、測定角度の回転角度をある程度精度よく検出することができるが、回転角度の誤差を確実に除去することができなかった。このため、ロータリーエンコーダで回転体の回転角度を検出する際に、さらに精度よく回転角度を検出することが望まれていた。
そこで、本発明の課題は、回転体の回転角度を精度よく検出することができるロータリーエンコーダによる測定角度の誤差算出方法を提供することにある。
上記課題を解決した本発明に係るロータリーエンコーダによる測定角度の誤差算出方法は、回転体の回転角度を測定するロータリーエンコーダによる測定角度の誤差算出方法であって、回転体の回転に対応するパルスを出力するパルス出力手段から出力されたパルスに対応する回転角度を時刻の関数として関数近似し、関数近似に基づいて、パルスにおける個々のパルスの回転角度に対する位置の誤差を算出することを特徴とする。
本発明に係るロータリーエンコーダによる測定角度の誤差算出方法においては、パルス出力手段が出力したパルスに対応する回転角度を時刻の関数として関数近似し、関数近似に基づいて、パルスにおける個々のパルスの回転角度に対する位置の誤差を算出する。このため、パルスの回転角度に対する位置の誤差を精度よく算出することができる。このパルスの回転角度に対する位置の誤差を用いて回転体の回転角度を算出するので、回転体の回転角度を精度よく検出することができる。
また、関数近似が、下記(13)式によって行われる態様とすることができる。
φn=ψ(tn)−(2π/N)n ・・・(13)
ここで、φn:基準位置からn番目のパルスの回転角度に対する位置の誤差
ψ(tn):φnの時刻の関数
N:回転体が1回転する際に発生するパルスの数
n:基準位置から数えた際のパルスの番号
φn=ψ(tn)−(2π/N)n ・・・(13)
ここで、φn:基準位置からn番目のパルスの回転角度に対する位置の誤差
ψ(tn):φnの時刻の関数
N:回転体が1回転する際に発生するパルスの数
n:基準位置から数えた際のパルスの番号
この(13)式を用いることにより、パルスの回転角度に対する位置の誤差を精度よく算出することができる。
本発明に係るロータリーエンコーダによる測定角度の誤差算出方法によれば、回転体の回転角度を精度よく検出することができる。
以下、添付図面を参照して本発明の実施形態について説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図示の便宜上、図面の寸法比率は説明のものと必ずしも一致しない。
本実施形態に係るロータリーエンコーダによる測定角度の誤差算出方法を説明するにあたり、ロータリーエンコーダによる角度の測定について簡単に説明する。ロータリーエンコーダによる角度の測定は、たとえばタイヤの回転状態を測定するタイヤ試験において行われる。このタイヤ試験では、タイヤを回転させる際の回転軸にロータリーエンコーダを装着する。
ロータリーエンコーダは、回転軸の回転角度に対応するパルスをパルス列として発生し、角度測定装置に対して出力する。角度測定装置では、ロータリーエンコーダから出力されたパルス列をカウントすることで回転軸の回転角度を求める。ロータリーエンコーダは、パルス出力手段となっている。また、パルス列の発生周波数を計測することによって時々刻々の瞬時回転角速度を求める。
ここでのパルス列は、たとえば512パルス/1回転とされている。また、ロータリーエンコーダは、1回転あたりN個(N=512)の信号(パルス)を発生している。ここで、パルスとは、たとえばロータリーエンコーダが出力する矩形波の立ち上がり位置のように、幅を持たない信号の列をいう。さらに、ロータリーエンコーダが装着される回転体は、外力が無い状態での惰行回転が一定期間継続可能とされている。
こうしてロータリーエンコーダによって求められる測定角度には、誤差が含まれている。この誤差は、ロータリーエンコーダのパルス列の間隔が、回転体の回転角度に対して完全な等間隔となっていないことに起因して発生する。本実施形態では、たとえば回転体の回転角度を実測する前の実験段階において回転体を惰行回転させ、実験の結果から、ロータリーエンコーダによる回転体の測定角度に含まれる誤差を算出する。以下、ロータリーエンコーダによる測定角度の誤差算出方法について説明する。
図1は、本実施形態に係るロータリーエンコーダによる測定角度の誤差を算出する手順を示すフローチャートである。図1に示すように、ロータリーエンコーダによる測定角度の誤差を算出する際には、まず、実験的に回転体を惰行回転させる(S1)。回転体は、外力が無い状態で回転可能とされていることから、外力を加えない状態で惰行させる。回転体を惰行させた状態で、ロータリーエンコーダによって回転角度の検出を行うと、ロータリーエンコーダはパルス列を角度測定装置に対して出力する。
続いて、角度測定装置において、ロータリーエンコーダが発生するパルス列の時刻を記録する(S2)。それから、出力されたパルス列の時刻に対して演算処理を施し、回転角度を時刻の関数として関数近似する(S3)。その後、この関数近似を利用して個々のパルスの回転角度に対する位置の誤差を算出する(S4)。こうして、ロータリーエンコーダによる測定角度の誤差の算出を終了する。関数近似による誤差の算出については、後に詳しく説明する。
このようにして、実験的に回転体を惰行回転させて得られたロータリーエンコーダの回転角度の誤差は、回転体の回転角度を実測する際のパルス列の瞬時周波数の補正に用いることができる。以下、ロータリーエンコーダの回転角度の誤差を用いたパルス列の瞬時周波数の補正について説明する。図2は、パルス列の瞬時周波数の補正の手順を示すフローチャートである。
図2に示すように、パルス列の瞬時周波数の補正を行う際には、ロータリーエンコーダによって、回転体におけるパルス列の瞬時周波数を実測する(S11)。実測されたパルス列の瞬時周波数は、角度測定装置に出力される。角度測定装置には、図1に示すフローに沿って算出されたロータリーエンコーダの回転角度の誤差が記憶されている。
角度測定装置は、記憶しているロータリーエンコーダの回転角度の誤差を用いて、出力されたパルス列の瞬時周波数を補正する(S12)。こうして、実測されたロータリーエンコーダによるパルス列の瞬時周波数を補正することができる。
次に、本実施形態に係るロータリーエンコーダによる測定角度の誤差の算出を行う際の基本的な考え方および関数近似による誤差の算出の具体的な手順について説明する。
ここで、基本的な考え方として、回転角度を時刻の関数として関数近似するにあたり、パルスの位置およびその誤差の表現について説明する。図3は、ロータリーエンコーダから出力されたパルスを示す図である。パルスを取り扱う際には、回転体の回転角度を回転角度θで表している。また、図3では、横軸を回転角度θとし、パルスの番号を合わせて付している。
ここで、パルスを取り扱う際の基準となる基準信号を0番目のパルスとする。パルスを取り扱う際の基準信号は、任意に設定できる。たとえば、ロータリーエンコーダから出力された信号から特徴的な任意の特徴信号を取得し、この特徴信号の位置を軸回転の基準位置BPの次のパルスを基準パルスとすることができる。この基準パルスの回転角度θ=0となる。なお、基準パルスはどの位置に設定しても一般性を失うことはない。
この基準パルスからn番目に出力された第nパルスの回転角度である第n回転角度θnの位置と、第n回転角度θnに対する位置の誤差である第nパルス誤差φnについて考える。第nパルス誤差φnは、図3に示す第n角度θnに対して、パルスが完全に等間隔であった場合の第n回転等間隔角度θrとの差を表す数値である。ここで、回転体が1回転する際に発生するパルスの数である1回転パルス数N(=512)とすると、第n回転等間隔角度θrは、(2π/N)nで表される。第n回転角度θnは、1回転パルス数Nと第nパルス誤差φnとを用いて、下記(1)式で表すことができる。
θn=(2π/N)n+φn (−∞<n<∞) ・・・(1)
θn=(2π/N)n+φn (−∞<n<∞) ・・・(1)
仮に、第nパルス誤差φn≡0(−∞<n<∞)であれば、パルス列には誤差が含まれないこととなる。この(1)式から、下記(2)式および(3)式を導き出すことができる。
φ0=0 ・・・(2)
φn=φnmodN ・・・(3)
φ0=0 ・・・(2)
φn=φnmodN ・・・(3)
なお、φnmodNは、mを整数としてφn+mNと表すこともできる。以下、第nパルス誤差φnはφnmodNの意味として説明する。第nパルス誤差φnを求めることにより、第nパルス誤差φnを用いて、ロータリーエンコーダによる測定角度を補正することができる。
また、以下の説明における表現について説明する。回転角度θの時間変化を表すために、回転角度関数ψを用いて、下記(4)式を定義する。
θ=ψ(t) ・・・(4)
θ=ψ(t) ・・・(4)
ここで、回転体の回転が常に同じ方向であって回転が停止することがないとすると、回転角度関数ψ(t)は逆関数と考えることができる。したがって、この場合には、下記(5)式が成り立つ。
t=ψ−1(θ) ・・・(5)
t=ψ−1(θ) ・・・(5)
さらに、ロータリーエンコーダによる角度測定では、第nパルスが出力された瞬間、つまり回転体の実際の回転角度が第n回転角度θnとなった瞬間の時刻を測定することとなる。このことを踏まえると、上記(4)式、(5)式は、上記(1)式を用いて、それぞれ下記(6)式、(7)式のように離散的に表すことができる。
θn=2π/N+φn=ψ(tn) ・・・(6)
tn=ψ−1(θn)=ψ−1(2π/N+φn) ・・・(7)
θn=2π/N+φn=ψ(tn) ・・・(6)
tn=ψ−1(θn)=ψ−1(2π/N+φn) ・・・(7)
この回転角度関数ψまたは回転角度逆行列ψ−1を実験的に求めることにより、その瞬間のパルス発生時刻列tnから、ロータリーエンコーダから出力されたパルス列におけるn番目の第nパルスの誤差である第nパルス誤差φnを求めることができる。
次に、関数近似による第nパルス誤差φnの具体的な求め方について説明する。回転体が角速度Ω0の一定速度で回転しており、回転角度θ=0のときに時刻t=0であるとすると、下記(8)式が成り立つ。
θ=ψ(t)=Ω0t ・・・(8)
θ=ψ(t)=Ω0t ・・・(8)
また、この場合には逆関数を考えることができるので、上記(8)式から下記(9)式を導き出すことができる。
t=ψ−1(θ)=(1/Ω0)θ ・・・(9)
t=ψ−1(θ)=(1/Ω0)θ ・・・(9)
ここで、上記(7)式を用いると、上記(9)式から下記(10)式を求めることができる。
tn=ψ−1(θn)=(1/Ω0)(2π/N+φn) ・・・(10)
tn=ψ−1(θn)=(1/Ω0)(2π/N+φn) ・・・(10)
さらには、上記(10)式を変形することによって、下記(11)式を得ることができる。
φn=Ω0tn−(2π/N)n ・・・(11)
φn=Ω0tn−(2π/N)n ・・・(11)
回転体が一定速度で回転している場合には、上記(11)式によって第nパルス誤差φnを求めることができる。しかし、実際に回転体が真に一定速であることを保証することは困難である。特に、回転体を一定速度で回転させるための特別な設備を持たない場合には、この問題が顕著となる。
ただし、たとえば、慣性モーメントが極端に大きいドラム試験器のドラムを一定速度で回転させているような場合には、速度制御による回転変動が小さい。このため、ドラムを近似的に一定速度で回転しているとみなすことができる。
以下に、回転体の回転速度が緩変化する場合におけるパルス誤差φの求め方について説明する。たとえば、回転体に外力を与えることなく惰行回転させ、緩減速するような場合には、パルス列における個々のパルス誤差φnが未知の場合でも回転体の回転角度θ=ψ(t)を実用上十分な精度で求めることができる。
ところで、ロータリーエンコーダで求められる個々のパルス位置には、それぞれのパルス誤差φnがあったとしても、回転体が一回転してn=Nとなった場合には、回転角度θ=2πとなり、このときの回転角度には誤差が生じない。このため、回転角度θの変化に対して、回転体の回転に同期したような変動が無ければ、θ=2π刻みの時刻データに基づいて回転角度θ=ψ(t)の全体を、実用上十分な精度で時刻の関数として関数近似して表現することができる。ここでの関数としては、たとえば2次または3次の低次多項式、あるいは3次スプライン関数などを例示することができる。
回転体が惰行回転しながら緩減速する場合、回転角度θと時刻tとの関係は、たとえば図4に示すグラフのようになる。ここで、回転角度θ=ψ(t)が関数表現できると、個々のパルスの発生時刻とそのときの回転角度関数ψ(t)は、下記(12)式で表すことができる。この(12)式から、下記(13)式を導き出すことができる。
2π/N+φn=ψ(tn) ・・・(12)
φn=ψ(tn)−(2π/N)n ・・・(13)
2π/N+φn=ψ(tn) ・・・(12)
φn=ψ(tn)−(2π/N)n ・・・(13)
この(13)式によってパルス誤差φnを求めることができる。上記の手順を経てパルス誤差φnを求めることにより、精度のよいパルス誤差を求めることができる。したがって、このパルス誤差を用いることにより、回転体の回転角度を精度よく検出することができる。
次に、パルス列の瞬時周波数の補正の具体的な方法について説明する。いま、パルス列の瞬時周波数の実測値である実測瞬時周波数f(t)〔Hz〕は、回転体の真の瞬時回転角速度である真瞬時回転角速度ω(t)〔rad/s〕を用いて、下記(14)式によって近似的に求めることができる。
f(tn)=1/{1/2(tn+1−tn−1) ・・・(14)
f(tn)=1/{1/2(tn+1−tn−1) ・・・(14)
一方、真瞬時回転角速度ω(t)は、下記(15)式のように表すことができる。
ω(tn)=(θn+1−θn−1)/(tn+1−tn−1) ・・・(15)
ω(tn)=(θn+1−θn−1)/(tn+1−tn−1) ・・・(15)
また、パルス位置に誤差が無く、パルスが回転角度に対して等間隔に配置されている場合のパルスの瞬時周波数である等間隔瞬時周波数F(t)は、下記(16)式によって表すことができる。
F(tn)=(N/2π)ω(tn) ・・・(16)
F(tn)=(N/2π)ω(tn) ・・・(16)
実測瞬時周波数f(tn)は、パルスが完全に等間隔に配置されていれば等間隔瞬時周波数F(tn)と一致する。しかし、実際には、パルスは完全な等間隔とはなっていないことから、実測瞬時周波数f(tn)には誤差が生じている。いま、(15)式を変形すると、下記(17)式を得ることができる。
tn+1−tn−1=(θn+1−θn−1)/ω(tn) ・・・(17)
tn+1−tn−1=(θn+1−θn−1)/ω(tn) ・・・(17)
この(20)式に対して、実測瞬時周波数f(tn)、第(n+1)パルス誤差φn+1、および第(n−1)パルス誤差φn−1を代入することにより、補正された第n瞬時周波数を算出することができる。こうしてパルス誤差を用いて瞬時周波数を算出することにより、精度よく瞬時周波数を算出することができる。
また、本実施形態に係るロータリーエンコーダによる測定角度の誤差の算出方法では、補正すべき誤差の測定にあたって、高精度な基準エンコーダや大掛かりな基準回転装置などを用いる必要がない。このため、測定を行う装置を全体として簡素化することができる。さらには、既存のロータリーエンコーダについても、容易に適用することができる。他方、誤差を測定するにあたって、四則演算を行うのみで済むので、FFTのような複雑な演算処理を必要とせず、簡素な演算処理で済ませることができる。
BP…基準位置、f…実測瞬時周波数、F…等間隔瞬時周波数、N…回転パルス数、t…時刻、θ…回転角度、φ…パルス誤差、ψ…回転角度関数。
Claims (2)
- 回転体の回転角度を測定するロータリーエンコーダによる測定角度の誤差算出方法であって、
前記回転体の回転に対応するパルスを出力するパルス出力手段から出力されたパルスに対応する回転角度を時刻の関数として関数近似し、
前記関数近似に基づいて、前記パルスにおける個々のパルスの回転角度に対する位置の誤差を算出することを特徴とするロータリーエンコーダによる測定角度の誤差算出方法。 - 前記関数近似が、下記(13)式によって行われる請求項1に記載のロータリーエンコーダによる測定角度の誤差算出方法。
φn=ψ(tn)−(2π/N)n ・・・(13)
ここで、φn:基準位置からn番目のパルスの回転角度に対する位置の誤差
ψ(tn):φnの時刻の関数
N:回転体が1回転する際に発生するパルスの数
n:基準位置から数えた際のパルスの番号
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011007249A JP2012149924A (ja) | 2011-01-17 | 2011-01-17 | ロータリーエンコーダによる測定角度の誤差算出方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011007249A JP2012149924A (ja) | 2011-01-17 | 2011-01-17 | ロータリーエンコーダによる測定角度の誤差算出方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2012149924A true JP2012149924A (ja) | 2012-08-09 |
Family
ID=46792311
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011007249A Pending JP2012149924A (ja) | 2011-01-17 | 2011-01-17 | ロータリーエンコーダによる測定角度の誤差算出方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2012149924A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018021845A (ja) * | 2016-08-04 | 2018-02-08 | ファナック株式会社 | エンコーダの信号処理装置、エンコーダ、信号処理方法及びプログラム |
CN110160577A (zh) * | 2019-06-20 | 2019-08-23 | 广东工业大学 | 一种增量式旋转编码器的角位移测量方法、装置及设备 |
CN115355867B (zh) * | 2022-08-01 | 2024-05-17 | 南京理工大学 | 一种基于Zernike拟合的旋转角度计算方法及装置 |
-
2011
- 2011-01-17 JP JP2011007249A patent/JP2012149924A/ja active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2018021845A (ja) * | 2016-08-04 | 2018-02-08 | ファナック株式会社 | エンコーダの信号処理装置、エンコーダ、信号処理方法及びプログラム |
CN110160577A (zh) * | 2019-06-20 | 2019-08-23 | 广东工业大学 | 一种增量式旋转编码器的角位移测量方法、装置及设备 |
CN115355867B (zh) * | 2022-08-01 | 2024-05-17 | 南京理工大学 | 一种基于Zernike拟合的旋转角度计算方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2010286483A5 (ja) | ||
JP5341714B2 (ja) | 位相差式レゾルバ | |
US9354085B2 (en) | Angle detecting device with complex self-calibration function | |
CN106546273A (zh) | 旋转编码器以及旋转编码器的绝对角度位置检测方法 | |
CN104569472B (zh) | 一种基于光电脉冲编码器的速度获取方法 | |
CN110793430A (zh) | 绝对电角度检测方法、系统及计算机可读存储介质 | |
CN104197874A (zh) | 一种高精度回转体跳动在位测量方法 | |
KR101280241B1 (ko) | 회전기의 속도 및 회전방향 측정장치와 측정방법 | |
EP3346602A1 (en) | Methods and systems for calibration of a motor | |
JP2008267907A (ja) | 高速回転体の回転バランス計測装置及び方法 | |
US10539588B2 (en) | Method for reducing error in rotor speed measurements | |
EP2693221B1 (en) | Magnetic Sensor Arrangement | |
JP2012149924A (ja) | ロータリーエンコーダによる測定角度の誤差算出方法 | |
KR20130023211A (ko) | 에러의 체계적 처리 방법 | |
EP3611476A1 (en) | Position detection device and position detection method | |
JP5107791B2 (ja) | 回転角度センサ | |
JP2012137335A (ja) | 動翼の振動計測方法および動翼の振動計測装置 | |
CN108196092A (zh) | 离心机工作半径标定方法、系统以及加速度计校准方法 | |
JP2009008536A (ja) | レゾルバを用いて回転体の回転位置を検出するための装置 | |
KR101427218B1 (ko) | 전자기유도 방식을 이용한 각도센서 및 이를 이용한 가동물체의 회전각도 측정시스템 | |
Babalola et al. | Real-time measurement of frequency using affordable rotary encoder and LabVIEW | |
JP2013127409A (ja) | 波形測定器 | |
JP6841690B2 (ja) | 車速計測システム | |
EP2660565B1 (en) | Digital logic circuit and method for detecting a relative shaft position on geared shafts | |
JP2008089409A (ja) | 回転速度検出器 |