しかしながら、従来の装置においては、2系統のトルクセンサを備えているものの、故障モードによっては、何れのトルクセンサが故障しているのか特定することができない。例えば、地絡、天絡、電源異常による故障に関しては、2系統の出力の偏差を求めなくても、系統ごとに独立して異常を検出することができるが、センサ値が想定範囲内に収まる中間値故障に関しては、2系統の出力の偏差を求めても、何れの系統が故障しているのか特定できない。
また、仮に、2系統のトルクセンサのうち故障している系統を特定できたとしても、残りの1系統のトルクセンサの異常を監視することができない。従って、2系統同時故障となる事態を考慮すると、操舵アシスト制御を継続させることが難しくなる。
本発明は、上記問題に対処するためになされたもので、2系統のトルクセンサのうち異常が発生しているトルクセンサを特定でき、かつ、異常が検出されていない側のトルクセンサの検出値に基づいて、安全に操舵アシストを継続できるようにすることを目的とする。
上記目的を達成するために、本発明の特徴は、互いに独立した2系統のトルクセンサを有しステアリングシャフトに働く操舵トルクを検出するトルク検出手段(40)と、運転者の操舵操作をアシストするアシストトルクを発生する電動モータ(21)と、前記トルク検出手段により検出した操舵トルクに基づいて、目標アシストトルクを演算する目標アシストトルク演算手段(100)と、前記目標アシストトルク演算手段により演算された目標アシストトルクに従って前記電動モータを駆動するモータ駆動手段(60)とを備えた電動パワーステアリング装置において、車速と舵角と舵角速度に基づいて前記操舵トルクの推定値である推定トルクを演算する推定トルク演算手段(200)と、操舵ハンドルの切戻し操作中であるか否かを判断する判断手段と、前記操舵ハンドルの切戻し操作中ではないと判断されているときにおける、前記2系統のトルクセンサにより検出された各操舵トルクと前記推定トルク演算手段により演算された推定トルクとに基づいて、前記2系統のトルクセンサの異常を系統を特定して検出するセンサ異常検出手段(110,S30)と、前記操舵ハンドルの切戻し操作中ではないと判断されているときにおける、前記トルクセンサの検出値と前記推定トルク演算手段により演算された推定トルクとの偏差に基づいて、前記トルクセンサの検出値の信頼度を演算する信頼度演算手段(110,S33,S53,S63)とを備え、前記目標アシストトルク演算部は、一方の系統のトルクセンサの異常が検出されている場合、異常が検出されていない系統のトルクセンサの検出値とその信頼度に基づいて、前記目標アシストトルクを演算する(110,120,130,140,160,S35,S36,S37,S38,S52,S53,S62,S63)ことにある。
本発明においては、互いに独立した2系統のトルクセンサによりステアリングシャフトに働く操舵トルクを検出するため、一方の系統のトルクセンサに異常が発生した場合でも他方の系統のトルクセンサにて操舵トルクを検出できる。しかし、その場合には、どちらの系統のトルクセンサに異常が発生したのか特定できなければ、適正な操舵トルクを検出できない。トルクセンサの検出値が想定範囲を超える場合や、電源異常が発生した場合においては、異常検出は容易であるが、検出値が想定範囲に収まる中間値故障については異常検出が難しい。そこで、本発明では、推定トルク演算手段と判断手段とセンサ異常検出手段とを備えている。推定トルク演算手段は、車速と舵角と舵角速度に基づいて操舵トルクの推定値である推定トルクを演算する。判断手段は、操舵ハンドルの切戻し操作中であるか否かを判断する。センサ異常検出手段は、操舵ハンドルの切戻し操作中ではないと判断されているときにおける、系統のトルクセンサにより検出された各操舵トルクと推定トルク演算手段により演算された推定トルクとに基づいて、2系統の操舵トルクセンサの異常を系統を特定して検出する。トルクセンサにより検出された操舵トルクと推定トルクとの偏差が大きい場合には、トルクセンサに異常が発生していると考えられる。従って、異常が発生しているトルクセンサを特定することができる。尚、本明細書において、「偏差」とは、二つの値の差の絶対値を表す。
例えば、2系統のトルクセンサにより検出された操舵トルクどうしの偏差を求め、その偏差が予め設定した設定値よりも大きい場合には、何れか一方のトルクセンサが異常であると推定できる。その場合には、例えば、2系統のトルクセンサにより検出された各操舵トルクと、推定トルクとの偏差をそれぞれ求め、その偏差が大きい方のトルクセンサが異常であると判定すればよい。
2系統のトルクセンサのうちの一系統に異常が検出された場合、目標アシストトルクは、異常が検出されていない系統のトルクセンサの検出値を使って演算すればよいが、その場合であっても、異常が検出されていない系統のトルクセンサの異常監視を行う必要がある。そこで、本発明においては、信頼度演算手段を備えている。信頼度演算手段は、操舵ハンドルの切戻し操作中ではないと判断されているときにおける、トルクセンサの検出値と推定トルク演算手段により演算された推定トルクとの偏差に基づいて、トルクセンサの検出値の信頼度を演算する。従って、信頼度に基づいてトルクセンサの異常監視を行うことができる。そして、目標アシストトルク演算部は、異常が検出されていない系統のトルクセンサの検出値とその信頼度に基づいて、目標アシストトルクを演算する。従って、本発明によれば、異常が検出されていない系統のトルクセンサの異常監視を行いつつ、信頼度に応じた適切な目標アシストトルクを設定して安全に操舵アシストを継続することができる。
本発明の他の特徴は、前記信頼度演算手段は、前記偏差が小さいほど高い信頼性を表す信頼度を演算し、前記目標アシストトルク演算手段は、前記信頼度に基づいて前記目標アシストトルクの制限を設定するアシストトルク制限手段(160)を備えたことにある。この場合、前記アシストトルク制限手段は、前記信頼度で表される信頼性が低い場合は高い場合に比べて前記目標アシストトルクの上限値を低く設定するとよい。
本発明においては、信頼度演算手段が、トルクセンサの検出値と推定トルク演算手段により演算された推定トルクとの偏差に基づいて、偏差が小さいほど高い信頼性を表す信頼度を演算する。従って、適正な信頼度を簡単に演算することができる。そして、アシストトルク制限手段が、この信頼度に基づいて目標アシストトルクの制限を設定する。目標アシストトルクの制限を設定するにあたっては、目標アシストトルクの上限値を設定するとよい。この場合、信頼度で表される信頼性が低い場合は高い場合に比べて目標アシストトルクの上限値を低く設定する。これにより、トルクセンサの検出値の信頼性が低い場合(偏差が大きい場合)には、目標アシストトルクが低い値に抑えられ、操舵トルクの誤検出により過剰な操舵アシストが行われることが防止される。従って、電動パワーステアリング装置の安全性および信頼性が向上する。
本発明の他の特徴は、互いに独立した2系統のトルクセンサを有しステアリングシャフトに働く操舵トルクを検出するトルク検出手段と、運転者の操舵操作をアシストするアシストトルクを発生する電動モータと、車速と舵角と舵角速度に基づいて操舵トルクの推定値である推定トルクを演算する推定トルク演算手段と、前記2系統のトルクセンサにより検出された各操舵トルクと、前記推定トルク演算手段により演算された推定トルクとに基づいて、前記2系統のトルクセンサの異常を系統を特定して検出するセンサ異常検出手段と、前記トルクセンサの検出値と前記推定トルク演算手段により演算された推定トルクとの偏差に基づいて、前記偏差が小さいほど高い信頼性を表す前記トルクセンサの検出値の信頼度を演算する信頼度演算手段と、一方の系統のトルクセンサの異常が検出されている場合、異常が検出されていない系統のトルクセンサの検出値とその信頼度に基づいて目標アシストトルクを演算するとともに、前記信頼度で表される信頼性が低い場合は高い場合に比べて前記目標アシストトルクの上限値を低く設定する目標アシストトルク演算手段と、前記目標アシストトルク演算手段により演算された目標アシストトルクに従って前記電動モータを駆動するモータ駆動手段とを備えた電動パワーステアリング装置において、
前記目標アシストトルク演算手段は、基本アシストトルクとアシスト補償トルクとを加算した値に、上限値制限を施して前記目標アシストトルクを演算するものであり、前記推定トルク演算手段(200)は、車速と舵角と舵角速度に関する検出値を取得する車両状態値取得手段(70,23)と、車速と舵角とから推定アシストトルク舵角成分を導き出す関係情報、および、車速と舵角速度とから推定アシストトルク舵角速度成分を導き出す関係情報を記憶しており、これらの関係情報と、車速と舵角と舵角速度の検出値とに基づいて、前記推定アシストトルク舵角成分と前記推定アシストトルク舵角速度成分とを合わせた推定アシストトルクを演算する推定アシストトルク演算手段(210)と、前記演算された推定アシストトルクから前記アシスト補償トルクを減算し前記上限値制限により制限された制限量を加算することにより、前記基本アシストトルクの推定値である推定基本アシストトルクを演算し、予め記憶された前記基本アシストトルクと操舵トルクとの関係情報に基づいて、前記推定基本アシストトルクから前記推定トルクを演算する操舵トルク推定演算手段(400)とを備えたことにある。
本発明においては、推定トルクを演算する推定トルク演算手段は、車速と舵角と舵角速度に基づいて推定アシストトルクを演算し、この推定アシストトルクから推定基本アシストトルクを演算し、この推定基本アシストトルクから最終的に推定トルクを演算する。このような演算を行うために、推定トルク演算手段は、車両状態値取得手段と推定アシストトルク演算手段と操舵トルク推定演算手段とを備えている。車両状態値取得手段は、車速と舵角と舵角速度に関する検出値を取得する。
路面から操舵輪を介してステアリング機構(例えばラックバー)に入力される力は、操舵操作に対する抵抗力となるため、この力からアシストトルクを推定することができる。そして、この力は、舵角に応じて変化する舵角成分と舵角速度に応じて変化する舵角速度成分とに分けることができる。また、舵角成分と舵角速度成分とは、それぞれ車速に応じて変化する。そこで、本発明においては、推定アシストトルク演算手段が、車速と舵角とから推定アシストトルク舵角成分を導き出す関係情報、および、車速と舵角速度とから推定アシストトルク舵角速度成分を導き出す関係情報を記憶しており、これらの関係情報と、車速と舵角と舵角速度の検出値とに基づいて、推定アシストトルク舵角成分と推定アシストトルク舵角速度成分とを合わせた推定アシストトルクを演算する。
一方、目標アシストトルクは、基本アシストトルクとアシスト補償トルクとを加算した値に、上限値制限を施して演算される。従って、アシストトルクを推定できれば、基本アシストトルクを推定することができる。また、基本アシストトルクは操舵トルクから演算されるものであるから、基本アシストトルクを推定できれば、操舵トルクを推定することができる。そこで、操舵トルク推定演算手段は、推定アシストトルク演算手段により演算された推定アシストトルクからアシスト補償トルクを減算し上限値制限により制限された制限量を加算することにより、基本アシストトルクの推定値である推定基本アシストトルクを演算する。そして、予め記憶された基本アシストトルクと操舵トルクとの関係情報に基づいて、推定基本アシストトルクから推定トルクを演算する。
従って、本発明によれば、推定トルクを適切に演算することができる。
本発明の他の特徴は、車両の走行状態あるいは路面状態に応じて、前記推定アシストトルクを補正する推定アシストトルク補正手段(300)を備えたことにある。
推定アシスト力は、路面から操舵輪を介してステアリング機構(例えばラックバー)に入力される力に基づいて推定されるが、こうした入力は、車両の走行状態あるいは路面状態に応じて変化する。そこで、本発明においては、推定アシストトルク補正手段が車両の走行状態あるいは路面状態に応じて推定アシストトルクを補正する。従って、推定アシストトルクの精度、推定トルクの精度が向上する。この結果、トルクセンサの異常検出精度も向上する。これにより、一層安全に操舵アシストを実行することができる。
本発明の他の特徴は、前記推定アシストトルク補正手段(310)は、操舵輪のタイヤのスリップ状態を検出し、前記スリップの程度が大きいほど前記推定アシストトルクが小さくなるように補正することにある。
路面摩擦係数の変化によりタイヤスリップが発生すると、スリップ方向にタイヤの最大摩擦力が発生するため、車両の旋回力が失われる。従って、推定アシストトルクを小さくする必要がある。そこで、本発明においては、推定アシストトルク補正手段が、操舵輪のタイヤのスリップ状態を検出し、スリップの程度が大きいほど推定アシストトルクが小さくなるように推定アシストトルクを補正する。これにより、タイヤスリップが発生するような状況であっても、適切な推定アシストトルクを演算することができる。
本発明の他の特徴は、前記推定アシストトルク補正手段(320)は、車両の前進と後進とを判別し、車両の後進時の方が前進時よりも前記推定アシストトルクが小さくなるように補正することにある。
車両の前進時と後進時とではトレール間距離が変化して、キングピン軸周りのセルフアライニングトルクが変化する。従って、車両の走行方向(前後方向)に応じた推定アシストトルクを設定する必要がある。そこで、本発明においては、推定アシストトルク補正手段が、車両の前進と後進とを判別し、車両の後進時の方が前進時よりも推定アシストトルクが小さくなるように補正する。これにより、車両の走行方向に応じた適切な推定アシストトルクを演算することができる。
本発明の他の特徴は、前記推定アシストトルク補正手段(330)は、車両の走行路における坂度を検出し、上り坂走行時の方が下り坂走行時よりも前記推定アシストトルクが小さくなるように補正することにある。
車両が上り坂を走行する場合には、前輪(操舵輪)側の車両重量配分が減少するため、操舵操作に必要なアシストトルクが減少する。一方、車両が下り坂を走行する場合には、前輪(操舵輪)側の車両重量配分が増加するため、操舵操作に必要なアシストトルクが増加する。そこで、本発明においては、推定アシストトルク補正手段は、車両の走行路における坂度を検出し、上り坂走行時の方が下り坂走行時よりも推定アシストトルクが小さくなるように補正する。これにより、坂度に応じた適切な推定アシストトルクを演算することができる。
尚、上記説明においては、発明の理解を助けるために、実施形態に対応する発明の構成に対して、実施形態で用いた符号を括弧書きで添えているが、発明の各構成要件を前記符号によって規定される実施形態に限定させるものではない。
以下、本発明の一実施形態について図面を用いて説明する。図1は、実施形態として電動パワーステアリング装置の概略構成図である。
車両の電動パワーステアリング装置は、操舵ハンドル11の操舵により転舵輪である左右前輪FW1,FWを転舵する転舵機構10と、転舵機構10に設けられ操舵アシストトルクを発生するパワーアシスト部20と、パワーアシスト部20の電動モータ21を駆動制御するアシスト制御装置50(以下、アシストECU50と呼ぶ)とを備えている。
転舵機構10は、操舵ハンドル11に上端を一体回転するように接続したステアリングシャフト12を備え、ステアリングシャフト12の下端にはピニオンギヤ13が一体回転するように接続されている。ピニオンギヤ13は、ラックバー14に形成されたラック歯と噛み合ってラックアンドピニオン機構を構成する。ラックバー14の両端には、図示しないタイロッドおよびナックルアームを介して左右前輪FW1,FW2が転舵可能に接続されている。左右前輪FW1,FW2は、ステアリングシャフト12の軸線回りの回転に伴うラックバー14の軸線方向の変位に応じて左右に転舵される。
ラックバー14には、パワーアシスト部20が組み付けられている。パワーアシスト部20は、操舵アシスト用の電動モータ21(例えば、3相DCブラシレスモータ)とボールねじ機構22とからなる。電動モータ21の回転軸は、ボールねじ機構22を介してラックバー14に動力伝達可能に接続されていて、その回転により左右前輪FW1,FW2の転舵をアシストする。ボールねじ機構22は、減速器および回転−直線変換器として機能するもので、電動モータ21の回転を減速するとともに直線運動に変換してラックバー14に伝達する。また、電動モータ21をラックバー14に組み付けるのに代えて、電動モータ21をステアリングシャフト12に組み付けて、電動モータ21の回転を減速器を介してステアリングシャフト12に伝達して同シャフト12を軸線周りに駆動するように構成してもよい。
ステアリングシャフト12には、トルクセンサユニット40が設けられる。トルクセンサユニット40は、図2に示すように、2つの独立した第1トルクセンサ41および第2トルクセンサ42を備えている。第1トルクセンサ41および第2トルクセンサ42は、操舵ハンドル11の回動操作によって入力されステアリングシャフト12に作用する操舵トルクに応じた信号をそれぞれ独立して出力する。以下、第1トルクセンサ41の出力信号により検出される操舵トルクの値を第1操舵トルクTr1と呼び、第2トルクセンサ42の出力信号により検出される操舵トルクの値を第2操舵トルクTr2と呼ぶ。また、操舵アシスト制御の演算で使用される操舵トルクの値を操舵トルクTrと呼ぶ。操舵トルクTr,Tr1,Tr2は、正負の値により操舵ハンドル11の操作方向が識別される。本実施形態においては、操舵ハンドル11を右方向へ回すトルクを正の値で、操舵ハンドル11を左方向へ回すトルクを負の値で示す。
それぞれのトルクセンサ41,42は、図示しないが、例えば、ステアリングシャフト12の途中に設けたトーションバーの両端に設けたレゾルバと、レゾルバの励磁コイルに励磁信号を供給するとともにsin相コイル,cos相コイルから出力される検出信号を入力してトーションバーの両端の回転角を演算する角度演算部と、角度演算部により演算されたトーションバーの両端の回転角の差(つまり、捩れ角度)に対応するトルク値を演算するトルク演算部とから構成される。尚、レゾルバ以外の回転角センサを使って操舵トルクを検出する構成であってもよい。
電動モータ21には、回転角センサ23が設けられる。この回転角センサ23は、電動モータ21内に組み込まれ、電動モータ21の回転子の回転角度位置に応じた検出信号を出力するもので、例えば、レゾルバにより構成される。この回転角センサ23の検出信号は、電動モータ21の回転角および回転角速度の計算に利用される。一方、この電動モータ21の回転角は、転舵輪である前輪FW1,FW2の舵角に対応するため舵角θの検出に利用される。また、電動モータ21の回転角を時間で微分して得られる回転角速度は、舵角速度に対応するため舵角速度ωの検出に利用される。
舵角θは、正負の値により、前輪FW1,FW2の中立位置に対する方向が識別される。本実施形態においては、前輪FW1,FW2の中立位置を「0」とし、中立位置に対する右方向への舵角θを正の値で示し、中立位置に対する左方向への舵角θを負の値で示す。
アシストECU30は、CPU,ROM,RAM,A/D変換器などからなるマイクロコンピュータを主要部として備えたアシスト演算部100と、モータ駆動回路60とを備えている。モータ駆動回路60は、例えば、インバータ回路で構成され、アシスト演算部100から出力されるPWM制御信号を入力して、内部のスイッチング素子のデューティ比を制御することにより電動モータ21への通電量を調整する。モータ駆動回路60には、電動モータ21の3相に流れる電流imを検出する電流センサ61が設けられる。
アシスト演算部100は、電流センサ61、回転角センサ23、車速センサ70、後輪車輪速センサ71、ピッチ角センサ72、トルクセンサユニット40を接続している。アシスト演算部100は、回転角センサ23の検出信号から電動モータ21の電気角を演算する機能、モータ回転角に対応した舵角θを演算する機能、および、この舵角θを時間微分することにより舵角速度ωを演算する機能を備えている。
車速センサ70は、車速Vを表す車速検出信号を出力する。後輪車輪速センサ71は、左後輪(図示略)の車輪速ωrlと右後輪の車輪速ωrrとを表す車輪速信号を出力する。車輪速ωrl,ωrrは、車両が前進しているときの値を正の値で示し、車両が後退しているときの値を負の値で示す。
ピッチ角センサ72は、車体のピッチ角θpを表すピッチ角検出信号を出力する。本実施形態においては、ピッチ角センサ72として、サスペンションECU(図示略)が減衰力制御あるいは車高制御に使用するストロークセンサを用いる。ストロークセンサは、前後左右の車輪毎に設けられて、ばね下(車輪)とばね上(車体)との間の距離(以下、ストロークと呼ぶ)を表す信号を出力する。従って、前輪に設けられた左右のストロークセンサの検出値の平均値(以下、前輪ストロークと呼ぶ)と、後輪に設けられた左右のストロークセンサの検出値の平均値(以下、前輪ストロークと呼ぶ)との差に基づいて、車体のピッチ角θpを求めることができる。ピッチ角センサ72は、この前後輪のストロークの差に基づいてピッチ角θpを算出し、その算出したピッチ角θpを表すピッチ角検出信号をアシスト演算部100に出力する。また、ピッチ角センサ72としては、他に、車体の前後方向の加速度を検出する前後加速度センサを用いることもできる。
トルクセンサユニット40に設けられた第1トルクセンサ41,第2トルクセンサ42は、図2に示すように、それぞれ、電源ラインLP1,LP2、グランドラインLG1,LG2、トルク検出信号出力ラインLS1,LS2によりアシストECUに接続され、アシストECU50から別々に電源供給されるとともに、トルク検出信号出力ラインLS1,LS2を介して操舵トルクTr1,Tr2を別々にアシストECU50に出力する。従って、アシストECU50は、互いに独立した2系統のトルクセンサ42,42を接続している。
図3は、アシスト演算部100の機能を表す機能ブロック図である。アシスト演算部100は、各種制御プログラムの実行により電動モータ21の制御量を演算するもので、その機能に着目すると、異常検出部110と、基本アシストトルク演算部120と、アシスト補償トルク演算部130と、トルク加算部140と、推定トルク演算部200と、アシストトルク制限部160と、電流フィードバック制御部170とを備えている。
異常検出部110は、トルクセンサユニット40の異常を、第1トルクセンサ41と第2トルクセンサ42の何れに発生しているかを特定して検出する。また、トルクセンサ41,42の信頼度Cを算出し、異常が検出されない系統のトルクセンサ41(42)の信頼度Cをアシストトルク制限部160に出力する。
まず、異常検出部110の実行する処理について説明する。図4は、異常検出部110の実行するセンサ異常検出ルーチンを表す。このセンサ異常検出ルーチンは、所定の短い周期で繰り返し実行される。異常検出部110は、ステップS11において、第1トルクセンサ41に異常が発生していないかチェックする。このステップS11においては、第1トルクセンサ41の出力信号に基づいて、出力信号がハイレベルに固定される天絡状態、第1トルクセンサ41の出力信号がローレベルに固定される地絡状態が発生していないかをチェックする。また、第1トルクセンサ41のグランドラインLG1,LG2および電源ラインLP1,LP2の断線やショート等による電源系統異常が発生していないかをチェックする。
異常検出部110は、ステップS12において、第1トルクセンサ41の異常が検出されたか否かを判断し、異常が検出された場合には、ステップS13において、第1フラグF1を「1」に設定する。一方、ステップS11のチェックでは、第1トルクセンサ41の異常が検出されなかった場合には、ステップS14において、第1フラグF1を「0」に設定する。
続いて、異常検出部110は、ステップS15において、第2トルクセンサ42に異常が発生していないかチェックする。つまり、ステップS11と同様の処理を第2トルクセンサ42について行う。そして、ステップS16において、第2トルクセンサ42の異常が検出されたか否かを判断し、異常が検出された場合には、ステップS17において、第2フラグF2を「1」に設定する。一方、ステップS15のチェックでは、第2トルクセンサ42の異常が検出されなかった場合には、ステップS18において、第2フラグF2を「0」に設定する。
続いて、異常検出部110は、ステップS19において、第1フラグF1と第2フラグF2がともに「0」であるか否か、つまり、ステップS11,S15における異常チェックで2つのトルクセンサ41,42がともに異常が検出されていないかを判断する。第1フラグF1と第2フラグF2がともに「0」である場合には(S19:Yes)、ステップS30においてセンサ値比較異常判定処理を行う。このセンサ値比較異常判定処理については、図5を用いて後述する。
一方、ステップS19において「No」と判断した場合には、ステップS20において、第1フラグF1のみが「0」であるか否か、つまり、ステップS11,S15における異常チェックで第2トルクセンサ42のみに異常が検出されているか否かを判断する。第1フラグF1のみが「0」である場合には(S20:Yes)、ステップS50において第1センサ信頼度演算処理を行う。この第1センサ信頼度演算処理については、図6を用いて後述する。
また、ステップS20において「No」と判断した場合には、ステップS21において、第2フラグF2のみが「0」であるか否か、つまり、ステップS11,S15における異常チェックで第1トルクセンサ41のみに異常が検出されているか否かを判断する。第2フラグF2のみが「0」である場合には(S21:Yes)、ステップS60において第2センサ信頼度演算処理を行う。この第2センサ信頼度演算処理については、図7を用いて後述する。
また、ステップS21において「No」と判断した場合は、ステップS11,S15における異常チェックで第1トルクセンサ41と第2トルクセンサ42との両方に異常が検出されている状況にある。従って、トルク検出不能であるため、ステップS70において、操舵アシストを停止する。この場合、後述する信頼度Cの値を最小値に設定することで、アシストトルク制限部160にて目標アシストトルクTas*がゼロに設定されて操舵アシストが停止される。
異常検出部110は、ステップS30、ステップS50、ステップS60、ステップS70の何れかの処理を実行すると、センサ異常検出ルーチンを一旦終了する。そして、所定の周期で同様の処理を繰り返す。
ここで、ステップS30のセンサ値比較異常判定処理について、図5を用いて説明する。図5は、センサ値比較異常判定サブルーチンを表す。このサブルーチンが起動すると、異常検出部110は、まずステップS31において、第1トルクセンサ41で検出された第1操舵トルクTr1と、第2トルクセンサ42で検出された第2操舵トルクTr2との偏差|Tr1−Tr2|を算出し、その偏差が設定値A以上であるか否かを判断する。第1操舵トルクTr1と第2操舵トルクTr2との偏差が大きい場合には、何れか一方のトルクセンサ41(42)が故障していると判断できる。そこで、本実施形態においては、2つのトルクセンサ41,42がともに正常となるときにとり得る偏差|Tr1−Tr2|を予め実験により求めておき、その偏差よりも大きな値を異常判定用の設定値Aとして設定しておく。従って、第1操舵トルクTr1と第2操舵トルクTr2との偏差|Tr1−Tr2|が設定値A以上となる場合には、何れか一方のトルクセンサ41(42)が故障していると推定できる。
異常検出部110は、偏差|Tr1−Tr2|が設定値A以上となる場合には(S31:Yes)、以下の処理により、2つのトルクセンサのうち、何れのトルクセンサ41(42)が異常であるかを判断する。
まず、ステップS32において、切戻し操作中か否かを判断する。切戻し操作とは、操舵ハンドル11が切られた状態から中立位置側に戻すハンドル操作を表す。切戻し操作中か否かについては、舵角θと舵角速度ωとにより判断することができる。つまり、次の条件式が成立するときに切戻し操作中であると判断する。
(θ>0 かつ ω<−B)
または
(θ<0 かつ ω>B)
第1条件式は、舵角θが中立位置より右側にあり、かつ、操舵ハンドルが左方向に回されている状態を表し、第2条件式は、舵角θが中立位置より左側にあり、かつ、操舵ハンドルが右方向に回されている状態を表す。尚、値Bは、操舵ハンドル11が回されていることを検出するために予め設定した舵角速度である。また、本実施形態においては、舵角θおよび舵角速度ωは、電動モータ21に設けられた回転角センサ23により検出される回転角および回転角速度から求めた値を使うが、専用の舵角センサを設けて検出するようにしてもよい。
切戻し操作されている状態においては、操舵トルクの働いている方向を推定することができない。例えば、操舵ハンドル11を軽く握って手の平で滑らせながら中立位置側に戻す場合には、操舵トルクの方向が操舵ハンドル11の回転方向とは逆になり、一方、操舵ハンドル11を速く中立位置側に戻す場合には、操舵トルクの方向が操舵ハンドル11の回転方向と同じになるからである。
異常検出部110は、ステップS32において、切戻し操作が終了するまで待ったのち、その処理をステップS33に進める。ステップS33においては、第1トルクセンサ41にて検出した第1操舵トルクTr1と後述する推定トルク演算部200により算出された推定トルクTrxとの偏差|Tr1−Trx|を信頼度C1として算出する。また、第2トルクセンサ42にて検出した第2操舵トルクTr2と後述する推定トルク演算部200により算出された推定トルクTrxとの偏差|Tr2−Trx|を信頼度C2として算出する。この場合、信頼度C1,C2は、トルクセンサ41,42により検出される操舵トルクTr1,Tr2と推定トルクTrxとの偏差であるため、その値が小さいほどトルクセンサ41,42の信頼性が高いことを意味する指標となる。
続いて、異常検出部110は、ステップS34において、信頼度C1が信頼度C2よりも大きいか否かを判断する。信頼度C1が信頼度C2よりも大きい場合には、第1トルクセンサ41が異常であると判断し、ステップS35において、第2トルクセンサ42により検出された第2操舵トルクTr2の値を操舵トルクTrに代入する。この操舵トルクTrが、トルクセンサユニット40にて検出された操舵トルクとしてみなされて、アシスト制御量の演算に用いられる。続いて、ステップS36において、信頼度C2の値を信頼度Cの値に代入する。この信頼度Cは、トルクセンサユニット40にて検出された操舵トルクの信頼度としてみなされ、アシスト制御量の演算に用いられる。
一方、ステップS34において、信頼度C1が信頼度C2よりも大きくない場合には、第2トルクセンサ42が異常であると判断し、ステップS37において、第1トルクセンサ41により検出された第1操舵トルクTr1の値を操舵トルクTrに代入する。続いて、ステップS38において、信頼度C1の値を信頼度Cの値に代入する。従って、トルクセンサユニット40にて検出された操舵トルクとして第1操舵トルクTr1が設定され、その信頼度Cとして信頼度C1が設定される。
異常検出部110は、ステップS31において、偏差|Tr1−Tr2|が設定値A未満であると判断した場合には、第1トルクセンサ41と第2トルクセンサ42とがともに正常であると判断する。この場合、ステップS39において、第1トルクセンサ41により検出された第1操舵トルクTr1と第2トルクセンサ42により検出された操舵トルクTr2との平均値((Tr1+Tr2)/2)を操舵トルクTrに代入する。あるいは、第1トルクセンサ41により検出された操舵トルクTr1の値を操舵トルクTrに代入してもよい。あるいは、第2トルクセンサ42により検出された操舵トルクTr2の値を操舵トルクTrに代入してもよい。
続いて、異常検出部110は、ステップS40において、信頼度Cの値に、信頼性が最も高いことを表す信頼度C0を代入する。こうして、操舵トルクTrと信頼度Cが設定されると、本サブルーチンを抜けてメインルーチンに戻る。
次に、第1センサ信頼度演算処理について、図6を用いて説明する。図6は、メインルーチンにおけるステップS50の処理である第1センサ信頼度演算サブルーチンを表す。このサブルーチンは、メインルーチンのステップS11,S15において、第2トルクセンサ42についてのみ異常が検出された場合に実施される。このサブルーチンが起動すると、異常検出部110は、まずステップS51において、切戻し操作中か否かを判断する。この処理は、上述したステップS32の処理と同様の処理である。異常検出部110は、切戻し操作中であれば、切戻し操作が終了するまで待ったのち、その処理をステップS52に進める。
ステップS52においては、第1トルクセンサ41により検出された第1操舵トルクTr1の値を操舵トルクTrに代入する。続いて、ステップS53において、第1トルクセンサ41にて検出した第1操舵トルクTr1と後述する推定トルク演算部200により算出された推定トルクTrxとの偏差|Tr1−Trx|を算出し、その算出した偏差を信頼度Cとして設定する。従って、ステップS52,S53により、トルクセンサユニット40にて検出された操舵トルクTrとして操舵トルクTr1が設定され、その信頼度Cとして偏差|Tr1−Trx|が設定される。異常検出部110は、ステップS53の処理を行うと、本サブルーチンを抜けてメインルーチンに戻る。
次に、第2センサ信頼度演算処理について、図7を用いて説明する。図7は、メインルーチンにおけるステップS60の処理である第2センサ信頼度演算サブルーチンを表す。このサブルーチンは、メインルーチンのステップS11,S15において、第1トルクセンサ41についてのみ異常が検出された場合に実施される。このサブルーチンが起動すると、異常検出部110は、まずステップS61において、切戻し操作中か否かを判断する。この処理は、上述したステップS32の処理と同様の処理である。異常検出部110は、切戻し操作中であれば、切戻し操作が終了するまで待ったのち、その処理をステップS62に進める。
ステップS62においては、第2トルクセンサ42により検出された第2操舵トルクTr2の値を操舵トルクTrに代入する。続いて、ステップS63において、第2トルクセンサ42にて検出した第2操舵トルクTr2と後述する推定トルク演算部200により算出された推定トルクTrxとの偏差|Tr2−Trx|を算出し、その算出した偏差を信頼度Cとして設定する。従って、ステップS62,S63により、トルクセンサユニット40にて検出された操舵トルクTrとして操舵トルクTr2が設定され、その信頼度Cとして偏差|Tr2−Trx|が設定される。異常検出部110は、ステップS63の処理を行うと、本サブルーチンを抜けてメインルーチンに戻る。
異常検出部110は、上述したセンサ異常検出ルーチンの実行により演算した操舵トルクTrを基本アシストトルク演算部120に供給し、信頼度Cをアシストトルク制限部160に供給する。
次に、基本アシストトルク演算部120について説明する。基本アシストトルク演算部120は、異常検出部110により演算された操舵トルクTrと、車速センサ70にて検出された車速Vを入力し、図8に示す基本アシストマップを参照して基本アシストトルクTaを算出する。この基本アシストマップは、操舵トルクTrに応じた基本アシストトルクTaを車速Vごとに設定したもので、基本アシストトルク演算部120に記憶されている。基本アシストトルクTaは、操舵トルクTrの増加にしたがって増加するように設定される。また、操舵トルクTrに対する基本アシストトルクTaの関係は、車速Vが大きいほど基本アシストトルクTaが全体的に小さな値となるように設定される。
尚、図8に示す基本アシストマップは、右方向に働く操舵トルクTrに対する基本アシストトルクTaの関係を表しているが、左方向に働く操舵トルクTrに対する基本アシストトルクTaの関係は、トルクの作用する方向(符号)が反対となるだけで、絶対値でみれば図8と同様な特性に設定される。また、本実施形態では、基本アシストマップを用いて基本アシストトルクTaを計算するようにしたが、基本アシストマップに代えて操舵トルクTrおよび車速Vに応じて変化する基本アシストトルクTaを定義した関数を用意しておき、その関数を用いて基本アシストトルクTaを計算するようにしてもよい。
基本アシストトルク演算部120により算出された基本アシストトルクTaは、トルク加算部140に供給される。トルク加算部140は、基本アシストトルクTaと、アシスト補償トルク演算部130により算出されたアシスト補償トルクTbとを加算し、その計算結果であるアシストトルクTas(=Ta+Tb)をアシストトルク制限部160に出力する。
アシスト補償トルク演算部130は、基本アシストトルクTaを補償するためのトルクを演算する機能部であって、操舵トルクTrとは異なるパラメータに応じて変化する補償トルク(戻し制御トルクTc、ダンピング制御トルクTd)を演算する。アシスト補償トルク演算部130は、舵角θと舵角速度ωと車速Vとを入力して、戻し制御トルクTcとダンピング制御トルクTdとを演算する。戻し制御トルクTcは、運転者が操舵ハンドル11の握りを緩めながら切り戻すときに、中立位置に向かって良好な操舵アシストが働くように設定したものあり、図9に示す戻し制御マップを参照して計算される。この戻し制御マップは、舵角θに応じた戻し制御トルクTcを車速Vごとに設定したもので、アシスト補償トルク演算部130に記憶されている。戻し制御トルクTcは、舵角に対してマイナスの値をとり、その大きさ(絶対値)が、舵角θがゼロ(中立位置)から所定舵角までの範囲においては、舵角θの増加にしたがって増加し、舵角θが所定舵角を超えると舵角θの増加にしたがって減少するように設定される。また、舵角θに対する戻し制御トルクTcの関係は、車速Vが小さいほど戻し制御トルクTcが全体的に大きな値となるように設定される。
また、ダンピング制御トルクTdは、ステアリング系全体における振動を減衰させるために設定したものであり、図10に示すダンピング制御マップを参照して計算される。このダンピング制御マップは、舵角速度ωに応じたダンピング制御トルクTdを車速Vごとに設定したもので、アシスト補償トルク演算部130に記憶されている。ダンピング制御トルクTdは、舵角速度ωに対してマイナスの値をとり、その大きさ(絶対値)が、舵角速度ωがゼロ(中立位置)から所定舵角までの範囲においては、舵角速度ωの増加にしたがって増加し、舵角速度ωが所定舵角を超えると舵角速度ωの増加にしたがってゼロまで減少するように設定される。また、舵角速度ωに対するダンピング制御トルクTdの関係は、車速Vが大きいほどダンピング制御トルクTdが全体的に大きな値となるように設定される。
アシスト補償トルク演算部130は、算出した戻し制御トルクTcとダンピング制御トルクTdとを加算してアシスト補償トルクTb(=Tc+Td)を求め、このアシスト補償トルクTbをトルク加算部140に供給する。トルク加算部140は、基本アシストトルクTaとアシスト補償トルクTbとを加算し、その加算結果であるアシストトルクTas(=Ta+Tb)をアシストトルク制限部160に供給する。
アシストトルク制限部160は、トルク加算部140からアシストトルクTasを入力するとともに、異常検出部110から信頼度Cを入力する。アシストトルク制限部160は、信頼度Cに基づいて目標アシストトルクTas*の上限値Tasmaxを設定する。上限値Tasmaxは、図11に示す上限値マップにて設定される。この上限値マップにおいて、横軸は信頼度C、つまり、トルクセンサ41(42)により検出された操舵トルクTrと推定トルクTrxとの偏差|Tr−Trx|を表す。
この上限値マップからわかるように、上限値Tasmaxは、信頼度Cが0から信頼度Caまでの範囲(0≦C≦Ca)において、最も大きな一定値に設定される。また、信頼度CがCaからCbとなる範囲(Ca<C≦Cb)においては、信頼度Cが大きくなるにしたがって低下する上限値Tasmaxが設定される。また、信頼度CがCbを超える範囲(C>Cb)においては、上限値Tasmaxが0に設定される。トルクセンサ41,42の信頼性は、信頼度Cが小さいほど高くなる。従って、アシストトルク制限部160は、上限値マップにより、トルクセンサ41,42の信頼性が高いほど大きな上限値Tasmaxを設定する。
アシストトルク制限部160は、トルク加算部140から入力したアシストトルクTasが上限値Tasmaxを超える場合には、目標アシストトルクTas*を上限値Tasmaxに制限する。つまり、上限値Tasmaxを目標アシストトルクTas*として設定する(Tas*←Tasmax)。また、アシストトルクTasが上限値Tasmax以下であれば、アシストトルクTasをそのまま目標アシストトルクTas*として設定する(Tas*←Tas)。
従って、信頼度Cが大きい場合には小さい場合に比べて、目標アシストトルクTas*の上限値制限が大きく働いて(上限値Tasmaxが小さくなって)、目標アシストトルクTas*が小さめに設定される。
アシストトルク制限部160は、算出した目標アシストトルクTas*を電流フィードバック制御部170に供給する。電流フィードバック制御部170は、目標アシストトルクTas*を発生させるために必要な目標電流i*を計算し、電流センサ61により検出された実電流imと目標電流i*との偏差Δi(i*−im)に基づいてPI制御(比例積分制御)式等を使って目標指令電圧を計算し、目標指令電圧に応じたPWM制御信号をモータ駆動回路60に出力する。こうして、電動モータ21には、電流フィードバック制御により運転者の操舵方向と同じ方向に回転する向きの目標電流i*が流れ、運転者の操舵操作を適切にアシストする。
また、アシストトルク制限部160は、目標アシストトルクTas*を上限値制限した量を表す制限量ΔTdown(=Tas−Tas*)を推定トルク演算部200に供給する。
次に、推定トルクTrxを演算する推定トルク演算部200について説明する。推定トルク演算部200は、図12に示すように、推定アシストトルク演算部210と、操舵トルク推定演算部400とから構成されており、操舵トルクの推定値である推定トルクTrxを演算する。
まず、推定アシストトルク演算部210から説明する。推定アシストトルク演算部210は、図13に示すように、舵角トルク演算部220と、舵角速度トルク演算部230と、トルク加算部240と、アシスト補正ゲイン演算部300と、アシスト補正ゲイン乗算部260とから構成されている。
舵角トルク演算部220は、舵角θと車速Vとを入力し、図14に示す舵角トルクマップを参照して舵角トルクTθを算出する。この舵角トルクマップは、予め測定したデータをもとに、舵角θに応じた舵角トルクTθを車速Vごとに設定したもので、舵角トルク演算部220に記憶されている。左右前輪FW1,FW2が転舵されている状態においては、左右前輪FW1,FW2からナックルアームおよびタイロッドを介してラックバー14に軸力が作用する。この軸力は、操舵操作に対する抵抗力となるもので、舵角θと舵角速度ωと車速Vに応じて変化する。この軸力のうち、舵角θに応じて変化する成分が舵角トルクTθ(本発明における推定アシストトルク舵角成分)であり、舵角速度ωに応じて変化する成分が後述する舵角速度トルクTω(本発明における推定アシストトルク舵角速度成分)である。
舵角トルクTθは、舵角θがゼロ(中立位置)から所定舵角までの範囲においては、舵角θの増加にしたがって同方向に増加し、舵角θが所定舵角を超えると舵角θの増加にしたがって減少するように設定される。また、舵角θに対する舵角トルクTθの関係は、車速Vが大きいほど舵角トルクTθが全体的に大きな値となるように設定される。尚、本明細書において大きさを論じる場合には、正負の値をとるセンサ値に関しては、その絶対値について述べている。
舵角トルク演算部220は、舵角トルクマップを参照して演算した舵角トルクTθをトルク加算部240に供給する。尚、本実施形態においては、舵角トルクマップを用いて舵角トルクTθを計算するようにしたが、舵角トルクマップに代えて舵角θと車速Vに応じて変化する舵角トルクTθを定義した関数を用意しておき、その関数を用いて舵角トルクTθを計算するようにしてもよい。舵角トルクマップ、あるいは、舵角トルクTθを演算する関数が、本発明における車速と舵角とから推定アシストトルク舵角成分を導き出す関係情報に相当する。
舵角速度トルク演算部230は、舵角速度ωと車速Vとを入力し、図15に示す舵角速度トルクマップを参照して舵角速度トルクTωを算出する。この舵角速度トルクマップは、予め測定したデータをもとに、舵角速度ωに応じた舵角速度トルクTωを車速Vごとに設定したもので、舵角速度トルク演算部230に記憶されている。
舵角速度トルクTωは、舵角速度ωが速度ゼロから所定速度までの範囲においては、舵角速度ωの増加にしたがって同方向に増加し、舵角速度ωが所定速度を超えると舵角速度ωの増加にしたがって減少するように設定される。また、舵角速度ωに対する舵角速度トルクTωの関係は、車速Vが大きいほど舵角速度トルクTωが全体的に小さな値となるように設定される。
舵角速度トルク演算部230は、舵角速度トルクマップを参照して演算した舵角速度トルクTωをトルク加算部240に供給する。尚、本実施形態においては、舵角速度トルクマップを用いて舵角速度トルクTωを計算するようにしたが、舵角速度トルクマップに代えて舵角速度ωと車速Vに応じて変化する舵角速度トルクTωを定義した関数を用意しておき、その関数を用いて舵角速度トルクTωを計算するようにしてもよい。舵角速度トルクマップ、あるいは、舵角速度トルクTωを演算する関数が、本発明における車速と舵角速度とから推定アシストトルク舵角速度成分を導き出す関係情報に相当する。
トルク加算部240は、舵角トルク演算部220から供給された舵角トルクTθと、舵角速度トルク演算部230から供給された舵角速度トルクTωとを入力し、舵角トルクTθと舵角速度トルクTωとを加算する。この加算結果(Tθ+Tω)を補正前推定アシストトルクTasx’と呼ぶ。補正前推定アシストトルクTasx’は、ラックバー14に作用する軸力に抗してパワーアシスト部20が操舵アシストした概ねのトルクを表す。トルク加算部240は、補正前推定アシストトルクTasx’をアシスト補正ゲイン乗算部260に供給する。
アシスト補正ゲイン乗算部260は、トルク加算部240から供給された補正前推定アシストトルクTasx’と、アシスト補正ゲイン演算部300から供給されたアシスト補正ゲインGasとを入力し、補正前推定アシストトルクTasx’にアシスト補正ゲインGasを乗算する。これにより、推定アシストトルクTasxが算出される(Tasx=Tasx’×Gas)。アシスト補正ゲイン乗算部260は、算出した推定アシストトルクTasxを操舵トルク推定演算部400に供給する。
アシスト補正ゲイン演算部300は、車両の走行状態や路面状態に応じて推定アシストトルクを補正するためのゲインを算出するもので、図13に示すように、第1補正ゲイン演算部310と、第2補正ゲイン演算部320と、第3補正ゲイン演算部330と、ゲイン乗算部340とから構成されている。
第1補正ゲイン演算部310は、タイヤスリップによる舵角誤差に応じた第1ゲインG1を演算する。路面摩擦係数の変化等によりタイヤスリップが発生すると、スリップ方向にタイヤの最大摩擦力が発生するため、車両の旋回力が失われる。従って、推定アシストトルク演算部210において推定アシストトルクを演算するにあたって、スリップの程度に応じて推定値を補正する必要がある。
そこで、第1補正ゲイン演算部310は、図16に示すように、推定舵角演算部311と、舵角差演算部312と、舵角差補正ゲイン演算部313とを備え、スリップに応じた第1ゲインG1を算出する。推定舵角演算部311は、後輪車輪速センサ71から、左後輪の車輪速ωrlと右後輪の車輪速ωrrとを表す車輪速信号を入力し、この車輪速ωrl,ωrrに基づいて、次式により、転舵輪FW1,FW2の推定舵角θxを演算する。
θx=Gr×arctan{(2L/W)×((ωrl−ωrr)/(ωrl+ωrr))}
ここで、Grは、車両のサスペンションジオメトリ特性に基づいて、実験により予め設定される車両のオーバーオールギア比(車輪の実際の舵角に対する検出舵角の比)を表す定数である。また、Lは車両のホイールベースを表し、Wは車両のトレッド幅を表す。
上記式の右辺第2項は、周知のアッカーマン・ジャント理論に基づいて推定される舵角である。従って、推定舵角θxは、アッカーマン・ジャント理論に基づいて推定される舵角にオーバーオールギア比Grを乗じたものとなる。ここで、オーバーオールギア比Grを乗じる理由について説明する。
本実施形態においては、左右後輪は転舵しない。このため、転舵輪である左右前輪FW1,FW2が転舵されて車両が旋回するときには、左右後輪は、アッカーマン・ジャント理論における旋回中心を同一とする同心円の接線方向に進もうとする。即ち、左右後輪は転舵しないため、車両の旋回に伴って引きずられながら同心円上を進むことになる。この場合、左右後輪の車輪速ωrl,ωrrを用いて転舵輪である前輪FW1,FW2の舵角を計算した場合には、アッカーマン率は変化することなく常に線形性を保つことができるものの、引きずりの発生に伴って同心円からのずれに対応するヒステリシス幅が大きくなる。このため、アッカーマン・ジャント理論による上記式の右辺第2項にて舵角を推定した場合には、推定精度が低下することになる。
そこで、推定舵角演算部311は、車両のオーバーオールギア比Grを用いた式による推定舵角θxを計算する。これにより、推定計算の精度を向上させることができる。
推定舵角演算部311は、算出した推定舵角θxを舵角差演算部312に供給する。舵角差演算部312は、推定舵角演算部311から供給された推定舵角θxと、回転角センサ23から検出される舵角θとを入力し、両者の舵角差Δθ(=|θx−θ|)を計算する。
舵角差演算部312は、算出した舵角差Δθを舵角差補正ゲイン演算部313に供給する。舵角差補正ゲイン演算部313は、図17に示す舵角差補正ゲインマップを参照して第1ゲインG1を算出する。この舵角差補正ゲインマップは、舵角差Δθに応じた第1ゲインG1を設定したもので、舵角差補正ゲイン演算部313に記憶されている。第1ゲインG1は、舵角差Δθが所定値θaよりも小さい範囲においては、最も大きな一定値(=1)に設定され、舵角差Δθが所定値θa以上で所定値θb未満の範囲においては、舵角差Δθが大きくなるにしたがって低下するように設定される。また、第1ゲインG1は、舵角差Δθが所定値θb以上となる範囲においては、ゼロに設定される。
舵角差補正ゲイン演算部313は、算出した第1ゲインG1をゲイン乗算部340に供給する。尚、第1補正ゲイン演算部310においては、車両が停止しており左右後輪の車輪速ωrl,ωrrを検出できない状況においては、推定舵角演算部311において推定舵角θxを計算することができないが、この場合には、タイヤスリップが発生していないため、舵角差補正ゲイン演算部313は、補正ゲインG1を最大値(1)に設定する。
次に、第2補正ゲイン演算部320について説明する。第2補正ゲイン演算部320は、車両の走行状態が前進であるか後進であるかを判定し、前後の走行方向に応じてアシストトルクの推定値を補正するものである。
図18に示すように、タイヤTYに発生するセルフアライニングトルクは、ニューマチックトレールξnで表されるタイヤTYのコーナリングフォースFcの着力点と、キャスタートレールξcで表されるキングピン軸KAの延長線が路面Rと交わる点との間の距離であるトレール間距離ξにコーナリングフォースFcを乗じた値となる。一方、ニューマチックトレールξnは、車両が前進する場合と後進する場合とで変化し、前進時におけるトレール間距離ξは(ξn+ξc)となり、後進時におけるトレール間距離ξは(ξn−ξc)となる。従って、前進時と後進時とでは、トレール間距離ξが変化して、キングピン軸KA周りのセルフアライニングトルクが変化する。従って、推定アシストトルク演算部210において推定アシストトルクを演算するにあたって、車両の走行方向(前後方向)に応じて推定値を補正する必要がある。
そこで、第2補正ゲイン演算部320は、車両が前進走行している場合には第2ゲインG2の値を1に設定する。また、車両が後退走行している場合には第2ゲインG2の値を1よりも小さな値(予め設定した設定値)に設定する。つまり、セルフアライニングトルクが小さくなる後進走行時においては、操舵操作に必要なアシストトルクが小さくてすむため、推定アシストトルクを小さい側に補正するように、1よりも小さな値に設定する。
尚、車両が前進走行しているか後進走行しているかの判断は、例えば、車輪速センサ71にて検出される車輪速ωrl,ωrrの符号(正または負)に基づいて判断することができる。あるいは、AT車やCVT車であれば、トランスミッションのドライブ信号およびリバース信号を取得することで判断することができる。また、MT車の場合には、車速Vとエンジン回転数Nとの関係から、現在のトランスミッションギヤ比(エンジン回転数÷車速×タイヤ有効系)を算出して判断することができる。
第2補正ゲイン演算部320は、算出した第2ゲインG2をゲイン乗算部340に供給する。
次に、第3補正ゲイン演算部330について説明する。第3補正ゲイン演算部330は、登坂度に応じてアシストトルクの推定値を補正するものである。
車両が登坂路を走行する(坂道を上り走行する)場合には、前輪(操舵輪)側の車両重量配分が減少するため、ラックバー14を軸線方向に移動させるために必要な軸力が減少する。つまり、操舵操作に必要なアシストトルクが減少する。一方、車両が降坂路を走行する(坂道を下り走行する)場合には、前輪(操舵輪)側の車両重量配分が増加するため、ラックバー14を軸線方向に移動させるために必要な軸力が増加する。つまり、操舵操作に必要なアシストトルクが増加する。従って、推定アシストトルク演算部210において推定アシストトルクを演算するにあたって、坂度に応じて推定値を補正する必要がある。
そこで、第3補正ゲイン演算部330は、図19に示す坂度補正ゲインマップを参照して第3ゲインG3を算出する。この坂度補正ゲインマップは、坂度Sに応じた第3ゲインG3を設定したもので、第3補正ゲイン演算部330に記憶されている。坂度Sは、水平路をゼロとし、降坂を正の値、登坂を負の値で表すものとする。第3ゲインG3は、坂度Sがゼロのときには1に設定される。また、坂度Sが正のときには、その絶対値が大きくなるほど、つまり、下り坂の傾斜が大きくなるほど、1よりも大きくなる値に設定される。また、坂度Sが負のときには、その絶対値が大きくなるほど、つまり、登り坂の傾斜が大きくなるほど、1よりも小さくなる正の値に設定される。
坂路を走行する時には、その坂度に応じて車体のピッチ角が変化する。そこで、第3補正ゲイン演算部は、ピッチ角センサ72により検出される車体のピッチ角θpを入力し、このピッチ角θpを坂度Sに対応させて第3ゲインG3を算出する。この場合、図19に示す坂度補正ゲインマップは、その横軸をピッチ角θpに対応した坂度Sに設定しておくことにより、ピッチ角θpから直接第3ゲインG3を求めることができる。
第3補正ゲイン演算部330は、算出した第3ゲインG3をゲイン乗算部340に供給する。ゲイン乗算部340は、第1補正ゲイン演算部310にて算出された第1ゲインG1と、第2補正ゲイン演算部320にて算出された第2ゲインG2と、第3補正ゲイン乗算部330にて算出された第3ゲインとを乗じる。この乗算結果(G1×G2×G3)がアシスト補正ゲインGasとなる。ゲイン乗算部340は、アシスト補正ゲインGas(=G1×G2×G3)をアシスト補正ゲイン乗算部260に供給する。
アシスト補正ゲイン乗算部260は、トルク加算部240から供給された補正前推定アシストトルクTasx’と、アシスト補正ゲイン演算部300から供給されたアシスト補正ゲインGasとを入力し、補正前推定アシストトルクTasx’にアシスト補正ゲインGasを乗算して、推定アシストトルクTasxを算出する(Tasx=Tasx’×Gas)。アシスト補正ゲイン乗算部260は、算出した推定アシストトルクTasxを操舵トルク推定演算部400に供給する。
次に、操舵トルク推定演算部400について説明する。操舵トルク推定演算部400は、推定アシストトルク演算部210から供給された推定アシストトルクTasxと、アシスト補償トルク演算部130から供給されたアシスト補償トルクTbと、アシストトルク制限部160で制限された操舵アシストトルクの制限量ΔTdown(Tas−Tas*)と、車速Vを入力する。そして、推定アシストトルクTasxとアシスト補償トルクTbと制限量ΔTdownとに基づいて、推定基本アシストトルクTaxを次式により計算する。
Tax=Tasx−Tb+ΔTdown
上述したように、目標アシストトルクTas*は、基本アシストトルクTaと、アシスト補償トルクTbとを加算した値(Ta+Tb)から制限量ΔTdownを減算して求められる。従って、基本アシストトルクTaの推定値である推定アシストトルクTasxは、推定アシストトルク演算部210にて算出した推定アシストトルクTasxから、アシスト補償トルク演算部130にて算出した最新のアシスト補償トルクTbを減算し、かつ、アシストトルク制限部160で制限された最新の制限量ΔTdownを加算すれば求めることができる。
操舵トルク推定演算部400は、算出した推定基本アシストトルクTaxを使って、操舵トルクの推定値である推定トルクTrxを次式により計算する。
Trx=±√(|Tax|/a)
ここで、aは車速係数である。この車速係数aは、図20に示すように、基本アシストマップにおける操舵トルクTrに対する基本アシストトルクTaの特性を二次曲線で表したときの係数であって、予め車速Vに応じて設定されている。従って、車速係数aは、車速Vが大きいほど小さな値(例えば、図20におけるa3)に設定され、車速Vが小さいほど大きな値(例えば、図20におけるa1)に設定される。操舵トルク推定演算部400は、車速Vを入力し、この車速Vに対応した車速係数aを使って推定トルクTrxを計算する。
この場合、推定トルクTrxは、推定基本アシストトルクTaxと同じ符号に設定される。つまり、推定基本アシストトルクTaxが正の値であれば推定トルクTrxも正の値に設定され、推定基本アシストトルクTaxが負の値であれば推定トルクTrxも負の値に設定される。
操舵トルク推定演算部400は、推定トルクTrxを算出すると、算出した推定トルクTrxを異常検出部110に供給する。こうして、異常検出部110においては、上述したように、推定トルクTrxを使って2系統のトルクセンサ41,42の異常判定を行う。
以上説明した本実施形態によれば、異常検出部110により2系統のトルクセンサ41,42の異常を、その系統を特定して検出する。この場合、地絡、天絡、電源異常といった異常に対しては簡単に検出できるが、センサ値がとり得る範囲内におけるセンサ値異常に対しては簡単に検出できない。そこで、本実施形態では、まず、2つのトルクセンサ41,42により検出された操舵トルクTr1,tr2の偏差(|Tr1−Tr2|)を求め、その偏差が設定値Aより大きいときに、一方のトルクセンサ41(42)が故障していると推定する。同時に、故障しているトルクセンサ41(42)を特定するために、推定トルク演算部200にて操舵トルクを推定し、推定トルクTrxとトルクセンサ41,42の検出値Tr1,tr2との偏差(|Tr1−Trx|,|Tr2−Trx|)を演算し、この偏差を信頼度C1,C2として設定する。そして、信頼度が大きい方のトルクセンサ41(42)を異常と判定する。
従って、2系統のトルクセンサ41,42のセンサ値異常を、その系統を特定して検出することができる。また、一方のトルクセンサ41(42)の異常が検出された場合には、異常が検出されていない側のトルクセンサ41(42)により検出される操舵トルクTr1(Tr2)を使って操舵アシスト制御を継続する。この場合、使用するトルクセンサ41(42)の信頼度C1,(C2)に基づいて、目標アシストトルクTas*の上限値Tasmaxを設定する。従って、センサ値の信頼性が低い場合には、目標アシストトルクTas*が低い値に抑えられ、操舵トルクの誤検出により過剰な操舵アシストが行われることが防止される。従って、電動パワーステアリング装置の安全性が向上する。
また、こうした異常検出処理は、操舵アシスト制御と並行して所定の短い周期で繰り返され、その都度、トルクセンサ41(42)の異常の有無が判定されるとともに、信頼度C1,C2が更新されていく。従って、一方のトルクセンサ41(42)の異常が検出されている場合であっても、もう一方のトルクセンサ41(42)の異常監視を十分に行うことができる。従って、本実施形態によれば、2系統のトルクセンサ41(42)の一方が故障した場合であっても、残りのトルクセンサ41(42)を使って安全に操舵アシストを継続することができる。
また、本実施形態においては、推定トルクTrxを演算するに当たって、推定アシストトルクTasxを計算し、この推定アシストトルクTasxからアシスト補償トルクTbを減算し制限量ΔTdownを加算することにより推定トルクTrxを求めるため、適正な推定トルクTrxが得られる。また、推定アシストトルクTsaxは、路面から前輪FW1,FW2を介してラックバー14に作用する軸力が、舵角、舵角速度、車速に応じて変化することに着目して、検出した舵角θ、舵角速度ω、車速Vに基づいて演算するため適正な値となる。
しかも、推定アシストトルクTasxを演算するに当たっては、操舵輪FW1,FW2のタイヤのスリップ状態に応じてスリップの程度が大きいほど推定アシストトルクTasxが小さくなるように補正する。また、車両の前進時と後進時とでは、車両の後進時の方が推定アシストトルクTasxが小さくなるように補正する。また、走行路面の坂度S(ピッチ角θpあるいは車両の前後荷重バランス)に応じて、上り坂に比べて下り坂のほうが推定アシストトルクTasxが大きくなるように補正する。従って、推定アシストトルクTasxの推定精度が向上し、この結果、推定トルクTrxの推定精度が向上する。これにより、トルクセンサ41,42の異常検出精度が向上する。
これらの結果、本実施形態によれば、電動パワーステアリング装置の信頼性が向上する。
以上、本実施形態について説明したが、本発明は上記実施形態に限定されることなく、本発明の範囲内において種々の変形例を採用することができる。
例えば、本実施形態においては、アシスト補正ゲイン演算部300によりゲインG1,G2,G3を演算して、推定アシストトルクの推定精度を高めているが、こうした補正を行わない構成であってもよい。
また、本実施形態においては、2系統のトルクセンサ41,42の検出値どうしの偏差を求め、その偏差が設定値以上である場合に、それぞれの信頼度C1,C2に基づいて異常となるトルクセンサを特定するが、検出値どうしの偏差の大小を判定することなく、信頼度C1,C2を演算し、信頼度C1,C2の大きさに基づいて各トルクセンサ41,42の異常を判定してもよい。