(57)【要約】【課題】専用ＩＣを用いることなく、噴射制御と異常検出を実現できる燃料噴射制御装置を提供すること。【解決手段】マイコン１００は、複数のシーケンスを実行可能で、インジェクタ２００に流れている電流に基づいて実行しているシーケンスに対応した通電状態とすると共に、実行するシーケンスを切り換えることで通電状態を変更するシーケンス制御部２０と、インジェクタ２００に流れている電流をデジタル値に変換してシーケンス制御部２０に出力すると共に、デジタル値と異常検出用閾値とを比較してデジタル値が異常検出用閾値に達しているか否かによって異常検出を行うＡＤＣ３０と、シーケンス制御部２０によるシーケンスの切り換えに応じて、ＡＤＣ３０においてデジタル値と比較される異常検出用閾値を変更可能なＤＭＡコントローラ５０と、を含んでいる。また、ＡＤＣ３０は、デジタル値と閾値変更部によって変更された異常検出用閾値とを比較する。【選択図】図１
2015102052.tif 000002
【特許請求の範囲】
【請求項１】
燃料噴射部に流れている電流に基づいて前記燃料噴射部への通電状態を変更することで、前記燃料噴射部からの燃料噴射を制御するマイコン（１００）を備えた燃料噴射制御装置であって、
前記マイコンは、
複数のシーケンスを実行可能なものであり、前記燃料噴射部に流れている電流に基づいて、実行している前記シーケンスに対応した前記通電状態とすると共に、実行する前記シーケンスを切り換えることで前記通電状態を変更するシーケンス制御部（２０）と、
前記燃料噴射部に流れている電流をアナログからデジタル値に変換して前記シーケンス制御部に出力すると共に、前記デジタル値と異常検出用閾値とを比較して前記デジタル値が前記異常検出用閾値に達しているか否かによって異常検出を行うＡＤ変換部（３０）と、
前記シーケンス制御部による前記シーケンスの切り換えに応じて、前記ＡＤ変換部において前記デジタル値と比較される前記異常検出用閾値を変更可能な閾値変更部（５０）と、を含み、
前記ＡＤ変換部は、前記デジタル値と前記閾値変更部によって変更された前記異常検出用閾値とを比較することを特徴とする燃料噴射制御装置。
【請求項２】
前記ＡＤ変換部は、前記異常検出用閾値として前記燃料噴射部に流れている電流の上限側の閾値と前記デジタル値とを比較すると共に、前記異常検出用閾値として前記燃料噴射部に流れている電流の下限側の閾値と前記デジタル値とを比較するものであり、
前記閾値変更部は、前記上限側の閾値及び前記下限側の閾値の両方を変更することを特徴とする請求項１に記載の燃料噴射制御装置。
【請求項３】
前記閾値変更部は、前記シーケンス制御部による前記シーケンスが切り換わる毎に、前記異常検出用閾値を各シーケンスに対応した互いに異なる値に変更することを特徴とする請求項１又は２に記載の燃料噴射制御装置。
【請求項４】
前記シーケンス制御部は、前記上限側の閾値よりも大きな値である最大上限値と前記デジタル値とを比較して、前記デジタル値が前記最大上限値に達しているか否かによって異常検出を行うことを特徴とする請求項１乃至３のいずれか一項に記載の燃料噴射制御装置。
【請求項５】
前記シーケンス制御部は、複数の前記シーケンスにおける一つを実行する場合、前記デジタル値が制御用の閾値である制御上限値に達するまで前記燃料噴射部への通電を行い、前記デジタル値が前記制御上限値に達すると前記燃料噴射部への通電を停止するものであり、前記燃料噴射部への通電を行っている通電時間が所定値に達したか否かによって異常検出を行うものであり、前記通電時間が前記所定値に達すると異常であると判定することを特徴とする請求項１乃至４のいずれか一項に記載の燃料噴射制御装置。
【請求項６】
前記ＡＤ変換部による異常検出によって異常であると検出された場合、前記燃料噴射部への通電を停止させる停止指示部（１０）を備えていることを特徴とする請求項１乃至５のいずれか一項に記載の燃料噴射制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、燃料噴射制御装置に関する。
【背景技術】
【０００２】
従来、燃料噴射制御装置の一例として、特許文献１に開示された技術がある。この燃料噴射制御装置は、燃料を噴射供給するインジェクタへの通電を制御することで、燃料の噴射制御を行うものである。また、燃料噴射制御装置は、複数のトランジスタ、各トランジスタを制御する駆動制御回路、周知のマイコンなどを備えて構成されている。
【０００３】
マイコンは、エンジン回転数、アクセル開度、エンジン水温など、各種センサにて検出されるエンジンの運転情報に基づいて噴射指令信号を生成して駆動制御回路に出力する。そして、駆動制御回路は、マイコンからの噴射指令信号を、インジェクタを駆動するためのトランジスタのゲートに出力する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００８−１９０３８８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に開示されている燃料噴射制御装置は、マイコンに加えて、駆動制御回路が設けられている。通常、駆動制御回路は、燃料噴射制御装置用の専用ＩＣ（Integrated Circuit）が採用される。このような燃料噴射制御装置では、従来技術ではないが、コストの低減を目的として、専用ＩＣで行っている機能をマイコンに搭載することで専用ＩＣを省くことが考えられる。
【０００６】
ところで、従来技術ではないが、燃料噴射制御装置は、インジェクタを駆動する端子の電源ショートやグランドショートなどの異常検出を行うことが考えられる。この異常検出を専用ＩＣで行う場合、燃料噴射制御装置は、専用ＩＣに対して、異常検出に必要な構成を回路的に組み込む事で、高速かつ正確に異常検出を実現できる。しかしながら、この場合、専用ＩＣが省かれた燃料噴射制御装置では、異常検出を行うことができない。
【０００７】
よって、従来技術ではないが、燃料噴射制御装置は、専用ＩＣを省きつつ異常検出を行う場合、マイコンによって異常検出を行うことが考えられる。この場合、燃料噴射制御装置は、マイコンがソフトウェアで電流値を高速サンプリングして電流波形を確認するなどによって異常検出を行うことになる。ところが、マイコンは、噴射指令信号の生成などに加えて、異常検出のためのソフトウェエア処理を行うことになるため処理負荷が増大する。このため、燃料噴射制御装置は、噴射指令信号の生成などに悪影響が生じ、噴射制御の制御性が損なわれる可能性がある。
【０００８】
本発明は、上記問題点に鑑みなされたものであり、専用ＩＣを用いることなく、噴射制御と異常検出を実現できる燃料噴射制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記目的を達成するために本発明は、
燃料噴射部に流れている電流に基づいて燃料噴射部への通電状態を変更することで、燃料噴射部からの燃料噴射を制御するマイコン（１００）を備えた燃料噴射制御装置であって、
マイコンは、
複数のシーケンスを実行可能なものであり、燃料噴射部に流れている電流に基づいて、実行しているシーケンスに対応した通電状態とすると共に、実行するシーケンスを切り換えることで通電状態を変更するシーケンス制御部（２０）と、
燃料噴射部に流れている電流をアナログからデジタル値に変換してシーケンス制御部に出力すると共に、デジタル値と異常検出用閾値とを比較してデジタル値が異常検出用閾値に達しているか否かによって異常検出を行うＡＤ変換部（３０）と、
シーケンス制御部によるシーケンスの切り換えに応じて、ＡＤ変換部においてデジタル値と比較される異常検出用閾値を変更可能な閾値変更部（５０）と、を含み、
ＡＤ変換部は、デジタル値と閾値変更部によって変更された異常検出用閾値とを比較することを特徴とする。
【００１０】
このように、本発明は、シーケンス制御部と、ＡＤ変換部と、閾値変更部とを含んで構成されたマイコンで燃料噴射を制御するものである。ＡＤ変換部は、燃料噴射部に流れている電流をアナログからデジタル値に変換してシーケンス制御部に出力する。これによって、シーケンス制御部は、燃料噴射部に流れている電流に基づいて、実行しているシーケンスに対応した通電状態とすると共に、実行するシーケンスを切り換えることで通電状態を変更することができる。つまり、本発明は、燃料噴射部に流れている電流に基づいて燃料噴射部への通電状態を変更することで、燃料噴射部からの燃料噴射を制御することができる。
【００１１】
また、ＡＤ変換部は、デジタル値と異常検出用閾値とを比較してデジタル値が異常検出用閾値に達しているか否かによって異常検出を行う。しかしながら、本発明は、シーケンス制御部が実行するシーケンスを切り換えることで、燃料噴射部への通電状態を変更する。このように燃料噴射部への通電状態を変更した場合、異常が生じていないにもかかわらず、デジタル値は、異常検出用閾値に達することもありうる。これによって、ＡＤ変換部は、誤検出してしまう。
【００１２】
そこで、本発明は、閾値変更部が、シーケンス制御部によるシーケンスの切り換えに応じて異常検出用閾値を変更する。そして、ＡＤ変換部は、デジタル値と閾値変更部によって変更された異常検出用閾値とを比較する。これによって、本発明は、燃料噴射部への通電状態を変更した場合であっても、ＡＤ変換部によって異常検出を行うことができる。このように、本発明は、専用ＩＣを用いることなく、噴射制御と異常検出を実現できる。
【００１３】
なお、特許請求の範囲及びこの項に記載した括弧内の符号は、ひとつの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１４】
【図１】第１実施形態におけるＥＣＵの概略構成を示すブロック図である。
【図２】第１実施形態におけるＣＰＵの処理動作を示すフローチャートである。
【００１５】
【図３】第１実施形態におけるＣＰＵのシーケンス制御初期化処理を示すフローチャートである。
【図４】第１実施形態におけるＣＰＵのＡＤＣ初期化処理を示すフローチャートである。
【図５】第１実施形態における燃料噴射制御装置の噴射要求処理を示すフローチャートである。
【図６】第１実施形態におけるＡＤＣの異常検出処理を示すフローチャートである。
【図７】第１実施形態におけるシーケンス制御部の処理動作を示すフローチャートである。
【図８】第１実施形態におけるシーケンス制御部の上限モード時の処理動作を示すフローチャートである。
【図９】第１実施形態におけるシーケンス制御部の上下限モード時の処理動作を示すフローチャートである。
【図１０】第１実施形態におけるＤＭＡコントローラの処理動作を示すフローチャートである。
【図１１】第１実施形態における燃料噴射制御装置の処理動作を示すタイムチャートである。
【図１２】第２実施形態における燃料噴射制御装置の処理動作を示すタイムチャートである。
【図１３】第３実施形態における燃料噴射制御装置の処理動作を示すタイムチャートである。
【図１４】第４実施形態における燃料噴射制御装置の処理動作を示すタイムチャートである。
【発明を実施するための形態】
【００１６】
以下において、図面を参照しながら、発明を実施するための複数の形態を説明する。各形態において、先行する形態で説明した事項に対応する部分には同一の参照符号を付して重複する説明を省略する場合がある。各形態において、構成の一部のみを説明している場合は、構成の他の部分については先行して説明した他の形態を参照し適用することができる。
【００１７】
本発明の燃料噴射制御装置は、例えば車両に搭載された多気筒エンジンの各気筒に燃料を噴射供給する複数のインジェクタ２００を駆動する。詳述すると、燃料噴射制御装置は、各インジェクタ２００のアクチュエータへの通電状態を制御することにより、インジェクタ２００から各気筒への燃料噴射を制御する。燃料噴射制御装置は、通電状態として、例えば通電開始タイミング及び通電時間を制御する。また、燃料噴射制御装置は、燃料噴射の制御として、例えば各気筒への燃料噴射時期及び燃料噴射量を制御する。更に、燃料噴射制御装置は、燃料噴射の制御として、周知の多段噴射制御を実行するものであってもよい。また、エンジンとしては、ガソリンエンジン及びディーゼルエンジンのいずれであってもよい。
【００１８】
なお、インジェクタ２００は、特許請求の範囲における燃料噴射部に相当する。例えば、インジェクタ２００は、常閉式の電磁弁により構成されており、各アクチュエータに通電されると開弁して燃料噴射を行う。また、インジェクタ２００は、自身のアクチュエータへの通電が遮断されると閉弁して燃料噴射を停止する。また、図１においては、図面を簡略化するために、インジェクタ２００におけるアクチュエータのみを図示している。また、このアクチュエータは、ソレノイドコイルやピエゾ素子などを採用することができる。また、以下において、特に断りがない場合、インジェクタ２００は、インジェクタ２００におけるアクチュエータを示すものとする。よって、インジェクタ２００への通電とは、インジェクタ２００におけるアクチュエータへの通電状態を示す。
【００１９】
（第１実施形態）
ここで、第１実施形態の燃料噴射制御装置における構成及び処理動作に関して説明する。まず、図１を用いて、燃料噴射制御装置の構成に関して説明する。燃料噴射制御装置は、インジェクタ２００に流れている電流に基づいてインジェクタ２００への通電状態を変更することで、インジェクタ２００からの燃料噴射を制御するマイコン１００を備えて構成されている。また、燃料噴射制御装置は、マイコン１００に加えて、第１ドライバ１１０〜第３ドライバ１３０、通常電源１４０、昇圧電源１５０、第１トランジスタ１６０〜第３トランジスタ１８０、電流検出抵抗１９０などを備えて構成されている。また、電子制御装置は、第１ポートｐ１と第２ポートｐ２の一対のポートに、インジェクタ２００が接続されている。なお、インジェクタ２００に流れている電流は、制御電流とも称する。
【００２０】
第１ドライバ１１０は、マイコン１００及び第１トランジスタ１６０のゲートに接続されている。第１ドライバ１１０は、マイコン１００からの指示（言い換えると、指示信号）に応じて、第１トランジスタ１６０に対して駆動信号を出力することで、第１トランジスタ１６０をオン及びオフさせる。よって、指示信号は、第１トランジスタ１６０のオンを指示するオン指示信号と、第１トランジスタ１６０のオフを指示するオフ指示信号とを含むものである。また、駆動信号は、第１トランジスタ１６０に対してオンを指示するオン駆動信号と、第１トランジスタ１６０に対してオフを指示するオフ駆動信号とを含むものである。なお、第１トランジスタ１６０は、ゲートが第１ドライバ１１０に接続されており、ソースが昇圧電源１５０に接続されており、ドレインが第１ポートｐ１を介してインジェクタ２００に接続されている。
【００２１】
第２ドライバ１２０は、マイコン１００及び第２トランジスタ１７０のゲートに接続されている。第２ドライバ１２０は、マイコン１００からの指示に応じて、第２トランジスタ１７０に対して駆動信号を出力することで、第２トランジスタ１７０をオン及びオフさせる。なお、第２トランジスタ１７０は、ゲートが第２ドライバ１２０に接続されており、ソースが通常電源１４０に接続されており、ドレインが第１ポートｐ１を介してインジェクタ２００に接続されている。
【００２２】
第３ドライバ１３０は、マイコン１００及び第３トランジスタ１８０のゲートに接続されている。第３ドライバ１３０は、マイコン１００からの指示に応じて、第３トランジスタ１８０に対して駆動信号を出力することで、第３トランジスタ１８０をオン及びオフさせる。なお、第３トランジスタ１８０は、ゲートが第３ドライバ１３０に接続されており、ソースが第２ポートｐ２を介してインジェクタ２００に接続されており、ドレインが電流検出抵抗１９０の一方の端子に接続されている。なお、第１トランジスタ１６０〜第３トランジスタ１８０の夫々は、例えばＭＯＳＦＥＴ等のスイッチング素子により構成されている。
【００２３】
通常電源１４０及び昇圧電源１５０は、インジェクタ２００に電圧を印加するものである。通常電源１４０は、図示を省略するバッテリに相当するものであり、バッテリの電圧であるバッテリ電圧を供給可能となっている。また、通常電源１４０は、バッテリ電圧を降圧して、降圧して得られた低電圧を発生（供給）可能となっており、ＤＣ／ＤＣコンバータなどのスイッチング電源を採用することもできる。一方、昇圧電源１５０は、バッテリ電圧を昇圧して、昇圧して得られた高電圧を発生可能となっており、ＤＣ／ＤＣコンバータなどのスイッチング電源を採用することができる。よって、昇圧電源１５０は、通常電源１４０よりも高電圧を発生する高電圧発生部と言い換えることができる。同様に、通常電源１４０は、昇圧電源１５０よりも低電圧を発生する低電圧発生部と言い換えることができる。
【００２４】
電流検出抵抗１９０は、制御電流を検出するための抵抗である。電流検出抵抗１９０は、一方の端子が第３トランジスタ１８０のドレインと接続されており、他方の端子がグランドに接続されている。
【００２５】
マイコン１００は、第１ドライバ１１０〜第３ドライバ１３０の夫々、及び、電流検出抵抗１９０と第３トランジスタ１８０との間の配線に接続されている。また、マイコン１００は、ＣＰＵ１０、シーケンス制御部２０、ＡＤＣ３０、タイマ４０、ＤＭＡコントローラ５０、メモリ６０などを備えて構成されている。なお、ＣＰＵは、Central Processing Unitの略称である。ＡＤＣは、analog to digital converter（ＡＤ変換部）の略称である。ＤＭＡは、Direct Memory Accessの略称である。
【００２６】
ＣＰＵ１０は、メモリ６０などの記憶装置に記憶されたプログラムに従って各種演算処理を実行する。例えば、ＣＰＵ１０は、シーケンス制御部２０の初期化処理や、ＡＤＣ３０の初期化処理などを実行する。シーケンス制御部２０の初期化処理及びＡＤＣ３０の初期化処理に関しては、後ほど説明する。
【００２７】
更に、ＣＰＵ１０は、タイマ４０に対して、噴射タイミング指示を行う。ＣＰＵ１０は、噴射毎に噴射タイミングを演算し、この噴射タイミングをタイマ４０にセットする。詳述すると、ＣＰＵ１０は、噴射開始時刻及び噴射終了時刻をタイマ４０に設定する。
【００２８】
シーケンス制御部２０は、制御データ設定部２１、比較器２２、出力制御部２３、アンド回路２４、出力部２５などを備えて構成されている。シーケンス制御部２０は、複数のシーケンスを実行可能なものであり、制御電流に基づいて、実行しているシーケンスに対応した通電状態とすると共に、実行するシーケンスを切り換えることで通電状態を変更する。また、シーケンス制御部２０は、制御電流に加えて、時間によって実行するシーケンスを切り換えることができる。本実施形態では、一例として、第１シーケンス、第２シーケンス、第３シーケンスの３つのシーケンスを実行可能なシーケンス制御部２０を採用している。更に、シーケンス制御部２０は、実行するシーケンスの切り換えタイミングで、ＤＭＡコントローラ５０に対して異常検出用閾値の変更を指示する。なお、異常検出用閾値の変更指示は、シーケンス制御部２０における制御データ設定部２１が行う。
【００２９】
制御データ設定部２１は、シーケンサーとレジスタなどによって構成されている。レジスタは、ＣＰＵ１０からの制御データが設定される。レジスタは、制御データとして、各シーケンスを示す値と、各シーケンスに対応した制御値とが関連付けられて設定されている。例えば、制御データ設定部２１は、シーケンスを示す値と、このシーケンスに対応した制御値とが関連付けられて記憶されたレジスタがシーケンス毎に設けられている。そして、シーケンサーは、実行するシーケンスに対応したレジスタを選択することによって、実行するシーケンスに対応した制御値を用いることができる。
【００３０】
この制御値とは、制御電流に対応する値であり、各シーケンスを実行している際に、制御電流を制御するための上限値又は下限値である。言い換えると、制御値は、制御用の閾値である。第１シーケンスを示す値に対しては、制御値として第１制御上限値が関連付けられている。第２シーケンスを示す値に対しては、制御値として第２制御上限値と第２制御下限値とが関連付けられている。第３シーケンスを示す値に対しては、制御値として第３制御上限値と第３制御下限値とが関連付けられている。これらの制御値の関係は、例えば、第１制御上限値＞第２制御上限値＞第２制御下限値、及び、第２制御下限値≧第３制御上限値＞第３制御下限値となっている。
【００３１】
更に、レジスタには、制御電流が異常値であるか否かを判定するための上限閾値であるＡＤ上限値が設定可能となっている。つまり、レジスタは、ＡＤ上限値が記憶されていてもよい。このＡＤ上限値は、第１上限閾値よりも大きい値である。また、ＤＭＡコントローラ５０に対して異常検出用閾値の変更を指示は、制御データ設定部２１が行う。
【００３２】
比較器２２は、後ほど説明するＡＤＣ３０から出力されたデジタル値と、制御データ設定部２１のレジスタに設定されている制御値とを比較して、その比較結果を出力する。
【００３３】
出力制御部２３は、比較器２２から取得した比較結果に応じた信号を制御データ設定部２１及びアンド回路２４に出力する。言い換えると、出力制御部２３は、比較器２２から取得した比較結果に応じて、制御データ設定部２１及びアンド回路２４に対する出力をハイレベル又はローレベルとする。なお、デジタル値は、ＡＤＣ３０の変換部３１でＡＤ変換された結果であるため、以下の説明や図面においてはＡＤ値と記載することもある。
【００３４】
アンド回路２４は、入力端子にタイマ４０と出力制御部２３とが接続されており、出力端子が出力部２５に接続されている。そして、アンド回路２４は、タイマ４０の出力と出力制御部２３の出力とに応じて、出力をハイレベル又はローレベルとする。言い換えると、アンド回路２４は、タイマ４０の出力と出力制御部２３の出力との論理積信号を出力する。
【００３５】
なお、タイマ４０は、時間を計測すると共に、計測した時間が所定の時間に達すると、アンド回路２４やＡＤＣ３０に信号を出力する。例えば、タイマ４０は、自身で計測した時間がＣＰＵ１０から設定された噴射開始時刻に一致すると、アンド回路２４に対してイネーブル信号を出力する。そして、タイマ４０は、自身で計測した時間がＣＰＵ１０から設定された噴射終了時刻に一致すると、アンド回路２４に対してディセーブル信号を出力する。
【００３６】
また、タイマ４０は、自身で計測した時間がＣＰＵ１０から設定されたＡＤ周期タイミングに一致すると、ＡＤＣ３０に対して起動信号を出力する。言い換えると、タイマ４０は、起動イベントを発生する。また、タイマ４０は、ＣＰＵ１０から設定された所定のタイミングで、ＡＤＣ３０に対してＡＤ変換を指示する、と言い換えることもできる。
【００３７】
出力部２５は、制御データ設定部２１の出力とアンド回路２４の出力とに応じて、第１ドライバ１１０〜第３ドライバ１３０の夫々に対して指示信号を出力する。第１シーケンスを実行中の場合、出力部２５は、第１トランジスタ１６０〜第３トランジスタ１８０の全てに対して、オン指示信号を出力することになる。また、第２シーケンス及び第３シーケンスを実行中の場合、出力部２５は、第３トランジスタ１８０に対してオン指示信号を出力し続けると共に、第１トランジスタ１６０に対してオフ指示信号を出力し続けることになる。更に、第２シーケンス及び第３シーケンスを実行中の場合、出力部２５は、第２トランジスタ１７０に対してオン指示信号とオフ指示信号を交互に出力することになる。
【００３８】
ＡＤＣ３０は、変換部３１、アナログウォッチドッグ部３２、レジスタ３３などを備えて構成されている。図１においては、燃料噴射制御装置に対して、一つのインジェクタ２００が接続されている図面を採用している。しかしながら、燃料噴射制御装置は、複数のインジェクタ２００が接続されていてもよい。この場合、ＡＤＣ３０は、複数のインジェクタ２００の夫々における制御電流が入力される。例えば、燃料噴射制御装置は、複数のインジェクタに対して、一つのＡＤＣ３０が設けられる。また、ＡＤＣ３０は、例えば、変換部３１と各インジェクタ２００との間にマルチプレクサなどの選択部が設けられる。この選択部は、複数のインジェクタ２００のうち、どのインジェクタ２００の制御電流を変換部３１に出力するかを選択する。なお、選択部は、複数のチャンネルから一つのチャンネルを選択する、と言う事ができる。そして、変換部３１は、各インジェクタ２００の制御電流のうち、選択部で選択されたチャンネルの制御電流が入力される。つまり、変換部３１は、選択部を介して、各インジェクタ２００の制御電流が個別に入力されることになる。
【００３９】
変換部３１は、タイマ４０からの起動信号が入力されるたびに、制御電流のアナログ値をＡＤ値に変換してシーケンス制御部２０に出力する。詳述すると、変換部３１は、制御電流をＡＤ値に変換して、変換したＡＤ値をシーケンス制御部２０の比較器２２に出力する。また、変換部３１は、変換したＡＤ値をアナログウォッチドッグ部３２に出力する。
【００４０】
アナログウォッチドッグ部３２は、ＡＤ値と異常検出用閾値とを比較してＡＤ値が異常検出用閾値に達しているか否かによって異常検出を行う。なお、異常検出用閾値は、レジスタ３３に設定されている。よって、アナログウォッチドッグ部３２は、変換部３１から取得したＡＤ値と、レジスタ３３から読み出した異常検出用閾値とを比較する。そして、アナログウォッチドッグ部３２は、ＡＤ値が異常検出用閾値に達していない場合は異常でないと判定し、ＡＤ値が異常検出用閾値に達している場合は異常であると判定する。また、アナログウォッチドッグ部３２は、異常であると判定した場合、ＣＰＵ１０に対して異常であることを通知するものであってもよい。なお、アナログウォッチドッグ部３２は、インジェクタ２００が接続された第１ポートｐ１や第２ポートｐ２の電源ショートやグランドショートなどの異常検出を行うことができる。このように、アナログウォッチドッグ部３２は、異常検出を行うものであるため、異常検出部と言い換えることもできる。
【００４１】
なお、レジスタ３３は、異常検出用閾値として、例えば第１上限閾値、第１下限閾値、第２下限閾値が設定可能に構成されている。これらの閾値の関係は、第１上限閾値＞第２下限閾値＞第１下限閾値となっている。よって、アナログウォッチドッグ部３２は、異常検出用閾値の上限側の閾値とＡＤ値とを比較すると共に、異常検出用閾値の下限側の閾値とＡＤ値とを比較することになる。なお、本発明は、上限側の閾値とＡＤ値との比較、及び下限側の閾値とＡＤ値との比較のいずれか一方を行うものであっても採用することができる。
【００４２】
このように、ＡＤＣ３０は、制御電流をＡＤ値に変換するＡＤ変換機能と、制御電流に基づいて異常検出を行う異常検出機能とを有している。更に、ＡＤＣ３０は、異常検出を行う際に用いる異常検出用閾値を変更することができる。
【００４３】
ＤＭＡコントローラ５０は、特許請求の範囲における閾値変更部に相当する。ＤＭＡコントローラ５０は、制御データ設定部２１からの指示に応じて、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定する。このとき、ＤＭＡコントローラ５０は、ＣＰＵ１０を介することなく、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定することができる。このように、ＤＭＡコントローラ５０は、シーケンス制御部２０によるシーケンスの切り換えに応じて、ＡＤＣ３０においてＡＤ値と比較される異常検出用閾値を変更することができる。
【００４４】
メモリ６０は、例えばフラッシュＲＯＭなどを採用することができる。メモリ６０は、上述のように、異常検出用閾値が記憶されている。つまり、メモリ６０には、上述の第１上限閾値、第１下限閾値、第２下限閾値が記憶されている。なお、ＲＯＭは、Read Only Memoryの略称である。
【００４５】
次に、図２〜図１１を用いて、燃料噴射制御装置の処理動作に関して説明する。まず、図２を用いて、ＣＰＵ１０の処理動作を説明する。ＣＰＵ１０は、自身に対する電源の供給が開始されると起動して、図２のフローチャートで示す処理を実行する。また、ＣＰＵ１０は、自身に対する電源供給が継続している間は図２に示すフローチャートの処理を実行し、自身に対する電源供給が停止されると図２に示すフローチャートの処理を終了する。
【００４６】
ステップＳ１０では、シーケンス制御部２０の初期化処理を行う。このシーケンス制御部２０の初期化処理に関しては、図３を用いて説明する。ステップＳ１１では、制御データの書き込みを行う。ＣＰＵ１０は、シーケンス制御部２０に設けられたレジスタに制御データを書き込む。ＣＰＵ１０は、各シーケンスを示す値と、各シーケンスに対応した制御値とを関連付けてレジスタに書き込む。例えば、シーケンス制御部２０がシーケンス毎にレジスタを有していた場合、ＣＰＵ１０は、各シーケンスに対応したレジスタに、各シーケンスに対応した制御値を書き込む。
【００４７】
ステップＳ１２では、出力設定を行う。このとき、ＣＰＵ１０は、各シーケンスに対応した出力値の設定を行う。つまり、ＣＰＵ１０は、各シーケンスにおいて、出力部２５から出力する指示信号の設定を行う。言い換えると、ＣＰＵ１０は、各シーケンスに対応した、第１トランジスタ１６０〜第３トランジスタ１８０の夫々におけるオン及びオフの組み合わせを設定する。例えば、ＣＰＵ１０は、シーケンス制御部２０に設けられたレジスタに、各シーケンスに対応した指示信号（出力値）を書き込む。
【００４８】
ステップＳ２０では、ＡＤＣ３０の初期化処理を行う。このＡＤＣ３０の初期化処理に関して、図４を用いて説明する。ステップＳ２１では、ＡＤＣ設定を行う。ＣＰＵ１０は、複数のチャンネルの制御電流を順番にＡＤ変換するように、複数のチャンネルにおけるＡＤ変換を行う順番などを設定する。このとき、ＣＰＵ１０は、例えばタイマ４０に設けられたレジスタに、複数のチャンネルにおけるＡＤ変換を行う順番などを書き込むことによって、ＡＤＣ設定を行う。
【００４９】
ステップＳ２２では、ＡＤＣ３０の起動周期を設定する。ＣＰＵ１０は、ＡＤＣ３０の変換部３１によるＡＤ変換が周期的に行われるように、ＡＤＣ３０を起動させるＡＤ周期タイミングをタイマ４０に設定する。よって、ＡＤ周期タイミングは、変換部３１によるＡＤ変換タイミング、又は変換部３１がＡＤ変換を行うサンプリング周期と言い換えることができる。更に、変換部３１は、ＡＤ変換が完了するたびに、変換したＡＤ値をシーケンス制御部２０の比較器２２に出力するものである。よって、ＡＤ周期タイミングは、変換部３１による比較器２２に対するＡＤ値の出力タイミングと言い換えることもできる。なお、ＣＰＵ１０は、例えばタイマ４０に設けられたレジスタに、ＡＤ周期タイミングを書き込むことによって、ＡＤ周期タイミングをタイマ４０に設定する。
【００５０】
ＣＰＵ１０は、ステップＳ１０，Ｓ２０において初期化処理を行い、この初期化処理が終了すると、ステップＳ３０，Ｓ４０において噴射処理を行う。ＣＰＵ１０は、噴射タイミング毎にステップＳ３０，Ｓ４０での処理を実行する。つまり、ＣＰＵ１０は、自身に対する電源供給が継続している間、ステップＳ３０，Ｓ４０を繰り返し実行することになる。
【００５１】
ステップＳ３０では、噴射時間を演算する。なお、噴射時間の演算に関しては、周知技術であるため説明を省略する。そして、ステップＳ４０では、噴射要求を行う。この噴射要求に関しては、図５を用いて説明する。ステップＳ４１では、噴射開始時刻をタイマ４０に設定する。ステップＳ４２では、噴射終了時刻をタイマ４０に設定する。つまり、ＣＰＵ１０は、噴射タイミングを指示する、と言い換えることができる。このとき、ＣＰＵ１０は、例えばタイマ４０に設けられたレジスタに、噴射開始時刻と噴射終了時刻とを書き込む。
【００５２】
次に、図６を用いて、ＡＤＣ３０の異常検出処理に関して説明する。ＡＤＣ３０は、タイマ４０からの起動信号が入力されると起動して、図６に示すフローチャートの処理を開始する。つまり、ＡＤＣ３０は、ステップＳ２２で設定されたＡＤ周期タイミングで起動して、図６に示すフローチャートの処理を開始する。
【００５３】
ステップＳ５１では、変換部３１がＡＤ変換を行う。そして、ステップＳ５２では、異常有りか否かを判定する。このとき、アナログウォッチドッグ部３２は、変換部３１で変換されたＡＤ値と、レジスタ３３に設定されている異常検出用閾値とを比較することで、異常が有るか否かを判定する。
【００５４】
例えば、アナログウォッチドッグ部３２は、図１１のタイミングｔ２に示すように、第１シーケンスが実行されている場合、ＡＤ値が第１上限閾値に達することで、異常があると判定する。言い換えると、アナログウォッチドッグ部３２は、ＡＤ値が第１上限閾値と等しい値、又は第１上限閾値よりも大きい値になると、異常があると判定する。なお、アナログウォッチドッグ部３２は、第２シーケンスや第３シーケンスが実行されている場合であっても、ＡＤ値が第１上限閾値に達することで、異常があると判定する。
【００５５】
また、アナログウォッチドッグ部３２は、図１１のタイミングｔ４，ｔ６に示すように、第２シーケンス又は第３シーケンスが実行されている場合、ＡＤ値が第２下限閾値に達することで、異常があると判定する。言い換えると、アナログウォッチドッグ部３２は、ＡＤ値が第２下限閾値と等しい値、又は第２下限閾値よりも小さい値になることで、異常であると判定する。
【００５６】
なお、アナログウォッチドッグ部３２は、第１シーケンスが実行されている場合、ＡＤ値が第１下限閾値に達することで、異常があると判定する。なお、第１下限閾値としては、０Ｖなどを採用することができる。よって、アナログウォッチドッグ部３２は、ＡＤ値が０Ｖの場合には正常であると判定する、と言い換えることができる。また、このように、第１下限閾値として０Ｖを採用することによって、第１領域において制御電流の波形が立ち上がる際に、正常であるにもかかわらず異常であると誤検出することを抑制できる。つまり、このようにすることで、アナログウォッチドッグ部３２は、グランドショートやオープン検出を行うことができる。
【００５７】
そして、アナログウォッチドッグ部３２は、異常なしと判定した場合は図６に示すフローチャートの処理を終了し、異常有りと判定した場合はステップＳ５３へ進む。なお、ステップＳ５２での判定に用いられる異常検出用閾値は、ＤＭＡコントローラ５０によってレジスタ３３に書き込まれた、現在実行中のシーケンスに対応した値である。
【００５８】
ステップＳ５３では、アナログウォッチドッグ部３２は、ＣＰＵ１０に対して異常通知を行う。これによって、ＣＰＵ１０は、インジェクタ２００が接続された第１ポートｐ１や第２ポートｐ２の電源ショートやグランドショートなどの異常を知ることができる。なお、ＣＰＵ１０は、アナログウォッチドッグ部３２から異常通知があった場合、インジェクタ２００への通電を停止させてもよい（停止指示部）。例えば、ＣＰＵ１０は、シーケンス制御部２０に対して、インジェクタ２００への通電停止を指示する。シーケンス制御部２０は、インジェクタ２００への通電停止が指示されると、第１シーケンス〜第３シーケンスのいずれかを実行中であっても、インジェクタ２００への通電を停止する。なお、シーケンス制御部２０は、第３トランジスタ１８０をオフさせることでインジェクタ２００への通電を停止することができる。このようにすることで、燃料噴射制御装置は、異常なトルク変動を抑えて、自身を構成する回路やインジェクタ２００に生じる異常の抑制が期待できる。
【００５９】
次に、図７を用いて、シーケンス制御部２０の処理動作に関して説明する。シーケンス制御部２０は、ＡＤＣ３０から出力されたＡＤ値が入力されるたびに、図７に示すフローチャートの処理を開始する。
【００６０】
ステップＳ６１では、モード確認を行う。シーケンス制御部２０は、実行しているシーケンスに基づいて、上限モードで動作中か上下限モードで動作中かを判定する。後ほど説明するが、シーケンス制御部２０は、第１シーケンスを実行することによって、ＡＤ値が制御上限に達するように動作する。このため、シーケンス制御部２０は、第１シーケンスを実行している場合、上限モードで動作中と判定する。一方、シーケンス制御部２０は、第２シーケンスや第３シーケンスを実行することによって、ＡＤ値が制御上限と制御下限との間になるように動作する。このため、シーケンス制御部２０は、第２シーケンス又は第３シーケンスを実行している場合、上下限モードで動作中と判定する。そして、シーケンス制御部２０は、第１シーケンスを実行中の場合は上限モードで動作中と判定してステップＳ６２へ進み、第２シーケンス又は第３シーケンスを実行中の場合は上下限オードで動作中と判定してステップＳ６３へ進む。
【００６１】
ステップＳ６２では、上限モードでの処理を実行する。この上限モード、すなわち第１シーケンスでの処理動作に関して、図８，図１１を用いて説明する。まず、図１１を用いて説明する。
【００６２】
タイミングｔ１に示すように、シーケンス制御部２０は、第１シーケンスの実行を開始すると、第１トランジスタ１６０〜第３トランジスタ１８０の全てがオンするようにオン指示信号を出力する。
【００６３】
また、タイミングｔ１〜ｔ３に示すように、シーケンス制御部２０は、第１シーケンスを実行中にＡＤ値が第１制御上限に達するまで、第１トランジスタ１６０〜第３トランジスタ１８０の全てがオン状態を継続するようにオン指示信号を出力する。つまり、シーケンス制御部２０は、出力制御部２３の出力がハイレベルの間は、第１トランジスタ１６０〜第３トランジスタ１８０の全てがオン状態を継続するようにオン指示信号を出力する。これによって、第１ポートｐ１，昇圧電源１５０，通常電源１４０の夫々は、オン状態となる。
【００６４】
また、タイミングｔ３に示すように、シーケンス制御部２０は、第１シーケンスを実行中にＡＤ値が第１制御上限に達すると、シーケンスの切り換えと判断する。つまり、シーケンス制御部２０は、出力制御部２３の出力がハイレベルからローレベルになると、第１シーケンスから第２シーケンスへの切り換えタイミングであると判断する。
【００６５】
そして、シーケンス制御部２０は、第２シーケンスへの切り換えと判断すると、第１トランジスタ１６０，第２トランジスタ１７０がオフするようにオフ指示信号を出力すると共に、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。これによって、第１ポートｐ１は、オン状態を継続し、昇圧電源１５０，通常電源１４０の夫々は、オフ状態となる。なお、第１シーケンスは、このように動作するように定義されている。
【００６６】
この結果、タイミングｔ１〜ｔ３の間は、第１シーケンスが実行されている第１領域となる。また、燃料噴射制御装置は、シーケンス制御部２０が第１シーケンスを実行することによって、インジェクタ２００を速やかに開弁させるためのブースト制御を行うことになる。
【００６７】
次に、図８を用いて説明する。ステップＳ６２１では、ＡＤ値≧制御上限であるか否かを判定する。ここでの制御上限とは、第１制御上限である。シーケンス制御部２０は、ＡＤ値≧制御上限であると判定するとステップＳ６２２へ進む。また、シーケンス制御部２０は、ＡＤ値≧制御上限でないと判定すると、ステップＳ６２２，Ｓ６２３での処理を行うことなく、図７に示すフローチャートの処理に戻ってステップＳ６４へ進む。
【００６８】
つまり、シーケンス制御部２０は、異常が生じていない場合、タイミングｔ３に達するまでは、ＡＤ値≧制御上限でないと判定することになる。しかしながら、シーケンス制御部２０は、異常が生じている場合、タイミングｔ３よりも前に、ＡＤ値≧制御上限であると判定することもある。
【００６９】
ステップＳ６２２では、シーケンスを更新する。このとき、シーケンス制御部２０は、実行するシーケンスを第２シーケンスに変更する。そして、ステップＳ６２３では、出力値を更新する。シーケンス制御部２０は、第２シーケンスに対応した出力値に更新する。つまり、シーケンス制御部２０は、第２シーケンスに対応した出力値を用いるように設定する。
【００７０】
ステップＳ６３では、上下限モードでの処理を実行する。この上下限モード、すなわち第２シーケンス及び第３シーケンスでの処理動作に関して、図９，図１１を用いて説明する。
【００７１】
まず、図１１を用いて説明する。タイミングｔ３〜ｔ５に示すように、シーケンス制御部２０は、第２シーケンスの実行を開始すると、第１トランジスタ１６０がオフ状態を継続するようにオフ信号を出力する。また、シーケンス制御部２０は、第２シーケンスの実行を開始すると、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。これによって、第１ポートｐ１は、オン状態を継続し、昇圧電源１５０は、オフ状態を継続することになる。
【００７２】
更に、シーケンス制御部２０は、第２シーケンスの実行を開始すると、ＡＤ値を第２制御上限と第２制御下限との間の値とするために、第２トランジスタ１７０がオフ及びオフするようにオン指示信号とオフ指示信号を出力する。具体的には、シーケンス制御部２０は、ＡＤ値が大きくなり第２制御上限に達すると出力制御部２３の出力がローレベルとなるため、これに応じて第２トランジスタ１７０がオフするようにオフ指示信号を出力する。そして、シーケンス制御部２０は、ＡＤ値が小さくなり第２制御下限に達すると出力制御部２３の出力がハイレベルとなるため、これに応じて第２トランジスタ１７０がオンするようにオン指示信号を出力する。これによって、通常電源１４０は、オン状態とオフ状態とが切り換わることになる。言い換えると、シーケンス制御部２０は、出力制御部２３の出力に応じて、第２トランジスタ１７０をデューティ駆動する。
【００７３】
そして、シーケンス制御部２０は、第２シーケンスの実行を開始して所定時間が経過すると、第２シーケンスから第３シーケンスへの切り換えタイミングであると判断する。シーケンス制御部２０は、第３シーケンスへの切り換えと判断すると、第１トランジスタ１６０，第２トランジスタ１７０がオフするようにオフ指示信号を出力すると共に、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。なお、第２シーケンスは、このように動作するように定義されている。
【００７４】
この結果、タイミングｔ３〜ｔ５の間は、第２シーケンスが実行されている第２領域となる。また、燃料噴射制御装置は、シーケンス制御部２０が第２シーケンスを実行することによって、インジェクタ２００を所定の開弁位置までスムーズに移動させるためのピックアップ制御を行うことになる。
【００７５】
また、タイミングｔ６〜ｔ７に示すように、シーケンス制御部２０は、第３シーケンスの実行を開始すると、第１トランジスタ１６０がオフ状態を継続するようにオフ信号を出力する。また、シーケンス制御部２０は、第３シーケンスの実行を開始すると、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。これによって、第１ポートｐ１は、オン状態を継続し、昇圧電源１５０は、オフ状態を継続することになる。
【００７６】
更に、シーケンス制御部２０は、第３シーケンスの実行を開始すると、ＡＤ値を第３制御上限と第３制御下限との間の値とするために、第２トランジスタ１７０がオフ及びオフするようにオン指示信号とオフ指示信号を出力する。具体的には、シーケンス制御部２０は、ＡＤ値が大きくなり第３制御上限に達すると出力制御部２３の出力がローレベルとなるため、これに応じて第２トランジスタ１７０がオフするようにオフ指示信号を出力する。そして、シーケンス制御部２０は、ＡＤ値が小さくなり第３制御下限に達すると出力制御部２３の出力がハイレベルとなるため、これに応じて第２トランジスタ１７０がオンするようにオン指示信号を出力する。これによって、通常電源１４０は、オン状態とオフ状態とが切り換わることになる。言い換えると、シーケンス制御部２０は、出力制御部２３の出力に応じて、第２トランジスタ１７０をデューティ駆動する。
【００７７】
なお、タイマ４０は、自身で計測した時間がＣＰＵ１０から設定された噴射終了時刻に一致すると、アンド回路２４に対してディセーブル信号を出力する。これによって、タイミングｔ７に示すように、第１トランジスタ１６０〜第３トランジスタ１８０は、全てがオフとなる。つまり、シーケンス制御部２０は、実行していた第３シーケンスを終了する。なお、第３シーケンスは、このように動作するように定義されている。
【００７８】
この結果、タイミングｔ６〜ｔ７の間は、第３シーケンスが実行されている第３領域となる。また、燃料噴射制御装置は、シーケンス制御部２０が第３シーケンスを実行することによって、インジェクタ２００の開弁状態を保持させるためのホールド制御を行うことになる。
【００７９】
次に、図９を用いて説明する。ステップＳ６３１では、ＡＤ≧制御上限であるか否かを判定する。なお、ここでの制御上限は、第２シーケンスを実行中の場合と、第３シーケンスと実行中の場合とで異なる。第２シーケンスを実行中の場合、制御上限は第２制御上限値となる。一方、第３シーケンスを実行中の場合、制御上限は第３制御上限値となる。そして、シーケンス制御部２０は、ＡＤ値≧制御上限であると判定するとステップＳ６３２へ進み、ＡＤ値≧制御上限でないと判定するとステップＳ６３３へ進む。
【００８０】
ステップＳ６３３では、ＡＤ≦制御下限であるか否かを判定する。なお、ここでの制御下限は、第２シーケンスを実行中の場合と、第３シーケンスと実行中の場合とで異なる。第２シーケンスを実行中の場合、制御下限は第２制御下限値となる。一方、第３シーケンスを実行中の場合、制御下限は第３制御した限値となる。そして、シーケンス制御部２０は、ＡＤ値≦制御下限であると判定するとステップＳ６３４へ進み、ＡＤ値≦制御下限でないと判定するとステップＳ６３５へ進む。
【００８１】
ステップＳ６３２では、オフ出力する。このとき、シーケンス制御部２０は、第２トランジスタ１７０がオフするようにオフ指示信号を出力する。一方、ステップＳ６３４では、オン出力する。シーケンス制御部２０は、第２トランジスタ１７０がオンするようにオン指示信号を出力する。なお、ステップＳ６３５では、出力保持する。つまり、シーケンス制御部２０は、ステップＳ６３１及びステップＳ６３３のいずれにおいてもＮＯ判定した場合、第２トランジスタ１７０をオンからオフ、及び第２トランジスタ１７０をオフからオンさせる必要がないとみなす。このため、シーケンス制御部２０は、現在の指示信号を出力し続ける。そして、シーケンス制御部２０は、ステップＳ６３２，Ｓ６３４，Ｓ６３５の夫々の処理が終了すると、図７に示すフローチャートの処理に戻ってステップＳ６４へ進む。
【００８２】
ステップＳ６４では、シーケンス切り換えを判定する。シーケンス制御部２０は、実行するシーケンスを切り換えるか否かを判定する。そして、シーケンス制御部２０は、切り換えと判定した場合はステップＳ６５へ進み、継続と判定した場合はステップＳ６６へ進む。
【００８３】
ステップＳ６５では、ＤＭＡイベント通知処理を行う。このとき、シーケンス制御部２０は、ＤＭＡコントローラ５０に対して、ＡＤＣ３０のレジスタ３３に設定されている異常検出用閾値を切り換えるように指示する。そして、ＤＭＡコントローラ５０は、異常検出用閾値の切り換え指示がなされると、図１０に示すフローチャートの処理を実行する。つまり、ＤＭＡコントローラ５０は、異常検出用閾値の切り換え指示がなされると、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定する。
【００８４】
例えば、メモリ６０には、異常検出用閾値が順番に記憶されている。そして、ＤＭＡコントローラ５０は、異常検出用閾値の切り換え指示がなされるたびに、メモリ６０に記憶された異常検出用閾値を読み出して、ＡＤＣ３０のレジスタ３３に書き込む。これによって、ＤＭＡコントローラ５０は、シーケンスに合致した異常検出用閾値をＡＤＣ３０のレジスタ３３に設定することができる。
【００８５】
このようにすることで、第１シーケンスを実行中、ＡＤＣ３０のレジスタ３３には、第１上限閾値と第１下限閾値が設定される。そして、第１シーケンスから第２シーケンスに切り換わると、ＡＤＣ３０のレジスタ３３には、第１上限閾値と第２下限閾値が設定される。つまり、第１シーケンスから第２シーケンスに切り換わると、ＡＤＣ３０のレジスタ３３は、第１下限閾値から第２下限閾値に切り換えられる。そして、第２シーケンスから第３シーケンスに切り換わると、ＡＤＣ３０のレジスタ３３には、第１上限閾値と第２下限閾値が設定される。
【００８６】
なお、ステップＳ６５では、シーケンス制御部２０は、ＤＭＡコントローラ５０に対して起動を指示するようにしてもよい。そして、ＤＭＡコントローラ５０は、起動指示がなされると起動して、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定する。つまり、シーケンス制御部２０は、異常検出用閾値の切り換え指示として、起動指示を行う。
【００８７】
ステップＳ６６では、終了判定を行う。シーケンス制御部２０は、タイマ４０からディセーブル信号が出力されたか否かに基づいて終了判定を行う。シーケンス制御部２０は、タイマ４０からディセーブル信号が出力された場合は終了と判定する。この場合、シーケンス制御部２０は、シーケンスの実行を終了することになる。また、シーケンス制御部２０は、タイマ４０からディセーブル信号が出力されていない場合、すなわちイネーブル信号が出力された場合は継続と判定する。この場合、シーケンス制御部２０は、次回のＡＤ値の入力に伴って、図７に示すフローチャートの処理を開始する。
【００８８】
ここまでに説明したように、燃料噴射制御装置は、第１領域では、異常検出用閾値の上限閾値を第１上限閾値、下限閾値を第１下限閾値に設定して動作を開始する。このため、第１領域では、第１上限閾値と第１下限閾値との間が正常領域となる。つまり、第１領域では、ＡＤ値が第１上限閾値から第１下限閾値との間にあると正常とみなすことができ、ＡＤ値が第１上限閾値と第１下限閾値との間にないと異常とみなすことができる。
【００８９】
また、燃料噴射制御装置は、噴射波形が第１制御上限に達するとことにより、第１領域から第２領域への変更とし、あわせてＤＭＡイベント通知を行う。燃料噴射制御装置は、このＤＭＡイベント通知により異常検出用閾値の上限閾値を第１上限閾値、下限閾値を第２下限閾値に書き換える。このため、第２領域では、第１上限閾値と第２下限閾値との間が正常領域となる。つまり、第２領域では、ＡＤ値が第１上限閾値から第２下限閾値との間にあると正常とみなすことができ、ＡＤ値が第１上限閾値と第２下限閾値との間にないと異常とみなすことができる。
【００９０】
そして、燃料噴射制御装置は、第２領域において所定時間が経過すると、第２領域から第３領域への変更とし、あわせてＤＭＡイベント通知を行う。燃料噴射制御装置は、このＤＭＡイベント通知により異常検出用閾値の上限閾値を第１上限閾値、下限閾値を第２下限閾値に書き換える。なお、本実施形態では、第２領域と第３領域とで同じ異常検出用閾値を採用している。このため、第３領域では、第２領域と同様に、第１上限閾値と第２下限閾値との間が正常領域となる。
【００９１】
このように、燃料噴射制御装置は、シーケンス制御部２０と、ＡＤＣ３０と、ＤＭＡコントローラ５０とを含んで構成されたマイコン１００で燃料噴射を制御するものである。ＡＤＣ３０は、制御電流をアナログからＡＤ値に変換してシーケンス制御部２０に出力する。これによって、シーケンス制御部２０は、制御電流に基づいて、実行しているシーケンスに対応した通電状態とすると共に、実行するシーケンスを切り換えることで通電状態を変更することができる。つまり、燃料噴射制御装置は、制御電流に基づいてインジェクタ２００への通電状態を変更することで、インジェクタ２００からの燃料噴射を制御することができる。
【００９２】
また、ＡＤＣ３０は、ＡＤ値と異常検出用閾値とを比較してＡＤ値が異常検出用閾値に達しているか否かによって異常検出を行う。しかしながら、燃料噴射制御装置は、シーケンス制御部２０が実行するシーケンスを切り換えることで、インジェクタ２００への通電状態を変更する。このようにインジェクタ２００への通電状態を変更した場合、異常が生じていないにもかかわらず、ＡＤ値は、異常検出用閾値に達することもありうる。これによって、ＡＤＣ３０は誤検出してしまう。
【００９３】
そこで、燃料噴射制御装置は、ＤＭＡコントローラ５０が、シーケンス制御部２０によるシーケンスの切り換えに応じて異常検出用閾値を変更する。そして、ＡＤＣ３０は、ＡＤ値とＤＭＡコントローラ５０によって変更された異常検出用閾値とを比較する。これによって、燃料噴射制御装置は、インジェクタ２００への通電状態を変更した場合であっても、ＡＤＣ３０によって異常検出を行うことができる。このように、燃料噴射制御装置は、専用ＩＣを用いることなく、噴射制御と異常検出を実現できる。
【００９４】
なお、本実施形態においては、第１シーケンス〜第３シーケンスの三つのシーケンスを実行可能な燃料噴射制御装置を採用した。しかしながら、本発明はこれに限定されない。本発明の燃料噴射制御装置は、複数のシーケンスを実行可能なものであれば採用できる。よって、本発明の燃料噴射制御装置は、二つのシーケンスを実行するものや、四つ以上のシーケンスを実行するものであっても目的を達成できる。例えば、本発明の燃料噴射制御装置は、二つのシーケンスを実行する場合、一つ目のシーケンスを実行することでブースト制御、二つ目のシーケンスを実行することでホールド制御するものを採用できる。
【００９５】
また、本実施形態においては、ＤＭＡコントローラ５０が異常検出用閾値を変更する例を採用した。しかしながら、本発明はこれに限定されない。本発明は、シーケンス制御部２０によるシーケンスの切り換えに応じて、ＡＤＣ３０においてＡＤ値と比較される異常検出用閾値を変更可能なものであれば目的を達成できる。
【００９６】
以上、本発明の好ましい実施形態について説明した。しかしながら、本発明は、上述した実施形態に何ら制限されることはなく、本発明の趣旨を逸脱しない範囲において、種々の変形が可能である。
【００９７】
以下に、本発明の実施形態２〜４に関して説明する。なお、実施形態１〜４は、夫々単独で実施することも可能であるが、適宜組み合わせて実施することも可能である。本発明は、実施形態において示された組み合わせに限定されることなく、種々の組み合わせによって実施可能である。
【００９８】
（第２実施形態）
次に、図１２を用いて、第２実施形態における燃料噴射制御装置に関して説明する。なお、本実施形態の燃料噴射制御装置は、第１実施形態の燃料噴射制御装置と構成が同じである。よって、本実施形態の燃料噴射制御装置におけるブロック図は省略する。本実施形態の燃料噴射制御装置は、異常検出用閾値を変更する処理内容が第１実施形態の燃料噴射制御装置と異なる。なお、第２実施形態のメモリ６０には、第１上限閾値、第１下限閾値、第２下限閾値に加えて、第２上限閾値が記憶されている。
【００９９】
シーケンス制御部２０は、第１シーケンスの実行を開始すると、第１実施形態で説明した動作と同様に、タイミングｔ１１〜ｔ１２に示すように動作する。このとき、レジスタ３３の異常検出用閾値は、上限閾値が第１上限閾値、下限閾値が第１下限閾値に設定されている。そして、シーケンス制御部２０は、タイミングｔ１２に示すように、ＡＤ値が第１制御上限に達すると、第１シーケンスから第２シーケンスへの切り換えタイミングであると判断する。このとき、シーケンス制御部２０は、ＤＭＡコントローラ５０に対して、ＡＤＣ３０のレジスタ３３に設定されている異常検出用閾値を切り換えるように指示する。
【０１００】
ＤＭＡコントローラ５０は、異常検出用閾値の切り換え指示がなされると、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定する。これによって、第２シーケンスの実行中におけるレジスタ３３の異常検出用閾値は、上限閾値が第１上限閾値、下限閾値が第２下限閾値に書き換えられる。このようにすることで、第２シーケンスが実行されている間、アナログウォッチドッグ部３２は、ＡＤ値と第１上限閾値を比較すると共に、ＡＤ値と第２下限閾値とを比較することになる。
【０１０１】
そして、タイミングｔ１２〜ｔ１３に示すように、シーケンス制御部２０は、第２シーケンスの実行を開始すると、第１トランジスタ１６０及び第２トランジスタ１７０がオフ状態を継続するようにオフ信号を出力する。また、シーケンス制御部２０は、第２シーケンスの実行を開始すると、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。これによって、第１ポートｐ１は、オン状態を継続し、昇圧電源１５０と通常電源１４０は、オフ状態を継続することになる。
【０１０２】
また、シーケンス制御部２０は、第２シーケンスの実行を開始して所定時間が経過すると、第２シーケンスから第３シーケンスへの切り換えタイミングであると判断する。シーケンス制御部２０は、第３シーケンスへの切り換えと判断すると、第１トランジスタ１６０がオフ状態を継続するようにオフ指示信号を出力する。また、シーケンス制御部２０は、シーケンスの切り換えと判断すると、第２トランジスタ１７０がオンするようにオン指示信号を出力する。そして、シーケンス制御部２０は、シーケンスの切り換えと判断すると、第３トランジスタ１８０がオン状態を継続するようにオン指示信号を出力する。
【０１０３】
更に、シーケンス制御部２０は、第３シーケンスへの切り換えと判断すると、ＤＭＡコントローラ５０に対して、ＡＤＣ３０のレジスタ３３に設定されている異常検出用閾値を切り換えるように指示する。
【０１０４】
ＤＭＡコントローラ５０は、異常検出用閾値の切り換え指示がなされると、メモリ６０に記憶された異常検出用閾値をＡＤＣ３０のレジスタ３３に設定する。これによって、第３シーケンスの実行中におけるレジスタ３３の異常検出用閾値は、上限閾値が第２上限閾値、下限閾値が第２下限閾値に書き換えられる。つまり、本実施形態においては、上限閾値及び下限閾値の両方を変更することになる。なお、本実施形態の第２シーケンスは、このように動作するように定義されている。
【０１０５】
この結果、タイミングｔ１２〜ｔ１３の間は、第２シーケンスが実行されている第２領域となる。また、燃料噴射制御装置は、シーケンス制御部２０が第２シーケンスを実行することによって、インジェクタ２００への通電を停止するオフ制御を行うことになる。
【０１０６】
また、このようにすることで、第３シーケンスが実行されている間、アナログウォッチドッグ部３２は、ＡＤ値と第２上限閾値を比較すると共に、ＡＤ値と第２下限閾値とを比較することになる。詳しい説明は省略するが、第４シーケンスが実行されている間に関しても、アナログウォッチドッグ部３２は、ＡＤ値と第２上限閾値を比較すると共に、ＡＤ値と第２下限閾値とを比較することになる。
【０１０７】
なお、図１２の第３領域（タイミングｔ１３〜ｔ１４）は、本実施形態の第３シーケンスが実行される領域である。そして、本実施形態の第３シーケンスは、第１実施形態の第２シーケンスと同様である。ただし、本実施形態の第３シーケンスと第１実施形態の第２シーケンスとは、異常検出用閾値の上限値が異なる。また、図１２の第４領域（タイミングｔ１４〜ｔ１５）は、本実施形態の第４シーケンスが実行される領域である。そして、本実施形態の第４シーケンスは、第１実施形態の第３シーケンスに相当する。ただし、本実施形態の第４シーケンスと第１実施形態の第３シーケンスとは、異常検出用閾値の上限値が異なる。このため、第３シーケンス及び第４シーケンスに関連する詳しい説明は省略する。
【０１０８】
従って、第１領域では、第１上限閾値と第１下限閾値との間が正常領域となる。第２領域では、第１上限閾値と第２下限閾値との間が正常領域となる。そして、第３領域及び第４領域では、第２上限閾値と第２下限閾値との間が正常領域となる。
【０１０９】
この第２実施形態のように、異常検出用閾値を変更する機会を増やすことで、アナログウォッチドッグ部３２における誤検出を抑制でき、より一層正確な異常検出を実現できる。
【０１１０】
なお、ＤＭＡコントローラ５０は、シーケンス制御部２０によるシーケンスが切り換わる毎に、異常検出用閾値を各シーケンスに対応した互いに異なる値に変更するものであってもよい。例えば、図１２において、第３シーケンスから第４シーケンスに切り換わった際にも、異常検出用閾値を変更する。これによって、異常検出の精度をより一層向上させることができる。
【０１１１】
（第３実施形態）
次に、図１３を用いて、第３実施形態における燃料噴射制御装置に関して説明する。なお、本実施形態の燃料噴射制御装置は、第１実施形態の燃料噴射制御装置と構成が同じである。よって、本実施形態の燃料噴射制御装置におけるブロック図は省略する。本実施形態の燃料噴射制御装置は、ＡＤＣ３０に加えてシーケンス制御部２０でも異常検出を行う点が第１実施形態の燃料噴射制御装置と異なる。また、ここでは、図７に示すフローチャートも用いつつ説明する。
【０１１２】
シーケンス制御部２０は、ＡＤＣ３０から出力されたＡＤ値が入力されるたびに、ＡＤ上限チェックを行う。例えば、シーケンス制御部２０は、図７に示すフローチャートの処理を開始すると、まず、ＡＤ上限チェックを行う。
【０１１３】
なお、図１３に示すように、ＡＤ上限値は、第１上限閾値よりも大きい値であり、最大上限値である。また、ＡＤ上限値は、通常、ＡＤ値がとりうる値を超えた値である。つまり、ＡＤ上限値は、第１上限閾値、第１下限閾値、第２下限閾値のいずれの異常検出用閾値よりも大きい値である。よって、ＡＤ値がＡＤ上限値に達している場合、燃料噴射制御装置は、インジェクタ２００への通電をできるだけ早く停止させることが望ましい。
【０１１４】
そこで、シーケンス制御部２０は、ＡＤ値とＡＤ上限値と比較する。言い換えると、シーケンス制御部２０は、ＡＤ値がＡＤ上限値に達していないことを確認する。そして、シーケンス制御部２０は、ＡＤ値がＡＤ上限値に達していると判定した場合、ステップＳ６１に進む。また、シーケンス制御部２０は、ＡＤ値がＡＤ上限値に達していると判定した場合、インジェクタ２００への通電を停止させる。シーケンス制御部２０は、第３トランジスタ１８０をオフさせることでインジェクタ２００への通電を停止することができる。
【０１１５】
上述のように、燃料噴射制御装置は、ＣＰＵ１０がアナログウォッチドッグ部３２からの異常通知に応じて、インジェクタ２００への通電を停止させることができる。しかしながら、この場合、燃料噴射制御装置は、アナログウォッチドッグ部３２からの異常通知に応じて、ＣＰＵ１０がシーケンス制御部２０に対してインジェクタ２００への通電停止を指示する。そして、燃料噴射制御装置は、ＣＰＵ１０からの指示に応じて、シーケンス制御部２０がインジェクタ２００への通電を停止させる。
【０１１６】
これに対して、ＡＤ上限チェックの結果に応じてインジェクタ２００への通電を停止させる場合、燃料噴射制御装置は、シーケンス制御部２０がＡＤ値とＡＤ上限値と比較する。そして、シーケンス制御部２０は、ＡＤ値がＡＤ上限値に達していることを条件に、インジェクタ２００への通電を停止させる。この場合、燃料噴射制御装置は、アナログウォッチドッグ部３２による異常検出結果に応じてインジェクタ２００への通電を停止させるよりも早くインジェクタ２００への通電を停止させることができる。よって、本実施形態の燃料噴射制御装置は、異常検出機能の信頼性を向上することができる。
【０１１７】
（第４実施形態）
次に、図１４を用いて、第４実施形態における燃料噴射制御装置に関して説明する。なお、図１４における一点鎖線は、例えば第２ポートｐ２がグランドショートしている場合の制御電流の波形、及び昇圧電源の状態を示している。
【０１１８】
また、本実施形態の燃料噴射制御装置は、上述の実施形態の燃料噴射制御装置と構成が同じである。よって、本実施形態の燃料噴射制御装置におけるブロック図は省略する。本実施形態の燃料噴射制御装置は、ＡＤ値と閾値との比較による異常検出に加えて、パルス幅による異常検出を行う点が上述の実施形態の燃料噴射制御装置と異なる。
【０１１９】
シーケンス制御部２０は、上述のように、第１シーケンスを実行することによって、ＡＤ値が第１制御上限に達するまでインジェクタ２００への通電を行い、ＡＤ値が第１制御上限に達するとインジェクタ２００への通電を停止するものである。
【０１２０】
更に、シーケンス制御部２０は、パルス幅検出機能を有している。言い換えると、シーケンス制御部２０は、インジェクタ２００への通電を行っている通電時間を検出する機能と有している。また、シーケンス制御部２０は、第１トランジスタ１６０、又は第２トランジスタ１７０がオン状態で継続している時間を検出する機能を有している、と言い換えることもできる。また、シーケンス制御部２０は、昇圧電源、又は通常電源の波形チェック機能を有している、と言い換えることもできる。
【０１２１】
また、シーケンス制御部２０は、インジェクタ２００への通電を行っている通電時間が所定値に達したか否かによって異常検出を行うものである。シーケンス制御部２０は、通電時間が所定値に達していない場合は正常であると判定し、通電時間が所定値に達すると異常であると判定する。なお、この所定値は、パルス幅用閾値と称することもできる。また、パルス幅用閾値は、正常時のブースト制御時における通電時間よりも長い時間を示す値である。
【０１２２】
例えば、図１４の一点差線で示すように、例えば第２ポートｐ２がグランドショートしている場合、制御電流が第１制御上限に達しないため、昇圧電源のオン状態が継続することになる。つまり、通電時間は、正常時間を越えて、パルス幅用閾値にまで達することになる。このような場合、シーケンス制御部２０は、通電時間がパルス幅用閾値に達したとことを検出して異常であると判定する。
【０１２３】
なお、この異常検出に用いられる所定値は、レジスタなどに記憶しておくことができる。よって、シーケンス制御部２０は、インジェクタ２００への通電を行っている通電時間を検出すると共に、レジスタからパルス幅用閾値を読み出して、これらを比較する。
【０１２４】
これによって、燃料噴射制御装置は、ブースト制御に対応するシーケンスを実行している際に、オープン異常を検出することができる。
【符号の説明】
【０１２５】
１０  ＣＰＵ、２０  シーケンス制御部、２１  制御データ設定部、２２  比較器、２３  出力制御部、２４  アンド回路、２５  出力部、３０  ＡＤＣ、３１  変換部、３２  アナログウォッチドッグ部、３３  レジスタ、４０  タイマ、５０  ＤＭＡコントローラ、６０  メモリ、１００  マイコン、１１０  第１ドライバ、１２０  第２ドライバ、１３０  第３ドライバ、１４０  通常電源、１５０  昇圧電源、１６０  第１トランジスタ、１７０  第２トランジスタ、１８０  第３トランジスタ、１９０  電流検出抵抗、２００  インジェクタ、ｐ１  第１ポート、ｐ２  第２ポート
【図１】
2015102052.tif 000003
【図２】
2015102052.tif 000004
【図３】
2015102052.tif 000005
【図４】
2015102052.tif 000006
【図５】
2015102052.tif 000007
【図６】
2015102052.tif 000008
【図７】
2015102052.tif 000009
【図８】
2015102052.tif 000010
【図９】
2015102052.tif 000011
【図１０】
2015102052.tif 000012
【図１１】
2015102052.tif 000013
【図１２】
2015102052.tif 000014
【図１３】
2015102052.tif 000015
【図１４】
2015102052.tif 000016