(57)【特許請求の範囲】
【請求項１】
内燃機関の排出ガス浄化用の触媒の暖機を促進する触媒早期暖機制御システムの異常の有無を診断する内燃機関の触媒早期暖機制御システムの異常診断装置であって、
前記触媒早期暖機制御システムは、内燃機関の排出ガス温度を排出ガス中のリッチ成分が前記触媒上流側の排気通路内で後燃え可能な排出ガス温度に昇温する排出ガス昇温系と、前記後燃えを発生させるための二次空気を前記触媒上流側の排気通路内に導入する二次空気導入系とを有し、
前記二次空気の導入部付近又はそれよりも下流側の排気通路に設けられて排出ガスの酸素濃度等のガス成分濃度、空燃比、リッチ／リーンのいずれかを検出する排出ガスセンサと、
内燃機関の始動後に前記排出ガスセンサの活性化の進み具合を判定するセンサ活性判定手段と、
前記センサ活性判定手段で判定した前記排出ガスセンサの活性化の進み具合に基づいて前記触媒早期暖機制御システムの異常の有無を判定する異常診断手段とを備え、
前記異常診断手段は、前記触媒早期暖機制御システムの異常有りと判定する場合に、前記排出ガスセンサの活性化の進み具合と前記排出ガスセンサの出力又はその出力に相関するパラメータとを用いて前記排出ガス昇温系の異常と前記二次空気導入系の異常とを判別することを特徴とする内燃機関の触媒早期暖機制御システムの異常診断装置。
【請求項２】
前記センサ活性判定手段は、前記排出ガスセンサの活性化の進み具合を、該排出ガスセンサが活性化するまでの時間又はそれに相関するパラメータを用いて判定することを特徴とする請求項１に記載の内燃機関の触媒早期暖機制御システムの異常診断装置。
【請求項３】
前記排出ガスセンサは、活性化を促進するヒータを内蔵し、
前記センサ活性判定手段は、前記排出ガスセンサの活性化の進み具合を、該排出ガスセンサが活性化するまでの前記ヒータの消費電力積算値又はそれに相関するパラメータを用いて判定することを特徴とする請求項１又は２に記載の内燃機関の触媒早期暖機制御システムの異常診断装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の排出ガス浄化用の触媒の暖機を促進する触媒早期暖機制御システムの異常の有無を診断する内燃機関の触媒早期暖機制御システムの異常診断装置に関するものである。
【０００２】
【従来の技術】
近年の自動車は、排出ガスを浄化するために三元触媒等の触媒を搭載しているが、この触媒は、エンジン始動後に活性温度に暖機されるまでは、排出ガス浄化率が低いため、エンジン始動後に触媒が活性温度に暖機されるまで、点火時期遅角制御等により触媒早期暖機制御を実行して、排気熱量を増加させて触媒を短時間で暖機するようにしている。この触媒早期暖機制御システムの故障等によって触媒早期暖機制御中の排気熱量が減少して触媒に供給する熱量が不足すると、触媒の暖機（活性化）が遅れて、エンジン始動後の排気エミッションが悪化してしまうため、触媒早期暖機制御システムの異常を早期に検出する必要がある。
【０００３】
そこで、特開２００１−１３２４３８号公報に示すように、触媒の温度を検出する触媒温度センサを設け、この触媒温度センサで検出した触媒温度と、始動後の積算吸入空気量に基づいて推定した推定触媒温度とを比較して、触媒早期暖機制御システムの異常の有無を診断することが提案されている。
【０００４】
【発明が解決しようとする課題】
ところで、益々厳しくなる排出ガス規制に対応して触媒暖機性能を更に高めるために、点火時期遅角制御等によって内燃機関の排出ガス温度を昇温して触媒上流側の排気通路内で排出ガス中のリッチ成分（ＨＣ，ＣＯ等）が燃焼可能な排出ガス温度に昇温すると共に、触媒上流側の排気通路内に二次空気（酸素）を導入することによって、触媒上流側の排気通路内で高温の排出ガス中のリッチ成分（ＨＣ，ＣＯ等）を二次空気（酸素）と混合して後燃えを発生させ、その燃焼熱で触媒に流入する排出ガス温度を更に昇温して触媒を効率良く短時間で暖機する触媒早期暖機制御システムが提案されている。
【０００５】
このように後燃え可能な排出ガス温度に昇温する排出ガス昇温系と、後燃えを発生させるための二次空気を導入する二次空気導入系とを有する触媒早期暖機制御システムでは、異常の発生箇所として排出ガス昇温系と二次空気導入系とが考えられる。
【０００６】
しかし、上記従来公報（特開２００１−１３２４３８号公報）の異常診断方法では、触媒早期暖機制御システムに異常が発生したことは検出できるが、それが排出ガス昇温系の異常なのか二次空気導入系の異常なのかを特定することができないため、触媒早期暖機制御システムの異常を検出できたしても、異常箇所を特定するのに手間取って、修理、部品交換等を速やかに行うことができない。しかも、上記従来公報の構成では、触媒温度を検出するための触媒温度センサを新たに設ける必要があるため、その分、コストアップしてしまい、近年の重要な技術的課題である低コスト化の要求を満たすことができない。
【０００７】
本発明はこのような事情を考慮してなされたものであり、第１の目的は、二次空気導入方式の触媒早期暖機システムの異常診断を行う機能を低コスト化の要求を満たしながら実現することであり、また、第２の目的は、触媒早期暖機システムに異常が発生した場合に、それが排出ガス昇温系の異常なのか二次空気導入系の異常なのかを特定することができる内燃機関の触媒早期暖機制御システムの異常診断装置を提供することにある。
【０００８】
【課題を解決するための手段】
前記第１及び第２の目的を達成するために、本発明の請求項１の内燃機関の触媒早期暖機制御システムの異常診断装置は、後燃え可能な排出ガス温度に昇温する排出ガス昇温系と、後燃えを発生させるための二次空気を導入する二次空気導入系とを有する触媒早期暖機制御システムにおいて、二次空気導入部付近又はそれよりも下流側の排気通路に、排出ガスの酸素濃度等のガス成分濃度、空燃比、リッチ／リーンのいずれかを検出する排出ガスセンサを設置し、内燃機関の始動後に排出ガスセンサの活性化の進み具合をセンサ活性判定手段により判定し、その判定結果に基づいて触媒早期暖機制御システムの異常の有無を異常診断手段により判定すると共に、触媒早期暖機制御システムの異常有りと判定する場合には、排出ガスセンサの活性化の進み具合と排出ガスセンサの出力又はその出力に相関するパラメータとを用いて排出ガス昇温系の異常と二次空気導入系の異常とを判別するようにしたものである。
【０００９】
近年の電子制御化された内燃機関では、排気通路中の触媒の上流側（又は触媒の上流・下流の両側）に排出ガスの酸素濃度等のガス成分濃度、空燃比、リッチ／リーンのいずれかを検出する排出ガスセンサを設置し、この排出ガスセンサの出力に基づいて空燃比を理論空燃比付近に制御することで、触媒の排出ガス浄化効率を高めるようにしている。内燃機関の始動後は、排出ガスセンサも、触媒と同じく、排気熱によって温度上昇し（ヒータ内蔵の排出ガスセンサでは、ヒータの発熱と排気熱の両方によって温度上昇し）、それによって、排出ガスセンサの活性化が進むに従って、排出ガスセンサの出力レベルが正常レベルへ上昇する。
【００１０】
例えば、図６及び図７に示すように、触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系が両方とも正常に機能していれば、排気管内の二次空気導入部付近で後燃えが発生して、二次空気導入部付近又はそれよりも下流側に設けられた排出ガスセンサの周辺や触媒を流れる排出ガスの温度が高温になるため、触媒の暖機が早くなるのと同時に排出ガスセンサの活性化の進み具合も早くなるが、もし、排出ガス昇温系や二次空気導入系に異常が発生して排出ガスセンサ周辺や触媒を流れる排出ガスの温度が低くなると、それに応じて触媒の暖機が遅くなるのと同時に排出ガスセンサの活性化の進み具合も遅くなる。
【００１１】
本発明は、このような触媒の暖機の進み具合と排出ガスセンサの活性化の進み具合との相関関係に着目し、内燃機関の始動後に排出ガスセンサの活性化の進み具合を判定することで、間接的に触媒の暖機の進み具合を判断して、触媒早期暖機制御システムの異常の有無を診断するものである。この場合、触媒早期暖機制御システムの異常診断に利用する排出ガスセンサは、空燃比制御のために設置されている排出ガスセンサを利用すれば良いため、触媒温度センサ等の新たなセンサを設ける必要がなく、低コスト化の要求も満たしながら、触媒早期暖機システムの異常診断を行う機能を実現することができる。
【００１２】
ところで、図７に示すように、排出ガス昇温系と二次空気導入系の両方が正常に機能している場合は、排気通路内に導入した二次空気中の酸素の一部が後燃えせずに残ることで排出ガスの空燃比が弱リーン（触媒暖機完了後の目標空燃比よりも少しリーンの状態）になるが、排出ガス昇温系が正常で、二次空気導入系が異常で二次空気導入量が不足する場合は、二次空気導入による排出ガスの空燃比のリーンずれが少なくなり、排出ガスの空燃比がストイキ付近（触媒暖機完了後の目標空燃比付近）に維持される。反対に、二次空気導入系が正常で、排出ガス昇温系が異常で排出ガスの温度が正常時よりも低くなる場合は、後燃えが不完全になって、二次空気中の酸素の多くが後燃えせずに残ることで排出ガスの空燃比がリーン側にずれる。このような排出ガスの空燃比の変化は、排出ガスセンサの出力の変化として現れる。
【００１３】
このような関係に着目して、請求項１に係る発明では、触媒早期暖機制御システムの異常有りと判定する場合に、排出ガスセンサの活性化の進み具合と排出ガスセンサの出力又はその出力に相関するパラメータとを用いて排出ガス昇温系の異常と二次空気導入系の異常とを判別するようにしている。例えば、排出ガスセンサの活性化の進み具合が正常時よりも遅くて触媒早期暖機制御システムの異常有りと判定される場合は、排出ガスセンサの出力から排出ガスの空燃比を判定することで、排出ガス昇温系の異常なのか二次空気導入系の異常なのかを精度良く特定することができ、異常発生時の修理、部品交換等が容易になる。また、二次空気導入系の異常の態様に、二次空気導入量の不足と過剰の２通りの異常が存在するシステムでは、図７に示すように、排出ガスセンサの活性化の進み具合と排出ガスセンサの出力との組み合わせによって二次空気導入量が不足か過剰かについても判別することができる。
【００１４】
また、排出ガスセンサの活性化の進み具合を判定する方法としては、請求項２のように、排出ガスセンサが活性化するまでの時間又はそれに相関するパラメータを用いて判定するようにしても良い。例えば、排出ガスセンサが活性化するまでの時間が長くなれば、排出ガスセンサの活性化の進み具合が遅いと判断することができる。
【００１５】
また、ヒータを内蔵した排出ガスセンサの場合は、請求項３のように、排出ガスセンサの活性化の進み具合を、該排出ガスセンサが活性化するまでのヒータの消費電力積算値又はそれに相関するパラメータを用いて判定するようにしても良い。前述したように、ヒータ内蔵の排出ガスセンサは、ヒータの発熱と排気熱の両方によって活性化が進むため、触媒早期暖機制御システムの異常によって排出ガスセンサ周辺を流れる排出ガス温度が低くなれば、その分、排出ガスセンサが活性化するまでに供給するヒータ熱（ヒータの消費電力積算値）を増加する必要がある。従って、排出ガスセンサが活性化するまでのヒータの消費電力積算値が多くなれば、排気熱による排出ガスセンサの活性化の進み具合が遅いと判断することができる。
【００１６】
【発明の実施の形態】
《実施形態（１）》
以下、本発明の実施形態（１）を図１乃至図１７に基づいて説明する。まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２の最上流部には、エアクリーナ（図示せず）が設けられ、このエアクリーナの下流側には、吸入空気量を検出するエアフローメータ１３が設けられている。このエアフローメータ１３の下流側には、スロットルバルブ１４とスロットル開度を検出するスロットル開度センサ１５とが設けられている。
【００１７】
更に、エンジン１１の各気筒に空気を導入する吸気マニホールド１６の吸気ポート近傍には、それぞれ燃料を噴射する燃料噴射弁１７が取り付けられている。エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ１８が取り付けられ、各点火プラグ１８の火花放電によって筒内の混合気に点火される。また、エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ１９や、エンジン回転速度を検出するクランク角センサ２０が取り付けられている。
【００１８】
一方、エンジン１１の排気管２１（排気通路）には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を低減させる三元触媒等の触媒２２が設けられ、この触媒２２の上流側に排出ガスの空燃比を検出する空燃比センサ２３（排出ガスセンサ）が設けられている。この空燃比センサ２３のセンサ素子２４は、活性温度が高いため（約６００〜７００℃以上）、排出ガスの熱のみでは、エンジン始動後にセンサ素子２４を早期に活性化することは困難である。そこで、空燃比センサ２３は、ヒータ２５を内蔵し、このヒータ２５の発熱によりセンサ素子２４を早期に活性化させると共に、エンジン運転中にセンサ素子２４の温度を活性温度範囲に維持するようにヒータ２５への通電を制御するようにしている。この空燃比センサ２３のセンサ素子２４のインピーダンス（以下「素子インピーダンス」という）Ｚｄｃは、センサ素子２４の温度に依存し、センサ素子２４の温度が上昇するに従って、素子インピーダンスＺｄｃが低下するという特性がある。
【００１９】
次に、排気管２１に外気を二次空気として導入する二次空気導入装置３４の構成を説明する。排気管２１のうちの空燃比センサ２３の上流側には、二次空気を導入するための二次空気導入管３５が接続されている。この二次空気導入管３５から排気管２１内に二次空気を導入する位置は、排気管２１内の排出ガス温度が排出ガス中のＨＣ等のリッチ成分が燃焼可能な温度（例えば７００℃）以上となる範囲内に設定されている。
【００２０】
二次空気導入管３５の最上流部には、エアフィルタ３６が設けられ、このエアフィルタ３６の下流側に、二次空気を圧送するエアポンプ３７が設けられている。このエアポンプ３７の下流側には、コンビネーションバルブ３８が設けられている。このコンビネーションバルブ３８は、二次空気導入管３５を開閉する圧力駆動型の開閉弁３９の下流側に逆止弁４０を一体化して構成されている。コンビネーションバルブ３８の開閉弁３９は、吸気圧導入管４１を介して吸気管１２に接続され、この吸気圧導入管４１の途中に設けられた電磁駆動型の切換弁４２によって開閉弁３９の駆動圧力を大気圧と吸気圧との間で切り換えるようになっている。
【００２１】
二次空気を導入する場合は、電磁駆動型の切換弁４２をオン（吸気圧導入位置）に切り換えて圧力駆動型の開閉弁３９に吸気圧を導入することで開閉弁３９を開弁する。これにより、エアポンプ３７から吐出された二次空気が開閉弁３９を通過して逆止弁４０側に流れ、その圧力で逆止弁４０が開弁されて、二次空気が排気管２１内に導入される。
【００２２】
一方、二次空気の導入を停止する場合は、切換弁４２をオフ（大気圧導入位置）に切り換えて開閉弁３９に大気圧を導入することで開閉弁３９を閉弁する。これにより、排気管２１への二次空気の導入が停止されると共に、逆止弁４０に二次空気の圧力が作用しなくなって排気管２１側の圧力が高くなるため、逆止弁４０が自動的に閉弁して、排気管２１内の排出ガスがエアポンプ３７側に逆流することが防止される。
【００２３】
前述した空燃比センサ２３は、センサ制御回路２６によって制御される。センサ制御回路２６には、エンジン制御回路２８との間でデータを送受信するサブマイクロコンピュータ（以下「サブマイコン」と略記する）２７が設けられている。エンジン制御回路２８は、サブマイコン２７に対するホストマイコンの役割を果たすと共に、エンジン１１全体の制御を行う主体となるマイクロコンピュータである。エンジン制御回路２８は、ＣＰＵ２９、ＲＯＭ３０、ＲＡＭ３１、バックアップＲＡＭ３２等から構成され、ＲＯＭ３０に記憶された各種の制御ルーチンを実行することで、エンジン運転状態に応じて燃料噴射弁１７の燃料噴射量や点火プラグ１８の点火時期を制御する。
【００２４】
［ヒータ制御］
センサ制御回路２６のサブマイコン２７は、ＲＯＭ（図示せず）に記憶された図２のヒータ制御ルーチンを実行することで、空燃比センサ２３のヒータ２５の電流（以下「ヒータ電流」という）を制御する。以下、サブマイコン２７によって実行される図２のヒータ制御ルーチンの処理内容を説明する。
【００２５】
図２に示すヒータ制御ルーチンは、所定の周期（例えば１２８ｍｓ周期）でタイマ割り込み処理にて起動される。本ルーチンが起動されると、まず、ステップ１０１で、空燃比センサ２３の素子インピーダンスＺｄｃが所定の半活性判定値（例えば２００Ω）以下に低下したか否かで、センサ素子２４が半活性状態に達したか否かを判定する。
【００２６】
この際、素子インピーダンスＺｄｃは、次のようにして検出される。素子インピーダンスＺｄｃの検出時に空燃比センサ２３の印加電圧を一時的に正方向に変化させた後、負方向に変化させる。そして、印加電圧を正方向（又は負方向）に変化させた時の電圧変化量ΔＶと電流変化量ΔＩとから素子インピーダンスＺｄｃを次式により算出する。
Ｚｄｃ＝ΔＶ／ΔＩ
【００２７】
尚、この検出方法は一例であって、正負両側の電圧及び電流の変化量に基づいて素子インピーダンスＺｄｃを検出したり、負の印加電圧Ｖｎｅｇを印加した時のセンサ電流Ｉｎｅｇから素子インピーダンスＺｄｃ（＝Ｖｎｅｇ／Ｉｎｅｇ）を算出しても良い。
【００２８】
上記ステップ１０１で、素子インピーダンスＺｄｃが半活性判定値（２００Ω）以下に低下していないと判定された場合は、センサ素子２４が半活性状態に達していないと判断して、ステップ１０２に進み、ヒータ２５の通電を「１００％通電制御」で制御する。この１００％通電制御は、ヒータ２５の通電率（デューティ比）を１００％に維持して、ヒータ２５の発熱量を最大に維持してセンサ素子２４の温度上昇を促進する制御である。センサ素子２４が半活性状態に達していない期間中は、この１００％通電制御が継続して実施される。
【００２９】
その後、ヒータ２５の発熱によりセンサ素子２４の温度が上昇し、ステップ１０１で、素子インピーダンスＺｄｃが半活性判定値（２００Ω）以下に低下したと判定されたときに、センサ素子２４が半活性状態に達したと判断して、ステップ１０３に進み、素子インピーダンスＺｄｃが素子インピーダンスフィードバック制御（以下「素子インピーダンスＦ／Ｂ制御」と表記する）を開始するための所定の判定値以下であるか否かを判定する。ここで、素子インピーダンスＦ／Ｂ制御開始の判定値は、センサ素子２４の温度が活性温度付近まで昇温したか否か（つまりセンサ素子２４が活性化したか否か）を判定するものであり、サブマイコン２７のバックアップＲＡＭ（図示せず）内に記憶保持されている目標インピーダンスＺｄｃＴＧよりも１０Ω程度大きい値に設定される。例えば、目標インピーダンスＺｄｃＴＧの初期値（センサ劣化前の値）が３０Ωである場合、素子インピーダンスＦ／Ｂ制御開始の判定値は３０＋１０＝４０Ωに設定される。
【００３０】
このステップ１０３で「Ｎｏ」と判定された場合は、センサ素子２４の温度が活性温度付近まで昇温していない（活性化していない）と判断して、ステップ１０４に進み、ヒータ２５の通電を「電力制御」により制御する。この際、素子インピーダンスＺｄｃに応じてマップ等より電力指令値が決定され、その電力指令値に応じてヒータ２５のデューティ比Ｄｕｔｙが算出される。この電力制御は、センサ素子２４が半活性状態で且つ活性化が完了する前の期間に実施される。
【００３１】
その後、ステップ１０８に進み、電力指令値が電力ガード値設定ルーチン（図示せず）によって算出された所定の電力ガード値ＷＨＧＤ以上であるか否かを判定し、もし、電力指令値が電力ガード値ＷＨＧＤ以上であれば、ステップ１０９に進み、電力指令値を電力ガード値ＷＨＧＤでガード処理して（電力指令値＝ＷＨＧＤ）、本ルーチンを終了する。一方、電力指令値が電力ガード値ＷＨＧＤよりも小さければ、ステップ１０４で算出した電力指令値をそのまま採用して本ルーチンを終了する。
【００３２】
その後、センサ素子２４の温度が活性温度付近まで昇温すると、本ルーチンが起動されたときに、ステップ１０３で「Ｙｅｓ」と判定され、ステップ１０５に進み、目標インピーダンス設定ルーチン（図示せず）を実行して、空燃比センサ２３が劣化したときでも、センサ素子２４の温度を最適活性温度（例えば７００℃）付近に維持できるように、目標インピーダンスＺｄｃＴＧをセンサ素子２４の劣化度合いに応じて設定する。
【００３３】
この後、ステップ１０６に進み、素子インピーダンスＦ／Ｂ制御を実施する。この素子インピーダンスＦ／Ｂ制御では、例えばＰＩＤ制御を用いてヒータ２５の通電率であるデューティ比Ｄｕｔｙを次のようにして算出する。
【００３４】
まず、次の（１）〜（３）式により比例項ＧＰ、積分項ＧＩ、微分項ＧＤを算出する。
ＧＰ＝ＫＰ・（Ｚｄｃ−ＺｄｃＴＧ）                ……（１）
ＧＩ＝ＧＩ(i-1) ＋ＫＩ・（Ｚｄｃ−ＺｄｃＴＧ）    ……（２）
ＧＤ＝ＫＤ・｛Ｚｄｃ−Ｚｄｃ(i-1) ｝              ……（３）
ここで、ＫＰは比例定数、ＫＩは積分定数、ＫＤは微分定数であり、ＧＩ(i-1) 及びＺｄｃ(i-1) は前回処理時の値である。
【００３５】
そして、上記比例項ＧＰ、積分項ＧＩ、微分項ＧＤを積算して、ヒータ２５のデューティ比Ｄｕｔｙを算出すると共に（Ｄｕｔｙ＝ＧＰ＋ＧＩ＋ＧＤ）、算出したデューティ比Ｄｕｔｙに対応する電力指令値を算出する。尚、デューティ比Ｄｕｔｙの制御は、上記ＰＩＤ制御に限定されるものではなく、ＰＩ制御やＰ制御を用いても良い。
【００３６】
そして、次のステップ１０７で、素子インピーダンスＦ／Ｂ実行フラグＸＦＢを「１」にセットする。このフラグＸＦＢは、素子インピーダンスＦ／Ｂ制御が実施されているか否かを示すものであり、ＸＦＢ＝１は素子インピーダンスＦ／Ｂ制御の実施を意味し、ＸＦＢ＝０は素子インピーダンスＦ／Ｂ制御の未実施を意味する。尚、このフラグＸＦＢは、イグニッションキーのオン操作時に「０」にリセットされる。
【００３７】
素子インピーダンスＦ／Ｂ制御期間中も、電力ガード値設定ルーチン（図示せず）によって電力ガード値ＷＨＧＤが算出され、電力指令値のガード処理が行われる（ステップ１０８、１０９）。このとき、電力指令値が電力ガード値ＷＨＧＤに達している場合には、上記ステップ１０６で算出したデューティ比Ｄｕｔｙが電力ガード値ＷＨＧＤに応じて修正される。
【００３８】
以上のようにして、センサ素子２４の温度上昇（素子インピーダンスＺｄｃの低下）に応じて、ヒータ２５の制御を１００％通電制御→電力制御の順に実行してセンサ素子２４の温度を活性温度付近まで上昇させ、その後は、素子インピーダンスＦ／Ｂ制御により素子インピーダンスＺｄｃを目標インピーダンスＺｄｃＴＧに維持することで、センサ素子２４の温度を活性温度に保持する。
【００３９】
［触媒早期暖機制御］
次に、触媒早期暖機制御について説明する。エンジン制御回路２８は、図３の排出ガス昇温制御ルーチンを実行することで、冷間始動時に点火プラグ１８の点火時期を遅角制御して排出ガス中のリッチ成分（ＨＣ，ＣＯ等）が排気管２１内で燃焼可能な排出ガス温度に昇温させると共に、図４及び図５の二次空気導入制御用のルーチンを実行することで、二次空気導入装置３４を制御して排気管２１内に後燃えを発生させるための外気を二次空気として導入する。これにより、エンジン１１から排出される高温の排出ガス中のリッチ成分を、二次空気導入装置３４によって導入される二次空気の酸素と混合させて、触媒２２上流側の排気管２１内で後燃えを自然に発生させ、その燃焼熱で触媒２２に流入する排出ガスの温度を更に昇温して触媒２２を効率良く短時間で暖機する。
【００４０】
この場合、図３の排出ガス昇温制御ルーチンを実行する機能、点火プラグ１８及び点火装置（図示せず）等によって排出ガス昇温系が構成され、図４及び図５の二次空気導入制御用のルーチンを実行する機能と二次空気導入装置３４等によって二次空気導入系が構成されている。
【００４１】
また、エンジン制御回路２８は、燃料噴射制御ルーチン（図示せず）を実行することで、触媒早期暖機制御時に触媒２２に流入する排出ガスの空燃比を弱リーン（筒内混合気はほぼ理論空燃比又は弱リッチ）にし、触媒２２に流入するＨＣ量を低減する。
以下、エンジン制御回路２８が実行する図３の排出ガス昇温制御ルーチンと、図４及び図５の二次空気導入制御用のルーチンの処理内容を説明する。
【００４２】
［排出ガス昇温制御］
図３の排出ガス昇温制御ルーチンは、例えば各気筒の燃料噴射毎に実行される。本ルーチンが起動されると、まず、ステップ２０１〜２０３で、触媒早期暖機制御のための点火時期遅角制御（排ガス昇温制御）を実施するか否かを次のようにして判定する。まず、ステップ２０１で、始動完了から所定時間（例えば１秒）が経過したか否かを判定する。始動完了は、例えば、エンジン回転速度Ｎｅが始動判定値を越えたか否かにより判定する。始動完了から所定時間が経過していれば、ステップ２０２に進み、エンジン冷却水温Ｔｗが所定温度（例えば６０℃）未満であるか否かを判定し、エンジン冷却水温Ｔｗが所定温度よりも高ければ、エンジン１１を高温の状態で再始動する高温再始動時ではないと判断して、ステップ２０３に進み、触媒早期暖機制御を継続するか否かを判定する。具体的には、スタータオン（クランキング開始）から２０秒が経過したか否か、或は、非アイドル状態になったか否かを判定し、スタータオンから２０秒が経過していれば、或は、非アイドル状態になっていれば、触媒早期暖機制御を継続しないと判定する。
【００４３】
上記ステップ２０１〜２０３のいずれか１つでも「Ｎｏ」と判定された場合は、ステップ２０４に進み、触媒早期暖機制御が不要と判断して、通常の点火時期制御を実施する。この通常の点火時期制御では、エンジン始動当初には、点火時期を例えば圧縮ＴＤＣ前（ＢＴＤＣ）５℃Ａに固定する。また、エンジン暖機完了後には、エンジン運転状態に応じた基本進角度に対してアイドル安定化補正やノック進角補正等を行い、最適な進角値により点火時期を制御する。
【００４４】
一方、上記ステップ２０１〜２０３で全て「Ｙｅｓ」と判定された場合は、触媒早期暖機制御が必要と判断して、ステップ２０５に進み、点火時期遅角制御を実施して、点火プラグ１８の点火時期を例えば圧縮ＴＤＣ後（ＡＴＤＣ）１０℃Ａに遅角する。これにより、筒内の混合気の燃焼を遅らせて排気管２１内に排出する排出ガスの温度を高温にする。
【００４５】
［二次空気導入制御］
図４の二次空気導入制御ルーチンは、所定周期で実行される。本ルーチンが起動されると、まず、ステップ３０１で、後述する図５の二次空気導入判定ルーチンを実行して二次空気導入フラグＦＡＢを、二次空気導入の許可を意味する「オン」又は二次空気導入の禁止を意味する「オフ」に設定する。
【００４６】
この後、ステップ３０２に進み、二次空気導入フラグＦＡＢがオンか否かを判定し、二次空気導入フラグＦＡＢがオンであれば、ステップ３０３に進み、切換弁４２をオン（吸気圧導入位置）に切り換えて開閉弁３９を開弁した後、ステップ３０４に進み、始動（スタータオン又は始動完了）からの経過時間をパラメータとするエアポンプ３７のデューティ比Ｄｕｔｙのマップを検索して、始動からの経過時間に応じたエアポンプ３７のデューティ比Ｄｕｔｙを算出する。このデューティ比Ｄｕｔｙのマップ特性は、始動から所定時間が経過するまでは始動からの経過時間に応じてデューティ比Ｄｕｔｙが増加し、その後は、デューティ比Ｄｕｔｙがほぼ一定値となるように設定されている。
【００４７】
この後、ステップ３０５に進み、エアポンプ３７の作動電圧Ｖｐをエアポンプ３７の最大作動電圧Ｖｍにデューティ比Ｄｕｔｙを乗算して求め（Ｖｐ＝Ｖｍ×Ｄｕｔｙ）、この作動電圧Ｖｐでエアポンプ３７を作動させて、二次空気を排気管２１に導入する。
【００４８】
一方、二次空気導入フラグＦＡＢがオフであれば、切換弁４２をオフ（大気圧導入位置）に切り換えて開閉弁３９を閉弁すると共に、エアポンプ３７を停止させて（ステップ３０６，３０７）、二次空気の導入を停止する。
【００４９】
［二次空気導入判定］
次に、上記ステップ３０１で実行される図５の二次空気導入判定ルーチンの処理内容を説明する。本ルーチンが起動されると、まず、ステップ４０１で、始動が完了したか否かを、エンジン回転速度Ｎｅが始動判定値を越えたか否かにより判定し、始動完了前であれば、ステップ４０２に進み、気筒内で最初の爆発が発生したか否かを判定する。まだ、最初の爆発が発生していなければ、ステップ４０４に進み、二次空気導入フラグＦＡＢをオフにセットして、本ルーチンを終了する。その後、最初の爆発が発生したときに、ステップ４０５に進み、二次空気導入フラグＦＡＢをオンにセットして、本ルーチンを終了する。
【００５０】
一方、ステップ４０１で、始動完了と判定された場合は、ステップ４０３に進み、二次空気導入条件が成立しているか否かを判定する。この二次空気導入条件は、例えば、次の▲１▼〜▲３▼である。
▲１▼排出ガス温度が後燃え可能な温度（例えば７００℃）以上であること
▲２▼触媒温度が所定温度より低いこと
▲３▼エンジン１１のＨＣ排出量が比較的多くなる運転状態であること
【００５１】
上記▲３▼の条件は、例えば、エンジン回転速度Ｎｅ、吸気管圧力ＰＭ、吸入空気量Ｇａ等の変動量が所定値以上であること、燃焼の不安定度を表すラフネス値が所定値以上であること、エンジン回転速度Ｎｅが所定値以上で点火時期の遅角量が所定値以上であること等であり、要は、筒内の燃焼状態がある程度不安定であることである。このような場合、エンジン１１から未燃ＨＣが排出されるため、後燃えに必要なＨＣを排気管２１内に供給できると共に、後燃えにより触媒２２に流入するＨＣ量（大気中へのＨＣ排出量）を低減することもできる。
また、上記▲１▼の条件を満たしていれば、二次空気導入直後から後燃えを確実に発生させることができる。
【００５２】
また、上記▲２▼における所定温度は、例えば触媒２２の活性温度範囲の下限値付近又はそれよりも少し高い温度に設定されている。従って、触媒温度が所定温度よりも低いときは、触媒２２を暖機する必要があるため、二次空気を導入して、後燃えにより触媒２２の暖機を促進する。一方、触媒温度が所定温度以上であるときは、触媒２２が活性状態であり、触媒２２を暖機する必要がないため、二次空気の導入を禁止して、後燃えによる触媒２２の過熱を防止する。
【００５３】
以上説明した▲１▼と▲２▼の条件が満たされたとき、又は、▲１▼と▲３▼の条件が満たされたときに、二次空気導入条件が成立し、ステップ４０５に進み、二次空気導入フラグＦＡＢをオンにセットして、二次空気の導入を許可し、本ルーチンを終了する。一方、二次空気導入条件が不成立の場合は、ステップ４０４に進み、二次空気導入フラグＦＡＢをオフにセットして、二次空気の導入を禁止し、本ルーチンを終了する。
【００５４】
尚、二次空気導入条件の判定方法は、種々変更可能であり、例えば、▲２▼の条件（触媒温度＜所定温度）が満たされたときに、二次空気導入条件が成立するようにしたり、或は、▲３▼の条件（エンジン１１のＨＣ排出量増加）が満たされたときに、二次空気導入条件が成立するようにしても良い。
【００５５】
［触媒早期暖機制御異常診断］
また、エンジン制御回路２８は、図８乃至図１１の触媒早期暖機制御異常診断用の各ルーチンを実行することで、触媒早期暖機制御システムの異常の有無を判定する異常診断手段としての役割を果たす。尚、図８乃至図１１の触媒早期暖機制御異常診断用の各ルーチンはサブマイコン２７で実行するようにしても良い。
【００５６】
ここで、触媒早期暖機制御システムの異常診断方法について説明する。エンジン始動後は、空燃比センサ２３の周辺を流れる排出ガスの熱とヒータ２５の発熱によって空燃比センサ２３が加熱されて温度上昇し、それによって、空燃比センサ２３の活性化が進むに従って、空燃比センサ２３の出力レベルが正常レベルへ上昇する。
【００５７】
図６及び図７に示すように、触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系が両方とも正常に機能していれば、排気管２１内の二次空気導入部付近で後燃えが発生して、空燃比センサ２３の周辺や触媒２２を流れる排出ガスの温度が高温になるため、触媒２２の暖機が早くなるのと同時に空燃比センサ２３の活性化の進み具合も早くなるが、もし、排出ガス昇温系や二次空気導入系に異常が発生して空燃比センサ２３周辺や触媒２２を流れる排出ガスの温度が低くなると、それに応じて触媒２２の暖機が遅くなるのと同時に空燃比センサ２３の活性化の進み具合も遅くなる。この場合、後述する理由により排出ガス昇温系の正常／異常と二次空気導入系の正常／異常との組み合わせ（Ａ）〜（Ｆ）に応じて空燃比センサ２３周辺を流れる排出ガスの温度が変化し、それに応じて空燃比センサ２３の活性化の進み具合も変化する。
【００５８】
（Ａ）排出ガス昇温系と二次空気導入系の両方が正常の場合には、排出ガス昇温制御によってエンジン１１から排出される高温の排出ガスが、二次空気導入による後燃えによって更に昇温されて、空燃比センサ２３の周辺を流れる排出ガスの温度が高温になるため、空燃比センサ２３の活性化の進み具合が非常に早くなる。触媒早期暖機制御中は、触媒２２に流入する排出ガス（つまり空燃比センサ２３周辺を流れる排出ガス）の空燃比を弱リーンにするので、排出ガス昇温系と二次空気導入系の両方が正常であれば、空燃比センサ２３周辺の排出ガスの空燃比が弱リーンになる。
【００５９】
（Ｂ）排出ガス昇温系が正常で、二次空気導入系が二次空気導入不足となる異常の場合には、排出ガス昇温制御によってエンジン１１から高温の排出ガスが排出されるが、二次空気導入量の不足分だけ後燃えによる昇温効果が減少して、空燃比センサ２３の周辺を流れる排出ガスの温度が（Ａ）の場合よりも低くなるため、空燃比センサ２３の活性化の進み具合が（Ａ）の場合よりも遅くなる。更に、この場合は、二次空気導入による排出ガスの空燃比のリーンずれが少なくなり、空燃比センサ２３周辺の排出ガスの空燃比がストイキ付近（触媒２２の暖機完了後の目標空燃比付近）に維持される。
【００６０】
（Ｄ）〜（Ｆ）排出ガス昇温系が異常の場合には、排出ガス昇温系の異常によってエンジン１１から排出される排出ガスの温度が後燃え可能な温度まで昇温されないため、排気管２１内に二次空気を導入しても後燃えが十分に発生せず、反対に二次空気で排出ガスが冷やされる結果となるため、空燃比センサ２３の周辺を流れる排出ガスの温度が（Ｂ）の場合よりも更に低い温度になる。この場合は、（Ｄ）二次空気導入系が二次空気導入不足となる異常、（Ｅ）二次空気導入系が正常、（Ｆ）二次空気導入系が二次空気導入過剰となる異常の順に二次空気導入量が多くなるので、空燃比センサ２３周辺の排出ガス温度が（Ｄ）、（Ｅ）、（Ｆ）の順に低くなり、その結果、空燃比センサ２３の活性化の進み具合が（Ｄ）、（Ｅ）、（Ｆ）の順に遅くなる。
【００６１】
排出ガス昇温系が異常の場合（Ｄ）〜（Ｆ）は、後燃えが十分に発生しないため、二次空気導入量が多くなるほど、空燃比センサ２３周辺を流れる排出ガス中の酸素濃度が高くなって、排出ガスの空燃比のリーンずれが大きくなる。従って、（Ｆ）二次空気導入系が二次空気導入過剰となる異常の場合は、二次空気導入による排出ガスの空燃比のリーンずれが最大になり、空燃比センサ２３周辺の排出ガスの空燃比がリーンとなる。反対に、（Ｄ）二次空気導入系が二次空気導入不足となる異常の場合は、二次空気導入による排出ガスの空燃比のリーンずれが少なくなり、空燃比センサ２３周辺の排出ガスの空燃比がストイキ付近に維持される。また、（Ｅ）二次空気導入系が正常の場合は、空燃比のリーンずれが（Ｄ）と（Ｆ）との中間になり、空燃比センサ２３周辺の排出ガスの空燃比が弱リーンになる。
【００６２】
一方、（Ｃ）排出ガス昇温系が正常で、二次空気導入系が二次空気導入過剰となる異常の場合には、排出ガス昇温制御によってエンジン１１から高温の排出ガスが排出されるが、二次空気導入量の超過分で排出ガスが冷やされるため、二次空気導入量の超過分に応じて空燃比センサ２３の周辺を流れる排出ガスの温度が低下する。このため、空燃比センサ２３の周辺を流れる排出ガスの温度が、（Ａ）の場合よりも低く、（Ｅ）の場合よりも高い温度領域となり、空燃比センサ２３の活性化の進み具合が、（Ａ）の場合よりも遅く、（Ｅ）の場合よりも早い領域となる。この（Ｃ）の場合は、排出ガス中に後燃えせずに残る酸素が多くなるため、空燃比センサ２３周辺の排出ガスの空燃比がリーンとなる。
【００６３】
本実施形態（１）では、このような排出ガス昇温系と二次空気導入系の正常／異常の組み合わせ（Ａ）〜（Ｆ）と空燃比センサ２３の活性化の進み具合（排出ガス温度）との関係、及び、二次空気導入量と空燃比センサ２３の出力（排出ガス空燃比）との関係に着目して、空燃比センサ２３の活性化の進み具合と空燃比センサ２３の出力を判定して、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが（Ａ）〜（Ｆ）のいずれに該当するかを判定する。
【００６４】
この際、空燃比センサ２３の活性化の進み具合を判定は、エンジン始動から空燃比センサ２３が活性化するまでの時間とヒータ２５の消費電力積算値（以下「ヒータ電力積算値」という）を用いて判定する。つまり、触媒早期暖機制御システムの排出ガス昇温系の異常や二次空気導入系の異常によって触媒早期暖機制御中の空燃比センサ２３周辺を流れる排出ガス温度が低下すると、空燃比センサ２３が活性化するまでの時間が長くなると共に、ヒータ電力積算値が増加するため、エンジン始動から空燃比センサ２３が活性化するまでの時間とヒータ電力積算値をそれぞれ判定値と比較して空燃比センサ２３の活性化の進み具合を判定する。この機能が特許請求の範囲でいうセンサ活性判定手段に相当する。
【００６５】
以下、この触媒早期暖機制御システムの異常診断を行う図８乃至図１１の触媒早期暖機制御異常診断用の各ルーチンの処理内容を説明する。
図８の触媒早期暖機制御異常診断ルーチンは、所定周期で実行される。本ルーチンが起動されると、まず、ステップ５０１で、空燃比センサ２３の素子インピーダンスＺｄｃが所定の活性判定値（例えば４０Ω）よりも大きいか否かで、センサ素子２４が活性化する前であるか否かを判定する。この活性判定値は、前記図２のステップ１０３で用いた素子インピーダンスＦ／Ｂ制御開始の判定値と同じ値に設定すれば良い。
【００６６】
ステップ５０１で、素子インピーダンスＺｄｃが所定の活性判定値よりも大きいと判定された場合は、センサ素子２４が活性化する前と判断して、ステップ５０２に進み、始動から前回までのヒータ電力積算値ＷＨＳＭ(i-1) に今回のヒータ電力ＷＨを加算して、ヒータ電力積算値ＷＨＳＭの記憶値を更新する。
【００６７】
この後、ステップ５０３に進み、始動後の経過時間を計測する始動後経過時間カウンタＣＮＴをカウントアップし、更に、次のステップ５０４で、始動から前回までの吸入空気量積算値ＧＡＳＭ(i-1) に今回の吸入空気量ＧＡを加算して、吸入空気量積算値ＧＡＳＭの記憶値を更新する。
【００６８】
その後、空燃比センサ２３が活性化して空燃比センサ２３の素子インピーダンスＺｄｃが所定の活性判定値（例えば４０Ω）以下になった時点で、ステップ５０１で「Ｎｏ」と判定されて、ステップ５０５に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせを判定するための第１判定値Ｋ１WHSM、Ｋ１CNT を次式により算出する。
Ｋ１WHSM＝Ｂ１WHSM×ＣWHSM
Ｋ１CNT ＝Ｂ１CNT ×ＣCNT 
【００６９】
ここで、第１判定値Ｋ１WHSMとＫ１CNT は、排出ガス昇温系と二次空気導入系の両方が正常である場合に始動から空燃比センサ２３が活性化するまでに必要となるヒータ電力積算値ＷＨＳＭと経過時間ＣＮＴに相当する。また、Ｂ１WHSMとＢ１CNT は第１ベース値であり、予め、基準となるエンジン運転条件で設定した第１判定値に相当し、ＣWHSMとＣCNT は、それぞれエンジン運転条件に応じて第１ベース値Ｂ１WHSM、Ｂ１CNT を補正するための補正係数である。
【００７０】
本ルーチンでは、空燃比センサ２３に供給する排気熱量が吸入空気量ＧＡ（排出ガス流量）によって変化することを考慮して、ステップ５０４で、始動から空燃比センサ２３が活性化するまでの吸入空気量積算値ＧＡＳＭを求め、空燃比センサ２３の活性後に、ステップ５０５に進み、図１２及び図１３のマップにより吸入空気量積算値ＧＡＳＭに応じて補正係数ＣWHSM、ＣCNT を算出する。この際、吸入空気量積算値ＧＡＳＭが多くなるほど、空燃比センサ２３に供給する排気熱量が多くなって空燃比センサ２３の活性化が早くなることを考慮して、吸入空気量積算値ＧＡＳＭが多くなるほど、補正係数ＣWHSM、ＣCNT が小さくなるように設定され、吸入空気量積算値ＧＡＳＭが基準値のときに補正係数ＣWHSM、ＣCNT が１．０となる。第１ベース値Ｂ１WHSM、Ｂ１CNT は、吸入空気量積算値ＧＡＳＭが基準値のときに実験又はシミュレーション等で設定した第１判定値Ｋ１WHSM、Ｋ１CNT に相当する。
【００７１】
尚、吸入空気量積算値ＧＡＳＭの代わりに吸入空気量ＧＡの平均値を算出して、吸入空気量ＧＡの平均値に応じて補正係数ＣWHSM、ＣCNT を算出するようにしても良い。また、空燃比に応じて排出ガス温度が変化して空燃比センサ２３に供給する排気熱量が変化するため、図１４に示すように、始動から空燃比センサ２３が活性化するまでの空燃比積算値（又は平均値）に応じて補正係数ＣWHSM、ＣCNT を設定しても良い。
【００７２】
或は、始動初期の排気管温度に応じて排出ガス温度が変化して空燃比センサ２３に供給する排気熱量が変化するため、図１５に示すように、始動初期の排気管温度に相関するパラメータ（例えば始動時の冷却水温、油温、吸気温、エンジン停止時間等）に応じて補正係数ＣWHSM、ＣCNT を設定しても良い。
【００７３】
また、可変バルブタイミング機構を搭載したエンジンでは、バルブオーバーラップ量に応じて排出ガス温度が変化して空燃比センサ２３に供給する排気熱量が変化するため、図１６に示すように、始動から空燃比センサ２３が活性化するまでのバルブオーバーラップ量積算値（又は平均値）に応じて、補正係数ＣWHSM、ＣCNT を設定しても良い。
【００７４】
また、車速が速くなるに従って排気管２１を冷やす走行風量が増加して排気管２１の温度上昇が少なくなり、それによって、排出ガス温度の上昇が少なくなって、空燃比センサ２３の活性化が遅れるため、図１７に示すように、始動から空燃比センサ２３が活性化するまでの車速積算値（又は平均値）に応じて補正係数ＣWHSM、ＣCNT を設定しても良い。
【００７５】
以上のようにして、ステップ５０５で第１判定値Ｋ１WHSM、Ｋ１CNT を算出した後、ステップ５０６に進み、次の▲１▼と▲２▼の条件を両方とも満たすか否かで、排出ガス昇温系と二次空気導入系が両方とも正常であるか否かを判定する。
▲１▼始動から空燃比センサ２３が活性化するまでのヒータ電力積算値ＷＨＳＭが第１判定値Ｋ１WHSM以下であること（ＷＨＳＭ≦Ｋ１WHSM）
▲２▼始動から空燃比センサ２３が活性化するまでの経過時間ＣＮＴが第１判定値Ｋ１CNT 以下であること（ＣＮＴ≦Ｋ１CNT ）
【００７６】
これら２つの条件▲１▼，▲２▼を両方とも満たせば、空燃比センサ２３の活性化、ひいては触媒２２の早期暖機が正常に行われたと判断して、ステップ５０７に進み、排出ガス昇温系と二次空気導入系が両方とも正常である［図７の（Ａ）に該当する］と判定して、本ルーチンを終了する。
【００７７】
これに対して、上記２つの条件▲１▼，▲２▼のいずれか一方でも満たさない条件があれば、空燃比センサ２３の活性化、ひいては触媒２２の早期暖機が正常に行われなかったと判断し、排出ガス昇温系と二次空気導入系のうちの少なくとも一方が異常であると判断して、ステップ５０８に進み、異常判定フラグＸＣＨＥＣＫを「１」にセットして、本ルーチンを終了する。この場合は、以下に説明する図９〜図１１のルーチンによって、排出ガス昇温系と二次空気導入系のいずれが異常であるか否か、つまり排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）〜（Ｆ）のいずれに該当するか否かを判定する。
【００７８】
［異常判定事前処理］
図９の異常判定事前処理ルーチンは、所定周期で実行され、平均空燃比ＭＡＦがストイキよりもリーンであるか否かを次のようにして判定する。まず、ステップ６０１で、異常判定フラグＸＣＨＥＣＫが触媒早期暖機制御システムの異常を意味する「１」にセットされているか否かを判定する。もし、異常判定フラグＸＣＨＥＣＫ＝１と判定されれば、ステップ６０２に進み、カウンタＣＬＥＡＮをカウントアップした後、ステップ６０３に進み、空燃比センサ２３で検出した排出ガスの空燃比の前回までの空燃比積算値ＡＦＳＭ(i-1) に今回の空燃比ＡＦを加算して、空燃比積算値ＡＦＳＭの記憶値を更新する。
【００７９】
この後、ステップ６０４に進み、カウンタＣＬＥＡＮのカウント値が所定値ＫＬＥＡＮを越えたか否かを判定し、越えていなければ、以降の処理を行うことなく、本ルーチンを終了する。これにより、異常判定フラグＸＣＨＥＣＫ＝１の場合は、カウンタＣＬＥＡＮのカウント値が所定値ＫＬＥＡＮを越えるまで、空燃比積算値ＡＦＳＭを算出する処理を繰り返す。
【００８０】
その後、カウンタＣＬＥＡＮのカウント値が所定値ＫＬＥＡＮを越えた時点で、ステップ６０５に進み、空燃比積算値ＡＦＳＭをカウンタＣＬＥＡＮのカウント値で除算して平均空燃比ＭＡＦを求める。
ＭＡＦ＝ＡＦＳＭ／ＣＬＥＡＮ
【００８１】
この後、ステップ６０６に進み、平均空燃比ＭＡＦがストイキ（１４．６）よりもリーンか否かを判定する。もし、平均空燃比ＭＡＦがストイキよりもリーンであれば、ステップ６０７に進み、空燃比リーンフラグＸＬＥＡＮを空燃比センサ２３周辺を流れる排出ガスの平均空燃比ＭＡＦがリーンであることを意味する「１」にセットした後、ステップ６０９に進み、異常判定フラグＸＣＨＥＣＫを「０」にリセットして、本ルーチンを終了する。
【００８２】
一方、ステップ６０６で「Ｎｏ」と判定された場合には、ステップ６０８に進み、空燃比リーンフラグＸＬＥＡＮを空燃比センサ２３周辺を流れる排出ガスの平均空燃比ＭＡＦがストイキ又はそれよりもよりもリッチであることを意味する「０」にセットした後、ステップ６０９に進み、異常判定フラグＸＣＨＥＣＫを「０」にリセットして、本ルーチンを終了する。
【００８３】
異常判定フラグＸＣＨＥＣＫを「０」にリセットした後は、ステップ６０１で「Ｎｏ」と判定されてステップ６１０に進み、カウンタＣＬＥＡＮ、空燃比積算値ＡＦＳＭ、平均空燃比ＭＡＦを全て「０」にリセットして、本ルーチンを終了する。
【００８４】
尚、二次空気導入中にも、空燃比フィードバック制御するシステムにおいては、平均空燃比ＭＡＦを算出する代わりに、平均フィードバック補正量、又は空燃比若しくは空燃比センサ２３の出力に相関するパラメータを算出して、ストイキよりもリーンか否かを判定しても良い。
【００８５】
［異常箇所判定］
図１０及び図１１に示す異常箇所判定ルーチンは、所定周期で実行され、排出ガス昇温系と二次空気導入系のいずれが異常であるか否か、つまり排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）〜（Ｆ）のいずれに該当するか否かを次のようにして判定する。まず、ステップ７０１で、異常判定フラグＸＣＨＥＣＫが「１」から「０」にリセットされたか否かを判定する。前述した図９の異常判定事前処理ルーチンのステップ６０７又は６０８で空燃比リーンフラグＸＬＥＡＮが「１」又は「０」にセットされて、ステップ６０９で異常判定フラグＸＣＨＥＣＫが「１」から「０」にリセットされた時点で、ステップ７０２に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせを判定するための第２判定値Ｋ２WHSM、Ｋ２CNT を次式により算出する。
Ｋ２WHSM＝Ｂ２WHSM×ＣWHSM
Ｋ２CNT ＝Ｂ２CNT ×ＣCNT 
【００８６】
ここで、第２判定値Ｋ２WHSMとＫ２CNT は、排出ガス昇温系が異常で、二次空気導入系が正常の場合、つまり図７の（Ｅ）の場合に始動から空燃比センサ２３が活性化するまでに必要となるヒータ電力積算値ＷＨＳＭと経過時間ＣＮＴに相当する。また、Ｂ２WHSMとＢ２CNT は第２ベース値であり、予め、基準となるエンジン運転条件で設定した第２判定値に相当し、ＣWHSMとＣCNT は、それぞれエンジン運転条件に応じて第２ベース値Ｂ２WHSM、Ｂ２CNT を補正するための補正係数である。
【００８７】
この後、ステップ７０３に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせを判定するための第３判定値Ｋ３WHSM、Ｋ３CNT を次式により算出する。
Ｋ３WHSM＝Ｂ３WHSM×ＣWHSM
Ｋ３CNT ＝Ｂ３CNT ×ＣCNT 
【００８８】
ここで、第３判定値Ｋ３WHSMとＫ３CNT は、排出ガス昇温系が異常で、二次空気導入系が二次空気導入不足となる異常の場合、つまり図７の（Ｄ）の場合に始動から空燃比センサ２３が活性化するまでに必要となるヒータ電力積算値ＷＨＳＭと経過時間ＣＮに相当する。また、Ｂ３WHSMとＢ３CNT は第３ベース値であり、予め、基準となるエンジン運転条件で設定した第３判定値に相当し、ＣWHSMとＣCNT は、それぞれエンジン運転条件に応じて第３ベース値Ｂ３WHSM、Ｂ３CNT を補正するための補正係数である。
【００８９】
この後、ステップ７０４に進み、次の▲１▼と▲２▼の条件を両方とも満たすか否かで、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｅ）又は（Ｆ）であるか否かを判定する。
▲１▼始動から空燃比センサ２３が活性化するまでのヒータ電力積算値ＷＨＳＭが第２判定値Ｋ２WHSM以上であること（ＷＨＳＭ≧Ｋ２WHSM）
▲２▼始動から空燃比センサ２３が活性化するまでの経過時間ＣＮＴが第２判定値Ｋ２CNT 以上であること（ＣＮＴ≧Ｋ２CNT ）
【００９０】
これら２つの条件▲１▼，▲２▼を両方とも満たせば、空燃比センサ２３の活性化、ひいては触媒２２の暖機が最も遅れる異常態様である図７の（Ｅ）又は（Ｆ）のいずれかに該当すると判断できるため、それを判別するために、ステップ７０５に進み、平均空燃比ＭＡＦが所定値（例えば１７）よりもリーンであるか否かを判定する。
【００９１】
もし、平均空燃比ＭＡＦが所定値（例えば１７）よりもリーンであれば、ステップ７０６に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｆ）、つまり、排出ガス昇温系が異常で、二次空気導入系が二次空気導入過剰となる異常であると判定して、本ルーチンを終了する。
【００９２】
一方、ステップ７０５で「Ｎｏ」と判定されれば、ステップ７０７に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｅ）、つまり、排出ガス昇温系が異常で、二次空気導入系が正常であると判定して、本ルーチンを終了する。
【００９３】
また、上記ステップ７０４で、「Ｎｏ」と判定された場合は、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）〜（Ｄ）のいずれかであると判断できるため、それを判別するために、図１１のステップ７０８に進み、空燃比リーンフラグＸＬＥＡＮが「１」か否かによって、平均空燃比ＭＡＦがストイキによりもリーンか否かを判定する。
【００９４】
もし、空燃比リーンフラグＸＬＥＡＮ＝１であれば、ステップ７０９に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｃ）、つまり排出ガス昇温系が正常で、二次空気導入系が二次空気導入過剰となる異常であると判定して、本ルーチンを終了する。
【００９５】
これに対して、空燃比リーンフラグＸＬＥＡＮ＝０であれば、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）又は（Ｄ）であると判断して、それを判別するために、ステップ７１０に進み、次の▲１▼と▲２▼の条件を両方とも満たすか否かで、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｄ）であるか否かを判定する。
【００９６】
▲１▼始動から空燃比センサ２３が活性化するまでのヒータ電力積算値ＷＨＳＭが第３判定値Ｋ３WHSM以上であること（ＷＨＳＭ≧Ｋ３WHSM）
▲２▼始動から空燃比センサ２３が活性化するまでの経過時間ＣＮＴが第３判定値Ｋ３CNT 以上であること（ＣＮＴ≧Ｋ３CNT ）
これら２つの条件▲１▼，▲２▼を両方とも満たせば、ステップ７１１に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｄ）、つまり、排出ガス昇温系が異常で、二次空気導入系が二次空気導入不足となる異常であると判定して、本ルーチンを終了する。
【００９７】
一方、ステップ７１０で「Ｎｏ」と判定されれば、ステップ７１２に進み、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）、つまり、排出ガス昇温系が正常で、二次空気導入系が二次空気導入不足となる異常であると判定して、本ルーチンを終了する。
【００９８】
尚、図８のステップ５０６の処理、図１０のステップ７０４の処理及び図１１のステップ７１０の処理は、演算処理の簡略化のために、２つの条件▲１▼，▲２▼のいずれか一方の演算、判定処理を省略して、片方の演算、判定処理のみを実行するようにしても良い。
【００９９】
以上説明した本実施形態（１）では、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせ（Ａ）〜（Ｆ）と空燃比センサ２３の活性化の進み具合（空燃比センサ２３周辺の排出ガス温度）との関係、及び、二次空気導入量と空燃比センサ２３の出力（空燃比センサ２３周辺の排出ガス空燃比）との関係に着目して、空燃比センサ２３の活性化の進み具合と空燃比センサ２３の出力を判定して、排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ａ）〜（Ｆ）のいずれであるかを判定するようにしたので、触媒早期暖機制御システムの異常を検出できるのは勿論のこと、触媒早期暖機制御システムの異常が排出ガス昇温系の異常なのか二次空気導入系の異常なのかを精度良く特定することができ、異常発生時の修理、部品交換等が容易になる。しかも、空燃比センサ２３の出力を利用することで、二次空気導入系の異常が二次空気導入量の過剰と不足のいずれであるかも判別することができる。また、触媒早期暖機制御システムの異常診断に利用する空燃比センサ２３は、空燃比制御のために設置されている空燃比センサ２３を利用すれば良いため、触媒温度センサ等の新たなセンサを設ける必要がなく、低コスト化の要求も満たすことができる。
【０１００】
《実施形態（２）》
次に、本発明の実施形態（２）では、図１８及び図１９の触媒早期暖機制御異常診断ルーチンを実行して触媒早期暖機制御システムの異常の有無を判定する。本ルーチンでは、まず、ステップ８０１〜８０４で、前記実施形態（１）と同様の方法で、始動から空燃比センサ２３が活性化するまでのヒータ電力積算値ＷＨＳＭ、経過時間ＣＮＴ、吸入空気量積算値ＧＡＳＭを算出した後、ステップ８０５に進み、第１判定値Ｋ１WHSM、Ｋ１CNT を算出し、更に、次のステップ８０６で、第２判定値Ｋ２WHSM、Ｋ２CNT を算出する。
【０１０１】
この後、ステップ８０７に進み、▲１▼ヒータ電力積算値ＷＨＳＭが第１判定値Ｋ１WHSM以下（ＷＨＳＭ≦Ｋ１WHSM）であるか否か、▲２▼経過時間ＣＮＴが第１判定値Ｋ１CNT 以下（ＣＮＴ≦Ｋ１CNT ）であるか否かを判定する。これら２つの条件▲１▼，▲２▼を両方とも満たせば、ステップ８０８に進み、排出ガス昇温系と二次空気導入系が両方とも正常である［排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ａ）である］と判定して、本ルーチンを終了する。
【０１０２】
これに対して、ステップ８０７で、「Ｎｏ」と判定された場合は、図１９のステップ８０９に進み、▲１▼ヒータ電力積算値ＷＨＳＭが第２判定値Ｋ２WHSM以上（ＷＨＳＭ≧Ｋ２WHSM）であるか否か、▲２▼経過時間ＣＮＴが第２判定値Ｋ１CNT 以上（ＣＮＴ≧Ｋ２CNT ）であるか否かを判定する。これら２つの条件▲１▼，▲２▼を両方とも満たせば、ステップ８１０に進み、少なくとも排出ガス昇温系が異常である［排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｅ）又は（Ｆ）である］と判定して、本ルーチンを終了する。
【０１０３】
一方、ステップ８０９で、「Ｎｏ」と判定された場合は、ステップ８１１に進み、少なくとも二次空気導入系が異常である［排出ガス昇温系と二次空気導入系の正常／異常の組み合わせが図７の（Ｂ）〜（Ｄ）のいずれかである］と判定して、本ルーチンを終了する。
【０１０４】
尚、図１８のステップ８０７の処理及び図１９のステップ８０９の処理は、演算処理の簡略化のために、２つの条件▲１▼，▲２▼のいずれか一方の演算、判定処理を省略して、片方の演算、判定処理のみを実行するようにしても良い。
【０１０５】
以上説明した本実施形態（２）の触媒早期暖機制御異常診断では、前記実施形態（１）の触媒早期暖機制御異常診断に比べて異常診断の演算処理を簡略化しながら、触媒早期暖機制御システムの異常発生時に、排出ガス昇温系の異常なのか二次空気導入系の異常なのかを特定することができる。
【０１０６】
尚、上記各実施形態（１），（２）では、１つのパラメータ（吸入空気量積算値ＧＡＳＭ）のみに基づいて各ベース値Ｂ１WHSM〜Ｂ３WHSM、Ｂ１CNT 〜Ｂ３CNT を補正して判定値Ｋ１WHSM〜Ｋ３WHSM、Ｋ１CNT 〜Ｋ３CNT を求めるようにしたが、複数のパラメータによってベース値Ｂ１WHSM〜Ｂ３WHSM、Ｂ１CNT 〜Ｂ３CNT を補正して判定値Ｋ１WHSM〜Ｋ３WHSM、Ｋ１CNT 〜Ｋ３CNT を求めるようにしても良い。この場合は、図１２〜図１７のマップ等から算出した複数の補正係数を掛け合わせたり、或は、複数のパラメータを変数とするマップ又は数式を作成して、そのマップ又は数式から補正係数を算出するようにしても良い。
【０１０７】
また、上記各実施形態（１），（２）では、各ベース値Ｂ１WHSM〜Ｂ３WHSM、Ｂ１CNT 〜Ｂ３CNT を補正係数ＣWHSM、ＣCNT で補正して判定値Ｋ１WHSM〜Ｋ３WHSM、Ｋ１CNT 〜Ｋ３CNT を求めるようにしたが、始動から空燃比センサ２３が活性化するまでのヒータ電力積算値ＷＨＳＭや始動後経過時間カウンタＣＮＴのカウント値を補正係数ＣWHSM、ＣCNT で補正するようにしても良い。この場合は、ベース値Ｂ１WHSM〜Ｂ３WHSM、Ｂ１CNT 〜Ｂ３CNT をそのまま判定値Ｋ１WHSM〜Ｋ３WHSM、Ｋ１CNT 〜Ｋ３CNT として用いれば良い。
【０１０８】
また、上記各実施形態（１），（２）では、始動から空燃比センサ２３が活性化するまでの経過時間ＣＮＴとヒータ電力積算値ＷＨＳＭを測定したが、始動後に空燃比センサ２３の素子インピーダンスＺｄｃが所定値（例えば１００Ω）以下に低下してから活性判定値（例えば４０Ω）に低下するまでの経過時間ＣＮＴとヒータ電力積算値ＷＨＳＭを測定し、この経過時間ＣＮＴとヒータ電力積算値ＷＨＳＭをそれぞれ判定値と比較して、触媒早期暖機制御システムの異常診断を行うようにしても良い。このようにすれば、始動当初の空燃比センサ２３の温度（素子インピーダンスＺｄｃ）が異なっていても、空燃比センサ２３の活性化に要する時間ＣＮＴとヒータ電力積算値ＷＨＳＭを常に同じ条件で測定することができ、異常診断精度を向上することができる。
【０１０９】
また、始動後にエンジン運転状態がある程度安定するまで暫く待ってから点火時期遅角制御等の触媒早期暖機制御が開始されることを考慮して、始動後に点火時期遅角制御等の触媒早期暖機制御が開始されてから空燃比センサ２３の素子インピーダンスＺｄｃが活性判定値（例えば４０Ω）に低下するまでの経過時間ＣＮＴとヒータ電力積算値ＷＨＳＭを測定し、この経過時間ＣＮＴとヒータ電力積算値ＷＨＳＭをそれぞれ判定値と比較して、触媒早期暖機制御システムの異常診断を行うようにしても良い。このようにすれば、触媒早期暖機制御が開始される前のエンジン運転状態のばらつきの影響を受けずに、触媒早期暖機制御による空燃比センサ２３の活性化の進み具合を精度良く判定することができ、異常診断精度を向上することができる。
【０１１０】
また、上記各実施形態（１），（２）では、触媒２２の上流側に設置した空燃比センサ２３の活性化の進み具合を判定することで、触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常の有無を診断するようにしたが、触媒２２の下流側に排出ガスの酸素濃度等のガス成分濃度、空燃比、リッチ／リーンのいずれかを検出する排出ガスセンサを設置したシステムでは、触媒２２の下流側の排出ガスセンサの活性化の進み具合を判定することで、触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常の有無を診断するようにしても良い。
【０１１１】
また、触媒２２の上流側と下流側の両方に排出ガスセンサを設置したシステムでは、上流側の排出ガスセンサの活性化の進み具合と下流側の排出ガスセンサの活性化の進み具合を判定して、これら双方の判定結果から総合的に触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常診断を行うようにしても良い。この場合、上流側の排出ガスセンサの活性化の進み具合と下流側の排出ガスセンサの活性化の進み具合の判定結果（排出ガスセンサの活性化に要する時間、ヒータ電力積算値等）の比較又は差によって触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常診断を行うようにしても良い。
【０１１２】
また、電力制御の期間（２００Ω≧素子インピーダンスＺｄｃ＞４０Ωの期間）中に素子インピーダンスＺｄｃの変化率の平均値を算出し、この素子インピーダンスＺｄｃの変化率平均値を判定値と比較して触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常診断を行うようにしても良い。
【０１１３】
尚、触媒２２の上流側及び／又は下流側に配置する排出ガスセンサは、空燃比を検出する空燃比センサに限定されず、排出ガスの酸素濃度等のガス成分濃度を検出するセンサや、排出ガスのリッチ／リーンを検出する酸素センサを搭載したシステムに本発明を適用して実施することができる。
【０１１４】
また、上記各実施形態（１），（２）では、排出ガスセンサ（空燃比センサ２３）の活性判定を素子インピーダンスＺｄｃに基づいて行うようにしたが、排出ガスセンサの出力が所定値以上になったか否かで活性判定を行っても良い。また、排出ガスのリッチ／リーンを検出する酸素センサの場合は、酸素センサの出力がリーン出力からリッチ出力に変化したか否かで活性判定を行っても良い。
【０１１５】
また、上記各実施形態（１），（２）では、触媒早期暖機制御中に二次空気導入装置３４のエアポンプ３７をデューティ制御して二次空気導入量を可変するようにしたが、二次空気導入量を可変する機能を持たない簡単な二次空気導入装置を搭載したシステムにも本発明を適用することができる。
【図面の簡単な説明】
【図１】本発明の実施形態（１）を示すエンジン制御システム全体の概略構成図
【図２】ヒータ制御ルーチンの処理の流れを示すフローチャート
【図３】排出ガス昇温制御ルーチンの処理の流れを示すフローチャート
【図４】二次空気導入制御ルーチンの処理の流れを示すフローチャート
【図５】二次空気導入判定ルーチンの処理の流れを示すフローチャート
【図６】空燃比センサ周辺の排出ガス温度特性を示す図
【図７】触媒早期暖機制御システムの排出ガス昇温系と二次空気導入系の異常診断方法を説明するための図
【図８】実施形態（１）の触媒早期暖機制御異常診断ルーチンの処理の流れを示すフローチャート
【図９】異常判定事前処理ルーチンの処理の流れを示すフローチャート
【図１０】異常箇所判定ルーチンの処理の流れを示すフローチャート（その１）
【図１１】異常箇所判定ルーチンの処理の流れを示すフローチャート（その２）
【図１２】吸入空気量積算値ＧＡＳＭと補正係数ＣWHSMとの関係を規定するマップを概念的に示す図
【図１３】吸入空気量積算値ＧＡＳＭと補正係数ＣCNT との関係を規定するマップを概念的に示す図
【図１４】空燃比積算値と補正係数ＣWHSM（ＣCNT ）との関係を規定するマップを概念的に示す図
【図１５】始動時冷却水温と補正係数ＣWHSM（ＣCNT ）との関係を規定するマップを概念的に示す図
【図１６】バルブオーバーラップ量積算値と補正係数ＣWHSM（ＣCNT ）との関係を規定するマップを概念的に示す図
【図１７】車速積算値と補正係数ＣWHSM（ＣCNT ）との関係を規定するマップを概念的に示す図
【図１８】実施形態（２）の触媒早期暖機制御異常診断ルーチンの処理の流れを示すフローチャート（その１）
【図１９】実施形態（２）の触媒早期暖機制御異常診断ルーチンの処理の流れを示すフローチャート（その２）
【符号の説明】
１１…エンジン（内燃機関）、１３…エアフローメータ、１７…燃料噴射弁、１８…点火プラグ、２１…排気管（排気通路）、２２…触媒、２３…空燃比センサ（排出ガスセンサ）、２４…センサ素子、２５…ヒータ、２６…センサ制御回路、２７…サブマイコン、２８…エンジン制御回路（異常診断手段，センサ活性判定手段）、３４…二次空気導入装置、３５…二次空気導入管。
【図１】
0003899510.tif 000002
【図２】
0003899510.tif 000003
【図３】
0003899510.tif 000004
【図４】
0003899510.tif 000005
【図５】
0003899510.tif 000006
【図６】
0003899510.tif 000007
【図７】
0003899510.tif 000008
【図８】
0003899510.tif 000009
【図９】
0003899510.tif 000010
【図１０】
0003899510.tif 000011
【図１１】
0003899510.tif 000012
【図１２】
0003899510.tif 000013
【図１３】
0003899510.tif 000014
【図１４】
0003899510.tif 000015
【図１５】
0003899510.tif 000016
【図１６】
0003899510.tif 000017
【図１７】
0003899510.tif 000018
【図１８】
0003899510.tif 000019
【図１９】
0003899510.tif 000020