(57)【要約】【課題】  内燃機関のスロットルバルブの開度を経時変化に応じて適切に補正する。【解決手段】  エンジンＥＣＵは、運転状態が安定していると（Ｓ２０００にてＹＥＳ）、検知される空気量から算出された損失流量（Ａ）と学習値から算出された損失流量（Ｂ）を算出するステップ（Ｓ２０１０）と、損失流量（Ａ）と損失流量（Ｂ）との差の絶対値が予め定められた値αよりも大きく（Ｓ２０２０）、検知されたスロットルバルブの開度が開度大の領域であると（Ｓ２０３０にてＹＥＳ）、開度大の領域の学習値を更新するステップ（Ｓ２０４０）と、検知されたスロットルバルブの開度が開度小の領域であると（Ｓ２０６０にてＹＥＳ）、開度小の領域の学習値を更新するステップ（Ｓ２０７０）とを含む、プログラムを実行する。【選択図】        図４
2006138270.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関に吸入される空気量の損失分に応じて、前記空気量を調整するバルブの開度を補正する内燃機関の制御装置であって、
前記バルブの開度を検知するための手段と、
前記内燃機関に吸入される空気量を検知するための手段と、
前記開度から算出された空気量と前記検知された空気量との差から損失分を算出するための手段と、
前記開度と前記損失分との関係を複数のバルブの開度において学習する学習手段と、
前記学習手段で学習した複数のバルブの開度における学習値に基づいて、前記検知された開度に対応する損失分を算出するための算出手段とを含む、内燃機関の制御装置。
【請求項２】
前記学習手段は、前記内燃機関のアイドリング時の前記関係を学習するための手段を含み、
前記算出手段は、前記アイドリング時の前記損失分を算出するための手段を含む、請求項１に記載の内燃機関の制御装置。
【請求項３】
前記内燃機関の制御装置は、前記内燃機関の運転状態に基づいて要求される空気量と前記検知された開度に対応する損失分とに基づいて、前記バルブの開度を算出するための手段をさらに含む、請求項１または２に記載の内燃機関の制御装置。
【請求項４】
前記算出手段は、第１の開度における第１の学習値と、前記第１の開度よりも大きい第２の開度における第２の学習値とに基づいて、開度に対応する損失分を算出するための手段を含む、請求項１〜３のいずれかに記載の内燃機関の制御装置。
【請求項５】
前記算出手段は、前記第１および第２の学習値に基づいて、前記第１の開度以下であって、前記アイドリング時の基準となる基準開度から前記第２の開度までに対応する損失分を線形的に補間して、前記検知された開度に対応する損失分を算出するための手段を含む、請求項４に記載の内燃機関の制御装置。
【請求項６】
前記算出手段は、前記検知された開度が前記基準開度以下であると、前記基準開度に対応する損失分を、前記検知された開度に対応する損失分として算出するための手段を含む、請求項５に記載の内燃機関の制御装置。
【請求項７】
前記算出手段は、前記検知された開度が前記第２の開度以上であると、前記第２の学習値を、前記検知された開度に対応する損失分として算出するための手段を含む、請求項４〜６のいずれかに記載の内燃機関の制御装置。
【請求項８】
前記第１の開度は、温間時のアイドル回転数に対応する開度であって、
前記第２の開度は、冷間時のアイドル回転数に対応する開度である、請求項４〜７のいずれかに記載の内燃機関の制御装置。
【請求項９】
前記学習手段は、前記検知された開度および前記検知された空気量に基づいて算出された損失分と、前記算出手段により算出された損失分との差が予め定められた値以上になると、学習を再度実行するための手段を含む、請求項１〜８のいずれかに記載の内燃機関の制御装置。
【請求項１０】
前記バルブは、スロットルバルブである、請求項１〜９のいずれかに記載の内燃機関の制御装置。
【請求項１１】
前記バルブは、アイドルスピードコントロールバルブである、請求項１〜９のいずれかに記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の制御装置に関し、特に内燃機関に吸入された空気量の損失分に基づいて、スロットルバルブの開度を補正する内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来、内燃機関に設けられるスロットルバルブにおいては、経時変化により、スロットルバルブの開度から算出される吸入空気量に誤差が発生する場合がある。これは、スロットルバルブの周辺にデポジット（堆積物）が付着すると、空気通路の断面積が減少して、所望の空気量が得られないためである。そのため、たとえば、特開平９−１２６０３６号公報（特許文献１）は、スロットルセンサの特性を適正に修正し、正確なスロットルバルブの開度を把握する内燃機関のスロットル開度学習装置を開示する。この内燃機関のスロットル開度学習装置は、内燃機関の吸気通路の途中に設けられたスロットルバルブの開度を検出するためのスロットルセンサと、内燃機関の吸気通路の途中に設けられ、内燃機関に導入される実際の吸入空気量を検出するための吸入空気量センサとを含む。このスロットル開度学習装置は、スロットルバルブの開度及び吸入空気量を除く内燃機関の運転状態を検出して、検出結果に基づき、基準となる吸入空気量を算出する。吸入空気量センサからの出力値と算出された算出値とが比較されるとともに、比較結果に基づいてスロットルセンサからの出力値の補正値が算出されて、算出された補正値と、スロットルセンサからの算出値とに基づいて、スロットルバルブの開度が学習される。スロットルセンサからの出力値が領域毎に区分されるとともに、比較及び補正値の算出、並びに、スロットルバルブの開度の学習が、区分された領域毎に行なわれる。
【０００３】
特許文献１に開示された内燃機関のスロットル開度学習装置によると、学習された後のスロットルバルブの開度は、それが中開度領域であろうが、全開近傍であろうが、吸入空気量を基本とした補正値の算出および補正値による学習によってより実際の値に近いものとなる。したがって、スロットルセンサからの出力値が、たとえ経時的に変動を起こしたとしても、正確なスロットルバルブの開度の把握を行うことが可能となる。
【特許文献１】特開平９−１２６０３６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に開示された内燃機関のスロットル開度学習装置においては、領域内の、単にある一点のみで補正量が算出されて、その補正量を領域内の全てのスロットルバルブの開度に反映しているため、精度が悪いという問題がある。また、内燃機関のアイドリング時におけるスロットルバルブの開度については、補正は想定されていないため、アイドリング時にスロットルバルブの開度の補正の精度が悪化すると、所望の空気量が得られなくなる場合がある。そのため、内燃機関の燃焼状態（たとえば、回転数）が安定しないという問題がある。
【０００５】
本発明は、上述の問題を解決するためになされたものであって、その目的は、内燃機関のスロットルバルブの開度を経時変化に応じて適切に補正する内燃機関の制御装置を提供することである。
【課題を解決するための手段】
【０００６】
第１の発明に係る内燃機関の制御装置は、内燃機関に吸入される空気量の損失分に応じて、空気量を調整するバルブの開度を補正する内燃機関の制御装置である。内燃機関の制御装置は、バルブの開度を検知するための手段と、内燃機関に吸入される空気量を検知するための手段と、開度から算出された空気量と検知された空気量との差から損失分を算出するための手段と、開度と損失分との関係を複数のバルブの開度において学習する学習手段と、学習手段で学習した複数のバルブの開度における学習値に基づいて、検知された開度に対応する損失分を算出するための算出手段とを含む。
【０００７】
第１の発明によると、複数のバルブ（たとえば、スロットルバルブ）の開度において開度と損失分との関係を学習して、学習した複数のバルブ開度における学習値に基づいて、検知された開度に対応する損失分を算出することにより、検知されたスロットルバルブの開度に対応する空気量の損失分を精度良く算出することができる。算出された損失分に応じて、スロットルバルブの開度を補正すると、内燃機関の運転状態（たとえば、エンジンの冷却水の水温の状態および補機類の動作状態）に基づいて要求される空気量が内燃機関に過不足なく供給される。そのため、内燃機関の燃焼状態を安定した状態に制御することができる。したがって、内燃機関のスロットルバルブの開度を経時変化に応じて適切に補正する内燃機関の制御装置を提供することができる。また、少なくとも２つの開度における学習値に基づいて、開度と損失分との関係を学習することにより、開度毎に学習する必要もなくなり、開度によって学習頻度が異なることに起因して、開度間で学習した学習値が大きくなるようなことも抑制することができる。
【０００８】
第２の発明に係る内燃機関の制御装置においては、第１の発明の構成に加えて、学習手段は、内燃機関のアイドリング時の関係を学習するための手段を含む。算出手段は、アイドリング時の損失分を算出するための手段を含む。
【０００９】
第２の発明によると、学習手段は、内燃機関のアイドリング時の、バルブ（たとえば、スロットルバルブ）の開度と内燃機関に吸入される空気量の損失分との関係を学習する。算出手段は、検知された開度と学習された関係とに基づいて、アイドリング時における空気量の損失分を算出する。これにより、アイドリング時においても、検知された開度に対応する空気量の損失分を精度良く算出することができる。算出された損失分に応じて、スロットルバルブの開度を補正すると、内燃機関のアイドリング状態を安定させることができる。
【００１０】
第３の発明に係る内燃機関の制御装置は、第１または２の発明の構成に加えて、内燃機関の運転状態に基づいて要求される要求流量と検知された開度に対応する損失分とに基づいて、バルブの開度を算出するための手段をさらに含む。
【００１１】
第３の発明によると、制御装置は、内燃機関の運転状態（たとえば、エンジンの冷却しの水温の状態および補機類の動作状態）に基づいて要求される空気量と検知された開度に対応する損失分とに基づいて、バルブ（たとえば、スロットルバルブ）の開度を算出する。これにより、経時変化に基づく空気量の損失分だけ大きくスロットルバルブを開くことにより、内燃機関の運転状態に基づいて要求される空気量を内燃機関に過不足なく供給することができる。そのため、内燃機関の燃焼状態を安定した状態に制御することができる。
【００１２】
第４の発明に係る内燃機関の制御装置においては、第１〜３のいずれかの発明の構成に加えて、算出手段は、第１の開度における第１の学習値と、第１の開度よりも大きい第２の開度における第２の学習値とに基づいて、開度に対応する損失分を算出するための手段を含む。
【００１３】
第４の発明によると、第１の開度における第１の学習値と、第１の開度よりも大きい第２の開度における第２の学習値とに基づいて、開度に対応する損失分を算出する。たとえば、第１の学習値と第２の学習値とに基づいて各開度における損失分を補間することにより、検知された開度に対応する損失分を精度良く算出することができる。
【００１４】
第５の発明に係る内燃機関の制御装置においては、第４の発明の構成に加えて、算出手段は、第１および第２の学習値に基づいて、第１の開度以下であって、アイドリング時の基準となる基準開度から第２の開度までに対応する損失分を線形的に補間して、検知された開度に対応する損失分を算出するための手段を含む。
【００１５】
第５の発明によると、第１および第２の学習値に基づいて、第１の開度以下であって、アイドリング時の基準となる基準開度から第２の開度までに対応する損失分を線形的に補間して、検知された開度に対応する損失分を算出する。各開度における損失分を補間することにより、検知された開度に対応する損失分を精度良く算出することができる。
【００１６】
第６の発明に係る内燃機関の制御装置においては、第５の発明の構成に加えて、算出手段は、検知された開度が基準開度以下であると、基準開度に対応する損失分を、検知された開度に対応する損失分として算出するための手段を含む。
【００１７】
第６の発明によると、算出手段は、検知された開度が基準開度以下であると、基準開度に対応する損失分を検知された開度に対応する損失分として算出する。基準開度以下についても基準開度以上と同様に線形的に損失分を補間すると、基準開度以下で、吸気系の部品がほぼ新品の状態における空気量の損失分よりも損失分が小さく算出される場合がある。そのため、基準開度以下においては、基準開度に対応する損失分を検知された開度に対応する損失分として算出することにより、上述のような現象の発生を回避することができる。
【００１８】
第７の発明に係る内燃機関の制御装置においては、第４〜６のいずれかの発明の構成に加えて、算出手段は、検知された開度が第２の開度以上であると、第２の学習値を、検知された開度に対応する損失分として算出するための手段を含む。
【００１９】
第７の発明によると、算出手段は、検知された開度が第２の開度以上であると、第２の学習値を、検知された開度に対応する損失分として算出する。第２の開度以上においては、第２の開度以下と同様に線形的に損失分を補間すると、第２の開度以上で、損失分が実際よりも大きく算出される場合がある。その結果、燃費が悪化する可能性がある。そのため、第２の開度以上においては、第２の学習値を検知された開度に対応する損失分として算出することにより、上述のような現象の発生を回避することができる。
【００２０】
第８の発明に係る内燃機関の制御装置においては、第４〜７のいずれかの発明の構成に加えて、第１の開度は、温間時のアイドル回転数に対応する開度である。第２の開度は、冷間時のアイドル回転数に対応する開度である。
【００２１】
第８の発明によると、冷間時のアイドル回転数に対応する開度は、速やかに内燃機関の冷却水の水温を上昇させるため、温間時のアイドル回転数に対応する開度よりも大きくなる傾向にある。そのため、内燃機関のアイドリング時における開度と損失分との関係の学習において、冷間時と温間時の開度をそれぞれ別途学習しておくことにより、内燃機関のアイドリング時における開度と損失分との関係を学習することができる。したがって、内燃機関のアイドリング時における損失分を精度良く算出することができる。
【００２２】
第９の発明に係る内燃機関の制御装置においては、第１〜８のいずれかの発明の構成に加えて、学習手段は、検知された開度および検知された空気量に基づいて算出された損失分と、算出手段により算出された損失分との差が予め定められた値以上になると、学習を再度実行するための手段を含む。
【００２３】
第９の発明によると、学習手段は、検知された開度から算出された空気量および検知された空気量の差に基づく損失分と、算出手段により算出された損失分との差が予め定められた値以上になると、学習を再度実行する。バルブ（たとえば、スロットルバルブ）の周辺にデポジットが付着して、内燃機関に吸入される空気量の損失分が変化すると、開度と損失分との関係に誤差が発生する。このとき、学習を再度実行することにより、検知された開度に対応する空気量の損失分を精度良く算出することができる。
【００２４】
第１０の発明に係る内燃機関の制御装置においては、第１〜９のいずれかの発明の構成に加えて、バルブは、スロットルバルブである。
【００２５】
第１０の発明によると、内燃機関のアイドリング時における空気量の損失分を適切に補正することにより、スロットルバルブの開度を適切に制御することができる。
【００２６】
第１１の発明に係る内燃機関の制御装置においては、第１〜９のいずれかの発明の構成に加えて、バルブは、アイドルスピードコントロールバルブである。
【００２７】
第１１の発明によると、内燃機関のアイドリング時における空気量の損失分を適切に補正することにより、スロットルバルブの開度を適切に制御することができる。
【発明を実施するための最良の形態】
【００２８】
以下、図面を参照しつつ、本発明の実施の形態に係る内燃機関の制御装置について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがってそれらについての詳細な説明は繰返さない。
【００２９】
図１を参照して、本実施の形態に係る内燃機関の制御装置を実現するエンジンＥＣＵ（Electronic Control Unit）４００を含む車両のエンジンシステムについて説明する。図１に示すように、このエンジンシステムは、吸気系１００とエンジン２００と排気系３００とエンジンＥＣＵ４００とから構成される。
【００３０】
吸気系１００は、エアクリーナ１１０と、吸気通路１０２と、スロットルバルブ１０８と、インテークマニホールド１１４とから構成される。このエンジンシステムにおいては、エアクリーナ１１０を介した空気が、エンジン２００の燃焼室２１４に導入される。その際、吸入空気量が吸気通路１０２に設けられるエアフローメータ１１２により検知されて、エンジンＥＣＵ４００に吸入空気量を表わす信号が入力される。また、スロットルバルブ１０８の開度により、吸入空気量が変化する。このスロットルバルブ１０８の開度は、エンジンＥＣＵ４００からの信号に基づいて作動したスロットルモータ１０４により変化される。スロットルバルブ１０８の開度は、スロットルポジションセンサ１０６により検知されて、エンジンＥＣＵ４００にスロットルバルブ１０８の開度を表わす信号が入力される。
【００３１】
一方、エンジン２００のシリンダブロックの内部には、ピストン２１２と、燃焼室２１４と、点火プラグ２１６と、フューエルインジェクタ２１０とが設けられる。フューエルインジェクタ２１０は、燃料を燃焼室２１４に噴射する。インテークマニホールド１１４から導入された空気と、フューエルインジェクタ２１０から燃焼室２１４に噴射された燃料との混合気が、エンジンＥＣＵ４００から制御信号が入力される点火プラグ２１６を用いて着火されて燃焼する。
【００３２】
排気系３００は、エキゾーストマニホールド３０２と、三元触媒コンバータ３０４，３０８と、排気通路３０６とから構成される。混合気が燃焼した後の排気ガスは、エキゾーストマニホールド３０２を通り、三元触媒コンバータ３０４および三元触媒コンバータ３０８を通って、大気に排出される。
【００３３】
このエンジンシステムには、以下に示すシステムが導入されている。このエンジンシステムには、燃料噴射制御システムが導入され、エアフローメータ１１２によって吸入空気量を検出し、燃料噴射量が制御される。エンジンＥＣＵ４００は、各センサからの信号により、最適な燃焼状態となるように、エンジン回転数およびエンジン負荷に応じた燃料噴射量および燃料噴射時期の制御を行なう。
【００３４】
また、このエンジンシステムにおいては、エンジン回転数と吸入空気量（エアフローメータ１１２により検出）により燃料噴射量が決定される。また、始動後の空燃比は、酸素センサ３０６からの信号によりフィードバック制御される。すなわち、燃料噴射制御は、エンジンの状態に応じて演算した基本噴射時間に、各センサの信号に補正を加え、燃料噴射時期制御および噴射量制御が実行される。
【００３５】
次に、エンジンＥＣＵ１０００に各種信号を入力するセンサについて説明する。
【００３６】
アクセルポジションセンサ４０２は、アクセルペダルに配置され、アクセルペダル踏込み量を検知する。アクセルペダル踏込み量に対して直線的に出力電圧が得られるリニアタイプのアクセルポジションセンサなどが用いられる。
【００３７】
エアフローメータ１１２は、吸気温センサ内蔵のホットワイヤ式エアフローメータなどであって、吸入空気量を計測する。エンジンＥＣＵ４００は、予め記憶されたエアフローメータ１１２の出力電圧と流量との関係から、エンジン２００への吸入空気量を算出する。
【００３８】
スロットルポジションセンサ１０６は、たとえばスロットルボディに配置され、スロットバルブ１０８の開度を検出する。たとえば、ホール素子を用いた電子式のポジションセンサが採用されることにより正確な制御と恒久的な信頼性を確保することができる。
【００３９】
クランクポジションセンサ２２２は、クランク角度を検出するセンサであって、検出精度の高い電磁ピックアップ式センサなどが用いられる。クランクシャフトが回転することにより、クランクシャフトに取付けられたタイミングロータ２１８の突起部とクランクポジションセンサ２２２のエアギャップが変化するため、クランクポジションセンサ２２２のコイル部を通過する磁束が増減し、コイル部に起電力が発生する。この発生電圧は、タイミングロータ２１８の突起部がクランクポジションセンサ２２２に近づくときと離れるときとでは逆向きになるため、交流電圧として現われ、これにより、クランク位置およびクランク角速度を検出することができる。水温センサ２２０は、エンジン２００のシリンダブロック内を流通する冷却水の水温を検出する。
【００４０】
また、このエンジンシステムには、スロットル制御システムが導入されている。このスロットル制御システムは、エンジンの状態に応じて演算したスロットルバルブ１０８の開度に、各センサの信号による補正を加えて、適正な開度になるように制御される。すなわち、エンジンの燃焼状態に応じた適切なスロットルバルブ１０８の開度になるように、エンジンＥＣＵ４００がスロットルバルブ１０８の開度をスロットルモータ１０４を用いて制御する。
【００４１】
また、このエンジンシステムは、アイドル回転数制御システムが導入されている。このアイドル回転数制御システムは、エンジン冷却水温に応じたファーストアイドル回転数、エンジン暖気後のアイドル回転数を制御する。アイドル回転数制御は、エアフローメータ１１２からの信号に基づいて吸入空気量を算出し、エンジンＥＣＵ４００が最適なスロットルバルブ１０８の開度およびインジェクタ開弁時間を算出し、アイドル回転数を目標回転数に近づける。
【００４２】
このとき、経時変化によって、スロットルバルブ１０８の周辺にデポジット（堆積物）が付着すると、スロットルバルブ１０８の開度に基づいて算出される吸入空気量と、エアフローメータ１１２により検知される吸入空気量の実測値との間に誤差が発生する。これは、スロットルバルブ１０８の周辺にデポジットが付着すると、空気通路の断面積が減少して、エアフローメータ１１２により検知される吸入空気量の実測値が減少するためである。特に、アイドル回転数制御においては、燃費を向上させるためにより低い回転数で安定した内燃機関の燃焼状態を維持することが望ましいため、内燃機関の運転状態に基づいて要求される空気量が吸入されるようにスロットルバルブ１０８の開度が補正される。
【００４３】
すなわち、エンジンＥＣＵ４００は、検知されたスロットルバルブ１０８の開度から算出されるエンジン２００に吸入される空気量と、エアフローメータ１１２により検知される吸入空気量との差に基づいて空気量の損失分（以下、損失流量とも記載する。）を算出する。エンジンＥＣＵ４００は、算出された損失分に応じて、スロットルバルブ１０８の開度を補正する。
【００４４】
本発明においては、エンジンＥＣＵ４００が、開度と損失分との関係に基づいて、検知された開度に対応する損失分を算出する点に特徴を有する。具体的には、エンジンＥＣＵ４００は、開度小の領域内の開度に対応する損失流量と、開度大の領域内の開度に対応する損失流量とに基づいて、開度と損失流量との関係を学習する。エンジンＥＣＵ４００は、学習した関係とスロットルポジションセンサ１０６により検知されたスロットルバルブ１０８の開度とに基づいて、検知された開度に対応する損失分を算出する。
【００４５】
空気量の損失分は、エンジン２００のアイドリング時において、図２（Ａ）に示すように開度に応じて変化する。エンジンＥＣＵ２００は、学習開始条件が成立すると、スロットルバルブ１０８の開度が開度小の領域内のＴＡ（１）にあるときには、損失流量Ａ（１）を検出して、開度小の領域における学習値として記憶しておく。一方、エンジンＥＣＵ２００は、スロットルバルブ１０８の開度が開度大の領域内のＴＡ（２）にあるときには、損失流量Ａ（２）を検出して、開度大の領域における学習値として記憶しておく。そして、エンジンＥＣＵ４００は、開度ＴＡ（１）に対応するＡ（１）と、開度ＴＡ（２）に対応するＡ（２）とに基づいて、図２（Ｂ）に示すような開度と損失流量との関係を示すマップを作成する。
【００４６】
なお、「学習開始条件」として、たとえば、エンジン２００のアイドリング状態が安定していること、およびマップに誤差が発生したと判断されたことを条件としている。また、「開度小の領域」および「開度大の領域」とは、特に限定されるものではなく、たとえば、エンジン２００のアイドリング時におけるスロットルバルブの開度が予め定められた開度より小さいと開度小の領域であるとし、予め定められた開度よりも大きいと開度大の領域であるとしてもよい。あるいは、複数の閾値を設けて、開度小の領域と開度大の領域とを定義するようにしてもよいし、冷間時のアイドル回転数に対応するスロットルバルブ１０８の開度を開度小の領域とし、温間時のアイドル回転数に対応するスロットルバルブ１０８の開度を開度大の領域としてもよい。冷間時のアイドル回転数に対応する開度は、速やかにエンジン２００の冷却水の水温を上昇させるため、温間時のアイドル回転数に対応する開度よりも大きくなる傾向にある。そのため、エンジン２００のアイドリング時における開度と損失分との関係の学習において、冷間時と温間時における開度をそれぞれ別途学習しておくことにより、エンジン２００のアイドリング時における開度と損失分との関係を学習することができる。
【００４７】
本実施の形態において、図２（Ｂ）に示すマップは、ＴＡ（１）に対応するＡ（１）およびＴＡ（２）に対応するＡ（２）とから得られる２点に基づいて、線形補間して作成される。マップにおいて、開度ＴＡ（１）以下の基準となるベース開度Ａ（０）を予め設定しておく。「ベース開度」とは、たとえば、エンジン２００が完全に暖機が終了して、補機類（たとえば、エアコンディショナのコンプレッサやオルタネータ等）が動作していないときのスロットルバルブ１０８の開度であるが、特に限定されるものではない。
【００４８】
ベース開度ＴＡ（０）以下の開度は、線形補間をせず、ＴＡ（０）より小さい区間における損失流量は、一律Ａ（０）とする。ベース開度ＴＡ（０）以下についてもベース開度ＴＡ（０）以上のときと同様に線形的に損失分を補間すると、ベース開度ＴＡ（０）以下となるときに、吸気系の部品がほぼ新品の状態における空気量の損失分よりも損失分が小さく補正される場合がある。そのため、ベース開度ＴＡ（０）以下においては、ベース開度ＴＡ（０）に対応する損失流量Ａ（０）を、検知された開度に対応する損失分とすることにより、上述のような現象の発生を回避することができる。
【００４９】
他方、開度ＴＡ（２）以上の開度においても、線形補間はせずに、ＴＡ（２）より大きい区間における損失流量は、一律Ａ（２）とする。開度ＴＡ（２）以上においては、開度ＴＡ（２）以下と同様に線形的に損失分を補間すると、開度ＴＡ（２）以上で、損失分が大きく補正される場合がある。その結果、アイドリング時の回転数が高くなり、燃費が悪化する可能性がある。そのため、開度ＴＡ（２）以上においては、損失流量Ａ（２）を検知された開度に対応する損失分とすることにより、上述のような現象の発生を回避することができる。
【００５０】
エンジンＥＣＵ４００は、上述のマップに基づいて、検知された開度に対応する損失流量が算出されると、エンジン２００の運転状態に基づいて要求される要求流量と算出された損失流量とに基づいて、スロットルバルブ１０８の開度を算出する。「エンジン２００の運転状態に基づいて要求される要求流量」とは、たとえば、エンジンの水温や補機類の作動状態に基づいて要求される空気量である。エンジンＥＣＵ４００は、スロットルバルブ１０８が算出された開度になるようにスロットルモータ１０４を制御する。
【００５１】
なお、本実施の形態において、２点からマップを作成することにより、開度と損失流量との関係を学習するようにしたが、特にマップを用いることに限定されるものではない。すなわち、２点から開度に対応する損失流量を算出する表や数式を作成するようにして、開度と損失流量との関係を学習するようにしてもよい。また、開度と損失流量との関係の学習は、２点に限定されるものではなく、たとえば、複数のスロットルバルブ１０８の開度において損失流量を学習して、学習した複数の開度における学習値に基づいて、上述の開度と損失流量との関係を学習するようにしてもよい。
【００５２】
以下、図３を参照して、本実施の形態に係る内燃機関の制御装置であるエンジンＥＣＵ４００で実行されるプログラムの制御構造について説明する。
【００５３】
ステップ（以下、ステップをＳと記載する。）１０００にて、エンジンＥＣＵ４００は、運転者の操作によりイグニッション（以下、ＩＧと記載する。）がオンされたか否かを判定する。ＩＧがオンされると（Ｓ１０００にてＹＥＳ）、処理はＳ１０１０に移される。もしそうでないと（Ｓ１０００にてＮＯ）、処理はＳ１０００に戻される。
【００５４】
Ｓ１０１０にて、エンジンＥＣＵ４００は、開度大の領域および開度小の領域における損失流量の学習が完了しているか否かを判断する。前回までのトリップにおいて、開度大の領域および開度小の領域の各々において、学習が完了するとフラグをオンするようにしておく。エンジンＥＣＵ４００は、開度大の領域および開度小の領域に対応する学習完了フラグのオン、オフにより、開度大の領域および開度小の領域における損失流量の学習が完了しているか否かを判断する。
【００５５】
Ｓ１０２０にて、エンジンＥＣＵ４００は、初回の学習値を反映するか否かを判断する。ここで、「初回」とは、工場出荷時あるいはバッテリクリア後の初回のＩＧのオンを示す。エンジンＥＣＵ４００は、工場出荷時あるいはバッテリクリア後の初回のＩＧオンであると、学習完了した学習値を直ちにマップに反映すると判断する。初回の学習値を反映すると判断すると（Ｓ１０２０にてＹＥＳ）、処理はＳ１０３０に移される。もしそうでないと（Ｓ１０２０にてＮＯ）、処理はＳ１０４０に移される。
【００５６】
Ｓ１０３０にて、エンジンＥＣＵ４００は、反映値をセットする。すなわち、エンジンＥＣＵ４００は、学習完了した学習値（開度小の領域の開度に対応する損失流量と、開度大の領域の開度に対応する損失流量）を用いてマップを作成して、マップから得られる値（以下、反映値とも記載する。）を用いて、損失流量の補正をするようにする。
【００５７】
Ｓ１０４０にて、エンジンＥＣＵ４００は、反映値を更新する。本実施の形態において、エンジンＥＣＵ４００は、初回のＩＧオンでなければ、学習が完了した学習値（開度大の領域あるいは開度小の領域のいずれかの損失流量）を用いて作成されたマップの反映値を直ちに用いるのではなく、トリップ毎に学習値に近づけるようにして、マップの反映値を更新する。マップが直ちに大幅に変更されると、エンジン２００の運転状態が大きく変化する場合があるからである。
【００５８】
具体的には、本実施の形態において、エンジンＥＣＵ４００は、前回のトリップにおいて、作成されたマップと変更された学習値に基づくマップとの差をトリップ毎に、予め定められた増分ずつ差を埋めるようにして、マップの反映値を更新するとする。ただし、反映値を更新する方法としては、特に上述の方法に限定されるものではない。
【００５９】
Ｓ１０５０にて、エンジンＥＣＵ４００は、その他のＩＧオン時の処理を行なう。「その他のＩＧオン時の処理」とは、具体的には、エンジン起動処理等であるが特に限定されるものではない。Ｓ１０６０にて、エンジンＥＣＵ４００は、通常時処理を行なう。通常時処理の詳細については後述する。
【００６０】
Ｓ１０７０にて、エンジンＥＣＵ４００は、マップから得られる反映値から損失流量を算出する。すなわち、エンジンＥＣＵ４００は、検知されるスロットルバルブ１０８の開度に対応する損失流量を図２に示すマップから算出する。
【００６１】
Ｓ１０８０にて、エンジンＥＣＵ４００は、算出された損失流量分に基づいて、目標流量を補正する。目標流量は、エンジン２００のアイドリング時の水温や補機類の作動状態に応じて設定される。エンジンＥＣＵ４００は、目標流量に算出された損失流量分を加えて目標流量を補正する。
【００６２】
Ｓ１０９０にて、エンジンＥＣＵ４００は、補正された目標流量に対応するスロットルバルブ１０８の開度を算出する。Ｓ１１００にて、エンジンＥＣＵ４００は、その他の通常処理を行なう。「その他の通常処理」とは、具体的には、スロットルバルブ１０８が算出された開度になるようにエンジンＥＣＵ４００がスロットルモータ１０４を制御する等の処理を含む。
【００６３】
Ｓ１１１０にて、エンジンＥＣＵ４００は、ＩＧがオフされたか否かを判断する。ＩＧがオフされると（Ｓ１１１０にてＹＥＳ）、処理はＳ１０００に戻される。もしそうでないと（Ｓ１１１０にてＮＯ）、処理はＳ１０６０に戻される。
【００６４】
以下、図４を参照して、エンジンＥＣＵ４００が実行する通常時処理のプログラムの制御構造について説明する。
【００６５】
Ｓ２０００にて、エンジンＥＣＵ４００は、エンジン２００の運転状態が安定しているか否かを判断する。エンジン２００の運転状態が安定しているか否かについては、たとえば、アイドル回転数の時間変化量、スロットルバルブ１０８の開度の時間変化量あるいは、エアフローメータ１１２により検知される吸入空気量の時間変化量に基づいて判断される。エンジン２００の運転状態が安定していると判断されると（Ｓ２０００にてＹＥＳ）、処理はＳ２０１０に移される。もしそうでないと（Ｓ２０００にてＮＯ）、処理は終了する。
【００６６】
Ｓ２０１０にて、エンジンＥＣＵ４００は、検知されたスロットルバルブ１０８の開度から算出される吸入空気量とエアフローメータ１１２により検知された吸入空気量との差に基づいて損失流量（Ａ）を算出し、さらに、検知されたスロットルバルブ１０８の開度とマップとに基づいて、損失流量（Ｂ）を算出する。
【００６７】
Ｓ２０２０にて、エンジンＥＣＵ４００は、損失流量（Ａ）と損失流量（Ｂ）との差の絶対値が予め定められた値αよりも大きいか否かを判断する。予め定められた値αは、特に限定される値ではない。損失流量（Ａ）と損失流量（Ｂ）との差の絶対値が予め定められた値αよりも大きいと判断されると（Ｓ２０２０にてＹＥＳ）、処理はＳ２０３０に移される。もしそうでないと（Ｓ２０２０にてＮＯ）、処理は終了する。
【００６８】
Ｓ２０３０にて、検知されたスロットルバルブ１０８の開度が開度大の領域であるか否かを判断する。スロットルバルブ１０８の開度が開度大の領域であると（Ｓ２０３０にてＹＥＳ）、処理はＳ２０４０に移される。もしそうでないと（Ｓ２０３０にてＮＯ）、処理はＳ２０６０に移される。
【００６９】
Ｓ２０４０にて、エンジンＥＣＵ４００は、開度大の領域における損失流量の学習値を更新する。Ｓ２０５０にて、エンジンＥＣＵ４００は、開度大の領域における学習値の学習完了フラグをオンにする。
【００７０】
Ｓ２０６０にて、エンジンＥＣＵ４００は、検知されたスロットルバルブ１０８の開度が開度小の領域であるか否かを判断する。スロットルバルブ１０８の開度が開度小の領域であると（Ｓ２０６０にてＹＥＳ）、処理はＳ２０７０に移される。もしそうでないと（Ｓ２０６０にてＮＯ）、処理は終了する。
【００７１】
Ｓ２０７０にて、エンジンＥＣＵ４００は、開度小の領域における損失流量の学習値を更新する。Ｓ２０８０にて、エンジンＥＣＵ４００は、開度小の領域における学習値の学習完了フラグをオンにする。
【００７２】
以上のような構造およびフローチャートに基づく、本実施の形態に係る内燃機関の制御装置であるエンジンＥＣＵ４００の動作について説明する。
【００７３】
運転者がＩＧをオンして（Ｓ１０００にてＹＥＳ）、開度大および開度小の領域の学習が完了していて（Ｓ１０１０にてＹＥＳ）、かつ、初回のＩＧオンであると（Ｓ１０２０にてＹＥＳ）、更新された学習値に基づいてマップが作成される（Ｓ１０３０）。初回のＩＧオンでなければ（Ｓ１０２０にてＮＯ）、前回のトリップ時において、学習値が更新されていると、マップの反映値が学習値に基づくマップに近づくように更新される（Ｓ１０４０）。
【００７４】
エンジンが起動して（Ｓ１０５０）、運転状態が安定すると（Ｓ２０００にてＹＥＳ）、損失流量（Ａ）および損失流量（Ｂ）が算出される（Ｓ２０１０）。そして、算出された損失流量（Ａ）と損失流量（Ｂ）との差の絶対値が予め定められた値αよりも大きいか否かが判断される（Ｓ２０２０）。エアフローメータ１１２により検知された空気量に基づく損失流量（Ａ）が、図５に示すように、学習値に基づいて作成されたマップの反映値から距離αだけ離れた範囲（実線で囲まれた範囲）を外れると、開度と損失量との関係を示すマップに誤差が生じていると判断できる。
【００７５】
損失流量（Ａ）と損失流量（Ｂ）との差の絶対値が予め定められた値αよりも大きいと判断されると（Ｓ２０２０にてＹＥＳ）、検知されたスロットルバルブ１０８の開度が開度大の領域であれば（Ｓ２０３０にてＹＥＳ）、開度大の領域における損失流量の学習値が更新され（Ｓ２０４０）、学習完了フラグがオンされる（Ｓ２０５０）。検知されたスロットルバルブ１０８の開度が開度小の領域であると（Ｓ２０３０にてＮＯ，Ｓ２０６０にてＹＥＳ）、開度小の領域における損失流量の学習値が更新され（Ｓ２０７０）、学習完了フラグがオンされる（Ｓ２０８０）。検知された開度が開度大および開度小のいずれの領域でもなければ（Ｓ２０３０にてＮＯ，Ｓ２０６０にてＮＯ）、学習は行なわれない。
【００７６】
そして、検知されたスロットルバルブ１０８の開度に対応する損失流量がマップから算出され（Ｓ１０７０）、損失流量分に基づいて目標流量が補正される（Ｓ１０８０）。補正された目標流量に対応するスロットルバルブ１０８の開度が算出され（Ｓ１０９０）、その他の通常処理が行なわれる（Ｓ１１００）。ＩＧがオフされなければ（Ｓ１１１０にてＮＯ）、通常時処理が行なわれる（Ｓ１０６０）。
【００７７】
以上のようにして、本実施の形態に係る内燃機関の制御装置であるエンジンＥＣＵ４００によると、スロットルバルブの開度ＴＡ（１）に対応する損失流量Ａ（１）と、開度ＴＡ（１）より大きい開度ＴＡ（２）に対応する損失流量Ａ（２）とに基づいて、開度と損失分との関係を示すマップを作成することにより、検知されたスロットルバルブの開度に対応する空気量の損失流量を精度良く算出することができる。算出された損失流量に応じて、スロットルバルブの開度を補正すると、内燃機関のアイドリング時の運転状態に基づいて要求される空気量が内燃機関に過不足なく供給される。そのため、内燃機関の燃焼状態を安定した状態に制御することができる。したがって、内燃機関のスロットルバルブの開度を経時変化に応じて適切に補正する内燃機関の制御装置を提供することができる。
【００７８】
なお、本実施の形態においては、スロットルモータによるアイドル回転数制御におけるスロットルバルブの開度を補正する場合について説明したが、アイドリング時のエンジンに吸入される空気量を調整するアイドルスピードコントロールバルブに本発明を適用してもよい。アイドルスピードコントロールバルブは、スロットルバルブをバイパスする通路に流れる空気量を調整して、アイドル回転数を制御する。アイドルスピードコントロールバルブに本発明を適用しても、スロットルバルブに適用した場合と同様の効果を得ることができる。
【００７９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【００８０】
【図１】本実施の形態に係る内燃機関の制御装置が搭載されるエンジンシステムの構成を示す図である。
【図２】スロットルバルブの開度と吸入空気量の損失流量との関係を示す図（その１）である。
【図３】本実施の形態に係る内燃機関の制御装置であるエンジンＥＣＵで実行されるプログラムの制御構造を示すフローチャート（その１）である。
【図４】本実施の形態に係る内燃機関の制御装置であるエンジンＥＣＵで実行されるプログラムの制御構造を示すフローチャート（その２）である。
【図５】スロットルバルブの開度と吸入空気量の損失流量との関係を示す図（その２）である。
【符号の説明】
【００８１】
１００  吸気系、１０２  吸気通路、１０４  スロットルモータ、１０６  スロットルポジションセンサ、１０８  スロットルバルブ、１１０  エアクリーナ、１１２  エアフローメータ、１１４  インテークマニホールド、２００  エンジン、２１０  フューエルインジェクタ、２１２  ピストン、２１４  燃焼室、２１６  点火プラグ、２１８  タイミングロータ、２２０  水温センサ、２２２  クランクポジションセンサ、３００  排気系、３０２  エキゾーストマニホールド、３０４，３０８  三元触媒コンバータ、３０６  排気通路、４００  エンジンＥＣＵ、４０２  アクセルポジションセンサ。
【図１】
2006138270.tif 000003
【図２】
2006138270.tif 000004
【図３】
2006138270.tif 000005
【図４】
2006138270.tif 000006
【図５】
2006138270.tif 000007