(57)【要約】【課題】正確な噴射量補正を行うことができる内燃機関の燃料噴射制御装置を提供する。【解決手段】エンジン１０の燃料噴射システムは、燃料噴射弁３０と、制御部としてのマイコン４１及び駆動ＩＣ４２と、を備える。ＥＣＵ４０は、弁体３４が駆動する態様で燃料噴射弁３０に通電する第１通電を実施するとともに、第１通電の通電終了後における燃料噴射弁３０の端子電圧に基づいて、燃料噴射弁３０の駆動特性に関する情報として第１駆動情報を取得する第１情報取得部と、弁体３４が駆動しない態様で燃料噴射弁３０に通電する第２通電を実施するとともに、第２通電の通電終了後における前記端子電圧に基づいて、前記駆動特性に関する情報として第２駆動情報を取得する第２情報取得部と、第１駆動情報と第２駆動情報とに基づいて、燃料噴射弁３０の噴射補正量を算出する噴射量算出部と、を備える。【選択図】図１
2019019740.tif 000002
【特許請求の範囲】
【請求項１】
燃料噴射弁（３０）と、前記燃料噴射弁の駆動を制御する制御部（４１、４２）とを備える内燃機関（１０）の燃料噴射システムに適用され、
前記燃料噴射弁の弁体（３４）が駆動する態様で前記燃料噴射弁に通電する第１通電を実施するとともに、前記第１通電の通電終了後における前記燃料噴射弁の端子電圧に基づいて、前記燃料噴射弁の駆動特性に関する情報として第１駆動情報を取得する第１情報取得部と、
前記弁体が駆動しない態様で前記燃料噴射弁に通電する第２通電を実施するとともに、前記第２通電の通電終了後における前記端子電圧に基づいて、前記駆動特性に関する情報として第２駆動情報を取得する第２情報取得部と、
前記第１情報取得部により取得した第１駆動情報と、前記第２情報取得部により取得した第２駆動情報とに基づいて、前記燃料噴射弁の噴射補正量を算出する補正量算出部と、
を備える、内燃機関の燃料噴射制御装置。
【請求項２】
前記補正量算出部は、前記噴射補正量として、前記制御部に起因する噴射量ばらつきを補正するための第１補正量と、前記燃料噴射弁のリフト挙動に起因する噴射量ばらつきを補正するための第２補正量とを算出し、
前記第２駆動情報を用いて前記第１補正量を算出し、前記第１駆動情報と前記第１補正量とを用いて前記第２補正量を算出する、請求項１に記載の内燃機関の燃料噴射制御装置。
【請求項３】
前記第１駆動情報及び前記第２駆動情報は、前記燃料噴射弁の閉弁タイミングのずれ量に関する情報である、請求項１又は２に記載の内燃機関の燃料噴射制御装置。
【請求項４】
前記第２情報取得部は、車両減速時の燃料カット中に前記第２通電を実施する、請求項１〜３のいずれか一項に記載の内燃機関の燃料噴射制御装置。
【請求項５】
前記制御部は、前記弁体のリフト量がフルリフト位置に到達する噴射パルスで前記燃料噴射弁を開弁駆動するフルリフト噴射と、前記弁体のリフト量が前記フルリフト位置に到達しない噴射パルスで前記燃料噴射弁を開弁駆動するパーシャルリフト噴射とを実施し、
前記第１情報取得部は、前記パーシャルリフト噴射の実施期間に前記第１通電を実施する、請求項１〜４のいずれか一項に記載の内燃機関の燃料噴射制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の燃料噴射制御装置に関するものである。
【背景技術】
【０００２】
車両等に搭載される内燃機関の各気筒に燃料を噴射供給する燃料噴射弁として、例えば電磁ソレノイド式のものが知られている。この種の燃料噴射弁においては、燃料噴射弁本体に内蔵されるコイルへの通電時期及び通電時間を制御して弁体（ニードル）を開弁方向に駆動させることで、燃料噴射時期及び燃料噴射量を制御している。
【０００３】
エンジンの出力や燃費、排気エミッション等を良好にするためには、燃料噴射量を精度良く制御することが必要である。そこで、噴射量ばらつきの補正に関する技術について従来、種々提案されている（例えば、特許文献１参照）。特許文献１には、燃料噴射弁の弁体が駆動しない範囲の所定の通電パルスで磁気回路に通電を行い、そのときの燃料噴射弁のマイナス端子電圧により磁気回路ばらつき値を算出することが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１６−２０５２７６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
噴射量ばらつきの原因としては、燃料噴射弁側の個体差の影響だけでなく、燃料噴射弁の駆動を制御する制御部側の個体差の影響を受けることが考えられる。燃料噴射量を精度良く制御するためには、噴射量ばらつきを精度良く検出する必要がある。
【０００６】
本発明は、上記課題に鑑みてなされたものであり、その主たる目的は、正確な噴射量補正を行うことができる内燃機関の燃料噴射制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
以下、上記課題を解決するための手段、及びその作用効果について説明する。なお、以下においては、理解の容易のため、発明の実施の形態において対応する構成の符号を括弧書き等で適宜示すが、この括弧書き等で示した具体的構成に限定されるものではない。
【０００８】
本発明は、燃料噴射弁（３０）と、前記燃料噴射弁を駆動させる制御部（４１、４２）とを備える内燃機関（１０）の燃料噴射システムに適用される内燃機関の燃料噴射制御装置に関する。請求項１に記載の発明は、前記燃料噴射弁の弁体（３４）が駆動する態様で前記燃料噴射弁に通電する第１通電を実施するとともに、前記第１通電の通電終了後における前記燃料噴射弁の端子電圧に基づいて、前記燃料噴射弁の駆動特性に関する情報として第１駆動情報を取得する第１情報取得部と、前記弁体が駆動しない態様で前記燃料噴射弁に通電する第２通電を実施するとともに、前記第２通電の通電終了後における前記端子電圧に基づいて、前記駆動特性に関する情報として第２駆動情報を取得する第２情報取得部と、前記第１情報取得部により取得した第１駆動情報と、前記第２情報取得部により取得した第２駆動情報とに基づいて、前記燃料噴射弁の噴射補正量を算出する噴射量算出部と、を備える。
【０００９】
上記構成においては、第１通電の通電終了後における燃料噴射弁の端子電圧を用いることにより、燃料噴射弁の駆動特性に関する情報として、燃料噴射弁のリフト挙動に起因する噴射量ばらつきと、制御部の回路素子に起因する噴射量ばらつきとを含む情報（第１駆動情報）を取得することができる。また、第２通電の通電終了後における燃料噴射弁の端子電圧を用いることにより、燃料噴射弁の駆動特性に関する情報として、燃料噴射弁のリフト挙動に起因する噴射量ばらつきを含まず、制御部の回路素子に起因する噴射量ばらつきを含む情報（第２駆動情報）を取得することができる。したがって、第１駆動情報及び第２駆動情報によれば、燃料噴射弁のリフト挙動に起因する噴射量ばらつきと、制御部の回路素子に起因する噴射量ばらつきとを切り分けることができる。これにより、燃料噴射弁及び制御部の個々の噴射量ばらつきを正確に把握でき、ひいては正確な噴射量補正を行うことができる。
【図面の簡単な説明】
【００１０】
【図１】エンジン制御システムの概略構成図。
【図２】燃料噴射弁の駆動状態を示す図であり、（ａ）はフルリフト状態、（ｂ）はパーシャルリフト状態を示す図。
【図３】パーシャルリフト領域とフルリフト領域とを示す図。
【図４】燃料噴射弁から燃料を噴射させたときの挙動を表す図。
【図５】噴射パルスオフ後のマイナス端子電圧の推移及び閾値到達時間を表すタイムチャート。
【図６】機械的ばらつき及び電気的ばらつきに起因するフライバック電圧の波形の相違を示す図。
【図７】燃料噴射制御の機能ブロック図。
【図８】燃料噴射制御の機能ブロック図。
【図９】ばらつき値算出処理の処理手順を示すフローチャート。
【図１０】閾値到達時間の算出処理の処理手順を示すフローチャート。
【図１１】ゼロリフト学習処理の処理手順を示すフローチャート。
【図１２】通常モードからゼロリフト学習モードに切り替える場合の具体的態様を表すタイムチャート。
【図１３】ゼロリフト学習モードから通常モードに切り替える場合の具体的態様を表すタイムチャート。
【発明を実施するための形態】
【００１１】
以下、実施形態について図面を参照して説明する。本実施形態は、車両用の筒内噴射式の多気筒ガソリンエンジンを制御する制御システムとして具体化している。まず、図１に基づいてエンジン制御システムの概略構成を説明する。なお、以下の各実施形態相互において、互いに同一又は均等である部分には、図中、同一符号を付しており、同一符号の部分についてはその説明を援用する。
【００１２】
エンジン１１において、吸気管１２の最上流部にはエアクリーナ１３が設けられ、エアクリーナ１３の下流側には、吸入空気量を検出するエアフローメータ１４が設けられている。エアフローメータ１４の下流側には、モータ１５によって開度調節されるスロットルバルブ１６と、スロットルバルブ１６の開度（スロットル開度）を検出するスロットル開度センサ１７とが設けられている。
【００１３】
スロットルバルブ１６の下流側にはサージタンク１８が設けられ、サージタンク１８において、吸気管圧力を検出する吸気管圧力センサ１９が設けられている。サージタンク１８には、エンジン１１の各気筒２１に空気を導入する吸気マニホールド２０が接続されている。エンジン１１の各気筒２１には、それぞれ筒内に燃料を直接噴射する電磁式の燃料噴射弁３０が取り付けられている。エンジン１１のシリンダヘッドには、気筒２１ごとに点火プラグ２２が取り付けられており、各気筒２１の点火プラグ２２の火花放電によって筒内の混合気に着火される。
【００１４】
エンジン１１の排気管２３には、排気を検出対象にして混合気の空燃比又はリッチ／リーン等を検出する排気センサ２４が設けられている。排気センサ２４は、空燃比センサ、酸素センサ等である。排気センサ２４の下流側には、排気を浄化する三元触媒等の触媒２５が設けられている。
【００１５】
エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２６や、ノッキングを検出するノックセンサ２７が取り付けられている。クランク軸２８の外周側には、クランク軸２８が所定クランク角回転するごとにパルス信号を出力するクランク角センサ２９が取り付けられている。クランク角センサ２９のクランク角信号に基づいて、クランク角やエンジン回転速度が検出される。これら各種センサの出力はＥＣＵ４０に入力される。
【００１６】
ＥＣＵ４０は、マイクロコンピュータを主体として構成された電子制御ユニットであり、内蔵されたＲＯＭ（記憶媒体）に記憶されている制御プログラムを用い、各種センサの検出信号に基づいてエンジン１１の各種制御を実施する。ＥＣＵ４０が燃料噴射制御装置に相当する。ＥＣＵ４０は、エンジン運転状態に応じた要求噴射量を算出し、その要求噴射量に基づいて燃料噴射弁３０の駆動を制御するとともに、点火プラグ２２の点火時期を制御する。
【００１７】
燃料噴射制御について詳しくは、ＥＣＵ４０は、燃料噴射制御を実施するエンジン制御用のマイコン４１と、燃料噴射弁駆動用の駆動ＩＣ４２とを備えている。マイコン４１は、エンジン運転状態に基づいて要求噴射量を算出するとともに、算出した要求噴射量に基づいて噴射パルス幅を算出する。また、算出した噴射パルス幅を駆動ＩＣ４２に出力する。駆動ＩＣ４２は、噴射パルス幅に基づき生成された噴射パルスにより燃料噴射弁３０を駆動する。これにより、要求噴射量分の燃料を燃料噴射弁３０から噴射させる。
【００１８】
本実施形態において、エンジン１１は４気筒ガソリンエンジンであり、各気筒に設けられた燃料噴射弁３０による燃料噴射として、１燃焼サイクル内の吸気行程及び圧縮行程のそれぞれにおいて噴射パルスを出力し、燃料を噴射する。なお、第１気筒♯１〜第４気筒♯４の燃焼順序は♯１→♯３→♯４→♯２である。燃料噴射に際しては、燃焼順序が一つ置きとなる２つの気筒をひとまとめにして駆動グループ１，２としており、駆動グループごとの駆動系統で各燃料噴射弁３０が駆動される。本実施形態では、第１気筒♯１及び第４気筒♯４が駆動グループ１に属し、第２気筒♯２及び第３気筒♯３が駆動グループ２に属している。
【００１９】
燃料噴射弁３０には、マイナス端子電圧Ｖｍを検出する電圧センサ４３や、電磁部（コイル）に流れる通電電流を検出する電流センサ４４が設けられている。これら電圧センサ４３及び電流センサ４４の検出結果はＥＣＵ４０に逐次入力される。
【００２０】
本実施形態の燃料噴射制御においては、燃料噴射弁３０の弁体をフルリフト位置まで到達させて、フルリフト状態で所望量の燃料を噴射するフルリフト噴射と、燃料噴射弁３０の弁体がフルリフト位置に到達する前のパーシャルリフト状態で弁体の開弁側への移動を終了させ、その状態で所望の微少量の燃料を噴射するパーシャルリフト噴射とを実施している。パーシャルリフト噴射は、例えば、メイン噴射（本実施形態では吸気行程噴射）の後に実施される燃料噴射（本実施形態では圧縮行程噴射）において行われる。
【００２１】
フルリフト噴射及びパーシャルリフト噴射について、図２を用いて説明する。なお、図２中、（ａ）はフルリフト噴射時の動作を示し、（ｂ）はパーシャルリフト噴射時の動作を示している。
【００２２】
図２に示すように、燃料噴射弁３０は、通電により電磁力を生じさせる電磁部としてのコイル３１と、磁性体よりなる固定コア３２と、磁性体よりなり電磁力によって固定コア３２の側に吸引される可動コア３３と、可動コア３３と一体的に駆動されるニードル状の弁体３４と、弁体３４を閉弁側に付勢する第１スプリング３５と、可動コア３３を反閉弁側に付勢する第２スプリング３６とを有している。コイル３１への通電に伴い弁体３４が弁座から離れて開弁側に移動することで、燃料噴射弁３０が開弁状態となり、燃料噴射が行われる。なお、第２スプリング３６の付勢力は、第１スプリング３５の付勢力よりも小さく設定されている。
【００２３】
図２（ａ）、（ｂ）では噴射パルス幅が相違している。図２（ａ）に示すように、弁体リフト量がフルリフト量となる場合には、噴射パルス幅が比較的長くなる。この場合、弁体３４が、可動コア３３が固定コア３２側のストッパ３２ａに突き当たる位置であるフルリフト位置に到達する。一方、図２（ｂ）に示すように、弁体リフト量がパーシャルリフト量となる場合には、噴射パルス幅が比較的短くなる。この場合、弁体３４が、可動コア３３がストッパ３２ａに突き当たる手前の状態であり、フルリフト位置に到達しないパーシャルリフト状態となる。噴射パルスの立ち下がりに伴いコイル３１の通電が停止されると、可動コア３３と弁体３４とが閉弁位置に戻ることで燃料噴射弁３０が閉弁状態となり、燃料噴射が停止される。なお、可動コア３３と弁体３４とが別体で構成されているため、弁体３４が閉位置に到達した際には、弁体３４はその閉位置で保持されるのに対し、可動コア３３は単独でより先端側に移動する。
【００２４】
図３は、パーシャルリフト噴射を実施するパーシャルリフト領域と、フルリフト噴射を実施するフルリフト領域とを示す図である。図３に示すように、パーシャルリフト領域及びフルリフト領域のいずれにおいても、噴射パルス幅（すなわち通電時間）が長いほど、燃料噴射量が直線的に多くなる傾向を有する。
【００２５】
ここで、高圧の燃料を燃料噴射弁３０から筒内に噴射する筒内噴射式エンジン１１では、噴射パルス幅に対する燃料噴射量の変化特性のリニアリティ（直線性）が、パーシャルリフト領域で悪化しやすく、噴射パルス幅に対応する燃料噴射量の個体差が大きくなりやすい。その一方で、噴射量ばらつきが大きいと、燃料噴射弁３０から噴射される燃料量を精密に調整することができず、排気エミッションやドライバビリティ等の悪化を招くことが懸念される。特にパーシャルリフト噴射では噴射量が微少であり、この微少噴射により噴射量ばらつきの影響が大きくなりやすい。そのため、各燃料噴射弁３０、ＥＣＵ４０の各噴射系統について、個々の噴射量ばらつきを精度良く検出し、噴射量ばらつきに応じた噴射量制御を行うことが必要となる。
【００２６】
燃料噴射弁３０の噴射量ばらつきとしては、燃料噴射弁３０のリフト挙動の個体差に起因するばらつき（以下、「機械的ばらつき」ともいう。）と、燃料噴射弁３０の駆動を制御するマイコン４１及び駆動ＩＣ４２の回路素子の個体差に起因するばらつき（以下、「電気的ばらつき」ともいう。）と、が存在する。機械的ばらつきは、燃料噴射を実施するアクチュエータである燃料噴射弁３０側の噴射量ばらつきであり、例えば固定コア３２と可動コア３３との組み付け状態や、弁体３４の動きやすさ等に起因して生じる。一方、電気的ばらつきは、燃料噴射弁３０の駆動を制御するＥＣＵ４０側の噴射量ばらつきであり、例えばマイコン４１や駆動ＩＣ４２の回路素子における磁気効率等によって生じる。この場合、ＥＣＵ４０の回路素子における磁気抜けが大きいほど（すなわち、磁気効率が悪いほど）、燃料噴射弁３０への噴射パルスをオフしてから閉弁するまでの所要時間が短くなり、閉弁時期が早くなる。
【００２７】
そこで本実施形態では、燃料噴射弁３０の噴射量ばらつきのうち、電気的ばらつきを補正するための噴射補正量である電気的ばらつき値と、機械的ばらつきを補正するための噴射補正量である機械的ばらつき値とを算出し、これら算出した電気的ばらつき値及び機械的ばらつき値に基づいて、燃料噴射量の補正量（噴射補正量）を算出することとしている。なお、機械的ばらつきが第１補正量に相当し、電気的ばらつき値が第２補正量に相当する。本実施形態の噴射量ばらつきの算出処理について、以下に詳しく説明する。
【００２８】
燃料噴射弁３０は、噴射パルスのオフに伴い、誘電起電力によってマイナス端子電圧Ｖｍが変化する。この特性について図４を用いて説明する。図４は、燃料噴射弁３０の弁体３４を駆動させて燃料噴射弁３０から所定量の燃料を噴射させたときの挙動を示している。図４中、（ａ）は、燃料噴射弁３０のプラス端子電圧Ｖｐについて、（ｂ）はマイナス端子電圧Ｖｍについて、（ｃ）はインジェクタ駆動電流について、（ｄ）は燃料噴射弁３０の噴射率についての挙動をそれぞれ示している。図４から分かるように、燃料噴射弁３０のコイル３１に通電して開弁させ、その後、噴射パルス幅に対応する時間の経過後に通電を停止させると、通電オフ直後の所定期間では、バッテリ電圧ＶＢよりも高いフライバック電圧（逆起電圧）が発生する（図４（ｂ）参照）。
【００２９】
なお、マイナス端子電圧Ｖｍについて本明細書では、その大きさを絶対値で表している。例えば「Ｖｍが所定値よりも大きい」とは、Ｖｍが所定値よりも負側に大きい値であることを意味している。
【００３０】
こうしたフライバック電圧を利用することにより、燃料噴射弁３０における実際の閉弁タイミングを検出することが可能である（図５参照）。具体的には、ＥＣＵ４０は、パーシャルリフト噴射による燃料噴射の実施期間中に、噴射パルスをオフした後のマイナス端子電圧Ｖｍを、ノイズ成分の周波数よりも低い第１周波数ｆ１をカットオフ周波数とする第１ローパスフィルタでフィルタ処理（なまし処理）した第１フィルタ電圧Ｖｓｍ１を算出する。第１ローパスフィルタは、カットオフ周波数（第１周波数ｆ１）よりも低い周波数帯域を通過域とするローパスフィルタである。
【００３１】
また、ＥＣＵ４０は、噴射パルスをオフした後のマイナス端子電圧Ｖｍを、第１周波数ｆ１よりも低い第２周波数ｆ２をカットオフ周波数とする第２ローパスフィルタでフィルタ処理（なまし処理）した第２フィルタ電圧Ｖｓｍ２を算出する。なお、第１ローパスフィルタを用いたフィルタ処理及び第２ローパスフィルタを用いたフィルタ処理は、エンジン１１の気筒毎に行う。こうした処理により、ＥＣＵ４０は、マイナス端子電圧Ｖｍからノイズ成分を除去した第１フィルタ電圧Ｖｓｍ１と、閉弁位置検出用の第２フィルタ電圧Ｖｓｍ２とを算出する。第２ローパスフィルタは、カットオフ周波数（第２周波数ｆ２）よりも低い周波数帯域を通過域とするローパスフィルタである。
【００３２】
続いて、第１フィルタ電圧Ｖｓｍ１と第２フィルタ電圧Ｖｓｍ２との差分Ｖｄｉｆｆ（＝Ｖｓｍ１−Ｖｓｍ２）を算出する。また、噴射パルスのオフ後の基準タイミング（図５のｔ３）から、差分Ｖｄｉｆｆが閾値Ｖｔを超えるタイミング（図５のｔ４）までに要した時間を算出し、これを閾値到達時間Ｔｄｉｆｆとする。本実施形態では、差分Ｖｄｉｆｆと閉弁タイミングとの間に相関があることに着目し、差分Ｖｄｉｆｆが閾値Ｖｔを超えるタイミングを閉弁タイミングとして検出する。なお、閾値到達時間Ｔｄｉｆｆの算出処理はエンジン１１の気筒毎に行い、気筒毎に閉弁タイミングを算出する。閾値到達時間Ｔｄｉｆｆが、「燃料噴射弁３０の駆動特性に関する情報」に相当する。
【００３３】
基準タイミングについて本実施形態では、噴射パルスをオフした後にマイナス端子電圧Ｖｍが判定値Ｖｏｆｆを下回るタイミング（換言すれば、判定値Ｖｏｆｆよりも大から小へ移行する最初のタイミング）を基準タイミングとしている。なお、基準タイミングを、噴射パルスのオン時（図５のｔ１）、あるいは噴射パルスのオフ時（図５のｔ２）としてもよい。閾値Ｖｔは、燃圧や燃温等に応じた可変値であってもよく、あるいは予め設定された固定値であってもよい。
【００３４】
さらに本実施形態では、コイル３１への通電オフに伴い発生するフライバック電圧を利用し、噴射パルスのオフ後のマイナス端子電圧Ｖｍの挙動に基づいて、機械的ばらつき値及び電気的ばらつき値を算出している。具体的には、ＥＣＵ４０は、パーシャルリフト噴射を実施したときの通電オフ後のマイナス端子電圧Ｖｍに基づいて閾値到達時間Ｔｄｉｆｆ（第１駆動情報に相当）を算出するリフト学習を実施する。また、ＥＣＵ４０は、燃料噴射弁３０から燃料を噴射しない期間（本実施形態では、燃料カット中）において、弁体３４が駆動しない範囲の所定の噴射パルスで燃料噴射弁３０の通電を行い、その通電オフ後のマイナス端子電圧Ｖｍに基づいて閾値到達時間Ｔｄｉｆｆ（第２駆動情報に相当）を算出するゼロリフト学習を実施する。そして、リフト学習により算出した閾値到達時間Ｔｄｉｆｆ（以下、「閾値到達時間Ｔｄｉｆｆ＿１」ともいう。）と、ゼロリフト学習により算出した閾値到達時間Ｔｄｉｆｆ（以下、「閾値到達時間Ｔｄｉｆｆ＿２」ともいう。）と、に基づいて、機械的ばらつき値及び電気的ばらつき値を算出する。なお、電気的ばらつき値が「第１補正量」に相当し、機械的ばらつき値が「第２補正量」に相当する。
【００３５】
図６に、機械的ばらつき及び電気的ばらつきに起因するフライバック電圧の波形の相違を示す。図６中、（ａ）はリフト学習時、（ｂ）はゼロリフト学習時を示している。図６では、ＥＣＵ４０の回路素子の磁気効率がノミナルよりも悪く、フライバック電圧が速やかに収束する場合を想定している。
【００３６】
ゼロリフト学習では、コイル３１への通電は実施するものの、弁体３４は駆動させない。この場合、噴射パルスオフ後のマイナス端子電圧Ｖｍは、機械的ばらつきによる影響は受けず、電気的ばらつきの影響を受けてノミナル値からずれる。つまり、図６（ｂ）に示すように、弁体３４が駆動しない範囲の噴射パルスで通電を行った場合のマイナス端子電圧Ｖｍのノミナル値からのずれ量（図６中のＳ１）は電気的ばらつきに起因するものとみなすことができる。
【００３７】
一方、リフト学習では、コイル３１への通電により弁体３４を駆動させて、燃料噴射弁３０から燃料を噴射させる。この場合、噴射パルスオフ後のマイナス端子電圧Ｖｍは、機械的ばらつき及び電気的ばらつきの両方の影響を受けてノミナル値からずれる。つまり、図６（ａ）に示すように、弁体３４が駆動する範囲の噴射パルスで通電を行った場合のマイナス端子電圧Ｖｍのノミナル値からのずれ量は、電気的ばらつきに起因するずれ量（図６中のＳ１）と、機械的ばらつきに起因するずれ量（図６中のＳ２）との合算であるとみなすことができる。したがって、ゼロリフト学習でのずれ量Ｓ１分を除けば、機械的ばらつきに起因するずれ量を取得できる。
【００３８】
機械的ばらつきは燃料噴射弁３０ごとに定まる値であり、また、電気的ばらつきはＥＣＵ４０の駆動系統ごとに定まる値である。リフト学習及びゼロリフト学習によれば、燃料噴射弁３０ごとの機械的ばらつきを取得できるとともに、ＥＣＵ４０の駆動系統ごとの電気的ばらつきを取得できる。
【００３９】
図７及び図８は、本実施形態の燃料噴射制御の機能ブロック図である。図７に示すように、ＥＣＵ４０のマイコン４１は、噴射パルス演算部５１と、記憶部５２と、を備えている。噴射パルス演算部５１は、エンジン運転状態（例えば、エンジン回転速度やエンジン負荷等）に基づいて基本噴射量を算出する。また、記憶部５２に記憶されている補正パラメータを読み出し、その読み出した補正パラメータに基づいて基本噴射量を補正することにより要求噴射量を算出する。本実施形態では、補正パラメータは機械的ばらつき値及び電気的ばらつき値を含んでいる。噴射パルス演算部５１は、要求噴射量に応じた噴射パルス幅Ｔｉを表す信号を生成し、駆動ＩＣ４２に出力する。
【００４０】
駆動ＩＣ４２は、駆動制御部５３と、演算部５４と、を備えている。駆動制御部５３は、噴射パルス幅Ｔｉを表す信号を噴射パルス演算部５１から入力し、噴射パルス幅Ｔｉに基づき生成された噴射パルスにより燃料噴射弁３０を開弁させる。演算部５４は、噴射パルスのオフ後のマイナス端子電圧Ｖｍの挙動に基づいて燃料噴射量の補正量（ずれ量）を算出する手段として、ゼロリフト学習部５５と、リフト学習部５６とを備えている。
【００４１】
ゼロリフト学習部５５は、図８に示すように、Ｔｄｉｆｆ算出部５５Ａと、基準値記憶部５５Ｂと、補正量演算部５５Ｃと、補正量記憶部５５Ｄとを備えている。Ｔｄｉｆｆ算出部５５Ａは、所定のゼロリフト学習実行条件が成立した場合に、燃料噴射弁３０の弁体３４が駆動しない範囲の噴射パルスにより燃料噴射弁３０に通電し、閾値到達時間Ｔｄｉｆｆ＿２を算出する。補正量演算部５５Ｃは、Ｔｄｉｆｆ算出部５５Ａから閾値到達時間Ｔｄｉｆｆ＿２を入力するとともに、基準値記憶部５５Ｂから、基準値（ノミナル値、定数）を取得する。そして、基準値に対する閾値到達時間Ｔｄｉｆｆ＿２のずれ量として電気的ばらつき値Ｑ１を算出する。電気的ばらつき値Ｑ１は、例えば下記式（１）で表される。
Ｑ１＝（閾値到達時間Ｔｄｉｆｆ＿２）／基準値    …（１）
算出した電気的ばらつき値Ｑ１は補正量記憶部５５Ｄに記憶される。
【００４２】
リフト学習部５６は、図８に示すように、Ｔｄｉｆｆ算出部５６Ａと、第１演算部５６Ｂと、推定噴射量算出部５６Ｃと、基準噴射量記憶部５６Ｄと、第２演算部５６Ｅとを備えている。Ｔｄｉｆｆ算出部５６Ａは、所定のリフト学習実行条件が成立した場合に、弁体３４を所定のパーシャルリフト位置まで変位可能な噴射パルスにより燃料噴射弁３０に通電し、閾値到達時間Ｔｄｉｆｆ＿１を算出する。第１演算部５６Ｂは、Ｔｄｉｆｆ算出部５６Ａから閾値到達時間Ｔｄｉｆｆ＿１を入力するとともに、補正量記憶部５５Ｄから電気的ばらつき値Ｑ１を取得する。そして、閾値到達時間Ｔｄｉｆｆ＿１に電気的ばらつき値Ｑ１を乗算して、補正後閾値到達時間Ｔｄｉｆｆ＊Ｑ１を算出する。なお、補正後閾値到達時間Ｔｄｉｆｆ＊Ｑ１は、閾値到達時間Ｔｄｉｆｆ＿１から電気的ばらつき分が取り除かれ、機械的ばらつき分が含まれた、閉弁タイミングに関する情報である。
【００４３】
推定噴射量算出部５６Ｃは、補正後閾値到達時間Ｔｄｉｆｆ＊Ｑ１から推定噴射量Ｒを算出する。ここでは、補正後閾値到達時間Ｔｄｉｆｆ＊Ｑ１に補正係数Ｋを乗算することにより推定噴射量Ｒを算出する。第２演算部５６Ｅは、推定噴射量算出部５６Ｃから推定噴射量Ｒを入力するとともに、基準噴射量記憶部５６Ｄから、基準噴射量（ノミナル値、定数）を取得する。そして、基準噴射量に対する推定噴射量Ｒのずれ量として機械的ばらつき値Ｑ２を算出する。機械的ばらつき値Ｑ２は、例えば下記式（２）で表される。
Ｑ２＝推定噴射量／基準噴射量    …（２）
【００４４】
ＥＣＵ４０のマイコン４１は、駆動ＩＣ４２から入力された電気的ばらつき値Ｑ１及び機械的ばらつき値Ｑ２を、噴射量ばらつきの補正量として記憶部５２に記憶する。マイコン４１は、記憶部５２に記憶された電気的ばらつき値Ｑ１及び機械的ばらつき値Ｑ２を用いて基本噴射量を補正し、その補正された噴射パルスに基づいて燃料噴射弁３０を開弁駆動する。リフト学習部５６が「第１情報取得部」の機能を実現し、ゼロリフト学習部５５が「第２情報取得部」の機能を実現する。また、リフト学習部５６及びゼロリフト学習部５５が「補正量算出部」の機能を実現する。
【００４５】
なお、電気的ばらつき値Ｑ１を算出する際には、ゼロリフト学習用の通電を１回行うことによって閾値到達時間Ｔｄｉｆｆ＿２を取得し、その取得した閾値到達時間Ｔｄｉｆｆ＿２を用いて電気的ばらつき値Ｑ１を算出してもよい。あるいは、ゼロリフト学習用の通電を複数回行うことによって閾値到達時間Ｔｄｉｆｆ＿２を複数個取得し、その平均値から電気的ばらつき値Ｑ１を算出してもよい。また、機械的ばらつき値Ｑ２についても同じく、１回の閾値到達時間Ｔｄｉｆｆ＿１により機械的ばらつき値Ｑ２を算出してもよく、複数回の燃料噴射によって取得した閾値到達時間Ｔｄｉｆｆ＿１の平均値から機械的ばらつき値Ｑ２を算出してもよい。
【００４６】
次に、本実施形態におけるばらつき値算出処理の処理手順について図９のフローチャートを用いて説明する。この処理は、駆動ＩＣ４２により所定周期毎（例えば１燃焼サイクル毎）に実行される。
【００４７】
図９において、ステップＳ１０１では、ゼロリフト学習が完了したか否かを判定する。ゼロリフト学習が未だ完了していない場合には、ステップＳ１０２へ進み、ゼロリフト学習実行条件が成立しているか否かを判定する。
【００４８】
ゼロリフト学習実行条件としては、以下の条件Ｂ１〜Ｂ７が設定されており、これらの条件Ｂ１〜Ｂ７の全てを満たす場合にステップＳ１０２で肯定判定される。
Ｂ１：今回のドライビングサイクルで未だゼロリフト学習が完了していないこと。
Ｂ２：全気筒について、減速時の燃料カット中であること。
Ｂ３：エンジン回転速度が、燃料カット状態から燃焼状態に復帰される所定の復帰回転速度以上であること。
Ｂ４：燃料噴射弁３０から噴射される燃料の圧力（燃圧）が、ゼロリフト学習のための通電による意図しない燃料噴射を回避可能な所定燃圧以上であること。
Ｂ５：バッテリ電圧が、燃料噴射弁３０の作動を担保可能な所定電圧以上であること。
Ｂ６：気筒内圧力が、ゼロリフト学習のための通電による意図しない燃料噴射を回避可能な所定圧力以上であること。
Ｂ７：フェールセーフの実行中でないこと。
【００４９】
ゼロリフト学習実行条件が成立していなければ、そのまま本ルーチンを終了する。一方、ゼロリフト学習実行条件が成立している場合には、ステップＳ１０３へ進み、図１１に示すフローチャートにしたがってゼロリフト学習を実行する。その後、ステップＳ１０４では、ゼロリフト学習によって算出した電気的ばらつき値Ｑ１をマイコン４１に出力し、マイコン４１の記憶部５２に記憶又は更新させる。
【００５０】
ゼロリフト学習が完了している場合には、ステップＳ１０１で肯定判定されてステップＳ１０５へ進む。ステップＳ１０５では、リフト学習実行条件が成立しているか否かを判定する。リフト学習実行条件としては、ゼロリフト学習が完了していること、燃料カット中ではないこと、及び触媒早期暖機中であること、の条件を少なくとも含み、これら全ての条件が成立している場合に肯定判定される。
【００５１】
リフト学習実行条件が成立している場合には、ステップＳ１０６へ進み、リフト学習を実行する。ステップＳ１０７では、リフト学習によって算出した機械的ばらつき値Ｑ２をマイコン４１に出力し、マイコン４１の記憶部５２に記憶又は更新させる。
【００５２】
次に、リフト学習及びゼロリフト学習において閾値到達時間Ｔｄｉｆｆを算出する処理について、図１０のフローチャートを用いて説明する。この処理は、駆動ＩＣ４２により所定周期毎に（例えば数ｍｓｅｃ毎に）実行される。
【００５３】
図１０において、ステップＳ２０１では、燃料噴射弁３０のマイナス端子電圧Ｖｍを取得する。続くステップＳ２０２では、マイナス端子電圧Ｖｍを第１ローパスフィルタでフィルタ処理して第１フィルタ電圧Ｖｓｍ１を算出する。第１ローパスフィルタは、第１フィルタ電圧の前回値Ｖｓｍ１（ｋ−１）とマイナス端子電圧の今回値Ｖｍ（ｋ）とを用いて、第１フィルタ電圧の今回値Ｖｓｍ１（ｋ）を求めるデジタルフィルタであり、下記（３）式で実装されている。
Ｖｓｍ１（ｋ）＝
｛（ｎ１−１）／ｎ１｝×Ｖｓｍ１（ｋ−１）＋（１／ｎ１）×Ｖｍ（ｋ）  …（３）
【００５４】
なお、第１ローパスフィルタの時定数ｎ１は、マイナス端子電圧Ｖｍのサンプリング周波数ｆｓ（＝１／Ｔｓ）と、第１ローパスフィルタのカットオフ周波数（第１周波数ｆ１）とを用いた下記（４）式の関係を満たすように設定されている。
１／ｆｓ：１／ｆ１＝１：（ｎ１−１）    …（４）
【００５５】
続くステップＳ２０３では、マイナス端子電圧Ｖｍを第１周波数ｆ１よりも低い第２周波数ｆ２をカットオフ周波数とする第２ローパスフィルタでフィルタ処理した第２フィルタ電圧Ｖｓｍ２を算出する。第２ローパスフィルタは、第２フィルタ電圧の前回値Ｖｓｍ２（ｋ−１）と、マイナス端子電圧の今回値Ｖｍ（ｋ）とを用いて第２フィルタ電圧の今回値Ｖｓｍ２（ｋ）を求めるデジタルフィルタであり、下記（５）式で実装されている。
Ｖｓｍ２（ｋ)＝
｛（ｎ２−１）／ｎ２｝×Ｖｓｍ２（ｋ−１）＋（１／ｎ２）×Ｖｍ（ｋ）  …（５）
なお、第２ローパスフィルタの時定数ｎ２は、マイナス端子電圧Ｖｍのサンプリング周波数ｆｓ（＝１／Ｔｓ）と、第２ローパスフィルタのカットオフ周波数（第２周波数ｆ２）とを用いた下記（６）式の関係を満たすように設定されている。
１／ｆｓ：１／ｆ２＝１：（ｎ２−１）    …（６）
【００５６】
続くステップＳ２０４では、第１フィルタ電圧Ｖｓｍ１と第２フィルタ電圧Ｖｓｍ２との差分Ｖｄｉｆｆ（＝Ｖｓｍ１−Ｖｓｍ２）を算出する。なお、差分Ｖｄｉｆｆが０以上にならないようにガード処理して、マイナス成分だけを抽出するようにしてもよい。
【００５７】
続くステップＳ２０５では、閾値Ｖｔを取得するとともに、閾値到達時間の前回値Ｔｄｉｆｆ（ｋ−１）を取得する。ステップＳ２０６では、噴射パルスがオフか否かを判定する。ステップＳ２０６で肯定判定された場合には、ステップＳ２０７へ進み、燃料噴射弁３０のマイナス端子電圧Ｖｍが判定値Ｖｏｆｆを下回るタイミング（判定値Ｖｏｆｆよりも大から小になるタイミング）であるか否かを判定する。ステップＳ２０７で肯定判定された場合には、ステップＳ２０９へ進み、電圧変曲点時間の今回値Ｔｄｉｆｆ（ｋ）を「０」にリセットする。
【００５８】
一方、ステップＳ２０７で否定判定された場合には、ステップＳ２０８へ進み、第１フィルタ電圧Ｖｓｍ１と第２フィルタ電圧Ｖｓｍ２との差分Ｖｄｉｆｆが閾値Ｖｔを超えたか否か（閾値Ｖｔよりも小から大になったか否か）を判定する。ステップＳ２０８で否定判定された場合には、ステップＳ２１０へ進み、閾値到達時間の前回値Ｔｄｉｆｆ（ｋ−１）に所定値Ｔｓ（本ルーチンの演算周期）を加算して閾値到達時間の今回値Ｔｄｉｆｆ（ｋ）を求めることで、閾値到達時間Ｔｄｉｆｆをカウントアップする。
【００５９】
一方、ステップＳ２０８で、差分Ｖｄｉｆｆが閾値Ｖｔを超えたと判定されるとステップＳ２１１へ進み、閾値到達時間の今回値Ｔｄｉｆｆ（ｋ）を前回値Ｔｄｉｆｆ（ｋ−１）に保持する。これにより、噴射パルスのオフ後に燃料噴射弁３０のマイナス端子電圧Ｖｍが判定値Ｖｏｆｆを下回るタイミング（基準タイミング）から、差分Ｖｄｉｆｆが閾値Ｖｔを超えるタイミングまでの時間を閾値到達時間Ｔｄｉｆｆとして算出する。
【００６０】
なお、ステップＳ２０６で噴射パルスがオフではない（つまり、噴射パルスがオンである）と判定された場合には、今回値Ｔｄｉｆｆ（ｋ）を前回値Ｔｄｉｆｆ（ｋ−１）で保持し、閾値到達時間Ｔｄｉｆｆの算出値を次の基準タイミングまで保持する。
【００６１】
次に、ゼロリフト学習の処理手順について、図１１のフローチャートを用いて説明する。この処理は、駆動ＩＣ４２により所定の演算周期で（例えば、噴射更新タイミング毎に）実行される。
【００６２】
図１１において、ステップＳ３０１では、ゼロリフト学習実行条件（Ｂ１〜Ｂ７）が成立しているか否かを判定する。ゼロリフト学習実行条件が成立していれば、ステップＳ３０２へ進み、実行条件成立フラグをセットするとともに、ゼロリフト学習用の噴射モードに設定する。具体的には、各気筒における燃料噴射を吸気行程１回に設定する。また、噴射タイミングをゼロリフト学習用の所定時期に設定するとともに、噴射時間をゼロリフト学習用の所定時間Ｄｏｆｆに設定する。所定時間Ｄｏｆｆは、燃料噴射弁３０の弁体３４が駆動しない通電パルス幅に対応する値に設定されている（図６（ｂ）参照）。
【００６３】
ステップＳ３０３では、ゼロリフト学習カウンタをカウントアップする。続くステップＳ３０４では、ゼロリフト学習カウンタが第１判定値ＴＨ１よりも大きいか否かを判定する。ゼロリフト学習カウンタが第１判定値ＴＨ１以下であれば一旦本ルーチンを終了する。一方、ゼロリフト学習カウンタが第１判定値ＴＨ１よりも大きい場合には、ステップＳ３０５へ進み、インジェクタ駆動電流をゼロリフト学習用の所定電流値Ａｏｆｆに設定するとともに、燃料カット中の燃料噴射弁３０の駆動を許可する。ここで、所定電流値Ａｏｆｆは、燃料噴射弁３０の弁体３４が駆動しない電流値である。所定電流値Ａｏｆｆは、エンジン運転状態（例えば燃圧等）に応じて可変に設定されてもよく、固定値であってもよい。
【００６４】
続くステップＳ３０６では、ゼロリフト学習カウンタが第２判定値ＴＨ２よりも大きいか否かを判定する。ゼロリフト学習カウンタが判定値ＴＨ２よりも大きいことを条件にステップＳ３０７へ進む。ステップＳ３０７では、ゼロリフト学習用値（本実施形態では、閾値到達時間Ｔｄｉｆｆ＿２）の検出を許可する。また、ステップＳ３０８では、閾値到達時間Ｔｄｉｆｆ＿２に基づいて電気的ばらつき値Ｑ１を算出する。
【００６５】
ゼロリフト学習実行条件が成立していない場合には、ステップＳ３０９へ進み、噴射モードを通常モードに設定する。また、ステップＳ３１０では、ゼロリフト学習カウンタをリセットするとともに、ゼロリフト学習用値の検出を禁止する。その後本ルーチンを終了する。
【００６６】
図１１のフローチャートによれば、ＥＣＵ４０は、噴射モードを、通常時の燃料噴射態様である通常モードから、燃料噴射弁３０の弁体３４が駆動しない範囲で通電して閾値到達時間Ｔｄｉｆｆを取得するゼロリフト学習モードに切り替える場合には、ゼロリフト学習実行条件が成立しても直ちにゼロリフト学習モードに切り替えず、所定のディレイ時間が経過した後にゼロリフト学習モードに切り替える。一方、ゼロリフト学習モードから通常モードに切り替える場合には、ゼロリフト学習実行条件が不成立になったことに伴い、直ちに通常モードに切り替える。この制御について、図１２及び図１３のタイムチャートを用いて説明する。なお、図１２及び図１３中の黒塗り三角印は、噴射更新タイミングを表している。
【００６７】
まず、通常モードからゼロリフト学習モードへの切替時について、図１２を用いて説明する。図１２において、時刻ｔ１１で燃料カットが開始され、その後の噴射更新タイミングの時刻ｔ１２で、ゼロリフト学習実行条件が成立した場合を考える。この場合、時刻ｔ１２では、噴射タイミングをゼロリフト学習用の所定時期に設定するとともに、噴射時間をゼロリフト学習用の所定時間に設定する。また、ゼロリフト学習カウンタを１だけカウントアップする。
【００６８】
噴射更新タイミング毎にゼロリフト学習カウンタをカウントアップしていき、ゼロリフト学習カウンタが第１判定値ＴＨ１（図１２では「２」）を超えると、その時刻ｔ１４で燃料カット中の燃料噴射弁３０の駆動を許可するとともに、インジェクタ駆動電流をゼロリフト学習用の所定電流値Ａｏｆｆに設定する。これにより、各燃料噴射弁３０に対し、ゼロリフト学習用の所定時期で、弁体３４が駆動しない範囲の所定電流値Ａｏｆｆの通電が行われる。図１２では、ゼロリフト学習実行条件の成立後において、まず、第２気筒♯２の燃料噴射弁３０に対して、第２気筒♯２の吸気行程でゼロリフト学習用の通電が行われ、続いて、第１気筒♯１の燃料噴射弁３０に対して、第１気筒♯１の吸気行程でゼロリフト学習用の通電が行われる。また、ゼロリフト学習カウンタが第２判定値ＴＨ２（図１２では「４」）を超えると、その後の噴射更新タイミングの時刻ｔ１６で、ゼロリフト学習用値の取得が許可されて、電気的ばらつき値Ｑ１が算出される。
【００６９】
次に、ゼロリフト学習モードから通常モードへ切り替える場合について、図１３を用いて説明する。図１３において、時刻ｔ２１で燃料カットが終了されると、その直後の噴射更新タイミングの時刻ｔ２２でゼロリフト学習実行条件が不成立と判定されたことに伴い、噴射タイミング及び噴射時間が通常モードの値に切り替えられる。また、ゼロリフト学習カウンタがゼロにリセットされるとともに、インジェクタ駆動電流が通常モードの値に切り替えられる。
【００７０】
以上詳述した本実施形態によれば、次の優れた効果が得られる。
【００７１】
パーシャルリフト噴射の通電オフ後のマイナス端子電圧Ｖｍに基づき算出した閾値到達時間Ｔｄｉｆｆ＿１は、燃料噴射弁３０のリフト挙動に起因する噴射量ばらつき（機械的ばらつき）と、ＥＣＵ４０の回路素子に起因する噴射量ばらつき（電気的ばらつき）とを含む。一方、弁体３４が駆動しない範囲の通電パルスのオフ後のマイナス端子電圧Ｖｍに基づき算出した閾値到達時間Ｔｄｉｆｆ＿２は、弁体３４が駆動していない状態で取得した情報であるため、機械的ばらつきを含まず、電気的ばらつきを含む。したがって、閾値到達時間Ｔｄｉｆｆ＿１及び閾値到達時間Ｔｄｉｆｆ＿２によれば、機械的ばらつきに起因する噴射量のずれ量と、電気的ばらつきに起因する噴射量のずれ量とを切り分けることができる。したがって、燃料噴射弁３０及びＥＣＵ４０のそれぞれの噴射量ばらつきを正確に把握でき、正確な噴射量補正を行うことができる。
【００７２】
ゼロリフト学習を実行する条件として、車両減速時の燃料カット中であることとしたため、ゼロリフト学習のために燃料カットを実施する必要がない。また、燃料カットの実施期間のうち車両減速中であることを条件としていることから、ゼロリフト学習用の通電によって燃料噴射弁３０から燃料が噴射されたとしても、ドライバビリティに与える影響が少なくすることができる。
【００７３】
燃料噴射弁３０から噴射される燃料圧力が、ゼロリフト学習のための通電による意図しない燃料噴射を回避可能な所定燃圧以上であることを条件にゼロリフト学習を実行する構成としたため、背圧が十分に高く弁体３４が開弁しにくい状況下で学習を実行することができる。これにより、燃料噴射弁３０の通電によって燃料が実際に噴射されないようにすることができる。
【００７４】
（他の実施形態）
本発明は上記実施形態の内容に限定されず、例えば次のように実施されてもよい。
【００７５】
・上記実施形態では、リフト学習により算出した閾値到達時間Ｔｄｉｆｆ＿１を電気的ばらつき値Ｑ１によって補正し、補正後閾値到達時間Ｔｄｉｆｆ＊Ｑ１から推定噴射量Ｒを算出して機械的ばらつき値Ｑ２を算出したが、閾値到達時間Ｔｄｉｆｆ＿１から推定噴射量を算出した後に、推定噴射量を電気的ばらつき値Ｑ１によって補正することにより機械的ばらつき値Ｑ２を算出してもよい。
【００７６】
・上記実施形態では、車両減速時の燃料カット中にゼロリフト学習を実行したが、車両の運転状態が、燃料噴射弁３０を駆動しない運転状態であればよい。例えば、イグニッションオン後、エンジンが始動される前にゼロリフト学習を実施してもよい。また、車両停止中の燃料カット中にゼロリフト学習を実施するようにしてもよい。
【００７７】
・上記実施形態では、リフト学習をパーシャルリフト噴射において実施したが、フルリフト噴射において実施する構成としてもよい。
【００７８】
・上記の各構成要素は概念的なものであり、上記実施形態に限定されない。例えば、一つの構成要素が有する機能を複数の構成要素に分散して実現したり、複数の構成要素が有する機能を一つの構成要素で実現したりしてもよい。
【符号の説明】
【００７９】
１１…エンジン（内燃機関）、３０…燃料噴射弁、３４…弁体、４０…ＥＣＵ（第１情報取得部、第２情報取得部、噴射量補正部）、４１…マイコン（制御部）、４２…駆動ＩＣ（制御部）。
【図１】
2019019740.tif 000003
【図２】
2019019740.tif 000004
【図３】
2019019740.tif 000005
【図４】
2019019740.tif 000006
【図５】
2019019740.tif 000007
【図６】
2019019740.tif 000008
【図７】
2019019740.tif 000009
【図８】
2019019740.tif 000010
【図９】
2019019740.tif 000011
【図１０】
2019019740.tif 000012
【図１１】
2019019740.tif 000013
【図１２】
2019019740.tif 000014
【図１３】
2019019740.tif 000015