(57)【要約】【課題】この発明は、内燃機関の停止位置制御装置に関し、内燃機関の停止および再始動を自動的に行う制御が適用された内燃機関において、クランク停止位置を精度よく推定することを目的とする。【解決手段】クランク軸周りの運動方程式演算部６２と、フリクションモデル６４と、吸気圧力推定モデル６６と、筒内圧推定モデル６８と、燃焼波形算出部７０と、大気圧補正項算出部７２と、大気温補正項算出部７４とを含むエンジンモデル６０を構築する。燃焼カットの実行時に、エンジンモデル６０により算出されるクランク停止位置の推定値と、クランク停止位置の実測値とに基づいて、フリクションモデル６４を学習更新する。【選択図】図２
2007211684.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の停止位置制御装置であって、
内燃機関のフリクションを算出するフリクションモデルを備え、
算出されたフリクションに基づいてクランク停止位置を補正することを特徴とする内燃機関の停止位置制御装置。
【請求項２】
内燃機関の燃焼を停止する燃焼カット回転数を制御することによりクランク停止位置を制御する内燃機関の停止位置制御装置であって、
前記フリクションを含む所定のパラメータに基づいて前記クランク停止位置の推定値を算出するクランク停止位置算出手段を更に備え、
前記クランク停止位置算出手段は、前記フリクションモデルにより算出されたフリクションに基づいて、前記クランク停止位置の推定値を補正することを特徴とする請求項１記載の内燃機関の停止位置制御装置。
【請求項３】
前記クランク停止位置を判定するクランク停止位置判定手段を更に備え、
前記クランク停止位置が所定の誤差範囲外であると判定された場合に、前記クランク停止位置の推定値と前記クランク停止位置の実測値との偏差に基づいて、前記フリクションモデルを学習更新することを特徴とする請求項２記載の内燃機関の停止位置制御装置。
【請求項４】
内燃機関の燃焼を停止する燃焼カット回転数を制御することによりクランク停止位置を制御する内燃機関の停止位置制御装置であって、
前記フリクションを含む所定のパラメータに基づいて前記燃焼カット回転数の目標値を算出する目標燃焼カット回転数算出手段を更に備え、
前記目標燃焼カット回転数算出手段は、前記フリクションモデルにより算出されたフリクションに基づいて、前記目標値を補正することを特徴とする請求項１記載の内燃機関の停止位置制御装置。
【請求項５】
冷却水温度と潤滑油温度との乖離を判定する温度乖離判定手段と、
前記の温度乖離に対応するフリクション誤差を算出するフリクション誤差算出手段とを更に備え、
前記冷却水温度と前記潤滑油温度とが乖離していると判定された場合に、前記フリクション誤差に基づいて前記フリクションモデルを補正することを特徴とする請求項１乃至４の何れか１項記載の内燃機関の停止位置制御装置。
【請求項６】
前記温度乖離判定手段によって前記冷却水温度と前記潤滑油温度とが乖離していると判定された場合に、前記クランク停止位置制御を禁止することを特徴とする請求項５記載の内燃機関の停止位置制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、内燃機関の停止位置制御装置に係り、特に、車両が一時的に停止した際に、内燃機関の停止および再始動を自動的に行う制御が適用された内燃機関を制御する装置として好適な内燃機関の停止位置制御装置に関する。
【背景技術】
【０００２】
従来、例えば特許文献１には、車両が一時的に停止した際に、内燃機関の停止および再始動を自動的に行う制御（エコラン制御）を実行するエンジンの始動装置が開示されている。この従来の装置は、次回の再始動を円滑に行えるようにすべく、燃料供給を停止するエンジン回転数を制御することにより、内燃機関の自動停止時のピストン停止位置（クランク停止位置）の適正化を図るというものである。
【０００３】
また、特許文献２には、内燃機関とモータとで車両を駆動するハイブリッド車両の車両駆動制御装置が開示されている。この従来の装置は、内燃機関を目標停止位置で停止させるために必要なエンジン目標回転速度（燃焼カット回転数）を、クランク角度の検出値（実クランク角度）に基づいて補正を行うというものである。この特許文献２には、上記の補正を行うことにより、例えば、内燃機関の内部のフリクションにばらつきがあったり、潤滑用及び冷却用の油の温度または粘性にばらつきがあったりしても、内燃機関を目標停止位置で停止することができる旨が記載されている。
【０００４】
【特許文献１】特開２００４−２９３４４４号公報
【特許文献２】特開２００５−１６５０５号公報
【特許文献３】特開平２−３０５３４２号公報
【特許文献４】特開昭５８−１８５３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
内燃機関を自動的に停止する際に、クランク停止位置が目標停止位置からずれる要因としては、上述したフリクションのばらつき等の複数の要因が考えられる。しかしながら、上記特許文献１では、そのようなクランク停止位置の複数のずれ要因について考慮がなされていない。また、上記特許文献２によれば、当該ずれ要因についての考慮がなされているものの、様々な要因をひとまとめとして目標停止位置の補正が行われるととなるため、クランク停止位置制御の精度や収束性が悪いと考えられる。
【０００６】
この発明は、上述のような課題を解決するためになされたもので、内燃機関の停止および再始動を自動的に行う制御が適用された内燃機関において、クランク停止位置を精度よく推定し得る内燃機関の停止位置制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
第１の発明は、内燃機関の停止位置制御装置であって、
内燃機関のフリクションを算出するフリクションモデルを備え、
算出されたフリクションに基づいてクランク停止位置を補正することを特徴とする。
【０００８】
また、第２の発明は、第１の発明において、内燃機関の燃焼を停止する燃焼カット回転数を制御することによりクランク停止位置を制御する内燃機関の停止位置制御装置であって、
前記フリクションを含む所定のパラメータに基づいて前記クランク停止位置の推定値を算出するクランク停止位置算出手段を更に備え、
前記クランク停止位置算出手段は、前記フリクションモデルにより算出されたフリクションに基づいて、前記クランク停止位置の推定値を補正することを特徴とする。
【０００９】
また、第３の発明は、第２の発明において、前記クランク停止位置を判定するクランク停止位置判定手段を更に備え、
前記クランク停止位置が所定の誤差範囲外であると判定された場合に、前記クランク停止位置の推定値と前記クランク停止位置の実測値との偏差に基づいて、前記フリクションモデルを学習更新することを特徴とする。
【００１０】
また、第４の発明は、第１の発明において、内燃機関の燃焼を停止する燃焼カット回転数を制御することによりクランク停止位置を制御する内燃機関の停止位置制御装置であって、
内燃機関のフリクションを算出するフリクションモデルと、
前記フリクションを含む所定のパラメータに基づいて前記燃焼カット回転数の目標値を算出する目標燃焼カット回転数算出手段とを備え、
前記目標燃焼カット回転数算出手段は、前記フリクションモデルにより算出されたフリクションに基づいて、前記目標値を補正することを特徴とする。
【００１１】
また、第５の発明は、第１乃至第４の発明の何れかにおいて、冷却水温度と潤滑油温度との乖離を判定する温度乖離判定手段と、
前記の温度乖離に対応するフリクション誤差を算出するフリクション誤差算出手段とを更に備え、
前記冷却水温度と前記潤滑油温度とが乖離していると判定された場合に、前記フリクション誤差に基づいて前記フリクションモデルを補正することを特徴とする。
【００１２】
また、第６の発明は、第５の発明において、前記温度乖離判定手段によって前記冷却水温度と前記潤滑油温度とが乖離していると判定された場合に、前記クランク停止位置制御を禁止することを特徴とする。
【発明の効果】
【００１３】
第１の発明によれば、クランク停止位置の精度に影響する要因ごとの影響を個別に考慮することができるので、クランク停止位置を精度良く制御することができる。
【００１４】
第２の発明によれば、クランク停止位置の精度に影響する要因ごとの影響が個別に考慮されたクランク停止位置の推定値を得ることができるので、効率の良い演算が可能な停止位置制御装置を得ることができる。
【００１５】
第３の発明によれば、クランク停止位置に大きく影響するフリクションの影響のみを学習更新することができるので、クランク停止位置の推定精度の向上と、効率の良い演算を実現することができる。
【００１６】
第４の発明によれば、クランク停止位置の精度に影響する要因ごとの影響が個別に考慮された燃焼カット回転数の目標値を得ることができるので、効率の良い演算が可能な停止位置制御装置を得ることができる。
【００１７】
第５の発明によれば、フリクションが冷却水温度および潤滑油温度の影響を受けることを考慮することができるので、クランク停止位置をより正確に推定することができる。
【００１８】
第６の発明によれば、フリクションの推定が正確でないと認めれる場合には、クランク停止位置の制御が禁止されるので、クランク停止位置制御の良好な制御性を確保することができる。
【発明を実施するための最良の形態】
【００１９】
実施の形態１．
［実施の形態１の装置の構成］
図１は、本発明の実施の形態１の内燃機関の停止位置制御装置が適用された内燃機関１０の構成を説明するための図である。本実施形態のシステムは、内燃機関１０を備えている。ここでは、内燃機関１０は、直列４気筒型エンジンであるものとする。内燃機関１０の筒内には、ピストン１２が設けられている。ピストン１２は、コンロッド１４を介してクランク軸１６と連結されている。また、内燃機関１０の筒内には、ピストン１２の頂部側に燃焼室１８が形成されている。燃焼室１８には、吸気通路２０および排気通路２２が連通している。
【００２０】
吸気通路２０には、スロットルバルブ２４が設けられている。スロットルバルブ２４は、アクセル開度と独立してスロットル開度を制御することのできる電子制御式スロットルバルブである。スロットルバルブ２４の近傍には、スロットル開度TAを検出するスロットルポジションセンサ２６が配置されている。スロットルバルブ２４の下流には、内燃機関１０の吸気ポートに燃料を噴射するための燃料噴射弁２８が配置されている。また、内燃機関が備えるシリンダヘッドには、気筒毎に、燃焼室１８の頂部から燃焼室１８内に突出するように点火プラグ３０がそれぞれ取り付けられている。吸気ポートおよび排気ポートには、それぞれ、燃焼室１８と吸気通路２０、或いは燃焼室１８と排気通路２２を導通状態または遮断状態とするための吸気弁３２および排気弁３４が設けられている。
【００２１】
吸気弁３２および排気弁３４は、それぞれ吸気可変動弁（VVT）機構３６および排気可変動弁（VVT）機構３８により駆動される。可変動弁機構３６、３８は、それぞれ、クランク軸の回転と同期して吸気弁３２および排気弁３４を開閉させると共に、それらの開弁特性（開弁時期、作用角、リフト量など）を変更することができる。
【００２２】
内燃機関１０は、クランク軸の近傍にクランク角センサ４０を備えている。クランク角センサ４０は、クランク軸が所定回転角だけ回転する毎に、Hi出力とLo出力を反転させるセンサである。クランク角センサ４０の出力によれば、クランク軸の回転位置やその回転速度（エンジン回転数Ne）を検知することができる。また、内燃機関１０は、吸気カム軸の近傍にカム角センサ４２を備えている。カム角センサ４２は、クランク角センサ４０と同様の構成を有するセンサである。カム角センサ４２の出力によれば、吸気カム軸の回転位置（進角量）などを検知することができる。
【００２３】
図１に示すシステムは、ECU(Electronic Control Unit)５０を備えている。ECU５０には、上述した各種センサに加え、排気通路２２内の排気空燃比を検出するための空燃比センサ５２や内燃機関１０の冷却水温度を検出するための水温センサ５４が接続されている。また、ECU５０には、上述した各種アクチュエータが接続されている。ECU５０は、それらのセンサ出力、およびECU５０内に仮想的に構成されたエンジンモデル６０を用いた演算結果に基づいて、内燃機関１０の運転状態を制御することができる。
【００２４】
［エンジンモデルの概要］
図２は、図１に示すECU５０が備えるエンジンモデル６０の構成を示すブロック図である。図２に示すように、エンジンモデル６０は、クランク軸周りの運動方程式演算部６２と、フリクションモデル６４と、吸気圧力推定モデル６６と、筒内圧推定モデル６８と、燃焼波形算出部７０と、大気圧補正項算出部７２と、大気温補正項算出部７４とを含んでいる。以下、これらの各部の詳細な構成について説明を行う。
【００２５】
（１）クランク軸周りの運動方程式演算部について
クランク軸周りの運動方程式演算部６２は、クランク角度θおよびエンジン回転数Ne（クランク角回転速度dθ/dt）のそれぞれの推定値を求めるためのものである。クランク軸周りの運動方程式演算部６２は、筒内圧推定モデル６８または燃焼波形算出部７０から内燃機関１０の筒内圧力Pの入力を受け、演算開始時には、更に、初期クランク角度θ0および初期エンジン回転数Ne0の入力を受ける。
【００２６】
クランク軸周りの運動方程式演算部６２によって算出される推定クランク角度θおよび推定エンジン回転数Neは、図２に示すPIDコントローラ７６によって、実クランク角度θおよび実エンジン回転数Neとの偏差が無くなるようにフィードバック制御される。また、クランク軸周りの運動方程式演算部６２の演算結果には、フリクションモデル６４によって、内燃機関１０の内部のフリクションに関する影響が反映される。
【００２７】
次に、クランク軸周りの運動方程式演算部６２の内部で実行される具体的な演算内容について説明する。
図３は、クランク軸周りの各要素に付す記号を示す図である。図３に示すように、ここでは、筒内圧力Pを受けるピストン１２の頂部の表面積をAとする。コンロッド１４の長さをL、クランクの回転半径をrとする。そして、コンロッド１４のピストン取り付け点とクランク軸１６の軸中心とを結ぶ仮想線（シリンダの軸線）と、コンロッド１４の軸線とがなす角度をφ（以下、「コンロッド角度φ」と称する）とし、シリンダの軸線とクランクピン１７の軸線とがなす角度をθとする。
【００２８】
４つの気筒を有する内燃機関１０では、気筒間のクランク角度の位相差は180°CAであるため、それらの気筒間のクランク角度の関係は、次の（１ａ）式のように定義することができる。また、各気筒のクランク角回転速度dθ/dtは、それぞれ各気筒のクランク角度θの時間微分となるため、それぞれ次の（１ｂ）式のように表すことができる。
【数１】
2007211684.tif 000003
【００２９】
ただし、上記（１ａ）式および（１ｂ）式において、クランク角度θおよびクランク角回転速度dθ/dtに付された符号1〜4は、内燃機関１０の所定の爆発順序に従って燃焼が到来する気筒の順番に対応しており、また、後述する数式においては、それらの符号1〜4を「i」で代表させることがある。
【００３０】
また、図３に示すピストン・クランク機構においては、クランク角度θiとコンロッド角度φiとは、次の（２）式で表される関係を有することになる。
【数２】
2007211684.tif 000004
ただし、上記（２）式において、dXi/dtはピストン速度である。
【００３１】
また、クランク軸周りの全運動エネルギTは、次の（３）式のように表すことができる。（３）式を展開すると、（３）式中の各項の諸々のパラメータを1/2(dθ/dt)2の係数としてまとめることができる。ここでは、そのようにまとめられた係数を、クランク角度θの関数f(θ)として表現している。
【数３】
2007211684.tif 000005
【００３２】
ただし、上記（３）式において、右辺第１項はクランク軸１６の回転運動に関する運動エネルギに、右辺第２項はピストン１２およびコンロッド１４の直進運動に関する運動エネルギに、右辺第３項はコンロッド１４の回転運動に関する運動エネルギに、それぞれ対応している。また、上記（３）式において、Ikはクランク軸１６の軸周りの慣性モーメントであり、Iflはフライホイールの回転軸周りの慣性モーメントであり、Imiは内燃機関１０と組み合わされる変速機以下の回転部（すなわち、変速機、駆動軸、タイヤ等）の回転軸周りの慣性モーメントであり、Icはコンロッドに関する慣性モーメントである。また、mpはピストン１２の変位であり、mcはコンロッド１４の変位である。
【００３３】
次に、ラグラジアンLを、系の全運動エネルギTと位置エネルギUとの偏差として、次の（４ａ）式のように定義する。そして、クランク軸１６に作用する入力トルクをTRQとすると、ラグランジュの運動方程式を用いて、ラグラジアンLとクランク角度θと入力トルクTRQとの関係を、次の（４ｂ）式のように表すことができる。
【数４】
2007211684.tif 000006
【００３４】
ここで、上記（４ａ）式において、位置エネルギUの影響は運動エネルギTの影響に比して小さく、その影響を無視することができる。従って、上記（４ｂ）式の左辺第１項は、上記（３）式をクランク角回転速度(dθ/dt)で偏微分して得られた値を時間微分することで、クランク角度θの関数として、次の（４ｃ）式のように表すことができる。また、上記（４ｂ）式の左辺第２項は、上記（３）式をクランク角度θで偏微分することで、クランク角度θの関数として、次の（４ｄ）式のように表すことができる。
【００３５】
従って、上記（４ｂ）式は、次の（４ｅ）式のようにして表すことができ、これにより、クランク角度θと入力トルクTRQとの関係を得ることができる。また、ここでは、その入力トルクTRQを、次の（５）式のように、３つのパラメータからなるものと定義する。
【数５】
2007211684.tif 000007
【００３６】
ただし、上記（５）式において、TRQeは、エンジン発生トルクであり、より具体的には、ガス圧力（筒内圧力P）を受けるピストン１２からクランク軸１６に作用するトルクである。TRQLは、負荷トルクであり、内燃機関１０が搭載される車両の特性に応じて異なる既知の値として、ECU５０に記憶されている。TRQfは、フリクショントルク、すなわち、ピストン１２、クランク軸１６等の摺動部分の摩擦損失に対応するトルクである。このフリクショントルクTRQfは、フリクションモデル６４から得られる値である。
【００３７】
次に、エンジン発生トルクTRQeは、次の（６ａ）式〜（６ｃ）式に従って算出することができる。すなわち、先ず、筒内圧力Pに基づいてコンロッド１４に作用する力Fcは、ピストン１２の頂部に作用する力PAのコンロッド１４の軸線方向成分として、（６ａ）式のように表すことができる。そして、図３に示すようにコンロッド１４の軸線とクランクピン１７の軌跡の接線とがなす角度αが{π/2−(φ＋θ)}であるため、筒内圧力Pに基づいてクランクピン１７の軌跡の接線方向に作用する力Fkは、コンロッド１４に作用する力Fcを用いて、（６ｂ）式のように表すことができる。従って、エンジン発生トルクTRQeは、クランクピン１７の軌跡の接線方向に作用する力Fkとクランクの回転半径rとの積であるため、（６ａ）式および（６ｂ）式を用いて、（６ｃ）式のように表すことができる。
【数６】
2007211684.tif 000008
【００３８】
以上説明したクランク軸周りの運動方程式演算部６２の構成によれば、筒内圧推定モデル６８または燃焼波形算出部７０によって筒内圧力Pを取得することにより、（６ｃ）式および（５）式に従って入力トルクTRQを得ることができる。そして、（４ｅ）式を解くことにより、クランク角度θやクランク角回転速度dθ/dtを得ることが可能となる。
【００３９】
（２）フリクションモデルについて
図４は、図２に示すフリクションモデル６４がフリクショントルクTRQfを取得するために備えているフリクションマップの一例を示している。図４に示すフリクションマップでは、フリクショントルクTRQfを、エンジン回転数Neとエンジン冷却水温度との関係で定めている。このようなフリクションマップの特性は、予め実験等により定められたものであり、フリクショントルクTRQfは、エンジン冷却水温度が低くなると大きくなる傾向を有している。
【００４０】
尚、ここでは、ECU５０の計算負荷の低減のため、フリクションモデル６４として、上記のようなフリクションマップを備えるようにしているが、フリクションモデルの構成は、これに限定されるものではなく、以下の（７）式のような関係式を用いるものであってもよい。この（７）式では、フリクショントルクTRQfが、エンジン回転数Neと内燃機関１０の潤滑油の動粘度νとをパラメータとする関数となるように構成されている。
【数７】
2007211684.tif 000009
ただし、上記（７）式において、C1、C2、C3は、それぞれ実験等により適合される係数である。
【００４１】
（３）吸気圧力推定モデルについて
吸気圧力推定モデル６６は、吸気圧力を推定するための吸気圧マップ（図示省略）を備えている。この吸気圧マップは、吸気圧力を、スロットル開度TA、エンジン回転数Ne、および吸排気弁のバルブタイミングVVTとの関係で定めたものである。このような吸気圧力推定モデルの構成によれば、ECU５０の計算負荷を低く抑えつつ、吸気圧力を取得することができる。尚、詳細に吸気圧力を計算する場合には、上記のような吸気圧マップを用いずに、スロットルバルブ２４を通過する空気流量を推定するスロットルモデルと、吸気弁３２の周囲を通過する空気流量（すなわち、筒内吸入空気流量）を推定するバルブモデルとを用いて、吸気圧力推定モデルを構成するようにしてもよい。
【００４２】
（４）筒内圧推定モデル
筒内圧推定モデル６８は、燃焼が行われない状況下で、筒内圧力Pを算出するために用いられるモデルである。この筒内圧推定モデル６８では、内燃機関１０の各行程における筒内圧力Pを、次の（８ａ）式〜（８ｄ）式を用いて算出するようにしている。すなわち、先ず、吸気行程の経過中の筒内圧力Pは、（８ａ）式で示すように、上述した吸気圧力推定モデル６６が有する吸気圧マップから得られる筒内圧力のマップ値Pmapから得るようにしている。
【数８】
2007211684.tif 000010
【００４３】
次に、圧縮行程の経過中の筒内圧力Pは、気体の可逆断熱変化の式に基づいて、（８ｂ）式のように表すことができる。
ただし、上記（８ｂ）式において、VBDCはピストン１２が吸気下死点にあるときの行程容積Vであり、κは比熱比である。
【００４４】
また、膨張行程の経過中の筒内圧力Pについても、圧縮行程の場合と同様にして、（８ｃ）式のように表すことができる。
ただし、上記（８ｃ）式において、VTDCはピストン１２が圧縮上死点にあるときの行程容積Vであり、Pcは圧縮行程の終了時における筒内圧力である。
【００４５】
また、排気行程の経過中の筒内圧力Pは、(８ｄ)式で示すように、排気通路２２内の圧力Pexであるものとしている。この圧力Pexは、ほぼ大気圧力Pairに等しいとみなすことができるものである。従って、ここでは、大気圧力Pairを、排気行程の経過中の筒内圧力Pに使用している。
【００４６】
（５）燃焼波形算出部について
燃焼波形算出部７０は、圧縮行程の途中から膨張行程の途中までの燃焼が行われている期間における筒内圧力（燃焼圧力）Pを算出するために用いられるモデルである。この燃焼波形算出部７０では、Weibe関数を用いた関係式である（９ａ）式と、後述する（１０）式とを用いて、燃焼圧力Pの推定値が算出される。
【数９】
2007211684.tif 000011
【００４７】
より具体的には、燃焼波形算出部７０では、先ず、（９ａ）式を用いて、現在のクランク角度θに対応する熱発生率dQ/dθを算出することとしている。
ただし、上記（９ａ）式において、mは形状係数、kは燃焼効率、θbは着火遅れ期間、aは燃焼速度（ここでは固定値6.9）である。これらの各パラメータは、事前に適合された値が使用される。また、Qは発熱量である。
【００４８】
上記（９ａ）式を用いて熱発生率dQ/dθを算出するには、発熱量Qを算出する必要がある。発熱量Qは、微分方程式である（９ａ）式を解くことにより算出することができる。そのために、先ず、（９ｂ）式では、（９ａ）式におけるWeibe関数に相当する部分をg(θ)と置き換えている。そうすると、（９ａ）式を（９ｃ）式のように表すことが可能となる。次いで、（９ｃ）式の両辺をクランク角度θで積分した後に、当該（９ｃ）式を展開することで、発熱量Qを（９ｄ）式のように表すことができる。次いで、（９ｄ）式に従って算出された発熱量Qを、再度（９ａ）式に代入することで、熱発生率dQ/dθが算出される。
【００４９】
熱発生率dQ/dθと筒内圧力（燃焼圧力）Pとは、エネルギ保存則に基づく関係式を用いて（１０）式のように表すことができる。従って、（９ａ）式に従って算出された熱発生率dQ/dθを代入して当該（１０）式を解くことにより、燃焼圧力Pを算出することができる。
【数１０】
2007211684.tif 000012
【００５０】
以上説明した筒内圧推定モデル６８および燃焼波形算出部７０によれば、筒内圧推定モデル６８を用いて燃焼が行われていない状況下での筒内圧力Pを算出するととともに、燃焼波形算出部７０を用いて燃焼が行われている期間中の筒内圧力Pを算出することにより、燃焼実行の有無に関係なく、内燃機関１０の筒内圧力Pの履歴を取得することができる。
【００５１】
尚、内燃機関１０の筒内圧力Pの履歴を取得する手法は、上記の手法に限定されるものではなく、例えば、以下の図５を参照して示すような手法であってもよい。
図５は、そのような変形例の手法を説明するための図である。この手法では、上記（９ａ）式および（１０）式を用いて、所定のクランク角度θ毎に燃焼圧力Pを計算することを行うのではなく、事前に、上記（９ａ）式および（１０）式を用いて、図５（Ａ）に示すような燃焼パターン、すなわち、燃焼に付されることで変化する筒内圧力Pの波形の変化分（燃焼による圧力増加分）のみを算出しておく。
【００５２】
より具体的には、そのような燃焼パターンを決定する３つのパラメータである着火遅れ期間、燃焼期間、およびΔPmax（燃焼時の最大圧力Pmaxと燃焼無し時の最大圧力Pmax0との偏差）を、エンジン回転数Ne、空気充填率KL、吸排気弁のバルブタイミングVVT、および点火時期のそれぞれとの関係で定めたマップを記憶しておく。そして、燃焼による圧力増加分に対応する波形を、２次関数などの簡易な関数を組み合わせて近似させた波形として算出するために、当該近似波形の各係数を上記のエンジン回転数Neとの関係でマップ化しておく。そして、図５（Ｂ）に示すように、そのようなマップを参照して得られた燃焼による圧力増加分の波形を、筒内圧推定モデル６８で算出される筒内圧力Pの値と足し合わせることで、燃焼圧力Pを取得するようにする。
【００５３】
（６）大気圧補正項算出部について
大気圧補正項算出部７２は、筒内に吸入される筒内充填空気量Mcを推定するモデル（ここでは「エアモデル」と称する）を含んでいる。このエアモデルでは、筒内充填空気量Mcを次の（１１）式に従って算出することとしている。
【数１１】
2007211684.tif 000013
【００５４】
ただし、上記（１１）式において、a、bは、それぞれ運転条件（エンジン回転数NeやバルブタイミングVVTなど）に応じて適合される係数である。尚、Pmは、吸気圧力であり、例えば、上述した吸気圧力推定モデル６６によって算出される値を使用することができる。
【００５５】
また、大気圧補正項算出部７２は、筒内に吸入される燃料量fcを推定するモデル（ここでは「燃料モデル」と称する）を含んでいる。燃料噴射弁２８から噴射された後の燃料の挙動を考慮すると、すなわち、噴射された燃料の一部の吸気ポートの内壁等への付着やその付着燃料の気化という現象を考慮すると、第kサイクルにおける燃料噴射の開始時における壁面付着燃料量がfw(k)であり、第kサイクルにおける実燃料噴射量がfi(k)である場合、第kサイクルの終了後に発生している壁面付着燃料量fw(k+1)、および第kサイクルにおいて筒内に吸入される燃料量fcは、次の（１２a）式および（１２ｂ）式のように表すことができる。
【数１２】
2007211684.tif 000014
【００５６】
ただし、上記（１２）式において、Pは、付着率、より具体的には、噴射燃料量fiのうちの吸気ポートの内壁等に付着する燃料量の割合である。Rは、残留率、より具体的には、吸気行程の実行後に付着燃料量fwが壁面等に付着したままの状態で残る割合である。
上記（１２）式によれば、付着率Pおよび残留率Rをパラメータとして、個々のサイクル毎に上記燃料量fcを算出することができる。
【００５７】
従って、上記のエアモデルおよび燃料モデルの算出結果を用いて、空燃比A/Fの推定値を算出することができる。大気圧補正項算出部７２では、次いで、この推定空燃比A/Fと、噴射された燃料が燃焼に付された後に空燃比センサ５２に到達するまでの輸送遅れを考慮したタイミングで検出する空燃比A/Fの実測値との定常偏差を算出する。そして、この定常偏差が筒内充填空気量Mcの誤差であるため、当該定常偏差が大きい場合には、大気圧がずれているものとして、大気圧補正係数kairpを算出する。具体的には、上記エアモデルより吸気圧力Pmを逆算し、その吸気圧力Pmに基づいて標準大気圧Pa0に対する補正率として大気圧補正係数kairpを算出する。この大気圧補正係数kairpは、上述した吸気圧力推定モデル６６および筒内圧推定モデル６８において、吸気圧力Pmapと排気圧力（大気圧Pair）の補正に用いられる。
【００５８】
（７）大気温補正項算出部について
大気温補正項算出部７４では、排気行程中の行程容積V、残留ガス質量（排気上死点でのすきま容積Vcに基づいて算出）m、残留ガス（既燃ガス）のガス定数R、および大気温度Tairの実測値を理想気体の状態方程式に代入することで、筒内圧力Pthを算出する。当該筒内圧力Pthと、筒内圧推定モデル６８で算出される筒内圧力Pとの偏差を算出する。そして、その偏差が大きい場合には、上記偏差に基づいて補正係数を算出する。この補正係数は、上述した吸気圧力推定モデル６６において、吸気圧力Pmapの補正に用いられる。
【００５９】
［エンジンモデルを用いたクランク軸の停止位置制御］
内燃機関を備えた車両では、車両が一時的に停止した際に、内燃機関の停止および再始動を自動的に行う制御（エコラン制御）が実行されることがある。また、内燃機関とモータとで車両を駆動するハイブリッド車両においても、車両システムの起動中（車両走行中も含む）に、内燃機関の停止および再始動を自動的に行う制御（本明細書中では、これも広い意味で「エコラン制御」と称している）が実行されることがある。
【００６０】
上記のエコラン制御において、内燃機関の再始動を円滑に行えるようにするためには、内燃機関を自動停止する際のクランク軸１６の停止位置（ピストン１２の停止位置）を狙いの停止位置に精度良く制御したいという要求がある。本実施形態のシステムでは、以上説明したエンジンモデル６０を、エコラン制御時にクランク軸１６の停止位置を推定するための停止位置推定モデルとして用いることとしている。上述したエンジンモデル６０によれば、クランク角回転速度dθ/dtがゼロとなる際のクランク角度θの推定値を取得することにより、内燃機関１０の自動停止時のクランク軸１６の停止位置を取得することができる。また、後述するように、このエンジンモデル６０を逆方向に演算することで、所望の目標クランク停止位置を得るために内燃機関１０を停止すべき燃焼カット回転数を算出することもできる。尚、本明細書中においては、クランク軸１６の停止位置を、単に「クランク停止位置」と称することがある。
【００６１】
内燃機関を自動的に停止する際に、クランク停止位置が目標クランク停止位置となるように、燃料供給を停止するエンジン回転数（燃焼カット回転数）を制御する手法が知られている。そのような手法が用いられた際に、クランク停止位置が目標クランク停止位置からずれる要因としては、エンジン内部の摺動部のフリクションのばらつき等の複数の要因が考えられる。それらの停止位置の誤差要因を解明することなく、それらの複数の要因をひとまとめとして目標クランク停止位置の学習を行うこととした場合には、その学習の精度や収束性が悪くなってしまう。また、燃焼カット回転数の制御によってクランク停止位置制御を行う場合は、特に、他の要因に比してフリクションの影響が大きくなる。
【００６２】
そこで、本実施形態のシステムでは、実際のクランク停止位置と目標クランク停止位置との偏差が大きい場合に、学習すべきパラメータをフリクションのみとして、上記クランク停止位置の偏差に基づいて、上述したエンジンモデル６０に含まれるフリクションモデル６４の学習を行うようにした。そして、他の要因は、センサ出力を用いて適応させるようにした。このため、フリクション以外の影響を受けることなく、クランク停止位置の推定に大きく影響するフリクションの影響のみを学習することができる。従って、クランク停止位置の推定精度を向上させることができる。
【００６３】
次に、図６を参照して、本実施の形態１における具体的な処理について説明する。
図６は、エンジンモデル６０を用いたクランク停止位置制御を実現するために、本実施の形態１においてECU５０が実行するルーチンのフローチャートである。
（ステップ１００に関する処理）
図６に示すルーチンでは、先ず、エコランモードフラグがONとなっているか否かが判別される（ステップ１００）。ECU５０は、所定のエコラン制御実行条件が成立していると判断した場合に、より具体的には、車速がゼロであって内燃機関１０がアイドル状態にある場合に、エコランモードフラグをONに設定している。
【００６４】
（ステップ１０２に関する処理）
上記ステップ１００において、エコランモードフラグがONになっていないと判定された場合には、燃焼圧力Pの学習が実行される（ステップ１０２）。また、本ステップ１０２では、１サイクル中における燃焼圧力Pの最大値であるPmaxを取得し、その圧力Pmaxの数百サイクル程度の値を平均化した値が保存されるとともに、その数百サイクル中の圧力Pmaxの最小値および最大値である最低燃焼圧および最高燃焼圧が保存される。尚、この保存処理は、内燃機関１０の運転状態がアイドル状態にある所定のタイミングで、例えば１０rpm毎に行われるものとする。内燃機関１０がアイドル状態にあるときは、比較的燃焼のばらつき幅が大きいため、このような最低燃焼圧および最高燃焼圧を保存しておくことで、これらを燃焼のばらつき幅に関する情報として以降のステップで用いることができる。
【００６５】
本ステップ１０２では、クランク角センサ４０の出力に基づいて得られるエンジン回転数Neの実測値と、上記クランク軸周りの運動方程式演算部６２によって算出されたエンジン回転数Neの推定値との偏差がなくなるように、燃焼波形算出部７０において燃焼圧力Pの算出に用いる上記（９ａ）式中の各種パラメータ（Weibe関数の各パラメータであるθb、θp等）の修正（適合）が実行される。
【００６６】
より具体的には、エンジン回転数Neの推定値とその実測値との偏差をなくすために要求される当該推定Neを、上記（４ｅ）式に代入することで、そのような要求推定Neを実現するために必要とされる入力トルクTRQを算出することができる。そして、算出された入力トルクTRQと上記（５）式および（６ｃ）式によれば、上記の要求推定Neを実現するために必要とされる燃焼圧力Pを算出することができる。そして、そのような燃焼圧力Pが得られるように、上記のように、上記（９ａ）式中の各種パラメータの修正を行う。このような手法によれば、実測Neと推定Neとの誤差を常にフィードバックすることにより、燃焼波形算出部７０の高い演算精度を確保することができ、これにより、燃焼圧力Pの推定値とその実測値とを正確に一致させることができる。
【００６７】
尚、以上説明した上記ステップ１０２の処理では、エンジン回転数Neの実測値とその推定値に誤差がある場合には、上記（９ａ）式中の各種パラメータが間違っているものと判断し、当該パラメータの修正するようにしているが、エンジン回転数Neの誤差に基づいて燃焼圧力Pを学習する手法はこれに限定されるものではなく、例えば、以下のような手法であってもよい。すなわち、上記（９ａ）式中の各種パラメータの修正を行うのではなく、上記（１０）式の右辺にクランク角度θの関数となる補正項（エンジン回転数Neの誤差を反映させるための補正項）を加えた式と上記（９ａ）式とに基づいて、燃焼圧力Pを算出するようにしてもよい。
【００６８】
（ステップ１０４に関する処理）
図６に示すルーチンでは、上記ステップ１００において、エコランモードフラグがONになっていると判定された場合には、次いで、クランク停止位置を制御するためのエンジン回転数Neである現在設定されている燃焼カット回転数Ne0より現在の実エンジン回転数Neが大きいか否かが判別される（ステップ１０４）。
【００６９】
（ステップ１０６に関する処理）
その結果、燃焼カット回転数Ne0＜実エンジン回転数Neが成立しないと判定、つまり、実エンジン回転数Neが燃焼カット回転数Ne0に達したと判定された場合には、クランク停止位置の推定値の算出が実行される（ステップ１０６）。
【００７０】
具体的には、上記ステップ１０６では、上記ステップ１０２の処理によってアイドル状態時に取得された燃焼圧力Pの平均値、吸気圧力Pmap、クランク角度θ0、およびエンジン回転数（燃焼カット回転数）Ne0（＝クランク角回転速度dθ0/dt）を初期値として入力して、クランク軸周りの運動方程式演算部６２を用いて、クランク角度θおよびクランク角回転速度dθ/dtのそれぞれの推定値が順次算出されることになる。以下、次の（１３）その具体的な算出手法を説明する。尚、本明細書中においては、このような手法を用いて、上記図２中に示すそれぞれの矢印方向にエンジンモデル６０を解くことを「順モデル演算」と称する。
【００７１】
先ず、上記（４ｅ）式で表されるクランク軸周りの運動方程式において、(∂f(θ)/∂θ)≡h(θ)とし、かつ、当該（４ｅ）式中の入力トルクTRQに上記（５）式を代入したうえで、当該（４ｅ）式を離散化することで、次の（１３）式が得られる。
【数１３】
2007211684.tif 000015
【００７２】
そして、上記（１３）式による順モデル演算の計算初期値として、上記の如く、クランク角度θ0、およびクランク角回転速度dθ0/dt等が与えられる。以下、ステップ数kを順次更新していくことにより、対応するクランク角度θおよびクランク角回転速度dθ/dtのそれぞれの推定値が順次算出されることになる。上記（１３）式にステップ数k＝1を代入すると、次の（１４ａ）式のように表すことができる。
【数１４】
2007211684.tif 000016
【００７３】
上記（１４ａ）式中のクランク角度θ(k)の一部を対応するクランク角回転速度dθ(k)/dtに書き直すと、上記（１４ｂ）式のように表すことができる。そして、その（１４ｂ）式を展開すると、ステップ数k＝1のときのクランク角回転速度dθ(1)/dtは、上記（１４ｃ）式のように、前回、すなわち、初期値として入力されたクランク角度θ0およびクランク角回転速度dθ0/dtを用いて表すことができる。更に、上記（１４ｃ）式を積分することにより、ステップ数k＝1のときのクランク角度θ(1)を、上記（１４ｄ）式のように算出することができる。
【００７４】
そして、上記の処理を、ステップ数kがN回となるまで、すなわち、クランク角回転速度がdθ(N)/dt＝0となるまで繰り返すと、クランク角回転速度dθ(N)/dt＝0、およびクランク角度θ(N)が算出される。つまり、上記の処理によれば、内燃機関１０が停止した際のエンジン回転数Ne＝0と、クランク停止位置を算出することができる。
【００７５】
上記ステップ１０６の処理において、燃焼圧力Pの平均値を初期値として使用するのは、以下の理由による。すなわち、実エンジン回転数Neが燃焼カット回転数に達したと判定されてから実際に燃焼カットが実行されるまでには、内燃機関１０のハードウェアの性能上、90°CA程度に相当する時間を要する。この際、燃焼カット開始前の燃焼圧力Pの値に応じて、エンジン回転数Neの低下の度合いに差が生ずる。より詳細には、燃焼カット開始前の燃焼圧力Pが高い場合には、エンジン回転数Neの低下が遅く、一方、当該燃焼圧力Pが低い場合には、エンジン回転数Neの低下が速くなる。上記ステップ１０６の処理によれば、燃焼圧力Pの平均値を初期値として使用することで、燃焼カット開始前の燃焼圧力Pの影響を、クランク停止位置の推定値に反映させることができる。
【００７６】
また、上記ステップ１０６では、燃焼開始前の燃焼圧力Pが上記ステップ１０２の処理により保存された最低燃焼圧および最高燃焼圧である場合のクランク停止位置の推定値についてもそれぞれ算出するようにしている。より具体的には、これらの最低燃焼圧および最高燃焼圧に対応する入力トルクTRQを初期値として使用して、クランク停止位置の算出を開始させる。このような処理によれば、最低燃焼圧および最高燃焼圧の場合の停止位置をも算出することにより、内燃機関１０の燃焼状態の変動に起因するクランク停止位置のばらつきを学習することが可能となる。
【００７７】
尚、以上説明した上記ステップ１０６の処理に代えて、次のような処理を行うようにしてもよい。上記ステップ１０６においては、予めアイドル状態時に取得しておいた燃焼圧力Pの平均値を初期値として使用するとともに、燃焼状態のばらつきを考慮するために最低燃焼圧および最高燃焼圧に対応する入力トルクTRQを初期値として使用している。しかし、それらに代えて、燃焼圧力Pの所定サイクル分の平均値を常時算出するようにしておき、実エンジン回転数Neが燃焼カット回転数に達したと判定されたときに、その燃焼カットの直前の上記平均値を初期値として使用するようにしてもよい。
【００７８】
（ステップ１０８に関する処理）
図６に示すルーチンでは、次いで、上記ステップ１０６の処理により算出されたクランク停止位置の推定値と、クランク角センサ４０によって検出されたクランク停止位置の実測値との誤差が所定の閾値よりも大きいか否かが判別される（ステップ１０８）。その結果、上記の誤差が所定の閾値よりも大きいと判定された場合には、フリクションモデル６４の適応学習および当該フリクションモデル６４の更新が実行される（ステップ１１０）。
【００７９】
また、上記ステップ１０８では、内燃機関１０の運転状態或いは劣化状態に応じて、上記の閾値を可変させるように、すなわち、フリクションモデル６４の適応学習の開始判定値を修正するようにしている。そのために、ECU５０は、図７に示すように定められたクランク軸１６の目標停止領域を記憶している。エコラン制御の実行時に、内燃機関１０を良好に再始動させるためには、クランク軸１６（ピストン１２）の停止位置を適切な位置に制御する必要がある。そこで、ECU５０は、図７に示すように、圧縮行程における上死点前90°CA〜180°CAの範囲にピストン１２があるときをクランク軸１６の目標停止領域として設定している。
【００８０】
そして、上記ステップ１０６の処理により算出された最小燃焼圧時のクランク停止位置および最高燃焼圧時のクランク停止位置の少なくとも一方が上記の目標停止領域の両側の所定範囲（例えば、上記目標停止領域の10％の範囲）を外れたと認められる場合に、上記の閾値を変更している。より具体的には、上記の最小燃焼圧時のクランク停止位置および最高燃焼圧時のクランク停止位置をそれぞれ保存しておく。そして、それらのクランク停止位置の偏差に応じて上記閾値を変化させる。より詳細には、当該偏差が大きい場合には、エンジンモデル６０の演算精度が悪化していると判断することができるため、フリクションモデル６４の学習頻度を上げることで当該エンジンモデル６０の演算精度を向上させるべく、上記の閾値を小さくさせる。以上の手法によれば、内燃機関１０の燃焼ばらつきをも考慮しつつ、フリクションの影響を学習することで、クランク停止位置の推定精度を向上させることができる。
【００８１】
また、本ルーチンにおいて、フリクションモデル６４の学習の必要性を判定する手法は、上記ステップ１０８の処理の手法に限定されるものではない。例えば、上記ステップ１０６の変形例として説明した手法により、つまり、燃焼カットの直前の燃焼圧力Pの平均値を初期値とする手法により、クランク停止位置の推定値を算出している場合には、推定されたクランク停止位置が所定の範囲（例えば、上記図７に示す目標停止領域における両側のそれぞれ10％を除いた範囲）にないと判定される場合に、ステップ１１０に進んで、フリクションモデル６４の適応学習および当該フリクションモデル６４の更新を行うようにしてもよい。
【００８２】
また、本ルーチンにおいて、内燃機関１０の運転状態或いは劣化状態に応じて、上記の閾値を可変させる手法は、上記ステップ１０８の処理の手法に限定されるものではない。例えば、燃焼カットの直前の燃焼圧力Pの平均値を初期値とする手法により推定されたクランク停止位置と、最低燃焼圧または最高燃焼圧時のクランク停止位置との偏差に応じて、内燃機関１０の燃焼の劣化度合いを判定して、当該劣化度合いに応じて、上記閾値を変更してもよい。より具体的には、上記の最小燃焼圧時のクランク停止位置と最高燃焼圧時のクランク停止位置との偏差が大きい状態というのは、内燃機関１０の燃焼のばらつきが大きい状態であると判断することができる。従って、当該偏差が大きい場合には、内燃機関１０の燃焼が劣化していると判定することができる。
【００８３】
そこで、当該偏差が大きい場合、すなわち、内燃機関１０の燃焼の劣化度合いが大きい場合には、フリクションモデル６４の学習を開始させる上記の閾値を大きくしてもよい。このような手法によれば、フリクションモデル６４の学習頻度を下げることで、誤学習を防止することができる。また、このような手法によれば、燃焼圧力Pの変動分（すなわち、燃焼ばらつきの影響分）を別途学習させる必要があるが、このステップの段階では、フリクションモデル６４の更新だけを行わせることとなる。尚、その燃焼圧力Pの変動分の学習は、例えば、後述するステップ１１４において行うようにすることができる。以下、その手法についての説明を行う。
【００８４】
上記の燃焼圧力Pの変動分の学習では、燃焼圧力Pの変動分とクランク停止位置のずれ分との関係を、最低燃焼圧および最高燃焼圧に対するクランク停止位置をそれぞれ計算して記憶しておく。これにより、燃焼圧力Pのばらつきによって、どれだけクランク停止位置のずれが発生し得るかどうかが判る。そして、後述するステップ１１４において、そのクランク停止位置のずれ分に基づいて、燃焼カット回転数を算出する際に用いる目標クランク停止位置を修正する。このような学習によれば、燃焼ばらつきを考慮して、所望の目標クランク停止位置が得られるような燃焼カット回転数を正確に算出することができる。
【００８５】
（ステップ１１０に関する処理）
図６に示すルーチンでは、上述したように、上記ステップ１０８において、上記の誤差が所定の閾値よりも大きいと判定された場合には、フリクションモデル６４の適応学習および当該フリクションモデル６４の更新が実行される（ステップ１１０）。
【００８６】
クランク停止位置を推定する際には、フリクションモデル６４によるフリクショントルクTRQfの算出値が必要となる。このフリクショントルクTRQfの算出値は、エンジン回転数Neに依存するものである。燃焼カットが実行されて内燃機関１０が停止される際には、エンジン回転数Neが一瞬で変化して、フリクションモデル６４のフリクションマップの各マップ点を通りすぎてしまう。このため、そのようなエンジン回転数Neの変化時に、フリクションモデル６４を瞬時瞬時に学習することは困難である。
【００８７】
そこで、本ステップ１１０では、以下のような手法で、フリクションモデル６４の学習およびその更新がなされる。ところで、本ステップ１１０でフリクションモデル６４の学習を行う下準備として、フリクションモデル６４の学習を行うときにも、エンジンモデル６０が算出されるクランク角度θおよびクランク角回転速度dθ/dtと、実測されるクランク角度θおよびクランク角回転速度dθ/dtとの偏差を、PIDコントローラ７６によって常にフィードバックを行うことで、その偏差（誤差）がない状態にしておく。より具体的には、PIDコントローラ７６によって、上記偏差に所定のフィードバックゲインを乗じて得た補正量（ここでは、「PID補正量」と称する）が算出され、当該PID補正量がクランク軸周りの運動方程式演算部６２の入力値に反映される。このような処理を行うのは、例えば、エンジン回転数Neが600rpmの時のフリクショントルクTRQfがずれていたと仮定すると、そのフリクションの誤差がエンジン回転数Neの低下中に蓄積され続けることとなり、その低回転側まで当該誤差の影響を及ぼしてしまうので、それを防止するためである。
【００８８】
上記のPIDコントローラ７６による処理によれば、クランク角度θおよびクランク角回転速度dθ/dtの推定誤差が少なくなるように、エンジンモデル６０の演算精度を向上させることはできる。しかしながら、フリクションモデル６４の精度自体は改善されるわけではない。そこで、本ステップ１１０では、上記PID補正量を用いて、フリクションモデル６４を学習するために、以下の処理を行う。
【００８９】
先ず、フリクションモデル６４が備えるフリクションマップのマップ点として設定された各エンジン回転数Neを通過する毎に、より具体的には、例えば600rpmで燃焼カットがされた場合には、エンジン回転数Neが低下する際の500rpm、400rpm等の各回転数領域において、PID補正量を随時算出して保存しておく。このPID補正量の保存の際には、ピンポイントで各マップ点での補正量を取得するのではなく、ノイズ的な挙動を除去した補正量を得るために、各マップ点近傍で所定回数に渡って算出したPID補正量の平均値として、或いは、各マップ点近傍でPID補正量を時間的に積分した値を、各々のマップ点近傍のPID補正量として保存しておく。また、PID補正量のI項（積分項）成分には、モデル演算開始（燃焼カット開始）時点からの偏差がすべて蓄積されている。そこで、各々のマップ点近傍のPID補正量を算出する際に、今回算出されるPID補正量からその前回までの偏差蓄積分を引いておく。
【００９０】
図８は、フリクションモデル６４が備えるフリクションマップの各マップ点の値にPID補正量を反映させるために、本ステップ１１０において行われる手法を説明するための図である。図８は、フリクショントルクTRQfとデータ点数Nとの関係を示している。ここでは、先ず、冷却水温度とエンジン回転数Neとの関係で定められているフリクションマップの各マップ値を図８に示すグラフ上にプロットする。そして、それらのプロット点に対する回帰直線（回帰曲線）を最小二乗法によって算出する。この回帰直線は、冷却水温度Thwとエンジン回転数Neとの関係で定めるものであり、次の（１５）式にように表すことができる。
【数１５】
2007211684.tif 000017
ただし、上記（１５）式において、a、b、cは、各プロット点と回帰直線との距離が最小となるように同定される係数である。
【００９１】
次に、ECU５０は、上記PID補正量を保存しているエンジン回転数Neの領域毎に、現在の冷却水温度ThwにおけるフリクショントルクTRQfをフリクションモデル６４によって算出する。そして、フリクションモデル６４が算出したそれらのフリクショントルクTRQfを図８に示すグラフ上にプロットする。次いで、それらの新たなプロット点を加えた状態で、上記（１５）式のa〜cの各係数を再度同定させる。そして、その結果得られた新たな回帰直線を用いて、マップ点毎に、重み付け係数を算出する。
【００９２】
重み付け係数は、上記PID補正量に乗じられる係数であり、上記図８に示すように、マップ点と回帰直線との距離に応じて変更される。より具体的には、重み付け係数は、当該距離が小さいほど1に近い値とされ、逆に、当該距離が大きいほど0に近い値とされる。次いで、PID補正量に重み付け係数を乗じた値に基づいて、各々のマップ点の値が補正される。このような重み付け係数の設定によれば、回帰直線から離れたマップ点ほど、PID補正量の反映量が小さくなるように補正される。
【００９３】
以上のようにして、各々のマップ点の値に、各々のエンジン回転数領域に対応して得られた上記のPID補正量を反映させる処理が行われる。このような手法によれば、現在の水温が隣接するマップ間の中間値である場合であっても、隣接マップ間との関係を考慮して、各マップ点の値に適切なPID補正量を与えることができる。本ステップ１１０では、以上の処理によって、フリクションモデル６４の学習およびその更新がなされる。
【００９４】
（ステップ１１２に関する処理）
図６に示すルーチンでは、次いで、クランク停止位置のばらつき幅の学習が実行される（ステップ１１２）。ECU５０は、本ルーチンとは別のルーチンの処理に従って、その時々の燃焼カット回転数に対するクランク停止位置の実測値のばらつき幅を常時保存している。本ステップ１１２では、現在の燃焼カット回転数に対するクランク停止位置の実測値のばらつき幅が大きくなったと判定された場合には、フリクションモデル６４から得られるフリクションの情報のずれが大きくなったと判断できるため、フリクションモデル６４の適応学習の開始判定値が変更される。より具体的には、当該ばらつき幅が大きくなったと判定された場合には、エンジンモデル６０の演算精度を向上させるべく、上記ステップ１０８の閾値がより小さな値に更新される。
【００９５】
（ステップ１１４に関する処理）
次に、上記ステップ１１０の処理により更新されたフリクションモデル６４を用いて、クランク停止位置を所望の目標クランク停止位置とするための目標燃焼カット回転数の算出および更新が実行される（ステップ１１４）。このような本ステップ１１４の処理によれば、上述した一連のステップの処理によって学習されたフリクションの影響を反映させた目標燃焼カット回転数を取得することができる。
【００９６】
本ステップ１１４の処理を実現する手法としては、例えば、以下のような３つの手法が考えられる。先ず、１つ目の手法として、上述したエンジンモデル６０を順モデル演算方向と逆方向に純粋に解く手法、すなわち、逆モデル演算を用いた手法が考えられる。ここでの計算は、内燃機関１０の停止間際の挙動に対するものであり、そのような場合には、内燃機関１０の内部の現象はほぼ単調なものとなり大きな回転変動が出ない。このため、クランク軸１６の目標クランク停止位置（クランク角度）を初期値として入力して、エンジンモデル６０を逆モデル演算することにより、目標燃焼カット回転数（順モデル演算の場合の上記初期クランク角回転速度dθ0/dtに相当）を算出することができる。
【００９７】
しかしながら、上記のエンジンモデル６０は順方向では、一般に２次遅れ系となるため、その逆モデルでは、２次の微分系となる。このため、逆モデル演算は、発散系であって安定した演算を確保しにくい。そこで、２つ目の手法としては、以下の図９を参照して説明するフィードバックを利用する手法が考えられる。図９に示す手法では、上述したエンジンモデル（停止位置推定モデル）６０により算出されるクランク停止位置と、その目標クランク停止位置との偏差を算出し、その偏差をPIDコントローラ７６によってエンジンモデル６０の入力値である燃焼カット回転数（初期クランク角回転速度dθ0/dt）に反映させるようにしている。図９に示す手法によれば、このような処理を複数回繰り返すことにより、エンジンモデル６０により算出されるクランク停止位置と目標クランク停止位置との偏差が無くなった状態の燃焼カット回転数、すなわち、目標クランク停止位置に対応する目標燃焼カット回転数を取得することができるようになる。ここでのエンジンモデル６０には、上記ステップ１１０の処理により学習がなされた後のフリクションモデル６４が用いられている。このため、このような手法によれば、学習されたフリクションの影響を反映させて、目標クランク停止位置に対応する目標燃焼カット回転数を精度よく算出することが可能となる。
【００９８】
上記の２つ目の手法によれば、演算結果が必ず安定するものとなり、確実な演算を実行することができるという利点がある。しかし、欠点として、ECU５０の演算負荷が高く、演算の収束性が良くない。このため、頻繁に演算を実行させるのが困難となる。そこで、以下、３つ目の手法として、上記ステップ１１０の処理により学習更新されたフリクションモデル６４を用いたエンジンモデル６０の順モデルの演算結果を利用した手法について説明する。
【００９９】
図１０は、図６に示すルーチンのステップ１１４で行われる処理を説明するためのタイムチャートである。より具体的には、図１０（Ａ）は、燃焼カット回転数の値に応じて変化するエンジン回転数Neの低下の様子を、図１０（Ｂ）は、燃焼カット回転数の値に応じて変化するクランク停止位置を、図１０（Ｃ）は、燃焼カット回転数とそれに対応するクランク停止位置との関係を、それぞれ示している。
【０１００】
具体的には、本ステップ１１４では、先ず、今回のルーチンの起動時に上記ステップ１０６において入力された燃焼カット回転数Ne0（初期クランク角回転速度dθ0/dt）と、初期クランク角度θ0を初期値として、上記ステップ１１０の処理により更新されたフリクションモデル６４を用いて順モデル演算が実行される。その結果、燃焼カット回転数がdθ0/dtであるときのクランク停止位置θx0が算出される。また、本ステップ１１４では、燃焼カット回転数がdθ0/dtであるときのクランク停止位置θx0が算出されるだけでなく、燃焼カット回転数（クランク角回転速度の初期値）がそれぞれ(dθ0/dt＋10)および(dθ0/dt＋10)であるときのクランク停止位置θx1およびθx2についても、同様の順モデル演算を行うことによって算出される。尚、燃焼カット回転数がそれぞれ(dθ0/dt＋10)および(dθ0/dt＋10)であるときに、同時に入力するクランク角度の初期値は、dθ0/dt時と同じθ0である。また、上記の説明では、±10rpmとしているが、その範囲は、燃焼の劣化度合いやフリクションの増加代（潤滑油の劣化等による）の大きさによって変化させてもよい。
【０１０１】
図１０（Ａ）に示すように、燃焼カット回転数が異なる値とされると、エンジン回転数Neがゼロになるまで低下する時間に差が生ずることになる。そして、図１０（Ｂ）に示すように、dθ0/dt±10rpmとなるように燃焼カット回転数が異なる値とされると、最終的なクランク停止位置もθx1〜θx2となる範囲で変化する。より詳細には、燃焼カット回転数が高くなるほど、クランク停止位置がより進んだ位置となる。従って、上記の処理によれば、dθ0/dt±10rpmとなるように燃焼カット回転数を変化させた際のクランク停止位置の変動範囲を把握することが可能となる。
【０１０２】
次に、本ステップ１１４では、上述したように取得された燃焼カット回転数の変化幅に対するクランク停止位置の変化幅の関係に基づいて、クランク停止位置が所望の目標クランク停止位置となるように、目標燃焼カット回転数が算出される。より具体的には、図１０（Ｃ）に示すように、上記の３通りの順モデル演算を行った際の燃焼カット回転数とクランク停止位置との関係に基づいて、近似直線が算出される。このような近似直線を得ることで、所望のクランク軸１６の目標クランク停止位置に対応する目標燃焼カット回転数を算出することが可能となる。
【０１０３】
また、上記の３通りの順モデル演算を行う際のECU５０の演算負荷を低減させるために、以下のような手法を用いている。より詳細には、上記（１３）式中のf(θ(k))は、その他の項の大きさと比較すると、ほぼ一定値で扱える。また、h(θ(k))は、初期クランク角度θ(0)の影響は受けるが、初期クランク角回転速度(dθ0/dt)の影響は受けない。また、TRQe(θ(k))は、それらの初期値には依存せずに演算が終了するまでのステップ数kに依存する。
【０１０４】
上記（１３）式中の上記パラメータは、上記の性格を有しているため、（１３）式の右辺のTRQf(θ)についてのみ上記３通りの初期値に対してそれぞれ算出を行うものとする。TRQe(θ(k))、h(θ(k))、およびf(θ(k))のそれぞれは、厳密にはクランク角度θに依存するが、上記（１３）式において、TRQe(θ(k))/f(θ(k))の項と1/2h(θ(k))・(θ(k＋1)−θ(k))2/ f(θ(k))の項は、平均値として扱うとほぼ一定値となるため、一定値×ステップ数として（例えば燃焼カット回転数がdθ0/dtである場合には一定値×ステップ数Nとして）算出可能である。
【０１０５】
また、上記の３通りの順モデル演算を行う際に、燃焼カット回転数をdθ0/dtとしたときに、クランク角回転速度dθ/dtがゼロとなるステップ数がNであるとすると、燃焼カット回転数が(dθ0/dt＋10)である場合には、ステップ数がNのときにクランク角回転速度dθ/dtがゼロにならず、ステップ数Nにステップ数Npを加えたステップ数(N＋Np)のときにゼロとなる。逆に、燃焼カット回転数が(dθ0/dt−10)である場合には、ステップ数(N−Nm)のときにクランク角回転速度dθ/dtがゼロとなる。そこで、ステップ数Np、Nmをそれぞれ保持しておく。そして、TRQe(θ(k))/f(θ(k))の項と1/2h(θ(k))・(θ(k＋1)−θ(k))2/f(θ(k))の項を、上記のように一定値×ステップ数として算出する際には、燃焼カット回転数が(dθ0/dt＋10)であるときには一定値×ステップ数(N＋Np)とすればよく、また、燃焼カット回転数が(dθ0/dt−10)であるときには一定値×ステップ数(N−Nm)とすればよい。
【０１０６】
以上説明した手法によれば、エンジンモデル６０の順モデル演算結果に基づいて、クランク軸１６の目標クランク停止位置に対応する目標燃焼カット回転数を算出することができる。
【０１０７】
エンジンモデル６０により演算されるクランク停止位置と実クランク停止位置とにずれを与える要因としては、フリクションモデル６４の影響と、エンジンモデル６０におけるフリクションモデル６４以外の部分の影響とが考えられる。クランク停止位置の上記のずれを取得するだけでは、そのずれの要因がフリクションモデル６４の影響であるか否かを判断するのは困難である。言い換えれば、当該ずれがフリクショントルクTRQfの算出に起因するものであるか、それともエンジン発生トルクTRQeの算出に起因するものであるかを判断するのは難しい。
【０１０８】
これに対し、以上説明した図６に示すルーチンによれば、内燃機関１０の燃焼が実行されている期間中に、燃焼圧力Pの学習が実行される。そして、燃焼がカットされた後の内燃機関１０の停止間際にフリクションの学習が実行される。このように、上記ルーチンの処理によれば、燃焼圧力の変動に起因するクランク停止位置のばらつきについては燃焼実行時に学習させることで、クランク停止位置に大きな影響を及ぼすフリクションの影響のみを内燃機関１０の停止間際に、その他の燃焼による影響等を排除して個別に学習し、フリクションモデル６４を更新することができる。このように、本実施形態のエンジンモデル６０によれば、クランク停止位置に影響を与えるフリクション、大気圧力、大気温度、スロットル開度、バルブタイミングVVT等（本発明でいう「所定のパラメータ」）の影響が適切にモデル化されているため、フリクションの適応精度を向上させることができる。
【０１０９】
また、上記ルーチンの処理によれば、逆モデル演算等によって、学習更新されたフリクションモデル６４を反映させた状態で、クランク停止位置を目標停止位置とするための燃焼カット回転数を直接算出することができる。このため、効率の良い演算を可能とするエンジンモデル６０を得ることができる。
【０１１０】
尚、上述した実施の形態１においては、ECU５０が上記ステップ１０６の処理を実行することにより前記第２の発明における「クランク停止位置算出手段」が実現されている。
また、ECU５０が上記ステップ１０８の処理を実行することにより前記第３の発明における「クランク停止位置判定手段」が実現されている。
また、ECU５０が上記ステップ１１４の処理を実行することにより前記第４の発明における「目標燃焼カット回転数算出手段」が実現されている。
【０１１１】
実施の形態２．
次に、図１１を参照して、本発明の実施の形態２について説明する。
本実施形態のシステムは、図１に示すハードウェア構成および図２に示すエンジンモデル６０の構成を用いて、ECU５０に図６に示すルーチンに代えて後述する図１１に示すルーチンを実行させることにより実現することができるものである。
【０１１２】
エコラン制御の実行時に再始動性を向上させることを目的として、上述したエンジンモデル６０を用いて内燃機関１０のクランク停止位置を適切に制御するうえでは、内燃機関１０の内部のフリクション（フリクショントルクTRQf）の影響が大きく、そのフリクションを高精度に推定することが要求される。フリクションの大きさは、通常、内燃機関１０の潤滑油温度に依存している。ところが、フリクションは、上述したフリクションモデル６４もそうであるように、冷却水温度で補正するのが一般的である。従って、潤滑油温度と冷却水温度との乖離が大きく発生している状況下では、フリクションを精度良く補正することが困難となるため、クランク停止位置の推定精度が悪化する。
【０１１３】
そこで、本実施形態では、以下の図１１に示すルーチンを参照して説明する手法を用いて、潤滑油温度を検出するセンサを必要とせずに、冷却水温度と潤滑油温度の乖離を判別できるようにした。これにより、低コストな構成を用いて、エコラン制御時のクランク停止位置の推定精度を良好に確保することが可能となる。
【０１１４】
［実施の形態２における具体的処理］
図１１は、上記の機能を実現するために、本実施の形態２においてECU５０が実行するルーチンのフローチャートである。図１１に示すルーチンでは、先ず、現在の内燃機関１０の運転状態が定常運転状態であるか否かが判別される（ステップ２００）。次のステップ２０２の処理において安定した算出値を得るためである。
【０１１５】
上記ステップ２００において、定常運転状態であると判定された場合には、エンジンモデル６０における上記（４ｅ）式に基づいて、エンジン発生トルクTRQeが算出され、そして、所定のサイクル分（例えば数百サイクル分）の当該エンジン発生トルクTRQeの平均値Ａが算出される（ステップ２０２）。
【０１１６】
次に、内燃機関１０のベーストルクＢが取得される（ステップ２０４）。具体的には、吸入空気量、エンジン回転数Ne、空燃比A/F（燃料量）、および点火時期のそれぞれとの関係で定めたマップによって、内燃機関１０の図示トルクが取得される。そして、その図示トルクからフリクショントルクおよび負荷トルクを差し引いた値として、ベーストルクＢが算出される。これらの図示トルク、フリクショントルク、および負荷トルクは、冷却水温度と潤滑油温度の相関が取れた状態で事前に計測されたデータである。
【０１１７】
次に、エンジンモデル６０で算出されたエンジン発生トルクTRQeの平均値ＡとベーストルクＢとのトルク偏差ΔTRQの絶対値が所定の判定値より大きいか否かが判別される（ステップ２０６）。その結果、当該偏差ΔTRQの絶対値が判定値以下であると判定された場合、すなわち、現在のエンジン発生トルクが冷却水温度と潤滑油温度の相関が取れた状態で得られたベールトルクＢに近い値であると認められた場合には、冷却水温度と潤滑油温度との乖離が比較的小さいと判断することができる。そこで、この場合には、エコランモードの実行が許可される（ステップ２０８）。
【０１１８】
一方、上記ステップ２０６において、上記偏差ΔTRQの絶対値が判定値より大きいと判定された場合には、上記の場合とは逆に、エンジンモデル６０で取得されるフリクショントルクTRQfに大幅なずれが生じており、冷却水温度と潤滑油温度との乖離が比較的大きいと判断することができる。そこで、この場合には、エコランモードの実行が禁止される（ステップ２１０）。
【０１１９】
ここでは、説明の便宜上、１つのフローチャートで同一のルーチン内の処理として説明することとするが、上記ステップ２０６において、上記偏差ΔTRQの絶対値が判定値より大きいと判定された場合には、以下のような処理を行うようにしてもよい。すなわち、冷却水温度と潤滑油温度との乖離が比較的大きいと判断することができる場合には、上記（４ｅ）式の右辺に上記トルク偏差（フリクション誤差）ΔTRQを加算した次の（１６）式を解くことにより、目標燃焼カット回転数が算出される（ステップ２１２）。そして、この場合には、エコランモードの実行が許可される（ステップ２０８）。このように、フリクションのずれを学習したうえで、エコランモードの実行を継続させるようにしてもよい。
【数１６】
2007211684.tif 000018
【０１２０】
以上説明した図１１に示すルーチンによれば、冷却水温度と潤滑油温度との乖離が比較的大きい場合には、エコランモードの実行が禁止される。つまり、フリクショントルクTRQfに大幅なずれが生じていてフリクショントルクTRQfの推定が正確でない場合に、エコランモードの実行が禁止される。このため、エンジンモデル６０を用いたクランク停止位置の推定精度を確保することができる。
【０１２１】
また、上記ルーチンで説明したもう一方の処理によれば、冷却水温度と潤滑油温度との乖離が比較的大きい場合には、上記（１６）式で示すように、フリクションモデル６４から得られるフリクショントルクTRQfに上記トルク偏差ΔTRQを加算した式を解くことにより、目標燃焼カット回転数が算出される。フリクションモデル６４から得られるフリクショントルクTRQfに上記トルク偏差ΔTRQを加算した（１６）式を目標燃焼カット回転数の算出に用いることは、フリクショントルクTRQfの誤差分であるΔTRQに基づいてフリクションモデル６４を補正し、その補正のなされたフリクションモデル６４を用いて目標燃焼カット回転数を算出することに相当する。このため、上記ルーチンの処理によれば、フリクションが冷却水温度および潤滑油温度の影響を受けることを考慮することができるので、冷却水温度と潤滑油温度との乖離が比較的大きい場合であっても、クランク停止位置の推定を正確に行うことが可能となる。
【０１２２】
尚、上述した実施の形態２においては、ECU５０が、上記ステップ２０６の処理を実行することにより前記第５の発明における「温度乖離判定手段」が、上記ステップ２１２の処理を実行することにより前記第５の発明における「フリクション誤差算出手段」が、それぞれ実現されている。
【０１２３】
実施の形態３．
次に、図１２を参照して、本発明の実施の形態３について説明する。
本実施形態のシステムは、図１に示すハードウェア構成および図２に示すエンジンモデル６０の構成を用いて、ECU５０に図１１に示すルーチンに代えて後述する図１２に示すルーチンを実行させることにより実現することができるものである。
【０１２４】
本実施形態のシステムは、上述した実施の形態２のシステムに対し、冷却水温度と潤滑油温度の乖離度合いの判定手法のみが異なるものとなっている。以下、図１２に示すルーチンに従って、その点を中心に説明を行う。
【０１２５】
［実施の形態３における具体的処理］
図１２は、本実施の形態３においてECU５０が実行するルーチンのフローチャートである。図１２に示すルーチンでは、ステップ３００において、内燃機関１０が現在定常運転されていると判定された場合には、運転条件の履歴に基づいて、評価関数fが算出される（ステップ３０２）。評価関数fは、次の（１７）式で表されるものであり、燃焼による発熱量を代表する値を算出可能な関数である。
【数１７】
2007211684.tif 000019
【０１２６】
上記（１７）式に表すように、評価関数fは、空気充填率KLに、エンジン回転数Neに起因する補正係数KNe、空燃比A/Fに起因する補正係数Kabyf、および点火時期に起因する補正係数Kaopをそれぞれ乗じた値を所定の期間に渡って時間積分した値として設定されている。冷却水温度と潤滑油温度の乖離が大きくなる状況とは、激しい走行履歴の直後などの内燃機関１０が高出力を発生させる運転が長く継続された直後である。
【０１２７】
空気充填率KLが大きくなるほど、発熱量は大きくなる。また、上記（１７）式に示すように、空気充填率KLにエンジン回転数Neの補正係数KNeを乗ずることとすれば、燃焼ガスの流速に関する情報が得られる。更に、それらに空燃比A/Fの補正係数Kabyfを乗ずることとすれば、空燃比A/Fがリッチであるかリーンであるかにより燃焼温度の情報が得られる。更に、それらに点火時期の補正係数Kaopを乗ずることとすれば、点火時期が遅角されたかどうかによりノックが生じたかどうかの情報が得られる。このため、それらの影響を考慮した評価関数fによれば、どれだけ激しい走行がなされたか否かを判断することができる。尚、評価関数fは、より激しい走行がなされるほど、値が大きくなるように角補正係数Kの値が定められている。
【０１２８】
次に、評価関数fの値が所定の判定値より大きいか否かが判別される（ステップ３０４）。その結果、評価関数fが判定値以下であると判定された場合、すなわち、現在の状況が激しい走行履歴の直後等ではないと判断でき、従って、冷却水温度と潤滑油温度との乖離が比較的小さいと判断できる場合には、エコランモードの実行が許可される（ステップ３０６）。
【０１２９】
一方、上記ステップ３０４において、評価関数fが判定値より大きいと判定された場合、すなわち、現在の状況が激しい走行履歴の直後等であると判断でき、従って、冷却水温度と潤滑油温度との乖離が比較的大きいと判断できる場合には、エコランモードの実行が禁止される（ステップ３０８）。
【０１３０】
以上説明した図１２に示すルーチンによっても、潤滑油温度を検出するセンサを必要とせずに、冷却水温度と潤滑油温度の乖離を判別することが可能となる。
【０１３１】
ところで、上述した実施の形態３においては、評価関数fが判定値より大きいと判定された場合には、エコランモードの実行を禁止することとしている（上記ステップ３０８）が、そのような判定がなされた場合には、エコランモードを禁止するのではなく、上述した図１０に示すルーチンのステップ１１２の処理と同様に、トルク偏差ΔTRQに基づいてフリクションモデル６４の補正を行ったうえで目標燃焼カット回転数を算出することとし、エコランモードの実行を許可するようにしてもよい。
【図面の簡単な説明】
【０１３２】
【図１】本発明の実施の形態１の内燃機関の停止位置制御装置が適用された内燃機関の構成を説明するための図である。
【図２】図１に示すECUが備えるエンジンモデルの構成を示すブロック図である。
【図３】クランク軸周りの各要素に付す記号を示す図である。
【図４】図２に示すフリクションモデルがフリクショントルクTRQfを取得するために備えているフリクションマップの一例を示している。
【図５】筒内圧力Pの履歴取得の変形例の手法を説明するための図である。
【図６】本発明の実施の形態１において実行されるルーチンのフローチャートである。
【図７】図１に示すECUが記憶するクランク軸の目標停止領域を示す図である。
【図８】図２に示すフリクションモデルが備えるフリクションマップの各マップ点の値にPID補正量を反映させるために、図６に示すルーチンのステップ１１０において行われる手法を説明するための図である。
【図９】フィードバックを利用した目標燃焼カット回転数の算出手法を説明するためのブロック図である。
【図１０】図６に示すルーチンのステップ１１４で行われる処理を説明するためのタイムチャートである。
【図１１】本発明の実施の形態２において実行されるルーチンのフローチャートである。
【図１２】本発明の実施の形態３において実行されるルーチンのフローチャートである。
【符号の説明】
【０１３３】
１０  内燃機関
１２  ピストン
１４  コンロッド
１６  クランク軸
２４  スロットルバルブ
２６  スロットルポジションセンサ
４０  クランク角センサ
４２  カム角センサ
５０  ECU(Electronic Control Unit)
５２  空燃比センサ
５４  水温センサ
６０  エンジンモデル
６２  クランク軸周りの運動方程式演算部
６４  フリクションモデル
６６  吸気圧力推定モデル
６８  筒内圧推定モデル
７０  燃焼波形算出部
７２  大気圧補正項算出部
７４  大気温補正項算出部
７６  PIDコントローラ
dQ/dθ  熱発生率
dθ/dt  クランク角回転速度
【図１】
2007211684.tif 000020
【図２】
2007211684.tif 000021
【図３】
2007211684.tif 000022
【図４】
2007211684.tif 000023
【図５】
2007211684.tif 000024
【図６】
2007211684.tif 000025
【図７】
2007211684.tif 000026
【図８】
2007211684.tif 000027
【図９】
2007211684.tif 000028
【図１０】
2007211684.tif 000029
【図１１】
2007211684.tif 000030
【図１２】
2007211684.tif 000031