JP2008096164A - 回転角度検出装置 - Google Patents
回転角度検出装置 Download PDFInfo
- Publication number
- JP2008096164A JP2008096164A JP2006275650A JP2006275650A JP2008096164A JP 2008096164 A JP2008096164 A JP 2008096164A JP 2006275650 A JP2006275650 A JP 2006275650A JP 2006275650 A JP2006275650 A JP 2006275650A JP 2008096164 A JP2008096164 A JP 2008096164A
- Authority
- JP
- Japan
- Prior art keywords
- rotation angle
- detection signal
- value
- maximum value
- minimum value
- 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回転する間の検出信号A1,B1を磁石の磁極数と同数の区間に区分して、各区間における最大値又は最小値を記憶する記憶手段と、各区間における検出信号A1,B1をその区間に対応して記憶された最大値又は最小値で補正する補正手段と、補正された検出信号A2,B2を用いて回転角度Cを算出する算出手段とを備える。
【選択図】 図2
【解決手段】 回転方向に複数の磁極を有する磁石と、この磁石を検出してその磁界の強さに応じた信号を出力するセンサとを備えると共に、センサからの検出信号に基づいて回転体の回転角度を算出する演算装置を備える。
演算装置は、対象となる回転体が1回転する間の検出信号A1,B1を磁石の磁極数と同数の区間に区分して、各区間における最大値又は最小値を記憶する記憶手段と、各区間における検出信号A1,B1をその区間に対応して記憶された最大値又は最小値で補正する補正手段と、補正された検出信号A2,B2を用いて回転角度Cを算出する算出手段とを備える。
【選択図】 図2
Description
本発明は、モータのロータなどの回転体を対象として、その回転角度を検出する装置に関する。
従来、回転体の回転角度を検出するために、回転体と一体的に回転するよう磁石を設けると共に、磁石が回転することによる磁界の強さの変化を信号として出力するセンサを設け、センサの検出信号に基づいて回転角度を算出することが行われている。このような構成では、磁石には着磁や取り付けのばらつきが存在し、又、センサにも取り付けのばらつきが存在することになるが、このような製造上のばらつきによる影響がセンサの検出信号に反映されるため、検出信号から正確な回転体の回転角度が得られるようにすることは非常に困難である。そこで、例えば特許文献1に示すように、オフセット補正値及び振幅補正値を求め、これらの補正値を用いてセンサ(磁束密度検出部)からの検出信号を補正することが考えられている。
上記の特許文献1の技術のように、検出信号をオフセット補正値及び振幅補正値を用いて補正することで、ばらつき等による影響を取り除いた信号が得られ、この信号から精度の高い回転角度を算出することができる。しかしながら、上記の特許文献1の技術では、磁石の磁極数が増えてばらつきによる影響がより複雑になると、充分な補正ができなくなることが考えられる。
そこで本発明の目的は、上記従来の技術に代わって、回転角度を正確に検出できるようにすることである。
上記の目的を達成するため、本発明に係る回転角度検出装置は、対象となる回転体と一体的に回転する、回転方向に複数の磁極を有する磁石と、該磁石を検出してその磁界の強さに応じた信号を出力するセンサとを備えると共に、上記センサからの検出信号に基づいて上記回転体の回転角度を算出する演算装置を備え、上記演算装置は、上記回転体が1回転する間の上記検出信号を上記磁石の磁極数と同数の区間に区分し、各区間における最大値又は最小値を記憶する記憶手段と、上記各区間における検出信号をその区間に対応して記憶された上記最大値又は最小値で補正する補正手段と、補正された上記検出信号を用いて上記回転角度を算出する算出手段とを備えることを特徴とする構成としている。
このような本発明によれば、回転体が1回転する間に、検出信号は磁石の磁極数に応じて最大値又は最小値となることになり、このうち最大値が記憶される区間では最大値で検出信号の値が補正され、最小値が記憶される区間では最小値で検出信号の値が補正される。そして、こうして補正された検出信号で回転角度が算出され、回転体の位置が求められる。
従って、センサからの検出信号を各区間での最大値又は最小値を用いて補正するので、各区間ごとで検出信号に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができ、正確な回転角度が得られるようになる。又、磁石の磁極数が増えても、その分だけ検出信号を細かく区分して補正することになるので、算出される回転角度の正確性が低下することはない。更に、回転体が回転するごとに各区間で最大値又は最小値を更新するようにすれば、回転体の回転に伴う発熱があり、その影響を磁石又はセンサが受けたとしても、それを考慮した検出信号の補正を行うことができ、より正確な回転角度が得られる。
従って、センサからの検出信号を各区間での最大値又は最小値を用いて補正するので、各区間ごとで検出信号に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができ、正確な回転角度が得られるようになる。又、磁石の磁極数が増えても、その分だけ検出信号を細かく区分して補正することになるので、算出される回転角度の正確性が低下することはない。更に、回転体が回転するごとに各区間で最大値又は最小値を更新するようにすれば、回転体の回転に伴う発熱があり、その影響を磁石又はセンサが受けたとしても、それを考慮した検出信号の補正を行うことができ、より正確な回転角度が得られる。
上記の構成において、上記センサは上記回転方向に所定の角度間隔で複数配置されており、上記演算装置は上記各センサからの検出信号に基づいて上記回転体の回転角度を算出するものであれば、上記記憶手段は上記各検出信号について上記各区間の最大値又は最小値を記憶し、上記補正手段は上記各検出信号を上記各区間に対応する上記最大値又は最小値で補正し、上記算出手段は補正された上記検出信号を用いて上記回転角度を算出するものとすることができる。
つまり、複数のセンサからの複数の検出信号についても、検出信号ごとに、最大値が記憶される区間、最小値が記憶される区間をそれぞれ設定し、その区間において最大値又は最小値を用いて検出信号の値が補正されるようにすることができ、補正された複数の検出信号から回転角度を算出するようにすることができる。
つまり、複数のセンサからの複数の検出信号についても、検出信号ごとに、最大値が記憶される区間、最小値が記憶される区間をそれぞれ設定し、その区間において最大値又は最小値を用いて検出信号の値が補正されるようにすることができ、補正された複数の検出信号から回転角度を算出するようにすることができる。
このようにすれば、各センサについてその検出信号を補正することができるので、センサごとの検出信号に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができる。又、角度間隔がある分だけ各センサの検出信号が最大値又は最小値となるタイミングは異なることになるが、各検出信号について最大値が記憶される区間、最小値が記憶される区間が設定されるので支障はない。
又、上記の構成において、上記記憶手段は、上記算出手段で算出される上記回転角度が上記最大値に対応して予め定められた角度となったときに、上記センサからの検出信号の値を上記最大値として記憶し、上記回転角度が上記最小値に対応して予め定められた角度となったときに、上記センサからの検出信号の値を上記最小値として記憶するものとすることができる。
つまり、予め最大値を記憶する回転角度、最小値を記憶する回転角度をそれぞれ設定しておき、算出される回転角度が、最大値を記憶する回転角度と一致するとそのときの検出信号の値を最大値として記憶し、最小値を記憶する回転角度と一致するとそのときの検出信号の値を最小値として記憶するようにすることができる。
つまり、予め最大値を記憶する回転角度、最小値を記憶する回転角度をそれぞれ設定しておき、算出される回転角度が、最大値を記憶する回転角度と一致するとそのときの検出信号の値を最大値として記憶し、最小値を記憶する回転角度と一致するとそのときの検出信号の値を最小値として記憶するようにすることができる。
このようにすれば、最大値及び最小値を好適なタイミングで確実に記憶でき、それらを検出信号の補正に利用することができる。
更に、上記の構成において、
上記補正手段は、補正前と符号を変えることなく、記憶されている上記最大値又は最小値の逆数を上記検出信号の値に乗算することで補正を行うものとすることができる。
上記補正手段は、補正前と符号を変えることなく、記憶されている上記最大値又は最小値の逆数を上記検出信号の値に乗算することで補正を行うものとすることができる。
このようにすれば、例えば、補正前の検出信号の値が負であり、これに最小値(負の値)の逆数に乗算すると、そのままでは補正後の検出信号の値は正となるが、符号が維持されるので補正後も負の値が得られる。もちろん、補正前の検出信号の値が正であり、これに最大値(正の値)の逆数に乗算しても、補正後の検出信号の値は正として得られる。このように簡単に検出信号の補正を行うことができ、又、最大値又は最小値の逆数を乗算して値が正規化されるので、補正された検出信号を活用しやすくなる。
以上に説明したように、本発明によれば、各区間ごとで検出信号に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができ、正確な回転角度が得られるようになる。又、磁石の磁極数が増えても、その分だけ検出信号を細かく区分して補正することになるので、算出される回転角度の正確性が低下することはない。
以下、本発明の実施例を、図面を参照しながら説明する。
この実施例に係る回転角度検出装置は、モータMの回転角度を検出するためのものであり、主に、モータMのロータに固定され一体的に回転する磁石1と、磁石1を検出して信号を出力するセンサ2,3と、両センサ2,3からの検出信号に基づいてモータMの回転角度を算出すると共に、モータMの制御を行う制御装置4とからなる。尚、実際に算出されるのはロータの回転角度であるが、便宜上、モータMの回転角度として説明する。又、この実施例では、制御装置4は算出したモータMの回転角度をそのまま用いてモータMの制御を行うが、回転角度を算出する装置と、モータMを制御する装置とを別々に設けてもかまわない。
磁石1は、図1に示すように、N極、S極が交互に回転方向へ90度ずつずらせて着磁されており、計4つの磁極を有している。この磁石1の外縁に沿うようにして、センサ2,3が回転方向へ45度ずらせて配置されており、モータMのケーシング部材など非回転部分に固定されている。
センサ2,3は、何れもアナログ型のホールセンサであり、ホール素子と、ホール素子における電圧変化を検出信号として出力する回路とからなる。センサ2,3からは磁石1の磁界の強さに比例した検出信号がそれぞれ出力され、センサ2の検出信号A1とセンサ3の検出信号B1とは、図2に示すように、互いに45度の位相差のある正弦波状の信号となる。又、検出信号A1,B1ともモータMが1回転する間に、出力値V(以下、検出信号A1の出力値をVA1、検出信号B1の出力値をVB1という)がプラス側、マイナス側でそれぞれ2回ずつピークをとることになる。そのため、検出信号A1は、出力値VA1≧0の区間2つと出力値VA1<0の区間2つの、計4つの区間からなり、検出信号B1は、出力値VB1≧0の区間2つと出力値VB1<0の区間2つの、計4つの区間からなると見ることができ、このことを利用して後述するように検出信号A1,B1の補正を行う。
センサ2,3は、何れもアナログ型のホールセンサであり、ホール素子と、ホール素子における電圧変化を検出信号として出力する回路とからなる。センサ2,3からは磁石1の磁界の強さに比例した検出信号がそれぞれ出力され、センサ2の検出信号A1とセンサ3の検出信号B1とは、図2に示すように、互いに45度の位相差のある正弦波状の信号となる。又、検出信号A1,B1ともモータMが1回転する間に、出力値V(以下、検出信号A1の出力値をVA1、検出信号B1の出力値をVB1という)がプラス側、マイナス側でそれぞれ2回ずつピークをとることになる。そのため、検出信号A1は、出力値VA1≧0の区間2つと出力値VA1<0の区間2つの、計4つの区間からなり、検出信号B1は、出力値VB1≧0の区間2つと出力値VB1<0の区間2つの、計4つの区間からなると見ることができ、このことを利用して後述するように検出信号A1,B1の補正を行う。
この実施例では、モータMの回転角度Cは0≦C<360であり、回転角度C=0から1回転すれば再び回転角度C=0となる。
又、検出信号A1について、回転角度C=0から見て、1つ目のプラス側のピーク、つまり出力値VA1≧0の区間での最大値をAH1、2つ目のプラス側のピーク、つまり出力値VA1≧0の区間での最大値をAH2とし、1つ目のマイナス側のピーク、つまり出力値VA1<0の区間での最小値をAL1、2つ目のマイナス側のピーク、つまり出力値VA1<0の区間での最小値をAL2としている。同様に、検出信号B1について、回転角度C=0から見て、1つ目のプラス側のピーク、つまり出力値VB1≧0の区間での最大値をBH1、2つ目のプラス側のピーク、つまり出力値VB1≧0の区間での最大値をBH2とし、1つ目のマイナス側のピーク、つまり出力値VB1<0の区間での最小値をBL1、2つ目のマイナス側のピーク、つまり出力値VB1<0の区間での最小値をBL2としている。
又、検出信号A1について、回転角度C=0から見て、1つ目のプラス側のピーク、つまり出力値VA1≧0の区間での最大値をAH1、2つ目のプラス側のピーク、つまり出力値VA1≧0の区間での最大値をAH2とし、1つ目のマイナス側のピーク、つまり出力値VA1<0の区間での最小値をAL1、2つ目のマイナス側のピーク、つまり出力値VA1<0の区間での最小値をAL2としている。同様に、検出信号B1について、回転角度C=0から見て、1つ目のプラス側のピーク、つまり出力値VB1≧0の区間での最大値をBH1、2つ目のプラス側のピーク、つまり出力値VB1≧0の区間での最大値をBH2とし、1つ目のマイナス側のピーク、つまり出力値VB1<0の区間での最小値をBL1、2つ目のマイナス側のピーク、つまり出力値VB1<0の区間での最小値をBL2としている。
尚、図2では、検出信号A1は回転角度C=0,90,180,270で出力値VA1=0となり、検出信号B1は回転角度C=45,135,225,315で出力値VB1=0となるように描いてあり、何れも90度ごとにプラスとマイナスが入れ替わるものとしてあるが、実際にそうなるとは限らない。そこで、この実施例では最小値AL1に対応する区間を出力値VA1<0で、回転角度Cが45≦C<225の区間、最大値AH2に対応する区間を出力値VA1≧0で、回転角度Cが135≦C<315の区間としており、最大値AH1に対応する区間を上記以外の出力値VA1≧0の区間、最小値AL2に対応する区間を上記以外の出力値VA1<0の区間としてある。同様に、最大値BH1に対応する区間を出力値VB1≧0で、回転角度Cが0≦C<180の区間、最小値BL1に対応する区間を出力値VB1<0で、回転角度Cが90≦C<270の区間としており、最大値BH2に対応する区間を上記以外の出力値VB1≧0の区間、最小値BL2に対応する区間を上記以外の出力値VB1<0の区間としてある。
図3に示すように、制御装置4は、モータMの回転角度Cを算出するのに必要な各数値データを記憶する記憶部5と、センサ2,3からの検出信号A1,B1を補正する補正部6,7と、補正された検出信号A2,B2から回転角度Cを算出する角度算出部8と、算出される回転角度Cに基づいてモータMを制御するモータ制御部9とを備える。
記憶部5は、検出信号A1の最大値AH1,AH2及び最小値AL1,AL2と、検出信号B1の最大値BH1,BH2及び最小値BL1,BL2とを記憶する。各最大値及び各最小値は、予め設定された初期値と、実際にセンサ2,3から伝えられた出力値とがそれぞれ記憶され、出力値は後述するように回転角度Cに応じて随時更新されて行く。尚、この実施例では最大値の初期値は全て1であり、最小値の初期値は全て−1である。
補正部6は、センサ2からの検出信号A1を補正するものであり、回転角度Cに応じて、記憶部5に記憶されている最大値AH1,AH2及び最小値AL1,AL2を用いて検出信号A1を補正する。補正部7は、センサ3からの検出信号B1を補正するものであり、回転角度Cに応じて、記憶部5に記憶されている最大値BH1,BH2及び最小値BL1,BL2を用いて検出信号B1を補正する。
この実施例では、補正部6で補正された後の信号を検出信号A2とし、補正部7で補正された後の信号を検出信号B2としている。又、検出信号A2の出力値はVA2、検出信号B2の出力値はVB2としており、補正部6において出力値VA1から出力値VA2を求めることで検出信号A1が検出信号A2に補正され、補正部7において出力値VB1から出力値VB2を求めることで検出信号B1が検出信号B2に補正される。検出信号A1と検出信号A2の関係、検出信号B1と検出信号B2の関係は、図2に示すようになる。
この実施例では、補正部6で補正された後の信号を検出信号A2とし、補正部7で補正された後の信号を検出信号B2としている。又、検出信号A2の出力値はVA2、検出信号B2の出力値はVB2としており、補正部6において出力値VA1から出力値VA2を求めることで検出信号A1が検出信号A2に補正され、補正部7において出力値VB1から出力値VB2を求めることで検出信号B1が検出信号B2に補正される。検出信号A1と検出信号A2の関係、検出信号B1と検出信号B2の関係は、図2に示すようになる。
角度算出部8は、補正部6,7での補正が開始されるまでは検出信号A1,B1に基づいて回転角度Cを算出し、補正が開始されてからは補正された検出信号A2,B2に基づいて回転角度Cを算出する。
モータ制御部9は、角度算出部8で算出される回転角度Cと、これとは別にモータMを制御するための指令Tとを受け、これらに従ってモータMを制御する。
さて、図4に示すように、制御装置4は起動されると、初期の回転角度Cを算出し(S1)、まずは初期の回転角度Cに従って検出信号A1,B1を補正する(S2)。そして、補正された検出信号A2,B2から改めて回転角度Cを算出し(S3)、この回転角度Cに従って検出信号A1,B1それぞれの最大値及び最小値を記憶し(S4)、モータMを制御する(S5)。モータMの制御が開始されてからは、算出された回転角度Cに従って検出信号A1,B1の補正を行い(S2)、以降は上記と同様の処理を繰り返して行く。
以下、各ステップをより詳細に説明する。
以下、各ステップをより詳細に説明する。
初期の回転角度Cを算出するステップ(S1)では、図5Aに示すように、角度算出部8が検出信号A1,B1の各最大値及び各最小値を初期値に設定し(S100)、続いてその時点での出力値VA1,VB1がそれぞれセンサから入力される(S101)。更に、角度算出部8はVA1≧0であるかを判定し(S102)、VA1≧0であればVB1≧0であるかを判定する(S103)。VB1≧0であれば角度算出部8はVA1≦VB1であるかを判定し(S104)、VA1≦VB1であれば、
C1={atan(VA1/VB1)}/2
の演算を行うことで角度C1を求め(S105)、VA1≦VB1でなければ、
C1={90−atan(VB1/VA1)}/2
の演算を行うことで角度C1を求める(S106)。S103において、VB1≧0でなければ角度算出部8はVA1≧−VB1であるかを判定し(S107)、VA1≧−VB1であれば、
C1={90+atan(−VB1/VA1)}/2
の演算を行うことで角度C1を求め(S108)、VA1≧−VB1でなければ、
C1={180−atan(−VA1/VB1)}/2
の演算を行うことで角度C1を求める(S109)。
C1={atan(VA1/VB1)}/2
の演算を行うことで角度C1を求め(S105)、VA1≦VB1でなければ、
C1={90−atan(VB1/VA1)}/2
の演算を行うことで角度C1を求める(S106)。S103において、VB1≧0でなければ角度算出部8はVA1≧−VB1であるかを判定し(S107)、VA1≧−VB1であれば、
C1={90+atan(−VB1/VA1)}/2
の演算を行うことで角度C1を求め(S108)、VA1≧−VB1でなければ、
C1={180−atan(−VA1/VB1)}/2
の演算を行うことで角度C1を求める(S109)。
S102において、VA1≧0でなければ、図5Bに示すように、角度算出部8はVB1<0であるかを判定する(S110)。VB1<0であれば角度算出部8はVA1≧VB1であるかを判定し(S111)、VA1≧VB1であれば、
C1={180+atan(VA1/VB1)}/2
の演算を行うことで角度C1を求め(S112)、VA1≧VB1でなければ、
C1={270−atan(VB1/VA1)}/2
の演算を行うことで角度C1を求める(S113)。S110において、VB1<0でなければ角度算出部8はVA1≦−VB1であるかを判定し(S114)、VA1≦−VB1であれば、
C1={270+atan(−VB1/VA1)}/2
の演算を行うことで角度C1を求め(S115)、VA1≦−VB1でなければ、
C1={360−atan(−VA1/VB1)}/2
の演算を行うことで角度C1を求める(S116)。
こうして角度C1を求めると、図5Aに示すように、角度算出部8はこの角度C1を初期の回転角度Cとする(S117)。
C1={180+atan(VA1/VB1)}/2
の演算を行うことで角度C1を求め(S112)、VA1≧VB1でなければ、
C1={270−atan(VB1/VA1)}/2
の演算を行うことで角度C1を求める(S113)。S110において、VB1<0でなければ角度算出部8はVA1≦−VB1であるかを判定し(S114)、VA1≦−VB1であれば、
C1={270+atan(−VB1/VA1)}/2
の演算を行うことで角度C1を求め(S115)、VA1≦−VB1でなければ、
C1={360−atan(−VA1/VB1)}/2
の演算を行うことで角度C1を求める(S116)。
こうして角度C1を求めると、図5Aに示すように、角度算出部8はこの角度C1を初期の回転角度Cとする(S117)。
検出信号A1,B1を補正するステップ(S2)では、図6に示すように、まずは補正部6,7にその時点での出力値VA1,VB1がそれぞれセンサから入力される(S200)。そして、補正部6はVA1≧0であるかを判定し(S201)、VA1≧0であれば135≦C<315であるかを判定する(S202)。補正部6は135≦C<315でなければ、
VA2=1×VA1/AH1
の演算を行うことで補正した出力値VA2を求め(S203)、135≦C<315であれば、
VA2=1×VA1/AH2
の演算を行うことで補正した出力値VA2を求める(S204)。S201において、VA1≧0でなければ補正部6は45≦C<225であるかを判定する(S205)。補正部6は45≦C<225であれば、
VA2=−1×VA1/AL1
の演算を行うことで補正した出力値VA2を求め(S206)、45≦C<225でなければ、
VA2=−1×VA1/AL2
の演算を行うことで補正した出力値VA2を求める(S207)。
VA2=1×VA1/AH1
の演算を行うことで補正した出力値VA2を求め(S203)、135≦C<315であれば、
VA2=1×VA1/AH2
の演算を行うことで補正した出力値VA2を求める(S204)。S201において、VA1≧0でなければ補正部6は45≦C<225であるかを判定する(S205)。補正部6は45≦C<225であれば、
VA2=−1×VA1/AL1
の演算を行うことで補正した出力値VA2を求め(S206)、45≦C<225でなければ、
VA2=−1×VA1/AL2
の演算を行うことで補正した出力値VA2を求める(S207)。
続いて、補正部7はVB1≧0であるかを判定し(S208)、VB1≧0であれば0≦C<180であるかを判定する(S209)。補正部7は0≦C<180であれば、
VB2=1×VB1/BH1
の演算を行うことで補正した出力値VB2を求め(S210)、0≦C<180でなければ、
VB2=1×VB1/BH2
の演算を行うことで補正した出力値VB2を求める(S211)。S208において、VB1≧0でなければ補正部7は90≦C<270であるかを判定する(S212)。補正部7は90≦C<270でなければ、
VB2=−1×VB1/BL1
の演算を行うことで補正した出力値VB2を求め(S213)、90≦C<270であれば、
VB2=−1×VB1/BL2
の演算を行うことで補正した出力値VB2を求める(S214)。
VB2=1×VB1/BH1
の演算を行うことで補正した出力値VB2を求め(S210)、0≦C<180でなければ、
VB2=1×VB1/BH2
の演算を行うことで補正した出力値VB2を求める(S211)。S208において、VB1≧0でなければ補正部7は90≦C<270であるかを判定する(S212)。補正部7は90≦C<270でなければ、
VB2=−1×VB1/BL1
の演算を行うことで補正した出力値VB2を求め(S213)、90≦C<270であれば、
VB2=−1×VB1/BL2
の演算を行うことで補正した出力値VB2を求める(S214)。
補正された検出信号A2,B2から回転角度Cを算出するステップ(S3)では、図7Aに示すように、角度算出部8がVA2≧0であるかを判定し(S300)、VA2≧0であればVB2≧0であるかを判定する(S301)。VB2≧0であれば角度算出部8はVA2≦VB2であるかを判定し(S302)、VA2≦VB2であれば、
C2={atan(VA2/VB2)}/2
の演算を行うことで角度C2を求め(S303)、VA2≦VB2でなければ、
C2={90−atan(VB2/VA2)}/2
の演算を行うことで角度C2を求める(S304)。S301において、VB2≧0でなければ角度算出部8はVA2≧−VB2であるかを判定し(S305)、VA2≧−VB2であれば、
C2={90+atan(−VB2/VA2)}/2
の演算を行うことで角度C2を求め(S306)、VA2≧−VB2でなければ、
C2={180−atan(−VA2/VB2)}/2
の演算を行うことで角度C2を求める(S307)。
C2={atan(VA2/VB2)}/2
の演算を行うことで角度C2を求め(S303)、VA2≦VB2でなければ、
C2={90−atan(VB2/VA2)}/2
の演算を行うことで角度C2を求める(S304)。S301において、VB2≧0でなければ角度算出部8はVA2≧−VB2であるかを判定し(S305)、VA2≧−VB2であれば、
C2={90+atan(−VB2/VA2)}/2
の演算を行うことで角度C2を求め(S306)、VA2≧−VB2でなければ、
C2={180−atan(−VA2/VB2)}/2
の演算を行うことで角度C2を求める(S307)。
S300において、VA2≧0でなければ、図7Bに示すように、角度算出部8はVB2<0であるかを判定する(S308)。VB2<0であれば角度算出部8はVA2≧VB2であるかを判定し(S309)、VA2≧VB2であれば、
C2={180+atan(VA2/VB2)}/2
の演算を行うことで角度C2を求め(S310)、VA2≧VB2でなければ、
C2={270−atan(VB2/VA2)}/2
の演算を行うことで角度C2を求める(S311)。S308において、VB2<0でなければ角度算出部8はVA2≦−VB2であるかを判定し(S312)、VA2≦−VB2であれば、
C2={270+atan(−VB2/VA2)}/2
の演算を行うことで角度C2を求め(S313)、VA2≦−VB2でなければ、
C2={360−atan(−VA2/VB2)}/2
の演算を行うことで角度C2を求める(S314)。
こうして角度C2を求めると、図7Aに示すように、角度算出部8は回転角度Cの現在値に、角度C2と角度C1との差(C2−C1)を加算することで回転角度Cを更新する(S315)。
C2={180+atan(VA2/VB2)}/2
の演算を行うことで角度C2を求め(S310)、VA2≧VB2でなければ、
C2={270−atan(VB2/VA2)}/2
の演算を行うことで角度C2を求める(S311)。S308において、VB2<0でなければ角度算出部8はVA2≦−VB2であるかを判定し(S312)、VA2≦−VB2であれば、
C2={270+atan(−VB2/VA2)}/2
の演算を行うことで角度C2を求め(S313)、VA2≦−VB2でなければ、
C2={360−atan(−VA2/VB2)}/2
の演算を行うことで角度C2を求める(S314)。
こうして角度C2を求めると、図7Aに示すように、角度算出部8は回転角度Cの現在値に、角度C2と角度C1との差(C2−C1)を加算することで回転角度Cを更新する(S315)。
最大値及び最小値を記憶するステップ(S4)では、図8に示すように、記憶部5が回転角度C=45であれば(S400のYES)、そのときの検出信号A1の出力値VA1を最大値AH1として記憶し(S401)、回転角度C=90であれば(S402のYES)、そのときの検出信号B1の出力値VB1を最大値BH1として記憶し(S403)、回転角度C=135であれば(S404のYES)、そのときの検出信号A1の出力値VA1を最小値AL1として記憶し(S405)、回転角度C=180であれば(S406のYES)、そのときの検出信号B1の出力値VB1を最小値BL1として記憶する(S407)。又、記憶部5は、回転角度C=225であれば(S408のYES)、そのときの検出信号A1の出力値VA1を最大値AH2として記憶し(S409)、回転角度C=270であれば(S410のYES)、そのときの検出信号B1の出力値VB1を最大値BH2として記憶し(S411)、回転角度C=315であれば(S412のYES)、そのときの検出信号A1の出力値VA1を最小値AL2として記憶し(S413)、回転角度C=0であれば(S414のYES)、そのときの検出信号B1の出力値VB1を最小値BL2として記憶する(S415)。
モータMを制御するステップ(S5)では、モータ制御部9が、指令Tに基づいてモータMの目標とする回転速度を求めると共に、S3において算出された回転角度Cから実際の回転速度を求め、これらが一致するように、モータMへの印加電圧を調節する。
従って、モータMのロータが1回転する間に、検出信号A1は最大値が記憶される区間(VA1≧0の区間)では最大値AH1又はAH2で補正されて出力値VA2(検出信号A2)が求められ、最小値が記憶される区間(VA1<0の区間)では最小値AL1又はAL2で補正されて出力値VA2(検出信号A2)が求められる。同様に、検出信号B1は最大値が記憶される区間(VB1≧0の区間)では最大値BH1又はBH2で補正されて出力値VB2(検出信号B2)が求められ、最小値が記憶される区間(VB1<0の区間)では最小値BL1又はBL2で補正されて出力値VB2(検出信号B2)が求められる。そして、こうして補正された検出信号A2,B2で回転角度Cが算出されてロータの位置が求められ、それに基づいたモータMの制御がなされる。
このような実施例によれば、センサ2,3からの検出信号A1,B1を予め設定された各区間での最大値又は最小値を用いて補正するので、各区間ごとで検出信号A1,B1に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができる。しかも、ロータが回転するごとに各区間での最大値又は最小値を更新するので、ロータの回転に伴う発熱の影響を磁石1又はセンサ2,3が受けたとしても、それを考慮した検出信号A1,B1の補正を行うことができ、正確な回転角度Cが得られるようになる。更に、センサ2の検出信号A1とセンサ3の検出信号B1とを個別に補正することができるので、センサごとの検出信号に表れるばらつきの影響が異なっていても、その相異を考慮した補正を行うことができる。尚、センサ2とセンサ3とは45度の角度間隔があるので、各センサの検出信号が最大値又は最小値となるタイミングは異なることになるが、検出信号A1の最大値及び最小値を記憶する回転角度Cに対し検出信号B1のそれを45度ずらして設定してあるので支障はない。
又、この実施例によれば、検出信号A1,B1を補正して新たな回転角度Cが得られると、この回転角度Cが所定の角度になる度に出力値VA1,VB1を最大値又は最小値として記憶し、更新して行くので、各最大値及び各最小値を好適なタイミングで確実に記憶でき、それらを検出信号A1,B1の補正に活かすことができる。加えて、出力値VA1,VB1に記憶されている最大値又は最小値の逆数を乗算し、補正前と符号を変えずに出力値VA2,VB2を求めることで補正を行っているので、簡単に補正を行うことができ、又、出力値VA2,VB2が正規化されることで補正された検出信号A2,B2を活用しやすくなる。
尚、上記の実施例では、4つの磁極(2つの磁極対)を持つ磁石1を用いているが、本発明はこれに限られるものではなく、磁極数が多い磁石であるほど本発明によって顕著な効果が得られる。又、上記の実施例では、2つのセンサ2,3を用いているが、本発明はこれに限られるものではない。
更に、上記の実施例では、出力値VA1,VB1に、記憶されている最大値及び最小値の逆数を乗算することで補正を行うようにしているが、最大値及び最小値を用いた他の演算方法によって補正を行うことも可能である。但し、補正された出力値VA2,VB2を速やかに求めるには、簡便な方法で補正できることが望ましい。
更に、上記の実施例では、出力値VA1,VB1に、記憶されている最大値及び最小値の逆数を乗算することで補正を行うようにしているが、最大値及び最小値を用いた他の演算方法によって補正を行うことも可能である。但し、補正された出力値VA2,VB2を速やかに求めるには、簡便な方法で補正できることが望ましい。
1 磁石
2 センサ
3 センサ
4 制御装置
5 記憶部
6 補正部
7 補正部
8 角度算出部
9 モータ制御部
M モータ
2 センサ
3 センサ
4 制御装置
5 記憶部
6 補正部
7 補正部
8 角度算出部
9 モータ制御部
M モータ
Claims (4)
- 対象となる回転体と一体的に回転する、回転方向に複数の磁極を有する磁石と、該磁石を検出してその磁界の強さに応じた信号を出力するセンサとを備えると共に、上記センサからの検出信号に基づいて上記回転体の回転角度を算出する演算装置を備え、
上記演算装置は、上記回転体が1回転する間の上記検出信号を上記磁石の磁極数と同数の区間に区分し、各区間における最大値又は最小値を記憶する記憶手段と、上記各区間における検出信号をその区間に対応して記憶された上記最大値又は最小値で補正する補正手段と、補正された上記検出信号を用いて上記回転角度を算出する算出手段とを備えることを特徴とする回転角度検出装置。 - 上記センサは上記回転方向に所定の角度間隔で複数配置されており、上記演算装置は上記各センサからの検出信号に基づいて上記回転体の回転角度を算出するものであり、
上記記憶手段は上記各検出信号について上記各区間の最大値又は最小値を記憶し、上記補正手段は上記各検出信号を上記各区間に対応する上記最大値又は最小値で補正し、上記算出手段は補正された上記検出信号を用いて上記回転角度を算出することを特徴とする請求項1に記載の回転角度検出装置。 - 上記記憶手段は、上記算出手段で算出される上記回転角度が上記最大値に対応して予め定められた角度となったときに、上記センサからの検出信号の値を上記最大値として記憶し、上記回転角度が上記最小値に対応して予め定められた角度となったときに、上記センサからの検出信号の値を上記最小値として記憶するものであることを特徴とする請求項1又は請求項2に記載の回転角度検出装置。
- 上記補正手段は、補正前と符号を変えることなく、記憶されている上記最大値又は最小値の逆数を上記検出信号の値に乗算することで補正を行うものであることを特徴とする請求項1ないし請求項3の何れかに記載の回転角度検出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006275650A JP2008096164A (ja) | 2006-10-06 | 2006-10-06 | 回転角度検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006275650A JP2008096164A (ja) | 2006-10-06 | 2006-10-06 | 回転角度検出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008096164A true JP2008096164A (ja) | 2008-04-24 |
Family
ID=39379172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006275650A Pending JP2008096164A (ja) | 2006-10-06 | 2006-10-06 | 回転角度検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008096164A (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009281978A (ja) * | 2008-05-26 | 2009-12-03 | Asahi Kasei Electronics Co Ltd | 回転角度センサ |
JP2010529456A (ja) * | 2007-06-06 | 2010-08-26 | ハイドロ エアー インコーポレイテッド | 角度位置センサ |
JP2011208971A (ja) * | 2010-03-29 | 2011-10-20 | Denso Corp | 回転角度検出装置 |
JP2012127910A (ja) * | 2010-12-17 | 2012-07-05 | Jtekt Corp | 回転角検出装置 |
JP2012137415A (ja) * | 2010-12-27 | 2012-07-19 | Jtekt Corp | 回転角検出装置 |
JP2018063209A (ja) * | 2016-10-14 | 2018-04-19 | ミネベアミツミ株式会社 | アブソリュートエンコーダ |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0496130A (ja) * | 1990-08-09 | 1992-03-27 | Mitsubishi Kasei Corp | 位置信号の校正装置 |
JP2002257590A (ja) * | 2001-03-06 | 2002-09-11 | Yaskawa Electric Corp | 位置検出装置 |
JP2004226124A (ja) * | 2003-01-20 | 2004-08-12 | Kayaba Ind Co Ltd | 角度センサの回転角度検出装置 |
-
2006
- 2006-10-06 JP JP2006275650A patent/JP2008096164A/ja active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0496130A (ja) * | 1990-08-09 | 1992-03-27 | Mitsubishi Kasei Corp | 位置信号の校正装置 |
JP2002257590A (ja) * | 2001-03-06 | 2002-09-11 | Yaskawa Electric Corp | 位置検出装置 |
JP2004226124A (ja) * | 2003-01-20 | 2004-08-12 | Kayaba Ind Co Ltd | 角度センサの回転角度検出装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010529456A (ja) * | 2007-06-06 | 2010-08-26 | ハイドロ エアー インコーポレイテッド | 角度位置センサ |
JP2009281978A (ja) * | 2008-05-26 | 2009-12-03 | Asahi Kasei Electronics Co Ltd | 回転角度センサ |
JP2011208971A (ja) * | 2010-03-29 | 2011-10-20 | Denso Corp | 回転角度検出装置 |
JP2012127910A (ja) * | 2010-12-17 | 2012-07-05 | Jtekt Corp | 回転角検出装置 |
JP2012137415A (ja) * | 2010-12-27 | 2012-07-19 | Jtekt Corp | 回転角検出装置 |
JP2018063209A (ja) * | 2016-10-14 | 2018-04-19 | ミネベアミツミ株式会社 | アブソリュートエンコーダ |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5716954B2 (ja) | 回転角検出装置 | |
JP2008096164A (ja) | 回転角度検出装置 | |
JP5243956B2 (ja) | リアルタイムバイアス推定器に基づく慣性機器のための自己較正 | |
US20050275399A1 (en) | Method and apparatus for sensing angle of rotation | |
EP2477004B1 (en) | Rotation angle detecting device | |
JP5725377B2 (ja) | 回転角検出装置 | |
US20120068694A1 (en) | Method of detecting absolute rotational position | |
WO2011024730A1 (ja) | 回転角検出装置 | |
EP3346602B1 (en) | Methods and systems for calibration of a motor | |
JP2003065795A (ja) | 磁気抵抗角度センサの調整 | |
JP2012189376A (ja) | 回転角検出装置およびトルク検出装置 | |
CN110617760A (zh) | 旋转角检测装置的初始设定方法以及初始设定装置 | |
JP2013088181A (ja) | センサ出力補正装置 | |
JP2023548610A (ja) | 位置センシングシステム、位置センシング信号の取得方法及び電子機器 | |
JP4794509B2 (ja) | レゾルバを用いて回転体の回転位置を検出するための装置 | |
US10381962B2 (en) | Method, apparatus and system for operating a rotating electric machine | |
JP5168629B2 (ja) | 方位角計測装置及び方位角計測方法 | |
JP2012137415A (ja) | 回転角検出装置 | |
KR102099936B1 (ko) | 센서 보정 장치 및 방법 | |
JP2006042537A (ja) | 磁気エンコーダと信号処理回路を付加したブラシレスdcモータ | |
JP2016021674A (ja) | 電子コンパス機能付きデジタルカメラ | |
US11966237B2 (en) | Gimbal and system having the same | |
CN110637276B (zh) | 用于便携式设备的定向估计的方法 | |
JP2006053309A (ja) | 位置検出装置 | |
KR20090131691A (ko) | 모터 회전체의 절대각 계산 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20090807 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20110711 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20110823 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20111221 |