(57)【特許請求の範囲】
【請求項１】
一定時間毎に燃焼形態を決定し、この燃焼形態に見合った燃料及び点火に係わる制御値を演算処理するエンジンの制御装置において、
各燃焼サイクル毎の燃焼形態を、燃焼気筒の上死点前の所定クランク角タイミングで燃料及び点火に係わる制御値の演算を完了している処理サイクルの燃焼形態に確定し、同じ処理サイクルで演算した燃料及び点火に係わる制御値を用いてエンジン制御を行う手段を備えたことを特徴とするエンジンの制御装置。
【請求項２】
上記各燃焼サイクル毎の燃焼形態を、上記所定クランク角タイミングに最も近い時期で燃料及び点火に係わる制御値の演算を完了した処理の燃焼形態に確定することを特徴とする請求項１記載のエンジンの制御装置。
【請求項３】
上記各燃焼サイクル毎の燃焼形態を、筒内に流入する空気の遅れと燃料の遅れとの差に対応した時間だけ上記所定クランク角タイミングから過去に遡った処理サイクルでの燃焼形態に確定することを特徴とする請求項１記載のエンジンの制御装置。
【請求項４】
上記筒内に流入する空気の遅れと燃料の遅れとの差を、エンジン回転数に基づいて求めることを特徴とする請求項３記載のエンジンの制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、一定時間毎に燃焼形態に見合った燃料及び空気の制御量を演算するエンジンの制御装置に関する。
【０００２】
【従来の技術】
エンジン制御システムにおいては、燃料噴射量や点火時期等を一定時間毎に演算し、噴射タイマ・点火タイマをクランク角に同期してセットするシステムが採用されることが多く、特に、リーンバーンエンジンや筒内噴射エンジン等のように、リーン空燃比による成層燃焼からストイキオ近傍の空燃比による均一燃焼まで広範囲に渡る空燃比での燃焼を行うエンジンでは、例えば、１０ｍｓ毎の割込み処理で、種々の運転パラメータから燃焼形態を決定し、その燃焼形態での燃料噴射量、燃料噴射時期、点火時期を演算して、きめ細かなエンジン制御を行うようにしている。
【０００３】
【発明が解決しようとする課題】
しかしながら、一定時間毎の割込み処理において燃料噴射量、燃料噴射時期、点火時期を順次演算する途中でクランク角に同期した噴射・点火のタイマセットの割込みが入ると、タイマセットにはメモリの最新値が読み出されることになり、同じ燃焼サイクル内で燃焼形態の異なる値がタイマにセットされる可能性がある。
【０００４】
例えば、運転状態の変化により、前回の時間周期割込み時の成層燃焼から均一燃焼へ変化した場合、この均一燃焼に適合した燃料噴射量を算出し、次に、燃料噴射時期を算出している途中でタイマセットのクランク角同期割込みが入ると、メモリ中には、算出されたばかりの均一燃焼の燃料噴射量と、前回の時間周期割込み処理で算出された成層燃焼の燃料噴射時期及び点火時期とが混在することになる。
【０００５】
この場合、成層燃焼と均一燃焼とでは、燃料噴射量、燃料噴射時期、点火時期の最適値が大きく異なり、これらの燃焼形態の異なる値がメモリから読み出されてタイマにセットされると、成層燃焼用の燃料噴射時期に均一燃焼用の燃料噴射量が出力されることになり、燃焼による排気ガスエミッションの悪化を招くばかりでなく、エンジン不調の原因になる。
【０００６】
本発明は上記事情に鑑みてなされたもので、一定時間周期で演算される燃料及び点火に係わる制御値に対し、同じ燃焼サイクル内で異なる燃焼形態の制御値が混用されることを防止し、燃焼悪化を未然に回避することのできるエンジンの制御装置を提供することを目的としている。
【０００７】
【課題を解決するための手段】
請求項１記載の発明は、一定時間毎に燃焼形態を決定し、この燃焼形態に見合った燃料及び点火に係わる制御値を演算処理するエンジンの制御装置において、各燃焼サイクル毎の燃焼形態を、燃焼気筒の上死点前の所定クランク角タイミングで燃料及び点火に係わる制御値の演算を完了している処理サイクルの燃焼形態に確定し、同じ処理サイクルで演算した燃料及び点火に係わる制御値を用いてエンジン制御を行う手段を備えたことを特徴とする。
【０００８】
請求項２記載の発明は、請求項１記載の発明において、上記各燃焼サイクル毎の燃焼形態を、上記所定クランク角タイミングに最も近い時期で燃料及び点火に係わる制御値の演算を完了した処理の燃焼形態に確定することを特徴とする。
【０００９】
請求項３記載の発明は、請求項１記載の発明において、上記各燃焼サイクル毎の燃焼形態を、筒内に流入する空気の遅れと燃料の遅れとの差に対応した時間だけ上記所定クランク角タイミングから過去に遡った処理サイクルでの燃焼形態に確定することを特徴とする。
【００１０】
請求項４記載の発明は、請求項３記載の発明において、上記筒内に流入する空気の遅れと燃料の遅れとの差を、エンジン回転数に基づいて求めることを特徴とする。
【００１１】
すなわち、本発明によるエンジンの制御装置では、一定時間毎に燃焼形態を決定し、この燃焼形態に見合った燃料及び点火に係わる制御値を演算処理する一方、各燃焼サイクル毎の燃焼形態を燃焼気筒の上死点前の所定クランク角タイミングで燃料及び点火に係わる制御値の演算を完了している処理サイクルの燃焼形態に確定し、同じ処理サイクルで演算した燃料及び点火に係わる制御値を用いてエンジン制御を行う。
【００１２】
各燃焼サイクル毎の燃焼形態は、所定クランク角タイミングに最も近い時期で燃料及び点火に係わる制御値の演算を完了した処理サイクルの燃焼形態に確定しても良く、また、筒内に流入する空気の遅れと燃料の遅れとの差に対応した時間だけ所定クランク角タイミングから過去に遡った処理での燃焼形態に確定しても良い。筒内に流入する空気の遅れと燃料の遅れとの差は、エンジン回転数に基づいて求めることができる。
【００１３】
【発明の実施の形態】
以下、図面を参照して本発明の実施の形態を説明する。図１〜図４は本発明の実施の第１形態に係わり、図１は時間周期割込み及びクランク角同期割込みのタイミングを示す説明図、図２はエンジン制御系の概略構成図、図３は１０ｍｓ定期割込みルーチンのフローチャート、図４はクランク角同期割込みルーチンのフローチャートである。
【００１４】
図２において、符号１は、リーンバーンエンジンや筒内噴射エンジン等のように、リーン空燃比による成層燃焼からストイキオ近傍の空燃比による均一燃焼まで広範囲に渡る空燃比での燃焼を行うエンジンであり、図においては、筒内噴射エンジンの例について示す。
【００１５】
上記エンジン１の吸気系には、スロットルバルブを内設したスロットルボディ２が介装され、このスロットルボディ２の上流側にエアフローメータ３を介してエアクリーナ４が取付けられている。一方、上記エンジン１の排気系には、排気ガスを浄化する触媒５が介装され、この触媒５の下流側にマフラ６が取付けられている。
【００１６】
また、上記エンジン１の燃焼室には、高圧燃料を筒内に直接噴射するインジェクタ７と、点火コイル９の二次巻線側に接続される点火プラグ８とが臨まされており、上記点火コイル９の一次巻線側はイグナイタ１０に接続されている。
【００１７】
一方、符号２０は、燃料噴射制御や点火時期制御等のエンジン制御を行う電子制御ユニットであり、マイクロコンピュータ２１を中核とし、このマイクロコンピュータ２１に、入力インタフェース２２、出力インタフェース２３、駆動回路２４等の周辺回路が接続されて構成されている。
【００１８】
上記ＥＣＵ２０の入力インタフェース２２には、上記エアフローメータ３、上記スロットルボディ２に設けられたスロットルバルブの開度を検出するスロットル開度センサ１１、上記エンジン１のクランク角を検出するクランク角センサ１２、燃料噴射及び点火対象気筒を判別するための気筒判別センサ１３、上記エンジン１の冷却水温を検出する水温センサ１４等のセンサ類が接続され、一方、上記出力インターフェース２３には、上記イグナイタ１０が接続されるとともに、上記インジェクタ７等のアクチュエータ類が駆動回路２４を介して接続されている。
【００１９】
上記マイクロコンピュータ２１では、メモリに記憶された制御プログラムを実行し、各種センサ類によって検出した運転状態に基づいて、成層燃焼か均一燃焼かの燃焼形態に応じた燃料噴射量、燃料噴射時期、点火時期等のエンジン制御量を、所定の時間周期毎（例えば、１０ｍｓ毎）の定期割込み処理によって演算するとともに、上記クランク角センサ１２からの信号に基づくクランク角同期割込み処理により、噴射タイマ、点火タイマをセットする（但し、噴射タイマのセットと点火タイマのセットとは、基準とするクランク角が異なる）。
【００２０】
そして、上記噴射タイマによって所定のタイミングで上記インジェクタ７に噴射パルス信号が出力されて燃料が噴射され、また、上記点火タイマによって上記イグナイタ１０等に点火パルス信号が出力されて所定のタイミングで点火プラグ８がスパークする。
【００２１】
この場合、あるサイクルでの燃焼形態は、燃焼気筒の上死点前の所定のクランク角（例えば、ＢＴＤＣ４２５°ＣＡ）でクランク角同期割込みが発生した時点で確定され、１０ｍｓ定期割込みにおける燃料噴射量、燃料噴射時期、点火時期の計算途上において、噴射タイマセットや点火タイマセットのクランク角同期割込みが発生した場合であっても、同じ燃焼サイクル中では同じ燃焼形態の値で噴射タイマ及び点火タイマがセットされ、エンジン１の燃焼状態が最適な状態に維持される。
【００２２】
すなわち、例えば、図１に示すように、１０ｍｓ毎に、それぞれ、燃料噴射量ＧＦ＿Ｂｎ（ｎ＝３，２，…）、燃料噴射時期ＴＪ＿Ｂｎ（ｎ＝３，２，…）、点火時期ＩＧ＿Ｂｎ（ｎ＝３，２，…）を燃焼形態に応じて算出する時間周期割込み処理において、最新の割込み時に燃料噴射量ＧＦ＿Ｂ０を算出し、燃料噴射時期ＴＪ＿Ｂ０を計算途中で、次の燃焼サイクルに対する噴射タイマセットのクランク角同期割込みが発生した場合、前回の１０ｍｓ割込み処理での燃焼形態に適合する燃料噴射量ＧＦ＿Ｂ１、燃料噴射時期ＴＪ＿Ｂ１、点火時期ＩＧ＿Ｂ１が、次の燃焼サイクルでの確定データとして採用され、燃焼形態が確定する。そして、この確定した燃焼形態での燃料噴射量ＧＦ＿Ｂ１、燃料噴射時期ＴＪ＿Ｂ１を用いて噴射タイマがセットされるとともに、次の点火タイマセットのクランク角同期割込み処理においても、確定した燃焼形態での点火時期ＩＧ＿Ｂ１が使用される。
【００２３】
一方、噴射タイマセットのクランク角同期割込みが発生したとき、その直前の１０ｍｓ定期割込み処理で燃料噴射量、燃料噴射時期、点火時期の計算が全て完了している場合には、それらの燃料噴射量、燃料噴射時期、点火時期が、次の燃焼サイクルでのデータとして確定され、この確定データの中の燃料噴射量、燃料噴射時期を用いて噴射タイマがセットされるとともに、次の点火タイマセットのクランク角同期割込み処理においても、確定データの点火時期が使用される。
【００２４】
以下、上記ＥＣＵ２０における噴射タイマ及び点火タイマのセットに係わる処理について、図３及び図４のフローチャートに従って説明する。
【００２５】
図３は、１０ｍｓ毎に実行される定期割込みルーチンであり、まず、ステップS101で、燃料噴射量、燃料噴射時期、点火時期の計算途中であることを示す演算フラグＦＬＡＧ１をセットし（ＦＬＡＧ１←１）、ステップS102で、燃料噴射量、燃料噴射時期、点火時期を格納するメモリデータをシフトする。
【００２６】
次に、ステップS103へ進み、エンジン１の燃焼形態、例えば、点火プラグ８の発火部周辺の混合気に点火し、着火した火種により燃焼室内の希薄な混合気に火炎伝幡させる成層燃焼か、筒内で均一に混合した後に点火する均一燃焼かをエンジン負荷に応じて決定すると、ステップS104で、上記ステップS102で決定した燃焼形態に応じてマップを選択する等して燃焼形態に適合した燃料噴射量を設定する。
【００２７】
続くステップS105では、同様に、燃焼形態に応じて選択したマップを参照する等して燃焼形態に適合した燃料噴射時期を設定する。例えば、成層燃焼の場合には、圧縮行程後期の点火直前に燃料噴射を終了するよう、燃料噴射時期を設定し、均一燃焼の場合には、吸気行程の早い時期に燃料を噴射するよう、燃料噴射時期を設定する。
【００２８】
その後、ステップS106で、燃焼形態に応じたマップを選択して燃焼形態に適合した点火時期を設定すると、ステップS107で、演算フラグＦＬＡＧ１をクリアし（ＦＬＡＧ１←０）、ルーチンを抜ける。
【００２９】
一方、図４は、クランク角センサ１２からのクランクパルスにより、点火タイマあるいは噴射タイマのタイマセットのために割込み起動されるクランク角同期割込みルーチンであり、ステップS201で、燃焼サイクルの燃焼形態を確定済みであることを示す燃焼形態確定フラグＦＬＡＧ２を参照する。
【００３０】
そして、ＦＬＡＧ２＝０であり、燃焼サイクルの燃焼形態が確定されていないときには、上記ステップS201からステップS202へ進んで演算フラグＦＬＡＧ１を参照し、１０ｍｓ定期割込みによる燃料噴射量、燃料噴射時期、点火時期の設定中であるか否かを調べる。
【００３１】
その結果、上記ステップS202において、ＦＬＡＧ１＝０で１０ｍｓ定期割込みルーチンで燃料噴射量、燃料噴射時期、点火時期の設定中でないときには、ステップS203でメモリから最新データを読込んで確定データとしてステップS205へ進み、ＦＬＡＧ１＝１で１０ｍｓ定期割込みルーチンで燃料噴射量、燃料噴射時期、点火時期の設定が途中の状態であるときには、ステップS204でメモリから前回データを読込んで確定データとしてステップS205へ進む。
【００３２】
ステップS205では、燃焼形態が確定されたことを示すため燃焼形態確定フラグＦＬＡＧ２をセットして（ＦＬＡＧ２←１）ステップS208へ進む。また、上記ステップS201でＦＬＡＧ２＝１であり、既に今回の燃焼サイクルの燃焼形態が確定しているときには、上記ステップS201からステップS206へ進んで確定データを読み込み、ステップS207で燃焼形態確定フラグＦＬＡＧ２をクリアして（ＦＬＡＧ２←０）ステップS208へ進む。
【００３３】
ステップS208では、燃焼形態確定フラグＦＬＡＧ２の値に応じて噴射タイマあるいは点火タイマをセットし、ルーチンを抜ける。すなわち、ＦＬＡＧ２＝０で今回のクランク角同期割込みで初めて燃焼形態が確定されたときには、噴射パルスのタイマセット割込みとみなし、ステップS203あるいはステップS204で読込んだ燃料噴射量、燃料噴射時期の確定データを使用して噴射タイマをセットし、一方、ＦＬＡＧ２＝１であり、既に燃焼形態が確定しているときには、点火パルスのタイマセットとみなし、点火時期の確定データを使用して点火タイマをセットし、ルーチンを抜ける。
【００３４】
尚、燃焼形態によって噴射タイマと点火タイマのセットの順番を変えても良く、また、以上のクランク角同期割込みルーチンでは、タイマセットを行わずに燃焼形態を確定するだけの処理とし、その後のクランク角同期割込みルーチンでタイマセットを行うようにしても良い。
【００３５】
以上により、燃料噴射量、燃料噴射時期、点火時期を順次設定する途中でクランク角に同期したタイマセットの割込みが入っても、同じ燃焼サイクル内で燃焼形態の異なる制御値が混在してタイマにセットされることがなく、燃料噴射量、燃料噴射時期、点火時期の全てを燃焼形態に適合した値として採用することができ、燃焼形態が変化する過渡時においても、最適な制御を行うことができる。
【００３６】
図５〜図７は本発明の実施の第２形態に係わり、図５は空気量の遅れと燃料噴射量の遅れを示す説明図、図６は時間周期割込み及びクランク角同期割込みのタイミングを示す説明図、図７はクランク角同期割込ルーチンのフローチャートである。
【００３７】
所定のクランク角同期割込みでサイクルの燃焼形態を確定する際、前述の第１形態では、燃料噴射量、燃料噴射時期、点火時期の全ての計算が完了している最も近い１０ｍｓ定期割込み処理での値を採用するが、本形態では、筒内に流入する空気の遅れと燃料の遅れとの差を考慮し、その遅れの差に対応した時間だけ過去の値を採用する。
【００３８】
すなわち、図５に示すように、吸気管内の空気量は、エアチャンバへの充填による遅れを考慮して計算され、また、スロットル開度をアクチュエータを介して電子的に制御する電子スロットル制御式エンジン等では、アクチュエータの動特性等をも考慮して計算されるが、実際には、エンジン制御ユニットとスロットル制御ユニットとの間の通信遅れによるアクチュエータ等の無駄時間により、計算値（予測値）より遅れる。一方、要求出力に応じて設定される燃料噴射量には行程遅れがあり、実際に気筒内に流入する空気と燃料との位相が合わず、過渡運転時等に空燃比のリッチスパイクやリーンスパイクが生じる場合がある。
【００３９】
この空気の遅れと燃料の遅れとの差は、エンジン回転数に依存するため、一定時間毎に算出している燃料噴射量、燃料噴射時期、点火時期を保存しておき、エンジン回転数から空気の遅れと燃料の遅れとの差分を求め、図６に示すように、この差分に対応する時間だけ過去のデータを、ある燃焼サイクルでの燃焼形態の確定データとして用いることで、筒内に流入する空気と燃料との位相を合わせる。
【００４０】
このため、図７に示す本形態のクランク角同期割込みルーチンでは、ステップS301で、燃焼形態確定フラグＦＬＡＧ２を参照し、ＦＬＡＧ２＝１のとき、すなわち、既に今回の燃焼サイクルの燃焼形態が確定しているときには、第１形態と同様、ステップS309で確定データを読込み、ステップS310で燃焼形態確定フラグＦＬＡＧ２をクリアしてステップS311へ進む。
【００４１】
一方、上記ステップS301で、ＦＬＡＧ２＝０のときには、上記ステップS301からステップS302へ進んで空気量の遅れと燃料噴射量の遅れとの差を算出し、ステップS303で空気量の遅れと燃料噴射量の遅れとの差の大きさを調べる。そして、差が無視できる程に小さくないときには、上記ステップS303からステップS304へ進んで、差に対応する時間前のデータを読込み、一方、空気量の遅れと燃料噴射量の遅れとの差が無視できる程に小さい（≒０）ときには、上記ステップS303からステップS305へ進んで演算フラグＦＬＡＧ１を参照し、この演算フラグＦＬＡＧ１の値に応じて前述の第１形態と同様の処理を行う。
【００４２】
すなわち、ＦＬＡＧ１＝０のときには、ステップS305からステップS306へ進んで最新データを確定データとして読込み、ＦＬＡＧ１＝１のときには、ステップS305からステップS307へ進んで前回データを確定データとして読込む。そして、ステップS304,S306,S307のいずれかで、今回の燃焼サイクルにおける燃焼形態の確定データを得ると、ステップS308へ進んで燃焼形態確定フラグＦＬＡＧ２をセットし、ステップS311で、噴射タイマあるいは点火タイマをセットし、ルーチンを抜ける。
【００４３】
本形態では、燃料噴射量、燃料噴射時期、点火時期を順次設定する途中でクランク角に同期したタイマセットの割込みが入っても、同じ燃焼サイクル内で燃焼形態の異なる制御値が混在してタイマにセットされることがないばかりでなく、アクチュエータの無駄時間や行程遅れがある場合でも、実際の筒内流入空気量に見合う最適な制御を行うことができる。
【００４４】
【発明の効果】
以上説明したように本発明によれば、一定時間毎に燃焼形態を決定し、この燃焼形態に見合った燃料及び点火に係わる制御値を演算処理する一方、各燃焼サイクル毎の燃焼形態を燃焼気筒の上死点前の所定クランク角タイミングで燃料及び点火に係わる制御値の演算を完了している処理サイクルの燃焼形態に確定し、同じ処理サイクルで演算した燃料及び点火に係わる制御値を用いてエンジン制御を行うため、燃焼形態が変化する過渡時においても同じ燃焼サイクル内で燃焼形態の異なる制御値が混在して使用されることがなく、燃焼悪化を未然に回避して常に最適な燃焼状態に維持することができる。
【００４５】
しかも、筒内に流入する空気の遅れと燃料の遅れとの差に対応した時間だけ所定クランク角タイミングから過去に遡った処理での燃焼形態に確定することで、アクチュエータの無駄時間や行程遅れがある場合でも、実際の筒内流入空気量に見合う最適な制御を行うことができる等優れた効果が得られる。
【図面の簡単な説明】
【図１】本発明の実施の第１形態に係わり、時間周期割込み及びクランク角同期割込みのタイミングを示す説明図
【図２】同上、エンジン制御系の概略構成図
【図３】同上、１０ｍｓ定期割込みルーチンのフローチャート
【図４】同上、クランク角同期割込みルーチンのフローチャート
【図５】本発明の実施の第２形態に係わり、空気量の遅れと燃料噴射量の遅れを示す説明図
【図６】同上、時間周期割込み及びクランク角同期割込みのタイミングを示す説明図
【図７】同上、クランク角同期割込ルーチンのフローチャート
【符号の説明】
１        …エンジン
２０      …電子制御ユニット
ＧＦ＿Ｂｎ…燃料噴射量
ＴＪ＿Ｂｎ…燃料噴射時期
ＩＧ＿Ｂｎ…点火時期
【図１】
0004246282.tif 000002
【図２】
0004246282.tif 000003
【図３】
0004246282.tif 000004
【図４】
0004246282.tif 000005
【図５】
0004246282.tif 000006
【図６】
0004246282.tif 000007
【図７】
0004246282.tif 000008