(57)【要約】【課題】二次空気供給通路内の圧力の脈動レベルに基づいて二次空気供給装置が異常か否かを正確に判定し得る二次空気供給装置の異常判定装置の提供。【解決手段】この異常判定装置は、ＡＳＶ上流圧力値Ｐａｉと同Ｐａｉに所定の程度をもって追従するなまし圧力値との偏差の絶対値を所定期間Ｔ１に渡って積算して得られる脈動積算値を同Ｐａｉの脈動レベルを表す値として使用し、同Ｐａｉと同脈動積算値とに基づいて二次空気供給装置の異常判定を行う。前記所定期間Ｔ１において、エンジン回転速度、及びスロットル弁開度ＴＡが、吸気脈動が二次空気供給通路内に伝播し得る場合に対応する値となるとき（時刻ｔ３〜ｔ４）、又は、スロットル弁開度ＴＡの変化速度ＤＴＡの絶対値が閾値ＤＴＡｒｅｆ以上になった後の所定時間Ｔ２の間、即ち、二次空気供給通路内にて気柱の振動が発生するとき（時刻ｔ４〜ｔ６）、誤判定がなされる可能性があるから、前記判定を中止する。【選択図】  図７
2004324512.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の吸気通路に配設されたスロットル弁よりも上流側の同吸気通路から空気を導入するとともに同内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に二次空気を供給するための二次空気供給通路を備えた二次空気供給装置に適用され、
前記二次空気供給通路内の圧力値を検出する圧力検出手段と、
前記検出された圧力値の脈動の程度を表す脈動レベルを算出し、少なくとも同脈動レベルに基づいて前記二次空気供給装置が異常であるか否かを判定する異常判定手段と、
を備えた二次空気供給装置の異常判定装置であって、
前記吸気通路内にて発生する吸気脈動が前記二次空気供給通路内に伝播する程度が所定の程度以上のとき、前記異常判定手段による判定を禁止させる異常判定禁止手段を備えた二次空気供給装置の異常判定装置。
【請求項２】
請求項１に記載の二次空気供給装置の異常判定装置であって、
前記異常判定禁止手段は、
前記内燃機関の回転速度を検出する回転速度検出手段と、
前記スロットル弁の開度を検出するスロットル弁開度検出手段と、
前記内燃機関の回転速度と前記スロットル弁開度とに基づいて前記吸気脈動が前記二次空気供給通路内に伝播する程度を取得する取得手段と、
を備え、
前記検出された内燃機関の回転速度と前記検出されたスロットル弁開度とを用いて前記取得手段により取得された前記伝播する程度が前記所定の程度以上のとき、前記異常判定手段による判定を禁止させるように構成された二次空気供給装置の異常判定装置。
【請求項３】
内燃機関の吸気通路に配設されたエアフィルタよりも下流側であって同吸気通路に配設されたスロットル弁よりも上流側の同吸気通路から空気を導入するとともに同内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に二次空気を供給するための二次空気供給通路を備えた二次空気供給装置に適用され、
前記二次空気供給通路内の圧力値を検出する圧力検出手段と、
前記検出された圧力値の脈動の程度を表す脈動レベルを算出し、少なくとも同脈動レベルに基づいて前記二次空気供給装置が異常であるか否かを判定する異常判定手段と、
を備えた二次空気供給装置の異常判定装置であって、
前記スロットル弁の開度の変化速度を取得する変化速度取得手段と、
前記取得された前記変化速度の絶対値が所定値以上になった時点から所定時間に渡り前記異常判定手段による判定を禁止させる異常判定禁止手段と、
を備えた二次空気供給装置の異常判定装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に二次空気を供給する二次空気供給装置が異常であるか否かを判定する二次空気供給装置の異常判定装置に関する。
【０００２】
【従来の技術】
従来より、内燃機関の排ガス中の有害成分（ＣＯ，ＨＣ，ＮＯｘ）を浄化するための三元触媒（本明細書においては、単に「触媒」とも云うこともある。）が、同機関の排気通路に配設されている。かかる三元触媒は、その温度が触媒機能を発揮させるために必要な活性化温度よりも低いとき十分な排気浄化機能を発揮し得ない。従って、例えば、内燃機関の温度が雰囲気温度（外気温度）近傍になっている状態において同内燃機関を始動する場合（以下、「冷間始動時」と称呼する。）等、三元触媒の温度が前記活性化温度よりも低い場合においては、なるべく早期に三元触媒の温度を高めて同三元触媒を活性化させる（暖機させる）必要がある。
【０００３】
このため、三元触媒よりも上流側の排気通路に二次空気を供給し、同二次空気中の酸素により排ガス中の未燃成分（特に、ＨＣ）が酸化せしめられる際に発生する反応熱により同三元触媒を積極的に暖機させる二次空気供給装置が広く使用されている。
【０００４】
かかる二次空気供給装置は、一般に、三元触媒より上流の排気通路に接続された二次空気供給通路に空気を導入するためのエアポンプ、エアポンプよりも下流の二次空気供給通路に介装されて二次空気供給通路の開通・遮断を制御するためのエアスイッチングバルブ等の構成部品から構成されている。かかる二次空気供給装置の構成部品に異常が生じると、二次空気を供給するための指示を二次空気供給装置に与えても二次空気が供給されず三元触媒の暖機が遅れてエミッションの排出量が増大する、或いは、二次空気の供給を停止するための指示を二次空気供給装置に与えても二次空気が供給され続け排ガスの空燃比がリーンとなってＮＯｘの浄化効率が低下する、という問題が発生する。従って、かかる二次空気供給装置（の構成部品）の異常を検出する必要がある。
【０００５】
そこで、特許文献１に開示された二次空気供給装置（の異常判定装置）は、構成部品であるエアポンプとエアスイッチングバルブとの間の二次空気供給通路内の圧力を検出する圧力センサを備え、同圧力センサにより検出された圧力値と、排気脈動に起因する同圧力値の脈動の脈動レベル（脈動の程度を示す（評価する）値。具体的には同圧力値の振幅値）とに基づいて構成部品が異常か否かを判定するようになっている。
【０００６】
【特許文献１】
特開２００３−８３０４８号公報
【０００７】
【発明が解決しようとする課題】
上記開示された二次空気供給装置は、内燃機関の吸気通路（具体的には、エアフィルタよりも下流側であってスロットル弁よりも上流側の吸気通路）から二次空気供給通路内に空気を導入するように構成されている。
【０００８】
また、内燃機関のスロットル弁の下流側の吸気通路内では吸気脈動が不可避的に発生し、この吸気脈動は、内燃機関の運転状態（詳細については後述する。）によってはスロットル弁の上流側の吸気通路内に伝播する。従って、上記開示された二次空気供給装置においては、二次空気供給通路内に吸気脈動が伝播する場合がある。
【０００９】
二次空気供給通路内に吸気脈動が伝播すると、同吸気脈動の影響が前記圧力センサの出力に現れる。従って、例えば、エアスイッチングバルブが閉状態となっていて二次空気供給通路内における排気脈動に起因する脈動が発生し得ない（或いは、排気脈動に起因する脈動レベルが小さい）場合、前記圧力センサにより検出される圧力値の脈動レベルは小さい値として計算されるべきであるところ、大きい値として計算されることがある。よって、かかる脈動レベルに基づいて二次空気供給装置（の構成部品）が異常か否かを判定する上記開示された装置においては、同判定において誤判定がなされる可能性があるという問題がある。
【００１０】
従って、本発明の目的は、二次空気供給通路内の圧力の脈動レベルに基づいて二次空気供給装置が異常であるか否かを正確に判定し得る二次空気供給装置の異常判定装置を提供することにある。
【００１１】
【本発明の概要】
本発明の特徴は、内燃機関の吸気通路に配設されたスロットル弁よりも上流側の同吸気通路から空気を導入するとともに同内燃機関の排気通路に配設された触媒よりも上流側の同排気通路に二次空気を供給するための二次空気供給通路を備えた二次空気供給装置に適用され、前記二次空気供給通路内の圧力値を検出する圧力検出手段と、前記検出された圧力値の脈動の程度を表す脈動レベルを算出し、少なくとも同脈動レベルに基づいて前記二次空気供給装置が異常であるか否かを判定する異常判定手段と、を備えた二次空気供給装置の異常判定装置が、前記吸気通路内にて発生する吸気脈動が前記二次空気供給通路内に伝播する程度が所定の程度以上のとき、前記異常判定手段による判定を禁止させる異常判定禁止手段を備えたことにある。
【００１２】
ここにおいて、前記脈動レベルは、前記検出された圧力値の脈動の程度を表す値であって、例えば、同圧力値の振幅値、同圧力値と同圧力値に所定の程度をもって追従するなまし圧力値との偏差の絶対値を積算して得られる脈動積算（面積）値等であって、これらに限定されない。
【００１３】
また、本発明に係る二次空気供給装置の異常判定装置が適用される二次空気供給装置は、二次空気供給通路に介装されるとともに同二次空気供給通路に空気を導入（圧送）するためのエアポンプと、前記エアポンプよりも下流の二次空気供給通路に介装されるとともに同二次空気供給通路の開通・遮断を制御するためのエアスイッチングバルブと、を備えることが好適である。
【００１４】
先に説明したように、内燃機関のスロットル弁よりも上流側の吸気通路から二次空気供給通路内に空気を導入するように構成された二次空気供給装置においては、内燃機関の運転状態によっては吸気脈動が二次空気供給通路内に伝播し、前記脈動レベルが排気脈動に起因する脈動レベルとは異なる（よりも大きい）値として計算され得るから、この場合、同脈動レベルに基づいて二次空気供給装置が異常であるか否かを判定すると誤判定に繋がる可能性がある。
【００１５】
このような知見に基づき、上記二次空気供給装置の異常判定装置は、上記のように、吸気通路内にて発生する吸気脈動が二次空気供給通路内に伝播する程度が所定の程度以上のとき、前記脈動レベルに基づく判定を行わないように構成されている。従って、吸気脈動が二次空気供給通路内に伝播することにより誤判定がなされることが防止され得る。この場合、前記異常判定手段は、前記異常判定禁止手段により判定を禁止されたとき、同禁止が解除された後に計算された前記脈動レベルに基づいて前記二次空気供給装置が異常であるか否かを判定するように構成されることが好適である。
【００１６】
この場合、前記異常判定禁止手段は、前記内燃機関の回転速度を検出する回転速度検出手段と、前記スロットル弁の開度を検出するスロットル弁開度検出手段と、前記内燃機関の回転速度と前記スロットル弁開度とに基づいて前記吸気脈動が前記二次空気供給通路内に伝播する程度を取得する取得手段と、を備え、前記検出された内燃機関の回転速度と前記検出されたスロットル弁開度とを用いて前記取得手段により取得された前記伝播する程度が前記所定の程度以上のとき、前記異常判定手段による判定を禁止させるように構成されることが好適である。
【００１７】
一般に、スロットル弁の下流側の吸気通路内の空気の圧力（以下、「スロットル弁下流圧力」と称呼する。）が変化すると、スロットル弁を通過する空気の流量（質量流量）（以下、「スロットル弁通過空気流量」と称呼する。）が変化する。一方、スロットル弁下流圧力が流体力学における臨界圧力（ｃｒｉｔｉｃａｌ  ｐｒｅｓｓｕｒｅ）以下のとき（且つ、スロットル弁開度が一定のとき）、スロットル弁を通過する空気の流速が音速に達するため同スロットル弁下流圧力に拘わらずスロットル弁通過空気流量が一定となる。従って、スロットル弁下流圧力が前記臨界圧力よりも大きいとき、同スロットル弁下流吸気通路内で発生する吸気脈動に応じてスロットル弁通過空気流量が変動し得ることでスロットル弁上流の吸気通路内（従って、二次空気供給通路内）にも吸気脈動が伝播し得る。一方、スロットル弁下流圧力が前記臨界圧力以下のとき、前記吸気脈動に応じてスロットル弁通過空気流量が変動しないことからスロットル弁上流の吸気通路内（従って、二次空気供給通路内）に吸気脈動が伝播しない。
【００１８】
また、スロットル弁下流圧力は、主として内燃機関の回転速度とスロットル弁開度とに基づいて決定される。以上のことから、内燃機関の回転速度とスロットル弁開度とに基づいて吸気脈動が二次空気供給通路内に伝播する程度を正確に取得（推定、決定）することができる。かかる知見に基づいて、前記取得手段は、内燃機関の回転速度とスロットル弁開度とに基づいて吸気脈動が二次空気供給通路内に伝播する程度を取得するように構成されている。これによれば、簡易な構成で、且つ正確に吸気脈動が二次空気供給通路内に伝播する程度を取得することができ、前記異常判定手段による判定を禁止すべきか否かを正確に決定し得るから、より一層、吸気脈動が二次空気供給通路内に伝播することにより誤判定がなされることが防止され得る。
【００１９】
また、本発明の他の特徴は、前記二次空気供給装置が前記吸気通路に配設されたエアフィルタよりも下流側であって前記スロットル弁よりも上流側の同吸気通路から前記二次空気供給通路内に空気を導入するように構成されている場合、前記と同様の圧力検出手段、及び前記と同様の異常判定手段を備えた二次空気供給装置の異常判定装置が、前記スロットル弁の開度の変化速度を取得する変化速度取得手段と、前記取得された前記変化速度の絶対値が所定値以上になった時点から所定時間に渡り前記異常判定手段による判定を禁止させる異常判定禁止手段とを備えたことにある。
【００２０】
スロットル弁開度が変化すると、スロットル弁通過空気流量、ひいてはスロットル弁の上流の吸気通路に配設されたエアフィルタを通過する空気流量も変化する。エアフィルタを通過する空気流量が変化するとエアフィルタの圧力損失の大きさが変化する。従って、スロットル弁開度が急変すると、スロットル弁の上流側の吸気通路内の空気の圧力（以下、「スロットル弁上流圧力」と称呼する。）も急変し、この結果、スロットル弁の上流側の吸気通路に接続されている二次空気供給通路内にて気柱の振動が発生し得る。この気柱の振動の影響は前記圧力センサの出力として現れる。以上のことから、スロットル弁開度が急変すると、その後、前記気柱の振動が減衰するまでの所定時間に渡り、前述の吸気脈動が二次空気供給通路内に伝播する場合と同様、前記脈動レベルが排気脈動に起因する脈動レベルとは異なる（よりも大きい）値として計算され得るから、同脈動レベルに基づいて二次空気供給装置が異常であるか否かを判定すると誤判定に繋がる可能性がある。
【００２１】
かかる知見に基づいて、前記異常判定禁止手段は、前記取得された前記変化速度の絶対値が所定値以上になった時点から所定時間に渡り前記異常判定手段による判定を禁止させるように構成されている。従って、前記気柱の振動が二次空気供給通路内にて発生することにより誤判定がなされることが防止され得る。この場合も、前記異常判定手段は、前記異常判定禁止手段により判定を禁止されたとき、同禁止が解除された後に計算された前記脈動レベルに基づいて前記二次空気供給装置が異常であるか否かを判定するように構成されることが好適である。
【００２２】
【発明の実施の形態】
以下、本発明による二次空気供給装置の異常判定装置の一実施形態について図面を参照しつつ説明する。図１は、そのような異常判定装置を二次空気供給装置を備えた火花点火式多気筒（４気筒）内燃機関１０に適用したシステムの概略構成を示している。なお、図１は、多気筒のうち特定の１気筒のみに係わる構成を示しているが、他の気筒に係わる構成も同様である。
【００２３】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース、及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排気ガスを外部に放出するための排気系統５０と、排気系統５０に二次空気を供給する二次空気供給制御を実行するための二次空気供給装置６０とを含んでいる。
【００２４】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３、及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これにより同クランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００２５】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を駆動するインテークカムシャフトを含むとともに同インテークカムシャフトの位相角を連続的に変更する可変吸気タイミング装置３３、可変吸気タイミング装置３３のアクチュエータ３３ａ、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８、及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００２６】
吸気系統４０は、吸気ポート３１に連通し同吸気ポート３１とともに吸気通路を形成するとともにその一部がサージタンクＳとして機能するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３、及び、スロットル弁駆動手段を構成するＤＣモータからなるスロットル弁アクチュエータ４３ａを備えている。
【００２７】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ（排気管）５２、エキゾーストパイプ５２に配設（介装）された触媒（三元触媒、スタート・キャタリティック・コンバータとも云う。）５３を備えている。排気ポート３４、エキゾーストマニホールド５１、及びエキゾーストパイプ５２は、排気通路を構成している。
【００２８】
二次空気供給装置６０は、エアフィルタ４２の下流であってスロットル弁４３の上流の吸気通路と触媒５３の上流の排気通路（実際には、気筒毎の排気通路の各々）とを連通する二次空気供給通路６１と、二次空気供給通路６１に介装されるとともに同吸気通路内の空気を同排気通路へ強制的に圧送するためのエアポンプ６２と、エアポンプ６２よりも下流の二次空気供給通路６１に介装されるとともに同二次空気供給通路６１を開通・遮断するためのエアスイッチングバルブ（以下、「ＡＳＶ」と称呼する。）６３と、ＡＳＶ６３の下流の二次空気供給通路６１に介装されるとともに二次空気供給通路６１内における上流側から下流側への空気の流れのみを許容するリード弁６４とを備えている。また、二次空気供給装置６０は、サージタンクＳ内の負圧をＡＳＶ６３に導入するための負圧導入通路６５と、負圧導入通路６５に介装されるとともに同負圧導入通路６５を開通・遮断するための常閉型の電磁開閉弁（以下、「電磁弁」と称呼する。）６６をも備えている。
【００２９】
ＡＳＶ６３は、サージタンクＳ内の負圧が導入されているとき開状態となり、同負圧が導入されていないとき閉状態となるように構成されている。換言すれば、ＡＳＶ６３は、電磁弁６６が励磁状態にあるとき（開状態にあるとき）開状態となり、同電磁弁６６が非励磁状態にあるとき（閉状態にあるとき）閉状態となる。以上の構成に基づき、二次空気供給装置６０は、前記二次空気供給制御（以下、「ＡＩ」と云うこともある。）を実行するときはエアポンプ６２を作動させるとともに電磁弁６６を開状態とし、同二次空気供給制御を停止するときはエアポンプ６２を停止させるとともに電磁弁６６を閉状態とするようになっている。
【００３０】
一方、このシステムは、熱線式エアフローメータ７１、スロットルポジションセンサ７２、カムポジションセンサ７３、クランクポジションセンサ７４、水温センサ７５、触媒５３の上流の排気通路に配設された空燃比センサ７６、触媒５３の下流の排気通路に配設された空燃比センサ７７、アクセル開度センサ７８、及びエアポンプ６２の下流であってＡＳＶ６３の上流の二次空気供給通路６１に配設された圧力検出手段としての圧力センサ７９を備えている。
【００３１】
熱線式エアフローメータ７１は、吸気管４１内を流れる吸入空気の質量流量に応じた電圧Ｖｇを出力するようになっている。かかるエアフローメータ７１の出力Ｖｇと、計測された吸入空気流量Ｇａとの関係は、図２に示したとおりである。スロットル弁開度検出手段としてのスロットルポジションセンサ７２は、スロットル弁４３の開度を検出し、スロットル弁開度ＴＡを表す信号を出力するようになっている。カムポジションセンサ７３は、インテークカムシャフトが９０°回転する毎に（即ち、クランク軸２４が１８０°回転する毎に）一つのパルスを有する信号（Ｇ２信号）を発生するようになっている。回転速度検出手段としてのクランクポジションセンサ７４は、クランク軸２４が１０°回転する毎に幅狭のパルスを有するとともに同クランク軸２４が３６０°回転する毎に幅広のパルスを有する信号を出力するようになっている。この信号は、エンジン回転速度ＮＥを表す。水温センサ７５は、内燃機関１０の冷却水の温度を検出し、冷却水温ＴＨＷを表す信号を出力するようになっている。
【００３２】
アクセル開度センサ７８は、運転者によって操作されるアクセルペダル９１の操作量を検出し、同アクセルペダル９１の操作量Ａｃｃｐを表す信号を出力するようになっている。圧力検出手段としての圧力センサ７９は、ＡＳＶ６３の上流の二次空気供給通路６１内の圧力値を検出し、ＡＳＶ６３上流の圧力値（以下、「ＡＳＶ上流圧力値」と称呼する。）Ｐａｉを表す信号を出力するようになっている。
【００３３】
電気制御装置８０は、互いにバスで接続されたＣＰＵ８１、ＣＰＵ８１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）、定数等を予め記憶したＲＯＭ８２、ＣＰＵ８１が必要に応じてデータを一時的に格納するＲＡＭ８３、電源が投入された状態でデータを格納するとともに同格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ８４、及びＡＤコンバータを含むインターフェース８５等からなるマイクロコンピュータである。インターフェース８５は、前記センサ７１〜７９と接続され、ＣＰＵ８１にセンサ７１〜７９からの信号を供給するとともに、同ＣＰＵ８１の指示に応じて可変吸気タイミング装置３３のアクチュエータ３３ａ、イグナイタ３８、インジェクタ３９、スロットル弁アクチュエータ４３ａ、エアポンプ６２（を駆動するための図示しない電動モータ）、及び電磁弁６６に駆動信号を送出するようになっている。また、インターフェース８５は、ＣＰＵ８１の指示に応じてユーザーに二次空気供給装置６０の異常を知らしめるための警報ランプ９２に同警報ランプ９２を点灯させるための指示信号を送出するようになっている。
【００３４】
（二次空気供給制御（ＡＩ）の概要）
内燃機関１０の排気通路に配設されている三元触媒である触媒５３は、その温度が触媒機能を発揮させるために必要な活性化温度よりも低いとき十分な排気浄化機能を発揮し得ない。従って、触媒５３の温度が前記活性化温度よりも低くなている冷間始動時においては、なるべく早期に同触媒５３を暖機させる必要がある。
【００３５】
また、触媒５３よりも上流側の排気通路に二次空気を供給し、同二次空気中の酸素により排ガス中の未燃成分（特に、ＨＣ）が酸化せしめられる際に発生する反応熱を同触媒５３に与えれば、同触媒５３を積極的に暖機させることができる。
【００３６】
そこで、ＣＰＵ８１は、冷間始動時において、エアポンプ６２を作動開始させるとともに電磁弁６６を開弁（閉状態から開状態に変化）させて（従って、ＡＳＶ６３を開弁させて）前記二次空気供給制御を実行開始する。これにより、エアポンプ６２が所定の回転速度で回転することで同エアポンプ６２から吐出された空気の圧力（従って、ＡＳＶ上流圧力値Ｐａｉ（の中心値））が略大気圧から所定のエアポンプ吐出圧まで上昇するとともに同吐出された空気（二次空気）はＡＳＶ６３、リード弁６４を通過して触媒５３よりも上流の排気通路に供給される。
【００３７】
この二次空気供給制御は、その後、触媒５３を暖機させるために必要な所定の継続期間に渡って、車両が停止中である（具体的には、エンジン回転速度ＮＥがアイドリング回転速度近傍に維持されている）限りにおいて継続される。そして、前記所定の継続期間が経過すると、ＣＰＵ８１は、エアポンプ６２を停止させるとともに電磁弁６６を閉弁（開状態から閉状態に変化）させて（従って、ＡＳＶ６３を閉弁させて）二次空気供給制御を終了（停止）する。これにより、二次空気の排気通路への供給が停止せしめられるとともに、ＡＳＶ上流圧力値Ｐａｉ（の中心値）が前記エアポンプ吐出圧から再び略大気圧にまで低下する。
【００３８】
また、かかる二次空気供給制御を実行すると排ガスの空燃比が若干リーンとなることで触媒５３のＮＯｘの浄化効率が低下してＮＯｘの排出量が増大する傾向がある。従って、二次空気供給制御を実行しながら車両が走行することは好ましくない。そこで、ＣＰＵ８１は、冷間始動時から前記所定の継続期間が経過するまでの間に内燃機関１０を搭載した車両が走行する期間が存在する場合、同走行する期間の間だけ二次空気供給制御を中断する。以上が二次空気供給制御の概要である。
【００３９】
（二次空気供給装置の異常判定方法の概要）
二次空気供給通路６１は内燃機関１０の排気通路に接続されている。従って、ＡＳＶ６３が開状態となっている場合、内燃機関１０において不可避的に発生する排気脈動がリード弁６４、ＡＳＶ６３を介してＡＳＶ６３上流の二次空気供給通路内に伝播する。この結果、ＡＳＶ上流圧力値Ｐａｉは排気脈動に起因して所定の脈動レベルをもって脈動する。一方、ＡＳＶ６３が閉状態となっている場合、前記排気脈動がＡＳＶ６３上流の二次空気供給通路内に伝播し得ない。この結果、ＡＳＶ上流圧力値Ｐａｉは脈動しない。換言すれば、ＡＳＶ上流圧力値Ｐａｉが或る所定の脈動レベル基準値以上の脈動レベルをもって脈動していることはＡＳＶ６３が開状態となっていること（ひいては、二次空気供給通路６１が開通していること）を意味し、ＡＳＶ上流圧力値Ｐａｉが前記所定の脈動レベル基準値よりも小さい脈動レベルをもって脈動していること（脈動していない場合も含む。）はＡＳＶ６３が閉状態となっていること（ひいては、二次空気供給通路６１が開通していないこと）を意味する。
【００４０】
また、エアポンプ６２が作動中であるとき、上述のごとくＡＳＶ上流圧力値Ｐａｉ（の中心値）は前記所定のエアポンプ吐出圧に維持される。一方、エアポンプ６２が停止中であるとき、二次空気供給通路６１の上流側が吸気通路に接続されていることからＡＳＶ上流圧力値Ｐａｉ（の中心値）は略大気圧に維持される。換言すれば、ＡＳＶ上流圧力値Ｐａｉが前記エアポンプ吐出圧より小さい所定の基準圧力Ｐｒｅｆ以上の値になっていることはエアポンプ６２が作動していることを意味し、ＡＳＶ上流圧力値Ｐａｉが前記所定の基準圧力Ｐｒｅｆよりも低い値になっていることはエアポンプ６２が停止していることを意味する。
【００４１】
更に、ＡＳＶ上流圧力値Ｐａｉの脈動レベルは、ＡＳＶ上流圧力値Ｐａｉ（そのもの、瞬時値）と、同ＡＳＶ上流圧力値Ｐａｉに所定の程度をもって（なまし時定数に応じて）追従するなまし圧力値Ｐｄｕｌｌとの偏差の絶対値をＣＰＵ８１の演算周期毎に求め、同求めた偏差の絶対値を所定期間Ｔ１に渡って積算して得られる下記数１にて示される脈動積算値ＳＵＭｐｕｌｓｅを用いて表すことができる。この脈動積算値ＳＵＭｐｕｌｓｅは、図３に斜線で示した領域の面積に相当する値であって、ＡＳＶ上流側圧力値Ｐａｉの脈動レベルの増加に応じて増加する値である。
【００４２】
【数１】
ＳＵＭｐｕｌｓｅ  ＝  Σ｜Ｐａｉ  −  Ｐｄｕｌｌ｜  （積算区間：Ｔ１）
【００４３】
この所定期間Ｔ１（の長さ）は、同所定期間Ｔ１の開始時点でのエンジン回転速度ＮＥに応じて決定され、その開始時期は、二次空気供給制御の開始時点からエアポンプ６２の回転速度が前記所定の回転速度に達するまでに必要な所定時間が経過した時点、及び同二次空気供給制御の終了時点からエアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過した時点である。また、なまし圧力値（の今回値）Ｐｄｕｌｌは、下記数２に従って前記演算周期毎に計算される。下記数２において、ＰａｉはＡＳＶ上流側圧力値の今回値（今回の演算時点で取得した値）であり、Ｐｄｕｌｌｂはなまし圧力値の前回値であって、Ｔはなまし時定数（＞１（一定値））である。このように、なまし圧力値の今回値Ｐｄｕｌｌは、ＡＳＶ上流側圧力値の今回値Ｐａｉとなまし圧力値の前回値Ｐｄｕｌｌｂとの偏差に基づいて計算される。
【００４４】
【数２】
Ｐｄｕｌｌ  ＝  （１／Ｔ）・（Ｐａｉ  −  Ｐｄｕｌｌｂ）  ＋  Ｐｄｕｌｌｂ
【００４５】
以上のことから、先ず、ＣＰＵ８１が二次空気供給制御を実行するための指示（具体的には、エアポンプ６２に対する作動指示、及び電磁弁６６に対する開弁指示）を二次空気供給装置６０に対して行っている場合、エアポンプ６２及びＡＳＶ６３（並びに、その他の構成部品等）が正常であるならば、ＡＳＶ上流圧力値Ｐａｉ、及び脈動積算値ＳＵＭｐｕｌｓｅは図４に示す領域１に対応する値になっている（即ち、ＡＳＶ上流圧力値Ｐａｉが前記基準圧力Ｐｒｅｆ以上の値になっていて、且つ、脈動積算値ＳＵＭｐｕｌｓｅが前記所定の脈動レベル基準値に相当する脈動積算基準値ＳＵＭｐｕｌｓｅｒｅｆ以上の値になっている）はずである。反対に、ＣＰＵ８１が二次空気供給制御を停止するための指示（具体的には、エアポンプ６２に対する停止指示、及び電磁弁６６に対する閉弁指示）を二次空気供給装置６０に対して行っている場合、エアポンプ６２及びＡＳＶ６３（並びに、その他の構成部品等）が正常であるならば、ＡＳＶ上流圧力値Ｐａｉ、及び脈動積算値ＳＵＭｐｕｌｓｅは図４に示す領域２に対応する値になっている（即ち、ＡＳＶ上流圧力値Ｐａｉが前記基準圧力Ｐｒｅｆよりも低い値になっていて、且つ、脈動積算値ＳＵＭｐｕｌｓｅが前記脈動積算基準値ＳＵＭｐｕｌｓｅｒｅｆよりも小さい値になっている）はずである。
【００４６】
そこで、本発明による二次空気供給装置の異常判定装置（以下、「本装置」と云うこともある。）は、二次空気供給制御を開始又は終了した時点（具体的には、ＣＰＵ８１が二次空気供給制御を実行するための指示を開始、又は二次空気供給制御を停止するための指示を開始した時点）で一回ずつ、二次空気供給装置６０が異常か否かの判定を行うための異常判定処理（具体的には、脈動積算値ＳＵＭｐｕｌｓｅを求めるために前記偏差の積算を前記所定期間Ｔ１に渡って実行する処理）を開始するとともに、同所定期間Ｔ１の経過毎に、二次空気供給装置６０が異常か否かを以下のように判定する。
【００４７】
＜ＣＰＵ８１が二次空気供給制御を実行するための指示を行っている場合＞
この場合、本装置は、ＡＳＶ上流圧力値Ｐａｉ、及び脈動積算値ＳＵＭｐｕｌｓｅが図４に示す領域１に対応する値になっているとき二次空気供給装置６０が正常であると判定する。一方、本装置は、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域１以外の領域に対応する値になっているとき二次空気供給装置６０が異常であると判定する。
【００４８】
ここで、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域２にあることは、例えば、エアポンプ６２が作動せず、且つＡＳＶ６３が開弁しない（閉状態で固定されている）という異常が発生していることを示し、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域３にあることは、例えば、ＡＳＶ６３が開弁しないという異常が発生していることを示し、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域４にあることは、例えば、エアポンプ６２が作動しないという異常が発生していることを示している。
【００４９】
＜ＣＰＵ８１が二次空気供給制御を停止するための指示を行っている場合＞
この場合、本装置は、ＡＳＶ上流圧力値Ｐａｉ、及び脈動積算値ＳＵＭｐｕｌｓｅが図４に示す領域２に対応する値になっているとき二次空気供給装置６０が正常であると判定する。一方、本装置は、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域２以外の領域に対応する値になっているとき二次空気供給装置６０が異常であると判定する。
【００５０】
ここで、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域１にあることは、例えば、エアポンプ６２が停止せず、且つＡＳＶ６３が閉弁しない（開状態で固定されている）という異常が発生していることを示し、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域３にあることは、例えば、エアポンプ６２が停止しないという異常が発生していることを示し、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域４にあることは、例えば、ＡＳＶ６３が閉弁しないという異常が発生していることを示している。そして、本装置は、二次空気供給制御を実行するための指示を行っている場合と二次空気供給制御を停止するための指示を行っている場合とでそれぞれ一回ずつ判定が完了した時点以降は、内燃機関１０の運転が終了するまで同判定を行わない。以上のようにして二次空気供給装置６０が異常であるか否かを判定する手段が異常判定手段に相当する。
【００５１】
（吸気脈動の伝播に基づく異常判定の禁止の概要）
スロットル弁下流圧力Ｐｍが流体力学における臨界圧力（ｃｒｉｔｉｃａｌ  ｐｒｅｓｓｕｒｅ）よりも高い圧力であるとき、同スロットル弁下流圧力Ｐｍが変化すると、スロットル弁通過空気流量ｍｔが変化し得る。一方、スロットル弁下流圧力Ｐｍが前記臨界圧力以下のとき（且つ、スロットル弁開度ＴＡが一定のとき）、スロットル弁４３を通過する空気の流速が音速に達するため同スロットル弁下流圧力Ｐｍに拘わらずスロットル弁通過空気流量ｍｔが一定となる。
【００５２】
より具体的に説明すると、図５は、スロットル弁開度ＴＡが所定の一定値であるときにおける、スロットル弁下流圧力Ｐｍをスロットル弁上流圧力Ｐａ（即ち、大気圧）で除した値（Ｐｍ／Ｐａ）とスロットル弁通過空気流量ｍｔとの関係を示したグラフである。図５に示したように、スロットル弁下流圧力Ｐｍが前記臨界圧力よりも大きいとき（即ち、値（Ｐｍ／Ｐａ）＞０．４１６７のとき）、値（Ｐｍ／Ｐａ）の「１」からの減少（従って、スロットル弁下流圧力Ｐｍの減少）に応じてスロットル弁通過空気流量ｍｔは増大する。この場合、スロットル弁下流圧力Ｐｍがスロットル弁上流圧力Ｐａ（即ち、大気圧）から前記臨界圧力に近づくにつれてスロットル弁下流圧力Ｐｍの変化に対するスロットル弁通過空気流量ｍｔの変化の割合は小さくなる。そして、スロットル弁下流圧力Ｐｍが前記臨界圧力以下のとき（即ち、値（Ｐｍ／Ｐａ）≦０．４１６７のとき）、値（Ｐｍ／Ｐａ）（従って、スロットル弁下流圧力Ｐｍ）に拘わらずスロットル弁通過空気流量ｍｔは一定値となる。ここで、「０．４１６７」は（１／（κ＋１））に基づく値である。κは比熱比であって、本例では空気を酸素原子と窒素原子の２原子にて構成された２原子分子として扱うことにより１．４（一定値）に設定している。
【００５３】
従って、スロットル弁下流圧力Ｐｍが前記臨界圧力よりも大きいとき、スロットル弁４３を通過する空気の流速が音速未満となりスロットル弁下流吸気通路６１内で発生する吸気脈動に応じてスロットル弁通過空気流量ｍｔが変動し得ることでスロットル弁上流の吸気通路内（従って、二次空気供給通路６１内）にも吸気脈動が伝播し得る。この場合、スロットル弁下流圧力Ｐｍがスロットル弁上流圧力Ｐａ（即ち、大気圧）から前記臨界圧力に近づくにつれて二次空気供給通路６１内に吸気脈動が伝播する程度が小さくなる。そして、スロットル弁下流圧力Ｐｍが前記臨界圧力以下のとき、前記空気の流速が音速となり前記吸気脈動に応じてスロットル弁通過空気流量ｍｔが変動しないことからスロットル弁上流の吸気通路内（従って、二次空気供給通路６１内）に吸気脈動が伝播しない。二次空気供給通路６１内に吸気脈動が伝播すると、上記数１に基づいて計算される脈動積算値ＳＵＭｐｕｌｓｅが排気脈動に起因する値とは異なる値として計算され得るから、同脈動積算値ＳＵＭｐｕｌｓｅに基づいて二次空気供給装置６０が異常か否かを判定すると誤判定に繋がる可能性がある。
【００５４】
また、エンジン回転速度ＮＥとスロットル弁開度ＴＡとからスロットル弁下流圧力Ｐｍを求めるためのテーブルをグラフにて示した図６に示すように、スロットル弁下流圧力Ｐｍは、エンジン回転速度ＮＥとスロットル弁開度ＴＡとに基づいて決定され得る。図６から理解できるように、スロットル弁下流圧力Ｐｍは、スロットル弁開度ＴＡの増加、又はエンジン回転速度ＮＥの減少に応じて増大する。図６において斜線で示した領域は、吸気脈動が二次空気供給通路６１に伝播し得る領域（以下、「吸気脈動伝播領域」と称呼する。）である。
【００５５】
以上のことから、本装置は、二次空気供給装置６０が異常か否かの判定を行うための前記異常判定処理が実行されている間（具体的には、脈動積算値ＳＵＭｐｕｌｓｅを求めるために前記所定期間Ｔ１に渡って実行される前記偏差の積算が実行されている間）において、クランクポジションセンサ７４の出力に基づくエンジン回転速度ＮＥ、及びスロットルポジションセンサ７２が検出するスロットル弁開度ＴＡが、図６に示すテーブル（取得手段）における吸気脈動伝播領域に対応する値となっているとき（即ち、取得手段により取得された「吸気脈動が二次空気供給通路６１内に伝播する程度」が所定の程度以上のとき）、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を中止する（即ち、前記判定を行わない）。このようにして異常判定手段による判定を禁止させる手段が異常判定禁止手段に相当する。
【００５６】
そして、本装置は、その後においてエンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが前記吸気脈動伝播領域外（吸気脈動が伝播しない領域）に対応する値となった時点で脈動積算値ＳＵＭｐｕｌｓｅをゼロに初期化するとともに同時点でのエンジン回転速度ＮＥに応じて所定期間Ｔ１を再設定し、同時点から再び、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を前記再設定された所定期間Ｔ１に渡って実行していき、前記再設定された所定期間Ｔ１が経過した時点で、その時点での脈動積算値ＳＵＭｐｕｌｓｅに基づいて前記判定を実行する。
【００５７】
（気柱の振動の発生に基づく異常判定の禁止の概要）
スロットル弁開度ＴＡが変化すると、スロットル弁通過空気流量ｍｔ、従って、エアフィルタ４２を通過する空気流量も変化する。エアフィルタ４２を通過する空気流量が変化するとエアフィルタ４２の圧力損失の大きさが変化する。従って、スロットル弁開度ＴＡが急変すると、スロットル弁上流圧力Ｐａも急変し、この結果、スロットル弁４３の上流側の吸気通路に接続されている二次空気供給通路６１内にて気柱の振動が発生し得る。この気柱の振動の影響は圧力センサ７９の出力として現れる。以上のことから、スロットル弁開度ＴＡが急変すると、その後、前記気柱の振動が減衰するまでの所定時間に渡り、前述の吸気脈動が二次空気供給通路６１内に伝播する場合と同様、前記脈動積算値ＳＵＭｐｕｌｓｅが排気脈動に起因する値とは異なる値として計算され得るから、同脈動積算値ＳＵＭｐｕｌｓｅに基づいて二次空気供給装置６０が異常か否かを判定すると誤判定に繋がる可能性がある。
【００５８】
そこで、本装置は、スロットルポジションセンサ７２が検出するスロットル弁開度ＴＡの変化速度ＤＴＡを求め、同変化速度ＤＴＡの絶対値が閾値ＤＴＡｒｅｆ以上になった時点から前述した気柱の振動が減衰するまでに必要とされる時間よりも若干長い所定時間Ｔ２に渡り、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を中止する（即ち、前記判定を行わない）。このようにして異常判定手段による判定を禁止させる手段も異常判定禁止手段に相当する。また、このようにしてスロットル弁開度ＴＡの前記変化速度ＤＴＡを求める手段が変化速度取得手段に相当する。
【００５９】
そして、本装置は、前記所定時間Ｔ２が経過した時点で脈動積算値ＳＵＭｐｕｌｓｅをゼロに初期化するとともに同時点でのエンジン回転速度ＮＥに応じて所定期間Ｔ１を再設定し、同時点から再び、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を前記再設定された所定期間Ｔ１に渡って実行していき、前記再設定された所定期間Ｔ１が経過した時点で、その時点での脈動積算値ＳＵＭｐｕｌｓｅに基づいて前記判定を実行する。
【００６０】
図７は、二次空気供給装置６０が正常である場合であって、二次空気供給制御が時刻ｔ１まで継続され、同時刻ｔ１にて終了した場合におけるスロットル弁開度ＴＡ、スロットル弁開度ＴＡの変化速度ＤＴＡ、及びＡＳＶ上流圧力値Ｐａｉの変化の一例を示したタイムチャートである。このタイムチャートは、スロットル弁開度ＴＡが、二次空気供給制御終了後の時刻ｔ３までアイドリング相当の小さい値に維持され、同時刻ｔ３にて急激に所定の大きい値まで増大された後に時刻ｔ４まで同所定の大きい値に維持され、同時刻ｔ４にて再び同アイドリング相当の小さい値まで急激に減少された後に同小さい値に維持された場合を示している。また、このタイムチャートでは、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが、同スロットル弁開度ＴＡが前記アイドリング相当の小さい値に維持されているとき前記吸気脈動伝播領域外に対応する値となり、同スロットル弁開度ＴＡが前記アイドリング相当の小さい値に維持されていないとき（図７において、時刻ｔ３以降、時刻ｔ４から短時間が経過した時点までの間）に前記吸気脈動伝播領域に対応する値となっているものと仮定する。
【００６１】
図７に示すように、時刻ｔ１までは、エアポンプ６２が作動中であるとともに、ＡＳＶ６３が開状態となっていて排気脈動がＡＳＶ６３上流の二次空気供給通路６１内に伝播するから（吸気脈動は伝播しない。）、ＡＳＶ上流圧力Ｐａｉは前記所定のエアポンプ吐出圧を中心値として同排気脈動により所定の振幅をもって脈動する。時刻ｔ１にて二次空気供給制御が終了するとエアポンプ６２が停止させられるとともにＡＳＶ６３が閉弁される。
【００６２】
これにより、時刻ｔ１以降、排気脈動がＡＳＶ６３上流の二次空気供給通路６１内に伝播し得なくなるとともに吸気脈動は依然として同二次空気供給通路６１内に伝播しないことから、ＡＳＶ上流圧力値Ｐａｉは脈動しなくなるとともに前記所定のエアポンプ吐出圧から所定の第１負圧（大気圧からエアフィルタ４２の圧力損失相当の圧力を減じた圧力）まで減少する。そして、二次空気供給制御終了時点である時刻ｔ１からエアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過した時点である時刻ｔ２になると、本装置は、同時刻ｔ２時点でのエンジン回転速度ＮＥに応じて前記所定期間Ｔ１を求め、同時刻ｔ２から前記求めた所定期間Ｔ１が経過するまで実行されるべき前記異常判定処理を開始する（前記偏差の積算を開始する）。
【００６３】
時刻ｔ３になると、上述のごとく、スロットル弁開度ＴＡの急増により、スロットル弁通過空気流量ｍｔ（従って、エアフィルタ４２を通過する空気流量）が急増することでエアフィルタ４２の圧力損失が急増し、スロットル弁上流圧力Ｐａ（従って、ＡＳＶ上流圧力値Ｐａｉ）は時刻ｔ３以降の短時間で前記第１負圧から同第１負圧よりも低い第２負圧にまで急激に減少する。また、時刻ｔ３以降、吸気脈動が二次空気供給通路６１内に伝播するようになるから、ＡＳＶ上流圧力値Ｐａｉは時刻ｔ４まで、前記第２負圧を中心値として同吸気脈動により所定の振幅をもって脈動する。
【００６４】
この場合、本装置は、時刻ｔ３以降、時刻ｔ４から短時間が経過した時点までの間、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが前記吸気脈動伝播領域に対応する値となっていることから時刻ｔ２から開始されている脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を中止し続ける。
【００６５】
更には、時刻ｔ４になると、スロットル弁開度ＴＡの急減により、スロットル弁通過空気流量ｍｔ（従って、エアフィルタ４２を通過する空気流量）が急減することでエアフィルタ４２の圧力損失が急減し、スロットル弁上流圧力Ｐａ（従って、ＡＳＶ上流圧力値Ｐａｉ）は時刻ｔ４以降の短時間で前記第２負圧から前記第１負圧にまで急激に上昇する。この結果、二次空気供給通路６１内にて気柱の振動が発生することでＡＳＶ上流圧力値Ｐａｉは、時刻ｔ４以降、前記気柱の振動が完全に減衰するまでの時刻ｔ５までの間、気柱の振動により前記第１負圧を中心値として減衰しながら脈動する。
【００６６】
この場合、本装置は、時刻ｔ４にてスロットル弁開度ＴＡの変化速度ＤＴＡの絶対値が前記閾値ＤＴＡｒｅｆ以上となることから、時刻ｔ４以降、同時刻ｔ４から前記所定時間Ｔ２が経過した時点である時刻ｔ６までの間、時刻ｔ３から既に中止している前記偏差の積算を継続して中止し続ける。そして、時刻ｔ６にて脈動積算値ＳＵＭｐｕｌｓｅをゼロに初期化するとともに同時刻ｔ６でのエンジン回転速度ＮＥに応じて所定期間Ｔ１を再設定し、同時刻ｔ６から再び、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算（従って、前記異常判定処理）を前記再設定された所定期間Ｔ１（図７において時刻ｔ６〜ｔ７）に渡って実行していき、前記再設定された所定期間Ｔ１が経過した時点（図７において時刻ｔ７）で、その時点での脈動積算値ＳＵＭｐｕｌｓｅに基づいて前記判定を実行する。
【００６７】
このようにして、本装置は、排気脈動以外の要因（吸気脈動、及び気柱の振動）に起因する脈動がＡＳＶ６３上流の二次空気供給通路６１内にて発生し得る時刻ｔ３〜ｔ６の間、時刻ｔ２から開始していた脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算を中止するとともに、排気脈動以外の要因に起因する脈動が発生し得ない時刻ｔ６〜ｔ７の間に渡って前記偏差を積算することで得られる脈動積算値ＳＵＭｐｕｌｓｅに基づいて二次空気供給装置６０が異常か否かの判定を実行する。
【００６８】
（実際の作動）
次に、上記のように構成された二次空気供給装置の異常判定装置の実際の作動について、電気制御装置８０のＣＰＵ８１が実行するルーチンをフローチャートにより示した図８〜図１２を参照しながら説明する。
【００６９】
ＣＰＵ８１は、図８に示した二次空気供給制御の実行・停止を制御するためのルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ８００から処理を開始し、ステップ８０５に進んで図示しないイグニッションスイッチＩＧがＯＦＦからＯＮに変更されたか否かを判定する。
【００７０】
いま、運転者がイグニッションスイッチＩＧをＯＦＦからＯＮに変更した直後であるものとして説明を続けると、ＣＰＵ８１はステップ８０５にて「Ｙｅｓ」と判定してステップ８１０に進み、各フラグ、変数の値をそれぞれ「０」に初期化する。ここで、ＡＩ実行時判定完了フラグＦＩＮｅｘｅは、その値が「１」のときＣＰＵ８１がＡＩを実行するための指示を行っている場合（以下、「ＡＩ実行中」と称呼する。）における前記判定が完了していることを示し、その値が「０」のときＡＩ実行中における同判定が完了していないことを示す。ＡＩ停止時判定完了フラグＦＩＮｓｔｏｐは、その値が「１」のときＣＰＵ８１がＡＩを停止するための指示を行っている場合（以下、「ＡＩ停止中」と称呼する。）における前記判定が完了していることを示し、その値が「０」のときＡＩ停止中における同判定が完了していないことを示す。ＡＩ実行中フラグＡＩｅｘｅは、その値が「１」のときＡＩ実行中であることを示し、その値が「０」のときＡＩ停止中であることを示す。異常判定処理実行中フラグＸＨＡＮは、その値が「１」のとき前記異常判定処理（具体的には、脈動積算値ＳＵＭｐｕｌｓｅを求めるための前記偏差の積算）が実行されていることを示し、その値が「０」のとき同異常判定処理が実行されていないことを示す。また、吸入空気流量積算値ＳＵＭＧａは、吸入空気流量Ｇａの積算値である。
【００７１】
次に、ＣＰＵ８１はステップ８１５に進んで、ＡＩ実行中フラグＡＩｅｘｅの値が「０」であって、且つＡＩ開始条件が成立しているか否かを判定する。ここで、ＡＩ開始条件は、冷却水温ＴＨＷが所定温度以下であってイグニッションスイッチＩＧがＯＮからＳＴＡＲＴに変更されたとき（冷間始動がなされたとき）、冷却水温ＴＨＷが所定温度以下であって吸入空気流量積算値ＳＵＭＧａが前記所定の継続期間に相当する吸入空気流量積算値基準値ＳＵＭＧａｒｅｆに達しておらずエンジン回転速度ＮＥが所定時間継続してアイドリング回転速度近傍に維持されているとき等、に成立する。
【００７２】
現時点はイグニッションスイッチＩＧがＯＦＦからＯＮに変更された直後であるから（即ち、内燃機関１０は未だ始動されていないから）現時点ではＡＩ開始条件が成立していない。従って、ＣＰＵ８１はステップ８１５にて「Ｎｏ」と判定してステップ８２０に進み、ＡＩ実行中フラグＡＩｅｘｅの値が「１」であって、且つＡＩ終了条件が成立しているか否かを判定する。ここで、ＡＩ終了条件は、エンジン回転速度ＮＥが所定時間継続してアイドリング回転速度よりも高い所定の走行時回転速度以上に維持されているとき（車両が走行開始したとき）、吸入空気流量積算値ＳＵＭＧａが前記吸入空気流量積算値基準値ＳＵＭＧａｒｅｆに達したとき等、に成立する。
【００７３】
現時点では、ＡＩ実行中フラグＡＩｅｘｅの値が「０」であるから、ＣＰＵ８１はステップ８２０でも「Ｎｏ」と判定してステップ８２５に進み、その時点での吸入空気流量積算値ＳＵＭＧａにエアフローメータ７１により計測されている吸入空気流量Ｇａを加えた値を新たな吸入空気流量積算値ＳＵＭＧａとして設定した後、ステップ８９５に進んで本ルーチンを一旦終了する。以降、冷間始動がなされない限りにおいて、ＣＰＵ８１はステップ８００、８０５、８１５〜８２５の処理を繰り返し実行する。
【００７４】
いま、イグニッションスイッチＩＧがＯＮからＳＴＡＲＴに変更されて冷間始動がなされたものとすると、ＣＰＵ８１はステップ８１５に進んだとき「Ｙｅｓ」と判定してステップ８３０に進み、ＡＩを実行するための指示（具体的には、エアポンプ６２に対する作動指示、及び電磁弁６６に対する開弁指示）を二次空気供給装置６０に対して行う。そして、ＣＰＵ８１はステップ８３５に進んで、ＡＩ実行中フラグＡＩｅｘｅの値を「１」に設定した後、ステップ８２５、８９５に進んで本ルーチンを一旦終了する。これにより、ＡＩが実行開始される。
【００７５】
以降、ＡＩ実行中フラグＡＩｅｘｅの値が「１」になっていることから、ＡＩ終了条件が成立するまでの間、ＣＰＵ８１はステップ８００、８０５、８１５〜８２５の処理を繰り返し実行する。
【００７６】
次に、上記異常判定処理の開始判定について説明すると、ＣＰＵ８１は図９に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ９００から処理を開始し、ステップ９０５に進んで異常判定処理実行中フラグＸＨＡＮの値が「０」であるか否かを判定する。
【００７７】
現時点では、異常判定処理実行中フラグＸＨＡＮの値が「０」であるから、ＣＰＵ８１はステップ９０５にて「Ｙｅｓ」と判定してステップ９１０に進み、ＡＩ実行中フラグＡＩｅｘｅの値が「０」から「１」に変化後エアポンプ６２の回転速度が前記所定の回転速度に達するまでに必要な所定時間が経過し、且つ、ＡＩ実行時判定完了フラグＦＩＮｅｘｅの値が「０」であるか否か、又は、ＡＩ実行中フラグＡＩｅｘｅの値が「１」から「０」に変化後エアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過し、且つ、ＡＩ停止時判定完了フラグＦＩＮｓｔｏｐの値が「０」であるか否かを判定する。即ち、ＡＩ実行中における前記判定が完了していない状態でＡＩ停止中においてＡＩを実行するための指示が開始されたか否か、又は、ＡＩ停止中における前記判定が完了していない状態でＡＩ実行中においてＡＩを停止するための指示が開始されたか否か、が判定される。ここで、ＣＰＵ８１は「Ｎｏ」と判定するときステップ９９５に直ちに進んで本ルーチンを一旦終了する。
【００７８】
いま、前述のステップ８３５が実行された後エアポンプ６２の回転速度が前記所定の回転速度に達するまでに必要な所定時間が経過したものとすると、現時点ではＡＩ実行時判定完了フラグＦＩＮｅｘｅの値が「０」であるからＣＰＵ８１はステップ９１０にて「Ｙｅｓ」と判定してステップ９１５に進み、異常判定処理実行中フラグＸＨＡＮの値を「１」に設定し、続くステップ９２０にて現時点でのエンジン回転速度ＮＥと、エンジン回転速度ＮＥの関数ｇとに基づいて前記所定期間Ｔ１に相当する異常判定処理終了判定基準値Ｎｒｅｆを求める。
【００７９】
次いで、ＣＰＵ８１はステップ９２５に進み、後述するルーチンにて使用するカウンタ値Ｎ、異常判定処理終了フラグＦＩＮの値、及び、脈動積算値ＳＵＭｐｕｌｓｅを総て「０」に初期化するとともに、なまし圧力値の計算の準備のためＡＳＶ上流圧力値Ｐａｉの今回値をなまし圧力値の前回値Ｐｄｕｌｌｂとして格納した後、ステップ９９５に進んで本ルーチンを一旦終了する。ここで、異常判定処理終了フラグＦＩＮは、その値が「１」のとき前記異常判定処理が終了していることを示し、その値が「０」のとき同異常判定処理が終了していないことを示す。
【００８０】
この結果、異常判定処理実行中フラグＸＨＡＮの値が「１」に設定されるから、以降、ＣＰＵ８１は、ステップ９０５にて「Ｎｏ」と判定してステップ９３０に進み、異常判定処理実行中においてＡＩ実行中フラグＡＩｅｘｅの値が変化しない限りにおいてステップ９３０にて「Ｎｏ」と判定してステップ９９５に進むようになる。なお、異常判定処理実行中においてＡＩ実行中フラグＡＩｅｘｅの値が変化する場合については後述する。
【００８１】
次に、脈動積算値の計算について説明すると、ＣＰＵ８１は図１０に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ１０００から処理を開始し、ステップ１００５に進んで異常判定処理実行中フラグＸＨＡＮの値が「１」であるか否かを判定し、「Ｎｏ」と判定するときはステップ１０９５に直ちに進んで本ルーチンを一旦終了する。
【００８２】
いま、前述のステップ９１５が実行された直後であるものとすると、異常判定処理実行中フラグＸＨＡＮの値が「１」になっているから、ＣＰＵ８１はステップ１００５にて「Ｙｅｓ」と判定してステップ１０１０に進み、上記数２に従って、ＡＳＶ上流圧力値の今回値Ｐａｉとなまし圧力値の前回値Ｐｄｕｌｌｂとに基づいてなまし圧力値の今回値Ｐｄｕｌｌを計算する。この時点でのなまし圧力値の前回値Ｐｄｕｌｌｂは先のステップ９２５の処理により格納された値である。
【００８３】
次いで、ＣＰＵ８１はステップ１０１５に進み、ＡＳＶ上流圧力値の今回値Ｐａｉからなまし圧力値の今回値Ｐｄｕｌｌを減じることで偏差Ｐｕｌｓｅを求め、続くステップ１０２０にてその時点での脈動積算値ＳＵＭｐｕｌｓｅ（現時点では先のステップ９２５の処理により「０」になっている。）に前記偏差Ｐｕｌｓｅの絶対値を加えた値を新たな脈動積算値ＳＵＭｐｕｌｓｅとして設定する（脈動積算値ＳＵＭｐｕｌｓｅを更新する）。
【００８４】
次に、ＣＰＵ８１はステップ１０２５に進んで、その時点でのカウンタ値Ｎ（現時点では先のステップ９２５の処理により「０」になっている。）を「１」だけ増大した値を新たなカウンタ値Ｎに設定し、続くステップ１０３０にてカウンタ値Ｎが先のステップ９２０の処理により設定された異常判定処理終了判定基準値Ｎｒｅｆ未満であるか否かを判定する。即ち、カウンタ値Ｎは異常判定処理が開始された時点からの継続時間を表す値であって、カウンタ値Ｎが表す継続時間が前記所定期間Ｔ１に達したか否かが判定される。
【００８５】
現時点では、カウンタ値Ｎは「１」であって異常判定処理終了判定基準値Ｎｒｅｆ未満であるから、ＣＰＵ８１はステップ１０３０にて「Ｙｅｓ」と判定してステップ１０３５に進み、ステップ１０１０にて求めたなまし圧力値の今回値Ｐｄｕｌｌをなまし圧力値の前回値Ｐｄｕｌｌｂに格納した後、ステップ１０９５に進んで本ルーチンを一旦終了する。
【００８６】
以降、ＣＰＵ８１は、ステップ１０２５の繰り返し処理により増大していくカウンタ値Ｎが異常判定処理終了判定基準値Ｎｒｅｆに達するまでの間、ステップ１０００〜１０３５の処理を繰り返し実行する。これにより、脈動積算値ＳＵＭｐｕｌｓｅが積算されていく。そして、（後述する脈動積算値ＳＵＭｐｕｌｓｅの初期化が実行されない限りにおいて）前記所定期間Ｔ１が経過してカウンタ値Ｎが異常判定処理終了判定基準値Ｎｒｅｆに達すると、ＣＰＵ８１はステップ１０３０に進んだとき「Ｎｏ」と判定してステップ１０４０に進み、異常判定処理実行中フラグＸＨＡＮの値を「０」に設定するとともに、続くステップ１０４５にて異常判定処理終了フラグＦＩＮの値を「１」に設定した後ステップ１０９５に進んで本ルーチンを一旦終了する。
【００８７】
以降、異常判定処理実行中フラグＸＨＡＮの値が「０」になっているから、ＣＰＵ８１はステップ１００５にて「Ｎｏ」と判定してステップ１０９５に直ちに進むようになって、脈動積算値ＳＵＭｐｕｌｓｅの計算が終了する。また、ＣＰＵ８１は図９のステップ９０５にて再び「Ｙｅｓ」と判定してステップ９１０に進み、ＡＩ実行中フラグＡＩｅｘｅの値が現時点での値である「１」から「０」に変更された後エアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過したか否かをモニタするようになる。
【００８８】
一方、ＣＰＵ８１は脈動積算値の初期化の判定を行うための図１１に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ１１００から処理を開始し、ステップ１１０５に進んで異常判定処理実行中フラグＸＨＡＮの値が「１」であるか否かを判定し、「Ｎｏ」と判定するときはステップ１１４５に直ちに進んで現時点でのスロットル弁開度ＴＡの値を前回のスロットル弁開度ＴＡｂに格納した後、ステップ１１９５に進んで本ルーチンを一旦終了する。
【００８９】
いま、前述のステップ９１５が実行された直後であるものとすると、異常判定処理実行中フラグＸＨＡＮの値が「１」になっているから、ＣＰＵ８１はステップ１１０５にて「Ｙｅｓ」と判定してステップ１１１０に進み、スロットル弁開度ＴＡから前回のスロットル弁開度ＴＡｂを減じることでスロットル弁開度の変化速度ＤＴＡを求める。ここで、スロットル弁開度ＴＡの値としては、現時点にてスロットルポジションセンサ７２により検出されているスロットル弁開度の値が使用されるとともに、前回のスロットル弁開度ＴＡｂの値としては、前回の本ルーチン実行時において前記ステップ１１４５にて計算されている最新値が使用される。
【００９０】
次いで、ＣＰＵ８１はステップ１１１５に進み、前記スロットル弁開度の変化速度ＤＴＡの絶対値が前記閾値ＤＴＡｒｅｆよりも小さいか否かを判定する。ステップ１１１５の判定において、ＣＰＵ８１は、「Ｎｏ」と判定するときステップ１１２０に進んでカウンタ値Ｍを「０」にクリアした後ステップ１１３０に進む一方、「Ｙｅｓ」と判定するときステップ１１２５に進んでその時点でのカウンタ値Ｍを「１」だけ増大した値を新たなカウンタ値Ｍとして設定してステップ１１３０に進む。従って、カウンタ値Ｍは、異常判定処理実行中フラグＸＨＡＮの値が「１」であるとき（従って、異常判定処理実行中）においてスロットル弁開度の変化速度ＤＴＡの絶対値が前記閾値ＤＴＡｒｅｆ未満となっている状態の継続時間を表す。
【００９１】
ステップ１１３０に進むと、ＣＰＵ８１はカウンタ値Ｍが前記所定時間Ｔ２に相当する気柱振動減衰完了判定基準値Ｍｒｅｆ以下であるか否か（即ち、異常判定処理実行中においてスロットル弁開度の変化速度ＤＴＡの絶対値が前記閾値ＤＴＡｒｅｆ未満となっている状態の継続時間が前記所定時間Ｔ２以下であるか否か）、又は、エンジン回転速度ＮＥとスロットル弁開度ＴＡが前記吸気脈動伝播領域に対応する値になっているか否かを判定する。
【００９２】
ステップ１１３０の判定において、「Ｎｏ」と判定するとき、ＣＰＵ８１はステップ１１４５、ステップ１１９５に直ちに進んで本ルーチンを一旦終了する。一方、異常判定処理実行中においてスロットル弁開度の変化速度ＤＴＡの絶対値が前記閾値ＤＴＡｒｅｆ未満となっている状態の継続時間が前記所定時間Ｔ２以下であってカウンタ値Ｍが気柱振動減衰完了判定基準値Ｍｒｅｆ以下であるとき（図７において時刻ｔ４〜ｔ６を参照。）、又は、エンジン回転速度ＮＥとスロットル弁開度ＴＡが前記吸気脈動伝播領域に対応する値になっているとき（図７において、時刻ｔ３以降、時刻ｔ４から短時間が経過した時点までの間を参照。）、即ち、異常判定処理実行中において脈動積算値ＳＵＭｐｕｌｓｅの初期化条件が成立したとき、ＣＰＵ８１はステップ１１３０にて「Ｙｅｓ」と判定して先のステップ９２０、９２５とそれぞれ同一のステップ１１３５、１１４０の処理を実行した後、ステップ１１４５、ステップ１１９５に進んで本ルーチンを一旦終了する。これにより、脈動積算値ＳＵＭｐｕｌｓｅ、カウンタ値Ｎ等が一旦「０」にクリアされる一方で、その後の図１０、図１１の各ルーチンの繰り返し実行により、再び脈動積算値ＳＵＭｐｕｌｓｅが積算されていくとともに、上述の脈動積算値初期化条件が成立したか否かの判定が実行される。そして、図１０のルーチンの繰り返し実行によりステップ１０３０にて「Ｎｏ」と判定されてステップ１０４０の処理が実行されることにより異常判定処理実行中フラグＸＨＡＮの値が「０」になった時点以降、ＣＰＵ８１はステップ１１０５に進んだとき「Ｎｏ」と判定してステップ１１４５、ステップ１１９５に直ちに進むようになる。
【００９３】
次に、異常判定について説明すると、ＣＰＵ８１は図１２に示したルーチンを所定時間の経過毎に繰り返し実行している。従って、所定のタイミングになると、ＣＰＵ８１はステップ１２００から処理を開始し、ステップ１２０５に進んで異常判定処理終了フラグＦＩＮの値が「０」から「１」に変化したか否かを判定し、「Ｎｏ」と判定するときはステップ１２９５に直ちに進んで本ルーチンを一旦終了する。
【００９４】
いま、前述のステップ１０４５が実行された直後であるものとすると、異常判定処理終了フラグＦＩＮの値が「０」から「１」に変化した直後であるから、ＣＰＵ８１はステップ１２０５にて「Ｙｅｓ」と判定してステップ１２１０に進み、二次空気供給装置６０が異常であるか否かの判定を実行するための処理を開始する。
【００９５】
ＣＰＵ８１はステップ１２１０に進むと、ＡＩ実行中フラグＡＩｅｘｅの値が「１」であるか否かを判定する。現時点では、先のステップ８２０のＡＩ終了条件が未だ成立しておらずにＡＩ実行中であるからＡＩ実行中フラグＡＩｅｘｅの値が「１」に維持されている。従って、ＣＰＵ８１はステップ１２１０にて「Ｙｅｓ」と判定してステップ１２１５に進み、ＡＩ実行時判定完了フラグＦＩＮｅｘｅの値を「１」に設定するとともに、続くステップ１２２０にて先のステップ１０２０の処理にて更新されてきた脈動積算値ＳＵＭｐｕｌｓｅが前記脈動積算基準値ＳＵＭｐｕｌｓｅｒｅｆ以上であって、且つ現時点でのＡＳＶ上流圧力値Ｐａｉが前記基準圧力Ｐｒｅｆ以上になっているか否か（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域１に対応する値になっているか否か）を判定する。
【００９６】
ステップ１２２０の判定において「Ｙｅｓ」と判定するとき（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域１に対応する値になっているとき）、ＣＰＵ８１はステップ１２９５に直ちに進んで本ルーチンを一旦終了する。この場合は、二次空気供給装置６０が正常であると判定される場合に対応している。一方、ステップ１２２０の判定において「Ｎｏ」と判定するとき（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域１以外の領域に対応する値になっていて二次空気供給装置６０が異常であると判定される場合）、ＣＰＵ８１はステップ１２２５に進んで警報ランプ９２を点灯させるための指示を行うとともに二次空気供給装置６０の異常内容をバックアップＲＡＭ８４に記憶した後、ステップ１２９５に進んで本ルーチンを一旦終了する。
【００９７】
以降、異常判定処理終了フラグＦＩＮの値は「１」に維持されているから、ＣＰＵ８１はステップ１２０５にて「Ｎｏ」と判定してステップ１２９５に直ちに進んで本ルーチンを一旦終了するようになる。以上のようにして、冷間始動時において開始されるＡＩが継続されている間に（ＣＰＵ８１がＡＩを実行するための指示を行い続けている間に）、ＡＩ実行中における二次空気供給装置６０が異常か否かの判定が一回行われるとともに、ＡＩ実行中における前記判定が完了したことを表すためＡＩ実行時判定完了フラグＦＩＮｅｘｅの値が「１」に設定される。
【００９８】
次に、この状態（冷間始動時において開始されるＡＩが継続されている状態）から、吸入空気流量積算値ＳＵＭＧａが前記吸入空気流量積算値基準値ＳＵＭＧａｒｅｆに達した場合（即ち、前記所定の継続期間が経過して触媒５３の暖機が完了した場合）について説明する。この場合、前述のごとくＡＩ実行中フラグＡＩｅｘｅの値が「１」になっていて、且つ、先のステップ８２０のＡＩ終了条件が成立している。従って、ＣＰＵ８１は図８のステップ８２０に進んだとき「Ｙｅｓ」と判定してステップ８４０に進み、ＡＩを停止するための指示（具体的には、エアポンプ６２に対する停止指示、及び電磁弁６６に対する閉弁指示）を二次空気供給装置６０に対して行う。そして、ＣＰＵ８１はステップ８４５に進んで、ＡＩ実行中フラグＡＩｅｘｅの値を現時点での値である「１」から「０」に変更した後、ステップ８２５、８９５に進んで本ルーチンを一旦終了する。これにより、ＡＩが停止される。
【００９９】
以降、ＡＩ実行中フラグＡＩｅｘｅの値が「０」になっていて、且つ、吸入空気流量積算値ＳＵＭＧａが前記吸入空気流量積算値基準値ＳＵＭＧａｒｅｆに達していてＡＩ開始条件が成立し得ないことから、ＣＰＵ８１は内燃機関１０が停止するまで（具体的には、イグニッションスイッチＩＧがＯＮからＯＦＦに変更されるまで）ステップ８００、８０５、８１５〜８２５の処理を繰り返し実行する。従って、再び、ＡＩが再開されることはない。
【０１００】
一方、先に説明したように、現時点では、ＣＰＵ８１は、図９のステップ９１０にてＡＩ実行中フラグＡＩｅｘｅの値が「１」から「０」に変更された後エアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過したか否かを繰り返しモニタしている。このとき、先のステップ８４５が実行されてその後エアポンプ６２の回転が完全に停止するまでに必要な所定時間が経過したものとすると、現時点ではＡＩ停止時判定完了フラグＦＩＮｓｔｏｐの値が「０」に維持されたままであるから、ＣＰＵ８１はステップ９１０にて「Ｙｅｓ」と判定して再びステップ９１５以降の処理を実行する。従って、再び異常判定処理実行中フラグＸＨＡＮの値が「１」に設定されるから、ＣＰＵ８１は図１０のステップ１００５、図１１のステップ１１０５にて共に「Ｙｅｓ」と判定して、脈動積算値ＳＵＭｐｕｌｓｅの「０」からの積算（更新）、前記脈動積算値初期化条件が成立したか否かの判定を再開するようになる。
【０１０１】
そして、図１０のルーチンの繰り返しの実行によりステップ１０３０にて「Ｎｏ」と判定されることでステップ１０４５の処理が実行されて異常判定処理終了フラグＦＩＮの値が「０」から「１」に変化されると、ＣＰＵ８１は図１２のステップ１２０５にて再び「Ｙｅｓ」と判定してステップ１２１０に進む。そして、現時点ではＡＩ実行中フラグの値が「０」であることからＣＰＵ８１はステップ１２１０にて「Ｎｏ」と判定してステップ１２３０に進み、ＡＩ停止時判定完了フラグＦＩＮｓｔｏｐの値を「１」に設定するとともに、続くステップ１２３５にて先のステップ１０２０の処理にて更新されてきた脈動積算値ＳＵＭｐｕｌｓｅが前記脈動積算基準値ＳＵＭｐｕｌｓｅｒｅｆ未満であって、且つ現時点でのＡＳＶ上流圧力値Ｐａｉが前記基準圧力Ｐｒｅｆ未満であるか否か（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域２に対応する値になっているか否か）を判定する。
【０１０２】
ステップ１２３５の判定において「Ｙｅｓ」と判定するとき（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域２に対応する値になっているとき）、ＣＰＵ８１はステップ１２９５に直ちに進んで本ルーチンを一旦終了する。この場合は、二次空気供給装置６０が正常であると判定される場合に対応している。一方、ステップ１２３５の判定において「Ｎｏ」と判定するとき（即ち、Ｐａｉ及びＳＵＭｐｕｌｓｅが図４に示す領域２以外の領域に対応する値になっていて二次空気供給装置６０が異常であると判定される場合）、ＣＰＵ８１はステップ１２２５に進んで警報ランプ９２を点灯させるための指示を行うとともに二次空気供給装置６０の異常内容をバックアップＲＡＭ８４に記憶した後、ステップ１２９５に進んで本ルーチンを一旦終了する。
【０１０３】
以降、異常判定処理終了フラグＦＩＮの値は「１」に維持されているから、ＣＰＵ８１はステップ１２０５にて「Ｎｏ」と判定してステップ１２９５に直ちに進んで本ルーチンを一旦終了するようになる。以上のようにして、冷間始動後のＡＩが終了して停止されている間に（ＣＰＵ８１がＡＩを停止するための指示を行い続けている間に）、ＡＩ停止中における二次空気供給装置６０が異常か否かの判定が一回行われるとともに、ＡＩ停止中における前記判定が完了したことを表すためＡＩ停止時判定完了フラグＦＩＮｓｔｏｐの値が「１」に設定される。
【０１０４】
この結果、ＡＩ実行時判定完了フラグＦＩＮｅｘｅの値、及びＡＩ停止時判定完了フラグＦＩＮｓｔｏｐの値が共に「１」になっているから、ＣＰＵ８１は図９のステップ９１０にて「Ｙｅｓ」と判定し得ない。従って、この時点以降、再びＣＰＵ８１がステップ９１５に進むことにより異常判定処理実行中フラグＸＨＡＮの値が「１」に設定されることはなく、脈動積算値ＳＵＭｐｕｌｓｅの積算、及び前記圧力急変の判定が再開されることはない。以上のようにして、二次空気供給制御が開始又は終了された時点で一回ずつ、二次空気供給装置６０が異常か否かの判定を行うための異常判定処理が開始されるとともに、同異常判定処理が終了する毎に、二次空気供給装置６０が異常か否かが判定される。
【０１０５】
また、異常判定処理実行中（即ち、異常判定処理実行中フラグＸＨＡＮの値が「１」になっているとき）において、ＡＩ実行中フラグＡＩｅｘｅの値が変化する場合（具体的には、ＡＩ実行中において図８のステップ８２０のＡＩ終了条件が成立した場合、又は、ＡＩ停止中において図８のステップ８１５のＡＩ開始条件が成立した場合）、ＣＰＵ８１は図９のステップ９０５にて「Ｎｏ」と判定してステップ９３０に進んだとき「Ｙｅｓ」と判定してステップ９３５に進み、異常判定処理実行中フラグＸＨＡＮの値を「０」に設定した後、ステップ９１０の判定を実行する。即ち、この場合、現時点まで実行されていた異常判定処理、及び前記脈動積算値初期化条件が成立したか否かの判定が停止させられ、ステップ９１０の条件が成立している場合に限り、異常判定処理（脈動積算値の「０」からの積算）、及び脈動積算値初期化条件が成立したか否かの判定が再開される。
【０１０６】
以上、説明したように、本発明の実施形態によれば、脈動積算値ＳＵＭｐｕｌｓｅを所定期間Ｔ１に渡って積算（更新）していく間に、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが、図６に示すテーブルにおける吸気脈動伝播領域に対応する値となっているとき、即ち、吸気脈動が二次空気供給通路６１内に伝播するとき、同脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止し、この積算が中止された脈動積算値ＳＵＭｐｕｌｓｅに基づく二次空気供給装置６０の異常判定を行わない。従って、上述の吸気脈動が二次空気供給通路６１内に伝播することによる誤判定がなされることが防止された。
【０１０７】
また、脈動積算値ＳＵＭｐｕｌｓｅを所定期間Ｔ１に渡って積算（更新）していく間に、スロットル弁開度ＴＡの変化速度ＤＴＡの絶対値が閾値ＤＴＡｒｅｆ以上になったとき、即ち、二次空気供給通路６１内にて気柱の振動が発生する（可能性が高い）とき、同変化速度ＤＴＡの絶対値が閾値ＤＴＡｒｅｆ以上になった時点から同気柱の振動が減衰するまでに必要とされる時間よりも若干長い前記所定時間Ｔ２に渡り、同脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止し、この積算が中止された脈動積算値ＳＵＭｐｕｌｓｅに基づく二次空気供給装置６０の異常判定を行わない。従って、上述の気柱の振動が二次空気供給通路６１内にて発生することによる誤判定がなされることが防止された。
【０１０８】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記実施形態においては、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが図６に示すテーブルにおける吸気脈動伝播領域に対応する値となっているとき、即ち、スロットル弁下流圧力Ｐｍが臨界圧力以上のとき脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止するように構成されているが、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが、スロットル弁下流圧力Ｐｍが同臨界圧力よりも所定圧力だけ高い圧力以上であるときに相当する領域に対応する値となっているとき同脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止するように構成してもよい。
【０１０９】
また、上記実施形態においては、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが図６に示すテーブルにおける吸気脈動伝播領域に対応する値となったとき、直ちに脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止するように構成されているが、エンジン回転速度ＮＥ、及びスロットル弁開度ＴＡが図６に示すテーブルにおける吸気脈動伝播領域に対応する値となる状態が所定時間に渡って継続したとき、同脈動積算値ＳＵＭｐｕｌｓｅ（を求めるための前記偏差Ｐｕｌｓｅ）の積算を中止するように構成してもよい。
【０１１０】
また、上記実施形態においては、上記数２に示すように、なまし圧力値の今回値Ｐｄｕｌｌは、ＡＳＶ上流圧力値の今回値Ｐａｉとなまし圧力値の前回値Ｐｄｕｌｌｂとの偏差に基づいて計算されるように構成されているが、なまし圧力値の今回値Ｐｄｕｌｌは、ＡＳＶ上流圧力値の今回値Ｐａｉと同ＡＳＶ上流圧力値の前回値Ｐａｉｂとの偏差に基づいて計算されるように構成してもよい。
【０１１１】
また、上記実施形態においては、上記数２におけるなまし時定数Ｔは一定値であるように構成されているが、上記数２におけるなまし時定数Ｔは内燃機関１０の運転状態（例えば、エンジン回転速度ＮＥ）に応じて変更されるように構成してもよい。
【０１１２】
また、上記実施形態においては、脈動積算値ＳＵＭｐｕｌｓｅは、ＡＳＶ上流圧力値の今回値Ｐａｉと前記なまし圧力値の今回値Ｐｄｕｌｌとの偏差Ｐｕｌｓｅの絶対値を前記所定期間Ｔ１に渡って積算することで算出されるが、演算周期毎のＡＳＶ上流圧力値Ｐａｉを前記所定期間Ｔ１に渡ってそれぞれ記憶し、同記憶した値に基づいて同所定期間Ｔ１におけるＡＳＶ上流圧力値Ｐａｉの平均値Ｐａｉａｖｅを求めるとともに、ＡＳＶ上流圧力値Ｐａｉと同平均値Ｐａｉａｖｅとの偏差の絶対値を同所定期間Ｔ１に渡って積算することで脈動積算値ＳＵＭｐｕｌｓｅを算出するように構成してもよい。更には、上記実施形態においては、脈動レベルとして脈動積算値ＳＵＭｐｕｌｓｅが採用されているが、脈動レベルとして前記所定期間Ｔ１内におけるＡＳＶ上流圧力値Ｐａｉの最大値と最小値との差（振幅値）を採用してもよい。
【０１１３】
また、上記実施形態においては、所定期間Ｔ１（具体的には、異常判定処理終了判定基準値Ｎｒｅｆ）が同所定期間Ｔ１の開始時点でのエンジン回転速度ＮＥに応じて決定されるように構成されているが、所定期間Ｔ１（具体的には、異常判定処理終了判定基準値Ｎｒｅｆ）は一定であってもよい。一方、所定時間Ｔ２（具体的には、気柱振動減衰完了判定基準値Ｍｒｅｆ）が一定であるように構成されているが、所定時間Ｔ２（具体的には、気柱振動減衰完了判定基準値Ｍｒｅｆ）は、同所定時間Ｔ２の開始時点でのエンジン回転速度ＮＥに応じて決定されるように構成してもよい。
【０１１４】
また、上記実施形態においては、圧力センサ７９がエアポンプ６２の下流であってＡＳＶ６３の上流の二次空気供給通路６１に配設されているが、圧力センサ７９がＡＳＶ６３の下流（であってリード弁６４の上流）の二次空気供給通路６１に配設されるように構成してもよい。この場合、ＡＳＶ下流の二次空気供給通路６１内の（二次）空気の圧力値、及び同圧力値の脈動レベル（脈動積算値）に基づいて二次空気供給装置６０が異常であるか否かが判定される。
【０１１５】
また、上記実施形態においては、ＡＩ実行中、又はＡＩ停止中における二次空気供給装置６０が異常か否かの判定がそれぞれ一回づつ実行されるように構成されているが、ＡＩ実行中、又はＡＩ停止中における二次空気供給装置６０が異常か否かの判定がそれぞれ複数回づつ実行されるように構成してもよい。
【図面の簡単な説明】
【図１】本発明による二次空気供給装置の異常判定装置を適用した内燃機関の概略図である。
【図２】図１に示したエアフローメータの出力電圧と計測された吸入空気流量との関係を示したマップである。
【図３】ＡＳＶ上流圧力値となまし圧力値の時間的変化を示したグラフを用いて脈動積算値を説明するための図である。
【図４】図１に示したＣＰＵが二次空気供給装置が異常か否かを判定する際に参照するマップである。
【図５】スロットル弁開度が所定の一定値であるときにおける、スロットル弁下流圧力をスロットル弁上流圧力（即ち、大気圧）で除した値とスロットル弁通過空気流量との関係を示したグラフである。
【図６】エンジン回転速度とスロットル弁開度とからスロットル弁下流圧力を求めるためのテーブルを示したグラフである。
【図７】二次空気供給装置が正常である場合であって、二次空気供給制御が時刻ｔ１まで継続され、同時刻ｔ１にて終了した場合におけるスロットル弁開度、スロットル弁開度の変化速度、及びＡＳＶ上流圧力値の変化の一例を示したタイムチャートである。
【図８】図１に示したＣＰＵが実行するＡＩの実行・停止を制御するためのルーチンを示したフローチャートである。
【図９】図１に示したＣＰＵが実行する異常判定処理の開始判定を行うためのルーチンを示したフローチャートである。
【図１０】図１に示したＣＰＵが実行する脈動積算値を計算するためのルーチンを示したフローチャートである。
【図１１】図１に示したＣＰＵが実行する脈動積算値の初期化判定を行うためのルーチンを示したフローチャートである。
【図１２】図１に示したＣＰＵが実行する二次空気供給装置が異常か否かを判定するためのルーチンを示したフローチャートである。
【符号の説明】
１０…内燃機関、４１…吸気管、４２…エアフィルタ、４３…スロットル弁、５３…触媒、６０…二次空気供給装置、６１…二次空気供給通路、６２…エアポンプ、６３…ＡＳＶ（エアスイッチングバルブ）、６４…リード弁、６５…負圧導入通路、６６…電磁弁、７１…エアフローメータ、７２…スロットルポジションセンサ、７４…クランクポジションセンサ、７５…水温センサ、７９…圧力センサ、８１…ＣＰＵ
【図１】
2004324512.tif 000003
【図２】
2004324512.tif 000004
【図３】
2004324512.tif 000005
【図４】
2004324512.tif 000006
【図５】
2004324512.tif 000007
【図６】
2004324512.tif 000008
【図７】
2004324512.tif 000009
【図８】
2004324512.tif 000010
【図９】
2004324512.tif 000011
【図１０】
2004324512.tif 000012
【図１１】
2004324512.tif 000013
【図１２】
2004324512.tif 000014