以下、本発明にかかる空燃比制御装置を、内燃機関を搭載した車両を統括的に制御する電子制御装置として具体化した一実施形態について、図1〜7を参照して説明する。
図1に、本実施形態に係る内燃機関1及びその周辺機構を示す。同図に示すように、内燃機関1は、吸気通路11、燃焼室12及び排気通路13が順に接続されてなる。
本実施形態の内燃機関1は、吸気通路11に設けられて同通路11に燃料を噴射する吸気通路噴射弁15と、燃焼室12に設けられて燃焼室12に燃料を直接噴射する筒内噴射弁16との2つの燃料噴射弁を備える、いわゆるデュアル・インジェクション・システムが採用されている。内燃機関1の吸気通路11において吸気通路噴射弁15の上流側には、スロットルバルブ14が設けられおり、このスロットルバルブ14はスロットルモータ17により開度制御がなされることにより燃焼室12に供給される吸気を調量する。また、内燃機関1の燃焼室12の頂面には、図示を省略するが、点火プラグが設けられている。
内燃機関1の燃焼室12においては、2つの燃料噴射弁15,16から噴射された燃料とスロットルバルブ14により調量された空気とが混合され、この混合気に対する点火プラグによる火花点火によって同混合気が燃焼することにより内燃機関1の出力が発生する。また、燃焼により発生した排気は排気通路13へと排出される。
こうした内燃機関1の制御は、電子制御装置2により行われる。電子制御装置2は、各種の演算処理を実行する中央演算処理装置(CPU)、各種の制御に必要なプログラムやデータを記憶する不揮発性メモリ(ROM)、入力データや演算結果を一時的に記憶する揮発性メモリ(DRAM)、記憶データを書き換え可能な不揮発性メモリ(EEPROM)を備えている。また、電子制御装置2は、外部との間で信号を入・出力するための入・出力ポート等を備えている。
電子制御装置2の入力ポートには、機関運転状況を検出するための各種のセンサが接続されている。各種センサとしては、吸気通路11においてスロットルバルブ14の上流側に設けられ、燃焼室12に供給される吸気の量(以下、「吸気量GA」)を検出するエアフローメータ21、スロットルバルブ14の開度TAを検出するスロットル開度センサ22が挙げられる。また、排気通路13に設けられ、排気の酸素濃度に基づいて燃焼室12で燃焼する混合気の空燃比A/Fを検出するための空燃比センサ23が挙げられる。また、内燃機関1のクランクシャフトの回転から機関回転速度NEを検出する機関回転速度センサ24、アクセルペダルの操作量(以下、「アクセル開度ACCP」)を検出するアクセル開度センサ25、内燃機関1の冷却水を流通させるウォータジャケット内の冷却水の温度(以下、「冷却水温THW」)を検出するための水温センサ26が挙げられる。
また電子制御装置2の出力ポートには、吸気通路噴射弁15、筒内噴射弁16、スロットルモータ17及び点火プラグ等の駆動回路が接続されている。そして、電子制御装置2は、上記各種センサの検出結果に基づいて、これらの駆動回路に指令信号を出力することで、吸気量制御、燃料噴射制御及び点火制御等の機関制御を実施する。
電子制御装置2による燃料噴射制御は以下のようにして実行される。
まず、電子制御装置2は、機関運転状態に基づいて2つの燃料噴射弁15,16による燃料の噴射量比率を設定する。具体的には、電子制御装置2は、筒内噴射弁16のみが燃料を噴射する第1の燃料噴射パターン、吸気通路噴射弁15のみが燃料を噴射する第2の燃料噴射パターン、及び2つの燃料噴射弁15,16が燃料を噴射する第3の燃料噴射パターンを機関運転状態に基づいて切り換える。すなわち、本実施形態では、筒内噴射弁16が第1の燃料噴射弁を構成し、第1の燃料噴射パターンでは、2つの燃料噴射弁15,16のうちの筒内噴射弁16による燃料噴射量の比率が100%に設定され、第2の燃料噴射パターンでは、2つの燃料噴射弁15,16のうちの吸気通路噴射弁15による燃料噴射量の比率が100%に設定される。また、電子制御装置2は、アクセル開度ACCPに基づいて、燃焼室12に導入される吸気量GAが調整されるように、スロットルモータ17を制御してスロットルバルブ14の開度を調整する。そして、こうして制御される吸気量GAと燃料とによる混合気の空燃比が目標空燃比となるように、燃料噴射量を制御する。すなわち、本実施形態では、2つの燃料噴射弁15,16から噴射される燃料の総量が、実際の空燃比を目標空燃比とする燃料量となるように制御する。
こうした燃料噴射制御について、まず機関運転状態に基づく燃料噴射パターンの設定について説明する。本実施形態において電子制御装置2は、内燃機関1の運転中においてアクセルペダルが踏み込まれるとき、すなわちアイドル運転以外の運転中においては、機関運転状態に最適な燃料噴射を実行すべく第3の燃料噴射パターンを実行する。また、電子制御装置2は、内燃機関1のアイドル運転中においては、燃料噴射を簡易に実行すべく、2つの燃料噴射弁15,16のうちの一方のみにより燃料が噴射される第1燃料噴射パターン又は第2の燃料噴射パターンを実行するが、より詳細には、以下のように第1燃料噴射パターンと第2の燃料噴射パターンとを切り換える。
すなわち、筒内噴射弁16により燃料が噴射される場合は、燃焼室12内に直接燃料を噴射すべく、燃料の噴射圧力を高圧にする必要があるため、図示しない燃料ポンプによって燃料の圧力を高圧に上昇させる必要がある。そのため、機関回転速度NEが低く、車両が停止していることも多いアイドル運転中において、筒内噴射弁16のみによる燃料噴射を実施すると、燃料が噴射される際に発生する騒音や、燃料ポンプの作動音が顕著となり、車室内の運転者等に違和感を与える虞がある。従って、このような観点においては、内燃機関1のアイドル運転中において、第2の燃料噴射パターンを実行すること、すなわち吸気通路噴射弁15のみによる燃料噴射を実行することが好ましい。
しかしながら、機関温度が高い場合に筒内噴射弁16による燃料噴射が実行されなかったり、機関温度が低い場合であっても筒内噴射弁16による燃料噴射が長期間実行されなかったりすると、筒内噴射弁16の先端温度が高温となりやすく、筒内噴射弁16の噴口部に付着した燃料等が徐々に炭化しデポジットとして堆積する。そして、これにより、筒内噴射弁16の噴孔部の流路面積が小さくなって、噴射される燃料量が少なくなるなどの問題が生じる。そのため、このような場合には、筒内噴射弁16による燃料噴射を実行し、燃料の噴射圧によりデポジットを除去したり、噴射された燃料の霧化による気化熱により筒内噴射弁16の先端温度を低下させたりする必要がある。
そこで、本実施形態では、内燃機関1がアイドル運転中であって且つ機関温度が低い場合には、基本的には、筒内噴射弁16の燃料噴射による騒音や燃料ポンプの作動音を抑制すべく、第2の燃料噴射パターンを実行する。しかしながら、内燃機関1がアイドル運転中であって且つ機関温度が低い場合であっても、第2の燃料噴射パターンが長期間継続されることにより筒内噴射弁16のデポジット付着が懸念される場合には、第1の燃料噴射パターンを実行する。さらに、内燃機関1がアイドル運転中であって且つ機関温度が高い場合には、筒内噴射弁16のデポジット付着を抑制すべく、第1の燃料噴射パターンを実行するようにしている。すなわち、本実施形態において第1の燃料噴射パターンが実行される第1の機関運転状態とは、内燃機関1がアイドル運転中であって且つ機関温度が低い状態が長期間継続した状態、又は、アイドル運転中であって機関温度が高い状態である。また、第2の燃料噴射パターンが実行される第2の機関運転状態とは、内燃機関1がアイドル運転中であって且つ機関温度が低い状態であり、この状態が未だ長期間継続していない状態である。
以上により、本実施形態では、電子制御装置2が、図2のフローチャートに示す手順に従って燃料噴射パターンを設定する。図2は、内燃機関1における燃料噴射パターンの設定ルーチンを示すフローチャートである。このルーチンは、内燃機関1の運転中において所定の制御周期毎の割り込み処理として繰り返し実行される。
図2に示すように、燃料噴射パターンの設定ルーチンがスタートすると、まずステップS11において、現在がアイドル運転中であるか否かが判定される。ここで、内燃機関1のアイドル運転中とは、車両停止中において機関回転数を目標アイドル回転数に制御するいわゆるISC制御が実行される運転中、及び車両走行中の減速時などにおいて燃料が噴射される運転状態であるときをいう。そして、現在がアイドル運転中であると判定されると、ステップS12に移る。
ステップS12では、冷却水温THWが所定温度TS未満であるか否かが判定される。そして、水温センサ26の検出信号に基づいて冷却水温THWが所定温度TS以上であると判定されると、ステップS16に移り、第1の燃料噴射パターンが実行され、その後、エンドに移り本ルーチンが一旦終了される。このようにして、本実施形態では、アイドル運転中において冷却水温が所定温度TS以上である場合には、機関温度が高いと判断し、筒内噴射弁16のデポジット付着を抑制すべく、筒内噴射弁16のみによる燃料噴射が実行される。
一方、ステップS12において、冷却水温THWが所定温度TS未満であると判定されると、ステップS13に移り、カウントアップが行われる。ステップ13では、前回のルーチンにおけるカウントCn−1 に「1」が加算される。すなわち、前回のカウントCn−1 が「0」であれば、今回のカウントCn は「1」となり、前回のカウントCn−1 が「1」であれば、今回のカウントCn は「2」となる。そして、ステップS14に移り、現在のカウントCn が所定カウントCt であるか否かが判定され、ステップS14において、現在のカウントCn が未だ所定カウントCt に達していないと判定されると、ステップS17に移り、第2の燃料噴射パターンが実行される。このようにして、ステップS12〜S14の処理により、アイドル運転中で且つ機関温度が低い状態が、カウントCn が所定カウントCt に達する程度に長期間継続しているか否かが判定される。そして、未だアイドル運転中で機関温度が低い状態が長期間継続していない場合には、吸気通路噴射弁15のみによる燃料噴射が実行される。
一方、先のステップS14において、現在のカウントCn が所定カウントCt に達していると判定されると、ステップS15に移り、カウントCn がクリアされ、ステップS16に移って第1の燃料噴射パターンが実行される。すなわち、現在がアイドル運転中であって且つ機関温度が低い場合であっても、現在のカウントCn が所定カウントCt に達する程度に第2の燃料噴射パターンが長期間実行されると、筒内噴射弁16のデポジット付着が懸念される。そこで、このような場合には、アイドル運転中で機関温度が低い場合であっても第1の燃料噴射パターンを実行する。
なお、この所定カウントCt は、例えば、アイドル運転中で機関温度が低い状態において、このルーチンが実行される制御周期が所定カウントCt 繰り返される期間継続して筒内噴射弁16が燃料を噴射しない場合であっても、筒内噴射弁16のデポジット付着が問題とはならない上限値に設定される。また、機関温度が高いほど、筒内噴射弁16のデポジット付着が生じやすくなるため、冷却水温THWが所定温度TS未満である場合において、冷却水温THWが高いほど、所定カウントCt を小さい値に設定するようにしてもよい。
一方、先のステップS11において、現在がアイドル運転中ではないと判定される場合には、ステップS18に移り、2つの燃料噴射弁15,16の双方から燃料を噴射する第3の燃料噴射パターンが設定され、エンドに移り、本ルーチンが一旦終了される。
この第3の燃料噴射パターンにおいては、機関負荷及び機関回転速度NEに基づいて、吸気通路噴射弁15の噴射比率Rpと、筒内噴射弁16の噴射比率Rdとが、0<Rp<1、0<Rd<1、Rp+Rd=1」を満たす範囲内で可変設定される。具体的には、各燃料噴射弁15,16による燃料噴射量の比率Rp,Rdは、例えば図3のマップに基づいて設定される。すなわち、機関回転速度NE及び負荷がともに小さい低負荷低回転領域A1では、吸気通路噴射弁15からの噴射比率Rpが高く、筒内噴射弁16からの噴射比率Rdを低くなるように設定される。また、高負荷高回転領域A3では、吸気通路噴射弁15からの噴射比率Rpが低く、筒内噴射弁16からの噴射比率Rdが高くなるように設定され、燃料の霧化による吸気冷却作用を利用して吸気の充填効率の向上を図る。そして、この間の中負荷中回転領域A2となる運転領域においては、この間の燃料噴射比率で燃料噴射が実行される。なお、本実施形態では、吸気量GAを機関負荷の指標値として、ここでの噴射比率の算出を行っている。また、この図3に示すマップは予め行われる実験等の結果に基づいて演算マップに予め設定されている。
以上のようにして、電子制御装置2は、燃料噴射パターンを設定する。
次に、こうして設定された燃料噴射パターンにおいて、各燃料噴射弁15,16により噴射される燃料の総量を制御する方法について説明する。上述したように、電子制御装置2は、燃焼室12に導入される混合気の空燃比が目標空燃比となるように、燃料噴射量を制御する。なお、本実施形態の内燃機関1においては目標空燃比として基本的には理論空燃比(14.7)が設定され、機関運転状態によってはリッチ側またはリーン側の空燃比が目標空燃比として設定されることもある。
まず、電子制御装置2は、上記エアフローメータ21が検出する吸気量GAに基づいて、燃焼室12に導入される混合気の空燃比が目標空燃比となるように、基本燃料噴射量Qbを算出する。そして、下式に基づいて最終燃料噴射量Qfを算出する。
Qf←Qb×{1+(FAF−1.0)+(KG−1.0)} … 式
上式において、フィードバック制御量FAF及び学習値KGは、後述する空燃比フィードバック制御により算出される燃料噴射量の補正量であり、それぞれ目標空燃比に対する実際の空燃比の一時的なずれを補償するための補正量及び目標空燃比に対する実際の空燃比の定常的なずれを補償するための補正量として設定される。
そして、本実施形態では、2つの燃料噴射弁15,16によって噴射される燃料の総量が、この最終燃料噴射量Qfとなるように制御される。すなわち、上記第1の燃料噴射パターンの実行中においては、この最終燃料噴射量Qfに応じた期間だけ筒内噴射弁16を開弁させ、上記第2の燃料噴射パターンの実行中においては、最終燃料噴射量Qfに応じた期間だけ吸気通路噴射弁15を開弁させる。また、第3の燃料噴射パターンにおいては、筒内噴射弁16の燃料噴射量が「Rd×Qf」となり、吸気通路噴射弁15の燃料噴射量が「Rp×Qf」となるように、各燃料噴射弁15,16が開弁される。
次に、空燃比フィードバック制御について図4を参照して説明する。図4は、空燃比フィードバック制御の処理手順を示すフローチャートである。この制御は、電子制御装置2により所定制御周期毎の割り込み処理として繰り返し実行される。
空燃比フィードバック制御においては、先ずステップS21において、空燃比フィードバック制御の実行条件が成立しているか否かが判定される。空燃比フィードバック制御の実行条件としては、例えば、機関始動時ではない、燃料カットが行われていない、空燃比センサ23が活性化している等を挙げることができる。そして、これら各条件のうち少なくとも一つが成立していない場合には、ステップS22に移り、フィードバック制御量FAFが「1.0」が設定され、本制御が一旦終了される。従って、この場合には、フィードバック制御量FAFに基づく燃料噴射量のフィードバック制御が実質的に行われない。
一方、上記各条件が全て成立しており、空燃比フィードバック制御の実行が許可される場合には、ステップS23に移り、出力電圧VAFが基準電圧VTRGよりも高いか否かが判定される。
ここで図5に示されるように、空燃比センサ23の出力電圧VAFは、排気の酸素濃度が高くなるにつれて、すなわち混合気の空燃比の目標空燃比に対するリーン側への乖離量が増大するにつれて大きくなり、排気の酸素濃度が低くなるにつれて、すなわち混合気の空燃比の目標空燃比に対するリッチ側への乖離量が増大するにつれて小さくなる。そして、混合気の空燃比が目標空燃比となるときには、空燃比センサ23の出力電圧が基準電圧VTRGとなる。そこで、空燃比センサ23の出力電圧VAFと基準電圧VTRGとの偏差を減少させるべく、ステップS23においては、出力電圧VAFと基準電圧VTRGとの大小関係について判定する。
ステップS23において、出力電圧VAFが基準電圧VTRGを上回っていると判断される場合、すなわち混合気の空燃比が目標空燃比よりもリーンであると判断される場合には、ステップS24に移る。そして、ステップS24において、そのときのフィードバック制御量FAFに対して所定量FKupが加算され、これによる演算結果(FAF+FKup)が新たなフィードバック制御量FAFとして設定されて、ステップS26に移行する。
一方、出力電圧VAFが基準電圧VTRG以下である旨判断される場合、すなわち混合気の空燃比が目標空燃比よりもリッチであると判断される場合には、ステップS25に移る。そして、ステップS25において、そのときのフィードバック制御量FAFから所定量FKdwnが減算され、これによる演算結果(FAF−FKdwn)が新たなフィードバック制御量FAFとして設定されて、ステップS26に移行する。
そして、ステップS26〜S28では、混合気の空燃比と目標空燃比との定常的な乖離傾向を補償すべく、フィードバック制御量FAFの平均値FAFaveと所定値α及び所定値β(α<1.0<β)との比較に基づいて学習値KGの更新を行う。なお、この平均値FAFaveとしては、例えば、前回の制御ルーチンと今回の制御ルーチンにおけるフィードバック制御量FAFの平均値を用いることができる。すなわち、混合気の空燃比と目標空燃比との間に定常的に乖離する傾向がない場合には、フィードバック制御量FAFは基準値である「1.0」を中心としてその近傍で変動するようになるため、フィードバック制御量FAFの平均値FAFaveは略「1.0」に等しくなる。一方、例えば燃料噴射弁15,16の個体差や劣化、又はエアフローメータ21の劣化による検出誤差等に起因して混合気の空燃比が目標空燃比からリッチ側あるいはリーン側に定常的に乖離する傾向がある場合、フィードバック制御量FAFは基準値である「1.0」とは異なる値を中心としてその近傍で変動するようになる。そのため、このような場合には、フィードバック制御量FAFの平均値FAFaveは、その乖離傾向に応じて「1.0」とは異なる値に収束するようになる。このため、フィードバック制御量FAFの基準値「1.0」とその平均値FAFaveとの間の乖離度合に基づいて混合気の空燃比と目標空燃比との乖離傾向を把握することができる。
そこで、まず、ステップS26においては、フィードバック制御量FAFの平均値FAFaveが所定値α以上且つ所定値β以下であるか否かが判定される。そして、ステップS26において、フィードバック制御量FAFの平均値FAFaveが所定値α以上かつ所定値β以下の範囲にある場合には、同平均値FAFaveがその基準値「1.0」の近傍で変動しており、混合気の空燃比が目標空燃比から乖離する傾向はないと判断される。従って、本制御が一旦終了され、学習値KGは更新されることなく、そのときの値が保持される。
一方、ステップS26において、フィードバック制御量FAFの平均値FAFaveが所定値βを上回る場合には、ステップS27に移り、混合気の空燃比が目標空燃比に対してリーン側に乖離する傾向があると判断し、この乖離傾向を補償すべく、そのときの学習値KGに所定量Kupを加算して学習値KGをより大きい値に更新する。また、ステップS26において、フィードバック制御量FAFの平均値FAFaveが所定値α未満であると判定される場合には、ステップS28に移り、混合気の空燃比が目標空燃比に対してリッチ側に乖離する傾向があると判断し、この乖離傾向を補償すべく、そのときの学習値KGから所定量Kdwnを減算して学習値KGをより小さい値に更新する。このようにして学習値KGを算出した後、この一連の制御が一旦終了される。なお、この学習値KGは、目標空燃比と実際の空燃比との定常的な乖離傾向がない場合には、初期値「1.0」を中心としてその近傍で変動する。
以上のようにして、空燃比フィードバック制御が実行され、最終燃料噴射量Qfを導出するためのフィードバック制御量FAF及び学習値KGが導出される。
ここで、本実施形態では、こうして導出されるフィードバック制御量FAFと学習値KGを各燃料噴射パターンに応じて使い分けるようにしている。すなわち、例えば、第2の燃料噴射パターンにおいて導出されるフィードバック制御量FAF及び学習値KGは、吸気通路噴射弁15のみによって燃料を噴射する際における目標空燃比に対する実際の空燃比のずれを補償するための値である。従って、第2の燃料噴射パターンから第1の燃料噴射パターンや第3の燃料噴射パターンに切り替わった際に、第2の燃料噴射パターンの実行中に導出されていたフィードバック制御量FAFや学習値KGをそのまま用いても、空燃比制御を適切に行うことができない。そこで、各燃料噴射パターンに応じてフィードバック制御量FAFと学習値KGを使い分けるようにしている。具体的には、機関運転状態に応じて燃料噴射パターンが第2の燃料噴射パターンに切り換わったときには、電子制御装置2において記憶されている過去に第2の燃料噴射パターンが実行された際に導出されたフィードバック制御量FAFや学習値KGを用い、上記空燃比フィードバック制御を実行する。また、機関運転状態に応じて燃料噴射パターンが第3の燃料噴射パターンに切り換わったときには、電子制御装置2において記憶されている過去に第3の燃料噴射パターンが実行された際に導出されたフィードバック制御量FAFや学習値KGを用い、上記空燃比フィードバック制御を実行する。
ところで、機関運転状態に応じて燃料噴射パターンが第1の燃料噴射パターンに切り換わったときに、過去に第1の燃料噴射パターンが実行されたときに学習された学習値KGを用いると以下のような問題が生じる虞がある。すなわち、上述したように、筒内噴射弁16のみにより燃料が噴射される第1の燃料噴射パターンは、アイドル運転中において冷却水温THWが所定温度TS未満である状態が長期間継続したこと、又はアイド中において冷却水温THWが所定温度TS以上であることを条件に実行される。そのため、例えば、内燃機関の始動から停止までの1運転トリップにおいて、冷却水温THWが所定期間TS未満のままであったり、アイドル運転が継続される期間が短期間であったりすると、この1運転トリップにおいて第1の燃料噴射パターンが一度も実行されず、同燃料噴射パターンにおける空燃比フィードバック制御も実行されないこととなる。
そして、このような運転トリップが頻繁に実行される場合等、第1の燃料噴射パターンが希にしか実行されない場合には、この第1の燃料噴射パターンに切り替わった際に、過去に第1の燃料噴射パターンを実行した際に学習した学習値KGを用いても、この学習値KGが現在の運転条件には適さない値となっている虞がある。そのため、上記空燃比フィードバック制御において、例えばフィードバック制御量FAFを所定範囲内にガードするといった態様を採用する場合には、学習値KGが現在の運転条件には適さない値となることによって、フィードバック制御量FAFがガード値となっても、実際の空燃比が目標空燃比とはならないといった事態が生じ得る。また、上記空燃比フィードバック制御において、学習値の更新の際に加算又は減算する所定量Kup,Kdwnが一定量である場合等においては、現在の運転条件に適した学習値となるまでに長期間を要す場合もあり、こうした場合にも、空燃比フィードバック制御を適切に行うことができない。
そこで、本実施形態の電子制御装置2は、現在の運転トリップにおける第1の燃料噴射パターンの学習値KGとして、第1の燃料噴射パターンにおいて過去の運転トリップに学習された学習値KGを第2の燃料噴射パターンにおける学習値KGにより補正した値や、第3の燃料噴射パターンにおける学習値KGに基づいて導出された値を設定するようにしている。本実施形態における第1の燃料噴射パターンの学習値の設定ルーチンを図6及び図7に基づいて説明する。図6及び図7は、現在の運転トリップにおける第1の燃料噴射パターンにおける学習値の設定ルーチンの実行手順を示すフローチャートである。なお、このフローチャートに示すように、以下においては、第1〜第3の各燃料噴射パターンにおける学習値を、それぞれ学習値KGd、KGp、KGbと示し、さらに、現在の運転トリップの学習値には「e」、過去の運転トリップの学習値には「p」をこれらの記号の後に付与して示す。このルーチンは、内燃機関1の運転中において所定の制御周期毎の割り込み処理として繰り返し実行される。
本ルーチンが開始されると、先ずステップS31において、現在の運転トリップにおいて、第1の燃料噴射パターンにおける学習値KGdeが学習済みであるか否かが判定される。すなわち、現在の運転トリップにおいて、先の図2に示した燃料噴射パターンの設定により、第1の燃料噴射パターンが実行され、同燃料噴射パターンにおける空燃比フィードバック制御が実行されることにより、学習値KGdeが学習されているか否かが判定される。そして、ステップS31において、既に第1の燃料噴射パターンにおける学習値KGdeが学習されていると判定されると、ステップS40に移り、現在の第1の燃料噴射パターンの学習値KGdeが既に学習された学習値KGdeに設定され、エンドに移り本ルーチンが一旦終了される。
一方、ステップS31において、現在の運転トリップにおいて未だ第1の燃料噴射パターンにおける学習値KGdeが学習されていないと判定されると、ステップS32に移る。ステップS32では、過去の運転トリップにおいて、第1の燃料噴射パターンの学習値KGdpが学習済みであるか否かが判定される。そして、過去の運転トリップにおいて、第1の燃料噴射パターンが実行され空燃比フィードバック制御の学習値KGdpが学習されている場合には、ステップS33に移る。
ステップS33では、現在の運転トリップにおいて、第2の燃料噴射パターンにおける学習値KGpeが学習済みであるか否かが判定される。そして、ステップS33において、現在の運転トリップにおいて、先の図2に示した燃料噴射パターンの設定により、第2の燃料噴射パターンが実行され、同燃料噴射パターンにおける空燃比フィードバック制御が実行されることにより、学習値KGpeが学習されている場合には、ステップS34に移る。
ステップS34では、過去の運転トリップにおいて、第2の燃料噴射パターンにおける学習値KGppが学習済みであるか否かが判定される。そして、ステップS34において、過去の運転トリップにおいても、第2の燃料噴射パターンが実行され空燃比フィードバック制御の学習値KGppが学習されている場合には、ステップS35に移る。
こうして、ステップS33及びステップS34において、過去の運転トリップと現在の運転トリップとの何れにおいても、第2の燃料噴射パターンの学習値KGpe,KGppが学習されていると判定された場合には、ステップS35において、これらの学習値KGpe,KGppの偏差ΔKの絶対値が所定値KS以上であるか否かが判定される。
ここで、過去の運転トリップと現在の運転トリップとにおいて、例えば運転条件が大きく変化している場合には、第2の燃料噴射パターンにおける過去の運転トリップと現在の運転トリップとの学習値KGpe,KGppの偏差ΔKの絶対値が大きくなる。
すなわち、例えば、エアフローメータ21の検出信号が示す吸気量GAと実際の吸気量との誤差が、エアフローメータ21の経年劣化等により、過去の運転トリップよりも現在の運転トリップのほうが大きくなっているということが考えられる。また、例えば、電子制御装置2による吸気通路噴射弁15に対する燃料噴射量の指令値と同噴射弁15による実際の燃料噴射量との誤差が、吸気通路噴射弁15の経年劣化等により同噴射弁15の時間あたりの燃料噴射量が変化することによって、過去の運転トリップよりも現在の運転トリップのほうが大きくなっているといったことが考えられる。そして、このようにして、過去の運転トリップよりも現在の運転トリップのほうが、エアフローメータ21の検出誤差が大きくなったり、吸気通路噴射弁15の燃料噴射量の指令値と実際の噴射量との誤差が大きくなったりすると、現在の運転トリップのほうが、学習値KGdeが「1.0」から乖離しやすくなる。したがって、このようなセンサの検出誤差や燃料噴射量の誤差等といった運転条件が過去の運転トリップから現在の運転トリップにかけて大きく変化している場合には、第2の燃料噴射パターンにおける過去の運転トリップと現在の運転トリップとの学習値KGpe,KGppとの偏差ΔKの絶対値が大きくなる場合がある。
そこで、本実施形態では、ステップS35において、第2の燃料噴射パターンの現在の運転トリップ及び過去の運転トリップにおける学習値KGpe,KGppの偏差ΔKの絶対値が、過去の運転トリップと現在の運転トリップとの運転条件に差異がある判断できる所定値KS以上であるか否かが判定される。ステップS35において、偏差ΔKの絶対値が所定値KS以上であると判定されると、過去の運転トリップにおける運転条件と現在の運転トリップにおける運転条件とに差異があると判断して、ステップ41に移る。そして、ステップS41では、第1の燃料噴射パターンにおける現在の学習値KGdeとして、第1の燃料噴射パターンにおける過去の学習値KGdpに対して偏差ΔKに係数mを乗算した値を加算した値が設定され、エンドに移る。
なお、係数mは、第2の燃料噴射パターンと第1の燃料噴射パターンとの差異に基づいて設定される係数であり、実験などより予め設定されている。すなわち、例えばエアフローメータ21の検出誤差は、第1の燃料噴射パターンの学習値KGdeに対してもほぼ同様に影響を及ぼすが、燃料噴射弁の劣化が学習値に及ぼす影響は、吸気通路噴射弁15と筒内噴射弁16との特性に応じて異なる。したがって、過去の運転トリップにおける第1の燃料噴射パターンの学習値KGdpに、偏差ΔKをそのまま加算するのではなく、係数mを乗算して加算している。なお、燃料噴射弁の劣化が学習値に及ぼす影響が、吸気通路噴射弁15と筒内噴射弁16との特性がほぼ同等とみなせる場合等においては、過去の運転トリップにおける第1の燃料噴射パターンの学習値KGdpに偏差ΔKをそのまま加算した値を、現在の運転トリップにおける第1の燃料噴射パターンの学習値KGdeとして設定してもよい。
一方、ステップS35において、偏差ΔKの絶対値が所定値KS未満であると判定されると、内燃機関1の運転条件が過去の運転トリップから現在の運転トリップにおいてさほど変化していないと判断される。従って、ステップS42に移り、第1の燃料噴射パターンにおける現在の学習値KGdeとして、第1の燃料噴射パターンにおける過去の学習値KGdpがそのまま適用され、エンドに移って本処理が一旦終了される。以上のようにして、第1の燃料噴射パターンにおける現在の学習値KGdeとして、第1の燃料噴射パターンにおける過去の学習値KGdpを第2の燃料噴射パターンにおける現在の運転トリップの学習値KGpeと過去の運転トリップにおける学習値KGppとの偏差ΔKに基づいて補正した値を設定する。
また、先のステップS33において、現在の運転トリップで第2の燃料噴射パターンの学習値KGpeが学習されていないと判断された場合には、第2の燃料噴射パターンの学習値を利用して現在の運転トリップと過去の運転トリップとの運転条件の差異を把握することができない。従って、ステップS33において否定判定がなされた場合にも、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定する。
なお、現在の運転トリップにおいて第1の燃料噴射パターン及び第2の燃料噴射パターンの何れの学習値KGde,KGpeも学習されていない場合には、内燃機関1の始動開始からアイドル運転における空燃比フィードバック制御が一度も実行されていないことから、現在の運転トリップが開始されてからさほど時間が経過していない可能性が高い。したがって、上述したエアフローメータ21の検出誤差や燃料噴射弁15,16の指令値と実際の噴射量との誤差については、過去の運転トリップと現在の運転トリップとの運転条件との差異がほとんどない可能性も高い。そのため、このような場合には、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定したとしても、その信頼性は許容可能な範囲に収まるものとなる。
また、先のステップS34において、過去の運転トリップで第2の燃料噴射パターンの学習値KGppが学習されていないと判断された場合にも、第2の燃料噴射パターンの学習値を利用して現在の運転トリップと過去の運転トリップとの運転条件の差異を把握することができない。従って、ステップS34において否定判定がなされた場合にも、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定する。
以上のようにして、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeが学習されていない場合に、過去の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdpが学習されている場合には、現在の運転トリップにおける学習値KGdeが、過去の学習値KGdpに基づいて設定される。
一方、先のステップS32において、過去の運転トリップにおいて、第1の燃料噴射パターンにおける現在の学習値KGdpが学習されていないと判定される場合には、ステップS36に移る。なお、過去の運転トリップにおいて、第1の燃料噴射パターンにおける現在の学習値KGdpが学習されていない場合とは、内燃機関が初めて運転される場合や、バッテリの瞬断などにより過去の運転トリップにおいて学習された学習値KGdpが消失している場合が挙げられる。
ステップS36では、現在がアイドル運転中であるか否かが判定される。そして、現在がアイドル運転中であると判定されると、ステップS37に移り、第1の燃料噴射パターンが実行される。すなわち、先の図2に示す燃料噴射パターンの設定により、アイドル運転中であって冷却水温THWが所定温度TS未満である状態が長期間継続していない場合には、通常、第2の燃料噴射パターンが実行される。しかしながら、ここでは、アイドル運転中であって冷却水温THWが所定温度TS未満の状態が未だ長期間継続していない場合であっても、第1の燃料噴射パターンが実行される。このようにして本実施形態では、第1の機関運転状態のみならず、アイドル運転中であって冷却水温THWが所定温度TS未満の状態が長期間継続していない状態である第4の機関運転状態においても、第1の燃料噴射パターンが実行される。なお、本実施形態では、第4の機関運転状態と第2の機関運転状態とが同じ機関運転状態であるが、この第4の機関運転状態を、車両の走行中のアイドル運転中(車両減速中であって燃料が噴射される状態)であって冷却水温THWが所定温度TS未満の状態が長期間継続していない状態としてもよい。このように第4の機関運転状態が、車両走行中という条件を含むようにすれば、筒内噴射弁16によって燃料が噴射される際に発生する騒音や燃料ポンプの作動音により、車室内の運転者に与える違和感を低減することができる。
以上のようにして、現在の運転トリップにおいて、第1の燃料噴射パターンでの学習値KGdeを過去の学習値KGdpに基づいて設定することができない場合には、第1の機関運転状態のみならず第4の機関運転状態であるときにも第1の燃料噴射パターンが実行される。これにより、現在の運転トリップにおいて、第1の燃料噴射パターンでの学習値KGdeを早期に学習することができる。
そして、ステップS37からステップS39に移り、現在の運転トリップにおいて第1の燃料噴射パターンの学習値KGdeが学習されたか否かが判定され、学習値KGdeの学習がなされている場合には、ステップS40に移り、こうして学習された学習値KGdeが第1の燃料噴射パターンにおける現在の学習値KGdeとして設定される。
一方、ステップS39において、第1の燃料噴射パターンは実行されたものの、空燃比フィードバック制御の実行条件が成立していないために学習値KGdeの学習がなされなかったと判定される場合には、ステップS38に移る。また、先のステップS36において、現在がアイドル運転中ではないために第1の燃料噴射パターンの実行条件が成立しない場合にも、ステップS38に移る。
ステップS38においては、現在の運転トリップで、第3の燃料噴射パターンにおける学習値KGbeが学習済みであるか否かが判定され、現在の運転トリップで、第3の燃料噴射パターンにおける学習値KGbeが学習されていると判定されると、ステップS43に移る。ステップS43では、現在の運転トリップにおける第1の燃料噴射パターンにおける学習値KGdeとして、この第3の燃料噴射パターンにおける学習値KGbeに対して筒内噴射弁16の噴射比率Rdが乗算された値が設定され、エンドに移って本処理が一旦終了される。すなわち、第3の燃料噴射パターンにおける燃料噴射では、筒内噴射弁16による燃料噴射が実行されているため、第3の燃料噴射パターンにおける学習値KGbeには、筒内噴射弁16から噴射される実際の燃料の量と目標値とのずれが、その燃料噴射量の比率Rdに応じて反映されている。従って、第3の燃料噴射パターンにおける筒内噴射弁16による燃料噴射量の比率Rdに応じて補正し、その補正された値を、現在の運転トリップにおける第1の燃料噴射パターンでの学習値とする。
また、ステップS38において、現在の運転トリップで、第3の燃料噴射パターンにおける学習値KGbeが未だ学習されていないと判定されると、ステップS44に移る。ステップS44では、現在の運転トリップにおける第1の燃料噴射パターンにおける学習値KGdeに初期値「1.0」が設定される。この初期値「1.0」は、電子制御装置2に予め記憶されており、内燃機関1が初めて運転されるときや、バッテリの瞬断などにより過去に学習された学習値KGdpが消失された場合などに用いられる。なお、内燃機関1が初めて運転されるときは、通常、各種センサの検出信号に基づく検出値の誤差が少なく、燃料噴射弁15,16も劣化していないため、実際の空燃比を目標空燃比との定常的な乖離傾向がないと考えられることから、学習値KGdeの初期値として「1.0」が設定される。
以上のようにして、本実施形態では、現在の運転トリップにおける第1の燃料噴射パターンの学習値KGdeが学習されていない場合であっても、過去の運転トリップにおける第1の燃料噴射パターンにおける学習値KGdp,第2の燃料噴射パターンにおける学習値KGpe,KGpp及び第3の燃料噴射パターンにおける学習値KGbe等により、第1の燃料噴射パターンの学習値KGdeが適切に設定される。
以上詳述したように、本実施形態によれば、以下の(1)〜(5)の作用効果を奏することができる。
(1)本実施形態では、過去の運転トリップに第1の燃料噴射パターンでの学習値KGdpが学習されており、且つ過去の運転トリップ及び現在の運転トリップに第2の燃料噴射パターンでの学習値KGpp,KGpeが学習されている場合には、現在の運転トリップにおいて第1の燃料噴射パターンでの空燃比フィードバック制御の学習値KGdeが学習される前における同学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを、第2の燃料噴射パターンにおける現在の運転トリップの学習値KGpeと過去の運転トリップの学習値KGdpとの偏差ΔKに基づいて補正した値に設定するようにしている。具体的には、この偏差ΔKの絶対値が所定値KS以上である場合には、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンの学習値KGdpに対して、偏差ΔKに係数mを乗算した値を加算した値とするようにしている。
すなわち、第2の燃料噴射パターンにおける過去の運転トリップの学習値KGppと現在の運転トリップの学習値KGpeとから、過去の運転トリップと現在の運転トリップにおける内燃機関の運転条件の差異を把握することができる。従って、現在の運転トリップにおいて第1の燃料噴射パターンの学習値KGdeが学習される前においては、この学習値KGdeを、過去の運転トリップと現在の運転トリップとの運転条件の差異が学習値KGの変動に及ぼす影響を過去の運転トリップにおける第1の燃料噴射パターンの学習値KGdpに反映させた上で設定することができる。これにより、未だ現在の運転トリップにおける第1の燃料噴射パターンの学習値KGdeが学習されていない場合であっても、現在の運転トリップにおける第1の燃料噴射パターンの学習値KGdeを適切な値に設定することができる。
また、このように第1の燃料噴射パターンが実行される前に第1の燃料噴射パターンの学習値KGdeが適切に設定されるため、同学習値KGdeを学習すべく機関運転状態とは無関係に第1の燃料噴射パターンを強制的に実行する必要がない。
(2)本実施形態では、過去の運転トリップに第1の燃料噴射パターンでの学習値KGdpが学習されており、且つ第2の燃料噴射パターンにおける現在の運転トリップの学習値KGpeと過去の運転トリップの学習値KGppとの偏差ΔKが所定値KS未満である場合には、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeが学習される前における第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定するようにしている。
すなわち、第2の燃料噴射パターンにおける現在の運転トリップの学習値KGpeと過去の運転トリップの学習値KGppとの偏差ΔKが所定値KS以下である場合には、過去の運転トリップと現在の運転トリップとの運転条件がさほど変化していないと考えられる。従って、このような場合には、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpをそのまま適用することができる。
(3)本実施形態では、過去の運転トリップに第1の燃料噴射パターンにおける学習値KGdpが学習されており、且つ現在の運転トリップにおいて第2の燃料噴射パターンにおける学習値KGpeが学習されていない場合には、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeが学習される前における学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定するようにしている。すなわち、現在の運転トリップにおいて、第2の燃料噴射パターンにおける学習値KGpeが未だ学習されていない場合には、第2の燃料噴射パターンの学習値KGpe,KGppから現在の運転トリップと過去の運転トリップとの運転条件の差異を把握することができない。従って、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定する。
なお、現在の運転トリップにおいて第1の燃料噴射パターン及び第2の燃料噴射パターンの何れの学習値KGde,KGpeも学習されていない場合には、内燃機関1の始動開始からさほど時間が経過していない可能性が高く、このような場合には、過去の運転トリップと現在の運転トリップとの運転条件の差異がさほど大きくはないと考えられる。そのため、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeとして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpを設定したとしても、設定される学習値KGdeの信頼性は許容可能な範囲に収まるものとなり、第1の燃料噴射パターンでの学習値KGdeは適切に設定される。
(4)本実施形態の内燃機関1では、アイドル運転中以外には筒内噴射弁16と吸気通路噴射弁15との双方が燃料を噴射する第3の燃料噴射パターンを実行するようにしている。そして、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpの学習履歴がない場合には、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeが学習される前における第1の燃料噴射パターンでの学習値KGdeとして、第3の燃料噴射パターンにおける学習値KGbeを、同第3の燃料噴射パターンにおける筒内噴射弁16による燃料噴射量の比率Rdに応じて補正した値を設定するようにしている。
ここで、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpの学習履歴がない場合には、現在の運転トリップにおける第1の燃料噴射パターンによる学習値KGdeを過去の学習値KGpeに基づいて設定することができない。また、第3の燃料噴射パターンにおける燃料噴射では、筒内噴射弁16による燃料噴射も行われ、第3の燃料噴射パターンにおいて筒内噴射弁16による燃料噴射量の比率Rdが高いほど、第3の燃料噴射パターンにおける学習値KGbeには、筒内噴射弁16から噴射される実際の燃料の量と目標値とのずれが反映されやすくなる。そのため、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeを、現在の運転トリップにおける第3の燃料噴射パターンにおける学習値KGbeに基づいて上記態様で設定することにより、学習値KGdeの信頼性は許容可能な範囲に収まるものとなり、第1の燃料噴射パターンでの学習値KGdeは適切に設定される。
(5)本実施形態では、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGdpの学習履歴がない場合、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeが学習される前において、現在の運転トリップにおいてアイドル運転中であれば冷却水温THW等に拘わらず、第1の燃料噴射パターンを実行するようにしている。
ここで、過去の運転トリップにおける第1の燃料噴射パターンでの学習値KGpeの学習履歴がない場合には、現在の運転トリップにおける第1の燃料噴射パターンでの学習値KGdeを過去の学習値KGpeに基づいて設定することができないため、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeを早期に学習することが好ましい。従って、本実施形態では、内燃機関1がアイドル運転中であって冷却水温THWが所定温度TS以上である場合や、所定温度TS未満の状態が所定期間継続した第1の機関運転状態のときのみならず、単にアイドル運転中であるときには、第1の燃料噴射パターンを実行するようにしている。すなわち、アイドル運転中であって冷却水温THWが所定温度TS未満の状態が長期間継続していない状態である第4の機関運転状態においても、第1の燃料噴射パターンが実行される。これにより、現在の運転トリップにおいて第1の燃料噴射パターンが実行されやすくなるため、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeが学習される可能性が高くなる。
なお、内燃機関1の始動後には、第1の機関運転状態よりも早期に第4の機関運転状態となりやすい。従って、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値KGdeがより学習されやすくなる。
(その他の実施形態)
なお上記実施形態は以下のように適宜変更してもよい。
・上記実施形態では、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値が学習されておらず、過去の運転トリップにおいても第1の燃料噴射パターンにおける学習値の学習履歴がない場合には、現在の運転トリップにおいて、第1の機関運転状態又は第4の機関運転状態であることを条件に、第1の燃料噴射パターンを実行するようにしている。しかしながら、過去の運転トリップにおいて第1の燃料噴射パターンにおける学習値の学習履歴がない場合であっても、現在の運転トリップにおいて、第1の機関運転状態であることを条件に第1の燃料噴射パターンを実行し、第4の機関運転状態であるときには第1の燃料噴射パターンを実行しなくてもよい。
・上記実施形態では、図2に示すルーチンに従って燃料噴射パターンを切り換えるようにしているが、第1の燃料噴射パターンの切り換え態様は上記態様に限定されない。具体的には、例えば図8に示す態様で燃料噴射パターンが切り換えられるようにしてもよい。
すなわち、図8に示すように、内燃機関がアイドル運転中であるか否かによらず、機関負荷及び機関回転速度NEが低い場合には、吸気通路噴射弁のみにより燃料が噴射される第2の燃料噴射パターンを実行する。また、機関負荷及び機関回転速度NEが高い場合には、筒内噴射弁のみにより燃料が噴射される第1の燃料噴射パターンを実行する。そして、機関負荷及び機関回転速度NEがこの中間である場合には、筒内噴射弁及び吸気通路噴射弁の双方により燃料が噴射される第3の燃料噴射パターンを実行する。そして、このようにして燃料噴射パターンを切り換える場合、例えば、運転者による運転操作等によっては、高負荷高回転運転があまり実行されないといった事態が生じうる。従って、図8に示す態様で燃料噴射パターンの切り換えが行われる場合にも、第1の燃料噴射パターンにおける現在の学習値KGを設定するにあたり、本発明を適用するようにしてもよい。
・上記各実施形態では、筒内噴射弁のみによる燃料が噴射される態様を第1の燃料噴射パターンとし、吸気通路噴射弁のみによる燃料が噴射される態様を第2の燃料噴射パターンとし、筒内噴射弁及び吸気通路噴射弁の双方により燃料が噴射される態様を第3の燃料噴射パターンとしている。しかしながら、第1〜第3の各の燃料噴射パターンは、このような設定態様に限定されない。
すなわち、例えば、現在の運転トリップにおいて、吸気通路噴射弁のみにより燃料が噴射される第1の燃料噴射パターンの学習値を設定するにあたり、過去の第1の燃料噴射パターンにおける学習値を、筒内噴射弁のみから燃料が噴射される第2の燃料噴射パターンの学習値により補正することにより設定してもよい。
また、上記各実施形態では、現在の運転トリップにおいて第1の燃料噴射パターンの学習値を設定するにあたり、過去の運転トリップにおける学習履歴がない場合には、現在の運転トリップにおいて双方の燃料噴射弁により燃料が噴射される第3の燃料噴射パターンの学習値に基づいて設定するようにしている。しかしながら、第1の燃料噴射パターンにおける学習値を、第3の燃料噴射パターンにおける学習値に基づいて設定しなくてもよい。
さらに、第1の燃料噴射パターンは、吸気通路噴射弁と筒内噴射弁との燃料噴射量の比率Rp1:Rd1とが、0≦Rp1≦1、0≦Rd1≦1、Rp1+Rd1=1」であり、第2の燃料噴射パターンでは、吸気通路噴射弁と筒内噴射弁との燃料噴射量の比率Rp2:Rd2とが、「0≦Rp2≦1、0≦Rd2≦1、Rp2+Rd2=1,Rp2≠Rp1」であればよい。
従って、例えば、現在の運転トリップにおいて、筒内噴射弁と吸気通路噴射弁の双方の燃料噴射弁から燃料が噴射される第1の燃料噴射パターンの学習値を設定するにあたり、過去の第1の燃料噴射パターンにおける学習値を、双方の燃料噴射弁から燃料が噴射される第2の燃料噴射パターンの学習値により補正するようにしてもよい。すなわち、第1の燃料噴射パターン及び第2の燃料噴射パターンは、1つの燃料噴射弁のみから燃料が噴射されるものでなくてもよい。
・上記各実施形態では、過去の運転トリップに第1の燃料噴射パターンにおける学習値が学習されており、且つ現在の運転トリップに第2の燃料噴射パターンでの学習値が学習されていない場合には、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値が学習される前の学習値として、過去の運転期間における第1の燃料噴射パターンでの学習値を設定するようにしている。しかしながら、このような場合には、例えば、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値が学習される前の学習値として、過去の運転期間における第1の燃料噴射パターンでの学習値を機関運転状態などに基づいて補正して設定するようにしてもよいし、初期値を設定するようにしてもよい。
・上記各実施形態では、過去の運転トリップに第1の燃料噴射パターンでの運転トリップの学習値が学習されており、第2の燃料噴射パターンにおける現在の運転トリップの学習値と過去の運転トリップの運転トリップの学習値との偏差が所定値未満である場合には、現在の運転トリップにおいて第1の燃料噴射パターンでの学習値が学習される前におけるこの学習値として、過去の運転トリップにおける第1の燃料噴射パターンでの学習値をそのまま設定するようにしている。しかしながら、このような場合に、現在の運転トリップにおける第1の燃料噴射パターンでの学習値として、過去の運転トリップにおける第1の燃料噴射パターンでの学習値をそのまま設定するのではなく、過去の運転トリップにおける第1の燃料噴射パターンでの学習値を、第2の燃料噴射パターンにおける現在の運転期間の学習値と過去の運転期間の学習値との偏差に基づいて補正した値を設定するようにしてもよい。
・上記各実施形態では、現在の運転期間及び過去の運転期間を、現在の運転トリップ及び過去の運転トリップとしているが、運転期間の設定方法は特に限定されない。例えば、1回の運転トリップを複数の期間に区切って、こうして区切られる各期間を1回の運転期間としてもよい。また、複数の運転トリップをまとめて1つの運転期間としてもよい。
また、現在の運転期間における第1の燃料噴射パターンの学習値が学習される前においてこの学習値を設定するにあたり、過去の運転期間における第1の燃料噴射パターンの学習値を、第2の燃料噴射パターンの学習値によって補正する場合、この補正の態様は、上記各実施形態に示した態様に限定されない。さらに、このような補正を行う場合に、第1の燃料噴射パターンの学習値が、前回の運転期間には学習されておらず、前々回の運転期間には学習されている場合には、補正をするために用いる第2の燃料噴射パターンの過去の学習値も、前回の運転期間に学習された学習値ではなく、前々回の運転期間の学習値を用いるようにしてもよい。すなわち、現在の運転期間において、第1の燃料噴射パターンにおける学習値の設定にあたり用いられる第1の燃料噴射パターンと第2の燃料噴射パターンの過去の運転期間の学習値は、同じ過去の運転期間の学習値を用いるようにすると、より適切に現在の運転期間の学習値を設定することができる。
・上記各実施形態では、内燃機関が複数の燃料噴射弁として筒内噴射弁と吸気通路噴射弁とを備えているが、複数の燃料噴射弁は特に限定されない。例えば、内燃機関が複数の燃料噴射弁として、ともに吸気通路に燃料を噴射する第1の吸気通路噴射弁と第2の吸気通路噴射弁を有するようにしてもよく、さらに、これらに加えて筒内噴射弁を有する構成としてもよい。
・上記実施形態では、空燃比フィードバック制御において、「Qf←Qb×{1+(FAF−1.0)+(KG−1.0)}」といった式により基本燃料噴射量Qbから最終燃料噴射量Qfを設定し、目標空燃比と実際の空燃比との定常的なずれを補償する学習値を、この式の「KG」としている。しかしながら、学習値は、この式で定義される「KG」に限定されず、空燃比フィードバック制御において目標空燃比と実際の空燃比との定常的なずれを補償する値であればよく、基本燃料噴射量Qbから最終燃料噴射量Qfを設定するための導出方法等も特に限定されない。