(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-25
(45)【発行日】2023-10-03
(54)【発明の名称】内燃機関の判定装置
(51)【国際特許分類】
F02D 45/00 20060101AFI20230926BHJP
F02D 41/04 20060101ALI20230926BHJP
F02D 17/02 20060101ALI20230926BHJP
【FI】
F02D45/00 368Z
F02D41/04
F02D17/02 G
(21)【出願番号】P 2020173701
(22)【出願日】2020-10-15
【審査請求日】2022-09-20
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】100105957
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】杉本 仁己
【審査官】津田 真吾
(56)【参考文献】
【文献】特開2002-4936(JP,A)
【文献】特開平9-96216(JP,A)
【文献】特開2001-107799(JP,A)
【文献】特許第2905937(JP,B2)
(58)【調査した分野】(Int.Cl.,DB名)
F02D 45/00
F02D 17/00
F01N 3/00
(57)【特許請求の範囲】
【請求項1】
複数の気筒を有した内燃機関に適用されて、
前記複数の気筒のうちの一部の気筒における混合気の燃焼制御を停止させる停止処理と、前記一部の気筒以外の残りの気筒における混合気の燃焼制御の実行に際して燃焼室に供給される燃料量を前記停止処理の非実行時よりも増量する増量処理とを実行する部分気筒フューエルカット処理と、
失火を検出する失火検出処理と、
各気筒において燃焼制御を実行した回数のうちで前記失火検出処理にて検出された失火の回数が占める割合を示す失火率を算出する算出処理と、
前記失火率が判定閾値以上であるときには排気性状が悪化していると判定する判定処理と、
算出された前記失火率が前記部分気筒フューエルカット処理の非実行中における失火率である場合には前記判定閾値として第1判定閾値を設定する一方、算出された前記失火率が前記部分気筒フューエルカット処理の実行中における失火率である場合には前記判定閾値として前記第1判定閾値よりも値の小さい第2判定閾値を設定する閾値設定処理と、を実行する内燃機関の判定装置。
【請求項2】
前記閾値設定処理は、前記第1判定閾値を最大値、前記第2判定閾値を最小値としたうえで、前記部分気筒フューエルカット処理の実行中に検出された失火の回数と前記部分気筒フューエルカット処理の非実行中に検出された失火の回数との割合に応じて前記判定閾値を可変設定する処理を実行する請求項1に記載の内燃機関の判定装置。
【請求項3】
前記増量処理は、混合気の空燃比が理論空燃比よりもリッチとなるように前記燃料量を増量する処理を実行する請求項1または2に記載の内燃機関の判定装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、内燃機関の判定装置に関する。
【背景技術】
【0002】
たとえば下記の特許文献1には、内燃機関の失火率が規定の閾値以上となったときに内燃機関に異常ありと判定する装置が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
ところで、内燃機関で失火が起きると、排気系に流れ込む未燃燃料の量が多くなるため、排気性状は悪化しやすい。そこで、失火率が規定の閾値以上である場合には、排気性状が許容できる範囲を超えて悪化していると判定することができる。
【0005】
他方、発明者は、内燃機関の軸トルクがゼロではないときにおいて、排気浄化装置の機能回復などを実施すべく、一部の気筒での燃焼を停止するとともに残りの気筒の燃料噴射量を増量することを検討した。ただし、この場合には燃料噴射量が増量されるため、失火が生じたときに排気系に流れ込む未燃燃料の量は多くなる。従って、失火率が小さく上記閾値未満であっても、実際には排気性状が許容できる範囲を超えて悪化している可能性がある。
【課題を解決するための手段】
【0006】
上記課題を解決する内燃機関の判定装置は、複数の気筒を有した内燃機関に適用される。この判定装置は、前記複数の気筒のうちの一部の気筒における混合気の燃焼制御を停止させる停止処理と、前記一部の気筒以外の残りの気筒における混合気の燃焼制御の実行に際して燃焼室に供給される燃料量を前記停止処理の非実行時よりも増量する増量処理とを実行する部分気筒フューエルカット処理と、失火を検出する失火検出処理と、各気筒において燃焼制御を実行した回数のうちで前記失火検出処理にて検出された失火の回数が占める割合を示す失火率を算出する算出処理と、前記失火率が判定閾値以上であるときには排気性状が悪化していると判定する判定処理と、算出された前記失火率が前記部分気筒フューエルカット処理の非実行中における失火率である場合には前記判定閾値として第1判定閾値を設定する一方、算出された前記失火率が前記部分気筒フューエルカット処理の実行中における失火率である場合には前記判定閾値として前記第1判定閾値よりも値の小さい第2判定閾値を設定する閾値設定処理とを実行する。
【0007】
同構成によれば、失火発生時に排気性状が悪化しやすい部分気筒フューエルカット処理の実行時には、同処理の非実行時に比べて上記判定閾値が小さくされる。従って、部分気筒フューエルカット処理の実行時において失火率が小さくても、その失火率が上記判定閾値未満であると誤判定されることを抑制できる。従って、部分気筒フューエルカット処理を実行しても、排気性状の悪化を適切に判定することができるようになる。
【0008】
上記判定装置において、前記閾値設定処理は、前記第1判定閾値を最大値、前記第2判定閾値を最小値としたうえで、前記部分気筒フューエルカット処理の実行中に検出された失火の回数と前記部分気筒フューエルカット処理の非実行中に検出された失火の回数との割合に応じて前記判定閾値を可変設定する処理を実行してもよい。
【0009】
同構成によれば、失火検出処理にて検出された失火の回数に、部分気筒フューエルカット処理の実行中における失火回数と部分気筒フューエルカット処理の非実行中における失火回数とが含まれていても、上記判定閾値を適切に設定することができる。
【0010】
上記判定装置において、前記増量処理は、混合気の空燃比が理論空燃比よりもリッチとなるように前記燃料量を増量する処理を実行してもよい。
同構成では、増量処理として、混合気の空燃比が理論空燃比よりもリッチとなるように燃料量が増量されるため、例えば空燃比が理論空燃比となるように空気量の増加に合わせて燃料量を増量する場合と比較して、部分気筒フューエルカット処理の実行中に失火が起きたときの排気性状の悪化がより顕著になるおそれがある。この点、同構成において上述したような判定閾値の変更が行われることにより、そうした増量処理を実行する場合でも、排気性状の悪化を適切に判定することができる。
【図面の簡単な説明】
【0011】
【
図1】第1実施形態にかかる駆動系および制御装置の構成を示す図。
【
図2】同実施形態にかかる制御装置による再生処理に関する手順を示すフローチャート。
【
図3】同実施形態にかかる制御装置が実行する失火検出処理に関する手順を示すフローチャート。
【
図4】同実施形態にかかる制御装置が実行する失火率の算出処理に関する手順を示すフローチャート。
【
図5】同実施形態にかかる制御装置が実行する排気性状の判定処理に関する手順を示すフローチャート。
【
図6】第2実施形態にかかる制御装置が実行する失火検出処理に関する手順を示すフローチャート。
【
図7】同実施形態にかかる制御装置が実行する失火率の算出処理に関する手順を示すフローチャート。
【
図8】同実施形態にかかる制御装置が実行する排気性状の判定処理に関する手順を示すフローチャート。
【発明を実施するための形態】
【0012】
<第1実施形態>
以下、内燃機関の判定装置の第1実施形態について図面を参照しつつ説明する。
図1に示すように、内燃機関10は、気筒#1~#4の4つの気筒を備えている。内燃機関10の吸気通路12には、スロットルバルブ14が設けられている。吸気通路12の下流部分である吸気ポート12aには、吸気ポート12aに燃料を噴射するポート噴射弁16が設けられている。吸気通路12に吸入された空気やポート噴射弁16から噴射された燃料は、吸気バルブ18の開弁に伴って燃焼室20に流入する。燃焼室20には、筒内噴射弁22から燃料が噴射される。また、燃焼室20内の空気と燃料との混合気は、点火プラグ24の火花放電に伴って燃焼に供される。そのときに生成される燃焼エネルギは、クランク軸26の回転エネルギに変換される。
【0013】
燃焼室20において燃焼に供された混合気は、排気バルブ28の開弁に伴って、排気として排気通路30に排出される。排気通路30には、酸素吸蔵能力を有した三元触媒32と、ガソリンパティキュレートフィルタ(GPF34)とが設けられている。なお、本実施形態では、GPF34として、PMを捕集するフィルタに三元触媒が担持されたものを想定している。
【0014】
クランク軸26には、歯部42が設けられたクランクロータ40が結合されている。歯部42は、クランク軸26の複数の回転角度のそれぞれを示す。クランクロータ40には、基本的には、10°CA間隔で歯部42が設けられているものの、隣接する歯部42間の間隔が30°CAとなる箇所である欠け歯部44が1箇所設けられている。これは、クランク軸26の基準となる回転角度を示すためのものである。
【0015】
クランク軸26は、動力分割装置を構成する遊星歯車機構50のキャリアCに機械的に連結されている。遊星歯車機構50のサンギアSには、第1モータジェネレータ52の回転軸52aが機械的に連結されている。また、遊星歯車機構50のリングギアRには、第2モータジェネレータ54の回転軸54aと駆動輪60とが機械的に連結されている。第1モータジェネレータ52の端子には、インバータ56によって交流電圧が印加される。また、第2モータジェネレータ54の端子には、インバータ58によって交流電圧が印加される。
【0016】
制御装置70は、内燃機関10を制御対象とし、その制御量としてのトルクや排気成分比率等を制御するために、スロットルバルブ14、ポート噴射弁16、筒内噴射弁22、及び点火プラグ24等の内燃機関10の操作部を操作する。また、制御装置70は、第1モータジェネレータ52を制御対象とし、その制御量である回転速度を制御すべく、インバータ56を操作する。また、制御装置70は、第2モータジェネレータ54を制御対象とし、その制御量であるトルクを制御すべくインバータ58を操作する。
図1には、スロットルバルブ14、ポート噴射弁16、筒内噴射弁22、点火プラグ24、およびインバータ56,58のそれぞれの操作信号MS1~MS6を記載している。
【0017】
制御装置70は、内燃機関10の制御量を制御するために、エアフローメータ80によって検出される吸入空気量Ga、クランク角センサ82の出力信号Scr、水温センサ86によって検出される水温THW、および排気圧センサ88によって検出されるGPF34に流入する排気の圧力Pexを参照する。また、制御装置70は、第1モータジェネレータ52や第2モータジェネレータ54の制御量を制御するために、第1モータジェネレータ52の回転角を検知する第1回転角センサ90の出力信号Sm1、および第2モータジェネレータ54の回転角を検知する第2回転角センサ92の出力信号Sm2を参照する。
【0018】
制御装置70は、CPU72、ROM74、記憶装置75、および周辺回路76を備えており、それらが通信線78によって通信可能とされている。ここで、周辺回路76は、内部の動作を規定するクロック信号を生成する回路や、電源回路、リセット回路等を含む。制御装置70は、ROM74に記憶されたプログラムをCPU72が実行することにより制御量を制御する。
【0019】
図2に、本実施形態にかかる制御装置70が実行する処理の手順を示す。
図2に示す処理は、ROM74に記憶されたプログラムをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、以下では、先頭に「S」が付与された数字によって、各処理のステップ番号を表現する。
【0020】
図2に示す一連の処理において、CPU72は、まず、機関回転速度NE、充填効率η及び水温THWを取得する(S10)。機関回転速度NEは、CPU72により、出力信号Scrに基づいて算出される。また、充填効率ηは、CPU72により、吸入空気量Ga及び機関回転速度NEに基づいて算出される。
【0021】
次に、CPU72は、機関回転速度NE、充填効率η及び水温THWに基づき、堆積量DPMの更新量ΔDPMを算出する(S12)。ここで、堆積量DPMは、GPF34に捕集されているPMの量である。詳しくは、CPU72は、機関回転速度NE、充填効率η及び水温THWに基づいて排気通路30に排出される排気中のPMの量を算出する。また、CPU72は、機関回転速度NE及び充填効率ηに基づいてGPF34の温度を算出する。そしてCPU72は、排気中のPMの量やGPF34の温度に基づいて更新量ΔDPMを算出する。
【0022】
次にCPU72は、堆積量DPMを、更新量ΔDPMに応じて更新する(S14)。
次に、CPU72は、フラグFが「1」であるか否かを判定する(S16)。フラグFは、「1」である場合に、GPF34のPMを燃焼除去するための再生処理を実行していることを示し、「0」である場合にそうではないことを示す。
【0023】
CPU72は、フラグFが「0」であると判定する場合(S16:NO)、堆積量DPMが再生実行値DPMH以上であるか否かを判定する(S18)。再生実行値DPMHは、GPF34が捕集したPM量が多くなっており、PMを除去することが望まれる値に設定されている。
【0024】
CPU72は、堆積量DPMが再生実行値DPMH以上であると判定する場合(S18:YES)、再生処理の実行条件が成立するか否かを判定する(S20)。ここで実行条件は、例えば以下の条件(A)及び条件(B)の論理積が真である旨の条件とすればよい。
【0025】
条件(A):内燃機関10に対するトルクの指令値である機関トルク指令値Te*が所定値Teth以上である旨の条件。
条件(B):内燃機関10の機関回転速度NEが所定速度以上である旨の条件。
【0026】
CPU72は、再生処理の実行条件が成立すると判定する場合(S20:YES)、再生処理を実行して、フラグFに「1」を代入する(S22)。この再生処理として、CPU72は、部分気筒フューエルカット処理を実行する。この部分気筒フューエルカット処理は、停止処理と増量処理とを含む。
【0027】
停止処理は、気筒#1のポート噴射弁16及び筒内噴射弁22からの燃料の噴射を停止することにより同気筒#1における混合気の燃焼制御を停止する処理である。
増量処理は、そうした停止処理に伴う機関出力の低下を補うために、気筒#2、気筒#3、及び気筒#4における混合気の燃焼制御を実行するに際いて各燃焼室20に供給される空気量及び燃料量を上記停止処理の非実行時よりも増量する処理である。この増量処理の実行に際しては、スロットルバルブ14の開度調整を通じて燃焼室20への吸入空気量が増量されるとともに、燃焼室20における混合気の空燃比が理論空燃比よりもリッチとなるように、ポート噴射弁16や筒内噴射弁22から噴射される燃料噴射量が増量される。
【0028】
この部分気筒フューエルカット処理は、排気通路30に酸素と未燃燃料とを排出し、GPF34の温度を上昇させてGPF34が捕集したPMを燃焼除去するための処理である。すなわち、排気通路30に酸素と未燃燃料を排出することにより、三元触媒32等において未燃燃料を燃焼させ排気の温度を上昇させ、ひいてはGPF34の温度を上昇させることができる。また、GPF34に酸素を供給することによって、GPF34が捕集したPMを燃焼除去することができる。
【0029】
一方、上記S16の処理にて、CPU72は、フラグFが「1」であると判定する場合(S16:YES)、堆積量DPMが停止用閾値DPML以下であるか否かを判定する(S26)。停止用閾値DPMLは、GPF34に捕集されているPMの量が十分に小さくなり、再生処理を停止させてもよい値に設定されている。CPU72は、堆積量DPMが停止用閾値DPML以下であると判定する場合(S26:YES)、部分気筒フューエルカット処理の実行を停止することにより再生処理を停止して、フラグFに「0」を代入する(S28)。
【0030】
なお、CPU72は、S22,S28の処理を完了する場合や、S18,S20の処理において否定判定する場合には、
図2に示す一連の処理を一旦終了する。
図3に、制御装置70が実行する失火検出処理の手順を示す。
図3に示す処理は、ROM74に記憶されたプログラムをCPU72がたとえば所定周期で繰り返し実行することにより実現される。
【0031】
図3に示す一連の処理において、CPU72は、まず、クランク軸26が30°CA回転するのに要する時間T30を取得する(S30)。時間T30は、出力信号Scrに基づいてクランク軸26が30°CAだけ回転する時間がCPU72によって計時されることにより算出される。
【0032】
次に、CPU72は、「m=0,1,2,3,…」として、時間T30[m+1]に時間T30[m]を代入し、時間T30[0]にS30の処理で新たに取得した時間T30を代入して、それらを記憶装置75に記憶する(S32)。このS32の処理は、時間T30の後のカッコ内の変数を、過去のものほど数字が大きくなるようにするための処理である。この処理により、カッコ内の変数の値が1つ大きい場合には、30°CAだけ前の時間T30を示すこととなる。
【0033】
次に、CPU72は、現在のクランク軸26の回転角度が、気筒#1~#4のいずれかの圧縮上死点を基準としてATDC150°CAであるか否かを判定する(S34)。
CPU72は、ATDC150°CAであると判定する場合(S34:YES)、ATDC150°CAであると判定された気筒において燃焼制御が実行されたか、つまり混合気を燃焼させるための燃料噴射及び点火が実行されたか否かを判定する(S36)。換言すれば、上述した再生処理によって燃焼制御が停止されている気筒、つまりフューエルカット気筒ではないか否かを判定する。
【0034】
CPU72は、燃焼制御が実行されたと判定する場合(S36:YES)、上記いずれかの気筒を失火の有無の判定対象として、判定対象となる気筒の回転変動量ΔT30[0]を算出する(S38)。詳しくは、CPU72は、最新の時間T30[0]から時間T30[4]を減算する。ここで、T30[4]は、判定対象となる気筒のTDCから30°CA回転するのに要する時間である。そのため、失火が生じていない場合には、時間T30[0]は、時間T30[4]よりも小さくなることから、回転変動量ΔT30[0]は、負となる。これに対し、失火が生じる場合、回転変動量ΔT30[0]は正となる。
【0035】
次に、CPU72は、回転変動量ΔT30[0]が変動量閾値Δth以上であるか否かを判定する(S40)。この処理は、判定対象となる気筒において失火が生じたか否かを判定する処理である。たとえば、CPU72は、変動量閾値Δthを、機関回転速度NEや充填効率ηに応じて可変設定することとしてもよい。もっとも、変動量閾値Δthを定めるパラメータは、充填効率ηのように負荷を示す変数と機関回転速度NEとに限らない。たとえば、過去の回転変動量ΔT30と所定値との和であってもよい。ここで、過去の回転変動量ΔT30としては、圧縮上死点の出現タイミングが360°の整数倍だけ過去となって且つ、燃焼制御が停止されていない気筒における量とする。なお、その場合の所定値も、負荷を示す変数や機関回転速度NEに応じて可変設定してもよい。
【0036】
CPU72は、変動量閾値Δth以上であると判定する場合(S40:YES)、失火が生じた旨の判定をして失火を検出する(S42)。そして、CPU72は、失火カウンタCmfをインクリメントする(S44)。
【0037】
なお、CPU72は、S44の処理を完了する場合や、S34,S36,S40の処理において否定判定する場合には、
図3に示す一連の処理を一旦終了する。
図4に、制御装置70が実行する失火率の算出処理の手順を示す。
図4に示す処理は、ROM74に記憶されたプログラムをCPU72がたとえば所定周期で繰り返し実行することにより実現される。
【0038】
図4に示す一連の処理において、CPU72は、まず気筒#1~#4のいずれかの圧縮上死点であるか否かを判定する(S50)。CPU72は、いずれかの気筒の圧縮上死点であると判定する場合(S50:YES)、その気筒において再生処理により燃焼制御を停止しているか否かを判定する(S52)。換言すれば、その気筒においてフューエルカット処理を実行しているか否かを、つまり燃焼制御の停止処理を実行しているか否かを判定する。そして、CPU72は、燃焼制御を実行していると判定する場合(S52:NO)、有効カウンタCeをインクリメントする(S54)。この有効カウンタCeの値は、燃焼制御の実行回数、つまり気筒において混合気が燃焼するように燃料噴射及び点火が行われた回数を示す。そして、CPU72は、有効カウンタCeが規定値Ceth以上であるか否かを判定する(S56)。
【0039】
CPU72は、有効カウンタCeが規定値Ceth以上であると判定する場合(S56:YES)、今現在の失火カウンタCmfを取得する(S58)。
次に、CPU72は、失火率Crを算出する(S60)。失火率Crは、各気筒において燃焼制御を実行した回数のうちで上記失火検出処理にて検出された失火の回数が占める割合を示す値であり、本実施形態では、S58で取得した失火カウンタCmfの値をS56で肯定判定された時点での有効カウンタCeの値で除した値である(Cr=Cmf/Ce)。
【0040】
そして、CPU72は、S60の処理を完了すると、
図4に示す一連の処理を一旦終了する。
図5に、制御装置70が実行する排気性状の判定処理の手順を示す。
図5に示す処理は、上述した失火率の算出処理にて失火率Crが算出されると、ROM74に記憶されたプログラムをCPU72が実行を開始することにより実現される。
【0041】
図5に示す一連の処理において、CPU72は、まず、算出された失火率Crを取得する(S70)。
次に、CPU72は、取得した失火率Crが再生処理の実行中における失火率であるか否かを判定する(S72)。ここでは、失火カウンタCmfが初期化されてから失火率Crの算出が行われるまでの間において再生処理が継続して実行されていた場合に、CPU72は、取得した失火率Crが再生処理の実行中における失火率であると判定する。
【0042】
S72にて否定判定する場合(S72:NO)、つまり取得した失火率Crが再生処理の非実行中における失火率であると判定する場合、CPU72は、閾値設定処理として、第1判定閾値Crth1を判定閾値Crthに代入する処理を実行する(S74)。
【0043】
判定閾値Crthは、失火の発生により排気性状が許容範囲を超えて悪化したか否かを判定するための値であり、失火率Crが判定閾値Crth以上である場合には、排気性状が許容範囲を超えて悪化する排気異常ありと判定される。そして、第1判定閾値Crth1としては、再生処理の非実行時、つまり部分気筒フューエルカット処理の非実行時において、排気性状が許容範囲を超えて悪化するおそれのある失火率Crの下限値が設定されている。
【0044】
一方、S72にて肯定判定する場合(S72:YES)、つまり取得した失火率Crが再生処理の実行中における失火率であると判定する場合、CPU72は、閾値設定処理として、第2判定閾値Crth2を判定閾値Crthに代入する処理を実行する(S76)。
【0045】
第2判定閾値Crth2としては、再生処理の実行時、つまり部分気筒フューエルカット処理の実行時において、排気性状が許容範囲を超えて悪化するおそれのある失火率Crの下限値が設定されている。ここで、部分気筒フューエルカット処理の実行中に失火が起きると、同処理の非実行中と比較して排気系に流れ込む未燃燃料の量が増えるため、排気性状は悪化しやすくなる。従って、部分気筒フューエルカット処理の実行時には、同処理の非実行時と比較して、上記下限値は小さい値になる。従って、第2判定閾値Crth2には、第1判定閾値Crth1よりも小さい値が設定されている。
【0046】
こうして判定閾値Crthを設定すると、次に、CPU72は、S70で取得した失火率Crが判定閾値Crth以上であるか否かを判定する(S78)。
そして、失火率Crが判定閾値Crth以上であると判定する場合(S78:YES)、CPU72は、排気異常ありと判定する(S80)。そして、CPU72は、
図1に示す警告灯100を操作することによって、その旨を報知する(S82)。
【0047】
一方、S78にて、失火率Crが判定閾値Crth未満であると判定する場合(S78:NO)、CPU72は、失火カウンタCmf、有効カウンタCe、及び失火率Crを初期化する(S84)。
【0048】
なお、CPU72は、S82,S84の処理を完了する場合には、
図5に示す一連の処理を終了する。
次に、本実施形態の作用および効果について説明する。
【0049】
(1)算出された失火率Crが判定閾値Crth以上である場合には(
図5のS78:YES)、排気異常ありと判定される(S80)。ここで、本実施形態では、その判定閾値Crthが以下のように設定される。
【0050】
すなわち、失火率Crが再生処理の非実行中における失火率であると判定される場合には(
図5のS72:NO)、判定閾値Crthとして第1判定閾値Crth1が設定される(S74)。一方、失火率Crが再生処理の実行中における失火率であると判定される場合には(
図5のS72:YES)、判定閾値Crthとして、第1判定閾値Crth1よりも値の小さい第2判定閾値Crth2が設定される(S76)。
【0051】
このようにして、失火発生時に排気性状が悪化しやすい再生処理の実行中には、同処理の非実行時に比べて上記判定閾値Crthが小さくされる。従って、再生処理の実行時において失火率Crが小さくても、その失火率Crが上記判定閾値Crth未満であると誤判定されることを抑制できる。そのため、再生処理として実行される上記部分気筒フューエルカット処理を実行しても、排気性状の悪化を適切に判定することができる。
【0052】
(2)上述した増量処理では、混合気の空燃比が理論空燃比よりもリッチとなるように燃料噴射量が増量される。そのため、空燃比が理論空燃比となるように吸入空気量の増加に合わせて燃料噴射量を増量する場合と比較して、再生処理の実行中に失火が起きたときの排気性状の悪化がより顕著になるおそれがある。この点、本実施形態では上述したような判定閾値Crthの変更が行われることにより、そうした増量処理を実行する場合でも、排気性状の悪化を適切に判定することができる。
【0053】
(3)CPU72は、堆積量DPMが閾値DPMth以上となる場合、GPF34の再生処理を実行する。これにより、気筒#1の吸気行程において吸入された空気は、燃焼に供されることなく、気筒#1の排気行程において排気通路に流出する。また、気筒#2~#4の混合気は、理論空燃比よりもリッチとされることから、気筒#2~#4から排気通路30に排出された排気中には、未燃燃料が多量に含まれる。排気通路30に排出された酸素と未燃燃料とは、三元触媒32等で燃焼に供されることにより、GPF34の温度を上昇させる。また、排気通路30に流出した空気中の酸素は、GPF34においてPMを酸化させる。これにより、PMを燃焼して除去することができる。
【0054】
<第2実施形態>
以下、第2実施形態について、第1実施形態との相違点を中心にして説明する。
図6に、本実施形態にかかる失火検出処理の手順を示す。
図6に示す処理は、ROM74に記憶されたプログラムをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、
図6において、
図3に示した処理に対応する処理については、便宜上、同一のステップ番号を付与している。
【0055】
図6に示す一連の処理において、CPU72は、先に説明したS30からS42までの各処理を順次実行する。
そして、S42の処理にて失火が検出されると、CPU72は、現在、再生処理が実行されているか否かを判定する(S90)。そして、再生処理が実行されていないと判定する場合(S90:NO)、CPU72は、第1失火カウンタCmf1をインクリメントする(S44a)。この第1失火カウンタCmf1の値は、再生処理の非実行中、つまり部分気筒フューエルカット処理の非実行中に検出された失火の回数を示す。
【0056】
一方、S90の処理にて、再生処理が実行されていると判定する場合(S90:YES)、CPU72は、第2失火カウンタCmf2をインクリメントする(S44b)。この第2失火カウンタCmf2の値は、再生処理の実行中、つまり部分気筒フューエルカット処理の実行中に検出された失火の回数を示す。
【0057】
そして、CPU72は、S44a、S44bの処理を完了すると、
図6に示す一連の処理を一旦終了する。
図7に、本実施形態にかかる失火率の算出処理の手順を示す。
図7に示す処理は、ROM74に記憶されたプログラムをCPU72がたとえば所定周期で繰り返し実行することにより実現される。なお、
図7において、
図4に示した処理に対応する処理については、便宜上、同一のステップ番号を付与している。
【0058】
図7に示す一連の処理において、CPU72は、先に説明したS50からS56までの各処理を順次実行する。
そして、S56の処理にて、有効カウンタCeが規定値Ceth以上であると判定する場合(S56:YES)、CPU72は、今現在の第1失火カウンタCmf1及び第2失火カウンタCmf2を取得する(S58a)。
【0059】
次に、CPU72は、失火率Crを算出する(S60a)。本実施形態では、S58aで取得した第1失火カウンタCmf1及び第2失火カウンタCmf2の和をS56で肯定判定された時点での有効カウンタCeの値で除した値が失火率Crとして算出される[Cr=(Cmf1+Cmf2)/Ce]。
【0060】
そして、CPU72は、S60aの処理を完了すると、
図7に示す一連の処理を一旦終了する。
図8に、制御装置70が実行する排気性状の判定処理の手順を示す。
図8に示す処理は、上述した失火率の算出処理にて失火率Crが算出されると、ROM74に記憶されたプログラムをCPU72が実行を開始することにより実現される。なお、
図8において、
図5に示した処理に対応する処理については、便宜上、同一のステップ番号を付与している。
【0061】
図8に示す一連の処理において、CPU72は、まず、算出された失火率Cr、失火率Crの算出時における第1失火カウンタCmf1及び第2失火カウンタCmf2を取得する(S70a)。
【0062】
次に、CPU72は、比率Rを算出する(S100)。比率Rは、再生処理の実行中に検出された失火の回数と再生処理の非実行中に検出された失火の回数との割合に応じて変化する値であり、S70aで取得した第1失火カウンタCmf1及び第2失火カウンタCmf2の値に基づいて算出される。本実施形態では、第2失火カウンタCmf2の値を第1失火カウンタCmf1の値及び第2失火カウンタCmf2の値の和で除した値が比率Rとして算出される[R=Cmf2/(Cmf1+Cmf2)]。こうして求められる比率Rは、第1失火カウンタCmf1の値及び第2失火カウンタCmf2の値の和で示される失火の総回数に占める第2失火カウンタCmf2の値の割合を示し、再生処理の非実行中に検出された失火の回数に対して再生処理の実行中に検出された失火の回数の割合が多くなるほどその値は大きくなる。ちなみに、(1-比率R)の値は、失火の総回数に占める第1失火カウンタCmf1の値の割合を示す。
【0063】
次に、CPU72は、判定閾値Crthを算出する(S102)。ここでは、上述した第1判定閾値Crth1、第2判定閾値Crth2、及び比率Rを使い、次式(1)に基づいて判定閾値Crthが算出される。
【0064】
Crth=(Crth2-Crth1)・R+Crth1…(1)
この式(1)に示されるように、比率Rが「1」のとき、つまり失火率Crを算出したときの失火の全てが再生処理の実行中に検出された失火である場合には、判定閾値Crthとして第2判定閾値Crth2が設定される。一方、比率Rが「0」のとき、つまり失火率Crを算出したときの失火の全てが再生処理の非実行中に検出された失火である場合には、判定閾値Crthとして第1判定閾値Crth1が設定される。そして、比率Rが大きくなるほど、つまり再生処理の非実行中に検出された失火の回数に対して再生処理の実行中に検出された失火の回数の割合が多くなるほど、判定閾値Crthの値は、第2判定閾値Crth2の値に近づいていく。
【0065】
このようにS102の処理は、第1判定閾値Crth1を最大値、第2判定閾値Crth2を最小値としたうえで、再生処理(部分気筒フューエルカット処理)の実行中に検出された失火の回数と再生処理の非実行中に検出された失火の回数との割合に応じて判定閾値Crthを可変設定する閾値設定処理となっている。
【0066】
こうして判定閾値Crthを設定すると、次に、CPU72は、S70aで取得した失火率Crが判定閾値Crth以上であるか否かを判定する(S78)。
そして、失火率Crが判定閾値Crth以上であると判定する場合(S78:YES)、CPU72は、排気異常ありと判定する(S80)。そして、CPU72は、
図1に示す警告灯100を操作することによって、その旨を報知する(S82)。
【0067】
一方、S78にて、失火率Crが判定閾値Crth未満であると判定する場合(S78:NO)、CPU72は、第1失火カウンタCmf1、第2失火カウンタCmf2、有効カウンタCe、及び失火率Crを初期化する(S84a)。
【0068】
そして、CPU72は、S82,S84aの処理を完了する場合には、
図8に示す一連の処理を終了する。
このように本実施形態では、上記S102の処理にて、上述した比率Rに応じた判定閾値Crthの可変設定を行うようにしているため、失火検出処理にて検出された失火の回数に、再生処理の実行中における失火回数と再生処理の非実行中における失火回数とが含まれていても、判定閾値Crthを適切に設定することができる。
【0069】
なお、上記各実施形態は、以下のように変更して実施することができる。各実施形態および以下の変更例は、技術的に矛盾しない範囲で互いに組み合わせて実施することができる。
【0070】
・失火検出処理では、回転変動量ΔT30として、120ATDC~150ATDCの区間の回転に要する時間T30[0]からTDC~30ATDCの区間の回転に要する時間T30[4]を減算した値としたが、これに限らない。たとえば、失火の判定対象となる気筒のTDC~30ATDCの区間の回転に要する時間T30から、1つ前に圧縮上死点となった気筒のTDC~30ATDCの区間の回転に要する時間T30を減算した値としてもよい。
【0071】
・失火検出処理では、圧縮上死点の出現間隔以下の回転角度間隔におけるクランク軸26の回転速度の変動量である回転変動量を、同回転角度間隔の回転に要する時間同士の差によって定量化したが、これに限らず、比によって定量化してもよい。
【0072】
・失火検出処理では、回転速度の変動量である回転変動量を時間にて定量化したが、これに限らず、角速度によって定量化してもよい。
・失火検出処理では、クランク軸26の回転速度の変動量に基づいて失火を検出したが、この他、たとえば燃焼室20内の圧力を検出する筒内圧センサを備え、その検出値の挙動に基づいて失火を検出したり、クランク軸26の軸トルクを算出あるいは検出して同軸トルクの挙動に基づいて失火を検出したりしてもよい。
【0073】
・
図3に示した失火検出処理において、S42の処理を省略して、S40にて肯定判定される場合には、次にS44の処理を実行するようにしてもよい。
・
図6に示した失火検出処理において、S42の処理を省略して、S40にて肯定判定される場合には、次にS90の処理を実行するようにしてもよい。
【0074】
・第2実施形態で説明した比率Rを[R=Cmf1/(Cmf1+Cmf2)]とした場合、つまり第1失火カウンタCmf1の値及び第2失火カウンタCmf2の値の和で示される失火の総回数に占める第1失火カウンタCmf1の値の割合を比率Rが示すようにした場合には、上記式(1)を次式(2)に変更することで同様な作用効果が得られる。
【0075】
Crth=(Crth1-Crth2)・R+Crth2…(2)
・第2実施形態では、第1判定閾値を最大値、第2判定閾値を最小値としたうえで、再生処理の実行中に検出された失火の回数と再生処理の非実行中に検出された失火の回数との割合に応じて判定閾値を可変設定するために上記式(1)及び比率Rを用いたが、他の態様で判定閾値を可変設定してもよい。
【0076】
・再生処理の実行を許可する所定の条件としては、上記実施形態において例示したものに限らない。たとえば、上記条件(A)及び条件(B)の2つの条件に関しては、それらのうちの1つのみを含んでもよい。また、所定の条件に上記2つの条件以外の条件が含まれてもよい。
【0077】
・増量処理では、停止処理に伴う機関出力の低下を補うために、フューエルカット気筒以外の残りの気筒における混合気の燃焼制御の実行に際して燃焼室20に供給される空気量及び燃料量を停止処理の非実行時よりも増量するようにした。この他、停止処理に伴う機関出力の低下を例えば上述したモータジェネレータの出力で補うことができる場合などには、増量処理にて燃料量のみを増量させてもよい。
【0078】
・部分気筒フューエルカット処理を実行する処理としては、上述した再生処理に限らない。たとえば、内燃機関10の出力を調整するために一部の気筒における燃料の供給を停止する処理であってもよい。また、たとえば、1部の気筒において異常が生じた場合に、その気筒における燃焼制御を停止する処理であってもよい。また、たとえば、三元触媒32の酸素吸蔵量が規定値以下となる場合に、一部の気筒のみ燃焼制御を停止し、残りの気筒における混合気の空燃比を理論空燃比とする制御を実行する処理であってもよい。
【0079】
・上記判定処理では、失火が生じたと判定する場合、警告灯100を用いた報知処理を実行したが、報知処理としては、視覚情報を出力する装置を操作対象とする処理に限らず、たとえば聴覚情報を出力する装置を操作対象とする処理であってもよい。
【0080】
・失火の判定結果を報知処理に利用すること自体必須ではない。たとえば、失火が生じた場合に、失火が生じにくい運転状態へと内燃機関10の制御を変更すべく内燃機関10の操作部を操作する処理を実行してもよい。
【0081】
・堆積量DPMの推定処理としては、
図2において例示したものに限らない。たとえば、GPF34の上流側と下流側との圧力の差と吸入空気量Gaとに基づき堆積量DPMを推定してもよい。具体的には、圧力の差が大きい場合に小さい場合よりも堆積量DPMを大きい値に推定し、圧力の差が同一であっても、吸入空気量Gaが小さい場合に大きい場合よりも堆積量DPMを大きい値に推定すればよい。ここで、GPF34の下流側の圧力を一定値とみなす場合、差圧に代えて上記圧力Pexを用いることができる。
【0082】
・上述した部分気筒フューエルカット処理の実行時に燃焼制御を停止する気筒の数は「1」であったが、燃焼制御を停止する気筒の数は、「気筒数-1」を最大値として適宜変更することができる。また、燃焼制御を停止する気筒を予め定められた気筒に固定することは必須ではない。たとえば、1燃焼サイクル毎に、燃焼制御を停止する気筒を変更してもよい。
【0083】
・GPF34としては、三元触媒が担持されたフィルタに限らず、フィルタのみであってもよい。また、GPF34としては、排気通路30のうちの三元触媒32の下流に設けられるものに限らない。また、排気浄化装置としてGPF34を備えること自体必須ではない。たとえば、排気浄化装置が三元触媒32のみからなる場合であっても、一部の気筒で燃焼制御を停止することにより、酸素吸蔵量が規定値以下となっている三元触媒32に酸素を供給する際には、上記各実施形態やそれらの変更例に例示した処理を実行することが有効である。
【0084】
・制御装置としては、CPU72とROM74とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理するたとえばASIC等の専用のハードウェア回路を備えてもよい。すなわち、制御装置は、以下の(a)~(c)のいずれかの構成であればよい。(a)上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するROM等のプログラム格納装置とを備える。(b)上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。(c)上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア実行装置や、専用のハードウェア回路は複数であってもよい。
【0085】
・車両としては、シリーズ・パラレルハイブリッド車に限らず、たとえばパラレルハイブリッド車やシリーズハイブリッド車であってもよい。もっとも、ハイブリッド車に限らず、たとえば、車両の動力発生装置が内燃機関10のみの車両であってもよい。
【符号の説明】
【0086】
10…内燃機関
20…燃焼室
50…遊星歯車機構
52…第1モータジェネレータ
54…第2モータジェネレータ
70…制御装置