(57)【要約】【課題】バッテリの充放電電流を検出する電流センサの検出精度を高める。【解決手段】エンジン停止後（キースイッチ１３のＯＦＦ切換後）からほぼ全ての車載電気機器への通電がＯＦＦされるまでの所定時間が経過した後に空燃比センサ１８のヒータ２０を一時的にＯＮ／ＯＦＦして、ヒータ２０がＯＮからＯＦＦ（又はＯＦＦからＯＮ）に切り換わるタイミングに同期して、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)を算出して、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)との比から、今回のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) を算出する。この公差Ｋ(i) は、バックアップＲＡＭ２２に記憶され、バッテリ電流検出値Ｉbat をパラメータとする公差Ｋの学習マップ（Ｉbat ，Ｋ）が作成され、この公差Ｋを用いてバッテリ電流検出値Ｉbat が補正される。【選択図】図１
2010204108.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載されたバッテリの充放電電流（以下「バッテリ電流」という）を検出するバッテリ電流検出手段と、車両に搭載されたいずれかの電気負荷に流れる電流を検出する負荷電流検出手段とを備えた車両において、
前記バッテリ電流検出手段の検出値と前記負荷電流検出手段の検出値との関係に基づいて前記バッテリ電流検出手段の検出値を補正する補正手段を備え、
前記補正手段は、内燃機関の運転停止中に前記電気負荷に通電して前記バッテリ電流検出手段の検出値と前記負荷電流検出手段の検出値との関係を判定することを特徴とする車両のバッテリ電流検出装置。
【請求項２】
前記補正手段は、大きさの異なる複数のバッテリ電流について前記バッテリ電流検出手段の検出値と前記負荷電流検出手段の検出値との関係を判定して該バッテリ電流検出手段の検出値を補正することを特徴とする請求項１に記載の車両のバッテリ電流検出装置。
【請求項３】
前記補正手段による補正量が所定範囲を越えたときに前記バッテリ電流検出手段と前記負荷電流検出手段のどちらかが異常であると判定する異常判定手段を備えていることを特徴とする請求項１又は２に記載の車両のバッテリ電流検出装置。
【請求項４】
車両に搭載されたバッテリの充放電電流を検出するバッテリ電流検出手段と、車両に搭載されたいずれかの電気負荷に流れる電流を検出する負荷電流検出手段とを備えた車両において、
電気負荷の電流変化時の前記バッテリ電流検出手段の検出値の変化量と前記負荷電流検出手段の検出値の変化量との関係に基づいて前記バッテリ電流検出手段と前記負荷電流検出手段のどちらかが異常であるか否かを判定する異常判定手段を備えていることを特徴とする車両のバッテリ電流検出装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両に搭載されたバッテリの充放電電流を検出する機能を備えた車両のバッテリ電流検出装置に関する発明である。
【背景技術】
【０００２】
近年、特許文献１（特開平５−３２２９９８号公報）、特許文献２（特開２００１−７８３６５号公報）に示すように、車両に搭載されたバッテリの充放電電流を電流センサで検出し、その検出電流値を積算して、その電流積算値に基づいてバッテリ容量を算出するようにしたものがある。このようなバッテリ容量監視システムでは、電流センサの検出誤差がそのままバッテリ容量の検出誤差につながるため、バッテリ容量の検出精度を高めるには、電流センサの検出精度を高める必要がある。
【０００３】
そこで、特許文献１では、電流センサの誤差電流値（初期特性の公差）を予めメモリに記憶しておき、電流センサの検出電流値を誤差電流値で補正するようにしている。
【０００４】
しかし、電流センサの検出誤差の原因は、初期特性の公差のみではなく、経時劣化による公差もあるため、特許文献１のように、予め記憶した初期特性の公差のみでは、電流センサの検出電流値を精度良く補正できない。
【０００５】
そこで、特許文献２では、前回の満充電時から今回の満充電時までの電流積算値とその積算期間とに基づいて電流センサのオフセット公差を算出して電流センサの検出電流値をオフセット補正するようにしている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平５−３２２９９８号公報（第１頁等）
【特許文献２】特開２００１−７８３６５号公報（第１頁等）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
電流センサの検出誤差の原因は、上述した初期特性の公差、経時劣化による公差、オフセット公差の他に、線形性の公差（電流センサの検出特性線の傾きの公差）も存在するが、特許文献１と特許文献２の補正方法を組み合わせても、線形性の公差までは補正することができず、電流センサの電流値の補正精度を十分に高めることができない。
【０００８】
そこで、本発明が解決しようとする課題は、バッテリ電流検出手段の検出値の補正精度を高めることができる車両のバッテリ電流検出装置を提供することにある。
【課題を解決するための手段】
【０００９】
上記課題を解決するために、請求項１に係る発明は、車両に搭載されたバッテリの充放電電流を検出するバッテリ電流検出手段と、車両に搭載されたいずれかの電気負荷に流れる電流を検出する負荷電流検出手段とを備えた車両において、バッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係に基づいてバッテリ電流検出手段の検出値を補正する補正手段を備え、該補正手段は、内燃機関の運転停止中に負荷電流の検出対象となる電気負荷に通電してバッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係を判定するようにしたものである。つまり、内燃機関の運転停止中は、車両のほぼ全ての電気負荷への通電がオフされるため、内燃機関の運転停止中に負荷電流の検出対象となる電気負荷のみに通電してバッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係を判定すれば、他の電気負荷の影響を受けずに、バッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係を精度良く判定することができ、バッテリ電流検出手段の検出値の補正精度を高めることができる。
【００１０】
この場合、請求項２のように、大きさの異なる複数のバッテリ電流についてバッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係を判定して該バッテリ電流検出手段の検出値を補正するようにしても良い。このように、大きさの異なる複数のバッテリ電流についてバッテリ電流検出手段の検出値と負荷電流検出手段の検出値との関係を判定すれば、バッテリ電流検出手段の線形性の公差（検出特性線の傾きの公差）を精度良く判定することが可能となり、バッテリ電流検出手段の検出値の補正精度を更に高めることができる。
【００１１】
また、請求項３のように、補正手段による補正量が所定範囲を越えたときに、バッテリ電流検出手段と負荷電流検出手段のどちらかが異常であると判定する異常判定手段を設けるようにしても良い。要するに、バッテリ電流検出手段と負荷電流検出手段のどちらかが異常になれば、補正手段による補正量が異常に大きくなるため、補正手段による補正量が異常な値になれば、バッテリ電流検出手段と負荷電流検出手段のどちらかが異常であると判定することが可能となる。
【００１２】
また、請求項４のように、電気負荷の電流変化時のバッテリ電流検出手段の検出値の変化量と負荷電流検出手段の検出値の変化量との関係に基づいてバッテリ電流検出手段と負荷電流検出手段のどちらかが異常であるか否かを判定するようにしても良い。例えば、電気負荷の電流変化時のバッテリ電流検出手段の検出値の挙動と負荷電流検出手段の検出値の挙動との間に全く関連性が認められないような場合等には、バッテリ電流検出手段と負荷電流検出手段のどちらかが異常であると判定することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】図１は本発明の実施例１のシステム全体の構成を概略的に示すブロック図である。
【図２】図２は実施例１の制御例を説明するタイムチャートである。
【図３】図３は実施例１の公差算出ルーチンの処理の流れを示すフローチャートである。
【図４】図４は実施例２の制御例を説明するタイムチャートである。
【図５】図５は実施例２のエンジン停止中ヒータ通電制御ルーチンの処理の流れを示すフローチャートである。
【図６】図６は実施例３の異常診断ルーチンの処理の流れを示すフローチャートである。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を実施するための最良の形態を具体化した３つの実施例１〜３を説明する。
【実施例１】
【００１５】
本発明の実施例１を図１乃至図３に基づいて説明する。まず、図１に基づいてシステム全体の構成を説明する。
制御装置１１は、バッテリ１２からキースイッチ１３を介して電源が供給され、エンジン運転中に点火装置１４と噴射装置１５の動作を制御すると共に、バッテリ１２の充放電電流の積算値に基づいてバッテリ１２の充電状態（バッテリ容量）を推定して、発電機１６の制御電流を制御することで、バッテリ１２の充電状態を目標値付近に制御する。
【００１６】
この制御装置１１には、バッテリ１２の充放電電流（以下「バッテリ電流」という）を検出する電流センサ１７（バッテリ電流検出手段）と、排出ガスの空燃比を検出する空燃比センサ１８等の各種のセンサ類が接続されている。空燃比センサ１８は、排出ガスの空燃比にほぼ比例する限界電流を発生するセンサ素子１９と、このセンサ素子１９を加熱して活性化させるヒータ２０（電気負荷）とを内蔵し、このヒータ２０に流れる電流（以下「ヒータ電流」という）が制御装置１１内に設けられたヒータ電流検出回路２１（負荷電流検出手段）によって検出される。ヒータ電流検出回路２１は、バッテリ電流を検出する電流センサ１７よりも精度良く電流値を検出することが可能である。
【００１７】
また、制御装置１１には、各種のプログラムやマップ等のデータを格納するＲＯＭや、演算データやセンサデータ等を一時的に記憶するＲＡＭの他に、書き換え可能な不揮発性メモリとしてバックアップＲＡＭ２２が設けられている。このバックアップＲＡＭ２２には、キースイッチ１３のオフ期間中に保持し続ける必要のあるデータ（例えば後述する公差Ｋの学習マップ、エンジン制御学習値、異常診断情報等）が記憶される。その他、各種の車載電気機器（電気負荷）にも、バッテリ１２から電源が供給される。
【００１８】
更に、制御装置１１は、電流センサ１７の検出値（バッテリ電流検出値）とヒータ電流検出回路２１の検出値（ヒータ電流検出値）との関係に基づいて公差Ｋ（補正量）を算出して電流センサ１７の検出値を補正する補正手段として機能する。以下、電流センサ１７の検出値の補正方法を図２のタイムチャートを用いて説明する。
【００１９】
エンジン始動時に空燃比センサ１８のヒータ２０への通電を開始して、空燃比センサ１８のセンサ素子１９の加熱を開始する。この後は、電流センサ１７によってバッテリ電流を所定のサンプリング周期で検出すると共に、ヒータ電流検出回路２１によってヒータ電流を所定のサンプリング周期で検出する。そして、空燃比センサ１８のセンサ素子１９の温度が活性温度に達した後は、センサ素子１９の温度に応じてヒータ２０のＯＮ（オン）／ＯＦＦ（オフ）を交互に切り換えることで、センサ素子１９の温度を活性温度範囲に制御する。
【００２０】
そして、ヒータ２０をＯＮからＯＦＦに切り換える直前と直後のタイミング(i−1)、(i1)でそれぞれ検出したバッテリ電流検出値Ｉbat(i)，Ｉbat(i-1)とヒータ電流検出値Ｉsen(i-1)，Ｉsen(i)に基づいて、ヒータ２０のＯＦＦ切換時のバッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)を算出する。
ΔＩbat(i)＝Ｉbat(i-1)−Ｉbat(i)
ΔＩsen(i)＝Ｉsen(i-1)−Ｉsen(i)
【００２１】
この後、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)との比から、今回のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) （補正量）を次式により算出する。              Ｋ(i) ＝ΔＩbat(i)／ΔＩsen(i)−１
ここで、ΔＩbat(i)＝ΔＩsen(i)となる場合は、公差＝０となる。
【００２２】
本実施例１では、ヒータ２０がＯＦＦするタイミング(i) に同期して、その時点(i) のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) を上式により算出することで、大きさの異なる複数のバッテリ電流検出値Ｉbat についてそれぞれ公差Ｋを算出して、それを公差Ｋの学習値としてバックアップＲＡＭ２２に記憶する。これにより、バッテリ電流検出値Ｉbat をパラメータとする公差Ｋの学習マップ（Ｉbat ，Ｋ）を作成して、この公差Ｋの学習値を逐次更新することで、公差Ｋの経時変化にも対応する。
【００２３】
そして、バッテリ電流検出値Ｉbat を積算してバッテリ１２の充電状態（バッテリ容量）を推定する際に、バックアップＲＡＭ２２に記憶されている公差Ｋの学習マップを用いて、バッテリ電流検出値Ｉbat を次のようにして補間補正し、補正後のバッテリ電流検出値Ｉbat を積算する。
【００２４】
例えば、今回のバッテリ電流検出値Ｉbat がＩa の場合、公差Ｋの学習マップの中から今回のバッテリ電流検出値Ｉa に最も近い２点（Ｉb とＩc ）の公差Ｋ(Ib)とＫ(Ic)を読み出し、今回のバッテリ電流検出値Ｉa における公差Ｋ(Ia)を次式により算出する。
Ｋ(Ia)＝｛Ｋ(Ib)−Ｋ(Ic)｝×（Ia−Ｉc ）／（Ib−Ｉc ）
【００２５】
この後、この公差Ｋ(Ia)を用いて、次式により今回のバッテリ電流検出値Ｉa を補正する。
補正後バッテリ電流検出値＝Ｉa ＋（Ia−Ｉc ）×Ｋ(Ia)
これにより、バッテリ電流検出値Ｉa の線形性の公差を含む様々な公差（初期特性の公差、経時劣化による公差、オフセット公差）がまとめて補正される。
【００２６】
前述した公差Ｋ(i) の算出は、制御装置１１によって図３の公差算出ルーチンによって所定周期（例えば５ｍｓ周期）で実行される。本ルーチンが起動されると、まずステップ１０１で、電流センサ１７で検出した今回のバッテリ電流検出値Ｉbat(i)を読み込み、次のステップ１０２で、ヒータ電流検出回路２１で検出した今回のヒータ電流検出値Ｉsen(i)を読み込む。
【００２７】
この後、ステップ１０３とステップ１０４の処理によって空燃比センサ１８のヒータ２０がＯＮからＯＦＦに切り換わるタイミングを検出して、そのタイミングでステップ１０５〜１０７の処理によって今回のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) を算出する。
【００２８】
この処理を詳しく説明すると、まず、ステップ１０３で、空燃比センサ１８のヒータ２０がＯＮであるか否かを判定し、ヒータ２０がＯＮであれば、以降の処理を行うことなく、本ルーチンを終了し、ヒータ２０がＯＦＦであれば、ステップ１０４に進み、前回の本ルーチン起動時にヒータ２０がＯＮであった否かを判定する。このステップ１０４で「Ｎｏ」と判定された場合、つまりヒータ２０が前回も今回もＯＦＦと判定された場合は、公差Ｋ(i) の算出タイミング（ヒータ２０のＯＦＦ切換タイミング）ではないと判断して、以降の処理を行うことなく、本ルーチンを終了する。
【００２９】
そして、ステップ１０４で「Ｙｅｓ」と判定された場合、つまりヒータ２０が前回ＯＮで今回ＯＦＦと判定された場合は、公差Ｋ(i) の算出タイミング（ヒータ２０のＯＦＦ切換タイミング）であると判断して、ステップ１０５に進み、前回のヒータ電流検出値Ｉsen(i-1)と今回のヒータ電流検出値Ｉsen(i)との差分であるヒータ電流変化量ΔＩsen(i)を算出する。
ΔＩsen(i)＝Ｉsen(i-1)−Ｉsen(i)
【００３０】
この後、ステップ１０６に進み、前回のバッテリ電流検出値Ｉbat(i-1)と今回のバッテリ電流検出値Ｉbat(i)との差分であるバッテリ電流変化量ΔＩbat(i)を算出する。
ΔＩbat(i)＝Ｉbat(i-1)−Ｉbat(i)
【００３１】
この後、ステップ１０７に進み、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)との比から、今回のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) を次式により算出する。
Ｋ(i) ＝ΔＩbat(i)／ΔＩsen(i)−１
以上のようにして算出された公差Ｋ(i) は、バックアップＲＡＭ２２に記憶され、バッテリ電流検出値Ｉbat をパラメータとする公差Ｋの学習マップ（Ｉbat ，Ｋ）が作成される。
【００３２】
以上説明した本実施例１では、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)との比から、今回のバッテリ電流検出値Ｉbat(i)における公差Ｋ(i) を算出して、バッテリ電流検出値Ｉbat をパラメータとする公差Ｋの学習マップを作成するようにしたので、この公差Ｋの学習マップを用いてバッテリ電流検出値Ｉbat の線形性の公差を含む様々な公差（初期特性の公差、経時劣化による公差、オフセット公差）をまとめて補正することができて、バッテリ電流検出値Ｉbat の補正精度を高めることができる。これにより、補正後のバッテリ電流検出値Ｉbat の積算値からバッテリ１２の充電状態（バッテリ容量）を精度良く推定することができる。
【００３３】
尚、本実施例１では、空燃比センサ１８のヒータ２０がＯＮからＯＦＦに切り換わるタイミングに同期して公差Ｋを算出するようにしたが、これとは反対に、空燃比センサ１８のヒータ２０がＯＦＦからＯＮに切り換わるタイミングに同期して公差Ｋを算出するようにしても良い。
【実施例２】
【００３４】
上記実施例１では、エンジン運転中（キースイッチ１３のＯＮ期間中）に公差Ｋを算出するようにしたが、エンジン運転中には、バッテリ１２からヒータ２０の他にも多くの車載電気機器に通電されるため、バッテリ電流変化量ΔＩbat(i)には、ヒータ２０以外の車載電気機器の電流変化の影響が含まれる可能性があり、これが公差Ｋの算出精度を低下させる原因となる。
【００３５】
そこで、図４及び図５に示す本発明の実施例２では、エンジン停止中（キースイッチ１３のＯＦＦ期間中）にほぼ全ての車載電気機器への通電がＯＦＦされることを考慮して、エンジン停止中に空燃比センサ１８のヒータ２０に通電して公差Ｋを算出するようにしている。
【００３６】
本実施例２では、図４に示すように、エンジン停止後（キースイッチ１３のＯＦＦ切換後）からほぼ全ての車載電気機器への通電がＯＦＦされるまでの所定時間が経過した後に空燃比センサ１８のヒータ２０を一時的にＯＮ／ＯＦＦして、ヒータ２０がＯＮからＯＦＦ（又はＯＦＦからＯＮ）に切り換わるタイミングに同期して、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)を算出して公差Ｋを算出するようにしている。
【００３７】
本実施例２では、エンジン停止中（キースイッチ１３のＯＦＦ期間中）に制御装置１１が図５のエンジン停止中ヒータ通電制御ルーチンを所定周期（例えば５ｍｓ周期）で実行して空燃比センサ１８のヒータ２０のＯＮ／ＯＦＦを次のように制御する。まず、ステップ２０１で、キースイッチ１３がＯＦＦされているか否かを判定し、ＯＦＦされていなければ、以降の処理を行うことなく、本ルーチンを終了する。
【００３８】
これに対して、キースイッチ１３がＯＦＦされていれば、上記ステップ２０１で「Ｙｅｓ」と判定されてステップ２０２に進み、今回のエンジン停止中に公差Ｋを算出済みであるか否かを判定し、算出済みであれば、以降の処理を行うことなく、本ルーチンを終了する。
【００３９】
上記ステップ２０２で、公差Ｋを未算出と判定されれば、ステップ２０３に進み、ソークタイマの前回のカウント値Ｔｃｎｔ(I-1) に本ルーチンの起動周期（５ｍｓ）を加算することで、エンジン停止後の経過時間Ｔｃｎｔ(I) を計測する。この後、ステップ２０４に進み、エンジン停止後の経過時間Ｔｃｎｔが所定のヒータＯＮ切換タイミングＫＯＮからヒータＯＦＦ切換タイミングＫＯＦＦまでの範囲内（ＫＯＮ≦Ｔｃｎｔ＜ＫＯＦＦ）であるか否かを判定し、「Ｙｅｓ」と判定されれば、ステップ２０８に進み、ヒータＯＮフラグｘｏｘｈｔを１にセットして、ヒータ２０をＯＮする（又はＯＮ状態を維持する）。      
【００４０】
これに対して、エンジン停止後の経過時間Ｔｃｎｔが所定のヒータＯＮ切換タイミングＫＯＮからヒータＯＦＦ切換タイミングＫＯＦＦまでの範囲内でない場合（Ｔｃｎｔ＜ＫＯＮ又はＴｃｎｔ≧ＫＯＦＦの場合）は、ステップ２０４からステップ２０５に進み、ヒータＯＮフラグｘｏｘｈｔを０にリセットして、ヒータ２０をＯＦＦする（又はＯＦＦ状態を維持する）。この後、ステップ２０６に進み、Ｔｃｎｔ≧ＫＯＦＦであるか否かを判定し、「Ｎｏ」と判定されれば、本ルーチンを終了するが、「Ｙｅｓ」と判定されれば、ステップ２０７に進み、ソークタイマのカウント値Ｔｃｎｔを初期値（０）にリセットする。
【００４１】
以上のような処理を行うことで、エンジン停止後の経過時間Ｔｃｎｔが所定のヒータＯＮ切換タイミングＫＯＮからヒータＯＦＦ切換タイミングＫＯＦＦまでの範囲内でヒータ２０をＯＮする。そして、エンジン停止中にヒータ２０がＯＮからＯＦＦ（又はＯＦＦからＯＮ）に切り換わるタイミングに同期して、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)を算出して公差Ｋを算出する。その他の事項は、前記実施例１と同じである。
【００４２】
以上説明した本実施例２では、エンジン停止中に空燃比センサ１８のヒータ２０を一時的にＯＮ／ＯＦＦして、ヒータ２０がＯＮからＯＦＦ（又はＯＦＦからＯＮ）に切り換わるタイミングに同期して、バッテリ電流変化量ΔＩbat(i)とヒータ電流変化量ΔＩsen(i)を算出して公差Ｋを算出するようにしたので、ヒータ２０以外の車載電気機器の影響を受けずに、公差Ｋを精度良く算出することができ、バッテリ電流検出値Ｉbat の補正精度を高めることができる。
【００４３】
尚、公差Ｋの算出方法は上記各実施例に限定されず、例えば、エンジン停止中に一時的にヒータ２０をＯＮさせる期間中に、ヒータ電流を増減させて、複数の異なるヒータ電流について、バッテリ電流検出値Ｉbat とヒータ電流検出値Ｉsen との関係を求めて、公差Ｋを算出するようにしても良い。勿論、ヒータ２０のＯＮ期間中のヒータ電流を一定値に固定して、バッテリ電流検出値Ｉbat とヒータ電流検出値Ｉsen との関係から公差Ｋを算出するようにしても良い。この際、バッテリ電流検出値Ｉbat から、ヒータ２０以外の電気負荷（例えば制御装置１１等）の消費電流分を差し引くようにすると良い。
【００４４】
また、空燃比センサ１８のヒータ２０以外であっても、電流検出機能付きの電気負荷が存在すれば、その電気負荷の電流検出値とバッテリ電流検出値との関係から公差Ｋを算出するようにしても良い。
【実施例３】
【００４５】
図６に示す本発明の実施例３では、前記実施例１又は実施例２と同様の方法で算出した公差Ｋ（補正量）を用いて、図６の異常診断ルーチンを所定周期で実行することで、特許請求の範囲でいう異常判定手段としての機能を実現するようにしている。本ルーチンが起動されると、まずステップ３０１で、公差Ｋを算出済みであるか否かを判定し、算出済みでなければ、本ルーチンを終了するが、算出済みであれば、ステップ３０２に進み、公差Ｋが所定範囲内であるか否かを判定する。その結果、公差Ｋが所定範囲内であれば、電流センサ１７とヒータ電流検出回路２１が両方とも正常に機能していると判断するが、公差Ｋが所定範囲内になければ、電流センサ１７とヒータ電流検出回路２１のどちらかが異常であると判定する（ステップ３０３）。
【００４６】
要するに、電流センサ１７とヒータ電流検出回路２１のどちらかが異常になれば、公差Ｋが異常に大きくなるため、公差Ｋが異常な値になれば、電流センサ１７とヒータ電流検出回路２１のどちらかが異常であると判定することが可能となる。
【００４７】
尚、電流センサ１７の検出値とヒータ電流検出回路２１の検出値との関係に基づいて電流センサ１７とヒータ電流検出回路２１のどちらかが異常であるか否かを判定するようにしても良い。例えば、電流センサ１７の検出値の挙動とヒータ電流検出回路２１の検出値の挙動との間に全く関連性が認められないような場合等には、電流センサ１７とヒータ電流検出回路２１のどちらかが異常であると判定することが可能となる。
【符号の説明】
【００４８】
１１…制御装置（補正手段，異常判定手段）、１２…バッテリ、１３…キースイッチ、１７…電流センサ（バッテリ電流検出手段）、１８…空燃比センサ、１９…センサ素子、２０…ヒータ（電気負荷）、２１…ヒータ電流検出回路（負荷電流検出手段）、２２…バックアップＲＡＭ
【図１】
2010204108.tif 000003
【図２】
2010204108.tif 000004
【図３】
2010204108.tif 000005
【図４】
2010204108.tif 000006
【図５】
2010204108.tif 000007
【図６】
2010204108.tif 000008