(57)【要約】【課題】モータの回転子の回転角度を回転角度検出センサで検出する際に、その検出角度の誤差を精度良く補正することができ、これによって正確な回転角度を求めること。【解決手段】三相交流のモータ３の回転角度を検出するレゾルバ３ａと、レゾルバ３ａでの検出角度を補正するモータ回転角度補正手段１２ｃとを有する。モータ回転角度補正手段１２ｃが、レゾルバ３ａでの角度検出時の時間（ｔ１＋Δｔ１）の取得時に当該時間時の角度（θ１＋Δθ１）も取得し、この取得された角度（θ１＋Δθ１）の中から当該取得された時間（ｔ１＋Δｔ１）に含まれる遅延時間Δｔ１に応じて増加した増加角度Δθ１を求め、この増加角度Δθ１に、レゾルバ３ａの１周期分の時間Ｔ１２を角度θ１２で割った時間変化率Ｃ１を乗算して遅延時間Δｔ１を求め、この遅延時間Δｔ１を上記取得された時間（ｔ１＋Δｔ１）から減算して補正時間ｔ１ａを求め、この補正時間ｔ１ａで検出角度（θ１＋Δθ１）を補正するようにした。【選択図】図５
2010200435.tif 000002
【特許請求の範囲】
【請求項１】
三相交流のモータの各相を所定角度毎に反転させるスイッチング割り込み時に当該モータの回転角度を電気角で検出し、この検出角度を出力する回転角度検出センサと、この回転角度検出センサでの角度検出時の時間を取得し、この取得した時間を用いて検出角度を補正する回転角度演算手段とを有するモータ角度検出装置において、
前記回転角度演算手段は、前記回転角度検出センサでの角度検出時の第１の時間の取得時に当該第１の時間時の第１の角度も取得し、その第１の角度の中から第１の時間に含まれる遅延時間に応じて増加した増加角度を求め、この増加角度に、当該回転角度検出センサの１周期分の時間を角度で割った時間変化率を乗算して前記遅延時間を求め、この遅延時間を前記第１の時間から減算して補正時間を求め、この補正時間で前記検出角度を補正することを特徴とするモータ角度検出装置。
【請求項２】
三相交流のモータの各相を所定角度毎に反転させるスイッチング割り込み時に当該モータの回転角度を電気角で検出し、この検出角度を出力する回転角度検出センサと、この回転角度検出センサでの角度検出時の時間を取得し、この取得した時間を用いて検出角度を補正する回転角度演算手段とを有するモータ角度検出装置において、
前記回転角度演算手段は、前記回転角度検出センサでの角度検出時の第１の時間の取得時に当該第１の時間時の第１の角度も取得し、その第１の角度の中から第１の時間に含まれる遅延時間に応じて増加した増加角度を求め、また、当該回転角度検出センサの１周期を所定数で区分し、前記第１の時間から１つ前の区分の取得時間を減算すると共に、前記第１の角度から１つ前の区分の取得角度を減算し、当該取得時間の減算結果を当該取得角度の減算結果で除算した結果に前記増加角度を乗算して前記遅延時間を求め、この遅延時間を前記第１の時間から減算して補正時間を求め、この補正時間で前記検出角度を補正することを特徴とするモータ角度検出装置。
【請求項３】
前記回転角度演算手段は、前記スイッチング割り込みが前記回転角度検出センサの初回の周期でなければ、前回の周期で求めた前記補正時間で前記検出角度を補正することを特徴とする請求項１又は２に記載のモータ角度検出装置。
【請求項４】
前記回転角度演算手段は、前記増加角度が、当該増加角度が許容可能な値か否かを判断する閾値以上の場合にのみ前記補正時間を求める処理を行うことを特徴とする請求項１〜３のいずれか１項に記載のモータ角度検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、モータの回転子の回転角度をレゾルバ等の回転角度検出センサで検出した際に、その検出角度の誤差を補正して正確な角度を求めるモータ角度検出装置に関する。
【背景技術】
【０００２】
従来、レゾルバで検出されたモータ回転子の角度を補正する技術として特許文献１に記載のモータ制御装置がある。このモータ制御装置による角度の補正方法について説明する。図１は、モータ（図示せず）のＵ相、Ｖ相及びＷ相のスイッチング指令を示す。レゾルバ（図示せず）の１回転（３６０°）は、ここでは電気角では７２０°に相当するので、Ｕ相、Ｖ相及びＷ相の各相は、１８０°毎にスイッチング指令が反転される。従って、モータにおいてＵ相、Ｖ相及びＷ相の全体では、６０°毎にスイッチングが切換えられる。この６０°毎のスイッチングの時間間隔は、レゾルバに誤差がない場合、等しくなる（ただし、回転速度は一定と仮定している）。
【０００３】
そこで、Ｕ相を基準にして６０°毎の各スイッチングタイミングまでの時間を測定し、その測定した時間を用いてレゾルバの誤差を補正する。上述したようにレゾルバの１回転は、７２０°の電気角に相当するので、この７２０°の電気角を１周期とすると、この１周期中に７２０／６０で１２個のスイッチングタイミングが存在する。
【０００４】
従って、レゾルバからの角度θｂｎが６０°、１２０°、１８０°、２４０°、３００°、３６０°、・・・、６６０°、７２０°（０°）を示すまでの時間Ｔ１，Ｔ２，・・・，Ｔ１２を内蔵したタイマによって測定する。この測定した時間Ｔ１，Ｔ２，・・・，Ｔ１２を次式（１）に代入して６０°、１２０°、１８０°、２４０°、３００°、３６０°、・・・、６６０°及び７２０°（０°）の各角度における誤差Δθｎ（ｎ＝１〜１１）を演算する。
Δθｎ＝ｎ×６０°−７２０°×（Ｔｎ／Ｔ１２）  …（１）
【０００５】
次に、図２を参照して６０°の角度補正について説明する。
レゾルバの出力が直線ｋ１によって示される真の位置を示している場合、レゾルバからの角度が６０°になったタイミングｔ１でスイッチングを切換えると、スイッチング指令ＤＲＴＳＷの立下りに同期してスイッチングを切換えることができる。しかし、レゾルバからの出力が曲線ｋ２によって示されるように、真の位置からずれた位置を示す場合、レゾルバからの角度が６０°になったタイミングｔ２でスイッチングを切換えると、スイッチング指令ＤＲＴＳＷの立下りよりもΔＴだけ遅れたタイミングでスイッチングを切換えることになり、Ｕ相コイルに交流電流を流す期間が長くなってしまう。
【０００６】
そこで、スイッチング指令ＤＲＴＳＷの立下りでスイッチングを切換えるようにするためには、タイミングｔ１における曲線ｋ２上の角度θ１を求め、レゾルバからの角度がθ１になったタイミングでスイッチングを切換えるようにすればよい。
【０００７】
ここで、測定された時間Ｔ１は、０からタイミングｔ２までの時間であるので、７２０°×Ｔ１／Ｔ１２は、直線ｋ１上では６０°からずれた角度を示す。そして、直線ｋ１上でのずれ角Δθ１は、６０°−７２０°×Ｔ１／Ｔ１２を演算することにより得られる。つまり、測定した時間Ｔ１及びＴ１２と、ｎ＝１とを上式（１）に代入することにより、ずれ角Δθ１が演算される。
【０００８】
この演算されたずれ角Δθ１は、タイミングｔ１における直線ｋ１上の角度と曲線ｋ２上の角度との差にほぼ等しいので、求める角度θ１は、６０°＋Δθ１になる。従って、レゾルバからの角度が角度θ１になったタイミングでスイッチングを切換えることにより、レゾルバからの出力が誤差を含んでいてもスイッチング指令ＤＲＴＳＷの立下りに同期してスイッチングを切換えることができる。
【０００９】
同様に、直線ｋ１上の１２０°を曲線ｋ２上の角度に補正すると、２×６０°＋Δθ２となり、一般に、直線ｋ１上のｎ×６０°を曲線ｋ２上の角度に補正すると、次式（２）となる。
θｎ＝ｎ×６０°＋Δθｎ  …（２）
【００１０】
従って、レゾルバからの角度が６０°，１２０°，・・・，６６０°，７２０°（０°）になる時間Ｔ１，Ｔ２，・・・Ｔ１１，Ｔ１２を測定し、測定した時間Ｔ１，Ｔ１２；Ｔ２，Ｔ１２；・・・；Ｔ１１，Ｔ１２を上式（１）に代入して、ずれ角Δθ１，Δθ２，・・・，Δθ１１を演算する。そして、演算されたずれ角Δθ１，Δθ２，・・・，Δθ１１を上式（２）に代入して補正した角度θ１，θ２，・・・，θ１１を求める。
【００１１】
なお、直線ｋ１上の７２０°の角度は補正されないが、これは次の理由による。即ち、一般に、レゾルバの誤差（０．５次誤差及び１次誤差等）は、角度０°及び７２０°においては、真の角度に一致し、０°及び７２０°以外の角度が真の角度からずれるような誤差であるので、７２０°の角度を補正する必要がないからである。
【００１２】
従って、計測された時間Ｔ１２が直線ｋ１上の７２０°を示すものとして上式（１）を用いて角度６０°、１２０°、・・・、６６０°の各々におけるずれ角Δθ１，Δθ２，・・・，Δθ１１を演算する。また、上述した角度補正は、１つの周期（０°から７２０°）で時間Ｔ１〜Ｔ１２を実測し、その実測した時間Ｔ１〜Ｔ１２を用いて６０°毎の角度補正を行ない、次の１周期（０°から７２０°）において、補正した角度を用いてモータのスイッチング指令を切換える。
【００１３】
更に、図３を参照して角度の補正方法について説明する。一連の動作が開始されると、ステップＳ１において、ｎ＝０に設定し、その後、ステップＳ２において、ｎ＝ｎ＋１、つまり、ｎ＝１に設定する。そして、ステップＳ３において、スイッチング割り込みが発生する。その後、ステップＳ４において、レゾルバからの回転角度θｂｎ（θｂｎ１またはθｂｎ２）に基づいて、角度が６０°になる時間Ｔ１を計測する。そして、ステップＳ５において、ｎ＝１２か否かを判定し、ｎ＝１２でないとき、上記ステップＳ２〜上記ステップＳ５が繰返し実行される。即ち、時間Ｔ１〜Ｔ１２の全てを計測するまでステップＳ２〜ステップＳ５が繰返し実行される。ステップＳ５においてｎ＝１２であると判定されると、ステップＳ６において、上式（１）及び（２）により６０°毎の角度補正を行う。これにより、角度を補正する動作が終了する。
【先行技術文献】
【特許文献】
【００１４】
【特許文献１】特開２００４−２２２４４８号公報
【発明の概要】
【発明が解決しようとする課題】
【００１５】
上記の特許文献１の角度の補正方法では、レゾルバが通常、０．５次誤差及び１次誤差などの誤差を生じるので、この誤差を補正するため、スイッチング割り込み時の時間データを取得し、この時の角度との傾きから角度誤差値を算出している。この際、スイッチング割り込み時の角度を真とし、その時の時間データを取得している。このため、スイッチング割り込み時の角度を真とした際の時間データと、実際に取得された時間データとの間に時間遅延がある場合(例えばスイッチング割り込みが発生し、時間データを取得する間に割り込み優先度が高い、他の割り込みが発生した場合)、角度誤差の補正自体に誤差を含むこととなり、補正を精度良く行うことができない。そのため、正確な角度を求めることができず、制御の安定性やモータ効率に大きく影響してしまうという問題がある。
【００１６】
本発明は、このような事情に鑑みてなされたものであり、モータの回転子の回転角度を回転角度検出センサで検出する際に、その検出角度の誤差を精度良く補正することができ、これによって正確な回転角度を求めることができるモータ角度検出装置を提供することを目的とする。
【課題を解決するための手段】
【００１７】
上記目的を達成するためになされた請求項１に記載の発明は、三相交流のモータの各相を所定角度毎に反転させるスイッチング割り込み時に当該モータの回転角度を電気角で検出し、この検出角度を出力する回転角度検出センサと、この回転角度検出センサでの角度検出時の時間を取得し、この取得した時間を用いて検出角度を補正する回転角度演算手段とを有するモータ角度検出装置において、前記回転角度演算手段は、前記回転角度検出センサでの角度検出時の第１の時間の取得時に当該第１の時間時の第１の角度も取得し、その第１の角度の中から第１の時間に含まれる遅延時間に応じて増加した増加角度を求め、この増加角度に、当該回転角度検出センサの１周期分の時間を角度で割った時間変化率を乗算して前記遅延時間を求め、この遅延時間を前記第１の時間から減算して補正時間を求め、この補正時間で前記検出角度を補正することを特徴とする。
【００１８】
この構成によれば、スイッチング割り込み時の時間と、実際に取得された時間との間に遅延時間がある場合、その遅延時間を求め、この遅延時間を実際に取得された時間から減算することで補正時間を求め、この補正時間を用いて検出角度を補正すれば、正確な回転角度を求めることができる。
【００１９】
請求項２に記載の発明は、三相交流のモータの各相を所定角度毎に反転させるスイッチング割り込み時に当該モータの回転角度を電気角で検出し、この検出角度を出力する回転角度検出センサと、この回転角度検出センサでの角度検出時の時間を取得し、この取得した時間を用いて検出角度を補正する回転角度演算手段とを有するモータ角度検出装置において、前記回転角度演算手段は、前記回転角度検出センサでの角度検出時の第１の時間の取得時に当該第１の時間時の第１の角度も取得し、その第１の角度の中から第１の時間に含まれる遅延時間に応じて増加した増加角度を求め、また、当該回転角度検出センサの１周期を所定数で区分し、前記第１の時間から１つ前の区分の取得時間を減算すると共に、前記第１の角度から１つ前の区分の取得角度を減算し、当該取得時間の減算結果を当該取得角度の減算結果で除算した結果に前記増加角度を乗算して前記遅延時間を求め、この遅延時間を前記第１の時間から減算して補正時間を求め、この補正時間で前記検出角度を補正することを特徴とする。
【００２０】
この構成によれば、スイッチング割り込み時の時間と、実際に取得された時間との間に遅延時間がある場合、この遅延時間を、回転角度検出センサの１周期を所定数で区分した内の１つ前の区分の取得時間及び取得角度を用いて遅延時間を求めるようにしたので、請求項１に記載のモータ角度検出装置よりも最新の遅延時間を求めて検出角度を補正することができる。
【００２１】
請求項３に記載の発明は、請求項１又は２に記載のモータ角度検出装置において、前記回転角度演算手段は、前記スイッチング割り込みが前記回転角度検出センサの初回の周期でなければ、前回の周期で求めた前記補正時間で前記検出角度を補正することを特徴とする。
【００２２】
この構成によれば、スイッチング割り込みが回転角度検出センサの初回の周期以外は、前回の周期で求めた補正時間で検出角度を補正するようにしたので、補正時間を求める処理が不要となりその分補正が簡単となる。
【００２３】
請求項４に記載の発明は、請求項１〜３のいずれか１項に記載のモータ角度検出装置において、前記回転角度演算手段は、前記増加角度が、当該増加角度が許容可能な値か否かを判断する閾値以上の場合にのみ前記補正時間を求める処理を行うことを特徴とする。
【００２４】
この構成によれば、増加角度が閾値以上の場合にのみ補正時間を求める処理を行うので、余計な処理を行わないことにより、処理負荷の軽減を図ることができる。
【発明の効果】
【００２５】
以上説明したように本発明によれば、モータの回転子の回転角度を回転角度検出センサで検出する際に、その検出角度の誤差を精度良く補正することができ、これによって正確な回転角度を求めることができるという効果がある。
【図面の簡単な説明】
【００２６】
【図１】モータのＵ相、Ｖ相及びＷ相のスイッチング指令のタイミングチャートである。
【図２】従来のレゾルバの検出角度とその検出時間との関係を示す図である。
【図３】従来のレゾルバの検出角度の補正方法を説明するためのフローチャートである。
【図４】本発明の第１の実施形態に係るモータ制御装置の回路図である。
【図５】第１の実施形態に係る制御回路のブロック図である。
【図６】第１の実施形態のモータ角度検出装置によるレゾルバの検出角度の補正処理の説明図であり、（ａ）はレゾルバの検出角度とその検出時間との関係を示す図、（ｂ）はレゾルバの１周期分の角度と時間との関係図である。
【図７】第１の実施形態のモータ角度検出装置によるレゾルバの検出角度の補正処理を説明するためのフローチャートである。
【図８】第１の実施形態のモータ角度検出装置の角度補正時における角度データの取得処理を説明するためのフローチャートである。
【図９】第１の実施形態のモータ角度検出装置の角度補正時における時間補正処理を説明するためのフローチャートである。
【図１０】本発明の第２の実施形態に係るモータ角度検出装置において、レゾルバの検出角度とその検出時間との関係を示す図である。
【図１１】本発明の第３の実施形態に係るモータ角度検出装置におけるスイッチング時間補正処理の動作を説明するためのフローチャートである。
【発明を実施するための形態】
【００２７】
以下、本発明の実施形態を、図面を参照して説明する。但し、本明細書中の全図において相互に対応する部分には同一符号を付し、重複部分においては後述での説明を適時省略する。
【００２８】
（第１の実施形態）
第１実施形態におけるモータ制御装置の回路図を図４に、制御回路のブロック図を図５に示す。
図４に示すモータ制御装置１は、インバータ１１と、制御回路１２とから構成されている。モータ制御装置１には、二次電池からなる直流電源２と、レゾルバ３ａを有する三相交流モータ３とがそれぞれ接続されている。また、モータ制御装置１と三相交流モータ３の間には、三相交流モータ３のＶ相、Ｗ相電流を検出するための電流センサ４ａ、４ｂがそれぞれ配設されている。
【００２９】
平滑用コンデンサ１０は、直流電圧を平滑するための素子である。平滑用コンデンサ１０は、力行動作のときには、インバータ１１に供給する直流電圧を平滑し、回生動作のときには、インバータ１１の出力する直流電圧を平滑する。平滑用コンデンサ１０の一端は直流電源２の正極端子側に、他端は直流電源２の負極端子側にそれぞれ接続されている。
【００３０】
インバータ１１は、制御回路１２によって制御され、三相交流モータ３が力行状態のとき、直流電圧に基づく直流電力を交流電力に変換して、三相交流モータ３に供給する回路である。また、逆に、三相交流モータ３が回生状態のとき、三相交流モータ３の発生する交流電力を直流電力に変換して、直流電源２に出力する回路でもある。インバータ１１は、ＩＧＢＴ１１ａ〜１１ｆと、フライホイールダイオード１１ｇ〜１１ｌとから構成されている。
【００３１】
ＩＧＢＴ１１ａ〜１１ｆは、オン、オフすることで、直流電力を交流電力に変換するためのスイッチング素子である。ＩＧＢＴ１１ａ〜１１ｆは三相ブリッジ接続されている。インバータ１１の上側にある３つのＩＧＢＴ１１ａ〜１１ｃ のコレクタは平滑用コンデンサ１０の一端に、下側にある３つのＩＧＢＴ１１ｄ〜１１ｆのエミッタは平滑用コンデンサ１０の他端にそれぞれ接続されている。ＩＧＢＴ１１ａ、１１ｄの接続点、IＧＢＴ１１ｂ、１１ｅの接続点及びＩＧＢＴ１１ｃ、１１ｆの接続点は、三相交流モータ３にそれぞれ接続されている。
【００３２】
フライホイールダイオード１１ｇ〜１１ｌは、整流することで、交流電力を直流電力に変換するための素子である。フライホイールダイオード１１ｇ〜１１ｌのアノードはＩＧＢＴ１１ａ〜１１ｆのエミッタに、カソードはＩＧＢＴ１１ａ〜１１ｆのコレクタにそれぞれ接続されている。
【００３３】
制御回路１２は、車両ＥＣＵ（図略）の出力するモータトルク指令Ｔｒｑ＊、直流電圧、三相交流モータ３ の回転角度及び相電流に基づいて、インバータ１１を制御する回路である。
【００３４】
図５に示すように、制御回路１２は、車両ＥＣＵの出力するモータトルク指令Ｔｒｑ＊、直流電圧、三相交流モータ３ の相電流及び回転角度信号に基づいて、インバータ１１を制御する。制御回路１２は、インバータ入力電圧検出手段１２ａと、モータ回転角度検出手段１２ｂと、モータ回転角度補正手段１２c、モータ回転数演算手段１２dと、ｄｑ軸電流指令演算手段１２eと、モータ電流検出手段１２ｆと、ｄｑ軸電流演算手段１２ｇと、ｄｑ軸電圧指令演算手段１２ｈと、三相電圧指令演算手段１２ｉと、ＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）信号発生手段１２ｊと、ゲートドライバ１２ｋとから構成されている。
【００３５】
インバータ入力電圧検出手段１２ａは、直流電源２(若しくは平滑用コンデンサ１０)の両端に接続され、直流電圧に基づいてインバータ入力電圧Ｖｉｎｖを検出する。
【００３６】
モータ回転角度検出手段１２ｂは、レゾルバ３ａに接続され、レゾルバ３ａの出力する三相交流モータ３の回転角度信号に基づいて、三相交流モータ３の回転角度θを算出する。
【００３７】
モータ回転角度補正手段１２ｃは、モータ回転角度検出手段１２ｂの算出した回転角度θを後述する補正手段により補正された補正後回転角度θ’を算出する。
【００３８】
モータ回転数演算手段１２ｄは、モータ回転角度検出手段１２ｃの算出した三相交流モータ３の補正後回転角度θ’に基づいて、三相交流モータ３のモータ回転数Ｎｍｏｔを算出する。
【００３９】
ｄｑ軸電流指令演算手段１２ｅは、インバータ入力電圧検出手段１２ａの算出したインバータ入力電圧Ｖｉｎｖ、及び、モータ回転数演算手段１２ｄの算出したモータ回転数Ｎｍｏｔに基づいて車両ＥＣＵの出力するモータトルク指令Ｔｒｑ＊を演算処理に適した値に変換し、さらに二相変換してｄ軸及びｑ軸電流指令Ｉｄ＊、Ｉｑ＊を算出する。
【００４０】
モータ電流検出手段１２ｆは、電流センサ４ａ、４ｂに接続され、電流センサ４ａ、４ｂの出力する三相交流モータ３のＶ相、Ｗ相電流信号に基づいて、三相交流モータ３のＶ相及びＷ相電流iｖ、iｗを算出する。
【００４１】
ｄｑ軸電流演算手段１２ｇは、モータ電流検出手段１２ｆの算出した三相交流モータ３のＶ相及びＷ相電流iｖ、iｗ からＵ相電流を算出し、さらにモータ回転角度補正手段１２ｃの算出した三相交流モータ３の補正後回転角度θ’に基づいて三相二相変換して、ｄ軸及びｑ軸電流Ｉｄ、Ｉｑを算出する。
【００４２】
ｄｑ軸電圧指令演算手段１２ｈは、ｄｑ軸電流指令演算手段１２ｅの算出したｄ軸及びｑ軸電流指令Ｉｄ＊、Ｉｑ＊及びｄｑ軸電流演算手段１２ｇの算出したｄ軸及びｑ軸電流Ｉｄ、Ｉｑに基づいて、ｄ軸電流指令Ｉｄ＊とｄ軸電流Ｉｄの偏差及びｑ軸電流指令Ｉｑ＊とｑ軸電流Ｉｑの偏差の少なくとも１つを算出し、ｄ軸及びｑ軸電圧指令Ｖｄ＊、Ｖｑ＊を算出する。
【００４３】
三相電圧指令演算手段１２ｉは、ｄｑ軸電圧指令演算手段１２ｈの算出したｄ軸及びｑ軸電圧指令Ｖｄ＊、Ｖｑ＊をモータ回転角度補正手段１２ｃの算出した三相交流モータ３の補正後回転角度θ’に基づいて二相三相変換して、三相電圧指令ｖｕ＊、ｖｖ＊ 、ｖｗ＊を算出する。
【００４４】
ＰＷＭ信号発生手段１２ｊは、三相電圧指令演算手段１２ｉの算出した三相電圧指令ｖｕ＊、ｖｖ＊ 、ｖｗ＊に基づいて、ＩＧＢＴ１１ａ〜１１ｆをオン、オフさせるＰＷＭ信号ＶＵ、ＶＶ、ＶＷを出力する。
【００４５】
ゲートドライバ１２ｋは、ＰＷＭ信号発生手段１２ｊの出力するＰＷＭ信号ＶＵ、ＶＶ、ＶＷに基づいて、ＩＧＢＴ１１ａ〜１１ｆにゲート電圧ＵＵ、ＵＬ、ＶＵ、ＶＬ、ＷＵ、ＷＬを出力する。
【００４６】
次にモータ回転角度補正手段について具体的に説明する。モータ回転角度補正手段１２ｃは、レゾルバ３ａがスイッチング割り込み時に回転子の回転角度を検出する際の誤差を補正する場合に、当該スイッチング割り込み時の時間と、実際に取得された時間との間に遅延時間がある場合、その遅延時間を求め、この遅延時間を実際に取得された時間から減算することで補正時間を求め、この補正時間で検出角度を補正して、正確な回転角度を出力するものである。
【００４７】
モータ回転角度補正手段１２ｃが行う時間データの補正処理を説明する。但し、モータ３及びレゾルバ３ａは、「背景技術」で説明したと同様であるとする。即ち、図１に示したように、レゾルバ３ａの１回転（３６０°）は電気角では７２０°に相当し、モータ３のＵ相、Ｖ相及びＷ相の各相は、１８０°毎にスイッチング指令が反転されるものとする。従って、モータ３においてＵ相、Ｖ相及びＷ相の全体では、６０°毎にスイッチングで切換えられ、この６０°毎のスイッチングの時間間隔Ｎは、レゾルバ３ａに誤差がない場合等しくなる。また、レゾルバ３ａの１回転は、７２０°の電気角に相当するので、この７２０°の電気角を１周期とすると、この１周期中に７２０／６０で１２個のスイッチングタイミングＮが存在するものとする。
【００４８】
このレゾルバ３ａでは、図６（ａ）に示すように、レゾルバ３ａでの検出角度［ｄｅｇ］が直線ｋ１の真の位置を示している場合、レゾルバ３ａの検出角度が６０°になったタイミングの時間ｔ１でスイッチングをして切換えると、モータ３の各相のスイッチングを切換えることができる。しかし、レゾルバ３ａでの検出角度（レゾルバ値）が曲線ｋ２のように真の位置ｋ１からずれた位置を示す場合、レゾルバ３ａの検出角度６０°よりも小さい角度θ１がスイッチングの切換え時間ｔ１となる。
【００４９】
本実施形態では、モータ回転角度補正手段１２ｃがスイッチング割り込み時に当該割り込み時の時間データを取得する際に、角度データも取得するようにした。従って、図６に示すように、実際の取得までに遅延時間Δｔ１があった場合、実際に取得される時間データはｔ１＋Δｔ１、角度データはθ１＋Δθ１となる。つまり、モータ回転角度補正手段１２ｃは、その取得後、（θ１＋Δθ１）−θ１の演算によって、遅延時間Δｔ１により増加した角度Δθ１を求めることができる。
【００５０】
また、モータ回転角度補正手段１２ｃは、レゾルバ３ａの１周期分の時間変化率Ｃ１を、図６（ｂ）に示す１周期分の時間Ｔ１２を１周期分の角度θ１２で割って求めることができる。つまり、Ｃ１＝Ｔ１２／θ１２となる。
【００５１】
そこで、モータ回転角度補正手段１２ｃは、次式（３）から遅延時間Δｔ１を求める。
Δｔ１＝（Ｔ１２／θ１２）×｛（θ１＋Δθ１）−θ１｝  …（３）
【００５２】
次に、モータ回転角度補正手段１２ｃは、その遅延時間Δｔ１を、実際に取得された時間データｔ１＋Δｔ１から減算することで補正後の時間データｔ１ａを求める。つまり、補正時間ｔ１ａ＝（ｔ１＋Δｔ１）−Δｔ１となる。
【００５３】
次に、このようにモータ回転角度補正手段１２ｃがスイッチング割り込み時の時間補正を行った後、回転角度を補正する処理を、図７に示すフローチャートを参照して説明する。
【００５４】
まず、ステップＳ１１において、スイッチングタイミングＮ＝０に設定し、その後、ステップＳ１２において、Ｎ＝Ｎ＋１、つまり、Ｎ＝１に設定する。そして、ステップＳ１３において、スイッチング割り込みが発生する。ステップＳ１４において、そのスイッチング割り込み時の時間データを取得し、また、ステップＳ１５において、同スイッチング割り込み時のレゾルバ３ａで検出された角度データを取得する。
【００５５】
即ち、図８に示すステップＳ２１において、同スイッチング割り込み時の角度データ（θ１＋Δθ１）を取得する。次に、ステップＳ２２において、角度データの実際の取得までの遅延時間Δｔ１により増加した角度Δθ１を、（θ１＋Δθ１）−θ１の演算により求める。ステップＳ２３において、その増加角度Δθ１が閾値θｔｈ以内か否かを判断する。但し、閾値θｔｈとは、増加角度Δθ１が許容可能な値か否かを判断するための値であり、閾値θｔｈ以内の場合に増加角度Δθ１が許容可能と判断される。
【００５６】
この判断結果がＹｅｓであれば、ステップＳ２４において、時間補正フラグをＯＦＦ（オフ）とする。一方、ステップＳ１３の判断結果がＮｏの場合は、ステップＳ２５において、時間補正フラグをＯＮとする。
【００５７】
次に、図７のステップＳ１６において、スイッチング割り込み時の時間データの補正処理を行う。これは、図９のステップＳ３１において、時間補正フラグがＯＮか否かを判断する。この判断結果がＮｏ、即ちＯＮでなければ時間補正フラグがＯＦＦであり増加角度Δθ１が許容可能な値なので、ステップＳ３２に示すように無処理とする。この場合、上記ステップＳ１４で取得された時間データが、後述で角度誤差値を算出するための時間として用いられる。
【００５８】
一方、上記ステップＳ３１で時間補正フラグがＯＮで判断結果がＹｅｓの場合は、ステップＳ３３において、上式（３）から遅延時間Δｔ１を求める。そして、ステップＳ３４において、上記で実際に取得された時間データｔ１＋Δｔ１から遅延時間Δｔ１を減算することで補正時間データｔ１ａを求める。
【００５９】
そして、図７に示すステップＳ１７において、Ｎ＝１２か否かを判定し、Ｎ＝１２でなければ、上記ステップＳ１２〜Ｓ１６が繰返し実行される。即ち、時間データｔ１〜ｔ１２の全てを取得して必要に応じて補正処理するまでステップＳ１２〜Ｓ１６が繰返し実行される。
【００６０】
ステップＳ１７においてＮ＝１２であると判定されると、ステップＳ１８において、６０°毎に、そのままの時間データ又は補正された時間データを用いて検出角度を補正する。つまり、ステップＳ１８においてステップＳ１７までで求められたスイッチング時間を上式（１）に代入し、誤差Δθｎを求め、上式（２）に誤差Δθｎを代入することで、θn（θ’）を算出する。これによって正確な回転角度を求めることができる。
【００６１】
このような第１の実施形態のモータ回転角度補正手段１２ｃによれば、三相交流のモータ３の各相を所定角度毎に反転させるスイッチング割り込み時に当該モータ３の回転角度を電気角で検出し、この検出角度を出力するレゾルバ３ａと、このレゾルバ３ａでの角度検出時の時間を取得し、この取得した時間を用いて検出角度を補正するモータ回転角度補正手段１２ｃとを有する。
【００６２】
本実施形態の特徴は、モータ回転角度補正手段１２ｃが、レゾルバ３ａでの角度検出時の時間（ｔ１＋Δｔ１）の取得時に当該時間時の角度（θ１＋Δθ１）も取得し、この取得された角度（θ１＋Δθ１）の中から当該取得された時間（ｔ１＋Δｔ１）に含まれる遅延時間Δｔ１に応じて増加した増加角度Δθ１を求め、この増加角度Δθ１に、レゾルバ１２の１周期分の時間Ｔ１２を角度θ１２で割った時間変化率Ｃ１を乗算して遅延時間Δｔ１を求め、この遅延時間Δｔ１を上記取得された時間（ｔ１＋Δｔ１）から減算して補正時間ｔ１ａを求め、この補正時間ｔ１ａで検出角度（θ１＋Δθ１）を補正するようにした。
【００６３】
つまり、実際に取得した時間（ｔ１＋Δｔ１）から、この中に含まれる遅延時間Δｔ１を減算して補正時間ｔ１ａを求め、この補正時間ｔ１ａで検出角度（θ１＋Δθ１）を補正するようにしたので、正確な回転角度θ１を求めることができる。
【００６４】
（第２の実施形態）
次に、本発明の第２の実施形態に係るモータ角度検出装置について説明する。但し、第２の実施形態のモータ角度検出装置は、図５に示した第１の実施形態のモータ角度検出装置１２Ａと同構成であり、異なる点は、モータ回転角度補正手段１２ｃが行う補正時間ｔ１ａの求め方である。
【００６５】
この補正時間ｔ１ａの求め方について図１０を参照して説明する。第２の実施形態においても、モータ回転角度補正手段１２ｃがスイッチング割り込み時に当該割り込み時の時間データを取得する際に、角度データも取得する。従って、上述した通り（θ１＋Δθ１）−θ１の演算によって増加角度Δθ１を求める。
【００６６】
また、モータ回転角度補正手段１２ｃは、レゾルバ３ａの１周期を１２区分した内の１つ前の区分の取得時間ｔ０及び取得角度θ０を用いて時間変化率Ｃ２を求める。これは、実際に取得した時間（ｔ１＋Δｔ１）から１つ前の区間の取得時間ｔ０を減算し、また、その時間取得時に実際に取得した角度（θ１＋Δθ１）から１つ前の区間の取得角度θ０を減算し、時間の減算結果（ｔ１＋Δｔ１）−ｔ０を、角度の減算結果（θ１＋Δθ１）−θ０で割って時間変化率Ｃ２求めることができる。
【００６７】
そこで、モータ回転角度補正手段１２ｃは、次式（４）から遅延時間Δｔ１を求める。
Δｔ１＝｛（ｔ１＋Δｔ１）−ｔ０｝／｛（θ１＋Δθ１）−θ０｝×｛（θ１＋Δθ１）−θ１｝  …（４）
【００６８】
次に、モータ回転角度補正手段１２ｃは、その遅延時間Δｔ１を、実際に取得された時間データｔ１＋Δｔ１から減算することで補正後の時間データｔ１ａを求める。つまり、ｔ１ａ＝（ｔ１＋Δｔ１）−Δｔ１となる。
【００６９】
次に、このようにモータ回転角度補正手段１２ｃがスイッチング割り込み時の時間補正を行った後、回転角度を補正する処理を説明する。但し、第２の実施形態の処理が第１の実施形態の処理と異なる点は、図７〜図９の内、図９に示したステップＳ３３の処理だけである。即ち、そのステップＳ３３の処理を時間補正式（４）から遅延時間Δｔ１を求めるようにした。そして、ステップＳ３４において、上記で実際に取得された時間データ（ｔ１＋Δｔ１）から遅延時間Δｔ１を減算することで補正時間データｔ１ａを求める。
【００７０】
そして、図７に示すステップＳ１７においてＮ＝１２であると判定されると、ステップＳ１８において、６０°毎に、許容範囲内の時間データ又は補正時間データｔ１ａを用いて検出角度を補正する。
【００７１】
このような第２の実施形態のモータ角度検出装置の特徴は、モータ回転角度補正手段１２ｃが、レゾルバ３ａでの角度検出時の時間（ｔ１＋Δｔ１）の取得時に当該時間時の角度（θ１＋Δθ１）も取得し、この取得された角度（θ１＋Δθ１）の中から当該取得された時間（ｔ１＋Δｔ１）に含まれる遅延時間Δｔ１に応じて増加した増加角度Δθ１を求める。また、レゾルバ３ａの１周期を１２で区分し、当該取得された時間（ｔ１＋Δｔ１）から１つ前の区分の取得時間ｔ０を減算すると共に、前記取得された角度（θ１＋Δθ１）から１つ前の区分の取得角度θ０を減算し、当該取得時間の減算結果を当該取得角度の減算結果で除算した結果｛（ｔ１＋Δｔ１）−ｔ０｝／｛（θ１＋Δθ１）−θ０｝に、増加角度｛（θ１＋Δθ１）−θ１｝を乗算して遅延時間Δｔ１を求める。この遅延時間Δｔ１を、取得された時間から減算して補正時間ｔ１ａを求め、この補正時間ｔ１ａで検出角度（θ１＋Δθ１）を補正するようにした。
【００７２】
つまり、スイッチング割り込み時の時間と、実際に取得された時間との間に遅延時間Δｔ１がある場合、この遅延時間Δｔ１を、レゾルバ３ａの１周期を１２で区分した内の１つ前の区分の取得時間ｔ０及び取得角度θ０を用いて遅延時間Δｔ１を求めるようにしたので、第１の実施形態よりも早く遅延時間Δｔ１を求めて検出角度を補正することができる。
【００７３】
（第３の実施形態）
次に、本発明の第３の実施形態に係るモータ角度検出装置について説明する。但し、第３の実施形態のモータ角度検出装置は、上述した第１又は第２の実施形態のモータ角度検出装置と同構成である。異なる点は、モータ回転角度補正手段１２ｃが行う図７に示したステップＳ１６のスイッチング時間補正処理であり、この処理を図１１に示すフローチャートを参照して説明する。
【００７４】
ステップＳ３１において、時間補正フラグがＯＮの場合に、ステップＳ４１でスイッチング時間補正処理が初回時か否かを判断する。初回時の場合は、ステップＳ４２において、上述した時間補正式（３）又は（４）によって補正値である遅延時間Δｔ１を求め、ステップＳ３４において補正時間データｔ１ａを求める。
【００７５】
一方、ステップＳ４１で初回時でないと判断された場合は、ステップＳ４３において、レゾルバ３ａの前回の周期で求められた補正時間データｔ１ａを使用する。そして、図７に示すステップＳ１７においてＮ＝１２であると判定されると、ステップＳ１８において、６０°毎に、許容範囲内の時間データ又は補正時間データｔ１ａを用いて検出角度を補正する。
【００７６】
このような第３の実施形態のモータ角度検出装置の特徴は、モータ回転角度補正手段１２ｃが、スイッチング割り込みがレゾルバ３ａの初回の周期でなければ、前回の周期で求めた補正時間ｔ１ａで検出角度を補正するようにした。
【００７７】
これによって、スイッチング割り込みがレゾルバ３ａの初回の周期以外は、前回の周期で求めた補正時間ｔ１ａで検出角度を補正するようにしたので、補正時間ｔ１ａを求める処理が不要となってその分補正が簡単となる。
【００７８】
また、上記の第１〜第３の実施形態においては、モータ回転角度補正手段１２ｃが、増加角度Δθ１が閾値θｔｈ以上の場合にのみ補正時間ｔ１ａを求める処理を行うようにした。従って、増加角度Δθ１が閾値θｔｈ以上の場合にのみ補正時間を求める処理を行うので、余計な処理を行わないことにより、処理負荷の軽減を図ることができる。
【符号の説明】
【００７９】
１２Ａ  モータ角度検出装置
３  モータ
３ａ  レゾルバ
１２ｃ  モータ回転角度補正手段
【図１】
2010200435.tif 000003
【図２】
2010200435.tif 000004
【図３】
2010200435.tif 000005
【図４】
2010200435.tif 000006
【図５】
2010200435.tif 000007
【図６】
2010200435.tif 000008
【図７】
2010200435.tif 000009
【図８】
2010200435.tif 000010
【図９】
2010200435.tif 000011
【図１０】
2010200435.tif 000012
【図１１】
2010200435.tif 000013