(57)【要約】【課題】モータ巻線の１相のみが断線した場合に、それ以外の相の巻線を用いてＦ／Ｂ制御（フィードバック制御）を実行できるようにする。【解決手段】各相の断線検出回路６０の出力電圧に基づいて各相の巻線３３の断線の有無を判定する。Ｆ／Ｂ制御を開始する際に、いずれか１つの相の断線が検出されている場合は、断線の検出されていない２つの相の中から最初の通電相を設定する。具体的には、通電相の切り換え順序から見て、断線が検出された相（断線相）の次に切り換えられる通電相を最初の通電相として設定する。このようにすれば、Ｆ／Ｂ制御開始後に、断線相が通電相として選択されるまでの通電相の切り換え回数（励磁回数）を最も多くすることができて、断線相が通電相となるまでにロータの回転を十分に立ち上げてロータの慣性力を十分に大きくすることができ、確実にＦ／Ｂ制御を実行することができる。【選択図】　図３
2004129450.tif 000002
【特許請求の範囲】
【請求項１】
制御対象を回転駆動するモータのロータの回転に同期してパルス信号を出力するエンコーダと、このエンコーダのパルス信号のカウント値（以下「エンコーダカウント値」という）に基づいて前記ロータの回転位置を検出して前記モータの通電相を順次切り換えることで前記ロータを目標位置まで回転駆動するフィードバック制御（以下「Ｆ／Ｂ制御」と表記する）を実行する制御手段とを備えたモータ制御装置において、
前記モータの各相の巻線の断線を各相毎に検出する断線検出手段を備え、
前記制御手段は、前記Ｆ／Ｂ制御を開始する際に、前記断線検出手段によりいずれか１つの相の断線が検出されている場合は、少なくとも最初の２回の通電相を断線の検出されていない相の中から設定することを特徴とするモータ制御装　置。
【請求項２】
前記制御手段は、前記断線検出手段により２相以上の断線が検出されたときには、前記モータへの通電を禁止して警告表示手段に警告表示させることを特徴とする請求項１に記載のモータ制御装置。
【請求項３】
前記制御手段は、前記Ｆ／Ｂ制御を開始する際に、前記断線検出手段によりいずれか１つの相の断線が検出されている場合は、通電相の切り換え順序から見て、断線が検出された相の次に切り換えられる通電相を前記最初の通電相として設定することを特徴とする請求項１又は２に記載のモータ制御装置。
【請求項４】
前記制御手段は、前記Ｆ／Ｂ制御を開始する際に、前記最初の通電相に所定時間通電して前記ロータをＦ／Ｂ制御開始位置に保持するＦ／Ｂ制御開始位置保持処理を実行した後、通電相を切り換えて前記ロータを回転駆動することを特徴とする請求項１乃至３のいずれかに記載のモータ制御装置。
【請求項５】
前記制御手段は、前記断線検出手段によりいずれか１つの相の断線が検出されている場合は、前記Ｆ／Ｂ制御開始位置保持処理の時間を通常よりも長い時間に設定することを特徴とする請求項４に記載のモータ制御装置。
【請求項６】
前記モータは、各相の巻線を結線した１系統の駆動コイルによって駆動されることを特徴とする請求項１乃至５のいずれかに記載のモータ制御装置。
【請求項７】
前記モータは、スイッチトリラクタンスモータであることを特徴とする請求項１乃至６のいずれかに記載のモータ制御装置。
【請求項８】
前記モータは、車両の自動変速機のレンジを切り換えるレンジ切換機構を駆動することを特徴とする請求項１乃至７のいずれかに記載のモータ制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンコーダのパルス信号のカウント値に基づいてロータの回転位置を検出してモータの通電相を順次切り換えることでロータを目標位置まで回転駆動するモータ制御装置に関するものである。
【０００２】
【従来の技術】
近年、構造が簡単で安価なモータとして需要が増加しているスイッチトリラクタンスモータ等のブラシレス型のモータは、ロータの回転に同期してパルス信号を出力するエンコーダを搭載し、このエンコーダのパルス信号をカウントして、そのエンコーダカウント値に基づいてロータの回転位置を検出して通電相を順次切り換えることでロータを回転駆動するようにしたものがある。このようなエンコーダ付きのモータは、起動後のエンコーダカウント値に基づいてロータの回転位置を検出することができるため、フィードバック制御系（Ｆ／Ｂ制御系）によりロータを目標位置まで回転させる位置切換制御（位置決め制御）を行う各種の位置切換装置の駆動源として用いられている。
【０００３】
このような位置切換装置で、モータの駆動コイルが断線すると、モータを正常に駆動できなくなるため、特許文献１（特開２００１−２７１９１７号公報）に示すように、モータのステータコアに、独立した２系統の駆動コイルを設けると共に、各系統の駆動コイルを別々に駆動する２系統の駆動回路を設け、片方の系統の駆動コイルが断線したときに、残りの１系統の駆動コイルのみを用いてモータをフィードバック制御（以下「Ｆ／Ｂ制御」と表記する）するようにしたものがある。
【０００４】
【特許文献１】
特開２００１−２７１９１７号公報（第４頁〜第８頁等）
【０００５】
【発明が解決しようとする課題】
上記特許文献１では、モータの３相の巻線のうち、１相のみが断線した場合でも、その巻線が属する片方の系統の駆動コイルの断線と判断されて、残りの１系統の駆動コイルのみを用いてモータをＦ／Ｂ制御するようにしている。しかし、この構成では、駆動コイルが２系統必要となり、製造コストが高くなる。しかも、片方の駆動コイルのみでＦ／Ｂ制御する場合、駆動トルクが正常時の半分となるため、駆動トルクが不足して脱調が発生しやすくなり、正常なＦ／Ｂ制御を行えない可能性がある。かといって、片方の駆動コイルのみで正常なＦ／Ｂ制御を可能にする大きな駆動トルクを確保しようとすると、大きな駆動コイルが必要となって、モータが大型化してしまうという欠点が発生する。
【０００６】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、安価な構成で、１相が断線しても、それ以外の相の巻線を用いてＦ／Ｂ制御を実行することができるモータ制御装置を提供することにある。
【０００７】
【課題を解決するための手段】
本発明者らの最近の試験結果によれば、一旦、モータが回転し始めると、１相の巻線が断線していても、ロータは慣性により回り続けるため、Ｆ／Ｂ制御が可能であることが判明した。但し、Ｆ／Ｂ制御開始時の最初の通電相の巻線が断線している場合は、ロータの回転を立ち上げることができないため、Ｆ／Ｂ制御は不可能である。
【０００８】
そこで、本発明の請求項１のモータ制御装置は、モータの各相の巻線の断線を各相毎に検出する断線検出手段を備え、制御手段によってＦ／Ｂ制御を開始する際に、前記断線検出手段によりいずれか１つの相の断線が検出されている場合には、断線の検出されていない相の中から少なくとも最初の２回の通電相を設定するようにしたものである。このようにすれば、１つの相の巻線が断線していても、それ以外の相の巻線を用いてロータの回転を立ち上げることができて、Ｆ／Ｂ制御を行うことができる。これにより、請求項６のように、モータの駆動コイルを１系統のみにすることが可能となり、モータの低コスト化・小型化を実現することができる。
【０００９】
但し、本発明は、前記特許文献１のように２系統の駆動コイルを設けたモータにも適用することが可能であり、この場合、１相のみが断線しても、２系統の駆動コイルを用いてＦ／Ｂ制御することができるため、前記特許文献１と比較して大きな駆動トルクを確保でき、その分、モータの小型化が可能となる。
【００１０】
また、請求項２のように、２相以上の断線が検出されたときには、モータへの通電を禁止して警告表示手段に警告表示させるようにしても良い。これは、２相以上の断線が発生した場合に、ロータの回転を立ち上げることができなくなるためである。
【００１１】
また、請求項３のように、Ｆ／Ｂ制御を開始する際に、いずれか１つの相の断線が検出されている場合は、通電相の切り換え順序から見て、断線が検出された相（以下「断線相」という）の次に切り換えられる通電相を前記最初の通電相として設定するようにすると良い。このようにすれば、Ｆ／Ｂ制御開始後に、断線相が通電相として選択されるまでの通電相の切り換え回数（励磁回数）を最も多くすることができて、断線相が通電相となるまでにロータの回転を十分に立ち上げてロータの慣性力を十分に大きくすることができ、より確実にＦ／Ｂ制御を実行することができる。
【００１２】
また、請求項４のように、Ｆ／Ｂ制御を開始する際に、最初の通電相に所定時間通電してロータをＦ／Ｂ制御開始位置に保持するＦ／Ｂ制御開始位置保持処理を実行した後、通電相を切り換えてロータを回転駆動するようにしても良い。このようにすれば、Ｆ／Ｂ制御開始時のロータの回転位置と最初の通電相との同期を確実にとることができて、信頼性の高いＦ／Ｂ制御を行うことができる。
【００１３】
この場合、請求項５のように、いずれか１つの相の断線が検出されている場合は、Ｆ／Ｂ制御開始位置保持処理の時間（最初の通電相の通電時間）を通常よりも長い時間に設定するようにすると良い。つまり、正常時に最初の通電相となる相の巻線が断線している場合は、最初の通電相が正常時の最初の通電相からずらされるため、最初の通電相と実際のロータの回転位置との位置関係がずれ、その結果、最初の通電相とロータの回転位置との同期を取るのに要する時間が正常時よりも長くかかる。従って、いずれか１つの相の断線が検出されている場合は、最初の通電相の通電時間（Ｆ／Ｂ制御開始位置保持処理の時間）を通常よりも長い時間に設定すれば、最初の通電相とロータの回転位置との同期をより確実に取ることができる。
【００１４】
また、請求項７のように、モータとしてスイッチトリラクタンスモータを使用するようにしても良い。スイッチトリラクタンスモータは、永久磁石が不要で構造が簡単であるため、安価であり、温度環境等に対する耐久性・信頼性も高いという利点がある。
【００１５】
以上説明した請求項１〜７に係る発明は、スイッチトリラクタンスモータ等のブラシレス型のモータを駆動源とする各種の位置切換装置に適用でき、例えば、請求項８のように、車両の自動変速機のレンジを切り換えるレンジ切換機構を駆動するモータの制御装置に適用しても良い。これにより、信頼性の高いモータ駆動式のレンジ切換装置を構成することができる。
【００１６】
【発明の実施の形態】
《実施形態（１）》
以下、本発明を車両のレンジ切換装置に適用した実施形態（１）を図１乃至図１９に基づいて説明する。
【００１７】
まず、図１に基づいてレンジ切換機構１１の構成を説明する。レンジ切換機構１１の駆動源となるモータ１２は、例えばスイッチトリラクタンスモータにより構成され、減速機構２６（図４参照）を内蔵し、その出力軸１３の回転位置を検出する出力軸センサ１４が設けられている。この出力軸１３には、ディテントレバー１５が固定されている。
【００１８】
また、ディテントレバー１５にはＬ字形のパーキングロッド１８が固定され、このパーキングロッド１８の先端部に設けられた円錐体１９がロックレバー２１に当接している。このロックレバー２１は、円錐体１９の位置に応じて軸２２を中心にして上下動してパーキングギヤ２０をロック／ロック解除するようになっている。パーキングギヤ２０は、自動変速機２７の出力軸に設けられ、このパーキングギヤ２０がロックレバー２１によってロックされると、車両の駆動輪が回り止めされた状態（パーキング状態）に保持される。
【００１９】
一方、ディテントレバー１５をパーキングレンジ（以下「Ｐレンジ」と表記する）と他のレンジ（以下「ＮｏｔＰレンジ」と表記する）に保持するためのディテントバネ２３が支持ベース１７に固定され、このディテントバネ２３の先端に設けられた係合部２３ａがディテントレバー１５のＰレンジ保持凹部２４に嵌まり込んだときに、ディテントレバー１５がＰレンジの位置に保持され、該ディテントバネ２３の係合部２３ａがディテントレバー１５のＮｏｔＰレンジ保持凹部２５に嵌まり込んだときに、ディテントレバー１５がＮｏｔＰレンジの位置に保持されるようになっている。
【００２０】
Ｐレンジでは、パーキングロッド１８がロックレバー２１に接近する方向に移動して、円錐体１９の太い部分がロックレバー２１を押し上げてロックレバー２１の凸部２１ａがパーキングギヤ２０に嵌まり込んでパーキングギヤ２０をロックした状態となり、それによって、自動変速機２７の出力軸（駆動輪）がロックされた状態（パーキング状態）に保持される。
【００２１】
一方、ＮｏｔＰレンジでは、パーキングロッド１８がロックレバー２１から離れる方向に移動して、円錐体１９の太い部分がロックレバー２１から抜け出てロックレバー２１が下降し、それによって、ロックレバー２１の凸部２１ａがパーキングギヤ２０から外れてパーキングギヤ２０のロックが解除され、自動変速機２７の出力軸が回転可能な状態（走行可能な状態）に保持される。
【００２２】
尚、前述した出力軸センサ１４は、モータ１２の減速機構２６の出力軸１３の回転角度に応じた電圧を出力する回転センサ（例えばポテンショメータ）によって構成され、その出力電圧によって現在のレンジがＰレンジとＮｏｔＰレンジのいずれであるかを確認できるようになっている。
【００２３】
次に、図２に基づいてモータ１２の構成を説明する。本実施形態では、モータ１２として、スイッチトリラクタンスモータ（以下「ＳＲモータ」と表記する）が用いられている。このＳＲモータ１２は、ステータ３１とロータ３２が共に突極構造を持つモータで、永久磁石が不要で構造が簡単であるという利点がある。円筒状のステータ３１の内周部には、例えば１２個の突極３１ａが等間隔に形成され、これに対して、ロータ３２の外周部には、例えば８個の突極３２ａが等間隔に形成され、ロータ３２の回転に伴い、ロータ３２の各突極３２ａがステータ３１の各突極３１ａと微小ギャップを介して順番に対向するようになっている。ステータ３１の１２個の突極３１ａには、Ｕ相、Ｖ相、Ｗ相の合計１２個の巻線３３が順番に巻回されている。尚、ステータ３１とロータ３２の突極３１ａ，３２ａの数は適宜変更しても良いことは言うまでもない。
【００２４】
図２に示すように、Ｕ相、Ｖ相、Ｗ相の合計１２個の巻線３３の巻回順序は、ステータ３１の１２個の突極３１ａに対して、例えば、Ｖ相→Ｗ相→Ｕ相→Ｖ相→Ｗ相→Ｕ相→Ｖ相→Ｗ相→Ｕ相→Ｖ相→Ｗ相→Ｕ相の順序で巻回されている。図３に示すように、Ｕ相、Ｖ相、Ｗ相の合計１２個の巻線３３がＹ結線され（各相の４個の巻線３３はそれぞれ直列に接続され）、１系統の駆動コイル３５が構成されている。この駆動コイル３５は、車両に搭載されたバッテリ（図示せず）を電源としてモータドライバ３７によって駆動される。尚、図３に示すモータドライバ３７の回路構成例では、各相毎にトランジスタ等のスイッチング素子３９を１個ずつ設けたユニポーラ駆動方式の回路構成としているが、各相毎にスイッチング素子を２個ずつ設けたバイポーラ駆動方式の回路構成を採用しても良い。
【００２５】
本実施形態では、駆動コイル３５の中性点を、バッテリの正極（電圧Ｖｂ）側に接続し、駆動コイル３５の各相の巻線３３の一端をモータドライバ３７の各スイッチング素子３９に接続した構成となっている。このモータドライバ３７の各スイッチング素子３９のオン／オフは、ＥＣＵ４１のＣＰＵ４１ａ（制御手段）によって制御される。
【００２６】
各相の巻線３３の断線を検出するために、各相の巻線３３の通電ラインにそれぞれ断線検出回路６０が設けられている。各相の断線検出回路６０は、直流電源電圧Ｖｃｃ（例えば５Ｖ）側とグラウンド側との間に２個の抵抗６１，６２を直列に接続すると共に、両抵抗６１，６２の中間接続点を各相の通電ラインに接続し、両抵抗６１，６２の中間接続点を信号線を介してＣＰＵ４１ａの各入力ポートに接続し、両抵抗６１，６２の中間接続点の電圧レベル（各相の通電ラインの電圧レベル）を各入力ポートを介して断線検出信号としてＣＰＵ４１ａに読み込むようになっている。この場合、直流電源電圧Ｖｃｃ側の抵抗６１の抵抗値は例えば３０ｋΩに設定され、グラウンド側の抵抗６２の抵抗値は例えば１０ｋΩに設定されている。
【００２７】
例えば、巻線３３が正常（断線なし）の場合は、スイッチング素子３９をオフすると、両抵抗６１，６２の中間接続点の電圧レベル（断線検出信号）が巻線３３を介して印加されるバッテリ電圧Ｖｂによって上昇して、断線検出信号がハイレベルとなる。そして、スイッチング素子３９をオンすると、両抵抗６１，６２の中間接続点が該スイッチング素子３９を介してグラウンド側に導通した状態となるため、断線検出信号がローレベルとなる。
【００２８】
これに対し、巻線３３が断線している場合は、スイッチング素子３９をオフしても、両抵抗６１，６２の中間接続点には巻線３３を介してバッテリ電圧Ｖｂが印加されないため、断線検出信号がローレベルに維持され、ハイレベルには反転しない。
【００２９】
このような関係から、ＥＣＵ４１のＣＰＵ４１ａは、各相のスイッチング素子３９をオフしたときに、各相の断線検出信号がハイレベルになれば、各相の巻線３３が正常（断線なし）と判定し、各相のスイッチング素子３９をオフしたときに、各相の断線検出信号がローレベルのまま変化しなければ、各相の巻線３３が断線していると判定する。もし、２相以上の巻線３３が断線すると、ロータ３２を回転駆動できないため、２相以上の巻線３３の断線が検出された場合は、全相の通電を禁止し、インストルメントパネル（図示せず）に設けられた警告表示部３８（警告表示手段）に警告表示させる。
【００３０】
本実施形態では、ＥＣＵ４１の回路基板に、ＣＰＵ４１ａとモータドライバ３７と各相の断線検出回路６０を搭載するようにしたが、モータドライバ３７及び／又は断線検出回路６０をＥＣＵ４１の外部に設けるようにしても良い。
【００３１】
図４に示すように、ＥＣＵ４１は、レンジ切換制御装置４２に搭載され、このレンジ切換制御装置４２には、Ｐレンジへの切換操作を行うＰレンジスイッチ４３と、ＮｏｔＰレンジへの切換操作を行うＮｏｔＰレンジスイッチ４４の操作信号が入力される。Ｐレンジスイッチ４３又はＮｏｔＰレンジスイッチ４４の操作により選択されたレンジは、インストルメントパネル（図示せず）に設けられたレンジ表示部４５に表示される。
【００３２】
ＳＲモータ１２には、ロータ３２の回転位置を検出するためのエンコーダ４６が設けられている。このエンコーダ４６は、例えば磁気式のロータリエンコーダにより構成されており、その具体的な構成は、図５及び図６に示すように、Ｎ極とＳ極が円周方向に交互に等ピッチで着磁された円環状のロータリマグネット４７がロータ３２の側面に同軸状に固定され、このロータリマグネット４７に対向する位置に、３個のホールＩＣ等の磁気検出素子４８，４９，５０が配置された構成となっている。本実施形態では、ロータリマグネット４７のＮ極とＳ極の着磁ピッチが７．５°に設定されている。このロータリマグネット４７の着磁ピッチ（７．５°）は、ＳＲモータ１２の励磁１回当たりのロータ３２の回転角度と同じに設定されている。後述するように、１−２相励磁方式でＳＲモータ１２の通電相の切り換えを６回行うと、全ての通電相の切り換えが一巡してロータ３２とロータリマグネット４７が一体的に７．５°×６＝４５°回転する。このロータリマグネット４７の４５°の回転角度範囲に存在するＮ極とＳ極の数は、合計６極となっている。
【００３３】
更に、ロータ３２の基準回転位置に相当する位置のＮ極（Ｎ’）とその両側のＳ極（Ｓ’）がそれ以外の磁極よりも径方向の幅が広くなるように形成されている。尚、本実施形態では、ＳＲモータ１２の通電相の切り換えが一巡する間にロータ３２とロータリマグネット４７が一体的に４５°回転することを考慮して、ロータ３２の基準回転位置に相当する幅広な着磁部分（Ｎ’）が４５°ピッチで形成されており、従って、ロータリマグネット４７全体として、基準回転位置に相当する幅広な着磁部分（Ｎ’）が合計８個形成されている。尚、基準回転位置に相当する幅広な着磁部分（Ｎ’）は、ロータリマグネット４７全体として、１個のみ形成した構成としても良い。
【００３４】
このロータリマグネット４７に対して３個の磁気検出素子４８，４９，５０が次のような位置関係で配置されている。Ａ相信号を出力する磁気検出素子４８とＢ相信号を出力する磁気検出素子４９は、ロータリマグネット４７の幅狭な着磁部分（Ｎ，Ｓ）と幅広な着磁部分（Ｎ’，Ｓ’）の両方に対向し得る位置の同一円周上に配置されている。一方、Ｚ相信号を出力する磁気検出素子５０は、ロータリマグネット４７の幅狭な着磁部分（Ｎ，Ｓ）よりも径方向外側又は内側の位置で、且つ、幅広な着磁部分（Ｎ’，Ｓ’）のみに対向し得る位置に配置されている。Ａ相信号とＢ相信号を出力する２個の磁気検出素子４８，４９の間隔は、図７に示すように、Ａ相信号とＢ相信号の位相差が、電気角で９０°（機械角で３．７５°）となるように設定されている。ここで、“電気角”はＡ・Ｂ相信号の発生周期を１周期（３６０°）とした場合の角度で、“機械角”は機械的な角度（ロータ３２の１回転を３６０°とした場合の角度）であり、Ａ相信号の立ち下がり（立ち上がり）からＢ相信号の立ち下がり（立ち上がり）までにロータ３２が回転する角度がＡ相信号とＢ相信号の位相差の機械角に相当する。また、Ｚ相信号を出力する磁気検出素子５０は、Ｚ相信号とＢ相信号（又はＡ相信号）との位相差が０となるように配置されている。
【００３５】
各磁気検出素子４８，４９，５０の出力は、Ｎ極（Ｎ’極）と対向したときにハイレベル“１”となり、Ｓ極（Ｓ’極）と対向したときにローレベル“０”となる。尚、Ｚ相信号用の磁気検出素子５０の出力は、ロータ３２の基準回転位置に相当する幅広なＮ’極に対向する毎にハイレベル“１”となり、それ以外の位置では、ローレベル“０”となる。
【００３６】
本実施形態では、ＥＣＵ４１のＣＰＵ４１ａが後述するエンコーダカウンタルーチンによってＡ相信号とＢ相信号の立ち上がり／立ち下がりの両方のエッジをカウントして、そのエンコーダカウント値に応じてＳＲモータ１２の通電相を切り換えることでロータ３２を回転駆動する。この際、Ａ相信号とＢ相信号の発生順序によってロータ３２の回転方向を判定し、正回転（Ｐレンジ→ＮｏｔＰレンジの回転方向）ではエンコーダカウント値をカウントアップし、逆回転（ＮｏｔＰレンジ→Ｐレンジの回転方向）ではエンコーダカウント値をカウントダウンする。これにより、ロータ３２が正回転／逆回転のいずれの方向に回転しても、エンコーダカウント値とロータ３２の回転位置との対応関係が維持されるため、正回転／逆回転のいずれの回転方向でも、エンコーダカウント値によってロータ３２の回転位置（回転角度）を検出して、その回転位置に対応した相の巻線３３に通電してロータ３２を回転駆動する。
【００３７】
図７は、ロータ３２を逆回転方向（ＮｏｔＰレンジ→Ｐレンジの回転方向）に回転させたときのエンコーダ４６の出力波形と通電相の切換パターンを示している。逆回転方向（ＮｏｔＰレンジ→Ｐレンジの回転方向）と正回転方向（Ｐレンジ→ＮｏｔＰレンジの回転方向）のいずれの場合も、ロータ３２が７．５°回転する毎に１相通電と２相通電とを交互に切り換えるようになっており、ロータ３２が４５°回転する間に、ロータ３２の回転方向に応じて、Ｕ相通電→ＵＷ相通電→Ｗ相通電→ＶＷ相通電→Ｖ相通電→ＵＶ相通電の順序又はその反対の順序で通電相の切り換えを一巡するようになっている。
【００３８】
そして、この通電相の切り換え毎に、ロータ３２が７．５°ずつ回転して、Ａ相、Ｂ相信号用の磁気検出素子４８，４９に対向するロータリマグネット４７の磁極がＮ極→Ｓ極（Ｎ’極→Ｓ’極）又はＳ極→Ｎ極（Ｓ’極→Ｎ’極）に変化してＡ相信号とＢ相信号のレベルが交互に反転し、それによって、ロータ３２が７．５°回転する毎に、エンコーダカウント値が２ずつカウントアップ（又はカウントダウン）する。また、通電相の切り換えが一巡してロータ３２が４５°回転する毎に、Ｚ相用の磁気検出素子５０がロータ３２の基準回転位置に相当する幅広なＮ’極に対向して、Ｚ相信号がハイレベル“１”となる。尚、本明細書では、Ａ相、Ｂ相、Ｚ相信号がハイレベル“１”となることを、Ａ相、Ｂ相、Ｚ相信号が出力されると言う場合がある。
【００３９】
このようなエンコーダ４６付きのＳＲモータ１２でレンジ切換制御を行う場合は、指令シフトレンジ（目標位置）がＰレンジからＮｏｔＰレンジ又はその反対方向に切り換えられる毎に、ロータ３２を回転駆動して、エンコーダカウント値に基づいてＳＲモータ１２の通電相を順次切り換えることで、ロータ３２を目標位置に向かって回転駆動するフィードバック制御（以下「Ｆ／Ｂ制御」と表記する）を実行し、エンコーダカウント値が目標位置に応じて設定された目標カウント値に到達した時点で、ロータ３２の回転位置が目標位置に到達したと判断してＦ／Ｂ制御を終了し、ロータ３２を目標位置で停止させるようにしている。
【００４０】
このＦ／Ｂ制御中は、エンコーダ４６のＡ相・Ｂ相信号出力タイミングに同期して、ロータ３２の回転方向に応じて、Ｕ相通電→ＵＷ相通電→Ｗ相通電→ＶＷ相通電→Ｖ相通電→ＵＶ相通電の順序又はその反対の順序で通電相を切り換える。一旦、ロータ３２が回転し始めると、１相の巻線３３が断線していても、ロータ３２は慣性により回り続けるため、Ｆ／Ｂ制御が可能であるが、Ｆ／Ｂ制御開始時の最初の通電相の巻線３３が断線している場合は、ロータ３２の回転を立ち上げることができないため、Ｆ／Ｂ制御は不可能である。
【００４１】
そこで、本実施形態では、ＣＰＵ４１ａは、Ｆ／Ｂ制御を開始する際に、いずれか１つの相の断線が検出されている場合には、断線の検出されていない２つの相の中から最初の通電相を設定するようにしている。具体的には、通電相の切り換え順序から見て、断線が検出された相（以下「断線相」という）の次に切り換えられる通電相を最初の通電相として設定するようにしている。このようにすれば、Ｆ／Ｂ制御開始後に、断線相が通電相として選択されるまでの通電相の切り換え回数（励磁回数）を最も多くすることができて、断線相が通電相となるまでにロータ３２の回転を十分に立ち上げてロータ３２の慣性力を十分に大きくすることができ、確実にＦ／Ｂ制御を実行することができる。
【００４２】
更に、本実施形態では、Ｆ／Ｂ制御を開始する際に、最初の通電相に所定時間通電してロータ３２をＦ／Ｂ制御開始位置に保持するＦ／Ｂ制御開始位置保持処理を所定時間実行した後、通電相を切り換えてロータ３２を回転駆動するようにしている。このようにすれば、Ｆ／Ｂ制御開始時のロータ３２の回転位置と最初の通電相との同期を確実にとることができて、信頼性の高いＦ／Ｂ制御を行うことができる。
【００４３】
この場合、いずれか１つの相の断線が検出されている場合は、Ｆ／Ｂ制御開始位置保持処理の時間（最初の通電相の通電時間）を通常よりも長い時間に設定するようにしている。つまり、正常時に最初の通電相となる相の巻線が断線している場合は、最初の通電相が正常時の最初の通電相からずらされるため、最初の通電相と実際のロータ３２の回転位置との位置関係がずれ、その結果、断線時には最初の通電相とロータ３２の回転位置との同期を取るのに要する時間が正常時よりも長くかかる。従って、いずれか１つの相の断線が検出されている場合は、最初の通電相の通電時間（Ｆ／Ｂ制御開始位置保持処理の時間）を通常よりも長い時間に設定すれば、最初の通電相とロータ３２の回転位置との同期をより確実に取ることができる。
【００４４】
以上説明した本実施形態のモータ制御は、レンジ切換制御装置４２のＥＣＵ４１のＣＰＵ４１ａによって後述する各ルーチンに従って実行される。以下、これら各ルーチンの処理内容を説明する。
【００４５】
［巻線断線検出］
図８及び図９に示す巻線断線検出ルーチンは、所定周期（例えば８ｍｓ周期）で起動され、特許請求の範囲でいう断線検出手段としての役割を果たす。本ルーチンでは、次のような方法で各相の巻線３３の断線を検出する。
【００４６】
図３に示すように、各相の巻線３３の通電ラインにそれぞれ断線検出回路６０を設け、各相の断線検出回路６０の両抵抗６１，６２の中間接続点の電圧レベル（各相の通電ラインの電圧レベル）をＣＰＵ４１ａの各入力ポートを介してＣＰＵ４１ａに読み込む。そして、各相の巻線３３が正常（断線なし）の場合は、モータドライバ３７のスイッチング素子３９をオフすると、両抵抗６１の中間接続点の電圧レベルが巻線３３を介して印加されるバッテリ電圧Ｖｂによって上昇して、ＣＰＵ４１ａの入力ポートの電圧レベル（以下「ポートレベル」という）がハイレベルとなる。その後、スイッチング素子３９をオンすると、両抵抗６１，６２の中間接続点が該スイッチング素子３９を介してグラウンド側に導通した状態となるため、ＣＰＵ４１ａのポートレベルがローレベルとなる。
【００４７】
これに対し、各相の巻線３３が断線している場合は、スイッチング素子３９をオフしても、両抵抗６１，６２の中間接続点には巻線３３を介してバッテリ電圧Ｖｂが印加されないため、ＣＰＵ４１ａのポートレベルがローレベルに維持され、ハイレベルには反転しない。
【００４８】
このような関係から、ＥＣＵ４１のＣＰＵ４１ａは、全相のスイッチング素子３９をオフして全相の巻線３３への通電をオフしているときに、各相のポートレベルがローレベルであるか否かで、各相の巻線３３が断線しているか否かを判定する。
【００４９】
図８及び図９の巻線断線検出ルーチンが起動されると、まずステップ１０１で、全相が通電オフの状態か否かを判定し、通電オフでなければ、以降の処理を行うことなく、本ルーチンを終了する。その後、全相が通電オフの状態となれば、ステップ１０１からステップ１０２に進み、ＣＰＵ４１ａのＵ相のポートレベルがハイレベルであるか否かで、Ｕ相の巻線３３が正常（断線なし）であるか否かを判定し、もし、Ｕ相のポートレベルがローレベルになっていれば、ステップ１０３に進み、Ｕ相の巻線３３の断線と判断する。
【００５０】
この後、ステップ１０４に進み、Ｖ相のポートレベルがハイレベルであるか否かで、Ｖ相の巻線３３が正常（断線なし）であるか否かを判定し、もし、Ｖ相のポートレベルがローレベルになっていれば、ステップ１０５に進み、Ｖ相の巻線３３の断線と判断する。
【００５１】
この後、ステップ１０６に進み、Ｗ相のポートレベルがハイレベルであるか否かで、Ｗ相の巻線３３が正常（断線なし）であるか否かを判定し、もし、Ｗ相のポートレベルがローレベルになっていれば、ステップ１０７に進み、Ｗ相の巻線３３の断線と判断する。
【００５２】
以上のようにしてＵ相、Ｖ相、Ｗ相の各相の巻線３３の断線の有無を判定した後、図９のステップ１０８に進み、３相のうち、２相以上が断線しているか否かを判定し、もし、２相以上が断線していれば、ロータ３２を回転駆動できないため、ステップ１０９に進み、全相の通電を禁止し、次のステップ１１０で、インストルメントパネルの警告表示部３８に警告表示させる。
【００５３】
一方、２相以上が断線していなければ、ステップ１１１に進み、１相のみが断線しているか否かを判定し、もし、１相のみが断線していれば、ステップ１１２に進み、１相断線フラグＸｄａｎｓｅｎをＯＮにセットする。
【００５４】
これに対し、上記ステップ１１１で、「Ｎｏ」と判定されれば、ステップ１１３に進み、全相が正常（断線なし）と判断し、次のステップ１１４に進み、１相断線フラグＸｄａｎｓｅｎをＯＦＦにセットする。
【００５５】
［エンコーダカウンタ］
次に、図１０に示すエンコーダカウンタルーチンの処理内容を説明する。本ルーチンは、ＡＢ相割り込み処理によりＡ相信号とＢ相信号の立ち上がり／立ち下がりの両方のエッジに同期して起動され、Ａ相信号とＢ相信号の立ち上がり／立ち下がりの両方のエッジを次のようにしてカウントする。本ルーチンが起動されると、まずステップ２０１で、Ａ相信号とＢ相信号の値Ａ（ｉ）　、Ｂ（ｉ）　を読み込み、次のステップ２０２で、図１１のカウントアップ値ΔＮ算出マップを検索して、Ａ相信号とＢ相信号の今回値Ａ（ｉ）　、Ｂ（ｉ）　と、前回値Ａ（ｉ−１）　、Ｂ（ｉ−１）　に応じたカウントアップ値ΔＮを算出する。
【００５６】
ここで、Ａ相信号とＢ相信号の今回値Ａ（ｉ）　、Ｂ（ｉ）　と、前回値Ａ（ｉ−１）　、Ｂ（ｉ−１）　を用いる理由は、Ａ相信号とＢ相信号の発生順序によってロータ３２の回転方向を判定するためであり、図１２に示すように、正回転（Ｐレンジ→ＮｏｔＰレンジの回転方向）ではカウントアップ値ΔＮをプラス値にしてエンコーダカウント値Ｎｃｎｔをカウントアップし、逆回転（ＮｏｔＰレンジ→Ｐレンジの回転方向）ではカウントアップ値ΔＮをマイナス値にしてエンコーダカウント値Ｎｃｎｔをカウントダウンする。
【００５７】
カウントアップ値ΔＮの算出後、ステップ２０３に進み、前回のエンコーダカウント値Ｎｃｎｔに上記ステップ２０２で算出したカウントアップ値ΔＮを加算して、今回のエンコーダカウント値Ｎｃｎｔを求める。この後、ステップ２０４に進み、次回のカウント処理のために、Ａ相信号とＢ相信号の今回値Ａ（ｉ）　、Ｂ（ｉ）　をそれぞれＡ（ｉ−１）　、Ｂ（ｉ−１）　として記憶して本ルーチンを終了する。
【００５８】
［Ｆ／Ｂ制御開始位置保持処理］
図１３及び図１４に示すＦ／Ｂ制御開始位置保持処理ルーチンは、所定周期（例えば１ｍｓ周期）で起動され、Ｆ／Ｂ制御開始位置保持処理時の通電相判定値Ｍｐｔｎ（通電相）を次のようにして設定する。
【００５９】
本ルーチンが起動されると、まずステップ３００で、Ｆ／Ｂ制御開始位置保持処理実行条件が成立しているか否かを判定する。ここで、Ｆ／Ｂ制御開始位置保持処理実行条件は、次の２つの条件▲１▼、▲２▼を同時に満たすことである。
【００６０】
▲１▼Ｆ／Ｂ制御開始前（Ｆ／Ｂ許可フラグＸｆｂ＝ＯＦＦ）であること
▲２▼ロータ３２の目標位置（目標カウント値Ａｃｎｔ）が変更されて目標カウント値Ａｃｎｔとエンコーダカウント値Ｎｃｎｔとの差（Ａｃｎｔ−Ｎｃｎｔ）の絶対値が所定値以上になっていること
これら２つの条件▲１▼、▲２▼のいずれか一方でも満たさない条件があれば、以降の処理を行うことなく、本ルーチンを終了する。
【００６１】
これに対して、上記２つの条件▲１▼、▲２▼を両方とも満たせば、Ｆ／Ｂ制御開始位置保持処理実行条件が成立し、ステップ３０１に進み、Ｆ／Ｂ制御開始位置保持処理の時間をカウントする通電時間カウンタＣＴ１をカウントアップする。この後、ステップ３０２に進み、１相断線フラグＸｄａｎｓｅｎがＯＮ（いずれか１相の断線有り）であるか否かを判定し、１相断線フラグＸｄａｎｓｅｎがＯＮ（いずれか１相の断線有り）の場合は、ステップ３０３に進み、Ｆ／Ｂ制御開始位置保持処理の時間Ｔｈｏｌｄを正常時よりも長い時間（例えば１００ｍｓ）にセットし、１相断線フラグＸｄａｎｓｅｎがＯＦＦ（断線無し）の場合は、ステップ３０４に進み、Ｆ／Ｂ制御開始位置保持処理の時間Ｔｈｏｌｄを比較的短い時間（例えば１０ｍｓ）にセットする。
【００６２】
この後、ステップ３０５に進み、Ｆ／Ｂ制御開始位置保持処理の実行時間ＣＴ１が上記ステップ３０３又は３０４で設定した時間Ｔｈｏｌｄを越えたか否かを判定する。
【００６３】
まだ、Ｆ／Ｂ制御開始位置保持処理の実行時間ＣＴ１が設定時間Ｔｈｏｌｄを越えていなければ、ステップ３０６に進み、保持処理時通電相記憶済みフラグＸｈｏｌｄ＝ＯＦＦ（未記憶）であるか否か（つまりＦ／Ｂ制御開始位置保持処理の開始直前のタイミングであるか否か）を判定し、保持処理時通電相記憶済みフラグＸｈｏｌｄ＝ＯＦＦであれば、ステップ３０７に進み、Ｆ／Ｂ制御開始位置保持処理時の通電相判定値Ｍｐｔｎを現在の位置カウンタ値（Ｎｃｎｔ−Ｇｃｎｔ）にセットする。
Ｍｐｔｎ＝Ｎｃｎｔ−Ｇｃｎｔ
【００６４】
ここで、位置カウンタ値（Ｎｃｎｔ−Ｇｃｎｔ）は、エンコーダカウント値Ｎｃｎｔを基準位置学習値Ｇｃｎｔで補正した値であり、ロータ３２の現在位置を正確に表した値となっている。尚、基準位置学習値Ｇｃｎｔは、ＥＣＵ４１への電源投入後の初期駆動時に学習したロータ３２の基準位置の学習値である。
【００６５】
この後、ステップ３０８に進み、通電相判定値Ｍｐｔｎを“１２”で割り算して、その余りＭｐｔｎ％１２を求める。ここで、“１２”は、通電相を一巡させる間のエンコーダカウント値Ｎｃｎｔ（通電相判定値Ｍｐｔｎ）の増減量に相当する。このＭｐｔｎ％１２の値に基づいて、図１８の変換テーブルによって通電相が決定される。
【００６６】
この後、図１４のステップ３０９に進み、Ｍｐｔｎ％１２＝２，３，６，７，１０，１１であるか否かによって１相通電（Ｕ相通電、Ｖ相通電、Ｗ相通電）であるか否かを判定し、１相通電であれば、ステップ３１０に進み、通電相判定値Ｍｐｔｎを１回の励磁分の回転角度に相当する“２”だけ増加して２相通電（ＵＶ相通電、ＶＷ相通電、ＵＷ相通電）に補正する。これにより、Ｆ／Ｂ制御開始位置保持処理を１相通電と比べて保持トルクの大きい２相通電で実行することで、ロータ３２がＦ／Ｂ制御開始位置付近で振動することを防止して、ロータ３２をＦ／Ｂ制御開始位置に確実に停止保持できるようにする。
【００６７】
そして、次のステップ３１１で、後述する図１５の１相断線時通電相補正ルーチンを実行して、１相断線フラグＸｄａｎｓｅｎがＯＮ（いずれか１相の断線有り）の場合は、通電相判定値Ｍｐｔｎを補正する。この後、ステップ３１２に進み、保持処理時通電相記憶済みフラグＸｈｏｌｄ＝ＯＮ（記憶済み）にセットして本ルーチンを終了する。
【００６８】
この後、本ルーチンが起動されたときには、ステップ３０６で「Ｎｏ」と判定され、ステップ３０７〜３１２の処理が実行されない。これにより、Ｆ／Ｂ制御開始位置保持処理時の通電相判定値Ｍｐｔｎ（通電相）を設定する処理は、Ｆ／Ｂ制御開始位置保持処理の開始直前に１回のみ実行される。
【００６９】
その後、Ｆ／Ｂ制御開始位置停止保持処理の実行時間ＣＴ１が前記ステップ３０３又は３０４で設定した時間Ｔｈｏｌｄを越えた時点で、ステップ３０５で「Ｙｅｓ」と判定されて、Ｆ／Ｂ制御開始位置保持処理を終了し、図１３のステップ３１３に進み、Ｆ／Ｂ制御開始位置保持処理時の通電相判定値Ｍｐｔｎに、回転方向に応じて通電相の位相進み分のカウント値（例えば４又は３）を加算又は減算して、次の通電相判定値Ｍｐｔｎを設定し、ロータ３２の回転駆動を開始する。この後、ステップ３１４に進み、Ｆ／Ｂ許可フラグＸｆｂ＝ＯＮ（Ｆ／Ｂ制御実行）にセットする。
【００７０】
［１相断線時通電相補正］
図１５に示す１相断線時通電相補正は、図１４のステップ３１１で起動されるサブルーチンである。本ルーチンが起動されると、まずステップ４０１で、１相断線フラグＸｄａｎｓｅｎがＯＮ（いずれか１相の断線有り）であるか否かを判定し、１相断線フラグＸｄａｎｓｅｎがＯＦＦ（断線無し）であれば、以降の処理を行うことなく、本ルーチンを終了する。
【００７１】
これに対し、１相断線フラグＸｄａｎｓｅｎがＯＮ（いずれか１相の断線有り）の場合は、ステップ４０１からステップ４０２に進み、Ｕ相の断線であるか否かを判定し、Ｕ相の断線であれば、ステップ４０３に進み、回転方向指示値Ｄが正回転（Ｐレンジ→ＮｏｔＰレンジの回転方向）を意味する「１」であるか否かを判定する。その結果、回転方向指示値Ｄ＝１（正回転）と判定されれば、ステップ４０４に進み、通電相判定値Ｍｐｔｎ＝１０（Ｖ相通電）に設定し、回転方向指示値Ｄ＝−１（逆回転）と判定されれば、ステップ４０５に進み、通電相判定値Ｍｐｔｎ＝３（Ｗ相通電）に設定する。これにより、Ｆ／Ｂ制御を開始する際に、通電相の切り換え順序から見て、断線が検出されたＵ相の次に切り換えられる通電相が最初の通電相（Ｆ／Ｂ制御開始位置保持処理時の通電相）として設定される。その結果、Ｕ相断線時の通電相の切り換え順序は、正回転時には、Ｖ相→ＶＷ相→Ｗ相→ＵＷ相→Ｕ相→ＵＶ相の順序となり、逆回転時には、Ｗ相→ＶＷ相→Ｖ相→ＵＶ相→Ｕ相→ＵＷ相の順序となる。
【００７２】
また、Ｖ相が断線している場合は、ステップ４０６〜４０９の処理により、正回転時に通電相判定値Ｍｐｔｎ＝２（Ｗ相通電）に設定し、逆回転時に通電相判定値Ｍｐｔｎ＝７（Ｕ相通電）に設定する。その結果、Ｖ相断線時の通電相の切り換え順序は、正回転時には、Ｗ相→ＵＷ相→Ｕ相→ＵＶ相→Ｖ相→ＶＷ相の順序となり、逆回転時には、Ｕ相→ＵＷ相→Ｗ相→ＶＷ相→Ｖ相→ＵＶ相の順序となる。
【００７３】
また、Ｗ相が断線している場合は、ステップ４１０〜４１３の処理により、正回転時に通電相判定値Ｍｐｔｎ＝６（Ｕ相通電）に設定し、逆回転時に通電相判定値Ｍｐｔｎ＝１１（Ｖ相通電）に設定する。その結果、Ｗ相断線時の通電相の切り換え順序は、正回転時には、Ｕ相→ＵＶ相→Ｖ相→ＶＷ相→Ｗ相→ＵＷ相の順序となり、逆回転時には、Ｖ相→ＵＶ相→Ｕ相→ＵＷ相→Ｗ相→ＶＷ相の順序となる。
尚、通電相の切り換え順序は、最終的には、後述する図１７の通電相設定ルーチンによって決定される。
【００７４】
［Ｆ／Ｂ制御］
次に、図１６に示すＦ／Ｂ制御ルーチンの処理内容を説明する。本ルーチンは、ＡＢ相割り込み処理により実行され、Ｆ／Ｂ制御実行条件が成立しているときに、ロータ３２の回転位置（エンコーダカウント値Ｎｃｎｔ−Ｇｃｎｔ）が目標位置（目標カウント値Ａｃｎｔ）から例えば０．５°以内に到達するまで、エンコーダカウント値Ｎｃｎｔと基準位置学習値Ｇｃｎｔとに基づいて通電相を切り換えてロータ３２を回転させる。
【００７５】
図１６のＦ／Ｂ制御ルーチンが起動されると、まずステップ６０１で、Ｆ／Ｂ許可フラグＸｆｂがＯＮにセットされているか否か（Ｆ／Ｂ制御実行条件が成立しているか否か）を判定し、Ｆ／Ｂ許可フラグＸｆｂがＯＦＦ（Ｆ／Ｂ制御実行条件が不成立）であれば、以降の処理を行うことなく、本ルーチンを終了する。
【００７６】
これに対して、Ｆ／Ｂ許可フラグＸｆｂがＯＮにセットされていれば、ステップ６０２に進み、後述する図１７の通電相設定ルーチンを実行して、現在のエンコーダカウント値Ｎｃｎｔと基準位置学習値Ｇｃｎｔとに基づいて通電相を設定し、次のステップ６０３で、当該通電相を励磁する通電処理を実行する。
【００７７】
［通電相設定］
図１７に示す通電相設定ルーチンは、図１６のＦ／Ｂ制御ルーチンのステップ６０２で起動されるサブルーチンである。本ルーチンが起動されると、まずステップ６１１で、回転方向指示値Ｄが正回転（Ｐレンジ→ＮｏｔＰレンジの回転方向）を意味する「１」であるか否かを判定する。その結果、回転方向指示値Ｄ＝１（正回転）と判定されれば、ステップ６１２に進み、回転方向が回転方向指示に反して逆転したか否か（エンコーダカウント値Ｎｃｎｔが減少したか否か）を判定し、逆転していなければ、ステップ６１３に進み、現在のエンコーダカウント値Ｎｃｎｔ、基準位置学習値Ｇｃｎｔ、正回転方向位相進み量Ｋ１、速度補正量Ｋｓを用いて通電相判定値Ｍｐｔｎを次式により更新する。
Ｍｐｔｎ＝Ｎｃｎｔ−Ｇｃｎｔ＋Ｋ１＋Ｋｓ
【００７８】
ここで、正回転方向位相進み量Ｋ１は、ロータ３２を正回転させるのに必要な通電相の位相進み量（ロータ３２の現在位置に対する通電相の位相進み量）であり、例えばＫ１＝４に設定されている。
【００７９】
また、速度補正量Ｋｓは、ロータ３２の回転速度に応じて設定される位相進み補正量である。低速域では、速度補正量Ｋｓが０に設定され、高速になるに従って、速度補正量Ｋｓが例えば１又は２に増加される。これにより、ロータ３２の回転速度に適した通電相となるように通電相判定値Ｍｐｔｎが補正される。
【００８０】
一方、上記ステップ６１２で、回転方向が回転方向指示に反して逆転したと判定された場合は、逆転防止のために通電相判定値Ｍｐｔｎを更新しない。この場合は、逆転直前の通電相（前回の通電相）に通電され、ロータ３２の逆転を抑制する方向に制動トルクが発生する。
【００８１】
また、上記ステップ６１１で、回転方向指示値Ｄ＝−１（逆回転）、つまりＮｏｔＰレンジ→Ｐレンジの回転方向と判定された場合は、ステップ６１４に進み、回転方向が回転方向指示に反して逆転したか否か（エンコーダカウント値Ｎｃｎｔが増加したか否か）を判定し、逆転していなければ、ステップ６１５に進み、現在のエンコーダカウント値Ｎｃｎｔ、基準位置学習値Ｇｃｎｔ、逆回転方向位相進み量Ｋ２、速度補正量Ｋｓを用いて通電相判定値Ｍｐｔｎを次式により更新する。
Ｍｐｔｎ＝Ｎｃｎｔ−Ｇｃｎｔ−Ｋ２−Ｋｓ
【００８２】
ここで、逆回転方向位相進み量Ｋ２は、ロータ３２を逆回転させるのに必要な通電相の位相進み量（ロータ３２の現在位置に対する通電相の位相進み量）であり、例えばＫ２＝３に設定されている。速度補正量Ｋｓは正回転の場合と同じである。
【００８３】
一方、上記ステップ６１４で、回転方向が回転方向指示に反して逆転したと判定された場合は、逆転防止のために通電相判定値Ｍｐｔｎを更新しない。この場合は、逆転直前の通電相（前回の通電相）に通電され、ロータ３２の逆転を抑制する方向に制動トルクが発生する。
【００８４】
以上のようにして、今回の通電相判定値Ｍｐｔｎを決定した後、ステップ６１５に進み、通電相判定値Ｍｐｔｎを“１２”で割り算して、その余りＭｐｔｎ％１２を求める。ここで、“１２”は、通電相を一巡させる間のエンコーダカウント値Ｎｃｎｔの増減量に相当する。
【００８５】
Ｍｐｔｎ％１２の算出後、ステップ６１６に進み、図１８の変換テーブルを検索して、Ｍｐｔｎ％１２に対応する通電相を選択し、これを今回の通電相に設定する。
【００８６】
図１９はＵ相から回転を開始する場合に最初に通電する相を説明するタイムチャートである。この場合、速度補正量Ｋｓ＝０となるため、正回転（Ｐレンジ→ＮｏｔＰレンジ方向への回転）を開始する場合は、通電相判定値Ｍｐｔｎは次式により算出される。
Ｍｐｔｎ＝Ｎｃｎｔ−Ｇｃｎｔ＋Ｋ１＝Ｎｃｎｔ−Ｇｃｎｔ＋４
【００８７】
Ｕ相から正回転を開始する場合は、（Ｎｃｎｔ−Ｇｃｎｔ）／１２の余りは、６となるため、Ｍｐｔｎ％１２＝６＋４＝１０となり、最初の通電相はＶ相となる。
【００８８】
一方、Ｕ相から逆回転（ＮｏｔＰレンジ→Ｐレンジ方向への回転）を開始する場合は、通電相判定値Ｍｐｔｎは次式により算出される。
Ｍｐｔｎ＝Ｎｃｎｔ−Ｇｃｎｔ−Ｋ２＝Ｎｃｎｔ−Ｇｃｎｔ−３
Ｕ相から逆回転を開始する場合は、Ｍｐｔｎ％１２＝６−３＝３となり、最初の通電相はＷ相となる。
【００８９】
このように、正回転方向位相進み量Ｋ１と逆回転方向位相進み量Ｋ２をそれぞれ４と３に設定することで、正回転方向と逆回転方向の通電相の切換パターンを対称にすることができ、正回転方向と逆回転方向のいずれの場合も、ロータ３２の現在位置から２ステップ分ずらした位置の相を最初に励磁して回転を開始することができる。
【００９０】
以上説明した本実施形態（１）によれば、ＳＲモータ１２のＦ／Ｂ制御を開始する際に、いずれか１つの相の断線が検出されている場合は、断線の検出されていない相の中から最初の通電相を設定するようにしたので、１つの相の巻線が断線していても、それ以外の相の巻線を用いてロータ３２の回転を立ち上げることができて、Ｆ／Ｂ制御を行うことができる。これにより、本実施形態（１）のように、ＳＲモータ１２の駆動コイル３５を１系統のみにすることが可能となり、ＳＲモータ１２の低コスト化・小型化を実現することができる。
【００９１】
しかも、本実施形態（１）では、Ｆ／Ｂ制御を開始する際に、いずれか１つの相の断線が検出されている場合は、通電相の切り換え順序から見て、断線が検出された相（断線相）の次に切り換えられる通電相を最初の通電相として設定するようにしたので、Ｆ／Ｂ制御開始後に、断線相が通電相として選択されるまでの通電相の切り換え回数（励磁回数）を最も多くすることができて、断線相が通電相となるまでにロータ３２の回転を十分に立ち上げてロータ３２の慣性力を十分に大きくすることができ、より確実にＦ／Ｂ制御を実行することができる。
【００９２】
また、本実施形態（１）では、Ｆ／Ｂ制御を開始する際に、最初の通電相に所定時間通電してロータ３２をＦ／Ｂ制御開始位置に保持するＦ／Ｂ制御開始位置保持処理を実行した後、通電相を切り換えてロータ３２を回転駆動するようにしたので、Ｆ／Ｂ制御開始時のロータ３２の回転位置と最初の通電相との同期を確実にとることができて、信頼性の高いＦ／Ｂ制御を行うことができる。
【００９３】
更に、本実施形態（１）では、いずれか１つの相の断線が検出されている場合に、最初の通電相が正常時の最初の通電相からずらされるため、最初の通電相とロータ３２の回転位置との同期を取るのに要する時間が正常時よりも長くかかるという事情を考慮して、いずれか１つの相の断線が検出されている場合は、Ｆ／Ｂ制御開始位置保持処理の時間（最初の通電相の通電時間）を通常よりも長い時間に設定するようにしたので、最初の通電相とロータ３２の回転位置との同期をより確実に取ることができる。
【００９４】
《実施形態（２）》
上記実施形態（１）では、各相の通電ラインの電圧レベル（各相の断線検出回路６０の両抵抗６１，６２の中間接続点の電圧レベル）を検出することで、各相の巻線３３が断線しているか否かを判定するようにしたが、図２０及び図２１に示す本発明の実施形態（２）では、各相の通電ラインに流れる励磁電流を電流センサ６３で検出することで、各相の巻線３３が断線しているか否かを判定するようにしている。以下、前記実施形態（１）と異なる部分についてのみ説明する。
【００９５】
本実施形態（２）では、図２０に示すように、駆動コイル３５の中性点をバッテリ４０の負極側に接続し、各相の巻線３３の一端をモータドライバ３７の各スイッチング素子３９を介してバッテリ４０の正極側に接続し、ＥＣＵ４１のＣＰＵ４１ａによってモータドライバ３７の各スイッチング素子３９をオン／オフすることで、各相の巻線３３への通電をオン／オフするようになっている。
【００９６】
各相の通電ラインには、それぞれ電流センサ６３が設けられ、各相の電流センサ６３の出力信号がＥＣＵ４１のＣＰＵ４１ａの各入力ポートに入力されるようになっている。
【００９７】
各相の巻線３３が正常（断線なし）の場合は、スイッチング素子３９がオンされた通電相の電流センサ６３で励磁電流が検出されるが、巻線３３が断線している場合は、スイッチング素子３９をオンしても、その相の巻線３３には励磁電流が流れないため、その相の電流センサ６３で励磁電流が検出されない。
【００９８】
このような関係から、ＥＣＵ４１のＣＰＵ４１ａは、各相のスイッチング素子３９をオンしたときに、各相の電流センサ６３で励磁電流が検出されれば、各相の巻線３３が断線していないと判断し、各相のスイッチング素子３９をオンしても、各相の電流センサ６３で励磁電流が検出されなければ、各相の巻線３３が断線していると判断する。
【００９９】
以上説明した本実施形態（２）の巻線断線検出は、図２１の巻線断線検出ルーチンによって実行される。本ルーチンは、所定周期（例えば８ｍｓ周期）で起動され、特許請求の範囲でいう断線検出手段としての役割を果たす。本ルーチンが起動されると、まずステップ７０１で、Ｕ相の通電中（Ｕ相のスイッチング素子３９のオン中）であるか否かを判定し、Ｕ相の通電中であれば、ステップ７０２に進み、Ｕ相の電流センサ６３でＵ相の励磁電流が検出されたか否かを判定する。その結果、Ｕ相の励磁電流が検出されなければ、ステップ７０３に進み、Ｕ相の断線と判定する。
【０１００】
この後、ステップ７０４に進み、Ｖ相の通電中（Ｖ相のスイッチング素子３９のオン中）であるか否かを判定し、Ｖ相の通電中であれば、ステップ７０５に進み、Ｖ相の電流センサ６３でＶ相の励磁電流が検出されたか否かを判定する。その結果、Ｖ相の励磁電流が検出されなければ、ステップ７０６に進み、Ｖ相の断線と判定する。
【０１０１】
この後、ステップ７０７に進み、Ｗ相の通電中（Ｗ相のスイッチング素子３９のオン中）であるか否かを判定し、Ｗ相の通電中であれば、ステップ７０８に進み、Ｗ相の電流センサ６３でＷ相の励磁電流が検出されたか否かを判定する。その結果、Ｗ相の励磁電流が検出されなければ、ステップ７０９に進み、Ｗ相の断線と判定する。
【０１０２】
以上のようにして、各相の断線の有無を判定した後、前記実施形態（１）で説明した図９のステップ１０８以降の処理を実行し、１相のみが断線していれば、１相断線フラグＸｄａｎｓｅｎをＯＮにセットし、２相以上が断線していれば、全相の通電を禁止し、警告表示部３８に警告表示させる。
【０１０３】
本実施形態（２）では、各相の通電ラインにそれぞれ電流センサ６３を設けたが、これらの代わりに、駆動コイル３５の中性点に流れる励磁電流を検出するようにしても良い。この場合は、電流センサを１個だけ設けるだけで良く、低コスト化することができる。
【０１０４】
尚、前記実施形態（１）では、Ｆ／Ｂ制御中に、１相通電と２相通電とを交互に切り換える１−２相励磁方式で駆動するようにしたが、１相通電のみで駆動する１相励磁方式、又は２相通電のみで駆動する２相励磁方式を採用しても良い。
【０１０５】
また、本発明に用いるエンコーダは、磁気式のエンコーダ４６に限定されず、例えば、光学式のエンコーダやブラシ式のエンコーダを用いても良い。
また、本発明に用いるモータは、ＳＲモータ１２に限定されず、エンコーダの出力信号のカウント値に基づいてロータの回転位置を検出してモータの通電相を順次切り換えるブラシレス型のモータであれば、ＳＲモータ以外のブラシレス型のモータを用いても良い。
【０１０６】
また、前記実施形態のレンジ切換装置は、ＰレンジとＮｏｔＰレンジの２つのレンジを切り換える構成であるが、例えば、ディテントレバー１５の回動動作に連動して自動変速機のレンジ切換弁とマニュアルバルブを切り換えて、自動変速機のＰ、Ｒ、Ｎ、Ｄ、…の各レンジを切り換えるレンジ切換装置にも本発明を適用して実施できる。
【０１０７】
その他、本発明は、レンジ切換装置に限定されず、ＳＲモータ等のブラシレス型のモータを駆動源とする各種の装置に適用して実施できることは言うまでもない。
【図面の簡単な説明】
【図１】本発明の実施形態（１）を示すレンジ切換装置の斜視図
【図２】ＳＲモータの構成を説明する図
【図３】実施形態（１）のＳＲモータを駆動する回路構成を示す回路図
【図４】レンジ切換装置の制御システム全体の構成を概略的に示す図
【図５】エンコーダのロータリマグネットの構成を説明する平面図
【図６】エンコーダの側面図
【図７】（ａ）はエンコーダの出力波形を示すタイムチャート、（ｂ）は通電相切り換えパターンを示すタイムチャート
【図８】巻線断線検出ルーチンの処理の流れを示すフローチャート（その１）
【図９】巻線断線検出ルーチンの処理の流れを示すフローチャート（その２）
【図１０】エンコーダカウンタルーチンの処理の流れを示すフローチャート
【図１１】カウントアップ値ΔＮ算出マップの一例を示す図
【図１２】指令レンジシフト、Ａ相信号、Ｂ相信号、エンコーダカウント値の関係を示すタイムチャート
【図１３】Ｆ／Ｂ制御開始位置保持処理ルーチンの処理の流れを示すフローチャート（その１）
【図１４】Ｆ／Ｂ制御開始位置保持処理ルーチンの処理の流れを示すフローチャート（その２）
【図１５】１相断線時通電相補正ルーチンの処理の流れを示すフローチャート
【図１６】モータＦ／Ｂ制御ルーチンの処理の流れを示すフローチャート
【図１７】通電相設定ルーチンの処理の流れを示すフローチャート
【図１８】ｍｏｄ（Ｍｐｔｎ／１２）から通電相への変換テーブルの一例を示す図
【図１９】通電処理を説明するタイムチャート
【図２０】実施形態（２）のＳＲモータを駆動する回路構成を示す回路図
【図２１】実施形態（２）の巻線断線検出ルーチンの処理の流れを示すフローチャート
【符号の説明】
１１…レンジ切換機構、１２…ＳＲモータ、１４…出力軸センサ、１５…ディテントレバー、１８…パーキングロッド、２０…パーキングギヤ、２１…ロックレバー、２３…ディテントバネ、２４…Ｐレンジ保持凹部、２５…ＮｏｔＰレンジ保持凹部、２６…減速機構、２７…自動変速機、３１…ステータ、３２…ロータ、３３…巻線、３５…駆動コイル、３７…モータドライバ、３８…警告表示部（警告表示手段）、４１…ＥＣＵ、４１ａ…ＣＰＵ（制御手段，断線検出手段）、４３…Ｐレンジスイッチ、４４…ＮｏｔＰレンジスイッチ、４６…エンコーダ、４７…ロータリマグネット、４８…Ａ相信号用の磁気検出素子、４９…Ｂ相信号用の磁気検出素子、５０…Ｚ相信号用の磁気検出素子。
【図１】
2004129450.tif 000003
【図２】
2004129450.tif 000004
【図３】
2004129450.tif 000005
【図４】
2004129450.tif 000006
【図５】
2004129450.tif 000007
【図６】
2004129450.tif 000008
【図７】
2004129450.tif 000009
【図８】
2004129450.tif 000010
【図９】
2004129450.tif 000011
【図１０】
2004129450.tif 000012
【図１１】
2004129450.tif 000013
【図１２】
2004129450.tif 000014
【図１３】
2004129450.tif 000015
【図１４】
2004129450.tif 000016
【図１５】
2004129450.tif 000017
【図１６】
2004129450.tif 000018
【図１７】
2004129450.tif 000019
【図１８】
2004129450.tif 000020
【図１９】
2004129450.tif 000021
【図２０】
2004129450.tif 000022
【図２１】
2004129450.tif 000023