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