本発明は、燃焼改善手段の故障診断装置に関し、特に燃焼改善手段の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能な燃焼改善手段の故障診断装置に関する。
従来、燃焼室に連通する吸気通路に燃焼状態の改善を図るための燃焼改善手段が配設された内燃機関が知られている。燃焼改善手段としては具体的には筒内にタンブル流やスワール流といった旋回気流を生成するための気流制御弁が一般によく知られている。係る燃焼改善手段が故障すると燃焼が意図通りに行われなくなることから燃焼状態が悪化し、その結果、気筒間で燃焼状態のアンバランスが生じたり、排気エミッションが増大したりする。これに対して故障に対応すべく制御の切り替えや早急な修理などを行う上で、燃焼改善手段の故障を高い検出性で検出することが重要となる。
燃焼改善手段の故障検出に関しては、例えば特許文献1で空燃比を利用して吸気制御弁の異常を検出する技術が提案されている。また、特許文献2では燃焼圧センサを利用して正常時の燃焼期間と実際の燃焼期間とを比較してSCV(スワールコントロールバルブ)の異常を検出する技術が提案されている。特許文献3では圧力センサを利用してTCV(タンブルコントロールバルブ)開閉時のTCVの上流圧の差に基づいて、TCVの故障を検出する技術が提案されている。なお、これら吸気制御弁、SCV及びTCVは燃焼改善手段に相当する構成である。そのほか燃焼状態の判定に関し、例えば特許文献4ではクランク角加速度を利用して各気筒の燃焼状態を推定する技術が提案されている。また、特許文献5ではクランク角加速度を利用して燃焼状態が悪化している気筒を特定するとともに、点火時期等を補正して燃焼状態の回復を図る技術が提案されている。
特開平10−121991号公報
特開平07−83101号公報
特開平09−209810号公報
特開2004−92603号公報
特開2005−61371号公報
例えば空燃比を利用する特許文献1の提案技術では、どの気筒に対応する燃焼改善手段が故障しているのかまでは検出できない。この場合には、故障を検出しても気筒毎に運転条件を制限することができないため、例えば故障に対応すべく制御を切り替えると他の正常な気筒の運転までスポイルしてしまう虞がある。また、燃焼改善手段の故障態様としては、例えば気流制御弁を例に挙げると固着等により全ての気流制御弁が作動不良に陥るような故障態様のほかにも、気流制御弁個々の変形、破損、脱落等により、対応する気筒の燃焼状態が悪化するといった故障態様もある。また気流制御弁を軸支する弁軸の捩れにより特定の気筒の燃焼状態が悪化するといった事態も、故障態様の一つとして捉えることができる。なお、気流制御弁の変形、破損、脱落等は、気流制御弁が樹脂製の場合にバックファイヤが発生したりすると発生することがある。
これに対して特許文献2または3の提案技術によれば、燃焼改善手段の故障を対応する気筒毎に検出できる。しかしながら、特許文献2または3の提案技術では筒内圧センサや圧力センサを予め備えていない場合にこれらのセンサを故障検出のために改めて備える必要がある。このため、特許文献2または3の提案技術では構成全体としてコスト的に不利になる虞がある。またこれらの提案技術では故障検出性に関して特に言及されていないため、気流制御弁の変形といった比較的程度の小さい故障までは検出できない虞がある。一方、クランク角加速度を利用する特許文献4及び5の提案技術では燃焼状態が悪化した原因が燃焼改善手段の故障によるものか、吸気系のエア吸い込みによるものか、燃料噴射系の故障によるものかなどを特定できない。このため、特許文献4及び5の提案技術では故障に対応すべく制御を切り替える際に、故障原因に応じた好適な制御に切り替えることができない虞や、修理を行う際に原因の特定に時間を要し、修理を迅速に行えない虞などがある。
そこで、本発明は上記の課題に鑑みてなされたものであり、燃焼改善手段の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能な燃焼改善手段の故障診断装置を提供することを目的とする。
上記課題を解決するために、本発明は、内燃機関の燃焼室に連通する吸気通路に燃焼状態を改善するために配設された燃焼改善手段の故障を診断する燃焼改善手段の故障診断装置であって、前記内燃機関が定常運転状態でありかつ前記燃焼改善手段が作動しているときに、前記内燃機関が有する複数の気筒について1気筒毎に点火時期を次第に遅角するとともに前記点火時期の遅角量に対応する前記気筒の平均クランク角速度を算出し、算出された前記平均クランク角速度を前記平均クランク角速度に対応した前記点火遅角量とともに記憶部に記憶しておき、前記記憶部に記憶された複数の前記平均クランク角速度および前記点火遅角量のうちから複数の前記気筒の間で略同一の前記平均クランク角速度に対応する前記点火遅角量を前記気筒毎に求める点火遅角量算出手段と、前記点火遅角量算出手段が算出した前記気筒毎の前記点火遅角量のうち所定値よりも小さい値の前記点火遅角量を有する前記気筒に対応する前記燃焼改善手段に異常あり、と判定する故障判定手段と、を備えることを特徴とする燃焼改善手段の故障診断装置である。
ここで平均クランク角加速度とは、複数の燃焼サイクルに亘って気筒毎に算出された複数のクランク角加速度の気筒毎の平均値であり、クランク角加速度としては例えば内燃機関の膨張行程の上死点から下死点の区間で気筒毎に算出したものを適用できる。そしてこれら平均クランク角加速度やクランク角加速度は、内燃機関にごく一般に配設されているクランク角センサの出力信号に基づき気筒毎に算出できる。ここで点火時期を遅角した場合、燃焼状態は不安定になる傾向にあるが、点火時期を遅角させた上である同一の燃焼状態を得るにあたっては、正常な気筒のほうが異常な気筒よりも燃焼状態が安定しているため点火遅角量は大きくなる。換言すれば、異常な気筒ではもともと燃焼状態が悪化しているため、遅角できる点火遅角量は小さくなる。本発明は係る点に着目したものであり、本発明によれば燃焼改善手段の故障を対応する気筒毎に検出できる。
本発明によれば、燃焼改善手段の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能な燃焼改善手段の故障診断装置を提供できる。
以下、本発明を実施するための最良の形態を図面と共に詳細に説明する。
図1は、ECU(Electronic Control Unit:電子制御装置)1Aで実現されている本実施例に係る燃焼改善手段の故障診断装置を、内燃機関システム100とともに模式的に示す図である。内燃機関システム100は、吸気系10と、排気系20と、燃料噴射系30と、内燃機関50とを有して構成されている。吸気系10は内燃機関50に空気を導入するための構成であり、吸気を濾過するためのエアクリーナ11や、空気量を計測するエアフロメータ12や、吸気の流量を調節するスロットル弁13や、吸気を一時的に貯蔵するサージタンク14や、吸気を内燃機関50の各気筒に分配するインテークマニホールド15や、これらの間に適宜配設される吸気管などを有して構成されている。
排気系20は、エキゾーストマニホールド21と、三元触媒22と、図示しない消音器と、これらの構成の間に適宜配設される吸気管などを有して構成されている。エキゾーストマニホールド21は各気筒からの排気を合流させるための構成であり、各気筒に対応させて分岐させた排気通路を、下流側で一つの排気通路に集合させている。三元触媒22は排気を浄化するための構成であり、炭化水素HC及び一酸化炭素COの酸化と窒素酸化物NOxの還元を行う。排気系20には、排気中の酸素濃度に基づき空燃比をリニアに検出するためのA/Fセンサ23が三元触媒22の上流に、排気中の酸素濃度に基づき空燃比が理論空燃比よりもリッチかリーンかを検出するための酸素センサ24が三元触媒22の下流に夫々空燃比センサとして配設されている。
燃料噴射系30は燃料を供給及び噴射するための構成であり、燃料噴射弁31や燃料噴射ポンプ32や燃料タンク33などを有して構成されている。燃料噴射弁31は燃料を噴射するための構成であり、ECU1Aの制御のもと、適宜の噴射時期に開弁されて燃料を噴射する。また燃料噴射量は、ECU1Aの制御のもと燃料噴射弁31が閉弁されるまでの間の開弁期間の長さで調節される。燃料噴射ポンプ32は燃料を加圧して噴射圧を発生させるための構成であり、ECU1Aの制御のもと噴射圧を適宜の噴射圧に調節する。
内燃機関50は、シリンダブロック51と、シリンダヘッド52と、ピストン53と、点火プラグ54と、吸気弁55と、排気弁56とを有して構成されている。本実施例に示す内燃機関50は直列4気筒のガソリンエンジンである。但し内燃機関50は本発明を実施可能な内燃機関であれば特に限定されず、例えばディーゼルエンジンなどであってもよく、また他の適宜の気筒配列構造及び気筒数を有していてもよい。なお、ディーゼルエンジンの場合には点火プラグ54は不要となる。また図1では内燃機関50に関し、各気筒の代表としてシリンダ51aについて要部を示しているが本実施例では他の気筒についても同様の構造となっている。シリンダブロック51には、略円筒状のシリンダ51aが形成されている。シリンダ51a内には、ピストン53が収容されている。シリンダブロック51の上面にはシリンダヘッド52が固定されている。燃焼室57は、シリンダブロック51、シリンダヘッド52及びピストン53に囲まれた空間として形成されている。
シリンダヘッド52には燃焼室57に吸気を導くための吸気ポート52aのほか、燃焼したガスを燃焼室57から排気するための排気ポート52bが形成され、さらにこれら吸排気ポート52a及び52bを開閉するための吸排気弁55及び56が配設されている。なお、内燃機関50は1気筒あたりに適宜の数量の吸排気弁55及び56を備えた吸排気弁構造であってよい。点火プラグ54は、燃焼室57の上方略中央に電極を突出させた状態でシリンダヘッド52に配設されている。燃料噴射弁31は所謂ポート噴射を行えるように、吸気ポート52a内に燃料噴射孔を突出させた状態でシリンダヘッド52に配設されている。なお、燃料噴射弁31は例えば筒内に直接燃料を噴射できるように配設されてもよい。
吸気ポート52aには、燃焼室57内にタンブル流を生成するための気流制御弁58が配設されている。気流制御弁58は、ECU1Aの制御のもと吸気ポート52a内で吸気を偏流させて燃焼室57内にタンブル流を生成するための構成である。図2は、気流制御弁58を弁軸61及びアクチュエータ62とアッセンブリした状態で示す図である。気流制御弁58夫々は1本の弁軸61に連なるように固定されている。アクチュエータ62は弁軸61の一端に連結されている。気流制御弁58の先端側には所定の開口面積を持つ切欠き部58aが形成されており、この切欠き部58aにより特に気流制御弁58全閉時に吸気の流速が高められる。
なお、気流制御弁58はインテークマニホールド15が形成する吸気通路に配設されていてもよい。また、気流制御弁58はタンブル流を生成するものに限られず、所定の開弁状態で燃焼室57内に強い旋回気流を生成して混合気のミキシング性を向上できるものであれば、逆タンブル流やスワール流やタンブル流とスワール流とを合成して形成される斜めタンブル流を生成するものなどであってもよい。本実施例では気流制御弁58で燃焼改善手段を実現している。そのほか内燃機関50には、回転数Neに比例した出力パルスを発生するクランク角センサ71や、内燃機関50の水温を検出するための水温センサ72などの各種のセンサが配設されている。
ECU1Aは、図示しないCPU(Central Processing Unit:中央演算処理装置)と、ROM(Read Only Memory)と、RAM(Random Access Memory)と、入出力回路などを有して構成されている。ECU1Aは主として内燃機関50を制御するための構成であり、本実施例では燃料噴射弁31や燃料噴射ポンプ32や点火プラグ54(より具体的には図示しないイグナイタ)のほか、気流制御弁58(より具体的にはアクチュエータ62)なども制御している。ECU1Aにはこれら燃料噴射弁31などのほか、各種の制御対象が駆動回路(図示省略)を介して接続されている。また、ECU1Aにはエアフロメータ12や、クランク角センサ71や、水温センサ72や、アクセルペダル(図示省略)の踏み込み量(アクセル開度)を検知するためのアクセルセンサ73などの各種のセンサが接続されている。
ROMはCPUが実行する種々の処理が記述されたプログラムを格納するための構成であり、本実施例では内燃機関50制御用プログラムのほか、燃料噴射弁31を制御するための燃料噴射弁制御用プログラムや、A/Fセンサ23や酸素センサ24を利用して空燃比をF/B制御するための空燃比F/B制御用プログラムや、クランク角センサ71の出力信号に基づき、クランク角加速度を気筒毎に算出するためのクランク角加速度算出用プログラムや、複数の燃焼サイクルに亘って気筒毎に算出された複数のクランク角加速度の気筒毎の平均値(以下、単に平均クランク角加速度とも称す)を算出するための平均クランク角加速度算出用プログラムや、気筒毎の平均クランク角加速度と、気流制御弁58の作動状態とに基づいて、気流制御弁58の故障を対応する気筒毎に判定する故障判定用プログラムなども格納している。なお、これらのプログラムは内燃機関50制御用プログラムの一部として構成されていてもよい。
故障判定用プログラムは、具体的には気流制御弁58が作動しているとき(本実施例では全閉になるように制御されているとき)に、気筒毎の平均クランク角加速度が減速側にある場合に、減速側にある平均クランク角加速度が検出された気筒に対応する気流制御弁58に仮異常あり、と判定するとともに、さらに仮異常ありと判定した気流制御弁58が作動していないとき、すなわち全開になるように制御されているときに、減速側にある平均クランク角加速度が検出された気筒の平均クランク角加速度が減速側にない場合に本異常あり、と判定するように作成されている。本実施例では、CPUとROMとRAM(以下、単にCPU等と称す)と内燃機関50制御用のプログラムとで、各種の検出手段や判定手段や制御手段などが実現されており、特にCPU等とクランク角加速度算出用プログラムとでクランク角加速度算出手段が、CPU等と平均クランク角加速度算出用プログラムとで平均クランク角加速度算出手段が、CPU等と故障判定用プログラムとで故障判定手段が夫々実現されている。
図3はクランク角加速度の算出方法の一例を模式的に示す図である。本実施例では、クランク角加速度を算出するためにクランク角センサ71からの出力信号をクランク角10°毎に検出する。また本実施例では、TDCとBDCの2ヶ所のクランク角位置で角速度ω0(k),ω0(k+1)をそれぞれ求め、同時にクランク軸がTDCからBDCまで回転する時間Δt(k)を求める。角速度ω0(k)を求める際には、例えば図3に示すように、クランク角がTDCの位置から前後10°づつの範囲を変化している間の時間Δt0(k),Δt10(k)を検出する。そして、時間Δt0(k)+Δt10(k)の間にクランク角は20°変化しているため、ω0(k)=(20/(Δt0(k)+Δt10(k)))×(π/180)を演算することによってω0(k)[rad/s]を算出できる。同様に、ω0(k+1)を算出する際は、クランク角がBDCの位置から前後10°づつの範囲を変化している間の時間Δt0(k+1),Δt10(k+1)を検出する。そして、ω0(k+1)=(20/(Δt0(k+1)+Δt10(k+1)))×(π/180)を演算することによってω0(k+1)[rad/s]を算出できる。さらにこれら角速度ω0(k),ω0(k+1)を用いて、(ω0(k+1)−ω0(k))/Δt(k)を演算することで、TDCからBDCまでの間のクランク角加速度を算出することができる。
一方、TDCからBDCまでの区間で慣性トルクの平均値は略ゼロになる。このため、この区間のクランク角加速度を求めることで往復慣性質量の影響を排除できる。これにより燃焼状態のみに起因するクランク角加速度を算出することができ、クランク角加速度に基づいて燃焼状態を推定することが可能となる。また、内燃機関50は#1気筒から#4気筒までの4気筒で構成されており、クランク角180°毎に#1気筒、#3気筒、#4気筒、#2気筒の順で膨張行程が行われる。したがって、例えば#1気筒が膨張行程になっている場合には、#3気筒は圧縮行程、#4気筒は吸気行程、#2気筒は排気行程となる。そして圧縮、吸気及び排気行程のトルクは、膨張行程で発生する筒内ガス圧によるトルクに比べて非常に小さい。このため、#1気筒の膨張行程で算出したクランク角加速度は、#1気筒の爆発で発生した筒内ガス圧を反映しているとみなすことができる。したがって各気筒の膨張行程でクランク角加速度を算出することで、燃焼状態を推定可能なクランク角加速度を気筒毎に算出できるようになる。本実施例では、クランク角加速度算出用プログラムは上記のようにしてクランク角加速度を算出するように作成されている。
図4は、気流制御弁58の作動状態の変化があったときにクランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。ここでは#1及び#3気筒に対応する気流制御弁58を吸気ポート52aから取り外すことで気流制御弁58の故障状態を再現している。この状態で気流制御弁58はおよそ時間t1まで全閉になるように制御されており、その後全開になるように制御されている。気流制御弁58が全閉になるように制御されているとき、#1及び#3気筒のクランク角加速度の分布は減速側、換言すれば負の値に偏っていることがわかる。これに対して#2及び#4気筒のクランク角加速度の分布は加速側、換言すれば正の値に偏っていることがわかる。これは、#1及び#3気筒が燃焼状態の悪化により抵抗となり、回転数Neを低下させるように作用することによる。一方、気流制御弁58が全開になるように制御されているとき、すべての気筒でクランク角加速度の分布はゼロ付近にまとまっていることがわかる。これは気流制御弁58全開時には気流制御弁58が燃焼改善に寄与していないため、気流制御弁58が変形、破損、脱落等により故障していても燃焼状態、換言すればクランク角加速度に影響が及ばないことによる。
図5は、図4に示したクランク角加速度の平均クランク角加速度を気筒毎に算出した結果を模式的に示す図である。具体的には図5(a)では気流制御弁58が全閉になるように制御されているときの平均クランク角加速度の算出結果を示しており、図5(b)では気流制御弁58が全開になるように制御されているときの平均クランク角加速度の算出結果を示している。なお、平均クランク角加速度を算出するためのクランク角加速度のサンプルを取得する間隔は図5に示すような気流制御弁58の作動状態毎に限られず、気流制御弁58の作動状態毎にクランク角加速度の分布傾向が十分反映されるサンプルが得られる程度の間隔であればよい。具体的には例えば気流制御弁58の作動状態毎にさらに所定の時間内で得られるクランク角加速度のサンプルの平均により平均クランク角加速度を算出することなども可能である。
図5(a)に示すように、気流制御弁58全閉時には#1及び#3気筒の平均クランク角加速度は減速側に収束していることがわかる。これに対して#2及び#4気筒の平均クランク角加速度は加速側に収束していることがわかる。一方、図5(b)に示すように気流制御弁58全開時には、すべての気筒で平均クランク角加速度はほぼゼロに収束していることがわかる。本実施例では係る平均クランク角加速度の収束性に着目して気流制御弁58の故障を気筒毎に検出する。
次に、気流制御弁58の故障を気筒毎に検出するにあたって、ECU1Aで行われる処理を図6に示すフローチャートを用いて詳述する。ECU1Aは、CPUがROMに格納された上述の内燃機関50制御用プログラムや、クランク角加速度算出用プログラムや、平均クランク角加速度算出用プログラムや、故障判定用プログラムなどの各種のプログラムに基づき、フローチャートに示す処理を実行することで気流制御弁58の故障を検出する。CPUは内燃機関50が始動中であるか否かを判定する処理を実行する(ステップ11)。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUは水温THWが所定範囲内にあるか否かを判定する処理を実行する(ステップ12)。ここで所定範囲とは冷間ファストアイドル時を示す温度範囲であり、本実施例ではこの所定範囲を−10℃から60℃までの温度範囲に設定している。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUはアイドル条件が成立しているか否かを判定する処理を実行する(ステップ13)。本実施例では内燃機関50の運転状態が比較的安定しているアイドル運転時に気流制御弁58の故障検出を行うようにしているため、本ステップでアイドル条件が成立しているか否かが判定される。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。
一方肯定判定であれば、CPUは気流制御弁58が全閉になるように制御されているか否かを判定する処理を実行する(ステップ14)。肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ15)。続いてCPUは、平均クランク角加速度が負で、且つ所定値よりも小さいか否かを気筒毎に判定する処理を実行する(ステップ16)。本実施例ではこの所定値を−100[rad/s2]に設定している。ステップ16で否定判定であれば、CPUは気流制御弁58が正常である、と判定する処理を実行する(ステップ17)。一方、1気筒でもステップ16に示す条件に該当すればステップ16で肯定判定され、CPUは該当する気筒に対応する気流制御弁58に仮異常あり、と判定する処理を実行する(ステップ18)。
また、冷間ファストアイドル時に気流制御弁58が全開になるように制御されているときに、本フローチャートに示す処理が実行されると、ステップ11から13までで肯定判定された後、ステップ14で否定判定される。これによりステップ20以降に示す処理が実行される。なお、ステップ18で仮異常判定したことにより気流制御弁58が全開になるように適宜制御してもよい。ステップ14で否定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ21)。続いてCPUは、平均クランク角加速度が負で、且つ所定値よりも小さいか否かを気筒毎に判定する処理を実行する(ステップ22)。本実施例ではこの所定値を−100[rad/s2]に設定している。
ステップ22で肯定判定であれば、気流制御弁58が機能していないにも関わらず、燃焼状態が悪化していることになる。このためステップ22で肯定判定であれば、CPUは気流制御弁58以外の異常あり、と判定する処理を実行する(ステップ24)。一方、ステップ22で否定判定であれば、CPUはまずステップ18で仮異常判定されたか否かを判定する処理を実行し(ステップ23)、否定判定であれば、CPUは本フローチャートに示す処理を一旦終了する。一方肯定判定であれば、ステップ18で判定した仮異常が気流制御弁58に基づくものであると特定できる。このため、ステップ23で肯定判定であれば、CPUはステップ18で仮異常判定した気流制御弁58に本異常あり、と判定する処理を実行する(ステップ25)。
ところで、上述した図6に示すフローチャートは冷間ファストアイドル時に気流制御弁58の故障を検出するための処理を示したものである。一方、温間時には一般に内燃機関50で空燃比のF/B制御が行われる。このため、温間時には各気筒において燃焼状態が冷間ファストアイドル時よりも安定し、これに起因して気流制御弁58の故障が検出し難くなる傾向にある。このため、次に気流制御弁58の故障を温間時に高い検出性をもって検出するにあたって、ECU1Aで行われる処理を図7に示すフローチャートを用いて詳述する。なお本フローチャートは、ステップ13の後にステップ13a、13b及び13cが追加されている以外、図6に示すフローチャートと同一のものとなっている。このため、本フローチャートでは特にステップ13a、13b及び13cについて詳述する。但しステップ12に関しては、本フローチャートでは所定範囲が温間時であることを示す60℃から90℃までの温度範囲に設定されている。
ステップ13に続いて、CPUは故障検出条件が成立したか否かを判定する処理を実行する(ステップ13a)。故障検出条件とは、具体的には例えば車速が0km/hであること、アイドル回転数が所定範囲内(例えば目標回転数±25rpm)にあること、空燃比が所定範囲内(例えば目標空燃比を14.6として、14.6±0.1)にあること、蒸発燃料のパージ制御を行っている場合にはエバポパージ量が所定範囲内(例えば1%以内)にあること、可変動弁機構VVTを備えている場合にはVVT値が略ゼロであること、クランク角センサ71などの各種のセンサの異常が検出されていないこと、その他ダイアグノーシス診断で異常が検出されていないこと等である。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUはアイドル点火時期を大幅に遅角する処理を実行する(ステップ13b)。具体的には本実施例では、アイドル点火時期をATDC10°に遅角している。本ステップでアイドル点火時期を大幅に遅角することで各気筒において燃焼状態を不安定にすることができる。このため、燃焼状態が悪化している気筒を平均クランク角加速度で検出し易くすることができる。続いてCPUは気流制御弁58の作動状態を確認し、気流制御弁58が全閉になるように制御されていない場合には、気流制御弁58を全閉に制御するための処理を実行する(ステップ13c)。これによりステップ14で肯定判定され、ステップ15以降に示す処理を実行して仮異常判定を行うことができる。
一方、ステップ18で仮異常あり、と判定した後に本フローチャートに示す処理を実行したときには、ステップ13cでCPUは気流制御弁58の作動状態を確認し、気流制御弁58が全開になるように制御されていない場合には、気流制御弁58を全開に制御するための処理を実行する。これによりステップ14で否定判定され、ステップ20以降に示す処理を実行して本異常判定を行うことができる。なお、図6及び図7に示すフローチャートにおいて、ステップ21以降に示す処理がステップ15以降に示す処理よりも先に実行されてもよく、この場合にはステップ23に示す処理を実行しないようにするとともに、まずステップ21以降に示す処理で気流制御弁58全開時に異常がないことを確認し、その後ステップ15以降に示す処理が実行されたときに、ステップ16で肯定判定であれば、該当する気筒に対応する気流制御弁58に異常あり、と判定するように故障判定用プログラムを作成すればよい。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Aを実現できる。
本実施例に係るECU1Bは、故障判定用プログラムが、さらに内燃機関50の始動後、所定時間内に平均クランク角加速度の代わりに、クランク角加速度の変化の軌跡長(以下、単に軌跡長とも称す)に基づいて、気流制御弁58の故障を対応する気筒毎に判定するためのプログラムを有して構成されている以外、実施例1に係るECU1Aと同一のものとなっている。ここで内燃機関50の始動後、所定時間内はA/Fセンサ23や酸素センサ24が活性温度に達していないため、空燃比のF/B制御が行われない。この場合、特に燃焼状態が悪化している気筒では燃焼状態が大きくばらつくことになるため、クランク角加速度も激しく変化し、その結果、軌跡長が明らかに長くなる。
図8は、空燃比のF/B制御の状態変化があったときにクランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。ここでは#1及び#3気筒に対応する気流制御弁58を吸気ポート52aから取り外すことで、気流制御弁58の故障状態を再現している。この状態で空燃比のF/B制御は時間t2まで行われておらず、その後空燃比のF/B制御が行われている。空燃比のF/B制御が行われていないとき、#1及び#3気筒のクランク角加速度は大きく変動している。これに対して#2及び#4気筒のクランク角加速度の変動は比較的小さいことがわかる。一方、空燃比のF/B制御が行われているとき、すべての気筒でクランク角加速度の収束性が高まり、変動が小さくなっていることがわかる。
図9は、空燃比のF/B制御が行われていないときの軌跡長を気筒毎に算出した結果を模式的に示す図である。図9に示すように、#1及び#3気筒の軌跡長は#2及び#4気筒の軌跡長よりも長くなっていることがわかる。一方、空燃比のF/B制御が行われているときは、各気筒で燃焼状態の安定性が高まるため、軌跡長では正常な気筒と異常な気筒との間で有意差が小さくなる。このため、空燃比のF/B制御が行われているときは、本実施例では図10に示すように平均クランク角加速度を気筒毎に算出して気流制御弁58の故障を検出する。図10から、平均クランク角加速度はF/B制御が行われているときでも#1及び#3気筒で減速側に収束し、#2及び#4気筒で加速側に収束することがわかる。このような分析結果から、本実施例では空燃比のF/B制御が行われていないときには、軌跡長の違いに着目して気流制御弁58の故障を気筒毎に高い検出性で検出する。
次に気流制御弁58の故障を検出するにあたって、ECU1Bで行われる処理を図11に示すフローチャートを用いて詳述する。なお、ステップ31から33までは図6に示すフローチャートのステップ11から13までと同一のものとなっているため説明を省略する。ステップ33の肯定判定に続いて、CPUは気流制御弁58が全閉になるように制御されているか否かを判定する処理を実行する(ステップ34)。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUは空燃比のF/B制御が実行中であるか否かを判定する処理を実行する(ステップ35)。否定判定であれば、CPUは軌跡長を気筒毎に算出する処理を実行する(ステップ36)。図12は軌跡長の算出方法を模式的に示す図である。軌跡長は、負のクランク角加速度を正数に変換した後に積算していくことで算出される。
ステップ36に続いてCPUは、軌跡長が所定値よりも大きいか否かを判定する処理を実行する(ステップ37)。本実施例ではこの所定値を1000[rad/s2]に設定している。肯定判定であれば、CPUは気流制御弁58に異常あり、と判定する処理を実行する(ステップ38)。一方、ステップ37で否定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ41)。すなわち本実施例では、軌跡長で異常を検出できなかった場合でも、さらに平均クランク角加速度で判定を行うようにしている。これによりダブルチェックといった観点からも故障の検出性を高めることができる。また、ステップ35で肯定判定された場合にも同様にステップ41に示す処理を実行する。続いてCPUは、平均クランク角加速度が負で、且つ所定値よりも小さいか否かを気筒毎に判定する処理を実行する(ステップ42)。本実施例ではこの所定値を−100[rad/s2]に設定している。
ステップ42で否定判定であれば、燃焼状態が特段悪化していないことになる。このためステップ42で否定判定であれば、CPUは気流制御弁58が正常である、と判定する処理を実行する(ステップ43)。一方、1気筒でもステップ42に示す条件に該当すればステップ42で肯定判定される。この場合、CPUは該当する気筒に対応する気流制御弁58に異常あり、と判定する処理を実行する(ステップ44)。なお、本実施例では説明の便宜上ステップ38及び44で異常あり、と判定しているが、これらのステップにおける異常判定を仮異常判定として位置付け、ステップ34の否定判定に続いて実施例1と同様にステップ21から24までの処理を行うようにすることが好ましい。これにより気流制御弁58の異常であるか否かをより正確に判定できる。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Bを実現できる。
本実施例に係るECU1Cは、さらに回転数Neを目標回転数に維持すべく、アイドル点火時期のF/B制御を行うためのアイドル点火時期F/B制御用プログラムがROMに格納されている以外、実施例1に係るECU1Aと同一のものとなっている。ここで冷間ファストアイドル時に各気筒に対応する気流制御弁58が正常に作動していれば、回転数Neを目標回転数に維持できる。一方、1気筒でも対応する気流制御弁58が故障していれば、回転数Neは目標回転数よりも故障の度合いに応じて低下してしまう。さらに回転数Neが低下するとクランク角速度も低下してしまうため、クランク角速度の変化量であるクランク角加速度の大きさも小さくなってしまう。すなわち、クランク角加速度による気流制御弁58の故障検出精度は回転数Neが低下した分、低下してしまうことになる。
図13は、クランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。ここでは#1気筒と#3気筒に対応する気流制御弁58を吸気ポート52aから取り外すことで、気流制御弁58の故障状態を再現している。また図14は、図13に示したクランク角加速度の平均クランク角加速度を気筒毎に算出した結果を模式的に示す図である。より具体的には図14(a)ではアイドル点火時期のF/B制御を行った場合の平均クランク角加速度の算出結果を示しており、図14(b)ではアイドル点火時期のF/B制御を行わなかった場合の平均クランク角加速度の算出結果を示している。図14(a)及び(b)に示すように、アイドル点火時期のF/B制御を行うことでS/N比が向上し、平均クランク角加速度の正常値と異常値との間の隔たりが拡大することがわかる。
図15はアイドル点火時期のF/B制御を模式的に示す図である。アイドル点火時期のF/B制御を行うにあたっては、まずクランク角センサ71の出力信号に基づき回転数Neを検出し、さらに目標回転数と回転数Neとの差を算出する。アイドル点火時期のF/B制御は、この差に基づき回転数Neが目標回転数になるようにアイドル点火時期を変更することで行われる。なお、図15に示すように目標空気量とエアフロメータ12の出力信号に基づく空気量の差を算出し、この差に基づきスロットル開度のF/B制御を行ってもよい。図16は、内燃機関50で発生するトルクの特性をアイドル点火時期との関係で示す図であり、図16(a)では気流制御弁58が吸気通路に備えられていない場合のトルク特性を、図16(b)では気流制御弁58が吸気通路に備えられている場合のトルク特性を夫々示している。なお、図16(a)及び(b)では回転数Ne及び空気量は一定且つ同一の大きさとなっている。
図16(a)及び(b)から、同一のアイドル点火時期からアイドル点火時期を同じように進角させた場合、気流制御弁58を備えている場合と気流制御弁58を備えていない場合とでともにトルクが向上することがわかる。ところが、点火時期変更前後のトルク差は、気流制御弁58を備えている場合のほうが気流制御弁58を備えていない場合よりも大きくなることがわかる。これにより、アイドル点火時期を適度に進角させることで燃焼状態が悪化している気筒の出力低下を主として他の気筒の出力で補うようにして、回転数Neを目標回転数にF/B制御できることがわかる。なお、アイドル点火時期を一定にしてスロットル開度を変化させた場合についても、同様に気流制御弁58を備えている場合のほうが気流制御弁58を備えていない場合よりも、スロットル開度変更前後のトルク差は大きくなる。本実施例ではCPU等とアイドル点火時期F/B制御用プログラムとでアイドル点火時期F/B制御手段が実現されており、回転数Neを目標回転数に維持すべくアイドル点火時期のF/B制御を行うことで、気流制御弁58の故障を気筒毎に高い検出性で検出する。
次に気流制御弁58の故障を判定するにあたって、ECU1Cで行われる処理を図17に示すフローチャートを用いて詳述する。なお、ステップ51から53までは図6に示すフローチャートのステップ11から13までと同一のものとなっているため説明を省略する。ステップ53の肯定判定に続いて、CPUは目標回転数と回転数Neとの差が所定範囲内に収まっているか否かを判定する処理を実行する(ステップ54)。否定判定であれば、CPUはアイドル点火時期を補正する処理を実行する(ステップ55)。具体的には目標回転数と回転数Neとの差に基づき、図17に示すマップデータを参照してアイドル点火時期の補正量を読み取るとともに、読み取った補正量でアイドル点火時期を補正する処理を実行する。なお、本実施例ではこのマップデータがROMに格納されている。ステップ54で肯定判定されるまでの間、ステップ55が繰り返し実行され、これにより回転数Neが目標回転数にF/B制御される。
ステップ54で肯定判定であれば、CPUは気流制御弁58が全閉になるように制御されているか否かを判定する処理を実行する(ステップ56)。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ57)。続いてCPUは、平均クランク角加速度が負で、且つ所定値よりも小さいか否かを気筒毎に判定する処理を実行する(ステップ58)。本実施例ではこの所定値を−100[rad/s2]に設定している。ステップ58で否定判定であれば、燃焼状態は特段悪化していないことになる。このためステップ58で否定判定であれば、CPUは気流制御弁58が正常である、と判定する処理を実行する(ステップ59)。
一方ステップ58で1気筒でもステップ58に示す条件に該当すれば肯定判定され、CPUは該当する気筒に対応する気流制御弁58に異常あり、と判定する処理を実行する(ステップ60)。なお、本実施例では説明の便宜上ステップ60で異常あり、と判定しているが、ステップ60における異常判定を仮異常判定として位置付け、ステップ56の否定判定に続いて実施例1と同様にステップ21から24までの処理を行うようにすることが好ましい。これにより気流制御弁58の異常であるか否かをより正確に判定できる。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Cを実現できる。
本実施例に係るECU40Dは、第1の連通面積推定用プログラムがさらにROMに格納されるとともに、故障判定用プログラムが、さらに平均クランク角加速度の代わりに第1の連通面積推定用プログラムに基づいて推定された連通面積に基づいて、気流制御弁58の故障を対応する気筒毎に判定するプログラムを有して構成されている以外、実施例1に係るECU40Aと同一のものとなっている。第1の連通面積推定用プログラムは、具体的には気流制御弁58が作動しているとき(本実施例では全閉になるように制御されているとき)に連通している吸気通路の連通面積を平均クランク角加速度から気筒毎に推定するように作成されている。なお、気流制御弁58全閉時の連通面積は切欠き部58aの開口面積にほぼ相当する。
ここで例えば故障態様が気流制御弁58の変形といった故障態様の場合には、故障の程度が比較的小さいことから高い検出性が求められる。一方、平均クランク角加速度は同一の構成からなる内燃機関システム100同士であっても製造誤差などによって内燃機関システム100毎に値がばらつき易い。このため気流制御弁58の変形といった故障態様の場合には、例えば気流制御弁58が全閉になるように制御されているときに、平均クランク角加速度と判定基準値とを比較して故障を検出しようとすると誤検出してしまう虞がある。
これに対して、一般に燃焼状態と連通面積の大きさとの間には相関関係がある。図18は筒内乱れ強度と連通面積の大きさとの関係を示す図である。一般に筒内乱れ強度は図18に示すように連通面積の大きさで把握できる。この図から連通面積が小さくなるほど筒内乱れ強度が大きくなり、逆に連通面積が大きくなるほど筒内乱れ強度が小さくなることがわかる。また、筒内乱れ強度は混合気のミキシング性といった観点から燃焼状態の指標になる。このことから、同様に燃焼状態を指標する平均クランク角加速度と連通面積の大きさとの間で成立する相関関係を内燃機関システム100毎に把握すれば、平均クランク角加速度から連通面積の大きさを推定できる。
また、平均クランク角加速度に対して内燃機関システム100毎に判定基準値を設ける代わりに、平均クランク角加速度から連通面積の大きさを推定することによって、推定した連通面積に対して共通の判定基準値で故障判定ができるようになるほか、推定した連通面積を他の制御などでも有効に利用できるようになる。具体的には例えば故障に対応すべく制御を切り替えるような場合に、切り替え後の制御で連通面積の大きさを利用して、より好適な制御を実現できる。このためECU1Dは、連通面積と平均クランク角加速度との相関関係を予め把握して作成したマップデータ(以下、単に第1の連通面積マップと称す)をROMに格納している。本実施例ではCPU等と第1の連通面積推定用プログラムとで連通面積推定手段が実現されており、平均クランク角加速度の代わりに平均クランク角加速度から推定した連通面積に基づくことで、気流制御弁58の故障を気筒毎に高い検出性で検出する。
次に気流制御弁58の故障を判定するにあたって、ECU1Dで行われる処理を図19に示すフローチャートを用いて詳述する。CPUは内燃機関50が始動中であるか否かを判定する処理を実行し(ステップ61)、肯定判定であれば水温THWが所定値以上であるか否かを判定する処理を実行する(ステップ62)。本実施例ではこの所定値を80℃に設定している。肯定判定であれば、CPUはアイドル条件が成立しているか否かを判定する処理を実行する(ステップ63)。なお、ステップ61から63までで否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方ステップ63で肯定判定であれば、CPUは気流制御弁58が全閉になるように制御されているか否かを判定する処理を実行する(ステップ64)。否定判定であれば、CPUは気流制御弁58を全閉に制御するための処理を実行する(ステップ65)。
ステップ65に続いて、或いはステップ64で肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ66)。続いてCPUは、第1の連通面積マップを参照してステップ65で算出した平均クランク角加速度から連通面積を気筒毎に算出する処理を実行する(ステップ67)。続いてCPUは、連通面積が所定値よりも大きいか否かを判定する処理を実行する(ステップ68)。否定判定であれば、気流制御弁58に特段異常がないため処理を終了する。一方肯定判定であれば、CPUは気流制御弁58に異常あり、と判定する処理を実行する(ステップ69)。なお、本実施例では説明の便宜上ステップ69で異常あり、と判定しているが、ステップ69における異常判定を仮異常判定として位置付け、ステップ64の否定判定に続いてステップ65の代わりに実施例1と同様にステップ21から24までの処理を行うようにすることが好ましい。これにより気流制御弁58の異常であるか否かをより正確に判定できる。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Dを実現できる。
本実施例に係るECU40Eは、平均クランク角加速度学習用プログラムがさらにROMに格納されるとともに、故障判定用プログラムが、平均クランク角加速度の代わりに平均クランク角加速度学習用プログラムに基づいて学習された平均クランク角加速度の初期値からの乖離度合いに基づいて、気流制御弁58の故障を対応する気筒毎に判定するためのプログラムをさらに有して構成されている以外、実施例1に係るECU40Aと同一のものとなっている。平均クランク角加速度学習用プログラムは、具体的には定常運転状態(例えばアイドル運転時)で気流制御弁58が作動していないとき、すなわち全閉になるように制御されているときの平均クランク角加速度を気筒毎に算出するとともに、算出した気筒毎の平均クランク角加速度を学習するように作成されている。平均クランク角加速度の学習は例えば内燃機関50始動毎に行われる。
図20は、気流制御弁58が次第に変形して連通面積が拡大した場合の平均クランク角加速度と平均クランク角加速度の検出回数との関係を示す図である。なお、平均クランク角加速度は気流制御弁58全閉時に対応する1気筒につき算出されたものである。気流制御弁58が次第に変形して連通面積が拡大した場合、燃焼状態が次第に悪化するため、平均クランク角加速度の大きさは検出回数が増えるにつれて次第に小さくなる。したがって平均クランク角加速度の初期値からの乖離度合いで気流制御弁58の故障を検出できる。また、平均クランク角加速度の初期値からの乖離度合いで判定することで、平均クランク角加速度の初期値が製造誤差等でばらついた場合でも、これに起因して気流制御弁58の故障を誤検出してしまうことを防止できる。なお、経時的な変化に限られず、突発的に気流制御弁58が変形、破損、脱落等した場合でも同様に乖離度合いで故障を検出できる。この場合には、平均クランク角加速度の学習をより短い時間間隔毎に行うようにすることが好ましい。本実施例ではCPU等とクランク角加速度学習用プログラムとでクランク角加速度学習手段が実現されており、平均クランク角加速度の代わりに上記の乖離度合いに基づくことで、気流制御弁58の故障を気筒毎に高い検出性で検出する。
次に気流制御弁58の故障を判定するにあたって、ECU1Eで行われる処理を図21に示すフローチャートを用いて詳述する。なお、ステップ71から75までは図19に示すフローチャートのステップ61から65までと同一のものとなっているため説明を省略する。ステップ75に続いて、或いはステップ74で肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出するとともに学習する処理を実行する(ステップ76)。具体的にはCPUは、算出した気筒毎の平均クランク角加速度をSRAM(Static Random Access Memory)に記憶することで学習を行う。なお、SRAMはバッテリー電源が切れるまで記憶を保持できるメモリであり、ECU1EはSRAMも備えている。
続いてCPUは、平均クランク角加速度の初期値からの乖離度合いを気筒毎に算出する処理を実行する(ステップ77)。続いてCPUは、乖離度合いが所定値よりも大きいか否かを判定する処理を実行する(ステップ78)。否定判定であれば、気流制御弁58に特段異常がないため処理を終了する。一方肯定判定であれば、CPUは乖離度合いが大きいと判定された気筒に対応する気流制御弁58に異常あり、と判定する処理を実行する(ステップ79)。なお、本実施例では説明の便宜上ステップ79で異常あり、と判定しているが、ステップ79における異常判定を仮異常判定として位置付け、ステップ74の否定判定に続いてステップ75の代わりに実施例1と同様にステップ21から24までの処理を行うようにすることが好ましい。これにより気流制御弁58の異常であるか否かをより正確に判定できる。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Eを実現できる。
本実施例に係るECU1Fは、複数の気筒の間で略同一の平均クランク角加速度に対応する点火遅角量を気筒毎に算出するための点火遅角量算出用プログラムを備えるとともに、故障判定用プログラムが、平均クランク角加速度の代わりに点火遅角量算出用プログラムに基づき算出された点火遅角量に基づいて、気流制御弁58の故障を対応する気筒毎に判定するためのプログラムをさらに有して構成されている以外、実施例1に係るECU1Aと同一のものとなっている。点火遅角量算出用プログラムは、具体的には定常運転状態(例えばアイドル運転時)で気流制御弁58が作動しているとき(本実施例では全閉になるように制御されているとき)に1気筒毎に点火時期を次第に遅角して対応する気筒の平均クランク角加速度を算出するとともに、算出した平均クランク角加速度を対応する点火遅角量とともにRAMに記憶するように作成されている。これにより、RAMに記憶された複数の平均クランク角加速度及び対応する点火遅角量のうちから、複数の気筒の間で略同一の平均クランク角加速度(以下、略同一の平均クランク角加速度と略称する)に対応する点火遅角量を求めて気筒間で比較できるようになる。なお、本実施例では点火遅角量はアイドル点火時期からの点火遅角量となる。また、点火遅角量の代わりに例えば算出した平均クランク角加速度に対応する点火時期を記憶するようにしてもよい。
図22は、略同一の平均クランク角加速度に対応する点火遅角量を気筒毎に示す図である。図22では平均クランク角加速度が略ゼロのときの点火遅角量を気筒毎に示している。なお、点火遅角量は気流制御弁58全閉時に検出されたものである。ここで点火時期を遅角した場合、燃焼状態は不安定になる傾向にあるが、点火時期を遅角させた上である同一の燃焼状態を得るにあたっては、正常な気筒のほうが異常な気筒よりも燃焼状態が安定しているため、点火遅角量は大きくなる。換言すれば、異常な気筒ではもともと燃焼状態が悪化しているため、遅角できる点火遅角量は小さくなる。したがって図22から、他の気筒と比較して点火遅角量が小さい#4気筒が異常な気筒であり、この気筒に対応する気流制御弁58に異常があると推定できる。また、この#4気筒の異常を検出するにあたっては、例えば各気筒の点火遅角量が所定値よりも小さいか否かを判定することで検出できる。本実施例ではCPU等と点火遅角量算出用プログラムとで点火遅角量算出手段が実現されており、平均クランク角加速度の代わりに略同一の平均クランク角加速度に対応する点火遅角量に基づくことで、気流制御弁58の異常を気筒毎に検出する。
次に気流制御弁58の故障を判定するにあたって、ECU1Fで行われる処理を図23に示すフローチャートを用いて詳述する。なお、ステップ81から85までは図19に示すフローチャートのステップ61から65までと同一のものとなっているため説明を省略する。ステップ85に続いて、或いはステップ84で肯定判定であれば、CPUは1気筒毎に点火時期を遅角させる処理を実行する(ステップ86)。本ステップで同時に平均クランク角加速度を算出するとともに、算出した平均クランク角加速度を対応する点火遅角量とともにRAMに記憶する。続いてCPUは、略同一の平均クランク角加速度に対応する点火遅角量を気筒毎に算出する処理を実行する(ステップ87)。続いてCPUは、点火遅角量が所定値よりも小さいか否かを判定する処理を実行する(ステップ88A)。否定判定であれば、気流制御弁58に特段異常がないため処理を終了する。一方肯定判定であれば、CPUは気流制御弁58に異常あり、と判定する処理を実行する(ステップ89)。
ところで、略同一のクランク角加速度に対応する点火遅角量も実施例4で前述したような内燃機関100毎のクランク角加速度のばらつきに起因してばらつくことが考えられることから、点火遅角量から連通面積を推定し、推定した連通面積の大きさで気流制御弁58の故障を検出することも可能である。図24は連通面積と点火遅角量との関係を示す図である。この図から点火遅角量が小さくなるほど連通面積が大きくなることがわかる。したがって、係る関係をマップデータ(以下、単に第2の連通面積マップと称す)としてROMに格納し、この第2の連通面積マップから気筒毎の点火遅角量に基づき、気流制御弁58が作動しているとき(本実施例では全閉になるように制御されているとき)に連通している吸気通路の連通面積を読み取ることで、点火遅角量から連通面積を推定することができる。このため本実施例では、さらに気流制御弁58が作動しているときに連通している吸気通路の連通面積を気筒毎の点火遅角量から推定するための第2の連通面積推定用プログラムをROMに格納している。これにより、推定した連通面積の大きさで気流制御弁58の故障を気筒毎に高い検出性で検出することが可能になる。
次に点火遅角量から推定した連通面積を利用して気流制御弁58の故障を検出するにあたって、ECU1Fで行われる処理を図25に示すフローチャートを用いて詳述する。なお、本フローチャートに示す処理はステップ87の後にステップ87aが追加されている点と、ステップ88Aがステップ88Bに変更されている点を除き、図23に示すフローチャートと同一のものとなっている。このため本フローチャートでは特にステップ87a及び88Bについて詳述する。ステップ87に続いて、CPUはステップ87で算出した点火遅角量に基づき、第2の連通面積マップから対応する連通面積を算出する処理を実行する(ステップ87a)。
続いてCPUは、連通面積が所定値よりも大きいか否かを判定する処理を実行する(ステップ88B)。否定判定であれば、気流制御弁58に特段異常がないため処理を終了する。一方肯定判定であれば、CPUは気流制御弁58に異常あり、と判定する処理を実行する(ステップ89)。なお、本実施例では説明の便宜上ステップ89で異常あり、と判定しているが、ステップ89における異常判定を仮異常判定として位置付け、ステップ84の否定判定に続いてステップ85の代わりに実施例1と同様にステップ21から24までの処理を行うようにすることが好ましい。これにより気流制御弁58の異常であるか否かをより正確に判定できる。以上により、気流制御弁58の故障を対応する気筒毎に低コストで、さらには高い検出性で検出可能なECU1Fを実現できる。
本実施例に係るECU1Gは、アクチュエータ62に一番近い気流制御弁58に対応する気筒と、アクチュエータ62から一番離れた気流制御弁58に対応する気筒の平均クランク角加速度の差をもとに、弁軸61の捩れ量を算出するための捩れ量算出用プログラムと、捩れ量に基づき、気流制御弁58の開度補正量を算出するための開度補正量算出用プログラムをさらにROMに格納している以外、実施例1に係るECU1Aと同一のものとなっている。なお、気流制御弁58の開度補正量は弁軸61の捩れによる燃焼状態の悪化を改善するための補正量である。
ここで気流制御弁58が例えば半開時に吸気の力を受けた場合、図2に示すようにアクチュエータ62から一番離れた位置に固定されている気流制御弁58のほうが、アクチュエータ62に近い気流制御弁58よりも弁軸61の捩れによって吸気通路開放側にずれ易い。これにより吸気通路が余計に開放されると、対応する気筒で燃焼状態が悪化してしまう。このため本実施例では弁軸61の捩れ量を上述した気筒の平均クランク角加速度に基づき算出し、捩れ量の大きさによって燃焼状態の悪化を度合いで判定する。なお、本実施例では気筒毎に燃焼状態を改善するのではなく、気流制御弁58の開度を補正することで燃焼状態を改善するため、燃焼状態が悪化している気筒を特定しない。但し、弁軸61の捩れにより燃焼状態が悪化している気筒は、通常アクチュエータ62から一番離れた位置に固定されている気流制御弁58に対応する気筒とみなすことができる。また、この捩れ量が相当大きい場合には、例えば捩れ量が所定値よりも大きいことを以って、さらにその隣の気筒も燃焼状態が悪化していると判定することなども可能である。本実施例ではCPU等と捩れ量算出用プログラムとで捩れ量算出手段が、CPU等と開度補正量算出用プログラムとで開度補正量算出手段が夫々実現されている。
次に、弁軸61の捩れによる燃焼状態の悪化を気流制御弁58の開度補正によって改善するにあたって、ECU1Gで行われる処理を図26に示すフローチャートを用いて詳述する。なお、本フローチャートに示す処理を実行する前に、気流制御弁58の変形、破損、脱落等といった故障が発生していないかを、前述の実施例1から6までに示した手法等により判定しておくことが好ましい。CPUは気流制御弁58が全閉または半開であるか否かを判定する処理を実行する(ステップ91)。否定判定であればCPUは気流制御弁58が全開になっている、と判定し(ステップ97)、本フローチャートに示す処理を終了する。一方肯定判定であれば、CPUは気流制御弁58に対する要求開度がゼロよりも大きいか否かを判定する処理を実行する(ステップ92)。否定判定であれば、CPUは気流制御弁58が全閉になっている、と判定し(ステップ98)、処理を終了する。
一方肯定判定であれば気流制御弁58が半開になっていると判定され、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ93)。続いてCPUはステップ93で算出した平均クランク角加速度に基づき、弁軸61の捩れ量を算出する処理を実行する(ステップ94)。なお、燃焼状態が特段悪化してない場合には算出される捩れ量は略ゼロとなる。さらにCPUはステップ94で算出した捩れ量に基づき、気流制御弁58の開度補正量を算出する処理を実行する(ステップ95)。続いてCPUは、要求開度から開度補正量を減じた値がゼロよりも小さいか否かを判定する処理を実行する(ステップ96)。ステップ96で肯定判定であれば、CPUは気流制御弁58を全閉に制御し(ステップ98)処理を終了する。一方否定判定であれば、CPUは要求開度から開度補正量を減じた値に基づき、気流制御弁58の開度を補正制御するための処理を実行する(ステップ99)。これにより、気流制御弁58の開度が閉じ側に補正される。以上により、特に弁軸61の捩れに起因する気流制御弁58の故障を検出可能な、さらには弁軸61の捩れに起因する燃焼状態の悪化を改善可能なECU1Gを実現できる。
本実施例に係るECU1Hは、弁軸61の捩れ量に基づいて、燃焼状態が悪化した気筒に対して、弁軸61の捩れによって燃焼状態が悪化した分だけ燃焼状態を改善すべく点火遅角量を減少補正するための点火遅角量減少用プログラムと、弁軸61の捩れ量に基づいて、弁軸61の捩れによって燃焼状態が悪化した分だけ燃焼状態を改善すべく燃焼状態が悪化した気筒に対して空燃比をリッチ側にシフトさせるための空燃比補正用プログラムとをさらにROMに格納している以外、実施例7に係るECU1Gと同一のものとなっている。これら点火遅角量減少用プログラム及び空燃比補正用プログラムに基づき、燃焼状態が悪化している特定の気筒のみに対して点火遅角量や空燃比を変更することで、全気筒の点火遅角量や空燃比を変更しようとした場合と比較して、触媒暖機性等への悪影響を抑制できる。
なお、アクチュエータ62から一番離れた気流制御弁58に対応する気筒が、通常弁軸61の捩れにより燃焼状態が悪化する特定の気筒となり、本実施例では燃焼状態が悪化しているか否かは捩れ量の大きさによって度合いで判定される。但しこれに限られず、例えばアクチュエータ62に一番近い気流制御弁58に対応する気筒の平均クランク角加速度との差の大きさが所定値よりも大きいか否かを、アクチュエータ62から一番離れた気流制御弁58に対応する気筒からアクチュエータ62に一番近い気流制御弁58に対応する気筒側に向かって順に判定したりしてもよい。本実施例ではCPU等と点火遅角量減少用プログラムとで点火遅角量減少手段が、CPU等と空燃比補正用プログラムとで空燃比補正手段が夫々実現されている。
次に、弁軸61の捩れによる燃焼状態の悪化を点火遅角量の補正によって改善するにあたって、ECU1Hで行われる処理を図27に示すフローチャートを用いて詳述する。なお、本フローチャートに示す処理を実行する前に、気流制御弁58の変形、破損、脱落等といった故障が発生していないかを、前述の実施例1から6までに示した手法等により判定しておくことが好ましい。CPUは触媒暖機遅角制御を実行しているか否かを判定する処理を実行する(ステップ101)。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUは気流制御弁58が全閉または半開であるか否かを判定する処理を実行する(ステップ102)。否定判定であれば本フローチャートで特段の処理を要しないため処理を終了する。
一方肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ103)。続いてCPUはステップ103で算出した平均クランク角加速度に基づき、弁軸61の捩れ量を算出する処理を実行する(ステップ104)。本ステップで燃焼状態の悪化が捩れ量の大きさによって度合いで判定される。なお、本実施例では捩れ量が所定値よりも小さい場合にはアクチュエータ62から一番離れた気流制御弁58に対応する気筒の燃焼状態が悪化していると判定し、捩れ量が所定値よりも大きい場合には、さらにその隣の気筒も燃焼状態が悪化していると判定する。さらにCPUはステップ104で算出した捩れ量に基づき、点火遅角補正量を算出する処理を実行する(ステップ105)。続いてCPUは、燃焼状態が悪化している特定の気筒のみ点火遅角量を点火遅角補正量で補正する処理を実行する(ステップ106)。これにより触媒暖機性への悪影響を抑制しつつ、燃焼状態を改善できる。
次に、弁軸61の捩れによる燃焼状態の悪化を空燃比の補正によって改善するにあたって、ECU1Hで行われる処理を図28に示すフローチャートを用いて詳述する。なお、本フローチャートに示す処理を実行する前に、気流制御弁58の変形、破損、脱落等といった故障が発生していないかを、前述の実施例1から6までに示した手法等により判定しておくことが好ましい。CPUはF/B制御がオープン状態か否かを判定する処理を実行する(ステップ111)。否定判定であれば、本フローチャートで特段の処理を要しないため処理を終了する。一方肯定判定であれば、CPUは気流制御弁58が全閉または半開であるか否かを判定する処理を実行する(ステップ112)。否定判定であれば本フローチャートで特段の処理を要しないため処理を終了する。
一方肯定判定であれば、CPUは平均クランク角加速度を気筒毎に算出する処理を実行する(ステップ113)。続いてCPUはステップ113で算出した平均クランク角加速度に基づき、弁軸61の捩れ量を算出する処理を実行する(ステップ114)。なお、本実施例では算出した捩れ量が所定値よりも小さい場合にはアクチュエータ62から一番離れた気流制御弁58に対応する気筒の燃焼状態が悪化していると判定し、算出した捩れ量が所定値よりも大きい場合には、さらにその隣の気筒も燃焼状態が悪化していると判定する。さらにCPUはステップ104で算出した捩れ量に基づき、特定の気筒の空燃比をリッチ側にシフトすべく、燃料の補正噴射量を算出する処理を実行する(ステップ115)。これにより触媒暖機性への悪影響を抑制しつつ、燃焼状態を改善できる。以上により、特に弁軸61の捩れに起因する気流制御弁58の故障を検出可能な、さらには弁軸61の捩れに起因する燃焼状態の悪化を気筒毎に改善可能なECU1Gを実現できる。
上述した実施例は本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変形実施可能である。
ECU1Aを内燃機関システム100と共に模式的に示す図である。
気流制御弁58を弁軸61及びアクチュエータ62とアッセンブリした状態で示す図である。
クランク角加速度の算出方法の一例を模式的に示す図である。
気流制御弁58の作動状態の変化があったときにクランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。
図4に示したクランク角加速度の平均クランク角加速度を気筒毎に算出した結果を模式的に示す図である。
ECU1Aで行われる処理をフローチャートで示す図である。
気流制御弁58の故障を温間時に高い検出性をもって検出するにあたって、ECU1Aで行われる処理をフローチャートで示す図である。
空燃比のF/B制御の状態変化があったときにクランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。
空燃比のF/B制御が行われていないときの軌跡長を気筒毎に算出した結果を模式的に示す図である。
空燃比のF/B制御が行われているときに平均クランク角加速度を気筒毎に算出した結果を模式的に示す図である。
ECU1Bで行われる処理をフローチャートで示す図である。
軌跡長の算出方法を模式的に示す図である。
クランク角加速度が時間経過とともに変化する様子を気筒毎に示す図である。
図13に示したクランク角加速度の平均クランク角加速度を気筒毎に算出した結果を模式的に示す図である。
アイドル点火時期のF/B制御を模式的に示す図である。
内燃機関50で発生するトルクの特性をアイドル点火時期との関係で示す図である。
ECU1Cで行われる処理をフローチャートで示す図である。
筒内乱れ強度と連通面積の大きさとの関係を示す図である。
ECU1Dで行われる処理をフローチャートで示す図である。
気流制御弁58が次第に変形して連通面積が拡大した場合の平均クランク角加速度と平均クランク角加速度の検出回数との関係を示す図である。
ECU1Eで行われる処理をフローチャートで示す図である。
略同一の平均クランク角加速度に対応する点火遅角量を気筒毎に示す図である。
ECU1Fで行われる処理をフローチャートで示す図である。
連通面積と点火遅角量との関係を示す図である。
連通面積を利用して気流制御弁58の故障を検出するにあたって、ECU1Fで行われる処理をフローチャートで示す図である。
ECU1Gで行われる処理をフローチャートで示す図である。
弁軸61の捩れによる燃焼状態の悪化を点火遅角量の補正によって改善するにあたってECU1Hで行われる処理をフローチャートで示す図である。
弁軸61の捩れによる燃焼状態の悪化を空燃比の補正によって改善するにあたってECU1Hで行われる処理をフローチャートで示す図である。
符号の説明
1 ECU
10 吸気系
20 排気系
30 燃料噴射系
50 内燃機関
100 内燃機関システム