(57)【要約】【課題】ガスセンサによる特定ガス成分の濃度検出の精度を向上することができるガス濃度検出装置、ガス濃度検出システムを提供する。【解決手段】ポンプ電流Ｉｐが流れる検出抵抗器Ｒｄの両端に生ずる電圧Ｖｄを、オペアンプＯＰ１により差動増幅し、オフセット電圧Ｖｏｆｓを重畳した上で、検出電位Ｖｏｕｔとして取得する。スイッチＳＷ３のＯＮ／ＯＦＦにより、電圧Ｖｄの差動増幅の増幅度を変更できる。また、スイッチＳＷ２をＯＮにするとオペアンプＯＰ１の入力端子間が同電位となるので、検出電位Ｖｏｕｔとしてはオフセット電圧Ｖｏｆｓが出力される。回路を構成する電子部品に精度誤差がある場合、このときの検出電位Ｖｏｕｔにはその制度誤差も含まれるので、これを補正電位として増幅度ごとに取得しておき、濃度検出の際の補正に用いることで精度誤差を打ち消す。【選択図】図１
2010054307.tif 000002
【特許請求の範囲】
【請求項１】
特定ガス成分の濃度に応じて自身を流れる電流の大きさが変化するガスセンサから前記電流を取得して、前記特定ガス成分の濃度を検出するガス濃度検出装置であって、
前記ガスセンサから出力される前記電流が流れる検出抵抗器と、
自身の有する第１入力端子および第２入力端子が前記検出抵抗器の両端それぞれに電気的に接続され、前記検出抵抗器の両端に生ずる電位を差動増幅した検出電位を出力する差動増幅手段と、
前記差動増幅手段が前記検出電位を出力する際に差動増幅する前記電位の増幅度を、少なくとも２つ以上に設定可能な増幅度設定手段と、
前記第１入力端子と前記第２入力端子とを同電位に設定可能な同電位設定手段と、
予め、前記増幅度設定手段の設定する前記各増幅度それぞれにおいて、前記同電位設定手段が前記第１入力端子と前記第２入力端子とを同電位に設定し、その際に前記差動増幅手段が出力する前記検出電位を補正電位として取得する取得手段と、
前記差動増幅手段の出力する前記検出電位を、その検出電位について設定されている前記増幅度に応じた前記補正電位を用いて補正するとともに、補正後の前記検出電位に基づいて、前記特定ガス成分の濃度に応じた濃度対応値を算出する濃度算出手段と
を備えたことを特徴とするガス濃度検出装置。
【請求項２】
前記第１入力端子と前記第２入力端子との間に電気的に接続され、前記第１入力端子および前記第２入力端子の短絡または絶縁を切り換える切換手段を備え、
前記同電位設定手段は、前記切換手段に前記第１入力端子と前記第２入力端子との間を短絡させて、前記第１入力端子と前記第２入力端子とを同電位に設定することを特徴とする請求項１に記載のガス濃度検出装置。
【請求項３】
特定ガス成分の濃度に応じて自身を流れる電流の大きさが変化するガスセンサと、
前記ガスセンサから出力される前記電流に基づいて、前記特定ガス成分の濃度を検出する請求項１または２に記載のガス濃度検出装置と
を備えたことを特徴とするガス濃度検出システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被検出ガス中の特定ガス成分の濃度に応じて自身を流れる電流の大きさが変化するガスセンサからその電流を取得して特定ガス成分の濃度を検出するガス濃度検出装置と、それらを統合したガス濃度検出システムに関するものである。
【背景技術】
【０００２】
従来、自動車エンジンなどの内燃機関の排気通路に取り付けられ、排気ガス中の特定ガス成分（例えば酸素）の濃度を検出するガスセンサが知られている。このガスセンサは、センサ素子を流れる電流の大きさが排気ガス中の酸素濃度に応じて変化することを利用して、酸素濃度の検出、ひいては排気ガスの空燃比を検出するものである。ガスセンサに接続されるガス濃度検出装置（例えばＥＣＵ（電子制御ユニット））では、ガスセンサに電流検出用の抵抗器を接続し、ガスセンサの出力する電流をその検出用抵抗器に流し、検出用抵抗器の両端に生ずる電位を測定した結果に基づいて、排気ガスの酸素濃度やそれに基づく空燃比を求めている。そして得られた排気ガスの酸素濃度や空燃比は、エンジンにおける燃料噴射量の調整等の空燃比フィードバック制御に利用される。
【０００３】
近年、自動車の排気ガス規制が厳しくなり、これに対処するため、空燃比を理論空燃比付近（ストイキ領域）でフィードバック制御したり、所定のリーン領域でフィードバック制御したりする際の制御性の向上が求められている。一般的なガス濃度検出装置では、検出用抵抗器の出力する電圧をデジタル変換してＣＰＵに取り込み、ソフトウェア制御によって空燃比フィードバック制御を行っている。通常、空燃比の全領域を、デジタル変換の際に取り込み可能な電圧範囲全体に割り振って取り込んでおり、例えばストイキ領域に割り振られる電圧範囲は、取り込み可能な電圧範囲全体からすれば狭い。そこで、検出用抵抗器の出力電圧が、このようなストイキ領域にさしかかった場合に検出用抵抗器の出力電圧を増幅し、ストイキ領域に割り振られる電圧範囲を取り込み可能な電圧範囲全体に拡げることで、ストイキ領域における空燃比の検出精度を高めたものが知られている（例えば特許文献１参照。）。
【特許文献１】特開２００６−２７５６２８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、検出用抵抗器の電位を取得したり出力電圧を増幅したりする回路において、回路を構成する電子部品の特性にばらつきがあったり、電子部品の持つ温度特性による影響が生じたりすると、空燃比の検出結果に誤差を生ずる虞がある。特に、ストイキ領域などにおいて検出用抵抗器の出力電圧を増幅すれば、誤差も拡大されてしまうため、空燃比の検出精度の向上が望まれていた。
【０００５】
本発明は、上記問題点を解決するためになされたものであり、ガスセンサによる特定ガス成分の濃度検出の精度を向上することができるガス濃度検出装置、ガス濃度検出システムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の第１態様に係るガス検出装置は、特定ガス成分の濃度に応じて自身を流れる電流の大きさが変化するガスセンサから前記電流を取得して、前記特定ガス成分の濃度を検出するガス濃度検出装置であって、前記ガスセンサから出力される前記電流が流れる検出抵抗器と、自身の有する第１入力端子および第２入力端子が前記検出抵抗器の両端それぞれに電気的に接続され、前記検出抵抗器の両端に生ずる電位を差動増幅した検出電位を出力する差動増幅手段と、前記差動増幅手段が前記検出電位を出力する際に差動増幅する前記電位の増幅度を、少なくとも２つ以上に設定可能な増幅度設定手段と、前記第１入力端子と前記第２入力端子とを同電位に設定可能な同電位設定手段と、予め、前記増幅度設定手段の設定する前記各増幅度それぞれにおいて、前記同電位設定手段が前記第１入力端子と前記第２入力端子とを同電位に設定し、その際に前記差動増幅手段が出力する前記検出電位を補正電位として取得する取得手段と、前記差動増幅手段の出力する前記検出電位を、その検出電位について設定されている前記増幅度に応じた前記補正電位を用いて補正するとともに、補正後の前記検出電位に基づいて、前記特定ガス成分の濃度に応じた濃度対応値を算出する濃度算出手段とを備えている。
【０００７】
本発明の第１態様のガス濃度検出装置では、ガスセンサから出力される電流が流れる検出抵抗器の両端に生ずる電位を差動増幅した検出電位に基づいて、特定ガス成分の濃度を求めるが、その検出電位を得る上で、検出抵抗器の両端に生ずる電位の増幅度を少なくとも２つ以上に設定できるので、必要な検出精度に応じて増幅度の設定を行うことができ、ガス濃度を精度よく検出することができる。もっとも、出力される検出電位には、回路に使用される電子部品の精度誤差等が含まれる場合があるが、取得手段では、検出抵抗器の両端それぞれに接続される差動増幅手段の第１入力端子と第２入力端子との間を同電位に設定し、検出抵抗器の両端の電位差を強制的に０とした上で、検出電位を取得し、これを補正電位としている。つまり、この状態で得られる検出電位（補正電位）は、電子部品の精度誤差等を含みながらも検出抵抗器の両端の電位が含まれないものである。ガス濃度の検出を行う際に、この補正電位を用いて検出電位に補正を行うことで、精度の高いガス濃度の検出を行うことができる。そして、上記の補正電位の取得を、増幅度の設定ごとに行うことができるので、ガス濃度の検出の精度をさらに高くすることができる。
【０００８】
また、本発明の第１態様においては、補正電位を取得する際には、第１入力端子と第２入力端子との間を同電位に設定し、その上で検出電位を補正電位として取得している。つまり、検出抵抗器にガスセンサから出力される電流が流れたままの状態で、補正電位の取得が可能であり、第１入力端子および第２入力端子と検出抵抗器との接続を切断する必要がなく、補正電位の取得を速やかに行うことができる。
【０００９】
また、上記構成において、前記第１入力端子と前記第２入力端子との間に電気的に接続され、前記第１入力端子および前記第２入力端子の短絡または絶縁を切り換える切換手段を備えてもよく、その場合、前記同電位設定手段は、前記切換手段に前記第１入力端子と前記第２入力端子との間を短絡させて、前記第１入力端子と前記第２入力端子とを同電位に設定するとよい。このようにすれば、第１入力端子と第２入力端子とを同電位に設定する際に、その設定を、簡易かつ確実に行うことができる。
【００１０】
なお、上記構成において、ガスセンサが活性化したか否かを判定する判定手段を備えてもよい。この場合、取得手段は、ガスセンサの駆動が開始されてから、判定手段によってガスセンサが活性化したと判定されるまでの間、各増幅倍率それぞれにおける補正電位の取得を繰り返し行うとよい。このように、ガスセンサの活性化待ちの時間を利用して補正電位の取得を行えば、ガスセンサが活性化したときには補正電位が取得されている状態となっているので、直ちに、特定ガス成分の濃度の検出を開始することができる。また、上記のように補正電位の取得をガスセンサの活性化前に繰り返し行えば、ガスセンサが活性化したときの補正電位は活性化直前の最新のものとなるので、補正の精度が高い。
【００１１】
また、本発明の第２態様に係るガス濃度検出システムは、特定ガス成分の濃度に応じて自身を流れる電流の大きさが変化するガスセンサと、前記ガスセンサから出力される前記電流に基づいて、前記特定ガス成分の濃度を検出する請求項１または２に記載のガス濃度検出装置とを備えている。本発明の第２態様のガス濃度検出システムであれば、必要な検出精度に応じて増幅度の設定を行うことができ、ガス濃度を精度よく検出することができるとともに、増幅度の設定ごとに取得した補正電位を用いて検出電位の補正を行うことで、精度の高いガス濃度の検出を行うことができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明を具体化したガス濃度検出装置、ガス濃度検出システムの実施の形態について、図面を参照して説明する。ここでは、本発明に係るガス濃度検出装置の一例として自動車のＥＣＵ（電子制御ユニット）５０を挙げる。そして、そのＥＣＵ５０に接続される全領域空燃比センサ１０を、ＥＣＵ５０のＣＰＵ６０において実行されるガス濃度検出プログラムに従い制御するセンサ制御システム１００を、本発明に係るガス濃度検出システムの一例として説明する。
【００１３】
まず、センサ制御システム１００の構成について、図１を参照して説明する。図１は、センサ制御システム１００の電気的な構成を概略的に示す図である。
【００１４】
図１に示す、センサ制御システム１００は、全領域空燃比センサ１０と、全領域空燃比センサ１０が接続されるＥＣＵ５０とから構成される。まず、全領域空燃比センサ１０の概略的な構成について説明する。全領域空燃比センサ１０は、公知のように、ジルコニアを主体とし酸素イオン伝導性を有する固体電解質体の両面にＰｔを主体とする電極を形成した２種類のセル（Ｖｓセル１１、Ｉｐセル１２）を有するセンサ素子を内蔵する。センサ素子は、上記のＶｓセル１１およびＩｐセル１２を積層しつつ排気ガスを導入可能な小部屋を形成し、その小部屋内に両セルの一方の電極をそれぞれ露出した構造をなす。この両セルの一方の電極は互いに導通し、全領域空燃比センサ１０のＣＯＭポートに接続されている。また、Ｖｓセル１１の他方の電極は、上記小部屋内に導入される排気ガス中の酸素濃度を検出する際に基準となる酸素基準電極として機能するものであり、全領域空燃比センサ１０のＶｓ＋ポートに接続されている。そしてＩｐセル１２の他方の電極は、小部屋内と外気との間での酸素交換を行うためセンサ素子の外気に曝されており、電気的には全領域空燃比センサ１０のＩｐ＋ポートに接続されている。なお、全領域空燃比センサ１０のセンサ素子の具体的な構造については公知であり、図１では全領域空燃比センサ１０を電気的な回路構成として示している。
【００１５】
次に、ＥＣＵ５０は、公知のＣＰＵ６０、ＲＯＭ７０、ＲＡＭ８０、Ａ／Ｄ変換器５１、および後述するＡＳＩＣ（特定用途向け集積回路）３０を有する。Ａ／Ｄ変換器５１は、ＡＳＩＣ３０のＶｏｕｔポートに接続され、Ｖｏｕｔポートを介してＡＳＩＣ３０から出力されるアナログの出力電圧をデジタル変換し、ＣＰＵ６０に入力する。ＲＯＭ７０は、後述するガス濃度検出プログラムやそのプログラムに用いられる変数、カウンタ、フラグ等の初期値などを記憶する。また、ＲＡＭ８０は一時的なデータの記憶を行い、ガス濃度検出プログラムの実行などに利用される。そしてＣＰＵ６０は、ガス濃度検出プログラムを実行してＡＳＩＣ３０を制御し、全領域空燃比センサ１０によって検出される排気ガス中の酸素濃度の検出、ひいては空燃比の算出を行う。また、ガス濃度検出プログラムの実行にともない、ＡＳＩＣ３０に設けられるスイッチＳＷ１，２，３の切換制御も行う。なお、ＥＣＵ５０は、本実施の形態に係るガス濃度の検出だけでなく、自動車の駆動に係るその他各種の制御も行い、図示しないが、そのための各種制御回路を有し、ＲＯＭ７０には、そのための各種制御プログラム等も記憶されている。
【００１６】
次に、ＡＳＩＣ３０について説明する。ＡＳＩＣ３０は、全領域空燃比センサ１０の駆動制御を行うための回路を集積して１チップ化し、ＥＣＵ５０に容易に組み込めるようにしたものである。ＡＳＩＣ３０は、入出力用の複数のポートＰ１〜Ｐ６や、検出した酸素濃度に対応する出力電圧を出力するためのＶｏｕｔポート、また、図示しない、電源用のポート等を有する。
【００１７】
ＡＳＩＣ３０は、全領域空燃比センサ１０のＶｓセル１１に微少電流Ｉｃｐを供給するＩｃｐ供給回路３１を有しており、このＩｃｐ供給回路３１は、Ｐ１ポートを介して全領域空燃比センサ１０のＶｓ＋ポートに接続されている。Ｉｃｐ供給回路３１は、微少電流Ｉｃｐが、Ｖｓセル１１、Ｉｐセル１２の順に流れ、さらにＡＳＩＣ３０のＰ４ポートに流れるように、微少電流Ｉｃｐを供給する。この微少電流Ｉｃｐは、Ｖｓセル１１の他方の電極（上記した酸素基準電極）側において酸素濃度を一定に保つために流される。
【００１８】
また、ＡＳＩＣ３０は、全領域空燃比センサ１０のＩｐセル１２にポンプ電流Ｉｐを供給するアンプ３４を有する。このアンプ３４の反転入力（−）端子はＰ３ポートに接続されて、さらに抵抗器Ｒ１３を介して全領域空燃比センサ１０のＣＯＭポートに接続されている。アンプ３４の非反転入力（＋）端子には３．６Ｖの基準電圧が印加されており、出力端子はＰ４ポートを介し、全領域空燃比センサ１０のＩｐ＋ポートに接続されている。
【００１９】
アンプ３４によってＩｐセル１２に供給されるポンプ電流Ｉｐの大きさは、ＰＩＤ制御回路３２によって決定される。ＰＩＤ制御回路３２の入力側は、バッファ３５を介し、Ｐ１ポート（つまりは全領域空燃比センサ１０のＶｓ＋ポート）に接続されている。さらに、ＰＩＤ制御回路３２の入力側には、ポンプ電流Ｉｐの制御目標となる基準電圧（４５０ｍＶ）を生成する基準電圧生成回路３３が接続されている。一方、ＰＩＤ制御回路３２の出力側はＰ２ポートに接続され、さらに、後述する検出抵抗器Ｒｄを介し、Ｐ３ポート、つまりはアンプ３４の反転入力（−）端子に接続されている。このＰＩＤ制御回路３２は、Ｖｓセル１１に微少電流Ｉｃｐを流すことによって生ずる起電力Ｖｓが４５０ｍＶとなるように、アンプ３４からＩｐセル１２に供給するポンプ電流Ｉｐの向きや大きさを調整するフィードバック制御を行う。
【００２０】
なお、上記の検出抵抗器Ｒｄは、ポンプ電流Ｉｐの大きさを検出するために設けられており、本実施の形態ではＥＣＵ５０内に設けられる抵抗値３００Ωの抵抗器であって、その両端が、ＡＳＩＣ３０のＰ２ポートとＰ３ポートとに接続されている。この検出抵抗器Ｒｄの両端は、ポンプ電流Ｉｐが流れることによって自身の両端に生ずる電位差Ｖｄを、所定の増幅度で増幅して、検出電位Ｖｏｕｔとして出力する、オペアンプＯＰ１の入力端子にそれぞれ接続されている。具体的に、検出抵抗器Ｒｄの一端が接続されたＰ２ポートは、抵抗器Ｒ９，Ｒ１０およびオペアンプＯＰ４により構成されるバッファ３７の入力側、すなわち抵抗器Ｒ９を介してオペアンプＯＰ４の非反転入力（＋）端子に接続されている。バッファ３７の出力側となるオペアンプＯＰ４の出力端子は、抵抗器Ｒ１０を介して反転入力（−）端子に接続されて負帰還がかけられるとともに、直列に接続された抵抗器Ｒ１４およびＲ８を介し、オペアンプＯＰ１の反転入力（−）端子に接続されている。また、検出抵抗器Ｒｄの他端が接続されたＰ３ポートも同様に、抵抗器Ｒ１１，Ｒ１２およびオペアンプＯＰ３により構成されるバッファ３６の入力側、すなわち抵抗器Ｒ１１を介してオペアンプＯＰ３の非反転入力（＋）端子に接続されている。バッファ３６の出力側となるオペアンプＯＰ３出力端子も同様に、抵抗器Ｒ１２を介して反転入力（−）端子に接続されて負帰還がかけられるとともに、直列に接続された抵抗器Ｒ１５およびＲ７を介し、オペアンプＯＰ１の非反転入力（＋）端子に接続されている。なお、オペアンプＯＰ１が、本発明における「差動増幅手段」に相当する。また、オペアンプＯＰ１の反転入力（−）端子および非反転入力（＋）端子が、それぞれ、本発明における「第１入力端子」および「第２入力端子」に相当する。
【００２１】
また、オペアンプＯＰ３の出力端子とオペアンプＯＰ４の出力端子とは、それぞれ抵抗器Ｒ１５と抵抗器Ｒ１４とを介し、スイッチＳＷ２で接続されている。換言すると、抵抗器Ｒ１５およびＲ７の間の接続点と、抵抗器Ｒ１４およびＲ８の間の接続点とが、それぞれスイッチＳＷ２の両端に接続されている。スイッチＳＷ２はＰ６ポートを介してＣＰＵ６０に接続されており、後述するガス濃度検出プログラムの実行にともない、そのＯＮ／ＯＦＦ（換言すると、短絡または絶縁）が制御される。なお、スイッチＳＷ２が、本発明における「切換手段」に相当する。
【００２２】
次に、オペアンプＯＰ１は反転増幅回路を構成しており、上記の非反転入力（＋）端子には、抵抗器Ｒ１５およびＲ７を介して接続されるバッファ３６の出力端子の他に、バッファ３８（例えばオペアンプＯＰ２により構成される。）の出力端子が、並列に設けられた抵抗器Ｒ３および抵抗器Ｒ４のそれぞれを介して接続されている。また、オペアンプＯＰ１の非反転入力（＋）端子と抵抗器Ｒ３との間にはスイッチＳＷ１が設けられており、このスイッチＳＷ１はＰ５ポートを介してＣＰＵ６０に接続され、後述するガス濃度検出プログラムの実行にともないＯＮ／ＯＦＦが制御される。これにより、バッファ３８とオペアンプＯＰ１との間の抵抗値を、抵抗器Ｒ４の抵抗値、もしくは抵抗器Ｒ４および抵抗器Ｒ３の合成抵抗値のいずれかに切り換えることができる。そして上記のバッファ３８は、出力端子が非反転入力（＋）端子に接続され、負帰還がかけられている。一方、バッファ３８の非反転入力（＋）端子には、直列に接続した抵抗器Ｒ５と抵抗器Ｒ６とで図示しない電源電圧を分圧し、安定した電圧Ｖｏｆｓが得られるように調整したオフセット電圧が入力されている。
【００２３】
また、オペアンプＯＰ１の反転入力（−）端子には、上記した抵抗器Ｒ１４およびＲ８を介して接続されるバッファ３７の出力端子の他に、オペアンプＯＰ１自身の出力端子が、並列に設けられた抵抗器Ｒ１および抵抗器Ｒ２のそれぞれを介して接続されて、負帰還がかけられている。抵抗器Ｒ１４，Ｒ８の抵抗値は、それぞれ抵抗器Ｒ１５，Ｒ７の抵抗値と等しくなるように設定されており、オペアンプＯＰ１の入力インピーダンスの整合が図られている。さらに、オペアンプＯＰ１の反転入力（−）端子と抵抗器Ｒ２との間にも、スイッチＳＷ３が設けられている。このスイッチＳＷ３も、スイッチＳＷ１と同様に、Ｐ５ポートを介してＣＰＵ６０に接続されており、後述するガス濃度検出プログラムの実行にともない、スイッチＳＷ１と同期してＯＮ／ＯＦＦが制御される。これにより、オペアンプＯＰ１において負帰還がかけられる際の抵抗値を、抵抗器Ｒ１の抵抗値、もしくは抵抗器Ｒ１，Ｒ２の合成抵抗値のいずれかに切り換えることができる。さらに、スイッチＳＷ１とスイッチＳＷ３とが同期して切り換えられることにより、オペアンプＯＰ１による差動増幅される検出抵抗器Ｒｄ両端の電位Ｖｒｄの増幅度を２通りに変化させることができるのである。なお、抵抗器Ｒ１、抵抗器Ｒ２の抵抗値は、それぞれ、抵抗器Ｒ４、抵抗器Ｒ３の抵抗値と等しくなるように設定されており、オペアンプＯＰ１の入力インピーダンスの整合が図られている。そして、オペアンプＯＰ１の出力端子は、さらに、Ｖｏｕｔポートに接続されており、オペアンプＯＰ１からの出力電圧は、上記したＡ／Ｄ変換器５１を介してＡ／Ｄ変換されて、ＣＰＵ６０に入力される。
【００２４】
このような構造をなす本実施の形態のガス濃度検出装置（ＥＣＵ５０）において、全領域空燃比センサ１０による酸素濃度の検出は、以下のように行われる。全領域空燃比センサ１０では、ＡＳＩＣ３０内に設けられたＩｃｐ供給回路３１によってＶｓセル１１に微小な電流Ｉｃｐが流されており、Ｖｓセル１１の一方の電極側（小部屋内）から他方の電極側へ酸素イオンが移動する。この酸素イオンの移動にともないＶｓセル１１の両端には電圧Ｖｓが発生するが、小部屋内に導入された排気ガス中の酸素濃度に応じて酸素イオンの移動量が変化するため、電圧Ｖｓは変動する。そこで、この電圧Ｖｓが基準電圧（小部屋内の排気ガスの空燃比を理論空燃比に近づけるため電圧Ｖｓの制御目標として設定される４５０ｍＶ）となるように、Ｉｐセルに流されるポンプ電流Ｉｐの向きと大きさがＰＩＤ制御回路３２によって制御されている。
【００２５】
具体的に、ＰＩＤ制御回路３２において、基準電圧生成回路３３にて生成される基準電圧（４５０ｍＶ）とＶｓセル１１の両端に生ずる電圧Ｖｓとの差分がＰＩＤ演算され、アンプ３４の出力にフィードバックされる。排気ガスの空燃比がリッチ領域にあって小部屋内の酸素濃度が低ければ、電圧Ｖｓが基準電圧より上がるので、電圧Ｖｓを基準電圧に近づけようと、Ｉｐセル１２において小部屋内に酸素イオンを取り込む向きに、電位差に応じた大きさの電流ＩｐがＰＩＤ制御回路３２から流される。一方、排気ガスの空燃比がリーン領域にあって小部屋内の酸素濃度が高ければ、電圧Ｖｓが基準電圧より下がるので、電圧Ｖｓを基準電圧に近づけようと、Ｉｐセル１２において小部屋内から酸素イオンを排出する向きに、電位差に応じた大きさの電流Ｉｐがアンプ３４から流される。したがって、ポンプ電流Ｉｐの向きと大きさを検出することにより、小部屋内に導入された排気ガス中の酸素濃度ひいては空燃比を検知することができる。そして、このポンプ電流Ｉｐは検出抵抗器Ｒｄを流れる構成となっているので、検出抵抗器Ｒｄの両端に生ずる電位Ｖｒｄを測定することによって、ポンプ電流Ｉｐの向きと大きさの検出が行われるのである。
【００２６】
前述したように、検出抵抗器Ｒｄの両端は、それぞれ、バッファ３６，抵抗器Ｒ１５およびＲ７と、バッファ３７，抵抗器Ｒ１４およびＲ８とを介してオペアンプＯＰ１に入力されている。このオペアンプＯＰ１は、ポンプ電流Ｉｐに応じて検出抵抗器Ｒｄの両端に生ずる電位Ｖｒｄを差動増幅する反転増幅回路を構成する。したがってオペアンプＯＰ１の増幅度は、スイッチＳＷ３がＯＮの場合には、抵抗器Ｒ１４および抵抗器Ｒ８の合成抵抗値に対する抵抗器Ｒ１および抵抗器Ｒ２の合成抵抗値の比率によって決まり、スイッチＳＷ３がＯＦＦの場合には、抵抗器Ｒ１４および抵抗器Ｒ８の抵抗値に対する抵抗器Ｒ１の抵抗値の比率によって決まる。本実施の形態では、増幅度として１倍と４．５倍とが採用されており、この条件を満たすように、抵抗器Ｒ１，Ｒ２，Ｒ８およびＲ１４の抵抗値が設定されている。また、上記したように、抵抗器Ｒ３，Ｒ４，Ｒ７およびＲ１５は、オペアンプＯＰ１の入力インピーダンスの整合を図るためのものである。したがって、抵抗器Ｒ３，Ｒ４，Ｒ７およびＲ１５の抵抗値が抵抗器Ｒ１，Ｒ２，Ｒ８およびＲ１４それぞれの抵抗値と同一に設定されるとともに、スイッチＳＷ１が、スイッチＳＷ３と同期して切り換えられるのである。
【００２７】
また、オペアンプＯＰ１の出力は、バッファ３８を介して入力されるオフセット電圧が重畳されることにより、電圧Ｖｏｆｓ分、正側にオフセットして出力される。本実施の形態では、電圧Ｖｏｆｓを、２．３Ｖに設定している。前述したように、ポンプ電流Ｉｐが正負の値をとるので、オペアンプＯＰ１の出力電圧（検出電位）Ｖｏｕｔには、以下の（１）式に示すように、電圧Ｖｏｆｓを重畳している。つまり、検出電位Ｖｏｕｔの取り得る範囲がＣＰＵ６０に取り込み可能な範囲（一般的にはＡ／Ｄ変換器５１により０〜５Ｖの範囲でデジタル値に変換される）となるように、電圧Ｖｏｆｓによりオフセットされている。
（検出電位Ｖｏｕｔ）＝（ポンプ電流Ｉｐの電流値）×（検出抵抗器Ｒｄの抵抗値）×（増幅度）＋（オフセット電圧Ｖｏｆｓ）  ・・・（１）
なお、本実施の形態では、上記したように、増幅度は１倍もしくは４．５倍に切り換え可能であり、検出抵抗器Ｒｄには抵抗値３００Ωのものが用いられ、オフセット電圧Ｖｏｆｓは２．３Ｖに設定されている。
【００２８】
増幅度を１倍に設定したとき、（１）式に表される検出電位Ｖｏｕｔとポンプ電流Ｉｐの電流値との関係は、少なくともポンプ電流Ｉｐの電流値が−２．９ｍＡ〜４．０ｍＡの範囲では、図２のグラフにおける直線Ａに示されるように、直線的な変化を示す。具体的に、検出電位Ｖｏｕｔが１．４３Ｖのとき、ポンプ電流Ｉｐの電流値は−２．９ｍＡであり、このとき、図示しないテーブルに基づくと、排気ガスの空燃比は１０であるとして導出される。また、検出電位Ｖｏｕｔが３．５Ｖのとき、ポンプ電流Ｉｐの電流値は４．０ｍＡであり、このとき、図示しないテーブルに基づくと、排気ガスの空燃比は∞（Ａｉｒ）として導出される。なお、ポンプ電流Ｉｐの電流値が０ｍＡのときには、検出電位Ｖｏｕｔはオフセット電圧（電圧Ｖｏｆｓ）が出力されることとなるが、このときの空燃比は１４．６であり、排気ガスは、いわゆる理論空燃比（ストイキ）状態にある。
【００２９】
このストイキ付近におけるポンプ電流Ｉｐの電流値の変動を、より精度よく検出するため、本実施の形態では、ポンプ電流Ｉｐの電流値が０ｍＡに近い値をとる範囲（具体的には−０．８ｍＡ〜１．０ｍＡ）をストイキ領域として設定している。そして、検出電位Ｖｏｕｔの値がそのストイキ領域に含まれる場合、オペアンプＯＰ１の増幅度を変更して出力電圧を４．５倍に差動増幅している。これにより、このストイキ領域においては検出電位Ｖｏｕｔのわずかな変化も検出しやすくなるので、ストイキ領域における全領域空燃比センサ１０の酸素濃度の検出精度を高めることができる。
【００３０】
より具体的に、ストイキ領域において増幅度を４．５倍に設定したとき、（１）式に表される検出電位Ｖｏｕｔとポンプ電流Ｉｐの電流値との関係は、図２のグラフにおいて、直線Ｂによって示される。ポンプ電流Ｉｐの電流値が−０．８ｍＡのとき、増幅度が１倍の場合には、検出電位Ｖｏｕｔは２．０６Ｖとなるが、増幅度を４．５倍に設定すると、検出電位Ｖｏｕｔは１．２２Ｖとなる。また、ポンプ電流Ｉｐの電流値が１．０ｍＡのとき、増幅度が１倍の場合には、検出電位Ｖｏｕｔは２．６Ｖとなるが、増幅度を４．５倍に設定すると、検出電位Ｖｏｕｔは３．６５Ｖとなる。つまり、ストイキ領域において、増幅度１倍の場合は、検出電位Ｖｏｕｔが２．０６Ｖ〜２．６Ｖの範囲において変動するところを、増幅度４．５倍にしたことで、１．２２Ｖ〜３．６５Ｖの範囲における変動に拡大することができるのである。
【００３１】
このような、検出電位Ｖｏｕｔの取得の際の増幅度の変更は、後述するガス濃度検出プログラムにおいて、増幅度を１倍とする広域測定モードと、増幅度を４．５倍とするストイキ測定モードとの間でのモード移行によって管理される。ところで、ガス濃度検出装置を構成する電子部品の特性のばらつきや温度特性などの影響により、検出抵抗器Ｒｄの両端に生ずる電位Ｖｒｄを検出する過程で精度誤差が含まれ得る。精度誤差は、増幅度を高めると顕著になりやすいため、本実施の形態のガス濃度検出装置では、増幅度に応じて異なる補正を適用させており、検出精度のさらなる向上を図っている。
【００３２】
この補正に係る処理はガス濃度検出プログラムの実行にしたがって行われる。概略的に、全領域空燃比センサ１０の駆動開始後、全領域空燃比センサ１０が活性化されるまでの間に、各増幅度において検出電位Ｖｏｕｔを取得する上で、精度誤差の影響を打ち消すための補正値（後述する補正電位）の取得を行っておく。そして、全領域空燃比センサ１０の活性化後には、検出電位Ｖｏｕｔを取得した際に、各増幅度に応じた補正を適用し、精度の高いガス濃度の検出結果を得るのである。以下、図３，図４を参照し、ガス濃度検出プログラムの各処理について説明する。図３は、ガス濃度検出プログラムのメインルーチンのフローチャートである。図４は、ガス濃度検出プログラムのメインルーチンからコールされるＩｐ算出処理のフローチャートである。なお、フローチャートの各ステップについては「Ｓ」と略記する。
【００３３】
まず、ガス濃度検出プログラムで使用される各種変数やフラグ、カウンタ等について説明する。「初回」フラグは、全領域空燃比センサ１０が活性化してから初めてポンプ電流Ｉｐの算出を行う際に諸設定を適用するため、初回か否かを確認するフラグである。フラグの値が１であれば、ポンプ電流Ｉｐの算出がまだ行われていない状態を示す。「ゲイン」フラグは、現在の測定モードが、ガス濃度を検出する際の増幅度を１倍とする「広域測定モード」であるか、または増幅度を４．５倍とする「ストイキ測定モード」であるかを判別するのに用いられるフラグである。フラグの値が０であれば広域測定モード、１であればストイキ測定モードを示す。定数「Ｇ１」は、広域測定モードにおける増幅度であり、１が設定されている。定数「Ｇ２」は、ストイキ測定モードにおける増幅度であり、４．５が設定されている。定数「ＴＨ１」，「ＴＨ２」，「ＴＨ３」，「ＴＨ４」は、広域測定モードかストイキ測定モードかを設定するため検出電位Ｖｏｕｔと比較するしきい値である。本実施の形態においては、それぞれ順に、２．０６，２．６，１．２２，３．６５（Ｖ）が設定されている。
【００３４】
変数「Ｖｏｕｔ」は、オペアンプＯＰ１の出力をＡ／Ｄ変換したデジタル値としてＣＰＵが取得する値である。ガス濃度検出プログラムの処理においては、例えば、０〜５Ｖの電圧を２５６段階に分解した値で扱われるが、ここでは便宜上、Ａ／Ｄ変換前のアナログ電圧値に基づいて、ガス濃度検出プログラムの処理を説明する。上記したＴＨ１，ＴＨ２，ＴＨ３，ＴＨ４や後述するＶｒｅｆ１，Ｖｒｅｆ２についても同様である。変数「Ｖｒｅｆ１」，「Ｖｒｅｆ２」は、それぞれ増幅度を１倍、４．５倍に設定した状態で測定したオフセット電圧ＶｏｆｓをＡ／Ｄ変換したデジタル値としてＣＰＵが取得する値である。後述するが、オフセット電圧Ｖｏｆｓに、電子部品の含み得る精度誤差を付加した補正電位として取得されるものであり、Ｉｐ算出の際の補正に用いることで、精度誤差の影響を打ち消すことができる。定数「Ｒｄ」は、検出抵抗器Ｒｄの抵抗値であり、Ｉｐ算出に用いられる。変数「Ｉｐ」は、検出抵抗器Ｒｄを流れるポンプ電流Ｉｐの値を、検出抵抗器Ｒｄの両端の電圧差Ｖｄの検出結果（つまりオペアンプＯＰ１の出力として得られるＶｏｕｔ）をもとに、演算して求めた結果を記憶する変数である。上記した（１）式をもとに、ポンプ電流Ｉｐの電流値が演算され、その結果が変数Ｉｐとして記憶される。「サンプリング時間」カウンタは、ガス濃度検出プログラムのメインルーチンの一連の処理を一定時間（例えば１０ｍｓｅｃ．）ごとに繰り返し実行するための待ち時間の計時に用いられるカウンタである。
【００３５】
上記の各定数は、ガス濃度検出プログラムとともにＲＯＭ７０に予め記憶されている。なお、図示しないが、ＲＯＭ７０には、算出したＩｐに対応する空燃比を求めるためのテーブル（または演算式）も記憶されている。また、上記の各フラグ、カウンタ、変数は、ガス濃度検出プログラムの実行の際にＲＡＭ８０にそれぞれの記憶エリアが確保される。
【００３６】
次に、ガス濃度検出プログラムの動作について説明する。自動車のエンジンの駆動に伴い、図３に示す、ガス濃度検出プログラムのメインルーチンが実行されると、まず、初期設定が行われ、各変数やフラグ、カウンタ等が初期値に設定あるいはリセットされる（Ｓ１）。ゲインフラグは０（広域測定モード）に設定され、初回フラグには１が記憶される。また、Ｖｒｅｆ１，Ｖｒｅｆ２には、初期値として２．３Ｖ（精度誤差を含まない場合のオフセット電圧Ｖｏｆｓ）が記憶される。さらに、サンプリング時間の計時が開始される。
【００３７】
次に、全領域空燃比センサ１０が活性化したか否か、確認が行われる（Ｓ３）。活性化の判断は、図示しない活性化判断回路から得られる信号に基づいて行われるが、活性化する前は（Ｓ３：ＮＯ）、サンプリング時間（１０ｍｓｅｃ．）ごとにＳ１９〜Ｓ５１の処理が繰り返し行われることになる。なお、Ｓ３において全領域空燃比センサ１０が活性化したか否かを判定するＣＰＵ６０が、本発明における「判定手段」に相当する。
【００３８】
まず、Ｓ１９では、現在の測定モードが広域測定モードであるか、ゲインフラグによって確認される（Ｓ１９）。初回実行時には、ゲインフラグが初期設定（Ｓ１）で０にリセットされているので（Ｓ１９：ＹＥＳ）、広域測定モードにあるとしてゲイン１（つまり増幅度１倍）に設定される（Ｓ２１）。具体的には図２のスイッチＳＷ１，ＳＷ３をともにＯＮにする信号が出力される。これにより、オペアンプＯＰ１による増幅度が、（抵抗器Ｒ１，Ｒ２の合成抵抗値）／（抵抗器Ｒ８，Ｒ１４の合成抵抗値）＝１に設定される。
【００３９】
次に、スイッチＳＷ２をＯＮにする信号が出力される（Ｓ２３）。前述したように、スイッチＳＷ２の両端はそれぞれオペアンプＯＰ１の反転入力（−）端子と非反転入力（＋）端子とに接続されており、この処理により両端子間が短絡されて、同電位となる。オペアンプＯＰ１は差動増幅回路を構成するので、その出力の検出電位Ｖｏｕｔは、バッファ３８を介して入力されるオフセット電圧（つまり電圧Ｖｏｆｓ）となる。この出力は、抵抗器Ｒ１〜Ｒ４や、バッファ３８、オペアンプＯＰ１の内部部品などの精度誤差を含み得る状態のものとなる。ＣＰＵ６０では、ゲイン１が設定された状態における検出電位Ｖｏｕｔが、Ａ／Ｄ変換器５１を介して取得され（Ｓ２５）、Ｖｒｅｆ１として記憶される（Ｓ２７）。なお、Ｓ２３や後述するＳ４３においてスイッチＳＷ２をＯＮとし、オペアンプＯＰ１の反転入力（−）端子と非反転入力（＋）端子とを短絡して同電位に設定するＣＰＵ６０が、本発明における「同電位設定手段」に相当する。また、Ｓ２５や後述するＳ４５において検出電位Ｖｏｕｔを取得し、各増幅度に対する補正電位Ｖｒｅｆ１，Ｖｒｅｆ２を得るＣＰＵ６０が、本発明における「取得手段」に相当する。
【００４０】
その後、スイッチＳＷ２をＯＦＦにする信号が出力され（Ｓ２９）、オペアンプＯＰ１の反転入力（−）端子と非反転入力（＋）端子とが絶縁される。そしてゲインフラグに１が記憶されて（Ｓ３１）、Ｓ５５に進む。Ｓ５５では、サンプリング時間の経過が確認され、計時開始から１０ｍｓｅｃ．が経過するまで待機後（Ｓ５５：ＮＯ）、Ｓ３に戻る（Ｓ５５：ＹＥＳ）。このとき、サンプリング時間の計時はリセットされる。
【００４１】
Ｓ３に戻って、再度、全領域空燃比センサ１０の活性化の有無が確認され、活性化前であれば、上記同様、Ｓ１９に進む。前回、Ｓ３１でゲインフラグが１に設定されてストイキ測定モードになっているので（Ｓ１９：ＮＯ）、ゲイン２（つまり増幅度４．５倍）に設定される（Ｓ４１）。具体的には図２のスイッチＳＷ１，ＳＷ３をともにＯＦＦにする信号が出力される。これにより、オペアンプＯＰ１による増幅度が、（抵抗器Ｒ１の抵抗値）／（抵抗器Ｒ８，Ｒ１４の合成抵抗値）＝４．５に設定される。なお、Ｓ２１においてスイッチＳＷ１，ＳＷ３をＯＮにして増幅度を１倍に設定したり、Ｓ４１においてスイッチＳＷ１，ＳＷ３をＯＦＦにして増幅度を４．５倍に設定したりするＣＰＵ６０が、本発明における「増幅度設定手段」に相当する。
【００４２】
次いで、上記同様に、スイッチＳＷ２をＯＮにする信号が出力される（Ｓ４３）。ストイキ測定モードでのオペアンプＯＰ１の出力（検出電位Ｖｏｕｔ）は、抵抗器Ｒ１，Ｒ３や、バッファ３８、オペアンプＯＰ１の内部部品などの精度誤差を含み得る状態のものとなる。ＣＰＵ６０では、ゲイン２が設定された状態における検出電位ＶｏｕｔがＡ／Ｄ変換器５１を介して取得され（Ｓ４５）、Ｖｒｅｆ２として記憶される（Ｓ４７）。その後、スイッチＳＷ２をＯＦＦにする信号が出力され（Ｓ４９）、ゲインフラグに今度は０が記憶されて（Ｓ５１）、Ｓ５５に進む。そしてサンプリング時間の経過後にＳ３に戻る（Ｓ５５：ＹＥＳ）。
【００４３】
このように、全領域空燃比センサ１０が活性化するまでの間、サンプリング時間ごとにＳ１９〜Ｓ５１が繰り返し実行される。Ｖｒｅｆ１とＶｒｅｆ２とは、それぞれＳ２７とＳ４７とが実行される度に新たに取得されたゲイン１におけるＶｏｕｔとゲイン２におけるＶｏｕｔとによって上書きされ、その時点での最新の補正電位に更新される。
【００４４】
そして、全領域空燃比センサ１０の活性化後は（Ｓ３：ＹＥＳ）、サンプリング時間（１０ｍｓｅｃ．）ごとにＳ５〜Ｓ１５の処理が繰り返し行われることになる。まず、Ｓ５では、今回のＳ５の処理が、全領域空燃比センサ１０の活性化後、初めての実行であるか否かが確認され、初めての場合には、次のＳ７〜Ｓ１１の処理が実行されて、諸設定が行われる（Ｓ５：ＹＥＳ）。Ｓ７ではゲインフラグに０が記憶され、センサの活性化前の測定モードの如何にかかわらず、広域測定モードに設定される。次いで、ゲイン１に設定され、スイッチＳＷ１，ＳＷ３をＯＮにする信号が出力されて、オペアンプＯＰ１の増幅度が１倍になる（Ｓ９）。そして、次回以降のＳ５の処理ではＳ５：ＮＯとなってＳ７〜Ｓ１１の処理が実行されないように、初回フラグに０が記憶され（Ｓ１１）、Ｓ１３に進む。
【００４５】
Ｓ１３では、図４のＩｐ算出処理のサブルーチンがコールされる。図４に示すように、Ｉｐ算出処理では、まず、オペアンプＯＰ１の出力（検出電位Ｖｏｕｔ）が取得される（Ｓ６１）。図２に示す、スイッチＳＷ２はＯＦＦとなっているので、オペアンプＯＰ１の出力は、検出抵抗器Ｒｄの両端の電位差Ｖｄを差動増幅し、さらにオフセット電圧（電圧Ｖｏｆｓ）を重畳したものとなる。なお、Ｉｐ算出処理の初回実行時にはゲイン１に設定されているので、増幅度は１倍である。検出電位ＶｏｕｔはＡ／Ｄ変換され、変数Ｖｏｕｔとして記憶される。
【００４６】
次に、現在の測定モードが広域測定モードであるか、ゲインフラグによって確認される（Ｓ６３）。初回実行時にはＳ７でゲインフラグが０にリセットされているので（Ｓ６３：ＹＥＳ）、現在は広域測定モードにある。次のＳ７１では、広域測定モードにおける現在のＶｏｕｔの値が、ストイキ領域の範囲に含まれるか否かの確認が行われる。つまり、ＶｏｕｔがＴＨ１以上ＴＨ２以下の値を取るのなら（Ｓ７１：ＹＥＳ）、次回はストイキ測定モードで検出電位Ｖｏｕｔの取得が行われるように、ゲインの設定をゲイン２にしてスイッチＳＷ１，ＳＷ３をＯＦＦにし（Ｓ７３）、ゲインフラグを１に設定する処理を行ってから（Ｓ７５）、Ｓ７７に進む。このように、次回の検出用に予めスイッチＳＷ１，ＳＷ３を切り換えておくことで、次回の検出時には、オペアンプＯＰ１の出力が安定するのにかかる時間待ちを行わなくとも済む。しかし、ＶｏｕｔがＴＨ１より小さいか、ＴＨ２より大きい値を取るのなら（Ｓ７１：ＮＯ）、次回も広域測定モードで検出電位Ｖｏｕｔの取得を行えばよいので、そのままＳ７７に進む。
【００４７】
具体的に、図３の直線Ａに示される、広域測定モードにおけるＶｏｕｔの取り得る値が、ＴＨ１（２．０６Ｖ）より小さい場合やＴＨ２（２．６Ｖ）より大きい場合には、ストイキ領域（ポンプ電流Ｉｐの電流値が０ｍＡに近い、−０．８ｍＡ〜１．０ｍＡの範囲）から外れるので、広域測定モードを継続する。しかし、Ｖｏｕｔの取り得る値が、ＴＨ１（２．０６Ｖ）〜ＴＨ２（２．６Ｖ）の値に収まれば、ストイキ測定モードに移行して、次回の検出電位Ｖｏｕｔの取得を増幅度４．５倍の高精度な状態において行えるようにするのである。
【００４８】
図４に戻り、次のＳ７７では、ポンプ電流Ｉｐの算出が行われる。（１）式より、（ポンプ電流Ｉｐの電流値）＝｛（検出電位Ｖｏｕｔ）−（オフセット電圧Ｖｏｆｓ）｝／｛（検出抵抗器Ｒｄの抵抗値）×（増幅度）｝が得られる。検出電位Ｖｏｕｔには上記した測定誤差が含まれるが、オフセット電圧Ｖｏｆｓに測定誤差を含んだ状態で取得した補正電位を用いて精度誤差の影響を打ち消せば、「Ｉｐ＝（Ｖｏｕｔ−Ｖｒｅｆ１）／Ｒｄ・Ｇ１」としてゲイン１（増幅度１倍）に対応したポンプ電流Ｉｐを精確に求める式が得られる。Ｓ７７では、この式にしたがって求めたポンプ電流Ｉｐの値をＩｐに記憶し、メインルーチンに戻る。
【００４９】
図３に示す、ガス濃度検出プログラムのメインルーチンでは、次のＳ１５において、空燃比Ａ／Ｆが求められる。図示しないテーブルが参照され、Ｉｐに対応する空燃比が求められる。求めた空燃比は、ＣＰＵ６０において実行される他のプログラムにて、例えば燃料の噴射量を決定するフィードバック制御などに用いられる（あるいはＩｐがそのまま使用される場合もある。）。その後、Ｓ５５を経てＳ３に戻り、サンプリング時間ごとにＳ５〜Ｓ１５の処理が繰り返し実行され、その都度、ポンプ電流Ｉｐや空燃比Ａ／Ｆが求められる。なお、Ｓ７７やＳ８７で算出したポンプ電流Ｉｐに基づいて、Ｓ１５で空燃比Ａ／Ｆを、排気ガス中の酸素濃度に応じた濃度対応値として求めるＣＰＵ６０が、本発明における「濃度算出手段」に相当する。
【００５０】
ところで、図４に示す、Ｉｐ算出処理において、広域測定モードからストイキ測定モードへの移行が設定された回の次の回に、再度Ｉｐ算出処理が実行されたときには、ゲインフラグが１となっているので（Ｓ６３：ＮＯ）、Ｓ８１に進む。Ｓ８１では、ストイキ測定モードにおける現在のＶｏｕｔの値が、ストイキ領域の範囲から外れていないか、確認が行われる。つまり、ＶｏｕｔがＴＨ３以上ＴＨ４以下の値を取るのなら（Ｓ８１：ＹＥＳ）、次回もストイキ測定モードを継続して検出電位Ｖｏｕｔの取得を行えばよいので、そのままＳ８７に進む。しかし、ＶｏｕｔがＴＨ３より小さいか、ＴＨ４より大きい値を取るのなら（Ｓ８１：ＮＯ）、次回は広域測定モードに戻って検出電位Ｖｏｕｔの取得が行われるように、上記同様、予め、ゲインの設定をゲイン１にしてスイッチＳＷ１，ＳＷ３をＯＮにし（Ｓ８３）、ゲインフラグを０に設定する処理を行っておいてから（Ｓ８５）、Ｓ８７に進む。
【００５１】
具体的に、図３の直線Ｂに示される、ストイキ測定モードにおけるＶｏｕｔの取り得る値が、ＴＨ３（１．２２Ｖ）より小さい場合やＴＨ４（３．６５Ｖ）より大きい場合には、ストイキ領域から外れるので、広域測定モードに移行する。しかし、Ｖｏｕｔの取り得る値が、ＴＨ３（１．２２Ｖ）〜ＴＨ４（３．６５Ｖ）の値に収まれば、ストイキ測定モードを継続し、次回の検出電位Ｖｏｕｔの取得も、増幅度４．５倍の高精度な状態において行うのである。
【００５２】
図４に戻り、次のＳ８７では、ポンプ電流Ｉｐの算出が行われる。上記同様、検出電位Ｖｏｕｔには測定誤差が含まれるが、オフセット電圧Ｖｏｆｓに測定誤差を含んだ状態で取得した補正電位を用いて精度誤差の影響を打ち消せば、「Ｉｐ＝（Ｖｏｕｔ−Ｖｒｅｆ２）／Ｒｄ・Ｇ２」としてゲイン２（増幅度４．５倍）に対応したポンプ電流Ｉｐを精確に求める式が得られる。Ｓ８７では、この式にしたがって求めたポンプ電流Ｉｐの値をＩｐに記憶し、図３のメインルーチンに戻り、空燃比Ａ／Ｆを求める（Ｓ１５）。以後も同様に、サンプリング時間ごとにＳ５〜Ｓ１５の処理が繰り返し実行され、その都度、ポンプ電流Ｉｐや空燃比Ａ／Ｆが求められる。
【００５３】
なお、本発明は上記実施の形態に限られず、各種の変形が可能である。検出抵抗器Ｒｄの抵抗値や広域測定モードやストイキ測定モードの切り換えを行うためのしきい値ＴＨ１〜ＴＨ４の値などは一例に過ぎず、全領域空燃比センサ１０のセンサ素子の特性にあわせて設定すればよい。サンプリング時間についても、１０ｍｓｅｃ．に限らず、任意の時間を設定すればよい。また、オペアンプＯＰ１の増幅度の設定も任意であり、さらに切り換え可能な増幅度の種類を、本実施の形態では２種類としたが、３種類以上としてもよい。
【００５４】
また、本実施の形態では、Ｓ７７，Ｓ８７においてポンプ電流Ｉｐを算出し、このポンプ電流ＩｐをもとにＳ１５で空燃比を求め、その空燃比を、他のプログラムにおける空燃比フィードバック制御に利用したが、ポンプ電流Ｉｐをもとに酸素濃度を求め、得られた酸素濃度を他のプログラムにおける空燃比フィードバック制御に利用してもよい。あるいは、ポンプ電流Ｉｐを、酸素濃度に対応した濃度対応値として、そのまま、他のプログラムにおける空燃比フィードバック制御に利用してもよい。
【００５５】
また、オペアンプＯＰ１の反転入力（−）端子と非反転入力（＋）端子との間の短絡／絶縁を、スイッチＳＷ２のＯＮ／ＯＦＦを制御することによって行ったが、バッファ３６，３７の出力をハイインピーダンス状態にする制御を行って、両端子間が同電位となるように設定してもよい。
【図面の簡単な説明】
【００５６】
【図１】センサ制御システム１００の電気的な構成を概略的に示す図である。
【図２】検出電位Ｖｏｕｔとポンプ電流Ｉｐの電流値との関係を示すグラフである。
【図３】ガス濃度検出プログラムのメインルーチンのフローチャートである。
【図４】ガス濃度検出プログラムのメインルーチンからコールされるＩｐ算出処理のフローチャートである。
【符号の説明】
【００５７】
１０    全領域空燃比センサ
５０    ＥＣＵ
６０    ＣＰＵ
１００    センサ制御システム
ＳＷ１〜ＳＷ３  スイッチ
ＯＰ１    オペアンプ
Ｒｄ    検出抵抗器
【図１】
2010054307.tif 000003
【図２】
2010054307.tif 000004
【図３】
2010054307.tif 000005
【図４】
2010054307.tif 000006