(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-30
(45)【発行日】2023-11-08
(54)【発明の名称】操舵制御装置
(51)【国際特許分類】
B62D 6/00 20060101AFI20231031BHJP
B62D 5/04 20060101ALI20231031BHJP
B62D 101/00 20060101ALN20231031BHJP
B62D 113/00 20060101ALN20231031BHJP
B62D 119/00 20060101ALN20231031BHJP
【FI】
B62D6/00
B62D5/04
B62D101:00
B62D113:00
B62D119:00
(21)【出願番号】P 2019234366
(22)【出願日】2019-12-25
【審査請求日】2022-07-29
(73)【特許権者】
【識別番号】000001247
【氏名又は名称】株式会社ジェイテクト
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】山口 恭史
(72)【発明者】
【氏名】都甲 高広
(72)【発明者】
【氏名】片岡 伸文
(72)【発明者】
【氏名】江崎 之進
【審査官】田邉 学
(56)【参考文献】
【文献】特開2016-155519(JP,A)
【文献】再公表特許第2018/190036(JP,A1)
【文献】特開2019-104476(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B62D 6/00
B62D 5/04
B62D 101/00
B62D 113/00
B62D 119/00
(57)【特許請求の範囲】
【請求項1】
ハウジングと、前記ハウジング内に往復動可能に収容される転舵軸と、モータを駆動源として前記転舵軸を往復動させるモータトルクを付与するアクチュエータとを備える操舵装置を制御対象とし、
前記転舵軸に連結される転舵輪の転舵角に換算可能な回転軸の回転角であって、360°を超える範囲を含む絶対角で示される絶対舵角を検出する絶対舵角検出部と、
前記モータが出力するモータトルクの目標値に対応した電流指令値を演算する電流指令値演算部とを備え、
前記モータに供給する実電流値が前記電流指令値となるように前記モータの駆動を制御する操舵制御装置において、
前記転舵軸が前記ハウジングに当接するエンド当てにより該転舵軸の移動が規制されるエンド位置を示す角度であって、前記絶対舵角と対応付けられたエンド位置対応角が記憶され、
前記電流指令値演算部は、前記絶対舵角の前記エンド位置対応角からの距離を示すエンド離間角が所定角度以下となる場合に、該エンド離間角の減少が規制されるように前記電流指令値を補正するエンド当て緩和制御を実行し、
さらに、前記電流指令値演算部は、前記エンド当て緩和制御の実行時に車両を旋回走行させようとしている場合には、該エンド当て緩和制御の実行による前記電流指令値の補正量を小さくする部分解放制御を実行するものであって、
前記エンド当て緩和制御を実行するなかで、前記部分解放制御の実行時において前記転舵軸の移動が規制されているか否かの判定であって、前記モータの角速度の目標角速度に対する追従度合いに基づく非追従判定を行い、前記転舵軸の移動が規制されていると判定した際の前記絶対舵角に応じた
、前記部分解放制御の実行時における規制位置判定角である解放時規制位置判定角を取得する解放時規制位置判定角取得部と、
前記解放時規制位置判定角に基づいて、前記エンド位置対応角の更新を許可する更新許可部と、
前記更新許可部により前記エンド位置対応角の更新が許可された場合に、
記憶された前記エンド位置対応角を
、前記更新を許可する際に取得された前記規制位置判定角からなる前記エンド位置対応角に更新するエンド位置対応角設定部とを備える操舵制御装置。
【請求項2】
請求項1に記載の操舵制御装置において、
前記部分解放制御の非実行時において前記転舵軸の移動が規制されているか否かの判定である通常時エンド当て判定を行い、前記転舵軸の移動が規制されていると判定した際の前記絶対舵角に応じた通常時規制位置判定角を取得する通常時規制位置判定角取得部を備え、
前記更新許可部は、前記解放時規制位置判定角及び前記通常時規制位置判定角に基づいて、前記エンド位置対応角の更新を許可する操舵制御装置。
【請求項3】
請求項1又は2に記載の操舵制御装置において、
前記電流指令値演算部は、前記エンド離間角が前記所定角度以下となる場合に、該エンド離間角の減少に基づいて小さくなる舵角制限値を演算する舵角制限値演算部を備え、前記電流指令値の絶対値を前記舵角制限値に制限することにより、前記エンド当て緩和制御を実行するものであり、
前記舵角制限値演算部は、前記エンド離間角の増大に基づいて小さくなる角度制限成分を演算し、
前記モータが出力可能なモータトルクとして予め設定されたトルクに対応する最大電流としての前記モータの定格電流から前記角度制限成分を減算した値に基づいて前記舵角制限値を演算するものであって、
前記舵角制限値演算部は、前記部分解放制御の実行時には、該部分解放制御の非実行時に比べ、前記角度制限成分が小さくなるように該角度制限成分を演算し、
前記非追従判定が成立する条件には、前記電流指令値の絶対値が前記舵角制限値以上であることが含まれる操舵制御装置。
【請求項4】
請求項1~3のいずれか一項に記載の操舵制御装置において、
前記非追従判定が成立する条件には、前記角速度の絶対値が、前記目標角速度に基づいて設定される追従判定用角速度閾値未満であることが含まれる操舵制御装置。
【請求項5】
請求項1~4のいずれか一項に記載の操舵制御装置において、
前記非追従判定が成立する条件には、前記角速度の変化量である角速度変化量の絶対値が
追従判定用角速度変化量閾値未満であることが含まれる操舵制御装置。
【請求項6】
請求項1~5のいずれか一項に記載の操舵制御装置において、
一方向に前記転舵軸を移動させる操舵トルクの符号及び前記モータの回転方向の符号をそれぞれ正、前記一方向と反対方向に前記転舵軸を移動させる前記操舵トルクの符号及び前記モータの回転方向の符号をそれぞれ負とするとき、
前記解放時規制位置判定角取得部は、前記非追従判定に基づいて前記転舵軸の移動が規制されていると判定した後、前記角速度の符号が前記操舵トルクの符号と同一であって、該角速度の絶対値が前記モータの停止状態を示す停止角速度閾値よりも大きい場合に、前記解放時規制位置判定角を取得する操舵制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、操舵制御装置に関する。
【背景技術】
【0002】
従来、車両用の操舵装置として、モータを駆動源とするアクチュエータを備えた電動パワーステアリング装置(EPS)が知られている。こうしたEPSには、ステアリングホイールの操舵角を360°を超える範囲を含む絶対角で取得し、該操舵角に基づいて各種制御を行うものがある。こうした制御の一例として、例えば特許文献1には、ラック軸の端部であるラックエンドがラックハウジングに当たる、所謂エンド当ての衝撃を緩和するためのエンド当て緩和制御を実行するものが開示されている。
【0003】
特許文献1のEPSでは、エンド当てによりラック軸の移動が物理的に規制されるラックエンド位置が操舵角と対応付けられており、同位置での操舵角がエンド位置対応角として記憶されている。そして、同EPSでは、操舵角のエンド位置対応角からの距離に応じてモータが出力するモータトルクの目標値を小さくすることで、エンド当ての衝撃を緩和する。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、例えば車両を修理する際にステアリングシャフトを交換することで、実際にエンド当てが生じる操舵角を示す実エンド角と記憶されているエンド位置対応角とがずれることがある。そして、記憶されているエンド位置対応角が実エンド角に対してステアリング中立位置側にずれると、エンド当て緩和制御の実行によるモータトルクの目標値の低減が不十分となり、エンド当ての衝撃を十分に緩和できないおそれがある。しかし、上記特許文献1には、実エンド角と記憶されているエンド位置対応角とのずれについては言及されておらず、こうしたずれを低減できる技術の開発が求められていた。
【0006】
本発明の目的は、記憶されているエンド位置対応角の実エンド角に対するステアリング中立位置側のずれを低減できる操舵制御装置を提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決する操舵制御装置は、ハウジングと、前記ハウジング内に往復動可能に収容される転舵軸と、モータを駆動源として前記転舵軸を往復動させるモータトルクを付与するアクチュエータとを備える操舵装置を制御対象とし、前記転舵軸に連結される転舵輪の転舵角に換算可能な回転軸の回転角であって、360°を超える範囲を含む絶対角で示される絶対舵角を検出する絶対舵角検出部と、前記モータが出力するモータトルクの目標値に対応した電流指令値を演算する電流指令値演算部とを備え、前記モータに供給する実電流値が前記電流指令値となるように前記モータの駆動を制御するものにおいて、前記転舵軸が前記ハウジングに当接するエンド当てにより該転舵軸の移動が規制されるエンド位置を示す角度であって、前記絶対舵角と対応付けられたエンド位置対応角が記憶され、前記電流指令値演算部は、前記絶対舵角の前記エンド位置対応角からの距離を示すエンド離間角が所定角度以下となる場合に、該エンド離間角の減少が規制されるように前記電流指令値を補正するエンド当て緩和制御を実行し、さらに、前記電流指令値演算部は、前記エンド当て緩和制御の実行時に車両を旋回走行させようとしている場合には、該エンド当て緩和制御の実行による前記電流指令値の補正量を小さくする部分解放制御を実行するものであって、前記エンド当て緩和制御を実行するなかで、前記部分解放制御の実行時において前記転舵軸の移動が規制されているか否かの判定であって、前記モータの角速度の目標角速度に対する追従度合いに基づく非追従判定を行い、前記転舵軸の移動が規制されていると判定した際の前記絶対舵角に応じた、前記部分解放制御の実行時における規制位置判定角である解放時規制位置判定角を取得する解放時規制位置判定角取得部と、前記解放時規制位置判定角に基づいて、前記エンド位置対応角の更新を許可する更新許可部と、前記更新許可部により前記エンド位置対応角の更新が許可された場合に、記憶された前記エンド位置対応角を、前記更新を許可する際に取得された前記規定位置判定角からなる前記エンド位置対応角に更新するエンド位置対応角設定部とを備える。
【0008】
上記構成によれば、エンド当て緩和制御の実行によって、転舵軸が実際にハウジングに当接する実エンド位置よりもステアリング中立位置側の仮想エンド位置で、該転舵軸の移動が規制されることがある。こうした場合に、運転者が車両を旋回走行させようとすると、部分解放制御の実行により電流指令値を補正するための補正量が小さくなる。これにより、エンド当て緩和制御の実行による電流指令値の制限が部分的に解放されて、電流指令値が大きくなる。したがって、例えばエンド当て緩和制御の実行により仮想エンド位置で転舵軸の移動が規制されても、運転者が旋回走行させようとすることで、部分解放制御が実行されて電流指令値が大きくなるため、転舵軸を実エンド位置まで移動させることが可能となる。その結果、車両の小回り性能が低下することを抑制できる。
【0009】
そして、上記構成によれば、解放時規制位置判定角に基づいてエンド位置対応角の更新が許可されると、エンド位置対応角が更新される。そのため、エンド位置対応角と実エンド角とのずれを低減できる。ここで、解放時規制位置判定角は、部分解放制御の実行時において転舵軸の移動が規制されていると判定された際に取得した角度である。つまり、解放時規制位置判定角は、部分解放制御の実行によって転舵軸が仮想ラックエンド位置よりも実エンド位置に近づいてから取得されるため、実エンド角に近似した角度になると考えられる。したがって、実エンド角に近い解放時規制位置判定角に基づいて、エンド位置対応角の更新の必要性の有無を正確に判定できる。
【0010】
上記操舵制御装置において、前記部分解放制御の非実行時において前記転舵軸の移動が規制されているか否かの判定である通常時エンド当て判定を行い、前記転舵軸の移動が規制されていると判定した際の前記絶対舵角に応じた通常時規制位置判定角を取得する通常時規制位置判定角取得部を備え、前記更新許可部は、前記解放時規制位置判定角及び前記通常時規制位置判定角に基づいて、前記エンド位置対応角の更新を許可することが好ましい。
【0011】
上記構成によれば、解放時規制位置判定角だけでなく、通常時規制位置判定角に基づいてエンド位置対応角の更新が許可されるため、実エンド角と記憶されているエンド位置対応角とのずれが、例えばエンド当て緩和制御が実行される前に転舵軸がハウジングに当たるほど大きい場合にも、エンド位置対応角を更新できる。
【0012】
上記操舵制御装置において、前記電流指令値演算部は、前記エンド離間角が前記所定角度以下となる場合に、該エンド離間角の減少に基づいて小さくなる舵角制限値を演算する舵角制限値演算部を備え、前記電流指令値の絶対値を前記舵角制限値に制限することにより、前記エンド当て緩和制御を実行するものであり、前記舵角制限値演算部は、前記エンド離間角の増大に基づいて小さくなる角度制限成分を演算し、前記モータが出力可能なモータトルクとして予め設定されたトルクに対応する最大電流としての定格電流から前記角度制限成分を減算した値に基づいて前記舵角制限値を演算するものであって、前記舵角制限値演算部は、前記部分解放制御の実行時には、該部分解放制御の非実行時に比べ、前記角度制限成分が小さくなるように該角度制限成分を演算し、前記非追従判定が成立する条件には、前記電流指令値の絶対値が前記舵角制限値以上であることが含まれることが好ましい。
【0013】
上記構成によれば、非追従判定が成立する条件に、電流指令値の絶対値が舵角制限値以上であること、すなわち電流指令値が部分解放制御により解放された状態での最大値となっていることが含まれる。これにより、十分なモータトルクが出力されていない状態で非追従判定を行うことで、誤って転舵軸の移動が規制されていると判定することを抑制できる。
【0014】
上記操舵制御装置において、前記非追従判定が成立する条件には、前記角速度の絶対値が、前記目標角速度に基づいて設定される追従判定用角速度閾値未満であることが含まれることが好ましい。
【0015】
上記構成によれば、モータの角速度が目標角速度に追従しているか否かを好適に判定できる。
上記操舵制御装置において、前記非追従判定が成立する条件には、前記角速度の変化量である角速度変化量の絶対値が追従判定用角速度変化量閾値未満であることが含まれることが好ましい。
【0016】
部分解放制御が開始された直後は、モータが加速しているものの、モータの角速度がまだ略ゼロであり、目標角速度に追従できていない。この点を踏まえ、上記構成では、非追従判定が成立する条件に、角速度変化量の絶対値が追従判定用角速度変化量閾値未満であり、モータが大きく加速していないことが含まれるため、部分解放制御の開始直後に誤って転舵軸の移動が規制されていると判定することを抑制できる。
【0017】
上記操舵制御装置において、一方向に前記転舵軸を移動させる操舵トルクの符号及び前記モータの回転方向の符号をそれぞれ正、前記一方向と反対方向に前記転舵軸を移動させる前記操舵トルクの符号及び前記モータの回転方向の符号をそれぞれ負とするとき、前記解放時規制位置判定角取得部は、前記非追従判定に基づいて前記転舵軸の移動が規制されていると判定した後、前記角速度の符号が前記操舵トルクの符号と同一であって、該角速度の絶対値が前記モータの停止状態を示す停止角速度閾値よりも大きい場合に、前記解放時規制位置判定角を取得することが好ましい。
【0018】
上記各構成の非追従判定は、モータの回転方向が瞬間的に操舵方向と逆になる場合にも成立し得る。そのため、モータの回転方向が操舵方向と逆になった瞬間に解放時規制位置判定角を取得すると、当該解放時規制位置判定角は実エンド角から乖離するおそれがある。この点、上記構成では、モータの回転方向が操舵方向と同じ場合に解放時規制位置判定角を取得するため、解放時規制位置判定角が実エンド角に対して乖離することを抑制できる。
【発明の効果】
【0019】
本発明によれば、記憶されているエンド位置対応角の実エンド角に対するステアリング中立位置側のずれを低減できる。
【図面の簡単な説明】
【0020】
【
図4】オフセット舵角演算部によるオフセット舵角の演算に係る処理手順を示すフローチャート。
【
図7】規制位置判定角取得部による規制位置判定角の取得に係る処理手順を示すフローチャート。
【
図8】絶対舵角とピニオン軸トルクとの関係を示す模式図。
【
図9】通常時規制位置判定角取得処理の手順を示すフローチャート。
【
図10】動的規制判定の処理手順を示すフローチャート。
【
図11】静的規制判定の処理手順を示すフローチャート。
【
図12】解放時規制位置判定角取得処理の手順を示すフローチャート。
【
図13】更新許可部による更新許可に係る処理手順を示すフローチャート。
【発明を実施するための形態】
【0021】
以下、操舵制御装置の一実施形態を図面に従って説明する。
図1に示すように、操舵制御装置1の制御対象となる操舵装置としての電動パワーステアリング装置(EPS)2は、運転者によるステアリングホイール3の操作に基づいて転舵輪4を転舵させる操舵機構5を備えている。また、EPS2は、操舵機構5にステアリング操作を補助するためのアシスト力を付与するアクチュエータとしてのEPSアクチュエータ6を備えている。
【0022】
操舵機構5は、ステアリングホイール3が固定されるステアリングシャフト11と、ステアリングシャフト11に連結された転舵軸としてのラック軸12と、ラック軸12が往復動可能に挿通されるハウジングとしてのラックハウジング13とを備えている。また、操舵機構5は、ステアリングシャフト11の回転をラック軸12の軸線方向の往復動に変換するラックアンドピニオン機構14を備えている。なお、ステアリングシャフト11は、ステアリングホイール3が位置する側から順にコラム軸15、中間軸16、及びピニオン軸17を連結することにより構成されている。
【0023】
ラック軸12とピニオン軸17とは、ラックハウジング13内に所定の交差角をもって配置されている。ラックアンドピニオン機構14は、ラック軸12に形成されたラック歯12aとピニオン軸17に形成されたピニオン歯17aとが噛合されることで構成されている。また、ラック軸12の両端には、その軸端部に設けられたボールジョイントからなるラックエンド18を介してタイロッド19がそれぞれ駆動可能に連結されている。タイロッド19の先端は、転舵輪4が組付けられた図示しないナックルに連結されている。したがって、EPS2では、ステアリング操作に伴うステアリングシャフト11の回転がラックアンドピニオン機構14によりラック軸12の軸方向移動に変換され、この軸方向移動がタイロッド19を介してナックルに伝達されることにより、転舵輪4の転舵角、すなわち車両の進行方向が変更される。
【0024】
なお、ラックエンド18がラックハウジング13の左端に当接するラック軸12の位置が右方向に最大限操舵可能な位置であり、同位置が右側のエンド位置としてのラックエンド位置に相当する。また、ラックエンド18がラックハウジング13の右端に当接するラック軸12の位置が左方向に最大限操舵可能な位置であり、同位置が左側のエンド位置としてのラックエンド位置に相当する。
【0025】
EPSアクチュエータ6は、駆動源であるモータ21と、ウォームアンドホイール等の減速機構22とを備えている。モータ21は減速機構22を介してコラム軸15に連結されている。そして、EPSアクチュエータ6は、モータ21の回転を減速機構22により減速してコラム軸15に伝達することによって、モータトルクをアシスト力として操舵機構5に付与する。なお、本実施形態のモータ21には、三相のブラシレスモータが採用されている。
【0026】
操舵制御装置1は、モータ21に接続されており、その作動を制御する。なお、操舵制御装置1は、図示しない中央処理装置(CPU)やメモリを備えており、所定の演算周期ごとにメモリに記憶されたプログラムをCPUが実行する。これにより、各種の制御が実行される。
【0027】
操舵制御装置1には、車両の車速SPDを検出する車速センサ31、及び運転者の操舵によりステアリングシャフト11に付与された操舵トルクThを検出するトルクセンサ32が接続されている。また、操舵制御装置1には、モータ21の回転角θmを360°の範囲内の相対角で検出する回転センサ33が接続されている。なお、操舵トルクTh及び回転角θmは、例えば右方向に操舵した場合に正の値、左方向に操舵した場合に負の値として検出する。そして、操舵制御装置1は、これら各センサから入力される各状態量を示す信号に基づいて、モータ21に駆動電力を供給することにより、EPSアクチュエータ6の作動、すなわち操舵機構5にラック軸12を往復動させるべく付与するアシスト力を制御する。
【0028】
次に、操舵制御装置1の構成について説明する。
図2に示すように、操舵制御装置1は、モータ制御信号Smを出力するマイコン41と、モータ制御信号Smに基づいてモータ21に駆動電力を供給する駆動回路42とを備えている。なお、本実施形態の駆動回路42には、FET等の複数のスイッチング素子を有する周知のPWMインバータが採用されている。そして、マイコン41の出力するモータ制御信号Smは、各スイッチング素子のオンオフ状態を規定するものとなっている。これにより、モータ制御信号Smに応答して各スイッチング素子がオンオフし、各相のモータコイルへの通電パターンが切り替わることにより、車載電源43の直流電力が三相の駆動電力に変換されてモータ21へと出力される。
【0029】
なお、以下に示す各制御ブロックは、マイコン41が実行するコンピュータプログラムにより実現されるものであり、所定のサンプリング周期で各状態量を検出し、所定の演算周期毎に以下の各制御ブロックに示される各演算処理が実行される。
【0030】
マイコン41には、上記車速SPD、操舵トルクTh、及びモータ21の回転角θmが入力される。また、マイコン41には、電流センサ44により検出されるモータ21の各相電流値Iu,Iv,Iw、及び電圧センサ45により検出される車載電源43の電源電圧Vbが入力される。電流センサ44は、駆動回路42と各相のモータコイルとの間の接続線46に設けられている。電圧センサ45は、車載電源43と駆動回路42との間の接続線47に設けられている。なお、
図2では、説明の便宜上、各相の電流センサ44及び各相の接続線46をそれぞれ1つにまとめて図示している。そして、マイコン41は、これら各状態量に基づいてモータ制御信号Smを出力する。
【0031】
詳しくは、マイコン41は、電流指令値Id*,Iq*を演算する電流指令値演算部51と、電流指令値Id*,Iq*に基づいてモータ制御信号Smを出力するモータ制御信号生成部52と、絶対舵角θsを検出する絶対舵角検出部53とを備えている。
【0032】
電流指令値演算部51には、車速SPD、操舵トルクTh、電源電圧Vb、回転角θm及び絶対舵角θsが入力される。電流指令値演算部51は、これらの状態量に基づいて電流指令値Id*,Iq*を演算する。電流指令値Id*,Iq*は、モータ21に供給すべき電流の目標値であり、d/q座標系におけるd軸上の電流指令値及びq軸上の電流指令値をそれぞれ示す。このうち、q軸電流指令値Iq*は、モータ21が出力するモータトルクの目標値を示す。なお、本実施形態では、d軸電流指令値Id*は、基本的にゼロに固定されている。電流指令値Id*,Iq*は、例えば右方向への操舵をアシストする場合に正の値、左方向への操舵をアシストする場合に負の値とする。
【0033】
モータ制御信号生成部52には、電流指令値Id*,Iq*、各相電流値Iu,Iv,Iw、及びモータ21の回転角θmが入力される。モータ制御信号生成部52は、これらの状態量に基づいてd/q座標系における電流フィードバック制御を実行することにより、モータ制御信号Smを生成する。
【0034】
具体的には、モータ制御信号生成部52は、回転角θmに基づいて各相電流値Iu,Iv,Iwをd/q座標上に写像することにより、d/q座標系におけるモータ21の実電流値であるd軸電流値Id及びq軸電流値Iqを演算する。そして、モータ制御信号生成部52は、d軸電流値Idをd軸電流指令値Id*に追従させるべく、またq軸電流値Iqをq軸電流指令値Iq*に追従させるべく、それぞれ電流フィードバック制御を行うことによりモータ制御信号Smを生成する。
【0035】
モータ制御信号生成部52は、このように生成したモータ制御信号Smを駆動回路42に出力する。これにより、モータ21には、モータ制御信号Smに応じた駆動電力が供給され、モータ21からq軸電流指令値Iq*に対応したモータトルクが出力されることで、操舵機構5にアシスト力が付与される。
【0036】
絶対舵角検出部53には、回転角θmが入力される。絶対舵角検出部53は、回転角θmに基づいて、360°を超える範囲を含む絶対角で表されるモータ絶対角を検出する。本実施形態の絶対舵角検出部53は、例えば車載電源43の交換後、イグニッションスイッチ等の起動スイッチが初めてオンされた時の回転角θmを原点としてモータ21の回転数を積算し、この回転数及び回転角θmに基づいてモータ絶対角を検出する。そして、絶対舵角検出部53は、モータ絶対角に減速機構22の減速比に基づく換算係数を乗算することにより、ステアリングシャフト11の操舵角を示す絶対舵角θsを検出する。本実施形態の操舵制御装置1では、起動スイッチのオフ時にもモータ21の回転の有無を監視しており、モータ21の回転数が常時積算されている。これにより、車載電源43が交換されてから2回目以降、起動スイッチがオンされた時でも、絶対舵角θsの原点は、起動スイッチが初めてオンされた時に設定された原点と同じになる。
【0037】
なお、上記のようにステアリングシャフト11の回転により転舵輪4の転舵角が変更されることから、絶対舵角θsは、転舵輪4の転舵角に換算可能な回転軸の回転角を示す。また、モータ絶対角及び絶対舵角θsは、例えば原点から右方向の回転角である場合に正の値、左方向の回転角である場合に負の値とする。
【0038】
次に、電流指令値演算部51の構成について説明する。
電流指令値演算部51は、q軸電流指令値Iq*の基礎成分であるアシスト指令値Ias*を演算するアシスト指令値演算部61を備えている。また、電流指令値演算部51は、q軸電流指令値Iq*の絶対値の上限となる制限値Igを設定する制限値設定部62と、アシスト指令値Ias*の絶対値を制限値Ig以下に制限する上限ガード処理部63とを備えている。制限値設定部62には、メモリ64が接続されている。また、電流指令値演算部51は、メモリ64に記憶されるエンド位置対応角θs_le,θs_reを管理するエンド位置対応角管理部65を備えている。
【0039】
アシスト指令値演算部61には、操舵トルクTh及び車速SPDが入力される。アシスト指令値演算部61は、操舵トルクTh及び車速SPDに基づいてアシスト指令値Ias*を演算する。具体的には、アシスト指令値演算部61は、操舵トルクThの絶対値が大きいほど、また車速SPDが遅いほど、より大きな絶対値を有するアシスト指令値Ias*を演算する。このように演算されたアシスト指令値Ias*は、上限ガード処理部63に出力される。
【0040】
上限ガード処理部63には、アシスト指令値Ias*に加え、後述するように制限値設定部62において設定される制限値Igが入力される。上限ガード処理部63は、入力されるアシスト指令値Ias*の絶対値が制限値Ig以下の場合には、アシスト指令値Ias*の値をそのままq軸電流指令値Iq*としてモータ制御信号生成部52に出力する。一方、入力されるアシスト指令値Ias*の絶対値が制限値Igよりも大きい場合には、アシスト指令値Ias*の絶対値を制限値Igの値に制限した値をq軸電流指令値Iq*としてモータ制御信号生成部52に出力する。
【0041】
メモリ64には、モータ21が出力可能なモータトルクとして予め設定されたトルクに対応する最大電流としての定格電流Ir、及びエンド位置対応角θs_le,θs_re等が記憶されている。左側のエンド位置対応角θs_leは、左側のラックエンド位置に対応する絶対舵角θsであり、右側のエンド位置対応角θs_reは、右側のラックエンド位置に対応する絶対舵角θsである。なお、エンド位置対応角θs_le,θs_reは、例えば運転者による操舵に基づいて行われる適宜の学習により予め設定されている。
【0042】
次に、制限値設定部62の構成について説明する。
制限値設定部62には、回転角θmを微分することにより得られるモータ角速度ωm、絶対舵角θs、車速SPD、操舵トルクTh、電源電圧Vb、定格電流Ir及びエンド位置対応角θs_le,θs_reが入力される。そして、制限値設定部62は、これらの状態量に基づいて制限値Igを設定する。
【0043】
詳しくは、
図3に示すように、制限値設定部62は、絶対舵角θsに基づく舵角制限値Ienを演算する舵角制限値演算部71と、電源電圧Vbに基づく他の制限値としての電圧制限値Ivbを演算する電圧制限値演算部72と、舵角制限値Ien及び電圧制限値Ivbのいずれか小さい方を選択する最小値選択部73とを備えている。
【0044】
舵角制限値演算部71には、モータ角速度ωm、絶対舵角θs、車速SPD、操舵トルクTh、定格電流Ir、エンド位置対応角θs_le,θs_reが入力される。舵角制限値演算部71は、これらの状態量に基づいて、後述するように絶対舵角θsのエンド位置対応角θs_le,θs_reからの距離を示すエンド離間角Δθが所定角度θa以下となる場合に、該エンド離間角Δθの減少に基づいて小さくなる舵角制限値Ienを演算する。このように演算された舵角制限値Ienは、最小値選択部73に出力される。
【0045】
電圧制限値演算部72には、電源電圧Vbが入力される。電圧制限値演算部72は、電源電圧Vbの絶対値が予め設定された電圧閾値Vth以下になった場合に、定格電流Irを供給するための定格電圧よりも小さな電圧制限値Ivbを演算する。具体的には、電圧制限値演算部72は、電源電圧Vbの絶対値が電圧閾値Vth以下になった場合、該電源電圧Vbの絶対値の低下に基づいてより小さな絶対値を有する電圧制限値Ivbを演算する。このように演算された電圧制限値Ivbは、最小値選択部73に出力される。
【0046】
最小値選択部73は、入力される舵角制限値Ien及び電圧制限値Ivbのいずれか小さい方を制限値Igとして選択し、上限ガード処理部63に出力する。
そして、舵角制限値Ienが制限値Igとして上限ガード処理部63に出力されることにより、q軸電流指令値Iq*の絶対値が舵角制限値Ienに制限される。これにより、エンド離間角Δθが所定角度θa以下となる場合に、該エンド離間角Δθの減少に基づいてq軸電流指令値Iq*の絶対値を小さくすることで、エンド当ての衝撃を緩和するエンド当て緩和制御が実行される。つまり、本実施形態の電流指令値演算部51は、q軸電流指令値Iq*の絶対値を制限値Ig以下に制限する態様で該q軸電流指令値Iq*を補正する。そして、q軸電流指令値Iq*の補正量は、アシスト指令値Ias*の制限値Igに対する超過分、すなわち舵角制限値Ienに対する超過分となる。
【0047】
また、電圧制限値Ivbが制限値Igとして上限ガード処理部63に出力されることにより、q軸電流指令値Iq*の絶対値が電圧制限値Ivbに制限される。これにより、電源電圧Vbの絶対値が電圧閾値Vth以下となる場合に、該電源電圧Vbの絶対値の低下に基づいてq軸電流指令値Iq*の絶対値を小さくする電源保護制御が実行される。
【0048】
ここで、エンド当て緩和制御の実行によって、ラック軸12が実際にラックハウジング13に当接する実ラックエンド位置よりもステアリング中立位置側の仮想ラックエンド位置で、ラック軸12の移動が規制されることがある。この場合、絶対舵角θsは、ラック軸12が実ラックエンド位置にある場合に比べて小さくなり、車両の小回り性能が低下するおそれがある。
【0049】
そこで、本実施形態の電流指令値演算部51は、エンド当て緩和制御の実行時に運転者が車両を旋回走行させようとしている場合には、EPS2に入力される操舵トルクThに基づいて、該エンド当て緩和制御の実行によるq軸電流指令値Iq*の補正量を小さくする部分解放制御を実行する。上記のように上限ガード処理部63は、q軸電流指令値Iq*の絶対値を制限値Ig以下に制限することから、制限値Igとなる舵角制限値Ienが大きくなるほど、q軸電流指令値Iq*の補正量は小さくなる。この点を踏まえ、本実施形態では、以下に説明するように、エンド当て緩和制御の実行時に運転者が車両を旋回走行させようとしている場合には、舵角制限値演算部71が部分解放制御の非実行時に比べて大きな舵角制限値Ienを演算することで、部分解放制御が実行される。
【0050】
詳しくは、舵角制限値演算部71は、角速度変化量Δωmを演算する角速度変化量演算部81と、オフセット舵角θoffを演算するオフセット舵角演算部82と、エンド離間角Δθを演算するエンド離間角演算部83とを備えている。また、舵角制限値演算部71は、エンド離間角Δθに基づく通常時用の角度制限成分Iga、及びエンド離間角Δθにオフセット舵角θoffを加算した解放時用のエンド離間角Δθ’に基づく解放時用の角度制限成分Iga’’を演算する角度制限成分演算部84を備えている。さらに、舵角制限値演算部71は、角度制限成分Iga,Iga’’のいずれか一方を選択して減算器85に出力する出力切替部86とを備えており、定格電流Irから角度制限成分Iga,Iga’’のいずれか一方を減算することで舵角制限値Ienを演算する。以下、制御ブロック毎に順に説明する。
【0051】
(角速度変化量演算部81)
角速度変化量演算部81には、モータ角速度ωmが入力される。角速度変化量演算部81は、入力されるモータ角速度ωmに基づいてその変化量である角速度変化量Δωmを演算する。そして、角速度変化量演算部81は、角速度変化量Δωmをオフセット舵角演算部82に出力する。なお、本実施形態の角速度変化量演算部81は、角速度変化量Δωmにローパスフィルタ処理を施したものをオフセット舵角演算部82に出力する。
【0052】
(オフセット舵角演算部82)
オフセット舵角演算部82には、車速SPD、操舵トルクTh、モータ角速度ωm、角速度変化量Δωm及び後述する通常時用の角度制限成分Igaが入力される。オフセット舵角演算部82は、これらの状態量に基づいて、エンド当て緩和制御の実行時に、運転者が切り込み操舵又は保舵することで、車両を旋回走行させようとしているか否かの旋回意思判定を行う。そして、オフセット舵角演算部82は、エンド当て緩和制御の実行時に車両を旋回走行させようとしていると判定する場合には、オフセット舵角θoffの演算を開始し、このオフセット舵角θoffを加算器87に出力する。なお、オフセット舵角演算部82は、エンド当て緩和制御の実行時に車両を旋回走行させようとしていると判定しない場合には、オフセット舵角θoffを演算しない。
【0053】
また、オフセット舵角演算部82は、部分解放制御の実行時であるか否かを示す解放フラグFを出力切替部86及びエンド位置対応角管理部65に出力する。なお、解放フラグFは、その値が「0」の場合に部分解放制御が実行されていないことを示し、その値が「1」の場合に部分解放制御が実行されていることを示す。そして、オフセット舵角演算部82は、オフセット舵角θoffの演算を開始する前は解放フラグFの値を「0」とし、オフセット舵角θoffの演算を開始した後は解放フラグFの値を「1」とする。
【0054】
次に、オフセット舵角θoffの演算方法について詳細に説明する。
オフセット舵角演算部82は、下記(1)式に示すモデル式を用いて操舵トルクThに基づくオフセット舵角θoffを演算する。
【0055】
【数1】
なお、以下では、説明の便宜上、「θs*」の一階時間微分値である目標操舵速度の符号を「ωs*」とも示す。このモデル式は、ステアリングホイール3を介して入力される操舵トルクThと転舵輪4の転舵角に換算可能な回転軸の回転角との関係を定めて表したものである。このモデル式は、EPS2が搭載される車両のサスペンションやホイールアライメント等の仕様をモデル化した弾性係数K1、EPS2の摩擦等をモデル化した粘性係数C、EPS2の慣性をモデル化した慣性係数Jを用いて表される。
【0056】
ここで、本実施形態のオフセット舵角演算部82は、演算負荷の低減及び実現すべき操舵フィーリングを考慮して、弾性係数K1及び慣性係数Jをそれぞれゼロとし、目標操舵速度ωs*について整理した下記(2)式を用いて目標操舵速度ωs*を演算する。
【0057】
【数2】
そして、オフセット舵角演算部82は、目標操舵速度ωs*を積分した値をオフセット舵角θoffとする。このように演算されたオフセット舵角θoffは、加算器87に出力される。また、オフセット舵角θoffを演算する過程で得られた目標操舵速度ωs*は、エンド位置対応角管理部65に出力される。
【0058】
次に、旋回意思の判定について詳細に説明する。
オフセット舵角演算部82は、次の(A1)~(A5)からなる旋回意思判定の条件が第1所定時間継続して成立する場合に、エンド当て緩和制御の実行時に、運転者が車両を旋回走行させようとしていると判定する。なお、第1所定時間は、運転者が切り込み操舵又は保舵していると判定可能な適宜の時間が設定されている。
【0059】
(A1)通常時用の角度制限成分Igaが第1電流閾値Ith1よりも大きい。
(A2)操舵トルクThの絶対値が第1操舵トルク閾値Tth1以上である。
(A3)車速SPDが所定車速範囲内である。
【0060】
(A4)モータ角速度ωmの絶対値が停止角速度閾値ωth_st以下である。
(A5)モータ角速度ωmの変化量である角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満である。
【0061】
第1電流閾値Ith1は、角度制限成分Igaの値が第1電流閾値Ith1であり、かつ車両が通常路面を低速で走行する場合において、ラック軸12をラックエンド位置まで移動させることが可能な最低限のアシスト力である所定アシスト力がモータ21から付与されるように設定されている。換言すると、定格電流Irから第1電流閾値Ith1を減算して得られる舵角制限値Ienの絶対値は、同絶対値の電流をモータ21に供給することで所定アシスト力がモータ21から出力されるような大きさである。第1電流閾値Ith1は、定格電流Irに基づく電流値であり、例えば定格電流Irの50%等に設定されている。
【0062】
第1操舵トルク閾値Tth1は、ラックエンド18がラックハウジング13に当接した状態で車両を旋回走行させる際にステアリングホイール3を保舵するために必要な操舵トルクであり、ゼロよりも大きな適宜の値に設定されている。所定車速範囲は、車両が非停車状態であることを示す下限車速Slo以上、かつ車両が低速で走行していることを示す上限車速Sup未満の車速範囲を示す。下限車速Sloは、ゼロよりも僅かに大きな値に設定され、上限車速Supは、下限車速Sloよりも大きな適宜の値に設定されている。停止角速度閾値ωth_stは、モータ21が停止していることを示す角速度であり、ゼロよりも僅かに大きな値に設定されている。停止角速度変化量閾値Δωth_stは、モータ21が略加減速していないことを示す角速度変化量であり、ゼロよりも僅かに大きな値に設定されている。
【0063】
そして、オフセット舵角演算部82は、オフセット舵角θoffを演算している際、すなわち部分解放制御の実行時に、例えば運転者が切り戻し操舵を行うことで、通常時用の角度制限成分Igaが第1電流閾値Ith1未満となると、オフセット舵角θoffの演算を停止する。すなわち、部分解放制御が停止する。
【0064】
次に、オフセット舵角演算部82によるオフセット舵角θoffの演算に係る処理手順を説明する。
図4のフローチャートに示すように、オフセット舵角演算部82は、各種状態量を取得すると(ステップ101)、解放フラグFが「0」であるか否か、すなわち部分解放制御の非実行時であるか否かを判定する(ステップ102)。
【0065】
オフセット舵角演算部82は、解放フラグFが「0」である場合には(ステップ102:YES)、車速SPDが下限車速Slo以上、かつ上限車速Sup未満であるか否かを判定する(ステップ103)。車速SPDが下限車速Slo以上、かつ上限車速Sup未満であり、所定車速範囲内である場合には(ステップ103:YES)、角度制限成分Igaが第1電流閾値Ith1よりも大きいか否かを判定する(ステップ104)。角度制限成分Igaが第1電流閾値Ith1よりも大きい場合には(ステップ104:YES)、操舵トルクThの絶対値が第1操舵トルク閾値Tth1以上であるか否かを判定する(ステップ105)。操舵トルクThの絶対値が第1操舵トルク閾値Tth1以上の場合には(ステップ105:YES)、モータ角速度ωmの絶対値が停止角速度閾値ωth_st以下であるか否かを判定する(ステップ106)。モータ角速度ωmの絶対値が停止角速度閾値ωth_st以下の場合には(ステップ106:YES)、角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満であるか否かを判定する(ステップ107)。そして、角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満の場合には(ステップ107:YES)、ステップ108に移行する。
【0066】
オフセット舵角演算部82は、ステップ108において、ステップ103~107の判定、すなわち上記(A1)~(A5)の条件が成立してからの経過時間を示す旋回カウンタのカウント値Cnをインクリメントする。続いて、カウント値Cnが第1所定時間に対応する所定カウント値Cth1よりも大きいか否かを判定する(ステップ109)。カウント値Cnが所定カウント値Cth1よりも大きい場合には(ステップ109:YES)、オフセット舵角θoffの演算を開始し(ステップ110)、解放フラグFの値を、部分解放制御が実行中であることを示す「1」にするとともに旋回カウンタのカウント値Cnをクリアする(ステップ111,112)。
【0067】
オフセット舵角演算部82は、カウント値Cnが所定カウント値Cth1以下の場合には(ステップ109:NO)、それ以降の処理を実行しない。また、ステップ103~107のいずれか1つが成立しない場合(ステップ103~107:NO)、ステップ108~111の処理を実行せず、ステップ112に移行し、カウント値Cnをクリアする。
【0068】
一方、オフセット舵角演算部82は、解放フラグFの値が「1」である場合には(ステップ102:NO)、エンド離間角Δθに基づいて演算される角度制限成分Igaが第1電流閾値Ith1未満であるか否かを判定する(ステップ113)。角度制限成分Igaが第1電流閾値Ith1未満である場合には(ステップ113:YES)、オフセット舵角θoffの演算を停止し(ステップ114)、解放フラグFの値を、部分解放制御が停止中であることを示す「0」とする(ステップ115)。なお、角度制限成分Igaが第1電流閾値Ith1以上である場合には(ステップ113:NO)、それ以降の処理を実行しない。
【0069】
(エンド離間角演算部83)
図3に示すように、エンド離間角演算部83には、絶対舵角θs及びエンド位置対応角θs_le,θs_reが入力される。エンド離間角演算部83は、最新の演算周期での絶対舵角θsと左側のエンド位置対応角θs_leとの間の差分、及び最新の演算周期での絶対舵角θsと右側のエンド位置対応角θs_reとの間の差分を演算する。そして、エンド離間角演算部83は、演算した差分のうちの絶対値が小さい方をエンド離間角Δθとして角度制限成分演算部84及び加算器87に出力する。
【0070】
(角度制限成分演算部84)
角度制限成分演算部84には、エンド離間角Δθ及び車速SPDが入力される。また、角度制限成分演算部84には、加算器87においてエンド離間角Δθにオフセット舵角θoffを加えた解放時用のエンド離間角Δθ’が入力される。解放時用のエンド離間角Δθ’は、エンド離間角Δθよりもオフセット舵角θoffの値だけ大きな値となる。角度制限成分演算部84は、これらの状態量に基づいて角度制限成分Iga,Iga’’を演算する。
【0071】
詳しくは、
図5に示すように、角度制限成分演算部84は、通常時用の角度制限成分Iga及び解放時用の角度制限成分Iga’を演算するマップ演算部91と、解放時用の角度制限成分Iga’の絶対値の下限値を規定する下限ガード処理部92とを備えている。
【0072】
マップ演算部91は、エンド離間角Δθ及び車速SPDと通常時用の角度制限成分Igaとの関係を定めた通常時用マップを備えており、マップを参照することによりエンド離間角Δθ及び車速SPDに応じた角度制限成分Igaを演算する。このように演算された通常時用の角度制限成分Igaは、オフセット舵角演算部82及び出力切替部86に出力される。
【0073】
この通常時用マップでは、角度制限成分Igaは、エンド離間角Δθがゼロの状態からその増大に比例して減少し、エンド離間角Δθが所定角度θaよりも大きくなると、ゼロになるように設定されている。また、この通常時用マップでは、エンド離間角Δθが負の領域も設定されており、角度制限成分Igaは、エンド離間角Δθがゼロよりも小さくなると、その減少に比例して増大し、定格電流Irと同じ値になった以降は一定となる。マップにおける負の領域は、ラックエンド18がラックハウジング13に当接した状態からさらに切り込み操舵を行うことにより、EPS2が弾性変形してモータ21が回転する分を想定している。なお、所定角度θaは、エンド位置対応角θs_le,θs_re近傍の範囲を示す小さな角度に設定されている。すなわち、角度制限成分Igaは、絶対舵角θsがエンド位置対応角θs_le,θs_reからステアリング中立側に向かうにつれて小さくなり、エンド位置対応角θs_le,θs_re近傍よりもステアリング中立位置側にある場合には、ゼロになるように設定されている。
【0074】
また、この通常時用マップは、エンド離間角Δθが所定角度θa以下の領域では、車速SPDの増大に基づいて、角度制限成分Igaが小さくなるように設定されている。具体的には、車速SPDが低速域である場合は角度制限成分Igaがゼロよりも大きくなるが、車速SPDが中高速域である場合は角度制限成分Igaがゼロとなるように設定されている。
【0075】
また、マップ演算部91は、解放時用のエンド離間角Δθ’及び車速SPDと解放時用の角度制限成分Iga’との関係を定めた解放時用マップを備えており、同マップを参照することにより解放時用のエンド離間角Δθ’及び車速SPDに応じた角度制限成分Iga’を演算する。このように演算された解放時用の角度制限成分Iga’は、下限ガード処理部92に出力される。
【0076】
解放時用マップは、通常時用マップと同一のマップとなるように設定されている。すなわち、車速SPDが同一であり、エンド離間角Δθとエンド離間角Δθ’とが互いに等しい場合には、演算される角度制限成分Igaと角度制限成分Iga’とは互いに等しくなる。上記のように解放時用のエンド離間角Δθ’は、エンド離間角Δθよりもオフセット舵角θoffの値だけ大きな値となるため、マップ演算部91は、オフセット舵角θoffに応じた分だけ、通常時用の角度制限成分Igaよりも小さな解放時用の角度制限成分Iga’を演算することになる。
【0077】
下限ガード処理部92は、部分解放制御の実行時には、舵角制限値Ienが予め設定された制限閾値Ith_lim以上とならないように、解放時用の角度制限成分Iga’を調整する。制限閾値Ith_limは、同制限閾値Ith_limの電流がモータ21に供給されることで、上記所定アシスト力がモータ21から付与されるような値に設定されており、本実施形態では、上記第1電流閾値Ith1と同一の値に設定されている。そして、下限ガード処理部92は、角度制限成分Iga’と第1電流閾値Ith1との大小比較の結果に基づいて、角度制限成分Iga’を調整する。
【0078】
詳しくは、下限ガード処理部92は、入力される解放時用の角度制限成分Iga’の絶対値が予め設定された第1電流閾値Ith1以上の場合には、角度制限成分Iga’の値をそのまま角度制限成分Iga’’として出力切替部86に出力する。一方、下限ガード処理部92は、入力される解放時用の角度制限成分Iga’の絶対値が第1電流閾値Ith1未満の場合には、角度制限成分Iga’の絶対値を第1電流閾値Ith1の値に変更した値を角度制限成分Iga’’として出力切替部86に出力する。
【0079】
これにより、出力切替部86に出力される角度制限成分Iga’’は、第1電流閾値Ith1以上となるため、定格電流Irから同角度制限成分Iga’’が減算される場合、すなわち部分解放制御の実行時に、舵角制限値Ienが制限閾値Ith_lim以上とならない。
【0080】
(出力切替部86)
図3に示すように、出力切替部86には、角度制限成分Iga,Iga’’及び解放フラグFが入力される。出力切替部86は、通常時用の角度制限成分Igaが入力される接点P1、解放時用の角度制限成分Iga’’が入力される接点P2、及び減算器85に接続される接点P3を有している。出力切替部86は、解放フラグFが「0」である場合には、接点P1と接点P3とを接続し、通常時用の角度制限成分Igaを減算器85に出力する。一方、出力切替部86は、解放フラグFが「1」である場合には、接点P2と接点P3とを接続し、解放時用の角度制限成分Iga’’を減算器85に出力する。
【0081】
そして、減算器85において、部分解放制御の実行時であるか否かに応じて定格電流Irから通常時用の角度制限成分Iga又は解放時用の角度制限成分Iga’’を減算した値が舵角制限値Ienとして最小値選択部73に出力される。
【0082】
次に、エンド位置対応角管理部65の構成について説明する。
図2示すように、エンド位置対応角管理部65には、車速SPD、操舵トルクTh、q軸電流値Iq、q軸電流指令値Iq*、舵角制限値Ien、絶対舵角θs、解放フラグF、目標操舵速度ωs*、及び回転角θmを微分することにより得られるモータ角速度ωmが入力される。エンド位置対応角管理部65は、これらの状態量に基づいて、メモリ64に記憶されたエンド位置対応角θs_le,θs_reの更新を管理する。
【0083】
エンド位置対応角管理部65は、ラック軸12が左右いずれか一方への移動が規制されているか否かを判定し、ラック軸12の移動が規制されていると判定された際の絶対舵角θsを規制位置判定角θi(iは自然数)として複数取得する。そして、エンド位置対応角管理部65は、複数の規制位置判定角θiに基づいて、メモリ64に記憶されているエンド位置対応角θs_le,θs_reを更新する必要があるか否かを判定し、更新する必要がある場合に、エンド位置対応角θs_le,θs_reを更新する。
【0084】
詳しくは、
図6に示すように、エンド位置対応角管理部65は、角速度変化量演算部101と、規制位置判定角取得部102と、更新許可部103と、エンド位置対応角設定部104とを備えている。なお、角速度変化量演算部101は、上記角速度変化量演算部81と同様に、ローパスフィルタ処理を施した角速度変化量Δωmを演算し、この角速度変化量Δωmを規制位置判定角取得部102に出力する。以下、制御ブロック毎に順に説明する。
【0085】
(規制位置判定角取得部102)
規制位置判定角取得部102には、q軸電流値Iq、q軸電流指令値Iq*、舵角制限値Ien、車速SPD、操舵トルクTh、絶対舵角θs、解放フラグF、目標操舵速度ωs*、モータ角速度ωm及び角速度変化量Δωmが入力される。規制位置判定角取得部102は、これらの状態量に基づいてラック軸12の左右いずれか一方への移動が規制されているか否かを判定し、ラック軸12の移動が規制されていると判定した際の絶対舵角θsに応じた規制位置判定角θiを取得する。
【0086】
規制位置判定角取得部102は、部分解放制御が実行されている解放時と、部分解放制御が実行されていない通常時とを区別して、ラック軸12の移動が規制されているか否かの判定を行い、規制位置判定角θiを取得する。
【0087】
具体的には、
図7のフローチャートに示すように、規制位置判定角取得部102は、各種状態量を取得すると(ステップ201)、解放フラグFが「1」であるか否かを判定する(ステップ202)。解放フラグFが「0」である場合には(ステップ202:NO)、通常時に規制位置判定角θiを取得するための通常時規制位置判定角取得処理を実行する(ステップ203)。これに対し、解放フラグFが「1」である場合には(ステップ202:YES)、解放時に規制位置判定角θiを取得するための解放時規制位置判定角取得処理を実行する(ステップ204)。通常時規制位置判定角取得処理では、部分解放制御の非実行時において転舵軸の移動が規制されているか否かの判定である動的規制判定及び静的規制判定が行われる。すなわち、動的規制判定及び静的規制判定がそれぞれ通常時エンド当て判定に相当する。解放時規制位置判定角取得処理では、部分解放制御の実行時においてラック軸12の移動が規制されているか否かの判定である非追従判定及び追加規制判定が行われる。つまり、規制位置判定角取得部102は、通常時規制位置判定角取得部及び解放時規制位置判定角取得部に相当する。これら各処理の詳細については、後述する。
【0088】
ここで、規制位置判定角取得部102は、通常時規制位置判定角取得処理及び解放時規制位置判定角取得処理の各処理において、ラック軸12の移動が規制されていると判定した際の絶対舵角θsから、EPS2に生じている機械的な弾性変形を差し引いた値を規制位置判定角θiとして取得する。つまり、規制位置判定角取得部102は、ラック軸12の移動が規制されていると判定した際の絶対舵角θsに対して、EPS2に付与されたトルクにより生じるEPS2の機械的な弾性変形に基づいて補正する剛性補償を行い、剛性補償後の角度を規制位置判定角θiとして取得する。
【0089】
詳しくは、規制位置判定角取得部102は、ラック軸12の移動が規制されていると判定された際にEPS2に付与されたトルクの合計値であるピニオン軸トルクTpを演算する。ピニオン軸トルクTpは、ラック軸12に作用する軸力に相当する。本実施形態の規制位置判定角取得部102は、下記(3)式に示すように、運転者に付与される操舵トルクThと、q軸電流値Iqに基づくモータトルクと、モータ21の角速度変化量Δωmに基づく慣性トルクとを用いてピニオン軸トルクTpを演算する。
【0090】
Tp=Th+Iq×K2+Δωm×K3…(3)
なお、「K2」は、モータ21のモータ定数、減速機構22の減速比及び効率等によって決まる係数を示す。「K3」は、モータ21の慣性モーメント、減速機構22の減速比及び効率等によって決まる係数を示す。
【0091】
ここで、
図8に示すように、通常、運転者によりステアリング操作が行われると、EPS2に付与されたピニオン軸トルクTpに応じて転舵輪4が転舵し、絶対舵角θsが増加する。そして、実際のラックエンド位置に対応する絶対舵角θsを若干超えたところから、ピニオン軸トルクTpが増加しても絶対舵角θsがほとんど増加しなくなる。これは、エンド当てによりラック軸12の移動が規制されるため、ピニオン軸トルクTpが増加することで、EPS2を構成するステアリングシャフト11の捻れやラック軸12の圧縮等の機械的な弾性変形によってモータ21が僅かに回転するのみとなるからである。そして、絶対舵角θsに対するピニオン軸トルクTpの傾きはEPS2の弾性係数K4に比例することから、絶対舵角θsを基点に当該傾きに従ってピニオン軸トルクTpがゼロとなる位置での絶対舵角θsが、実際のラックエンド位置と略一致する。
【0092】
このことを踏まえ、規制位置判定角取得部102は、EPS2の弾性係数K4に対してピニオン軸トルクTpを乗算することにより、EPS2の弾性変形量に基づくモータ21の回転角を演算する。そして、規制位置判定角取得部102は、ラック軸12の移動が規制されていると判定された際の絶対舵角θsから上記回転角を減算した値を規制位置判定角θiとして取得する。
【0093】
<通常時規制位置判定角取得処理>
次に、通常時規制位置判定角取得処理について説明する。
通常時規制位置判定角取得処理において、規制位置判定角取得部102は、動的規制判定及び静的規制判定を行い、通常時規制位置判定角である規制位置判定角θiを取得する。具体的には、規制位置判定角取得部102は、動的規制判定が第2所定時間継続して成立した際の絶対舵角θs、又は静的規制判定が第3所定時間継続して成立した際の絶対舵角θsに対して剛性補償を行った角度を規制位置判定角θiとして取得する。本実施形態の規制位置判定角取得部102は、先に動的規制判定を行い、動的規制判定が成立しない場合に静的規制判定を行う。
【0094】
なお、静的規制判定は、ラック軸12の移動が規制されたまま保舵されているような状態、及びゆっくりと切り込み操舵を行ってラック軸12の移動が規制される状態を検出する判定である。動的規制判定は、比較的速い速度で切り込み操舵を行い、ラック軸12の移動が規制された直後に切り返し操舵が行われるような状態を検出する判定である。
【0095】
規制位置判定角取得部102は、次の条件が成立する場合に、動的規制判定が成立し、ラック軸12の移動が規制されたと判定する。
(B1)操舵トルクThの絶対値が第2操舵トルク閾値Tth2以上である。
【0096】
(B2)モータ角速度ωmの符号が操舵トルクThの符号と同一であって、モータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きい。
(B3)角速度変化量Δωmの符号が操舵トルクThの符号と反対であって、角速度変化量Δωmの絶対値が急変角速度変化量閾値Δωth_scよりも大きい。
【0097】
なお、第2操舵トルク閾値Tth2は、ラックエンド18がラックハウジング13に当接した直後に切り戻し操舵を行う際の操舵トルクであり、第1操舵トルク閾値Tth1よりも小さく、かつゼロよりも大きな適宜の値に設定されている。急変角速度変化量閾値Δωth_scは、モータ21が急速に減速していることを示す角速度変化量であり、停止角速度変化量閾値Δωth_stよりも大きな値に設定されている。
【0098】
規制位置判定角取得部102は、次の条件が成立する場合に、静的規制判定が成立し、ラック軸12の移動が規制されたと判定する。
(C1)操舵トルクThの絶対値が第1操舵トルク閾値Tth1以上である。
【0099】
(C2)モータ角速度ωmの符号が操舵トルクThの符号と同一であって、モータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きく、かつ低速角速度閾値ωth_lo以下である。
【0100】
(C3)角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満である。
なお、低速角速度閾値ωth_loは、モータ21が低速で回転していることを示す角速度であり、ゼロよりも大きな適宜の値に設定されている。
【0101】
次に、
図9~
図11に示すフローチャートにしたがって、通常時規制位置判定角取得処理の手順の一例を説明する。なお、以下では、説明の便宜上、ラック軸12が右方向へ移動し、右側の規制位置判定角θiを取得する場合について説明するが、ラック軸12が左側へ移動し、左側の規制位置判定角θiを取得する場合も、同様の処理が行われる。
【0102】
図9に示すように、規制位置判定角取得部102は、通常時規制位置判定角取得処理において、まず動的規制判定を行う(ステップ301)。
図10に示すように、動的規制判定において、規制位置判定角取得部102は、操舵トルクThが第2操舵トルク閾値Tth2以上であるか否かを判定する(ステップ401)。操舵トルクThが第2操舵トルク閾値Tth2以上である場合には(ステップ401:YES)、モータ角速度ωmが停止角速度閾値ωth_stよりも大きいか否かを判定する(ステップ402)。すなわち、ステップ402では、モータ角速度ωmの符号が操舵トルクThの符号と同一であって、モータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きいか否かを判定する。モータ角速度ωmが停止角速度閾値ωth_stよりも大きい場合には(ステップ402:YES)、角速度変化量Δωmが負の急変角速度変化量閾値Δωth_sc未満であるか否かを判定する(ステップ403)。すなわち、ステップ303では、角速度変化量Δωmの符号が操舵トルクThの符号と反対であって、角速度変化量Δωmの絶対値が急変角速度変化量閾値Δωth_scよりも大きいか否かを判定する。そして、角速度変化量Δωmが負の急変角速度変化量閾値Δωth_sc未満である場合には(ステップ403:YES)、動的規制判定が成立し、ラック軸12の移動が規制されていると判定する(ステップ404)。
【0103】
一方、操舵トルクThが第2操舵トルク閾値Tth2未満である場合(ステップ401:NO)、モータ角速度ωmが停止角速度閾値ωth_st以下の場合(ステップ402:NO)、又は角速度変化量Δωmが負の急変角速度変化量閾値Δωth_sc以上の場合には(ステップ403:NO)、それ以降の処理を実行しない。
【0104】
図9に示すように、規制位置判定角取得部102は、ステップ301において動的規制判定を行った後、同判定が成立したか否かを判定する(ステップ302)。動的規制判定が成立した場合には(ステップ302:YES)、動的規制判定が成立した回数を示す動的カウンタのカウント値Cdyをインクリメントし(ステップ303)、静的規制判定が成立した回数を示す静的カウンタのカウント値Cstをクリアする(ステップ304)。続いて、動的カウンタのカウント値Cdyが第2所定時間に対応する所定カウント値Cth2以上であるか否かを判定し(ステップ305)、カウント値Cdyが所定カウント値Cth2未満である場合には(ステップ305:NO)、それ以降の処理を実行しない。
【0105】
一方、規制位置判定角取得部102は、カウント値Cdyが所定カウント値Cth2以上である場合には(ステップ305:YES)、動的カウンタのカウント値Cdyをクリアする(ステップ306)。そして、同演算周期において取得した絶対舵角θsに対して剛性補償を行って規制位置判定角θiを取得する(ステップ307)。
【0106】
規制位置判定角取得部102は、動的規制判定が成立しない場合には(ステップ302:NO)、静的規制判定を行う(ステップ311)。
図11に示すように、静的規制判定において、規制位置判定角取得部102は、操舵トルクThが第1操舵トルク閾値Tth1以上であるか否かを判定する(ステップ501)。操舵トルクThが第1操舵トルク閾値Tth1以上である場合には(ステップ501:YES)、モータ角速度ωmが停止角速度閾値ωth_stよりも大きく、かつ低速角速度閾値ωth_lo以下であるか否かを判定する(ステップ502)。すなわち、ステップ502では、モータ角速度ωmの符号が操舵トルクThの符号と同一であって、モータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きく、かつ低速角速度閾値ωth_lo以下であるか否かを判定する。モータ角速度ωmが停止角速度閾値ωth_stよりも大きく、かつ低速角速度閾値ωth_lo以下である場合、すなわちモータ21が極低速で回転している場合には(ステップ502:YES)、角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満であるか否かを判定する(ステップ503)。そして、角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st未満である場合には(ステップ503:YES)、静的規制判定が成立し、ラック軸12の移動が規制されていると判定する(ステップ504)。
【0107】
一方、操舵トルクThが第1操舵トルク閾値Tth1未満である場合(ステップ501:NO)、モータ角速度ωmが停止角速度閾値ωth_st以下である、又は低速角速度閾値ωth_loよりも大きい場合(ステップ502:NO)、角速度変化量Δωmの絶対値が停止角速度変化量閾値Δωth_st以上の場合には(ステップ503:NO)、それ以降の処理を実行しない。
【0108】
図9に示すように、規制位置判定角取得部102は、ステップ311において静的規制判定を行った後、同判定が成立したか否かを判定する(ステップ312)。静的規制判定が成立した場合には(ステップ312:YES)、静的カウンタのカウント値Cstをインクリメントし(ステップ313)、動的カウンタのカウント値Cdyをクリアする(ステップ314)。続いて、静的カウンタのカウント値Cstが第3所定時間に対応する所定カウント値Cth3以上であるか否かを判定し(ステップ315)、カウント値Cstが所定カウント値Cth3未満である場合には(ステップ315:NO)、それ以降の処理を実行しない。
【0109】
一方、規制位置判定角取得部102は、カウント値Cstが所定カウント値Cth3以上である場合には(ステップ315:YES)、静的カウンタのカウント値Cstをクリアする(ステップ316)。そして、同演算周期において取得した絶対舵角θsに対して剛性補償を行って規制位置判定角θiを取得する(ステップ317)。
【0110】
なお、規制位置判定角取得部102は、静的規制判定が成立しない場合(ステップ312:NO)、すなわちラック軸12の移動が規制されていない場合には、動的カウンタ及び静的カウンタのカウント値Cdy,Cstをそれぞれクリアする(ステップ321,322)。
【0111】
<解放時規制位置判定角取得処理>
次に、解放時規制位置判定角取得処理について説明する。
解放時規制位置判定角取得処理において、規制位置判定角取得部102は、非追従判定及び追加規制判定を行い、解放時規制位置判定角である規制位置判定角θiを取得する。具体的には、規制位置判定角取得部102は、第4所定時間継続して非追従判定が成立した後に追加規制判定を行い、第5所定時間継続して追加規制判定が成立した際の絶対舵角θsに対して剛性補償を行った角度を規制位置判定角θiとして取得する。
【0112】
なお、非追従判定は、部分解放制御の実行時において、ラック軸12の移動が規制される状態を検出する判定である。詳しくは、部分解放制御の実行時には、ラック軸12が仮想ラックエンド位置から実ラックエンド位置までは、上記(2)式に示されるように、操舵トルクThに基づく目標操舵速度ωs*に応じた速度でラック軸12が移動する。一方、ラック軸12が実ラックエンド位置まで移動した後は、ラック軸12の移動が機械的に規制されることにより、部分解放制御を実行しても、操舵トルクThに応じた速度でラック軸12が移動できなくなる。このことを踏まえ、非追従判定は、モータ角速度ωmが目標操舵速度ωs*に基づく値に追従しているか否かに基づいて、ラック軸12の移動が規制される状態を検出する。
【0113】
追加規制判定は、ラック軸12の移動が規制されたまま保舵されているような状態、及びゆっくりと切り込み操舵を行ってラック軸12の移動が規制される状態を検出する判定であり、本実施形態では、上記静的規制判定と同様の判定である。
【0114】
規制位置判定角取得部102は、次の条件が成立する場合に、非追従判定が成立したと判定する。
(D1)q軸電流指令値Iq*の絶対値が舵角制限値Ien以上である。
【0115】
(D2)モータ角速度ωmの絶対値が追従判定用角速度閾値ωth_fo未満である。
(D3)角速度変化量Δωmの絶対値が開始判定用角速度変化量閾値Δωth_bg未満である。
【0116】
なお、上記のようにq軸電流指令値Iq*の絶対値は上限ガード処理部63によって制限値Ig以下に制限されるため、(D1)の条件はq軸電流指令値Iq*の絶対値が舵角制限値Ienに制限されているとも言える。追従判定用角速度閾値ωth_foは、目標操舵速度ωs*に換算係数K5及び判定係数K6を乗算することにより得られる値である。換算係数は、ステアリングシャフト11の回転をモータ21の回転に換算するための係数であり、予め設定されている。判定係数K6は、「1」未満の適宜の値であり、例えば「0.5」に設定されている。なお、目標操舵速度ωs*に換算係数K5を乗算して得られる値が目標角速度に相当する。開始判定用角速度変化量閾値Δωth_bgは、部分解放制御が開始されたときに生じ得る角速度変化量であり、予め設定されている。
【0117】
規制位置判定角取得部102は、上記静的規制判定と同じ(C1)~(C3)の3つの条件が成立する場合に、追加規制判定が成立し、ラック軸12の移動が規制されたと判定する。
【0118】
次に、
図12に示すフローチャートにしたがって、解放時規制位置判定角取得処理の手順の一例を説明する。なお、以下では、説明の便宜上、ラック軸12が右方向へ移動し、右側の規制位置判定角θiを取得する場合について説明するが、ラック軸12が左側へ移動し、左側の規制位置判定角θiを取得する場合も、同様の処理が行われる。
【0119】
図12に示すように、規制位置判定角取得部102は、解放時規制位置判定角取得処理において、まず非追従判定を行う(ステップ601~603)。具体的には、規制位置判定角取得部102は、ステップ601において、q軸電流指令値Iq*の絶対値が舵角制限値Ien以上であるか否かを判定する。q軸電流指令値Iq*の絶対値が舵角制限値Ien以上である場合には(ステップ601:YES)、モータ角速度ωmの絶対値が追従判定用角速度閾値ωth_fo未満であるか否かを判定する(ステップ602)。モータ角速度ωmの絶対値が追従判定用角速度閾値ωth_fo未満である場合には(ステップ602:YES)、角速度変化量Δωmの絶対値が開始判定用角速度変化量閾値Δωth_bg未満であるか否かを判定する(ステップ603)。角速度変化量Δωmの絶対値が開始判定用角速度変化量閾値Δωth_bg未満である場合には(ステップ603:YES)、非追従判定が成立したと判定し、非追従判定が成立した回数を示す非追従カウンタのカウント値Cωをインクリメントする(ステップ604)。続いて、非追従カウンタのカウント値Cωが第4所定時間に対応する所定カウント値Cth4以上であるか否かを判定し(ステップ605)、カウント値Cωが所定カウント値Cth4未満である場合には(ステップ605:NO)、それ以降の処理を実行しない。
【0120】
一方、規制位置判定角取得部102は、q軸電流指令値Iq*の絶対値が舵角制限値Ien未満である場合(ステップ601:NO)には、非追従カウンタのカウント値Cωをクリアする(ステップ606)。また、モータ角速度ωmの絶対値が追従判定用角速度閾値ωth_fo以上である場合(ステップ602:NO)、又は角速度変化量Δωmの絶対値が開始判定用角速度変化量閾値Δωth_bg以上である場合にも(ステップ603:NO)、ステップ606に以降以降して、カウント値Cωをクリアする。
【0121】
続いて、規制位置判定角取得部102は、カウント値Cωが所定カウント値Cth4以上である場合には(ステップ605:YES)、追加規制判定を行う(ステップ607)。追加規制判定の処理手順は、
図11に示す静的規制判定と同一であるため、その説明を省略する。
【0122】
規制位置判定角取得部102は、ステップ607において追加規制判定を行った後、同判定が成立したか否かを判定する(ステップ608)。追加規制判定が成立した場合には(ステップ608:YES)、追加規制判定が成立した回数を示す追加カウンタのカウント値Cadをインクリメントする(ステップ609)。続いて、追加カウンタのカウント値Cadが第5所定時間に対応する所定カウント値Cth5以上であるか否かを判定し(ステップ610)、カウント値Cadが所定カウント値Cth5未満である場合には(ステップ610:NO)、それ以降の処理を実行しない。なお、追加規制判定が成立しない場合には(ステップ608:NO)、追加カウンタのカウント値Cadをクリアする(ステップ611)。
【0123】
一方、規制位置判定角取得部102は、カウント値Cadが所定カウント値Cth5以上である場合には(ステップ610:YES)、カウント値Cadをクリアするとともに(ステップ612)、カウント値Cωをクリアし(ステップ613)、そして、同演算周期において取得した絶対舵角θsに対して剛性補償を行って規制位置判定角θiを取得する(ステップ614)。
【0124】
(更新許可部103)
図6に示すように、更新許可部103には、規制位置判定角θiが入力される。更新許可部103は、左側又は右側の複数の規制位置判定角θiの分散に基づいて、これらがエンド当てによりラック軸12の移動が規制された際のデータであるか否かを判定する。なお、更新許可部103は、規制位置判定角θiの符号に基づいてラック軸12の移動が規制された方向が左方向か右方向であるかを判定する。そして、更新許可部103は、複数の規制位置判定角θiがエンド当てによりラック軸12の移動が規制された際のデータである場合には、これら複数の規制位置判定角θiからなるエンド当て判定データDθ、及び更新許可信号Spをエンド位置対応角設定部104に出力する。更新許可信号Spは、メモリ64に記憶されたエンド位置対応角θs_le,θs_reの更新をエンド位置対応角設定部104に許可する信号である。
【0125】
なお、以下では、説明の便宜上、ラック軸12の左方向への移動が複数回に亘って規制され、左側の規制位置判定角θiを複数取得した場合について説明するが、右側の規制位置判定角θiを複数取得した場合も、更新許可部103により同様の処理が行われる。
【0126】
更新許可部103は、左側の規制位置判定角θiの取得個数nが所定演算個数nca以上となると、次の(4)式を用いて判定対象となる判定分散値Vdを演算する。なお、本実施形態では、所定演算個数ncaは「3」である。
【0127】
【数3】
続いて、更新許可部103は、判定分散値Vdと予め設定された既定分散値Vmとの比である分散比としての分散比Rd(Rd=Vd/Vm)を演算する。
【0128】
ここで、エンド当て緩和制御の実行によりラック軸12の移動が規制されていると判定された場合に取得される規制位置判定角θiは、例えば路面μの大小等によってばらつくことがある。一方、エンド当てによりラック軸12の移動が規制されていると判定された場合に取得される規制位置判定角θiは、EPS2の構造に応じて機械的に定まるため、ばらつきにくい。したがって、複数の規制位置判定角θiの分散が小さい場合には、記憶されたエンド位置対応角θs_le,θs_reに基づくエンド当て緩和制御の実行では、ラック軸12の移動を規制できず、エンド当てによりラック軸12の移動が規制されていると考えられる。つまり、記憶されたエンド位置対応角θs_le,θs_reが、実際にエンド当てが生じる実エンド角としての実ラックエンド角に対してステアリング中立位置側にずれていると考えられる。
【0129】
この点を踏まえ、更新許可部103は、分散比Rdと分散閾値Rthとの大小比較を行う。分散閾値Rthは、取得個数nに応じた値であり、予め設定されている。そして、更新許可部103は、分散比Rdが分散閾値Rth以下の場合に、複数の規制位置判定角θiがエンド当てによりラック軸12の移動が規制された際に取得したデータであると判定する。これに対し、更新許可部103は、分散比Rdが分散閾値Rthよりも大きい場合には、複数の規制位置判定角θiがエンド当てによりラック軸12の移動が規制された際に取得したデータではないと判定する。この場合、更新許可部103は、エンド当て判定データDθ及び更新許可信号Spをエンド位置対応角設定部104に出力しない。
【0130】
続いて、更新許可部103は、エンド当てによりラック軸12の移動が規制された際に取得したデータであると判定した複数の規制位置判定角θiに基づいて、仮エンド位置判定角θe_tを演算する。本実施形態の更新許可部103は、複数の規制位置判定角θiの平均値を仮エンド位置判定角θe_tとして演算する。
【0131】
更新許可部103は、仮エンド位置判定角θe_tと左側のエンド位置対応角θs_leとの差分を仮エンド離間角Δθ_tとして演算する。そして、更新許可部103は、エンド離間角Δθが仮エンド離間角Δθ_tであると仮定した場合に、エンド当て緩和制御の実行により制限されるq軸電流指令値Iq*が第2電流閾値Ith2以下であれば、エンド当て緩和制御が正常に実行されているとして、エンド位置対応角θs_le,θs_reの更新を許可しない。本実施形態の第2電流閾値Ith2は、定格トルクに基づくトルク閾値に対応した閾値であり、定格電流Irの50%に設定されている。
【0132】
具体的には、更新許可部103には、上記角度制限成分演算部84が有する通常時用マップと同様の傾向を有し、車速SPDがゼロの場合に固定されたマップを備えている。更新許可部103は、同マップを参照することにより、仮エンド離間角Δθ_tに応じた仮角度制限成分Iga_tを演算する。そして、更新許可部103は、仮角度制限成分Iga_tが定格電流Irの50%以上の場合には、q軸電流指令値Iq*が第2電流閾値Ith2以下であると判定し、エンド当て判定データDθ及び更新許可信号Spをエンド位置対応角設定部104に出力しない。この後、更新許可部103は、取得していた複数の規制位置判定角θiを破棄し、上記処理を繰り返す。
【0133】
なお、上記のようにq軸電流指令値Iq*の上限値となる舵角制限値Ienは、定格電流Irから角度制限成分Igaを減算することにより演算されるものである。そのため、角度制限成分Igaが定格電流の50%以上であれば、舵角制限値Ienが定格電流の50%以下になることから、更新許可部103は、仮角度制限成分Iga_tが定格電流Irの50%以上の場合には、q軸電流指令値Iq*が第2電流閾値Ith2以下であると判定する。
【0134】
一方、更新許可部103は、仮角度制限成分Iga_tが定格電流Irの50%未満の場合には、エンド当て判定データDθ及び更新許可信号Spをエンド位置対応角設定部104に出力する。この後、更新許可部103は、取得していた複数の規制位置判定角θiを破棄し、上記処理を繰り返す。
【0135】
次に、
図13に示すフローチャートにしたがって、更新許可部103による更新許可に係る処理手順の一例を説明する。なお、以下では、説明の便宜上、ラック軸12が右方向へ移動し、右側の規制位置判定角θiを取得する場合について説明するが、ラック軸12が左側へ移動し、左側の規制位置判定角θiを取得する場合も、同様の処理が行われる。
【0136】
具体的には、更新許可部103は、各種状態量を取得すると(ステップ701)、規制位置判定角θiの取得個数nが所定演算個数nca以上であるか否かを判定する(ステップ702)。規制位置判定角θiの取得個数nが所定演算個数nca未満である場合には(ステップ702:NO)、それ以降の処理を実行しない。
【0137】
更新許可部103は、規制位置判定角θiの取得個数nが所定演算個数nca以上である場合には(ステップ702:YES)、上記(4)式を用いて判定分散値Vdを演算し、分散比Rdを演算する(ステップ703)。続いて、分散比Rdと分散閾値Rthとの大小比較を行い(ステップ704)、分散比Rdが分散閾値Rth以下の場合には(ステップ704:YES)、仮エンド位置判定角θe_tを演算し(ステップ705)、仮エンド離間角Δθ_tを演算する(ステップ706)。そして、仮エンド離間角Δθ_tでの仮角度制限成分Iga_tを演算し(ステップ707)、仮角度制限成分Iga_tが定格電流Irの50%以上であるか否かを判定する(ステップ708)。
【0138】
更新許可部103は、仮角度制限成分Iga_tが定格電流Irの50%未満の場合には(ステップ708:NO)、更新許可信号Sp及びエンド当て判定データDθをエンド位置対応角設定部104に出力する(ステップ709,710)。続いて、取得していた複数の規制位置判定角θiを破棄する(ステップ711)。
【0139】
一方、更新許可部103は、分散比Rdが分散閾値Rthよりも大きい場合には(ステップ704:NO)、ステップ705~710の処理を実行せず、ステップ711に移行して取得していた複数の規制位置判定角θiを破棄する。また、仮角度制限成分Iga_tが定格電流Irの50%以上の場合には(ステップ708:YES)、ステップ709,710の処理を実行せず、ステップ711に移行して取得していた複数の規制位置判定角θiを破棄する。
【0140】
(エンド位置対応角設定部104)
図6に示すように、エンド位置対応角設定部104には、エンド当て判定データDθ及び更新許可信号Spが入力される。エンド位置対応角設定部104は、エンド当て判定データDθに基づいて、該エンド当て判定データDθに対応する側のエンド位置対応角θs_le,θs_reのみを更新する。一例として、エンド位置対応角設定部104は、エンド当て判定データDθの平均値を該エンド当て判定データDθに対応する側のエンド位置対応角θs_le,θs_reとして設定する。
【0141】
次に、本実施形態の作用及び効果について説明する。
(1)電流指令値演算部51は、エンド当て緩和制御の実行時に運転者が車両を旋回走行させようとしていると判定する場合に、エンド当て緩和制御の実行によるq軸電流指令値Iq*の補正量を操舵トルクThに基づいて小さくする部分解放制御を行う。これにより、エンド当て緩和制御の実行によるq軸電流指令値Iq*の制限が部分的に解放されて、q軸電流指令値Iq*が大きくなる。したがって、例えばエンド当て緩和制御の実行により仮想ラックエンド位置でラック軸12の移動が規制されても、運転者が旋回走行させようとすることで、部分解放制御が実行されてq軸電流指令値Iq*が大きくなるため、ラック軸12を実ラックエンド位置まで移動させることが可能となる。その結果、車両の小回り性能が低下することを抑制できる。
【0142】
そして、エンド位置対応角管理部65は、複数の規制位置判定角θiに基づいてエンド位置対応角θs_le,θs_reの更新を許可し、メモリ64に記憶されたエンド位置対応角θs_le,θs_reを更新する。そのため、例えば車両を修理する際にステアリングシャフト11を交換することで、実ラックエンド角と記憶されているエンド位置対応角θs_le,θs_reとのずれが生じても、こうしたずれを低減できる。
【0143】
ここで、規制位置判定角θiには、解放時規制位置判定角取得処理で取得したものが含まれる。解放時規制位置判定角取得処理では、部分解放制御の実行によってラック軸12が仮想ラックエンド位置よりも実ラックエンド位置に近づいてから規制位置判定角θiが取得されるため、当該規制位置判定角θiは、実ラックエンド角に近似した角度になると考えられる。したがって、エンド位置対応角管理部65は、実ラックエンド角に近い規制位置判定角θiに基づいて、エンド位置対応角θs_le,θs_reの更新の必要性の有無を正確に判定できる。
【0144】
(2)更新許可部103は、解放時規制位置判定角取得処理で取得した規制位置判定角θiだけでなく、通常時規制位置判定角取得処理で取得した規制位置判定角θiに基づいてエンド位置対応角θs_le,θs_reの更新を許可する。そのため、実ラックエンド角と記憶されているエンド位置対応角θs_le,θs_reとのずれが、例えばエンド当て緩和制御が実行される前にラック軸12がラックハウジング13に当たるほど大きい場合にも、エンド位置対応角θs_le,θs_reを更新できる。
【0145】
(3)電流指令値演算部51は、エンド離間角Δθが所定角度θa以下となる場合に、エンド離間角Δθの減少に基づいて小さくなる舵角制限値Ienを演算する舵角制限値演算部71を備える。電流指令値演算部51は、q軸電流指令値Iq*の絶対値を舵角制限値Ienに制限することにより、エンド当て緩和制御を実行する。非追従判定が成立する条件に、q軸電流指令値Iq*の絶対値が舵角制限値Ien以上であること、すなわちq軸電流指令値Iq*が部分解放制御により解放された状態での最大値となっていることが含まれる。これにより、十分なモータトルクが出力されていない状態で非追従判定を行うことで、部分解放制御の開始直後に誤ってラック軸12の移動が規制されていると判定することを抑制できる。
【0146】
(4)非追従判定が成立する条件に、モータ角速度ωmの絶対値が追従判定用角速度閾値ωth_fo未満であることが含まれるため、部分解放制御の実行時にモータ角速度ωmが目標角速度に追従しているか否かを好適に判定できる。
【0147】
(5)部分解放制御が開始された直後は、モータ21が加速しているものの、モータ角速度ωmがまだ略ゼロであり、目標角速度に追従できていない。この点を踏まえ、本実施形態では、非追従判定が成立する条件に、角速度変化量Δωmの絶対値が開始判定用角速度変化量閾値Δωth_bg未満であり、モータ21が大きく加速していないことが含まれる。そのため、部分解放制御の開始直後に誤ってラック軸12の移動が規制されていると判定することを抑制できる。
【0148】
(6)規制位置判定角取得部102は、解放時規制位置判定角取得処理において、非追従判定が成立した後に、追加規制判定が成立した場合に、規制位置判定角θiを取得する。ここで、非追従判定は、モータ21の回転方向が瞬間的に操舵方向と逆になる場合にも成立し得る。そのため、モータ21の回転方向が操舵方向と逆になった瞬間に規制位置判定角θiを取得すると、当該規制位置判定角θiは実ラックエンド角から乖離するおそれがある。この点、本実施形態では、モータ角速度ωmの符号が操舵トルクThの符号と同一であって、モータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きい場合、すなわちモータ21の回転方向が操舵方向と同じ場合に、規制位置判定角θiを取得する。そのため、規制位置判定角θiが実ラックエンド角に対して乖離することを抑制できる。
【0149】
本実施形態は、以下のように変更して実施することができる。本実施形態及び以下の変形例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
・上記実施形態において、非追従判定で用いるモータ角速度ωmとしてローパスフィルタ処理を施したものを用いてもよい。この場合、非追従判定で用いる角速度変化量Δωmとして、ローパスフィルタ処理を施したモータ角速度ωmの変化量を用いてもよい。
【0150】
・上記実施形態では、エンド位置対応角設定部104は、更新許可信号Spが入力された場合に、エンド当て判定データDθに対応する側のエンド位置対応角θs_le,θs_reのみを更新したが、これに限らず、例えば左右両側のエンド位置対応角θs_le,θs_reを更新してもよい。この際におけるエンド位置対応角θs_le,θs_reの学習については、適宜の方法を採用可能である。また、エンド当て判定データDθの平均値を対応する側のエンド位置対応角θs_le,θs_reとして設定せず、例えばエンド当て判定データDθのうち、絶対値の最も大きな規制位置判定角θiを対応する側のエンド位置対応角θs_le,θs_reとして設定してもよい。さらに、エンド位置対応角設定部104は、エンド当て判定データDθに基づかず、規制位置判定角θiを別途取得し、この規制位置判定角θiに基づいてエンド位置対応角θs_le,θs_reを更新してもよい。
【0151】
・上記実施形態では、更新許可部103は、複数の規制位置判定角θiの分散に基づいて、メモリ64に記憶されたエンド位置対応角θs_le,θs_reの更新の必要性を判定したが、これに限らない。例えば規制位置判定角θiの絶対値が対応する側のエンド位置対応角θs_le,θs_reの絶対値よりも大きい場合に、エンド位置対応角θs_le,θs_reの更新の必要性があると判定してもよい。
【0152】
・上記実施形態において、規制位置判定角取得部102が通常時規制位置判定角取得処理として、静的規制判定及び動的規制判定のいずれか一方のみを実行する構成としてもよい。また、規制位置判定角取得部102が通常時規制位置判定角取得処理を実行せず、解放時規制位置判定角取得処理のみを実行する構成としてもよい。
【0153】
・上記実施形態において、非追従判定が成立する条件は適宜変更可能である。例えば(D1)及び(D3)の少なくとも1つの条件を判定しなくてもよい。また、例えば角度制限成分Igaがゼロでない、といった他の条件を追加してもよい。
【0154】
・上記実施形態において、例えば(D1)~(D3)の条件が成立する場合、第4所定時間継続するか否かにかかわらず、非追従判定が成立したと判定してもよい。追加規制判定、動的規制判定、静的規制判定及び旋回意思判定についても同様に、各判定条件の成立が所定時間継続するか否かに関わらず、各判定が成立したと判定してもよい。
【0155】
・上記実施形態において、動的規制判定の条件及び静的規制判定の条件は適宜変更可能である。
・上記実施形態では、追加規制判定を静的規制判定と同じ判定としたが、これに限らない。追加規制判定を、例えばモータ角速度ωmの符号が操舵トルクThの符号と同一であってモータ角速度ωmの絶対値が停止角速度閾値ωth_stよりも大きいか否かのみの判定としてもよい。
【0156】
・上記実施形態において、分散比Rdが分散閾値Rth以下となり、複数の規制位置判定角θiがエンド当てによりラック軸12の移動が規制された際に取得したデータであると判定した場合には、q軸電流指令値Iq*が第2電流閾値Ith2以下に制限されるか否かに関わらず、エンド位置対応角θs_le,θs_reを更新してもよい。
【0157】
・上記実施形態では、ピニオン軸トルクTpを操舵トルクTh、モータトルク及び慣性トルクに基づいて演算したが、これに限らず、演算負荷の軽減等を目的として、例えば操舵トルクTh及びモータトルクに基づいてピニオン軸トルクTpを演算してもよい。
【0158】
・上記実施形態において、規制位置判定角取得部102がラック軸12の移動が規制されていると判定した際の絶対舵角θsをそのまま規制位置判定角θiとして取得し、剛性補償を行わなくてもよい。
【0159】
・上記実施形態では、エンド離間角Δθにオフセット舵角θoffを加算することで、解放時用のエンド離間角Δθ’を演算した。しかし、これに限らず、例えば絶対舵角θsからオフセット舵角θoffを減算した解放時用の絶対舵角θs’を演算し、該絶対舵角θs’のエンド位置対応角θs_le,θs_reからの距離を示す値を解放時用のエンド離間角Δθ’として演算してもよい。
【0160】
・上記実施形態において、例えばマップ演算部91が通常時用マップと、通常時用マップの横軸をオフセット舵角θoffに応じてオフセットさせる解放時用マップを備える構成とし、マップ演算部91に解放時用のエンド離間角Δθ’が入力されない構成としてもよい。このように構成しても、解放時用マップは、オフセット舵角θoffに応じて横軸がオフセットされるため、本実施形態と同様に通常時用の角度制限成分Igaよりも小さな解放時用の角度制限成分Iga’’を演算できる。
【0161】
・上記実施形態では、部分解放制御の実行後、部分解放制御の実行により通常時用の角度制限成分Igaが第1電流閾値Ith1未満となった場合に部分解放制御を停止した。しかし、これに限らず、角度制限成分Igaが第1電流閾値Ith1以上であっても、例えば上記(A1)~(A5)の条件のいずれかが成立しなくなった場合に、部分解放制御を停止してもよい。
【0162】
・上記実施形態において、部分解放制御の実行時に、舵角制限値Ienが制限閾値Ith_lim以上となってもよい。
・上記実施形態では、弾性係数K1及び慣性係数Jをそれぞれゼロとし、上記(2)式を用いて目標操舵速度ωs*を演算したが、これに限らず、例えば弾性係数K1及び慣性係数Jの少なくとも一方をゼロとしなくてもよい。この場合には、操舵トルクThに加え、例えば実際の絶対舵角θs及び操舵角速度を用いることで、目標操舵速度ωs*を演算できる。また、モデル式を用いず、例えば操舵トルクThとオフセット舵角θoffとの関係を示すマップを設定し、同マップを参照することにより操舵トルクに応じたオフセット舵角θoffを演算してもよい。
【0163】
・上記実施形態では、操舵トルクThに基づいてオフセット舵角θoffを演算し、このオフセット舵角θoffに基づいて通常時用の角度制限成分Igaよりも小さな解放時用の角度制限成分Iga’’を演算することで、部分解放制御を実行した。しかし、これに限らず、例えば部分解放制御の開始時からの時間経過に応じて小さくなる解放時用の角度制限成分Iga’’を演算することで、部分解放制御を実行してもよい。この場合、例えば解放時用の角度制限成分Iga’’の変化量に応じて目標操舵速度ωs*を演算することができる。
【0164】
・上記実施形態において、旋回意思判定の条件は適宜変更可能である。例えば(A4)及び(A5)のいずれか一方の条件が成立するか否かを判定しなくてもよく、また、例えば(A3)の条件に代えて、車両のヨーレートが旋回状態を示すヨーレート閾値以上であるかを判定してもよい。さらに、例えば(A4)及び(A5)の条件において、モータ角速度ωmに代えて操舵速度ωsを用いてもよい。さらにまた、(A2)、(A4)及び(A5)の条件に代えて、上記(C1)~(C3)の条件を用いてもよい。
【0165】
・上記実施形態では、エンド当て緩和制御の実行時に運転者が車両を旋回走行させようとしていると判定した場合、定格電流Irから通常時用の角度制限成分Igaよりも小さな解放時用の角度制限成分Iga’’を減算することにより、大きな舵角制限値Ienを演算し、q軸電流指令値Iq*の補正量を小さくした。しかし、これに限らず、部分解放制御の実行時において、例えば舵角制限値Ienが大きくなるように該舵角制限値Ienの値を直接補正することで、q軸電流指令値Iq*の補正量を小さくしてもよく、部分解放制御を実行する態様は適宜変更可能である。
【0166】
・上記実施形態では、イグニッションスイッチのオフ時にもモータ21の回転の有無を監視することで、原点からのモータ21の回転数を常時積算し、モータ絶対角及び絶対舵角θsを演算した。しかし、これに限らず、例えば操舵角を絶対角で検出するステアリングセンサを設け、該ステアリングセンサにより検出される操舵角及び減速機構22の減速比に基づいて、原点からのモータ21の回転数を積算し、モータ絶対角及び絶対舵角θsを演算してもよい。
【0167】
・上記実施形態では、アシスト指令値Ias*を舵角制限値Ienに制限することで、エンド当て緩和制御を実行したが、これに限らず、例えばアシスト指令値Ias*に対し、ラックエンド位置に近づくほど大きくなる操舵反力成分、すなわちアシスト指令値Ias*と符号が反対の成分を加算することにより、エンド当て緩和制御を実行してもよい。この構成では、エンド当て緩和制御の実行時に、運転者が車両を旋回走行させようとしていると判定した場合、操舵トルクThに応じて操舵反力成分を小さくすることで、q軸電流指令値Iq*の補正量を小さくすることが可能である。
【0168】
・上記実施形態では、アシスト指令値Ias*に対してその絶対値を制限値Ig以下に制限するガード処理を行ったが、これに限らず、例えば操舵トルクThを微分したトルク微分値に基づく補償量によってアシスト指令値Ias*を補正した値に対してガード処理を行ってもよい。
【0169】
・上記実施形態では、制限値設定部62は、電源電圧Vbに基づいて電圧制限値Ivbを演算する電圧制限値演算部72を備えたが、これに限らず、電圧制限値演算部72に加えて又は代えて、他の状態量に基づく他の制限値を演算する他の演算部を備えてもよい。また、制限値設定部62が電圧制限値演算部72を備えず、舵角制限値Ienをそのまま制限値Igとして設定する構成としてもよい。
【0170】
・上記実施形態では、定格電流Irから通常時用の角度制限成分Iga又は解放時用の角度制限成分Iga’’を減算した値を舵角制限値Ienとしたが、これに限らず、定格電流Irから角度制限成分Iga又は角度制限成分Iga’’、及びモータ角速度に応じて定まる電流制限量を減算した値を舵角制限値Ienとしてもよい。
【0171】
・上記実施形態では、操舵制御装置1は、EPSアクチュエータ6がコラム軸15にモータトルクを付与する形式のEPS2を制御対象としたが、これに限らず、例えばボール螺子ナットを介してラック軸12にモータトルクを付与する形式の操舵装置を制御対象としてもよい。また、EPSに限らず、操舵制御装置1は、運転者により操作される操舵部と、転舵輪を転舵させる転舵部との間の動力伝達が分離されたステアバイワイヤ式の操舵装置を制御対象とし、転舵部に設けられる転舵アクチュエータのモータのトルク指令値又はq軸電流指令値について、本実施形態のようにエンド当て緩和制御を実行してもよい。
【符号の説明】
【0172】
1…操舵制御装置、2…電動パワーステアリング装置、4…転舵輪、6…EPSアクチュエータ、11…ステアリングシャフト、12…ラック軸、13…ラックハウジング、18…ラックエンド、21…モータ、41…マイコン、51…電流指令値演算部、53…絶対舵角検出部、62…制限値設定部、71…舵角制限値演算部、81,101…角速度変化量演算部、82…オフセット舵角演算部、83…エンド離間角演算部、84…角度制限成分演算部、102…規制位置判定角取得部、103…更新許可部、104…エンド位置対応角設定部、Iga…角度制限成分、Ien…舵角制限値、Ig…制限値、Iq*…q軸電流指令値、Ir…定格電流、Th…操舵トルク、θi…規制位置判定角、θs…絶対舵角、Δθ…エンド離間角、θs_le,θs_re…エンド位置対応角、ωm…モータ角速度、ωs*…目標操舵速度、ωth_fo…追従判定用角速度閾値、ωth_lo…低速角速度閾値、ωth_st…停止角速度閾値、Δωm…角速度変化量、Δωth_bg…開始判定用角速度変化量閾値、Δωth_sc…急変角速度変化量閾値、Δωth_st…停止角速度変化量閾値。