(57)【特許請求の範囲】
【請求項１】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段とを備え、
前記基準圧力算出手段は、前記検出圧力と前記モータリング圧力との圧力比から求めた係数を前記モータリング圧力に乗算して前記基準圧力を算出することを特徴とすることを特徴とする内燃機関の燃料噴射量検出装置。
【請求項２】
前記基準圧力算出手段は、前記圧力比を燃料着火前の少なくとも一点のクランク角で算出することを特徴とする請求項１に記載の内燃機関の燃料噴射量検出装置。
【請求項３】
前記筒内圧力検出手段により複数のクランク角で検出した複数の検出圧力に基づいて前記筒内圧力検出手段の出力特性のオフセット誤差を算出し、このオフセット誤差の分だけ前記筒内圧力検出手段の出力特性を補正するオフセット誤差補正手段を備えていることを特徴とする請求項１又は２に記載の内燃機関の燃料噴射量検出装置。
【請求項４】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段と、
前記筒内圧力検出手段により複数のクランク角で検出した複数の検出圧力に基づいて前記筒内圧力検出手段の出力特性のオフセット誤差を算出し、このオフセット誤差の分だけ前記筒内圧力検出手段の出力特性を補正するオフセット誤差補正手段と
を備えていることを特徴とする内燃機関の燃料噴射量検出装置。
【請求項５】
燃料噴射カット毎に所定条件下で前記筒内圧力検出手段により前記モータリング圧力を検出して該モータリング圧力の記憶値を更新するモータリング圧力更新手段を備えていることを特徴とする請求項１乃至４のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項６】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段と、
燃料噴射カット毎に所定条件下で前記筒内圧力検出手段により前記モータリング圧力を検出して該モータリング圧力の記憶値を更新するモータリング圧力更新手段と
を備えていることを特徴とする内燃機関の燃料噴射量検出装置。
【請求項７】
前記筒内圧力検出手段により少なくとも一点のクランク角で検出した前記モータリング圧力をその標準値と比較することで前記筒内圧力検出手段の出力特性のゲイン誤差を求め、このゲイン誤差の分だけ前記筒内圧力検出手段の出力特性を補正するゲイン誤差補正手段を備えていることを特徴とする請求項１乃至６のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項８】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段と、
前記筒内圧力検出手段により少なくとも一点のクランク角で検出した前記モータリング圧力をその標準値と比較することで前記筒内圧力検出手段の出力特性のゲイン誤差を求め、このゲイン誤差の分だけ前記筒内圧力検出手段の出力特性を補正するゲイン誤差補正手段と
を備えていることを特徴とする内燃機関の燃料噴射量検出装置。
【請求項９】
前記噴射量算出手段は、燃料の着火時期から所定時間経過後における前記検出圧力と前記基準圧力との差圧に基づいて燃料噴射量を算出することを特徴とする請求項１乃至８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１０】
前記噴射量算出手段は、燃料の着火時期から所定時間経過後までの前記検出圧力と前記基準圧力との差圧を所定周期で積算し、その積算値に基づいて燃料噴射量を算出することを特徴とする請求項１乃至８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１１】
前記噴射量算出手段は、所定のクランク角における前記検出圧力と前記基準圧力との差圧に基づいて燃料噴射量を算出することを特徴とする請求項１乃至８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１２】
前記噴射量算出手段は、燃料の着火時期から所定のクランク角までの前記検出圧力と前記基準圧力との差圧を所定周期で積算し、その積算値に基づいて燃料噴射量を算出することを特徴とする請求項１乃至８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１３】
前記噴射量算出手段は、燃料の着火時期から所定時間経過後における前記検出圧力と前記基準圧力との差圧の上昇率に基づいて燃料噴射量を算出することを特徴とする請求項１乃至８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１４】
１サイクル内に機関出力発生のためのメイン噴射とそれに先立つパイロット噴射とを行う燃料噴射装置を備え、
前記噴射量算出手段は、前記メイン噴射燃料の着火時期又はそれ以前における前記検出圧力と前記基準圧力との差圧に基づいて前記パイロット噴射の燃料噴射量を算出することを特徴とする請求項１乃至１３のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１５】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段と、
１サイクル内に機関出力発生のためのメイン噴射とそれに先立つパイロット噴射とを行う燃料噴射装置とを備え、
前記噴射量算出手段は、前記メイン噴射燃料の着火時期又はそれ以前における前記検出圧力と前記基準圧力との差圧に基づいて前記パイロット噴射の燃料噴射量を算出することを特徴とする内燃機関の燃料噴射量検出装置。
【請求項１６】
１サイクル内に複数回の燃料噴射を行う燃料噴射装置を備え、
前記噴射量算出手段は、Ｎ回目（Ｎは２以上の整数）の噴射燃料の着火時期又はそれ以前における前記検出圧力と前記基準圧力との差圧に基づいて（Ｎ−１）回目以前の噴射の燃料噴射量を算出することを特徴とする請求項１乃至１３のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１７】
内燃機関の筒内圧力を筒内圧力検出手段で検出し、その検出値に基づいて燃料噴射量を検出する内燃機関の燃料噴射量検出装置において、
前記筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を算出する基準圧力算出手段と、
前記筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と前記基準圧力とに基づいて燃料噴射量を算出する噴射量算出手段と、
１サイクル内に複数回の燃料噴射を行う燃料噴射装置とを備え、
前記噴射量算出手段は、Ｎ回目（Ｎは２以上の整数）の噴射燃料の着火時期又はそれ以前における前記検出圧力と前記基準圧力との差圧に基づいて（Ｎ−１）回目以前の噴射の燃料噴射量を算出することを特徴とする内燃機関の燃料噴射量検出装置。
【請求項１８】
前記噴射量算出手段は、燃料噴射量の算出時に用いる前記検出圧力と前記基準圧力との差圧を、着火前の前記検出圧力で徐算して無次元化し、その値に基づいて燃料噴射量を算出することを特徴とする請求項１乃至１７のいずれかに記載の内燃機関の燃料噴射量検出装置。
【請求項１９】
前記筒内圧力検出手段は、燃料噴射カット時の筒内圧力を前記モータリング圧力として検出することを特徴とする請求項１乃至１８のいずれかに記載の内燃機関の燃料噴射量検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関（エンジン）の筒内圧力を検出し、その検出圧力から燃料噴射量を検出する内燃機関の燃料噴射量検出装置に関するものである。
【０００２】
【従来の技術】
エンジンの燃料噴射量は、エンジン出力、燃費及びエミッションに直接影響を与える制御パラメータである。一般に、燃料噴射量は、燃料噴射装置の固体差や経時変化等によって変化し、特に、燃料を高圧噴射するディーゼルエンジンでは、燃料噴射装置の固体差や経時変化等の影響を受けやすく、燃料噴射量が変化しやすい傾向がある。更に、同一サイクル内に複数回の燃料噴射を行う場合には、燃料噴射量の変化が、エンジン出力、燃費及びエミッションに与える影響が大きい。従って、エンジン出力、燃費及びエミッションを向上するには、燃料噴射量を精密に制御する必要がある。
【０００３】
そこで、ディーゼルエンジンでは、特開平１０−１８４４２０号公報に示すように、燃料が燃焼すると、燃料噴射量に応じた燃焼圧力が発生する特性に着目し、筒内圧力センサにより筒内圧力を検出し、この検出値から燃焼による圧力上昇量を検出することで、実際の燃料噴射量を検出し、この燃料噴射量を目標燃料噴射量と一致させるように噴射パラメータを調整する技術が検討されている。
【０００４】
しかし、ディーゼルエンジンは、圧縮比が大きく、筒内に多量の空気を吸入するため、筒内空気の圧縮圧力（以下「基準圧力」という）が燃焼による圧力上昇量に比べて相対的に大きくなる。このため、筒内圧力の検出値から基準圧力を除去しないと、燃焼による圧力上昇量を精度良く検出することができない。
【０００５】
そこで、上記公報のものは、エンジン出力発生のためのメイン噴射に先立ちパイロット噴射を行う燃料噴射システムにおいて、エンジン運転中にパイロット噴射を中止してその時の筒内圧力を基準圧力として検出し、パイロット噴射を行った時に検出した筒内圧力から基準圧力を減算して、パイロット噴射燃料の燃焼による圧力上昇量を求め、この圧力上昇量からパイロット噴射の燃料噴射量を算出するようにしている。
【０００６】
【発明が解決しようとする課題】
ところで、基準圧力は一定ではなくエンジン運転条件等により変化し、特に過給機付きのエンジンではその変化が大きくなる傾向がある。従って、燃焼による圧力上昇量を正確に求めるには、検出した筒内圧力からその時のエンジン運転条件に応じた基準圧力を減算する必要がある。
【０００７】
しかし、上記公報の技術では、エンジン運転中に基準圧力を検出する際に、パイロット噴射を中止しなければならないため、エンジン運転条件に応じた基準圧力を検出するには、エンジン運転条件が変化する毎にパイロット噴射を中止しなければならず、その影響でエンジン出力が不安定になってドライバビリティが悪化するという欠点がある。
【０００８】
予め、設計段階でエンジン運転条件毎に各クランク角での基準圧力を計算により求めてマップ等でメモリに記憶しておけば、パイロット噴射を中止することなく、その時のエンジン運転条件に応じた基準圧力をメモリから得ることができるが、刻々と変化する全てのエンジン運転条件に対して、その全ての基準圧力を予め計算で求めて記憶しておくことは事実上困難である。しかも、エンジン運転条件毎の基準圧力に関する膨大なデータを記憶しておく必要があり、大容量のメモリが必要になってコストアップする欠点もある。
【０００９】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、エンジン運転条件毎の基準圧力を予め計算してマップ等で記憶しておかなくても、エンジン運転中に、ドライバビリティの悪化を招くことなく、エンジン運転条件に応じた基準圧力を簡単に求めることができ、この基準圧力を用いて筒内圧力の検出値から燃料噴射量を精度良く検出することができる内燃機関の燃料噴射量検出装置を提供することにある。
【００１０】
【課題を解決するための手段】
上記目的を達成するために、本発明の請求項１の内燃機関の燃料噴射量検出装置は、筒内圧力検出手段で過去に検出された非燃焼時の筒内圧力（以下「モータリング圧力」という）に基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（以下「基準圧力」という）を基準圧力算出手段で算出し、筒内圧力検出手段で検出した現在の筒内圧力（以下「検出圧力」という）と基準圧力とに基づいて噴射量算出手段によって燃料噴射量を算出することを第１の特徴とし、更に、前記検出圧力と前記モータリング圧力との圧力比から求めた係数を前記モータリング圧力に乗算して前記基準圧力を算出することを第２の特徴とするものである。
【００１１】
この場合、モータリング圧力は、あるエンジン運転条件における非燃焼時の筒内圧力、つまり燃焼による圧力上昇を除いた筒内空気の圧縮圧力である。従って、モータリング圧力は、それを検出した時のエンジン運転条件における基準圧力に相当することから、モータリング圧力検出時のエンジン運転条件と現在のエンジン運転条件との関係から、モータリング圧力をベースデータとして現在のエンジン運転条件における基準圧力を算出することができる。このため、本発明では、エンジン運転条件毎の基準圧力を予め計算してマップ等で記憶しておかなくても、エンジン運転中にその時のエンジン運転条件に応じた基準圧力を簡単に算出することができ、この基準圧力と検出圧力との比較から燃料噴射量を精度良く算出することができる。しかも、エンジン運転条件毎の基準圧力を求める際に、燃料噴射を中止する必要がないため、ドライバビリティの悪化を回避できる。更に、エンジン運転条件毎の基準圧力に関する膨大なデータを記憶しておく必要がないため、大容量のメモリを必要とせず、その分、低コスト化できる。その上、基準圧力を算出する際のベースデータとなるモータリング圧力は、エンジン運転中に筒内圧力検出手段で検出するので、個々のエンジンの個体差によるモータリング圧力特性の違いにも対処できる。
【００１２】
ここで、車両減速時や高回転時等に実施される燃料噴射カットは、筒内が非燃焼状態となるため、請求項１９のように、筒内圧力検出手段によって燃料噴射カット時の筒内圧力をモータリング圧力として検出するようにすると良い。このようにすれば、エンジン運転中にモータリング圧力の検出のための非燃焼状態をわざわざ作り出す必要がなく、ドライバビリティを損なわずに、車両減速時等の燃料噴射カットを利用してモータリング圧力を検出することができる。
【００１３】
また、請求項１のように、検出圧力とモータリング圧力との圧力比から求めた係数をモータリング圧力に乗算して基準圧力を算出するようにすると良い。つまり、モータリング圧力は、モータリング圧力検出時のエンジン運転条件における検出圧力（＝モータリング圧力検出時の基準圧力）であることから、現在のエンジン運転条件における検出圧力とモータリング圧力（モータリング圧力検出時の検出圧力）との圧力比は、現在のエンジン運転条件における基準圧力とモータリング圧力検出時の基準圧力との圧力比を推定する有力なパラメータとなる。従って、この圧力比から求めた係数をモータリング圧力（＝モータリング圧力検出時の基準圧力）に乗算すれば、現在のエンジン運転条件における基準圧力を簡単に算出することができる。
【００１４】
この場合、請求項２のように、検出圧力とモータリング圧力との圧力比を燃料着火前の少なくとも一点のクランク角において算出するようにすると良い。図２に示すように、燃料着火前であれば、燃焼による筒内圧力の上昇が生じないため、検出圧力と基準圧力とがほぼ一致する。従って、燃料着火前に圧力比を算出すれば、燃焼による圧力上昇の影響を全く受けない圧力比を算出することができ、燃料着火後のクランク角でも基準圧力を精度良く算出することができる。
【００１５】
ところで、筒内圧力検出手段として用いられる筒内圧力センサは、温度等の使用条件によって出力特性にオフセット誤差が生じることがあり、これが燃料噴射量の検出精度を低下させる原因となる。
【００１６】
この対策として、請求項３，４のように、筒内圧力検出手段により複数のクランク角で検出した複数の検出圧力に基づいて筒内圧力検出手段の出力特性のオフセット誤差を算出し、このオフセット誤差の分だけ筒内圧力検出手段の出力特性を補正するようにしても良い。このようにすれば、たとえ、筒内圧力検出手段の出力特性にオフセット誤差が生じたとしても、筒内圧力検出手段の出力からオフセット誤差を排除した補正値を用いて燃料噴射量を精度良く算出することができる。
【００１７】
また、請求項５，６のように、燃料噴射カット毎に所定条件下で筒内圧力検出手段によりモータリング圧力を検出して該モータリング圧力の記憶値を更新するようにすると良い。このようにすれば、内燃機関の特性や筒内圧力検出手段の出力特性が経時変化したとしても、その経時変化に応じて更新した最新のモータリング圧力に基づいて基準圧力を精度良く算出することができ、経時変化による燃料噴射量の検出精度の低下を防ぐことができる。
【００１８】
また、筒内圧力検出手段の出力特性は、使用条件、経時変化等により圧力変化に対するゲイン（出力感度）が変化することがある。この対策として、請求項７，８のように、筒内圧力検出手段により少なくとも一点のクランク角で検出したモータリング圧力をその標準値と比較することで筒内圧力検出手段の出力特性のゲイン誤差を求め、このゲイン誤差の分だけ筒内圧力検出手段の出力特性を補正するようにしても良い。このようにすれば、筒内圧力検出手段の出力特性にゲイン誤差が生じたとしても、筒内圧力検出手段の出力からゲイン誤差を排除した補正値を用いて燃料噴射量を精度良く算出することができる。
【００１９】
ところで、燃料噴射量の算出方法は、例えば、燃料着火後の検出圧力と基準圧力との比に基づいて燃料噴射量を算出するようにしても良いが、請求項９のように、燃料の着火時期から所定時間経過後における検出圧力と基準圧力との差圧に基づいて燃料噴射量を算出するようにしても良い。燃料着火後における検出圧力と基準圧力との差圧は、燃焼による圧力上昇分に相当するため、この差圧から燃料噴射量を精度良く算出することができる。しかも、着火時期から所定時間経過後に差圧を求めるので、エンジン回転数によらず、着火時期から差圧を検出するまでの燃焼時間を常に一定にすることができ、エンジン回転数の影響を受けない高精度な燃料噴射量の検出が可能となる。
【００２０】
更に、請求項１０のように、燃料の着火時期から所定時間経過後までの検出圧力と基準圧力との差圧を所定周期で積算し、その積算値に基づいて燃料噴射量を算出するようにしても良い。このようにすれば、筒内圧力検出手段の出力にノイズ等が重畳して差圧データが一時的にばらついたとしても、その影響を小さく抑えて燃料噴射量を精度良く算出することができる。
【００２１】
或は、請求項１１のように、所定のクランク角における検出圧力と基準圧力との差圧に基づいて燃料噴射量を算出するようにしても良い。このようにすれば、差圧を求めるタイミング（クランク角）を算出する必要がなくなるため、燃料噴射量算出プログラムを簡略化して計算量（ＣＰＵ負荷）を少なくすることができる。
【００２２】
更に、請求項１２のように、燃料の着火時期から所定のクランク角までの検出圧力と基準圧力との差圧を所定周期で積算し、その積算値に基づいて燃料噴射量を算出するようにしても良い。この場合も、ノイズ等による差圧データのばらつきの影響を小さく抑えて燃料噴射量を精度良く算出することができる。
【００２３】
また、請求項１３のように、燃料の着火時期から所定時間経過後における検出圧力と基準圧力との差圧の上昇率に基づいて燃料噴射量を算出するようにしても良い。筒内圧力検出手段の出力特性にオフセット誤差が生じると、差圧データにもオフセット誤差が含まれるが、差圧の上昇率を求めると、オフセット誤差をほぼキャンセルすることができる。従って、差圧の上昇率から燃料噴射量を算出すれば、オフセット誤差の影響を小さく抑えて燃料噴射量を精度良く算出することができる。
【００２４】
ところで、１サイクル内にエンジン出力発生のためのメイン噴射とそれに先立つパイロット噴射とを行う燃料噴射システムでは、パイロット噴射の燃料噴射量を算出する際に、メイン噴射燃料の着火後の差圧を用いたのでは、メイン噴射燃料の燃焼による圧力上昇の影響を受けてしまう。
【００２５】
従って、パイロット噴射の燃料噴射量を算出する場合には、請求項１４，１５のように、メイン噴射燃料の着火時期又はそれ以前における検出圧力と基準圧力との差圧に基づいてパイロット噴射の燃料噴射量を算出するようにすると良い。このようにすれば、メイン噴射燃料の燃焼による圧力上昇の影響を受けない差圧（パイロット噴射時の燃料燃焼のみによる圧力上昇量）を用いてパイロット噴射の燃料噴射量を精度良く算出することができる。
【００２６】
また、請求項１６，１７のように、１サイクル内に複数回の燃料噴射を行う場合は、Ｎ回目（Ｎは２以上の整数）の噴射燃料の着火時期又はそれ以前における検出圧力と基準圧力との差圧に基づいて、（Ｎ−１）回目以前の噴射の燃料噴射量を算出するようにすると良い。このようにすれば、Ｎ回目の噴射燃料の燃焼による圧力上昇の影響を受けない差圧に基づいて、（Ｎ−１）回目以前の噴射の燃料噴射量を精度良く算出することができる。
【００２７】
また、請求項１８のように、燃料噴射量の算出時に用いる検出圧力と基準圧力との差圧を、着火前の検出圧力で徐算して無次元化し、その値に基づいて燃料噴射量を算出しても良い。筒内圧力検出手段の出力特性にゲイン誤差が含まれていると、検出圧力と基準圧力との差圧及び検出圧力には、それぞれ同じゲイン誤差が含まれるので、差圧を着火前の検出圧力で徐算すれば、ゲイン誤差をほぼキャンセルすることができて、この値から燃料噴射量を精度良く算出することができる。
【００２８】
【発明の実施の形態】
［実施形態（１）］
以下、本発明を４気筒のディーゼルエンジンに適用した実施形態（１）を図１乃至図６に基づいて説明する。
【００２９】
まず、図１に基づいてエンジン制御システム全体の構成を説明する。内燃機関であるディーゼルエンジン１１の各気筒には、電磁弁式の燃料噴射弁１２が取り付けられ、各燃料噴射弁１２には、高圧ポンプ（図示せず）から高圧に畜圧された燃料がコモンレール１３を通して分配される。このコモンレール１３には、燃料噴射弁１２に分配する燃料の圧力（コモンレール燃圧）を検出する燃圧センサ１４が取り付けられている。また、ディーゼルエンジン１１の１つの代表気筒には、筒内圧力を検出する筒内圧力センサ１５（筒内圧力検出手段）が取り付けられている。
【００３０】
更に、エンジン１１のクランク軸２０の近傍には、所定クランク角毎にパルス信号を出力するクランク角センサ１６が設置され、カム軸（図示せず）の近傍には、気筒判別センサ１７が設置されている。また、アクセルペダル（図示せず）には、アクセルセンサ等の負荷センサ１８が設けられている。
【００３１】
前述した各種センサの出力信号は、エンジン電子制御回路（以下「ＥＣＵ」と表記する）１９に入力される。このＥＣＵ１９は、マイクロコンピュータを主体として構成され、各種センサで検出したエンジン運転状態に基づいて燃料噴射量や燃料噴射時期を演算し、その演算結果に基づいて燃料噴射弁１２を制御する。
【００３２】
更に、ＥＣＵ１９は、燃料噴射カット時に所定条件下で筒内圧力センサ１５によって検出した非燃焼時の筒内圧力（モータリング圧力）Ｐｍに基づいて、燃焼による圧力上昇を除いた現在の筒内空気の圧力（基準圧力）Ｐｂを算出する基準圧力算出手段として機能すると共に、筒内圧力センサ１５で検出した筒内圧力（検出圧力）Ｐｋと基準圧力Ｐｂとの差圧（燃焼による圧力上昇量）に基づいて燃料噴射量を算出する噴射量算出手段として機能する。そして、ＥＣＵ１９は、検出した燃料噴射量を目標燃料噴射量に一致させるように燃料噴射弁１２の燃料噴射量をフィードバック制御する。
【００３３】
ここで、ＥＣＵ１９による燃料噴射量の検出方法について説明する。
図２に示すモータリング圧力Ｐｍ（θ）の波形は、燃料噴射カット中に所定の運転条件が成立した時（例えばエンジン回転数が所定回転数Ｎとなった時）に、筒内圧力センサ１５の出力を１サイクル分だけ読み込んで、ＥＣＵ１９内のバックアップＲＡＭ等の不揮発性メモリ（図示せず）に記憶したものである。このモータリング圧力Ｐｍ（θ）の波形は、所定走行時間Ｔ１（例えば１００時間）経過毎に、燃料噴射カット中に所定の運転条件が成立した時に新たに検出し、記憶値を更新する。
【００３４】
また、検出圧力Ｐｋ（θ）は、所定のサンプリング間隔Δθ（例えば１℃Ａ）毎に筒内圧力センサ１５によって検出する。
一方、基準圧力Ｐｂ（θ）は、モータリング圧力Ｐｍ（θ）と検出圧力Ｐｋ（θ）とから次のようにして算出する。
【００３５】
燃料着火前における検出圧力Ｐｋ（θ）は、燃焼による圧力上昇を含まないため、基準圧力Ｐｂ（θ）とほぼ一致する。従って、着火前の圧縮行程に設定された算出クランク角θ0 における検出圧力Ｐｋ（θ0 ）とモータリング圧力Ｐｍ（θ0 ）との圧力比Ｈを次式により算出すれば、燃焼による圧力上昇の影響を全く受けない圧力比Ｈを算出することができる。
Ｈ＝Ｐｋ（θ0 ）／Ｐｍ（θ0 ）
【００３６】
ここで、算出クランク角θ0 は、圧力比Ｈの算出精度を高めるために、できるだけ着火直前であることが好ましく、例えばＢＴＤＣ１０℃Ａ（圧縮上死点前１０℃Ａ）に設定すると良い。また、着火前の一点のクランク角θ0 のみで圧力比Ｈを算出しても良いが、着火前の複数点のクランク角で圧力比Ｈを算出し、複数の圧力比Ｈの平均値を用いるようにしても良い。
【００３７】
この算出クランク角θ0 以降の各クランク角θ毎に、モータリング圧力Ｐｍ（θ）に圧力比Ｈを掛け合わせることで、各クランク角θにおける基準圧力Ｐｂ（θ）を算出する。
Ｐｂ（θ）＝Ｈ×Ｐｍ（θ）
これにより、基準圧力Ｐｂを簡単に算出することができる。
【００３８】
図３に示すように、燃料の着火時期θf から所定時間ｔ0 経過後の噴射量検出時期θQ において、検出圧力Ｐｋ（θQ ）と算出した基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）を次式により算出する。
ΔＰ（θQ ）＝Ｐｋ（θQ ）−Ｐｂ（θQ ）
【００３９】
尚、燃料の着火時期θf の検出方法は、例えば、検出圧力Ｐｋ（θ）と基準圧力Ｐｂ（θ）との差圧ΔＰ（θ）が着火判定値Ｆ（例えば１００ｋＰａ）よりも大きくなったクランク角θf を着火時期とすれば良い。これ以外の方法として、例えば、燃焼光センサ、ノックセンサ、イオン電流センサ等を用いて、着火時期を検出するようにしても良い。
【００４０】
この差圧ΔＰ（θQ ）は、燃焼による圧力上昇分に相当する。また、着火時期θf から所定時間ｔ0 経過後の噴射量検出時期θQ に差圧ΔＰ（θQ ）を算出するので、エンジン回転数によらず、着火時期θf から差圧ΔＰ（θQ ）を検出するまでの燃焼時間を常に一定にすることができる。これにより、図４の実験結果に示すように、噴射量検出時期θQ における差圧ΔＰ（θQ ）と燃料噴射量Ｑとの関係を、直線（比例式）で近似することができ、燃料噴射量Ｑを次式により簡単に算出することができる。
Ｑ＝α×ΔＰ（θQ ）
上式において、αは比例定数（直線の傾き）である。尚、燃料噴射量Ｑの検出精度を更に高めるために、差圧ΔＰ（θQ ）と燃料噴射量Ｑとの関係を２次関数以上の高次関数（曲線）で近似するようにしても良い。
【００４１】
以上説明したＥＣＵ１９による燃料噴射量の検出は、図５に示す燃料噴射量検出プログラムにより実行される。本プログラムは、所定時間毎又は所定クランク角毎に実行され、筒内圧力センサ１５が設けられた代表気筒の燃料噴射量が検出される。本プログラムが起動されると、まず、ステップ１０１で、前回モータリング圧力Ｐｍ（θ）の波形を更新してからの積算走行時間が、所定時間Ｔ１（例えば１００時間）を越えたか否かを判定する。もし、積算走行時間が所定時間Ｔ１に達していなければ、モータリング圧力Ｐｍ（θ）の波形を更新せず、そのままステップ１０５に進む。
【００４２】
一方、積算走行時間が所定時間Ｔ１を越えていれば、ステップ１０２に進み、燃料噴射カット中に所定の運転条件が成立した時（例えばエンジン回転数が所定回転数Ｎとなった時）に、１サイクル分だけ筒内圧力センサ１５の出力をモータリング圧力Ｐｍ（θ）として読み込み、ＥＣＵ１９の不揮発性メモリに記憶されたモータリング圧力Ｐｍ（θ）の記憶データを更新する。この後、ステップ１０３で、更新したモータリング圧力Ｐｍ（θ）のピーク圧Ｐmax が所定値Ｐｓよりも高いか否かを判定する。もし、ピーク圧Ｐmax が所定値Ｐｓ以下であれば、筒内圧力が異常低下していると判断して、ステップ１０４に進み、警告ランプ（図示せず）の点灯等により異常表示を行って筒内圧力の異常低下を運転者に知らせて本プログラムを終了する。
【００４３】
これに対して、ステップ１０３で、ピーク圧Ｐmax が所定値Ｐｓよりも高いと判定された場合は、筒内圧力が正常であると判断して、ステップ１０５に進む。このステップ１０５では、ＥＣＵ１９の不揮発性メモリに記憶されたモータリング圧力Ｐｍ（θ）の波形を読み出し、次のステップ１０６で、現在のクランク角θを算出クランク角θ0 （例えばＢＴＤＣ１０℃Ａ）と比較して、算出クランク角θ0 に達するまで、ステップ１０６で待機する。その後、算出クランク角θ0 に達した時点で、ステップ１０７に進み、算出クランク角θ0 における検出圧力Ｐｋ（θ0 ）とモータリング圧力Ｐｍ（θ0 ）との圧力比Ｈを次式により算出する。
Ｈ＝Ｐｋ（θ0 ）／Ｐｍ（θ0 ）
【００４４】
次のステップ１０８で、算出クランク角θ0 以降の各クランク角θ毎に、モータリング圧力Ｐｍ（θ）に圧力比Ｈを乗算して各クランク角θの基準圧力Ｐｂ
（θ）を次式により算出する。
Ｐｂ（θ）＝Ｈ×Ｐｍ（θ）
この基準圧力Ｐｂ（θ）のデータは、本プログラムが終了するまでＥＣＵ１９のＲＡＭ等のメモリに一時的に記憶しておく。
【００４５】
この後、ステップ１０９に進み、噴射量検出時期θQ を算出する。算出方法は、例えば、着火時期θf から所定時間ｔ0 経過後に相当するクランク角θQ を算出する。
【００４６】
この後、ステップ１１０に進み、現在のクランク角θを噴射量検出時期θQ と比較し、噴射量検出時期θQ に達するまでステップ１１０で待機する。その後、噴射量検出時期θQ に達した時点で、ステップ１１１に進み、噴射量検出時期θQ における差圧ΔＰ（θQ ）を次式により算出する。
ΔＰ（θQ ）＝Ｐｋ（θQ ）−Ｐｂ（θQ ）
【００４７】
次のステップ１１２で、予め求めた比例定数αをメモリから読み出し、燃料噴射量Ｑを次式により算出して、本プログラムを終了する。
Ｑ＝α×ΔＰ（θQ ）
尚、比例定数αは、エンジン運転条件に応じて補正するようにしても良い。
【００４８】
ところで、図６に破線で示すように、例えばエンジン低負荷時に対応した基準圧力を予め計算して記憶しておき、この基準圧力を全てのエンジン運転条件に適用すると、エンジン高負荷時では、基準圧力が実際の基準圧力と大きく異なってしまい、燃料噴射量を誤検出する可能性がある。この対策として、予めエンジン運転条件毎に基準圧力を計算してマップ等で記憶しておき、エンジン運転条件に応じた基準圧力をマップ等から求めるようにすれば、燃料噴射量の検出精度を向上できるが、刻々と変化する全てのエンジン運転条件に対して、その全ての基準圧力を予め計算で求めて記憶しておくことは事実上困難である。しかも、エンジン運転条件毎の基準圧力に関する膨大なデータを記憶しておく必要があり、大容量のメモリが必要になってコストアップする欠点もある。
【００４９】
これに対し、本実施形態（１）では、図２に示すように、燃料着火前の算出クランク角θ0 における検出圧力Ｐｋ（θ0 ）と、その時のエンジン運転条件の算出クランク角θ0 における基準圧力Ｐｂ（θ0 ）とがほぼ一致する点に着目し、燃料着火前の算出クランク角θ0 における検出圧力Ｐｋ（θ0 ）とモータリング圧力Ｐｍ（θ0 ）との圧力比Ｈを算出することで、現在のエンジン運転条件における基準圧力Ｐｂとモータリング圧力Ｐｍとの圧力比Ｈを求め、算出クランク角θ0 以降の各クランク角θ毎に、モータリング圧力Ｐｍ（θ）に圧力比Ｈを掛け合わせることで、各クランク角θにおける基準圧力Ｐｂ（θ）を算出する。これにより、燃焼による圧力上昇の影響を全く受けない圧力比Ｈを用いて、燃料着火後のクランク角の基準圧力Ｐｂ（θ）を精度良く算出することができる。
【００５０】
そして、着火時期θf から所定時間ｔ0 経過後に、検出圧力Ｐｋ（θQ ）と基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）を求めるので、エンジン回転数によらず、着火時期θf から差圧ΔＰ（θQ ）を検出するまでの燃焼時間を常に一定にすることができ、この差圧ΔＰ（θQ ）から燃料噴射量Ｑを精度良く算出することができる。しかも、従来のように、基準圧力を検出する際に燃料噴射を中止する必要がないため、ドライバビリティの悪化を回避できる。更に、エンジン運転条件毎の基準圧力を予め計算してマップ等で記憶しておく必要がないため、大容量のメモリを必要とせず、その分、低コスト化できる。
【００５１】
また、上記実施形態（１）では、車両減速時等に実施される燃料噴射カット時に筒内圧力センサ１５でモータリング圧力Ｐｍを検出するので、ドライバビリティを損なわずに、モータリング圧力Ｐｍを検出することができると共に、個々のエンジンの個体差によるモータリング圧力特性の違いにも対処することができ、エンジンの個体差による燃料噴射量の検出精度のばらつきを少なくすることができる。しかも、モータリング圧力Ｐｍを所定時間Ｔ１経過毎に更新するので、エンジン特性や筒内圧力センサ１５の出力特性が経時変化したとしても、その経時変化に応じて更新したモータリング圧力Ｐｍに基づいて基準圧力Ｐｂを精度良く算出することができ、経時変化による燃料噴射量の検出精度の低下を防ぐことができる。
【００５２】
［実施形態（２）］
次に、本発明の実施形態（２）を図７乃至図９に基づいて説明する。上記実施形態（１）では、着火時期θf から所定時間ｔ0 経過後に検出圧力Ｐｋ（θQ ）と基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）を算出し、この差圧ΔＰ（θQ ）から燃料噴射量Ｑを算出するようにしたが、本実施形態（２）では、図７に示すように、着火時期θf から所定時間ｔ0 経過後の噴射量検出時期θQ までの期間中に、所定のサンプリング間隔Δθ毎に検出圧力Ｐｋ（θ）と基準圧力Ｐｂ（θ）との差圧ΔＰ（θ）を積算し、この差圧積算値ΣΔＰ（θ）から燃料噴射量Ｑを算出するようにしている。
【００５３】
図８の実験結果に示すように、着火時期θf から噴射量検出時期θQ までの差圧積算値ΣΔＰ（θ）と燃料噴射量Ｑとの関係を直線（比例式）で近似することができ、燃料噴射量Ｑを次式により簡単に算出することができる。
Ｑ＝α×ΣΔＰ（θ）
上式において、αは比例定数（直線の傾き）である。尚、燃料噴射量Ｑの検出精度を更に高めるために、差圧積算値ΣΔＰ（θ）と燃料噴射量Ｑとの関係を２次関数以上の高次関数（曲線）で近似するようにしても良い。
【００５４】
本実施形態（２）で実行する図９の燃料噴射量検出プログラムは、前記実施形態（１）で実施した図５のステップ１１０〜１１２の処理を、ステップ１１３〜１１７の処理に変更したものでり、これ以外のステップは図５と同じである。本プログラムでは、噴射量検出時期θQ 算出後（ステップ１０９）、クランク角θが着火時期θf に達した時点で、ステップ１１３からステップ１１４に進み、差圧ΔＰ（θ）を次式により算出する。
ΔＰ（θ）＝Ｐｋ（θ）−Ｐｂ（θ）
【００５５】
次のステップ１１５で、今回までの差圧積算値ΣΔＰ（θi ）を、前回までの差圧積算値ΣΔＰ（θi-1 ）に今回の差圧ΔＰ（θi ）を加算して求める。
ΣΔＰ（θi ）＝ΣΔＰ（θi-1 ）＋ΔＰ（θi ）
この後、ステップ１１６に進み、クランク角θを噴射量検出時期θQ と比較し、噴射量検出時期θQ に達していなければ、上記ステップ１１４に戻り、差圧ΔＰ（θ）の積算処理を繰り返す（ステップ１１４，１１５）。
【００５６】
その後、クランク角θが噴射量検出時期θQ に達した時点で、ステップ１１６からステップ１１７に進み、予め求めた比例定数αをメモリから読み出し、この比例定数αに差圧積算値ΣΔＰ（θ）を乗算して燃料噴射量Ｑを求め、本プログラムを終了する。
Ｑ＝α×ΣΔＰ（θ）
尚、比例定数αは、エンジン運転条件に応じて補正するようにしても良い。
【００５７】
以上説明した実施形態（２）の燃料噴射量検出処理では、着火時期θf から所定時間ｔ0 経過後の噴射量検出時期θQ までの期間中に差圧ΔＰ（θ）を積算し、その差圧積算値ΣΔＰ（θ）から燃料噴射量Ｑを算出するので、筒内圧力センサ１５の出力にノイズ等が重畳して差圧ΔＰ（θ）のデータが一時的にばらついていたとしても、その影響を小さく抑えて燃料噴射量Ｑを精度良く算出することができる。
【００５８】
尚、着火時期θf 以前のクランク角における差圧ΔＰ（θ）がほぼ０と見なせる場合は、ステップ１１３の処理を省略して、噴射量検出時期θQ の算出後（ステップ１０９）、着火時期θf を待たずに、差圧ΔＰ（θ）の積算処理（ステップ１１４、１１５）を開始しても良い。
【００５９】
［実施形態（３）］
前記実施形態（１）では、着火時期θf から所定時間ｔ0 経過後のクランク角を噴射量検出時期θQ としたが、本発明の実施形態（３）では、図１０に示すように、噴射量検出時期θQ を着火時期によらず予め決めておいた着火時期以後の所定のクランク角とし、この噴射量検出時期θQ における検出圧力Ｐｋ（θQ ）と基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）から燃料噴射量Ｑを算出するようにしている。
【００６０】
このようにすれば、噴射量検出時期θQ を算出する必要がなくなるため、図５の燃料噴射量検出プログラムにおいて、ステップ１０９の処理を省略することができて、計算量を少なくすることができ、ＥＣＵ１９のＣＰＵ負荷を軽減することができる。
尚、本発明は、検出した着火時期θf のクランク角に所定のクランク角を加算して得られたクランク角を噴射量検出時期θQ としても良い。
【００６１】
［実施形態（４）］
前記実施形態（２）では、着火時期θf から所定時間ｔ0 経過後までの差圧ΔＰ（θ）を積算したが、本発明の実施形態（４）では、図１１に示すように、噴射量検出時期θQ を着火時期によらず予め決めておいた着火時期以後の所定のクランク角とし、着火時期θf からこの噴射量検出時期θQ までの期間中に、所定のサンプリング間隔Δθ毎に差圧ΔＰ（θ）を積算し、その差圧積算値ΣΔＰ（θ）から燃料噴射量Ｑを算出するようにしている。
【００６２】
このようにすれば、図９の燃料噴射量検出プログラムにおいて、ステップ１０９の処理を省略することができ、計算量を少なくすることができる。
尚、この場合も、検出した着火時期θf のクランク角に所定のクランク角を加算して得られたクランク角を噴射量検出時期θQ としても良い。
【００６３】
［実施形態（５）］
次に、本発明の実施形態（５）を図１２及び図１３に基づいて説明する。
前記実施形態（１）では、噴射量検出時期θQ における検出圧力Ｐｋ（θQ ）と基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）から燃料噴射量を算出したが、本実施形態（５）では、図１２に示すように、噴射量検出時期θQ において、検出圧力Ｐｋ（θQ ）と基準圧力Ｐｂ（θQ ）との差圧ΔＰ（θQ ）の上昇率ｄΔＰ（θQ ）／ｄｔを算出し、この差圧上昇率ｄΔＰ（θQ ）／ｄｔから燃料噴射量Ｑを算出するようにしている。
【００６４】
図１３の実験結果に示すように、着火時期θf から所定時間ｔ0 経過後の噴射量検出時期θQ における差圧上昇率ｄΔＰ（θQ ）／ｄｔと燃料噴射量Ｑとの関係を直線（比例式）で近似することができ、燃料噴射量Ｑを次式により簡単に算出することができる。
Ｑ＝α×ｄΔＰ（θQ ）／ｄｔ
上式において、αは比例定数（直線の傾き）である。尚、燃料噴射量Ｑの検出精度を更に高めるために、差圧上昇率ｄΔＰ（θQ ）／ｄｔと燃料噴射量Ｑとの関係を２次関数以上の高次関数（曲線）で近似するようにしても良い。
【００６５】
筒内圧力センサ１５の出力特性にオフセット誤差が生じ、差圧ΔＰ（θQ ）にオフセット誤差が含まれたとしても、差圧上昇率ｄΔＰ（θQ ）／ｄｔを求めると、オフセット誤差をほぼキャンセルすることができるため、本実施形態（５）のように、差圧上昇率ｄΔＰ（θQ ）／ｄｔから燃料噴射量を算出すれば、筒内圧力センサ１５のオフセット誤差の影響を小さく抑えて燃料噴射量Ｑを精度良く算出することができる。
【００６６】
［実施形態（６）］
ところで、１サイクル内にエンジン出力発生のためのメイン噴射とそれに先立つパイロット噴射とを行う燃料噴射システムでは、上記実施形態（１）乃至（５）のいずれかの方法を用いてパイロット噴射の燃料噴射量を算出する場合に、メイン噴射燃料の着火後に前述した噴射量検出時期θQ を設定したのでは、メイン噴射燃料の燃焼による圧力上昇の影響を受けてしまい、パイロット噴射の燃料噴射量を精度良く算出することができない。
【００６７】
この対策として、本発明の実施形態（６）では、上記実施形態（１）乃至（５）のいずれかの方法を用いてパイロット噴射の燃料噴射量Ｑp を算出する際に、図１４に示すように、パイロット噴射量検出時期θQpをメイン噴射燃料の着火時期θfm又はそれ以前に設定し、メイン噴射燃料の燃焼による圧力上昇の影響を受けない差圧ΔＰ（θQp）に基づいてパイロット噴射の燃料噴射量Ｑp を算出するようにしている。
【００６８】
このようにすれば、メイン噴射燃料の燃焼による圧力上昇の影響を受けずにパイロット噴射の燃料噴射量Ｑp を精度良く算出することができる。
尚、メイン噴射量検出時期θQmは、上記実施形態（１）乃至（５）のいずれかの方法で設定すれば良い。
【００６９】
［実施形態（７）］
また、本発明の実施形態（７）では、１サイクル内に複数回（例えば３回）の燃料噴射を行うシステムにおいて、上記実施形態（１）乃至（５）のいずれかの方法を用いて燃料噴射量を算出する場合、図１５に示すように、各噴射量検出時期θQ を設定する。
【００７０】
具体的には、１回目の噴射量検出時期θQ1を２回目の噴射燃料の着火時期θf2又はそれ以前に設定し、２回目の噴射燃料の燃焼による圧力上昇の影響を受けない差圧ΔＰ（θQ1）に基づいて１回目の噴射の燃料噴射量Ｑ1 を算出する。
【００７１】
同様に、２回目の噴射量検出時期θQ2を３回目の噴射燃料の着火時期θf3又はそれ以前に設定し、３回目の噴射燃料の燃焼による圧力上昇の影響を受けない差圧ΔＰ（θQ2）に基づいて、１回目の噴射の一部と２回目の噴射とを合わせた燃料噴射量Ｑ2 を算出する。尚、３回目の噴射量検出時期θQ3は、上記実施形態（１）〜（５）のいずれかの方法で設定すれば良い。
【００７２】
一般に、１サイクル内に複数回の燃料噴射を行う場合は、Ｎ回目（Ｎは２以上の整数）の噴射燃料の着火時期又はそれ以前に、（Ｎ−１）回目の噴射量検出時期θQN-1を設定すれば良く、これにより、Ｎ回目の噴射燃料の燃焼による圧力上昇の影響を受けずに、（Ｎ−１）回目以前の噴射の燃料噴射量ＱN-1 を精度良く算出することができる。
【００７３】
尚、排気管に排ガス中のＮＯｘ（窒素酸化物）を浄化するＮＯｘ触媒（図示せず）を設け、メイン噴射後の膨張行程でポスト噴射を行ってＮＯｘ触媒に燃料（ＨＣ）を還元剤として供給するシステムでは、本実施形態（７）を適用することで、ポスト噴射燃料の燃焼量を検出することができ、この燃焼量を少なくするように、ポスト噴射時期を制御することで、ＮＯｘ浄化率を向上できる。
【００７４】
［実施形態（８）］
次に、本発明の実施形態（８）を図１６乃至図１９に基づいて説明する。
筒内圧力センサ１５は、温度等の使用条件によって出力特性にオフセット誤差が生じることがあり［図１６（ａ）参照］、これが燃料噴射量の検出精度を低下させる原因となる。このオフセット誤差は次のようにして求めることができる。
【００７５】
ここで、オフセット誤差をｂ、着火前のクランク角θ1 ，θ2 （但し、θ1 ＜θ2 ＜θ0 ）における検出圧力をそれぞれＰｓ（θ1 ），Ｐｓ（θ2 ）、真の筒内圧力をそれぞれＰｔ（θ1 ），Ｐｔ（θ2 ）とすると、次式のように表すことができる。
Ｐｓ（θ1 ）＝Ｐｔ（θ1 ）＋ｂ    ……（１）
Ｐｓ（θ2 ）＝Ｐｔ（θ2 ）＋ｂ    ……（２）
【００７６】
また、クランク角θ1 からθ2 までの筒内空気の状態変化を断熱変化と仮定すると、次式のように表すことができる。
0004026103.tif 000002
ここで、Ｖ（θ）は筒内容積、γは比熱比、ＫはＶ（θ）とγから決まる定数である。
【００７７】
上記（１）〜（３）式を解くと、オフセット誤差ｂは次式により算出することができる。
ｂ＝１／（Ｋ−１）×｛Ｋ×Ｐｓ（θ1 ）−Ｐｓ（θ2 ）｝    ……（４）
このオフセット誤差ｂを筒内圧力センサ１５の出力から減算すれば、筒内圧力センサ１５の出力のオフセット誤差を補正することができる。
【００７８】
また、筒内圧力センサ１５の出力特性は、使用条件、経時変化等により圧力変化に対するゲイン（出力感度）が変化することがあり（図１７参照）、これによっても燃料噴射量の検出精度が低下する。このゲイン誤差は、次のようにして求めることができる。
【００７９】
ここで、ゲイン誤差をａ、算出クランク角θ0 におけるモータリング圧力の標準値をＰｍｔ（θ0 ）、モータリング圧力の検出値をＰｍｓ（θ0 ）とすると、次式のように表すことができる。尚、モータリング圧力の標準値Ｐｍｔ（θ0 ）は、算出クランク角θ0 における標準的なモータリング圧力であり、予め設計データに基づいて設定したり、或は、初期状態（劣化前）の筒内圧力センサ１５で検出したモータリング圧力を用いるようにしても良い。
Ｐｍｓ（θ0 ）＝ａ×Ｐｍｔ（θ0 ）
【００８０】
従って、ゲイン誤差ａは次式により算出することができる。
ａ＝Ｐｍｓ（θ0 ）／Ｐｍｔ（θ0 ）      ……（５）
このゲイン誤差ａで筒内圧力センサ１５の出力を割り算することで、筒内圧力センサ１５の出力をゲイン誤差を補正することができる。尚、モータリング圧力の検出値Ｐｍｓ（θ0 ）は、エンジン回転数等のエンジン運転条件によって変化するため、標準値Ｐｍｔ（θ0 ）をエンジン運転条件毎に設定して、その時のエンジン運転条件に応じた標準値Ｐｍｔ（θ0 ）を選択するようにしても良い。
【００８１】
本実施形態（８）では、ＥＣＵ１９は、図１８及び図１９に示す燃料噴射量検出プログラムを実行することで、上記（４），（５）式を用いて筒内圧力センサ１５の出力特性のオフセット誤差及びゲイン誤差を補正するオフセット誤差補正手段及びゲイン誤差補正手段として機能すると共に、オフセット誤差及びゲイン誤差を補正した差圧を用いて燃料噴射量の算出を行う。
【００８２】
図１８及び図１９の燃料噴射量検出プログラムは、所定時間毎又は所定クランク角毎に実行される。本プログラムが起動されると、まず、ステップ３０１で、モータリング圧力Ｐｍ（θ）の波形を更新する。これにより、筒内圧力センサ１５の出力特性の経時変化に対応してモータリング圧力Ｐｍ（θ）が更新される。尚、モータリング圧力Ｐｍ（θ）の更新は、前記実施形態（１）と同じく、燃料噴射カット中に所定の運転条件が成立した時に、１サイクル分だけ筒内圧力センサ１５の出力を読み込み、ＥＣＵ１９の不揮発性メモリに記憶されたモータリング圧力Ｐｍ（θ）の記憶データを更新する。
【００８３】
この後、ステップ３０２で、ＥＣＵ１９の不揮発性メモリに記憶されたモータリング圧力Ｐｍ（θ1 ），Ｐｍ（θ2 ）を読み出し、モータリング圧力Ｐｍ（θ）のオフセット誤差ｂｍを次式により算出する。
ｂｍ＝１／（Ｋ−１）×｛Ｋ×Ｐｍ（θ1 ）−Ｐｍ（θ2 ）｝
【００８４】
次のステップ３０３で、このオフセット誤差ｂｍを用いてモータリング圧力Ｐｍ（θ）のオフセット誤差を次式により補正する。
Ｐｍ’（θ）＝Ｐｍ（θ）−ｂｍ
このようにして求められたオフセット誤差補正後のモータリング圧力Ｐｍ’（θ）は、本プログラムが終了するまでＥＣＵ１９のＲＡＭ等のメモリに一時的に記憶しておく。
【００８５】
この後、クランク角θがクランク角θ1 となった時に、検出圧力Ｐｋ（θ1 ）を検出し、その後、クランク角θがクランク角θ2 となった時に、検出圧力Ｐｋ（θ2 ）を検出し、検出圧力Ｐｋ（θ）のオフセット誤差ｂｋを次式により算出する（ステップ３０４〜３０８）。
ｂｋ＝１／（Ｋ−１）×｛Ｋ×Ｐｋ（θ1 ）−Ｐｋ（θ2 ）｝
【００８６】
この後、クランク角θが算出クランク角θ0 となった時に、図１９のステップ３０９からステップ３１０に進み、算出クランク角θ0 におけるオフセット誤差補正後のモータリング圧力Ｐｍ’（θ0 ）と、算出クランク角θ0 におけるモータリング圧力の標準値Ｐｍｔ（θ0 ）とをＥＣＵ１９の不揮発性メモリから読み出し、ゲイン誤差ａを次式により算出する。
ａ＝Ｐｍ’（θ0 ）／Ｐｍｔ（θ0 ）
【００８７】
次のステップ３１１で、オフセット誤差ｂｋを用いて検出圧力Ｐｋ（θ0 ）のオフセット誤差を次式により補正する。
Ｐｋ’（θ0 ）＝Ｐｋ（θ0 ）−ｂｋ
【００８８】
この後、ステップ３１２で、オフセット誤差補正後の検出圧力Ｐｋ’（θ0 ）とオフセット誤差補正後のモータリング圧力Ｐｍ’（θ0 ）との圧力比Ｈ’を次式により算出する。
Ｈ’＝Ｐｋ’（θ0 ）／Ｐｍ’（θ0 ）
この後、ステップ３１３に進み、噴射量検出時期θQ を算出する。算出方法は、前記実施形態（１）と同じく、着火時期θf から所定時間ｔ0 経過後に相当するクランク角θQ を算出する。
【００８９】
この後、クランク角θが噴射量検出時期θQ となった時に、ステップ３１４からステップ３１５に進み、オフセット誤差ｂｋを用いて検出圧力Ｐｋ（θQ ）のオフセット誤差を次式により補正する。
Ｐｋ’（θQ ）＝Ｐｋ（θQ ）−ｂｋ
【００９０】
次のステップ３１６で、オフセット誤差補正後の基準圧力Ｐｂ’（θQ ）を次式により算出する。
Ｐｂ’（θQ ）＝Ｈ’×Ｐｍ’（θQ ）
【００９１】
次のステップ３１７で、ゲイン誤差ａを用いて、オフセット誤差補正後の検出圧力Ｐｋ’（θQ ）と基準圧力Ｐｂ’（θQ ）との差圧ΔＰ’（θQ ）のゲイン誤差を次式により補正する。
ΔＰ’（θQ ）＝１／ａ×｛Ｐｋ’（θQ ）−Ｐｂ’（θQ ）｝
このようにして算出された差圧ΔＰ’（θQ ）は、オフセット誤差とゲイン誤差の両方が補正された値となる。
【００９２】
この後、ステップ３１８で、補正後の差圧ΔＰ’（θQ ）に比例定数αを乗算して燃料噴射量Ｑを求め、本プログラムを終了する。
Ｑ＝α×ΔＰ’（θQ ）
【００９３】
以上説明した実施形態（８）では、使用条件や経時変化によって筒内圧力センサ１５の出力にオフセット誤差やゲイン誤差が発生しても、そのオフセット誤差やゲイン誤差を求めて、検出圧力、モータリング圧力及び差圧を補正するので、筒内圧力センサ１５の出力のオフセット誤差やゲイン誤差を取り除いたデータを用いて燃料噴射量を算出することができ、より高精度な燃料噴射量検出が可能である。
【００９４】
尚、上記実施形態（８）では、一点のクランク角θ0 におけるモータリング圧力の標準値Ｐｍｔ（θ0 ）を記憶しておき、一点のクランク角θ0 でゲイン誤差ａを求めたが、モータリング圧力の標準値Ｐｍｔ（θ）の波形を記憶しておき、２点以上のクランク角でゲイン誤差を求め、それらの平均値をゲイン誤差として用いるようにしても良い。
【００９５】
また、上記実施形態（８）では、検出圧力とモータリング圧力の両方のオフセット誤差を補正した後、オフセット誤差補正後の検出圧力と基準圧力との差圧のゲイン誤差を補正するようにしたが、これとは反対に、ゲイン誤差を補正してから、オフセット誤差を補正するようにしても良く、また、筒内圧力センサ１５の出力を読み込む段階で、オフセット誤差とゲイン誤差の両方を補正するようにしても良く、要は、差圧を用いて燃料噴射量を算出するまでに、オフセット誤差とゲイン誤差を補正すれば良い。或は、オフセット誤差とゲイン誤差のいずれか一方のみを補正するようにしても良い。
【００９６】
［実施形態（９）］
筒内圧力センサ１５の出力特性にゲイン誤差が生じている場合には、差圧ΔＰや検出圧力Ｐｋにもそれぞれ同じゲイン誤差が含まれるので、差圧ΔＰを検出圧力Ｐｋで徐算すれば、ゲイン誤差をほぼキャンセルすることができる。
【００９７】
この点に着目して、本発明の実施形態（９）は、上記各実施形態（１）〜（７）において、差圧ΔＰの代わりに、差圧ΔＰを着火前のクランク角θZ における検出圧力Ｐｋ（θZ ）で徐算して無次元化した値ΔＰ／Ｐｋ（θZ ）を用いる。このようにすれば、ゲイン誤差の大きい筒内圧力センサ１５を用いた場合でも、ゲイン誤差をほぼキャンセルした無次元データに基づいて燃料噴射量を精度良く算出することができる。
【００９８】
尚、上記各実施形態では、モータリング圧力Ｐｍを所定時間Ｔ１経過毎に更新するようにしたが、所定走行距離経過毎に更新するようにしても良い。
また、筒内圧力センサ１５は、燃料噴射弁１２やグロープラグ（図示せず）と一体型のものを用いるようにしても良い。
【００９９】
また、上記各実施形態では、筒内圧力センサ１５が設けられた代表気筒について燃料噴射量の検出を行うようにしたが、筒内圧力センサ１５を全気筒に設けて、各気筒毎に燃料噴射量検出プログラムを実行して、各気筒毎に燃料噴射量を検出するようにしても良い。
【０１００】
また、上記各実施形態では、本発明をコモンレース式の噴射システムをもつ４気筒のディーゼルエンジンに適用したが、コモンレール式以外の噴射システムのディーゼルエンジンや４気筒以外のディーゼルエンジンに本発明を適用しても良い。
【図面の簡単な説明】
【図１】本発明の実施形態（１）におけるシステム全体の概略構成を示す図である。
【図２】検出圧力と基準圧力とモータリング圧力の波形を示す図である。
【図３】実施形態（１）の燃料噴射量の算出方法を説明するための図である。
【図４】差圧と燃料噴射量との関係を示す図である。
【図５】実施形態（１）の燃料噴射量検出プログラムの処理の流れを示すフローチャートである。
【図６】実施形態（１）と比較例について検出圧力と基準圧力の特性を説明する図で、（ａ）はエンジン低負荷時の図、（ｂ）はエンジン高負荷時の図である。
【図７】実施形態（２）の燃料噴射量の算出方法を説明するための図である。
【図８】差圧積算値と燃料噴射量との関係を示す図である。
【図９】実施形態（２）の燃料噴射量検出プログラムの処理の流れを示すフローチャートである。
【図１０】実施形態（３）の燃料噴射量の算出方法を説明するための図である。
【図１１】実施形態（４）の燃料噴射量の算出方法を説明するための図である。
【図１２】実施形態（５）の燃料噴射量の算出方法を説明するための図である。
【図１３】差圧上昇率と燃料噴射量との関係を示す図である。
【図１４】実施形態（６）のパイロット噴射の燃料噴射量の算出方法を説明するための図である。
【図１５】実施形態（７）の１サイクル内に複数回の燃料噴射を行うシステムで燃料噴射量を算出する方法を説明するための図である。
【図１６】（ａ）はオフセット誤差補正前の筒内圧力センサの出力特性を示す図、（ｂ）はオフセット誤差補正後の筒内圧力センサの出力特性を示す図である。
【図１７】筒内圧力センサの出力特性のゲイン誤差について説明するための図である。
【図１８】実施形態（８）の燃料噴射量検出プログラムの処理の流れを示すフローチャート（その１）である。
【図１９】実施形態（８）の燃料噴射量検出プログラムの処理の流れを示すフローチャート（その２）である。
【符号の説明】
１１…ディーゼルエンジン（内燃機関）、１２…燃料噴射弁、１５…筒内圧力センサ（筒内圧力検出手段）、１６…クランク角センサ、１９…ＥＣＵ（基準圧力算出手段，燃料噴射量算出手段，オフセット誤差補正手段，ゲイン誤差補正手段）。
【図１】
0004026103.tif 000003
【図２】
0004026103.tif 000004
【図３】
0004026103.tif 000005
【図４】
0004026103.tif 000006
【図５】
0004026103.tif 000007
【図６】
0004026103.tif 000008
【図７】
0004026103.tif 000009
【図８】
0004026103.tif 000010
【図９】
0004026103.tif 000011
【図１０】
0004026103.tif 000012
【図１１】
0004026103.tif 000013
【図１２】
0004026103.tif 000014
【図１３】
0004026103.tif 000015
【図１４】
0004026103.tif 000016
【図１５】
0004026103.tif 000017
【図１６】
0004026103.tif 000018
【図１７】
0004026103.tif 000019
【図１８】
0004026103.tif 000020
【図１９】
0004026103.tif 000021