(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0020】
本発明が適用された実施形態の電子制御装置について説明する。
本実施形態の電子制御装置(以下、ECUという)1は、例えば車両のエンジンを制御する装置であるが、ここでは、空燃比センサに関する部分について説明する。
【0021】
図1示すように、ECU1には、空燃比を検出するための空燃比センサ3が接続される。
空燃比センサ3は、酸素濃淡電池である起電力セル3aと、酸素ポンプセル3bとの、2つのセル3a,3bを有した2セルタイプの空燃比センサである。空燃比センサ3は、排気ガスが導入される測定ガス空間と基準ガス空間との酸素濃度差に応じた起電力セル3aの出力電圧(ネルンスト電圧)が目標値となるように、酸素ポンプセル3bに流れるポンプ電流が制御されて、そのポンプ電流が空燃比を表すこととなるセンサである。
【0022】
更に、空燃比センサ3はヒータ3cも備える。ヒータ3cは、ECU1から出力されるPWM信号の形式の駆動信号(以下、ヒータ駆動信号ともいう)によって通電されることにより、セル3a,3bを加熱する。
【0023】
ECU1は、空燃比センサ3を駆動するセンサ駆動部としてのセンサ駆動用IC5と、ヒータ3cに上記ヒータ駆動信号を出力するヒータ制御部7と、を備える。そして、ヒータ制御部7は、ヒータ3cの制御処理を含む各種処理を行うマイコン8と、マイコン8から出力されるPWM信号の形式の駆動指示信号に従って、ヒータ3cに通電電流としての上記ヒータ駆動信号を出力する出力回路9と、を備える。
【0024】
センサ駆動用IC5は、
図2に例示するように、起電力セル3aの出力電圧であるネルンスト電圧を検出して、その検出値を目標値(この例では基準電位(=0V))にするためのポンプ電流を決定する精密制御を実施し、その精密制御で決定したポンプ電流を酸素ポンプセル3bに流す。つまり、ネルンスト電圧が基準電位となるように、ポンプ電流を調節する。
【0025】
センサ駆動用IC5は、精密制御を実施する状態と、精密制御を実施しない状態とに、交互に切り換わるようになっている。センサ駆動用IC5が精密制御を実施する期間のことを、精密制御期間といい、センサ駆動用IC5が精密制御を実施しない期間のことを、非精密制御期間という。
【0026】
図7における1段目に例示するように、精密制御期間と非精密制御期間とは交互に現れることとなる。尚、
図7の1段目においては、ローの期間が精密制御期間で、ハイの期間が非精密制御期間である。このことは、後述する
図9についても同様である。
【0027】
センサ駆動用IC5からマイコン8へは、酸素ポンプセル3bに流しているポンプ電流の値であるポンプ電流値が、例えばシリアル通信によって出力される。そして、マイコン8は、センサ駆動用IC5から取得したポンプ電流値を、空燃比及び酸素濃度に換算する。算出された空燃比は、エンジンへの燃料噴射量を補正するために用いられる。算出された酸素濃度はEGRバルブ開度の補正をするために用いられる。
【0028】
また、センサ駆動用IC5は、非精密制御期間において、起電力セル3aのインピーダンスを検出するための処理を行う。例えば、起電力セル3aにインピーダンス測定用の電流を印加し、その電流の印加前と印加後とで測定した起電力セル3aの両端電圧の差から、起電力セル3aのインピーダンスを算出する。そして、センサ駆動用IC5は、算出したインピーダンスの値も、マイコン8へ例えばシリアル通信によって出力する。
【0029】
起電力セル3aのインピーダンスは、起電力セル3aの温度と相関があるため、マイコン8において、ヒータ3cを制御するために用いられる。
ヒータ3cの制御モード(以下、ヒータ制御モード、あるいは単に、モードという)としては、
図3に示すように、結露乾燥制御と、急速昇温制御と、フィードバック(F/B)制御とがある。
図3における縦軸の「ヒータ駆動デューティ」とは、ヒータ3cに出力するヒータ駆動信号のデューティ比のことである。
【0030】
結露乾燥制御は、結露による空燃比センサ3の割れを防止するための制御であり、ヒータ駆動信号のデューティ比をオープン制御により微小な値にしてヒータ3cに通電する制御である。
【0031】
急速昇温制御は、セル3a,3bの温度を、空燃比(酸素濃度)の検出に適した活性温度まで急速に上昇させるための制御であり、ヒータ駆動信号のデューティ比をオープン制御によって調節する制御である。
【0032】
フィードバック制御は、セル3a,3bの温度を活性温度に維持するための制御であり、起電力セル3aのインピーダンスが目標値となるように(つまり、セル3a,3bの温度が目標温度となるように)、ヒータ駆動信号のデューティ比を調節する制御である。センサ駆動用IC5からマイコン8に出力されるインピーダンスの値は、このフィードバック制御に用いられる。
【0033】
センサ駆動用IC5からマイコン8へは、ヒータ制御モードを指示するモード情報信号が、専用の信号線あるいはシリアル通信によって出力される。そして、マイコン8は、ヒータ3cの制御に関して、そのモード情報信号によって指示されるモードの制御を実施する。ヒータ制御モードは、
図3に示すように、「結露乾燥制御→急速昇温制御→フィードバック制御」の順に遷移する。また、各モードの切り替わりタイミングは、ヒータ駆動信号の周期の倍数のタイミングになっている。
【0034】
マイコン8は、CPU11と、CPU11によって実行されるプログラム12が記憶されたROM13と、RAM14と、PWM回路15と、を備える。ROM13には、後述する期間テーブル17も記憶されている。
【0035】
PWM回路15は、PWM信号である駆動指示信号を出力回路9に出力するタイマ回路である。
PWM回路15は、CPU11によって、駆動指示信号のオンタイミングとオフタイミングとが、設定されることにより指示される。駆動指示信号のオンタイミングとは、駆動指示信号をヒータ3cに通電しない方の非アクティブレベル(この例ではロー)からヒータ3cに通電する方のアクティブレベル(この例ではハイ)へ反転させるタイミングである。駆動指示信号のオフタイミングは、駆動指示信号をハイからローに反転させるタイミングである。
【0036】
PWM回路15は、CPU11によって設定された(換言すれば、指示された)オンタイミングが到来すると、駆動指示信号の出力レベルをハイにする。そして、PWM回路15は、その後、CPU11によって設定された(換言すれば、指示された)オフタイミングが到来すると、駆動指示信号の出力レベルをローにする。PWM回路15は、オフタイミングとしては、例えばオンタイミングからの経過時間が設定される。
【0037】
出力回路9は、マイコン8からの駆動指示信号がハイであれば、ヒータ3cに通電し、駆動指示信号がローであれば、ヒータ3cへの通電を停止する。ヒータ3cに通電することが、ヒータ駆動信号をアクティブレベル(この例ではハイ)にすることに相当し、ヒータ3cへの通電を停止することが、ヒータ駆動信号を非アクティブレベル(この例ではロー)にすることに相当する。
【0038】
次に、ROM13に記憶された期間テーブル17について説明する。
期間テーブル17は、センサ駆動用IC5における精密制御期間と非精密制御期間との、各々の時刻を示すスケジュール情報である。
【0039】
本実施形態の期間テーブル17では、
図4に示すように、各ヒータ制御モードについて、そのモードへの遷移時(開始時)を、基準時刻としてのスタート(0μs)とし、そのスタートからの経過時間によって、精密制御期間と非精密制御期間とを定義している。各モードにおいては、「非精密制御期間→精密制御期間→非精密制御期間→…」の繰り返しとなり、期間テーブル17には、その繰り返される各期間の時間が記録されている。
【0040】
図4の例の期間テーブル17は、
図5の内容を表すこととなる。
即ち、結露乾燥制御のモードにおいては、そのモードの開始時(スタート)から、時間T1(=6310μs)が経過するまでが、非精密制御期間であり、その後、時間T2(=1400μs)が経過するまでが、精密制御期間である。その後、時間T3(=640μs)が経過するまでが、非精密制御期間であり、その後、時間T4(=1640μs)が経過するまでが、精密制御期間である。以後は、この繰り返しである。また、急速昇温制御のモードにおいては、そのモードの開始時から、時間T5(=253μs)が経過するまでが、非精密制御期間であり、その後、時間T6(=413μs)が経過するまでが、精密制御期間である。以後は、この繰り返しである。同様に、フィードバック制御のモードにおいては、そのモードの開始時から、時間T7(=253μs)が経過するまでが、非精密制御期間であり、その後、時間T8(=413μs)が経過するまでが、精密制御期間である。以後は、この繰り返しである。
【0041】
センサ駆動用IC5が精密制御を実施する精密制御期間中に、マイコン8がヒータ3cへのヒータ駆動信号を反転させてしまうと、センサ駆動用IC5において、起電力セル3aのネルンスト電圧が正しく検出されず、その結果、空燃比の検出精度が悪化してしまう。信号の反転とは、ローからハイへの反転と、ハイからローへの反転との、両方である。つまり、精密制御期間は、ヒータ駆動信号の反転が禁止される期間であり、非精密制御期間は、ヒータ制御信号の反転が許可される期間である。
【0042】
このため、マイコン8は、ヒータ駆動信号をローからハイに反転させるオンタイミングと、ヒータ駆動信号をハイからローに反転させるオフタイミングとを、上記期間テーブル17を用いて、精密制御期間から外れるように(換言すれば非精密制御期間内となるように)決定する。
【0043】
そこで次に、マイコン8がヒータ3cを制御するために行う処理内容について説明する。尚、マイコン8が行う処理は、CPU11がROM13内のプログラム12を実行することで実現されるため、CPU11を主体にして説明する。
【0044】
[処理内容1:要求オン時間の算出]
CPU11は、ヒータ駆動信号をハイにしてからローにするまでのオン時間を、ヒータ3cの制御ロジックに基づいて算出する。ヒータ3cの制御ロジックは、プログラム12としてROM13に記憶されている。オン時間は、ヒータ駆動信号の1周期におけるハイ時間(即ち、1周期中の通電時間)である。ヒータ駆動信号(PWM信号)の1周期に対するオン時間の比率が、デューティ比である。ヒータ3cの制御ロジックに基づいて算出されるオン時間は、ヒータ3cを制御するために要求されるオン時間であることから、要求オン時間という。
【0045】
例えば、要求オン時間は、結露乾燥制御のモードでは、一定の値に算出され、急速昇温制御のモードでは、そのモードの開始時からの経過時間に応じた値に算出される(
図3参照)。また、フィードバック制御のモードでは、要求オン時間は、起電力セル3aのインピーダンスに応じて、そのインピーダンスを目標値にするための値に算出される。
【0046】
[処理内容2:要求オン期間−指示オン期間変換テーブルの作成]
CPU11は、各ヒータ制御モードについて、期間テーブル17を用いて、
図6に示すような要求オン期間−指示オン期間変換テーブル(以下単に、オン期間変換テーブルという)を作成する。尚、要求オン期間とは、ヒータ駆動信号のオンタイミングから要求オン時間が経過するまでの期間のことである。また、指示オン期間とは、PWM回路15に指示するオンタイミングからオフタイミングまでの期間のことである。
【0047】
図6に示すように、オン期間変換テーブルは、モードの開始時を起点とした任意の時刻(具体的には、モードの開始時からの時間)を入力すると、精密制御期間に入っていない時刻が、出力時刻として得られるデータテーブルである。
【0048】
具体的には、オン期間変換テーブルでは、入力時刻が精密制御期間に入っていなければ(換言すれば、非精密制御期間に入っていれば)、その入力時刻が出力時刻となる。また、入力時刻が精密制御期間に入っていれば、その入力時刻が入っている精密制御期間の直前に存在する非精密制御期間の終了タイミングが、出力時刻となる。非精密制御期間の終了タイミングとは、当該テーブルにおいて、その非精密制御期間に入っている最小分解能での各時刻のうち、最終の時刻である。
【0049】
図6の横軸を入力時刻とし、
図6の縦軸を出力時刻とすると、例えば、オン期間変換テーブルに非精密制御期間内の時刻t1を入力した場合には、その時刻t1が出力時刻となる。また例えば、オン期間変換テーブルに精密制御期間内の時刻t3を入力した場合には、その時刻t3が入っている精密制御期間の直前に存在する非精密制御期間の終了タイミング(この例では時刻t2)が、出力時刻となる。
【0050】
この例において、ヒータ駆動信号のオンタイミングが時刻t1であり、そのオンタイミングから要求オン時間だけ後のオフタイミングが時刻t3であるとする。つまり、
図6における(1)の部分に示すように、時刻t1から時刻t3までの期間が要求オン期間であるとする。
【0051】
この場合、2つの時刻t1,t3を、要求オン期間として、オン期間変換テーブルに入力すれば、時刻t1から時刻t2までの期間であって、オンタイミングとオフタイミングとの両方が精密制御期間から外れた期間が出力されることとなる。そして、
図6における(2)の部分に示すように、その時刻t1から時刻t2までの期間は、PWM回路15に指示するオンタイミングからオフタイミングまでの期間(即ち、指示オン期間)とすることができる。このことから、
図6のオン期間変換テーブルを、フルネームでは「要求オン期間−指示オン期間変換テーブル」と名付けている。オン期間変換テーブルは、要求オン期間を横軸にし、指示オン期間を縦軸にした場合、精密制御期間と非精密制御期間とのうち、精密制御期間において階段状になるグラフとなる。尚、
図6における(2)の部分に記載している「指示オン時間」とは、指示オン期間の長さであり、PWM回路15に指示するオンタイミングからオフタイミングまでの時間のことである。
【0052】
[処理内容3:ヒータ駆動信号のオンタイミングの決定]
CPU11は、ヒータ駆動信号をハイに反転させる前毎に、ヒータ駆動信号のオンタイミングを、前述の期間テーブル17に基づいて、下記〈1〉〜〈3〉の条件が成立するように決定する。尚、出力回路9がヒータ駆動信号をハイに反転させる前毎とは、換言すれば、PWM回路15が出力回路9への駆動指示信号をハイに反転させる前毎、ということでもある。また、CPU11は、処理の上では、PWM回路15に指示する駆動指示信号のオンタイミングを、ヒータ駆動信号のオンタイミングとして決定する。
【0053】
〈1〉
図7における点線の楕円内に示すように、今回決定するオンタイミングである今回オンタイミングが、精密制御期間から外れる。
〈2〉
図7における点線の楕円内に示すように、今回オンタイミングと、前回決定したオンタイミングである前回オンタイミングとの間隔T0が、ヒータ駆動信号の周期の許容範囲(TCmin〜TCmaxまでの範囲であり、以下、周期許容範囲という)内である。尚、「TCmin」は、周期の許容最小値であり、「TCmax」は、周期の許容最大値である。
【0054】
〈3〉
図7における一点鎖線の楕円内に示すように、今回オンタイミングを起点にして周期許容範囲内の時間(この例ではT1,T2)ずつ後のN個(Nは1以上の整数であり、この例ではN=2)のタイミングが、精密制御期間から外れる。
【0055】
CPU11は、前述の期間テーブル17に基づいて、各ヒータ制御モードの開始時(あるいは、最初のモードである結露乾燥制御の開始時)を基準とした時刻について、精密制御期間と非精密制御期間との何れに入っているかを判断することができる。このため、CPU11は、期間テーブル17に基づいて、上記〈1〉〜〈3〉の条件が成立するように、今回オンタイミングを決定することができる。
【0056】
また例えば、CPU11は、各ヒータ制御モードの開始時から最初のオンタイミングは、上記〈1〉〜〈3〉の条件のうち、〈1〉の条件だけで決定する。例えば、ヒータ制御モードの開始時からみて最初の非精密制御期間内のタイミングを、最初のオンタイミングとして決定する。
【0057】
尚、上記条件〈3〉を満たすN個のタイミングは、次回以降のオンタイミングとして採用し得るタイミングである。つまり、〈3〉の条件は、次回以降のN個のオンタイミングについても、上記〈1〉及び〈2〉の条件を満たすことができるための条件である。
【0058】
また、今回オンタイミングを決定するための条件から、上記〈3〉の条件を除くことも可能である。但し、今回オンタイミングを、上記〈1〉及び〈2〉の条件だけで決定するように構成すると、今回オンタイミングの選択マージンが広くなる。その結果、例えば、
図7における「比較例」の段に例示するように、次回以降のオンタイミングを決定する際に、上記〈1〉及び〈2〉の条件を満たすタイミングが存在しなくなってしまう可能性がある。これに対し、今回オンタイミングを決定するための条件として、上記〈3〉の条件を含めれば、次回以降のオンタイミングを決定する際に、上記〈1〉及び〈2〉の条件を満たすタイミングが存在しなくなることを防止することができる。
【0059】
[処理内容4:ヒータ駆動信号のオフタイミングの決定]
CPU11は、上記「処理内容3」で決定したオンタイミング(今回オンタイミング)から、上記「処理内容1」で算出した要求オン時間だけ後のタイミング(時刻)を、前述のオン期間変換テーブル(
図6)に入力時刻として代入することで、ヒータ駆動信号のオフタイミングを決定する。尚、CPU11は、処理の上では、PWM回路15に指示する駆動指示信号のオフタイミングを、ヒータ駆動信号のオフタイミングとして決定する。
【0060】
このため、オンタイミングから要求オン時間だけ後のタイミングが、精密制御期間に入っていなければ、その要求オン時間だけ後のタイミングが、オフタイミングとして決定される。また、
図6における(1)の部分に例示したように、オンタイミングから要求オン時間だけ後のタイミング(
図6の例では時刻t3)が精密制御期間に入っていたとする。その場には、
図6における(2)の部分に例示したように、オンタイミングから要求オン時間だけ後のタイミング(t3)が入っている精密制御期間の直前に存在する非精密制御期間の終了タイミング(
図6の例では時刻t2)が、オフタイミングとして決定される。
【0061】
尚、オフタイミングを決定するための要求オン時間は、後述する「処理内容5」の補正によって、増加補正される場合もある。
[処理内容5:要求オン時間の補正]
CPU11は、前回のオフタイミングを決定した際に、非精密制御期間の終了タイミングをオフタイミングとして決定した場合には、今回のオフタイミングを決定するために用いる要求オン時間に、補正値ΔTを加算する。その補正値ΔTは、前回のオフタイミングを決定するのに用いられた要求オン時間(以下、前回使用の要求オン時間という)と、前回のオンタイミングから前回のオフタイミングまでの時間(即ち、前回の指示オン時間であり、前回の実際のオン時間)との差分である。
【0062】
つまり、決定されたオンタイミングから要求オン時間だけ後のタイミングが、精密制御期間に入っていて、非精密制御期間の終了タイミングがオフタイミングとして決定された場合には、実際のオン時間が要求オン時間よりも短くなる。このため、その短くなった分の時間である補正値ΔTが、次のオフタイミングを決定するための要求オン時間に加算されるようにしている。
【0063】
[処理内容6:遅延補正]
出力回路9には動作遅延がある。つまり、マイコン8から出力回路9への駆動指示信号が反転してから、ヒータ駆動信号の出力レベルが反転するまでには、遅れがある。また、マイコン8内のPWM回路15から出力回路9への信号経路にも信号伝搬遅延がある。
【0064】
よって、ヒータ駆動信号を出力する信号出力手段に相当する部分(この例では、PWM回路15及び出力回路9)は、CPU11によって指示されたオンタイミングが到来してからヒータ駆動信号の出力レベルをハイに反転させるまでに第1の遅延時間Td1を有する。同様に、信号出力手段に相当する部分は、CPU11によって指示されたオフタイミングが到来してからヒータ駆動信号の出力レベルをローに反転させるまでに第2の遅延時間Td2を有する。尚、第1の遅延時間Td1と第2の遅延時間Td2とは、同じである場合もあり得るし、異なる場合もあり得る。また一般に、上記信号経路の信号伝搬遅延は、出力回路9の動作遅延と比べれば、無視できる程度に小さいため、遅延時間Td1,Td2は、出力回路9の動作の遅延時間とも言える。
【0065】
このため、CPU11は、上記「処理内容3」で決定したオンタイミングを第1の遅延時間Td1だけ前にずらすと共に、上記「処理内容4」で決定したオフタイミングを第2の遅延時間Td2だけ前にずらす遅延補正を行う。そして、CPU11は、その遅延補正後のオンタイミングとオフオフタイミングとを、PWM回路15に指示する。尚、遅延時間Td1,Td2が無視できる程に小さい場合には、このような遅延補正は省略することができる。
【0066】
次に、CPU11がヒータ3cを制御するために行うヒータ制御処理について、
図8を用い改めて説明する。
CPU11は、ECU1への電源投入に伴って動作を開始すると、
図8のヒータ制御処理を実行する。
【0067】
CPU11は、ヒータ制御処理では、まずS110にて、「処理内容2」で説明したように、ROM13内の期間テーブル17を用いて、各ヒータ制御モードについてのオン期間変換テーブル(要求オン期間−指示オン期間変換テーブル)を作成する。尚、オン期間変換テーブルは、最初は、結露乾燥制御のモードに対応するものを作成し、その後、ヒータ制御モードが切り換わる毎に、切り換えられたモードに対応するものを作成しても良い。
【0068】
CPU11は、次のS120にて、「処理内容3」で説明したように、ヒータ駆動信号の今回のオンタイミング(今回オンタイミング)を決定する。
CPU11は、次のS130にて、「処理内容5」で説明した要求オン時間の補正値ΔTを算出する。補正値ΔTは、前述したように、前回使用の要求オン時間から前回の指示オン時間を引いた値である。
【0069】
CPU11は、次のS140にて、「処理内容1」で説明したように、ヒータ3cの制御ロジックに基づいて要求オン時間を算出する。尚、要求オン時間は、
図8とは別の処理で算出されるようになっていても良い。
【0070】
CPU11は、次のS150にて、S140で算出された今回の要求オン時間に、S130で算出された補正値ΔTを加算した値を、オフタイミング決定用の要求オン時間として算出する。この処理は、「処理内容5」で説明した要求オン時間の補正に相当するが、実質的に補正が行われるのは、補正値ΔTが0でない場合である。
【0071】
CPU11は、次のS160にて、「処理内容4」で説明した処理により、ヒータ駆動信号の今回のオフタイミングを決定する。具体的には、CPU11は、S120で決定した今回のオンタイミングから、S150で算出した要求オン時間だけ後のタイミングを、前述のオン期間変換テーブルに入力時刻として代入することで、今回のオフタイミングを決定する。S120で決定した今回のオンタイミングから、S150で決定した今回のオフタイミングまでの時間が、今回の指示オン時間となる。
【0072】
尚、前回のS160において、オン期間変換テーブルに代入したタイミング(即ち、前回のオンタイミングから前回使用の要求オン時間だけ後のタイミング)が精密制御期間に入っていなければ、そのタイミングが、オフタイミングとして決定される。その場合には、前回使用の要求オン時間と前回の指示オン時間とが同じになる。よって、今回のS130では、補正値ΔTが0となり、今回のS150では、S140で算出された今回の要求オン時間が、そのままオフタイミング決定用の要求オン時間となる。つまり、要求オン時間の増加補正は実施されないこととなる。
【0073】
一方、前回のS160において、オン期間変換テーブルに代入したタイミングが精密制御期間に入っていたなら、そのタイミングが入っている精密制御期間の直前に存在する非精密制御期間の終了タイミングが、オフタイミングとして決定される。その場合には、前回使用の要求オン時間よりも前回の指示オン時間が短くなり、今回のS130で算出される補正値ΔTが0よりも大きい値となる。よって、今回のS150では、要求オン時間の増加補正が実施されることとなる。つまり、ヒータ3cの制御ロジックに基づく今回の要求オン時間に補正値ΔTを加算した値が、オフタイミング決定用の要求オン時間となる。
【0074】
CPU11は、次のS170にて、「処理内容6」で説明したように、S120で決定した今回のオンタイミングを第1の遅延時間Td1だけ前にずらすと共に、S160で決定した今回のオフタイミングを第2の遅延時間Td2だけ前にずらす遅延補正を行う。そして、CPU11は、次のS180にて、S170で補正した後のオンタイミングとオフオフタイミングとを、PWM回路15に指示する。
【0075】
すると、PWM回路15は、CPU11によって指示されたオンタイミングとオフタイミングとのうち、オンタイミングが到来すると、出力回路9への駆動指示信号をハイに反転させ、その後、オフタイミングが到来すると、駆動指示信号をローに反転させる。
【0076】
CPU11は、次のS190にて、PWM回路15による駆動指示信号がハイか否かを判定し、ハイであれば(つまり、S180でPWM回路15に指示したオフタイミングが未だ到来していなければ)、S140に戻る。PWM回路15に指示したオンタイミングが到来してからオフタイミングが到来するまでの間に、S140〜S180の処理を行うことで、オフタイミングを変更可能にしている。尚、S180にて、PWM回路15に既に経過したタイミングを指示しても、駆動指示信号の出力に影響はない。
【0077】
CPU11は、S190にて、駆動指示信号がハイではない(即ちローである)と判定した場合には、S200に進み、ヒータ駆動停止条件が成立したか否かを判定する。ヒータ駆動停止条件は、例えば、エンジンが停止した場合に成立する。
【0078】
そして、CPU11は、S200にて、ヒータ駆動停止条件が成立していないと判定した場合には、S120に戻る。このため、CPU11は、PWM回路15による駆動指示信号がローになっている間に(換言すれば、ヒータ駆動信号をハイに反転させる前毎に)、S120〜S180の処理を行うこととなる。
【0079】
また、CPU11は、S200にて、ヒータ駆動停止条件が成立したと判定した場合には、当該ヒータ制御処理を終了する。
次に、ECU1の作用について、
図9の例を用いて説明する。
【0080】
図9の(2)の段において、「要求周期」は、ヒータ3cを制御する上で要求されるヒータ駆動信号の周期の標準値であり、周期許容範囲(TCmin〜TCmax)のセンター値である。そして、
図9の(2)の段において、「要求オン時間」は、
図8のS140で算出される要求オン時間(ヒータ3cを制御するために要求されるヒータ駆動信号のオン時間)である。また、
図9の(2)の段において、「補正後の要求オン時間」は、
図8のS150で補正値ΔTが加算されたオフタイミング決定用の要求オン時間である。
【0081】
また、
図9の(3)の段は、
図8のS120,S160で算出されるオンタイミング及びオフタイミングを表しており、
図9の(4)の段は、
図8のS170で遅延補正を行った後のオンタイミング及びオフタイミングを表している。
図9の(3)及び(4)の各段においては、矩形波の立ち上がりタイミングが、オンタイミングであり、矩形波の立ち下がりタイミングが、オフタイミングである。そして、
図9の(3)の段において、「指示周期」は、
図8のS120で算出されるオンタイミングの間隔であり、その「指示周期」は、ヒータ駆動信号の実際の周期となる。また、
図9の(3)の段において、「指示オン時間」は、前述の通り、PWM回路15に指示されるオンタイミングからオフタイミングまでの時間であり、その「指示オン時間」は、ヒータ駆動信号の実際のオン時間となる。
【0082】
図9に示すように、非精密制御期間内の時刻t11が、
図8のS120により、オンタイミングとして決定されたとする。そして、
図8のS130で算出された補正値ΔTは0であるとし、
図8のS140で算出された要求オン時間は「Tron1」であるとする。
【0083】
この場合、
図8のS150では、「Tron1」がオフタイミング決定用の要求オン時間として算出される(ΔT=0であるため)。そして、
図8のS160では、オンタイミングである時刻t11から「Tron1」だけ後の時刻t13が、オン期間変換テーブルに代入される。この例において、時刻t13は、精密制御期間に入っているため、その時刻t13が入っている精密制御期間の直前に存在する非精密制御期間の終了タイミング(この例では時刻t12)が、オフタイミングとして決定されることとなる。よって、時刻t11から時刻t12までの時間(=Tson1<Tron1)が、今回の指示オン時間となる。
【0084】
そして、
図8のS170,S180により、
図9の(4)の段に示すように、時刻t11を遅延時間Td1だけ前にずらしたタイミングと、時刻t12を遅延時間Td2だけ前にずらしたタイミングとが、PWM回路15にオンタイミング及びオフタイミングの各々として指示される。
【0085】
すると、
図9の(5)の段に示すように、実際のヒータ駆動信号は、時刻t11でハイになり、時刻t12でローになる。つまり、ヒータ駆動信号は、遅延補正をする前のオンタイミングとオフタイミングとで反転することとなる。
【0086】
次のオンタイミング及びオフタイミングを決定する動作を説明する。
図9において、時刻t11から「要求周期」だけ後の時刻t14は、本来ならば次のオンタイミングとなるべきである。しかし、この例において、時刻t14は、精密制御期間に入っている。このため、
図8のS120により、時刻t14に最も近い非制御期間内の時刻t15が、時刻t11の次のオンタイミングとして決定されたとする。尚、時刻t11から時刻t15までの時間は、前述の「指示周期」であり、ヒータ駆動信号の実際の周期となるが、時刻t15は、その実際の周期が周期許容範囲内となるように決定される。
【0087】
この場合、前回の指示オン時間(=Tson1)が前回使用の要求オン時間(=Tron1)よりも短いため、
図8のS130で算出される補正値ΔTが0ではなくなる。
このため、
図8のS140で算出された要求オン時間が「Tron2」であるとすると、
図8のS150では、「Tron2+ΔT」がオフタイミング決定用の要求オン時間(補正後の要求オン時間)として算出される。
【0088】
そして、
図8のS160では、今回のオンタイミングである時刻t15から「Tron2+ΔT」だけ後の時刻t16が、オン期間変換テーブルに代入される。この例において、時刻t16は、精密制御期間に入っていない(非精密制御期間に入っている)ため、その時刻t16が、オフタイミングとして決定されることとなる。よって、時刻t15から時刻t16までの時間(=Tson2=Tron2+ΔT)が、今回の指示オン時間となる。
【0089】
そして、
図8のS170,S180により、
図9の(4)の段に示すように、時刻t15を遅延時間Td1だけ前にずらしたタイミングと、時刻t16を遅延時間Td2だけ前にずらしたタイミングとが、PWM回路15にオンタイミング及びオフタイミングの各々として指示される。
【0090】
すると、
図9の(5)の段に示すように、実際のヒータ駆動信号は、時刻t15でハイになり、時刻t16でローになる。ヒータ駆動信号は、遅延補正をする前のオンタイミングとオフタイミングとで反転することとなる。
【0091】
以上のようなECU1では、センサ駆動用IC5における精密制御期間と非精密制御期間とが、何時であるかを示す期間テーブル17を、ヒータ制御部7を成すマイコン8に保有させている。
【0092】
このため、マイコン8(詳しくはCPU11)は、ヒータ駆動信号をオフさせる(ローへ反転させる)前に、そのオフタイミングを、精密制御期間から外れるように、しかも、実際のオン時間が要求オン時間より長くならないように、決定することができる。よって、従来装置のような過昇温を防ぐことができる。同様に、マイコン8は、ヒータ駆動信号をオンさせる(ハイへ反転させる)前に、そのオンタイミングを、精密制御期間から外れるように、しかも、ヒータ駆動信号の周期が許容範囲に入るように、決定することができる。よって、従来装置のような温度の追従性悪化を防ぐことができる。
【0093】
このようなECU1によれば、ヒータ駆動信号の反転を精密制御期間中に実施しないことと、ヒータ3cの制御性能とを、両立させることができる。
また、「処理内容4」で説明したように、マイコン8のCPU11は、決定したオンタイミングから要求オン時間だけ後のタイミングが、精密制御期間に入っていなければ、その要求オン時間だけ後のタイミングを、オフタイミングとして決定する。一方、オンタイミングから要求オン時間だけ後のタイミングが精密制御期間に入っていれば、その要求オン時間だけ後のタイミングが入っている精密制御期間の直前に存在する非精密制御期間の終了タイミングを、オフタイミングとして決定する。
【0094】
このため、オフタイミングを精密制御期間から外しつつ、実際のオン時間を、要求オン時間以下で、且つ、その要求オン時間に最も近い時間にすることができる。よって、ヒータ3cの制御において、目標温度に対する温度の追従性能が良好となる。
【0095】
また、「処理内容5」で説明したように、CPU11は、前回のオフタイミングを決定した際に、非精密制御期間の終了タイミングをオフタイミングとして決定した場合には、今回のオフタイミングを決定するための要求オン時間に、前述の補正値ΔTを加算する。このため、複数回分の周期で見れば、実際のオン時間を要求オン時間に一致させることができる。よって、ヒータ3cの制御において、目標温度に対する温度追従性を一層良好にすることができる。
【0096】
また、CPU11は、オンタイミングを、「処理内容3」で説明した〈1〉及び〈2〉の条件が成立するように決定する。このため、オンタイミングを、精密制御期間から外しつつ、オンタイミングの間隔がヒータ駆動信号の周期許容範囲に入るように、決定することができる。よって、ヒータ駆動信号の実際の周期を、周期許容範囲内にすることができる。
【0097】
更に、CPU11は、オンタイミングを、「処理内容3」で説明した〈3〉の条件も成立するように決定する。このため、ヒータ駆動信号の周期許容範囲を一層確実に守ることができる。
【0098】
また、「処理内容6」で説明したように、CPU11は、決定したオンタイミングを遅延時間Td1だけ前にずらしたタイミングを、オンタイミングとしてPWM回路15に指示する。同様に、CPU11は、決定したオフタイミングを遅延時間Td2だけ前にずらしたタイミングを、オフタイミングとしてPWM回路15に指示する。
【0099】
このため、ヒータ駆動信号の実際の反転タイミングが、決定したオンタイミング及びオフタイミングよりも遅れて、その実際の反転タイミングが精密制御期間に入ってしまうことを防止することができる。つまり、精密制御期間を避けて決定したオンタイミングとオフタイミングとで、ヒータ駆動信号を確実に反転させることができる。
【0100】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されることなく、種々の形態を採り得る。また、前述の数値も一例であり他の値でも良い。
例えば、ECU1のマイコン8から他のECUへ空燃比の検出結果が送られて、そのECUが燃料噴射の制御を実施しても良い。つまり、ECU1は、空燃比を検出するための専用装置であっても良い。
【0101】
また、上記実施形態における1つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を1つの構成要素に統合させたりしてもよい。また、上記実施形態の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。また、上記実施形態の構成の一部を省略してもよい。なお、特許請求の範囲に記載した文言によって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。また、上述したECUの他、当該ECUを構成要素とするシステム、当該ECUとしてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、空燃比センサの制御方法など、種々の形態で本発明を実現することもできる。