(57)【要約】【課題】  筒内噴射式内燃機関にノッキングが発生したとき、その発生原因が何であれ低オクタン価の燃料を使用したことに因るとみなし、トルクの減少量を小さくしながらノッキング回避制御を行う。【解決手段】  本発明の実施形態に係る筒内噴射式内燃機関１０は、圧縮工程内に燃料噴射を行う、ノッキングセンサ６４及び制御装置７０を含む自動車用エンジンである。制御装置７０は、オクタン価の異なる燃料を使用したときの、それぞれの燃料に適した噴射時期及び点火時期のマッピング情報を保持し、ノッキングが発生したとき、オクタン価の低い燃料を使用したときのマッピング情報を参照して噴射時期及び点火時期を設定する。【選択図】図１
2014105662.tif 000002
【特許請求の範囲】
【請求項１】
筒内に燃料噴射して形成された混合気を点火栓からの火花により点火する筒内噴射火花点火式内燃機関に適用される機関制御装置であって、
ノッキングの発生を検知するノッキング検知部と、
第１のオクタン価の燃料に対して予め定められた第１噴射時期及び第１点火時期にて前記燃料噴射及び前記点火をそれぞれ行い、且つ、前記ノッキング検知部により前記ノッキングの発生が検知されたとき前記第１のオクタン価よりも小さい第２のオクタン価の燃料に対して予め定められた第２噴射時期及び第２点火時期のそれぞれに基いて定まるノック抑制噴射時期及びノック抑制点火時期にて前記燃料噴射及び前記点火をそれぞれ行う制御部と、
を備える機関制御装置。
【請求項２】
請求項１に記載の機関制御装置において、
前記制御部は、
前記第１噴射時期と前記第２噴射時期との間の噴射時期であって前記第１のオクタン価と前記第２のオクタン価との間の特定オクタン価の燃料に対する噴射時期を同第１噴射時期と同第２噴射時期とに基づいて算出するとともに同算出された噴射時期を前記ノック抑制噴射時期として設定し、
前記第１点火時期と前記第２点火時期との間の点火時期であって前記特定オクタン価の燃料に対する点火時期を同第１点火時期と同第２点火時期とに基づいて算出するとともに同算出された点火時期を前記ノック抑制点火時期として設定する、
ように構成された機関制御装置。
【請求項３】
請求項２に記載の機関制御装置において、
前記制御部は、
前記ノック抑制噴射時期を、前記第１噴射時期と前記第２噴射時期とをオクタン価に関して直線補間することにより取得し、
前記ノック抑制点火時期を、前記第１点火時期と前記第２点火時期とをオクタン価に関して直線補間することにより取得する、
ように構成された機関制御装置。
【請求項４】
請求項１に記載の機関制御装置において、
前記制御部は、
前記第２噴射時期を前記ノック抑制噴射時期として設定し、
前記第２点火時期を前記ノック抑制点火時期として設定する、
ように構成された機関制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は筒内噴射・火花点火式内燃機関に適用され、ノッキングを抑制するために前記機関の噴射時期及び点火時期を制御する機関制御装置に関する。
【背景技術】
【０００２】
火花点火式内燃機関の点火時期は、その機関が「燃料を筒内に直接噴射する筒内噴射式」であるか「燃料を吸気ポート内に噴射するポート噴射式」であるかに拘わらず、一般に、機関の発生トルクが最大となる時期に設定される。機関の発生トルクが最大となる点火時期は、「最大トルク点火位置」又は「ＭＢＴ」（Ｍｉｎｉｍｕｍ  ａｄｖａｎｃｅ  ｆｏｒ  Ｂｅｓｔ  Ｔｏｒｑｕｅ）とも称呼される。一般に、ＭＢＴは「機関の回転速度及び負荷により定まる運転状態」のそれぞれに対して一つに定まるので、実際の点火時期とＭＢＴとの偏差が大きくなるに従って、機関発生トルクは減少する。
【０００３】
一方、特定の運転状態においてＭＢＴにて点火を行うと、燃料のオクタン価が十分に高くない場合にはノッキングが生じる場合がある。ノッキングは機関の劣化を招く虞があるので、従来の制御装置はノッキングが検知されたときには点火時期を遅角し、以って、ノッキングの発生を回避している。ところが、この点火時期の遅角により機関発生トルクが低下する。そこで、筒内噴射火花点火式機関に適用される従来の制御装置の一つ（以下、「従来装置」とも称呼する。）は、ノッキング発生時に点火時期のみでなく噴射時期も併せて変更することにより、機関発生トルクの低下量を小さくしながらノッキングの発生を回避している（例えば、特許文献１を参照。）。
【０００４】
より具体的には、上記従来装置は、燃料の気化により吸気温度を低下させて吸気の充填効率を向上することを目的として、吸気行程において燃料を筒内に噴射している。一方、上記従来装置は、ノッキングが発生すると、圧縮行程の前半において燃料を筒内に噴射するように噴射時期を遅角するとともに点火時期を進角し、ノッキングの発生を回避しながらトルク低下が大きくなることを回避している。上記公報には、噴射時期を圧縮行程前半となるように遅角したときに点火時期を進角することができるのは、圧縮行程前半の燃料噴射によって燃料の混合状態が悪化するのでノッキングが発生し難くなるからである、と記載されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−３３９８４８号公報
【発明の概要】
【０００６】
ところで、吸気行程中の燃料噴射は、燃料の気化潜熱を吸入空気の冷却に用い、それによって吸入空気量を増大させて機関発生トルクの向上を図ることができるが、圧縮行程中の燃料噴射に比べて熱効率の低下をもたらす。換言すると、圧縮行程中における噴射時期と、点火時期と、を適切に設定することができれば、燃料の気化潜熱をノッキング回避のために用いることができるので、点火時期をＭＢＴに近い時期に設定することができ、その結果、機関の熱効率が向上する。上記従来装置は、係る点（圧縮行程中の噴射時期と、点火時期と、の適切化）について全く考慮していない。
【０００７】
本発明の目的の一つは、筒内に（直接）燃料噴射して形成された混合気を点火栓からの火花により点火する筒内噴射火花点火式内燃機関に適用され、圧縮行程中の噴射時期と、点火時期と、を適切な時期に設定することにより、機関発生トルクが大きく低下しないようにしながらノッキングを回避することが可能な機関制御装置を提供することにある。なお、本明細書において、本発明に係る機関制御装置は「本発明装置」とも称呼され、本発明装置がノッキング回避のために実行する「噴射時期及び点火時期の制御」は、「ノッキング回避制御」とも称呼される。
【０００８】
ここで、本発明装置によるノッキング回避制御の基本的な考え方について述べる。本発明装置は、ノッキング検出時に、点火時期のみならず噴射時期も変更する。圧縮行程中の噴射時期が遅角側に変更されると、噴射時期から点火時期までの時間が短くなるから、シリンダ内壁から混合気へと熱が伝えられている時間が短くなる。その結果、噴射された燃料の気化潜熱によって低下した混合気温度が、混合気が点火されるまで低い温度に維持され得る。よって、噴射時期が遅角されない場合と比較してノッキングが起こり難くなる。
【０００９】
一方、混合気が圧縮されてから燃焼するまでの間、混合気中の燃料は、高温高圧の環境に晒されることによって、その一部が分子量の低い物質に分解し、より自着火しやすい（即ち、ノッキングが起こりやすい）状態になる。これに対し、噴射時期が遅角側に変更されると、燃料が燃焼を開始するまでに高温高圧の環境に晒されている時間が短くなるので、燃料の分解が抑えられる。よって、ノッキングが起こり難くなる。
【００１０】
以上の理由により、圧縮行程中における噴射時期をノッキングが発生した場合に更に遅角することによって点火時期を大きく遅角しなくても、ノッキングの発生を抑制することが可能となる。この結果、ノッキング回避制御中の点火時期とＭＢＴとの偏差を小さくできるので、ノッキング回避制御中の機関発生トルクの減少量を小さくすることができる。以上が、本発明の採用するノッキング回避制御の基本的考え方である。
【００１１】
ところで、ノッキングが発生するか否かは燃料のオクタン価に強く依存する。ノッキングが発生すると機関発生トルクが低下し熱効率も低下する。従って、燃料のオクタン価毎に、ノッキングを回避し且つ機関の熱効率が最大となる「噴射時期及び点火時期」が存在する。一方、ある運転状態においてノッキングが発生するか否かは、燃料のオクタン価のみでは決まらず、「シリンダ内壁、吸気弁及び排気弁等」へのデポジットの付着量、吸気温度、並びに、冷却水温度等にも依存する。しかし、ノッキングがどのような発生要因により生じていても、そのノッキングは燃料のオクタン価が想定しているオクタン価よりも低下したことにより生じていると見做すことができる。
【００１２】
このような知見に基いてなされた本発明装置は、ノッキングの発生を検知するノッキング検知部と、噴射時期及び点火時期を制御する制御部と、を備える。
【００１３】
より具体的に述べると、前記制御部は、
（１）第１のオクタン価の燃料に対して適合された「第１噴射時期及び第１点火時期」にて「燃料噴射及び点火」をそれぞれ行い、且つ、
（２）前記ノッキング検知部により前記ノッキングの発生が検知されたとき「前記第１のオクタン価よりも小さい第２のオクタン価」の燃料に対して予め適合された「第２噴射時期及び第２点火時期」、のそれぞれに基いて定まる「ノック抑制噴射時期及びノック抑制点火時期」にて「燃料噴射及び点火」をそれぞれ行う。
【００１４】
これによれば、第１のオクタン価の燃料に対して適合された（例えば、ノッキングが発生せず熱効率が最大となるように予め定められた）「第１噴射時期及び第１点火時期」にて「燃料噴射及び点火」を行なっている場合にノッキングが発生すると、「ノック抑制噴射時期及びノック抑制点火時期」にて「燃料噴射及び点火」がそれぞれ行なわれる。
【００１５】
「ノック抑制噴射時期及びノック抑制点火時期」は、第１のオクタン価よりも低いオクタン価（第２のオクタン価）の燃料に対して適合された（例えば、ノッキングが発生せず熱効率が最大となるように予め定められた）「第２噴射時期及び第２点火時期」のそれぞれに基いて定められる。
【００１６】
例えば、「ノック抑制噴射時期及びノック抑制点火時期」は、「第２噴射時期及び第２点火時期」のそれぞれと一致していてもよい。更に、ノック抑制噴射時期は、「第１オクタン価と第２オクタン価との間の特定オクタン価」に対する噴射時期であって第１噴射時期と第２噴射時期とに基いて求められる噴射時期であり、ノック抑制点火時期はその特定オクタン価に対する点火時期であって第１点火時期と第２点火時期とに基いて求められる点火時期であってもよい。更に、この場合、ノック抑制噴射時期は、第１噴射時期と第２噴射時期とをオクタン価に関して直線補間することにより求められ、ノック抑制点火時期は、第１点火時期と第２点火時期とをオクタン価に関して直線補間することにより求められてもよい。
【００１７】
このように、本発明装置によれば、ノッキングが発生したとき、その時点で想定されていたオクタン価（第１オクタン価）よりも低いオクタン価（第２オクタン価）の燃料に対して適合されている「第２噴射時期及び第２点火時期」に基づいて定まる「ノック抑制噴射時期及びノック抑制点火時期」にて「燃料噴射及び点火」がそれぞれ行なわれる。その結果、ノッキング発生時における噴射時期及び点火時期を「熱効率を高い値に維持し得る適切な値」に近づけることができるので、ノッキングの発生を回避しながらトルクの低下量も小さくすることができる。
【００１８】
前記制御部は、
前記第１噴射時期と前記第２噴射時期との間の噴射時期であって前記第１のオクタン価と前記第２のオクタン価との間の特定オクタン価の燃料に対する噴射時期を同第１噴射時期と同第２噴射時期とに基づいて算出するとともに同算出された噴射時期を前記ノック抑制噴射時期として設定し、
前記第１点火時期と前記第２点火時期との間の点火時期であって前記特定オクタン価の燃料に対する点火時期を同第１点火時期と同第２点火時期とに基づいて算出するとともに同算出された点火時期を前記ノック抑制点火時期として設定する、
ように構成され得る。
【００１９】
これによれば、第１のオクタン価と第２のオクタン価との差が大きい場合であっても、ノッキング発生時の噴射時期及び点火時期を適切に設定することができる。換言すれば、第１のオクタン価と第２のオクタン価との差を小さくすると多くの実験を必要として開発工数が膨大となるが、上記構成は係る問題を回避することができる。
【００２０】
この場合、前記制御部は、
前記ノック抑制噴射時期を、前記第１噴射時期と前記第２噴射時期とをオクタン価に関して直線補間することにより取得し、
前記ノック抑制点火時期を、前記第１点火時期と前記第２点火時期とをオクタン価に関して直線補間することにより取得する、
ように構成され得る。
【００２１】
特定オクタン価に対して適切な噴射時期は、「第１オクタン価に対する第１噴射時期」と「第２オクタン価に対する第２噴射時期」とをオクタン価に関して直線補間することによって得られる噴射時期と極めて近しいと考えられる。同様に、特定オクタン価に対して適切な点火時期は、「第１オクタン価に対する第１点火時期」と「第２オクタン価に対する第２点火時期」とをオクタン価に関して直線補間することによって得られる点火時期と極めて近しいと考えられる。従って、上記構成によれば、簡単な手法により、適切な「ノック抑制噴射時期及びノック抑制点火時期」を得ることができる。
【００２２】
なお、本発明は、上記筒内噴射火花点火式内燃機関及び上記筒内噴射火花点火式内燃機関を含む車両にも係り、更に、上記筒内噴射火花点火式内燃機関にて使用される方法でもある。
【図面の簡単な説明】
【００２３】
【図１】本発明の各実施形態に係る内燃機関の概略構成図である。
【図２】本発明の第１実施形態においてノック抑制噴射時期及びノック抑制点火時期を段階的に設定する様子を説明するための模式図である。
【図３】本発明の第１実施形態に係るノッキング回避制御の作動を説明するための模式図である。
【図４】本発明の第１実施形態に係るノッキング回避制御の作動を説明するためのフローチャートである。
【図５】本発明の第２実施形態に係るノッキング回避制御の作動を説明するための模式図である。
【図６】本発明の第２実施形態に係るノッキング回避制御の作動を説明するためのフローチャートである。
【発明を実施するための形態】
【００２４】
（第１実施形態）
以下、図面を参照しながら本発明の第１実施形態に係る機関制御装置（以下、「第１装置」とも称呼する。）について説明する。第１装置は、図１に示した内燃機関１０に適用される。機関１０は筒内噴射火花点火式の多気筒（本例において４気筒）内燃機関である。機関１０は、ガソリンを燃料として用いる。なお、図１には特定の１つの気筒のみの構成が示されているが、他の気筒もこれと同じ構成を備えている。
【００２５】
機関１０は、シリンダブロック、シリンダブロックロワケース及びオイルパン等を含むシリンダブロック部２０、並びに、シリンダブロック部２０上に固定されるシリンダヘッド部３０、シリンダブロック部２０に空気を供給するための吸気通路４０、シリンダブロック部２０からの排気ガスを外部に放出するための排気通路５０、及び、制御装置７０を備える。
【００２６】
シリンダブロック部２０は、シリンダ２１、ピストン２２、コンロッド２３及びクランクシャフト２４を備える。ピストン２２はシリンダ２１内で往復動し、このピストン２２の往復動がコンロッド２３を介してクランクシャフト２４に伝達され、これによってクランクシャフト２４が回転する。また、シリンダ２１の内壁面、ピストン２２の上壁面、及び、シリンダヘッド部３０の下壁面によって燃焼室２５が形成されている。
【００２７】
シリンダヘッド部３０は、燃焼室２５に連通する吸気ポート３１、吸気ポート３１を開閉する吸気弁３２、及び、吸気弁３２を駆動する吸気弁駆動機構３２ａを備える。シリンダヘッド部３０は、燃焼室２５に連通する排気ポート３３、排気ポート３３を開閉する排気弁３４、及び、排気弁３４を駆動する排気弁駆動機構３４ａを備える。シリンダヘッド部３０は、点火プラグ３５、及び、点火プラグ３５に与える高電圧を発生する点火コイルを含むイグナイタ３６を備える。シリンダヘッド部３０は、燃料を燃焼室２５内に噴射する燃料噴射弁３７、燃料噴射弁３７に燃料を高圧で供給する蓄圧室３７ａ、及び、蓄圧室３７ａに燃料を圧送する燃料ポンプ３７ｂを備える。吸気弁駆動機構３２ａ及び排気弁駆動機構３４ａは、駆動回路３８に接続されている。なお、吸気弁駆動機構３２ａは、周知のインテークカムシャフトでも良く、排気弁駆動機構３４ａは、周知のエキゾーストカムシャフトでも良い。
【００２８】
吸気通路４０は、吸気ポート３１に接続された吸気枝管４１、吸気枝管４１に接続されたサージタンク４２、及び、サージタンク４２に接続された吸気ダクト４３を備える。吸気ダクト４３には、その上流端から順にエアフィルタ４４及びスロットル弁４８が配置されている。スロットル弁４８は、吸気ダクト４３に回転可能に取り付けられており、スロットル弁駆動用アクチュエータ４８ａによって駆動される。
【００２９】
排気通路５０は、排気ポート３３に接続された排気枝管４９、及び、排気枝管４９に接続された排気管５１を備える。排気管５１には排気ガスを浄化するための三元触媒装置５２が配置されている。
【００３０】
機関１０は、吸気ダクト４３内を流れる空気の流量を検出するエアフローメータ６１、クランクシャフト２４の回転位相（即ち、クランク角度）を検出するクランクポジションセンサ６２、燃焼室２５内の圧力を検出する筒内圧センサ６３、燃焼室２５内のノッキング発生を検知するノッキングセンサ６４、及び、アクセルペダル６５の踏込量を検出するアクセル開度センサ６６を備える。
【００３１】
制御装置７０は、双方向性バスによって互いに接続されたＣＰＵ７１と、ＲＯＭ７２と、ＲＡＭ７３と、バックアップＲＡＭ７４と、及び、Ａ／Ｄ変換器を含むインターフェース７５とを備えるマイクロコンピュータ（ＥＣＵ：Ｅｌｅｃｔｒｏｎｉｃ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）である。制御装置７０は、イグナイタ３６、燃料噴射弁３７、燃料ポンプ３７ａ、駆動回路３８、スロットル弁駆動用アクチュエータ４８ａ、エアフローメータ６１、クランクポジションセンサ６２、筒内圧センサ６３、ノッキングセンサ６４及びアクセル開度センサ６６と信号線で結ばれている。
【００３２】
次に、第１装置が実行するノッキング回避制御について説明する。第１装置は、上述したようにノッキング発生時に点火時期のみでなく噴射時期も併せて変更する。しかし、噴射時期の補正量が多すぎた場合（噴射時期が遅角され過ぎた場合）は燃料噴射から点火までの間の時間が短くなることによって、その燃料がシリンダ内に拡散するための十分な時間が確保されなくなる場合が生じ得る。その結果、混合気が効率的に燃焼せず、発生トルクが減少する虞がある。換言すれば、前述した混合気の温度上昇等の抑制、及び、燃料噴射から点火までの間の燃料拡散時間の確保の両方を考慮して、ノッキング回避制御を行う際の噴射時期及び点火時期が設定される必要がある。
【００３３】
そのため、制御装置７０は、オクタン価の異なる燃料に対して、ノッキングの発生を抑え、且つ、トルクの減少量を小さくすることができる噴射時期ＦＩ及び点火時期ＳＡの組合せに関するデータを保持している。具体的には、制御装置７０は、噴射時期ＦＩ及び点火時期ＳＡについて、通常時に使用する「噴射時期ＦＩ１（第１噴射時期）及び点火時期ＳＡ１（第１点火時期）を規定するデータ」、並びに、ノッキング回避制御において使用する「噴射時期ＦＩ２（第２噴射時期）及び点火時期ＳＡ２（第２点火時期）を規定するデータ」をＲＯＭ７２内に保持している。
【００３４】
噴射時期ＦＩ１及び点火時期ＳＡ１は、リサーチオクタン価（以下、「ＲＯＮ」とも称呼する。）が「第１オクタン価（本例において、９５）」である燃料が使用されたとき、機関１０のノッキングの発生を抑え且つ高いトルクが得られる噴射時期ＦＩ及び点火時期ＳＡのそれぞれである。換言すると、噴射時期ＦＩ１及び点火時期ＳＡ１は、ＲＯＮが第１オクタン価である燃料が使用されたときに機関１０の熱効率が最大となるように予め実験により適合されている。第１オクタン価は一般に市場において流通している燃料のオクタン価のうちの最も高い値の近傍値に設定されている。
【００３５】
噴射時期ＦＩ２及び点火時期ＳＡ２は、ＲＯＮが「第２オクタン価（本例において、８５）」である燃料が使用されたとき、機関１０のノッキングの発生を抑え且つ高いトルクが得られる噴射時期ＦＩ及び点火時期ＳＡのそれぞれである。換言すると、噴射時期ＦＩ２及び点火時期ＳＡ２は、ＲＯＮが第２オクタン価である燃料が使用されたときに機関１０の熱効率が最大となるように予め実験により適合されている。第２オクタン価は第１オクタン価よりも小さく、一般に市場において流通している燃料のオクタン価のうちの最も低い値よりも低い値に設定されている。
【００３６】
より具体的には、制御装置７０は、ＲＯＮ＝９５及びＲＯＮ＝８５のそれぞれについて、機関１０の回転速度及び負荷の組合せにより定まる噴射時期ＦＩ（ＦＩ１及びＦＩ２）及び点火時期ＳＡ（ＳＡ１及びＳＡ２）のマッピング情報（ルックアップテーブル、マップ）を保持している。
【００３７】
ＲＯＮの低い燃料が使用された場合、ノッキングが起こりやすくなるため、一般に噴射時期ＦＩ及び点火時期ＳＡのそれぞれはＲＯＮが高い燃料が使用された場合と比較して遅角側の値となる。即ち、何れの回転速度及び負荷の組合せにおいても、噴射時期ＦＩは、ＦＩ２がＦＩ１よりも遅角側に設定され、点火時期ＳＡは、ＳＡ２がＳＡ１よりも遅角側に設定される。
【００３８】
制御装置７０は、ノッキングセンサ６４から受けた信号に基づいて機関１０におけるノッキング発生の有無を検知する。制御装置７０は、ノッキング発生を検出したときノッキング回避制御、即ち、噴射時期ＦＩ及び点火時期ＳＡの補正によってノッキングの発生を抑制しようとする。この際、制御装置７０は、「噴射時期ＦＩをＦＩ１からＦＩ２に直ちに変更し、且つ、点火時期ＳＡをＳＡ１からＳＡ２に直ちに変更する」のではなく、ノッキング発生が抑制されたか否かを確認しながら、噴射時期ＦＩ及び点火時期ＳＡを段階的に設定する。
【００３９】
噴射時期ＦＩ及び点火時期ＳＡを段階的に設定する様子を図２に示す。具体的には、制御装置７０は、ノッキングの発生を検知したとき、第１オクタン価（ＲＯＮ＝９５）よりも小さく、且つ、第２オクタン価（ＲＯＮ＝８５）よりも大きい、特定オクタン価（ＲＯＮ＝ａ）を選択し、「そのオクタン価（ＲＯＮ＝ａ）の燃料を使用した場合に機関１０の熱効率が最大となる噴射時期ＦＩａ及び点火時期ＳＡａ」を「噴射時期ＦＩ（ノック抑制噴射時期）及び点火時期ＳＡ（ノック抑制点火時期）」としてそれぞれ設定する。
【００４０】
制御装置７０は、ＲＯＮ＝ａの場合の噴射時期ＦＩａを、第１噴射時期ＦＩ１と第２噴射時期ＦＩ２とをオクタン価に関して直線補間することにより算出する。この算出方法を説明するために、ここでは便宜的に「補間係数α」を用いるが、図４のフローチャートを用いて後述する制御装置７０によって実行される処理では補間係数αが実際に算出されることはない。
【００４１】
具体的には、制御装置７０は、ＲＯＮ＝ａに係る補間係数αを求める。補間係数αは、ＲＯＮ＝ａとＲＯＮ＝９５（第１オクタン価）の差分（＝９５−ａ）を、ＲＯＮ＝９５とＲＯＮ＝８５（第２オクタン価）の差分（＝９５−８５）で除することにより算出される。即ち、補間係数αは、（９５−ａ）／（９５−８５）によって求められる。
【００４２】
制御装置７０は、更に、補間係数αに対応する噴射時期ＦＩａを算出する。噴射時期ＦＩａと補間係数αの関係は、α＝（ＦＩ１−ＦＩａ）／（ＦＩ１−ＦＩ２）である。即ち、噴射時期ＦＩａは、ＦＩａ＝ＦＩ１−α（ＦＩ１−ＦＩ２）によって求められる。
【００４３】
制御装置７０は、同様に、ＲＯＮ＝ａの場合の点火時期ＳＡａを、第１点火時期ＳＡ１と第２点火時期ＳＡ２とをオクタン価に関して直線補間することにより算出する。具体的には、制御装置７０は、上記の補間係数αに対応する点火時期ＳＡａを、ＳＡａ＝ＳＡ１−α（ＳＡ１−ＳＡ２）より算出する。
【００４４】
制御装置７０は、「噴射時期ＦＩａ及び点火時期ＳＡａ」を「噴射時期ＦＩ及び点火時期ＳＡ」としてそれぞれ設定する。その結果ノッキングの発生が抑制されていれば、制御装置７０は、ノッキング回避制御を一旦終了する。
【００４５】
一方、ノッキングの発生が継続していた場合、制御装置７０は、ノッキング回避制御を継続する。具体的には、制御装置７０は、ＲＯＮ＝ａよりも小さく、且つ、第２オクタン価（ＲＯＮ＝８５）よりも大きい、新たな特定オクタン価（ＲＯＮ＝ｂ）を選択し、そのオクタン価（ＲＯＮ＝ｂ）の燃料を使用した場合に機関１０の熱効率が最大となる噴射時期ＦＩｂ及び点火時期ＳＡｂを、ＲＯＮ＝ａの場合（噴射時期ＦＩａ及び点火時期ＳＡａ）と同様に算出する。
【００４６】
「噴射時期ＦＩｂ及び点火時期ＳＡｂ」が「噴射時期ＦＩ及び点火時期ＳＡ」としてそれぞれ設定されることによってノッキングの発生が抑制されていれば、制御装置７０は、ノッキング回避制御を一旦終了する。一方、ノッキングの発生が継続していた場合、制御装置７０は、「第２オクタン価の燃料に適合された噴射時期ＦＩ２及び点火時期ＳＡ２」を「噴射時期ＦＩ及び点火時期ＳＡ」としてそれぞれ設定することによってノッキング回避制御を継続する。
【００４７】
なお、制御装置７０は、上述した直線補間の他に、図２（ａ）の破線に示すように、噴射時期ＦＩ１及び噴射時期ＦＩ２並びに関数ｆ１に基づいて噴射時期ＦＩａ及び噴射時期ＦＩｂを算出してもよい。或いは、図２（ａ）の一点鎖線、同図（ｂ）の破線及び一点鎖線に示すように、制御装置７０は、関数ｆ２乃至関数ｆ４に基づいて、噴射時期ＦＩａ及び噴射時期ＦＩｂ、並びに、点火時期ＳＡａ及び点火時期ＳＡｂを算出してもよい。
【００４８】
以上説明したように、制御装置７０は、ＲＯＭ７２内にマッピング情報として保持している噴射時期ＦＩ（ＦＩ１及びＦＩ２）及び点火時期ＳＡ（ＳＡ１及びＳＡ２）に基づいて、オクタン価が第１オクタン価と第２オクタン価との間にある燃料（本例では、ＲＯＮ＝ａ及びＲＯＮ＝ｂ）を用いた場合に機関１０の熱効率が最大となる噴射時期ＦＩ及び点火時期ＳＡ（即ち、機関１０のノッキングの発生を抑え且つ高いトルクが得られる噴射時期ＦＩ及び点火時期ＳＡ）を算出できるようになっている。
【００４９】
しかしながら、制御装置７０は、最小分解能の関係から噴射時期ＦＩ及び点火時期ＳＡを任意の値に設定することはできないため、ＲＯＮ＝ａ及びＲＯＮ＝ｂ等の特定オクタン価を無数には設定できない。具体的には、制御装置７０は、噴射時期ＦＩを最小設定量ＦＩｍｉｎ毎にのみ設定可能であり、点火時期ＳＡを最小設定量ＳＡｍｉｎ毎にのみ設定可能である。機関１０では、制御装置７０は、噴射時期ＦＩをクランク角度（クランクシャフト２４の回転位相）１°毎に設定可能であり（即ち、最小設定量ＦＩｍｉｎ＝１°）、点火時期ＳＡをクランク角度０．５°毎に設定可能である（即ち、最小設定量ＳＡｍｉｎ＝０．５°）。
【００５０】
換言すれば、制御装置７０は、噴射時期ＦＩをＦＩ１からＦＩ２へと段階的に設定するにあたって、最小設定量ＦＩｍｉｎ単位で遅角させることが可能である。同様に、制御装置７０は、点火時期ＳＡをＳＡ１からＳＡ２へと段階的に設定するにあたって、最小設定量ＳＡｍｉｎ単位で遅角させることが可能である。
【００５１】
そして、制御装置７０は、噴射時期ＦＩをＦＩ１からＦＩ２へと段階的に設定する際に、最大何回の設定が可能であるかを示す噴射時期ステップ数ＦＩｓｔｐ（＝（ＦＩ２−ＦＩ１）／ＦＩｍｉｎ））、及び、点火時期ＳＡをＳＡ１からＳＡ２へと段階的に設定する際に、最大何回の設定が可能であるかを示す点火時期ステップ数ＳＡｓｔｐ（＝（ＳＡ２−ＳＡ１）／ＳＡｍｉｎ）を算出することが可能である。
【００５２】
制御装置７０は、噴射時期ステップ数ＦＩｓｔｐ及び点火時期ステップ数ＳＡｓｔｐを比較して、ステップ数が少ない方（噴射時期及び点火時期のいずれか）を最小設定単位で段階的に設定し、他方をそれに追随させる。
【００５３】
具体的な作動を、図３の例を参照しながら説明する。点火時期ｓ１乃至ｓ５は、それぞれＲＯＮ＝ｒ１乃至ｒ５の燃料が使用されたときに設定されるべき点火時期ＳＡである。噴射時期ｆ１乃至ｆ５は、それぞれＲＯＮ＝ｒ１乃至ｒ５の燃料が使用されたときに設定されるべき噴射時期ＦＩである。
【００５４】
この例においては、点火時期ＳＡは、点火時期の最小設定量ＳＡｍｉｎとの関係から、ＳＡ１からＳＡ２まで変化する間に点火時期ｓ１乃至ｓ５及びＳＡ２（合計６ステップ）を経ることが可能である。一方、噴射時期ＦＩは、噴射時期の最小設定量ＦＩｍｉｎとの関係から、ＦＩ１からＦＩ２まで変化する間に噴射時期ｆ３及びＦＩ２（合計２ステップ）にのみ設定可能である。そのため、制御装置７０は、ステップ数の少ない噴射時期ＦＩを最小設定量単位で段階的に設定することによってノッキング回避制御を行う。
【００５５】
噴射時期ｆ３はＲＯＮ＝ｒ３の燃料が使用されたときに設定されるべき噴射時期ＦＩである。即ち、ＲＯＮ＝ｒ３の燃料が使用されたとき、噴射時期ｆ３及び点火時期ｓ３が、ノッキングを抑制し且つトルク低下を最小限に抑えられる噴射時期ＦＩ及び点火時期ＳＡそれぞれの値である。
【００５６】
機関１０にノッキングが発生していないとき、制御装置７０は、噴射時期ＦＩをＦＩ１に設定し、点火時期ＳＡをＳＡ１に設定する。機関１０にノッキングが発生したとき、制御装置７０は噴射時期ＦＩをＦＩ１からｆ３へと変更する。このとき、噴射時期ｆ３が基準としているオクタン価はＲＯＮ＝ｒ３であり、このＲＯＮに対応する点火時期ＳＡはｓ３である。そこで制御装置７０は点火時期ＳＡをＳＡ１からｓ３へと変更する。この時点でノッキング発生が抑えられていれば、制御装置７０はノッキング回避制御を一旦終了する。
【００５７】
一方、ノッキング発生が継続していた場合、制御装置７０は噴射時期ＦＩをｆ３からＦＩ２へと変更し、点火時期ＳＡをｓ３からＳＡ２へと変更する。以上説明したように、制御装置７０は噴射時期ＦＩ及び点火時期ＳＡのうち、最小設定量によって定まるステップ数が少ない方（図３の例では噴射時期ＦＩ）を最小設定量（図３の例ではＦＩｍｉｎ）毎に遅角させ、それに合わせて他方（本例では点火時期ＳＡ）を遅角させる。
【００５８】
次に、上述したノッキング回避制御に関する制御装置７０の詳細な作動について、図４に示したフローチャートを参照しながら説明する。制御装置７０のＣＰＵ７１（以下、単に「ＣＰＵ」と称呼する。）は、所定のタイミングにて図４のステップ４００から処理を開始し、ステップ４０５に進む。ステップ４０５にてＣＰＵは、ノッキングセンサ６４の検出結果に基づいて、機関１０にノッキングが発生しているか否かを判定する。
【００５９】
ノッキングが発生していない場合、制御装置７０がノッキング回避制御を行う必要はないため、ＣＰＵはステップ４０５にて「Ｎｏ」と判定し、ステップ４９５に進み、本ルーチンを一旦終了する。この場合ＣＰＵは、噴射時期ＦＩをＦＩ１に設定し、且つ、点火時期ＳＡをＳＡ１に設定する。
【００６０】
一方、ノッキングが発生していた場合、ＣＰＵはステップ４０５にて「Ｙｅｓ」と判定し、ステップ４１０に進み、ノッキング回避制御を実行する。ステップ４１０にてＣＰＵは、ノッキング回避制御に必要な各種の情報、具体的には、その時点の機関１０の回転速度及び負荷の組合せにより定まる噴射時期ＦＩ（ＦＩ１及びＦＩ２）及び点火時期ＳＡ（ＳＡ１及びＳＡ２）、並びに、噴射時期の最小設定量ＦＩｍｉｎ及び点火時期の最小設定量ＳＡｍｉｎをＲＯＭ７２から取得する。
【００６１】
次にＣＰＵは、ステップ４１５に進み、噴射時期ＦＩを噴射時期ＦＩ１から噴射時期ＦＩ２へと遅角させる間に、最大何段階（ステップ）の遅角補正が可能であるかを表す噴射時期ステップ数ＦＩｓｔｐを算出する。具体的には、噴射時期ステップ数ＦＩｓｔｐは、噴射時期ＦＩ２と噴射時期ＦＩ１の偏差（＝ＦＩ２−ＦＩ１）を噴射時期の最小設定量ＦＩｍｉｎで除することにより得られる。即ち、ＦＩｓｔｐは、（ＦＩ２−Ｆ１１）／ＦＩｍｉｎにより求められる。
【００６２】
次にＣＰＵは、ステップ４２０に進み、噴射時期ＦＩと同様に、点火時期ＳＡを点火時期ＳＡ１から点火時期ＳＡ２へと遅角させる間に、最大何段階の遅角補正が可能であるかを表す点火時期ステップ数ＳＡｓｔｐを算出する。具体的には、点火時期ステップ数ＳＡｓｔｐは、点火時期ＳＡ２と点火時期ＳＡ１の偏差（＝ＳＡ２−ＳＡ１）を点火時期の最小設定量ＳＡｍｉｎで除することにより得られる。即ち、ＳＡｓｔｐは、（ＳＡ２−ＳＡ１）／ＳＡｍｉｎにより求められる。次いで、ＣＰＵは、ステップ４２５に進み、噴射時期ＦＩ及び点火時期ＳＡの補正回数を記憶するカウンタｃｎｔの値を「１」に設定する。
【００６３】
次にＣＰＵは、ステップ４３０に進み、噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐよりも大きいか否かを判定する。噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐよりも大きければ、ＣＰＵは点火時期ＳＡを点火時期の最小設定量ＳＡｍｉｎ毎に段階的に遅角補正し、それに合わせて（即ち、基準とするオクタン価が点火時期ＳＡと噴射時期ＦＩとで等しくなるように）噴射時期ＦＩを遅角補正する。即ち、この場合、ＣＰＵはステップ４３０にて「Ｙｅｓ」と判定してステップ４３５に進む。
【００６４】
一方、噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐ以下であれば、ＣＰＵは噴射時期ＦＩを噴射時期の最小設定量ＦＩｍｉｎ毎に段階的に遅角補正し、それに合わせて点火時期ＳＡを遅角補正する。即ち、この場合、ＣＰＵはステップ４３０にて「Ｎｏ」と判定してステップ４６０に進む。
【００６５】
ステップ４３５にてＣＰＵは、点火時期ＳＡを最小設定量ＳＡｍｉｎだけ遅角補正する。具体的には、ＣＰＵは、点火時期ＳＡ１に「最小設定量ＳＡｍｉｎに補正回数ｃｎｔを乗じて得られる値」を加えた値を、補正後の点火時期ＳＡとして設定する。即ち、点火時期ＳＡは、ＳＡ１＋ＳＡｍｉｎ＊ｃｎｔによって算出される。或いは、点火時期ＳＡは、ＳＡ２を基準にして、ＳＡ＝ＳＡ２−ＳＡｍｉｎ＊（ＳＡｓｔｐ−ｃｎｔ）によっても算出される。このようにして算出される点火時期ＳＡが、ノック抑制点火時期となる。
【００６６】
次にＣＰＵは、ステップ４４０に進み、噴射時期ＦＩを点火時期ＳＡに合わせて補正する。即ち、ＣＰＵは、点火時期ＳＡが基準としているオクタン価と等しいオクタン価に基づく噴射時期ＦＩを設定する。より具体的に説明すると、「噴射時期の最小設定量ＦＩｍｉｎ」に、「噴射時期のステップ数ＦＩｓｔｐを点火時期のステップ数ＳＡｓｔｐで除して得られる両者の比（即ち、ＦＩｓｔｐ／ＳＡｓｔｐ）」と「点火時期ＳＡの補正回数ｃｎｔ」とを乗じて得られる値を、ＦＩ１に加えることで補正後の噴射時期ＦＩが理論的には得られる。即ち、噴射時期ＦＩは、ＦＩ１＋ＦＩｍｉｎ＊（ＦＩｓｔｐ／ＳＡｓｔｐ）＊ｃｎｔによって算出され得る。
【００６７】
しかし、実際には、ステップ数の比率（即ち、ＦＩｓｔｐ／ＳＡｓｔｐ）が少数部分を含む場合があるため、最小設定量ＦＩｍｉｎと「この比率にカウンタｃｎｔを乗じた値（即ち、（ＦＩｓｔｐ／ＳＡｓｔｐ）＊ｃｎｔ）の少数部分（小数点第１位）を四捨五入して得られる値」とを乗じて得られる値を、ＦＩ１に加えた値を補正後の噴射時期ＦＩとする。即ち、噴射時期ＦＩは、
ＦＩ＝ＦＩ１＋ＦＩｍｉｎ＊［（ＦＩｓｔｐ／ＳＡｓｔｐ）＊ｃｎｔ＋０．５］
によって求められる。なお、ガウス記号（［ｘ］）は、ｘを超えない最大の整数を表すために用いられている。或いは、噴射時期ＦＩは、ＦＩ２を基準にして、
ＦＩ＝ＦＩ２−ＦＩｍｉｎ＊［（ＦＩｓｔｐ／ＳＡｓｔｐ）＊（ＳＡｓｔｐ−ｃｎｔ）＋０．５］
によっても算出される。このようにして算出される噴射時期ＦＩが、ノック抑制噴射時期となる。
【００６８】
このときの補間係数αは、噴射時期ＦＩについて、α＝（ＦＩ１−ＦＩ）／（ＦＩ１−ＦＩ２）であり、点火時期ＳＡについてα＝（ＳＡ１−ＳＡ）／（ＳＡ１−ＳＡ２）である。即ち、ＣＰＵは、補間係数αを介して、噴射時期ＦＩに基づいて点火時期ＳＡを算出することが可能で、逆に、点火時期ＳＡに基づいて噴射時期ＦＩを算出することも可能である。なお、このときのオクタン価（例えば、ａとする。）を、補間係数α＝（９５−ａ）／（９５−８５）を介して算出することが可能である。即ち、このときの噴射時期ＦＩ及び点火時期ＳＡは、このオクタン価ａの燃料を使用した場合に機関の熱効率が最大となる値である。
【００６９】
次にＣＰＵは、ステップ４４５に進み、補正回数ｃｎｔの値に「１」を加える。次いでＣＰＵは、ステップ４５０に進み、ノッキングセンサ６４の検出結果に基づいて、機関１０にノッキングが発生しているか否かを判定する。ノッキングの発生が既に抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ４５０にて「Ｎｏ」と判定し、ステップ４９５に進んで本ルーチンを一旦終了する。
【００７０】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡを更に補正する必要がある。そのため、ＣＰＵはステップ４５０にて「Ｙｅｓ」と判定し、ステップ４５５に進む。
【００７１】
ステップ４５５にてＣＰＵは、これ以上ノッキング回避制御を続けられるか否かを判定する。即ち、噴射時期ＦＩ及び点火時期ＳＡが補正された結果、それぞれ噴射時期ＦＩ２及び点火時期ＳＡ２に等しくなっていた場合、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡをこれ以上補正することができない。そのため、ステップ４５５にてＣＰＵは、「ステップ４４５にて『１』を加算された補正回数のカウンタｃｎｔ」が、点火時期ステップ数ＳＡｓｔｐを超えているか否かを判定する。
【００７２】
補正回数ｃｎｔが点火時期ステップ数ＳＡｓｔｐ以下である場合、ＣＰＵは更に噴射時期ＦＩ及び点火時期ＳＡを補正することができる。そのため、ＣＰＵはステップ４５５にて「Ｎｏ」と判定してステップ４３５に進む。
【００７３】
一方、補正回数ｃｎｔが点火時期ステップ数ＳＡｓｔｐより大きい場合、ＣＰＵはステップ４５５にて「Ｙｅｓ」と判定し、ステップ４９５に進んで本ルーチンを一旦終了する。即ち、この場合、たとえノッキング発生が継続していたとしても、ＣＰＵは、ノッキング回避制御を一旦終了する。
【００７４】
ステップ４６０乃至ステップ４８０の処理は、点火時期ステップ数ＳＡｓｔｐが噴射時期ステップ数ＦＩｓｔｐ以下であるとき、即ち、点火時期ＳＡが噴射時期ＦＩよりも細かいステップで調整可能であるとき、又は、両ステップ数が等しいときに実行される処理である。この場合、上述したように、ＣＰＵは噴射時期ＦＩを噴射時期の最小設定量ＦＩｍｉｎ毎に遅角補正し、それに合わせて（即ち、基準とするオクタン価が噴射時期ＦＩと点火時期ＳＡとで等しくなるように）点火時期ＳＡを遅角補正する。
【００７５】
ステップ４６０にてＣＰＵは、ステップ４３５と同様の処理により、噴射時期ＦＩを最小設定量ＦＩｍｉｎだけ遅角補正する。具体的には、ＣＰＵは、噴射時期ＦＩ１に「最小設定量ＦＩｍｉｎに補正回数ｃｎｔを乗じて得られる値」を加えた値を、補正後の噴射時期ＦＩとして設定する。即ち、噴射時期ＦＩは、ＦＩ１＋ＦＩｍｉｎ＊ｃｎｔによって算出される。或いは、噴射時期ＦＩは、ＦＩ２を基準にして、
ＦＩ＝ＦＩ２−ＦＩｍｉｎ＊（ＦＩｓｔｐ−ｃｎｔ）によっても算出される。このようにして算出される噴射時期ＦＩが、ノック抑制噴射時期となる。
【００７６】
次にＣＰＵは、ステップ４６５に進み、ステップ４４０と同様の処理により、点火時期ＳＡを噴射時期ＦＩに合わせて補正する。即ち、点火時期ＳＡは、
ＳＡ＝ＳＡ１＋ＳＡｍｉｎ＊［（ＳＡｓｔｐ／ＦＩｓｔｐ）＊ｃｎｔ＋０．５］
によって求められる。或いは、点火時期ＳＡは、ＳＡ２を基準にして、
ＳＡ＝ＳＡ２−ＳＡｍｉｎ＊［（ＳＡｓｔｐ／ＦＩｓｔｐ）＊（ＦＩｓｔｐ−ｃｎｔ）＋０．５］
によっても算出される。このようにして算出される点火時期ＳＡが、ノック抑制点火時期となる。
【００７７】
次にＣＰＵは、ステップ４７０に進み、ステップ４４５と同様の処理により、補正回数のカウンタｃｎｔの値に「１」を加える。次いでＣＰＵはステップ４７５に進み、ノッキングセンサ６４の検出結果に基づいて、機関１０にノッキングが発生しているか否かを判定する。ノッキング発生が抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ４７５にて「Ｎｏ」と判定し、ステップ４９５に進んで本ルーチンを一旦終了する。
【００７８】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡを更に補正する必要がある。そのため、ＣＰＵはステップ４７５にて「Ｙｅｓ」と判定し、ステップ４８０に進む。
【００７９】
ステップ４８０にてＣＰＵは、ステップ４５５と同様の処理により、これ以上ノッキング回避制御を続けられるか否かを判定する。具体的には、噴射時期ＦＩ及び点火時期ＳＡが補正された結果、それぞれ噴射時期ＦＩ２及び点火時期ＳＡ２に等しくなっていた場合、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡをこれ以上補正することができない。そのため、ステップ４８０にてＣＰＵは、「ステップ４７０にて『１』を加算された補正回数のカウンタｃｎｔ」が、点火時期ステップ数ＳＡｓｔｐを超えているか否かを判定する。
【００８０】
補正回数ｃｎｔが噴射時期ステップ数ＦＩｓｔｐ以下である場合、ＣＰＵは更に噴射時期ＦＩ及び点火時期ＳＡを補正することができる。そのため、ＣＰＵはステップ４８０にて「Ｎｏ」と判定してステップ４６０に進む。
【００８１】
一方、補正回数ｃｎｔが噴射時期ステップ数ＦＩｓｔｐより大きい場合、ＣＰＵはステップ４８０にて「Ｙｅｓ」と判定し、ステップ４９５に進んで本ルーチンを一旦終了する。即ち、この場合、たとえノッキング発生が継続していたとしても、ＣＰＵは、ノッキング回避制御を一旦終了する。
【００８２】
以上説明したように、第１装置は、
筒内に燃料噴射して形成された混合気を点火栓からの火花により点火する筒内噴射火花点火式内燃機関に適用される機関制御装置であって、
ノッキングの発生を検知するノッキング検知部（ノッキングセンサ６４）と、
第１のオクタン価の燃料に対して予め定められた第１噴射時期（噴射時期ＦＩ１）及び第１点火時期（点火時期ＳＡ１）にて前記燃料噴射及び前記点火をそれぞれ行い、且つ、前記ノッキング検知部により前記ノッキングの発生が検知されたとき（図４のステップ４０５）、前記第１のオクタン価よりも小さい第２のオクタン価の燃料に対して予め定められた第２噴射時期（噴射時期ＦＩ２）及び第２点火時期（点火時期ＳＡ２）のそれぞれに基いて定まるノック抑制噴射時期及びノック抑制点火時期にて前記燃料噴射（図４のステップ４４０及びステップ４６０）及び前記点火（図４のステップ４３５及びステップ４６５）をそれぞれ行う制御部（制御装置７０）と、
を備える。
【００８３】
更に、制御部（制御装置７０）は、
前記第１噴射時期（噴射時期ＦＩ１）と前記第２噴射時期（噴射時期ＦＩ２）との間の噴射時期であって前記第１のオクタン価と前記第２のオクタン価との間の特定オクタン価の燃料に対する噴射時期を同第１噴射時期と同第２噴射時期とに基づいて算出するとともに同算出された噴射時期を前記ノック抑制噴射時期として設定し（図４のステップ４４０及びステップ４６０）、
前記第１点火時期（点火時期ＳＡ１）と前記第２点火時期（点火時期ＳＡ２）との間の点火時期であって前記特定オクタン価の燃料に対する点火時期を同第１点火時期と同第２点火時期とに基づいて算出するとともに同算出された点火時期を前記ノック抑制点火時期として設定する（図４のステップ４３５及びステップ４６５）、
ように構成されている。
【００８４】
更に、制御部（制御装置７０）は、
前記ノック抑制噴射時期を、前記第１噴射時期と前記第２噴射時期とをオクタン価に関して直線補間（図４のステップ４４０及びステップ４６０）することにより取得し、
前記ノック抑制点火時期を、前記第１点火時期と前記第２点火時期とをオクタン価に関して直線補間（図４のステップ４３５及びステップ４６５）することにより取得する、
ように構成されている。
【００８５】
更に、制御部（制御装置７０）は、噴射時期ＦＩ及び点火時期ＳＡの遅角補正を、機関１０に発生したノッキングが抑制されるまで繰り返し、その結果として「噴射時期ＦＩ及び点火時期ＳＡ」は、「第２噴射時期及び第２点火時期」のそれぞれと一致する場合がある。
【００８６】
従って、この第１装置は、ノッキングの発生を検知したとき、噴射時期ＦＩ及び点火時期ＳＡを段階的に遅角補正することにより、トルクの低下を抑えながらノッキング回避制御を行うように構成されている。
【００８７】
（第２実施形態）
次に、本発明の第２実施形態に係る機関制御装置（以下、「第２装置」とも称呼する。）について説明する。第１装置は、噴射時期及び点火時期それぞれのステップ数を比較し、ステップ数の少ない方（噴射時期及び点火時期のいずれか）を最小設定量単位で段階的に設定し、他方をそれに追随させていた。これに対し、第２装置は、噴射時期と点火時期とのステップ数を比較し、ステップ数の多い方（噴射時期及び点火時期のいずれか）を最小設定量単位で段階的に設定し、他方をそれに追随させる点において第１装置と相違する。
【００８８】
即ち、第２装置に係る制御装置７０は、ノッキングセンサ６４から受けた信号に基づいてノッキング発生を検知したとき、噴射時期ＦＩをＦＩ１からＦＩ２まで変更する際に設定可能な噴射時期ＦＩの最大値（噴射時期ステップ数ＦＩｓｔｐ）と、点火時期ＳＡをＳＡ１からＳＡ２まで変更する際に設定可能な点火時期ＳＡの最大値（点火時期ステップ数ＳＡｓｔｐ）とを比較して、設定可能なステップ数が多い方（噴射時期及び点火時期のいずれか）を最小設定量単位で段階的に設定し、他方をそれに追随させることによってノッキング回避制御を行う。
【００８９】
具体的な作動を、図５の例を参照しながら説明する。第１実施形態に係る図３の例と同様に、点火時期ＳＡは、ＳＡ１からＳＡ２まで変化する間に点火時期ｓ１乃至ｓ５及びＳＡ２（合計６ステップ）を経ることが可能である。一方、噴射時期ＦＩは、ＦＩ１からＦＩ２まで変化する間に噴射時期ｆ３及びＦＩ２（合計２ステップ）にのみ設定可能である。そのため、第２装置の制御装置７０は、ステップ数の多い点火時期ＳＡを最小設定量単位で段階的に設定することによってノッキング回避制御を行う。
【００９０】
ノッキングが発生したとき、第２装置の制御装置７０は点火時期ＳＡをＳＡ１からｓ１へと変更する。このとき点火時期ＳＡが基準としているオクタン価（特定オクタン価）はＲＯＮ＝ｒ１である。このＲＯＮ＝ｒ１を基準とする噴射時期ＦＩは、計算上は、ｆ１であるが、制御装置７０は噴射時期をｆ１に設定することができない。そのため制御装置７０は、噴射時期をＦＩ１のままとする。この時点でノッキング発生が抑えられていれば、制御装置７０はノッキング回避制御を一旦終了する。
【００９１】
一方、この時点でノッキングの発生が抑えられていなければ、制御装置７０は点火時期ＳＡをｓ１からｓ２へと変更する。このときの基準オクタン価はＲＯＮ＝ｒ２である。制御装置７０は噴射時期ＦＩをこのＲＯＮ（ＲＯＮ＝ｒ２）に対応するｆ２に設定することができないため、噴射時期ＦＩをＦＩ１のままとする。
【００９２】
この時点でノッキングの発生が抑えられていなければ、制御装置７０は更に点火時期ＳＡをｓ２からｓ３へと変更する。この時の基準オクタン価はＲＯＮ＝ｒ３であり、このＲＯＮに対応する噴射時期ＦＩはｆ３である。制御装置７０は、噴射時期ＦＩをＲＯＮ＝ｒ３に対応するｆ３に変更する。即ち、この時点で、点火時期ＳＡがｓ３であり、且つ、噴射時期ＦＩがｆ３に設定される。
【００９３】
この時点でノッキングの発生が抑えられていなければ、制御装置７０は、更に点火時期ＳＡをｓ３からｓ４へと変更する。一方、制御装置７０は、噴射時期ＦＩをｆ３のままとする。制御装置７０は、ノッキングの発生が抑えられていなければ、このノッキング回避制御を、点火時期ＳＡがＳＡ２となり、且つ、噴射時期ＦＩがＦＩ２となるまで、繰り返す。
【００９４】
以上説明したように、制御装置７０は噴射時期ＦＩ及び点火時期ＳＡのうち、最小設定量によって定まるステップ数が多い方（図５の例では点火時期ＳＡ）を最小設定量（図５の例では最小設定量ＳＡｍｉｎ）毎に遅角させ、それに合わせて他方（図５の例では噴射時期ＦＩ）を遅角させる。
【００９５】
次に、上述したノッキング回避制御に関する制御装置７０の詳細な作動について、図６に示したフローチャートを参照しながら説明する。制御装置７０のＣＰＵ７１（以下、単に「ＣＰＵ」と称呼する。）は、所定のタイミングにて図６のステップ６００から処理を開始し、ステップ６１０に進む。ステップ６１０にてＣＰＵは、ノッキングセンサ６４の検出結果に基づいて、ノッキングが発生しているか否かを判定する。ノッキングが発生していない場合、制御装置７０がノッキング回避制御を行う必要はないため、ＣＰＵはステップ６１０にて「Ｎｏ」と判定し、ステップ６９５に進み、本ルーチンを一旦終了する。この場合ＣＰＵは、噴射時期ＦＩをＦＩ１に設定し、且つ、点火時期ＳＡをＳＡ１に設定する。
【００９６】
一方、ノッキングが発生していた場合、ＣＰＵはステップ６１０にて「Ｙｅｓ」と判定し、ステップ６１１に進み、ノッキング回避制御を実行する。ステップ６１１にてＣＰＵは、ノッキング回避制御に必要な各種の情報、具体的には、その時点の回転速度及び負荷の組合せにより定まる噴射時期ＦＩ（ＦＩ１及びＦＩ２）及び点火時期ＳＡ（ＳＡ１及びＳＡ２）、並びに、噴射時期の最小設定量ＦＩｍｉｎ及び点火時期の最小設定量ＳＡｍｉｎをＲＯＭ７２から取得する。
【００９７】
次にＣＰＵは、ステップ６１２に進み、ステップ４１５と同様に噴射時期ステップ数ＦＩｓｔｐを算出する。次にＣＰＵは、ステップ６１３に進み、ステップ４２０と同様に点火時期ステップ数ＳＡｓｔｐを算出する。
【００９８】
次にＣＰＵは、ステップ６１４に進み、噴射時期ＦＩの補正回数を記憶するカウンタｃｎｔＦＩの値を「１」に設定する。また、ＣＰＵは、点火時期ＳＡの補正回数を記憶するカウンタｃｎｔＳＡの値を「１」に設定する。
【００９９】
次にＣＰＵは、ステップ６１５に進み、噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐよりも大きいか否かを判定する。噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐよりも大きければ、ＣＰＵはステップ６２０以降に進み噴射時期ＦＩを噴射時期の最小設定量ＦＩｍｉｎ毎に段階的に遅角補正し、それに合わせて（即ち、基準とするオクタン価が噴射時期ＦＩと点火時期ＳＡとで等しくなるように）点火時期ＳＡを遅角補正する。即ち、この場合、ＣＰＵはステップ６１５にて「Ｙｅｓ」と判定してステップ６２０に進む。
【０１００】
一方、噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐ以下であれば、ＣＰＵはステップ６３０以降に進み点火時期ＳＡを点火時期の最小設定量ＳＡｍｉｎ毎に段階的に遅角補正し、それに合わせて噴射時期ＦＩを遅角補正する。即ち、この場合、ＣＰＵはステップ６１５にて「Ｎｏ」と判定してステップ６３０に進む。
【０１０１】
ステップ６２０にてＣＰＵは、噴射時期ＦＩを最小設定量ＦＩｍｉｎだけ遅角補正する。具体的には、ＣＰＵは、第１噴射時期ＦＩ１に「最小設定量ＦＩｍｉｎに噴射時期の補正回数ｃｎｔＦＩを乗じて得られる値」を加えた値を、補正後の噴射時期ＦＩとして設定する。即ち、噴射時期ＦＩは、ＦＩ１＋ＦＩｍｉｎ＊ｃｎｔＦＩによって算出される。或いは、噴射時期ＦＩは、ＦＩ２を基準にして、
ＦＩ＝ＦＩ２−ＦＩｍｉｎ＊（ＦＩｓｔｐ−ｃｎｔＦＩ）によっても算出される。このようにして算出される噴射時期ＦＩが、ノック抑制噴射時期となる。
【０１０２】
次にＣＰＵは、ステップ６２１に進み、ノッキングセンサ６４の検出結果に基づいて、ノッキングが発生しているか否かを判定する。ノッキングの発生が既に抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ６２１にて「Ｎｏ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１０３】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、ノッキング回避制御を継続する必要がある。そのため、ＣＰＵはステップ６２１にて「Ｙｅｓ」と判定し、ステップ６２２に進む。
【０１０４】
ステップ６２２にてＣＰＵは、点火時期ＳＡの補正が必要であるか否かを判定する。即ち、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡのそれぞれが基準とするオクタン価が近似しているか否かを判定する。それぞれのオクタン価が近似していない場合、ＣＰＵは、点火時期ＳＡを補正することによって（両者のオクタン価が近似するように）調整する。
【０１０５】
より具体的に説明すると、両者のオクタン価が等しいとき、「点火時期のステップ数ＳＡｓｔｐに対する点火時期の補正回数の比」（＝ｃｎｔＳＡ／ＳＡｓｔｐ）と「噴射時期のステップ数ＦＩｓｔｐに対する噴射時期の補正回数の比」（＝ｃｎｔＦＩ／ＦＩｓｔｐ）とが等しくなっている。
【０１０６】
例えば、ノッキング回避制御が開始され最初にステップ６２２の処理が実行されたとき、補正回数のカウンタｃｎｔＦＩ及びｃｎｔＳＡはいずれも「１」である。更に、
ＦＩｓｔｐ＞ＳＡｓｔｐであるから、
ｃｎｔＳＡ／ＳＡｓｔｐ＞ｃｎｔＦＩ／ＦＩｓｔｐ
となる。噴射時期ＦＩの補正が繰り返されることによって、噴射時期の補正回数ｃｎｔＦＩの値が増加し、その結果ｃｎｔＦＩ／ＦＩｓｔｐの値が大きくなり、ｃｎｔＳＡ／ＳＡｓｔｐ以上（即ち、ｃｎｔＳＡ／ＳＡｓｔｐ≦ｃｎｔＦＩ／ＦＩｓｔｐ）となったとき、ＣＰＵは、点火時期ＳＡも補正し、噴射時期ＦＩ及び点火時期ＳＡのそれぞれが基準とするオクタン価が近似するように調整する。
【０１０７】
即ち、ｃｎｔＳＡ／ＳＡｓｔｐ≦ｃｎｔＦＩ／ＦＩｓｔｐであれば、ＣＰＵはステップ６２２において「Ｙｅｓ」と判定し、ステップ６２３に進んで点火時期ＳＡを補正する。一方、ｃｎｔＳＡ／ＳＡｓｔｐ＞ｃｎｔＦＩ／ＦＩｓｔｐであれば、ＣＰＵはステップ６２２にて「Ｎｏ」と判定し、ステップ６２６に進む。この場合、点火時期ＳＡを補正する処理（ステップ６２３乃至ステップ６２５）がスキップされる。
【０１０８】
ステップ６２３にてＣＰＵは、点火時期ＳＡに最小設定量ＳＡｍｉｎを加える補正する。具体的には、ＣＰＵは、第１点火時期ＳＡ１に「最小設定量ＳＡｍｉｎに点火時期の補正回数ｃｎｔＳＡを乗じて得られる値」を加えた値を、補正後の点火時期ＳＡとして設定する。即ち、点火時期ＳＡは、ＳＡ１＋ＳＡｍｉｎ＊ｃｎｔＳＡによって算出される。或いは、点火時期ＳＡは、ＳＡ２を基準にして、
ＳＡ＝ＳＡ２−ＳＡｍｉｎ＊（ＳＡｓｔｐ−ｃｎｔＳＡ）によっても算出される。このようにして算出される点火時期ＳＡが、ノック抑制点火時期となる。
【０１０９】
更に、ＣＰＵは、ステップ６２４に進み、ノッキングセンサ６４の検出結果に基づいて、ノッキングが発生しているか否かを判定する。ノッキングの発生が既に抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ６２４にて「Ｎｏ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１１０】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、ノッキング回避制御を継続する必要がある。そのため、ＣＰＵはステップ６２４にて「Ｙｅｓ」と判定し、ステップ６２５に進む。ステップ６２５にてＣＰＵは、（ステップ６２３にて）点火時期ＳＡの補正を行ったため、点火時期の補正回数のカウンタｃｎｔＳＡに「１」を加える。
【０１１１】
次にＣＰＵは、ステップ６２６に進み、（ステップ６２０にて）噴射時期ＦＩの補正を行ったため、噴射時期の補正回数のカウンタｃｎｔＦＩに「１」を加える。
【０１１２】
次にＣＰＵは、ステップ６２７に進み、これ以上ノッキング回避制御を続けられるか否かを判定する。具体的には、噴射時期ＦＩ及び点火時期ＳＡが補正された結果、それぞれ噴射時期ＦＩ２及び点火時期ＳＡ２に等しくなっていた場合、ＣＰＵは、噴射時期ＦＩ及び点火時期ＳＡをこれ以上補正することができない。そのため、ＣＰＵは、「ステップ６２６にて『１』を加算された噴射時期の補正回数のカウンタｃｎｔＦＩ」が、噴射時期ステップ数ＦＩｓｔｐを超えているか否かを判定する。
【０１１３】
補正回数ｃｎｔＦＩが噴射時期ステップ数ＦＩｓｔｐ以下である場合、ＣＰＵは更に噴射時期ＦＩを補正することができる。そのため、ＣＰＵはステップ６２７にて「Ｎｏ」と判定してステップ６２０に進む。
【０１１４】
一方、補正回数ｃｎｔＦＩが噴射時期ステップ数ＦＩｓｔｐより大きい場合、ＣＰＵはステップ６２７にて「Ｙｅｓ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。即ち、この場合、たとえノッキングが継続していたとしても、ＣＰＵは、ノッキング回避制御を一旦終了する。
【０１１５】
ステップ６３０乃至ステップ６３７の処理は、点火時期ステップ数ＳＡｓｔｐが噴射時期ステップ数ＦＩｓｔｐ以下であるとき、即ち、点火時期ＳＡが噴射時期ＦＩよりも細かいステップで調整可能であるとき、又は、両ステップ数が等しいときに実行される処理である。この場合、上述したように、ＣＰＵは点火時期ＳＡを点火時期の最小設定量ＳＡｍｉｎ毎に段階的に遅角補正し、それに合わせて（即ち、基準とするオクタン価が点火時期ＳＡと噴射時期ＦＩとで等しくなるように）噴射時期ＦＩを遅角補正する。
【０１１６】
ステップ６３０にてＣＰＵは、ステップ６２０と同様の処理により、点火時期ＳＡを最小設定量ＳＡｍｉｎだけ遅角補正する。具体的には、点火時期ＳＡは、ＳＡ１＋ＳＡｍｉｎ＊ｃｎｔＳＡによって算出される。或いは、点火時期ＳＡは、ＳＡ２を基準にして、
ＳＡ＝ＳＡ２−ＳＡｍｉｎ＊（ＳＡｓｔｐ−ｃｎｔＳＡ）によっても算出される。このようにして算出される点火時期ＳＡが、ノック抑制点火時期となる。
【０１１７】
次にＣＰＵは、ステップ６３１に進み、ノッキングセンサ６４の検出結果に基づいて、ノッキングが発生しているか否かを判定する。ノッキングの発生が既に抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ６３１にて「Ｎｏ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１１８】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、ノッキング回避制御を継続する必要がある。そのため、ＣＰＵはステップ６３１にて「Ｙｅｓ」と判定し、ステップ６３２に進む。
【０１１９】
ステップ６３２にてＣＰＵは、ステップ６２２と同様の処理により、噴射時期ＦＩの補正が必要であるか否かを判定する。具体的には、ＣＰＵは、「噴射時期のステップ数ＦＩｓｔｐに対する噴射時期の補正回数の比」（＝ｃｎｔＦＩ／ＦＩｓｔｐ）と「点火時期のステップ数ＳＡｓｔｐに対する点火時期の補正回数の比」（＝ｃｎｔＳＡ／ＳＡｓｔｐ）との大小関係を比較し、ｃｎｔＦＩ／ＦＩｓｔｐ≦ｃｎｔＳＡ／ＳＡｓｔｐとなっていれば、ステップ６３２にて「Ｙｅｓ」と判定し、ステップ６３３に進む。この場合、ＣＰＵは、噴射時期ＦＩの補正を行う。
【０１２０】
一方、ｃｎｔＦＩ／ＦＩｓｔｐ＞ｃｎｔＳＡ／ＳＡｓｔｐとなっていれば、ＣＰＵは、ステップ６３２にて「Ｎｏ」と判定し、ステップ６３６に進む。この場合、噴射時期ＦＩを補正する処理（ステップ６３３乃至ステップ６３５）がスキップされる。
【０１２１】
ステップ６３３にてＣＰＵは、ステップ６２３と同様の処理により、噴射時期ＦＩを最小設定量ＦＩｍｉｎだけ遅角補正する。具体的には、ＣＰＵは、噴射時期ＦＩ１に「最小設定量ＦＩｍｉｎに噴射時期の補正回数ｃｎｔＦＩを乗じて得られる値」を加えた値を、補正後の噴射時期ＦＩとして設定する。即ち、噴射時期ＦＩは、
ＦＩ＋ＦＩｍｉｎ＊ｃｎｔＦＩによって算出される。或いは、噴射時期ＦＩは、ＦＩ２を基準にして、ＦＩ＝ＦＩ２−ＦＩｍｉｎ＊（ＦＩｓｔｐ−ｃｎｔＦＩ）によっても算出される。このようにして算出される噴射時期ＦＩが、ノック抑制噴射時期となる。
【０１２２】
次にＣＰＵは、ステップ６３４に進み、ノッキングセンサ６４の検出結果に基づいて、ノッキングが発生しているか否かを判定する。ノッキングの発生が既に抑えられている場合、これ以上のノッキング回避制御は必要無いため、ＣＰＵはステップ６３４にて「Ｎｏ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。
【０１２３】
一方、ノッキングが引き続き発生している場合、ＣＰＵは、ノッキング回避制御を継続する必要がある。そのため、ＣＰＵはステップ６３４にて「Ｙｅｓ」と判定し、ステップ６３５に進む。ＣＰＵは、（ステップ６３３にて）噴射時期ＦＩの補正を行ったため、ステップ６３５にて噴射時期の補正回数のカウンタｃｎｔＦＩに「１」を加える。
【０１２４】
次にＣＰＵは、ステップ６３６に進み、（ステップ６３０にて）点火時期ＳＡの補正を行ったため、噴射時期の補正回数のカウンタｃｎｔＦＩに「１」を加える。
【０１２５】
ＣＰＵは、ステップ６３７に進み、ステップ６２７と同様の処理により、これ以上ノッキング回避制御を続けられるか否かを判定する。具体的には、ＣＰＵは、「ステップ６３６にて『１』を加算された点火時期の補正回数のカウンタｃｎｔＳＡ」が、点火時期ステップ数ＳＡｓｔｐを超えているか否かを判定する。
【０１２６】
補正回数ｃｎｔＳＡが点火時期ステップ数ＳＡｓｔｐ以下である場合、ＣＰＵは更に点火時期ＳＡを補正することができる。そのため、ＣＰＵはステップ６３７にて「Ｎｏ」と判定してステップ６３０に進む。
【０１２７】
一方、補正回数ｃｎｔＳＡが点火時期ステップ数ＳＡｓｔｐより大きい場合、ＣＰＵはステップ６３７にて「Ｙｅｓ」と判定し、ステップ６９５に進んで本ルーチンを一旦終了する。即ち、この場合、たとえノッキングが継続していたとしても、ＣＰＵは、ノッキング回避制御を一旦終了する。
【０１２８】
以上説明したように、第２装置は、
筒内に燃料噴射して形成された混合気を点火栓からの火花により点火する筒内噴射火花点火式内燃機関に適用される機関制御装置であって、
ノッキングの発生を検知するノッキング検知部（ノッキングセンサ６４）と、
第１のオクタン価の燃料に対して予め定められた第１噴射時期（噴射時期ＦＩ１）及び第１点火時期（点火時期ＳＡ１）にて前記燃料噴射及び前記点火をそれぞれ行い、且つ、前記ノッキング検知部により前記ノッキングの発生が検知されたとき（図６のステップ６１０）、前記第１のオクタン価よりも小さい第２のオクタン価の燃料に対して予め定められた第２噴射時期（噴射時期ＦＩ２）及び第２点火時期（点火時期ＳＡ２）のそれぞれに基いて定まるノック抑制噴射時期及びノック抑制点火時期にて前記燃料噴射（図６のステップ６２０及びステップ６３３）及び前記点火（図６のステップ６２３及びステップ６３０）をそれぞれ行う制御部（制御装置７０）と、
を備える。
【０１２９】
更に、制御部（制御装置７０）は、
前記第１噴射時期（噴射時期ＦＩ１）と前記第２噴射時期（噴射時期ＦＩ２）との間の噴射時期であって前記第１のオクタン価と前記第２のオクタン価との間の特定オクタン価の燃料に対する噴射時期を同第１噴射時期と同第２噴射時期とに基づいて算出するとともに同算出された噴射時期を前記ノック抑制噴射時期として設定し（図６のステップ６２０及びステップ６３３）、
前記第１点火時期（点火時期ＳＡ１）と前記第２点火時期（点火時期ＳＡ２）との間の点火時期であって前記特定オクタン価の燃料に対する点火時期を同第１点火時期と同第２点火時期とに基づいて算出するとともに同算出された点火時期を前記ノック抑制点火時期として設定する（図６のステップ６２３及びステップ６３０）、
ように構成されている。
【０１３０】
更に、制御部（制御装置７０）は、
前記ノック抑制噴射時期を、前記第１噴射時期と前記第２噴射時期とをオクタン価に関して直線補間（図６のステップ６２０及びステップ６３３）することにより取得し、
前記ノック抑制点火時期を、前記第１点火時期と前記第２点火時期とをオクタン価に関して直線補間（図６のステップ６２３及びステップ６３０）することにより取得する、
ように構成されている。
【０１３１】
更に、制御部（制御装置７０）は、噴射時期ＦＩ及び点火時期ＳＡの遅角補正を、ノッキングが抑制されるまで繰り返し、その結果として「噴射時期ＦＩ及び点火時期ＳＡ」は、「第２噴射時期及び第２点火時期」のそれぞれと一致する場合がある。
【０１３２】
従って、第２装置は、ノッキングの発生を検知したとき、噴射時期ＦＩ及び点火時期ＳＡを段階的に遅角補正することにより、トルクの低下を抑えながらノッキング回避制御を行うように構成されている。
【０１３３】
なお、第１実施形態及び第２実施形態では、制御装置７０は、噴射時期ステップ数ＦＩｓｔｐと点火時期ステップ数ＳＡｓｔｐとが等しい場合、点火時期ステップ数ＳＡｓｔｐが噴射時期ステップ数ＦＩｓｔｐよりも大きい場合と同じ処理を実行していた（図４のステップ４３０及び図６のステップ６１５）。しかし、噴射時期ステップ数ＦＩｓｔｐと点火時期ステップ数ＳＡｓｔｐとが等しい場合、制御装置は、噴射時期ステップ数ＦＩｓｔｐが点火時期ステップ数ＳＡｓｔｐよりも大きい場合と同じ処理を実行しても良い。
【０１３４】
また、第１実施形態及び第２実施形態では、制御装置７０は、噴射時期ＦＩ又は点火時期ＳＡをその最小設定量ずつ補正していた。しかし、制御装置は、噴射時期及び／又は点火時期の補正量はオクタン価に応じて変更しても良い。例えば、オクタン価が低い領域（オクタン価が第２オクタン価に近い場合）では、制御装置は、オクタン価が高い領域と比較して、噴射時期及び／又は点火時期の補正量を大きくしても良い。或いは、制御装置７０は、オクタン価が高い領域（オクタン価が第１オクタン価に近い場合）ではオクタン価が低い領域と比較して、噴射時期ＦＩ及び／又は点火時期ＳＡの補正量を大きくしても良い。
【０１３５】
また、第１実施形態及び第２実施形態では、制御装置７０は、噴射時期ＦＩ１及び噴射時期ＦＩ２並びに点火時期ＳＡ１及び点火時期ＳＡ２に関するマッピング情報を保持していた。しかし、制御装置は、オクタン価のそれぞれ異なる噴射時期及び点火時期に関する更に多くのマッピング情報を保持しても良い。この場合、内燃機関にノッキングが発生したとき、制御装置はオクタン価が次第に小さくなる順にてマッピング情報を参照して噴射時期及び点火時期を設定しても良い。更に、制御装置は、オクタン価の近い２つマッピング情報を参照して、その２つのオクタン価の間の特定オクタン価の燃料を使用したときの噴射時期及び点火時期を、例えば、オクタン価に関して直線補間にて算出しても良い。
【０１３６】
また、第１実施形態及び第２実施形態では、制御装置７０は、ノッキングの発生を検知する度（つまり、ノッキング回避制御を開始する度）に噴射時期ＦＩ及び点火時期ＳＡを最小設定量毎に段階的に補正していた。しかし、制御装置は、ノッキング回避制御によってノッキングの発生が抑制されたときの噴射時期及び点火時期を、そのときの機関の回転速度及び負荷の組合せと共にＲＡＭ内又はバックアップＲＡＭ内に学習情報として保持しても良い。この場合、機関の運転状態が同様の回転速度及び負荷の組合せにあるとき、再度ノッキングが発生した場合、制御装置は、その学習情報を取得し、噴射時期及び点火時期として設定しても良い。
【０１３７】
更に、本発明の実施形態に係る機関制御装置は、
前記第１噴射時期及び前記第１点火時期にて前記燃料噴射及び前記点火をそれぞれ行っている場合に前記ノッキングの発生が検知された場合、
前記第１噴射時期から前記第２噴射時期まで前記噴射時期を設定可能な最小単位の噴射時期変化分（噴射時期の最小設定量）ずつ変化させた場合に要する噴射時期変更回数（噴射時期ステップ数）と、前記第１点火時期から前記第２点火時期まで前記点火時期を設定可能な最小単位の点火時期変化分（点火時期の最小設定量）ずつ変化させた場合に要する点火時期変更回数（点火時期ステップ数）と、を算出し（図４のステップ４１５及びステップ４２０）、
前記噴射時期変更回数が前記点火時期変更回数よりも大きいとき、前記第１点火時期から前記第２点火時期に向けて前記最小単位の点火時期変化分だけ変化させた点火時期を前記ノック抑制点火時期として設定する（図４のステップ４３５）とともに、前記噴射時期変更回数を前記点火時期変更回数で除した値に最も近い整数を前記最小単位の噴射時期変化分に乗じた値だけ前記第１噴射時期から前記第２噴射時期に向けて変化させた噴射時期を前記ノック抑制噴射時期として設定し（図４のステップ４４０）、
前記点火時期変更回数が前記噴射時期変更回数よりも大きいとき、前記第１噴射時期から前記第２噴射時期に向けて前記最小単位の噴射時期変化分だけ変化させた噴射時期を前記ノック抑制噴射時期として設定する（図４のステップ４６０）とともに、前記点火時期変更回数を前記噴射時期変更回数で除した値に最も近い整数を前記最小単位の点火時期変化分に乗じた値だけ前記第１点火時期から前記第２点火時期に向けて変化させた点火時期を前記ノック抑制点火時期として設定する（図４のステップ４６５）、
ように構成されている、と言うこともできる。
【０１３８】
更に、本発明の実施形態に係る機関制御装置は、
前記ノック抑制噴射時期及び前記ノック抑制点火時期にて前記燃料噴射及び前記点火をそれぞれ行っている場合に前記ノッキングの発生が検知された場合、
前記噴射時期変更回数が前記点火時期変更回数よりも大きいとき、前記ノック抑制点火時期から前記第２点火時期に向けて前記最小単位の点火時期変化分だけ変化させた点火時期を新たな前記ノック抑制点火時期として設定する（図４のステップ４３５）とともに、前記噴射時期変更回数を前記点火時期変更回数で除した値に最も近い整数を前記最小単位の噴射時期変化分に乗じた値だけ前記ノック抑制噴射時期から前記第２噴射時期に向けて変化させた噴射時期を新たな前記ノック抑制噴射時期として設定し（図４のステップ４５０）、
前記点火時期変更回数が前記噴射時期変更回数よりも大きいとき、前記ノック抑制噴射時期から前記第２噴射時期に向けて前記最小単位の噴射時期変化分だけ変化させた噴射時期を新たな前記ノック抑制噴射時期として設定する（図４のステップ４６０）とともに、前記点火時期変更回数を前記噴射時期変更回数で除した値に最も近い整数を前記最小単位の点火時期変化分に乗じた値だけ前記ノック抑制点火時期から前記第２点火時期に向けて変化させた点火時期を新たな前記ノック抑制点火時期として設定する（図４のステップ４６５）、
ように構成されていると、言うこともできる。
【０１３９】
また、上記機関制御装置は、
前記第１噴射時期及び前記第１点火時期にて前記燃料噴射及び前記点火をそれぞれ行っている場合に前記ノッキングの発生が検知された場合、
前記第１噴射時期から前記第２噴射時期まで前記噴射時期を設定可能な最小単位の噴射時期変化分ずつ変化させた場合に要する噴射時期変更回数と、前記第１点火時期から前記第２点火時期まで前記点火時期を設定可能な最小単位の点火時期変化分ずつ変化させた場合に要する点火時期変更回数と、を算出し（図６のステップ６１２及びステップ６１３）、
前記噴射時期変更回数が前記点火時期変更回数よりも大きいとき、前記第１噴射時期から前記第２噴射時期に向けて前記最小単位の噴射時期変化分だけ変化させた噴射時期を前記ノック抑制噴射時期として設定する（図６のステップ６２０）とともに前記第１点火時期又は前記第１点火時期から前記第２点火時期に向けて前記最小単位の点火時期変化分だけ変化させた点火時期を前記ノック抑制点火時期として設定し（図６のステップ６２２及びステップ６２３）、
その後前記ノッキングが検知される毎に各ノッキングが検知された時点の点火時期から前記第２点火時期に向けて前記最小単位の点火時期変化分ずつ変化させた点火時期を前記ノック抑制点火時期として設定し（図６のステップ６２３）、
前記噴射時期変更回数を前記点火時期変更回数で除した値の整数部に対応する回数だけ前記点火時期が変更された状態にて前記ノッキングが検知されたとき、その時点の噴射時期から前記第２噴射時期に向けて前記最小単位の噴射時期変化分だけ変化させた噴射時期を新たな前記ノック抑制噴射時期として設定する（図６のステップ６２０）、
ように構成された機関制御装置であると言うこともできる。
【０１４０】
更に、上記機関制御装置は、
前記ノック抑制噴射時期が変更された後、前記ノッキングが検知される毎に各ノッキングが検知された時点の点火時期から前記第２点火時期に向けて前記最小単位の点火時期変化分ずつ変化させた点火時期を前記ノック抑制点火時期として設定し（図６のステップ６２３）、
前記噴射時期変更回数を前記点火時期変更回数で除した値の整数部に対応する回数だけ前記点火時期が変更された状態にて前記ノッキングが検知されたとき、その時点の噴射時期から前記第２噴射時期に向けて前記最小単位の噴射時期変化分だけ変化させた噴射時期を新たな前記ノック抑制噴射時期として設定する（図６のステップ６２０）、
ように構成されていると、言うこともできる。
【符号の説明】
【０１４１】
１０…内燃機関、２０…シリンダブロック部、３０…シリンダヘッド部、４０…吸気通路、５０…排気通路、６４…ノッキングセンサ、７０…制御装置。
【図１】
2014105662.tif 000003
【図２】
2014105662.tif 000004
【図３】
2014105662.tif 000005
【図４】
2014105662.tif 000006
【図５】
2014105662.tif 000007
【図６】
2014105662.tif 000008