(57)【特許請求の範囲】
【請求項１】
通信線（ＬＣ）を介して通信可能に接続された信号処理装置（３０）と電子制御装置（１１）とを備え、
前記電子制御装置は、
一定周期のクロックを生成する制御装置側クロック生成手段（２６，２７）と、
前記制御装置側クロック生成手段により生成されるクロックである制御装置側クロックによって動作する情報処理手段（２５）と、を備え、
前記信号処理装置は、
センサ（ＰＳ）が出力するセンサ信号をＡ／Ｄ変換するためのＡ／Ｄ変換器（４１）と、
前記Ａ／Ｄ変換器に前記センサ信号のＡ／Ｄ変換を所定のＡ／Ｄ変換周期で実施させるＡ／Ｄ変換制御手段（４３〜４７）と、
前記Ａ／Ｄ変換制御手段が前記Ａ／Ｄ変換周期を計測するために用いるクロックである信号処理装置側クロックを生成する信号処理装置側クロック生成手段（３２，３４）と、を備え、
前記信号処理装置は、車両の内燃機関に燃料を噴射するインジェクタに設けられており、
前記信号処理装置が、前記Ａ／Ｄ変換器による前記センサ信号のＡ／Ｄ変換結果を表すデータを、前記電子制御装置へ送信し、前記電子制御装置の前記情報処理手段が、前記信号処理装置からの前記データを用いて、制御対象である前記インジェクタを制御するための処理を行う、制御システム（１０）において、
前記Ａ／Ｄ変換制御手段が前記信号処理装置側クロックを用いて計測する前記Ａ／Ｄ変換周期を、前記制御装置側クロックの周期を真として、前記Ａ／Ｄ変換周期の設計上の設定値である設定周期に補正する周期補正手段（Ｓ１１０，Ｓ１３０，Ｓ３１０〜Ｓ３８０）、を備え、
前記Ａ／Ｄ変換制御手段は、
前記信号処理装置側クロックを、記憶部（４４，４５）に記憶されているクロックカウント数だけカウントした時間を、前記Ａ／Ｄ変換周期として計測するようになっており、
前記周期補正手段は、
前記信号処理装置に設けられ、第１信号と第２信号とからなる特定信号であって、前記第１信号から前記第２信号までの時間間隔が、前記信号処理装置側クロックを予め定められた所定数だけカウントした時間となる特定信号を、前記通信線に出力する第１手段（Ｓ１１０）と、
前記電子制御装置に設けられ、前記信号処理装置によって前記通信線に出力された前記特定信号における前記第１信号から前記第２信号までの時間間隔を、前記制御装置側クロックを用いて計測する第２手段（Ｓ３２０〜Ｓ３４０）と、
前記電子制御装置に設けられ、前記第２手段による前記時間間隔の計測結果と、前記信号処理装置側クロックの周期の設計上の設定値に前記所定数を乗じた時間である設定時間間隔との比率に基づいて、前記Ａ／Ｄ変換制御手段が計測する前記Ａ／Ｄ変換周期を前記設定周期にするための前記クロックカウント数を算出する第３手段（Ｓ３５０，Ｓ３６０）と、
前記電子制御装置に設けられ、前記第３手段により算出された前記クロックカウント数を表す周期情報を、前記信号処理装置に送信する第４手段（Ｓ３７０，Ｓ３８０）と、
前記信号処理装置に設けられ、前記記憶部に記憶される前記クロックカウント数を、前記電子制御装置から当該信号処理装置に送信された前記周期情報が表すクロックカウント数に設定する第５手段（Ｓ１３０）と、
を備えることを特徴とする制御システム。
【請求項２】
請求項１に記載の制御システムにおいて、
前記特定信号は、１つのパルスであると共に、そのパルスの立ち上がりエッジと立ち下がりエッジとのうち、先に発生する方のエッジが前記第１信号であり、後に発生する方のエッジが前記第２信号であり、
前記第２手段は、前記特定信号のパルス幅を前記時間間隔として計測すること、
を特徴とする制御システム。
【請求項３】
通信線（ＬＣ）を介して通信可能に接続された信号処理装置（３０）と電子制御装置（１１）とを備え、
前記電子制御装置は、
一定周期のクロックを生成する制御装置側クロック生成手段（２６，２７）と、
前記制御装置側クロック生成手段により生成されるクロックである制御装置側クロックによって動作する情報処理手段（２５）と、を備え、
前記信号処理装置は、
センサ（ＰＳ）が出力するセンサ信号をＡ／Ｄ変換するためのＡ／Ｄ変換器（４１）と、
前記Ａ／Ｄ変換器に前記センサ信号のＡ／Ｄ変換を所定のＡ／Ｄ変換周期で実施させるＡ／Ｄ変換制御手段（４３〜４７）と、
前記Ａ／Ｄ変換制御手段が前記Ａ／Ｄ変換周期を計測するために用いるクロックである信号処理装置側クロックを生成する信号処理装置側クロック生成手段（３２，３４）と、を備え、
前記信号処理装置は、車両の内燃機関に燃料を噴射するインジェクタに設けられており、
前記信号処理装置が、前記Ａ／Ｄ変換器による前記センサ信号のＡ／Ｄ変換結果を表すデータを、前記電子制御装置へ送信し、前記電子制御装置の前記情報処理手段が、前記信号処理装置からの前記データを用いて、制御対象である前記インジェクタを制御するための処理を行う、制御システム（１０）において、
前記Ａ／Ｄ変換制御手段が前記信号処理装置側クロックを用いて計測する前記Ａ／Ｄ変換周期を、前記制御装置側クロックの周期を真として、前記Ａ／Ｄ変換周期の設計上の設定値である設定周期に補正する周期補正手段（Ｓ４２０，Ｓ５１０〜Ｓ５７０）、を備え、
前記Ａ／Ｄ変換制御手段は、
前記信号処理装置側クロックを、記憶部（４４，４５）に記憶されているクロックカウント数だけカウントした時間を、前記Ａ／Ｄ変換周期として計測するようになっており、
前記周期補正手段は、
前記電子制御装置に設けられ、第１信号と第２信号とからなる特定信号であって、前記第１信号から前記第２信号までの時間間隔が、前記制御装置側クロックを予め定められた設定数だけカウントした時間となる特定信号を、前記通信線に出力する第１の手段（Ｓ４２０）と、
前記信号処理装置に設けられ、前記電子制御装置によって前記通信線に出力された前記特定信号における前記第１信号から前記第２信号までの時間間隔を、前記信号処理装置側クロックを用いて計測する第２の手段（Ｓ５１０〜Ｓ５４０）と、
前記信号処理装置に設けられ、前記第２の手段による前記時間間隔の計測結果と、前記制御装置側クロックの周期の設計上の設定値に前記設定数を乗じた時間である設定時間間隔との比率に基づいて、前記Ａ／Ｄ変換制御手段が計測する前記Ａ／Ｄ変換周期を前記設定周期にするための前記クロックカウント数を算出する第３の手段（Ｓ５５０）と、
前記信号処理装置に設けられ、前記記憶部に記憶される前記クロックカウント数を、前記第３の手段により算出されたクロックカウント数に設定する第４の手段（Ｓ５６０，Ｓ５７０）と、
を備えることを特徴とする制御システム。
【請求項４】
請求項３に記載の制御システムにおいて、
前記特定信号は、１つのパルスであると共に、そのパルスの立ち上がりエッジと立ち下がりエッジとのうち、先に発生する方のエッジが前記第１信号であり、後に発生する方のエッジが前記第２信号であり、
前記第２の手段は、前記特定信号のパルス幅を前記時間間隔として計測すること、
を特徴とする制御システム。
【請求項５】
請求項１ないし請求項４の何れか１項に記載の制御システムにおいて、
前記インジェクタは複数あり、
前記信号処理装置は、前記複数のインジェクタ（１〜４）の各々に設けられており、
前記センサは、燃料ポンプ（２１）によって圧送される燃料を蓄える蓄圧容器（１５）の燃料出口から前記各インジェクタの噴射口までの燃料通路における所定位置にそれぞれ設けられ、該燃料通路の燃料圧力に応じた電圧のセンサ信号を出力する燃料圧力センサであり、
前記電子制御装置の前記情報処理手段は、
前記各インジェクタのうち、燃料噴射を実施したインジェクタの前記信号処理装置から送信されてきた前記データと、燃料噴射を実施していない他のインジェクタの前記信号処理装置から送信されてきた前記データとの、差分に基づいて、前記燃料噴射を実施したインジェクタの噴射動作による燃料圧力の変動状態を検出し、その検出結果に基づいて、前記燃料噴射を実施したインジェクタに対する噴射指令を補正する処理を行うこと、
を特徴とする制御システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、センサ信号をＡ／Ｄ変換する信号処理装置と電子制御装置とが通信線を介して接続された制御システムに関する。
【背景技術】
【０００２】
センサ信号をＡ／Ｄ変換器により一定時間毎にＡ／Ｄ変換する信号処理装置と、制御対象を制御する電子制御装置とが、通信線を介して接続された制御システムがある。この種の制御システムでは、信号処理装置が、センサ信号の一定時間毎のＡ／Ｄ変換結果を表すデータを、電子制御装置へ送信する。そして、電子制御装置のマイクロコンピュータ等からなる情報処理部が、その信号処理装置から受信したデータを用いて、制御対象を制御するための処理を行う（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１２７２０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
信号処理装置において、センサ信号のＡ／Ｄ変換周期は、その信号処理装置で生成されるクロックを用いて計測される。このため、信号処理装置で生成されるクロックの周期がばらつけば、Ａ／Ｄ変換周期も設計上の設定値（いわゆるティピカル値）からばらついてしまう。そして、センサ信号のＡ／Ｄ変換周期のばらつきは、制御対象の制御精度の低下を招くことになる。
【０００５】
そこで、本発明は、信号処理装置と電子制御装置とが通信線を介して接続された制御システムにおいて、信号処理装置におけるセンサ信号のＡ／Ｄ変換周期のばらつきを抑制すること、を目的としている。
【課題を解決するための手段】
【０００６】
第１発明の制御システムは、通信線を介して通信可能に接続された信号処理装置と電子制御装置とを備える。
電子制御装置は、一定周期のクロックを生成する制御装置側クロック生成手段と、その制御装置側クロック生成手段により生成されるクロックである制御装置側クロックによって動作する情報処理手段と、を備える。
【０００７】
また、信号処理装置は、センサが出力するセンサ信号をＡ／Ｄ変換するためのＡ／Ｄ変換器と、Ａ／Ｄ変換器にセンサ信号のＡ／Ｄ変換を所定のＡ／Ｄ変換周期で実施させるＡ／Ｄ変換制御手段と、Ａ／Ｄ変換制御手段がＡ／Ｄ変換周期を計測するために用いるクロックである信号処理装置側クロックを生成する信号処理装置側クロック生成手段と、を備える。
【０００８】
そして、この制御システムでは、信号処理装置が、Ａ／Ｄ変換器によるセンサ信号のＡ／Ｄ変換結果を表すデータを、電子制御装置へ送信し、電子制御装置の情報処理手段が、その信号処理装置からのデータを用いて、制御対象を制御するための処理を行う。
【０００９】
更に、この制御システムには、周期補正手段が備えられている。周期補正手段は、信号処理装置におけるＡ／Ｄ変換制御手段が信号処理装置側クロックを用いて計測するＡ／Ｄ
変換周期を、制御装置側クロックの周期を真として、設定周期に補正する。「制御装置側クロックの周期を真として」とは、「制御装置側クロックの周期が正しいとして」ということである。設定周期とは、Ａ／Ｄ変換周期の設計上の設定値であり、換言すれば、設計上設定されたＡ／Ｄ変換周期の中央値（いわゆるティピカル値）である。
【００１０】
この制御システムによれば、信号処理装置におけるセンサ信号のＡ／Ｄ変換周期を、制御装置側クロックの周期を真として設定周期に補正することができる。一般に、電子制御装置において情報処理手段を動作させるために生成されるクロック（制御装置側クロック）の周期の精度は、信号処理装置において生成されるクロック（信号処理装置側クロック）の周期の精度よりも高く設定される。このため、その精度の高い制御装置側クロックの周期を基準にして、信号処理装置におけるセンサ信号のＡ／Ｄ変換周期を設定周期に補正することができる。よって、信号処理装置におけるセンサ信号のＡ／Ｄ変換周期のばらつきを抑制することができ、延いては、制御対象の制御精度を向上させることができる。
【００１１】
また、信号処理装置が複数ある場合には、各信号処理装置でのＡ／Ｄ変換周期を一致させることが可能となる。このため、各信号処理装置でのＡ／Ｄ変換周期の相違に起因する制御精度の低下を防止することができる。この場合、制御装置側クロックの周期の精度は信号処理装置側クロックの周期の精度と同等でも良い。
【００１２】
なお、特許請求の範囲に記載した括弧内の符号は、一つの態様として後述する実施形態に記載の具体的手段との対応関係を示すものであって、本発明の技術的範囲を限定するものではない。
【図面の簡単な説明】
【００１３】
【図１】第１実施形態の燃料噴射制御システムを表す構成図である。
【図２】インジェクタとＥＣＵとの接続状態と、インジェクタの構成を表す構成図である。
【図３】制御ＩＣの構成を表す構成図である。
【図４】Ａ／Ｄ変換周期がばらつくことによる影響を説明するための第１のグラフである。
【図５】Ａ／Ｄ変換周期がばらつくことによる影響を説明するための第２のグラフである。
【図６】Ａ／Ｄ変換周期がばらつくことによる影響を説明するための第３のグラフである。
【図７】図６の一部を拡大したグラフである。
【図８】第１実施形態の応答処理を表すフローチャートである。
【図９】第１実施形態の補正制御処理を表すフローチャートである。
【図１０】第１実施形態の割り込み処理を表すフローチャートである。
【図１１】第１実施形態の作用を説明するためのタイムチャートである。
【図１２】第１実施形態の効果を説明するためのグラフである。
【図１３】第２実施形態の補正指示処理を表すフローチャートである。
【図１４】第２実施形態の補正処理を表すフローチャートである。
【発明を実施するための形態】
【００１４】
以下に、本発明が適用された実施形態の燃料噴射制御システムについて説明する。尚、本実施形態の燃料噴射制御システムは、自動車のディーゼルエンジンへの燃料噴射を制御するものである。
【００１５】
［第１実施形態］
図１に示すように、本実施形態の燃料噴射制御システム１０は、エンジン１３の各気筒
（本実施形態では４つの気筒）＃１〜＃４に設けられた燃料噴射弁としてのインジェクタ１〜４と、インジェクタ１〜４を制御することにより、エンジン１３への燃料噴射を制御する電子制御装置（以下、ＥＣＵという）１１とを備えている。ＥＣＵは、「Electronic
Control Unit」の略である。
【００１６】
インジェクタ１〜４は、コイルへの通電によって開弁する（噴射口を開く）電磁弁式のものである。また、各気筒＃１〜＃４の燃料噴射順序は、例えば「＃１→＃４→＃３→＃２」である。尚、インジェクタ１〜４としては、ピエゾアクチュエータによって開閉弁するタイプのものでも良い。
【００１７】
各インジェクタ１〜４には、燃料の蓄圧容器であるコモンレール１５から伸びた燃料供給用配管１７がそれぞれ接続されている。また、コモンレール１５には、車両の燃料タンク１９に貯留された燃料が、燃料ポンプ２１によって圧送される。燃料ポンプ２１は、例えば、エンジン１３のクランク軸の回転により駆動されてポンプ動作を行う機関駆動式の高圧ポンプである。
【００１８】
そして、各インジェクタ１〜４は、コモンレール１５に蓄えられた高圧の燃料が上記燃料供給用配管１７を介して供給されると共に、ＥＣＵ１１によって駆動される（コイルに通電される）ことにより開弁して、燃料を自身の噴射口（図示省略）から気筒＃１〜＃４に噴射する。
【００１９】
コモンレール１５から各インジェクタ１〜４への燃料供給用配管１７において、インジェクタ１〜４側の端（即ち、インジェクタ１〜４の燃料取込口）には、その位置の燃料圧力（いわゆるインレット圧）を検出する燃料圧力センサＰＳがそれぞれ設けられている。このため、燃料圧力センサ（以下単に、センサという）ＰＳによって検出される燃料圧力は、そのセンサＰＳに対応するインジェクタ１〜４の燃料噴射動作によって変動する。
【００２０】
センサＰＳは、燃料圧力に応じた電圧をセンサ信号として出力する。センサＰＳは、各インジェクタ１〜４に設けられていて、各インジェクタ１〜４の構成要素となっている。尚、以下の説明において、燃料圧力とは、特に断らなければ、センサＰＳによって検出される燃料圧力のことであり、インジェクタ１〜４の燃料取込口の燃料圧力のことである。
【００２１】
そして、インジェクタ１〜４の各々は、共通の通信線ＬＣ（図２も参照）を介して、ＥＣＵ１１とデータ通信（本実施形態ではシリアル通信）可能になっている。その通信線ＬＣを介して、各インジェクタ１〜４からＥＣＵ１１へ、センサＰＳによって検出された燃料圧力を表す圧力値データが送信される。
【００２２】
更に、ＥＣＵ１１には、エンジン１３の運転状態を検出するための他のセンサからの信号も入力される。他のセンサとしては、例えば、周知のクランク角センサ２３や、エンジン１３への吸入空気量を検出する吸気量センサや、エンジン１３の冷却水温を検出する水温センサや、アクセル踏み込み量センサや、空燃比センサ等がある。
【００２３】
一方、ＥＣＵ１１は、インジェクタ１〜４に燃料を噴射させる燃料噴射制御の処理を行うマイクロコンピュータ（以下、マイコンという）２５と、インジェクタ１〜４と通信するための通信ドライバ２９と、一定周期（換言すれば一定周波数）のクロックを生成するための発振子２６とを備えている。
【００２４】
発振子２６は例えば水晶によって構成されている。そして、マイコン２５には、発振子２６と共に発振回路を構成するクロック生成部２７が備えられている。ＥＣＵ１１において、クロック生成部２７により生成されるクロックは、制御装置側クロックに相当し、マ
イコン２５が動作するための動作クロックとして使用されると共に、通信ドライバ２９の動作クロックとしても使用される。以下では、クロック生成部２７により生成されるクロックを、ＥＣＵクロックといい、そのＥＣＵクロックの周期を、ＥＣＵクロック周期という。
【００２５】
尚、マイコン２５は、図示しない周知のＣＰＵ、ＲＯＭ、ＲＡＭ及びフリーランカウンタ等も備えている。フリーランカウンタは、ＥＣＵクロックによってカウントアップされるカウンタである。また、図示は省略しているが、ＥＣＵ１１には、マイコン２５から出力されるインジェクタ１〜４毎の噴射指令信号に従って、各インジェクタ１〜４へ開弁用の駆動信号（本実施形態では、インジェクタ１〜４のコイルへの通電電流）を出力する駆動回路も備えられている。図１に示すように、ＥＣＵ１１と各インジェクタ１〜４との間には、ＥＣＵ１１から各インジェクタ１〜４へ駆動信号を出力するための駆動信号線ＬＤ１〜ＬＤ４が配設されている。
【００２６】
次に、各インジェクタ１〜４の構成について、図２を用い説明する。
図２に示すように、各インジェクタ１〜４とＥＣＵ１１との間には、前述した通信線ＬＣ及び駆動信号線ＬＤ１〜ＬＤ４に加え、共通の電源線ＬＰ及びグランド線ＬＧが配設されている。
【００２７】
電源線ＬＰは、ＥＣＵ１１から各インジェクタ１〜４へ、一定の電源電圧を供給する線であり、グランド線ＬＧは、ＥＣＵ１１内のグランドラインと各インジェクタ１〜４内のグランドラインとを接続する線である。燃料噴射制御システム１０では、車両の電源スイッチに相当するイグニッションスイッチがオンされると、ＥＣＵ１１に動作用電源としてのバッテリ電圧が供給されてマイコン２５が起動すると共に、電源線ＬＰ及びグランド線ＬＧを介して、ＥＣＵ１１から各インジェクタ１〜４へ電力が供給されるようになっている。
【００２８】
インジェクタ１〜４の各々には、センサＰＳからのセンサ信号を処理するための信号処理装置３０が設けられている。
信号処理装置３０は、当該信号処理装置３０の本体である制御ＩＣ３１と、一定周期のクロックを生成するための発振子３２とを備えている。
【００２９】
発振子３２は例えば水晶によって構成されている。そして、制御ＩＣ３１には、通信線ＬＣを介してＥＣＵ１１と通信するための通信ドライバ３３と、クロック生成部３４とが備えられている。クロック生成部３４は、発振子３２と共に発振回路を構成する。インジェクタ１〜４において、クロック生成部３４により生成されるクロックは、信号処理装置側クロックに相当し、制御ＩＣ３１が動作するための動作クロックとして使用される。以下では、クロック生成部３４により生成されるクロックを、ＩＮＪクロックといい、そのＩＮＪクロックの周期を、ＩＮＪクロック周期という。尚、「ＩＮＪ」はインジェクタを意味する。
【００３０】
そして、制御ＩＣ３１及びセンサＰＳは、ＥＣＵ１１から電源線ＬＰ及びグランド線ＬＧを介して供給される電力によって動作する。
次に、インジェクタ１〜４に設けられている制御ＩＣ３１の構成について、図３を用い説明する。尚、図３は、インジェクタ１の構成を表しているが、図３において、（）内に符号を付している通り、他のインジェクタ２〜４も同じ構成である。
【００３１】
図３に示すように、制御ＩＣ３１は、通信ドライバ３３及びクロック生成部３４の他に、センサＰＳからのセンサ信号をＡ／Ｄ変換するためのＡ／Ｄ変換器４１と、メモリ４２と、周期カウンタ４３と、周期記憶部４４と、補正値記憶部４５と、加算回路４６と、比
較回路４７と、を備える。また、図示を省略しているが、制御ＩＣ３１は、当該制御ＩＣ３１の動作を司る処理部も備える。その処理部もＩＮＪクロックによって動作する。
【００３２】
メモリ４２は、例えばＲＡＭである。
周期カウンタ４３は、センサ信号のＡ／Ｄ変換周期（詳しくは、Ａ／Ｄ変換器４１にセンサ信号のＡ／Ｄ変換を実施させる周期）を計測するために、クロック生成部３４からのＩＮＪクロックをカウントするカウンタである。また、周期カウンタ４３は、Ａ／Ｄ変換器４１によるセンサ信号のＡ／Ｄ変換が完了する毎にクリアされる。以下では、センサ信号のＡ／Ｄ変換周期を、ＡＤＣ周期という。尚、「ＡＤＣ」はＡ／Ｄ変換を意味する。
【００３３】
周期記憶部４４には、ＡＤＣ周期の設計上の設定値である設定周期（以下、設定ＡＤＣ周期という）に対応した、基本カウント数が予め記憶されている。設計上の設定値とは、設計上設定された中央値であり、いわゆるティピカル値である。ＩＮＪクロック周期の設計上の設定値を、設定ＩＮＪクロック周期ということにすると、基本カウント数は、設定ＡＤＣ周期を設定ＩＮＪクロック周期で割った値である。
【００３４】
補正値記憶部４５は、書き換え可能なメモリである。この補正値記憶部４５には、ＡＤＣ周期を補正するための補正値であるＡＤＣ周期補正値が書き込まれる。ＡＤＣ周期補正値は、周期カウンタ４３にカウントさせる数を、基本カウント数から増減させる値である。また、補正値記憶部４５に記憶されるＡＤＣ周期補正値の初期値は０であるが、ＥＣＵ１１からインジェクタ１〜４にＡＤＣ周期補正値が送信されると、制御ＩＣ３１は、そのＥＣＵ１１からのＡＤＣ周期補正値を、補正値記憶部４５に更新して書き込む（つまり、上書きする）。
【００３５】
加算回路４６は、周期記憶部４４に記憶されている基本カウント数と、補正値記憶部４５に記憶されているＡＤＣ周期補正値とを加算して、その加算結果を出力する。
比較回路４７は、周期カウンタ４３のカウント値と、加算回路４６の出力値とを比較し、周期カウンタ４３のカウント値が加算回路４６の出力値と一致すると、Ａ／Ｄ変換器４１に対して、Ａ／Ｄ変換の実施を指令するＡＤＣトリガを出力する。
【００３６】
Ａ／Ｄ変換器４１は、比較回路４７からのＡＤＣトリガを受ける毎に、センサ信号のＡ／Ｄ変換を実施する。そして、制御ＩＣ３１では、Ａ／Ｄ変換器４１によるセンサ信号のＡ／Ｄ変換が完了する毎に、Ａ／Ｄ変換結果のデータである圧力値データがメモリ４２に転送されると共に、周期カウンタ４３がクリアされる。
【００３７】
このため、各インジェクタ１〜４では（詳しくは、信号処理装置３０を構成する制御ＩＣ３１では）、「（基本カウント数＋ＡＤＣ周期補正値）×ＩＮＪクロック周期」の時間毎に、センサ信号のＡ／Ｄ変換が実施されて、そのＡ／Ｄ変換結果のデータである圧力値データがメモリ４２に格納される。つまり、「（基本カウント数＋ＡＤＣ周期補正値）×ＩＮＪクロック周期」の時間が、ＡＤＣ周期となる。
【００３８】
そして、メモリ４２に記憶されたＡＤＣ周期毎の時系列の圧力値データは、通信ドライバ３３により、通信線ＬＣを介して、ＥＣＵ１１に送信される。例えば、圧力値データは、ＥＣＵ１１へ所定個数ずつまとめて送信される。
【００３９】
また、通信ドライバ３３には、パルス生成用カウンタ４８が備えられている。
パルス生成用カウンタ４８は、ＩＮＪクロック周期及びＡＤＣ周期よりも長いパルス幅を持つパルス（この例ではハイのパルス）を、通信線ＬＣに出力するために、ＩＮＪクロックをカウントするカウンタである。
【００４０】
制御ＩＣ３１は、パルス生成用カウンタ４８によるカウントを０からスタートさせたときに、通信ドライバ３３によって、通信線ＬＣへのパルスとしての出力信号をローからハイに変化させる。そして、制御ＩＣ３１は、パルス生成用カウンタ４８によりＩＮＪクロックが所定数Ｎｐ１だけカウントされると（つまり、パルス生成用カウンタ４８のカウント値が所定数Ｎｐ１になると）、通信ドライバ３３によって、通信線ＬＣへの出力信号をハイからローに戻す。このため、制御ＩＣ３１がパルス生成用カウンタ４８を用いて通信線ＬＣに出力するパルスのパルス幅（この例ではハイ時間）は、「ＩＮＪクロック周期×所定数Ｎｐ１」となる。このパルスは、ＡＤＣ周期を補正するために使用されるパルス（以下、補正用パルスともいう）である。尚、パルス生成用カウンタ４８は、通信ドライバ３３の外部に設けられていても良い。
【００４１】
一方、ＥＣＵ１１のマイコン２５は、各気筒＃１〜＃４のインジェクタ１〜４を制御するために、各インジェクタ１〜４について例えば下記《１》〜《４》の処理を行う。尚、以下の説明において、インジェクタの符号として用いる「ｎ」及び「ｍ」と、＃ｎ，＃ｍといった符号末尾の「ｎ」及び「ｍ」は、１〜４の何れかである。
【００４２】
《１》エンジン回転数やアクセル開度などの制御パラメータに基づいて、インジェクタｎの目標の噴射状態（例えば噴射開始タイミング及び噴射量）を算出する。そして、その目標の噴射状態を実現するために必要なインジェクタｎに対する噴射指令信号の出力開始タイミング及び出力継続時間の基本値を算出する。
【００４３】
《２》インジェクタｎから受信した圧力値データのうち、インジェクタｎの駆動期間（気筒＃ｎの燃料噴射期間）を含む特定の噴射状態監視期間における複数且つ時系列の圧力値データから、インジェクタｎの燃料噴射に伴う燃料圧力の変動状態を検出する。そして、その検出結果に基づいて、実際の噴射開始タイミングや噴射量などの噴射状態を解析し、その解析結果から、噴射指令信号の出力開始タイミング及び出力継続時間を補正するための補正値を算出する。
【００４４】
《３》上記《１》の処理で算出した噴射指令信号の出力開始タイミング及び出力継続時間の基本値を、上記《２》の処理で算出した補正値により補正して、噴射指令信号の出力開始タイミング及び出力継続時間を最終的に決定する。
【００４５】
《４》インジェクタｎに対する噴射指令信号を、上記《３》の処理で決定した結果の通りに出力する。
更に、ＥＣＵ１１のマイコン２５は、上記《２》の処理で、インジェクタｎの燃料噴射に伴う燃料圧力の変動状態を検出するためには、インジェクタｎとは別の気筒＃ｍのインジェクタｍから受信した圧力値データのうち、インジェクタｎからの圧力値データと同じタイミングでの圧力値データも用いる。
【００４６】
各インジェクタ１〜４のセンサＰＳから出力されるセンサ信号には、燃料ポンプ２１の燃料圧送に伴う圧力変動などの外乱成分が等しく重畳される。そして、インジェクタｎの燃料噴射に伴う燃料圧力の変動状態を精度良く検出するためには、インジェクタｎから受信した圧力値データから、上記外乱成分を排除する必要がある。このため、マイコン２５は、燃料噴射を実施させたインジェクタｎからの圧力値データから、燃料噴射を実施させていない他のインジェクタｍからの圧力値データのうち、インジェクタｎからの圧力値データと同じタイミングでの圧力値データを引いた値を、差分として算出する。そして、その差分に基づいて、インジェクタｎの噴射動作による燃料圧力の変動状態を検出する。こうすることにより、各インジェクタ１〜４について、噴射時の燃料圧力変動の検出精度が向上し、延いては、燃料噴射の制御精度が向上する。
【００４７】
しかし、各インジェクタ１〜４において、ＡＤＣ周期はＩＮＪクロックを用いて計測されるため、ＩＮＪクロック周期が設定ＩＮＪクロック周期からばらつけば、ＡＤＣ周期も設定ＡＤＣ周期からばらついてしまう。
【００４８】
例えば、図４は、燃料噴射を実施した気筒である表気筒（この例では＃１）のインジェクタ１からの圧力値データの波形（推移）を表している。図４において、点線波形は、ＡＤＣ周期の誤差が無い場合（つまり、ＡＤＣ周期が設定ＡＤＣ周期である場合）の波形であって、真値の波形であり、実線波形は、ＡＤＣ周期が設定ＡＤＣ周期に対して１％長くなった場合の波形を示している。設定ＡＤＣ周期が１０μｓであるとすると、実線波形は、ＡＤＣ周期が１０．１μｓになった場合の波形である。そして、実線波形は、真値の点線波形に対して、時間軸方向に１％縮小したような波形になる。
【００４９】
また例えば、図５は、燃料噴射を実施していない気筒である裏気筒（この例では＃３）のインジェクタ３からの圧力値データの波形を表している。図５において、点線波形は、ＡＤＣ周期の誤差が無い場合の波形（真値の波形）であり、実線波形は、ＡＤＣ周期が設定ＡＤＣ周期に対して１％短くなった場合の波形を示している。設定ＡＤＣ周期が１０μｓであるとすると、実線波形は、ＡＤＣ周期が９．９μｓになった場合の波形である。そして、実線波形は、真値の点線波形に対して、時間軸方向に１％拡大したような波形になる。
【００５０】
そして、図６における実線波形は、図４における実線波形から、図５における実線波形を引いた波形であり、図６における点線波形は、図４における点線波形から、図５における点線波形を引いた波形である。また、図７の波形は、図６における波形の最初部分を拡大したものである。
【００５１】
図６，図７のように、表気筒（＃１）と裏気筒（＃３）のインジェクタ１，３同士でＡＤＣ周期がばらつくと、インジェクタ１の燃料噴射に伴う燃料圧力の変動状態を検出するための実線波形が、真値の点線波形とは異なるものとなってしまう。すると、インジェクタ１の実際の噴射開始タイミングや噴射量などの解析結果に生じる誤差が大きくなり、延いては、インジェクタ１の制御精度（換言すれば、燃料噴射の制御精度）が低下する。そして、このことは他のインジェクタ２〜４についても同様である。
【００５２】
そこで、本実施形態の燃料噴射制御システム１０では、各インジェクタ１〜４でのＡＤＣ周期のばらつきを自動的に抑制するようになっている。以下に、ＡＤＣ周期のばらつきを抑制するために実施される処理について説明する。
【００５３】
各インジェクタ１〜４の制御ＩＣ３１は、自身が設けられたインジェクタへＥＣＵ１１から送信された後述のパルス出力指示を受信すると、図８に示す応答処理を行う。
図８に示すように、制御ＩＣ３１が応答処理を開始すると、まずＳ１１０にて、パルス生成用カウンタ４８を用いて前述の補正用パルスを通信線ＬＣに出力する。そして、制御ＩＣ３１は、次のＳ１２０にて、ＥＣＵ１１から送信されてくるＡＤＣ周期補正値を受信するまで待ち、そのＡＤＣ周期補正値を受信すると（Ｓ１２０：ＹＥＳ）、Ｓ１３０に進む。Ｓ１３０では、ＥＣＵ１１から受信したＡＤＣ周期補正値を補正値記憶部４５に記憶し、その後、当該応答処理を終了する。
【００５４】
一方、ＥＣＵ１１のマイコン２５は、例えば、イグニッションスイッチがオンされて起動すると、図９の補正制御処理を行う。尚、マイコン２５が行う処理は、マイコン２５におけるＣＰＵがＲＯＭ内のプログラムを実行することで実現される。
【００５５】
図９に示すように、マイコン２５は、補正制御処理を開始すると、Ｓ２１０にて、ルー
プカウンタＣの値を１に設定する。ループカウンタＣの値は、インジェクタ１〜４のうちの何れかを示すパラメータであり、例えば、ループカウンタＣの値が１（Ｃ＝１）である場合に、「インジェクタ（Ｃ）」とは、インジェクタ１のことを意味する。
【００５６】
マイコン２５は、次のＳ２２０にて、インジェクタ（Ｃ）に対してパルス出力指示を送信する。パルス出力指示は、特定のデータ列からなるコマンドデータであり、宛先のインジェクタ１〜４（宛先の信号処理装置３０又は制御ＩＣ３１でもある）を示す宛先ＩＤが付されて通信線ＬＣに出力される。マイコン２５は、Ｓ２２０では、具体的には、インジェクタ（Ｃ）を示す宛先ＩＤが付されたパルス出力指示を、通信線ＬＣに出力する。
【００５７】
ＥＣＵ１１からのパルス出力指示は各インジェクタ１〜４の制御ＩＣ３１によって受信されるが、各インジェクタ１〜４の制御ＩＣ３１は、パルス出力指示に付された宛先ＩＤにより、自身宛のパルス出力指示であるか否かを判別し、自身宛のパルス出力指示であれば図８の応答処理を行う。このため、マイコン２５がインジェクタ（Ｃ）に対してパルス出力指示を送信すると、インジェクタ（Ｃ）の制御ＩＣ３１が、図８の応答処理を行って、通信線ＬＣに前述の補正用パルスを出力することとなる。
【００５８】
マイコン２５は、次のＳ２３０にて、パルス受信済みフラグ（Ｃ）がオンになったか否かを判定して、そのパルス受信済みフラグ（Ｃ）がオンになるまで待つ。尚、パルス受信済みフラグは、インジェクタ１〜４の各々に対応して設けられており、パルス受信済みフラグ（Ｃ）は、インジェクタ（Ｃ）に対して設けられたパルス受信済みフラグを意味する。また、マイコン２５は、起動してから当該補正制御処理を開始するまでの間に行う初期化処理により、全てのパルス受信済みフラグをオフにしている。また、パルス受信済みフラグ（Ｃ）は、後述する図１０のＳ３９０でオンされる。
【００５９】
一方、マイコン２５は、Ｓ２２０でインジェクタ（Ｃ）へのパルス出力指示を送信してから、Ｓ２３０でパルス受信済みフラグ（Ｃ）がオンになったと判定するまでの期間において、通信線ＬＣにパルスのエッジが発生する毎に、図１０の割り込み処理を行う。その期間において、通信線ＬＣに発生するエッジは、インジェクタ（Ｃ）の制御ＩＣ３１が通信線ＬＣに出力した補正用パルスのエッジである。
【００６０】
図１０に示すように、マイコン２５は、割り込み処理を開始すると、Ｓ３１０にて、今回発生したエッジが立ち上がりエッジであるか否かを判定し、立ち上がりエッジであれば、Ｓ３２０に進む。そして、マイコン２５は、Ｓ３２０では、通信線ＬＣに立ち上がりエッジが発生したときのフリーラン時刻を、パルス立ち上がり時刻として記憶し、その後、当該割り込み処理を終了する。フリーラン時刻は、マイコン２５におけるフリーランカウンタの値である。
【００６１】
また、マイコン２５は、上記Ｓ３１０にて、今回発生したエッジが立ち上がりエッジではない（つまり、立ち下がりエッジである）と判定した場合には、Ｓ３３０に進む。そして、マイコン２５は、Ｓ３３０では、通信線ＬＣに立ち下がりエッジが発生したときのフリーラン時刻を、パルス立ち下がり時刻として記憶する。
【００６２】
マイコン２５は、次のＳ３４０にて、Ｓ３３０で記憶したパルス立ち下がり時刻から、Ｓ３２０で記憶したパルス立ち上がり時刻を引いた値に、ＥＣＵクロック周期の設計上の設定値である設定ＥＣＵクロック周期を乗じた時間を、実パルス幅として算出する。実パルス幅は、インジェクタ（Ｃ）の制御ＩＣ３１が出力した補正用パルスのパルス幅を、ＥＣＵクロックを用いて計測した計測結果である。また、フリーランカウンタは、ＥＣＵクロックによってカウントアップされるため、実パルス幅の計測分解能は、ＥＣＵクロックの１周期となる。
【００６３】
そして、マイコン２５は、次のＳ３５０にて、Ｓ３４０で算出した実パルス幅を下記の式１に代入することにより、実際のＩＮＪクロック周期である実ＩＮＪクロック周期を算出する。
【００６４】
実ＩＮＪクロック周期＝（実パルス幅÷設定パルス幅）×設定ＩＮＪクロック周期…式１
尚、設定パルス幅は、補正用パルスのパルス幅の、設計上の設定値であり、設定ＩＮＪクロック周期に前述の所定数Ｎｐ１を乗じた時間である。この設定パルス幅は、設定時間間隔に相当する。また、Ｓ３５０で算出される実ＩＮＪクロック周期は、インジェクタ（Ｃ）の制御ＩＣ３１における実ＩＮＪクロック周期である。
【００６５】
マイコン２５は、次のＳ３６０にて、Ｓ３５０で算出した実ＩＮＪクロック周期を下記の式２に代入することにより、必要カウント数を算出する。
必要カウント数は、インジェクタ（Ｃ）の制御ＩＣ３１において、実際のＡＤＣ周期を設定ＡＤＣ周期にするために、周期カウンタ４３がカウントしなければならないＩＮＪクロックのカウント数である。
【００６６】
必要カウント数＝設定ＡＤＣ周期÷実ＩＮＪクロック周期…式２
そして、マイコン２５は、次のＳ３７０にて、Ｓ３６０で算出した必要カウント数を下記の式３に代入することにより、ＡＤＣ周期補正値を算出する。
【００６７】
ＡＤＣ周期補正値＝必要カウント数−基本カウント数…式３
マイコン２５は、次のＳ３８０にて、Ｓ３７０で算出したＡＤＣ周期補正値をインジェクタ（Ｃ）に送信する。すると、インジェクタ（Ｃ）の制御ＩＣ３１は、図８の応答処理におけるＳ１２０にて、ＥＣＵ１１からのＡＤＣ周期補正値を受信したと判定して、その受信したＡＤＣ周期補正値を補正値記憶部４５に記憶することとなる（Ｓ１３０）。そして、インジェクタ（Ｃ）の制御ＩＣ３１では、補正値記憶部４５にＥＣＵ１１からのＡＤＣ周期補正値が記憶されることで、加算回路４６の出力値（即ち、周期カウンタ４３がカウントするＩＮＪクロックのカウント数）が、Ｓ３６０で算出された必要カウント数と等しくなる。周期記憶部４４には、基本カウント数が予め記憶されているからである。
【００６８】
尚、マイコン２５がＳ３８０でＡＤＣ周期補正値を送信する時点において、ＡＤＣ周期補正値の受信待ちとなっているのは、インジェクタ１〜４のうち、パルス出力指示によって指定されたインジェクタ（Ｃ）だけである。このため、ＥＣＵ１１から送信するＡＤＣ周期補正値には、宛先ＩＤを付けなくても良いが、もちろん宛先ＩＤを付けて宛先を明確化しても良い。
【００６９】
そして、マイコン２５は、次のＳ３９０にて、パルス受信済みフラグ（Ｃ）をオンし、その後、当該割り込み処理を終了する。
図９の説明に戻る。マイコン２５は、図１０のＳ３９０でパルス受信済みフラグ（Ｃ）をオンすると、図９のＳ２３０にて、パルス受信済みフラグ（Ｃ）がオンになったと判定して、Ｓ２４０に進む。そして、マイコン２５は、Ｓ２４０にて、ループカウンタＣの値を１インクリメント（＋１）する。
【００７０】
マイコン２５は、次のＳ２５０にて、ループカウンタＣの値が気筒数（この例では４）よりも大きくなったか否かを判定し、ループカウンタＣの値が気筒数以下であれば（Ｓ２５０：ＮＯ）、Ｓ２２０に戻る。
【００７１】
また、マイコン２５は、Ｓ２５０にて、ループカウンタＣの値が気筒数よりも大きくな
ったと判定した場合には、Ｓ２６０に進み、全インジェクタ１〜４に対するＡＤＣスタート指示を送信した後、当該補正制御処理を終了する。
【００７２】
一方、各インジェクタ１〜４の制御ＩＣ３１は、ＥＣＵ１１から送信されるＡＤＣスタート指示を受信すると、周期カウンタ４３をクリアしてカウント動作をスタートさせることにより、センサ信号の一定時間毎のＡ／Ｄ変換を開始する。そして、各インジェクタ１〜４の制御ＩＣ３１は、ＡＤＣスタート指示を受信してからメモリ４２に記憶されたＡＤＣ周期毎の圧力値データを、所定個数ずつまとめて、送信データを作成し、その送信データに送信元を示す送信元ＩＤを付けたフレームを、ＥＣＵ１１へ送信する。このため、ＥＣＵ１１のマイコン２５は、受信したフレーム（圧力値データ）の送信元を、送信元ＩＤから判別することができる。
【００７３】
本実施形態の燃料噴射制御システム１０において、ＥＣＵ１１のマイコン２５は、図９の補正制御処理では、インジェクタ１〜４の各々にパルス出力指示を送信して、各インジェクタ１〜４の制御ＩＣ３１に、パルス幅が「ＩＮＪクロック周期×所定数Ｎｐ１」となる補正用パルスを出力させている。
【００７４】
そして、ＥＣＵ１１のマイコン２５は、補正用パルスを出力させたインジェクタ１〜４の各々について、図１０の割り込み処理を行うことにより、下記〈１〉〜〈３〉の各手段として機能している。
【００７５】
〈１〉補正用パルスのパルス幅を、ＥＣＵクロックを用いて計測する手段（Ｓ３１０〜Ｓ３４０）。
〈２〉補正用パルスのパルス幅を、ＥＣＵクロックを用いて計測した結果である実パルス幅と、設定パルス幅との比率に基づいて、ＡＤＣ周期を設定ＡＤＣ周期にするために必要なＩＮＪクロックのカウント数である必要カウント数を算出する手段（Ｓ３５０，Ｓ３６０）。
【００７６】
〈３〉算出した必要カウント数から固定の基本カウント数を減じた値であるＡＤＣ周期補正値を、補正用パルスを出力したインジェクタに、必要カウント数を表す周期情報として送信する手段（Ｓ３７０，Ｓ３８０）。
【００７７】
そして、各インジェクタ１〜４の制御ＩＣ３１は、ＥＣＵ１１から自身に送信されたＡＤＣ周期補正値を、補正値記憶部４５に記憶することにより、周期記憶部４４と補正値記憶部４５との両方に記憶される合計のカウント数を、ＥＣＵ１１側で算出された必要カウント数に設定している（図８のＳ１３０）。
【００７８】
よって、各インジェクタ１〜４の制御ＩＣ３１において、ＩＮＪクロックを用いて計測されるＡＤＣ周期は、ＥＣＵクロック周期を真として設定ＡＤＣ周期に補正されることとなる。この例では、制御ＩＣ３１がＩＮＪクロックを用いて出力する補正用パルスのパルス幅が、ＥＣＵクロック周期を真として計測され、その計測結果に基づいて必要カウント数が補正されるからである。
【００７９】
尚、本実施形態では、周期記憶部４４と補正値記憶部４５との両方が記憶部に相当しており、その周期記憶部４４と補正値記憶部４５との両方に記憶される値の合計値が、ＡＤＣ周期を計測するためのクロックカウント数に相当している。また、補正用パルスが、特定信号に相当しており、補正用パルスのエッジのうち、先に発生する方の立ち上がりエッジが第１信号に相当し、後に発生する方の立ち下がりエッジが第２信号に相当する。そして、補正用パルスのパルス幅が、特定信号における第１信号から第２信号までの時間間隔に相当している。また、必要カウント数が、ＡＤＣ周期を設定ＡＤＣ周期にするためのク
ロックカウント数に相当している。
【００８０】
次に、第１実施形態の作用の具体例を図１１に示す。
図１１の具体例において、設計上の設定値は、下記の通りである。
・設定ＥＣＵクロック周期＝１ｎｓ。
【００８１】
・設定ＩＮＪクロック周期＝５ｎｓ。
・設定ＡＤＣ周期＝１０μｓ。
・設定パルス幅＝３０μｓ。
【００８２】
このため、基本カウント数は、１０μｓ相当の２０００（＝１０μｓ÷５ｎｓ）であり、補正用パルスのパルス幅を決める所定数Ｎｐ１は、３０μｓ相当の６０００（＝３０μｓ÷５ｎｓ）である。
【００８３】
図１１において、横軸は、ＥＣＵクロック周期を真とした時間軸である。尚、図１１において、「ＥＣＵ基準」とは、「ＥＣＵクロック周期を基準にして」という意味であり、つまりは「ＥＣＵクロック周期を真として」ということである。また、ここでは、ＡＤＣ周期の補正対象が、例えばインジェクタ１（ＩＮＪ１）であるとする。
【００８４】
図１１の具体例では、ＥＣＵ１１のマイコン２５におけるフリーラン時刻が１００００であるときに、インジェクタ１の制御ＩＣ３１が、通信線ＬＣへの補正用パルスをハイにし、フリーラン時刻が３９９４０であるときに、制御ＩＣ３１が、補正用パルスをローにしている。
【００８５】
このため、補正用パルスのパルス幅を、ＥＣＵクロックを用いて計測した結果であって、図１０のＳ３４０で算出される実パルス幅は、２９．９４μｓ（＝３９９４０ｎｓ−１００００ｎｓ）となる。そして、図１０のＳ３５０で算出される実ＩＮＪクロックは、４．９９ｎｓ（＝（２９．９４μｓ÷３０μｓ）×５ｎｓ）となり、図１０のＳ３６０で算出される必要カウント数は、２００４（＝１０μｓ÷４．９９ｎｓ）となり、図１０のＳ３７０で算出されるＡＤＣ周期補正値は、４（＝２００４−２０００）となる。そして更に、そのＡＤＣ周期補正値（＝４）が、ＥＣＵ１１からインジェクタ１へ送信される（図１０のＳ３８０）。
【００８６】
すると、インジェクタ１の制御ＩＣ３１は、ＥＣＵ１１から受信したＡＤＣ周期補正値（＝４）を、補正値記憶部４５に記憶する（図８のＳ１３０）。
このため、インジェクタ１の制御ＩＣ３１は、図１１の時刻ｔｓで、ＥＣＵ１１からのＡＤＣスタート指示を受信したとすると、その時点から「４．９９μｓ×（２０００＋４）＝１０μｓ」毎にセンサ信号のＡ／Ｄ変換を実施することとなる。そして、その１０μｓ毎の圧力値データをＥＣＵ１１へ送信することとなる。
【００８７】
尚、図１１では、ＡＤＣ周期の補正前と補正後との違いを分かり易くするために、時刻ｔｓよりも前の期間では、「４．９９μｓ×２０００＝９．９８μｓ」毎にセンサ信号のＡ／Ｄ変換が実施されるように図示している。
【００８８】
以上のような燃料噴射制御システム１０によれば、各インジェクタ１〜４でのＡＤＣ周期（詳しくは、各インジェクタ１〜４に設けられた信号処理装置３０（制御ＩＣ３１）でのＡＤＣ周期）を、ＥＣＵクロック周期を真として、設定ＡＤＣ周期に補正することができる。
【００８９】
このため、インジェクタ１〜４毎のＩＮＪクロック周期が、ばらつきによってそれぞれ
異なったとしても、各インジェクタ１〜４でのＡＤＣ周期を一致させることができる。
よって、図４〜図７を用いて説明した問題（即ち、各インジェクタ１〜４でのＡＤＣ周期の相違に起因する燃料噴射制御精度の低下）を、防止することができる。例えば、図１２は、図７と同様の内容を示すグラフであるが、図１２における実線波形は、本実施形態の技術が適用された場合の波形である。図１２の実線波形は、図７の実線波形と同様に、インジェクタ１の燃料噴射に伴う燃料圧力の変動状態を検出するための波形であるが、真値の点線波形とほとんど同じ波形になっている。よって、燃料圧力の変動状態を正しく検出することができるようになる。
【００９０】
また、インジェクタ１〜４の個々についても、ＡＤＣ周期の設定ＡＤＣ周期からのばらつきを抑制することができる。ＥＣＵクロック周期の精度が、ＩＮＪクロック周期の精度よりも高く設定されていれば、その精度の高いＥＣＵクロック周期を基準にして、各インジェクタ１〜４でＡＤＣ変換周期を設定ＡＤＣ周期に補正することができるからである。例えば、ＩＮＪクロック周期の精度が±１％で、ＥＣＵクロック周期の精度が±０．５％であるとすると、ＡＤＣ周期の精度を、無補正の場合の±１％から、ＥＣＵクロック周期の精度と同じ±０．５％に向上させることができる。尚、各インジェクタ１〜４でのＡＤＣ周期を一致させることだけを実現するのであれば、ＥＣＵクロック周期の精度は、ＩＮＪクロック周期の精度と同等であっても良い。
【００９１】
［第１変形例］
図１０の割り込み処理では、Ｓ３５０とＳ３６０を統合して、必要カウント数を、下記の式４によって算出しても良い。尚、式４は、式２と式３をまとめた結果の式であり、実ＩＮＪクロック周期の算出を省いた式である。
【００９２】
必要カウント数＝（設定パルス幅÷実パルス幅）×基本カウント数…式４
［第２変形例］
例えば、制御ＩＣ３１は、補正値記憶部４５と加算回路４６を備えず、比較回路４７が、周期カウンタ４３のカウント値と、周期記憶部４４の記憶値とを比較するように構成されていても良い。その場合、ＥＣＵ１１から各インジェクタ１〜４へは、周期情報として必要カウント数そのものが送信され、周期記憶部４４に、そのＥＣＵ１１からの必要カウント数が記憶されるように構成すれば良い。
【００９３】
但し、ＥＣＵ１１から周期情報として前述のＡＤＣ周期補正値が送信されるように構成した方が、送信データ量を基本カウント数の分だけ少なくすることができるという利点がある。
【００９４】
［第３変形例］
補正用パルスは、ローのパルスであっても良い。その場合、ＥＣＵ１１のマイコン２５は、補正用パルスの立ち下がりエッジから立ち上がりエッジまでのロー時間を、実パルス幅として計測すれば良い。
【００９５】
［第４変形例］
通信線ＬＣに送出される信号のうち、例えば、スタートビット等の時間幅が固定された特定のパルス信号を、補正用パルスとして使用しても良い。
【００９６】
［第５変形例］
各インジェクタ１〜４の制御ＩＣ３１は、ＡＤＣ周期を補正するための特定信号として、例えば、２つのハイ又はローのパルスを出力するようになっていても良い。その場合、先のパルスが第１信号となり、後のパルスが第２信号となる。例えば、２つのパルスをハイとするのであれば、ＥＣＵ１１のマイコン２５は、前述の実パルス幅に代えて、先のパ
ルスの立ち上がりエッジから後のパルスの立ち上がりエッジまでの時間を、特定信号における第１信号から第２信号までの時間間隔として計測すれば良い。
【００９７】
但し、１つのパルスを、ＡＤＣ周期を補正するための特定信号として用いる方が、その特定信号を出力するための処理が簡単であるという利点がある。
［第２実施形態］
次に、第２実施形態の燃料噴射制御システムについて説明するが、燃料噴射制御システムの符号としては、第１実施形態と同じ“１０”を用いる。また、第１実施形態と同様の構成要素についても、第１実施形態と同じ符号を用いる。
【００９８】
第２実施形態の燃料噴射制御システム１０は、第１実施形態と比較すると、ＥＣＵ１１のマイコン２５が、図９，図１０の処理に代えて、図１３の補正指示処理を行う点と、各インジェクタ１〜４の制御ＩＣ３１が、図８の処理に代えて、図１４の補正処理を行う点とが、異なる。更に、各インジェクタ１〜４の制御ＩＣ３１は、パルス生成用カウンタ４８を備えておらず、その代わりに、ＩＮＪクロックによってカウントアップされるパルス幅計測用カウンタ（図示省略）を備えている。
【００９９】
ＥＣＵ１１のマイコン２５は、例えば、イグニッションスイッチがオンされて起動すると、図１３の補正指示処理を行う。
図１３に示すように、マイコン２５は、補正指示処理を開始すると、Ｓ４１０にて、全インジェクタ１〜４に対する補正実施指示を送信する。その補正実施指示は、全インジェクタ１〜４の制御ＩＣ３１によって受信される。
【０１００】
そして、マイコン２５は、次のＳ４２０にて、通信ドライバ２９を制御して通信線ＬＣに補正用パルス（この例ではハイのパルス）を出力する。
マイコン２５は、Ｓ４２０では、通信線ＬＣへの補正用パルスをハイにしてから、フリーランカウンタの値が予め定められた設定数Ｎｐ２だけ進むと、補正用パルスをローに戻す。このため、補正用パルスのパルス幅は、「ＥＣＵクロック周期×設定数Ｎｐ２」となる。
【０１０１】
そして、マイコン２５は、次のＳ４３０にて、全インジェクタ１〜４からの補正完了通知を受信したか否かを判定して、全インジェクタ１〜４からの補正完了通知を受信するまで待つ。尚、各インジェクタ１〜４の制御ＩＣ３１は、後述する図１４のＳ５８０にて、ＥＣＵ１１に補正完了通知を送信する。
【０１０２】
マイコン２５は、Ｓ４３０にて、全インジェクタ１〜４からの補正完了通知を受信したと判定すると、Ｓ４４０に進み、全インジェクタ１〜４に対するＡＤＣスタート指示を送信する。そして、その後、当該補正指示処理を終了する。Ｓ４４０で送信されるＡＤＣスタート指示は、第１実施形態の図９におけるＳ２６０で送信されるＡＤＣスタート指示と同じ役割のものである。
【０１０３】
一方、各インジェクタ１〜４の制御ＩＣ３１は、ＥＣＵ１１のマイコン２５が図１３のＳ４１０で送信した補正実施指示を受信すると、通信線ＬＣに出力されたパルスを監視して、通信線ＬＣにパルスのエッジが発生する毎に、図１４の補正処理を行う。但し、制御ＩＣ３１は、後述するＳ５８０にて、ＥＣＵ１１に補正完了通知を送信した後は、通信線ＬＣにパルスが発生しても当該補正処理を行わない。
【０１０４】
図１４に示すように、制御ＩＣ３１は、補正処理を開始すると、まずＳ５１０にて、今回発生したエッジが立ち上がりエッジであるか否かを判定し、立ち上がりエッジであれば、Ｓ５２０に進む。そして、制御ＩＣ３１は、Ｓ５２０では、ＩＮＪクロックによるパル
ス幅計測用カウンタの０からのカウントアップを開始し、その後、当該補正処理を終了する。
【０１０５】
また、制御ＩＣ３１は、上記Ｓ５１０にて、今回発生したエッジが立ち上がりエッジではない（つまり、立ち下がりエッジである）と判定した場合には、Ｓ５３０に進む。そして、制御ＩＣ３１は、Ｓ５３０では、パルス幅計測用カウンタのカウントアップを停止する。
【０１０６】
制御ＩＣ３１は、次のＳ５４０にて、パルス幅計測用カウンタのカウント値に設定ＩＮＪクロック周期を乗じた時間を、実パルス幅として算出する。本第２実施形態において、実パルス幅は、ＥＣＵ１１が出力した補正用パルスのパルス幅を、ＩＮＪクロックを用いて計測した計測結果である。
【０１０７】
そして、制御ＩＣ３１は、次のＳ５５０にて、Ｓ５４０で算出した実パルス幅を、下記の式５に代入することにより、必要カウント数を算出する。
必要カウント数＝（実パルス幅÷設定パルス幅）×基本カウント数…式５
尚、本第２実施形態において、設定パルス幅は、ＥＣＵ１１から出力される補正用パルスのパルス幅の、設計上の設定値であり、設定ＥＣＵクロック周期に前述の設定数Ｎｐ２を乗じた時間である。
【０１０８】
制御ＩＣ３１は、次のＳ５６０にて、Ｓ５５０で算出した必要カウント数を、前述した式３と同じ下記の式６に代入することにより、ＡＤＣ周期補正値を算出する。
ＡＤＣ周期補正値＝必要カウント数−基本カウント数…式６
そして、制御ＩＣ３１は、次のＳ５７０にて、Ｓ５６０で算出したＡＤＣ周期補正値を補正値記憶部４５に記憶し、次のＳ５８０にて、ＥＣＵ１１に補正完了通知を送信する。そして、その後、当該補正処理を終了する。
【０１０９】
尚、各インジェクタ１〜４の制御ＩＣ３１が送信する補正完了通知には、送信元を示す送信元ＩＤが付けられる。このため、ＥＣＵ１１のマイコン２５は、受信した補正完了通知の送信元を判別することができる。また、各インジェクタ１〜４からの補正完了通知は通信線ＬＣ上で衝突する可能性があるが、例えば制御ＩＣ３１は、Ｓ５８０では、予め定められた送信元ＩＤの優先順位に基づくバス調停規則に従って、補正完了通知の送信に成功するまで、補正完了通知の送信を繰り返せば良い。また、補正完了通知の送信順序を予め定めておけば、衝突の発生を回避することができる。
【０１１０】
本第２実施形態の燃料噴射制御システム１０では、ＥＣＵ１１のマイコン２５が、通信線ＬＣに、パルス幅が「ＥＣＵクロック周期×設定数Ｎｐ２」となる補正用パルスを出力している（図１３のＳ４２０）。
【０１１１】
そして、各インジェクタ１〜４の制御ＩＣ３１は、図１４の補正処理を行うことにより、下記〈Ａ〉〜〈Ｃ〉の各手段として機能している。
〈Ａ〉補正用パルスのパルス幅を、ＩＮＪクロックを用いて計測する手段（Ｓ５１０〜Ｓ５４０）。
【０１１２】
〈Ｂ〉補正用パルスのパルス幅を、ＩＮＪクロックを用いて計測した結果である実パルス幅と、設定パルス幅との比率に基づいて、ＡＤＣ周期を設定ＡＤＣ周期にするために必要なＩＮＪクロックのカウント数である必要カウント数を算出する手段（Ｓ５５０）。
【０１１３】
〈Ｃ〉算出した必要カウント数から固定の基本カウント数を減じた値であるＡＤＣ周期補正値を、補正値記憶部４５に記憶することにより、周期記憶部４４と補正値記憶部４５
との両方に記憶される合計のカウント数を、必要カウント数に設定する手段（Ｓ５６０，Ｓ５７０）。
【０１１４】
このような第２実施形態においても、ＩＮＪクロックを用いて計測されるＡＤＣ周期は、ＥＣＵクロック周期を真として設定ＡＤＣ周期に補正されることとなる。この例では、ＥＣＵクロック周期を真とする補正用パルスのパルス幅が、ＩＮＪクロックを用いて計測され、その計測結果に基づいて必要カウント数が補正されるからである。
【０１１５】
よって、第１実施形態について述べた効果と同様の効果が得られる。また、第１実施形態に比べると、補正用パルスの通信線ＬＣへの出力が１回で済むと共に、各インジェクタ１〜４においてＡＤＣ周期を補正するための処理が一斉に実施されるので、全インジェクタ１〜４についてＡＤＣ周期の補正が完了するまでの時間を短縮することができる。
【０１１６】
尚、第２実施形態についても、第１実施形態について説明した第２〜第５変形例と同様の変形を行うことができる。
また、上記実施形態では、イグニッションスイッチがオンされて燃料噴射制御システム１０が起動した直後において、ＡＤＣ周期の補正を実施している。このため、前述した《２》の処理を開始する前にＡＤＣ周期の補正を完了することができる。よって、実際の噴射状態に基づく噴射指令信号の適切な補正を早期に開始することできる。つまり、ＡＤＣ周期の補正は、ＥＣＵ１１のマイコン２５が燃料圧力の変動状態を検出するための圧力値データの収集を開始する前、あるいは収集をしていない場合に、実施すれば良いが、燃料噴射制御システム１０が起動してからできるだけ早期に実施するのが好ましい。
【０１１７】
［他の変形例］
例えば、センサＰＳと信号処理装置３０との一方又は両方を、インジェクタ１〜４と別体で設けるようにしても良い。また、センサＰＳをインジェクタ１〜４と別体で設ける場合、センサＰＳが設けられる位置は、インジェクタ１〜４の燃料取込口に限らず、コモンレール１５の燃料出口（燃料供給用配管１７のコモンレール１５側の端）からインジェクタ１〜４の噴射口までの燃料通路における何れかの位置で良い。また、インジェクタ１〜４が燃料を噴射する対象の内燃機関は、ガソリンエンジンであっても良い。
【０１１８】
一方、上記実施形態においては、インジェクタ１〜４の各々に信号処理装置３０が設けられている形態として説明したが、インジェクタ１〜４の各々が信号処理装置であるとも言える。
【０１１９】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に限定されることなく、種々の形態を採り得る。また、前述の数値も一例であり他の値でも良い。
例えば、上記実施形態における１つの構成要素が有する機能を複数の構成要素として分散させたり、複数の構成要素が有する機能を１つの構成要素に統合させたりしてもよい。また、上記実施形態の構成の少なくとも一部を、同様の機能を有する公知の構成に置き換えてもよい。また、上記実施形態の構成の一部を省略してもよい。また、上記実施形態の構成の少なくとも一部を、他の上記実施形態の構成に対して付加又は置換してもよい。なお、特許請求の範囲に記載した文言によって特定される技術思想に含まれるあらゆる態様が本発明の実施形態である。また、上述した燃料噴射制御システムの他、当該燃料噴射制御システムの構成要素となるＥＣＵ１１やインジェクタ１〜４、当該ＥＣＵ１１としてコンピュータを機能させるためのプログラム、このプログラムを記録した媒体、Ａ／Ｄ変換周期補正方法など、種々の形態で本発明を実現することもできる。
【符号の説明】
【０１２０】
１〜４…インジェクタ、１０…燃料噴射制御システム、１１…ＥＣＵ（電子制御装置）
、ＬＣ…通信線、２５…マイコン（マイクロコンピュータ）、２６…発振子、２７…クロック生成部、３０…信号処理装置、３２…発振子、３４…クロック生成部、ＰＳ…燃料圧力センサ、４１…Ａ／Ｄ変換器、４３…周期カウンタ、４４…周期記憶部、４５…補正値記憶部、４６…加算回路、４７…比較回路
【図１】
0006435926.tif 000002
【図２】
0006435926.tif 000003
【図３】
0006435926.tif 000004
【図４】
0006435926.tif 000005
【図５】
0006435926.tif 000006
【図６】
0006435926.tif 000007
【図７】
0006435926.tif 000008
【図８】
0006435926.tif 000009
【図９】
0006435926.tif 000010
【図１０】
0006435926.tif 000011
【図１１】
0006435926.tif 000012
【図１２】
0006435926.tif 000013
【図１３】
0006435926.tif 000014
【図１４】
0006435926.tif 000015