(57)【特許請求の範囲】
【請求項１】
内燃機関の運転状態を表す運転状態量を変数として同機関の点火時期を算出する関数により表された点火時期モデルであって同機関の燃焼状態を示す燃焼状態指標値が所定の目標燃焼状態を示す目標燃焼状態指標値と一致するように予め適合された初期点火時期モデルを備えた内燃機関の点火時期制御装置であって、
実際の前記運転状態量を実運転状態量として取得する運転状態量取得手段と、
前記取得された実運転状態量を前記初期点火時期モデルに適用することにより初期点火時期を算出する初期点火時期算出手段と、
前回の実際の点火に基く燃焼に対する実際の燃焼状態指標値を実燃焼状態指標値として取得する燃焼状態指標値取得手段と、
今回の点火に基づく燃焼に対する燃焼状態指標値が前記目標燃焼状態指標値に近づくように、前記取得された実燃焼状態指標値と前記目標燃焼状態指標値との差に基づいて前回の点火時期に対する補正量を算出する補正量算出手段と、
前記補正量が算出される毎に前記補正量が０に近づくように前記初期点火時期モデルを点火時期モデルの初期値として同点火時期モデルを表す関数を順次修正する学習を行うことにより学習後点火時期モデルを取得するモデル学習手段と、
前記取得された実運転状態量を前記学習後点火時期モデルに適用することにより学習後点火時期を算出する学習後点火時期算出手段と、
前記機関の運転状態が過渡運転状態であるか否かを判定する過渡運転状態判定手段と、
前記機関の運転状態が過渡運転状態であると判定された場合、前記前回の実際の点火時期と前記前回の点火時期に対する補正量とにより定まるフィードバック点火時期が前記初期点火時期と前記学習後点火時期とのどちらに近いかを判定し、前記フィードバック点火時期が前記学習後点火時期よりも前記初期点火時期に近いと判定された場合には前記初期点火時期を今回の最終点火時期に設定し、前記フィードバック点火時期が前記初期点火時期よりも前記学習後点火時期に近いと判定された場合には前記学習後点火時期を今回の最終点火時期に設定し、前記機関の運転状態が過渡運転状態でないと判定された場合、前記学習後点火時期を今回の最終点火時期に設定する点火時期制御手段と、
前記設定された最終点火時期にて実際の点火を実行する点火実行手段と、
を備えた点火時期制御装置。
【請求項２】
請求項１に記載の内燃機関の点火時期制御装置において、
前記過渡運転状態判定手段は、
前記機関の負荷の変化速度を取得し同取得された負荷の変化速度が所定の負荷変化速度閾値よりも大きいとき前記機関の運転状態が過渡運転状態であると判定するように構成された点火時期制御装置。
【請求項３】
請求項１又は請求項２に記載の内燃機関の点火時期制御装置において、
前記燃焼状態指標値は前記機関のクランク角度が所定のクランク角度であるときの実際の燃焼割合であり、前記目標燃焼状態指標値は同機関のクランク角度が同所定のクランク角度であるときの燃焼割合の目標値である点火時期制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、点火時期モデルを修正（学習）するモデル学習手段を備え、修正（学習）された点火時期モデルを用いて点火時期を制御する内燃機関の点火時期制御装置に関する。
【背景技術】
【０００２】
従来より、筒内圧検出手段により検出される筒内圧（燃焼室内の圧力）に基づいて燃焼割合ＭＦＢ（Mass Fraction Burned）を算出し、所定のクランク角度（例えば、圧縮上死点後のクランク角度８°）における燃焼割合ＭＦＢが目標燃焼割合（例えば、６０％）と一致するように点火時期を制御すれば、内燃機関の発生するトルクを最大にすることができることが知られている。このように点火時期を制御すれば、製造される同一機種の内燃機関の間に個体差がある場合でも、各機関に対して適切な点火時期が設定され得る。従って、燃焼効率が改善され、機関の出力トルクを増大させることができる。
【０００３】
燃焼割合ＭＦＢは燃焼室内で発生する燃焼の状態を示す燃焼状態指標値である。燃焼割合ＭＦＢは図示熱量の割合と実質的に等価な値である。図示熱量の割合は、一回の燃焼行程に関して、「燃焼室において燃焼した総ての燃料によって発生した熱のうちピストンに対する仕事に変換された熱の総量Ｑtotalに対する、所定のタイミングまでに同燃焼室において燃焼した燃料によって発生した熱のうちピストンに対する仕事に変換された熱の積算量Ｑsumの割合Ｑsum／Ｑtotal」と定義される。燃焼割合ＭＦＢは、「燃焼室において燃焼した総ての燃料のうちピストンに対する仕事に寄与した燃料の総量に対する、所定のタイミングまでに同燃焼室において燃焼した燃料のうちピストンに対する仕事に寄与した燃料の積算量の割合」と定義される。
【０００４】
かかる点火時期制御装置の一つは、所定のクランク角度における実際の燃焼割合を取得するとともに、その取得した燃焼割合と目標燃焼割合との差が小さくなるように点火時期をフィードバック制御するようになっている（例えば、特許文献１を参照）。
【特許文献１】特開平９−３１７５２２号公報
【発明の開示】
【０００５】
ところで、内燃機関の運転状態を表す運転状態量（例えば、機関の負荷及び機関回転速度）を引数とするマップ（ルックアップ−テーブル）を用いて点火時期を決定する手法に代え、点火時期モデルを用いて点火時期を決定する手法が開発されて来ている。点火時期モデルは、内燃機関の運転状態量を変数とする関数（数式）により表される。この点火時期モデルは、種々の運転状態量に対して所定のクランク角度における燃焼割合が目標燃焼割合と一致するように予め適合される。より具体的に述べると、点火時期モデルを表す関数は一般に複数の係数を有する関数であり、それらの係数が上述したように適合される。本明細書において、このように予め適合された関数（適合された係数等を有する関数）によって表される点火時期モデルを、便宜上「初期点火時期モデル」と称呼する。
【０００６】
一方、製造される個々の内燃機関の間には個体差が存在する。更に、内燃機関の使用に伴って機関の特性は経時変化する。従って、初期点火時期モデルにより、常に最適な点火時期を決定することはきない。そこで、所定のクランク角度における実際の燃焼割合が目標燃焼割合と一致するように（実際の燃焼状態指標値が目標燃焼状態指標値と一致するように）、点火時期モデルを表す関数を学習によって修正する学習制御を実行することが考えられる。即ち、学習制御は、所定のクランク角度における実際の燃焼割合と目標燃焼割合との差が０になるように、逐次最小二乗法等の周知の誤差低減手法によって前記係数を順次修正して行く。本明細書において、このように学習された関数（修正された係数等を有する関数）によって表される点火時期モデルを、便宜上「学習後点火時期モデル」と称呼する。
【０００７】
しかしながら、発明者は更に検討を重ねた結果、学習が特定の運転領域（学習領域）において偏ってなされると、学習が不十分な運転領域において学習後点火時期モデルに基いて算出される点火時期が不適切な値となって、特に、急加速時等の過渡運転状態においてノッキングが発生したり、或いは、燃焼状態が不安定となってトルク変動が発生する等の問題が生じることを見いだした。
【０００８】
以下、この点について詳述する。図５は総ての運転領域に対して偏りなく学習が行われた場合の点火時期モデルにより算出される点火時期を示している。即ち、図５により示される点火時期モデルにより得られる点火時期は略適正値である。これに対し、図６はある特定運転領域（例えば、中低負荷且つ中速回転の領域）においてのみ学習が行われた後の点火時期モデルにより算出される点火時期を示している。図５と図６との比較から、特定運転領域において偏って学習が行われると、その特定運転領域の点火時期は適正値に近い値となるが、他の領域における点火時期が特定運転領域における学習の影響を受け、適正値と乖離してしまうことが理解される。また、点火時期モデルの学習は、過去の情報（前回までの燃焼状態についての情報）を残しながら、燃焼状態指標値に基づくフィードバック制御によって点火時期モデルを修正する制御である。従って、学習は、急加速等の機関の負荷が急激に変化する過渡運転状態において十分な応答性をもって点火時期モデルを修正することができない。
【０００９】
一方、図７は、ある時点まで車両を走行させた場合における運転領域別の学習回数（学習頻度）を示したグラフである。図７から、学習は特定の運転領域において集中的に行われることが多いということが理解される。
【００１０】
以上から、本発明の目的の一つは、学習により点火時期モデルを順次修正するモデル学習手段を備えた点火時期制御装置において、学習が不十分なために過渡運転状態における点火時期が適切な点火時期から大きく乖離することに起因するノッキング等が発生することがない内燃機関の点火時期制御装置を提供することにある。
【００１１】
上記目的を達成する本発明による内燃機関の点火時期制御装置は、初期点火時期モデルを備える。初期点火時期モデルは、学習の対象となる点火時期モデルの原形（初期値）となるモデルである。点火時期モデルは、機関の運転状態を表す運転状態量を変数として機関の点火時期を算出する関数により表される。初期点火時期モデルは、初期点火時期モデルにより算出された点火時期にて点火を実行したとき、機関の燃焼状態を示す燃焼状態指標値が所定の目標燃焼状態を示す目標燃焼状態指標値とできるだけ一致するように、予め適合されている。
【００１２】
この点火時期制御装置は、更に、運転状態量取得手段と、初期点火時期算出手段と、燃焼状態指標値取得手段と、補正量算出手段と、モデル学習手段と、学習後点火時期算出手段と、を備える。
【００１３】
運転状態量取得手段は、「機関の運転状態を表す実際の運転状態量」を「実運転状態量」として取得する。運転状態量とは、例えば、機関の負荷及び機関回転速度である。
初期点火時期算出手段は、前記取得された実運転状態量を前記初期点火時期モデルに適用することにより初期点火時期を算出する。
【００１４】
燃焼状態指標値取得手段は、前回の実際の点火に基く燃焼に対する実際の燃焼状態指標値を実燃焼状態指標値として取得する。燃焼状態指標値は、例えば、所定クランク角度における燃焼割合、所定クランク角度における図示熱量の割合、及び、所定クランク角度における筒内圧等である。
補正量算出手段は、今回の点火に基づく燃焼に対する燃焼状態指標値が前記目標燃焼状態指標値に近づくように、前記取得された実燃焼状態指標値と前記目標燃焼状態指標値との差に基づいて前回の点火時期に対する補正量を算出する。
【００１５】
モデル学習手段は、前記補正量が算出される毎に、その補正量が０に近づくように、前記初期点火時期モデルを点火時期モデルの初期値として「点火時期モデルを表す関数を順次修正する学習」を行うことにより学習後点火時期モデルを取得する。即ち、モデル学習手段は、補正量が得られる毎に、その時点の学習後点火時期モデルをその補正量に基づいて更に修正する（学習を行う）ことにより、学習後点火時期モデルを更新する。
学習後点火時期算出手段は、前記取得された実運転状態量を前記学習後点火時期モデルに適用することにより学習後点火時期を算出する。
【００１６】
加えて、この点火時期制御装置は、過渡運転状態判定手段と、点火時期制御手段と、点火実行手段と、を備えている。
【００１７】
過渡運転状態判定手段は、前記機関の運転状態が過渡運転状態であるか否かを判定する。例えば、過渡運転状態判定手段は、前記機関の負荷の変化速度を取得し、その取得された負荷の変化速度が所定の負荷変化速度閾値よりも大きいとき前記機関の運転状態が過渡運転状態であると判定するように構成されてもよい。
【００１８】
点火時期制御手段は、
（１）前記機関の運転状態が過渡運転状態であると判定された場合、前記前回の実際の点火時期と前記前回の点火時期に対する補正量とにより定まるフィードバック点火時期が前記初期点火時期と前記学習後点火時期とのどちらに近いかを判定する。
【００１９】
そして、点火時期制御手段は、
（１−１）前記フィードバック点火時期が前記学習後点火時期よりも前記初期点火時期に近いと判定された場合には前記初期点火時期を今回の最終点火時期に設定し、
（１−２）前記フィードバック点火時期が前記初期点火時期よりも前記学習後点火時期に近いと判定された場合には前記学習後点火時期を今回の最終点火時期に設定する。
【００２０】
更に、点火時期制御手段は、
（２）前記機関の運転状態が過渡運転状態でないと判定された場合、
前記学習後点火時期を今回の最終点火時期に設定する。
【００２１】
点火実行手段は、前記点火時期制御手段により設定された最終点火時期にて実際の点火を実行する。
【００２２】
これによれば、上記（２）に記載したように、前記機関の運転状態が過渡運転状態でないと判定された場合、前記学習後点火時期にて実際の点火が実行される。過渡運転状態でなければ、機関運転状態の変化は穏やかであるから、点火時期モデルの学習が運転状態の変化に対して大きく遅れることがない。従って、学習後点火時期は適正な点火時期に近い点火時期となるので、その学習後点火時期にて実際の点火を行うことにより、所望の燃焼状態に近しい状態を得ることができる。
【００２３】
これに対し、上記（１−１）に記載したように、機関の運転状態が過渡運転状態であると判定された場合であって、前記フィードバック点火時期が前記学習後点火時期よりも前記初期点火時期に近いと判定された場合、初期点火時期にて点火が実行される。
【００２４】
前記フィードバック点火時期が前記学習後点火時期よりも前記初期点火時期に近い場合、その時点の運転状態に対して学習後点火時期モデルの学習が十分ではない（他の運転領域における学習の影響を受けて学習後点火時期モデルが適正なモデルから乖離している）可能性が高く、予め適合されている初期点火時期モデルの方がその時点の運転状態に対してより好ましいモデルであると考えられる。従って、初期点火時期モデルに基づいて算出された初期点火時期にて点火を実行することにより、ノッキング等の発生を回避することができる。
【００２５】
更に、上記（１−２）に記載したように、前記フィードバック点火時期が前記初期点火時期よりも前記学習後点火時期に近いと判定された場合、学習後点火時期にて点火が実行される。
【００２６】
前記フィードバック点火時期が前記初期点火時期よりも前記学習後点火時期に近い場合、初期点火時期モデルよりも学習後点火時期モデルの方がその時点の運転状態に対してより好ましいモデルであると考えられる。従って、学習後点火時期モデルに基づいて算出された学習後点火時期にて点火を実行することにより、燃焼状態指標値を目標燃焼状態指標値により近づけることができる点火を実行することができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の実施形態に係る内燃機関の点火時期制御装置について図面を参照しつつ説明する。
（構成）
図１は、本発明の実施形態に係る点火時期制御装置（以下、単に「制御装置」と称呼することもある。）をピストン往復動型の火花点火式多気筒（４気筒）４サイクル内燃機関１０に適用したシステムの概略構成を示している。なお、図１は、特定の気筒の断面のみを図示しているが、他の気筒も同様な構成を備えている。
【００２８】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排ガスを外部に放出するための排気系統５０とを含んでいる。
【００２９】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これによりクランク軸２４が回転するようになっている。シリンダ２１とピストン２２のヘッドは、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００３０】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を開閉駆動する吸気弁制御装置３３、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料噴射手段）３９を備えている。
【００３１】
吸気弁制御装置３３は、インテークカムシャフトとインテークカム（図示せず）との相対回転角度（位相角度）を油圧により調整・制御する周知の構成を備え、吸気弁３２の開弁時期（吸気弁開弁時期）を変更することができるようになっている。本例において、吸気弁の開弁期間（開弁クランク角度幅）は一定である。従って、吸気弁開弁時期が所定角度だけ進角又は遅角させられると、吸気弁閉弁時期も同所定角度だけ進角又は遅角させられる。また、排気弁３５の開弁時期及び閉弁時期は一定である。従って、吸気弁制御装置３３によって吸気弁開弁時期が変更されることに伴ってオーバーラップ期間が変化する。
【００３２】
吸気系統４０は、吸気ポート３１に連通し吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３及びスロットル弁駆動手段を構成するＤＣモータからなるスロットル弁アクチュエータ４３ａを備えている。
【００３３】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ（排気管）５２、上流側の三元触媒５３及び下流側の三元触媒５４を備えている。上流側の三元触媒５３は、エキゾーストパイプ５２に配設されている。下流側の三元触媒５４は、上流側の三元触媒５３の下流においてエキゾーストパイプ５２に配設されている。排気ポート３４、エキゾーストマニホールド５１及びエキゾーストパイプ５２は、排気通路を構成している。
【００３４】
一方、このシステムは、熱線式エアフローメータ６１、スロットルポジションセンサ６２、カムポジションセンサ６３、クランクポジションセンサ６４、各気筒に設けられた筒内圧センサ６５、冷却水温センサ６６、第１触媒５３の上流の排気通路に配設された空燃比センサ６７、第１触媒５３の下流であって第２触媒５４の上流の排気通路に配設された空燃比センサ６８及びアクセル開度センサ６９を備えている。
【００３５】
熱線式エアフローメータ６１は、吸気管４１内を流れる吸入空気の単位時間あたりの質量流量を検出し、質量流量Gaを表す信号を出力するようになっている。スロットルポジションセンサ６２は、スロットル弁４３の開度を検出し、スロットル弁開度TAを表す信号を出力するようになっている。カムポジションセンサ６３は、インテークカムシャフトが所定角度から９０度、次いで９０度、更に１８０度回転する毎に一つのパルスを出力するようになっている。この信号はＧ２信号とも称呼される。クランクポジションセンサ６４は、クランク軸２４が１０度回転する毎にパルスを出力するようになっている。クランクポジションセンサ６４から出力されるパルスはエンジン回転速度NEを表す信号に変換されるようになっている。更に、カムポジションセンサ６３及びクランクポジションセンサ６４からの信号に基いて、機関１０のクランク角度が求められるようになっている。
【００３６】
筒内圧センサ６５は、燃焼室２５内の圧力を検出し、筒内圧Ｐｃを表す信号を出力するようになっている。筒内圧センサ６５は各気筒に一つずつ配設されている。冷却水温センサ６６は機関１０の冷却水の温度を検出し、冷却水温度ＴＨＷを表す信号を出力するようになっている。上流側空燃比センサ６７及び下流側空燃比センサ６８は、触媒５３の上下流の空燃比を検出し、その上下流の空燃比を表す信号をそれぞれ出力するようになっている。アクセル開度センサ６９は、運転者によって操作されるアクセルペダル８１の操作量を検出し、アクセルペダル８１の操作量Accpを表す信号を出力するようになっている。
【００３７】
電気制御装置７０は、互いにバスで接続されたＣＰＵ７１、ＣＰＵ７１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）及び定数等を予め記憶したＲＯＭ７２、ＣＰＵ７１が必要に応じてデータを一時的に格納するＲＡＭ７３、電源が投入された状態でデータを格納するとともに格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ７４、並びに、ＡＤコンバータを含むインターフェース７５等からなるマイクロコンピュータである。インターフェース７５は、前記センサ６１〜６９と接続され、ＣＰＵ７１にセンサ６１〜６９からの信号を供給するようになっている。インターフェース７５は、ＣＰＵ７１の指示に応じて吸気弁制御装置３３、インジェクタ３９及びスロットル弁アクチュエータ４３ａに駆動信号を送出するとともに、イグナイタ３８に点火信号を送出するようになっている。
【００３８】
（制御の概要）
次に、上記のように構成された内燃機関１０の点火時期制御装置により行われる点火時期制御の概要について説明する。
【００３９】
＜燃焼割合ＭＦＢの推定（取得）＞
上述のように定義された燃焼割合ＭＦＢは上述のように定義された図示熱量の割合Ｑsum／Ｑtotalを表す値として推定（取得）される。燃焼割合ＭＦＢ及び図示熱量の割合は、何れも機関１０の燃焼状態を示す燃焼状態指標値である。燃焼割合ＭＦＢを筒内圧センサ６５によって検出された筒内圧Ｐｃから求める手法の詳細は、例えば、特開２００６−１４４６４５号公報に開示されているので、以下、その概略について述べる。
【００４０】
本例において、燃焼割合ＭＦＢは所定のタイミングを表すクランク角度θに対応して求められる。クランク角度θにおける燃焼割合ＭＦＢをＭＦＢθと表す。このクランク角度θは圧縮上死点において０となり、圧縮上死点から圧縮上死点前に向って進角するほど絶対値が大きくなる負の値をとり、圧縮上死点から圧縮上死点後に向って遅角するほど絶対値が大きくなる正の値をとるように定義される。例えば、θ＝−θ１°（θ１＞０）であることは、クランク角度がＢＴＤＣθ１（圧縮上死点前クランク角度θ１°）であることを示す。θ＝θ２°（θ２＞０）であることは、クランク角度がＡＴＤＣθ２（圧縮上死点後クランク角度θ２°）であることを示す。
【００４１】
クランク角度θにおける燃焼割合ＭＦＢθは、下記の（１）式により推定される。（１）式において、クランク角度θｓ（θｓ＜０）は、対象とする燃焼行程（膨張行程）に向う圧縮行程において吸気弁３２及び排気弁３５の両方が閉じた状態にあり且つ点火時期よりも十分に進角した時期（例えば、θｓ＝−６０°、即ち、ＢＴＤＣ  ６０°）である。クランク角度θｅ（θｅ＞０）は、対象とする燃焼行程における燃焼が実質的に終了する最も遅い時期よりも遅い所定の時期且つ排気弁開弁時期よりも進角した時期（例えば、θｅ＝６０°、即ち、ＡＴＤＣ  ６０°）である。
【数１】
0004985384.tif 000002
【００４２】
この（１）式は、発生した熱のうちピストンに対する仕事に寄与した熱の積算量Ｑの変化パターンがＰｃ（θ）Ｖ（θ）κの変化パターンと概ね一致するという知見に基いている。Ｐｃ（θ）はクランク角度θにおける筒内圧、Ｖ（θ）はクランク角度θにおける燃焼室２５の容積、κは混合ガスの比熱比（例えば、１．３２）である。なお、（１）式の分母はＭＦＢの１００％に相当する値である。
【００４３】
＜点火時期制御の基本的内容＞
先ず、この制御装置による点火時期制御の基本的内容について説明する。
【００４４】
図２は、点火時期ＳＡと、８°燃焼割合ＭＦＢ８と、機関１０の発生トルクＴＲＱと、の関係を示したグラフである。８°燃焼割合ＭＦＢ８とは、クランク角度θが圧縮上死点後８°（＝ＡＴＤＣ  ８°）にあるときの燃焼割合ＭＦＢである。図２から明らかなように、発生トルクＴＲＱが最大となる８°燃焼割合ＭＦＢ８は約６０％（図２の領域Ａを参照。）である。従って、制御装置は、８°燃焼割合ＭＦＢ８が所定の目標値ＭＦＢ８ｔｇｔ（例えば、６０％近傍の値）となるように点火時期を制御する。なお、この目標値は機関の種類によって当然異なる値となる。例えば、目標燃焼割合ＭＦＢ８ｔｇｔは５０％であってもよい。また、５°燃焼割合ＭＦＢ５が目標燃焼割合ＭＦＢ５ｔｇｔ（例えば、５０％）である場合に発生トルクＴＲＱが最大となるような機関においては、制御装置は、５°燃焼割合ＭＦＢ５が目標値ＭＦＢ５ｔｇｔ（例えば、５０％近傍の値）となるように点火時期を制御する。
【００４５】
より具体的に述べると、制御装置は機能ブロック図である図３に示した各機能達成部を有する。以下、各ブロックの機能を順に説明する。本明細書において、変数の後に付与される記号（ｋ）は、その変数がある特定の気筒において次に発生する燃焼行程（即ち、今回の燃焼行程）に対する変数であることを示す。従って、（ｋ−１）が付与された変数は、その特定の気筒における前回の燃焼行程（既に終了した直前の燃焼行程、即ち、１回前（７２０°クランク角前）の燃焼行程）に対する変数である。また、点火時期ＳＡ（ＳＡ＞０）とは、点火がＢＴＤＣ  ＳＡ°（圧縮上死点前のクランク角度ＳＡ°）において行われることを意味する。
【００４６】
運転状態量取得部Ａ１は、機関の運転状態を表す量（運転状態量）を取得するようになっている。本例において、運転状態量は、機関１０の負荷ＫＬ及び機関回転速度ＮＥである。負荷ＫＬは吸入された筒内空気重量に比例する「充填率」である（４気筒エンジンの場合、ＫＬ＝４・Ｍｃ／（ρ・Ｌ）、Ｍｃ：一気筒への吸入空気重量、ρ：空気密度、Ｌ：排気量）。負荷ＫＬは、エアフローメータ６１の検出する質量流量Ga及び機関回転速度ＮＥにより求められる。負荷ＫＬは、空気の挙動を記述した周知の空気モデルにより取得されてもよい。運転状態量取得部Ａ１は、負荷ＫＬに代え、機関１０の負荷としてアクセルペダル８１の操作量Accp、スロットル弁開度TA及び機関１回転あたりの吸入空気量Ga等を取得するように構成されていてもよい。
【００４７】
過渡運転状態判定部Ａ２は、機関１０の運転状態が過渡運転状態であるか否かを判定し、その判定結果を出力するようになっている。より具体的に述べると、過渡運転状態判定部Ａ２は、スロットルポジションセンサ６２からスロットル弁開度TAを入力し、スロットル弁開度TAの単位時間あたりの変化量（即ち、機関１０の負荷の変化速度としてのスロットル弁開度変化速度）ΔTAを求める。更に、過渡運転状態判定部Ａ２は、スロットル弁開度変化速度ΔTAが所定のスロットル弁開度変化速度閾値（負荷変化速度閾値）ΔTAthより大きいか否かを判定し、スロットル弁開度変化速度ΔTAが所定のスロットル弁開度変化速度閾値ΔTAthより大きいと判定したとき、機関の運転状態が過渡運転状態である旨の信号を出力するようになっている。
【００４８】
点火時期制御部Ａ３は、初期点火時期算出部Ａ３ａと、学習後点火時期算出部Ａ３ｂと、最終点火時期設定部Ａ３ｃと、を備えている。
【００４９】
初期点火時期算出部Ａ３ａは、運転状態量取得部Ａ１によって取得された実運転状態量（ＮＥ（ｋ），ＫＬ（ｋ））を初期点火時期モデルに適用することにより今回の燃焼に対する点火時期である「初期点火時期ＳＡin」を算出するようになっている。初期点火時期モデル及び後述する学習後点火時期モデルは、下記の（２）式の形の関数によって表される点火時期モデルである。
【数２】
0004985384.tif 000003
【００５０】
初期点火時期モデルは、上記（２）式に示したように、内燃機関の運転状態を表す運転状態量（ＮＥ（ｋ），ＫＬ（ｋ））を変数として有する関数であって、点火時期ＳＡ（ｋ）を算出する関数により表された点火時期モデルである。初期点火時期モデルは、総ての運転領域において８°燃焼割合ＭＦＢ８が目標燃焼割合ＭＦＢ８ｔｇｔと精度良く一致するように、予め適合された係数（初期値、初期係数）θ０、θ１、θ２及びθ３を有する。この予め適合された係数（初期値、初期係数）θ０、θ１、θ２及びθ３は、ＲＯＭ７２及びバックアップＲＡＭ７４内に格納されるようになっている。
【００５１】
従って、下記（２）式の係数θ０〜θ３が予め適合された（初期値、初期係数）に戻された関数に、実運転状態量（ＮＥ（ｋ），ＫＬ（ｋ））を代入することにより得られる今回の点火時期ＳＡ（ｋ）が、「初期点火時期ＳＡin」である。
【００５２】
目標値設定部Ａ４は、８°燃焼割合ＭＦＢ８に対する目標値である「目標燃焼割合ＭＦＢ８ｔｇｔ」を出力するようになっている。目標燃焼割合ＭＦＢ８ｔｇｔは本例において一定値Ｍ０（例えば、６０％）である。なお、目標値設定部Ａ４は、運転状態量を入力し、その運転状態量に応じて目標燃焼割合ＭＦＢ８ｔｇｔを変更するように構成されていてもよい。例えば、目標値設定部Ａ４は、スロットル弁開度変化速度ΔTAが所定のスロットル弁開度変化速度閾値ΔTAthより大きい急加速運転時において、一時的に値Ｍ０より小さい値Ｍ１に設定されてもよい。なお、目標燃焼割合ＭＦＢ８ｔｇｔは、機関の燃焼効率が良く、且つ、ＨＣやＣＯ等の排出量が低い値となり、且つ、ノッキング等によるトルク変動等が発生しないような値に設定されることが望ましい。
【００５３】
実燃焼割合ＭＦＢ８算出部Ａ５は、上記（１）式に従って、前回の燃焼行程中のＡＴＤＣ  ８°における燃焼割合ＭＦＢ８（ｋ−１）を算出するようになっている。即ち、実燃焼割合ＭＦＢ８算出部Ａ５は、下記の（３）式に基いて８°燃焼割合ＭＦＢ８（ｋ−１）を算出する。（３）式における右辺の各値は、総て前回の燃焼行程中において得られた値である。なお、−６０°は圧縮上死点前のクランク角度６０°を意味する。また、８°及び６０°は圧縮上死点後のクランク角度８°及び６０°をそれぞれ意味する。
【数３】
0004985384.tif 000004
【００５４】
補正量算出部Ａ６は、目標値設定部Ａ４から取得される目標燃焼割合ＭＦＢ８ｔｇｔと実燃焼割合ＭＦＢ８算出部Ａ５から取得される実際の８°燃焼割合ＭＦＢ８（ｋ−１）との差ｄＭＦＢ８（ｋ−１）に基づき、前回の点火時期ＳＡ（ｋ−１）に対して進角するべき補正量（進角するべきクランク角度）ΔＳＡ（ｋ−１）を算出する。即ち、今回の点火時期ＳＡ（ｋ）として適正値に近いと考えられる点火時期をフィードバック点火時期ＳＡｆｂとすると、フィードバック点火時期ＳＡｆｂは下記の（４）式により表される。
【数４】
0004985384.tif 000005
【００５５】
具体的に述べると、補正量算出部Ａ６は、差ｄＭＦＢ８（ｋ−１）と補正量ΔＳＡ（ｋ−１）との関係を予め規定したテーブル（又は、関数）を備えている。補正量算出部Ａ６は、そのテーブルに実際に得られた差ｄＭＦＢ８（ｋ−１）を適用することにより、実際の補正量ΔＳＡ（ｋ−１）を算出する。
【００５６】
このように、補正量算出部Ａ６は、今回の点火時期ＳＡ（ｋ）に基づく燃焼に対する燃焼状態指標値である８°燃焼割合ＭＦＢ８（ｋ）が目標燃焼状態指標値ＭＦＢ８ｔｇｔに近づくように、差ｄＭＦＢ８（ｋ−１）に基づいて前回の点火時期ＳＡ（ｋ−１）に対する補正量ΔＳＡ（ｋ−１）を算出する。即ち、前回の点火時期ＳＡ（ｋ−１）に補正量ΔＳＡ（ｋ−１）を加えることにより得られるフィードバック点火時期ＳＡｆｂを今回の点火時期とすれば、今回の点火に基づく燃焼によって得られる８°燃焼割合ＭＦＢ８（ｋ）と目標燃焼状態指標値ＭＦＢ８ｔｇｔとの差ｄＭＦＢ８（ｋ）が前回の燃焼における差ｄＭＦＢ８（ｋ−１）よりも小さくなる。
【００５７】
なお、補正量算出部Ａ６は、下記（５）式に示したように、差ｄＭＦＢ８（ｋ−１）に対してＰＩ（比例・積分）処理を行うことにより補正量ΔＳＡ（ｋ−１）を求めてもよい。（５）式のＫｐは比例定数であり、Ｋｉは積分定数である。ＳｄＭＦＢ８（ｋ−１）は差ｄＭＦＢ８の積分値であり、下記（６）式に基いて求められる。
【数５】
0004985384.tif 000006
【数６】
0004985384.tif 000007
【００５８】
遅延部Ａ７は、運転状態量取得部Ａ１により取得された今回の燃焼行程に対する運転状態量（ＮＥ（ｋ）、ＫＬ（ｋ））を保持するとともに、前回の燃焼行程に対する点火時期を決定するために使用された「前回の燃焼行程に対する運転状態量（ＮＥ（ｋ−１）、ＫＬ（ｋ−１））」を出力する。
【００５９】
モデル学習部Ａ８は、補正量算出部Ａ６から得られる補正量ΔＳＡ（ｋ−１）と、遅延部Ａ７から得られる前回の運転状態量（ＮＥ（ｋ−１）、ＫＬ（ｋ−１））と、に基いて、点火時期モデルの学習を行う。より具体的には、モデル学習部Ａ８は、補正量ΔＳＡ（ｋ−１）が最小の値となるように（即ち、前回の運転状態量を学習後点火時期モデルに適用して得られる点火時期が上記フィードバック点火時期ＳＡｆｂに近づく（一致する）ように）、上述した点火時期モデルを表す関数の係数θ０〜θ３を、周知の「逐次最小二乗法（ＲＬＳ：Recrusive Least-Squares）」に基いて算出・更新する。
【００６０】
点火時期制御部Ａ３が備える学習後点火時期算出部Ａ３ｂは、モデル学習部Ａ８により修正・更新（学習）された係数（学習後係数）θ０〜θ３を上記（２）式に代入することにより表される関数を「学習後点火時期モデル」として保持するようになっている。学習後係数も、初期係数と同様、バックアップＲＡＭ７４内に格納されるようになっている。学習後点火時期算出部Ａ３ｂは、運転状態量取得部Ａ１によって取得された実運転状態量（ＮＥ（ｋ），ＫＬ（ｋ））を学習後点火時期モデルに適用することにより今回の燃焼に対する点火時期である「学習後点火時期ＳＡgk」を算出するようになっている。
【００６１】
点火時期制御部Ａ３の最終点火時期設定部Ａ３ｃは、初期点火時期算出部Ａ３ａにより算出された今回の点火時期の候補である「初期点火時期ＳＡin」と、学習後点火時期算出部Ａ３ｂにより算出された今回の点火時期の別の候補である「学習後点火時期ＳＡgk」と、の何れか一方を選択し、その選択した点火時期を「今回の最終点火時期ＳＡ（ｋ）」として出力するようになっている。
【００６２】
具体的に述べると、最終点火時期設定部Ａ３ｃは、過渡運転状態判定部Ａ２によって機関１０の運転状態が過渡運転状態であると判定されている場合、その時点の運転状態に対してより好ましいモデルが学習後点火時期モデルであるのか初期点火時期モデルであるのか、を「少なくとも補正量ΔＳＡ（ｋ−１）（実際には、前回の点火時期ＳＡ（ｋ−１）、補正量ΔＳＡ（ｋ−１）、今回の初期点火時期ＳＡin及び今回の学習後点火時期ＳＡgk）」に基づいて判定する。
【００６３】
より詳細には、最終点火時期設定部Ａ３ｃは、今回の初期点火時期ＳＡinと上記（４）式に基づいて得られたフィードバック点火時期ＳＡｆｂとの差の絶対値Ｚin（Ｚin＝｜ＳＡin−ＳＡfb｜）が、今回の学習後点火時期ＳＡgkとフィードバック点火時期ＳＡｆｂとの差の絶対値Ｚgk（Ｚgk＝｜ＳＡgk−ＳＡfb｜）よりも小さいか否かを判定する。
【００６４】
そして、最終点火時期設定部Ａ３ｃは、絶対値Ｚinの方が絶対値Ｚgkよりも小さいと判定される場合、今回の最終点火時期ＳＡ（ｋ）として今回の初期点火時期ＳＡinを選択する。
【００６５】
これに対し、最終点火時期設定部Ａ３ｃは、絶対値Ｚgkの方が絶対値Ｚinよりも小さいと判定される場合、今回の最終点火時期ＳＡ（ｋ）として今回の学習後点火時期ＳＡgkを選択する。
【００６６】
更に、最終点火時期設定部Ａ３ｃは、過渡運転状態判定部Ａ２によって機関１０の運転状態が過渡運転状態でないと判定されている場合、今回の最終点火時期ＳＡ（ｋ）として今回の学習後点火時期ＳＡgkを選択する。
【００６７】
そして、点火時期制御部Ａ３は、最終点火時期ＳＡ（ｋ）として選択された点火時期にて点火が行われるようにイグナイタ３８に点火信号（点火指示信号）を送出する。
【００６８】
＜作用＞
次に、この制御装置（電気制御装置７０）の作用について説明する。
ＣＰＵ７１は、図示しない筒内圧取得ルーチンを実行することにより、各気筒のＰｃ（−６０°）、Ｐｃ（８°）及びＰｃ（６０°）を各気筒に配設された筒内圧センサ６５の出力に基いて取得し、各気筒別にＲＡＭ７３に格納している。更に、ＣＰＵ７１は、図４にフローチャートにより示した点火時期制御ルーチンを特定気筒のクランク角度が燃焼行程開始直前の所定のクランク角度（例えば、特定気筒の圧縮上死点前クランク角度９０°＝ＢＴＤＣ  ９０°）に一致する毎に繰り返し実行している。なお、ＣＰＵ７１は、他の気筒に対しても同様なルーチンを同様なタイミングにて実行するようになっている。
【００６９】
特定気筒のクランク角度が前記所定のクランク角度に一致すると、ＣＰＵ７１は図４のルーチンの処理をステップ４００から開始し、ステップ４０５〜ステップ４３５にて以下の処理を行う。
【００７０】
ステップ４０５：ＣＰＵ７１は、特定気筒の前回の燃焼行程における実際の８°燃焼割合ＭＦＢ８（ｋ−１）を上記（３）式に基いて算出する。このとき、ＣＰＵ７１は、ＲＡＭ７３に格納してある特定気筒のＰｃ（−６０°）、Ｐｃ（８°）及びＰｃ（６０°）を（３）式に適用する。ＣＰＵ７１は、（３）式の燃焼室体積Ｖ（−６０°）、Ｖ（８°）及びＶ（６０°）に、予めＲＯＭ７２内に記憶してある値を代入する。
【００７１】
ステップ４１０：ＣＰＵ７１は、特定気筒の前回の燃焼行程に対する（特定気筒の前回の点火時期を決定する際に使用した）機関回転速度ＮＥ（ｋ−１）及び負荷ＫＬ（ｋ−１）を取得する。同時に、ＣＰＵ７１は、特定気筒の今回の燃焼行程に対する（特定気筒の今回の点火時期を決定する際に使用する）機関回転速度ＮＥ（ｋ）及び負荷ＫＬ（ｋ）を取得する。機関回転速度ＮＥ（ｋ）及び負荷ＫＬ（ｋ）は、現時点における機関回転速度ＮＥ及び負荷ＫＬにそれぞれ等しい。
【００７２】
ステップ４１５：ＣＰＵ７１は、予め定められた目標燃焼割合ＭＦＢ８ｔｇｔとステップ４０５にて取得した実際の８°燃焼割合ＭＦＢ８（ｋ−１）との差ｄＭＦＢ８（ｋ−１）を、目標燃焼割合ＭＦＢ８ｔｇｔから８°燃焼割合ＭＦＢ８（ｋ−１）を減じることにより求める。
ステップ４２０：ＣＰＵ７１は、差ｄＭＦＢ８（ｋ−１）をルックアップテーブルｆ（関数ｆ）に適用することにより補正量ΔＳＡ（ｋ−１）を算出する。本例において、ルックアップテーブルは、差ｄＭＦＢ８（ｋ−１）を定数ｋ倍するように定められている。
【００７３】
ステップ４２５：ＣＰＵ７１は、点火時期モデルの学習を実行する。具体的に述べると、ＣＰＵ７１は、逐次最小二乗法に基いて補正量ΔＳＡ（ｋ−１）を最小とする係数θ０、θ１、θ２及びθ３を算出（決定）する。このとき、ＣＰＵ７１は、機関回転速度ＮＥ（ｋ−１）及び負荷ＫＬ（ｋ−１）を計算に使用する。算出された新たな係数θ０、θ１、θ２及びθ３は、学習後係数としてバックアップＲＡＭ７４に格納される。
【００７４】
ステップ４３０：ＣＰＵ７１は、上記（２）式の係数θ０〜θ３をステップ４２５にて更新された（学習された）係数θ０〜θ３に設定し、その（２）式に機関回転速度ＮＥ（ｋ）及び負荷ＫＬ（ｋ）を代入することにより、今回の点火時期（次に到来する燃焼行程に対する点火時期）に対応する点火時期ＳＡgkを算出する。前述したように、係数θ０〜θ３が学習された値（学習後係数）に設定された点火時期モデル（学習後点火時期モデル）によって求められる点火時期は「学習後点火時期ＳＡgk」と称呼される。
【００７５】
ステップ４３５：ＣＰＵ７１は、上記（２）式の係数θ０〜θ３を初期値（初期係数）に設定し、その（２）式に機関回転速度ＮＥ（ｋ）及び負荷ＫＬ（ｋ）を代入することにより、今回の点火時期に対応する点火時期ＳＡinを算出する。前述したように、係数θ０〜θ３が初期値に戻された点火時期モデル（初期点火時期モデル）によって求められる点火時期は「初期点火時期ＳＡin」と称呼される。
【００７６】
次に、ＣＰＵ７１はステップ４４０に進み、スロットル弁開度変化速度ΔTAが所定のスロットル弁開度変化速度閾値ΔTAthより小さいか否かを判定する。スロットル弁開度TAは、アクセルペダル８１の操作量Accpが大きくなるほど大きくなるようにＣＰＵ７１及びスロットル弁アクチュエータ４３ａによって制御されている。また、スロットル弁開度TAの単位時間あたりの変化量は、図示しない所定時間Δｔの経過毎に実行されるルーチンにおいて、そのルーチンを実行する時点のスロットル弁開度TAと、そのルーチンを前回実行した時点におけるスロットル弁開度TA（＝TAold＝Δｔ前のスロットル弁開度）と、の差（ΔTA＝TA−TAold）を求めることにより取得されている。このステップ４４０は、機関１０の運転状態が過渡運転状態（この例では、急加速状態）であるか否かを判定するためのステップである。
【００７７】
いま、機関１０の運転状態が過渡運転状態（この例では、急加速状態）でないと仮定する。このとき、ＣＰＵ７１はステップ４４０にて「Ｙｅｓ」と判定してステップ４４５に進み、最終点火時期（今回の燃焼行程に対する点火時期）ＳＡ（ｋ）にステップ４３０にて求めた学習後点火時期ＳＡgkを設定する。
【００７８】
次いで、ＣＰＵ７１はステップ４５０に進んで、上記ステップ４４５にて設定された最終点火時期ＳＡ（ｋ）（即ち、学習後点火時期ＳＡgk）にて点火が行われるようにイグナイタ３８に点火信号を送出する。そして、ＣＰＵ７１はステップ４９５に進み、本ルーチンを一旦終了する。このステップは点火実行手段に相当する。
【００７９】
一方、機関１０の運転状態が過渡運転状態（この例では、急加速状態）であると仮定する。このとき、ＣＰＵ７１はステップ４４０にて「Ｎｏ」と判定してステップ４５５に進み、上記（４）式に基づいてフィードバック点火時期ＳＡｆｂを算出する。次いで、ＣＰＵ７１はステップ４６０に進み、今回の初期点火時期ＳＡinと上記（４）式に基づいて得られたフィードバック点火時期ＳＡｆｂとの差の絶対値Ｚin（Ｚin＝｜ＳＡin−ＳＡfb｜）が、今回の学習後点火時期ＳＡgkとフィードバック点火時期ＳＡｆｂとの差の絶対値Ｚgk（Ｚgk＝｜ＳＡgk−ＳＡfb｜）よりも小さいか否かを判定する。
【００８０】
このとき、絶対値Ｚinの方が絶対値Ｚgkよりも小さいと、その時点の運転状態に対してより好ましいモデルは初期点火時期モデルであると判断される。そこで、この場合、ＣＰＵ７１はステップ４６０にて「Ｙｅｓ」と判定してステップ４６５に進み、今回の最終点火時期ＳＡ（ｋ）としてステップ４３５にて求めた初期点火時期ＳＡinを設定する。次いで、ＣＰＵ７１はステップ４５０に進んで、上記ステップ４６５にて設定された最終点火時期ＳＡ（ｋ）（即ち、初期点火時期ＳＡin）にて点火が行われるようにイグナイタ３８に点火信号を送出する。そして、ＣＰＵ７１はステップ４９５に進み、本ルーチンを一旦終了する。
【００８１】
これに対し、絶対値Ｚinの方が絶対値Ｚgkよりも大きい（絶対値Ｚinが絶対値Ｚgk以上である）と、その時点の運転状態に対してより好ましいモデルは学習後点火時期モデルであると判断される。そこで、この場合、ＣＰＵ７１はステップ４６０にて「Ｎｏ」と判定してステップ４４５に進み、今回の最終点火時期ＳＡ（ｋ）としてステップ４３０にて求めた学習後点火時期ＳＡgkを設定する。次いで、ＣＰＵ７１はステップ４５０に進んで、上記ステップ４４５にて設定された最終点火時期ＳＡ（ｋ）（即ち、学習後点火時期ＳＡgk）にて点火が行われるようにイグナイタ３８に点火信号を送出する。そして、ＣＰＵ７１はステップ４９５に進み、本ルーチンを一旦終了する。
【００８２】
以上、説明したように、本発明による点火時期制御装置の実施形態によれば、機関の運転状態が過渡運転状態（急加速運転状態）となったとき、その時点の運転状態に対してより好ましいモデルが学習後点火時期モデルであるのか初期点火時期モデルであるのか、を少なくとも補正量ΔＳＡ（ｋ−１）に基づいて判定し、前記フィードバック点火時期が前記学習後点火時期よりも前記初期点火時期に近いと判定された場合には初期点火時期ＳＡinにて点火を行い、前記フィードバック点火時期が前記初期点火時期よりも前記学習後点火時期に近いと判定された場合には学習後点火時期ＳＡgkにて点火を行う。この結果、過渡運転時に不適切な学習後点火時期ＳＡgkが点火時期として用いられないから、ノッキング及び不安定燃焼状態の発生等を回避することができる。
【００８３】
本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、上記各実施形態において、点火時期モデルの学習は逐次最小二乗法により行われていたが、他の手法を用いて学習を行ってもよい。また、点火時期モデルの学習は、係数θ０〜θ３の全てを修正することにより行われていたが、係数θ０〜θ３のうちのいくつかの係数のみを修正するように学習を実行してもよい。更に、点火時期モデルが係数θ０〜θ３以外の適合パラメータを備えている場合、初期点火時期モデルはそのような適合パラメータが適合されたモデルであり、学習後点火時期モデルはそのような適合パラメータを学習により修正したものでもよい。
【００８４】
また、上記実施形態は、燃焼状態指標値である燃焼割合ＭＦＢを筒内圧に基いて取得していたが、燃焼割合ＭＦＢをWiebe関数と呼ばれる燃焼モデル（例えば、特開２００６−９７２０号公報を参照。）により求めるように構成することもできる。このWiebe関数は、ＡＴＤＣ  θ°における燃焼割合ＭＦＢθを、
ＭＦＢθ＝１−exp{−ｅ・((θ＋αｉ)／αｂ)ｆ}
により近似する関数である。ここで、パラメータｅ及びパラメータｆは一定値であり、パラメータαｉは点火時期に基いて変化し、パラメータαｂは吸気弁と排気弁とが同時に開弁するオーバーラップ期間（ＶＶＴ（ｋ））に基いて変化するように構成されているとよい。更に、燃焼状態指標値は、所定のクランク角度における筒内圧、及び／又は、筒内圧の変化速度等であってもよい。
【図面の簡単な説明】
【００８５】
【図１】本発明の実施形態に係る点火時期制御装置を適用した内燃機関の概略図である。
【図２】点火時期と８°燃焼割合と機関の発生トルクとの関係を示したグラフである。
【図３】図１に示した電気制御装置（点火時期制御装置）の機能ブロック図である。
【図４】図１に示したＣＰＵが実行するルーチンを示したフローチャートである。
【図５】総ての運転領域に対して偏りなく学習が行われた場合の点火時期モデルにより算出される点火時期を示した図である。
【図６】ある特定運転領域においてのみ学習が行われた後の点火時期モデルにより算出される点火時期を示した図である。
【図７】所定の運転を行った後における点火時期モデルの学習の運転領域別頻度を表したグラフである。
【符号の説明】
【００８６】
１０…内燃機関、２５…燃焼室、３７…点火プラグ、３８…イグナイタ、３９…インジェクタ、６１…熱線式エアフローメータ、６２…スロットルポジションセンサ、６３…カムポジションセンサ、６４…クランクポジションセンサ、６５…筒内圧センサ、７０…電気制御装置、７１…ＣＰＵ。
【図１】
0004985384.tif 000008
【図２】
0004985384.tif 000009
【図３】
0004985384.tif 000010
【図４】
0004985384.tif 000011
【図５】
0004985384.tif 000012
【図６】
0004985384.tif 000013
【図７】
0004985384.tif 000014