(57)【要約】【課題】一部気筒運転と全筒運転を切り換える内燃機関に取り付けられる酸素濃度センサの故障を正確に判定することができる内燃機関の制御装置を提供する。【解決手段】内燃機関への燃料供給を遮断する燃料供給遮断運転状態を含む所定運転状態において、酸素濃度センサの故障診断が行われる。酸素濃度センサの故障診断が終了していること（Ｓ２３）、及びその診断の結果、酸素濃度センサが正常であると判定されていること（Ｓ２４）を条件として、一部気筒運転が許可される（Ｓ２５）。これにより、全筒運転中に酸素濃度センサの故障診断が実行され、正確な診断を行うことができる。【選択図】  図３
2005002813.tif 000002
【特許請求の範囲】
【請求項１】
複数気筒を有し、前記複数気筒の全てを作動させる全筒運転と、前記複数気筒のうち一部気筒の作動を休止させる一部気筒運転とを切換える切換手段を備えた内燃機関の制御装置において、
前記機関の運転パラメータを含む、前記機関により駆動される車両の運転パラメータを検出する運転パラメータ検出手段と、
前記運転パラメータに応じて前記全筒運転または一部気筒運転を前記切換手段に指令する指令手段と、
前記一部気筒に対応する排気系に設けられ、排気中の酸素濃度を検出する酸素濃度センサと、
前記機関の減速時における燃料供給遮断運転を含む所定運転状態において、前記酸素濃度センサの故障を診断する診断手段と、
該診断手段による故障診断終了後に、前記一部気筒運転を許可する許可手段とを備えることを特徴とする内燃機関の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の制御装置に関し、特に複数気筒を有する内燃機関の一部気筒の作動を休止させる気筒休止機構を備えた内燃機関の制御装置に関する。
【０００２】
【従来の技術】
特許文献１には、内燃機関の排気系に設けられた酸素濃度センサの異常検出手法が示されている。この手法によれば、機関への燃料供給を停止しているときの酸素濃度センサの出力に基づいて、当該センサの異常が検出される。
【０００３】
また特許文献２には、気筒休止機構を備えた内燃機関が示されており、複数気筒の一部の気筒を休止させる一部気筒運転と、全気筒を作動させる全筒運転とが、機関運転状態に応じて切り換えられる。より具体的には、特許文献２に示される機関は、Ｖ型６気筒機関であり、それぞれ３つの気筒を備える右バンク及び左バンクからなる。そして低負荷運転時においては、右バンクの３つの気筒の吸排気弁の作動が停止される。
【０００４】
【特許文献１】
特開昭６２−２５０３５１号公報
【特許文献２】
特開２００１−２３４７９２号公報
【０００５】
【発明が解決しようとする課題】
特許文献１に示された異常検出手法を、特許文献２に示された機関に装着される酸素濃度センサにそのまま適用すると以下のような課題があった。
【０００６】
機関排気系には、空燃比をフィードバック制御するために酸素濃度センサが設けられ、Ｖ型６気筒機関では、酸素濃度センサが、右バンク及び左バンクのそれぞれに対応させて配置される場合がある。その場合、一部気筒運転を実行するときは、右バンクの吸排気弁の作動が停止するため、右バンク側の排気管には排気が流れず、直前に排出された排気が滞留する。その結果、酸素濃度センサは、燃料供給遮断運転中に検出されるはずの高い酸素濃度を検出せず、異常と誤判定される。
【０００７】
本発明はこの点に着目してなされたものであり、一部気筒運転と全筒運転を切り換える内燃機関に取り付けられる酸素濃度センサの故障を正確に判定することができる内燃機関の制御装置を提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記目的を達成するため請求項１に記載の発明は、複数気筒を有し、前記複数気筒の全てを作動させる全筒運転と、前記複数気筒のうち一部気筒の作動を休止させる一部気筒運転とを切換える切換手段（３０）を備えた内燃機関の制御装置において、前記機関の運転パラメータを含む、前記機関により駆動される車両の運転パラメータ（ＴＨ，ＴＡ，ＴＷ，ＶＰ，ＧＰ）を検出する運転パラメータ検出手段と、前記運転パラメータに応じて前記全筒運転または一部気筒運転を前記切換手段に指令する指令手段と、前記一部気筒に対応する排気系（１３Ｒ）に設けられ、排気中の酸素濃度を検出する酸素濃度センサ（２２Ｒ）と、前記機関の減速時における燃料供給遮断運転を含む所定運転状態において、前記酸素濃度センサ（２２Ｒ）の故障を診断する診断手段と、該診断手段による故障診断終了後に、前記一部気筒運転を許可する許可手段とを備えることを特徴とする。
【０００９】
この構成によれば、機関の減速時における燃料供給遮断運転を含む所定運転状態において、機関排気系に設けられた酸素濃度センサの故障診断が行われ、故障診断終了後に、一部気筒運転が許可される。したがって、先ず全筒運転中に酸素濃度センサの故障診断が実行され、故障診断終了後に一部気筒運転が実行可能となるので、休止気筒側に設けられた酸素濃度センサの故障を正確に診断することができる。
【００１０】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
図１は本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。Ｖ型６気筒の内燃機関（以下単に「エンジン」という）１は、＃１，＃２及び＃３気筒が設けられた右バンクと、＃４，＃５及び＃６気筒が設けられた左バンクとを備え、右バンクには＃１〜＃３気筒を一時的に休止させるための気筒休止機構３０が設けられている。図２は、気筒休止機構３０を油圧駆動するための油圧回路とその制御系を示す図であり、この図も図１と合わせて参照する。
【００１１】
エンジン１の吸気管２の途中にはスロットル弁３が配されている。スロットル弁３には、スロットル弁３の開度ＴＨを検出するスロットル弁開度センサ４が設けられており、その検出信号が電子制御ユニット（以下「ＥＣＵ」という）５に供給される。
【００１２】
燃料噴射弁６は図示しない吸気弁の少し上流側に各気筒毎に設けられており、各噴射弁は図示しない燃料ポンプに接続されていると共にＥＣＵ５に電気的に接続されて当該ＥＣＵ５からの信号により燃料噴射弁６の開弁時間が制御される。
【００１３】
スロットル弁３の直ぐ下流には吸気管内絶対圧（ＰＢＡ）センサ７が設けられており、この絶対圧センサ７により電気信号に変換された絶対圧信号はＥＣＵ５に供給される。また、吸気管内絶対圧センサ７の下流には吸気温（ＴＡ）センサ８が取付けられており、吸気温ＴＡを検出して対応する電気信号をＥＣＵ５に供給する。
【００１４】
エンジン１の本体に装着されたエンジン水温（ＴＷ）センサ９はサーミスタ等から成り、エンジン水温（冷却水温）ＴＷを検出して対応する温度信号を出力してＥＣＵ５に供給する。
ＥＣＵ５には、エンジン１のクランク軸（図示せず）の回転角度を検出するクランク角度位置センサ１０が接続されており、クランク軸の回転角度に応じた信号がＥＣＵ５に供給される。クランク角度位置センサ１０は、エンジン１の特定の気筒の所定クランク角度位置でパルス（以下「ＣＹＬパルス」という）を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点（ＴＤＣ）に関し所定クランク角度前のクランク角度位置で（６気筒エンジンではクランク角１２０度毎に）ＴＤＣパルスを出力するＴＤＣセンサ及びＴＤＣパルスより短い一定クランク角周期（例えば３０度周期）でＣＲＫパルスを発生するＣＲＫセンサから成り、ＣＹＬパルス、ＴＤＣパルス及びＣＲＫパルスがＥＣＵ５に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御及びエンジン回転数（エンジン回転速度）ＮＥの検出に使用される。
【００１５】
気筒休止機構３０は、エンジン１の潤滑油を作動油として使用し、油圧駆動される。オイルポンプ３１により加圧された作動油は、油路３２及び吸気側油路３３ｉ，排気側油路３３ｅを介して、気筒休止機構３０に供給される。油路３２と、油路３３ｉ及び３３ｅとの間に、吸気側電磁弁３５ｉ及び排気側電磁弁３５ｅが設けられており、これらの電磁弁３５ｉ，３５ｅはＥＣＵ５に接続されてその作動がＥＣＵ５により制御される。
【００１６】
油路３３ｉ，３３ｅには、作動油圧が所定閾値より低下するとオンする油圧スイッチ３４ｉ，３４ｅが設けられており、その検出信号は、ＥＣＵ５に供給される。また、油路３２の途中には、作動油温ＴＯＩＬを検出する作動油温センサ３３が設けられており、その検出信号がＥＣＵ５に供給される。
【００１７】
気筒休止機構３０の具体的な構成例は、例えば特開平１０−１０３０９７号公報に示されており、本実施形態でも同様の機構を用いている。この機構によれば、電磁弁３５ｉ，３５ｅが閉弁され、油路３３ｉ，３３ｅ内の作動油圧が低いときは、各気筒（＃１〜＃３）の吸気弁及び排気弁が通常の開閉作動を行う一方、電磁弁３５ｉ，３５ｅが開弁され、油路３３ｉ，３３ｅ内の作動油圧が高くなると、各気筒（＃１〜＃３）の吸気弁及び排気弁が閉弁状態を維持する。すなわち、電磁弁３５ｉ，３５ｅの閉弁中は、全ての気筒を作動させる全気筒運転が行われ、電磁弁３５ｉ，３５ｅを開弁させると、＃１〜＃３気筒を休止させ、＃４〜＃６気筒のみ作動させる一部気筒運転が行われる。
【００１８】
右バンクの＃１〜＃３気筒に接続された排気管１３Ｒ、及び左バンクの＃４〜＃６気筒に接続された排気管１３Ｌには、排気を浄化する三元触媒２３Ｒ及び２３Ｌが設けられている。三元触媒２３Ｒ及び２３Ｌの上流側には、比例型空燃比センサ（以下「ＬＡＦセンサ」という）２１Ｒ及び２１Ｌが装着されており、これらＬＡＦセンサ２１Ｒ及び２１Ｌは排気中の酸素濃度（空燃比）にほぼ比例する検出信号を出力しＥＣＵ５に供給する。三元触媒２３Ｒ及び２３Ｌの下流側には、排気中の酸素濃度を検出する酸素濃度センサ（以下「Ｏ２センサ」という）２２Ｒ及び２２Ｌが設けられている。Ｏ２センサ２２Ｒ及び２２Ｌは、その出力が理論空燃比の前後において急激に変化する特性を有し、その出力は理論空燃比よりリッチ側で高レベルとなり、リーン側で低レベルとなる。Ｏ２センサ２２Ｒ及び２２Ｌは、ＥＣＵ５に接続されており、その検出信号はＥＣＵ５に供給される。
【００１９】
エンジン１の各気筒毎に設けられた点火プラグ１２は、ＥＣＵ５に接続されており、点火プラグ１２の駆動信号、すなわち点火信号がＥＣＵ５から供給される。
ＥＣＵ５には大気圧ＰＡを検出する大気圧センサ１４、エンジン１により駆動される車両の走行速度（車速）ＶＰを検出する車速センサ１５、及び当該車両の変速機のギヤ位置ＧＰを検出するギヤ位置センサ１６が接続されており、これらのセンサの検出信号がＥＣＵ５に供給される。
【００２０】
ＥＣＵ５は、各種センサからの入力信号波形を整形し、電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する等の機能を有する入力回路、中央演算処理回路（以下「ＣＰＵ」という）、ＣＰＵで実行される各種演算プログラム及び演算結果等を記憶する記憶回路、前記燃料噴射弁６に駆動信号を供給する出力回路等から構成される。ＥＣＵ５は、各種センサの検出信号に基づいて、燃料噴射弁６の開弁時間、及び点火時期を制御するとともに、電磁弁３５ｉ，３５ｅの開閉を行って、エンジン１の全筒運転と、一部気筒運転との切り換え制御を行う。また、ＥＣＵ５は、Ｏ２センサ２２Ｒ及び２２Ｌの故障診断を行う。
【００２１】
ＥＣＵ５のＣＰＵは、上述した各種センサの検出信号に基づいて、種々のエンジン運転状態を判別するとともに、該判別されたエンジン運転状態に応じて、次式（１）に基づき、ＴＤＣ信号パルスに同期して開弁作動する燃料噴射弁６による燃料噴射時間ＴＯＵＴを演算する。
ＴＯＵＴ＝ＴＩ×ＫＣＭＤ×ＫＬＡＦ×Ｋ１＋Ｋ２              （１）
【００２２】
ここに、ＴＩは燃料噴射弁６の基本燃料噴射時間であり、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて設定されたＴＩマップを検索して決定される。ＴＩマップは、マップ上のエンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに対応する運転状態において、エンジン１に供給される混合気の空燃比がほぼ理論空燃比になるように設定されている。
【００２３】
ＫＣＭＤは目標空燃比係数であり、エンジン回転数ＮＥ、吸気管内絶対圧ＰＢＡ、エンジン水温ＴＷ等のエンジン運転パラメータ及びＯ２センサ２２Ｒ及び２２Ｌの検出信号に応じて設定される。目標空燃比係数ＫＣＭＤは、空燃比Ａ／Ｆの逆数、すなわち燃空比Ｆ／Ａに比例し、理論空燃比のとき値１．０をとるので、目標当量比ともいう。
【００２４】
ＫＬＡＦは、ＬＡＦセンサ２１Ｒおよび２１Ｌの検出空燃比から算出される検出当量比ＫＡＣＴが目標当量比ＫＣＭＤに一致するように算出される空燃比補正係数である。なお、ＬＡＦセンサ１４の検出空燃比に応じたフィードバック制御を行わないときは、無補正値（１．０）または学習値に設定される。
【００２５】
Ｋ１及びＫ２は夫々各種エンジンパラメータ信号に応じて演算される他の補正係数および補正変数であり、エンジン運転状態に応じた燃費特性、エンジン加速特性等の諸特性の最適化が図れるような所定値に決定される。
【００２６】
図３は、一部の気筒を休止させる気筒休止（一部気筒運転）の実行条件を判定する処理のフローチャートである。この処理はＥＣＵ５のＣＰＵで所定時間（例えば１０ミリ秒）毎に実行される。
ステップＳ１１では、始動モードフラグＦＳＴＭＯＤが「１」であるか否かを判別し、ＦＳＴＭＯＤ＝１であってエンジン１の始動（クランキング）中であるときは、検出したエンジン水温ＴＷを始動モード水温ＴＷＳＴＭＯＤとして記憶する（ステップＳ１３）。次いで、始動モード水温ＴＷＳＴＭＯＤに応じて図４に示すＴＭＴＷＣＳＤＬＹテーブルを検索し、遅延時間ＴＭＴＷＣＳＤＬＹを算出する。ＴＭＴＷＣＳＤＬＹテーブルは、始動モード水温ＴＷＳＴＭＯＤが第１所定水温ＴＷ１（例えば４０℃）以下の範囲では、遅延時間ＴＭＴＷＣＳＤＬＹが所定遅延時間ＴＤＬＹ１（例えば２５０秒）に設定され、始動モード水温ＴＷＳＴＭＯＤが第１所定水温ＴＷ１（例えば４０℃）より高く第２所定水温ＴＷ２（例えば６０℃）以下の範囲では、始動モード水温ＴＷＳＴＭＯＤが高くなるほど遅延時間ＴＭＴＷＣＳＤＬＹが減少するように設定され、始動モード水温ＴＷＳＴＭＯＤが第２所定水温ＴＷ２より高い範囲では、遅延時間ＴＭＴＷＣＳＤＬＹは「０」に設定されている。
【００２７】
続くステップＳ１５では、ダウンカウントタイマＴＣＳＷＡＩＴを遅延時間ＴＭＴＷＣＳＤＬＹに設定してスタートさせ、気筒休止フラグＦＣＹＬＳＴＰを「０」に設定する（ステップＳ２７）。これは気筒休止の実行条件が不成立であることを示す。
【００２８】
ステップＳ１１でＦＳＴＭＯＤ＝０であって通常運転モードであるときは、エンジン水温ＴＷが気筒休止判定温度ＴＷＣＳＴＰ（例えば７５℃）より高いか否かを判別する（ステップＳ１２）。ＴＷ≦ＴＷＣＳＴＰであるときは、実行条件不成立と判定し、前記ステップＳ１４に進む。エンジン水温ＴＷが気筒休止判定温度ＴＷＣＳＴＰより高いときは、ステップＳ１２からステップＳ１６に進み、ステップＳ１５でスタートしたタイマＴＣＳＷＡＩＴの値が「０」であるか否かを判別する。ＴＣＳＷＡＩＴ＞０である間は、前記ステップＳ２７に進み、ＴＣＳＷＡＩＴ＝０となると、ステップＳ１７に進む。
【００２９】
ステップＳ１７では、車速ＶＰ及びギヤ位置ＧＰに応じて図５に示すＴＨＣＳテーブルを検索し、ステップＳ１８の判別に使用する上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬを算出する。図５において、実線が上側閾値ＴＨＣＳＨに対応し、破線が下側閾値ＴＨＣＳＬに対応する。ＴＨＣＳテーブルは、ギヤ位置ＧＰ毎に設定されており、各ギヤ位置（２速〜５速）において、大まかには車速ＶＰが増加するほど、上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬが増加するように設定されている。ただし、ギヤ位置ＧＰが２速のときは、車速ＶＰが変化しても上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬは一定に維持される領域が設けられている。またギヤ位置ＧＰが１速のときは、常に全筒運転を行うので、上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬは例えば「０」に設定される。また車速ＶＰが同一であれば、低速側ギヤ位置ＧＰに対応する閾値（ＴＨＣＳＨ，ＴＨＣＳＬ）の方が、高速側ギヤ位置ＧＰに対応する閾値（ＴＨＣＳＨ，ＴＨＣＳＬ）より大きな値に設定されている。
【００３０】
ステップＳ１８では、スロットル弁開度ＴＨが閾値ＴＨＣＳより小さいか否かの判別をヒステリシスを伴って行う。具体的には、気筒休止フラグＦＣＹＬＳＴＰが「１」であるときは、スロットル弁開度ＴＨが増加して上側閾値ＴＨＣＳＨに達すると、ステップＳ１８の答が否定（ＮＯ）となり、気筒休止フラグＦＣＹＬＳＴＰが「０」であるときは、スロットル弁開度ＴＨが減少して下側閾値ＴＨＣＳＬを下回ると、ステップＳ１８の答が肯定（ＹＥＳ）となる。
【００３１】
ステップＳ１８の答が肯定（ＹＥＳ）であるときは、大気圧ＰＡが所定圧ＰＡＣＳ（例えば８６．６ｋＰａ（６５０ｍｍＨｇ））以上であるか否かを判別し（ステップＳ１９）、その答が肯定（ＹＥＳ）であるとき、吸気温ＴＡが所定下限温度ＴＡＣＳＬ（例えば−１０℃）以上であるか否かを判別し（ステップＳ２０）、その答が肯定（ＹＥＳ）であるときは、吸気温ＴＡが所定上限温度ＴＡＣＳＨ（例えば４５℃）より低いか否かを判別し（ステップＳ２１）、その答が肯定（ＹＥＳ）であるときは、エンジン水温ＴＷが所定上限水温ＴＷＣＳＨ（例えば１２０℃）より低いか否かを判別し（ステップＳ２２）、その答が肯定（ＹＥＳ）であるときは、エンジン回転数ＮＥが所定回転数ＮＥＣＳより低いか否かを判別する（ステップＳ２３）。
【００３２】
ステップＳ２３の判別は、ステップＳ１８と同様にヒステリシスを伴って行われる。すなわち、気筒休止フラグＦＣＹＬＳＴＰが「１」であるときは、エンジン回転数ＮＥが増加して上側回転数ＮＥＣＳＨ（例えば３５００ｒｐｍ）に達すると、ステップＳ２３の答が否定（ＮＯ）となり、気筒休止フラグＦＣＹＬＳＴＰが「０」であるときは、エンジン回転数ＮＥが減少して下側回転数ＮＥＣＳＬ（例えば３３００ｒｐｍ）を下回ると、ステップＳ２３の答が肯定（ＹＥＳ）となる。
【００３３】
ステップＳ２４では、診断終了フラグＦＤＯＮＥが「１」であるか否かを判別する。診断終了フラグＦＤＯＮＥは、図６及び図７に示すＯ２センサ２２Ｒの故障診断が終了すると「１」に設定される。ＦＤＯＮＥ＝０であって、故障診断が終了していないときは、前記ステップＳ２７に進む。Ｏ２センサ２２Ｒの故障診断が終了し、診断終了フラグＦＤＯＮＥが「１」に設定されると、ステップＳ２５に進み、正常フラグＦＯＫが「１」であるか否かを判別する。正常フラグＦＯＫは、故障診断の結果、Ｏ２センサ２２Ｒが正常と判定されると「１」に設定される。
【００３４】
ステップＳ１８〜Ｓ２５の何れかの答が否定（ＮＯ）であるときは、気筒休止の実行条件が不成立と判定し、前記ステップＳ２７に進む。一方ステップＳ１８〜Ｓ２５の答がすべて肯定（ＹＥＳ）であるときは、気筒休止の実行条件が成立していると判定し、気筒休止フラグＦＣＹＬＳＴＰを「１」に設定する（ステップＳ２６）。
【００３５】
気筒休止フラグＦＣＹＬＳＴＰが「１」に設定されているときは、＃１〜＃３気筒を休止させ、＃４〜＃６気筒を作動させる一部気筒運転が実行され、気筒休止フラグＦＣＹＬＳＴＰが「０」に設定されているときは、全気筒＃１〜＃６を作動させる全筒運転が実行される。
【００３６】
図３の処理によれば、Ｏ２センサ２２Ｒの故障診断が終了し、かつ正常判定がなされたときに、気筒休止実行条件が成立し、一部気筒運転が許可される。したがって、先ず全筒運転中にＯ２センサ２２Ｒの故障診断が実行され、故障診断終了後に一部気筒運転が実行可能となるので、休止気筒側（右バンク）に設けられたＯ２センサ２２Ｒの故障を正確に診断することができる。また、Ｏ２センサ２２Ｒが故障しているとき、一部気筒運転を禁止するのは、Ｏ２センサ２２Ｒの出力を気筒休止機構３０の故障診断に使用しているからである。
【００３７】
図６及び図７は、Ｏ２センサ２２Ｒの故障診断処理のフローチャートである。この処理は、ＥＣＵ５のＣＰＵで所定時間（例えば１０ミリ秒）毎に実行される。
ステップＳ３１では、Ｏ２センサ２２Ｒの出力電圧ＳＶＯ２が、所定電圧ＳＶＯ２Ｌ（例えば、０．２９Ｖ）以下か否かを判別し、ＳＶＯ２≦ＳＶＯ２Ｌであって、Ｏ２センサ２２Ｒの出力がリーン空燃比（比較的高い酸素濃度）を示すときは、ゾーンフラグＦＳＺＯＮＥを「０」に設定する（ステップＳ３２）。一方ＳＶＯ２＞ＳＶＯ２Ｌであって、Ｏ２センサ２２Ｒの出力がリッチ空燃比（比較的低い酸素濃度）を示すときは、ゾーンフラグＦＳＺＯＮＥを「１」に設定する（ステップＳ３３）
ステップＳ３４では、図８に示す実行条件判定処理を実行する。
【００３８】
図８のステップＳ６０では、この処理で更新される前のモードパラメータＭＯＤＥの値を、前回モードパラメータＭＯＤＥＺとして記憶する。ステップＳ６１では、エンジン１の始動完了時点からの経過時間を計測するアップカウントタイマＴ１ＳＡＣＲの値が所定時間ＴＭＡＣＲ（例えば１２０秒）より大きいか否かを判別する。その答が否定（ＮＯ）であるときは、診断許可フラグＦＭＣＮＤを「０」に設定する（ステップＳ６６）。これは、診断実行条件が不成立であることを示す。
【００３９】
続くステップＳ７３では、ダウンカウントタイマＴＭＯＤＥ２を所定時間ＴＭＭＯＤＥ２（例えば２．５秒）に設定してスタートさせる。ダウンカウントタイマＴＭＯＤＥ２は、図７のステップＳ４６で参照される。ステップＳ７４では、モードパラメータＭＯＤＥを「０」に設定し、本処理を終了する。
【００４０】
ステップＳ６１でタイマＴ１ＳＡＣＲの値が所定時間ＴＭＡＣＲを越えたときは、エンジン回転数ＮＥが所定回転数ＮＥＨより低いか否か、エンジン水温ＴＷが所定水温ＴＷＬより高いか否か、及び吸気温ＴＡが所定吸気温ＴＡＬより高いか否かを判別する（ステップＳ６２）。これらの判別の何れかの答が否定（ＮＯ）であるときは、前記ステップＳ６６に進み、すべて肯定（ＹＥＳ）であるとき、すなわちＮＥ＜ＮＥＨ、ＴＷ＞ＴＷＬ、及びＴＡ＞ＴＡＬがすべて成立するときは、診断終了フラグＦＤＯＮＥがすでに「１」に設定されているか否かを判別する（ステップＳ６３）。ＦＤＯＮＥ＝１であってすでに診断が終了しているときは、前記ステップＳ６６に進み、ＦＤＯＮＥ＝０であるときは、活性化フラグＦＳＯ２ＡＣＴが「１」であるか否かを判別する（ステップＳ６４）。
【００４１】
活性化フラグＦＳＯ２ＡＣＴは、Ｏ２センサ２２Ｒが活性化していると判定されたとき「１」に設定される。具体的には、エンジン１の始動から所定時間が経過して時点におけるセンサ出力ＳＶＯ２が、所定範囲内に入っていれば、活性化していると判定される。
【００４２】
ステップＳ６４の答が否定（ＮＯ）であるときは前記ステップＳ６６に進み、ＦＳＯ２ＡＣＴ＝１であって、Ｏ２センサ２２Ｒが活性化しているときは、気筒休止フラグＦＣＹＬＳＴＰが「１」であるか否かを判別する（ステップＳ６５）。ＦＣＹＬＳＴＰ＝１であって一部気筒運転中であるときは、前記ステップＳ６６に進み、ＦＣＹＬＳＴＰ＝０であって全筒運転中のときは、故障診断実行条件成立と判定し、診断許可フラグＦＭＣＮＤを「１」に設定する（ステップＳ６７）。
【００４３】
ステップＳ６８では、減速フュエルカットフラグＦＤＥＣＦＣが「１」であるか否かを判別する。減速フュエルカットフラグＦＤＥＣＦＣは、エンジン１の減速中に所定のフュエルカット条件が満たされたとき、「１」に設定される。ＦＤＥＣＦＣ＝１であって、フュエルカット運転中であるときは、ダウンカウントタイマＴＭＯＤＥ３に所定時間ＴＭＭＯＤＥ３（例えば３０秒）を設定してスタートさせる（ステップＳ６９）。次いで、モードパラメータＭＯＤＥを「２」に設定し（ステップＳ７０）、本処理を終了する。
【００４４】
ステップＳ６８でＦＤＥＣＦＣ＝０であってフュエルカット運転中でないときは、ステップＳ６９でスタートされるタイマＴＭＯＤＥ３の値が「０」であるか否かを判別する（ステップＳ７１）。ＴＭＯＤＥ３＞０であってフュエルカット運転の終了から所定時間ＴＭＭＯＤＥ３が経過していないときは、モードパラメータＭＯＤＥを「３」に設定する（ステップＳ７２）。またタイマＴＭＯＤＥ３の値が「０」となると、前記ステップＳ７３に進む。
【００４５】
図８の処理によれば、モードパラメータＭＯＤＥは、フュエルカット運転中であるときは「２」に設定され、フュエルカット運転終了後所定時間ＴＭＭＯＤＥ３内は「３」に設定され、それ以外は「０」に設定される。
【００４６】
図６に戻り、ステップＳ３５では、診断許可フラグＦＭＣＮＤが「１」であるか否かを判別する。ＦＭＣＮＤ＝０であって診断が許可されていないときは、リーンフラグＦＬＥＡＮを「０」に設定する（ステップＳ５５）。
一方ＦＭＣＮＤ＝１であって診断が許可されているときは、モードパラメータＭＯＤＥの値が「２」であるか否かを判別する（ステップＳ４１）。ＭＯＤＥ＝２であるときは、前回モードパラメータＭＯＤＥＺの値が「２」であるか否かを判別する。この答が否定（ＮＯ）であって、モードパラメータＭＯＤＥが「２」に移行した直後であるときは、ゾーンフラグＦＳＺＯＮＥが「１」であるか否かを判別する（ステップＳ４３）。ＦＳＺＯＮＥ＝０であって、Ｏ２センサ出力ＳＶＯ２がリーン空燃比を示すときは、リーンフラグＦＬＥＡＮを「１」に設定する（ステップＳ４５）。すなわち、フュエルカット運転開始時にＯ２センサ出力ＳＶＯ２がリーン空燃比を示すとき、リーンフラグＦＬＥＡＮが「１」に設定される。
【００４７】
ステップＳ４２でＭＯＤＥＺ＝２であって前回もモードパラメータＭＯＤＥが「２」であったとき、またはステップＳ４３でＦＳＺＯＮＥ＝１であってＯ２センサ出力ＳＶＯ２がリッチ空燃比を示すときは、ステップＳ４４に進み、リーンフラグＦＬＥＡＮが「１」であるか否かを判別する。この答が肯定（ＹＥＳ）、すなわち、フュエルカット運転開始時にＯ２センサ出力ＳＶＯ２がリーン空燃比を示していたときは、前記ステップＳ４５に進む。
【００４８】
ステップＳ４２からＳ４３を経由してステップＳ４４に至ったときは、フュエルカット運転開始直後は、Ｏ２センサ出力ＳＶＯ２がリッチ空燃比を示しており、ステップＳ４４の答は否定（ＮＯ）となって、ステップＳ４６に進む。
ステップＳ４６では、図８のステップＳ７３でスタートされたダウンカウントタイマＴＭＯＤＥ２の値が「０」であるか否かを判別する。この答が否定（ＮＯ）である間は直ちに本処理を終了し、ＴＭＯＤＥ２＝０となると、ゾーンフラグＦＳＺＯＮＥが「０」であるか否かを判別する（ステップＳ４７）。ＦＳＺＯＮＥ＝１であってＯ２センサ出力ＳＶＯ２がまだリッチ空燃比を示しているときは、Ｏ２センサ２２Ｒは故障している（センサ出力ＳＶＯ２がリッチ空燃比を示すレベルに留まってしまう故障）と判定し、第１故障フラグＦＦＳＤＨを「１」に設定する（ステップＳ４８）。またＦＺＯＮＥ＝０であってＯ２センサ出力ＳＶＯ２がリーン空燃比を示す値に変化したときは、Ｏ２センサ２２Ｒは正常と判定し、正常フラグＦＯＫを「１」に設定する（ステップＳ５２）。ステップＳ５６では、診断終了フラグＦＤＯＮＥが「１」に設定される。
【００４９】
ステップＳ４２でモードパラメータＭＯＤＥの値が「２」でないときは、モードパラメータＭＯＤＥの値が「３」であるか否かを判別する（ステップＳ４９）。ＭＯＤＥ＝３であってフュエルカット運転終了後所定時間ＴＭＭＯＤＥ３内であるときは、リーンフラグＦＬＥＡＮが「１」であるか否かを判別する（ステップＳ５０）。ＦＬＥＡＮ＝１であるときは、ゾーンフラグＦＳＺＯＮＥが「１」であるか否かを判別する（ステップＳ５１）。ステップＳ５０またはＳ５１の答が否定（ＮＯ）であるときは直ちに本処理を終了する。
【００５０】
ステップＳ５０及びＳ５１の答がともに肯定（ＹＥＳ）であるとき、すなわち、フュエルカット運転開始直後においてリーン空燃比を示していたＯ２センサ出力ＳＶＯ２が、フュエルカット運転終了後所定時間内にリッチ空燃比を示す値に変化したときは、Ｏ２センサ２２Ｒは正常と判定し、正常フラグＦＯＫを「１」に設定する（ステップＳ５２）。その後前記ステップＳ５６に進む。
【００５１】
ステップＳ４９でモードパラメータＭＯＤＥの値が「３」でないとき、すなわちモードパラメータＭＯＤＥの値が「０」であるときは、ステップＳ５３に進み、前回モードパラメータＭＯＤＥＺの値が「３」であるか否かを判別する。ＭＯＤＥＺ＝３であってモードパラメータＭＯＤＥの値が「３」の状態から「０」の状態に移行したときは、第２故障フラグＦＦＳＤＬを「１」に設定する（ステップＳ５４）。モードパラメータＭＯＤＥの値が「３」であるときにＯＫ判定がなされずに、モードパラメータＭＯＤＥの値が「０」に移行したときは、Ｏ２センサ２２Ｒの出力ＳＶＯ２が、リーン空燃比を示す値（低レベル）に留まっていることを示すので、そのことを示す第２故障フラグＦＦＳＤＬが「１」に設定される。その後前記ステップＳ５６に進む。
またステップＳ５３の答が否定（ＮＯ）であるときは、前記ステップＳ５５に進む。
【００５２】
なお、Ｏ２センサ２２Ｌの故障診断も、図６及び７の処理と同様の処理により実行される。
【００５３】
図６及び図７の処理によれば、フュエルカット運転開始直後においてＯ２センサ出力ＳＶＯ２がリッチ空燃比を示し（ＦＬＥＡＮ＝０）、所定時間ＴＭＭＯＤＥ２経過してもリッチ空燃比を示している（ステップＳ４７の答が否定（ＮＯ））ときは、Ｏ２センサが故障していると判定される。また、所定時間ＴＭＭＯＤＥ２（例えば２．５秒）が経過する前に、Ｏ２センサ出力ＳＶＯ２がリーン空燃比を示す値に変化したときは、Ｏ２センサは正常と判定される。さらに、フュエルカット運転開始直後においてＯ２センサ出力ＳＶＯ２がリーン空燃比を示し（ＦＬＥＡＮ＝１）、フュエルカット運転終了後、所定時間ＴＭＭＯＤＥ３（例えば３０秒）以内にリッチ空燃比を示す値に変化したときは、Ｏ２センサは正常と判定される。そして、図３の処理により、Ｏ２センサ２２Ｒの故障診断処理が終了し、かつＯ２センサ２２Ｒが正常であるとの判定がなされた後に、一部気筒運転の実行が許可される。したがって、先ず全筒運転中にＯ２センサ２２Ｒの故障診断が実行され、故障診断終了後に一部気筒運転が実行可能となるので、休止気筒側（右バンク）に設けられたＯ２センサ２２Ｒの故障を正確に診断することができる。
【００５４】
本実施形態では、気筒休止機構３０が切換手段を構成し、スロットル弁開度センサ４、吸気温センサ８、エンジン水温センサ９、クランク角度位置センサ１０、車速センサ１５、及びギヤ位置センサ１６が運転パラメータ検出手段を構成し、ＥＣＵ５が、指令手段、診断手段及び許可手段を構成する。より具体的には、図３のステップＳ１１〜Ｓ２３、及びＳ２６，Ｓ２７が指令手段に相当し、同図のステップＳ２４及びＳ２５が許可手段に相当し、図６及び図７の処理が診断手段に相当する。
【００５５】
なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、上述した実施形態では、Ｏ２センサ２２Ｒ及び２２Ｌの故障診断を行う例を示したが、本発明は、ＬＡＦセンサ２１Ｒ及び２１Ｌの故障診断を、図６及び図７に示す手法と同様の手法で行う場合にも適用可能である。その場合には、Ｏ２センサ２２Ｒ及びＬＡＦセンサ２１Ｒの故障診断終了後であって、それらのセンサがいずれも正常であるとき、一部気筒運転が許可される。
【００５６】
また本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンになどにおいて気筒休止を行う場合にも適用が可能である。
【００５７】
【発明の効果】
以上詳述したように請求項１に記載の発明によれば、機関の減速時における燃料供給遮断運転を含む所定運転状態において、機関排気系に設けられた酸素濃度センサの故障診断が行われ、故障診断終了後に、一部気筒運転が許可される。したがって、先ず全筒運転中に酸素濃度センサの故障診断が実行され、故障診断終了後に一部気筒運転が実行可能となるので、休止気筒側に設けられた酸素濃度センサの故障を正確に診断することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。
【図２】気筒休止機構の油圧制御系の構成を示す図である。
【図３】気筒休止条件を判定する処理のフローチャートである。
【図４】図３の処理で使用されるＴＭＴＷＣＳＤＬＹテーブルを示す図である。
【図５】図３の処理で使用されるＴＨＣＳテーブルを示す図である。
【図６】Ｏ２センサの故障診断を行う処理のフローチャートである。
【図７】Ｏ２センサの故障診断を行う処理のフローチャートである。
【図８】図６の処理で実行される、故障診断の実行条件を判定する処理のフローチャートである。
【符号の説明】
１  内燃機関
２  吸気管
４  スロットル弁開度センサ（運転パラメータ検出手段）
５  電子制御ユニット（指令手段、診断手段、許可手段）
８  吸気温センサ（運転パラメータ検出手段）
９  エンジン水温センサ（運転パラメータ検出手段）
１０  クランク角度位置センサ（運転パラメータ検出手段）
１５  車速センサ（運転パラメータ検出手段）
１６  ギヤ位置センサ（運転パラメータ検出手段）
３０  気筒休止機構（切換手段）
【図１】
2005002813.tif 000003
【図２】
2005002813.tif 000004
【図３】
2005002813.tif 000005
【図４】
2005002813.tif 000006
【図５】
2005002813.tif 000007
【図６】
2005002813.tif 000008
【図７】
2005002813.tif 000009
【図８】
2005002813.tif 000010