(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0014】
以下、図面に基づいて本発明の一実施形態を説明する。
【0015】
[第1実施形態]
図1〜
図11に本発明の第1実施形態を示す。
図1に示す運転支援装置は自車両Mに搭載されており、自車位置推定装置1と操舵制御ユニット21とを有している。自車位置推定装置1は、自車位置推定手段としての自車位置推定演算部2と記憶手段としての高精度道路地図データベース3とを有している。この自車位置推定演算部2、及び操舵制御ユニット21は、CPU,RAM,ROM等を備える周知のマイクロコンピュータ、及びその周辺機器で構成されており、ROMにはCPUで実行するプログラムやベースマップ等の固定データ等が予め記憶されている。
【0016】
又、自車位置推定演算部2の入力側に、複数の測位衛星から発信される測位信号を受信するGNSS受信部11、自車両Mに作用するヨーレートYawr[rad/sec]を検出するヨーレートセンサ12、自車両Mの車速(自車速)V[m/sec]を検出する自車速検出手段としての車速センサ13、ステアリング軸に作用する軸トルクを検出する操舵トルクセンサ14、及び前方認識手段としてのカメラユニット16等、自車位置を推定し、自車両Mを走行車線に沿って走行させる際に必要とするセンサ類が接続されている。
【0017】
カメラユニット16は、車室内前部の上部中央に固定されており、車幅方向中央を挟んで左右対称な位置に配設されているメインカメラ16a及びサブカメラ16bからなるステレオカメラと、画像処理ユニット(IPU)16cとを有している。このカメラユニット16は、両カメラ16a,16bで撮像した自車両M前方の前方画像情報をIPU16cにて所定に画像処理して、自車位置推定演算部2へ送信する。
【0018】
一方、この自車位置推定演算部2の出力側に操舵制御ユニット21が接続されている。この操舵制御ユニット21は、自動運転等において自車両Mを走行車線に沿って走行させるための操舵制御(車線維持制御)を実行するもので、具体的には、自車位置推定装置1からのフィードバック信号によって、自車両Mを車線中央に設定した目標進行路に沿って走行させるための横位置制御が行われる。
【0019】
又、高精度道路地図データベース3はHDD等の大容量記憶媒体であり、高精度な道路地図情報(ダイナミックマップ)3aが記憶されている。この高精度道路地図情報3aには、自動運転を行う際に必要とする車線データ(車線幅データ、車線中央位置座標データ、車線の進行方位角データ、制限速度等)が道路地図上の各車線に数メートル間隔で格納されている。
【0020】
一方、自車位置推定演算部2は、自車両Mを推定し道路地図上にマップマッチングして、自車両Mを、いわゆる電波航法によって走行させる機能として、先行車情報取得手段としての先行車情報取得部2a、目標ハンドル角設定手段としての車線維持目標ハンドル角演算部2b、及び、横位置補正処理部2cを備えている。
【0021】
先行車情報取得部2aは、カメラユニット16で撮像した自車両Mの前方画像情報に基づき、自車両Mが走行している走行車線(自車進行路)の前方を追従対象となる先行車P(
図10参照)が走行しているか否かを調べる。この先行車Pは、例えば、周知のテンプレートマッチング法により認識する。
【0022】
そして、追従対象となる先行車Pが検出された場合、先行車Pの走行軌跡を先行車情報として取得する。尚、先行車Pを追従する走行では、この走行軌跡が自車両Mの車線走行に関する外的要因となる。
【0023】
この先行車情報取得部2aは、特に、
図9に示すように、例えば、自車両Mが走行している走行車線の左右を区画する左右区画線Ll,Lrが積雪等により隠れており、或いは劣化によるかすれ等の影響で、上述した前方画像情報からは左右区画線Ll,Lrを認識することが困難な場合、先行車Pの走行軌跡を、自車両Mの目標進行路を補正するためのパラメータとして取得する。
【0024】
又、車線維持目標ハンドル角演算部2bは、自車両Mを走行車線に沿って走行させる車線維持制御を実行させるための目標ハンドル角δTを求める。すなわち、GNSS受信部11で受信した、測位情報発信手段としての複数の測位衛星から発信される測位信号に基づき測位した自車位置に基づき道路地図情報上の自車位置を特定し、道路地図上の走行車線中央に設定した目標進行路に沿って走行させるためのハンドル角を求め、このハンドル角を目標ハンドル角δTとして設定する(電波航法)。
【0025】
その際、カメラユニット16で撮像した前方画像情報に基づき、自車両Mの走行車線を区画する左右区画線Ll,Lrが認識されている場合は、左右区画線Ll,Lrの中央(車線中央)を自車両Mが走行するように、道路地図に基づいて設定したハンドル角を横位置補正して目標ハンドル角δTを設定する。尚、カメラユニット16による左右区画線Ll,Lrの認識は、例えば、道路と区画線Ll,Lrとのエッジを輝度差による二値化処理を行い、これを最小二乗法により曲線近似することで行う。或いは、ハフ変換、テンプレートマッチング等の手法を用いることにより認識することも可能である。
【0026】
一方、雪、かすれ等の影響で前方画像情報からは左右区画線Ll,Lrを取得することができない場合で、且つ上述した先行車情報取得部2aで先行車情報が取得されていない場合は、上述した電波航法により車線維持制御を実行するが、先行車情報が取得された場合は、先行車Pの走行軌跡から該走行軌跡の曲率(先行車曲率)RSENを求め、自車両Mが走行している道路地図上の曲率(地図曲率)RMPUとの差分に応じて、電波航法により設定したハンドル角を横位置補正して目標ハンドル角δTを設定することで、先行車Pに追従する車線維持制御を実行させる。
【0027】
上述した車線維持目標ハンドル角演算部2bで設定される目標ハンドル角δTは、具体的には、
図2に示す車線維持目標ハンドル角演算ルーチンに従って求められる。
【0028】
このルーチンでは、先ず、ステップS1で、カメラユニット16で撮像した前方画像情報を読込み、ステップS2で、自車両Mが走行している走行車線の左右を区画する左右区画線Ll,Lrが認識されているか否かを調べる。そして、左右区画線Ll,Lrが認識されていない場合はステップS3へ進み、又、認識されている場合は、ステップS10へジャンプする。
【0029】
ステップS10では、従来と同様、電波航法により設定したハンドル角を、前方画像情報から取得した左右区画線Ll,Lrの間の車幅に基づいて算出した車線中央と道路地図上の車線中央との横位置差分に応じて、横位置補正することで目標ハンドル角δTを算出し、ルーチンを抜ける。
【0030】
一方、ステップS3へ進むと、GNSS受信部11で受信した測位信号に基づいて測位した自車位置情報を読込み、ステップS4で、自車位置を道路地図上にマップマッチングさせる。次いで、ステップS5へ進み、特定した道路地図上の自車位置に基づき、その直近前方に記憶されている車線データ(地図曲率、進行方位等)を読込む。尚、このステップS3〜S5での処理が、本発明の走行車線推定手段に対応している。
【0031】
そして、ステップS6でフィードフォワード(FF)ハンドル角演算処理を行い、又、ステップS7で目標ハンドル角のヨー角フィードバック項であるヨー角フィードバック(FB)ハンドル角演算処理を行い、更に、ステップS8で目標ハンドル角の横位置フィードバック項である横位置FBハンドル角演算処理を行う。そして、ステップS9で目標ハンドル角δTが設定される。
【0032】
[FFハンドル角演算]
ステップS6でのFFハンドル角演算処理は、
図3に示すFFハンドル角演算サブルーチンに従って行われる。このサブルーチンでは、先ず、ステップS11で、車速センサ13で検出した自車速Vを読込み、続く、ステップS12で、道路地図上の自車位置直近前方に記憶されている車線データの地図曲率RMPUを読込む。
【0033】
そして、ステップS13で、自車速Vと地図曲率RMPUに基づきFFハンドル角KFFを設定して、
図2のステップS7へ進み、ヨー角FBハンドル角演算処理を実行する。
【0034】
このFFハンドル角KFFは、例えば、
図7に示すFFハンドル角ベースマップを参照して設定する。このFFハンドル角ベースマップには、地図曲率RMPUとFFハンドル角KFFとが車速Vを傾きとしてほぼ比例した値で格納されている。この場合、FFハンドル角KFFを計算式から求めるようにしても良い。すなわち、先ず、自車速Vと地図曲率RMPUに基づきヨーレート(=V・RMPU)を算出し、ハンドル角とヨーレートとの関係を示すモデル式の逆モデル式からハンドル角KFFを算出する。尚、
図7においては、自車速Vの単位を便宜的に[Km/h]で表している。
【0035】
[ヨー角FBハンドル角演算]
図2のステップS7でのヨー角FBハンドル角演算処理は、
図4に示すヨー角FBハンドル角演算サブルーチンに従って実行される。このサブルーチンは、先ず、ステップS21で、ヨーレートセンサ12で検出したヨーレートYawrを読込み、ステップS22で、車速センサ13で検出した自車速Vを読込む。
【0036】
その後、ステップS23で、ヨーレートYawrを自車速Vで除算して自車両Mの旋回曲率(自車曲率)Ryawrを算出し(Ryawr←Yawr/V)、ステップS24へ進み、自車両Mが走行している道路の車線データから地図曲率RMPUを読込む。尚、このステップS23での処理が自車曲率算出手段に対応している。
【0037】
そして、ステップS25で、地図曲率RMPUと自車曲率Ryawrとの差分(曲率差分)により生じる角度、すなわち、地図曲率RMPUに対する自車曲率Ryawrによる自車両Mの向きの偏差から、道路方位偏差(推定ヨー角偏差)Yawdiff [rad](
図8参照)を、
Yawdiff←∫V・Ts・(RMPU−Ryawr)dt
に基づいて算出する。ここで、Tsはサンプリング周期(演算周期)である。
【0038】
次いで、ステップS26へ進み、道路方位偏差Yawdiffを0にするためのヨー角FBハンドル角KFByを、周知のPID制御等により設定して、
図2のステップS8へ進み、横位置FBハンドル角演算処理を実行する。
【0039】
[横位置FBハンドル角演算処理]
図2のステップS8での横位置FBハンドル角演算処理は、
図5に示す横位置FBハンドル角演算サブルーチンに従って実行される。このサブルーチンでは、先ず、ステップS31で前回の演算時まで積分された自車横位置Xzを読込む。
図8に示すように、この自車横位置Xzは、カメラユニット16にて左右区画線が認識できないと判定された最初のルーチン実行時に設定される地図上の車線中央の位置座標を横位置原点として演算周期で積分したものである。
【0040】
そして、ステップS32へ進み、GNSS受信部11で受信した測位信号に基づいて測位した自車位置情報に基づき、前回から今回の演算周期における地図上の自車横移動量Xrateを算出し(
図8参照)、ステップS33で自車横位置
Xzと自車横移動量Xrateとを加算して、自車横位置Xを算出する。
【0041】
そして、ステップS34へ進み、先行車検出フラグFSENの値を参照し、FSEN=0の場合は、そのままステップS36へ進み、又、FSEN=1の場合は、ステップS35へ分岐する。この先行車検出フラグFSENは、後述する
図6に示す横位置補正処理ルーチンおいて、追従対象となる先行車が認識されて推定横位置偏差Xdiffが算出された場合にセットされ、又、カメラユニット16にて左右区画線が認識されている状態、或いは先行車Pが検出されず、或いは先行車Pの走行が安定していない場合はクリアされる。
【0042】
ステップS35へ分岐すると、自車横位置Xを、自車横位置Xに推定横位置偏差Xdiffを加算した値で更新して(X←X+Xdiff)、ステップS36へ進む。この推定横位置偏差Xdiffは、後述する
図6のステップS50において設定されるものであり、詳細については後述する。
【0043】
そして、ステップS36へ進むと、自車横位置Xを0にするための横位置FBハンドル角KFBxを、周知のPID制御等により設定して、
図2のステップS9へ進み、目標ハンドル角設定処理を実行して、ルーチンを抜ける。
【0044】
[目標ハンドル角設定処理]
図2のステップS9では、各ハンドル角KFF,KFBy,KFBx等、走行制御にかかるフィードフォワード制御系、フィードバック制御系の各ハンドル角に、所定重み付けのゲインを乗算した上で、加算して自車両Mを走行車線の中央に沿って走行させる目標ハンドル角δTを設定してルーチンを抜ける。
【0045】
この目標ハンドル角δTは、操舵制御ユニット21に設けられている操舵制御部21aにて読込まれる。操舵制御部21aでは、目標ハンドル角δTに基づいて、ステアリング軸を駆動させる電動パワステ(EPS)モータ(図示せず)を駆動させるEPS付加トルクを、演算により、或いはEPSモータ出力マップを参照して設定し、このEPS付加トルクにてEPSモータ(図示せず)を駆動制御して、自車両Mを、走行車線中央に設定されている目標進行路に沿って走行させる。
【0046】
ところで、
図9に示すように、自車両Mが走行する車線の左右を区画する区画線Ll,Lrが、道路を除雪した雪が積層されて隠れ、或いは劣化によりかすれて、カメラユニット16で撮像した前方画像からは認識することができない場合、本実施形態では、上述した
図2に示す車線維持目標ハンドル角演算ルーチンに従い、基本的にGNSS受信部11で受信した測位信号に基づいて求めた自車位置と道路地図情報とによる電波航法にて、道路地図上に設定した目標進行路に沿って自車両Mを走行させるようにしている。
【0047】
この場合、電波航法では地図上に設定した目標進行路に沿って自車両Mを走行させるように操舵制御を行っているので、実際の走行車線の車線中央から横位置がどの程度オフセットしているかは不明である。そのため、上述した
図5に示す横位置FBハンドル角演算サブルーチンにおいて、自車横移動量Xrateを演算周期で積分することで、地図上の目標進行路に対する自車横位置Xを推定し、これが0になるようにフィードバック制御することで、横位置方向へのオフセットを修正するようにしている。
【0048】
しかし、自車横位置Xには積分誤差が含まれており、積分時間が長くなれば、
それだけ誤差が蓄積されることになる。そして、誤差が大きくなれば、車線維持制御が不安定化するため、運転者は自車両Mを車線中央へ戻す操舵介入(操舵オーバライド)を行うので、自動運転は解除されることになる。この場合、左右区画線Ll,Lrが認識できない状況であっても、自車横位置Xの積分誤差による影響を補正することができれば、例えば、左右区画線Ll,Lrを認識することができない区間が断続的に続く走行環境では、自動運転による車線維持制御を継続させることが可能となる。
【0049】
そのため、本実施形態では、横位置補正処理部2cにおいて、追従対象となる先行車Pを認識した場合、当該先行車Pの走行軌跡から求めた曲率(先行車曲率)RSENと地図曲率RMPUとの差分が所定以下の場合、その差分に応じた、進行方向に直交する横位置のずれ量である推定横位置偏差Xdiffを求める。そして、上述した
図5のステップS35において、自車横位置Xを、自車横位置Xに推定横位置偏差Xdiffを加算した値で更新することで、実質的に自車横位置Xの積分誤差を補正して、車線維持制御を継続させるようにしている。
【0050】
この横位置補正処理部2cで求める推定横位置偏差Xdiffは、具体的には、
図6に示す横位置補正処理ルーチンに従って算出される。このルーチンでは、先ず、ステップS41で、カメラユニット16で撮像した自車両Mの前方画像情報を読込み、続く、ステップS42で、この前方画像情報から走行車線を区画する左右区画線Ll,Lrが認識されているか否かを調べる。そして、認識されている場合はステップS52へジャンプする。又、左右区画線Ll,Lrが認識されない場合は、ステップS43へ進み、自車両Mの前方を走行する追従対象となる先行車Pが認識されているか否かを調べる。そして、当該先行車Pが認識されない場合は、ステップS52へジャンプする。
【0051】
又、追従対象となる先行車Pが認識されている場合は、ステップS44へ進む。そして、ステップS44以降で先行車Pの走行軌跡に基づいて自車両Mの目標進行路を修正するか否かを調べる。
【0052】
すなわち、ステップS44では、自車両Mが走行している道路地図上の曲率(地図曲率)RMPUを読込み、ステップS45で先行車Pの走行軌跡(先行車軌跡)から先行車曲率RSENを求める。この先行車曲率RSENは、例えば、カメラユニット16で撮像した先行車Pの後面車幅方向中央の軌跡を、最小二乗法により曲線近似して求める。このステップS45での処理が、本発明の先行車曲率演算手段に対応している。
【0053】
その後、ステップS46へ進み、両
曲率RMPU,RSENの差分の絶対値|RMPU−RSEN|と許容値K1とを比較する。この許容値K1は、自車両Mの挙動を基準として先行車Pが大きく進路変更しているか否かを調べる閾値である。そして、|RMPU−RSEN|<K1の場合、先行車Pは大きな進路変更はしていないと判定し、ステップS47へ進む。又、|RMPU−RSEN|≧K1の場合、先行車Pは大きく進路変更したと判定し、ステップS52へ分岐する。
【0054】
ステップS47へ進むと、計時時間Timをインクリメントし(Tin←Tim+1)、ステップS48で、計時時間Timが設定時間Tkだけ経過したか否かを調べる。この設定時間Tkは、先行車Pが安定して走行しているか否かを判定する閾値であり、例えば、5〜10[sec]程度であるが、これに限定されるものではない。そして、Tim<Tkの場合、計時中であるためそのままルーチンを抜ける。又、Tim≧Tkの場合、先行車Pは安定して走行していると判定し、ステップS49へ進む。従って、
図11に示すように、両
曲率RMPU,RSENの差分(RMPU−RSEN)が、許容範囲±K1にあり、その計時時間Timが設定時間Tk以上継続している場合、先行車Pの走行は安定していると判定する。
【0055】
ステップS49では、地図曲率RMPUと先行車曲率RSENとの差分(曲率差分)により生じる角度、すなわち、地図曲率RMPUに対する先行車曲率RSENによる先行車Pの向きの偏差から、道路方位偏差(推定ヨー角偏差)Ysendiff [rad]を、
Ysendiff←∫V・Ts・(RMPU−RSEN)dt
から算出する。ここで、Tsはサンプリング周期(演算周期)である。
【0056】
次いで、ステップS50へ進み、推定ヨー角偏差Ysendiffと自車速Vとに基づき、推定横位置偏差Xdiff[m]を、
Xdiff←∫V・Ts・sin(Ysendiff)dt
から算出する。この推定横位置偏差±Xdiffは、地図上の自車横位置Xを先行車Pの走行軌跡上にオフセットさせるものであり、前述した
図5のステップS35において、自車横位置Xに加算して、この自車横位置Xを更新する。尚、このステップS49,S50での処理が、本発明の横位置偏差算出手段に対応している。
【0057】
そして、ステップS51へ進み、先行車検出フラグFSENをセットして(FSEN←1)、ルーチンを抜ける。一方、ステップS42,S43、或いはS46からステップS52へ分岐すると、計時時間Timをクリアし、ステップS53で先行車検出フラグFSENをクリアして(FSEN←0)、ルーチンを抜ける。
【0058】
従って、先行車Pが安定した走行
をしていると判定した場合、
図5に示す横位置FBハンドル角演算サブルーチンでは、自車両Mの横位置を先行車Pの軌跡との横位置差分が0となるようにフィードバック制御される。その結果、カメラユニット16で左右区画線Ll,Lrを認識することのできない状況であっても、先行車Pの走行が安定していると判定した場合は、
図10に示すように、自車両Mの目標進行路が先行車Pの走行軌跡(先行車軌跡)に沿って設定されるので、自車横位置Xの積分誤差が修正され、自動運転による車線維持制御を継続させることが、運転者に負担をかけることなくリラックスさせた状態で継続させることができる。
【0059】
又、
図10に示すように、例えば、道路を除雪した際の排雪が路肩に堆積して左区画線Llが覆われている場合、運転者の手動による運転では、堆積されている雪を避けるため、やや右区画線Lr側によった状態で走行させる。一方、電波航法では、左区画線Llは認識していないため、地図上の車線中央を走行しようとする。このような場合、自車両Mが追従対象となる先行車Pを認識し、安定走行している場合、自車両Mの目標進行路を先行車Pの走行軌跡に沿って設定することで、自車両Mの車線維持制御を安定した状態で継続させることができる。
【0060】
[第2実施形態]
図12〜
図14に本発明の第2実施形態を示す。尚、以下においては、便宜的に、先行車検出フラグFSENを、進路変更検出フラグFSENと読み替えて説明する。
【0061】
上述した第1実施形態では、カメラユニット16で、走行車線の左右を区画する左右区画線Ll,Lrが認識できない場合、電波航法による自車横位置Xの積分誤差を、先行車Pの走行軌跡に基づき自車両Mの目標進行路を補正ことでクリアするようにしたが、本実施形態による横位置補正処理部2cでは、運転者の車線走行に関する外的要因であるハンドル操作によりオフセット量を付与することで自車横位置Xの積分誤差を補正するようにしたものである。
【0062】
横位置補正処理部2cで実行される横位置補正処理は、具体的には
図12に示す横位置補正処理ルーチンに従って行われる。尚、このルーチンは、第1実施形態の
図6に示すルーチンに代えて適用されるものである。
【0063】
このルーチンは、例えば、操舵トルクセンサ14で検出した操舵トルクに基づき、自動運転時において運転者のハンドル操作を検出した際に起動され、先ず、ステップS61で、ヨーレートセンサ12で検出したヨーレートYawrを読込み、ステップS62でヨーレートYawrを積分してヨー角Yawを算出する。そして、ステップS63でヨー角Yawと設定閾値K2とを比較する。この設定閾値K2は、車線変更や障害物を回避するために運転者の行う急なハンドル操作か、目標進行路を車線中央から一方へ変位させるための僅かなハンドル操作かを判定する値で、予め実験などから求めて設定されている。そして、Yaw>K2の場合、急なハンドル操作と判定してステップS71へ分岐し、計時時間Timをクリアし、ステップS72で進路変更検出フラグFSENをクリアして(FSEN←0)、ルーチンを抜ける。
【0064】
一方、Yaw≦K2の場合、僅かなハンドル操作であると判定し、ステップS64へ進む。ステップS64では自車両Mが現在走行している道路の車線データから地図曲率RMPUを読込み、続く、ステップS65でヨーレートYawrを自車速Vで除算して求めた自車曲率(旋回曲率)Ryawr(Ryawr←Yawr/V)を読込む。
【0065】
そして、ステップS66へ進み、自車速Vと各曲率RMPU,Ryawrに基づき推定ヨー角偏差Yawdiffを、
Yawdiff←∫V・Ts・(RMPU−Ryawr)dt
から算出する。ここで、Tsはサンプリング周期[sec]である。又、(RMPU−Ryawr)>0の場合は、自車両Mが地図上の目標進行路に対してカーブ外側を旋回している状態を示し、(RMPU−Ryawr)<0の場合はカーブ内側を旋回している状態を示している。
【0066】
その後、ステップS67へ進み、推定ヨー角偏差Yawdiffと自車速Vに基づき、推定横位置偏差Xdiff[m]を、
Xdiff←∫V・Ts・sin(Yawdiff)dt
から算出する。
尚、ステップS66,S67での処理が、本発明の横位置偏差算出手段に対応している。
【0067】
そして、ステップS68で、タイマの計時時間Timをインクリメントして(Tim←Tim+1)、ステップS69へ進み、計時時間Timと設定時間Tkとを比較し、僅かなハンドル操作が設定時間Tk以上継続しているか否かを調べる。この設定時間Tkは、運転者がハンドル操作を継続して行っているか否かを判定する閾値であり、例えば、3〜5[sec]程度であるが、これに限定されるものではない。
【0068】
そして、Tim<Tkの場合はそのままルーチンを抜け、Tim≧Tkに達した場合、継続的なハンドル操作と判定し、ステップS70へ進み、進路変更検出フラグFSENをセットして(FSEN←1)、ルーチンを抜ける。
【0069】
上述した推定横位置偏差Xdiff[m]は、地図上の自車横位置Xを運転者のハンドル操作により選択した進行路にオフセットさせるもので、進路変更検出フラグFSENがセットされている場合に、前述した
図5のステップS35において読込まれ、自車横位置Xに加算して、新たな自車横位置Xを設定する。
【0070】
図14に示すように、カーブ路において、運転者が自車両Mの進行路を変更しようとする場合、先ず、ハンドルを切り、自車両Mを横移動させた後、カーブ路に沿って操舵する。従って、進路変更直後のヨー角Yawは大きく変動し、進路変更後のカーブ路に沿った走行では、曲率に沿ったほぼ一定のヨー角Yawとなる。そして、ハンドルを戻して元の進行路を走行させようとした場合、再び、ヨー角Yawが大きく変動する。尚、
図14では説明を容易にするために、両曲率RMPU,Ryawr[1/m]を曲率半径[m]で示す。
【0071】
進路変更後のカーブ路に沿った走行で、そのヨー角Yawが設定閾値K2以下の場合であって、その状態が設定時間Tk継続している場合は、運転者が自らの意思で進行路を変更したと判定し、その後、運転者のハンドル操作によりヨー角Yawが設定閾値K2を超えた挙動が検出されるまで、
図5のステップS35において推定横位置偏差Xdiffを自車横位置Xに加算して、新たな自車横位置Xを設定する。その結果、
図13に示すように、カーブ路において、自車両Mは本来の地図曲率RMPUに対し、推定横位置偏差Xdiff分だけオフセットされた自車曲率Ryawrに沿って、すなわち、運転者の設定した進行路に沿って走行させることができ、直線路においても、運転者がハンドル操作により設定閾値K2を超えるヨー角Yawを発生させるまで、継続させることができる。
【0072】
従って、
図13に示すように、左区画線Llから走行車線側に積層された雪がはみ出て走行できない状態の場合、電波航法では自車両Mの進行を阻害する雪の積層を認識することができないため、走行車線の中央を走行させようとする。しかし、本実施形態では、運転者のハンドル操作による進路変更が、予め設定された条件を満足した場合、その曲率(自車曲率)Ryawrに沿って走行させるようにオフセットさせるので、自動運転による車線維持制御をより長く継続させることが可能となり、運転者の負担をより軽減させることができる。
【0073】
尚、本発明は、上述した実施形態に限るものではなく、例えば横位置補正処理部2cは、第1実施形態の
図6に示す横位置補正処理ルーチンと、第2実施形形態の
図12に示す横位置補正処理ルーチンとを併用して、車線維持制御を継続させるようにしても良い。