(57)【要約】【課題】複数の制御部にて、適切にシフトレンジを切替可能なシフトレンジ制御装置を提供する。【解決手段】シフトレンジ制御装置４０は、モータ１０の駆動を制御することでシフトレンジを切り替えるものであって、相互に通信可能であって、モータ１０の駆動を制御する複数の制御部５１、５２を備える。制御部５１、５２は、モータ１０の駆動制御に係る制御情報を共有する。制御情報が異なっている場合、制御部５１、５２の一方を継続制御部、他方を停止制御部とし、停止制御部でのモータ１０の駆動を停止し、継続制御部にてモータ１０の駆動を継続する。すなわち、例えば２つの制御部５１、５２で制御情報が異なっている場合、一方でモータ１０を駆動し、他方は停止する。これにより、１つのモータ１０を複数の制御部にて制御する場合、制御情報の不一致による制御の不整合を防ぐことができる。【選択図】  図４
2020191737.tif 000002
【特許請求の範囲】
【請求項１】
モータ（１０）の駆動を制御することでシフトレンジを切り替えるシフトレンジ制御装置であって、
相互に通信可能であって、前記モータの駆動を制御する複数の制御部（５１、５２）を備え、
前記制御部は、前記モータの駆動制御に係る制御情報を共有し、
第１の前記制御部と第２の前記制御部とで前記制御情報が異なっている場合、第１の前記制御部または第２の前記制御部の一方を継続制御部、他方を停止制御部とし、
前記停止制御部での前記モータの駆動制御を停止し、
前記継続制御部にて前記モータの駆動制御を行うシフトレンジ制御装置。
【請求項２】
前記制御情報は、前記モータの駆動状態に係る駆動状態情報であって、
前記制御部は、レンジ切替要求を認識したとき、他の前記制御部にて前記モータを駆動中である場合、他の前記制御部を前記継続制御部とし、自身を前記停止制御部として前記モータの駆動制御を開始せず、停止を継続する請求項１に記載のシフトレンジ制御装置。
【請求項３】
前記制御情報は、前記モータの通電を切り替える駆動回路（４１、４２）のスイッチング素子（４１１〜４１６、４２１〜４２６）のオンオフ制御に係る通電デューティ指令値、または、前記通電デューティ指令値の演算に用いられるパラメータである請求項１に記載のシフトレンジ制御装置。
【請求項４】
前記制御情報は、目標レンジに応じて設定され、前記モータを停止させる目標停止位置、または、前記目標停止位置の演算に係るパラメータである請求項１に記載のシフトレンジ制御装置。
【請求項５】
前記制御情報は、前記モータの駆動方向である請求項１に記載のシフトレンジ制御装置。
【請求項６】
前記継続制御部および前記停止制御部は、予め設定されている請求項３〜５のいずれか一項に記載のシフトレンジ制御装置。
【請求項７】
前記制御情報の不一致が検出されてから判定待機時間内に不一致を解消可能、または、不一致が解消された場合、全ての前記制御部にて前記モータの駆動制御を行い、
前記制御情報の不一致が前記判定待機時間に亘って継続された場合、前記停止制御部での前記モータの駆動制御を停止する請求項１〜６のいずれか一項に記載のシフトレンジ制御装置。
【請求項８】
前記継続制御部は、前記停止制御部での前記モータの駆動制御が停止されている場合、、前記モータの通電を切り替える駆動回路（４１、４２）のスイッチング素子（４１１〜４１６、４２１〜４２６）のオンオフ制御に係る通電デューティ指令値を、全ての前記制御部を用いて前記モータの駆動制御を行う場合とは変更する請求項１〜７のいずれか一項に記載のシフトレンジ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シフトレンジ制御装置に関する。
【背景技術】
【０００２】
従来、モータの駆動を制御することでシフトレンジを切り替えるシフトレンジ制御装置が知られている。例えば特許文献１では、２つのマイコンのうちの１つによりモータの駆動が制御され、モータの駆動制御に用いられているマイコンに異常が生じた場合、モータの駆動制御に用いるマイコンを他のマイコンに切り替える。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１８−４０４６２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、複数の制御部を用いて１つのモータを制御する場合、例えば１つの制御部がモータを駆動させようとし、他の制御部がモータを停止させようとする、といった具合に指令が揃わないと、モータの駆動がロックされたり、意図しない動作をしたりする虞がある。
【０００５】
本発明は、上述の課題に鑑みてなされたものであり、その目的は、複数の制御部にて、適切にシフトレンジを切替可能なシフトレンジ制御装置を提供することにある。
【課題を解決するための手段】
【０００６】
本発明のシフトレンジ制御装置は、モータ（１０）の駆動を制御することでシフトレンジを切り替えるものであり、複数の制御部（５１、５２）を備える。制御部は、相互に通信可能であって、モータの駆動を制御する。制御部は、モータの駆動制御に係る制御情報を共有する。第１の制御部と第２の制御部とで制御情報が異なっている場合、第１の制御部または第２の制御部の一方を継続制御部、他方を停止制御部とし、停止制御部でのモータの駆動制御を停止し、継続制御部にてモータの駆動制御を行う。これにより、制御情報の不一致に伴う制御の不整合を防ぐことができるので、適切にシフトレンジを切替可能である。
【図面の簡単な説明】
【０００７】
【図１】第１実施形態によるシフトバイワイヤシステムを示す斜視図である。
【図２】第１実施形態によるシフトバイワイヤシステムを示す概略構成図である。
【図３】第１実施形態によるモータおよびモータドライバを示す回路図である。
【図４】第１実施形態によるシフトレンジ制御装置を示すブロック図である。
【図５】第１実施形態によるモータ軸、出力軸およびディテントプレートの関係を説明する模式図である。
【図６】第１実施形態による駆動制御処理を説明するフローチャートである。
【図７】第１実施形態による駆動制御処理を説明するタイムチャートである。
【図８】第２実施形態による駆動制御処理を説明するフローチャートである。
【図９】第２実施形態による駆動制御処理を説明するタイムチャートである。
【図１０】第３実施形態による第１制御部での駆動制御処理を説明するフローチャートである。
【図１１】第３実施形態による第２制御部での駆動制御処理を説明するフローチャートである。
【図１２】第３実施形態による情報一致判定処理を説明するフローチャートである。
【図１３】第３実施形態による目標レンジが不一致の場合を説明するタイムチャートである。
【図１４】第３実施形態による目標カウント値が不一致の場合を説明するタイムチャートである。
【図１５】第３実施形態による駆動方向が不一致の場合を説明するタイムチャートである。
【図１６】第３実施形態による谷位置学習値が不一致の場合を説明するタイムチャートである。
【図１７】第３実施形態による現在レンジが不一致の場合を説明するタイムチャートである。
【図１８】第３実施形態による通電デューティ指令値が不一致の場合を説明するタイムチャートである。
【図１９】第４実施形態による指令演算処理を説明するフローチャートである。
【図２０】第４実施形態による駆動制御処理を説明するタイムチャートである。
【図２１】他の実施形態によるシフトレンジ制御装置を示すブロック図である。
【発明を実施するための形態】
【０００８】
（第１実施形態）
以下、本発明によるシフトレンジ制御装置を図面に基づいて説明する。以下、複数の実施形態において、実質的に同一の構成には同一の符号を付して説明を省略する。第１実施形態を図１〜図７に示す。図１および図２に示すように、シフトバイワイヤシステム１は、モータ１０、シフトレンジ切替機構２０、パーキングロック機構３０、および、シフトレンジ制御装置４０等を備える。
【０００９】
モータ１０は、図示しない車両に搭載されるバッテリ４５から電力が供給されることで回転し、シフトレンジ切替機構２０の駆動源として機能する。本実施形態のモータ１０は、ＤＣブラシレスモータであるが、スイッチトリラクタンスモータ等であってもよい。
【００１０】
図２に示すように、モータ回転角センサであるエンコーダ１３１、１３２は、モータ１０の図示しないロータの回転位置を検出する。エンコーダ１３１、１３２は、例えば磁気式のロータリーエンコーダであって、ロータと一体に回転する磁石と、磁気検出用のホールＩＣ等により構成される。エンコーダ１３１、１３２は、ロータの回転に同期して、所定角度ごとに３相のパルス信号であるエンコーダ信号ＳＧＮ＿ｅ１、ＳＮＧ＿ｅ２を出力する。
【００１１】
減速機１４は、モータ１０のモータ軸１０５（図５参照）と出力軸１５との間に設けられ、モータ１０の回転を減速して出力軸１５に出力する。これにより、モータ１０の回転がシフトレンジ切替機構２０に伝達される。出力軸１５には、出力軸１５の角度を検出する出力軸センサ１６１、１６２が設けられ、出力軸１５の回転位置に応じた出力軸信号ＳＧＮ＿ｓ１、ＳＧＮ＿ｓ２を出力する。出力軸センサ１６１、１６２は、例えばポテンショメータである。
【００１２】
図１に示すように、シフトレンジ切替機構２０は、ディテントプレート２１、および、付勢部材であるディテントスプリング２５等を有し、減速機１４から出力された回転駆動力を、マニュアルバルブ２８、および、パーキングロック機構３０へ伝達する。ディテントプレート２１は、出力軸１５に固定され、モータ１０により駆動される。
【００１３】
ディテントプレート２１には、出力軸１５と平行に突出するピン２４が設けられる。ピン２４は、マニュアルバルブ２８と接続される。ディテントプレート２１がモータ１０によって駆動されることで、マニュアルバルブ２８は軸方向に往復移動する。すなわち、シフトレンジ切替機構２０は、モータ１０の回転運動を直線運動に変換してマニュアルバルブ２８に伝達する。マニュアルバルブ２８は、バルブボディ２９に設けられる。マニュアルバルブ２８が軸方向に往復移動することで、図示しない油圧クラッチへの油圧供給路が切り替えられ、油圧クラッチの係合状態が切り替わることでシフトレンジが変更される。
【００１４】
ディテントプレート２１のディテントスプリング２５側には、マニュアルバルブ２８を各レンジに対応する位置に保持するための４つの凹部２２が設けられる。凹部２２は、ディテントスプリング２５の基部側から、Ｄ（ドライブ）、Ｎ（ニュートラル）、Ｒ（リバーズ）、Ｐ（パーキング）の各レンジに対応している。
【００１５】
ディテントスプリング２５は、弾性変形可能な板状部材であり、先端にディテントローラ２６が設けられる。ディテントローラ２６は、凹部２２のいずれかに嵌まり込む。ディテントスプリング２５は、ディテントローラ２６をディテントプレート２１の回動中心側に付勢する。ディテントプレート２１に所定以上の回転力が加わると、ディテントスプリング２５が弾性変形し、ディテントローラ２６が凹部２２を移動する。ディテントローラ２６が凹部２２のいずれかに嵌まり込むことで、ディテントプレート２１の揺動が規制され、マニュアルバルブ２８の軸方向位置、および、パーキングロック機構３０の状態が決定され、自動変速機５のシフトレンジが固定される。
【００１６】
パーキングロック機構３０は、パーキングロッド３１、円錐体３２、パーキングロックポール３３、軸部３４、および、パーキングギア３５を有する。パーキングロッド３１は、略Ｌ字形状に形成され、一端３１１側がディテントプレート２１に固定される。パーキングロッド３１の他端３１２側には、円錐体３２が設けられる。円錐体３２は、他端３１２側にいくほど縮径するように形成される。ディテントプレート２１が逆回転方向に揺動すると、円錐体３２がＰ方向に移動する。
【００１７】
パーキングロックポール３３は、円錐体３２の円錐面と当接し、軸部３４を中心に揺動可能に設けられる、パーキングロックポール３３のパーキングギア３５側には、パーキングギア３５と噛み合い可能な凸部３３１が設けられる。ディテントプレート２１が逆回転方向に回転し、円錐体３２がＰ方向に移動すると、パーキングロックポール３３が押し上げられ、凸部３３１とパーキングギア３５とが噛み合う。一方、ディテントプレート２１が正回転方向に回転し、円錐体３２がＮｏｔＰ方向に移動すると、凸部３３１とパーキングギア３５との噛み合いが解除される。
【００１８】
パーキングギア３５は、図示しない車軸に設けられ、パーキングロックポール３３の凸部３３１と噛み合い可能に設けられる。パーキングギア３５と凸部３３１とが噛み合うと、車軸の回転が規制される。シフトレンジがＮｏｔＰレンジのとき、パーキングギア３５はパーキングロックポール３３によりロックされず、車軸の回転は、パーキングロック機構３０により妨げられない。また、シフトレンジがＰレンジのとき、パーキングギア３５はパーキングロックポール３３によってロックされ、車軸の回転が規制される。
【００１９】
図２〜図４に示すように、シフトレンジ制御装置４０は、モータドライバ４１、４２、および、制御部５１、５２等を備える。図３に示すように、第１モータドライバ４１は、第１モータ巻線１１の通電を切り替える３相インバータであって、スイッチング素子４１１〜４１６がブリッジ接続される。対になるＵ相のスイッチング素子４１１、４１４の接続点には、Ｕ１コイル１１１の一端が接続される。対になるＶ相のスイッチング素子４１２、４１５の接続点には、Ｖ１コイル１１２の一端が接続される。対になるＷ相のスイッチング素子４１３、４１６の接続点には、Ｗ１コイル１１３の一端が接続される。コイル１１１〜１１３の他端は、結線部１１５で結線される。
【００２０】
第２モータドライバ４２は、第２モータ巻線１２の通電を切り替える３相インバータであって、スイッチング素子４２１〜４２６がブリッジ接続される。対になるＵ相のスイッチング素子４２１、４２４の接続点には、Ｕ２コイル１２１の一端が接続される。対になるＶ相のスイッチング素子４２２、４２５の接続点には、Ｖ２コイル１２２の一端が接続される。対になるＷ相のスイッチング素子４２３、４２６の接続点には、Ｗ２コイル１２３の一端が接続される。コイル１２１〜１２３の他端は、結線部１２５で結線される。本実施形態のスイッチング素子４１１〜４１６、４２１〜４２６は、ＭＯＳＦＥＴであるが、ＩＧＢＴ等の他の素子を用いてもよい。
【００２１】
図２および図３に示すように、第１モータドライバ４１とバッテリ４５との間には、第１モータリレー４６が設けられ、バッテリ４５と第１モータドライバ４１との間の導通および遮断を切替可能である。第２モータドライバ４２とバッテリ４５との間には、第２モータリレー４７が設けられ、バッテリ４５と第２モータドライバ４２との間の導通および遮断を切替可能である。バッテリ４５の高電位側には、バッテリ電圧Ｖを検出する電圧センサ４８が設けられる。
【００２２】
ＥＣＵ５０は、スイッチング素子４１１〜４１６、４２１〜４２６のオンオフ作動を制御し、モータ１０の駆動を制御することで、シフトレンジの切り替えを制御する。また、ＥＣＵ５０は、車速、アクセル開度、および、ドライバ要求シフトレンジ等に基づき、変速用油圧制御ソレノイド６の駆動を制御する。変速用油圧制御ソレノイド６を制御することで、変速段が制御される。変速用油圧制御ソレノイド６は、変速段数等に応じた本数が設けられる。本実施形態では、１つのＥＣＵ５０がモータ１０およびソレノイド６の駆動を制御するが、モータ１０を制御するモータ制御用のモータＥＣＵと、ソレノイド制御用のＡＴ−ＥＣＵとを分けてもよい。以下、モータ１０の駆動制御を中心に説明する。
【００２３】
ＥＣＵ５０は、第１制御部５１および第２制御部５２を有する。制御部５１、５２は、内部にはいずれも図示しないＣＰＵ、ＲＯＭ、ＲＡＭ、Ｉ／Ｏ、及び、これらの構成を接続するバスライン等を備えている。ＥＣＵ５０における各処理は、ＲＯＭ等の実体的なメモリ装置（すなわち、読み出し可能非一時的有形記録媒体）に予め記憶されたプログラムをＣＰＵで実行することによるソフトウェア処理であってもよいし、専用の電子回路によるハードウェア処理であってもよい。制御部５１、５２は、マイコン間通信等にて通信可能に構成されており、相互に情報を送受信する。また、制御部５１、５２は、図示しない外部制御部からシフトレンジの切り替えを指示する切替要求を通信にて取得する。
【００２４】
以下、第１モータ巻線１１、および、第１モータ巻線１１の通電制御に係る第１制御部５１等の組み合わせを第１系統とする。また、第２モータ巻線１２、および、第２モータ巻線１２の通電制御に係る第２制御部５２等の組み合わせを第２系統とする。以下適宜、第１系統の係る構成および値に添え字の「１」を付し、第２系統に係る値に添え字の「２」を付す。
【００２５】
第１制御部５１は、角度演算部５１１、信号取得部５１２、通電制御部５１３、および、異常監視部５１６等を有する。角度演算部５１１は、第１エンコーダ１３１から出力されるエンコーダ信号ＳＧＮ＿ｅ１を取得し、エンコーダ信号ＳＧＮ＿ｅ１のパルスエッジをカウントし、エンコーダカウント値θｅｎ１を演算する。信号取得部５１２は、出力軸センサ１６１から出力軸信号ＳＧＮ＿ｓ１を取得し、出力軸角度θ＿ｓ１を演算する。
【００２６】
通電制御部５１３は、モータ巻線１１への通電を制御する。具体的には、通電制御部５１３は、第１モータドライバ４１のスイッチング素子４１１〜４１６のオンオフ作動を制御する制御信号を生成し、第１モータドライバ４１に出力する。通電制御部５１３は、エンコーダカウント値θｅｎ１が目標シフトレンジに応じて設定される目標カウント値θｃｍｄ１となるように、フィードバック制御等によりモータ１０の駆動を制御する。異常監視部５１６は、第１系統における異常を監視する。
【００２７】
第２制御部５２は、角度演算部５２１、信号取得部５２２、通電制御部５２３、および、異常監視部５２６等を有する。角度演算部５２１は、エンコーダ１３２から出力されるエンコーダ信号ＳＧＮ＿ｅ２の各相のパルスエッジをカウントし、エンコーダカウント値θｅｎ２を演算する。信号取得部５２２は、出力軸センサ１６２から出力軸信号ＳＧＮ＿ｓ２を取得する。
【００２８】
通電制御部５２３は、モータ巻線１２への通電を制御する。具体的には、通電制御部５２３は、第２モータドライバ４２のスイッチング素子４２１〜４２６のオンオフ作動を制御する制御信号を生成し、第２モータドライバ４２に出力する。通電制御部５２３は、エンコーダカウント値θｅｎ２が目標シフトレンジに応じて設定される目標カウント値θｃｍｄ２となるように、フィードバック制御等によりモータ１０の駆動を制御する。異常監視部５２６は、第２系統における異常を監視する。
【００２９】
ここで、モータ１０の回転軸であるモータ軸１０５、出力軸１５、および、ディテントプレート２１の関係を図５に示す。図５では、実線で示す状態から二点鎖線で示す状態へとモータ１０が回転することで、ドライバ要求シフトレンジに応じた凹部２２に嵌まり込む状態を模式的に示している。ここでは、Ｐレンジに対応する凹部を凹部２２１、Ｒレンジに対応する凹部を凹部２２２とし、凹部２２１、２２２が山部２２５にて隔てられている箇所を図示した。
【００３０】
図５において、モータ１０および出力軸１５の回転方向を紙面左右方向とし、シフトレンジをＰレンジからＲレンジへ切り替えるべく、ディテントローラ２６を凹部２２１から凹部２２２へ移動させる状態を示す。実際には、ディテントプレート２１が回転することでディテントローラ２６が凹部２２を移動するが、図５では、単にディテントローラ２６が移動するように図示した。また、図５は、「遊び」を概念的に示す模式図であって、出力軸１５と減速機１４とが一体となっており、モータ軸１０５が減速機１４の遊びの範囲で移動可能であるものとして記載しているが、モータ軸１０５と減速機１４とが一体となっており、減速機１４と出力軸１５との間に「遊び」が存在しているように構成しても差し支えない。
【００３１】
モータ軸１０５と出力軸１５との間には、減速機１４が設けられており、モータ軸１０５と出力軸１５との間のギアバックラッシュを含む「遊び」が存在している。モータ軸１０５と減速機１４とが回転方向において離間している状態にてモータ１０が回転する場合、モータ軸１０５と減速機１４とが当接するまでの間、モータ１０は空走状態となり、モータ１０の回転は、出力軸１５側へ伝達されない。以下適宜、遊びの範囲内にてモータ１０の回転が出力軸１５に伝達されない状態を「ガタ空走状態」とし、モータ軸１０５と減速機１４とが当接しガタ空走状態が終了することを「ガタ詰まり」とする。
【００３２】
ガタ空走が終了すると、モータ１０と出力軸１５およびディテントプレート２１とが一体となって回転する。これにより、ディテントローラ２６は、凹部２２１、２２２間の山部２２５を乗り越え、凹部２２へ移動する。ディテントローラ２６が山部２２５の頂点を超えると、ディテントスプリング２５の付勢力により出力軸１５が先行し、ディテントローラ２６が凹部２２２に嵌まり込むと、ガタ内にてモータ１０が停止する。
【００３３】
ところで本実施形態では、２つの制御部５１、５２にて、１つのモータ１０の駆動を制御している。本実施形態では、制御部５１、５２は、図示しない外部制御部からシフトレンジ切替要求を取得し、モータ１０の駆動を開始する。ここで、通信遅れ等により、制御部５１、５２にて、シフトレンジ切替要求の取得タイミングがずれると、モータ１０の駆動開始タイミングがずれ、例えば一方が加速させようとし、他方が減速させようとする、といった具合に、モータ１０の駆動制御に不整合が生じる虞がある。
【００３４】
そこで本実施形態では、シフトレンジ切替要求が取得されたとき、通信で得た情報に基づき、他系統が駆動中であれば、自系統での駆動をキャンセルする。本実施形態では、駆動モードがスタンバイモードのとき、モータ１０は、レンジ切り替えが開始されておらず、停止中である。駆動モードがフィードバックモードおよび停止モードのとき、レンジ切り替えが開始されている。また、異常によりモータ１０の駆動制御を行わない系統の駆動モードはスタンバイモードとする。
【００３５】
本実施形態の駆動制御処理を図６のフローチャートに基づいて説明する。この処理は、イグニッションスイッチ等である車両の始動スイッチがオンされているときに、所定の周期で実行される。以下、ステップＳ１０１の「ステップ」を省略し、単に記号「Ｓ」と記す。他のステップも同様である。図中、フィードバックを「Ｆ／Ｂ」と記載する。
【００３６】
Ｓ１０１では、制御部５１、５２は、駆動モードを判定し、駆動モードがスタンバイモードの場合、Ｓ１０２へ移行し、フィードバックモードの場合、Ｓ１０５へ移行し、停止モードの場合、Ｓ１０７へ移行する。
【００３７】
駆動モードがフィードバックモードである場合に移行するＳ１０２では、制御部５１、５２は、目標レンジが変更されたか否か判断する。目標レンジが変更されていないと判断された場合（Ｓ１０２：ＮＯ）、スタンバイモードを継続する。目標レンジが変更されたと判断された場合（Ｓ１０２：ＹＥＳ）、Ｓ１０３へ移行する。
【００３８】
Ｓ１０３では、制御部５１、５２は、他系統の駆動モードがスタンバイモードか否か判断する。なお、３系統以上の場合、全ての系統の駆動モードがスタンバイモードであれば肯定判断し、少なくとも１系統がスタンバイモード以外のモードであって、モータ１０が駆動開始している場合、否定判断する。第２実施形態のＳ２０２も同様とする。他系統の駆動モードがスタンバイモードではないと判断された場合（Ｓ１０３：ＮＯ）、すなわち他系統にてレンジ切り替えが開始されている場合、スタンバイモードを継続する。他系統の駆動モードがスタンバイモードであると判断された場合（Ｓ１０３：ＹＥＳ）、Ｓ１０４へ移行し、駆動モードをフィードバックモードに切り替える。
【００３９】
駆動モードがフィードバックモードである場合に移行するＳ１０５では、制御部５１、５２は、モータ１０の回転位置が目標角度に到達したか否かを判断する。本実施形態では、エンコーダカウント値θｅｎ１、θｅｎ２が目標カウント値θｃｍｄ１、θｃｍｄ２を含む所定範囲内（例えば±２カウント）になった場合、目標角度に到達したと判断する。モータ１０の回転位置が目標角度に到達していないと判断された場合（Ｓ１０５：ＮＯ）、フィードバックモードを継続する。モータ１０の回転位置が目標角度に到達したと判断された場合（Ｓ１０５：ＹＥＳ）、Ｓ１０６へ移行し、駆動モードを停止モードに切り替える。停止モードでは、エンコーダカウント値θｅｎ１、θｅｎ２に応じた２相への固定相通電により、モータ１０を停止させる。
【００４０】
駆動モードが停止モードである場合に移行するＳ１０７では、固定相通電を開始してから固定相通電継続時間が経過し、固定相通電が完了したか否かを判断する。固定相通電継続時間は、モータ１０を停止させるのに要する時間に応じて設定される。固定相通電が完了していないと判断された場合（Ｓ１０７：ＮＯ）、停止モードを継続する。固定相通電が完了したと判断された場合（Ｓ１０７：ＹＥＳ）、Ｓ１０８へ移行し、駆動モードをスタンバイモードに切り替える。
【００４１】
本実施形態の駆動制御処理を図７のタイムチャートに基づいて説明する。図７では、上段に第１系統、下段に第２系統を示す。図中、第１系統の処理を「ＣＰＵ１」、第２系統の処理を「ＣＰＵ２」と記載する。また各系統において、上段から、切替要求認識、駆動モード、目標レンジ、モータおよび出力軸の角度を示す。モータ角度はエンコーダカウント値θｅｎ１、θｅｎ２として記載し、出力軸角度θｓ１、θｓ２はエンコーダカウント値に換算した値として記載した。また、ＰレンジおよびＲレンジに対応する値に括弧書きでレンジを記載した。後述の実施形態に係る図面についても概ね同様である。
【００４２】
第１制御部５１では、時刻ｘ１１にて、切替要求が認識され、切替要求がオンになり、目標レンジが変更される。ここでは、目標レンジがＰレンジからＲレンジに変更されている。切替要求がオンになると、駆動モードがスタンバイモードからフィードバックモードに変更され、モータ１０の駆動が開始される。時刻ｘ１３にて、ガタ空走が終了すると、出力軸１５が駆動される。また、フィードバック制御中において、ディテントローラ２６が山部２２５を乗り越えると、ディテントスプリング２５の付勢力により、出力軸１５が先行する。
【００４３】
時刻ｘ１４にて、モータ１０が目標位置に到達すると、駆動モードをフィードバックモードから停止モードに切り替え、固定相通電によりモータ１０を停止させる。時刻ｘ１４から固定相通電継続時間が経過した時刻ｘ１５にて、駆動モードを停止モードからスタンバイモードに切り替える。
【００４４】
第２制御部５２では、時刻ｘ１２にて、切替要求が認識される。このとき、すでに第１系統にてモータ１０の駆動が開始されているので、第２制御部５２では、スタンバイを保持する。換言すると、モータ１０の駆動制御をキャンセルする。モータ１０は、第１系統にて駆動されるので、第２系統のエンコーダカウント値θｅｎ２は、第１系統のエンコーダカウント値θｅｎ１と同様に変化する。同様に、第２系統の出力軸角度θｓ２は、第１系統の出力軸角度θｓ１と同様に変化する。なお、第２制御部５２では、時刻ｘ１２において、スタンバイモードが継続されるため、目標カウント値θｃｍｄ２を設定しなくてもよいが、ここでは説明のため記載した。
【００４５】
本実施形態では、モータ１０の駆動制御に係る情報を系統間で共有しており、切替要求認識タイミングのずれにより、一方の系統にてモータ１０の駆動が開始されていた場合、他方の系統はモータ１０の駆動制御を行わず、スタンバイを保持する。この場合、モータ１０は、一方の系統にて駆動される。これにより、系統間でモータ１０の駆動を阻害することなく、モータ１０を適切に駆動することができる。
【００４６】
以上説明したように、本実施形態のシフトレンジ制御装置４０は、モータ１０の駆動を制御することでシフトレンジを切り替えるものであって、相互に通信可能であって、モータ１０の駆動を制御する複数の制御部５１、５２を備える。制御部５１、５２は、モータ１０の駆動制御に係る制御情報を共有する。制御情報が異なっている場合、制御部５１、５２の一方を継続制御部、他方を停止制御部とし、停止制御部でのモータ１０の駆動を停止し、継続制御部にてモータ１０の駆動を継続する。すなわち、例えば２つの制御部５１、５２で制御情報が異なっている場合、一方でモータ１０を駆動し、他方は停止する。これにより、１つのモータ１０を複数の制御部にて制御する場合、制御情報の不一致による制御の不整合を防ぐことができる。
【００４７】
本実施形態の制御情報は、「モータの駆動状態に係る駆動状態情報」としての駆動モードである。制御部５１、５２には、レンジ切替要求を認識したとき、他の制御部にてモータ１０を駆動中である場合、他の制御部を継続制御部とし、自身を停止制御部としてモータ１０に駆動制御を開始せず、停止を継続する。これにより、レンジ切替要求の認識タイミングのずれによるモータ１０の駆動の不整合を防ぐことができる。
【００４８】
（第２実施形態）
第２実施形態を図８および図９に示す。本実施形態では、駆動制御処理が上記実施形態と異なるので、この点を中心に説明する。本実施形態の駆動制御処理を図８のフローチャートに基づいて説明する。
【００４９】
Ｓ２０１の処理は図６中のＳ１０１の処理と同様であり、駆動モードがスタンバイモードの場合、Ｓ２０２へ移行し、フィードバックモードの場合、Ｓ２０９へ移行し、停止モードの場合、Ｓ２１１へ移行する。
【００５０】
Ｓ２０２では、制御部５１、５２は、他系統の駆動モードがスタンバイモードか否か判断する。他系統がスタンバイモードであると判断された場合（Ｓ２０２：ＹＥＳ）、Ｓ２０３へ移行し、切替禁止フラグをオフにする。切替禁止フラグがオフであれば、オフの状態を継続する。他系統の駆動モードがスタンバイモードではないと判断された場合（Ｓ２０２：ＮＯ）、すなわち他系統にてモータ１０の駆動が開始されている場合、Ｓ２０４へ移行する。
【００５１】
Ｓ２０４では、制御部５１、５２は、判定待機時間Ｔｗが経過したか否かを判断する。判定待機時間Ｔｗは、系統間の制御タイミングのずれによる不整合が生じない程度の時間に設定される。判定待機時間Ｔｗが経過していないと判断された場合（Ｓ２０４：ＮＯ）、Ｓ２０５の処理を行わず、切替禁止フラグがオフされた状態を維持する。判定待機時間Ｔｗが経過したと判断された場合（Ｓ２０４：ＹＥＳ）、Ｓ２０５へ移行し、切替禁止フラグをオンにする。
【００５２】
Ｓ２０６の処理は、図６中のＳ１０２の処理と同様であり、目標レンジが変更されていないと判断された場合（Ｓ２０６：ＮＯ）、スタンバイモードを継続し、目標レンジが変更されたと判断された場合（Ｓ２０６：ＹＥＳ）、Ｓ２０７へ移行する。
【００５３】
Ｓ２０７では、制御部５１、５２は、切替禁止フラグがオフか否か判断する。切替禁止フラグがオフであると判断された場合（Ｓ２０７：ＹＥＳ）、Ｓ２０８へ移行し、駆動モードをフィードバックモードに切り替える。切替禁止フラグがオンであると判断された場合（Ｓ２０７：ＮＯ）、Ｓ２０８の処理を行わず、スタンバイモードを継続する。Ｓ２０９〜Ｓ２１２の処理は、図６中のＳ１０５〜Ｓ１０８の処理と同様である。
【００５４】
本実施形態の駆動制御処理を図９のタイムチャートに基づいて説明する。第１系統の動作は、第１実施形態と同様であって、時刻ｘ２１の処理は図７中の時刻ｘ１１の処理と同様であり、時刻ｘ２３〜時刻ｘ２６の処理は、図７中の時刻ｘ１２〜時刻ｘ１５の処理と同様である。
【００５５】
第２制御部５２では、時刻ｘ２１にて、第１系統がスタンバイモードからフィードバックモードに切り替わると、計時を開始する。時刻ｘ２２にて判定待機時間Ｔｗが経過すると、切替禁止フラグをオンにする。時刻ｘ２３にて、第２制御部５２の切替要求がオンになる。このとき、切替禁止フラグがオンなので、スタンバイを保持し、モータ１０は第１系統にて駆動される。判定待機時間Ｔｗが経過した段階にて、切替禁止フラグをオンにしておくことで、切替要求を認識するのに先立ち、事前に切替可否を判断することができる。また、時刻ｘ２６にて、第１系統の駆動モードが停止モードからスタンバイモードに切り替わり、レンジ切り替えが完了すると、切替禁止フラグをオフに戻す。
【００５６】
図示は省略するが、第１系統がフィードバックモードに切り替わった時刻ｘ２１から判定待機時間Ｔｗが経過するまでの間に、第２制御部５２がレンジ切替要求を認識した場合、駆動モードをスタンバイモードからフィードバックモードに切り替え、モータ１０を駆動する。この場合、モータ１０は、第１系統および第２系統にて駆動される。
【００５７】
本実施形態では、切替要求認識に判定ディレイを設けており、判定待機時間Ｔｗ内に切替要求を認識した場合には、フィードバックモードに遷移する。これにより、切替要求認識の系統間でのズレが判定待機時間Ｔｗ内であれば、２系統を用いたモータ１０を駆動することができる。また、切替要求認識のズレが判定待機時間Ｔｗより大きい場合は、先に切替要求を認識した系統にてモータ１０を駆動し、遅れて切替要求を認識した系統での駆動制御を停止することで、先にモータ１０の駆動を開始した系統を阻害することなく、適切にモータ１０を駆動することができる。
【００５８】
本実施形態では、制御情報の不一致が検出されてから判定待機時間Ｔｗ内に不一致を解消可能、または、不一致が解消された場合、全ての制御部５１、５２にてモータ１０の駆動制御を行い、制御情報の不一致が判定待機時間Ｔｗに亘って継続された場合、停止制御部でのモータ１０の駆動制御を停止する。本実施形態の制御情報は、第１実施形態と同様、駆動モードであるが、第３実施形態にて説明する駆動モード以外の情報であってもよい。ここで、第１制御部５１がフィードバックモードに切り替わってから、判定待機時間Ｔｗ内に、第２制御部５２にて切替要求が認識されれば、駆動モードをフィードバックモードに切替可能であるので、「制御情報の不一致が検出されてから判定待機時間内に不一致を解消可能」と捉えられる。これにより、判定待機時間Ｔｗ内のタイミングのずれが許容される。また、第２制御部５２にて、切替要求認識が切り替わる前の段階にて、事前に切替可否を判定することができる。
【００５９】
（第３実施形態）
第３実施形態を図１０〜図１７に示す。上記実施形態では、切替要求の認識タイミングがずれた場合、先に切替要求を認識した系統を用いてモータ１０を駆動する。本実施形態では、系統間で情報が異なった場合には、第１系統を優先的に用いてモータ１０を駆動する。なお、切替要求の認識タイミングについては、上記実施形態と同様にしてもよい。
【００６０】
本実施形態の駆動制御処理を図１０〜図１２のフローチャートに基づいて説明する。図１０は第１制御部５１での処理であり、図１１および図１２は第２制御部５２での処理である。図１０のＳ３０１の処理は、図６中のＳ１０１の処理と同様であって、駆動モードがスタンバイモードのときＳ３０２、フィードバックモードのときＳ３０４、停止モードのときＳ３０６へ移行する。
【００６１】
Ｓ３０２の処理は、図６中のＳ１０２の処理と同様であって、目標レンジが変更されたと判断されると、Ｓ３０３へ移行し、駆動モードをフィードバックモードに切り替える。Ｓ３０４〜Ｓ３０７の処理は、図６中のＳ１０５〜Ｓ１０８の処理と同様である。
【００６２】
第２制御部５２での駆動制御処理を図１１および図１２に示す。図１１中のＳ４０１の処理は、図６中のＳ１０１と同様であって、駆動モードがスタンバイモードのときＳ４０２、フィードバックモードのときＳ４０４、停止モードのときＳ４０８へ移行する。Ｓ４０２の処理は、図６中のＳ１０２の処理と同様であって、目標レンジが変更されたと判断されると、Ｓ４０３へ移行し、駆動モードをフィードバックモードに切り替える。
【００６３】
駆動モードがフィードバックモードである場合に移行するＳ４０４では、情報一致判定処理を行う。情報一致判定処理のサブフローを図１２に示す。図１２中のＳ４４１〜Ｓ４４７の処理は、順番を入れ替えてもよい。また、Ｓ４４１〜Ｓ４４７の処理において、第２実施形態のように、不一致が検出されてから確定されるまでに任意の判定ディレイ時間を設けてもよい。判定ディレイ時間は、各処理において同じであってもよいし、異なっていてもよい。また、Ｓ４４１〜Ｓ４４７の一部の処理を省略してもよい。
【００６４】
Ｓ４４１では、第２制御部５２は、自系統の目標レンジが他系統の目標レンジと一致しているか否か判断する。目標レンジが一致していないと判断された場合（Ｓ４４１：ＮＯ）、Ｓ４４９へ移行し、一致していると判断されてた場合（Ｓ４４１：ＹＥＳ）、Ｓ４４２へ移行する。
【００６５】
Ｓ４４２では、第２制御部５２は、自系統の目標カウント値θｃｍｄ２と、他系統の目標カウント値θｃｍｄ１とが一致しているか否か判断する。ここでは、目標カウント値θｃｍｄ１、θｃｍｄ２の差の絶対値が目標カウント一致判定値θｃｍｄ＿ｔｈ以下の場合、目標カウント値θｃｍｄ１、θｃｍｄ２が一致していると判断する。目標カウント値θｃｍｄ１、θｃｍｄ２が一致していないと判断された場合（Ｓ４４２：ＮＯ）、Ｓ４４９へ移行し、目標カウント値θｃｍｄ１、θｃｍｄ２が一致していると判断された場合（Ｓ４４２：ＹＥＳ）、Ｓ４４３へ移行する。
【００６６】
Ｓ４４３では、第２制御部５２は、自系統におけるモータ１０を駆動させる駆動方向が他系統の駆動方向と一致しているか否か判断する。駆動方向が他系統と一致していないと判断された場合（Ｓ４４３：ＮＯ）、Ｓ４４９へ移行し、駆動方向が他系統と一致していると判断された場合（Ｓ４４３：ＹＥＳ）、Ｓ４４４へ移行する。
【００６７】
Ｓ４４４では、第２制御部５２は、自系統にて保持されている谷位置学習値が、他系統の谷位置学習値と一致しているか否か判断する。谷位置学習値は、ディテントローラ２６が各レンジに対応する凹部２２に嵌まり合っているときのエンコーダカウント値である。ここでは、レンジ毎に、谷位置学習値の系統間誤差が谷位置学習値一致判定値以下の場合、谷位置学習値が一致していると判断する。谷位置学習値が一致していないと判断された場合（Ｓ４４４：ＮＯ）、Ｓ４４９へ移行し、谷位置学習値が一致していると判断された場合（Ｓ４４４：ＹＥＳ）、Ｓ４４５へ移行する。
【００６８】
Ｓ４４５では、第２制御部５２は、自系統の現在レンジが他系統と一致しているか否か判断する。現在レンジが一致していないと判断された場合（Ｓ４４５：ＮＯ）、Ｓ４４９へ移行し、現在レンジが一致していると判断された場合（Ｓ４４５：ＹＥＳ）、Ｓ４４６へ移行する。
【００６９】
Ｓ４４６では、第２制御部５２は、モータ１０の通電制御に係るパラメータである通電パラメータが一致しているか否か判断する。通電パラメータは、モータ１０の駆動制御に用いられる値であって、例えば電圧、温度、目標回転数、検出電流、トルク指令値等である。ここでは、判定するパラメータごとに一致判定値が設定されており、系統間誤差が一致判定値以下の場合、通電パラメータが一致していると判断する。通電パラメータが一致していないと判断された場合（Ｓ４４６：ＮＯ）、Ｓ４４９へ移行し、通電パラメータが一致していると判断された場合（Ｓ４４６：ＹＥＳ）、Ｓ４４７へ移行する。
【００７０】
Ｓ４４７では、第２制御部５２は、通電デューティ指令値の正負が一致しているか否か判断する。通電デューティ指令値は、スイッチング素子４１１〜４１６、４２１〜４２６のオンオフ作動を制御するものであって、絶対値がオン時間の割合であって、加速時を正、減速時を負として定義する。通電デューティ指令値の正負が一致していないと判断された場合（Ｓ４４７：ＮＯ）、Ｓ４４９へ移行し、通電デューティ指令値の正負が一致していると判断された場合（Ｓ４４７：ＹＥＳ）、Ｓ４４８へ移行する。
【００７１】
Ｓ４４８では、第２制御部５２は、モータ１０の駆動制御に用いる情報が他系統と一致していると判定する。Ｓ４４１〜Ｓ４４７のいずれかにて否定判断された場合に移行するＳ４４９では、第２制御部５２は、モータ１０の駆動制御に用いる情報の少なくとも一部が他系統と一致していないと判定する。
【００７２】
図１１に戻り、情報一致判定処理完了後に移行するＳ４０５では、第２制御部５２は、自系統の情報と他系統の情報とが一致しているか否か判定する。自系統の情報と他系統の情報とが一致していないと判断された場合（Ｓ４０５：ＮＯ）、Ｓ４０９へ移行し、駆動モードをスタンバイモードに切り替える。すなわち、モータ１０の駆動制御に係る情報のうち少なくとも一部が第１系統と不一致になった場合、第２系統でのモータ１０の駆動制御をキャンセルする。自系統の情報と他系統の情報とが一致していると判断された場合（Ｓ４０５：ＹＥＳ）、Ｓ４０６へ移行する。Ｓ４０６〜Ｓ４０９の処理は、図６中のＳ１０５〜Ｓ１０８の処理と同様である。
【００７３】
本実施形態の駆動制御処理を図１３〜図１８のタイムチャートに基づいて説明する。図１３に示すように、時刻ｘ３１において、制御部５１、５２が切替要求を認識すると、第１制御部５１の目標レンジがＲレンジ、第２制御部５２の目標レンジがＮレンジに切り替わっている。目標レンジが異なっていると、目標カウント値θｃｍｄ１、θｃｍｄ２が異なる値に設定されるため、モータ１０の駆動制御の不整合が生じる虞がある。そこで、制御部５１、５２で目標レンジが不一致の場合、第２制御部５２は、駆動モードをフィードバックモードに切り替えず、スタンバイモードを保持する。これにより、第２系統でのモータ制御がキャンセルされ、モータ１０は、第１系統にて駆動される。時刻ｘ３２以降の処理は、図７中の時刻ｘ１２以降の処理と同様である。
【００７４】
図１４に示すように、時刻ｘ４１において、制御部５１、５２が切替要求を認識すると、目標レンジに応じた目標カウント値θｃｍｄ１、θｃｍｄ２が設定される。目標カウント値θｃｍｄ１はＲレンジに対応した値に設定され、目標カウント値θｃｍｄ２がＲレンジに対応する値とは異なる値に設定されている。ここで、制御部５１、５２で目標カウント値θｃｍｄ１、θｃｍｄ２が不一致のため、第２制御部５２は、駆動モードをフィードバックモードに切り替えず、スタンバイモードを保持する。これにより、第２系統でのモータ制御がキャンセルされ、モータ１０は、第１系統にて駆動される。時刻ｘ４２以降の処理は、図７中のｘ１２以降の処理と同様である。
【００７５】
図１５では、各系統の角度の下段に駆動方向を記載した。図１５に示すように、時刻ｘ５１おいて、制御部５１、５２が切替要求を認識すると、駆動方向が設定される。第１制御部５１にて駆動方向が正回転、第２制御部５２にて駆動方向が逆回転に設定され、駆動方向が異なっているため、第２制御部５２は、駆動モードをフィードバックモードに切り替えず、スタンバイモードを保持する。これにより、第２系統でのモータ制御がキャンセルされ、モータ１０は、第１系統にて駆動される。時刻ｘ５２以降の処理は、図７中のｘ１２以降の処理と同様である。
【００７６】
図１６では、第２系統の角度欄に、制御部５１、５２の谷位置学習値であるＰ学習値およびＲ学習値を記載した。谷位置学習値は、車両のイグニッションスイッチ等である始動スイッチがオンされた後の初回駆動等にて学習され、図示しない記憶部に記憶されており、ビット化け等によるエラーが生じる虞がある。時刻ｘ６１にて制御部５１、５２が切替要求を認識したとき、Ｐ学習値およびＲ学習値が制御部５１、５２で異なっているため、第２制御部５２は、駆動モードをフィードバックモードに切り替えず、スタンバイモードを保持する。これにより、第２系統でのモータ制御がキャンセルされ、モータ１０は、第１系統にて駆動される。時刻ｘ６２以降の処理は、図７中のｘ１２以降の処理と同様である。なお、本実施形態では、学習値を谷位置学習値としたが、ディテントローラ２６が凹部２２のＰ側の壁部またはＤ側の壁部に当接したときのエンコーダカウント値である壁位置学習値を用いて目標カウント値θｃｍｄを設定する場合、壁位置学習値を「学習値」としてもよい。
【００７７】
図１７では、各系統の角度の下段に現在レンジを記載した。例えば出力軸センサ１６１、１６２のずれ等が生じると、実際のレンジとは異なるレンジが検出される虞がある。また、現在レンジが異なっていると、目標カウント値θｃｍｄ１、θｃｍｄ２の演算に影響する虞がある。時刻ｘ７１にて制御部５１、５２が切替要求を認識したとき、第１制御部５１における現在レンジがＰレンジ、第２制御部５２における現在レンジがＲレンジであり、現在レンジが異なっている。そのため、第２制御部５２は、駆動モードをフィードバックモードに切り替えず、スタンバイモードを保持する。これにより、第２系統でのモータ制御がキャンセルされ、モータ１０は、第１系統にて駆動される。時刻ｘ７２以降の処理は、図７中のｘ１２以降の処理と同様である。
【００７８】
図１８では、各系統の角度の下段に通電デューティ指令値を記載した。図２０も同様である。時刻ｘ８１にて制御部５１、５２が切替要求を認識したとき、モータ１０の駆動制御に係る情報が系統間で一致しているので、２系統でのモータ１０の駆動を開始する。詳細には、制御部５１、５２は、駆動モードをスタンバイモードからフィードバックモードに切り替え、エンコーダカウント値θｅｎ１、θｅｎ２、および、設定された通電デューティ指令値に基づいて、スイッチング素子４１１〜４１６、４２１〜４２６のオンオフ作動を制御することで、モータ１０を駆動する。
【００７９】
時刻ｘ８２にて、第１制御部５１では通電デューティ指令値が減少しており、第２制御部５２ではそれ以前の通電デューティ指令値が維持されている。そして、時刻ｘ８３にて、第１制御部５１の通電デューティ指令値が正から負に切り替わる。本実施形態では、加速時のデューティを正、減速時のデューティを負としており、第１系統と第２系統とでデューティの正負が異なっていると、一方の系統がモータ１０を加速させようとし、他方の系統がモータ１０を減速させようとすることになり、制御の不整合が生じ、モータ１０の駆動が阻害されたり、モータ１０がロックされたり、意図しない挙動となる虞がある。
【００８０】
そのため、制御部５１、５２における通電デューティ指令値の正負が異なる時刻ｘ８３にて、第２制御部５２は、駆動モードをフィードバックモードからスタンバイモードに切り替え、第２制御部５２でのモータ制御をキャンセルする。これにより、制御の不整合を回避可能であり、時刻ｘ８３以降、モータ１０は第１系統にて駆動される。時刻ｘ８４および時刻ｘ８５での処理は、図７中の時刻ｘ１５および時刻ｘ１６の処理と同様である。
【００８１】
本実施形態では、第１制御部５１が「継続制御部」、第２制御部５２が「停止制御部」として予め設定されている。これにより、制御情報の不一致により、全系統が停止してしまうのを防ぐことができる。  
【００８２】
制御情報には、モータ１０の通電を切り替えるモータドライバ４１、４２のスイッチング素子４１１〜４１６、４２１〜４２６のオンオフ制御に係る通電デューティ指令値、または、通電デューティ指令値の演算に用いられるパラメータが含まれる。
【００８３】
これにより、通電デューティ指令値の不一致による制御の不整合を防ぐことができる。特に、一方の通電デューティ指令値が正の値であって、他方の通電デューティ指令値が負の値である場合、一方が加速指示、他方が減速指示となり、モータ１０がロックする虞がある。そこで本実施形態では、通電デューティ指令値の正負が異なる場合、一方での制御を停止することで、制御の不整合を防ぎ、モータ１０を適切に駆動させることができる。また、上記実施形態と同様の効果を奏する。
【００８４】
制御情報には、目標レンジに応じて設定され、モータ１０を停止させる目標停止位置である目標カウント値θｃｍｄ、または、目標カウント値の演算に係るパラメータが含まれる。本実施形態では、目標レンジ、現在レンジ、および、谷位置学習値が「目標停止位置の演算に係るパラメータ」に含まれる。これにより、目標カウント値θｃｍｄ、または、目標カウント値θｃｍｄの演算に係るパラメータの不一致による制御の不整合を防ぐことができる。また、本実施形態の制御情報には、モータ１０の駆動方向が含まれる。これにより、駆動方向の不一致による制御の不整合を防ぐことができる。
【００８５】
（第４実施形態）
第４実施形態を図１９および図２０に示す。本実施形態では、一方の系統に異常が生じ、フェイルモードとなった場合、他方の系統にてモータ１０を駆動する。ここで、フェイルモードは、駆動モードとは別途に設定されるものであって、フェイルモードのとき、駆動モードはスタンバイモードとなる。
【００８６】
モータ１０を１系統で駆動するとき、２系統駆動と比較してトルクが低下するため、２系統駆動時よりもレンジ切り替えに時間を要する虞がある。そこで本実施形態では、１系統駆動において、通電デューティ指令値を補正する。
【００８７】
本実施形態の指令演算処理を図１９のフローチャートに基づいて説明する。この処理は、駆動モードがスタンバイモード以外のモードであるとき、すなわち本実施形態では、駆動モードがフィードバックモードまたは停止モードのときに、所定の周期（たとえば１［ｍｓ］）にて実行される。ここでは、第１系統がフェイル停止しているものとし、第２制御部５２の処理として説明する。本実施形態では、フェイルとなっている第１系統の第１制御部５１が「停止制御部」であり、第２制御部５２が「継続制御部」である。
【００８８】
Ｓ５０１では、第２制御部５２は、各パラメータに基づき、通電デューティ指令値を演算する。Ｓ５０２では、第２制御部５２は、他系統の駆動モードがスタンバイモードか否か判断する。他系統の駆動モードがスタンバイモードではないと判断された場合（Ｓ５０２：ＮＯ）、Ｓ５０３の処理を行わず、Ｓ５０１にて演算された通電デューティ指令値を用いてモータ１０の駆動制御を行う。他系統の駆動モードがスタンバイモードであると判断された場合（Ｓ５０２：ＹＥＳ）、Ｓ５０３へ移行する。
【００８９】
Ｓ５０３では、第２制御部５２は、Ｓ５０１にて演算された通電デューティ指令値を補正する。本実施形態では、２系統駆動時に第１系統にて出力されるトルク分を補うべく、Ｓ５０１で演算された通電デューティ指令値を２倍する。なお、２倍した値が１００以上の場合は１００、−１００以下の場合は−１００とする。これにより、トルク不足が解消され、１系統駆動時の応答性を向上することができる。
【００９０】
本実施形態の駆動制御処理を図２０のタイムチャートに基づいて説明する。図２０では、通電デューティ指令値について、１系統駆動時の値を実線、２系統駆動時の値を二点鎖線で示した。
【００９１】
時刻ｘ９１にて、制御部５１、５２では、切替要求が認識される。このとき、第１制御部５１の駆動モードがフェイルモードなので、第２系統にてモータ１０を駆動する。すなわち、モータ１０を１系統で駆動するので、第２制御部５２での通電デューティ指令値を２系統駆動時の２倍にする。時刻ｘ９２〜時刻ｘ９４の制御は、通電デューティ指令値を２系統駆動時とは変更している点を除き、図７中の時刻ｘ１３〜時刻ｘ１５における第１制御部５１の処理と同様である。また、モータ１０は第２系統にて駆動されるので、第１系統のエンコーダカウント値θｅｎ１は、第２系統のエンコーダカウント値θｅｎ２と同様に変化し、第１系統の出力軸角度θｓ１は、第２系統の出力軸角度θｓ２と同様に変化する。
【００９２】
本実施形態では、一方の系統がフェイルの場合、正常系統の通電デューティ指令値を２倍にしている。ここで、上記実施形態において、レンジ切替要求の認識タイミングがずれた場合、または、モータ１０の駆動制御に係る情報が系統間で異なっていた場合、１系統でモータ１０を駆動する。一方の系統がフェイルの場合に限らず、上記実施形態のように制御情報の不一致により１系統駆動となった場合にも適用可能であって、第１系統の通電デューティ指令値を２倍にしてもよい。
【００９３】
本実施形態では、第２制御部５２は、第１制御部５１でのモータ１０の駆動制御が停止されている場合、通電デューティ指令値を、全ての制御部５１、５２を用いてモータ１０の駆動制御を行う場合とは変更する。本実施形態では、１系統駆動時、通電デューティ指令値を２系統駆動時の２倍としているが、２倍に限らず、駆動系統数が減った分の少なくとも一部のトルクを補えるように、通電デューティ指令値を変更する。これにより、一部の系統を停止することによるトルク不足等の影響を低減することができる。また、上記実施形態と同様の効果を奏する。
【００９４】
第１実施形態〜第３実施形態では、第１制御部５１が「継続制御部」、第２制御部５２が「停止制御部」に対応し、第４実施形態では、第１制御部５１が「停止制御部」、第２制御部５２が「継続制御部」に対応する。また、モータドライバ４１、４２が「駆動回路」、駆動モードが「駆動状態情報」、目標カウント値θｃｍｄが「目標停止位置」に対応する。
【００９５】
（他の実施形態）
上記実施形態では、モータは、ＤＣブラシレスモータである。他の実施形態では、モータは、ＤＣブラシレスモータ以外のものでもよい。上記実施形態では、モータ駆動制御系統が２系統設けられている。他の実施形態では、モータ駆動制御系統を３系統以上設けてもよい。制御部が３つ以上の場合、「第１の制御部」および「第２の制御部」の少なくとも一方が複数であってもよい。
【００９６】
第３実施形態では、図１２中のＳ４４７にて、通電デューティ指令値の正負が一致しているか否かを判断する。他の実施形態では、Ｓ４４７にて、通電デューティ指令値の差が判定閾値以上か否か判断し、差が判定閾値以上の場合、情報不一致としてもよい。
【００９７】
上記実施形態では、エンコーダが系統ごとに設けられる。他の実施形態では、図２１に示すように、１つのエンコーダ１３のエンコーダ信号ＳＧＮ＿ｅを制御部５１、５２にて共用してもよい。出力軸センサについても同様に、１つの出力軸センサの検出値を複数系統にて共用しいてもよい。
【００９８】
上記実施形態では、モータ回転角センサは、３相エンコーダである。他の実施形態では、モータ回転角センサは、２相エンコーダであってもよいし、エンコーダに限らず、レゾルバ等を用いてもよい。上記実施形態では、出力軸センサとしてポテンショメータを例示した。他の実施形態では、出力軸センサとしてポテンショメータ以外を用いてもよいし、出力軸センサを省略してもよい。
【００９９】
上記実施形態では、上記実施形態では、ディテントプレートには４つの凹部が設けられる。他の実施形態では、凹部の数は４つに限らず、いくつであってもよい。例えば、ディテントプレートの凹部を２つとし、ＰレンジとｎｏｔＰレンジとを切り替えるものとしてもよい。また、シフトレンジ切替機構やパーキングロック機構等は、上記実施形態と異なっていてもよい。
【０１００】
上記実施形態では、モータ軸と出力軸との間に減速機が設けられる。減速機の詳細について、上記実施形態では言及していないが、例えば、サイクロイド歯車、遊星歯車、モータ軸と略同軸の減速機構から駆動軸へトルクを伝達する平歯歯車を用いたものや、これらを組み合わせて用いたもの等、どのような構成であってもよい。また、他の実施形態では、モータ軸と出力軸との間の減速機を省略してもよいし、減速機以外の機構を設けてもよい。
【０１０１】
本開示に記載の制御部及びその手法は、コンピュータプログラムにより具体化された一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された専用コンピュータにより、実現されてもよい。あるいは、本開示に記載の制御部及びその手法は、一つ以上の専用ハードウェア論理回路によってプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。もしくは、本開示に記載の制御部及びその手法は、一つ乃至は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと一つ以上のハードウェア論理回路によって構成されたプロセッサとの組み合わせにより構成された一つ以上の専用コンピュータにより、実現されてもよい。また、コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。以上、本発明は、上記実施形態になんら限定されるものではなく、発明の趣旨を逸脱しない範囲において種々の形態で実施可能である。
【符号の説明】
【０１０２】
１０・・・モータ
１１、１２・・・モータ巻線
４０・・・シフトレンジ制御装置
４１、４２・・・モータドライバ（駆動回路）
４１１〜４１６、４２１〜４２６・・・スイッチング素子
５１・・・第１制御部（継続制御部、停止制御部）
５２・・・第２制御部（停止制御部、継続制御部）
【図１】
2020191737.tif 000003
【図２】
2020191737.tif 000004
【図３】
2020191737.tif 000005
【図４】
2020191737.tif 000006
【図５】
2020191737.tif 000007
【図６】
2020191737.tif 000008
【図７】
2020191737.tif 000009
【図８】
2020191737.tif 000010
【図９】
2020191737.tif 000011
【図１０】
2020191737.tif 000012
【図１１】
2020191737.tif 000013
【図１２】
2020191737.tif 000014
【図１３】
2020191737.tif 000015
【図１４】
2020191737.tif 000016
【図１５】
2020191737.tif 000017
【図１６】
2020191737.tif 000018
【図１７】
2020191737.tif 000019
【図１８】
2020191737.tif 000020
【図１９】
2020191737.tif 000021
【図２０】
2020191737.tif 000022
【図２１】
2020191737.tif 000023