(57)【特許請求の範囲】
【請求項１】
内燃機関から排出される排気ガスに晒されたガスセンサの出力する当該排気ガス中の特定ガス成分の濃度に応じた検出信号に基づいて、前記ガスセンサが異常状態にあるか否かを診断するためのガスセンサの異常診断方法であって、
内燃機関に供給される混合気の目標空燃比が特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転した反転回数の計数が行われる目標空燃比反転回数計数工程と、
前記反転回数の計数が開始されてから予め定められた複数回の回数に達するまでの期間である診断期間において、一定のタイミング毎に前記ガスセンサの前記検出信号が取得される検出信号取得工程と、
取得された前記検出信号に対し複数のなまし演算が適用され、なまし度合いの異なる第１なまし信号および第２なまし信号が算出されるなまし信号算出工程と、
当該なまし信号算出工程において算出された前記第１なまし信号と前記第２なまし信号との偏差が算出される偏差算出工程と、
前記診断期間に得られた前記偏差に基づき、前記ガスセンサが異常状態にあるか否かが診断される異常診断工程と
を有することを特徴とするガスセンサの異常診断方法。
【請求項２】
前記なまし信号算出工程は、
取得された前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算が適用され、前記第１なまし信号が算出される第１なまし信号算出工程と、
前記第１なまし係数よりも前記検出信号に対するなまし度合いが大きくなるように予め定められた第２なまし係数を用い、前記検出信号に対してなまし演算が適用され、前記第２なまし信号が算出される第２なまし信号算出工程と
を有することを特徴とする請求項１に記載のガスセンサの異常診断方法。
【請求項３】
前記なまし信号算出工程は、
取得された前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算が適用され、前記第１なまし信号が算出される第１なまし信号算出工程と、
前記第１なまし係数、または、前記第１なまし係数とは異なるように予め定められた第２なまし係数のいずれか一方を用い、前記第１なまし信号に対してなまし演算が適用され、前記第２なまし信号が算出される第２なまし信号算出工程と
を有することを特徴とする請求項１に記載のガスセンサの異常診断方法。
【請求項４】
前記診断期間に前記偏差算出工程によって得られたすべての前記偏差を合計した偏差合計値が算出される偏差合計値算出工程を有し、
前記異常診断工程では、前記偏差合計値と、予め定められたしきい値との比較結果に基づいて、前記ガスセンサが異常状態にあるか否かが判断されることを特徴とする請求項１乃至３のいずれかに記載のガスセンサの異常診断方法。
【請求項５】
前記診断期間に前記偏差算出工程によって得られたすべての前記偏差を合計した偏差合計値が算出される偏差合計値算出工程と、
前記診断期間における前記偏差合計値の算出が複数回の当該診断期間に対し繰り返し行われる繰り返し算出工程と
を有すると共に、
前記異常診断工程が、
算出された複数回分の前記偏差合計値と、予め定められたしきい値との比較がそれぞれ行われ、各比較結果に対しそれぞれ前記ガスセンサが異常状態にあるか否かの仮の判断が行われる異常状態仮判断工程と、
当該異常状態仮判断工程において、前記ガスセンサが異常状態にあると仮の判断がなされた回数に基づいて、前記ガスセンサが異常状態にあるか否かの最終判断が行われる異常状態最終判断工程と
を有することを特徴とする請求項１乃至３のいずれかに記載のガスセンサの異常診断方法。
【請求項６】
前記診断期間中において、前記第１なまし信号または前記第２なまし信号の状態が、増加状態から減少状態へ、または減少状態から増加状態へ、少なくともいずれか一方に移行する頻度に応じ、前記しきい値が変更されるしきい値変更工程を有することを特徴とする請求項４または５に記載のガスセンサの異常診断方法。
【請求項７】
前記しきい値変更工程は、
前記診断期間において、当該診断期間を前記反転回数が加算される毎に区切った単位診断期間のそれぞれについて、前記第１なまし信号または前記第２なまし信号の状態が増加状態から減少状態へ、または減少状態から増加状態へのいずれにも移行しなかった前記単位診断期間の回数が、非移行回数として計数される非移行回数計数工程と、
計数された前記非移行回数に対応して予め定められた値が前記しきい値として採用されるしきい値採用工程と
を有することを特徴とする請求項６に記載のガスセンサの異常診断方法。
【請求項８】
前記ガスセンサは、前記排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する酸素センサであることを特徴とする請求項１乃至７のいずれかに記載のガスセンサの異常診断方法。
【請求項９】
内燃機関から排出される排気ガスに晒されたガスセンサの出力する当該排気ガス中の特定ガス成分の濃度に応じた検出信号に基づいて、前記ガスセンサが異常状態にあるか否かを診断するためのガスセンサの異常診断装置であって、
内燃機関に供給される混合気の目標空燃比が特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転した反転回数を計数する目標空燃比反転回数計数手段と、
前記反転回数の計数を開始してから予め定められた複数回の回数に達するまでの期間である診断期間において、一定のタイミング毎に前記ガスセンサの前記検出信号を取得する検出信号取得手段と、
取得した前記検出信号に対し複数のなまし演算を適用し、なまし度合いの異なる第１なまし信号および第２なまし信号の算出を行うなまし信号算出手段と、
当該なまし信号算出手段によって算出した前記第１なまし信号と前記第２なまし信号との偏差を算出する偏差算出手段と、
前記診断期間に得た前記偏差に基づき、前記ガスセンサが異常状態にあるか否かを診断する異常診断手段と
を備えたことを特徴とするガスセンサの異常診断装置。
【請求項１０】
前記なまし信号算出手段は、
取得した前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算を適用し、前記第１なまし信号を算出する第１なまし信号算出手段と、
前記第１なまし係数よりも前記検出信号に対するなまし度合いが大きくなるように予め定められた第２なまし係数を用い、前記検出信号に対してなまし演算を適用し、前記第２なまし信号を算出する第２なまし信号算出手段と
を備えたことを特徴とする請求項９に記載のガスセンサの異常診断装置。
【請求項１１】
前記なまし信号算出手段は、
取得した前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算を適用し、前記第１なまし信号を算出する第１なまし信号算出手段と、
前記第１なまし係数、または、前記第１なまし係数とは異なるように予め定められた第２なまし係数のいずれか一方を用い、前記第１なまし信号に対してなまし演算を適用し、前記第２なまし信号を算出する第２なまし信号算出手段と
を備えたことを特徴とする請求項９に記載のガスセンサの異常診断装置。
【請求項１２】
前記診断期間に前記偏差算出手段によって得たすべての前記偏差を合計した偏差合計値を算出する偏差合計値算出手段を備え、
前記異常診断手段は、前記偏差合計値と、予め定められたしきい値との比較結果に基づいて、前記ガスセンサが異常状態にあるか否かを判断することを特徴とする請求項９乃至１１のいずれかに記載のガスセンサの異常診断装置。
【請求項１３】
前記診断期間に前記偏差算出手段によって得たすべての前記偏差を合計した偏差合計値を算出する偏差合計値算出手段と、
前記診断期間における前記偏差合計値の算出を複数回の当該診断期間に対し繰り返し行う繰り返し算出手段と
を備えると共に、
前記異常診断手段が、
算出した複数回分の前記偏差合計値と、予め定められたしきい値との比較をそれぞれ行い、各比較結果に対しそれぞれ前記ガスセンサが異常状態にあるか否かの仮の判断を行う異常状態仮判断手段と、
当該異常状態仮判断手段によって前記ガスセンサが異常状態にあると仮の判断を行った回数に基づいて、前記ガスセンサが異常状態にあるか否かの最終判断を行う異常状態最終判断手段と
を備えたことを特徴とする請求項９乃至１１のいずれかに記載のガスセンサの異常診断装置。
【請求項１４】
前記診断期間中において、前記第１なまし信号または前記第２なまし信号の状態が、増加状態から減少状態へ、または減少状態から増加状態へ、少なくともいずれか一方に移行する頻度に応じ、前記しきい値を変更するしきい値変更手段を備えたことを特徴とする請求項１２または１３に記載のガスセンサの異常診断装置。
【請求項１５】
前記しきい値変更手段は、
前記診断期間において、当該診断期間を前記反転回数が加算される毎に区切った単位診断期間のそれぞれについて、前記第１なまし信号または前記第２なまし信号の状態が増加状態から減少状態へ、または減少状態から増加状態へのいずれにも移行しなかった前記単位診断期間の回数を、非移行回数として計数する非移行回数計数手段と、
計数された前記非移行回数に対応して予め定められた値を前記しきい値として採用するしきい値採用手段と
を備えたことを特徴とする請求項１４に記載のガスセンサの異常診断装置。
【請求項１６】
前記ガスセンサは、前記排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する酸素センサであることを特徴とする請求項９乃至１５のいずれかに記載のガスセンサの異常診断装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、排気ガスの空燃比を検出するガスセンサが異常状態にあるか否かを診断するためのガスセンサの異常診断方法、ガスセンサの異常診断装置に関するものである。
【背景技術】
【０００２】
従来より、自動車のエンジンなどの内燃機関の排気通路に取り付けられ、排気ガス中の特定ガス成分の濃度を検出するガスセンサが知られている。そして、ガスセンサ（詳細には、ガスセンサを構成するセンサ素子）から出力される検出信号はＥＣＵ（電子制御ユニット）に送信され、ＥＣＵでは、受信した検出信号に基づき排気ガスの空燃比を検出し、エンジンにおける燃料の噴射量の調整等の空燃比フィードバック制御が行われる。なお、このようなガスセンサとしては、排気ガス中の酸素濃度を検出する酸素センサが知られており、近年ではより精密な空燃比フィードバック制御を実現する等の目的から、排気ガス中の酸素濃度に応じてリニアにセンサ出力値が変化する全領域空燃比センサが使用されるようになってきている。
【０００３】
ところで、ガスセンサを長期間使用した場合、ガスセンサのプロテクタ（詳細にはセンサ素子の周囲を覆って保護するプロテクタ）に形成されたガス流通孔や排気ガスをセンサ素子内部に導く多孔質部が目詰まりを起こす等の経時劣化を生ずることがある。ガスセンサにこのような劣化が生ずると、排気ガス中の特定ガス成分の濃度変化に応じたセンサ出力値の応答が、劣化していないガスセンサ（即ち、正常時）と比べ遅くなる。
【０００４】
このようにガスセンサが劣化した場合、エンジンの運転性能の低下や燃費の低下、排気ガスの清浄性の低下等を招く虞があるため、ガスセンサの検出信号に基づいてガスセンサが異常状態にあるか否かの診断が行われている。例えば、正常なガスセンサの出力する検出信号の値の範囲外に設けた基準値と、診断対象となるガスセンサの出力する検出信号との偏差を積分し、その積分値を劣化診断の基準となる判定値（劣化基準値）と比較することで、ガスセンサが異常状態（劣化状態）にあるか否かを診断する方法および異常診断装置が開示されている（例えば、特許文献１参照。）。
【０００５】
この特許文献１では、偏差を求めるための基準値として、混合気の目標空燃比がリッチ側にある場合とリーン側にある場合との２種類が用意されている。正常なガスセンサでは、目標空燃比の反転に追従して検出信号も反転し、その値がリッチ側の基準値とリーン側の基準値とにそれぞれ近づくように変化するため、基準値と検出値との偏差は比較的小さくなる。一方、異常の生じたガスセンサでは、目標空燃比の反転に対する検出信号の反転が遅れ、検出信号の値とリッチ側またはリーン側の基準値との偏差が比較的大きくなる。このことから偏差の積分値を求めれば、ガスセンサの劣化の状態に応じた積分値の差が生ずることとなり、その積分値を劣化基準値と比較することで異常診断が可能となるのである。
【特許文献１】特開平３−２０２７６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながらガスセンサは、同一品番のものであっても、特定ガス成分の濃度が同じ状況下に晒された際に示す検出信号の値が狙い値よりも上下するものが含まれる、いわゆる個体間バラツキ（製造バラツキ）を少なからず有する。また、特定ガス成分の濃度が同じ状況下に晒された際に示す、検出信号の値が狙い値からずれる現象は、ガスセンサを駆動するセンサ駆動回路部の個体間バラツキも影響する。このため、特許文献１に開示されたガスセンサの異常診断方法および異常診断装置のように、検出信号との間で偏差を求めるための基準値を固定値に設定した場合には、劣化状態が同程度のガスセンサであっても、上記の個体間バラツキに起因して求められる偏差がまちまちとなるため、異常診断を精度よく行うことができるとは言い難かった。
【０００７】
本発明は上記問題点を解決するためになされたものであり、ガスセンサが異常状態にあるか否かの診断をより精度よく行うことができるガスセンサの異常診断方法、ガスセンサの異常診断装置を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するために、請求項１に係る発明のガスセンサの異常診断方法は、内燃機関から排出される排気ガスに晒されたガスセンサの出力する当該排気ガス中の特定ガス成分の濃度に応じた検出信号に基づいて、前記ガスセンサが異常状態にあるか否かを診断するためのガスセンサの異常診断方法であって、内燃機関に供給される混合気の目標空燃比が特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転した反転回数の計数が行われる目標空燃比反転回数計数工程と、前記反転回数の計数が開始されてから予め定められた複数回の回数に達するまでの期間である診断期間において、一定のタイミング毎に前記ガスセンサの前記検出信号が取得される検出信号取得工程と、取得された前記検出信号に対し複数のなまし演算が適用され、なまし度合いの異なる第１なまし信号および第２なまし信号が算出されるなまし信号算出工程と、当該なまし信号算出工程において算出された前記第１なまし信号と前記第２なまし信号との偏差が算出される偏差算出工程と、前記診断期間に得られた前記偏差に基づき、前記ガスセンサが異常状態にあるか否かが診断される異常診断工程とを有することを特徴とする。
【０００９】
また、請求項２に係る発明のガスセンサの異常診断方法は、請求項１に記載の発明の構成に加え、前記なまし信号算出工程は、取得された前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算が適用され、前記第１なまし信号が算出される第１なまし信号算出工程と、前記第１なまし係数よりも前記検出信号に対するなまし度合いが大きくなるように予め定められた第２なまし係数を用い、前記検出信号に対してなまし演算が適用され、前記第２なまし信号が算出される第２なまし信号算出工程とを有することを特徴とする。
【００１０】
また、請求項３に係る発明のガスセンサの異常診断方法は、請求項１に記載の発明の構成に加え、前記なまし信号算出工程は、取得された前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算が適用され、前記第１なまし信号が算出される第１なまし信号算出工程と、前記第１なまし係数、または、前記第１なまし係数とは異なるように予め定められた第２なまし係数のいずれか一方を用い、前記第１なまし信号に対してなまし演算が適用され、前記第２なまし信号が算出される第２なまし信号算出工程とを有することを特徴とする。
【００１１】
また、請求項４に係る発明のガスセンサの異常診断方法は、請求項１乃至３のいずれかに記載の発明の構成に加え、前記診断期間に前記偏差算出工程によって得られたすべての前記偏差を合計した偏差合計値が算出される偏差合計値算出工程を有し、前記異常診断工程では、前記偏差合計値と、予め定められたしきい値との比較結果に基づいて、前記ガスセンサが異常状態にあるか否かが判断されることを特徴とする。
【００１２】
また、請求項５に係る発明のガスセンサの異常診断方法は、請求項１乃至３のいずれかに記載の発明の構成に加え、前記診断期間に前記偏差算出工程によって得られたすべての前記偏差を合計した偏差合計値が算出される偏差合計値算出工程と、前記診断期間における前記偏差合計値の算出が複数回の当該診断期間に対し繰り返し行われる繰り返し算出工程とを有すると共に、前記異常診断工程が、算出された複数回分の前記偏差合計値と、予め定められたしきい値との比較がそれぞれ行われ、各比較結果に対しそれぞれ前記ガスセンサが異常状態にあるか否かの仮の判断が行われる異常状態仮判断工程と、当該異常状態仮判断工程において、前記ガスセンサが異常状態にあると仮の判断がなされた回数に基づいて、前記ガスセンサが異常状態にあるか否かの最終判断が行われる異常状態最終判断工程とを有することを特徴とする。
【００１３】
また、請求項６に係る発明のガスセンサの異常診断方法は、請求項４または５に記載の発明の構成に加え、前記診断期間中において、前記第１なまし信号または前記第２なまし信号の状態が、増加状態から減少状態へ、または減少状態から増加状態へ、少なくともいずれか一方に移行する頻度に応じ、前記しきい値が変更されるしきい値変更工程を有することを特徴とする。
【００１４】
また、請求項７に係る発明のガスセンサの異常診断方法は、請求項６に記載の発明の構成に加え、前記しきい値変更工程は、前記診断期間において、当該診断期間を前記反転回数が加算される毎に区切った単位診断期間のそれぞれについて、前記第１なまし信号または前記第２なまし信号の状態が増加状態から減少状態へ、または減少状態から増加状態へのいずれにも移行しなかった前記単位診断期間の回数が、非移行回数として計数される非移行回数計数工程と、計数された前記非移行回数に対応して予め定められた値が前記しきい値として採用されるしきい値採用工程とを有することを特徴とする。
【００１５】
また、請求項８に係る発明のガスセンサの異常診断方法は、請求項１乃至７のいずれかに記載の発明の構成に加え、前記ガスセンサは、前記排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する酸素センサであることを特徴とする。
【００１６】
また、請求項９に係る発明のガスセンサの異常診断装置は、内燃機関から排出される排気ガスに晒されたガスセンサの出力する当該排気ガス中の特定ガス成分の濃度に応じた検出信号に基づいて、前記ガスセンサが異常状態にあるか否かを診断するためのガスセンサの異常診断装置であって、内燃機関に供給される混合気の目標空燃比が特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転した反転回数を計数する目標空燃比反転回数計数手段と、前記反転回数の計数を開始してから予め定められた複数回の回数に達するまでの期間である診断期間において、一定のタイミング毎に前記ガスセンサの前記検出信号を取得する検出信号取得手段と、取得した前記検出信号に対し複数のなまし演算を適用し、なまし度合いの異なる第１なまし信号および第２なまし信号の算出を行うなまし信号算出手段と、当該なまし信号算出手段によって算出した前記第１なまし信号と前記第２なまし信号との偏差を算出する偏差算出手段と、前記診断期間に得た前記偏差に基づき、前記ガスセンサが異常状態にあるか否かを診断する異常診断手段とを備えている。
【００１７】
また、請求項１０に係る発明のガスセンサの異常診断装置は、請求項９に記載の発明の構成に加え、前記なまし信号算出手段は、取得した前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算を適用し、前記第１なまし信号を算出する第１なまし信号算出手段と、前記第１なまし係数よりも前記検出信号に対するなまし度合いが大きくなるように予め定められた第２なまし係数を用い、前記検出信号に対してなまし演算を適用し、前記第２なまし信号を算出する第２なまし信号算出手段とを備えている。
【００１８】
また、請求項１１に係る発明のガスセンサの異常診断装置は、請求項９に記載の発明の構成に加え、前記なまし信号算出手段は、取得した前記検出信号に対し、予め定められた第１なまし係数を用いたなまし演算を適用し、前記第１なまし信号を算出する第１なまし信号算出手段と、前記第１なまし係数、または、前記第１なまし係数とは異なるように予め定められた第２なまし係数のいずれか一方を用い、前記第１なまし信号に対してなまし演算を適用し、前記第２なまし信号を算出する第２なまし信号算出手段とを備えている。
【００１９】
また、請求項１２に係る発明のガスセンサの異常診断装置は、請求項９乃至１１のいずれかに記載の発明の構成に加え、前記診断期間に前記偏差算出手段によって得たすべての前記偏差を合計した偏差合計値を算出する偏差合計値算出手段を備え、前記異常診断手段は、前記偏差合計値と、予め定められたしきい値との比較結果に基づいて、前記ガスセンサが異常状態にあるか否かを判断することを特徴とする。
【００２０】
また、請求項１３に係る発明のガスセンサの異常診断装置は、請求項９乃至１１のいずれかに記載の発明の構成に加え、前記診断期間に前記偏差算出手段によって得たすべての前記偏差を合計した偏差合計値を算出する偏差合計値算出手段と、前記診断期間における前記偏差合計値の算出を複数回の当該診断期間に対し繰り返し行う繰り返し算出手段とを備えると共に、前記異常診断手段が、算出した複数回分の前記偏差合計値と、予め定められたしきい値との比較をそれぞれ行い、各比較結果に対しそれぞれ前記ガスセンサが異常状態にあるか否かの仮の判断を行う異常状態仮判断手段と、当該異常状態仮判断手段によって前記ガスセンサが異常状態にあると仮の判断を行った回数に基づいて、前記ガスセンサが異常状態にあるか否かの最終判断を行う異常状態最終判断手段とを備えたことを特徴とする。
【００２１】
また、請求項１４に係る発明のガスセンサの異常診断装置は、請求項１２または１３に記載の発明の構成に加え、前記診断期間中において、前記第１なまし信号または前記第２なまし信号の状態が、増加状態から減少状態へ、または減少状態から増加状態へ、少なくともいずれか一方に移行する頻度に応じ、前記しきい値を変更するしきい値変更手段を備えている。
【００２２】
また、請求項１５に係る発明のガスセンサの異常診断装置は、請求項１４に記載の発明の構成に加え、前記しきい値変更手段は、前記診断期間において、当該診断期間を前記反転回数が加算される毎に区切った単位診断期間のそれぞれについて、前記第１なまし信号または前記第２なまし信号の状態が増加状態から減少状態へ、または減少状態から増加状態へのいずれにも移行しなかった前記単位診断期間の回数を、非移行回数として計数する非移行回数計数手段と、計数された前記非移行回数に対応して予め定められた値を前記しきい値として採用するしきい値採用手段とを備えている。
【００２３】
また、請求項１６に係る発明のガスセンサの異常診断装置は、請求項９乃至１５のいずれかに記載の発明の構成に加え、前記ガスセンサは、前記排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する酸素センサであることを特徴とする。
【発明の効果】
【００２４】
請求項１に係る発明のガスセンサの異常診断方法では、診断期間において、ガスセンサの出力する検出信号に対し複数のなまし演算を適用してなまし度合いの異なる２つのなまし信号（第１なまし信号および第２なまし信号）を算出し、さらに第１なまし信号および第２なまし信号の偏差を求め、求めた偏差から、ガスセンサが異常状態にあるか否かを診断している。第１なまし信号および第２なまし信号は検出信号を基に算出されるものであり、共にガスセンサの検出信号の変化に対して異なる緩慢さで追従するように変化する。このため、異常診断の対象であるガスセンサより出力される検出信号の値が、ガスセンサやセンサ駆動回路部の個体間バラツキの影響によって狙い値よりも上側または下側の値を示す傾向にある場合、その検出信号を基に求められる第１なまし信号および第２なまし信号もまた、それぞれガスセンサの検出信号の変化に追従して変化する。つまり、ガスセンサが異常状態にあるか否か診断基準として用いる偏差を、検出信号の変化に共に追従する第１なまし信号と第２なまし信号とから求めれば、上記の個体間バラツキの影響を軽減させることができる。従って、同程度の劣化状態のガスセンサであっても、従来のように個体間バラツキに起因して求められる偏差がまちまちとなってしまうことを抑制することができる。このように、本発明のガスセンサの異常診断方法によれば、ガスセンサが異常状態にあるか否かの診断をより精度よく行うことができる。
【００２５】
このような第１なまし信号および第２なまし信号は、請求項２に係る発明のように、互いに異なるなまし係数（第１なまし係数および第２なまし係数）を用いたなまし演算を検出信号に対してそれぞれ適用して算出すればよい。また、請求項３に係る発明のように、検出信号に対して第１なまし係数を用いたなまし演算を適用して第１なまし信号を算出し、さらにその第１なまし信号に対し、第１なまし係数または第２なまし係数を用いたなまし演算を適用して第２なまし信号を算出してもよい。このようななまし演算を適用することにより、検出信号を基として、なまし度合いの異なる第１なまし信号および第２なまし信号を容易に得ることができる。
【００２６】
また、ガスセンサが異常状態にあるか否かを診断するために第１なまし信号および第２なまし信号から算出される偏差の取り得る範囲は、第１なまし係数と第２なまし係数とを組み合わせることにより適宜調整することができる。これは、第１なまし信号や第２なまし信号のなまし度合いを小さくするほど、検出信号が瞬間的に大きな変化を示した場合の追従性を高められ、なまし度合いを大きくするほど、その追従性を低く調整できることによる。従って、第１なまし係数と第２なまし係数との組み合わせを適宜調整することにより、ガスセンサの異常状態の診断を行う上での感度を調整することができ、異常診断の精度をより高めることができる。
【００２７】
もっとも、検出信号が取得される一定のタイミング毎に求めた個々の偏差に基づきガスセンサの異常診断を行ってもよいが、請求項４に係る発明のように、診断期間中に得られたすべての偏差を合計した偏差合計値を用いてガスセンサの異常診断を行えば、正常状態にある場合に取り得る偏差合計値の範囲と、異常状態にある場合に取り得る偏差合計値の範囲との差異をより明確にすることができ、ガスセンサが異常状態にあるか否かの診断をさらに精度よく行うことができる。
【００２８】
また、請求項５に係る発明のように、診断期間を複数回繰り返し行い、各診断期間毎にガスセンサの異常診断を行い、ガスセンサが異常状態にあると判断した回数を求め、これに基づいて、ガスセンサが異常状態にあるか否かの最終判断を行えば、ガスセンサが一時的に異常状態を示した場合でも直ちに異常と判定してしまうことがなく、ガスセンサが異常状態にあるか否かの診断をより精度よく行うことができる。
【００２９】
ところで、内燃機関に供給される混合気の目標空燃比を、特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転させるように空燃比フィードバック制御を行うにあたり、ガスセンサの検出信号に基づいて求めた空燃比（実空燃比）が目標空燃比に近づくようにフィードバック補正を実行することが一般的に行われる。一方、このような空燃比フィードバック制御が実行される内燃機関において、ガスセンサの劣化（応答劣化）が生ずると、軽度な劣化の際には、第１なまし信号と第２なまし信号との偏差は正常時に比べて小さくなるが、過度に劣化が進んだ際には、逆に第１なまし信号と第２なまし信号との偏差が大きくなってしまい、ガスセンサが異常状態にあるか否かの診断を的確に行えない可能性がある。
【００３０】
例えば、ガスセンサの劣化（応答劣化）が、目標空燃比の反転に対してガスセンサの検出信号の応答が半周期分遅れるような状態まで進行した場合を考える。このとき、例えば目標空燃比がリッチであるにも関わらず、ガスセンサの検出信号はリーンに対応した出力を示すことになるが、このような状況で上記検出信号に基づいて求めた空燃比（実空燃比）が目標空燃比に近づくようにフィードバック補正が実行されると、過度なフィードバック補正となり、次に目標空燃比がリーンになった場合に、ガスセンサの検出信号はよりリッチに対応した値を示すことになる。そして、このような状況が繰り返されると、ガスセンサの検出信号はより増長して出力されることになるため、ガスセンサの劣化が進行しているにも関わらず第１なまし信号と第２なまし信号との偏差が小さくならずに、正常なガスセンサとの識別が的確に図れない可能性がある。
【００３１】
そこで、請求項６に係る発明のように、第１なまし信号または第２なまし信号が診断期間中に増加状態から減少状態へ、または減少状態から増加状態へ、少なくとも一方に移行する（反転する）頻度に応じ、ガスセンサが異常状態にあるか否かを判定するためのしきい値を変更すれば、ガスセンサの劣化状態が過度に進んだ場合に診断期間が実行されても、精確に、ガスセンサが異常状態にあるか否かの診断を行うことができる。換言すれば、本発明によれば、ガスセンサの劣化状態の進行状態に関わらず、診断期間がどのタイミングで実行されても、精度良くガスセンサの異常診断を行うことができる。
【００３２】
そして請求項７に係る発明のように、診断期間を反転回数が加算される毎に区切った単位診断期間のそれぞれにおいて、第１なまし信号または第２なまし信号の状態が移行しなかった（反転しなかった）非移行回数を求め、診断期間中の非移行回数に応じたしきい値を採用すれば、診断期間が任意のタイミングで開始されることに伴い偏差合計値の取り得る範囲が変動しても、精確に、ガスセンサが異常状態にあるか否かの診断を行うことができる。
【００３３】
そして、このようなガスセンサの異常診断方法を、請求項８に係る発明のように、排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する構成の酸素センサに適用することで、この酸素センサの異常状態を精度よく、確実に検出することができる。
【００３４】
請求項９に係る発明のガスセンサの異常診断装置では、診断期間において、ガスセンサの出力する検出信号に対し複数のなまし演算を適用してなまし度合いの異なる２つのなまし信号（第１なまし信号および第２なまし信号）を算出し、さらに第１なまし信号および第２なまし信号の偏差を求め、求めた偏差から、ガスセンサが異常状態にあるか否かを診断している。第１なまし信号および第２なまし信号は検出信号を基に算出されるものであり、共にガスセンサの検出信号の変化に対して異なる緩慢さで追従するように変化する。このため、異常診断の対象であるガスセンサより出力される検出信号の値が、ガスセンサやセンサ駆動回路部の個体間バラツキの影響によって狙い値よりも上側または下側の値を示す傾向にある場合、その検出信号を基に求められる第１なまし信号および第２なまし信号もまた、それぞれガスセンサの検出信号の変化に追従して変化する。つまり、ガスセンサが異常状態にあるか否か診断基準として用いる偏差を、検出信号の変化に共に追従する第１なまし信号と第２なまし信号とから求めれば、上記の個体間バラツキの影響を軽減させることができる。従って、同程度の劣化状態のガスセンサであっても、従来のように個体間バラツキに起因して求められる偏差がまちまちとなってしまうことを抑制することができる。このように、本発明のガスセンサの異常診断装置によれば、ガスセンサが異常状態にあるか否かの診断をより精度よく行うことができる。
【００３５】
このような第１なまし信号および第２なまし信号は、請求項１０に係る発明のように、互いに異なるなまし係数（第１なまし係数および第２なまし係数）を用いたなまし演算を検出信号に対してそれぞれ適用して算出すればよい。また、請求項１１に係る発明のように、検出信号に対して第１なまし係数を用いたなまし演算を適用して第１なまし信号を算出し、さらにその第１なまし信号に対し、第１なまし係数または第２なまし係数を用いたなまし演算を適用して第２なまし信号を算出してもよい。このようななまし演算を適用することにより、検出信号を基として、なまし度合いの異なる第１なまし信号および第２なまし信号を容易に得ることができる。
【００３６】
また、ガスセンサが異常状態にあるか否かを診断するために第１なまし信号および第２なまし信号から算出される偏差の取り得る範囲は、第１なまし係数と第２なまし係数とを組み合わせることにより適宜調整することができる。これは、第１なまし信号や第２なまし信号のなまし度合いを小さくするほど、検出信号が瞬間的に大きな変化を示した場合の追従性を高められ、なまし度合いを大きくするほど、その追従性を低く調整できることによる。従って、第１なまし係数と第２なまし係数との組み合わせを適宜調整することにより、ガスセンサの異常状態の診断を行う上での感度を調整することができ、異常診断の精度をより高めることができる。
【００３７】
もっとも、検出信号が取得される一定のタイミング毎に求めた個々の偏差に基づきガスセンサの異常診断を行ってもよいが、請求項１２に係る発明のように、診断期間中に得られたすべての偏差を合計した偏差合計値を用いてガスセンサの異常診断を行えば、正常状態にある場合に取り得る偏差合計値の範囲と、異常状態にある場合に取り得る偏差合計値の範囲との差異をより明確にすることができ、ガスセンサが異常状態にあるか否かの診断をさらに精度よく行うことができる。
【００３８】
また、請求項１３に係る発明のように、診断期間を複数回繰り返し行い、各診断期間毎にガスセンサの異常診断を行い、ガスセンサが異常状態にあると判断した回数を求め、これに基づいて、ガスセンサが異常状態にあるか否かの最終判断を行えば、ガスセンサが一時的に異常状態を示した場合でも直ちに異常と判定してしまうことがなく、ガスセンサが異常状態にあるか否かの診断をより精度よく行うことができる。
【００３９】
ところで、内燃機関に供給される混合気の目標空燃比を、特定空燃比を境界にリッチ側からリーン側またはリーン側からリッチ側に反転させるように空燃比フィードバック制御を行うにあたり、ガスセンサの検出信号に基づいて求めた空燃比（実空燃比）が目標空燃比に近づくようにフィードバック補正を実行することが一般的に行われる。一方、このような空燃比フィードバック制御が実行される内燃機関において、ガスセンサの劣化（応答劣化）が生ずると、軽度な劣化の際には、第１なまし信号と第２なまし信号との偏差は正常時に比べて小さくなるが、過度に劣化が進んだ際には、逆に第１なまし信号と第２なまし信号との偏差が大きくなってしまい、ガスセンサが異常状態にあるか否かの診断を的確に行えない可能性がある。
【００４０】
例えば、ガスセンサの劣化（応答劣化）が、目標空燃比の反転に対してガスセンサの検出信号の応答が半周期分遅れるような状態まで進行した場合を考える。このとき、例えば目標空燃比がリッチであるにも関わらず、ガスセンサの検出信号はリーンに対応した出力を示すことになるが、このような状況で上記検出信号に基づいて求めた空燃比（実空燃比）が目標空燃比に近づくようにフードバック補正が実行されると、過度なフィードバック補正となり、次に目標空燃比がリーンになった場合に、ガスセンサの検出信号はよりリッチに対応した値を示すことになる。そして、このような状況が繰り返されると、ガスセンサの検出信号はより増長して出力されることになるため、ガスセンサの劣化が進行しているにも関わらず第１なまし信号と第２なまし信号との偏差が小さくならずに、正常なガスセンサとの識別が的確に図れない可能性がある。
【００４１】
そこで、請求項１４に係る発明のように、第１なまし信号または第２なまし信号が診断期間中に増加状態から減少状態へ、または減少状態から増加状態へ、少なくとも一方に移行する（反転する）頻度に応じ、ガスセンサが異常状態にあるか否かを判定するためのしきい値を変更すれば、ガスセンサの劣化状態が過度に進んだ場合に診断期間が実行されても、精確に、ガスセンサが異常状態にあるか否かの診断を行うことができる。換言すれば、本発明によれば、ガスセンサの劣化状態の進行状態に関わらず、診断期間がどのタイミングで実行されても、精度良くガスセンサの異常診断を行うことができる。
【００４２】
そして請求項１５に係る発明のように、診断期間を反転回数が加算される毎に区切った単位診断期間のそれぞれにおいて、第１なまし信号または第２なまし信号の状態が移行しなかった（反転しなかった）非移行回数を求め、診断期間中の非移行回数に応じたしきい値を採用すれば、診断期間が任意のタイミングで開始されることに伴い偏差合計値の取り得る範囲が変動しても、精確に、ガスセンサが異常状態にあるか否かの診断を行うことができる。
【００４３】
そして、このようなガスセンサの異常診断装置を、請求項１６に係る発明のように、排気ガス中の酸素濃度に応じてリニアに検出信号の出力値が変化する構成の酸素センサに適用することで、この酸素センサの異常状態を精度よく、確実に検出することができる。
【発明を実施するための最良の形態】
【００４４】
以下、本発明を具体化したガスセンサの異常診断方法、ガスセンサの異常診断装置の一実施の形態について、図面を参照して説明する。まず、図１を参照し、本発明のガスセンサの異常診断方法を実現可能な異常診断装置として、ガスセンサの出力する検出信号に基づきガスセンサが異常状態にあるか否かを診断することが可能なＥＣＵ（電子制御ユニット）５を例に説明する。また、ガスセンサとしては、全領域空燃比センサ１を例に説明する。図１は、ＥＣＵ５と全領域空燃比センサ１との電気的な構成を説明するためのブロック図である。
【００４５】
なお、本実施の形態では、全領域空燃比センサ１とＥＣＵ５との間に図示外の中継基板を介在させ、その中継基板上の一回路部として、後述するセンサ駆動回路部３を設けた場合を例に説明を行う。もっともセンサ駆動回路部３は、ＥＣＵ５上の一回路部としてＥＣＵ５に設けられる場合もある。従って、本発明における「ガスセンサの出力」とは、厳密には、全領域空燃比センサ１とセンサ駆動回路部３とから構成されるセンサユニット４の出力が相当するものではあるが、便宜上、全領域空燃比センサ１の出力として、以下の説明を行うものとする。
【００４６】
図１に示す全領域空燃比センサ１は、自動車のエンジンの排気通路（図示外）に取り付けられ、排気通路を流通する排気ガス中の特定ガス成分（本実施の形態では酸素）の濃度に基づき排気ガスの空燃比を検出するためのセンサである。全領域空燃比センサ１は、内部に細長で長尺な板状をなすセンサ素子１０を、図示外のハウジング内に保持した構造を有する。全領域空燃比センサ１からは、このセンサ素子１０の出力する信号を取り出すための信号線が引き出されており、全領域空燃比センサ１とは離れた位置に取り付けられる中継基板（図示外）上のセンサ駆動回路部３に電気的に接続されている。そして、全領域空燃比センサ１とセンサ駆動回路部３とから構成されるセンサユニット４の出力が、自動車のＥＣＵ（電子制御ユニット）５に入力されている。ＥＣＵ５では、センサユニット４からの出力、すなわち全領域空燃比センサ１の出力に基づき、エンジンの空燃比フィードバック制御が行われる。
【００４７】
まず、センサ素子１０の構造について説明する。センサ素子１０は、排気ガス中の酸素濃度を検出するための検出体２８と、検出体２８を加熱するためのヒータ体２７とから構成されている。検出体２８は、ジルコニアを主体とする固体電解質体１１，１３，１４と、アルミナを主体とする絶縁基体１２とを、固体電解質体１４，１３，絶縁基体１２，固体電解質体１１の順に積層した構造を有する。固体電解質体１１の両面には、白金を主体とする一対の電極１９，２０がそれぞれ形成されており、同様に、固体電解質体１３の両面にも一対の電極２１，２２がそれぞれ形成されている。また、電極２２は固体電解質体１３，１４に挟まれ、固体電解質体中に埋設された形態となっている。固体電解質体１１，１３，１４および絶縁基体１２は、いずれも細長い短冊状の板体として形成されており、図１ではその板体の延長方向と直交する断面を示している。
【００４８】
絶縁基体１２の延長方向の一端側には、固体電解質体１１，１３を一壁面としつつ、排気ガスを導入可能な中空の内部空間としてのガス検出室２３が形成されている。このガス検出室２３の幅方向の両端には、ガス検出室２３内に排気ガスを導入する際の流入量を規制するための多孔質状の拡散律速部１５が設けられている。上記した固体電解質体１１上の電極２０と、固体電解質体１３上の電極２１は、このガス検出室２３内にそれぞれ露出されている。
【００４９】
次にヒータ体２７は、アルミナを主体とし、上記検出体２８と同様の板状をなす２枚の絶縁基体１８，１７を積層しつつ、両絶縁基体間に白金を主体とする発熱抵抗体２６を挟んで埋設した構造を有する。ジルコニアからなる固体電解質体は常温では絶縁性を示すが、高温環境下では活性化され酸素イオン導電性を示すことが知られており、ヒータ体２７は、その固体電解質体１１，１３，１４を加熱して活性化させるために設けられている。
【００５０】
ヒータ体２７は、検出体２８の固体電解質体１１側の外層に配設されている。そしてヒータ体２７の絶縁基体１８と、検出体２８の固体電解質体１１との間には、ガスが流通可能な間隙が形成されている。この間隙内に配置された固体電解質体１１上の電極１９は、その表面がセラミックスからなる多孔質性の保護層２４に覆われており、排気ガスに含まれるシリコン等の被毒成分によって電極１９が劣化しないように保護されている。
【００５１】
このように構成されたセンサ素子１０において、固体電解質体１１とその両面に設けられた一対の電極１９，２０は、外部からガス検出室２３内に酸素を汲み入れ、あるいはガス検出室２３から外部へ酸素を汲み出す酸素ポンプセル（以下、固体電解質体１１および電極１９，２０を総じて「Ｉｐセル」ともいう。）として機能する。同様に、固体電解質体１３とその両面に設けられた一対の電極２１，２２は、両電極間の酸素濃度に応じて起電力を発生させる酸素濃度検出セル（以下、固体電解質体１３および電極２１，２２を総じて「Ｖｓセル」ともいう。）として機能する。また、電極２２は、ガス検出室２３内の酸素濃度の検出のための基準となる酸素濃度を維持する酸素基準電極として機能する。なお、ＩｐセルおよびＶｓセルの詳細な機能については後述する。
【００５２】
次に、センサ素子１０に接続されるセンサ駆動回路部３の構成について説明する。センサ駆動回路部３は、ヒータ電圧供給回路３１、ポンプ電流駆動回路３２、電圧出力回路３３、微小電流供給回路３４および基準電圧比較回路３５から構成され、センサ素子１０から排気ガス中の酸素濃度に応じた電流値を電圧信号として得るための電気回路部である。なお前述したように、このセンサ駆動回路部３は後述するＥＣＵ５の一回路部として設けられる場合もある。
【００５３】
ヒータ電圧供給回路３１は、センサ素子１０のヒータ体２７の発熱抵抗体２６の両端に電圧Ｖｈを印加して発熱させ、ＩｐセルおよびＶｓセルの加熱を行う。微小電流供給回路３４は、Ｖｓセルの電極２２から電極２１側へ微小電流Ｉｃｐを流し、電極２２側に酸素イオンを移動させて酸素を溜め込ませることで、電極２２を排気ガス中の酸素濃度を検出するための基準となる酸素基準電極として機能させる。電圧出力回路３３は、Ｖｓセルの電極２１，２２間に生ずる起電力Ｖｓを検出するものである。基準電圧比較回路３５は、予め定められた基準電圧（例えば４５０ｍＶ）と、電圧出力回路３３にて検出した起電力Ｖｓとの比較を行い、比較結果をポンプ電流駆動回路３２にフィードバックするものである。ポンプ電流駆動回路３２は、基準電圧比較回路３５から得られた比較結果に基づき、Ｉｐセルの電極１９，２０間に流すポンプ電流Ｉｐを制御して、Ｉｐセルによるガス検出室２３内への酸素の汲み入れやガス検出室２３からの酸素の汲み出しが行われるようにする。
【００５４】
次に、ＥＣＵ５の構成について説明する。ＥＣＵ５は、自動車のエンジンの駆動等を電子的に制御するための装置であり、制御プログラムの実行に従って燃料の噴射タイミングや点火時期の制御を行うものである。そのための情報として、ＥＣＵ５には全領域空燃比センサ１の出力（検出信号）が入力される。また、その他の情報として、その他のセンサからの信号（例えば、エンジンのピストン位置や回転数を検出できるクランク角、冷却水の水温、燃焼圧などの情報）も入力される。ＥＣＵ５には公知の構成のＣＰＵ６、ＲＯＭ７、ＲＡＭ８等を搭載したマイコンチップが用いられており、図示外の信号入出力部を介してセンサユニット４のセンサ駆動回路部３から得られる排気ガス中の酸素濃度に応じた出力（検出信号）をＡ／Ｄ変換した値がＲＡＭ８に記憶されて、後述する異常診断プログラムにて用いられる。
【００５５】
本実施の形態ではＥＣＵ５において、後述する異常診断プログラムの実行に従い、全領域空燃比センサ１からの出力値に基づいて、センサ素子１０が異常状態にあるか否かの診断が行われている。異常診断プログラムはＲＯＭ７に記憶されており、ＣＰＵ６によって実行される。以下、ＲＯＭ７およびＲＡＭ８の各記憶エリアについて図２，図３を参照して説明する。図２は、ＲＯＭ７の記憶エリアの構成を示す概念図である。図３は、ＲＡＭ８の記憶エリアの構成を示す概念図である。
【００５６】
ＲＯＭ７には、後述する異常診断プログラムの他に、各種の制御プログラムや初期値等が記憶されている。図２に示すように、ＲＯＭ７の異常診断プログラムに係る記憶エリアには、プログラム記憶エリア７１、設定値記憶エリア７２、異常診断基準値テーブル記憶エリア７３等が設けられている。
【００５７】
プログラム記憶エリア７１には、異常診断プログラムを含め、各種プログラムが記憶される。設定値記憶エリア７２には、異常診断プログラムの実行時に使用される初期値や設定値等が記憶されている。具体的には、後述する異常診断プログラムの応答遅れ診断処理において、第１，第２実空燃比なまし値を算出する際に用いられるなまし係数α，β（それぞれ本発明における「第１なまし係数」，「第２なまし係数」に相当し、例えばそれぞれ０．９，０．２）や、混合気の目標空燃比がリッチかリーンかを判定するための基準となる目標中心空燃比（本発明における「特定空燃比」に相当し、例えば理論空燃比を基準とする場合には１４．６）が記憶されている。また、本実施の形態では、混合気の目標空燃比がリッチ側からリーン側へ反転したときを起点とし、それ以後に目標空燃比がリッチ側からリーン側へ反転する毎（以下、「単位診断期間」という。）に反転回数を数え、基準反転回数として定められた回数（例えば５回）に達するまでの期間を、異常診断のために全領域空燃比センサ１の出力を取得する診断期間としている。設定値記憶エリア７２には、その診断期間を決定するための基準反転回数も記憶されている。
【００５８】
さらに、異常診断を開始する条件として全領域空燃比センサ１が活性化したか否かを判定する際に用いられる基準値としてのセンサ活性判定値や、算出された上記の第１実空燃比なまし値が増加状態または減少状態にあるか判定する際に比較される基準値としての変動基準値（例えば０．０２（Ｖ））も記憶されている。
【００５９】
また、異常診断基準値テーブル記憶エリア７３には、全領域空燃比センサ１が異常状態にあるか否かを診断（判定）する際に比較される基準値としての異常診断基準値が複数記憶されている。本実施の形態では、診断期間において、第１実空燃比なまし値の変動状態（具体的には単位診断期間に第１実空燃比なまし値が目標空燃比の反転に追従できず反転しなかった回数を診断期間において計数した回数（非反転回数））に応じて、異常診断基準値が変動するようにしている。
【００６０】
ＥＣＵ５では、空燃比（実空燃比）が目標空燃比に近づくように全領域空燃比センサ１の出力に基づくフィードバック補正が行われているが、全領域空燃比センサ１の劣化状態の進行度合いによってはフィードバック補正が過度に行われてしまう場合がある。このような状況が繰り返されると、全領域空燃比センサ１の検出信号はより増長して出力されることになるため、全領域空燃比センサ１の劣化が進行しているにも関わらず、第１実空燃比なまし値と第２実空燃比なまし値との偏差が小さくならず、正常な場合との識別が的確に図れなくなる可能性がある。そこで本実施の形態では、非反転回数に応じて異常診断基準値を変動させることにより、全領域空燃比センサ１の劣化状態の進行状態に関わらず、診断期間がどのタイミングで実行されても精度良く全領域空燃比センサ１の異常診断を行えるようにしている。具体的には、異常診断基準値テーブル記憶エリア７３には、例えば、非反転回数が０〜１回の場合には異常診断基準値として５が、２〜３回の場合には８が、４回の場合には１３が、５回の場合には１８がそれぞれ選択されるように、非反転回数と異常診断基準値とが対応付けられて記憶されている。また、ＲＯＭ７には図示外の各種記憶エリアも設けられている。なお、非反転回数が、本発明における「非移行回数」に相当する。
【００６１】
次に、ＲＡＭ８の記憶エリアについて説明する。図３に示すように、ＲＡＭ８の異常診断プログラムに係る記憶エリアには、フラグ記憶エリア８１、目標空燃比記憶エリア８２、空燃比実測値記憶エリア８３、実空燃比なまし値記憶エリア８４、第１実空燃比なまし値最大値記憶エリア８５、第１実空燃比なまし値最小値記憶エリア８６、目標空燃比反転回数記憶エリア８７、面積合計値記憶エリア８８、非反転回数記憶エリア８９等が設けられている。
【００６２】
フラグ記憶エリア８１には、異常診断プログラムの実行時に利用されるフラグ（後述）が一時的に記憶される。ところで、ＣＰＵ６では、異常診断プログラムとは別に燃料の噴射タイミングおよび噴射量を制御するプログラムが実行されており、そのプログラムにおいて、混合気の目標とする空燃比がエンジンの運転状態に応じて決定されている。目標空燃比記憶エリア８２には、そのプログラムにおいて使用される記憶エリアから読み込まれた目標空燃比が記憶される。
【００６３】
空燃比実測値記憶エリア８３には、センサ駆動回路部３より出力される全領域空燃比センサ１の出力として、Ｉｐセルに流されたポンプ電流ＩｐをＡ／Ｄ変換した値が空燃比実測値として記憶される。そして実空燃比なまし値記憶エリア８４には、応答遅れ診断処理の実行時に、空燃比実測値に対してなまし演算を適用して得られる２種類の（現在の）実空燃比なまし値（第１実空燃比なまし値および第２実空燃比なまし値）と、前回の応答遅れ診断処理の実行時に得た２種類の（前回の）実空燃比なまし値が記憶される。具体的に（現在の）第１実空燃比なまし値は、全領域空燃比センサ１の出力（検出信号）として得られた（現在の）空燃比実測値と、前回のなまし演算で算出した（前回の）第１実空燃比なまし値とを、なまし係数αを用い、以下の式によって与えられるなまし演算を適用することで算出される。
第１実空燃比なまし値＝α×空燃比実測値＋（１−α）×（前回の）第１実空燃比なまし値  ・・・  （１）
（ただし、αは０＜α＜１で与えられる第１なまし係数であり、本実施の形態では０．９である。）
（現在の）第２実空燃比なまし値についても同様であり、以下の式によって与えられるなまし演算の適用によって算出される。
第２実空燃比なまし値＝β×空燃比実測値＋（１−β）×（前回の）第２実空燃比なまし値  ・・・  （２）
（ただし、βは０＜β＜１で与えられる第２なまし係数であり、本実施の形態では０．２である。）
このように実空燃比なまし値記憶エリア８４には、（現在の）空燃比実測値に対し異なるなまし係数を用いて適用されるなまし演算によって算出された２種類の実空燃比なまし値、すなわち第１実空燃比なまし値および第２実空燃比なまし値の現在の値と前回の値とがそれぞれ記憶される。
【００６４】
また、第１実空燃比なまし値最大値記憶エリア８５には、リッチ側とリーン側との間で繰り返し反転する目標空燃比の一回の反転の間（単位診断期間）に第１実空燃比なまし値の示した最大値が記憶される。この最大値は、前回の最大値と現在の第１実空燃比なまし値が比較されることにより更新され、目標空燃比がリッチ側からリーン側へ移行するとリセットされる。第１実空燃比なまし値最小値記憶エリア８６に記憶される第１実空燃比なまし値の最小値も、上記同様である。
【００６５】
次に、目標空燃比反転回数記憶エリア８７には、目標中心空燃比を境界にしてリッチ側とリーン側との間で繰り返し反転する目標空燃比がリッチ側からリーン側へ移行したときを１回としてカウントした回数が記憶される。面積合計値記憶エリア８８には、算出された第１実空燃比なまし値と第２実空燃比なまし値との差分の絶対値を偏差として求め、その偏差を加算した値、すなわち積分値が面積合計値として記憶される。そして、非反転回数記憶エリア８９には、診断期間中にカウントされる上記した非反転回数（診断期間中に第１実空燃比なまし値が目標空燃比の反転に追従できず反転しなかった回数）が記憶される。また、ＲＡＭ８には図示外の各種記憶エリアも設けられている。なお、面積合計値が、本発明における「偏差合計値」に相当する。
【００６６】
ところで、上記したフラグ記憶エリア８１には、計測完了フラグ、目標空燃比フラグ、異常判定フラグ、第１実空燃比なまし値増加経験フラグ、第１実空燃比なまし値減少経験フラグ、初期化条件フラグ、運転パラメータ条件フラグ等が記憶される。計測完了フラグは、ガスセンサの異常診断が完了した時点で立てられるフラグである。本実施の形態の異常診断プログラムでは、１回のエンジンの駆動開始から停止までの間に一度、ガスセンサの異常診断が行われるように構成されており、上記運転パラメータ条件フラグおよび計測完了フラグと、ＲＯＭ７に記憶される初期化条件フラグを用いて、異常診断のための各処理を実行するか否かが決定される。
【００６７】
また、目標空燃比フラグは、目標空燃比記憶エリア８２に記憶された目標空燃比がリッチかリーンかを判定した結果に従って立てられるフラグである。設定値記憶エリア７２に記憶された目標中心空燃比を目標空燃比と比較し、目標空燃比がリッチである場合に１が記憶され、リーンである場合に０が記憶される。異常判定フラグは、異常診断プログラムによってガスセンサが異常状態にあると診断（判定）された場合に立てられるフラグである。異常判定フラグの値はＣＰＵ６により実行される他のプログラムにおいて参照され、１が記憶されている場合に全領域空燃比センサ１に異常が生じたことを運転者に報知する処理等の実施に用いられる。
【００６８】
そして第１実空燃比なまし値増加経験フラグおよび第１実空燃比なまし値減少経験フラグは、単位診断期間中に第１実空燃比なまし値の変動状態が増加状態または減少状態にあると判断された場合、立てられるフラグである。単位診断期間毎に非反転回数の計数を行う際に参照され、その都度リセットされる。
【００６９】
また、初期化条件フラグは、ガスセンサの応答遅れ診断処理が実施されるようにするため、異常診断プログラムの実行開始時や、異常診断プログラムとは異なる他の制御プログラムにより必要に応じて立てられるフラグである。例えばイグニッションキーがＯＦＦからＯＮとなりエンジンの始動が開始されたときには、異常診断プログラムが実行され、初期化条件フラグに１が記憶されて、応答遅れ診断処理が実施される。また、初回の応答遅れ診断処理の実施後に異常診断プログラムは待機状態となるが、例えばエンジンが不意に作動を停止（いわゆるエンスト）した場合などにも再度応答遅れ診断処理が実施されるように、他の制御プログラムにより初期化条件フラグに１が記憶される。
【００７０】
運転パラメータ条件フラグもまた、異常診断プログラムとは異なる別の制御プログラムにより立てられるフラグである。ＣＰＵ６により実行される別の制御プログラムによりエンジンを中心としたシステム全体の稼働状況が監視され、例えばエンジンの回転数や冷却水の水温などが、予め設定された正常とみなせる値の範囲内で所定時間（例えば１秒間）維持された場合に、エンジンの運転状況が正常であるとして１が記憶される。なお、エンジンの回転数や冷却水の水温の正常とみなせる範囲として、本実施の形態では、エンジン回転数が２０００ｒｐｍ以上５０００ｒｐｍ以下であり、水温が８０℃以上２１５℃以下である範囲（条件）を設定している。
【００７１】
次に、全領域空燃比センサ１を用いて排気ガスの酸素濃度（空燃比）を検出する動作について簡単に説明する。まず、図１に示すように、微小電流供給回路３４によりＶｓセルの電極２２から電極２１に向けて微小電流Ｉｃｐを流す。この通電より、電極２１側から電極２２側に固体電解質体１３を介して酸素が汲み込まれ、電極２２が酸素基準電極として機能する。そして、電圧出力回路３３により両電極２１，２２間に発生する起電力Ｖｓを検出し、この起電力Ｖｓを基準電圧比較回路３５で基準電圧（例えば４５０ｍＶ）と比較する。ポンプ電流駆動回路３２では、基準電圧比較回路３５による比較結果に基づいて、起電力Ｖｓが基準電圧となるようにＩｐセルの電極１９，２０間に流すポンプ電流Ｉｐの大きさや向きを制御する。
【００７２】
なお、ガス検出室２３内に流入した排気ガスの空燃比がリッチであった場合、排気ガス中の酸素濃度が薄いため、Ｉｐセルにおいて外部からガス検出室２３内に酸素を汲み入れるように、電極１９，２０間に流すポンプ電流Ｉｐが制御される。一方、ガス検出室２３内に流入した排気ガスの空燃比がリーンであった場合、排気ガス中には多くの酸素が存在するため、Ｉｐセルにおいてガス検出室２３から外部へ酸素を汲み出すように、電極１９，２０間に流すポンプ電流Ｉｐが制御される。このときのポンプ電流Ｉｐが全領域空燃比センサ１の出力（空燃比実測値）としてＥＣＵ５に出力され、そのポンプ電流Ｉｐの大きさと向きから排気ガス中に含まれる酸素濃度、ひいては排気ガスの空燃比を検出できるのである。
【００７３】
ＥＣＵ５では、エンジンの空燃比フィードバック制御等に係る複数のプログラムがＣＰＵ６により実行されており、そのうちの１つである異常診断プログラムでは、取得した全領域空燃比センサ１の出力（検出信号）に対する演算処理等が行われ、全領域空燃比センサ１が異常状態にあるか否かの診断が行われる。以下、図４〜図７のフローチャートに従って、図１〜図３および図８，図９を参照しながら、異常診断プログラムの各処理について説明する。図４は、異常診断プログラムのメインルーチンのフローチャートである。図５〜図７は、異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理のフローチャートである。図８は、ガスセンサが異常状態にない場合において、空燃比実測値が目標空燃比の反転に追従して変化する様子の一例を示すタイミングチャートである。図９は、ガスセンサが異常状態にある場合において、空燃比実測値が目標空燃比の反転に追従できず遅延して変化する様子の一例を示すタイミングチャートである。なお、フローチャートの各ステップについては「Ｓ」と略記する。また、図８，図９に示すグラフの時間軸（横軸）における各タイミングを「Ｔ」と略記する。
【００７４】
異常診断プログラムは、図２に示すＲＯＭ７のプログラム記憶エリア７１に記憶されており、ＥＣＵ５の駆動開始時に、エンジンを制御するための他のプログラムと共にＣＰＵ６により実行される。
【００７５】
図４に示す異常診断プログラムのメインルーチンが実行されるとまず初期化処理が行われ、ＲＡＭ８に、異常診断プログラムに使用される変数やフラグ、カウンタ等の記憶エリアが確保される。また、全領域空燃比センサ１の異常診断が行われるように、フラグ記憶エリア８１の初期化条件フラグに１が記憶される（Ｓ１０）。次にセンサユニット４のセンサ駆動回路部３に指示が送信され、全領域空燃比センサ１の固体電解質体１１，１３，１４の活性化のため、ヒータ電圧供給回路３１によるヒータ体２７への通電が行われる（図１参照）。また、センサユニット４より固体電解質体１３の内部抵抗値を示すセンサ抵抗値信号がＡ／Ｄ変換回路（図示外）を介して取得される。このセンサ抵抗値信号の大きさを予め定められ設定値記憶エリア７２に記憶されているセンサ活性判定値と比較することにより、全領域空燃比センサ１の活性化の有無の判断が行われる（Ｓ１１）。このとき全領域空燃比センサ１が活性化していないと判断された場合には、全領域空燃比センサ１が活性化するまでセンサ抵抗値信号の取得とセンサ活性判定値との比較が繰り返し行われる（Ｓ１１：ＮＯ）。
【００７６】
なお、図１に図示していないが、センサ駆動回路部３は、公知のセンサ抵抗値検出回路を備えている。具体的には、微小電流供給回路３４とは別に設けられた電流供給回路より一定値の電流がＶｓセルに対して定期的に供給されており、センサ抵抗値検出回路は、その際にＶｓセルの電極２１，２２間に発生する電位差をセンサ抵抗値信号として検出し、ＥＣＵ５に出力している。センサ素子１０のＶｓセルにおける温度とセンサ抵抗値信号との間には相関関係があり、センサ抵抗値信号に基づいてセンサ素子１０の温度を検出することが可能である。
【００７７】
図４に戻り、全領域空燃比センサ１が活性化したと判断されると（Ｓ１１：ＹＥＳ）、次に異常診断プログラムとは別途実行されるタイマプログラム（図示外）が起動され、実行が開始される（Ｓ１２）。タイマプログラムは、異常診断プログラムの各処理を実行するタイミングの基準となるカウント値を一定時間間隔でインクリメント（あるいはデクリメントであってもよい。）するプログラムである。異常診断プログラムは、メインプログラムのＳ１４〜Ｓ２６の処理を例えば２５ｍｓｅｃ毎に１度、繰り返し実行するように構成されており、カウント値は前回の実行時から２５ｍｓｅｃが経過したか否かを判断するために用いられる。このため、Ｓ１４においてタイマプログラムの現在のカウント値をリセットし、その時点を基準に時間計測を開始する処理が行われる（Ｓ１４）。
【００７８】
次に、フラグ記憶エリア８１の初期化条件フラグが参照される（Ｓ１５）。初期化条件フラグはＳ１０において１が記憶されているのでＳ１６に進む（Ｓ１５：ＹＥＳ）。そしてＳ１６では、異常診断プログラムで一時使用されるフラグの一部をリセットする処理が行われる。具体的には、フラグ記憶エリア８１の異常判定フラグ、計測完了フラグおよび初期化条件フラグにそれぞれ０が記憶される。続くＳ１９においても異常診断プログラムで一時使用されるフラグの一部、具体的に、フラグ記憶エリア８１の目標空燃比フラグ、第１実空燃比なまし値増加経験フラグおよび第１実空燃比なまし値減少経験フラグにそれぞれ０が記憶される。また、異常診断プログラムで一時使用される各変数、具体的に、目標空燃比反転回数記憶エリア８７の目標空燃比反転回数、面積合計値記憶エリア８８の面積合計値、および非反転回数記憶エリア８９の非反転回数にもそれぞれ０が記憶される。その後Ｓ２６に進む。
【００７９】
Ｓ２６では、Ｓ１２で実行が開始されたタイマプログラムのカウント値が参照される。カウント値はＳ１４においてリセットされており、Ｓ２６で参照されたときに２５ｍｓｅｃに相当する値未満だった場合には待機し、カウント値の参照が継続して行われる（Ｓ２６：ＮＯ）。そしてカウント値が２５ｍｓｅｃに相当する値以上となれば（Ｓ２６：ＹＥＳ）、Ｓ１４に戻り、再度カウント値がリセットされて、Ｓ１５〜Ｓ２６の処理が繰り返されることとなる。
【００８０】
２周目となるＳ１５の処理では初期化条件フラグが０となっているので（Ｓ１５：ＮＯ）、Ｓ１８に進み、フラグ記憶エリア８１の運転パラメータ条件フラグが参照される（Ｓ１８）。上記したように運転パラメータ条件フラグは異常診断プログラムとは異なる別の制御プログラムにより値が管理されており、エンジンの回転数や冷却水の水温が予め設定された正常とみなせる値の範囲に達しないうちは、初期状態、すなわち０が記憶されている（Ｓ１８：ＮＯ）。従ってＳ１９に進んで上記した各フラグや変数をリセットした後にＳ２６に進み、上記同様、２５ｍｓｅｃの経過を待ってＳ１４に戻る。
【００８１】
エンジンの回転数や冷却水の水温が予め設定された正常とみなせる値の範囲内に収まり、その状態が所定時間維持された場合、運転パラメータ条件が成立したとして、上記別の制御プログラムによりフラグ記憶エリア８１の運転パラメータ条件フラグに１が記憶される。するとＳ１８の処理ではＳ２０に進めるようになるので（Ｓ１８：ＹＥＳ）、次にフラグ記憶エリア８１の計測完了フラグが参照される（Ｓ２０）。Ｓ１６の処理で計測完了フラグには０が記憶されているので（Ｓ２０：ＮＯ）、Ｓ２２に進む。
【００８２】
Ｓ２２では、目標空燃比の取得が行われる。ＥＣＵ５では、全領域空燃比センサ１の出力として得られる排気ガスの空燃比の情報に基づいてエンジンに供給する混合気の空燃比を調整し、それにあわせ燃料の噴射量や噴射タイミングなどを制御する、いわゆる空燃比フィードバック制御が行われている。その空燃比フィードバック制御を行うためのプログラムでは、混合気の空燃比の調整のため、エンジンに供給する混合気の空燃比の目標とする目標空燃比の設定を行い、それに従った燃料噴射を制御している。Ｓ２２の処理では、そのプログラムで設定された現時点（Ｓ２２が実行されたタイミング）における目標空燃比の取得が行われ、取得された目標空燃比が目標空燃比記憶エリア８２に記憶される（Ｓ２２）。
【００８３】
次いで全領域空燃比センサ１の出力（検出信号）すなわち空燃比実測値が取得される（Ｓ２３）。空燃比実測値は、前述したようにＩｐセルに流れるポンプ電流Ｉｐの値をＡ／Ｄ変換したものであり、空燃比実測値記憶エリア８３に記憶される。なお、Ｓ２３において、全領域空燃比センサ１より出力される検出信号を一定のタイミング毎（本実施の形態では２５ｍｓｅｃ毎）に取得する処理が、本発明における「検出信号取得工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「検出信号取得手段」に相当する。
【００８４】
そしてＳ２４に進み、応答遅れ診断処理のサブルーチン（図５〜図７参照）がコールされる。ところで、応答遅れ診断処理のサブルーチンから戻るとＳ２６に進み２５ｍｓｅｃの経過を待機してＳ１４に戻ることとなるが、全領域空燃比センサ１の異常診断が完了するまで、計測完了フラグは０のまま維持されるようになっている。従ってメインルーチンのＳ１４〜Ｓ２６までの処理は以降も今回と同様の処理順に進められ、応答遅れ診断処理が２５ｍｓｅｃ毎に実行されることとなるので、ここでは、Ｓ２４からコールされる図５〜図７の応答遅れ診断処理について、図８のタイミングチャートを参照しながら説明する。
【００８５】
図５〜図７に示す、応答遅れ診断処理のサブルーチンでは、まず、Ｓ３０〜Ｓ３４の処理の実行により目標空燃比の変動状態が確認され、それに応じた一連の処理が選択される。具体的に、Ｓ４２〜Ｓ７６の処理は、目標空燃比がリッチ側からリーン側へ移行したタイミングにおいてのみ実行され、それ以外のタイミングではＳ３５〜Ｓ３９の処理が実行される。そして、これらいずれかの一連の処理の実行後には共通してＳ８０〜Ｓ８６（図７参照）の処理が行われ、メインルーチンに戻る。
【００８６】
まず、Ｓ３０〜Ｓ３４の処理について説明する。図５に示すように、応答遅れ診断処理が実行されると、フラグ記憶エリア８１の目標空燃比フラグが参照される（Ｓ３０）。初期状態（例えば図８のＴ０）では目標空燃比が目標中心空燃比を基準にリッチかリーンかの判定がなされておらず、Ｓ１９（図４参照）の処理により０が設定され、仮に、目標空燃比がリーンである状態とされている（Ｓ３０：ＮＯ）。そこで実際の目標空燃比がリッチ側にあるかリーン側にあるかを確認するため、目標空燃比記憶エリア８２に記憶された目標空燃比と、設定値記憶エリア７２に記憶された目標中心空燃比との比較が行われる（Ｓ３１）。目標空燃比がリッチ側にあった場合には目標中心空燃比未満の値となっているため（Ｓ３１：ＹＥＳ）、フラグ記憶エリア８１の目標空燃比フラグに１が記憶されて（Ｓ３２）、Ｓ３５に進む。次周以降（例えば図８のＴ０〜Ｔ１）、目標空燃比フラグが１となっているのでＳ３３に進むが（Ｓ３０：ＹＥＳ）、目標空燃比がリッチ側にあるうちは目標中心空燃比未満の値となるので（Ｓ３３：ＮＯ）、Ｓ３５に進む。
【００８７】
そして目標空燃比がリッチ側からリーン側に移行するタイミング（例えば図８のＴ１）には、目標空燃比が目標中心空燃比以上の値となるため（Ｓ３３：ＹＥＳ）、Ｓ３４に進み、Ｓ４２〜Ｓ７６の処理が実行される。しかし、Ｓ３４において目標空燃比フラグに０が記憶されるので（Ｓ３４）、次周以降（例えば図８のＴ１〜Ｔ２）は、再び、Ｓ３５に進むようになる。このように、目標空燃比がリッチ側からリーン側へ移行するタイミング（図８のＴ１，Ｔ３，Ｔ５，Ｔ７，Ｔ９，Ｔ１１）においてのみ、Ｓ４２〜Ｓ７６の処理が実行され、Ｓ８０〜Ｓ８６の処理を経てメインルーチンに戻る。そしてそれ以外のタイミングにはＳ３５〜Ｓ３９の処理が実行され、Ｓ８０〜Ｓ８６の処理を経てメインルーチンに戻る。
【００８８】
次に、Ｓ３５〜Ｓ３９の処理について説明する。図５に示すＳ３５，Ｓ３６の処理は、空燃比実測値（図８において実線で示す。）に対してなまし演算を適用し、２種類の（現在の）実空燃比なまし値、すなわち第１実空燃比なまし値（図８において１点鎖線で示す。）、および第２実空燃比なまし値（図８において２点鎖線で示す。）を算出する処理である。
【００８９】
まず、実空燃比なまし値記憶エリア８４に記憶されている（前回の）第１実空燃比なまし値（初期状態ではＳ１０の初期化処理により０が記憶されている。）が、（現在の）第１実空燃比なまし値で上書きされて更新される。そしてこの（前回の）第１実空燃比なまし値と、設定値記憶エリア７２に記憶されたなまし係数αと、空燃比実測値記憶エリア８３に記憶された空燃比実測値とがそれぞれ読み込まれ、上記（１）の式に従って第１実空燃比なまし値が算出される（Ｓ３５）。この演算結果は、実空燃比なまし値記憶エリア８４に、（現在の）第１実空燃比なまし値として記憶される。なお、Ｓ３５において、第１実空燃比なまし値を算出する処理が、本発明における「第１なまし信号算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「第１なまし信号算出手段」に相当する。
【００９０】
次いで同様に、実空燃比なまし値記憶エリア８４に記憶されている（前回の）第２実空燃比なまし値（初期状態ではＳ１０の初期化処理により０が記憶されている。）が、（現在の）第２実空燃比なまし値で上書きされて更新される。そしてこの（前回の）第２実空燃比なまし値と、設定値記憶エリア７２に記憶されたなまし係数βと、空燃比実測値記憶エリア８３に記憶された空燃比実測値とがそれぞれ読み込まれ、上記（２）の式に従って第２空燃比なまし値が算出される（Ｓ３６）。この演算結果は、実空燃比なまし値記憶エリア８４に、新たな（現在の）第２実空燃比なまし値として記憶される。なお、Ｓ３６において、第２実空燃比なまし値を算出する処理が、本発明の請求項２における「第２なまし信号算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明の請求項１０における「第２なまし信号算出手段」に相当する。
【００９１】
次に実行されるＳ３８，Ｓ３９の処理は、後述するＳ６３で異常診断基準値を決定（採用）するパラメータとなる非反転回数を計数する際に用いられる第１実空燃比なまし値最大値、および第１実空燃比なまし値最小値を更新するための処理である。まず、実空燃比なまし値記憶エリア８４に記憶されている（現在の）第１実空燃比なまし値と（前回の）第１実空燃比なまし値最大値とが比較され、大きい方の値が、（現在の）第１実空燃比なまし値最大値として第１実空燃比なまし値最大値記憶エリア８５に記憶される（Ｓ３８）。そして同様に、再度、（現在の）第１実空燃比なまし値と（前回の）第１実空燃比なまし値最小値とが比較され、小さい方の値が、（現在の）第１実空燃比なまし値最小値として第１実空燃比なまし値最小値記憶エリア８６に記憶される（Ｓ３９）。Ｓ３５〜Ｓ３９の処理の後には、図７に示すＳ８０に進む。
【００９２】
次に、Ｓ８０〜Ｓ８６の処理について説明する。Ｓ８０，Ｓ８１の処理は、具体的には、図８に示す、第１実空燃比なまし値のグラフ（１点鎖線）と第２実空燃比なまし値のグラフ（２点鎖線）とに囲まれた部分の面積を、面積合計値として求めるための処理である。図７に示すように、まず（現在の）第１実空燃比なまし値と、（現在の）第２実空燃比なまし値とが読み込まれ、差分の絶対値が偏差として算出される（Ｓ８０）。この偏差は、図８においては、Ｓ８０が実行されたタイミングにおける第１実空燃比なまし値と第２実空燃比なまし値との高さの差に相当するものである。次いで図７に示すように、面積合計値記憶エリア８８から面積合計値が読み込まれ（初期状態ではＳ１９の処理により０が記憶されている。）、この面積合計値にＳ８０で算出された偏差を加算した結果が、面積合計値記憶エリア８８に上書き記憶される（Ｓ８１）。応答遅れ診断処理が繰り返し実行されることによって、図８の面積合計値のグラフ（点線）に示すように、各タイミングにおける偏差が面積合計値として積算されていくこととなる。なお、Ｓ８０において、第１実空燃比なまし値と第２実空燃比なまし値との差分を偏差として算出する処理が、本発明における「偏差算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「偏差算出手段」に相当する。また、診断期間中、Ｓ８１を繰り返し実行することで偏差合計値を加算し、診断期間に得られたすべての偏差を合計した面積合計値を算出する処理が、本発明における「偏差合計値算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「偏差合計値算出手段」に相当する。
【００９３】
次の図７に示すＳ８２〜Ｓ８６の処理は、後述するＳ４３〜Ｓ４９において単位診断期間中に第１実空燃比なまし値が反転したか否か、第１実空燃比なまし値の変動状態を確認するための処理である。具体的には単位診断期間中に第１実空燃比なまし値が増加状態や減少状態を経験した場合に、それぞれに対応するフラグ、すなわち第１実空燃比なまし値増加経験フラグや第１実空燃比なまし値減少経験フラグが立てられる。
【００９４】
まず、Ｓ８２において、Ｓ３８で更新される第１実空燃比なまし値最大値と、（現在の）第１実空燃比なまし値との差分値が算出される。そしてこの差分値が変動基準値以上の値を示せば（Ｓ８２：ＹＥＳ）、（現在の）第１実空燃比なまし値が過去に採った値より減少した、すなわち第１実空燃比なまし値が減少状態を経験したとみなされる。従って、フラグ記憶エリア８１の第１実空燃比なまし値減少経験フラグに１が記憶されて（Ｓ８３）、メインルーチンに戻る。一方、第１実空燃比なまし値最大値から（現在の）第１実空燃比なまし値を引いた差分値が変動基準値未満であれば（Ｓ８２：ＮＯ）、次に、（現在の）第１実空燃比なまし値から第１実空燃比なまし値最小値を引いた差分値が同様に算出される。そしてこの差分値が変動基準値以上の値を示せば（Ｓ８５：ＹＥＳ）、（現在の）第１実空燃比なまし値が過去に採った値より増加した、すなわち第１実空燃比なまし値が増加状態を経験したとみなされる。従って、フラグ記憶エリア８１の第１実空燃比なまし値増加経験フラグに１が記憶されて（Ｓ８６）、メインルーチンに戻る。上記いずれにも該当しない場合は（Ｓ８２：ＮＯ，Ｓ８５：ＮＯ）、そのままメインルーチンに戻る。
【００９５】
このように、目標空燃比がリッチ側からリーン側へ移行するタイミング（図８のＴ１，Ｔ３，Ｔ５，Ｔ７，Ｔ９，Ｔ１１）以外では、Ｓ３５〜Ｓ３９およびＳ８０〜Ｓ８６の処理が繰り返し実行される。そして応答遅れ診断処理の実施の度に、異なるなまし係数αおよびβを用いたなまし演算の適用により空燃比実測値をなました第１実空燃比なまし値および第２実空燃比なまし値との偏差が求められ、図８に示すように、面積合計値として積算されていく。
【００９６】
次に、目標空燃比がリッチ側からリーン側へ移行するタイミングに実行されるＳ４２〜Ｓ７６の処理について説明する。まず、Ｓ４２では、空燃比実測値記憶エリア８３の空燃比実測値が読み込まれ、実空燃比なまし値記憶エリア８４の（現在の）第１実空燃比なまし値および（現在の）第２実空燃比なまし値にそれぞれコピーされる（Ｓ４２）。本実施の形態では、空燃比実測値を前回算出した実空燃比なまし値でなました（現在の）第１実空燃比なまし値および（現在の）第２実空燃比なまし値を算出するにあたり、目標空燃比がリッチ側からリーン側に反転したタイミングを契機として、ほぼ定期的になまし具合を初期状態、すなわち、なまされていない状態に戻す処理を行っている。
【００９７】
次のＳ４３〜Ｓ４９の処理では、前述した異常診断基準値の決定（採用）の際にパラメータとして用いられる非反転回数の計数が行われる。この処理では、目標空燃比がリッチ側からリーン側へ移行するタイミングにおいて、それまでの単位診断期間中に第１実空燃比なまし値の反転があったか否かが確認され、反転がなかった場合に非反転回数の加算が行われる。従って、フラグ記憶エリア８１の第１実空燃比なまし値増加経験フラグの値が１であり、（Ｓ４３：ＮＯ）、第１実空燃比なまし値減少経験フラグの値も１である場合には（Ｓ４４：ＮＯ）、Ｓ４８に進む。すなわち、単位診断期間中に第１実空燃比なまし値が増加状態から減少状態へ、あるいは減少状態から増加状態へ移行した（反転した）と判断されて、非反転回数の加算が行われない。
【００９８】
一方、第１実空燃比なまし値増加経験フラグおよび第１実空燃比なまし値減少経験フラグの値のうち、少なくともいずれか一方が０であった場合には（Ｓ４３：ＹＥＳ、またはＳ４３：ＮＯ，Ｓ４４：ＹＥＳ）、Ｓ４６へ進む。Ｓ４６では、第１実空燃比なまし値最大値と第１実空燃比なまし値最小値との差分が求められ、その差分が０．０２より大きければ（Ｓ４６：ＹＥＳ）、単位診断期間中における第１実空燃比なまし値の変動は確実にあったことが確認される。しかし、その変動は増加状態または減少状態のいずれか一方であるので、反転はなかったと判断されて非反転回数に１が加算され（Ｓ４７）、Ｓ４８へ進む。なお、Ｓ４７において、非反転回数を１加算する処理が、本発明における「非移行回数計数工程」に相当し、この処理を行うＣＰＵ６が、本発明における「非移行回数計数手段」に相当する。
【００９９】
なお、第１実空燃比なまし値最大値と第１実空燃比なまし値最小値との差分が０．０２（０．０２以下）であった場合（Ｓ４６：ＮＯ）、第１実空燃比なまし値には変動がなく一定の値であったと判断されて、そのままＳ４８に進む。第１実空燃比なまし値最大値と第１実空燃比なまし値最小値との差分が０となるのは空燃比実測値に全く変動がなかった場合であり、非反転回数が更新されないことで異常診断基準値として小さな値が選択され、後述する異常状態の判定の精度を向上させることができる。
【０１００】
次のＳ４８では、第１実空燃比なまし値増加経験フラグ、および第１実空燃比なまし値減少経験フラグの値が０にリセットされる（Ｓ４８）。さらにＳ４９では、第１実空燃比なまし値最大値、および第１実空燃比なまし値最小値が、それぞれに（現在の）第１実空燃比なまし値がコピーされることで、リセットされる（Ｓ４９）。このように、非反転回数の更新のための各フラグやパラメータは、図８に示す、目標空燃比がリッチ側からリーン側へ移行するタイミング（それまでの単位診断期間が終了し、次の単位診断期間に入る時）となるＴ１，Ｔ３，Ｔ５，Ｔ７，Ｔ９，Ｔ１１にリセットされることとなる。そして図６のＳ５５に進む。
【０１０１】
図６に示すＳ５５〜Ｓ６１の処理は、診断期間の開始時期と終了時期を判断するための処理である。前述したように、診断期間は、目標空燃比がリッチ側からリーン側へ反転したときに開始され、それ以後に目標空燃比がリッチ側からリーン側へ反転した回数が基準反転回数に達したときに終了する。従って、目標空燃比反転回数が基準反転回数より小さいうちは（Ｓ５５：ＮＯ）、Ｓ５６〜Ｓ５８の処理を経て、目標空燃比がリッチ側からリーン側へ反転する毎に目標空燃比反転回数が１加算される（Ｓ６１）。なお、目標空燃比反転回数が０である場合にのみ（Ｓ５６：ＹＥＳ）、面積合計値のリセットと（Ｓ５７）、非反転回数のリセット（Ｓ５８）が行われてＳ６１に進む。この処理により、例えば図８に示すＴ０に応答遅れ診断処理実行されても、Ｔ０〜Ｔ１の間に加算された分の面積合計値や更新された非反転回数がリセットされることとなり、目標空燃比がリッチ側からリーン側へ初めて反転するＴ１に、診断期間が開始されることとなる。そしてＳ６１（図６参照）で目標空燃比反転回数が１加算されるため、Ｔ１以降に目標空燃比がリッチ側からリーン側へ反転するとき（Ｔ３，Ｔ５，Ｔ７，Ｔ９，Ｔ１１）には、面積合計値や非反転回数はリセットされず、診断期間中加算され続け、目標空燃比反転回数のみが加算される（図６のＳ５６：ＮＯ，Ｓ６１）。その後は図７に示すＳ８０〜Ｓ８６を経てメインルーチンに戻る。なお、Ｓ６１において目標空燃比反転回数に１を加算する処理が、本発明における「目標空燃比反転回数計数工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「目標空燃比反転回数計数手段」に相当する。
【０１０２】
このように、目標空燃比がリッチ側からリーン側へ反転する度にＳ６１により目標空燃比反転回数が加算されていく。そしてＳ５５の実行時に目標空燃比反転回数が基準反転回数（５回）以上となっていたときに（Ｓ５５：ＹＥＳ）、診断期間が終了したと判断されて、Ｓ６３〜Ｓ７６の処理、すなわち全領域空燃比センサ１が異常状態にあるか否かの判断を行う処理が実行される。
【０１０３】
まず、ＲＯＭ７の異常診断基準値テーブル記憶エリア７３が参照され、前述したように、診断期間中に計数された非反転回数に応じた異常診断基準値が選択され、ＲＡＭ８の所定の記憶エリアに一時的に記憶される（Ｓ６３）。また、診断期間が終了したものとして、フラグ記憶エリア８１の計測完了フラグに１が記憶される（Ｓ７１）。そして診断期間中に求められた第１実空燃比なまし値と第２実空燃比なまし値との偏差を積算した面積合計値と、上記選択された異常診断基準値とが比較される（Ｓ７３）。このとき、面積合計値が異常診断基準値以上の値であれば（Ｓ７３：ＮＯ）、全領域空燃比センサ１の出力の応答性に異常がなく正常であると診断されて（Ｓ７６）、Ｓ８０〜Ｓ８６を経てメインルーチンに戻る。一方、面積合計値が異常診断基準値より小さい値であれば（Ｓ７３：ＹＥＳ）、全領域空燃比センサ１の出力の応答性に異常があると診断され、フラグ記憶エリア８１の異常判定フラグに１が記憶されて（Ｓ７５）、Ｓ８０〜Ｓ８６を経てメインルーチンに戻る。なお、Ｓ６３において、非反転回数に応じた異常診断基準値を選択する処理が、本発明における「しきい値採用工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「しきい値採用手段」に相当する。また、Ｓ７３において、面積合計値を異常診断基準値と比較してガスセンサが異常状態にあるか否かを診断（判定）する処理が、本発明における「異常診断工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「異常診断手段」に相当する。
【０１０４】
図８に示すように、全領域空燃比センサ１が正常な状態にあり、空燃比実測値が目標空燃比の反転に良好に追従して変化している場合、第１実空燃比なまし値も目標空燃比の反転に追従し、各単位診断期間中に、増加状態と減少状態をそれぞれ経験する。このため、診断期間終了時における第１実空燃比なまし値の非反転回数は０となり、異常診断基準値として比較的小さな値（一例では５）が選択される。
【０１０５】
一方、図９に示すように、全領域空燃比センサ１が異常状態にあり、空燃比実測値が目標空燃比の反転に良好に追従できず遅延が生じている場合、目標空燃比の変動に対し空燃比実測値は比較的緩やかに変動するため、診断期間中における面積合計値は小さい値となる。第１実空燃比なまし値が反転したＴ２ａ、Ｔ６ａ、Ｔ９ａがそれぞれ含まれる単位診断期間Ｔ１〜Ｔ３、Ｔ５〜Ｔ７、Ｔ９〜Ｔ１１では、非反転回数はインクリメントされない。しかし、第１実空燃比なまし値が反転しなかった単位診断期間Ｔ３〜Ｔ５、Ｔ７〜Ｔ９にはインクリメントされ、診断期間終了時における第１実空燃比なまし値の非反転回数は２となる。異常診断基準値として上記より大きな値（一例では８）が選択される。全領域空燃比センサ１が異常状態にあると判定されれば、異常判定フラグの値に１が記憶される。この異常判定フラグの値は、ＣＰＵ６により実行される他のプログラムにおいて繰り返し参照されており、参照時に１が記憶されていれば、例えば運転者への報知等が行われる。
【０１０６】
そして、図４に示すメインルーチンの次周以降のＳ１４〜Ｓ２６の処理では、計測完了フラグに１が記憶されているため（Ｓ２０：ＹＥＳ）、Ｓ２６に進み、以降、応答遅れ診断処理が実行されることはない。
【０１０７】
なお、本発明は各種の変形が可能なことはいうまでもない。例えば、本実施の形態では２５ｍｓｅｃごとに応答遅れ診断処理が繰り返し実行されるようにしたが、必ずしも処理時間間隔を２５ｍｓｅｃに限定するものではなく、任意に設定可能である。また、前述したように、センサ駆動回路部３をＥＣＵ５の一回路部として構成してもよい。あるいは、センサ駆動回路部３にマイクロコンピュータを搭載し、そのマイクロコンピュータによって異常診断プログラムを実行できるようにしてもよい。
【０１０８】
また、基準反転回数を５回としたが、これに限らず、１回でも２回でも、あるいは６回以上でもよい。同様に、空燃比なまし値の算出に用いたなまし係数αやβの値も０．９や０．２に限らず、０より大きく１未満の数値であれば、それぞれ任意に設定してもよい。
【０１０９】
また、（現在の）第２実空燃比なまし値は、空燃比実測値から求められる（現在の）第１実空燃比なまし値に対し、さらになまし演算を適用することで求めてもよい。例えば、図１０に示すＳ３７の処理を、図５のＳ３６の処理の代わりに行うようにすればよい。すなわち、（現在の）第２実空燃比なまし値を、以下の式によって与えられるなまし演算の適用によって算出する。
第２実空燃比なまし値＝β×（現在の）第１実空燃比なまし値＋（１−β）×（前回の）第２実空燃比なまし値  ・・・  （３）
（ただし、βは０＜β＜１で与えられる第２なまし係数であり、本実施の形態では０．２である。）
このように、第１実空燃比なまし値に対しさらになまし演算を適用して第２実空燃比なまし値を求め、両者の偏差に基づく全領域空燃比センサ１の異常状態の有無の診断を行ってもよい。なお、この場合、非反転回数に応じて決定（採用）される異常診断基準値の値を任意に調整するとよい。また、このように第２実空燃比なまし値を第１実空燃比なまし値に基づいて求める場合、なまし係数βはなまし係数αと異なってもよいし、あるいは同一としてもよい。第２実空燃比なまし値を算出する処理が、本発明の請求項３における「第２なまし信号算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明の請求項１１における「第２なまし信号算出手段」に相当する。
【０１１０】
また、面積合計値は、本実施の形態では偏差を加算した合計値によって求めたが、偏差を乗じた値や偏差の平均値などを面積合計値として用いてもよい。こうした値を用いた場合の異常診断基準値についても実験等により、ガスセンサの正常時に取り得る値とガスセンサが様々な異常状態にある場合に取り得る値とを求め、非反転回数に応じた最適なしきい値を設定し、異常診断基準値として用いればよい。さらに、上記実施の形態において、異常診断プログラムは初回のガスセンサの応答遅れ診断処理を行った後、待機状態となることとしたが、応答遅れ診断処理の実施回数はこれに限定されず、例えばイグニッションキーがＯＮされてＯＦＦされるまでの間繰り返し応答遅れ診断処理を行うようにしてもよい。
【０１１１】
また、異常診断基準値は、第１実空燃比なまし値の非反転回数に対応付けて決定したが、空燃比実測値や第２実空燃比なまし値の非反転回数を計数し、これらに応じた異常診断基準値を決定してもよい。あるいは、第１実空燃比なまし値が目標空燃比の反転に追従して反転した反転回数に対応付けて決定してもよい。
【０１１２】
また、診断期間を複数回繰り返し行って、各診断期間毎に、ガスセンサが異常状態にあるか否かの仮判定を行い、複数回の診断期間が終了した際に、異常状態にあると仮に判定された回数に基づいて、ガスセンサが異常状態にあるか否かの最終的な判定を行ってもよい。一例として、図５〜図７に示す応答遅れ診断処理において、図６に示すＳ５５〜Ｓ７６の処理の変形例を図１１に示す。なお、本実施の形態と同一の処理を行っている部分は、同一のステップ番号を付している。
【０１１３】
本変形例では、図示しないが、ＲＡＭ８の所定の記憶エリアに記憶される変数として、新たに、異常検出回数と計測回数とを設けている。また、ＲＯＭ７の設定値記憶エリア７２には、さらに、基準繰り返し回数と基準異常検出回数とが記憶されている。本変形例では、１回の診断期間が終了する毎に全領域空燃比センサ１が異常状態にあるか否かの判定が行われるが、上記した異常検出回数は異常状態にあると判定された回数をカウントするための変数であり、初期値には０が記憶される。また、計測回数は、診断期間を繰り返し実施する回数をカウントするための変数であり、初期値には０が記憶される。基準繰り返し回数は、診断期間を繰り返し実施する回数を定めたものであり、本変形例では３回が記憶されている。そして基準異常検出回数は、複数の診断期間が終了した際に異常検出回数と比較して、全領域空燃比センサ１が異常状態にあるか否かの最終的な判定を行うためのしきい値（基準値）を定めたものであり、本変形例では３回が記憶されている。そして図４に示す、異常診断プログラムのメインルーチンのＳ１９において、本変形例では、本実施の形態でリセットされた各フラグや変数に加え、異常検出回数および計測回数のリセットを行うものとする。
【０１１４】
なお、本変形例において、個々の診断期間において行われる各処理は、本実施の形態と同様である。以下、応答遅れ診断処理を中心に説明し、その他の部分は省略または簡略化して説明する。
【０１１５】
本実施の形態と同様に、ＣＰＵ６により図４に示した異常診断プログラムのメインルーチンが実行され、初期化条件フラグ、運転パラメータ条件フラグ、および計測完了フラグによる場合分けの各条件が揃うと、図５，図１１，図７に示す、応答遅れ診断処理が実行されるようになる。そして、混合気の目標空燃比が初めてリッチ側からリーン側へ反転したタイミングにおいて（図５、Ｓ３０：ＹＥＳ，Ｓ３３：ＹＥＳ，・・・，図１１、Ｓ５５：ＮＯ，Ｓ５６：ＹＥＳ）、面積合計値や非反転回数のリセットと共に（Ｓ５７，Ｓ５８）、異常検出回数もリセットされ（Ｓ６０）、Ｓ６１の処理で目標空燃比反転回数が１となることによって最初の診断期間が開始される。診断期間中は本実施の形態と同様に、第１実空燃比なまし値および第２実空燃比なまし値の算出（図５、Ｓ３５，Ｓ３６）、第１実空燃比なまし値最大値および第１実空燃比なまし値最小値の更新（Ｓ３７，Ｓ３８）、第１実空燃比なまし値と第２実空燃比なまし値との偏差の算出（図７、Ｓ８０）、面積合計値の積算（Ｓ８１）、第１実空燃比なまし値の増加状態や減少状態の検出（Ｓ８２〜Ｓ８６）が繰り返し行われる。目標空燃比がリッチ側からリーン側へ反転すると、それまでの単位診断期間において第１実空燃比なまし値に反転がなければ非反転回数が計数され（図５、Ｓ４７）、目標空燃比反転回数の加算（図１１、Ｓ６１）が行われると共に、次の単位診断期間が開始される。単位診断期間が繰り返し行われる間、面積合計値は積算され続ける。そして目標空燃比反転回数が基準反転回数（例えば５回）以上となると（図１１、Ｓ５５：ＹＥＳ）、１回目の診断期間が終了する。
【０１１６】
次いでこのまま２回目の診断期間を開始できるように、目標空燃比反転回数に１が記憶される（図１１、Ｓ６２）。そして異常診断基準値テーブル記憶エリア７３の参照により、１回目の診断期間中に計数された非反転回数に応じた異常診断基準値が選択され、ＲＡＭ８の所定の記憶エリアに一時的に記憶される（Ｓ６３）。また、２回目の診断期間において新たな非反転回数を計数するため、非反転回数がリセットされる（Ｓ６４）。
【０１１７】
次に、１回目の診断期間中に求められた第１実空燃比なまし値と第２実空燃比なまし値との偏差を積算した面積合計値と、上記選択された異常診断基準値とが比較される（Ｓ６５）。このとき、面積合計値が異常診断基準値以上の値であれば（Ｓ６５：ＮＯ）、１回目の診断期間における全領域空燃比センサ１の出力の応答性には異常がなかったと診断され、そのままＳ６７に進む。一方、面積合計値が異常診断基準値より小さい値であれば（Ｓ６５：ＹＥＳ）、１回目の診断期間において、全領域空燃比センサ１の出力の応答性に異常があったと診断され、異常検出回数に１が加算されて（Ｓ６６）、Ｓ６７に進む。なお、Ｓ６５において、面積合計値を異常診断基準値と比較してガスセンサが異常状態にあるか否かの仮の判断を行う処理が、本発明における「異常状態仮判断工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「異常状態仮判断手段」に相当する。
【０１１８】
Ｓ６７では２回目の診断期間において新たに面積合計値を積算するため、面積合計値がリセットされる（Ｓ６７）。さらに、ＲＡＭ８の所定の記憶エリアに記憶された計測回数（初期状態では０）に１が加算される（Ｓ６８）。次に、計測回数が基準繰り返し回数以上となったか確認が行われる（Ｓ７０）。この処理では診断期間が基準繰り返し回数に定められた回数（例えば３回）分繰り返し行われたか確認が行われる。１回目の診断期間の終了後ではまだ満たされていないので（Ｓ７０：ＮＯ）、図７に示すＳ８０〜Ｓ８６を経てメインルーチンへ戻る。なお、Ｓ７０において、計測回数が基準繰り返し回数以上となるまで計測完了フラグを０で維持し、診断期間を繰り返し実行させる処理が、本発明における「繰り返し算出工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「繰り返し算出手段」に相当する。
【０１１９】
ここで図８や図９で示したグラフを参照して説明すると、診断期間の終了するＴ１１において、目標空燃比反転回数に１が記憶されると共に面積合計値がリセットされることで、Ｔ１と同様の状態が設定されて、診断期間が再び最初から開始されて面積合計値が求められることとなる。このように、計測回数が基準繰り返し回数に達するまで診断期間が繰り返されて、各診断期間において得られた面積合計値と異常診断基準値との比較により全領域空燃比センサ１の出力の応答性に異常があったと診断されれば、異常検出回数に１が加算される（Ｓ６５：ＹＥＳ，Ｓ６６）。
【０１２０】
そして、図１１に示すように、例えば３回目の診断期間が終了し、計測回数が基準繰り返し回数以上となったときには（Ｓ７０：ＹＥＳ）、次回以降、メインルーチンから応答遅れ処理がコールされないように計測完了フラグに１が記憶される（Ｓ７１）。そして、３回分の診断期間における異常検出回数と、設定値記憶エリア７２の基準異常検出回数（例えば２回）とが比較され（Ｓ７２）、異常検出回数が基準異常検出回数よりも少なければ（Ｓ７２：ＮＯ）、全領域空燃比センサ１は出力の応答性に異常がなく正常であるとする最終的な判定がなされる（Ｓ７６）。一方、異常検出回数が基準異常検出回数以上であれば（Ｓ７２：ＹＥＳ）、全領域空燃比センサ１の出力に異常があるとの最終的な判定がなされ、フラグ記憶エリア８１の異常判定フラグに１が記憶されるのである（Ｓ７５）。そしてこの異常判定フラグの値が、運転者への報知等に用いられる。このようにすれば、全領域空燃比センサ１が一時的に異常状態となった場合でも、直ちに異常と判定されることがないので、異常診断の精度を高めることができる。なお、Ｓ７２において、異常検出回数を基準異常検出回数と比較してガスセンサが異常状態にあるか否かの最終判断を行う処理が、本発明における「異常状態最終判断工程」に相当し、この処理を実行するＣＰＵ６が、本発明における「異常状態最終判断手段」に相当する。
【図面の簡単な説明】
【０１２１】
【図１】ＥＣＵ５と全領域空燃比センサ１との電気的な構成を説明するためのブロック図である。
【図２】ＲＯＭ７の記憶エリアの構成を示す概念図である。
【図３】ＲＡＭ８の記憶エリアの構成を示す概念図である。
【図４】異常診断プログラムのメインルーチンのフローチャートである。
【図５】異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理のフローチャートである。
【図６】異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理のフローチャートである。
【図７】異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理のフローチャートである。
【図８】ガスセンサが異常状態にない場合において、空燃比実測値が目標空燃比の反転に追従して変化する様子の一例を示すタイミングチャートである。
【図９】ガスセンサが異常状態にある場合において、空燃比実測値が目標空燃比の反転に追従できず遅延して変化する様子の一例を示すタイミングチャートである。
【図１０】異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理の変形例のフローチャートである。
【図１１】異常診断プログラムのメインルーチンからコールされる応答遅れ診断処理の変形例のフローチャートである。
【符号の説明】
【０１２２】
１    全領域空燃比センサ
３    センサ駆動回路部
４    センサユニット
５    ＥＣＵ
６    ＣＰＵ
７    ＲＯＭ
８    ＲＡＭ
１０    センサ素子
【図１】
0004874918.tif 000002
【図２】
0004874918.tif 000003
【図３】
0004874918.tif 000004
【図４】
0004874918.tif 000005
【図５】
0004874918.tif 000006
【図６】
0004874918.tif 000007
【図７】
0004874918.tif 000008
【図８】
0004874918.tif 000009
【図９】
0004874918.tif 000010
【図１０】
0004874918.tif 000011
【図１１】
0004874918.tif 000012