(57)【要約】【課題】突き当て制御を行うことなく、高精度の位置決め制御を実現可能であるシフトレンジ制御装置を提供する。【解決手段】パラメータ演算部５１は、モータ１０の回転位置を検出するエンコーダ１３から取得されるモータ回転角信号ＳｇＥに基づき、エンコーダカウント値θｅｎ、モータ速度ＳＰｍ、および、モータ加速度Ａｍを演算する。空走判定部５２は、モータ速度ＳＰｍ、および、モータ加速度Ａｍに基づき、遊びの範囲内にてモータ１０が回転している空走状態の終了を判定する。目標設定部５５は、空走終了時におけるエンコーダカウント値θｅｎに応じた値である角度補正値θｐを用い、モータ１０の駆動制御に係る目標カウント値θｃｍｄを設定する。駆動制御部５６は、エンコーダカウント値θｅｎが目標カウント値θｃｍｄとなるように、モータ１０の駆動を制御する。これにより、突き当て制御を行わずに高精度の位置決め制御を実現可能である。【選択図】  図２
2019019957.tif 000002
【特許請求の範囲】
【請求項１】
モータ（１０）の回転軸であるモータ軸（１０５）と前記モータの回転が伝達される出力軸（１５）との間に遊びが存在するシフトレンジ切替システム（１）において、前記モータの駆動を制御することでシフトレンジを切り替えるシフトレンジ制御装置であって、
前記モータの回転位置を検出するモータ回転角センサ（１３）から取得されるモータ回転角信号に基づき、モータ角度、モータ速度、および、モータ加速度を演算するパラメータ演算部（５１）と、
前記モータ速度および前記モータ加速度に基づき、前記遊びの範囲内にて前記モータが回転している空走状態の終了を判定する空走判定部（５２）と、
空走終了時における前記モータ角度に応じた値である角度補正値を用い、前記モータの駆動制御に係るモータ角度目標値を設定する目標設定部（５５）と、
前記モータ角度が前記モータ角度目標値となるように、前記モータの駆動を制御する駆動制御部（５６）と、
を備えるシフトレンジ制御装置。
【請求項２】
前記空走判定部は、
前記モータ速度および前記モータ加速度に基づき、前記空走状態である空走区間、および、前記モータ軸と前記出力軸とが一体に回転している一体回転区間を判定し、
前記空走区間における前記モータ速度の経時変化を表す近似線である第１近似線、および、前記一体回転区間における前記モータ速度の経時変化を表す近似線である第２近似線を導出し、前記第１近似線と前記第２近似線との交点となるタイミングにて、前記空走状態が終了したと判定する請求項１に記載のシフトレンジ制御装置。
【請求項３】
前記空走判定部は、
前記モータ速度が速度判定閾値より大きく、前記モータ加速度が第１判定閾値以上であるときを前記空走区間とし、
前記モータ速度が前記速度判定閾値より大きく、前記モータ加速度が前記第１判定閾値より小さい第２判定閾値以下であるときを前記一体回転区間とする請求項２に記載のシフトレンジ制御装置。
【請求項４】
前記空走判定部は、前記モータ速度および前記モータ加速度に基づいて演算される推定負荷トルクが負荷判定閾値より大きいと判断された場合、前記空走状態が終了したと判定する請求項１に記載のシフトレンジ制御装置。
【請求項５】
前記モータ速度は、前記モータ回転角信号のパルスエッジ割り込み毎に演算される請求項１〜４のいずれか一項に記載のシフトレンジ制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、シフトレンジ制御装置に関する。
【背景技術】
【０００２】
従来、運転者からのシフトレンジ切替要求に応じてモータを制御することでシフトレンジを切り替えるシフトレンジ切替装置が知られている。例えば特許文献１では、起動時に突き当て制御を実行し、遊び量を学習している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特許第３８４９８６４号
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１のような突き当て制御では、比較的大きなトルクにて可動範囲の限界位置までモータを回転させる。そのため、例えばディテントローラやディテントプレート等の部材にストレスがかかる。
本発明は、上述の課題に鑑みてなされたものであり、その目的は、突き当て制御を行うことなく、高精度の位置決め制御を実現可能であるシフトレンジ制御装置を提供することにある。
【課題を解決するための手段】
【０００５】
本発明のシフトレンジ制御装置は、モータ（１０）の回転軸であるモータ軸（１０５）とモータの回転が伝達される出力軸（１５）との間に遊びが存在するシフトレンジ切替システム（１）において、モータの駆動を制御することでシフトレンジを切り替えるものであって、パラメータ演算部（５１）と、空走判定部（５２）と、目標設定部（５５）と、駆動制御部（５６）と、を備える。
【０００６】
パラメータ演算部は、モータの回転位置を検出するモータ回転角センサ（１３）から取得されるモータ回転角信号に基づき、モータ角度、モータ速度、および、モータ加速度を演算する。空走判定部は、モータ速度、および、モータ加速度に基づき、遊びの範囲内にてモータが回転している空走状態の終了を判定する。目標設定部は、空走終了時におけるモータ角度に応じた値である角度補正値を用い、モータの駆動制御に係るモータ角度目標値を設定する。駆動制御部は、モータ角度がモータ角度目標値となるように、モータの駆動を制御する。
【０００７】
モータ速度およびモータ加速度に基づいて空走状態の終了を判定し、空走終了時のモータ角度に基づいてモータ角度目標値を設定している。これにより、突き当て制御による遊び量の学習処理を行うことなく、モータ角度目標値を適切に設定することができ、高精度の位置決め制御を実現可能である。
【図面の簡単な説明】
【０００８】
【図１】第１実施形態によるシフトバイワイヤシステムを示す斜視図である。
【図２】第１実施形態によるシフトバイワイヤシステムを示す概略構成図である。
【図３】第１実施形態によるモータと出力軸との間の遊びを説明する模式図である。
【図４】第１実施形態による目標設定処理を説明するフローチャートである。
【図５】第１実施形態による区間判定処理を説明するフローチャートである。
【図６】第１実施形態によるモータ制御処理を説明するタイムチャートである。
【図７】第２実施形態によるモータトルクの演算に用いられるマップを説明する説明図である。
【図８】第２実施形態による目標設定処理を説明するフローチャートである。
【図９】第２実施形態によるモータ制御処理を説明するタイムチャートである。
【発明を実施するための形態】
【０００９】
シフトレンジ制御装置を図面に基づいて説明する。以下、複数の実施形態において、実質的に同一の構成には同一の符号を付して説明を省略する。
（第１実施形態）
図１および図２に示すように、シフトレンジ切替システムとしてのシフトバイワイヤシステム１は、モータ１０、シフトレンジ切替機構２０、パーキングロック機構３０、および、シフトレンジ制御装置４０等を備える。
モータ１０は、図示しない車両に搭載されるバッテリから電力が供給されることで回転し、シフトレンジ切替機構２０の駆動源として機能する。本実施形態のモータ１０は、永久磁石式のＤＣブラシレスモータである。
【００１０】
図２に示すように、モータ回転角センサとしてのエンコーダ１３は、モータ１０の図示しないロータの回転位置を検出する。エンコーダ１３は、例えば磁気式のロータリーエンコーダであって、ロータと一体に回転する磁石と、磁気検出用のホールＩＣ等により構成される。エンコーダ１３は、ロータの回転に同期して、所定角度ごとにＡ相およびＢ相のパルス信号を出力する。以下、エンコーダ１３からの信号をモータ回転角信号ＳｇＥとする。
【００１１】
減速機１４は、モータ１０のモータ軸と出力軸１５との間に設けられ、モータ１０の回転を減速して出力軸１５に出力する。これにより、モータ１０の回転がシフトレンジ切替機構２０に伝達される。
本実施形態では、出力軸１５の回転位置を検出する出力軸センサが省略されている。
【００１２】
図１に示すように、シフトレンジ切替機構２０は、ディテントプレート２１、および、ディテントスプリング２５等を有し、減速機１４から出力された回転駆動力を、マニュアルバルブ２８、および、パーキングロック機構３０へ伝達する。
ディテントプレート２１は、出力軸１５に固定され、モータ１０により駆動される。本実施形態では、ディテントプレート２１がディテントスプリング２５の基部から離れる方向を正回転方向、基部に近づく方向を逆回転方向とする。
【００１３】
ディテントプレート２１には、出力軸１５と平行に突出するピン２４が設けられる。ピン２４は、マニュアルバルブ２８と接続される。ディテントプレート２１がモータ１０によって駆動されることで、マニュアルバルブ２８は軸方向に往復移動する。すなわち、シフトレンジ切替機構２０は、モータ１０の回転運動を直線運動に変換してマニュアルバルブ２８に伝達する。マニュアルバルブ２８は、バルブボディ２９に設けられる。マニュアルバルブ２８が軸方向に往復移動することで、図示しない油圧クラッチへの油圧供給路が切り替えられ、油圧クラッチの係合状態が切り替わることでシフトレンジが変更される。
ディテントプレート２１のディテントスプリング２５側には、２つの凹部２２、２３が設けられる。本実施形態では、ディテントスプリング２５の基部に近い側を凹部２２、遠い側を凹部２３とする。本実施形態では、凹部２２がＰレンジ以外のＮｏｔＰレンジに対応し、凹部２３がＰレンジに対応する。
【００１４】
ディテントスプリング２５は、弾性変形可能な板状部材であり、先端にディテントローラ２６が設けられる。ディテントスプリング２５は、ディテントローラ２６をディテントプレート２１の回動中心側に付勢する。ディテントプレート２１に所定以上の回転力が加わると、ディテントスプリング２５が弾性変形し、ディテントローラ２６が凹部２２、２３間を移動する。ディテントローラ２６が凹部２２、２３のいずれかに嵌まり込むことで、ディテントプレート２１の揺動が規制され、マニュアルバルブ２８の軸方向位置、および、パーキングロック機構３０の状態が決定され、自動変速機５のシフトレンジが固定される。ディテントローラ２６は、シフトレンジがＮｏｔＰレンジのとき、凹部２２に嵌まり込み、Ｐレンジのとき、凹部２３に嵌まり込む。
【００１５】
パーキングロック機構３０は、パーキングロッド３１、円錐体３２、パーキングロックポール３３、軸部３４、および、パーキングギア３５を有する。
パーキングロッド３１は、略Ｌ字形状に形成され、一端３１１側がディテントプレート２１に固定される。パーキングロッド３１の他端３１２側には、円錐体３２が設けられる。円錐体３２は、他端３１２側にいくほど縮径するように形成される。ディテントプレート２１が逆回転方向に揺動すると、円錐体３２がＰ方向に移動する。
【００１６】
パーキングロックポール３３は、円錐体３２の円錐面と当接し、軸部３４を中心に揺動可能に設けられる、パーキングロックポール３３のパーキングギア３５側には、パーキングギア３５と噛み合い可能な凸部３３１が設けられる。ディテントプレート２１が逆回転方向に回転し、円錐体３２がＰ方向に移動すると、パーキングロックポール３３が押し上げられ、凸部３３１とパーキングギア３５とが噛み合う。一方、ディテントプレート２１が正回転方向に回転し、円錐体３２がＮｏｔＰ方向に移動すると、凸部３３１とパーキングギア３５との噛み合いが解除される。
【００１７】
パーキングギア３５は、図示しない車軸に設けられ、パーキングロックポール３３の凸部３３１と噛み合い可能に設けられる。パーキングギア３５と凸部３３１とが噛み合うと、車軸の回転が規制される。シフトレンジがＮｏｔＰレンジのとき、パーキングギア３５はパーキングロックポール３３によりロックされず、車軸の回転は、パーキングロック機構３０により妨げられない。また、シフトレンジがＰレンジのとき、パーキングギア３５はパーキングロックポール３３によってロックされ、車軸の回転が規制される。
【００１８】
図２に示すように、シフトレンジ制御装置４０は、モータドライバ４１、および、ＥＣＵ５０等を有する。
モータドライバ４１は、モータ１０の各相（Ｕ相、Ｖ相、Ｗ相）への通電に係る駆動信号を出力する。モータドライバ４１とバッテリとの間には、モータリレー４６が設けられる。モータリレー４６は、イグニッションスイッチ等である車両の始動スイッチがオンされているときにオンされ、モータ１０側へ電力が供給される。また、モータリレー４６は、始動スイッチがオフされているときにオフされ、モータ１０側への電力の供給が遮断される。
【００１９】
ＥＣＵ５０は、マイコン等を主体として構成され、内部にはいずれも図示しないＣＰＵ、ＲＯＭ、Ｉ／Ｏ、及び、これらの構成を接続するバスライン等を備えている。ＥＣＵ５０における各処理は、ＲＯＭ等の実体的なメモリ装置（すなわち、読み出し可能非一時的有形記録媒体）に予め記憶されたプログラムをＣＰＵで実行することによるソフトウェア処理であってもよいし、専用の電子回路によるハードウェア処理であってもよい。
【００２０】
ＥＣＵ５０は、ドライバ要求シフトレンジ、ブレーキスイッチからの信号および車速等に基づいてモータ１０の駆動を制御することで、シフトレンジの切り替えを制御する。また、ＥＣＵ５０は、車速、アクセル開度、および、ドライバ要求シフトレンジ等に基づき、変速用油圧制御ソレノイド６の駆動を制御する。変速用油圧制御ソレノイド６を制御することで、変速段が制御される。変速用油圧制御ソレノイド６は、変速段数等に応じた本数が設けられる。本実施形態では、１つのＥＣＵ５０がモータ１０およびソレノイド６の駆動を制御するが、モータ１０を制御するモータ制御用のモータＥＣＵと、ソレノイド制御用のＡＴ−ＥＣＵとを分けてもよい。以下、モータ１０の駆動制御を中心に説明する。
【００２１】
図２に示すように、ＥＣＵ５０は、パラメータ演算部５１、空走判定部５２、目標設定部５５、および、駆動制御部５６等を有する。
パラメータ演算部５１は、エンコーダ１３から出力されるモータ回転角信号ＳｇＥに基づき、エンコーダ１３のカウント値であるエンコーダカウント値θｅｎを演算する。エンコーダカウント値θｅｎは、モータ１０の実際の機械角および電気角に応じた値である。本実施形態では、エンコーダカウント値θｅｎが「モータ角度」に対応する。エンコーダカウント値θｅｎは、モータ回転角信号ＳｇＥのエッジ割り込み毎に演算される。
【００２２】
パラメータ演算部５１は、モータ回転角信号ＳｇＥのエッジ割り込み毎に、モータ速度ＳＰｍ［ｄｅｇ／ｓ］を演算する（式（１）参照）。式中の定数ｋは、エンコーダカウント値θｅｎの１カウントに相当するモータ回転角度、ｔ(n)は今回割り込み時刻、ｔ(n-1)は前回割り込み時刻である。モータ速度ＳＰｍは、単位時間あたりのモータ角度の変化量と捉えることもできる。
ＳＰｍ＝ｋ／（ｔ(n)−ｔ(n-1)）    ・・・（１）
【００２３】
パラメータ演算部５１は、所定の周期にて、モータ加速度Ａｍ［ｄｅｇ／ｓ2］を演算する（式（２）参照）。式中のＰｃは演算１周期の時間、ＳＰｍ(n)は今回演算時のモータ速度、ＳＰｍ(n-1)は前回演算時のモータ速度である。
Ａｍ＝（ＳＰｍ(n)−ＳＰｍ(n-1)）／Ｐｃ    ・・・（２）
なお、モータ速度ＳＰｍおよびモータ加速度Ａｍは、例えばモータ角度の微分等、どのように演算してもよい。また、演算周期等は、適宜設定可能である。
パラメータ演算部５１にて演算された値は、各種制御演算等に用いられる。
【００２４】
空走判定部５２は、エンコーダカウント値θｅｎ、モータ速度ＳＰｍ、モータ加速度Ａｍに基づき、モータ軸１０５と出力軸１５との間の遊びの範囲内にてモータ１０が回転している空走状態か否かを判定する。特に、空走判定部５２は、空走判定により、空走状態が終了するタイミングを検出する。
目標設定部５５は、シフトスイッチ等に基づくドライバ要求シフトレンジ、車速、および、ブレーキスイッチからの信号等に基づき、目標シフトレンジを設定する。また、目標設定部５５は、目標シフトレンジに応じ、モータ角度目標値である目標カウント値θｃｍｄを設定する。
駆動制御部５６は、エンコーダカウント値θｅｎが目標カウント値θｃｍｄとなる回転位置にてモータ１０が停止するように、フィードバック制御等により、モータ１０の駆動を制御する。モータ１０の駆動制御の詳細は、どのようであってもよい。
なお図２では、煩雑になることを避けるため、一部の制御線を省略している。
【００２５】
ここで、モータ１０の回転軸であるモータ軸１０５、出力軸１５、および、ディテントプレート２１の関係を図３に示す。図３においては、実線で示す状態から二点鎖線で示す状態へとモータ１０が回転することで、ディテントローラ２６がディテントプレート２１の凹部２２、２３間の山部２１０を乗り越え、ドライバ要求シフトレンジに応じた凹部２２、２３に嵌まり込む状態を模式的に示している。ここでは、ＰレンジからｎｏｔＰレンジへの切り替えを例に説明する。図３においては、モータ１０および出力軸１５の回転方向を、紙面左右方向として説明する。また、図３は、「遊び」を概念的に示す模式図であって、出力軸１５と減速機１４とが一体となっており、モータ軸１０５が減速機１４の遊びの範囲で移動可能であるものとして記載しているが、モータ軸１０５と減速機１４とが一体となっており、減速機１４と出力軸１５との間に「遊び」が存在しているように構成しても差し支えない。
【００２６】
図３に示すように、モータ軸１０５と出力軸１５との間には、減速機１４が設けられており、モータ軸１０５と出力軸１５との間のギアバックラッシュを含む「遊び」が存在している。本実施形態では、モータ１０はＤＣブラシレスモータであって、モータ１０への通電が停止されているとき、コギングトルク等の影響により、遊びの範囲内にてモータ軸１０５が回転し、モータ軸１０５と減速機１４とが離間することがある。
【００２７】
また、矢印Ｙｇに示すように、モータ軸１０５と減速機１４とが回転方向において離間している状態にてモータ１０が回転する場合、モータ軸１０５と減速機１４とが当接するまでの間、モータ１０は空走状態となり、モータ１０の回転は、出力軸１５側へ伝達されない。以下、遊びの範囲内にてモータ１０の回転が出力軸１５に伝達されない状態を「ガタ空走」とし、ガタ空走状態となる区間を「空走区間」とする。また、ガタ空走状態が終了することを、「ガタ詰まり」とする。
【００２８】
ガタ空走が終了すると、モータ１０と出力軸１５およびディテントプレート２１とが一体となって回転する。これにより、ディテントローラ２６は、凹部２２、２３間の山部２１０を乗り越え、凹部２２へ移動する。ガタ空走状態の終了後、ディテントローラ２６が凹部２２、２３間を移動している区間を、「谷谷間回転区間」とする。また、ガタ空走状態の終了から、山部２１０の頂点を乗り越える前までの区間を「一体回転区間」とする。
【００２９】
ところで、モータ１０への通電をオフしている状態からシフトレンジを切り替えるべく通電を開始したとき、モータ軸１０５が「遊び」の範囲内のどの位置にあるかを特定することが困難である。また、モータ軸１０５と減速機１４とが回転方向側にて離間している場合、モータ軸１０５と減速機１４とが当接している状態からモータ１０を回転させる場合と比較し、ガタ空走の分、モータ１０を余分に回転させる必要がある。
【００３０】
そこで本実施形態では、エンコーダカウント値θｅｎ、モータ速度ＳＰｍおよびモータ加速度Ａｍに基づいてガタ空走終了を検出し、目標カウント値θｃｍｄを補正することで、位置制御精度を確保している。
本実施形態の目標設定処理を図４に示すフローチャートに基づいて説明する。以下、ステップＳ１０１の「ステップ」を省略し、単に記号「Ｓ」と記す。
最初のＳ１０１では、空走判定部５２は、パラメータ演算部５１にて演算されるエンコーダカウント値θｅｎ、モータ速度ＳＰｍ、および、モータ加速度Ａｍを取得する。
【００３１】
Ｓ１０２では、空走判定部５２は、通電フラグがセットされているか否かを判断する。通電フラグは、目標シフトレンジが変更されたときにセットされ、モータ１０が停止したと判定された後にリセットされる。通電フラグがセットされると、目標カウント値θｃｍｄを仮値θｔとし、モータ１０の駆動を開始する。図中において、フラグがセットされている状態を「１」、セットされていない状態を「０」とする。通電フラグがセットされていると判断された場合（Ｓ１０２：ＹＥＳ）、Ｓ１０５へ移行する。通電フラグがセットされていないと判断された場合（Ｓ１０２：ＮＯ）、Ｓ１０３へ移行する。
【００３２】
Ｓ１０３では、空走判定部５２は、現在のエンコーダカウント値θｅｎを駆動初期値θｉｎｉｔとして、図示しないＲＡＭ等に記憶させる。
Ｓ１０４では、空走判定部５２は、空走区間であることを示す空走フラグＸｇａｔａ＿Ａ、一体回転区間であることを示す一体回転フラグＸｇａｔａ＿Ｂ、および、計時カウンタのカウント値Ｃｔをリセットする。以下適宜、空走フラグを「フラグＡ」、一体回転フラグを「フラグＢ」とする。
【００３３】
通電フラグがセットされていると判断された場合（Ｓ１０２：ＹＥＳ）に移行するＳ１０５では、空走判定部５２は、エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差の絶対値が駆動初期判定値θｆより小さいか否かを判断する。Ｓ１０５は、ディテントローラ２６がシフトレンジ切替前と同一の凹部内であることを判定するステップである。ディテントローラ２６がシフトレンジ切替前と同一の凹部内である、ということは、山部２１０を乗り越える前であって、レンジ切替初期状態と捉えることもできる。駆動初期判定値θｆは、切替前のレンジ、および、ディテントプレート２１の形状に応じた値に設定される。エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差の絶対値が駆動初期判定値θｆ未満であると判定された場合（Ｓ１０５：ＹＥＳ）、ディテントローラ２６がシフトレンジ切替前と同一の凹部内であると判定し、Ｓ１０６へ移行する。エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差の絶対値が駆動初期判定値θｆ以上であると判断された場合（Ｓ１０５：ＮＯ）、Ｓ１１３へ移行する。
【００３４】
エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差の絶対値が駆動初期判定値θｆ未満であると判断された場合（Ｓ１０５：ＹＥＳ）、すなわちディテントローラ２６がレンジ切替前と同一の凹部内である場合に移行するＳ１０６では、空走判定部５２は、区間判定処理を行う。区間判定処理を、図５に示すフローチャートに基づいて説明する。
【００３５】
Ｓ１６１では、空走判定部５２は、モータ速度ＳＰｍが速度判定閾値ＳＰｔｈより大きいか否かを判断する。速度判定閾値ＳＰｔｈは、モータ１０が回転中であることを判定するための値であって、０に近い比較的小さい値に設定される。モータ速度ＳＰｍが速度判定閾値ＳＰｔｈ以下であると判断された場合（Ｓ１６１：ＮＯ）、Ｓ１６２へ移行し、フラグＡ、Ｂをリセットする。モータ速度ＳＰｍが速度判定閾値ＳＰｔｈより大きいと判断された場合（Ｓ１６１：ＹＥＳ）、Ｓ１６３へ移行する。
【００３６】
Ｓ１６３では、空走判定部５２は、モータ加速度Ａｍが第１判定閾値Ａｔｈ１以上か否かを判断する。第１判定閾値Ａｔｈ１は、モータ１０が空走状態であることを判定する値であって、モータ１０の性能等に応じて適宜設定される。モータ加速度Ａｍが第１判定閾値Ａｔｈ１以上であると判断された場合（Ｓ１６３：ＹＥＳ）、空走区間であると判定し、Ｓ１６５へ移行する。モータ加速度Ａｍが第１判定閾値Ａｔｈ１より小さいと判断された場合（Ｓ１６３：ＮＯ）、Ｓ１６４へ移行する。
【００３７】
Ｓ１６４では、空走判定部５２は、モータ加速度Ａｍが第２判定閾値Ａｔｈ２以下か否かを判断する。第２判定閾値Ａｔｈ２は、モータ１０が一体回転状態であることを判定する値であって、モータ１０の性能等に応じて適宜設定される。第２判定閾値Ａｔｈ２は、第１判定閾値Ａｔｈ１より小さい値に設定される。すなわち、Ａｔｈ１＞Ａｔｈ２である。モータ加速度Ａｍが第２判定閾値Ａｔｈ２以下であると判断された場合（Ｓ１６４：ＹＥＳ）、一体回転区間であると判定し、Ｓ１６６へ移行する。モータ加速度Ａｍが第２判定閾値Ａｔｈ２より大きいと判断された場合（Ｓ１６４：ＮＯ）、Ｓ１６７へ移行する。
【００３８】
Ｓ１６５では、空走判定部５２は、空走フラグＸｇａｔａ＿Ａをセットし、一体回転フラグＸｇａｔａ＿Ｂをリセットする。
Ｓ１６６では、空走判定部５２は、空走フラグＸｇａｔａ＿Ａをリセットし、一体回転フラグＸｇａｔａ＿Ｂをセットする。
Ｓ１６７では、空走判定部５２は、空走フラグＸｇａｔａ＿Ａをリセットする。
Ｓ１６５〜Ｓ１６７の後、図４中のＳ１０７へ移行する。
【００３９】
区間判定処理に続いて移行するＳ１０７では、空走判定部５２は、空走フラグＸｇａｔａ＿Ａがセットされているか否かを判断する。空走フラグＸｇａｔａ＿Ａがセットされていないと判断された場合（Ｓ１０７：ＮＯ）、Ｓ１０９へ移行する。空走フラグＸｇａｔａ＿Ａがセットされていると判断された場合（Ｓ１０７：ＹＥＳ）、Ｓ１０８へ移行する。
【００４０】
Ｓ１０８では、空走判定部５２は、計時カウンタのカウント値Ｃｔをｘ座標、モータ速度ＳＰｍをｙ座標とし、空走区間におけるモータ速度ＳＰｍの近似直線を導出する。空走区間におけるモータ速度ＳＰｍの近似直線を式（３）とする。
ｙ＝ａｘ＋ｂ    ・・・（３）
【００４１】
Ｓ１０９では、空走判定部５２は、一体回転フラグＸｇａｔａ＿Ｂがセットされているか否かを判断する。一体回転フラグＸｇａｔａ＿Ｂがセットされていないと判断された場合（Ｓ１０９：ＮＯ）、Ｓ１１２へ移行する。一体回転フラグＸｇａｔａ＿Ｂがセットされていると判断された場合（Ｓ１０９：ＹＥＳ）、Ｓ１１０へ移行する。
【００４２】
Ｓ１１０では、空走判定部５２は、計時カウンタのカウント値Ｃｔをｘ座標、モータ速度ＳＰｍをｙ座標とし、一体回転区間におけるモータ速度ＳＰｍの近似直線を導出する。一体回転区間におけるモータ速度ＳＰｍの近似直線を式（４）とする。
ｙ＝ｃｘ＋ｄ    ・・・（４）
以下、空走区間におけるモータ速度ＳＰｍの近似直線を「近似直線ＬＡ」、一体回転区間におけるモータ速度ＳＰｍの近似直線を「近似直線ＬＢ」と呼ぶ。本実施形態では、近似直線ＬＡが「第１近似線」に対応し、近似直線ＬＢが「第２近似線」に対応する。
【００４３】
Ｓ１１１では、空走判定部５２は、現在の計時カウンタのカウント値Ｃｔおよびモータ速度ＳＰｍを、フラグＡ、Ｂの状態と関連づけて図示しないＲＡＭ等のメモリに記憶させる。
Ｓ１１２では、計時カウンタのカウント値Ｃｔをインクリメントする。
【００４４】
エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差の絶対値が駆動初期判定値θｆ以上であると判断された場合（Ｓ１０５：ＮＯ）に移行するＳ１１３では、空走判定部５２は、フラグＡ、Ｂを共にリセットする。
Ｓ１１４では、空走判定部５２は、近似直線ＬＡ、ＬＢの交点を演算する。本実施形態では、モータ速度ＳＰｍが変曲点となるタイミングにて空走状態が終了したと判定する。モータ速度ＳＰｍの変曲点は、近似直線ＬＡ、ＬＢの交点とする。近似直線ＬＡ、ＬＢの交点のＸ座標を「ガタ詰めポイントＸＸ」とすると、ガタ詰めポイントＸＸは、式（５）で表される。ＸＸが負の値となった場合は、ＸＸ＝０とする。
ＸＸ＝（ｄ−ｂ）／（ａ−ｃ）    ・・・（５）
【００４５】
Ｓ１１５では、目標設定部５５は、ガタ詰めポイントＸＸと最も近いカウント値Ｃｔと関連づけて記憶されているエンコーダカウント値θｅｎを、角度補正値θｐとする。カウント値Ｃｔは離散値であるので、（５）にて演算されたガタ詰めポイントＸＸと最も近いカウント値Ｃｔを「空走終了時」とみなし、当該カウント値Ｃｔのときのエンコーダカウント値θｅｎに基づいて角度補正値θｐを設定する。
【００４６】
Ｓ１１６では、目標設定部５５は、角度補正値θｐを用いて目標カウント値θｃｍｄを演算する（式（６）参照）。式中のθｄｅｔは、谷谷間角度設計値であって、切替前のシフトレンジと目標シフトレンジとに応じた谷谷間回転区間の角度に応じて設定される設計値である。
θｃｍｄ＝θｉｎｉｔ＋θｐ＋θｄｅｔ    ・・・（６）
【００４７】
ここで、近似直線ＬＡ、ＬＢの導出について説明する。本実施形態では、Ｓ１１１にて、計時カウンタのカウント値Ｃｔとモータ速度ＳＰｍとが関連づけられて記憶されている。本実施形態では、空走フラグＸｇａｔａ＿Ａと関連付けられている複数の（Ｃｔ，ＳＰｍ）を用いて、例えば最小二乗法等により線形近似を行い、近似直線ＬＡを導出する。また、一体回転フラグＸｇａｔａ＿Ｂと関連づけられている複数の（Ｃｔ，ＳＰｍ）を用いて、例えば最小二乗法により線形近似を行い、近似直線ＬＢを導出する。
なお、近似直線ＬＡ、ＬＢを、最小二乗法以外の方法にて導出してもよい。また、線形近似に限らず、二次以上の関数等の近似線を導出し、当該近似線を用いて空走終了を判定してもよい。
【００４８】
本実施形態のモータ駆動制御を図６のタイムチャートに基づいて説明する。図６では、共通時間軸を横軸とし、上段から、モータ角度、モータ速度、モータ加速度、空走フラグＸｇａｔａ＿Ａ、一体回転フラグＸｇａｔａ＿Ｂを示す。図６および後述の図９では、タイムスケール等は適宜変更している。
時刻ｘ１０にて目標シフトレンジが変更されると、通電フラグがセットされ、目標カウント値θｃｍｄが設定され、モータ１０の駆動が開始される。ここで設定される目標カウント値θｃｍｄは、仮値θｔである。ここでは、モータ１０が正方向に回転するものとして説明する。モータ１０の駆動が開始されると、エンコーダカウント値θｅｎ、モータ速度ＳＰｍおよびモータ加速度Ａｍが増加する。
時刻ｘ１１にて、モータ加速度Ａｍが第１判定閾値Ａｔｈ１以上になると、空走フラグＸｇａｔａ＿Ａがセットされる。空走フラグＸｇａｔａ＿Ａがセットされている時刻ｘ１１から時刻ｘ１３の間、（Ｃｔ，ＳＰｍ）に基づき、近似直線ＬＡを更新していく。時刻ｘ１３にて、空走フラグＸｇａｔａ＿Ａがリセットされると、近似直線ＬＡが確定される。
【００４９】
空走区間が終了し、モータ軸１０５が出力軸１５と一体に回転するようになると、モータ加速度Ａｍが小さくなる。時刻ｘ１４にて、モータ加速度Ａｍが第２判定閾値Ａｔｈ２以下になると、一体回転フラグＸｇａｔａ＿Ｂがセットされる。時刻ｘ１４から、エンコーダカウント値θｅｎと駆動初期値θｉｎｉｔとの差が駆動初期判定値θｆとなる時刻ｘ１５までの間、（Ｃｔ，ＳＰｍ）に基づき、近似直線ＬＢを更新していく。時刻ｘ１５にて、一体回転フラグＸｇａｔａ＿Ｂがリセットされると、近似直線ＬＢが確定される。
【００５０】
空走判定部５２は、得られた近似直線ＬＡ、ＬＢを用いてガタ詰めポイントＸＸを演算する。図６では、ガタ詰めポイントＸＸを時刻ｘ１２とする。空走判定部５２は、ガタ詰めポイントＸＸにおけるエンコーダカウント値θｅｎを角度補正値θｐとする。目標設定部５５は、角度補正値θｐ、および、谷谷間角度設計値θｄｅｔに基づいて目標カウント値θｃｍｄを演算し、目標カウント値θｃｍｄを仮値θｔから変更する。実際には、時刻ｘ１５にて近似直線ＬＢが確定されてから、目標カウント値θｃｍｄが変更されるまでには演算遅れがあるが、ここでは簡略化のため、時刻ｘ１５にて目標カウント値θｃｍｄが変更されるものとして記載した。また、目標カウント値θｃｍｄの変更は、時刻ｘ１５以降であって、ディテントローラ２６がディテントプレート２１の山部２１０を越える前のいずれのタイミングとしてもよい。
【００５１】
以上説明したように、本実施形態のシフトレンジ制御装置４０は、モータ１０の回転軸であるモータ軸１０５とモータ１０の回転が伝達される出力軸１５との間に遊びが存在するシフトバイワイヤシステム１において、モータ１０の駆動を制御することでシフトレンジを切り替えるものである。シフトレンジ制御装置４０は、パラメータ演算部５１と、空走判定部５２と、目標設定部５５と、駆動制御部５６と、を備える。
【００５２】
パラメータ演算部５１は、モータ１０の回転位置を検出するエンコーダ１３から取得されるモータ回転角信号ＳｇＥに基づき、エンコーダカウント値θｅｎ、モータ速度ＳＰｍ、および、モータ加速度Ａｍを演算する。空走判定部５２は、モータ速度ＳＰｍ、および、モータ加速度Ａｍに基づき、遊びの範囲内にてモータ１０が回転している空走状態の終了を判定する。目標設定部５５は、空走終了時におけるエンコーダカウント値θｅｎに応じた値である角度補正値θｐを用い、モータ１０の駆動制御に係る目標カウント値θｃｍｄを設定する。駆動制御部５６は、エンコーダカウント値θｅｎが目標カウント値θｃｍｄとなるように、モータ１０の駆動を制御する。
【００５３】
本実施形態では、エンコーダカウント値θｅｎ、モータ速度ＳＰｍおよびモータ加速度Ａｍに基づいて空走状態の終了を判定し、空走終了時のエンコーダカウント値θｅｎに基づいて目標カウント値θｃｍｄを設定している。これにより、突き当て制御による遊び量の学習処理を行うことなく、目標カウント値θｃｍｄを適切に設定することができ、高精度の位置決め制御を実現可能である。また、突き当て制御を行う場合、比較的大きなトルクにてディテントローラ２６をディテントプレート２１に突き当てるため、ディテント機構にストレスがかかる。そのため、突き当て制御を行う場合、ディテント機構等が壊れないように設計する必要がある。本実施形態では、突き当て制御が不要であるので、シフトレンジ切替機構２０を簡素化可能である。
また、目標カウント値θｃｍｄの設定に、出力軸１５の回転位置である出力軸角度θｓを用いていないので、出力軸１５の回転位置を検出する出力軸センサを省略したり、検出精度を緩和したりできる。
【００５４】
空走判定部５２は、モータ速度ＳＰｍおよびモータ加速度Ａｍに基づき、空走状態である空走区間、および、モータ軸１０５と出力軸１５とが一体に回転している一体回転区間を判定する。空走判定部５２は、空走区間におけるモータ速度ＳＰｍの経時変化を表す近似線である近似直線ＬＡ、および、一体回転区間におけるモータ速度ＳＰｍの経時変化を表す近似線である近似直線ＬＢを導出し、近似直線ＬＡ、ＬＢの交点となるタイミングであるガタ詰めポイントＸＸにて、空走状態が終了したと判定する。
【００５５】
本実施形態では、複数の時点でのモータ速度ＳＰｍを用いて近似直線ＬＡ、ＬＢを求め、その交点に基づいて空走終了判定を行い、角度補正値θｐを演算している。これにより、エンコーダ１３におけるノイズの影響による空走終了の誤判定が生じにくくなり、空走終了判定および角度補正値θｐの精度が向上する。
【００５６】
空走判定部５２は、モータ速度ＳＰｍが速度判定閾値ＳＰｔｈより大きく、モータ加速度Ａｍが第１判定閾値Ａｔｈ１以上であるときを空走区間とし、モータ速度ＳＰｍが速度判定閾値ＳＰｔｈより大きく、モータ加速度Ａｍが第１判定閾値Ａｔｈ１より小さい第２判定閾値Ａｔｈ２以下であるときを一体回転区間とする。
これにより、モータ速度ＳＰｍおよびモータ加速度Ａｍに基づいて、空走区間および一体回転区間を適切に設定することができる。
モータ速度ＳＰｍは、モータ回転角信号ＳｇＥのパルスエッジ割り込み毎に演算される。これにより、モータ速度ＳＰｍを適切に演算することができる。
【００５７】
（第２実施形態）
本発明の第２実施形態を図７〜図９に示す。
本実施形態では、パラメータ演算部５１にて、モータ速度ＳＰｍおよびモータ加速度Ａｍに加え、推定負荷トルクＴＬ［Ｎｍ］を演算する。推定負荷トルクＴＬは、式（７）にて演算される。
ＴＬ＝ＴＭ(SPm)−ｋ×Ａｍ    ・・・（７）
【００５８】
式中のＴＭ(SPm)は、モータトルクであって、モータ速度ＳＰｍに基づく関数であることを意味する。本実施形態では、モータトルクＴＭは、図７に示すマップを用いて演算される。図７に示すように、モータトルクＴＭは、モータ速度ＳＰｍが小さいほど、大きい値となる。また、式中の定数ｋは、イナーシャに応じた値である。
演算された推定負荷トルクＴＬは、フィルタ処理された値が空走判定に用いられる。以下、推定負荷トルクＴＬは、フィルタ処理後の値とする。
【００５９】
本実施形態の目標設定処理を図８のフローチャートに基づいて説明する。
Ｓ２０１では、空走判定部５２は、パラメータ演算部５１にて演算されるパラメータを取得する。特に、本実施形態では、推定負荷トルクＴＬを取得する。
Ｓ２０２では、図４中のＳ１０２と同様であって、空走判定部５２は、通電フラグがセットされているか否かを判定する。通電フラグがセットされていないと判断された場合（Ｓ２０２：ＮＯ）、Ｓ２０３へ移行し、学習フラグＸｇａｔａをリセットする。通電フラグがセットされていると判断された場合（Ｓ２０２：ＹＥＳ）、Ｓ２０４へ移行する。
【００６０】
Ｓ２０４では、空走判定部５２は、学習フラグＸｇａｔａがセットされているか否かを判断する。学習フラグＸｇａｔａがセットされていると判断された場合（Ｓ２０４：ＹＥＳ）、本ルーチンを終了する。学習フラグＸｇａｔａがセットされていないと判断された場合（Ｓ２０４：ＮＯ）、Ｓ２０５へ移行する。
【００６１】
Ｓ２０５では、空走判定部５２は、推定負荷トルクＴＬが負荷判定閾値ＴＬｔｈより大きいか否かを判断する。推定負荷トルクＴＬが負荷判定閾値ＴＬｔｈ以下であると判断された場合（Ｓ２０５：ＮＯ）、本ルーチンを終了する。推定負荷トルクＴＬが負荷判定閾値ＴＬｔｈより大きいと判断された場合（Ｓ２０５：ＹＥＳ）、空走状態が終了したと判定し、Ｓ２０６へ移行する。
【００６２】
Ｓ２０６では、空走判定部５２は、現在のエンコーダカウント値θｅｎを角度補正値θｐとして、図示しないＲＡＭ等の記憶部に記憶させる。
Ｓ２０７では、目標設定部５５は、角度補正値θｐ、および、谷谷間角度設計値θｄｅｔに基づき、目標カウント値θｃｍｄを演算する（式（６）参照）。
Ｓ２０８では、空走判定部５２は、学習フラグＸｇａｔａをセットする。
【００６３】
本実施形態のモータ駆動制御を図９のタイムチャートに基づいて説明する。図９では、共通時間軸を横軸とし、上段から、モータ角度、モータトルクＴＭ、モータ速度ＳＰｍ、モータ加速度Ａｍ、推定負荷トルクＴＬを示す。
時刻ｘ２０にて目標シフトレンジが変更されると、通電フラグがセットされ、目標カウント値θｃｍｄが仮値θｔに設定され、モータ１０の駆動が開始される。ここでは、モータ１０が正方向に回転するものとして説明する。モータ１０の駆動が開始されると、エンコーダカウント値θｅｎ、モータ速度ＳＰｍおよびモータ加速度Ａｍが増加する。また、モータ速度の増加に伴い、モータトルクＴＭは、駆動初期トルクから減少する。
また、時刻ｘ２１にて、ガタ空走状態が終了し、モータ１０と出力軸１５とが一体となって回転するようになると、モータ速度ＳＰｍおよびモータトルクＴＭの変化量が小さくなる。また、モータ加速度Ａｍが小さくなり、推定負荷トルクＴＬが大きくなる。
【００６４】
ここで、推定負荷トルクＴＬについて説明する。モータ１０が遊びの範囲内で回転しているとき、モータフリクションが負荷となる。モータ１０が出力軸１５と一体になって回転しているとき、モータフリクションに加え、出力軸フリクションおよびディテントスプリング２５のばね力が負荷となる。そのため、一体回転区間における負荷トルクＴ２は、空走区間における負荷トルクＴ１より大きい。すなわち、Ｔ１＜Ｔ２である。
【００６５】
そこで本実施形態では、負荷トルクＴ１、Ｔ２の間となる負荷判定閾値ＴＬｔｈを設定し、推定負荷トルクＴＬが負荷判定閾値ＴＬｔｈより大きくなる時刻ｘ２１にて、空走状態が終了したと判定する。そして、このときのエンコーダカウント値θｅｎを角度補正値θｐとし、角度補正値θｐに基づいて目標カウント値θｃｍｄを演算する。
図９では、演算遅れ等を無視し、時刻ｘ２１にて目標カウント値θｃｍｄが演算されると同時に目標カウント値θｃｍｄが変更されるものとして記載している。なお、目標カウント値θｃｍｄを仮値θｔから切り替えるタイミングは、ディテントローラ２６がディテントプレート２１の山部２１０を越える前のいずれのタイミングとしてもよい。
【００６６】
本実施形態では、空走判定部５２は、モータ速度ＳＰｍおよびモータ加速度Ａｍに基づいて演算される推定負荷トルクＴＬが負荷判定閾値ＴＬｔｈより大きいと判断された場合、空走状態が終了したと判定する。
推定負荷トルクＴＬを用いることで、比較的簡素な処理にて、精度よく空走状態の終了を判定することができる。
また、上記実施形態と同様の効果を奏する。
【００６７】
（他の実施形態）
上記実施形態では、モータは、ＤＣブラシレスモータである。他の実施形態では、モータは、例えばスイッチトリラクタンスモータ等、どのようなモータであってもよい。上記実施形態では、モータの巻線組数については言及していないが、巻線組は１組でもよいし、複数組でもよい。
上記実施形態では、モータ回転角センサは、エンコーダである。他の実施形態では、モータ回転角センサは、エンコーダに限らず、レゾルバ等、どのようなものを用いてもよい。すなわち、モータ角度は、エンコーダカウント値に限らず、モータ角度に換算可能などのような値であってもよい。
【００６８】
上記実施形態では、出力軸センサが省略されている。他の実施形態では、出力軸の回転位置を検出する出力軸センサを設けてもよい。例えば、出力軸センサが正常である場合は、モータ回転角センサおよび出力軸センサの検出値を用いて空走状態の終了を判定し、出力軸センサが故障等にて使用できなくなった際に、上記実施形態のように、モータ角度、モータ速度およびモータ加速度に基づいて空走状態の終了を判定するようにしてもよい。
【００６９】
上記実施形態では、ディテントプレートには２つの凹部が設けられる。他の実施形態では、凹部の数は２つに限らず、いくつであってもよい。例えば、Ｐ、Ｒ、Ｎ、Ｄの各レンジに対応して４つの凹部が設けられていてもよい。また、シフトレンジ切替機構やパーキングロック機構等は、上記実施形態と異なっていてもよい。
【００７０】
上記実施形態では、モータ軸と出力軸との間に減速機が設けられる。減速機の詳細について、上記実施形態では言及していないが、例えば、サイクロイド歯車、遊星歯車、モータ軸と略同軸の減速機構から駆動軸へトルクを伝達する平歯歯車を用いたものや、これらを組み合わせて用いたもの等、どのような構成であってもよい。また、他の実施形態では、モータ軸と出力軸との間の減速機を省略してもよいし、減速機以外の機構を設けてもよい。すなわち、上記実施形態では、モータ軸と出力軸との間の「遊び」が減速機のギアとモータ軸との間に存在するものを中心に説明したが、「遊び」とはモータ軸と出力軸との間に存在する遊びやガタ等の合計と捉えることができる。
以上、本発明は、上記実施形態になんら限定されるものではなく、発明の趣旨を逸脱しない範囲において種々の形態で実施可能である。
【符号の説明】
【００７１】
１・・・シフトバイワイヤシステム（シフトレンジ切替システム）
１０・・・モータ      １０５・・・モータ軸
１３・・・エンコーダ（モータ回転角センサ）
１５・・・出力軸
４０・・・シフトレンジ制御装置
５０・・・ＥＣＵ
５１・・・パラメータ演算部
５２・・・空走判定部
５５・・・目標設定部
５６・・・駆動制御部
【図１】
2019019957.tif 000003
【図２】
2019019957.tif 000004
【図３】
2019019957.tif 000005
【図４】
2019019957.tif 000006
【図５】
2019019957.tif 000007
【図６】
2019019957.tif 000008
【図７】
2019019957.tif 000009
【図８】
2019019957.tif 000010
【図９】
2019019957.tif 000011