(57)【要約】【課題】要求トルクに応じたトルクを機関に発生させ且つ個々の機関が有する個体差を吸収しながら「機関に供給される混合気の空燃比」を希薄化することができ、更に、機関を高い効率にて運転することが可能な内燃機関の制御装置を提供すること。【解決手段】この制御装置は、今回の燃料噴射量ＴＡＵを現時点のアクセルペダル操作量Accpに基いて決定する（ステップ７１０）。制御装置はトルク変動量ΔＴＲＱの大きさが閾値ΔＴＲＱｔｈを越えないようにしながら目標スロットル弁開度ＴＡｔｇｔ（ｋ）を決定し（ステップ７２０、７３０）、その目標スロットル弁開度から今回の燃焼行程に対する推定負荷ＫＬｓ（ｋ）を推定する。制御装置は、その推定負荷等を燃焼状態モデルに適用して８°仮定燃焼割合ＭＦＢ８ａｓを取得し、その８°仮定燃焼割合が目標燃焼割合と一致するように今回の点火時期ＳＡ（ｋ）を制御する（ステップ７４０〜７６０）。【選択図】図７
2010007607.tif 000002
【特許請求の範囲】
【請求項１】
複数の気筒を有する多気筒内燃機関の制御装置であって、
前記複数の気筒のうちの特定気筒の燃焼室内の圧力である筒内圧を検出する筒内圧検出手段と、
前記検出された筒内圧に基いて前記特定気筒において発生した燃焼の不安定度合いを示す燃焼状態指標値を取得する指標値取得手段と、
現時点において前記機関に要求される要求トルクに応じた値を取得する要求トルク相当値取得手段と、
前記取得された要求トルクに応じた値に基いて前記特定気筒の燃焼室に供給される燃料量を決定するとともに、同決定された燃料量の燃料を現時点を基準として次に到来する前記特定気筒の燃焼行程である今回の燃焼行程中に燃焼する燃料として同特定気筒の燃焼室に供給する燃料供給手段と、
前記取得された燃焼状態指標値が所定の限界閾値と同限界閾値よりも小さい安定閾値との間になるように前記特定気筒の燃焼室に導入される空気の量を制御するためのスロットル弁の目標スロットル弁開度を決定するとともに、実際のスロットル弁開度を同決定した目標スロットル弁開度に一致させるように同スロットル弁を制御するスロットル弁制御手段と、
前記特定気筒の前記今回の燃焼行程に先立つ吸気行程であって且つ同今回の燃焼行程と同じ燃焼サイクル内の吸気行程である今回の吸気行程にて前記実際のスロットル弁開度が前記決定された目標スロットル弁開度に一致させられた状態下にて同特定気筒の燃焼室に空気が導入されるとともに同導入された空気と前記燃料供給手段により同特定気筒に供給された燃料とを含む混合ガスが、現時点の直前に終了した同特定気筒の燃焼行程である前回の燃焼行程に対して使用された前回の点火時期と同じ点火時期にて点火させられることにより燃焼する、と仮定した場合における同仮定した燃焼についての燃焼割合を、同仮定した燃焼に対応する実際の燃焼が発生する前の時点にて仮定燃焼割合として推定する燃焼割合推定手段と、
前記燃焼割合推定手段により推定された仮定燃焼割合のうちの特定クランク角に対する仮定燃焼割合が所定の目標燃焼割合と一致するように前記今回の燃焼行程に対して使用される今回の点火時期を決定するとともに、前記今回の吸気行程を通して前記特定気筒内に形成された混合ガスを同決定した今回の点火時期にて点火する点火手段と、
を備えた内燃機関の制御装置。
【請求項２】
請求項１に記載の内燃機関の制御装置であって、
前記今回の燃焼行程に対して使用される前記今回の点火時期から同今回の燃焼行程において混合ガスの燃焼が終了する燃焼終了時期までの期間である全燃焼対応期間を前記燃焼割合推定手段により推定された仮定燃焼割合に基いて推定する全燃焼対応期間推定手段と、
前記推定された全燃焼対応期間が所定の目標全燃焼対応期間と一致するように前記今回の吸気行程に対する前記特定気筒の吸気弁の開弁タイミング及び前記特定気筒の排気弁の閉弁タイミングのうちの少なくとも一方を変更するバルブタイミング変更手段と、
を備えた内燃機関の制御装置。
【請求項３】
請求項１又は請求項２に記載の内燃機関の制御装置において、
前記指標値取得手段は、前記燃焼状態指標値として、前記特定気筒の一つの燃焼サイクルにおける図示トルクに応じた値と同一つの燃焼サイクルの次の燃焼サイクルにおける図示トルクに応じた値とに基づいてトルク変動量に応じた値を取得するように構成された内燃機関の制御装置。
【請求項４】
請求項１乃至請求項３の何れか一項に記載の内燃機関の制御装置において、
前記燃焼割合推定手段は、
前記検出される筒内圧とは相違するとともに前記機関の運転状態を表し且つ点火時期を含む運転パラメータと、燃焼行程に対する所定タイミングにおける燃焼割合と、の関係を記述する燃焼状態モデルを含むとともに、実際に取得される点火時期以外の前記運転パラメータと前記前回の点火時期とを同燃焼状態モデルに適用することにより前記仮定燃焼割合を推定するように構成された内燃機関の制御装置。
【請求項５】
請求項４に記載の内燃機関の制御装置において、
前記燃焼割合推定手段は、前記運転パラメータの一つとして、前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける前記目標スロットル弁開度に応じた値を取得するように構成された内燃機関の制御装置。
【請求項６】
請求項４に記載の内燃機関の制御装置において、
前記燃焼状態モデルは、前記所定タイミングとしての前記特定気筒の圧縮上死点後のクランク角θにおける燃焼割合ＭＦＢθを、
ＭＦＢθ＝１−exp{−c・((θ＋αi)／αb)d}
により近似するＷｉｅｂｅ関数であり、
上記式において値ｃ及び値ｄは一定値であり、値αｉは少なくとも点火時期に基いて変化するように定められるパラメータであり、値αｂは少なくとも前記吸気弁と前記排気弁とが同時に開弁するバルブオーバーラップ期間に基いて変化するように定められるパラメータである内燃機関の制御装置。
【請求項７】
請求項６に記載の内燃機関の制御装置において、
前記値αｉは前記機関の負荷にも基いて変化するように定められるパラメータであり、且つ、同値αｉを定める同機関の負荷は前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける前記目標スロットル弁開度に応じて取得される内燃機関の制御装置。
【請求項８】
請求項７に記載の内燃機関の制御装置において、
前記値αｉ及び前記値αｂのうちの少なくとも一方は混合気の空燃比に応じた値である空燃比相当値にも基いて変化するように定められるパラメータであり、且つ、同空燃比相当値は、前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける前記目標スロットル弁開度と、前記燃料供給手段により決定された燃料量と、に基いて取得される内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、混合気の空燃比を希薄空燃比に設定した場合であっても安定した運転を行うことが可能な多気筒内燃機関の制御装置に関する。
【背景技術】
【０００２】
従来から、燃焼状態を表す量として所定のクランク角θに対する燃焼割合ＭＦＢθ（Mass Fraction Burnt）を取得し、取得された燃焼割合ＭＦＢθが目標燃焼割合と一致するように点火時期（燃焼開始時期）を制御する内燃機関の制御装置が知られている。より具体的に述べると、例えば、圧縮上死点後のクランク角８°（ＡＴＤＣ８°）における燃焼割合ＭＦＢ８が求められ、この燃焼割合ＭＦＢ８が目標値（例えば６０％）になるように点火時期ＳＡが制御される。これにより、内燃機関に個体差がある場合でも、点火時期が個々の機関に応じて適切となる。その結果、燃焼効率が改善され、内燃機関の出力トルクを増大させることができる。燃焼割合ＭＦＢ８は「８°燃焼割合」とも称呼される。
【０００３】
燃焼割合は図示熱量の割合と実質的に等価な値である。従って、燃焼割合のみならず図示熱量の割合も燃焼状態を表す量（燃焼状態量）の一つである。図示熱量の割合は、一回の燃焼行程に関して、「燃焼室において燃焼した総ての燃料によって発生した熱のうちピストンに対する仕事に変換された熱の総量Ｑtotalに対する、所定のタイミングまでに同燃焼室において燃焼した燃料によって発生した熱のうちピストンに対する仕事に変換された熱の積算量Ｑsumの割合Ｑsum／Ｑtotal」と定義される。燃焼割合ＭＦＢθは、「燃焼室において燃焼した総ての燃料のうちピストンに対する仕事に寄与した燃料の総量に対する、所定のタイミング（ＡＴＤＣθ°）までに同燃焼室において燃焼した燃料のうちピストンに対する仕事に寄与した燃料の積算量の割合」と定義される。
【０００４】
このような燃焼割合ＭＦＢθを用いた点火時期制御を行う従来の制御装置の一つは、更に、燃焼割合ＭＦＢθに基いて燃料供給量を制御するようになっている。即ち、この制御装置は、（１）取得された燃焼割合ＭＦＢθが目標燃焼割合よりも小さいとき、燃料供給量を増加する制御と点火時期を進める制御とを交互に実施し、（２）取得された燃焼割合ＭＦＢθが目標燃焼割合よりも大きいとき、燃料供給量を減少する制御と点火時期を遅らせる制御を交互に実施するようになっている。これによれば、エミッションを良好に維持するとともに、希薄燃焼を実現することができると考えられている（例えば、特許文献１を参照）。
【特許文献１】特開平９−３１７５２２号公報（段落０００８〜００２１）
【発明の開示】
【０００５】
上記従来の制御装置においては燃料供給量を減少することにより空燃比を希薄化している。しかしながら、燃料供給量を単に減少させると、例えば運転者等が要求する「要求トルク」を機関が発生することができない。一方、機関の平均有効トルク値を筒内圧センサの出力等に基いて算出し、その平均有効トルク値に基いて求められるトルク変動量が閾値（限界閾値）を超えることがないように燃料供給量を増減する制御装置も知られている。しかしながら、この制御装置によれば、空燃比が変更された場合、点火時期は予め定められたルックアップテーブルにより補正される。従って、点火時期は、個体差を有する個々の機関に対して適切な点火時期とならない。その結果、空燃比変更時においてトルクショックが発生したり燃費やエミッションが悪化したりする虞がある。更に、そのようなルックアップテーブルを予め作成するためには、多大な労力及び時間が必要とされる。
【０００６】
本発明は上記課題に対処するためになされたものである。本発明の目的の一つは、要求トルクに応じたトルクを機関に発生させることができ、且つ、個々の機関が有する個体差を吸収しながら「機関に供給される混合気の空燃比」を希薄化することができ、更に、機関を高い効率にて運転することが可能な内燃機関の制御装置を提供することにある。
【０００７】
上記目的を達成する本発明による多気筒内燃機関の制御装置は、筒内圧検出手段と、指標値取得手段と、要求トルク相当値取得手段と、燃料供給手段と、スロットル弁制御手段と、燃焼割合推定手段と、点火手段と、を備える。
【０００８】
前記筒内圧検出手段は、前記複数の気筒のうちの特定気筒の燃焼室内の圧力である筒内圧を検出するようになっている。
前記指標値取得手段は、前記検出された筒内圧に基いて前記特定気筒において発生した燃焼の不安定度合いを示す燃焼状態指標値を取得するようになっている。空燃比が非常に大きくなると（混合ガスが希薄化されると）、燃焼が不安定となる。その結果、指標値取得手段により取得される燃焼状態指標値も増大する。従って、燃焼状態指標値に基けば、空燃比を更に大きくすることができるか否か判断することができる。
【０００９】
前記要求トルク相当値取得手段は、現時点において前記機関に要求される要求トルクに応じた値（例えば、アクセルペダル操作量Accp）を取得するようになっている。要求トルクは運転者により要求されるトルクであってもよく、他の制御装置（例えば、ハイブリッド車両における電気制御装置）から要求されるトルクであってもよい。
【００１０】
前記燃料供給手段は、前記取得された要求トルクに応じた値に基いて前記特定気筒の燃焼室に供給される燃料量を決定するようになっている。更に、前記燃料供給取得は、その決定された燃料量の燃料を「今回の燃焼行程中に燃焼する燃料」として前記特定気筒の燃焼室に供給するようになっている。今回の燃焼行程は、現時点を基準として次に到来する前記特定気筒の燃焼行程である。
【００１１】
前記スロットル弁制御手段は、前記取得された燃焼状態指標値が所定の限界閾値と同限界閾値よりも小さい安定閾値との間になるように「前記特定気筒の燃焼室に導入される空気の量」を制御するための「スロットル弁の目標スロットル弁開度」を決定するようになっている。更に、前記スロットル弁制御手段は、実際のスロットル弁開度をその決定した目標スロットル弁開度に一致させるようにスロットル弁を制御するようになっている。これにより、スロットル弁は「燃焼状態指標値が所定の限界閾値」を超えない範囲において増大せしめられる。一方、前述したように、燃料供給量は要求トルクに応じた値に基いて決定されている。この結果、特定気筒の燃焼室内に形成される混合気は限界（燃焼が不安定となる直前、即ち限界希薄空燃比）まで希薄化される。また、機関は要求トルクに見合ったトルクを発生することができる。
【００１２】
前記燃焼割合推定手段は、前記特定気筒の今回の吸気行程にて前記実際のスロットル弁開度が前記決定された目標スロットル弁開度に一致させられた状態下にて同特定気筒の燃焼室に空気が導入され、且つ、「その導入された空気」と「前記燃料供給手段により同特定気筒に供給された燃料」とを含む混合ガス（即ち、前記今回の燃焼行程で燃焼されるように前記特定気筒に形成された混合ガス）が、前回の点火時期と同じ点火時期にて点火させられることにより燃焼すると仮定した場合における「その仮定した燃焼」についての燃焼割合を、「その仮定した燃焼に対応する実際の燃焼が発生する前の時点」にて「仮定燃焼割合」として推定するようになっている。
【００１３】
この場合、前記今回の吸気行程は、前記特定気筒の前記今回の燃焼行程に先立つ吸気行程であって前記今回の燃焼行程と同じ燃焼サイクル（吸気行程、圧縮行程、燃焼行程及び排気行程を含む一つのサイクル）内の吸気行程である。
更に、前記前回の点火時期は、現時点の直前に終了した前記特定気筒の燃焼行程（即ち、前回の燃焼行程）に対して使用された点火時期である。
【００１４】
前記点火手段は、前記燃焼割合推定手段により推定された仮定燃焼割合のうちの「特定クランク角に対する仮定燃焼割合（例えば、８°燃焼割合ＭＦＢ８）」が「所定の目標燃焼割合（例えば、６０％及び５０％等）」と一致するように「前記今回の燃焼行程に対して使用される今回の点火時期」を決定するようになっている。なお、この場合、前記燃焼割合推定手段は、「特定クランク角に対する仮定燃焼割合」のみを推定するように構成されていてもよい。そして、前記点火手段は、前記今回の吸気行程を通して前記特定気筒内に形成された混合ガス（即ち、前記今回の燃焼行程で燃焼されるように前記特定気筒に形成された混合ガス）を、前記決定した今回の点火時期にて点火するようになっている。
【００１５】
これによれば、目標スロットル弁開度（従って、実際のスロットル弁開度）が変更されて空燃比が増大（混合気が希薄化）された場合、その変更された目標スロットル弁開度に基いて燃焼割合がどのように変化するかが燃焼割合推定手段によって予め推定（予測）される。そして、その推定（予測）された燃焼割合（即ち、仮定燃焼割合）に応じて今回の点火時期が決定される。この結果、本制御装置は、空燃比が切り換えられた場合、点火時期の補正量をルックアップテーブルにより決定する制御装置と比較して、今回の点火時期を最適な点火時期に極めて近しい点火時期に設定することができる。従って、本制御装置によれば、空燃比切換え時に発生するトルクショックの大きさが低減され、且つ、機関が個体差を有していてもそれぞれの機関は高い効率にて運転され得る。
【００１６】
この場合、本発明による内燃機関の制御装置は、更に、全燃焼対応期間推定手段と、バルブタイミング変更手段と、を備えることが好適である。
【００１７】
前記全燃焼対応期間推定手段は、全燃焼対応期間（今回の燃焼行程に対する全燃焼対応期間）を前記燃焼割合推定手段により推定された仮定燃焼割合に基いて推定するようになっている。全燃焼対応期間は、図４に示したように、「前記今回の点火時期（前記今回の燃焼行程に対して使用される点火時期）ＳＡ」から「前記今回の燃焼行程において混合ガスの燃焼が終了する時期である燃焼終了時期ＣＡｅ」までの期間である。全燃焼対応期間は、その期間の長さであり、例えば、クランク角度幅により表される。
【００１８】
前記バルブタイミング変更手段は、前記推定された全燃焼対応期間が所定の目標全燃焼対応期間と一致するように、前記今回の吸気行程に対する「前記特定気筒の吸気弁の開弁タイミング」及び前記今回の吸気行程に対する「前記特定気筒の排気弁の閉弁タイミング」のうちの少なくとも一方を変更するようになっている。換言すると、前記バルブタイミング変更手段は、前記推定された全燃焼対応期間が所定の目標全燃焼対応期間と一致するように、吸気弁及び排気弁が共に開弁している期間であるバルブオーバーラップ期間を変更し、それにより筒内に残留する既燃ガス量（以下、単に「既燃ガス量」とも言う。）を調整するようになっている。
【００１９】
全燃焼対応期間ＣＰは、図５に示したように、ＶＶＴ進角量（即ち、吸気弁の開弁時期により決定されるバルブオーバーラップ期間）が一定に維持されれば（即ち、既燃ガス量が一定に維持されれば）、点火時期が変化しても殆ど変化しない。更に、ＶＶＴ進角量（即ち、バルブオーバーラップ期間）が図５の領域Ａよりも大きくなると、ＣＯ２は減少し（ＣＯは増大し）且つＨＣ成分は増大する。従って、上記構成のように、「今回の燃焼行程に対する全燃焼対応期間」が「前記燃焼割合推定手段により推定された仮定燃焼割合」に基いて推定され、且つ、その推定された全燃焼対応期間が所定の目標全燃焼対応期間（ＣＯ及びＨＣが増大を開始する限界の目標全燃焼対応期間、図５の例においては７０°クランク角）と一致するように、「前記特定気筒の吸気弁の開弁タイミング」及び「前記特定気筒の排気弁の閉弁タイミング」のうちの少なくとも一方が制御されれば、今回の点火時期に関わらず既燃ガス量を適切な量に制御することが可能となる。この結果、本発明による制御装置は、ＨＣ及びＣＯの排出量が増大しないようにしながらバルブオーバーラップ期間をできるだけ長くできるので、ポンピングロスを減少させることができる。
【００２０】
上記指標値取得手段は、前記燃焼状態指標値として、「前記特定気筒の一つの燃焼サイクル（例えば、直前の燃焼行程の一回前の（即ち、前々回の）燃焼行程を含む燃焼サイクル）における図示トルクに応じた値」と「同一つの燃焼サイクルの次の燃焼サイクル（例えば、直前の（即ち、前回の）燃焼行程を含む燃焼サイクル）における図示トルクに応じた値」とに基づいて「トルク変動量に応じた値」を取得するように構成されることが好適である。
【００２１】
前記燃焼サイクルとは、前述したように、燃焼行程を含む期間であって、クランク軸が７２０°回転する期間に対応する期間である。
前記図示トルクに応じた値は、図示トルクそのものであってもよく、平均有効トルク値等であってもよい。
前記トルク変動量に応じた値は、「前記特定気筒の一つの燃焼サイクルにおける図示トルクに応じた値」と「同一つの燃焼サイクルの次の燃焼サイクルにおける図示トルクに応じた値」との差の絶対値であってもよく、それらの比であってもよい。
【００２２】
これによれば、「燃焼の不安定度合いを示す（燃焼状態を表す）燃焼状態指標値」を図示トルクに応じた値に基いて容易に且つ精度良く取得することができる。その結果、トルク変動量に応じた値の精度が向上するので、空燃比を「限界希薄空燃比を超えない範囲」において精度良く増大することができる。
【００２３】
上記燃焼割合推定手段は、「前記機関の運転状態を表す運転パラメータ（即ち、前記検出される筒内圧とは相違し且つ点火時期を含む運転パラメータ）」と「所定タイミングにおける燃焼割合」との関係を記述する「燃焼状態モデル」を含むとともに、「実際に取得される点火時期以外の運転パラメータ」と「運転パラメータの一つである前記前回の点火時期」とを、その燃焼状態モデルに適用することにより、前記仮定燃焼割合を推定するように構成され得る。これによれば、仮定燃焼割合を容易に推定することができる。
【００２４】
更に、上記燃焼割合推定手段は、前記運転パラメータの一つとして、前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける「前記目標スロットル弁開度に応じた値」を取得するように構成されていることが好適である。前記目標スロットル弁開度に応じた値とは、例えば、機関の負荷である。
【００２５】
これによれば、目標スロットル弁開度（従って、実際のスロットル弁開度）が変更されて空燃比が増大（混合気が希薄化）された場合であっても、その変更された目標スロットル弁開度に基いて燃焼割合（仮定燃焼割合）がどのように変化するかが燃焼状態モデルにより精度良く予め推定（予測）される。この結果、本制御装置は、空燃比が切り換えられた場合、今回の点火時期を最適な点火時期に極めて近しい点火時期に設定することができる。
【００２６】
前記燃焼状態モデルは、例えば、前記所定タイミングとしての前記特定気筒の圧縮上死点後のクランク角θにおける燃焼割合ＭＦＢθを、ＭＦＢθ＝１−exp{−c・((θ＋αi)／αb)d}により近似するＷｉｅｂｅ関数である。この式において値ｃ及び値ｄは一定値である。値αｉは少なくとも点火時期に基いて変化するように定められるパラメータであることが望ましい。値αｂは少なくとも前記吸気弁と前記排気弁とが同時に開弁するバルブオーバーラップ期間に基いて変化するように定められるパラメータであることが望ましい。
【００２７】
発明者は、Ｗｉｅｂｅ関数のパラメータαｉを変更した場合に算出される燃焼割合ＭＦＢθと点火時期を変更した場合の実際の燃焼割合ＭＦＢθとは非常に良く類似した変化を示すことを見出した。より具体的には、点火時期を変更した場合、実際の燃焼割合ＭＦＢθのクランク角θに対する増大速度は殆ど変化しないが、実際の燃焼割合ＭＦＢθが増大を開始するクランク角θが変化する。同様に、パラメータαｉを変更した場合、計算によるＭＦＢθのクランク角θに対する増大速度は殆ど変化しないが、計算によるＭＦＢθが増大を開始するクランク角θが変化する。
【００２８】
更に、発明者は、Ｗｉｅｂｅ関数のパラメータαｂを変更した場合に算出される燃焼割合ＭＦＢθとバルブオーバーラップ期間を変更した場合の実際の燃焼割合ＭＦＢθとは非常に良く類似した変化を示すことを見出した。より具体的には、バルブオーバーラップ期間（例えば、ＶＶＴ進角量）を変更した場合、実際の燃焼割合ＭＦＢθが増大を開始するクランク角θは殆ど変化しないが、実際の燃焼割合ＭＦＢθのクランク角θに対する増大速度が変化する。同様に、パラメータαｂを変更した場合、計算によるＭＦＢθが増大を開始するクランク角θは殆ど変化しないが、計算によるＭＦＢθのクランク角θに対する増大速度が変化する。
【００２９】
従って、上記のようにパラメータαｉ及びパラメータαｂを定めることにより、燃焼割合（仮定燃焼割合）をより精度良く求める燃焼状態モデルを提供することができる。
【００３０】
更に、前記値αｉは機関の負荷にも基いて変化するように定められるパラメータであり、且つ、同値αｉを定める同機関の負荷は前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける前記目標スロットル弁開度に応じて取得されることが好適である。
【００３１】
これによれば、目標スロットル弁開度（従って、実際のスロットル弁開度）が変更された場合であっても、その変更された目標スロットル弁開度に基いて燃焼割合がどのように変化するかがＷｉｅｂｅ関数に基いて精度良く予め推定（予測）される。この結果、本制御装置は、空燃比が切り換えられた場合、今回の点火時期を最適な点火時期に極めて近しい点火時期に設定することができる。
【００３２】
更に、前記値αｉ及び前記値αｂのうちの少なくとも一方は混合気の空燃比に応じた値である空燃比相当値にも基いて変化するように定められるパラメータであり、且つ、同空燃比相当値は、前記今回の吸気行程にて前記特定気筒に吸入される空気の量を決定付ける前記目標スロットル弁開度と、前記燃料供給手段により決定された燃料量（今回の燃焼行程に対して供給される燃料の量）と、に基いて取得されることが好適である。
【００３３】
これによれば、空燃比の変動が仮定燃焼割合に及ぼす影響を同仮定燃焼割合の推定に反映することができる。この結果、本制御装置は、仮定燃焼割合を精度良く推定できるので、今回の点火時期を最適な点火時期により近しい点火時期に設定することができる。なお、上記空燃比相当値は空燃比そのもの及び同空燃比に比例する値等であってもよい。
【発明を実施するための最良の形態】
【００３４】
以下、本発明の実施形態に係る内燃機関の制御装置（以下、単に「制御装置」と称呼する。）について図面を参照しつつ説明する。この制御装置は、点火時期、燃料供給量（燃料噴射量）、スロットル弁開度（吸入空気量）、及び、バルブタイミング（筒内に残留する既燃ガス量、吸気弁及び排気弁の両方が開弁しているバルブオーバーラップ期間）を制御する。
【００３５】
（構成）
図１は、本発明の実施形態に係る制御装置をピストン往復動型・火花点火式多気筒（４気筒）４サイクル内燃機関１０に適用したシステムの概略構成を示している。なお、図１は、複数の気筒のうちの特定の気筒（特定気筒）の断面のみを図示しているが、他の気筒も同様な構成を備えている。
【００３６】
この内燃機関１０は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部２０と、シリンダブロック部２０の上に固定されるシリンダヘッド部３０と、シリンダブロック部２０にガソリン混合気を供給するための吸気系統４０と、シリンダブロック部２０からの排ガスを外部に放出するための排気系統５０とを含んでいる。
【００３７】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３及びクランク軸２４を含んでいる。ピストン２２はシリンダ２１内を往復動し、ピストン２２の往復動がコンロッド２３を介してクランク軸２４に伝達され、これによりクランク軸２４が回転するようになっている。シリンダ２１とピストン２２の冠面は、シリンダヘッド部３０とともに燃焼室２５を形成している。
【００３８】
シリンダヘッド部３０は、燃焼室２５に連通した吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、吸気弁３２を開閉駆動する吸気弁制御装置３３、燃焼室２５に連通した排気ポート３４、排気ポート３４を開閉する排気弁３５、排気弁３５を駆動するエキゾーストカムシャフト３６、点火プラグ３７、点火プラグ３７に与える高電圧を発生するイグニッションコイルを含むイグナイタ３８及び燃料を吸気ポート３１内に噴射するインジェクタ（燃料供給手段の一部、燃料噴射手段）３９を備えている。インジェクタ３９は、燃焼室２５内に直接燃料を噴射する筒内噴射弁であってもよい。
【００３９】
吸気弁制御装置３３は、インテークカムシャフトとインテークカム（図示せず）との相対回転角度（位相角度）を油圧により調整・制御する周知の構成を備えている。吸気弁制御装置３３は、指示信号に応じて、吸気弁３２の開弁時期（吸気弁開弁時期）を変更することができるようになっている。本例において、吸気弁の開弁期間（開弁クランク角度幅）は一定である。従って、吸気弁開弁時期が所定角度だけ進角又は遅角させられると、吸気弁閉弁時期も同所定角度だけ進角又は遅角させられる。また、排気弁３５の開弁時期及び閉弁時期は一定である。排気弁閉弁時期は、最も遅らされた吸気弁開弁時期よりも後の時期（遅角側の時期）である。従って、この機関１０は、吸気弁３２及び排気弁３５が共に開弁させられているバルブオーバーラップ期間を有する。バルブオーバーラップ期間は、吸気弁制御装置３３によって吸気弁開弁時期が変更されることに伴って変化（増減）する。
【００４０】
吸気系統４０は、吸気ポート３１に連通し吸気ポート３１とともに吸気通路を形成するインテークマニホールドを含む吸気管４１、吸気管４１の端部に設けられたエアフィルタ４２、吸気管４１内にあって吸気通路の開口断面積を可変とするスロットル弁４３及びスロットル弁駆動手段を構成するＤＣモータからなるスロットル弁アクチュエータ４３ａを備えている。
【００４１】
排気系統５０は、排気ポート３４に連通したエキゾーストマニホールド５１、エキゾーストマニホールド５１に接続されたエキゾーストパイプ（排気管）５２、エキゾーストパイプ５２に配設された上流側の三元触媒５３及びこの触媒５３の下流のエキゾーストパイプ５２に配設された下流側の三元触媒５４を備えている。排気ポート３４、エキゾーストマニホールド５１及びエキゾーストパイプ５２は、排気通路を構成している。
【００４２】
一方、このシステムは、熱線式エアフローメータ６１、スロットルポジションセンサ６２、カムポジションセンサ６３、クランクポジションセンサ６４、各気筒に設けられた筒内圧センサ６５、冷却水温センサ６６、第１触媒５３の上流の排気通路に配設された空燃比センサ６７、第１触媒５３の下流であって第２触媒５４の上流の排気通路に配設された空燃比センサ６８及びアクセル開度センサ６９を備えている。
【００４３】
熱線式エアフローメータ６１は、吸気管４１内を流れる吸入空気の単位時間あたりの質量流量を検出し、質量流量Ｇａを表す信号を出力するようになっている。
スロットルポジションセンサ６２は、スロットル弁４３の開度を検出し、スロットル弁開度ＴＡを表す信号を出力するようになっている。
カムポジションセンサ６３は、インテークカムシャフトが所定角度から９０度、次いで９０度、更に１８０度回転する毎に一つのパルスを出力するようになっている。
クランクポジションセンサ６４は、クランク軸２４が１０度回転する毎にパルスを出力するようになっている。クランクポジションセンサ６４から出力されるパルスはエンジン回転速度ＮＥを表す信号に変換されるようになっている。
【００４４】
筒内圧センサ６５は、燃焼室２５内の圧力を検出し、筒内圧Ｐｃを表す信号を出力するようになっている。なお、第ｎ気筒（ｎは１〜４の自然数）の筒内圧センサが検出する第ｎ気筒の筒内圧は「Ｐｃｎ（ｎは１〜４の自然数）」とも表記される。筒内圧センサ６５は「複数の気筒のうちの特定気筒の燃焼室内の圧力である筒内圧Ｐｃを検出する筒内圧検出手段」に相当する。
【００４５】
上流側空燃比センサ６７及び下流側空燃比センサ６８は、触媒５３の上下流の空燃比を検出し、その上下流の空燃比を表す信号をそれぞれ出力するようになっている。
アクセル開度センサ６９は、運転者によって操作されるアクセルペダル８１の操作量を検出し、アクセルペダル８１の操作量Accpを表す信号を出力するようになっている。
【００４６】
電気制御装置７０は、互いにバスで接続された「ＣＰＵ７１、ＣＰＵ７１が実行するルーチン（プログラム）、テーブル（ルックアップテーブル、マップ）及び定数等を予め記憶したＲＯＭ７２、ＣＰＵ７１が必要に応じてデータを一時的に格納するＲＡＭ７３、電源が投入された状態でデータを格納するとともに格納したデータを電源が遮断されている間も保持するバックアップＲＡＭ７４、並びに、ＡＤコンバータを含むインターフェース７５等」からなるマイクロコンピュータである。インターフェース７５は、前記センサ６１〜６９と接続され、ＣＰＵ７１にセンサ６１〜６９からの信号を供給するようになっている。インターフェース７５は、ＣＰＵ７１の指示に応じて吸気弁制御装置３３、インジェクタ３９及びスロットル弁アクチュエータ４３ａに駆動信号（指示信号）を送出するとともに、イグナイタ３８に点火信号を送出するようになっている。
【００４７】
１．制御の概要
次に、上記のように構成された制御装置により行われる、各種の制御の概要について説明する。以下の説明において、「今回の」とは「現時点を時間の基準にした場合に最初に到来する特定気筒の燃焼行程を含む燃焼サイクル（今回の燃焼行程）に対する」と同義であり、「前回の」とは「現時点を時間の基準とした場合に現時点の直前に終了した特定気筒の燃焼行程を含む燃焼サイクル（前回の燃焼行程）に対する」と同義である。燃焼サイクルとは、吸気行程、圧縮行程、燃焼行程（膨張行程）及び排気行程からなり、例えば、吸気上死点（排気上死点）からクランク軸が７２０°回転するまでの期間である。更に、「現時点」とは制御装置の演算実行時点を意味し、制御装置は特定気筒（複数の気筒の任意の気筒であって、着目している気筒）における燃焼行程が（実質的に）終了した時点にてその演算を実行する。更に、変数の後に付与される記号（ｋ）は、その変数が特定気筒の今回の燃焼行程を含む燃焼サイクルに対する変数であることを示す。従って、（ｋ−１）が付与された変数は、その特定気筒における前回の燃焼行程を含む燃焼サイクルに対する変数である。
【００４８】
１−１．空燃比制御の概要
１−１−１．燃料噴射量ＴＡＵの決定
制御装置は、現時点のアクセルペダル操作量Accp及び現時点のエンジン回転速度ＮＥに基いて、現時点における要求トルクを発生させるための「今回の燃料噴射量ＴＡＵ」を算出する。制御装置は今回の燃焼サイクルにおける吸気行程直前にて「今回の燃料噴射量ＴＡＵ」の燃料を特定気筒に対して設けられているインジェクタ３９から噴射する（図２のＴＡＵを参照）。なお、制御装置は、現時点のアクセルペダル操作量Accp及び現時点のエンジン回転速度ＮＥに基いて現時点における要求トルクを求め、その求めた要求トルクに基いて「今回の燃料噴射量ＴＡＵ」を算出するように構成されていてもよい。
【００４９】
１−１−２．スロットル弁開度の決定
制御装置は、特定気筒の前回の燃焼サイクルにおける（即ち、前回の）図示トルクＴＲＱ（ｋ−１）と、特定気筒の前々回の燃焼サイクルにおける（即ち、前々回の）図示トルクトルクＴＲＱ（ｋ−２）と、の差に基づいてトルク変動量ΔＴＲＱを取得する。そして、トルク変動量ΔＴＲＱの大きさが「トルク変動量閾値ΔＴＲＱｔｈ」と「安定閾値（ΔＴＲＱｔｈ−ΔＴＱ）」との間の値になるようになるように、スロットル弁開度を変更する。トルク変動量閾値ΔＴＲＱｔｈは、トルク変動量ΔＴＲＱがこの値以上に大きくなると燃焼が不安定であるとみなせる限界閾値である。ΔＴＱは正の値である。安定閾値（ΔＴＲＱｔｈ−ΔＴＱ）は、燃焼をこの値以上に安定させる必要はないと考えられる値である。トルク変動量ΔＴＲＱは、燃焼の不安定度合いを示す燃焼状態指標値（燃焼不安定状態指標値）である。
【００５０】
この結果、トルク変動量ΔＴＲＱが過大にならない範囲において、吸入空気量が増大させられる。一方、上述したように、燃料噴射量ＴＡＵは要求トルクを満たすように定められている。従って、要求トルクが実質的に満たされながら空燃比が希薄化される（図２の目標スロットル弁開度を参照。）。なお、混合気又は空燃比が希薄化されるとは、その混合気の空燃比が増大されることを意味する。
【００５１】
１−２．点火時期制御の概要
点火時期ＳＡの制御等には、燃焼割合ＭＦＢθが使用される。燃焼割合ＭＦＢθは、クランク角θにおける図示熱量の割合と実質的に等価な値である。燃焼割合ＭＦＢθ及び図示熱量の割合は、それぞれ燃焼状態を表す量（燃焼状態量）である。
【００５２】
燃焼割合ＭＦＢθは、上述したように、「燃焼室において燃焼した総ての燃料のうちピストンに対する仕事に寄与した燃料の総量に対する、所定のタイミング（圧縮上死点後クランク角θ）までに同燃焼室において燃焼した燃料のうちピストンに対する仕事に寄与した燃料の積算量の割合」と定義される。
【００５３】
燃焼割合ＭＦＢθがどの時期の燃焼割合であるかを表すクランク角θは、圧縮上死点において０となり、圧縮上死点から圧縮上死点前に向って進角するほど絶対値が大きくなる負の値をとり、圧縮上死点から圧縮上死点後に向って遅角するほど絶対値が大きくなる正の値をとるように定義される。例えば、θ＝−θ１°（θ１＞０）であることは、クランク角が圧縮上死点前θ１°（ＢＴＤＣθ１°）であることを示す。また、θ＝θ２°（θ２＞０）であることは、クランク角が圧縮上死点後θ２°（ＡＴＤＣθ２°）であることを示す。このクランク角θが圧縮上死点後８°（ＡＴＤＣ８°）であるときの燃焼割合ＭＦＢθは、８°燃焼割合ＭＦＢ８とも称呼される。
【００５４】
ところで、図３は、点火時期ＳＡと、８°燃焼割合ＭＦＢ８と、機関１０の発生トルク（図示トルク）ＴＲＱと、の関係を示したグラフである。なお、本明細書において、点火時期がＳＡであるとは、点火時期が圧縮上死点前ＳＡ°（ＢＴＤＣ  ＳＡ°、ＳＡ＞０）であることを意味する。
【００５５】
図３から明らかなように、発生トルクＴＲＱが最大となる「８°燃焼割合ＭＦＢ８」は約６０％（図３の領域Ａを参照。）である。換言すると、８°燃焼割合ＭＦＢ８を６０％に一致させれば、機関１０が個体差を有していても、その機関１０の発生トルクＴＲＱを最大にすることができる。そこで、制御装置は、８°燃焼割合ＭＦＢ８の目標値ＭＦＢ８ｔｇｔ（以下、「目標燃焼割合ＭＦＢ８ｔｇｔ」という。）を６０％に設定する。
【００５６】
更に、制御装置は、後に詳述する方法により、現時点において「今回の燃焼割合ＭＦＢθ」を「仮定燃焼割合」として「微小なクランク角Δθ」毎に推定（予測）する。そして、制御装置は、今回の燃焼割合ＭＦＢθの中から、クランク角θが８°であるときの燃焼割合ＭＦＢθ、即ち、今回の８°燃焼割合ＭＦＢ８を取得する。この「今回の８°燃焼割合ＭＦＢ８（点火時期制御に使用される８°燃焼割合ＭＦＢ８）」は、前回の燃焼行程以降においてスロットル弁開度が変更された後の状態における８°燃焼割合ＭＦＢ８である。即ち、今回の８°燃焼割合ＭＦＢ８は、スロットル弁開度が変更されることにより特定気筒の吸入空気量が変更したと仮定した場合の燃焼割合であるから、「８°仮定燃焼割合ＭＦＢ８ａｓ」とも称呼される（図２の８°仮定燃焼割合ＭＦＢ８ａｓを参照。）。
【００５７】
制御装置は、その推定された「８°仮定燃焼割合ＭＦＢ８ａｓ」が目標燃焼割合ＭＦＢ８ｔｇｔ（６０％）と一致するように点火時期ＳＡをフィードバック制御する（今回の点火時期ＳＡ（ｋ）を決定する。）。この結果、機関１０が個体差を有していても、点火時期が個々の機関１０に対して最適化される。従って、機関１０の発生トルクが増大し且つ燃焼効率も向上するので、機関１０の燃費を改善することができる。
【００５８】
１−３．ＶＶＴ進角量制御の概要
制御装置は今回の全燃焼対応期間ＣＰ（ｋ）を推定（予測）する（図２の仮定全燃焼対応期間ＣＰ（ｋ）を参照。）。全燃焼対応期間ＣＰ（即ち、仮定全燃焼対応期間＝ＣＰ（ｋ））は、図４に示したように、点火時期ＳＡから燃焼室内の混合ガスの燃焼が実質的に終了する燃焼終了時期ＣＡｅまでの期間である。今回の全燃焼対応期間ＣＰ（ｋ）は、後述する方法により、今回の点火時期ＳＡ（ｋ）と今回の燃焼割合ＭＦＢθとから求められる。今回の全燃焼対応期間ＣＰ（ｋ）は、仮定全燃焼対応期間とも称呼される。全燃焼対応期間ＣＰ（ｋ）は、燃焼速度が小さいほど長くなるから、既燃ガス量が多い（バルブオーバーラップ期間が長い）ほど長くなる。
【００５９】
そして、制御装置は、今回の全燃焼対応期間ＣＰ（ｋ）が目標全燃焼対応期間ＣＰｔｇｔと一致するように今回のＶＶＴ進角量であるＶＶＴ（ｋ）を決定し、実際のＶＶＴ進角量が「決定した今回のＶＶＴ進角量ＶＶＴ（ｋ）」と一致するように吸気弁開弁時期ＩＯを変更する。以下、このようにＶＶＴ進角量を制御する理由について述べる。なお、ＶＶＴ進角量は、排気弁３５の開弁時期及び閉弁時期を一定とした場合での、吸気弁開弁時期が最も遅角側に設定されている場合を基準とした吸気弁開弁時期の進角量である。
【００６０】
図５は、ＶＶＴ進角量に対し、ＣＯ２及びＨＣの排出量並びに全燃焼対応期間ＣＰがどのように変化するかについての測定結果を表している。この測定において、点火時期ＳＡは、８°燃焼割合ＭＦＢ８が、２０、３０、４０及び５０％となるように変化させられた。
【００６１】
図５から理解されるように、点火時期ＳＡが変動しても、ＶＶＴ進角量（即ち、バルブオーバーラップ期間、既燃ガス量）と全燃焼対応期間ＣＰとは実質的に１：１の関係を維持する。換言すると、ＶＶＴ進角量がある一定値であれば、点火時期ＳＡが変化しても、全燃焼対応期間ＣＰは殆ど変化しない。従って、図５の領域Ａにより示したように、ＣＯ２の排出量が減少せず且つＨＣの排出量が増大しない範囲（即ち、ＣＯ及びＨＣの排出量が増大しない範囲）においてＶＶＴ進角量が出来るだけ大きくなるようにＶＶＴ進角量を制御するには、全燃焼対応期間ＣＰが領域Ａにおける全燃焼対応期間ＣＰ（図５の例ではＣＰ＝７０°）と一致するようにＶＶＴ進角量を制御すれば良い。ＶＶＴ進角量を出来るだけ大きくすることができれば、バルブオーバーラップ期間を出来るだけ長くすることができるので、筒内に残留する既燃ガス量が最大となる。その結果、ＮＯｘの排出量を低減することができ、ポンピングロスを低減することもできる。
【００６２】
そこで、制御装置は、前述したように、今回の全燃焼対応期間ＣＰ（ｋ）が予め定められた目標全燃焼対応期間ＣＰｔｇｔと一致するようにＶＶＴ進角量を制御する。目標全燃焼対応期間ＣＰｔｇｔは、ＣＯ及びＨＣの排出量が増大しない範囲においてバルブオーバーラップ期間（筒内に残留する既燃ガス量）ができるだけ長くなる期間に設定される。この結果、制御装置は、ＨＣ及びＣＯの排出量の増大を招くことなくＮＯｘの排出量を低減し、且つ、ポンピングロスを低減することができる。
【００６３】
なお、図５は、ＶＶＴ進角量に対する、実質燃焼期間ＣＰａとＣＯ２及びＨＣの排出量の関係も示している。実質燃焼期間ＣＰａは、図４に示したように、直線Ｌextにより近似された「燃焼割合が０から１００％に到達するまでのクランク角度幅（ＣＡｓ〜ＣＡｅ）」である。図５の領域Ａに対する領域Ｂに示したように、ＣＯ及びＨＣの排出量が増大を開始するＶＶＴ進角量に対応する実質燃焼期間ＣＰａは、点火時期ＳＡが変化すると変動する。従って、実質燃焼期間ＣＰａよりも上述した全燃焼対応期間ＣＰをＶＶＴ進角量のフィードバック制御に使用する方が好ましいということが理解される。
【００６４】
図６は、ある機関１０について、実質燃焼期間ＣＰａとＨＣ排出量との関係、及び、全燃焼対応期間ＣＰとＨＣ排出量との関係、を測定した結果を示すグラフである。この測定において、点火時期ＳＡは、８°燃焼割合ＭＦＢ８が、２０、３０、４０及び５０％となるように変化させられた。
【００６５】
図６の（Ａ）によれば、８°燃焼割合ＭＦＢ８が、２０、３０、４０及び５０％であるとき、ＨＣの排出量が増大しない範囲における実質燃焼期間ＣＰａの最適値は、直線Ｌ１、Ｌ２、Ｌ３及びＬ４により示したように、点火時期ＳＡに依存して変化し、ある幅Ｗを有するように存在している。換言すると、ある点火時期にて点火が行われている状態において実質燃焼期間ＣＰａを最適な目標燃焼期間に一致させるようにＶＶＴ進角量をフィードバック制御しても、点火時期が変化した場合にはそのＶＶＴ進角量が過大又は過小になってしまう。その結果、ＨＣ及びＣＯの排出量の増大を招くか、又は、ＮＯｘの排出量の増大及びポンピングロスの低減幅の減少が発生する。
【００６６】
図６の（Ｂ）によれば、８°燃焼割合ＭＦＢ８が、２０、３０、４０及び５０％に一致するように点火時期ＳＡが変更されても、ＨＣの排出量が増大し始める全燃焼対応期間ＣＰは直線Ｌoptにて示した一点のみとなる。従って、直線Ｌoptにより示される全燃焼対応期間ＣＰを目標全燃焼対応期間ＣＰｔｇｔに設定し、実際に推定される全燃焼対応期間ＣＰがこの目標全燃焼対応期間ＣＰｔｇｔと一致するようにＶＶＴ進角量を制御すれば、点火時期ＳＡに関わらずＨＣの排出量（従って、ＣＯの排出量）が増大しない範囲においてバルブオーバーラップ期間をできるだけ長く（既燃ガス量をできるだけ多く）設定することができ、以って、ＮＯｘの排出量が低減でき且つポンピングロスを低減できる。
【００６７】
以上の説明から理解されるように、制御装置は、今回の全燃焼対応期間ＣＰ（ｋ）を用いてＶＶＴ進角量を制御しているので、バルブオーバーラップ量が適切となり、既燃ガス量が適量となる。この結果、制御装置は、ＨＣ及びＣＯの排出量の増大を招くことなく、ＮＯｘの排出量を低減し、且つ、ポンピングロスを低減することができる。
【００６８】
２．制御の概略流れ
次に、制御装置の作動の概略について、図７のフローチャートを参照しながら説明する。
【００６９】
制御装置は、上述した制御を行うために、ある特定気筒における燃焼行程が終了する時期になったとき（例えば、その特定気筒のクランク角が圧縮上死点後１８０°（クランク角）になったとき、即ち、次の圧縮上死点前５４０°になったとき）、図７に示したルーチンの処理をステップ７００から開始する。その後、制御装置は、その特定気筒に対して以下に記載したステップ７１０乃至ステップ７８０の処理を順に行う。
【００７０】
ステップ７１０：制御装置は、今回の燃料噴射量ＴＡＵを決定する。より具体的に述べると、制御装置は、現時点のアクセルペダル操作量Accp及び現時点のエンジン回転速度ＮＥを噴射量決定用テーブルMapTAUに適用することにより今回の燃料噴射量ＴＡＵを算出する。噴射量決定用テーブルMapTAUは、アクセルペダル操作量Accp及びエンジン回転速度ＮＥにより定まる「要求トルク」を発生するために必要な燃料噴射量ＴＡＵを算出するためのルックアップテーブルである。噴射量決定用テーブルMapTAUは、予め実験により測定された「アクセルペダル操作量Accp及びエンジン回転速度ＮＥと、燃料噴射量ＴＡＵと、の関係」がルックアップテーブルの形式にてＲＯＭ７２内に格納されたテーブルである。制御装置は今回の燃焼サイクルにおける吸気行程直前にて「今回の燃料噴射量ＴＡＵ」の燃料を特定気筒に対して設けられているインジェクタ３９から噴射する（図２のＴＡＵを参照）。
【００７１】
なお、このステップ７１０において、アクセルペダル操作量Accp及びエンジン回転速度ＮＥを取得することは、「現時点において前記機関に要求される要求トルクに応じた値を取得する要求トルク相当値取得手段」の機能を実現している。また、このステップ７１０において、燃料噴射量を決定して同決定した燃料噴射量の燃料を噴射することは、「前記取得された要求トルクに応じた値に基いて前記特定気筒の燃焼室に供給される燃料量を決定するとともに、同決定された燃料量の燃料を現時点を基準として次に到来する前記特定気筒の燃焼行程である今回の燃焼行程中に燃焼する燃料として同特定気筒の燃焼室に供給する燃料供給手段」の機能を実現している。
【００７２】
ステップ７２０：制御装置は、前回の図示トルクＴＲＱ（ｋ−１）と、前々回の図示トルクトルクＴＲＱ（ｋ−２）と、の差に基づいてトルク変動量ΔＴＲＱを取得する。図示トルクＴＲＱは筒内圧センサ６５の出力信号に基いて推定される。この推定方法の詳細については後述する。なお、このステップ７２０において、トルク変動量ΔＴＲＱを取得することは、「前記検出された筒内圧に基いて前記特定気筒において発生した燃焼の不安定度合いを示す燃焼状態指標値を取得する指標値取得手段」の機能を実現している。
【００７３】
ステップ７３０：制御装置は、ステップ７２０にて取得したトルク変動量ΔＴＲＱの大きさ（ΔＴＲＱの絶対値）が「トルク変動量閾値ΔＴＲＱｔｈ」と「トルク変動量閾値ΔＴＲＱｔｈから正の所定値ΔＴＱを減じた値であるトルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）」との間の値になるようになるように、スロットル弁開度を変更する。トルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）は安定閾値とも称呼される。このステップにより、制御装置は、トルク変動量ΔＴＲＱが「トルク変動量閾値ΔＴＲＱｔｈ」より大きくならないようにスロットル弁開度を極力増大することにより、燃焼室２５に吸入される吸入空気流量を増大させ、空燃比を希薄化する。
【００７４】
より具体的に述べると、制御装置は、トルク変動量ΔＴＲＱの大きさがトルク変動量閾値ΔＴＲＱｔｈより大きい場合、前回の目標スロットル弁開度ＴＡｔｇｔ（ｋ−１）から正の一定量ΔＴＡｔｇｔｍを減じた値を「今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）」に設定する。一方、制御装置は、トルク変動量ΔＴＲＱの大きさがトルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）より小さい場合、前回の目標スロットル弁開度ＴＡｔｇｔ（ｋ−１）に正の一定量ΔＴＡｔｇｔｐを加えた値を「今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）」に設定する。制御装置は実際のスロットル弁開度が今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）に一致するように、スロットル弁アクチュエータ４３ａに指示信号を与える（図２の目標スロットル弁開度を参照。）。
【００７５】
なお、このステップ７３０の処理を行うことは、「前記取得された燃焼状態指標値が所定の限界閾値と同限界閾値よりも小さい安定閾値との間になるように前記特定気筒の燃焼室に導入される空気の量を制御するためのスロットル弁の目標スロットル弁開度を決定するとともに、実際のスロットル弁開度を同決定した目標スロットル弁開度に一致させるように同スロットル弁を制御するスロットル弁制御手段」の機能を実現している。
【００７６】
ステップ７４０：制御装置は、今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）及び現時点のエンジン回転速度ＮＥを用いて今回の推定負荷ＫＬｓ（ｋ）を推定（予測）する。より具体的に述べると、制御装置は今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）及び現時点のエンジン回転速度ＮＥを推定負荷算出テーブルMapKLsに適用することにより、今回の推定負荷ＫＬｓ（ｋ）を推定する（ＫＬｓ（ｋ）＝MapKLs（ＴＡｔｇｔ（ｋ），ＮＥ））。推定負荷算出テーブルMapKLsは、予め実験により測定された「スロットル弁開度（目標スロットル弁開度）及びエンジン回転速度と、負荷ＫＬと、の関係」がルックアップテーブルの形式にてＲＯＭ７２内に格納されたテーブルである。
【００７７】
ステップ７５０：制御装置は今回の燃焼割合ＭＦＢθ（仮定燃焼割合ＭＦＢθａｓ）を微小なクランク角Δθ毎に推定する。このとき、制御装置は後に詳述する「Ｗｉｅｂｅ関数」を使用する。Ｗｉｅｂｅ関数自体は、燃焼割合の変化の様子を模擬した近似関数モデル（燃焼状態を記述する燃焼状態モデル）として知られている。本例において、Ｗｉｅｂｅ関数を用いて燃焼割合ＭＦＢθを求める際、点火時期ＳＡ、ＶＶＴ進角量ＶＶＴ、エンジン回転速度ＮＥ、エンジン負荷ＫＬ及び空燃比対応値ＡＦ（＝ＫＬ／ＴＡＵ）が使用される。即ち、Ｗｉｅｂｅ関数を「ｆ」とすると、ＭＦＢθ＝ｆ（θ，ＳＡ，ＶＶＴ，ＮＥ，ＫＬ，ＡＦ）と記述できる。点火時期ＳＡ、ＶＶＴ進角量ＶＶＴ、エンジン回転速度ＮＥ、負荷ＫＬ及び空燃比対応値ＡＦは関数ｆの変数である。このように、Ｗｉｅｂｅ関数は、検出される筒内圧Ｐｃｎとは相違するとともに機関１０の運転状態を表し且つ点火時期ＳＡを含む運転パラメータと、燃焼行程に対する所定タイミング（ＡＴＤＣθ）における燃焼割合ＭＦＢθと、の関係を記述する燃焼状態モデルである。
【００７８】
制御装置は、これらの変数に以下に述べる値を代入する。
・点火時期ＳＡ：前回の点火時期ＳＡ（ｋ−１）
・ＶＶＴ進角量ＶＶＴ：前回のＶＶＴ進角量ＶＶＴ（ｋ−１）
・エンジン回転速度ＮＥ：現時点のエンジン回転速度ＮＥ
・負荷ＫＬ：上記ステップ７４０にて推定された今回の推定負荷ＫＬｓ（ｋ）
・空燃比対応値ＡＦ：上記ステップ７４０にて推定された今回の推定負荷ＫＬｓ（ｋ）を上記ステップ７１０にて決定した燃料噴射量ＴＡＵにより除した値（＝ＫＬｓ（ｋ）／ＴＡＵ）
即ち、前回の燃焼サイクルと今回と燃焼サイクルとの間で「負荷及び空燃比」が変化することを見込んで（予測して、仮定して）、且つ、点火時期及びＶＶＴ進角量は変化しないと仮定して、今回の燃焼割合ＭＦＢθ（仮定燃焼割合ＭＦＢθａｓ）が推定される。
【００７９】
換言すると、制御装置は、実際のスロットル弁開度がステップ７３０にて決定された「今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）」に一致させられた状態下にて、特定気筒の燃焼室２５に空気が導入され、且つ、その特定気筒の燃焼室２５に導入された空気とステップ７１０にて決定された燃料噴射量ＴＡＵの燃料（燃料供給手段により特定気筒に供給される燃料）とを含む混合ガスが、直前に終了した燃焼行程（前回の燃焼行程）において使用された点火時期（前回の点火時期ＳＡ（ｋ−１））にて点火させられることにより燃焼すると仮定した場合において、その仮定された燃焼についての燃焼割合を仮定燃焼割合ＭＦＢθａｓとして推定する。なお、ステップ７４０及びステップ７５０は、燃焼割合推定手段の機能を実現するステップである。
【００８０】
ステップ７６０：制御装置は、ステップ７５０にて算出された仮定燃焼割合ＭＦＢθａｓのうちの圧縮上死点後８°の燃焼割合である「８°仮定燃焼割合ＭＦＢ８ａｓ」が目標燃焼割合ＭＦＢ８ｔｇｔと一致するように今回の点火時期ＳＡ（ｋ）を決定（補正）する。より具体的に述べると、制御装置は、８°仮定燃焼割合ＭＦＢ８ａｓが目標燃焼割合ＭＦＢ８ｔｇｔよりも大きい場合、前回の点火時期ＳＡ（ｋ−１）を正の補正分ΔＳＡだけ遅らせた（遅角させた）点火時期を今回の点火時期ＳＡ（ｋ）に設定し、８°仮定燃焼割合ＭＦＢ８ａｓが目標燃焼割合ＭＦＢ８ｔｇｔよりも小さい場合、前回の点火時期ＳＡ（ｋ−１）を補正分ΔＳＡだけ進ませた（進角させた）点火時期を今回の点火時期ＳＡ（ｋ）に設定する。そして、制御装置は今回の燃焼サイクルにおける圧縮上死点前ＳＡ（ｋ）°にて特定気筒の燃焼室２５に設けられた点火プラグ３７及びイグナイタ３８に対して点火指示信号を発生し、混合気を点火させる。（図２のＳＡ（ｋ）を参照）。
【００８１】
なお、制御装置は、８°仮定燃焼割合ＭＦＢ８ａｓが目標燃焼割合ＭＦＢ８ｔｇｔと一致するように、８°仮定燃焼割合ＭＦＢ８ａｓと目標燃焼割合ＭＦＢ８ｔｇｔとの差に基くＰＤ制御又はＰＩＤ制御により今回の点火時期ＳＡ（ｋ）を決定してもよい。更に、制御装置は、現時点のエンジン回転速度ＮＥと今回の推定負荷ＫＬｓ（ｋ）とを点火時期学習モデルに適用することにより今回の点火時期ＳＡ（ｋ）を決定してもよい。その場合、その点火時期学習モデルを、８°仮定燃焼割合ＭＦＢ８ａｓと目標燃焼割合ＭＦＢ８ｔｇｔとの差に基き決定される点火時期補正量ΔＳＡが小さくなるように、逐次最小二乗法（ＲＬＳ）を用いて修正するように構成されていてもよい。また、今回の燃焼行程の終了後において、実際の８°燃焼割合ＭＦＢ８を取得し、その実際の８°燃焼割合ＭＦＢ８と今回の燃焼行程に対して推定されていた８°仮定燃焼割合ＭＦＢ８ａｓとの差が小さくなるように、Ｗｉｅｂｅ関数の定数（燃焼状態を記述する燃焼状態モデル）を、逐次最小二乗法（ＲＬＳ）等を用いて修正するように構成されていてもよい。実際の８°燃焼割合ＭＦＢは、後述するように、筒内圧センサ６５によって実測される筒内圧に基いて求められる。
【００８２】
また、ステップ７６０は、「前記燃焼割合推定手段により推定された燃焼割合のうちの特定クランク角に対する燃焼割合（８°仮定燃焼割合ＭＦＢ８ａｓ）が所定の目標燃焼割合（目標燃焼割合ＭＦＢ８ｔｇｔ）と一致するように前記今回の燃焼行程に対して使用される今回の点火時期ＳＡ（ｋ）を決定するとともに、前記今回の吸気行程を通して前記特定気筒内に形成された混合ガスを同決定した今回の点火時期ＳＡ（ｋ）にて点火する点火手段」の機能を実現するステップである。
【００８３】
ステップ７７０：制御装置は、今回の点火時期ＳＡ（ｋ）と仮定燃焼割合ＭＦＢθａｓとに基いて「今回の全燃焼対応期間ＣＰ（ｋ）」を推定する。今回の全燃焼対応期間ＣＰ（ｋ）は、図４に示したように、今回の点火時期ＳＡ（ｋ）から仮定燃焼割合ＭＦＢθａｓが実質的に１００％に到達するクランク角ＣＡｅまでのクランク角（クランク角度幅、単位（°））である。クランク角（実質燃焼終了時期）ＣＡｅは以下の手法により求められる。
【００８４】
・図４に示したように、今回の燃焼開始後の所定のクランク角度幅Ｎ°（例えば、クランク角度幅１５°）における仮定燃焼割合ＭＦＢθａｓの変化量ΔＭＦＢを求め、その変化量ΔＭＦＢの中から最大の変化量ΔＭＦＢを最大値ΔＭＦＢmaxとして特定する。
・その最大値ＭＦＢcamaxが得られた点Ｐmax（ＣＡmax，ＭＦＢcamax）を通り且つ傾きが点Ｐmaxにおける仮定燃焼割合ＭＦＢθａｓの微分値に相当する値により定まる「直線Ｌext」により仮定燃焼割合ＭＦＢθａｓの変化を外挿する。
・その外挿線（直線Ｌext）が燃焼割合１００％と交わる点Ｐｅを求め、その点Ｐｅに対応するクランク角をクランク角ＣＡｅとして取得する。
【００８５】
更に、具体的に述べると、制御装置は以下のようにして今回の全燃焼対応期間ＣＰ（ｋ）を推定する
（１）図４に示したように、先ず、制御装置は、仮定燃焼割合ＭＦＢθａｓを用いてＮ°（ここではクランク角度幅１５°）における仮定燃焼割合ＭＦＢθａｓの変化量ΔＭＦＢを、所定の微小クランク角Δθ毎に算出する。即ち、ΔＭＦＢ＝ＭＦＢθａｓ−ＭＦＢθｂａｓ（但し、θｂ＝θ−Ｎ）に従って変化量ΔＭＦＢが計算される。
【００８６】
（２）次に、制御装置は、得られた複数の変化量ΔＭＦＢの中から最大値（燃焼割合最大変化速度）ΔＭＦＢmaxを取得する。その後、制御装置は、その燃焼割合最大変化速度ΔＭＦＢmaxに対するクランク角θをクランク角ＣＡmaxとして取得するとともに、クランク角ＣＡmaxにおける仮定燃焼割合ＭＦＢθａｓをＭＦＢcamaxとして取得する。更に、制御装置は、ＣＡmaxとＭＦＢcamaxとによって定まる点Ｐmaxを通り、傾きがΔＭＦＢmax／Ｎである直線を直線Ｌextとして求める。
【００８７】
（４）制御装置は、直線Ｌextが燃焼割合１００％に到達した点Ｐｅに対応するクランク角ＣＡｅを燃焼終了時期ＣＡｅとして求める。なお、燃焼割合１００％は、クランク角θｓ（θｓ＜０、例えば、θｓ＝−６０°、ＢＴＤＣ６０°）からクランク角θｅ（θｅ＞０、例えば、θｅ＝６０°、ＡＴＤＣ６０°）までに燃焼室２５において燃焼した総ての燃料のうちピストンに対する仕事に寄与した燃料の総量に対応する値である。クランク角θｅは一回の燃焼が完全に終了している時期である。
【００８８】
（５）制御装置は、今回の全燃焼対応期間ＣＰ（ｋ）を下記の（１）式に基づいて求める。
【数１】
2010007607.tif 000003
【００８９】
なお、図７のステップ７７０は、「前記今回の燃焼行程に対して使用される前記今回の点火時期から同今回の燃焼行程において混合ガスの燃焼が終了する燃焼終了時期までの期間である全燃焼対応期間ＣＰ（ｋ）を前記燃焼割合推定手段により推定された仮定燃焼割合ＭＦＢθａｓに基いて推定する全燃焼対応期間推定手段」の機能を実現するステップである。
【００９０】
ステップ７８０：制御装置は、ステップ７７０にて求めた「今回の全燃焼対応期間ＣＰ（ｋ）」が前述したように定められている目標全燃焼対応期間ＣＰｔｇｔと一致するように、今回のＶＶＴ進角量ＶＶＴ（ｋ）を決定する。そして、制御装置は、吸気弁開弁基準時期ＩＯint（例えば、吸気上死点前３°、ＢＴＤＣ３６３°）にＶＶＴ進角量ＶＶＴ（ｋ）を加えて今回の吸気弁開弁時期ＩＯを決定し（ＩＯ＝ＢＴＤＣ（３６３＋ＶＶＴ（ｋ））、その吸気弁開弁時期ＩＯにて特定気筒の吸気弁３２を開弁させるように吸気弁制御装置３３に指示信号を送出する（図２のＩＯを参照）。即ち、今回の吸気弁開弁時期ＩＯは吸気弁開弁基準時期ＩＯintをＶＶＴ進角量ＶＶＴ（ｋ）だけ進ませた時期に設定される。
【００９１】
なお、ステップ７８０は、「前記推定された全燃焼対応期間ＣＰ（ｋ）が所定の目標全燃焼対応期間ＣＰｔｇｔと一致するように前記今回の吸気行程に対する前記特定気筒の吸気弁の開弁タイミング及び前記特定気筒の排気弁の閉弁タイミングのうちの少なくとも一方（本例では、ＶＶＴ進角量ＶＶＴ（ｋ）により定まる吸気弁開弁時期ＩＯ）を変更するバルブタイミング変更手段」の機能を実現するステップである。
【００９２】
また、制御装置は、今回の全燃焼対応期間ＣＰ（ｋ）が目標全燃焼対応期間ＣＰｔｇｔと一致するように、今回の全燃焼対応期間ＣＰ（ｋ）と目標全燃焼対応期間ＣＰｔｇｔとの差に基くＰＤ制御又はＰＩＤ制御により今回のＶＶＴ進角量ＶＶＴ（ｋ）を決定してもよい。
【００９３】
３．実際の作動
次に、制御装置（電気制御装置７０のＣＰＵ７１）の実際の作動の詳細について説明する。以下の説明は、特定気筒（本例では、第１気筒）に着目して行われる。但し、ＣＰＵ７１は他の気筒に対しても同様な処理を実行するようになっている。
【００９４】
ＣＰＵは図８に示した「燃料噴射制御ルーチン」を、現在の第１気筒のクランク角が第１気筒の今回の燃焼サイクルの吸気上死点前１８０°（圧縮上死点前５４０°、ＢＴＤＣ５４０°）に一致すると、ステップ８００から処理を開始し、ステップ８０５に進んで現時点のアクセルペダル操作量Accp及び現時点のエンジン回転速度ＮＥを上述した噴射量決定用テーブルMapTAUに適用することにより今回の燃料噴射量ＴＡＵを算出する。次に、ＣＰＵ７１はステップ８１０に進み、特定気筒（第１気筒）のクランク角が今回の燃焼サイクルの吸気上死点前８０°（ＢＴＤＣ４４０°）になったとき、特定気筒に対して設けられているインジェクタ３９から、燃料噴射量ＴＡＵの燃料を噴射する。その後、ＣＰＵ７１はステップ８９５に進み、本ルーチンを一旦終了する。
【００９５】
更に、ＣＰＵは図９に示した「図示トルクＴＲＱ算出ルーチン」を所定時間（クランク軸が１°クランク角回転するよりも短い時間）の経過毎に実行するようになっている。ＣＰＵ７１は、図示トルクＴＲＱとして「平均有効トルク値」を、以下に記載したステップ９０２乃至ステップ９４６の処理を行うことにより算出（推定）する。この方法は、特開平５−２４８２９０号公報、特開平８−３１９８６２号公報及び特開平２−１５３２４３号公報等に記載されている周知の方法である。
【００９６】
ステップ９０２：ＣＰＵ７１は特定気筒（第１気筒）のクランク角がＢＴＤＣ２０５°（圧縮上死点前２０５°）であるか否かを判定する。ＣＰＵ７１は、現在のクランク角がＢＴＤＣ２０５°であればステップ９０４に進み、現在のクランク角がＢＴＤＣ２０５°でなければステップ９０６に進む。
ステップ９０４：ＣＰＵ７１は、特定気筒（第１気筒）に設けられている筒内圧センサ６５から筒内圧Ｐｃ１を値Ｖ０１として取得し、ステップ９０６に進む。
【００９７】
ステップ９０６〜ステップ９１６：以下、ＣＰＵ７１は、ステップ９０２及びステップ９０４と同様な処理を行うことにより、特定気筒（第１気筒）のクランク角が、ＢＴＤＣ１９０°であるときの筒内圧Ｐｃ１を値Ｖ０２として取得し（ステップ９０６及びステップ９０８）、ＢＴＤＣ１７５°であるときの筒内圧Ｐｃ１を値Ｖ０３として取得し（ステップ９１０及びステップ９１２）、ＢＴＤＣ１６０°であるときの筒内圧Ｐｃ１を値Ｖ０４として取得する（ステップ９１４及びステップ９１６）。
【００９８】
ステップ９１８：ＣＰＵ７１はステップ９１６の処理を行った後、ステップ９１８に進み、値Ｖ０１〜Ｖ０４の平均値（＝（Ｖ０１＋Ｖ０２＋Ｖ０３＋Ｖ０４）／４）を基準値Ｖ０として設定する。その後、ＣＰＵ７１はステップ９２０に進む。
【００９９】
ステップ９２０：ＣＰＵ７１は、特定気筒（第１気筒）のクランク角が圧縮上死点後５°（ＡＴＤＣ５°）であるか否かを判定する。ＣＰＵ７１は、現在のクランク角がＡＴＤＣ５°であればステップ９２２〜ステップ９２６に進み、現在のクランク角がＡＴＤＣ５°でなければステップ９２６に直接進む。
ステップ９２２：ＣＰＵ７１は特定気筒（第１気筒）に設けられている筒内圧センサ６５から筒内圧Ｐｃ１を値Ｖ１として取得する。
ステップ９２４：ＣＰＵ７１は、値Ｖ１から基準値Ｖ０を減算した値を特定気筒（第１気筒）の第１筒内圧Ｐｃ１（１）として取得する。
【０１００】
ステップ９２６〜ステップ９３０：ＣＰＵ７１は、ステップ９２０乃至ステップ９２４と同様な処理を行うことにより、特定気筒（第１気筒）のクランク角がＡＴＤＣ２０°であるときの筒内圧Ｐｃ１を値Ｖ２として取得するとともに、値Ｖ２から基準値Ｖ０を減算した値を第２筒内圧Ｐｃ１（２）として取得する。
ステップ９３２〜ステップ９３６：ＣＰＵ７１は、ステップ９２０乃至ステップ９２４と同様な処理を行うことにより、特定気筒（第１気筒）のクランク角がＡＴＤＣ３５°であるときの筒内圧Ｐｃ１を値Ｖ３として取得するとともに、値Ｖ３から基準値Ｖ０を減算した値を第３筒内圧Ｐｃ１（３）として取得する。
ステップ９３８〜ステップ９４２：ＣＰＵ７１は、ステップ９２０乃至ステップ９２４と同様な処理を行うことにより、特定気筒（第１気筒）のクランク角がＡＴＤＣ５０°であるときの筒内圧Ｐｃ１を値Ｖ４として取得するとともに、値Ｖ４から基準値Ｖ０を減算した値を第４筒内圧Ｐｃ１（４）として取得する。ＣＰＵ７１は、ステップ９４２を処理した後、ステップ９４６に進む。
【０１０１】
ステップ９４６：ＣＰＵ７１は、下記の（２）式に従って前回の燃焼サイクルにおける図示トルクＴＲＱとしての「平均有効トルク値ＴＲＱ（ｋ−１）」を算出する。
【数２】
2010007607.tif 000004
以上の処理により、燃焼行程が終了した段階において特定気筒の「前回の図示トルク（図示トルクに対応する値）ＴＲＱ（ｋ−１）」が取得される。
【０１０２】
加えて、ＣＰＵ７１は、図１０に示したスロットル弁制御ルーチンを特定気筒のクランク角が特定気筒の圧縮上死点前５４０°になって図８に示したルーチンの終了後に繰り返し実行している。従って、図８に示したルーチンの処理が終了すると、ＣＰＵ７１はステップ１０００から処理を開始してステップ１００５に進み、特定気筒の「前回の図示トルクＴＲＱ（ｋ−１）」から特定気筒の「前々回の図示トルクＴＲＱ（ｋ−２）」を減じることにより、トルク変動量ΔＴＲＱを取得する。
【０１０３】
次に、ＣＰＵ７１はステップ１０１０に進み、図示トルク変動量の絶対値｜ΔＴＲＱ｜が所定のトルク変動量閾値ΔＴＲＱｔｈ（＞０）より大きいか否かを判定する。空燃比が過度に希薄化されることにより燃焼が不安定になると、図示トルク変動量の絶対値｜ΔＴＲＱ｜はトルク変動量閾値ΔＴＲＱｔｈを越える。この場合、ＣＰＵ７１はステップ１０１０にて「Ｙｅｓ」と判定してステップ１０１５に進み、前回の目標スロットル弁開度ＴＡｔｇｔ（ｋ−１）から正の一定量ΔＴＡｔｇｔｍを減じた値を「今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）」に設定する。
【０１０４】
一方、図示トルク変動量の絶対値｜ΔＴＲＱ｜がトルク変動量閾値ΔＴＲＱｔｈを越えていなければ、ＣＰＵ７１はステップ１０１０にて「Ｎｏ」と判定してステップ１０２０に進み、図示トルク変動量の絶対値｜ΔＴＲＱ｜が、トルク変動量閾値ΔＴＲＱｔｈから正の所定値ΔＴＱを減じた値である「トルク変動量安定値である安定閾値（ΔＴＲＱｔｈ−ΔＴＱ）」より小さいか否かを判定する。但し、トルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）は正の値である。
【０１０５】
このとき、図示トルク変動量の絶対値｜ΔＴＲＱ｜がトルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）より小さければ、空燃比を更に希薄化することができると考えられる。そこで、ＣＰＵ７１はステップ１０２０にて「Ｙｅｓ」と判定してステップ１０２５に進み、前回の目標スロットル弁開度ＴＡｔｇｔ（ｋ−１）に正の一定量ΔＴＡｔｇｔｐを加えた値を「今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）」に設定する。なお、図示トルク変動量の絶対値｜ΔＴＲＱ｜がトルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）より大きければ、ＣＰＵ７１はステップ１０２０にて「Ｎｏ」と判定してステップ１０９５に直接進み、本ルーチンを一旦終了する。従って、この場合、今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）は前回の今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ−１）から変化しない。
【０１０６】
ＣＰＵ７１は、ステップ１０１５又はステップ１０２５の処理を実行した後、ステップ１０３０に進み、実際のスロットル弁４３の開度が今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）に一致するように、スロットル弁アクチュエータ４３ａに指示信号を与える。その後、ＣＰＵ７１はステップ１０３５にて、特定気筒の「前回の図示トルクＴＲＱ（ｋ−１）」を次回の計算のために特定気筒の「前々回の図示トルクＴＲＱ（ｋ−２）」として格納する。次いで、ＣＰＵ７１はステップ１０９５に進んで本ルーチンを一旦終了する。
【０１０７】
以上により、トルク変動量ΔＴＲＱの大きさ（｜ΔＴＲＱ｜）が、トルク変動量閾値ΔＴＲＱｔｈとトルク変動量安定値（ΔＴＲＱｔｈ−ΔＴＱ）の間の値となるように、スロットル弁開度が変更される。換言すると、トルク変動量ΔＴＲＱの大きさがトルク変動量閾値ΔＴＲＱｔｈを超えない範囲においてスロットル弁開度が増大され、それにより空燃比が限界希薄空燃比にまで増大される（希薄化される。）。
【０１０８】
更に、ＣＰＵ７１は、燃焼割合ＭＦＢθを推定するために、図１１にフローチャートにより示した燃焼割合ＭＦＢθ推定ルーチン（燃焼割合推定手段のルーチン）を図１０のルーチンの処理を実行した後に続けて実行するようになっている。
【０１０９】
ＣＰＵ７１は図１１のステップ１１００から処理を開始すると、以下に記載したステップ１１０５乃至ステップ１１２５の処理を順に行った後、ステップ１１９５に進んで本ルーチンを一旦終了する。
【０１１０】
ステップ１１０５：ＣＰＵ７１は、今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）及び現時点のエンジン回転速度ＮＥを前述した推定負荷算出テーブルMapKLsに適用することにより、今回の推定負荷ＫＬｓ（ｋ）を推定する（ＫＬｓ（ｋ）＝MapKLs（ＴＡｔｇｔ（ｋ），ＮＥ））。なお、目標スロットル弁開度ＴＡｔｇｔは、今回の燃焼サイクルにおける吸気上死点においても他の気筒のトルク変動量ΔＴＲＱに応じて変更される可能性がある。しかしながら、スロットル弁開度が変更になってから燃焼室２５に吸入される空気の量が変化するまでには僅かな時間を要する。従って、今回の燃焼サイクルにおける吸気行程にて特定気筒の燃焼室２５に吸入される空気の量（従って、推定負荷ＫＬｓ）は、現時点にて変更された今回の目標スロットル弁開度ＴＡｔｇｔ（ｔ）に依存する。
【０１１１】
ステップ１１１０：ＣＰＵ７１は下記（３）式に従って変数αｉを算出する。ＣＰＵ７１は、この（３）式の点火時期ＳＡとして前回の点火時期ＳＡ（ｋ−１）を採用し、エンジン回転速度ＮＥとして現時点のエンジン回転速度ＮＥを採用し、負荷ＫＬとして上記ステップ１１０５にて推定された今回の推定負荷ＫＬｓ（ｋ）を採用し、且つ、燃料噴射量ＴＡＵとして図８のステップ８０５にて決定した燃料噴射量ＴＡＵを採用する。
【数３】
2010007607.tif 000005
【０１１２】
ステップ１１１５：ＣＰＵ７１は下記（４）式に従って変数αｂを算出する。ＣＰＵ７１は、この（４）式のＶＶＴ進角量ＶＶＴとして前回のＶＶＴ進角量ＶＶＴ（ｋ−１）を採用し、エンジン回転速度ＮＥとして現時点のエンジン回転速度ＮＥを採用し、負荷ＫＬとして上記ステップ１１０５にて推定された今回の推定負荷ＫＬｓ（ｋ）を採用し、且つ、燃料噴射量ＴＡＵとして図８のステップ８０５にて決定した燃料噴射量ＴＡＵを採用する。
【数４】
2010007607.tif 000006
【０１１３】
ステップ１１２０：ＣＰＵ７１は下記（５）式に示した「Ｗｉｅｂｅ関数」に従って燃焼割合ＭＦＢθを推定する。変数αｉ及び変数αｂには、上記ステップ１１１０及びステップ１１１５にてそれぞれ算出された値が代入される。（５）式における「ｃ」及び「ｄ」は適合変数である（例えば、ｃ＝５、ｄ＝４）。（５）式におけるθには、θｓからθｅまでの範囲において微小なクランク角Δθずつ増加される値が代入される。即ち、θ＝θｓ＋ｍ・Δθ（ｍは０及び（θｅ−θｓ）／Δθまでの自然数）である。この結果、複数の燃焼割合ＭＦＢθが計算される。この燃焼割合ＭＦＢθが、前述した仮定燃焼割合である。なお、θｓは、θｓ＜０、例えば、θｓ＝−６０°（ＢＴＤＣ６０°）である。θｅは、θｅ＞０、例えば、θｅ＝６０°（ＡＴＤＣ６０°）である。
【数５】
2010007607.tif 000007
【０１１４】
ステップ１１２５：ＣＰＵ７１は、ステップ１１２０にて算出された複数の燃焼割合ＭＦＢθをクランク角θと関連付けてＲＡＭ７３内に格納する。
以上により特定気筒の燃焼割合ＭＦＢθが微小クランク角Δθ毎に求められ、ＲＡＭ７３内に格納される。
【０１１５】
一方、ＣＰＵ７１は図１２に示した点火時期制御ルーチンを、図１１にフローチャートにより示したルーチンの処理を実行した後に続けて実行するようになっている。
【０１１６】
ＣＰＵ７１は図１２のステップ１２００から処理を開始するとステップ１２１０に進み、運転状態（機関１０の運転状態を表すパラメータ）に基づいて８°目標燃焼割合ＭＦＢ８ｔｇｔを決定する。機関１０の運転状態を表すパラメータは、吸入空気量Ga（又は、アクセルペダル操作量Accp、即ち、エンジン負荷）及びエンジン回転速度ＮＥである。運転状態を表すパラメータとして、冷却水温ＴＨＷ等の他のパラメータを加えてもよい。但し、本例においては、８°目標燃焼割合ＭＦＢ８ｔｇｔは６０％に固定されている。
【０１１７】
次に、ＣＰＵ７１はステップ１２２０に進み、図１１のステップ１１２０及びステップ１１２５にて算出され且つＲＡＭ７３に格納されている複数の燃焼割合ＭＦＢθの中から、θが８°（ＡＴＤＣ８°）であるときの燃焼割合ＭＦＢθを「８°仮定燃焼割合ＭＦＢ８ａｓ」として読み出す。
【０１１８】
次に、ＣＰＵ７１はステップ１２３０に進み、８°仮定燃焼割合ＭＦＢ８ａｓが８°目標燃焼割合ＭＦＢ８ｔｇｔよりも大きいか否かを判定する。このとき、８°仮定燃焼割合ＭＦＢ８ａｓが８°目標燃焼割合ＭＦＢ８ｔｇｔよりも大きければ、ＣＰＵ７１はステップ１２３０からステップ１２４０に進み、前回の点火時期ＳＡ（ｋ−１）を所定角度ΔＳＡだけ遅らせた点火時期を今回の点火時期ＳＡ（ｋ）として設定する。即ち、点火時期ＳＡが角度ΔＳＡだけ遅角される。これに対し、８°仮定燃焼割合ＭＦＢ８ａｓが８°目標燃焼割合ＭＦＢ８ｔｇｔよりも小さければ、ＣＰＵ７１はステップ１２３０からステップ１２５０に進み、前回の点火時期ＳＡ（ｋ−１）を所定角度ΔＳＡだけ進ませた点火時期を今回の点火時期ＳＡ（ｋ）として設定する。即ち、点火時期ＳＡが角度ΔＳＡだけ進角される。
【０１１９】
その後、ＣＰＵ７１は、ステップ１２６０に進み、特定気筒のクランク角が今回の点火時期ＳＡ（ｋ）と一致したときに特定気筒の点火プラグ３７から点火用の火花が発生するように設定し、ステップ１２９５に進んで本ルーチンを一旦終了する。
【０１２０】
更に、ＣＰＵ７１は図１３に示したＶＶＴ進角量制御ルーチンを、図１２に示したルーチンの処理を実行した後に続けて実行するようになっている。
【０１２１】
ＣＰＵ７１は図１３のルーチンの処理をステップ１３００から開始すると、以下に記載したステップ１３１０乃至ステップ１３８０の処理を行い、ステップ１３９５に進んで本ルーチンを一旦終了する。
【０１２２】
ステップ１３１０：ＣＰＵ７１は、図１１のステップ１１２０及びステップ１１２５にて算出され且つＲＡＭ７３に格納されている複数の燃焼割合ＭＦＢθ（仮定燃料割合ＭＦＢθａｓ）を用いてＮ°（ここではクランク角１５°）幅における燃焼割合の変化量ΔＭＦＢを、前記所定の微小クランク角Δθ毎に算出する。即ち、ΔＭＦＢ＝ＭＦＢθ−ＭＦＢθｂ（但し、θｂ＝θ−Ｎ）に従って変化量ΔＭＦＢが計算される。
【０１２３】
ステップ１３２０：ＣＰＵ７１は、ステップ１３１０にて算出された複数の燃焼割合変化量ΔＭＦＢの中から最大値（燃焼割合最大変化速度）ΔＭＦＢmaxを取得する（図４を参照。）。更に、ＣＰＵ７１は、その燃焼割合最大変化速度ΔＭＦＢmaxに対するクランク角θをクランク角ＣＡmaxとして取得するとともに、クランク角ＣＡmaxにおける燃焼割合ＭＦＢθ（仮定燃料割合ＭＦＢθａｓ）をＭＦＢcamaxとして取得する。
【０１２４】
ステップ１３３０：ＣＰＵ７１は、ステップ１３２０にて求めた各値と、図１２のステップ１２４０又はステップ１２５０にて決定された今回の点火時期ＳＡ（ｋ）を上記（１）式に適用することにより、図４に示した今回の全燃焼対応期間ＣＰ（ｋ）を推定（算出）する。
【０１２５】
ステップ１３４０：ＣＰＵ７１は、ステップ１３３０にて求めた「今回の全燃焼対応期間ＣＰ（ｋ）」が前述したように定められている目標全燃焼対応期間ＣＰｔｇｔより大きいか否かを判定する。そして、今回の全燃焼対応期間ＣＰ（ｋ）が目標全燃焼対応期間ＣＰｔｇｔより大きい場合、ＣＰＵ７１はステップ１３４０にて「Ｙｅｓ」と判定してステップ１３５０に進む。一方、今回の全燃焼対応期間ＣＰ（ｋ）が目標全燃焼対応期間ＣＰｔｇｔより小さい場合、ＣＰＵ７１はステップ１３４０にて「Ｎｏ」と判定してステップ１３６０に進む。
【０１２６】
ステップ１３５０：ＣＰＵ７１は、吸気弁開弁時期ＩＯが所定角度ΔＩＯだけ遅らされるように、前回のＶＶＴ進角量ＶＶＴ（ｋ−１）から所定角度ΔＩＯを減じた値を今回のＶＶＴ進角量ＶＶＴ（ｋ）に設定する。
ステップ１３６０：ＣＰＵ７１は、吸気弁開弁時期ＩＯが所定角度ΔＩＯだけ進められるように、前回のＶＶＴ進角量ＶＶＴ（ｋ−１）に所定角度ΔＩＯを加えた値を今回のＶＶＴ進角量ＶＶＴ（ｋ）に設定する。
【０１２７】
ステップ１３７０：ＣＰＵ７１は、吸気弁開弁基準時期ＩＯint（例えば、吸気上死点前３°、ＢＴＤＣ３６３°）にステップ１３５０又はステップ１３６０にて設定された今回のＶＶＴ進角量ＶＶＴ（ｋ）を加えて今回の吸気弁開弁時期ＩＯを決定する。
ステップ１３８０：ＣＰＵ７１は、ステップ１３７０にて決定された吸気弁開弁時期ＩＯにて特定気筒の吸気弁３２を開弁させるように吸気弁制御装置３３に指示信号を送出する。
以上により、今回の全燃焼対応期間ＣＰ（ｋ）が目標全燃焼対応期間ＣＰｔｇｔと一致するように、今回のＶＶＴ進角量ＶＶＴ（ｋ）が定められ、従って、特定気筒の吸気弁開弁時期ＩＯ及び吸気弁閉弁時期ＩＣ（吸気弁開弁時期ＩＯから一定のクランク角だけ遅角した時期）が変更される。以上が、本制御装置の作動の詳細である。
【０１２８】
図１４は、本発明を適用していない制御装置（点火時期ＳＡ及びＶＶＴ進角量を固定にした制御装置）において空燃比を変化させた場合の「燃焼割合ＭＦＢ及び筒内圧Ｐｃ」を測定した結果と、本発明による上記実施形態に係る制御装置において空燃比を変化させた場合の「燃焼割合ＭＦＢ及び筒内圧Ｐｃ」を測定した結果と、を示したグラフである。
【０１２９】
図１４の（Ａ）から明らかなように、点火時期ＳＡ及びＶＶＴ進角量が固定されていると、空燃比が大きくなる（混合ガスが希薄化される）に従って燃焼割合ＭＦＢの増大速度が低下する。また、図１４（Ｂ）から明らかなように、点火時期ＳＡ及びＶＶＴ進角量が固定されていると、空燃比が大きくなるに従って筒内圧Ｐｃの最大値が低下する。即ち、機関が発生するトルクが低下する。
【０１３０】
これに対し、図１４の（Ｃ）から明らかなように、点火時期ＳＡ及びＶＶＴ進角量を本制御装置により変更すると、空燃比が大きくなっても燃焼割合ＭＦＢは殆ど変化しない。また、図１４（Ｄ）から明らかなように、点火時期ＳＡ及びＶＶＴ進角量を本制御装置により変更すると、空燃比が大きくなっても筒内圧Ｐｃは殆ど変化しない。以上から、本発明の実施形態に係る制御装置によれば、理想的な燃焼が得られることが理解できる。
【０１３１】
このように本制御装置は燃焼状態を表す燃焼割合を理想の形状に近づけることができるので、図１５に示した利点が得られる。図１５は空燃比を変化させた場合における図示トルクＴＲＱ、トルク変動量ΔＴＲＱの大きさ、ＨＣ成分の排出量及びＮＯｘの排出量を示したグラフである。図１５において白塗りの三角のプロットは本制御装置によるデータを示し、黒塗りの三角のプロットは点火時期ＳＡ及びＶＶＴ進角量を固定にした制御装置（以下、「比較装置」と称呼する。）によるデータを示す。
【０１３２】
この図１５から、本制御装置は以下の利点を備えることが確認できる。
（１）図１５の（Ａ）から、比較装置においては、空燃比が１８を超えると図示トルクＴＲＱが急激に低下していることが確認できる。これに対し、本制御装置においては、空燃比が１８を超えても図示トルクが低下しないということが確認できる。
（２）図１５の（Ｂ）から、比較装置においては、空燃比が１８を超えると図示トルクの変動量の大きさ｜ΔＴＲＱ｜が急激に増大していることが確認できる。これに対し、本制御装置においては、空燃比が２０になるまではトルク変動量の大きさ｜ΔＴＲＱ｜が増大しないことが確認できる。従って、本制御装置は、図１５の（Ｂ）における矢印ＡＲ１にて示したように、希薄限界を上昇することができる（安定した燃焼が可能な最大の空燃比である限界希薄空燃比を大きくすることができる。）。その結果、機関１０の燃費を改善することができる。
（３）図１５の（Ｃ）から、本制御装置は、比較装置よりも、ＨＣの総排出量を低減することができる。
【０１３３】
但し、本制御装置は、ＶＶＴ進角量が空燃比の増大にともなって減少するから、筒内に残留する既燃ガス量（内部ＥＧＲ量）が減少する。従って、図１５の（４）から理解されるように、本制御装置のＮＯｘ排出量は比較装置のＮＯｘ排出量よりも若干大きくなる。
【０１３４】
（Ｗｉｅｂｅ関数とパラメータについて）
ところで、発明者は、点火時期ＳＡをＢＴＤＣ２２°、ＢＴＤＣ２８°及びＢＴＤＣ３２°に設定した場合における実際の燃焼割合ＭＦＢのクランク角θに対する変化を測定した。図１６はその結果を示すグラフである。一方、図１７は、上記（５）式におけるパラメータαｉを変化させ、他の値ｃ、ｄ、及びαｂを一定値としたときの変数ｘ（＝θ）に対するｙ（＝ＭＦＢθ）の変化を示すグラフである。
【０１３５】
発明者は、図１６及び図１７を比較することにより、点火時期ＳＡとパラメータαｉとは非常に相関が強いこと（即ち、点火時期ＳＡを変更した場合の実際の燃焼割合ＭＦＢの変化と、パラメータαｉを変更した場合の計算値ｙ（＝ＭＦＢθ）の変化とが類似すること）を見いだした。より具体的には、図１６に示したように、点火時期ＳＡを変更した場合、実際の燃焼割合ＭＦＢのクランク角θに対する増大速度は殆ど変化しないが、実際の燃焼割合ＭＦＢが増大を開始するクランク角θが変化する。同様に、図１７に示したように、パラメータαｉを変更した場合、計算値ｙ（＝ＭＦＢθ）のｘ（＝θ）に対する傾き（増大速度）は殆ど変化しないが、計算値ｙが増大を開始するｘの値が変化する。
【０１３６】
次に、発明者は、ＶＶＴ進角量ＶＶＴを０°、２０°及び４０°に設定した場合における実際の燃焼割合ＭＦＢのクランク角θに対する変化を測定した。図１８はその結果を示すグラフである。一方、図１９は、上記（５）式におけるパラメータαｂを変化させ、他の値ｃ、ｄ、及びαｉを一定値としたときの変数ｘ（＝θ）に対するｙ（＝ＭＦＢθ）の変化を示すグラフである。
【０１３７】
発明者は、図１８及び図１９を比較することにより、ＶＶＴ進角量ＶＶＴ（即ち、オーバーラップ期間）とパラメータαｂとは非常に相関が強いことを見いだした。換言すると、ＶＶＴ進角量ＶＶＴを変更した場合の実際の燃焼割合ＭＦＢの変化と、パラメータαｂを変更した場合の計算値ｙ（＝ＭＦＢθ）の変化とが類似することを見いだした。より具体的には、図１８に示したように、ＶＶＴ進角量ＶＶＴを変更した場合、実際の燃焼割合ＭＦＢが増大を開始するクランク角θは殆ど変化しないが、実際の燃焼割合ＭＦＢの増大速度が変化する。同様に、図１９に示したように、パラメータαｂを変更した場合、計算値ｙ（＝ＭＦＢθ）が増大を開始するｘ（＝θ）の値は殆ど変化しないが、計算値ｙのｘに対する傾き（増大速度）が変化する。
【０１３８】
以上のことから、発明者は、パラメータαｉは点火時期ＳＡの一次式により表されること（少なくとも、パラメータαｉは点火時期ＳＡを変数とする関数により表されること）が好適であると判断し（上記（３）式を参照。）、パラメータαｂはＶＶＴ進角量ＶＶＴの一次式により表されること（少なくとも、パラメータαｂはＶＶＴ進角量ＶＶＴを変数とする関数により表されること）が好適であると判断した（上記（４）式を参照。）。
【０１３９】
更に、発明者は、負荷ＫＬが大きくなるほど、空燃比が小さくなるほど、ＮＥが小さくなるほど、クランク角θに対する燃焼速度（単位クランク角に対する燃焼割合の増加量）は大きくなるとの認識を得た。従って、パラメータαｂ（パラメータαｂを求める（４）式）に変数ＫＬ／ＮＥ及び変数ＫＬｓ／ＴＡＵ（空燃比に相当する値である空燃比相当値）を導入した。即ち、パラメータαｂは変数ＫＬ／ＮＥの一次式により表されることが好適であり、同時に、パラメータαｂは変数ＫＬｓ／ＴＡＵの一次式により表されることが好適である。そして、パラメータαｂに変数ＫＬ／ＮＥ及び変数ＫＬｓ／ＴＡＵを導入したことに対する調整として、パラメータαｉに変数ＫＬ／ＮＥ、変数ＫＬｓ／ＴＡＵ及び変数ＮＥを導入した（上記（３）式を参照。）。
【０１４０】
なお、パラメータαｉを点火時期ＳＡ（圧縮上死点前の点火時期の進角度を正とする値）に関して単調増加する一次関数以外の関数により表し、パラメータαｂをＶＶＴ進角量ＶＶＴに関して単調増加する一次関数以外の関数により表しても良い。
【０１４１】
＜第１変形例＞
上記制御装置は、上記（３）式乃至（５）式により表された燃焼状態モデル（Ｗｉｅｂｅ関数）により計算された値を仮定燃焼割合ＭＦＢθａｓとして使用していた。これに対し、本発明の第１変形例は、上記燃焼状態モデル（Ｗｉｅｂｅ関数）により計算された値を、「実際の燃焼割合」と「その燃焼状態モデルにより求められた燃焼割合」との差、に基いて補正することにより仮定燃焼割合ＭＦＢθａｓを求める点において、上記制御装置と相違している。従って、以下、この相違点を中心に説明する。
【０１４２】
この第１変形例は、第１変形例の機能ブロック図である図２０に示した各手段を有する。以下、各ブロックの機能を順に説明する。なお、以下の説明は、総て特定気筒に関する。第１変形例は他の気筒に対しても同様な機能ブロックを有する。
【０１４３】
目標値設定手段Ａ１は、目標燃焼割合ＭＦＢ８ｔｇｔを出力するようになっている。目標燃焼割合ＭＦＢ８ｔｇｔは本例において一定値（６０％）である。なお、目標値設定手段Ａ１は、機関１０の負荷及び機関回転速度ＮＥ等の機関の運転状態を表す量を入力し、その運転状態を表す量に応じて目標燃焼割合ＭＦＢ８ｔｇｔを変更するように構成されていてもよい。目標燃焼割合ＭＦＢ８ｔｇｔは、機関の燃焼効率が良く、且つ、ＨＣやＣＯ等の排出量が低い値となり、且つ、ノッキング等によるトルク変動等が発生しないような値に設定される。
【０１４４】
ＭＦＢ計算モデルＡ２は上記（３）式乃至（５）式により表された燃焼状態モデル（Ｗｉｅｂｅ関数）を含んでいる。ＭＦＢ計算モデルＡ２は、上述したように、検出される筒内圧Ｐｃとは相違するとともに機関１０の運転状態を表し且つ点火時期ＳＡを含む運転パラメータ（燃焼状態に影響を及ぼす運転状態量）として、前回の点火時期ＳＡ（ｋ−１）、今回の推定負荷ＫＬｓ（ｋ）、現時点の機関回転速度ＮＥ（ｋ）、前回のＶＶＴ進角量ＶＶＴ（ｋ−１）及び今回の燃料噴射量ＴＡＵ（＝ＴＡＵ（ｋ））を入力するようになっている。
【０１４５】
前回の点火時期ＳＡ（ｋ−１）は、点火時期データ遅延手段Ａ３から取得される。点火時期データ遅延手段Ａ３は、後述するフィードバックコントローラＡ８から出力された今回の燃焼行程に対する点火時期ＳＡ（ｋ）をＲＡＭ７３内に格納し、格納したデータの中から前回の燃焼行程に対する点火時期ＳＡ（ｋ−１）を出力するようになっている。
【０１４６】
推定負荷ＫＬｓは、推定負荷算出手段Ａ４により算出される。推定負荷算出手段Ａ４は、今回の目標スロットル弁開度ＴＡｔｇｔ（ｋ）及び現時点のエンジン回転速度ＮＥ（ｋ）を前述した推定負荷算出テーブルMapKLsに適用することにより、今回の推定負荷ＫＬｓ（ｋ）を推定するようになっている。即ち、ＫＬｓ（ｋ）＝MapKLs（ＴＡｔｇｔ（ｋ），ＮＥ（ｋ））である。
【０１４７】
前回のＶＶＴ進角量ＶＶＴ（ｋ−１）は、ＶＶＴ進角量データ遅延手段Ａ５から取得される。ＶＶＴ進角量データ遅延手段Ａ５は、上述した制御装置と同様に全燃焼対応期間が目標全燃焼対応期間に一致するように変更された「今回の燃焼行程に対するＶＶＴ進角量ＶＶＴ（ｋ）」をＲＡＭ７３内に格納し、格納したデータの中から前回の燃焼行程に対するＶＶＴ進角量ＶＶＴ（ｋ−１）を出力するようになっている。
【０１４８】
ＭＦＢ計算モデルＡ２は、次に到来しようとしている燃焼行程（今回の燃焼行程）が開始する直前の計算タイミング（例えば、特定気筒のクランク角が特定気筒の圧縮上死点前５４０°になるタイミング）にて、上記入力した運転パラメータを燃焼状態モデルに適用することにより、今回の燃焼行程中の特定タイミングであるＡＴＤＣ８°における燃焼割合ＭＦＢ８（ｋ）を予測（計算）するようになっている。ＭＦＢ計算モデルＡ２により予測される８°燃焼割合ＭＦＢ８（ｋ）を「計算燃焼割合ＭＦＢ８cal（ｋ）」と称呼する。
【０１４９】
このように、点火時期ＳＡ（ｋ−１）、推定負荷ＫＬｓ（ｋ）、機関回転速度ＮＥ（ｋ）及びＶＶＴ進角量ＶＶＴ（ｋ−１）の運転パラメータはＭＦＢ計算モデルＡ２に入力されるから、第１変形例は実質的にこれらの運転パラメータ（運転状態量）を取得する運転状態量取得手段（筒内圧センサ６５が検出する物理量（筒内圧）と相違し且つ機関１０の運転状態を表す点火時期を含む量である運転状態量を取得する運転状態量取得手段）を備えていることになる。
【０１５０】
なお、推定負荷ＫＬｓは、空気の挙動を記述した周知の空気モデルにより計算されてもよい。その計算を行う際、スロットル弁開度には目標スロットル弁開度ＴＡｔｇｔ（ｋ）が使用される。ＶＶＴ進角量は、上述したように、排気弁の開弁時期及び閉弁時期を一定とした場合での、吸気弁開弁時期が最も遅角側に設定されている場合（例えば、吸気上死点前３°）を基準とした吸気弁開弁時期の進角量である。
【０１５１】
ＭＦＢ計算モデルＡ２は、運転パラメータを燃焼状態モデル（Ｗｉｅｂｅ関数）に適用することにより燃焼行程の特定タイミングにおける燃焼状態を表す量（計算燃焼割合ＭＦＢ８cal（ｋ））を予測燃焼状態量として取得する予測燃焼状態量取得手段であると言うことができる。
【０１５２】
予測燃焼状態量補正手段Ａ６は、前記予測燃焼状態量である計算燃焼割合ＭＦＢ８cal（ｋ）を補正量ＨＭＦＢによって補正することにより補正後予測燃焼状態量である補正後燃焼割合ＭＦＢ８mfd（ｋ）を「８°仮定燃焼割合ＭＦＢ８ａｓ」として取得するようになっている。より具体的に述べると、予測燃焼状態量補正手段Ａ６は、計算燃焼割合ＭＦＢ８cal（ｋ）に補正量ＨＭＦＢを加えることにより補正後燃焼割合ＭＦＢ８mfd（ｋ）を「８°仮定燃焼割合ＭＦＢ８ａｓ」として取得する。補正量ＨＭＦＢは後述するローパスフィルタＡ１２から出力される。
【０１５３】
フィードバック制御用偏差算出手段Ａ７は、目標燃焼割合ＭＦＢ８ｔｇｔから８°仮定燃焼割合ＭＦＢ８ａｓである補正後燃焼割合ＭＦＢ８mfd（ｋ）を減じることによってフィードバック制御用偏差ｄＭＦＢ８（＝ｄＭＦＢ８（ｋ））を算出する。
【０１５４】
フィードバックコントローラＡ８は、フィードバック制御用偏差ｄＭＦＢ８が０になるように点火時期ＳＡ（ｋ）を決定する。換言すると、フィードバック制御用偏差算出手段Ａ７及びフィードバックコントローラＡ８は、今回の燃焼行程に対する補正後予測燃焼状態量である補正後燃焼割合ＭＦＢ８mfd（ｋ）（８°仮定燃焼割合ＭＦＢ８ａｓ）と目標燃焼割合ＭＦＢ８ｔｇｔとが一致するように機関１０の点火時期ＳＡ（ｋ）をフィードバック制御（比例・積分制御）する点火時期制御手段を構成している。
【０１５５】
より具体的に述べると、フィードバックコントローラＡ８は、下記（６）式に基いて今回の燃焼行程に対する点火時期ＳＡ（ｋ）を決定するとともに、決定した点火時期ＳＡ（ｋ）にて点火を実行するようにイグナイタ３８に点火指示信号を送出する。
【数６】
2010007607.tif 000008
（６）式のＫｐは比例定数であり、Ｋｉは積分定数である。ＳｄＭＦＢ８（ｋ）はフィードバック制御用偏差ｄＭＦＢ８（ｋ）の積分値であり、下記（７）式に基いて求められる。
【数７】
2010007607.tif 000009
【０１５６】
実ＭＦＢ算出手段Ａ９は、前回の燃焼行程中のＡＴＤＣ８°における燃焼割合ＭＦＢ８（ｋ−１）を少なくとも特定気筒に設けられた筒内圧センサ６５によって検出された筒内圧Ｐｃ（θ）＝Ｐｃ（８°）に基いて算出するようになっている。実ＭＦＢ算出手段Ａ９により算出される８°燃焼割合ＭＦＢ８（ｋ−１）を「実燃焼割合ＭＦＢ８act（ｋ−１）」と称呼する。実燃焼割合ＭＦＢ８act（ｋ−１）は、前回の燃焼行程の特定タイミングにおける実際の燃焼状態を表す量（即ち、実燃焼状態量）である。
【０１５７】
ところで、上述したように、燃焼割合ＭＦＢは図示熱量の割合Ｑsum／Ｑtotalを表す値として取得される。燃焼割合ＭＦＢを筒内圧センサ６５によって検出された筒内圧Ｐｃから求める手法の詳細は、例えば、特開２００６−１４４６４５号公報に開示されているので、以下、その概略について述べる。
【０１５８】
クランク角θにおける燃焼割合ＭＦＢθは、下記の（８）式により推定される。（８）式におけるクランク角θｓ及びクランク角θｅは前述したとおりである。即ち、クランク角θｓは（θｓ＜０）は、燃焼割合ＭＦＢθを求める対象とする燃焼行程（膨張行程）に向う過程において吸気弁３２及び排気弁３５の両方が閉じた状態にあり且つ点火時期よりも十分に進角した時期（例えば、θｓ＝−６０°、ＢＴＤＣ６０°）である。クランク角θｅ（θｅ＞０）は、燃焼割合ＭＦＢθを求める対象とする燃焼行程における燃焼が実質的に終了する最も遅い時期よりも遅い所定の時期且つ排気弁開弁時期よりも進角した時期（例えば、θｅ＝６０°、ＡＴＤＣ６０°）である。
【数８】
2010007607.tif 000010
【０１５９】
この（８）式は、発生した熱のうちピストンに対する仕事に寄与した熱の積算量Ｑの変化パターンがＰｃ（θ）Ｖ（θ）κの変化パターンと概ね一致するという知見に基いている。Ｐｃ（θ）はクランク角θにおける筒内圧、Ｖ（θ）はクランク角θにおける燃焼室２５の容積、κは混合ガスの比熱比（例えば、１．３２）である。
【０１６０】
Ｐｃ（θ）＝Ｐｃ（８°）、Ｐｃ（θｓ）＝Ｐｃ（−６０°）及びＰｃ（θｅ）＝Ｐｃ（６０°）は、特定気筒のクランク角が８°、−６０°及び６０°に一致したときに特定気筒に設けられた筒内圧センサ６５から出力される信号に基いてそれぞれ取得される。Ｖ（θ）＝Ｖ（８°）、Ｖ（θｓ）＝Ｖ（−６０°）及びＶ（θｅ）＝Ｖ（６０°）は、予めＲＯＭ７２に格納されている。実ＭＦＢ算出手段Ａ９は、これらの値を上記（８）式に適用することにより、前回の燃焼行程に対する実燃焼割合ＭＦＢ８act（ｋ−１）を求める。
【０１６１】
燃焼割合データ遅延手段Ａ１０は、前述した補正後燃焼割合ＭＦＢ８mfd（ｋ）を補正後燃焼割合ＭＦＢ８mfd（ｋ）が算出される毎にＲＡＭ７３に格納し、格納したデータの中から前回の燃焼行程に対する補正後燃焼割合ＭＦＢ８mfd（ｋ−１）を出力するようになっている。
【０１６２】
補正基本量算出手段Ａ１１は、実燃焼割合ＭＦＢ８act（ｋ−１）から補正後燃焼割合ＭＦＢ８mfd（ｋ−１）を減じることにより補正基本量ｅＭＤＬを算出するようになっている。換言すると、補正基本量算出手段Ａ１１は、予測燃焼状態量取得手段としてのＭＦＢ計算モデルＡ２と予測燃焼状態量補正手段Ａ６とにより前回の燃焼行程に対して取得された補正後予測燃焼状態量としての補正後燃焼割合ＭＦＢ８mfd（ｋ−１）と、実燃焼状態量取得手段としての実ＭＦＢ算出手段Ａ９により前回の燃焼行程に対して取得された実燃焼状態量としての実燃焼割合ＭＦＢ８act（ｋ−１）との差（補正基本量ｅＭＤＬ）を取得するようになっている。
【０１６３】
ローパスフィルタＡ１２は、補正基本量算出手段Ａ１１によって取得された補正基本量ｅＭＤＬに対し周知のローパスフィルタ処理を施すことにより前述した補正量ＨＭＦＢを算出するようになっている。このローパスフィルタ処理は、補正基本量ｅＭＤＬを時間積分する処理と実質的に同じ処理である。例えば、このローパスフィルタ処理は、ＨＭＦＢ（ｋ）＝ｐ・ＨＭＦＢ（ｋ−１）＋（１−ｐ）・ｅＭＤＬなる式（ｐは０と１との間の数値）により表される。
【０１６４】
このように、燃焼割合データ遅延手段Ａ１０、補正基本量算出手段Ａ１１及びローパスフィルタＡ１２は、前回の燃焼行程に対して取得された補正後燃焼割合ＭＦＢ８mfd（ｋ−１）と、前回の燃焼行程に対して取得された実燃焼割合ＭＦＢ８act（ｋ−１）と、の差、に基づいて補正量ＨＭＦＢを算出する補正量算出手段を構成している。
【０１６５】
以上、説明したように、第１変形例は、推定負荷ＫＬｓ及び燃焼状態モデルを用いて今回の燃焼行程（爆発行程、膨張行程）に対する８°燃焼割合ＭＦＢ８を予測しているので、加速時のような過渡運転状態においても点火時期を精度良く制御することができる。更に、何れも前回の燃焼行程に対する値である補正後燃焼割合ＭＦＢ８mfd（ｋ−１）と実燃焼割合ＭＦＢ８act（ｋ−１）の差に基づいて今回の燃焼行程に対して予測される計算燃焼割合ＭＦＢ８cal（ｋ）を補正することにより、点火時期制御に用いられる補正後燃焼割合ＭＦＢ８mfd（ｋ）を「８°仮定燃焼割合ＭＦＢ８ａｓ」として求めているので、補正後燃焼割合ＭＦＢ８mfd（ｋ）を精度良く求めることができる。その結果、燃焼状態モデルにモデル誤差が含まれていても、点火時期が最適値に近づくので、機関１０のトルク及び燃費等を改善することができる。
【０１６６】
なお、上記第１変形例は、８°燃焼割合ＭＦＢについて補正後燃焼割合ＭＦＢ８mfd（ｋ）を求めているが、全燃焼対応期間を求める際に使用する燃焼割合ＭＦＢθの各値（ＭＦＢ計算モデルＡ２が計算する計算燃焼割合ＭＦＢθcal（ｋ））を補正量ＨＭＦＢによって補正してもよい。
【０１６７】
＜第２変形例＞
制御装置の第２変形例は、上記第１変形例とは相違する手法に従って「上記燃焼状態モデルにより計算された値」を補正することにより「仮定燃焼割合」を求める点において、上記第１変形例と相違している。従って、以下、この相違点を中心に説明する。
【０１６８】
この第２変形例は、第２変形例の機能ブロック図である図２１に示した各手段を有する。以下、各ブロックの機能を順に説明する。なお、以下の説明は、総て特定気筒に関する。第２変形例は他の気筒に対しても同様な機能ブロックを有する。
【０１６９】
第２変形例は、上記制御装置及び第１変形例と同様、今回の燃焼行程に対する８°燃焼割合ＭＦＢ８を今回の燃焼行程前の時点（例えば、特定気筒のクランク角が特定気筒の圧縮上死点前５４０°になるタイミング）にて燃焼状態モデルを用いて予測するとともに、その予測された値を補正値により補正する。そして、その補正された８°燃焼割合である「８°仮定燃焼割合ＭＦＢ８ａｓ」が目標燃焼割合ＭＦＢ８ｔｇｔと一致するように点火時期ＳＡをフィードバック制御する。但し、第２変形例は、第１変形例と同様に推定された今回の燃焼行程に対する８°燃焼割合ＭＦＢ８を第１変形例とは異なる方法により補正することにより、８°仮定燃焼割合ＭＦＢ８ａｓを求める。
【０１７０】
第１変形例において、補正後燃焼割合ＭＦＢ８mfd（ｋ）は前回の燃焼行程における点火時期ＳＡ（ｋ−１）に基いて決定される。従って、燃焼状態モデルの有する誤差を補償することを目的として実燃焼割合ＭＦＢ８act（ｋ−１）と比較される補正後燃焼割合ＭＦＢ８mfd（ｋ−１）は、前々回（２回前）の点火時期ＳＡ（ｋ−２）に基いて決定されていることになる。一方、実燃焼割合ＭＦＢ８act（ｋ−１）は前回（１回前）の点火時期ＳＡ（ｋ−１）にて点火及び燃焼が実際に行われた結果として得られる値である。つまり、実燃焼割合ＭＦＢ８act（ｋ−１）と補正後燃焼割合ＭＦＢ８mfd（ｋ−１）とは、その基本となっている点火時期ＳＡが相違している。このため、実燃焼割合ＭＦＢ８act（ｋ−１）と補正後燃焼割合ＭＦＢ８mfd（ｋ−１）との差である補正基本量ｅＭＤＬは、燃焼状態モデルが有する誤差そのものを表す値とはならないので、ローパスフィルタ処理を行って補正値ＨＭＦＢを求める必要があり、補正が遅れる場合があった。
【０１７１】
第２変形例は、上述した第１変形例が有する課題に着目した装置である。
目標値設定手段Ｂ１は、上記目標値設定手段Ａ１と同一の手段である。即ち、目標値設定手段Ｂ１は、目標燃焼割合ＭＦＢ８ｔｇｔを出力するようになっている。
【０１７２】
第１ＭＦＢ計算モデルＢ２は、上記ＭＦＢ計算モデルＡ２と同一の手段である。即ち、第１ＭＦＢ計算モデルＢ２は、上記ＭＦＢ計算モデルＡ２が備える燃焼状態モデル（Ｗｉｅｂｅ関数）を含んでいる。第１ＭＦＢ計算モデルＢ２は、上記計算モデルＡ２と同様に、検出される筒内圧Ｐｃとは相違するとともに機関１０の運転状態を表し且つ点火時期ＳＡを含む運転パラメータ（燃焼状態に影響を及ぼす運転状態量）として、前回の点火時期ＳＡ（ｋ−１）、今回の推定負荷ＫＬｓ＝ＫＬｓ（ｋ）、現時点の機関回転速度ＮＥ＝ＮＥ（ｋ）、前回のＶＶＴ進角量ＶＶＴ（ｋ−１）及び今回の燃料噴射量ＴＡＵ＝ＴＡＵ（ｋ）を入力するようになっている。点火時期ＳＡ（ｋ−１）は、点火時期データ遅延手段Ａ３と同一の手段である点火時期データ遅延手段Ｂ３から取得される。今回の推定負荷ＫＬｓ（ｋ）は上記推定負荷算出手段Ａ４から取得される。
【０１７３】
第１ＭＦＢ計算モデルＢ２は、次に到来しようとしている燃焼行程（今回の燃焼行程）が開始する直前の計算タイミング（例えば、特定気筒のクランク角が特定気筒の圧縮上死点前５４０°になるタイミング）にて、上記入力した運転パラメータを燃焼状態モデルに適用することにより、今回の燃焼行程中の特定タイミングであるＡＴＤＣ８°における燃焼割合ＭＦＢ８（ｋ）（即ち、計算燃焼割合ＭＦＢ８cal（ｋ））を予測（算出）するようになっている。
【０１７４】
予測燃焼状態量補正手段Ｂ４は、予測燃焼状態量である計算燃焼割合ＭＦＢ８cal（ｋ）をモデル誤差量GosaＭＤＬ（補正量）によって補正することにより補正後予測燃焼状態量である補正後燃焼割合ＭＦＢ８mfd（ｋ）を「８°仮定燃焼割合ＭＦＢ８ａｓ」として取得するようになっている。より具体的に述べると、予測燃焼状態量補正手段Ｂ４は、計算燃焼割合ＭＦＢ８cal（ｋ）にモデル誤差量GosaＭＤＬを加えることにより補正後燃焼割合ＭＦＢ８mfd（ｋ）を取得する。モデル誤差量GosaＭＤＬは後述するモデル誤差量算出手段Ｂ１０から出力される。
【０１７５】
フィードバック制御用偏差算出手段Ｂ５は、上記フィードバック制御用偏差算出手段Ａ７と同一の手段である。即ち、フィードバック制御用偏差算出手段Ｂ５は、目標燃焼割合ＭＦＢ８ｔｇｔから８°仮定燃焼割合ＭＦＢ８ａｓである補正後燃焼割合ＭＦＢ８mfd（ｋ）を減じることによってフィードバック制御用偏差ｄＭＦＢ８（＝ｄＭＦＢ８（ｋ））を算出する。
【０１７６】
フィードバックコントローラＢ６は、上記フィードバックコントローラＡ８と同一の手段である。即ち、フィードバックコントローラＢ６は、フィードバック制御用偏差ｄＭＦＢ８（ｋ）が０になるように点火時期ＳＡ（ｋ）を決定する。換言すると、フィードバック制御用偏差算出手段Ｂ５及びフィードバックコントローラＢ６は、今回の燃焼行程に対する補正後予測燃焼状態量である補正後燃焼割合ＭＦＢ８mfd（ｋ）（８°仮定燃焼割合ＭＦＢ８ａｓ）と所定の目標燃焼状態量である目標燃焼割合ＭＦＢ８ｔｇｔとが一致するように機関１０の点火時期ＳＡ（ｋ）をフィードバック制御（比例・積分制御）する点火時期制御手段を構成している。
【０１７７】
実ＭＦＢ算出手段Ｂ７は、上記実ＭＦＢ算出手段Ａ９と同一の手段である。即ち、実ＭＦＢ算出手段Ｂ７は、前回の燃焼行程中のＡＴＤＣ８°における燃焼割合ＭＦＢ８（ｋ−１）である「実燃焼割合ＭＦＢ８act（ｋ−１）」を、上記（８）式に基いて算出するようになっている。
【０１７８】
運転状態量遅延手段Ｂ８は、機関１０の運転状態を表し且つ点火時期ＳＡを含む運転パラメータ（燃焼状態に影響を及ぼす運転状態量）として、今回の燃焼行程に対する実際の機関の負荷ＫＬ（ｋ）、今回の燃焼行程に対する現時点の機関回転速度ＮＥ（ｋ）、今回の燃焼行程に対するＶＶＴ進角量ＶＶＴ（ｋ）及び今回の燃焼行程に対する燃料噴射量ＴＡＵ（ｋ）を入力するようになっている。運転状態量遅延手段Ｂ８は、これらのデータをＲＡＭ７３内に格納し、格納したデータの中から前回の燃焼行程に対する機関の実際の負荷ＫＬ（ｋ−１）、前回の燃焼行程時における機関回転速度ＮＥ（ｋ−１）、前回の燃焼行程に対するＶＶＴ進角量ＶＶＴ（ｋ−１）及び前回の燃焼行程に対する燃料噴射量ＴＡＵ（ｋ−１）を出力するようになっている。
【０１７９】
第２ＭＦＢ計算モデルＢ９は、上記ＭＦＢ計算モデルＡ２及び上記第１ＭＦＢ計算モデルＢ２が備える燃焼状態モデルと同一の燃焼状態モデル（即ち、Ｗｉｅｂｅ関数）を備えている。第２ＭＦＢ計算モデルＢ９は、点火時期データ遅延手段Ｂ３から出力される点火時期ＳＡ（ｋ−１）を入力するとともに、運転状態量遅延手段Ｂ８から出力される運転パラメータ（ＫＬ（ｋ−１）、ＮＥ（ｋ−１）、ＶＶＴ（ｋ−１）及びＴＡＵ（ｋ−１））を入力するようになっている。
【０１８０】
更に、第２ＭＦＢ計算モデルＢ９は、前記入力した運転パラメータ（ＫＬ（ｋ−１）、ＮＥ（ｋ−１）、ＶＶＴ（ｋ−１）及びＴＡＵ（ｋ−１））を前記燃焼状態モデルに適用することにより、前回の燃焼行程中の所定タイミングであるＡＴＤＣ８°における燃焼割合ＭＦＢ８（ｋ−１）（即ち、計算燃焼割合ＭＦＢ８cal（ｋ−１））を算出するようになっている。
【０１８１】
モデル誤差量算出手段Ｂ１０は、実燃焼割合ＭＦＢ８act（ｋ−１）から計算燃焼割合ＭＦＢ８cal（ｋ−１）を減じることによりモデル誤差量GosaＭＤＬを算出するようになっている。
【０１８２】
以上の各手段により、第２変形例は、モデル誤差量GosaＭＤＬを、実燃焼割合ＭＦＢ８act（ｋ−１）から計算燃焼割合ＭＦＢ８cal（ｋ−１）を減じることにより取得する。この実燃焼割合ＭＦＢ８act（ｋ−１）と計算燃焼割合ＭＦＢ８cal（ｋ−１）とは、互いに同じ点火時期ＳＡ（ｋ−１）、互いに同じエンジン回転速度ＮＥ（ｋ−１）、互いに同じＶＶＴ進角量ＶＶＴ（ｋ−１）及び互いに同じ負荷ＫＬ（ｋ−１）によりもたらされた値である。しかも、計算燃焼割合ＭＦＢ８cal（ｋ−１）は、燃焼状態モデルに基づいて算出された値に何らの補正も加えられていない値である。
【０１８３】
従って、モデル誤差量GosaＭＤＬは、燃焼状態モデル（及び推定負荷算出手段Ａ４）が有するモデル誤差を直接的に反映した値となる。従って、モデル誤差量GosaＭＤＬに基づいて「今回の燃焼行程に対して予測された計算燃焼割合ＭＦＢ８cal（ｋ）を補正する」ことによって、「８°仮定燃焼割合ＭＦＢ８ａｓを求める第２変形例」は、より直接的に燃焼状態モデルが有するモデル誤差を補償することができる。その結果、点火時期制御に使用される８°仮定燃焼割合ＭＦＢ８ａｓである補正後燃焼割合ＭＦＢ８mfd（ｋ）が迅速且つより精度良く推定されるので、機関の点火時期をより適正値に近づけることができる。
【０１８４】
なお、上記第２変形例においても、全燃焼対応期間を求める際に使用する燃焼割合ＭＦＢθの各値（第１ＭＦＢ計算モデルＢ２が計算する計算燃焼割合ＭＦＢθcal（ｋ））をモデル誤差量GosaＭＤＬによって補正してもよい。
【０１８５】
以上、説明したように、本発明による内燃機関の制御装置の実施形態及び変形例によれば、燃焼が不安定にならないようにしながら、且つ、要求トルクを機関１０に発生させながら、混合気を限界にまで希薄化することができる。また、今回の燃焼に対する負荷を推定負荷ＫＬｓとして推定し、その推定負荷ＫＬｓに応じて８°仮定燃焼割合ＭＦＢ８ａｓを求め、その８°仮定燃焼割合ＭＦＢ８ａｓが目標燃焼割合ＭＦＢ８ｔｇｔに一致するように点火時期を制御している。従って、空燃比切換え時のショックの大きさを小さくすること等の上述した利点が得られる。
【０１８６】
なお、本発明は上記実施形態及び変形例に限定されることはなく、本発明の範囲内において種々の変形例を採用することができる。例えば、検出された筒内圧Ｐｃに基いて特定気筒において発生した燃焼の不安定度合いを示す燃焼状態指標値として、「図示トルク」を取得してもよい。この場合、図示トルクは、下記（９）式に従って計算され得る。（９）式において、Ｐｃｎ及びＶｎは、それぞれ第ｎ気筒の筒内圧及び燃焼室容積である。７２０°クランク角毎のＳＴＱ（ｍ）が図示トルクとして得られる。即ち、（９）式によれば、微小クランク角毎の筒内圧とその間の燃焼室容積変化との積を１サイクル分積分した値（図示仕事に相当する値）に基いて図示トルクが算出される。
【数９】
2010007607.tif 000011
【０１８７】
また、点火時期ＳＡ（ｋ）を下記（１０）式に記載した点火時期学習モデルに基いて算出してもよい。この場合、点火時期学習モデルを、仮定燃焼割合ＭＦＢ８ａｓと目標燃焼割合ＭＦＢ８ｔｇｔとの差に基いて決定される「点火時期補正量ΔＳＡ」が小さくなるように、逐次最小二乗法（ＲＬＳ）を用いて修正する（即ち、係数θ０〜θ３を修正・学習する）ように構成されていてもよい。（１０）式において、値ｐ，ｑ，ｓは適合定数である。
【数１０】
2010007607.tif 000012
【０１８８】
また、上記実施形態及び変形例においては、ＶＶＴ進角量を求め、ＶＶＴ進角量に応じて吸気弁開弁時期ＩＯを変更していたが、ＶＶＴ進角量に応じたバルブオーバーラップ期間（既燃ガス量）が得られるように吸気弁開弁時期ＩＯ及び排気弁閉弁時期ＥＣを変更してもよく、排気弁閉弁時期ＥＣのみを変更してもよい。
【図面の簡単な説明】
【０１８９】
【図１】本発明の実施形態に係る制御装置を適用した内燃機関の概略図である。
【図２】本発明の実施形態に係る制御装置による制御タイミングを説明するためのタイムチャートである。
【図３】点火時期と８°燃焼割合と機関の発生トルクとの関係を示したグラフである。
【図４】膨張行程（燃焼行程）における燃焼割合のクランク角度に対する変化の様子を示したグラフである。
【図５】点火時期を変化させた場合における、ＣＯ２排出量、ＨＣ排出量、全燃焼対応期間及び実質燃焼期間の、ＶＶＴ進角量に対する変化の様子を示したグラフである。
【図６】図６の（Ａ）は実質燃焼期間に対するＨＣの排出量を点火時期別に示したグラフであり、図６の（Ｂ）は全燃焼対応期間に対するＨＣの排出量を点火時期別に示したグラフである。
【図７】本発明の実施形態に係る制御装置の作動の概略を示したフローチャートである。
【図８】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図９】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１０】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１１】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１２】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１３】図１に示した電気制御装置のＣＰＵが実行するルーチンを示したフローチャートである。
【図１４】図１４の（Ａ）は点火時期及びＶＶＴ進角量を固定にした制御装置において空燃比を変化させた場合の燃焼割合の変化を示したグラフであり、図１４の（Ｂ）は点火時期及びＶＶＴ進角量を固定にした制御装置において空燃比を変化させた場合の筒内圧の変化を示したグラフであり、図１４の（Ｃ）は本発明の実施形態に係る制御装置において空燃比を変化させた場合の燃焼割合の変化を示したグラフであり、図１４の（Ｄ）は本発明の実施形態に係る制御装置において空燃比を変化させた場合の筒内圧の変化を示したグラフである。
【図１５】本発明の実施形態に係る制御装置と点火時期及びＶＶＴ進角量を固定にした制御装置とにおいて、空燃比を変化させた場合の各値を示すグラフである。
【図１６】点火時期を変更した場合における実際の燃焼割合のクランク角に対する変化を示したグラフである。
【図１７】Ｗｉｅｂｅ関数におけるパラメータαｉを変化させ、他のパラメータｃ、ｄ、及びαｂを一定値としたときの変数ｘに対するｙの変化を示したグラフである。
【図１８】ＶＶＴ進角量を変更した場合における実際の燃焼割合のクランク角に対する変化を示したグラフである。
【図１９】Ｗｉｅｂｅ関数におけるパラメータαｂを変化させ、他のパラメータｃ、ｄ、及びαｉを一定値としたときの変数ｘに対するｙの変化を示したグラフである。
【図２０】本発明の第１変形例の機能ブロック図である。
【図２１】本発明の第２変形例の機能ブロック図である。
【符号の説明】
【０１９０】
１０…多気筒内燃機関、２０…シリンダブロック部、２５…燃焼室、３１…吸気ポート、３２…吸気弁、３３…吸気弁制御装置、３４…排気ポート、３５…排気弁、３６…エキゾーストカムシャフト、３７…点火プラグ、３８…イグナイタ、３９…インジェクタ、４３…スロットル弁、４３ａ…スロットル弁アクチュエータ、６３…カムポジションセンサ、６４…クランクポジションセンサ、６５…筒内圧センサ、６９…アクセル開度センサ、７０…電気制御装置、７１…ＣＰＵ。
【図１】
2010007607.tif 000013
【図２】
2010007607.tif 000014
【図３】
2010007607.tif 000015
【図４】
2010007607.tif 000016
【図５】
2010007607.tif 000017
【図６】
2010007607.tif 000018
【図７】
2010007607.tif 000019
【図８】
2010007607.tif 000020
【図９】
2010007607.tif 000021
【図１０】
2010007607.tif 000022
【図１１】
2010007607.tif 000023
【図１２】
2010007607.tif 000024
【図１３】
2010007607.tif 000025
【図１４】
2010007607.tif 000026
【図１５】
2010007607.tif 000027
【図１６】
2010007607.tif 000028
【図１７】
2010007607.tif 000029
【図１８】
2010007607.tif 000030
【図１９】
2010007607.tif 000031
【図２０】
2010007607.tif 000032
【図２１】
2010007607.tif 000033