(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-11-28
(45)【発行日】2022-12-06
(54)【発明の名称】電子制御装置
(51)【国際特許分類】
F02D 41/20 20060101AFI20221129BHJP
【FI】
F02D41/20
(21)【出願番号】P 2019032777
(22)【出願日】2019-02-26
【審査請求日】2021-07-16
(73)【特許権者】
【識別番号】000004260
【氏名又は名称】株式会社デンソー
(74)【代理人】
【識別番号】110000567
【氏名又は名称】弁理士法人サトー
(72)【発明者】
【氏名】瀬戸口 悠
【審査官】北村 亮
(56)【参考文献】
【文献】特開2018-071384(JP,A)
【文献】特開2004-116525(JP,A)
【文献】特開平07-271408(JP,A)
【文献】特表2002-540349(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
F02D 41/20
(57)【特許請求の範囲】
【請求項1】
エンジン(5)に燃料を噴射制御する電子制御装置であって、
前記エンジンのクランク軸の回転角度に関する信号を入力する入力部(14)を備え
、駆動指令パルスのオンタイミングからオフタイミングの間、前記駆動指令パルスを駆動制御部(7)に出力することで前記駆動制御部によりインジェクタ(4)を駆動制御して噴射するように構成され、前記駆動指令パルスのオンタイミングに対応したパルスオンイベント(EVon)を実行し、前記駆動指令パルスのオフタイミングに対応したパルスオフイベント(EVoff)を実行する駆動指令部(6)を備え、
前記駆動指令部は、
今回の前記駆動指令パルスのオフタイミングに対応した前記パルスオフイベントにて次回の駆動指令パルスのオンタイミングを前記回転角度の閾値によりセッ
トするようになっており、
前記入力部に入力される前記回転角度が前記閾値にコンペアマッチして前記次回の駆動指令パルスのオンタイミングが到来したときに起床される次回の前記パルスオンイベントにおいて、前記今回の駆動指令パルスのオフタイミングから前記次回のパルスオンイベントの実行タイミングまでの時間間隔に基づいて、前記次回の駆動指令パルスに対応した噴射をキャンセルするか否かを判定する(S12)電子制御装置。
【請求項2】
前記駆動指令部は、前記パルスオンイベントにてその前記駆動指令パルスのオフタイミングをセットする(S14~S16)請求項1記載の電子制御装置。
【請求項3】
前記駆動指令部は、前記噴射をキャンセルする場合、通常の前記駆動指令パルスのパルス幅よりも短い微小パルスを前記駆動指令パルスとして前記駆動制御部に出力することで前記噴射をキャンセルする(S13)請求項2記載の電子制御装置。
【請求項4】
前記微小パルスは、前記インジェクタから燃料を噴射しない程度のパルス時間に設定されている請求項3記載の電子制御装置。
【請求項5】
前記駆動指令部は、
前記今回の前記パルスオフイベントにおいて前記今回の前記パルスオフイベントの直後から前記駆動指令パルスを出力不能な時間間隔として所定のパルスガード時間(K)をセットし、
前記パルスガード時間以内に前記パルスオンイベントが実行されているか否かを判定し、
前記パルスガード時間以内に前記パルスオンイベントが実行されていれば、前記パルスガード時間の経過後に前記駆動指令パルスをオン出力する(S18、S31、S32)請求項1から4の何れか一項に記載の電子制御装置。
【請求項6】
前記パルスガード時間(K)は、隣接する前記駆動指令パルスが前記駆動制御部により別々の前記駆動指令パルスとして区別可能にする所定時間に設定されている請求項5記載の電子制御装置。
【請求項7】
前記駆動指令部はマイコン(6)により構成され、
前記パルスオンイベント、前記パルスオフイベントにおける前記マイコンの信号制御に係る動作を決定するアクションレジスタを前記マイコンに備え、
前記マイコンは、前記アクションレジスタにセットされる識別値に基づいて、前記パルスガード時間内に前記駆動指令パルスをオン出力しないようにする請求項6記載の電子制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子制御装置に関する。
【背景技術】
【0002】
近年のエンジンECUは、エンジン制御の高性能化に伴い、1エンジンサイクル内で複数段の駆動指令パルスを発生させることで多段噴射制御する。急加速時には、単位時間当たりに発生する駆動指令パルスが増加するため、複数の駆動指令パルスが近接することになる。このとき、多段噴射に係る各噴射段の間隔が、所定のキャンセル閾値以内となるときには、当該多段噴射の途中の噴射段をキャンセルしなければならない。特許文献1記載の技術では、微小パルスを出力することで途中の噴射段をキャンセルしている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1記載の技術では、噴射キャンセルの判定は、噴射終了時に起床される噴射オフイベントの最中に実施される。しかし、以下のような問題がある。
【0005】
今回の噴射オフイベントにて次回の噴射のタイミングが確定した後、エンジンのクランク軸の回転速度が増加しエンジン回転数が上昇したとき、隣接する噴射間の時間間隔がキャンセル閾値以内となった場合、噴射をキャンセル判定すべきであるものの噴射制御してしまうことになる。
【0006】
また、今回の噴射オフイベントにて次回の噴射のキャンセルが確定した後に、エンジンのクランク軸の回転速度が低下しエンジン回転数が低下したとき、隣接する噴射間の時間間隔がキャンセル閾値より拡大した場合、噴射をキャンセルすべきでないもののキャンセルしてしまう。
【0007】
本発明の目的は、噴射キャンセルの判定を適切に実行できるようにした電子制御装置を提供することにある。
【課題を解決するための手段】
【0008】
請求項1記載の発明は、エンジン(5)に燃料を噴射制御する電子制御装置を対象としている。駆動指令部(6)は、エンジンのクランク軸の回転角度を入力する入力部(14)を備え、駆動指令パルスのオンタイミングからオフタイミングの間、駆動指令パルスを駆動制御部に出力することで駆動制御部によりインジェクタを駆動制御して噴射するように構成されている。また駆動指令部(6)は、駆動指令パルスのオンタイミングに対応してパルスオンイベント(EVon)を実行し、駆動指令パルスのオフタイミングに対応してパルスオフイベント(EVoff)を実行する。
【0009】
また駆動指令部は、今回の駆動指令パルスのオフタイミングに対応したパルスオフイベントにて次回の駆動指令パルスのオンタイミングを回転角度の閾値によりセットするようになっている。駆動指令部は、入力部に入力される回転角度が閾値にコンペアマッチして次回の駆動指令パルスのオンタイミングが到来したときに起床される次回のパルスオンイベントにおいて、今回の駆動指令パルスのオフタイミングから次回のパルスオンイベントの実行タイミングまでの時間間隔に基づいて、次回の駆動指令パルスに対応した噴射をキャンセルするか否かを判定するようにしている。
【0010】
この場合、例えば、噴射オフイベントにて次の噴射のタイミングが確定した後、エンジンのクランク軸の回転速度が増加しエンジン回転数が上昇し、隣接する噴射間の時間間隔がキャンセル閾値以内となった場合には、今回の駆動指令パルスのオフタイミングから次回のパルスオンイベントの実行タイミングまでの時間間隔に基づいて、次回の駆動指令パルスに対応した噴射をキャンセルできる。
【0011】
逆に、例えば、噴射オフイベントにて次回の噴射のキャンセルが確定した後に、エンジンのクランク軸の回転速度が低下しエンジン回転数が低下したとき、隣接する噴射間の時間間隔がキャンセル閾値より拡大した場合には、今回の駆動指令パルスのオフタイミングから次回のパルスオンイベントの実行タイミングまでの時間間隔に基づいて、次回の駆動指令パルスに対応した噴射をキャンセル不要と判定して通常通り噴射制御を実行できる。これにより、噴射キャンセルの判定を適切に実行できる。
【図面の簡単な説明】
【0012】
【
図1】第1実施形態における燃料噴射制御システムの電気的構成図
【
図2】噴射前イベントの処理内容を説明するフローチャート
【
図3】パルスオンイベントの処理内容を説明するフローチャート
【
図4】パルスオフイベントの処理内容を説明するフローチャート
【
図5】駆動指令パルス、各レジスタ、カウンタ、クランク信号の時間変化を説明するタイミングチャート
【
図6】比較例を示す駆動指令パルス、各レジスタ、カウンタ、クランク信号の時間変化を説明するタイミングチャート
【
図7】第2実施形態における噴射前イベントの処理内容を説明するフローチャート
【
図8】パルスオンイベントの処理内容を説明するフローチャート
【
図9】パルスオフイベントの処理内容を説明するフローチャート
【
図10】パルスガード解除イベントの処理内容を説明するフローチャート
【
図11】駆動指令パルス、各レジスタ、カウンタ、クランク信号の時間変化を説明するタイミングチャート
【
図12】第3実施形態における駆動指令パルス、各レジスタ、カウンタ、クランク信号の時間変化を説明するタイミングチャート
【発明を実施するための形態】
【0013】
以下、電子制御装置の幾つかの実施形態について図面を参照しながら説明する。各実施形態において、同一の動作を行う構成については、同一の符号を付して必要に応じて説明を省略することがある。
【0014】
(第1実施形態)
図1から
図6は、第1実施形態の説明図を示す。まず
図1を参照して電子制御装置1の電気的構成を説明する。電子制御装置1は、クランク角センサ2やカム角センサ3などの各種センサから入力されるセンサ信号に基づいて、インジェクタ4を通じてエンジン5の内部に燃料を噴射制御する内燃機関の噴射制御装置である。エンジン5は、複数の気筒を備えるディーゼルエンジン、ガソリンエンジン、又はガスエンジンである。クランク角センサ2、カム角センサ3は、エンジン回転角度とエンジン回転速度を演算するために用いられるセンサである。
【0015】
電子制御装置1は、駆動指令部としてのマイクロコンピュータ6(以下、マイコンと略す)、駆動制御部としてのインジェクタ駆動用ASIC7(以下、ASICと略す)、及び、駆動回路8を備える。マイコン6は、演算コア9、ROM10、RAM11、割込処理部12、タイマユニット13、及び第1周辺I/O14を内部バス15により相互接続して構成され、燃料噴射タイミングや燃料噴射量等を演算する。
【0016】
ASIC7は、インジェクタ4を駆動制御する集積回路であり、揮発性メモリ及び不揮発性メモリを含む記憶部16、回路制御部17、パルスカウンタ18、及び第2周辺I/O19を内部バス20により相互接続して構成されている。マイコン6にASIC7の機能を一体に組み込んで構成しても良い。
【0017】
マイコン6とASIC7とは、第1周辺I/O14及び第2周辺I/O19を通じてデータを相互に通信可能になっている。また、マイコン6は第1周辺I/O14及び第2周辺I/O19を通じて専用線を用いてASIC7に駆動指令パルスを出力可能になっている。第1周辺I/O14は、エンジン5のクランク軸のクランクパルス信号が入力され、これによりクランク軸の回転角度に関する信号が入力される入力部として機能する。
【0018】
マイコン6には、1つ以上の演算コア9が組み込まれている。ROM10にはマイコン6の制御プログラムが記憶されている。ROM10には、後述する噴射前イベントEVb、パルスオンイベントEVon、又はパルスオフイベントEVoffにて演算コア9により実行される複数のプログラムが記憶されている。
【0019】
演算コア9は、クランク角センサ2、カム角センサ3からマイコン6に入力されるセンサ信号に含まれる情報を用い、ROM10に記憶された制御プログラムにしたがって演算処理を行うもので、インジェクタ4の駆動タイミングを演算し、ASIC7に対し駆動指令パルスを出力する。
【0020】
RAM11は、演算コア9が演算処理するときに一時的にデータを保持するもので、後述する駆動指令パルスの予定出力回数、現在出力回数、駆動指令パルスのオンタイミング及びオフタイミング、及び、キャンセル閾値Tを記憶するワークエリアが確保されている。
【0021】
マイコン6は、周辺機能としてタイマユニット13を備える。タイマユニット13は、所定タイミングごとにカウントアップするフリーランの時間カウンタ21、カウント変化スピードがエンジン5のクランク軸の回転速度に比例して変化する角度カウンタ22を内蔵している。またタイマユニット13は、第1及び第2コンペアマッチレジスタを含むレジスタ23を内蔵している。
【0022】
タイマユニット13は、事前にレジスタ23にセットされた時間の閾値と時間カウンタ21のカウンタ値とがコンペアマッチしたときに、割込処理部12に対して割込要因を送信する。タイマユニット13は、事前にレジスタ23にセットされたエンジン回転角度の閾値と角度カウンタ22のカウンタ値とがコンペアマッチしたときに、割込処理部12に対して割込要因を送信する。割込処理部12は、割込要因を受信すると演算コア9に対し割込通知を行い、演算コア9が割込通知を受付けると、割込要因に応じた所定の制御プログラムを実行する。
【0023】
他方、ASIC7の記憶部16には、電流プロファイルデータが記憶されており、インジェクタ4に流す電流値(電流波形)が記憶されている。記憶部16には、パルスカウンタ18のカウンタ値ごとに電流プロファイルデータが記憶されている。
【0024】
パルスカウンタ18は、マイコン6から送信された駆動指令パルスの数をカウントするもので、フィードバック制御に使用される回路であり、駆動指令パルスを入力すると当該駆動指令パルスのオンタイミングに同期して1インクリメントされる。パルスカウンタ18は、第2周辺I/O19を介してマイコン6から書換可能に構成され、1エンジンサイクルごとにマイコン6からゼロクリアされる。パルスカウンタ18は、個々のインジェクタ4ごとに用意されている。すなわちエンジン5が4気筒であれば4つ用意されている。
【0025】
駆動回路8は、MOSFET等のスイッチング素子を用いたパワー駆動回路であり、回路制御部17は、マイコン6から入力される駆動指令パルスがオンの間、駆動回路8を用いてインジェクタ4を駆動制御する。回路制御部17は、インジェクタ4に流れるインジェクタ電流が記憶部16に記憶された所定の電流プロファイルデータと一致するように制御する。
【0026】
インジェクタ4は、例えばソレノイド式のインジェクタである。インジェクタ4は燃料が供給されると共にアクチュエータ(何れも図示せず)を所定位置に保持することで噴射弁を閉弁しているが、インジェクタ4に電流が供給されると、アクチュエータが駆動され噴射弁を開いて燃料をエンジン5に噴射する。
【0027】
ASIC7は、電流プロファイルを切り替えることで、インジェクタ4に供給されるインジェクタ電流を切替え、インジェクタ4から噴射される燃料の噴射量や消費電力を切替えることができる。
【0028】
本形態に特徴的な作用、動作を説明する。マイコン6は、入力されるセンサ信号に基づいて1エンジンサイクル内で複数段の駆動指令信号の駆動指令パルスを発生させることで多段噴射制御する。この間、演算コア9は、割込処理部12により噴射前イベントEVb、パルスオンイベントEVon、パルスオフイベントEVoffが発行されると対応したイベントを実行する。
【0029】
図2に処理内容を示す噴射前イベントEVbは、1エンジンサイクルあたり気筒ごとに1回、駆動指令パルスの出力前に割込処理部12により発行されるイベントである。
図3に処理内容を示すパルスオンイベントEVonは、駆動指令パルスのオンタイミングに対応して割込処理部12により発行されるイベントである。
図4に処理内容を示すパルスオフイベントEVoffは、駆動指令パルスのオフタイミングに対応して割込処理部12により発行されるイベントである。
【0030】
噴射前イベントEVbの処理では、
図2に示すように、演算コア9は、S1において1エンジンサイクルあたりの駆動指令パルスの予定出力回数を演算する。1エンジンサイクル中における多段噴射は、パイロット噴射、プレ噴射、メイン噴射、アフタ噴射、ポスト噴射などと称され、噴射段毎に1又は複数の駆動制御パルスを出力する。予定出力回数は、エンジン回転数など様々な要因により決定されるが、ここでは詳細説明を省略する。次に、演算コア9は、S2においてRAM11のワークエリアの中の現在出力回数の記憶値をゼロクリアする。
【0031】
次に、演算コア9は、S3において多段噴射の各噴射段の目的に基づいて駆動指令パルス毎の電流プロファイルを演算する。マイコン6及びASIC7は、S4において第1周辺I/O14及び第2周辺I/O19を通じて電流プロファイルデータを通信処理し、ASIC7内の記憶部16に対し噴射段毎に上書き更新する。このとき、ASIC7の回路制御部17は、記憶部16内に記憶されている電流プロファイルデータと上書き更新する電流プロファイルデータとを照合し、噴射段毎に電流プロファイルデータが一致していれば上書き更新しなくても良い。
【0032】
次に、マイコン6は、S5においてASIC7と通信することでパルスカウンタ18の記憶値をゼロクリアする。次に、演算コア9は、S6において全ての駆動指令パルスについて駆動指令パルス毎にオンタイミング及びオフタイミングを演算する。このとき、演算コア9が演算する駆動指令パルスのオンタイミング及びオフタイミングは、時間カウンタ21によりカウントされる時間の閾値により指定しても、角度カウンタ22によりカウントされるエンジン5のクランク回転角度の閾値により指定しても良く、エンジン回転速度等に基づいて適宜決定される。
【0033】
次に、演算コア9は、S7において初回の駆動指令パルスのオンタイミングが時間指定であるか否かを判定する。演算コア9は、初回の駆動指令パルスのオンタイミングを時間により指定しているときには、S8において演算した時間の閾値を第1コンペアマッチレジスタにセットする。
【0034】
他方、演算コア9が、初回の駆動指令パルスのオンタイミングをエンジン回転角度により指定しているときには、S9にて演算した角度の閾値を第1コンペアマッチレジスタにセットする。演算コア9が、第1コンペアマッチレジスタにセットした時間の閾値に時間カウンタ21のカウンタ値が一致したり、第1コンペアマッチレジスタにセットしたクランク回転角度の閾値に角度カウンタ22のカウンタ値が一致すると、タイマユニット13は、パルスオンイベントEVonを発行する。このため、演算コア9が第1コンペアマッチレジスタにセットすることで、パルスオンイベントEVonの起床タイミングを決定できる。
【0035】
タイマユニット13は、パルスオンイベントEVonの起床タイミングが到来すると割込処理部12に対してパルスオンイベントEVonの割込要因を送信し、割込処理部12は、割込要因を受信すると演算コア9に対し割込通知を行い、演算コア9が、割込通知を受付けるとパルスオンイベントEVonに関する制御プログラムを実行する。
【0036】
演算コア9が、
図3に示すパルスオンイベントEVonを実行するときには、S11においてRAM11のワークエリアに保存されている現在出力回数の記憶値を1インクリメントする。本実施形態では、コンペアマッチが発生したタイミングにて、マイコン6からASIC7に駆動指令パルスをオフからオンとして出力させる。このため、ASIC7が駆動指令パルスを入力することで、ASIC7のパルスカウンタ18のカウント値もまた正常に1インクリメントされる。
【0037】
演算コア9は、S12において前回パルスオフイベントタイミングと今回パルスオンタイミングとの時間間隔とキャンセル閾値Tとを比較することで今回の噴射段の噴射をキャンセルするか否かを判定する。
時間間隔が、キャンセル閾値T以内の場合、演算コア9は、キャンセル必要と判定し、時間間隔がキャンセル閾値Tより大きい場合、演算コア9はキャンセル不要と判定する。なお、キャンセル閾値Tは、噴射をキャンセルすべき時間間隔であり、予め定められている所定の時間間隔である。
【0038】
演算コア9は、キャンセル必要と判断すれば、S13において駆動指令パルスが微小パルスとなるように当該微小パルス出力用のオフタイミングを第2コンペアマッチレジスタにセットする。微小パルスの幅は、ASIC7が駆動指令パルスとして認識可能な長い幅(例えばμsオーダ)で、且つ、インジェクタ4を駆動不能な幅であれば良く、このときインジェクタ4の噴射孔は開放せず閉塞したままとなる。すなわち、微小パルスの幅は、インジェクタ4から燃料噴射しない程度のパルス時間に設定されている。
【0039】
逆に、演算コア9は、キャンセル不要と判断すれば、S14において次回の駆動指令パルスのオフタイミングが時間指定であるか否かを判定する。演算コア9は、次回の駆動指令パルスのオンタイミングが時間指定であるときには、S15において時間の閾値を第2コンペアマッチレジスタにセットする。
【0040】
他方、演算コア9は、次回の駆動指令パルスのオンタイミングがクランク回転角度により指定されていれば、S16においてクランク回転角度の閾値を第2コンペアマッチレジスタにセットする。演算コア9が、第2コンペアマッチレジスタにセットした時間の閾値に時間カウンタ21のカウンタ値が一致したり、第2コンペアマッチレジスタにセットしたクランク回転角度の閾値に角度カウンタ22のカウンタ値が一致すると、タイマユニット13はパルスオフイベントEVoffを発行する。このため、演算コア9が第2コンペアマッチレジスタにセットすることで、パルスオフイベントEVoffの起床タイミングを決定できる。
【0041】
タイマユニット13は、パルスオフイベントEVoffの起床タイミングが到来すると、割込処理部12に対してパルスオフイベントEVoffの割込要因を送信し、割込処理部12は割込要因を受信すると演算コア9に対し割込通知を行い、演算コア9が割込通知を受付けるとパルスオフイベントEVoffに関する制御プログラムを実行する。
【0042】
本実施形態では、コンペアマッチが発生したタイミングにてマイコン6がASIC7に対し駆動指令パルスをオンからオフとする。演算コア9は、
図4に示すS21において現在出力回数が予定出力回数以上となっているか否かを判定する。現在出力回数が、予定出力回数以上であれば、演算コア9は、S21において、現在の駆動指令パルスが出力予定の最後のパルスと判断する。そして、マイコン6は、パルスオフイベントEVoffを終了する。他方、現在出力回数が予定出力回数未満であれば、演算コア9は、出力予定の後続パルスが存在すると判定し、事前にS6にて演算されている次回の駆動指令パルスのオンタイミングを読み出す。
【0043】
次に、演算コア9は、S22において次回の駆動指令パルスのオンタイミングが時間指定であるか否かを判定する。演算コア9は、次回の駆動指令パルスのオンタイミングを時間指定するときには、S23において時間の閾値を第1コンペアマッチレジスタにセットする。他方、演算コア9は、初回の駆動指令パルスのオンタイミングをクランク回転角度により指定するときには、S24においてクランク回転角度の閾値を第1コンペアマッチレジスタにセットする。これにより、前述同様に、次回のパルスオンイベントEVonの起床タイミングを決定できる。その後、演算コア9は、前述したように、次回の噴射に関するパルスオンイベントEVonを繰り返す。
【0044】
以上示したように、演算コア9は、1エンジンサイクルの中で、1回だけ噴射前イベントEVbの処理を実行した後、各噴射段に対応してパルスオンイベントEVon、及び、パルスオフイベントEVoffを繰り返し実行することで、駆動指令パルスを順次ASIC7に出力できる。
【0045】
以下、具体例について、
図5及び
図6のタイミングチャートを参照しながら説明する。
駆動指令パルスの出力予定回数が3回、初回のオンタイミングを角度X、初回のオフタイミングを時刻Aと指定した場合の具体例を
図5に示している。また、従来技術を適用した場合の不具合例を比較例として
図6に示している。
【0046】
演算コア9は、噴射前イベントEVbを実行した後、初回の駆動指令パルスのパルスオンイベントEVonを角度Xにて実行し、パルスオフイベントEVoffを時刻Aにて実行する。この
図5の具体例では、演算コア9はパルスオフイベントEVoffを時刻Aにて実行したとき、次回の駆動指令パルスのオンタイミングを、クランク回転角度の閾値(角度Y)を用いてセットしている。
【0047】
演算コア9は、2回目のパルスオフイベントEVoff内で初回のパルスオンイベントEVonからの時間間隔を演算する。そして演算コア9は、時間間隔をキャンセル閾値Tと比較した結果、時間間隔がキャンセル閾値Tより広い場合、噴射のキャンセル不要と判定する。演算コア9は、パルスオフイベントEVoffにおいて、駆動指令パルスのオンタイミングをクランク回転角度の閾値(角度Y)により第1コンペアマッチレジスタにセットする。
【0048】
通常、演算コア9が、1エンジンサイクルの中で前述の多段噴射に係る各イベントを繰り返しても、エンジン回転数が一定の場合やエンジン回転数が緩やかに変化する場合には、正常に実行される。
【0049】
しかし、マイコン6が初回のパルスオフイベントEVoffを実行した後、
図5のタイミングt1以降に示すように、エンジン5のクランク軸の回転速度が上昇しエンジン回転数が上昇すると、角度カウンタ22の周期はエンジン回転数に比例して変化するため、角度カウンタ22のカウントアップ速度が上昇する。
【0050】
この場合、エンジン5のクランク軸の回転角度が本来の予定間隔P(
図6参照)を経過するよりも速く閾値にコンペアマッチし、初回の駆動指令パルスのオフタイミングと2回目の駆動指令パルスのオンタイミングとの間の時間間隔が短くなる。このとき、時間間隔が本来の予定間隔Pより短くなったとしても、マイコン6が、駆動指令パルスをそのままASIC7に出力してしまうことで、
図6の不具合例に示すように、ASIC7は、通常通り噴射制御してしまう。
【0051】
本実施形態では、初回のオンタイミングは、噴射前イベントEVb内で第1コンペアマッチレジスタにセットされ、その後、初回のオフタイミングは、パルスオンイベントEVon内で第2コンペアマッチレジスタにセットされ、そして、2回目のオンタイミングは、直前のパルスオフイベントEVoff内で第1コンペアマッチレジスタにセットされる。
【0052】
初回のパルスオフイベントEVoff後に、エンジン回転数が上昇することで角度カウンタ22のカウントアップ速度が上昇し、本来の予定間隔Pを経過するよりも速く角度がコンペアマッチした場合、
図5に示すように、演算コア9が、そのコンペアマッチしたときに起床される2回目のパルスオンイベントEVonにて初回のオフタイミングと2回目のパルスオンイベントEVonの実行タイミングまでの時間間隔とキャンセル閾値Tとを比較し、時間間隔がキャンセル閾値T以内のときには、噴射をキャンセルすると判定する。
【0053】
このとき、演算コア9は、2回目の駆動指令パルスのオフタイミングとして事前に
図2のS6にて演算した時刻Bではなく、微小パルス出力用の時刻Eを第2コンペアマッチレジスタにセットする(
図3のS12→S13)。マイコン6は、ASIC7に微小パルスを出力するが、ASIC7は、入力された微小パルスに基づいて回路制御部17により駆動回路8を通じてインジェクタ4を駆動したとしてもアクチュエータを充分に駆動できないため、噴射弁を閉弁したまま保持できる。これにより、燃料噴射量に影響を与えることなく噴射のキャンセルを実現できる。
【0054】
以下、本実施形態の特徴をまとめる。本実施形態によれば、演算コア9が、2回目のパルスオンイベントEVonにおいて、初回の駆動指令パルスのオフタイミング(パルスオフイベントEVoffの実行タイミング)から2回目のパルスオンイベントEVonの実行タイミングまでの時間間隔に基づいて、2回目の駆動指令パルスに対応した噴射をキャンセルするか否かを判定するようにした。これにより、初回のパルスオフイベントEVoffにて次の噴射のタイミングを確定した後、エンジン5のクランク軸の回転速度が増加してエンジン回転数が上昇し、隣接する噴射間の時間間隔がキャンセル閾値以内となった場合であっても、マイコン6は噴射をキャンセル判定できる。これにより、直前のエンジン5のクランク軸の回転角度の変化、エンジン回転数の変化を反映して噴射制御でき、噴射のキャンセル判定を適切に実行できる。
【0055】
マイコン6は、2回目のパルスオンイベントEVonにてその駆動指令パルスのオフタイミングをセットするため、パルスオンイベントEVonの発生後にパルス幅を調整できる。またパルスオンイベントEVonの実行時に駆動指令パルスのパルス幅を調整できる。
【0056】
マイコン6は、駆動指令パルスとして微小パルスを出力することで噴射のキャンセルを実現することができ、パルスオンイベントEVonの実行後に噴射をキャンセルできる。
【0057】
(第2実施形態)
図7から
図11は、第2実施形態の追加説明図を示す。第1実施形態と同一部分については同一符号を付すと共に同一処理を行う部分については同一ステップ番号を付して必要に応じて説明を省略し、第1実施形態と異なる部分について説明する。
【0058】
本形態では、
図1に示したマイコン6のRAM11にはパルスガード時間Kを記憶するワークエリアが確保されている。
図1には図示していないが、第1周辺I/O14と第2周辺I/O19との間にローパスのノイズフィルタが設置されている場合がある。
パルスガード時間Kは、駆動指令パルスのオンからオフの立下り、オフからオンの立上りの信号が連続して現れたときに前述のノイズフィルタに吸収されない程度の時間長に設定される。ASIC7側からの視点で考慮すると、パルスガード時間Kは、隣接する駆動指令パルスがASIC7により別々の駆動指令パルスとして区別可能にする所定時間に設定されている。
【0059】
エンジン回転数が、パルスオフイベントEVoffの後に急激に上昇すると、隣接する駆動指令パルスの時間間隔がある一定時間より短くなり、駆動指令パルス間の立上り及び立下りの信号がノイズフィルタに吸収されてしまい、ASIC7が駆動指令パルスの入力パルスカウンタ値を正常にカウントできなくなる虞がある。このため、パルスガード時間Kは、このノイズフィルタの構成及び回路定数に基づいて適応的に設定されていることが望ましい。
【0060】
また
図1に示したマイコン6のレジスタ23には、第1アクションレジスタ及び第2アクションレジスタが用意されている。第1アクションレジスタは、第1コンペアマッチレジスタがコンペアマッチしたときの信号制御内容を示す。また第2アクションレジスタは、第2コンペアマッチレジスタがコンペアマッチしたときの信号制御内容を示す。
【0061】
実行時の信号制御内容としては、「パルスオン」、「パルスオフ」、又は、「アクションなし」を選択できる。「パルスオン」は、駆動指令パルスをオン出力する動作を実行することを示す。「パルスオフ」は、駆動指令パルスをオフ出力する動作を実行することを示す。「アクションなし」は、何もアクションしないことを示す。
レジスタ23内の第1及び第2アクションレジスタは、マイコン6に内蔵されるレジスタであり、マイコン6がリアルタイム制御でき、マイコン6は第1又は第2アクションレジスタにセットされる識別値に基づいて動作を決定できる。
【0062】
第1実施形態でも説明したように、マイコン6は、入力されるセンサ信号に基づいて1エンジンサイクル内で複数段に係る駆動指令パルスを発生させることで多段噴射制御する。この間、演算コア9は、割込処理部12により噴射前イベントEVb、パルスオンイベントEVon、パルスオフイベントEVoffが発行されると対応したイベントを実行する。
【0063】
図7に示すように、噴射前イベントEVb処理では、第1実施形態にて説明したS1~S9の処理を実行した後、演算コア9は、S10aにおいてレジスタ23中の第1アクションレジスタに「パルスオン」をセットし、S10bにおいてレジスタ23中の第2アクションレジスタに「パルスオフ」をセットする。
【0064】
図8に示すように、パルスオンイベントEVonでは、演算コア9は、S11において現在出力回数を1インクリメントする。
【0065】
次に演算コア9は、S17においてパルスガード判定する。このパルスガード判定処理は、隣接するパルスオフイベントEVoffの実行タイミングとパルスオンイベントEVonの実行タイミングとの時間間隔と、パルスガード時間Kとの間の比較に基づいて行われる。
【0066】
演算コア9は、S17においてパルスオンイベントEVonの発生タイミングがパルスガード時間K以内であるか否かを判定し、パルスガード時間K以内であれば、S18において第2アクションレジスタに「パルスオン」をセットする。
逆に、演算コア9は、S17においてパルスオンイベントEVonの実行タイミングがパルスガード時間Kの外であれば、S12において噴射のキャンセルを判定する。噴射のキャンセル判定は、第1実施形態と同様に、前回噴射オフタイミングと今回噴射オンタイミングの時間間隔とキャンセル閾値Tとの比較に基づいて行うと良い。
【0067】
演算コア9は、S12にて噴射のキャンセルを必要と判断すれば、S13にて第2コンペアマッチレジスタに微小パルス出力用のオフ時間をセットする。また演算コア9は、S12にて噴射のキャンセルを不要と判断すれば、S14~S16に示すように第1実施形態と同様に次回の駆動指令パルスのオフタイミングを時間の閾値又はクランク軸の回転角度の閾値によりセットする。
【0068】
図9に示すように、パルスオフイベントEVoffでは、第1実施形態にて説明したS21~S24の処理を実行する。その後、演算コア9は、S25において第2コンペアマッチレジスタに現在時刻+パルスガード時間Kをセットする。演算コア9は、S26aにおいて第1アクションレジスタに「アクションなし」をセットし、S26bにおいて第2アクションレジスタに「アクションなし」をセットする。本形態では、マイコン6は、第2コンペアマッチレジスタのコンペアマッチのタイミングにてASIC7に駆動指令パルスをオフ出力する。
【0069】
また、タイマユニット13の時間カウンタ21によりパルスガード時間Kが経過したことが判定されると、割込処理部12はパルスガード解除イベントEVpを発行する。
図10に示すように、演算コア9が、パルスガード解除イベントEVpを実行するときに、S31において第2アクションレジスタに記憶されている状態が「パルスオン」であるか「アクションなし」であるかを判定することで、既に対応したパルスオンイベントEVonが実行されているか否かを判定する。
【0070】
第2アクションレジスタに「パルスオン」とセットされていれば、演算コア9は、既にパルスオンイベントEVonが発行されているため、パルスオンイベント発生済と判断し、S32において第2コンペアマッチレジスタに微小パルス出力用のオフ時間Fをセットし、S33の処理に進む。
【0071】
逆に、第2アクションレジスタに「アクションなし」と状態が記憶されていれば、演算コア9は、パルスオンイベント未発生と判断し、第2コンペアマッチレジスタの設定を行うことなく、そのままS33の処理に進む。
【0072】
そして演算コア9は、第2アクションレジスタの状態に拘わらず、S33において第1アクションレジスタに「パルスオン」をセットし、S34において第2アクションレジスタに「パルスオフ」をセットする。マイコン6は、このように処理を繰り返す。
【0073】
以下、具体例について、
図11のタイミングチャートを参照しながら説明する。第1実施形態と同様に、1回目のパルスオフイベントEVoff後にエンジン回転数が急上昇し、1回目と2回目の駆動指令パルスの時間間隔が極端に短くなる場合の例を
図11に示している。
【0074】
演算コア9は、初回のパルスオンイベントEVonにて初回の駆動指令パルスのオフタイミングを時刻Aとして第2コンペアマッチレジスタにセットする(
図8のS14~S16:
図11のタイミングtx)。演算コア9は、初回のパルスオフイベントEVoffにおいて、2回目の駆動指令パルスのオンタイミングを角度の閾値として角度Yを第1コンペアマッチレジスタにセットする(
図9のS24)が、第2コンペアマッチレジスタには、現在時刻Aとパルスガード時間Kとを加算した値A+Kをセットする(
図9のS25:
図11のタイミングta)。
【0075】
このとき、演算コア9は、第1アクションレジスタ及び第2アクションレジスタに「アクションなし」としてセットする(
図9のS26a、S26b)。この後、エンジン回転数がタイミングt2にて急上昇した場合、角度カウンタ22のカウントアップ速度が急増する。
図11のタイミングt2以降参照。
【0076】
その後、角度カウンタ22が角度Yにコンペアマッチすると2回目のパルスオンイベントEVonが起床されるが、このパルスオンイベントEVonが現在時刻A+パルスガード時間K以内に発生した場合、演算コア9は、第2アクションレジスタに「パルスオン」とセットする(
図8のS17→S18:
図11のタイミングty)。パルスガード時間Kが経過すると、時間カウンタ21のカウンタ値が第2コンペアマッチレジスタの値A+Kにコンペアマッチし、演算コア9は、パルスガード解除イベントEVpを実行する(
図11のタイミングtak)。するとマイコン6は、第2アクションレジスタにセットされた「パルスオン」を実行し、駆動指令パルスをオン出力する。
【0077】
したがって、演算コア9が、パルスオフイベントEVoff内にて第1アクションレジスタ及び第2アクションレジスタに「アクションなし」としてセットすることで、パルスガード時間Kの途中で角度カウンタ22の値が第1コンペアマッチレジスタの値(角度Y)にコンペアマッチした場合でも、駆動指令パルスが即時にオン出力されることはなく、パルスガード時間Kの経過後に次回の駆動指令パルスがオン出力されるようになる。
【0078】
これにより、今回の初回の駆動指令パルスのオフタイミングから次回の2回目の駆動指令パルスのオンタイミングまでの時間間隔がパルスガード時間K以上となることが保証される。このため、ASIC7側では、駆動指令パルスを正常に認識でき、ASIC7がパルスカウンタ18により駆動指令パルスを正常にカウントできる。
【0079】
なお、演算コア9は、パルスガード解除イベントEVpにおいて第2アクションレジスタの状態を参照し「パルスオン」であった場合には、第2コンペアマッチレジスタに微小パルス出力用のオフ時間Fをセットする(
図10のS31→S32:
図11のtak)。すると、第1実施形態と同様に、インジェクタ4から燃料噴射されない程度の微小パルスを出力できる。
【0080】
オフ時間Fが経過すると、パルスオフイベントEVoffが発行されるが、演算コア9が第1コンペアマッチレジスタに時間の閾値(時刻C)をセットすると共に、第2コンペアマッチレジスタに現在時刻F+パルスガード時間Kをセットする(
図9のS23→S25:
図11のtf)。
【0081】
その後、パルスガード時間Kが経過すると、パルスガード解除イベントEVpが発行されるが、演算コア9が第2アクションレジスタの状態を参照しても「アクションなし」と記憶されているため、演算コア9は、S33において第1アクションレジスタに「パルスオン」、S34において第2アクションレジスタに「パルスオフ」をセットして終了する(
図10のS33、S34:
図11のタイミングtfk)。
【0082】
その後、時刻Cが経過すると、第1コンペアマッチレジスタがコンペアマッチすることでパルスオンイベントEVonが発行される。第1アクションレジスタがパルスオン設定されているため、コンペアマッチに同期して駆動指令パルスをオン出力する。また、演算コア9は、噴射のキャンセル判定してもキャンセル不要と判断し、第2コンペアマッチレジスタに時間の閾値(時刻D)をセットする(
図8のS12、S14、S15:
図11のタイミングtc)。
その後、時刻Dが経過すると、パルスオフイベントEVoffが発行され、演算コア9は第2アクションレジスタに記憶された「パルスオフ」を実行することで、駆動指令パルスをオフ出力する(
図11のタイミングtd)。このように処理が繰り返される。
【0083】
本実施形態によれば、マイコン6は、初回のパルスオフイベントEVoffにて当該初回のパルスオフイベントEVoff直後から駆動指令パルスを出力不能な時間間隔として所定のパルスガード時間Kをセットし、パルスガード時間K以内にパルスオンイベントEVonが実行されていれば、パルスガード時間Kの経過後に駆動指令パルスを出力するようにしている。これにより、パルス間の時間間隔をパルスガード時間K以上確保することができ、ASIC7がパルスカウンタ18により駆動指令パルスの入力数を正常にカウントできる。
【0084】
パルスガード時間Kは、隣接する駆動指令パルスがASIC7により別々の駆動指令パルスとして区別可能にする所定時間に設定されているため、たとえマイコン6とASIC7との間にノイズフィルタが設置されていたとしても、隣接する駆動指令パルスの間の立下り、立上り信号がノイズフィルタに吸収されることがなくなる。これにより、ASIC7は駆動指令パルスを正常に認識できる。
【0085】
マイコン6は、レジスタ23内の第1又は第2アクションレジスタにセットされる識別値に基づいて動作を決定し、パルスガード時間K以内に駆動指令パルスを出力しない。このとき、第1及び第2アクションレジスタは、マイコン6内蔵のレジスタのためリアルタイム制御できる。
【0086】
(第3実施形態)
図12は、第3実施形態の説明図を示す。第3実施形態は、マイコン6が初回のパルスオフイベントEVoffを実行した後、エンジン5のクランク軸の回転速度が下降しエンジン回転数が下降した場合の例を挙げて説明する。
【0087】
マイコン6が実行する処理内容は、第1実施形態と同様であるため説明を省略する。角度カウンタ22の周期はエンジン回転数に比例して変化するため、角度カウンタ22のカウントアップ速度も下降する。
図12のタイミングt3以降参照。
【0088】
このとき、エンジン5のクランク軸の回転角度が、本来の噴射するべき予定間隔Pよりも遅く閾値にコンペアマッチし、1回目の駆動指令パルスのオフタイミングと2回目の駆動指令パルスのオンタイミングとの間の時間間隔が長くなる。このとき、時間間隔が本来の予定間隔Pより長くなるため、マイコン6は、駆動指令パルスをそのままASIC7に出力する。これにより、ASIC7は、通常通り燃料を噴射制御できる。
【0089】
「発明が解決しようとする課題」の欄に例示したように、パルスオフイベントEVoffにて次回の噴射のキャンセルを確定した後に、エンジン5のクランク軸の回転速度が低下しエンジン回転数が低下したとき、隣接する噴射間の時間間隔がキャンセル閾値Tより拡大した場合、噴射をキャンセルすべきでないもののキャンセルしてしまうことになる。
【0090】
本実施形態によれば、初回のパルスオフイベントEVoffの後に、エンジン回転数が低下することで角度カウンタ22のカウントアップ速度が下降した場合、本来の予定間隔Pを経過しても角度カウンタ22がクランク回転角度の閾値とコンペアマッチしない。その後、時間経過すると角度カウンタ22が閾値(角度Y)とコンペアマッチすることになる。
【0091】
このため、演算コア9が、そのコンペアマッチしたときに起床される2回目のパルスオンイベントEVonにて初回のパルスオフタイミングと2回目のパルスオンイベントEVonの実行タイミングとの間の時間間隔とキャンセル閾値Tとを比較するが、このとき時間間隔がキャンセル閾値Tよりも大きくなるため、噴射をキャンセルすることなく駆動指令パルスを正常に出力することで通常通り噴射制御できる。
【0092】
本開示は、前述した実施形態に準拠して記述したが、本開示は当該実施形態や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範畴や思想範囲に入るものである。
【符号の説明】
【0093】
図面中、1は電子制御装置、4はインジェクタ、5はエンジン、6はマイコン(駆動指令部)、7はインジェクタ駆動用ASIC(駆動制御部)、14は第1周辺I/O(入力部)、を示す。