(57)【要約】【課題】内燃機関のトルクの変動を抑制することとディザ制御による昇温能力を高めることとの好適な折衷を図ることができるようにした内燃機関の制御装置を提供する。【解決手段】ＣＰＵ３２は、ＧＰＦ２６に捕集されたＰＭの量が多くなることにより、フィルタ再生処理が要求される場合、気筒＃１〜＃４のうちの１つを、理論空燃比よりもリッチとするリッチ燃焼気筒とし、残りを、理論空燃比よりもリーンとするリーン燃焼気筒とするディザ制御を実行する。また、ＣＰＵ３２は、三元触媒２４の暖機要求時にもディザ制御を実行する。暖機要求時のディザ制御と比較して、フィルタ再生処理時のディザ制御は、リッチ燃焼気筒における空燃比とリーン燃焼気筒における空燃比との差の絶対値の時間積分値を大きくする。【選択図】図１
2019060302.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒から排出された排気を浄化する排気浄化装置と、前記複数の気筒毎に設けられた燃料噴射弁と、を備える内燃機関を制御対象とし、
前記複数の気筒のうちの一部の気筒を、空燃比が理論空燃比よりもリッチであるリッチ燃焼気筒とし、前記複数の気筒のうちの前記一部の気筒とは別の気筒を、空燃比が理論空燃比よりもリーンであるリーン燃焼気筒とすべく、前記燃料噴射弁を操作するディザ制御処理と、
前記ディザ制御処理に対し要求される昇温能力が低い第１モードと比較して前記ディザ制御処理に対し要求される昇温能力が高い第２モードの場合、前記リッチ燃焼気筒の空燃比と前記リーン燃焼気筒の空燃比との差の絶対値の所定期間における時間積分値が大きくなるようにする拡大処理と、を実行する内燃機関の制御装置。
【請求項２】
前記複数の気筒のうち前記リッチ燃焼気筒とする前記一部の気筒を変更する変更処理を実行し、
前記変更処理は、少なくとも前記第１モードにおいては、前記一部の気筒を変更する場合、変更前の前記リッチ燃焼気筒のリッチ化度合いと前記変更前のリーン燃焼気筒のリーン化度合いとを徐々に小さくした後、変更後のリッチ燃焼気筒のリッチ化度合いと前記変更後のリーン燃焼気筒のリーン化度合いを徐々に大きくする徐変処理を含み、
前記拡大処理は、前記第１モードと前記第２モードとで前記変更処理を変えることによって前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む請求項１記載の内燃機関の制御装置。
【請求項３】
前記変更処理は、前記第２モードにおいても前記徐変処理を含み、
前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記変更処理による変更の周期を長くすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む請求項２記載の内燃機関の制御装置。
【請求項４】
前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記リッチ燃焼気筒の空燃比をリーン側に変更して理論空燃比よりもリーンとするのに要する時間を短くすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む請求項２または３記載の内燃機関の制御装置。
【請求項５】
前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記リッチ燃焼気筒の空燃比と前記リーン燃焼気筒の空燃比との差の絶対値を大きくすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む請求項１〜４のいずれか１項に記載の内燃機関の制御装置。
【請求項６】
前記排気浄化装置は、上流側排気浄化装置と、該上流側排気浄化装置よりも下流に位置する下流側排気浄化装置とを備え、
前記第１モードのディザ制御処理を、前記上流側排気浄化装置の昇温要求に応じて実行し、
前記第２モードのディザ制御処理を、前記下流側排気浄化装置の昇温要求に応じて実行する請求項１〜５のいずれか１項に記載の内燃機関の制御装置。
【請求項７】
前記第２モードにおける前記ディザ制御処理を実行するのに先立ち、前記内燃機関のクランク軸の回転変動が大きくなる旨を報知する報知処理を実行する請求項１〜６のいずれか１項に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の気筒から排出された排気を浄化する排気浄化装置と、前記複数の気筒毎に設けられた燃料噴射弁と、を備える内燃機関を制御対象とする内燃機関の制御装置に関する。
【背景技術】
【０００２】
たとえば特許文献１には、触媒装置（触媒）の昇温要求がある場合、一部の気筒における空燃比を理論空燃比よりもリッチとし、残りの気筒における空燃比を理論空燃比よりもリーンとするディザ制御処理を実行する制御装置が記載されている。この制御装置は、ディザ制御処理において、リッチとされる気筒を周期的に切り替える制御を実行する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１６−２２３３８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のようにリッチとされる気筒を変更する際、リッチとされる気筒の空燃比を一気にリーンとされる気筒の空燃比とする場合、内燃機関のトルクの変動が大きくなるおそれがある。これに対し、リッチとされる気筒の空燃比を徐々に変更する場合、トルクの変動を抑制できる一方、ディザ制御による昇温能力が低下する。これは、ディザ制御処理による昇温能力が、リッチとされる気筒の空燃比とリーンとされる気筒の空燃比との差の絶対値と正の相関を有するためである。
【課題を解決するための手段】
【０００５】
以下、上記課題を解決するための手段およびその作用効果について記載する。
１．内燃機関の制御装置は、複数の気筒から排出された排気を浄化する排気浄化装置と、前記複数の気筒毎に設けられた燃料噴射弁と、を備える内燃機関を制御対象とし、前記複数の気筒のうちの一部の気筒を、空燃比が理論空燃比よりもリッチであるリッチ燃焼気筒とし、前記複数の気筒のうちの前記一部の気筒とは別の気筒を、空燃比が理論空燃比よりもリーンであるリーン燃焼気筒とすべく、前記燃料噴射弁を操作するディザ制御処理と、前記ディザ制御処理に対し要求される昇温能力が低い第１モードと比較して前記ディザ制御処理に対し要求される昇温能力が高い第２モードの場合、前記リッチ燃焼気筒の空燃比と前記リーン燃焼気筒の空燃比との差の絶対値の所定期間における時間積分値が大きくなるようにする拡大処理と、を実行する。
【０００６】
上記時間積分値が大きい場合には、小さい場合よりも所定期間内の昇温能力が高くなる一方、内燃機関のトルク変動が大きくなる傾向がある。そこで上記構成では、第２モードにおいて第１モードよりも時間積分値を大きくすることにより、昇温能力を高めることができる。また、第１モードにおいては第２モードよりも時間積分値を小さくすることにより、内燃機関のトルクの変動を抑制することが可能となる。
【０００７】
２．上記１記載の内燃機関の制御装置において、前記複数の気筒のうち前記リッチ燃焼気筒とする前記一部の気筒を変更する変更処理を実行し、前記変更処理は、少なくとも前記第１モードにおいては、前記一部の気筒を変更する場合、変更前の前記リッチ燃焼気筒のリッチ化度合いと前記変更前のリーン燃焼気筒のリーン化度合いとを徐々に小さくした後、変更後のリッチ燃焼気筒のリッチ化度合いと前記変更後のリーン燃焼気筒のリーン化度合いを徐々に大きくする徐変処理を含み、前記拡大処理は、前記第１モードと前記第２モードとで前記変更処理を変えることによって前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む。
【０００８】
上記構成では、少なくとも第１モードにおいては変更処理に徐変処理が入る。徐変処理が実行される場合、リッチ燃焼気筒の空燃比とリーン燃焼気筒の空燃比との差が小さくなる。このため、変更の周期が短いほど、徐変処理が入る頻度が多くなることから、上記所定期間を変更の周期よりも長い期間とする場合、所定期間における時間積分値が小さくなる。また、徐変処理が実行される期間が短い場合に長い場合よりも、所定期間における時間積分値が大きくなる。このため、変更処理の仕方によって時間積分値を拡大する処理を実現できる。
【０００９】
３．上記２記載の内燃機関の制御装置において、前記変更処理は、前記第２モードにおいても前記徐変処理を含み、前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記変更処理による変更の周期を長くすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む。
【００１０】
上記構成では、変更の周期が長いほど徐変処理が入る頻度が低くなることに鑑み、拡大処理を、周期を長くする処理を含むことによって実現した。
４．上記２または３記載の内燃機関の制御装置において、前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記リッチ燃焼気筒の空燃比をリーン側に変更して理論空燃比よりもリーンとするのに要する時間を短くすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む。
【００１１】
上記構成では、徐変処理が実行される期間が短い場合に長い場合よりも時間積分値を大きくできることに鑑み、拡大処理を、リッチ燃焼気筒の空燃比をリーン側に変更して理論空燃比よりもリーンとするのに要する時間を短くする処理を含むことによって実現した。
【００１２】
５．上記１〜４のいずれか１つに記載の内燃機関の制御装置において、前記拡大処理は、前記第１モードよりも前記第２モードにおいて前記リッチ燃焼気筒の空燃比と前記リーン燃焼気筒の空燃比との差の絶対値を大きくすることにより前記第２モードの前記時間積分値を前記第１モードの前記時間積分値よりも大きくする処理を含む。
【００１３】
上記構成では、リッチ燃焼気筒の空燃比とリーン燃焼気筒の空燃比との差の絶対値を大きくすることによって上記時間積分値も大きくすることができることに鑑み、拡大処理を、リッチ燃焼気筒の空燃比とリーン燃焼気筒の空燃比との差の絶対値を大きくする処理を含めることによって実現した。
【００１４】
６．上記１〜５のいずれか１つに記載の内燃機関の制御装置において、前記排気浄化装置は、上流側排気浄化装置と、該上流側排気浄化装置よりも下流に位置する下流側排気浄化装置とを備え、前記第１モードのディザ制御処理を、前記上流側排気浄化装置の昇温要求に応じて実行し、前記第２モードのディザ制御処理を、前記下流側排気浄化装置の昇温要求に応じて実行する。
【００１５】
下流側排気浄化装置は、上流側排気浄化装置よりも各気筒の燃焼室からはなれているため、排気中の熱を受けにくい。このため、下流側排気浄化装置の昇温要求に応じるうえでは、ディザ制御処理の昇温能力を高める要求が生じる傾向がある。このため、上記構成では、下流側排気浄化装置の昇温要求に応じて第２モードのディザ制御処理を実行する。
【００１６】
７．上記１〜６のいずれか１つに記載の内燃機関の制御装置において、前記第２モードにおける前記ディザ制御処理を実行するのに先立ち、前記内燃機関のクランク軸の回転変動が大きくなる旨を報知する報知処理を実行する。
【００１７】
第２モードにおけるディザ制御処理は、第１モードにおけるディザ制御処理と比較して、内燃機関のトルク変動が大きくなる傾向がある。このため、上記構成では、第２モードにおけるディザ制御処理を実行するのに先立ち報知処理を実行することにより、ユーザに違和感を与えることを抑制する。
【図面の簡単な説明】
【００１８】
【図１】第１の実施形態にかかる制御装置および内燃機関を示す図。
【図２】同実施形態にかかる制御装置が実行する処理の一部を示すブロック図。
【図３】同実施形態にかかる要求値出力処理の手順を示す流れ図。
【図４】同実施形態にかかるディザ制御の実行領域を示す図。
【図５】同実施形態にかかる噴射量補正要求値の上限値を示す図。
【図６】同実施形態にかかる要求値出力処理の手順を示す流れ図。
【図７】同実施形態にかかるリッチ燃焼気筒の切替処理を示すタイムチャート。
【図８】第２の実施形態にかかる制御装置および内燃機関を示す図。
【図９】同実施形態にかかる要求値出力処理の手順を示す流れ図。
【発明を実施するための形態】
【００１９】
＜第１の実施形態＞
以下、内燃機関の制御装置にかかる第１の実施形態について図面を参照しつつ説明する。
【００２０】
図１に示す内燃機関１０は、吸気バルブＩＮＶの閉弁タイミングが下死点よりも遅角側となりうるものである。内燃機関１０において、吸気通路１２から吸入された空気は吸気バルブＩＮＶを介して気筒＃１〜＃４のそれぞれの燃焼室１６に流入する。気筒＃１〜＃４のそれぞれには、燃料を噴射する燃料噴射弁１８と、火花放電を生じさせる点火装置２０とが設けられている。燃焼室１６において、空気と燃料との混合気は、燃焼に供され、燃焼に供された混合気は、排気バルブＥＸＶの開弁に伴って、排気として、排気通路２２に排出される。排気通路２２には、酸素吸蔵能力を有した三元触媒２４が設けられている。さらに、排気通路２２のうち三元触媒２４の下流には、ガソリンパティキュレートフィルタ（ＧＰＦ２６）が設けられている。
【００２１】
制御装置３０は、内燃機関１０を制御対象とし、その制御量（トルク、排気成分等）を制御するために、燃料噴射弁１８や点火装置２０等の内燃機関１０の操作部を操作する。この際、制御装置３０は、三元触媒２４の上流側に設けられた空燃比センサ４０によって検出される空燃比Ａｆや、上流側圧力センサ４２によって検出されるＧＰＦ２６の上流側の圧力（上流側圧力Ｐｕ）、下流側圧力センサ４４によって検出されるＧＰＦ２６の下流側の圧力（下流側圧力Ｐｄ）を参照する。また、制御装置３０は、クランク角センサ４６の出力信号Ｓｃｒや、エアフローメータ４８によって検出される吸入空気量Ｇａ、水温センサ５０によって検出される内燃機関１０の冷却水の温度（水温ＴＨＷ）、アクセルセンサ５２によって検出されるアクセルペダルの踏み込み量（アクセル操作量ＡＣＣＰ）を参照する。制御装置３０は、ＣＰＵ３２、ＲＯＭ３４、およびＲＡＭ３６を備えており、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２が実行することにより上記制御量の制御を実行する。
【００２２】
図２に、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２が実行することにより実現される処理の一部を示す。
失火検出処理Ｍ１０は、出力信号Ｓｃｒに基づき、失火の有無を判定する処理である。失火検出処理Ｍ１０は、出力信号Ｓｃｒに基づき、回転変動量Δωが負の閾値以下となる場合、失火である旨の仮判定をする処理を含む。ここで、回転変動量Δωは、圧縮上死点を１回のみ含む所定角度間隔の回転速度（瞬時回転速度ω）を、圧縮上死点の出現タイミングが時系列的に隣り合う一対の気筒のうちの先に圧縮上死点が出現する気筒における値から後に圧縮上死点が出現する気筒における値を減算した値である。失火検出処理Ｍ１０は、内燃機関１０のクランク軸が所定回数回転する間に、仮判定される回数が閾値以上となる場合、失火が生じた旨の本判定をし、図１に示した警告灯５４を操作してユーザに報知する処理を含む。なお、失火検出処理Ｍ１０は、所定回数ごとに、仮判定の履歴をリセットする処理を含む。
【００２３】
ベース噴射量算出処理Ｍ１２は、クランク角センサ４６の出力信号Ｓｃｒに基づき算出された回転速度ＮＥと吸入空気量Ｇａとに基づき、燃焼室１６における混合気の空燃比を目標空燃比に開ループ制御するための操作量である開ループ操作量として、ベース噴射量Ｑｂを算出する処理である。
【００２４】
目標値設定処理Ｍ１４は、燃焼室１６における混合気の空燃比を上記目標空燃比に制御するためのフィードバック制御量の目標値Ａｆ＊を設定する処理である。
フィードバック処理Ｍ１６は、フィードバック制御量である空燃比Ａｆを目標値Ａｆ＊にフィードバック制御するための操作量であるフィードバック操作量ＫＡＦを算出する処理である。本実施形態では、目標値Ａｆ＊と空燃比Ａｆとの差を入力とする比例要素、積分要素、および微分要素の各出力値の和を、ベース噴射量Ｑｂの補正比率δとし、フィードバック操作量ＫＡＦを、「１＋δ」とする。
【００２５】
フィードバック補正処理Ｍ１８は、ベース噴射量Ｑｂにフィードバック操作量ＫＡＦを乗算することによってベース噴射量Ｑｂを補正し、要求噴射量Ｑｄを算出する処理である。
【００２６】
要求値出力処理Ｍ２０は、内燃機関１０の気筒＃１〜＃４のそれぞれから排出される排気全体の成分を、気筒＃１〜＃４の全てで燃焼対象とする混合気の空燃比を目標空燃比とした場合と同等としつつも、燃焼対象とする混合気の空燃比を気筒間で異ならせるディザ制御の噴射量補正要求値αを算出して出力する。ここで、本実施形態にかかるディザ制御では、第１の気筒＃１〜第４の気筒＃４のうちの１つの気筒を、混合気の空燃比を理論空燃比よりもリッチとするリッチ燃焼気筒とし、残りの３つの気筒を、混合気の空燃比を理論空燃比よりもリーンとするリーン燃焼気筒とする。そして、リッチ燃焼気筒における噴射量を、上記要求噴射量Ｑｄの「１＋α」倍とし、リーン燃焼気筒における噴射量を、要求噴射量Ｑｄの「１−（α／３）」倍とする。リーン燃焼気筒とリッチ燃焼気筒との上記噴射量の設定によれば、気筒＃１〜＃４のそれぞれに充填される空気量が同一であるなら、内燃機関１０の各気筒＃１〜＃４から排出される排気全体の成分を、気筒＃１〜＃４の全てで燃焼対象とする混合気の空燃比を目標空燃比とした場合と同等とすることができる。なお、上記噴射量の設定によれば、気筒＃１〜＃４のそれぞれに充填される空気量が同一であるなら、各気筒において燃焼対象とされる混合気の燃空比の平均値の逆数が目標空燃比となる。なお、燃空比とは、空燃比の逆数のことである。
【００２７】
補正係数算出処理Ｍ２２は、「１」に、噴射量補正要求値αを加算して、リッチ燃焼気筒に関し、要求噴射量Ｑｄの補正係数を算出する処理である。ディザ補正処理Ｍ２４は、要求噴射量Ｑｄに補正係数「１＋α」を乗算することによって、リッチ燃焼気筒とされる気筒＃ｗの噴射量指令値Ｑ＊を算出する処理である。ここで、「ｗ」は、「１」〜「４」のいずれかを意味する。
【００２８】
乗算処理Ｍ２６は、噴射量補正要求値αを「−１／３」倍する処理であり、補正係数算出処理Ｍ２８は、「１」に、乗算処理Ｍ２６の出力値を加算して、リーン燃焼気筒に関し、要求噴射量Ｑｄの補正係数を算出する処理である。ディザ補正処理Ｍ３０は、要求噴射量Ｑｄに補正係数「１−（α／３）」を乗算することによって、リーン燃焼気筒とされる気筒＃ｘ，＃ｙ，＃ｚの噴射量指令値Ｑ＊を算出する処理である。ここで、「ｘ」，「ｙ」，「ｚ」は、「１」〜「４」のいずれかであって、且つ、「ｗ」，「ｘ」，「ｙ」，「ｚ」は、互いに異なるものとする。
【００２９】
噴射量操作処理Ｍ３２は、ディザ補正処理Ｍ２４が出力する噴射量指令値Ｑ＊に基づき、リッチ燃焼気筒とされる気筒＃ｗの燃料噴射弁１８の操作信号ＭＳ２を生成して、同燃料噴射弁１８に出力し、同燃料噴射弁１８から噴射される燃料量が噴射量指令値Ｑ＊に応じた量となるように燃料噴射弁１８を操作する。また、噴射量操作処理Ｍ３２は、ディザ補正処理Ｍ３０が出力する噴射量指令値Ｑ＊に基づき、リーン燃焼気筒とされる気筒＃ｘ，＃ｙ，＃ｚの燃料噴射弁１８の操作信号ＭＳ２を生成して、同燃料噴射弁１８に出力し、同燃料噴射弁１８から噴射される燃料量が噴射量指令値Ｑ＊に応じた量となるように燃料噴射弁１８を操作する。
【００３０】
硫黄被毒量算出処理Ｍ４０は、回転速度ＮＥおよび負荷率ＫＬに基づき、三元触媒２４の硫黄被毒量ＤＳを算出する処理である。詳しくは、たとえば、回転速度ＮＥが高いほど、また負荷率ＫＬが高いほど、硫黄被毒量ＤＳの増加量を多く算出し、増加量を積算することによって硫黄被毒量ＤＳを算出する処理である。ここで、負荷率ＫＬは、燃焼室１６内に充填される空気量を示すパラメータであり、ＣＰＵ３２により、吸入空気量Ｇａに基づき算出される。負荷率ＫＬは、基準流入空気量に対する、１気筒の１燃焼サイクル当たりの流入空気量の比である。本実施形態では、基準流入空気量を、スロットルバルブ１４の開口度を最大としたときの１気筒の１燃焼サイクル当たりの流入空気量とする。ちなみに、基準流入空気量は、回転速度ＮＥに応じて可変設定される量としてもよい。
【００３１】
堆積量算出処理Ｍ４２は、上流側圧力Ｐｕ、下流側圧力Ｐｄおよび吸入空気量Ｇａに基づき、ＧＰＦ２６に捕集されたＰＭの量（ＰＭ堆積量ＤＰＭ）を算出して出力する処理である。堆積量算出処理Ｍ４２は、上流側圧力Ｐｕから下流側圧力Ｐｄを引いた差圧が高い場合に低い場合よりもＰＭ堆積量ＤＰＭを大きい値とし、吸入空気量Ｇａが大きい場合に小さい場合よりもＰＭ堆積量ＤＰＭを小さい値とする。詳しくは、ＲＯＭ３４に、差圧と吸入空気量Ｇａとを入力変数とし、ＰＭ堆積量ＤＰＭを出力変数とするマップデータを記憶しておき、ＣＰＵ３２によりＰＭ堆積量ＤＰＭをマップ演算する。なお、マップデータとは、入力変数の離散的な値と、入力変数の値のそれぞれに対応する出力変数の値と、の組データである。またマップ演算は、たとえば、入力変数の値がマップデータの入力変数の値のいずれかに一致する場合、対応するマップデータの出力変数の値を演算結果とし、一致しない場合、マップデータに含まれる複数の出力変数の値の補間によって得られる値を演算結果とする処理とすればよい。
【００３２】
ベーストルク算出処理Ｍ４４は、アクセル操作量ＡＣＣＰに基づき、内燃機関１０に要求されるトルクのベース値であるベーストルクＴｒｑ０を算出する処理である。詳しくは、アクセル操作量ＡＣＣＰが大きい場合に小さい場合よりもベーストルクＴｒｑ０を大きい値に算出する処理である。
【００３３】
嵩上げトルク算出処理Ｍ４６は、噴射量補正要求値αに基づき、ベーストルクＴｒｑ０を嵩上げする嵩上げトルクΔＴｒｑを算出する処理である。詳しくは、噴射量補正要求値αがゼロの場合、嵩上げトルクΔＴｒｑは、ゼロとなり、噴射量補正要求値αが大きいほど、嵩上げトルクΔＴｒｑを大きい値とする処理である。
【００３４】
要求トルク算出処理Ｍ４８は、ベーストルクＴｒｑ０に嵩上げトルクΔＴｒｑを加算することによって、内燃機関１０に対する要求トルクＴｒｑ＊を算出する処理である。
スロットル操作処理Ｍ５０は、要求トルクＴｒｑ＊に基づき、スロットルバルブ１４の開口度を操作すべく、操作信号ＭＳ１を生成してスロットルバルブ１４に出力する処理である。詳しくは、要求トルクＴｒｑ＊が大きい場合に小さい場合よりもスロットルバルブ１４の開口度を大きい値に操作する処理である。本実施形態にかかるスロットル操作処理Ｍ５０は、ディザ制御を実行していない前提で、要求トルクＴｒｑ＊とするうえで必要なスロットルバルブ１４の開口度を設定する処理となっている。そのため、ディザ制御が実行される場合には、全ての気筒の空燃比を同一とする場合よりもトルクが低下することから、嵩上げトルクΔＴｒｑを用いて、要求トルクＴｒｑ＊を嵩上げしている。すなわち、嵩上げトルクΔＴｒｑは、ディザ制御が実行されているときに、スロットル操作処理Ｍ５０によって、ベーストルクＴｒｑ０とするうえで必要なスロットルバルブ１４の開口度に操作することが可能となるように設けられたものである。ちなみに、ディザ制御を実行する場合に実行しない場合よりもトルクが低下するのは、リッチ燃焼気筒において要求噴射量Ｑｄを増量補正することによるトルクの増加量よりもリーン燃焼気筒において要求噴射量Ｑｄを減量補正することによるトルクの減少量の方が大きいためである。
【００３５】
要求値出力処理Ｍ２０は、三元触媒２４の暖機要求が生じる場合と、三元触媒２４の硫黄被毒回復処理の実行要求が生じる場合と、ＧＰＦ２６の再生処理（フィルタ再生処理）の実行要求が生じる場合とに、噴射量補正要求値αをゼロよりも大きい値とする。ここで、暖機要求や硫黄被毒回復処理の実行要求に応じるディザ制御は、リーン燃焼気筒から排出される酸素とリッチ燃焼気筒から排出される未燃燃料との三元触媒２４における反応熱によって三元触媒２４を昇温する処理である。これに対し、フィルタ再生処理の実行要求に応じたディザ制御は、リーン燃焼気筒から排出される酸素とリッチ燃焼気筒から排出される未燃燃料との三元触媒２４における反応熱によって温度が上昇した排気が、ＧＰＦ２６に流入することによりＧＰＦ２６を昇温する処理である。以下では、三元触媒２４の暖機要求が生じている状態をモードＡと称し、硫黄被毒回復処理の実行要求が生じている状態をモードＢと称し、フィルタ再生処理の実行要求が生じている状態をモードＣと称する。
【００３６】
図３に、モードＡ，Ｂに関する要求値出力処理Ｍ２０の手順を示す。図３に示す処理は、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２がたとえば所定の時間周期で繰り返し実行することにより実現される。なお、以下では、先頭に「Ｓ」が付与された数字によって、ステップ番号を表現する。
【００３７】
図３に示す一連の処理において、ＣＰＵ３２は、まず、モードＣであるか否かを判定する（Ｓ１０）。そしてＣＰＵ３２は、モードＣではないと判定する場合（Ｓ１０：ＮＯ）、三元触媒２４の暖機要求が生じていることと、硫黄被毒回復処理の実行要求が生じていることとの論理和が真であるか否かを判定する（Ｓ１２）。ここで、三元触媒２４の暖機要求は、内燃機関１０の始動からの吸入空気量Ｇａの積算値ＩｎＧａが第１規定値Ｉｎｔｈ１以上である旨の条件（ア）と、積算値ＩｎＧａが第２規定値Ｉｎｔｈ２以下であって且つ水温ＴＨＷが所定温度ＴＨＷｔｈ以下である旨の条件（イ）との論理積が真である場合に生じるものとする。なお、条件（ア）は、三元触媒２４の上流側の端部の温度が活性温度となっていると判定される条件である。また、条件（イ）は、三元触媒２４の全体が未だ活性状態とはなっていないと判定される条件である。一方、硫黄被毒回復処理の実行要求は、硫黄被毒量ＤＳが所定量以上となる場合に生じるものとする。
【００３８】
ＣＰＵ３２は、論理和が真であると判定する場合（Ｓ１２：ＹＥＳ）、モードＡまたはモードＢであるとして、ディザ制御の実行開始または気筒＃１〜＃４のうちリッチ燃焼気筒とするものを変更してからの経過時間が、周期Ｔ１から徐変時間ΔＴ１を減算した値から周期Ｔ１までの期間である所定期間内の時間であるか否かを判定する（Ｓ１４）。ここで、周期Ｔ１は、内燃機関１０のクランク軸が、失火検出処理Ｍ１０によって規定される所定回数以下の規定回数だけ回転する期間に設定されている。また、徐変時間ΔＴ１は、後述のＳ２０〜Ｓ２８の処理によって、噴射量補正要求値αが徐変されてゼロとなるまでに要する時間に設定されている。ＣＰＵ３２は、所定期間内の時間ではないと判定する場合（Ｓ１４：ＮＯ）、噴射量補正要求値αのもととなるベース要求値α０を算出する（Ｓ１６）。
【００３９】
ＣＰＵ３２は、ベース要求値α０を、上限値αｍａｘに、回転速度ＮＥおよび負荷率ＫＬに応じて可変設定される補正係数Ｋを乗算することによって算出する。ここで、補正係数Ｋは、モードＡの場合には、内燃機関１０の動作点が、図４に示す低負荷の領域Ａに入らないときには、ゼロとなる。これは、領域Ａ以外では、ディザ制御を実行しなくても排気温度がある程度高いためである。また、ＣＰＵ３２は、モードＡにおいて、内燃機関１０の動作点が図４に示す領域Ａに入る場合、動作点に応じて補正係数Ｋをゼロよりも大きく且つ１以下の範囲で可変設定する。ここでは、たとえば、回転速度ＮＥが大きい場合に小さい場合よりも、単位時間当たりの排気流量が大きくなることに鑑み、補正係数Ｋを小さい値に設定することも可能である。またたとえば、負荷率ＫＬが大きい場合に小さい場合よりも、単位時間当たりの排気流量が大きくなることに鑑み、補正係数Ｋを小さい値に設定することも可能である。具体的には、回転速度ＮＥおよび負荷率ＫＬを入力変数とし補正係数Ｋを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により補正係数Ｋをマップ演算すればよい。
【００４０】
また、補正係数Ｋは、モードＢの場合には、内燃機関１０の動作点が、図４に示す比較的高負荷の領域Ｂに入らないときにはゼロとなる。これは、領域Ｂよりも低負荷領域において硫黄被毒回復処理を実行するためには、ディザ制御による昇温能力を非常に高くすべく、噴射量補正要求値αを、クランク軸の回転変動がユーザに違和感を与えるレベルの値とする必要が生じるためである。なお、ＣＰＵ３２は、モードＢの場合、内燃機関１０の動作点が、図４に示す領域Ｂに入る場合、補正係数Ｋを、回転速度ＮＥおよび負荷率ＫＬに応じてゼロよりも大きく且つ１以下の範囲で可変設定する。具体的には、回転速度ＮＥおよび負荷率ＫＬを入力変数とし補正係数Ｋを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により補正係数Ｋをマップ演算すればよい。
【００４１】
本実施形態では、図５に示すように、モードＡの上限値αｍａｘよりもモードＢの上限値αｍａｘを大きい値に設定している。これは、三元触媒２４の暖機要求において目標とする三元触媒２４の温度（たとえば３５０°Ｃ）よりも、硫黄被毒回復処理において目標とする三元触媒２４の温度（たとえば６５０°Ｃ）の方が高いためである。
【００４２】
図３に戻り、ＣＰＵ３２は、噴射量補正要求値αの徐変速度を規定する徐変量Δに、通常時徐変量ΔＬを代入する（Ｓ１８）。通常時徐変量ΔＬは、徐変速度を、スロットルバルブ１４の操作によって、燃焼室１６内に充填される空気量を嵩上げトルクΔＴｒｑの変化に応じて追従遅れを十分に抑制しつつ変化させることができる速度とするための値である。
【００４３】
ＣＰＵ３２は、Ｓ１８の処理が完了する場合、今回のベース要求値α０（ｎ）から、前回の噴射量補正要求値α（ｎ−１）を減算した値が徐変量Δよりも大きいか否かを判定する（Ｓ２０）。ここで、変数ｎは、ベース要求値α０等の時系列データのうちの特定のデータを指定するためのものであり、以下では、図３の一連の処理の制御周期の今回の制御周期において算出されるデータを「ｎ」とし、前回の制御周期において算出されるデータを「ｎ−１」と記載する。そしてＣＰＵ３２は、徐変量Δよりも大きいと判定する場合（Ｓ２０：ＹＥＳ）、前回の噴射量補正要求値α（ｎ−１）に徐変量Δを加算した値を、今回の噴射量補正要求値α（ｎ）に代入する（Ｓ２２）。これに対し、ＣＰＵ３２は、徐変量Δ以下であると判定する場合（Ｓ２０：ＮＯ）、前回の噴射量補正要求値α（ｎ−１）から今回のベース要求値α０（ｎ）を減算した値が徐変量Δよりも大きいか否かを判定する（Ｓ２４）。そしてＣＰＵ３２は、大きいと判定する場合（Ｓ２４：ＹＥＳ）、前回の噴射量補正要求値α（ｎ−１）から徐変量Δを減算した値を、今回の噴射量補正要求値α（ｎ）に代入する（Ｓ２６）。また、ＣＰＵ３２は、徐変量Δ以下であると判定する場合（Ｓ２４：ＮＯ）、今回の噴射量補正要求値α（ｎ）に、今回のベース要求値α０（ｎ）を代入する（Ｓ２８）。
【００４４】
一方、ＣＰＵ３２は、昇温要求がないと判定する場合（Ｓ１２：ＮＯ）や、所定期間内であると判定する場合（Ｓ１４：ＹＥＳ）、ベース要求値α０（ｎ）に「０」を代入し（Ｓ３０）、Ｓ２０の処理に移行する。
【００４５】
なお、ＣＰＵ３２は、Ｓ２２，Ｓ２６，Ｓ２８の処理が完了する場合や、Ｓ１０の処理において肯定判定する場合には、図３に示す一連の処理を一旦終了する。
図６に、モードＣに関する要求値出力処理Ｍ２０の手順を示す。図６に示す処理は、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２がたとえば所定の時間周期で繰り返し実行することにより実現される。なお、図６において、図３に示した処理に対応する処理については、便宜上、同一のステップ番号を付している。
【００４６】
図６に示す一連の処理においては、ＣＰＵ３２は、まず、制御装置３０に外部からフィルタ再生処理の指令信号が入力されているか否かを判定する（Ｓ４０）。ここで、指令信号は、修理工場において制御装置３０に専用の異常対処機器（メンテナンス機器）が接続された状態で、メンテナンス機器から制御装置３０に入力されるものを想定している。すなわち、Ｓ４０の処理は、車両がユーザの手を離れ、修理工場においてフィルタ再生処理がなされるときであるか否かを判定する処理である。ＣＰＵ３２は、指令信号が入力されていないと判定する場合（Ｓ４０：ＮＯ）、ＰＭ堆積量ＤＰＭが閾値Ｄｔｈ以上であるか否かを判定する（Ｓ４２）。この処理は、ＧＰＦ２６の再生が望まれるときであるか否かを判定するためのものである。ＣＰＵ３２は、閾値Ｄｔｈ以上であると判定する場合（Ｓ４２：ＹＥＳ）、図１に示す警告灯５４を操作して、内燃機関１０が搭載された車両のユーザに、ＰＭ堆積量ＤＰＭが多いために修理工場でフィルタ再生処理をしてもらうことを促す処理を実行する（Ｓ４４）。なお、ＣＰＵ３２は、Ｓ４４の処理を完了する場合や、Ｓ４２において否定判定する場合には、図６に示す一連の処理を一旦終了する。
【００４７】
これに対し、ＣＰＵ３２は、指令信号が入力されていると判定する場合（Ｓ４０：ＹＥＳ）、モードＣであるとして、ディザ制御の実行開始または気筒＃１〜＃４のうちリッチ燃焼気筒とするものを変更してからの経過時間が、周期Ｔ２から徐変時間ΔＴ２を減算した値から周期Ｔ２までの期間である所定期間内の時間であるか否かを判定する（Ｓ１４ａ）。ここで、周期Ｔ２は、内燃機関１０のクランク軸が、上記規定回数よりも大きい特定の回数だけ回転するのに要する期間に設定されている。特に、この特定の回数は、失火検出処理Ｍ１０によって規定される所定回数よりも大きい値となっている。また、徐変時間ΔＴ２は、モードＣにおいて、Ｓ２０〜Ｓ２８の処理によって、噴射量補正要求値αが徐変されてゼロとなるまでに要する時間に設定されている。
【００４８】
次にＣＰＵ３２は、噴射量補正要求値αのもととなるベース要求値α０を算出する（Ｓ１６ａ）。
ＣＰＵ３２は、ベース要求値α０を、上限値αｍａｘに、回転速度ＮＥおよび負荷率ＫＬに応じて可変設定される補正係数Ｋを乗算することによって算出する。ここで、補正係数Ｋは、内燃機関１０の動作点が図４に示す領域Ｃに入らないときには、ゼロとなる。また、動作点が図４に示す領域Ｃに入る場合、動作点に応じて補正係数Ｋをゼロよりも大きく且つ１以下の範囲で可変設定する。具体的には、回転速度ＮＥおよび負荷率ＫＬを入力変数とし補正係数Ｋを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により補正係数Ｋをマップ演算すればよい。
【００４９】
また、ＣＰＵ３２は、図５に示すように、上限値αｍａｘを、モードＢのときよりも大きい値に設定する。これは、ＧＰＦ２６が三元触媒２４よりも下流に位置することが理由の１つとなっている。すなわち、モードＣのディザ制御によるＧＰＦ２６の目標温度（たとえば５５０°Ｃ）は、モードＢのディザ制御による三元触媒２４の目標温度と比較して必ずしも高くないものの、ＧＰＦ２６が三元触媒２４の下流にあるために、ＧＰＦ２６の温度を目標温度に上昇させるうえで要求されるディザ制御の昇温能力は大きなものとなる。このため、モードＣにおける上限値αｍａｘを、モードＢのときよりも大きい値とする。
【００５０】
図６に戻り、ＣＰＵ３２は、徐変量Δに、通常時徐変量ΔＬよりも大きい大昇温徐変量ΔＨを代入する（Ｓ１８ａ）。一方、ＣＰＵ３２は、所定期間内の時間であると判定する場合（Ｓ１４ａ：ＹＥＳ）、Ｓ３０の処理に移行する。そして、ＣＰＵ３２は、Ｓ１８ａ，Ｓ３０の処理が完了する場合、Ｓ２０の処理に移行する。
【００５１】
ここで、本実施形態の作用を説明する。
図７に、モードＡにおける噴射量指令値Ｑ＊と、モードＣにおける噴射量指令値Ｑ＊とを対比して示す。図７に示すように、本実施形態では、リッチ燃焼気筒を、気筒＃１、気筒＃４、気筒＃３、気筒＃２の順に切り替えていく。
【００５２】
ここで、モードＡにおいては、周期Ｔ１は、失火検出処理Ｍ１０が仮判定の回数を積算する期間の長さ以下となっている。ここで、ディザ制御時には、リッチ燃焼気筒のトルクがリーン燃焼気筒のトルクよりも大きいことに起因して、ディザ制御を実行しない場合よりも回転変動量Δωの絶対値が大きくなる傾向がある。モードＡやモードＢにおいては、ユーザに感じられない程度に回転変動を抑制すべく、噴射量補正要求値αを設定していることなどから、本来、ディザ制御のみが要因となって、失火検出処理Ｍ１０において失火が生じた旨の仮判定がされることはない。ただし、様々な要因によって、たとえば、気筒＃１〜＃４のうちの特定の気筒のみ、狙いとする空燃比よりもわずかにリーンとなる事態が生じうる。こうした要因としては、たとえば、燃料噴射弁１８の経年劣化によって特定の燃料噴射弁１８のみ、噴射量指令値Ｑ＊に対してわずかに少ない燃料を噴射するというものが考えられる。その場合、その気筒がリーン燃焼気筒とされ、圧縮上死点がその気筒に続いて出現する気筒がリッチ燃焼気筒となる場合、回転変動量Δωが閾値以下となりうるため、失火検出処理Ｍ１０によって失火が生じた旨の誤判定がなされるおそれがある。この問題に対し、失火検出処理Ｍ１０が回転変動量Δωと比較する閾値を、ディザ制御に起因して誤判定がなされることがない値に設定することは困難である。これは、失火が生じた場合には、確実に失火である旨検出できるように閾値を設定する必要があるためである。
【００５３】
これに対し、本実施形態では、周期Ｔ１を、失火検出処理Ｍ１０が仮判定の回数を積算する期間の長さ以下としている。ここで、失火検出処理Ｍ１０が仮判定の回数を積算する期間と、ディザ制御の特定の周期Ｔ１の期間とが完全に一致する確率は低い。しかも、完全に一致したとしても、１つの気筒がリッチ燃焼気筒とされる期間には、徐変時間ΔＴ１が含まれることなどから、噴射量補正要求値αがベース要求値α０とされる期間自体は、周期Ｔ１よりも短い。このため、仮に、想定以上に空燃比がリーンとなる気筒がリーン燃焼気筒とされて且つそれに続いて圧縮上死点が出現する気筒がリッチ燃焼気筒となることによって失火が生じないまでも回転変動量Δωが閾値以下となりえたとしても、そうした事態となりうる期間は、失火検出処理Ｍ１０が仮判定の回数を積算する期間よりも短い。このため、失火検出処理Ｍ１０によって誤判定がなされる事態を抑制できる。
【００５４】
また、ＣＰＵ３２は、リッチ燃焼気筒を切り替える際、噴射量補正要求値αを一旦ゼロに徐変させる。これにより、リッチ燃焼気筒の切替によって、内燃機関１０のトルク変動が大きくなることを抑制できる。これに対し、噴射量補正要求値αを漸減させることなくリッチ燃焼気筒のみを切り替える場合、各気筒の空燃比の制御性が低下するために、内燃機関１０のトルクの変動が大きくなる。すなわち、たとえば本実施形態のように吸気バルブＩＮＶの閉弁タイミングが下死点よりも遅角側となりうるものの場合、燃焼室１６に噴射された燃料の一部が吹き戻されることに起因して、リッチ燃焼気筒をステップ的に切り替える場合には、空燃比の制御性が低下しやすい。また、たとえば、内燃機関１０の冷間時等には、シリンダ内壁面への燃料の付着量の変化も、空燃比の制御性の低下を招く要因となりうる。
【００５５】
さらに本実施形態では、モードＡ，Ｂにおいて、ＣＰＵ３２は、徐変速度を、通常時徐変量ΔＬによって規定している。このため、スロットルバルブ１４の操作によって、燃焼室１６内に充填される空気量は嵩上げトルクΔＴｒｑの変化に高い応答性を有して変化可能である。したがって、リッチ燃焼気筒を切り替える際の内燃機関１０のトルクの変化を抑制できる。
【００５６】
このように、モードＡ，Ｂでは、失火の誤判定を回避することと、内燃機関１０の回転変動の増大によるドライバビリティの低下を抑制することとを狙った設定をしている。
これに対し、モードＣにおいては、ディザ制御の昇温能力を極力高める設定がなされている。すなわち、まず、噴射量補正要求値αを、モードＡ，Ｂと比較して大きい値に設定している。これは、リッチ燃焼気筒における燃焼によるトルクとリーン燃焼気筒における燃焼によるトルクとの差が、モードＡ，Ｂよりも大きくなることを意味し、結果、クランク軸の回転変動が大きくなり得ることを意味する。しかし、モードＣは、ユーザが内燃機関１０の動力を利用しているときではなく、制御装置３０にメンテナンス機器が接続された特別な状態においてディザ制御がなされる状態である。このため、ユーザに違和感を与えることがない。
【００５７】
また、モードＣにおいては、モードＡ，Ｂと比較して、徐変速度を高めている。これは、モードＡ，Ｂと比較して回転変動を大きくし得るものの、徐変期間を短くできることから、徐変期間における昇温能力の低下の影響を抑制できる。
【００５８】
また、モードＣにおいては、リッチ燃焼気筒を切り替える周期Ｔ２を、モードＡ，Ｂにおける周期Ｔ１よりも長くしている。これにより、昇温能力が低くなる徐変期間の出現頻度が低下することから、徐変による昇温能力の低下の影響を抑制できる。ちなみに、メンテナンス機器が接続された状態においては、メンテナンス機器によって失火検出処理Ｍ１０を無効とするなどすることにより、失火検出処理Ｍ１０による失火の誤判定は問題とならない。
【００５９】
＜第２の実施形態＞
以下、第２の実施形態について、第１の実施形態との相違点を中心に図面を参照しつつ説明する。
【００６０】
本実施形態では、ＰＭ堆積量ＤＰＭが多くなった場合、修理工場に持っていくことを促すことなく、ユーザによって内燃機関１０が運転されているときにフィルタ再生処理を実行する。
【００６１】
図８に、本実施形態にかかる制御装置３０およびその制御対象となる内燃機関１０を示す。なお、図８において、図１に示した部材については、便宜上、同一の符号を付している。図８に示すように、本実施形態では、制御装置３０が、注意喚起灯５６を操作可能となっている。注意喚起灯５６は、ユーザに、メンテナンスのために内燃機関１０の回転変動が大きくなり得る旨を報知するためのものである。
【００６２】
図９に、フィルタ再生処理に関する要求値出力処理Ｍ２０の手順を示す。図９に示す処理は、ＲＯＭ３４に記憶されたプログラムをＣＰＵ３２がたとえば所定の時間周期で繰り返し実行することにより実現される。なお、図９において、図６に示した処理に対応する処理については、便宜上、同一のステップ番号を付している。
【００６３】
図９に示す一連の処理において、ＣＰＵ３２は、まず、注意喚起灯５６が点灯しているか否かを判定する（Ｓ５０）。ＣＰＵ３２は、点灯していないと判定する場合（Ｓ５０：ＮＯ）、ＰＭ堆積量ＤＰＭが、再生用閾値ＤｔｈＨ以上であるか否かを判定する（Ｓ５２）。そして、ＣＰＵ３２は、再生用閾値ＤｔｈＨ以上であると判定する場合（Ｓ５２：ＹＥＳ）、注意喚起灯５６を操作して点灯させる（Ｓ５４）。なお、ＣＰＵ３２は、Ｓ５４の処理が完了する場合や、Ｓ５２の処理において否定判定する場合には、図９に示す一連の処理を一旦終了する。
【００６４】
一方、ＣＰＵ３２は、点灯していると判定する場合（Ｓ５０：ＹＥＳ）、ＰＭ堆積量ＤＰＭが再生用閾値ＤｔｈＨよりも小さい終了判定値ＤｔｈＬ以下であるか否かを判定する（Ｓ５６）。ＣＰＵ３２は、終了判定値ＤｔｈＬよりも大きいと判定する場合（Ｓ５６：ＮＯ）、ディザ制御の実行開始または気筒＃１〜＃４のうちリッチ燃焼気筒とするものを変更してからの経過時間が、周期Ｔ３から徐変時間ΔＴ３を減算した値から周期Ｔ３までの期間である規定期間内であるか否かを判定する（Ｓ１４ｂ）。ここで、周期Ｔ３は、モードＡ，Ｂの周期Ｔ１よりも長い値に設定されている。また、徐変時間ΔＴ３は、フィルタ再生処理におけるＳ２０〜Ｓ２８の処理によって、噴射量補正要求値αが徐変されてゼロとなるまでに要する時間に設定されている。
【００６５】
ＣＰＵ３２は、規定期間内の時間であると判定する場合（Ｓ１４ｂ：ＹＥＳ）、Ｓ３０の処理に移行する一方、規定期間内の時間ではないと判定する場合（Ｓ１４ｂ：ＮＯ）、噴射量補正要求値αのもととなるベース要求値α０を算出する（Ｓ１６ｂ）。ＣＰＵ３２は、ベース要求値α０を、上限値αｍａｘに、回転速度ＮＥおよび負荷率ＫＬに応じて可変設定される補正係数Ｋを乗算することによって算出する。ここで、補正係数Ｋは、内燃機関１０の動作点が図４に示す領域Ｂに入らないときには、ゼロとなる。また、動作点が図４に示す領域Ｂに入る場合、動作点に応じて補正係数Ｋをゼロよりも大きく且つ１以下の範囲で可変設定する。すなわち、本実施形態では、ユーザによる内燃機関１０の成り行きの運転状態を利用してフィルタ再生処理を実行することから、硫黄被毒回復処理と同じ動作点領域をフィルタ再生処理に利用する。具体的には、回転速度ＮＥおよび負荷率ＫＬを入力変数とし補正係数Ｋを出力変数とするマップデータをＲＯＭ３４に記憶しておき、ＣＰＵ３２により補正係数Ｋをマップ演算すればよい。また、ＣＰＵ３２は、上限値αｍａｘを、モードＢのときよりも大きい値に設定する。これは、三元触媒２４よりもＧＰＦ２６が下流にあるため、硫黄被毒回復処理を実行する動作点とフィルタ再生処理を実行する動作点とが同一であっても、フィルタ再生処理に要求される昇温能力の方が硫黄被毒回復処理に要求される昇温能力よりも高いためである。
【００６６】
次に、ＣＰＵ３２は、徐変量Δに、通常時徐変量ΔＬよりも大きいフィルタ再生用徐変量Δｈを代入する（Ｓ１８ｂ）。なお、ＣＰＵ３２は、Ｓ１８ｂの処理が完了する場合、Ｓ２０の処理に移行する。
【００６７】
これに対し、ＣＰＵ３２は、終了判定値ＤｔｈＬ以下であると判定する場合（Ｓ５６：ＹＥＳ）、注意喚起灯５６を消灯させ（Ｓ５８）、図９に示す一連の処理を一旦終了する。
【００６８】
このように、本実施形態では、ユーザに回転変動が大きくなり得る旨を報知する処理をする場合、ディザ制御処理の噴射量補正要求値αや徐変速度を大きくすることにより、ドライバビリティよりも昇温を優先する。なお、本実施形態では、注意喚起灯５６が点灯している場合、失火検出処理Ｍ１０により仮判定の回数を積算する期間を変更することを想定して、リッチ燃焼気筒を切り替える周期Ｔ３についても、モードＡ，Ｂよりも長くした。
【００６９】
＜対応関係＞
上記実施形態における事項と、上記「課題を解決するための手段」の欄に記載した事項との対応関係は、次の通りである。以下では、「課題を解決するための手段」の欄に記載した解決手段の番号毎に、対応関係を示している。［１］排気浄化装置は、三元触媒２４およびＧＰＦ２６に対応する。ディザ制御処理は、噴射量補正要求値αがゼロよりも大きい場合における、補正係数算出処理Ｍ２２、ディザ補正処理Ｍ２４、乗算処理Ｍ２６、補正係数算出処理Ｍ２８、ディザ補正処理Ｍ３０、噴射量操作処理Ｍ３２に対応する。拡大処理は、Ｓ１４ａ，Ｓ１６ａ，Ｓ１８ａの処理、またはＳ１４ｂ，Ｓ１６ｂ，Ｓ１８ｂの処理に対応する。［２］変更処理は、Ｓ１４，Ｓ１４ａ，Ｓ１４ｂで肯定判定される場合にＳ３０の処理に移行する処理や、図７に記載した処理に対応する。［３］徐変処理は、Ｓ２０〜Ｓ２８の処理に対応する。［５］拡大処理は、図５および図７に示す処理に対応する。「６」上流側排気浄化装置は、三元触媒２４に対応し、下流側排気浄化装置は、ＧＰＦ２６に対応する。第１モードは、モードＡ，Ｂに応じたディザ制御処理に対応する。［６］報知処理は、Ｓ５４の処理に対応する。
【００７０】
＜その他の実施形態＞
なお、上記実施形態の各事項の少なくとも１つを、以下のように変更してもよい。
・「第１モード、第２モードについて」
上記実施形態では、要求される昇温能力が低い第１モードを、三元触媒２４の暖機処理および硫黄被毒回復処理のためのディザ制御処理としたが、これに限らない。たとえば、ＰＭ堆積量ＤＰＭが閾値Ｄｔｈよりも小さい規定値以上となることと、内燃機関１０の動作点が高負荷領域にあることとの論理積が真となる場合にフィルタ再生処理を実行することとし、このフィルタ再生処理のためのディザ制御処理を第１モードのディザ制御処理としてもよい。
【００７１】
上記実施形態では、フィルタ再生処理のためのディザ制御処理を、第２モードのディザ制御処理としたが、これに限らない。たとえば、三元触媒２４の暖機要求に応じたディザ制御処理を第１モードのディザ制御処理とし、硫黄被毒回復処理のためのディザ制御処理を第２モードのディザ制御処理としてもよい。またたとえば、下記「排気浄化装置について」の欄に記載したように、図１の三元触媒２４の下流に第２の三元触媒を備える場合、その硫黄被毒回復処理のためのディザ制御処理を、第２モードのディザ制御処理としてもよい。
【００７２】
上記第１の実施形態では、メンテナンス機器から指令信号が入力される場合に第２モードのディザ制御処理を実行したがこれに限らない。たとえば、シフトレバーがニュートラルであるときにアクセルとブレーキを同時に踏み込む等、ユーザによる通常操作からは想定できない予め定められた操作状態を、修理工場による指令信号の入力としてもよい。
【００７３】
上記第２の実施形態では、報知処理を実行する場合、ユーザの許可を得ることなく第２モードのディザ制御処理を実行したがこれに限らない。たとえばユーザの許可を得ることを条件としてもよい。
【００７４】
・「拡大処理について」
上記第１の実施形態では、ＧＰＦ２６の再生のためのディザ制御処理を、モードＡ，Ｂにおけるディザ制御処理と比較して、噴射量補正要求値α、周期、徐変速度の全てを大きくしたが、これに限らない。噴射量補正要求値α、周期、徐変速度のうちの少なくとも１つを大きくすることによって、リッチ燃焼気筒の空燃比とリーン燃焼気筒の空燃比との差の絶対値の所定期間における時間積分値を大きくすればよい。すなわち、たとえば、ＧＰＦ２６の再生のためのディザ制御処理の実行領域を領域Ｂよりも高負荷とし、噴射量補正要求値αを同一としつつも、周期や徐変速度を大きくしてもよい。
【００７５】
上記第２の実施形態では、報知処理の後に実行するディザ制御処理を、モードＡ，Ｂにおけるディザ制御処理と比較して、噴射量補正要求値α、周期、徐変速度の全てを大きくすることによって、リッチ燃焼気筒の空燃比とリーン燃焼気筒の空燃比との差の絶対値の所定期間における時間積分値を大きくしたが、これに限らない。たとえば、周期については同一としつつも、噴射量補正要求値αおよび徐変速度のみを大きくしてもよい。またたとえば、周期および徐変速度を同一としつつも噴射量補正要求値αのみ大きくしてもよく、またたとえば報知処理の後に実行するディザ制御処理の実行領域を領域Ｂよりも高負荷とし、噴射量補正要求値αおよび周期を同一としつつも徐変速度のみ大きくしてもよい。もっともこれに限らず、噴射量補正要求値α、周期、徐変速度のうちの少なくとも１つを大きくすればよい。
【００７６】
・「徐変処理について」
たとえば、燃焼室１６に流入した燃料の一部が吸気通路１２に吹き戻されることがない内燃機関１０等において、徐変処理を削除してもよい。もっとも、燃焼室１６に流入した燃料の一部が吸気通路１２に吹き戻されることがない内燃機関１０であることは、徐変処理を行わないことにとって必須ではない。たとえば、吸気通路１２に吹き戻される燃料量を考慮して空燃比を高精度に制御できるなどの事情があれば、徐変処理を省いてもよい。またたとえば、モードＣに応じたディザ制御処理の場合に限って、徐変処理を省いてもよい。
【００７７】
・「ＰＭ堆積量について」
上記実施形態では、ＰＭ堆積量ＤＰＭを、上流側圧力Ｐｕおよび下流側圧力Ｐｄの差圧と、吸入空気量Ｇａとに基づきマップ演算したがこれに限らない。たとえば、吸入空気量Ｇａが規定値以上である場合、上記マップ演算を行い、規定値未満の場合には、回転速度ＮＥ，負荷率ＫＬ、内燃機関１０の冷却水の温度（水温ＴＨＷ）および空燃比Ａｆに基づき推定してもよい。これはたとえば、次のようにして実行できる。すなわち、回転速度ＮＥおよび負荷率ＫＬを入力変数とし単位時間当たりのＰＭ堆積増加量を出力変数とするマップデータと、水温ＴＨＷを入力変数とし水温補正係数を出力変数とするマップデータと、空燃比Ａｆを入力変数とし空燃比補正係数を出力変数とするマップデータとをＲＯＭ３４に記憶しておく。そして、ＣＰＵ３２によりＰＭ堆積増加量をマップ演算した後、これに水温補正係数および空燃比補正係数を乗算してＰＭ堆積増加量を算出し、これによって、ＰＭ堆積量ＤＰＭを逐次増量補正する。なお、吸入空気量Ｇａが規定値以上である状態から規定値未満となる状態に移行した場合、ＰＭ堆積量ＤＰＭの初期値は、上記差圧に基づき算出された値とすればよい。また、吸入空気量Ｇａが規定値未満の状態から規定値以上の状態に切り替わる場合、差圧に基づき算出されるＰＭ堆積量ＤＰＭを用いる。
【００７８】
また、差圧に基づくことなく、上記ＰＭ堆積増加量を逐次積算することによって、ＰＭ堆積量ＤＰＭを推定してもよい。また、専用のセンサを用いてＰＭ堆積量ＤＰＭを検出してもよい。
【００７９】
・「ディザ制御処理について」
上記実施形態では、上限値αｍａｘに、回転速度ＮＥおよび負荷率ＫＬから定まる補正係数Ｋを乗算することによって、ベース要求値α０を算出したが、これに限らない。たとえば、上限値αｍａｘを上限とし水温ＴＨＷに応じて定まる基本値に補正係数Ｋを乗算した値を、ベース要求値α０としてもよい。
【００８０】
またたとえば、回転速度ＮＥおよび水温ＴＨＷ、または負荷率ＫＬおよび水温ＴＨＷの２つのパラメータのみに基づいてベース要求値α０を可変設定してもよく、またたとえば、上記３つのパラメータのうちの１つのパラメータのみに基づいてベース要求値α０を可変設定してもよい。また、たとえば内燃機関１０の動作点を特定するパラメータとして回転速度ＮＥおよび負荷率ＫＬを用いる代わりに、負荷としての負荷率ＫＬに代えて、たとえば負荷としてのアクセル操作量を用いてもよい。また、回転速度ＮＥおよび負荷に代えて、吸入空気量Ｇａに基づきベース要求値α０を可変設定してもよい。
【００８１】
噴射量補正要求値αを、内燃機関の動作点に基づき可変設定すること自体必須ではない。たとえば、各モード毎に定められた単一の値としてもよい。
上記実施形態では、リッチ燃焼気筒の数よりもリーン燃焼気筒の数を多くしたが、これに限らない。たとえば、リッチ燃焼気筒の数とリーン燃焼気筒の数とを同一としてもよい。またたとえば、全ての気筒＃１〜＃４を、リーン燃焼気筒かリッチ燃焼気筒かにするものに限らず、たとえば１つの気筒の空燃比を目標空燃比としてもよい。さらに、１燃焼サイクル内で、筒内充填空気量が同一であるなら燃空比の平均値の逆数が目標空燃比となることも必須ではない。たとえば、上記実施形態のように４気筒の場合において、筒内充填空気量が同一であるなら、５ストロークにおける燃空比の平均値の逆数が目標空燃比となるようにしてもよく、３ストロークにおける燃空比の平均値の逆数が目標空燃比となるようにしてもよい。ただし、１燃焼サイクルにおいて、リッチ燃焼気筒とリーン燃焼気筒との双方が存在する期間が少なくとも２燃焼サイクルに１回以上は生じることが望ましい。換言すれば、所定期間において筒内充填空気量が同一であるなら燃空比の平均値の逆数を目標空燃比とする際、所定期間を２燃焼サイクル以下とすることが望ましい。ここで、たとえば所定期間を２燃焼サイクルとして２燃焼サイクルの間に１度だけリッチ燃焼気筒が存在する場合、リッチ燃焼気筒とリーン燃焼気筒との出現順序は、リッチ燃焼気筒をＲ、リーン燃焼気筒をＬとすると、たとえば「Ｒ，Ｌ，Ｌ，Ｌ，Ｌ，Ｌ，Ｌ，Ｌ」となる。この場合、所定期間よりも短い１燃焼サイクルの期間であって「Ｒ，Ｌ，Ｌ，Ｌ」となる期間が設けられており、気筒＃１〜＃４のうちの一部がリーン燃焼気筒であり、別の気筒がリッチ燃焼気筒となっている。ただし、１燃焼サイクルとは異なる期間における燃空比の平均値の逆数を目標空燃比とする場合には、内燃機関が吸気行程において一旦吸入した空気の一部を吸気バルブＩＮＶが閉弁するまでに吸気通路に吹き戻す量が無視できることが望ましい。
【００８２】
・「排気浄化装置について」
上記実施形態では、上流側排気浄化装置を三元触媒２４とし、下流側排気浄化装置をＧＰＦ２６としたが、これに限らない。たとえば、上流側排気浄化装置および下流側排気浄化装置のそれぞれを第１の三元触媒および第２の三元触媒としてもよい。また、たとえば、上流側排気浄化装置をＧＰＦとし、下流側排気浄化装置を三元触媒としてもよい。またたとえば、三元触媒２４のみを備えてもよい。またたとえばＧＰＦ２６のみであってもよい。ただしＧＰＦの上流に酸素吸蔵能力を有する触媒を備えない場合、ディザ制御による昇温能力を高めるうえでは、ＧＰＦに酸素吸蔵能力を付与することが望ましい。
【００８３】
・「排気の昇温要求について」
昇温要求としては、上記実施形態において例示したものに限らない。たとえば、排気通路２２への凝縮水の付着を抑制すべく排気通路２２を昇温するためにディザ制御による排気の昇温要求を生じさせてもよい。
【００８４】
・「制御装置について」
制御装置としては、ＣＰＵ３２とＲＯＭ３４とを備えて、ソフトウェア処理を実行するものに限らない。たとえば、上記実施形態においてソフトウェア処理されたものの少なくとも一部を、ハードウェア処理する専用のハードウェア回路（たとえばＡＳＩＣ等）を備えてもよい。すなわち、制御装置は、以下の（ａ）〜（ｃ）のいずれかの構成であればよい。（ａ）上記処理の全てを、プログラムに従って実行する処理装置と、プログラムを記憶するＲＯＭ等のプログラム格納装置とを備える。（ｂ）上記処理の一部をプログラムに従って実行する処理装置およびプログラム格納装置と、残りの処理を実行する専用のハードウェア回路とを備える。（ｃ）上記処理の全てを実行する専用のハードウェア回路を備える。ここで、処理装置およびプログラム格納装置を備えたソフトウェア処理回路や、専用のハードウェア回路は複数であってもよい。すなわち、上記処理は、１または複数のソフトウェア処理回路および１または複数の専用のハードウェア回路の少なくとも一方を備えた処理回路によって実行されればよい。
【００８５】
・「内燃機関について」
内燃機関としては、４気筒の内燃機関に限らない。たとえば直列６気筒の内燃機関であってもよい。またたとえば、Ｖ型の内燃機関等、第１の排気浄化装置と第２の排気浄化装置とを備え、それぞれによって排気が浄化される気筒が異なるものであってもよい。
【００８６】
・「そのほか」
燃料噴射弁としては、燃焼室１６に燃料を噴射するものに限らず、たとえば吸気通路１２に燃料を噴射するものであってもよい。ディザ制御の実行時に空燃比フィードバック制御をすることは必須ではない。
【符号の説明】
【００８７】
１０…内燃機関、１２…吸気通路、１４…スロットルバルブ、１６…燃焼室、１８…燃料噴射弁、２０…点火装置、２２…排気通路、２４…三元触媒、２６…ＧＰＦ、３０…制御装置、３２…ＣＰＵ、３４…ＲＯＭ、３６…ＲＡＭ、４０…空燃比センサ、４２…上流側圧力センサ、４４…下流側圧力センサ、４６…クランク角センサ、４８…エアフローメータ、５０…水温センサ、５２…アクセルセンサ、５４…警告灯、５６…注意喚起灯。
【図１】
2019060302.tif 000003
【図２】
2019060302.tif 000004
【図３】
2019060302.tif 000005
【図４】
2019060302.tif 000006
【図５】
2019060302.tif 000007
【図６】
2019060302.tif 000008
【図７】
2019060302.tif 000009
【図８】
2019060302.tif 000010
【図９】
2019060302.tif 000011