(57)【特許請求の範囲】
【請求項１】
車両に搭載された所定の部品又はシステムの異常の有無を診断する異常診断手段と、
前記異常診断手段で実行した異常診断の実行頻度を算出する実行頻度算出手段とを備え、
前記異常診断手段は、前記実行頻度算出手段で算出した実行頻度に応じて異常診断の実行条件、診断方法、判定条件のうちの少なくとも１つ（以下「異常診断条件」という）を変更することを特徴とする車両の異常診断装置。
【請求項２】
前記異常診断手段は、前記実行頻度算出手段で算出した実行頻度が所定の要求レベルに達していないときに、該実行頻度を増加させるように前記異常診断条件を変更することを特徴とする請求項１に記載の車両の異常診断装置。
【請求項３】
内燃機関の排出ガスを浄化する触媒を備え、
前記異常診断手段は、前記触媒の劣化の有無を診断することを特徴とする請求項１又は２に記載の車両の異常診断装置。
【請求項４】
燃料タンク内の燃料が蒸発して生じたエバポガスを内燃機関の吸気系にパージするエバポガスパージシステムを備え、
前記異常診断手段は、前記燃料タンクを含むエバポ系のリークの有無を診断することを特徴とする請求項１乃至３のいずれかに記載の車両の異常診断装置。
【請求項５】
前記異常診断手段は、前記実行頻度算出手段で算出した実行頻度が所定の要求レベルに達しているときには、内燃機関の運転中のみに前記エバポ系のリーク診断を実行し、該実行頻度が所定の要求レベルに達していないときには、内燃機関の停止中でも前記エバポ系のリーク診断を実行することを特徴とする請求項４に記載の車両の異常診断装置。
【請求項６】
前記異常診断手段は、前記実行頻度算出手段で算出した実行頻度が所定の要求レベルに達しているときには、内燃機関のアイドル運転中のみに前記エバポ系のリーク診断を実行し、該実行頻度が所定の要求レベルに達していないときには、アイドル運転以外の運転条件でも前記エバポ系のリーク診断を実行することを特徴とする請求項４に記載の車両の異常診断装置。
【請求項７】
内燃機関の排出ガスの一部を吸気系に還流する排出ガス還流システムを備え、
前記異常診断手段は、前記排出ガス環流システムの異常の有無を診断することを特徴とする請求項１乃至６のいずれかに記載の車両の異常診断装置。
【請求項８】
内燃機関の排気通路内に二次空気を導入する二次空気導入システムを備え、
前記異常診断手段は、前記二次空気導入システムの異常の有無を診断することを特徴とする請求項１乃至７のいずれかに記載の車両の異常診断装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、車両に搭載された所定の部品又はシステムの異常の有無を診断する車両の異常診断装置に関するものである。
【０００２】
【従来の技術】
近年の電子制御化された自動車では、信頼性を向上するために、例えば、排出ガス浄化用の触媒の劣化の有無を診断する触媒劣化診断、燃料タンク内のエバポガス（燃料蒸発ガス）を吸気系にパージ（放出）するエバポガスパージシステムのリーク（漏れ）の有無を診断するエバポガスリーク診断等、各種の異常診断を実行するようにしている。このような異常診断は、ドライバビリティや排気エミッション等に悪影響を及ぼさないようにするために、予め設定した特定の異常診断条件（実行条件、診断方法、判定条件）で実行するようにしている。
【０００３】
【発明が解決しようとする課題】
しかし、車両の使用環境、運転方法、走行パターン等は使用者によって様々であるため、上記従来の異常診断装置のように、予め設定した特定の異常診断条件（実行条件、診断方法、判定条件）で異常診断を実行すると、車両の使用環境、運転方法、走行パターン等によっては、異常診断が実行される回数が少なくなってしまい（或は、異常診断が開始されても途中で中止される回数が増えてしまい）、異常診断の実行頻度が非常に少なくなってしまう可能性がある。このため、異常が発生しても、それを早期に検出することができない可能性がある。
【０００４】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、従来の異常診断方法では異常診断の実行頻度を十分に確保できなかった条件下でも、異常診断の実行頻度を確保することができ、異常発生時にその異常を早期に検出することができる車両の異常診断装置を提供することにある。
【０００５】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１の車両の異常診断装置は、異常診断手段で実行した異常診断の実行頻度を実行頻度算出手段で算出し、その実行頻度に応じて異常診断手段で実行する異常診断の実行条件、診断方法、判定条件のうちの少なくとも１つ（以下「異常診断条件」という）を変更するようにしたものである。このようにすれば、異常診断の実行頻度を監視し、その実行頻度が不足すると判断したときに、異常診断条件（実行条件、診断方法、判定条件）を実行頻度が増加するように変更して異常診断を実行することで、異常診断の実行頻度を増加させることができる。これにより、従来の異常診断方法では異常診断の実行頻度を十分に確保できなかった条件下でも、異常診断の実行頻度を確保することができるようになり、異常発生時にその異常を早期に検出することができる。
【０００６】
この場合、請求項２のように、実行頻度算出手段で算出した実行頻度が所定の要求レベルに達しないときに、該実行頻度を増加させるように異常診断条件を変更するようにしても良い。このようにすれば、従来の異常診断方法では実行頻度が要求レベルに達しなかった条件下でも、確実に実行頻度を要求レベルまで増加させることができる。
【０００７】
本発明の異常診断装置は、車両に搭載された様々な部品やシステムの異常診断に適用できるが、例えば、請求項３のように、排出ガス浄化用の触媒の劣化の有無を診断する触媒劣化診断に適用しても良い。このようにすれば、従来の触媒劣化診断方法では触媒劣化診断の実行頻度を十分に確保できなかった条件下でも、触媒劣化診断の実行頻度を確保することができるようになり、触媒の劣化を早期に検出することができる。
【０００８】
また、請求項４のように、燃料タンク内の燃料が蒸発して生じたエバポガスを内燃機関の吸気系にパージするエバポガスパージシステムを備えている場合には、燃料タンクを含むエバポ系のリークの有無を診断するリーク診断に本発明を適用してもよい。このようにすれば、従来のリーク診断方法ではリーク診断の実行頻度を十分に確保できなかった条件下でも、リーク診断の実行頻度を確保することができるようになり、リーク発生時にそのリークを早期に検出することができる。
【０００９】
ところで、エバポ系のリーク診断は、内燃機関の運転中、停止中のいずれに行っても良いが、内燃機関の停止中にリーク診断を行うと、電源となるバッテリの電力を消費するため、内燃機関の停止中のリーク診断の実行頻度が多くなると、バッテリの負担が大きくなり、バッテリ上がりを招く可能性がある。
【００１０】
そこで、請求項５のように、実行頻度算出手段で算出した実行頻度が所定の要求レベルに達しているときには、内燃機関の運転中のみにエバポ系のリーク診断を実行し、該実行頻度が所定の要求レベルに達していないときには、内燃機関の停止中でもエバポ系のリーク診断を実行するようにしても良い。このようにすれば、内燃機関の運転中に行うリーク診断のみでは実行頻度の要求レベルを満たすことができないときのみ、内燃機関の停止中にリーク診断を実行して実行頻度の要求レベルを満たすようになるので、内燃機関の停止中のリーク診断の実行頻度を必要最小限にとどめることができて、リーク診断の実行頻度の確保とバッテリ上がり防止とを両立させることができる。
【００１１】
また、内燃機関の運転中にエバポ系のリーク診断を行う場合、リーク診断の実行時期は、アイドル運転中（停車中）、走行中のいずれでも良いが、走行中のリーク診断は、内燃機関の運転状態、走行状態、路面状態、走行路の標高（大気圧変化）等の影響を受けるため、アイドル運転中にリーク診断を行った方が、精度の良いリーク診断を行うことができる。
【００１２】
そこで、請求項６のように、実行頻度算出手段で算出した実行頻度が所定の要求レベルに達しているときには、内燃機関のアイドル運転中のみにエバポ系のリーク診断を実行し、該実行頻度が所定の要求レベルに達していないときには、アイドル運転以外の運転条件でもエバポ系のリーク診断を実行するようにしても良い。このようにすれば、内燃機関の運転中のみにエバポ系のリーク診断を行う場合に、リーク診断の実行頻度を確保しながら診断精度も確保することができる。
【００１３】
また、請求項７のように、内燃機関の排出ガスの一部を吸気系に還流する排出ガス還流システム（ＥＧＲシステム）を備えている場合は、ＥＧＲシステムの異常の有無を診断するＥＧＲ異常診断に本発明を適用しても良い。このようにすれば、従来のＥＧＲ異常診断方法ではＥＧＲ異常診断の実行頻度を十分に確保できなかった条件下でも、ＥＧＲ異常診断の実行頻度を確保することができるようになり、ＥＧＲシステムの異常発生時にその異常を早期に検出することができる。
【００１４】
また、請求項８のように、内燃機関の排気通路内に二次空気を導入する二次空気導入システムを備えている場合は、二次空気導入システムの異常の有無を診断する二次空気異常診断に本発明を適用しても良い。このようにすれば、従来の二次空気異常診断方法では二次空気異常診断の実行頻度を十分に確保できなかった条件下でも、二次空気異常診断の実行頻度を確保することができるようになり、二次空気導入システムの異常発生時にその異常を早期に検出することができる。
【００１５】
【発明の実施の形態】
以下、本発明の一実施形態を図面に基づいて説明する。まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２の最上流部には、エアクリーナ１３が設けられ、このエアクリーナ１３の下流側に、吸入空気量を検出するエアフローメータ１４が設けられている。このエアフローメータ１４の下流側には、スロットルバルブ１５とスロットル開度を検出するスロットル開度センサ１６とが設けられている。
【００１６】
更に、スロットルバルブ１５の下流側には、サージタンク１７が設けられ、このサージタンク１７に、吸気管圧力を検出する吸気管圧力センサ１８が設けられている。また、サージタンク１７には、エンジン１１の各気筒に空気を導入する吸気マニホールド１９が設けられ、各気筒の吸気マニホールド１９の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁２０が取り付けられている。
【００１７】
また、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２１が取り付けられ、各点火プラグ２１の火花放電によって筒内の混合気に着火される。エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２６や、エンジン回転速度を検出するクランク角センサ２７が取り付けられている。
【００１８】
一方、エンジン１１の排気管２２には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を低減させる三元触媒等の触媒２３が設けられ、この触媒２３の上流側と下流側に、それぞれ排出ガスの空燃比又はリッチ／リーンを検出するセンサ２４，２５（リニア空燃比センサ、酸素センサ等）が設けられている。
【００１９】
次に、ＥＧＲシステム２９（排出ガス還流システム）、二次空気導入システム３２及びエバポガスパージシステム３７の構成をそれぞれ説明する。
ＥＧＲシステム２９は、排気管２２のうちの触媒２３の上流側と吸気管１２のうちのスロットルバルブ１５の下流側との間に、排出ガスの一部を吸気側に還流させるためのＥＧＲ配管３０が接続され、このＥＧＲ配管３０の途中に排出ガス還流量（ＥＧＲ量）を制御するＥＧＲ弁３１が設けられている。
【００２０】
二次空気導入システム３２は、排気管２２のうちの触媒２３の上流側に、外気を二次空気として導入するための二次空気導入管３３が接続され、この二次空気導入管３３の最上流部に、エアフィルタ３４が設けられている。このエアフィルタ３４の下流側には、二次空気を圧送するエアポンプ３５が設けられ、このエアポンプ３５の下流側に、バルブ３６が設けられている。二次空気導入管３３から排気管２２内に二次空気を導入する位置は、排気管２２内の排出ガス温度が排出ガス中のＨＣ等のリッチ成分が燃焼可能な温度（例えば７００℃）以上となる範囲内になるように設定されている。
【００２１】
次に、エバポガスパージシステム３７の構成を説明する。燃料タンク３８に、エバポ通路３９を介してキャニスタ４０が接続されている。このキャニスタ４０内には、エバポガス（燃料蒸発ガス）を吸着する活性炭等の吸着体（図示せず）が収容され、このキャニスタ４０の大気連通孔が大気開閉弁４１によって開閉される。このキャニスタ４０と吸気管１２との間には、キャニスタ４０内の吸着体に吸着されているエバポガスを吸気管１２にパージ（放出）するためのパージ通路４２が設けられ、このパージ通路４２の途中に、パージ流量を制御するパージ制御弁４３が設けられている。また、燃料タンク３８には、その内圧を検出するタンク内圧センサ３９が設けられている。燃料タンク３８内からパージ制御弁４３までのエバポ系が密閉されているときには、燃料タンク３８の内圧とエバポ系の他の部位の内圧が一致するため、タンク内圧センサ４４により燃料タンク３８の内圧（以下「タンク内圧」という）を検出することで、エバポ系の圧力を検出することができる。
【００２２】
前述した各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）２８に入力される。このＥＣＵ２８は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種の制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射弁２０の燃料噴射量や点火プラグ２１の点火時期を制御する。
【００２３】
また、ＥＣＵ２８は、ＲＯＭに記憶された後述する各種の異常診断用のプログラムを実行することで、触媒２３の劣化の有無を診断する触媒劣化診断、エバポガスパージシステム３７のエバポガスのリークの有無を診断するリーク診断、ＥＧＲシステム２９の異常の有無を診断するＥＧＲ異常診断、二次空気導入システム３２の異常の有無を診断する二次空気異常診断等を実行し、特許請求の範囲でいう異常診断手段としての役割を果たす。
【００２４】
その際、ＥＣＵ２８は、図２及び図３に示す実行頻度算出プログラムを実行することで、触媒劣化診断の実行頻度ｆcat 、リーク診断の実行頻度ｆevp 、ＥＧＲ異常診断の実行頻度ｆEGR 、二次空気異常診断の実行頻度ｆair を、それぞれ算出する。
【００２５】
そして、ＥＣＵ２８は、図４及び図５に示す触媒劣化診断プログラムを実行することで、触媒劣化診断の実行頻度ｆcat が要求レベルに達しているときには、中・高負荷走行時の触媒劣化診断のみを実行し、触媒劣化診断の実行頻度ｆcat が要求レベルに達していないときには、触媒劣化診断実行条件の成立範囲を拡大することによって、中・高負荷走行時の触媒劣化診断と、アイドル運転時又は低負荷走行時の触媒劣化診断とを両方とも実行し、触媒劣化診断の実行頻度ｆcat を増加させる。
【００２６】
また、ＥＣＵ２８は、図７乃至図１１に示すエバポ系リーク診断用の各プログラムを実行することで、リーク診断の実行頻度ｆevp が要求レベルに達しているときには、アイドル運転時のリーク診断のみを実行し、リーク診断の実行頻度ｆevp が要求レベルに達していないときには、リーク診断実行条件の成立範囲を拡大することによって、アイドル運転時のリーク診断とエンジン停止時のリーク診断とを両方とも実行し、リーク診断の実行頻度ｆevp を増加させる。その際、ＥＣＵ２８は、メインリレー制御プログラム（図示せず）を実行することで、エンジン停止後（イグニッションスイッチのオフ後）にリーク診断を実行する際に、必要な部品（ＥＣＵ２８、大気開閉弁４１、燃圧センサ４４等）にバッテリから電源を供給する。
【００２７】
また、ＥＣＵ２８は、図１４乃至図１８に示すＥＧＲ異常診断用の各プログラムを実行することで、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルに達しているときには、燃料カット減速時のＥＧＲ異常診断のみを実行し、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルに達していないときには、ＥＧＲ異常診断実行条件の成立範囲を拡大することによって、燃料カット減速時のＥＧＲ異常診断と定常走行時のＥＧＲ異常診断とを両方とも実行し、ＥＧＲ異常診断の実行頻度ｆEGR を増加させる。
【００２８】
また、ＥＣＵ２８は、図２１に示す二次空気異常診断プログラムを実行することで、二次空気異常診断の実行頻度ｆair が要求レベルに達しているときには、アイドル運転時の二次空気異常診断のみを実行し、二次空気異常診断の実行頻度ｆair が要求レベルに達していないときには、二次空気異常診断実行条件の成立範囲を拡大することによって、アイドル運転時の二次空気異常診断と低負荷走行時の二次空気異常診断とを両方とも実行し、二次空気異常診断の実行頻度ｆair を増加させる。
以下、ＥＣＵ２８が実行する各プログラムの処理内容を説明する。
【００２９】
［実行頻度算出］
図２及び図３に示す実行頻度算出プログラムは、ＥＣＵ２８の電源オン時に所定周期で繰り返し実行され、特許請求の範囲でいう実行頻度算出手段としての役割を果たす。本実施形態では、「米国ＯＤＢ−II法規制改正案ＭＳＣ−０１１０」で示されている実行頻度算出に基づいて説明する。
【００３０】
本プログラムが起動されると、まず、ステップ１０１〜１０６で、走行回数カウンタＣのインクリメント条件が成立しているか否かを判定する。ここで、走行回数カウンタＣのインクリメント条件は、例えば、次の▲１▼〜▲６▼の条件を全て満たすことである。
【００３１】
▲１▼今回のＥＣＵ２８の電源オン後に走行回数カウンタＣをまだインクリメントしていないこと（ステップ１０１）
▲２▼大気圧が所定圧力（例えば７５．３ｋＰａ）よりも高いこと、つまり高地走行でないこと（ステップ１０２）
▲３▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ１０３）
▲４▼始動後の経過時間が所定時間（例えば６００ｓ）よりも長いこと（ステップ１０４）
▲５▼所定速度（例えば４０ｋｍ／ｈ）以上の走行状態が所定時間（例えば３００ｓ）以上継続すること（ステップ１０５）
▲６▼アイドル運転状態が所定時間（例えば３０ｓ）以上継続すること（ステップ１０６）
【００３２】
上記▲１▼〜▲６▼の条件を全て満たせば、走行回数カウンタＣのインクリメント条件が成立するが、上記▲１▼〜▲６▼の条件のうちのいずれか１でも満たさない条件があれば、走行回数カウンタＣのインクリメント条件が不成立となり、走行回数カウンタＣをインクリメントすることなく、後述する実行頻度算出処理（図３のステップ１１２〜１１５）を実行する。
【００３３】
一方、走行回数カウンタＣのインクリメント条件が成立した場合には、一般的な環境下で一般的な走行モードを含む走行が実施されたと判断して、ステップ１０７に進み、走行回数カウンタＣをインクリメントする。
【００３４】
この後、図３のステップ１０８に進み、二次空気を導入している状態が所定時間（例えば１０ｓ）以上継続したか否かによって、実質的に二次空気導入制御を実行したか否かを判定し、「Ｙｅｓ」と判定されれば、ステップ１０９に進み、二次空気異常診断用の走行回数カウンタＣair をインクリメントする。
【００３５】
この後、ステップ１１０に進み、吸気温が所定範囲内（例えば４℃≦吸気温＜３５℃）の状態で始動から所定時間（例えば６００ｓ）以上経過したか否かを判定し、「Ｙｅｓ」と判定されれば、ステップ１１１に進み、エバポ系のリーク診断用の走行回数カウンタＣevp をインクリメントする。
ここで、走行回数は、単に始動回数にしても良い。また、日時を計測する手段を有する場合は、日数や時間としても良い。
【００３６】
上記ステップ１１１でエバポ系のリーク診断用の走行回数カウンタＣevp をインクリメントした後、ステップ１１２〜１１５で、それぞれ触媒劣化診断の実行頻度ｆcat 、リーク診断の実行頻度ｆevp 、ＥＧＲ異常診断の実行頻度ｆEGR 、二次空気異常診断の実行頻度ｆair を次のようにして算出する。
【００３７】
まず、ステップ１１２で、触媒劣化診断の実行回数Ｎcat を走行回数Ｃで除算して触媒劣化診断の実行頻度ｆcat を求める。触媒劣化診断の実行回数Ｎcat は、後述する図４及び図５の触媒劣化診断プログラムで触媒劣化診断が実行される毎にインクリメントされる。
ｆcat ＝Ｎcat ／Ｃ
【００３８】
この後、ステップ１１３に進み、リーク診断の実行回数Ｎevp をリーク診断用の走行回数Ｃevp で除算してリーク診断の実行頻度ｆevp を求める。ここで、リーク診断の実行回数Ｎevp は、後述する図８及び図９のアイドル運転時リーク診断プログラム、又は、図１０及び図１１のエンジン停止時リーク診断プログラムでリーク診断が実行される毎にインクリメントされる。
ｆevp ＝Ｎevp ／Ｃevp
【００３９】
この後、ステップ１１４に進み、ＥＧＲ異常診断の実行回数ＮEGR を走行回数Ｃで除算してＥＧＲ異常診断の実行頻度ｆEGR を求める。このＥＧＲ異常診断の実行回数ＮEGR は、後述する図１５及び図１６の燃料カット減速時ＥＧＲ異常診断プログラム、又は、図１７及び図１８の定常走行時ＥＧＲ異常診断プログラムでＥＧＲ異常診断が実行される毎にインクリメントされる。
ｆEGR ＝ＮEGR ／Ｃ
【００４０】
この後、ステップ１１５に進み、二次空気異常診断の実行回数Ｎair を二次空気異常診断用の走行回数Ｃair で除算して二次空気異常診断の実行頻度ｆair を求める。二次空気異常診断の実行回数Ｎair は、後述する図２１の二次空気異常診断プログラムで二次空気異常診断が実行される毎にインクリメントされる。
ｆair ＝Ｎair ／Ｃair
【００４１】
［触媒劣化診断］
次に、図４及び図５に示す触媒劣化診断プログラムで実行する触媒劣化診断について説明する。ＥＣＵ２８は、空燃比フィードバック制御中（以下「フィードバック」を「Ｆ／Ｂ」と略記する）に、例えば、上流側センサ２４の出力に基づいて触媒２３上流側の排出ガスの空燃比が目標空燃比に一致するように空燃比（燃料噴射量）を補正するための空燃比Ｆ／Ｂ補正係数ＦＡＦを算出する。
【００４２】
通常の空燃比Ｆ／Ｂ制御では、上流側センサ２４の出力のリーン／リッチが反転する毎に、空燃比Ｆ／Ｂ補正係数ＦＡＦのリーン／リッチを反転させることで、触媒２３上流側の排出ガスの空燃比を目標空燃比付近に制御する。これにより、排出ガスが触媒２３を通過する過程で十分に浄化され、触媒２３から流出する排出ガスの空燃比がストイキ付近となるため、下流側センサ２５の出力がストイキ付近に保たれる。そして、触媒劣化診断時に、図６に示すように、空燃比Ｆ／Ｂ補正係数ＦＡＦのリーン／リッチの反転周期を長くすると、触媒２３のリーン成分／リッチ成分の吸着量が飽和状態になって、空燃比Ｆ／Ｂ補正係数ＦＡＦの挙動が下流側センサ２５の出力変化として現れるようになる。この際、触媒２３が劣化しているほど、触媒２３の飽和吸着量が減少するため、空燃比Ｆ／Ｂ補正係数ＦＡＦが反転してから下流側センサ２５の出力が反転するまでの遅れ時間ＴＤが短くなる。このような特性を利用して、触媒劣化診断時に、空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期を長くして、下流側センサ２５出力の遅れ時間ＴＤを測定し、その遅れ時間ＴＤを所定の劣化判定値と比較して触媒２３の劣化の有無を診断する。
【００４３】
以上説明した触媒劣化診断を実行する図４及び図５の触媒劣化診断プログラムは、イグニッションスイッチ（図示せず）のオン後に所定周期で繰り返し実行される。本プログラムが起動されると、まず、ステップ２０１〜２０７で、中・高負荷走行時の触媒劣化診断の実行条件が成立しているか否かを判定する。ここで、中高負荷走行時の触媒劣化診断の実行条件は、例えば、次の▲１▼〜▲６▼の条件を全て満たすことである。
【００４４】
▲１▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高いこと、つまり高地走行でないこと（ステップ２０１）
▲２▼冷却水温が所定温度（例えば７０℃）よりも高いこと（ステップ２０２）
この▲２▼の条件は、触媒２３と上流側及び下流側センサ２４，２５が暖機状態（活性状態）であると共に、空燃比Ｆ／Ｂ制御が開始されていると判断できる条件となる。
【００４５】
▲３▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ２０３）
▲４▼始動後の経過時間が所定時間（例えば６０ｓ）よりも長いこと（ステップ２０４）
▲５▼定常運転中、つまり空燃比が比較的安定した運転状態であること（ステップ２０５）
▲６▼アイドル運転中でなく、且つ、吸気管圧力が所定圧（例えば５３．３ｋＰａ）よりも高い運転状態、つまり中・高負荷走行中であること（ステップ２０６，２０７）
【００４６】
アイドル運転中や低負荷走行中は、触媒２３に流入する排出ガス量が少なく、触媒２３が飽和状態になるまでの時間が長くなるため、空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期をかなり長くしないと、触媒２３が飽和状態とならず、空燃比Ｆ／Ｂ補正係数ＦＡＦの挙動が下流側センサ２５の出力変化として現れるようにならない。そうかといって、触媒劣化診断時に、空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期を長くし過ぎると、排気エミッションに悪影響を及ぼす。
【００４７】
そこで、上記▲６▼の条件、つまり、中・高負荷走行中であることを触媒劣化診断の実行条件の１つとしている。中・高負荷走行中は、触媒２３に流入する排出ガス量が多くなるため、触媒劣化診断時に空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期をあまり長くしなくても、触媒２３が比較的短い時間で飽和状態になって空燃比Ｆ／Ｂ補正係数ＦＡＦの挙動が下流側センサ２５の出力変化として現れるようになる。これにより、排気エミッションに及ぼす悪影響を抑えながら下流側センサ２５の出力に基づいた触媒劣化診断を行うことができる。
【００４８】
上記▲１▼〜▲６▼の条件を全て満たした場合には、中・高負荷走行時の触媒劣化診断の実行条件が成立して、ステップ２０７から図５のステップ２０８に進み、後述する中・高負荷走行時の触媒劣化診断を実行する。
【００４９】
一方、上記▲１▼〜▲６▼の条件のうちのいずれか１でも満たさない条件があれば、中・高負荷走行時の触媒劣化診断の実行条件が不成立となるが、▲１▼〜▲５▼の条件を全て満たした場合（つまり▲６▼の条件のみを満たさない場合）には、ステップ２０６又は２０７からステップ２１２に進み、前述した図２及び図３の実行頻度算出プログラムで算出した触媒劣化診断の実行頻度ｆcat が要求レベル（例えば０．２）を満たしていないか否かを判定する。触媒劣化診断の実行頻度ｆcat が要求レベルを満たしていないと判定されれば、触媒劣化診断の実行頻度ｆcat を増加させる必要があるため、アイドル運転又は低負荷走行時の触媒劣化診断の実行条件が成立して、図５のステップ２１３に進み、後述するアイドル運転又は低負荷走行時の触媒劣化診断を実行する。
【００５０】
これに対して、ステップ２１２で、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしていると判定された場合には、後述するアイドル運転又は低負荷走行時の触媒劣化診断を実行することなく、本プログラムを終了する。
【００５１】
前述した中・高負荷走行時の触媒劣化診断の実行条件が成立して、図４のステップ２０７から図５のステップ２０８に進んだ場合には、次のようにして中・高負荷走行時の触媒劣化診断を実行する。まず、ステップ２０８で、空燃比Ｆ／Ｂ制御のディレイ定数を変更して空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期を長くする。この場合、中・高負荷走行時の触媒劣化診断における空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期の増大幅は、後述するアイドル運転又は低負荷走行時の触媒劣化診断における空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期の増大幅よりも小さい値に設定される。
【００５２】
この後、ステップ２０９に進み、空燃比Ｆ／Ｂ補正係数ＦＡＦが反転してから下流側センサ２５の出力が反転するまでの遅れ時間ＴＤ1 を計測する処理を所定回数（例えば１０回）だけ繰り返した後、ステップ２１０に進み、それらの平均遅れ時間ＴＤ1av を算出する。
【００５３】
この後、ステップ２１１に進み、平均遅れ時間ＴＤ1av が所定の劣化判定値ＫＴＤ1 よりも短いか否かを判定する。この場合、中・高負荷走行時の触媒劣化診断における平均遅れ時間ＴＤ1av の劣化判定値ＫＴＤ1 は、後述するアイドル運転又は低負荷走行時の触媒劣化診断における平均遅れ時間ＴＤ2av の劣化判定値ＫＴＤ2 よりも短い時間に設定される。
【００５４】
このステップ２１１で、平均遅れ時間ＴＤ1av が劣化判定値ＫＴＤ1 よりも短いと判定された場合には、ステップ２１７に進み、触媒２３の劣化有り（異常）と判定して、警告ランプ（図示せず）を点灯して運転者に警告すると共に、触媒劣化を表す異常コードをＥＣＵ２８のバックアップＲＡＭ（図示せず）に記憶した後、ステップ２１８に進み、触媒劣化診断の実行回数カウンタＮcat をインクリメントして、本プログラムを終了する。
【００５５】
これに対して、ステップ２１１で、平均遅れ時間ＴＤ1av が劣化判定値ＫＴＤ1 以上と判定された場合には、触媒２３の劣化無し（正常）と判断して、ステップ２１８に進み、触媒劣化診断の実行回数カウンタＮcat をインクリメントして、本プログラムを終了する。
【００５６】
一方、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしていないときに、アイドル運転又は低負荷走行時の触媒劣化診断の実行条件が成立して、図４のステップ２１２から図５のステップ２１３に進んだ場合には、次のようにしてアイドル運転又は低負荷走行時の触媒劣化診断を実行する。まず、ステップ２１３で、空燃比Ｆ／Ｂ制御のディレイ定数を変更して空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期を長くする。この場合、アイドル運転又は低負荷走行時の触媒劣化診断における空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期の増大幅は、前述した中・高負荷走行時の触媒劣化診断における空燃比Ｆ／Ｂ補正係数ＦＡＦの反転周期の増大幅よりも大きい値に設定される。
【００５７】
この後、ステップ２１４に進み、空燃比Ｆ／Ｂ補正係数ＦＡＦが反転してから下流側センサ２５の出力が反転するまでの遅れ時間ＴＤ2 を計測する処理を所定回数（例えば１０回）だけ繰り返した後、ステップ２１５に進み、それらの平均遅れ時間ＴＤ2av を算出する。
【００５８】
この後、ステップ２１６に進み、平均遅れ時間ＴＤ2av が所定の劣化判定値ＫＴＤ2 よりも短いか否かを判定する。この場合、アイドル運転又は低負荷走行時の触媒劣化診断における平均遅れ時間ＴＤ2av の劣化判定値ＫＴＤ2 は、前述した中高負荷走行時の触媒劣化診断における平均遅れ時間ＴＤ1av の劣化判定値ＫＴＤ1 よりも長い時間に設定される。
【００５９】
このステップ２１６で、平均遅れ時間ＴＤ2av が劣化判定値ＫＴＤ2 よりも短いと判定された場合には、ステップ２１７に進み、触媒２３の劣化有り（異常）と判定して、警告ランプを点灯して運転者に警告すると共に、触媒劣化を表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶した後、ステップ２１８に進み、触媒劣化診断の実行回数カウンタＮcat をインクリメントして、本プログラムを終了する。
【００６０】
これに対して、ステップ２１６で、平均遅れ時間ＴＤ2av が劣化判定値ＫＴＤ2 以上と判定された場合には、触媒２３の劣化無し（正常）と判断して、ステップ２１８に進み、触媒劣化診断の実行回数カウンタＮcat をインクリメントして、本プログラムを終了する。
【００６１】
以上の処理により、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしているときには、排気エミッションに悪影響を及ぼさないように中・高負荷走行時の触媒劣化診断のみを実行する。一方、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしていないときには、触媒劣化診断の実行頻度ｆcat を増加させることを重視して、中・高負荷走行時の触媒劣化診断と、アイドル運転又は低負荷走行時の触媒劣化診断とを両方とも実行して、触媒劣化診断の実行頻度ｆcat を増加させる。これにより、従来の触媒劣化診断方法では触媒劣化診断の実行頻度ｆcat を十分に確保できなかった条件下でも、触媒劣化診断の実行頻度ｆcat を要求レベル以上に維持することが可能となり、触媒２３の劣化を早期に検出することができると共に、将来、触媒劣化診断の実行頻度ｆcat が規制対象となった場合でも、その規制の要求レベルを満たすことができる。
【００６２】
尚、本実施形態では、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしているときに、中・高負荷走行時の触媒劣化診断を実行し、触媒劣化診断の実行頻度ｆcat が要求レベルを満たしていないときに、中・高負荷走行時の触媒劣化診断とアイドル運転又は低負荷走行時の触媒劣化診断とを実行するようにしたが、触媒劣化診断の実行頻度ｆcat に応じて、図４のステップ２０１〜２０７で判定する触媒劣化診断の実行条件を変更（緩和）することで、触媒劣化診断の実行頻度ｆcat を確保するようにしても良く、その際、実行条件の変更に伴って診断方法や判定条件も変更するようにしても良い。或は、触媒劣化診断の実行頻度ｆcat に応じて診断方法や判定条件を変更しても良い。
【００６３】
［エバポガスリーク診断］
図７に示すリーク診断プログラムは、ＥＣＵ２８の電源オン時に所定周期（例えば２０ｍｓ）で繰り返し実行され、エバポガスパージシステム３７のリーク診断処理を次のようにして実行する。本プログラムが起動されると、まず、ステップ３０１で、後述する図８及び図９のアイドル運転時リーク診断プログラムを実行して、アイドル運転中にエバポガスパージシステム３７のリークの有無を診断する。
【００６４】
この後、ステップ３０２に進み、前述した図２及び図３の実行頻度算出プログラムで算出したリーク診断の実行頻度ｆevp が要求レベル（例えば０．２）に満たないか否かを判定する。リーク診断の実行頻度ｆevp が要求レベルに満たないと判定されれば、リーク診断の実行頻度ｆevp を増加させる必要があると判断して、ステップ３０３に進み、後述する図１０及び図１１のエンジン停止時リーク診断プログラムを実行して、エンジン停止中にもエバポガスパージシステム３７のリークの有無を診断する。
【００６５】
これに対して、ステップ３０２で、リーク診断の実行頻度ｆevp が要求レベルを満たしていると判定された場合には、エンジン停止時のリーク診断を実行することなく本プログラムを終了する。
【００６６】
一方、前記ステップ３０１で起動される図８及び図９に示すアイドル運転時リーク診断プログラムは、所定周期（例えば２０ｍｓ）で繰り返し実行される。本プログラムが起動されると、まず、ステップ４０１〜４０５で、アイドル運転時のリーク診断の実行条件が成立しているか否かを判定する。ここで、アイドル運転時のリーク診断の実行条件は、例えば、次の▲１▼〜▲５▼の条件を全て満たすことである。
【００６７】
▲１▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高い、つまり高地走行でないこと（ステップ４０１）
▲２▼冷却水温が所定温度（例えば７０℃）よりも高いこと（ステップ４０２）
▲３▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ４０３）
▲４▼始動後の経過時間が所定時間（例えば６００ｓ）よりも長いこと（ステップ４０４）
▲５▼停車中（車速＝０ｋｍ／ｈ）かつアイドル運転中であること（ステップ４０５）
【００６８】
走行中に、タンク内圧を測定してリーク診断を実行すると、燃料タンク３８内の燃料ゆれや大気圧変化の影響を受けてリーク診断の精度が低下する可能性がある。また、エンジン停止中に、リーク診断を実行すると、バッテリ上がりの問題が発生する。そこで、上記▲５▼の条件、つまり、停車中（車速＝０ｋｍ／ｈ）かつアイドル運転中であることをリーク診断の実行条件の１つとしている。これにより、リーク診断精度を確保すると共にバッテリ上がりの問題を回避しながらリーク診断の実行頻度を確保する。
【００６９】
上記▲１▼〜▲５▼の条件を全て満たした場合には、アイドル運転時のリーク診断の実行条件が成立するが、上記▲１▼〜▲５▼の条件のうちのいずれか１でも満たさない条件があれば、アイドル運転時のリーク診断の実行条件が不成立となり、以降のアイドル運転時のリーク診断処理（図９のステップ４０６〜４１５）を実行することなく、本プログラムを終了する。
【００７０】
一方、アイドル運転時のリーク診断の実行条件が成立した場合には、図９のステップ４０６以降のアイドル運転時のリーク診断処理を次のようにして実行する。まず、ステップ４０６で、大気開閉弁４１を閉弁した後、ステップ４０７に進み、タンク内圧センサ４４で検出したタンク内圧Ｐｔが大気圧よりも低く設定された所定圧よりも低いか否かを判定し、タンク内圧Ｐｔが所定圧以上であれば、ステップ４０８に進み、パージ制御弁４３を開弁する。アイドル運転中は、吸気管１２内が負圧（大気圧よりも低い圧力）になっているため、パージ制御弁４３を開弁すると、エバポ系内に負圧が導入される（図１２参照）。
【００７１】
その後、ステップ４０７で、タンク内圧Ｐｔが所定圧よりも低くなったと判定された時点で、ステップ４０９に進み、パージ制御弁４３を閉弁してエバポ系内への負圧導入を停止し、エバポ系を密閉する。
【００７２】
図１２に示すように、エバポ系内に負圧を導入した後、エバポ系を密閉すれば、リーク無しの場合には、エバポガスの発生分だけタンク内圧Ｐｔがゆっくりと上昇する。一方、リーク有りの場合は、エバポ系を密閉しても、リーク孔から大気がエバポ系内に吸入されるため、タンク内圧Ｐｔの上昇量が大きくなる。従って、このタンク内圧Ｐｔの上昇量の大小によってリークの有無を判定することができる。
【００７３】
エバポ系の密閉後、ステップ４１０に進み、エバポ系を密閉してから所定時間（例えば２０ｓ）が経過したか否かを判定し、所定時間が経過した時点で、４１１に進み、エバポ系を密閉してから所定時間経過までのタンク内圧変化量ΔＰｔを、エバポ系を密閉してから所定時間経過後のタンク内圧Ｐｔ2 からエバポ系の密閉直後のタンク内圧Ｐｔ1 を減算して求める。
ΔＰｔ＝Ｐｔ2 −Ｐｔ1
【００７４】
この後、ステップ４１２に進み、タンク内圧変化量ΔＰｔが所定のリーク判定値ＫＰｔよりも大きいか否かを判定する。このリーク判定値ＫＰｔは、マップ又は数式等により燃料タンク３８内の現在の燃料残量に応じて設定される。
【００７５】
タンク内圧変化量ΔＰｔがリーク判定値ＫＰｔよりも大きいと判定された場合には、ステップ４１３に進み、エバポ系のリーク有り（異常）と判定して、警告ランプを点灯して運転者に警告すると共に、リーク有りを表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶する。この後、ステップ４１４に進み、リーク診断の実行回数カウンタＮevp をインクリメントし、次のステップ４１５で、大気開閉弁４１を開弁した後、本プログラムを終了する。
【００７６】
これに対して、ステップ４１２で、タンク内圧変化量ΔＰｔがリーク判定値ＫＰｔ以下と判定された場合には、エバポ系のリーク無し（正常）と判断して、ステップ４１３の処理をを飛ばし、リーク診断の実行回数カウンタＮevp をインクリメントすると共に、大気開閉弁４１を開弁した後（ステップ４１４、４１５）、本プログラムを終了する。
【００７７】
一方、図１０及び図１１に示すエンジン停止時リーク診断プログラム（図７のステップ３０３）は、リーク診断の実行頻度ｆevp が所定値よりも低いときに、所定周期（例えば２０ｍｓ）で繰り返し実行される。本プログラムが起動されると、まず、ステップ５０１〜５０６で、エンジン停止時のリーク診断の実行条件が成立しているか否かを判定する。ここで、エンジン停止時のリーク診断の実行条件は、例えば、次の▲１▼〜▲６▼の条件を全て満たすことである。
【００７８】
▲１▼イグニッションスイッチ（以下「ＩＧスイッチ」と略記する）がオフ、つまりエンジン停止後であること（ステップ５０１）
▲２▼バッテリの電圧が所定電圧（例えば１２Ｖ）よりも高いこと（ステップ５０２）
▲３▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高い、つまり高地走行でないこと（ステップ５０３）
▲４▼ＩＧスイッチのオフ操作時の冷却水温が所定温度（例えば７０℃）よりも高いこと（ステップ５０４）
▲５▼ＩＧスイッチのオフ操作時の吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ５０５）
▲６▼ＩＧスイッチのオフ操作時の燃料温度（以下「燃温」と略記する）と吸気温との差が所定温度（例えば５℃）よりも大きいこと（ステップ５０６）
【００７９】
上記▲１▼〜▲６▼の条件を全て満たした場合には、エンジン停止時のリーク診断の実行条件が成立するが、上記▲１▼〜▲６▼の条件のうちのいずれか１でも満たさない条件があれば、エンジン停止時のリーク診断の実行条件が不成立となり、以降のエンジン停止時のリーク診断処理（図１０のステップ５０７〜５１４）を実行することなく、本プログラムを終了する。
【００８０】
一方、エンジン停止時のリーク診断の実行条件が成立した場合には、図１０のステップ５０７以降のエンジン停止時のリーク診断処理を次のようにして実行する。まず、ステップ５０７で、大気開閉弁４１を閉弁すると共に、パージ制御弁４３を閉弁してエバポ系を密閉する。
【００８１】
図１３に示すように、エンジン停止直後は、燃料タンク３８内の燃温が高く、エバポガスの発生量が多くなるため、エンジン停止直後にエバポ系を密閉すれば、リーク無しの場合には、エバポガスの発生によってタンク内圧Ｐｔが上昇し、その後、燃料タンク３８が外気で冷やされて燃温が低下するのに伴って燃料タンク３８内のエバポガスが凝縮（液化）し始めると、時間経過に伴ってエバポ系の圧力が負圧（大気圧よりも低い圧力）に下降していく。一方、リーク有りの場合は、エバポ系を密閉しても、エバポ系のリーク孔からエバポガスが大気中に漏れたり、負圧時にはリーク孔から大気がエバポ系内に吸入されるため、エバポ系密閉後のタンク内圧Ｐｔが大気圧から大きく正圧側に上昇したり負圧側に下降したりすることなく、比較的短い時間でタンク内圧Ｐｔが大気圧付近に収束する。
【００８２】
エバポ系の密閉後、ステップ５０８に進み、タンク内圧Ｐｔが大気圧よりも高いか否かを判定し、タンク内圧Ｐｔが大気圧よりも高ければ、ステップ５０９に進み、タンク内圧Ｐｔが大気圧以下となるまで、現在の燃温を初期燃温として記憶更新する処理を繰り返す。
【００８３】
その後、ステップ５０８で、タンク内圧Ｐｔが大気圧以下になったと判定された時点で、ステップ５１０に進み、初期燃温ｔ0 （タンク内圧Ｐｔ＝大気圧となったときの燃温）と現在の燃温との差が所定温度（例えば３℃）よりも大きいか否か、つまり、初期燃温ｔ0 からの燃温の低下幅が所定温度を越えたか否かを判定する。
【００８４】
その後、初期燃温ｔ0 からの燃温の低下幅が所定温度を越えた時点で、ステップ５１１に進み、タンク内圧Ｐｔが所定のリーク判定値ＫＫＰｔよりも高いか否かを判定する。このリーク判定値ＫＫＰｔは、マップ又は数式等により燃料タンク３８内の現在の燃料残量に応じて設定される。
【００８５】
このステップ５１１で、タンク内圧Ｐｔがリーク判定値ＫＫＰｔよりも高いと判定された場合には、ステップ５１２に進み、エバポ系のリーク有り（異常）と判定して、警告ランプを点灯して運転者に警告すると共に、リーク有りを表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶する。この後、ステップ５１３に進み、リーク診断の実行回数カウンタＮevp をインクリメントし、次のステップ５１４で、大気開閉弁４１を開弁した後、本プログラムを終了する。
【００８６】
これに対して、前記ステップ５１１で、タンク内圧Ｐｔがリーク判定値ＫＫＰｔ以下と判定された場合には、エバポ系のリーク無し（正常）と判断して、ステップ５１３に進み、リーク診断の実行回数カウンタＮevp をインクリメントするし、次のステップ５１４で、大気開閉弁４１を開弁した後、本プログラムを終了する。
【００８７】
以上の処理により、リーク診断の実行頻度ｆevp が要求レベルを満たしているときには、アイドル運転時のリーク診断のみを実行することで、リーク診断精度を確保すると共にバッテリ上がりの問題が発生しないようにする。一方、リーク診断の実行頻度ｆevp が要求レベルを満たしていないときには、リーク診断の実行頻度ｆevp を増加させることを重視して、アイドル運転時のリーク診断と、エンジン停止時のリーク診断とを両方とも実行して、リーク診断の実行頻度ｆevp を増加させる。これにより、従来のリーク診断方法ではリーク診断の実行頻度ｆevp を十分に確保できなかった条件下でも、リーク診断の実行頻度ｆevp を要求レベル以上に維持することが可能となり、エバポガスパージシステム３７のリーク発生時にそのリークを早期に検出することができると共に、将来、リーク診断の実行頻度ｆevp が規制対象となった場合でも、その規制の要求レベルを満たすことができる。
【００８８】
尚、本実施形態では、リーク診断の実行頻度ｆevp が要求レベルを満たしているときに、アイドル運転時のリーク診断のみを実行し、リーク診断の実行頻度ｆevp が要求レベルを満たしていないときに、アイドル運転時のリーク診断とエンジン停止時のリーク診断とを両方とも実行するようにしたが、リーク診断の実行頻度ｆevp に応じて、図８のステップ４０１〜４０５（又は図１０のステップ５０１〜５０６）で判定するリーク診断の実行条件を変更（緩和）することで、リーク診断の実行頻度ｆevp を確保するようにしても良く、その際、実行条件の変更に伴って診断方法や判定条件も変更するようにしても良い。
【００８９】
或は、リーク診断の実行頻度ｆevp に応じて診断方法や判定条件を変更することで、リーク診断の実行頻度ｆevp を確保するようにしても良い。例えば、リーク診断の実行時間（エバポ系密閉後のタンク内圧変化量ΔＰｔの計測時間）が長くなるほど、その途中でリーク診断の実行条件が不成立となる頻度（リーク診断が途中で中止される頻度）が増加して、リーク診断の実行頻度ｆevp が少なくなるという特性があるため、リーク診断の実行頻度ｆevp が要求レベルを満たさないときに、リーク診断の実行時間（エバポ系密閉後のタンク内圧変化量ΔＰｔの計測時間）を短くすると共に、それに応じてタンク内圧変化量ΔＰｔが小さくなるのに対応してリーク判定値ＫＰｔを小さく設定するようにしても良い。このように、リーク診断の実行時間を短くすれば、リーク診断の途中でリーク診断の実行条件が不成立となる頻度が減少するため、リーク診断の実行頻度ｆevp を増加させることができる。
【００９０】
また、エンジン運転中のリーク診断は、アイドル運転以外の比較的安定した運転条件、例えば定常走行時等に行うようにしても良い。例えば、リーク診断の実行頻度ｆevp が要求レベルを満たしているときに、走行時のリーク診断のみを実行し、リーク診断の実行頻度ｆevp が要求レベルを満たしていないときに、走行時のリーク診断とエンジン停止時のリーク診断とを両方とも実行するようにしても良い。
【００９１】
或は、リーク診断の実行頻度ｆevp が要求レベルを満たしているときに、アイドル運転時のリーク診断のみを実行し、リーク診断の実行頻度ｆevp が要求レベルを満たしていないときに、アイドル運転時のリーク診断と走行時のリーク診断とを両方とも実行するようにしても良い。
【００９２】
或は、リーク診断の実行頻度ｆevp が要求レベルを満たしていないときに、アイドル運転時のリーク診断と走行時のリーク診断とエンジン停止時のリーク診断を全て実行するようにしても良い。勿論、リーク診断の実行頻度ｆevp に応じて上記３つの診断方法の中から実行する診断方法の組み合わせを変更するようにしても良い。
【００９３】
［ＥＧＲ異常診断］
図１４に示すＥＧＲ異常診断プログラムは、イグニッションスイッチのオン後に所定周期（例えば１０ｍｓ）で繰り返し実行され、ＥＧＲシステム２９の異常の有無を次のようにして診断する。本プログラムが起動されると、まず、ステップ６０１で、後述する図１５及び図１６の減速燃料カット時ＥＧＲ異常診断プログラムを実行して、減速時の燃料カット中にＥＧＲシステム２９の異常の有無を診断する。
【００９４】
この後、ステップ６０２に進み、前述した図２及び図３の実行頻度算出プログラムで算出したＥＧＲ異常診断の実行頻度ｆEGR が要求レベル（例えば０．２）を満たしていないか否かを判定する。ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしていないと判定されれば、ＥＧＲ異常診断の実行頻度ｆEGR を増加させる必要があると判断して、ステップ６０３に進み、後述する図１７及び図１８の定常走行時ＥＧＲ異常診断プログラムを実行して、定常走行中にもＥＧＲシステム２９の異常の有無を診断する。
【００９５】
これに対して、ステップ６０２で、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしていると判定された場合には、定常走行時のＥＧＲ異常診断を実行することなく本プログラムを終了する。
【００９６】
一方、上記ステップ６０１で図１５及び図１６の減速燃料カット時ＥＧＲ異常診断プログラムが起動されると、まず、ステップ７０１〜７０７で、減速燃料カット時のＥＧＲ異常診断の実行条件が成立しているか否かを判定する。ここで、減速燃料カット時のＥＧＲ異常診断の実行条件は、例えば、次の▲１▼〜▲７▼の条件を全て満たすことである。
【００９７】
▲１▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高い、つまり高地走行でないこと（ステップ７０１）
▲２▼冷却水温が所定温度（例えば７０℃）よりも高いこと（ステップ７０２）
▲３▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ７０３）
▲４▼始動後の経過時間が所定時間（例えば２００ｓ）よりも長いこと（ステップ７０４）
▲５▼燃料カット中であること（ステップ７０５）
▲６▼燃料カット開始時の車速が所定速度（例えば６０ｋｍ／ｈ）よりも速いこと（ステップ７０６）
▲７▼スロットル開度が全閉であること（ステップ７０７）
【００９８】
燃料カット以外のエンジン運転中に、ＥＧＲ異常診断を実行してＥＧＲ弁３１を強制的に開閉すると、エンジン運転状態に不適切なＥＧＲ量になって、ドライバビリティや排気エミッションが悪化するおそれがある。そこで、上記▲５▼〜▲７▼の条件、つまり、減速時の燃料カット中であることをＥＧＲ異常診断の実行条件としている。これにより、ドライバビリティや排気エミッションに悪影響を及ぼすことなくＥＧＲ異常診断を行うことができる。
【００９９】
上記▲１▼〜▲７▼の条件を全て満たした場合には、減速燃料カット時のＥＧＲ異常診断の実行条件が成立するが、上記▲１▼〜▲７▼の条件のうちのいずれか１でも満たさない条件があれば、減速燃料カット時のＥＧＲ異常診断の実行条件が不成立となり、ステップ７０８に進み、タイムカウンタＣ1 をクリアした後、以降の減速燃料カット時のＥＧＲ異常診断処理（図１６のステップ７０９〜７２１）を実行することなく、本プログラムを終了する。
【０１００】
一方、減速燃料カット時のＥＧＲ異常診断の実行条件が成立した場合には、図１６のステップ７０９以降の減速燃料カット時のＥＧＲ異常診断処理を次のようにして実行する。まず、ステップ７０９で、減速燃料カット時のＥＧＲ異常診断の実行条件が成立してからの経過時間をカウントするタイムカウンタＣ1 の値が例えば１００（１ｓｅｃに相当）に達したか否かを判定する。減速燃料カット時のＥＧＲ異常診断の実行条件の成立当初はタイムカウンタＣ1 の値が０となっているため、タイムカウンタＣ1 ＝１００となるまで、ステップ７０９→ステップ７１２→ステップ７１５→ステップ７２１へと進み、タイムカウンタＣ1 をインクリメントする処理を繰り返す。
【０１０１】
その後、タイムカウンタＣ1 の値が１００に達した時点で、ステップ７０９からステップ７１０に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ0 を記憶し、次のステップ７１１で、ＥＧＲ弁３１を開弁する。減速燃料カット時（スロットル全閉時）は、吸気管圧力ｐｍが負圧（大気圧よりも低い圧力）になっているため、ＥＧＲ弁３１を開弁すると、ＥＧＲシステム２９が正常に動作すれば、吸気管圧力ｐｍが上昇する（図１９参照）。
【０１０２】
この後、ステップ７１２に進み、タイムカウンタＣ1 の値が、例えば１２０（１．２ｓｅｃに相当）に達したか否かを判定し、タイムカウンタＣ1 が１２０未満の期間は、タイムカウンタＣ1 ＝１２０となるまで、ステップ７１２→ステップ７１５→ステップ７２１へと進み、タイムカウンタＣ1 をインクリメントする処理を繰り返す。
【０１０３】
その後、タイムカウンタＣ1 の値が１２０に達した時点で、ステップ７１２からステップ７１３に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ1 を記憶し、次のステップ７１４で、ＥＧＲ弁３１を閉弁する。これにより、図１９に示すように、ＥＧＲシステム２９の正常時には、吸気管圧力ｐｍが低下する。
【０１０４】
この後、ステップ７１５に進み、タイムカウンタＣ1 の値が、例えば１４０（１．４ｓｅｃに相当）に達したか否かを判定して、タイムカウンタＣ1 の値が１４０未満の期間は、タイムカウンタＣ1 ＝１４０となるまで、ステップ７１５→ステップ７２１へと進み、タイムカウンタＣ1 をインクリメントする処理を繰り返す。
【０１０５】
その後、タイムカウンタＣ1 の値が１４０に達した時点で、ステップ７１５からステップ７１６に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ2 を記憶し、次のステップ７１７で、吸気管圧力の変化量Δｐｍを次式により算出する。
Δｐｍ＝ｐｍ1 −（ｐｍ0 ＋ｐｍ2 ）
【０１０６】
この後、ステップ７１８に進み、吸気管圧力の変化量Δｐｍが所定の異常判定値Ｋｐｍよりも小さいか否かを判定する。吸気管圧力の変化量Δｐｍが異常判定値Ｋｐｍよりも小さいと判定された場合には、ステップ７１９に進み、ＥＧＲシステム２９が異常と判定して、警告ランプを点灯して運転者に警告すると共に、ＥＧＲシステム２９の異常を表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶した後、ステップ７２０で、ＥＧＲ異常診断の実行回数カウンタＮEGR をインクリメントする。
【０１０７】
これに対して、ステップ７１８で、吸気管圧力の変化量Δｐｍが異常判定値Ｋｐｍ以上と判定された場合には、ＥＧＲシステム２９が正常と判断して、ステップ７２０に進み、ＥＧＲ異常診断の実行回数カウンタＮEGR をインクリメントする。
【０１０８】
一方、図１７及び図１８に示す定常走行時ＥＧＲ異常診断プログラム（図１４のステップ６０３）は、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしていないときに、所定周期（例えば１０ｍｓ）で繰り返し実行される。本プログラムが起動されると、まず、ステップ８０１〜８０７で、定常走行時のＥＧＲ異常診断の実行条件が成立しているか否かを判定する。ここで、定常走行時のＥＧＲ異常診断の実行条件は、例えば、次の▲１▼〜▲７▼の条件を全て満たすことである。
【０１０９】
▲１▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高いこと、つまり高地走行でないこと（ステップ８０１）
▲２▼冷却水温が所定温度（例えば７０℃）よりも高いこと（ステップ８０２）
▲３▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ８０３）
▲４▼始動後の経過時間が所定時間（例えば２００ｓ）よりも長いこと（ステップ８０４）
▲５▼ＥＧＲ制御中であること（ステップ８０５）
▲６▼車速が所定速度範囲（例えば４０〜１００ｋｍ／ｈ）であること（ステップ８０６）
▲７▼スロットル開度がほぼ一定であること、つまり定常走行中であること（ステップ８０７）
ここで、スロットル開度がほぼ一定であるか否かは、例えばスロットル開度変化速度が所定値（例えば０．２ｄｅｇ／１０ｍｓ）以下であるか否かによって判定すれば良い。
【０１１０】
上記▲１▼〜▲７▼の条件を全て満たした場合には、定常走行時のＥＧＲ異常診断の実行条件が成立するが、上記▲１▼〜▲７▼の条件のうちのいずれか１でも満たさない条件があれば、定常走行時のＥＧＲ異常診断の実行条件が不成立となり、ステップ８０８に進み、定常走行時のＥＧＲ異常診断の実行条件が成立してからの経過時間をカウントするタイムカウンタＣ2 をクリアした後、以降の定常走行時のＥＧＲ異常診断処理（図１８のステップ８０９〜８２２）を実行することなく、本プログラムを終了する。
【０１１１】
一方、定常走行時のＥＧＲ異常診断の実行条件が成立した場合には、図１８のステップ８０９以降の定常走行時のＥＧＲ異常診断処理を次のようにして実行する。まず、ステップ８０９で、ＥＧＲ増量補正を実行して、ＥＧＲ量を所定量（例えば１０％）だけ増量する。
【０１１２】
この後、ステップ８１０に進み、タイムカウンタＣ2 の値が例えば１００（１ｓｅｃに相当）に達したか否かを判定する。定常走行時のＥＧＲ異常診断の実行条件の成立当初は、タイムカウンタＣ2 ＝０となっているため、タイムカウンタＣ2 ＝１００となるまで、ステップ８１０→ステップ８１３→ステップ８１６→ステップ８２２へと進み、タイムカウンタＣ2 をインクリメントする処理を繰り返す。
【０１１３】
その後、タイムカウンタＣ2 の値が１００に達した時点で、ステップ８１０からステップ８１１に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ0 を記憶し、次のステップ８１２で、ＥＧＲ弁３１を閉弁する。これにより、ＥＧＲシステム２９の正常時には、ＥＧＲ量の減少分だけ吸気管圧力ｐｍが低下する（図２０参照）。
【０１１４】
この後、ステップ８１３に進み、タイムカウンタＣ2 の値が、例えば１２０（１．２ｓｅｃに相当）に達したか否かを判定し、タイムカウンタＣ2 が１２０未満の期間は、タイムカウンタＣ2 ＝１２０となるまで、ステップ８１３→ステップ８１６→ステップ８２２へと進み、タイムカウンタＣ2 をインクリメントする処理を繰り返す。
【０１１５】
その後、タイムカウンタＣ2 の値が１２０に達した時点で、ステップ８１３からステップ８１４に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ1 を記憶し、次のステップ８１５で、ＥＧＲ弁３１を開弁する。これにより、図２０に示すように、ＥＧＲシステム２９の正常時には、吸気管圧力ｐｍが上昇する。
【０１１６】
この後、ステップ８１６に進み、タイムカウンタＣ2 の値が、例えば１４０（１．４ｓｅｃに相当）に達したか否かを判定して、タイムカウンタＣ2 の値が１４０未満の期間は、タイムカウンタＣ2 ＝１４０となるまで、ステップ８１６→ステップ８２２へと進み、タイムカウンタＣ2 をインクリメントする処理を繰り返す。
【０１１７】
その後、タイムカウンタＣ2 の値が１４０に達した時点で、ステップ８１６からステップ８１７に進み、その時点に吸気管圧力センサ１８で検出した吸気管圧力ｐｍ2 を記憶し、次のステップ８１７で、吸気管圧力の変化量Δｐｍを次式により算出する。
Δｐｍ＝（ｐｍ0 ＋ｐｍ2 ）−ｐｍ1
【０１１８】
この後、ステップ８１９に進み、吸気管圧力の変化量Δｐｍが所定の異常判定値ＫＫｐｍよりも小さいか否かを判定する。吸気管圧力の変化量Δｐｍが異常判定値ＫＫｐｍよりも小さいと判定された場合には、ステップ８２０に進み、ＥＧＲシステム２９が異常と判定して、警告ランプを点灯して運転者に警告すると共に、ＥＧＲシステム２９の異常を表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶した後、ステップ８２１で、ＥＧＲ異常診断の実行回数カウンタＮEGR をインクリメントする。
【０１１９】
これに対して、ステップ８１９で、吸気管圧力の変化量Δｐｍが異常判定値ＫＫｐｍ以上と判定された場合には、ＥＧＲシステム２９が正常と判断して、ステップ８２１に進み、ＥＧＲ異常診断の実行回数カウンタＮEGR をインクリメントする。
【０１２０】
以上の処理により、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしているときには、減速燃料カット時のＥＧＲ異常診断のみを実行して、ドライバビリティや排気エミッションに悪影響を及ぼさないようにする。一方、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしていないときには、ＥＧＲ異常診断の実行頻度ｆEGR を増加させることを重視して、減速燃料カット時のＥＧＲ異常診断と、定常走行時のＥＧＲ異常診断とを両方とも実行して、ＥＧＲ異常診断の実行頻度ｆEGR を増加させる。これにより、従来のＥＧＲ異常診断方法ではＥＧＲ異常診断の実行頻度ｆEGR を十分に確保できなかった条件下でも、ＥＧＲ異常診断の実行頻度ｆEGR を要求レベル以上に維持することが可能となり、ＥＧＲシステム２９の異常発生時にはその異常を早期に検出することができると共に、将来、ＥＧＲ異常診断の実行頻度ｆEGR が規制対象となった場合でも、その規制の要求レベルを満たすことができる。
【０１２１】
尚、本実施形態では、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしているときに、減速燃料カット時のＥＧＲ異常診断を実行し、ＥＧＲ異常診断の実行頻度ｆEGR が要求レベルを満たしていないときに、減速燃料カット時のＥＧＲ異常診断と定常走行時のＥＧＲ異常診断とを両方とも実行するようにしたが、ＥＧＲ異常診断の実行頻度ｆEGR に応じて、図１５のステップ７０１〜７０７（又は図１７のステップ８０１〜８０７）で判定するＥＧＲ異常診断の実行条件を変更（緩和）することで、ＥＧＲ異常診断の実行頻度ｆEGR を確保するようにしても良く、その際、実行条件の変更に伴って診断方法や判定条件も変更するようにしても良い。或は、ＥＧＲ異常診断の実行頻度ｆEGR に応じて診断方法や判定条件を変更しても良い。
【０１２２】
［二次空気異常診断］
図２１に示すに二次空気異常診断プログラムは、イグニッションスイッチのオン後に所定周期で繰り返し実行され、二次空気導入システム３２の異常診断を次のようにして実行する。本プログラムが起動されると、まず、ステップ９０１〜９０４で、アイドル運転時の二次空気異常診断の実行条件が成立しているか否かを判定する。ここで、アイドル運転時の二次空気異常診断の実行条件は、例えば、次の▲１▼〜▲４▼の条件を全て満たすことである。
【０１２３】
▲１▼大気圧が所定圧（例えば７５．３ｋＰａ）よりも高いこと、つまり高地走行でないこと（ステップ９０１）
▲２▼吸気温が所定温度（例えば−１０℃）よりも高いこと（ステップ９０２）
▲３▼空燃比Ｆ／Ｂ制御中であること（ステップ９０３）
▲４▼停車中（車速＝０ｋｍ／ｈ）かつアイドル運転中であること（ステップ９０４）
【０１２４】
走行中に、二次空気異常診断を実行して強制的に二次空気導入制御を行うと、多量の排出ガスが排気管２２内で燃焼して、触媒２３の温度が上昇し過ぎるおそれがある。そこで、上記▲４▼の条件、つまり、アイドル運転中であることを二次空気異常診断の実行条件としている。アイドル運転中は、排出ガス量が少ないので触媒２３を過昇温させることなく二次空気異常診断を行うことができる。
【０１２５】
上記▲１▼〜▲４▼の条件を全て満たした場合には、アイドル運転時の二次空気異常診断の実行条件が成立して、ステップ９０４からステップ９０７に進み、後述するアイドル運転時の二次空気異常診断を実行する。
【０１２６】
一方、上記▲１▼〜▲４▼の条件のうちのいずれか１でも満たさない条件があれば、アイドル運転時の二次空気異常診断の実行条件が不成立となるが、▲１▼〜▲３▼の条件を全て満たした場合（つまり▲４▼の条件のみを満たさない場合）には、ステップ９０４からステップ９０５に進み、前述した図２及び図３の実行頻度算出プログラムで算出した二次空気異常診断の実行頻度ｆair が要求レベル（例えば０．２）を満たしていないか否かを判定する。
【０１２７】
二次空気異常診断の実行頻度ｆair が要求レベルを満たしていないと判定されれば、低負荷走行時にも二次空気異常診断を実行して二次空気異常診断の実行頻度ｆair を増加させる必要があると判断して、ステップ９０６に進み、吸気管圧力が所定圧（例えば３３．３ｋＰａ）よりも低い低負荷走行時であるか否かを判定し、吸気管圧力が所定圧よりも低い低負荷走行時であると判定された場合には、低負荷走行時の二次空気異常診断の実行条件が成立して、ステップ９０７に進み、後述する低負荷走行時の二次空気異常診断を実行する。
【０１２８】
これに対して、ステップ９０５で、二次空気異常診断の実行頻度ｆair が要求レベルを満たしていると判定された場合、及び、次のステップ９０６で、吸気管圧力が所定圧以上となる中・高負荷走行時と判定された場合には、後述する低負荷走行時の二次空気異常診断を実行することなく本プログラムを終了する。
【０１２９】
アイドル運転時の二次空気異常診断と低負荷運転時の二次空気異常診断は、共にステップ９０７〜９１２で次のようにして実行される。
まず、ステップ９０７で、アイドル運転時又は低負荷運転時の二次空気異常診断の実行条件が成立してから所定時間（例えば５ｓｅｃ）が経過したか否かを判定し、所定時間が経過した時点で、ステップ９０８に進み、二次空気導入制御を開始して、排気管２２内に二次空気を導入する。空燃比Ｆ／Ｂ制御中は、空燃比が目標空燃比（例えばストイキ）に制御されているため、二次空気導入システム３２が正常であれば、上流側センサ２４付近の空燃比がリーンとなる（図２２参照）。
【０１３０】
この後、ステップ９０９に進み、二次空気導入制御開始から所定時間（例えば５ｓｅｃ）が経過したか否かを判定し、所定時間が経過した時点で、上流側センサ２４付近の空燃比が安定したと判断して、ステップ９１０に進み、上流側センサ２４の出力に基づいて空燃比のリーン状態が所定時間（例えば１５ｓ）継続したか否かを判定する。
【０１３１】
空燃比のリーン状態が所定時間継続しなかった場合には、ステップ９１１に進み、二次空気導入システム３２が異常と判定して、警告ランプを点灯して運転者に警告すると共に、二次空気導入システム３２の異常を表す異常コードをＥＣＵ２８のバックアップＲＡＭに記憶する。この後、ステップ９１２に進み、二次空気異常診断の実行回数カウンタＮair をインクリメントし、次のステップ９１３で、二次空気導入制御を終了した後、本プログラムを終了する。
【０１３２】
これに対して、ステップ９１０で、空燃比のリーン状態が所定時間継続したと判定された場合には、二次空気導入システム３２が正常と判断して、ステップ９１２に進み、二次空気異常診断の実行回数カウンタＮair をインクリメントし、次のステップ９１３で、二次空気導入制御を終了した後、本プログラムを終了する。
【０１３３】
以上の処理により、二次空気異常診断の実行頻度ｆair が要求レベルを満たしているときには、アイドル運転時の二次空気異常診断のみを実行して、触媒２３の過昇温させないようにする。一方、二次空気異常診断の実行頻度ｆair が要求レベルを満たしていないときには、二次空気異常診断の実行頻度ｆair を増加させることを重視して、アイドル運転時の二次空気異常診断と、低負荷走行時の二次空気異常診断とを両方とも実行して、二次空気異常診断の実行頻度ｆair を増加させる。これにより、従来の二次空気異常診断方法では二次空気異常診断の実行頻度ｆair を十分に確保できなかった条件下でも、二次空気異常診断の実行頻度ｆair を要求レベル以上に維持することが可能となり、二次空気導入システム３２の異常発生時にはその異常を早期に検出することができると共に、将来、二次空気異常診断の実行頻度ｆair が規制対象となった場合でも、その規制の要求レベルを満たすことができる。
【０１３４】
尚、本実施形態では、二次空気異常診断の実行頻度ｆair が要求レベルを満たしているときに、アイドル運転時の二次空気異常診断のみを実行し、二次空気異常診断の実行頻度ｆair が要求レベルを満たしていないときに、アイドル運転時の二次空気異常診断と低負荷走行時の二次空気異常診断とを両方とも実行するようにしたが、二次空気異常診断の実行頻度ｆair に応じて二次空気異常診断の実行条件を変更（緩和）することで、二次空気異常診断の実行頻度ｆair を確保するようにしても良く、その際、実行条件の変更に伴って診断方法や判定条件も変更するようにしても良い。或は、二次空気異常診断の実行頻度ｆair に応じて診断方法や判定条件を変更しても良い。
【０１３５】
また、本実施形態では、異常診断の実行頻度に応じて異常診断条件（実行条件、診断方法、判定条件）を２段階で切り換えるようにしたが、３段階以上で切り換えるようにしても良い。
【０１３６】
その他、本発明の適用範囲は、触媒劣化診断、リーク診断、ＥＧＲ異常診断、二次空気異常診断に限定されず、例えば、排出ガスセンサ（リニア空燃比センサ、酸素センサ等）の異常診断、燃料ポンプの異常診断、触媒早期暖機システムの異常診断、可変バルブシステムの異常診断、点火システムの異常診断、空燃比制御システムの異常診断、スロットル制御システム等、車両に搭載される種々の部品やシステムの異常診断に本発明を適用することができる。
【図面の簡単な説明】
【図１】本発明の一実施形態を示すエンジン制御システム全体の概略構成図
【図２】実行頻度算出プログラムの処理の流れを示すフローチャート（その１）
【図３】実行頻度算出プログラムの処理の流れを示すフローチャート（その２）
【図４】触媒劣化診断プログラムの処理の流れを示すフローチャート（その１）
【図５】触媒劣化診断プログラムの処理の流れを示すフローチャート（その２）
【図６】触媒劣化診断方法を説明するための図
【図７】リーク診断プログラムの処理の流れを示すフローチャート
【図８】アイドル運転時リーク診断プログラムの処理の流れを示すフローチャート（その１）
【図９】アイドル運転時リーク診断プログラムの処理の流れを示すフローチャート（その２）
【図１０】エンジン停止時リーク診断プログラムの処理の流れを示すフローチャート（その１）
【図１１】エンジン停止時リーク診断プログラムの処理の流れを示すフローチャート（その２）
【図１２】アイドル運転時リーク診断の実行例を示すタイムチャート
【図１３】エンジン停止時リーク診断の実行例を示すタイムチャート
【図１４】ＥＧＲ異常診断プログラムの処理の流れを示すフローチャート
【図１５】減速燃料カット時ＥＧＲ異常診断プログラムの処理の流れを示すフローチャート（その１）
【図１６】減速燃料カット時ＥＧＲ異常診断プログラムの処理の流れを示すフローチャート（その２）
【図１７】定常走行時ＥＧＲ異常診断プログラムの処理の流れを示すフローチャート（その１）
【図１８】定常走行時ＥＧＲ異常診断プログラムの処理の流れを示すフローチャート（その２）
【図１９】減速燃料カット時ＥＧＲ異常診断の実行例を示すタイムチャート
【図２０】定常走行時ＥＧＲ異常診断の実行例を示すタイムチャート
【図２１】二次空気異常診断プログラムの処理の流れを示すフローチャート
【図２２】二次空気異常診断方法を説明するための図
【符号の説明】
１１…エンジン（内燃機関）、１２…吸気管、２０…燃料噴射弁、２１…点火プラグ、２２…排気管（排気通路）、２３…触媒、２４，２５…センサ、２８…ＥＣＵ（異常診断手段，実行頻度算出手段）、２９…ＥＧＲシステム（排出ガス還流システム）、３１…ＥＧＲ弁、３２…二次空気導入システム、３５…エアポンプ、３６…コンビネーションバルブ、３７…エバポガスパージシステム、３８…燃料タンク、４１…大気開閉弁、４３…パージ制御弁、４４…タンク内圧センサ。
【図１】
0004061528.tif 000002
【図２】
0004061528.tif 000003
【図３】
0004061528.tif 000004
【図４】
0004061528.tif 000005
【図５】
0004061528.tif 000006
【図６】
0004061528.tif 000007
【図７】
0004061528.tif 000008
【図８】
0004061528.tif 000009
【図９】
0004061528.tif 000010
【図１０】
0004061528.tif 000011
【図１１】
0004061528.tif 000012
【図１２】
0004061528.tif 000013
【図１３】
0004061528.tif 000014
【図１４】
0004061528.tif 000015
【図１５】
0004061528.tif 000016
【図１６】
0004061528.tif 000017
【図１７】
0004061528.tif 000018
【図１８】
0004061528.tif 000019
【図１９】
0004061528.tif 000020
【図２０】
0004061528.tif 000021
【図２１】
0004061528.tif 000022
【図２２】
0004061528.tif 000023