(57)【特許請求の範囲】
【請求項１】
内燃機関の排気通路に設けられた空燃比センサと、該空燃比センサを加熱するヒータと、該ヒータに供給する電力を制御するヒータ制御手段と、を備えた酸素濃度検出装置において、
前記空燃比センサの活性化後に該空燃比センサの活性状態を維持するため行う、該空燃比センサの素子インピーダンスフィードバックによる前記ヒータへの供給電力の制御中に、前記内燃機関の特定の運転状態において取得される該ヒータの抵抗値に基づいて、前記ヒータの温度と該ヒータの抵抗値との関係を取得し、
前記空燃比センサの素子温度と素子インピーダンスとの関係が該空燃比センサが初期品のときの同関係と異なるとき、前記ヒータの温度と該ヒータの抵抗値との関係の取得を禁止する、
ことを特徴とする酸素濃度検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は酸素濃度検出装置に関し、特に、内燃機関（以下、機関と記す）の排気空燃比を検出する空燃比センサの活性化前にはヒータ抵抗値を目標抵抗値にするようにヒータに供給する電力を制御し、空燃比センサの活性化後には空燃比センサの素子インピーダンスをフィードバックして空燃比センサの素子温を活性化温度に維持するようにヒータに供給する電力を制御する酸素濃度検出装置に関する。
【０００２】
【従来の技術】
近年の機関の空燃比制御においては、機関の排気系に空燃比センサと触媒とを配設し、触媒により排気ガス中の有害成分（ＨＣ、ＣＯ、ＮＯx 等）を最大限浄化するため、空燃比センサにより検出される機関の排気空燃比が目標空燃比、例えば理論空燃比になるようにフィードバック制御されている。この空燃比センサとして、機関から排出される排気ガス中に含まれる酸素濃度に比例して限界電流を出力する限界電流式の酸素濃度検出素子（酸素センサ）が用いられている。限界電流式酸素濃度検出素子は、酸素濃度から機関の排気空燃比を広域かつリニアに検出するものであり、空燃比制御精度を向上させたり、リッチ〜理論空燃比（ストイキ）〜リーンの広域空燃比の間で機関の排気空燃比を目標空燃比にするよう制御するために有用である。
【０００３】
上記酸素濃度検出素子は、空燃比の検出精度を維持するため活性状態に保たれることが不可欠であり、通常、機関始動時から同素子に付設されたヒータを通電することにより同素子を加熱し、早期活性化させてその活性状態を維持するようヒータの通電制御を行っている。
特開平４−２４８４５４号公報開示の酸素濃度検出センサのヒータ制御装置は、酸素濃度検出センサに設置されたヒータの抵抗値を目標抵抗値にするようにヒータへの供給電力を可変制御するものである。
【０００４】
特開平８−２７８２７９号公報開示の酸素センサのヒータ制御装置は、ヒータへの通電初期にセンサ素子の早期活性化のためヒータ温度が所定温度に達するまでは全電力をヒータに供給し、ヒータ温度が所定温度に達するとヒータ温度に応じた電力をヒータに供給し、センサ素子の温度が所定温度に達すると酸素センサの素子温度に応じた電力をヒータに供給するものである。また、このセンサ素子の温度は素子インピーダンス値から推定されている。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記特開平４−２４８４５４号公報開示の酸素濃度検出センサのヒータ制御装置において、上記特開平８−２７８２７９号公報に開示されているように空燃比センサの素子インピーダンスを目標値にフィードバックしてヒータへの電力供給を制御する場合、例えば、ヒータが温度的限界に達しないようにするためには、ヒータ抵抗値の上限値を設定し、ヒータ抵抗値がこのヒータ抵抗上限値を超えないようにヒータ抵抗値を監視する必要があるが、ヒータ温度とヒータ抵抗値との関係を正しく取得しなければならず、この関係を取得するためにヒータ供給電力に基づく別のルーチンの実行を必要とし、ヒータの温度とヒータの抵抗値との関係の取得に時間がかかるという問題がある。
【０００６】
また、上記の場合、機関の排気温度が低温のときまたは空燃比センサが経年変化したとき等のように、空燃比センサの素子温度と素子インピーダンスとの関係が空燃比センサが初期品のときの同関係と異なるとき、素子温や素子インピーダンスが変化し不安定となりヒータ抵抗値も不安定となるので、ヒータの温度とヒータの抵抗値との関係を誤って取得してしまうという問題がある。
【０００７】
それゆえ、本発明は上記問題を解決し、ヒータの温度とヒータの抵抗値との関係を取得するために別のルーチンを設けることなく、短時間にヒータの温度とヒータの抵抗値との関係を取得できる酸素濃度検出装置を提供することを主目的とする。また、素子温度と素子インピーダンスとの関係が崩れた場合のヒータの温度とヒータの抵抗との関係の誤取得を防止することを他の目的とする。
【０００８】
【課題を解決するための手段】
前記問題を解決する本発明による酸素濃度検出装置は、内燃機関の排気通路に設けられた空燃比センサと、該空燃比センサを加熱するヒータと、該ヒータに供給する電力を制御するヒータ制御手段と、を備えた酸素濃度検出装置において、前記空燃比センサの活性化後に該空燃比センサの活性状態を維持するため行う、該空燃比センサの素子インピーダンスフィードバックによる前記ヒータへの供給電力の制御中に、前記内燃機関の特定の運転状態において取得される該ヒータの抵抗値に基づいて、前記ヒータの温度と該ヒータの抵抗値との関係を取得し、前記空燃比センサの素子温度と素子インピーダンスとの関係が該空燃比センサが初期品のときの同関係と異なるとき、前記ヒータの温度と該ヒータの抵抗値との関係の取得を禁止する、ことを特徴とする。
【０００９】
上記構成により、ヒータ温度とヒータ抵抗値との関係を取得するために別のルーチンを設けることなく、短時間にヒータ温度とヒータ抵抗値との関係を取得できる。
【００１０】
上記構成により、空燃比センサの経年変化するようなヒータ抵抗値が不安定なときのヒータ温度とヒータ抵抗値との関係の誤った取得を回避できる。
【００１１】
【発明の実施の形態】
以下、添付図面を参照しつつ、本発明の実施の形態を詳細に説明する。
図１は本発明による酸素濃度検出装置を備えた内燃機関の一実施形態の概略構成図である。図１以降、同一のものは同一符号で示す。図１中、参照番号１はシリンダブロック、２はピストン、３はシリンダヘッド、４は燃焼室、５は吸気マニホルド、６は排気マニホルドをそれぞれ示す。吸気マニホルド５は、サージタンク７、吸気ダクト８およびエアフローメータ９を介してエアクリーナ１０に接続される。吸気ダクト８内にはスロットル弁１１が配設され、吸気マニホルド５には燃料噴射弁１２が吸気ポート１３へ向けて配設される。排気マニホルド６には排気管１４が接続され、この排気管１４の途中にはＨＣ、ＣＯ、ＮＯｘの３成分を同時に浄化するとともに酸素ストレージ効果を有する三元触媒を内蔵した触媒コンバータ１５が配設される。
【００１２】
電子制御ユニット（ＥＣＵ）１００は、デジタルコンピュータからなり、双方向性バス４１によって相互に接続されたＲＯＭ４２、ＲＡＭ４３、バックアップ用のＢ．ＲＡＭ４４、ＣＰＵ４５、入力ポート４６および出力ポート４７、等を具備する。エアフローメータ９は吸入空気量に比例した出力電圧を発生し、その出力電圧の信号をＡ／Ｄ変換器４８を介して入力ポート４６に入力する。排気マニホルド６内の上流側には空燃比センサ１０１が配設され、空燃比センサ１０１は排気ガス中の酸素濃度を検出し、その出力信号を空燃比センサ回路１０３、Ａ／Ｄ変換器４８を介して入力ポート４６に入力する。
【００１３】
吸気ダクト８内のスロットル弁１１の開度はアクセルペダル（図示せず）の踏込み動作に連動して可変される。スロットル弁１１にはスロットル開度の全閉状態を検出するアイドルスイッチを有するスロットルポジションセンサ１８が設けられており、スロットルポジションセンサ１８はＥＣＵ１００に接続されＥＣＵ１００の入力ポート４６にアイドルスイッチのオンオフ信号ＸＩＤＬＥを入力するとともに、Ａ／Ｄ変換器４８を介して入力ポート４６にスロットル開度に比例したアナログ電圧の信号を入力する。
【００１４】
サージタンク７には吸気通路内の絶対圧を検出する圧力センサ１９が設けられ、圧力センサ１９は吸気圧に比例したアナログ電圧の信号をＡ／Ｄ変換器４８を介して入力ポート４６に入力する。
シリンダブロック１にはウォータジャケット内の機関２００の冷却水温を検出する水温センサ２０が取付けられており、水温センサ２０は機関２００の冷却水温に比例したアナログ電圧の信号をＡ／Ｄ変換器４８を介して入力ポート４６に入力する。
【００１５】
バッテリ１０５の電圧もＥＣＵ１００に接続され、バッテリ１０５の電圧はＥＣＵ１００内のＡ／Ｄ変換器４８を介して入力ポート４６に入力される。また、機関２００が搭載される車両の車速を検出する車速センサ２１もＥＣＵ１００に接続され、車速センサ２１のアナログ電圧出力は、ＥＣＵ１００内のＡ／Ｄ変換器４８を介して入力ポート４６に入力される。
【００１６】
ディストリビュータ１６には２つのクランク角センサ３３、３４が設けられ、クランク角センサ３３はクランク角に換算して７２０°ＣＡ毎の基準位置を検出して出力パルス信号を発生し、クランク角センサ３４はクランク角に換算して３０°ＣＡ毎の位置を検出して出力パルス信号を発生する。これらの出力パルス信号は入力ポート４６に入力され、クランク角センサ３４の出力パルス信号はＣＰＵ４５の割込端子にも入力される。クランク角センサ３３、３４の出力パルス信号から、例えば機関２００の回転数が演算される。
【００１７】
一方、出力ポート４７は駆動回路４９を介して燃料噴射弁１２に接続される。燃料噴射弁１２から吸気ポート１３へ向けて吸気通路１７へ噴射される燃料噴射量は、空燃比が目標空燃比、本実施形態では理論空燃比になるように駆動回路４９により開弁される燃料噴射弁１２の開弁時間を可変することにより制御される。出力ポート４７は駆動回路４９を介してアラーム２２にも接続され、アラーム２２は空燃比センサ素子１０２やヒータ１０４が劣化したと判定されたときに付勢される。
【００１８】
なお、ＣＰＵ４５の割込は、Ａ／Ｄ変換器によるＡ／Ｄ変換終了時やクランク角センサ３４の出力パルス信号の受信時に発生する。Ａ／Ｄ変換器４８を介して入力ポート４６へ入力されたデジタルデータはＡ／Ｄ変換毎に読取られ、ＲＡＭ４３に格納される。機関２００の回転数ＮＥもクランク角センサ３４の出力パルス信号がＣＰＵ４５の割込端子に入力される毎に演算されＲＡＭ４３に格納される。つまりＲＡＭ４３に格納される機関２００のデータは絶えず更新される。
【００１９】
また、ヒータ１０４は空燃比センサ１０１に内蔵されセンサ素子を活性化するために加熱するためのものであるが、後述の処理によりＣＰＵ４５により演算されたデジタルデータを出力ポート４７を介してＤ／Ａ変換器５０でアナログ電圧に変換しヒータ回路１０６を介してヒータ１０４へ電力が供給される。
図２は図１に示す空燃比センサ１０１およびヒータ１０４の制御を示す図である。図１に示す機関２００の排気空燃比を検出する空燃比センサ１０１は、空燃比センサ素子（以下、センサ素子と記す）１０２とヒータ１０４とを有する。空燃比センサ回路（以下、センサ回路と記す）１０３がＥＣＵ１００内に設けられ、センサ素子１０２に電圧を印加する。センサ回路１０３は、デジタルコンピュータからなるＥＣＵ１００内で空燃比センサ１を制御する役割を担う制御ユニット、すなわち空燃比センサ制御ユニットＡ／ＦＣＵ１１０からアナログの印加電圧を受けこれに応じた電圧をセンサ素子１０２に印加する。Ａ／ＦＣＵ１１０は後述の処理にしたがって算出したデジタルデータを内部に設けられたＤ／Ａ変換器５０によりアナログ電圧に変換してセンサ回路１０３へ出力する。この電圧の印加に伴いＡ／ＦＣＵ１１０は被検出ガス中、すなわち排気ガス中の酸素濃度に比例して変化するセンサ素子１０２を流れる電流を検出する。Ａ／ＦＣＵ１１０はこの電流を検出するため内部に設けられたＡ／Ｄ変換器４８によりセンサ回路１０３からセンサ素子１０２を流れる電流に相当するアナログ電圧を受ける。Ａ／ＦＣＵ１１０はこのアナログ電圧をデジタルデータに変換し、変換したデジタルデータを後述する処理に使用する。
【００２０】
空燃比センサ１０１はセンサ素子１０２が活性状態にならないとその出力を空燃比制御に使用できない。このため、Ａ／ＦＣＵ１１０は機関始動時にバッテリ１０５からヒータ１０４へ電力供給してヒータ１０４を通電し、センサ素子１０２の早期活性化を行い、センサ素子１０２が活性化された後はその活性状態を維持するようヒータ１０４へ電力供給する。空燃比センサ回路１０３は内部に積分回路が設けられており、Ａ／ＦＣＵ１１０から空燃比センサ回路１０３へ入力された矩形パルスを正弦波状のパルスに変換した電圧をセンサ素子１０２に印加するようになっている。これにより高周波ノイズによるセンサ素子の出力電流の検出エラーを防止している。
【００２１】
図３は酸素濃度検出素子の温度とインピーダンスの相関関係を示す図である。上記酸素濃度検出素子（以下、単に素子と記す）の温度とインピーダンスとの間には図３に太線で示すような相関関係、すなわち素子温度の上昇に連れて素子のインピーダンスが減衰するという関係がある。この関係に着目し、上記のようなヒータの通電制御においては、素子のインピーダンスを検出して素子温度を導き出し、その素子温度が所望の活性化温度、例えば７００°Ｃになるようにフィードバック制御を行っている。例えば、図３の太線に示すように、素子のインピーダンスＺacが、初期制御素子温７００°Ｃに相当する素子のインピーダンス３０Ω以上とき（Ｚac≧３０）、すなわち素子温が７００°Ｃ以下のとき、ヒータを通電し、Ｚacが３０Ωより小のとき（Ｚac＜３０）、すなわち素子温が７００°Ｃを超えるとき、ヒータの通電を解除する制御を行うことで、素子の温度を活性化温度７００°Ｃ以上に保ち、素子の活性状態を維持している。また、ヒータ通電時は、素子のインピーダンスとその目標値との偏差（Ｚac−３０）をなくすために必要な通電量を求め、その通電量を供給するようデューティ制御を行っている。
【００２２】
図３に示すように、センサ素子１０２の抵抗がセンサ素子１０２の温度に依存すること、すなわちセンサ素子温度の増大に連れて減衰することに着目し、センサ素子１０２の抵抗がセンサ素子１０２の活性状態を維持する温度に相当する抵抗値、例えば３０Ωとなるようヒータ１０４へ電力供給することによりセンサ素子１０２の温度を目標温度、例えば７００°Ｃに維持する制御が行われている。また、Ａ／ＦＣＵ１１０は内部に設けられたＡ／Ｄ変換器４８によりヒータ回路１０６からヒータ１０４の電圧と電流に相当するアナログ電圧を受けデジタルデータに変換してこのデジタルデータを後述する処理に使用する。例えば、ヒータ１０４の抵抗値を算出し、この抵抗値に基づき機関の運転状態に応じた電力供給をヒータ１０４に行うとともにヒータ１０４の過昇温（ＯＴ）を防止するようヒータ１０４の温度制御を行う。
【００２３】
図４はヒータ制御のタイムチャートである。図４において、横軸は時間、縦軸は、上段がヒータへ供給する電力のデューティ比、中段がヒータ温度、下段が素子インピーダンスをそれぞれ示す。機関始動に伴い、ヒータへの通電が開始された時刻ｔ0 からヒータが目標（上限）温度、例えば１２００°Ｃに到達するまでの時刻ｔ1 まではデューティ比１００％の全通電制御が行われ、時刻ｔ1 からセンサ素子が活性化された温度７００°Ｃに相当するインピーダンス３０Ωに到達した時刻ｔ2 まではヒータの温度を目標温度に維持するヒータ温フィードバック制御が行われ、時刻ｔ2 以降はセンサ素子の温度を素子活性化温度７００°Ｃに維持する素子温フィードバック制御が行われる。このヒータ制御ルーチンをフローチャートに基づき以下に説明する。
【００２４】
図５はヒータ制御ルーチンのフローチャートである。本ルーチンは、所定の周期、例えば１００msec毎に実行される。先ず、ステップ５０１では、イグニッションスイッチ（図示せず）がＯＮかＯＦＦかを判別し、イグニッションスイッチがＯＮのときはステップ５０２へ進み、イグニッションスイッチがＯＦＦのときは本ルーチンを終了する。ステップ５０２では、ヒータ抵抗ＲＨをヒータへの印加電圧とヒータの通電電流とから算出する。ステップ５０３では、ステップ５０２で算出したヒータ抵抗ＲＨとヒータ抵抗学習値ＲＨＧとを比較し、ＲＨ≧ＲＨＧのときはステップ５０４へ進み、ＲＨ＜ＲＨＧのときはステップ５０５へ進む。ここで、ヒータ抵抗学習値ＲＨＧとはヒータ温度が目標温度（１２００°Ｃ）のときの抵抗値を製品毎や経時変化によるバラツキを解消できるように学習した値であり、後述する図１０のステップ１００８でバックアップＲＡＭに記憶されるヒータ全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴである。また、このヒータ抵抗学習値はヒータの温度的限界を考慮してヒータの抵抗がその目標抵抗値である状態であり続けた（空燃比センサが活性化される迄の間）としても、ヒータ寿命への影響が少ないと判断される抵抗値を目標抵抗値として学習される。
【００２５】
ステップ５０４では、素子インピーダンスＺacを読取る。ステップ５０６では読取ったＺacとセンサ素子の活性温度に相当する３０Ωとを比較し、Ｚac＞３０のときはセンサ素子が非活性状態であると判断してステップ５０７へ進み、Ｚac≦３０のときはセンサ素子が活性状態であると判断してステップ５０８へ進む。ステップ５０５では全通電（１００％デューティ）制御を行い、ステップ５０７ではヒータ温フィードバック制御を行い、ステップ５０８では素子温フィードバック制御を行う。
【００２６】
また、図４、図５に示したヒータ制御において、ヒータおよびセンサ素子の過昇温（Ｏver Ｔemperature）を防止するため、特定周波数５ＫＨｚに対する空燃比センサの素子インピーダンスＺacが劣化補正後の素子温制御目標値Ｚactgより所定値、例えば５Ωを超えるか否か（Ｚac≦Ｚactg−５（Ω））を判別し、その判別結果がＹＥＳのときは正常、すなわちヒータおよびセンサ素子は過昇温になっていないものと判定し、図５のフローチャートで示したヒータ制御ルーチンを実行し、その判別結果がＮＯのときは異常、すなわちヒータおよびセンサ素子は過昇温になっていると判定し、ＤＵＴＹ(i) ＝０に設定する処理を行う。
【００２７】
次に、機関アイドル時の素子劣化補正ルーチンおよびヒータ抵抗学習値を算出するヒータ抵抗学習ルーチンについて以下に説明する。
図６は機関アイドル時の素子劣化補正およびヒータ抵抗学習ルーチンの前半部フローチャートであり、図７は同ルーチンの後半部フローチャートである。本ルーチンは、所定の周期、例えば１２８msec毎に実行される。先ず、ステップ６０１では、現在、ヒータ抵抗を流れる電流ＨＴＩi とヒータ抵抗へ印加する電圧ＨＴＶi とヒータ電力供給のデューティ比ＤＵＴＹi とを読取りヒータへ供給する電力ＨＴＷi （＝ＨＴＩi ×ＨＴＶi ×ＤＵＴＹi ）を算出する。
【００２８】
ステップ６０２では、機関アイドル時の学習条件が成立しているか否かを判別し、その判別結果がＹＥＳのときはステップ６０３へ進み、その判別結果がＮＯのときは本ルーチンを終了する。機関アイドル時の学習条件は、機関が完全暖機定常アイドル状態であることを示す下記の各条件を満足したとき成立とみなす。
・機関始動時水温ＴＨＷstが所定温度範囲内（ＴＨＷ１≦ＴＨＷst≦ＴＨＷ２）
・バッテリ電圧ＢＡＴが所定値ＫＢＡＴ以上（ＫＢＡＴ≦ＢＡＴ）
・空燃比センサの素子インピーダンスＺac（Ω）が所定値範囲内（ＫＺac1 ≦Ｚac≦Ｋac2 ）
・機関回転数ＮＥ（rpm ）が所定値以下（ＮＥ≦ＫＮＥ）
・機関吸気圧ＰＭ（mmHg）が所定値以下（ＰＭ≦ＫＰＭ）
・車速ＳＰＤ（km/h）が所定値以下（ＳＰＤ≦ＫＳＰＤ）
・機関アイドルスイッチがオンステップ６０３では、学習条件成立後、所定時間経過したかを判別し、その判別結果がＹＥＳのときはステップ６０４へ進み、その判別結果がＮＯのときは本ルーチンを終了する。ステップ６０４では学習条件成立フラグ（XZACG ）をオンとする。
【００２９】
ステップ６０５では、前回処理周期で学習条件成立フラグ（XZACG ）がオンかオフかを判別し、オフ（XZACG ＝０）のときステップ６０６へ進み、オン（XZACG ＝１）のときステップ６０７へ進む。
ステップ６０６では、積算電力量ΣＨＴＷi を０にクリアし、積算ヒータ抵抗値ΣＨＴＲi を０にクリアし、かつ学習領域内経過時間カウンタＣＺＡＣＧＴを０にクリアする。
【００３０】
ステップ６０７では、学習領域内経過時間カウンタＣＺＡＣＧＴをインクリメント（ＣＺＡＣＧＴ＝ＣＺＡＣＧＴ＋１）する。
ステップ６０８では、今回処理周期の積算電力量ΣＨＴＷi を次式から算出する。
ΣＨＴＷi ＝ΣＨＴＷi-1 ＋ＨＴＷi
ここで、ΣＨＴＷi-1 は前回処理周期の積算電力量を示し、イグニッションスイッチをオンに切換え機関を始動した直後に０にクリアされる。
【００３１】
ステップ６０９では、積算ヒータ抵抗値ΣＨＴＲi を次式から算出する。
ΣＨＴＲi ＝ΣＨＴＲi-1 ＋ＨＴＲi
ここで、ΣＨＴＲi-1 は前回処理周期のヒータ抵抗値を示し、イグニッションスイッチをオンに切換え機関を始動した直後に０にクリアされる。
ステップ６１０では、学習領域内経過時間カウンタＣＺＡＣＧＴが所定値ＫＺＡＣＧＴ以上（ＣＺＡＣＧＴ≧ＫＺＡＣＧＴ）か否かを判別し、その判別結果がＹＥＳのときはステップ６１１へ進み、その判別結果がＮＯのときは図７のステップ７０１ヘ進む。ステップ６１１では学習完了フラグ（XZACGE）をオンに設定する。ステップ６１１実行後は図７に示すフローチャートのステップ７０１へ進む。
【００３２】
図７のステップ７０１では、学習完了フラグ（XZACGE）がオンかオフかを判別し、学習完了フラグがオン（XZACGE＝１）のとき、ステップ７０２へ進み、学習完了フラグがオフ（XZACGE＝０）のときは本ルーチンを終了する。ステップ７０２では、空燃比センサの故障判定を行う。すなわち、今回処理周期の積算電力量ΣＨＴＷi が所定値ＫΣＨＴＷ以上か否かを判別し（ΣＨＴＷi ≧ＫΣＨＴＷ）、その判別結果がＹＥＳにおときは空燃比センサは故障であると判断しステップ７０３へ進み、その判別結果がＮＯのときはステップ７０４へ進む。ステップ７０３では空燃比センサの故障フラグ（XAFSF ）をオンに設定し、本ルーチンを終了する。
【００３３】
ステップ７０４では、図８を用いて後述するヒータ積算電力量ΣＨＴＷi から素子温制御目標学習値Ｚactgg を算出するルーチンを実行する。ステップ７０５では積算ヒータ抵抗値ΣＨＴＲi からヒータ抵抗学習値ＨＴＲＧを算出する（図１０）。ステップ７０６では学習完了フラグ（XZACGE）をオフにクリアする。次に、図７のステップ７０４の処理、すなわちヒータ積算電力量から素子温制御目標値を算出するルーチンについて説明する。
【００３４】
図８は素子温制御目標学習値算出ルーチンのフローチャートである。本ルーチンは、所定の周期、例えば１２８msec毎に実行される。先ず、ステップ８０１では、ヒータの積算電力量ΣＨＴＷi から平均電力量ＨＴＷＡＶを次式から算出する。
ＨＴＷＡＶ＝ΣＨＴＷi ／積算回数
ステップ８０２では、図９に示すマップを用いて平均電力量ＨＴＷＡＶ（watt・h ）からセンサ素子の劣化を推定する素子温制御目標学習値Ｚactgg の補正量 ZACOT（Ω）を算出する。ステップ８０３では、今回処理周期の素子温制御目標学習値Ｚactggiを次式から算出する。
【００３５】
Ｚactggi＝Ｚactggi-1  ＋ ZACOT
ここで、Ｚactggi-1は前回処理周期の素子温制御目標学習値である。ステップ８０４では、バッテリバックアップのＳＲＡＭに上記のように学習した素子温制御目標学習値Ｚactggiを次式のように更新して記憶する。
Ｚactggb＝Ｚactggi
図９はヒータ平均電力量から素子温制御目標学習値の補正量を算出するマップである。図９のマップから判るように、補正量 ZACOTは平均電力量ＨＴＷＡＶの増大に伴い大きい値に設定されている。これは、空燃比センサの劣化に伴い、センサ素子のインピーダンス特性が変化し、センサ素子の温度を高温にする制御、すなわち素子温制御目標学習値Ｚactggiを低くする制御が行われ、このためヒータへ供給する電力量は大となる。本発明は、それゆえ、ヒータへの供給電力量の平均電力量を算出し、算出した平均電力量が増大したとき素子のインピーダンスを増大するよう制御することにより、センサ素子やヒータ抵抗の過加熱を防止している。また、センサ素子やヒータ抵抗の過加熱を防止することにより、センサ素子やヒータ抵抗の早期劣化を防止し寿命を延ばすことができる。次に、図７のステップ７０５の処理、すなわち積算ヒータ抵抗値からヒータ抵抗学習値を算出するルーチンについて以下に説明する。
【００３６】
図１０はヒータ抵抗学習値算出ルーチンのフローチャートである。ステップ１００１では、空燃比センサの素子インピーダンスフィードバックによるヒータの平均電力量ＨＴＷＡＶが所定範囲内か否かを判別する。このヒータの平均電力量ＨＴＷＡＶは、図８のステップ８０１で算出されたものを用いる。ＨＴＷＡＶが所定範囲内か否かの判別は、機関の排気温度が安定した機関の特定の運転状態、例えば機関アイドル時の学習条件が成立したときのＨＴＷＡＶが、空燃比センサの初期品時のヒータ制御温度に相当するヒータ供給電力量ＨＴＷのワット数以内か否かにより判別する。上記判別結果がＹＥＳのとき、すなわち機関の特定の運転状態、例えば機関アイドル時の学習条件が成立したときは機関の排気温度が安定していると推定されるので、素子インピーダンスや素子温が変化せず安定している。したがって、ヒータ抵抗も安定していると判断されるのでステップ１００２〜１００８に進み、ステップ１００２〜１００８ではヒータ抵抗学習値ＨＴＲＧおよび全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴの更新処理を実行する。一方、上記判別結果がＮＯのとき、すなわち機関アイドル時の学習条件が不成立のときは機関の排気温度が不安定であると推定されるので、素子インピーダンスや素子温が変化し不安定である。したがって、ヒータ抵抗も不安定であると判断されるのでヒータ抵抗学習値ＨＴＲＧおよび全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴの更新処理を実行せず本ルーチンを終了する。
【００３７】
ステップ１００２では、図６のステップ６０６で算出した今回処理周期までのヒータ積算抵抗値ΣＨＴＲi と積算回数とからヒータの平均抵抗値ＨＴＲＡＶを次式から算出する。
ＨＴＲＡＶ＝ΣＨＴＲi ／積算回数
ステップ１００３では、前記学習条件成立時、すなわち機関アイドル時におけるヒータ抵抗学習値ＨＴＲＧi をなまし演算により次式から算出する。
【００３８】
ＨＴＲＧi ＝（ＨＴＲＧi-1 ×３１＋ＨＴＲＡＶ）／３２
このヒータ抵抗学習値ＨＴＲＧi は、空燃比センサの暖機後、図５のステップ５０８における素子温フィードバック制御中のヒータ温度上限ガード値として、すなわち図５のステップ５０３のＲＨＧとして使用される。すなわち、機関アイドル時は排気ガスの温度が低温で安定するのでヒータへの供給電力は一定となりヒータは高温で安定するので、この時のヒータ抵抗値を上限ガード値にし、ヒータの過加熱を防止してヒータの断線を防止する。
【００３９】
ステップ１００４では、機関始動時のヒータ全通電目標ヒータ抵抗値ＨＴＲ１２００を次式から算出する。
ＨＴＲ１２００＝ＨＴＲＧ×ｋ
ここで、ｋは温度係数である。上式により、ヒータ抵抗学習値ＨＴＲＧが算出された学習条件下でのヒータ温度、例えば８５０°Ｃに対して空燃比センサ暖機時に制御目標となる１２００°Ｃ相当のヒータ抵抗値ＨＴＲ１２００が求められる。この場合、温度係数ｋは、ｋ＝ＨＴＲ１２００／ＨＴＲ８５０である。
【００４０】
ステップ１００５では、ＨＴＲ１２００が所定値ＫＨＴＲ１２００ＧＤ以下か否かを判別し、ＨＴＲ１２００≦ＫＨＴＲ１２００ＧＤのときはステップ１００６に進み、ＨＴＲ１２００＞ＫＨＴＲ１２００ＧＤのときはステップ１００７に進む。
ステップ１００６では、機関始動時のヒータ全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴを次式から算出する。
【００４１】
ＨＴＲＬＭＴ＝ＨＴＲ１２００
ステップ１００７では、下式のように、ヒータ全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴに所定値ＫＨＴＲ１２００ＧＤを設定し、上限ガードする。
ＨＴＲＬＭＴ＝ＫＨＴＲ１２００ＧＤ
ステップ１００８では、ヒータ抵抗学習値ＨＴＲＧi とヒータ全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴとをバックアップＲＡＭに記憶する。
【００４２】
上記ヒータ抵抗学習値ＨＴＲＧi は、空燃比センサ暖機後の上限ヒータ温度ガード値として使用され、上記ヒータ全通電目標ヒータ抵抗学習値ＨＴＲＬＭＴは、空燃比センサ暖機中の上限ヒータ温度ガード値として使用される。
以上図を用いて説明した本発明の実施形態において、ヒータの温度とヒータの抵抗値との関係の取得として、空燃比センサ活性化前に行うヒータの抵抗フィードバックによるヒータへの供給電力の制御におけるヒータの目標抵抗値としてのヒータ抵抗学習値の取得を例に上げて説明したが、本発明はこれに限定されるものでない。
【００４３】
ヒータの温度とヒータ抵抗値との関係を取得することは、
１．ヒータの温度が或る温度（例：８５０℃、１２００℃など）である時のヒータ抵抗値を取得すること、
２．ヒータが温度的な限界（それ以上電力供給して昇温させると断線等の異常を生ずる状態、もしくは、ヒータの寿命を考慮した場合に、それ以上の電力供給は望ましくない状態）である時のヒータ抵抗値を取得すること、または、
３．空燃比センサの素子インピーダンスフィードバック制御時におけるヒータの抵抗値の上限ガード値を取得すること、
を包含する。
【００４４】
なお、上記３において、ヒータ抵抗がその目標抵抗値である状態であり続けたとしても、ヒータ寿命への影響が少ないと判断される抵抗値が上限ガード値としての目標抵抗値とされる。
本発明の他の実施形態として、例えば、
（１）空燃比センサ活性化前であっても、センサ素子インピーダンスによりセンサ素子温度を推定し、ヒータ供給電力を制御する装置において、ヒータ抵抗フィードバック制御はせずに、ヒータ抵抗値が、所定温度、例えば１２００℃に対応する抵抗値を超えないようにガードする構成、および、
（２）空燃比センサ活性化前の上限ヒータ抵抗値についてはヒータ抵抗学習値を用いないで、ヒータ抵抗学習値は通常時の空燃比センサの素子インピーダンスフィードバック制御時における上限ヒータ抵抗値としてのみ用いる構成、
が考えられる。
【００４５】
【発明の効果】
以上説明したように、本発明の酸素濃度検出装置によれば、ヒータ温度とヒータ抵抗値との関係を取得するために別のルーチンを設けることなく、短時間に上記関係を取得できる。
また、本発明の酸素濃度検出装置によれば、空燃比センサの素子温度と素子インピーダンスとの関係が空燃比センサが初期品のときの同関係と異なるとき、ヒータ温度とヒータ抵抗値との関係の取得を禁止するので、空燃比センサの経年変化するようなヒータ抵抗値が不安定なときのヒータ温度とヒータ抵抗値との関係の誤取得を回避できる。
【図面の簡単な説明】
【図１】本発明による酸素濃度検出装置を備えた内燃機関の一実施形態の概略構成図である。
【図２】図１に示す空燃比センサおよびヒータの制御を示す図である。
【図３】酸素濃度検出素子の温度とインピーダンスの相関関係を示す図である。
【図４】ヒータ制御のタイムチャートである。
【図５】ヒータ制御ルーチンのフローチャートである。
【図６】機関アイドル時の素子劣化補正およびヒータ抵抗学習ルーチンの前半部フローチャートである。
【図７】機関アイドル時の素子劣化補正およびヒータ抵抗学習ルーチンの後半部フローチャートである。
【図８】素子温制御目標学習値算出算出ルーチンのフローチャートである。
【図９】ヒータ平均電力量から素子温制御目標学習値の補正量を算出するマップである。
【図１０】ヒータ抵抗学習値算出ルーチンのフローチャートである。
【符号の説明】
１…シリンダブロック
９…エアフローメータ
１８…スロットルポジションセンサ
１９…吸気圧センサ
２０…水温センサ
２１…車速センサ
３３、３４…クランク角センサ
１００…電子制御ユニット（ＥＣＵ）
１０１…空燃比センサ
１０２…センサ素子
１０３…センサ回路
１０４…ヒータ
１０５…バッテリ
１０６…ヒータ回路
１１０…空燃比センサ制御ユニット（Ａ／ＦＣＵ）
２００…機関
【図１】
0003692847.tif 000002
【図２】
0003692847.tif 000003
【図３】
0003692847.tif 000004
【図４】
0003692847.tif 000005
【図５】
0003692847.tif 000006
【図６】
0003692847.tif 000007
【図７】
0003692847.tif 000008
【図８】
0003692847.tif 000009
【図９】
0003692847.tif 000010
【図１０】
0003692847.tif 000011