"火花点火をきっかけにした正常の燃焼開始時期よりも前に混合気が自着火する現象であるプリイグニッションを検出するための検出手段と、筒内に直接燃料を噴射するインジェクタと、有効圧縮比を可変的に設定する可変機構とを備えた火花点火式エンジンを制御する方法であって、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値未満であることが確認された場合に、上記可変機構を用いて有効圧縮比を低下させる制御を含む第1プリイグ回避制御を実行するステップと、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値以上であることが確認された場合に、上記インジェクタからの燃料噴射の態様を変更することにより筒内の燃焼熱量を低下させる制御を含む第2プリイグ回避制御を実行するステップとを含むことを特徴とする火花点火式エンジンの制御方法。請求項1記載の火花点火式エンジンの制御方法において、上記第1プリイグ回避制御では、有効圧縮比を所定量低下させ、それでもプリイグニッションが検出された場合に、有効圧縮比をさらに所定量低下させることにより、有効圧縮比を段階的に低下させ、上記第2プリイグ回避制御では、上記筒内の燃焼熱量を低下させる制御を1回限り実行し、それに伴うエンジントルクの低下割合を、上記第1プリイグ回避制御で有効圧縮比を1回低下させたときのエンジントルクの低下割合よりも大きい値に設定することを特徴とする火花点火式エンジンの制御方法。請求項2記載の火花点火式エンジンの制御方法において、上記第2プリイグ回避制御では、筒内の燃焼熱量の低下に伴うエンジントルクの低下割合を50以上に設定することを特徴とする火花点火式エンジンの制御方法。請求項1~3のいずれか1項に記載の火花点火式エンジンの制御方法において、上記第2プリイグ回避制御では、上記筒内の燃焼熱量の低下のために、上記インジェクタからの燃料噴射量を低減させることを特徴とする火花点火式エンジンの制御方法。請求項4記載の火花点火式エンジンの制御方法において、上記第2プリイグ回避制御では、上記燃料噴射量を低減させた後の筒内の空燃比が低減前よりもリッチになるように、筒内に導入される吸入空気量を低減させることを特徴とする火花点火式エンジンの制御方法。火花点火をきっかけにした正常の燃焼開始時期よりも前に混合気が自着火する現象であるプリイグニッションを検出するための検出手段と、筒内に直接燃料を噴射するインジェクタと、有効圧縮比を可変的に設定する可変機構とを備えた火花点火式エンジンであって、上記インジェクタおよび可変機構の動作を制御する制御手段を備え、上記制御手段は、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値未満であることが確認された場合に、上記可変機構を作動させて有効圧縮比を低下させる制御を含む第1プリイグ回避制御を実行する一方、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値以上であることが確認された場合に、上記インジェクタからの燃料噴射の態様を変更することにより筒内の燃焼熱量を低下させる制御を含む第2プリイグ回避制御を実行することを特徴とする火花点火式エンジン。請求項6記載の火花点火式エンジンにおいて、上記第1プリイグ回避制御の実行時、上記制御手段は、有効圧縮比を所定量低下させ、それでもプリイグニッションが検出された場合に、有効圧縮比をさらに所定量低下させることにより、有効圧縮比を段階的に低下させ、上記第2プリイグ回避制御は、上記筒内の燃焼熱量を低下させる制御を1回限り実行するものであり、それに伴うエンジントルクの低下割合が、上記第1プリイグ回避制御で有効圧縮比を1回低下させたときのエンジントルクの低下割合よりも大きい値に設定されることを特徴とする火花点火式エンジン。請求項7記載の火花点火式エンジンにおいて、上記第2プリイグ回避制御では、筒内の燃焼熱量の低下に伴うエンジントルクの低下割合が50以上に設定されることを特徴とする火花点火式エンジン。請求項6~8のいずれか1項に記載の火花点火式エンジンにおいて、上記第2プリイグ回避制御では、上記筒内の燃焼熱量の低下のために、上記インジェクタからの燃料噴射量が低減されることを特徴とする火花点火式エンジン。請求項9記載の火花点火式エンジンにおいて、上記第2プリイグ回避制御では、上記燃料噴射量を低減させた後の筒内の空燃比が低減前よりもリッチになるように、筒内に導入される吸入空気量が低減されることを特徴とする火花点火式エンジン。上記特許文献1のように、プリイグニッションが発生し易い条件下で有効圧縮比を低下させるようにした場合には、有効圧縮比の低下に伴って主に圧縮端圧力圧縮上死点付近での筒内圧力が下がり、このことが混合気の自着火に対し抑制方向に働く結果、プリイグニッションの発生が抑制される。しかしながら、上記のような有効圧縮比を低下させる制御は、プリイグニッションの原因の如何によっては、これを回避するための有効な対策とならない場合がある。例えば、プリイグニッションの種類の中には、高温化した排気弁の傘部や点火プラグの電極等が熱源となって起きるものがある。このような熱源を原因とするプリイグニッションについては、たとえ有効圧縮比を下げて圧縮端圧力圧縮上死点での筒内圧力を低下させたとしても、依然として上記熱源が着火源となって混合気が早期に自着火するため、プリイグニッションを有効に回避することは難しくなる。本発明は、上記のような事情に鑑みてなされたものであり、プリイグニッションの性質に応じた有効な対策を選択的に講じることにより、適正かつ確実にプリイグニッションを抑制することが可能な火花点火式エンジンおよびその制御方法を提供することを目的とする。上記課題を解決するためのものとして、本発明は、火花点火をきっかけにした正常の燃焼開始時期よりも前に混合気が自着火する現象であるプリイグニッションを検出するための検出手段と、筒内に直接燃料を噴射するインジェクタと、有効圧縮比を可変的に設定する可変機構とを備えた火花点火式エンジンを制御する方法であって、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値未満であることが確認された場合に、上記可変機構を用いて有効圧縮比を低下させる制御を含む第1プリイグ回避制御を実行するステップと、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値以上であることが確認された場合に、上記インジェクタからの燃料噴射の態様を変更することにより筒内の燃焼熱量を低下させる制御を含む第2プリイグ回避制御を実行するステップとを含むことを特徴とするものである請求項1。また、本発明は、火花点火をきっかけにした正常の燃焼開始時期よりも前に混合気が自着火する現象であるプリイグニッションを検出するための検出手段と、筒内に直接燃料を噴射するインジェクタと、有効圧縮比を可変的に設定する可変機構とを備えた火花点火式エンジンであって、上記インジェクタおよび可変機構の動作を制御する制御手段を備え、上記制御手段は、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値未満であることが確認された場合に、上記可変機構を作動させて有効圧縮比を低下させる制御を含む第1プリイグ回避制御を実行する一方、上記検出手段の検出値に基づきプリイグニッションが検出され、かつエンジン回転速度が所定値以上であることが確認された場合に、上記インジェクタからの燃料噴射の態様を変更することにより筒内の燃焼熱量を低下させる制御を含む第2プリイグ回避制御を実行することを特徴とするものである請求項6。本発明によれば、回転速度が比較的低いときにプリイグニッションが検出された場合に、有効圧縮比を低下させる制御第1プリイグ回避制御が実行され、主に圧縮端圧力圧縮上死点付近での筒内圧力の低下が図られることにより、混合気が自着火し難い環境がつくり出されるため、プリイグニッションの発生を効果的に抑制することができる。一方、回転速度が比較的高いときのプリイグニッション、つまり、燃料の受熱期間燃料が高温高圧環境下に晒される実時間が短く本来は自着火しにくい条件下で起きるプリイグニッションは、高温化した排気弁や点火プラグ等が熱源となって起きるものと考えられるため、仮に有効圧縮比を下げて圧縮端圧力を低下させても、上記熱源の温度にあまり影響せず、十分なプリイグニッションの抑制につながらない。そこで、このような性質のプリイグニッションの発生時には、有効圧縮比を低下させるのではなく、筒内の燃焼熱量そのものを低下させる制御第2プリイグ回避制御を実行するようにした。これにより、筒内温度が確実に低下し、プリイグニッションの原因となる熱源が冷却されるため、プリイグニッションを効果的に抑制することができる。本発明の火花点火式エンジンおよびその制御方法において、好ましくは、上記第1プリイグ回避制御では、有効圧縮比を所定量低下させ、それでもプリイグニッションが検出された場合に、有効圧縮比をさらに所定量低下させることにより、有効圧縮比を段階的に低下させ、上記第2プリイグ回避制御では、上記筒内の燃焼熱量を低下させる制御を1回限り実行し、それに伴うエンジントルクの低下割合を、上記第1プリイグ回避制御で有効圧縮比を1回低下させたときのエンジントルクの低下割合よりも大きい値に設定する請求項2,7。この態様によれば、エンジン低速側でプリイグニッションが発生したときの出力トルクの低下が最小限に抑えられる一方、エンジン高速側でプリイグニッションが発生したときのフェイルセーフ機能異常時の安全対策を的確に発揮させることができる。具体的に、上記第2プリイグ回避制御では、筒内の燃焼熱量の低下に伴うエンジントルクの低下割合を50以上に設定するとよい請求項3,8。本発明の火花点火式エンジンおよびその制御方法において、好ましくは、上記第2プリイグ回避制御では、上記筒内の燃焼熱量の低下のために、上記インジェクタからの燃料噴射量を低減させる請求項4,9。この態様によれば、燃料噴射量を低減するだけの構成で、筒内の燃焼熱量を簡単かつ効果的に低下させることができる。上記構成において、より好ましくは、上記第2プリイグ回避制御では、上記燃料噴射量を低減させた後の筒内の空燃比が低減前よりもリッチになるように、筒内に導入される吸入空気量を低減させる請求項5,10。この態様によれば、空燃比のリッチ化によって燃料の気化潜熱による冷却効果が高められるため、筒内温度をより効果的に低下させることができ、プリイグニッションをより確実に回避することができる。以上説明したように、本発明によれば、プリイグニッションの性質に応じた有効な対策を選択的に講じることにより、適正かつ確実にプリイグニッションを抑制することができる。1エンジンの全体構成図1は、本発明の一実施形態にかかるエンジンの全体構成を示す図である。本図に示されるエンジンは、ガソリンを燃料とする火花点火式の多気筒ガソリンエンジンであり、紙面に直交する方向に並ぶ複数の気筒2図中ではそのうちの1つのみを示すを有するシリンダブロック3と、シリンダブロック3上に設けられたシリンダヘッド4とを含むエンジン本体1を有している。また、このエンジンは、車載用エンジンであり、車両を駆動するための動力源として図外のエンジンルームに配設されている。上記エンジン本体1の各気筒2には、ピストン5が往復摺動可能に挿入されている。ピストン5はコネクティングロッド8を介してクランク軸7と連結されており、上記ピストン5の往復運動に応じて上記クランク軸7が中心軸回りに回転するようになっている。上記ピストン5の上方には燃焼室6が形成され、燃焼室6に吸気ポート9および排気ポート10が開口し、各ポート9,10を開閉する吸気弁11および排気弁12が、上記シリンダヘッド4にそれぞれ設けられている。吸気弁11および排気弁12は、それぞれ、シリンダヘッド4に配設された一対のカムシャフト図示省略等を含む動弁機構13,14によりクランク軸7の回転に連動して開閉駆動される。上記吸気弁11用の動弁機構13には、VVT15が組み込まれている。VVT15は、可変バルブタイミング機構VariableValveTimingMechanismと呼ばれるものであり、吸気弁11の動作タイミングを可変的に設定するための可変機構である。上記VVT15としては、既に様々な形式のものが実用化されて公知であるが、例えば、液圧式の可変機構を上記VVT15として用いることができる。なお、図示は省略するが、この液圧式の可変機構は、吸気弁11用のカムシャフトに対し同軸に配置された被駆動軸と、カムシャフトと被駆動軸の間に周方向に並ぶように配置された複数の液室とを有しており、これら各液室間に所定の圧力差が形成されることにより、上記カムシャフトと被駆動軸との間に位相差が形成されるようになっている。そして、この位相差が所定の角度範囲内で可変的に設定されることにより、吸気弁11の動作タイミングが連続的に変更されるようになっている。なお、上記VVT15として、バルブリフト量を変更することにより吸気弁11の閉時期を変更するタイプの可変機構を設けてもよい。また、このようなリフト式の可変機構と、上述した位相式の可変機構とを組み合わせて用いてもよい。上記エンジン本体1のシリンダヘッド4には、点火プラグ16およびインジェクタ18が、各気筒2につき1組ずつ設けられている。上記インジェクタ18は、燃焼室6を吸気側の側方から臨むように設けられており、図外の燃料供給管から供給される燃料ガソリンを先端部から噴射する。そして、エンジンの吸気行程等において上記インジェクタ18から燃焼室6に対し燃料が噴射され、噴射された燃料が空気と混合されることにより、燃焼室6に所望の空燃比の混合気が生成されるようになっている。上記点火プラグ16は、燃焼室6を上方から臨むように設けられており、図外の点火回路からの給電に応じて先端部から火花を放電する。そして、圧縮上死点圧縮行程と膨張行程の間の上死点の前後に設定された所定のタイミングで上記点火プラグ16から火花が放電され、これをきっかけに混合気の燃焼が開始されるようになっている。上記シリンダブロック3には、上記クランク軸7の回転速度をエンジンの回転速度として検出するエンジン回転速度センサ30が設けられている。また、上記シリンダブロック3には、シリンダブロック3の振動を検出する振動センサ33が設けられている。この振動センサ33による検出値は、エンジンに生じている異常燃焼を検出するために利用される。具体的に、当実施形態では、上記振動センサ33の検出値に基づいて、ノッキングおよびプリイグニッションという2種類の異常燃焼をそれぞれ検出するようにしている。ここで、ノッキングとは、火花点火をきっかけに混合気が燃焼火炎伝播燃焼を開始した後、その火炎が伝播していく過程で、混合気の未燃分エンドガスが自着火してしまう現象である。一方、プリイグニッションとは、火花点火をきっかけにした正常の燃焼開始時期よりも前につまり火花点火とは関係なく、混合気が自着火してしまう現象である。ノッキングまたはプリイグニッションが発生すると、急激な燃焼圧力の変動等に起因して、シリンダブロック3に比較的大きな振動が発生するため、当実施形態では、このようなシリンダブロック3の振動を上記振動センサ33の検出値に基づき調べることにより、ノッキングまたはプリイグニッションを検出するようにしている。上記点火プラグ16には、燃焼室6での混合気の燃焼に伴う火炎を検出するためのイオン電流センサ34が内蔵されている。このイオン電流センサ34は、図2に示すように、点火プラグ16の電極に所定のバイアス電圧例えば100V程度を印加することにより、上記電極周りに火炎が形成されたときに生じるイオン電流を検出するものである。上記イオン電流センサ34を用いて火炎を検出することにより、上記振動センサ33と同じく、プリイグニッションの発生を検出することができる。すなわち、火花点火に基づく火炎伝播により混合気を燃焼させる場合、正常な燃焼状態であれば、火花点火のタイミングから所定の遅れ時間の後に燃焼が開始されるが、プリイグニッションが発生した場合には、火花点火とは関係なく混合気が早期に自着火するため、上記のような正常の燃焼開始時期火花点火から所定の遅れ時間が経過した時点よりも前に燃焼が始まってしまう。そこで、上記イオン電流センサ34により火炎を検出し、その検出タイミング火炎の発生タイミングが正常な燃焼開始時期に比べて早過ぎる場合に、プリイグニッションが発生したと判定する。このように、当実施形態では、プリイグニッションを検出するための検出手段として、イオン電流センサ34と振動センサ33の2種類のセンサを設けている。ただし、上記イオン電流センサ34を用いて検出できるのは、プリイグニッションだけであって、ノッキングは検出することができない。すなわち、ノッキングとは、上述したように、火花点火をきっかけに一旦火炎が発生した後、その伝播の過程で混合気の未燃分エンドガスが自着火してしまう現象であるため、ノッキングが発生しても火炎の発生時期は通常と変わらず、イオン電流センサ34により火炎の発生タイミングを調べたとしても、ノッキングの発生の有無を特定することはできない。このため、ノッキングを検出する際には、振動センサ33の検出値のみが利用され、イオン電流センサ34は用いられない。再び図1に戻って、エンジンの全体構成について説明する。上記エンジン本体1のシリンダブロック3やシリンダヘッド4の内部には、冷却水が流通するウォータジャケット図示省略が設けられており、このウォータジャケット内の冷却水の温度を検出するためのエンジン水温センサ31が、上記シリンダブロック3に設けられている。上記エンジン本体1の吸気ポート9および排気ポート10には、吸気通路20および排気通路21がそれぞれ接続されている。すなわち、燃焼用の空気新気が上記吸気通路20を通じて燃焼室6に供給されるとともに、燃焼室6で生成された既燃ガス排気ガスが上記排気通路21を通じて外部に排出されるようになっている。上記吸気通路20には、エンジン本体1に流入する吸入空気の流量を調節するスロットル弁22と、吸入空気の流量を検出するエアフローセンサ32とが設けられている。上記スロットル弁22は、電子制御式のスロットル弁からなり、運転者により踏み込み操作される図外のアクセルペダルの開度に応じて電気的に開閉駆動される。すなわち、上記アクセルペダルにはアクセル開度センサ35図3が設けられており、このアクセル開度センサ32により検出されたアクセルペダルの開度アクセル開度に応じて、図外の電気式のアクチュエータがスロットル弁22を開閉駆動するように構成されている。上記排気通路21には、排気ガス浄化用の触媒コンバータ23が設けられている。触媒コンバータ23には例えば三元触媒が内蔵されており、排気通路21を通過する排気ガス中の有害成分が上記三元触媒の作用により浄化されるようになっている。2制御系図3は、エンジンの制御系を示すブロック図である。本図に示されるECU40は、エンジンの各部を統括的に制御するための制御手段であり、周知のCPU、ROM、RAM等から構成されている。上記ECU40には、各種センサ類からの検出信号が入力される。すなわち、ECU40は、上記エンジン回転速度センサ30、エンジン水温センサ31、エアフローセンサ32、振動センサ33、イオン電流センサ34、およびアクセル開度センサ35と電気的に接続されており、これら各センサ30~35による検出値として、エンジン回転速度Ne、冷却水温Tw、吸入空気量Qa、振動強度加速度Va、イオン電流値Io、およびアクセル開度ACといった情報が、上記ECU40に逐次入力されるようになっている。また、上記ECU40は、上記VVT15、点火プラグ16、インジェクタ18、およびスロットル弁22とも電気的に接続されており、これらの装置にそれぞれ駆動用の制御信号を出力するように構成されている。上記ECU40が有するより具体的な機能について説明すると、上記ECU40は、その主な機能的要素として、記憶手段41、プリイグ判定手段42、点火制御手段43、噴射制御手段44、吸気制御手段45、および圧縮比制御手段46を有している。上記記憶手段41は、エンジンを制御する際に必要な各種データやプログラムを記憶するものである。その一例として、上記記憶手段41には、図4に示される領域判定マップが記憶されている。この図4の領域判定マップは、横軸をエンジン回転速度Ne、縦軸を負荷Ceとしたときの2次元領域を、プリイグニッションの発生し易さの点から複数の領域に分割したものである。なお、図中のWOTは、エンジンの最高負荷ラインを示している。上記図4の領域判定マップには、プリイグニッションが比較的起き易い領域であるプリイグ領域Rが設定されている。すなわち、プリイグニッションは、火花点火による正常の燃焼開始時期よりも前に混合気が自着火する現象であるから、燃焼室6内の空気が高温高圧化し易い高負荷寄りの運転領域で、比較的プリイグニッションが発生し易い。そこで、図4では、エンジンの最高負荷ラインWOTから下側の所定範囲を、上記プリイグ領域Rとして設定している。上記プリイグ領域Rは、さらに、所定のエンジン回転速度Nex例えば2000rpm程度を境に、第1プリイグ領域R1と、第2プリイグ領域R2とに分けられる。これら各領域R1,R2では、プリイグニッションを引き起す主な原因が異なる。例えば、低回転側に設定された第1プリイグ領域R1でのプリイグニッションは、圧縮により高温高圧化した燃焼室6内の空気から比較的長い期間にわたって燃料が受熱することで引き起こされる。これに対し、第1プリイグ領域R1よりも高回転側に設定された第2プリイグ領域R2では、燃焼室6内の空気から燃料への受熱期間が短くなるため、本来、プリイグニッションは起こり難くなると考えられる。しかしながら、回転速度Neが高いと単位時間あたりの熱発生量が増えるため、ごく稀に、排気弁12の傘部や点火プラグ16の電極等が異常に高温化することがあり、これが熱源ヒートポイントとして作用することで、プリイグニッションが引き起こされることがあり得る。なお、エンジンが冷間状態にあるときエンジンの冷却水温が低いときは、燃焼室6の壁温が低いため、エンジンの高負荷域であっても、そもそもプリイグニッションは起こり得ない。このため、上記のようなプリイグ領域R第1第2プリイグ領域R1,R2を含む領域判定マップが使用されるのは、エンジンの温間時エンジンの冷却水温が高いときのみである。上記プリイグ判定手段42は、上記振動センサ33またはイオン電流センサ34の検出値に基づいて、プリイグニッションの発生の有無を判定するものである。具体的に、上記プリイグ判定手段42は、エンジンが上記第1プリイグ領域R1で運転されている場合に、イオン電流センサ34の検出値イオン電流値Ioに基づき火炎の発生タイミングを特定し、これを正常な燃焼開始時期と比較することで、プリイグニッションが発生しているか否かを判定する。一方、第2プリイグ領域R2で運転されている場合には、上記振動センサ33の検出値振動強度Vaに基づいて振動強度の最大値を調べ、それによってプリイグニッションの発生の有無を判定する詳細は後述する項目3参照。上記点火制御手段43は、エンジンの運転状態に応じ予め定められた所定のタイミングで点火プラグ16の点火回路に給電信号を出力することにより、上記点火プラグ16が火花点火を行うタイミング点火時期等を制御するものである。例えば、エンジンが第1プリイグ領域R1で運転されているとき、上記点火制御手段43は、圧縮上死点よりも少し遅れてから混合気の燃焼が始まるようなタイミングに点火時期を設定する。これは、ノッキングの発生を未然に抑制するための措置である。すなわち、エンジン回転速度Neが低く負荷Ceの高い第1プリイグ領域R1では、プイリグニッションだけでなく、ノッキングも起こり易いことから、このノッキングの発生を未然に抑制するために、点火時期を遅めに設定して、圧縮上死点を過ぎてから燃焼が開始されるようにする。このように、圧縮上死点を過ぎた遅めのタイミングつまり筒内温度圧力がより低下した状態でで燃焼を開始させるようにすれば、その後の燃焼過程において、未燃混合気エンドガスの自着火が起き難くなり、ノッキングが抑制される。一方、上記第1プリイグ領域R1よりも回転速度Neが高い第2プリイグ領域R2でエンジンが運転されているとき、上記点火制御手段43は、圧縮上死点より少し早くから混合気の燃焼が始まるようなタイミングに点火時期を設定する。これは、高回転側では、燃焼途中における未燃混合気エンドガスの自着火が起き難くなり、ノッキングが抑制されることに加えて、火花点火を行ってから、その火花点火をきっかけに混合気が火炎伝播燃焼を開始するまでの実時間着火遅れ時間に対応するクランク角の変化量、つまり火花点火を行った時点のクランク角と着火遅れ時間が経過した時点のクランク角との差が大きいからである。具体的に、上記第1第2プリイグ領域R1,R2において、それぞれ上述したような所望のタイミングで混合気の燃焼を開始させるために、上記点火制御手段43は、第1プリイグ領域R1での点火時期を圧縮上死点以降例えばATDC0~5°CA程度に設定するとともに、第2プリイグ領域R2での点火時期を圧縮上死点より手前例えばBTDC20~1°CA程度に設定する。上記噴射制御手段44は、上記インジェクタ18から燃焼室6に噴射される燃料の噴射量や噴射時期を制御するものである。より具体的に、上記インジェクタ制御手段44は、エンジン回転速度センサ30から入力されるエンジン回転速度Neやエアフローセンサ31から入力される吸入空気量Qa等の情報に基づいて、目標とする燃料の噴射量および噴射時期を演算し、その演算結果に基づいてインジェクタ18の開弁開始時期および開弁期間を制御する。上記吸気制御手段45は、上記スロットル弁22の開度を調節することにより、筒内に導入される空気の量吸入空気量Qaを制御するものである。上記圧縮比制御手段46は、上記VVT15を駆動して吸気弁11の閉時期を変更することにより、エンジンの有効圧縮比を可変的に設定するものである。すなわち、吸気弁11の閉時期は、通常、吸気下死点の遅角側の近傍吸気下死点を少し過ぎたタイミングに設定されており、このようなタイミングに上記閉時期が設定されることで、一旦吸入された空気が吸気ポート9にほとんど吹き返されることがなく、エンジンの実質的な圧縮比有効圧縮比が幾何学的圧縮比とほぼ同じ値に維持される。これに対し、吸気弁11の閉時期が吸気下死点よりも大幅に遅く設定された場合には、エンジンの有効圧縮比が低下し、吸気の吹き返しが起きるようになる。上記圧縮比制御手段45は、VVT15を駆動して上記吸気弁11の閉時期のリタード量遅角量を増減させることにより、エンジンの有効圧縮比を可変的に設定する。3プリイグニッションの判定手法次に、上記プリイグ判定手段42がプリイグニッションの発生を判定する際のより具体的な手順について説明する。まず、イオン電流センサ34を用いたプリイグニッションの検出について説明する。イオン電流センサ34によるプリイグニッションの検出は、プリイグニッションが起きる可能性のあるプリイグ領域Rのうち、低回転側の第1プリイグ領域R1でのみ行われ、高回転側の第2プリイグ領域R2では行われない。図5は、第1プリイグ領域R1でプリイグニッションを検出する手順を説明するための図である。本図において、実線の波形J0は、火花点火IGをきっかけに混合気が正常に燃焼した場合の熱発生率の分布時間変化を示している。この正常燃焼時の波形J0において、イオン電流センサ34で火炎を検出できる程度まで燃焼が進行した時点実質的な燃焼開始時期をt0とすると、この時点t0は、火花点火IGの時点よりも所定のクランク角分だけ遅くなる。ここで、第1プリイグ領域R1では、上述したように、点火プラグ16による火花点火IGのタイミング点火時期が、圧縮上死点TDC以降に設定される。よって、この火花点火IGをきっかけに混合気が正常に火炎伝播燃焼したとすると、そのときの燃焼開始時期t0は、圧縮上死点からさらに遅角側にずれたタイミングとなる。これに対し、第1プリイグ領域R1でプリイグニッションが発生したときの熱発生率の分布は、1点鎖線の波形J1のようになる。このJ1の波形からも明らかなように、プリイグニッションが起きると、火花点火IGとは関係なく混合気が自着火するため、例えば図中の時点t1のような火花点火IGよりも早いタイミングで燃焼が始まるようになり、これに伴って燃焼が急峻化する。一方、図5においてドット柄を付した期間、つまり火花点火IGの直前から火花点火IGより後の所定期間は、火花点火IGを行うために点火プラグ16の電極間の電圧が大きく変動する期間放電期間である。図5の例では、圧縮上死点TDCにほぼ一致するタイミングから所定期間に亘って放電期間が継続しており、この放電期間中は、イオン電流を検出することができない。すなわち、当実施形態では、点火プラグ16に内蔵されたプラグ内蔵型のイオン電流センサ34を用いているため、点火プラグ16の電圧が大きく変動する放電期間中は、たとえ筒内に火炎が形成されたとしても、これをイオン電流として検出することが不可能となる。逆にいえば、この点火プラグ16の放電期間よりも進角側、より具体的には、放電期間の始まりにほぼ一致する圧縮上死点TDCよりも進角側であれば、火炎発生時のイオン電流を検出することができる。そこで、当実施形態では、第1プイリグ領域R1において、圧縮上死点TDCよりも進角側でイオン電流が検出された場合に、プリイグニッションが起きていると判断し、必要な措置を講ずるようにする。一方、第1プリイグ領域R1よりも高回転側の第2プリイグ領域R2では、火花点火IGのタイミングが圧縮上死点TDCよりも進角側に設定され、しかも同一の時間に対するクランク角の変化量が大きいため、図6に示すように、圧縮上死点よりもかなり進角側まで放電期間が拡大する。このため、同図の波形J1に示すように、火花点火IGよりも早くから混合気が自着火するプリイグニッションが起きたとしても、それによる火炎の発生時期時点t1が上記放電期間と重複してしまい、上記火炎の発生をイオン電流として検出することができなくなる。図6の波形J1’のように、プリイグニッションがさらに発展すれば、それに伴う火炎の発生時点t1’をイオン電流として検出することも可能であるが、上記波形J1’のような燃焼波形が生じるということは、かなり重度なプリイグニッションにまで発展しているということであり、ここまで重症化しないとプリイグニッションが検出できないのであれば、イオン電流センサ34を用いる意味がなくなってしまう。このため、当実施形態では、点火時期が圧縮上死点より前に設定される高回転側の第2プリイグ領域R2において、イオン電流センサ34を用いてのプリイグニッションの検出を行わないようにしている。第2プリイグ領域R2では、イオン電流センサ34ではなく、後述する振動センサ33を用いてプリイグニッションを検出する。次に、上記第2プリイグ領域R2で、振動センサ33を用いてプリイグニッションを検出する際の手順について説明する。図7は、プリイグニッションが発生したときの筒内圧力の変化波形Ppを、ノッキングが発生したときの筒内圧力の変化波形Pnと比較して示す図である。上記波形Ppを見ると明らかなように、プリイグニッションが発生した場合には、圧縮上死点の近傍で筒内圧力が大きく上昇するとともに、上昇した圧力が比較的短い期間で収束している。これに対し、ノッキングが発生した場合には、波形Pnに示すように、筒内圧力が急上昇する波形の山部が、プリイグニッションのときよりも遅角側に大きくずれた位置で発生している。すなわち、ノッキングは、火炎伝播による燃焼がある程度進行した時点で、残りの未燃混合気エンドガスが自着火する現象であるため、その自着火による圧力の急上昇が、燃焼過程の終盤で発生することとなり、波形の山部がより遅角側にずれることになる。図8および図9は、プリイグニッションまたはノッキングが発生し、図7に示したような筒内圧力の変化が生じたときに、振動センサ33からどのような振動波形が入力されるかを示している。なお、ここでの振動波形は、上記振動センサ33から入力される振動強度加速度Vaを縦軸に、クランク角CAを横軸にとったものであり、クランク角CAの進行に伴う振動強度Vaの変化を示している。図8および図9の波形を比較すると、プリイグニッション発生時の振動波形図8の方が、ノッキング発生時の振動波形図9と比べて、検出される振動強度Vaの最大値Vmax以下、最大振動強度Vmaxと略称するが大きく、しかもその検出時期が早いことが分かる。これは、図7に示したようなある程度発展したプリイグニッションが起きた場合、ノッキングの場合と比較して、筒内圧力が最も急変する部分波形のピーク部分の変動幅が大きく、しかもそれがかなり進角側圧縮上死点付近で生じているためと考えられる。このように、プリイグニッションがある程度発展した場合には、検出される最大振動強度Vmaxやその検出時期に、比較的明確な特徴が見出されることが分かる。しかしながら、プリイグニッションが十分に発展していない場合には、最大振動強度Vmaxやその検出時期が、ノッキングの場合と大きく変わらないため、単に振動強度Vaの波形を調べただけでは、プリイグニッションとノッキングとを明確に区別して検出できないおそれがある。そこで、当実施形態では、上記第2プリイグ領域R2において振動センサ33から所定の閾値以上の最大振動強度Vmaxが入力され、プリイグニッションまたはノッキングの発生が疑われるような場合に、両者を判別すべく、意図的に点火時期をリタード遅角側に移動させるとともに、その後の最大振動強度Vmaxの変化に基づいて、プリイグニッションまたはノッキングのいずれであるのかを判別するようにしている。具体的に、上記第2プリイグ領域R2では、通常時において、点火時期が圧縮上死点よりも早いタイミングに設定されるが図6参照、上記振動センサ33から所定の閾値以上の最大振動強度Vmaxが入力された場合には、点火時期が上記タイミングに対し所定量リタードされることにより、圧縮上死点の近傍もしくは圧縮上死点よりも遅れたタイミングで火花点火IGが行われるようになる。そして、このような点火時期のリタードに伴い、最大振動強度Vmaxがどのように変化するかが上記プリイグ判定手段42により調べられ、それによってプリイグニッションまたはノッキングのいずれが発生しているのかが判別される。例えば、ノッキングが発生している場合には、上記のように点火時期がリタードされることで、圧縮上死点よりも遅角側でつまり筒内温度圧力がより低下した状態で燃焼が開始されるようになるため、その後の燃焼過程において、未燃混合気エンドガスの自着火は起き難くなる。したがって、ノッキングの発生中に点火時期をリタードさせれば、ノッキングの程度が縮小するとともに、その発生時期が遅れることになる。すると、これに応じて、上記振動センサ33により検出される最大振動強度Vmaxの大きさが低下し、かつ、その検出時期が遅れるという現象が見られる。図8の×マークは、ノッキング発生時に点火時期を徐々にリタードさせることで、上記振動センサ33により検出される最大振動強度Vmaxがどのように変化するかを示している。本図によれば、点火時期のリタードに伴って、最大振動強度Vmaxのプロット×マークが、徐々に右下の方向に移動している。すなわち、点火時期のリタードに伴い、最大振動強度Vmaxの大きさが徐々に低下するとともに、このVmaxが検出された時点のクランク角が徐々に遅角側にずれていくことが分かる。なお、図8における縦軸の値Xは、点火時期をリタードさせるか否かを決定するための閾値であり、この閾値X以上の最大振動強度Vmaxが検出されたときに、点火時期のリタードが行われるようになっている。上記のように、点火時期をリタードさせることで、ノッキングを抑制することは可能であるが、プリイグニッションが発生している場合には、点火時期とは関係なく混合気が自着火するため、点火時期をリタードさせても、依然として自着火は発生し、プリイグニッションは抑制されない。むしろ、時間経過とともにプリイグニッションは徐々に発展していき、それに伴って燃焼開始時期の過早化と燃焼の急峻化を招くことになる。図10において、プリイグニッション発生時の最大振動強度Vmaxを示す△マークが、徐々に左上の方向に移動しているのはこのためである。すなわち、プリイグニッションの発生時には、点火時期の遅角化とは関係なく、最大振動強度Vmaxの大きさが時間経過とともに徐々に増大し、しかもその検出時期が進角していく。以上のことから、プリイグニッションが発生している場合には、点火時期をリタードさせても、最大振動強度Vmaxの増大およびその検出時期の進角化が見られ、ノッキングの発生時には、点火時期のリタードに伴い、最大振動強度Vmaxの低下およびその検出時期の遅角化が見られることが分かる。そこで、当実施形態では、点火時期のリタードに伴う最大振動強度Vmaxの変化ここでは特にその大きさの変化に着目するに基づいて、プリイグニッションまたはノッキングのいずれが発生しているのかを判別するようにしている。これにより、振動センサ33を用いながらも、プリイグニッションかノッキングかを正確に判別することができる。4制御動作次に、以上のような機能を有するECU40による制御動作について、図11~図14のフローチャートに基づき説明する。なお、ここでは、プリイグニッションの検出、およびそれが検出されたときの回避動作を中心に説明する。図11のフローチャートに示す処理がスタートすると、まず、各種センサ値を読み込む制御が実行されるステップS1。具体的には、上記エンジン回転速度センサ30、エンジン水温センサ31、エアフローセンサ32、振動センサ33、イオン電流センサ34、およびアクセル開度センサ35から、それぞれ、エンジン回転速度Ne、エンジン水温Tw、吸入空気量Qa、振動強度Va、イオン電流値Io、およびアクセル開度ACが読み出され、ECU40に入力される。次いで、上記ステップS1で読み込まれたエンジン水温Twが所定の閾値例えば80°C以上か否かに基づいて、エンジンが温間状態にあるか否かが判定されるステップS2。上記ステップS2でYESと判定されて温間状態であることが確認された場合には、さらに、現在のエンジンの運転ポイントエンジンの回転速度Neおよび負荷Ceが、図4に示したプリイグ領域R内にあるか否かが判定されるステップS3。具体的には、上記ステップS1で読み込まれたエンジン回転速度Neと、吸入空気量Qaまたはアクセル開度ACから演算されるエンジン負荷Ceとに基づき、現在のエンジンの運転ポイントが図4の領域判定マップ上で特定され、それがプリイグ領域R内にあるか否かが判定される。上記ステップS3でNOと判定されてプリイグ領域Rから外れていることが確認された場合には、プリイグニッションは起こり得ないため、後述するステップS9,S14,S16の制御プリイグ回避制御や復帰制御が必要になることはなく、通常の運転が維持されるステップS18。すなわち、燃料の噴射量や噴射時期、吸気弁11の動作タイミング等が、運転状態に応じて予め定められた通常の目標値に沿って制御される。一方、上記ステップS3でYESと判定されてプリイグ領域Rにあることが確認された場合には、上記ステップS1で読み込まれたエンジン回転速度Neが、予め設定された閾値Nexよりも低いか否かを判定する制御が実行されるステップS4。ここでの閾値Nexは、図4に示したように、第1プリイグ領域R1と第2プリイグ領域R2との境界回転速度である。つまり、上記ステップS4の判定は、現在のエンジンの運転状態が第1および第2プリイグ領域R1,R2のいずれにあるかを判定するものである。上記ステップS4でYESと判定されてエンジン回転速度Ne<Nexであることが確認された場合、つまり、エンジンの運転状態が第1プリイグ領域R1にあることが確認された場合には、点火プラグ16による火花点火のタイミング点火時期を、圧縮上死点以降に設定する制御が実行されるステップS5。また、これと合わせて、上記第1プリイグ領域R1では、燃料の噴射時期を分割し、噴射すべき燃料の一部を圧縮行程噴射する制御が実行されるステップS6。すなわち、図17に示すように、第1プリイグ領域R1以外のほとんどの領域では吸気行程中に全ての燃料が噴射されるところ同図aのF参照、上記第1プリイグ領域R1では、噴射すべき燃料の一部の噴射時期が圧縮行程の中期以降にリタードされることにより、吸気行程と圧縮行程とに分割して燃料が噴射される同図bのF1,F2参照。上記のような一部燃料の圧縮行程噴射分割噴射は、プリイグニッションがより起き易い上記第1プリイグ領域R1で、プリイグニッションの発生を未然に防止するために行われる。すなわち、低回転かつ高負荷域に設定された上記第1プリイグ領域R1は、噴射される燃料の量が多い上に、燃料の受熱期間燃料が高温高圧環境下に晒される実時間が相対的に長いため、最もプリイグニッションが起き易い環境であるといえる。そこで、上記第1プリイグ領域R1において、噴射すべき燃料の一部を圧縮行程の中期以降に噴射する分割噴射を実行し、圧縮上死点付近での筒内温度を低下させることにより、プリイグニッションが発生する可能性を予め低減させるようにしている。ただし、後述するステップS11からも明らかなように、上記のような一部燃料の圧縮行程噴射分割噴射は、第1プリイグ領域R1でのみ実行され、これよりも高回転側の第2プリイグ領域R2では実行されない。これは、第2プリイグ領域R2で発生するプリイグニッションは、高温化した排気弁12の傘部や点火プラグ16の電極等を熱源として起きるものであり、このような熱源の存在に起因したプリイグニッションは、例えばアクセル全開での高速運転がかなりの長時間に亘って継続されるといった特殊な事情でもない限り、あまり想定されないものである。このため、第2プリイグ領域R2では、プリイグニッションの未然防止のために上記のような燃料の分割噴射ステップS6を実行する必要性が相対的に低く、このような事情から、燃料の分割噴射は、低回転側の第1プリイグ領域R1でのみ実行され、高回転側の第2プリイグ領域R2では実行されない。上記のように第1プリイグ領域R1で燃料の分割噴射が開始されると、その後は、イオン電流センサ34を用いてプリイグニッションを検出する制御が実行されるステップS7。すなわち、上記イオン電流センサ34から入力されるイオン電流値Ioに基づき火炎が検出されるとともに、その検出タイミング燃焼開始時期が、火花点火よりも進角側に設定された所定時期よりも早いか遅いかが調べられる。そして、火炎の検出タイミングが上記所定時期よりも早ければプリイグニッションが発生していると判定され、それ以外の場合はプリイグニッションが発生していないと判定されるステップS8。なお、当実施形態では、図5に示したように、第1プリイグ領域R1での火花点火IGのタイミングが圧縮上死点TDC以降に設定されており、圧縮上死点よりも遅れたタイミングで混合気の燃焼が開始されるため、上記ステップS8では、火炎の検出タイミングが圧縮上死点よりも早ければ、プリイグニッションが発生していると判定される。上記ステップS8でYESと判定された場合、つまり第1プリイグ領域R1でプリイグニッションの発生が確認された場合には、これを回避するための制御として、第1プリイグ回避制御が実行されるステップS9。図12は、上記第1プリイグ回避制御の具体的内容を示すサブルーチンである。この第1プリイグ回避制御がスタートとすると、まず、現在設定されている吸気弁11の閉時期IVCが、後述するステップS21で最大限にリタードされたときの閉時期最遅時期であるTxよりも早いか否かを判定する制御が実行されるステップS20。なお、ここでの判定閾値である最遅時期Txは、吸気の吹き返しが起きてエンジンの有効圧縮比が幾何学的圧縮比に対し十分に低下するような時期例えば吸気下死点の通過後110°CA程度に設定されている。上記第1プリイグ領域R1では、当初、吸気弁11の閉時期が、吸気の吹き返しが起きないような時期として、例えば吸気下死点の通過後ABDC30°CA前後に設定されている。このため、上記ステップS20での最初の判定は当然にNOとなり、次のステップS21に移行して、吸気弁11の閉時期をリタードさせる制御が開始される。具体的には、吸気弁11の動作タイミングが遅れる方向にVVT15が駆動されることにより、吸気弁11の閉時期が現在の設定値よりも所定量リタードされ、エンジンの有効圧縮比が下げられる。これにより、主に圧縮端圧力圧縮上死点付近での筒内圧力が低下し、プリイグニッションの抑制が図られる。ここで、吸気弁11の閉時期をリタードさせて有効圧縮比を低下させる上記のような制御には、ある程度の応答遅れが伴う。すなわち、有効圧縮比を低下させるには、VVT15可変バルブタイミング機構を用いた機械的な動作により徐々に吸気弁11の動作タイミングを変更し、その閉時期を、上記有効圧縮比の低下量に応じた所定の目標時期までリタードさせる必要がある。このため、吸気弁11の閉時期を目標時期までリタードさせて有効圧縮比を所望の量だけ低下させるのには、ある程度の時間が必要になる。そこで、続くステップS22では、上記有効圧縮比の低下制御吸気弁の11の閉時期のリタードが完了するまでの間におけるプリイグニッションの抑制効果を担保すべく、筒内の空燃比を一時的にリッチにする制御が実行される。具体的には、インジェクタ18からの燃料の噴射量が増大されることにより、筒内の混合気の空燃比が、噴射量の増大前よりもリッチでかつ理論空燃比よりもリッチな値に設定される。空燃比が理論空燃比よりもリッチになると、燃料の気化潜熱による冷却効果が高まって筒内温度が低下するため、燃料の受熱量が減少し、プリイグニッションの発生が抑制される。なお、空燃比をリッチ化するには、インジェクタ18の開弁期間燃料の噴射時間を長くするだけでよいため、特に応答遅れもなく瞬時に対応することができる。上記第1プリイグ領域R1では、プリイグニッションが起きていない通常時、筒内の空燃比が理論空燃比14.7程度に設定されている。このため、上記ステップS12での空燃比のリッチ化により、筒内の空気過剰率λ、つまり、燃焼室6に形成される混合気の空燃比実空燃比を理論空燃比で割った値は、1から1未満の所定値λ<1にまで低下することになる。例えば、上記ステップS12の制御により、空気過剰率λは、0.75程度空燃比で約11にまで下げられる。上記のようにして空燃比がリッチ化されると、その後は、吸気弁11の閉時期のリタードが完了したか否か、つまり、上記VVT15の作動によりリタードされた吸気弁11の閉時期が目標時期まで到達したか否かが判定されるステップS23。なお、ここでの判定は、実際にVVT15の動作角度を検出し、その角度に基づいて判定するものであってもよいし、予め実験等により求めておいた所要時間が経過したか否かをタイマー等を用いて判定するものであってもよい。上記ステップS23の後は、そこでYESと判定されるIVCのリタードが完了するのを待ってから、空燃比のリッチ化を解除する制御が実行されるステップS24。すなわち、インジェクタ18からの燃料噴射量が低減されることにより、筒内の空燃比が理論空燃比程度に戻される。これにより、空気過剰率λは、上記リッチ化後の値例えば0.75程度から、λ=1にまで増加することになる。なお、当実施形態のような直噴式の多気筒ガソリンエンジンでは、インジェクタ18からの燃料噴射量を気筒別に制御することで、各気筒2の空燃比を、気筒2ごとに個別に設定することが可能である。このため、上記空燃比のリッチ化およびその解除ステップS22,S24は、気筒2ごとに独立して実施することも可能であるし、全気筒2を対象に実施することも可能である。なお、前者の場合は、ある気筒でプリイグニッションが検出されると、その気筒の空燃比のみをリッチ化することを意味し、後者の場合は、1つの気筒でプリイグニッションが検出されると、他の気筒でも同様に空燃比をリッチ化するつまり他の気筒ではプリイグニッションの有無にかかわらず空燃比をリッチ化することを意味する。例えば、吸気弁11の閉時期を目標時期までリタードさせるのに要する所要時間が、1燃焼サイクルよりも長く2燃焼サイクルよりも短いと仮定する。このようなケースで、気筒2ごとに独立して空燃比をリッチ化させた場合には、ある気筒でのプリイグニッションの発生をきっかけに、そのプリイグニッションが発生した気筒以下、プリイグ発生気筒というでの次回の燃焼時に当該気筒の空燃比がリッチ化され、そのリッチ化が、上記プリイグ発生気筒での次々回の燃焼時には解除されることになる。一方、全気筒2を対象に空燃比をリッチ化させた場合には、ある気筒でのプリイグニッションの発生をきっかけに、そのプリイグ発生気筒よりも燃焼順序が遅い気筒から順番に空燃比のリッチ化が実施される。そして、少なくともプリイグ発生気筒の次回の燃焼までは各気筒のリッチ化が継続され、プリイグ発生気筒の次々回の燃焼までには上記リッチ化が解除される。このとき、リッチ化の順番が後の気筒ほど有効圧縮比が低下しているため、順番が進むにつれてリッチ化の幅を小さくするようにしてもよい。上記ステップS24の制御リッチ化の解除が終了すると、その後は、プリイグ回避制御の実行/非実行を記録するためのフラグFFそのデフォルト値は0に、当該制御が実行中であることを表す1が入力されステップS25、図11のメインフローにリターンされる。以上説明したようなステップS20~S25の制御第1プリイグ回避制御は、プリイグニッションが回避されるまでつまり図11のステップS8でNOと判定されるまで繰り返し実行される。そして、このような制御の繰り返しにより、吸気弁11の閉時期が段階的にリタードされ、それに伴って有効圧縮比も段階的に低下していく。例えば、吸気弁11の閉時期の1回あたりのリタード幅が常に2°CAに設定されるものとすると、上記プリイグ回避制御が実行されることで、吸気弁11の閉時期は、現在の設定値に対しまず2°CAだけリタードされ、それでもプリイグニッションを回避できない場合に、さらに2°CAだけリタードされる。そして、このような2°CA刻みのリタードが、吸気弁11の閉時期が上記最遅時期Txに達しない範囲で継続される後述する図15のタイムチャート参照。逆に、最遅時期Txに達する前にプリイグニッションが回避されれば、その時点でリタードは停止される。すなわち、プリイグニッションの発生時において、吸気弁11の閉時期は、少なくとも1回はリタードされ、そこでプリイグニッションが回避されなければ、リタードが繰り返されることにより、初期状態からのリタード幅が段階的に増大されていく。また、吸気弁11の閉時期をリタードする際には、その都度、空燃比をリッチ化する制御が併せて実行され、上記リタード制御の応答遅れが毎回カバーされるようになっている。なお、上記のような吸気弁11の閉時期のリタードおよび空燃比のリッチ化は、上記吸気弁11の閉時期が最遅時期Txに達する前にプリイグニッションが回避されれば、その時点で停止される。上記ステップS21で吸気弁11の閉時期が最遅時期Txまでリタードされた後、なおもプリイグニッションが継続して起きる場合には、上記ステップS20でNOと判定される。すると、その後は、エンジンが異常であることを運転者等に報知する所定の警告が発せられるとともにステップS26、エンジンの出力トルクを大幅に低下させる制御が実行されるステップS27。すなわち、吸気弁11の閉時期を最遅時期Txまでリタードさせてもつまりエンジンの有効圧縮比を最大限に低下させても、なおもプリイグニッションが継続するという状態は、例えばエンジンの冷却系の故障等によりエンジンが異常に高温になっていることが考えられるため、これ以上通常の運転を継続することは困難である。そこで、異常を報知する警告が発せられるとともに、エンジンの損傷を最小限に抑えるために、大幅なトルクダウンが図られる。なお、ここでのトルクダウンは、エンジンの出力トルクを大幅に低下させ得るものであればよく、その具体的な内容は特に問わない。例えば、吸気弁11の閉時期を上記最遅時期Txよりもさらに遅い時期までリタードさせて、エンジンの有効圧縮比を大幅に低下させてるものであってもよいし、後述する第2プリイグ回避制御と同様、燃料の噴射量および吸入空気量を大幅に低減させるものであってもよい。上記ステップS26,S27の制御が実行されると、その後は、比較的低速での巡航運転のみを許容する急加速や高速運転を禁止する非常モードに移行する。すなわち、ここではエンジンに異常が生じている可能性が極めて高く、エンジンの損傷がそれ以上進行することを防止する必要があることから、上記ステップS27の制御により出力トルクを大幅に低下させた状態での運転が継続され、所定の点検サービスを受けるまで通常の制御に復帰することはない。図15は、上記プリイグ回避制御の実行時に、有効圧縮比の低下制御を複数回実行しなければプリイグニッションが回避されなかったと仮定した場合に、空気過剰率λ、吸気弁11の閉時期IVC、およびスロットル弁22の開度スロットル開度が、時間経過に応じてそれぞれどのように変化するかを示すタイムチャートである。本図からも理解できるように、プリイグニッションが発生すると、吸気弁11の閉時期IVCが段階的に例えば2°CAずつリタードされ、それに伴ってエンジンの有効圧縮比が所定量ずつ下げられる。また、各回のIVCのリタード有効圧縮比の低下と併せて、一時的に空燃比をリッチ化する制御が実行される。つまり、IVCが目標時期に到達するまでの過渡期IVCが右上がりに傾斜している区間に限り、空気過剰率λが1から1未満の所定値にまで下げられる。これにより、空燃比は、リッチλ<1になったり理論空燃比程度λ=1になったりを繰り返すことになる。なお、上記空燃比のリッチ化は、筒内に導入される空気の量吸入空気量Qaはそのままに、インジェクタ18からの燃料の噴射量を増大させることによって行われる。このため、空燃比のリッチ化のためにスロットル開度が変更されることはなく、例えば図示のような一定の開度に維持される。次に、上記第1プリイグ回避制御図12、図15が実行された結果、プリイグニッションが回避された場合の制御動作について説明する。この場合には、図11のステップS8でNOと判定されるため、次のステップS15でフラグFFが1であるか否かが判定される。上記第1プリイグ回避制御が実行中のときはフラグFF=1であるため、上記ステップS15での判定はYESとなり、その結果、次のステップS16で、上記プリイグ回避制御を解除して通常運転に復帰するための復帰制御が実行される。上記復帰制御では、図15に示した第1プリイグ回避制御のときとは逆に、吸気弁11の閉時期IVCを段階的にアドバンス進角させることにより、有効圧縮比を所定量ずつ上昇させる制御が実行される。そして、IVCがアドバンスされる度に、プリイグニッションの発生の有無が確認され、プリイグニッションが発生していなければ、さらにIVCがアドバンスされる。そして、このような段階的なIVCのアドバンスが、吸気弁11の閉時期が通常時期吸気の吹き返しが起きないような時期に達して有効圧縮比が幾何学的圧縮比と略一致するまで継続される。なお、このような復帰制御のときの空燃比は、理論空燃比もしくはその近傍値に維持される。次に、上記ステップS4でNOと判定されてエンジン回転速度Ne≧Nexであることが確認された場合、つまりエンジンの運転ポイントが第2プリイグ領域R2にあることが確認された場合の制御動作について説明する。この場合は、次のステップS10において、点火プラグ16による火花点火のタイミング点火時期を、圧縮上死点よりも前に設定する制御が実行されるステップS10とともに、インジェクタ18からの燃料の噴射時期を吸気行程中に設定する制御が実行されるステップS11。次いで、振動センサ33を用いてプリイグニッションを検出する制御が実行されるステップS12。図13は、このステップS12によるプリイグニッションの検出制御の具体的内容を示すサブルーチンである。このサブルーチンがスタートすると、メインフロー図11のステップS1で振動センサ33から読み込まれた振動強度Vaの情報に基づいて、その最大値最大振動強度Vmaxを取得し、これをVmax1として記憶する制御が実行されるステップS30。そして、記憶された最大振動強度Vmax1が、予め定められた閾値X図10参照以上であるか否かが判定されるステップS31。上記ステップS31でNOと判定されて最大振動強度Vmax1が閾値Xよりも小さいことが確認された場合には、プリイグニッションまたはノッキングのいずれもが発生していないと考えられるため、異常燃焼フラグFabnrmに、燃焼状態が正常であることを表す0を入力する制御が実行されるステップS40。一方、上記ステップS31でYESと判定されて最大振動強度Vmax1≧閾値Xであることが確認された場合には、後述するステップS34で行われる点火時期のリタードの回数をカウントするための変数リタード回数Nrに1を入力する制御が実行されるとともにステップS32、このリタード回数Nrが予め定められた規定回数Nrxよりも小さいか否かが判定されるステップS33。この規定回数Nrxは、点火リタードの上限回数を規定するための自然数であり、例えば2~10の間の適宜の値に設定される。上記のようにVmax1≧Xが確認された直後、リタード回数Nrは1とされるため、上記ステップS33での最初の判定は当然にYESとなる。すると、次のステップS34に移行して、点火時期を所定量リタードさせる制御が実行されるステップS7。上述したように、第2プリイグ領域R2での通常の点火時期は、圧縮上死点よりも少し早いタイミング例えばBTDC20~1°程度に設定されるため、上記点火時期のリタードにより、点火時期は、圧縮上死点の近傍もしくは圧縮上死点より遅角側に移動することになる。上記のようにして点火時期のリタードが行われると、そのリタード後の状態で振動センサ33から入力される情報から最大振動強度Vmaxを取得するとともに、その値をVmax2として記憶する制御が実行されるステップS35,S36。そして、ここで記憶された最大振動強度点火リタード後の最大振動強度Vmax2が上記閾値X以上であるか否かが再び判定されるステップS37。上記ステップS37でYESと判定された場合、つまり、点火リタード後の最大振動強度Vmax2≧閾値Xであることが確認された場合には、点火時期を遅角させても最大振動強度Vmaxが低下していないことになるので、プリイグニッションが発生していることが疑われる。すなわち、図10において△マークで示したように、プリイグニッションが発生している場合には、点火時期を遅角させてもプリイグニッションは抑制されず、最大振動強度Vmaxが増大していくので、上記のように点火リタード後の最大振動強度Vmax2がなおも閾値X以上の高い値を保っている場合には、プリイグニッションが発生している可能性がある。しかしながら、何らかの突発的な原因により、上記最大振動強度Vmax2が閾値X以上になっていることもあり得る。そこで、当実施形態では、上記のようにVmax2≧Xの関係が1回確認されただけでは直ちにプリイグニッションとは判定せず、それが複数回規定回数Nrx続けて確認された時点で初めて、プリイグニッションが発生していると判定する。上述したように、エンジン回転速度Neが比較的高い上記第2プリイグ領域R2では、低速側の第1プリイグ領域R1と比べてプリイグニッションの発生確率が低く、また、後述するように、仮にプリイグニッションの発生が確定すると、その後の第2プリイグ回避制御によって速やかにエンジンの出力トルクが大幅ダウンされ、通常の運転が不可能な状態になる。そこで、第2プリイグ領域R2では、プリイグニッションの判定により慎重を期すべく、Vmax2≧Xの関係が複数回確認されて初めてプリイグニッションと判定するようにしている。具体的に、当実施形態では、上記ステップS37でVmax2≧Xの関係が確認されるたびに、リタード回数Nrが1ずつインクリメントされステップS41、その回数Nrが上記規定回数Nrxに達するまで、点火時期のリタードとその後の最大振動強度Vmax2の比較ステップS34~S37とが繰り返される。そして、全ての回数においてVmax2≧Xであることが確認され、リタード回数NrがNrxに達した時点つまりステップS33でNOと判定された時点で、異常燃焼フラグFabnrmに、プリイグニッションが発生していることを表す1を入力する制御が実行されるステップS39。一方、上記点火時期のリタードが繰り返される過程で、上記閾値Xよりも小さい最大振動強度Vmax2が1回でも確認され、上記ステップS37での判定がNOとなると、その時点で、プリイグニッションではなくノッキングと判定される。すなわち、図10において×マークで示したように、ノッキングの発生時は、点火時期のリタードに伴い最大振動強度Vmaxが低下するので、上記のような現象Vmax2<Xが見られた場合には、直ちにノッキングが発生していると判定され、上記異常燃焼フラグFabnrmに、ノッキングが発生していることを表す2を入力する制御が実行されるステップS38。なお、上記ステップS34の点火時期のリタードは、それが繰り返されるたびにリタード回数Nrがインクリメントされるたびに、通常時の点火時期に対しリタード幅を徐々に増大させるものであってもよいし、通常時の点火時期に対し常に一定量だけリタードさせるものであってもよい。以上のように、図13のフローチャートでは、エンジンの運転状態が第2プリイグ領域R2にあるときに、振動センサ33の検出値に基づいてプリイグニッションまたはノッキングが発生しているか否かが判定され、その結果に応じて、異常燃焼フラグFabnrmに、0正常、1プリイグニッション、2ノッキングのいずれかの値が入力される。再び図11に戻って、上記振動センサ33を用いたプリイグニッションの検出ステップS12が終了した後の制御動作について説明する。上記プリイグニッションの検出図13に示したような振動強度に基づく解析が終了すると、それによってプリイグニッションが確認されたか否か、つまり上記異常燃焼フラグFabnrmの値が1であるか否かが判定されるステップS13。上記ステップS13でNOと判定されてプリイグニッションが発生していないことが確認された場合には、通常運転へと移行することになるステップS18。なお、図11はプリイグニッションに関する制御を中心に説明するものであるため、本図には表していないが、上記振動センサ33を用いたプリイグニッションの検出ステップS12の結果、プリイグニッションではなくノッキングが検出された場合つまりFabnrm=2の場合には、ノッキングを回避するための制御として、点火時期をリタードさせる制御が実行される。また、図11では省略しているが、振動センサ33を用いたノッキングの検出は、上記第2プリイグ領域R2だけでなく、全ての運転領域で継続的に行われている。このため、第2プリイグ領域R2以外でも、振動センサ33によってノッキングが検出された場合には、点火時期を通常の設定値よりもリタードさせる制御が適宜実行されるようになっている。次に、上記ステップS13でYESと判定された場合、つまり、上記振動センサ33により第2プリイグ領域R2でプリイグニッションが検出された場合の制御動作について説明する。このように、第2プリイグ領域R2でプリイグニッションが検出された場合には、これを回避するための制御として、上記第1プリイグ回避制御S9とは異なる第2プリイグ回避制御が実行されるステップS14。図14は、上記第2プリイグ回避制御の具体的内容を示すサブルーチンである。この第2プリイグ回避制御がスタートすると、直ちに、筒内の空燃比をリッチ化する制御が実行されるステップS50。このステップS50の制御は、上記第1プリイグ回避制御時におけるステップS22と異なり、インジェクタ18からの燃料の噴射量を低減させつつ筒内の空燃比をリッチ化するというものである。すなわち、上記第1プリイグ回避制御のときは、インジェクタ18からの燃料の噴射量を増大させることにより筒内の空燃比をリッチ化したがステップS22、第2プリイグ回避制御において実行される上記ステップS50では、インジェクタ18からの燃料の噴射量を低減させながらも、スロットル弁22を閉方向に駆動して筒内への吸入空気量Qaを大幅に低減させることにより、筒内の空燃比を、上記噴射量の低減前よりもリッチでかつ理論空燃比よりもリッチな値に設定する。なお、上記第2プリイグ領域R2では、プリイグニッションが起きていない通常時に、筒内の空燃比が理論空燃比程度空気過剰率λ=1に設定されている。このため、上記ステップS50の制御が実行されることで、空気過剰率λは、1から例えば0.75程度空燃比で約11にまで下げられる。上記のように、ステップS50でインジェクタ18からの燃料噴射量を低減させることにより、その噴射燃料に基づく混合気が筒内で燃焼したときに、当該燃焼に伴い発生する熱量燃焼熱量が低下する。また、これに合わせて吸入空気量Qaが大幅に低減され、空燃比が理論空燃比よりもリッチに設定されることにより、燃料の気化潜熱による冷却効果がより高められる。そして、これらの相乗効果により、筒内温度が大幅に低下して、プリイグニッションが速やかに回避されることになる。ここで、上記ステップS50の制御燃料噴射量を低減させつつ空燃比をリッチ化する制御は、1回限りとされる。つまり、燃料噴射量を段階的に低減させるようなことはせず、1回の制御で大幅に一気に燃料噴射量を低減させる。具体的に、燃料噴射量の低減幅は、エンジンの出力トルクが50以上低下するような値に設定される。上記ステップS50による出力トルクの低下割合50以上は、上述した第1プリイグ制御で有効圧縮比を1回低下させることに伴う出力トルクの低下割合よりも大幅に大きいものである。すなわち、上記第1プリイグ回避制御では、有効圧縮比を段階的に低下させるために、吸気弁11の閉時期を段階的にリタードさせたが、このときのリタード幅は、例えば1回あたり2°CA程度の小さい値に設定される。このため、有効圧縮比の低下制御吸気弁11の閉時期のリタードが1回実施されても、エンジンの出力トルクは1~2程度しか低下しない。これに対し、上記第2プリイグ回避制御ステップ50では、インジェクタ18からの燃料噴射量が大幅に低減されるため、その1回の制御によって、エンジンの出力トルクは50以上も低下する。上記ステップS50の制御が終了すると、エンジンの異常を報知するための所定の警告処理が実行されステップS51、その後、比較的低速での巡航運転のみを許容する急加速や高速運転を禁止する非常モードに移行する。すなわち、回転速度Neが高く本来はプリイグニッションが起き難いはずの第2プリイグ領域R2でプリイグニッションが検出され、それに伴い出力トルクが大幅ダウンされたということは、エンジンに異常が生じている可能性が極めて高いといえる。そこで、エンジンの損傷がそれ以上進行することを防止すべく、上記のように出力トルクを大幅に低下させた状態での運転を継続し、所定の点検サービスを受けるまで通常の制御に復帰させることはしない。5作用効果等以上説明したように、当実施形態の火花点火式エンジンでは、イオン電流センサ31または振動センサ33の検出値に基づくプリイグニッションの検出が、回転速度Ne<Nexという低回転側の第1プリイグ領域R1でなされたか、これよりも高回転側の第2プリイグ領域R2でなされたかに応じて、第1および第2プリイグ回避制御のいずれかが選択的に実行される。このうち、回転速度Ne<Nexの第1プリイグ領域R1でプリイグニッションが検出された場合に選択される第1プリイグ回避制御では、VVT15可変機構を駆動して吸気弁11の閉時期をリタードさせことにより、エンジンの有効圧縮比を低下させる制御が実行される。一方、回転速度Ne≧Nexの第2プリイグ領域R2でプリイグニッションが検出された場合に選択される第2プリイグ回避制御では、インジェクタ18からの燃料噴射量を低減させることにより、筒内の燃焼熱量混合気の燃焼に伴い発生する熱量を低下させる制御が実行される。このような構成によれば、プリイグニッションの性質に応じた有効な対策を選択的に講じることにより、適正かつ確実にプリイグニッションを抑制できるという利点がある。すなわち、上記実施形態では、エンジン回転速度Neが閾値Nex未満という条件でプリイグニッションが検出された場合に、有効圧縮比を低下させる制御第1プリイグ回避制御が実行され、主に圧縮端圧力圧縮上死点付近での筒内圧力の低下が図られることにより、混合気が自着火し難い環境がつくり出されるため、プリイグニッションの発生を効果的に抑制することができる。一方、エンジン回転速度Neが閾値Nex以上のときのプリイグニッション、つまり、燃料の受熱期間燃料が高温高圧環境下に晒される実時間が短く本来は自着火しにくい条件下で起きるプリイグニッションは、高温化した排気弁12や点火プラグ16等が熱源となって起きるものと考えられるため、仮に有効圧縮比を下げて圧縮端圧力を低下させても、上記熱源の温度にあまり影響せず、十分なプリイグニッションの抑制につながらない。そこで、このような性質のプリイグニッションの発生時には、有効圧縮比を低下させるのではなく、筒内の燃焼熱量そのものを低下させる制御第2プリイグ回避制御を実行するようにした。これにより、筒内温度が確実に低下し、プリイグニッションの原因となる熱源が冷却されるため、プリイグニッションを効果的に抑制することができる。特に、上記実施形態では、第1プリイグ回避制御時に有効圧縮比を所定量低下させた後、なおもプリイグニッションが検出された場合に、有効圧縮比をさらに所定量低下させることにより、有効圧縮比を段階的に低下させるようにした。一方、第2プリイグ回避制御では、筒内の燃焼熱量を低下させる制御を1回限り実行し、それに伴うエンジントルクエンジンの出力トルクの低下割合を、上記第1プリイグ回避制御で有効圧縮比を1回低下させたときのエンジントルクの低下割合よりも大幅に大きい50以上に設定した。このような構成によれば、エンジン低速側でプリイグニッションが発生したときの出力トルクの低下が最小限に抑えられる一方、エンジン高速側でプリイグニッションが発生したときのフェイルセーフ機能異常時の安全対策を的確に発揮させることができる。すなわち、エンジン回転速度Neが比較的低いときのプリイグニッションは、混合気の自着火が起きないように少しでも筒内環境を改善すれば回避される可能性があるため、このようなプリイグニッションに対する対応策である上記第1プリイグ回避制御では、有効圧縮比を段階的に少量ずつ低下させることにより、プリイグニッションを回避し得る最小限の量だけ有効圧縮比を低下させるようにした。これにより、エンジントルクの低下割合をできるだけ小さく抑えながら、プリイグニッションを効果的に抑制することができる。一方、エンジン回転速度Neが比較的高いときのプリイグニッションは、異常に高温化した排気弁12や点火プラグ16等が熱源となって起きるものであり、速やかに筒内を冷却しなければプリイグニッションを回避できない性質のものである。そこで、このようなプリイグニッションに対する対応策である上記第2プリイグ回避制御では、エンジントルクが50以上も低下するまで筒内の燃焼熱量を大幅に低下させるようにした。これにより、筒内温度が速やかに低下するため、プリイグニッションを確実に回避することができ、エンジンの損傷を最小限に抑えることができる。また、上記実施形態では、第2プリイグ回避制御の実行時に、燃焼熱量を低下させるためにインジェクタ18からの燃料噴射量を低減させるとともに、その低減後の筒内の空燃比が低減前よりもリッチになるように、筒内に導入される吸入空気量Qaを低減させるようにした。このような構成によれば、空燃比のリッチ化によって燃料の気化潜熱による冷却効果が高められるため、筒内温度をより効果的に低下させることができ、プリイグニッションをより確実に回避することができる。また、上記実施形態では、第1プリイグ領域R1でプリイグニッションが検出された場合に、吸気弁11の閉時期をリタードさせて有効圧縮比を所定量低下させる制御が実行されるだけでなく、その制御が完了するまでの過渡期に、筒内の空燃比を一時的にリッチにする制御が実行される。このような構成によれば、有効圧縮比を低下させる制御の応答遅れにかかわらず、プリイグニッションを迅速かつ効果的に抑制できるという利点がある。すなわち、上記実施形態では、有効圧縮比を低下させる制御が完了するまでの過渡期に、筒内の空燃比を一時的にリッチにすることにより、有効圧縮比を低下させ始めてから実際に有効圧縮比を所定量低下させるまでの間に応答遅れによる時間が必要であったとしても、その応答遅れの期間中は、空燃比のリッチ化による冷却効果が働くため、上記のような制御の応答遅れにかかわらず、プリイグニッションの抑制を迅速に図ることができる。そして、有効圧縮比が実際に所定量低下し、それに伴って圧縮端圧力圧縮上死点付近での圧力が下がれば、その状態で空燃比のリッチ化を解除することにより、プリイグニッションの抑制効果を担保しながら、必要以上の時間に亘って空燃比がリッチ化されることを回避して、燃費およびエミッション性の悪化を最小限に抑えることができる。なお、上記実施形態では、エンジン回転速度Neが比較的高い第2プリイグ領域R2でプリイグニッションが検出されたときに、これを抑制するための第2プリイグ回避制御として、インジェクタ18からの燃料噴射量を低減させることにより、筒内の燃焼熱量混合気の燃焼に伴い発生する熱量を低下させる制御を実行するようにしたが、上記第2プリイグ回避制御は、筒内の燃焼熱量を低下させ得るものであればよく、そのための制御は他にも考えられる。例えば、インジェクタ18から噴射される燃料にある種の添加剤を加えることによって、燃焼熱量を低下させるようにしてもよい。また、上記実施形態では、エンジン回転速度Neが比較的低い第1プリイグ領域R1で、プリイグニッションを検出するための検出手段としてイオン電流センサ34を用い、エンジン回転速度Neが比較的高い第2プリイグ領域R2では、プリイグニッションを検出するための検出手段として振動センサ33を用いるようにしたが、低速側の第1プリイグ領域R1については、イオン電流センサ34だけでなく、振動センサ33を用いてプリイグニッションを検出してもよい。具体的に、上記第1プリイグ領域R1でイオン電流センサ34および振動センサ33の両方を用いてプリイグニッションを検出する制御は、次のようにして行う。まず、図11のステップS7,S8と同様に、イオン電流センサ34による火炎の検出タイミングに基づいてプリイグニッションの発生の有無を判定する。このとき、プリイグニッションの発生が確認されなかったとしても、図13で説明したように、振動センサ33によって最大振動強度Vmaxを取得し、それが閾値X以上か否かを調べる。そして、閾値X以上であれば、点火時期をリタードさせてその後の最大振動強度を調べ、その結果の如何によってプリイグニッションの発生の有無を判定する。このように、イオン電流センサ34によってプリイグニッションが検出されなくても、さらに振動センサ33を用いてプリイグニッションの有無を確認するようにした場合には、プリイグニッションの検出精度をより高めることができる。また、上記実施形態では、低回転かつ高負荷の第1プリイグ領域R1のときに、インジェクタ18から噴射すべき燃料の一部を圧縮行程の中期以降に噴射するようにしたが、例えば第1プリイグ領域R1の中でも特にプリイグニッションが起き易い領域では、全部の燃料を圧縮行程の中期以降に噴射するようにしてもよい。また、上記実施形態では、第1プリイグ領域R1でプリイグニッションが検出されたときに、これを回避するための第1プリイグ回避制御として、吸気下死点よりも遅角側でかつ吸気の吹き返しが起きないような時期例えば吸気下死点の通過後30°CA前後に設定されている通常時の吸気弁11の閉時期を、さらに遅角側に変更するつまり吸気の吹き返しを起こさせることにより、有効圧縮比を低下させるようにしたが、有効圧縮比を低下させるための方法はこれに限らず、例えば、吸気弁11の閉時期を吸気下死点より進角側まで早めることにより、有効圧縮比を低下させるようにしてもよい。ただし、このようにした場合には、吸気弁11の動作タイミングを大幅に変化させる必要が生じ、VVT15の制御量が増えて、制御の応答性がさらに悪化するという問題がある。また、これを回避すべく、通常時の吸気弁11の閉時期を、吸気下死点と略一致するタイミング等に設定することも考えられるが、このようにすると、吸気慣性を十分に利用することができず、エンジン出力の低下を招いてしまう。このような点から、やはり上記実施形態のように、通常時プリイグニッションが発生していないときの吸気弁11の閉時期を、吸気下死点よりも遅角側に設定し、有効圧縮比を低下させる際には、吸気弁11の閉時期を上記通常時期に対しリタードさせるようにした方が、通常時のエンジン出力を十分に確保しつつ、必要時に効率よく有効圧縮比を低下させることができる点で有利である。さらに、有効圧縮比を低下させる制御は、上記のように吸気弁11の閉時期を変更するものに限らない。例えば、リンク機構等を用いてピストン5のストローク量を変更し、エンジンの幾何学的圧縮比そのものを低下させることによって、有効圧縮比を低下させるようにしてもよい。"