(57)【特許請求の範囲】
【請求項１】
電磁弁のコイルに供給する電気エネルギーが蓄積されるコンデンサと、
直流電源の直流電圧をその直流電圧よりも高い高電圧に昇圧し、その昇圧した高電圧によって前記コンデンサを充電する充電手段と、
前記コンデンサから前記コイルへの通電経路を導通・遮断するためにその通電経路に設けられたスイッチ手段と、
前記コンデンサから前記コイルへの放電開始タイミングを設定する放電開始タイミング設定手段と、
前記コンデンサから前記コイルへ放電される放電電流を検出する電流検出手段と、
前記放電開始タイミング設定手段により設定された前記放電開始タイミングが到来した時に、前記スイッチ手段をオンさせて前記通電経路を導通させることにより前記コンデンサから前記コイルへの放電を開始させ、その放電開始後、前記電流検出手段により検出された放電電流が予め設定された放電電流検出閾値以上となった場合に、前記スイッチ手段をオフさせて前記通電経路を遮断させることにより前記放電を停止させるスイッチ制御手段と、
を備え、前記コンデンサから前記コイルへの放電によって前記電磁弁を作動させるように構成された電磁弁駆動装置において、
前記放電開始タイミングで前記スイッチ制御手段により前記コンデンサから前記コイルへの放電が開始されてから該スイッチ制御手段によりその放電が停止されるまでの放電期間に前記コンデンサから前記コイルへ放出されたエネルギーである実放出エネルギーを、その放電期間終了後に算出する実放出エネルギー算出手段と、
前記実放出エネルギー算出手段により算出された前記実放出エネルギーと、予め設定された基準エネルギーとの差に基づき、次回以降の前記放電の際に前記実放出エネルギーが前記基準エネルギーに一致するように、当該電磁弁駆動装置において前記実放出エネルギーを決定付ける物理量を設定する物理量設定手段と、
を備えていることを特徴とする電磁弁駆動装置。
【請求項２】
請求項１に記載の電磁弁駆動装置であって、
前記物理量設定手段は、前記物理量として前記充電手段における目標電圧を設定するよう構成されており、
前記充電手段は、前記物理量設定手段により設定された前記目標電圧に基づき、前記コンデンサの充電電圧がその目標電圧となるように充電を行う
ことを特徴とする電磁弁駆動装置。
【請求項３】
請求項１又は請求項２に記載の電磁弁駆動装置であって、
前記放電期間の開始前の所定の検出タイミングにて前記コンデンサの充電電圧を検出する充電電圧検出手段と、
前記放電期間中に前記コンデンサから前記コイルへ放出された電荷を検出する放出電荷検出手段と、
を備え、
前記実放出エネルギー算出手段は、前記充電電圧検出手段により検出された充電電圧と前記放出電荷検出手段により検出された電荷に基づいて前記実放出エネルギーを算出する
ことを特徴とする電磁弁駆動装置。
【請求項４】
請求項３に記載の電磁弁駆動装置であって、
前記スイッチ手段のオン後、所定の判定タイミングにて、前記放出電荷検出手段により検出された電荷を取得する電荷取得手段と、
前記電荷取得手段により取得された電荷が予め設定された異常判定電荷閾値以上であるか否か判断し、前記異常判定電荷閾値以上ではない場合に当該電磁弁駆動装置が異常である旨の判定を行う第１の異常判定手段と、
を備えていることを特徴とする電磁弁駆動装置。
【請求項５】
請求項１〜請求項４の何れか１項に記載の電磁弁駆動装置であって、
前記放電期間の開始前の所定の第１検出タイミングにて前記コンデンサの充電電圧を検出する第１検出手段と、
前記放電期間の終了後の所定の第２検出タイミングにて前記コンデンサの充電電圧を検出する第２検出手段と、
前記第１検出手段により検出された充電電圧と前記第２検出手段により検出された充電電圧との差が予め設定された異常判定電圧閾値以上であるか否か判断し、前記異常判定電圧閾値以上ではない場合に当該電磁弁駆動装置が異常である旨の判定を行う第２の異常判定手段と、
を備えていることを特徴とする電磁弁駆動装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電磁弁を駆動する装置に関し、特に、電源電圧よりも高電圧の電気エネルギーを電磁弁のコイルに放電して、その電磁弁の作動応答性を向上させるようにした装置に関する。
【背景技術】
【０００２】
従来、例えば車両に搭載された内燃機関の各気筒にそれぞれ燃料を噴射供給するインジェクタ（燃料噴射弁）としては、コイル（電磁ソレノイド）への通電により開弁する電磁弁が使用されている。そして、このようなインジェクタを駆動して燃料噴射を制御する燃料噴射制御装置は、コイルへの通電（通電開始タイミング及び通電時間）を制御することにより、内燃機関への燃料噴射時期及び燃料噴射量を制御している。
【０００３】
また、こうした燃料噴射制御装置としては、インジェクタの開弁応答を早めるために、ＤＣ−ＤＣコンバータ等の昇圧回路により直流電源電圧を昇圧して放電用コンデンサを充電すると共に、コイルに通電すべき駆動期間の開始時には、その放電用コンデンサに蓄積しておいた高電圧のエネルギー（電気エネルギー）をインジェクタのコイルに放電して規定の大電流（いわゆるピーク電流）を流すことにより、そのインジェクタを速やかに開弁状態へ移行させ、その後は、駆動期間が終了するまで、コイルに一定電流（いわゆる保持電流）を流して、インジェクタを開弁状態に保持するようにしたものが知られている（例えば、特許文献１参照。）。
【０００４】
駆動期間の開始時にインジェクタを開弁させるためには、放電用コンデンサから所定のエネルギーをコイルへ放電する必要があるが、特許文献１に記載されている技術では、放電開始後のコイルに流れる電流（以下「駆動電流」とも言う）が所定の閾値Ｉｏに達したことをもって所定のエネルギーを放電できたものと判断するようにしている。
【０００５】
より具体的には、放電用コンデンサからコイルへの通電経路に、この通電経路を導通・遮断するためのスイッチとしてのトランジスタを設けると共に、この通電経路を流れる電流を検出するための電流検出抵抗を設ける。そして、トランジスタのオンにより放電用コンデンサからの放電を開始し、その後、電流検出抵抗による駆動電流の検出値が閾値Ｉｏに達したら、トランジスタを再びオフする。
【０００６】
そして、トランジスタのオフ後（放電終了後）は、昇圧回路を動作させて放電用コンデンサを所望の電圧まで充電させることにより、次の駆動（放電）に備える。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特許第３５７３００１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかし、インジェクタのコイルのインダクタンスには、コイルの温度や個体差等に起因してばらつきが生じる。周知の通り、コイルに流れる電流は印加電圧やインダクタンスに依存する。そのため、インダクタンスが温度や個体差等によってばらつくと、放電用コンデンサからの放電開始から閾値Ｉｏに到達するまでの駆動電流の増加率（傾き）もばらつきが生じる。駆動電流の増加率がばらつくということは、即ち、放電用コンデンサからコイルへ供給（放出）されるエネルギーが開弁に必要な値に到達するまでの時間がばらつくことを意味するため、結果としてインジェクタの開弁タイミングにばらつきが生じてしまう。
【０００９】
この開弁タイミングのばらつきについて、図５を用いてより具体的に説明する。図５（ａ）は、インジェクタ駆動時にコイルに流れる電流の一例を示すものであって、ケースＡ〜ケースＣの三種類のケースを示している。いずれのケースにおいても、時刻ｔ０の駆動開始時に放電用コンデンサからコイルへの放電が開始され、これによりコイルに流れる駆動電流は急上昇していく。そして、その駆動電流が所定の放電電流検出閾値Ｉｏに到達したら、放電用コンデンサからの放電は停止され、その後駆動期間が終了するまでは保持電流が流れる。
【００１０】
例えばケースＢの場合、時刻ｔ３にて駆動電流が放電電流検出閾値Ｉｏに達するため、時刻ｔ０〜ｔ３の間に放電用コンデンサからの放電が行われることになる。そして、図５（ｂ）に示すように、放電電流検出閾値Ｉｏに到達するよりも所定時間前の時刻ｔ２で、放電用コンデンサから放出されたエネルギーがちょうどインジェクタの開弁に最低限必要なエネルギーＥｏとなり、よって、図５（ｃ）に示すようにこの時刻ｔ２にてインジェクタが開弁する。
【００１１】
一方、コイルのインダクタンスには、上述したように温度ばらつきや個体ばらつきなどがあり、例えばコイルの温度が高いほどそのインダクタンスも大きくなる。そのため、インダクタンスが大きくなればなるほど、駆動電流の増加率が小さくなって、放電用コンデンサからコイルへ放出されるエネルギーが開弁に最低限必要なエネルギーＥｏに達するまでの時間も長くなる。
【００１２】
図５において、ケースＣは、ケースＢよりも高温であること等によってコイルのインダクタンスが大きく、駆動電流の増加率がケースＢよりも小さくなって、放出エネルギーがＥｏに到達するタイミング（即ち開弁タイミング）がケースＢの時刻ｔ２よりも遅い時刻ｔ３となる場合を示している。逆に、ケースＡは、ケースＢよりもコイルのインダクタンスが小さく、よって、駆動電流の増加率がケースＢよりも大きくなって、放出エネルギーがＥｏに到達するタイミング（開弁タイミング）がケースＢの時刻ｔ２よりも早い時刻ｔ１となる場合を示している。
【００１３】
このように、コイルのインダクタンスが温度ばらつきや個体ばらつき等によってばらつくと、放電開始から放電電流検出閾値Ｉｏに到達するまでの駆動電流の増加率がばらつき、これにより放出エネルギーがＥｏに到達するタイミングもばらついて、よってインジェクタの開弁タイミングもばらついてしまうのである。そして、インダクタンスのばらつきが大きいほど、開弁タイミングのばらつきも大きくなってしまう。
【００１４】
本発明は上記課題に鑑みなされたものであり、電磁弁駆動装置において、電磁弁のコイルのインダクタンスに温度ばらつきや個体ばらつきなどがあっても、そのばらつきの影響を受けることなく一定の開弁タイミングで開弁できるようにすることを目的とする。
【課題を解決するための手段】
【００１５】
上記課題を解決するためになされた請求項１に記載の発明は、電磁弁のコイルに供給する電気エネルギーが蓄積されるコンデンサと、直流電源の直流電圧をその直流電圧よりも高い高電圧に昇圧し、その昇圧した高電圧によってコンデンサを充電する充電手段と、コンデンサからコイルへの通電経路を導通・遮断するためにその通電経路に設けられたスイッチ手段と、コンデンサからコイルへの放電開始タイミングを設定する放電開始タイミング設定手段と、コンデンサからコイルへ放電される放電電流を検出する電流検出手段と、放電開始タイミング設定手段により設定された放電開始タイミングが到来した時に、スイッチ手段をオンさせて通電経路を導通させることによりコンデンサからコイルへの放電を開始させ、その放電開始後、電流検出手段により検出された放電電流が予め設定された放電電流検出閾値以上となった場合に、スイッチ手段をオフさせて通電経路を遮断させることにより放電を停止させるスイッチ制御手段と、を備え、記コンデンサからコイルへの放電によって電磁弁を作動させるように構成された電磁弁駆動装置であり、更に、実放出エネルギー算出手段と、物理量設定手段とを備えている。
【００１６】
実放出エネルギー算出手段は、放電開始タイミングでスイッチ制御手段によりコンデンサからコイルへの放電が開始されてから該スイッチ制御手段によりその放電が停止されるまでの放電期間にコンデンサからコイルへ放出されたエネルギーである実放出エネルギーを、その放電期間終了後に算出する。
【００１７】
そして、物理量設定手段は、実放出エネルギー算出手段により算出された実放出エネルギーと、予め設定された基準エネルギーとの差に基づき、次回以降の前記放電の際に実放出エネルギーが基準エネルギーに一致するように、当該電磁弁駆動装置において実放出エネルギーを決定付ける物理量を設定する。
【００１８】
実放出エネルギーを決定づける物理量とは、当該電磁弁駆動装置において、その物理量が変動すると実放出エネルギーも変動するようなものであり、例えば、コンデンサからコイルへの通電を行うためのこれらコンデンサ及びコイルを含む放電回路における各種物理量（放電開始前のコンデンサの充電電圧や、コンデンサからみたコイル側（負荷側）のインピーダンスなど）が挙げられる。
【００１９】
このように構成された本発明の電磁弁駆動装置では、コンデンサからコイルへ放出すべきエネルギーを一定にすべく、そのエネルギーの基準となる基準エネルギーが設定されている。そして、放電期間中に実際に放出された実放出エネルギーがその基準エネルギーと一致しなければ、次回以降の放電では実放出エネルギーが基準エネルギーに一致するように、上記物理量を設定する。
【００２０】
そのため、コイルのインダクタンスに温度や個体差等によるばらつきが生じたとしても、実放出エネルギーと基準エネルギーとの差に基づいて上記物理量が設定されることで、そのインダクタンスのばらつきにかかわらず実放出エネルギーを基準エネルギーに一致させることができるため、そのばらつきの影響を受けることなく一定の開弁タイミングで開弁させることができる。
【００２１】
物理量設定手段による設定対象の物理量としては、上述したように種々考えられるが、例えば請求項２に記載のように、充電手段における目標電圧とするとよい。即ち、物理量設定手段は、物理量として充電手段における目標電圧を設定するよう構成されている。より具体的には、実放出エネルギーと基準エネルギーとが一致するよう、実放出エネルギーに応じて目標電圧を設定するのである。そして、充電手段は、物理量設定手段により設定された目標電圧に基づき、コンデンサの充電電圧がその目標電圧となるように充電を行う。
【００２２】
充電すべき目標電圧の設定は、例えばインピーダンス変換回路等を設けること等によってコンデンサからみたインピーダンスを設定変更すること等に比べて、比較的簡素な構成或いは簡素な処理によって実現することができる。
【００２３】
また、実放出エネルギー算出手段による実放出エネルギーの具体的算出方法も種々考えられ、例えば請求項３に記載の構成により実現することができる。即ち、放電期間の開始前の所定の検出タイミングにてコンデンサの充電電圧を検出する充電電圧検出手段と、放電期間中にコンデンサからコイルへ放出された電荷を検出する放出電荷検出手段と、を備えるようにし、実放出エネルギー算出手段は、充電電圧検出手段により検出された充電電圧と放出電荷検出手段により検出された電荷に基づいて実放出エネルギーを算出する。放出電荷検出手段は、例えば、放電電流を検出してそれを積分すること等によって容易に実現することができる。そのため、実放出エネルギーの算出を容易且つ確実に行うことができる。
【００２４】
また、上記のように放出電荷検出手段を備えている場合には、それを利用して更に請求項４に記載のように異常判定機能を持たせることができる。即ち、請求項４に記載の電磁弁駆動装置は、スイッチ手段のオン後、所定の判定タイミングにて、放出電荷検出手段により検出された電荷を取得する電荷取得手段と、この電荷取得手段により取得された電荷が予め設定された異常判定電荷閾値以上であるか否か判断し、異常判定電荷閾値以上ではない場合に当該電磁弁駆動装置が異常である旨の判定を行う第１の異常判定手段と、を備えたものである。
【００２５】
コンデンサからコイルへの通電経路が正常であれば、スイッチ手段のオン後は、放出電荷検出手段によって電荷が検出されるはずであるが、仮にその通電経路に断線やショート等の何らかの異常が生じてコンデンサからコイルへ正常に電流が流れない状態になっていたとすると、スイッチ手段のオン後も放出電荷検出手段によって電荷が正常に検出されなくなる。
【００２６】
そこで、スイッチ手段のオン後、所定の判定タイミングで、放出電荷検出手段による検出電荷が異常判定電荷閾値以上であるか否かを判断することで、通電経路が正常か否かの判定を行うことができる。つまり、実放出エネルギーを算出するために設けられた放出電荷検出手段による検出結果を、スイッチ手段のオフタイミングの設定のためだけでなく、通電経路の異常診断にも併用することができる。
【００２７】
また、上記各構成の電磁弁駆動装置は、更に、請求項５に記載のような異常判定機能を持たせるようにしてもよい。即ち、請求項５に記載の電磁弁駆動装置は、放電期間の開始前の所定の第１検出タイミングにてコンデンサの充電電圧を検出する第１検出手段と、放電期間の終了後の所定の第２検出タイミングにてコンデンサの充電電圧を検出する第２検出手段と、第１検出手段により検出された充電電圧と第２検出手段により検出された充電電圧との差が予め設定された異常判定電圧閾値以上であるか否か判断し、異常判定電圧閾値以上ではない場合に当該電磁弁駆動装置が異常である旨の判定を行う第２の異常判定手段と、を備えたものである。
【００２８】
コンデンサからコイルへの通電経路が正常であれば、放電期間の前後で多少なりとも充電電圧に差が生じているはずであるが、仮にその通電経路に断線やショート等の何らかの異常が生じてコンデンサからコイルへ正常に電流が流れない状態になっていたとすると、放電期間の前後で充電電圧に差が生じないか或いはその差が正常時よりも小さくなる。
【００２９】
そこで、放電期間前後の充電電圧の差が異常判定電圧閾値以上であるか否かを判断することで、通電経路が正常か否かの判定を行うことができ、より付加価値の高い電磁弁駆動装置を提供することができる。
【図面の簡単な説明】
【００３０】
【図１】実施形態のＥＣＵ（燃料噴射制御装置）の構成を表す構成図である。
【図２】マイコン及び駆動用ＩＣの動作を説明するためのタイムチャートである。
【図３】目標ＤＣ−ＤＣ電圧設定処理を表すフローチャートである。
【図４】異常判定処理を表すフローチャートである。
【図５】電磁弁のコイルのインダクタンスばらつきに起因して生じる問題（開弁タイミングのばらつき）を説明するための説明図である。
【発明を実施するための形態】
【００３１】
以下に、本発明の好適な実施形態を図面に基づいて説明する。
まず図１は、本実施形態の燃料噴射制御装置（以下、ＥＣＵという）の構成を表す構成図である。
【００３２】
図１に示すように、本実施形態のＥＣＵ１００は、車両に搭載された多気筒（この例では４気筒）エンジンの各気筒♯１〜♯４に燃料を噴射供給する４個のインジェクタ（電磁弁）１０１，１０２，１０３，１０４を駆動するものであり、詳しくは、その各インジェクタ１０１〜１０４のコイル１０１ａ，１０２ａ，１０３ａ，１０４ａへの通電開始タイミング及び通電時間を制御することにより、各気筒♯１〜♯４への燃料噴射時期及び燃料噴射量を制御する。
【００３３】
尚、本実施形態のエンジンはディーゼルエンジンであって、高圧燃料をコモンレール（蓄圧室）に蓄圧してこれを各インジェクタから各気筒に噴射するよう構成された、いわゆるコモンレールシステムが構築されており、このコモンレールシステムがＥＣＵ１００によって制御される。コモンレールシステムはよく知られているため、ここではその詳細についての説明及び図示は省略する。
【００３４】
また、各インジェクタ１０１〜１０４は、常閉式の電磁弁により構成されており、コイル１０１ａ〜１０４ａに通電されると開弁して燃料噴射を行う。また、コイル１０１ａ〜１０４ａへの通電が遮断されると閉弁して燃料噴射を停止する。
【００３５】
ここで、本実施形態では、全４気筒分のインジェクタ１０１〜１０４を２気筒ずつ２つのグループに分け、気筒♯１，♯３の各インジェクタ１０１，１０３を第１グループとして、それらのコイル１０１ａ，１０３ａの上流側の一端をＥＣＵ１００の第１コモン端子ＣＯＭ１に接続し、気筒♯２，♯４の各インジェクタ１０２，１０４を第２グループとして、それらのコイル１０２ａ，１０４ａの上流側の一端をＥＣＵ１００の第２コモン端子ＣＯＭ２に接続している。尚、各グループは、同時に駆動されることがないインジェクタ同士で構成している。
【００３６】
各コイル１０１ａ〜１０４ａの下流側の端部は、ＥＣＵ１００の端子ＩＮＪ１，ＩＮＪ２，ＩＮＪ３，ＩＮＪ４を介して気筒選択用のトランジスタ（以下「気筒選択トランジスタ」という）Ｔ１０，Ｔ２０，Ｔ３０，Ｔ４０の一方の出力端子にそれぞれ接続されている。そして、それら各気筒選択トランジスタＴ１０〜Ｔ４０の他方の出力端子は、インジェクタの各グループ毎に電流検出抵抗Ｒ１０，Ｒ２０を介してグランドラインに接続（接地）されている。
【００３７】
このため、気筒♯１，♯３に対応した各気筒選択トランジスタＴ１０，Ｔ３０を介してインジェクタ１０１，１０３のコイル１０１ａ，１０３ａに流れる電流が、電流検出抵抗Ｒ１０に生じる電圧として検出され、気筒♯２，♯４に対応した各気筒選択トランジスタＴ２０，Ｔ４０を介してインジェクタ１０２，１０４のコイル１０２ａ，１０４ａに流れる電流が、電流検出抵抗Ｒ２０に生じる電圧として検出される。尚、この例において、ＥＣＵ１００内にスイッチング素子として設けられているトランジスタは、全てＭＯＳＦＥＴである。
【００３８】
また、ＥＣＵ１００には、上記各気筒選択トランジスタＴ１０〜Ｔ４０及び各電流検出抵抗Ｒ１０，Ｒ２０に加えて、定電流制御用のトランジスタ（以下「定電流トランジスタ」という）Ｔ１１，Ｔ２１と、放電用のトランジスタ（以下「放電用トランジスタ」という）Ｔ１２，Ｔ２２と、４つのダイオードＤ１１，Ｄ１２，Ｄ２１，Ｄ２２と、２つのコンデンサ（放電用コンデンサ）Ｃ１０，Ｃ２０と、直流電源としての車載バッテリ１０の直流電圧（バッテリ電圧）ＶＢ（本例では例えば１２Ｖ）を昇圧して、そのバッテリ電圧ＶＢよりも高い電圧を生成して各コンデンサＣ１０，Ｃ２０を充電する昇圧回路（ＤＣ−ＤＣコンバータ）５０と、各コンデンサＣ１０，Ｃ２０の充電電圧を検出する電圧検出回路７０と、上記各トランジスタ及び昇圧回路５０を制御する制御回路が搭載された駆動用ＩＣ１２０と、ＣＰＵ、ＲＯＭ、ＲＡＭなどからなる周知のマイコン（マイクロコンピュータ）１３０とが備えられている。尚、マイコン１３０は、その内部にＡＤ変換器（アナログ−デジタル変換器）２０を備えている。
【００３９】
マイコン１３０は、エンジン回転数Ｎｅ、アクセル開度ＡＣＣ、エンジン水温ＴＨＷ、コモンレール内の燃料の圧力であるレール圧Ｐｒなど、各種センサにて検出されるエンジンの運転情報に基づいて、各気筒♯１〜♯４毎の駆動信号ＩＪＴ１〜ＩＪＴ４を生成して駆動用ＩＣ１２０に出力する。この駆動信号ＩＪＴ１〜ＩＪＴ４は、その信号のレベルがハイレベル（Ｈレベル）の間だけインジェクタ１０１〜１０４のコイル１０１ａ〜１０４ａに通電する（つまり、インジェクタ１０１〜１０４を開弁させる）、という意味を持っている。
【００４０】
そして、駆動用ＩＣ１２０は、マイコン１３０からの各駆動信号ＩＪＴ１〜ＩＪＴ４に基づき、各気筒選択トランジスタＴ１０〜Ｔ４０のゲートへ、対応する駆動信号と同じ論理レベルの気筒選択信号ＴＱ１〜ＴＱ４を出力する。例えば、気筒♯１に対応した駆動信号ＩＪＴ１がローレベル（Ｌレベル）の間は、駆動用ＩＣ１２０は対応する気筒選択トランジスタＴ１０へＬレベルの気筒選択信号ＴＱ１を出力してこの気筒選択トランジスタＴ１０をオフさせ、逆にその駆動信号ＩＪＴ１がＨレベルの間は、駆動用ＩＣ１２０は対応する気筒選択トランジスタＴ１０へＨレベルの気筒選択信号ＴＱ１を出力してこの気筒選択トランジスタＴ１０をオンさせる。
【００４１】
また、駆動用ＩＣ１２０は、マイコン１３０へ、各グループ毎に個別に、放出電荷モニタ電圧Ｖｍ（アナログ値）及び放電停止タイミング信号Ｐｓを出力するが、これら放出電荷モニタ電圧Ｖｍ及び放電停止タイミング信号Ｐｓの詳細については後で詳述する。
【００４２】
尚、図１では、マイコン１３０と駆動用ＩＣ１２０との間で入出力される各種信号等について、第１グループに対応した４種類の信号等（ＩＪＴ１，ＩＪＴ３，Ｖｍ，Ｐｓ）のみ図示しているが、第２グループについても、具体的な図示は省略したものの、第１グループと同様に上記４種類の信号等が入出力される。
【００４３】
一方、昇圧回路５０は、インダクタＬ００と、充電用のトランジスタ（以下「充電用トランジスタ」という）Ｔ００と、この充電用トランジスタＴ００を駆動する充電制御回路１１０とを備えている。インダクタＬ００は、一端がバッテリ電圧ＶＢの供給される電源ラインＬｐに接続され、他端が充電用トランジスタＴ００の一方の出力端子（ドレイン）に接続されている。また、充電用トランジスタＴ００の他方の出力端子（ソース）とグランドラインとの間には、電流検出用の抵抗Ｒ００が接続されている。そして、充電用トランジスタＴ００のゲート端子には充電制御回路１１０が接続され、この充電制御回路１１０の出力に応じて充電用トランジスタＴ００がオン／オフされる。
【００４４】
更に、インダクタＬ００と充電用トランジスタＴ００との接続点に、逆流防止用の第１のダイオードＤ１３を介して第１のコンデンサＣ１０の一端（正極側端子）が接続され、同じくその接続点に、逆流防止用の第２のダイオードＤ２３を介して第２のコンデンサＣ２０の一端（正極側端子）が接続されている。そして、各コンデンサＣ１０，Ｃ２０の他端（負極側端子）は、充電用トランジスタＴ００のソースと抵抗Ｒ００との接続点に接続されている。
【００４５】
この昇圧回路５０においては、充電用トランジスタＴ００がオン／オフされると、インダクタＬ００と充電用トランジスタＴ００との接続点に、バッテリ電圧ＶＢよりも高いフライバック電圧（逆起電圧）が発生し、そのフライバック電圧により、各ダイオードＤ１３，Ｄ２３を通じて各コンデンサＣ１０，Ｃ２０が充電される。
【００４６】
これにより、各コンデンサＣ１０，Ｃ２０がバッテリ電圧ＶＢよりも高い電圧に充電される。そして、充電制御回路１１０は、駆動用ＩＣ１２０からの充電許可信号がアクティブレベル（例えばハイレベル）になると、充電用トランジスタＴ００をオン／オフさせるが、その際に、各コンデンサＣ１０，Ｃ２０の正極側端子の電圧（各コンデンサＣ１０，Ｃ２０の充電電圧；以下「ＤＣ−ＤＣ電圧」ともいう）をモニタして、そのＤＣ−ＤＣ電圧が予め設定された目標ＤＣ−ＤＣ電圧Ｖｔ（充電目標電圧）になるか、上記充電許可信号が非アクティブレベルになると、充電用トランジスタＴ００をオフのままにして、各コンデンサＣ１０，Ｃ２０の充電を止める。
【００４７】
目標ＤＣ−ＤＣ電圧Ｖｔは、固定値ではなく、後述するように、マイコン１３０により各コイル１０１ａ〜１０４ａ毎に個別に演算されてそれぞれマイコン１３０から入力される。このことは、本実施形態のＥＣＵ１００の最も特徴的構成の１つである。また、充電制御回路１１０には、図示は省略したものの、マイコン１３０又は駆動用ＩＣ１２０から、駆動信号ＩＪＴ１〜ＩＪＴ４又はこれらを間接的に示す信号が入力されており、これにより充電制御回路１１０は、充電動作を行う毎に次にどのインジェクタのコイルへの放電が行われるのかがわかるように構成されている。
【００４８】
そのため、充電制御回路１１０は、マイコン１３０から入力されたコイル毎の各目標ＤＣ−ＤＣ電圧Ｖｔに従い、各コンデンサＣ１０，Ｃ２０の充電電圧（ＤＣ−ＤＣ電圧）が、それぞれ次に放電すべきインジェクタのコイルに対応した目標ＤＣ−ＤＣ電圧Ｖｔに一致するように、充電を行う。例えば、第１グループにおける次の放電対象が気筒♯１のコイル１０１ａであるならば、充電制御回路１１０は、第１のコンデンサＣ１０を、その充電電圧がそのコイル１０１ａに対応した目標ＤＣ−ＤＣ電圧Ｖｔとなるように充電する。
【００４９】
充電時における充電用トランジスタＴ００のオン／オフの回数（以下「充電動作回数」ともいう）は、充電対象の各コンデンサＣ１０，Ｃ２０を上記目標ＤＣ−ＤＣ電圧に充電するために必要な充電エネルギーに依存し、必要な充電エネルギーが大きいほど充電動作回数も多くなる。そして、充電動作回数が多いほど、充電用トランジスタＴ００の発熱も大きくなり、延いては昇圧回路５０全体の発熱も大きくなる。
【００５０】
また、ＥＣＵ１００において、第１の放電用トランジスタＴ１２は、第１のコンデンサＣ１０から第１コモン端子ＣＯＭ１に接続されている第１グループのコイル１０１ａ，１０３ａへ放電させるために設けられており、その第１の放電用トランジスタＴ１２がオンされると、第１のコンデンサＣ１０の正極側端子（高電圧側の端子）が第１コモン端子ＣＯＭ１に接続される。
【００５１】
同様に、第２の放電用トランジスタＴ２２は、第２のコンデンサＣ２０から第２コモン端子ＣＯＭ２に接続されている第２グループのコイル１０２ａ，１０４ａへ放電させるために設けられており、その第２のトランジスタＴ２２がオンされると、第２のコンデンサＣ２０の正極側端子が第２コモン端子ＣＯＭ２に接続される。
【００５２】
また、ＥＣＵ１００において、第１の定電流トランジスタＴ１１は、第１コモン端子ＣＯＭ１に接続された第１グループのコイル１０１ａ，１０３ａに一定の電流（保持電流）を流すために設けられており、気筒♯１に対応した気筒選択トランジスタＴ１０又は気筒♯３に対応した気筒選択トランジスタＴ３０の何れかがオンされている状態で、その第１の定電流トランジスタＴ１１がオンされると、各気筒選択トランジスタＴ１０，Ｔ３０のうちでオンされている方に接続されているコイル（１０１ａ又は１０３ａ）に、電源ラインＬｐから逆流防止用のダイオードＤ１１を介して電流が流れる。尚、ダイオードＤ１２は、コイル１０１ａ、１０３ａに対する定電流制御のための帰還ダイオードであり、各気筒選択トランジスタＴ１０，Ｔ３０の何れかがオンされている状態で第１の定電流トランジスタＴ１１がオンからオフされた時に、コイル１０１ａ，１０３ａに電流を還流させるものである。
【００５３】
同様に、第２の定電流トランジスタＴ２１は、第２コモン端子ＣＯＭ２に接続された第２グループのコイル１０２ａ，１０４ａに一定の電流（保持電流）を流すために設けられており、気筒♯２に対応した気筒選択トランジスタＴ２０又は気筒♯４に対応した気筒選択トランジスタＴ４０の何れかがオンされている状態で、その第２の定電流トランジスタＴ２１がオンされると、各気筒選択トランジスタＴ２０，Ｔ４０のうちでオンされている方に接続されているコイル（１０２ａ又は１０４ａ）に、電源ラインＬｐから逆流防止用のダイオードＤ２１を介して電流が流れる。尚、ダイオードＤ２２は、コイル１０２ａ、１０４ａに対する定電流制御のための帰還ダイオードであり、各気筒選択トランジスタＴ２０，Ｔ４０の何れかがオンされている状態で第２の定電流トランジスタＴ２１がオンからオフされた時に、コイル１０２ａ，１０４ａに電流を還流させるものである。
【００５４】
尚、各定電流トランジスタＴ１１，Ｔ２１は、それぞれ駆動用ＩＣ１２０に備えられた定電流制御回路によってオン／オフ制御され、このオン／オフ制御により上記保持電流が流れる。
【００５５】
更に、ＥＣＵ１１０において、電圧検出回路７０は、第１のコンデンサＣ１０の充電電圧（ＤＣ−ＤＣ電圧）Ｖｄｃが入力され、このＤＣ−ＤＣ電圧Ｖｄｃを２つの分圧抵抗Ｒ４１，Ｒ４２にて分圧して、その分圧値を、第１のコンデンサＣ１０のＤＣ−ＤＣ電圧Ｖｄｃを示す値としてマイコン１３０へ入力する。また、電圧検出回路７０は、第２のコンデンサＣ２０のＤＣ−ＤＣ電圧Ｖｄｃについても同様に、このＤＣ−ＤＣ電圧Ｖｄｃを２つの分圧抵抗Ｒ５１，Ｒ５２にて分圧して、その分圧値を、第２のコンデンサＣ２０のＤＣ−ＤＣ電圧Ｖｄｃを示す値としてマイコン１３０へ入力する。
【００５６】
尚、電圧検出回路７０からマイコン１３０に入力される分圧値は、厳密にはＤＣ−ＤＣ電圧Ｖｄｃと同値ではないが、ＤＣ−ＤＣ電圧Ｖｄｃを示す値であるため、以下の説明では、説明の便宜上、電圧検出回路７０からマイコン１３０にはＤＣ−ＤＣ電圧Ｖｄｃが入力されるものとして説明する。
【００５７】
そして、駆動用ＩＣ１２０は、第１グループに対応した回路構成要素として、マイコン１３０からの、気筒♯１及び気筒♯３に対応した各駆動信号ＩＪＴ１，ＩＪＴ３がそれぞれ入力されてその両者の論理和が出力されるＯＲ回路３１と、第１のコンデンサＣ１０から第１グループの各コイル１０１ａ，１０３ａの何れかに放電されて電流が流れている間にその電流を積分することにより、その間に第１のコンデンサＣ１０から放出された放出電荷Ｑｍを示す放出電荷モニタ電圧Ｖｍを演算する積分器３３と、電流検出抵抗Ｒ１０に流れる電流値（実際にはその電流値を示す電圧値）が入力されると共にＯＲ回路３１の出力信号が入力され、両入力信号に応じてＨレベル又はＬレベルの二値出力を行う放電制御回路３５と、この放電制御回路３５の出力及びＯＲ回路３１の出力が入力されて両者の論理積が出力されるＡＮＤ回路３９と、第１グループに対応した第１の定電流トランジスタＴ１１を制御する定電流制御回路４１と、ＯＲ回路３１の出力信号がＨレベルからＬレベルに立ち下がる立ち下がりタイミングを検出してその検出時に所定期間だけＨレベルの信号（積分クリア信号）を出力するワンショット回路４３と、を備えている。
【００５８】
尚、これら第１グループに対応した各種回路等は、第２グループに対しても全く同様に設けられているが、その動作は第１グループに対応したものと基本的に同じである。そのため、駆動用ＩＣ１２０が有する第２グループに対応した各種回路等は図１では図示を省略する。そして、以下の説明では、駆動用ＩＣ１２０については、特に断りのない限り、第１グループに対応した各種回路等について説明する。
【００５９】
駆動用ＩＣ１２０が備える積分器３３は、オペアンプ５３と、入力抵抗Ｒ３０と、コンデンサＣ３０とを備えた周知の回路構成となっている。即ち、オペアンプ５３の反転入力端子（−入力端子）に入力抵抗Ｒ３０の一端が接続され、オペアンプ５３の反転入力端子と出力端子の間にコンデンサＣ３０が接続されている。また、オペアンプ５３の非反転入力端子（＋入力端子）には所定の正の積分用基準電圧が入力されている。そして、入力抵抗Ｒ３０の他端に、積分対象の信号である、電流検出抵抗Ｒ１０に流れる電流値が、積分入力スイッチ５１を介して入力される。尚、積分入力スイッチ５１は、ＡＮＤ回路３９からの出力信号によってオン・オフされる。具体的には、ＡＮＤ回路出力信号がＬレベルの間はオフされ、ＡＮＤ回路出力信号がＨレベルの間にオンする。
【００６０】
また、コンデンサＣ３０の両端には、積分値をクリア（リセット）するための積分クリアスイッチ５５が接続されている。この積分クリアスイッチ５５は、ワンショット回路４３から入力される積分クリア信号によってオン・オフされる。具体的には、積分クリア信号がＬレベルの間はオフされ、積分クリア信号がＨレベルの間にオンする。
【００６１】
このような構成により、積分入力がない（積分値がクリアされている）初期状態においては、積分器３３からの出力である放出電荷モニタ電圧Ｖｍは、オペアンプ５３の非反転入力端子に入力されている積分用基準電圧に対応した初期値Ｖａとなる。これは即ち、第１のコンデンサＣ１０からの放出電荷Ｑｍがゼロであることを意味する。
【００６２】
そして、第１グループの各気筒選択トランジスタＴ１０，Ｔ３０の何れかがオンされると共に第１の放電用トランジスタＴ１２がオンされることにより第１のコンデンサＣ１０から第１グループの何れかのコイルへの放電（電荷放出）が開始され、これと同時に積分入力スイッチ５１がオンされると、電流検出抵抗Ｒ１０によってその放電電流が検出され、その検出値が積分器３３に入力されて積分が開始される。
【００６３】
尚、この積分器３３による積分が行われるのは、第１グループのコイル１０１ａ，１０３ａの通電期間中における、第１の放電用トランジスタＴ１２がオンされて第１のコンデンサＣ１０から第１グループのコイル１０１ａ，１０３ａに電流が流れている間、即ち、第１のコンデンサＣ１０から第１グループのコイルへ電気エネルギーが放出（電荷が放出）されている間である。そのため、この積分器３３は、実質的には第１のコンデンサＣ１０から放出された放出電荷Ｑｍを演算するものであり、その放出電荷Ｑｍを示す放出電荷モニタ電圧Ｖｍを出力するように構成されている。
【００６４】
また、本実施形態の積分器３３は、オペアンプ５３の−入力端子に積分対象の信号が入力されて＋入力端子に所定の正の積分用基準電圧が入力される構成であることから、その積分出力（放出電荷モニタ電圧Ｖｍ）は、積分開始前の初期状態では上記の通り初期値Ｖａ（正の値）であり、積分が開始されるとその初期値Ｖａから徐々に低下していくこととなる。つまり、積分が進むほど積分値が減少していくような構成の積分器である。
【００６５】
勿論、このような構成の積分器を用いるのはあくまでも一例であり、これとは逆に、積分が進むほどその出力値が増加していくような積分器を用いて、同様の機能を発揮する駆動用ＩＣ１２０を構成するようにしても良い。
【００６６】
放電制御回路３５は、第１のコンデンサＣ１０から第１グループの何れかのコイルへの放電が開始された後にその放電の停止タイミングを決めるためのものである。この放電制御回路３５は、第１のコンデンサＣ１０からの放電が開始された後、電流検出抵抗Ｒ１０から入力される放電電流の検出値が予め設定された放電電流検出閾値Ｉｏに到達したときに、ＡＮＤ回路３９への出力信号をＬレベルにする。そして、そのＬレベルへの変化後、ＯＲ回路３１から入力される信号（ＯＲ回路３１の出力信号）がＬレベルとなったときに、ＡＮＤ回路３９への出力信号をＬレベルからＨレベルに切り替える。
【００６７】
また、放電制御回路３５からＡＮＤ回路３９への出力信号は、第１のコンデンサＣ１０からの放電が停止されたことをマイコン１３０に伝えるための、放電停止タイミング信号Ｐｓとして、マイコン１３０にも出力される。
【００６８】
次に、駆動用ＩＣ１２０の動作について、図２を用いてより具体的に説明する。図２は、一例として、第１グループの気筒♯１への燃料噴射が行われる際の動作例を示すものである。
【００６９】
マイコン１３０は、各気筒♯１〜♯４の各コイルへの通電開始タイミング（放電開始タイミング）及び通電時間を制御することにより、各インジェクタ１０１〜１０４を所定の順序でそれぞれ所定期間（上記通電時間）開弁させる。そのため、気筒♯１のインジェクタを開弁させるタイミングが到来すると、マイコン１３０は、その気筒♯１に対応した駆動信号ＩＪＴ１をＨレベルにする。
【００７０】
気筒♯１，♯３に対応した駆動信号ＩＪＴ１，ＩＪＴ３がいずれもＬレベルのとき、即ち気筒♯１，♯３への燃料噴射が行われていない間は（図２の時刻ｔ２よりも前）、ＯＲ回路３１の出力はＬレベルであり、よってＡＮＤ回路３９の出力はＬレベル、ワンショット回路４３の出力はＬレベル、積分入力スイッチ５１及び積分クリアスイッチ５５はオフである。また、積分器３３への入力（即ち電流検出抵抗Ｒ１０の検出値）は０であるため、積分器３３の出力（放出電荷モニタ電圧Ｖｍ）は初期値Ｖａであり、放電制御回路３５の出力はＨレベルである。また、ＡＮＤ回路３９の出力がＬレベルであるため、第１の放電用トランジスタＴ１２はオフされている。
【００７１】
また、駆動用ＩＣ１２０は、第１コンデンサＣ１０又は第２コンデンサＣ２０の何れかからの放電が行われる毎に、その放電停止後、次の放電が開始されるまでの間に、昇圧回路５０への充電許可信号をアクティブレベルとして、昇圧回路５０による各コンデンサＣ１０，Ｃ２０の充電を行わせ、各コンデンサＣ１０，Ｃ２０を、それぞれ次の放電対象のコイルに対応した目標ＤＣ−ＤＣ電圧Ｖｔとなるように充電する。
【００７２】
そのため、気筒♯１への通電が開始される前の、各コンデンサＣ１０，Ｃ２０が目標ＤＣ−ＤＣ電圧Ｖｔに充電された状態では、図２の最下段に示すように、充電用トランジスタＴ００のオン／オフ動作（充電動作）は停止されている。
【００７３】
その他、図２には、動作波形として、マイコン１３０から昇圧回路５０へ入力される目標ＤＣ−ＤＣ電圧Ｖｔ（気筒♯１に対応した目標値）、も図示されているが、これについては後で説明する。
【００７４】
そして、マイコン１３０からの、気筒♯１に対応した駆動信号ＩＪＴ１がＨレベルになると（時刻ｔ２）、駆動用ＩＣ１２０は、上述したように気筒♯１に対応した気筒選択信号ＴＱ１をＨレベルにすることで、対応する気筒選択トランジスタＴ１０をオンさせる。
【００７５】
また、駆動信号ＩＪＴ１がＨレベルになったことで、ＯＲ回路３１の出力もＬレベルからＨレベルに立ち上がり、そのＨレベル信号がＡＮＤ回路３９の一方の入力端子に入力される。このとき、ＡＮＤ回路３９の他方の入力端子には放電制御回路３５からのＨレベル信号が入力されているため、ＡＮＤ回路３９の出力はＨレベルとなり、第１の放電用トランジスタＴ１２がオンすると共に、積分入力スイッチ５１もオンする。
【００７６】
これにより、第１のコンデンサＣ１０から気筒♯１のインジェクタ１０１のコイル１０１ａへの放電が開始される。そして、その放電開始によってコイル１０１ａに流れる電流が電流検出抵抗Ｒ１０により検出され、その検出値が、放電制御回路３５に入力されると共に積分器３３において積分される。
【００７７】
第１のコンデンサＣ１０からの放電が開始されると、その放電電流、即ちコイル１０１ａに流れる電流（インジェクタ駆動電流）は図２の最上段に示すように上昇していく（ピーク電流）。これに伴い、積分器３３への入力値も上昇していき、よって積分器３３の出力である放出電荷モニタ電圧Ｖｍ（放出電荷Ｑｍ）は、積分が進むにつれて減少していく。
【００７８】
時刻ｔ２における放電開始後、放電電流が放電電流検出閾値Ｉｏに到達すると（時刻ｔ３）、放電制御回路３５の出力がＬレベルとなり、これによりＡＮＤ回路３９の出力もＬレベルとなる。
【００７９】
そのため、第１の放電用トランジスタＴ１２がオフされて第１のコンデンサＣ１０からの放電が停止されると共に、積分入力スイッチ５１がオフされる。
時刻ｔ３の時点、即ち放電電流が放電電流検出閾値Ｉｏに到達した時点で、気筒♯１のインジェクタ１０１のコイル１０１ａには、開弁のために必要なエネルギーが供給されている。そのため、気筒♯１のインジェクタ１０１は、この時刻ｔ３までには確実に開弁されることとなる。
【００８０】
第１のコンデンサＣ１０からの放電が停止された後は、定電流制御回路４１が定電流トランジスタＴ１１をオン／オフ制御することで、コイル１０１ａへ保持電流を通電させて開弁状態を保持させる。
【００８１】
また、第１のコンデンサＣ１０からの放電が停止された後は、駆動用ＩＣ１２０から充電制御回路１１０への充電許可信号がアクティブレベルとなることで、図２の最下段に示すように、昇圧回路５０による昇圧動作（充電動作）、即ち充電用トランジスタＴ００のオン／オフ動作が開始され、第１のコンデンサＣ１０が目標ＤＣ−ＤＣ電圧Ｖｔに充電されるまでその充電動作が継続される。尚、充電許可信号は、少なくとも、放電用の各コンデンサＣ１０，Ｃ２０の何れかから放電されている放電期間は非アクティブレベルとなって充電が禁止される。
【００８２】
そして、時刻ｔ４にて、所定の燃料噴射時間（コイル１０１ａへの通電期間）が経過したことによってマイコン１３０からの駆動信号ＩＪＴ１がＬレベルになると、駆動用ＩＣ１２０は、定電流制御回路４１の動作を停止させると共に気筒♯１に対応した気筒選択信号ＴＱ１をＬレベルにすることで、対応する気筒選択トランジスタＴ１０をオフさせ、コイル１０１ａへの通電を停止させる。
【００８３】
またこの時刻ｔ４では、駆動信号ＩＪＴ１がＬレベルになることで、ＯＲ回路３１の出力がＨレベルからＬレベルに転じるため、ワンショット回路４３の出力が一定期間Ｈレベルとなる。そのため、そのワンショット回路４３の出力がＨレベルとなる一定期間、積分クリアスイッチ５５がオンされて、積分器３３の積分値（放出電荷モニタ電圧Ｖｍ）が初期値Ｖａにクリアされる。また、この時刻ｔ４にて、ＯＲ回路３１の出力がＨレベルからＬレベルになることで放電制御回路３５の出力もＨレベルに戻る。
【００８４】
このようにして、気筒♯１のインジェクタ１０１による一回の燃料噴射が行われるのである。他の各気筒♯２〜♯４の各インジェクタ１０１の動作についても同様である。また、本実施形態においても、特許文献１に記載されている技術と同様、多段噴射や多重噴射が行われるが、いずれにおいても、個々の噴射（一回の噴射）の動作内容は、図２に示したものと同様である。
【００８５】
ところで、上記のように構成された本実施形態のＥＣＵ１００においては、図５を用いて説明したように、コイルのインダクタンスにばらつきが生じるとコンデンサからの放電時の放電電流の傾きにもばらつきが生じ、結果として開弁タイミングにばらつきが生じてしまう。そこで本実施形態では、コイルのインダクタンスにばらつきがあっても常に一定の傾きで電流が上昇していくようにし、これによりインダクタンスのばらつきにかかわらず開弁タイミングを常に一定となるようにしている。
【００８６】
尚、本実施形態において、コンデンサからの放電電流の傾きについて「一定」とは、ある一定の傾きで直線的に電流が上昇することを意味するものではなく、放電開始から放電停止までの電流の上昇傾向（放電開始後の過渡的な電流の上昇過程）が、全体として、インダクタンスの値が異なっても同等である、という意味である。つまり、例えば図５（ａ）を用いて説明すると、インダクタンスのばらつきにかかわらず常に同じ傾向（例えばケースＢの上昇傾向）で電流が上昇する、ということである。
【００８７】
インダクタンスのばらつきに関わらず傾きを一定に制御できれば、放電開始からその放電エネルギーが開弁に最低限必要なエネルギーＥｏに到達するまでの時間も一定にすることができる。図５（ａ）を用いて説明すれば、インダクタンスのばらつきにかかわらず電流の傾きを例えばケースＢの傾きに一定制御できれば、インダクタンスのばらつきにかかわらず常に同じ開弁タイミング（時刻ｔ２）で開弁させることができる。
【００８８】
では具体的にどのようにして電流の傾きを一定に制御するのか、本発明者は次のように考えた。一般に、コイルのインダクタンスをＬ、コイルに印加される電圧をＶｄｃ一定とすると、通電開始からＴ秒後にコイルに流れる電流Ｉは次式（１）で表される。
Ｉ＝（Ｖｄｃ／Ｌ）＊Ｔ  ・・・（１）
上記式（１）から明らかなように、電流Ｉの傾きはＶｄｃ／Ｌである。そのため、インダクタンスＬのばらつきにかかわらずこの電流Ｉの傾きを一定にするためには、インダクタンスＬのばらつきに応じて電圧Ｖｄｃを変化させればよいということになる。例えばインダクタンスＬがある基準値（設計値）の１．１倍に増加したら、電圧Ｖｄｃも１．１倍に増加させれば、結果として電流Ｉの傾きＶｄｃ／Ｌには変化は生じないことになる。
【００８９】
そこで、コイルのインダクタンスのばらつきにかかわらず電流の傾きを一定に制御するために、コイル毎にＤＣ−ＤＣ電圧Ｖｄｃを制御、即ち昇圧回路の目標ＤＣ−ＤＣ電圧Ｖｔをコイル毎に制御するようにした。つまり、インダクタンスのばらつきによって生じる電流傾きの変動を、ＤＣ−ＤＣ電圧Ｖｄｃでキャンセルするのである。
【００９０】
即ち、本実施形態では、放出電荷Ｑｍとその電荷放出時のＤＣ−ＤＣ電圧Ｖｄｃ（本例では放出開始前の値）をモニタすることで実際に放出されたエネルギーである実放出エネルギーＥｎ（コイルへの投入エネルギー）を算出し、その算出した実放出エネルギーＥｎと開弁に必要な所定の基準エネルギーＥｒとの差分に基づいて昇圧回路の目標ＤＣ−ＤＣ電圧Ｖｔをフィードバック補正することで、電流の傾き、延いては放出エネルギーの量と傾きを一定にするようにしている。
【００９１】
次に、その目標ＤＣ−ＤＣ電圧Ｖｔのフィードバック補正の具体的方法について、図３のフローチャートを用いて説明する。図３に示す目標ＤＣ−ＤＣ電圧設定処理は、マイコン１３０が実行するものであり、より具体的には、各コイル１０１ａ〜１０４ａのそれぞれの通電期間中における、コンデンサからの放電開始タイミングよりも所定期間前のタイミングにて実行開始される。
【００９２】
例えば第１グループの気筒♯１のコイル１０１ａへの通電が行われる際には、図２に示すように、その通電開始（放電開始）タイミングである時刻ｔ２よりも所定時間前の時刻ｔ１にて、図３の目標ＤＣ−ＤＣ電圧設定処理が開始される。
【００９３】
尚、この目標ＤＣ−ＤＣ電圧設定処理では、後述するようにまず放電開始直前のＤＣ−ＤＣ電圧Ｖｄｃを取得する必要があるため、この目標ＤＣ−ＤＣ電圧設定処理の実行開始タイミング（時刻ｔ１）は、少なくとも昇圧回路５０によるコンデンサへの充電が完了した後であって、且つ放電開始タイミングにできるだけ近いタイミング（放電開始タイミングと同時でも可）に設定するのが好ましい。以下、図３の目標ＤＣ−ＤＣ電圧設定処理について、気筒♯１のコイル１０１ａへの通電の際に実行される場合を想定して、図２を用いつつ説明する。
【００９４】
気筒♯１のコイル１０１ａへの通電開始前の時刻ｔ１にて、マイコン１３０がこの目標ＤＣ−ＤＣ電圧設定処理を開始すると、まずＳ１１０にて、電圧検出回路７０から、第１のコンデンサＣ１０に充電されている実際のＤＣ−ＤＣ電圧Ｖｄｃを読み込む。つまり、まずは放電開始直前のＤＣ−ＤＣ電圧Ｖｄｃを読み込むのである。既述の通り、第１のコンデンサＣ１０は、放電開始までには昇圧回路５０によって目標ＤＣ−ＤＣ電圧Ｖｔに充電されているはずである。そのため、このＳ１１０で読み込まれるＤＣ−ＤＣ電圧Ｖｄｃは、目標ＤＣ−ＤＣ電圧Ｖｔと同値となっているはずである。図２では、一例として、気筒♯１のコイル１０１ａに対応した目標ＤＣ−ＤＣ電圧ＶｔがＶｔ１に設定されている例が示されている。
【００９５】
その後、時刻ｔ２にて第１のコンデンサＣ３０からの放電が開始されるため、続くＳ１２０では、その放電が停止したか否かを判断する。この放電停止の判断は、駆動用ＩＣ１２０から入力される放電停止タイミング信号Ｐｓに基づいて行う。
【００９６】
そして、放電が停止すると（Ｓ１２０：ＹＥＳ。時刻ｔ３。）、Ｓ１３０にて、放電開始からの放出電荷Ｑｍを読み込む。この放出電荷Ｑｍ読み込みは、具体的には、駆動用ＩＣ１２０からの放出電荷モニタ電圧Ｖｍを読み込むことにより行う。
【００９７】
そして、Ｓ１４０にて、Ｓ１１０で読み込んだ放電開始直前の実際のＤＣ−ＤＣ電圧Ｖｄｃと、Ｓ１３０で読み込んだ実際の放出電荷Ｑｍを用いて、次式（２）により、第１のコンデンサＣ１０から実際に放出された実放出エネルギーＥｎを演算する。
Ｅｎ＝Ｑｍ＊Ｖｄｃ／２  ・・・（２）
尚、第１のコンデンサＣ１０の充電電圧（ＤＣ−ＤＣ電圧Ｖｄｃ）は、放電開始後、放電が進むにつれて減少していくのであるが、本実施形態では放電用の各コンデンサＣ１０，Ｃ２０はいずれも大容量のアルミ電解コンデンサを用いており、１回の放電によるＤＣ−ＤＣ電圧Ｖｄｃの減少量は小さい。そのため、本実施形態における実放出エネルギーＥｎの算出は、上記式（２）のように、放電開始から終了までＤＣ−ＤＣ電圧Ｖｄｃが一定であるものと仮定（放電による充電電圧降下分を無視）して算出している。但し、放電前後のＤＣ−ＤＣ電圧Ｖｄｃの減少量が小さくはなくても、本実施形態における、実放出エネルギーＥｎを基準エネルギーＥｒに一致させる（延いては開弁タイミングを一定に制御する）という目的達成のためには、放電開始時のＤＣ−ＤＣ電圧Ｖｄｃの値が放電期間中も維持されるものと仮定して上記式（１）、（２）を用いるようにしても何ら問題ない。
【００９８】
そして、Ｓ１５０にて、Ｓ１４０で演算された実放出エネルギーＥｎが基準エネルギーＥｒより大きいか否か判断する。そして、Ｅｎ＞Ｅｒでない場合、即ち実放出エネルギーＥｎが基準エネルギーＥｒ以下ならば（Ｓ１５０：ＮＯ）、更にＳ１８０にて、実放出エネルギーＥｎが基準エネルギーＥｒより小さいか否かを判断する。
【００９９】
尚、基準エネルギーＥｒは、本実施形態では、図５（ｂ）に例示しているように、開弁に最低限必要なエネルギーＥｏよりも所定量大きい値、具体的にはケースＢにおいて放電電流が放電電流検出閾値Ｉｏに到達したとき（時刻ｔ３）の放出エネルギーに設定されている。
【０１００】
ここで、Ｅｎ＞Ｅｒならば、過剰にエネルギーが供給されたということ、即ち、放電電流の傾きが、設計上の基準傾き（放電電流検出閾値Ｉｏに到達したときに放出エネルギーが基準エネルギーＥｒに到達するような理想の傾き。例えば図５のケースＢの傾き。）よりも小さく、よって放電電流が放電電流検出閾値Ｉｏに到達するまでの時間が長くなったということである。そして、放電電流の傾きが基準傾きよりも小さいということは、その分、第１のコンデンサＣ１０からの放出エネルギーが開弁のために最低限必要なエネルギーＥｏに到達するまでの時間も上記基準傾きの場合よりも長くなってその分開弁タイミングが遅くなったということである。
【０１０１】
図５を用いて説明すれば、Ｅｎ＞Ｅｒということは、ケースＢよりも電流の傾きが小さくなってケースＣのような放電特性となり、よって、放出エネルギーが開弁に最低限必要なエネルギーＥｏに到達するタイミング（開弁タイミング）がケースＢの時刻ｔ２よりも遅くなったということである。
【０１０２】
そのため、この場合は、次回以降の開弁動作では実放出エネルギーＥｎが基準エネルギーＥｒとなるよう、電流傾きをより大きくする必要がある。
そこで本実施形態では、Ｅｎ＞Ｅｒの場合は（Ｓ１５０：ＹＥＳ）、Ｓ１６０〜Ｓ１７０にて、目標ＤＣ−ＤＣ電圧Ｖｔを現在の設定値よりも増加量Ｖｔｕだけ増加させるようにしている。目標ＤＣ−ＤＣ電圧Ｖｔを増加させれば、放電開始前の第１のコンデンサＣ１０の充電電圧（ＤＣ−ＤＣ電圧Ｖｄｃ）も増加するため、これにより放電電流の傾きを大きくすることができる。
【０１０３】
逆に、Ｅｎ＜Ｅｒならば、エネルギーの供給量が設計上の値よりも少なかったということ、即ち、放電電流の傾きが、設計上の基準傾き（本例では図５のケースＢの傾き）よりも大きく、よって放電電流が放電電流検出閾値Ｉｏに到達するまでの時間が短くなったということである。そして、放電電流の傾きが基準傾きよりも大きいということは、その分、第１のコンデンサＣ１０からの放出エネルギーが開弁のために最低限必要なエネルギーＥｏに到達するまでの時間も上記基準傾きの場合よりも短くなってその分開弁タイミングが早くなったということである。
【０１０４】
図５を用いて説明すれば、Ｅｎ＜Ｅｒということは、ケースＢよりも電流の傾きが大きくなってケースＡのような放電特性となり、よって、放出エネルギーが開弁に最低限必要なエネルギーＥｏに到達するタイミング（開弁タイミング）がケースＢの時刻ｔ２よりも早くなったということである。
【０１０５】
そのため、この場合は、次回以降の開弁動作では実放出エネルギーＥｎが基準エネルギーＥｒとなるよう、電流傾きをより小さくする必要がある。
そこで本実施形態では、Ｅｎ＜Ｅｒの場合は（Ｓ１８０：ＹＥＳ）、Ｓ１９０〜Ｓ２００にて、目標ＤＣ−ＤＣ電圧Ｖｔを現在の設定値よりも減少量Ｖｔｄだけ減少させるようにしている。目標ＤＣ−ＤＣ電圧Ｖｔを減少させれば、放電開始前の第１のコンデンサＣ１０の充電電圧（ＤＣ−ＤＣ電圧Ｖｄｃ）も減少するため、これにより放電電流の傾きを小さくすることができる。
【０１０６】
尚、Ｅｎ＝Ｅｒであったならば（Ｓ１５０，Ｓ１８０いずれもＮＯ）、エネルギーの供給量が設計上の量と同じになったということ、即ち放電電流の傾きが設計上の基準傾き（本例では図５のケースＢの傾き）と同じであったということである。そのため、この場合は目標ＤＣ−ＤＣ電圧Ｖｔを設定変更する必要はないため、この目標ＤＣ−ＤＣ電圧設定処理を終了する。
【０１０７】
次に、Ｓ１５０で実放出エネルギーＥｎが基準エネルギーＥｒよりも大きいと判断された場合に実行される、目標ＤＣ−ＤＣ電圧Ｖｔを増加させるためのＳ１６０〜Ｓ１７０の処理について説明する。
【０１０８】
Ｓ１６０では、まず、Ｓ１４０で演算した実放出エネルギーＥｎと、放電停止直前に実際に流れていた電流の値である放電電流検出閾値Ｉｏから、実際のインダクタンスの値を推定する。具体的には、推定すべきインダクタンスを実推定インダクタンスＬｎとして、この実推定インダクタンスＬｎを、コイルのエネルギーに関する周知の公式「Ｅ＝ＬＩ2／２」を利用して、次式（３）により求める。
Ｌｎ＝２＊Ｅｎ／Ｉｏ2  ・・・（３）
次に、この実推定インダクタンスＬｎと、設計上の理想のインダクタンスである理想インダクタンスＬｒと、設計上の理想のＤＣ−ＤＣ電圧である理想ＤＣ−ＤＣ電圧Ｖｄｃｏと、Ｓ１１０で読み取った実際のＤＣ−ＤＣ電圧Ｖｄｃとに基づいて、次式（４）により、現在の目標ＤＣ−ＤＣ電圧Ｖｔから増加させるべき増加量Ｖｔｕを演算する。
Ｖｔｕ＝｜Ｖｄｃｏ＊Ｌｎ／Ｌｒ−Ｖｄｃ｜  ・・・（４）
尚、理想ＤＣ−ＤＣ電圧Ｖｄｃｏは、インダクタンスが理想インダクタンスＬｒである場合にＤＣ−ＤＣ電圧をその理想ＤＣ−ＤＣ電圧Ｖｄｃｏとすれば放電電流の傾きが設計上の基準傾きとなる、設計上の基準となる（理想の）ＤＣ−ＤＣ電圧である。
【０１０９】
上記式（４）は、本来はＤＣ−ＤＣ電圧が理想ＤＣ−ＤＣ電圧Ｖｄｃｏで且つインダクタンスが理想インダクタンスＬｒであるべきところ、実際には温度ばらつきや個体ばらつき等によってインダクタンスが理想インダクタンスＬｒとは異なる値Ｌｎになっているという推定のもと、その実推定インダクタンスＬｎに対してＤＣ−ＤＣ電圧をどのような値に設定すればよいか、という考えに基づくものである。
【０１１０】
そして、Ｓ１７０にて、目標ＤＣ−ＤＣ電圧Ｖｔを、現在設定されている値よりも上記Ｖｔｕだけ増加した値に再設定し、その再設定後の新たな目標ＤＣ−ＤＣ電圧Ｖｔを昇圧回路５０へ（詳しくは充電制御回路１１０へ）出力する。これにより、充電制御回路１１０は、以後、気筒♯１のコイル１０１ａへの放電開始前に行う第１のコンデンサＣ１０の充電動作においては、第１のコンデンサＣ１０を、その新たな目標ＤＣ−ＤＣ電圧Ｖｔとなるように充電する。
【０１１１】
次に、Ｓ１８０で実放出エネルギーＥｎが基準エネルギーＥｒよりも小さいと判断された場合に実行される、目標ＤＣ−ＤＣ電圧Ｖｔを減少させるためのＳ１９０〜Ｓ２００の処理について説明する。
【０１１２】
Ｓ１９０の処理は、基本的にはＳ１６０の処理と同じであり、まず、上記式（３）にて、実放出エネルギーＥｎ及び放電電流検出閾値Ｉｏから推定される実推定インダクタンスＬｎを求める。そして、上記式（４）と同様の演算、即ち次式（５）にて、現在の目標ＤＣ−ＤＣ電圧Ｖｔから減少させるべき減少量Ｖｔｄを演算する。
Ｖｔｄ＝｜Ｖｄｃｏ＊Ｌｎ／Ｌｒ−Ｖｄｃ｜  ・・・（５）
そして、Ｓ２００にて、現在設定されている目標ＤＣ−ＤＣ電圧Ｖｔからその減少量Ｖｔｄを減算することで、目標ＤＣ−ＤＣ電圧Ｖｔを、現在設定されている値よりもＶｔｄだけ減少した値に再設定する。そして、その再設定後の新たな目標ＤＣ−ＤＣ電圧Ｖｔを昇圧回路５０へ（詳しくは充電制御回路１１０へ）出力する。
【０１１３】
図２では、一例として、Ｅｎ＞Ｅｒであった（即ち電流傾きが小さかった）ことによって目標ＤＣ−ＤＣ電圧ＶｔがＶｔ１からそれよりも高い（Ｖｔｕだけ高い）Ｖｔ２に再設定された例が示されている。
【０１１４】
尚、他の気筒♯２〜♯４についても同様であり、例えば気筒♯２のコイル１０２ａへの通電が行われる際にも、その気筒♯２のコイル１０２ａに対応した目標ＤＣ−ＤＣ電圧Ｖｔについて、図３の目標ＤＣ−ＤＣ電圧設定処理を実行して、その目標ＤＣ−ＤＣ電圧Ｖｔの再設定（増加、減少、又は現状維持）を行う。これにより、次にまた気筒♯２のコイル１０２ａへの放電が行われる際には、充電制御回路１１０は、その放電開始前までに第２のコンデンサＣ２０をその再設定後の目標ＤＣ−ＤＣ電圧Ｖｔとなるように充電する。
【０１１５】
更に、本実施形態のマイコン１３０は、電圧検出回路７０から各コンデンサＣ１０，Ｃ２０の実際のＤＣ−ＤＣ電圧Ｖｄｃを取得すると共に、駆動用ＩＣ１２０から放出電荷モニタ電圧Ｖｍを取得し、これらに基づいて、各コイル１０１ａ〜１０４ａの通電経路の異常判定を行う。
【０１１６】
具体的には、図３の目標ＤＣ−ＤＣ電圧設定処理と同様、各コイル１０１ａ〜１０４ａのそれぞれの通電期間中における、コンデンサからの放電開始タイミングよりも所定期間前のタイミング（例えば気筒♯１のコイル１０１ａへの通電の際には図２に示す時刻ｔ１）にて、図４に示す異常判定処理の実行を開始する。そこで、図４の異常判定処理について、以下、気筒♯１のコイル１０１ａへの通電の際に実行される場合を想定して、図２を適宜用いつつ説明する。
【０１１７】
気筒♯１のコイル１０１ａへの通電開始前の時刻ｔ１にて、マイコン１３０がこの異常判定処理を開始すると、まずＳ３１０にて、電圧検出回路７０から、第１のコンデンサＣ１０に充電されている実際のＤＣ−ＤＣ電圧Ｖｄｃを読み込み、その読み込んだ値をＶｄｃａとする。
【０１１８】
その後、時刻ｔ２にて放電が開始されるが（Ｓ３２０）、その放電開始後、所定時間が経過したか否かを判断する（Ｓ３３０）。ここで判断する所定時間は、通電経路が正常であるならば第１のコンデンサＣ１０からの放電が完了して保持電流の通電期間に入っているはずの時間であり、本例では、図２に示すように、放電が停止される時刻ｔ３よりも後の時刻ｔ３１である。尚、この所定時間は、放電停止からの経過時間ができる限り短くなるように設定するのが好ましい。
【０１１９】
放電開始後、所定時間が経過すると（即ち時刻ｔ３１になると）（Ｓ３３０：ＹＥＳ）、Ｓ３４０にて、再び電圧検出回路７０から第１のコンデンサＣ１０に充電されている実際のＤＣ−ＤＣ電圧Ｖｄｃを読み込み、その読み込んだ値をＶｄｃｂとする。
【０１２０】
更に、Ｓ３５０にて、放電開始からの放出電荷Ｑｍをモニタする。この放出電荷Ｑｍのモニタは、具体的には、駆動用ＩＣ１２０からの放出電荷モニタ電圧Ｖｍを読み込むことにより行う。
【０１２１】
そして、Ｓ３６０にて、放電開始前（時刻ｔ１）に読み込んだＤＣ−ＤＣ電圧Ｖｄｃａと放電停止後（時刻ｔ３１）に読み込んだＤＣ−ＤＣ電圧Ｖｄｃｂとの差である放電前後電圧差が所定の電圧差分閾値Ｖｒより大きいか否かを判断する。この電圧差分閾値Ｖｒは、通電経路が正常であって第１のコンデンサＣ１０からの放電が正常に行われたならば放電前後電圧差が少なくともこの電圧差分閾値Ｖｒよりは大きくなるような値であり、マイコン１３０内に予め設定されているものである。
【０１２２】
そのため、Ｓ３６０にて放電前後電圧差（Ｖｄｃａ−Ｖｄｃｂ）が電圧差分閾値Ｖｒより大きい場合は、通電経路が正常であるものと仮判断して、さらにＳ３７０に進む。一方、Ｓ３６０にて放電前後電圧差が電圧差分閾値Ｖｒより大きいと判断されなかった場合は、通電経路に何らかの異常が生じているものと判断し、Ｓ３８０に進んで例えば警報出力やダイアグ記録などの所定の第１異常時処理を行って、Ｓ３７０に移行する。
【０１２３】
Ｓ３７０では、Ｓ３５０で読み込んだ放出電荷モニタ電圧Ｖｍが予め設定した異常判定閾値Ｖｘ以下であるか否か、即ち、放出電荷Ｑｍが所定の閾値Ｑｘ以上であるか否かを判断する。この異常判定閾値Ｖｘは、図２に示すように、積分器３３の初期値Ｖａよりは小さく、且つ正常に放電が行われた場合の放電停止時における放出電荷モニタ電圧Ｖｍよりは大きい値である。
【０１２４】
気筒♯１のコイル１０１ａにおいて、その通電経路が正常であれば、通電開始後（即ち第１のコンデンサＣ１０からの放電開始後）、電流検出抵抗Ｒ１０に電流が流れて、その電流が積分器３３によって積分されるため、その出力値である放出電荷モニタ電圧Ｖｍは図２に示すように徐々に低下していって異常判定閾値Ｖｘよりもさらに低くなるはずである。しかし、通電経路に断線やショート等の異常が生じていて、第１の放電用トランジスタＴ１２及び気筒選択トランジスタＴ１０が共にオンしても電流検出抵抗Ｒ１０で正常な電流が検出されない状態になっていると、放出電荷モニタ電圧Ｖｍは、初期値Ｖａから変化しないか或いは低下するとしても正常な傾きでは低下しないおそれがある。
【０１２５】
そこでマイコン１３０は、通電経路が正常であれば判定タイミング（時刻ｔ３１）までには必ず到達するような異常判定閾値Ｖｘを適宜設定し、放出電荷モニタ電圧Ｖｍがこの異常判定閾値Ｖｘ以下になるか否かをもって、通電経路の異常の有無を判定する。つまり、本実施形態では、上述した放電前後電圧差に基づく通電経路の異常診断（Ｓ３６０）と、放出電荷モニタ電圧Ｖｍに基づく通電経路の異常診断（Ｓ３７０）との２種類の異常診断を行うようにしている。
【０１２６】
Ｓ３７０の処理において、放出電荷モニタ電圧Ｖｍが異常判定閾値Ｖｘ以下ならば（即ち、放出電荷Ｑｍが所定の閾値Ｑｘ以上ならば）（Ｓ３７０：ＹＥＳ）、通電経路は正常であるものとして、この異常判定処理を終了する。一方、放出電荷モニタ電圧Ｖｍが異常判定閾値Ｖｘより大きい状態ならば（即ち、放出電荷Ｑｍが所定の閾値Ｑｘに到達していないならば）（Ｓ３７０：ＮＯ）、通電経路に何らかの異常が生じているものと判断して、Ｓ３９０に進み、例えば警報出力やダイアグ記録などの所定の第２異常時処理を行う。
【０１２７】
以上説明したように、本実施形態のＥＣＵ１００では、放電用の各コンデンサＣ１０，Ｃ１１の充電電圧の目標値、即ち目標ＤＣ−ＤＣ電圧Ｖｔを、放電対象の各コイル１０１ａ〜１０４ａ毎に個別に、実放出エネルギーＥｎに基づいて可変設定するようにしている。具体的には、放出電荷ＱｍとＤＣ−ＤＣ電圧Ｖｄｃをモニタし、これらをもとに実際に放出された実放出エネルギーＥｎ（電磁弁コイルへの投入エネルギー）を算出し、基準となる基準エネルギーＥｒとの差分に基づき、この差分が０となるように（即ち、次回以降の放電では実放出エネルギーＥｎが基準エネルギーＥｒに一致するように）、目標ＤＣ−ＤＣ電圧Ｖｔをフィードバック補正する。
【０１２８】
このような構成により、コイルのインダクタンスに温度や個体差等によるばらつきが生じたとしても、そのインダクタンスのばらつきにかかわらず実放出エネルギーＥｎを基準エネルギーＥｒに一致させることができ、これにより放出エネルギーの量と傾きを一定にすることができるため、そのばらつきの影響を受けることなく一定の開弁タイミングでインジェクタを開弁させることができる。
【０１２９】
尚、インダクタンスがばらつくことによって放出エネルギーがばらつくと、放出エネルギーが過剰になるおそれがある。そして、放出エネルギーが過剰になると、昇圧回路５０の充電動作（充電用トランジスタＴ００のオン／オフ回数）が増大して発熱量が増大し、燃料噴射頻度に制約を受けるなど、発熱量増大に起因する各種問題が生じるおそれがある。
【０１３０】
これに対し、本実施形態では、実放出エネルギーＥｎが基準エネルギーＥｒに一致するように制御しているため、基準エネルギーＥｒを適宜設定することで、過剰なエネルギーの放出の抑制をも実現している。そのため、発熱量が大きいことにより生じる各種の制約の発生を抑えることができ、インジェクタの作動頻度を向上することが可能となる。
【０１３１】
更に、本実施形態では、放電期間前後のＤＣ−ＤＣ電圧Ｖｄｃの差や放出電荷モニタ電圧Ｖｍを利用して図４に示した異常判定処理を実行することにより、通電経路の異常の有無を判断するようにしている。そのため、回路規模の増大を抑えつつより高性能なＥＣＵ１００の実現が可能となる。
【０１３２】
尚、本実施形態において、昇圧回路５０は本発明の充電手段に相当し、各放電用トランジスタＴ１２，Ｔ２２は本発明のスイッチ手段に相当し、マイコン１３０は本発明の放電開始タイミング設定手段及び物理量設定手段に相当し、駆動用ＩＣ１２０は本発明のスイッチ制御手段に相当し、各電流検出抵抗Ｒ１０，Ｒ２０は本発明の電流検出手段に相当し、図２における時刻ｔ１は本発明の検出タイミング及び第１検出タイミングに相当し、図２における時刻ｔ３１は本発明の判定タイミング及び第２検出タイミングに相当する。
【０１３３】
また、図３の目標ＤＣ−ＤＣ電圧設定処理において、Ｓ１１０の処理は本発明の充電電圧検出が実行する処理に相当し、Ｓ１３０の処理は本発明の放出電荷検出手段が実行する処理に相当し、Ｓ１４０の処理は本発明の実放出エネルギー算出手段が実行する処理に相当し、Ｓ１５０〜Ｓ２００の処理は本発明の物理量設定手段が実行する処理に相当する。
【０１３４】
また、図４の異常判定処理において、Ｓ３１０の処理は本発明の充電電圧検出手段及び第１検出手段が実行する処理に相当し、Ｓ３４０の処理は本発明の第２検出手段が実行する処理に相当し、Ｓ３５０の処理は本発明の電荷取得手段が実行する処理に相当し、Ｓ３８０の処理は本発明の第２の異常判定手段が実行する処理に相当し、Ｓ３９０の処理は本発明の第１の異常判定手段が実行する処理に相当し、Ｓ３６０で用いる電圧差分閾値Ｖｒは本発明の異常判定電圧閾値に相当し、Ｓ３７０で用いる異常判定閾値Ｖｘが示す電荷閾値Ｑｘは本発明の異常判定電荷閾値に相当する。
【０１３５】
［変形例］
以上、本発明の実施の形態について説明したが、本発明の実施の形態は、上記実施形態に何ら限定されるものではなく、本発明の技術的範囲に属する限り種々の形態を採り得ることはいうまでもない。
【０１３６】
例えば、上記実施形態では、実放出エネルギーＥｎが基準エネルギーＥｒとなるように目標ＤＣ−ＤＣ電圧Ｖｔを設定したが、実放出エネルギーＥｎがどのような値になるように制御するか、即ち基準エネルギーＥｒをどのような値に設定するかについては、少なくとも開弁に最低限必要なエネルギーＥｏ以上の範囲において、適宜決めることができる。そのため、例えばＥｒ＝Ｅｏと設定してもよい。
【０１３７】
また、上記実施形態では、目標ＤＣ−ＤＣ電圧Ｖｔを可変設定する具体的方法として、実放出エネルギーＥｎ及び放電電流検出閾値Ｉｏから実推定インダクタンスＬｎを推定し（式（３））、その推定した実推定インダクタンスＬｎを用いて目標ＤＣ−ＤＣ電圧Ｖｔの増加量Ｖｔｕ又は減少量Ｖｔｄを求める方法（式（４）又は式（５））を示したが、このような方法はあくまでも一例であり、実放出エネルギーＥｎを基準エネルギーＥｒに一致させるために必要な目標ＤＣ−ＤＣ電圧Ｖｔの増加量或いは減少量を適切に得ることができる限り、その具体的方法は特に限定されるものではない。
【０１３８】
また、上記実施形態では、実放出エネルギーＥｎを基準エネルギーＥｒに一致させるための具体的手法として、目標ＤＣ−ＤＣ電圧Ｖｔを可変設定するようにしたが、このように目標ＤＣ−ＤＣ電圧Ｖｔを可変設定することは必須ではなく、実放出エネルギーＥｎを決定づける他の物理量（例えばコンデンサからコイル側を見た回路全体のインピーダンス）を可変設定する方法を採用することもできる。
【０１３９】
また、上記実施形態では、常閉式の電磁弁に対して本発明を適用した例を挙げたが、本発明は、常開式であってコイルへの通電によって閉弁するような構成の電磁弁に対しても適用できる。
【符号の説明】
【０１４０】
１０…車載バッテリ、２０…ＡＤ変換器、３１…ＯＲ回路、３３…積分器、３５…放電制御回路、３９…ＡＮＤ回路、４１…定電流制御回路、４３…ワンショット回路、５０…昇圧回路、５１…積分入力スイッチ、５３…オペアンプ、５５…積分クリアスイッチ、７０…電圧検出回路、１０１〜１０４…インジェクタ、１０１ａ〜１０４ａ…コイル、１１０…充電制御回路、１２０…駆動用ＩＣ、１３０…マイコン、Ｃ１０…第１のコンデンサ、Ｃ２０…第２のコンデンサ、Ｃ３０…コンデンサ、ＣＯＭ１…第１コモン端子、ＣＯＭ２…第２コモン端子、Ｄ１１，Ｄ１２，Ｄ１３，Ｄ２１，Ｄ２２，Ｄ２３…ダイオード、Ｌ００…インダクタ、Ｌｐ…電源ライン、Ｒ００…抵抗、Ｒ１０，Ｒ２０…電流検出抵抗、Ｒ３０…入力抵抗、Ｒ４１，Ｒ４２，Ｒ５１，Ｒ５２…分圧抵抗、Ｔ００…充電用トランジスタ、Ｔ１０，Ｔ２０，Ｔ３０，Ｔ４０…気筒選択トランジスタ、Ｔ１１，Ｔ２１…定電流トランジスタ、Ｔ１２，Ｔ２２…放電用トランジスタ
【図１】
0005605313.tif 000002
【図２】
0005605313.tif 000003
【図３】
0005605313.tif 000004
【図４】
0005605313.tif 000005
【図５】
0005605313.tif 000006