(57)【要約】【課題】内燃機関のばらつきおよび経時変化を吸収するために、排気還流量、点火時期、および空燃比にマージンを持たせことに起因する燃費の増加を防止する。【解決手段】燃焼変動検出値αを検出し（Ｓ１）、ＣＶＡＲ（ｉ−１）と燃焼変動検出値αを用いた関数ｆ（α）とを加算してＣＶＡＲ（ｉ）を求め（Ｓ２）、その値を使用して排気還流量ＥＧＲ（Ｓ３）および点火時期ＳＡを得る（Ｓ４）。燃焼変動を検出（Ｓ５）し、燃焼変動検出値αが所定値以上である場合（Ｓ６）には、フラグＦＶＡＲの値を１とし（Ｓ７）、排気還流量ＥＧＲ、点火時期ＳＡを前回値に戻す（Ｓ８、Ｓ９）。燃焼変動検出値αが所定値以下である場合（Ｓ６）には、フラグＦＶＡＲの値を０とし（Ｓ１０）、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を更新する（Ｓ１１、Ｓ１２）。フラグＦＶＡＲの値が１である場合（Ｓ１３）には、直ちに処理を終了する。【選択図】図３
2006037827.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の燃焼変動を検出して燃焼変動値として数値化する燃焼変動検出部と、
前記内燃機関の燃焼変動を操作するための燃焼変動操作量を、燃焼変動操作補正量に基づいて算出する演算部と、
前記燃焼変動値に基づいて前記内燃機関の燃焼変動状態を判定する燃焼変動判定部と、
前記燃焼変動判定部での判定結果に基づいて、前記燃焼変動操作補正量を変更する燃焼変動操作補正量変更部と、
前記燃焼変動操作量に基づいて、前記内燃機関の燃焼変動を操作する燃焼変動操作部と、を備え、
前記燃焼変動判定部における判定結果が所定の判定結果となるまで、前記燃焼変動操作補正量変更部において、前記燃焼変動操作補正量を段階的に変更する、内燃機関の制御装置。
【請求項２】
前記燃焼変動操作量は、
前記内燃機関の排気還流量および点火時期を含み、
燃焼変動操作部は、前記排気還流量および前記点火時期に基づいて前記内燃機関の燃焼変動を操作する、請求項１記載の内燃機関の制御装置。
【請求項３】
前記燃焼変動操作量は、
前記内燃機関の空燃比および点火時期を含み、
燃焼変動操作部は、前記空燃比および前記点火時期に基づいて前記内燃機関の燃焼変動を操作する、請求項１記載の内燃機関の制御装置。
【請求項４】
前記燃焼変動検出部は、
前記内燃機関の回転数変動、ノッキング変動、空燃比変動、筒内圧変動、イオン電流変動および排気ガス成分変動のうち少なくとも１つの変動を検出することで燃焼変動を検出する、請求項１記載の内燃機関の制御装置。
【請求項５】
前記内燃機関の回転数および負荷、冷却水温度、吸気温度およびエンジン始動後経過時間のうち、少なくとも１つの要素に関する情報を検出する運転状態検出部と、
前記運転状態検出部で検出された前記少なくとも１つの要素に関する情報が、予め準備され、分類された複数の運転状態のうち、何れの運転状態に属するかを判定することで、前記内燃機関の現運転状態を確認する運転状態判定部と、をさらに備え、
前記燃焼変動操作部は、前記運転状態判定部で判定した前記内燃機関の現運転状態ごとに、前記燃焼変動操作量に基づいて、前記内燃機関の燃焼変動を操作する、請求項１記載の内燃機関の制御装置。
【請求項６】
前記燃焼変動操作補正量は、分類された前記複数の運転状態のそれぞれに対応して設けられ、
前記燃焼変動操作補正量変更部において、前記燃焼変動操作補正量が変更された場合には、変更後の燃焼変動操作補正量で、前記燃焼変動操作補正量を更新する、請求項５記載の内燃機関の制御装置。
【請求項７】
前記運転状態検出部で検出された前記現運転状態が、初めて検出された運転状態である場合に、
分類された前記複数の運転状態のうち、前記燃焼変動操作補正量が更新済みの運転状態を選択し、その更新済み燃焼変動操作補正量を用いて、前記現運転状態の前記燃焼変動操作補正量を補正する、運転状態反映補正部をさらに備える、請求項６記載の内燃機関の制御装置。
【請求項８】
前記運転状態反映補正部は、
分類された前記複数の運転状態のうち、前記燃焼変動操作補正量が更新済みの運転状態が複数存在する場合、それら全ての運転状態の前記更新済み燃焼変動操作補正量を用いて前記現運転状態の前記燃焼変動操作補正量を補正する、請求項６記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は内燃機関の制御装置に関し、特に内燃機関の燃費を改善する内燃機関の制御装置に関する。
【背景技術】
【０００２】
内燃機関においては、例えば排気還流量と燃費および燃焼変動には、排気還流量を増加すると、機関の燃費は徐々に良化し、ある排気還流量で燃費が最小となる値（以下、燃費最適値と記す）に達し、さらに排気還流量を増加すると燃費は悪化する。一方で、排気還流量を増加すると、機関の燃焼状態は徐々に小さくなるが、ある排気還流量を過ぎると燃焼変動が急激に大きくなり、燃焼変動を許容できる限界値（以下、燃焼変動限界値と記す）を超えてしまう。さらに、ほぼ同じ排気還流量において、それら燃費最適値および燃焼変動限界値となる。
【０００３】
また、点火時期と燃費および燃焼変動の相関関係も、上述の排気還流量と燃費および燃焼変動の相関関係と同様の相関関係を示す。
【０００４】
また、空燃比と燃費および燃焼変動の相関関係も、上述の排気還流量と燃費および燃焼変動の相関関係と同様の相関関係を示す。
【０００５】
よって、燃焼変動が燃焼変動限界値になる排気還流量、点火時期、および空燃比の操作値を設定すると燃費が最小となることがわかる。
【０００６】
しかし、内燃機関の個体ばらつきや経時変化を考慮すると、排気還流量、点火時期、空燃比を機関の燃焼変動限界値となる操作値で設定することは困難である。例えば、排気還流量をある内燃機関における燃焼変動限界値となる操作値で設定すると、個体ばらつきにより、同運転状態の別の内燃機関においては燃焼状態が全く同じにはならないため、燃焼変動が増加し、燃焼変動限界値を超えてしまう場合がある。
【０００７】
よって、それら操作量にある程度の余裕（以下、マージンと記す）を持たせている。しかし、排気還流量にマージンを持たせることで、燃費最適値よりも燃費が増加してしまう。
【０００８】
また、点火時期にも排気還流量と同様の理由でマージンを持たせており、点火時期にマージンを持たせることで、燃費最適値よりも燃費が増加してしまう。
【０００９】
また、空燃比にも排気還流量と同様の理由でマージンを持たせており、空燃比にマージンを持たせることで、燃費最適値よりも燃費が増加してしまう。
【００１０】
よって、排気還流量、点火時期、および空燃比にマージンを持たせることで、燃費を増加させることとなるが、内燃機関におけるばらつきや経時変化を吸収し、内燃機関の燃焼変動の小さい運転を確保している。
【００１１】
しかしながら近年、内燃機関の燃費の向上が強く要求されており、様々な特許が出願されている。
【００１２】
例えば、特許文献１に開示された技術においては、内燃機関の燃焼変動を検出し、その検出結果が異常燃焼と判定されるまで排気還流量を増加させることで、燃焼状態を燃焼変動限界内における最大の排気還流量に制御し、排気還流量のマージンによる燃費増加代を低減させている。
【００１３】
また、特許文献２に開示された技術においては、内燃機関のノッキングを検出し、ノッキングが発生するまで点火時期を進角することで、ノッキングが発生しない最大進角の点火時期で制御し、点火時期のマージンによる燃費増加代を低減させている。
【００１４】
また、特許文献３に開示された技術においては、機関気筒内圧力を検出し、機関気筒内圧力が最大となるよう空燃比および点火時期を操作することで気筒内圧力を最適にし、燃費を向上している。さらに、機関の燃焼温度が所定値以上であるとき、排気還流量を操作して燃焼温度を下げ、排ガスの一成分であるＮＯｘの排出を抑制している。
【００１５】
【特許文献１】特開平５−２１５００４号公報
【特許文献２】特公平８−３０４６１号公報
【特許文献３】特開平９−９６２３８号公報
【発明の開示】
【発明が解決しようとする課題】
【００１６】
特許文献１の技術においては、排気還流量のみを増加させて排気還流量増加方向の燃焼変動限界値にすることで燃費増加代を低減しているが、真の燃費最適値に到達せず、真の燃費最適値よりも高い燃費となる問題があった。
【００１７】
また、特許文献２においても同様に、点火時期のみを進角させて点火時期進角方向の燃焼変動限界値にすることで燃費増加代を低減しているが、真の燃費最適値には到達せず、真の燃費最適値よりも高い燃費となる問題があった。
【００１８】
また、特許文献３では、点火時期を進角させて燃費を向上し、さらに燃焼温度が所定値以上であれば排気還流量が増加させてＮＯｘを抑制している。しかし、燃焼温度が所定値未満のときには排気還流量が増加方向に操作されず、真の燃費最適値に到達せず、真の燃費最適値よりも増加した燃費となる問題があった。
【００１９】
一方、燃焼温度が所定値以上である場合では、速やかに燃費最適値とすることができないという問題があった。
【００２０】
本発明は上記のような問題点を解消するためになされたもので、内燃機関のばらつきおよび経時変化を吸収するために、排気還流量、点火時期、および空燃比にマージンを持たせことに起因する燃費の増加を防止することを目的とする。
【課題を解決するための手段】
【００２１】
請求項１記載の内燃機関の制御装置は、内燃機関の燃焼変動を検出して燃焼変動値として数値化する燃焼変動検出部と、前記内燃機関の燃焼変動を操作するための燃焼変動操作量を、燃焼変動操作補正量に基づいて算出する演算部と、前記燃焼変動値に基づいて前記内燃機関の燃焼変動状態を判定する燃焼変動判定部と、前記燃焼変動判定部での判定結果に基づいて、前記燃焼変動操作補正量を変更する燃焼変動操作補正量変更部と、前記燃焼変動操作量に基づいて、前記内燃機関の燃焼変動を操作する燃焼変動操作部と、を備え、前記燃焼変動判定部における判定結果が所定の判定結果となるまで、前記燃焼変動操作補正量変更部において、前記燃焼変動操作補正量を段階的に変更する。
【発明の効果】
【００２２】
請求項１記載の内燃機関の制御装置によれば、内燃機関の燃焼変動を検出し、燃焼変動に合わせて燃焼変動操作量を変更し、燃焼変動状態が所定の状態となるまで、燃焼変動操作補正量を段階的に変更するので、それぞれの燃焼変動操作量に設けられたマージンを低減し、内燃機関のばらつきや経時変化を問題にすることなく、燃焼変動限界値内の燃費最適値を得ることができる。
【発明を実施するための最良の形態】
【００２３】
＜内燃機関およびその制御装置の全体構成＞
実施の形態の説明に先立って、全ての実施の形態に共通する内燃機関（以下「エンジン」という）およびその制御装置についての全体構成を図１を用いて説明する。
【００２４】
図１において、エンジン１は、ピストン２およびシリンダ３を主たる構成とする燃焼室４を有し、燃焼室４には吸気弁５、排気弁６および点火プラグ７を備えている。
【００２５】
吸気弁５は吸気ポート１３のシリンダ３側の開口端を開閉可能とするように配設され、吸気ポート１３の吸気弁５の近傍には、燃料を計量し噴射する燃料噴射弁８が配設されており、これにより燃料を最適なタイミングで各気筒内に供給できるようになっている。
【００２６】
なお、吸入される空気は、アクセルペダル（図示されず）の動きをエンジン制御用電子コントロールユニット（以下「ＥＣＵ」と呼称）２１に入力し、ここで演算されたアクセルペダルの踏み込み量に応じて吸気マニホールド９に設けられたスロットル弁１１の開度が制御され、サージタンク１２、吸気ポート１３を介して燃焼室４に流入する。
【００２７】
吸入空気量（吸気量）は、吸気マニホールド９のスロットル弁１１より上流側に配設されたエアフローメータ１０の信号がＥＣＵ２１（内燃機関の制御装置）に入力され、エンジン１の負荷を演算するのに使用される。
【００２８】
また、エンジン１のクランク軸にはクランク角度センサ１９が設けてあり、クランク角度信号ＣＳがＥＣＵ２１に入力され、エンジン回転数が計算される。また、エンジン１にはノックセンサ２０が設けられ、ノックセンサ信号ＮＳがＥＣＵ２１に入力され、当該信号に基づいて燃焼変動を検出する。
【００２９】
排気弁６は排気マニホールド１４のシリンダ３側の開口端を開閉可能とするように配設され、エンジン１から排出された排気ガスは、排気マニホールド１４の終端に配設されている触媒装置１５を介してテールパイプ１６から大気中へ排出されるが、排気マニホールド１４と吸気マニホールド９とを結ぶ排気還流路１７の途中に設けられている排気還流弁１８が、ＥＣＵ２１により制御され、これにより所定量の排気ガスが吸気マニホールド９に還流される。
【００３０】
なお、ＥＣＵ２１は、燃焼変動検出部、燃焼変動判定部、演算部、燃焼変動操作補正量変更部、燃焼変動操作部、運転状態判定部および運転状態反映補正部を有するが、これらの機能については以下において随時説明する。
【００３１】
＜Ａ．実施の形態１＞
本発明に係る実施の形態１について、図２〜図４を用いて説明する。
まず、次に、ＥＣＵ２１によるエンジン１の基本制御動作と本実施の形態における制御動作との関係について、図１を参照しつつ図２を用いて説明する。
【００３２】
＜Ａ−１．ＥＣＵによる制御動作＞
＜Ａ−１−１．排気還流量の制御＞
燃焼変動操作部の一部を構成する排気還流弁１８の排気還流量の制御は以下のようにして行われる。
【００３３】
ＥＣＵ２１では、エアフローメータ１０で検出された吸入空気量Ｑと、クランク角度センサ１９の信号ＣＳから算出したエンジン回転数ＮＥとに基づいて基本排気還流量ＥＧＲｂが演算される。
【００３４】
本実施の形態においては、基本排気還流量ＥＧＲｂに燃焼変動に応じた補正を施して、最終的な排気還流量ＥＧＲを求め、排気還流弁１８は、排気還流量ＥＧＲを供給する。
【００３５】
＜Ａ−１−２．点火時期の制御＞
燃焼変動操作部の一部を構成する点火プラグ７の点火時期の制御は以下のようにして行われる。
【００３６】
ＥＣＵ２１では、エアフローメータ１０で検出された吸入空気量Ｑと、クランク角度センサ１９の信号ＣＳから算出したエンジン回転数ＮＥとに基づいて基本点火時期ＳＡｂが演算される。
【００３７】
本実施の形態においては、基本点火時期ＳＡｂに燃焼変動に応じた補正を施して、最終的な点火時期ＳＡを求める。
【００３８】
＜Ａ−１−３．燃料噴射量の制御＞
燃焼変動操作部の一部を構成する燃料噴射弁８の噴射量の制御は以下のようにして行われる。
【００３９】
ＥＣＵ２１では、エアフローメータ１０で検出された吸入空気量Ｑと、クランク角度センサ１９の信号ＣＳから算出したエンジン回転数ＮＥとに基づいて基本空燃比ＡＦｂ（＝空気の重量／燃料の重量）が演算される。
【００４０】
本実施の形態においては、基本空燃比ＡＦｂに燃焼変動に応じた補正を施した最終的な空燃比ＡＦに対応する基本燃料噴射量Ｔｐ（＝Ｋ×Ｑ／ＮＥ：Ｋは定数）を算出し、冷却水温度Ｔｗなどの運転条件に応じた補正を施して最終的な燃料噴射量Ｔｉを求め、燃料噴射弁８は、燃料噴射量Ｔｉに比例する燃料量を噴射供給する。
【００４１】
＜Ａ−１−４．燃焼変動検出動作＞
ＥＣＵ２１は、燃焼変動を検出する燃焼変動検出部を有し、そこでの燃焼変動検出動作は以下のようにして実行される。
例えば、クランク角度センサ１９を用いた回転数変動を燃焼変動として検出する場合には、まずクランク角度センサ１９が所定クランク角を検出するごとに、所定クランク角の角速度を算出する。
【００４２】
図２には、クランク角度と角速度との関係を示す。図２に示すように、クランク角度と角速度との関係は、サインカーブに似た特性を示すが、燃焼室４での燃焼状態に応じて角速度が変化するため、同じクランク角度、例えば図２におけるカーブの頂点Ｐ１とＰ２とで角速度が異なり、頂点高さが相違している。この頂点高さの差（Ｐ１−Ｐ２）、すなわち角速度の変化量を燃焼変動検出値αとする。
【００４３】
なお、ノックセンサ信号、空燃比センサ信号、筒内圧センサ信号、イオン電流センサ信号、排ガス成分濃度センサ信号等についても、信号の変化量を算出することによって燃焼変動を検出することができる。
【００４４】
上述した回転数変動や、各信号の変化量用いて燃焼変動を検出することで、内燃機関の燃焼変動を正確に把握することができる。
【００４５】
＜Ａ−１−５．燃焼変動判定動作＞
ＥＣＵ２１は燃焼変動を判定する燃焼変動判定部を有し、そこでの燃焼変動判定動作は以下のようにして実行される。
例えば、燃焼変動検出動作をクランク角度センサ１９を用いた回転数変動に基づいて実行した場合、ある回転数変動の値を任意のしきい値とし、そのしきい値以上であるか否かで判定する。
【００４６】
また、ノックセンサ信号、空燃比センサ信号、筒内圧センサ信号、イオン電流センサ信号、排ガス成分濃度センサ信号等を用いて燃焼変動検出動作を行う場合でも、それぞれのセンサ信号の所定の変化量を任意のしきい値とし、それぞれのセンサ信号の変化量が当該しきい値以上であるか否かによって判定する。
【００４７】
＜Ａ−２．燃費最適化制御＞
次に、本発明に係る実施の形態１として、図１を参照しつつ、図３に示すフローチャートを用いてＥＣＵ２１による燃費最適化制御について説明する。なお、図３に示す処理動作は、所定の時間ごと（例えば１０ｍｓｅｃごと）に繰り返し実行される。
【００４８】
処理動作が開始されると、燃焼変動検出部の動作として、図３に示すステップＳ１において、クランク角度センサ１９が出力するクランク角信号ＣＳに基づいて、予め定めた所定クランク角における角速度を算出し、その角速度の変化量を燃焼変動検出値αとしてＥＣＵ２１内のメモリ等に記憶する。
【００４９】
また、燃焼変動操作補正量の前回値ＣＶＡＲ（ｉ−１）については初期値として０を設定値として記憶する。
【００５０】
次に、演算部の動作として、ステップＳ２において、ステップＳ１で記憶された燃焼変動操作補正量の前回値ＣＶＡＲ（ｉ−１）と燃焼変動検出値αを用いた関数ｆ（α）とを加算することで、以下の数式（１）で表される燃焼変動操作補正量ＣＶＡＲ（ｉ）を求める。
【００５１】
ＣＶＡＲ（ｉ）＝ＣＶＡＲ（ｉ−１）＋ｆ（α）・・・（１）
ここで、燃焼変動検出値αを用いた関数ｆ（α）は、例えば図４に示すような一次関数として表され、燃焼変動検出値αの値から一義的にｆ（α）を求めることができる。なお、図４においては横軸に燃焼変動検出値αを、縦軸にｆ（α）を示している。
【００５２】
ここで、再び図３の説明に戻る。
次に、演算部の動作として、ステップＳ３において、基本排気還流量ＥＧＲｂに対し、ステップＳ２もしくは後述するステップＳ１２で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる排気還流量ＥＧＲを得る。
【００５３】
なお、排気還流量ＥＧＲは、下記の数式（２）を用いて、基本排気還流量ＥＧＲｂよりも増加するように求められ、排気還流量ＥＧＲで規定される排気ガスが吸気マニホールド９に流入する。
【００５４】
ＥＧＲ＝ＥＧＲｂ×ＣＶＡＲ（ｉ）・・・（２）
次に、ステップＳ４において、基本点火時期ＳＡｂに対し、ステップＳ２もしくは後述するステップＳ１２で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第２の燃焼変動操作量となる点火時期ＳＡを得る。
【００５５】
なお、点火時期ＳＡは、下記の数式（３）を用いて、基本点火時期ＳＡｂよりも進角するように求められ、点火時期ＳＡで規定されるタイミングで点火プラグ７が点火を行う。
【００５６】
ＳＡ＝ＳＡｂ×ＣＶＡＲ（ｉ）・・・（３）
次に、ステップＳ５において、排気還流量ＥＧＲの増加および点火時期ＳＡの進角による燃焼変動を検出し、検出値を燃焼変動検出値αとしてＥＣＵ２１内のメモリ等に記憶する。
【００５７】
次に、ステップＳ６において、ステップＳ５で取得した燃焼変動検出値αが、予め定めた所定値以上であるか否か、すなわち現在の燃焼変動が許容範囲を超えているか否かを判定する。
【００５８】
ステップＳ６での判定結果が肯定（Ｙｅｓ）のときには、排気還流量ＥＧＲの増加および点火時期ＳＡの進角により燃焼変動が許容範囲を超えた（燃焼変動限界値に達した）という状態であり、その状態を記憶するために、フラグＦＶＡＲの値を１とする（ステップＳ７）。
【００５９】
そして、ステップＳ８において、排気還流量ＥＧＲを燃焼変動限界値に達していない前回値に戻すために、基本排気還流量ＥＧＲｂに対し、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、排気還流量ＥＧＲを燃焼変動の許容範囲内とする。
【００６０】
なお、排気還流量ＥＧＲの補正は、下記の数式（４）を用いて行う。
【００６１】
ＥＧＲ＝ＥＧＲｂ×ＣＶＡＲ（ｉ−１）・・・（４）
同様に、ステップＳ９において、点火時期ＳＡを燃焼変動限界値に達していない前回値に戻すために、基本点火時期ＳＡｂに対し、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、点火時期ＳＡを燃焼変動の許容範囲内とする。
【００６２】
なお、点火時期ＳＡの補正は、下記の数式（５）を用いて行う。
【００６３】
ＳＡ＝ＳＡｂ×ＣＶＡＲ（ｉ−１）・・・（５）
ステップＳ８およびＳ９の順序は上記に限定されるものではなく、ステップＳ８およびＳ９の終了後、ステップＳ１３に進む。
【００６４】
一方、ステップＳ６での判定結果が否定（Ｎｏ）のときには、排気還流量ＥＧＲおよび点火時期ＳＡは燃焼変動が許容範囲での最大値を超えていないという状態であり、その状態を記憶するために、フラグＦＶＡＲの値を０とする（ステップＳ１０）。
【００６５】
そして、燃焼変動操作補正量変更部において、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を更新するために、まずステップＳ１１において、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を新たな燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）としてＥＣＵ２１内のメモリ等に記憶する。
【００６６】
続いて、ステップＳ１１で記憶された新たな燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）に、ステップＳ５で記憶された燃焼変動検出値αを用いた関数ｆ（α）を加算することで、新たな燃焼変動操作補正量ＣＶＡＲ（ｉ）を求め（ステップＳ１２）、ステップＳ１３に進む。
【００６７】
ステップＳ１３では、フラグＦＶＡＲの値が１であるか、すなわち排気還流量ＥＧＲおよび点火時期ＳＡの両方をそれぞれ増加および進角することで燃焼変動が許容範囲を超えてしまう状態であるか否かを判定する。
【００６８】
そして、ステップＳ１３の判定結果が肯定（Ｙｅｓ）のときには、第１の燃焼変動操作量である排気還流量ＥＧＲおよび第２の燃焼変動操作量である点火時期ＳＡの燃費が燃費最適値に達したと判断し、直ちに処理を終了する。
【００６９】
一方、ステップＳ１３の判定結果が否定（Ｎｏ）のときには、燃費が燃費最適値に達していないと判断され、ステップＳ３以下の処理を繰り返す。
【００７０】
＜Ａ−３．効果＞
以上説明したように実施の形態１における燃費最適化制御によれば、排気還流量および点火時期の相関関係に基づいて、排気還流量と点火時期とを組み合せて燃焼変動検出値に応じてそれぞれ増加および進角させ、燃焼変動限界値内において最大の排気還流量および最大の点火時期進角を実現させることで、排気還流量増加方向および点火時期進角方向に存在する燃費最適値に操作量を設定することができ、燃費を向上させることができる。
【００７１】
＜Ｂ．実施の形態２＞
本発明に係る実施の形態２について、図５および図６を用いて説明する。
実施の形態１においては、燃焼変動の検出値としてクランクの角速度の変化量を燃焼変動検出値αとして使用する例について説明したが、実施の形態２においては、燃焼変動検出値αと併せて、ノックセンサ２０（図１参照）が出力するノックセンサ信号ＮＳに基づいて算出される燃焼変動検出値βを用いて燃費最適化制御を行う構成について説明する。
【００７２】
＜Ｂ−１．燃費最適化制御＞
図１を参照しつつ、図５に示すフローチャートを用いてＥＣＵ２１による燃費最適化制御について説明する。なお、図５に示す処理動作は、所定の時間ごと（例えば１０ｍｓｅｃごと）に繰り返し実行される。
【００７３】
処理動作が開始されると、図５に示すステップＳ２１において、クランク角度センサ１９が出力するクランク角信号ＣＳに基づいて、予め定めた所定クランク角における角速度を算出し、その角速度の変化量を第１の燃焼変動検出値αとしてＥＣＵ２１内のメモリ等に記憶する。
【００７４】
また、ノックセンサ２０が出力するノックセンサ信号ＮＳに基づいて、予め定めた所定時間内でのノッキングの回数の平均値を算出し、当該平均値と前回（例えば１０ｍｓｅｃ前に実行した燃費最適化制御）でのノッキングの回数の平均値と変化量を第２の燃焼変動検出値βとしてＥＣＵ２１内のメモリ等に記憶する。
【００７５】
なお、第１の燃焼変動操作補正量の前回値ＣＶＡＲ（ｉ−１）については初期値として０を設定値として記憶し、第２の燃焼変動操作補正量前回値ＣＶＡＲ２（ｉ−１）については初期値として０を設定値として記憶する。
【００７６】
次に、ステップＳ２２において、ステップＳ２１で記憶された第１の燃焼変動操作補正量の前回値ＣＶＡＲ（ｉ−１）と第１の燃焼変動検出値αを用いた関数ｆ（α）とを加算することで、先に説明した数式（１）で表される第１の燃焼変動操作補正量ＣＶＡＲ（ｉ）を求める。
【００７７】
また、同様に、ステップＳ２１で記憶された第２の燃焼変動操作補正量の前回値ＣＶＡＲ２（ｉ−１）と第２の燃焼変動検出値βを用いた関数ｆ（β）とを加算することで、以下の数式（６）で表される第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を求める。
【００７８】
ＣＶＡＲ２（ｉ）＝ＣＶＡＲ２（ｉ−１）＋ｆ（β）・・・（６）
ここで、第２の燃焼変動検出値βを用いた関数ｆ（β）は、例えば図６に示すような一次関数として表され、第２の燃焼変動検出値βの値から一義的にｆ（β）を求めることができる。なお、図６においては横軸に燃焼変動検出値βを、縦軸にｆ（β）を示している。
【００７９】
ここで、再び図５の説明に戻る。
次に、ステップＳ２３において、基本排気還流量ＥＧＲｂに対し、ステップＳ２２もしくは後述するステップＳ３２で求めた第１の燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる排気還流量ＥＧＲを得る。
【００８０】
なお、排気還流量ＥＧＲは、先に説明した数式（２）を用いて、基本排気還流量ＥＧＲｂよりも増加するように求められ、排気還流量ＥＧＲで規定される排気ガスが吸気マニホールド９に流入する。
【００８１】
次に、ステップＳ２４において、基本点火時期ＳＡｂに対し、ステップＳ２２もしくは後述するステップＳ３２で求めた第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を用いて補正を行い、第２の燃焼変動操作量となる点火時期ＳＡを得る。
【００８２】
なお、点火時期ＳＡの補正は、下記の数式（７）を用いて行い、基本点火時期ＳＡｂよりも進角するように求められ、点火時期ＳＡで規定されるタイミングで点火プラグ７が点火を行う。
【００８３】
ＳＡ＝ＳＡｂ×ＣＶＡＲ２（ｉ）・・・（７）
次に、ステップＳ２５において、排気還流量ＥＧＲの増加および点火時期ＳＡの進角による第１および第２の燃焼変動を検出し、検出値をそれぞれ第１の燃焼変動検出値αおよび第２の燃焼変動検出値βとしてＥＣＵ２１内のメモリ等に記憶する。
【００８４】
次に、ステップＳ２６において、ステップＳ２５で取得した第１の燃焼変動検出値αおよび第２の燃焼変動検出値βの少なくとも１方が、それぞれ予め定めた第１および第２の所定値以上であるか否か、すなわち現在の第１および／または第２の燃焼変動が許容範囲を超えているか否かを判定する。
【００８５】
ステップＳ２６での判定結果が肯定（Ｙｅｓ）のときには、排気還流量ＥＧＲの増加および点火時期ＳＡの進角により第１および／または第２の燃焼変動が許容範囲を超えた（燃焼変動限界値に達した）という状態であり、その状態を記憶するために、フラグＦＶＡＲの値を１とする（ステップＳ２７）。
【００８６】
そして、ステップＳ２８において、排気還流量ＥＧＲを燃焼変動限界値に達していない前回値に戻すために、基本排気還流量ＥＧＲｂに対し、第１の燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、排気還流量ＥＧＲを第１の燃焼変動の許容範囲内とする。なお、排気還流量ＥＧＲの補正は、先に説明した数式（４）を用いて行う。
【００８７】
同様に、ステップＳ２９において、点火時期ＳＡを燃焼変動限界値に達していない前回値に戻すために、基本点火時期ＳＡｂに対し、第２の燃焼変動操作補正量前回値ＣＶＡＲ２（ｉ−１）を用いて補正を行い、点火時期ＳＡを第２の燃焼変動の許容範囲内とする。
【００８８】
なお、点火時期ＳＡの補正は、下記の数式（８）を用いて行う。
【００８９】
ＳＡ＝ＳＡｂ×ＣＶＡＲ２（ｉ−１）・・・（８）
ステップＳ２８およびＳ２９の順序は上記に限定されるものではなく、ステップＳ２８およびＳ２９の終了後、ステップＳ３３に進む。
【００９０】
一方、ステップＳ２６での判定結果が否定（Ｎｏ）のときには、排気還流量ＥＧＲおよび点火時期ＳＡは燃焼変動が許容範囲での最大値を超えていないという状態であり、その状態を記憶するために、フラグＦＶＡＲの値を０とする（ステップＳ３０）。
【００９１】
そして、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を更新するために、まずステップＳ１１において、現在の第１の燃焼変動操作補正量ＣＶＡＲ（ｉ）および第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を、それぞれ新たな第１の燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）および第２の燃焼変動操作補正量前回値ＣＶＡＲ２（ｉ−１）としてＥＣＵ２１内のメモリ等に記憶する。
【００９２】
続いて、ステップＳ３１で記憶された新たな第１の燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）に、ステップＳ２５で記憶された第１の燃焼変動検出値αを用いた関数ｆ（α）を加算することで、新たな第１の燃焼変動操作補正量ＣＶＡＲ（ｉ）を求めるとともに、ステップＳ３１で記憶された新たな第２の燃焼変動操作補正量前回値ＣＶＡＲ２（ｉ−１）に、ステップＳ２５で記憶された第２の燃焼変動検出値βを用いた関数ｆ（β）を加算することで、新たな第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を求め（ステップＳ３２）、ステップＳ３３に進む。
【００９３】
ステップＳ３３では、フラグＦＶＡＲの値が１であるか、すなわち排気還流量ＥＧＲおよび点火時期ＳＡの両方をそれぞれ増加および進角することで第１および／または第２燃焼変動が許容範囲を超えてしまう状態であるか否かを判定する。
【００９４】
ステップＳ３３の判定結果が肯定（Ｙｅｓ）のときには、第１の燃焼変動操作量である排気還流量ＥＧＲおよび第２の燃焼変動操作量である点火時期ＳＡの燃費が燃費最適値に達したと判断し、直ちに処理を終了する。
【００９５】
一方、ステップＳ３３の判定結果が否定（Ｎｏ）のときには、燃費が燃費最適値に達していないと判断され、ステップＳ２３以下の処理を繰り返す。
【００９６】
なお、上記説明においては、排気還流量ＥＧＲは、先に説明した数式（２）を用いて求め、点火時期ＳＡは数式（７）を用いて求めるものとして説明したが、排気還流量ＥＧＲをＥＧＲ＝ＥＧＲｂ×ＣＶＡＲ２（ｉ）によって求め、点火時期ＳＡをＳＡ＝ＳＡｂ×ＣＶＡＲ（ｉ）によって求めることも可能である。
【００９７】
＜Ｂ−２．効果＞
以上説明したように実施の形態２における燃費最適化制御によれば、排気還流量および点火時期の相関関係に基づいて、排気還流量と点火時期とを組み合せて第１および第２の燃焼変動検出値に応じてそれぞれ増加および進角させ、第１および／または第２の燃焼変動限界値内において最大の排気還流量および最大の点火時期の進角を実現させることで、排気還流量増加方向および点火時期進角方向に存在する燃費最適値に操作量を設定することができ、燃費を向上させることができる。
【００９８】
＜Ｃ．実施の形態３＞
本発明に係る実施の形態３について、図７を用いて説明する。
実施の形態１においては、第１の燃焼変動操作量として排気還流量ＥＧＲを用いる例を示したが、実施の形態３においては、第１の燃焼変動操作量として空燃比ＡＦを用いて燃費最適化制御を行う構成について説明する。
【００９９】
＜Ｃ−１．燃費最適化制御＞
図１を参照しつつ、図７に示すフローチャートを用いてＥＣＵ２１による燃費最適化制御について説明する。なお、図７に示すステップＳ４１、Ｓ４２、Ｓ４４、Ｓ４７、Ｓ４９、Ｓ５１、Ｓ５２の処理は、図３を用いて説明したステップＳ１、Ｓ２、Ｓ４、Ｓ７、Ｓ１１、Ｓ１２の処理と同じであるので説明は省略する。
【０１００】
図７に示すように、ステップＳ４２において燃焼変動操作補正量ＣＶＡＲ（ｉ）を求めた後、ステップＳ４３において、基本空燃比ＡＦｂに対し、ステップＳ４２もしくは後述するステップＳ５２で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる空燃比ＡＦを得る。
【０１０１】
ここで、基本空燃比ＡＦｂは、エアフローメータ１０で検出された吸入空気量Ｑと、クランク角度センサ１９の信号から算出したエンジン回転数ＮＥとに基づいてＥＣＵ２１において算出され、空燃比ＡＦは下記の数式（９）を用いて、基本空燃比ＡＦｂよりもリーン化するように求められ、ＥＣＵ２１は、空燃比ＡＦに基づいて最終的な燃料噴射量Ｔｉを求め、燃料噴射弁８は、燃料噴射量Ｔｉに比例する燃料量を噴射供給する。
【０１０２】
ＡＦ＝ＡＦｂ×ＣＶＡＲ（ｉ）・・・（９）
ステップＳ４５においては、空燃比ＡＦのリーン化および点火時期ＳＡの進角による燃焼変動を検出し、検出値を燃焼変動検出値αとしてＥＣＵ２１内のメモリ等に記憶する。
【０１０３】
次に、ステップＳ４６において、ステップＳ４５で取得した燃焼変動検出値αが、予め定めた所定値以上であるか否か、すなわち現在の燃焼変動が許容範囲を超えているか否かを判定する。
【０１０４】
ステップＳ４６での判定結果が肯定（Ｙｅｓ）のときには、空燃比ＡＦのリーン化および点火時期ＳＡの進角により燃焼変動が許容範囲を超えた（燃焼変動限界値に達した）という状態であり、その状態を記憶するために、フラグＦＶＡＲの値を１とする（ステップＳ４７）。
【０１０５】
そして、ステップＳ４８において、空燃比ＡＦを燃焼変動限界値に達していない前回値に戻すために、基本空燃比ＡＦｂに対し、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、空燃比ＡＦを燃焼変動の許容範囲内とする。
【０１０６】
なお、空燃比ＡＦの補正は、下記の数式（１０）を用いて行う。
【０１０７】
ＡＦ＝ＡＦｂ×ＣＶＡＲ（ｉ−１）・・・（１０）
一方、ステップＳ４６での判定結果が否定（Ｎｏ）のときには、空燃比ＡＦおよび点火時期ＳＡは燃焼変動が許容範囲での最大値を超えていないという状態であり、その状態を記憶するために、フラグＦＶＡＲの値を０とする（ステップＳ５０）。
【０１０８】
ステップＳ５３では、フラグＦＶＡＲの値が１であるか、すなわち空燃比ＡＦおよび点火時期ＳＡの両方をそれぞれリーン化および進角することで燃焼変動が許容範囲を超えてしまう状態であるか否かを判定する。
【０１０９】
そして、ステップＳ５３の判定結果が肯定（Ｙｅｓ）のときには、第１の燃焼変動操作量である空燃比ＡＦおよび第２の燃焼変動操作量である点火時期ＳＡの燃費が燃費最適値に達したと判断し、直ちに処理を終了する。
【０１１０】
一方、ステップＳ５３の判定結果が否定（Ｎｏ）のときには、燃費が燃費最適値に達していないと判断され、ステップＳ４３以下の処理を繰り返す。
【０１１１】
＜Ｃ−２．効果＞
以上説明したように実施の形態３における燃費最適化制御によれば、空燃比および点火時期の相関関係に基づいて、空燃比と点火時期を組み合せて燃焼変動検出値に応じてそれぞれリーン化および進角させ、燃焼変動限界値内において最大の空燃比のリーン化および最大の点火時期進角を実現させることで、空燃比リーン化方向および点火時期進角方向に存在する燃費最適値に操作量を設定することができ、燃費を向上させることができる。
【０１１２】
＜Ｄ．実施の形態４＞
本発明に係る実施の形態４について、図８を用いて説明する。
実施の形態２においては、第１の燃焼変動操作量として排気還流量ＥＧＲを用いる例を示したが、実施の形態４においては、第１の燃焼変動操作量として空燃比ＡＦを用いて燃費最適化制御を行う構成について説明する。
【０１１３】
＜Ｄ−１．燃費最適化制御＞
図１を参照しつつ、図８に示すフローチャートを用いて実施の形態４における燃費最適化制御について説明する。なお、図８に示すステップＳ６１、Ｓ６２、Ｓ６４、Ｓ６７、Ｓ６９、Ｓ７１、Ｓ７２の処理は、図５を用いて説明したステップＳ２１、Ｓ２２、Ｓ２４、Ｓ２７、Ｓ２９、Ｓ３１、Ｓ３２の処理と同じであるので説明は省略する。
【０１１４】
図８に示すように、ステップＳ６２において、第１の燃焼変動操作補正量ＣＶＡＲ（ｉ）および第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を求めた後、ステップＳ６３において、基本空燃比ＡＦｂに対し、ステップＳ６２もしくは後述するステップＳ７２で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる空燃比ＡＦを得る。なお、空燃比ＡＦは、先に説明した数式（９）を用いて、基本空燃比ＡＦｂよりもリーン化するように求められる。
【０１１５】
ステップＳ６５においては、空燃比ＡＦのリーン化および点火時期ＳＡの進角による第１および第２の燃焼変動を検出し、検出値をそれぞれ第１の燃焼変動検出値αおよび第２の燃焼変動検出値βとしてＥＣＵ２１内のメモリ等に記憶する。
【０１１６】
次に、ステップＳ６６において、ステップＳ６５で取得した第１の燃焼変動検出値αおよび第２の燃焼変動検出値βの少なくとも１方が、それぞれ予め定めた第１および第２の所定値以上であるか否か、すなわち現在の第１および／または第２の燃焼変動が許容範囲を超えているか否かを判定する。
【０１１７】
ステップＳ６６での判定結果が肯定（Ｙｅｓ）のときには、空燃比ＡＦのリーン化および点火時期ＳＡの進角により第１および／または第２の燃焼変動が許容範囲を超えた（燃焼変動限界値に達した）という状態であり、その状態を記憶するために、フラグＦＶＡＲの値を１とする（ステップＳ６７）。
【０１１８】
そして、ステップＳ６８において、空燃比ＡＦを燃焼変動限界値に達していない前回値に戻すために、基本空燃比ＡＦｂに対し、第１の燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、空燃比ＡＦを第１の燃焼変動の許容範囲内とする。なお、空燃比ＡＦの補正は、先に説明した数式（１０）を用いて行う。
【０１１９】
一方、ステップＳ６６での判定結果が否定（Ｎｏ）のときには、空燃比ＡＦおよび点火時期ＳＡは燃焼変動が許容範囲での最大値を超えていないという状態であり、その状態を記憶するために、フラグＦＶＡＲの値を０とする（ステップＳ７０）。
【０１２０】
ステップＳ７３では、フラグＦＶＡＲの値が１であるか、すなわち空燃比ＡＦおよび点火時期ＳＡの両方をそれぞれリーン化および進角することで第１および／または第２燃焼変動が許容範囲を超えてしまう状態であるか否かを判定する。
【０１２１】
ステップＳ７３の判定結果が肯定（Ｙｅｓ）のときには、第１の燃焼変動操作量である空燃比ＡＦおよび第２の燃焼変動操作量である点火時期ＳＡの燃費が燃費最適値に達したと判断し、直ちに処理を終了する。
【０１２２】
一方、ステップＳ７３の判定結果が否定（Ｎｏ）のときには、燃費が燃費最適値に達していないと判断され、ステップＳ６３以下の処理を繰り返す。
【０１２３】
＜Ｄ−２．効果＞
以上説明したように実施の形態４における燃費最適化制御によれば、空燃比および点火時期の相関関係に基づいて、空燃比と点火時期とを組み合せて第１および第２の燃焼変動検出値に応じてそれぞれリーン化および進角させ、第１および／または第２の燃焼変動限界値内において最大の空燃比のリーン化および最大の点火時期の進角を実現させることで、空燃比リーン方向および点火時期進角方向に存在する燃費最適値に操作量を設定することができ、燃費を向上させることができる。
【０１２４】
＜Ｅ．実施の形態５＞
本発明に係る実施の形態５について、図９〜図１３を用いて説明する。
実施の形態５における燃費最適化制御では、ＥＣＵ２１内に運転状態判定部を有し、運転状態に合わせて燃焼変動を操作することによる制御について説明する。
【０１２５】
本実施の形態の燃費最適化制御を行うために、ＥＣＵ２１の運転状態判定部は、エンジン回転数を横軸とし、エンジン負荷を縦軸として運転状態を分類する運転状態マップに基づき、現運転状態が分類されたどの運転状態であるかを判定し、判定した運転状態に合わせて燃焼変動を操作する。
【０１２６】
ここで、ＥＣＵ２１における運転状態マップの概念を図９を用いて説明する。
図９においては、エンジン回転数は１０００回転ごとに区切られ、エンジン負荷については０．１ごとに区切られ、縦軸の間隔０．１と、横軸の間隔１０００によって構成される領域が１つの運転状態を表す領域として分類されている。
【０１２７】
例えば、図９においては、エンジン回転数０〜１０００、エンジン負荷０〜０．１までが運転状態(1)として分類され、以後、エンジン負荷０〜０．１の範囲でエンジン回転数が３０００までの範囲が運転状態(2)、(3)に分類され、エンジン負荷０．１〜０．２の範囲で運転状態(4)〜(6)、エンジン負荷０．２〜０．３の範囲で運転状態(7)〜(9)に分類されている。
【０１２８】
従って、ＥＣＵ２１において、現在のエンジン回転数が５００回転、エンジン負荷が０．０５であるという状態を検出した場合は、運転状態(1)と判定される。
【０１２９】
なお、ＥＣＵ２１は図９に示すような運転状態マップを現実に有しているわけではなく、ＥＣＵ２１内に設けられた運転状態判定部において、予め定めたエンジン回転数の区分間隔およびエンジン負荷の区分間隔に基づいて区分される領域に検出値を当てはめて現状の運転状態を判定している。
【０１３０】
ここで、エンジン回転数の区分間隔およびエンジン負荷の区分間隔は任意に設定され、上述した数値に限定されるものではない。また、エンジン回転数の上限値および下限値、エンジン負荷の上限値および下限値も任意に設定することができ、上述した数値に限定されるものではない。
【０１３１】
また、運転状態はエンジン回転数およびエンジン負荷によってのみ定義されるものではなく、冷却水温度、吸気温度およびエンジン始動後経過時間などの要素を少なくとも１つ用いて定義しても良い。
【０１３２】
例えば、エンジン始動後経過時間によって運転状態が変わるような場合には、エンジン始動後経過時間のみによって運転状態を定義するなどのように、１つの要素で運転状態を定義することもでき、また、エンジン回転数、エンジン負荷および冷却水温度の３つの要素によって運転状態を定義するなどのように、運転状態の定義に複数の要素を用いても良い。
【０１３３】
＜Ｅ−１．燃費最適化制御＞
以下、図１を参照しつつ、図１０および図１１に示すフローチャートを用いてＥＣＵ２１による燃費最適化制御について説明する。なお、図１０および図１１は連続した処理を分割して示しており、記号（Ａ）において互いに接続される。また、図１０および図１１に示す処理動作は、所定の時間ごと（例えば１０ｍｓｅｃごと）に繰り返し実行される。
【０１３４】
処理動作が開始されると、図１０に示すステップＳ７１において、その時点（処理動作が開始時点）での運転状態を第１の運転状態として検出し、そのときのエンジン回転数およびエンジン負荷をそれぞれエンジン回転数ＮＥ１およびエンジン負荷ＣＥ１としてＥＣＵ２１内のメモリ等に記憶する。
【０１３５】
次に、所定時間が経過するまで待機し（ステップＳ７２）、所定時間経過後にステップＳ７３へと進む。
【０１３６】
ステップＳ７３においては、その時点（第１の運転状態検出から所定時間経過した時点）での運転状態を第２の運転状態として検出し、そのときのエンジン回転数およびエンジン負荷をそれぞれエンジン回転数ＮＥ２およびエンジン負荷ＣＥ２としてＥＣＵ２１内のメモリ等に記憶する。
【０１３７】
次に、ステップＳ７４において、ステップＳ７１およびステップＳ７２で検出した２つの運転状態を比較し、エンジン回転数の変化量（｜ＮＥ１−ＮＥ２｜）が予め定めた第１所定値以下であるか否か、およびエンジン負荷の変化量（｜ＣＥ１−ＣＥ２｜）が予め定めた第２所定値以下であるか否かの判定を行う。
【０１３８】
そして、ステップＳ７４において、エンジン回転数の変化量およびエンジン負荷の変化量が、それぞれ第１および第２所定値以下であると判定された場合（Ｙｅｓの場合）には、エンジン定常運転状態であると判断し、図１１に示すステップＳ７５に進む。
【０１３９】
一方、ステップＳ７４において、エンジン回転数の変化量およびエンジン負荷の変化量が所定値よりも大きい場合（Ｎｏの場合）には運転状態が定常ではないと判断し、直ちに処理を終了する。
【０１４０】
次に、図１１に示すステップＳ７５において、その時点でのエンジン回転数およびエンジン負荷を検出し、運転状態判定部において検出結果に基づいて、上述した運転状態マップに基づいて運転状態を判定する。また、検出したエンジン回転数およびエンジン負荷を、それぞれエンジン回転数ＮＥおよびエンジン負荷ＣＥとしてＥＣＵ２１内のメモリ等に記憶する。
【０１４１】
次に、燃焼変動マップを参照し、ステップＳ７５において判定した運転状態に対応するマップ値を読み出し、燃焼変動操作補正量ＣＶＡＲ（ｉ）としてＥＣＵ２１内のメモリ等に記憶する（ステップＳ７６）。
【０１４２】
ここで、燃焼変動マップについて図１２を用いて説明する。
図１２に示すように、燃焼変動マップは、図９を用いて説明した運転状態マップに対応させて作成され、エンジン回転数を横軸とし、エンジン負荷を縦軸とし、所定のエンジン回転数の区分間隔およびエンジン負荷の区分間隔に基づいて区分される領域に燃焼変動操作補正量が記憶されている。
【０１４３】
例えば、図９に示した運転状態マップの運転状態(1)の領域には、燃焼変動操作補正量ａが記入される構成となっている。なお、燃焼変動マップには、燃焼変動操作を行った場合の燃焼変動操作補正量の最終値が記憶され、燃焼変動操作を１回も行っていない場合、すなわち、図１０に示すステップＳ７４において一度もＹｅｓと判定されていない場合には、燃焼変動マップには初期値として１が記憶されている。図１２は、燃焼変動マップの初期状態を示しており、何れの領域にも初期値「１」が記憶されている。
【０１４４】
従って、ステップＳ７６においては、ステップＳ７５において検出した運転状態が、運転状態マップの運転状態(1)である場合、図１２に示す燃焼変動マップからは、マップ値として「１」（初期値）が読み出され、燃焼変動操作補正量ＣＶＡＲ（ｉ）として記憶される。
【０１４５】
次に、ステップＳ７６で記憶された燃焼変動操作補正量ＣＶＡＲ（ｉ）が、燃焼変動マップの初期値であるか否か、すなわちステップＳ７５で判定された運転状態で燃焼変動操作が一度でも行われているか否かを、ステップＳ７７において判別する。
【０１４６】
そして、ステップＳ７７での判定結果が肯定（Ｙｅｓ）の場合には、ステップＳ８０に進む。
【０１４７】
一方、ステップＳ７７での判定結果が否定（Ｎｏ）の場合には、ステップＳ７８において、基本排気還流量ＥＧＲｂに対し、ステップＳ７６で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる排気還流量ＥＧＲを得る。
【０１４８】
なお、排気還流量ＥＧＲは、先に説明した数式（２）を用いて、基本排気還流量ＥＧＲｂよりも増加するように求められる。
【０１４９】
次に、ステップＳ７９において、基本点火時期ＳＡｂに対し、ステップＳ７６で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第２の燃焼変動操作量となる点火時期ＳＡを得る。
【０１５０】
なお、点火時期ＳＡは、先に説明した数式（３）を用いて、基本点火時期ＳＡｂよりも進角するように求められる。ステップＳ７９の終了後はステップＳ８２に進む。
【０１５１】
ステップＳ７８およびステップＳ７９により、同じ運転状態における前回までの燃焼変動操作を反映することができる。
【０１５２】
ステップＳ８０においては、基本排気還流量ＥＧＲｂに対し、ステップＳ７６もしくは後述するステップＳ９０で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる排気還流量ＥＧＲを得る。
【０１５３】
なお、排気還流量ＥＧＲは、先に説明した数式（２）を用いて、基本排気還流量ＥＧＲｂよりも増加するように求められる。
【０１５４】
次に、ステップＳ８１において、基本点火時期ＳＡｂに対し、ステップＳ７６もしくは後述するステップＳ９０で求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第２の燃焼変動操作量となる点火時期ＳＡを得る。
【０１５５】
なお、点火時期ＳＡは、先に説明した数式（３）を用いて、基本点火時期ＳＡｂよりも進角するように求められる。
【０１５６】
次に、ステップＳ８２において、排気還流量ＥＧＲの増加および点火時期ＳＡの進角による燃焼変動を検出し、検出値を燃焼変動検出値αとしてＥＣＵ２１内のメモリ等に記憶する。
【０１５７】
次に、ステップＳ８３において、ステップＳ８２で取得した燃焼変動検出値αが、予め定めた所定値以上であるか否か、すなわち現在の燃焼変動が許容範囲を超えているか否かを判定する。
【０１５８】
ステップＳ８３での判定結果が肯定（Ｙｅｓ）のときには、排気還流量ＥＧＲの増加および点火時期ＳＡの進角により燃焼変動が許容範囲を超えた（燃焼変動限界値に達した）という状態であり、その状態を記憶するために、フラグＦＶＡＲの値を１とする（ステップＳ８４）。
【０１５９】
そして、ステップＳ８５において、排気還流量ＥＧＲを燃焼変動限界値に達していない前回値に戻すために、基本排気還流量ＥＧＲｂに対し、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、排気還流量ＥＧＲを燃焼変動の許容範囲内とする。なお、排気還流量ＥＧＲの補正は、先に説明した数式（４）を用いて行う。
【０１６０】
同様に、ステップＳ８６において、点火時期ＳＡを燃焼変動限界値に達していない前回値に戻すために、基本点火時期ＳＡｂに対し、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）を用いて補正を行い、点火時期ＳＡを燃焼変動の許容範囲内とする。なお、点火時期ＳＡの補正は、先に説明した数式（５）を用いて行う。
【０１６１】
ステップＳ８５およびＳ８６の順序は上記に限定されるものではなく、ステップＳ８５およびＳ８６の終了後、ステップＳ９１に進む。
【０１６２】
一方、ステップＳ８３での判定結果が否定（Ｎｏ）のときには、排気還流量ＥＧＲおよび点火時期ＳＡは燃焼変動が許容範囲での最大値を超えていないという状態であり、その状態を記憶するために、フラグＦＶＡＲの値を０とする（ステップＳ８７）。
【０１６３】
そして、ステップＳ８８においては、ステップＳ７５で検出したエンジン回転数ＮＥおよびエンジン負荷ＣＥを用いて燃焼変動マップを参照し、エンジン回転数ＮＥおよびエンジン負荷ＣＥが含まれるマップ領域の燃焼変動操作補正量を、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）に書き換える。
【０１６４】
ここで、図１３に燃焼変動マップの書き換えの一例を示す。
図１３においては、図９に示した運転状態マップの運転状態(1)の領域には、燃焼変動操作補正量ａとして「Ｘ」が記憶されている。その他の運転状態の領域の燃焼変動操作補正量は初期値「１」のままである。
【０１６５】
これは、ステップＳ７５において検出した運転状態が、運転状態マップの運転状態(1)であり、ステップＳ８８において現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）の値「Ｘ」が、運転状態(1)の領域の新たな燃焼変動操作補正量として記憶されたことを意味している。
【０１６６】
次に、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を更新するために、まずステップＳ８９において、現在の燃焼変動操作補正量ＣＶＡＲ（ｉ）を新たな燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）としてＥＣＵ２１内のメモリ等に記憶する。
【０１６７】
続いて、ステップＳ８９で記憶された新たな燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）に、ステップＳ８２で記憶された燃焼変動検出値αを用いた関数ｆ（α）を加算することで、新たな燃焼変動操作補正量ＣＶＡＲ（ｉ）を求め（ステップＳ９０）、ステップＳ９１に進む。なお、関数ｆ（α）は、図４を用いて説明しており、燃焼変動操作補正量ＣＶＡＲ（ｉ）は、先に説明した数式（１）を用いて求める。
【０１６８】
ステップＳ９１では、フラグＦＶＡＲの値が１であるか、すなわち排気還流量ＥＧＲおよび点火時期ＳＡの両方をそれぞれ増加および進角することで燃焼変動が許容範囲を超えてしまう状態であるか否かを判定する。
【０１６９】
そして、ステップＳ９１の判定結果が肯定（Ｙｅｓ）のときには、第１の燃焼変動操作量である排気還流量ＥＧＲおよび第２の燃焼変動操作量である点火時期ＳＡの燃費が燃費最適値に達したと判断し、直ちに処理を終了する。
【０１７０】
一方、ステップＳ９１の判定結果が否定（Ｎｏ）のときには、燃費が燃費最適値に達していないと判断され、ステップＳ８０以下の処理を繰り返す。
【０１７１】
＜Ｅ−２．効果＞
以上説明したように実施の形態５における燃費最適化制御によれば、排気還流量および点火時期の相関関係に基づいて、排気還流量と点火時期とを組み合せて燃焼変動限界値内において最大の排気還流量および最大の点火時期の進角を実現させることで、排気還流量増加方向および点火時期進角方向に存在する燃費最適値に操作量を設定することができ、燃費を向上させることができる。
【０１７２】
また、運転状態を分類する運転状態マップに基づき、現運転状態が分類されたどの運転状態であるかを判定し、判定した運転状態に合わせて燃焼変動を操作するので、運転状態に適した燃費最適化制御が可能となる。
【０１７３】
また、燃焼変動マップには、運転状態ごとに、既に燃焼変動操作を行った際の燃焼変動操作補正量の最終値を記憶させるので、燃焼変動マップは燃焼変動操作補正量の最新値によって更新されることとなり、運転状態に適した燃費最適化制御が可能となる。
【０１７４】
＜Ｆ．実施の形態６＞
本発明に係る実施の形態６について、図１４〜図１７を用いて説明する。
実施の形態６における燃費最適化制御では、ＥＣＵ２１内に運転状態反映補正部を有し、初めて検出した運転状態の場合に、既に検出されたことのある運転状態すなわち、燃焼変動マップにおいて初期値以外の燃焼変動操作補正量を記憶している運転状態の燃焼変動操作補正量を用いて、現運転状態の燃焼変動操作量を補正することで燃費最適化制御を行う例について説明する。
【０１７５】
＜Ｆ−１．燃費最適化制御＞
以下、図１を参照しつつ、図１４および図１５に示すフローチャートを用いてＥＣＵ２１による燃費最適化制御について説明する。なお、図１４および図１５は連続した処理を分割して示しており、記号（Ｂ）において互いに接続される。また、図１４および図１５に示す処理動作は、所定の時間ごと（例えば１０ｍｓｅｃごと）に繰り返し実行される。
【０１７６】
処理動作が開始されると、図１４に示すステップＳ１０１〜Ｓ１０４を経て、エンジン定常運転状態であるか否かの判定を行う。この一連の処理は、実施の形態５において図１０を用いて説明したステップＳ７１〜Ｓ７４の処理と同じであるので説明は省略する。
【０１７７】
ステップＳ１０４を経て、エンジン定常運転状態であると判断された場合はステップＳ１０５に進み、運転状態が定常ではないと判断された場合は、直ちに処理を終了する。
【０１７８】
次に、ステップＳ１０５およびステップＳ１０６を経て、燃焼変動マップから現運転状態に対応するマップ値を読み出し、燃焼変動操作補正量ＣＶＡＲ（ｉ）としてＥＣＵ２１内のメモリ等に記憶する。この一連の処理は、実施の形態において図１１を用いて説明したステップＳ７５およびＳ７６の処理と同じであるので説明は省略する。
【０１７９】
次に、ステップＳ１０６で記憶された燃焼変動操作補正量ＣＶＡＲ（ｉ）が、燃焼変動マップの初期値であるか否か、すなわちステップＳ１０５で判定された運転状態で燃焼変動操作が一度でも行われているか否かを、ステップＳ１０７において判別する。
【０１８０】
そして、ステップＳ１０７での判定結果が否定（Ｎｏ）の場合には、すなわちステップＳ１０５で判定された運転状態で燃焼変動操作が一度でも行われていると判別された場合にはステップＳ１０８に進む。
【０１８１】
一方、ステップＳ１０７での判定結果が肯定（Ｙｅｓ）の場合には、すなわちステップＳ１０５で判定された運転状態で燃焼変動操作が一度も行われていないと判別された場合には、ステップＳ１２０に進む。
【０１８２】
ステップＳ１２０では、燃焼変動マップにおいて、初期値以外の燃焼変動操作補正量を記憶している他の運転状態の１つを選択し、当該他の運転状態の燃焼変動操作補正量を、一時的に燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）として記憶する。
【０１８３】
次に、ステップＳ１２１において、現運転状態の燃焼変動操作補正量ＣＶＡＲ（ｉ）に対し、ステップＳ１２０で記憶された燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）および運転状態補正係数γで補正することで、他の運転状態の燃焼変動マップ値が反映された運転状態反映補正量を得ることができる。なお、得られた運転状態反映補正量は、現運転状態の燃焼変動操作補正量ＣＶＡＲ（ｉ）として記憶する。
【０１８４】
運転状態反映補正量は以下の数式（１１）によって得ることができる。
【０１８５】
ＣＶＡＲ（ｉ）＝ＣＶＡＲ（ｉ）×ＣＶＡＲ（ｉ−１）×γ・・・（１１）
なお、運転状態補正係数γは、ステップＳ１０５で検出した現運転状態における燃焼変動操作補正量と、ステップＳ１２０で選択した他の運転状態における燃焼変動操作補正量との差に対応して予め定めた数値を使用する。
【０１８６】
ここで、初期値以外の燃焼変動操作補正量を記憶した燃焼変動マップの一例を図１６に示す。
図１６は、図１３に示した燃焼変動マップと基本的には同じであるが、図１６に示す燃焼変動操作補正量ａ、ｂ、ｃ、ｄ、ｅは初期値以外の値を有する、いわゆる他の運転状態の燃焼変動操作補正量である。なお、燃焼変動操作補正量ｆ、ｇ、ｈ、ｉは初期値「１」となっている。
【０１８７】
このようなマップにおいて、例えば、現運転状態が燃焼変動操作補正量ｇを有する運転状態である場合、ステップＳ１２０において、他の運転状態として、燃焼変動操作補正量ａを有する運転状態を選択した場合、ステップＳ１２１においては、燃焼変動操作補正量ｇと燃焼変動操作補正量ａとの差に基づいて、予め定めた表からγの値を求める。
【０１８８】
なお、上記表には、各種燃焼変動操作補正量差にそれぞれ対応するように、予め定めた運転状態補正係数γが設定されており、その情報はＥＣＵ２１内のメモリ等に記憶されている。
【０１８９】
ここで、運転状態補正係数γは、運転状態間におけるエンジン回転数およびエンジン負荷の差に基づいて設定され、例えば図９に示す運転状態(1)と(2)のように、運転状態が類似するものどうしではγが大きく、運転状態(1)と(9)のように、運転状態が全く異なるものどうしではγが小さくなるように設定される。なお、運転状態補正係数γの値は、０≦γ≦１の範囲に設定される。
【０１９０】
また、数式（１１）では燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）と現運転状態の燃焼変動操作補正量ＣＶＡＲ（ｉ）との掛け算により燃焼変動操作補正量ＣＶＡＲ（ｉ）を求める方法を説明したが、掛け算の代わりに加算を用いることでも、同等の効果が得られる。
【０１９１】
なお、運転状態補正係数γを使用せず、他の運転状態の燃焼変動操作補正量のみを使用して、現運転状態の燃焼変動操作量を補正しても良い。
【０１９２】
次に、ステップＳ１２２において、ステップＳ１２０で選択した他の運転状態における燃焼変動操作補正量は、現運転状態の燃焼変動操作補正量ＣＶＡＲ（ｉ）の補正に使用されたことを記憶するために、燃焼変動マップの当該他の運転状態のフラグＦＲＥＶの値を「１」にする。
【０１９３】
図１７に、燃焼変動マップにおける各運転状態ごとのフラグＦＲＥＶの値を示す。図１７において、ステップＳ１２０において他の運転状態として選択した燃焼変動操作補正量ａを有する運転状態においては、ステップＳ１２２を経ることでフラグＦＲＥＶが「１」となっており、その他の運転状態では「０」となっている。
【０１９４】
次に、ステップＳ１２３において、燃焼変動マップにおける初期値以外の燃焼変動操作補正量を有する全ての運転状態の燃焼変動操作補正量に基づいて、現運転状態の燃焼変動操作補正量を補正したかについて判定する。
【０１９５】
そして、ステップＳ１２３において、判定結果が否定（Ｎｏ）のときには、ステップＳ１２０に戻り、ステップＳ１２０〜Ｓ１２２の処理を繰り返す。
【０１９６】
すなわち、ステップＳ１２０〜Ｓ１２２までの処理は、燃焼変動マップにおける初期値以外の燃焼変動操作補正量を有する全ての運転状態を対象にして実施され、図１７に示す燃焼変動マップに即して説明すれば、太枠線で囲まれた領域内の全ての運転状態において、フラグＦＲＥＶが「１」となるまで繰り返される。
【０１９７】
一方、ステップＳ１２３において、判定結果が肯定（Ｙｅｓ）のときには、燃焼変動操作補正量ＣＶＡＲ（ｉ）の補正が完了したと判断し、ステップＳ１２４において、燃焼変動マップにおける全ての運転状態のフラグＦＲＥＶを「０」に初期化し、ステップＳ１０８に進む。
【０１９８】
ステップＳ１０８においては、基本排気還流量ＥＧＲｂに対し、ステップＳ１０６、ステップＳ１２１および後述するステップＳ１１８の何れかで求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第１の燃焼変動操作量となる排気還流量ＥＧＲを得る。
【０１９９】
なお、排気還流量ＥＧＲは、先に説明した数式（２）を用いて、基本排気還流量ＥＧＲｂよりも増加するように求められる。
【０２００】
次に、ステップＳ１０９において、基本点火時期ＳＡｂに対し、ステップＳ１０６、ステップＳ１２３および後述するステップＳ１１８の何れかで求めた燃焼変動操作補正量ＣＶＡＲ（ｉ）を用いて補正を行い、第２の燃焼変動操作量となる点火時期ＳＡを得る。
【０２０１】
なお、点火時期ＳＡは、先に説明した数式（３）を用いて、基本点火時期ＳＡｂよりも進角するように求められる。
【０２０２】
以下、ステップＳ１１０〜Ｓ１１９の処理は、図１１を用いて説明したステップＳ８２〜Ｓ９１の処理と同じであり、説明は省略する。
【０２０３】
＜Ｆ−２．効果＞
以上説明したように実施の形態６における燃費最適化制御によれば、ＥＣＵ２１内の運転状態反映補正部において、ステップＳ１２０〜ステップＳ１２４の処理を行うことで、現運転状態が初めて検出された運転状態である場合に、既に検出されたことのある運転状態すなわち、燃焼変動マップにおいて初期値以外の燃焼変動操作補正量を記憶している運転状態の燃焼変動操作補正量および予め定めた運転状態補正係数γを用いて、現運転状態の燃焼変動操作補正量を補正するので、初めて検出された運転状態において燃焼変動操作補正量を初期値から順に変更する必要がなく、燃費最適化制御をより速やかに行うことができる。
【０２０４】
また、ステップＳ１２０〜Ｓ１２２までの処理は、燃焼変動マップにおける初期値以外の燃焼変動操作補正量を有する全ての運転状態を対象にして実施されるので、現運転状態の燃焼変動操作補正量の補正精度を高めることができ、より正確な燃費最適化制御を行うことができる。
【０２０５】
＜Ｇ．変形例＞
以上説明した実施の形態１〜６においては、クランク角度センサ出力による回転数変動またはノックセンサ出力による平均値の変化量を用いて燃焼変動検出を行う例を示したが、これらの他に空燃比センサ信号、筒内圧センサ信号、イオン電流センサ信号、排ガス成分濃度センサ信号等の変化量を算出し、それを用いて燃焼変動検出を行っても良い。
【０２０６】
実施の形態１〜６においては、数式（１）のように、燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）と燃焼変動検出値αを用いた関数ｆ（α）とを加算して、燃焼変動操作補正量ＣＶＡＲ（ｉ）を求める方法を説明したが、加算の代わりにｆ（α）を掛ることでも、同等の効果が得られる。
【０２０７】
また、数式（６）のように、第２の燃焼変動操作補正量前回値ＣＶＡＲ２（ｉ−１）と第２の燃焼変動検出値βを用いた関数ｆ（β）とを加算して第２の燃焼変動操作補正量ＣＶＡＲ２（ｉ）を求める方法を説明したが、加算の代わりにｆ（β）を掛けることでも、同等の効果が得られる。
【０２０８】
また、数式（２）〜（５）を用いて説明したように、排気還流量ＥＧＲおよび点火時期ＳＡを、それぞれ、基本排気還流量ＥＧＲｂおよび基本点火時期ＳＡｂと燃焼変動操作補正量ＣＶＡＲ（ｉ）との掛け算または燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）との掛け算により取得する方法を説明したが、掛け算の代わりに加算を用いても同等の効果が得られる。
【０２０９】
また、燃焼変動操作補正量ＣＶＡＲ（ｉ）および燃焼変動操作補正量前回値ＣＶＡＲ（ｉ−１）の代わりに、一次関数で表される係数ＫＳＴＥＰ（ｉ）および前回係数ＫＳＴＥＰ（ｉ−１）を使用しても良い。
【０２１０】
ここで、係数ＫＳＴＥＰ（ｉ）の一例について図１８を用いて説明する。
図１８に示すように、係数ＫＳＴＥＰ（ｉ）は単調増加一次関数で表され、初期値として「１」を有し、燃焼変動操作量であるＥＧＲやＳＡが、１回操作されるごとに所定量増加するように設定される。
【０２１１】
このような係数ＫＳＴＥＰ（ｉ）および前回係数ＫＳＴＥＰ（ｉ−１）を用いても同等の効果が得られる。
【図面の簡単な説明】
【０２１２】
【図１】本発明に係る内燃機関の制御装置および内燃機関についての全体構成を示す図である。
【図２】クランクの回転角速度による燃焼変動検出方法を示す図である。
【図３】本発明に係る実施の形態１の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図４】燃焼変動検出値αとｆ（α）の関係を示す図である。
【図５】本発明に係る実施の形態２の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図６】燃焼変動検出値βとｆ（β）の関係を示す図である。
【図７】本発明に係る実施の形態３の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図８】本発明に係る実施の形態４の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図９】運転状態マップを説明する概念図である。
【図１０】本発明に係る実施の形態５の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図１１】本発明に係る実施の形態５の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図１２】燃焼変動マップを説明する概念図である。
【図１３】燃焼変動マップの書き換えの一例を説明する図である。
【図１４】本発明に係る実施の形態６の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図１５】本発明に係る実施の形態６の内燃機関の制御装置の制御動作を説明するフローチャートである。
【図１６】初期値以外の燃焼変動操作補正量を記憶した燃焼変動マップの一例を示す図である。
【図１７】燃焼変動マップにおける各運転状態ごとのフラグ値を示す図である。
【図１８】燃焼変動操作補正量を求めるための係数ＫＳＴＥＰの一例を示す図である。
【符号の説明】
【０２１３】
１  エンジン、１９  クランク角度センサ、２０  ノックセンサ。
【図１】
2006037827.tif 000003
【図２】
2006037827.tif 000004
【図３】
2006037827.tif 000005
【図４】
2006037827.tif 000006
【図５】
2006037827.tif 000007
【図６】
2006037827.tif 000008
【図７】
2006037827.tif 000009
【図８】
2006037827.tif 000010
【図９】
2006037827.tif 000011
【図１０】
2006037827.tif 000012
【図１１】
2006037827.tif 000013
【図１２】
2006037827.tif 000014
【図１３】
2006037827.tif 000015
【図１４】
2006037827.tif 000016
【図１５】
2006037827.tif 000017
【図１６】
2006037827.tif 000018
【図１７】
2006037827.tif 000019
【図１８】
2006037827.tif 000020