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