(57)【要約】【課題】エンコーダからの信号に異常が生じた場合であっても、シフトレンジを適切に切替可能であるシフトレンジ制御装置を提供する。【解決手段】シフトレンジ制御装置４０は、モータ１０の駆動を制御することでシフトレンジの切り替えを制御するものである。信号取得部５１は、位相が異なる３相以上のエンコーダ信号を出力可能なエンコーダ１３からエンコーダ信号を取得する。異常監視部５２は、エンコーダ１３の異常を監視する。駆動制御部５５は、モータ１０の回転位置が目標シフトレンジに応じた目標回転位置となるように、モータ巻線１１の通電相を切り替えることでモータ１０の駆動を制御する。シフトレンジ制御装置４０は、エンコーダ１３の異常が検出された場合、故障相特定制御にてモータ１０を駆動し、エンコーダ信号の異常が生じている相である故障相、および、エンコーダ信号が正常である正常相を特定する。【選択図】  図２
2020061869.tif 000002
【特許請求の範囲】
【請求項１】
３相のモータ巻線（１１）を有するモータ（１０）の駆動を制御することでシフトレンジの切り替えを制御するシフトレンジ制御装置であって、
位相が異なる３相以上のエンコーダ信号を出力可能なエンコーダ（１３）から前記エンコーダ信号を取得する信号取得部（５１）と、
前記エンコーダの異常を監視する異常監視部（５２）と、
前記モータの回転位置が目標シフトレンジに応じた目標回転位置となるように、前記モータ巻線の通電相を切り替えることで前記モータの駆動を制御する駆動制御部（５５）と、
を備え、
前記エンコーダの異常が検出された場合、故障相特定制御にて前記モータを駆動し、前記エンコーダ信号の異常が生じている相である故障相、および、前記エンコーダ信号が正常である正常相を特定するシフトレンジ制御装置。
【請求項２】
前記モータの駆動中に前記エンコーダの異常が検出された場合、前記モータへの通電をオフにした後、前記故障相特定制御を行う請求項１に記載のシフトレンジ制御装置。
【請求項３】
前記駆動制御部は、
前記エンコーダが正常である場合、全相の前記エンコーダ信号に基づいて前記通電相を切り替える正常時フィードバック制御により前記モータの駆動を制御し、
前記故障相が特定された場合、前記正常相の前記エンコーダ信号に基づいて前記通電相を切り替える故障時フィードバック制御により前記モータの駆動を制御する請求項１または２に記載のシフトレンジ制御装置。
【請求項４】
前記駆動制御部は、
前記故障時フィードバック制御において、
前記正常相の前記エンコーダ信号のパルスエッジが検出されたタイミングにて前記通電相を切り替え、
次に検出されるべきパルスエッジが前記故障相のパルスエッジである場合、前記正常相のパルスエッジが検出されてから通電切替時間が経過したときに前記通電相を切り替える請求項３に記載のシフトレンジ制御装置。
【請求項５】
前記通電切替時間は、前記モータの回転数に応じて可変である請求項４に記載のシフトレンジ制御装置。
【請求項６】
前記駆動制御部は、
前記正常時フィードバック制御において、前記通電相の位相を進角または遅角させる位相補正制御を行い、
前記故障時フィードバック制御において、前記位相補正制御を行わない請求項３〜５のいずれか一項に記載のシフトレンジ制御装置。
【請求項７】
前記故障時フィードバック制御中、前記故障相のパルスエッジが適正タイミングで発生していると判定された場合、前記故障相を正常復帰させる請求項３〜６のいずれか一項に記載のシフトレンジ制御装置。
【請求項８】
前記故障時フィードバック制御中であって、前記故障相の正常復帰前に前記故障相のパルスエッジが検出された場合、前記故障相のパルスエッジを読み飛ばし、前記通電相を保持する請求項７に記載のシフトレンジ制御装置。
【請求項９】
シフトレンジ切替開始時から前記故障時フィードバック制御を行う場合、任意の２相または１相への通電を保持する初回通電制御を行う請求項３〜８のいずれか一項に記載のシフトレンジ制御装置。
【請求項１０】
前記モータの回転位置が前記目標回転位置に到達したと判定された場合、固定相通電制御により前記モータを停止させる請求項１〜９のいずれか一項に記載のシフトレンジ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シフトレンジ制御装置に関する。
【背景技術】
【０００２】
従来、モータを駆動源として用いて車両のシフトレンジを切り替えるモータ制御装置が知られている。例えば特許文献１では、モータのＦ／Ｂ制御系の故障が検出された場合、エンコーダカウント値の情報をフィードバックせずにモータの駆動を制御するオープンループ制御に切り替えている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３８４９９３０号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
例えば特許文献１のように２相エンコーダの場合、一方のエンコーダ信号が異常になると、モータの通電制御を行うことができず、モータが停止する。
【０００５】
本発明は、上述の課題に鑑みてなされたものであり、その目的は、エンコーダからの信号に異常が生じた場合であっても、シフトレンジを適切に切替可能であるシフトレンジ制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のシフトレンジ制御装置は、３相のモータ巻線（１１）を有するモータ（１０）の駆動を制御することでシフトレンジの切り替えを制御するものであって、信号取得部（５１）と、異常監視部（５２）と、駆動制御部（５５）と、を備える。
【０００７】
信号取得部は、位相が異なる３相以上のエンコーダ信号を出力可能なエンコーダ（１３）からエンコーダ信号を取得する。異常監視部は、エンコーダの異常を監視する。駆動制御部は、モータの回転位置が目標シフトレンジに応じた目標回転位置となるように、モータ巻線の通電相を切り替えることでモータの駆動を制御する。エンコーダの異常が検出された場合、故障相特定制御にてモータを駆動し、エンコーダ信号の異常が生じている相である故障相、および、エンコーダ信号が正常である正常相を特定する。これにより、エンコーダの異常が適切に特定され、正常相のエンコーダ信号の利用を継続可能であるので、シフトレンジを適切に切り替え可能である。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態によるシフトバイワイヤシステムを示す斜視図である。
【図２】第１実施形態によるシフトバイワイヤシステムを示す概略構成図である。
【図３】第１実施形態によるエンコーダのホールＩＣの配置を説明する模式図である。
【図４】第１実施形態によるエンコーダパターンおよびエンコーダパターンに応じた通電相を説明する説明図である。
【図５】第１実施形態による故障相特定処理を説明するフローチャートである。
【図６】第１実施形態において、Ｃ相Ｈｉ固着異常が生じた場合の故障相特定処理を説明する説明図である。
【図７】第１実施形態によるＣ相Ｈｉ固着異常時の故障時フィードバック制御を説明する説明図である。
【図８】第１実施形態によるモード選択処理を説明するフローチャートである。
【図９】第１実施形態による通電時補正実施判定処理を説明するフローチャートである。
【図１０】第１実施形態による故障時フィードバック処理を説明するフローチャートである。
【図１１】第１実施形態によるモータ駆動処理を説明するタイムチャートである。
【図１２】第１実施形態による故障相が特定されている状態にてシフトレンジ切替を行う場合のモータ駆動処理を説明するタイムチャートである。
【図１３】第２実施形態によるモード選択処理を説明するフローチャートである。
【図１４】第２実施形態によるモータ駆動処理を説明するタイムチャートである。
【発明を実施するための形態】
【０００９】
シフトレンジ制御装置を図面に基づいて説明する。以下、複数の実施形態において、実質的に同一の構成には同一の符号を付して説明を省略する。
【００１０】
（第１実施形態）
第１実施形態によるシフトレンジ制御装置を図１〜図１２に示す。図１および図２に示すように、シフトバイワイヤシステム１は、モータ１０、シフトレンジ切替機構２０、パーキングロック機構３０、および、シフトレンジ制御装置４０等を備える。
【００１１】
モータ１０は、図示しない車両に搭載されるバッテリから電力が供給されることで回転し、シフトレンジ切替機構２０の駆動源として機能する。本実施形態のモータ１０は、３相のモータ巻線１１を有するスイッチトリラクタンスモータであるが、ＤＣモータ等、どのような種類のものを用いてもよい。
【００１２】
図２および図３に示すように、エンコーダ１３は、モータ１０の図示しないロータの回転位置を検出し、電気角に応じた回転角信号であるエンコーダ信号を出力する。エンコーダ１３は、例えば磁気式のロータリーエンコーダであって、ロータと一体に回転するマグネットプレート１３５、および、磁気検出用のホールＩＣ１３１、１３２、１３３を有する３相エンコーダである。ホールＩＣ１３１〜１３３は、磁界の向きおよび大きさに応じた電圧を出力するホール素子を有しており、ホール素子のアナログ信号をデジタル変換した信号をエンコーダ信号としてシフトレンジ制御装置４０に出力する。図３に示すように、ホールＩＣ１３１〜１３３は、信号位相が電気角で１２０°ずれるように配置される。以下適宜、ホールＩＣ１３１から出力される信号をＡ相信号、ホールＩＣ１３２から出力される信号をＢ相信号、ホールＩＣ１３３から出力される信号をＣ相信号とする。
【００１３】
減速機１４は、モータ１０のモータ軸と出力軸１５との間に設けられ、モータ１０の回転を減速して出力軸１５に出力する。これにより、モータ１０の回転がシフトレンジ切替機構２０に伝達される。出力軸１５には、出力軸１５の角度を検出する出力軸センサ１６が設けられる。出力軸センサ１６は、例えばポテンショメータである。
【００１４】
図１に示すように、シフトレンジ切替機構２０は、ディテントプレート２１、および、ディテントスプリング２５等を有し、減速機１４から出力された回転駆動力を、マニュアルバルブ２８、および、パーキングロック機構３０へ伝達する。
【００１５】
ディテントプレート２１は、出力軸１５に固定され、モータ１０により駆動される。本実施形態では、ディテントプレート２１がディテントスプリング２５の基部から離れる方向を正回転方向、基部に近づく方向を逆回転方向とする。
【００１６】
ディテントプレート２１には、出力軸１５と平行に突出するピン２４が設けられる。ピン２４は、マニュアルバルブ２８と接続される。ディテントプレート２１がモータ１０によって駆動されることで、マニュアルバルブ２８は軸方向に往復移動する。すなわち、シフトレンジ切替機構２０は、モータ１０の回転運動を直線運動に変換してマニュアルバルブ２８に伝達する。マニュアルバルブ２８は、バルブボディ２９に設けられる。マニュアルバルブ２８が軸方向に往復移動することで、図示しない油圧クラッチへの油圧供給路が切り替えられ、油圧クラッチの係合状態が切り替わることでシフトレンジが変更される。
【００１７】
ディテントプレート２１のディテントスプリング２５側には、２つの凹部２２、２３が設けられる。本実施形態では、ディテントスプリング２５の基部に近い側を凹部２２、遠い側を凹部２３とする。本実施形態では、凹部２２がＰレンジ以外のＮｏｔＰレンジに対応し、凹部２３がＰレンジに対応する。
【００１８】
ディテントスプリング２５は、弾性変形可能な板状部材であり、先端にディテントローラ２６が設けられる。ディテントスプリング２５は、ディテントローラ２６をディテントプレート２１の回動中心側に付勢する。ディテントプレート２１に所定以上の回転力が加わると、ディテントスプリング２５が弾性変形し、ディテントローラ２６が凹部２２、２３を移動する。ディテントローラ２６が凹部２２、２３のいずれかに嵌まり込むことで、ディテントプレート２１の揺動が規制され、マニュアルバルブ２８の軸方向位置、および、パーキングロック機構３０の状態が決定され、自動変速機５のシフトレンジが固定される。ディテントローラ２６は、シフトレンジがＮｏｔＰレンジのとき、凹部２２に嵌まり込み、Ｐレンジのとき、凹部２３に嵌まり込む。
【００１９】
パーキングロック機構３０は、パーキングロッド３１、円錐体３２、パーキングロックポール３３、軸部３４、および、パーキングギア３５を有する。パーキングロッド３１は、略Ｌ字形状に形成され、一端３１１側がディテントプレート２１に固定される。パーキングロッド３１の他端３１２側には、円錐体３２が設けられる。円錐体３２は、他端３１２側にいくほど縮径するように形成される。ディテントプレート２１が逆回転方向に揺動すると、円錐体３２がＰ方向に移動する。
【００２０】
パーキングギア３５は、図示しない車軸に設けられ、パーキングロックポール３３の凸部３３１と噛み合い可能に設けられる。パーキングギア３５と凸部３３１とが噛み合うと、車軸の回転が規制される。シフトレンジがＮｏｔＰレンジのとき、パーキングギア３５はパーキングロックポール３３によりロックされず、車軸の回転は、パーキングロック機構３０により妨げられない。また、シフトレンジがＰレンジのとき、パーキングギア３５はパーキングロックポール３３によってロックされ、車軸の回転が規制される。
【００２１】
図２に示すように、シフトレンジ制御装置４０は、モータドライバ４１、および、制御部であるＥＣＵ５０等を有する。モータドライバ４１は、モータ１０の各相（Ｕ相、Ｖ相、Ｗ相）への通電を切り替える。モータドライバ４１とバッテリとの間には、モータリレー４６が設けられる。モータリレー４６は、イグニッションスイッチ等である車両の始動スイッチがオンされているときにオンされ、モータ１０側へ電力が供給される。また、モータリレー４６は、始動スイッチがオフされているとき等にオフされ、モータ１０側への電力の供給が遮断される。
【００２２】
ＥＣＵ５０は、マイコン等を主体として構成され、内部にはいずれも図示しないＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏ、及び、これらの構成を接続するバスライン等を備えている。ＥＣＵ５０における各処理は、ＲＯＭ等の実体的なメモリ装置（すなわち、読み出し可能非一時的有形記録媒体）に予め記憶されたプログラムをＣＰＵで実行することによるソフトウェア処理であってもよいし、専用の電子回路によるハードウェア処理であってもよい。
【００２３】
ＥＣＵ５０は、ドライバ要求シフトレンジに応じたシフト信号、ブレーキスイッチからの信号および車速等に基づいてモータ１０の駆動を制御することで、シフトレンジの切り替えを制御する。また、ＥＣＵ５０は、車速、アクセル開度、および、ドライバ要求シフトレンジ等に基づき、変速用油圧制御ソレノイド６の駆動を制御する。変速用油圧制御ソレノイド６を制御することで、変速段が制御される。変速用油圧制御ソレノイド６は、変速段数等に応じた本数が設けられる。本実施形態では、１つのＥＣＵ５０がモータ１０およびソレノイド６の駆動を制御するが、モータ１０を制御するモータ制御用のモータＥＣＵと、ソレノイド制御用のＡＴ−ＥＣＵとを分けてもよい。以下、モータ１０の駆動制御を中心に説明する。
【００２４】
ＥＣＵ５０は、信号取得部５１、異常監視部５２、および、駆動制御部５５を有する。信号取得部５１は、エンコーダ１３からのエンコーダ信号、および、出力軸センサ１６からの信号を取得する。信号取得部５１は、エンコーダ１３からのエンコーダ信号のパルスエッジ割り込み毎にエンコーダパターンを読み込む。また、信号取得部５１は、エンコーダパルスエッジごとに、信号パターンに応じてエンコーダカウント値θｅｎをカウントアップまたはカウントダウンする。異常監視部５２は、エンコーダ信号の異常を監視する。
【００２５】
駆動制御部５５は、エンコーダカウント値θｅｎが、図示しない上位ＥＣＵから取得される目標シフトレンジに応じた目標カウント値θｃｍｄとなる回転位置にてモータ１０が停止するように、モータ１０の駆動を制御する。本実施形態では、エンコーダ信号に基づいて通電相を切り替えていくことで、モータ１０を回転させる。本実施形態では、エンコーダカウント値θｅｎが「モータの回転位置」、目標カウント値θｃｍｄが「目標回転位置」に対応する。
【００２６】
エンコーダ信号、および、エンコーダ信号に応じた通電相を図４に基づいて説明する。図４では、番号Ｐ０〜Ｐ７は、信号パターン、および、信号パターンに応じた通電相パターンを示すパターン番号である。図中、エンコーダ信号がＬｏである状態を「０（Ｌｏ）」、Ｈｉである状態を「１（Ｈｉ）」と記載した。図６も同様である。
【００２７】
パターンＰ０：Ａ相信号およびＢ相信号がＬｏ、Ｃ相信号がＨｉである信号パターンをパターンＰ０とし、このときの通電相をＶ相とする。
【００２８】
パターンＰ１：Ａ相信号がＬｏ、Ｂ相信号およびＣ相信号がＨｉである信号パターンをパターンＰ１とし、このときの通電相をＵ相およびＶ相とする。
【００２９】
パターンＰ２：Ａ相信号およびＣ相信号がＬｏ、Ｂ相信号がＨｉである信号パターンをパターンＰ２とし、このときの通電相をＵ相とする。
【００３０】
パターンＰ３：Ａ相信号およびＢ相信号がＨｉ、Ｃ相信号がＬｏである信号パターンをパターンＰ３とし、このときの通電相をＷ相およびＵ相とする。
【００３１】
パターンＰ４：Ａ相信号がＨｉ、Ｂ相信号およびＣ相信号がＬｏである信号パターンをパターンＰ４とし、このときの通電相をＷ相とする。
【００３２】
パターンＰ５：Ａ相信号およびＣ相信号がＨｉ、Ｂ相信号がＬｏである信号パターンをパターンＰ５とし、このときの通電相をＶ相およびＷ相とする。
【００３３】
パターンＰ０〜Ｐ５は、正常パターンであって、モータ１０を回転させるとき、エンコーダ１３からのエンコーダ信号のエッジ割り込み毎に、信号パターンに応じ、通電相を、Ｖ→ＵＶ→Ｕ→ＷＵ→Ｗ→ＷＶ→ＶＷ→Ｖ→ＵＶ→・・・の順に切り替える。逆方向に回転させる場合は、逆順にて通電相を切り替える。
【００３４】
パターンＰ６、Ｐ７：Ａ相信号、Ｂ相信号およびＣ相信号が全てＨｉとなる信号パターンをパターンＰ６、Ａ相信号、Ｂ相信号およびＣ相信号が全てＬｏとなる信号パターンをパターンＰ７とする。Ａ相信号、Ｂ相信号およびＣ相信号が全てＨｉまたはＬｏとなるパターンＰ６およびパターンＰ７は、正常時には発生しない異常パターンである。例えば図７に一点鎖線で示すように、エンコーダ１３のＣ相断線により、Ｃ相信号がＨｉ固着すると、パターンＰ３となるべきタイミングにて、パターンＰ６が発生する。なお説明のため、Ｃ相断線時に発生するＨｉ固着信号を、正常時のＨｉ信号とずらして記載した。
【００３５】
ところで、参考例として、Ａ相およびＢ相の２相のエンコーダシステムでは、例えば断線等により１相の信号が異常になると、モータの通電制御を正しく行うことができないため、モータが即時停止となる。なお補足として、Ｚ相パルスのような基準信号は、「回転角信号」ではないため、モータ制御には用いることができない。
【００３６】
一方、本実施形態では、エンコーダ１３は、Ａ相、Ｂ相およびＣ相の３相のエンコーダシステムである。３相エンコーダシステムの場合、図４にて説明したように、信号パターンに対して通電相が一意に決まる。そこで本実施形態では、エンコーダ信号の異常が検出された場合、故障相特定制御にてモータ１０を駆動して故障相を特定し、故障相特定後は、正常相のエンコーダ信号を用いたフィードバック制御である故障時フィードバック制御によりモータ１０を駆動する。
【００３７】
本実施形態の故障相特定処理を図５のフローチャートに基づいて説明する。この処理は、エンコーダ信号の異常が検出されたときに実行される。以下、ステップＳ５０１の「ステップ」を省略し、単に記号「Ｓ」と記す。
【００３８】
Ｓ５０１では、ＥＣＵ５０は、モータ１０の回転方向に基づき、通電相順を決定する。Ｓ５０２〜Ｓ５０８の処理は、全通電パターンについて繰り返し実行される処理である。なお、Ｓ５０７またはＳ５０８にて故障相が特定された場合には、残りの処理をキャンセルするようにしてもよい。
【００３９】
Ｓ５０２では、異常監視部５２は、現在の通電パターンが検出実施パターンか否かを判断する。本実施形態では、２相通電のとき、すなわちパターンＰ１、Ｐ３、Ｐ５を検出実施パターンとし、１相通電のとき、すなわちパターンＰ０、Ｐ２、Ｐ４のとき、故障相の特定を行わない。現在の通電パターンが検出実施パターンではないと判断された場合（Ｓ５０２：ＮＯ）、すなわち現在の通電パターンがＰ０、Ｐ２、Ｐ４のとき、Ｓ５０３〜Ｓ５０８の処理を行わず、ループ始端に戻る。現在の通電パターンが検出実施パターンであると判断された場合（Ｓ５０２：ＹＥＳ）、Ｓ５０３へ移行する。
【００４０】
Ｓ５０３では、異常監視部５２は、当該通電相への通電開始から所定時間経過後、エンコーダ検出値を確定する。Ｓ５０４では、異常監視部５２は、現在のエンコーダ検出値が、通電相から期待されるエンコーダ期待値と一致するか否かを判断する。エンコーダ検出値とエンコーダ期待値とが一致すると判断された場合（Ｓ５０４：ＹＥＳ）、Ｓ５０５へ移行し、当該エンコーダ検出値が正常であると判定する。エンコーダ検出値とエンコーダ期待値とが一致しないと判断された場合（Ｓ５０４：ＮＯ）、Ｓ５０６へ移行する。
【００４１】
Ｓ５０６では、異常監視部５２は、検出値と期待値とが異なるＸ相について、期待値がＨｉであり、検出値がＬｏか否かを判断する。Ｘ相の期待値がＨｉ、検出値がＬｏであると判断された場合（Ｓ５０６：ＹＥＳ）、Ｓ５０７へ移行し、Ｘ相にＬｏ固着異常が生じていると特定し、故障相特定を完了する。Ｘ相の期待値がＬｏ、検出値がＨｉであると判断された場合（Ｓ５０６：ＮＯ）、Ｓ５０８へ移行し、Ｘ相にＨｉ固着異常が生じていると特定し、故障相特定を完了する。なお、Ｓ５０７およびＳ５０８の処理を省略し、Ｈｉ固着異常またはＬｏ固着異常の特定を行わなくてもよい。
【００４２】
故障相特定処理の具体例を図６に示す。図６に示すように、エンコーダ異常発生時の回転方向が正方向（図中、「回転方向Ａ」）であれば、故障相特定制御において、Ｕ→ＷＵ→Ｗ→ＶＷ→Ｖ→ＵＶの順に通電し、逆方向（図中、「回転方向Ｂ」）であれば、Ｕ→ＵＶ→Ｖ→ＶＷ→Ｗ→ＷＵの順に通電する。上述のように、２相通電であるＵＶ相通電時、ＷＵ相通電時およびＶＷ相通電時に故障相特定を行うため、エンコーダパターンが安定する程度、通電時間を確保する。一方、１相通電であるＵ相通電時、Ｖ相通電時およびＷ相通電時は故障相特定を行わないため、２相通電時よりも通電時間を短くしてもよく、安定して通電相を切り替え可能な程度の通電を行えばよい。
【００４３】
図６は、Ｃ相のＨｉ固着異常が生じた場合の例である。Ｃ相のエンコーダ信号が正常であれば、Ｕ相、ＷＵ相およびＷ相通電時にＬｏとなるが、Ｈｉ固着異常が生じている場合、Ｈｉとなる。本実施形態では、２相通電時に故障相特定を行うので、ＷＵ相通電時に、期待値と検出値とが不一致となり、Ｃ相にＨｉ固着異常が生じていることを特定可能である。また、Ａ相およびＢ相には異常が生じていないので、正常相として特定する。
【００４４】
本実施形態では、エンコーダ１３として３相エンコーダを用いているので、故障相特定処理により、故障相を特定可能である。故障相が特定されれば、故障が生じていない正常相のパルスエッジの情報を用いることができるので、正常相のエンコーダ信号を用いて、フィードバック制御によりモータ１０を駆動することができる。以下、全相のエンコーダ信号を用いたフィードバック制御を正常時フィードバック制御、故障相の信号を用いず、正常相のエンコーダ信号を用いたフィードバック信号を故障時フィードバック制御とする。
【００４５】
通電相の切り替えについて、図７に基づいて説明する。図７では、説明の簡略化のため、エンコーダ正常時と異常時とで、同じタイミングにて通電相が切り替わるものとして図示している。
【００４６】
まず、正常時フィードバック制御での通電相の切り替えを説明する。通電相がＶＷ相のとき、エンコーダパターンがＰ５であって、Ａ相信号およびＣ相信号がＨｉ、Ｂ相信号がＬｏとなる。Ａ相信号がＨｉからＬｏに切り替わると、通電相をＶＷ相からＶ相に切り替える。次に、Ｂ相信号がＬｏからＨｉに切り替わると、通電相をＶ相からＵＶ相に切り替える、といった具合に、エンコーダ信号のパルスエッジが検出されるごとに、通電相を切り替えていく。
【００４７】
次に、Ｃ相Ｈｉ固着時の故障時フィードバック制御での通電相の切り替えを説明する。タイミングｔ１では、正常であるＢ相信号の立ち上がりエッジに基づいて通電相をＶ相からＵＶ相に切り替える。Ｃ相信号正常時においてＣ相信号がＨｉからＬｏに切り替わるタイミングｔ２において、Ｃ相信号の立ち下がりエッジを検出することができない。本実施形態では、Ｃ相故障が確定しているので、Ｃ相のエッジ発生箇所については、Ｃ相エッジ発生直前の通電パターンの開始から通電切替時間Ｔｃ後、通電相の切り替えを行う。すなわち、パターンＰ１の開始タイミングｔ１から通電切替時間Ｔｃが経過したタイミングにて、通電相をＵＶ相からＵ相に切り替える。
【００４８】
Ａ相信号およびＢ相信号は正常であるので、Ｕ相通電からＷＵ相通電への切り替えタイミングｔ３、および、ＷＵ相通電からＷ相通電への切り替えタイミングｔ４では、エンコーダ信号のエッジに基づいて通電相を切り替える。
【００４９】
正常時、Ｃ相信号がＬｏからＨｉに切り替わるタイミングｔ５では、Ｃ相信号の立ち上がりエッジを検出できないので、直前の通電パターンであるパターンＰ４となったタイミングｔ４から通電切替時間Ｔｃが経過したタイミングｔ５にて、通電相をＷ相からＶＷ相に切り替える。
【００５０】
このように、故障相のパルスエッジ発生タイミングでは、時間で通電相の切り替えを行うことで、エンコーダ異常が生じた後も、正常相のエンコーダ信号を用いたフィードバック制御を継続可能である。図７の例では、断線時の通電相に下線を付したＵ相通電への切り替え、および、ＶＷ相通電への切り替えを、正常相のパルスエッジ検出タイミングからの経過時間にて行っている。
【００５１】
本実施形態のモード選択処理を図８のフローチャートに基づいて説明する。この処理は、ＥＣＵ５０にて所定の周期で実行される。なお、各制御処理の制御周期は等しくてもよいし、異なっていてもよい。以下、ステップＳ１０１の「ステップ」を省略し、単に記号「Ｓ」と記す。他のステップも同様である。
【００５２】
Ｓ１０１では、ＥＣＵ５０は、現在の駆動モードがスタンバイモードか否かを判断する。駆動モードがスタンバイモードではないと判断された場合（Ｓ１０１：ＮＯ）、Ｓ１０３へ移行する。駆動モードがスタンバイモードであると判断された場合（Ｓ１０１：ＹＥＳ）、Ｓ１０２へ移行する。
【００５３】
Ｓ１０２では、ＥＣＵ５０は、実レンジと目標シフトレンジとが一致しているか否かを判断する。実レンジは、例えば出力軸センサ１６の検出値に基づいて検出する。実レンジと目標シフトレンジとが一致していると判断された場合（Ｓ１０２：ＹＥＳ）、Ｓ１０３以降の処理を行わず、スタンバイモードを維持する。実レンジと目標シフトレンジとが一致していないと判断された場合（Ｓ１０２：ＹＥＳ）、Ｓ１０３へ移行する。
【００５４】
Ｓ１０３では、モータ１０の回転位置が目標位置に到達したか否かを判断する。本実施形態では、エンコーダカウント値θｅｎが、目標カウント値θｃｍｄを含む所定範囲内（例えば±２カウント）となった場合、目標位置に到達したと判断する。なお、故障時フィードバック制御中であれば、エンコーダカウント値として、正常相のパルスエッジに基づいて推定された値を用いる。モータ１０の回転位置が目標位置に到達したと判断された場合（Ｓ１０３：ＹＥＳ）、Ｓ１０９へ移行する。モータ１０の回転位置が目標位置に到達していないと判断された場合（Ｓ１０３：ＮＯ）、Ｓ１０４へ移行する。
【００５５】
Ｓ１０４では、ＥＣＵ５０は、エンコーダ１３が正常か否かを判断する。エンコーダ１３が正常であると判断された場合（Ｓ１０４：ＹＥＳ）、Ｓ１０５へ移行し、制御モードを正常時フィードバック制御モードとする。図中等適宜、フィードバックを「ＦＢ」と記載する。エンコーダ１３が正常ではないと判断された場合（Ｓ１０４：ＮＯ）、Ｓ１０６へ移行する。
【００５６】
Ｓ１０６では、ＥＣＵ５０は、故障相が特定済みか否かを判断する。故障相が特定済みであると判断された場合（Ｓ１０６：ＹＥＳ）、Ｓ１０７へ移行し、制御モードを故障時フィードバック制御モードとする。制御モードを正常時ＦＢ制御モードとする。故障相が特定されていないと判断された場合（Ｓ１０６：ＮＯ）、Ｓ１０８へ移行する。
【００５７】
Ｓ１０８では、ＥＣＵ５０は、制御モードを故障相特定モードとする。また、シフトバイワイヤシステム１に異常が生じている旨の情報を、例えばインスツルメントパネルのウォーニングランプを点灯させることでユーザに通知する。故障通知方法は、例えば音声での通知等、どのようであってもよい。
【００５８】
モータ１０の回転位置が目標位置に到達したと判断された場合（Ｓ１０３：ＹＥＳ）に移行するＳ１０９では、停止制御開始から停止制御時間が経過したか否かを判断する。停止制御時間は、停止制御によりモータ１０を確実に停止させられる時間に応じて設定される。停止制御は、例えば固定相通電制御であるが、固定相通電制御以外であってもよい。停止制御時間が経過していないと判断された場合（Ｓ１０９：ＮＯ）、Ｓ１１０へ移行し、制御モードを停止制御モードとする。停止制御時間が経過したと判断された場合（Ｓ１０９：ＹＥＳ）、Ｓ１１１へ移行し、制御モードをスタンバイモードとする。
【００５９】
図９は通電時補正実施判定処理を説明するフローチャートである。この処理は、制御モードが正常時フィードバック制御モード、または、故障時フィードバック制御モードのときに所定の周期で実行される処理である。
【００６０】
Ｓ２０１では、制御モードが故障時フィードバック制御モードか否かを判断する。制御モードが故障時フィードバック制御モードであると判断された場合（Ｓ２０１：ＹＥＳ）、Ｓ２０２へ移行し、位相補正制御を行わず、エンコーダパターンに応じた通電相に通電する。制御モードが故障時フィードバック制御モードではないと判断された場合（Ｓ２０１：ＮＯ）、すなわち正常時フィードバック制御モードの場合、現在のエンコーダパターンに対応する通電相に対し、位相を補正した通電相に通電する。位相進み量または位相遅れ量である位相補正量は、例えばモータ速度であるモータ回転数に応じたマップ演算等により決定される。
【００６１】
故障時フィードバック制御処理を図１０のフローチャートに基づいて説明する。Ｓ３０１では、ＥＣＵ５０は、初回完了フラグＦｌｇ＿ｆがオンされているか否かを判断する。
初回完了フラグＦｌｇ＿ｆがオンされていると判断された場合（Ｓ３０１：ＹＥＳ）、Ｓ３０６へ移行する。初回完了フラグＦｌｇ＿ｆがオンされていないと判断された場合（Ｓ３０１：ＹＥＳ）、Ｓ３０２へ移行する。
【００６２】
Ｓ３０２では、ＥＣＵ５０は、特定相（例えばＵＶ相）への通電を開始してから初回通電継続時間Ｔ１が経過したか否かを判断する。初回通電継続時間Ｔ１は、通電相に対し、ロータが適切な位置に回転するのに要する時間に応じて設定される。本実施形態では、初回通電として特定の２相に通電することで、ステータの２相にロータの２歯が対向した状態にする。これにより、モータ停止中にロータが回転してしまった場合であっても、故障時フィードバック制御処理を適切に行うことができる。初回通電継続時間Ｔ１が経過したと判断された場合（Ｓ３０２：ＹＥＳ）、Ｓ３０５へ移行する。初回通電継続時間Ｔ１が経過していないと判断された場合（Ｓ３０２：ＹＥＳ）、Ｓ３０３へ移行する。
【００６３】
Ｓ３０３では、ＥＣＵ５０は、エンコーダ１３の正常相のエッジが検出されたか否かを判断する。正常相のエッジが検出されたと判断された場合（Ｓ３０３：ＹＥＳ）、Ｓ３０５へ移行する。正常相のエッジが検出されていないと判断された場合（Ｓ３０３：ＮＯ）、Ｓ３０４へ移行する。Ｓ３０４では、駆動制御部５５は、特定相への初回通電を行う。特定相への通電が行われている状態であれば、特定相への通電を継続する。
【００６４】
初回通電継続時間Ｔ１が経過した場合（Ｓ３０２：ＹＥＳ）または正常相のエッジが検出された場合（Ｓ３０３：ＹＥＳ）に移行するＳ３０５では、通電相を次の通電相に切り替え、初回完了フラグＦｌｇ＿ｆをオンにする。
【００６５】
初回完了フラグＦｌｇ＿ｆがオンされている場合に移行するＳ３０６では、ＥＣＵ５０は、通電相が切り替わったか否かを判断する。通電相が切り替わっていないと判断された場合（Ｓ３０６：ＮＯ）、Ｓ３０７の処理を行わず、Ｓ３０８へ移行する。通電相が切り替わったと判断された場（Ｓ３０６：ＹＥＳ）、Ｓ３０７へ移行し、通電切替時間Ｔｃを演算する。通電切替時間Ｔｃは、エンコーダ１３が正常であるときのエッジ発生間隔に応じて設定される。詳細には、通電切替時間Ｔｃは、推定されるエッジ発生間隔よりも長く、その次のエッジが発生するまでの期間よりも短い時間に設定される。本実施形態では、通電切替時間Ｔｃをモータ１０の回転速度に応じて可変とする。
【００６６】
Ｓ３０８では、ＥＣＵ５０は、エンコーダパターンが変化したか否かを判断する。エンコーダパターンが変化していないと判断された場合（Ｓ３０８：ＮＯ）、Ｓ３１３へ移行する。エンコーダパターンが変化したと判断された場合（Ｓ３０８：ＹＥＳ）、Ｓ３０９へ移行する。
【００６７】
Ｓ３０９では、ＥＣＵ５０は、検出されたエンコーダ信号のエッジが正常相のエッジか否かを判断する。検出されたエンコーダ信号のエッジが正常相のエッジであると判断された場合（Ｓ３０９：ＹＥＳ）、Ｓ３１２へ移行する。検出されたエッジが正常相のエッジではないと判断された場合（Ｓ３０９：ＮＯ）、Ｓ３１０へ移行する。
【００６８】
Ｓ３１０では、ＥＣＵ５０は、検出されたエンコーダ信号のエッジが、現在の通電相で次に検出されるべき故障相の適正エッジか否かを判断する。適正エッジではないと判断された場合（Ｓ３１０：ＮＯ）、当該エッジを読み飛ばし、Ｓ３１５へ移行し、現在の通電相を保持する。検出されたエッジが適正エッジであると判断された場合（Ｓ３１０：ＹＥＳ）、Ｓ３１１へ移行し、故障相を正常復帰させる。なお、カウンタ等を設け、複数回の適正エッジ検出により正常復帰させるようにし、正常復帰までは故障相エッジを読み飛ばすようにしてもよい。Ｓ３１２では、エンコーダパターンに応じて通電相を切り替える。
【００６９】
エンコーダパターンが変化していないと判断された場合（Ｓ３０８：ＮＯ）に移行するＳ３１３では、ＥＣＵ５０は、現在の通電相で次に検出されるべきエッジが故障相か否かを判断する。次に検出されるべきエンコーダ信号のエッジが故障相ではないと判断された場合（Ｓ３１３：ＮＯ）、Ｓ３１５へ移行し、現在の通電相を保持する。次に検出されるべきエンコーダ信号のエッジが故障相であると判断された場合（Ｓ３１３：ＹＥＳ）、Ｓ３１４へ移行する。
【００７０】
Ｓ３１４では、現在の通電相への通電を開始してから、通電切替時間Ｔｃが経過したか否かを判断する。通電切替時間Ｔｃが経過していないと判断された場合（Ｓ３１４：ＮＯ）、Ｓ３１５へ移行し、現在の通電相を保持する。通電切替時間Ｔｃが経過したと判断された場合（Ｓ３１４：ＹＥＳ）、Ｓ３１６へ移行し、次の通電相に切り替える。
【００７１】
本実施形態のモータ駆動処理を図１１のタイムチャートに基づいて説明する。図１１は、モータ駆動中にエンコーダ異常が生じた場合の例であり、上段から、目標シフトレンジ、エンコーダ異常フラグ、モータ角度を示す。モータ角度は、実際のモータ回転位置を実線、目標カウント値θｃｍｄを一点鎖線で示す。なお、実際のモータ回転位置については、エンコーダカウント値θｅｎに応じた値であって、エンコーダ異常時の推定値を含む。また、Ｐレンジに対応する角度を（Ｐ）、ｎｏｔＰレンジに対応する角度を（ｎｏｔＰ）と記載した。なお、説明のため、タイムスケール等は適宜変更している。ここでは、シフトレンジをＰレンジからｎｏｔＰレンジに切り替える場合を例に説明する。図１２および図１４も同様である。
【００７２】
タイムチャートにおいて、全相のエンコーダ信号を用いた正常時フィードバック制御時の通電パターンを通電パターンＡ、故障相特定処理時の通電パターンを通電パターンＢ、正常相のエンコーダ信号を用いた故障時フィードバック制御時の通電パターンを通電パターンＣ、エンコーダ異常時であって故障相が特定されている状態からシフトレンジを切り替える場合の初回通電を通電パターンＤとする。
【００７３】
時刻ｘ１０にて、目標シフトレンジがＰレンジからｎｏｔＰレンジに切り替わると、制御モードをスタンバイモードから正常時フィードバック制御モードに切り替える。また、目標シフトレンジに応じた目標カウント値θｃｍｄが設定され、正常時フィードバック制御モードによりモータ１０を駆動する。正常時フィードバック制御モードでは、エンコーダカウント値θｅｎに応じて通電相を切り替える。また、モータ回転数等に応じた位相補正制御を行う。
【００７４】
時刻ｘ１１にてエンコーダ異常が生じると、エンコーダ異常フラグがオンされる。また、故障相特定モードにてモータ１０の駆動を継続する。時刻ｘ１２までの間に故障相が特定され、時刻ｘ１２にて故障相特定処理が完了すると、時刻ｘ１２以降、故障時フィードバック制御モードによりモータ１０を駆動する。故障時フィードバック制御モードの詳細は、図１２にて詳述する。なお、モータ駆動中にエンコーダ異常が発生し、故障相特定モードから故障時フィードバック制御モードに移行する場合、Ｓ３０１〜Ｓ３０５の初回通電は行わない。
【００７５】
時刻ｘ１３にて、モータ１０が目標位置に到達すると、停止制御モードに移行する。停止制御モードでは、例えば固定相通電によりモータ１０を確実に停止させる。停止制御時間に亘って停止制御を行った後、時刻ｘ１４にてスタンバイモードに切り替え、モータ１０への通電をオフにする。
【００７６】
図１２は、エンコーダ異常が確定しており、故障相が特定されている状態にてシフトレンジを切り替える場合を説明するタイムチャートであって、上段から、目標シフトレンジ、エンコーダ異常フラグ、角度、通電相、実際のエンコーダパターン、推定エンコーダパターンを示す。
【００７７】
図１２では、Ｃ相信号にＨｉ固着異常が生じているものとする。この場合、パターンＰ２、Ｐ３、Ｐ４が発生せず、パターンＰ６が発生する（図４、図６および図７参照）。詳細には、パターンＰ２となるべきところでパターンＰ１が継続され、パターンＰ３となるべきところでパターンＰ６となり、パターンＰ４となるべきところがパターンＰ５となる。
【００７８】
時刻ｘ３０にて、目標シフトレンジがＰレンジからｎｏｔＰレンジに切り替わったとき、エンコーダ異常フラグがオンされているので、制御モードをスタンバイモードから故障時フィードバック制御モードに切り替える。故障時フィードバック制御モードでは、まず初回通電にて特定相に通電する。ここでは、初回通電継続時間Ｔ１の間、特定相としてＵＶ相に通電し、エンコーダパターンがＰ１となる。
【００７９】
初回通電継続時間Ｔ１が経過した時刻ｘ３１では、通電相をＵＶ相からＵ相に切り替える。この例では、Ｃ相Ｈｉ固着異常が生じているので、エンコーダパターンはパターンＰ１が継続される。なお、初回通電継続時間Ｔ１が経過する前に正常相のパルスエッジが検出された場合、エッジ検出タイミングにて通電相を切り替える。
【００８０】
時刻ｘ３１から通電切替時間Ｔｃ経過前のタイミングである時刻ｘ３２では、Ａ相信号の立ち上がりエッジが検出され、エンコーダパターンがＰ６となる。パターンＰ６は異常パターンであるが、Ｃ相のＨｉ固着が特定されているため、通電順からパターンＰ３として扱う。また、Ａ相信号は正常であるので、Ａ相信号のエッジ検出タイミングである時刻ｘ３２にて、通電相をＵ相からＷＵ相に切り替える。
【００８１】
時刻ｘ３２から通電切替時間Ｔｃ経過前のタイミングである時刻ｘ３３では、Ｂ相信号の立ち下がりエッジが検出され、エンコーダパターンがＰ５となるが、Ｃ相のＨｉ固着が特定されているため、通電順からパターンＰ４として扱う。また、Ｂ相信号は正常であるので、Ｂ相信号のエッジ検出タイミングである時刻ｘ３３にて、通電相をＷＵ相からＷ相に切り替える。なお、本実施形態では、通電切替時間Ｔｃをモータ回転数に応じて可変としており、時刻ｘ３１より時刻ｘ３２においてモータ回転数が大きいため、時刻ｘ３２にて設定される通電切替時間Ｔｃは、時刻ｘ３１にて設定される値より小さい。また、時刻ｘ３２〜時刻ｘ３８におけるモータ回転数が等しく、設定される通電切替時間Ｔｃの値が等しいものとする。
【００８２】
エンコーダ１３が正常であれば、次にＣ相の立ち上がりエッジが検出されるはずであるが、Ｃ相のＨｉ固着異常が生じている状態では、このエッジを検出することができない。そこで、時刻ｘ３３から通電切替時間Ｔｃが経過した時刻ｘ３４にて、通電相をＷ相からＶＷ相に切り替える。このとき、通電相を切り替えても、エンコーダパターンはＰ５が継続される。
【００８３】
時刻ｘ３５では、正常であるＡ相の立ち下がりエッジが検出されるので、エンコーダパターンがＰ５からＰ０に切り替わり、通電相をＶＷ相からＶ相に切り替える。時刻ｘ３６では、正常であるＢ相の立ち上がりエッジが検出されるので、エンコーダパターンがＰ０からＰ１に切り替わり、通電相をＶ相からＵＶ相に切り替える。
【００８４】
エンコーダ１３が正常であれば、次にＣ相の立ち下がりエッジが検出されるはずであるが、Ｃ相のＨｉ固着異常が生じている状態では、このエッジを検出することができない。そこで、時刻ｘ３６から通電切替時間Ｔｃが経過した時刻ｘ３７にて、通電相をＵＶ相からＵ相に切り替える。このとき、通電相を切り替えても、エンコーダパターンはＰ１が継続されるが、通電順よりパターンＰ２として扱う。
【００８５】
時刻ｘ３８では、時刻ｘ３２と同様、Ａ相の立ち上がりエッジに基づいて、通電相をＵ相からＷＵ相に切り替える。以降、同様に通電相を切り替えていくことで、モータ１０を目標位置まで回転させる。時刻ｘ３９にてモータ１０が目標位置に到達すると、停止制御モードに移行する。以降の処理は、図１１の時刻ｘ１３以降の処理と同様であるので、説明を省略する。
【００８６】
本実施形態では、エンコーダ１３として３相エンコーダを用いており、エンコーダパターンに対して通電相が一意に決まる。そこで、故障相特定制御を行うことで、故障相を特定する。また、故障相を特定した後、正常相のエンコーダ信号を用いたフィードバック制御を継続する。詳細には、正常相のエッジ検出タイミングにて、正常時フィードバック制御と同様に通電相を切り替える。また、故障相のエッジが検出できないので、正常相のエッジ検出タイミングから通電切替時間Ｔｃが経過したタイミングにて、通電相を切り替える。これにより、オープン制御によりモータ１０を駆動する場合と比較し、応答性を向上することができる。
【００８７】
以上説明したように、本実施形態のシフトレンジ制御装置４０は、モータ１０の駆動を制御することでシフトレンジの切り替えを制御するものであって、信号取得部５１と、異常監視部５２と、駆動制御部５５と、を備える。
【００８８】
信号取得部５１は、位相が異なる３相以上のエンコーダ信号を出力可能なエンコーダ１３からエンコーダ信号を取得する。異常監視部５２は、エンコーダ１３の異常を監視する。駆動制御部５５は、モータ１０の回転位置が目標シフトレンジに応じた目標回転位置となるように、モータ巻線１１の通電相を切り替えることでモータ１０の駆動を制御する。シフトレンジ制御装置４０は、エンコーダ１３の異常が検出された場合、故障相特定制御にてモータ１０を駆動し、エンコーダ１３にて異常が生じている相である故障相、および、エンコーダ信号が正常である正常相を特定する。これにより、エンコーダ１３の異常が適切に特定され、正常相のエンコーダ信号の利用を継続可能であるので、エンコーダ異常時の影響を最小限に抑え、シフトレンジを適切に切り替え可能である。
【００８９】
駆動制御部５５は、エンコーダ１３が正常である場合、全相のエンコーダ信号に基づいて通電相を切り替える正常時フィードバック制御によりモータ１０の駆動を制御し、故障相が特定された場合、正常相のエンコーダ信号に基づいて通電相を切り替える故障時フィードバック制御によりモータ１０の駆動を制御する。これにより、エンコーダ異常が生じた場合であっても、正常相のエンコーダ信号に基づき、エンコーダ信号を全く用いないオープン制御と比較し、正確かつ速やかにモータ１０を回転させることができる。
【００９０】
駆動制御部５５は、故障時フィードバック制御において、正常相のエンコーダ信号のパルスエッジが検出されたタイミングにて通電相を切り替え（図１０中のＳ３１２）、次に検出されるべきパルスエッジが故障相のパルスエッジである場合、正常相のパルスエッジが検出されてから通電切替時間Ｔｃが経過したときに通電相を切り替える（Ｓ３１６）。これにより、正常相のエンコーダ信号を用い、通電相を適切に切り替えることができる。
【００９１】
通電切替時間Ｔｃは、モータ１０の回転数に応じて可変である。これにより、故障時フィードバック制御時において、正常時フィードバック制御時とより近い状態にてモータ１０を駆動可能であるので、応答性の低下を抑制可能である。
【００９２】
駆動制御部５５は、正常時フィードバック制御において、通電相の位相を進角または遅角させる位相補正制御を行い、故障時フィードバック制御において、位相補正制御を行わない。これにより、安定した速度でモータ１０を回転させることができる。
【００９３】
故障時フィードバック制御中、故障相のパルスエッジが適正タイミングで発生していると判定された場合（Ｓ３１０：ＹＥＳ）、故障相を正常復帰させる。換言すると、本実施形態では、故障時フィードバック制御中においても、故障相のパルスエッジの監視を継続している。これにより、ノイズ等の一時的な異常から適切に正常復帰させることができる。
【００９４】
故障フィードバック制御中であって、故障相の正常復帰前に故障相のパルスエッジが検出された場合、故障相のパルスエッジを読み飛ばし、通電相を保持する。これにより、ノイズ等による誤動作を防ぐことができる。
【００９５】
シフトレンジ切替開始時から故障時フィードバック制御を行う場合、任意の２相または１相への通電を保持する初回通電制御を行う。本実施形態では、初回通電制御により任意の２相としてＵＶ相に通電するが、ＶＷ相通電またはＷＵ相通電としてもよい。２相通電の方がロータ位置を安定させやすいので好ましいが、１相通電としてもよい。これにより、通電開始時のロータ位置によらず、円滑にモータ駆動を開始することができる。
【００９６】
モータ１０の回転位置が目標回転位置に到達したと判定された場合、固定相通電制御によりモータ１０を停止させる。これにより、目標シフトレンジに応じた適切な回転位置にてモータ１０を停止させることができる。
【００９７】
（第２実施形態）
第２実施形態を図１３および図１４に示す。本実施形態では、エンコーダ異常が生じた場合、故障相特定処理を行う前に、一旦通電オフする点が上記実施形態と異なるので、この点を中心に説明する。詳細には、エンコーダ異常が生じた場合、異常が生じている旨の情報を上位ＥＣＵに通知するとともに、目標シフトレンジを不定とする。そして、上位ＥＣＵから、再度、目標シフトレンジが設定され、かつ、目標シフトレンジと実レンジとが一致していなかった場合、故障相特定モードを行った後、故障時フィードバック制御にてモータ１０を駆動し、シフトレンジを切り替える。
【００９８】
図１３のモード選択処理は、Ｓ１２１〜Ｓ１２３が追加されている点が図８と異なる。エンコーダ１３が正常ではないと判断された場合（Ｓ１０４：ＮＯ）に移行するＳ１０６では、故障相が特定済みか否かを判断する。故障相が特定済みであると判断された場合（Ｓ１０６：ＹＥＳ）、Ｓ１０７へ移行し、制御モードを故障時フィードバック制御モードとする。制御モードを正常時ＦＢ制御モードとする。故障相が特定されていないと判断された場合（Ｓ１０６：ＮＯ）、Ｓ１２１へ移行する。
【００９９】
Ｓ１２１では、ＥＣＵ５０は、目標シフトレンジが不定から変化したか否かを判断する。目標シフトレンジが不定から変化したと判断された場合（Ｓ１２１：ＹＥＳ）、Ｓ１０８へ移行し、制御モードを故障相特定モードとする。目標シフトレンジが前回処理時と同じであると判断された場合（Ｓ１２１：ＮＯ）、Ｓ１２２へ移行し、制御モードをスタンバイモードとする。すでにスタンバイモードであれば、スタンバイモードを継続する。Ｓ１２３では、ＥＣＵ５０は、目標シフトレンジを不定に切り替えるとともに、目標シフトレンジを不定とした旨の情報を上位ＥＣＵに通知する。すでに目標シフトレンジが不定である場合は、不定を継続する。
【０１００】
本実施形態のモータ駆動処理を図１４のタイムチャートに基づいて説明する。時刻ｘ２０にて目標シフトレンジがＰレンジからｎｏｔＰレンジに切り替わると、図１１の時刻ｘ１０と同様、正常フィードバック制御モードにてモータ１０の駆動を開始する。
【０１０１】
時刻ｘ２１にてエンコーダ異常が生じると、エンコーダ異常フラグがオンされ、制御モードを一旦スタンバイモードとし、モータ１０への通電をオフにする。また、目標シフトレンジを不定とする。図１４の例では、モータ１０への通電オフにより、ディテントスプリング２５のスプリング力により、ディテントローラ２６がＰレンジに対応する凹部２３に戻る（図２参照）。
【０１０２】
時刻ｘ２２にて、目標シフトレンジをｎｏｔＰレンジとする旨の指令が上位ＥＣＵから取得されると、故障相特定モードにてモータ１０の駆動を開始する。故障相特定処理が完了した時刻ｘ２３以降の処理は、図１１中のｘ１２以降の処理と同様であって、故障時フィードバック制御モードによりモータ１０を駆動し、時刻ｘ２４にて目標位置に到達すると、停止制御モードにてモータ１０を停止させる。そして、停止制御を行った後、時刻ｘ２５にてスタンバイモードに切り替え、モータ１０への通電をオフにする。
【０１０３】
図１４の例では、時刻ｘ２１にて通電をオフした際、ディテントローラ２６が凹部２３に戻る例を示しているが、エンコーダ異常が発生した位置等によっては、通電オフしたときに、ディテントローラ２６のスプリング力により、ディテントローラ２６がｎｏｔＰレンジに対応する凹部２２側に落とし込まれることもある。この場合、時刻ｘ２２にて、目標シフトレンジをｎｏｔＰとする旨の指令が上位ＥＣＵから取得されると、目標シフトレンジと実レンジとが一致し、図１３中のＳ１０２にて肯定判断され、以降の処理が行われないので、次回、Ｐレンジへの切替時に、故障相特定処理を行うことになる。
【０１０４】
本実施形態では、モータ１０の駆動中にエンコーダ１３の異常が検出された場合、モータ１０への通電をオフにした後、故障相通電制御を行う。これにより、モータ１０の駆動状態等によらず、適切に故障相通電制御を行うことができる。また上記実施形態と同様の効果を奏する。
【０１０５】
（他の実施形態）
上記実施形態では、故障時フィードバック制御において、通電切替時間をモータ回転数に応じて可変としている。他の実施形態では、通電切替時間をモータ回転数によらず所定時間としてもよい。この場合、図１０中のＳ３０６およびＳ３０７の処理を省略してもよい。
【０１０６】
上記実施形態では、正常時フィードバック制御時において、位相進み量および位相遅れ量である位相補正量を可変とする位相補正制御を行い、故障時フィードバック制御時において、位相補正制御を行わない。他の実施形態では、特に、通電切替時間をモータ回転数に応じて可変としている場合、故障時フィードバック制御時においても位相補正制御を行ってもよい。これにより、故障時フィードバック制御でのモータ駆動状態を、正常時フィードバック制御により近づけることができる。
【０１０７】
上記実施形態では、故障時フィードバック制御中においても故障相のパルスエッジを監視し、適正エッジとなった場合、故障相を正常復帰させる。他の実施形態では、図１０中のＳ３１０およびＳ３１１の処理を省略し、Ｓ３０９にて否定判断された場合はＳ３１５へ移行するようにし、故障相を正常復帰させなくてもよい。これにより、誤復帰を防ぐことができる。
【０１０８】
上記実施形態では、シフトレンジ切替開始時から故障時フィードバック制御を行う場合、初回通電制御を行う（図１０中のＳ３０１〜Ｓ３０５）。他の実施形態では、Ｓ３０１〜Ｓ３０５の処理を省略し、初回通電制御を行わなくてもよい。
【０１０９】
上記実施形態では、ディテントプレートには２つの凹部が設けられる。他の実施形態では、凹部の数は２つに限らず、例えばレンジ毎に凹部が設けられていてもよい。また、シフトレンジ切替機構やパーキングロック機構等は、上記実施形態と異なっていてもよい。
【０１１０】
上記実施形態では、モータ軸と出力軸との間に減速機が設けられる。減速機の詳細について、上記実施形態では言及していないが、例えば、サイクロイド歯車、遊星歯車、モータ軸と略同軸の減速機構から駆動軸へトルクを伝達する平歯歯車を用いたものや、これらを組み合わせて用いたもの等、どのような構成であってもよい。また、他の実施形態では、モータ軸と出力軸との間の減速機を省略してもよいし、減速機以外の機構を設けてもよい。以上、本発明は、上記実施形態になんら限定されるものではなく、発明の趣旨を逸脱しない範囲において種々の形態で実施可能である。
【符号の説明】
【０１１１】
１・・・シフトバイワイヤシステム
１０・・・モータ
１１・・・モータ巻線
１３・・・エンコーダ
４０・・・シフトレンジ制御装置
５０・・・ＥＣＵ
５１・・・信号取得部
５２・・・異常監視部
５５・・・駆動制御部
【図１】
2020061869.tif 000003
【図２】
2020061869.tif 000004
【図３】
2020061869.tif 000005
【図４】
2020061869.tif 000006
【図５】
2020061869.tif 000007
【図６】
2020061869.tif 000008
【図７】
2020061869.tif 000009
【図８】
2020061869.tif 000010
【図９】
2020061869.tif 000011
【図１０】
2020061869.tif 000012
【図１１】
2020061869.tif 000013
【図１２】
2020061869.tif 000014
【図１３】
2020061869.tif 000015
【図１４】
2020061869.tif 000016