《第1の実施の形態》
本発明の第1の実施の形態による車両用運転操作補助装置について、図面を用いて説明する。図1は、本発明の第1の実施の形態による車両用運転操作補助装置1の構成を示すシステム図である。
まず、車両用運転操作補助装置1の構成を説明する。車両用運転操作補助装置1は、レーダ装置10,車速センサ20,舵角センサ30,障害物検知装置40,コントローラ50,駆動力制御装置60,アクセルペダル反力発生装置70,制動力制御装置90および警報装置100等を備えている。
レーダ装置10は、例えば車両の前方グリル部もしくはバンパ部等に取り付けられたレーザレーダであり、水平方向に赤外線レーザ光を照射して車両前方領域を走査し、自車両前方の障害物を検出する。図2に、レーダ装置10による障害物検出の原理を説明する図を示す。図2に示すように、レーダ装置10はレーザ光を出力する発光部10aと、自車両の前方にある反射物(通常、前方車の後端)で反射された反射光を検出する受光部10bとを備えている。発光部10aはスキャニング機構が組み合わされており、図2に矢印で示すように左右方向に振れるように構成されている。発光部10aは角度を変化させながら所定角度範囲内で順次発光する。レーダ装置10は、発光部10aによるレーザ光の出射から受光部10bにおける反射波の受光までの時間差に基づいて自車両から障害物までの距離を計測する。
レーダ装置10は、スキャニング機構により自車両の前方領域をスキャニングしながら、各スキャニング位置またはスキャニング角度について反射光を受光した場合に障害物までの距離を算出する。さらに、レーダ装置10は、障害物を検出したときのスキャニング角とその障害物までの距離とに基づいて、自車両に対する障害物の左右方向の位置も算出する。すなわち、レーダ装置10は、障害物の有無とともに自車両に対する障害物の相対的な位置を検出する。
図3に、レーダ装置10による障害物の検出結果の一例を示す。各スキャニング角で自車両に対して障害物の相対的な位置を特定することにより、図3に示すようにスキャニング範囲内で検出できる複数の物体についての平面的な存在状態図を得ることができる。
車速センサ20は、車輪の回転数や変速機の出力側の回転数を計測することにより自車両の車速を検出する。
障害物検知装置40は、レーダ装置10および車速センサ20の検出結果に基づいて前方障害物に関する情報を取得する。具体的には、障害物検知装置40は、レーダ装置10からスキャニング周期毎またはスキャニング角ごとに出力される検出結果に基づいて、検出した物体の動きを判別するとともに、物体間の近接状態や動きの類似性等に基づいて、検出した物体が同一物体であるか異なる物体であるかを判別する。
そして、障害物検知装置40は、レーダ装置10と車速センサ20からの信号に基づいて、自車両周囲の障害物情報、すなわち自車両と前方障害物との車間距離と相対速度、および自車両に対する前方障害物の左右方向距離、および前方障害物の幅を認識する。なお、障害物検知装置40は、複数の前方障害物を検知した場合は各障害物についての情報を取得する。障害物検知装置40は、取得した障害物情報をコントローラ50へ出力する。
舵角センサ30は、ステアリングコラムもしくはステアリングホイール(不図示)付近に取り付けられた角度センサ等であり、ステアリングシャフトの回転を操舵角として検出し、コントローラ50へ出力する。
アクセルペダル61には、アクセルペダル61の踏み込み量(操作量)を検出するアクセルペダルストロークセンサ62が設けられている。アクセルペダルストロークセンサ62によって検出されたアクセルペダル操作量はコントローラ50および駆動力制御装置60に出力される。ブレーキペダル91には、その踏み込み量(操作量)を検出するブレーキペダルストロークセンサ92が設けられている。ブレーキペダルストロークセンサ92によって検出されたブレーキペダル操作量は、制動力制御装置90に出力される。
コントローラ50は、CPUと、ROMおよびRAM等のCPU周辺部品とから構成され、車両用運転操作補助装置1全体の制御を行う。コントローラ50は、車速センサ20から入力される自車速、および障害物検知装置40から入力される障害物情報から、自車両の走行状況を認識する。コントローラ50は、走行状況に基づいて前方障害物に対する自車両の接近度合を表す物理量であるリスクポテンシャルを算出する。
コントローラ50は、障害物に対するリスクポテンシャルに基づいて、自車両に発生する制駆動力を制御するとともに、運転者が運転操作のために操作する運転操作機器に発生する操作反力を制御する。ここで、運転操作機器は、例えば運転者が自車両を加速したり減速したりするときに操作するアクセルペダル61である。さらにコントローラ50は、アクセルペダル反力発生装置70が故障しているか否かを判定し、故障している場合にはエンジントルク特性を補正する。コントローラ50における各制御については後述する。
駆動力制御装置60は、アクセルペダル61の操作状態に応じた駆動力を発生するようにエンジン(不図示)を制御するとともに、外部からの指令に応じて、発生させる駆動力を変化させる。図4に、駆動力制御装置60の構成を表すブロック図を示す。図5に、アクセルペダル操作量SAとドライバ要求駆動力Fdaとの関係を定めた特性マップを示す。駆動力制御装置60は、図4に示すようにドライバ要求駆動力算出部60aと、加算器60bと、エンジンコントローラ60cとを備えている。
ドライバ要求駆動力算出部60aは、図5に示すようなマップを用いて、アクセルペダル61が踏み込まれたときの操作量(アクセルペダル操作量)SAに応じてドライバが要求する駆動力(ドライバ要求駆動力)Fdaを算出する。加算器60bは、算出されたドライバ要求駆動力Fdaに、後述する駆動力補正量ΔDaを加えて目標駆動力を算出し、エンジンコントローラ60cへ出力する。エンジンコントローラ60cは、目標駆動力に従ってエンジンへの制御指令値を算出する。
制動力制御装置90は、ブレーキペダル91の操作状態に応じた制動力を発生するようにブレーキ液圧を制御するとともに、外部からの指令に応じて、発生させるブレーキ液圧を変化させる。図6に、制動力制御装置90の構成を表すブロック図を示す。図7に、ブレーキペダル操作量SBとドライバ要求制動力Fdbとの関係を定めた特性マップを示す。図6に示すように、制動力制御装置90は、ドライバ要求制動力算出部90aと、加算器90bと、ブレーキ液圧コントローラ90cとを備えている。
ドライバ要求制動力算出部90aは、図7に示すようなマップを用いて、ブレーキペダル91の踏み込み量(ブレーキペダル操作量)SBに応じてドライバが要求する制動力(ドライバ要求制動力)Fdbを算出する。加算器90bは、算出されたドライバ要求制動力Fdbに、後述する制動力補正値ΔDbを加えて目標制動力を算出し、ブレーキ液圧コントローラ90cに出力する。ブレーキ液圧コントローラ90cは、目標制動力に従ってブレーキ液圧指令値を算出する。ブレーキ液圧コントローラ90cからの指令に応じて各車輪に設けられたブレーキ装置95が作動する。
アクセルペダル反力発生装置70は、図8に示すようにアクセルペダル61のリンク機構に組み込まれた反力発生用アクチュエータであるサーボモータ70a、サーボモータ用駆動回路70b、駆動回路70bの温度を検出する温度センサ70c、およびアクセルペダル反力発生装置70に流れる電流を検出する電流センサ70d等を備えている。アクセルペダル反力発生装置70は、コントローラ50からの指令に応じた電流を駆動回路70bから出力し、サーボモータ70aで発生させるトルクを制御する。これにより、運転者がアクセルペダル61を操作する際に発生する操作反力を任意に制御することができる。
アクセルペダル反力発生装置70による反力制御を行わない場合は、例えばアクセルペダル操作量SAに応じた引っ張りバネ(不図示)のバネ力が反力として作用する。さらに、反力制御を行わない場合はサーボモータ70aの信号線を接地させることによりサーボモータ70aに誘導起電力が発生する。この誘導起電力はペダル操作を妨げるような粘性力として作用する。その結果、アクセルペダル61にはバネ反力に粘性力を加えた力が反力として作用する。バネ反力に粘性力を加えた反力はヒステリシスを有する特性であり、これを反力制御を行わない場合の通常の反力特性とする。
警報装置100は、例えばインストルメントパネルに設置された警報ランプと警報ブザーとを備え、アクセルペダル反力発生装置70の故障が検出された場合に、コントローラ50からの指令に応じて警報を出力する。
以下に、本発明の第1の実施の形態による車両用運転操作補助装置1の動作を説明する。まず、動作の概要を説明する。
車両用運転操作補助装置1のコントローラ50は、障害物検知装置40で検出した障害物情報に基づいて各障害物に対する自車両のリスクポテンシャルを算出する。リスクポテンシャル(Risk Potential)は、「潜在的なリスク/危急」を意味し、ここでは特に、自車両と自車両周囲に存在する障害物とが接近していくことにより増大するリスクの大きさを表す。したがって、リスクポテンシャルは、自車両と障害物とがどれほど近づいているか、すなわち自車両と障害物とが近づいている程度(接近度合)を表す物理量であるといえる。
コントローラ50は、算出したリスクポテンシャルを、自車両に発生する制駆動力および運転者が自車両を運転する際に操作する運転操作機器、具体的にはアクセルペダル61から発生する操作反力として運転者に伝達する。
ここで、アクセルペダル61にリスクポテンシャルに応じた反力を発生させるアクセルペダル反力発生装置70が故障すると、アクセルペダル61に操作反力を付加させることができなくなる。リスクポテンシャルが付加されている状態で故障が発生すると、アクセルペダル61の付加反力がなくなり、運転者に違和感を与える可能性がある。
第1の実施の形態では、上述したようにサーボモータ70aを用いてアクセルペダル反力発生装置70を構成しており、故障発生時にはサーボモータ70aの信号線を接地させることでアクセルペダル61の操作に応じてサーボモータ70aの誘導起電力による反力を得るように構成している。したがって、アクセルペダル反力発生装置70が故障した場合にはリスクポテンシャルに応じた操作反力を付加することは出来なくなるが、運転者はアクセルペダル操作により自車両の加速や減速等の運転操作を行うことができる。ただし、故障によって付加反力がなくなると、アクセルペダル反力の変動に起因してエンジントルクが変動し、運転者に違和感を与えてしまう可能性がある。
そこで、第1の実施の形態では、アクセルペダル反力発生装置70の故障時に、エンジントルクの変動による違和感を運転者に与えないようにエンジントルク特性を補正する。
第1の実施の形態による車両用運転操作補助装置1の動作を、図9を用いて詳細に説明する。図9は、第1の実施の形態のコントローラ50における運転操作補助制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
まず、ステップS110で、車速センサ20によって検出される自車速Vhと、舵角センサ30によって検出される自車両の操舵角δのデータを読み込む。ステップS120では、アクセルペダルストロークセンサ62によって検出されるアクセルペダル操作量SAを読み込む。
ステップS130では、アクセルペダル反力発生装置70が故障しているか否かの判定を行う。図8に示すように、コントローラ50は、温度センサ70cおよび電流センサ70dから得られる検出値をAD変換器50bでAD変換することにより、アクセルペダル反力発生装置70の作動状態を検出する。コントローラ50は、温度センサ70cおよび電流センサ70dの検出値、およびCPU50aからアクセルペダル反力発生装置70へ出力する反力指令値に基づいて、アクセルペダル反力発生装置70が故障しているか否かを判定する。
ステップS130における故障検知判断処理を、図10のフローチャートを用いて説明する。ステップS1301では、アクセルペダル反力発生装置70の温度センサ70cの検出値および電流センサ70dの検出値をそれぞれ取得する。コントローラ50は、AD変換器50bでこれらの検出値に適切なAD変換処理を行う。
ステップS1302では、ステップ1301で取得した駆動回路70bの温度Cをしきい値T1と比較する。しきい値T1は、回路設計上、正常な動作が保証されなくなる温度値として予め設定しておく。温度C>T1の場合は、ステップS1303へ進み、駆動回路70bが高温で異常ありと判断し、故障フラグF_FAILに1をセットする。つづくステップS1304では、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。
温度C≦T1の場合はステップS1305へ進み、ステップ1301で取得した電流値Iをしきい値T2と比較する。しきい値T2は、回路設計上、アクチュエータ、すなわちサーボモータ70aの正常動作時には流れ得ない大きな電流値として予め設定しておく。電流値I>T2の場合は、ステップS1306へ進み、過剰に大きな電流が流れており異常ありと判断し、故障フラグF_FAILに1をセットする。つづくステップS1307では、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。
電流値I≦T2の場合はステップS1308へ進み、前回周期でコントローラ50から出力された反力指令値FAをしきい値T3と比較する。しきい値T3は、ノイズと判別可能な程度の駆動電流が必要になる最小限の反力指令値として予め設定しておく。FA>T3の場合は、ステップS1309へ進み、電流値Iをしきい値T4と比較する。しきい値T4は、ノイズ分を見込んで電流がほぼ0の状態を判定するための値として予め設定しておく。電流値I<T4の場合はステップS1310へ進み、カウンタCountを加算する。ステップS1311では、カウンタCountをしきい値T5と比較する。しきい値T5は、駆動回路70bの応答時間に対して十分に長い時間、例えば0.5秒に設定する。
カウンタCount>T5の場合、すなわち反力指令値FAに応じた電流指令が出力されているにも関わらず所定時間経過しても適切な電流値Iが検出されない場合は、ステップS1312へ進み、サーボモータ70aもしくは駆動回路70bが断線していると判断して故障フラグF_FAILに1をセットする。つづくステップS1313では、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。
ステップS1309で電流値I≧しきい値T4と判断された場合は、ステップS1314へ進んでカウンタCountをリセットした後、ステップS1315へ進む。また、ステップS1311でカウンタCount≦T5と判断された場合、あるいはステップS1308で反力指令値FA≦T3と判断された場合もステップS1315へ進む。ステップS1315では、異常なしと判断して故障フラグF_FAILに0をセットする。
このようにステップS130でアクセルペダル反力装置70の故障検知処理を行った後、ステップS140へ進む。ステップS140では、故障の有無に応じた故障対応処理を行う。具体的には、故障発生時にエンジントルクの上限値をリミットするようにエンジントルク特性を補正する。ここでの処理を、図11のフローチャートを用いて説明する。
ステップS1401では、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS1402へ進み、タイマT_FAILに初期値を設定する。ここで、初期値はアクセルペダル反力発生装置70の故障後、運転者のアクセルペダル操作に反射的な反応が生じるまでの最大時間として、例えば1秒に設定する。
ステップS1403では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。ステップS1404では、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力TRQ_0を記憶する。なお、コントローラ50は、図5に示したマップと同様のマップを備えているとする。
ステップS1401でF_FAIL=1で故障ありと判断された場合は、ステップS1405へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS1406へ進んでアクセルペダル61が戻し操作されているかを判断する。ここでの処理を図12のフローチャートを用いて説明する。
まず、ステップS14061では、アクセルペダルストロークセンサ62で検出される現在のアクセルペダル操作量SAが初期値θ0よりも大きいか否かを判定する。SA>θ0の場合はステップS14062へ進み、現在のアクセルペダル操作量SAを初期値θ0として設定する。すなわち、アクセルペダル61が初期値θ0よりも踏み込まれている場合は、現在の操作量SAで初期値θ0を更新する。ステップS14063では、アクセルペダル61の戻し操作なしと判断する。
SA≦θ0の場合は、ステップS14064へ進み、初期値θ0とSAとの差(θ0−SA)がしきい値θ_DECよりも大きいか否かを判定する。しきい値θ_DECはアクセルペダル61が戻し方向に操作されたと判断するために適切に設定されたしきい値である。(θ0−SA)>θ_DECの場合はステップS14065へ進んで、アクセルペダル61の戻し操作ありと判断する。(θ0−SA)≦θ_DECの場合はステップS14063へ進んで戻し操作なしと判断する。
このようにステップS1406でアクセルペダル61の戻し操作を判断した後、ステップS1407へ進む。ステップS1407でアクセルペダル61の戻し操作ありと判定されると、ステップS1408へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS1409へ進み、ドライバ要求駆動力の上限値をステップS1404で記憶したTRQ_0に設定する。要求駆動力上限値TRQ_0は、後述する駆動力制御処理において使用する。つづくステップS1410ではタイマT_FAILを1減算する。
このようにステップS140で故障対応処理を行った後、ステップS150へ進む。ステップS150では、レーダ装置10および車速センサ20の検出結果に従って障害物検知装置40で算出した複数の前方障害物に関する情報を読み込む。前方障害物に関する情報は、例えば各障害物までの前後方向の距離(車間距離)Dと、自車両に対する障害物の左右方向位置xおよび前後方向位置yである。
ステップS160では、ステップS110で読み込んだ自車速Vhおよび操舵角δに基づいて、自車両の進路を推定する。以下に、予測進路の推定方法を図13および図14を用いて説明する。予測進路を推定するために、図14に示すように自車両が矢印方向に進行している場合の旋回半径Rを算出する。まず、自車両の旋回曲率ρ(1/m)を算出する。旋回曲率ρは、自車速Vhおよび操舵角δに基づいて、以下の(式1)で算出できる。
ρ=1/{L(1+A・Vh2)}×δ/N ・・・(式1)
ここで、L:自車両のホイールベース、A:車両に応じて定められたスタビリティファクタ(正の定数)、N:ステアリングギア比である。
旋回半径Rは、旋回曲率ρを用いて以下の(式2)で表される。
R=1/ρ ・・・(式2)
(式2)を用いて算出した旋回半径Rを用いることで、図13に示すように自車両の走行軌道を半径Rの円弧として予測することができる。そして、図14に示すように、旋回半径Rの円弧を中心線とした幅Twの領域を、自車両が走行するであろう予測進路として設定する。幅Twは、自車両の幅に基づいて予め適切に設定しておく。
ステップS170では、障害物検知装置40によって検出され、ステップS160で設定した自車両の予測進路内にあると判定した障害物のうち、自車両に最も近い物体を、前方障害物として選択する。この前方障害物は、以降の処理で自車両のリスクポテンシャルRPを算出する対象となる障害物である。
ステップS180では、ステップS150で前方障害物として選択した障害物について、自車両のリスクポテンシャルRPを算出する。ここでは、リスクポテンシャルRPとして、自車両と前方障害物、例えば先行車との車間時間THWおよび余裕時間TTCを算出する。車間時間THWは、先行車の現在位置に自車両が到達するまでの時間を示す物理量であり、以下の(式3)から算出される。
THW=D/Vh ・・・(式3)
先行車に対する余裕時間TTCは、先行車に対する現在の自車両の接近度合を示す物理量であり、現在の走行状況が継続した場合、つまり自車速Vhおよび相対車速Vrが一定の場合に、何秒後に車間距離Dがゼロとなり自車両と先行車両とが接触するかを示す値である。なお、相対速度VrはVr=(自車速−先行車速)であり、自車速が先行車速よりも低い場合はVr=0とする。障害物に対する余裕時間TTCは、以下の(式4)で求められる。
TTC=D/Vr ・・・(式4)
余裕時間TTCの値が小さいほど、先行車への接触が緊迫し、先行車への接近度合が大きいことを意味している。例えば先行車への接近時には、余裕時間TTCが4秒以下となる前に、ほとんどのドライバが減速行動を開始することが知られている。このように、車間時間THWおよび余裕時間TTCが小さいほど自車両と先行車とが近づいていることを表すので、車間時間THWおよび余裕時間TTCはそれぞれ自車両と先行車との接近度合を表すリスクポテンシャルRPといえる。
ステップS190では、アクセルペダル操作反力および制駆動力補正量を算出する際の基準となる制御反発力Fcを算出する。制御反発力Fcは以下のようにして算出する。
制御反発力Fcの算出のために、図15(a)に示すように、自車両の前方に長さlの仮想的な弾性体200を設けたと仮定し、この仮想的な弾性体200が前方車両に当たって圧縮され、自車両に対する擬似的な走行抵抗を発生するというモデルを考える。制御反発力Fcは、図15(b)に示すように仮想弾性体200が前方車両に当たって圧縮された場合の反発力と定義する。
ここでは、車間時間THWに関連づけた仮想弾性体、および余裕時間TTCに関連づけた仮想弾性体を自車両と前方障害物との間に設定したモデルを想定し、それぞれの仮想弾性体による反発力を、車間時間THWに基づく反発力F_THWおよび余裕時間TTCに基づく反発力F_TTCとして算出する。制御反発力Fcの算出処理を、図16のフローチャートを用いて説明する。
まず、ステップS1901では、故障フラグF_FAIL=1か否かを判定する。故障フラグF_FAIL=0でアクセルペダル反力発生装置70に異常がない場合はステップS1902へ進み、車間時間THWをしきい値TH_THWと比較する。車間時間THWが制御開始を判断するために適切に設定されたしきい値TH_THW(例えば1sec)より小さい場合(THW<TH_THW)は、ステップS1903へ進む。ステップS1903では、自車速Vhと車間時間THWを用いて、以下の(式5)から車間時間THWに基づく反発力F_THWを算出する。
F_THW=K_THW×(TH_THW−THW)×Vh ・・・(式5)
(式5)においてK_THWは車間時間THWに関連付けた仮想弾性体のばね定数であり、TH_THW・Vhは仮想弾性体の長さに相当する。
ステップS1902でTHW≧TH_THWと判定された場合は、ステップS1904へ進んで反発力F_THW=0にする。
ステップS1905では、余裕時間TTCをしきい値TH_TTCと比較する。余裕時間TTCが制御開始を判断するために適切に設定されたしきい値TH_TTC(例えば10sec)より小さい場合(TTC<TH_TTC)は、ステップS1906へ進む。ステップS1906では、相対速度Vrと余裕時間TTCを用いて、以下の(式6)から余裕時間TTCに基づく反発力F_TTCを算出する。
F_TTC=K_TTC×(TH_TTC−TTC)×Vr ・・・(式6)
(式6)においてK_TTCは余裕時間TTCに関連付けた仮想弾性体のばね定数であり、TH_TTC・Vrは仮想弾性体の長さに相当する。
ステップS1905でTTC≧TH_TTCと判定された場合は、ステップS1907へ進んで反発力F_TTC=0にする。
つづくステップS1908では、ステップS1903またはS1904で算出した車間時間THWに基づく反発力F_THWと、ステップS1906またはS1907で算出した余裕時間TTCに基づく反発力F_TTCのうち、大きい方の値を制御用の反発力Fcとして選択する。
一方、ステップS1901で故障フラグF_FAIL=1でアクセルペダル反力発生装置70に故障ありと判断された場合は、ステップS1909へ進み、前回周期で設定された制御反発力Fcから所定の変化量ΔFcを減算する。ここで、変化量ΔFcは制御反発力Fcを減少していくときに運転者に違和感を与えない程度の値として予め適切に設定しておく。ステップS1910では、ステップS1909で算出した制御反発力Fcが0よりも小さいか否かを判定する。Fc<0の場合はステップS1911へ進んで制御反発力Fc=0に設定する。Fc≧0の場合はステップS1909で算出した制御反発力Fcをそのまま用いる。
このようにステップS190で制御反発力Fcを算出した後、ステップS200へ進む。
ステップS200では、ステップS190で算出した制御反発力Fcを用いて、制駆動力制御を行う際の駆動力補正量ΔDaおよび制動力補正量ΔDbを算出する。ここでの制駆動力補正量の算出処理を、図17を用いて説明する。
まず、ステップS2001でドライバ要求駆動力Fdaを推定する。コントローラ50内には、駆動力制御装置60内に記憶されたドライバ要求駆動力算出マップ(図5)と同一のものが用意されており、アクセルペダル操作量SAに従って、ドライバ要求駆動力Fdaを推定する。さらに、ステップS140の処理において設定されたドライバ要求駆動力上限値TRQ_0を用いてドライバ要求駆動力Fdaを制限する。これにより、アクセルペダル反力発生装置70が故障してから所定時間の間、アクセルペダル61の戻し操作が行われない場合は、故障前のアクセルペダル操作量SAに応じた値TRQ_0にドライバ要求駆動力Fdaが制限される。これ以外の条件では、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力Fdaが設定される。
ステップS2002で、ステップS2001で推定したドライバ要求駆動力Fdaと制御反発力Fcとの大小関係を比較する。ドライバ要求駆動力Fdaが制御反発力Fc以上(Fda≧Fc)の場合は、ステップS2003へ進む。ステップS2003では、駆動力補正量ΔDaとして−Fcをセットし、ステップS2004で制動力補正量ΔDbに0をセットする。すなわち、Fda−Fc≧0であることから、駆動力Fdaを制御反発力Fcにより補正した後も正の駆動力が残る。従って、補正量の出力は駆動力制御装置60のみで行うことができる。この場合、車両の状態としては、ドライバがアクセルペダル61を踏んでいるにも関わらず期待した程の駆動力が得られない状態となる。補正後の駆動力が走行抵抗より大きい場合には、加速が鈍くなる挙動としてドライバに感じられ、補正後の駆動力が走行抵抗より小さい場合には、減速する挙動としてドライバに感じられる。
一方、ステップS2002が否定判定され、ドライバ要求駆動力Fdaが制御反発力Fcより小さい場合(Fda<Fc)は、駆動力制御装置60のみでは目標とする補正量を出力できない。そこで、ステップS2005において駆動力補正量ΔDaに−Fdaをセットし、ステップS2006で制動力補正量ΔDbとして、補正量の不足分(Fc−Fda)をセットする。この場合、車両の減速挙動としてドライバには察知される。
このようにステップS200で制駆動力補正量を算出した後、ステップS210へ進む。ステップS210では、ステップS190で算出した制御反発力Fcに基づいて、アクセルペダル61に発生する操作反力の制御量、すなわちアクセルペダル反力制御指令値FAを算出する。図18に、制御反発力Fcとアクセルペダル反力制御指令値FAとの関係を示す。図18に示すように、制御反発力Fcが大きくなるほどアクセルペダル反力制御指令値FAが大きくなる。
つづくステップS220では、ステップS200で算出した駆動力補正量ΔDa、及び制動力補正量ΔDbをそれぞれ駆動力制御装置60、及び制動力制御装置90に出力する。駆動力制御装置60は、駆動力補正量ΔDaと要求駆動力Fdaとから目標駆動力を算出し、算出した目標駆動力を発生するようにエンジンコントローラ60cに指令を出力する。また、制動力制御装置90は、制動力補正量ΔDbと要求制動力Fdbとから目標制動力を算出し、目標制動力を発生するようにブレーキ液圧コントローラ90cに指令を出力する。
ステップS230では、ステップS210で算出したアクセルペダル反力制御指令値FAをアクセルペダル反力発生装置70に出力する。アクセルペダル反力発生装置70は、アクセルペダル操作量SAに応じた通常の反力特性に、コントローラ50から入力される指令値に応じた反力を付加するようにアクセルペダル反力を制御する。これにより、今回の処理を終了する。
次に、第1の実施の形態による車両用運転操作補助装置1の作用を説明する。図19(a)〜(c)に故障フラグF_FAIL、アクセルペダル操作量SA、およびエンジントルクの時間変化の一例を示す。時間t1で故障フラグF_FAIL=1となりアクセルペダル反力発生装置70の故障が検出されると、リスクポテンシャルRP、具体的には制御反発力Fcに応じてアクセルペダル61に発生していた付加反力が低下する。これに伴い、図19(b)に示すようにアクセルペダル操作量SAが増加する。ただし、図20に示すように、故障検出時点t1からアクセルペダル操作量SAに対するドライバ要求駆動力Fdaは、破線で示す上限値TRQ_0に制限される。これにより、アクセルペダル操作量SAが増加しても、図19(c)に実線で示すように自車両に発生するエンジントルクは増加しない。
時間t2でアクセルペダル61が戻し方向に操作されると、図20に実線で示すような通常の特性に従ってドライバ要求駆動力Fdaが算出される。これにより、エンジントルクがアクセルペダル操作量SAに応じて変動するようになる。
このように以上説明した第1の実施の形態においては、以下のような作用効果を奏することができる。
(1)車両用運転操作補助装置1は、少なくも自車速Vhおよび自車両と自車両前方の障害物との車間距離Dを検出し、これらの検出結果に基づいて障害物に対する自車両の接近度合を表すリスクポテンシャルRPを算出する。さらに、リスクポテンシャルRPに基づいてアクセルペダル61に発生させる操作反力、具体的にはアクセルペダル反力制御指令値FAを算出し、算出した操作反力をアクセルペダル反力発生装置70によってアクセルペダル61に発生させる。車両用運転操作補助装置1は、さらにアクセルペダル反力発生装置70の故障を検出し、故障検出結果に基づいて、アクセルペダル操作量SAに応じて設定されたエンジントルクの特性(以降、基準特性と呼ぶ)を補正する。これにより、アクセルペダル反力発生装置70が故障したときにアクセルペダル操作に対するエンジントルク特性を補正して運転者に違和感を与えないような制御を行うことが可能となる。
(2)車両用運転操作補助装置1は、アクセルペダル反力発生装置70の故障が検出されてから所定時間、具体的にはT_FAILが経過するまで、アクセルペダル操作量SAの増加に対するエンジントルクの増大を抑制するように基準特性を補正し、所定時間の経過後、またはアクセルペダル61が戻し方向に操作されたことが検出されると、補正したエンジントルク特性を図20に実線で示すような基準特性に戻す。具体的には、故障検出直前のアクセルペダル操作量SAに応じた上限値TRQ_0でエンジン要求駆動力Fdaを制限する。これにより、アクセルペダル反発生装置70の故障後にアクセルペダル操作量SAが増加したとしても、エンジントルクが増加しないように制限することができる。
(3)アクセルペダル反力発生装置70は、アクセルペダル61に操作反力を付加するアクチュエータ70aとアクチュエータ駆動回路70bとを備え、コントローラ50はアクチュエータ70aもしくはアクチュエータ駆動回路70bの異常を検出する。これにより、アクチュエータ70aもしくは駆動回路70bに異常がある場合には故障と判断してエンジントルク特性の補正を行うことができる。
(4)コントローラ50は、アクチュエータ70aもしくは駆動回路70bの異常として、断線、短絡、または過熱を検出する。断線、短絡、および過熱のいずれかが検出されると故障と判断してエンジントルク特性の補正を行うことができる。
(5)コントローラ50は、アクセルペダル操作量SAが所定量θ_DEC以上減少した場合にアクセルペダル61が戻し方向に操作されたと検出する。これにより、戻し方向への操作を確実に判断することができる。
(6)車両用運転操作補助装置1は、リスクポテンシャルRPに基づいて自車両に発生する制駆動力を制御する駆動力制御装置60および制動力制御装置90を備えている。アクセルペダル反力発生装置70の故障が検出されると、リスクポテンシャルRPに応じて制御される制駆動力の制御量を徐々に低下するように補正する。具体的には、故障が検出されると制御反発力Fcを変化量ΔFcずつ徐々に低下することにより、制駆動力補正量ΔDa,ΔDbを徐々に低下する。これにより、アクセルペダル反力発生装置70が故障した場合には、車両用運転操作補助装置1全体の制御を徐々に終了する。
《第2の実施の形態》
以下に、本発明の第2の実施の形態による車両用運転操作補助装置について説明する。第2の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第2の実施の形態では、アクセルペダル反力発生装置70の故障が検出されると、アクセルペダル61が踏み込まれてもエンジントルクが出にくいようにエンジン特性を補正する。具体的には、アクセルペダル操作量SAの増加に対するドライバ要求駆動力Fdaの増加量を小さくする。
以下に、第2の実施の形態における故障対応処理を、図21のフローチャートを用いて説明する。この処理は、図9に示したフローチャートのステップS140で実行される。
ステップS1421では、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS1422へ進み、タイマT_FAILに初期値を設定する。ステップS1423では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。
ステップS1421でF_FAIL=1で故障ありと判断された場合は、ステップS1424へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS1425へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS1426でアクセルペダル61の戻し操作ありと判定されると、ステップS1427へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS1428へ進み、エンジントルクの増加抑制のためのエンジントルク補正処理を行う。
図22に、アクセルペダル操作量SAとドライバ要求駆動力Fdaとの関係を示す。アクセルペダル反力発生装置70が故障していない通常の状態では、実線で示すようにアクセルペダル操作量SAが大きくなるにつれてドライバ要求駆動力Fdaは比例して大きくなる。例えばアクセルペダル操作量SA=SA1のときにアクセルペダル反力発生装置70の故障が検出されたとすると、アクセルペダル61が踏増しされたときにドライバ要求駆動力Fdaの増加量が通常時よりも小さくなるように補正する。すなわち、踏増し時のアクセルペダル操作量SAの変化量Δθに対するドライバ要求駆動力Fdaの変化量ΔTQを通常時よりも小さくする。
エンジントルク補正処理を、図23のフローチャートを用いて説明する。まず、ステップS14281では、アクセルペダル操作量SAの変化量Δθ、すなわち踏増し量を算出する。変化量Δθは、(現在のアクセルペダル操作量SA=θ_NEW)−(前回周期で検出されたアクセルペダル操作量SA=θ_OLD)である。ステップS14282では、アクセルペダル操作量SAの変化量Δθに応じたドライバ要求駆動力Fdaの変化量ΔTQを算出する。この変化量ΔTQは、図22に実線で示す通常の特性に従って算出する。
つづくステップS14283では、故障時のドライバ要求駆動力Fdaの補正値として、ドライバ要求駆動力更新値TQ_NEWを以下の(式7)から算出する。
TQ_NEW=TQ_OLD+K_TQ×ΔTQ ・・・(式7)
(式7)において、TQ_OLDは前回周期で設定されたドライバ要求駆動力Fda、もしくはドライバ要求駆動力更新値である。K_TQはドライバ要求駆動力Fdaの補正係数であり、例えばK_TQ=0.5に設定する(0<K_TQ<1)。
(式7)から要求駆動力更新値TQ_NEWを算出することにより、図22に破線で示すようにアクセルペダル操作量SAの変化量Δθに対する要求駆動力増加量ΔTQが小さくなるようにエンジントルク特性が補正される。
このようにステップS1428でドライバ要求駆動力更新値TQ_NEWを算出し、エンジントルク補正処理を行った後、ステップS1429へ進む。ステップS1429ではタイマT_FAILを1減算する。ステップS1428で算出したドライバ要求駆動力更新値TQ_NEWはステップS200の処理において制駆動力補正量ΔDa,ΔDbを算出する際に使用する。
このように、以上説明した第2の実施の形態においては、上述した第1の実施の形態による効果に加えて以下のような作用効果を奏することができる。
(1)車両用運転操作補助装置1は、アクセルペダル反力発生装置70の故障が検出されてから所定時間、具体的にはT_FAILが経過するまで、アクセルペダル操作量SAの増加に対するエンジントルクの増大を抑制するように基準特性を補正し、所定時間の経過後、またはアクセルペダル61が戻し方向に操作されたことが検出されると、補正したエンジントルク特性を基準特性に戻す。具体的には、故障が検出されてからのアクセルペダル61の踏増し量Δθに対する要求駆動力Fdaの変化量ΔTQが小さくなるように補正し、アクセルペダル61の踏み込み操作に伴うエンジントルクの増加量を抑制する。これにより、アクセルペダル反力発生装置70の故障後にアクセルペダル操作量SAが増加したとしても、エンジントルクの増大を抑制することができる。
(2)コントローラ50は、基準特性に基づくアクセルペダル操作量SAの増加量Δθに対するエンジントルクの増加量ΔTQに補正係数K_TQを乗算することにより、エンジントルクの増大を抑制する。補正係数K_TQを1よりも小さい所定値、例えば0.5として設定することにより、アクセルペダル61の踏み込み操作に伴うエンジントルクの増加量を抑制することができる。補正係数K_TQは0.5には限定されず、0<K_TQ<1を満たす適切な値を設定することができる。
《第3の実施の形態》
以下に、第3の実施の形態による車両用運転操作補助装置について説明する。第3の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第3の実施の形態では、アクセルペダル反力発生装置70の故障時にアクセルペダル61の急な踏み込みが検知されると、エンジントルクの上限値をリミットするようにエンジントルク特性を補正する。以下に、第3の実施の形態における故障対応処理について、図24のフローチャートを用いて説明する。この処理は、図9に示したフローチャートのステップS140で実行される。
ステップS1431では、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS1432へ進み、タイマT_FAILに初期値を設定する。ステップS1433では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。ステップS1434では、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力TRQ_0を記憶する。
ステップS1431でF_FAIL=1で故障ありと判断された場合は、ステップS1435へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS1436へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS1437でアクセルペダル61の戻し操作ありと判定されると、ステップS1438へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS1439へ進み、アクセルペダル61が急に踏み込み操作されたかを判断する。ここでの処理を図25のフローチャートを用いて説明する。
まず、ステップS14391で、アクセルペダル操作速度Svを算出する。例えば、アクセルペダル操作速度SAを時間微分することにより操作速度Svを算出する。ステップS14392では、アクセルペダル操作速度Svを所定値Sv1と比較する。所定値Sv1は、アクセルペダル61の急な踏み込み操作を判断するための操作速度のしきい値として予め適切な値を設定しておく(Sv1>0)。Sv>Sv1の場合はステップS14393へ進み、アクセルペダル61の急な踏み込み操作ありと判断し、Sv≦Sv1の場合はステップS14394へ進み、急な踏み込み操作なしと判断する。
このようにステップS1439でアクセルペダル61の急な踏み込み操作の判断を行った後、ステップS1440で急な踏み込み操作ありか否かを判定する。アクセルペダル61の急な踏み込み操作がある場合はステップS1441へ進み、ドライバ要求駆動力の上限値をステップS1434で記憶したTRQ_0に設定する。アクセルペダル61の急な踏み込み操作がない場合はステップS1441をスキップしてステップS1442へ進む。ステップS1442ではタイマT_FAILを1減算する。
上述したように算出した要求駆動力上限値TRQ_0は、ステップS200の制駆動力補正量算出処理において使用する。このように、アクセルペダル反力発生装置70の故障が検出されてから所定時間内にアクセルペダル61の急な踏み込み操作が行われた場合は、アクセルペダル61が踏み込み操作されてもエンジントルクが増大しないようにエンジントルクを補正する。
このように、以上説明した第3の実施の形態においては、上述した第1および第2の実施の形態による効果に加えて以下のような作用効果を奏することができる。
(1)車両用運転操作補助装置1は、アクセルペダル反力発生装置70の故障が検出されてから所定時間、具体的にはT_FAILが経過するまでに、アクセルペダル61の急な踏み込み操作が検出されると、アクセルペダル操作量SAの増加に対するエンジントルクの増大を抑制するように基準特性を補正し、所定時間の経過後、またはアクセルペダル61が戻し方向に操作されたことが検出されると、補正したエンジントルク特性を基準特性に戻す。具体的には、故障検出直前のアクセルペダル操作量SAに応じた上限値TRQ_0でエンジン要求駆動力Fdaを制限する。これにより、アクセルペダル反発生装置70の故障後にアクセルペダル61が急に踏み込み操作されてアクセルペダル操作量SAが増加したとしても、エンジントルクが増加しないように制限することができる。
なお、アクセルペダル反力発生装置70の故障が検出されてから所定時間内にアクセルペダル61の急な踏み込み操作が行われた場合に、上述した第2の実施の形態と同様に、アクセルペダル61が踏み込まれてもエンジントルクが出にくいようにエンジン特性を補正することも可能である。具体的には、補正係数K_TQを用いてアクセルペダル操作量SAの増加に対するドライバ要求駆動力Fdaの増加量ΔTQが小さくなるように補正する。
《第4の実施の形態》
以下に、第4の実施の形態による車両用運転操作補助装置について説明する。第4の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第4の実施の形態では、アクセルペダル反力発生装置70の故障が検出されると、アクセルペダル操作量SAの増加に対するドライバ要求駆動力Fdaの増加量を小さくするとともに、要求駆動力増加量の抑制量を、故障前にアクセルペダル61に付加していた操作反力に応じて変化させる。
以下に、第4の実施の形態における故障対応処理を、図26のフローチャートを用いて説明する。この処理は、図9に示したフローチャートのステップS140で実行される。
ステップS1451では、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS1452へ進み、前回周期でリスクポテンシャルRP、具体的には制御反発力Fcに応じて算出されたアクセルペダル反力制御指令値FAを付加反力前回値F_PEDALとして記憶する。ステップS1453ではタイマT_FAILに初期値を設定する。ステップS1454では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。
ステップS1451でF_FAIL=1で故障ありと判断された場合は、ステップS1455へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS1456へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS1457でアクセルペダル61の戻し操作ありと判定されると、ステップS1458へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS1459へ進み、エンジントルクの増加抑制のためのエンジントルク補正処理を行う。ここでの処理を図27のフローチャートを用いて説明する。
ステップS14591では、アクセルペダル操作量SAの変化量Δθ=(θ_NEW−θ_OLD)を算出する。ステップS14592では、通常の特性に従って、アクセルペダル操作量SAの変化量Δθに応じたドライバ要求駆動力Fdaの変化量ΔTQを算出する。ステップS14593では、故障時のドライバ要求駆動力Fdaの補正値として、ドライバ要求駆動力更新値TQ_NEWを以下の(式8)から算出する。
TQ_NEW=TQ_OLD+K_TQ_F×ΔTQ ・・・(式8)
(式8)においてK_TQ_Fはドライバ要求駆動力Fdaの補正係数であり、付加反力前回値F_PEDALに応じて設定する。
図28に、アクセルペダル付加反力前回値F_PEDALと補正係数K_TQ_Fとの関係を示す(0<K_TQ_F<1)。付加反力前回値F_PEDALが大きくなるほど、補正係数K_TQ_Fを小さくする。これにより、故障前にアクセルペダル61に付加されていた付加反力が大きいほど、故障に伴って運転者がアクセルペダル61を大きく踏み込んでしまったとしてもエンジントルク増加の抑制量が大きくなる。故障前に付加されていた付加反力が小さくなるほど、故障により付加反力がなくなったとしてもアクセルペダル操作に与える影響が小さいので、補正係数K_TQ_Fを大きくして1に近づける。
このようにステップS1459でドライバ要求駆動力更新値TQ_NEWを算出し、エンジントルク補正処理を行った後、ステップS1460へ進む。ステップS1460ではタイマT_FAILを1減算する。ステップS1459で算出したドライバ要求駆動力更新値TQ_NEWはステップS200の処理において制駆動力補正量ΔDa,ΔDbを算出する際に使用する。
このように、以上説明した第4の実施の形態においては、上述した第1から第3の実施の形態による効果に加えて以下のような作用効果を奏することができる。
コントローラ50は、アクセルペダル反力発生装置70の故障が検出される直前に算出された操作反力に基づいて、操作反力が大きくなるほどエンジントルクの増大の抑制量を大きくする。具体的には、故障検出直前にリスクポテンシャルRPに基づいて算出された反力制御指令値FAに基づいて補正係数K_TQ_Fを算出し、アクセルペダル61の踏増し量Δθに対する要求駆動力増加量ΔTQに乗算する。これにより、故障直前にアクセルペダル61に付加されていた付加反力が大きいほどエンジントルク増大時の抑制量を大きくすることができる。
なお、第3の実施の形態と同様に、アクセルペダル反力発生装置70の故障検出時にアクセルペダル61の急な踏み込み操作が検出された場合に、故障直前の付加反力に基づいてエンジントルク増加の抑制量を調整することも可能である。
《第5の実施の形態》
以下の第5の実施の形態による車両用運転操作補助装置について説明する。第5の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。なお、第5の実施の形態による車両用運転操作補助装置を備えた車両は、自動変速機を備えているものとする。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第5の実施の形態では、アクセルペダル反力発生装置70の故障時に、エンジントルクの上限値をリミットするようにエンジントルク特性を補正するとともに、アクセルペダル操作に伴うシフト制御を禁止する。以下に、第5の実施の形態における故障対応処理について、図29のフローチャートを用いて説明する。この処理は、図9に示したフローチャートのステップS140で実行される。
ステップS1471では、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS1472へ進み、タイマT_FAILに初期値を設定する。ステップS1473では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。ステップS1474では、アクセルペダル61を一杯に踏み込んでエンジン負荷が大きくなったときに自動的にシフトダウンする、いわゆるキックダウンを許可する信号を、自動変速機(不図示)に出力する。つづくステップS1475では、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力TRQ_0を記憶する。
ステップS1471でF_FAIL=1で故障ありと判断された場合は、ステップS1476へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はステップS1477へ進み、キックダウンを許可する信号を自動変速機に出力してから、この処理を終了する。タイマT_FAILが0でない場合は、ステップS1478へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS1479でアクセルペダル61の戻し操作ありと判定されると、ステップS1480へ進み、キックダウンを許可する信号を自動変速機に出力する。ステップS1481ではタイマT_FAILを0にリセットする。
一方、ステップS1479でアクセルペダル61の戻し操作なしと判定されると、ステップS1482へ進み、ドライバ要求駆動力の上限値をステップS1475で記憶したTRQ_0に設定する。ステップS1483ではキックダウンを禁止する信号を自動変速機に出力する。ステップS1484ではタイマT_FAILを1減算する。算出した要求駆動力上限値TRQ_0は、ステップS200の制駆動力補正量算出処理において使用する。
このように、アクセルペダル反力発生装置70の故障が検出された場合は、アクセルペダル61が踏み込み操作されてもエンジントルクが増大しないようにエンジントルクを補正する。さらに、アクセルペダル61が一杯に踏み込まれたときの自動変速機のキックダウンを禁止する。なお、アクセルペダル反力発生装置70の故障時に自動変速機のキックダウンを禁止する代わりに、自動変速機がシフトダウンされにくくなるようにシフトスケジュールを変更することも可能である。
このように、以上説明した第5の実施の形態においては、上述した第1から第4の実施の形態による効果に加えて以下のような作用効果を奏することができる。
コントローラ50は、故障検出から所定時間、すなわちT_FAILが経過するまで、またはアクセルペダル61が戻し方向に操作されたことが検出されるまで、アクセルペダル61の踏み込み操作に応じたキックダウンを禁止する。これにより、アクセルペダル反力発生装置70の故障時に自動的にシフトダウンすることを防止できる。
なお、第1の実施の形態の代わりに、上述した第2から第4の実施の形態と第5の実施の形態とを組み合わせて構成することももちろん可能である。
《第6の実施の形態》
以下に、第6の実施の形態による車両用運転操作補助装置について説明する。第6の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第6の実施の形態による車両用運転操作補助装置は、運転者によるアクセルペダル操作に基づいて運転者が前方障害物を追い越そうとする追越意図を有しているか否かを判断する。アクセルペダル反力発生装置70の故障が検出されると、エンジントルクの上限値をリミットするようにエンジントルク特性を補正するとともに、追越意図判断を禁止する。
以下に、第6の実施の形態における車両用運転操作補助装置の動作を、図30のフローチャートを用いて説明する。ステップS310〜S380までの処理は、図9に示したフローチャートのステップS110〜S180での処理と同様である。
ステップS390では、運転者が前方障害物を追い越す意図があるか否かを判定する。ここでの処理を、図31のフローチャートを用いて説明する。まず、ステップS3901で、現在、リスクポテンシャルRPに応じた制駆動力制御および操作反力制御が行われているか否かを判定する。具体的には、前回周期で車間時間THWもしくは余裕時間TTCに基づく制御反発力Fcが0より大きな値として算出されていたか否かを判定する。
ステップS3901が否定判定されるとステップS3902へ進み、今回周期で制駆動力制御および操作反力制御を開始するか否かを判定する。具体的には、ステップS380でリスクポテンシャルRPとして算出された車間時間THWがしきい値TH_THWよりも小さい、もしくは余裕時間TTCがしきい値TH_TTCよりも小さいか否かに基づいて、制御開始か否かを判断する。車間時間THW≧TH_THWおよび余裕時間TTC≧TH_TTCの場合は、制御反発力Fc=0となるので制御開始しないと判断し、ステップS3903へ進む。
ステップS3903では、ステップS320で読み込んだ現在のアクセルペダル操作量SAを、制御開始初期値θ1として記憶する。その後、ステップS3904へ進む。ステップS3902で今回周期で制御開始と判断された場合は、ステップS3903をスキップしてステップS3904へ進む。ステップS3904では、運転者に前方障害物を追い越す意図が無いと判断する。
ステップS3901が肯定判定され、すでに制駆動力制御及び操作反力制御が行われている場合は、ステップS3905へ進む。ステップS3905では、ステップS330で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=1で故障ありの場合はステップS3904へ進み、追越意図なしと判断する。すなわち、アクセルペダル反力発生装置70に故障がある場合は、運転者に追い越し意図ありと判断することを禁止する。一方、F_FAIL=0で異常なしと判断された場合はステップS3906へ進む。
ステップS3906では、現在のアクセルペダル操作量SAがステップS3903で記憶された制御開始初期値θ1よりも小さいか否かを判定する。ステップS3906が否定判定され、制御開始直前よりもアクセルペダル61が踏み込み方向に操作されている場合は、ステップS3907へ進む。ステップS3907では、現在のアクセルペダル操作量SAと制御開始初期値θ1との差(SA−θ1)が、閾値θ_OVRよりも大きいか否かを判定する。閾値θ_OVR は、自車両が前方障害物を追い越す意図があるか否かを判定するために用いるしきい値である。閾値θ_OVR は、自車両が前方障害物を追い越すための駆動トルクを得るのに必要なアクセルペダル操作量として予め適切な値を設定しておく。ステップS3907が肯定判定されるとステップS3908へ進み、運転者に前方障害物を追い越す意図があると判断する。
一方、ステップS3906が肯定判定され、制御開始直前よりもアクセルペダル61が戻し方向に操作されている場合は、ステップS3909へ進む。ステップS3909では、現在のアクセルペダル操作量SAを、制御開始初期値θ1として設定する。すなわち、制御開始後にアクセルペダル61が戻された場合は、最も小さいアクセルペダル操作量SAで制御開始初期値θ1を更新する。その後、ステップS3910へ進み、運転者に前方障害物を追い越す意図がないと判断する。なお、ステップSS3907が否定判定された場合も、ステップS3910へ進んで追い越し意図なしと判断する。
このようにステップS390で運転者の追い越し意図判断を行った後、ステップS400へ進む。ステップS400では、自車両と前方障害物とのラップ率Laを算出する。ここで、ラップ率Laは、自車両の予測進路と前方障害物とがどれほど重なっているかを表す値であり、以下のように算出する。
図32において、自車両の走行軌道(ステップS360で算出した半径Rの円弧)と前方障害物の後端を左右方向に延長した線との交点をAで表す。前方障害物の前後方向中心線Bから交点Aまでの左右方向距離を横偏差Δdとして算出する。ラップ率Laは、横偏差Δdと前方障害物の幅Wを用いて以下の(式9)から算出することができる。
La=1−|Δd/W|・・・(式9)
(式9)で算出されるラップ率Laは0〜1の範囲の値として設定され、ラップ率Laが大きいほど、自車両の予測進路と前方障害物との重なり度合が大きいことを示している。すなわち、ラップ率La=0のときは前方障害物と自車両の予測進路が完全にずれており、ラップ率La=1のときは前方障害物が自車両の予測進路上で自車両の真正面にいることを表している。なお、ラップ率Laは前方障害物の幅Wを考慮した重なり度合であり、横偏差Δdが同じ場合には前方障害物の幅Wが大きいほど大きくなる。
ステップS410では、ステップS400で算出したラップ率Laに基づいて制駆動力制御および操作反力制御を行う際のゲイン(ラップ率ゲインGla)を算出する。図33に、ラップ率Laとラップ率ゲインGlaとの基本的な関係を示す。図33に実線で示すように、ラップ率Laが小さくなるにつれてラップ率ゲインGlaを1から徐々に小さくする。ここで、運転者に前方障害物を追い越す意図があると判断された場合は、破線で示すように、追い越し意図なしと判断された場合に比べてラップ率Laの変化に対するラップ率ゲインGlaの変化率を大きくする。すなわち、運転者が前方障害物を追い越そうとしている場合は、ラップ率Laが小さくなるほどラップ率ゲインGlaを速やかに低下させて、運転者が追い越しのための運転操作を行いやすくする。
ステップS420では、制駆動力制御および操作反力制御の制御量を算出するために用いる制御反発力Fcを算出する。ここでは、図16に示したフローチャートに従って算出した制御反発力Fcに、ステップS410で算出したラップ率ゲインGlaを掛けた値(Fc×Gla)を新たな制御反発力Fcとして算出する。すなわち、制御反発力Fcは、仮想弾性体200の反発力F_THW、F_TTCをラップ率ゲインGlaを用いて調整した値である。したがって、前方障害物と自車両の予測進路とのずれが大きくなってラップ率Laが小さくなるほど、制御反発力Fcは小さくなる。さらに、運転者の前方障害物の追い越し意図があると判断された場合は、制御反発力Fcがさらに小さくなる。
つづくステップS430〜S460での処理は、図9のフローチャートのステップS200〜S230での処理と同様である。このように、運転者に追越意図ありと判断された場合は、自車両と前方障害物とのラップ率Laに基づいてリスクポテンシャルRPに応じた制駆動力補正量および操作反力が低下するように補正を行う。ただし、アクセルペダル反力発生装置70が故障している場合は、追越意図ありとの判断を禁止するとともに、アクセルペダル61を踏み込んでもエンジントルクが増大しないようにエンジントルク特性を補正する。
このように以上説明した第6の実施の形態においては、上述した第1から第5の実施の形態による効果に加えて以下のような作用効果を奏することができる。
(1)車両用運転操作補助装置1は、アクセルペダル操作に基づいて自車両が障害物を追い越そうとする追越意図を検出し、追越意図ありと判断されると操作反力を補正する。さらに、アクセルペダル反力発生装置70の故障が検出されると追越意図ありと判断することを禁止する。追越意図ありと判断された場合には、前方障害物の幅Wを用いて算出した自車両と前方障害物とのラップ率Laに応じてラップ率ゲインGlaを算出し、仮想弾性体の反発力とラップ率ゲインGlaとから制御反発力Fcを算出する。これにより、自車両が幅の狭い障害物を追い越す場合、または幅の広い障害物を追い越す場合で、運転者に違和感を与えないように操作反力および制駆動力制御量ΔDa、ΔDbを調整することができる。アクセルペダル反力発生装置70の故障が検出された場合は、追越意図ありと判断することを禁止するので、故障時にわかりやすい制御を行うことができる。
《第7の実施の形態》
以下に、本発明の第7の実施の形態による車両用運転操作補助装置について説明する。第7の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第6の実施の形態との相違点を主に説明する。
第7の実施の形態においては、上述した第6の実施の形態と同様に、運転者によるアクセルペダル操作に基づいて運転者が前方障害物を追い越そうとする追越意図を判断する。そして、アクセルペダル反力発生装置70の故障が検出されると、エンジントルクの上限値をリミットするようにエンジントルク特性を補正するとともに、追越意図判断を禁止する。ただし、故障検出以前に運転者の追越意図ありと判断されていた場合は、エンジントルクの制限を行わないようにする。
以下に、第7の実施の形態における故障対応処理について、図34のフローチャートを用いて説明する。この処理は、図30に示したフローチャートのステップS340で実行される。
ステップS3401では、ステップS330で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS3402へ進み、タイマT_FAILに初期値を設定する。ステップS3403では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。ステップS3404では、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力TRQ_0を記憶する。
ステップS3401でF_FAIL=1で故障ありと判断された場合は、ステップS3405へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS3406へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS3407でアクセルペダル61の戻し操作ありと判定されると、ステップS3408へ進み、タイマT_FAILを0にリセットする。
一方、アクセルペダル61の戻し操作なしと判定されると、ステップS3409へ進み、前回周期で運転者に追い越し意図ありと判断されたか否かを判定する。前回周期で追越意図ありと判断された場合は、ステップS3408へ進んでタイマT_FAILを0にリセットする。前回周期で追越意図なしと判断された場合は、ステップS3410へ進み、ドライバ要求駆動力の上限値をステップS3404で記憶したTRQ_0に設定する。ステップS3411ではタイマT_FAILを1減算する。
このように、アクセルペダル反力発生装置70の故障が検出される以前に、運転者に追い越し意図ありと判断されていた場合は、ドライバ要求駆動力Fdaの制限を行わない。
このように、以上説明した第7の実施の形態においては、上述した第1から第6の実施の形態による効果に加えて以下のような作用効果を奏することができる。
コントローラ50は、アクセルペダル反力発生装置70の故障が検出される直前に追越意図ありと判断された場合は、アクセルペダル操作量SAの増加に対するエンジントルクの増大の抑制量を小さくする。具体的には、追越意図ありと判断されていた場合には、エンジントルクを上限値TRQ_0で制限せず、基準特性を補正しない。これにより、アクセルペダル操作量SAに応じた通常通りのエンジントルクが発生する。
《第8の実施の形態》
以下に、本発明の第8の実施の形態による車両用運転操作補助装置について説明する。第8の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第7の実施の形態との相違点を主に説明する。
第8の実施の形態においては、アクセルペダル反力発生装置70の故障が検出されると、アクセルペダル61が踏み込まれてもエンジントルクが出にくいようにエンジン特性を補正する。具体的には、アクセルペダル操作量SAの増加に対するドライバ要求駆動力Fdaの増加量を小さくする。さらに、故障検出以前に運転者の追越意図ありと判断されていた場合は、ドライバ要求駆動力Fdaの増加量の抑制量を小さくし、エンジントルクの抑制量を小さくする。
以下に、第8の実施の形態における故障対応処理を、図35のフローチャートを用いて説明する。この処理は、図30に示したフローチャートのステップS340で実行される。
ステップS3421では、ステップS230で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS3422へ進み、タイマT_FAILに初期値を設定する。ステップS3423では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。
ステップS3421でF_FAIL=1で故障ありと判断された場合は、ステップS3424へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS3425へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS3426でアクセルペダル61の戻し操作ありと判定されると、ステップS3427へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS3428へ進み、エンジントルクの増加抑制のためのエンジントルク補正処理を行う。
図36に、アクセルペダル操作量SAとドライバ要求駆動力Fdaとの関係を示す。アクセルペダル反力発生装置70の故障が検出されると、アクセルペダル61が踏増しされたときにドライバ要求駆動力Fdaの増加量が実線で示す通常時よりも小さくなるように補正する。ただし、追越意図ありと判断されると、ドライバ要求駆動力Fdaの増加量の抑制量を小さくする。具体的には、踏増し時のアクセルペダル操作量SAの変化量Δθに対するドライバ要求駆動力Fdaの変化量ΔTQを、故障の有無および追越意図の有無に応じて調整する。
そこで、上述した(式7)を用いてドライバ要求駆動力更新値TQ_NEWを算出する際に、補正係数K_TQを故障の有無および追越意図の有無に応じて設定する。アクセルペダル反力発生装置70の故障ありと判断されると、例えば、補正係数K_TQ=0.5に設定する。ただし、故障検出以前に運転者に追い越し意図ありと判断されていた場合は、補正係数K_TQを大きくし、たとえばK_TQ=0.8に設定する(0<K_TQ<1)。
これにより、故障検出時で追越意図なしと判断されている場合は、図36に破線で示すようにアクセルペダル操作量SAの変化量Δθに対するドライバ要求駆動力Fdaの変化量ΔTQが抑制される。故障検出以前に追越意図ありと判断されている場合は、一点鎖線で示すように変化量ΔTQの抑制量を小さくし、アクセルペダル61の踏み込みに対する要求駆動力増加量ΔTQの補正を小さくしている。なお、故障なしの場合は図36に実線で示す通常の特性に従って増加量ΔTQが算出される。
このようにステップS3428でドライバ要求駆動力更新値TQ_NEWを算出し、故障の有無および追越意図の有無に応じてエンジントルク補正処理を行った後、ステップS3429へ進む。ステップS3429ではタイマT_FAILを1減算する。ステップS3428で算出したドライバ要求駆動力更新値TQ_NEWはステップS430の処理において制駆動力補正量ΔDa,ΔDbを算出する際に使用する。
このように、以上説明した第8の実施の形態においては、上述した第1から第7の実施の形態による効果に加えて以下のような作用効果を奏することができる。
コントローラ50は、アクセルペダル反力発生装置70の故障が検出される直前に追越意図ありと判断された場合は、アクセルペダル操作量SAの増加に対するエンジントルクの増大の抑制量を小さくする。具体的には、追越意図ありと判断されていた場合には、追越意図なしと判断されていた場合に比べて大きな補正係数K_TQを設定し、アクセルペダル61の踏増し量Δθに対する要求駆動力増加量ΔTQの補正量(抑制量)を小さくする。これにより、基準特性に近いエンジントルク特性に従ってエンジントルクが発生する。
《第9の実施の形態》
以下に、第9の実施の形態による車両用運転操作補助装置について説明する。第9の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第9の実施の形態による車両用運転操作補助装置は、アクセルペダル反力発生装置70の故障が検出されると、アクセルペダル61が踏み込まれてもエンジントルクが出にくいようにエンジン特性を補正する。具体的には、アクセルペダル操作量SAの増加に対するドライバ要求駆動力Fdaの増加量を小さくする。さらに、故障検出後に運転者による追い越し意図ありと判断されると、要求駆動力Fdaの増加量の抑制量を小さくし、エンジントルク増加の抑制量を小さくする。
以下に、第9の実施の形態における車両用運転操作補助装置の動作を、図37のフローチャートを用いて説明する。ステップS510およびS520での処理は、図9に示したフローチャートのステップS110およびS120での処理と同様である。
ステップS530では、運転者による追越意図の判断を行う。ここでの処理を図38のフローチャートを用いて説明する。まず、ステップS5301で、現在、リスクポテンシャルRPに応じた制駆動力制御および操作反力制御が行われているか否かを判定する。ステップS5301が否定判定されるとステップS5302へ進み、運転者に前方障害物を追い越す意図が無いと判定する。
ステップS5301が肯定判定され、すでに制駆動力制御及び操作反力制御が行われている場合は、ステップS5303へ進む。ステップS5303では、舵角センサ30で検出される操舵角δから操舵角速度δ’を算出し、予め設定したしきい値δ1と比較する。ここで、しきい値δ1は、自車両が車線内を走行する場合に、ゆるいカーブも含めて通常の操舵操作を行う際に現れる値よりもやや大きな値として設定する。操舵角速度の絶対値|δ’|がしきい値δ1以下でゆるやかな操舵操作が行われている場合は、ステップS5304へ進む。ステップS5304では追い越し意図判断に使用するタイマをリセットしてステップS5302に進み、追い越し意図なしと判断する。
ステップS5303が肯定判定され、|δ’|>δ1ですばやい操舵操作が行われている場合は、ステップS5305へ進み、追い越し意図判断に使用するタイマを加算する。ステップS5306では、ステップS5305で加算したタイマの値が、しきい値Tsよりも大きいか否かを判定する。しきい値Tsは、自車両が車線変更を行うために必要な操舵入力時間、すなわち操舵操作を行っている時間に相当する値として予め適切に設定する。しきい値Tsは、例えばTs=0.5secとする。
ステップS5306が肯定判定され、操舵角速度δ’が大きい状態で所定時間Tsより長い時間操舵操作が行われている場合は、ステップS5307へ進み、追い越し意図ありと判断する。一方、ステップS5306が否定判定されると、ステップS5302へ進んで追い越し意図なしと判断する。
このように、ステアリング操舵状態、具体的には操舵角速度δ’に基づいて追越意図があるかを判断することによっても、運転者が前方障害物を追い越そうとしている追越意図を判断することができる。なお、ステアリング操舵状態は、運転者がどのようにステアリングホイールを操作しているかを表すものであり、運転者の追い越し意図を判断できれば、操舵角速度δ’だけでなく、操舵角δを用いることも可能である。また、運転者によるウィンカ操作状態に基づいて追越意図判断を行うこともできる。
このようにステップS530で運転者の追越意図判断を行った後、ステップS540へ進んでアクセルペダル反力発生装置70の故障検出判断処理を行う。ステップS550では、ステップS530の追越意図判断結果およびステップS540で設定された故障フラグF_FAILに基づいて、故障対応処理を行う。ここでの処理は、図35のフローチャートに従って、上述した第8の実施の形態と同様の処理を行う。なお、第7の実施の形態と同様に、アクセルペダル反力発生装置70の故障が検出され、運転者に追越意図ありと判断された場合に、ドライバ要求駆動力を上限値TRQ_0で制限することも可能である。
ステップS560以降の処理は、図9のフローチャートのステップS150以降の処理と同様である。
このように、以上説明した第9の実施の形態においては、上述した第1から第8の実施の形態による効果に加えて以下のような作用効果を奏することができる。
車両用運転操作補助装置1は、ウィンカ操作もしくは操舵操作に基づいて自車両が障害物を追い越そうとする追越意図を判断し、アクセルペダル反力発生装置70の故障が検出されてから追越意図ありと判断されると、エンジントルクの増大の抑制量を小さくする。これにより、追越意図ありと判断された場合に基準特性に近いエンジントルク特性に従ってエンジントルクが発生する。
《第10の実施の形態》
以下に、第10の実施の形態による車両用運転操作補助装置について説明する。第10の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
第10の実施の形態においては、アクセルペダル反力発生装置70の駆動回路70bに流れる電流値とその継続時間に基づいて駆動回路70bの過熱状態を推定し、アクセルペダル反力発生装置70が故障しているか否かを判断する。したがって、故障判断のためにアクセルペダル反力発生装置70は少なくとも電流センサ70dを備えていればよく、温度センサ70cを省略することができる。
第10の実施の形態における故障検知判断処理を、図39のフローチャートを用いて説明する。この処理は、図9のフローチャートのステップS130で実行される。
ステップS1321では、リスクポテンシャルRPに応じた操作反力がアクセルペダル61に付加されているか否かを判定する。具体的には、前回周期で算出されたアクセルペダル反力制御指令値FAが0よりも大きい値であるか否かを判定する。操作反力が付加されている場合はステップ1322へ進み、電流センサ70dの検出値をしきい値T6と比較する。しきい値T6は、回路設計上定められた上限電流に相当する値として、予め適切に設定しておく。電流値I>T6の場合は、ステップS1323へ進み、故障判断を行うためのタイマを加算する。ステップS1321で操作反力が付加されていないと判定されると、ステップS1324へ進んでタイマを減算する。
ステップS1325では、ステップS1323またはS1324で算出されたタイマ値をしきい値T7と比較する。しきい値T7は、電流値Iが上限値T6を超えてから駆動回路70bが過熱していると判断するまでに必要な経過時間として、あらかじめ適切な値を設定しておく。電流値I>T6となってからの経過時間がしきい値T7よりも長くなると、ステップS1326へ進んで駆動回路70bの過熱と判断し、故障フラグF_FAILに1をセットする。つづくステップS1327では、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。一方、タイマ値がしきい値T7以下の場合は、ステップS1328へ進む。ステップS1328では、異常なしと判断して故障フラグF_FAILに0をセットする。
このように、以上説明した第10の実施の形態においては、上述した第1から第9の実施の形態による効果に加えて以下のような作用効果を奏することができる。
コントローラ50は、アクセルペダル反力発生装置70に入力される指令電流およびその入力時間に基づく温度上昇を推定し、アクチュエータ70aもしくは駆動回路70bの過熱を検出する。これにより、温度センサ70cを設けることなく過熱異常を検出することができる。
《第11の実施の形態》
以下に、第11の実施の形態による車両用運転操作補助装置について説明する。第11の実施の形態による車両用運転操作補助装置の基本構成は、図1に示した第1の実施の形態と同様である。ここでは、上述した第1の実施の形態との相違点を主に説明する。
上述した第1から第10の実施の形態では、アクセルペダル反力発生装置70の故障検出時にコントローラ50においてエンジントルク補正処理を行い、エンジントルクを補正するための指令を駆動力制御装置60へ出力した。第11の実施の形態では、アクセルペダル反力発生装置70の故障情報を駆動力制御装置60へ送信し、駆動力制御装置60内でエンジントルクの補正処理を行うようにする。
第11の実施の形態における故障対応処理を、図40(a)(b)のフローチャートを用いて説明する。図40(a)はコントローラ50で実行される処理を示し、図40(b)は駆動力制御装置60のエンジンコントローラ60cで実行される処理を示している。これらの処理は図9のフローチャートのステップS140で実行される。
コントローラ50は、ステップS7401において、ステップS130で設定した故障フラグF_FAIL=1で故障ありと判断したか否かを判定する。F_FAIL=0で異常なしの場合はステップS7402へ進み、タイマT_FAILに初期値を設定する。ステップS7403では、アクセルペダルストロークセンサ62によって検出される現在のアクセルペダル操作量SAを初期値θ0として記憶する。
ステップS7401でF_FAIL=1で故障ありと判断された場合は、ステップS7405へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAIL=0の場合はこの処理を終了する。タイマT_FAILが0でない場合は、ステップS7406へ進んでアクセルペダル61が戻し操作されているかを判断する。ステップS7407でアクセルペダル61の戻し操作ありと判定されると、ステップS7408へ進み、タイマT_FAILを0にリセットする。一方、アクセルペダル61の戻し操作なしと判定されると、ステップS7409へ進み、タイマT_FAILを1減算する。
エンジンコントローラ60cは、ステップS7411でコントローラ50から故障フラグF_FAILを取得し、F_FAIL=1であるか否かを判定する。F_FAIL=0で異常なしの場合はステップS7412へ進み、図5に示したマップに従って、現在のアクセルペダル操作量SAに応じたドライバ要求駆動力TRQ_0を記憶する。F_FAIL=1で故障ありと判断された場合は、ステップS7413へ進む。
ステップS7413ではコントローラ50からタイマT_FAILを取得し、タイマT_FAIL=0か否かを判定する。T_FAIL=0の場合はエンジントルク特性を補正せずにこの処理を終了する。タイマT_FAILが0でない場合は、ステップS7414へ進み、ドライバ要求駆動力の上限値をステップS7412で記憶したTRQ_0に設定する。
このように、コントローラ50とエンジンコントローラ60cとで協働して故障時のエンジントルク特性の補正を行うことによっても、上述した第1から第10の実施の形態と同様の効果を奏することができる。
上述した第1から第11の実施の形態においては、運転操作機器としてアクセルペダル61を用い、リスクポテンシャルRPに応じてアクセルペダル反力制御を行った。ただし、これには限定されず、アクセルペダル反力制御に加えてブレーキペダル反力制御を行うこともできる。また、リスクポテンシャルRPに応じた制駆動力制御を行わずに、アクセルペダル反力制御のみを行うように構成することもできる。
上述した第1から第11の実施の形態においては、自車両と障害物との車間時間THWおよび余裕時間TTCを障害物に対する接近度合いを表すリスクポテンシャルとして算出した。ただし、これには限定されず、車間時間THWと余裕時間TTCのいずれか一方をリスクポテンシャルRPとして算出したり、車間距離DをリスクポテンシャルRPとすることも可能である。
上述した第1から第11の実施の形態では、アクセルペダル反力発生装置70の故障をコントローラ50で検出したが、アクセルペダル反力発生等70が故障の自己診断を行うように構成することもできる。この場合は、コントローラ50はアクセルペダル反力発生装置70から送信される故障自己診断結果の信号を取得し、エンジントルク特性の補正を行う。
上述した第6から第9の実施の形態においては、アクセルペダル操作、ウィンカ操作または操舵操作に基づいて運転者の追い越し意図を判断したが、これらとは別の手法により追越意図を推定することももちろん可能である。また、追越意図ありと判断されたときに、自車両と障害物とのラップ率Laを考慮することなく制御反発力Fcを一義的に低下補正することも可能である。
以上説明した第1から第11の実施の形態においては、レーダ装置10および車速センサ20が走行状態検出手段として機能し、コントローラ50がリスクポテンシャル算出手段、操作反力算出手段、故障検出手段、エンジントルク補正手段、追越意図判断手段、操作反力補正手段、追越意図判断禁止手段、および制駆動力補正手段として機能し、アクセルペダル反力発生装置70が操作反力発生手段として機能し、アクセルペダルストロークセンサ62およびコントローラ50が操作状態検出手段として機能し、駆動力制御装置60および制動力制御装置90が制駆動力制御手段として機能することができる。ただし、これらには限定されず、走行状態検出手段としてのレーダ装置10を、レーザレーダとは別方式のミリ波レーダを用いたり、カメラ装置35を走行状態検出手段として用いることも可能である。また、制駆動力制御手段として駆動力制御装置60のみを用いることもできる。なお、以上の説明はあくまで一例であり、発明を解釈する際、上記の実施形態の記載事項と特許請求の範囲の記載事項の対応関係になんら限定も拘束もされない。
《第12の実施の形態》
本発明の第12の実施の形態による車両用運転操作補助装置について、図面を用いて説明する。図41に、第12の実施の形態による車両用運転操作補助装置2の構成を示すシステム図である。なお、図41において、図1に示した第1の実施の形態と同一の機能を有する箇所には同一の符号を付している。ここでは、上述した第1から第11の実施の形態との相違点を主に説明する。
車両用運転操作補助装置2は、レーダ装置10,車速センサ20,舵角センサ30,障害物検知装置40,コントローラ150,駆動力制御装置60,アクセルペダル反力発生装置70,制動力制御装置90および警報装置100等を備えている。第12の実施の形態においては、アクセルペダル反力発生装置70に加えて、障害物検知装置40、駆動力制御装置60、制動力制御装置90、およびコントローラ150についてもそれぞれ故障診断を行う。
車両用運転操作補助装置2は、自車両周囲の障害物に対する自車両のリスクポテンシャルRPに基づいて、アクセルペダル61に発生する操作反力を制御するとともに、自車両に発生する制駆動力を制御する。リスクポテンシャルRPに応じた操作反力制御と制駆動力制御の実行中にシステムに故障が発生すると、これらの制御が停止してアクセルペダル操作反力および自車両に発生していた減速度や駆動トルクが変化する。このように、システムの故障発生時には運転者の予測とは異なる車両挙動の発生により、運転者に違和感を与える可能性がある。
そこで、第12の実施の形態においては、障害物検知装置40、駆動力制御装置60、アクセルペダル反力発生装置70、制動力制御装置90、およびコントローラ150のそれぞれに対して故障診断を行う。そして、故障が検出された装置に応じた故障対応処理を行うことにより、自車両の加減速度の急変を抑制して運転者に与える違和感を軽減する。
第12の実施の形態による車両用運転操作補助装置2の動作を、図42を用いて詳細に説明する。図42は、第12の実施の形態のコントローラ150における運転操作補助制御処理の処理手順のフローチャートである。本処理内容は、一定間隔、例えば50msec毎に連続的に行われる。
ステップS2100で、車速センサ20によって検出される自車速Vhと、舵角センサ30によって検出される自車両の操舵角δのデータを読み込む。ステップS2200では、アクセルペダルストロークセンサ62によって検出されるアクセルペダル操作量SAを読み込む。
ステップS2300では、車両用運転操作補助装置2を構成する各装置、具体的には、障害物検知装置40、駆動力制御装置60、アクセルペダル反力発生装置70、制動力制御装置90およびコントローラ150に対する故障診断処理を行う。ここでの処理を図43のフローチャートを用いて説明する。ステップS2310では、アクセルペダル反力発生装置70に対する故障診断として、アクセルペダル反力発生装置70に発生する断線故障、過電流故障、および過熱故障の有無を診断する。ここで行う診断処理を図44〜46のフローチャートを用いて説明する。
図44のフローチャートを用いて、アクセルペダル反力発生装置70の断線故障診断について説明する。ステップS2301では、前回周期でコントローラ150からアクセルペダル反力発生装置70へ出力された反力指令値FAに対応する指令電流値が0であるか否かを判定する。指令電流値=0でコントローラ150から反力指令値FAに対応する指令電流が出力されていない場合は、ステップS2302へ進む。ステップS2302では、アクセルペダル反力発生装置70の断線故障の有無を判断するためのタイマT_AP_1を0にリセットする。つづくステップS2303では、異常なしと判断してアクセルペダル反力発生装置70の故障の有無を示すフラグF_FAIL_APに0をセットする。
ステップS2301で指令電流値が0でないと判断されるとステップS2304へ進み、電流センサ70dから取得した電流検出値Iが0であるか否かを判定する。電流検出値I=0の場合はステップS2305へ進み、電流検出値Iが0でない場合はステップS2302へ進む。ステップS2305ではタイマT_AP_1をインクリメントし、つづくステップS2306では、ステップS2305で加算したタイマT_AP_1の値を所定値と比較する。ここで、所定値は、アクセルペダル反力発生装置70の駆動回路70bの応答時間に対して十分に長い時間に設定する。
タイマT_AP_1の値が所定値よりも大きい場合、すなわち、コントローラ150から反力指令値FAに応じた電流指令が出力されているにも関わらず、所定時間経過しても適切な電流値Iが検出されない場合は、ステップS2307へ進む。ステップS2307では、サーボモータ70aもしくは駆動回路70bが断線していると判断して、フラグF_FAIL_APに1をセットする。ステップS2306が否定判定されると、ステップS2303へ進んでフラグF_FAIL_APに0をセットする。
次に、図45のフローチャートを用いて、アクセルペダル反力発生装置70の過電流故障診断について説明する。ステップS2311では、電流センサ70dから取得される電流検出値Iの絶対値が、設計上定めた上限値(設計上限値)よりも大きいか否かを判定する。|電流検出値I|が設計上限値以下の場合はステップS2312へ進み、アクセルペダル反力発生装置70の過電流故障の有無を判断するためのタイマT_AP_2を0にリセットする。つづくステップS2313では、異常なしと判断してアクセルペダル反力発生装置70の故障の有無を示すフラグF_FAIL_APに0をセットする。
ステップS2311で|電流検出値I|が設計上限値よりも大きいと判断されるとステップS2314へ進み、タイマT_AP_2をインクリメントする。つづくステップS2315では、ステップS2314で加算したタイマT_AP_2の値を所定値と比較する。タイマT_AP_2の値が所定値よりも大きい場合、すなわち、所定時間継続して設計上限値を超える電流検出値Iが検出された場合は、ステップS2316へ進む。ステップS2316では、過電流(短絡)故障と判断して、フラグF_FAIL_APに1をセットする。ステップS2315が否定判定されると、ステップS2313へ進んでフラグF_FAIL_APに0をセットする。
次に、図46のフローチャートを用いて、アクセルペダル反力発生装置70の過熱故障診断について説明する。ステップS2321では、温度センサ70cから取得される駆動回路70bの温度Cが、設計上定めた上限値(設計上限値)よりも大きいか否かを判定する。温度Cが設計上限値以下の場合はステップS2322へ進み、アクセルペダル反力発生装置70の過熱故障の有無を判断するためのタイマT_AP_3を0にリセットする。つづくステップS2323では、異常なしと判断してアクセルペダル反力発生装置70の故障の有無を示すフラグF_FAIL_APに0をセットする。
ステップS2321で温度Cが設計上限値よりも大きいと判断されるとステップS2324へ進み、タイマT_AP_3をインクリメントする。つづくステップS2325では、ステップS2324で加算したタイマT_AP_3の値を所定値と比較する。タイマT_AP_3の値が所定値よりも大きい場合、すなわち、所定時間継続して設計上限値を超える温度Cが検出された場合は、ステップS2326へ進む。ステップS2326では、過熱故障と判断して、フラグF_FAIL_APに1をセットする。ステップS2325が否定判定されると、ステップS2323へ進んでフラグF_FAIL_APに0をセットする。
このようにステップS2310でアクセルペダル反力発生装置70に対する故障診断処理を行った後、ステップS2330へ進む。
ステップS2330では、制動力制御装置90に対する故障診断処理を行う。制動力制御装置装置90に対する故障診断としては、例えば制動力制御装置90に発生する断線故障、および過電流故障の有無を診断する。ここで行う診断処理を図47,48のフローチャートを用いて説明する。
まず、図47のフローチャートを用いて、制動力制御装置90の断線故障診断について説明する。ステップS2331では、前回周期でコントローラ150から制動力制御装置90へ出力された制動力補正量ΔDbに対応する指令電流値が0であるか否かを判定する。指令電流値=0でコントローラ150から制動力補正量ΔDbに対応する指令電流が出力されていない場合は、ステップS2332へ進む。ステップS2332では、制動力制御装置90の断線故障の有無を判断するためのタイマT_AP_4を0にリセットする。つづくステップS2333では、異常なしと判断して制動力制御装置90の故障の有無を示すフラグF_FAIL_BCに0をセットする。
ステップS2331で指令電流値が0でないと判断されるとステップS2334へ進み、制動力制御装置90に流れる電流を検出する電流センサ(不図示)から取得した電流検出値が0であるか否かを判定する。電流検出値=0の場合はステップS2335へ進み、電流検出値が0でない場合はステップS2332へ進む。ステップS2335ではタイマT_AP_4をインクリメントし、つづくステップS2336では、ステップS2335で加算したタイマT_AP_4の値を所定値と比較する。ここで、所定値は、制動力制御装置90の駆動回路の応答時間に対して十分に長い時間に設定する。
タイマT_AP_4の値が所定値よりも大きい場合、すなわち、コントローラ150から制動力制御装置90を構成するポンプ駆動モータやバルブソレノイドに電流指令が出力されているにも関わらず、所定時間経過しても適切な電流値が検出されない場合は、ステップS2337へ進む。ステップS2337では、モータや駆動回路が断線していると判断して、フラグF_FAIL_BCに1をセットする。ステップS2336が否定判定されると、ステップS2333へ進んでフラグF_FAIL_BCに0をセットする。
次に、図48のフローチャートを用いて、制動力制御装置90の過電流故障診断について説明する。ステップS2341では、電流センサから取得される制動力制御装置90の電流検出値の絶対値が、設計上定めた上限値(設計上限値)よりも大きいか否かを判定する。|電流検出値|が設計上限値以下の場合はステップS2342へ進み、制動力制御装置90の過電流故障の有無を判断するためのタイマT_AP_5を0にリセットする。つづくステップS2343では、異常なしと判断して制動力制御装置90の故障の有無を示すフラグF_FAIL_BCに0をセットする。
ステップS2341で|電流検出値|が設計上限値よりも大きいと判断されるとステップS2344へ進み、タイマT_AP_5をインクリメントする。つづくステップS2345では、ステップS2344で加算したタイマT_AP_5の値を所定値と比較する。タイマT_AP_5の値が所定値よりも大きい場合、すなわち、所定時間継続して設計上限値を超える電流検出値が検出された場合は、ステップS2346へ進む。ステップS2346では、過電流(短絡)故障と判断して、フラグF_FAIL_BCに1をセットする。ステップS2345が否定判定されると、ステップS2343へ進んでフラグF_FAIL_BCに0をセットする。
このように、ステップS2330で制動力制御装置90に対する故障診断を行った後、ステップS2350へ進む。
ステップS2350では、駆動力制御装置60に対する故障診断を行う。ここでは、例として、駆動力制御装置60に発生する断線故障の有無を診断する。図49に示すように、エンジンクリーナとエンジンとを連通する吸気管内には、第1スロットル弁60dと第2スロットル弁60eが設けられている。第1スロットル弁60dはアクセルワイヤを介して運転者によるアクセルペダル61の踏み込み操作に応じて開閉される。第2スロットル弁60eは、コントローラ150から出力される駆動力補正量ΔDaに応じて、エンジンコントローラ60cで制御されるアクチュエータ(モータ)60fによって駆動制御される。第2スロットル弁60eは、リスクポテンシャルRPに応じた駆動力制御を行わない場合は全開にされ、駆動力制御中はアクチュエータ60fによって駆動力補正量ΔDaに応じて閉じられる。これにより、自車両に発生する駆動力が低減される。
アクチュエータ60fもしくは駆動回路が断線して駆動力制御装置60が故障した場合は、第2スロットル弁60eが全開状態となるため、運転者のアクセルペダル操作に応じた駆動力が発生することになる。
以下に、駆動力制御装置60に対する故障診断処理を図50のフローチャートを用いて説明する。ステップS2351では、前回周期でコントローラ150から駆動力制御装置60へ出力された駆動力補正量ΔDaに対応する指令電流値が0であるか否かを判定する。指令電流値=0でコントローラ150から駆動力補正量ΔDaに対応する指令電流が出力されていない場合は、ステップS2352へ進む。ステップS2352では、駆動力制御装置60の断線故障の有無を判断するためのタイマT_AP_6を0にリセットする。つづくステップS2353では、異常なしと判断して駆動力制御装置60の故障の有無を示すフラグF_FAIL_DCに0をセットする。
ステップS2351で指令電流値が0でないと判断されるとステップS2354へ進み、駆動力制御装置60に流れる電流を検出する電流センサ(不図示)から取得した電流検出値が0であるか否かを判定する。電流検出値=0の場合はステップS2355へ進み、電流検出値が0でない場合はステップS2352へ進む。ステップS2355ではタイマT_AP_6をインクリメントし、つづくステップS2356では、ステップS2355で加算したタイマT_AP_6の値を所定値と比較する。ここで、所定値は、駆動力制御装置60の駆動回路の応答時間に対して十分に長い時間に設定する。
タイマT_AP_6の値が所定値よりも大きい場合、すなわち、コントローラ150からアクチュエータ60fに対して電流指令が出力されているにも関わらず、所定時間経過しても適切な電流値が検出されない場合は、ステップS2357へ進む。ステップS2357では、アクチュエータ60fや駆動回路が断線していると判断して、フラグF_FAIL_DCに1をセットする。ステップS2356が否定判定されると、ステップS2353へ進んでフラグF_FAIL_DCに0をセットする。
このように、ステップS2350で駆動力制御装置60に対する故障診断処理を行った後、ステップS2370へ進む。ステップS2370では、障害物検知装置40、とくに自車両前方の障害物を検出するレーダ装置10に対する故障診断処理を行う。ここでの処理を、図51のフローチャートを用いて説明する。
ステップS2371では、レーダ装置10の発光部10a(図2参照)が発光中であるか否かを判定する。発光部10aが自車両前方にレーザ光を照射していない場合は、ステップS2372へ進む。ステップS2372では、レーダ装置10の故障の有無を判断するためのタイマT_AP_7を0にリセットする。つづくステップS2373では、異常なしと判断してレーダ装置10の故障の有無を示すフラグF_FAIL_ODに0をセットする。
ステップS2371で発光中であると判定されるとステップS2374へ進む。ステップS2374では、発光部10aから出力され、前方の障害物で反射された反射光が受光部10bで受光されたか否かを判定する。反射光が正常に受光された場合はステップS2372へ進み、レーザ光が出力されたにも関わらず反射光が受光されない場合はステップS2375へ進む。ステップS2375ではタイマT_AP_7をインクリメントし、つづくステップS2376では、ステップS2375で加算したタイマT_AP_7の値を所定値と比較する。
タイマT_AP_7の値が所定値よりも大きく、レーザ光の出力中に所定時間継続して反射光が受光されない場合は、ステップS2377へ進む。ステップS2377では、レーダ装置10が故障していると判断して、フラグF_FAIL_ODに1をセットする。ステップS2376が否定判定されると、ステップS2373へ進んでフラグF_FAIL_ODに0をセットする。
このように、ステップS2370で障害物検知装置40に対する故障診断処理を行った後、ステップS2390へ進む。ステップS2390でコントローラ150は、故障の自己診断処理を行う。コントローラ150は、RAMおよびROM等を備えている。ここでは、RAMへの書き込み・読出しのチェック、およびROM書き込み値のチェックを行い、異常が検出された場合に、コントローラ150の故障ありと判断する。コントローラ150の故障自己診断処理を、図52のフローチャートを用いて説明する。
ステップS2391では、RAMのチェックを行う。具体的には、図53に示すように、RAMの各領域について書き込み値と読出し値とを照合する。例えば、書き込み値が1881h(“h”は16進数の意)の場合、読出し値も1881hであれば両者は一致すると判断する。そして、順次アドレスを進めてRAMの全アドレス領域について書き込み値と読出し値との照合を繰り返す。
ステップS2392では、RAMの全アドレス領域についての照合結果から、RAMに異常ありか否かを判定する。全アドレス領域について書き込み値と読出し値とが一致すればRAMは正常であると判断して、ステップS2393へ進む。一つでも不一致があればRAMは異常であると判断して、ステップS2395へ進む。
ステップS2393では、ROMのチェックを行う。具体的には、図54に示すように、ROMの各領域の値を順次読み出して加算する。さらに、ROM合計値も読み出す。ステップS2394では、ROMの各領域の値の加算結果と読み出したROM合計値とから、ROMに異常ありか否かを判定する。ROM領域の値の加算結果とROM合計値とが一致する場合はROMは正常であると判断して、ステップS2396へ進む。不一致の場合はROMは異常であると判断してステップS2395へ進む。
ステップS2395では、コントローラ150が故障していると判断してコントローラ150の故障の有無を示すフラグF_FAIL_CUに1をセットする。ステップS2396では、コントローラ150に異常なしと判断してフラグF_FAIL_CUに0をセットする。
このように、ステップS2390におけるコントローラ150の故障自己診断処理を終了すると、ステップS2300の故障診断処理を終了する。その後、ステップS2400へ進み、故障対応処理を行う。ここでの処理を、図55のフローチャートを用いて説明する。
ステップS2410では、ステップS2300の故障診断処理において各装置の故障が検出されたか否かを判定する。F_FAIL_AP、F_FAIL_BC、F_FAIL_DC、F_FAIL_OD、およびF_FAIL_CUの少なくともいずれかが1で、アクセルペダル反力発生装置70、制動力制御装置90、駆動力制御装置60、障害物検知装置40、およびコントローラ150の少なくともいずれかが故障ありと判定された場合は、ステップS2420へ進む。ステップS2410が否定判定されると、この処理を終了する。
ステップS2420では、後述するフェールセーフ移行処理が終了したことを表すフラグF_FAIL_ENDが0か否かを判定する。フラグF_FAIL_END=0で、現時点でフェールセーフ移行処理が終了していないと判定されると、ステップS2430へ進み、フラグF_FAIL_END=1の場合は、この処理を終了する。なお、フラグF_FAIL_ENDの初期値は0に設定されている。
ステップS2430では、車両用運転操作補助装置2のシステムが故障していることを表すフラグF_FAILに1をセットする。フラグF_FAILの初期値も0に設定されている。ステップS2440では、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。ステップS2450では、現在、リスクポテンシャルRPに応じた制駆動力制御および操作反力制御が行われているか否かを判定する。具体的には、前回周期で車間時間THWもしくは余裕時間TTCに基づく制御反発力Fcが0より大きな値として算出されていたか否かを判定する。ステップS2450が肯定判定されるとステップS2460へ進み、否定判定されるとこの処理を終了する。
ステップS2460では、故障が検出されてから制駆動力制御および操作反力制御を終了するまでの間の移行処理(フェールセーフ移行処理)を行う。フェールセーフ移行処理では、システムの故障により制駆動力制御や操作反力制御が停止することで自車両に発生する加減速度が急に変化してしまうことを抑制するための制御を行う。ここでの処理を、図56のフローチャートを用いて説明する。
ステップS2461では、制動力制御装置90が故障しているか否かを判定する。制動力制御装置90が故障している場合(F_FAIL_BC=1)はステップS2462へ進み、後述するようにエンジンブレーキ制御処理を行う。制動力制御装置90が故障していない場合はステップS2463へ進み、駆動力制御装置60が故障しているか否かを判定する。駆動力制御装置60が故障している場合(F_FAIL_DC=1)はステップS2464へ進み、後述するようにブレーキ制御処理を行う。駆動力制御装置60が故障していない場合はステップS2465へ進み、アクセルペダル反力発生装置70が故障しているか否かを判定する。アクセルペダル反力発生装置70が故障している場合(F_FAIL_AP=1)はステップS2466へ進み、後述するようにエンジン出力補正処理を行う。
アクセルペダル反力発生装置70が故障していない場合はステップS2467へ進み、障害物検出センサ、特にレーダ装置10が故障しているか否かを判定する。レーダ装置10が故障している場合(F_FAIL_OD=1)はステップS2468へ進み、後述するように制御出力漸減処理を行う。レーダ装置10が故障していない場合はステップS2469へ進み、コントローラ150が故障しているか否かを判定する。コントローラ150が故障している場合はステップS2468へ進み、故障していない場合はこの処理を終了する。
次に、ステップS2462で行うエンジンブレーキ制御処理について、図57のフローチャートを用いて説明する。まず、ステップS24621で、制動力制御装置90の故障が初めて検知されたか否かを判定する。具体的には、制動力制御装置90の故障の有無を表すフラグF_FAIL_BCの値が今回周期で0から1に変化した場合は、故障が初めて検知されたと判断してステップS24622へ進む。ステップS24622では、前回周期で算出された、すなわち故障検知直前に算出された制御反発力Fcを、フェールセーフ移行処理において用いる反発力FC0として記憶する。
ステップS24621が否定判定されるとステップS24623へ進み、反発力FC0=0であるか否かを判定する。FC0=0の場合は、ステップS24624へ進み、フェールセーフ移行処理終了と判断してこの処理を終了する。FC0が0でない場合は、ステップS24625へ進み、反発力FC0を漸減する。具体的には、前回周期で設定した反発力FC0から、所定値ΔFCを減算した値(FC0―ΔFC)を、新たな反発力FC0として設定する。所定値ΔFCは、運転者に違和感を与えない程度の反発力の変化量として予め適切に設定しておく。例えば、故障直前の制御反発力Fc(=FC0)を1秒間で0まで低下させる程度の変化量に設定する。
ステップS24626では、ステップS24625で算出した反発力FC0を、駆動力補正量ΔDaとして設定し(ΔDa=−FC0)、駆動力制御装置60へ出力する。ステップS24627では、制動力補正量ΔDbに0をセットする(ΔDb=0)。つづくステップS24628では、ステップS24625で算出した反発力FC0に基づいて、アクセルペダル反力制御指令値FAを算出し、アクセルペダル反力発生装置70へ出力する。具体的には、図58に示すような制御反発力Fcとアクセルペダル反力制御指令値FAとの関係に従って、反発力FC0に基づく反力制御指令値FAを算出する。図58に示すマップは、リスクポテンシャルRPに応じた操作反力制御においてアクセルペダル反力制御指令値FAを算出するためのマップ(図18参照)と同じである。
これにより、制動力制御装置90が故障ありと検出されると、故障直前のリスクポテンシャルRPに応じた制御反発力Fc(=FC0)分だけ、駆動力が低下方向に補正され、いわゆるエンジンブレーキが発生する。反発力FC0が漸減すると駆動力の低下量も徐々に低下し、運転者によるアクセルペダル操作に応じた駆動力が発生する状態へと徐々に移行する。このとき、アクセルペダル61に発生している反発力FC0に応じた操作反力も徐々に低下する。なお、制動力制御装置90は故障しているため制動力制御は行われない。
ステップS2464で行うブレーキ制御処理について、図59のフローチャートを用いて説明する。まず、ステップS24641で、駆動力制御装置60の故障が初めて検知されたか否かを判定する。具体的には、駆動力制御装置70の故障の有無を表すフラグF_FAIL_DCの値が今回周期で0から1に変化した場合は、故障が初めて検知されたと判断してステップS24642へ進む。ステップS24642では、前回周期で算出された、すなわち故障検知直前に算出された制御反発力Fcを、フェールセーフ移行処理において用いる反発力FC0として記憶する。
ステップS24641が否定判定されるとステップS24643へ進み、反発力FC0=0であるか否かを判定する。FC0=0の場合は、ステップS24644へ進み、フェールセーフ移行処理終了と判断してこの処理を終了する。FC0が0でない場合は、ステップS24645へ進み、反発力FC0を漸減する。具体的には、前回周期で設定した反発力FC0から、所定値ΔFCを減算した値(FC0―ΔFC)を、新たな反発力FC0として設定する。所定値ΔFCは、運転者に違和感を与えない程度の反発力の変化量として予め適切に設定しておく。例えば、故障直前の制御反発力Fc(=FC0)を1秒間で0まで低下させる程度の変化量に設定する。
ステップS24646では、ステップS24645で算出した反発力FC0を、制動力補正量ΔDbとして設定し(ΔDb=FC0)、制動力制御装置90へ出力する。ステップS24647では、駆動力補正量ΔDaに0をセットする(ΔDa=0)。つづくステップS24648では、ステップS24645で算出した反発力FC0に基づいて、図58に示したマップに従ってアクセルペダル反力制御指令値FAを算出し、アクセルペダル反力発生装置70へ出力する。
これにより、駆動力制御装置60が故障ありと検出されると、故障直前のリスクポテンシャルRPに応じた制御反発力Fc(=FC0)分だけ、制動力が増加方向に補正される。反発力FC0が漸減すると制動力の増加量も徐々に低下し、運転者によるアクセルペダル操作に応じた駆動力が発生する状態へと徐々に移行する。このとき、アクセルペダル61に発生している反発力FC0に応じた操作反力も徐々に低下する。なお、駆動力制御装置60は故障しているため駆動力制御は行われない。
次に、ステップS2466で行うエンジン出力補正処理について、図60のフローチャートを用いて説明する。まず、ステップS24661で、アクセルペダル反力発生装置70の故障が初めて検知されたか否かを判定する。具体的には、アクセルペダル反力発生装置60の故障の有無を表すフラグF_FAIL_APの値が今回周期で0から1に変化した場合は、故障が初めて検知されたと判断してステップS24662へ進む。
ステップS24662では、タイマT_FAILに初期値を設定する。ここで、初期値はアクセルペダル反力発生装置70の故障後、運転者のアクセルペダル操作に反射的な反応が生じるまでの最大時間として、例えば1秒に設定する。ステップS24663では、前回周期で算出された、すなわち故障検知直前に算出された駆動力補正量ΔDa、制動力補正量ΔDbを、それぞれフェールセーフ移行処理において用いる補正量X_D0、X_B0として記憶する。
ステップS24664では、前回周期で算出された、すなわち故障検知直前にアクセルペダル操作量SAに応じて算出されたドライバ要求駆動力TRQ_0を記憶する。なお、コントローラ150は、図5に示したマップと同様のマップを備えているとする。
ステップS24661が否定判定されるとステップS24665へ進み、タイマT_FAIL=0か否かを判定する。タイマT_FAILが0でない場合は、ステップS24666へ進んでアクセルペダル61が戻し操作されているかを判断する。ここでの処理を、図61のフローチャートを用いて説明する。
まず、ステップS661では、アクセルペダル反力制御装置70の故障が検出されているか否かを判定する。アクセルペダル反力制御装置70の異常なし(F_FAIL_AP=0)の場合は、ステップS662へ進む。ステップS662では、アクセルペダルストロークセンサ62で検出される現在のアクセルペダル操作量SAを初期値θ0として設定する。続くステップS663では、アクセルペダル61の戻し操作なしと判断する。
ステップS661でアクセルペダル反力制御装置70の故障あり(F_FAIL_AP=1)と判定されると、ステップS664へ進む。ステップS664では、アクセルペダルストロークセンサ62で検出される現在のアクセルペダル操作量SAが初期値θ0よりも大きいか否かを判定する。SA>θ0の場合はステップS665へ進み、現在のアクセルペダル操作量SAを初期値θ0として設定する。ステップS666では、アクセルペダル61の戻し操作なしと判断する。
ステップS664でSA≦θ0と判定された場合は、ステップS667へ進み、初期値θ0とSAとの差(θ0−SA)がしきい値θ_DECよりも大きいか否かを判定する。しきい値θ_DECはアクセルペダル61が戻し方向に操作されたと判断するために適切に設定されたしきい値である。(θ0−SA)>θ_DECの場合はステップS668へ進んで、アクセルペダル61の戻し操作ありと判断する。(θ0−SA)≦θ_DECの場合はステップS666へ進んで戻し操作なしと判断する。
このようにステップS24666でアクセルペダル61の戻し操作を判断した後、ステップS24667へ進む。ステップS24667でアクセルペダル61の戻し操作ありと判定されると、ステップS24668へ進み、タイマT_FAILを0にリセットする。
一方、アクセルペダル61の戻し操作なしと判定されると、ステップS24669へ進み、ドライバ要求駆動力の上限値をステップS24664で記憶したTRQ_0に設定する。コントローラ150は、アクセルペダル操作量SAに基づくドライバ要求駆動力Fdaを要求駆動力上限値TRQ_0で制限する。したがって、アクセルペダル反力発生装置70の故障時に運転者がアクセルペダル61を踏み込んでしまっても、自車両に発生する駆動力の増加が抑制される。ステップS24670では、タイマT_FAILを1減算する。
ステップS24665でタイマT_FAIL=0と判定されると、ステップS24671へ進む。ステップS24671では、ステップS24663で記憶した駆動力補正量X_D0から所定の変化量ΔX_Dを減算した値を、駆動力補正量X_D0として新たに設定する。また、ステップS24663で記憶した制動力補正量X_B0から所定の変化量ΔX_Bを減算した値を、制動力補正量X_B0として新たに設定する。所定の変化量ΔX_D、ΔX_Bは、運転者に違和感を与えない程度の駆動力および制動力の変化量として、予め適切に設定しておく。例えば、故障直前の駆動力補正量X_D0および制動力補正量X_B0をそれぞれ1秒程度で0まで減少させるような値として、変化量ΔX_D、ΔX_Bをそれぞれ設定する。
ステップS24672では、ステップS24671で算出した駆動力補正量X_D0および制動力補正量X_B0が、ともに0であるか否かを判定する。X_D0=0、かつX_B0=0の場合は、ステップS24673へ進み、フェールセーフ移行処理終了と判断してこの処理を終了する。一方、ステップS24672が否定判定されると、ステップS24673をスキップしてこの処理を終了する。
次に、ステップS2468で行う制御出力漸減処理について、図62のフローチャートを用いて説明する。まず、ステップS24681で、障害物検知装置40の故障、もしくはコントローラ150の故障が初めて検知されたか否かを判定する。具体的には、レーダ装置10の故障の有無を表すフラグF_FAIL_ODの値が今回周期で0から1に変化した場合、もしくは、コントローラ150の故障の有無を表すフラグF_FAIL_CUの値が今回周期で0から1に変化した場合は、故障が初めて検知されたと判断してステップS24682へ進む。
ステップS24682では、前回周期で算出された、すなわち故障検知直前に算出された駆動力補正量ΔDa、制動力補正量ΔDb、およびアクセルペダル反力制御指令値FAを、それぞれフェールセーフ移行処理において用いる補正量X_D0、X_B0、X_R0として記憶する。
ステップS24681が否定判定されると、ステップS24683へ進む。ステップS24683では、ステップS24682で記憶した駆動力補正量X_D0から所定の変化量ΔX_Dを減算した値を、駆動力補正量X_D0として新たに設定する。また、制動力補正量X_B0から所定の変化量ΔX_Bを減算した値を、制動力補正量X_B0として新たに設定する。同様に、アクセルペダル反力制御指令値X_R0から所定の変化量ΔX_Rを減算した値を、アクセルペダル反力制御指令値X_R0として新たに設定する。
所定の変化量ΔX_D、ΔX_Bは、運転者に違和感を与えない程度の駆動力および制動力の変化量として、予め適切に設定しておく。例えば、故障直前の駆動力補正量X_D0および制動力補正量X_B0をそれぞれ1秒程度で0まで減少させるような値として、変化量ΔX_D、ΔX_Bをそれぞれ設定する。また、所定の変化量ΔX_Rは、運転者に違和感を与えない程度のアクセルペダル操作反力の変化量として、予め適切に設定しておく。例えば、故障直前のアクセルペダル反力制御指令値X_R0を1秒程度で0まで減少させるような値として、変化量ΔX_Rを設定する。
ステップS24684では、ステップS24683で算出した駆動力補正量X_D0、制動力補正量X_B0、およびアクセルペダル反力制御指令値X_R0が、全て0であるか否かを判定する。X_D0=0、かつX_B0=0、かつX_R0=0の場合は、ステップS24685へ進み、フェールセーフ移行処理終了と判断してこの処理を終了する。一方、ステップS24684が否定判定されると、ステップS24685をスキップしてこの処理を終了する。
ステップS2460においてフェールセーフ移行処理を行った後、図55のフローチャートのステップS2470へ進む。ステップS2470では、フェールセーフ移行処理が終了したか否かを判定する。ステップS2462のエンジンブレーキ制御処理、ステップS2464のブレーキ制御処理、ステップS2466のエンジン出力補正処理、もしくはステップS2468の制御出力漸減処理において、フェールセーフ移行処理終了と判断した場合は、ステップS2480へ進む。ステップS2480では、フェールセーフ移行処理が終了したことを表すフラグF_FAIL_ENDに1をセットしてこの処理を終了する。ステップS2470が否定判定されると、ステップS2480をスキップしてこの処理を終了する。
このように、ステップS2400において故障対応処理を行った後、図42のフローチャートのステップS2500へ進む。ステップS2500では、車両用運転操作補助装置2のシステムが故障していることを表すフラグF_FAILが0であるか否かを判定する。F_FAIL=1でシステムが故障している場合は、この処理を終了する。F_FAIL=0でシステム故障なしの場合は、ステップS2600へ進み、リスクポテンシャルRPに応じた操作反力制御および制駆動力制御を行う。ステップS2600〜S2900での処理は、第1の実施の形態の図9のフローチャートのステップS150〜S180での処理と同様であるので説明を省略する。
ステップS3000では、アクセルペダル操作反力および制駆動力補正量を算出する際の基準となる制御反発力Fcを算出する。ここでの処理を、図63のフローチャートを用いて説明する。
まず、ステップS3001で、ステップS2900で算出した車間時間THWをしきい値TH_THWと比較する。車間時間THWが制御開始を判断するために適切に設定されたしきい値TH_THW(例えば1sec)より小さい場合(THW<TH_THW)は、ステップS3002へ進む。ステップS3002では、自車速Vhと車間時間THWを用いて、以下の(式10)から車間時間THWに基づく反発力F_THWを算出する。
F_THW=K_THW×(TH_THW−THW)×Vh ・・・(式10)
(式10)においてK_THWは車間時間THWに関連付けた仮想弾性体のばね定数であり、TH_THW・Vhは仮想弾性体の長さに相当する。
ステップS3001でTHW≧TH_THWと判定された場合は、ステップS3003へ進んで反発力F_THW=0にする。
ステップS3004では、ステップS2900で算出した余裕時間TTCをしきい値TH_TTCと比較する。余裕時間TTCが制御開始を判断するために適切に設定されたしきい値TH_TTC(例えば10sec)より小さい場合(TTC<TH_TTC)は、ステップS3005へ進む。ステップS3005では、相対速度Vrと余裕時間TTCを用いて、以下の(式11)から余裕時間TTCに基づく反発力F_TTCを算出する。
F_TTC=K_TTC×(TH_TTC−TTC)×Vr ・・・(式11)
(式11)においてK_TTCは余裕時間TTCに関連付けた仮想弾性体のばね定数であり、TH_TTC・Vrは仮想弾性体の長さに相当する。
ステップS3004でTTC≧TH_TTCと判定された場合は、ステップS3006へ進んで反発力F_TTC=0にする。
つづくステップS3007では、ステップS3002またはS3003で算出した車間時間THWに基づく反発力F_THWと、ステップS3005またはS3006で算出した余裕時間TTCに基づく反発力F_TTCのうち、大きい方の値を制御用の反発力Fcとして選択する。
このようにステップS3000で制御反発力Fcを算出した後、ステップS3100へ進む。ステップS3100では、ステップS3000で算出した制御反発力Fcを用いて、制駆動力制御を行う際の駆動力補正量ΔDaおよび制動力補正量ΔDbを算出する。ここでの制駆動力補正量の算出処理を、図64のフローチャートを用いて説明する。
まず、ステップS3101でドライバ要求駆動力Fdaを推定する。コントローラ50内には、駆動力制御装置60内に記憶されたドライバ要求駆動力算出マップ(図5)と同一のものが用意されており、アクセルペダル操作量SAに従って、ドライバ要求駆動力Fdaを推定する。
ステップS3102で、ステップS3101で推定したドライバ要求駆動力Fdaと制御反発力Fcとの大小関係を比較する。ドライバ要求駆動力Fdaが制御反発力Fc以上(Fda≧Fc)の場合は、ステップS3103へ進む。ステップS3103では、駆動力補正量ΔDaとして−Fcをセットし、ステップS3104で制動力補正量ΔDbに0をセットする。
一方、ステップS3102が否定判定され、ドライバ要求駆動力Fdaが制御反発力Fcより小さい場合(Fda<Fc)は、駆動力制御装置60のみでは目標とする補正量を出力できない。そこで、ステップS3105において駆動力補正量ΔDaに−Fdaをセットし、ステップS3106で制動力補正量ΔDbとして、補正量の不足分(Fc−Fda)をセットする。この場合、車両の減速挙動としてドライバには察知される。
このようにステップS3100で制駆動力補正量を算出した後、ステップS3200へ進む。ステップS3200では、ステップS3000で算出した制御反発力Fcに基づいて、図58のマップに従ってアクセルペダル反力制御指令値FAを算出する。
つづくステップS3300では、ステップS3100で算出した駆動力補正量ΔDa、及び制動力補正量ΔDbをそれぞれ駆動力制御装置60、及び制動力制御装置90に出力する。駆動力制御装置60は、駆動力補正量ΔDaと要求駆動力Fdaとから目標駆動力を算出し、算出した目標駆動力を発生するようにエンジンコントローラ60cに指令を出力する。また、制動力制御装置90は、制動力補正量ΔDbと要求制動力Fdbとから目標制動力を算出し、目標制動力を発生するようにブレーキ液圧コントローラ90cに指令を出力する。
ステップS3400では、ステップS3200で算出したアクセルペダル反力制御指令値FAをアクセルペダル反力発生装置70に出力する。アクセルペダル反力発生装置70は、アクセルペダル操作量SAに応じた通常の反力特性に、コントローラ150から入力される指令値に応じた反力を付加するようにアクセルペダル反力を制御する。これにより、今回の処理を終了する。
コントローラ150は、上述したように故障の自己診断処理(ステップS2390)を行ってRAMやROMの異常を監視しているが、コントローラ150自体が完全に停止する場合もある。この場合は、コントローラ150における故障診断処理および故障対応処理(ステップSS2300,S2400)が行えなくなってしまう。そこで、制動力制御装置90、駆動力制御装置60、およびアクセルペダル反力発生装置70は、それぞれコントローラ150からの制御指令更新を監視し、コントローラ150に異常があるか否かを判定するという機能も備えている。
以下に、制動力制御装置90におけるコントローラ150の異常判断処理を、図65のフローチャートを用いて説明する。まず、ステップS910において、コントローラ150からの制御指令の更新の有無を判定する。コントローラ150から制動制御装置90に対して制御指令が出力されている場合、具体的には制動力補正量ΔDbが出力されている場合は、ステップS920へ進む。
ステップS920では、コントローラ150からの制御指令更新を監視する通信監視タイマを0にリセットする。ステップS930では、コントローラ150から出力された制御指令(制動力補正量ΔDb)を記憶する。ステップS940では、制御指令に基づく動作を行い、自車両に発生する制動力を調整する。
ステップS910が否定判定されると、ステップS950へ進み、通信監視タイマを加算する。ステップS960ではステップS950で加算した通信監視タイマの値をしきい値と比較する。しきい値は、コントローラ150の通信異常を判断するための値であり、コントローラ150の正常動作時の通信間隔よりも十分大きな値として予め適切に設定されている。通信監視タイマの値がしきい値以下の場合は、ステップS970へ進む。ステップS970では、ステップS930で記憶した制御指令に基づいて制動力制御を行う。具体的には、ステップS930で記憶した制動力補正量ΔDbに基づいて、制動力を調整する。
一方、ステップS960で通信監視タイマの値がしきい値よりも大きいと判定されると、ステップS980へ進んでコントローラ150に異常ありと判定する。ステップS980では、ステップS930で記憶した制御指令に基づいて制動力制御装置90による制動力制御を徐々に終了させる。具体的には、ステップS930で記憶した制動力補正量ΔDbを漸減し、制動力補正量ΔDbが0に低下するまで、漸減した制動力補正量ΔDbを用いて制動力を調整する。
このように、コントローラ150からの制御指令が所定時間継続して停止した場合は、コントローラ150に異常ありと判定する。コントローラ150の異常時は、異常判定直前の制御指令を所定時間保持し、その後、徐々に漸減して制御を終了させる。
なお、ここでは、制動力制御装置90においてコントローラ150の異常を判断する場合を例として説明したが、駆動力制御装置60およびアクセルペダル反力発生装置70においてコントローラ150の異常を判断する場合も、同様の処理を行う。
次に、第12の実施の形態による車両用運転操作補助装置2の作用、とくに制動力制御装置90が故障した場合の作用を説明する。図66(a)〜(g)にアクセルペダル操作量SA,制御反発力Fc,エンジン出力指令、制動力制御指令、制動力制御装置故障フラグF_FAIL_BC、警報表示、および車両用運転操作補助装置2の制御状態の時間変化の一例を示す。アクセルペダル61は一定の操作量SAで踏み込まれ、リスクポテンシャルRPに応じた制御反発力Fcは一定であるとする。制御反発力Fcに応じて、エンジン出力は0に制御され、自車両には制動力が発生している。
このような車両用運転操作補助装置2の通常制御の状態から、制動力制御装置90の故障ありと判定されると(F_FAIL_BC=1)、リスクポテンシャルRPに応じた制動力制御は停止し、自車両に発生していた減速度が低下する。これに伴い、時間t1で制動力制御装置90の故障に対応したフェールセーフ移行処理が開始される。
具体的には、故障以前の制御反発力Fcの値に応じてエンジン出力を低下させてエンジンブレーキを発生させる。ここでは、制御反発力Fcを所定時間保持した後、制御反発力Fcが漸減させる例を示している。ただし、上述したように制動力制御装置90の故障ありと判定された直後に制御反発力Fcを漸減するように構成することももちろん可能である。さらに、警告灯を点灯するとともに警報音を発生する。警告灯は制動力制御装置90の故障ありと判定されている間、継続して点灯し、警報音は、所定時間後に停止する。
その後、制御反発力Fcを徐々に0まで減少する。これに応じてエンジン出力が徐々に増加し、最終的には運転者によるアクセルペダル操作に応じたエンジントルクを発生するようにする。
このように、以上説明した第12の実施の形態においては、以下のような作用効果を奏することができる。
(1)車両用運転操作補助装置2は、少なくも自車速Vhおよび自車両と自車両前方の障害物との車間距離Dを検出し、これらの検出結果に基づいて障害物に対する自車両の接近度合を表すリスクポテンシャルRPを算出する。さらに、リスクポテンシャルRPに基づいて、運転操作装置に発生する操作反力、および自車両に発生する制駆動力の少なくともいずれかを制御する。そして、車両用運転操作補助装置2に発生する故障を検出し、故障が検出された場合にフェイルセーフ手段を作動させる。車両用運転操作補助装置2は、故障が検出されると、故障による車両挙動の変動を抑制するようにフェイルセーフ手段の作動を制御する。車両用運転操作補助装置2による操作反力制御や制駆動力制御の実行中に車両用運転操作補助装置2に故障が発生すると、それまでリスクポテンシャルRPに応じて制御されていた操作反力や制駆動力の発生が停止することになる。これに応じて自車両に発生する加減速度が変動すると運転者に違和感を与えてしまう。そこで、故障による車両挙動の変動を抑制するようにフェイルセーフ手段を作動させることにより、運転者に与える違和感を軽減することが可能となる。フェイルセーフ手段は、車両用運転操作補助装置2の故障時に、故障によって車両挙動、とくに自車両に発生する加減速度が変動することを抑制し、車両用運転操作補助装置2の制御をスムーズに停止させるための手段である。例えば、フェイルセーフ手段としてアクセルペダル反力発生装置70、制動力制御装置90および駆動力制御装置60等を用いることができる。
(2)車両用運転操作補助装置2のコントローラ150は、故障が検出されない場合の車両挙動を予測し、予測される車両挙動と故障時の実際の車両挙動との差異に応じてフェイルセーフ手段へ指令を出力する。これにより、実際には故障によって車両挙動が変動する場合でも、運転者に与える違和感を軽減することができる。
(3)コントローラ150は、故障が検出されると、予測される車両挙動と実際の車両挙動が一致するようにフェイルセーフ手段を作動させた後、フェイルセーフ手段の作動を徐々に停止する。これにより、実際には故障によって車両挙動が変動する場合でも、車両挙動の変動を抑制しながら車両用運転操作補助装置2の制御をスムーズに停止へと導くことが可能となる。具体的には、故障発生直前に記憶した車両用運転操作補助装置2の制御量を用いて、その制御量を徐々に0まで低下させる。これにより、故障が発生した場合でも、車両用運転操作補助装置2の制御量は急変せず、徐々に0まで低下して制御が終了するので、運転者に与える違和感を軽減することが可能となる。
(4)車両用運転操作補助装置2は、故障が検出されるとフェイルセーフ手段の作動直前に警報を発生する。これにより、故障が発生したことを運転者に確実に報知できる。
(5)駆動力制御装置60の故障が検出されると、制動力制御装置90は駆動力制御装置60の故障による加減速度の変化を抑制するフェイルセーフ手段として作動する。コントローラ150は、予測される車両挙動に実際の車両挙動が一致するように制動力制御装置90を作動させる。具体的には、故障直前の制御反発力FC0を用いて制動力補正量ΔDbを設定し、故障検出後に制動力制御を行う。その後、制動力補正量ΔDbを漸減させる。これにより、自車両に発生する加減速度が急変してしまうことを抑制できる。
(6)制動力制御装置90の故障が検出されると、駆動力制御装置60は制動力制御装置90の故障による加減速度の変化を抑制するフェイルセーフ手段として作動する。コントローラ150は、予測される車両挙動に実際の車両挙動が一致するように駆動力制御装置60を作動させる。具体的には、故障直前の制御反発力FC0を用いて駆動力補正量ΔDaを設定し、故障検出後に駆動力制御を行ってエンジンブレーキを発生させる。その後、駆動力補正量ΔDaを漸減させる。これにより、自車両に発生する加減速度が急変してしまうことを抑制できる。
(7)障害物検知装置40もしくはコントローラ150の故障が検出されると、駆動力制御装置60、制動力制御装置90およびアクセルペダル反力制御装置70は故障による加減速度の変化を抑制するフェイルセーフ手段として作動する。コントローラ150は、予測される車両挙動に実際の車両挙動が一致するように駆動力制御装置60、制動力制御装置90およびアクセルペダル反力制御装置70を作動させる。具体的には、故障直前の駆動力補正量ΔDa,制動力補正量ΔDbおよびアクセルペダル反力制御指令値FAを記憶し、故障発生後に記憶した制御量を用いて操作反力制御および制駆動力制御を行う。その後、これらの制御量を漸減させる。これにより、自車両に発生する加減速度が急変してしまうことを抑制できる。
なお、ステップS2468の制御出力漸減処理において、駆動力補正量X_D0、制動力補正量X_B0、およびアクセルペダル反力制御指令値X_R0の変化量ΔX_D、ΔX_B、ΔX_Rについて、それぞれ故障直前の駆動力補正量X_D0、制動力補正量X_B0、およびアクセルペダル反力制御指令値X_R0を1秒程度で0まで減少させるような値として設定した。ただし、これには限定されず、駆動力補正量X_D0、制動力補正量X_B0、およびアクセルペダル反力制御指令値X_R0が異なるタイミングで0まで低下するように変化量ΔX_D、ΔX_B、ΔX_Rを設定することもできる。
例えば、アクセルペダル61の操作性や加減速度の変動抑制を考慮して、アクセルペダル反力制御指令値X_R0が最も早いタイミングで0まで低下し、次に駆動力補正量X_D0、制動力補正量X_B0の順で0まで低下するように変化量ΔX_D、ΔX_B、ΔX_Rを設定する。また、変化量ΔX_D、ΔX_B、ΔX_RをリスクポテンシャルRPに応じて可変としたり、駆動力補正量X_D0、制動力補正量X_B0、およびアクセルペダル反力制御指令値X_R0の変化率が時間に応じて変化するように設定することもできる。
−第12の実施の形態の変形例−
上述した第12の実施の形態においては、システムの故障が検知された後、フェールセーフ移行処理を開始する前に警報装置100により警報を出力した。ここでは、フェールセーフ移行処理が終了した後に警報を出力する。この場合の故障対応処理を図67のフローチャートを用いて説明する。故障対応処理は、図42のフローチャートのステップS2400で実行される。
ステップS2410〜S2430での処理は、図55のフローチャートにおける処理と同様である。ステップS2430で車両用運転操作補助装置2のシステムが故障していることを表すフラグF_FAILに1をセットした後、ステップS2450に進む。ステップS2450では、現在、リスクポテンシャルRPに応じた制駆動力制御および操作反力制御が行われているか否かを判定する。
ステップS2450が肯定判定されると、ステップS2460へ進んでフェールセーフ移行処理を行い、否定判定されるとこの処理を終了する。ステップS2460でフェールセーフ移行処理を行った後、ステップS2470へ進み、フェールセーフ移行処理が終了したか否かを判定する。フェールセーフ移行処理終了と判断した場合は、ステップS2480へ進み、フェールセーフ移行処理が終了したことを表すフラグF_FAIL_ENDに1をセットする。その後、ステップS2485へ進み、警報装置100により警報ブザーを鳴らすとともに警報ランプを点灯する。ステップS2470が否定判定されると、ステップS2480およびS2485をスキップしてこの処理を終了する。
このように、フェールセーフ移行処理終了後に警報を発生することにより、警報を発生して故障報知を行った後は、車両用運転操作補助装置2による操作反力制御や制駆動力制御が行われない通常の車両の動作へと移行する。具体的には、運転者によるアクセルペダル61の踏み込み量に応じた駆動力が発生するようになる。これにより、警報発生後の車両動作に対する運転者の違和感を軽減することができる。
上述した第12の実施の形態では、運転者が運転操作のために操作する運転操作装置としてアクセルペダル61を用いる例を説明した。ただし、これには限定されず、運転操作装置としてブレーキペダル91やステアリングホイールを用いることも可能である。
以上説明した第12の実施の形態においては、レーダ装置10および車速センサ20が走行状態検出手段として機能し、コントローラ150がリスクポテンシャル算出手段、故障検出手段、およびフェイルセーフ制御手段、車両挙動予測手段、および指令出力手段として機能し、駆動力制御装置60、制動力制御装置90およびアクセルペダル反力発生装置70が制御手段およびフェイルセーフ手段として機能し、警報装置100が警報発生手段として機能することができる。また、駆動力制御装置60が駆動力制御手段として機能し、制動力制御装置90が制動力制御手段として機能することができる。ただし、これらには限定されず、制御手段およびフェイルセーフ手段として駆動力制御装置60と制動力制御手段のみを用いることもできる。なお、以上の説明はあくまで一例であり、発明を解釈する際、上記の実施形態の記載事項と特許請求の範囲の記載事項の対応関係になんら限定も拘束もされない。