(57)【要約】      （修正有）【課題】、車両が走行レーンから逸脱する虞があることを、操舵トルクを用いて運転者へ伝達することが可能な運転支援装置を提供する。【解決手段】運転支援装置１０は、操舵ハンドルと操舵輪とを機械的に連結するステアリング機構と、ステアリング機構に設けられたモータ６１とを備える。運転支援装置は、走行レーン内に設定される目標走行ラインに沿って自車両を走行させるための第１操舵制御量と、運転者の操舵ハンドルの操作をアシストするための第２操舵制御量とに基いてトルク制御量を演算し、当該トルク制御量に基いてモータを駆動する。自車両が区画線又は物体に接近したと推定されるときに成立する所定の接近条件が成立した場合、接近条件が成立したと判定した時点の直後のトルク制御量が、その時点の直前のトルク制御量を、自車両を目標走行ラインに近づける方向のトルク成分だけ変化させた値と等しくなるように、トルク制御量を補正する。【選択図】図５
2020011606.tif 000002
【特許請求の範囲】
【請求項１】
操舵ハンドルと操舵輪とを機械的に連結するステアリング機構と、
前記ステアリング機構に設けられ、前記操舵輪の転舵角を変化させるためのトルクを発生させるモータと、
自車両の周囲の区画線についての情報及び前記自車両の周囲に存在する物体についての情報を含む車両周辺情報を取得する情報取得手段と、
前記車両周辺情報に基いて前記自車両が走行している車線である走行レーン内に設定される目標走行ラインに沿って前記自車両を走行させるための第１操舵制御量を演算する第１演算手段と、
運転者による前記操舵ハンドルの操作に応じて前記操舵ハンドルの前記操作をアシストするための第２操舵制御量を演算する第２演算手段と、
少なくとも前記第１操舵制御量と前記第２操舵制御量とに基いてトルク制御量を演算し、前記トルク制御量に基いて前記モータを駆動する操舵制御手段と、
を備えた運転支援装置において、
前記操舵制御手段は、前記運転者が前記操舵ハンドルを操作した場合、
前記操舵ハンドルの操作によって前記自車両が前記走行レーンを規定する区画線又は前記物体に接近したと推定されるときに成立する所定の接近条件が成立したか否かを少なくとも前記車両周辺情報に基いて判定し、
前記接近条件が成立したと判定した場合、前記接近条件が成立したと判定した第１特定時点の直後の前記トルク制御量が、前記第１特定時点の直前の前記トルク制御量を、前記自車両を前記目標走行ラインに近づける方向のトルク成分だけ変化させた値と等しくなるように、前記トルク制御量を補正する第１補正制御を実行する
ように構成された、
運転支援装置。
【請求項２】
請求項１に記載の運転支援装置において、
前記操舵制御手段は、
前記第１補正制御の実行を開始した後に前記自車両が前記区画線又は前記物体に近づくように操舵されているか否かを判定し、
前記自車両が前記区画線又は前記物体に近づくように操舵されていないと判定した場合、前記第１補正制御を中止する
ように構成された、
運転支援装置。
【請求項３】
請求項２に記載の運転支援装置において、
前記操舵制御手段は、
前記自車両が前記区画線又は前記物体に近づくように操舵されていないと判定した以降において、前記運転者が前記操舵ハンドルを操作しているか否かを判定し、
前記運転者が前記操舵ハンドルを操作していると判定した場合、前記運転者が前記操舵ハンドルを操作していると判定した以降の第２特定時点の前記第２操舵制御量の大きさが、前記第２特定時点における前記操舵ハンドルの前記操作に対応する基本アシスト制御量の大きさに比べて大きな値になるように、第２補正制御を実行し、
前記第２補正制御を開始した後に前記運転者が前記操舵ハンドルを操作していないと判定した場合、前記第２補正制御を中止する
ように構成された
運転支援装置。
【請求項４】
請求項１乃至請求項３の何れか一項に記載の運転支援装置において、
前記操舵制御手段は、前記第１特定時点の直後の前記第２操舵制御量の大きさが、前記第１特定時点の直前の前記第２操舵制御量の大きさに比べて小さくなるように、前記第１補正制御を実行する
ように構成された
運転支援装置。
【請求項５】
請求項１乃至請求項３の何れか一項に記載の運転支援装置において、
前記操舵制御手段は、前記第１特定時点の直後の前記第１操舵制御量の大きさが、前記第１特定時点の直前の前記第１操舵制御量の大きさに比べて大きくなるように、前記第１補正制御を実行する
ように構成された
運転支援装置。
【請求項６】
請求項１乃至請求項５の何れか一項に記載の運転支援装置において、
前記操舵制御手段は、前記自車両と前記区画線又は前記物体との間の距離と、前記自車両が前記区画線又は前記物体に対して接近する速度との少なくとも一方に応じて、前記自車両を前記目標走行ラインに近づける方向のトルク成分の大きさを変化させることにより、前記第１補正制御を実行する
ように構成された、
運転支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両（自車両）の車線中央付近の走行を支援する車線維持制御を実行する運転支援装置に関する。
【背景技術】
【０００２】
従来から知られている運転支援装置は、車両の周辺状況（区画線及び他車両等）に関する車両周辺情報を取得し、車両周辺情報に基いて設定される目標走行ラインに沿って車両が走行するように車線維持制御を実行する（例えば、特許文献１を参照。）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−０３５９２５号公報
【発明の概要】
【０００４】
ところで、操舵ハンドルと車輪とを機械的に連結するステアリング機構を備える車両において、運転者が操舵ハンドルを操作した場合、運転支援装置は、運転者の操作をアシストするようにアシストトルクをステアリング機構に付与するようになっている。このような車両において、上述した車線維持制御の実行中に運転者が操舵ハンドルを操作すると、以下のような問題が生じる。
【０００５】
運転者が操舵ハンドルを操作すると、車両が目標走行ラインから乖離し始める。これに伴い、運転支援装置は、車線維持制御により車両を目標走行ラインの位置に戻そうとする。しかしながら、操舵ハンドルの操作がアシストトルクによりアシストされるので、運転者が、十分な反力を感じることなく操舵ハンドルの操作を継続する可能性がある。これにより、車両が、走行レーンを規定する区画線（白線）に接近し、走行レーンから逸脱する虞がある。以上から、車両が走行レーンから逸脱する虞があることを運転者に対して伝達する技術が求められる。
【０００６】
本発明は、上記課題を解決するためになされた。即ち、本発明の目的の一つは、ステアリングホイールと車輪とが機械的に連結されているステアリング機構を備える車両において、車両が走行レーンから逸脱する虞あることを、操舵トルクを用いて運転者へ伝達することが可能な運転支援装置を提供することである。
【０００７】
本発明の運転支援装置（以下、「本発明装置」と称呼される場合がある。）は、
操舵ハンドル（ＳＷ）と操舵輪（ＦＷＬ、ＦＷＲ）とを機械的に連結するステアリング機構（６０）と、
前記ステアリング機構に設けられ、前記操舵輪の転舵角を変化させるためのトルクを発生させるモータ（６１）と、
自車両の周囲の区画線についての情報及び前記自車両の周囲に存在する物体についての情報を含む車両周辺情報を取得する情報取得手段（１６）と、
前記車両周辺情報に基いて前記自車両が走行している車線である走行レーン内に設定される目標走行ライン（ＴＬ）に沿って前記自車両を走行させるための第１操舵制御量を演算する第１演算手段（１０、５１０）と、
運転者による前記操舵ハンドルの操作に応じて前記操舵ハンドルの前記操作をアシストするための第２操舵制御量を演算する第２演算手段（１０、５２０）と、
少なくとも前記第１操舵制御量と前記第２操舵制御量とに基いてトルク制御量（Ｔｒｃ）を演算し、前記トルク制御量に基いて前記モータを駆動する操舵制御手段（１０、４０）と、
を備える。
更に、前記操舵制御手段は、前記運転者が前記操舵ハンドルを操作した場合、
前記操舵ハンドルの操作によって前記自車両が前記走行レーンを規定する区画線又は前記物体に接近したと推定されるときに成立する所定の接近条件が成立したか否かを少なくとも前記車両周辺情報に基いて判定し、
前記接近条件が成立したと判定した場合、前記接近条件が成立したと判定した第１特定時点の直後の前記トルク制御量が、前記第１特定時点の直前の前記トルク制御量を、前記自車両を前記目標走行ラインに近づける方向のトルク成分だけ変化させた値と等しくなるように、前記トルク制御量を補正する第１補正制御を実行する（ステップ１０６０、ステップ１５６０、ステップ１７４０、ステップ２１５０）
ように構成されている。
【０００８】
本発明装置によれば、接近条件が成立した第１特定時点の直後のトルク制御量が、第１特定時点の直前の前記トルク制御量を、自車両を目標走行ラインに近づける方向のトルク成分だけ変化させた値と等しくなる。これにより、操舵ハンドルには、運転者の操舵ハンドルに対する操作の方向と反対の方向のトルクが生じる。従って、運転者は、自身の操舵ハンドルの操作に対して反力を感じる。以上のように、本発明装置は、ステアリングホイールと車輪とが機械的に連結されているステアリング機構を備える車両において、上述の反力により、自車両が走行レーンから逸脱したり、自車両が自車両の周囲にある物体に接近する虞があることを、運転者に伝達することができる。その結果、運転者が区画線又は物体に近づく方向に操舵ハンドルを更に操作するのを防ぐことができる。
【０００９】
本発明装置の他の態様において、前記操舵制御手段は、
前記第１補正制御の実行を開始した後に前記自車両が前記区画線又は前記物体に近づくように操舵されているか否かを判定し、
前記自車両が前記区画線又は前記物体に近づくように操舵されていないと判定した場合、前記第１補正制御を中止する（ステップ１０４０：Ｎｏ及びステップ１０７０；ステップ１５５０：Ｎｏ及びステップ１５７０；ステップ１７２０：Ｎｏ及びステップ１７５０；ステップ２１３０：Ｎｏ及びステップ２１６０）
ように構成されている。
【００１０】
例えば、運転者が自車両を目標走行ラインの位置に戻そうと操舵ハンドルを操作している状況において第１補正制御が継続された場合、自車両が目標走行ラインに対して急激に戻され、これにより、自車両が目標走行ラインを通り過ぎる（即ち、オーバーシュートする）虞がある。これに対して、本態様の操舵制御手段は、自車両が区画線又は物体に近づくように操舵されていないと判定した場合に第１補正制御を中止する。従って、自車両の位置が徐々に目標走行ラインに向かって戻される。よって、自車両が目標走行ラインを通り過ぎる可能性を低減することができる。
【００１１】
本発明装置の他の態様において、前記操舵制御手段は、
前記自車両が前記区画線又は前記物体に近づくように操舵されていないと判定した以降において、前記運転者が前記操舵ハンドルを操作しているか否かを判定し、
前記運転者が前記操舵ハンドルを操作していると判定した場合、前記運転者が前記操舵ハンドルを操作していると判定した以降の第２特定時点の前記第２操舵制御量（Ａｔｒ）の大きさが、前記第２特定時点における前記操舵ハンドルの前記操作に対応する基本アシスト制御量（Ｔｒｂ）の大きさに比べて大きな値になるように、第２補正制御を実行し（ステップ１３１０：Ｙｅｓ、ステップ１３２０）、
前記第２補正制御を開始した後に前記運転者が前記操舵ハンドルを操作していないと判定した場合、前記第２補正制御を中止する（ステップ１３１０：Ｎｏ、ステップ１０７０）
ように構成されている。
【００１２】
本態様によれば、自車両が区画線又は物体に近づくように操舵されておらず（即ち、自車両が区画線又は物体から離れるように操舵されている）且つ運転者が操舵ハンドルを操作している場合、運転者の操舵ハンドルの操作が大きなトルクによってアシストされる。これにより、運転者は、より小さい操舵量で自車両の位置を目標走行ラインの位置に戻すことができる。
【００１３】
本発明装置の他の態様において、前記操舵制御手段は、前記第１特定時点の直後の前記第２操舵制御量（Ａｔｒ）の大きさが、前記第１特定時点の直前の前記第２操舵制御量の大きさに比べて小さくなるように、前記第１補正制御を実行する
ように構成されている。
【００１４】
本態様の操舵制御手段は、接近条件が成立した場合、操舵ハンドルの操作をアシストするための第２操舵制御量の大きさを小さくすることにより、操舵ハンドルに、運転者の操作に対して反対方向のトルクを生じさせることができる。これにより、運転者は、自身の操舵ハンドルの操作に対して反力を感じる。本態様の操舵制御手段は、この反力により、運転者に対して、自車両が走行レーンから逸脱したり、自車両が自車両の周囲にある物体に接近する虞があることを伝達することができる。
【００１５】
本発明装置の他の態様において、前記操舵制御手段は、前記第１特定時点の直後の前記第１操舵制御量（Ｆｔｒ）の大きさが、前記第１特定時点の直前の前記第１操舵制御量の大きさに比べて大きくなるように、前記第１補正制御を実行する
ように構成されている。
【００１６】
本態様の操舵制御手段は、接近条件が成立した場合、自車両を目標走行ラインに沿って走行させるための第１操舵制御量の大きさを大きくすることにより、操舵ハンドルに、運転者の操作に対して反対方向のトルクを生じさせることができる。これにより、運転者は、自身の操舵ハンドルの操作に対して反力を感じる。本態様の操舵制御手段は、この反力により、運転者に対して、自車両が走行レーンから逸脱したり、自車両が自車両の周囲にある物体に接近する虞があることを伝達することができる。
【００１７】
本発明装置の他の態様において、前記操舵制御手段は、前記自車両と前記区画線又は前記物体との間の距離（ｄｖ１、ｄｖ２、ｄｘ１、ｄｘ２）と、前記自車両が前記区画線又は前記物体に対して接近する速度（Ｖａ１、Ｖａ２、Ｖｂ１、Ｖｂ２）との少なくとも一方に応じて、前記自車両を前記目標走行ラインに近づける方向のトルク成分の大きさを変化させることにより、前記第１補正制御を実行する
ように構成されている。
【００１８】
本態様によれば、自車両と区画線又は物体との間の距離と、自車両の区画線又は物体に対する相対速度との少なくとも一方に応じて、自車両を目標走行ラインに近づける方向のトルク成分（即ち、運転者の操作に対して反対方向のトルク成分）の大きさが変化する。本態様の操舵制御手段は、上記のトルク成分の大きさの変化によって、運転者に対して、区画線又は物体に対する自車両の接近度合いを知らせることができる。
【００１９】
上記説明においては、本発明の理解を助けるために、後述する実施形態に対応する発明の構成に対し、その実施形態で用いた名称及び／又は符号を括弧書きで添えている。しかしながら、本発明の各構成要素は、前記名称及び／又は符号によって規定される実施形態に限定されるものではない。
【図面の簡単な説明】
【００２０】
【図１】本発明の第１実施形態に係る運転支援装置の概略構成図である。
【図２】走行レーンの中央ラインに基いて決定される目標走行ラインを用いた車線維持制御を説明するための平面図である。
【図３】先行車軌跡に基いて決定される目標走行ラインを用いた車線維持制御を説明するための平面図である。
【図４】先行車の先行車軌跡を走行レーンの中央ラインに基いて補正する処理を説明するための図である。
【図５】図１に示した運転支援ＥＣＵの機能ブロック図である。
【図６】車両が目標走行ラインに対して左側に偏向した場合の第１実施形態に係る運転支援ＥＣＵの作動の第１例を説明する図である。
【図７】車両が目標走行ラインに対して左側に偏向した場合の第１実施形態に係る運転支援ＥＣＵの作動の第２例を説明する図である。
【図８】本発明の第１実施形態に係る運転支援ＥＣＵが実行する「ＬＴＣ開始／終了判定ルーチン」を示したフローチャートである。
【図９】本発明の第１実施形態に係る運転支援ＥＣＵが実行する「ＬＴＣ実行ルーチン」を示したフローチャートである。
【図１０】本発明の第１実施形態に係る運転支援ＥＣＵが実行する「アシストトルク演算ルーチン」を示したフローチャートである。
【図１１】本発明の第１実施形態に係る運転支援ＥＣＵが実行する「モータ制御ルーチン」を示したフローチャートである。
【図１２】車両が目標走行ラインに対して左側に偏向した場合の本発明の第２実施形態に係る運転支援ＥＣＵの作動の例を説明する図である。
【図１３】本発明の第２実施形態に係る運転支援ＥＣＵが実行する「アシストトルク演算ルーチン」を示したフローチャートである。
【図１４】他車両が隣接レーンにて走行している状況において、自車両が目標走行ラインに対して左側に偏向した場合の本発明の第３実施形態に係る運転支援ＥＣＵの作動の例を説明する図である。
【図１５】本発明の第３実施形態に係る運転支援ＥＣＵが実行する「アシストトルク演算ルーチン」を示したフローチャートである。
【図１６】本発明の第４実施形態に係る運転支援ＥＣＵの機能ブロック図である。
【図１７】本発明の第４実施形態に係る運転支援ＥＣＵが実行する「ＬＴＣ実行ルーチン」を示したフローチャートである。
【図１８】本発明の第４実施形態に係る運転支援ＥＣＵが実行する「モータ制御ルーチン」を示したフローチャートである。
【図１９】本発明の第５実施形態に係る運転支援ＥＣＵの機能ブロック図である。
【図２０】本発明の第５実施形態に係る運転支援ＥＣＵが利用するルックアップテーブルの例である。
【図２１】本発明の第５実施形態に係る運転支援ＥＣＵが実行する「アシストトルク／補正トルク演算ルーチン」を示したフローチャートである。
【図２２】本発明の第５実施形態に係る運転支援ＥＣＵが実行する「モータ制御ルーチン」を示したフローチャートである。
【図２３】本発明の変形例に係る運転支援ＥＣＵが利用するルックアップテーブルの例である。
【図２４】本発明の変形例に係る運転支援ＥＣＵが利用するルックアップテーブルの例である。
【発明を実施するための形態】
【００２１】
以下、添付図面を参照して本発明の実施形態について説明する。なお、添付図面は本発明の原理に則った具体的な実施形態を示しているが、これらは本発明を理解するための例であり、本発明を限定的に解釈するために用いられるべきでない。
【００２２】
＜第１実施形態＞
本発明の第１実施形態に係る運転支援装置（以下、「第１装置」と称呼される場合がある。）は、車両（自動車）に適用される。本実施装置が適用される車両は、他の車両と区別するために「自車両」と称呼される場合がある。運転支援装置は、図１に示したように、運転支援ＥＣＵ１０、エンジンＥＣＵ２０、ブレーキＥＣＵ３０、ステアリングＥＣＵ４０、及び、メータＥＣＵ５０を備えている。
【００２３】
これらのＥＣＵは、マイクロコンピュータを主要部として備える電気制御装置（Electric Control Unit）であり、図示しないＣＡＮ（Controller Area Network）を介して相互に情報を送信可能及び受信可能に接続されている。本明細書において、マイクロコンピュータは、ＣＰＵ、ＲＡＭ、ＲＯＭ及びインターフェース（Ｉ／Ｆ）等を含む。ＣＰＵはＲＯＭに格納されたインストラクション（プログラム、ルーチン）を実行することにより各種機能を実現する。例えば、運転支援ＥＣＵ１０は、ＣＰＵ１０ａ、ＲＡＭ１０ｂ、ＲＯＭ１０ｃ、不揮発性メモリ１０ｄ及びインターフェース（Ｉ／Ｆ）１０ｅ等を含むマイクロコンピュータを備える。
【００２４】
運転支援ＥＣＵ１０は、以下に列挙するセンサ（スイッチを含む。）と接続されていて、それらのセンサの検出信号又は出力信号を受信するようになっている。なお、各センサは、運転支援ＥＣＵ１０以外のＥＣＵに接続されていてもよい。その場合、運転支援ＥＣＵ１０は、センサが接続されたＥＣＵからＣＡＮを介してそのセンサの検出信号又は出力信号を受信する。
【００２５】
アクセルペダル操作量センサ１１は、自車両のアクセルペダル１１ａの操作量（アクセル開度）を検出し、アクセルペダル操作量ＡＰを表す信号を出力するようになっている。
ブレーキペダル操作量センサ１２は、自車両のブレーキペダル１２ａの操作量を検出し、ブレーキペダル操作量ＢＰを表す信号を出力するようになっている。
【００２６】
操舵角センサ１３は、自車両の操舵角を検出し、操舵角θを表す信号を出力するようになっている。操舵角θの値は、操舵ハンドルＳＷを所定の基準位置（中立位置）から第１方向（左方向）に回転させた場合に正の値となり、操舵ハンドルＳＷを所定の基準位置から第１方向とは反対の第２方向（右方向）に回転させた場合に負の値になる。なお、中立位置とは、操舵角θがゼロとなる基準位置であり、車両が直進走行する際の操舵ハンドルＳＷの位置である。更に、運転支援ＥＣＵ１０は、操舵角センサ１３から受信した操舵角θから操舵角速度（θ´）を算出するようになっている。
操舵トルクセンサ１４は、操舵ハンドルＳＷの操作により自車両のステアリングシャフトＵＳに加わる操舵トルクを検出し、操舵トルクＴｒａを表す信号を出力するようになっている。なお、操舵トルクＴｒａの値は、操舵ハンドルＳＷを第１方向（左方向）に回転させた場合に正の値となり、操舵ハンドルＳＷを第２方向（右方向）に回転させた場合に負の値になる。
車速センサ１５は、自車両の走行速度（車速）を検出し、車速ＳＰＤを表す信号を出力するようになっている。
【００２７】
周囲センサ１６は、自車両の周囲の道路（自車両が走行している走行レーン及びその走行レーンに隣接する隣接レーンを含む）に関する情報、及び、それらの道路に存在する立体物に関する情報を取得するようになっている。立体物は、例えば、自動車、歩行者及び自転車などの移動物、並びに、ガードレール及びフェンスなどの固定物を表す。以下、これらの立体物は「物標」と称呼される場合がある。周囲センサ１６は、レーダセンサ１６ａ及びカメラセンサ１６ｂを備えている。
【００２８】
レーダセンサ１６ａは、例えば、ミリ波帯の電波（以下、「ミリ波」と称呼する。）を少なくとも自車両の前方領域を含む自車両の周辺領域に放射し、放射範囲内に存在する物標によって反射されたミリ波（即ち、反射波）を受信する。更に、レーダセンサ１６ａは、物標の有無について判定し、且つ、自車両と物標との相対関係を示すパラメータ（即ち、自車両に対する物標の位置、自車両と物標との距離、及び、自車両と物標との相対速度等）を演算して出力するようになっている。
【００２９】
より具体的に述べると、レーダセンサ１６ａはミリ波送受信部及び処理部を備えている。その処理部は、ミリ波送受信部から送信したミリ波とミリ波送受信部が受信した反射波との位相差、反射波の減衰レベル及びミリ波を送信してから反射波を受信するまでの時間等に基いて、自車両と物標との相対関係を示すパラメータを所定時間の経過毎に取得する。このパラメータは、検出した各物標（ｎ）に対する、車間距離（縦距離）Ｄｆｘ（ｎ）、相対速度Ｖｆｘ（ｎ）、横距離Ｄｆｙ（ｎ）及び相対横速度Ｖｆｙ（ｎ）等を含む。
【００３０】
車間距離Ｄｆｘ（ｎ）は、自車両と物標（ｎ）（例えば、先行車）との間の自車両の中心軸（前後方向に延びる中心軸、即ち、後述するｘ軸）に沿った距離である。
相対速度Ｖｆｘ（ｎ）は、物標（ｎ）（例えば、先行車）の速度Ｖｓと自車両の速度Ｖｊとの差（＝Ｖｓ−Ｖｊ）である。物標（ｎ）の速度Ｖｓは自車両の進行方向（即ち、後述するｘ軸の方向）における物標（ｎ）の速度である。
横距離Ｄｆｙ（ｎ）は、「物標（ｎ）の中心位置（例えば、先行車の車幅中心位置）」の、自車両の中心軸と直交する方向（即ち、後述するｙ軸方向）における同中心軸からの距離である。横距離Ｄｆｙ（ｎ）は「横位置」とも称呼される。
相対横速度Ｖｆｙ（ｎ）は、物標（ｎ）の中心位置（例えば、先行車の車幅中心位置）の、自車両の中心軸と直交する方向（即ち、後述するｙ軸方向）における速度である。
【００３１】
カメラセンサ１６ｂは、ステレオカメラ及び画像処理部を備え、車両前方の左側領域及び右側領域の風景を撮影して左右一対の画像データを取得する。カメラセンサ１６ｂは、その撮影した左右一対の画像データに基いて、物標の有無について判定し、且つ、自車両と物標との相対関係を示すパラメータを演算し、判定結果及び演算結果を出力するようになっている。この場合、運転支援ＥＣＵ１０は、レーダセンサ１６ａによって得られた自車両と物標との相対関係を示すパラメータと、カメラセンサ１６ｂによって得られた自車両と物標との相対関係を示すパラメータと、を合成することにより、自車両と物標との相対関係を示すパラメータを決定する。
【００３２】
更に、カメラセンサ１６ｂは、その撮影した左右一対の画像データに基いて、道路（自車両が走行している走行レーン）の左及び右の区画線を認識し、道路の形状（例えば、道路の曲率）、及び、道路と自車両との位置関係（例えば、自車両が走行しているレーンの左端又は右端から自車両の車幅方向の中心位置までの距離）を算出する。道路の形状及び道路と自車両との位置関係等を含む車線に関する情報は「車線情報」と称呼される。カメラセンサ１６ｂは、算出した車線情報を運転支援ＥＣＵ１０に出力する。なお、区画線は、白線及び黄色線等を含むが、以下では、区画線が白線であると仮定して説明する。
【００３３】
周囲センサ１６によって取得された物標に関する情報（自車両と物標との相対関係を示すパラメータを含む。）は「物標情報」と称呼される。周囲センサ１６は、所定のサンプリング時間が経過するたびに、物標情報を運転支援ＥＣＵ１０に繰り返し送信する。運転支援ＥＣＵ１０は、「物標情報及び車線情報」を含む車両の周辺状況に関する情報を「車両周辺情報」として取得する。
【００３４】
なお、周囲センサ１６は、必ずしも、レーダセンサ及びカメラセンサの両方を備える必要はなく、例えば、カメラセンサのみを含んでいてもよい。周囲センサ１６は「車両周辺情報を取得する情報取得部（情報取得手段）」と称呼される場合がある。
【００３５】
操作スイッチ１７は、運転者により操作されるスイッチである。運転者は、操作スイッチ１７を操作することにより、後述する追従車間距離制御を実行するか否かを選択することができる。更に、運転者は、操作スイッチ１７を操作することにより、後述する車線維持制御を実行するか否かを選択することができる。
【００３６】
エンジンＥＣＵ２０は、エンジンアクチュエータ２１に接続されている。エンジンアクチュエータ２１は、内燃機関２２のスロットル弁の開度を変更するスロットル弁アクチュエータを含む。エンジンＥＣＵ２０は、エンジンアクチュエータ２１を駆動することによって、内燃機関２２が発生するトルクを変更することができる。内燃機関２２が発生するトルクは、図示しない変速機を介して図示しない駆動輪に伝達されるようになっている。従って、エンジンＥＣＵ２０は、エンジンアクチュエータ２１を制御することによって、自車両の駆動力を制御し加速状態（加速度）を変更することができる。なお、自車両が、ハイブリッド車両である場合、エンジンＥＣＵ２０は、車両駆動源としての「内燃機関及び電動機」の何れか一方又は両方によって発生する自車両の駆動力を制御することができる。更に、自車両が電気自動車である場合、エンジンＥＣＵ２０は、車両駆動源としての電動機によって発生する自車両の駆動力を制御することができる。
【００３７】
ブレーキＥＣＵ３０は、ブレーキアクチュエータ３１に接続されている。ブレーキアクチュエータ３１は、ブレーキペダル１２ａの踏力によって作動油を加圧する図示しないマスタシリンダと、左右前後輪に設けられる摩擦ブレーキ機構３２との間の油圧回路に設けられている。ブレーキアクチュエータ３１は、ブレーキＥＣＵ３０からの指示に応じて、摩擦ブレーキ機構３２のブレーキキャリパ３２ｂに内蔵されたホイールシリンダに供給する油圧を調整する。その油圧によりホイールシリンダが作動することによりブレーキパッドがブレーキディスク３２ａに押し付けられて摩擦制動力が発生する。従って、ブレーキＥＣＵ３０は、ブレーキアクチュエータ３１を制御することによって、自車両の制動力を制御し加速状態（減速度、即ち、負の加速度）を変更することができる。
【００３８】
ステアリングＥＣＵ４０は、周知の電動パワーステアリングシステムの制御装置であって、ステアリング機構６０に組み込まれたモータ６１に接続されている。ステアリング機構６０は、操舵ハンドルＳＷの回転操作により左前輪ＦＷＬ及び右前輪ＦＷＲを転舵するための機構である。ステアリングシャフトＵＳの一端には操舵ハンドルＳＷが回転可能に接続されている。ステアリングシャフトＵＳの他端にはピニオンギア６３が回転可能に接続されている。従って、操舵ハンドルＳＷを回転させることにより、ピニオンギア６３が回転するようになっている。なお、ステアリングシャフトＵＳは、実際には、互いにトルク伝達可能に連結された、アッパーシャフト、インターミディエイトシャフト及ロアーシャフトを含む。
【００３９】
ピニオンギア６３は、ラックバー６４に形成されたラックギア（図示省略）と噛合している。ピニオンギア６３とラックバー６４とはラックアンドピニオン機構を構成している。このラックアンドピニオン機構によって、ピニオンギア６３の回転運動はラックバー６４の往復直線運動に変換される。ラックバー６４の両端には、タイロッド（図示省略）を介して操舵輪（左前輪ＦＷＬ及び右前輪ＦＷＲ）が操舵可能に接続されている。このように、操舵ハンドルＳＷと車輪（操舵輪）とが機械的に連結されている。ラックバー６４の往復直線運動に伴って操舵輪（左前輪ＦＷＬ及び右前輪ＦＷＲ）の転舵角が変更される。即ち、操舵ハンドルＳＷの回転に従って、操舵輪（左前輪ＦＷＬ及び右前輪ＦＷＲ）の転舵角が変更される。
【００４０】
モータ６１は、変換機構６２を介してラックバー６４に取付けられている。変換機構６２は、図示しない減速機を含む。変換機構６２は、モータ６１の回転を減速するとともにモータ６１の回転トルクを直線運動に変換してラックバー６４に伝達するようになっている。このように、モータ６１は、操舵輪（左前輪ＦＷＬ及び右前輪ＦＷＲ）の転舵角を変化させるトルクを発生させるようになっている。
【００４１】
運転支援ＥＣＵ１０は、操舵トルクＴｒａ及び車速ＳＰＤ等に基いて、運転者の操舵ハンドルＳＷの操作に応じたアシストトルクを演算して、ステアリングＥＣＵ４０に出力するようになっている。ステアリングＥＣＵ４０は、アシストトルクに基いて、モータ６１に流す電流値（アシストトルクが得られる電流値）を演算し、その電流値が流れるようにモータ６１を制御する。このように、ステアリングＥＣＵ４０は、運転者が操舵ハンドルＳＷを操作するときのアシストトルク（アシスト力）をモータ６１に発生させる。
【００４２】
メータＥＣＵ５０は、左右のターンシグナルランプ５１（ウインカーランプ）及びディスプレイ５２と接続されている。メータＥＣＵ５０は、図示しないウインカー駆動回路を介して、左又は右のターンシグナルランプ５１を点滅させるようになっている。ディスプレイ５２は、運転席の正面に設けられたマルチインフォメーションディスプレイである。ディスプレイ５２は、車速及びエンジン回転速度等の計測値に加えて、各種の情報を表示する。
【００４３】
次に、運転支援ＥＣＵ１０の作動の概要について説明する。運転支援ＥＣＵ１０は、「追従車間距離制御」及び「車線維持制御」を実行できるようになっている。
【００４４】
＜追従車間距離制御（ＡＣＣ：Adaptive Cruise Control）＞
追従車間距離制御は、物標情報に基いて、自車両の前方領域であって自車両の直前を走行している先行車（後述するＡＣＣ追従対象車）と自車両との車間距離を所定の距離に維持しながら、自車両を先行車に追従させる制御である。追従車間距離制御自体は周知である（例えば、特開２０１４−１４８２９３号公報、特開２００６−３１５４９１号公報、特許第４１７２４３４号明細書、及び、特許第４９２９７７７号明細書等を参照。）。従って、以下、簡単に説明する。
【００４５】
運転支援ＥＣＵ１０は、操作スイッチ１７の操作によって追従車間距離制御が要求されている場合、追従車間距離制御を実行する。
【００４６】
より具体的に述べると、運転支援ＥＣＵ１０は、追従車間距離制御が要求されている場合、周囲センサ１６により取得した物標情報に基いてＡＣＣ追従対象車を選択する。例えば、運転支援ＥＣＵ１０は、検出した物標（ｎ）の横距離Ｄｆｙ（ｎ）と車間距離Ｄｆｘ（ｎ）とから特定される物標（ｎ）の相対位置が追従対象車両エリア内に存在するか否かを判定する。追従対象車両エリアは、自車両の車速及び自車両のヨーレートに基いて推定される自車両の進行方向における距離が長くなるほど、その進行方向に対する横方向の距離の絶対値が小さくなるように予め定められたエリアである。そして、運転支援ＥＣＵ１０は、物標（ｎ）の相対位置が追従対象車両エリア内に所定時間以上に渡って存在する場合、その物標（ｎ）をＡＣＣ追従対象車として選択する。なお、相対位置が追従対象車両エリア内に所定時間以上に渡って存在する物標が複数存在する場合、運転支援ＥＣＵ１０は、それらの物標の中から車間距離Ｄｆｘ（ｎ）が最小の物標をＡＣＣ追従対象車として選択する。
【００４７】
更に、運転支援ＥＣＵ１０は、目標加速度Ｇｔｇｔを下記（１）式及び（２）式の何れかに従って算出する。（１）式及び（２）式において、Ｖｆｘ（ａ）はＡＣＣ追従対象車（ａ）の相対速度であり、ｋ１及びｋ２は所定の正のゲイン（係数）であり、ΔＤ１は「ＡＣＣ追従対象車（ａ）の車間距離Ｄｆｘ（ａ）」から「目標車間距離Ｄｔｇｔ」を減じることにより得られる車間偏差（＝Ｄｆｘ（ａ）−Ｄｔｇｔ）である。なお、目標車間距離Ｄｔｇｔは、運転者により操作スイッチ１７を用いて設定される目標車間時間Ｔｔｇｔに自車両１００の車速ＳＰＤを乗じることにより算出される（即ち、Ｄｔｇｔ＝Ｔｔｇｔ・ＳＰＤ）。
【００４８】
運転支援ＥＣＵ１０は、値（ｋ１・ΔＤ１＋ｋ２・Ｖｆｘ（ａ））が正又は「０」の場合に下記（１）式を使用して目標加速度Ｇｔｇｔを決定する。ｋａ１は、加速用の正のゲイン（係数）であり、「１」以下の値に設定されている。
運転支援ＥＣＵ１０は、値（ｋ１・ΔＤ１＋ｋ２・Ｖｆｘ（ａ））が負の場合に下記（２）式を使用して目標加速度Ｇｔｇｔを決定する。ｋｄ１は、減速用の正のゲイン（係数）であり、本例においては「１」に設定されている。
Ｇｔｇｔ（加速用）＝ｋａ１・（ｋ１・ΔＤ１＋ｋ２・Ｖｆｘ（ａ））  …（１）
Ｇｔｇｔ（減速用）＝ｋｄ１・（ｋ１・ΔＤ１＋ｋ２・Ｖｆｘ（ａ））  …（２）
【００４９】
なお、追従対象車両エリアに物標が存在しない場合、運転支援ＥＣＵ１０は、自車両の車速ＳＰＤが「目標車間時間Ｔｔｇｔに応じて設定される目標速度」に一致するように、目標速度と車速ＳＰＤに基いて目標加速度Ｇｔｇｔを決定する。
【００５０】
運転支援ＥＣＵ１０は、車両の加速度が目標加速度Ｇｔｇｔに一致するように、エンジンＥＣＵ２０を用いてエンジンアクチュエータ２１を制御するとともに、必要に応じてブレーキＥＣＵ３０を用いてブレーキアクチュエータ３１を制御する。
【００５１】
＜車線維持制御（ＬＴＣ：Lane Trace Control）＞
運転支援ＥＣＵ１０は、追従車間距離制御の実行中に、操作スイッチ１７の操作によって車線維持制御が要求されている場合、車線維持制御を実行する。
【００５２】
車線維持制御では、運転支援ＥＣＵ１０が、白線又は先行車の走行軌跡（即ち、先行車軌跡）、若しくは、これらの両方を活用して、目標走行ライン（目標走行路）を決定（設定）する。運転支援ＥＣＵ１０は、自車両の横位置（即ち、道路に対する車幅方向の自車両の位置）が「その自車両が走行しているレーン（走行レーン）」内の目標走行ライン付近に維持されるように、操舵トルクをステアリング機構に付与して自車両の操舵輪の転舵角を変化させる（例えば、特開２００８−１９５４０２号公報、特開２００９−１９０４６４号公報、特開２０１０−６２７９号公報、及び、特許第４３４９２１０号等を参照。）。これにより、運転者の操舵操作が支援される。このような車線維持制御は、「ＴＪＡ（Traffic Jam Assist）」とも称呼される場合がある。なお、上述の操舵トルクは、運転者の操舵操作をアシストするために付与されるアシストトルクとは異なり、運転者の操舵操作なしに、モータ６１の駆動によりラックバー６４に付与されるトルクを表す。
【００５３】
以下、白線に基いて決定される目標走行ラインを用いた車線維持制御について説明を加える。図２に示したように、運転支援ＥＣＵ１０は、車両周辺情報に含まれる車線情報に基いて、自車両１００が走行している走行レーンの「左白線ＬＬ及び右白線ＲＬ」についての情報を取得する。運転支援ＥＣＵ１０は、取得した左白線ＬＬと右白線ＲＬとの道路幅方向における中央位置を結ぶラインを「走行レーンの中央ラインＬＭ」として推定する。
【００５４】
更に、運転支援ＥＣＵ１０は、走行レーンの中央ラインＬＭのカーブ半径Ｒ及び曲率ＣＬ（＝１／Ｒ）と、左白線ＬＬと右白線ＲＬとで区画される走行レーンにおける自車両１００の位置及び向きと、を演算する。より具体的に述べると、運転支援ＥＣＵ１０は、図２に示したように、自車両１００の車幅方向の中央位置と走行レーンの中央ラインＬＭとの間のｙ軸方向（実質的には道路幅方向）の距離ｄＬと、中央ラインＬＭの方向（接線方向）と自車両１００の進行方向とのずれ角θＬ（ヨー角θＬ）と、を演算する。これらのパラメータは、走行レーンの中央ラインＬＭを目標走行ラインＴＬとして設定した場合の車線維持制御に必要な目標走路情報（目標走行ラインＴＬの曲率ＣＬ、目標走行ラインＴＬに対するヨー角θＬ、並びに、目標走行ラインＴＬに対する道路幅方向の距離ｄＬ）である。なお、図２に示したｘ−ｙ座標は、自車両１００の前後方向に延びる中心軸をｘ軸、これに直交する軸をｙ軸とし、自車両１００の現在位置を原点（ｘ＝０、ｙ＝０）とする座標である。
【００５５】
運転支援ＥＣＵ１０は、車線維持制御を実行する際、所定時間が経過するごとに、曲率ＣＬ、車速ＳＰＤ、ヨー角θＬ及び距離ｄＬを下記の（３）式に適用することにより目標ヨーレートＹＲｃ＊を算出する。更に、運転支援ＥＣＵ１０は、目標ヨーレートＹＲｃ＊、実ヨーレートＹＲｔ及び車速ＳＰＤをルックアップテーブルＭａｐ１（ＹＲｃ＊、ＹＲｔ、ＳＰＤ）に適用することにより、目標ヨーレートＹＲｃ＊を得るための目標操舵トルクＴｒ＊を求める（即ち、Ｔｒ＊＝Ｍａｐ１（ＹＲｃ＊、ＹＲｔ、ＳＰＤ））。そして、運転支援ＥＣＵ１０は、モータ６１により生じる実際のトルクが目標操舵トルクＴｒ＊に一致するように、ステアリングＥＣＵ４０を用いてモータ６１を制御する。なお、（３）式において、Ｋ１、Ｋ２及びＫ３は制御ゲインである。ルックアップテーブルＭａｐ１（ＹＲｃ＊、ＹＲｔ、ＳＰＤ）はＲＯＭ１０ｃに記憶されている。
ＹＲｃ＊＝Ｋ１×ｄＬ＋Ｋ２×θＬ＋Ｋ３×ＣＬ×ＳＰＤ      …（３）
以上が、白線に基いて決定される目標走行ラインを用いた車線維持制御の概要である。
【００５６】
次に、先行車軌跡に基いて決定される目標走行ラインを用いた車線維持制御について説明を加える。このような車線維持制御は「追従操舵制御」とも称呼される。目標走行ラインを決定するためにその先行車軌跡が用いられる先行車は、「操舵追従先行車」とも称呼される。運転支援ＥＣＵ１０は、目標走行ラインを決定するための先行車軌跡の作成対象となる物標である先行車（即ち、操舵追従先行車）をＡＣＣ追従対象車と同様に特定する。
【００５７】
図３に示したように、運転支援ＥＣＵ１０は、先行車軌跡Ｌ１の作成対象となる物標である先行車１１０を特定して、自車両１００の位置に対する所定時間毎の先行車１１０の位置情報を含む物標情報に基いて先行車軌跡Ｌ１を作成する。例えば、運転支援ＥＣＵ１０は、先行車１１０の位置情報を上述したｘ−ｙ座標の位置座標データに変換する。例えば、図３の（ｘ１，ｙ１）、（ｘ２，ｙ２）、（ｘ３，ｙ３）及び（ｘ４，ｙ４）は、このように変換された先行車１１０の位置座標データの例である。運転支援ＥＣＵ１０は、当該位置座標データに対して曲線フィッティング処理を実行することにより、先行車１１０の先行車軌跡Ｌ１を作成する。フィッティング処理に用いられる曲線は３次関数ｆ（ｘ）である。フィッティング処理は、例えば、最小二乗法により実行される。
【００５８】
運転支援ＥＣＵ１０は、先行車１１０の先行車軌跡Ｌ１と、自車両１００の位置及び向きとに基いて、先行車軌跡Ｌ１を目標走行ラインＴＬとして設定した場合の車線維持制御に必要な目標走路情報（以下のｄｖ、θｖ、Ｃｖ及びＣｖ’）を演算する。
【００５９】
ｄｖ：現在位置（ｘ＝０、ｙ＝０）の自車両１００の車幅方向の中央位置と先行車軌跡Ｌ１との間のｙ軸方向（実質的には道路幅方向）の距離ｄｖ。
θｖ：自車両１００の現在位置（ｘ＝０、ｙ＝０）に対応する先行車軌跡Ｌ１の方向（接線方向）と自車両１００の進行方向（ｘ軸の＋の方向）とのずれ角（ヨー角）。
Ｃｖ：自車両１００の現在位置（ｘ＝０、ｙ＝０）に対応する位置（ｘ＝０、ｙ＝ｄｖ）の先行車軌跡Ｌ１の曲率。
Ｃｖ’：曲率変化率（先行車軌跡Ｌ１の任意の位置（ｘ＝ｘ０、ｘ０は任意の値）での単位距離（Δｘ）当たりの曲率変化量）。
【００６０】
そして、運転支援ＥＣＵ１０は、（３）式において、ｄＬをｄｖに置換し、θＬをθｖに置換し、ＣＬをＣｖに置換することにより目標ヨーレートＹＲｃ＊を演算する。更に、運転支援ＥＣＵ１０は、目標ヨーレートＹＲｃ＊を得るための目標操舵トルクＴｒ＊を、ルックアップテーブルＭａｐ１（ＹＲｃ＊、ＹＲｔ、ＳＰＤ）を用いて演算する。運転支援ＥＣＵ１０は、モータ６１により生じる実際のトルクが目標操舵トルクＴｒ＊に一致するように、ステアリングＥＣＵ４０を用いてモータ６１を制御する。
以上が、先行車軌跡に基いて決定される目標走行ラインを用いた車線維持制御の概要である。
【００６１】
なお、運転支援ＥＣＵ１０は、先行車軌跡Ｌ１と走行レーンの中央ラインＬＭとの組み合わせによって目標走行ラインＴＬを作成してもよい。より具体的に述べると、例えば、図４に示すように、運転支援ＥＣＵ１０は、先行車軌跡Ｌ１が「先行車軌跡Ｌ１の形状（曲率）を維持した軌跡であって且つ自車両１００の近傍における中央ラインＬＭの位置及び当該中央ラインＬＭの方向（接線方向）と一致した軌跡」となるように、先行車軌跡Ｌ１を補正する。これにより、先行車軌跡Ｌ１の形状が維持された軌跡であって、道路幅方向の誤差が小さい「補正した先行車軌跡（「補正先行車軌跡」と称呼される場合がある。）Ｌ２」を目標走行ラインＴＬとして得ることができる。そして、運転支援ＥＣＵ１０は、補正先行車軌跡Ｌ２を目標走行ラインＴＬとして設定した場合の目標走路情報を取得し、その目標走路情報と上記（３）式に基いて目標操舵トルクＴｒ＊を演算する。運転支援ＥＣＵ１０は、モータ６１により生じる実際のトルクが目標操舵トルクＴｒ＊に一致するように、ステアリングＥＣＵ４０を用いてモータ６１を制御する。
【００６２】
例えば、運転支援ＥＣＵ１０は、以下に述べる（ａ）乃至（ｄ）のように、先行車の有無及び白線の認識状況に応じて目標走行ラインＴＬを設定して車線維持制御を実行する。
（ａ）左右の白線が遠方まで認識できている場合、運転支援ＥＣＵ１０は、走行レーンの中央ラインＬＭに基いて目標走行ラインＴＬを設定して車線維持制御を実行する。
（ｂ）自車両の前方に操舵追従先行車が存在し且つ左右の白線の何れもが認識できていない場合、運転支援ＥＣＵ１０は、操舵追従先行車の先行車軌跡Ｌ１に基いて目標走行ラインＴＬを設定して車線維持制御（追従操舵制御）を実行する。
（ｃ）自車両の前方に操舵追従先行車が存在し且つ自車両の近傍の左右の白線が認識できている場合、運転支援ＥＣＵ１０は、操舵追従先行車の先行車軌跡Ｌ１を白線により補正した補正先行車軌跡Ｌ２を目標走行ラインＴＬとして設定して車線維持制御を実行する。
（ｄ）自車両の前方に操舵追従先行車が存在せず且つ道路の白線が遠方まで認識できていない場合、運転支援ＥＣＵ１０は、車線維持制御をキャンセルする。
【００６３】
＜車線維持制御中の反力制御＞
第１装置は、車線維持制御の実行中において、運転者が操舵ハンドルＳＷを操作し、その結果、自車両１００が「車線逸脱側の白線」に近づきつつあるか否かを判定する。なお、「自車両１００が車線逸脱側の白線に近づきつつある状態」とは、自車両１００が目標走行ラインＴＬから遠ざかりつつあり且つ左右の白線の何れか一方に近づきつつある状態である。第１装置は、自車両１００が「車線逸脱側の白線」に近づきつつあると判定した場合、以下に述べるように、操舵ハンドルＳＷの操作に対して適切な反力を付与する。運転者は、この反力によって、自車両１００が車線（走行レーン）から逸脱する虞があることを認識することができる。
【００６４】
より具体的に述べると、図５に示すように、運転支援ＥＣＵ１０は、機能的にみた場合、ＬＴＣ制御部（第１演算部）５１０と、アシストトルク制御部（第２演算部）５２０と、加算器５３０とを備える。ＬＴＣ制御部５１０は、目標操舵トルク演算部５１１を備える。アシストトルク制御部５２０は、基本アシストトルク演算部５２１と、ゲイン演算部５２２と、乗算器５２３とを備える。
【００６５】
目標操舵トルク演算部５１１は、上述したように、曲率ＣＬ、車速ＳＰＤ、ヨー角θＬ及び距離ｄＬを（３）式に適用することにより目標ヨーレートＹＲｃ＊を算出する。更に、目標操舵トルク演算部５１１は、目標ヨーレートＹＲｃ＊、実ヨーレートＹＲｔ及び車速ＳＰＤをルックアップテーブルＭａｐ１（ＹＲｃ＊、ＹＲｔ、ＳＰＤ）に適用することにより、目標操舵トルクＴｒ＊を算出する。目標操舵トルク演算部５１１は、目標操舵トルクＴｒ＊を加算器５３０に出力する。目標操舵トルクＴｒ＊は、上述したように、自車両を目標走行ラインＴＬに沿って走行させるための操舵制御量であり、「第１操舵制御量」と称呼される場合がある。
【００６６】
基本アシストトルク演算部５２１は、操舵トルクＴｒａ及び車速ＳＰＤをルックアップテーブルＭａｐ２（Ｔｒａ、ＳＰＤ）に適用することにより、運転者による操舵ハンドルＳＷの操作に対応する基本アシストトルクＴｒｂを演算する（即ち、Ｔｒｂ＝Ｍａｐ２（Ｔｒａ、ＳＰＤ））。なお、基本アシストトルクＴｒｂは「基本アシスト制御量」と称呼される場合がある。例えば、ルックアップテーブルＭａｐ２によれば、操舵トルクＴｒａの大きさ（絶対値）が大きくなるほど、基本アシストトルクＴｒｂの大きさ（絶対値）が大きくなる。更に、車速ＳＰＤが低くなるほど、基本アシストトルクＴｒｂの大きさ（絶対値）が大きくなる。基本アシストトルク演算部５２１は、基本アシストトルクＴｒｂを乗算器５２３に出力する。
【００６７】
ゲイン演算部５２２は、車両周辺情報及び操舵角θ等に基いて、制御ゲインＫｒｃを決定／設定する。なお、本実施形態において、制御ゲインＫｒｃは、「０」又は「１」の何れかの値に設定される。ゲイン演算部５２２は、制御ゲインＫｒｃを乗算器５２３に出力する。
【００６８】
乗算器５２３は、基本アシストトルク演算部５２１から出力された基本アシストトルクＴｒｂと、ゲイン演算部５２２から出力された制御ゲインＫｒｃとを乗算した値（＝Ｋｒｃ×Ｔｒｂ）を求め、この値をアシストトルクＡｔｒとして加算器５３０に出力する。アシストトルクＡｔｒは、運転者による操舵ハンドルＳＷの操作をアシストするための操舵制御量であり、「第２操舵制御量」と称呼される場合がある。
【００６９】
加算器５３０は、ＬＴＣ制御部５１０から出力された目標操舵トルクＴｒ＊と、アシストトルク制御部５２０から出力されたアシストトルクＡｔｒとを加算した値であるトルク制御量Ｔｒｃ（＝Ｔｒ＊＋Ａｔｒ）を求め、このトルク制御量Ｔｒｃを最終的なトルク制御量としてステアリングＥＣＵ４０に出力する。ステアリングＥＣＵ４０は、モータ６１により生じる実際のトルクがトルク制御量Ｔｒｃに一致するように、モータ６１に流す電流を制御する。これにより、モータ６１の回転トルクが変換機構６２を介してラックバー６４に作用する。
【００７０】
次に、車線維持制御の実行中に運転者が操舵ハンドルＳＷを第１方向（左方向）に操作した場合の運転支援ＥＣＵ１０の作動について図６を参照しながら説明する。車両１００は、走行レーン６１０を走行している。時間ｔ０以前において、運転支援ＥＣＵ１０は、走行レーン６１０の中央ラインＬＭを目標走行ラインＴＬとして設定して車線維持制御を実行している。なお、時間ｔ０にて、制御ゲインＫｒｃの値は「１」である。
【００７１】
運転支援ＥＣＵ１０は、所定時間が経過するごとに、車両周辺情報に含まれる車線情報に基いて、自車両１００の車幅方向の中心位置と左白線ＬＬとの間の第１距離ｄｗ１と、自車両１００の車幅方向の中心位置と右白線ＲＬとの間の第２距離ｄｗ２と、を演算する。更に、運転支援ＥＣＵ１０は、所定の第１条件が成立するか否かを判定する。第１条件は、第１距離ｄｗ１及び第２距離ｄｗ２の何れかが第１距離閾値Ｄｔｈ１以下になったときに成立する。
【００７２】
この例において、時間ｔ１にて、運転者が、操舵ハンドルＳＷを第１方向（左方向）に操作し始める。運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第１方向への操作に応じて、その操作（操舵操作）をアシスト（補助）するように、正の値の基本アシストトルクＴｒｂを出力する。更に、この時点において、制御ゲインＫｒｃの値は「１」である。従って、アシストトルクＡｔｒは正の値（＝１＊Ｔｒｂ）となる。
【００７３】
時間ｔ１以降において、運転者による操舵ハンドルＳＷの操作により自車両１００が目標走行ラインＴＬに対して左側に偏向する。従って、運転支援ＥＣＵ１０は、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、負の値の目標操舵トルクＴｒ＊を出力する。この時点において、アシストトルクＡｔｒは正の値であり、目標操舵トルクＴｒ＊は負の値である。従って、アシストトルクＡｔｒと目標操舵トルクＴｒ＊との和である最終的なトルク制御量Ｔｒｃはゼロ付近の値となる。運転者は、自身の操舵ハンドルＳＷの操作がアシストされにくく感じるものの、操舵ハンドルＳＷの操作に対して大きな反力を感じない。
【００７４】
この例において、時間ｔ２にて、第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下になる。従って、運転支援ＥＣＵ１０は、第１条件が成立したと判定する。
【００７５】
第１条件が成立した場合、運転支援ＥＣＵ１０は、所定の第２条件が成立するか否かを判定する。第２条件は、自車両１００が白線（この例では「左白線ＬＬ」）に近づくように操舵されているときに成立する。
【００７６】
具体的には、運転支援ＥＣＵ１０は、走行レーン６１０の曲率（例えば、目標走行ラインＴＬの曲率ＣＬ）及び車速ＳＰＤをルックアップテーブルＭａｐ３（ＣＬ、ＳＰＤ）に適用することにより、自車両１００が目標走行ラインＴＬに沿って走行するための基準操舵角θｒｅを演算する。例えば、ルックアップテーブルＭａｐ３によれば、曲率ＣＬの大きさ（絶対値）が大きくなるほど、基準操舵角θｒｅの大きさ（絶対値）が大きくなる。更に、車速ＳＰＤが低くなるほど、基準操舵角θｒｅの大きさ（絶対値）が小さくなる。
【００７７】
運転支援ＥＣＵ１０は、基準操舵角θｒｅと実際の操舵角θとを比較することにより、自車両１００が左白線ＬＬに近づくように操舵されているか否かを判定する。運転支援ＥＣＵ１０は、基準操舵角θｒｅを基準として、操舵角θが車線逸脱方向の角度であるか否かを判定する。ここで、車線逸脱方向とは、自車両１００が現在近づきつつある白線（この例では、左白線ＬＬ）側の方向である。運転支援ＥＣＵ１０は、操舵角θが基準操舵角θｒｅに対して車線逸脱方向の角度であると判定した場合、自車両１００が左白線ＬＬに近づくように操舵されていると判定する（即ち、第２条件が成立したと判定する。）。
【００７８】
本例においては、自車両１００が直線の走行レーン６１０を走行しているので、基準操舵角θｒｅが「０」であると仮定する。従って、第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下である状況において、運転支援ＥＣＵ１０は、操舵角θが正の値であるとき、操舵角θが車線逸脱方向の角度であると判定する。
【００７９】
なお、第２距離ｄｗ２が第１距離閾値Ｄｔｈ１以下である場合にも、運転支援ＥＣＵ１０は、第１条件が成立したと判定する。この場合、上述と同様に、運転支援ＥＣＵ１０は、第２条件が成立するか否かを判定する。具体的には、運転支援ＥＣＵ１０は、自車両１００が右白線ＲＬに近づくように操舵されているか否かを判定する。運転支援ＥＣＵ１０は、ルックアップテーブルＭａｐ３（ＣＬ、ＳＰＤ）を用いて基準操舵角θｒｅを演算する。そして、運転支援ＥＣＵ１０は、操舵角θが基準操舵角θｒｅに対して車線逸脱方向の角度であるか否かを判定する。本例において、基準操舵角θｒｅが「０」であると仮定する。従って、第２距離ｄｗ２が所定の第１距離閾値Ｄｔｈ１以下である状況において、運転支援ＥＣＵ１０は、操舵角θが負の値であるとき、操舵角θが車線逸脱方向の角度であると判定する（即ち、第２条件が成立したと判定する。）。
【００８０】
上述の第１条件及び第２条件は、まとめて「白線接近条件」と称呼される場合がある。なお、白線接近条件は、運転者の操舵ハンドルＳＷの操作によって自車両１００が白線に接近したと推定されるときに成立する条件であればよく、上記の例に限定されない。
【００８１】
運転支援ＥＣＵ１０は、白線接近条件（第１条件及び第２条件）が成立した場合、運転者が自車両１００を走行レーン６１０から逸脱させる意思があるか否かを判定する。運転支援ＥＣＵ１０は、所定の意思判定条件が成立したとき、運転者が自車両１００を走行レーン６１０から逸脱させる意思があると判定する。意思判定条件は、以下の条件Ａ及び条件Ｂの少なくとも一方が成立したときに成立する。
（条件Ａ）：操舵ハンドルＳＷの操舵方向と同じ側のターンシグナルランプ５１が点滅している。
（条件Ｂ）：操舵角速度θ´（即ち、操舵角θの単位時間当たりの変化量）の大きさ（絶対値｜θ´｜）が所定の角速度閾値θＴｈ以上である。操舵角速度θ´の大きさ（｜θ´｜）が角速度閾値θＴｈよりも大きい場合、運転者が意図的に操舵した可能性が高い（例えば、運転者が走行レーン６１０上の落下物を回避しようとしていることが考えられる。）。
【００８２】
本例においては、上記の条件Ａ及び条件Ｂの何れも成立しないと仮定する。従って、意思判定条件が成立しない。この場合、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「０」に設定する。このように、白線接近条件が成立した時点（時間ｔ２）の直後のアシストトルクＡｔｒの大きさは、その時点（時間ｔ２）の直前のアシストトルクＡｔｒの大きさに比べて小さくなる。
【００８３】
具体的には、時間ｔ２の直後において、アシストトルクＡｔｒ（＝Ｋｒｃ＊Ｔｒｂ）の値がゼロになる。従って、白線接近条件が成立した時点（時間ｔ２）の直後のトルク制御量Ｔｒｃは、その時点（時間ｔ２）の直前のトルク制御量ＴｒｃからアシストトルクＡｔｒ分を引いた値になる。別の言い方をすれば、これは、「白線接近条件が成立した時点（時間ｔ２）の直前のトルク制御量Ｔｒｃを、目標走行ラインＴＬに近づける方向のトルク成分だけ変化させた」と言うこともできる。なお、上述のようにトルク制御量Ｔｒｃを補正する処理を「第１補正制御」と称呼する場合がある。
【００８４】
従って、最終的なトルク制御量Ｔｒｃにおいて、運転者の操舵操作をアシストするためのアシストトルクの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。このように、第１装置は、この反力により、運転者に対して、自車両１００が白線（左白線ＬＬ）に近づいていることを伝達することができる。これにより、運転者が操舵ハンドルＳＷを第１方向へ更に操作するのを防ぐことができ、その結果、自車両１００が走行レーン６１０から逸脱するのを防ぐことができる。
【００８５】
時間ｔ３にて、運転者は大きな反力を感じたので、運転者は、操舵ハンドルＳＷを第１方向へ操作するのを中止する。即ち、運転者は、操舵ハンドルＳＷに対して力を加えない状態となる。従って、目標操舵トルクＴｒ＊に基く車線維持制御により自車両１００が目標走行ラインＴＬの位置に徐々に戻される。
【００８６】
この結果、時間ｔ４にて、操舵角θの値が正の値から負の値へと反転している。この時点にて、操舵角θが、基準操舵角θｒｅ（＝０）に対して、目標走行ラインＴＬに近づく方向の角度となる（即ち、車線逸脱方向の角度はでない）。従って、運転支援ＥＣＵ１０は、自車両１００が左白線ＬＬに近づくように操舵されていないと判定する。この場合、運転支援ＥＣＵ１０は、第１補正制御を中止する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１」に設定する。
【００８７】
次に、車線維持制御の実行中に運転者が操舵ハンドルＳＷを第１方向（左方向）に操作した場合の別の例について、運転支援ＥＣＵ１０の作動を図７を参照しながら説明する。図７の例において、時間ｔ２までの運転支援ＥＣＵ１０の作動は図６の例と同じである。従って、時間ｔ２以降についての運転支援ＥＣＵ１０の作動を説明する。
【００８８】
時間ｔ２にて、第１距離ｄｗ１が所定の第１距離閾値Ｄｔｈ１以下になったので、運転支援ＥＣＵ１０は、第１条件が成立したと判定する。次に、運転支援ＥＣＵ１０は、第２条件が成立するか否かを判定する。具体的には、運転支援ＥＣＵ１０は、以下のように、自車両１００が左白線ＬＬに近づくように操舵されているか否かを判定する。運転支援ＥＣＵ１０は、基準操舵角θｒｅを基準として、操舵角θが車線逸脱方向の角度であるか否かを判定する。この時点にて、操舵角θが、基準操舵角θｒｅ（＝０）に対して車線逸脱方向の角度（即ち、正の値）である。従って、運転支援ＥＣＵ１０は、自車両１００が左白線ＬＬに近づくように操舵されていると判定する（即ち、第２条件が成立すると判定する。）。
【００８９】
更に、時間ｔ２にて、意思判定条件が成立しないと仮定する。従って、運転支援ＥＣＵ１０は、第１補正制御を開始する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「０」に設定する。これにより、時間ｔ２の直後の最終的なトルク制御量Ｔｒｃにおいて、アシストトルクＡｔｒがゼロとなり、アシストトルクＡｔｒの作用方向（第１方向）と反対方向（第２方向）のトルク成分（目標操舵トルクＴｒ＊）のみが残る。操舵ハンドルＳＷには運転者の操作に対して反対方向の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。
【００９０】
本例においては、時間ｔ２以降において、運転者は、操舵ハンドルＳＷの第１方向への操作に対して大きな反力（負荷）を感じ、操舵ハンドルＳＷを第２方向へ操作し始める。そして、時間ｔ３にて、操舵角θの値が正の値から負の値へと反転する。即ち、操舵角θは、基準操舵角θｒｅ（＝０）に対して、目標走行ラインＴＬに近づく方向の角度となる。自車両１００が左白線ＬＬに近づくように操舵されていないので、第２条件が成立しない。この場合、運転支援ＥＣＵ１０は、第１補正制御を中止する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１」に設定する。
【００９１】
このとき、運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第２方向への操作に応じて、その操作をアシストするように、負の値の基本アシストトルクＴｒｂを出力する。従って、アシストトルクＡｔｒ（＝Ｋｒｃ・Ｔｒｂ）は負の値となる。更に、運転支援ＥＣＵ１０は、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、負の値の目標操舵トルクＴｒ＊を出力している。この時点において、アシストトルクＡｔｒと目標操舵トルクＴｒ＊との和である最終的なトルク制御量Ｔｒｃは、比較的大きな負の値となる。従って、運転者の第２方向への操舵ハンドルＳＷの操作は、大きなトルクによりアシストされる。このように、トルク制御量Ｔｒｃは、短時間内に、大きさ（絶対値）が大きい負の値になるので、自車両１００が走行レーン６１０から逸脱するのを防ぐことができる。
【００９２】
この例においては、時間ｔ３以降において、運転者の操舵ハンドルＳＷの操作により、操舵角θは負の値であってその大きさが次第に増大し、その後、その大きさが次第に減少する。そして、時間ｔ４にて、操舵角θの値は「０」になる。更に、時間ｔ４以降において、操舵角θは正の一定値に維持されている。その結果、時間ｔ４以降において自車両１００が左白線ＬＬに近い位置を走行レーン６１０に沿って走行する。このとき、第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下であるので、第１条件が成立している。
【００９３】
この状況において、操舵角θは、正の値であり、基準操舵角（この場合「０」）に対して車線逸脱方向の角度である。運転支援ＥＣＵ１０は、第２条件が成立すると判定する。従って、運転支援ＥＣＵ１０は、第１補正制御を再度開始する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「０」に設定する。これにより、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）はゼロになる。従って、最終的なトルク制御量Ｔｒｃにおいて、アシストトルクの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。その結果、操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。これにより、運転者は自車両１００が依然として左白線ＬＬに近い位置を走行していることを再度認知する。これにより、運転者が操舵ハンドルＳＷを第１方向へ更に操作するのを防ぐことができる。
【００９４】
時間ｔ５にて、運転者が、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、操舵ハンドルＳＷを第２方向（右方向）に操作し始める。よって、操舵角θの値が正の値から負の値へと反転する。即ち、操舵角θは、基準操舵角θｒｅ（＝０）に対して、目標走行ラインＴＬに近づく方向の角度となる。自車両１００が左白線ＬＬに近づくように操舵されていないので、第２条件が成立しない。この場合、運転支援ＥＣＵ１０は、第１補正制御を中止する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１」に設定する。これにより、最終的なトルク制御量Ｔｒｃに対して、アシストトルクＡｔｒが加えられる。
【００９５】
運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第２方向への操作に応じて、その操作をアシストするように、負の値の基本アシストトルクＴｒｂを出力する。従って、アシストトルクＡｔｒ（＝Ｋｒｃ・Ｔｒｂ）は負の値となる。更に、運転支援ＥＣＵ１０は、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、負の値の目標操舵トルクＴｒ＊を出力している。この時点において、アシストトルクＡｔｒと目標操舵トルクＴｒ＊との和である最終的なトルク制御量Ｔｒｃは、比較的大きな負の値となる。従って、運転者の第２方向への操舵ハンドルＳＷの操作は、大きなトルクによりアシストされる。これにより、運転者が自車両１００の位置を目標走行ラインＴＬの位置に容易に戻すことができる。
【００９６】
時間ｔ６にて、運転者は操舵ハンドルＳＷを第２方向へ操作するのを中止する。即ち、運転者は、操舵ハンドルＳＷに対して力を加えない状態となる。これにより、基本アシストトルクＴｒｂがゼロになる。よって、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）はゼロになる。その後、目標操舵トルクＴｒ＊に基く車線維持制御により自車両１００が目標走行ラインＴＬの位置に徐々に戻される。
【００９７】
＜具体的作動＞
次に、運転支援ＥＣＵ１０のＣＰＵ（単に「ＣＰＵ」と称呼する場合がある。）の具体的作動について説明する。ＣＰＵは図示しないルーチンにより追従車間距離制御（ＡＣＣ）を実行するようになっている。ＣＰＵは、この追従車間距離制御を実行している場合に図８に示した「ＬＴＣ開始／終了判定ルーチン」を実行するようになっている。
【００９８】
従って、所定のタイミングになると、ＣＰＵは、ステップ８００から図８のルーチンを開始してステップ８１０に進み、ＬＴＣ実行フラグＦ１の値が「０」であるか否かを判定する。ＬＴＣ実行フラグＦ１は、その値が「１」であるとき車線維持制御が実行されていることを示し、その値が「０」であるとき車線維持制御が実行されていないことを示す。ＬＴＣ実行フラグＦ１の値は、図示しないイグニッションスイッチがＯＦＦ位置からＯＮ位置へと変更されたときにＣＰＵにより実行されるイニシャライズルーチンにおいて「０」に設定される。更に、ＬＴＣ実行フラグＦ１の値は、後述するステップ８６０においても「０」に設定される。
【００９９】
いま、車線維持制御が実行されていないと仮定すると、ＬＴＣ実行フラグＦ１の値は「０」である。この場合、ＣＰＵは、そのステップ８１０にて「Ｙｅｓ」と判定してステップ８２０に進み、所定の実行条件が成立しているか否かを判定する。この実行条件は「ＬＴＣ実行条件」とも称呼される。
【０１００】
ＬＴＣ実行条件は、以下の条件１及び条件２の両方が成立したときに成立する。
（条件１）：追従車間距離制御の実行中であり、且つ、操作スイッチ１７の操作により車線維持制御を実行することが選択されている。
（条件２）：カメラセンサ１６ｂによって自車両から遠方の位置まで左白線ＬＬ及び右白線ＲＬが認識できている。
【０１０１】
ＬＴＣ実行条件が成立していない場合、ＣＰＵはステップ８２０にて「Ｎｏ」と判定し、ステップ８９５に直接進んで本ルーチンを一旦終了する。
【０１０２】
これに対し、ＬＴＣ実行条件が成立している場合、ＣＰＵはステップ８２０にて「Ｙｅｓ」と判定してステップ８３０に進み、ＬＴＣ実行フラグＦ１を「１」に設定する。その後、ＣＰＵは、ステップ８９５に進んで本ルーチンを一旦終了する。これにより、車線維持制御が開始される（図９のルーチンのステップ９１０の「Ｙｅｓ」の判定を参照。）。
【０１０３】
上述のように車線維持制御が開始された後、ＣＰＵが再び図８のルーチンをステップ８００から開始すると、ＣＰＵは、ステップ８１０にて「Ｎｏ」と判定して、ステップ８４０に進む。ＣＰＵは、ステップ８４０にて、所定の終了条件が成立しているか否かを判定する。この終了条件は「ＬＴＣ終了条件」とも称呼される。
【０１０４】
ＬＴＣ終了条件は、以下の条件３及び条件４の何れかが成立したときに成立する。
（条件３）：操作スイッチ１７の操作により、車線維持制御の実行を終了することが選択されている。
（条件４）：カメラセンサ１６ｂによって、左白線及び右白線の何れもが認識できない。即ち、車線維持制御に必要な情報が取得できない。
【０１０５】
ＬＴＣ終了条件が成立していない場合、ＣＰＵはステップ８４０にて「Ｎｏ」と判定し、ステップ８９５に直接進んで本ルーチンを一旦終了する。
【０１０６】
これに対して、ＬＴＣ終了条件が成立している場合、ＣＰＵはステップ８４０にて「Ｙｅｓ」と判定し、以下に述べるステップ８５０及びステップ８６０の処理を順に行う。その後、ＣＰＵは、ステップ８９５に進んで本ルーチンを一旦終了する。
【０１０７】
ステップ８５０：ＣＰＵは、車線維持制御を終了させる旨をディスプレイ５２に表示させる。これにより、ＣＰＵは、運転者に対して車線維持制御の終了を通知する。
ステップ８６０：ＣＰＵは、ＬＴＣ実行フラグＦ１の値を「０」に設定する。
【０１０８】
更に、ＣＰＵは、所定時間が経過する毎に、図９にフローチャートにより示した「ＬＴＣ実行ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図９のステップ９００から処理を開始してステップ９１０に進み、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０１０９】
ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ９１０にて「Ｎｏ」と判定し、ステップ９９５に直接進んで本ルーチンを一旦終了する。
【０１１０】
これに対し、ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ９１０にて「Ｙｅｓ」と判定して以下のステップ９２０乃至ステップ９４０の処理を順に行う。その後、ＣＰＵは、ステップ９９５に進んで本ルーチンを一旦終了する。
【０１１１】
ステップ９２０：ＣＰＵは、車両周辺情報に含まれる車線情報に基いて、左白線ＬＬ及び右白線ＲＬの中央位置を結ぶラインを推定し、当該ラインを「中央ラインＬＭ」として決定する。
ステップ９３０：ＣＰＵは、中央ラインＬＭを目標走行ラインＴＬとして設定する。
ステップ９４０：ＣＰＵは、上述したように目標操舵トルクＴｒ＊を第１操舵制御量として演算する。
【０１１２】
更に、ＣＰＵは、所定時間が経過する毎に、図１０にフローチャートにより示した「アシストトルク演算ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図１０のステップ１０００から処理を開始してステップ１０１０に進み、操舵トルクＴｒａ及び車速ＳＰＤをルックアップテーブルＭａｐ２（Ｔｒａ、ＳＰＤ）に適用することにより、基本アシストトルクＴｒｂを演算する。
【０１１３】
次に、ＣＰＵは、ステップ１０２０にて、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０１１４】
ＬＴＣ実行フラグＦ１の値が「１」でない場合（即ち、車線維持制御が実行されていない場合）、ＣＰＵは、そのステップ１０２０にて「Ｎｏ」と判定してステップ１０７０に進み、制御ゲインＫｒｃの値を「１」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１１５】
これに対し、ＬＴＣ実行フラグＦ１の値が「１」である場合（即ち、車線維持制御が実行中である場合）、ＣＰＵは、そのステップ１０２０にて「Ｙｅｓ」と判定してステップ１０３０に進み、所定の第１条件が成立するか否かを判定する。第１条件は、以下の条件５及び条件６の何れかが成立したときに成立する。第１距離閾値Ｄｔｈ１は、走行レーン６１０の幅（左白線ＬＬと右白線ＲＬとの間の距離）Ｗよりも小さい値（例えば、Ｗ／４）に設定される。
（条件５）：第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下である。
（条件６）：第２距離ｄｗ２が第１距離閾値Ｄｔｈ１以下である。
【０１１６】
いま、第１条件が成立すると仮定すると、ＣＰＵは、そのステップ１０３０にて「Ｙｅｓ」と判定してステップ１０４０に進み、所定の第２条件が成立するか否かを判定する。第２条件は、前述のように、自車両１００が白線に近づくように操舵されているときに成立する。具体的には、ＣＰＵは、走行レーン６１０の曲率（目標走行ラインＴＬの曲率ＣＬ）及び車速ＳＰＤをルックアップテーブルＭａｐ３（ＣＬ、ＳＰＤ）に適用することにより、自車両１００が目標走行ラインＴＬに沿って走行するための基準操舵角θｒｅを演算する。ＣＰＵは、操舵角θが基準操舵角θｒｅに対して車線逸脱方向の角度であるか否かを判定する。ＣＰＵは、操舵角θが基準操舵角θｒｅに対して車線逸脱方向の角度であると判定した場合、自車両１００が白線に近づくように操舵されていると判定する（即ち、第２条件が成立すると判定する。）。
【０１１７】
いま、第２条件が成立すると仮定すると、ＣＰＵは、そのステップ１０４０にて「Ｙｅｓ」と判定してステップ１０５０に進み、意思判定条件が成立するか否かを判定する。具体的には、ＣＰＵは、上述した条件Ａ及び条件Ｂの少なくとも一方が成立するか否かを判定する。
【０１１８】
いま、意思判定条件が成立しないと仮定すると、ＣＰＵは、そのステップ１０５０にて「Ｎｏ」と判定してステップ１０６０に進み、制御ゲインＫｒｃの値を「０」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。この場合、アシストトルクＡｔｒはゼロになる。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１１９】
一方、ＣＰＵがステップ１０３０に進んだ時点にて、第１条件が成立しない場合、ＣＰＵは、そのステップ１０３０にて「Ｎｏ」と判定してステップ１０７０に進む。更に、ＣＰＵがステップ１０４０に進んだ時点にて、第２条件が成立しない場合、ＣＰＵは、そのステップ１０４０にて「Ｎｏ」と判定してステップ１０７０に進む。加えて、ＣＰＵがステップ１０５０に進んだ時点にて、意思判定条件が成立している場合、ＣＰＵは、そのステップ１０５０にて「Ｙｅｓ」と判定してステップ１０７０に進む。ＣＰＵは、ステップ１０７０に進むと、制御ゲインＫｒｃの値を「１」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１０９５に進んで本ルーチンを一旦終了する。
【０１２０】
更に、ＣＰＵは、所定時間が経過する毎に、図１１にフローチャートにより示した「モータ制御ルーチン」を実行するようになっている。従って、所定のタイミングになると、ＣＰＵは図１１のステップ１１００から処理を開始してステップ１１１０に進み、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０１２１】
ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ１１１０にて「Ｙｅｓ」と判定してステップ１１２０に進み、目標操舵トルクＴｒ＊とアシストトルクＡｔｒとを加算した値（＝Ｔｒ＊＋Ａｔｒ）を求め、当該値を最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ１１４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。ＣＰＵは、モータ６１により生じる実際のトルクがトルク制御量Ｔｒｃに一致するように、ステアリングＥＣＵ４０を用いてモータ６１を制御する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０１２２】
これに対して、ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１１１０にて「Ｎｏ」と判定してステップ１１３０に進み、アシストトルクＡｔｒを最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ１１４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。ＣＰＵは、モータ６１により生じる実際のトルクがトルク制御量Ｔｒｃに一致するように、ステアリングＥＣＵ４０を用いてモータ６１を制御する。その後、ＣＰＵは、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０１２３】
以上のように、第１装置は、車線維持制御の実行中に上述の白線接近条件が成立した（即ち、第１条件及び第２条件が共に成立した）と判定した場合、アシストトルクＡｔｒをゼロまで減少させる第１補正制御を実行する。従って、白線接近条件が成立した時点（時間ｔ２）の直後のトルク制御量Ｔｒｃは、白線接近条件が成立した時点（時間ｔ２）の直前のトルク制御量ＴｒｃからアシストトルクＡｔｒ分を排除した値になる。即ち、トルク制御量Ｔｒｃには、アシストトルクの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。従って、操舵ハンドルＳＷには、運転者の操作に対して反対方向の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。この反力により、第１装置は、運転者に対して、自車両１００が白線に近づいたこと（即ち、自車両１００が走行レーン６１０を逸脱する虞があること）を伝達することができる。
【０１２４】
更に、第１装置は、第１補正制御を開始した後に自車両１００が白線に近づくように操舵されていない（即ち、第２条件が成立しない）と判定した場合、第１補正制御を中止する。第１補正制御を中止すると、トルク制御量ＴｒｃにアシストトルクＡｔｒが加えられるので、運転者の操舵ハンドルＳＷの操作がアシストされる。これにより、運転者が自車両１００の位置を目標走行ラインＴＬの位置に戻すことが容易になる。
【０１２５】
＜第２実施形態＞
次に、本発明の第２実施形態に係る運転支援装置（以下、「第２装置」と称呼される場合がある。）について説明する。第２装置は、自車両が白線に近づいた状況において運転者が操舵ハンドルＳＷを白線から離れる方向に操作したときに制御ゲインＫｒｃの値を「１より大きい値」に設定する点において、第１装置と相違している。以下、この相違点を中心に記述する。
【０１２６】
車線維持制御の実行中に運転者が操舵ハンドルＳＷを第１方向（左方向）に操作した場合の運転支援ＥＣＵ１０の作動について図１２を参照しながら説明する。図１２の例において、時間ｔ２までの運転支援ＥＣＵ１０の作動は図７の例と同じである。従って、時間ｔ２以降の運転支援ＥＣＵ１０の作動について詳細に説明する。
【０１２７】
時間ｔ２にて、運転支援ＥＣＵ１０は、白線接近条件（第１条件及び第２条件）が成立したと判定する。更に、意思判定条件が成立しないと仮定する。従って、運転支援ＥＣＵ１０は、第１補正制御を開始する。
【０１２８】
時間ｔ２以降において、運転者は、操舵ハンドルＳＷの第１方向への操作に対して大きな反力（負荷）を感じ、操舵ハンドルＳＷを第２方向へ操作し始める。時間ｔ３にて、操舵角θの値が正の値から負の値へと反転する。即ち、操舵角θは、基準操舵角θｒｅ（＝０）に対して目標走行ラインＴＬに近づく方向の角度となる。従って、運転支援ＥＣＵ１０は、第２条件が成立しない（自車両１００が左白線ＬＬに近づくように操舵されていない）と判定する。この場合、運転支援ＥＣＵ１０は、操舵トルクＴｒａに基いて運転者が操舵ハンドルＳＷを操作しているか否かを判定する。
【０１２９】
例えば、運転支援ＥＣＵ１０は、操舵トルクＴｒａの値が目標操舵トルクＴｒ＊と同じ向きであり、且つ、操舵トルクＴｒａの大きさ（絶対値）が基準操舵トルクＴｒｅよりも大きい場合、ＣＰＵは、運転者が操舵ハンドルＳＷを操作していると判定する。本例においては、基準操舵トルクＴｒｅは、「０」より大きい所定の値に設定される。なお、基準操舵トルクＴｒｅは、自車両１００の走行状況（例えば、自車両１００がカーブを走行している状況）に応じて変更されてもよい。
【０１３０】
従って、第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下である場合、運転支援ＥＣＵ１０は、操舵トルクＴｒａが負の値であり且つ操舵トルクＴｒａの大きさ（絶対値）が基準操舵トルクＴｒｅよりも大きいとき、運転者が操舵ハンドルＳＷを操作していると判定する。
【０１３１】
なお、第２距離ｄｗ２が第１距離閾値Ｄｔｈ１以下である場合、運転支援ＥＣＵ１０は、操舵トルクＴｒａが正の値であり且つ操舵トルクＴｒａの大きさ（絶対値）が基準操舵トルクＴｒｅよりも大きいとき、運転者が操舵ハンドルＳＷを操作していると判定する。
【０１３２】
本例においては、時間ｔ３にて、操舵トルクＴｒａの値が負の値であるので、運転支援ＥＣＵ１０は、運転者が操舵ハンドルＳＷを操作していると判定する。この場合、運転支援ＥＣＵ１０は、第１補正制御を中止する。そして、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１より大きい値（例えば、「１．１」）」に設定する。これにより、運転者が操舵ハンドルＳＷを操作していると判定した時点（時間ｔ３）以降のある特定時点にて、アシストトルクＡｔｒの大きさ（絶対値）が、その特定時点における操舵ハンドルＳＷの操作に対応する基本アシストトルクＴｒｂの大きさ（絶対値）に比べて大きくなる。なお、このように基本アシストトルクＴｒｂを補正する処理を「第２補正制御」と称呼する場合がある。
【０１３３】
時間ｔ３にて、運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第２方向への操作に応じて、その操作をアシストするように、負の値の基本アシストトルクＴｒｂを出力する。制御ゲインＫｒｃの値が「１．１」であるので、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）の大きさは、その時点での基本アシストトルクＴｒｂの大きさに比べて大きくなる。従って、運転者の第２方向への操舵ハンドルＳＷの操作は、図７の例に比べて大きいトルクによりアシストされる。これにより、運転者は、より小さい操舵量で自車両１００の位置を目標走行ラインＴＬの位置に戻すことができる。
【０１３４】
時間ｔ３以降において、運転者の操舵ハンドルＳＷの操作により、自車両１００が左白線ＬＬに近い位置を走行レーン６１０に沿って走行する。このとき、第１距離ｄｗ１が第１距離閾値Ｄｔｈ１以下であるので、第１条件が成立している。
【０１３５】
時間ｔ４にて、第１条件が成立している状況において、操舵角θの値が負の値から正の値へと反転する。操舵角θは基準操舵角（この場合「０」）に対して車線逸脱方向の角度であるので、運転支援ＥＣＵ１０は、第２条件が成立したと判定する。この場合、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「０」に設定する。即ち、運転支援ＥＣＵ１０は、第２補正制御を中止して、第１補正制御を再度開始する。これにより、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）はゼロになる。従って、最終的なトルク制御量Ｔｒｃにおいて、アシストトルクの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。これにより、運転者は自車両１００が依然として左白線ＬＬに近い位置を走行していることを再度認知する。よって、運転者が操舵ハンドルＳＷを第１方向へ更に操作するのを防ぐことができる。
【０１３６】
時間ｔ５にて、運転者が、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、操舵ハンドルＳＷを第２方向（右方向）に操作し始めている。よって、操舵角θの値が正の値から負の値へと反転する。そのため、運転支援ＥＣＵ１０は、第２条件が成立しない（自車両１００が左白線ＬＬに近づくように操舵されていない）と判定する。更に、上述のように、運転支援ＥＣＵ１０は、操舵トルクＴｒａの値に基いて運転者が操舵ハンドルＳＷを操作していると判定する。これにより、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１．１」に設定する。即ち、運転支援ＥＣＵ１０は、第１補正制御を中止して、第２補正制御を開始する。このとき、運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第２方向への操作に応じて、その操作をアシストするように、負の値の基本アシストトルクＴｒｂを出力している。制御ゲインＫｒｃの値が「１．１」であるので、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）の大きさは、その時点での基本アシストトルクＴｒｂの大きさに比べて大きくなる。従って、運転者の第２方向への操舵ハンドルＳＷの操作は、図７の例に比べて大きいトルクによりアシストされる。これにより、運転者が自車両１００の位置を目標走行ラインＴＬの位置に戻すことが第１装置に比べて容易になる。
【０１３７】
時間ｔ６にて、運転者は操舵ハンドルＳＷを第２方向へ操作するのを中止する。即ち、運転者は、操舵ハンドルＳＷに対して力を加えない状態となる。操舵トルクＴｒａの値がゼロになるので、運転支援ＥＣＵ１０は、操舵トルクＴｒａの値に基いて運転者が操舵ハンドルＳＷを操作していないと判定する。この場合、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１」に設定する。即ち、運転支援ＥＣＵ１０は、第２補正制御を中止する。
【０１３８】
その後、目標操舵トルクＴｒ＊に基く車線維持制御により自車両１００が目標走行ラインＴＬの位置に徐々に戻される。
【０１３９】
＜具体的な作動＞
第２装置は、第２装置の運転支援ＥＣＵ１０のＣＰＵ（単に「ＣＰＵ」と称呼する。）が「図１０に代わる図１３にフローチャートにより示したアシストトルク演算ルーチン」を実行する点において第１装置と相違している。以下、この相違点を中心に記述する。
【０１４０】
ＣＰＵは、所定時間が経過する毎に、図１０に示したルーチンに代えて、図１３に示したルーチンを実行するようになっている。図１３に示したルーチンは、図１０に示したルーチンにステップ１３１０及びステップ１３２０が追加されたルーチンである。なお、図１３において、図１０に示したステップと同一の処理を行うためのステップには、図１０のそのようなステップに付された符号が付されている。従って、図１０と同じ符号が付されたステップについては詳細な説明を省略する。
【０１４１】
ＣＰＵがステップ１０４０に進むと、ＣＰＵは、第２条件が成立するか否かを判定する。いま、第２条件が成立しない（自車両１００が白線に近づくように操舵されていない）と仮定する。この場合、ＣＰＵは、そのステップ１０４０にて「Ｎｏ」と判定してステップ１３１０に進む。
【０１４２】
ＣＰＵは、ステップ１３１０にて、上述したように、運転者が操舵ハンドルＳＷを操作しているか否かを判定する。具体的には、前述したように、ＣＰＵは、操舵トルクＴｒａの値が目標操舵トルクＴｒ＊と同じ向きであり、且つ、操舵トルクＴｒａの大きさ（絶対値）が基準操舵トルクＴｒｅよりも大きい場合（この条件を「運転者操舵条件」と称呼する。）、運転者が操舵ハンドルＳＷを操作していると判定する。一方、上記の運転者操舵条件を満たさない場合、ＣＰＵは、運転者が操舵ハンドルＳＷを操作していないと判定する。
【０１４３】
いま、運転者が操舵ハンドルＳＷを操作していると仮定すると、ＣＰＵは、そのステップ１３１０にて「Ｙｅｓ」と判定してステップ１３２０に進み、制御ゲインＫｒｃの値を「１．１」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１４４】
これに対して、ＣＰＵがステップ１３１０に進んだ時点にて、運転者が操舵ハンドルＳＷを操作していないと仮定する。この場合、ＣＰＵは、そのステップ１３１０にて「Ｎｏ」と判定してステップ１０７０に進み、制御ゲインＫｒｃの値を「１」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１４５】
以上のように、第２装置は、自車両１００が白線に近づいた状況において運転者が操舵ハンドルＳＷを白線から離れる方向に操舵したときに、制御ゲインＫｒｃの値を「１．１」に設定する第２補正制御を実行する。これにより、アシストトルクＡｔｒの大きさが、その時点における操舵ハンドルＳＷの操作に対応する基本アシストトルクＴｒｂの大きさに比べて大きくなる。従って、自車両１００が白線から離れるように運転者が操舵ハンドルＳＷを操作したとき、その操舵ハンドルＳＷの操作は、第１装置の場合と比較して大きなトルクによりアシストされる。これにより、運転者が自車両１００の位置を目標走行ラインＴＬの位置に戻すことが第１装置に比べて容易になる。
【０１４６】
＜第３実施形態＞
次に、本発明の第３実施形態に係る運転支援装置（以下、「第３装置」と称呼される場合がある。）について説明する。第３装置は、自車両１００が自車両１００の周囲に存在する立体物に近づいたときに制御ゲインＫｒｃの値を「０」に設定する点において、第１装置と相違している。以下、この相違点を中心に記述する。
【０１４７】
第３装置の運転支援ＥＣＵ１０の作動について図１４を参照しながら説明する。車両１００は、時間ｔ０以前において、走行レーン６１０の中央ラインＬＭを目標走行ラインＴＬとして設定して車線維持制御を実行している。更に、走行レーン６１０に隣接する隣接レーン６２０が存在しており、且つ、他車両１２０が隣接レーン６２０にて走行レーン６１０に近い位置を走行している。
【０１４８】
運転支援ＥＣＵ１０は、所定時間が経過するごとに、車両周辺情報に含まれる物標情報に基いて、自車両１００の周囲に立体物（移動物及び固定物を含む）が存在するか否かを判定する。運転支援ＥＣＵ１０は、立体物と自車両１００との相対速度及び自車両１００の速度に基いて立体物の絶対速度を推定し、その絶対速度が所定の閾値よりも高い場合に立体物が移動物であると判定し、その絶対速度が前記閾値よりも低い場合に立体物が固定物であると判定する。図１４の例において、運転支援ＥＣＵ１０は、物標情報に基いて、他車両１２０を移動物として認識している。
【０１４９】
なお、運転支援ＥＣＵ１０は、カメラセンサ１６ｂにより取得された画像データから立体物の特徴量を抽出し、その特徴量と、予めＲＯＭに記憶されている「特徴量と立体物の種類との関係」とから、その立体物が移動物であるか固定物であるかを判定してもよい。
【０１５０】
自車両１００の周囲に移動物が存在する場合、運転支援ＥＣＵ１０は、所定時間が経過するごとに、自車両１００と移動物との間の道路幅方向における距離ｄｘ１を演算する。本例においては、運転支援ＥＣＵ１０は、自車両１００と他車両１２０との間の道路幅方向における距離ｄｘ１を演算する。更に、運転支援ＥＣＵ１０は、所定の第３条件が成立するか否かを判定する。第３条件は、自車両１００と自車両１００の周辺に存在する立体物との位置関係に関する条件である。第３条件は、例えば、距離ｄｘ１が所定の第２距離閾値Ｄｔｈ２以下になったときに成立する。
【０１５１】
この例において、時間ｔ１にて、運転者が、操舵ハンドルＳＷを第１方向（左方向）に操作し始める。運転支援ＥＣＵ１０は、操舵ハンドルＳＷの第１方向への操作に応じて、その操作をアシストするように、正の値の基本アシストトルクＴｒｂを出力する。更に、この時点において、制御ゲインＫｒｃの値は「１」である。従って、アシストトルクＡｔｒは正の値（＝Ｋｒｃ＊Ｔｒｂ）となる。
【０１５２】
時間ｔ１以降において、運転者による操舵ハンドルＳＷの操作により自車両１００が目標走行ラインＴＬに対して左側に偏向する。従って、運転支援ＥＣＵ１０は、自車両１００の位置を目標走行ラインＴＬの位置に戻すように、負の値の目標操舵トルクＴｒ＊を出力する。この時点において、アシストトルクＡｔｒは正の値であり、目標操舵トルクＴｒ＊は負の値である。従って、アシストトルクＡｔｒと目標操舵トルクＴｒ＊との和である最終的なトルク制御量Ｔｒｃはゼロ付近の値となる。運転者は、自身の操舵ハンドルＳＷの操作がアシストされにくく感じるものの、操舵ハンドルＳＷの操作に対して大きな反力を感じない。
【０１５３】
時間ｔ２にて、距離ｄｘ１が第２距離閾値Ｄｔｈ２以下になる。従って、運転支援ＥＣＵ１０は、第３条件が成立したと判定する。この場合、運転支援ＥＣＵ１０は、所定の第４条件が成立するか否かを判定する。第４条件は、自車両１００が移動物（他車両１２０）に近づくように操舵されているときに成立する。
【０１５４】
具体的には、運転支援ＥＣＵ１０は、ルックアップテーブルＭａｐ３（ＣＬ、ＳＰＤ）を用いて基準操舵角θｒｅを演算する。そして、運転支援ＥＣＵ１０は、操舵角θが基準操舵角θｒｅに対して物体接近方向の角度であるか否かを判定する。ここで、物体接近方向とは、自車両１００が現在近づきつつある移動物（他車両１２０）側の方向である。運転支援ＥＣＵ１０は、操舵角θが基準操舵角θｒｅに対して物体接近方向の角度であると判定した場合、自車両１００が移動物（他車両１２０）に近づくように操舵されていると判定する（即ち、第４条件が成立したと判定する。）。
【０１５５】
本例においては、自車両１００は、直線の走行レーン６１０を走行している。よって、基準操舵角θｒｅは「０」である。更に、他車両１２０が自車両１００の左側に存在している。この場合、運転支援ＥＣＵ１０は、操舵角θが基準操舵角θｒｅ（＝０）に対して物体接近方向の角度（即ち、正の値）であるとき、自車両１００が移動物（他車両１２０）に近づくように操舵されていると判定する（即ち、第４条件が成立したと判定する。）。
【０１５６】
なお、他車両１２０が自車両１００の右側に存在している場合、操舵角θが基準操舵角θｒｅ（＝０）に対して物体接近方向の角度（即ち、負の値）であるとき、自車両１００が移動物（他車両１２０）に近づくように操舵されていると判定する（即ち、第４条件が成立したと判定する。）。
【０１５７】
上述の第３条件及び第４条件は、まとめて「物体接近条件」と称呼される場合がある。なお、物体接近条件は、運転者の操舵ハンドルＳＷの操作によって自車両１００が立体物に接近したと推定されるときに成立する条件であればよく、上記の例に限定されない。
【０１５８】
時間ｔ２にて、第４条件が成立する。従って、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「０」に設定する。即ち、運転支援ＥＣＵ１０は、第１補正制御を開始する。これにより、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）はゼロになる。即ち、最終的なトルク制御量Ｔｒｃにおいて、アシストトルクＡｔｒがゼロとなり、アシストトルクＡｔｒの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。操舵ハンドルＳＷには運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。第３装置は、この反力により、自車両１００が自車両１００の周囲に存在する立体物（この例では、他車両１２０）に接近していることを伝達することができる。これにより、運転者が操舵ハンドルＳＷを第１方向へ更に操作するのを防ぐことができる。その結果、自車両１００が他車両１２０に過度に接近するのを防ぐことができる。
【０１５９】
時間ｔ３にて、運転者は大きな反力を感じたので、運転者は、操舵ハンドルＳＷを第１方向へ操作するのを中止する。即ち、運転者は、操舵ハンドルＳＷに対して力を加えない状態となる。従って、目標操舵トルクＴｒ＊に基く車線維持制御により自車両１００が目標走行ラインＴＬの位置に徐々に戻される。
【０１６０】
この結果、時間ｔ４にて、操舵角θの値が正の値から負の値へと反転している。この時点にて、操舵角θが、基準操舵角θｒｅ（＝０）に対して物体から離れる方向の角度となる（即ち、物体接近方向の角度ではない。）。従って、運転支援ＥＣＵ１０は、第４条件が成立しない（自車両１００が他車両１２０に近づくように操舵されていない）と判定する。この場合、運転支援ＥＣＵ１０は、第１補正制御を中止する。即ち、運転支援ＥＣＵ１０は、制御ゲインＫｒｃの値を「１」に設定する。
【０１６１】
＜具体的な作動＞
第３装置は、第３装置の運転支援ＥＣＵ１０のＣＰＵ（単に「ＣＰＵ」と称呼する。）が「図１０に代わる図１５にフローチャートにより示したアシストトルク演算ルーチン」を実行する点において第１装置と相違している。
【０１６２】
従って、所定のタイミングになると、ＣＰＵは図１５のステップ１５００から処理を開始してステップ１５１０に進み、操舵トルクＴｒａ及び車速ＳＰＤをルックアップテーブルＭａｐ２（Ｔｒａ、ＳＰＤ）に適用することにより、基本アシストトルクＴｒｂを演算する。
【０１６３】
次に、ＣＰＵは、ステップ１５２０にて、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０１６４】
ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１５２０にて「Ｎｏ」と判定してステップ１５７０に進み、制御ゲインＫｒｃの値を「１」に設定する。次に、ＣＰＵは、ステップ１５８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１６５】
これに対し、ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ１５２０にて「Ｙｅｓ」と判定してステップ１５３０に進み、車両周辺情報に基いて、所定の車両周辺条件が成立するか否かを判定する。車両周辺条件は、自車両１００の周囲（自車両１００の右側及び／又は左側）に立体物が存在しているときに成立する。
【０１６６】
いま、車両周辺条件が成立していると仮定すると、ＣＰＵは、そのステップ１５３０にて「Ｙｅｓ」と判定してステップ１５４０に進み、所定の第３条件が成立するか否かを判定する。本例において、第３条件は、以下の条件７及び条件８の少なくとも一方が成立したときに成立する。
（条件７）自車両１００と移動物との間の道路幅方向における距離ｄｘ１が所定の第２距離閾値Ｄｔｈ２以下である。
（条件８）自車両１００と固定物との間の道路幅方向における距離ｄｘ２が「第２距離閾値Ｄｔｈ２よりも小さい所定の第３距離閾値Ｄｔｈ３」以下である。
なお、第２距離閾値Ｄｔｈ２と第３距離閾値Ｄｔｈ３は等しくてもよい。
【０１６７】
なお、第３条件は、自車両と立体物との衝突余裕時間ＴＴＣ（Ｔｉｍｅ  ｔｏ  Ｃｏｌｌｉｓｉｏｎ）を「立体物と自車両との距離を、その立体物の相対速度にて除する」ことにより求め、その衝突余裕時間ＴＴＣが所定の時間閾値以下であるときに成立する条件であってもよい。
【０１６８】
いま、第３条件が成立していると仮定すると、ＣＰＵは、そのステップ１５４０にて「Ｙｅｓ」と判定してステップ１５５０に進み、所定の第４条件が成立するか否かを判定する。具体的には、ＣＰＵは、ルックアップテーブルＭａｐ３（ＣＬ、ＳＰＤ）を用いて基準操舵角θｒｅを演算する。そして、ＣＰＵは、操舵角θが基準操舵角θｒｅに対して物体接近方向の角度であるか否かを判定する。ＣＰＵは、操舵角θが基準操舵角θｒｅに対して物体接近方向の角度であると判定した場合、自車両１００が立体物に近づくように操舵されていると判定する（即ち、第４条件が成立したと判定する。）。
【０１６９】
いま、第４条件が成立したと仮定する。この場合、ＣＰＵは、そのステップ１５５０にて「Ｙｅｓ」と判定してステップ１５６０に進み、制御ゲインＫｒｃの値を「０」に設定する。次に、ＣＰＵは、ステップ１５８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。この場合、アシストトルクＡｔｒはゼロになる。その後、ＣＰＵは、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１７０】
一方、ＣＰＵがステップ１５３０に進んだ時点にて、車両周辺条件が成立しない場合、ＣＰＵは、そのステップ１５３０にて「Ｎｏ」と判定してステップ１５７０に進む。更に、ＣＰＵがステップ１５４０に進んだ時点にて、第３条件が成立しない場合、ＣＰＵは、そのステップ１５４０にて「Ｎｏ」と判定してステップ１５７０に進む。加えて、ＣＰＵがステップ１５５０に進んだ時点にて、第４条件が成立しないと判定した場合、ＣＰＵは、そのステップ１５５０にて「Ｎｏ」と判定してステップ１５７０に進む。ＣＰＵは、ステップ１５７０に進むと、制御ゲインＫｒｃの値を「１」に設定する。次に、ＣＰＵは、ステップ１５８０に進み、アシストトルクＡｔｒ（＝Ｋｒｃ×Ｔｒｂ）を第２操舵制御量として演算する。その後、ＣＰＵは、ステップ１５９５に進んで本ルーチンを一旦終了する。
【０１７１】
以上のように、第３装置は、車線維持制御の実行中に物体接近条件が成立した（即ち、第３条件及び第４条件が共に成立した）と判定した場合、アシストトルクＡｔｒをゼロまで減少させる第１補正制御を実行する。従って、物体接近条件が成立した時点（時間ｔ２）の直後のトルク制御量Ｔｒｃは、物体接近条件が成立した時点（時間ｔ２）の直前のトルク制御量ＴｒｃからアシストトルクＡｔｒ分を排除した値になる。トルク制御量Ｔｒｃには、アシストトルクの作用方向と反対方向のトルク成分（目標操舵トルクＴｒ＊）のみが残る。操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。この反力により、第３装置は、運転者に対して、自車両１００が立体物に近づいたことを伝達することができる。
【０１７２】
更に、第３装置は、第１補正制御を開始した後に自車両１００が立体物に近づくように操舵されていない（即ち、第４条件が成立しない）と判定した場合、第１補正制御を中止する。第１補正制御を中止すると、トルク制御量ＴｒｃにアシストトルクＡｔｒが加えられるので、運転者の操舵ハンドルＳＷの操作がアシストされる。これにより、運転者が自車両１００を立体物から容易に遠ざけることができる。
【０１７３】
なお、第３装置は、上述の（ｂ）又は（ｃ）の状況において車線維持制御を実行している場合にも適用することができる。
【０１７４】
＜第４実施形態＞
次に、本発明の第４実施形態に係る運転支援装置（以下、「第４装置」と称呼される場合がある。）について説明する。第４装置は、自車両１００が白線に近づいたときに目標操舵トルクＴｒ＊を補正する点において、第１装置と相違している。以下、この相違点を中心に記述する。
【０１７５】
図１６に示すように、第４装置の運転支援ＥＣＵ１０は、機能的にみた場合、ＬＴＣ制御部５１０と、アシストトルク制御部５２０と、加算器５３０とを備える。図１６において、図５に示した構成要素と同じ構成要素には、図５のそのような構成要素と同じ付されている。従って、図５と同じ符号が付された構成要素については詳細な説明を省略する。
【０１７６】
ＬＴＣ制御部５１０は、目標操舵トルク演算部５１１と、ゲイン演算部５１２と、乗算器５１３とを備える。ゲイン演算部５１２は、車両周辺情報及び操舵角θ等に基いて、制御ゲインＫｒｄを演算する。乗算器５１３は、目標操舵トルク演算部５１１から出力された目標操舵トルクＴｒ＊と、ゲイン演算部５１２から出力された制御ゲインＫｒｄとを乗算した値（＝Ｋｒｄ×Ｔｒ＊）を求め、この値を最終的な目標操舵トルクＦｔｒとして加算器５３０に出力する。なお、目標操舵トルクＦｔｒは、「第１操舵制御量」の一例に相当する。
【０１７７】
基本アシストトルク演算部５２１は、基本アシストトルクＴｒｂを演算して基本アシストトルクＴｒｂを加算器５３０に出力する。
【０１７８】
加算器５３０は、ＬＴＣ制御部５１０から出力された目標操舵トルクＦｔｒと、アシストトルク制御部５２０から出力された基本アシストトルクＴｒｂとを加算した値であるトルク制御量Ｔｒｃ（＝Ｆｔｒ＋Ｔｒｂ）を求め、このトルク制御量Ｔｒｃを最終的なトルク制御量としてステアリングＥＣＵ４０に出力する。
【０１７９】
＜具体的な作動＞
第４装置は、第４装置の運転支援ＥＣＵ１０のＣＰＵ（単に「ＣＰＵ」と称呼する。）が「図９に代わる図１７にフローチャートにより示したＬＴＣ実行ルーチン」を実行する点において第１装置と相違している。
【０１８０】
図１７に示したルーチンは、図９に示したルーチンにステップ１７１０乃至ステップ１７６０が追加されたルーチンである。なお、図１７において、図９に示したステップと同一の処理を行うためのステップには、図９のそのようなステップに付された符号が付されている。従って、図９と同じ符号が付されたステップについては詳細な説明を省略する。
【０１８１】
従って、所定のタイミングになると、ＣＰＵは図１７のステップ１７００から処理を開始する。ＣＰＵがステップ９１０乃至ステップ９４０を経てステップ１７１０に進むと、所定の第１条件が成立するか否かを判定する。ＣＰＵは、図１０のルーチンのステップ１０３０の処理と同様の処理を行うことにより、第１条件が成立するか否かを判定する。
【０１８２】
いま、第１条件が成立すると仮定すると、ＣＰＵは、そのステップ１７１０にて「Ｙｅｓ」と判定してステップ１７２０に進み、所定の第２条件が成立するか否かを判定する。ＣＰＵは、図１０のルーチンのステップ１０４０の処理と同様の処理を行うことにより、第２条件が成立するか否かを判定する。
【０１８３】
いま、第２条件が成立すると仮定すると、ＣＰＵは、そのステップ１７２０にて「Ｙｅｓ」と判定してステップ１７３０に進み、意思判定条件が成立するか否かを判定する。ＣＰＵは、図１０のルーチンのステップ１０５０の処理と同様の処理を行うことにより、意思判定条件が成立するか否かを判定する。
【０１８４】
いま、意思判定条件が成立しないと仮定すると、ＣＰＵは、そのステップ１７３０にて「Ｎｏ」と判定してステップ１７４０に進み、制御ゲインＫｒｄの値を「１より大きい値（例えば、１．１）」に設定する。次に、ＣＰＵは、ステップ１７６０に進み、最終的な目標操舵トルクＦｔｒ（＝Ｋｒｄ×Ｔｒ＊）を第１操舵制御量として演算する。その後、ＣＰＵは、ステップ１７９５に進んで本ルーチンを一旦終了する。
【０１８５】
なお、ＣＰＵがステップ１７１０に進んだ時点にて、第１条件が成立しないと判定した場合、ＣＰＵは、そのステップ１７１０にて「Ｎｏ」と判定してステップ１７５０に進む。更に、ＣＰＵがステップ１７２０に進んだ時点にて、第２条件が成立しないと判定した場合、ＣＰＵは、そのステップ１７２０にて「Ｎｏ」と判定してステップ１７５０に進む。更に、ＣＰＵがステップ１７３０に進んだ時点にて、意思判定条件が成立している場合、ＣＰＵは、そのステップ１７３０にて「Ｙｅｓ」と判定してステップ１７５０に進む。ＣＰＵは、ステップ１７５０に進むと、制御ゲインＫｒｄの値を「１」に設定する。次に、ＣＰＵは、ステップ１０８０に進み、最終的な目標操舵トルクＦｔｒ（＝Ｋｒｄ×Ｔｒ＊）を第１操舵制御量として演算する。その後、ＣＰＵは、ステップ１７９５に進んで本ルーチンを一旦終了する。
【０１８６】
更に、ＣＰＵは、図１０のルーチンにおいてステップ１０１０のみを実行する点において第１装置と相違している。
【０１８７】
更に、ＣＰＵは、「図１１に代わる図１８にフローチャートにより示したモータ制御ルーチン」を実行する点において第１装置と相違している。従って、所定のタイミングになると、ＣＰＵは図１８のステップ１８００から処理を開始してステップ１８１０に進み、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０１８８】
ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ１８１０にて「Ｙｅｓ」と判定してステップ１８２０に進み、目標操舵トルクＦｔｒと基本アシストトルクＴｒｂとを加算した値（＝Ｆｔｒ＋Ｔｒｂ）を求め、この値を最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ１８４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。その後、ＣＰＵは、ステップ１８９５に進んで本ルーチンを一旦終了する。
【０１８９】
これに対して、ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ１８１０にて「Ｎｏ」と判定してステップ１８３０に進み、基本アシストトルクＴｒｂを最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ１８４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。その後、ＣＰＵは、ステップ１８９５に進んで本ルーチンを一旦終了する。
【０１９０】
以上のように、第４装置は、車線維持制御の実行中に白線接近条件が成立した（即ち、第１条件及び第２条件が共に成立した）と判定した場合、白線接近条件が成立した特定時点の直後の目標操舵トルクＦｔｒの大きさを、その特定時点の直前の目標操舵トルクＦｔｒの大きさに比べて大きくする制御を実行する。これは、「白線接近条件が成立した特定時点の直前のトルク制御量Ｔｒｃに対して、目標走行ラインＴＬに近づける方向のトルク成分を加えた」と言うこともできる。従って、この制御は、上述した「第１補正制御」の一例に相当する。
【０１９１】
従って、特定時点の直後において、操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じる。これにより、運転者は、操舵ハンドルＳＷの操作に対して反力を感じる。第４装置は、この反力により、運転者に対して、自車両１００が白線に近づいていることを伝達することができる。
【０１９２】
更に、第４装置は、第１補正制御を開始した後に自車両１００が白線に近づくように操舵されていない（即ち、第２条件が成立しない）と判定した場合、第１補正制御を中止する。例えば、運転者が自車両１００を目標走行ラインＴＬの位置に戻そうと操舵ハンドルＳＷを操作している状況において第１補正制御が継続された場合、自車両１００が目標走行ラインＴＬに対して急激に戻され、これにより、自車両１００が目標走行ラインＴＬを通り過ぎる（即ち、オーバーシュートする）虞がある。これに対して、第４装置は、自車両１００が白線に近づくように操舵されていないと判定した場合に第１補正制御を中止する。従って、自車両１００が徐々に目標走行ラインＴＬに向けて戻される。よって、自車両１００が目標走行ラインＴＬを通り過ぎる可能性を低減することができる。
【０１９３】
＜第５実施形態＞
次に、本発明の第５実施形態に係る運転支援装置（以下、「第５装置」と称呼される場合がある。）について説明する。第５装置は、目標操舵トルクＴｒ＊及びアシストトルクＡｔｒとは別に、自車両１００を目標走行ラインＴＬに近づける方向のトルク成分（以降で説明する補正トルクＭｔｒ）を演算して当該補正トルクをトルク制御量Ｔｒｃに加える点において、第１装置と相違している。以下、この相違点を中心に記述する。
【０１９４】
図１９に示すように、第５装置の運転支援ＥＣＵ１０は、機能的にみた場合、ＬＴＣ制御部５１０と、アシストトルク制御部５２０と、加算器５３０と、補正トルク演算部１９１０とを備える。図１９において、図５に示した構成要素と同じ構成要素には、図５のそのような構成要素と同じ付されている。従って、図５と同じ符号が付された構成要素については詳細な説明を省略する。
【０１９５】
補正トルク演算部１９１０は、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ未満である場合（即ち、ｄｗ１＜ｄｗ２）、第１距離ｄｗ１を図２０（ａ）に示すルックアップテーブルＭａｐ４（ｄｗ１）に適用することにより、補正トルクＭｔｒを算出する。ルックアップテーブルＭａｐ４では、第１距離ｄｗ１が小さいほど、負の値である補正トルクＭｔｒの大きさが大きくなる。更に、第１距離ｄｗ１が所定の値（即ち、第１距離閾値Ｄｔｈ１）よりも大きくなると、補正トルクＭｔｒはゼロになる。なお、ルックアップテーブルＭａｐ４はＲＯＭ１０ｃに記憶されている。
【０１９６】
補正トルク演算部１９１０は、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ以上である場合（即ち、ｄｗ１≧ｄｗ２）、第２距離ｄｗ２を図２０（ｂ）に示すルックアップテーブルＭａｐ５（ｄｗ２）に適用することにより、補正トルクＭｔｒを算出する。ルックアップテーブルＭａｐ５では、第２距離ｄｗ２が小さいほど、正の値である補正トルクＭｔｒの大きさが大きくなる。更に、第２距離ｄｗ２が所定の値（即ち、第１距離閾値Ｄｔｈ１）よりも大きくなると、補正トルクＭｔｒはゼロになる。なお、ルックアップテーブルＭａｐ５はＲＯＭ１０ｃに記憶されている。補正トルク演算部１９１０は、補正トルクＭｔｒを加算器５３０に出力する。
【０１９７】
加算器５３０は、ＬＴＣ制御部５１０から出力された目標操舵トルクＴｒ＊と、アシストトルク制御部５２０から出力された基本アシストトルクＴｒｂと、補正トルク演算部１９１０から出力された補正トルクＭｔｒとを加算した値（＝Ｔｒ＊＋Ｔｒｂ＋Ｍｔｒ）を求める。加算器５３０は、この値を最終的なトルク制御量ＴｒｃとしてステアリングＥＣＵ４０に出力する。ステアリングＥＣＵ４０は、トルク制御量Ｔｒｃに応じてモータ６１に流す電流を制御する。
【０１９８】
＜具体的な作動＞
第５装置は、第５装置の運転支援ＥＣＵ１０のＣＰＵ（単に「ＣＰＵ」と称呼する。）が「図１０に代わる図２１にフローチャートにより示したアシストトルク／補正トルク演算ルーチン」を実行する点において第１装置と相違している。
【０１９９】
従って、所定のタイミングになると、ＣＰＵは図２１のステップ２１００から処理を開始してステップ２１１０に進み、操舵トルクＴｒａ及び車速ＳＰＤをルックアップテーブルＭａｐ２（Ｔｒａ、ＳＰＤ）に適用することにより、基本アシストトルクＴｒｂを演算する。
【０２００】
次に、ＣＰＵは、ステップ２１２０にて、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０２０１】
ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ２１２０にて「Ｎｏ」と判定してステップ２１６０に進み、補正トルクＭｔｒの値を「０」に設定する。その後、ＣＰＵは、ステップ２１９５に進んで本ルーチンを一旦終了する。
【０２０２】
これに対し、ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ２１２０にて「Ｙｅｓ」と判定してステップ２１３０に進み、第２条件が成立するか否かを判定する。ＣＰＵは、図１０のルーチンのステップ１０４０の処理と同様の処理を行うことにより、第２条件が成立するか否かを判定する。
【０２０３】
いま、第２条件が成立すると仮定すると、ＣＰＵは、そのステップ２１３０にて「Ｙｅｓ」と判定してステップ２１４０に進み、意思判定条件が成立するか否かを判定する。ＣＰＵは、図１０のルーチンのステップ１０５０の処理と同様の処理を行うことにより、意思判定条件が成立するか否かを判定する。
【０２０４】
いま、意思判定条件が成立しないと仮定すると、ＣＰＵは、そのステップ２１４０にて「Ｎｏ」と判定してステップ２１５０に進み、補正トルクＭｔｒを演算する。具体的には、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ未満である場合、ＣＰＵは、第１距離ｄｗ１をルックアップテーブルＭａｐ４（ｄｗ１）に適用することにより、補正トルクＭｔｒを演算する。一方、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ以上である場合、ＣＰＵは、第２距離ｄｗ２をルックアップテーブルＭａｐ５（ｄｗ２）に適用することにより、補正トルクＭｔｒを演算する。その後、ＣＰＵは、ステップ２１９５に進んで本ルーチンを一旦終了する。
【０２０５】
なお、ＣＰＵがステップ２１３０に進んだ時点にて、第２条件が成立しない場合、ＣＰＵは、そのステップ２１３０にて「Ｎｏ」と判定してステップ２１６０に進む。更に、ＣＰＵがステップ２１４０に進んだ時点にて、意思判定条件が成立している場合、ＣＰＵは、そのステップ２１４０にて「Ｙｅｓ」と判定してステップ２１６０に進む。ＣＰＵは、ステップ２１６０に進むと、補正トルクＭｔｒの値を「０」に設定する。その後、ＣＰＵは、ステップ２１９５に進んで本ルーチンを一旦終了する。
【０２０６】
更に、ＣＰＵは、「図１１に代わる図２２にフローチャートにより示したモータ制御ルーチン」を実行する点において第１装置と相違している。従って、所定のタイミングになると、ＣＰＵは図２２のステップ２２００から処理を開始してステップ２２１０に進み、ＬＴＣ実行フラグＦ１の値が「１」であるか否かを判定する。
【０２０７】
ＬＴＣ実行フラグＦ１の値が「１」である場合、ＣＰＵは、そのステップ２２１０にて「Ｙｅｓ」と判定してステップ２２２０に進み、目標操舵トルクＴｒ＊と基本アシストトルクＴｒｂと補正トルクＭｔｒとを加算した値を求め、この値を最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ２２４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。その後、ＣＰＵは、ステップ２２９５に進んで本ルーチンを一旦終了する。
【０２０８】
これに対して、ＬＴＣ実行フラグＦ１の値が「１」でない場合、ＣＰＵは、そのステップ２２１０にて「Ｎｏ」と判定してステップ２２３０に進み、基本アシストトルクＴｒｂを最終的なトルク制御量Ｔｒｃとして設定する。次に、ＣＰＵは、ステップ２２４０にて、トルク制御量Ｔｒｃに基いてモータ６１を制御する。その後、ＣＰＵは、ステップ２２９５に進んで本ルーチンを一旦終了する。
【０２０９】
以上のように、第５装置は、車線維持制御の実行中において、自車両１００が左右の白線の何れかに近づくように操舵された場合、自車両１００と白線との距離に応じて補正トルク（自車両１００を目標走行ラインＴＬに近づける方向のトルク成分）Ｍｔｒを演算し、当該補正トルクＭｔｒをトルク制御量Ｔｒｃに加える。従って、「自車両１００が白線に近づいたある特定時点（第１距離ｄｗ１及び第２距離ｄｗ２のうち小さい方の距離が第１距離閾値Ｄｔｈ１以下になる時点）の直後のトルク制御量Ｔｒｃ」は、その特定時点の直前のトルク制御量Ｔｒｃに対して、自車両１００を目標走行ラインＴＬに近づける方向のトルク成分（補正トルクＭｔｒ）を加えた値になる。従って、この制御は、上述した「第１補正制御」の一例に相当する。これにより、特定時点の直後において、操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じる。従って、運転者は、操舵ハンドルＳＷの操作に対して反力を感じる。第５装置は、この反力により、運転者に対して自車両１００が白線に近づいていることを伝達できる。
【０２１０】
更に、第５装置は、自車両１００と白線との距離が小さくなるほど、補正トルクＭｔｒを増加させる。自車両１００と白線との間の距離が小さくなると、操舵ハンドルＳＷには、運転者の操作に対して反対方向（第２方向）の比較的大きなトルクが生じるので、運転者は大きな反力を感じる。第５装置は、この反力の大きさの変化によって、運転者に対して白線に対する自車両１００の接近度合いを知らせることができる。
【０２１１】
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。
【０２１２】
（変形例１）
白線接近条件は、以下の条件（９）及び（１０）の何れかが成立したときに成立する条件であってもよい。
（条件９）：自車両１００が目標走行ラインＴＬに対して左側に位置し、且つ、自車両１００が左白線ＬＬに対して接近する速度（道路幅方向における相対速度）Ｖａ１が所定の相対速度閾値Ｖｔｈ以上である。
（条件１０）：自車両１００が目標走行ラインＴＬに対して右側に位置し、且つ、自車両１００が右白線ＲＬに対して接近する速度（道路幅方向における相対速度）Ｖａ２が所定の相対速度閾値Ｖｔｈ以上である。
【０２１３】
（変形例２）
物体接近条件は、以下の条件（１１）乃至（１４）の少なくとも１つが成立したときに成立する条件であってもよい。
（条件１１）自車両１００の左側に移動物が存在し且つ自車両１００が目標走行ラインＴＬに対して左側に位置する状況において、自車両１００が移動物に対して接近する速度（道路幅方向における相対速度）Ｖｂ１が所定の第１相対速度閾値Ｖｒｈ１以上である。
（条件１２）自車両１００の右側に移動物が存在し且つ自車両１００が目標走行ラインＴＬに対して右側に位置する状況において、自車両１００が移動物に対して接近する速度（道路幅方向における相対速度）Ｖｂ１が所定の第１相対速度閾値Ｖｒｈ１以上である。
（条件１３）自車両１００の左側に固定物が存在し且つ自車両１００が目標走行ラインＴＬに対して左側に位置する状況において、自車両１００が固定物に対して接近する速度（道路幅方向における相対速度）Ｖｂ２が所定の第２相対速度閾値Ｖｒｈ２以上である。
（条件１４）自車両１００の右側に固定物が存在し且つ自車両１００が目標走行ラインＴＬに対して右側に位置する状況において、自車両１００が固定物に対して接近する速度（道路幅方向における相対速度）Ｖｂ２が所定の第２相対速度閾値Ｖｒｈ２以上である。
なお、第１相対速度閾値Ｖｒｈ１と第２相対速度閾値Ｖｒｈ２は等しくてもよいし、異なっていてもよい。
【０２１４】
（変形例３）
運転支援ＥＣＵ１０は、第１距離ｄｗ１又は第２距離ｄｗ２の大きさに応じて制御ゲインＫｒｃの値を変化させてもよい。例えば、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ未満である場合（ｄｗ１＜ｄｗ２）、ＣＰＵは、第１距離ｄｗ１を図２３（ａ）に示すルックアップテーブルＭａｐ６に適用することにより、制御ゲインＫｒｃを算出してもよい。更に、第１距離ｄｗ１と第２距離ｄｗ２との差分（ｄｗ１−ｄｗ２）がゼロ以上である場合（ｄｗ１≧ｄｗ２）、ＣＰＵは、第２距離ｄｗ２をルックアップテーブルＭａｐ６に適用することにより、制御ゲインＫｒｃを算出してもよい。ルックアップテーブルＭａｐ６では、第１距離ｄｗ１又は第２距離ｄｗ２が所定の閾値Ｄｗｔｈ（例えば、＝第１距離閾値Ｄｔｈ１）より小さくなると（即ち、所定の接近条件が成立すると）、制御ゲインＫｒｃの値が「１より小さい値」になる。そして、第１距離ｄｗ１又は第２距離ｄｗ２が小さくなるほど、制御ゲインＫｒｃの値が小さくなる。
【０２１５】
更に、運転支援ＥＣＵ１０は、自車両１００の白線への道路幅方向における接近速度（相対速度（Ｖａ１、Ｖａ２））が所定の第１接近速度以下である場合、図２３（ａ）に示すルックアップテーブルＭａｐ６を用いて制御ゲインＫｒｃを算出してもよい。一方、接近速度（相対速度（Ｖａ１、Ｖａ２））が所定の第１接近速度よりも大きい場合、運転支援ＥＣＵ１０は、図２３（ｂ）に示すルックアップテーブルＭａｐ７を用いて制御ゲインＫｒｃを算出してもよい。ルックアップテーブルＭａｐ７は、ルックアップテーブルＭａｐ６をｘ軸のプラス方向に平行移動したルックアップテーブルである。なお、ルックアップテーブルＭａｐ７はＲＯＭ１０ｃに記憶されている。この構成によれば、相対速度（Ｖａ１、Ｖａ２）が大きい値であることから自車両１００が白線に比較的早く近づきそうな場合、より早い段階で運転者に反力を与えることができる。
【０２１６】
更に、運転支援ＥＣＵ１０は、自車両１００の白線への道路幅方向における接近速度（相対速度（Ｖａ１、Ｖａ２））が所定の第２接近速度以上である場合、図２３（ａ）に示すルックアップテーブルＭａｐ６を用いて制御ゲインＫｒｃを算出してもよい。一方、接近速度（相対速度（Ｖａ１、Ｖａ２））が所定の第２接近速度よりも小さい場合、運転支援ＥＣＵ１０は、図２３（ｃ）に示すルックアップテーブルＭａｐ８を用いて制御ゲインＫｒｃを算出してもよい。第２接近速度は、第１接近速度よりも小さい速度である。ルックアップテーブルＭａｐ８は、ルックアップテーブルＭａｐ６をｘ軸のマイナス方向に平行移動したルックアップテーブルである。なお、ルックアップテーブルＭａｐ８はＲＯＭ１０ｃに記憶されている。この構成によれば、相対速度（Ｖａ１、Ｖａ２）が比較的小さい値であることから自車両１００が白線に近づく可能性が低い場合、運転者に反力を与えるタイミングを遅らせることができる。
【０２１７】
なお、上述したルックアップテーブル（Ｍａｐ６、Ｍａｐ７又はＭａｐ８）は、第３装置に適用されてもよい。第３装置の運転支援ＥＣＵ１０は、自車両１００と移動物との間の道路幅方向における距離ｄｘ１又は自車両１００と固定物との間の道路幅方向における距離ｄｘ２を上述したルックアップテーブル（Ｍａｐ６、Ｍａｐ７又はＭａｐ８）に適用することにより、制御ゲインＫｒｃを算出してもよい。
【０２１８】
（変形例４）
運転支援ＥＣＵ１０は、上記の条件９又は条件１０が成立するとき、自車両１００の白線に対する道路幅方向における接近速度（即ち、相対速度（Ｖａ１、Ｖａ２））を図２４に示すルックアップテーブルＭａｐ９に適用することにより、制御ゲインＫｒｃを算出してもよい。
同様に、運転支援ＥＣＵ１０は、上記の条件１１乃至条件１４の少なくとも１つが成立するとき、自車両１００の立体物に対する道路幅方向における接近速度（即ち、相対速度（Ｖｂ１、Ｖｂ２））を図２４に示すルックアップテーブルＭａｐ９に適用することにより、制御ゲインＫｒｃを算出してもよい。
なお、ルックアップテーブルＭａｐ９における閾値Ｖｓｔｈは、相対速度閾値Ｖｔｈ、第１相対速度閾値Ｖｒｈ１及び第２相対速度閾値Ｖｒｈ２の何れかと等しい値に設定されてもよい。
【０２１９】
ルックアップテーブルＭａｐ９では、相対速度（Ｖａ１、Ｖａ２、Ｖｂ１、Ｖｂ２）が所定の閾値Ｖｓｔｈより大きくなると（即ち、所定の接近条件が成立すると）、制御ゲインＫｒｃの値が「１より小さい値」になる。そして、相対速度が大きくなるほど、制御ゲインＫｒｃの値が小さくなる。相対速度が所定の値Ｖｘｔｈよりも大きくなると、制御ゲインＫｒｃはゼロとなる。なお、ルックアップテーブルＭａｐ９はＲＯＭ１０ｃに記憶されている。
【０２２０】
（変形例５）
運転支援ＥＣＵ１０は、上述のように求められる制御ゲインＫｒｃに対して「第１ゲインＫｍ１」を乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。第１ゲインＫｍ１は、０よりも大きく且つ１以下の値である。第１ゲインＫｍ１は、車速ＳＰＤが高いほど小さくなる。例えば、運転支援ＥＣＵ１０は、車速ＳＰＤが所定の第１速度閾値より高いとき、第１ゲインＫｍ１を「１より小さい値」に設定し、当該第１ゲインＫｍ１を上述の制御ゲインＫｒｃに対して乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。更に、運転支援ＥＣＵ１０は、車速ＳＰＤが所定の第１速度閾値以下であるとき、第１ゲインＫｍ１を「１」に設定し、当該第１ゲインＫｍ１を上述の制御ゲインＫｒｃに対して乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。
【０２２１】
（変形例６）
運転支援ＥＣＵ１０は、上述のように求められる制御ゲインＫｒｃに対して「第２ゲインＫｍ２」を乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。第２ゲインＫｍ２は、０よりも大きく且つ１以下の値である。第２ゲインＫｍ２は、走行レーンの曲率が大きいほど小さくなる。例えば、運転支援ＥＣＵ１０は、走行レーンの曲率が所定の第１曲率閾値より大きいとき、第２ゲインＫｍ２を「１より小さい値」に設定し、当該第２ゲインＫｍ２を上述の制御ゲインＫｒｃに対して乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。更に、運転支援ＥＣＵ１０は、走行レーンの曲率が所定の第１曲率閾値以下であるとき、第２ゲインＫｍ２を「１」に設定し、当該第２ゲインＫｍ２を上述の制御ゲインＫｒｃに対して乗算した値を、最終的な制御ゲインＫｒｃとして採用してもよい。
【０２２２】
（変形例７）
ＣＰＵは、図１０及び図１３のルーチンのステップ１０４０にて、操舵トルクＴｒａの値を用いて、第２条件が成立するか否か（即ち、自車両１００が白線に近づくように操舵されているか否か）を判定してもよい。ＣＰＵは、操舵トルクＴｒａが基準操舵トルク（例えば、目標操舵トルクＴｒ＊）に対して車線逸脱方向のトルクであるか否かを判定する。図６の例においては、自車両１００が直線の走行レーン６１０を走行しているので、基準操舵トルク（目標操舵トルクＴｒ＊）が「０」であると仮定する。従って、第１距離ｄｗ１が所定の第１距離閾値Ｄｔｈ１以下である場合、ＣＰＵは、操舵トルクＴｒａが正の値であるとき、操舵トルクＴｒａが車線逸脱方向のトルクであると判定する。この場合、ＣＰＵは、第２条件が成立したと判定する。
【０２２３】
（変形例８）
図１３のルーチンのステップ１３１０にて、基準操舵トルクＴｒｅは、「０」に設定されてもよい。別の例として、基準操舵トルクＴｒｅは、目標操舵トルクＴｒ＊と同じ大きさに設定されてもよい。
【０２２４】
更に別の例によれば、ＣＰＵは、図１３のルーチンのステップ１３１０にて、操舵ハンドルＳＷに組み込まれたタッチセンサからの信号及び／又は車室内に設置されたカメラセンサからの画像データに基いて、運転者が操舵ハンドルＳＷを操作しているか否かを判定してもよい。
【０２２５】
（変形例９）
第３装置における構成は、他の装置（第２装置、第４装置及び第５装置）に適用されてもよい。即ち、他の装置（第２装置、第４装置及び第５装置）において、自車両１００と立体物との間の距離に応じて、自車両１００を目標走行ラインＴＬに近づける方向のトルク成分がトルク制御量Ｔｒｃに加えられてもよい。
【０２２６】
（変形例１０）
上述の第１装置乃至第５装置では、車線維持制御を追従車間距離制御（ＡＣＣ）の実行中にのみ実行するようになっているが、追従車間距離制御の実行中でなくても車線維持制御を実行してもよい。
【符号の説明】
【０２２７】
１０…運転支援ＥＣＵ、１１…アクセルペダル操作量センサ、１２…ブレーキペダル操作量センサ、１３…操舵角センサ、１４…操舵トルクセンサ、１５…車速センサ、１６…周囲センサ、１７…操作スイッチ、１８…ヨーレートセンサ、２０…エンジンＥＣＵ、３０…ブレーキＥＣＵ、４０…ステアリングＥＣＵ、５０…メータＥＣＵ、６０…ステアリング機構。
【図１】
2020011606.tif 000003
【図２】
2020011606.tif 000004
【図３】
2020011606.tif 000005
【図４】
2020011606.tif 000006
【図５】
2020011606.tif 000007
【図６】
2020011606.tif 000008
【図７】
2020011606.tif 000009
【図８】
2020011606.tif 000010
【図９】
2020011606.tif 000011
【図１０】
2020011606.tif 000012
【図１１】
2020011606.tif 000013
【図１２】
2020011606.tif 000014
【図１３】
2020011606.tif 000015
【図１４】
2020011606.tif 000016
【図１５】
2020011606.tif 000017
【図１６】
2020011606.tif 000018
【図１７】
2020011606.tif 000019
【図１８】
2020011606.tif 000020
【図１９】
2020011606.tif 000021
【図２０】
2020011606.tif 000022
【図２１】
2020011606.tif 000023
【図２２】
2020011606.tif 000024
【図２３】
2020011606.tif 000025
【図２４】
2020011606.tif 000026