(57)【要約】【課題】内燃機関が運転している状態にある場合にも、学習精度を十分に確保しつつ微小噴射量学習を実施することができる内燃機関の燃料噴射制御装置を提供する。【解決手段】ＥＣＵ５０は、１燃焼サイクルのうち気筒３２内の圧力変動が所定の筒内圧変動量よりも小さい筒内圧安定期間に、インジェクタ３３の燃料噴射量を学習する学習実施期間を設定する学習期間設定部と、学習期間設定部により設定された学習実施期間に、主噴射とは別にインジェクタ３３による燃料噴射を実施する噴射制御部と、噴射制御部により実施した燃料噴射により実噴射量を算出する噴射量算出部と、噴射量算出部により算出した実噴射量と、噴射制御部によりインジェクタ３３を開弁駆動させたときの駆動パルスとに基づいて燃料噴射量を学習する噴射量学習部と、を備える。【選択図】図１
2020084851.tif 000002
【特許請求の範囲】
【請求項１】
燃料を加圧して吐出する燃料ポンプ（２０）と、前記燃料ポンプから吐出される高圧燃料を蓄える蓄圧容器（１４）と、前記蓄圧容器内に蓄えられた高圧燃料を内燃機関（３０）の気筒（３２）内に直接噴射する燃料噴射弁（３３）と、を備える燃料噴射システムに適用され、
１燃焼サイクルのうち前記気筒内の圧力変動が所定の筒内圧変動量よりも小さい筒内圧安定期間に、前記燃料噴射弁の燃料噴射量を学習する学習実施期間を設定する学習期間設定部と、
前記学習期間設定部により設定された前記学習実施期間に、前記内燃機関の出力トルクの生成に寄与する主噴射とは別に前記燃料噴射弁による燃料噴射を実施する噴射制御部と、
前記噴射制御部により実施した燃料噴射により前記燃料噴射弁から実際に噴射された実噴射量を算出する噴射量算出部と、
前記噴射量算出部により算出した実噴射量と、前記噴射制御部により前記燃料噴射弁を開弁駆動させたときの駆動パルスとに基づいて、前記燃料噴射弁の燃料噴射量を学習する噴射量学習部と、
を備える内燃機関の燃料噴射制御装置。
【請求項２】
前記学習期間設定部は、前記筒内圧安定期間のうち、前記燃料噴射弁から燃料が噴射されておらず、かつ前記燃料ポンプから燃料が吐出されていない駆動停止期間に前記学習実施期間を設定する、請求項１に記載の内燃機関の燃料噴射制御装置。
【請求項３】
前記学習期間設定部は、１燃焼サイクル内に前記駆動停止期間が複数存在する場合に、複数の前記駆動停止期間のうち最長の期間を前記学習実施期間に設定する、請求項２に記載の内燃機関の燃料噴射制御装置。
【請求項４】
１燃焼サイクル内で燃料を多段噴射する制御を実施する燃料噴射システムに適用され、
前記噴射制御部は、前記学習実施期間において、前記多段噴射のうち前記主噴射とは異なる燃料噴射に対応する微小量の燃料を前記燃料噴射弁から複数回噴射する、請求項１〜３のいずれか一項に記載の内燃機関の燃料噴射制御装置。
【請求項５】
前記学習期間設定部により設定された前記学習実施期間の長さに応じて、前記噴射制御部により前記燃料噴射弁から噴射する噴射回数を設定する噴射回数設定部を更に備え、
前記噴射制御部は、前記学習実施期間において、前記噴射回数設定部により設定された噴射回数の燃料噴射を実施する、請求項４に記載の内燃機関の燃料噴射制御装置。
【請求項６】
前記学習期間設定部は、１燃焼サイクルのうち膨張行程後半及び排気行程の少なくともいずれかとなる期間に前記学習実施期間を設定する、請求項１〜５のいずれか一項に記載の内燃機関の燃料噴射制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃料噴射制御装置に関する。
【背景技術】
【０００２】
エンジンの燃料噴射制御装置としては、従来、燃料噴射弁から所望量の燃料を噴射するための駆動パルスと実際の燃料噴射量との関係のずれを補正するべく、噴射量学習に関する技術が種々提案されている（例えば、特許文献１参照）。特許文献１には、車両の減速時に燃料ポンプからの燃料圧送を停止させて燃料噴射を実施し、その噴射前後のレール圧の低下量により噴射量を推定することが開示されている。
【０００３】
また、例えばディーゼルエンジンでは、着火性の向上や排気エミッションの改善等を図るべく、１燃焼サイクルあたり複数回の燃料噴射を実施する多段噴射が行われている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第７７８８０１５号
【発明の概要】
【発明が解決しようとする課題】
【０００５】
多段噴射による上記改善効果を十分に得るためには、メイン噴射以外の燃料噴射、すなわち、微小噴射による燃料噴射量を精密に調整することが重要となる。また、燃料噴射制御を高精度に行うためには、イグニッションオン後できるだけ速やかに噴射量学習を完了させることが望ましい。しかしながら、特許文献１に記載のものでは、燃料ポンプからの燃料圧送を停止させて燃料噴射を実施し、その噴射前後のレール圧変化量により噴射量を推定するため、燃料カット時のような限られた期間でしか噴射量学習を実施できないことが考えられる。この場合、学習機会を十分に確保できないことが懸念される。
【０００６】
本発明は、上記課題に鑑みてなされたものであり、その主たる目的は、内燃機関が運転している状態にある場合にも、学習精度を十分に確保しつつ微小噴射量学習を実施することができる内燃機関の燃料噴射制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
以下、上記課題を解決するための手段、及びその作用効果について説明する。
【０００８】
本発明は、  燃料を加圧して吐出する燃料ポンプ（２０）と、前記燃料ポンプから吐出される高圧燃料を蓄える蓄圧容器（１４）と、前記蓄圧容器内に蓄えられた高圧燃料を内燃機関（３０）の気筒（３２）内に直接噴射する燃料噴射弁（３３）と、を備える燃料噴射システムに適用される。
【０００９】
請求項１に記載の発明は、１燃焼サイクルのうち前記気筒内の圧力変動が所定の筒内圧変動量よりも小さい筒内圧安定期間に、前記燃料噴射弁の燃料噴射量を学習する学習実施期間を設定する学習期間設定部と、前記学習期間設定部により設定された前記学習実施期間に、前記内燃機関の出力トルクの生成に寄与する主噴射とは別に前記燃料噴射弁による燃料噴射を実施する噴射制御部と、前記噴射制御部により実施した燃料噴射により前記燃料噴射弁から実際に噴射された実噴射量を算出する噴射量算出部と、前記噴射量算出部により算出した実噴射量と、前記噴射制御部により前記燃料噴射弁を開弁駆動させたときの駆動パルスとに基づいて、前記燃料噴射弁の燃料噴射量を学習する噴射量学習部と、を備えることを特徴とする。
【００１０】
同一の駆動パルスに対する実噴射量が、気筒内圧力の変動に起因してばらつくこと、及び、１燃焼サイクル内に気筒内圧力の変動が小さい期間が存在することに着目し、１燃焼サイクルのうち気筒内圧力の変動が所定の筒内圧変動量よりも小さい筒内圧安定期間に微小噴射量の噴射量学習を実施する構成とした。こうした構成によれば、内燃機関が運転している状態にある場合にも、学習精度を十分に確保しつつ微小噴射量学習を実施することができる。
【図面の簡単な説明】
【００１１】
【図１】燃料噴射システムの概略構成図。
【図２】インジェクタの概略構成を示す図。
【図３】インジェクタの先端部分を拡大した縦断面図。
【図４】筒内圧変化に対する噴射量の変化特性を示す図。
【図５】１燃焼サイクルにおける筒内圧の変化を示す図。
【図６】１燃焼サイクルのうち異なるクランク角位置での筒内圧を比較する図。
【図７】学習実施期間の設定方法を示すタイムチャート。
【図８】微小噴射量学習処理の処理手順を示すフローチャート。
【図９】学習前提条件成立判定処理の処理手順を示すフローチャート。
【図１０】学習用データサンプリング判定処理の処理手順を示すフローチャート。
【図１１】学習実施期間演算処理の処理手順を示すフローチャート。
【図１２】噴射実施要領演算処理の処理手順を示すフローチャート。
【図１３】微小噴射量学習の具体的態様を示すタイムチャート。
【図１４】微小噴射量推定処理の処理手順を示すフローチャート。
【図１５】レール圧の変化量による微小噴射量学習を説明する図。
【図１６】ずれ量算出処理の処理手順を示すフローチャート。
【図１７】微小噴射の噴射量範囲におけるインジェクタ噴射特性を示す図。
【図１８】学習値記憶処理の処理手順を示すフローチャート。
【図１９】他の実施形態の学習実施期間の設定方法を示すタイムチャート。
【発明を実施するための形態】
【００１２】
以下、実施形態について図面を参照しつつ説明する。本実施形態は、内燃機関としての車載エンジンに対して燃料噴射弁から燃料を供給する燃料噴射システムを構築している。エンジンは多気筒エンジンであり、本実施形態では４気筒エンジンを搭載している。本システムは、電子制御ユニット（以下、ＥＣＵという。）を中枢として各種制御を実施する。燃料噴射システムの全体概略構成図を図１に示す。なお、以下の各実施形態相互において、互いに同一又は均等である部分には、図中、同一符号を付しており、同一符号の部分についてはその説明を援用する。
【００１３】
図１の燃料噴射システム６０において、燃料タンク１１は、低圧燃料配管１２を介して燃料ポンプ２０に接続されている。燃料ポンプ２０は、低圧燃料配管１２を通じて燃料タンク１１から燃料を汲み上げる低圧ポンプ２１と、低圧ポンプ２１により汲み上げられた燃料を高圧化する高圧ポンプ２２とを備えている。なお、本実施形態では低圧ポンプ２１と高圧ポンプ２２とが一体化されているが、別々に設けられていてもよい。
【００１４】
高圧ポンプ２２は、エンジン３０の回転に伴い燃料の吸入及び吐出を行う機械式ポンプである。具体的には、高圧ポンプ２２は、エンジン３０の出力軸３１（クランク軸）の回転に同期してプランジャが往復動されることで低圧燃料を吸入して高圧化し、高圧化した燃料（高圧燃料）を吐出する。高圧ポンプ２２の燃料吐出部には、電磁駆動式の燃料調量弁として吐出調量弁（ＰＣＶ）２３が設けられており、吐出調量弁２３の通電制御により吐出開始タイミングが調整されることにより、燃料ポンプ２０からの燃料吐出量（ポンプ吐出量）が調整される。
【００１５】
高圧ポンプ２２は、吐出調量弁２３として第１ＰＣＶ及び第２ＰＣＶの２個の調量弁を備えている。２個の吐出調量弁２３のうち、第１ＰＣＶは、第１気筒♯１及び第４気筒♯４への燃料の吐出を制御し、第２ＰＣＶは、第２気筒♯２及び第３気筒♯３への燃料の吐出を制御する。本システムでは、燃料噴射が行われる毎に燃料ポンプ２０による燃料の圧送が行われる１噴射１圧送の燃料供給システムとなっている。なお、燃料調量弁としては、吐出調量弁２３に代えて、高圧ポンプ２２の燃料吸入部に配置される吸入調量弁（ＳＣＶ）を用いてもよい。
【００１６】
燃料ポンプ２０には、高圧燃料配管１３を介して、蓄圧容器としてのコモンレール１４が接続されている。コモンレール１４には、燃料ポンプ２０から吐出される高圧燃料が逐次供給され、燃料が高圧状態で保持されている。コモンレール１４には、圧力検出手段としてレール圧センサ１５が設けられており、レール圧センサ１５によってコモンレール１４内の燃料圧力（レール圧）が検出される。
【００１７】
エンジン３０は、多気筒のディーゼルエンジンである。エンジン３０には、気筒３２ごとにインジェクタ３３が設けられている。各インジェクタ３３に対しては、高圧燃料パイプ１６を通じてコモンレール１４内の高圧燃料が供給される。インジェクタ３３の駆動により、高圧の燃料がエンジン３０の各気筒３２内に直接噴射される。燃料ポンプ２０及びインジェクタ３３には還流配管１７が接続されており、燃料ポンプ２０及びインジェクタ３３で余剰になった燃料が、還流配管１７を経由して燃料タンク１１に戻される。
【００１８】
図２に示すように、インジェクタ３３は、筒状のノズルボディ３４と、ノズルボディ３４の内部空間に軸方向に往復移動可能に収容されたノズルニードル３５とを備えている。ノズルボディ３４の先端部には、ノズルニードル３５によって開閉される噴孔４４が設けられている。噴孔４４は、燃料通路を介して、高圧燃料パイプ１６（図１を参照）に連通されており、高圧燃料パイプ１６と噴孔４４とを連通する燃料通路の途中に、高圧燃料を貯留する貯留室３６が設けられている。貯留室３６内には、ノズルニードル３５の先端部が配置されている。ノズルニードル３５において、貯留室３６とは反対側の端部には、高圧燃料パイプ１６に接続される背圧室３７が設けられている。背圧室３７内には、コモンレール１４からの高圧燃料が導入される。
【００１９】
背圧室３７は、燃料タンク１１に連通する低圧燃料パイプ２４に、オリフィス３９を介して接続されている。低圧燃料パイプ２４には、オリフィス３９の下流側に、コイル４１の通電に伴い開弁する常閉式の制御弁４２が設けられている。コイル４１の非通電時には、背圧室３７内の燃料圧力による閉弁方向への力及びスプリング３８の付勢力の合計の力が、貯留室３６内の燃料圧力よりも大きくなることによって、ノズルニードル３５が噴孔４４を閉弁する方向に変位し、インジェクタ３３が閉弁状態となる。閉弁状態において、コイル４１に通電されて制御弁４２が開弁すると、背圧室３７内の燃料がオリフィス３９を介して低圧燃料パイプ２４側に流出する。これにより、貯留室３６内の燃料圧力が、背圧室３７内の燃料圧力及びスプリング３８の付勢力の合計の力よりも大きくなることによって、ノズルニードル３５が噴孔４４を開弁する方向に変位し、インジェクタ３３が開弁状態となる。また、インジェクタ３３が開弁状態となることにより、貯留室３６内の高圧燃料が噴孔４４から噴射される。
【００２０】
図３は、インジェクタ３３の先端部分を拡大した縦断面図である。ノズルボディ３４の内部の先端部には、円錐状のテーパ部４８と、テーパ部４８の先端側に形成されたサック部４６とが設けられている。テーパ部４８は、ノズルニードル３５の先端部が着座される弁座部４３を有する。また、ノズルニードル３５は、円錐状のニードル本体３５ａと、ニードル本体３５ａの先端側に設けられたテーパ部３５ｂとを備えている。テーパ部３５ｂの軸方向における途中部分には、円環状のシール部４５が設けられており、シール部４５が弁座部４３に着座可能になっている。
【００２１】
サック部４６は、例えば球状の内壁面を有する空間である。サック部４６は、ノズルボディ３４の内面とノズルニードル３５の側面との間に形成された環状の燃料通路４７を介して貯留室３６（図２を参照）に連通されている。これにより、サック部４６には、貯留室３６内の高圧燃料が燃料通路４７内を通って流入し貯留される。ノズルボディ３４の先端部には、サック部４６の内面とノズルボディ３４の外面とを連通するように複数の噴孔４４が形成されている。ノズルニードル３５が噴孔４４に向かう方向に移動して、ノズルニードル３５のシール部４５が弁座部４３に着座している状態では、サック部４６への燃料の流入が遮断され、インジェクタ３３は閉弁状態となる。この閉弁状態において、ノズルニードル３５が噴孔４４から離間する方向に移動して、シール部４５が弁座部４３から離間すると、高圧燃料が燃料通路４７を通ってサック部４６に流入し、噴孔４４から燃料が噴射される。
【００２２】
ＥＣＵ５０は、ＣＰＵ、ＲＯＭ、ＲＡＭ等からなる周知のマイクロコンピュータを備えた電子制御装置である。ＥＣＵ５０には、上記したレール圧センサ１５の検出信号の他に、エンジン３０の回転速度を検出するクランク角センサ５１、各気筒がいずれの行程にあるかを判別するための気筒判別センサ５２、アクセル操作量を検出するアクセルセンサ５３、エンジン冷却水温を検出する水温センサ５４、燃料ポンプ２０内の燃料の温度を検出する燃温センサ５５等の各種センサから検出信号が逐次入力される。
【００２３】
ＥＣＵ５０は、エンジン回転速度やアクセル操作量等のエンジン運転情報に基づいて最適な燃料噴射量及び噴射時期を決定し、決定した燃料噴射量及び噴射磁気に応じた噴射制御信号をインジェクタ３３に出力する。これにより、各気筒３２において、インジェクタ３３による燃料噴射制御が実施される。また、ＥＣＵ５０は、都度のエンジン回転速度や燃料噴射量に基づいて、レール圧の目標値である目標レール圧を設定するとともに、レール圧センサ１５により検出された実レール圧が目標レール圧となるようにポンプ吐出量を制御する。レール圧が制御されることにより、インジェクタ３３から噴射される燃料の噴射圧が制御される。
【００２４】
本システムの燃料噴射制御では多段噴射を実施しており、具体的には、エンジン３０の出力トルクの生成に寄与する燃料の主噴射（メイン噴射）に先立って、メイン噴射に比して微小量の（例えば、２〜３ｍｍ3／ｓｔ）燃料を噴射するパイロット噴射を実施している。この実施形態では、１燃焼サイクル（吸気行程→圧縮行程→膨張行程→排気行程）あたり１回のパイロット噴射とメイン噴射とを行っている。
【００２５】
パイロット噴射では、燃焼騒音の低減やＮＯｘ発生の抑制等の効果を十分に発揮させるために、微小量の燃料を精度良く噴射することが要求される。その一方で、インジェクタ３３は、個体差及び経時的な劣化等により、インジェクタ３３に対する指令噴射量、すなわち通電パルス期間と、その通電パルス期間に対して実際にインジェクタ３３から噴射される燃料噴射量（実噴射量）との間にずれが現れる。そこで本システムでは、パイロット噴射により噴射すべき微小噴射量（指示噴射量Ｑｔａｒｇｅｔ）に対応する指令値（駆動パルス）と実噴射量とのずれ量を検出し、インジェクタ３３から噴射する燃料量を補正する微小噴射量学習を実施している。
【００２６】
以下、本システムで実施される微小噴射量学習について詳述する。本システムでは、エンジン３０の気筒内圧力（以下、「筒内圧」ともいう。）が変動していると、インジェクタ３３に対し同一の駆動パルスの指令を与えても実噴射量が異なること、及び微小噴射の場合には筒内圧による影響が大きく、学習精度に与える影響が大きいことに着目した。
【００２７】
図４に、筒内圧変化に対する噴射量の変化特性を示す。図４中、（ａ）は、指示噴射量Ｑｔａｒｇｅｔの燃料がインジェクタ３３から噴射されるように同一の長さの駆動パルスにより燃料噴射を指令した場合における、筒内圧［ＭＰａ］と実噴射量［ｍｍ3／ｓｔ］との関係を示した図である。（ｂ）は、時間及び噴射率によって筒内圧と実噴射量との関係を表した図である。「Ｐ１」及び「Ｐ２」は筒内圧値を示し、Ｐ１＜Ｐ２である。図４（ｂ）中の一点鎖線は、筒内圧がＰ１の場合の噴射特性を示し、実線は、筒内圧がＰ２の場合の噴射特性を示している。また、点線は、筒内圧がＰ１の場合の噴射特性の噴射開始タイミングｔ１と筒内圧がＰ２の場合の噴射特性の噴射開始タイミングｔ２とが一致するように、筒内圧がＰ２の場合の噴射特性を時間軸方向にスライドさせたものである。
【００２８】
図４（ａ）及び（ｂ）に示すように、指示噴射量が同じ値Ｑｔａｒｇｅｔであっても、筒内圧がＰ１の場合には実噴射量がＱ１であるのに対し、筒内圧がより高いＰ２の場合には、実噴射量がＱ１よりも多いＱ２となる。すなわち、筒内圧が高いほど、同一の駆動パルスに対しインジェクタ３３からの実噴射量が多くなる。こうした事象は、筒内圧が高いほどノズルニードル３５が上昇側に位置しやすく、これによりノズルニードル３５が開弁方向への移動を開始するタイミング（つまり噴射開始タイミング）、ノズルニードル３５が閉弁方向への移動を終了するタイミング（つまり噴射終了タイミング）及びノズルニードル３５の移動速度が筒内圧に応じて変化することに起因すると考えられる。
【００２９】
そこで本実施形態では、エンジン３０が運転している状態において、１燃焼サイクルのうち筒内圧の変動が所定の筒内圧変動量よりも小さい期間に、通常噴射（パイロット噴射及びメイン噴射）とは別に、学習専用の燃料噴射（学習用噴射）を実施する。そして、学習用噴射による実噴射量を算出し、その算出した実噴射量と、学習用噴射の駆動パルスとを用いて、インジェクタ３３の燃料噴射量を学習する。こうした微小噴射量学習によれば、エンジン３０の燃焼が行われている通常運転時にも、学習精度を十分に確保しながら微小噴射量学習を実施することができる。
【００３０】
図５には、第１気筒♯１で通常噴射（１回のパイロット噴射とメイン噴射）を行った場合の１燃焼サイクルにおける筒内圧の変化を示している。横軸は、圧縮上死点を基準にした場合のクランク角度を示している。１燃焼サイクルのうち、膨張行程後半及び排気行程では筒内圧が安定しており、膨張行程後半及び排気行程内の期間Ｃでは、圧縮上死点前の期間Ａ及び圧縮上死点後の期間Ｂと比べて筒内圧変化量が小さく、筒内圧が安定している（図５及び図６参照）。この点に着目し、本実施形態では、１燃焼サイクルのうち、圧縮上死点後θａ（例えば、圧縮上死点後７０〜８０℃Ａ）よりも後の期間ＴＡを利用し、期間ＴＡ内に微小噴射量学習の学習実施期間（以下、「学習実施期間ＴＰ」ともいう。）を設定し、該設定した学習実施期間ＴＰで微小噴射量学習を実施することとしている。
【００３１】
なお、１燃焼サイクルのうち吸気行程及び圧縮行程前半の期間についても、筒内圧の変動が小さい筒内圧安定期間であるが、学習用噴射の実施により通常噴射の実施態様の変更を回避するべく本実施形態では、メイン噴射が終了した後の圧縮行程後半及び排気行程内に学習実施期間ＴＰを設定することとしている。
【００３２】
本実施形態の微小噴射量学習の学習実施期間ＴＰの設定方法の具体的態様について、図７のタイムチャートを用いて説明する。この微小噴射量学習は、エンジン３０が運転している状態、より具体的には、１燃焼サイクル内で燃料ポンプ２０からの燃料吐出とインジェクタ３３による主噴射とが実施されるエンジン運転状態で実施される。
【００３３】
本実施形態では、期間ＴＡのうち、高圧ポンプ２２の燃料吐出及びインジェクタ３３の燃料噴射が実施されていない期間（以下、「駆動停止期間」ともいう。）を、レール圧の変動が所定の燃圧変動量よりも小さい期間とみなし、期間ＴＡのうち駆動停止期間に微小噴射量学習を実施することとしている。ポンプ圧送量及び燃料噴射量がばらつくことでレール圧がばらつき、このレール圧のばらつきに起因して学習用噴射の噴射量がばらつくことを避けるためである。また、本実施形態では、インジェクタ３３の駆動パルスとレール圧の変化量との関係に基づき噴射量学習を実施しているため、レール圧の検出値にばらつきが生じることを避け、レール圧の検出精度を十分に確保するためである。
【００３４】
図７中、「ＴＢ」は、吐出調量弁２３（第１ＰＣＶ及び第２ＰＣＶ）に対する駆動指令によって燃料ポンプ２０から燃料が吐出されている期間を示し、「ＴＣ」は、４気筒のうちいずれかの気筒のインジェクタ３３に対する駆動指令によって通常噴射が実施されている期間を示す。「Ｊ１」はパイロット噴射を示し、「Ｊ２」はメイン噴射を示している。
【００３５】
学習実施期間ＴＰは、各気筒の期間ＴＡのうち、期間ＴＢ及び期間ＴＣのいずれとも重複しない期間（以下、「学習用データサンプリング可能期間ＴＳ」ともいう。）に、気筒ごとに設定される。すなわち、期間ＴＡのうち、インジェクタ３３から燃料が噴射されておらず、かつ高圧ポンプ２２から燃料が吐出されていない期間に学習実施期間ＴＰが設定される。また、ＥＣＵ５０は、各気筒において学習用データサンプリング可能期間ＴＳが複数存在する場合、以下の条件（ａ）及び（ｂ）に従って、複数ある学習用データサンプリング可能期間ＴＳのうち１つの期間を学習実施期間ＴＰとして選択する。
（ａ）複数の学習用データサンプリング可能期間ＴＳのうち、最も長い期間（最長サンプリング期間）を学習実施期間ＴＰとして選択する。
（ｂ）最長サンプリング期間が複数存在する場合、最も進角側にある最長サンプリング期間を学習実施期間ＴＰとして選択する。
【００３６】
図７では、第１気筒♯１には、１燃焼サイクル内に３つの学習用データサンプリング可能期間ＴＳ（期間ｔ（♯１−１）、期間ｔ（♯１−２）及び期間ｔ（♯１−３））が存在している。なお、期間ｔ（♯１−１）と期間ｔ（♯１−３）は同じ長さである。ＥＣＵ５０は、これら３つの学習用データサンプリング可能期間ＴＳのうち、まず、期間ｔ（♯１−１）及び期間ｔ（♯１−３）を最長サンプリング期間として選択する。続いて、最長サンプリング期間として選択された期間ｔ（♯１−１）及び期間ｔ（♯１−３）のうち、最も進角側の期間ｔ（♯１−１）を学習実施期間ＴＰに設定する。
【００３７】
第２気筒♯２〜第４気筒♯４については、第１気筒♯１と同じ位置関係にある期間が学習実施期間ＴＰとして設定される。これにより、各気筒での学習実施期間ＴＰが互いに重複しないようにしている。図７では、最も進角側に位置する期間が学習実施期間ＴＰとして設定される。
【００３８】
具体的には、第２気筒♯２については、３つの学習用データサンプリング可能期間ＴＳ（期間ｔ（♯２−１）、期間ｔ（♯２−２）及び期間ｔ（♯２−３））のうち、期間ｔ（♯２−１）が学習実施期間ＴＰとして設定される。第３気筒♯３については、期間ｔ（♯３−１）、期間ｔ（♯３−２）及び期間ｔ（♯３−３）のうち、期間ｔ（♯３−１）が学習実施期間ＴＰとして設定され、第４気筒♯４については、期間ｔ（♯４−１）、期間ｔ（♯４−２）及び期間ｔ（♯４−３）のうち、期間ｔ（♯４−１）が学習実施期間ＴＰとして設定される。そして、各気筒について、次回以降の少なくとも１回の燃焼サイクルにおいて、学習実施期間ＴＰで学習用噴射を実施し、実噴射量と駆動パルスとに基づいて学習値を取得する。なお、第２気筒♯２〜第４気筒♯４についても、第１気筒♯１と同様の処理を行うことによって学習実施期間ＴＰを設定してもよい。
【００３９】
条件（ｂ）を設けている理由としては、本システムではインジェクタ駆動回路を２つ備えており、１つのインジェクタ駆動回路によって２つのインジェクタ３３の駆動を制御している。そのため、各気筒では、インジェクタ３３に駆動パルスを出力可能なクランク角度期間が予め定められている。具体的には、圧縮上死点よりも進角側のクランク角度位置θｐから、圧縮上死点よりも遅角側のクランク角度位置θｑまでのクランク角度期間（例えば１８０℃Ａの期間）が、各気筒のインジェクタ３３に対し駆動パルスを出力可能な期間として設定されている。そこで本実施形態では、できるだけ進角側の学習用データサンプリング可能期間ＴＳを学習実施期間ＴＰとして設定することにより、学習用噴射を確実に実施できるようにしている。
【００４０】
次に、本実施形態の微小噴射量学習の処理手順について、図８〜図１８を用いて説明する。まずは、図８を用いて、全体フローチャートについて説明する。この処理は、ＥＣＵ５０のマイコンにより所定周期間に実行される。
【００４１】
図８において、ステップＳ１００では、エンジン３０が運転している状態で微小噴射量学習を実施するための前提条件である学習前提条件の成立の可否を判定する処理（学習前提条件成立判定処理）を実施する。続くステップＳ２００では、微小噴射量学習のための学習用データを取得可能な期間として学習用データサンプリング可能期間ＴＳを演算する処理（学習用データサンプリング判定処理）を実施する。ステップＳ３００では、学習実施期間ＴＰを演算する処理（学習実施期間演算処理）を実施し、ステップＳ４００では、微小噴射量の実施要領を決定する処理を実施する。
【００４２】
続くステップＳ５００では、学習用噴射を実施して微小噴射量を推定する処理（微小噴射量推定処理）を実施する。ステップＳ６００では、ステップＳ５００の処理により推定した微小噴射量を用いて、駆動パルスのずれ量を算出する処理（ずれ量算出処理）を実施する。ステップＳ７００では、学習用噴射の複数回の実施によって所定数のずれ量を取得したか否かを判定する。所定数のずれ量を取得していないと判定された場合には、ステップＳ７００で肯定判定されるまでステップＳ５００の処理及びステップＳ６００の処理を繰り返し実施する。ステップＳ７００で肯定判定されると、ステップＳ８００へ進み、微小噴射量の学習値を算出し、その学習値を記憶部に記憶させて保存し（学習値記憶処理）、本ルーチンを終了する。
【００４３】
次に、図８の全体フローチャートの各処理について説明する。まずは、ステップＳ１００の学習前提条件成立判定処理について図９を用いて説明する。学習前提条件成立判定処理は、エンジン３０の運転状態が安定しているか否かを判定するための処理である。
【００４４】
図９において、ステップＳ１０１では、学習前提条件の成否を判定するために必要なデータを読み込む。具体的には、クランク角センサ５１により検出されるエンジン回転速度Ｎｅ、レール圧センサ１５により検出される実レール圧Ｐｃ、水温センサ５４により検出されるエンジン水温、燃温センサ５５により検出される燃料温度、アクセルセンサ５３により検出されるアクセル開度、噴射量指示値ＱＦＩＮ、及びレール圧指示値ＰＦＩＮをそれぞれ取得する。
【００４５】
続くステップＳ１０２では、ステップＳ１０１で取得した各データの単位時間当たりの変化量ΔＸを算出する。ここでは、各データについて、記憶部に記憶されている前々回値Ｘ（ｉ−２）と前回値Ｘ（ｉ−１）との差分により変化量ΔＸを算出する。続くステップＳ１０３では、各データについて、変化量ΔＸが閾値Ｘｔｈ以下であるか否かを判定する。このとき、少なくともいずれか１つのデータについてΔＸ＞ＸｔｈであればステップＳ１０２へ戻り、ステップＳ１０３で肯定判定されるまでステップＳ１０２及びＳ１０３の処理を繰り返す。そして、全てのデータについてΔＸ≦Ｘｔｈとなると、ステップＳ１０３で肯定判定されて本ルーチンを終了する。
【００４６】
次に、図８のステップＳ２００の学習用データサンプリング判定処理について、図１０のフローチャートを用いて説明する。図１０において、ステップＳ２０１では、クランク角センサ５１により検出されるクランク角度、燃料圧送フラグＦ１及び通常噴射フラグＦ２を読み込む。ここで、燃料圧送フラグＦ１は、吐出調量弁２３に対する駆動指令によって燃料ポンプ２０から燃料が吐出されている期間にオンされ、燃料ポンプ２０から燃料が吐出されていない期間にオフされるフラグである（図７参照）。通常噴射フラグＦ２は、インジェクタ３３への駆動指令によってパイロット噴射及びメイン噴射による燃料噴射が実施されている期間にオンされ、インジェクタ３３から燃料が噴射されていない期間にオフされるフラグである（図７参照）。
【００４７】
続くステップＳ２０２では、各気筒について、エンジン３０の１燃焼サイクルのうち圧縮上死点後θａよりも後の期間ＴＡであって、燃料圧送フラグＦ１がオフであって、かつ通常噴射フラグＦ２がオフであるか否かを判定する。圧縮上死点後θａよりも後の期間ＴＡであって、燃料圧送フラグＦ１がオフであって、かつ通常噴射フラグＦ２がオフである場合には、ステップＳ２０３へ進み、学習用データサンプリングフラグＦ３をオンにする（図７参照）。学習用データサンプリングフラグＦ３は、微小噴射量学習のための学習用データを取得する処理の実行の許否を表すフラグであり、気筒毎に設定されるフラグである（図７参照）。ステップＳ２０３では、学習用データサンプリングフラグＦ３の設定処理が完了したか否か（すなわち、１燃焼サイクルが経過したか否か）を判定し、学習用データサンプリングフラグＦ３の設定処理を終了したと判定されると、本ルーチンを終了する。
【００４８】
次に、図８のステップＳ３００の学習実施期間演算処理について、図１１のフローチャートを用いて説明する。図１１において、ステップＳ３０１では、各気筒について、学習用データサンプリング可能期間ＴＳの長さを演算する。ここでは、学習用データサンプリングフラグＦ３がオンである期間の長さ（℃Ａ）を気筒毎に演算する。なお、１燃焼サイクル内に学習用データサンプリングフラグＦ３がオンである期間が複数存在する場合には、その複数の期間のそれぞれについて期間長さ（℃Ａ）を演算する。例えば、図７では、期間ｔ（♯ｋ−１）、期間ｔ（♯ｋ−２）及び期間ｔ（♯ｋ−３）（ただし、ｋは、気筒番号を表す１〜４の整数である。）の３つの期間の各々について期間長さ（℃Ａ）が演算される。
【００４９】
続くステップＳ３０２では、複数気筒のうち特定気筒（本実施形態では第１気筒♯１）について、特定気筒の学習用データサンプリング可能期間ＴＳの中から最長サンプリング期間を選択する。ここでは、学習用データサンプリング可能期間ＴＳが１つである場合には、その期間を最長サンプリング期間として選択する。一方、学習用データサンプリング可能期間ＴＳが複数ある場合には、その複数の学習用データサンプリング可能期間ＴＳの中から、期間長さが最も長い期間を最長サンプリング期間として選択する。このとき、同じ長さの学習用データサンプリング可能期間ＴＳが複数存在し、それらの期間長さが、取得した学習用データサンプリング可能期間ＴＳの中で最も長い場合、つまり最長サンプリング期間が複数ある場合には、最長サンプリング期間として複数の学習用データサンプリング可能期間ＴＳを選択する。
【００５０】
続くステップＳ３０３では、特定気筒において最長サンプリング期間が複数存在するか否かを判定する。最長サンプリング期間が複数存在しない場合には、ステップＳ３０５へ進み、最長サンプリング期間として選択されている学習用データサンプリング可能期間を学習実施期間ＴＰとして設定する。一方、最長サンプリング期間が複数存在する場合には、ステップＳ３０４へ進み、その複数の最長サンプリング期間のうち、最も進角側の期間を学習実施期間ＴＰとして設定する。
【００５１】
続くステップＳ３０６では、特定気筒以外の残りの気筒（本実施形態では、第２気筒♯２〜第４気筒♯４）の各々について、学習用データサンプリング可能期間のうち第１気筒♯１と同じ位置関係にある期間を学習実施期間ＴＰとして設定する。そして、本処理を終了する。
【００５２】
次に、図８のステップＳ４００の噴射実施要領演算処理について、図１２のフローチャートを用いて説明する。図１２において、ステップＳ４０１では、特定気筒（本実施形態では第１気筒♯１）について、学習実施期間ＴＰの長さである期間長さＬＡ（単位：℃Ａ）を演算する。続くステップＳ４０２では、期間長さＬＡの単位を時間に換算し、期間長さｔＡ（単位：マイクロ秒）を算出する。ステップＳ４０３では、期間長さｔＡを用いて、学習実施期間ＴＰ内に微小噴射を実施可能な噴射回数ｎを算出する。
【００５３】
ここで、微小噴射の噴射量は、出力トルクに寄与しない程度の極少量であり、１回のみの単発噴射によって微小噴射量学習を実施しようとすると、インジェクタ３３から学習用の燃料を噴射しても、学習値算出のためのパラメータ（本実施形態ではレール圧）の変化量が小さく、学習精度を十分に確保できないことが懸念される。そこで本実施形態では、学習実施期間ＴＰとして最長サンプリング期間を設定することにより学習実施期間ＴＰの長さを十分に確保するとともに、学習実施期間ＴＰ内に微小噴射（単発噴射）を複数回実施することにより、学習用噴射によるレール圧の変化量を増幅させる。これにより、微小噴射量学習の学習精度の向上を図っている。
【００５４】
続くステップＳ４０４では、期間長さｔＡ及び噴射回数ｎに基づいて、学習専用の微小噴射を実施するために必要な情報（学習噴射情報）を気筒ごとにＥＣＵ５０にセットする。学習噴射情報としては、ステップＳ４０３で算出した噴射回数ｎの他、噴射期間ＴＵ、噴射間隔ＴＩ、１回あたりの微小噴射における指示噴射量Ｑｔａｒｇｅｔ、駆動パルスＴＱ、噴射タイミング等が含まれる。指示噴射量Ｑｔａｒｇｅｔは、パイロット噴射で用いる微小量の噴射量範囲内の値に相当し、例えば１〜３ｍｍ3／ｓｔの固定値が設定されている。学習噴射情報をＥＣＵ５０にセットした後、本処理を終了する。
【００５５】
本実施形態の微小噴射量学習の具体的な実施態様について、図１３のタイムチャートを用いて説明する。図１３には、第１気筒♯１の１回の学習実施期間ＴＰを示している。
【００５６】
図１３では、第１気筒♯１では、１燃焼サイクルのうち、第１クランク角度位置θ１０（例えば、圧縮上死点後７５〜８５℃Ａ）から第２クランク角度位置θ１１（例えば、圧縮上伸展後１７０〜１８０℃Ａ）までの期間で学習用データサンプリングフラグＦ３がオンされている。この場合、まず、学習実施期間ＴＰの長さがクランク角度から時間に換算される（ＬＡ［ｄｅｇＣＡ］→ｔＡ［μｓ］）。続いて、期間長さｔＡと、噴射期間ＴＵ（例えば、４００〜５００マイクロ秒）と、噴射間隔ＴＩ（例えば、１８００〜２３００マイクロ秒）とに基づいて、噴射回数ｎを算出する。この噴射回数ｎは、学習実施期間ＴＰの期間長さｔＡ、噴射期間ＴＵ及び噴射間隔ＴＩの条件によって許容される最大の噴射回数である。本実施形態では、噴射期間ＴＵ及び噴射間隔ＴＩは予め定められた一定値である。噴射期間ＴＵは、パイロット噴射の燃料噴射量に対応する燃料噴射時間であり、エンジン３０からトルクが出力しない程度の微小噴射量に対応している。したがって、学習実施期間ＴＰが長いほど、微小噴射の噴射回数が多く設定される。
【００５７】
次に、図８のステップＳ５００の微小噴射量推定処理について、図１４のフローチャートを用いて説明する。図１４において、ステップＳ５０１では、各気筒について、燃料噴射を実施していない状態での期間長さｔＡにおけるレール圧の変化量を計測し、その計測した値を基準変化量ΔＰ１として記憶する。ここでは、予め定められた燃焼順序（例えば、♯１→♯３→♯４→♯２）に従って、各気筒の基準変化量ΔＰ１を計測する。
【００５８】
続くステップＳ５０２では、各気筒において、図１２の噴射実施要領演算処理でセットした学習噴射情報に基づいて、学習実施期間ＴＰに微小噴射をｎ回実施する。ステップＳ５０３では、ｎ回の微小噴射を実施した前後のレール圧の変化量を計測し、その計測した値を噴射時変化量ΔＰ２として記憶する。
【００５９】
続くステップＳ５０４では、基準変化量ΔＰ１と噴射時変化量ΔＰ２とを用いて、ｎ回の微小噴射による圧力変化量ΔＰｉｎｊを算出する。ここでは、基準変化量ΔＰ１から噴射時変化量ΔＰ２を減算し、その減算後の値（ΔＰ１−ΔＰ２）を圧力変化量ΔＰｉｎｊとして設定する。ステップＳ５０５では、学習実施期間ＴＰでのｎ回の微小噴射による全噴射量Ｑｔｏｔａｌを算出する。全噴射量Ｑｔｏｔａｌは、圧力変化量ΔＰｉｎｊ、体積弾性係数Ｋ及び高圧部容積Ｖｓｙｓを用いて推定する。
【００６０】
ステップＳ５０６では、ステップＳ５０５で算出した全噴射量Ｑｔｏｔａｌを噴射回数ｎで除算することにより、ｎ回の微小噴射による１回の噴射あたりの噴射量として、実噴射量Ｑｉｎｊ（＝Ｑｔｏｔａｌ／ｎ）を算出する。なお、ステップＳ５０２〜Ｓ５０６の処理は、各気筒について実施する。ステップＳ５０７では、全気筒の実噴射量Ｑｉｎｊの算出が完了したか否かを判定し、未完了である場合には、その未完了の気筒について、ステップＳ５０２〜Ｓ５０６の処理を実施する。そして、全気筒の実噴射量Ｑｉｎｊの算出が完了すると、ステップＳ５０７で肯定判定されて、本処理を終了する。
【００６１】
レール圧の変化量を用いた微小噴射量学習について、図１５を用いて説明する。図１５中、（ａ）は基準変化量ΔＰ１を示し、（ｂ）は噴射時変化量ΔＰ２を示している。図１５では、学習実施期間ＴＰとして長さＬＡ１の期間が設定されている場合を想定している。基準変化量ΔＰ１は、インジェクタ３３を駆動させていない状態においてインジェクタ３３の隙間等を介して低圧燃料通路側へ燃料が流出する微小量のリーク量（静リーク量）である。本実施形態では、静リーク量によるレール圧の低下分を減算した値を用いて、１回の微小噴射あたりの実噴射量Ｑｉｎｊを算出することにより、微小噴射量学習の学習精度を向上させるようにしている。
【００６２】
次に、図８のステップＳ６００のずれ量算出処理について、図１６のフローチャートを用いて説明する。図１６において、ステップＳ６０１では、ｎ回の微小噴射（学習用噴射）の１回あたりの指示噴射量Ｑｔａｒｇｅｔと、実噴射量Ｑｉｎｊとの差分ΔＱ（ｊ）（ΔＱ（ｊ）＝Ｑｔａｒｇｅｔ−Ｑｉｎｊ）を算出する。ΔＱ（ｊ）の算出は気筒ごとに行う。ｊは、気筒番号を表す１〜４の整数である。
【００６３】
続くステップＳ６０２では、差分ΔＱ（ｊ）を用いて、各気筒のインジェクタ３３ごとに、噴射量と駆動パルスとの関係を表す噴射特性における駆動パルスのずれ量ΔＴＱ（ｊ）を算出する。
【００６４】
図１７に、微小噴射の噴射量範囲における所定のレール圧でのインジェクタ３３の噴射特性を示す。図１７中、横軸は噴射量を示し、縦軸は駆動パルスを示している。また、実線はマスタ特性を示し、破線は実特性を示している。図１７において、噴射量と駆動パルスとは傾きα（α＞０）の比例関係にあり、噴射量をより多くするには、駆動パルスをより長くすればよい。マスタ特性に対して実特性にずれが生じ、同一の駆動パルスに対する噴射量に差分ΔＱ（ｊ）のずれが生じている場合、駆動パルスにはΔＴＱ（ｊ）のずれが生じている。そこで、ずれ量算出処理では、現在のレール圧に対応する噴射特性の傾きαを用いて、差分ΔＱ（ｊ）からずれ量ΔＴＱ（ｊ）（＝ΔＱ（ｊ）／α）を算出する。全気筒のずれ量ΔＴＱ（ｊ）の算出が完了した後、本処理を終了する。
【００６５】
最後に、図８のステップＳ８００の学習値記憶処理について、図１８のフローチャートを用いて説明する。図１８において、ステップＳ８０１では、気筒ごとに微小噴射量学習を所定回数（Ｙ回）実施することにより、ずれ量ΔＴＱ（ｊ）をＹ回取得し、それらの平均値ΔＴＱａｖｅ（ｊ）を気筒ごとに算出する。続くステップＳ８０２では、平均値ΔＴＱａｖｅ（ｊ）を微小噴射量学習の学習値として記憶部に記憶して保存し、本処理を終了する。
【００６６】
以上詳述した実施形態によれば、次の優れた効果が得られる。
【００６７】
１燃焼サイクルのうち筒内圧の変動が所定の筒内圧変動量よりも小さい期間（筒内圧安定期間）に、より具体的には、１燃焼サイクルのうち膨張行程後半以降に、微小噴射量の噴射量学習を実施する構成とした。この構成によれば、エンジン３０が運転している状態にある場合にも、学習精度を十分に確保しつつ微小噴射量学習を実施することができる。
【００６８】
筒内圧安定期間のうち、インジェクタ３３から燃料が噴射されておらず、かつ高圧ポンプ２２から燃料が吐出されていない期間（すなわち、学習用データサンプリング可能期間ＴＳ）に学習実施期間ＴＰを設定する構成とした。インジェクタ３３及び高圧ポンプ２２の少なくともいずれかが駆動している期間では、ポンプ圧送量及び燃料噴射量がばらつくことでレール圧がばらつくことが考えられる。そのため、インジェクタ３３及び高圧ポンプ２２の少なくともいずれかが駆動している期間で微小噴射量学習の燃料噴射を実施すると、同一の駆動パルスに対する実噴射量のばらつきやレール圧の検出値のばらつきが大きくなり、学習精度が低下することが懸念される。この点に着目し、上記構成とすることにより、微小噴射量学習の実施のためにインジェクタ３３による通常噴射及び燃料ポンプ２０からの燃料吐出をわざわざ停止させなくても、学習精度を確保しつつ微小噴射量学習を実施することができる。
【００６９】
１燃焼サイクル内に学習用データサンプリング可能期間ＴＳが複数存在する場合には、複数の学習用データサンプリング可能期間ＴＳのうち、最長の期間を学習実施期間ＴＰに設定する構成とした。この構成によれば、１回の学習実施期間ＴＰ内に微小噴射量学習のための燃料噴射をできるだけ多く実施してレール圧の変化量を増幅することができ、学習精度をより高めることができる。
【００７０】
学習実施期間ＴＰにおいて、パイロット噴射に対応する微小量の燃料をインジェクタ３３から複数回噴射する構成とした。パイロット噴射等の微小噴射では、１回の噴射あたりの燃料噴射量が極めて少なく、学習精度を十分に確保できないことが懸念される。この点、上記構成によれば、微小噴射に対応する燃料噴射を複数回行うことによって、学習用噴射に対するレール圧の変化量を増幅することができ、学習精度を確保することができる。
【００７１】
学習実施期間ＴＰの長さに応じた噴射回数の燃料噴射を実施する構成とした。具体的には、学習実施期間ＴＰが長いほど、微小噴射の噴射回数が多くなるようにした。こうした構成によれば、できるだけ多くの量の燃料を学習実施期間ＴＰ内に噴射することができ、レール圧の変化をできるだけ増幅することができる。これにより、学習精度をより向上させることができる。
【００７２】
１燃焼サイクルのうち、膨張行程の後半以降となる期間に学習実施期間ＴＰを設定する構成とした。この構成によれば、微小噴射量学習の実施期間は、トルク生成のための燃料の燃焼が完了した後であり、筒内圧が安定しているため、エンジン３０が運転している状態にあっても噴射量ばらつきが小さく、学習精度を十分に確保することができる。また、燃焼が終わってから微小噴射量学習のための燃料噴射を実施するため、通常の燃料噴射（パイロット噴射及びメイン噴射）の実施を妨げたり、通常の燃料噴射の実施態様（噴射時期等）を変更したりすることを回避しつつ、微小噴射量学習を実施することができる。このとき、次の燃焼サイクルでの通常の燃料噴射に影響を与えないように、１燃焼サイクル内のうち膨張行程の後半以降となる期間のうち、できるだけ進角側で、微小噴射量学習のための燃料噴射を実施することが望ましい。
【００７３】
学習実施期間ＴＰでは、通常噴射とは別途、学習専用の燃料噴射を実施して微小噴射量学習する構成とした。この構成によれば、通常噴射とは別に学習用噴射を行うことから、通常噴射の実施態様を変更せずに微小噴射量学習を実施することができる。
【００７４】
（他の実施形態）
本発明は上記実施形態の内容に限定されず、例えば次のように実施されてもよい。
【００７５】
・上記実施形態では、４気筒エンジンを備える１噴射１圧送の燃料供給システムに適用する場合を一例に挙げて説明したが、エンジン３０の気筒数や、１燃焼サイクルにおける高圧ポンプ２２の燃料吐出の回数とインジェクタ３３の回数との関係はこれに限定されない。例えば、４気筒エンジンにおいて２噴射１圧送や１噴射２圧送としている燃料供給システムに本発明を適用してもよいし、あるいは、３気筒エンジンにおいて３噴射２圧送や３噴射４圧送としている燃料供給システムに本発明を適用してもよい。図１９に、４気筒エンジンであって２噴射１圧送の燃料供給システムに適用した場合のタイムチャートを示す。なお、図１９中の記号の説明は図７と同じである。また、上記実施形態に示したインジェクタ３３は一例であり、上記実施形態の構成のものに限定されない。
【００７６】
・上記実施形態では、１燃焼サイクルのうち膨張行程後半及び排気行程を、筒内圧の変動が所定の筒内圧変動量よりも小さい筒内圧安定期間とみなして、膨張行程後半及び排気行程内に学習実施期間ＴＰを設定したが、気筒内圧力を検出する筒内圧センサを各気筒に設け、メイン噴射の終了後において筒内圧センサの検出値が閾値以下となった期間を筒内圧安定期間として学習実施期間ＴＰを設定してもよい。
【００７７】
・上記実施形態では、１燃焼サイクルのうち膨張行程後半及び排気行程を筒内圧安定期間として、膨張行程後半及び排気行程に学習実施期間ＴＰを設定したが、吸気行程及び圧縮行程前半の少なくともいずれかを筒内圧安定期間として（図５参照）、吸気行程及び圧縮行程前半の少なくともいずれかに学習実施期間ＴＰを設定してもよい。
【００７８】
・学習実施期間ＴＰを排気行程内に設定し、排気行程で微小噴射量学習を実施する構成としてもよい。メイン噴射完了後に燃料噴射を実施するため、噴射した燃料がシリンダ内壁に付着して、その付着した燃料が流れ落ちてオイルパンに混入することが懸念される。そこで、燃料のオイルへの混入を避けるために、排気行程で微小噴射量学習を実施するようにしてもよい。
【００７９】
・上記実施形態では、学習実施期間ＴＰを最長期間としたが、予め定めた位置の期間を学習実施期間ＴＰに設定してもよい。例えば、学習用データサンプリング可能期間ＴＳが複数ある場合、その複数の学習用データサンプリング可能期間ＴＳのうち、最進角側に位置する期間を学習実施期間ＴＰに設定してもよい。
【００８０】
・上記実施形態では、学習用噴射に対するレール圧の変化量を検出することにより微小噴射量学習を実施したが、レール圧の変化量に限らず、インジェクタ３３からの燃料噴射量に相関する他のパラメータを用いて微小噴射量学習を実施する構成としてもよい。他のパラメータとしては、例えば、排気の空燃比（λ値）や排気温度等が挙げられる。
【００８１】
・上記実施形態では、多段噴射の具体例として、パイロット噴射とメイン噴射とを実施する燃料噴射システムに適用し、微小噴射量学習としてパイロット噴射の噴射量を学習する場合について説明したが、多段噴射の態様及び学習対象の微小噴射はこれに限定されない。例えば、微小噴射としてパイロット噴射と共に、又はパイロット噴射を実施せずに、プレ噴射、アフター噴射及びポスト噴射のうち少なくともいずれかを実施する燃料噴射システムに適用し、プレ噴射、アフター噴射及びポスト噴射のうち少なくともいずれかについての微小噴射量学習を実施する構成としてもよい。
【００８２】
・微小噴射量の燃料噴射を行うとレール圧は降下するため、同一の駆動パルス長さで微小噴射量の燃料噴射を複数回実施すると、各回の噴射量にばらつきが生じることがある。こうしたばらつきを低減するために、学習実施期間ＴＰでの学習用噴射の際に、各噴射回の噴射直前のレール圧を検出し、その検出したレール圧に基づいて、インジェクタ３３に対する駆動パルスの長さを可変に設定する構成としてもよい。この構成によれば、より精度の高い微小噴射量学習を実施することができる。このとき、検出したレール圧が低いほど駆動パルスを長くするとよい。
【００８３】
・学習実施期間ＴＰの微小噴射の噴射回数に上限を設けてもよい。こうした構成とすることにより、燃費への影響を低減することができる。この場合の上限回数は、学習精度を十分に確保するための総噴射量を達成可能な回数に設定するとよい。あるいは、学習実施期間ＴＰで実施する微小噴射の噴射回数を固定値としてもよい。
【００８４】
・上記で算出したｎ回微小噴射による圧力変化量ΔＰｉｎｊから、インジェクタ３３の開弁による燃料リーク量である動リーク量に相当する圧力変化量ΔＰｄｌを減算することにより噴射量学習値を算出する構成としてもよい。
【００８５】
・学習用噴射を実施する構成に代えて、通常噴射の微小噴射（例えばポスト噴射）を利用して微小噴射量学習を実施する構成としてもよい。この場合、ポスト噴射を分割噴射により行うことによって、微小噴射に伴い変化する学習値算出のためのパラメータ（例えばレール圧）を増幅させてもよい。
【００８６】
・上記の各構成要素は概念的なものであり、上記実施形態に限定されない。例えば、一つの構成要素が有する機能を複数の構成要素に分散して実現したり、複数の構成要素が有する機能を一つの構成要素で実現したりしてもよい。
【符号の説明】
【００８７】
１４…コモンレール（蓄圧容器）、２０…燃料ポンプ、２２…高圧ポンプ、３０…エンジン（内燃機関）、３３…インジェクタ（燃料噴射弁）、５０…ＥＣＵ（学習期間設定部、噴射制御部、噴射量算出部、噴射量学習部、噴射回数設定部）、６０…燃料噴射システム。
【図１】
2020084851.tif 000003
【図２】
2020084851.tif 000004
【図３】
2020084851.tif 000005
【図４】
2020084851.tif 000006
【図５】
2020084851.tif 000007
【図６】
2020084851.tif 000008
【図７】
2020084851.tif 000009
【図８】
2020084851.tif 000010
【図９】
2020084851.tif 000011
【図１０】
2020084851.tif 000012
【図１１】
2020084851.tif 000013
【図１２】
2020084851.tif 000014
【図１３】
2020084851.tif 000015
【図１４】
2020084851.tif 000016
【図１５】
2020084851.tif 000017
【図１６】
2020084851.tif 000018
【図１７】
2020084851.tif 000019
【図１８】
2020084851.tif 000020
【図１９】
2020084851.tif 000021