(57)【要約】【課題】３相の位置検出センサの位置検出信号の異常を検出することが可能であり、異常発生後も、３相中の２相の位置検出信号が正常な場合に、継続して回転角度位置の計算を正確に行うことが可能な回転角度位置算出装置を提供する。【解決手段】３相のレゾルバ信号のサンプリング値ａ、ｂ、ｃを取得し、取得したサンプリング値ａ、ｂ、ｃに基づいて、式（３）の第２式〜第４式により、Ａ相、Ｂ相、Ｃ相の各相に対する回転角度位置を算出する。そして、これら算出した回転角度位置に基づき、各相のサンプリング値の異常を検出すると共に、１相のサンプリング値のみに異常が検出されたときは、残り２相のサンプリング値で回転角度位置の算出を行い、２相以上のサンプリング信号の異常が検出されたときは、ＲＤＣ２０の動作を停止する。また、正常な相のサンプリング値に基づき第２式〜第４式で算出した回転角度位置の平均値を回転角度位置θとして算出する。【選択図】図１
2008196937.tif 000002
【特許請求の範囲】
【請求項１】
回転子の回転角度に応じて変化する位相の異なる３つの位置検出信号を出力する３相の位置検出センサから前記位置検出信号を入力し、入力した位置検出信号に基づいて前記回転子の回転角度位置を算出する回転角度位置算出装置であって、
前記３つの位置検出信号のそれぞれについて、サンプリング値を取得するサンプリング値取得手段と、
前記取得したサンプリング値に基づいて、前記回転子の回転角度位置を算出する回転角度位置算出手段と、
前記取得したサンプリング値に基づいて、前記３つの位置検出信号の異常を検出する異常検出手段と、を備えることを特徴とする回転角度位置算出装置。
【請求項２】
前記３相の位置検出センサは、３相のレゾルバであることを特徴とする請求項１記載の回転角度位置算出装置。
【請求項３】
前記異常検出手段は、前記位相の異なる３つの位置検出信号のサンプリング値に基づいて、前記位置検出センサの相毎に、少なくとも２通りの算出方法で回転角度位置を算出し、当該算出した回転角度位置に基づいて、前記３つの位置検出信号の異常を検出することを特徴とする請求項１又は請求項２記載の回転角度位置算出装置。
【請求項４】
前記位置検出センサの３つの相をＡ相、Ｂ相、Ｃ相とし、Ａ相、Ｂ相、Ｃ相の各相に対応する位置検出信号のサンプリング値をそれぞれａ、ｂ、ｃとし、
前記異常検出手段は、前記サンプリング値ａ及びｂ、前記サンプリング値ａ及びｃ、並びに前記サンプリング値ｂ及びｃの３つの組み合わせのうち少なくとも２つの組み合わせに基づいて、当該組み合わせ毎に異なる算出方法を用いて、前記位置検出センサの相毎に、少なくとも２つの回転角度位置を算出し、当該算出した各相の回転角度位置に基づき、前記位相の異なる３つの位置検出信号の異常を検出することを特徴とする請求項３記載の回転角度位置算出装置。
【請求項５】
前記異常検出手段は、前記各相に対する前記回転角度位置同士の差分値に基づき、前記位相の異なる３つの位置検出信号の異常を検出することを特徴とする請求項３又は請求項４記載の回転角度位置算出装置。
【請求項６】
前記回転角度位置算出手段は、前記３つの位置検出信号のうち、前記異常検出手段によって異常が検出された位置検出信号以外の位置検出信号の各相に対する、当該異常の検出に用いた前記回転角度位置の平均値を、前記回転子の回転角度位置として算出することを特徴とする請求項３乃至請求項５のいずれか１項に記載の回転角度位置算出装置。
【請求項７】
前記回転角度位置算出手段は、前記異常検出手段によって、前記３つの位置検出信号のうちいずれか１つに異常が検出されたときに、当該異常の検出された位置検出信号の相を除く、残り２つの相の位置検出信号に対するサンプリング値に基づき回転角度位置を算出することを特徴とする請求項１乃至請求項６のいずれか１項に記載の回転角度位置算出装置。
【請求項８】
前記異常検出手段は、異常が検出されたときに、当該異常の情報を含む異常検出フラグを出力することを特徴とする請求項１乃至請求項７のいずれか１項に記載の回転角度位置算出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、回転角度位置算出装置の有する３相の位置検出センサの出力信号の異常を検出する装置に関する。
【背景技術】
【０００２】
回転子の回転角度を検出する位置検出センサとしては、例えば、レゾルバが用いられている。レゾルバは、モータ等の回転軸に回転自在に取り付けられ、ロータとステータの間のリラクタンスがロータの位置により変化し、その変化に応じた電圧のレゾルバ信号を出力する。レゾルバからのレゾルバ信号はアナログであるため、これをディジタル信号に変換するレゾルバ用ディジタル変換器（ＲＤＣ：Resolver Digital Converter）が用意されている。
【０００３】
レゾルバには、位相が１２０°異なる３つのレゾルバ信号を出力する３相のレゾルバがある。３相のレゾルバを用いて回転角度位置を算出する装置としては、例えば、特許文献１記載の技術が知られている。特許文献１記載の技術では、３相／２相変換器で３相信号を２相信号に変換し、変換された２つのレゾルバ信号に基づいて回転軸の回転角度位置を算出する。
【特許文献１】特開２００４−２７１２８４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、例えば、従来のレゾルバ用ディジタル変換器では、３相のレゾルバの３相の信号出力線のいずれかが断線するなどして、レゾルバの出力信号に異常が発生すると、それ以降は、回転角度位置の計算を正確に行うことができず、改善が望まれていた。
そこで、本発明は、このような従来の技術の有する未解決の課題に着目してなされたものであって、３相の位置検出センサの位置検出信号の異常を検出することが可能であり、異常発生後も、３相中の２相の位置検出信号が正常な場合に、継続して回転角度位置の計算を正確に行うことが可能な回転角度位置算出装置を提供することを目的としている。
【課題を解決するための手段】
【０００５】
〔発明１〕  上記目的を達成するために、発明１の回転角度位置算出装置は、回転子の回転角度に応じて変化する位相の異なる３つの位置検出信号を出力する３相の位置検出センサから前記位置検出信号を入力し、入力した位置検出信号に基づいて前記回転子の回転角度位置を算出する回転角度位置算出装置であって、前記３つの位置検出信号のそれぞれについて、サンプリング値を取得するサンプリング値取得手段と、前記取得したサンプリング値に基づいて、前記回転子の回転角度位置を算出する回転角度位置算出手段と、前記取得したサンプリング値に基づいて、前記３つの位置検出信号の異常を検出する異常検出手段と、を備えることを特徴とする。
【０００６】
このような構成であれば、サンプリング値取得手段によって、３相の位置検出センサから出力される、位相の異なる３つの位置検出信号について、サンプリング値を取得することが可能であり、回転角度位置算出手段によって、前記取得したサンプリング値に基づいて、前記回転子の回転角度位置を算出することが可能であり、異常検出手段によって、前記取得したサンプリング値に基づいて、前記３つの位置検出信号の異常を検出することが可能である。
【０００７】
〔発明２〕  更に、発明２の回転角度位置算出装置は、発明１の回転角度位置算出装置において、前記３相の位置検出センサは、３相のレゾルバであることを特徴とする。
このような構成であれば、前記サンプリング値取得手段によって、３相のレゾルバから出力される、位相の異なる３つの位置検出信号について、サンプリング値を取得することが可能である。
【０００８】
〔発明３〕  更に、発明３の回転角度位置算出装置は、発明１又は２の回転角度位置算出装置において、前記異常検出手段は、前記位相の異なる３つの位置検出信号のサンプリング値に基づいて、前記位置検出センサの相毎に、少なくとも２通りの算出方法で回転角度位置を算出し、当該算出した回転角度位置に基づいて、前記３つの位置検出信号の異常を検出することを特徴とする。
このような構成であれば、異常検出手段によって、前記位相の異なる３つの位置検出信号のサンプリング値に基づいて、前記位置検出センサの相毎に、少なくとも２通りの算出方法で回転角度位置を算出し、当該算出した回転角度位置に基づいて、前記３つの位置検出信号の異常を検出することが可能である。
【０００９】
〔発明４〕  更に、発明４の回転角度位置算出装置は、発明３の回転角度位置算出装置において、前記位置検出センサの３つの相をＡ相、Ｂ相、Ｃ相とし、Ａ相、Ｂ相、Ｃ相の各相に対応する位置検出信号のサンプリング値をそれぞれａ、ｂ、ｃとし、
前記異常検出手段は、前記サンプリング値ａ及びｂ、前記サンプリング値ａ及びｃ、並びに前記サンプリング値ｂ及びｃの３つの組み合わせのうち少なくとも２つの組み合わせに基づいて、当該組み合わせ毎に異なる算出方法を用いて、前記位置検出センサの相毎に、少なくとも２つの回転角度位置を算出し、当該算出した各相の回転角度位置に基づき、前記位相の異なる３つの位置検出信号の異常を検出することを特徴とする。
【００１０】
このような構成であれば、サンプリング値取得手段によって、Ａ相、Ｂ相、Ｃ相の各相に対応するサンプリング値ａ、ｂ、ｃを取得することが可能であり、異常検出手段によって、前記サンプリング値ａ及びｂ、前記サンプリング値ａ及びｃ、並びに前記サンプリング値ｂ及びｃの３つの組み合わせのうち少なくとも２つの組み合わせに基づいて、当該組み合わせ毎に異なる算出方法を用いて、前記位置検出センサの相毎に、少なくとも２つの回転角度位置を算出し、当該算出した各相の回転角度位置に基づき、前記位相の異なる３つの位置検出信号の異常を検出することが可能である。
【００１１】
〔発明５〕  更に、発明５の回転角度位置算出装置は、発明３又は４の回転角度位置算出装置において、前記異常検出手段は、前記各相に対する前記回転角度位置同士の差分値に基づき、前記位相の異なる３つの位置検出信号の異常を検出することを特徴とする。
このような構成であれば、前記異常検出手段によって、前記各相に対する前記回転角度位置同士の差分値に基づき、前記位相の異なる３つの位置検出信号の異常を検出することが可能である。
【００１２】
〔発明６〕  更に、発明６の回転角度位置算出装置は、発明３乃至５のいずれか１つの回転角度位置算出装置において、前記回転角度位置算出手段は、前記３つの位置検出信号のうち、前記異常検出手段によって異常が検出された位置検出信号以外の位置検出信号の各相に対する、当該異常の検出に用いた前記回転角度位置の平均値を、前記回転子の回転角度位置として算出することを特徴とする。
このような構成であれば、回転角度位置算出手段によって、前記３つの位置検出信号のうち、前記異常検出手段によって異常が検出された位置検出信号以外の位置検出信号の各相に対する、当該異常の検出に用いた前記回転角度位置の平均値を、前記回転角度位置として算出することが可能である。
【００１３】
〔発明７〕  更に、発明７の回転角度位置算出装置は、発明１乃至６のいずれか１つの回転角度位置算出装置において、前記回転角度位置算出手段は、前記異常検出手段によって、前記３つの位置検出信号のうちいずれか１つに異常が検出されたときに、当該異常の検出された位置検出信号の相を除く、残り２つの相の位置検出信号に対するサンプリング値に基づき回転角度位置を算出することを特徴とする。
このような構成であれば、回転角度位置算出手段によって、前記異常検出手段によって、前記３つの位置検出信号のうちいずれか１つに異常が検出されたときに、当該異常の検出された位置検出信号の相を除く、残り２つの相の位置検出信号に対するサンプリング値に基づき回転角度位置を算出することが可能である。
【００１４】
〔発明８〕  更に、発明８の回転角度位置算出装置は、発明１乃至７のいずれか１つの回転角度位置算出装置において、前記異常検出手段は、異常が検出されたときに、当該異常の情報を含む異常検出フラグを出力することを特徴とする。
このような構成であれば、異常検出手段によって、異常が検出されたときに、当該異常の情報を含む異常検出フラグを出力することが可能である。
【発明の効果】
【００１５】
以上説明したように、発明１の回転角度位置算出装置によれば、３相の位置検出センサから出力される３つの位置検出信号の異常を検出することができるので、回転角度位置の信頼性を高めることができるという効果が得られる。
更に、発明２の回転角度位置算出装置によれば、位置検出センサが３相のレゾルバである場合の、回転角度位置の信頼性を高めることができるという効果が得られる。
【００１６】
更に、発明３の回転角度位置算出装置によれば、各相毎に、少なくとも２通りの算出方法で回転角度位置を算出し、当該算出した回転角度位置に基づいて異常を検出するようにしたので、３相のうちいずれの相の位置検出信号に異常が発生しているのかを、容易に検出することができるという効果が得られる。
更に、発明４の回転角度位置算出装置によれば、各相の位置検出信号の異常を、容易且つ正確に検出することができるという効果が得られる。
【００１７】
更に、発明５の回転角度位置算出装置によれば、例えば、２つの相の回転角度位置の差分値が所定の誤差以上である場合に、異常を検出するなどノイズやＡ／Ｄ変換による誤差を考慮した、より正確な異常検出を行うことができるという効果が得られる。
更に、発明６の回転角度位置算出装置によれば、各算出方法で算出した正常な回転角度位置の平均値を、最終的な回転子の回転角度位置として算出するようにしたので、より高精度な回転角度位置を算出することができるという効果が得られる。
【００１８】
更に、発明７の回転角度位置算出装置によれば、位置検出センサの３つの相のうち１つの相の位置検出信号に異常があっても、回転角度位置の算出処理を止めずに継続して行うことができるという効果が得られる。
更に、発明８の回転角度位置算出装置によれば、位置検出信号に異常があったときに、例えば、異常の発生した相の情報を含む異常検出フラグを出力することができるので、出力先の外部装置等において、異常の発生を知ることができるという効果が得られる。
【発明を実施するための最良の形態】
【００１９】
以下、本発明の実施の形態を図面に基づき説明する。図１〜図４は、本発明に係る回転角度位置算出装置の実施の形態を示す図である。
まず、本発明に係る回転角度位置算出装置の構成を図１に基づき説明する。図１は、本発明に係る回転角度位置算出装置１００の構成を示すブロック図である。
回転角度位置算出装置１００は、図１に示すように、モータ等の回転軸に回転自在に取り付けられた３相のレゾルバ１０と、レゾルバ１０からの位置検出信号であるレゾルバ信号に基づいて回転軸の回転角度位置を算出するＲＤＣ２０とを有して構成されている。
【００２０】
レゾルバ１０は、円筒状のステータと、回転軸を把持してステータ内に回転自在に配設されたロータとで構成されており、ロータとステータとの間のリラクタンスがロータの位置により変化し、ロータの１回転につきリラクタンス変化の基本波成分が１周期となるように構成されている。すなわち、ロータの内径中心をステータの内径中心と一致させ、ロータの外形中心をその内径中心から一定の偏心量だけ偏心させるようにしてロータの肉厚を変化させてあり、これによってリラクタンスがロータの位置により変化するようになっている。また、レゾルバ１０は、ステータの外周に沿って１２０°の間隔で、Ａ相、Ｂ相、Ｃ相を構成するステータコイルが配設されている。このため、レゾルバ１０は、回転軸の回転角度に応じて変化するレゾルバ信号として、各隣り合う２つの相の位相が１２０°ずつ異なる３相の信号（位置検出信号）を出力する。
【００２１】
更に、図２に基づき、ＲＤＣ２０の詳細な構成を説明する。
ここで、図２は、ＲＤＣ２０の詳細な構成を示すブロック図である。
ＲＤＣ２０は、図２に示すように、レゾルバ１０に励磁信号sinωｔを出力する励磁信号発生器１１と、レゾルバ１０からの、３相のアナログのレゾルバ信号cosθ、cos(θ-2π/3)、cos(θ-4π/3)を、ディジタルの信号に変換するＡ／Ｄコンバータ１２とを有して構成されている。
【００２２】
Ａ／Ｄコンバータ１２は、励磁信号sinωｔに同期したタイミングでレゾルバ信号cosθ、cos(θ-2π/3)、cos(θ-4π/3)を同時にサンプリングし、デジタルデータａ、ｂ、ｃに変換する。
ＲＤＣ２０は、更に、レゾルバ信号の異常を検出する異常検出部１３と、回転角度位置θを算出する回転角度位置算出部１４とを有して構成されている。
【００２３】
異常検出部１３は、レゾルバ１０のＡ相、Ｂ相、Ｃ相の各相のレゾルバ信号のサンプリング値である、デジタルデータａ、ｂ、ｃに基づき、レゾルバ１０のＡ相、Ｂ相、Ｃ相の各相毎に、少なくとも２通りの算出方法で回転角度位置を算出し、当該算出した回転角度位置に基づき、各相のレゾルバ信号に異常が発生しているか否かを検出する。
具体的に、異常検出部１３は、Ａ相、Ｂ相、Ｃ相の各相毎に、サンプリング値ａ、ｂ、ｃを用いて回転角度位置を算出する第１式を、サンプリング値ａ、ｂ、ｃの数学的関係を用いて変形した第２〜第４式を用いて、前記各相の回転角度位置を算出する。
【００２４】
ここで、第２式は、第１式を、サンプリング値ａ及びｂの数学的関係に基づき、サンプリング値ｃを含まないように変形した算出式である。また、第３式は、第１式を、サンプリング値ａ及びｃの数学的関係に基づき、サンプリング値ｂを含まないように変形した算出式である。また、第４式は、第１式を、サンプリング値ｂ及びｃの数学的関係に基づき、サンプリング値ａを含まないように変形した算出式である。
【００２５】
そして、第２式を用いて算出したＡ〜Ｃ相の３つの回転角度位置の各２つの回転角度位置の差分値と、第３式を用いて算出したＡ〜Ｃ相の３つの回転角度位置の各２つの回転角度位置の差分値と、第４式を用いて算出したＡ〜Ｃ相の３つの回転角度位置の各２つの回転角度位置の差分値とに基づき、サンプリング値ａ、ｂ、ｃのいずれかに異常が発生しているか否かを検出する。
【００２６】
サンプリング値ａ、ｂ、ｃのいずれか１つに異常が検出された場合は、該当する相に異常が発生していることを示す異常検出フラグを外部装置等に出力すると共に、Ａ相〜Ｃ相に対して、正常なサンプリング値のみで算出された３つの回転角度位置を、回転角度位置算出部１４に出力する。
一方、サンプリング値ａ、ｂ、ｃのうち２つ以上に異常が発生している場合は、動作停止用の異常検出フラグを、ＲＤＣ２０内部の不図示の動作制御部及び外部装置に出力する。
【００２７】
また、サンプリング値ａ、ｂ、ｃのいずれも正常である場合は、第２〜第４式で算出した９つの回転角度位置を、回転角度位置算出部１４に出力する。
回転角度位置算出部１４は、異常検出部１３から入力された回転角度位置の平均値を、外部出力用の回転角度位置として算出し、当該算出した回転角度位置を出力する。
また、ＲＤＣ２０は、前記異常検出部１３、前記回転角度位置算出部１４などにおける上記各機能をソフトウェア上で実現するため、及び上記各機能の実現に必要なハードウェアを制御するソフトウェアを実行するための不図示のコンピュータシステムを備えている。このコンピュータシステムのハードウェア構成は、各種制御や演算処理を担う演算処理装置（Processing Unit）と、主記憶装置（Main Storage）を構成するＲＡＭ（Random Access Memory）と、読み出し専用の記憶装置であるＲＯＭ（Read Only Memory）と、前記各装置間をデータ授受可能に接続する各種内外バスとを有した構成となっている。
【００２８】
そして、電源を投入すると、ＲＯＭ等に記憶されたシステムプログラムが、ＲＯＭに予め記憶された各種専用のコンピュータプログラムをＲＡＭにロードし、ＲＡＭにロードされたプログラムに記述された命令に従って演算処理装置が各種リソースを駆使して所定の制御および演算処理を行うことで前述したような各機能をソフトウェア上で実現するようになっている。
【００２９】
更に、図３に基づき、異常検出部１３における異常検出処理の流れを説明する。
ここで、図３は、異常検出部１３の異常検出処理を示すフローチャートである。
異常検出処理は、専用のソフトウェアを演算処理装置に実行させることで行われる処理であって、ＲＤＣ２０の演算処理装置において実行されると、図３に示すように、まずステップＳ１００に移行する。
【００３０】
ステップＳ１００では、異常検出部１３において、Ａ／Ｄコンバータ１２から、３相のレゾルバ信号の各相のサンプリング値ａ、ｂ、ｃを同時に取得して、ステップＳ１０２に移行する。
ステップＳ１０２では、異常検出部１３において、ステップＳ１００で取得したサンプリング値ａ及びｂと、Ａ相、Ｂ相、Ｃ相の各相に対応する第２式とを用いて回転角度位置θA2、θB2、θC2を算出して、ステップＳ１０４に移行する。
【００３１】
ステップＳ１０４では、異常検出部１３において、第２式で算出した３つの回転角度位置は、３つとも等しいか否かを判定し、３つとも等しいと判定された場合(Yes)は、ステップＳ１０６に移行し、そうでない場合(No)は、ステップＳ１１６に移行する。
具体的に、第２式で算出した３つの回転角度位置θA2、θB2、θC2の各２つの差分値（θA2-θB2）、（θA2-θC2）、（θB2-θC2）が、所定の誤差範囲内に３つとも収まっているときに等しいと判定される。以下、第３式及び第４式においても同様の方法で判定を行う。
【００３２】
ここで、θA2、θB2、θC2は、Ａ相、Ｂ相、Ｃ相に対する第２式を用いて算出した回転角度位置である。同様に、θA3、θB3、θC3は、Ａ相、Ｂ相、Ｃ相に対する第３式を用いて算出した回転角度位置であり、θA4、θB4、θC4は、Ａ相、Ｂ相、Ｃ相に対する第４式を用いて算出した回転角度位置である。つまり、下付き文字のアルファベットがレゾルバ１０の相の種類を表し、数字が算出式の種類を表している。
【００３３】
ステップＳ１０６に移行した場合は、異常検出部１３において、ステップＳ１００で取得したサンプリング値ａ及びｃと、Ａ相、Ｂ相、Ｃ相の各相に対応する第３式とを用いて回転角度位置θA3、θB3、θC3を算出して、ステップＳ１０８に移行する。
ステップＳ１０８では、異常検出部１３において、第３式で算出した３つの回転角度位置は、３つとも等しいか否かを判定し、３つとも等しいと判定された場合(Yes)は、ステップＳ１１０に移行し、そうでない場合(No)は、ステップＳ１１４に移行する。
【００３４】
ステップＳ１１０に移行した場合は、異常検出部１３において、ステップＳ１００で取得したサンプリング値ｂ及びｃと、Ａ相、Ｂ相、Ｃ相の各相に対応する第４式とを用いて回転角度位置θA4、θB4、θC4を算出して、ステップＳ１１２に移行する。
ステップＳ１１２では、異常検出部１３において、第２〜第４式で算出した９つの回転角度位置を、回転角度位置算出部１４に出力し、一連の処理を終了して元の処理に復帰させる。
【００３５】
一方、ステップＳ１０８において、第３式で算出した回転角度位置が３つとも等しくなく、ステップＳ１１４に移行した場合は、異常検出部１３において、第２式で算出した３つの回転角度位置θA2、θB2、θC2を回転角度位置算出部１４に出力すると共に、レゾルバ１０のＣ相のレゾルバ信号に異常が発生していることを示すＣ相信号異常検出フラグを外部装置に出力し、一連の処理を終了して元の処理に復帰させる。
【００３６】
また、ステップＳ１０４において、第２式で算出した回転角度位置が３つとも等しくなく、ステップＳ１１６に移行した場合は、異常検出部１３において、ステップＳ１００で取得したサンプリング値ａ及びｃと、Ａ相、Ｂ相、Ｃ相の各相に対応する第３式とを用いて回転角度位置θA3、θB3、θC3を算出して、ステップＳ１１８に移行する。
ステップＳ１１８では、異常検出部１３において、第３式で算出した３つの回転角度位置は、３つとも等しいか否かを判定し、３つとも等しいと判定された場合(Yes)は、ステップＳ１２０に移行し、そうでない場合(No)は、ステップＳ１２２に移行する。
【００３７】
ステップＳ１２０に移行した場合は、異常検出部１３において、第３式で算出した３つの回転角度位置θA3、θB3、θC3を回転角度位置算出部１４に出力すると共に、レゾルバ１０のＢ相のレゾルバ信号に異常が発生していることを示すＢ相信号異常検出フラグを外部装置に出力し、一連の処理を終了して元の処理に復帰させる。
また、ステップＳ１１８において、第３式で算出した回転角度位置が３つとも等しくなく、ステップＳ１２２に移行した場合は、異常検出部１３において、ステップＳ１００で取得したサンプリング値ｂ及びｃと、Ａ相、Ｂ相、Ｃ相の各相に対応する第４式とを用いて回転角度位置θA4、θB4、θC4を算出して、ステップＳ１２４に移行する。
【００３８】
ステップＳ１２４では、異常検出部１３において、第４式で算出した３つの回転角度位置は、３つとも等しいか否かを判定し、３つとも等しいと判定された場合(Yes)は、ステップＳ１２６に移行し、そうでない場合(No)は、ステップＳ１２８に移行する。
ステップＳ１２６に移行した場合は、異常検出部１３において、第４式で算出した３つの回転角度位置θA4、θB4、θC4を回転角度位置算出部１４に出力すると共に、レゾルバ１０のＡ相のレゾルバ信号に異常が発生していることを示すＡ相信号異常検出フラグを外部装置に出力し、一連の処理を終了して元の処理に復帰させる。
【００３９】
一方、ステップＳ１２８に移行した場合は、異常検出部１３において、動作停止用の異常検出フラグを、内部の動作制御部（演算処理装置）や外部装置などに出力し、一連の処理を終了して元の処理に復帰させる。
更に、図４に基づき、回転角度位置算出部１４の回転角度位置算出処理の流れを説明する。
【００４０】
ここで、図４は、回転角度位置算出部１４の回転角度位置算出処理を示すフローチャートである。
回転角度位置算出処理は、専用のソフトウェアを演算処理装置に実行させることで行われる処理であって、ＲＤＣ２０の演算処理装置において実行されると、図４に示すように、まずステップＳ２００に移行する。
【００４１】
ステップＳ２００では、回転角度位置算出部１４において、異常検出部１３から回転角度位置を取得したか否かを判定し、取得したと判定された場合(Yes)は、ステップＳ２０２に移行し、そうでない場合(No)は、取得するまで待機する。
ステップＳ２０２に移行した場合は、回転角度位置算出部１４において、取得した回転角度位置の平均値を算出して、ステップＳ２０４に移行する。
【００４２】
ステップＳ２０４では、回転角度位置算出部１４において、ステップＳ２０２で算出した平均値を出力し、一連の処理を終了して元の処理に復帰させる。
次に、本実施の形態の動作を説明する。
まず、異常検出部１３において、レゾルバ１０のＡ相、Ｂ相、Ｃ相の各相に対する回転角度位置の算出に用いられる算出式について説明する。
【００４３】
レゾルバ１０のＡ相〜Ｃ相からのレゾルバ信号のサンプリング値ａ、ｂ、ｃは、下式（１）で表すことができる。
Ａ相：ａ＝cosθ
Ｂ相：ｂ＝cos(θ-2π/3)      ・・・（１）
Ｃ相：ｃ＝cos(θ-4π/3)
上式（１）より、サンプリング値ａ、ｂ、ｃの数学的関係を利用して、異常検出用の回転角度位置の算出式（上述した第１式〜第４式）を求めるための異常検出パラメータとして、下式（２）を求める。
【００４４】
【数１】
2008196937.tif 000003
【００４５】
更に、上式（２）に示す異常検出パラメータを用いて、Ａ相、Ｂ相、Ｃ相の各相に対して、サンプリング値ａ、ｂ、ｃを全て用いた回転角度位置の算出式である、下式（３）に示す第１式を求める。次に、上式（２）に示す異常検出パラメータを用いて、Ａ相、Ｂ相、Ｃ相の各相に対して、第１式を変形し、下式（３）に示すように、サンプリング値ａ及びｂのみを変数とした第２式を求める。同様に、上式（２）に示す異常検出パラメータを用いて、Ａ相、Ｂ相、Ｃ相の各相に対して、第１式を変形し、下式（３）に示すように、サンプリング値ａ及びｃのみを変数とした第３式、並びにサンプリング値ｂ及びｃのみを変数とした第４式を求める。
【００４６】
【数２】
2008196937.tif 000004
【００４７】
以下、上記のようにして求めた、上式（３）に示す、第２〜第４式を用いて、回転角度位置算出装置１００の異常検出処理及び回転角度位置算出処理の動作を説明する。
ドライバからの駆動信号に応じてモータが駆動し、且つＲＤＣ２０の励磁信号発生器１１からレゾルバ１０に励磁信号sinωｔが供給されると、レゾルバ１０からは、Ａ相、Ｂ相、Ｃ相の各相に対応するレゾルバ信号cosθ、cos(θ-2π/3)、cos(θ-4π/3)が出力される。
【００４８】
ＲＤＣ２０は、サンプリングタイミングになると、レゾルバ１０から出力される３相のレゾルバ信号を同時にＡ／Ｄコンバータ１２に入力する。Ａ／Ｄコンバータ１２は、入力されたサンプリング値をディジタルデータａ、ｂ、ｃに変換して、異常検出部１３に出力する。
異常検出部１３は、Ａ／Ｄコンバータ１２からサンプリング値ａ、ｂ、ｃを取得すると（ステップＳ１００）、まず、サンプリング値ａ及びｂと、上式（３）に示す、Ａ相、Ｂ相、Ｃ相にそれぞれ対応する第２式とを用いて、回転角度位置θA2、θB2、θC2を算出する（ステップＳ１０２）。
【００４９】
次に、異常検出部１３は、第２式で算出したθA2、θB2、θC2に対して、各２つの差分値「θA2-θB2」、「θA2-θC2」、「θB2-θC2」を算出する。そして、これら差分値と、予め設定されている閾値Ｅt＝±０．１[°]とを比較し、差分値が３つとも閾値Ｅtの範囲内にあるときは、３つの回転角度位置は等しいと判定する（ステップＳ１０４の「Ｙｅｓ」の分岐）。また、差分値が１つでも閾値Ｅtの範囲外にあるときは、３つの回転角度位置は等しくないと判定する（ステップＳ１０４の「Ｎｏ」の分岐）。
【００５０】
ここで、閾値Ｅtを−０．１[°]〜＋０．１[°]の範囲にしたのは、ノイズによる誤差や、Ａ／Ｄ変換による誤差等を考慮するためである。
以下、第２式で算出した回転角度位置が３つとも等しかった場合の動作を説明する。
この場合、異常検出部１３は、サンプリング値ａ及びｃと、上式（３）に示す、Ａ相、Ｂ相、Ｃ相にそれぞれ対応する第３式とを用いて、回転角度位置θA3、θB3、θC3を算出する（ステップＳ１０６）。
【００５１】
そして、上記第２式のときと同様に、第３式で算出したθA3、θB3、θC3に対して、各２つの差分値「θA3-θB3」、「θA3-θC3」、「θB3-θC3」を算出する。更に、これら差分値と閾値Ｅtとを比較し、差分値が３つとも閾値Ｅtの範囲内にあるときは、３つの回転角度位置は等しいと判定する（ステップＳ１０８の「Ｙｅｓ」の分岐）。また、差分値が１つでも閾値Ｅtの範囲外にあるときは、３つの回転角度位置は等しくないと判定する（ステップＳ１０８の「Ｎｏ」の分岐）。
【００５２】
ここで、第３式に対する３つの回転角度位置が等しくない場合は、既にサンプリング値ａ及びｂが正常であることが解っているので、サンプリング値ｃにのみ異常があることが解る。また、サンプリング値ｃを変数に含む第４式についても異常値が算出されることが解る。
従って、異常検出部１３は、第２式で算出した回転角度位置θA2、θB2、θC2のみを回転角度位置算出部１４に出力すると共に、Ｃ相の信号に異常が発生していることを示すＣ相信号異常検出フラグを外部装置等に出力する（ステップＳ１１４）。
【００５３】
例えば、Ｃ相信号異常検出フラグを外部のコンピュータなどに出力し、そこで異常個所を示す画像を表示装置に表示することで、レゾルバ１０に異常が発生していることが解ると共に、異常の発生箇所も解るので迅速な対応が可能となる。
また、異常検出部１３は、Ｃ相に異常があるという情報を保持し、以降は、Ａ相及びＢ相からのサンプリング値ａ及びｂのみを用いて、第２式から３つの回転角度位置θA2、θB2、θC2を算出し、これらを回転角度位置算出部１４に出力する。つまり、レゾルバ１０のＣ相に異常があっても、残りのＡ相及びＢ相が正常であれば、回転角度位置の算出処理を継続して行い、算出結果を回転角度位置算出部１４に出力する。
【００５４】
また、異常検出部１３においては、例えば、電源投入毎、定期的、又はサンプリングタイミング毎などに異常検出処理を行うようにすることで、残り２つの相に異常が発生したときにも対応することが可能である。
一方、回転角度位置算出部１４は、異常検出部１３から回転角度位置θA2、θB2、θC2を取得すると（ステップＳ２００）、これら３つの回転角度位置の平均値「（θA2＋θB2＋θC2）／３」を出力用の回転角度位置θとして算出する（ステップＳ２０２）。そして、算出した回転角度位置θを、不図示の出力対象に出力する（ステップＳ２０４）。
【００５５】
次に、上式（３）に示す、第２式及び第３式で算出した回転角度位置が正常である場合（ステップＳ１０８の「Ｙｅｓ」の分岐）の動作について説明する。
この場合、異常検出部１３は、サンプリング値ａ、ｂ、ｃが全て正常であることが解るので、更に、サンプリング値ｂ及びｃと、上式（３）に示す、Ａ相、Ｂ相、Ｃ相にそれぞれ対応する第４式とを用いて、回転角度位置θA4、θB4、θC4を算出する（ステップＳ１１０）。そして、第２式〜第４式で算出した９つの回転角度位置の全てを、回転角度位置算出部１４に出力する（ステップＳ１１２）。
【００５６】
一方、回転角度位置算出部１４は、異常検出部１３から、９つの回転角度位置θA2、θB2、θC2、θA3、θB3、θC3、θA4、θB4、θC4を取得すると（ステップＳ２００）、これら９つの回転角度位置の平均値を出力用の回転角度位置θとして算出する（ステップＳ２０２）。そして、算出した回転角度位置θを、不図示の出力対象に出力する（ステップＳ２０４）。
【００５７】
つまり、レゾルバ１０の各相に異常がない場合は、９つの回転角度位置の平均値を、出力用の回転角度位置θとして算出することができるので、高精度な回転角度位置θを出力対象に出力することが可能である。また、この場合は、異常が無いので異常検出フラグは出力されない。
次に、上式（３）に示す、第２式で算出した回転角度位置が異常と判定された場合（ステップＳ１０４の「Ｎｏ」の分岐）の動作について説明する。
【００５８】
この場合、異常検出部１３は、サンプリング値ａ及びｃと、上式（３）に示す、Ａ相、Ｂ相、Ｃ相にそれぞれ対応する第３式とを用いて、回転角度位置θA3、θB3、θC3を算出する（ステップＳ１１６）。
そして、上記第２式のときと同様に、第３式で算出したθA3、θB3、θC3に対して、各２つの差分値「θA3-θB3」、「θA3-θC3」、「θB3-θC3」を算出する。更に、これら差分値と閾値Ｅtとを比較し、差分値が３つとも閾値Ｅtの範囲内にあるときは、３つの回転角度位置は等しいと判定する（ステップＳ１１８の「Ｙｅｓ」の分岐）。また、差分値が１つでも閾値Ｅtの範囲外にあるときは、３つの回転角度位置は等しくないと判定する（ステップＳ１１８の「Ｎｏ」の分岐）。
【００５９】
ここで、３つの回転角度位置が等しいと判定された場合（ステップＳ１１８の「Ｙｅｓ」の分岐）は、サンプリング値ａ及びｂのいずれか一方が異常であることに加え、サンプリング値ａ及びｃが正常であることが解るので、これにより、サンプリング値ｂのみに異常があることが解る。従って、異常検出部１３は、第３式で算出した回転角度位置θA3、θB3、θC3のみを回転角度位置算出部１４に出力すると共に、Ｂ相の信号に異常が発生していることを示すＢ相信号異常検出フラグを外部装置等に出力する（ステップＳ１２０）。
【００６０】
また、異常検出部１３は、Ｂ相に異常があるという情報を保持し、以降は、Ａ相及びＣ相からのサンプリング値ａ及びｃのみを用いて、第３式から３つの回転角度位置をθA3、θB3、θC3を算出し、これらを回転角度位置算出部１４に出力する。つまり、レゾルバ１０のＢ相に異常があっても、残りのＡ相及びＣ相が正常であれば、回転角度位置の算出処理を継続して行い、算出結果を回転角度位置算出部１４に出力する。
【００６１】
一方、回転角度位置算出部１４は、異常検出部１３から回転角度位置θA3、θB3、θC3を取得すると（ステップＳ２００）、これら３つの回転角度位置の平均値を出力用の回転角度位置θとして算出する（ステップＳ２０２）。そして、算出した回転角度位置θを、不図示の出力対象に出力する（ステップＳ２０４）。
次に、第２式及び第３式で算出した回転角度位置が異常と判定された場合（ステップＳ１１８の「Ｎｏ」の分岐）の動作について説明する。
【００６２】
この場合は、サンプリング値ａ及びｂのいずれか一方、及びサンプリング値ａ及びｃのいずれか一方に異常があることが解る。しかし、これだけでは、サンプリング値ａのみに異常があるのか、サンプリング値ｂ又はｃに異常があるのかなどが正確に解らない。従って、異常検出部１３は、更に、サンプリング値ｂ及びｃと、上式（３）に示す、Ａ相、Ｂ相、Ｃ相にそれぞれ対応する第４式とを用いて、回転角度位置θA4、θB4、θC4を算出する（ステップＳ１２２）。
【００６３】
そして、上記第２式のときと同様に、第４式で算出したθA4、θB4、θC4に対して、各２つの差分値「θA4-θB4」、「θA4-θC4」、「θB4-θC4」を算出する。更に、これら差分値と閾値Ｅtとを比較し、差分値が３つとも閾値Ｅtの範囲内にあるときは、３つの回転角度位置は等しいと判定する（ステップＳ１２４の「Ｙｅｓ」の分岐）。また、差分値が１つでも閾値Ｅtの範囲外にあるときは、３つの回転角度位置は等しくないと判定する（ステップＳ１２４の「Ｎｏ」の分岐）。
【００６４】
ここで、３つの回転角度位置が等しいと判定された場合（ステップＳ１２４の「Ｙｅｓ」の分岐）は、サンプリング値ａのみが異常であることが解るので、異常検出部１３は、第４式で算出した回転角度位置θA4、θB4、θC4のみを回転角度位置算出部１４に出力すると共に、Ａ相の信号に異常が発生していることを示すＡ相信号異常検出フラグを外部装置等に出力する（ステップＳ１２６）。
【００６５】
また、異常検出部１３は、Ａ相に異常があるという情報を保持し、以降は、Ｂ相及びＣ相からのサンプリング値ｂ及びｃのみを用いて、第４式から３つの回転角度位置をθA4、θB4、θC4を算出し、これらを回転角度位置算出部１４に出力する。つまり、レゾルバ１０のＡ相に異常があっても、残りのＢ相及びＣ相が正常であれば、回転角度位置の算出処理を継続して行い、算出結果を回転角度位置算出部１４に出力する。
【００６６】
一方、回転角度位置算出部１４は、異常検出部１３から回転角度位置θA4、θB4、θC4を取得すると（ステップＳ２００）、これら３つの回転角度位置の平均値を出力用の回転角度位置θとして算出する（ステップＳ２０２）。そして、算出した回転角度位置θを、不図示の出力対象に出力する（ステップＳ２０４）。
次に、第２式〜第４式で算出した回転角度位置が全て異常と判定された場合（ステップＳ１２４の「Ｎｏ」の分岐）の動作について説明する。
【００６７】
この場合は、サンプリング値ａ、ｂ、ｃのうち２つ以上に異常があることが解るので、異常検出部１３は、回転角度位置の算出処理を正常に機能させることは不可能であると判断し、動作停止用の異常検出フラグを、内部の動作制御部及び外部装置に出力する（ステップＳ１２８）。
ＲＤＣ２０の内部にある動作制御部は、異常検出部１３から動作停止用の異常検出フラグを取得すると、停止コマンドを発行して、励磁信号発生器１１、Ａ／Ｄコンバータ１２、異常検出部１３及び回転角度位置算出部１４の動作を停止する。
【００６８】
上記したように、本実施の形態の回転角度位置算出装置１００は、ＲＤＣ２０の異常検出部１３において、３相のレゾルバ信号のサンプリング値うちＡ相及びＢ相の値ａ、ｂ、Ａ相及びＣ相の値ａ、ｃ、並びにＢ相及びＣ相の値ｂ、ｃと、上式（３）の第２式〜第４式とに基づき、回転角度位置θA2〜θC2、θA3〜θC3、θA4〜θC4を算出することが可能である。また、各算出式で算出した各３つの回転角度位置の差分値と閾値との比較結果に基づき、サンプリング値の異常を検出することが可能である。また、異常があったときに、該当するサンプリング値の相に対する異常検出フラグや、動作停止用の異常検出フラグを出力することが可能である。
【００６９】
これにより、レゾルバ１０のどの相に異常があるのかを正確に判断することができると共に、異常検出フラグを外部装置等に出力することで、異常の有無及び異常個所を判断することができるので、迅速な対応が可能となる。
また、本実施の形態の回転角度位置算出装置１００は、Ａ相、Ｂ相、Ｃ相のうち、異常の発生していない相が１つしかない場合に、正常な相のサンプリング値を用いて、継続して回転角度位置の算出処理を行うことが可能である。
【００７０】
これにより、１相だけに異常が発生した場合でも回転角度位置の算出処理を継続し、制御対象の正常な動作を維持できるので、誤動作による制御対象の破損や危険の発生等を防ぐことが可能である。
また、本実施の形態の回転角度位置算出装置１００は、Ａ相、Ｂ相、Ｃ相のうち、正常な相に対する上記第１〜第４式で算出した回転角度位置の平均値を、出力用の回転角度位置θとして算出することが可能である。
【００７１】
これにより、信頼性の高い高精度な回転角度位置の算出が可能である。
以上、上記実施の形態において、レゾルバ１０は、発明１の３相の位置検出センサに対応し、Ａ／Ｄコンバータ１２及びステップＳ１００は、発明１、２及び４のいずれか１つのサンプリング値取得手段に対応し、異常検出部１３及びステップＳ１０２〜Ｓ１２８は、発明１並びに発明２乃至８のいずれか１つの異常検出手段に対応し、回転角度位置算出部１４及びステップＳ２００〜Ｓ２０４は、発明１、６及び７のいずれか１つの回転角度位置算出手段に対応する。
【００７２】
なお、上記実施の形態においては、異常検出部１３の異常検出処理及び回転角度位置算出部１４の回転角度位置算出処理を、演算処理装置に専用のソフトウェアを実行させることで行う構成としたが、これに限らず、ハードウェア主体で前記各処理を実行する構成としてもよい。
また、上記実施の形態においては、事前に異常検出パラメータから、上式（３）を求めておき、異常検出部１３はこの算出式を用いて、異常検出処理を実行する構成としたが、これに限らず、例えば、電源投入毎、又は出荷後の最初の電源投入時などに、異常検出パラメータの算出処理及び上式（３）に示す回転角度位置の算出式の生成処理を行う構成としてもよい。また、一度生成した算出式は、電源が落ちるまで保持するか又は電源が落ちた後も保持し続けるようにすることで、上式（３）に示す算出式の生成処理負荷を軽減することが可能である。
【００７３】
また、上記実施の形態においては、レゾルバ１０を、回転角度位置算出装置１００の構成要素に含むようにしたが、これに限らず、レゾルバ１０を切り離して、ＲＤＣ２０のみの構成としてもよい。
また、上記実施の形態において、励磁信号発生器１１を、ＲＤＣ２０の内部に含む構成としたが、これに限らず、励磁信号発生器１１をＲＤＣ２０の外部に設ける構成としてもよい。
【００７４】
また、上記実施の形態において、レゾルバはロータの１回転につきリラクタンス変化の基本波成分が１周期となるように構成したが、これに限らず、３相の信号を得られる構造であれば、ロータの１回転のリラクタンス変化の基本波成分は何周期でもよい。
また、上記実施の形態においては、３相の位置検出センサとして３相のレゾルバを適用したが、適用するセンサは、これに限らず、例えば、アナログホールＩＣを３つ備えた３相出力のセンサ等でもよい。
【図面の簡単な説明】
【００７５】
【図１】本発明に係る回転角度位置算出装置１００の構成を示すブロック図である。
【図２】ＲＤＣ２０の詳細な構成を示すブロック図である。
【図３】異常検出部１３の異常検出処理を示すフローチャートである。
【図４】回転角度位置算出部１４の回転角度位置算出処理を示すフローチャートである。
【符号の説明】
【００７６】
１０                レゾルバ
２０                ＲＤＣ
１１                励磁信号発信器
１２                Ａ／Ｄコンバータ
１３                異常検出部
１４                回転角度位置算出部
【図１】
2008196937.tif 000005
【図２】
2008196937.tif 000006
【図３】
2008196937.tif 000007
【図４】
2008196937.tif 000008