次に、本発明の実施形態について図面を用いて詳細に説明するが、本発明は以下の実施形態に限定されることなく、本発明の技術的な概念の中で種々の変形例や応用例をもその範囲に含むものである。
以下、本発明の実施形態について図面を用いて説明する。図1は本実施形態に係る車載制御装置が制御するエンジンとその周辺機器の構成を示している。
エンジン201は、吸入する空気量を計測する吸入空気量センサ(熱式空気流量計)202、エンジン201の吸入する空気流量を調整するスロットル弁203、運転者のアクセル開度を検出するアクセル開度センサ218、スロットル弁203を動作させる電制スロットルモータ204、スロットル弁203の開度を検出するスロットル開度センサ215、吸気管205に設置された吸気管内の圧力を検出する吸気管圧力センサ206を有している。
また、エンジン201の要求する燃料を供給する燃料噴射弁207、エンジン201の回転数を算出するため所定のクランク角度位置に設定された突起を認識するためのクランク角度センサ219、エンジン201の行程を認識するために前述のクランク角度センサとは別に、所定のカム角度位置に設定された突起を認識するためのカム角度センサ208を有している。
更に、エンジン201のシリンダ内に供給された燃料の混合気に点火する点火プラグに、車載制御装置217の点火信号に基づいて点火エネルギを供給する点火モジュール209、エンジン201のシリンダブロックに設定されエンジン201の冷却水温を検出する水温センサ210、エンジン201の排気管の触媒前に設置され、排気ガス中の酸素濃度に対してリニアな電気的信号を出力する空燃比センサ211を有している。
また、エンジン201の周辺には、燃料タンク212から蒸発する燃料ガスをチャコール等で吸着保持するキャニスタパージタンク213、キャニスタパージタンク213に吸着保持した燃料ガスを開度を調整することで吸気管へ流入させるキャニスタパージバルブ214、エンジン201の運転、停止のメインスイッチであるイグニッションキイスイッチ216が設けられる。そして、エンジン201及びその各補器類は、本発明の実施形態に係る車載制御装置217によって制御されている。
図2は車載制御装置の内部構成を示しており、CPU301の内部にはエンジン201に設置された各センサの電気的信号をデジタル演算処理用の信号に変換、及びデジタル演算用の制御信号を実際のアクチュエータの駆動信号に変換するI/O部302が設けられている。
I/O部302には、水温センサ210、カム角センサ208、空燃比センサ211、吸入空気量センサ(熱式空気流量計)202、スロットル開度センサ215、車速センサ220、イグニッションSW216、吸気管圧力センサ206、大気圧センサ221、吸気温センサ222、負荷SW(エアコンSW)223、アクセル開度センサ218、及びクランク角センサ219の検出信号が入力されている。
CPU301からの出力信号ドライバ303を介して、燃料噴射弁317〜320、点火コイル321〜324、および電制スロットルモータ204へ出力信号が送られる。尚、出力信号ドライバ303にはI/O部302から制御データが送られてきており、制御データが出力信号ドライバ303にセットされることで出力信号が出力されるものである。
そして、図3は図2に示す車載制御装置の詳細な制御ブロックを示している。以下、各制御ブロックの詳細について説明する。
ブロック101は、運転操作量検出手段(運転操作量検出部)のブロックである。本実施形態では、運転操作量検出手段101は、運転者のアクセル開度(運転操作量)を計算する。
ブロック102は、エンジン回転数計算手段のブロックである。エンジン回転数計算手段(作動状態検出部)102は、エンジンの所定のクランク角度位置に設定されたクランク角度センサの電気的な信号、おもにパルス信号変化の単位時間当たりの入力数をカウントし、演算処理することで、エンジンの単位時間当りの回転数(作動状態量)を計算する。
ブロック103は、シリンダ流入空気量計算手段のブロックである。シリンダ流入空気量計算手段(作動状態検出部)103は、エンジンの吸気系上流に設定された吸入空気量センサ信号と吸気管に設定された吸気管圧力センサ信号の入力からシリンダ流入空気量(作動状態量)を計算する。また、シリンダ流入空気量計算手段103は、前述のシリンダ流入空気量とエンジン回転数からエンジンの負荷(作動状態量)を計算する。
ブロック104は、基本燃料量計算手段のブロックである。基本燃料量計算手段104は、前述のブロック102で計算されたエンジン回転数、および前述のブロック103で計算されたエンジン負荷から各運転領域におけるエンジンの要求する基本燃料量を計算する。
ブロック105は、前述のエンジン回転数、および前述のエンジン負荷からエンジンの各運転領域における最適な基本点火時期を決定する基本点火時期計算手段のブロックである。
ブロック106は、エンジンのアイドリング回転数を一定に保つためにアイドリング時の目標回転数を計算し目標流量を計算するISC制御手段のブロックである。
ブロック107はエンジンの排気管に設定された空燃比センサの出力と、目標空燃比の差分、および前述したエンジン回転数とエンジン負荷から空燃比フィードバック補正係数を計算する空燃比補正係数計算手段のブロックである。
ブロック108は、前述したエンジン回転数とエンジン負荷から目標とするエンジンの目標空燃比を決定する目標空燃比計算手段のブロックである。
ブロック109は、前述した運転者のアクセル開度とエンジン回転数から運転者が要求している目標トルク(指令値)を計算し、目標トルクから目標スロットル開度(指令値)を計算する目標スロットル開度計算手段のブロックである。
ブロック110は、前述した運転者のアクセル開度とエンジン回転数から、許容発生トルクを計算する許容発生トルク計算手段(許容作動状態変化量算出部)のブロックである。また、許容発生トルク計算手段110は、後述する異常検出のための許容発生トルクの変化量についても計算する。なお、許容発生トルクは、正常時にエンジンが発生可能なトルクである。
ブロック111は、前述したエンジン回転数とエンジン負荷から、推定発生トルクを計算する推定発生トルク計算手段(推定作動状態変化量算出部)のブロックである。この推定発生トルク計算手段111も同様に、後述する異常検出のための推定発生トルクの変化量を計算する。なお、推定発生トルクは、エンジンが発生しているトルクを推定したものである。
ブロック112は、前述した許容発生トルクの変化量と推定発生トルクの変化量から異常検出を行う異常検出手段(異常検出部)のブロックである。本実施形態では、異常検出手段112は、推定発生トルクの変化量が許容発生トルクの変化量より所定量(異常検出の判定閾値)大きい状態が継続した場合に異常と判断している。なお、前述した異常検出判定閾値については、車速、および前述したアクセル開度等から計算する。
ブロック113は、前述したブロック104で計算された基本燃料量に対して、エンジン水温による補正、前述したブロック107の空燃比フィードバック係数の補正を実行する燃料補正手段のブロックである。
ブロック116〜119は前述したブロック104およびブロック113で計算された燃料量に基づいてエンジンへの燃料供給を制御する燃料噴射制御手段である。
ブロック114は、前述したブロック105で決定された基本点火時期に対して、エンジン水温による補正等を実行する点火時期補正手段のブロックである。
ブロック120〜123は、前述のブロック114で補正されたエンジンの要求点火時期に応じてシリンダに流入した燃料混合気を点火するよう制御する点火制御手段である。
ブロック115は、電制スロットル制御手段(推進力制御部)のブロックである。電制スロットル制御手段115は、前述したアイドリング時の目標流量を確保するためのスロットル開度、及び前述した目標スロットル開度となるように電制スロットルを制御すると共に、前述したブロック112で異常検出した場合に、異常時の制御を行う。
尚、本実施形態では運転者のアクセル開度から演算した許容発生トルクとエンジン回転数とエンジン負荷から算出した推定発生トルクから異常を検出するといったようにトルクの次元での異常検出を行っているが、他の次元、例えば馬力での異常検出としても良い。即ち、トルクから馬力に換算して、その馬力を用いて異常を検出するようにしても良いものである。
図4は、本実施形態に係る車載制御装置によるンジンの異常検出の制御ブロックを示している。運転者の意図により操作されたアクセル操作量をブロック401、402で示すようにアクセル開度センサ1及びアクセル開度センサ2で検出する。運転操作量検出手段101は、ブロック403でアクセル開度センサ1の出力からアクセル開度1を算出する。尚、運転操作量検出手段101は、アクセル開度の推定値を用いても良い。
目標スロットル計算手段109は、ブロック405で前記アクセル開度1とエンジン回転数から運転者の目標とするトルクを算出する。目標スロットル開度計算手段109は、この目標トルクをブロック406で要求スロットル開度(目標スロットル開度)へ換算し、電制スロットル制御手段115は、ブロック407で前記要求スロットル開度からモータ駆動出力信号を算出する。
本出力信号にてブロック412の電制スロットル用のモータ204(図1参照)が動作し、エンジン201の吸気系に取り付けられたスロットルを開閉させる。このスロットルの動作量をブロック413のスロットル開度センサ215でセンシングし、ブロック411で実スロットル開度計算手段(図示せず)が実スロットル開度を算出する。
算出された実スロットル開度は、ブロック407にて要求スロットル開度と比較され、要求スロットル開度に実スロットル開度が一致するように、電制スロットル制御手段115はモータ駆動出力信号をフィードバック制御する。
次に、運転操作量検出手段101は、ブロック402で検出された出力からブロック404でアクセル開度2を算出する。尚、運転操作量検出手段101は、アクセル開度の推定値を用いても良い。このアクセル開度2とエンジン回転数から、許容発生トルク計算手段110は、ブロック408で許容発生トルクを算出し、併せて所定時間毎の許容発生トルクの変化量も算出する。本実施例では、40ms、80ms、120ms、160ms毎に変化量を求めている。
また、推定発生トルク計算手段111は、ブロック409でエンジン201の状態を示す吸入空気量、吸気管圧力、エンジン回転数からエンジン201が発生している推定発生トルクを推定し、併せて所定時間毎の推定発生トルクの変化量も算出する。これも、同様に40ms、80ms、120ms、160ms毎に変化量を求めている。
最後に、異常検出手段112はブロック410で、ブロック408で算出した許容発生トルク、もしくは許容発生トルクの所定時間の変化量と、ブロック409で算出した推定発生トルク、もしくは推定発生トルクの所定時間の変化量から、運転者の意図している目標トルク以上のトルクが発生していないか監視する。
異常時にはエンジン201の出力を抑える方向へスロットル弁が動くように電制スロットル用モータ204を駆動するか、もしくは電制スロットル用モータ204の駆動をやめることで機械的にスロットル弁を動作させるフェールセーフ処理を実行する。
図5は、許容発生トルク計算手段による許容発生トルクの変化量の算出手順の詳細を示している。許容発生トルク計算手段110は、ブロック501では、エンジン回転数とアクセル開度2から許容発生トルクのベース値を算出する。許容発生トルク計算手段110は、ブロック502では、許容発生トルクのベース値とオートクルーズ要求のトルクとのうち大きい値を選択することで、オートクルーズ中の許容発生トルクの算出に対応している。
また、許容発生トルク計算手段110は、ブロック503では、外部からのトルクガード要求とブロック502で算出された許容発生トルクとのうち小さい値を選択し、外部からのトルクダウン要求を考慮した許容発生トルクを算出している。
許容発生トルク計算手段110は、ブロック507では、燃料性状によるエンジン201の発生トルクの変化分を考慮するための補正係数を算出する。許容発生トルク計算手段110は、ブロック503で算出された許容発生トルクに本補正係数をブロック504で乗算し、燃料性状による発生トルクの変化に対応した許容発生トルクを算出している。
許容発生トルク計算手段110は、ブロック508では、空気密度によるエンジン201の発生トルクの変化分を考慮するための補正係数を算出する。許容発生トルク計算手段110は、ブロック504で算出された許容発生トルクに本補正係数をブロック505で乗算し、空気密度による発生トルクの変化に対応した許容発生トルクを算出している。
許容発生トルク計算手段110は、ブロック506では、後述する推定発生トルクの算出誤差を考慮し、正常時に推定発生トルクが許容発生トルクを超えないように、ブロック509で算出されるオフセット量をブロック505で算出された許容発生トルクに加算する。
最後に、許容発生トルク計算手段110は、ブロック510で、許容発生トルクの所定時間毎の変化量を算出する。ここで算出した許容発生トルク、もしくは許容発生トルクの所定時間毎の変化量(Δ許容発生トルク)は後述する図7に示す異常検出判断ロジックで使用する。尚、Δ許容発生トルクは、本発明の「許容作動状態作変化量」に相当する。
図6は、推定発生トルク計算手段による推定発生トルクの変化量の算出手順の詳細を示している。
推定発生トルク計算手段111は、ブロック601では、エンジン回転数とエンジン負荷からハイオクガソリン時の推定発生トルクのベース値を算出する。推定発生トルク計算手段111は、ブロック602では、同様にエンジン回転数とエンジン負荷からレギュラガソリン時の推定発生トルクのベース値を算出する。
推定発生トルク計算手段111は、ブロック603で使用しているガソリンの性状判定の結果、つまりハイオクガソリンかレギュラガソリンの判定結果から、該当する推定発生トルクのベース値を選択する。
推定発生トルク計算手段111は、ブロック604では、点火時期の影響を考慮し、ブロック603で選択された推定発生トルクのベース値に点火効率を乗算する。例えば、推定発生トルクのベース値を計測した時の点火時期を基準とすると、この基準の点火時期に対して遅角側の点火時期であった場合、点火効率が1.0より小さくなり、その結果推定発生トルクが小さく計算されることになる。
推定発生トルク計算手段111は、ブロック605において、燃料噴射量補正の値をブロック604で算出された推定発生トルクに乗算する。ここで、燃料噴射量補正は、燃料カット中に補正値を0として乗算することで、燃料カット中の推定発生トルクが0になるようにしている。これは、燃料噴射がされていないときは、エンジンの発生トルクは0になる現象に一致させるためである。
推定発生トルク計算手段111は、ブロック607では、エンジン回転数と吸気管圧力から負荷トルクを算出し、ブロック606でその負荷トルクをブロック605で算出された推定発生トルクから減算し、エンジン201の軸トルクとして推定発生トルクを算出する。
最後に、推定発生トルク算出手段111は、ブロック608で、推定発生トルクの所定時間毎の変化量を算出する。ここで算出した推定発生トルク、もしくは推定発生トルクの所定時間毎の変化量(Δ推定発生トルク)は後述する図7に示す異常検出判断ロジックで使用する。尚、Δ推定発生トルクは、本発明の「推定作動状態変化量」に相当する。
図7は、異常検出手段112によるエンジンの異常判定手順の詳細を示す図である。異常検出手段112は、ブロック701で、前述した推定発生トルクの所定時間毎の変化量(Δ推定発生トルク)と許容発生トルクの所定時間毎の変化量(Δ許容発生トルク)の差分を算出する。以下では、この差分を「Δトルクの差分」と呼ぶこともある。
その後、異常検出手段112は、ブロック702で算出した判定閾値とブロック701で算出したΔトルクの差分をブロック703で比較し、Δトルクの差分が判定閾値より大きいか判断する。異常検出手段112は、ブロック704でΔトルクの差分の方が大きいと判断されている時間を計測し、この時間が所定の時間より大きくなった場合に異常と判断する。なお、Δ推定発生トルクとΔ許容発生トルクとの差分の代わりに、両者の割合を算出して、その算出結果に基づき異常判定を行っても良いものである。
図8A、8Bは、推定発生トルクの所定時間毎の変化量(Δ推定発生トルク)と許容発生トルクの所定時間毎の変化量(Δ許容発生トルク)の差分(Δトルクの差分)及び車両の加速Gの関係の一例を示したものである。
図8Aは、トランスミッションのギア位置を固定とし、所定のエンジン回転数状態を保持した状態で、スロットル弁をステップ的に開けた場合のΔトルクの差分と加速Gの関係を示している。図8Aは、変化量を算出する時間間隔をt1、t2とし、t1の間隔(Δt1)がt2の間隔(Δt2)より大きい場合におけるΔトルクの差分を示している。
一般的にスロットル弁203の開度が大きい場合の方が、小さい場合と比べて加速Gが大きくなる。Δt1の方がΔt2より大きいため、所定の加速G発生時のΔトルクの差分は、時間間隔がΔt1の場合の方がΔt2の場合より大きくなる。つまり、同一の加速GAであっても、変化量を算出する時間間隔に応じてΔトルクの差分は異なる値を示すようになる。よって、車両の危険な状態を所定の加速G(例えば、0.1G)以上の発生時とすると、Δt1、Δt2毎に車両の危険な状態を判断する判定閾値を設定する必要があることがわかる。つまり、Δt1用の判定閾値と、Δt2用の判定閾値を設定する必要がある。
また、図8Bは、図8Aに対して、トランスミッションのギア位置を固定、時間間隔を固定の状態とし、保持するエンジン回転数の状態を2種類(Ne1、Ne2)で確認した結果を示している。図8Bに示すように、Ne1の方がNe2より高く、ギア位置が固定のため、Ne1、Ne2での車両速度をVSP1、VSP2とすると、VSP1のほうがVSP2よりΔトルクの差分が大きい状態となる。
所定の加速Gの発生時のΔトルクの差分は、エンジン回転数の状態が高いNe1(車両速度が大きいVSP1)の場合の方がNe2の場合より大きくなる。つまり、同一の加速GBであっても、エンジン回転数、或いは車両速度に応じてΔトルクの差分は異なる値を示すようになる。よって、車両の危険な状態を所定の加速G 例えば、0.1G)以上の発生時とすると、Ne1(VSP1)、Ne2(VSP2)毎に車両の危険な状態を判断する判定閾値を設定する必要がある。
以上から、図8Cのように、判定閾値は、時間間隔毎(Δt1、Δt2毎)に、エンジン回転数(Ne)もしくは車両速度(VSP)に応じて適した値に設定する必要がある。この図8Cに示す判定閾値がベースとなる判定閾値となる。このベースとなる判定閾値は図24に示す最終の判定閾値を求めるのに使用されるものである。
図9A、9Bは、本実施形態になる車載制御装置による異常検出の挙動を示したチャートである。
まず、図9Aは、正常時の挙動を示したチャートである。アクセル開度ライン901は、運転者のアクセル踏込み量を示すアクセル開度の挙動を示している。本図では、車両を加速走行、一定速走行、減速走行を行った場合のアクセル開度を示している。許容発生トルクライン902は、許容発生トルクの挙動を示している。許容発生トルクは、アクセル開度が大きくなる(加速状態)に従い大きくなり、アクセル開度が小さくなる(減速状態)に従い小さくなる。
推定発生トルクライン903は、推定発生トルクの挙動を示している。推定発生トルクは、アクセル開度の動作に対して、吸入空気の応答遅れ等の影響により加速走行、減速走行時の挙動に遅れが生じる。尚、許容発生トルクと推定発生トルクとの差分から異常検出を行うため、許容発生トルクについては、誤検出の防止と推定発生トルクに位相を合わせるためフィルタ処理を行っている。
Δ許容発生トルクライン904は許容発生トルクの単位時間当たりの変化量(Δ許容発生トルク)の挙動を示している。Δ推定発生トルクライン905は推定発生トルクの単位時間当たりの変化量(Δ推定発生トルク)の挙動を示している。差分ライン906は、Δ推定発生トルクとΔ許容発生トルクの差分であるΔトルクの差分の挙動を示している。
判定閾値1ライン907は、異常検出のための判定閾値1であり、本判定閾値1を超えている時間が所定時間以上継続した場合に異常と判断される。この診断継続時間の条件を設けているのは、正常時であっても、フィルタ処理後の許容発生トルクと推定発生トルクの位相を完全に合わせることは困難であり、誤検出を防止するためである。
図9Bは、異常時の挙動を示したチャートである。アクセル開度ライン911は運転者のアクセル踏込み量を示すアクセル開度、許容発生トルクライン912は許容発生トルクの挙動をそれぞれ示しており、図9Aと同様の動作である。推定発生トルクライン913は推定発生トルクの挙動を示しており、図9Bから、推定発生トルクはA時点から異常発生によりトルク上昇している状況であることが分かる。
Δ許容発生トルクライン914は許容発生トルクの単位時間当たりの変化量(Δ許容発生トルク)、Δ推定発生トルクライン915は、推定発生トルクの単位時間当たりの変化量(Δ推定発生トルク)の挙動をそれぞれ示している。図9Bから明らかなように、A時点から推定発生トルクが異常発生により増加し、差分ライン916のΔ推定発生トルクとΔ許容発生トルクの差分も上昇し、判定閾値2ライン918の判定閾値2以上となる。
本判定閾値2は、判定閾値1ライン917の判定閾値1より大きい値である。そのため、判定閾値1と判定閾値2の夫々の継続時間の条件は、図10Aに示すように、判定閾値2の方が判定閾値1と比べて短い継続時間(診断ディレイ)となるよう設定されている。具体的には、判定閾値1の場合は、診断ディレイ時間=td1で、判定閾値2の場合は診断ディレイ時間=td2であり、td2の方がtd1より短い値となる。
このように、診断ディレイを設定したのは、異常の誤検出を防止するためである。また、診断ディレイを判定閾値に応じて設定したのは、Δ推定発生トルクとΔ許容発生トルクの差分が大きい程、異常状態である可能性が高く、また、異常判断を速くし安全状態へ速く移行させ車両の安全性を高めるためである。
フラグライン919は、異常判断フラグの挙動を示しており、図9Bでは、差分ライン916がA時点から上昇して判定閾値2を超え、td2時間を経過した時点で異常判定フラグが立ち上がる。差分ライン916が判定閾値1を越えている時間がt1、判定閾値2を越えている時間がt2である場合、診断ディレイ時間td1、td2と本実施形態のt1、t2の関係は図10Aに示すような関係であり、判定閾値が大きいほど診断ディレイ時間は段階的に小さく設定される。具体的には、判定閾値1に対しては診断ディレイ時間がtd1に設定され、判定閾値1より大きい判定閾値2に対しては診断ディレイ時間がtd2に設定される。
よって、図9Bにおいて、差分ライン916が判定閾値1を超えている時間はt1であるが、このt1は、判定閾値1に対して設定される診断ディレイ時間td1を下回っているため、t1の範囲では異常は検出されない。一方、差分ライン916が判定閾値2を超えている時間はt2であるが、このt2は判定閾値2に対して設定される診断ディレイ時間td2を超えている。そのため、差分ライン916が判定閾値2を超えてから時間td2の経過後に異常が検出されることになる。
図10Bは、実際に異常(スロットルをステップ的に開く)を発生させた場合、Δ推定発生トルクとΔ許容発生トルクの差分がある判定閾値を越えている時間(継続時間)Tと、異常を発生させた時点の車両速度(VSP)、またはエンジン回転数(Ne)との関係を示した図である。
図10Bから明らかなように、車両速度(VSP)、またはエンジン回転数(Ne)が大きくなるに従い、判定閾値を超えている時間(T)が長くなる傾向になる。また、変化量の算出の時間間隔をΔt1、Δt2とした場合、時間間隔が長いΔt1でのΔ推定発生トルクとΔ許容発生トルクの差分の場合の方が、時間間隔が短いΔt2での差分の場合と比べて、判定閾値を超えている時間(T)が長くなる傾向になる。
よって、本実施形態では、図10Cに示すように、診断ディレイ時間の閾値は、車両速度(VSP)、またはエンジン回転数(Ne)が大きくなるに従い大きくなるよう設定されている。また、Δ推定発生トルクとΔ許容発生トルクの差分の判定閾値において、確実に異常と判断できる判定閾値(判定閾値2)と、それ以外の判定閾値1でそれぞれ別に設定可能とすることで、より精度よく異常を判断できるものとなる。
以上の図8A〜8C、図9A〜9B、図10A〜10Cで説明した内容においては、車両状態が変化しない場合の例である。しかしながら、このような車両状態は通常は存在しなく、例えば乗車人数、荷物の積載量、走行路勾配等によって車両状態は変化するものである。したがって、上記した判定閾値を設定しても車両状態が変化すると、判定閾値が適切なものとはならず、異常を精度良く検出できない状態が発生する恐れがある。
そこで、車両状態が変化した場合、主に車両の重量、車両の走行環境(走行路の勾配)が変化した場合は、上述した判定閾値を修正することで精度よく異常を判断できるようになる。
図11は車両状態の違いによる、Δ許容発生トルクとΔ推定発生トルクの差分であるΔトルクの差分と加速Gの関係を示したものである。
車両の重量、走行路の勾配に関して、重量が重く勾配が急な状態である車両状態から順に、車両状態A、車両状態B、車両状態Cとした場合、各状態における危険な加速G領域を判断するΔトルクの差分に差が発生し、それぞれの車両状態において、判定閾値A、判定閾値B、判定閾値Cが適切な判定閾値となる。
すなわち、特定の車両状態で、異常判断の判定閾値を決定した場合、誤判断の可能性がある。例えば、車両状態Bで判定閾値を適合作業によって設定した場合、車両状態Aでの判断は、危険な加速Gが発生する状況に達してなくても異常判断する可能性がある。逆に、車両状態Cでの判断は、危険な加速Gが発生しているにも関わらず、異常判断できない状態となり危険状態となってしまう可能性がある。
以上のことから、車両状態、特に車両の重量、或いは車両の走行環境(走行路の勾配)、或いは両方による判定閾値の補正(修正)が必要となることがわかる。ここで、特に車両の重量、或いは車両の走行環境(走行路の勾配)、或いは両方をまとめて走行抵抗と言い換えても良いものである。
図12Aは所定の車両状態(判定閾値を決定した時の車両状態であり、例えば、本実施例では図11の車両状態Bとする)でのアクセル開度とギア位置から決まる車両の速度をマッピングしたものである。マッピングするデータは、例えばVSP1#という名称で表され、あらかじめROM定数として保存されている。
本マップから、アクセル開度とギア位置が決まれば車両の速度が求められ、本速度を基準速度(BASEVSP)とする。例えば、ギア位置が2速でアクセル開度が0%以上、5%未満であれば、BASEVSPはVSP2♯であり、アクセル開度が5%以上、10%未満であれば、BASEVSPはVSP8♯となる。
また、図12Bは、アクセル開度とギア位置から決まるBASEVSPと一対で決まる指標値であり、エリアNo(VSPAREA)とし、選択されている基準速度(BASEVSP)を判断するためのものである。
例えば、BASEVSPがVSP2♯の場合は、VSPAREAは2であり、BASEVSPがVSP8♯の場合は、VSPAREAは8となる。本エリアNo(VSPAREA)は、後述する判定閾値の補正係数を算出する際に使用するためのものである。
図13A、13Bは、本実施形態になる車載制御装置による異常検出のための判定閾値を修正する挙動を示したチャートである。
図13Aは、図11に示した車両状態Aでの挙動を示したチャートである。エリアライン1301は図12Bに示すエリアNo(VSPAREA)である。また、基準速度ライン1302は、アクセル開度とギア位置から決まる基準速度(BASEVSP)であり、同様に車速ライン1303は、アクセル開度により、エンジン201が発生する推進力とギア位置での車両の状態(車速)を表したものである。
平均車速ライン1305は、VSPAREAの変化がない状態が所定時間継続(安定判断)した後、所定区間(車速平均区間)での車速の平均車速(AVEVSP)を表したものである。図13Aの場合は、車速平均区間1での平均車速(AVEVSP)は、vave1Hであり、車速平均区間2での平均車速(AVEVSP)は、vave2Hである。車速比ライン1306は、車速比(RGHOS)であり、基準車速(BASEVSP)を平均車速(AVEVSP)で除算したものである。
図13Aの場合は、エリアNo(VSPAREA)が3の状態で、平均車速vave1Hとvave2Hが算出されるので、基準車速ライン1304にあるように基準車速(BASEVSP)はVSP3♯となり、車速比(RGHOS)は、VSP3♯を平均車速vave1Hとvave2Hで除算した結果(rgh1H、rgh2H)となる。
判定閾値補正ライン1307は、判定閾値補正係数であり、平均車速(AVEVSP)が算出され、車速比(RGHOS)が算出されたタイミングで算出されるものである。判定閾値補正係数は、図14に示すように、車速比(RGHOS)を基に算出される。
判定閾値補正係数は図14にある通り、車速比に対応して判定閾値補正係数が設定されており、車速比が1.0より大きいと判定閾値補正係数も1.0より大きくなっており、逆に車速比が1.0より小さいと判定閾値補正係数も1.0より小さくなっている。つまり、車速比は、アクセル開度と変速比によって事前に求められた基準車速を、実際の平均車速(走行抵抗の影響を受けている)で除算したものであることから、車両の重量や走行路勾配等の走行抵抗を反映したものとなる。
図13Aの場合、車速比がrgh1Hの場合は、判定閾値補正係数(KGHOS)はkghos1Hとなり、車速比がrgh2Hの場合は、kghos2Hとなり、車速比(RGHOS)が大きい程、判定閾値補正係数(KGHOS)が大きくなるような設定となっていて、車速比(RGHOS)が1.0以上である場合に、判定閾値補正係数(KGHOS)も1.0以上になるような設定となっている。そのため、最終判定閾値ライン1308にあるように、車両状態Aの最終判定閾値は大きくなる。
よって、図15に示すように、車両状態Aでの判定閾値Aは判定閾値Bに判定閾値補正係数(KGHOS)を乗算した結果であり、車両状態Aにおける危険な加速G領域を判断するための判定閾値に修正できる。
図13Bは、図11に示した車両状態Cでの挙動を示したチャートである。車両状態Cは車両状態Aに対して、車重が軽く降坂路であり走行時の走行抵抗(走行負荷)が小さい。このため、車速ライン1309の車速は、図13Aでの車速(一点鎖線で示す車速ライン1303)よりも高くなる。その結果、平均車速ライン1310の平均車速(AVEVSP)も図13Aでの平均車速(一点鎖線で示す平均車速ライン1305)よりも高い値(vave1L、vave2L)となる。車速比ライン1311の車速比(RGHOS)においては、VSP3♯を平均車速vave1Lとvave2Lで除算した結果(rgh1L、rgh2L)となる。
判定閾値補正ライン1312は、判定閾値補正係数であり、図14に示すように、車速比がrgh1Lの場合は、判定閾値補正係数(KGHOS)はkghos1Lとなり、車速比がrgh2Lの場合は、kghos2Lとなり、車速比(RGHOS)が小さい程、判定閾値補正係数(KGHOS)が小さくなるような設定となっていて、車速比(RGHOS)が1.0未満である場合に、判定閾値補正係数(KGHOS)も1.0未満になるような設定となっている。そのため、最終判定閾値ライン1313にあるように、車両状態Cの最終判定閾値は小さくなる。
よって、図15に示すように、車両状態Cでの判定閾値Cは判定閾値Bに判定閾値補正係数(KGHOS)を乗算した結果であり、車両状態Cにおける危険な加速G領域を判断するための判定閾値に修正できる。
図16は、車速比(RGHOS)の詳細を示したものであり、第1上限リミッタライン1603、第1下限リミッタ1604ラインに示したように第1上限リミッタ(KRGHOSMX♯)と第1下限リミッタ(KRGHOSMN♯)を設定している。本リミッタは、車速比(RGHOS)算出の異常時等の対策のために設定している。
また、上述したリミッタとは別に第2上限リミッタライン1605、第2下限リミッタ1606に示すように、第2上限リミッタ(KHIWET♯)と第2下限リミッタ(KLOWET♯)の設定も可能している。
第2上限リミッタ(KHIWET♯)は、車両の重量が最大となる場合での車速比相当を設定する。また、第2下限リミッタ(KLOWET♯)は、車両の重量が最少となる場合での車速比相当を設定する。
車速比ライン1602の車速比(RGHOS)の算出としては、エリアライン1601のエリアNo(VSPAREA)が変化した場合は、第2上限リミッタ(KHIWET♯)まで徐々に変化させて減少させるようにしている。これは、第2上限リミッタ(KHIWET♯)よりも車速比(RGHOS)が大きい場合は、登坂路を走行している場合を想定しているため、エリアNo(VSPAREA)が変化した場合、走行路の勾配が変化したことを想定して車速比を減少させるようにしている。
また、車速比減少後、車速が0(車両停止)となった場合には、第2上限リミッタ(KHIWET♯)に張り付いていた車速比(RGHOS)をリセットする(1.0とする)ようにしている。これは、車両の速度が0(車両停止)となった場合は、乗車定員やガソリン量が変化する可能性があり、車両重量の変化を想定して車速比(RGHOS)をリセットする。その後、再度、平均車速(AVEVSP)を算出することで、異常の誤判断の防止を行うようにしている。
上記した内容は、車速比から判定閾値の修正を行ったが、乗車定員情報やガソリン残量情報から、判定閾値の修正を行うようにしても良いことはいうまでもない。また、本実施形態では走行路の勾配は平均車速の中で反映させているが、ナビゲーション装置を搭載している場合は、ナビゲーション装置の地図データに格納されている高度データを利用して登坂路、降坂路の情報から判定閾値の修正を行うようにしても良い。要は走行抵抗に対応して判定閾値を修正するようにすれば良いものである。
以上述べたような異常判断を実行する具体的な制御方法を以下に説明する。図17は本実施形態になる異常検出手段を備えた車載制御装置の全体的な制御フローを示すものである。この制御フローは各制御ロジックを簡略化して示しており、本実施形態に関係しない制御ロジックについてはその詳細な説明は省略する。
図17において、ステップ1701でアクセル開度センサの出力電圧からアクセル開度割合に換算して読み込む。ステップ1702でクランク角度センサの電気的な信号、主にパルス信号変化の単位時間当たりの入力数をカウントし、演算処理によりエンジン回転数を計算する。ステップ1703でスロットル開度センサ出力電圧からスロットル角度へ換算して読み込む。ステップ1704で熱式空気流量計の出力電圧から電圧流量換算された空気流量を読み込む。
ステップ1705でエンジン回転数と吸入空気量(エンジン負荷)から基本燃料量を計算する。ステップ1706でエンジン回転数とエンジン負荷から基本燃料補正係数をマップ検索する。ステップ1707で空燃比センサの出力電圧から空燃比変換した実空燃比を読み込む。ステップ1708でエンジン回転数とエンジン負荷から目標空燃比をマップ検索する。ステップ1709で目標空燃比と実空燃比で目標空燃比へのフィードバック制御を実施し、空燃比補正係数を算出する。ステップ1710で基本燃料補正係数、フィードバック制御による空燃比補正係数により基本燃料量を補正し燃料噴射量を計算する。
ステップ1711でアイドル回転数の目標値を計算する。ステップ1712でアイドル回転数の目標値を実現できるISC目標流量を計算する。ステップ1713でISC目標流量をISC制御手段へ出力する。
ステップ1714でエンジン回転数、及びエンジン負荷で基本点火時期を計算する。ステップ1715で基本点火時期に水温補正等の補正を行う。ステップ1716で補正された点火時期をセットする。
これらの制御ステップが完了すると本実施形態になる異常診断の制御ロジックが実行される。先ず、ステップ1717で許容発生トルクを計算し、ステップ1718で推定発生トルクを計算する。次に、ステップ1719で異常検出用の判定閾値を計算する。ステップ1720で許容発生トルクと推定発生トルクから算出するΔトルクの差分と判定閾値に基づき異常判断を行う。
ステップ1721でアクセル開度とエンジン回転数から算出される目標トルクからの要求開度とISC制御手段からの要求開度から最終的なスロットル開度に制御する。また、ステップ1720で異常と判断された場合においても、ステップ1721でスロットル開度を制御する。
次に、本実施形態の特徴である異常検出手段の具体的な制御フローについて説明する。図18は、図17のステップ1717の許容発生トルクの計算と、ステップ1718の推定発生トルクの計算の詳細を示したフローチャートである。
まず、ステップ1801で許容発生トルクを算出する。許容発生トルクは図5に示すような方法で求められることは既に述べた通りである。その後、ステップ1802からステップ1805でそれぞれ、40ms間、80ms間、120ms間、160ms間の許容発生トルクの変化量(Δ40LT、Δ80LT、Δ120LT、Δ160LT)を算出する。
次に、ステップ1806で推定発生トルクを算出する。推定発生トルクは図6に示すような方法で求められることは既に述べた通りである。その後、ステップ1807からステップ1810でそれぞれ、40ms間、80ms間、120ms間、160ms間の推定発生トルクの変化量(Δ40ET、Δ80ET、Δ120ET、Δ160ET)を算出する。これらの演算が完了すると次の図17に示したステップ1719に進むことになる。
図19、図20、図21、図22、図23は、図17のステップ1719、1720の異常検出処理の詳細を示した制御フローである。尚、この制御フローで使用される異常判断のための判定閾値(KD40L、KD40H、KD80L、KD80H、KD120L、KD120H、KD160L、KD160H)の計算の詳細は図24に示し、また、異常判断のための判定閾値補正係数(KGHOS)の計算の詳細は図25に示している。
図19は、40ms間の推定発生トルクの変化量(Δ40ET)と許容発生トルクの変化量(Δ40LT)から異常を判断する制御フローである。
ステップ1901で40ms間の推定発生トルクの変化量(Δ40ET)と許容発生トルクの変化量(Δ40LT)の差分が所定の判定閾値(KD40H)より大きいかチェックする。チェック結果がYESの場合はステップ1902に進み、カウンタ(CN40H)をカウントアップする。その後、ステップ1904でカウンタ(CN40H)がカウンタチェック用の所定のカウンタ閾値(KCN40H)以上かどうかチェックする。チェックした結果、Yesであればステップ1905で、異常フラグ(FLCN40HNG)を1とし、図20の制御フローへ進むようになる。
一方、ステップ1901のチェック結果がNOの場合はステップ1903へ進み、カウンタ(CN40H)をクリアしてステップ1906へ進む。また、ステップ1904のチェック結果がNoの場合も同様にステップ1906へ進み、異常フラグ(FLCN40HNG)をクリアしてステップ1907へ進む。
ステップ1907では、ステップ1901と同様に推定発生トルクの変化量(Δ40ET)と許容発生トルクの変化量(Δ40LT)の差分が所定の判定閾値(KD40L)より大きいかチェックする。ここでの判定閾値(KD40L)はステップ1901で使用する判定閾値(KD40H)より小さく設定されたものである。これは、ステップ1901での判定閾値(KD40H)は、確実に異常となった状態を検出するためのものであり、ステップ1907での判定閾値(KD40L)は、異常が発生しているが正常状態の判断が難しい場合で判断するための設定としている。
そのために、後述するステップ1910での異常カウンタ(CN40L)の比較するカウンタ閾値(KCN40L)は、ステップ1904で使用するカウンタ閾値(KCN40H)より大きい値を設定し、異常状態の判断を確実に行えるようにしている。
ステップ1907のチェック結果がYesの場合はステップ1908に進み、カウンタ(CN40L)をカウントアップする。その後、ステップ1910でカウンタ(CN40L)がカウンタチェック用の所定のカウンタ閾値(KCN40L)以上かどうかチェックする。チェックした結果、Yesであればステップ1911で、異常フラグ(FLCN40LNG)を1とし、図20のフローへ進む。
ステップ1907のチェック結果がNoの場合は、ステップ1909へ進み、異常カウンタ(CN40L)をクリアしてステップ1912へ進む。また、ステップ1910の結果がNoの場合も同様にステップ1912へ進み、異常フラグ(FLCN40LNG)をクリアし、図20の制御フローへ進む。
図20は、80ms間の推定発生トルクの変化量(Δ80ET)と許容発生トルクの変化量(Δ80LT)から異常を判断する制御フローである。
ステップ2001で80ms間の推定発生トルクの変化量(Δ80ET)と許容発生トルクの変化量(Δ80LT)の差分が所定の判定閾値(KD80H)より大きいかチェックする。チェック結果がYESの場合はステップ2002に進み、カウンタ(CN80H)をカウントアップする。その後、ステップ2004でカウンタ(CN80H)がカウンタチェック用の所定のカウンタ閾値(KCN80H)以上かどうかチェックする。チェックした結果、YESであればステップ2005で、異常フラグ(FLCN80HNG)を1とし、図21のフローへ進む。
ステップ2001の結果がNoの場合はステップ2003へ進みカウンタ(CN80H)をクリアし、ステップ2006へ進む。また、ステップ2004の結果がNoの場合も同様にステップ2006へ進み、異常フラグ(FLCN80HNG)をクリアし、ステップ2007へ進む。
ステップ2007では、ステップ2001と同様に、推定発生トルクの変化量(Δ80ET)と許容発生トルクの変化量(Δ80LT)の差分が所定の判定閾値(KD80L)より大きいかチェックする。ここでの判定閾値(KD80L)はステップ2001で使用する判定閾値(KD80H)より小さく設定されたものである。また、後述するステップ2010でのカウンタ(CN80L)の比較するカウンタ閾値(KCN80L)は、ステップ2004で使用するカウンタ閾値(KCN80H)より大きい値を設定する。これは、前述した図19での理由と同様である。
ステップ2007の結果がYESの場合はステップ2008に進み、カウンタ(CN80L)カウントアップする。その後、ステップ2010でカウンタ(CN80L)がカウンタチェック用の所定のカウンタ閾値(KCN80L)以上かどうかチェックする。チェックした結果、YESであればステップ2011で、異常フラグ(FLCN80LNG)を1とし、図21のフローへ進む。
ステップ2007の結果がNoの場合は、ステップ2009へ進み、カウンタ(CN80L)をクリアしてステップ2012へ進む。また、ステップ2010の結果がNoの場合も同様にステップ2012へ進み、異常フラグ(FLCN80LNG)をクリアし、図21の制御フローへ進む。
図21は、120ms間の推定発生トルクの変化量(Δ120ET)と許容発生トルクの変化量(Δ120LT)から異常を判断する制御フローである。
ステップ2101で120ms間の推定発生トルクの変化量(Δ120ET)と許容発生トルクの変化量(Δ120LT)の差分が所定の判定閾値(KD120H)より大きいかチェックする。
チェック結果がYesの場合はステップ2102に進み、カウンタ(CN120H)をカウントアップする。その後、ステップ2104でカウンタ(CN120H)がカウンタチェック用の所定のカウンタ閾値(KCN120H)以上かどうかチェックする。チェックした結果、Yesであればステップ2105で、異常フラグ(FLCN120HNG)を1として図22のフローへ進む。
ステップ2101の結果がNoの場合はステップ2103へ進み、カウンタ(CN120H)をクリアしてステップ2106へ進む。また、ステップ2104の結果がNoの場合も同様にステップ2106へ進み、異常フラグ(FLCN120HNG)をクリアし、ステップ2107へ進む。
ステップ2107では、ステップ2101と同様に推定発生トルクの変化量(Δ120ET)と許容発生トルクの変化量(Δ120LT)の差分が所定の判定閾値(KD120l)より大きいかチェックする。ここでの判定閾値(KD120l)はステップ2101で使用する判定閾値(KD120H)より小さく設定されたものである。また、後述するステップ2110でのカウンタ(CN120L)の比較するカウンタ閾値(KCN120L)は、ステップ2104で使用するカウンタ閾値(KCN120H)より大きい値を設定する。これは、前述した図19での理由と同様である。
ステップ2107の結果がYesの場合はステップ2108に進み、カウンタ(CN120L)をカウントアップする。その後、ステップ2110でCカウンタ(CN120L)がカウンタチェック用の所定のカウンタ閾値(KCN120L)以上かどうかチェックする。チェックした結果、Yesであればステップ2111で異常フラグ(FLCN120LNG)を1として図22のフローへ進む。
ステップ2107の結果がNoの場合は、ステップ2109へ進み、カウンタ(CN120L)をクリアしてステップ2112へ進む。また、ステップ2110のチェック結果がNoの場合も同様にステップ2112へ進み、異常フラグ(FLCN120LNG)をクリアして図22の制御フローへ進む。
図22は、160ms間の推定発生トルクの変化量(Δ160ET)と許容発生トルクの変化量(Δ160LT)から異常を判断する制御フローである。
ステップ2201で160ms間の推定発生トルクの変化量(Δ160ET)と許容発生トルクの変化量(Δ160LT)の差分が所定の判定閾値(KD160H)より大きいかチェックする。
チェック結果がYesの場合はステップ2202に進み、カウンタ(CN160H)をカウントアップする。その後、ステップ2204でカウンタ(CN160H)がカウンタチェック用の所定のカウンタ閾値(KCN160H)以上かどうかチェックする。チェックした結果、Yesであればステップ2205で異常フラグ(FLCN160HNG)を1として図23の制御フローへ進む。
ステップ2201の結果がNoの場合はステップ2203へ進み、カウンタ(CN160H)をクリアしてステップ2206へ進む。また、ステップ2204の結果がNoの場合も同様にステップ2206へ進み、異常フラグ(FLCN160HNG)をクリアしてテップ2207へ進む。
ステップ2207では、ステップ2201と同様に、推定発生トルクの変化量(Δ160ET)と許容発生トルクの変化量(Δ160LT)の差分が所定の判定閾値(KD160l)より大きいかチェックする。ここでの判定閾値(KD160L)はステップ2201で使用する判定閾値(KD160H)より小さく設定されたものである。
また、後述するステップ2210でのカウンタ(CN160L)の比較するカウンタ閾値(KCN160L)は、ステップ2204で使用するカウンタ閾値(KCN160H)より大きい値を設定する。これは、前述した図19での理由と同様である。
ステップ2207の結果がYesの場合はステップ2208に進み、カウンタ(CN160L)をカウントアップする。その後、ステップ2210でカウンタ(CN160L)がカウンタチェック用の所定のカウンタ閾値(KCN160L)以上かどうかチェックする。チェックした結果、Yesであればステップ2211で、異常フラグ(FLCN160LNG)を1として図23の制御フローへ進む。
ステップ2207の結果がNoの場合は、ステップ2209へ進み、カウンタ(CN160L)をクリアしステップ2212へ進む。また、ステップ2210の結果がNoの場合も同様にステップ2212へ進み、異常フラグ(FLCN160LNG)をクリアして図23の制御フローへ進む。
図23は、図19、図20、図21、図22での各所定時間毎の変化量での異常判定フラグから最終的な異常判断をおこなう制御フローである。
ステップ2301では40ms間の変化量からの異常判定が成立しているか判定し、Yesであれば、ステップ2306へ進み最終的な異常判定(FLCNNG=1)を行う。
また、ステップ2301でNoであればステップ2302へ進み、80ms間の変化量からの異常判定が成立しているか判定する。Yesであれば、ステップ2306へ進み最終的な異常判定(FLCNNG=1)を行う。
また、ステップ2302でNoであればステップ2303へ進み、120ms間の変化量からの異常判定が成立しているか判定する。Yesであれば、ステップ2306へ進み最終的な異常判定(FLCNNG=1)を行う。
また、ステップ2302でNoであればステップ2304へ進み、160ms間の変化量からの異常判定が成立しているか判定する。Yesであれば、ステップ2306へ進み最終的な異常判定(FLCNNG=1)を行う。
最後に、ステップ2304でNoであればステップ2305へ進み、異常なしと判定(FLCNNG=0)して全体の制御フローを終了するものである。
次に、上述した判定閾値KD40L、KD40H、KD80L、KD80H、KD120L、KD120H、KD160L、KD160Hの演算方法について説明する。図24は判定閾値の演算の詳細を示したフローチャートである。
ステップ2401でベースとなる判定閾値BKD40H、BKD40L、BKD80H、BKD80L、BKD120H、BKD120L、BKD160H、BKD160Lを算出する。このベースとなる判定閾値は図8Cに示すように、車速(回転数)とサンプリングの時間間隔から定められている。次にステップ2402でベースの判定閾値を補正する判定閾値補正係数(KGHOS)を算出する。この判定閾値補正係数(KGHOS)は別の制御フローで求められており、これについては後述する。
判定閾値補正係数(KGHOS)が求まると、ステップ2403でベース判定閾値と判定閾値補正係数(KGHOS)を乗算することで最終の判定閾値を算出する。したがって、この最終の判定閾値は、図19のステップ1901、1907で使用され、図20のステップ2001、2007で使用され、図21のステップ2101、2107で使用され、図22のステップ2201、2207で使用されるものとなる。
図25は図24に示すステップ2402で実行される判定閾値補正係数(KGHOS)の演算の詳細を示したフローチャートである。
ステップ2501で車両の状態が安定しているか判定するためにエリアNo(VSPAREA)に変化がないかチェックする。チェック結果がYesの場合、ステップ2502へ進み車両状態の安定判定のタイマー(TAREA)をカウントアップする。
その後、ステップ2503で所定のタイマー閾値(KTAREA♯)以上となったかどうかチェックをする。チェック結果がYesの場合、ステップ2504へ進み、平均車速算出のための期間計測用のタイマー(TMVSAR)をカウントアップする。ステップ2503のチェック結果がNoの場合、制御フローを終了する。
次にステップ2505で、平均車速算出のための期間計測用のタイマー(TMVSAR)が所定のタイマー閾値(KTMVSAREA♯)以上となったかどうかチェックする。チェック結果がNoの場合は、制御フローを終了する。Yesの場合、ステップ2506へ進み平均車速(AVEVSP)を算出し、ステップ2507で車速比(RGHOS)を算出し、その後にステップ2508で図14に示すように、車速比(RGHOS)から判定閾値補正係数(KRGHOS)を算出する。
判定閾値補正係数(KRGHOS)の算出後、ステップ2509で平均車速算出のための期間計測用のタイマー(TMVSAR)をクリアし、次の判定閾値補正係数(KRGHOS)の算出に備え、制御フローを終了する。
ステップ2501の結果がNoの場合はステップ2510へ進み、判定のタイマー(TAREA)をクリアし、ステップ2511へ進み平均車速算出のための期間計測用のタイマー(TMVSAR)においてもクリアして制御フローを終了する。
このようにして求められた判定閾値補正係数(KRGHOS)は上述した図24のステップ2403で使用されて最終の判定閾値が求められるものである。
尚、上述した実施形態から把握することができる請求項以外の技術的思想は種々あるが、代表的なものを以下に記載する。
(1)許容発生トルクの変化量と推定発生トルクの変化量から求まる指標値と、予め定めたエンジン或いは自動車の状態を基に算出した判定閾値とを比較してエンジンの推定発生トルクの異常状態を検出する異常検出部と、自動車の走行抵抗に対応して判定閾値の値を補正する判定閾値補正部とを有し、判定閾値補正部は、アクセル開度と自動車の車速の関係をあらかじめ記憶しておく記憶手段を有し、アクセル開度から記憶手段を基に決定された車速Aと、アクセル開度と同じアクセル開度での実際の車速Bとの関係に基づき判定閾値を補正し、更に判定閾値の補正は車速Bの値が0(自動車が停止中)の時は禁止することを特徴とする。
(2)異常検出部で使用される前記判定閾値は少なくともエンジンの回転数、或いは自動車の車速に基づいて決められており、判定閾値補正部は車速Aと車速Bの比率に基づき判定閾値補正係数を求め、更に判定閾値補正部は判定閾値補正係数を判定閾値に乗算することで判定閾値を補正し、更に、判定閾値補正係数は、車速Bの変化が大きい場合に補正が効かない側に変化させることを特徴とする。
以上述べた通り本発明によれば、車両に推進力を与えるために運転者が操作した運転操作量を求める運転操作量検出部と、運転操作量に基づき車両の駆動源への指令値を算出する指令値算出部と、指令値に基づき駆動源の推進力を制御する推進力制御部と、駆動源の作動状態を求める作動状態検出部と、作動状態下での車両の状態を求める車両状態検出部と、運転操作量に関連した運転操作変化量を算出する運転操作変化量算出部と、作動状態に関連した作動状態変化量を算出する作動状態変化量算出部と、運転操作変化量及び作動状態変化量に基づいて算出された指標値と車両状態を基に算出した判定閾値との関係から異常を検出する異常検出部と、運転操作量と車両状態の関係から判定閾値を修正する判定閾値修正部とを備えたものである。
これによれば、運転操作変化量と駆動源の作動状態変化量とから駆動源の異常を判断するようにしたので、車両の駆動源の推進力が異常であるか否かを迅速に判定することができ、更に、異常判断の判定閾値を車両の重量、車両の走行環境で修正可能とすることで異常判断の精度向上を図ることが可能になる。
尚、本発明は上記した実施例に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施例の構成の一部を他の実施例の構成に置き換えることが可能であり、また、ある実施例の構成に他の実施例の構成を加えることも可能である。また、各実施例の構成の一部について、他の構成の追加・削除・置換をすることが可能である。