(57)【要約】      （修正有）【課題】車両の周辺状況に応じて洗浄処理を実行することが可能な運転支援装置を提供する。【解決手段】運転支援装置は、車両周辺情報に基いて車両の操舵角を変更する操舵支援制御を実行するようになっている。運転支援装置は、洗浄要求が発生したときに窓部の洗浄を行うための洗浄処理を実行可能な洗浄装置を備える。運転支援装置は、洗浄処理を実行すると仮定したときに車両が車両の周囲に存在する物体に接近する可能性が高いと予測される場合に成立する予め定められた洗浄禁止条件が成立しているか否かを判定する。運転支援装置は、操舵支援制御の実行中に洗浄要求が発生した場合、洗浄禁止条件が成立していると判定されたとき、洗浄装置に洗浄処理を実行させることを禁止する。【選択図】図１０
2019182328.tif 000002
【特許請求の範囲】
【請求項１】
窓部を通過する光又は電波を利用して、車両の周囲に存在する物体及び前記車両の周囲の区画線についての情報を含む車両周辺情報を検出する検出手段と、
前記車両周辺情報に基いて前記車両の操舵角を変更する操舵支援制御を実行する操舵支援制御手段と、
洗浄要求が発生したときに前記窓部の洗浄を行うための洗浄処理を実行可能な洗浄装置と、
を備える運転支援装置において、
前記操舵支援制御手段は、
前記操舵支援制御の実行中に前記洗浄要求が発生した場合、前記洗浄処理を実行すると仮定したときに前記車両が前記検出された物体に接近する可能性が高いと予測される場合に成立する予め定められた洗浄禁止条件が成立しているとの判定が少なくとも前記車両周辺情報に基いてなされるとき、前記洗浄装置に前記洗浄処理を実行させることを禁止する、
ように構成された
運転支援装置。
【請求項２】
請求項１に記載の運転支援装置において、
前記操舵支援制御手段は、
少なくとも、運転者が操舵ハンドルに触れている状態であることを前提とする前記操舵支援制御の一つである第１操舵支援制御を実行する第１モードと、前記運転者が前記操舵ハンドルに触れている状態であることを前提としない前記操舵支援制御の他の一つである第２操舵支援制御を実行する第２モードと、のうちの何れかのモードを前記車両周辺情報に基いて選択し、
前記選択したモードにて前記操舵支援制御を実行し、
前記操舵支援制御の実行中に前記洗浄要求が発生した場合に前記洗浄禁止条件が成立しているとの判定がなされるときであっても、前記操舵支援制御のモードが前記第１モードであるときには前記洗浄装置に前記洗浄処理を実行させることを許容する、
ように構成された
運転支援装置。
【請求項３】
請求項２に記載の運転支援装置において、
前記操舵支援制御手段は、
前記操舵支援制御の実行中に前記洗浄要求が発生した場合に前記洗浄禁止条件が成立しているとの判定がなされるとき、前記操舵支援制御のモードが前記第２モードであれば、前記操舵支援制御のモードを前記第２モードから前記第１モードへ移行させる、
ように構成された
運転支援装置。
【請求項４】
請求項１に記載の運転支援装置において、
前記窓部の汚れを検出した場合に前記洗浄要求を発生させる汚れ検出手段を更に備え、
前記汚れ検出手段は、
前記窓部の汚れが、前記操舵支援制御に対する影響が低いことを表す所定の第１レベルであるか又は前記操舵支援制御に対する影響が前記第１レベルに比べて高いことを表す所定の第２レベルであるかを判定するように構成され、
前記操舵支援制御手段は、
少なくとも、運転者が操舵ハンドルに触れている状態であることを前提とする前記操舵支援制御の一つである第１操舵支援制御を実行する第１モードと、前記運転者が前記操舵ハンドルに触れている状態であることを前提としない前記操舵支援制御の他の一つである第２操舵支援制御を実行する第２モードと、のうちの何れかのモードを前記車両周辺情報に基いて選択し、
前記選択したモードにて前記操舵支援制御を実行し、
前記操舵支援制御の実行中に前記洗浄要求が発生した場合、
前記窓部の汚れが前記第１レベルであれば、前記洗浄禁止条件が成立していないと判定されるとき前記洗浄装置に前記洗浄処理を実行させることを許容し、前記洗浄禁止条件が成立していると判定されるとき前記洗浄装置に前記洗浄処理を実行させること禁止し、
前記窓部の汚れが前記第２レベルであり且つ前記操舵支援制御のモードが前記第１モードであれば、前記洗浄禁止条件が成立しているか否かに関わらず前記洗浄装置に前記洗浄処理を実行させることを許容し、
前記窓部の汚れが前記第２レベルであり且つ前記操舵支援制御のモードが前記第２モードであれば、前記洗浄禁止条件が成立していないと判定されるとき前記洗浄装置に前記洗浄処理を実行させることを許容し、前記洗浄禁止条件が成立していると判定されるとき前記操舵支援制御のモードを前記第２モードから前記第１モードへ移行させる、
ように構成された
運転支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の周囲に存在する物体及び前記車両の周囲の区画線についての情報を含む車両周辺情報を用いて、車両の運転を支援する運転支援装置に関する。
【背景技術】
【０００２】
従来から、車両に搭載された「カメラ及び／又はセンサ」からの情報に基づいて車両の周辺状況（区画線及び他車両等）に関する車両周辺情報を取得し、車両周辺情報に基いて車両を道路幅方向の適切な位置で走行させるように操舵角を変更する運転支援装置が知られている。このような制御は「操舵支援制御」とも称呼される。
【０００３】
ところで、車載のカメラは、レンズの前方に配置された窓部（保護窓）を通過する光を利用して画像データを取得し、この画像データに基いて車両周辺情報を取得する。この窓部に水滴、白濁、水滴痕及び泥等の汚れが付着すると、車両周辺情報を精度良く取得できない虞がある。そこで、従来の装置の一つは、カメラの窓部に対して洗浄液及び空気等を噴射することにより窓部を洗浄する洗浄処理を実行するようになっている（例えば、特許文献１を参照。）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１５−２３１７６５号公報
【発明の概要】
【０００５】
従来の装置は、窓部の汚れが検出された場合、及び／又は、運転者が洗浄処理を希望して洗浄スイッチを操作した場合、洗浄処理を実行する。しかし、このような洗浄処理が操舵支援制御の実行中に行われると、カメラが車両周辺情報を一時的に取得できなくなる。従って、操舵支援制御が不安定になる。このとき、例えば、車両の周囲に他車両が存在する場合、車両がその他車両に接近する虞がある。以上から、少なくとも車両の周辺状況を考慮して洗浄処理を実行することが求められる。なお、この問題は、窓部を通過する電波を利用するレーダセンサを用いて車両周辺情報を取得し、その車両周辺情報を操舵支援制御に利用している場合にも同様に発生する。
【０００６】
本発明は、上記課題を解決するためになされた。即ち、本発明の目的の一つは、車両の周辺状況に応じて洗浄処理を実行することが可能な運転支援装置を提供することである。
【０００７】
本発明の運転支援装置（以下、「本発明装置」と称呼される場合がある。）は、
窓部（４１１）を通過する光又は電波を利用して、車両の周囲に存在する物体及び前記車両の周囲の区画線についての情報を含む車両周辺情報を検出する検出手段（６１、６２、６３）と、
前記車両周辺情報に基いて前記車両の操舵角を変更する操舵支援制御を実行する操舵支援制御手段（１０、１０Ｚ）と、
洗浄要求が発生したときに前記窓部の洗浄を行うための洗浄処理を実行可能な洗浄装置（６５）と、
を備える。
前記操舵支援制御手段は、
前記操舵支援制御の実行中に前記洗浄要求が発生した場合、前記洗浄処理を実行すると仮定したときに前記車両が前記検出された物体に接近する可能性が高いと予測される場合に成立する予め定められた洗浄禁止条件が成立しているとの判定が少なくとも前記車両周辺情報に基いてなされるとき、前記洗浄装置に前記洗浄処理を実行させることを禁止する（ステップ１１２５：Ｎｏ、ステップ１１３５：Ｎｏ、及び、ステップ１２２５：Ｎｏ）
ように構成されている。
【０００８】
操舵支援制御中に洗浄処理を実行すると、車両周辺情報の精度が低下する。よって、車両周辺情報に基いて変更される車両の操舵角が適切でなくなることに起因して、車両の位置（例えば、車両の道路幅方向における位置）が適切な位置から乖離する可能性がある。即ち、操舵支援制御が洗浄処理によって不安定になる。このとき、車両の周辺に物体（例えば、他車両）が存在する場合、車両がその物体に接近する虞がある。そこで、本発明装置は、操舵支援制御の実行中に洗浄要求が発生した場合、予め定められた洗浄禁止条件が成立しているとの判定が少なくとも車両周辺情報に基いてなされるとき、洗浄装置に洗浄処理を実行させることを禁止する。この洗浄禁止条件は、操舵支援制御の実行中に洗浄処理を実行すると仮定したときに、車両が検出された物体に接近する可能性が高いと予測される場合に成立する条件である。よって、洗浄処理を行なうことによって車両が検出された物体に接近する可能性が高いと予測される場合には洗浄処理が禁止されるので、操舵支援制御が不安定にならない。その結果、車両が周辺の物体に接近する可能性を低減することができる。
【０００９】
本発明装置の一の態様において、前記操舵支援制御手段は、少なくとも、運転者が操舵ハンドルに触れている状態であることを前提とする前記操舵支援制御の一つである第１操舵支援制御を実行する第１モードと、前記運転者が前記操舵ハンドルに触れている状態であることを前提としない前記操舵支援制御の他の一つである第２操舵支援制御を実行する第２モードと、のうちの何れかのモードを前記車両周辺情報に基いて選択し、前記選択したモードにて前記操舵支援制御を実行するように構成されている。
【００１０】
このように、本態様の操舵支援制御手段は、第１操舵支援制御を実行する第１モードにて作動したり、第２操舵支援制御を実行する第２モードにて作動したりする。但し、操舵支援制御手段は、第１モード及び第２モードの何れでもない第３モードで操舵支援制御を実行してもよい。
【００１１】
ところで、第１モードにて実行される第１操舵支援制御は、例えば、操舵支援制御の信頼度が相対的に低い場合に実行される制御であるので、運転者が操舵ハンドルに触れている状態であることを前提としている。従って、第１操舵支援制御の実行中に車両の位置が道路幅方向における適切な位置から乖離したとしても、運転者は「直ちに操舵を行って、車両の位置を修正すること」ができる。
【００１２】
そこで、本態様の操舵支援制御手段は、前記操舵支援制御の実行中に前記洗浄要求が発生した場合に前記洗浄禁止条件が成立しているとの判定がなされるときであっても、前記操舵支援制御のモードが前記第１モードであるときには前記洗浄装置に前記洗浄処理を実行させることを許容する（１１３０：Ｙｅｓ、ステップ１２２０：Ｙｅｓ）
ように構成されている。
【００１３】
本態様によれば、洗浄処理の実行中に第１操舵支援制御が不安定になったとしても、運転者は操舵ハンドルを直ちに操作することにより車両の位置を即座に修正することができる。
【００１４】
本発明装置の一の態様において、前記操舵支援制御手段は、前記操舵支援制御の実行中に前記洗浄要求が発生した場合に前記洗浄禁止条件が成立しているとの判定がなされるとき、前記操舵支援制御のモードが前記第２モードであれば、前記操舵支援制御のモードを前記第２モードから前記第１モードへ移行させる（ステップ１１３０：Ｎｏ、ステップ１１３５：Ｎｏ及びステップ１１４５；ステップ１２２０：Ｎｏ、ステップ１２２５：Ｎｏ及びステップ１２４０）
ように構成されている。
【００１５】
第２モードにて実行される第２操舵支援制御は、例えば、操舵支援制御の信頼度が相対的に高い場合に実行される制御であるので、運転者が操舵ハンドルに触れている状態であることを前提としていない。換言すると、操舵支援制御手段が第２モードにて作動している場合、運転者は操舵ハンドルに触れていない可能性が高い。このため、洗浄処理の実行中に第２操舵支援制御が不安定になったとき、運転者は車両の位置を直ちに修正できない可能性がある。このとき、車両の周囲に物体が存在する場合、車両がその物体に過度に接近する虞がある。
【００１６】
そこで、本態様の操舵支援制御手段は、洗浄禁止条件が成立していると判定されたとき、操舵支援制御のモードが第２モードであれば、操舵支援制御のモードを第２モードから第１モードに移行させる。従って、操舵支援制御（第１モード）を継続しながら洗浄処理を実行させることができる。たとえ洗浄処理の実行中に車両の位置が道路幅方向における適切な位置から乖離したとしても、運転者は操舵ハンドルを直ちに操作することにより車両の位置を即座に修正することができる。
【００１７】
本発明装置の一の態様は、前記窓部の汚れを検出した場合に前記洗浄要求を発生させる汚れ検出手段（１０Ｘ）を更に備える。
前記汚れ検出手段は、
前記窓部の汚れが、前記操舵支援制御に対する影響が低いことを表す所定の第１レベルであるか又は前記操舵支援制御に対する影響が前記第１レベルに比べて高いことを表す所定の第２レベルであるかを判定するように構成されている。
【００１８】
更に、前記操舵支援制御手段は、前記操舵支援制御の実行中に前記洗浄要求が発生した場合、前記窓部の汚れが前記第１レベルであれば（ステップ１１２０：Ｙｅｓ）、
前記洗浄禁止条件が成立していないと判定されるとき、前記洗浄装置に前記洗浄処理を実行させることを許容し（ステップ１１２５：Ｙｅｓ及びステップ１１４０）、
前記洗浄禁止条件が成立していると判定されるとき、前記洗浄装置に前記洗浄処理を実行させること禁止する（ステップ１１２５：Ｎｏ）
ように構成されている。
【００１９】
窓部の汚れが第１レベルである場合、操舵支援制御に対する影響が低いことから、洗浄装置に洗浄処理を実行させなくても、車両は道路幅方向における適切な位置を比較的安定して走行することができる。従って、本態様の操舵支援制御手段は、洗浄禁止条件が成立している（即ち、洗浄処理中に車両が車両の周囲の物体に接近する可能性が高いと予測される）とき、洗浄装置に洗浄処理を実行させない。操舵支援制御（第１操舵支援制御又は第２操舵支援制御）が洗浄処理によって不安定にならないので、車両が車両の周囲に存在する物体に過度に接近するのを防ぐことができる。更に、本態様の操舵支援制御手段は、洗浄禁止条件が成立していない（即ち、洗浄処理中に車両が車両の周囲の物体に接近する可能性が低いと予測される）とき、洗浄装置に洗浄処理を実行させることを許容する。このように、車両の周辺の状況に応じて、洗浄装置に洗浄処理を実行させることができる。
【００２０】
更に、前記操舵支援制御手段は、前記操舵支援制御の実行中に前記洗浄要求が発生した場合、前記窓部の汚れが前記第２レベルであり且つ前記操舵支援制御のモードが前記第１モードであれば（ステップ１１２０：Ｎｏ及びステップ１１３０：Ｙｅｓ）、
前記洗浄禁止条件が成立しているか否かに関わらず前記洗浄装置に前記洗浄処理を実行させることを許容する（ステップ１１４０）
ように構成されている。
【００２１】
更に、前記操舵支援制御手段は、前記操舵支援制御の実行中に前記洗浄要求が発生した場合、前記窓部の汚れが前記第２レベルであり且つ前記操舵支援制御のモードが前記第２モードであれば（ステップ１１２０：Ｎｏ及びステップ１１３０：Ｎｏ）、
前記洗浄禁止条件が成立していないと判定されるとき、前記洗浄装置に前記洗浄処理を実行させることを許容し（ステップ１１３５：Ｙｅｓ及びステップ１１４０）、
前記洗浄禁止条件が成立していると判定されるとき、前記操舵支援制御のモードを前記第２モードから前記第１モードへ移行させる（ステップ１１３５：Ｎｏ及びステップ１１４５）
ように構成されている。
【００２２】
窓部の汚れが第２レベルである場合、操舵支援制御に対する影響が比較的高いことから、より早く洗浄装置に洗浄処理を実行させることが望ましい。本態様の操舵支援制御手段は、窓部の汚れが第２レベルであり、且つ、操舵支援制御のモードが第１モードである場合、洗浄処理中に車両が車両の周囲の物体に接近する可能性があるかどうかに関わらず、洗浄装置に洗浄処理を実行させることを許容する。窓部の汚れが洗浄されるので、検出手段によって取得される車両周辺情報の精度が高くなる。よって、洗浄処理の終了後に車両は道路幅方向における適切な位置を安定して走行できる。たとえ洗浄処理の実行中に第１操舵支援制御が不安定になったとしても、運転者は操舵ハンドルを直ちに操作することにより車両の位置を即座に修正することができる。
【００２３】
本態様の操舵支援制御手段は、窓部の汚れが第２レベルであり、且つ、操舵支援制御のモードが第２モードである場合、洗浄禁止条件が成立していないと判定されるとき、洗浄装置に洗浄処理を実行させることを許容する。たとえ洗浄処理によって第２操舵支援制御が不安定になったとしても、洗浄処理の終了後に第２操舵支援制御によって自車両の位置が適切な位置に修正される。操舵支援制御のモードを第２モードに維持したままで洗浄処理を実行できるので、操舵支援制御の実行中に運転者が操舵ハンドルに触れる頻度を低減することができる。よって、運転者が煩わしさを感じる機会を減らすことができる。
【００２４】
更に、本態様の操舵支援制御手段は、窓部の汚れが第２レベルであり、且つ、操舵支援制御のモードが第２モードである場合、洗浄禁止条件が成立しているとき、操舵支援制御のモードを第２モードから第１モードへ移行させる。このように操舵支援制御のモードが第２モードから第１モードに移行されるので、操舵支援制御（第１モード）を継続しながら洗浄処理を実行させることができる。更に、たとえ洗浄処理の実行中に車両の位置が道路幅方向における適切な位置から乖離したとしても、運転者は操舵ハンドルを直ちに操作することにより車両の位置を即座に修正することができる。
【００２５】
本発明に関連する更なる特徴は、本明細書の記述、添付図面から明らかになるものである。上記した以外の、課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
【００２６】
上記説明においては、本発明の理解を助けるために、後述する実施形態に対応する発明の構成に対し、その実施形態で用いた名称及び／又は符号を括弧書きで添えている。しかしながら、本発明の各構成要素は、前記名称及び／又は符号によって規定される実施形態に限定されるものではない。
【図面の簡単な説明】
【００２７】
【図１】本発明の実施形態に係る運転支援装置の概略構成図である。
【図２】レーダセンサ、第１カメラシステム及び第２カメラシステムの配置を表す車両の平面図である。
【図３】本発明の実施形態に係る車室内のダッシュボード及び操舵ハンドルの概略構成図である。
【図４】本発明の実施形態に係る洗浄装置の概略構成図である。
【図５】図５の（ａ）は、車両前方に取付けられたレーダセンサ及び洗浄部の拡大斜視図であり、図５の（ｂ）は、図５の（ａ）に示した洗浄部の概略構成図である。
【図６】本発明の実施形態に係る運転支援ＥＣＵが実行する「車線維持制御の開始／終了判定ルーチン」を示したフローチャートである。
【図７】本発明の実施形態に係る運転支援ＥＣＵが実行する「モード選択ルーチン」を示したフローチャートである。
【図８】本発明の実施形態に係る運転支援ＥＣＵが実行する「車線維持制御実行ルーチン」を示したフローチャートである。
【図９】本発明の実施形態に係る運転支援ＥＣＵが実行する「監視ルーチン」を示したフローチャートである。
【図１０】本発明の実施形態に係る運転支援ＥＣＵが実行する「状況フラグ設定ルーチン」を示したフローチャートである。
【図１１】本発明の実施形態に係る運転支援ＥＣＵが実行する「第１の開始フラグ設定ルーチン」を示したフローチャートである。
【図１２】本発明の実施形態に係る運転支援ＥＣＵが実行する「第２の開始フラグ設定ルーチン」を示したフローチャートである。
【図１３】本発明の実施形態に係る運転支援ＥＣＵが実行する「洗浄処理の開始／終了判定ルーチン」を示したフローチャートである。
【発明を実施するための形態】
【００２８】
以下、添付図面を参照して本発明の実施形態について説明する。なお、添付図面は本発明の原理に則った具体的な実施形態を示しているが、これらは本発明を理解するための例あり、本発明を限定的に解釈するために用いられるべきでない。
【００２９】
＜構成＞
本発明の実施形態に係る運転支援装置（以下、「本実施装置」と称呼される場合がある。）は、車両（自動車）に適用される。本実施装置が適用される車両は、他の車両と区別するために「自車両」と称呼される場合がある。
【００３０】
図１に示したように、本実施装置は、マイクロコンピュータを主要部として備えた運転支援ＥＣＵ１０を備えている。このマイクロコンピュータは、ＣＰＵ１０ａ、ＲＡＭ１０ｂ、ＲＯＭ１０ｃ及びインターフェース（Ｉ／Ｆ）１０ｄ等を含む。ＣＰＵ１０ａはＲＯＭ１０ｃに格納されたインストラクション（プログラム、ルーチン）を実行することにより各種機能を実現するようになっている。なお、本明細書において、ＥＣＵは電気制御装置（Electric Control Unit）を意味する。従って、以降で説明する他のＥＣＵは、ＣＰＵ、ＲＡＭ、ＲＯＭ及びインターフェース等を含むマイクロコンピュータを含む。ＣＰＵはＲＯＭに格納されたインストラクションを実行することにより各種機能を実現するようになっている。
【００３１】
本実施装置は、エンジンＥＣＵ２０、ブレーキＥＣＵ３０、電動パワーステアリングＥＣＵ（以下、「ＥＰＳ・ＥＣＵ」と称呼する。）４０、及び、メータＥＣＵ５０を備えている。これらのＥＣＵ及び運転支援ＥＣＵ１０は、ＣＡＮ（Controller Area Network）９０を介して相互に情報を送信可能及び受信可能に接続されている。従って、特定のＥＣＵに接続されたセンサの検出値は他のＥＣＵにも送信されるようになっている。
【００３２】
エンジンＥＣＵ２０は、エンジンアクチュエータ２１に接続されている。エンジンアクチュエータ２１は、内燃機関２２のスロットル弁の開度を変更するスロットル弁アクチュエータを含む。エンジンＥＣＵ２０は、エンジンアクチュエータ２１を駆動することによって、内燃機関２２が発生するトルクを変更することができる。従って、エンジンＥＣＵ２０は、エンジンアクチュエータ２１を制御することによって、車両の駆動力を制御することができる。なお、車両が、ハイブリッド車両である場合、エンジンＥＣＵ２０は、車両駆動源としての「内燃機関及び電動機」の何れか一方又は両方によって発生する車両の駆動力を制御することができる。更に、車両が電気自動車である場合、エンジンＥＣＵ２０は、車両駆動源としての電動機によって発生する車両の駆動力を制御することができる。
【００３３】
ブレーキＥＣＵ３０は、ブレーキアクチュエータ３１に接続されている。ブレーキアクチュエータ３１は、ブレーキＥＣＵ３０からの指示に応じてブレーキキャリパ３２ｂに内蔵されたホイールシリンダに供給する油圧を調整し、その油圧によりブレーキパッドをブレーキディスク３２ａに押し付けて摩擦制動力を発生させる。従って、ブレーキＥＣＵ３０は、ブレーキアクチュエータ３１を制御することによって、車両の制動力を制御することができる。
【００３４】
ＥＰＳ・ＥＣＵ４０は、アシストモータ（Ｍ）４１に接続されている。アシストモータ４１は、車両の「操舵ハンドル、操舵ハンドルに連結されたステアリングシャフト及び操舵用ギア機構等を含むステアリング機構」に組み込まれている。ＥＰＳ・ＥＣＵ４０は、ステアリングシャフトに設けられた操舵トルクセンサ（図示省略）によって、運転者が操舵ハンドルに入力した操舵トルクを検出し、この操舵トルクに基いてアシストモータ４１を駆動する。ＥＰＳ・ＥＣＵ４０は、アシストモータ４１を駆動することによってステアリング機構に操舵トルク（操舵アシストトルク）を付与し、これにより、運転者の操舵操作をアシストすることができる。
【００３５】
加えて、ＥＰＳ・ＥＣＵ４０は、以降で説明する運転支援制御の実行中にＣＡＮ９０を介して運転支援ＥＣＵ１０から操舵指令を受信したとき、操舵指令で特定される操舵制御量に基いてアシストモータ４１を駆動する。操舵制御量は、車両の操舵角を決定付けるパラメータ（例えば、目標操舵角）である。これにより、車両の転舵輪の舵角（即ち、操舵角）が変更される（転舵輪が転舵される）。
【００３６】
メータＥＣＵ５０は、表示器５１及び車速センサ５２に接続されている。表示器５１は、運転席の正面に設けられたマルチインフォーメーションディスプレイである。車速センサ５２は車両の速度（車速）を検出し、その車速を示す信号をメータＥＣＵ５０に出力する。なお、車速センサ５２が検出した車速は、運転支援ＥＣＵ１０に対しても送信される。表示器５１は、車速及びエンジン回転速度等の計測値の表示に加えて、各種の情報を表示する。メータＥＣＵ５０は、運転支援ＥＣＵ１０から送信された表示指令に従って、運転支援制御に関する情報（例えば、運転支援制御のモード及び洗浄処理のステータス等）を表示する。表示器５１は、マルチインフォーメーションディスプレイに限定されない。表示器５１として、ヘッドアップディスプレイが採用されてもよい。
【００３７】
運転支援ＥＣＵ１０には、複数のレーダセンサ６１ａ〜６１ｅ、複数の第１カメラシステム６２ａ〜６２ｄ、複数の第２カメラシステム６３ａ〜６３ｃ、複数のディスプレイ６４ａ〜６４ｃ、洗浄装置６５、タッチセンサ６６、視線センサ６７、走行支援スイッチ６８、洗浄スイッチ６９及びスピーカ７０に接続されている。複数のレーダセンサ６１ａ〜６１ｅは「レーダセンサ６１」と総称される。複数の第１カメラシステム６２ａ〜６２ｄは「第１カメラシステム６２」と総称される。複数の第２カメラシステム６３ａ〜６３ｃは「第２カメラシステム６３」と総称される。複数のディスプレイ６４ａ〜６４ｃは「ディスプレイ６４」と総称される。
【００３８】
レーダセンサ６１は、レーダ送受信部と信号処理部（何れも図示略）とを備えている。レーダ送受信部は、ミリ波帯の電波（以下、「ミリ波」と称呼する。）を放射し、放射範囲内に存在する物標によって反射されたミリ波（即ち、反射波）を受信する。信号処理部は、送信したミリ波と受信した反射波との位相差、反射波の減衰レベル及びミリ波を送信してから反射波を受信するまでの時間等に基いて、物標の有無及び自車両と物標との相対関係（即ち、自車両と物標との距離、物標の方位、及び、自車両と物標との相対速度等）を表す情報を取得して運転支援ＥＣＵ１０に出力するようになっている。なお、自車両と物標との相対関係を表す情報は、「物標情報」と称呼される。
【００３９】
図２に示すように、レーダセンサ６１ａは、車体２００の前部の中央部に設けられ、自車両の前方領域に存在する物標を検出する。レーダセンサ６１ｂは、車体２００の前部の右側のコーナー部に設けられ、主に自車両の右前方領域に存在する物標を検出する。レーダセンサ６１ｃは、車体２００の前部の左側のコーナー部に設けられ、主に自車両の左前方領域に存在する物標を検出する。レーダセンサ６１ｄは、車体２００の後部の右側のコーナー部に設けられ、主に自車両の右後方領域に存在する物標を検出する。レーダセンサ６１ｅは、車体２００の後部の左側のコーナー部に設けられ、主に自車両の左後方領域に存在する物標を検出する。
【００４０】
図１に示した第１カメラシステム６２は、カメラ及び画像処理部（何れも図示略）を備えている。カメラは、自車両の周囲の風景を撮影して画像データを取得（生成）する。画像処理部は、取得された画像データに基いて、物標情報を取得する。第１カメラシステム６２は、その物標情報を運転支援ＥＣＵ１０に出力するようになっている。この場合、運転支援ＥＣＵ１０は、レーダセンサ６１によって得られた物標情報と、第１カメラシステム６２によって得られた物標情報と、を合成することにより、合成後の物標情報（自車両と物標との相対関係を表すパラメータ）を取得する。
【００４１】
更に、第１カメラシステム６２は、取得した画像データに基いて、道路の左及び右の区画線（白線）を認識し、その認識した区画線に基いて「道路の形状、及び、道路と自車両との位置関係（例えば、自車両が走行しているレーンの左端又は右端から自車両の車幅方向の中心位置までの距離）等」を含む「レーン情報」を演算し、演算したレーン情報を運転支援ＥＣＵ１０に出力するようになっている。
【００４２】
図２に示すように、第１カメラシステム６２ａは、フロントバンパー２０１の車幅方向の略中央部に設けられ、車両の前方の画像データを取得する。第１カメラシステム６２ｂは、車体２００の後部のリアトランク２０３の壁部に設けられ、車両の後方の画像データを取得する。第１カメラシステム６２ｃは、右側のドアミラー２０４に設けられ、車両の右方の画像データを取得する。第１カメラシステム６２ｄは、左側のドアミラー２０５に設けられており、車両の左方の画像データを取得する。
【００４３】
上述したように、運転支援ＥＣＵ１０は、レーダセンサ６１及び第１カメラシステム６２からの「物標情報及びレーン情報」を含む車両の周辺状況に関する情報を「車両周辺情報」として取得する。更に、レーダセンサ６１及び第１カメラシステム６２は、「車両周辺情報を検出する検出部（検出手段）」とまとめて称呼される場合がある。
【００４４】
図１に示した第２カメラシステム６３は、電子ミラー用のカメラシステムであり、カメラ及び画像処理部（何れも図示略）を備えている。カメラは、自車両の周囲の風景を撮影して画像データを取得（生成）する。画像処理部は、その取得された画像データから「一般的なドアミラーにより視認可能な領域に相当する領域の画像データ」を切り出す。第２カメラシステム６３は、その切り出した画像データを運転支援ＥＣＵ１０に出力するようになっている。
【００４５】
図２に示すように、第２カメラシステム６３ａは、右フェンダー部分に設けられ、車両の右後方領域の画像データを取得する。第２カメラシステム６３ｂは、左フェンダー部分に設けられ、車両の左後方領域の画像データを取得する。第２カメラシステム６３ｃは、リヤウインドガラス２０２の上方付近に設けられ、車両の後方領域の画像データを取得する。
【００４６】
図１に示したディスプレイ６４は、電子ミラー用のディスプレイであって、第２カメラシステム６３によって取得された画像データを表示するディスプレイである。図３に示すように、ディスプレイ６４ａが車室内のダッシュボード３０１の右端の位置に設けられ、ディスプレイ６４ｂがダッシュボード３０１の左端の位置に設けられ、ディスプレイ６４ｃがダッシュボード３０１の中央位置に設けられている。運転支援ＥＣＵ１０は、第２カメラシステム６３ａによって取得された画像データをディスプレイ６４ａに表示させる。運転支援ＥＣＵ１０は、第２カメラシステム６３ｂによって取得された画像データをディスプレイ６４ｂに表示させる。運転支援ＥＣＵ１０は、第２カメラシステム６３ｃによって取得された画像データをディスプレイ６４ｃに表示させる。運転者は、これらのディスプレイ６４ａ乃至６４ｃを視認することにより、ドアミラー及びバックミラーを用いずに、車両の左後方、右後方及び後方に存在する物標を確認することができる。なお、電子ミラー用ディスプレイとして、図示しないナビゲーション装置のディスプレイが利用されてもよい。この場合、運転支援ＥＣＵ１０は、ナビゲーション装置のディスプレイの領域を３つの領域に分割して、各領域に第２カメラシステム６３ａ乃至６３ｃの画像データを表示させてもよい。
【００４７】
図１に示した洗浄装置６５は、洗浄液と圧縮空気との混合体を「レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３の後述する保護窓（図４の４１１ａ乃至４１１ｌを参照。）」に対して噴射することによって、保護窓を洗浄するようになっている。保護窓の洗浄を行うことは、「洗浄処理を実行する」とも表現される。保護窓は「窓部」とも称呼される。従って、レーダセンサ６１は、その窓部を通過する電波（ミリ波）を利用して物標情報を検出する。第１カメラシステム６２は、その窓部を通過する光を利用して物標情報及びレーン情報を取得する。洗浄装置６５は、運転支援ＥＣＵ１０からの指令（洗浄指令信号）に応じて、後述する「電動式空気ポンプ５０４、電磁式開閉弁５０３及び電動式洗浄液ポンプ４０２」を作動させることによって、洗浄処理を実行する。
【００４８】
図１に示したタッチセンサ６６は、図３に示すように、操舵ハンドル３０２のグリップ部に設けられている。タッチセンサ６６は、運転者の手が操舵ハンドル３０２に触れているか否かを示す信号を運転支援ＥＣＵ１０に出力するようになっている。具体的には、タッチセンサ６６は、運転者の手が操舵ハンドル３０２に置かれている（触れている）ときにＯＮ信号を出力し、運転者の手が操舵ハンドル３０２から離れている（触れていない）ときにＯＦＦ信号を出力するようになっている。運転支援ＥＣＵ１０は、タッチセンサ６６からの信号に基いて、運転者の手が操舵ハンドル３０２に触れているか否かを判定するようになっている。
【００４９】
図１に示した視線センサ６７は、図３に示すように、ダッシュボード３０１における運転席の近傍の位置に設けられている。視線センサ６７の検出面は運転席に向けられている。視線センサ６７は、運転者の視線を検出するようになっている。具体的には、視線センサ６７はカメラ（図示略）を備える。視線センサ６７はカメラによって運転者の顔を撮像して顔画像データを生成する。運転支援ＥＣＵ１０は、視線センサ６７から顔画像データを取得し、その顔画像データに基いて運転者の瞳孔反射から運転者の視線方向を推定することにより、推定した視線方向を示す視線データを取得するようになっている。視線データの値は、例えば、運転者が運転席にて真っすぐ前方を見たときの状態を基準として、当該状態から視線方向が水平方向及び垂直方向にそれぞれ何度回転しているかを表す「視線の角度（水平方向視線角度及び垂直方向視線角度）」の情報である。
【００５０】
このように、運転支援ＥＣＵ１０は、タッチセンサ６６及び視線センサ６７からの情報に基いて、「運転者の手が操舵ハンドル３０２に触れているか否かについての情報、及び、運転者の視線方向についての情報」（以下、これらの運転者の状態に関する情報を「運転者状態情報」と称呼する場合がある。）を取得する。
【００５１】
図１に示した走行支援スイッチ６８は、運転者により操作されるスイッチである。運転者は、走行支援スイッチ６８を操作することにより、後述する追従車間距離制御を実行するか否かを選択することができる。更に、運転者は、走行支援スイッチ６８を操作することにより、後述する車線維持制御（操舵支援制御）を実行するか否かを選択することができる。
【００５２】
洗浄スイッチ６９は、運転者が運転支援ＥＣＵ１０に対して「洗浄処理の実行」を要求する際（洗浄要求を発生させる際）に運転者により操作されるスイッチである。洗浄スイッチ６９は、操作されたときに、その洗浄要求を表す信号（洗浄要求信号）を発生する。
【００５３】
スピーカ７０は、車両の左右のフロントドア（不図示）のそれぞれの内側（車室内側）に配設されている。スピーカ７０は、運転支援ＥＣＵ１０の指示に応じて音声メッセージ及び警告音等の発音を行うことができる。
【００５４】
次に、洗浄装置６５についてより具体的に説明する。図４に示すように、レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３のそれぞれの設置位置には、それらの検出面（センシング面）を泥、埃及び塵等から保護するための保護窓４１１ａ乃至保護窓４１１ｌが設けられている。以下、保護窓４１１ａ乃至保護窓４１１ｌは「保護窓４１１又は窓部４１１」と総称される場合がある。保護窓４１１は、透光性の板部材（例えば、透明なガラス又は透明な樹脂等の窓）である。なお、レーダセンサ６１の検出面とは、物標によって反射された反射波を受けるレンズの面を意味する。第１カメラシステム６２及び第２カメラシステム６３のそれぞれの検出面とは、被写体からの光を受光するレンズの面を意味する。
【００５５】
洗浄装置６５は、洗浄液タンク４０１と、電動式洗浄液ポンプ４０２と、複数の洗浄部４０３ａ乃至４０３ｌと、を含む。洗浄液タンク４０１と複数の洗浄部４０３ａ乃至４０３ｌのそれぞれとの間は、配管４０４によって接続される。電動式洗浄液ポンプ４０２は、配管４０４において洗浄液タンク４０１と複数の洗浄部４０３ａ乃至４０３ｌとの間に設けられている。
【００５６】
洗浄液タンク４０１には洗浄液が貯留される。本例において、洗浄液は水である。なお、洗浄液は、凍結防止用にアルコールが含まれている液体であってもよく、洗剤が含まれている液体であってもよい。電動式洗浄液ポンプ４０２は作動したときに洗浄液タンク４０１に貯留された洗浄液を汲み上げ、洗浄液を複数の洗浄部４０３ａ乃至４０３ｌに圧送（供給）する。電動式洗浄液ポンプ４０２は、運転支援ＥＣＵ１０からの指令に応じて自身を作動又は停止させる。
【００５７】
複数の洗浄部４０３ａ乃至４０３ｌは互いに同様の構成を有する。よって、以下では、洗浄部４０３ａについて説明し、他の洗浄部４０３ｂ乃至４０３ｌの詳細な説明は省略する。
【００５８】
図５（ａ）及び図５（ｂ）に示すように、洗浄部４０３ａは、ノズル部５０１、合流ジョイント５０２、電磁式開閉弁５０３、電動式空気ポンプ５０４及び配管５０５を有する。
【００５９】
運転支援ＥＣＵ１０は、洗浄処理を実行する際、電動式空気ポンプ５０４を作動させ、電磁式開閉弁５０３を開け、電動式洗浄液ポンプ４０２（図４を参照。）を作動させる。この結果、圧縮空気が配管５０５を通り、合流ジョイント５０２内の流路５０２ａに流入する。洗浄液は、配管４０４から、流路５０２ｂを通って流路５０２ａに流入する。これによって、流路５０２ａにて洗浄液と圧縮空気とが混合し、洗浄液と圧縮空気とが混合した混合体がノズル部５０１内の流路５０１ｂを通り、その後、噴射口５０１ａから保護窓４１１ａに向けて噴射される。
【００６０】
運転支援ＥＣＵ１０は、洗浄要求が発生し、且つ、以降で説明する洗浄開始条件が成立したときに、洗浄処理を実行する。なお、洗浄要求は、洗浄スイッチ６９が運転者に操作された場合、及び、保護窓４１１ａ乃至保護窓４１１ｌのうちの少なくとも１つにおいて汚れが検出された場合に発生する。
【００６１】
運転支援ＥＣＵ１０は、保護窓４１１ａ乃至保護窓４１１ｌのうちの少なくとも１つにおいて汚れが検出された場合、その汚れのレベルに応じて洗浄処理の実行時間（以下、「洗浄実行期間」と称呼する場合がある。）を制御するようになっている。汚れのレベルは、第１レベルＬＶ１（汚れ低レベルＬＶ１）と、第１レベルＬＶ１よりも高いレベルの第２レベルＬＶ２（汚れ高レベルＬＶ２）とを含む。第１レベルＬＶ１は、後述する車線維持制御（操舵支援制御）に対する影響が比較的低い小さな汚れであることを意味する。汚れのレベルが第１レベルＬＶ１である場合、車線維持制御が不安定になる可能性が比較的低いことから、車両の周辺状況及び車両の走行状態に応じて（後述する図１０のルーチンで設定される状況フラグＦ４の値に応じて）、洗浄処理を実行する。第２レベルＬＶ２は、車線維持制御（操舵支援制御）に対する影響が第１レベルＬＶ１に比べて高い大きな汚れであることを意味する。汚れのレベルが第２レベルＬＶ２である場合、車線維持制御が不安定になる可能性が高いことから、より早く洗浄処理が実行される。
【００６２】
汚れのレベルが第１レベルＬＶ１である場合、運転支援ＥＣＵ１０は、第１洗浄時間Ｔｍ１に渡り洗浄処理を実行する。これに対して、汚れのレベルが第２レベルＬＶ２である場合、運転支援ＥＣＵ１０は、第１洗浄時間Ｔｍ１よりも長い第２洗浄時間Ｔｍ２に渡り洗浄処理を実行する。汚れのレベルが第１レベルＬＶ１である場合、洗浄処理に使用される洗浄液の量が少なくなる。従って、洗浄液タンク４０１に洗浄液を補充する頻度を抑えることができる。汚れのレベルが第２レベルＬＶ２である場合、洗浄時間を長くすることにより、保護窓４１１ａ乃至保護窓４１１ｌの汚れを確実に落とすことができる。
【００６３】
なお、本実施形態において、洗浄処理を実行する際、運転支援ＥＣＵ１０は、総ての保護窓４１１に対して洗浄処理を実行する。これは、保護窓４１１のうちの１つに汚れが検出された場合、他の保護窓も同じ環境に曝されていることから、他の保護窓も汚れている可能性があるためである。
【００６４】
更に、本実施形態において、第２カメラシステム６３に対応する保護窓４１１ｊ乃至４１１ｌの汚れは車線維持制御（操舵支援制御）に影響しない。しかし、レーダセンサ６１及び第１カメラシステム６２に対応する保護窓４１１ａ乃至４１１ｉも同じ環境に曝されているので、保護窓４１１ｊ乃至４１１ｌの汚れが検出された場合、保護窓４１１ａ乃至４１１ｉも汚れている可能性がある。更に、運転者は、電子ミラー用のディスプレイ６４の画面を視認するので、その画面から保護窓４１１ｊ乃至４１１ｌが汚れていると判断し、洗浄スイッチ６９を操作する。従って、第２カメラシステム６３に対応する保護窓４１１ｊ乃至４１１ｌに汚れが検出されたことによって洗浄要求が発生した場合、及び、洗浄スイッチ６９が操作されることにより洗浄要求が発生した場合、の何れの場合であっても、運転支援ＥＣＵ１０は、総ての保護窓４１１に対して洗浄処理を実行する。
【００６５】
次に、保護窓の汚れの検出方法について簡単に説明する。レーダセンサ６１に対応する保護窓の汚れは、様々な既知の方法の一つにより検出され得る（例えば、特開２００３−３２０８６６号公報を参照。）。例えば、運転支援ＥＣＵ１０は、レーダセンサ６１の反射波の強度（以下、「反射強度」と称呼する。）を求める。具体的には、運転支援ＥＣＵ１０は、レーダセンサ６１の受信信号の周波数スペクトルを求め、その周波数スペクトル中に現れるピークの高さを反射強度として求める。反射強度が所定の第１反射閾値ＲＴｈ１より小さい場合、運転支援ＥＣＵ１０は、レーダセンサ６１に対応する保護窓の汚れが第１レベル（低レベル）ＬＶ１であると判定する。更に、反射強度が、第１反射閾値ＲＴｈ１より小さい第２反射閾値ＲＴｈ２より小さい場合、運転支援ＥＣＵ１０は、レーダセンサ６１に対応する保護窓の汚れが第２レベル（高レベル）ＬＶ２であると判定する。
【００６６】
更に、カメラシステム６２及び６３に対応する保護窓の汚れは、様々な既知の方法の一つにより検出され得る（例えば、特開２００８−０６０８７４号公報を参照。）。例えば、運転支援ＥＣＵ１０は、連続する二回の演算タイミングにて特定のカメラシステムにより取得された画像データを取得し、取得した画像データを用いて次の演算タイミングでのオプティカルフローを推定する。オプティカルフローとは、画像中のある点（以下、「画像点」と称呼する。）が次の瞬間にどの方向へ、どの程度の距離を移動するかを示すベクトルである。運転支援ＥＣＵ１０は、次の演算タイミングにて、推定されたオプティカルフローと実際のオプティカルフローとを比較する。運転支援ＥＣＵ１０は、「推定されたオプティカルフローと実際のオプティカルフローとが大きく異なる画像点（以下、「異常点」と称呼する。）」があるか否かを判定する。画像全体における異常点の数が第１閾値ＮＴｈ１よりも大きい場合、運転支援ＥＣＵ１０は、保護窓の汚れが第１レベル（低レベル）ＬＶ１であると判定する。更に、上記の異常点の数が、第１閾値ＮＴｈ１よりも大きい第２閾値ＮＴｈ２よりも大きい場合、運転支援ＥＣＵ１０は、保護窓の汚れが第２レベル（高レベル）ＬＶ２であると判定する。
【００６７】
上述したように、運転支援ＥＣＵ１０は、機能上、ＣＰＵにより実現される「レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３の各々の保護窓４１１の汚れを検出する汚れ検出部（汚れ検出手段）１０Ｘ」を有している。
【００６８】
＜追従車間距離制御（ＡＣＣ）＞
次に、運転支援ＥＣＵ１０が実行する運転支援制御について説明する。運転支援制御の１つである追従車間距離制御は、物標情報に基いて、自車両の直前を走行している先行車と自車両との車間距離を所定の距離に維持しながら、自車両を先行車に追従させる制御である。追従車間距離制御自体は周知である（例えば、特開２０１４−１４８２９３号公報、特開２００６−３１５４９１号公報、特許第４１７２４３４号明細書、及び、特許第４９２９７７７号明細書等を参照。）。従って、以下、簡単に説明する。
【００６９】
運転支援ＥＣＵ１０は、追従車間距離制御が要求されている場合、物標情報に基いて追従対象車両を選択する。運転支援ＥＣＵ１０は、追従対象車両と自車両との車間距離が目標車間距離Ｄｔｇｔとなるように自車両の目標加速度Ｇｔｇｔを求める。運転支援ＥＣＵ１０は、車両の加速度が目標加速度Ｇｔｇｔに一致するように、エンジンＥＣＵ２０を用いてエンジンアクチュエータ２１を制御するとともに、必要に応じてブレーキＥＣＵ３０を用いてブレーキアクチュエータ３１を制御する。
【００７０】
このように、運転支援ＥＣＵ１０は、機能上、ＣＰＵにより実現される「追従車間距離制御（ＡＣＣ）を実行するＡＣＣ制御部１０Ｙ」を有している。
【００７１】
＜車線維持制御（操舵支援制御）＞
運転支援ＥＣＵ１０は、追従車間距離制御の実行中に、走行支援スイッチ６８の操作によって車線維持制御が要求されている場合、運転支援制御の１つである車線維持制御を実行する。車線維持制御は、自車両を「白線（区画線）により特定される走行レーン（自車両が走行している走行車線）」内の適切な位置で走行させるように操舵制御を行う制御である。車線維持制御は、「ＬＴＣ（Lane Trace Control）」及び「ＴＪＡ(Traffic Jam Assist Control)」等の様々な名称により称呼される。車線維持制御は周知であるので（例えば、特開２００８−１９５４０２号公報、特開２００９−１９０４６４号公報、特開２０１０−６２７９号公報、及び、特許第４３４９２１０号明細書、等を参照。）、以下、簡単に説明する。
【００７２】
運転支援ＥＣＵ１０は、白線又は操舵追従先行車の走行軌跡（「先行車軌跡」と称呼される場合がある。）、若しくは、これらの両方を活用して、目標走行ライン（目標走行路）を決定する。目標走行ラインは、例えば、その自車両が走行している走行レーンを規定する左右の白線の中央ラインである。運転支援ＥＣＵ１０は、自車両の横位置（即ち、道路に対する車幅方向の自車両の位置）が目標走行ライン付近に維持されるように操舵制御量を求める。操舵制御量は、例えば目標操舵角である。
【００７３】
具体的には、運転支援ＥＣＵ１０は、目標走行ラインを決定した後、車線維持制御に必要な目標走路情報（目標走行ラインの曲率ＣＬ、目標走行ラインに対するヨー角θＬ、及び、目標走行ラインに対する横偏差ｄＬ）を取得する。ここで、ヨー角θＬは、目標走行ラインの方向（接線方向）と自車両の進行方向とのずれ角である。横偏差ｄＬは、自車両が目標走行ラインに対して道路幅方向に偏移している量を示す長さである。
【００７４】
運転支援ＥＣＵ１０は、所定時間が経過するごとに、曲率ＣＬとヨー角θＬと横偏差ｄＬとを下記の（１）式に適用することにより目標操舵角θ*を演算する。（１）式において、Ｋlta１、Ｋlta２及びＫlta３は予め定められた制御ゲインである。
θ*＝Ｋlta１・ＣＬ＋Ｋlta２・θＬ＋Ｋlta３・ｄＬ      …（１）
【００７５】
運転支援ＥＣＵ１０は、操舵制御量（目標操舵角θ*）を特定する操舵指令をＥＰＳ・ＥＣＵ４０に送信することにより、アシストモータ４１を駆動する。その結果、車両の実際の操舵角θが目標操舵角θ*に一致させられる。
【００７６】
このように、運転支援ＥＣＵ１０は、機能上、ＣＰＵにより実現される「目標走行ラインに沿って車両を走行させるための操舵支援を行う操舵支援制御を実行する操舵支援制御部（操舵支援制御手段）１０Ｚ」を有している。
【００７７】
更に、運転支援ＥＣＵ１０は、第１モード（ハンズオンモード）と、第２モード（ハンズオフモード）と、の何れかのモードにて操舵支援制御を実行するようになっている。第１モードは、運転者が操舵ハンドル３０２に触れており且つ運転者が車両の前方を見ている状態（以降、「Ｈａｎｄｓ−ＯＮ」状態と称呼する。）であることを前提とする第１操舵支援制御を実行するモードである。第２モードは、運転者が「Ｈａｎｄｓ−ＯＮ」状態であることを前提としない第２操舵支援制御を実行するモードである。以下、これらのモードについて説明する。
【００７８】
１．第１モード
運転支援ＥＣＵ１０は、後述する第２モードにて第２操舵支援制御を実行する場合に比べて目標走行ラインの信頼度が低い場合（従って、車線維持制御の信頼性が低い場合）に第１モードを選択する。第１モードが選択される「目標走行ラインの信頼度が低い場合」は、例えば、以下の条件Ａが満たされる場合である。
（条件Ａ）自車両から前方に向けて第１所定距離内の左白線及び右白線の両方が検出できているが、自車両から前方に向けて第１所定距離以上の左白線及び右白線の少なくとも一方が検出できていない。
【００７９】
操舵支援制御のモードが第１モードであるとき、運転支援ＥＣＵ１０は、第１操舵支援制御を実行する。第１操舵支援制御において使用される「上記（１）式の制御ゲイン（特に、Ｋlta２及びＫlta３）」の大きさは、第２モードにおける第２操舵支援制御で使用される「上記（１）式の制御ゲイン（特に、Ｋlta２及びＫlta３）」よりも小さい値に設定される。従って、第１モードにおける車線維持制御の応答性は、第２モードにおける車線維持制御の応答性よりも低くなる。その結果、自車両の位置及び向きが急激に変化することを防止することができる。
【００８０】
更に、操舵支援制御のモードが第１モードであるとき、運転支援ＥＣＵ１０は、運転者が「Ｈａｎｄｓ−ＯＮ」状態であることを要求する。換言すると、第１モードは、運転者が「Ｈａｎｄｓ−ＯＮ」状態であることを前提とした第１操舵支援制御を実行するモードである。運転支援ＥＣＵ１０は、運転者状態情報に基いて、運転者が「Ｈａｎｄｓ−ＯＮ」状態であるかを監視（判定）する。例えば、運転支援ＥＣＵ１０は、以下の総ての条件Ｂ１乃至条件Ｂ３が成立したときに運転者が「Ｈａｎｄｓ−ＯＮ」状態であると判定する。
条件Ｂ１：タッチセンサ６６からの信号がＯＮ信号である。
条件Ｂ２：上述の視線データが示す水平方向視線角度の大きさが所定の第１角度閾値以内である。
条件Ｂ３：上述の視線データが示す垂直方向視線角度の大きさが所定の第２角度閾値以内である。
【００８１】
これに対し、運転支援ＥＣＵ１０は、上記の条件Ｂ１乃至条件Ｂ３のうちの少なくとも一つが成立しないとき、運転者が「Ｈａｎｄｓ−ＯＮ」状態でない（運転者が「Ｈａｎｄｓ−ＯＦＦ」状態である）と判定する。この場合、運転支援ＥＣＵ１０は、その旨を示す警告を表示器５１に表示させるとともに、スピーカ７０から当該警告の内容を発話させる。運転支援ＥＣＵ１０は、第１モードにて作動している場合、「Ｈａｎｄｓ−ＯＮ」状態でない状態が所定時間以上継続したとき、操舵支援制御（第１操舵支援制御）をキャンセルする。
【００８２】
運転支援ＥＣＵ１０が第１モードにて作動している場合、運転者は「Ｈａｎｄｓ−ＯＮ」状態である可能性が極めて高いので、自車両の横位置が適切な位置から乖離した場合、運転者は迅速に自車両の横位置を修正することができる。
【００８３】
２．第２モード
運転支援ＥＣＵ１０は、第１モードにて第１操舵支援制御を実行する場合に比べて目標走行ラインの信頼度が高い場合（従って、車線維持制御の信頼性が高い場合）に第２モードを選択する。第２モードが選択される「目標走行ラインの信頼度が高い場合」は、例えば、以下の条件Ｃが満たされる場合である。
（条件Ｃ）自車両から前方に向けて「第１所定距離よりも長い第２所定距離」内の左白線及び右白線の両方が検出できている。
【００８４】
上述したように、第２操舵支援制御において使用される「上記（１）式の制御ゲイン（特に、Ｋlta２及びＫlta３）」の大きさは、第１モードにおける第１操舵支援制御で使用される「上記（１）式の制御ゲイン（特に、Ｋlta２及びＫlta３）」よりも大きい値に設定される。従って、第２モードにおける車線維持制御の応答性は、第１モードにおける車線維持制御の応答性よりも高くなる。その結果、自車両の位置及び向きを迅速に修正することができる。
【００８５】
操舵支援制御のモードが第２モードであるとき、運転支援ＥＣＵ１０は、運転者が「Ｈａｎｄｓ−ＯＮ」状態であることを要求しない。換言すると、第２モードは、運転者が「Ｈａｎｄｓ−ＯＮ」状態であることを前提としない第２操舵支援制御を実行するモードである。
【００８６】
＜洗浄要求発生時の処理の概要＞
次に、運転支援ＥＣＵ１０が車線維持制御（操舵支援制御）を実行している状況において洗浄要求が発生したときの運転支援ＥＣＵ１０の作動について説明する。
【００８７】
上述したように、車線維持制御（操舵支援制御）の実行中に保護窓４１１に対して洗浄処理を行うと、レーダセンサ６１及び第１カメラシステム６２が車両周辺状況を一時的に検出できなくなる。従って、操舵支援制御が不安定になる。このとき、例えば、自車両の周囲に他車両が存在する場合、自車両がその他車両に接近する虞がある。
【００８８】
そこで、運転支援ＥＣＵ１０は、予め定められた洗浄禁止条件が成立しているか否かを判定する。この洗浄禁止条件は、操舵支援制御中に洗浄処理を実行すると仮定したときに自車両が上述した検出部（レーダセンサ６１及び第１カメラシステム６２）により検出されている物体に接近する可能性が高いと予測される場合に成立する条件である。より具体的に述べると、洗浄禁止条件は、後述する「車両周辺条件及び走行状態条件」が共に成立するときに成立する条件である。なお、本明細書における「物体」とは、自車両の周囲に存在する移動立体物（他車両、自転車及び歩行者等）及び固定立体物（ガードレール及びフェンス等）を含む。運転支援ＥＣＵ１０は、物体と自車両との相対速度及び自車両の速度に基いて物体の絶対速度を推定し、その絶対速度が所定の閾値よりも高い場合に物体が移動立体物であると判定し、その絶対速度が前記閾値よりも低い場合に物体が固定立体物であると判定する。更に、運転支援ＥＣＵ１０は、第１カメラシステム６２により取得された画像データから物体の特徴量を抽出し、その特徴量と、予めＲＯＭに記憶されている「特徴量と物体の種類との関係」とから、その物体が移動立体物であるか固定立体物であるかを判定してもよい。
【００８９】
そして、運転支援ＥＣＵ１０は、車線維持制御（操舵支援制御）の実行中に洗浄要求が発生した場合、洗浄禁止条件が成立していると判定されるとき、洗浄装置６５に洗浄処理を実行させることを、後述するように原則として禁止する。従って、「操舵支援制御の実行中に洗浄処理が実行されることによって自車両が自車両の周辺に存在する物体に接近する可能性」を低減することができる。
【００９０】
更に、第１モード（ハンズオンモード）にて実行される第１操舵支援制御は、上述したように、運転者が操舵ハンドル３０２に触れている状態であることを前提としている。従って、洗浄処理によって第１操舵支援制御が不安定になったとしても、運転者は「直ちに操舵を行って、車両の位置を修正すること」ができる。そこで、運転支援ＥＣＵ１０は、操舵支援制御の実行中に洗浄要求が発生した場合に操舵支援制御のモードが第１モードであるときには、洗浄禁止条件が成立しているか否かに関わらず、洗浄装置６５に洗浄処理を実行させることを許容する。従って、運転支援ＥＣＵ１０は、洗浄禁止条件が成立しているとの判定がなされたときであっても、操舵支援制御のモードが第１モードであるときには、洗浄装置６５に洗浄処理を実行させ得る。たとえ洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【００９１】
これに対し、第２モード（ハンズオフモード）にて実行される第２操舵支援制御は、上述したように、運転者が操舵ハンドル３０２に触れている状態であることを前提としていない。従って、操舵支援制御のモードが第２モードである場合、運転者は操舵ハンドル３０２に触れていない可能性が高い。このため、洗浄処理によって第２操舵支援制御が不安定になった場合、運転者は車両の位置を直ちに修正できない可能性がある。そこで、運転支援ＥＣＵ１０は、操舵支援制御のモードが第２モードであるときに操舵支援制御の実行中に洗浄要求が発生した場合、洗浄禁止条件が成立していると判定されると、操舵支援制御のモードを第２モードから第１モードへ移行させる。従って、第１操舵支援制御を実行しながら洗浄処理を実行させることができる。
【００９２】
更に、運転支援ＥＣＵ１０は、操舵支援制御のモードが第２モードであるときに操舵支援制御の実行中に洗浄要求が発生した場合、洗浄禁止条件が成立していないと判定されると、洗浄装置６５に洗浄処理を実行させることを許容する。従って、たとえ洗浄処理によって第２操舵支援制御が不安定になったとしても、自車両が自車両の周囲の物体に接近する可能性は低い。
【００９３】
＜具体的作動＞
次に、運転支援ＥＣＵ１０のＣＰＵ１０ａ（単に「ＣＰＵ」と称呼する場合がある。）の具体的作動について説明する。ＣＰＵは、所定時間が経過する毎に図６にフローチャートにより示した「車線維持制御（操舵支援制御）の開始／終了判定ルーチン」を実行するようになっている。なお、ＣＰＵは図示しないルーチンにより追従車間距離制御（ＡＣＣ）を実行するようになっている。
【００９４】
更に、ＣＰＵは、図示しないルーチンを所定時間が経過する毎に実行することにより、上述したように、レーダセンサ６１及び第１カメラシステム６２からの情報を用いて車両周辺情報を取得してＲＡＭに格納している。更に、ＣＰＵは、図示しないルーチンを所定時間が経過する毎に実行することにより、上述したように、タッチセンサ６６及び視線センサ６７から運転者状態情報を取得してＲＡＭに格納している。
【００９５】
従って、所定のタイミングになると、ＣＰＵは、ステップ６００から図６のルーチンを開始してステップ６１０に進み、ＬＴＣフラグＦ１が「０」であるか否かを判定する。ＬＴＣフラグＦ１は、その値が「１」であるとき車線維持制御（第１操舵支援制御及び第２操舵支援制御の何れか）が実行されていることを示し、その値が「０」であるとき車線維持制御が実行されていないことを示す。ＬＴＣフラグＦ１は車線維持制御実行フラグとも称呼される。ＬＴＣフラグＦ１の値は、図示しないイグニッションスイッチがＯＦＦ位置からＯＮ位置へと変更されたときにＣＰＵにより実行されるイニシャライズルーチンにおいて「０」に設定される。更に、ＬＴＣフラグＦ１の値は、後述する図９のステップ９６０においても「０」に設定される。
【００９６】
いま、ＬＴＣフラグＦ１の値が「０」である（車線維持制御が実行されていない）と仮定すると、ＣＰＵはステップ６１０にて「Ｙｅｓ」と判定してステップ６２０に進み、所定のＬＴＣ実行条件（車線維持制御の実行条件）が成立しているか否かを判定する。
【００９７】
ＬＴＣ実行条件は、以下の条件１乃至条件３の総てが成立したときに成立する。
（条件１）：追従車間距離制御の実行中であり、且つ、走行支援スイッチ６８の操作により車線維持制御を実行することが選択されている。
（条件２）：第１カメラシステム６２によって、左白線及び右白線が少なくとも自車両から前方に向けて第１所定距離まで認識できている。
（条件３）：運転者が「Ｈａｎｄｓ−ＯＮ」状態である。
【００９８】
なお、条件２は以下のような条件であってもよい。
・第１カメラシステム６２によって左白線及び右白線が少なくとも自車両から前方に向けて第１所定距離まで認識できているか、又は、操舵追従先行車が存在している。
【００９９】
ＬＴＣ実行条件が成立していない場合、ＣＰＵは、そのステップ６２０にて「Ｎｏ」と判定し、ステップ６９５に直接進んで本ルーチンを一旦終了する。
【０１００】
これに対し、ＬＴＣ実行条件が成立している場合、ＣＰＵは、そのステップ６２０にて「Ｙｅｓ」と判定して、ステップ６３０に進む。ＣＰＵは、ステップ６３０にて、ＬＴＣフラグＦ１を「１」に設定して、ステップ６９５に進んで本ルーチンを一旦終了する。この結果、操舵支援制御が実行される（図８のステップ８１０での「Ｙｅｓ」との判定を参照。）。
【０１０１】
一方、ＣＰＵがステップ６１０の処理を実行する時点において、ＬＴＣフラグＦ１の値が「１」である（車線維持制御が実行されている）場合、ＣＰＵは、そのステップ６１０にて「Ｎｏ」と判定して、ステップ６４０に進み、所定のＬＴＣ終了条件（車線維持制御の終了条件）が成立しているか否かを判定する。
【０１０２】
ＬＴＣ終了条件は、以下の条件４乃至条件６の少なくとも一つが成立したときに成立する。
（条件４）：追従車間距離制御が終了した。
（条件５）：走行支援スイッチ６８の操作により、車線維持制御の実行を終了することが選択されている。
（条件６）：第１カメラシステム６２によって、左白線及び右白線の何れもが認識できない。即ち、車線維持制御に必要な情報が取得できない。
【０１０３】
なお、条件６は以下のような条件であってもよい。
・自車両の前方に操舵追従先行車が存在しておらず、且つ、第１カメラシステム６２によって左白線及び右白線の何れもが認識できない。
【０１０４】
ＬＴＣ終了条件が成立しない場合、ＣＰＵは、そのステップ６４０にて「Ｎｏ」と判定し、ステップ６９５に直接進んで本ルーチンを一旦終了する。これに対し、ＬＴＣ終了条件が成立している場合、ＣＰＵは、そのステップ６４０にて「Ｙｅｓ」と判定して、ステップ６５０に進む。ＣＰＵは、ステップ６５０にて、ＬＴＣフラグＦ１を「０」に設定して、ステップ６９５に進んで本ルーチンを一旦終了する。この結果、操舵支援制御が停止される（図８のステップ８１０での「Ｎｏ」との判定を参照。）。
【０１０５】
更に、ＣＰＵは、所定時間が経過する毎に、図７にフローチャートにより示した「モード選択ルーチン」を実行するようになっている。
【０１０６】
従って、所定のタイミングになると、ＣＰＵは図７のステップ７００から処理を開始してステップ７１０に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ７１０にて「Ｎｏ」と判定し、ステップ７９５に直接進んで本ルーチンを一旦終了する。
【０１０７】
これに対し、ＬＴＣフラグＦ１の値が「１」である場合、ＣＰＵは、ステップ７１０にて「Ｙｅｓ」と判定してステップ７２０に進み、車線維持制御のモードが現時点で設定されているか否かを判定する。
【０１０８】
いま、ＬＴＣフラグＦ１の値が「０」から「１」に変更された直後であることから、車線維持制御のモードが現時点で設定されていないと仮定する。この場合、ＣＰＵは、そのステップ７２０にて「Ｎｏ」と判定してステップ７５０に直接進み、車線維持制御のモードとして第１モードを選択する。ＣＰＵは、第１モードを選択したことを知らせる通知を表示器５１に表示させるとともに、スピーカ７０から当該通知の内容を発話させる（以降、このようなモードの通知処理を「モード通知処理」と称呼する。）。その後、ＣＰＵは、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１０９】
ＣＰＵがステップ７２０の処理を実行する時点において、車線維持制御のモードが既に設定されている場合、ＣＰＵは、そのステップ７２０にて「Ｙｅｓ」と判定してステップ７３０に進み、現在の車線維持制御のモードが第１モードであるか否かを判定する。いま、車線維持制御のモードが第１モードであり、車線維持制御を開始してからの経過時間が所定の時間閾値Ｔｈａ以下であると仮定する。この場合、ＣＰＵは、そのステップ７３０にて「Ｙｅｓ」と判定してステップ７４０に進み、第１条件が成立するか否かを判定する。第１条件は、車線維持制御を開始してからの経過時間が所定の時間閾値Ｔｈａ以内であるときに成立する。即ち、運転支援ＥＣＵ１０は、上記の経過時間が所定の時間閾値Ｔｈａを超えるまで、第１モードによる車線維持制御を実行する。
【０１１０】
前述の仮定によれば、第１条件が成立する。従って、ＣＰＵは、そのステップ７４０にて「Ｙｅｓ」と判定してステップ７５０に進み、車線維持制御（操舵支援制御）のモードとして第１モードを選択する。その後、ＣＰＵは、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１１１】
この状態が継続する場合、所定時間が経過する毎に、ＣＰＵはステップ７００から処理を開始し、ステップ７１０、ステップ７２０及びステップ７３０のそれぞれにて「Ｙｅｓ」と判定して、ステップ７４０の判定を繰り返し行う。いま、車線維持制御を開始してからの経過時間が所定の時間閾値Ｔｈａよりも大きくなったと仮定する。この場合、第１条件が成立しないので、ＣＰＵは、そのステップ７４０にて「Ｎｏ」と判定してステップ７６０に進み、第２条件が成立するか否かを判定する。第２条件は、上記の条件Ｃと同じであり、自車両から前方に向けて「第１所定距離よりも長い第２所定距離」内の左白線及び右白線の両方が検出できている場合に成立する。
【０１１２】
第２条件が成立しない場合、ＣＰＵは、そのステップ７６０にて「Ｎｏ」と判定してステップ７５０に進んで、車線維持制御（操舵支援制御）のモードとして第１モードを選択する。その後、ＣＰＵは、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１１３】
これに対し、第２条件が成立する場合、ＣＰＵは、そのステップ７６０にて「Ｙｅｓ」と判定してステップ７７０に進み、移行フラグＦ２が「１」であるか否かを判定する。移行フラグＦ２は、洗浄要求が発生したときに設定されるフラグであって、車線維持制御のモードを第２モードから第１モードへ移行させるか否かを示すフラグである。移行フラグＦ２は、その値が「１」であるとき、車線維持制御のモードを第２モードから第１モードへ移行させることを示す。移行フラグＦ２は、その値が「０」であるとき、車線維持制御のモードとして第２モードを選択する（又は第２モードで維持する）ことを示す。移行フラグＦ２の値は、上述したイニシャライズルーチンにおいて「０」に設定される。移行フラグＦ２の値は、以降で説明する図１１のルーチンのステップ１１４５及び図１２のルーチンのステップ１２４０にて「１」に設定され、図１３のルーチンのステップ１３６０にて「０」に設定される。
【０１１４】
移行フラグＦ２が「１」でない場合、ＣＰＵは、そのステップ７７０にて「Ｎｏ」と判定してステップ７８０に進んで、車線維持制御（操舵支援制御）のモードとして第２モードを選択して、上述のモード通知処理を実行する。その後、ＣＰＵは、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１１５】
これに対し、移行フラグＦ２が「１」である場合、ＣＰＵは、そのステップ７７０にて「Ｙｅｓ」と判定してステップ７５０に進む。ＣＰＵは、車線維持制御（操舵支援制御）のモードとして第１モードを選択して、上述のモード通知処理を実行する。その後、ＣＰＵは、ステップ７９５に進んで本ルーチンを一旦終了する。
【０１１６】
以降で説明するように、移行フラグＦ２が洗浄処理の開始前に「１」に設定された場合（図１１のルーチンのステップ１１４５及び図１２のルーチンのステップ１２４０を参照）、移行フラグＦ２のその値は、洗浄処理が終了するまで維持される（図１３のルーチンのステップ１３６０を参照。）。従って、洗浄要求が発生したときに車線維持制御のモードが第２モードから第１モードへ移行された場合、洗浄処理が実行されている間は、第１モードが維持される。
【０１１７】
更に、ＣＰＵは、所定時間が経過する毎に、図８にフローチャートにより示した「車線維持制御実行ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図８のステップ８００から処理を開始してステップ８１０に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ８１０にて「Ｎｏ」と判定し、ステップ８９５に直接進んで本ルーチンを一旦終了する。この場合、車線維持制御としての操舵支援制御である「第１操舵支援制御及び第２操舵支援制御」の何れもが実行されない。
【０１１８】
これに対し、ＬＴＣフラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ８１０にて「Ｙｅｓ」と判定してステップ８２０に進み、洗浄フラグＦ３の値が「０」であるか否かを判定する。洗浄フラグＦ３は、洗浄処理が実行されているか否かを示すフラグである。洗浄フラグＦ３は、上述したイニシャライズルーチンにおいて「０」に設定される。洗浄フラグＦ３は、洗浄処理が開始した時点から洗浄処理が終了した時点までの洗浄実施期間において「１」に設定される（後述する図１３のルーチンを参照。）。
【０１１９】
いま、洗浄処理が実行されていないと仮定すると、洗浄フラグＦ３の値は「０」である。この場合、ＣＰＵは、ステップ８２０にて「Ｙｅｓ」と判定してステップ８３０に進み、現在の車線維持制御（操舵支援制御）のモードが第１モードであるか否かを判定する。現在の車線維持制御（操舵支援制御）のモードが第１モードである場合、ＣＰＵは、そのステップ８３０にて「Ｙｅｓ」と判定してステップ８４０に進み、現時点で取得された車両周辺情報に基いて目標走行ラインを決定し、上記（１）式に従って第１操舵支援制御用の操舵制御量（目標操舵角θ*）を演算する。このとき、ＣＰＵは、上記（１）式の制御ゲイン（例えば、Ｋlta２及び／又はＫlta３）の値を、後述するステップ８６０にて演算される上記（１）式の制御ゲインよりも小さい値に設定する。次に、ＣＰＵは、ステップ８５０に進み、この操舵制御量をＲＡＭ（記憶部）に「最新操舵制御量」として記憶（格納）する。次に、ＣＰＵは、ステップ８８０に進み、ステップ８４０にて求められた操舵制御量を用いて車線維持制御（第１操舵支援制御）を実行する。その後、ＣＰＵはステップ８９５に進み、本ルーチンを一旦終了する。
【０１２０】
一方、現在の車線維持制御（操舵支援制御）のモードが第２モードである場合、ＣＰＵは、ステップ８３０にて「Ｎｏ」と判定してステップ８６０に進み、現時点で取得された車両周辺情報に基いて目標走行ラインを決定し、上記（１）式に従って第２操舵支援制御用の操舵制御量（目標操舵角θ*）を演算する。このとき、ＣＰＵは、上記（１）式の制御ゲインの値を、ステップ８４０にて演算される上記（１）式の制御ゲインよりも大きい値に設定する。次に、ＣＰＵは、ステップ８５０に進み、この操舵制御量をＲＡＭに「最新操舵制御量」として記憶（格納）する。次に、ＣＰＵは、ステップ８８０に進み、ステップ８６０にて求められた操舵制御量を用いて車線維持制御（第２操舵支援制御）を実行する。その後、ＣＰＵはステップ８９５に進み、本ルーチンを一旦終了する。
【０１２１】
ＣＰＵがステップ８２０の処理を実行する時点において、洗浄処理が実行されていると仮定すると、洗浄フラグＦ３の値は「１」である。この場合、ＣＰＵは、ステップ８２０にて「Ｎｏ」と判定してステップ８７０に進み、操舵制御量を、ＲＡＭに格納（記憶）されている最新操舵制御量に設定する。即ち、洗浄処理が実行されているとき、ＣＰＵは、今回の演算タイミングにて操舵制御量の演算を行わずに、操舵制御量を「洗浄処理が開始する直前の演算タイミングにて求められ且つＲＡＭに格納された最新操舵制御量」に設定する。次に、ＣＰＵは、ステップ８８０に進み、ステップ８７０にて設定された操舵制御量を用いて車線維持制御を実行する。その後、ＣＰＵはステップ８９５に進み、本ルーチンを一旦終了する。
【０１２２】
更に、ＣＰＵは、所定時間が経過する毎に、図９にフローチャートにより示した「監視ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図９のステップ９００から処理を開始してステップ９１０に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。
【０１２３】
ＬＴＣフラグＦ１の値が「１」でない場合（第１操舵支援制御及び第２操舵支援制御の何れもが実行されていない場合）、ＣＰＵは、そのステップ９１０にて「Ｎｏ」と判定し、ステップ９９５に直接進んで本ルーチンを一旦終了する。
【０１２４】
これに対し、ＬＴＣフラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ９１０にて「Ｙｅｓ」と判定してステップ９２０に進み、現在の車線維持制御（操舵支援制御）のモードが第１モードであるか否かを判定する。
【０１２５】
現在の車線維持制御（操舵支援制御）のモードが第１モードでない（即ち、現在の車線維持制御のモードが第２モードである）場合、ＣＰＵは、そのステップ９２０にて「Ｎｏ」と判定し、ステップ９９５に直接進んで本ルーチンを一旦終了する。
【０１２６】
一方、現在の車線維持制御（操舵支援制御）のモードが第１モードである場合、ＣＰＵは、そのステップ９２０にて「Ｙｅｓ」と判定してステップ９３０に進み、運転者状態情報に基いて、運転者が上述した「Ｈａｎｄｓ−ＯＮ」状態であるか否かを判定する。運転者が「Ｈａｎｄｓ−ＯＮ」状態である場合、ＣＰＵは、そのステップ９３０にて「Ｙｅｓ」と判定してステップ９９５に進み、本ルーチンを一旦終了する。
【０１２７】
これに対し、運転者が「Ｈａｎｄｓ−ＯＮ」状態でない場合、ＣＰＵは、そのステップ９３０にて「Ｎｏ」と判定してステップ９４０に進み、運転者がＨａｎｄｓ−ＯＮ状態にすることを要求する表示を表示器５１に表示させるとともにスピーカ７０から当該表示の内容を発話させる処理を実行する（以下、当該処理を「Ｈａｎｄｓ−ＯＮ」要求と称呼する。）。次に、ＣＰＵは、ステップ９５０に進み、「Ｈａｎｄｓ−ＯＮ」要求を開始してからの経過時間（即ち、「Ｈａｎｄｓ−ＯＮ」要求の継続時間）が所定のキャンセル時間以上となったか否かを判定する。
【０１２８】
「Ｈａｎｄｓ−ＯＮ」要求の継続時間が所定のキャンセル時間以上継続していない場合、ＣＰＵは、そのステップ９５０にて「Ｎｏ」と判定してステップ９９５に直接進み、本ルーチンを一旦終了する。これに対し、「Ｈａｎｄｓ−ＯＮ」要求の継続時間が所定のキャンセル時間以上継続している場合、ＣＰＵは、そのステップ９５０にて「Ｙｅｓ」と判定してステップ９６０に進み、ＬＴＣフラグＦ１の値を「０」に設定する。これにより、車線維持制御（この場合、第１操舵支援制御）が停止（中止）される。その後、ＣＰＵは、ステップ９９５に進んで本ルーチンを一旦終了する。
【０１２９】
更に、ＣＰＵは、所定時間が経過する毎に、図１０にフローチャートにより示した「状況フラグ（洗浄禁止フラグ）設定ルーチン」を実行するようになっている。本ルーチンにて設定される状況フラグ（洗浄禁止フラグ）Ｆ４は、その値が「０」であるとき、車線維持制御の実行中に洗浄処理を実行したとしても自車両が「自車両の周辺に存在する物体」に接近する可能性が低い（自車両の周辺に物体が存在しない状況も含む）ことを示す。更に、状況フラグＦ４は、その値が「１」であるとき、車線維持制御の実行中に洗浄処理を実行すると、その洗浄処理の実行中に自車両が「自車両の周辺に存在する物体」に接近する可能性が高いことを示す。状況フラグＦ４は、上述したイニシャライズルーチンにおいて「０」に設定される。
【０１３０】
所定のタイミングになると、ＣＰＵは図１０のステップ１０００から処理を開始してステップ１０１０に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。即ち、ＣＰＵは、ステップ１０１０にて車線維持制御（第１操舵支援制御及び第２操舵支援制御の何れか）が実行されているか否かを判定する。ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１０１０にて「Ｎｏ」と判定してステップ１０５０に進み、状況フラグＦ４を「０」に設定する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１３１】
いま、車線維持制御（第１操舵支援制御及び第２操舵支援制御の何れか）が実行されていると仮定すると、ＬＴＣフラグＦ１の値は「１」である。この場合、ＣＰＵは、ステップ１０１０にて「Ｙｅｓ」と判定してステップ１０２０に進み、車両周辺情報に基いて、所定の車両周辺条件が成立するか否かを判定する。この車両周辺条件は、例えば、自車両と自車両の周辺に存在する物体との位置関係に関する条件である。本例において、車両周辺条件は、以下の条件７及び条件８の少なくとも一方が成立したときに成立する。
（条件７）自車両との距離が所定の第１距離閾値以下の移動立体物（他車両、自転車及び歩行者等）が存在する。
（条件８）自車両との距離が所定の「第１距離閾値よりも小さい第２距離閾値」以下の固定立体物（ガードレール及びフェンス等）が存在する。
なお、第２距離閾値は第１距離閾値と等しくてもよい。
更に、車両周辺条件は、自車両と物体との衝突余裕時間ＴＴＣ（Ｔｉｍｅ  ｔｏ  Ｃｏｌｌｉｓｉｏｎ）を「物体と自車両との距離を、その物体の相対速度にて除する」ことにより求め、その衝突余裕時間ＴＴＣが所定の時間閾値以下の物体が存在するとき成立する条件であってもよい。
【０１３２】
車両周辺条件が成立しない場合、ＣＰＵは、そのステップ１０２０にて「Ｎｏ」と判定してステップ１０５０に進み、状況フラグＦ４を「０」に設定する。即ち、ＣＰＵは、自車両が「自車両の周辺に存在する物体」に接近する可能性が低いと判定する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１３３】
これに対し、車両周辺条件が成立する場合、ＣＰＵは、そのステップ１０２０にて「Ｙｅｓ」と判定してステップ１０３０に進み、車速センサ５２からの情報に基いて、所定の走行状態条件が成立するか否かを判定する。この走行状態条件は、車両の走行状態に関する条件である。例えば、自車両の速度が速度閾値以上である場合（自車両が高速度にて走行している場合）、車線維持制御が不安定になったとき、車両が、短い時間で周囲の物体に接近する可能性がある。従って、本例において、走行状態条件は、自車両の車速が所定の速度閾値ＳＴｈ以上であるときに成立する。
【０１３４】
走行状態条件が成立しない場合、ＣＰＵは、そのステップ１０３０にて「Ｎｏ」と判定してステップ１０５０に進み、状況フラグＦ４を「０」に設定する。即ち、ＣＰＵは、自車両が「自車両の周辺に存在する物体」に接近する可能性が低いと判定する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１３５】
これに対し、走行状態条件が成立する場合、ＣＰＵは、そのステップ１０３０にて「Ｙｅｓ」と判定してステップ１０４０に進み、状況フラグＦ４を「１」に設定する。即ち、ＣＰＵは、洗浄処理の実行中に車線維持制御が不安定になったとき、自車両が「自車両の周辺に存在する物体」に接近する可能性が高いと判定する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１３６】
更に、ＣＰＵは、所定時間が経過する毎に、図１１にフローチャートにより示した「第１の開始フラグ設定ルーチン」を実行するようになっている。本ルーチンにて設定される洗浄開始フラグＦ５は、その値が「１」であるとき洗浄処理の実行を許容することを示し、その値が「０」であるとき洗浄処理の実行を許容しないことを示す。洗浄開始フラグＦ５の値は、上述したイニシャライズルーチンにおいて「０」に設定される。更に、洗浄開始フラグＦ５の値は、後述する図１３のステップ１３６０においても「０」に設定される。
【０１３７】
なお、ＣＰＵは、図示しないルーチンを所定時間が経過する毎に実行することにより、「レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３」の少なくとも１つに対応する保護窓４１１が汚れているか否かを検出している。
【０１３８】
所定のタイミングになると、ＣＰＵは図１１のステップ１１００から処理を開始してステップ１１０５に進み、洗浄開始フラグＦ５の値が「０」であるか否かを判定する。洗浄開始フラグＦ５の値が「０」でない場合、ＣＰＵは、そのステップ１１０５にて「Ｎｏ」と判定し、ステップ１１９５に直接進んで本ルーチンを一旦終了する。
【０１３９】
これに対し、洗浄開始フラグＦ５の値が「０」である場合、ＣＰＵは、そのステップ１１０５にて「Ｙｅｓ」と判定してステップ１１１０に進み、「レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３」の少なくとも１つに対応する保護窓４１１に汚れが検出されているか否かを判定する。汚れが検出されていない場合、ＣＰＵは、そのステップ１１１０にて「Ｎｏ」と判定し、ステップ１１９５に直接進んで本ルーチンを一旦終了する。
【０１４０】
これに対し、汚れが検出されている場合、ＣＰＵは、そのステップ１１１０にて「Ｙｅｓ」と判定してステップ１１１５に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１１１５にて「Ｎｏ」と判定してステップ１１４０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。従って、車線維持制御が実行されていない状況下においても、保護窓４１１の汚れが検出された場合、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１４１】
これに対し、いま、車線維持制御（第１操舵支援制御及び第２操舵支援制御の何れか）が実行されていると仮定すると、ＬＴＣフラグＦ１の値は「１」である。この場合、ＣＰＵは、ステップ１１１５にて「Ｙｅｓ」と判定してステップ１１２０に進み、汚れのレベルが第１レベルＬＶ１であるか否かを判定する。いま、汚れのレベルが第１レベルＬＶ１であると仮定すると、ＣＰＵは、そのステップ１１２０にて「Ｙｅｓ」と判定してステップ１１２５に進み、状況フラグＦ４が「０」であるか否かを判定する。状況フラグＦ４が「０」でない（即ち、洗浄処理中に自車両が自車両の周囲に存在する物体と接近する可能性が高い）場合、ＣＰＵは、そのステップ１１２５にて「Ｎｏ」と判定し、ステップ１１９５に直接進んで本ルーチンを一旦終了する。従って、洗浄処理が開始されない（以降で説明する図１３のルーチンのステップ１３１０での「Ｎｏ」の判定を参照。）。即ち、洗浄処理の実行が禁止される。
【０１４２】
一方、状況フラグＦ４が「０」である場合、ＣＰＵは、そのステップ１１２５にて「Ｙｅｓ」と判定してステップ１１４０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１４３】
ＣＰＵがステップ１１２０の処理を実行する時点において、汚れのレベルが第２レベルＬＶ２であると仮定する。この場合、ＣＰＵは、そのステップ１１２０にて「Ｎｏ」と判定してステップ１１３０に進み、現在の車線維持制御のモードが第１モードであるか否かを判定する。
【０１４４】
現在の車線維持制御のモードが第１モードである場合、ＣＰＵは、そのステップ１１３０にて「Ｙｅｓ」と判定してステップ１１４０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。従って、現在の車線維持制御のモードが第１モードである場合、状況フラグＦ４の値に関わらず（即ち、自車両が自車両の周囲に存在する物体と接近する可能性があるかどうかに関わらず）、洗浄処理が実行される。
【０１４５】
ＣＰＵがステップ１１３０の処理を実行する時点において、現在の車線維持制御のモードが第２モードである場合、ＣＰＵは、そのステップ１１３０にて「Ｎｏ」と判定してステップ１１３５に進む。ＣＰＵは、ステップ１１３５にて、状況フラグＦ４の値が「０」であるか否かを判定する。状況フラグＦ４の値が「０」である場合、ＣＰＵは、そのステップ１１３５にて「Ｙｅｓ」と判定してステップ１１４０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１４６】
一方、状況フラグＦ４の値が「０」でない場合、ＣＰＵは、そのステップ１１３５にて「Ｎｏ」と判定してステップ１１４５に進む。ＣＰＵは、ステップ１１４５にて移行フラグＦ２を「１」に設定し、ステップ１１９５に進んで本ルーチンを一旦終了する。これにより、図７のルーチンのステップ７７０にてＣＰＵが「Ｙｅｓ」と判定するので、車線維持制御のモードが第２モードから第１モードに移行される。車線維持制御のモードが第２モードから第１モードに移行された後、ＣＰＵが再び図１１のルーチンを開始すると、ＣＰＵは洗浄開始フラグＦ５を「１」に設定する（ステップ１１３０：Ｙｅｓ及びステップ１１４０）。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１４７】
更に、ＣＰＵは、所定時間が経過する毎に、図１２にフローチャートにより示した「第２の開始フラグ設定ルーチン」を実行するようになっている。本ルーチンにおいても、洗浄開始フラグＦ５が設定される。
【０１４８】
所定のタイミングになると、ＣＰＵは図１２のステップ１２００から処理を開始してステップ１２０５に進み、洗浄開始フラグＦ５の値が「０」であるか否かを判定する。洗浄開始フラグＦ５の値が「０」でない場合、ＣＰＵは、そのステップ１２０５にて「Ｎｏ」と判定し、ステップ１２９５に直接進んで本ルーチンを一旦終了する。
【０１４９】
これに対し、洗浄開始フラグＦ５の値が「０」である場合、ＣＰＵは、そのステップ１２０５にて「Ｙｅｓ」と判定してステップ１２１０に進み、現時点が「洗浄スイッチ６９が押下された直後の時点」であるか否か（即ち、洗浄スイッチ６９が押下されたか否か）を判定する。以下、「洗浄スイッチ６９が押下された時点」を、単に「オン時点」と称呼する場合がある。現時点が「オン時点」でない場合、ＣＰＵは、そのステップ１２１０にて「Ｎｏ」と判定し、ステップ１２９５に直接進んで本ルーチンを一旦終了する。
【０１５０】
これに対し、現時点が「オン時点」である場合、ＣＰＵは、そのステップ１２１０にて「Ｙｅｓ」と判定してステップ１２１５に進んで、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。
【０１５１】
ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１２１５にて「Ｎｏ」と判定してステップ１２３０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１２９５に進んで本ルーチンを一旦終了する。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１５２】
これに対し、ＬＴＣフラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ１２１５にて「Ｙｅｓ」と判定してステップ１２２０に進み、現在の車線維持制御のモードが第１モードであるか否かを判定する。
【０１５３】
現在の車線維持制御のモードが第１モードである場合、ＣＰＵは、そのステップ１２２０にて「Ｙｅｓ」と判定してステップ１２３０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１２９５に進んで本ルーチンを一旦終了する。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１５４】
ＣＰＵがステップ１２２０の処理を実行する時点において、現在の車線維持制御のモードが第２モードである場合、ＣＰＵは、そのステップ１２２０にて「Ｎｏ」と判定してステップ１２２５に進む。ＣＰＵは、ステップ１２２５にて、状況フラグＦ４の値が「０」であるか否かを判定する。状況フラグＦ４の値が「０」である場合、ＣＰＵは、そのステップ１２２５にて「Ｙｅｓ」と判定してステップ１２３０に進み、洗浄開始フラグＦ５を「１」に設定する。その後、ＣＰＵは、ステップ１２９５に進んで本ルーチンを一旦終了する。従って、洗浄処理が開始される（以降で説明する図１３のルーチンのステップ１３１０での「Ｙｅｓ」の判定を参照。）。
【０１５５】
一方、状況フラグＦ４の値が「０」でない場合、ＣＰＵは、そのステップ１２２５にて「Ｎｏ」と判定してステップ１２３５に進む。ＣＰＵは、ステップ１２３５にて、オン時点からの経過時間が所定の時間閾値Ｔｈｂ以上であるか否かを判定する。オン時点からの経過時間が所定の時間閾値Ｔｈｂ以上でない場合、ＣＰＵは、そのステップ１２３５にて「Ｎｏ」と判定してステップ１２９５に進んで本ルーチンを一旦終了する。このように、現在の車線維持制御のモードが第２モードである場合、自車両が自車両の周囲の物体と接近する可能性があるとき、洗浄処理が一定期間だけ開始されないようになっている。なお、上記の経過時間が所定の時間閾値Ｔｈｂに達する前に状況フラグＦ４が「１」になった場合、ＣＰＵはステップ１２２５にて「Ｙｅｓ」と判定するので、洗浄処理が開始される。
【０１５６】
一方、オン時点からの経過時間が所定の時間閾値Ｔｈｂ以上である場合、ＣＰＵは、そのステップ１２３５にて「Ｙｅｓ」と判定してステップ１２４０に進み、移行フラグＦ２を「１」に設定する。その後、ＣＰＵは、ステップ１２９５に進んで本ルーチンを一旦終了する。これにより、図７のルーチンのステップ７７０にてＣＰＵが「Ｙｅｓ」と判定するので、車線維持制御のモードが第２モードから第１モードに移行される。車線維持制御のモードが第２モードから第１モードに移行された後、ＣＰＵが再び図１２のルーチンを開始すると、ＣＰＵは洗浄開始フラグＦ５を「１」に設定する（ステップ１１２０：Ｙｅｓ及びステップ１２３０）。従って、洗浄処理が開始される。
【０１５７】
更に、ＣＰＵは、所定時間が経過する毎に、図１３にフローチャートにより示した「洗浄処理の開始／終了判定ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図１３のステップ１３００から処理を開始してステップ１３０５に進み、洗浄フラグＦ３の値が「０」であるか否かを判定する。
【０１５８】
洗浄フラグＦ３の値が「０」である場合（即ち、現時点において洗浄処理がまだ実行されていない場合）、ＣＰＵは、そのステップ１３０５にて「Ｙｅｓ」と判定してステップ１３１０に進み、洗浄開始フラグＦ５が「１」であるか否かを判定する。洗浄開始フラグＦ５が「１」であるとの条件は「洗浄開始条件」とも称呼される場合がある。洗浄開始フラグＦ５が「１」でない場合、ＣＰＵは、そのステップ１３１０にて「Ｎｏ」と判定してステップ１３９５に直接進んで本ルーチンを一旦終了する。
【０１５９】
これに対し、洗浄開始フラグＦ５が「１」である場合、ＣＰＵは、そのステップ１３１０にて「Ｙｅｓ」と判定してステップ１３１５に進み、ＬＴＣフラグＦ１の値が「１」であるか否かを判定する。
【０１６０】
ＬＴＣフラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１３１５にて「Ｎｏ」と判定して、以下のステップ１３３０乃至ステップ１３４０を順に行う。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１６１】
ステップ１３３０：ＣＰＵは、洗浄装置６５に洗浄処理を開始させる。
ステップ１３３５：ＣＰＵは、洗浄フラグＦ３を「１」に設定する。
ステップ１３４０：ＣＰＵは、洗浄実行時間を以下のように決定する。汚れのレベルが第１レベルＬＶ１であるとき、ＣＰＵは、洗浄実行時間を第１洗浄時間Ｔｍ１に設定する。汚れのレベルが第２レベルＬＶ２であるとき、ＣＰＵは、洗浄実行時間を第２洗浄時間Ｔｍ２に設定する。なお、洗浄スイッチ６９が押下されたとき、ＣＰＵは、洗浄実行時間を第１洗浄時間Ｔｍ１に設定する。
【０１６２】
これに対し、ＬＴＣフラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ１３１５にて「Ｙｅｓ」と判定してステップ１３２０に進み、現在の車線維持制御のモードが第１モードであるか否かを判定する。
【０１６３】
現在の車線維持制御のモードが第１モードでない（即ち、第２モードである）場合、ＣＰＵは、そのステップ１３２０にて「Ｎｏ」と判定して、上述したようにステップ１３３０乃至ステップ１３４０を順に行う。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１６４】
一方、現在の車線維持制御のモードが第１モードである場合、ＣＰＵは、そのステップ１３２０にて「Ｙｅｓ」と判定してステップ１３２５に進み、運転者が上述した「Ｈａｎｄｓ−ＯＮ」状態であるか否かを判定する。運転者が「Ｈａｎｄｓ−ＯＮ」状態でない場合、ＣＰＵは、そのステップ１３２５にて「Ｎｏ」と判定してステップ１３９５に進み、本ルーチンを一旦終了する。このように、現在の車線維持制御のモードが第１モードである場合、運転者が「Ｈａｎｄｓ−ＯＮ」状態でないとき、洗浄処理が開始されない。
【０１６５】
一方、運転者が「Ｈａｎｄｓ−ＯＮ」状態である場合、ＣＰＵは、そのステップ１３２５にて「Ｙｅｓ」と判定して、上述したようにステップ１３３０乃至ステップ１３４０を順に行う。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１６６】
上述したように洗浄処理を開始した後に、ＣＰＵが再び図１３のルーチンをステップ１３００から開始すると、ＣＰＵはステップ１３０５にて「Ｎｏ」と判定してステップ１３５０に進む。ＣＰＵは、ステップ１３５０にて、洗浄処理を開始した時点からの経過時間が「ステップ１３４０にて決定された洗浄実行時間」以上であるか否かを判定する。
【０１６７】
洗浄処理を開始した時点からの経過時間が洗浄実行時間（Ｔｍ１又はＴｍ２）以上でない場合、ＣＰＵは、そのステップ１３５０にて「Ｎｏ」と判定し、ステップ１３９５に直接進んで本ルーチンを一旦終了する。
【０１６８】
これに対し、洗浄処理を開始した時点からの経過時間が洗浄実行時間（Ｔｍ１又はＴｍ２）以上である場合、ＣＰＵは、そのステップ１３５０にて「Ｙｅｓ」と判定してステップ１３５５に進み、洗浄装置６５による洗浄処理を終了させる。次に、ＣＰＵは、ステップ１３６０に進んで、移行フラグＦ２、洗浄フラグＦ３及び洗浄開始フラグＦ５の総てを「０」に設定する。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１６９】
以上説明したように、本実施装置は、所定の洗浄禁止条件（上述した車両周辺条件及び走行状態条件）が成立しているか否かに基づき、操舵支援制御中に洗浄処理が開始されたと仮定した場合にその洗浄処理の実行中に自車両が自車両の周囲の物体に接近する可能性が高いと予測されるか否かを判定する。本実施装置は、車線維持制御（操舵支援制御）の実行中に洗浄要求が発生した場合、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されるとき、洗浄装置６５に洗浄処理を実行させることを、原則として禁止する。洗浄処理を行なうことによって自車両が自車両の周囲の物体に接近する可能性が高いと予測される場合には洗浄処理が禁止されるので、操舵支援制御（第１操舵支援制御又は第２操舵支援制御）が不安定にならない。その結果、「自車両が自車両の周辺に存在する物体に接近する可能性」を低減することができる。
【０１７０】
更に、本実施装置は、洗浄処理中に自車両が自車両の周囲の物体に接近する可能性があるかに関わらず、車線維持制御（操舵支援制御）のモードが第１モードであるとき、洗浄装置６５に洗浄処理を実行させることを許容する。従って、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されたとしても、車線維持制御（操舵支援制御）のモードが第１モードであるとき、洗浄処理が実行され得る。従って、保護窓４１１をより早い段階で洗浄することができる。洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１７１】
更に、本実施装置は、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されたとき、車線維持制御（操舵支援制御）のモードが第２モードであれば、車線維持制御（操舵支援制御）のモードを第２モードから第１モードへ移行させる。従って、操舵支援制御（第１モード）を継続しながら洗浄処理を実行させることができる。たとえ洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１７２】
更に、本実施装置は、車線維持制御（操舵支援制御）のモードが第２モードである場合、洗浄禁止条件が成立していない（状況フラグＦ４＝０）と判定されたとき、洗浄装置６５に洗浄処理を実行させることを許容する。従って、たとえ洗浄処理によって第２操舵支援制御が不安定になったとしても、自車両が自車両の周囲の物体に接近することはない。更に、本実施装置は、操舵支援制御のモードを第２モードに維持したままで洗浄処理を実行できるので、操舵支援制御の実行中に運転者が操舵ハンドル３０２に触れる頻度を低減することができる。よって、運転者が煩わしさを感じる機会を減らすことができる。
【０１７３】
更に、本実施装置は、保護窓４１１の汚れのレベルが第１レベルＬＶ１である場合、以下のように洗浄処理の実行を制御する。具体的には、本実施装置は、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されたとき、車線維持制御のモードが第１モード及び第２モードの何れであっても、洗浄装置６５に洗浄処理を実行させることを禁止する。これに対し、本実施装置は、洗浄禁止条件が成立していない（状況フラグＦ４＝０）と判定されたとき、洗浄装置６５に洗浄処理を実行させることを許容する。
【０１７４】
保護窓４１１の汚れのレベルが第１レベルＬＶ１である場合、操舵支援制御（第１操舵支援制御又は第２操舵支援制御）に対する影響が低いことから、洗浄装置６５に洗浄処理を実行させなくても、車両は走行レーン内の適切な位置を比較的安定して走行することができる。従って、本実施装置は、洗浄処理中に自車両が自車両の周囲の物体に接近する可能性が高いと予測される（状況フラグＦ４＝１）とき、車線維持制御のモードが第１モード及び第２モードの何れであっても、洗浄装置６５に洗浄処理を実行させることを禁止する。操舵支援制御が洗浄処理によって不安定にならないので、自車両が自車両の周囲に存在する物体に過度に接近するのを防ぐことができる。このような状況からある程度の時間が経過して、洗浄処理中に自車両が自車両の周囲の物体に接近する可能性が低いと判定された（状況フラグＦ４＝０）と仮定する。この場合、本実施装置は、洗浄装置６５に洗浄処理を実行させることを許容する。このように、車両の周囲状況に応じて、洗浄処理を実行することができる。
【０１７５】
一方、保護窓４１１の汚れのレベルが第２レベルＬＶ２である場合、操舵支援制御（第１操舵支援制御又は第２操舵支援制御）に対する影響が比較的高いことから、より早く洗浄装置６５に洗浄処理を実行させるのが望ましい。従って、本実施装置は、保護窓４１１の汚れのレベルが第２レベルＬＶ２であり、且つ、車線維持制御のモードが第１モードである場合、洗浄禁止条件が成立しているか否かに関わらず洗浄装置６５に洗浄処理を実行させることを許容する。洗浄処理の実行中に第１操舵支援制御が不安定になったとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１７６】
更に、本実施装置は、保護窓４１１の汚れのレベルが第２レベルＬＶ２であり、且つ、車線維持制御のモードが第２モードである場合、洗浄禁止条件が成立していない（状況フラグＦ４＝０）と判定されたとき、洗浄装置６５に洗浄処理を実行させることを許容する。これに対して、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されたとき、本実施装置は、車線維持制御のモードを第２モードから第１モードへ移行させる。このように車線維持制御のモードが第２モードから第１モードに移行されるので、操舵支援制御（第１操舵支援制御）を継続しながら洗浄処理を実行させることができる。更に、たとえ洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１７７】
本実施装置は、運転者が洗浄スイッチ６９を押下して洗浄要求を発生させた場合、以下のように洗浄処理の実行を制御する。本実施装置は、車線維持制御のモードが第２モードである場合、洗浄禁止条件が成立していない（状況フラグＦ４＝０）と判定されるとき、洗浄装置６５に洗浄処理を実行させることを許容する。一方、洗浄禁止条件が成立している（状況フラグＦ４＝１）と判定されるとき、本実施装置は、オン時点からの経過時間が所定の時間閾値Ｔｈｂに達するまで待機する。オン時点からの経過時間が所定の時間閾値Ｔｈｂに達する前に、「自車両が自車両の周囲の物体に接近する可能性が低い」と判定すれば、本実施装置は、洗浄装置６５に洗浄処理を実行させることを許容する。このように、本実施装置は、一定期間待機することにより、車線維持制御のモードを第２モードから第１モードへ移行させことなく、洗浄処理を実行できる。
【０１７８】
一方、洗浄禁止条件が成立している状況が継続しているとき、オン時点からの経過時間が所定の時間閾値Ｔｈｂに達した時点で、本実施装置は、車線維持制御のモードを第２モードから第１モードへ移行させる。このように車線維持制御のモードが第２モードから第１モードに移行されるので、操舵支援制御（第１操舵支援制御）を継続しながら洗浄処理を実行させることができる。更に、たとえ洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１７９】
更に、本実施装置は、車線維持制御のモードが第１モードである場合、運転者が操舵ハンドル３０２に触れている状態であるか否かを運転者状態情報に基いて判定する。そして、本実施装置は、運転者が操舵ハンドル３０２に触れている状態であると判定したとき、洗浄装置６５に洗浄処理を実行させる。従って、車線維持制御のモードが第１モードである場合、運転者が操舵ハンドル３０２に触れている状態で洗浄処理が実行される。従って、洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から乖離したとしても、運転者は操舵ハンドル３０２を直ちに操作することにより車両の位置を即座に修正することができる。
【０１８０】
更に、本実施装置は、操舵制御量を演算するたびに当該操舵制御量をＲＡＭに記憶（格納）する。そして、本実施装置は、洗浄処理を開始した時点から洗浄処理が終了するまでの洗浄実施期間において、洗浄処理が開始される直前にＲＡＭに記憶された操舵制御量に基いて車両の操舵角を制御する（ステップ８７０及びステップ８８０）。これは、保護窓４１１を洗浄しているとき、レーダセンサ６１及び第１カメラシステム６２から精度の高い車両周辺情報を得ることができない可能性があり、従って、適切な操舵制御量が演算できない可能性があるためである。洗浄処理が開始される直前の演算タイミングで求められた操舵制御量を用いることにより、洗浄処理の実行中に車両の位置が走行レーン内の適切な位置から大きく乖離する可能性を低下させることができる。
【０１８１】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０１８２】
状況フラグＦ４を設定する図１０のルーチンは、上記の例に限定されない。例えば、図１０のルーチンは、車両が走行する道路の種別に応じて変更されてもよい。ＣＰＵは、図示しないナビゲーション装置から自車両が走行している道路の種別（市街地内の道路、及び、自動車専用道路等）を取得してもよい。自車両が走行している道路が自動車専用道路（例えば、高速道路）である場合、車両の走行状態（車速）に関する判定を行うステップ１０３０が省略されてもよい。即ち、この構成において、ＣＰＵは、ステップ１０２０にて車両周辺条件が成立したとき、状況フラグＦ４を「１」に設定し、ステップ１０２０にて車両周辺条件が成立しないとき、状況フラグＦ４を「０」に設定する。
【０１８３】
ステップ１０２０における車両周辺条件は、上記の例に限定されない。自車両と物体との距離の閾値（第１距離閾値及び第２距離閾値）は、車両の周辺状況及び車両の走行状態（例えば、車速）等に応じて動的に変化させてもよい。更に、自車両と物体との距離の閾値（第１距離閾値及び第２距離閾値）は、車両の進行方向と物体の位置との関係に応じて変化させてもよい。例えば、車両の前方に存在する物体に対する閾値（第１距離閾値及び第２距離閾値）と、車両の後方に存在する物体に対する閾値（第１距離閾値及び第２距離閾値）とが異なっていてもよい。更に、車両の右側に存在する物体に対する閾値（第１距離閾値及び第２距離閾値）と、車両の左側に存在する物体に対する閾値（第１距離閾値及び第２距離閾値）とが異なっていてもよい。このように、車両の前方、後方、右側、左側に存在する物体に対する閾値（第１距離閾値及び第２距離閾値）は、互いに同じでもよいし、互いに異なっていてもよい。
【０１８４】
ステップ１０３０における走行状態条件は、加速度の条件を含んでもよい。例えば、走行状態条件は、以下の条件９及び条件１０の少なくとも一方が成立したときに成立する条件であってもよい。
（条件９）自車両の車速が所定の速度閾値ＳＴｈ以上である。
（条件１０）自車両の加速度の大きさが所定の加速度閾値Ａｔｈ以上である。
【０１８５】
ＣＰＵは、図１０のルーチンにおいて、ステップ１０２０及びステップ１０３０に代えて、以下の処理を行ってもよい。ＣＰＵは、車両周辺情報（物標情報）に基いて、自車両の周辺に存在する物体の自車両に対する相対速度、当該物体の自車両に対する相対的な移動方向、及び、当該物体と自車両との間の距離（例えば、上述した「自車両と物標との相対関係を表すパラメータ」）等を取得する。ＣＰＵは、上述のパラメータに基いて、現時点から所定の時間後までの物体の軌跡を推定する。更に、ＣＰＵは、操舵支援制御が不安定になる（即ち、洗浄処理中に目標操舵角θ*が所定の角度だけ増加又は減少される）と仮定して、現時点から所定の時間後までの自車両の軌跡を推定する。ＣＰＵは、これら２つの軌跡に基いて、所定の時間後に自車両が物体と接近するか否かを判定する。所定の時間後に自車両と物体との間の距離が所定の距離以下である場合、ＣＰＵは、ステップ１０４０に進んで状況フラグＦ４を「１」に設定する。一方、所定の時間後に自車両と物体との間の距離が所定の距離より大きい場合、ＣＰＵは、ステップ１０５０に進んで状況フラグＦ４を「０」に設定する。
【０１８６】
更に、図１１のルーチンのステップ１１３５は省略されてもよい。即ち、ＣＰＵは、ステップ１１３０にて「Ｎｏ」と判定したとき、ステップ１１４５に直接進むように構成されてもよい。このように、汚れのレベルが第２レベルＬＶ２である場合、車線維持制御が不安定になる可能性が比較的高いことから、洗浄禁止条件が成立するか否かに関わらず、車線維持制御のモードを直ちに第２モードから第１モードへ移行させてもよい。
【０１８７】
更に、汚れのレベルが第１レベルＬＶ１である場合、車線維持制御に対する影響が比較的低いことから、ＣＰＵは、洗浄禁止条件が成立するか否かに関わらず、洗浄処理を実行しないように構成されてもよい。即ち、洗浄開始フラグＦ５が「０」で維持されてもよい。
【０１８８】
更に、図１２のルーチンのステップ１２３５は省略されてもよい。即ち、ＣＰＵは、ステップ１２２５にて「Ｎｏ」と判定したとき、ステップ１２４０に直接進むように構成されてもよい。このように、洗浄スイッチ６９が押下された場合、ＣＰＵは、洗浄禁止条件が成立しているとき、車線維持制御のモードを直ちに第２モードから第１モードへ移行させてもよい。これにより、より早く洗浄処理を実行することができる。
【０１８９】
本実施装置は、車線維持制御に加えて、車線変更制御を実行するように構成されてもよい。車線変更制御は「Lane Change Support（ＬＣＳ）」とも称呼される。車線変更制御は、目標軌道に沿って自車両が走行レーンから隣接レーンへ車線変更するように自車両の操舵角を変更する操舵支援制御である。車線変更制御は、追従車間距離制御及び車線維持制御の実行中に「車線変更支援要求」が受け付けられた場合に車線維持制御に代わって実行される。このような構成において、車線変更制御の実行中に洗浄処理が実行されると、車線変更制御が不安定になる。従って、図１３のルーチンのステップ１３１０における洗浄開始条件は、以下の条件１１及び条件１２の両方が成立したときに成立する条件であってもよい。
（条件１１）洗浄開始フラグＦ５が「１」である。
（条件１２）車線変更制御が実行されていない。
【０１９０】
「Ｈａｎｄｓ−ＯＮ」状態の定義は、上記の例に限定されない。例えば、「Ｈａｎｄｓ−ＯＮ」状態は、少なくとも運転者が操舵ハンドル３０２に触れている状態であればよい。この場合、運転者の視線は監視対象とならないことから、視線センサ６７は省略されてもよい。この構成において、運転支援ＥＣＵ１０は、車線維持制御のモードが第１モードであるとき、運転者が操舵ハンドル３０２に触れている状態であることを前提とした第１操舵支援制御を実行する。運転支援ＥＣＵ１０のＣＰＵは、図９のルーチンのステップ９３０又は図１３のルーチンのステップ１３２５に進んだ場合、運転者が操舵ハンドル３０２に触れている状態であるとき、運転者が「Ｈａｎｄｓ−ＯＮ」状態であると判定する。
【０１９１】
レーダセンサ６１、第１カメラシステム６２及び第２カメラシステム６３の一部が、車両の車室内に配置されてもよい。例えば、第１カメラシステム６２ａは、車室内のフロントガラスの近傍に配置されてもよい。この構成において、第１カメラシステム６２ａは、検出面側に配置されたガラス（フロントガラス）を通して車両の前方の画像データを取得する。この構成において、ガラス（フロントガラス）は、第１カメラシステム６２ａの検出面を保護する役目も果していることから、フロントガラスは上記の保護窓（窓部）に相当する。運転支援ＥＣＵ１０は、第１カメラシステム６２ａの画像データからフロントガラスの汚れを検出してもよい。運転支援ＥＣＵ１０は、フロントガラスの汚れを検出した場合、フロントガラスを洗浄する洗浄処理として、車両が通常搭載しているフロントガラス用洗浄装置に洗浄処理を実行させる。フロントガラス用洗浄装置は、フロントガラスに対して洗浄液（所謂、ウィンドウォッシャー液）を噴射するとともに、ワイパーを作動させる。本明細書において、カメラの検出面側に配置された保護窓及びガラス等を、単に「窓部」と称呼する場合がある。
【０１９２】
運転支援ＥＣＵ１０は、保護窓４１１の一部を選択して、その選択した保護窓のみに対して洗浄処理を実行してもよい。例えば、運転支援ＥＣＵ１０は、レーダセンサ６１ａに対応する保護窓４１１ａにおいて汚れが検出された場合、洗浄部４０３ａの電磁式開閉弁５０３のみを開状態に設定することにより、保護窓４１１ａのみを洗浄してもよい。
【０１９３】
洗浄装置６５は、洗浄液又は空気のみを保護窓に対して噴射することによって、保護窓を洗浄する構成であってもよい。
【０１９４】
例えば、洗浄装置６５は、「合流ジョイント５０２、電磁式開閉弁５０３及び電動式空気ポンプ５０４」を備えてなくてもよい。この構成において、配管４０４が、ノズル部５０１に直接接続される。従って、洗浄装置６５は、洗浄液ポンプ４０２によって洗浄液を圧送して、洗浄液のみを保護窓４１１に対して噴射するような構成であってもよい。
【０１９５】
洗浄スイッチ６９は、運転者が洗浄処理を要求する際に操作され、その要求を表す信号を発生するスイッチであればよい。更に、洗浄スイッチ６９は、音声認識装置を用いて運転者の洗浄要求を認識する装置であってもよい。このような装置は、音声により操作されるスイッチと等価であり、本発明における操作スイッチ（操作手段）を構成し得る。
【０１９６】
運転支援ＥＣＵ１０は、第２カメラシステム６３によって取得された画像データから、「物標情報及びレーン情報」を含む車両周辺情報を取得し、車線維持制御に利用してもよい。
【符号の説明】
【０１９７】
１０…運転支援ＥＣＵ、２０…エンジンＥＣＵ、３０…ブレーキＥＣＵ、４０…ＥＰＳ・ＥＣＵ、５０…メータＥＣＵ、６１ａ〜６１ｅ…レーダセンサ、６２ａ〜６２ｄ…第１カメラシステム、６３ａ〜６３ｃ…第２カメラシステム、６４ａ〜６４ｃ…ディスプレイ、６５…洗浄装置、６６…タッチセンサ、６７…視線センサ、６８…走行支援スイッチ、６９…洗浄スイッチ、７０…スピーカ。
【図１】
2019182328.tif 000003
【図２】
2019182328.tif 000004
【図３】
2019182328.tif 000005
【図４】
2019182328.tif 000006
【図５】
2019182328.tif 000007
【図６】
2019182328.tif 000008
【図７】
2019182328.tif 000009
【図８】
2019182328.tif 000010
【図９】
2019182328.tif 000011
【図１０】
2019182328.tif 000012
【図１１】
2019182328.tif 000013
【図１２】
2019182328.tif 000014
【図１３】
2019182328.tif 000015