(57)【要約】【課題】  クランク軸に設けられたローターの製造誤差による影響を排除した状態でクランク角を正確に検出し、内燃機関の燃焼状態を正確に推定する。【解決手段】  クランク角を検出するクランク角センサ３８およびローター３９と、クランク角に基づいて、各気筒の燃焼状態を表す燃焼状態量（推定図示トルクＴｉ）を取得する燃焼状態量取得手段と、推定図示トルクＴｉに応じて内燃機関の全気筒を複数の気筒群に分類し、各気筒群に対応する推定図示トルクＴｉの間に生じた定常的な偏差ΔＴを取得する偏差取得手段と、偏差ΔＴに基づいて推定図示トルクＴｉを修正する燃焼状態量修正手段と、を備える。【選択図】        図８
2005061371.tif 000002
【特許請求の範囲】
【請求項１】
クランク角を検出するクランク角検出手段と、
前記クランク角に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、
前記燃焼状態量に応じて内燃機関の全気筒を複数の気筒群に分類し、各気筒群に対応する前記燃焼状態量の間に生じた定常的な偏差を取得する偏差取得手段と、
前記偏差に基づいて前記燃焼状態量を修正する燃焼状態量修正手段と、
を備えたことを特徴とする内燃機関の燃焼状態推定装置。
【請求項２】
クランク角を検出するクランク角検出手段と、
前記クランク角に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、
特定の気筒の前記燃焼状態量と他の気筒の前記燃焼状態量との偏差を取得する偏差取得手段と、
前記偏差に基づいて前記特定の気筒の燃焼状態の異常判定を行う異常判定手段と、
前記特定の気筒の燃焼状態を回復させる燃焼回復手段と、
を備えたことを特徴とする内燃機関の燃焼状態推定装置。
【請求項３】
前記燃焼状態量取得手段は、各気筒で爆発行程が行われるクランク角の区間で前記燃焼状態量を取得することを特徴とする請求項１又は２記載の内燃機関の燃焼状態推定装置。
【請求項４】
前記燃焼回復手段は、前記特定の気筒の点火時期、燃料噴射量、又は燃料噴射時期を変更して燃焼状態を回復させることを特徴とする請求項２又は３記載の内燃機関の燃焼状態推定装置。
【請求項５】
前記燃焼回復手段により前記特定の気筒の燃焼状態を回復させることができない場合に警告を発する警告手段を更に備えたことを特徴とする請求項２〜４のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項６】
前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段を備え、
前記燃焼状態量取得手段は、前記燃焼状態量として前記クランク角加速度を取得することを特徴とする請求項１〜５のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項７】
所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、
前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段と、
前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、
前記燃焼状態量取得手段は、前記燃焼状態量として前記推定図示トルクを取得することを特徴とする請求項１〜５のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項８】
前記角加速度算出手段は、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間で前記クランク角加速度を算出することを特徴とする請求項６又は７記載の内燃機関の燃焼状態推定装置。
【請求項９】
クランク角を検出するクランク角検出手段と、
前記クランク角に基づいて、クランク軸がｎ回転（ｎは自然数）する区間でのクランク角加速度を算出する角加速度算出手段と、
前記クランク角加速度に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、
を備えたことを特徴とする内燃機関の燃焼状態推定装置。
【請求項１０】
所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、
前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、
前記燃焼状態量取得手段は、前記燃焼状態量として前記推定図示トルクを取得することを特徴とする請求項９記載の内燃機関の燃焼状態推定装置。
【請求項１１】
クランク角を検出するクランク角検出手段と、
前記クランク角に基づいて、各気筒の燃焼状態を表す第１の燃焼状態量を取得する第１の燃焼状態量取得手段と、
前記第１の燃焼状態量に応じて内燃機関の全気筒を複数の気筒群に分類し、各気筒群に対応する前記第１の燃焼状態量の間に定常的な第１の偏差が生じているか否かを判定する判定手段と、
筒内圧を取得する筒内圧取得手段と、
前記筒内圧に基づいて、前記筒内圧取得手段が設けられた特定の気筒の燃焼状態を表す第２の燃焼状態量を取得する第２の燃焼状態量取得手段と、
前記各気筒群のそれぞれに対応する前記第１の燃焼状態量と前記第２の燃焼状態量との間に生じた定常的な第２の偏差を取得する偏差取得手段と、
前記第１の偏差が所定値以上の場合に、前記第２の偏差に基づいて前記第１の燃焼状態量を修正する燃焼状態量修正手段と、
を備えたことを特徴とする内燃機関の燃焼状態推定装置。
【請求項１２】
クランク角を検出するクランク角検出手段と、
前記クランク角に基づいて、各気筒の燃焼状態を表す第１の燃焼状態量を取得する第１の燃焼状態量取得手段と、
筒内圧を取得する筒内圧取得手段と、
前記筒内圧に基づいて、前記筒内圧取得手段が設けられた気筒の燃焼状態を表す第２の燃焼状態量を取得する第２の燃焼状態量取得手段と、
前記第１の燃焼状態量と前記第２の燃焼状態量とに基づいて、前記クランク角検出手段において前記クランク角を検出する際に含まれるクランク角の誤差を算出する誤差算出手段と、
を備えたことを特徴とする内燃機関の燃焼状態推定装置。
【請求項１３】
前記クランク角検出手段は、クランク軸の回転と同期して回転するローターと、前記ローターのエッジを検出するセンサとを含み、
前記クランク角の誤差は、前記ローターのエッジの製造誤差に起因するものであることを特徴とする請求項１２記載の内燃機関の燃焼状態推定装置。
【請求項１４】
前記クランク角の誤差に基づいて前記第１の燃焼状態量を修正する燃焼状態量修正手段を備えたことを特徴とする請求項１２又は１３記載の内燃機関の燃焼状態推定装置。
【請求項１５】
前記筒内圧取得手段を、連続して爆発行程が行われる全気筒数／２個の気筒に設けたことを特徴とする請求項１２〜１４のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項１６】
前記第１の燃焼状態量取得手段は、各気筒で爆発行程が行われるクランク角の区間で前記第１の燃焼状態量を取得することを特徴とする請求項１１〜１５のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項１７】
前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段を備え、
前記第１の燃焼状態量取得手段は、前記第１の燃焼状態量として前記クランク角加速度を取得することを特徴とする請求項１１〜１６のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項１８】
所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、
前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段と、
前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、
前記第１の燃焼状態量取得手段は、前記第１の燃焼状態量として前記推定図示トルクを取得することを特徴とする請求項１１〜１６のいずれかに記載の内燃機関の燃焼状態推定装置。
【請求項１９】
前記角加速度算出手段は、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間で前記クランク角加速度を算出することを特徴とする請求項１７又は１８記載の内燃機関の燃焼状態推定装置。
【請求項２０】
前記筒内圧に基づいて、前記筒内圧取得手段が設けられた気筒の実測図示トルクを算出する実測図示トルク算出手段を備え、
前記第２の燃焼状態量取得手段は、前記第２の燃焼状態量として前記実測図示トルクを取得することを特徴とする請求項１１〜１９のいずれかに記載の内燃機関の燃焼状態推定装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃焼状態推定装置に関し、特に、クランクの回転に関わるパラメータから燃焼状態を推定する装置に適用して好適である。
【背景技術】
【０００２】
従来、クランク軸に配設されたクランク角センサの出力に基づいて、クランク軸の角加速度を求め、燃焼状態を制御する装置が知られている。特開平１０−１１５２４８号公報には、クランク角センサによって検出されるローター（シグナルプレート）の加工誤差に起因して、角加速度の検出値にバラツキが生じてしまうことを抑えるため、複数のセンサを各気筒の上死点のクランク角位相差と等しい間隔で配設し、回転に同期して複数のセンサを適宜選択して使用することで、ローターの同じ部分を計測する方法が開示されている。
【０００３】
【特許文献１】特開平１０−１１５２４８号公報
【特許文献２】特開平９−３０３２４３号公報
【特許文献３】特開平９−２０９８１４号公報
【特許文献４】特開平１１−３２４７７１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、特開平１０−１１５２４８号公報に記載された方法では、ローターの加工誤差を排除するため、複数のセンサを設ける必要がある。そして、複数のセンサの取り付け位置には、相対的な配置誤差が含まれることになる。このため、取り付け位置の誤差に応じてクランク角の検出値に誤差が含まれてしまい、クランク角加速度を正確に求めることは困難である。
【０００５】
更に、複数のセンサを設けた場合、個々のセンサの特性が異なるため、複数のセンサの特性の同一性を保証することはできない。従って、センサの検出値にはセンサ特性に応じた誤差が含まれることとなる。また、電磁ピックアップ式（MPU）のセンサでは、偏心等により各センサにおけるエアギャップが相違すると、個々のセンサの検出値が異なることになる。これらの理由から、複数のクランク角センサのそれぞれの検出値に基づいてクランク角加速度を正確に求めることは困難である。
【０００６】
この発明は、上述のような問題を解決するためになされたものであり、ローターの誤差による影響を排除した状態でクランク角を正確に検出し、内燃機関の燃焼状態を正確に推定することを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明は、上記の目的を達成するため、クランク角を検出するクランク角検出手段と、前記クランク角に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、前記燃焼状態量に応じて内燃機関の全気筒を複数の気筒群に分類し、各気筒群に対応する前記燃焼状態量の間に生じた定常的な偏差を取得する偏差取得手段と、前記偏差に基づいて前記燃焼状態量を修正する燃焼状態量修正手段と、を備えたことを特徴とする。
【０００８】
第２の発明は、上記の目的を達成するため、クランク角を検出するクランク角検出手段と、前記クランク角に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、特定の気筒の前記燃焼状態量と他の気筒の前記燃焼状態量との偏差を取得する偏差取得手段と、前記偏差に基づいて前記特定の気筒の燃焼状態の異常判定を行う異常判定手段と、前記特定の気筒の燃焼状態を回復させる燃焼回復手段と、を備えたことを特徴とする。
【０００９】
第３の発明は、第１又は第２の発明において、前記燃焼状態量取得手段は、各気筒で爆発行程が行われるクランク角の区間で前記燃焼状態量を取得することを特徴とする。
【００１０】
第４の発明は、第２又は第３の発明において、前記燃焼回復手段は、前記特定の気筒の点火時期、燃料噴射量、又は燃料噴射時期を変更して燃焼状態を回復させることを特徴とする。
【００１１】
第５の発明は、第２〜第４の発明のいずれかにおいて、前記燃焼回復手段により前記特定の気筒の燃焼状態を回復させることができない場合に警告を発する警告手段を更に備えたことを特徴とする。
【００１２】
第６の発明は、第１〜第５の発明のいずれかにおいて、前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段を備え、前記燃焼状態量取得手段は、前記燃焼状態量として前記クランク角加速度を取得することを特徴とする。
【００１３】
第７の発明は、第１〜第５の発明のいずれかにおいて、所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段と、前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、前記燃焼状態量取得手段は、前記燃焼状態量として前記推定図示トルクを取得することを特徴とする。
【００１４】
第８の発明は、第６又は第７の発明において、前記角加速度算出手段は、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間で前記クランク角加速度を算出することを特徴とする。
【００１５】
第９の発明は、上記の目的を達成するため、クランク角を検出するクランク角検出手段と、前記クランク角に基づいて、クランク軸がｎ回転（ｎは自然数）する区間でのクランク角加速度を算出する角加速度算出手段と、前記クランク角加速度に基づいて、各気筒の燃焼状態を表す燃焼状態量を取得する燃焼状態量取得手段と、を備えたことを特徴とする。
【００１６】
第１０の発明は、第９の発明において、所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、前記燃焼状態量取得手段は、前記燃焼状態量として前記推定図示トルクを取得することを特徴とする。
【００１７】
第１１の発明は、上記の目的を達成するため、クランク角を検出するクランク角検出手段と、前記クランク角に基づいて、各気筒の燃焼状態を表す第１の燃焼状態量を取得する第１の燃焼状態量取得手段と、前記第１の燃焼状態量に応じて内燃機関の全気筒を複数の気筒群に分類し、各気筒群に対応する前記第１の燃焼状態量の間に定常的な第１の偏差が生じているか否かを判定する判定手段と、筒内圧を取得する筒内圧取得手段と、前記筒内圧に基づいて、前記筒内圧取得手段が設けられた特定の気筒の燃焼状態を表す第２の燃焼状態量を取得する第２の燃焼状態量取得手段と、前記各気筒群のそれぞれに対応する前記第１の燃焼状態量と前記第２の燃焼状態量との間に生じた定常的な第２の偏差を取得する偏差取得手段と、前記第１の偏差が所定値以上の場合に、前記第２の偏差に基づいて前記第１の燃焼状態量を修正する燃焼状態量修正手段と、を備えたことを特徴とする。
【００１８】
第１２の発明は、上記の目的を達成するため、クランク角を検出するクランク角検出手段と、前記クランク角に基づいて、各気筒の燃焼状態を表す第１の燃焼状態量を取得する第１の燃焼状態量取得手段と、筒内圧を取得する筒内圧取得手段と、前記筒内圧に基づいて、前記筒内圧取得手段が設けられた気筒の燃焼状態を表す第２の燃焼状態量を取得する第２の燃焼状態量取得手段と、前記第１の燃焼状態量と前記第２の燃焼状態量とに基づいて、前記クランク角検出手段において前記クランク角を検出する際に含まれるクランク角の誤差を算出する誤差算出手段と、を備えたことを特徴とする。
【００１９】
第１３の発明は、第１２の発明において、前記クランク角検出手段は、クランク軸の回転と同期して回転するローターと、前記ローターのエッジを検出するセンサとを含み、
前記クランク角の誤差は、前記ローターのエッジの製造誤差に起因するものであることを特徴とする。
【００２０】
第１４の発明は、第１２又は第１３の発明において、前記クランク角の誤差に基づいて前記第１の燃焼状態量を修正する燃焼状態量修正手段を備えたことを特徴とする。
【００２１】
第１５の発明は、第１２〜第１４の発明のいずれかにおいて、前記筒内圧取得手段を、連続して爆発行程が行われる全気筒数／２個の気筒に設けたことを特徴とする。
【００２２】
第１６の発明は、第１１〜第１５の発明のいずれかにおいて、前記第１の燃焼状態量取得手段は、各気筒で爆発行程が行われるクランク角の区間で前記第１の燃焼状態量を取得することを特徴とする。
【００２３】
第１７の発明は、第１１〜第１６の発明のいずれかにおいて、前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段を備え、前記第１の燃焼状態量取得手段は、前記第１の燃焼状態量として前記クランク角加速度を取得することを特徴とする。
【００２４】
第１８の発明は、第１１〜第１６の発明のいずれかにおいて、所定パラメータと機関のフリクショントルクとの関係を定めた標準フリクション特性を記憶した記憶手段と、前記クランク角に基づいてクランク角加速度を算出する角加速度算出手段と、前記フリクショントルクと前記クランク角加速度とに基づいて推定図示トルクを算出する推定図示トルク算出手段と、を備え、前記第１の燃焼状態量取得手段は、前記第１の燃焼状態量として前記推定図示トルクを取得することを特徴とする。
【００２５】
第１９の発明は、第１７又は第１８の発明において、前記角加速度算出手段は、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間で前記クランク角加速度を算出することを特徴とする。
【００２６】
第２０の発明は、第１１〜第１９の発明のいずれかにおいて、前記筒内圧に基づいて、前記筒内圧取得手段が設けられた気筒の実測図示トルクを算出する実測図示トルク算出手段を備え、前記第２の燃焼状態量取得手段は、前記第２の燃焼状態量として前記実測図示トルクを取得することを特徴とする。
【発明の効果】
【００２７】
第１の発明によれば、燃焼状態量に応じて全気筒を複数の気筒群に分類し、各気筒群に対応する燃焼状態量の間に生じた定常的な偏差を取得するため、クランク角を検出する際に含まれるクランク角の誤差に起因した偏差を求めることが可能となる。従って、偏差に基づいて燃焼状態量を修正することで、燃焼状態量を高い精度で求めることが可能となり、修正した燃焼状態量に基づいて燃焼状態を正確に推定することが可能となる。これにより、クランク軸と同期して回転するクランク角を検出するためのローターに製造誤差が生じていた場合であっても、燃焼状態を高精度に推定することが可能となる。
【００２８】
第２の発明によれば、特定の気筒の燃焼状態量と他の気筒の燃焼状態量との偏差に基づいて、燃焼状態の異常判定を行うことが可能となる。そして、異常判定された特定の気筒の燃焼状態を回復させることが可能となる。
【００２９】
第３の発明によれば、各気筒で爆発行程が行われるクランク角の区間で燃焼状態量を取得するため、各気筒の爆発行程の燃焼状態に対応した燃焼状態量を正確に取得することが可能となる。
【００３０】
第４の発明によれば、異常判定された特定の気筒の点火時期、燃料噴射量、又は燃料噴射時期を変更することで、燃焼状態を回復させることが可能となる。
【００３１】
第５の発明によれば、特定の気筒の燃焼状態を回復させることができない場合に警告を発することで、ドライバーにおいて運転を停止する等の適切な対処が可能となる。
【００３２】
第６の発明によれば、燃焼状態量としてクランク角加速度を取得することで、クランク角加速度に基づいて燃焼状態を推定することが可能となる。
【００３３】
第７の発明によれば、燃焼状態量として推定図示トルクを取得することで、推定図示トルクに基づいて燃焼状態を推定することが可能となる。
【００３４】
第８の発明によれば、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間でクランク角加速度を算出することで、往復慣性質量による慣性トルクがクランク角加速度、推定図示トルクに与える影響を排除することができる。従って、クランク角加速度、推定図示トルクに基づいて燃焼状態を正確に推定することが可能となる。
【００３５】
第９の発明によれば、クランク軸がｎ回転（ｎは自然数）する区間でクランク角加速度を算出するため、クランク軸と同期して回転するローターの同一のエッジがこの区間の両端で検出されることとなる。従って、ローターのエッジに生じた製造誤差が燃焼状態量に与える影響を排除することができ、燃焼状態量を高い精度で求めることが可能となる。
【００３６】
第１０の発明によれば、燃焼状態量として推定図示トルクを取得することで、推定図示トルクに基づいて燃焼状態を推定することが可能となる。
【００３７】
第１１の発明によれば、筒内圧に基づいて特定の気筒の燃焼状態を表す第２の燃焼状態量を取得することができる。そして、クランク角を検出する際にクランク角の誤差が含まれたとしても、筒内圧から取得した第２の燃焼状態量は誤差の影響を受けないため、第２の燃焼状態量を基準として第１の燃焼状態量を修正することで、第１の燃焼状態量を高い精度で求めることが可能となる。これにより、クランク軸と同期して回転するクランク角を検出するためのローターに製造誤差が生じていた場合であっても、燃焼状態を高精度に推定することが可能となる。
【００３８】
第１２の発明によれば、筒内圧取得手段が設けられた気筒の燃焼状態を表す第２の燃焼状態量を取得することができる。そして、クランク角を検出する際にクランク角の誤差が含まれたとしても、筒内圧から取得した第２の燃焼状態量は誤差の影響を受けないため、クランク角に基づいて取得した第１の燃焼状態量と筒内圧に基づいて算出した第２の燃焼状態量とからクランク角の誤差を算出することが可能となる。これにより、クランク軸と同期して回転するクランク角を検出するためのローターに製造誤差が生じていた場合であっても、燃焼状態を高精度に推定することが可能となる。
【００３９】
第１３の発明によれば、クランク角検出手段に含まれるローターのエッジの製造誤差に起因したクランク角の誤差を算出することが可能となる。
【００４０】
第１４の発明によれば、クランク角の誤差に基づいて第１の燃焼状態量を修正することで、第１の燃焼状態量を高い精度で求めることが可能となる。
【００４１】
第１５の発明によれば、クランク軸が１回転する間には全気筒数／２回の爆発行程が行われるため、筒内圧取得手段を連続して爆発行程が行われる全気筒数／２個の気筒に設けたことにより、全気筒数／２回の第２の燃焼状態量を算出することができる。そして、算出した第２の燃焼状態量と、第２の燃焼状態量を算出した爆発行程に対応する第１の燃焼状態量とに基づいて、クランク軸が１回転する間に行われた全爆発行程のそれぞれの区間の両端におけるクランク角の誤差を算出することが可能となる。
【００４２】
第１６の発明によれば、各気筒で爆発行程が行われるクランク角の区間で第１の燃焼状態量を取得するため、各気筒の爆発行程の燃焼状態に対応した第１の燃焼状態量を正確に取得することが可能となる。
【００４３】
第１７の発明によれば、第１の燃焼状態量としてクランク角加速度を取得することで、クランク角加速度に基づいて燃焼状態を推定することが可能となる。
【００４４】
第１８の発明によれば、第１の燃焼状態量として推定図示トルクを取得することで、推定図示トルクに基づいて燃焼状態を推定することが可能となる。
【００４５】
第１９の発明によれば、往復慣性質量による慣性トルクの平均値がほぼ０となるクランク角の区間でクランク角加速度を算出することで、往復慣性質量による慣性トルクがクランク角加速度、推定図示トルクに与える影響を排除することができる。従って、クランク角加速度、推定図示トルクに基づいて燃焼状態を正確に推定することが可能となる。
【００４６】
第２０の発明によれば、第２の燃焼状態量として実測図示トルクを取得することができる。そして、筒内圧から取得した実測図示トルクはクランク角の誤差の影響を受けないため、第１の燃焼状態量にクランク角の誤差の要因が含まれる場合であっても、実測図示トルクに基づいて第１の燃焼状態量を修正することができ、また第１の燃焼状態量と実測図示トルクに基づいてクランク角の誤差を算出することが可能となる。
【発明を実施するための最良の形態】
【００４７】
以下、図面に基づいてこの発明のいくつかの実施の形態について説明する。尚、各図において共通する要素には、同一の符号を付して重複する説明を省略する。なお、以下の実施の形態によりこの発明が限定されるものではない。
【００４８】
実施の形態１．
図１は、本発明の実施の形態１〜５にかかる内燃機関の燃焼状態推定装置及びその周辺の構造を説明するための図である。以下の各実施形態では４気筒の内燃機関を例示する。内燃機関１０には吸気通路１２および排気通路１４が連通している。吸気通路１２は、上流側の端部にエアフィルタ１６を備えている。エアフィルタ１６には、吸気温ＴＨＡ（すなわち外気温）を検出する吸気温センサ１８が組みつけられている。また、排気通路１４には排気浄化触媒３２が配置されている。
【００４９】
エアフィルタ１６の下流には、エアフロメータ２０が配置されている。エアフロメータ２０の下流には、スロットルバルブ２２が設けられている。スロットルバルブ２２の近傍には、スロットル開度ＴＡを検出するスロットルセンサ２４と、スロットルバルブ２２が全閉となることでオンとなるアイドルスイッチ２６とが配置されている。
【００５０】
スロットルバルブ２２の下流には、サージタンク２８が設けられている。サージタンク２８の近傍には、吸気通路１２の圧力（吸気管圧力）を検出する吸気管圧センサ２９が設けられている。また、サージタンク２８の更に下流には、内燃機関１０の吸気ポートに燃料を噴射するための燃料噴射弁３０が配置されている。
【００５１】
内燃機関１０の各気筒はピストン３４を備えている。ピストン３４には、その往復運動によって回転駆動されるクランク軸３６が連結されている。車両駆動系と補機類（エアコンのコンプレッサ、オルタネータ、トルクコンバータ、パワーステアリングのポンプ等）は、このクランク軸３６の回転トルクによって駆動される。クランク軸３６の近傍には、クランク軸３６の回転角を検出するためのクランク角センサ３８が取り付けられている。また、内燃機関１０のシリンダブロックには、冷却水温を検出する水温センサ４２が取り付けられている。また、内燃機関１０が有する４気筒のうちの所定の気筒には、筒内の圧力（筒内圧）を検出するための筒内圧センサ４４が設けられている。
【００５２】
図１に示すように、本実施形態の燃焼状態推定装置はＥＣＵ（Electronic Control Unit）４０を備えている。ＥＣＵ４０には、上述した各種センサおよび燃料噴射弁３０などが接続されている。
【００５３】
次に、図１のシステムにより内燃機関１０の図示トルクＴｉを推定する方法を具体的に説明する。最初に、図示トルクＴｉの推定に用いる数式について説明する。本実施形態では、以下の（１）式、（２）式を用いて燃焼状態の推定を行う。
【００５４】
【数１】
2005061371.tif 000003
【００５５】
（１）式、（２）式において、図示トルクＴｉ（推定図示トルクＴｉ）は、エンジンの燃焼によってクランク軸３６に発生するトルクである。ここで、（２）式の右辺は図示トルクＴｉを発生させるトルクを示しており、（１）式の右辺は図示トルクＴｉを消費するトルクを示している。
【００５６】
（１）式の右辺において、Ｊは混合気の燃焼等によって駆動される駆動部材の慣性モーメント、ｄω／ｄｔはクランク軸３６の角加速度、Ｔｆは駆動部のフリクショントルク、Ｔｌは走行時に路面から受ける負荷トルク、を示している。ここで、Ｊ×（ｄω／ｄｔ）はクランク軸３６の角加速度に起因する動的な損失トルク（＝Ｔａｃ）である。フリクショントルクＴｆは、ピストン３４とシリンダ内壁の摩擦など各嵌合部の機械的な摩擦によるトルクであって、補機類の機械的な摩擦によるトルクを含むものである。負荷トルクＴｌは、走行時の路面状態などの外乱によるトルクである。本実施形態では、シフトギヤをニュートラルの状態にして燃焼状態を推定するため、以下の説明ではＴｌ＝０とする。
【００５７】
また、（２）式の右辺において、Ｔｇａｓはシリンダ内の筒内ガス圧によるトルク、Ｔｉｎｅｒｔｉａはピストン３４などの往復慣性質量による慣性トルクを示している。筒内ガス圧によるトルクＴｇａｓは、シリンダ内の混合気の燃焼によって発生するトルクである。燃焼状態を正確に推定するためには、筒内ガス圧によるトルクＴｇａｓを求める必要がある。
【００５８】
（１）式に示されるように、図示トルクＴｉは、角加速度に起因する動的な損失トルクＪ×（ｄω／ｄｔ）、フリクショントルクＴｆ、及び負荷トルクＴｌの和として求めることができる。しかし、（２）式に示されるように、図示トルクＴｉと筒内ガス圧によるトルクＴｇａｓは一致しないため、図示トルクＴｉから燃焼状態を正確に推定することはできない。
【００５９】
図２は、（２）式の各トルクとクランク角との関係を示す特性図である。図２において、縦軸は各トルクの大きさを、横軸はクランク角を示しており、図２中の一点鎖線は図示トルクＴｉを、実線は筒内ガス圧によるトルクＴｇａｓを、破線は往復慣性質量による慣性トルクＴｉｎｅｒｔｉａをそれぞれ示している。ここで、図２は４気筒の場合の特性を示したものであり、図２中のＴＤＣ、ＢＤＣは、４気筒のうちの１気筒のピストン３４が上死点（ＴＤＣ）、または下死点（ＢＤＣ）の位置にある場合のクランク角（０°，１８０°）を示している。内燃機関１０が４気筒の場合、クランク軸３６が１８０°回転する度に１気筒づつ爆発（膨張）行程が行われ、１回の爆発毎に図２中のＴＤＣからＢＤＣまでのトルク特性が繰り返し現れる。
【００６０】
図２中の実線に示すように、筒内ガス圧によるトルクＴｇａｓは、ＴＤＣからＢＤＣの間で急激に増加し、減少する。ここで、Ｔｇａｓの急激な増加は、爆発工程で燃焼室内の混合気が爆発するためである。爆発後、Ｔｇａｓは減少し、他の圧縮行程あるいは排気行程にある気筒の影響により、負の値を取る。そのクランク角がＢＤＣに達するとシリンダの容積変化が０となり、これによってＴｇａｓは０の値を取る。
【００６１】
一方、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａは、筒内ガス圧によるトルクＴｇａｓとはほとんどあるいは無視できるほど無関係に、ピストン３４など往復運動する部材の慣性質量によって発生する慣性トルクである。往復運動する部材は加減速を繰り返しており、Ｔｉｎｅｒｔｉａはクランクが回転していれば角速度一定の場合であっても常に発生する。図２中の破線に示すように、クランク角がＴＤＣの位置では往復運動する部材は停止しており、Ｔｉｎｅｒｔｉａ＝０である。クランク角がＴＤＣからＢＤＣに向かって進むと、往復運動する部材が停止状態から運動し始める。この際、これらの部材の慣性によってＴｉｎｅｒｔｉａは負の方向に増加する。クランク角が９０°近傍に達した時点では、往復運動する部材が所定の速度で運動しているため、これらの部材の慣性によってクランク軸３６が回転する。従って、ＴｉｎｅｒｔｉａはＴＤＣとＢＤＣの間で負の値から正の値へ変わる。その後、クランク角がＢＤＣまで到達すると往復運動する部材は停止し、Ｔｉｎｅｒｔｉａ＝０となる。
【００６２】
（２）式に示されるように、図示トルクＴｉは筒内ガス圧によるトルクＴｇａｓと往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの和である。このため、図２の一点鎖線に示されるように、ＴＤＣとＢＤＣの間では、図示トルクＴｉは混合気の爆発によるＴｇａｓの増加によって増加し、一旦減少した後、Ｔｉｎｅｒｔｉａによって再び増加するという複雑な挙動を示している。
【００６３】
しかし、ＴＤＣからＢＤＣまでのクランク角１８０°の区間に着目すると、この区間での往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値は０となる。これは、往復慣性質量を有する部材が、クランク角０°〜９０°近傍とクランク角９０°近傍〜１８０°で反対の動きをするためである。従って、（１）式および（２）式の各トルクをＴＤＣからＢＤＣまでの平均値として算出すると、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａ＝０として計算することができる。これにより、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａが図示トルクＴｉに与える影響を排除することができ、正確に図示トルクＴｉを推定することが可能となる。従って、図示トルクＴｉに基づいて正確な燃焼状態を簡単に推定することが可能となる。
【００６４】
そして、ＴＤＣからＢＤＣまでの区間において各トルクの平均値を求めると、Ｔｉｎｅｒｔｉａの平均値が０となるため、（２）式から、図示トルクＴｉの平均値と筒内ガス圧によるトルクＴｇａｓの平均値とが等しくなる。このため、図示トルクＴｉに基づいて正確に燃焼状態を推定することができる。
【００６５】
更に、ＴＤＣからＢＤＣまでの区間でクランク軸３６の角加速度の平均値を求めると、この区間でのＴｉｎｅｒｔｉａの平均値は０であるため、往復慣性質量が角加速度に与える影響を排除して角加速度を求めることができる。従って、燃焼状態のみに起因する角加速度を算出することができ、角加速度に基づいて正確に燃焼状態を推定することが可能となる。
【００６６】
次に、（１）式の右辺の各トルクを算出して、左辺の図示トルクＴｉを求める方法を説明する。最初に、角加速度に起因する動的な損失トルクＴａｃ＝Ｊ×（ｄω／ｄｔ）の算出方法を説明する。図３は、クランク軸３６の角加速度を求める方法を示す模式図である。図３に示すように、本実施形態では、クランク軸３６の回転の１０°毎にクランク角センサ３８からクランク角信号が検出される。
【００６７】
本実施形態の燃焼状態推定装置は、角加速度に起因する動的な損失トルクＴａｃを、ＴＤＣからＢＤＣまでのクランク角１８０°の区間の平均値として算出する。このために、本実施形態の装置は、ＴＤＣとＢＤＣの２ヶ所のクランク角位置で角速度ω０（ｋ），ω０（ｋ＋１）をそれぞれ求め、同時にクランク軸３６がＴＤＣからＢＤＣまで回転する時間Δｔ（ｋ）を求める。
【００６８】
角速度ω０（ｋ）を求める際には、例えば図３に示すように、クランク角がＴＤＣの位置から前後１０°づつ回転している間の時間Δｔ０（ｋ），Δｔ１０（ｋ）をクランク角センサ３８から検出する。そして、時間Δｔ０（ｋ）＋Δｔ１０（ｋ）の間にクランク軸３６が２０°回転しているため、ω０（ｋ）＝（２０／（Δｔ０（ｋ）＋Δｔ１０（ｋ）））×（π／１８０）を演算することによってω０（ｋ）［ｒａｄ／ｓ］を算出できる。同様に、ω０（ｋ＋１）を算出する際は、クランク角がＢＤＣの位置から前後１０°づつ回転している間の時間Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）を検出する。そして、ω０（ｋ＋１）＝（２０／（Δｔ０（ｋ＋１）＋Δｔ１０（ｋ＋１）））×（π／１８０）を演算することによってω０（ｋ＋１）［ｒａｄ／ｓ］を算出できる。
【００６９】
角速度ω０（ｋ），ω０（ｋ＋１）を求めた後は、（ω０（ｋ＋１）−ω０（ｋ））／Δｔ（ｋ）を演算し、ＴＤＣからＢＤＣまでクランク軸３６が回転する間の角加速度の平均値を算出する。
【００７０】
そして、角加速度の平均値を求めた後は、（１）式の右辺に従って、角加速度の平均値と慣性モーメントＪを乗算する。これにより、クランク軸３６がＴＤＣからＢＤＣまで回転する間の動的な損失トルクＪ×（ｄω／ｄｔ）の平均値を算出できる。なお、駆動部の慣性モーメントＪは、駆動部品の慣性質量から予め求めておく。
【００７１】
なお、上述した例では、ＴＤＣとＢＤＣにおける角速度から角加速度による動的な損失トルクＴａｃを求めたが、ＴＤＣからＢＤＣまでの区間を更に複数の区間に分割し、分割した各区間毎に角加速度による動的な損失トルクを求め、これらの損失トルクを平均して１８０°毎の損失トルクＴａｃを求めても良い。例えば、ＴＤＣからＢＤＣまでのクランク角を３０°毎に６等分し、３０°毎に動的な損失トルクを求めて平均化処理することで、ＴＤＣ−ＢＤＣ間の動的な損失トルクＴａｃの平均値を求めても良い。これにより、クランク角速度の検出箇所をより多くすることができ、クランク角検出誤差を最小限に抑えることが可能となる。
【００７２】
次にフリクショントルクＴｆの算出方法を説明する。図４はフリクショントルクＴｆと内燃機関１０の機関回転数（Ｎｅ）、冷却水温（ｔｈｗ）との関係を表したマップである。図４において、フリクショントルクＴｆ、機関回転数（Ｎｅ）、冷却水温（ｔｈｗ）は、ＴＤＣからＢＤＣまでクランク軸３６が１８０°回転した場合の平均値である。また、冷却水温は、ｔｈｗ１→ｔｈｗ２→ｔｈｗ３の順に高温になる。図４に示すように、フリクショントルクＴｆは機関回転数（Ｎｅ）が増えると増加し、また冷却水温（ｔｈｗ）が低くなると増加する傾向にある。図４のマップは、機関回転数（Ｎｅ）、冷却水温（ｔｈｗ）をパラメータとして可変し、ＴＤＣからＢＤＣまでクランク軸３６を回転させた際に発生するフリクショントルクＴｆを測定し、その平均値を算出することで予め作成しておく。そして、燃焼状態を推定する際には、ＴＤＣからＢＤＣまでの区間における冷却水温の平均値、機関回転数の平均値を図４のマップに当てはめて、フリクショントルクＴｆの平均値を求める。この際、冷却水温は水温センサ４２から、機関回転数はクランク角センサ３８からそれぞれ検出する。
【００７３】
クランク角の変動に伴うフリクショントルクＴｆの挙動は非常に複雑であり、バラツキも大きい。しかし、フリクショントルクＴｆの挙動は主としてピストン３４の速度に依存しているため、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間毎のフリクショントルクＴｆの平均値はほぼ一定している。従って、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となるクランク角１８０°の区間（ＴＤＣ→ＢＤＣ）毎にフリクショントルクＴｆの平均値を求めることで、複雑な瞬時挙動を示すフリクショントルクＴｆを精度良く求めることができる。また、フリクショントルクＴｆをこの区間毎の平均値とすることで、図４に示すマップを正確に作成することができる。
【００７４】
また、上述したようにフリクショントルクＴｆには補機類の摩擦によるトルクが含まれる。ここで、補機類の摩擦によるトルクは、補機類が動作しているか否かによって値が異なる。例えば、補機の１つであるエアコンのコンプレッサには、エンジンの回転がベルト等によって伝達されており、エアコンが実際に動作していない状態であっても摩擦によるトルクが発生している。
【００７５】
一方、補機類を動作させた場合、例えばエアコンのスイッチをオン（ＯＮ）した場合は、エアコンを動作させていない状態に比べてコンプレッサで消費されるトルクは大きくなる。このため、補機類の摩擦によるトルクが大きくなり、フリクショントルクＴｆの値も増大する。従って、フリクショントルクＴｆを正確に求めるためには、補機類の動作状態を検出し、補機類のスイッチがオン（ＯＮ）している場合には、図４のマップから求めたフリクショントルクＴｆの値を補正することが望ましい。
【００７６】
なお、極冷間始動時などにおいては、実際にフリクショントルクＴｆが発生している部位の温度と冷却水温との差を考慮して、フリクショントルクＴｆを補正することがより好適である。この場合、冷間始動後の機関始動時間、筒内流入燃料量等を考慮して補正を行うことが望ましい。
【００７７】
角加速度に起因する動的な損失トルクＴａｃとフリクショントルクＴｆを求めた後、ＴａｃとＴｆを加算することで（１）式の左辺の図示トルクＴｉを算出する。ここで算出された図示トルクＴｉは、ＴＤＣからＢＤＣまでのクランク角１８０°の区間の平均値として算出される。従って、この区間ではＴｉｎｅｒｔｉａの平均値が０であるため、（２）式からＴｉ＝Ｔｇａｓとなる。
【００７８】
図５は、（１）式から算出した図示トルクＴｉ（ｋ）（＝Ｔｇａｓ（ｋ））と各気筒の各行程との関係を示す模式図である。図５に示すように、内燃機関１０が＃１〜＃４の４気筒で構成される場合、クランク軸３６の１８０°回転毎に＃１、＃３、＃４、＃２の順で爆発行程が行われる。爆発行程毎、すなわちクランク角１８０°毎に図示トルクＴｉを順次算出していくと、図５に示すように、図示トルクＴｉ（ｋ）は＃１の気筒の爆発に対応する。同様に、図示トルクＴｉ（ｋ−２）は＃４の気筒の爆発に、図示トルクＴｉ（ｋ−１）は＃２の気筒の爆発に、図示トルクＴｉ（ｋ＋１）は＃３の気筒の爆発に、図示トルクＴｉ（ｋ＋２）は＃４の気筒の爆発に、それぞれ対応する。
【００７９】
ここで、図示トルクＴｉ（ｋ）が発生した行程に着目すると、＃１は爆発行程、＃３は圧縮行程、＃４は吸気行程、＃２は排気行程となっている。ここで、圧縮、吸気、排気行程のトルクは、爆発行程で発生する筒内ガス圧によるトルクに比べて非常に小さいため、図示トルクＴｉは＃１の爆発により発生した筒内ガス圧によるトルクＴｇａｓとみなすことができる。従って、図示トルクをＴｉ（ｋ−２），Ｔｉ（ｋ−１），Ｔｉ，Ｔｉ（ｋ＋１），Ｔｉ（ｋ＋２）の順に算出することで、＃４、＃２、＃１、＃３、＃４の順に各気筒の爆発による筒内ガス圧によるトルクＴｇａｓを算出することができる。これにより、各気筒の燃焼状態を推定することができる。
【００８０】
次に、クランク軸３６に取り付けられたローター３９の角度誤差が図示トルクＴｉの算出値に与える影響について説明する。クランク軸３６には、クランク角センサ３８がその角度位置を検出するためのローター３９が取り付けられている。図６は、クランク軸３６、クランク角センサ３８、およびローター３９の位置関係を示す模式図である。図６に示すように、ローター３９の外周には複数の凹凸が設けられている。そして、クランク角センサ３８によってローター３９の凹凸のエッジを検出することにより、ローター３９すなわち、クランク軸３６の角度位置が検出される。
【００８１】
上述したように、角加速度に起因する動的な損失トルクを求める際には、クランク角がＴＤＣ、またはＢＤＣの位置から前後１０°づつ回転している間の時間Δｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）を、クランク角センサ３８から得られる角度信号に基づいて検出する。そして、時間Δｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）に基づいて角速度ω０（ｋ），ω０（ｋ＋１）を求め、ＴＤＣからＢＤＣまでクランク軸３６が回転する間の角加速度の平均値を算出する。
【００８２】
時間Δｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）を求める際に、ローター３９のエッジの角度位置が設計値通りに形成されていれば、Δｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）の正しい値を検出することができ、これに基づいてクランク軸３６の角加速度を精度良く求めることができる。
【００８３】
しかし、ローター３９のエッジの角度位置に誤差が含まれている場合は、Δｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋１），Δｔ１０（ｋ＋１）の値にその誤差分が含まれることとなり、この結果、算出したクランク軸３６の角加速度に誤差が含まれることとなる。より詳細には、ローター３９のエッジが設計値の公差内で形成されている場合であっても、設計値の中心から外れている場合は、算出した角加速度に誤差が含まれることとなる。
【００８４】
図７は、ローター３９のエッジの角度位置に誤差が含まれる場合に、その誤差が角加速度に与える影響を説明するための模式図である。図７に示すように、ローター３９のＴＤＣの位置の前後１０°で検出される２つのエッジの角度位置の間隔が設計値でθ（＝２０°）であり、実際の（出来栄えの）エッジの角度位置間隔がθ＋Δｅである場合を想定する。この場合に、ローター３９が２つのエッジ間を回転している間の時間がΔｔとして検出された場合、設計値のエッジの角度位置間隔がθであるため、設計値に基づいて算出した角速度ω０’は以下の（３）式で示される。
ω０’＝（θ／Δｔ）・（π／１８０）        ・・・（３）
【００８５】
一方、実際のローター３９のエッジ位置間隔はθ＋Δｅであるため、クランク軸３６の角速度の真の値ω０は、以下の（４）式で示される。
ω０＝（（θ＋Δｅ）／Δｔ）・（π／１８０）        ・・・（４）
実際のローター３９のエッジ位置間隔（θ＋Δｅ）は、ローター３９の出来栄えを測定することにより求めることはできるが、個々のローター３９、個々のエッジ毎に測定することは困難が伴う。
【００８６】
従って、設計値に基づいて算出した角速度ω０’は誤差を含むものとなり、真の角速度ω０との差Δω０は、以下の（５）式で示される。
Δω０＝ω０−ω０’＝（Δｅ／Δｔ）・（π／１８０）        ・・・（５）
そして、角速度ω０’から求めた角加速度、図示トルクＴｉにはΔω０に起因する誤差が含まれることとなる。
【００８７】
図５に示すように、＃１気筒の爆発行程が開始するクランク角位置（ＴＤＣ）で、クランク角センサ３８によって検出されるローター３９のエッジの角度誤差がΔｅ１であり、角速度ω０（ｋ）の算出値にΔｅ１による誤差分が含まれる場合、クランク軸３６の１８０°回転毎に順次に爆発行程が行われるため、クランク軸３６が１回転してΔｅ１の角度誤差が次に検出されるタイミングは、＃４気筒の爆発行程が開始するクランク角位置（ＴＤＣ）となる。従って、角速度ω０（ｋ＋２）の算出値にもΔｅ１による誤差が含まれることとなる。
【００８８】
同様に、＃３気筒の爆発行程が開始するクランク角位置（ＴＤＣ）で、クランク角センサ３８によって検出されるローター３９のエッジの角度誤差がΔｅ２であり、角速度ω０（ｋ＋１）の算出値にΔｅ２による誤差分が含まれる場合、＃２気筒の爆発行程が開始するクランク角位置（ＴＤＣ）でのローター３９の角度誤差もΔｅ２となり、角速度ω０（ｋ＋３）の算出値にΔｅ２による誤差が含まれることとなる。
【００８９】
本実施形態ではクランク角１８０°毎に図示トルクＴｉを算出するため、＃１気筒の爆発行程に対応した図示トルクＴｉ（ｋ）は角加速度（（ω０（ｋ＋１）−ω０（ｋ））／Δｔ（ｋ））から算出され、＃４気筒の爆発行程に対応した図示トルクＴｉ（ｋ＋２）は角加速度（（ω０（ｋ＋３）−ω０（ｋ＋２））／Δｔ（ｋ＋２））から算出される。ここで、それぞれの角加速度の分子の第１項、すなわちω０（ｋ＋１），ω０（ｋ＋３）にはΔｅ２による誤差が含まれ、第２項のω０（ｋ），ω０（ｋ＋２）にはΔｅ１による誤差が含まれている。従って、Ｔｉ（ｋ），Ｔｉ（ｋ＋２）は、ともにΔｅ２の誤差を含む角速度からΔｅ１の誤差を含む角速度を減算して得られた角加速度から算出されることになり、アイドリング時など定常運転時においてはＴｉ（ｋ）とＴｉ（ｋ＋２）のバラツキは小さくなる。従って、＃１気筒と＃４気筒の爆発行程に対応した図示トルクＴｉは近似した値となる。
【００９０】
同様に、＃３気筒の爆発行程に対応した図示トルクＴｉ（ｋ＋１）、＃２気筒の爆発行程に対応した図示トルクＴｉ（ｋ＋３）は、ともにΔｅ１の誤差を含む角速度からΔｅ２の誤差を含む角速度を減算して得られた角加速度から算出されることになり、アイドリング時など定常運転時においてはＴｉ（ｋ＋１）とＴｉ（ｋ＋３）のバラツキは小さくなる。従って、＃３気筒と＃２気筒の爆発行程に対応した図示トルクＴｉは近似した値となる。
【００９１】
一方、＃１気筒と＃３気筒の爆発行程に対応した図示トルクＴｉ（ｋ）、図示トルクＴｉ（ｋ＋１）を比較すると、＃１気筒の爆発行程に対応した図示トルクＴｉ（ｋ）は、角加速度（（ω０（ｋ＋１）−ω０（ｋ））／Δｔ（ｋ））から算出され、＃３気筒の爆発行程に対応した図示トルクＴｉ（ｋ＋１）は、角加速度（（ω０（ｋ＋２）−ω０（ｋ＋１））／Δｔ（ｋ＋１））から算出される。ここで、それぞれの角加速度の分子の第１項、すなわちω０（ｋ＋１），ω０（ｋ＋２）に含まれる誤差は、それぞれΔｅ２，Δｅ１であり、第２項のω０（ｋ），ω０（ｋ＋１）に含まれる誤差は、それぞれΔｅ１，Δｅ２となる。従って、Ｔｉ（ｋ）は、Δｅ２の誤差を含む角速度からΔｅ１の誤差を含む角速度を減算して得られた角加速度から算出されることになるが、Ｔｉ（ｋ＋１）はΔｅ１の誤差を含む角速度からΔｅ２の誤差を含む角速度を減算して得られた角加速度から算出されることになる。従って、ローター３９に角度誤差Δｅ１，Δｅ２が生じている場合、図示トルクＴｉ（ｋ）と図示トルクＴｉ（ｋ＋１）のバラツキは大きくなる。
【００９２】
このように、ローター３９に角度誤差Δｅ１，Δｅ２が生じている場合、＃１，＃４気筒の爆発行程に対応した図示トルクＴｉ（ｋ），図示トルクＴｉ（ｋ＋２）は近似した値となり、また、図示トルクＴｉ（ｋ＋１），図示トルクＴｉ（ｋ＋３）も近似した値となる。一方、図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋２）と図示トルクＴｉ（ｋ＋１），Ｔｉ（ｋ＋３）のバラツキは大きくなる。
【００９３】
図８は、ローター３９に上述した角度誤差Δｅ１，Δｅ２が生じている場合に、上述した方法で算出した図示トルクＴｉを示す特性図である。図８は、各気筒の爆発行程に対応して算出した図示トルクＴｉを、各気筒毎に複数のサイクルに渡って示したものである。図８に示すように、＃１気筒の爆発行程に対応した図示トルクＴｉ＿＃１と＃４気筒の爆発行程に対応した図示トルクＴｉ＿＃４は近似した値となり、＃３気筒の爆発行程に対応した図示トルクＴｉ＿＃３と＃２気筒の爆発行程に対応した図示トルクＴｉ＿＃２も近似した値となる。そして、Ｔｉ＿＃１およびＴｉ＿＃４の平均値Ｔｉ＿＃１４（平均値）と、Ｔｉ＿＃３およびＴｉ＿＃２の平均値Ｔｉ＿＃２３（平均値）とは、ΔＴだけ相違している。
【００９４】
本実施形態の装置は、ローター３９の角度誤差に起因した図示トルクＴｉの変動を排除するため、ΔＴ／２＝（Ｔｉ＿＃１４（平均値）−Ｔｉ＿＃２３（平均値））／２の演算から補正値ΔＴ／２を算出し、補正値ΔＴ／２を用いて＃１〜＃４の各気筒の図示トルクＴｉを補正する。具体的には、Ｔｉ＿＃１，Ｔｉ＿＃４からΔＴ／２を減算し、Ｔｉ＿＃２，Ｔｉ＿＃３にΔＴ／２を加算する。すなわち、（１）式でＴｌ＝０とし、補正値ΔＴ／２の項を追加した以下の（１）’式から補正した図示トルクＴｉを算出する。これにより、ローター３９の角度誤差Δｅ１，Δｅ２が図示トルクＴｉの算出値に与える影響を排除することができ、図示トルクＴｉを高精度に算出することが可能となる。
【００９５】
【数２】
2005061371.tif 000004
【００９６】
この際、機関回転数に応じて図示トルクＴｉは変動し、ΔＴ／２の値も機関回転数に応じて変動する。従って、機関回転数毎に補正値ΔＴ／２を取得しておき、機関回転数に対応した補正値ΔＴ／２を用いて図示トルクＴｉを補正することが望ましい。また、同一の機関回転数で補正値ΔＴ／２を複数回算出し、その平均値を補正値としてもよい。
【００９７】
なお、内燃機関１０が４気筒の機関の場合、クランク角１８０°毎に爆発行程が行われるため、角加速度の算出値に影響を与える角度誤差は、上述したようにクランク角１８０°毎に検出されるΔｅ１とΔｅ２となる。従って、上述したようにＴｉ＿＃１（平均値）とＴｉ＿＃４（平均値）の値が近似し、またＴｉ＿＃２（平均値）とＴｉ＿＃３（平均値）の値が近似する。このように、４気筒の機関ではローター３９の角度誤差に起因して変動した図示トルクＴｉの値は大きく２つに分類され、補正値ΔＴ／２を用いてＴｉ＿＃１４（平均値）とＴｉ＿＃２３（平均値）の中間の値となるように図示トルクＴｉが補正することが好適である。一方、例えば６気筒の機関では、クランク角１２０°毎に爆発行程が行われるため、角加速度の算出値に影響を与える角度誤差は、クランク角１２０°毎に検出される３つの値（Δｅ３、Δｅ４、及びΔｅ５）となる。従って、６気筒の機関では、ローター３９の角度誤差に起因して変動した図示トルクＴｉの値は大きく３つに分類され、爆発行程の両端のクランク角位置が同じ２気筒の図示トルクＴｉ同士が近似した値となる。この場合は、３つに分類されたそれぞれの図示トルクＴｉの平均値を求め、以降に算出した図示トルクＴｉがこの平均値と等しくなるように補正することが好適である。
【００９８】
次に、本実施形態の燃焼状態推定装置における処理の手順について、図９及び図１０のフローチャートに基づいて説明する。最初に、補正値ΔＴ／２を取得する処理について図９のフローチャートに基づいて説明する。先ず、ステップＳ１では、補正値ΔＴ／２を取得する運転条件が成立しているか否かを判定する。ここでは、運転条件が定常状態であり、かつ無負荷の状態であるか否かを判別する。運転条件が成立している場合はステップＳ２へ進む。運転条件が成立していない場合は終了する（END）。
【００９９】
次のステップＳ２では、（１）式から爆発行程毎、すなわちクランク角１８０°毎に図示トルクＴｉ（ｋ）を算出し、各気筒毎にｎ回（ｎサイクル）の爆発行程に対応した図示トルクＴｉを算出する。
【０１００】
次のステップＳ３では、ステップＳ２で求めたｎサイクルの図示トルクＴｉを各気筒毎に平均して平均値（Ｔｉ＿＃１（平均値），Ｔｉ＿＃２（平均値），Ｔｉ＿＃３（平均値），Ｔｉ＿＃４（平均値））を算出する。次のステップＳ４では、補正値ΔＴ／２を算出する条件が成立しているか否かを判定する。ここでは、Ｔｉ＿＃１（平均値）〜Ｔｉ＿＃４（平均値）に基づいてローター３９の角度誤差の大小を判定し、角度誤差が大きい場合は補正値算出条件が成立しているものとして以降のステップで補正値ΔＴ／２を算出する。一方、補正値算出条件が成立していない場合は終了する。
【０１０１】
上述したように、内燃機関１０が４気筒の場合、ローター３９に角度誤差が生じていても、＃１気筒と＃４気筒の図示トルクＴｉの値は近似し、＃３，＃２気筒の図示トルクＴｉの値も近似する。ステップＳ４では、＃１〜＃４気筒の図示トルクを比較して、角度誤差に起因したバラツキが各図示トルクに発生しているか否かを判定する。そして、角度誤差に起因したバラツキが各図示トルクに発生している場合は、補正値ΔＴ／２を算出する条件が成立していると判定する。
【０１０２】
具体的には、ステップＳ４では、以下（Ａ）〜（Ｄ）の全ての条件が成立するか否かを判定する。
（Ａ）図示トルクＴｉを算出したｎサイクルの区間で定常状態での運転が成されたこと。
（Ｂ）｜Ｔｉ＿＃１（平均値）−Ｔｉ＿＃４（平均値）｜≦ｅａ
（Ｃ）｜Ｔｉ＿＃２（平均値）−Ｔｉ＿＃３（平均値）｜≦ｅａ
（Ｄ）｜Ｔｉ＿＃１４（平均値）−Ｔｉ＿＃２３（平均値）｜＝ΔＴ≧ｅｂ
ここで、ｅａ，ｅｂは所定のしきい値である。しきい値ｅａ，ｅｂは、予め実験等により求めておく。
【０１０３】
（Ａ）の条件が満たされていない場合は、運転状態に応じて図示トルクＴｉが変動してしまうため補正値を算出することができない。従って、この場合は、ステップＳ４における補正値算出条件が成立していないと判定し、処理を終了する（END）。
【０１０４】
ローター３９の角度誤差に起因して図示トルクＴｉが変動する場合は、Ｔｉ＿＃１とＴｉ＿＃４の間に大きな差は生じない。また、Ｔｉ＿＃２とＴｉ＿＃３の間にも大きな差は生じない。従って、上記（Ｂ）、（Ｃ）の判定により、｜Ｔｉ＿＃１−Ｔｉ＿＃４｜＞ｅａ、または、｜Ｔｉ＿＃２−Ｔｉ＿＃３｜＞ｅａが成立する場合は、ローター３９の角度誤差以外の要因で図示トルクＴｉが変動していると判断できる。従って、この場合は、ステップＳ４における補正値算出条件が成立していないと判定し、処理を終了する（END）。
【０１０５】
また、（Ｂ）、（Ｃ）の条件が成立している場合であっても、（Ｄ）の条件が成立していない場合、すなわち、｜Ｔｉ＿＃１４−Ｔｉ＿＃２３｜＜ｅｂの場合は、ローター３９の角度誤差が図示トルクＴｉの算出値に影響を及ぼすほど大きな値ではないと判断できる。従って、この場合もステップＳ４で補正値ΔＴ／２の算出条件が成立していないと判定し、処理を終了する（END）。ステップＳ４で補正値ΔＴ／２の算出条件が成立している場合は、ステップＳ５へ進み、ΔＴ／２＝（Ｔｉ＿＃１４−Ｔｉ＿＃２３）／２の演算によって得られた補正値ΔＴ／２をメモリに格納する。
【０１０６】
図１０は、（１）式に基づいて、各気筒の爆発行程毎、すなわちクランク角１８０°毎に図示トルクＴｉ（ｋ）を算出する処理を示すフローチャートである。図９の処理によって補正値ΔＴ／２を取得した後は、図１０の処理によって算出した図示トルクＴｉを上記（１）’式によって補正する。また、図９のステップＳ２においても、図１０の処理によって図示トルクＴｉを算出する。以下、図１０のフローチャートに基づいて、図示トルクＴｉ（ｋ）を算出する処理について説明する。先ず、ステップＳ１１では、図示トルクＴｉ（ｋ）を算出する運転条件が成立しているか否かを判別する。ここでは、運転条件が定常状態であり、かつ無負荷の状態であるか否かを判別する。運転条件が成立している場合はステップＳ１２へ進み、成立していない場合は終了する（ＥＮＤ）。
【０１０７】
次のステップＳ１２では、クランク角位置がトルク算出タイミングであるか否かを判定する。トルク算出タイミングである場合はステップＳ１３へ進み、トルク算出タイミングでない場合は終了する（ＥＮＤ）。
【０１０８】
ステップＳ１３では、トルク算出に必要なパラメータを取得する。具体的には、機関回転数（Ｎｅ（ｋ）），冷却水温（ｔｈｗ（ｋ）），角速度（ω０（ｋ），ω０（ｋ＋１））、時間（Δｔ（ｋ））などの各パラメータを取得する。
【０１０９】
次のステップＳ１４では、フリクショントルクＴｆ（ｋ）を算出する。上述のように、フリクショントルクＴｆ（ｋ）は機関回転数（Ｎｅ（ｋ））と冷却水温（ｔｈｗ（ｋ））の関数であり、図４のマップからＴＤＣからＢＤＣまでの区間における平均値を求める。
【０１１０】
次の、ステップＳ１５では、補機類のスイッチがオン（ＯＮ）しているか否かを判定する。スイッチがオン（ＯＮ）している場合はステップＳ１６へ進み、ステップＳ１４で求めたフリクショントルクＴｆ（ｋ）を補正する。具体的には、Ｔｆ（ｋ）に所定の補正係数を乗算したり、Ｔｆ（ｋ）に所定の補正値を加算するなどの方法で補正を行う。ステップＳ１５でスイッチがオフ（ＯＦＦ）の場合はステップＳ１７へ進む。
【０１１１】
ステップＳ１７では、角加速度に起因する動的な損失トルクＴａｃ（ｋ）を算出する。ここでは、Ｔａｃ（ｋ）＝Ｊ×（（ω０（ｋ＋１）−ω０（ｋ））／Δｔ（ｋ））を演算して、ＴＤＣからＢＤＣまでの区間における動的な損失トルクの平均値Ｔａｃ（ｋ）を算出する。
【０１１２】
次のステップＳ１８では、図示トルクＴｉ（ｋ）を算出する。ここでは、Ｔｉ（ｋ）＝Ｔａｃ（ｋ）＋Ｔｆ（ｋ）を演算してＴｉ（ｋ）を算出する。なお、ステップＳ１６でＴｆ（ｋ）を補正している場合は、補正後のＴｆ（ｋ）を用いて演算を行う。ここで得られた図示トルクＴｉ（ｋ）は、ＴＤＣからＢＤＣまでの区間の平均値である。
【０１１３】
そして、ＴＤＣからＢＤＣまでの区間では、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値＝０であるため、（２）式より、求めた図示トルクＴｉ（ｋ）は筒内ガス圧によるトルクＴｇａｓ（ｋ）となる。
【０１１４】
以上説明したように実施の形態１によれば、各気筒の図示トルクＴｉの算出値に基づいて補正値ΔＴ／２を算出することができるため、ローター３９の角度誤差に起因して図示トルクＴｉの値が変動している場合は、補正値ΔＴ／２を用いて図示トルクＴｉを補正することが可能となる。従って、図示トルクＴｉを高い精度で算出することが可能となり、図示トルクＴｉに基づいた冷間ヘジテーション（始動時のもたつき）に対応した制御、または失火検出における誤判定、誤検出を防止することが可能となる。
【０１１５】
また、本実施形態の燃焼状態推定装置によれば、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間でクランク軸３６の角加速度の平均値を算出するようにしたため、Ｔｉｎｅｒｔｉａが角加速度に与える影響を排除することができ、燃焼状態に対応した情報のみから角加速度、及び角加速度による動的な損失トルクＴａｃを求めることができる。また、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間においてフリクショントルクの平均値を求めるようにしたため、瞬間的なフリクション挙動に影響を受けることなく、正確にフリクショントルクＴｆを求めることができる。従って、燃焼状態に対応した図示トルクＴｉの絶対値を高い精度で求めることができ、図示トルクＴｉに基づいて燃焼状態を正確に推定することが可能となる。
【０１１６】
なお、上述した例では、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間を１８０°に設定したが、Ｔｉｎｅｒｔｉａの平均値が０となる区間をより広く設定しても良い。４気筒の内燃機関の場合、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間の最少単位が１８０°であるため、１８０°の整数倍でＴｉｎｅｒｔｉａの平均値が０となる区間を設定することができる。例えば推定したトルクによってトルク制御を行う場合など、図示トルクＴｉを推定する頻度が低くても構わない場合には、３６０°、７２０°などの、より広い角度範囲に設定しても構わない。
【０１１７】
なお、上述した例では、４気筒の内燃機関に本発明を適用したが、４気筒以外の内燃機関であっても往復慣性質量によるトルクＴｉｎｅｒｔｉａの平均値が０となる区間を求めることで、４気筒の場合と同様に燃焼状態を推定することができる。図１１は、４気筒以外の内燃機関におけるトルク特性を示す図であって、図２と同様に（２）式の各トルクとクランク角との関係を示す特性図である。ここで、図１１（Ａ）は単気筒の場合を、図１１（Ｂ）は６気筒の場合をそれぞれ示している。
【０１１８】
図１１（Ａ）に示すように、単気筒の場合はクランク角７２０°毎に１回の爆発行程が行われ、筒内ガス圧によるトルクＴｇａｓは１回の爆発毎に増加、減少を繰り返す。そして、クランク角３６０°〜５４０°の区間で往復慣性質量によるトルクＴｉｎｅｒｔｉａ（点線）の平均値は０となる。従って、この区間毎に角加速度、図示トルクを求めることで、燃焼状態を正確に推定することができる。
【０１１９】
図１１（Ｂ）に示す６気筒の場合も同様である。６気筒の場合は、クランク角７２０°毎に６回の爆発行程が行われるため、筒内ガス圧によるトルクＴｇａｓはクランク角１２０°毎に増加、減少を繰り返す。そして、クランク角０°〜１２０°の区間で往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値は０となる。従って、クランク角１２０°毎に角加速度、図示トルクを求めることで往復慣性質量による影響を排除することができ、燃焼状態を正確に推定することができる。１サイクルのクランク回転角は７２０°であるため、特に多気筒の内燃機関の場合、（７２０°／気筒数）を演算して得られた角度範囲をＴｉｎｅｒｔｉａの平均値が０となる区間の最少単位とすることができる。
【０１２０】
なお、上述した例では、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値が０となる区間で、クランク角加速度、損失トルク、フリクショントルクの平均値を算出したが、平均値以外の情報、例えばトルクの積算値をこの区間で算出しても良い。この区間ではＴｉｎｅｒｔｉａの影響が排除されているため、積算値などの他のパラメータを用いても燃焼状態を正確に推定することができる。
【０１２１】
また、上述した例では、負荷トルクＴｌ＝０として燃焼状態を推定したが、傾きセンサなどの情報に基づいて負荷トルクＴｌを求め、図示トルクＴｉの推定に用いることで、車両走行時の全運転領域で図示トルクＴｉを求めることが可能となる。これにより、例えば冷間始動時に負荷変化に起因する冷間ヘジテーションが発生した場合であっても、燃焼状態を確実に推定することが可能となる。
【０１２２】
実施の形態２．
次に、本発明の実施の形態２について説明する。実施の形態２は、筒内圧センサ４４の検出値から実測図示トルクＴｉ＿ｃｐｓを算出し、実測図示トルクＴｉ＿ｃｐｓを用いて推定図示トルクＴｉを補正するものである。
【０１２３】
図１に示すように内燃機関１０が筒内圧センサ４４を備えている場合、筒内圧センサ４４の検出値から実測図示トルクＴｉ＿ｃｐｓを算出することができる。例えば＃１気筒が筒内圧センサ４４を備えている場合、＃１気筒の実測図示トルクＴｉ＿ｃｐｓは、以下の（６）式から算出することができる。
【０１２４】
【数３】
2005061371.tif 000005
【０１２５】
（６）式において、Ｔｉ＿ｃｐｓは１サイクル（クランク角７２０°）で平均した実測図示トルク（実測平均図示トルク）を７２０°ＣＡ／気筒数の区間で換算したものである。また、Ｐ＃１（θ）はクランク角θ毎に算出される＃１気筒の筒内圧であって、筒内圧センサ４４の検出値から得られる。Ｖ＃１（θ）はクランク角θ毎に算出される＃１気筒の筒内容積であって、内燃機関の諸元（ボア×ストローク、燃焼室容積など）とクランク角センサ３８から検出したクランク角から求められる。
【０１２６】
実測平均図示トルクＴｉ＿ｃｐｓは、１サイクルにおける筒内ガスの仕事（７２０°ＣＡ／気筒数の区間で換算したもの）として求められ、（６）式に示されるように、クランク角θ毎にＰ＃１（θ）とｄＶ＃１（θ）／ｄθの積を求め、１サイクルの区間でその平均値（Average）を算出し、気筒数Ｎを乗算することで求められる。
【０１２７】
図１２は、算出した推定図示トルクＴｉ（ｋ）（＝Ｔｇａｓ（ｋ））および実測図示トルクＴｉ＿ｃｐｓと、各気筒の各行程との関係を示す模式図である。図５と同様に、内燃機関１０が＃１〜＃４の４気筒で構成される場合、クランク軸３６の１８０°回転毎に＃１、＃３、＃４、＃２の順で爆発行程が行われ、爆発行程毎、すなわちクランク角１８０°毎に（１）式から推定図示トルクＴｉを順次算出することができる。
【０１２８】
筒内圧センサ４４を＃１の気筒に取り付けた場合、＃１の吸気、圧縮、爆発、排気の４行程（１サイクル）から実測図示トルクＴｉ＿ｃｐｓが求まる。図１２では、推定図示トルクＴｉ（ｋ）を算出した行程を破線で囲んだ領域Ａとして示し、実測図示トルクＴｉ＿ｃｐｓを算出した行程を一点鎖線で囲んだ領域Ｂとして示している。定常運転時においては、領域Ａの吸気行程で発生するトルクと、領域Ｂの吸気行程で発生するトルクは略同一とみなすことができる。同様に、領域Ａの圧縮、排気行程で発生するトルクと、領域Ｂの圧縮、排気行程で発生するトルクもそれぞれ略同一とみなすことができる。更に、領域Ａの爆発行程と領域Ｂの爆発行程は共通である。
【０１２９】
従って、運転状態が定常状態の場合、推定図示トルクＴｉ（ｋ）及び実測図示トルクＴｉ＿ｃｐｓが正確に求められていれば、推定図示トルクＴｉと実測図示トルクＴｉ＿ｃｐｓとは略等しい値となる。そして、推定図示トルクＴｉ（ｋ）と実測図示トルクＴｉ＿ｃｐｓの算出値が相違する場合には、いずれかの算出値に誤差が含まれているものと想定できるが、実測図示トルクＴｉ＿ｃｐｓは筒内圧センサ４４から検出した実際の筒内圧を用いて算出された値であるため、その誤差要因は小さいと考えられる。
【０１３０】
本実施形態では、実測図示トルクＴｉ＿ｃｐｓと推定図示トルクＴｉ（ｋ）を比較し、両トルクの値が相違する場合は、ローター３９の角度誤差に起因した誤差が推定図示トルクＴｉ（ｋ）の算出値に含まれているか否かを判定する。そして、ローター３９の角度誤差による誤差が推定図示トルクＴｉ（ｋ）の算出値に含まれている場合は、推定図示トルクＴｉ（ｋ）の算出値を補正するようにしている。
【０１３１】
図１３は、実施の形態１で説明した角度誤差Δｅ１，Δｅ２がローター３９に生じている場合に、（１）式から算出した推定図示トルクＴｉと、（３）式から算出した＃１気筒の実測図示トルクＴｉ＿ｃｐｓを共に示す特性図である。図１３において、各気筒＃１〜＃４の爆発行程に対応した推定図示トルクＴｉ＿＃１〜Ｔｉ＿＃４は、図８と同様に各気筒毎に複数サイクルに渡って算出したものである。実施の形態１で説明したように、ローター３９に角度誤差Δｅ１，Δｅ２が生じている場合、＃１気筒と＃４気筒の推定図示トルクＴｉは近似した値となり、＃３気筒、＃２気筒の推定図示トルクＴｉも近似した値となる。
【０１３２】
ここで、各気筒の推定図示トルクＴｉの平均値（Ｔｉ＿＃１（平均値），Ｔｉ＿＃２（平均値），Ｔｉ＿＃３（平均値），Ｔｉ＿＃４（平均値））において、図９のステップＳ４の条件が成立する場合は、角度誤差Δｅ１、Δｅ２に起因した誤差が各気筒の推定図示トルクＴｉに含まれているものと判断できる。一方、実測図示トルクＴｉ＿ｃｐｓは、クランク角７２０°（２回転）の区間で算出されるため、実測図示トルクＴｉ＿ｃｐｓの算出値にローター３９の角度誤差による変動が含まれることはない。従って、実測図示トルクＴｉ＿ｃｐｓに基づいて推定図示トルクＴｉを補正することができる。
【０１３３】
図１３の例では、Ｔｉ＿＃１（平均値）とＴｉ＿＃４（平均値）の平均値Ｔｉ＿＃１４（平均値）と、実測図示トルクＴｉ＿ｃｐｓとはΔＴａだけ相違している。また、Ｔｉ＿＃２（平均値）とＴｉ＿＃３（平均値）の平均値Ｔｉ＿＃２３（平均値）と、実測図示トルクＴｉ＿ｃｐｓとはΔＴｂだけ相違している。従って、ΔＴａ，ΔＴｂを補正値として記憶しておくことで、ΔＴａ，ΔＴｂを用いて推定図示トルクＴｉを補正することが可能となる。
【０１３４】
なお、内燃機関１０が４気筒の機関の場合、クランク角１８０°毎に爆発行程が行われるため、角加速度の算出値に影響を与える角度誤差は、上述したようにクランク角１８０°毎に検出されるΔｅ１とΔｅ２となる。従って、上述したようにＴｉ＿＃１（平均値）とＴｉ＿＃４（平均値）の値が近似し、またＴｉ＿＃２（平均値）とＴｉ＿＃３（平均値）の値が近似する。このように、４気筒の機関ではローター３９の角度誤差に起因して変動した図示トルクＴｉの値は大きく２つに分類され、実測図示トルクＴｉ＿ｃｐｓとの差から２つの補正値ΔＴａ，ΔＴｂが得られる。一方、例えば６気筒の機関では、クランク角１２０°毎に爆発行程が行われるため、角加速度の算出値に影響を与える角度誤差は、クランク角１２０°毎に検出される３つの値（Δｅ３、Δｅ４、及びΔｅ５）となる。従って、６気筒の機関では、ローター３９の角度誤差に起因して変動した図示トルクＴｉの値は大きく３つに分類され、実測図示トルクＴｉ＿ｃｐｓとの差から３つの補正値が得られる。同様に、Ｎ気筒の機関ではＮ／２個の補正値が得られる。本実施形態によれば、内燃機関が４気筒以外の機関であっても、Ｎ／２個（Ｎは気筒数）の補正値を得ることができ、補正値に基づいて推定図示トルクＴｉの気筒間バラツキを補正することで、図示トルクＴｉの算出精度を高めることが可能となる。
【０１３５】
次に、本実施形態の燃焼状態推定装置における処理の手順について、図１４のフローチャートに基づいて説明する。先ず、ステップＳ２１では、運転条件が成立しているか否かを判定する。ここでは、運転条件が定常状態であり、かつ無負荷の状態であるか否かを判別する。運転条件が成立している場合はステップＳ２２へ進む。一方、運転条件が成立していない場合は終了する（END）。
【０１３６】
次のステップＳ２２では、（１）式から爆発行程毎、すなわちクランク角１８０°毎に図示トルクＴｉ（ｋ）を算出し、各気筒毎にｎ回（ｎサイクル）の爆発行程に対応した推定図示トルクＴｉを算出する。
【０１３７】
次のステップＳ２３では、ステップＳ２２で求めたｎサイクルの推定図示トルクＴｉを各気筒毎に平均し、Ｔｉ＿＃１（平均値），Ｔｉ＿＃２（平均値），Ｔｉ＿＃３（平均値），Ｔｉ＿＃４（平均値）を算出する。次のステップＳ２４では、（６）式から＃１気筒における実測図示トルクＴｉ＿ｃｐｓをｎサイクルに渡って算出し、ステップＳ２５ではｎサイクルの実測図示トルクＴｉ＿ｃｐｓの平均値Ｔｉ＿ｃｐｓ（平均値）を算出する。
【０１３８】
次のステップＳ２６では、補正値ΔＴａ，ΔＴｂを算出する条件が成立しているか否かを判定する。ここでは、図９のステップＳ４と同様の方法で判定を行う。ステップＳ２６で補正値ΔＴａ，ΔＴｂを算出する条件が成立している場合は、ステップＳ２７で補正値ΔＴａ，ΔＴｂを算出する。ここでは、ΔＴａ＝Ｔｉ＿ｃｐｓ（平均値）−Ｔｉ＿＃１４（平均値）、ΔＴｂ＝Ｔｉ＿ｃｐｓ（平均値）−Ｔｉ＿＃２３（平均値）の演算を行って補正値ΔＴａ，ΔＴｂを算出し、メモリに格納する。一方、ステップＳ２６で補正値算出条件が成立していない場合は、処理を終了する（END）。
【０１３９】
図１４の処理により補正値ΔＴａ，ΔＴｂを求めた後は、補正値ΔＴａ，ΔＴｂを用いて以降に算出した推定図示トルクＴｉを補正する。具体的には、以下の演算を行って推定図示トルクＴｉを補正する。
Ｔｉ＿＃１（補正後）＝Ｔｉ＿＃１＋ΔＴａ
Ｔｉ＿＃２（補正後）＝Ｔｉ＿＃２＋ΔＴｂ
Ｔｉ＿＃３（補正後）＝Ｔｉ＿＃３＋ΔＴｂ
Ｔｉ＿＃４（補正後）＝Ｔｉ＿＃４＋ΔＴａ
【０１４０】
これにより、ローター３９の角度誤差が推定図示トルクＴｉの算出値に与える影響を排除することができ、推定図示トルクＴｉを高精度に算出することが可能となる。
【０１４１】
以上説明したように実施の形態２によれば、実測図示トルクＴｉ＿ｃｐｓに基づいて、推定図示トルクＴｉを補正するようにしたため、ローター３９の角度誤差が推定図示トルクＴｉの算出値に与える影響を排除することができる。従って、推定図示トルクＴｉを高い精度で算出することが可能となる。
【０１４２】
実施の形態３．
次に、本発明の実施の形態３について説明する。実施の形態１，２で説明したように、クランク角１８０°の区間で角加速度の平均値を算出した場合に、クランク角１８０°毎にローター３９に角度誤差Δｅ１，Δｅ２が含まれると、角速度ω０（ｋ＋１）にはΔｅ２による誤差が含まれ、角速度ω０（ｋ）にはΔｅ１による誤差が含まれる。
【０１４３】
一方、クランク角３６０°の区間でクランク軸３６の角加速度を算出する場合、この区間ではクランク軸３６が１回転するため、クランク角３６０°の区間の両端で算出された角速度には、ともに同一の角度誤差Δｅによる誤差が含まれる。角加速度は、クランク角３６０°の区間の両端での角速度の差分から算出され、クランク角３６０°の区間の両端で算出された角速度に含まれる角度誤差Δｅは、差分をとることにより消去されるため、クランク角３６０°の区間で算出された角加速度には、角度誤差Δｅによる誤差分は含まれない。
【０１４４】
この観点から、実施の形態３では、クランク角３６０°の区間で角加速度の平均値を算出し、この角加速度に基づいてクランク角３６０°の区間における推定図示トルクＴｉを算出する。クランク角３６０°の区間で推定図示トルクＴｉを算出する場合、角加速度算出区間の両端でローター３９の同一のエッジ部分が検出されることとなるため、この部分に角度誤差が生じていた場合であっても、角度誤差が推定図示トルクの算出値に与える影響を排除することができる。従って、高い精度で推定図示トルクＴｉを算出することが可能となる。
【０１４５】
また、実施の形態１で説明したように、クランク角３６０°の区間においても、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値は０となる。従って、Ｔｉｎｅｒｔｉａが推定図示トルクＴｉに与える影響を排除することができ、推定図示トルクＴｉに基づいて燃焼状態を正確に推定することができる。
【０１４６】
図１５は、推定図示トルクＴｉを算出するタイミングを示す模式図である。図１５に示すように、本実施形態では、クランク角３６０°の区間毎に推定図示トルクＴｉａ（ｍ）、Ｔｉａ（ｍ＋１）、Ｔｉａ（ｍ＋２）・・・を順次算出する。また、クランク角３６０°の区間毎に推定図示トルクＴｉｂ（ｍ）、Ｔｉｂ（ｍ＋１）、Ｔｉｂ（ｍ＋２）・・・を順次算出する。ここで、推定図示トルクＴｉａ（ｍ）は、角速度ω０（ｋ），ω０（ｋ＋２）から算出されるトルクであり、推定図示トルクＴｉｂ（ｍ）は、角速度ω０（ｋ＋１），ω０（ｋ＋３）から算出されるトルクである。同様に、Ｔｉａ（ｍ＋１）・・・，Ｔｉｂ（ｍ＋１）・・・はクランク角３６０°の区間の両端で検出された各角速度から算出されるトルクである。
【０１４７】
図１５に示すように、推定図示トルクＴｉａ（ｍ）、Ｔｉａ（ｍ＋２）・・・の算出区間と推定図示トルクＴｉｂ（ｍ）、Ｔｉｂ（ｍ＋１）・・・の算出区間はクランク角１８０°だけ位相が相違している。このように、推定図示トルクＴｉａと推定図示トルクＴｉｂの算出タイミングの位相をクランク角１８０°だけ相違させることで、推定図示トルクＴｉａ，Ｔｉｂをクランク角１８０°毎に算出することが可能となる。従って、推定図示トルクＴｉａ，Ｔｉｂをクランク角３６０°毎に算出した場合であっても、クランク角１８０°毎に推定図示トルクＴｉの値を更新することが可能となる。これにより、短時間で推定図示トルクＴｉの値を更新することができ、冷間ヘジテーションに対応した制御等、最新の推定図示トルクＴｉを逐次算出する必要がある場合においても、最適な制御を行うことが可能となる。
【０１４８】
内燃機関１０が４気筒の場合はクランク角１８０°毎に爆発行程が行われるため、推定図示トルクＴｉａ，Ｔｉｂのそれぞれをクランク角３６０°毎に算出した場合であっても、ＴｉａとＴｉｂの算出区間をクランク角１８０°だけ相違させることで、クランク角１８０°毎にＴｉａ，Ｔｉｂを算出することができる。同様に、Ｎ気筒の内燃機関ではクランク角７２０°／Ｎ毎に爆発行程が行われるため、推定図示トルクＴｉａと推定図示トルクＴｉｂの算出区間をクランク角７２０°／Ｎだけ相違させることが好適である。これにより、推定図示トルクＴｉａ，Ｔｉｂをクランク角７２０°／Ｎ毎に算出することができ、ローター３９の角度誤差による影響を排除した状態で推定図示トルクＴｉの算出頻度を高めることができる。特に、気筒数の多い内燃機関１０では、７２０°／Ｎの値が小さくなるため、推定図示トルクＴｉａ，Ｔｉｂの算出タイミングが短くなり、冷間ヘジテーション等に対応した最適な制御が可能となる。
【０１４９】
次に、図１６に基づいて、本実施形態の装置における処理の手順を説明する。図１６は、クランク角３６０°の区間で推定図示トルクＴｉを算出する処理を示すフローチャートであって、図１５のＴｉａ（ｍ）を算出する処理を示している。
【０１５０】
先ず、ステップＳ３１では運転条件が成立しているか否かを判別する。ここでは、運転条件が定常状態であり、かつ無負荷の状態であるか否かを判別する。運転条件が成立している場合はステップＳ３２へ進み、成立していない場合は終了する（ＥＮＤ）。
【０１５１】
次のステップＳ３２では、クランク角位置がトルク算出タイミングであるか否かを判定する。具体的には、クランク角がΔｔ０（ｋ），Δｔ１０（ｋ），Δｔ０（ｋ＋２），Δｔ１０（ｋ＋２）を検出する位置であるか否かを判定する。ここで、Δｔ０（ｋ），Δｔ１０（ｋ）は、＃１の爆発行程が開始するクランク角位置（ＴＤＣ）から前後１０°づつクランク角が回転している間の時間である。また、Δｔ０（ｋ＋２），Δｔ１０（ｋ＋２）は、＃３の爆発行程が完了したクランク角位置（ＢＤＣ）から前後１０°づつクランク角が回転している間の時間である。トルク算出タイミングである場合はステップＳ３３へ進み、トルク算出タイミングでない場合は終了する（ＥＮＤ）。
【０１５２】
次のステップＳ３３では、トルク算出に必要なパラメータを取得する。具体的には、機関回転数（Ｎｅ（ｋ）），冷却水温（ｔｈｗ（ｋ）），角速度（ω０（ｋ），ω０（ｋ＋２））、時間ｔ（ｋ）＋ｔ（ｋ＋１））などの各パラメータを取得する。ここで、ω０（ｋ）は＃１の爆発行程が開始するクランク角位置（ＴＤＣ）での角速度、ω０（ｋ＋２）は＃３の爆発行程が完了したクランク角位置（ＢＤＣ）での角速度、ｔ（ｋ）＋ｔ（ｋ＋１）は、＃１の爆発行程が開始するクランク角位置（ＴＤＣ）から＃３の爆発行程が完了したクランク角位置（ＢＤＣ）までクランク軸３６が回転する際に要した時間である。
【０１５３】
次のステップＳ３４では、フリクショントルクＴｆ（ｍ）を算出する。フリクショントルクＴｆ（ｍ）は機関回転数（Ｎｅ（ｋ））と冷却水温（ｔｈｗ（ｋ））の関数であり、図４のマップからクランク角１８０°（ＴＤＣからＢＤＣまで）の区間における平均値を求める。なお、実施の形態３ではクランク角３６０°毎に推定図示トルクＴｉを算出するため、図４のマップを作成する際に、クランク軸３６が３６０°回転する際の機関回転数Ｎｅの平均値、冷却水温ｔｈｗの平均値、およびフリクショントルクＴｆの平均値（測定値）とからマップを作成してもよい。この場合、クランク軸３６が３６０°回転する際の機関回転数Ｎｅの平均値、冷却水温ｔｈｗの平均値をマップに当てはめて、クランク角３６０°区間におけるフリクショントルクＴｆの平均値を算出する。
【０１５４】
次の、ステップＳ３５では、補機類のスイッチがオン（ＯＮ）しているか否かを判定する。スイッチがオン（ＯＮ）している場合はステップＳ３６へ進み、ステップＳ３４で求めたフリクショントルクＴｆ（ｍ）を補正する。具体的には、Ｔｆ（ｍ）に所定の補正係数を乗算したり、Ｔｆ（ｍ）に所定の補正値を加算するなどの方法で補正を行う。ステップＳ３５でスイッチがオフ（ＯＦＦ）の場合はステップＳ３７へ進む。
【０１５５】
ステップＳ３７では、推定図示トルクＴｉａ（ｍ）に対応した、角加速度に起因する動的な損失トルクＴａｃ（ｍ）を算出する。ここでは、Ｔａｃ（ｍ）＝Ｊ×（（ω０（ｋ＋２）−ω０（ｋ））／ｔ（ｋ）＋ｔ（ｋ＋１））を演算して、クランク角３６０°の区間における動的な損失トルクの平均値Ｔａｃ（ｍ）を算出する。なお、実施の形態１と同様に、ω０（ｋ）はΔｔ０（ｋ），Δｔ１０（ｋ）から算出し、ω０（ｋ＋２）はΔｔ０（ｋ＋２），Δｔ１０（ｋ＋２）から算出する。
【０１５６】
次のステップＳ３８では、クランク角３６０°の区間における推定図示トルクＴｉａ（ｍ）を算出する。ここでは、Ｔｉａ（ｍ）＝Ｔａｃ（ｍ）＋Ｔｆ（ｍ）を演算してＴｉａ（ｍ）を算出する。なお、ステップＳ３６でＴｆ（ｍ）を補正している場合は、補正後のＴｆ（ｍ）を用いて演算を行う。ここで得られた推定図示トルクＴｉａ（ｍ）は、クランク角３６０°の区間の平均値である。クランク角３６０°の区間では、往復慣性質量による慣性トルクＴｉｎｅｒｔｉａの平均値＝０であるため、式（２）より、求めた推定図示トルクＴｉａ（ｍ）は筒内ガス圧によるトルクと等しくなる。
【０１５７】
以上説明したように実施の形態３によれば、クランク角３６０°の区間で推定図示トルクＴｉａ，Ｔｉｂを算出するようにしたため、クランク角速度を求める際にクランク角センサ４４で検出されるローター３９のエッジ位置は常に同じエッジ位置となる。従って、ローター３９の角度誤差が、クランク角加速度、または推定図示トルクＴｉの算出値に与える影響を排除することができ、推定図示トルクＴｉを高精度に算出することが可能となる。
【０１５８】
なお、実施の形態３では、クランク軸３６が１回転する区間で推定図示トルクＴｉａ，Ｔｉｂを算出することにより、ローター３９のエッジの角度誤差が推定図示トルクＴｉａ，Ｔｉｂの算出値に与える誤差を排除することとしたが、クランク軸３６がｎ（ｎは自然数）回転する区間で推定図示トルクＴｉａ，Ｔｉｂを算出するようにしても良い。クランク角センサ３８によって検出されるローター３９のエッジは、クランク軸３６がｎ回転する区間の両端では同一のエッジであるため、この両端のエッジに基づいて角加速度の平均値を算出することで、エッジの角度誤差の要因を排除して推定図示トルクＴｉａ，Ｔｉｂを算出することができる。
【０１５９】
実施の形態４．
次に、本発明の実施の形態４について説明する。実施の形態４では、実施の形態１と同様の方法で推定図示トルクＴｉを算出し、いずれか１つの気筒の推定図示トルクが他の気筒の推定図示トルクに対して大きく相違している場合は、その気筒が異常であると判定し、異常気筒の燃焼状態を回復させる処理を行う。また、異常気筒の燃焼回復が困難な場合は警告を発する。
【０１６０】
図１７は、図１０の方法で算出した各気筒の推定図示トルクＴｉを示す特性図である。図１７は、図８と同様に各気筒毎に複数サイクルに渡って推定図示トルクＴｉを算出した結果を示している。なお、以下の説明では、ローター３９のエッジ位置に角度誤差が生じていない場合に算出された推定図示トルクＴｉに基づいて燃焼に異常が生じている気筒を判定することとするが、実施の形態１，２の方法でローター３９の角度誤差による変動を補正した推定図示トルクＴｉを用いて異常気筒を判定することも勿論可能である。
【０１６１】
図１７の例では、＃３気筒の推定図示トルクＴｉが＃１、＃２、＃４の推定図示トルクＴｉに比べて低下しており、＃３気筒に何らかの異常が生じていると想定できる。このような異常は、例えば燃料噴射弁３０の不良に起因して生じる。また、可変動弁機構を有する機関では、小バルブリフト時にバルブデポ付着が筒内への空気、燃料の流入量に与える影響によって異常が生じる場合もある。実施の形態４では、このような場合に異常が発生している気筒の推定図示トルクＴｉが正常な値となるように燃焼状態を回復させる処理を行う。なお、定常運転時に図１７の図示トルク特性を求めることで、異常気筒を精度良く検出することができ、各気筒の燃焼バラツキを抑制するための燃焼状態回復処理の精度を向上させることができる。
【０１６２】
具体的には、点火時期の変更、燃料噴射量の変更、燃料噴射時期の変更等の方法により、異常気筒の燃焼状態を回復させる処理を行う。これにより、異常気筒の燃焼劣化の程度が低い場合は、燃焼状態を回復させることができる。一方、燃焼状態が回復できない場合は、警告を発してドライバーへ異常が発生していることを伝える。これにより、ドライバーは運転を停止するなどの適切な処理を行うことができる。
【０１６３】
図１８は、実施の形態４にかかる燃焼状態推定装置の処理手順を示すフローチャートである。先ず、ステップＳ４１では、（１）式から各気筒の爆発行程毎に推定図示トルクＴｉ（ｋ）を算出し、各気筒毎にｎサイクルの推定図示トルクＴｉ＿＃１〜Ｔｉ＿＃４を算出する。実施の形態１，２で説明した方法でローター３９の角度誤差による変動を補正する場合は、この時点で算出された推定図示トルクＴｉを補正しておくことが好適である。次のステップＳ４２では、ステップＳ４１で求めたｎサイクルの推定図示トルクＴｉ＿＃１〜Ｔｉ＿＃４を各気筒毎に平均してＴｉ＿＃１（平均値），Ｔｉ＿＃２（平均値），Ｔｉ＿＃３（平均値），Ｔｉ＿＃４（平均値）を算出する。
【０１６４】
次のステップＳ４３では、運転条件が成立しているか否かを判定する。ここでは、運転条件が定常状態であり、かつ無負荷の状態（アイドリング状態）であるか否かを判別する。運転条件が成立している場合はステップＳ４４へ進む。運転条件が成立していない場合は終了する（END）。
【０１６５】
次のステップＳ４４では、ステップＳ４２で求めた推定図示トルクＴｉ＿＃１（平均値）〜Ｔｉ＿＃４（平均値）の平均値に基づいて、燃焼に異常が生じている気筒の有無を判定する。具体的には、ステップＳ４４では、以下の（Ｅ），（Ｆ）の全ての条件が成立するか否かを判定する。
（Ｅ）Ｔｉ＿＃ａ（平均値）＞Ｔｉ＿＃ｂ（平均値）＞Ｔｉ＿＃ｃ（平均値）＞Ｔｉ＿＃ｄ（平均値）
ここで、Ｔｉ＿＃ａ（平均値）〜Ｔｉ＿＃ｄ（平均値）は、Ｔｉ＿＃１（平均値）〜Ｔｉ＿＃４（平均値）のいずれかである。すなわち、ここでは、Ｔｉ＿＃１（平均値）〜Ｔｉ＿＃４（平均値）を大きい順に並べる処理を行う。
（Ｆ）Ｔｉ＿＃ｃ（平均値）−Ｔｉ＿＃ｄ（平均値）＝ΔＴｔｈ＞ｅｃ
ここで、Ｔｉ＿＃ｃ（平均値）は、上記（Ｅ）で大きい順に並べたトルクのうち３番目に大きいトルクであり、Ｔｉ＿＃ｄ（平均値）は、最も小さいトルクである。すなわち、ここではＴｉ＿＃１（平均値）〜Ｔｉ＿＃４（平均値）のうち、３番目に大きいトルクと最も小さいトルクとの差が所定のしきい値ｅｃより大きいか否かを判定する。
【０１６６】
上記（Ｅ），（Ｆ）の条件が共に成立する場合は、最も推定図示トルクが小さい気筒の燃焼状態が悪化していると判断できる。従って、この場合はステップＳ４４からステップＳ４５へ進む。一方、上記（Ｅ），（Ｆ）の条件が共に成立していない場合は、燃焼に異常が生じている気筒がないと判断し、処理を終了する(END)。
【０１６７】
次のステップＳ４５では、現時点における異常気筒判定のカウンタＣの値が予め定められたしきい値Ｃｔｈ未満であるか否かを判定する。なお、カウンタＣの値はイグニッションスイッチをオフにした時に初期化（Ｃ＝１）される。
【０１６８】
ステップＳ４５でカウンタＣの値がしきい値Ｃｔｈ未満の場合は、ステップＳ４６へ進み、異常気筒の燃焼を回復させる手段を実施する。上述したように、ここでは点火時期の変更、燃料噴射量の変更、燃料噴射時期の変更等の方法により燃焼状態を回復させる。次のステップＳ４７では、現時点におけるカウンタＣの値に１を加算する。
【０１６９】
ステップＳ４５でカウンタＣの値がしきい値Ｃｔｈ以上の場合は、ステップＳ４８へ進む。この場合、既にカウンタＣの回数だけステップＳ４６の燃焼回復手段を実施したにも関わらず、燃焼状態が回復していないと判断できる。従って、ステップＳ４８ではフェイルモードに移行し、警告ランプ（MIL）を点灯する。これにより、ドライバーは運転を停止するなど適切な処置を行うことが可能となる。
【０１７０】
なお、図１８の処理において、ｎサイクルの推定図示トルクＴｉの平均値を算出する際に、各気筒毎に最小値を除いた状態で平均値を算出することで、偶発的な失火等に起因した推定図示トルクＴｉの変動を抑えることができ、異常気筒の誤判定を防止することができる。
【０１７１】
以上説明したように実施の形態４によれば、推定図示トルクＴｉに基づいて燃焼に異常が生じている気筒を特定することができる。そして、異常気筒に燃焼を回復させるための処置を施すことにより、異常気筒の燃焼状態を回復させることができ、各気筒の推定図示トルクＴｉを均一にすることが可能となる。また、異常気筒の燃焼状態を回復させることが困難な場合は、警告を発することにより、ドライバーに対し運転を停止するなど適切な処置をとらせることが可能となる。更に、推定図示トルクＴｉに基づいて異常気筒を特定することができるため、内燃機関１０に筒内圧センサを実装する必要がなく、製造コストを低減させることができる。
【０１７２】
なお、実施の形態４において、推定図示トルクＴｉの精度が保証されていない場合、例えばローター３９の角度誤差の補正が未実施である場合等は、異常気筒の判定を禁止するように処理を行ってもよい。
【０１７３】
実施の形態５．
次に、本発明の実施の形態５について説明する。実施の形態５は、ローター３９に角度誤差が生じている場合に、角度誤差を求めてその値を記憶し、以降に算出した推定図示トルクＴｉを角度誤差に応じて補正するものである。
【０１７４】
実施の形態５では、筒内圧センサ４４を複数の気筒に設けている。具体的には、爆発行程が連続して行われる＃１気筒と＃３気筒に筒内圧センサ４４を設けている。従って、＃１気筒と＃３気筒において、実測図示トルクＴｉ＿ｃｐｓを算出できる。
【０１７５】
図１９は、算出した推定図示トルクＴｉ（ｋ）（＝Ｔｇａｓ（ｋ））および実測図示トルクＴｉ＿ｃｐｓと、各気筒の各行程との関係を示す模式図である。図５と同様に、内燃機関１０が＃１〜＃４の４気筒で構成される場合、クランク軸３６の１８０°回転毎に＃１、＃３、＃４、＃２の順で爆発行程が行われ、爆発行程毎、すなわちクランク角１８０°毎に推定図示トルクＴｉを順次算出することができる。
【０１７６】
図１９に示すように、筒内圧センサ４４を＃１および＃３の気筒に取り付けた場合、＃１の吸気、圧縮、爆発、排気の４行程（１サイクル）から実測図示トルクＴｉ＿ｃｐｓ（ｋ）が求まり、また＃３の吸気、圧縮、爆発、排気の４行程（１サイクル）から実測図示トルクＴｉ＿ｃｐｓ（ｋ＋１）が求まる。図１９では、実測図示トルクＴｉ＿ｃｐｓ（ｋ）を算出した行程を破線で囲んだ領域Ｃとして示し、実測図示トルクＴｉ＿ｃｐｓ（ｋ＋１）を算出した行程を破線で囲んだ領域Ｄとして示している。また、推定図示トルクＴｉ（ｋ）を算出した行程を一点鎖線で囲んだ領域Ｅとして示し、推定図示トルクＴｉ（ｋ）を算出した行程を一点鎖線で囲んだ領域Ｆとして示している。ここで、実測図示トルクＴｉ＿ｃｐｓ（ｋ）は推定図示トルクＴｉ（ｋ）に対応したトルクであって、双方のトルクの爆発行程は共通である。また、実測図示トルクＴｉ＿ｃｐｓ（ｋ＋１）は推定図示トルクＴｉ（ｋ＋１）に対応したトルクであって、双方のトルクの爆発行程は共通である。
【０１７７】
実測図示トルクＴｉ＿ｃｐｓ（ｋ）は、ローター３９の角度誤差による影響を受けることはない。従って、ローター３９に角度誤差が生じていない場合、爆発行程を共通にするＴｉ＿ｃｐｓ（ｋ）とＴｉ（ｋ）の値は略等しくなる。同様に、ローター３９に角度誤差が生じていない場合、爆発行程を共通にするＴｉ＿ｃｐｓ（ｋ＋１）とＴｉ（ｋ＋１）の値も略等しくなる。ローター３９に角度誤差が生じていない場合、Ｔｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）とＴｉ（ｋ），Ｔｉ（ｋ＋１）の爆発行程をそれぞれ共通とすることで、爆発行程毎の燃焼にバラツキが生じている場合であっても、Ｔｉ＿ｃｐｓ（ｋ）とＴｉ（ｋ）は略等しくなり、またＴｉ＿ｃｐｓ（ｋ＋１）とＴｉ（ｋ＋１）も略等しくなる。
【０１７８】
また、ローター３９に角度誤差Δｅ１，Δｅ２が含まれる場合であっても、Δｅ１，Δｅ２による変動を考慮した上で推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）を算出すれば、Ｔｉ＿ｃｐｓ（ｋ）とＴｉ（ｋ）は略等しくなり、Ｔｉ＿ｃｐｓ（ｋ＋１）とＴｉ（ｋ＋１）も略等しくなる。従って、Δｅ１，Δｅ２による変動を考慮して、Δｅ１，Δｅ２の項を含む状態で推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）を算出すれば、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）と実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）のそれぞれを等しいとおくことができ、実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）の値に基づいてΔｅ１，Δｅ２を算出することができる。
【０１７９】
以下、Δｅ１，Δｅ２の算出方法を詳細に説明する。ローター３９にΔｅ１，Δｅ２のエッジ角度位置誤差が生じている場合、＃１の爆発行程が開始するクランク角位置（ＴＤＣ）でローター３９の設計値のエッジ位置に基づいて算出される角速度ω０’（ｋ）は（３）式と同様にして算出され、Δｅ１による誤差分を含むものとなる。同様に、＃３の爆発行程が開始するクランク角位置（ＴＤＣ）でローター３９の設計値のエッジ位置に基づいて算出される角速度ω０’（ｋ＋１）もΔｅ２による誤差分を含むものとなる。また、＃３気筒の爆発行程が完了したクランク角位置（ＢＤＣ）でローター３９の設計値のエッジ位置に基づいて算出される角速度ω０’（ｋ＋２）はΔｅ１による誤差分を含むものとなる。
【０１８０】
＃１の爆発行程によるクランク角１８０°区間の推定図示トルクＴｉ（ｋ）は、角速度ω０’（ｋ＋１）及び角速度ω０’（ｋ）に基づいて以下の（７）式から算出される。また、＃３の爆発行程によるクランク角１８０°区間の推定図示トルクＴｉ（ｋ＋１）は、角速度ω０’（ｋ＋２）及び角速度ω０’（ｋ＋１）に基づいて以下の（８）式から算出される。（７）式、（８）式において、ω０’（ｋ），ω０’（ｋ＋１），ω０’（ｋ＋２）は、ローター３９の設計値のエッジ位置に基づいて算出されているため、角度誤差Δｅ１，Δｅ２による誤差分が含まれている。
【０１８１】
【数４】
2005061371.tif 000006
【０１８２】
一方、実施の形態３で説明したように、実測図示トルクＴｉ＿ｃｐｓは（６）式から算出することができ、角度誤差Δｅ１，Δｅ２による影響を受けることなく算出される。従って、実測図示トルクＴｉ＿ｃｐｓ（ｋ）は、角度誤差Δｅ１，Δｅ２を考慮して算出した場合の推定図示トルクＴｉ（ｋ）と等しくなるため、以下の（９）式の関係が成立する。同様に、実測図示トルクＴｉ＿ｃｐｓ（ｋ＋１）は、角度誤差Δｅ１，Δｅ２を考慮して算出した推定図示トルクＴｉ（ｋ＋１）と等しくなるため、以下の（１０）式の関係が成立する。（９）式、（１０）式の右辺は、角度誤差Δｅ１，Δｅ２を考慮して算出した場合の推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）をそれぞれ示しており、ω０（ｋ），ω０（ｋ＋１），ω０（ｋ＋２）は、角度誤差Δｅ１，Δｅ２を考慮して算出した場合の角速度である。これらの角速度は、（４）式と同様にして算出される。
【０１８３】
【数５】
2005061371.tif 000007
【０１８４】
（７）式、（８）式において、ｔ’（ｋ），ｔ’（ｋ＋１）は、ローター３９のエッジ位置が設計値で形成されているとした場合に、ローター３９が１８０°回転する際に要する時間である。また、（９）式、（１０）式において、ｔ（ｋ），ｔ（ｋ＋１）は、角度誤差Δｅ１，Δｅ２が生じているローター３９が１８０°回転する際に要する時間である。ここで、角度誤差Δｅ１，Δｅ２に起因するｔ（ｋ），ｔ（ｋ＋１）の変動は微小であるため、（７）式、（８）式において、ｔ’（ｋ）＝ｔ（ｋ）、ｔ’（ｋ＋１）＝ｔ（ｋ＋１）することができる。
【０１８５】
そして、（９）式から（７）式を辺々減算すると、Ｔｆ（ｋ）が消去されて以下の（１１）式が得られる。同様に、（１０）式から（８）式を辺々減算すると、Ｔｆ（ｋ＋１）が消去されて以下の（１２）式が得られる。
【０１８６】
【数６】
2005061371.tif 000008
【０１８７】
（１１）式、（１２）式の右辺におけるω０（ｋ＋１）−ω０’（ｋ＋１）をΔω０（ｋ＋１）とおくと、＃１がＴＤＣの位置にあるときのローター３９の誤差はΔｅ１であり、＃１がＢＤＣの位置にあるときのローター３９の誤差はΔｅ２であるため、（５）式と同様の演算によりΔω０（ｋ＋１）は以下の（１３）式で表すことができる。同様に、（１１）式の右辺におけるω０（ｋ）−ω０’（ｋ）をΔω０（ｋ）とおくと、Δω０（ｋ）は以下の（１４）式で表すことができ、（１２）式の右辺におけるω０（ｋ＋２）−ω０’（ｋ＋２）をΔω０（ｋ＋２）とおくと、Δω０（ｋ＋２）は以下の（１５）式で表すことができる。
【０１８８】
【数７】
2005061371.tif 000009
【０１８９】
（１３）式において、Δｔ（ｋ＋１）は、ローターが角度θ、またはθ＋Δｅ２だけ回転する際に要する時間である。Δｅ１，Δｅ２に起因するΔｔ（ｋ＋１）の変動は微小であるため、（１３）式において、ローターが角度θ、またはθ＋Δｅ２だけ回転する際に要する時間は同じΔｔ（ｋ＋１）とおくことができる。同様に、（１４）式、（１５）式において、Δｔ（ｋ）、Δｔ（ｋ＋２）は、ローターが角度θ、またはθ＋Δｅ１だけ回転する際に要する時間であり、ローターが角度θ、またはθ＋Δｅ１だけ回転する際に要する時間は同じΔｔ（ｋ）またはΔｔ（ｋ＋２）とおくことができる。
【０１９０】
（１１）式、（１２）式に（１３）式〜（１５）式を代入すると、以下の（１６）式、（１７）式が得られる。
【０１９１】
【数８】
2005061371.tif 000010
【０１９２】
（１６）式、（１７）式において、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）は（１）式から算出することができ、実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）は（６）式から算出することができる。また、ｔ（ｋ），ｔ（ｋ＋１），Δｔ（ｋ），Δｔ（ｋ＋１），Δｔ（ｋ＋２）はクランク角センサ４４から検出できる。従って、（１６）式、（１７）式を連立方程式として解くことで、ローター３９の角度誤差Δｅ１，Δｅ２を算出することが可能となる。そして、以降に算出される推定図示トルクをΔｅ１，Δｅ２を用いて補正することで、以後の図示トルクＴｉの算出精度を格段に向上させることが可能となる。
【０１９３】
次に、図２０のフローチャートに基づいて、実施の形態５にかかる燃焼状態推定装置における処理の手順を説明する。先ず、ステップＳ５１では、推定図示トルクＴｉを補正する運転条件が成立しているか否かを判定する。運転条件が成立している場合はステップＳ５２へ進み、運転条件が成立していない場合は終了する(END)。
【０１９４】
次のステップＳ５２では、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）が算出済みであるか否かを判定する。推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）が算出されている場合はステップＳ５５へ進み、算出されていない場合はステップＳ５３へ進む。
【０１９５】
ステップＳ５３では、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）の算出タイミングであるか否かを判定する。推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）の算出タイミングの場合は、ステップＳ５４へ進み、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）を算出する。一方、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）の算出タイミングでない場合は終了する（END）。
【０１９６】
ステップＳ５４では、実施の形態１で説明した図１０と同様の処理を行い、推定図示トルクＴｉ（ｋ），Ｔｉ（ｋ＋１）を算出する。次のステップＳ５５では、実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）の算出タイミングであるか否かを判定する。実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）の算出タイミングである場合は、ステップＳ５６へ進み、（６）式から実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）を算出する。一方、ステップＳ５５で実測図示トルクＴｉ＿ｃｐｓ（ｋ），Ｔｉ＿ｃｐｓ（ｋ＋１）の算出タイミングでない場合は、処理を終了する（END）。
【０１９７】
ステップＳ５６の後、ステップＳ５７では、（１６）式、（１７）式に基づいてローター３９の角度誤差Δｅ１，Δｅ２を算出する。次のステップＳ５８は、ステップＳ５７で算出した角度誤差Δｅ１，Δｅ２をメモリに格納する。
【０１９８】
図２０の処理によれば、（１６）式、（１７）式からローター３９の角度誤差Δｅ１，Δｅ２を算出することができるため、Δｅ１，Δｅ２を用いて以後に算出した推定図示トルクＴｉを補正することが可能となる。
【０１９９】
この際、クランク軸３６の角速度の真の値ω０（ｋ），ω０（ｋ＋１）は、（４）式と同様に以下の式から算出できる。
ω０（ｋ）＝（（θ＋Δｅ１）／Δｔ（ｋ））・（π／１８０）
ω０（ｋ＋１）＝（（θ＋Δｅ２）／Δｔ（ｋ＋１））・（π／１８０）
従って、上式に図２０の処理から算出したΔｅ１，Δｅ２を代入して真の角速度ω０（ｋ），ω０（ｋ＋１）を算出し、ω０（ｋ），ω０（ｋ＋１）を用いて推定図示トルクＴｉを算出することで、角度誤差Δｅ１，Δｅ２により補正された推定図示トルクＴｉを算出することができる。
【０２００】
以上説明したように実施の形態５によれば、推定図示トルクＴｉと実測図示トルクＴｉ＿ｃｐｓの算出値とに基づいて、ローター３９の角度誤差Δｅ１，Δｅ２を算出することが可能となる。従って、Δｅ１，Δｅ２を用いて推定図示トルクＴｉを補正することが可能となり、ローター３９の角度誤差Δｅ１，Δｅ２による影響を排除して推定図示トルクＴｉを正確に算出することが可能となる。
【０２０１】
なお、４気筒以外の内燃機関を含めたＮ気筒の内燃機関を考えた場合、推定図示トルクＴｉの算出区間、すなわち爆発行程が行われるクランク角の区間は７２０°／Ｎとなる。この場合、７２０°／Ｎの区間の両端でローター３９の角度誤差が検出されるため、４気筒よりも多気筒の機関ではより多くの角度誤差Δｅ１，Δｅ２，Δｅ３・・・を算出する必要がある。この場合、クランク軸が１回転する間にはＮ／２回の爆発行程が行われるため、筒内圧センサ４４を連続して爆発行程が行われるＮ／２個の気筒に設けることにより、クランク軸が１回転する間にＮ／２回の実測図示トルクＴｉ＿ｃｐｓを算出することができる。そして、上述した方法と同様に、爆発行程を共通にする実測図示トルクＴｉ＿ｃｐｓと推定図示トルクＴｉとを対応させ、Ｎ／２個の式を連立方程式として解くことにより、角度誤差Δｅ１，Δｅ２，Δｅ３・・・を算出することができる。
【０２０２】
また、実施の形態５では、（１６）式、（１７）式の演算から角度誤差Δｅ１，Δｅ２を算出しているが、角度誤差Δｅ１，Δｅ２の算出を複数回行って、その平均値を求めてもよい。これにより、角度誤差Δｅ１，Δｅ２の算出精度を高めることが可能となる。
【０２０３】
また、クランキング時など燃焼によるトルクが発生していない状態で推定図示トルクＴｉ、実測図示トルクＴｉ＿ｃｐｓを算出しても良い。この場合、筒内で燃焼が発生していないため、Ｔｉ（ｋ）とＴｉ＿ｃｐｓ（ｋ＋１）の爆発行程を共通に設定しなくてもよい。
【図面の簡単な説明】
【０２０４】
【図１】本発明の実施の形態１〜５にかかる内燃機関の制御装置及びその周辺の構造を説明するための模式図である。
【図２】図示トルク、筒内ガス圧によるトルク及び往復慣性質量による慣性トルクと、クランク角との関係を示す特性図である。
【図３】クランク軸の角加速度を求める方法を示す模式図である。
【図４】フリクショントルクと機関回転数及び冷却水温との関係を表すマップを示す模式図である。
【図５】推定図示トルクと各気筒の各行程との関係を示す模式図である。
【図６】クランク軸、クランク角センサ、およびローターの位置関係を示す模式図である。
【図７】ローターのエッジの角度誤差が角加速度に与える影響を説明するための模式図である。
【図８】ローターに角度誤差Δｅ１，Δｅ２が生じている場合に算出された各気筒の推定図示トルクＴｉを示す特性図である。
【図９】推定図示トルクの補正値ΔＴ／２を取得する処理の手順を示すフローチャートである。
【図１０】推定図示トルクを算出する処理の手順を示すフローチャートである。
【図１１】単気筒、６気筒の場合のトルク特性を示す特性図である。
【図１２】推定図示トルクおよび実測図示トルクと、各気筒の各行程との関係を示す模式図である。
【図１３】ローターに角度誤差Δｅ１，Δｅ２が生じている場合に算出された各気筒の推定図示トルクと、＃１気筒の実測図示トルクを示す特性図である。
【図１４】実施の形態２における処理手順を示すフローチャートである。
【図１５】クランク角３６０°の区間毎に推定図示トルクを算出する場合の算出タイミングを示す模式図である。
【図１６】実施の形態３における処理手順を示すフローチャートである。
【図１７】燃焼状態に異常が生じている気筒が存在する場合の各気筒の推定図示トルクを示す特性図である。
【図１８】実施の形態４における処理手順を示すフローチャートである。
【図１９】実施の形態５において、推定図示トルクおよび実測図示トルクと、各気筒の各行程との関係を示す模式図である。
【図２０】実施の形態５における処理手順を示すフローチャートである。
【符号の説明】
【０２０５】
３６  クランク軸
３８  クランク角センサ
３９  ローター
４４  筒内圧センサ
４０  ＥＣＵ
【図１】
2005061371.tif 000011
【図２】
2005061371.tif 000012
【図３】
2005061371.tif 000013
【図４】
2005061371.tif 000014
【図５】
2005061371.tif 000015
【図６】
2005061371.tif 000016
【図７】
2005061371.tif 000017
【図８】
2005061371.tif 000018
【図９】
2005061371.tif 000019
【図１０】
2005061371.tif 000020
【図１１】
2005061371.tif 000021
【図１２】
2005061371.tif 000022
【図１３】
2005061371.tif 000023
【図１４】
2005061371.tif 000024
【図１５】
2005061371.tif 000025
【図１６】
2005061371.tif 000026
【図１７】
2005061371.tif 000027
【図１８】
2005061371.tif 000028
【図１９】
2005061371.tif 000029
【図２０】
2005061371.tif 000030