<第1の実施の形態>
以下、電動パワーステアリング装置の第1の実施の形態を説明する。
<EPSの概要>
図1に示すように、電動パワーステアリング装置10は、運転者のステアリング操作に基づいて転舵輪を転舵させる操舵機構20、運転者のステアリング操作を補助する操舵補助機構30、および操舵補助機構30の作動を制御するECU(電子制御装置)40を備えている。
操舵機構20は、運転者により操作されるステアリングホイール21、およびステアリングホイール21と一体回転するステアリングシャフト22を備えている。ステアリングシャフト22は、ステアリングホイール21の中心に連結されたコラムシャフト22a、コラムシャフト22aの下端部に連結されたインターミディエイトシャフト22b、およびインターミディエイトシャフト22bの下端部に連結されたピニオンシャフト22cからなる。ピニオンシャフト22cの下端部は、ピニオンシャフト22cに交わる方向へ延びるラック軸23(正確にはラック歯が形成された部分23a)に噛合されている。したがって、ステアリングシャフト22の回転運動は、ピニオンシャフト22cおよびラック軸23からなるラックアンドピニオン機構24によりラック軸23の往復直線運動に変換される。当該往復直線運動が、ラック軸23の両端にそれぞれ連結されたタイロッド25を介して左右の転舵輪26,26にそれぞれ伝達されることにより、これら転舵輪26,26の転舵角θtaが変更される。
操舵補助機構30は、操舵補助力の発生源であるモータ31を備えている。モータ31としては、ブラシレスモータなどが採用される。モータ31は、減速機構32を介してコラムシャフト22aに連結されている。減速機構32はモータ31の回転を減速し、当該減速した回転力をコラムシャフト22aに伝達する。すなわち、ステアリングシャフト22にモータのトルクが操舵補助力(アシスト力)として付与されることにより、運転者のステアリング操作が補助される。
ECU40は、車両に設けられる各種のセンサの検出結果を運転者の要求あるいは走行状態を示す情報として取得し、これら取得される各種の情報に応じてモータ31を制御する。
各種のセンサとしては、たとえば車速センサ51、ステアリングセンサ52、トルクセンサ53および回転角センサ54がある。車速センサ51は車速(車両の走行速度)Vを検出する。ステアリングセンサ52は磁気式の回転角センサであってコラムシャフト22aに設けられて操舵角θsを検出する。トルクセンサ53はコラムシャフト22aに設けられて操舵トルクτを検出する。回転角センサ54はモータ31に設けられてモータ31の回転角θmを検出する。
ECU40は車速V、操舵角θs、操舵トルクτおよび回転角θmに基づき目標アシスト力を演算し、当該目標アシスト力を操舵補助機構30に発生させるための駆動電力をモータ31に供給する。
<ECUの構成>
つぎに、ECUのハードウェア構成を説明する。
図2に示すように、ECU40は駆動回路(インバータ回路)41およびマイクロコンピュータ42を備えている。
駆動回路41は、マイクロコンピュータ42により生成されるモータ制御信号Sc(PWM駆動信号)に基づいて、バッテリなどの直流電源から供給される直流電力を三相交流電力に変換する。当該変換された三相交流電力は各相の給電経路43を介してモータ31に供給される。各相の給電経路43には電流センサ44が設けられている。これら電流センサ44は各相の給電経路43に生ずる実際の電流値Imを検出する。なお、図2では、説明の便宜上、各相の給電経路43および各相の電流センサ44をそれぞれ1つにまとめて図示する。
マイクロコンピュータ42は、車速センサ51、ステアリングセンサ52、トルクセンサ53、回転角センサ54および電流センサ44の検出結果をそれぞれ定められたサンプリング周期で取り込む。マイクロコンピュータ42はこれら取り込まれる検出結果、すなわち車速V、操舵角θs、操舵トルクτ、回転角θmおよび実際の電流値Imに基づきモータ制御信号Scを生成する。
<マイクロコンピュータ>
つぎに、マイクロコンピュータの機能的な構成を説明する。
マイクロコンピュータ42は、図示しない記憶装置に格納された制御プログラムを実行することによって実現される各種の演算処理部を有している。
図2に示すように、マイクロコンピュータ42は、これら演算処理部として電流指令値演算部61およびモータ制御信号生成部62を備えている。電流指令値演算部61は、操舵トルクτ、車速Vおよび操舵角θsに基づき電流指令値I*を演算する。電流指令値I*はモータ31に供給するべき電流を示す指令値である。正確には、電流指令値I*は、d/q座標系におけるq軸電流指令値およびd軸電流指令値を含む。本実施形態においてd軸電流指令値は零に設定されている。d/q座標系は、モータ31の回転角θmに従う回転座標である。モータ制御信号生成部62は、回転角θmを使用してモータ31の三相の電流値Imを二相のベクトル成分、すなわちd/q座標系におけるd軸電流値およびq軸電流値に変換する。そして、モータ制御信号生成部62は、d軸電流値とd軸電流指令値との偏差、およびq軸電流値とq軸電流指令値との偏差をそれぞれ求め、これら偏差を解消するようにモータ制御信号Scを生成する。
<電流指令値演算部>
つぎに、電流指令値演算部について説明する。
図2に示すように、電流指令値演算部61は、アシスト制御部71、上下限リミット演算部72および上下限ガード処理部73を有している。また、電流指令値演算部61は3つの微分器87,88,89を有している。微分器87は操舵角θsを微分することにより操舵速度ωsを演算する。微分器88は前段の微分器87により算出される操舵速度ωsをさらに微分することにより操舵角加速度αsを演算する。微分器89は操舵トルクτを時間で微分することにより操舵トルク微分値dτを演算する。
アシスト制御部71は、操舵トルクτ、車速V、操舵角θs、操舵速度ωs、操舵角加速度αsおよび操舵トルク微分値dτに基づきアシスト制御量Ias *を演算する。アシスト制御量Ias *は、これら各種の状態量に応じた適切な大きさの目標アシスト力を発生させるためにモータ31へ供給する電流量の値(電流値)である。
上下限リミット演算部72は、アシスト制御部71において使用される各種の信号、ここでは操舵トルクτ、操舵角θs、操舵トルク微分値dτ、操舵速度ωsおよび操舵角加速度αsに基づきアシスト制御量Ias *に対する制限値として上限値IUL *および下限値ILL *を演算する。上限値IUL *および下限値ILL *はアシスト制御量Ias *に対する最終的な制限値となる。
上下限ガード処理部73は、上下限リミット演算部72により演算される上限値IUL *および下限値ILL *に基づきアシスト制御量Ias *の制限処理を実行する。すなわち、上下限ガード処理部73はアシスト制御量Ias *の値ならびに上限値IUL *および下限値ILL *を比較する。上下限ガード処理部73は、アシスト制御量Ias *が上限値IUL *を超える場合にはアシスト制御量Ias *を上限値IUL *に制限し、下限値ILL *を下回る場合にはアシスト制御量Ias *を下限値ILL *に制限する。当該制限処理が施されたアシスト制御量Ias *が最終的な電流指令値I*となる。なお、アシスト制御量Ias *が上限値IUL *と下限値ILL *との範囲内であるときには、アシスト制御部71により演算されるアシスト制御量Ias *がそのまま最終的な電流指令値I*となる。
<アシスト制御部>
つぎに、アシスト制御部71について詳細に説明する。
図3に示すように、アシスト制御部71は基本アシスト制御部81、補償制御部82および加算器83を備えている。
基本アシスト制御部81は操舵トルクτおよび車速Vに基づき基本アシスト制御量I1 *を演算する。基本アシスト制御量I1 *は、操舵トルクτおよび車速Vに応じた適切な大きさの目標アシスト力を発生させるための基礎成分(電流値)である。基本アシスト制御部81はたとえばマイクロコンピュータ42の図示しない記憶装置に格納されるアシスト特性マップを使用して基本アシスト制御量I1 *を演算する。アシスト特性マップは操舵トルクτおよび車速Vに基づき基本アシスト制御量I1 *を演算するための車速感応型の三次元マップであって、操舵トルクτ(絶対値)が大きいほど、また車速Vが小さいほど大きな値(絶対値)の基本アシスト制御量I1 *が算出されるように設定されている。
補償制御部82は、より優れた操舵感を実現するために基本アシスト制御量I1 *に対する各種の補償制御を実行する。
補償制御部82は慣性補償制御部84、ステアリング戻し制御部85およびトルク微分制御部86を備えている。
慣性補償制御部84は、操舵角加速度αsおよび車速Vに基づきモータ31の慣性を補償するための補償量I2 *(電流値)を演算する。補償量I2 *を使用して基本アシスト制御量I1 *を補正することにより、ステアリングホイール21の切り始め時における引っ掛かり感(追従遅れ)および切り終わり時の流れ感(オーバーシュート)が低減される。
ステアリング戻し制御部85は、操舵トルクτ、車速V、操舵角θsおよび操舵速度ωsに基づきステアリングホイール21の戻り特性を補償するための補償量I3 *(電流値)を演算する。補償量I3 *を使用して基本アシスト制御量I1 *を補正することにより、路面反力によるセルフアライニングトルクの過不足が補償される。補償量I3 *に応じてステアリングホイール21を中立位置に戻す方向へ向けたアシスト力が発生されるからである。
トルク微分制御部86は、逆入力振動成分を操舵トルク微分値dτとして検出し、当該検出される操舵トルク微分値dτに基づき逆入力振動などの外乱を補償するための補償量I4 *(電流値)を演算する。補償量I4 *を使用して基本アシスト制御量I1 *を補正することにより、ブレーキ操作に伴い発生するブレーキ振動などの外乱が抑制される。補償量I4 *に応じて逆入力振動を打ち消す方向へ向けたアシスト力が発生されるからである。
加算器83は基本アシスト制御量I1 *に対する補正処理として補償量I2 *、補償量I3 *および補償量I4 *を加算することによりアシスト制御量Ias *を生成する。
<上下限リミット演算部>
つぎに、上下限リミット演算部72について詳細に説明する。
図4に示すように、上下限リミット演算部72は上限値演算部90および下限値演算部100を備えている。
<上限値演算部>
上限値演算部90は、操舵トルク感応リミッタ91、操舵トルク微分値感応リミッタ92、操舵角感応リミッタ93、操舵速度感応リミッタ94、操舵角加速度感応リミッタ95および加算器96を有している。
操舵トルク感応リミッタ91は、操舵トルクτに応じてアシスト制御量Ias *に対する上限値IUL1 *を演算する。操舵トルク微分値感応リミッタ92は、操舵トルク微分値dτに応じてアシスト制御量Ias *に対する上限値IUL2 *を演算する。操舵角感応リミッタ93は、操舵角θsに応じてアシスト制御量Ias *に対する上限値IUL3 *を演算する。操舵速度感応リミッタ94は、操舵速度ωsに応じてアシスト制御量Ias *に対する上限値IUL4 *を演算する。操舵角加速度感応リミッタ95は、操舵角加速度αsに応じてアシスト制御量Ias *に対する上限値IUL5 *を演算する。
加算器96は5つの上限値IUL1 *〜IUL5 *を足し算することによりアシスト制御量Ias *に対する上限値IUL *を生成する。
<下限値演算部>
下限値演算部100は、操舵トルク感応リミッタ101、操舵トルク微分値感応リミッタ102、操舵角感応リミッタ103、操舵速度感応リミッタ104、操舵角加速度感応リミッタ105および加算器106を有している。
操舵トルク感応リミッタ101は、操舵トルクτに応じてアシスト制御量Ias *に対する下限値ILL1 *を演算する。操舵トルク微分値感応リミッタ102は、操舵トルク微分値dτに応じてアシスト制御量Ias *に対する下限値ILL2 *を演算する。操舵角感応リミッタ103は、操舵角θsに応じてアシスト制御量Ias *に対する下限値ILL3 *を演算する。操舵速度感応リミッタ104は、操舵速度ωsに応じてアシスト制御量Ias *に対する下限値ILL4 *を演算する。操舵角加速度感応リミッタ105は、操舵角加速度αsに応じてアシスト制御量Ias *に対する下限値ILL5 *を演算する。
加算器106は5つの下限値ILL1 *〜ILL5 *を足し算することによりアシスト制御量Ias *に対する下限値ILL *を生成する。
<上下限リミットマップ>
上限値演算部90および下限値演算部100は、それぞれ第1〜第5のリミットマップM1〜M5を使用して各上限値IUL1 *〜IUL5 *および各下限値ILL1 *〜ILL5 *を演算する。第1〜第5のリミットマップM1〜M5はマイクロコンピュータ42の図示しない記憶装置に格納されている。第1〜第5のリミットマップM1〜M5は、それぞれ運転者のステアリング操作に応じて演算されるアシスト制御量Ias *は許容し、それ以外の何らかの原因による異常なアシスト制御量Ias *は許容しないという観点に基づき設定される。
図5に示すように、第1のリミットマップM1は、横軸を操舵トルクτ、縦軸をアシスト制御量Ias *とするマップであって、操舵トルクτとアシスト制御量Ias *に対する上限値IUL1 *との関係、および操舵トルクτとアシスト制御量Ias *に対する下限値ILL1 *との関係をそれぞれ規定する。操舵トルク感応リミッタ91,101はそれぞれ第1のリミットマップM1を使用して操舵トルクτに応じた上限値IUL1 *および下限値ILL1 *を演算する。
第1のリミットマップM1は、操舵トルクτと同じ方向(正負の符号)のアシスト制御量Ias *は許容し、操舵トルクτと異なる方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、操舵トルクτが正の値である場合、アシスト制御量Ias *の上限値IUL1 *は操舵トルクτの増大に伴い正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵トルクτが正の値である場合、アシスト制御量Ias *の下限値ILL1 *は「0」に維持される。一方、操舵トルクτが負の値である場合、アシスト制御量Ias *の上限値IUL1 *は「0」に維持される。また、操舵トルクτが負の値である場合、アシスト制御量Ias *の下限値ILL1 *は操舵トルクτの絶対値が増大するほど負の方向へ増加し、所定値を境として負の一定値に維持される。
図6に示すように、第2のリミットマップM2は、横軸を操舵トルク微分値dτ、縦軸をアシスト制御量Ias *とするマップであって、操舵トルク微分値dτとアシスト制御量Ias *に対する上限値IUL2 *との関係、および操舵トルク微分値dτとアシスト制御量Ias *に対する下限値ILL2 *との関係をそれぞれ規定する。操舵トルク微分値感応リミッタ92,102はそれぞれ第2のリミットマップM2を使用して操舵トルク微分値dτに応じた上限値IUL2 *および下限値ILL2 *を演算する。
第2のリミットマップM2は、操舵トルク微分値dτと同じ方向(正負の符号)のアシスト制御量Ias *は許容し、操舵トルク微分値dτと異なる方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、操舵トルク微分値dτが正の値である場合、アシスト制御量Ias *の上限値IUL2 *は操舵トルク微分値dτの増大に伴い正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵トルク微分値dτが正の値である場合、アシスト制御量Ias *の下限値ILL2 *は「0」に維持される。一方、操舵トルク微分値dτが負の値である場合、アシスト制御量Ias *の上限値IUL2 *は「0」に維持される。また、操舵トルク微分値dτが負の値である場合、アシスト制御量Ias *の下限値ILL2 *は操舵トルク微分値dτの絶対値が増大するほど負の方向へ増加し、所定値を境として負の一定値に維持される。
図7に示すように、第3のリミットマップM3は、横軸を操舵角θs、縦軸をアシスト制御量Ias *とするマップであって、操舵角θsとアシスト制御量Ias *に対する上限値IUL3 *との関係、および操舵角θsとアシスト制御量Ias *に対する下限値ILL3 *との関係をそれぞれ規定する。操舵角感応リミッタ93,103はそれぞれ第3のリミットマップM3を使用して操舵角θsに応じた上限値IUL3 *および下限値ILL3 *を演算する。
第3のリミットマップM3は、操舵角θsと反対方向(正負の符号)のアシスト制御量Ias *は許容し、操舵角θsと同じ方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、操舵角θsが正の値である場合、アシスト制御量Ias *の上限値IUL3 *は「0」に維持される。また、操舵角θsが正の値である場合、アシスト制御量Ias *の下限値ILL3 *は操舵角θsの増大に伴い負の方向へ増加する。一方、操舵角θsが負の値である場合、アシスト制御量Ias *の上限値IUL3 *は操舵角θsの絶対値が増大するほど正の方向へ増加する。また、操舵角θsが負の値である場合、アシスト制御量Ias *の下限値ILL3 *は「0」に維持される。
図8に示すように、第4のリミットマップM4は、横軸を操舵速度ωs、縦軸をアシスト制御量Ias *とするマップであって、操舵速度ωsとアシスト制御量Ias *に対する上限値IUL4 *との関係、および操舵速度ωsとアシスト制御量Ias *に対する下限値ILL4 *との関係をそれぞれ規定する。操舵速度感応リミッタ94,104はそれぞれ第4のリミットマップM4を使用して操舵速度ωsに応じた上限値IUL4 *および下限値ILL4 *を演算する。
第4のリミットマップM4は、操舵速度ωsと反対方向(正負の符号)のアシスト制御量Ias *は許容し、操舵速度ωsと同じ方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、操舵速度ωsが正の値である場合、アシスト制御量Ias *の上限値IUL4 *は「0」に維持される。また、操舵速度ωsが正の値である場合、アシスト制御量Ias *の下限値ILL4 *は操舵速度ωsの増大に伴い負の方向へ増加し、所定値を境として負の一定値に維持される。一方、操舵速度ωsが負の値である場合、アシスト制御量Ias *の上限値IUL4 *は操舵速度ωsの絶対値が増大するほど正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵速度ωsが負の値である場合、アシスト制御量Ias *の下限値ILL4 *は「0」に維持される。
図9に示すように、第5のリミットマップM5は、横軸を操舵角加速度αs、縦軸をアシスト制御量Ias *とするマップであって、操舵角加速度αsとアシスト制御量Ias *に対する上限値IUL5 *との関係、および操舵角加速度αsとアシスト制御量Ias *に対する下限値ILL5 *との関係をそれぞれ規定する。操舵角加速度感応リミッタ95,105はそれぞれ第5のリミットマップM5を使用して操舵角加速度αsに応じた上限値IUL5 *および下限値ILL5 *を演算する。
第5のリミットマップM5は、操舵角加速度αsと反対方向(正負の符号)のアシスト制御量Ias *は許容し、操舵角加速度αsと同じ方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、操舵角加速度αsが正の値である場合、アシスト制御量Ias *の上限値IUL5 *は「0」に維持される。また、操舵角加速度αsが正の値である場合、アシスト制御量Ias *の下限値ILL5 *は操舵角加速度αsの増大に伴い負の方向へ増加し、所定値を境として負の一定値に維持される。一方、操舵角加速度αsが負の値である場合、アシスト制御量Ias *の上限値IUL5 *は操舵角加速度αsの絶対値が増大するほど正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵角加速度αsが負の値である場合、アシスト制御量Ias *の下限値ILL5 *は「0」に維持される。
<電動パワーステアリング装置の作用>
つぎに、前述のように構成した電動パワーステアリング装置の作用を説明する。
アシスト制御量Ias *に対する制限値(上限値および下限値)がアシスト制御量Ias *を演算する際に使用する各信号、ここでは操舵状態を示す状態量である操舵トルクτ、操舵トルク微分値dτ、操舵角θs、操舵速度ωsおよび操舵角加速度αsに対して個別に設定される。マイクロコンピュータ42は、アシスト制御量Ias *に基づき最終的な電流指令値I*を演算するに際して、各信号の値に応じてアシスト制御量Ias *の変化範囲を制限するための制限値を信号毎に設定し、これら制限値を合算した値をアシスト制御量Ias *に対する最終的な制限値として設定する。ちなみに、信号毎の制限値、ひいては最終的な制限値は運転者のステアリング操作に応じて演算される通常のアシスト制御量Ias *は許容し、何らかの原因に起因する異常なアシスト制御量Ias *は制限する観点で設定される。マイクロコンピュータ42は、たとえば運転者の操舵入力に対するトルク微分制御およびステアリング戻し制御などの各種補償制御による補償量は許容する一方、各補償量の値を超える異常出力あるいは誤出力などは制限する。
マイクロコンピュータ42は、アシスト制御量Ias *が最終的な上限値IUL *および下限値ILL *により定められる制限範囲を超えるとき、上限値IUL *を超えるアシスト制御量Ias *あるいは下限値ILL *を下回るアシスト制御量Ias *が最終的な電流指令値I*としてモータ制御信号生成部62に供給されないように制限する。最終的な上限値IUL *および下限値ILL *には信号毎に設定された個別の制限値(上限値および下限値)が反映されている。すなわち、異常な値を示すアシスト制御量Ias *が演算される場合であれ、当該異常なアシスト制御量Ias *の値は最終的な制限値によって各信号値に応じた適切な値に制限される。そして、当該適切なアシスト制御量Ias *が最終的な電流指令値I*としてモータ制御信号生成部62に供給されることにより適切なアシスト力が操舵系に付与される。異常なアシスト制御量Ias *が最終的な電流指令値I*としてモータ制御信号生成部62に供給されることが抑制されるため、操舵系に対して意図しないアシスト力が付与されることが抑制される。たとえばいわゆるセルフステアなどの発生も抑制される。
また、アシスト制御量Ias *を演算する際に使用する各信号に基づきアシスト制御量Ias *に対する適切な制限値が個別に設定される。このため、たとえば基本アシスト制御量I1 *を演算する際に使用される信号である操舵トルクτのみに基づいてアシスト制御量Ias *の制限値を設定する場合に比べて、アシスト制御量Ias *に対してより緻密な制限処理が行われる。アシスト制御量Ias *の制限値の設定において、各種の補償量I2 *,I3 *,I4 *に対する影響を考慮する必要もない。
<実施の形態の効果>
したがって、本実施の形態によれば、以下の効果を得ることができる。
(1)アシスト制御量Ias *の制限値はアシスト制御量Ias *の演算に使用される各信号(各状態量)に対して個別に設定されるとともに、これら制限値を合算した値がアシスト制御量Ias *に対する最終的な制限値として設定される。このため、何らかの原因によって異常値を示すアシスト制御量Ias *が演算された場合であれ、当該異常なアシスト制御量Ias *は最終的な制限値によって直接的に各信号値に応じた適切な値に制限される。適切な値に制限されたアシスト制御量Ias *が最終的な電流指令値I*としてモータ制御信号生成部62に供給されることにより意図せぬアシスト力が操舵系に付与されるのを的確に抑制することができる。
(2)マイクロコンピュータ42は各上限値IUL1 *〜IUL5 *を足し算することにより得られる上限値IUL *および各下限値ILL1 *〜ILL5 *を足し算することにより得られる下限値ILL *を使用してアシスト制御量Ias *に対して一括して制限処理を行う。各上限値IUL1 *〜IUL5 *および各下限値ILL1 *〜ILL5 *を使用してアシスト制御量Ias *に対して個別に制限処理を行う構成も考えられるところ、当該構成を採用する場合に比べてマイクロコンピュータ42の演算負荷を低減させることが可能である。
(3)マイクロコンピュータ42は第1〜第5のリミットマップM1〜M5を使用することにより各上限値IUL1 *〜IUL5 *および各下限値ILL1 *〜ILL5 *を簡単に演算することができる。
<第2の実施の形態>
つぎに、電動パワーステアリング装置の第2の実施の形態を説明する。
第1の実施の形態ではアシスト制御量Ias *の異常が続く限り上限値IUL *または下限値ILL *により継続してアシスト制御量Ias *を制限するようにしたが、つぎのようにしてもよい。
図10のグラフに示すように、アシスト制御量Ias *の値がたとえば下限値ILL *を下回るとき(時刻TL0)、アシスト制御量Ias *の値は下限値ILL *で制限される。マイクロコンピュータ42は当該制限される状態が一定期間ΔTだけ継続したとき(時刻TL1)、下限値ILL *を「0」に向けて漸減させる(以下、「漸減処理」という。)。そして下限値ILL *が「0」に至るタイミング(時刻TL2)でアシスト制御量Ias *の値は「0」になる。その結果、操舵系に対するアシスト力の付与が停止される。当該漸減処理は、異常な状態が一定期間ΔTだけ継続したときにはアシスト力の付与を停止することが好ましいという観点に基づき行われる。アシスト制御量Ias *の値は徐々に小さくなるのでアシストを停止させる際、操舵感に急激な変化が発生することはない。なお、アシスト制御量Ias *の値が上限値IUL *を超える場合についても同様である。すなわち、マイクロコンピュータ42はアシスト制御量Ias *の制限状態が一定期間ΔTだけ継続したとき、上限値IUL *を「0」に向けて漸減させる。
当該漸減処理は上限値IUL *および下限値ILL *の演算処理とは無関係に強制的に行われるものである。マイクロコンピュータ42は、当該漸減処理の実行中において、アシスト制御量Ias *の値が上限値IUL *と下限値ILL *との間の正常範囲内の値に復帰したとき、漸減処理の実行を停止するようにしてもよい。これにより、強制的に「0」に向けて漸減させた上限値IUL *または下限値ILL *は本来の値に復帰する。
<実施の形態の効果>
本実施の形態によれば、第1の実施の形態における(1),(3)の効果に加えて、つぎの効果を得ることができる。
(4)アシスト制御量Ias *の値が上限値IUL *または下限値ILL *で制限される状態が一定期間ΔTだけ継続したとき、上限値IUL *または下限値ILL *を「0」に向けて漸減させる。操舵系に対するアシストは徐々に弱まりやがて停止される。これにより、より安全性が高められる。
<第3の実施の形態>
つぎに、電動パワーステアリング装置の第3の実施の形態を説明する。本例では、先の図2に示される上下限リミット演算部72および上下限ガード処理部73を省略した構成が採用される。上下限リミット演算部72および上下限ガード処理部73の機能をいわばアシスト制御部71に持たせている。そして第1の実施の形態では上下限リミット演算部72によりアシスト制御量Ias *の上限値IUL *および下限値ILL *を一括して設定するのに対し、本例では各補償量I2 *,I3 *,I4 *に対して個別に制限値を設定することによりアシスト制御量Ias *を間接的に制限する。
図11に示すように、アシスト制御部71は操舵トルク感応リミッタ201、トルク微分値感応リミッタ202、操舵角感応リミッタ203、操舵速度感応リミッタ204および操舵角加速度感応リミッタ205を有している。また、アシスト制御部71は加算器206,207および上下限ガード処理部208,209,210,211を備えている。
なお、図11では、説明の便宜上、2つの操舵トルク感応リミッタ201,201および2つの操舵速度感応リミッタ204,204を図示しているところ、これら操舵トルク感応リミッタ201および操舵速度感応リミッタ204はそれぞれ一つだけ設けてもよい。この場合、操舵トルク感応リミッタ201および操舵速度感応リミッタ204によりそれぞれ生成される制限値(上限値IUL1 *,IUL1 *および下限値ILL1 *,ILL4 *)は、加算器206,207および上下限ガード処理部211などの必要箇所へそれぞれ分岐して供給される。
操舵トルク感応リミッタ201は、先の図4に示される操舵トルク感応リミッタ91,101の機能が統合されてなる。操舵トルク感応リミッタ201は操舵トルクτに応じてアシスト制御量Ias *に対する上限値IUL1 *および下限値ILL1 *を演算する。
トルク微分値感応リミッタ202は、先の図4に示される操舵トルク微分値感応リミッタ92,102の機能が統合されてなる。トルク微分値感応リミッタ202は操舵トルク微分値dτに応じてアシスト制御量Ias *に対する上限値IUL2 *および下限値ILL2 *を演算する。
操舵角感応リミッタ203は、先の図4に示される操舵角感応リミッタ93,103の機能が統合されてなる。操舵角感応リミッタ203は操舵角θsに応じてアシスト制御量Ias *に対する上限値IUL3 *および下限値ILL3 *を演算する。
操舵速度感応リミッタ204は、先の図4に示される操舵速度感応リミッタ94,104の機能が統合されてなる。操舵速度感応リミッタ204は操舵速度ωsに応じてアシスト制御量Ias *に対する上限値IUL4 *および下限値ILL4 *を演算する。
操舵角加速度感応リミッタ205は、先の図4に示される操舵角加速度感応リミッタ95,105の機能が統合されてなる。操舵角加速度感応リミッタ205は操舵角加速度αsに応じてアシスト制御量Ias *に対する上限値IUL5 *および下限値ILL5 *を演算する。
加算器206は慣性補償制御部84により生成される補償量I2 *に対する制限値を演算する。すなわち、加算器206は3つの上限値IUL3 *,IUL4 *,IUL5 *を足し算することにより補償量I2 *に対する上限値I2UL *を生成する。また、加算器206は3つの下限値ILL3 *,ILL4 *,ILL5 *を足し算することにより補償量I2 *に対する下限値I2LL *を生成する。
加算器207はステアリング戻し制御部85により生成される補償量I3 *に対する制限値を演算する。すなわち、加算器207は2つの上限値IUL1 *,IUL4 *を足し算することにより補償量I3 *に対する上限値I3UL *を生成する。また、加算器207は2つの下限値ILL1 *,ILL4 *を足し算することにより補償量I3 *に対する下限値I3LL *を生成する。
上下限ガード処理部208は、加算器206により演算される上限値I2UL *および下限値I2LL *に基づき慣性補償制御部84により生成される補償量I2 *に対する制限処理を実行する。すなわち、補償量I2 *の値は上限値I2UL *および下限値I2LL *により規定される範囲内に制限される。
上下限ガード処理部209は、加算器207により演算される上限値I3UL *および下限値I3LL *に基づきステアリング戻し制御部85により生成される補償量I3 *に対する制限処理を実行する。すなわち、補償量I3 *の値は上限値I3UL *および下限値I3LL *により規定される範囲内に制限される。
上下限ガード処理部210は、トルク微分値感応リミッタ202により演算される上限値IUL2 *および下限値ILL2 *をそのままトルク微分制御部86により演算される補償量I4 *に対する上限値I4UL *および下限値I4LL *として、当該補償量I4 *に対する制限処理を実行する。すなわち、補償量I4 *の値は上限値I4UL *および下限値I4LL *により規定される範囲内に制限される。
上下限ガード処理部211は、操舵トルク感応リミッタ201により演算される上限値IUL1 *および下限値ILL1 *をそのまま基本アシスト制御部81により演算される基本アシスト制御量I1 *に対する上限値I1UL *および下限値I1LL *として、当該基本アシスト制御量I1 *に対する制限処理を実行する。すなわち、基本アシスト制御量I1 *の値は上限値I1UL *および下限値I1LL *により規定される範囲内に制限される。
基本アシスト制御量I1 *および3つの補償量I2 *,I3 *,I4 *に対してそれぞれ制限処理が施されることにより得られる基本アシスト制御量I1L *および3つの補償量I2L *,I3L *,I4L *はそれぞれ加算器83に供給される。加算器83は、これら基本アシスト制御量I1L *および補償量I2L *,I3L *,I4L *を足し合わせることによりアシスト制御量Ias *を生成する。このアシスト制御量Ias *は最終的な電流指令値I*としてモータ制御信号生成部62に供給される。
<実施の形態の効果>
本実施の形態によれば、第1の実施の形態における(1),(3)の効果に加えて、つぎの効果を得ることができる。
(5)基本アシスト制御部81により演算される基本アシスト制御量I1L *、慣性補償制御部84により生成される補償量I2 *、ステアリング戻し制御部85により生成される補償量I3 *、トルク微分制御部86により生成される補償量I4 *に対してそれぞれ個別に制限処理が施される。このため、アシスト制御量Ias *はその時々の各信号の値、換言すればその時々の操舵状態に応じてより厳密に制限される。
<第4の実施の形態>
つぎに、電動パワーステアリング装置の第4の実施の形態を説明する。本例は、基本的に先の図1〜図9に示される第1の実施の形態と同様の構成を備えている。したがって、第1の実施の形態と同様の部材には同一の符号を付し、その詳細な説明を省略する。
マイクロコンピュータ42における信号経路、たとえば図12に示される各種の制御部(81〜86)に対する電気信号(τ,dτ,θs,ωs,αs)の入力経路および出力経路には、各電気信号の位相を補償したりノイズを除去したりするための構成としてフィルタ回路などの遅れ要素が設けられることがある。制御系を安定させるためである。
図12に示すように、アシスト制御部71は位相補償部300を有している。位相補償部300はトルクセンサ53により検出される操舵トルクτの位相補償を行う。位相補償部300はたとえば遅れ要素であるローパスフィルタを含んでいる。このため、位相補償部300により処理された後の操舵トルクτの位相は、当該処理前の操舵トルクτの位相に対して遅延する。したがって、基本アシスト制御量I1 *の位相、ひいてはアシスト制御量Ias *の位相は、トルクセンサ53により検出される操舵トルクτの位相に対して遅延する。
つぎに、アシスト制御量Ias *と制限値との関係を説明する。ここでは制限値として先の図4に示される操舵トルク感応リミッタ91により演算される上限値IUL1 *を例に挙げる。
図4に示されるように、上下限リミット演算部72に位相補償部300のような遅れ要素が存在しない場合、操舵トルクτに応じて生成される上限値IUL1 *の位相は、検出される操舵トルクτの位相と略一致する。また上述のように、位相補償部300が遅れ要素を含んでいるため、アシスト制御量Ias *の位相は検出される操舵トルクτの位相に対して遅延する。したがって、アシスト制御量Ias *の位相は、上限値IUL1 *に対しても遅延する。
図13のグラフに示されるように、ステアリングの操舵に伴いアシスト制御量Ias *および上限値IUL1 *は増減を繰り返すとともに、アシスト制御量Ias *は上限値IUL1 *に対してたとえば位相φ1だけ遅延する。ここで、上限値IUL1 *よりもアシスト制御量Ias *の値が小さい領域R1ではアシスト制御量Ias *の値が制限されることはない。これに対して、上限値IUL1 *よりもアシスト制御量Ias *の値が大きい領域R2では、たとえば矢印D1で示されるように、アシスト制御量Ias *が誤って上限値IUL1 *に制限される。このように単なる上限値IUL1 *に対するアシスト制御量Ias *の位相遅れに起因して正常なアシスト制御量Ias *の値が誤って制限されるのは好ましくない。
なお、アシスト制御量Ias *と下限値ILL1 *との関係、アシスト制御量Ias *と各上限値IUL2 *〜IUL5 *との関係、およびアシスト制御量Ias *と各下限値ILL2 *〜ILL5 *との関係についてもそれぞれ同様である。各上限値IUL2 *〜IUL5 *および各下限値ILL2 *〜ILL5 *は、操舵トルク微分値dτ、操舵角θs、操舵速度ωsおよび操舵角加速度αsに基づく制限値である。
このように、遅れ要素を有するアシスト制御部71がアシスト制御量Ias *を生成する場合に、遅れ要素を有しない上下限リミット演算部72が制限処理を行うと、アシスト制御量Ias *の値が不適切に制限されるおそれがある。そこで、本例ではつぎの構成を採用している。
図14に示すように、上限値演算部90は5つの判定処理部301〜305を、下限値演算部100は5つの判定処理部311〜315を有している。各判定処理部301〜305,311〜315は各信号(τ,dτ,θs,ωs,αs)の入力経路に設けられている。各判定処理部301〜305,311〜315は、制限値(IUL1 *〜IUL5 *、ILL1 *〜ILL5 *)に対するアシスト制御量Ias *の位相遅れに起因して正常なアシスト制御量Ias *の値が誤って制限されるおそれがあるかどうかを判定する。そして各判定処理部301〜305,311〜315は、アシスト制御量Ias *が誤って制限されるおそれがある旨判定されるとき、各制限値を遅延させる。各判定処理部301〜305,311〜315は、たとえば遅れ要素であるローパスフィルタとしての機能を有している。
各判定処理部301〜305,311〜315は、たとえば次式(A)または次式(B)で表されるフィルタ演算を行う。なお、式(A)は位相補償部300により発生する位相遅れに応じて制限値の位相を遅延させる観点に基づき設定される。式(B)は位相補償部300と異なる他の遅れ要素(フィルタ要素)により発生する位相遅れに応じて制限値の位相を遅延させる観点に基づき設定される。
Sfilt={(1+α・T1・s)/(1+T1・s)}・{1/(1+T2・s)}・S …(A)
Sfilt=1/(1+T3・s)・S ………………………………………………………(B)
ただし、「Sfilt」はフィルタ演算後の信号(τfilt,dτfilt,θsfilt,ωsfilt,αsfilt)、「α」はゲイン、「T1」,「T2」,「T3」は時定数、「s」はラプラス変換の変数、「S」はフィルタ演算前の信号(τ,dτ,θs,ωs,αs)である。
本例では、操舵トルクτを処理する判定処理部301,311では式(A)が使用される。操舵トルクτは位相補償部300により位相遅れが発生するからである。また、操舵トルクτ以外の他の信号(dτ,θs,ωs,αs)を処理する判定処理部302〜305,312〜315では式(B)が使用される。これは、当該他の信号は位相補償部300と異なる他の遅れ要素(フィルタ要素)により位相遅れが発生することを前提としている。当該他の信号が位相補償部300と同様の遅れ要素により遅延するときには式(A)が使用される。
つぎに、各判定処理部301〜305,311〜315を代表して判定処理部301の動作を説明する。
図15のフローチャートに示されるように、判定処理部301は、定められたサンプリング周期でトルクセンサ53により検出される操舵トルクτの今回値と前回値とを比較する(ステップS401)。すなわち、判定処理部301は図13のグラフにおいて制限値(たとえば上限値IUL1 *)が2つの領域R1,R2のどちらに位置するのかを判定する。なお、前回値はマイクロコンピュータ42の記憶装置に一時的に格納される。
判定処理部301は、今回値が前回値よりも大きい旨判断されるとき(ステップS401でYES)、今回値をそのまま出力し(ステップS402)、その後処理を終了する。ここでは操舵トルク感応リミッタ91には、今回の操舵トルクτがそのまま供給される。これはつぎの理由による。すなわち、今回値が前回値よりも大きいとき、制限値は図13のグラフにおける増大傾向を示す領域R1に位置している蓋然性が高い。したがって、アシスト制御量Ias *が誤って制限されるおそれがないため、制限値を遅延させる必要がない。
判定処理部301は、今回値が前回値よりも大きくない、すなわち今回値が前回値以下である旨判断されるとき(ステップS401でNO)、今回値に対してフィルタ演算を行う(ステップS403)。このとき判定処理部301は式(A)を使用する。これはつぎの理由による。すなわち今回値が前回値以下であるとき、制限値は図13のグラフにおける「0」に向けて減少傾向を示す領域R2に位置している蓋然性が高い。したがって、アシスト制御量Ias *が誤って制限されるおそれがあるため、制限値を遅延させる必要がある。
そこで、判定処理部301はフィルタ演算後の今回値を操舵トルク感応リミッタ91に出力し(ステップS404)、その後処理を終了する。すなわち、操舵トルク感応リミッタ91にはフィルタ処理が施された後の操舵トルクτの今回値が供給される。
ここで、図13のグラフに矢印D2で示されるように、式(A)によるフィルタ処理後の操舵トルクτに基づく制限値(IUL1 *)の位相は、アシスト制御量Ias *に対してたとえば位相φ2だけ遅延する。これにより領域R2においては制限値よりもアシスト制御量Ias *の値が小さくなるため、正常なアシスト制御量Ias *の値が誤って制限されることはない。
ちなみに、他の判定処理部302〜305,311〜315も判定処理部301と同様の処理を行う。処理する信号(dτ,θs,ωs,αs)、およびフィルタ演算の際に式(B)が使用されることが異なるだけである。
なお、本例はつぎのように変更して実施してもよい。
・図14に二点鎖線で示されるように、各判定処理部301〜305,311〜315を各感応リミッタ(91〜95,101〜105)に対する各信号(τ,dτ,θs,ωs,αs)の入力経路ではなく、各感応リミッタに対する各制限値(IUL1 *〜IUL5 *,ILL1 *〜ILL5 *)の出力経路に設けてもよい。この場合、各判定処理部301〜305,311〜315は各感応リミッタにより生成される各制限値を遅延させる。
・また、本例では各判定処理部301〜305,311〜315によるフィルタ処理を通じて各信号の位相を遅延させるようにしたが、つぎのようにしてもよい。すなわち、上下限リミット演算部72は各制限値(IUL1 *〜IUL5 *)を生成してから一定の遅延時間だけ各制限値を保持し、当該遅延時間だけ経過した後に各制限値を加算器96,106へ供給する。このようにしても各制限値を遅延させることが可能である。またこの場合、各判定処理部301〜305,311〜315はフィルタ演算を行う必要がなく、遅延の要否を判断するだけでよい。ちなみに、各制限値ではなく各信号(τ,dτ,θs,ωs,αs)を一定の遅延時間だけ保持するようにしてもよい。このようにしても、各制限値を遅延させることが可能である。
・さらに、各制限値を遅延させる度合いは適宜変更してもよい。たとえば前述の例では、各制限値の位相をアシスト制御量Ias *に対して位相φ2だけ遅延させたところ、遅延後の各制限値の位相がアシスト制御量Ias *に対して遅れておらず進んだ状態であってもよい。わずかであれ各制限値の位相を遅延させることにより、各制限値とアシスト制御量Ias *との位相差が少しでも小さくなれば誤制限の抑制効果が得られる。
・本例は第1の実施の形態だけでなく、第2または第3の実施の形態に適用することも可能である。第3の実施の形態に本例を適用する場合、図11に示される各感応リミッタ(201〜205)に対する信号の入力経路または出力経路に、各判定処理部301〜305(各判定処理部311〜315)を設ければよい。
<実施の形態の効果>
本実施の形態によれば、つぎの効果を得ることができる。
(6)マイクロコンピュータ42は、各信号(τ,dτ,θs,ωs,αs)の今回値と前回値との比較を通じて各制限値の位相を遅延させる必要があるかどうかを判定する。アシスト制御部71で生成される各信号に位相遅れが発生し、かつ上下限リミット演算部72で生成される各制限値に位相遅れが発生しない場合において、今回値が前回値よりも小さいとき、正常なアシスト制御量Ias *が誤って制限されるおそれがある。マイクロコンピュータ42は、各制限値の位相を遅延させる必要があるとき、各信号に対して式(A)または式(B)で示されるフィルタ演算を行うことにより各制限値を遅延させる。各制限値の位相が遅延されることにより正常なアシスト制御量Ias *が誤って制限され難くなる。電動パワーステアリング装置10の信頼性も向上する。
<第5の実施の形態>
つぎに、電動パワーステアリング装置の第5の実施の形態を説明する。本例も基本的には先の図1〜図9に示される第1の実施の形態と同様の構成を備えている。本例は第1〜第4の実施の形態のすべてに適用することが可能である。
図16に示すように、上下限リミット演算部72は車速Vも取り込む。また、上下限リミット演算部72、正確には先の図4に示される上限値演算部90および下限値演算部100は、それぞれ第1〜第5のリミットマップM1〜M5に代えて第6〜第10のリミットマップM6〜M10を有している。上限値演算部90および下限値演算部100は、第6〜第10のリミットマップM6〜M10を使用して各上限値IUL1 *〜IUL5 *および各下限値ILL1 *〜ILL5 *を演算する。第6〜第10のリミットマップM6〜M10は、アシスト制御量Ias *に対する制限値(上限値IUL1 *〜IUL5 *および下限値ILL1 *〜ILL5 *)が車速Vに応じて設定される点において第1〜第5のリミットマップM1〜M5と異なる。
図17に示すように、第6のリミットマップM6は、操舵トルクτに応じたアシスト制御量Ias *に対する制限値(上限値IUL1 *および下限値ILL1 *)を車速Vに応じて規定する。操舵トルクτが正の値である場合、上限値IUL1 *は操舵トルクτが増大するほど、また車速Vが遅いほど正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵トルクτが正の値である場合、アシスト制御量Ias *の下限値ILL1 *は「0」に維持される。一方、操舵トルクτが負の値である場合、アシスト制御量Ias *の上限値IUL1 *は「0」に維持される。また、操舵トルクτが負の値である場合、アシスト制御量Ias *の下限値ILL1 *は操舵トルクτの絶対値が増大するほど、また車速Vが遅いほど負の方向へ増加し、所定値を境として負の一定値に維持される。
図18に示すように、第7のリミットマップM7は、操舵トルク微分値dτに応じたアシスト制御量Ias *に対する制限値(上限値IUL2 *および下限値ILL2 *)を車速Vに応じて規定する。操舵トルク微分値dτが正の値である場合、上限値IUL2 *は操舵トルク微分値dτが増大するほど、また車速Vが遅いほど正の方向へ増加し、所定値を境として正の一定値に維持される。また、操舵トルク微分値dτが正の値である場合、アシスト制御量Ias *の下限値ILL2 *は「0」に維持される。一方、操舵トルク微分値dτが負の値である場合、アシスト制御量Ias *の上限値IUL2 *は「0」に維持される。また、操舵トルク微分値dτが負の値である場合、アシスト制御量Ias *の下限値ILL2 *は操舵トルク微分値dτの絶対値が増大するほど、また車速Vが遅いほど負の方向へ増加し、所定値を境として負の一定値に維持される。
図19に示すように、第8のリミットマップM8は、操舵角θsに応じたアシスト制御量Ias *に対する制限値(上限値IUL3 *および下限値ILL3 *)を車速Vに応じて規定する。操舵角θsが正の値である場合、上限値IUL3 *は「0」に維持される。また、操舵角θsが正の値である場合、下限値ILL3 *は操舵角θsが増大するほど、また車速Vが速いほど負の方向へ増加する。一方、操舵角θsが負の値である場合、アシスト制御量Ias *の下限値ILL3 *は「0」に維持される。また、操舵角θsが負の値である場合、アシスト制御量Ias *の上限値IUL3 *は操舵角θsの絶対値が増大するほど、また車速Vが速いほど正の方向へ増加する。
図20に示すように、第9のリミットマップM9は、操舵速度ωsに応じたアシスト制御量Ias *に対する制限値(上限値IUL4 *および下限値ILL4 *)を車速Vに応じて規定する。操舵速度ωsが正の値である場合、上限値IUL4 *は「0」に維持される。また、操舵速度ωsが正の値である場合、下限値ILL4 *は操舵速度ωsが増大するほど、また車速Vが速いほど負の方向へ増加し、所定値を境として負の一定値に維持される。一方、操舵速度ωsが負の値である場合、アシスト制御量Ias *の下限値ILL4 *は「0」に維持される。また、操舵速度ωsが負の値である場合、アシスト制御量Ias *の上限値IUL4 *は操舵速度ωsの絶対値が増大するほど、また車速Vが速いほど正の方向へ増加し、所定値を境として正の一定値に維持される。
図21に示すように、第10のリミットマップM10は、操舵角加速度αsに応じたアシスト制御量Ias *に対する制限値(上限値IUL5 *および下限値ILL5 *)を車速Vに応じて規定する。操舵角加速度αsが正の値である場合、上限値IUL5 *は「0」に維持される。また、操舵角加速度αsが正の値である場合、下限値ILL5 *は操舵角加速度αsが増大するほど、また車速Vが速いほど負の方向へ増加し、所定値を境として負の一定値に維持される。一方、操舵角加速度αsが負の値である場合、アシスト制御量Ias *の下限値ILL5 *は「0」に維持される。また、操舵角加速度αsが負の値である場合、アシスト制御量Ias *の上限値IUL5 *は操舵角加速度αsの絶対値が増大するほど、また車速Vが速いほど正の方向へ増加し、所定値を境として正の一定値に維持される。
このように車速Vを加味した第6〜第10のリミットマップM6〜M10を使用することによりつぎの作用を奏する。
本来、制限すべきアシスト制御量Ias *は車速Vに応じて異なる。この点、先の第1〜第5のリミットマップM1〜M5では車速Vが考慮されていない。第1〜第5のリミットマップM1〜M5では、たとえばすべての車速域において発生し得るアシスト制御量Ias *のうち最も大きなアシスト制御量Ias *を基準に制限値(上限値および下限値)が設定される。このため、異常なアシスト制御量Ias *は必ずしも最適な制限値で制限されるとは限らない。
この点、第6のリミットマップM6によれば、つぎの作用が得られる。すなわち、図中にポイントP1で示すように、操舵トルクτがたとえば正の操舵トルクτ1であって、かつ車速Vが車速V1より速く車速V2よりも遅い場合に、特性線L2により上限値IUL1 *が設定される。特性線L2により設定される上限値IUL1 *は、第1のリミットマップM1上限値に対応する特性線L1により設定される上限値IUL1 *よりも小さい。そしてアシスト制御量Ias *は特性線L2で示される上限値IUL1 *に制限される。下限値ILL1 *についても上限値IUL1 *と同様に車速Vに応じて変化する。このように車速Vを加味することにより操舵トルクτに応じた制限値(上限値IUL1 *および下限値ILL1 *)の精度が向上する。このため、先の第1のリミットマップM1では許容されていた本来制限すべきアシスト制御量Ias *がより早く検出されて制限される。したがって、アシスト制御量Ias *に対する制限処理を操舵トルクτに応じてより適切に行うことができる。
なお、第7〜第10のリミットマップM7〜M10についても同様である。すなわち、操舵トルク微分値dτ、操舵角θs、操舵速度ωsおよび操舵角加速度αsのそれぞれに基づくアシスト制御量Ias *に対する制限処理を車速Vに応じてより適切に行うことができる。
<実施の形態の効果>
本実施の形態によれば、つぎの効果を得ることができる。
(7)アシスト制御量Ias *に対する各制限値(上限値IUL1 *〜IUL5 *、下限値ILL1 *〜ILL5 *)を車速Vに応じて設定することにより、各制限値の精度を向上させることができる。このため、より適切な制限処理を行うことができる。たとえば車速Vが加味されない第1〜第5のリミットマップM1〜M5では許容されていた、本来制限されるべきアシスト制御量Ias *をより早く検出して制限することができる。
<第6の実施の形態>
つぎに、電動パワーステアリング装置の第6の実施の形態を説明する。本例は第1〜第5の実施の形態のすべてに適用することが可能である。
本例では第2の実施の形態と同様に、先の図10に示される漸減処理が実行される。すなわち、マイクロコンピュータ42は、アシスト制御量Ias *の値が上限値IUL *または下限値ILL *で制限される状態が一定期間ΔTだけ継続したとき、上限値IUL *または下限値ILL *を「0」に向けて漸減させる。上限値IUL *または下限値ILL *が「0」に至ったとき(たとえば時刻TL2)、アシスト制御量Ias *の値が「0」になることにより、操舵系に対するアシスト力の付与が停止される。このようにすれば、異常なアシスト制御量Ias *が生成される場合の意図しないステアリング挙動が抑制される。しかし、操舵系にアシスト力が付与されない、いわゆるマニュアルステアの状態になることにより操舵感が低下することが懸念される。そこで、本例ではつぎの構成を採用している。
図22に示すように、マイクロコンピュータ42は、主たるアシスト制御部71の他に副たるアシスト制御部501を有している。副たるアシスト制御部501は、主たるアシスト制御部71と同様に、車速V、操舵トルクτ、操舵角θs、操舵トルク微分値dτ、操舵速度ωsおよび操舵角加速度αsに基づきアシスト制御量Ias *を演算する。
また、マイクロコンピュータ42は切替え部502を有している。切替え部502は、主たるアシスト制御部71により生成されるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)、および副たるアシスト制御部501により生成されるアシスト制御量Ias *をそれぞれ取り込む。切替え部502は、これら2つのアシスト制御量Ias *のいずれかを最終的な電流指令値I*としてモータ制御信号生成部62へ供給する。
通常時、切替え部502は主たるアシスト制御部71により生成されるアシスト制御量Ias *を使用する。ここで通常時とは、上下限ガード処理部73による制限処理が実行されないとき、および当該制限処理が実行されるときであっても当該制限処理が開始されてからの経過時間が一定期間ΔTに達していないときをいう。
異常時、切替え部502は主たるアシスト制御部71により生成されるアシスト制御量Ias *に代えて、副たるアシスト制御部501により生成されるアシスト制御量Ias *を使用する。ここで異常時とは、図10のグラフに示されるように、主たるアシスト制御部71により生成されるアシスト制御量Ias *に対する制限処理が一定期間ΔTだけ継続して行われたときをいう。すなわち、制限値(上限値IUL *または下限値ILL *)を「0」に向けて漸減させる漸減処理が開始されるタイミング(時刻TL1)で、使用されるアシスト制御量Ias *が主たるアシスト制御部71によるものから副たるアシスト制御部501により生成されるものへ切り替えられる。副たるアシスト制御部501による正常なアシスト制御量Ias *を使用することにより、操舵系に対して好適なアシスト力が継続して付与される。
なお、本例はつぎのように変更してもよい。
・マイクロコンピュータ42は、制限値に対する漸減処理(絞り処理)の実行中において、アシスト制御量Ias *の値が上限値IUL *と下限値ILL *との間の正常範囲内の値に復帰したとき、当該漸減処理の実行を停止するようにしてもよい。またこのとき、マイクロコンピュータ42(正確には、切替え部502)は、バックアップ用の副たるアシスト制御部501ではなく、再び主たるアシスト制御部71により生成されるアシスト制御量Ias *を使用するようにしてもよい。
・また、副たるアシスト制御部501は、前述のように主たるアシスト制御部71と同じ機能を有していてもよいし、主たるアシスト制御部71よりも簡素化した機能を持たせてもよい。副たるアシスト制御部501の機能を簡素化する場合、車速Vおよび操舵トルクτに基づき基本アシスト制御量I1 *を求め、当該基本アシスト制御量I1 *を簡易的なバックアップ用のアシスト制御に使用される電流指令値I*としてもよい。補償制御部82で実行される各種の補償制御は実行しなくてもよいし、一部の補償制御のみを実行するようにしてもよい。実行する補償制御によってアシスト制御部501が取り込む信号は異なる。
・さらに、使用するアシスト制御量Ias *を主たるアシスト制御部71によるものから副たるアシスト制御部501によるものへ切り替えるタイミングは適宜変更してもよい。図10のグラフに示されるように、制限値に対する漸減処理が開始されるタイミング(時刻TL1)ではなく、たとえばアシスト制御部71により生成されるアシスト制御量Ias *に対する制限処理が開始されるタイミング(時刻TL0)で、使用するアシスト制御量Ias *を切り替えてもよい。
<実施の形態の効果>
本実施の形態によれば、つぎの効果を得ることができる。
(8)主たるアシスト制御部71により生成されるアシスト制御量Ias *が異常であるとき、バックアップ用の副たるアシスト制御部501により生成されるアシスト制御量Ias *が使用される。このため、主たるアシスト制御部71により生成されるアシスト制御量Ias *が異常であるときであれ、副たるアシスト制御部501により生成されるアシスト制御量Ias *を使用することにより操舵系に対してアシスト力を継続して付与することができる。また、いわゆるマニュアルステアの状態になることが回避されるので、操舵感も好適に維持される。
<第7の実施の形態>
つぎに、電動パワーステアリング装置の第7の実施の形態を説明する。本例は基本的には先の図22に示される第6の実施の形態と同様の構成を有している。
図23に示すように、上下限ガード処理部73は主たるアシスト制御部71により生成されるアシスト制御量Ias *(以下、「主たるアシスト制御量」という。)が制限されているかどうかを示す制限状態信号Sgrdを生成する。上下限ガード処理部73は、主たるアシスト制御量Ias *(制限前または制限後のアシスト制御量)、および制限状態信号Sgrdをそれぞれ切替え部502へ出力する。
切替え部502は異常判定用のカウンタ503を有している。切替え部502は上下限ガード処理部73により生成される制限状態信号Sgrdに基づき主たるアシスト制御量Ias *が制限されているかどうかを判定する。切替え部502は、主たるアシスト制御量Ias *が制限されている旨判定される度にカウンタ503のカウント値を増加させる。切替え部502はカウンタ503のカウント値に基づき主たるアシスト制御量Ias *および副たるアシスト制御部501により生成されるアシスト制御量Ias *(以下、「副たるアシスト制御量」という。)のどちらを使用するのかを決定する。
<上下限ガード処理部の処理手順>
つぎに、上下限ガード処理部73の処理手順を詳細に説明する。
図24のフローチャートに示すように、上下限ガード処理部73は、主たるアシスト制御部71により生成されるアシスト制御量Ias *が上限値IUL *よりも大きいかどうかを判断する(ステップS601)。上下限ガード処理部73は、主たるアシスト制御部71により生成されるアシスト制御量Ias *が上限値IUL *よりも大きい旨判断されるとき(ステップS601でYES)、主たるアシスト制御部71により生成されるアシスト制御量Ias *を上限値IUL *に更新(制限)する。
つぎに、上下限ガード処理部73は制限状態信号Sgrdを生成する(ステップS603)。ここでの制限状態信号Sgrdは、主たるアシスト制御量Ias *が制限されている旨示す信号である。
つぎに、上下限ガード処理部73は、先のステップS602において上限値IUL *に更新(制限)したアシスト制御量Ias *および先のステップS603において生成した制限状態信号Sgrdをそれぞれ切替え部502へ出力して(ステップS604)、処理を終了する。
先のステップS601の判断において、上下限ガード処理部73は、主たるアシスト制御量Ias *が上限値IUL *よりも大きくない旨判断されるとき(ステップS601でNO)、当該アシスト制御量Ias *が下限値ILL *よりも小さいかどうかを判断する(ステップS605)。
上下限ガード処理部73は、主たるアシスト制御量Ias *が下限値ILL *よりも小さい旨判断されるとき(ステップS605でYES)、当該アシスト制御量Ias *を下限値ILL *に更新(制限)し(ステップS606)、ステップS603へ処理を移行する。
先のステップS605の判断において、上下限ガード処理部73は主たるアシスト制御量Ias *が下限値ILL *よりも小さくない旨判断されるとき(ステップS605でNO)、制限状態信号Sgrdを生成して(ステップS607)、処理をステップS604へ移行する。ここでの制限状態信号Sgrdは、主たるアシスト制御量Ias *が制限されていない旨示す信号である。
<切替え部の処理手順>
つぎに、切替え部502の処理手順を詳細に説明する。
図25のフローチャートに示すように、切替え部502は上下限ガード処理部73により生成される制限状態信号Sgrdに基づき主たるアシスト制御量Ias *が制限されているかどうかを判断する(ステップS701)。
切替え部502は当該アシスト制御量Ias *が制限されている旨判断されるとき(ステップS701でYES)、カウンタ503のカウント値Nに一定値Naを加算する(ステップS702)。
つぎに、切替え部502はカウント値Nが異常判定閾値Nth以上であるかどうかを判断する(ステップS703)。当該判断は、先の第6の実施の形態におけるアシスト制御量Ias *の制限状態が一定期間ΔTだけ継続したかどうかの判断に相当する。
切替え部502は、カウント値Nが異常判定閾値Nth以上である旨判断されるとき(ステップS703でYES)、副たるアシスト制御量Ias *を使用して操舵アシストを継続し(ステップS704)、処理を終了する。すなわち、切替え部502は、主たるアシスト制御量Ias *に代えて、副たるアシスト制御量Ias *を最終的な電流指令値I*としてモータ制御信号生成部62へ供給する。
先のステップS703の判断において、切替え部502はカウント値Nが異常判定閾値Nth以上ではない旨判断されるとき(ステップS703でNO)、主たるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)を使用して操舵アシストを継続し(ステップS705)、処理を終了する。
先のステップS701の判断において、切替え部502は主たるアシスト制御量Ias *が制限されていない旨判断されるとき(ステップS701でNO)、カウンタ503のカウント値Nから一定値Nsを減算する(ステップS706)。なお、カウント値Nを減少させる際の一定値Nsはカウント値Nを増加させる際の一定値Naよりも小さい値に設定される。
つぎに、切替え部502は主たるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)を使用して操舵アシストを継続し(ステップS707)、処理を終了する。
なお、図25のフローチャートにおけるステップS706,S707の両処理を省略した構成を採用してもよい。この場合、切替え部502は主たるアシスト制御量Ias *が制限されていない旨判断されるとき(ステップS701でNO)、処理を終了する。
<実施の形態の効果>
本実施の形態によれば、以下の効果を得ることができる。
(9)主たるアシスト制御量Ias *が制限される異常な状態が一定時間以上継続するとき、定められたフェイルセーフ動作として、使用されるアシスト制御量が主たるアシスト制御量から副たるアシスト制御量へ切り替えられる。このため、より高い安全性が得られる。
(10)主たるアシスト制御量Ias *が制限されているときにはカウント値Nを一定値Naずつ増加させる一方、当該アシスト制御量Ias *が制限されていないときにはカウント値Nを一定値Ns(<Na)ずつ減少させる。すなわち、主たるアシスト制御量Ias *が制限された状態に対して、より大きな重みが付けられている。このため、より高い安全性が得られる。
<第8の実施の形態>
つぎに、電動パワーステアリング装置の第8の実施の形態を説明する。本例は基本的には先の図23に示される第7の実施の形態と同様の構成を有している。
第7の実施の形態では、単純にカウンタ503のカウント値(積算時間)に基づき主たるアシスト制御量Ias *の異常が判定される。当該異常としてカウント値Nが異常判定閾値Nth以上に達したとき、副たるアシスト制御量Ias *を使用して操舵のアシストが継続される。このとき、つぎのような懸念がある。
すなわち、主たるアシスト制御量Ias *が制限されてからカウント値Nが異常判定閾値Nth以上に達するまでの間(異常判定期間)、通常時に比べて操舵感が低下するおそれがある。これは、本来の適切な主たるアシスト制御量Ias *ではなく上限または下限が制限されたアシスト制御量Ias *が使用されるからである。
そこで、本例ではつぎの構成を採用している。
図26に示すように、上下限ガード処理部73は、制限状態信号Sgrdを生成するだけでなく、制限前の主たるアシスト制御量Ias *と制限値(上限値IUL *および下限値ILL *)との偏差ΔIを演算する。偏差ΔIは次式(C)で表される。
ΔI=Ias *−制限値(IUL *またはILL *) …(C)
上下限ガード処理部73は、主たるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)、制限状態信号Sgrd、および偏差ΔIをそれぞれ切替え部502へ出力する。
切替え部502は、偏差ΔIの絶対値に基づきカウンタ503の増加量を変更する。切替え部502は図27に示される増加量設定マップM11を使用してカウンタ503の増加量を演算する。増加量設定マップM11はマイクロコンピュータ42の図示しない記憶装置に格納されている。増加量設定マップM11は主たるアシスト制御量Ias *から副たるアシスト制御量Ias *への切り替えを偏差ΔIの絶対値に応じて適切に行う観点に基づき設定される。すなわち、偏差ΔIの絶対値が大きいほど主たるアシスト制御量Ias *の異常の度合い(誤出力エネルギ)が大きいため、使用するアシスト制御量をより迅速に切り替えることが好ましい。
図27に示すように、増加量設定マップM11は横軸を偏差ΔIの絶対値、縦軸をカウンタ503の増加量Nuとするマップである。本例では、偏差ΔIの絶対値と増加量Nuとは比例関係にある。すなわち、偏差ΔIの絶対値が大きくなるほど増加量Nuの値も大きくなる。
<上下限ガード処理部の処理手順>
つぎに、上下限ガード処理部73の処理手順を詳細に説明する。
図28のフローチャートに示すように、上下限ガード処理部73は、主たるアシスト制御量Ias *が上限値IUL *よりも大きいかどうかを判断する(ステップS801)。上下限ガード処理部73は、主たるアシスト制御量Ias *が上限値IUL *よりも大きい旨判断されるとき(ステップS801でYES)、式(C)に基づき偏差ΔIを演算する(ステップS802)。ここでの制限値は上限値IUL *であるので、主たるアシスト制御量Ias *の値から上限値IUL *が減算される。
つぎに、上下限ガード処理部73は、主たるアシスト制御量Ias *を上限値IUL *に更新(制限)する。
つぎに、上下限ガード処理部73は制限状態信号Sgrdを生成する(ステップS804)。ここでの制限状態信号Sgrdは、主たるアシスト制御量Ias *が制限されている旨示す信号である。
そして、上下限ガード処理部73は、先のステップS802において生成した偏差ΔI、先のステップS803において上限値IUL *に更新(制限)した主たるアシスト制御量Ias *および先のステップS804において生成した制限状態信号Sgrdをそれぞれ切替え部502へ出力して(ステップS805)、処理を終了する。
先のステップS801の判断において、上下限ガード処理部73は、主たるアシスト制御量Ias *が上限値IUL *よりも大きくない旨判断されるとき(ステップS801でNO)、当該アシスト制御量Ias *が下限値ILL *よりも小さいかどうかを判断する(ステップS806)。
上下限ガード処理部73は、主たるアシスト制御量Ias *が下限値ILL *よりも小さい旨判断されるとき(ステップS806でYES)、式(C)に基づき偏差ΔIを演算する(ステップS807)。ここでの制限値は下限値ILL *であるので、主たるアシスト制御量Ias *の値から下限値ILL *が減算される。
つぎに、上下限ガード処理部73は、主たるアシスト制御量Ias *を下限値ILL *に更新(制限)し、ステップS804へ処理を移行する。
先のステップS806の判断において、上下限ガード処理部73は主たるアシスト制御量Ias *が下限値ILL *よりも小さくない旨判断されるとき(ステップS806でNO)、制限状態信号Sgrdを生成して(ステップS809)、処理をステップS805へ移行する。ここでの制限状態信号Sgrdは、主たるアシスト制御量Ias *が制限されていない旨示す信号である。
<切替え部の処理手順>
つぎに、切替え部502の処理手順を詳細に説明する。
図29のフローチャートに示すように、切替え部502は上下限ガード処理部73により生成される制限状態信号Sgrdに基づき主たるアシスト制御量Ias *が制限されているかどうかを判断する(ステップS901)。
切替え部502は当該アシスト制御量Ias *が制限されている旨判断されるとき(ステップS901でYES)、増加量設定マップM11を使用して偏差ΔIの絶対値に応じたカウンタ503の増加量Nuを算出する(ステップS902)。当該算出される増加量Nuは偏差ΔIの絶対値が大きいほど大きな値が算出される。
つぎに、切替え部502は先のステップS902において算出した増加量Nuをカウンタ503のカウント値Nに加算する(ステップS903)。
つぎに、切替え部502はカウント値Nが異常判定閾値Nth以上であるかどうかを判断する(ステップS904)。
切替え部502は、カウント値Nが異常判定閾値Nth以上である旨判断されるとき(ステップS904でYES)、副たるアシスト制御量Ias *を使用して操舵アシストを継続し(ステップS905)、処理を終了する。すなわち、切替え部502は、主たるアシスト制御量Ias *に代えて、副たるアシスト制御量Ias *を最終的な電流指令値I*としてモータ制御信号生成部62へ供給する。
先のステップS904の判断において、切替え部502はカウント値Nが異常判定閾値Nth以上ではない旨判断されるとき(ステップS904でNO)、主たるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)を使用して操舵のアシストを継続し(ステップS906)、処理を終了する。
先のステップS901の判断において、切替え部502は主たるアシスト制御量Ias *が制限されていない旨判断されるとき(ステップS901でNO)、カウンタ503のカウント値Nから一定値Nsを減算する(ステップS907)。
つぎに、切替え部502は主たるアシスト制御量Ias *(正確には上下限ガード処理部73を経た後のアシスト制御量Ias *)を使用して操舵アシストを継続し(ステップS908)、処理を終了する。
このように、偏差ΔIの絶対値が大きいほどカウント値Nの増加が早められる。すなわち、カウント値Nの増加が早められる分、主たるアシスト制御量Ias *の異常が迅速に検出される。このため、定められたフェイルセーフ動作、ここでは主たるアシスト制御量Ias *から副たるアシスト制御量Ias *への切り替えが実行されるタイミングも早くなる。したがって、運転者の操舵挙動に対する影響、たとえばセルフステアあるいは逆アシストなどの発生を低減することが可能となる。
なお、図29のフローチャートにおけるステップS907,S908の両処理を省略した構成を採用してもよい。この場合、切替え部502は主たるアシスト制御量Ias *が制限されていない旨判断されるとき(ステップS901でNO)、処理を終了する。
<実施の形態の効果>
本実施の形態によれば、以下の効果を得ることができる。
(11)偏差ΔIの絶対値が大きいほどカウンタ503の増加量Nuが増加される。このため、偏差ΔIの絶対値が大きいほど、定められたフェイルセーフ動作(ここでは、使用するアシスト制御量の切り替え動作)の実行タイミングは早くなる。したがって、異常検出中(アシスト制御量の制限処理が開始されてから「N≧Nth」が成立するまでの間)における運転者の操舵挙動に対する影響、たとえばセルフステアあるいは逆アシストなどの発生を低減することが可能となる。安全性もいっそう高められる。
(12)逆に、偏差ΔIの絶対値が小さいほどカウンタ503の増加量Nuが減少される。このため、偏差ΔIの絶対値が小さいほど、定められたフェイルセーフ動作の実行タイミングは遅くなる。偏差ΔIの絶対値が小さいほど異常の度合いが小さいのでより慎重に異常検出する余地があることに鑑み、誤って異常検出することを抑制する趣旨である。
(13)異常の度合い(偏差ΔIの絶対値)が大きいときにはより迅速に、異常の度合いが小さいときにはより慎重に、適切なタイミングでフェイルセーフ動作を実行することができる。
<第9の実施の形態>
つぎに、電動パワーステアリング装置の第9の実施の形態を説明する。本例は基本的には先の図22に示される第6の実施の形態と同様の構成を有している。
第6の実施の形態では、アシスト制御部71に対する入力と出力との関係に基づきアシスト制御量Ias *の異常判定を行っている。このため、アシスト制御部71が有する各種の制御部のどの部位に異常が発生しているのか判らない。また、異常事象(主たるアシスト制御量Ias *の異常状態が一定期間だけ継続すること)を検出するロジックであるため、異常時における操舵挙動の改善が必要となることも懸念される。
そこで本例では、EPSによるアシスト制御は基本制御に係る基本アシスト制御量と補償制御に係る補償量との積算であることに鑑み、アシスト制御部71が有する各種の制御部(演算機能部分)毎に入力と出力との関係を判断する機能を追加している。そしてアシスト制御部71の失陥部位に応じた操舵アシストを実行する。具体的にはつぎの通りである。
図30に示すように、電流指令値演算部61は、主たるアシスト制御部71、上下限リミット演算部(最終)72、上下限ガード処理部73、副たるアシスト制御部501および切替え部502に加えて、フェイルマネージャ504を有している。
アシスト制御部71は、基本アシスト制御部81、補償制御部82および加算器83に加えて、基本リミット演算部720、基本ガード処理部730および加算機能チェック部505を有している。
基本リミット演算部720は先の上下限リミット演算部72と同様の機能を有している。すなわち、基本リミット演算部720は、基本アシスト制御部81において使用される各種の信号(τ,V)に基づき基本アシスト制御量I1 *に対する制限値として上限値I1UL *および下限値I1LL *を演算する。
基本ガード処理部730は先の上下限ガード処理部73と同様の機能を有している。すなわち、基本ガード処理部730は、基本リミット演算部720により演算される制限値に基づき基本アシスト制御量I1 *の制限処理を実行する。具体的には、基本ガード処理部730は基本アシスト制御量I1 *の値と制限値(上限値および下限値)を比較する。基本ガード処理部730は、基本アシスト制御量I1 *の値が上限値を超える場合には基本アシスト制御量I1 *の値を上限値に制限し、下限値を下回る場合には基本アシスト制御量I1 *の値を下限値に制限する。また、基本ガード処理部730は基本アシスト制御量I1 *が制限されているかどうかを示す制限状態信号Sgrdを生成する。
補償制御部82は第1〜第nの補償制御部821〜82n、第1〜第nのリミット演算部721〜72nおよび第1〜第nのガード処理部731〜73nを有している。ただし符号の添え字に含まれる「n」は自然数であって、設定される補償制御部の数に対応する。補償制御部82による補償制御の内容は製品仕様などに応じて適宜設定される。第1〜第nのリミット演算部721〜72nは先の上下限リミット演算部72と、第1〜第nのガード処理部731〜73nは先の上下限ガード処理部73とそれぞれ同様の機能を有している。
第1〜第nのリミット演算部721〜72nは、それぞれ第1〜第nの補償制御部821〜82nにおいて使用される各種の信号に基づき、第1〜第nの補償制御部821〜82nにより生成される第1〜第nの補償量I11〜Innに対する制限値として上限値I11UL〜InnULおよび下限値I11LL〜InnLLをそれぞれ演算する。
第1〜第nのガード処理部731〜73nは、第1〜第nのリミット演算部721〜72nによってそれぞれ演算される制限値に基づき、第1〜第nの補償量I11〜Innの制限処理を実行する。また、第1〜第nのガード処理部731〜73nは第1〜第nの補償量I11〜Innが制限されているかどうかを示す制限状態信号Sgrdをそれぞれ生成する。
加算器83は基本アシスト制御量I1 *に対する補正処理として第1〜第nの補償量I11〜Innを加算することにより主たるアシスト制御量Ias *を生成する。
加算機能チェック部505は、加算器83と同様の計算を実行するとともに、自身の計算結果と加算器83の計算結果との比較を通じて加算器83の異常を判定する。また、加算機能チェック部505は加算器83が正常か異常かを示すチェック結果信号Srを生成する。なお、チェック結果信号Srには加算機能チェック部505による計算結果が含まれる。
上下限ガード処理部73は、上下限リミット演算部72によって演算される制限値(上限値IUL *および下限値ILL *)に基づき、主たるアシスト制御量Ias *の制限処理を実行する。また、上下限ガード処理部73は主たるアシスト制御量Ias *が制限されているかどうかを示す制限状態信号Sgrdを生成する。
フェイルマネージャ504は、基本ガード処理部730、第1〜第nのガード処理部731〜73nおよび上下限ガード処理部73によりそれぞれ生成される制限状態信号Sgrdを取り込む。また、フェイルマネージャ504は加算機能チェック部505により生成されるチェック結果信号Srを取り込む。チェック結果信号Srには加算機能チェック部505の演算結果も含まれる。フェイルマネージャ504は、各制限状態信号Sgrdおよびチェック結果信号Srに基づき、主たるアシスト制御量Ias *および副たるアシスト制御量Ias *のどちらを使用すべきかを判定し、当該判定の結果に応じて使用するアシスト制御量Ias *(主または副)を指示する指令信号Spを生成する。また、フェイルマネージャ504は、加算機能チェック部505により生成されるチェック結果信号Srに基づき、加算器83の機能が正常でない旨判断されるとき、加算機能チェック部505の演算結果を使用する旨の指令信号Spを生成する。
切替え部502はフェイルマネージャ504により生成される指令信号Sp(要求)に基づき、正たるアシスト制御量Ias *、副たるアシスト制御量Ias *または加算機能チェック部505の演算結果を最終的な電流指令値I*としてモータ制御信号生成部62へ供給する。
<フェイルマネージャの処理手順>
つぎに、フェイルマネージャの処理手順を詳細に説明する。
図31のフローチャートに示すように、フェイルマネージャ504は加算機能チェック部505により生成されるチェック結果信号Srに基づき加算器83の加算機能が正常かどうかを判断する(ステップS1001)。
フェイルマネージャ504は、加算器83の機能が正常である旨判断されるとき(ステップS1001でYES)、上下限ガード処理部73により生成される制限状態信号Sgrdに基づき、主たるアシスト制御量Ias *(アシスト制御部71の最終出力)が上下限リミット演算部72により制限されているかどうかを判断する(ステップS1002)。
フェイルマネージャ504は、主たるアシスト制御量Ias *が上下限リミット演算部72により制限されている旨判断されるとき(ステップS1002でYES)、各処理部(730,731〜73n)により生成される制限状態信号Sgrdに基づき、各制御部の出力(I1 *,I11〜Inn)が制限されているかどうかを判断する(ステップS1003)。
フェイルマネージャ504は、各制御部の出力(I1 *,I11〜Inn)が制限されていない旨判断される場合(ステップS1003でNO)、副たるアシスト制御量を使用する旨の指令信号Spを生成し(ステップS1004)、処理を終了する。
フェイルマネージャ504は、先のステップS1002において、主たるアシスト制御量Ias *が上下限リミット演算部72により制限されていない旨判断されるときにも(ステップS1002でNO)、各制御部の出力(I1 *,I11〜Inn)が制限されているかどうかを判断する(ステップS1005)。
フェイルマネージャ504は、先のステップS1003またはステップS1005において、各制御部の出力(I1 *,I11〜Inn)が制限されている旨判断される場合(ステップS1003でYESまたはステップS1005でYES)、ステップS1006へ処理を移行する。
ステップS1006において、フェイルマネージャ504は、主たるアシスト制御量Ias *を使用して操舵のアシストを継続してもよいかどうかを判断する。
フェイルマネージャ504は、失陥部位に応じて主たるアシスト制御量Ias *を使用した操舵のアシストを継続すべきでない旨判断されるとき(ステップS1006でNO)、ステップS1004に処理を移行する。
フェイルマネージャ504は、主たるアシスト制御量Ias *を使用して操舵のアシストを継続してもよい旨判断されるとき(ステップS1006でYES)、主たるアシスト制御量Ias *を使用する旨の指令信号Spを生成し(ステップS1007)、処理を終了する。
先のステップS1005において、フェイルマネージャ504は、各制御部の出力(I1 *,I11〜Inn)が制限されていない旨判断される場合(ステップS1005でNO)、処理を終了する。
先のステップS1001において、フェイルマネージャ504は加算機能チェック部505により生成されるチェック結果信号Srに基づき加算器83の機能が正常でない旨判断されるとき(ステップS1001でNO)、ステップS1008へ処理を移行する。
ステップS1008において、フェイルマネージャ504は、加算機能チェック部505の演算結果を使用する旨の指令信号Spを生成し(ステップS1008)、処理を終了する。本実施の形態の指令信号Spには加算機能チェック部505の演算結果が含まれる。
以上のように、主たるアシスト制御部71の最終出力(主たるアシスト制御量)が制限されているにもかかわらず各制御部の出力(I1 *,I11〜Inn)が制限されていないときには、フェイルセーフ動作として副たるアシスト制御量Ias *を使用して操舵アシストが継続される。アシスト制御部71のどの部分に失陥があるのか不明であるものの、主たるアシスト制御部71の最終的な出力であるアシスト制御量Ias *が制限されている以上、副たるアシスト制御量Ias *を使用して操舵アシストを継続することが好ましいからである。
また、アシスト制御部71の最終出力が制限されている場合であって失陥部位が判るとき(ステップS1003でYES)、失陥部位に応じて主たるアシスト制御量Ias *または副たるアシスト制御量Ias *が使用される。
ここで、アシスト制御部71の各演算機能部分の演算結果ごとにアシスト制御量Ias *に寄与する度合いが異なる。また、その時々の操舵状態によっても各演算機能部分による演算結果がアシスト制御量Ias *に寄与する度合いは変わる。このため、アシスト制御量Ias *に寄与する度合いが小さい演算機能部分(たとえば第1〜第nの補償制御部821〜82n)の演算結果が制限されているときには運転者の操舵挙動に対する影響も少ないので、そのまま主たるアシスト制御量Ias *に基づくアシスト力の付与を継続してもよい。逆に、主たるアシスト制御量Ias *に寄与する度合いが大きい演算機能部分(たとえば基本アシスト制御部81)の演算結果が制限されているときには、定められたフェイルセーフ動作として副たるアシスト制御量Ias *を使用することが好ましい。
なお、本例はつぎのように変更してもよい。
・アシスト制御部71の最終出力は制限されていないものの各制御部の出力(I1 *,I11〜Inn)が制限されているとき(ステップS1005でYES)、そのまま主たるアシスト制御量Ias *を使用してアシストを継続してもよい。各制御部の出力のうち少なくとも一が制限される場合であれ、アシスト制御部71の最終出力が正常範囲であれば運転者の操舵挙動に対する影響も少ないと考えられるからである。
・加算機能チェック部505を省略してもよい。この場合、先の図31のフローチャートにおけるステップS1001およびステップS1008の処理も省略する。
・フェイルマネージャ504は省略してもよい。この場合であれ、アシスト制御部71の各演算機能部分による演算結果に対して個別に制限処理が施される。主たるアシスト制御量Ias *の演算には制限値により制限された演算結果(I1 *,I11〜Inn)が使用されるため、異常なアシスト制御量Ias *が演算されること、ひいては意図しないアシスト力が付与されることが抑制される。なおこの場合、切替え部502はフェイルマネージャ504からの要求に基づくフェイルセーフ動作(使用するアシスト制御量の切り替え)を実行できなくなるものの、つぎのようにして対応すればよい。すなわち、図30に二点鎖線で示されるように、先の第7または第8の実施の形態と同様に、切替え部502にカウンタ503を設け、当該カウンタ503のカウント値に基づきフェイルセーフ動作を実行する。
・副たるアシスト制御部501を省略してもよい。この場合、主たるアシスト制御量Ias *から副たるアシスト制御量Ias *へ切り替えることに代えて、フェイルセーフ動作(図31のステップS1004)として主たるアシスト制御量Ias *に対して先の図10に示される漸減処理を実行してもよい。
・アシスト制御部71の各種の制御部だけでなく、マイクロコンピュータ42に設けられる各種の信号演算部に対する入力と出力との関係に基づき各信号演算部による演算結果の異常判定を行うようにしてもよい。
図32に示すように、たとえば各種の制御部に対する信号経路には信号演算部506が設けられている。この信号演算部506に対して信号リミット演算部72n+1および信号ガード処理部73n+1がそれぞれ設けられている。信号リミット演算部72n+1は、信号演算部506において使用される各種の信号に基づき信号演算部506の演算結果に対する制限値(上限値、下限値)を演算する。信号ガード処理部73n+1は、信号リミット演算部72n+1により演算される制限値に基づき信号演算部506による演算結果の制限処理を実行する。また、信号ガード処理部73n+1は信号演算部506の演算結果が制限されているかどうかを示す制限状態信号Sgrdを生成する。このようにすれば、アシスト制御部71のみならずマイクロコンピュータ42の各演算機能部分に対する異常検出をより細分化することが可能である。
<実施の形態の効果>
本実施の形態によれば、以下の効果を得ることができる。
(14)アシスト制御部71に対する入力と出力との関係に基づきアシスト制御量Ias *の異常判定を行う機能に加えて、アシスト制御部71が有する各種の制御部(81、821〜82n)毎に入力と出力との関係を判断する機能部分(720〜72n,730〜73n)を設けた。このため、アシスト制御部71の失陥部位(出力が制限された制御部)に応じた操舵アシストを実行することが可能となる。また、アシスト制御部71に対する異常検出を細分化することにより、異常検出の精度が高められるとともに失陥部位を迅速に特定することが可能である。さらに、アシスト制御部71の各種制御部の出力を個別に制限することにより、異常時における運転者の操舵挙動に対する影響をより緩和することが可能である。
(15)加算機能チェック部505を設ける場合、つぎのような利点がある。すなわち、加算器83の加算機能が異常である場合、加算機能チェック部505の演算結果を使用して操舵アシストを継続することが可能である。加算機能チェック部505は加算器83と同様の演算を行うため、加算機能チェック部505の演算結果を使用して操舵アシストを好適に行うことができる。アシスト制御部71の各制御部には異常が無くても加算器83に失陥が発生することも考えられるところ、このような状況に特に有効である。
<第10の実施の形態>
つぎに、電動パワーステアリング装置の第10の実施の形態を説明する。本例は、基本的には先の図1〜図9に示される第1の実施の形態と同様の構成を備えている。また、本例は第1〜第9の実施の形態のすべてに適用することが可能である。
ステアリングセンサ52として、ステアリングホイール21の相対的な角度変化量を検出する相対角センサが採用される場合がある。この場合、ECU40はステアリングホイール21が車両直進時の中立位置に位置しているときの操舵角(舵角中点)を基準点として、基準点からの角度変化量に基づきステアリングホイール21の操舵角θsを算出する。このため、ECU40は舵角中点を学習する必要がある。
図33に示すように、マイクロコンピュータ42は舵角中点学習部2001および補正部2002を有している。
舵角中点学習部2001は舵角中点θ0を学習する。舵角中点学習部2001は、まずステアリングセンサ52を通じて検出される補正前の操舵角θsおよび車両に設けられる図示しないヨーレートセンサを通じて検出されるヨーレートYRをそれぞれ取り込み、これら取り込まれる操舵角θsおよびヨーレートYRに基づき車両が直進状態であるかどうかを判定する。舵角中点学習部2001は、ヨーレートの絶対値(ヨーレートは車両の旋回方向によって正負いずれかの値となる。)が基準値未満である場合、車両が直進走行状態である旨判定する。舵角中点学習部2001は、車両が直進状態である旨判定されるとき、図示しない記憶装置に記憶される学習アルゴリズムに従って舵角中点θ0を演算し、当該舵角中点θ0を最新の学習値として記憶装置に格納する(更新)。また、舵角中点学習部2001は舵角中点の学習が完了したとき、その旨を示す学習完了信号Sfinを生成する。ちなみに、車両が直進状態でない旨判定されるとき、舵角中点θ0は学習されることなく従前の値に維持される。
補正部2002は、学習した舵角中点θ0を基準点とする角度変化量に基づき、ステアリングセンサ52を通じて検出される操舵角θsを補正する。補正部2002は、たとえば検出される操舵角θsから舵角中点θ0を減算することにより、運転者の操舵意思に基づく正味の操舵量として補正後の操舵角θsを算出する。
アシスト制御部71は、舵角中点θ0の学習が完了するのを待って、慣性補償制御およびステアリング戻し制御などの操舵角θsを使用する各種の制御を実行することが好ましい。このためアシスト制御部71は、舵角中点θ0の学習が完了しない間においては、たとえばモータ31の慣性を補償するための補償量I2 *およびステアリングホイール21の戻り特性を補償するための補償量I3 *を加味することなくアシスト制御量Ias *を生成してもよい。
この点、上下限リミット演算部72においても同様である。仮に上下限リミット演算部72が、舵角中点θ0の学習が完了していない場合に取得される補正前の操舵角θsをそのまま使用するとき、実際の操舵角θsに応じた適切な上限値IUL *および下限値ILL *が設定されないおそれがある。たとえば操舵角θsが正確な値でない分、余計なガードの広がり、すなわち上限値IUL *と下限値ILL *との差分が正常時よりも大きな値になることが懸念される。この場合、異常なアシスト制御量Ias *が好適なタイミングで制限されないおそれがある。
このため、本例ではつぎの構成を採用している。
図34に示すように、たとえば上限値演算部90(図4参照)の操舵角感応リミッタ93は、先の図7に示される第3のリミットマップM3に加え、カウンタ2003、ゲインマップ2004および乗算器2005を有している。ちなみに、第3のリミットマップM3は、操舵角θsとアシスト制御量Ias *に対する上限値IUL3 *との関係、および操舵角θsとアシスト制御量Ias *に対する下限値ILL3 *との関係をそれぞれ規定する。
カウンタ2003は、舵角中点学習部2001により生成される学習完了信号Sfinを所定のサンプリング周期で取り込む。カウンタ2003は、学習完了信号Sfinを取り込む度に自身のカウント値Nfinをたとえば1ずつ増加させる。
ゲインマップ2004は、横軸をカウント値Nfin、縦軸を上限値IUL3 *に対するゲインGgrdとするマップであって、カウント値NfinとゲインGgrdとの関係を規定する。ゲインマップ2004は、カウンタ2003のカウント値Nfinを取り込み、カウント値Nfinに応じたゲインGgrdを算出する。ゲインGgrdは「0」以上「1」以下の値となる。ゲインマップ2004は、つぎのような特性を有する。すなわち、カウント値が「0(零)」から設定値Nthに達するまでの間、カウント値Nfinの増大に伴いゲインGgrdは増加する。カウント値Nfinが設定値Nthを超えた以降、ゲインGgrdは「1」に維持される。
乗算器2005は、ゲインマップ2004により算出されるゲインGgrdと、第3のリミットマップM3により算出される上限値IUL3 *とを乗算(掛け算)することにより、最終的な上限値IUL3 *を生成する。たとえばゲインGgrdの値が「0」であるとき、操舵角θsに対する最終的な上限値IUL3 *も「0」となる。ゲインGgrdの値が「0.5」であるとき、操舵角θsに基づく最終的な上限値IUL3 *は第3のリミットマップM3により算出される上限値IUL3 *の半分の値となる。ゲインGgrdの値が「1」であるとき、第3のリミットマップM3により算出される上限値IUL3 *がそのまま操舵角θsに基づく最終的な上限値IUL3 *となる。
したがって、舵角中点θ0の学習が完了していないとき、学習完了信号Sfinが生成されないので、カウンタ2003のカウント値Nfinは「0」となる。ゲインGgrdの値が「0」であるため、操舵角θsに基づく最終的な上限値IUL3 *は「0」になる。すなわち、アシスト制御量Ias *に対する最終的な上限値IUL *は、操舵角θsに基づく上限値IUL3 *が加味されずに生成される。舵角中点θ0の学習が完了した以降、カウント値Nfinの増加に伴いゲインGgrdの値は「0」から「1」まで徐々に大きくなる。操舵角θsに基づく上限値IUL3 *はゲインGgrdに応じた値となる。
下限値演算部100(図4参照)の操舵角感応リミッタ103も操舵角感応リミッタ93と同様の構成である。すなわち、舵角中点θ0の学習が完了していないとき、操舵角θsに基づく最終的な下限値ILL3 *は「0」になる。舵角中点θ0の学習が完了した以降、操舵角θsに基づく下限値ILL3 *はゲインGgrdに応じた値となる。
なお、操舵角θsに基づく状態量として操舵速度ωsおよび操舵角加速度αsがある。このため、操舵速度感応リミッタ94,104、および操舵角加速度感応リミッタ95,105についても、図34に示される操舵角感応リミッタ93,103と同様の構成(2003,2004,2005)を採用してもよい。この場合、舵角中点θ0の学習が完了していないとき、操舵速度ωsに基づく最終的な上限値IUL4 *および下限値ILL4 *、並びに操舵角加速度αsに基づく最終的な上限値IUL5 *および下限値ILL5 *は、それぞれ「0」になる。舵角中点θ0の学習が完了した以降、操舵速度ωsに基づく最終的な上限値IUL4 *および下限値ILL4 *、並びに操舵角加速度αsに基づく最終的な上限値IUL5 *および下限値ILL5 *は、それぞれゲインGgrdに応じた値となる。
ちなみに、アシスト制御部71における慣性補償制御部84およびステアリング戻し制御部85にも、図34に示される操舵角感応リミッタ93,103と同様の構成を適用してもよい。慣性補償制御部84は操舵角θsに基づき算出される操舵角加速度αsを、ステアリング戻し制御部85は操舵角θsの他に操舵速度ωsを、使用するからである。この場合、舵角中点θ0の学習が完了していないとき、モータ31の慣性を補償するための補償量I2 *およびステアリングホイール21の戻り特性を補償するための補償量I3 *は、それぞれ「0」になる。舵角中点θ0の学習が完了した以降、補償量I2 *および補償量I3 *は、それぞれゲインGgrdに応じた値となる。なお、アシスト制御部71におけるゲインGgrdの漸増速度は、上下限リミット演算部72におけるゲインGgrdの漸増速度と同じに設定することが好ましい。
<実施の形態の効果>
したがって、本実施の形態によれば、以下の効果を得ることができる。
(16)舵角中点θ0の学習が完了していない間、操舵角θsに基づく制限値(たとえば上限値IUL3 *および下限値ILL3 *)が「0」に設定される。すなわち、正確な操舵角θsが得られない場合、あえて操舵角θsに基づく制限値を、上下限リミット演算部72による最終的な制限値の演算に加味しない。これにより、不正確な操舵角θsに基づく制限値が、上下限リミット演算部72によるトータルとしての制限値(上限値IUL *および下限値ILL *)に及ぼす影響を低減することが可能となる。したがって、舵角中点θ0の学習が完了する前であれ、異常なアシスト制御量Ias *を、より好適なタイミングで制限することが可能となる。
なお、アシスト制御部71において、舵角中点θ0の学習が完了するのを待って、慣性補償制御およびステアリング戻し制御などの操舵角θsを使用する制御を実行する構成が採用される場合、本例の構成は特に好適である。アシスト制御部71において操舵角θsを使用する制御が実行されないのであれば、操舵角θsに基づく制限値を加味して最終的な上限値IUL *および下限値ILL *を設定する必要もない。
(17)舵角中点θ0の学習が完了した後、ゲインGgrdの値はカウント値Nfinに応じて漸増される。このため、操舵角θsに基づく制限値の急変、ひいては上下限リミット演算部72により生成される最終的な制限値(上限値IUL *および下限値ILL *)の急変が抑制される。
(18)アシスト制御部71において、操舵角θsに基づく補償制御を実行する制御部に対して、図34に示される操舵角感応リミッタ93,103と同様の構成が適用される場合、アシスト制御部71におけるゲインGgrdの漸増速度は、上下限リミット演算部72におけるゲインGgrdの漸増速度と同じに設定される。このようにすれば、アシスト制御部71におけるゲインGgrdの変化に伴う補償量(I3 *,I3 *)の変化に応じて好適な制限値が設定される。
<第11の実施の形態>
つぎに、電動パワーステアリング装置の第11の実施の形態を説明する。本例も、基本的には先の図1〜図9に示される第1の実施の形態と同様の構成を備えている。本例は、第1〜第10の実施の形態のすべてに適用することが可能である。
近年では、電動パワーステアリング装置10に対する機能的な要求はますます多様化しつつある。マイクロコンピュータ42は、ステアリングの操舵状態あるいは車両の走行状態を示す種々の状態量を使用してアシスト制御量Ias *を演算するところ、製品仕様などによって、アシスト制御量Ias *を演算するために使用される状態量が異なることも想定される。たとえば、つぎの通りである。
図35に示すように、アシスト制御部71は、車速V、操舵トルクτ、操舵角θs、操舵トルク微分値dτ、操舵速度ωsおよび操舵角加速度αsの他、適宜の状態量Sxを取り込む。アシスト制御部71は、当該取り込まれる状態量Sxを加味してアシスト制御量Ias *を演算する。
図36に示すように、補償制御部82は、慣性補償制御部84、ステアリング戻し制御部85およびトルク微分制御部86の他、適宜の制御部3001を有している。制御部3001は適宜の状態量Sxに基づく補償量Ix *を生成する。制御部3001による補償制御の内容は製品仕様などに応じて適宜に設定される。
図37に示すように、上下限リミット演算部72も状態量Sxを取り込む。上下限リミット演算部72は、操舵トルクτ、操舵角θs、操舵トルク微分値dτ、操舵速度ωsおよび操舵角加速度αsの他、適宜の状態量Sxも加味してアシスト制御量Ias *に対する制限値として上限値IUL *および下限値ILL *を演算する。
上下限リミット演算部72の上限値演算部90は、操舵トルク感応リミッタ91、操舵トルク微分値感応リミッタ92、操舵角感応リミッタ93、操舵速度感応リミッタ94、操舵角加速度感応リミッタ95および加算器96の他、さらに感応リミッタ3002を有している。感応リミッタ3002は、適宜の状態量Sxに応じてアシスト制御量Ias *に対する上限値IULX *を演算する。
加算器96は5つの上限値IUL1 *〜IUL5 *の他、さらに上限値IULX *を足し算することによりアシスト制御量Ias *に対する上限値IUL *を生成する。
下限値演算部100は、操舵トルク感応リミッタ101、操舵トルク微分値感応リミッタ102、操舵角感応リミッタ103、操舵速度感応リミッタ104、操舵角加速度感応リミッタ105および加算器106の他、さらに感応リミッタ3003を有している。感応リミッタ3003は、適宜の状態量Sxに応じてアシスト制御量Ias *に対する下限値ILLX *を演算する。
加算器106は5つの下限値ILL1 *〜ILL5 *の他、さらに下限値ILLX *を足し算することによりアシスト制御量Ias *に対する下限値ILL *を生成する。
<状態量>
ここで、状態量Sxとしては、たとえばヨーレートYR、オーバーステア状態量(OS状態量)JOS、アンダーステア状態量(US状態量)JUS、前後加速度Gy、横加速度Gx、車輪速差ΔV、軸力(ラック軸力)Fx、電流偏差ΔIm、電流値Im、スリップ角SA、スリップ率SR、およびグリップ度εの少なくとも一を採用してもよい。
ヨーレートYRとは、車両の重心点を通る鉛直軸回りの回転角速度をいう。マイクロコンピュータ42は、車両に設けられる図示しないヨーレートセンサを通じてヨーレートYRを検出する。
オーバーステア状態量JOSとは、オーバーステア傾向の強さ(度合い)を示す量をいう。アンダーステア状態量JUSとは、アンダーステア傾向の強さ(度合い)を示す量をいう。マイクロコンピュータ42は、ヨーレートセンサを通じて検出される実際のヨーレートと、車速Vおよび操舵角θsに基づき算出されるヨーレートとの偏差に基づきオーバーステア状態量JOSおよびアンダーステア状態量JUSをそれぞれ検出する。
前後加速度Gyとは、車両の進行方向(前後方向)に沿って作用する加速度をいう。横加速度Gxとは、車両が旋回するとき進行方向(前後方向)に対する直交方向(左右方向)へ向けて作用する加速度をいう。マイクロコンピュータ42は、車両に設けられる図示しない加速度センサを通じて前後加速度Gyおよび横加速度Gxをそれぞれ検出する。
車輪速差ΔVとは、前輪の回転速度と後輪の回転速度との差、または左輪の回転速度と右輪の回転速度との差をいう。マイクロコンピュータ42は、車両の各車輪に設けられる車輪速センサを通じて各車輪の回転速度を検出し、これら検出される各車輪の回転速度に基づき車輪速差ΔVを検出する。
軸力Fxとは、ラック軸の軸線方向に作用する力、すなわち転舵輪26,26の向きを変えるための力をいう。マイクロコンピュータ42は、車両に設けられる図示しない軸力センサを通じて軸力Fxを検出する。なお、マイクロコンピュータ42は操舵トルクτなどに基づき軸力Fxを推定し、当該推定される軸力Fxを使用してもよい。
電流偏差ΔImとは、最終的な電流指令値I*(正確にはq軸電流指令値)と、電流センサ44を通じて検出される実際の電流値Im(正確にはq軸電流値)との差をいう。電流偏差ΔImは、モータ制御信号生成部62(図2参照)により生成される値を採用してもよい。
電流値Imは、電流センサ44を通じて検出される実際の電流値である。
スリップ角SAとは、車両の進行方向とタイヤの向いている方向とのなす角度をいう。マイクロコンピュータ42は、たとえば車速Vおよび操舵角θsに基づきスリップ角SAを演算する。なお、横加速度GxおよびヨーレートYRに基づきスリップ角SAを演算することも可能である。
スリップ率SRは、車体速度と車輪速度との差を車体速度で除した値をいう。マイクロコンピュータ42は、たとえば各車輪速センサを通じて検出される各車輪速度と、これら車輪速度に基づき算出される推定車体速度とに基づきスリップ率SRを演算する。なお、推定車体速度に代えて、車速センサ51を通じて検出される車速Vを使用してもよい。
グリップ度εは、タイヤに対する横方向のグリップ(タイヤが路面をとらえて張り付く力)の程度を表す値である。マイクロコンピュータ42は、車速V、ヨーレートYRおよび操舵角θsなどの車両の運転状態を表す指標に基づき演算する。なお、グリップ度εは、タイヤの摩擦限界までの余裕度を表す値とみることもできる。
<リミットマップ>
上限値演算部90および下限値演算部100は、それぞれ第1〜第5のリミットマップM1〜M5の他、さらに第11のリミットマップM12を使用して各上限値IUL1 *〜IUL5 *,IULX *および各下限値ILL1 *〜ILL5 *,IULX *を演算する。第11のリミットマップM12は、第1〜第5のリミットマップM1〜M5と同様に、マイクロコンピュータ42の図示しない記憶装置に格納される。第11のリミットマップM12も運転者のステアリング操作に応じて演算されるアシスト制御量Ias *は許容し、それ以外の何らかの原因による異常なアシスト制御量Ias *は許容しないという観点に基づき設定される。
前述した適宜の状態量Sx、すなわちヨーレートYR、オーバーステア状態量JOS、アンダーステア状態量JUS、前後加速度Gy、横加速度Gx、車輪速差ΔV、軸力Fx、電流偏差ΔIm、電流値Im、スリップ角SA、スリップ率SR、およびグリップ度εに基づく各リミットマップの特性は、すべて同じである。このため、本例では適宜の状態量Sxに基づく各リミットマップをすべて第11のリミットマップM12としてまとめて説明する。
図38に示すように、第11のリミットマップM12は、横軸を状態量Sx、縦軸をアシスト制御量Ias *とするマップであって、状態量Sxとアシスト制御量Ias *に対する上限値IULX *との関係、および状態量Sxとアシスト制御量Ias *に対する下限値ILLX *との関係をそれぞれ規定する。感応リミッタ3002,3003はそれぞれ第11のリミットマップM12を使用して状態量Sxに応じた上限値IULX *および下限値ILLX *を演算する。
第11のリミットマップM12は、状態量Sxと反対方向(正負の符号)のアシスト制御量Ias *は許容し、状態量Sxと同じ方向のアシスト制御量Ias *は許容しない観点に基づき設定されることにより、つぎのような特性を有する。すなわち、状態量Sxが正の値である場合、アシスト制御量Ias *の上限値IULX *は「0」に維持される。また、状態量Sxが正の値である場合、アシスト制御量Ias *の下限値ILLX *は状態量Sxの増大に伴い負の方向へ増加する。一方、状態量Sxが負の値である場合、アシスト制御量Ias *の上限値IULX *は状態量Sxの絶対値が増大するほど正の方向へ増加する。また、状態量Sxが負の値である場合、アシスト制御量Ias *の下限値ILLX *は「0」に維持される。
なお、本例はつぎのように変更して実施してもよい。
・第5の実施の形態と同様に、第11のリミットマップM12を、いわゆる車速感応型のマップとしてもよい。すなわち、第11のリミットマップM12は状態量Sxに応じたアシスト制御量Ias *に対する制限値(上限値IULX *および下限値ILLX *)を車速Vに応じて規定する。この場合、第11のリミットマップM12には、たとえば先の図19に示される第8のリミットマップM8と同様の特性を持たせてもよい。具体的には、状態量Sxが正の値である場合、上限値IULX *は「0」に維持される。また、状態量Sxが正の値である場合、下限値ILLX *は状態量Sxの絶対値が増大するほど、また車速Vが速いほど負の方向へ増加する。一方、状態量Sxが負の値である場合、アシスト制御量Ias *の下限値ILLX *は「0」に維持される。また、状態量Sxが負の値である場合、アシスト制御量Ias *の上限値IULX *は状態量Sxの絶対値が増大するほど、また車速Vが速いほど正の方向へ増加する。
・何らかの原因により状態量Sxが異常な値を示すことも考えられる。この場合、感応リミッタ3002,3003により演算される制限値(上限値IULX *および下限値ILLX *)も妥当な値にならない。このため、この異常な状態量Sxに基づく制限値(上限値IULX *および下限値ILLX *)が、上下限リミット演算部72による最終的な制限値(上限値IUL *および下限値ILL *)に及ぼす影響が懸念される。そこで、たとえばマイクロコンピュータ42に状態量Sxの異常を検出する機能を設け、マイクロコンピュータ42により状態量Sxの異常が検出されるとき、マイクロコンピュータ42は異常な状態量Sxに基づく制限値(上限値IULX *および下限値ILLX *)を使用しないようにしてもよい。すなわち、マイクロコンピュータ42(正確には、上下限リミット演算部72)は、異常な状態量Sxに基づく制限値(上限値IULX *および下限値ILLX *)を加味することなく、アシスト制御量Ias *に対する最終的な制限値(上限値IUL *および下限値ILL *)を演算するようにしてもよい。このようにすれば、異常な状態量Sxに基づく制限値(上限値IULX *および下限値ILLX *)が、上下限リミット演算部72による最終的な制限値(上限値IUL *および下限値ILL *)に及ぼす影響を低減することが可能となる。ちなみに、状態量Sx以外の他の状態量(τ,dτ,θs,ωs,αs)に基づく制限値(IUL1 *〜IUL5 *,ILL1 *〜ILL5 *)についても同様である。
<実施の形態の効果>
本実施の形態によれば、以下の効果を得ることができる。
(19)第1の実施の形態に記載した状態量(τ,dτ,θs,ωs,αs)以外にも、アシスト制御量Ias *の演算には様々な状態量Sxが使用されることが考えられる。これら状態量Sxに対してもアシスト制御量Ias *の制限値(上限値IULX *および下限値ILLX *)が個別に設定される。そして第1の実施の形態と同様に、各状態量Sxに応じた制限値を含むすべての制限値を合算した値がアシスト制御量Ias *に対する最終的な制限値(上限値IUL *および下限値ILL *)として設定される。このため、アシスト制御量Ias *の演算に様々な状態量Sxが使用される場合であれ、異常なアシスト制御量Ias *を最終的な制限値によって好適に制限することが可能である。
ちなみに、アシスト制御量Ias *の演算に使用する状態量Sxを追加する場合、当該追加する状態量Sxに対応する第11のリミットマップM12を持たせないとき、つぎのような懸念がある。たとえば本来であれば正常であるアシスト制御量Ias *が最終的な制限値により誤って制限されることもあり得る。逆に、本来であれば制限すべき異常なアシスト制御量Ias *であるにもかかわらず好適に制限されないこともあり得る。これは、アシスト制御部71は当該追加する状態量Sxを加味してアシスト制御量Ias *を演算するところ、最終的な制限値(IUL *,ILL *)には当該追加する状態量Sxに応じた制限値(上限値IULX *および下限値ILLX *)が加味されないためである。本例を含む各実施の形態のように、アシスト制御量Ias *の演算に使用されるすべての状態量に対するリミットマップを持たせることにより、正常なアシスト制御量Ias *の誤検出(誤制限)あるいは異常な正常なアシスト制御量Ias *の検出漏れなどが抑制される。
<他の実施の形態>
なお、前記各実施の形態は、つぎのように変更して実施してもよい。
・第1〜第6の実施の形態において、補償制御部82は慣性制御、ステアリング戻し制御およびトルク微分制御を実行するところ、ダンパ補償制御など他の補償制御を実行するようにしてもよい。たとえばダンパ補償制御は操舵速度ωsに基づき操舵系が有する粘性を補償するための制御である。また、これら補償制御のうち少なくとも一を実行するようにしてもよい。
<他の技術的思想>
つぎに、各実施の形態から把握できる技術的思想を以下に追記する。
(イ)前記制御装置は、アシスト制御量が誤って制限されるおそれがあるとき、フィルタ演算を行うことにより各制限値を遅延させること。
(ロ)前記制御装置は、アシスト制御量が誤って制限されるおそれがあるとき、生成される各制限値を一定時間だけ保持することにより各制限値を遅延させること。
(ハ)前記制御装置は、今回の各状態量と前回の各状態量とを比較し、今回の状態量の値が前回の状態量の値よりも大きくないとき(小さいとき)、本来制限する必要のないアシスト制御量が誤って制限されるおそれがある旨判定して各制限値を遅延させること。
(ニ)前記第2のアシスト制御部は、前記第1のアシスト制御部よりも機能が簡素化されていること。
(ホ)前記制御装置は、前記第1のアシスト制御量の値が制限されてから一定時間経過したとき、前記第2のアシスト制御量を使用すること。