JP3365063B2 - 回転角度検出方法 - Google Patents

回転角度検出方法

Info

Publication number
JP3365063B2
JP3365063B2 JP17218094A JP17218094A JP3365063B2 JP 3365063 B2 JP3365063 B2 JP 3365063B2 JP 17218094 A JP17218094 A JP 17218094A JP 17218094 A JP17218094 A JP 17218094A JP 3365063 B2 JP3365063 B2 JP 3365063B2
Authority
JP
Japan
Prior art keywords
phase
value
sine wave
output
cycle
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.)
Expired - Fee Related
Application number
JP17218094A
Other languages
English (en)
Other versions
JPH0835857A (ja
Inventor
英治 細渕
真太郎 岡本
Original Assignee
神鋼電機株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 神鋼電機株式会社 filed Critical 神鋼電機株式会社
Priority to JP17218094A priority Critical patent/JP3365063B2/ja
Publication of JPH0835857A publication Critical patent/JPH0835857A/ja
Application granted granted Critical
Publication of JP3365063B2 publication Critical patent/JP3365063B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Measurement Of Length, Angles, Or The Like Using Electric Or Magnetic Means (AREA)
  • Transmission And Conversion Of Sensor Element Output (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は,サーボモータの回転角
度制御等に用いられる回転体の回転角度検出方法に関す
る。
【0002】
【従来の技術】モータ等の回転軸の回転角度と回転方向
とを検出する手段として2相パルスエンコーダが知られ
ている。この2相パルスエンコーダは,互いに90°位
相が異なるA相パルスとB相パルスとを軸結した回転体
の回転に伴って発生するので,パルス数をカウントする
ことにより回転角度を検出することができる。又,回転
方向によってA相パルス又はB相パルスのいずれかが他
相より進み位相になるので,回転方向を検出することが
できる。しかしながら,回転角度検出の分解能はパルス
分解能によって決定されてしまうので,微細な角度検出
を行うことが困難である。上記2相パルスエンコーダに
よる回転角度検出方法の分解能を向上させるべく2相正
弦波エンコーダを用いた回転角度検出方法が提案されて
いる。この従来構成(特願平3−51188号)を図7
に示す。図7において,モータ1の回転軸に正弦波エン
コーダ10が軸結されており,該正弦波エンコーダ10
はモータ1の回転に対応して位相が互いに90°異なる
A相正弦波信号とB相正弦波信号とを出力する。このA
相正弦波信号とB相正弦波信号とは波形整形器11で矩
形波信号SA ,SB とに変換された後,方向判別逓倍回
路12に入力される。方向判別逓倍回路12は,A相正
弦波信号がB相正弦波信号に対して進み位相にあるとき
はモータ1が正回転中であるとしてパルス列Uを出力
し,B相正弦波信号がA相正弦波信号に対して進み位相
にあるときはモータ1が逆回転中であるとしてパルス列
Dを出力すると共に,クロックcに同期したA相矩形波
パルスSA1,B相矩形波パルスSB1及びモータ正回転時
「H」,モータ逆回転時「L」となる方向判別信号FR
を出力する。
【0003】上記方向判別逓倍回路12が出力するパル
ス列U又はDはアップダウンカウンタ4に入力され,該
アップダウンカウンタ4の出力である回転角度信号naN
は第1のラッチ13に供給される。又,上記A相矩形波
パルスSA1,B相矩形波パルスSB2及び方向判別信号F
Rは第2のラッチ14に供給される。上記第1のラッチ
13及び第2のラッチ14は,発振器30が所定の演算
周期で発振する割り込み信号をラッチ指令として受け
る。上記第1のラッチ13はラッチ指令を受ける毎に格
納した回転角度信号naNを出力する。この回転角度信号
出力は,回転角度演算ソフトウェアを備えたマイクロコ
ンピュータ2に入力され,上記割り込み信号毎に入力さ
れた回転角度信号の前回と今回との差を演算して,演算
周期間の変化量を求め,これを累積加算する。即ち,今
回入力された回転角度信号naNと,前回入力されて第1
のメモリM1に格納されている回転角度信号na(N-1)
の差分を加算器15で演算して,演算周期間の変化量Δ
a =naN−na(N-1)を求め,これを積分器16で累積
加算する。この累積値をパルス計数値nbNとする。
【0004】一方,正弦波エンコーダ10が出力するA
相正弦波信号とB相正弦波信号とは,A/D変換器18
でラッチ指令毎にA相デジタル信号A* ,B相デジタル
信号B* に変換された後,マイクロコンピュータ2のt
an-1演算部19に入力される。このtan-1演算部1
9は,上記第2のラッチ14からラッチ指令毎にA相矩
形波パルスSA1 * ,B相矩形波パルスSB1 * ,方向判別
信号FR* を取り込み,A相矩形波パルスSA1 * の正
負,B相矩形波パルスSB1 * の正負,方向判別信号FR
* のH/Lに基づき,下記(a)から(h)に示すθa
=tan-1の演算を実行する。 (a)SA1 * >0,SB1 * <0,FR* =Hのとき, θa =tan-1(A* /−B* ) (b)SA1 * >0,SB1 * <0,FR* =Lのとき, θa =tan-1(B* /A* ) (c)SA1 * >0,SB1 * >0,FR* =Hのとき, θa =tan-1(B* /A* ) (d)SA1 * >0,SB1 * <0,FR* =Lのとき, θa =tan-1(−A* /B* ) (e)SA1 * <0,SB1 * >0,FR* =Hのとき, θa =tan-1(−A* /B* ) (f)SA1 * <0,SB1 * >0,FR* =Lのとき, θa =tan-1(−A* /−B* ) (g)SA1 * <0,SB1 * <0,FR* =Hのとき, θa =tan-1(−B* /−A* ) (h)SA1 * <0,SB1 * <0,FR* =Lのとき, θa =tan-1(−A* /−B* ) 上記(a)〜(h)のようにして演算された角度θ
a は,加算器20で上記n bNに加算され,回転角度検出
値θf =(nbN+θa )が演算される。従って,分解能
はパルス分解能×A/D分解能となり,高分解能が得ら
れる結果,これをモータの回転角度制御の制御信号とし
てフィードバックすれば,位置決め精度が向上する。
【0005】
【発明が解決しようとする課題】しかしながら,上記従
来構成におけるtan-1演算は,正弦波エンコーダのA
相とB相との間の位相が90°異なり,それぞれの相に
はオフセットがなく,振幅が等しいという前提のもとに
なされているので,A相,B相間の位相のずれ,オフセ
ットの発生,振幅の違いが生じた場合には演算誤差が生
じる問題点があった。上記演算誤差を低減させるため
に,正弦波エンコーダ出力をA/D変換器に入力する前
に,可変抵抗器による調整によりオフセットの除去と振
幅調整を行うことができるが,この調整には時間がかか
る上に個人差が生じる欠点がある。又,オフセットは正
弦波エンコーダの偏心によるギャップ変動により,1回
転内でオフセット量が変動するため,上記調整ではカバ
ーしきれない問題点もある。そこで,本発明の目的とす
るところは,正弦波エンコーダ出力のA/D変換値に対
してオフセット補正,振幅補正,位相補正を行うことに
よって,tan-1演算誤差の低減を図るようにした回転
角度検出方法を提供することにある。
【0006】
【課題を解決するための手段】上記目的を達成するため
に本発明は,回転体にA相及び該A相と90°位相が異
なるB相の正弦波信号を出力する正弦波エンコーダを軸
結し,該正弦波エンコーダの出力をパルス波形に波形整
形し,該パルス波形を所定の演算周期で計数してパルス
計数角度を演算すると共に,上記正弦波エンコーダの出
力をA/D変換して,上記演算周期でA相デジタル値と
B相デジタル値のtan -1 演算し,該tan -1 演算値を
上記パルス計数角度に加算して上記回転体の回転角度を
検出する回転角度検出方法において,上記正弦波エンコ
ーダ出力周期毎にA相又はB相の最大値又は最小値を求
め,該最大値又は最小値が求められた演算周期iと,こ
の演算周期iに最も近く,最も0に近い値が検出された
異なる相の演算周期jとの演算周期差(i−j)及び演
算周期前後方向からA相とB相との位相差のずれ量及び
ずれ方向を求め,次の正弦波エンコーダ出力周期のA相
又はB相のA/D変換値を上記位相差のずれ量及びずれ
方向に移動させる位相補正を行った後,上記tan -1
算を行うようにしたことを特徴とする回転角度検出方法
である。
【0007】さらに,上記正弦波エンコーダ出力のオフ
セット量を求め,A/D変換されたA相及びB相の上記
演算周期毎の値を上記オフセット量を用いて補正した
後,上記tan -1 演算を行うようにすることが考えられ
る。ここで,上記オフセット補正は,上記正弦波エンコ
ーダ出力周期毎のA相及びB相それぞれの最大値及び最
小値を求め,正弦波エンコーダ出力周期毎の上記最大値
及び最小値の差からA相,B相それぞれのオフセット量
を演算すると共に,正弦波エンコーダ出力周期の前後間
の上記オフセット量の差から補正量を演算し,上記演算
周期毎の上記A/D変換値を上記補正量で補正すること
により行うことができる。
【0008】また,上記正弦波エンコーダ出力のA相と
B相とにおける振幅変動比を求め,A/D変換されたA
相及びB相の上記演算周期毎の値を上記振幅変動比を用
いて補正した後,上記tan -1 演算を行うようにするこ
とも考えられる。ここで,上記振幅補正は,上記正弦波
エンコーダ出力周期毎にA相及びB相それぞれの最大値
と最小値とを求め,該最大値と最小値とから求められる
正弦波エンコーダのA相及びB相出力の振幅と基準とす
る振幅値との比から上記振幅変動比を演算し,該振幅変
動比を用いて上記A相とB相とにおける振幅変動を補正
することにより行うことができる。
【0009】
【作用】本発明によれば,正弦波エンコーダ出力のA相
とB相との間の位相差及び位相差方向を検出して,A/
D変換されたA相,B相の演算周期毎の値を上記位相差
及び位相差方向を用いて補正した後にtan -1 演算を行
うので,1パルス分解能内の回転角度演算の位相差によ
る誤差の発生が低減される。また,正弦波エンコーダ出
力周期毎のA相とB相との最大値又は最小値を求め,一
方の相が最大値又は最小値にある演算周期から,他方の
相が0になっている最も近い演算周期を検出することに
より,90°の位相差であるべき誤差を検出することが
できる。この位相差のずれ量とずれ方向とを用いて,検
出した正弦波エンコーダ出力周期の次の出力周期のA/
D変換値を補正する。
【0010】さらに,正弦波エンコーダ出力のオフセッ
ト量を検出して,このオフセット量を用いてA/D変換
されたA相,B相の演算周期毎の値を補正した後にta
-1 演算を行えば,1パルス分解能内の回転角度演算の
オフセットによる誤差の発生が低減される。また,オフ
セット変動量に合わせて補正量が演算されるので,オフ
セット量の変動に対応できる。上記オフセット補正は,
正弦波エンコーダ出力周期毎のA相,B相それぞれの最
大値及び最小値の差からオフセット量を演算し,正弦波
エンコーダ出力周期の前後間のオフセット量の差から補
正量を演算して,A/D変換値を演算周期毎に上記補正
量を用いて補正する。
【0011】さらに,正弦波エンコーダ出力のA相とB
相とにおける振幅変動比を検出して,この振幅変動比を
用いてA/D変換されたA相,B相の演算周期毎の値を
補正した後にtan -1 演算を行えば,1パルス分解能内
の回転角度演算の振幅差による誤差の発生が低減され
る。上記振幅補正は,正弦波エンコーダ出力周期毎のA
相とB相との最大値及び最小値の差から振幅差を演算
し,基準とする振幅値との差から振幅変動比を演算し
て,A/D変換値を演算周期毎に上記振幅変動比を用い
て補正する。上記基準とする振幅値は,予め設定した振
幅値又はA相,B相のいずれかを基準として設定するこ
とができる。また,上記オフセット補正,振幅補正,位
相補正を必要に応じて組み合わせて補正処理を行った後
にtan -1 演算を行うことにより,1パルス分解能内の
回転角度演算のオフセット,振幅差,位相差のずれによ
る誤差の発生が低減される。
【0012】
【実施例】以下,添付図面を参照して本発明を具体化し
た一実施例につき説明し,本発明の理解に供する。尚,
以下の実施例は本発明を具体化した一例であって,本発
明の技術的範囲を限定するものではない。図1は本発明
に係る回転角度検出方法を適用したモータの回転角度検
出装置の構成を示すブロック図である。図1において,
実施例に係る回転角度検出装置1は,モータ1に軸結さ
れた正弦波エンコーダ10が出力するA相及び該A相と
90°位相が異なるB相の正弦波を用いて,モータ1の
回転角度を検出できるように構成されている。回転角度
の検出は,上記A,B相の正弦波をパルス波形に波形整
形したパルスを演算周期毎にカウントしたパルス計数角
度と,演算周期毎のtan-1演算値による角度とを加算
して回転角度を求めるように構成されており,基本的に
は従来例で説明した回転角度検出方法を踏襲するもので
ある。本実施例は上記tan-1演算を行うためのA,B
相正弦波のオフセット,相間の振幅差,相間の位相差の
ずれを補正できるように構成されており,tan-1演算
の誤差を低減させている。従って,従来例に示した構成
と共通する要素には同一の符号を付して,その説明は省
略する。又,上記オフセット,相間の振幅差,相間の位
相差のずれの補正は,マイクロコンピュータ3の演算ソ
フトウェアによって演算処理され,後述するように必要
に応じて個々に適用することもできる。まず,オフセッ
ト補正について説明する。
【0013】正弦波エンコーダ10が出力するA,B相
正弦波は,モータ1の1回転で数十,数百周期発生す
る。このモータ1が1回転したときに発生する正弦波エ
ンコーダ10のA,B相正弦波の出力周期の回数をmと
し,正弦波エンコーダ10のロータとステータとの間の
ギャップ変動によるオフセット変動の周期の回数をrと
すると,この両者の関係はm≫rの条件が成立する。即
ち,図2(a)に示すようにモータ1の1回転でm周期
発生する正弦波は,図2(b)に示すようにモータ1の
1回転でr周期のオフセット変動が加わると,図2
(c)に示すようなオフセット変動を含んだ正弦波とな
って出力される。図2(c)に示すようなオフセット変
動を含んだA,B相正弦波はA/D変換回路18に入力
され,A/D変換回路に入力されるラッチ信号による正
弦波エンコーダ出力周期より充分に早い演算周期T毎に
A/D変換される。A/D変換されたA,B相デジタル
信号A* (x) ,B* (x) は,マイクロコンピュータ3の
最大値検出部31と最小値検出部32とに入力される。
ここでは,第2のラッチ14からの出力SA1 *
B1 * ,FR* を取り込み,このSA1 * の正負,SB1 *
の正負,FR* のH/Lに基づき,入力されたA,B相
デジタル信号A* (x) ,B * (x) は正弦波エンコーダ1
0のA,B相のどの周期であるかを判定する。例えば,
A1 * >0,SB1 * <0,FR* =Lになってから,他
のSA1 * ,SB1 * ,FR* の状態を経て,もう一度SA1
* >0,SB1 * <0,FR* =Lの状態になるまでを正
弦波エンコーダ10のA,B相の1周期と判定する。
【0014】図3は上記図2(c)に示したようなオフ
セット変動を含むA,B相正弦波の時間軸を拡大して示
すもので,いま,正弦波エンコーダ10のA,B相が
(x−1)回目の出力周期であるとすると,最大値検出
部31では(x−1)回目の出力周期の中でk回目の演
算周期でA/D変換されたデジタル信号をA* (x-1)(k)
とし,1〜(k−1)回目の演算周期中で最大値をメモ
リに格納してあるA* MA X(x-1)と大小比較して,A*
(x-1)(k)の方が大きければA* (x-1)(k)をA* MAX( x-1)
に格納する。A* (x-1)(k)の方が小さいときはメモリへ
の格納値の変更はしない。B* (x-1)(k)の信号について
も同様に大小比較を行ってB* MAX(x-1)にB * (x-1)(k)
を格納するか否かを判断する。この処理を(x)回目の
出力周期に入るまで演算周期毎に続け,(x−1)回目
の出力周期の最大値A* MAX(x-1)とB * MAX(x-1)とを求
める。最小値検出部32においても上記と同様にk回目
のA/D変換デジタル信号A * (x-1)(k),B* (x-1)(k)
と1〜(k−1)回目の演算周期中で最大値をメモリに
格納してあるA* MIN(x-1),B* MIN(x-1)とを大小比較
して,A* (x-1)(k),B* (x-1)(k)の方が小さければ,
これをA* MIN(x-1),B* MIN(x-1)にそれぞれ格納す
る。A* (x-1)(k),B* (x-1)(k)の方が大きいときはメ
モリへの格納値の変更はしない。この処理を(x)回目
の出力周期に入るまで演算周期毎に続け,(x−1)回
目の出力周期の最小値A* MIN(x-1)とB* MIN(x-1)とを
求める。
【0015】上記処理により求められた最大値A*
MAX(x-1),B* MAX(x-1)と最小値A* MI N(x-1),B*
MIN(x-1)とは,オフセット検出部33に入力され,オフ
セット量A * OFF(x-1),B* OFF(x-1)を下式(1)
(2)で演算しメモリに格納する。 A* OFF(x-1)=(A* MAX(x-1)−A* MIN(x-1))/2…(1) B* OFF(x-1)=(B* MAX(x-1)−B* MIN(x-1))/2…(2) 上記処理により求められた(x−1)回目の出力周期の
オフセット量A* OFF( x-1),B* OFF(x-1)を用いて
(x)回目の出力周期のオフセット補正がなされる。即
ち,減算器35は,正弦波エンコーダ10の出力周期が
x回目に入ったとき,1回目の演算周期から上記x回目
の出力周期が終了するまで毎回の演算周期で,A/D変
換値A* (x) ,B* (x) と,(x−1)回目の出力周期
で検出したオフセット量A* OFF(x-1),B* OFF(x-1)
の差を下式(3)(4)により演算し,A** (x) とB**
(x) とを求める。 A** (x) =A* (x) −A* OFF(x-1)…(3) B** (x) =B* (x) −B* OFF(x-1)…(4) 上記A** (x) とB** (x) とがオフセット補正された値と
なる。このように前回の出力周期で検出したオフセット
量を用いて今回の出力周期のオフセット補正を行うこと
により,図4に示すようにオフセット変動が低減され
る。次に,振幅補正について説明する。
【0016】上記最大値検出部31及び最小値検出部3
2で検出された正弦波エンコーダ10の出力周期毎の最
大値及び最小値は,振幅変動比検出部34に入力され振
幅変動比が求められる。振幅変動比検出は,上記最大値
* MAX(x-1),B* MAX(x-1)及び最小値A* MI N(x-1)
* MIN(x-1)を図5に示すように,予めメモリに設定し
た基準振幅値V ref と比較して,振幅変動比γA(x-1)
γB(x-1)を下式(5)(6)によって演算しメモリに格
納する。 γA(x-1)=Vref /(A* MAX(x-1)−A* MIN(x-1))…(5) γB(x-1)=Vref /(B* MAX(x-1)−B* MIN(x-1))…(6) 振幅変動比は上記のように基準振幅値Vref との比でな
く,下式(7)(8)のようにA相の振幅値を基準とし
てB相の振幅変動比γA-B(x-1),あるいは,B相の振幅
値を基準としてA相の振幅変動比γB-A(x-1)を求めるこ
ともできる。 γA-B(x-1)=(A* MAX(x-1)−A* MIN(x-1))/(B* MAX(x-1)−B* MIN( x-1))…(7) γB-A(x-1)=(B* MAX(x-1)−B* MIN(x-1))/(A* MAX(x-1)−A* MIN( x-1))/…(8)
【0017】求められた上記振幅変動比を用いて乗算器
36により振幅補正値A*** (x) ,B*** (x) を演算す
る。乗算器36は正弦波エンコーダ10の出力周期が
(x)回目に入ったとき,1回目の演算周期から上記
(x)回目の出力周期が終了するまで毎回の演算周期で
減算器35の出力A** (x) ,B** (x) と(x−1)回目
の出力周期で検出した振幅変動比γA(x-1),γB(x-1)
の積をとり,振幅補正値A *** (x) ,B*** (x) を下式
(9)(10)により演算する。 A*** (x) =A** (x) ×γA(x-1)…(9) B*** (x) =B** (x) ×γB(x-1)…(10) ここで,A相の振幅値を基準にして求めたB相の振幅変
動比γA-B(x-1)を用いる場合は,上式(9)(10)に
代えて下式(11)(12)を使用する。 A*** (x) =A** (x) …(11) B*** (x) =B** (x) ×γA-B(x-1)…(12) 又,B相の振幅値を基準にして求めたA相の振幅変動比
γB-A(x-1)を用いる場合は,上式(9)〜(12)に代
えて下式(13)(14)を使用する。 A*** (x) =A** (x) ×γB-A(x-1)…(13) B*** (x) =B** (x) …(14) 上記演算処理では,振幅補正したA*** (x) ,B***
(x) はオフセット補正されたA** (x) ,B** (x) に対し
て振幅補正値を乗算したが,オフセット補正する前のA
/D変換値A* (x) ,B* (x) に対して振幅補正比を乗
算して求めてもよい。
【0018】次いで,位相補正について図6を参照して
説明する。位相検出部37では正弦波エンコーダ10の
(x−1)回目の出力周期において,最大値検出部31
でA相の最大値A* (x-1) が検出されたi回目の演算周
期と,このi回目の演算周期に最も近い回数で減算器3
5の出力値B** (x) が0近辺の値(−y<B** (x) <y
の中で最も0に近い値…但し,yは微小値)をB** 0(x)
として,B** 0(x)になるj回目の演算周期との差(i−
j)(x-1) を求める。この演算周期の回数差(i−j)
(x-1) は,次の(a)(b)(c)のように求めること
もできる。 (a)最小値検出部32で最小値A* MIN(x-1)を検出し
たi回目と,i回目に最も近い回数で減算器35の出力
値がB** 0(x)になるj回目との演算周期の回数差(i−
j)(x-1) を求める。 (b)最大値検出部31で最大値B* MAX(x-1)を検出し
たi回目と,i回目と最も近い回数で減算器35の出力
値がA** 0(x)(−y<A** (x) <yの中で最も0に近い
値…但し,yは微小値)になるj回目の演算周期の回数
差(i−j)(x-1) を求める。 (c)最小値検出部32で最小値B* MIN(x-1)を検出し
たi回目と,i回目に最も近い回数で減算器35の出力
値がA** 0(x)になるj回目との演算周期の回数差(i−
j)(x-1) を求める。
【0019】上記演算処理により求められた演算周期の
回数差(i−j)(x-1) は,位相差が90°であるべき
A相とB相との位相差のずれ量となるので,位相補正部
38において演算周期の回数差(i−j)(x-1) から位
相差のずれ量の判定を次のように行って,乗算器36の
出力値A*** (x) ,B*** (x) に対して位相補正を実行
する。(i−j)(x-1) >0ならば,正弦波エンコーダ
10のA,B相の(x)周期においてk回目の演算周期
で位相補正値A**** (x) ,B**** (x) を下式(15)
(16)のように求める。 A**** (x)k=A*** (x)k…(15) B**** (x)k=B*** (x)k k-(x-1) …(16) (i−j)(x-1) =0ならば,乗算器36の出力値をそ
のまま位相補正部38の出力値とする。 A**** (x)k=A*** (x)k…(17) B**** (x)k=B*** (x)k…(18) (i−j)(x-1) <0ならば,正弦波エンコーダ10の
A,B相の(x)周期においてk回目の演算周期で位相
補正値A**** (x) ,B**** (x) を下式(19)(20)
のように求める。 A**** (x)k=A*** (x)k k-(x-1) …(19) B**** (x)k=B*** (x)k…(20)
【0020】演算周期の回数差(i−j)(x-1) の検出
を上記(a)(b)(c)のように求めた場合には,上
記位相補正の演算処理は次のように実行する。上記
(a)の方法で演算周期の回数差(i−j)(x-1) を求
めた場合には,上記補正処理と同様に実行する。上記
(b)又は(c)の方法で演算周期の回数差(i−j)
(x-1) を求めた場合には,上式(15)(16)と上式
(19)(20)とを入れ替えて補正処理を実行する。
以上の演算処理によって正弦波エンコーダ10出力のオ
フセット変動,A,B相間の振幅差,位相差のずれは補
正されるので,位相補正部38の出力値をtan-1演算
部19に入力して従来例で説明したと同様の演算を行う
ことにより,オフセット変動,A,B相間の振幅差,位
相差のずれによる誤差を生じさせることなく回転角度の
検出がなされる。尚,上記位相補正の演算処理は,乗算
器36の出力値に対して実行しているが,減算器35の
出力値に対して行ってもよい。又,本実施例では,オフ
セット補正,振幅補正,位相補正を全て実施した例を示
したが,必要に応じてオフセット補正だけの処理,振幅
補正だけの処理,位相補正だけの処理,あるいは,必要
な補正処理の組み合わせで構成し,その出力値をtan
-1演算部19に入力することもできる。
【0021】
【発明の効果】以上の説明の通り本発明によれば,回転
体にA相及び該A相と90°位相が異なるB相の正弦波
信号を出力する正弦波エンコーダを軸結し,該正弦波エ
ンコーダの出力をパルス波形に波形整形し,該パルス波
形を所定の演算周期で計数してパルス計数角度を演算す
ると共に,上記正弦波エンコーダの出力をA/D変換し
て,上記演算周期でA相デジタル値とB相デジタル値の
tan -1 演算し,該tan -1 演算値を上記パルス計数角
度に加算して上記回転体の回転角度を検出する回転角度
検出方法において,正弦波エンコーダ出力のA相とB相
との間の位相差及び位相差方向を検出して,A/D変換
されたA相,B相の演算周期毎の値を上記位相差及び位
相差方向を用いて補正した後にtan -1 演算を行うの
で,1パルス分解能内の回転角度演算の位相差による誤
差の発生が低減される。ここで,正弦波エンコーダ出力
周期毎のA相とB相との最大値又は最小値を求め,一方
の相が最大値又は最小値にある演算周期から,他方の相
が0になっている最も近い演算周期を検出するので,9
0°の位相差であるべき誤差を検出することができる。
また,正弦波エンコーダ出力のオフセット量を検出し
て,このオフセット量を用いてA/D変換されたA相,
B相の演算周期毎の値を補正した後にtan -1 演算を行
うことにより,1パルス分解能内の回転角度演算のオフ
セットによる誤差の発生が低減される。又,オフセット
変動量に合わせて補正量が演算されるので,オフセット
量の変動に対応できる。また,正弦波エンコーダ出力の
A相とB相とにおける振幅変動比を検出して,この振幅
変動比を用いてA/D変換されたA相,B相の演算周期
毎の値を補正した後にtan -1 演算を行うことにより,
1パルス分解能内の回転角度演算の振幅差による誤差の
発生が低減される。また,上記オフセット補正,振幅補
正,位相補正を必要に応じて組み合わせて補正処理を行
った後にtan -1 演算を行うことにより,1パルス分解
能内の回転角度演算のオフセット,振幅差,位相差のず
れによる誤差の発生が低減される。
【図面の簡単な説明】
【図1】 本発明に係る回転角度検出方法を適用した回
転角度検出装置の一実施例構成を示すブロック図。
【図2】 オフセット変動の状態を説明する波形図。
【図3】 実施例に係る正弦波エンコーダ出力の最大
値,最小値検出の処理を示す説明図。
【図4】 実施例に係るオフセット補正の処理方法を示
す説明図。
【図5】 実施例に係る振幅変動比の検出処理方法を示
す説明図。
【図6】 実施例に係る位相差のずれ量及びずれ方向の
検出処理方法を示す説明図。
【図7】 従来例に係る回転角度検出方法を適用した回
転角度検出装置の構成を示すブロック図。
【符号の説明】
1…回転角度検出装置 3…マイクロコンピュータ 4…アップダウンカウンタ 10…正弦波エンコーダ 11…波形整形回路 12…方向判別逓倍回路 13…第1のラッチ 14…第2のラッチ 15…加算器 16…乗算器 18…A/D変換回路 19…tan-1演算部 20…加算器 3O…発振器 31…最大値検出部 32…最小値検出部 33…オフセット量検出部 34…振幅変動比検出部 35…減算器 36…乗算器 37…位相差検出部 38…位相補正部
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G01D 5/00 - 5/62 G01B 7/00 - 7/34

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 回転体にA相及び該A相と90°位相が
    異なるB相の正弦波信号を出力する正弦波エンコーダを
    軸結し,該正弦波エンコーダの出力をパルス波形に波形
    整形し,該パルス波形を所定の演算周期で計数してパル
    ス計数角度を演算すると共に,上記正弦波エンコーダの
    出力をA/D変換して,上記演算周期でA相デジタル値
    とB相デジタル値のtan -1 演算し,該tan -1 演算値
    を上記パルス計数角度に加算して上記回転体の回転角度
    を検出する回転角度検出方法において, 上記正弦波エンコーダ出力周期毎にA相又はB相の最大
    値又は最小値を求め,該最大値又は最小値が求められた
    演算周期iと,この演算周期iに最も近く,最も0に近
    い値が検出された異なる相の演算周期jとの演算周期差
    (i−j)及び演算周期前後方向からA相とB相との位
    相差のずれ量及びずれ方向を求め,次の正弦波エンコー
    ダ出力周期のA相又はB相のA/D変換値を上記位相差
    のずれ量及びずれ方向に移動させる位相補正を行った
    後,上記tan -1 演算を行うようにしたことを特徴とす
    る回転角度検出方法。
  2. 【請求項2】 上記正弦波エンコーダ出力のオフセット
    量を求め,A/D変換されたA相及びB相の上記演算周
    期毎の値を上記オフセット量を用いて補正した後,上記
    tan -1 演算を行うようにした請求項1に記載の回転角
    度検出方法。
  3. 【請求項3】 上記オフセット補正が,上記正弦波エン
    コーダ出力周期毎のA相及びB相それぞれの最大値及び
    最小値を求め,正弦波エンコーダ出力周期毎の上記最大
    値及び最小値の差からA相,B相それぞれのオフセット
    量を演算すると共に,正弦波エンコーダ出力周期の前後
    間の上記オフセット量の差から補正量を演算し,上記演
    算周期毎の上記A/D変換値を上記補正量で補正するも
    のである請求項2に記載の回転角度検出方法。
  4. 【請求項4】 上記正弦波エンコーダ出力のA相とB相
    とにおける振幅変動比を求め,A/D変換されたA相及
    びB相の上記演算周期毎の値を上記振幅変動比を用いて
    補正した後,上記tan -1 演算を行うようにした請求項
    1〜3のいずれかに記載の回転角度検出方法。
  5. 【請求項5】 上記振幅補正が,上記正弦波エンコーダ
    出力周期毎にA相及び B相それぞれの最大値と最小値と
    を求め,該最大値と最小値とから求められる正弦波エン
    コーダのA相及びB相出力の振幅と基準とする振幅値と
    の比から上記振幅変動比を演算し,該振幅変動比を用い
    て上記A相とB相とにおける振幅変動を補正するもので
    ある請求項4に記載の回転角度検出方法。
JP17218094A 1994-07-25 1994-07-25 回転角度検出方法 Expired - Fee Related JP3365063B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17218094A JP3365063B2 (ja) 1994-07-25 1994-07-25 回転角度検出方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17218094A JP3365063B2 (ja) 1994-07-25 1994-07-25 回転角度検出方法

Publications (2)

Publication Number Publication Date
JPH0835857A JPH0835857A (ja) 1996-02-06
JP3365063B2 true JP3365063B2 (ja) 2003-01-08

Family

ID=15937066

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17218094A Expired - Fee Related JP3365063B2 (ja) 1994-07-25 1994-07-25 回転角度検出方法

Country Status (1)

Country Link
JP (1) JP3365063B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102010052712A1 (de) 2009-11-27 2011-06-22 DENSO CORPORATION, Aichi-pref. Drive motor control apparatus for vehicle, motor control system, method for correcting rotation angle of motor, program for performing the same, totation detecting apparatus
US8159173B2 (en) 2009-08-06 2012-04-17 Denso Corporation Control device for controlling travel motor of vehicle
JP2012189350A (ja) * 2011-03-09 2012-10-04 Hamamatsu Koden Kk エンコーダ装置及びエンコーダ装置のための補正方法

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1216177B1 (de) * 1999-09-15 2006-09-13 Continental Teves AG & Co. oHG Reifensensor
JP4759845B2 (ja) * 2001-05-21 2011-08-31 パナソニック株式会社 回転角度検出装置
JP2004045286A (ja) * 2002-07-12 2004-02-12 Denso Corp レゾルバ補正方法
JP2006153802A (ja) * 2004-12-01 2006-06-15 Hitachi Ltd 非接触式角度検出器
JP6484008B2 (ja) * 2014-11-19 2019-03-13 日本電産サンキョー株式会社 エンコーダ及び回転角度位置算出方法
CN107782255B (zh) * 2016-08-25 2019-12-06 上海智驱智能科技有限公司 一种风门电机检测系统
CN117990149B (zh) * 2024-04-07 2024-06-18 长春理工大学 一种圆光栅z轴偏移量的检测方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8159173B2 (en) 2009-08-06 2012-04-17 Denso Corporation Control device for controlling travel motor of vehicle
DE102010052712A1 (de) 2009-11-27 2011-06-22 DENSO CORPORATION, Aichi-pref. Drive motor control apparatus for vehicle, motor control system, method for correcting rotation angle of motor, program for performing the same, totation detecting apparatus
DE102010052712B4 (de) 2009-11-27 2023-01-19 Denso Corporation Rotationserfassungsvorrichtung, Motorsteuersystem, computerlesbares Medium und Verfahren zum Korrigieren eines Rotationswinkels eines Motors
JP2012189350A (ja) * 2011-03-09 2012-10-04 Hamamatsu Koden Kk エンコーダ装置及びエンコーダ装置のための補正方法

Also Published As

Publication number Publication date
JPH0835857A (ja) 1996-02-06

Similar Documents

Publication Publication Date Title
EP1341311B1 (en) Signal processing apparatus for encoder
KR0169550B1 (ko) 절대위치 검출장치 및 그 에러 보정방법
EP2209213B1 (en) RD converter and angle detecting apparatus
JP5281102B2 (ja) レゾルバ装置、レゾルバの角度検出装置およびその方法
JP3365063B2 (ja) 回転角度検出方法
JPH06167354A (ja) スケールの内挿処理装置
WO1999001927A1 (fr) Systeme de commande de positionnement
JP3893033B2 (ja) 位置検出装置
JP5469053B2 (ja) 位置速度制御装置
US20020070885A1 (en) Automatic resolution changing method and circuit for use in digital conversion of two-phase sinusoidal wave signals
JPH07229910A (ja) パルスカウンタ回路
JP3860324B2 (ja) モータ速度制御装置
JP2941790B1 (ja) パルス計数器
JPH0758191B2 (ja) 位置検出装置
JP2003035566A (ja) 補正機能付き絶対位置検出器
JP3365913B2 (ja) 位置検出装置
JP3228050B2 (ja) 回転角度検出方法
CN117419887B (zh) 用于风洞试验环境的abz型倾角传感器z信号干扰修正方法
JPH0861980A (ja) 変位量検出装置
JPH0725698Y2 (ja) 回転機の速度検出装置
JPS62237316A (ja) 位置検出器の検出誤差補正装置
JP3349575B2 (ja) 変位速度検出方法および装置
JP3451851B2 (ja) 回転速度検出装置
JPH05256638A (ja) 誤差補正機能付き位置検出装置
JP3683071B2 (ja) モータの回転速度制御装置

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081101

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees