【解決手段】操舵部材(410)をドライバが保舵しているのか否かを判定する保舵判定装置(620)であって、操舵トルクと、車輪(300)の転舵角に関連する状態量の実測値とを参照して、当該状態量の予測値を逐次的に算出する予測値算出部(621)と、前記予測値算出部が算出した予測値と、当該予測値に対応する実測値とを参照して、前記操舵部材をドライバが保舵しているのか否かを判定する保舵判定部(622)とを備えている。
前記保舵判定部は、前記予測値算出部が算出した予測値と、当該予測値の分散と、当該予測値に対応する実測値を用いた更新値とに応じて、前記操舵部材をドライバが保舵しているのか否かを判定する
請求項1から3の何れか1項に記載の保舵判定装置。
【発明を実施するための形態】
【0010】
〔実施形態1〕
以下、本発明の実施形態1について、詳細に説明する。
【0011】
(車両900の構成)
図1は、本実施形態に係る車両900の概略構成を示す図である。
図1に示すように、車両900は、懸架装置(サスペンション)100、車体200、車輪300、タイヤ310、操舵部材410、ステアリングシャフト420、トルクセンサ430、舵角センサ440、トルク印加部460、ラックピニオン機構470、ラック軸480、エンジン500、ECU(Electronic Control Unit)(制御装置、制御部、ステアリング制御装置)600、発電装置700およびバッテリ800を備えている。ここで、懸架装置100、及びECU600は、本実施形態に係るサスペンション装置を構成する。また、操舵部材410、ステアリングシャフト420、トルクセンサ430、舵角センサ440、トルク印加部460、ラックピニオン機構470、ラック軸480、及びECU600は、本実施形態に係るステアリング装置(操舵装置)を構成する。
【0012】
車両900は、操舵部材410をドライバが保持して操舵している状態である保舵状態(ハンズオン)で走行する通常運転と、操舵部材410からドライバが手を放した手放し状態(ハンズオフ)で自動操舵制御により走行する自動運転とを実現する車両である。
【0013】
タイヤ310が装着された車輪300は、懸架装置100によって車体200に懸架されている。車両900は、四輪車であるため、懸架装置100、車輪300およびタイヤ310については、それぞれ4つ設けられている。
【0014】
なお、左側の前輪、右側の前輪、左側の後輪および右側の後輪のタイヤ及び車輪をそれぞれ、タイヤ310A及び車輪300A、タイヤ310B及び車輪300B、タイヤ310C及び車輪300C、並びに、タイヤ310D及び車輪300Dとも称する。以下、同様に、左側の前輪、右側の前輪、左側の後輪および右側の後輪にそれぞれ付随した構成を、符号「A」「B」「C」及び「D」を付して表現することがある。
【0015】
懸架装置100は、油圧緩衝装置、アッパーアーム及びロアーアームを備えている。また、油圧緩衝装置は、一例として、当該油圧緩衝装置が発生させる減衰力を調整する電磁弁であるソレノイドバルブを備えている。ただし、これは本実施形態を限定するものではなく、油圧緩衝装置は、減衰力を調整する電磁弁として、ソレノイドバルブ以外の電磁弁を用いてもよい。例えば、上記電磁弁として、電磁流体(磁性流体)を利用した電磁弁を備える構成としてもよい。
【0016】
エンジン500には、発電装置700が付設されており、発電装置700によって生成された電力がバッテリ800に蓄積される。
【0017】
ドライバの操作する操舵部材410は、ステアリングシャフト420の一端に対してトルク伝達可能に接続されており、ステアリングシャフト420の他端は、ラックピニオン機構470に接続されている。
【0018】
ラックピニオン機構470は、ステアリングシャフト420の軸周りの回転を、ラック軸480の軸方向に沿った変位に変換するための機構である。具体的には、ラックピニオン機構470は、ステアリングシャフト420の他端に接続され、ステアリングシャフト420と一体的に回転するピニオンギアを備えている。ラック軸480には、ピニオンギアに噛み合うラック歯が形成されており、ピニオンギアの回転に伴い、ラック軸480が軸方向に変位する。ラック軸480が軸方向に変位すると、タイロッド482(482A,482B)及びナックルバー484(484A,484B)を介して車輪300(300A,300B)が転舵される。
【0019】
トルクセンサ430は、ステアリングシャフト420に印加される操舵トルク、換言すれば、操舵部材410に印加される操舵トルクを検出し、検出結果を示すトルクセンサ信号をECU600に提供する。より具体的には、トルクセンサ430は、ステアリングシャフト420に内設されたトーションバーの捩れを検出し、検出結果をトルクセンサ信号として出力する。なお、トルクセンサ430として、ホールIC,MR素子、磁歪式トルクセンサなどの周知のセンサを用いてもよい。
【0020】
なお、ステアリングシャフト420のうち、操舵部材410から見てトーションバーよりも近い側のシャフトを第1のシャフトと呼び、操舵部材410から見てトーションバーよりも遠い側のシャフトを第2のシャフトと呼ぶことがある。また、ステアリングシャフト420には、第1のシャフト及び第2のシャフトに加え、第1のシャフトと第2のシャフトとを接続するジョイントが含まれる構成としてもよい。また、ピニオンギアよりも操舵部材410側に配置されているステアリングシャフト420及びトルク印加部460をまとめてコラム部と呼ぶことがある。コラム部には操舵部材410の一部を含めてもよい。
【0021】
舵角センサ440は、操舵部材410の舵角を検出し、検出結果をECU600に提供する。
【0022】
トルク印加部460は、ドライバが操舵部材410を保舵する通常運転時には、ECU600から供給されるステアリング制御量に応じたアシストトルク又は反力トルクを、ステアリングシャフト420に印加する。また、トルク印加部460は、ドライバが操舵部材410から手を放した状態で車両900が走行する自動運転時には、ECU600から供給されるステアリング制御量に応じた操舵トルクをステアリングシャフト420に印加する。
【0023】
トルク印加部460は、ステアリング制御量に応じたアシストトルク、反力トルク、又は操舵トルクを発生させる電動モータ(アシストモータ)と、当該アシストモータが発生させたトルクをステアリングシャフト420に伝達するトルク伝達機構とを備えている。また、トルク印加部460は、アシストモータの回転速を検出するモータ回転速センサと、アシストモータの回転角を検出するモータ回転角センサと、を備えている。
【0024】
なお、本明細書における「制御量」の具体例として、電流値、デューティー比、減衰率、減衰比等が挙げられる。
【0025】
なお、上述の説明において「トルク伝達可能に接続」とは、一方の部材の回転に伴い他方の部材の回転が生じるように接続されていることを指し、例えば、一方の部材と他方の部材とが一体的に成形されている場合、一方の部材に対して他方の部材が直接的又は間接的に固定されている場合、及び、一方の部材と他方の部材とが継手部材等を介して連動するよう接続されている場合を少なくとも含む。
【0026】
また、上記の例では、操舵部材410からラック軸480までが常時機械的に接続されたステアリング装置を例に挙げたが、これは本実施形態を限定するものではなく、本実施形態に係るステアリング装置は、例えばステア・バイ・ワイヤ方式のステアリング装置であってもよい。ステア・バイ・ワイヤ方式のステアリング装置に対しても本明細書において以下に説明する事項を適用することができる。
【0027】
また、
図1では、トルク印加部をステアリングシャフト上に設ける所謂コラムアシスト式のステアリング装置を図示しているが、これは本実施形態を限定するものではない。トルク印加部をラック軸上に設ける所謂ラックアシスト式のステアリング装置としてもよい。
【0028】
ECU600は、車両900が備える各種の電子機器を統括制御する。より具体的には、ECU600は、トルク印加部460に供給するステアリング制御量を調整することにより、ステアリングシャフト420に印加するアシストトルク又は反力トルクの大きさを制御する。
【0029】
また、ECU600は、懸架装置100に含まれる油圧緩衝装置が備えるソレノイドバルブに対して、サスペンション制御量を供給することによって当該ソレノイドバルブの開閉を制御する。この制御を可能とするために、ECU600からソレノイドバルブへ駆動電力を供給する電力線が配されている。
【0030】
また、車両900は、車輪300毎に設けられ各車輪300の車輪速を検出する車輪速センサ320、車両900の横方向の加速度を検出する横Gセンサ330、車両900の前後方向の加速度を検出する前後Gセンサ340、車両900のヨーレートを検出するヨーレートセンサ350、エンジン500が発生させるトルクを検出するエンジントルクセンサ510、エンジン500の回転数を検出するエンジン回転数センサ520、及びブレーキ装置が有するブレーキ液に印加される圧力を検出するブレーキ圧センサ530を備えている。また、車両900は、自動運転において参照する車両900周辺の画像を撮像するカメラ550を備えている。なお、車両900は、カメラ550に限らず、自動運転において参照する車両900周辺の状況を検出するレーダ等を備えていてもよい。これらの各種センサによる検出結果は、ECU600に供給される。
【0031】
なお、図示は省略するが、車両900は、ブレーキ時の車輪ロックを防ぐためのシステムであるABS(Antilock Brake System)、加速時等における車輪の空転を抑制するTCS(Traction Control System)、及び、旋回時のヨーモーメント制御やブレーキアシスト機能等のための自動ブレーキ機能を備えた車両挙動安定化制御システムであるVSA(Vehicle Stability Assist)制御可能なブレーキ装置を備えている。
【0032】
ここで、ABS、TCS、及びVSAは、推定した車体速に応じて定まる車輪速と、車輪速センサ320によって検出された車輪速とを比較し、これら2つの車輪速の値が、所定の値以上相違している場合にスリップ状態であると判定する。ABS、TCS、及びVSAは、このような処理を通じて、車両900の走行状態に応じて最適なブレーキ制御やトラクション制御を行うことにより、車両900の挙動の安定化を図るものである。
【0033】
また、上述した各種のセンサによる検出結果のECU600への供給、及び、ECU600から各部への制御信号の伝達は、CAN(Controller Area Network)370を介して行われる。
【0034】
CAN370を介してECU600へ供給される信号は、例えば、以下の信号を含んでいる(括弧書きは取得元を示す)。
・4輪の車輪速(車輪速センサ320A〜D)
・ヨーレート(ヨーレートセンサ350)
・前後G(前後Gセンサ340)
・横G(横Gセンサ330)
・ブレーキ圧(ブレーキ圧センサ530)
・エンジントルク(エンジントルクセンサ510)
・エンジン回転数(エンジン回転数センサ520)
・舵角(舵角センサ440)
・操舵トルク(トルクセンサ430)
・車両900周辺の画像(カメラ550)
【0035】
(ECU600)
図2は、ECU600の概略構成を示す図である。
【0036】
図2に示すように、ECU600は、ステアリング制御部610と、目標進行路決定部650とを備えている。また、ECU600は、後述する保舵判定装置620を備える構成としてもよい。
【0037】
目標進行路決定部650は、CAN370に含まれる各種のセンサ検出結果を参照し、目標進行路を決定する。目標進行路決定部650は、例えば、カメラ550によって撮像された車両900周辺の画像、及び各種のセンサ検出結果に基づく車両900周辺の路面状況を参照して、目標舵角を決定する。
【0038】
目標進行路決定部650は、決定した目標舵角をステアリング制御部610に供給する。
【0039】
ステアリング制御部610は、CAN370に含まれる各種のセンサ検出結果と、目標進行路決定部650により決定された目標舵角とを参照し、トルク印加部460に供給するステアリング制御量の大きさを決定する。
【0040】
なお、本明細書において「〜を参照して」との表現には、「〜を用いて」「〜を考慮して」「〜に依存して」などの意味が含まれ得る。
【0041】
また、「制御量の大きさを決定する」との処理には、制御量の大きさをゼロに設定する、すなわち、制御量を供給しない場合も含まれる。
【0042】
(ステアリング制御部と保舵判定装置)
続いて、
図3を参照して、ステアリング制御部610、および保舵判定装置620について説明する。
図3は、ステアリング制御部610、および保舵判定装置620の構成例を示すブロック図である。
【0043】
図3に示すように、ステアリング制御部610は、基本制御量算出部611、位置制御目標値平滑化部612、ラック位置制御電流算出部613、運転モード切替部614、及び加算部615を備えている。
【0044】
保舵判定装置620は、予測値算出部621と、保舵判定部622とを備えている。保舵判定装置620は、操舵部材410をドライバが保舵しているのか否かを判定する装置である。
【0045】
基本制御量算出部611は、トルクセンサ430から供給される操舵トルク(実トルク)を参照し、アシストトルク、又は反力トルクの大きさを制御するための基本制御量を算出する。基本制御量算出部611によって算出された基本制御量は、加算部615に供給される。
【0046】
位置制御目標値平滑化部612は、入力される目標舵角に対して、ローパスフィルタを作用させることにより、平滑化された目標舵角である平滑化後目標舵角を生成し、生成した平滑後目標舵角をラック位置制御電流算出部613に供給する。また、位置制御目標値平滑化部612は、予め設定された固定周波数帯のノイズを除去する構成を有していてもよいし、CAN370に含まれる各種のセンサ検出結果に応じて可変の周波数帯のノイズを除去する構成を有していてもよい。
【0047】
ラック位置制御電流算出部613は、入力される実舵角と、平滑化後目標舵角と、アシストモータのモータ回転速又はピニオンギアの回転速とを参照して、ラック変位と、ラック変位の方向とに対応するラック位置制御量を算出する。当該ラック位置制御量は一例として、電流値として算出される。ラック位置制御電流算出部613は、算出したラック位置制御量を運転モード切替部614に供給する。
【0048】
運転モード切替部614は、保舵判定装置620から供給されるハンズオン判定フラグに応じて、ラック位置制御電流算出部613から供給されるラック位置制御量に対して補正を行うことにより、補正後のラック位置制御量を生成する。
【0049】
一例として、ハンズオン判定フラグがハンズオンを示している場合、運転モード切替部614は、ラック位置制御電流算出部613が算出したラック位置制御量を減少させることにより、補正後のラック位置制御量を生成し、生成した補正後のラック位置制御量を加算部615に出力する。
【0050】
一方で、ハンズオン判定フラグがハンズオフを示している場合、一例として、運転モード切替部614は、ラック位置制御電流算出部613が算出したラック位置制御量をそのまま加算部615に出力する。
【0051】
加算部615は、運転モード切替部614から供給された補正制御量、基本制御量算出部611によって算出された基本制御量と、を加算し、加算後の制御量を、トルク印加部460に供給する。
【0052】
一方で、保舵判定装置620が備える予測値算出部621は、操舵トルクと、車輪の転舵角に関連する状態量の実測値とを参照して、車輪の転舵角に関連する状態量の予測値を逐次的に算出する。ここで、予測値算出部621は、操舵トルクに代えて、又は操舵トルクに加えて、ピニオンギアの回転角、ピニオンギアの角速度、操舵角及び操舵角速度の少なくとも一つを参照して車輪の転舵角に関連する状態量の予測値を算出する構成としてもよい。また、車輪の転舵角を示す状態量としては、車輪を転舵するモータの回転角、又は車輪に接続されたラック軸の変位等が挙げられる。本実施形態に係る保舵判定装置620は、上述した車輪の転舵角に関連する状態量を参照することによって、操舵部材410をドライバが保舵しているのか否かを好適に判定することができる。
【0053】
例えば、予測値算出部621は、時刻t
nにおける操舵トルクと、時刻t
nにおけるピニオンギアの回転角の実測値とを参照して、時刻t
n+1におけるピニオンギアの回転角の予測値を逐次的に算出する。ここで、添え字nは、時刻を指定するためのインデックスであり、任意の値を取り得る。なお、上述したピニオンギアの回転角は、一例として、トルク印加部460が備えるモータ回転速センサが検出するアシストモータの回転角を参照して、保舵判定装置620にて算出することができる。
【0054】
また、車両900がラック軸480の変位を測定するストロークセンサを備える構成としてもよい。この場合、予測値算出部621が、ピニオンギアの回転角の実測値に代えて、時刻t
nにおけるストロークセンサによる実測値を参照することによって、時刻t
n+1におけるラック軸480の変位の予測値を逐次的に算出する構成であってもよい。
【0055】
保舵判定部622は、予測値算出部621が算出した車輪の転舵角に関連する状態量の予測値と、この予測値に対応する実測値とを参照して、操舵部材をドライバが保舵しているのか否かを判定する。
【0056】
例えば、保舵判定部622は、予測値算出部621が算出した時刻t
n+1におけるピニオンギアの回転角の予測値と、当該予測値に対応する時刻t
n+1におけるピニオンギアの回転角の実測値とを参照して、ドライバによる保舵の有無を判定する。また、保舵判定部622は、予測値算出部621が算出した時刻t
n+1におけるラック軸変位の予測値と、当該予測値に対応する時刻t
n+1におけるラック軸変位の実測値とを参照して、操舵部材をドライバが保舵しているのか否かを判定する構成としてもよい。
【0057】
そして、保舵判定部622は、操舵部材410をドライバが保舵しているのか否かを判定した結果を示すハンズオン判定フラグを運転モード切替部614に供給する。一例として、保舵判定部622は、操舵部材410をドライバが保舵していると判定した場合には、ハンズオン判定フラグの値を1に設定したうえで出力し、操舵部材410をドライバが保舵していないと判定した場合には、ハンズオン判定フラグの値を0に設定したうえで出力する。
【0058】
保舵判定部622は、より具体的には、予測値算出部621が算出した車輪の転舵角に関連する状態量の予測値と、この予測値に対応する実測値との差に応じて、操舵部材410をドライバが保舵しているのか否かを判定する構成とすることができる。
【0059】
運転モード切替部614は、ハンズオン判定フラグが出力されると、運転モードを自動運転から通常運転に切り替えるとともに、運転モードに応じたラック位置制御電流を出力することで、ステアリング制御量を変更する。なお、運転モードを自動運転から通常運転に切り替える前に、ECU600は、スピーカから音を発生させたり、振動部により操舵部材を振動させたりする事により、運転手へモードの切り替えを報知する構成としてもよい。
【0060】
このように、ECU600(ステアリング制御装置)は、ステアリング制御部610と、保舵判定装置620とを備え、保舵判定装置620による判定結果に応じてステアリング制御量を変更する。
【0061】
図4は、保舵判定装置620が備える予測値算出部621の概略構成を示す図である。
【0062】
予測値算出部621は、弾性成分算出部6211と、減衰成分算出部6212と、偏心起因成分算出部6213と、摩擦成分算出部6214と、加算部6215と、操舵角算出部6216と、微分演算部6217と、微分演算部6218とを備えている。
【0063】
操舵角算出部6216は、操舵トルクとピニオンギアの回転角θ
piとを参照して、操舵角θ
swを算出する。一例として、操舵角算出部6216は、ピニオンギアの回転角から第2のシャフトの回転角を算出すると共に、操舵トルクにトーションバーの剛性係数の逆数を乗算することによってトーションバーの捩れ角を算出する。そして、操舵角算出部6216は、第2のシャフトの回転角と、トーションバーの捩れ角とを用いて操舵角θ
swを算出する。
【0064】
なお、操舵角算出部6216は、舵角センサ440が検出した舵角を、操舵角θ
swとして出力する構成としてもよい。
【0065】
微分演算部6217は、操舵角算出部6216が算出した操舵角θ
swに対して時間微分演算(時間差分演算)を行うことにより操舵角速度を算出する。操舵角速度を本明細書において、時間微分を示すドットを用いて、「ドット付のθ
sw」と表現することもある。
【0066】
微分演算部6218は、ピニオンギアの回転角θ
piに対して時間微分演算(時間差分演算)を行うことによりモータ角速度を算出する。モータ角速度を本明細書において、時間微分を示すドットを用いて、「ドット付のθ
pi」と表現することもある。
【0067】
弾性成分算出部6211は、操舵角θ
swとピニオンギアの回転角θ
piとの差にばね係数Kを乗算することによって車輪の転舵に伴う弾性成分を算出し、算出した弾性成分を加算部6215に供給する。
【0068】
減衰成分算出部6212は、ドット付のθ
swと、ドット付のθ
piとの差に減衰係数Dを乗算することによって車輪の転舵に伴う減衰成分を算出し、算出した減衰成分を加算部6215に供給する。
【0069】
偏心起因成分算出部6213は、操舵角θ
swの正弦に対して、定数d
eccと重力加速度gとを乗算したものを、操舵部材410のイナーシャ(慣性モーメント)I
swで除算することによって操舵部材410の偏心起因成分を算出する。そして、算出した偏心起因成分を加算部6215に供給する。ここで、定数d
eccは、操舵部材410の回転中心から操舵部材410の重心までの距離を示す定数である。
【0070】
摩擦成分算出部6214は、ドット付のθ
swのタンジェントハイパボリックと、ドット付のθ
swとの線形結合を演算することによって車輪の転舵に伴う摩擦成分を算出し、算出した摩擦成分を加算部6215に供給する。上記の線形結合に用いられる摩擦係数を、p
1、p
2、p
3と呼ぶことがある。
【0071】
加算部6215は、取得した(1)車輪の転舵に伴う弾性成分、(2)車輪の転舵に伴う減衰成分、(3)操舵部材の偏心起因成分、及び(4)車輪の転舵に伴う摩擦成分のうち、少なくとも2つの成分を加算することによって車輪の転舵角に関連する状態量の予測値を算出する。なお、加算部6215による加算処理には、ある成分に負号を付けたうえで加算する処理、すなわち、減算処理も含まれ得る。ここで、(1)車輪の転舵に伴う弾性成分、(2)車輪の転舵に伴う減衰成分、及び(4)車輪の転舵に伴う摩擦成分等の車輪の転舵に伴う状態量としては、コラム部によって生じる状態量等が挙げられる。
【0072】
以上の構成を有する予測値算出部621が演算する状態方程式を例示すれば以下の通りである。
【数1】
上記式から分かるように、上記状態方程式には、弾性成分として
【数2】
及び
【数3】
が含まれており、減衰成分として
【数4】
及び
【数5】
が含まれており、偏心起因成分として、
【数6】
が含まれており、摩擦成分として、
【数7】
が含まれている。
【0073】
本実施形態に係る保舵判定装置620は、上述した状態方程式を用いて車輪の転舵角に関連する状態量の予測値を算出することによって、操舵部材410をドライバが保舵しているのか否かを好適に判定することができる。
【0074】
また、本実施形態に係る保舵判定装置620は、状態量の予測値を算出するにあたって、上述した弾性成分、減衰成分、及び摩擦成分を用いることによって、実機の基本的な特性を、簡易なモデルで表現することができる。
【0075】
また、本実施形態に係る保舵判定装置620は、状態量の予測値を算出するにあたって、上述した偏心起因成分を用いることによって、ハンドル形状等で重心がセンターでないハンドルについても、高精度にハンズオン状態を検出することができる。
【0076】
また、本実施形態に係る保舵判定装置620は、状態量の予測値を算出するにあたって、上述した摩擦係数p
1、p
2、p
3を用いることによって、高精度にハンズオン状態を検出することができる。
【0077】
ここで、既に説明したものも含め、上記状態方程式に現れる各表式をまとめると以下の通りである。
θ
sw:操舵角
ドット付のθ
sw:操舵角速度
θ
pi:ピニオンギアの回転角
ドット付のθ
pi:ピニオンギアの角速度
K:弾性係数
D:減衰係数
d
ecc:操舵部材の回転中心から操舵部材の重心までの距離を示す定数
g:重力加速度
I
sw:操舵部材のイナーシャ(慣性モーメント)
u:操舵トルク
p
1、p
2、p
3:摩擦係数
【0078】
また、上記表式のうち、定数以外の成分である以下の成分は、本明細書における予測値算出部621が演算の対象とする状態量の一例である。
θ
sw:操舵角
ドット付のθ
sw:操舵角速度
θ
pi:ピニオンギアの回転角
ドット付のθ
pi:ピニオンギアの角速度
u:操舵トルク。
【0079】
予測値算出部621が演算の対象とする各状態量は、CAN370に含まれる各種のセンサ検出結果により取得される実測値に基づくものであってもよいし、時系列データに対する状態推定法であるカルマンフィルタを用いて導出される推定値であってもよい。カルマンフィルタを用いた推定値の算出方法については後述する。
【0080】
〔保舵判定装置による処理の流れ〕
図5は、保舵判定装置620による処理の流れの一例を示すフローチャートである。
【0081】
(ステップS1)
保舵判定装置620の予測値算出部621は、各状態量の実測値を取得する。一例として、予測値算出部621は、トルクセンサ430から供給される時刻t
nにおける操舵トルク(実トルク)を取得する。また、予測値算出部621は、トルク印加部460が備えるモータ回転角センサから供給されるピニオンギアの時刻t
nにおける回転角の実測値を取得する。
【0082】
(ステップS2)
続いて、予測値算出部621は、ステップS1において取得した各状態量の実測値を参照して、各状態量の予測値を算出する。一例として、予測値算出部621は、時刻t
nにおける操舵トルクと、時刻t
nにおけるピニオンギアの回転角の実測値とを参照して、ドライバが手放し状態であると仮定した場合の時刻t
n+1におけるピニオンギアの回転角の予測値を算出する。
【0083】
(ステップS3)
続いて、保舵判定装置620の保舵判定部622は、予測値算出部621が算出した予測値と、当該予測値に対応する実測値とを参照して、操舵部材410をドライバが保舵しているのか否かを判定する。一例として、保舵判定部622は、モータ回転角センサから供給される時刻t
n+1におけるピニオンギアの回転角の実測値を取得する。保舵判定部622は、時刻t
n+1におけるピニオンギアの回転角の実測値と、ステップS2で算出した時刻t
n+1におけるピニオンギアの回転角の予測値とを参照して、操舵部材410をドライバが保舵しているのか否かを判定する。
【0084】
より具体的には、保舵判定部622は、時刻t
n+1におけるピニオンギアの回転角の実測値と、ステップS2で算出した時刻t
n+1におけるピニオンギアの回転角の予測値との差の絶対値が所定の閾値以上である場合に、操舵部材410をドライバが保舵していると判定する構成とすることができる。
【0085】
保舵判定部622は、操舵部材410をドライバが保舵していると判定すると(ステップS3でYES)、ステップS4に進む。保舵判定部622は、操舵部材410をドライバが保舵していないと判定すると(ステップS3でNO)、ステップS5に進む。
【0086】
(ステップS4)
保舵判定部622は、操舵部材410をドライバが保舵している保舵状態を示すフラグ(ハンズオンフラグ)を出力する。一例として、保舵判定部622は、1の値を有するハンズオン判定フラグを出力する。
【0087】
(ステップS5)
保舵判定部622は、操舵部材410をドライバが保舵していない手放し状態を示すフラグ(ハンズオフフラグ)を出力する。一例として、保舵判定部622は、0の値を有するハンズオン判定フラグを出力する。
【0088】
このように、保舵判定装置620は、ドライバが手放し状態であると仮定した場合のピニオンギアの回転角の予測値を算出し、ピニオンギアの回転角の予測値と、モータ回転角センサから供給されるピニオンギアの回転角の実測値と、を比較する。そして比較の結果に応じて、操舵部材410をドライバが保舵しているのか否かの判定を行う。
【0089】
なお、上述した保舵判定装置620による処理の流れにおいて、予測値算出部621が、ピニオンギアの回転角の実測値及び予測値に代えて、車両900が備えるストロークセンサからラック軸480の変位の実測値を取得する構成としてもよい。この場合、ラック軸480の変位の実測値及び予測値を用いて、操舵部材410をドライバが保舵しているのか否かの判定を行う。
【0090】
また、予測値算出部621が、カルマンフィルタを用いて状態量の推定値を逐次的に算出する構成とし、ステップS3において保舵判定部622は、予測値算出部621が算出した予測値と、当該予測値の分散と、当該予測値に対応する実測値を用いた更新値とに応じて、操舵部材410をドライバが保舵しているのか否かを判定する構成としてもよい。
【0091】
本実施形態に係る保舵判定装置620は、上述の予測値と、上述の予測値の分散と、上述の予測値に対応する実測値を用いた更新値とを参照することによって、操舵部材410をドライバが保舵しているのか否かを好適に判定することができる。
【0092】
また、本実施形態に係る保舵判定装置620では、特別なセンサを追加することなく、高精度にハンズオン状態を検出することができる。
【0093】
以下では、予測値算出部621が、カルマンフィルタを用いて状態量の推定値を逐次的に算出する構成についてより具体的に説明する。
【0094】
〔カルマンフィルタによる推定値の算出処理の流れ〕
図6は、カルマンフィルタを用いた推定値の逐次的な算出処理の流れを示すフローチャートである。
【0095】
(ステップS11)
まず、予測値算出部621は、初期パラメータとして、時刻t=0における、状態量x
t(t=0)とP
t(t=0)とを決定する。ここで、状態量x
t(t=0)としては、状態方程式に関連して例示した状態量の何れかの初期値を用いることができ、一例として、ピニオンギアの回転角の初期値を用いることができる。また、P
tは時刻tにおける解析誤差共分散行列を示す。以下では、P
tのことを単に共分散行列とも呼ぶ。
【0096】
(ステップS12)
続いて、予測値算出部621は、以下の式(2)、(3)に基づき、時刻tをt+1にインクリメントしたうえで状態量の予測値x
tと共分散行列P
tとを算出する。
【数8】
ここで、F
t−1(・)は状態量x
t−1の時間発展を与える線形又は非線形の作用素を示し、w
t−1は時間発展に伴う誤差項を示し、Q
tはプロセスノイズによる誤差項を示す。また、上付きのTは、転置行列をとることを示す。
【0097】
(ステップS13)
次に、予測値算出部621は、CAN370を介して、時刻tにおける車両900の走行状態の各状態量の実測値y
tを取得する。ここで、状態量の実測値y
tとしては、状態方程式に関連して例示した状態量の何れかの実測値を用いることができ、一例として、ピニオンギアの回転角の実測値を用いることができる。
【0098】
(ステップS14)
次に、予測値算出部621は、ステップS12で算出した共分散行列P
tを用いることによって、以下の式(4)よりカルマンゲインK
tを算出する。
【数9】
ここで、R
tは誤差分散を示す。また、H
tは観測行列を示し、全状態量から観測対象となる一部の状態量を取り出すための行列である。また、上付きの「−1」は、逆行列をとることを示す。
【0099】
次に、予測値算出部621は、ステップS12において算出した状態量の予測値x
t、ステップS13において取得した各状態量の実測値y
t、および上記式(4)で算出したカルマンゲインK
tを用いて、以下の式(5)より、時刻tにおける状態量x
tの更新値x
testを算出する。
【数10】
【0100】
図7は、ある状態量に対して予測値算出部621が算出した時刻t−1における予測値x
t−1と、予測値x
t−1を時間発展させて得られる予測値x
tと、当該予測値x
tに実測値y
tを加味して得られるx
testとの関係を模式的に示すグラフである。
【0101】
(ステップS15)
次に、ステップS15において、予測値算出部621は、計算を終了すべきか否かを判断し、終了させる場合には、本フローを終了させ、終了させない場合には、ステップS12に戻り、更新値x
testをx
tとして用いて計算を続ける。
【0102】
このようにして、予測値算出部621は、各状態量の予測値及び分散(共分散)並びに当該予測値を参照した更新値を逐次的に算出する。そして、保舵判定部622は、予測値算出部621が算出した予測値と、当該予測値の分散と、当該予測値に対応する実測値を用いた更新値とに応じて、操舵部材410をドライバが保舵しているのか否かを判定する。
【0103】
一例として、保舵判定部622は、予測値算出部621が算出した予測値x
tと、当該予測値x
tに対応する更新値x
testであって、当該予測値x
tに対応する実測値y
tを用いた更新値x
testとの間のマハラノビス距離を算出し、算出したマハラノビス距離が、所定の閾値以上である場合に、操舵部材410をドライバが保舵していると判定する。
【0104】
ここで、ある状態量の予測値と更新値との間のマハラノビス距離D
MAHとは、当該ある状態量が1変数である場合、予測値と更新値との間のユークリッド距離D
EUCを分散の平方根(標準偏差)で除算して求めることができる。
【0105】
本実施形態に係る保舵判定装置620は、状態量の予測値x
tを算出するにあたって、上述のように非線形要素を組み込むことによって、より実機に近い特性を推定することができ、ハンズオン状態の検出精度を高めることができる。
【0106】
図8は、ある状態量について、分散が相対的に大きい場合と小さい場合とを模式的に示すグラフである。グラフAは、分散が相対的に小さい場合を示し、グラフBは、分散が相対的に大きい場合を示している。予測値と更新値とのユークリッド距離D
EUCが同じ値であっても、分散が相対的に大きい場合には、分散が相対的に小さい場合に比べて、予測値と更新値との間のマハラノビス距離D
MAHは小さくなる。
【0107】
より一般に状態量が多変数の場合、
図9に示すように、状態量空間中における予測値(予測値ベクトル)と更新値(更新値ベクトル)と、共分散とを用いてマハラノビス距離を求めることができる。
【0108】
このようにして、本実施形態に係る保舵判定部622は、予測値算出部621が算出した予測値の分散を加味したうえで、予測値と更新値との距離を判定することができるため、操舵部材410をドライバが保舵しているのか否かをより好適に判定することができる。
【0109】
〔ソフトウェアによる実現例〕
ECU600の制御ブロック(ステアリング制御部610、保舵判定装置620)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
【0110】
後者の場合、ECU600は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【0111】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。