(57)【要約】    【課題】  内部ＥＧＲ量推定のため吸・排気弁のオーバーラップ期間中の吹抜ガス量を高精度に推定する。    【解決手段】  スロットル弁開度が全開付近で機関回転速度が所定以下の低速域で吸気弁温度が平衡状態にある条件で、エアフロメータにより逆流分を吹抜ガスとして検出して第１の吹抜ガス量を演算する（Ｓ５０１〜Ｓ５０５）と共に、オーバーラップ期間中の吸気弁の開口面積と排気弁の開口面積の小さい方を選択した瞬時の有効開口面積を積算した吹抜ガス通路開口面積と吸気圧と排気圧との比とに基づいて第２の吹抜ガス量を演算し（Ｓ５０６）、これらの吹抜ガス量間の偏差を吹抜ガス通路開口面積に換算した値の所定割合を面積学習値として算出して記憶し、吹抜ガス通路開口面積を学習（修正）する（Ｓ５０７〜Ｓ５０９）。【選択図】  図９
2005307806.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の吸気弁開期間と排気弁開期間とのオーバーラップ期間中に、排気側と吸気側との間で吹き抜ける吹抜ガスの通路開口面積を推定する装置であって、
前記吹抜ガスの量を、吹抜ガスの通路開口面積変化に応じた吹抜ガス量変化を検出可能なパラメータを用いて推定する第１の方式と、前記パラメータ以外のパラメータを用いて推定する第２の方式とで推定し、これら２方式で推定された吹抜ガス量間の偏差に基づいて、前記吹抜ガスの通路開口面積を学習することを特徴とする吹抜ガスの通路開口面積推定装置。
【請求項２】
吹抜ガスの通路開口面積を、前記オーバーラップ期間中の吸気弁と排気弁との開度で定まる瞬時毎の有効開口面積の積算値として推定することを特徴とする請求項１に記載の吹抜ガスの通路開口面積推定装置。
【請求項３】
前記２方式の吹抜ガス量間の偏差と、前記オーバーラップ期間中の吸気圧と排気圧とに基づいて、吹抜ガスの通路開口面積の変化量を算出し、該変化量の所定割合を面積学習値として吹抜ガスの通路開口面積を学習することを特徴とする請求項１または請求項２に記載の吹抜ガスの通路面積推定装置。
【請求項４】
前記吹抜ガス量を推定する方式は、吸気通路に介装されるスロットル弁が略全開状態でかつ機関回転速度が所定以下の低速域であることを条件として吸入空気流量検出値に基づいて推定する方式であることを特徴とする請求項１〜請求項３のいずれか１つに記載の吹抜ガスの通路面積推定装置。
【請求項５】
前記吹抜ガス量を推定する方式は、前記オーバーラップ期間中の吸気圧と排気圧と吹抜ガスの通路開口面積とに基づいて推定する方式であることを特徴とする請求項１〜請求項３のいずれか１つに記載の吹抜ガスの通路面積推定装置。
【請求項６】
吸気弁温度が非平衡状態であるときは、前記吹抜ガス通路開口面積の学習を禁止することを特徴とする請求項１〜請求項５のいずれか１つに記載の吹抜ガスの通路開口面積推定装置。
【請求項７】
所定運転領域での吹抜ガスの通路開口面積の学習結果を、全運転領域に反映させることを特徴とする請求項１〜請求項６のいずれか１つに記載の吹抜ガスの通路開口面積推定装置。
【請求項８】
前記吹抜ガスの通路開口面積の学習を、気筒毎に行うことを特徴とする請求項１〜請求項７のいずれか１つに記載の吹抜ガスの通路開口面積推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の吸気弁開期間と排気弁開期間とのオーバーラップ期間中の吹抜ガス量を推定するため、該吹抜ガスの通路開口面積を高精度に算出するための技術に関する。
【背景技術】
【０００２】
従来、内燃機関の内部ＥＧＲ量（残留ガス量）を推定する装置として、シリンダ容積から行程容積を差し引いた容積に残留するガス量に、吸気弁開期間と排気弁開期間とのオーバーラップ期間中の吹抜ガス量を加算して推定するようにしたものがある（特許文献１）。
【特許文献１】特開２００１−２２１１０５号公報（段落番号００５９）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記吹抜ガス量は、オーバーラップ期間中の吸気圧と排気圧との圧力比と、吸気弁開度と排気弁開度とで定まる吹抜ガスの通路開口面積とにより推定される。
しかしながら、上記吹抜ガスの通路開口面積は、動弁系の摩耗やデポジットなどにより経時変化するため、高精度な推定を維持することが難しいという問題があった。
本発明は、このような従来の課題に着目してなされたもので、吹抜ガスの通路開口面積を、経時変化を学習することにより常時良好に推定でき、ひいては吹抜ガス量さらに内部ＥＧＲ量を高精度に推定できるようにすることを目的とする。
【課題を解決するための手段】
【０００４】
本発明は、内燃機関の吸気弁開期間と排気弁開期間とのオーバーラップ期間中に、排気側と吸気側との間で吹き抜ける吹抜ガスの通路開口面積を推定する装置であって、
前記吹抜ガスの量を、吹抜ガスの通路開口面積変化に応じた吹抜ガス量変化を検出可能なパラメータを用いて推定する第１の方式と、前記パラメータ以外のパラメータを用いて推定する第２の方式とで推定し、これら２方式で推定された吹抜ガス量間の偏差に基づいて、前記吹抜ガスの通路開口面積を学習することを特徴とする。
【発明の効果】
【０００５】
本発明によれば、動弁系の摩耗やデポジットによって吹抜ガス通路開口面積が変化すると第１の方式で吹抜ガスの通路開口面積変化に応じた吹抜ガス量変化を検出可能なパラメータを用いて推定された吹抜ガス量と、前記以外のパラメータを用いて推定された吹抜ガス量との間に吹抜ガスの通路開口面積変化に応じた偏差を生じる。そこで、前記偏差に基づいて吹抜ガス通路開口面積を学習することができ、該学習により該開口面積を常時高精度に推定することができる。
【発明を実施するための最良の形態】
【０００６】
以下に図面を参照して、本発明の実施の形態について説明する。
図１は、本発明の一実施形態に係るエンジン（内燃機関）１の構成を示している。
吸気通路１１の導入部には、エアクリーナ１２が取り付けられており、エアクリーナ１２により吸入空気中の粉塵等が除去される。吸気通路１１において、エアクリーナ１２の下流には、電子制御式のスロットル弁１３が設置されている。スロットル弁１３の下流には、サージタンク１４が取り付けられており、サージタンク１４にブランチ１５が取り付けられ、吸気マニホールドが構成されている。サージタンク１４内の吸入空気は、ブランチ１５及びシリンダヘッドに形成された吸気ポート１６を介して筒内に流入する。各気筒の吸気ポート１６には、燃料供給用のインジェクタ１７が設置されている。
【０００７】
エンジン本体において、燃焼室１８は、シリンダヘッド及びピストン１９により挟まれた空間として形成される。燃焼室１８は、気筒中心軸を基準とした一側で吸気ポート１６と接続しており、吸気ポート１６は、吸気弁２０により開放及び遮断される。吸気弁２０は、吸気カム２１により駆動される。また、燃焼室１８は、吸気ポート１６とは反対の一側で排気ポート２２と接続しており、排気ポート２２は、排気弁２３により開放及び遮断される。排気弁２３は、排気カム２４により駆動される。吸気カム２１に対して吸気側可変動弁装置２５が、排気カム２４に対して排気側可変動弁装置２６が設けられており、これらの可変動弁装置２５，２６により吸気カム２１又は排気カム２４のクランクシャフトに対する位相を変化させることで、吸気弁２０又は排気弁２３の作動特性を変化させ得るように構成されている。可変動弁装置２５，２６は、油圧型及びソレノイド型等のいかなる形態のものを採用してもよいが、本実施形態では、吸気弁２０又は排気弁２３の開閉時期（すなわち、バルブタイミング）を変化させることで、吸気弁開期間と排気弁開期間とのオーバーラップ期間（以下、単に「オーバーラップ期間」という。）を変化させ得るものを採用している。シリンダヘッドには、燃焼室１８の上部略中央に臨ませて点火プラグ２７が設置されている。
【０００８】
排気通路２８には、排気マニホールドの直後に第１の触媒コンバータ２９が介装されるとともに、その下流に第２の触媒コンバータ３０が介装されている。排気ポート２２に流出した排気は、これらの触媒コンバータ２９，３０及びマフラー３１を通過して、大気中に放出される。
インジェクタ１７、点火プラグ２７及び各可変動弁装置２５，２６の動作は、エンジンコントロールユニットとしての電子制御ユニット（以下「ＥＣＵ」という。）４１により制御される。ＥＣＵ４１には、エアフローメータ５１からの吸入空気量検出信号、圧力センサ５２からの吸気圧力検出信号、温度センサ５３からの冷却水温度検出信号、クランク角センサ５４からのクランク角検出信号（ＥＣＵ４１は、これをもとに、エンジン回転速度ＮＥを算出する。）、圧力センサ５５からの排気圧力検出信号、温度センサ５６からの排気温度検出信号、酸素センサ５７からの空燃比検出信号、アクセルセンサ５８からのアクセルペダル操作量検出信号、スロットルセンサ５９からのスロットル弁開度検出信号、及びカム角センサ６０，６１からのカム角検出信号（これをもとに、カムシャフトとクランクシャフトとの位相差を検出可能である。）が入力される。本実施形態では、エアフローメータ５１として、逆流時の流量を検出することのできるホットワイヤ型又は半導体型のエアフローメータを採用する。ＥＣＵ４１は、入力した各信号をもとに、上記の各デバイスの制御量を設定する。
【０００９】
本実施形態では、ＥＣＵ４１がエンジン１における吹抜ガス通路開口面積推定装置としての機能を備えている。該ＥＣＵ４１による吹抜ガス通路開口面積の推定について説明する。
図２は、クランク角ＣＡと、弁作動特性値ＣＡＭＰＦ及び弁リフト量ＶＬＩＦＴとの関係を示している。弁作動特性値ＣＡＭＰＦは、カムプロフィールそのものが与える弁の変位であり、弁リフト量ＶＬＩＦＴは、弁作動特定値ＣＡＭＰＦからバルブクリアランスＶＣＬＲを減じた実際の弁の変位である。弁作動特性値ＣＡＭＰＦ及び弁リフト量ＶＬＩＦＴは、ともに閉弁時を基準（＝０）としている。
【００１０】
本実施形態では、最大オーバーラップ時におけるオーバーラップ期間を所定のクランク角ＤＣＡ（ここでは、１°）毎に分割するとともに、ＥＣＵ４１に対し、分割した各区間の吸気弁２０及び排気弁２３の弁作動特性値ＣＡＭＰＦＩｎ，ＣＡＭＰＦＥｎ（ｎ＝１〜Ｎ）を記憶させておく。これらの弁作動特性値ＣＡＭＰＦＩｎ，ＣＡＭＰＦＥｎは、カムに固有のものであり、カムプロフィールを変更した場合は、その都度適合させる。エンジン１の運転時には、記憶されている各弁作動特性値ＣＡＭＰＦＩｎ，ＣＡＭＰＦＥｎから吸気弁２０又は排気弁２３に関するバルブクリアランスＶＣＬＲＩｎ，ＶＣＬＲＥｎを減算し、吸気弁２０が形成する区間開口面積ＶＡＲＥＡＩ、及び排気弁２３が形成する区間開口面積ＶＡＲＥＡＥを算出する。算出した区間開口面積ＶＡＲＥＡＩ，ＶＡＲＥＡＥは、区間毎に対応させた配列として記憶させる（図３）。有効開口面積ＡＳＵＭＯＬの演算では、記憶されている配列を参照して、吸気側及び排気側区間開口面積ＶＡＲＥＡＩ，ＶＡＲＥＡＥのうち小さい方をその区間の実質的な区間開口面積ＶＡＲＥＡｎとして選択し、選択した区間開口面積ＶＡＲＥＡｎをオーバーラップ期間に亘り積算し、かつ、時間積算値に換算した後、面積学習値を加算して有効開口面積ＡＳＵＭＯＬを算出する。
【００１１】
図４は、開口面積配列作成ルーチンのフローチャートである。
Ｓ１０１では、列番号表示値ｎに１を加算する。列番号表示値ｎは、このルーチンによる配列の作成が終了するたびに、０に設定される。
Ｓ１０２では、列番号表示値ｎにより特定される吸気弁２０及び排気弁２３の弁作動特性値ＣＡＭＰＦＩｎ，ＣＡＭＰＦＥｎを読み込む。
【００１２】
Ｓ１０３では、読み込んだ弁作動特性値ＣＡＭＰＦＩｎ，ＣＡＭＰＦＥｎからそれぞれのバルブクリアランスＶＣＬＲＩｎ，ＶＣＬＲＥｎを減算し、吸気弁２０及び排気弁２３の弁リフト量ＶＬＩＦＴＩｎ、ＶＬＩＦＴＥｎを算出する。なお、バルブクリアランスＶＣＬＲＩｎ，ＶＣＬＲＥｎは、冷却水温度Ｔｗ及び排気温度Ｔｅｘ等をもとに、推定することができる。
【００１３】
ＶＬＩＦＴＩｎ＝ＣＡＭＰＦＩｎ−ＶＣＬＲＩｎ  ・・・（１）
ＶＬＩＦＴＥｎ＝ＣＡＭＰＦＥｎ−ＶＣＬＲＥｎ  ・・・（２）
Ｓ１０４では、算出した弁リフト量ＶＬＩＦＴＩｎ，ＶＬＩＦＴＥｎに対し、流量感度係数Ｃｖに応じた係数ＫＣＶＩ＃，ＫＣＶＥ＃と、吸気弁２０又は排気弁２３の弁体投影面積ＶＡＲＥＡＩ０＃，ＶＡＲＥＡＥ０＃とを乗算し、吸気側及び排気側区間開口面積ＶＡＲＥＡＩ，ＶＡＲＥＡＥを算出する。なお、流量感度係数Ｃｖは、弁リフト量ＶＬＩＦＴに対して理論的に与えられる流量と実際に与えられる流量との比で表し、吸気弁２０と排気弁２３とがともに開く低リフト域では、弁リフト量ＶＬＩＦＴにほぼ比例する。係数ＫＣＶＩ＃，ＫＣＶＥ＃は、流量感度係数Ｃｖが描く近似直線の傾きとして算出し、固定値としてＥＣＵ４１に記憶させる。また、一気筒当たりに設けられる吸気弁２０又は排気弁２３の数をａ，ｂ（例えば、ａ，ｂ＝２）とし、吸気弁２０又は排気弁２３のシート当接部径をＶＤＩ，ＶＤＥとする。
【００１４】
ＶＡＲＥＡＩ＝ＶＬＩＦＴＩｎ×ＫＣＶＩ＃×ＶＡＲＥＡＩ０＃×ａ  ・・・（３）
ＶＡＲＥＡＥ＝ＶＬＩＦＴＥｎ×ＫＣＶＥ＃×ＶＡＲＥＡＥ０＃×ｂ  ・・・（４）
ＶＡＲＥＡＩ０＃＝π×（ＶＤＩ／２）2  ・・・（５）
ＶＡＲＥＡＥ０＃＝π×（ＶＤＥ／２）2  ・・・（６）
Ｓ１０５では、算出した区間開口面積ＶＡＲＥＡＩ，ＶＡＲＥＡＥを列番号表示値ｎと対応させて記憶する。
【００１５】
ＶＡＲＥＡＩｎ＝ＶＡＲＥＡＩ  ・・・（７）
ＶＡＲＥＡＥｎ＝ＶＡＲＥＡＥ  ・・・（８）
Ｓ１０６では、列番号表示値ｎが最終列番号Ｎに達したか否かを判定する。達したときは、Ｓ１０７へ進み、達していないときは、Ｓ１０１へ戻り、次の列について吸気側及び排気側区間開口面積ＶＡＲＥＡＩ，ＶＡＲＥＡＥを算出し、記憶する。
【００１６】
Ｓ１０７では、列番号表示値ｎを０に設定する。
図５は、有効開口面積演算ルーチンのフローチャートである。
Ｓ２０１では、吸気カム捻り角ＡＮＧＩ及び排気カム捻り角ＡＮＧＥを読み込む。
Ｓ２０２では、読み込んだカム捻り角ＡＮＧＩ，ＡＮＧＥをもとに、最大オーバーラップ時からの吸気弁開時期に対する排気弁閉時期の相対変化量ＳＩＦＴＥＶＣを算出し、吸気側区間開口面積ＶＡＲＥＡＩの配列に対し、排気側区間開口面積ＶＡＲＥＡＥの配列を算出した相対変化量ＳＩＦＴＥＶＣに応じた列数だけ前進させる（図２参照）。たとえば、最大オーバーラップ時からの吸気弁開時期及び排気弁閉時期の変化量が夫々クランク角で３０°及び１０°である場合は、相対変化量ＳＩＦＴＥＶＣが４０°であり、配列の作成に当たりオーバーラップ期間を１°毎に分割しているので、排気側区間開口面積ＶＡＲＥＡＥの配列を４０°に応じた列数（＝４０）だけ前進させる。
【００１７】
Ｓ２０３では、列番号表示値ｎに１を加算する。
Ｓ２０４では、吸気側区間開口面積ＶＡＲＥＡＩの配列及び前進させた排気側区間開口面積ＶＡＲＥＡＥの配列から、列番号表示値ｎに対応する列の区間開口面積ＶＡＲＥＡＩｎ，ＶＡＲＥＡＥｎを読み込む。
Ｓ２０５では、読み込んだ吸気側区間開口面積ＶＡＲＥＡＩｎが排気側区間開口面積ＶＡＲＥＡＥｎよりも大きいか否かを判定する。ＶＡＲＥＡＥｎよりも大きいときは、Ｓ２０６へ進み、ＶＡＲＥＡＥｎ以下であるときは、Ｓ２０７へ進む。
【００１８】
Ｓ２０６では、排気側区間開口面積ＶＡＲＥＡＥｎをその区間についての実質的な区間開口面積ＶＡＲＥＡｎとする。
Ｓ２０７では、吸気側区間開口面積ＶＡＲＥＡＩｎをその区間についての実質的な区間開口面積ＶＡＲＥＡｎとする。
Ｓ２０８では、各区間について算出した区間開口面積ＶＡＲＥＡｎをオーバーラップ期間に亘り積算する。
【００１９】
ＳＩＧＭＡ＝ＳＩＧＭＡ＋ＶＡＲＥＡｎ×ＤＣＡ  ・・・（９）
Ｓ２０９では、列番号表示値ｎが最終列番号Ｎに達したか否かを判定する。達したときは、Ｓ２１０へ進み、達していないときは、Ｓ２０３へ戻り、次の列について区間開口面積ＶＡＲＥＡｎを算出し、積算する。
Ｓ２１０では、算出した積算値ＳＩＧＭＡに面積学習値ＧＡを加算したものを有効開口面積ＡＳＵＭＯＬとする。面積学習値ＧＡは、後述する本発明に係る吹抜ガス通路開口面積学習演算ルーチンにより算出され更新された値が用いられる。
【００２０】
ＡＳＵＭＯＬ＝ＳＩＧＭＡ＋ＧＡ  ・・・（１０）
Ｓ２１１では、列番号表示値ｎ及び積算値ＳＩＧＭＡを０に設定する。
次に、本発明にかかる吹抜ガス通路開口面積学習について説明する。該吹抜ガス通路開口面積の学習は、２通りの方式で第１の吹抜ガス量と第２の吹抜ガス量を演算し、さらに、これら第１の吹抜ガス量と第２の吹抜ガス量の偏差を演算し、該偏差に基づいて面積学習値ＧＡを算出、更新することにより行う。
【００２１】
第１の吹抜ガス量は、エアフロメータ５１による吹抜ガス検出に基づいて行われ、スロットル弁開度ＴＶＯが全開に近い所定の開度ＴＶＯＲＥＳ＃（例えば８０°）以上で、かつ、エンジン回転速度ＮＥが所定の回転速度ＮＥＱＲＥＳ＃（例えば２０００ｒｐｍ）以下である所定の高負荷低回転領域にあることを条件として実行される。これは、エアフロメータ５１はスロットル弁１３の上流に配置されているため、スロットル弁１３が十分開いていないと、スロットル弁１３を通過する吹抜ガス流をエアフロメータ５１によって、良好に検出できないこと、及び、低回転域でなければ他の気筒からの圧力波の影響を充分に抑えることができないためである。
【００２２】
このように、スロットル弁開度が十分大きく回転速度が所定以下の領域でのみ、エアフロメータ５１による吹抜ガス量の検出を良好に行えるので、第１の吹抜ガス量の演算を行う。
図６は、第１の吹抜ガス量演算ルーチンのフローチャートである。
Ｓ３０１では、吸入空気量Ｑを算出する。本実施形態では、エアフローメータ５１の出力を２ｍｓ毎にサンプリングしている。吸入空気量Ｑの演算は、今回のサンプル値ＱＡと前回のサンプル値ＱＡｚを平均するとともに、算出した平均値ＱＡＡからオフセット分ＱＡＯＦＳＴを減算することによる。
【００２３】
ＱＡＡ＝（ＱＡ＋ＱＡｚ）／２  ・・・（１２）
Ｑ＝ＱＡＡ−ＱＡＯＦＳＴ  ・・・（１３）
Ｓ３０２では、算出した吸入空気量Ｑが０よりも小さいか否かを判定する。
吸入空気量Ｑが０よりも小さいとき、つまり、吹抜ガスを逆流として検出できるときは、Ｓ３０３へ進んで、吸入空気量Ｑ（＜０）の絶対値を瞬時吹抜ガス量ＱＲＳＡＦＭとする。
【００２４】
また、吸入空気量Ｑが０以上であるときは、吹抜ガスを生じていない状態であるので、Ｓ３０４へ進み、瞬時吹抜ガス量ＱＲＳＡＦＭを０とする。
Ｓ３０５では、８ｍｓ前から今回までの各瞬時吹抜ガス量ＱＲＳＡＦＭを積算して、一サイクル、かつ一気筒当たりの吹抜ガス量ＱＲＳＡＦＭＣＹＬを算出する（図７）。
ＱＲＳＡＦＭＣＹＬ＝ΣＱＲＳＡＦＭ  ・・・（１４）
Ｓ３０６では、算出した吹抜ガス量ＱＲＳＡＦＭＣＹＬに対し、次式による１次の進み補償処理を施す。なお、前回の吹抜ガス量をＱＲＳＡＦＭＣＹＬｚとし、時定数をＴＲＥＳ＃とする。時定数ＴＲＥＳ＃は、エンジン本体からエアフローメータ５１までの管路長及びサージタンク１４の容量等に応じて決定され、本実施形態では、実験的に求めたものを採用する。
【００２５】
【数１】
2005307806.tif 000003
【００２６】
Ｓ３０７では、補償後の吹抜ガス量ＱＲＳＡＦＭＣＹＬを第１の吹抜ガス量ＭＲＥＳＯＬ１とする。
以上のように、第１の吹抜ガス量は、高負荷低回転の限られた領域でのみ推定可能であるが、エアフロメータ５１による実測値に基づいて推定されるので、吸気弁２０の摩耗やデポジットによる影響が反映された値として推定できる。
【００２７】
これに対し、第２の吹抜ガス量は、既述のように演算された有効開口面積に基づいて演算されるもので、全運転領域で演算可能であるが、学習を行わない限り吸気弁２０の摩耗やデポジットによる影響が反映されない。
図８は、第２の吹抜ガス量演算ルーチンのフローチャートである。
Ｓ４０１では、吸気圧力Ｐｉｎ、排気圧力Ｐｅｘ、排気温度Ｔｅｘ、スロットル弁開度ＴＶＯ及びエンジン回転速度ＮＥ等、各種の運転状態を読み込む。
【００２８】
Ｓ４０２では、排気の比熱比κｅｘを算出する。比熱比κｅｘは、目標燃空比ＴＦＢＹＡ及び排気温度Ｔｅｘに応じて各比熱比を割り付けたマップを検索して算出する。比熱比κｅｘは、排気温度Ｔｅｘを一定としたときに、理論空燃比相当下で最も小さく、目標燃空比ＴＦＢＹＡがこれよりも小さく又は大きくなるほど、大きな値として算出される。また、目標燃空比ＴＦＢＹＡを一定としたときに、リーン側及びリッチ側の領域の双方において、排気温度Ｔｅｘが高くなるほど、小さな値として算出される。
【００２９】
Ｓ４０３では、前記図４，５のフローチャートにしたがって、有効開口面積ＡＳＵＭＯＬを算出する。
Ｓ４０４では、次式により第２の吹抜ガス量ＭＲＥＳＯＬ２を算出する。なお、次式において、吸気圧力Ｐｉｎと排気圧力Ｐｅｘは、脈動による圧力波を考慮した値として推定された値を用いる。概要を説明すると、吸気圧力Ｐｉｎについては、脈動圧の周波数とオーバーラップ期間の中心時期との同調状態が機関回転速度にも影響されることを考慮し、同調次数（吸気管形状に基づく基本周波数と機関回転速度との比で定まる）を用いて脈動圧の位相を求めることとし、また、脈動圧の圧力波が進行波であるため予め進行波でのシミュレーションで求めた基準の圧力波との比較で同調次数の進行波補正を行い、さらに吸気温度変化（音速変化）による基本周波数変化に対する補正を行って、機関回転速度及び負荷毎の脈動圧変動分を求め、該変動分を機関負荷で求まる平滑吸気圧力に加算することにより求める。排気圧力Ｐｅｘについては、排気温度変化による位相ずれは小さく無視でき、排気弁閉直前のシリンダ内圧力と平滑された排気圧（略大気圧）との比を起振力として脈動を生じるので、この圧力比と機関回転速度で定まる位相とで定まる脈動圧変動分を平滑排気圧に加算することにより求める。
【００３０】
【数２】
2005307806.tif 000004
【００３１】
図９は、面積学習値演算ルーチンのフローチャートである。
Ｓ５０１では、エンジン回転数ＮＥ、スロットル弁開度ＴＶＯ、冷却水温度Ｔｗ及び排気温度Ｔｅｘ等、各種の運転状態を読み込む。
Ｓ５０２では、読み込んだスロットル弁開度ＴＶＯが所定の開度ＴＶＯＲＥＳ＃以上であるか否かを判定する。ＴＶＯＲＥＳ＃以上であるときは、Ｓ５０３へ進み、ＴＶＯＲＥＳ＃以下であるときは、このルーチンを終了する。
【００３２】
Ｓ５０３では、読み込んだエンジン回転数ＮＥが所定の回転数ＮＥＱＲＥＳ＃以下であるか否かを判定する。ＮＥＱＲＥＳ＃以下であるときは、Ｓ５０４へ進み、ＮＥＱＲＥＳ＃よりも大きいときは、このルーチンを終了する。
Ｓ５０４では、吸気弁２０の弁体温度Ｔｉｖの単位時間当たりの変化量ＤＴｉｖを算出するとともに、算出した変化量ＤＴｉｖが所定の変化量ＤＴＩＶ＃以下であるか、すなわち、吸気弁２０が熱的平衡状態にあるか否かを判定する。ＤＴＩＶ＃以下であるときは、Ｓ５０５へ進み、ＤＴＩＶ＃よりも大きいときは、このルーチンを終了する。なお、弁体温度Ｔｉｖは、吸気弁２０の頭部温度Ｔｄｉと軸部温度Ｔａｘとを平均して算出することができる。頭部温度Ｔｄｉは、冷却水温度Ｔｗに対し、排気温度Ｔｅｘに応じた上昇分を加算したものとして算出し、他方、軸部温度Ｔａｘは、軸部中央における温度として、頭部温度Ｔｄｉをもとに、軸部の材質等に応じた熱伝導を考慮して算出する。
【００３３】
Ｔｉｖ＝（Ｔｄｉ＋Ｔａｘ）／２  ・・・（１８）
Ｓ５０２〜Ｓ５０４の条件が全て成立したとき、つまり、第１の吹抜ガス量ＭＲＥＳＯＬ１及び第２の吹抜ガス量ＭＲＥＳＯＬ２を同時に算出でき、かつ、吸気弁２０が熱的平衡状態にあるときは、信頼の高い学習を行える条件が成立しているので、Ｓ５０４以降へ進んで学習を実行する。
【００３４】
Ｓ５０５では、第１の吹抜ガス量ＭＲＥＳＯＬ１を、前記図６のフローチャートに従って演算する。
Ｓ５０６では、第２の吹抜ガス量ＭＲＥＳＯＬ２を、前記図７のフローチャートに従って演算する。
Ｓ５０７では、第１の吹抜ガス量ＭＲＥＳＯＬ１と第２のＭＲＥＳＯＬ２の差を吹抜ガス量偏差ＤＭＲＥＳＯＬとして算出する。
【００３５】
ＤＭＲＥＳＯＬ＝ＭＲＥＳＯＬ２−ＭＲＥＳＯＬ１  ・・・（１９）
Ｓ５０８では、算出した吹抜ガス量偏差ＤＭＲＥＳＯＬをもとに、次式により吹抜ガス量偏差の面積換算値ＡＤＳＵＭＯＬを算出する。
【００３６】
【数３】
2005307806.tif 000005
【００３７】
Ｓ５０９では、算出した面積換算値ＡＤＳＵＭＯＬに所定の係数ＫＧＡ＃を乗算し、面積学習値ＧＡを算出する。係数ＫＧＡ＃は、吸気弁２０の摩耗（弁頭部の削れ）や、デポジット（燃焼生成物）の堆積の速さを考慮して、たとえば、０．０１に設定する。
ＧＡ＝ＡＤＳＵＭＯＬ×ＫＧＡ＃  ・・・（２１）
Ｓ５１０では、イグニッションキーＯＦＦ時に、面積学習値ＧＡの最新の算出値を不揮発性メモリに記憶する。これにより、次回運転時（イグニッションキーのＯＮ時）に、前回運転時に記憶されている面積学習値ＧＡが初期値として用いられる。
【００３８】
このようにして面積学習値ＧＡの算出，更新は、特定の運転領域，条件でのみ行われるが、更新された面積学習値ＧＡは、全運転領域で図５のフローチャートにより有効開口面積を演算する際（Ｓ２１０）に、用いられる。
このように、吹抜ガスの通路開口面積（有効開口面積）を学習しながら、全運転領域で、吸気弁の摩耗やデポジットによる影響が考慮された吹抜ガス量を高精度に算出することができる。なお、このようにして算出した吹抜ガス量ＭＲＥＳＯＬに、別途算出される排気弁閉時期を過ぎても筒内に残る排気の量である残留ガス量ＭＲＥＳＣＹＬとを加算することにより、内部ＥＧＲ量を算出することができる。
【００３９】
また、吸気弁の摩耗やデポジットは、気筒間のバラツキが大きいが、既述のように、学習条件（第１の吹抜ガス量演算条件）として他の気筒からの圧力波の影響を充分に抑えることができる低回転域に設定しているので、検出した吹抜ガス流を生じている気筒を予め知ることができるから、気筒毎に面積学習値ＧＡを区別して記憶することにより気筒毎の学習を行え、ひいては、気筒毎に高精度に吹抜ガス量を算出できる。
【図面の簡単な説明】
【００４０】
【図１】本発明の一実施形態に係るエンジンの構成を示す図
【図２】吸気弁及び排気弁の作動特性、並びに実際のバルブタイミングに対して設定される配列の概念を示す図
【図３】最大オーバーラップ時に作成される配列の概念を示す図
【図４】開口面積配列作成ルーチンのフローチャート
【図５】有効開口面積演算ルーチンのフローチャート
【図６】第１の吹抜ガス量演算ルーチンのフローチャート
【図７】エアフローメータの出力波形を示す図
【図８】第２の吹抜ガス量演算ルーチンのフローチャート
【図９】面積学習値演算ルーチンのフローチャート
【符号の説明】
【００４１】
１…エンジン、１１…吸気通路、１２…エアクリーナ、１３…スロットル弁、１４…サージタンク、１６…吸気ポート、１７…インジェクタ、１８…燃焼室、１９…ピストン、２０…吸気弁、２１…吸気カム、２２…排気ポート、２３…排気弁、２４…排気カム、２５…吸気側可変動弁装置、２６…排気側可変動弁装置、２７…点火プラグ、２８…排気通路、４１…エンジンコントロールユニット、５１…エアフローメータ、５２…吸気圧力センサ、５３…冷却水温度センサ、５４…クランク角センサ、５５…排気圧力センサ、５６…排気温度センサ、５７…酸素センサ、５８…アクセルセンサ、５９…スロットルセンサ、６０，６１…カム角センサ。
【図１】
2005307806.tif 000006
【図２】
2005307806.tif 000007
【図３】
2005307806.tif 000008
【図４】
2005307806.tif 000009
【図５】
2005307806.tif 000010
【図６】
2005307806.tif 000011
【図７】
2005307806.tif 000012
【図８】
2005307806.tif 000013
【図９】
2005307806.tif 000014