以下、図面を参照しながら、本発明の好ましい実施形態を詳細に説明する。図1は、本実施形態による燃料噴射制御装置1を、これを適用した内燃機関3とともに概略的に示している。内燃機関(以下「エンジン」という)3は、車両(図示せず)に搭載された直列4気筒型のディーゼルエンジンである。
燃料噴射制御装置1は、図示しない気筒ごとに設けられた燃料噴射弁4(1つのみ図示)と、これらの燃料噴射弁4に燃料を供給するための燃料供給機構5と、燃料噴射弁4および燃料供給機構5の動作を制御するためのECU2を有している(図2参照)。
燃料噴射弁4は、燃料供給機構5に接続されており、燃料供給機構5から供給された燃料を気筒内に噴射する。燃料噴射弁4の開弁時間は、ECU2からの後述する制御入力によって制御され、それにより、燃料噴射弁4から噴射される燃料噴射量が制御される。
燃料供給機構5は、燃料を貯留する燃料タンク6と、燃料タンク6に第1フィードホース7および第1リターンホース8を介して接続され、燃料を高圧状態で貯留するコモンレール9と、第1フィードホース7の途中に設けられた高圧ポンプ10を有している。
燃料タンク6内には、低圧ポンプ11が設けられている。低圧ポンプ11は、ECU2により制御される電動ポンプタイプのものであり、エンジン3の運転中、常に運転され、燃料タンク6内の燃料を所定圧まで昇圧し、第1フィードホース7を介して高圧ポンプ10に圧送する。
高圧ポンプ10には、燃料調量弁10aが設けられている。燃料調量弁10aは、ソレノイドとスプール弁機構を組み合わせたものであり、低圧ポンプ11から高圧ポンプ10に供給される燃料量を調整するとともに、不要な燃料を、第2リターンホース12を介して燃料タンク6に戻す。これらの高圧ポンプ10への供給燃料量および燃料タンク6への戻し燃料量は、燃料調量弁10aに供給される電流のデューティ比(以下「調量弁デューティ比」という)TDUTYをECU2で制御することによって変化する。
高圧ポンプ10は、エンジン3のクランクシャフト(図示せず)に連結された容積式のものであり、クランクシャフトで駆動されることによって、燃料調量弁10aからの燃料をさらに昇圧し、コモンレール9に圧送する。
また、コモンレール9の第1リターンホース8との接続部分には、リリーフ弁13が設けられている。リリーフ弁13は、常開式の電磁弁で構成されており、供給される電流のデューティ比(以下「リリーフ弁デューティ比」という)RDUTYをECU2で制御することにより、その弁開度がリニアに変化することによって、コモンレール9から燃料タンク6への戻し燃料量が制御される。
以上の構成の燃料供給機構5では、調量弁デューティ比TDUTYにより、コモンレール9に流入する燃料量を制御するとともに、リリーフ弁デューティ比RDUTYにより、コモンレール9から流出する燃料量を制御することによって、コモンレール9内の燃料の圧力(以下「燃圧」という)が制御される。これにより、コモンレール9内に、燃料が高圧状態で貯留される。また、コモンレール9内の燃料は、第2フィードホース14を介して燃料噴射弁4に供給される。
さらに、コモンレール9には、燃圧センサ31が取り付けられている。燃圧センサ31は、燃圧(コモンレール9内の燃料の圧力)PFを検出するとともに、その検出信号をECU2に出力する。上述したように、コモンレール9内の燃料が燃料噴射弁4に供給されるので、検出された燃圧PFは、燃料噴射弁4から噴射される燃料の圧力と等しい。また、第1フィードホース7の燃料調量弁10aの付近には、燃料温度センサ32が設けられており、燃料温度センサ32は、当該付近における燃料の温度(以下「燃料温度」という)TFUELを検出するとともに、その検出信号をECU2に出力する。
また、エンジン3には、マグネットロータおよびMREピックアップで構成されたクランク角センサ33が設けられている。クランク角センサ33は、エンジン3のクランクシャフトの回転に伴い、いずれもパルス信号であるCRK信号、TDC信号およびCYL信号をECU2に出力する。このCRK信号は、所定クランク角(例えば6゜)ごとに出力され、ECU2は、このCRK信号に基づき、エンジン3の回転数(以下「エンジン回転数」という)NEを算出する。また、TDC信号は、エンジン3のいずれかの気筒のピストン(図示せず)が吸気行程のTDC位置よりも若干、手前の所定のクランク角位置にあることを表す信号であり、本実施形態では、エンジン3が4気筒型のため、クランク角180°ごとに出力される。さらに、CYL信号は、特定の気筒のピストンが所定のクランク角位置にあることを表す信号であり、ECU2は、このCYL信号に基づいて、圧縮行程にある気筒を判別する。
さらに、エンジン3には、水温センサ34が設けられており、水温センサ34は、エンジン3を冷却するための冷却水の温度(以下「エンジン水温」という)TWを検出するとともに、その検出信号をECU2に出力する。
また、エンジン3の吸気通路3aには、インテークシャッタ21が設けられており、このインテークシャッタ21の開度がECU2により制御されることによって、エンジン3に吸入される吸入空気量が制御される。さらに、吸気通路3aのインテークシャッタ21よりも下流側には、吸気圧センサ35および吸気温センサ36が設けられている。吸気圧センサ35は、吸気通路3a内の圧力(以下「吸気圧」という)PBAを絶対圧として検出するとともに、その検出信号をECU2に出力する。吸気温センサ36は、吸入空気の温度(以下「吸気温」という)TAを検出するとともに、その検出信号をECU2に出力する。
また、ECU2には、車速センサ37から車速VPを表す検出信号が、アクセル開度センサ38から車両のアクセルペダル(図示せず)の操作量(以下「アクセル開度」という)APを表す検出信号が、それぞれ出力される。
ECU2は、I/Oインターフェース、CPU、RAMおよびROMなどからなるマイクロコンピュータで構成されている。ECU2は、前述した各種のセンサ31〜38からの検出信号に応じ、このROMに記憶された制御プログラムなどに従って、エンジン3の運転状態を判別するとともに、判別した運転状態に応じ、燃料噴射弁4の燃料噴射量の制御を含むエンジン制御を実行する。
以下、ECU2によって実行される各種の処理について説明する。具体的には、ECU2は、学習値QCLRNを算出するための学習値算出処理を実行する。この学習値QCLRNは、次の趣旨に基づくものである。すなわち、燃料噴射弁4の経時劣化によりその燃料噴射特性が経時変化するため、燃料噴射弁4に同じ制御入力を入力しても、実際の燃料噴射量は徐々に変化(通常は減少)する。学習値QCLRNは、そのような燃料噴射量の変化を補償することにより燃料噴射量を精度良く制御するためのものである。
また、学習値算出処理では、微少量噴射による燃料が燃焼することによって発生したエンジン3の回転変動を検出するとともに、検出されたエンジン3の回転変動と、微少量噴射の実行中に検出された燃圧PFとを用いて、上記の学習値QCLRNが算出される。この微少量噴射は、エンジン3の出力を得るための燃料の噴射を停止するフューエルカット(以下「F/C」という)運転中に、所定の微少量の燃料を噴射するものである。
また、学習値QCLRNの算出は、燃圧PFが異なれば、燃料噴射弁4の燃料噴射特性が異なることにより、同じ制御入力に対して異なる燃料噴射量が得られるため、燃圧PFに関する複数の所定の圧力のそれぞれに対して行われる。このため、微少量噴射は、燃圧PFを複数の所定の圧力のいずれかになるように制御した状態で行われ、複数の所定の圧力のそれぞれに対して行われる。さらに、学習値QCLRNの算出は、燃料噴射弁4がエンジン3の気筒ごとに設けられていることから、気筒ごとに行われる。
また、学習値算出処理は、上述したような学習値QCLRNの算出を適切に行うために、エンジン3の運転状態や燃圧PFに関する所定の実行条件が成立しているときに、実行される。図3〜図5は、これらの実行条件が成立しているか否かを判定するための処理を示している。まず、図3に示す前条件判定処理について説明する。本処理は、所定周期(例えば100msec)で繰り返し実行される。
図3のステップ1(「S1」と図示。以下同じ)〜ステップ3ではそれぞれ、故障判定処理(図示せず)により燃料噴射制御装置1やエンジン3に何らかの故障が発生していると判定されているか否か、検出された吸気温TAが所定温度TA0(例えば5℃)よりも高いか否か、および、検出された燃料温度TFUELが所定の上下限温度TFLH,TFLL(例えばそれぞれ、120℃,10℃)の範囲内にあるか否かを、判別する。続くステップ4〜6ではそれぞれ、検出されたエンジン水温TWが所定水温TW0(例えば70℃)よりも高いか否か、算出されたエンジン回転数NEが、所定の上下限回転数NELH,NELL(例えばそれぞれ、3000rpm,1000rpm)の範囲内にあるか否か、および、検出された吸気圧PBAが所定吸気圧PBA0(例えば800hPa)よりも高いか否かを、判別する。
続くステップ7〜9ではそれぞれ、検出された車速VPが所定車速VP0(例えば30km/h)よりも高いか否か、推定燃焼室内温度TCYLEが所定温度TCYL0(例えば200℃)よりも高いか否か、および、学習値QCLRNの更新が必要と判定されているときに「1」に設定される学習要求フラグF_ZFCLRNが「1」であるか否かを、判別する。続くステップ10〜12ではそれぞれ、エンジン3を動力源とする空調装置が作動しているときに「1」に設定される空調フラグF_ACONが「1」であるか否か、エンジン3と車両の駆動輪の間を接続・遮断するクラッチが接続状態にあるときに「1」に設定されるクラッチフラグF_CLONが「1」であるか否か、および、エンジン3に連結された車両の変速機のギヤ位置が所定範囲にあるときに「1」に設定されるギヤレンジフラグF_GROKが「1」であるか否かを、判別する。
以上のステップ2〜9、11および12の答がいずれもYESで、かつ、ステップ1および10の答がいずれもNOのときには、所定の前条件が成立していると判定するとともに、そのことを表すために、前条件成立フラグF_ZFCPRECONを「1」に設定し(ステップ13)、本処理を終了する。一方、ステップ2〜9、11および12の答のいずれかがNOのとき、あるいは、ステップ1および10の答のいずれかがYESのときには、前条件が成立していないと判定するとともに、前条件成立フラグF_ZFCPRECONを「0」に設定し(ステップ14)、本処理を終了する。
次に、図4を参照しながら、実行条件判定処理について説明する。前述したように、学習値QCLRNの算出は、微少量噴射の実行中に行われ、この微少量噴射は、F/C運転中に燃圧PFを所定の複数の圧力のいずれかに制御した状態で燃料を噴射するものである。このため、この実行条件判定処理では、F/C運転および燃圧PFに関する実行条件の双方が成立しているか否かが、判定される。また、本処理は、上述した前条件判定処理と同様、所定周期で繰り返し実行される。
まず、図4のステップ21では、検出されたアクセル開度APが所定開度APTHよりも小さいか否かを判別する。この答がNOで、アクセルペダルが操作されているときには、実行条件が成立していないと判定するとともに、そのことを表すために、実行条件成立フラグF_ZFCCONを「0」に設定し(ステップ22)、本処理を終了する。一方、ステップ21の答がYESのときには、F/CフラグF_FCが「1」であるか否かを判別する(ステップ23)。このF/CフラグF_FCは、F/C運転中に「1」に設定されるものである。
このステップ23の答がNOで、F/C運転中でないときには、上記ステップ22を実行し、本処理を終了する一方、YESで、F/C運転中であるときには、F/C運転の開始から所定時間TMFC(例えば1秒)が経過したか否かを判別する(ステップ24)。この答がNOのときには、F/C運転の開始から間もないことから、前述したエンジン3の回転変動に応じた学習値QCLRNの算出を適切に行えないおそれがあるため、実行条件が成立していないと判定するとともに、ステップ22を実行し、本処理を終了する。
一方、ステップ24の答がYESのときには、F/C運転に関する実行条件が成立していると判定するとともに、続くステップ25以降において、微少量噴射のための燃圧PFの制御(以下「微少量噴射用の燃圧制御」という)を行うとともに、燃圧PFに関する実行条件が成立しているか否かを判定する。
まず、ステップ25において、燃圧制御処理を実行する。この燃圧制御処理は、上記の微少量噴射用の燃圧制御を行うための処理であり、図5は、本処理のサブルーチンを示している。
まず、燃圧制御処理の概要について述べると、本処理では、学習値QCLRNの算出のために、燃圧PFを、複数の所定の圧力である第1〜第5目標燃圧PFOBJ1〜5のいずれかになるように制御することによって、微少量噴射用の燃圧制御が実行される。この場合、学習値QCLRNを前述したように第1〜第5目標燃圧PFOBJ1〜5のそれぞれに対して算出するために、燃圧PFの目標値である目標燃圧PFOBJは、学習値QCLRNが全ての気筒について算出されるごとに、第1〜第5目標燃圧PFOBJ1〜5に順に変更される。
なお、第1〜第5目標燃圧PFOBJ1〜5は、この順でより低い圧力に設定されており、第1および第5目標燃圧PFOBJ1,5はそれぞれ、エンジン3の運転中にとり得る燃圧PFの最大値および最小値、例えば150MPaおよび23MPaに設定されている。また、第2、第3および第4目標燃圧PFOBJ2,3,4は、例えば100MPa、80MPaおよび40MPaにそれぞれ設定されている。さらに、所定の圧力の数は、複数であれば、本実施形態における5つに限らず、任意である。
また、燃圧制御処理では、微少量噴射用の燃圧制御の実行に伴い、過熱状態の燃料が第1リターンホース8に流れるのを回避し、第1リターンホース8を保護するために、目標燃圧PFOBJと燃料温度TFUELとの関係に基づいて、この目標燃圧PFOBJを用いた微少量噴射用の燃圧制御の実行の可否が判定されるとともに、その実行が禁止されたときには、目標燃圧PFOBJが、第1〜第5目標燃圧PFOBJ1〜5のうちのより低いものに変更される。
まず、図5のステップ41では、燃圧制御フラグF_ZFCPFが「1」であるか否かを判別する。この燃圧制御フラグF_ZFCPFは、微少量噴射用の燃圧制御の実行中に「1」に設定されるものであり、F/C運転の開始時、または、後述するように今回の目標燃圧PFOBJに対する学習値QCLRNの算出がすべての気筒について終了したときに、「0」にリセットされる。このステップ41の答がNOで、微少量噴射用の燃圧制御の実行中でないときには、そのときに得られている燃圧ステータスS_CPFが「5」であるか否かを判別する(ステップ42)。
この燃圧ステータスS_CPFは、現在の目標燃圧PFOBJの設定状態を表すものであり、具体的には、目標燃圧PFOBJが第1〜第5目標燃圧PFOBJ1〜5に設定されているときに、「1」〜「5」にそれぞれ設定される。また、燃圧ステータスS_CPFは、エンジン3の始動時に、「5」にリセットされる。
このステップ42の答がYESで、S_CPF=5のとき、すなわち、今回がエンジン3の始動後の1回目のループであるとき、あるいは、現在の目標燃圧PFOBJが第5目標燃圧PFOBJ5のときには、目標燃圧PFOBJを第1目標燃圧PFOBJ1に設定・変更する(ステップ43)とともに、燃圧ステータスS_CPFを「1」に設定する(ステップ44)。
一方、ステップ42の答がNOのときには、ステップ42〜44と同様、ステップ45〜47においてそれぞれ、そのときの燃圧ステータスS_CPFが「1」〜「3」であるか否かを判別するとともに、その判別結果に応じて、ステップ48〜55において、目標燃圧PFOBJおよび燃圧ステータスS_CPFの設定を行う。これにより、現在の目標燃圧PFOBJが第1〜第3目標燃圧PFOBJ1〜3のときには、目標燃圧PFOBJが第2〜第4目標燃圧PFOBJ2〜4にそれぞれ設定・変更されるとともに、燃圧ステータスS_CPFが「2」〜「4」にそれぞれ設定される。
また、前記ステップ44および52〜55のいずれかに続くステップ56では、ステップ43および48〜51のいずれかで設定された目標燃圧PFOBJに応じ、図6に示す所定のマップを検索することによって、判定温度TJUDを算出する。この判定温度TJUDは、燃料温度TFUELと比較することによって、当該目標燃圧PFOBJを用いた微少量噴射用の燃圧制御の実行の可否を判定するためのものである。上記のマップでは、判定温度TJUDは、微少量噴射用の燃圧制御の実行に伴って過熱状態の燃料が第1リターンホース8に流れるのを回避するために、目標燃圧PFOBJが高いほど、より低い値に設定されている。
上記ステップ56に続くステップ57では、燃料温度TFUELが、ステップ56で算出された判定温度TJUD以下であるか否かを判別する。この答がYESのときには、当該目標燃圧PFOBJを用いた微少用燃料噴射用の燃圧制御を実行するために、燃圧制御フラグF_ZFCPFを「1」に設定し(ステップ58)、ステップ59を実行する。また、このステップ58の実行により、前記ステップ41の答がYESになり、その場合には、前記ステップ42〜58をスキップし、ステップ59を実行する。
このステップ59では、目標燃圧PFOBJと燃圧PFとの偏差に応じ、所定のフィードバック制御アルゴリズムによって、前述した調量弁デューティ比TDUTYおよびリリーフ弁デューティ比RDUTYを算出するとともに、算出されたこれらのデューティ比TDUTYおよびRDUTYに基づく電流を、燃料調量弁10aおよびリリーフ弁13にそれぞれ供給し(ステップ60)、本処理を終了する。これらのステップ59および60の実行によって、燃圧PFが目標燃圧PFOBJになるようにフィードバック制御される。
以上のように、燃圧制御処理では、今回の目標燃圧PFOBJに対する学習値QCLRNの算出が全ての気筒について終了したときに、燃圧制御フラグF_ZFCPFが「0」にリセットされることによって、今回の目標燃圧PFOBJに対する学習値QCLRNの算出のための微少量噴射用の燃圧制御が終了される。さらに、前記ステップ42〜55による目標燃圧PFOBJおよび燃圧ステータスS_CPFの設定は、一旦行われた後には、前記ステップ41の実行によって、今回の目標燃圧PFOBJに対する学習値QCLRNの算出のための微少量噴射用の燃圧制御が終了するまで、行われない。
以上により、燃圧制御処理における目標燃圧PFOBJおよび燃圧ステータスS_CPFの設定・変更は、学習値QCLRNが全ての気筒について算出されるごとに行われる。この場合、微少量噴射用の燃圧制御に用いられる目標燃圧PFOBJが、第1〜第5目標燃圧PFOBJ1〜5に、高いものから順に変更される。
一方、前記ステップ57の答がNOで、TFUEL>TJUDのときには、判定温度TJUDに対応する目標燃圧PFOBJを用いて微少量噴射用の燃圧制御を実行すると、それに伴って過熱状態の燃料が第1リターンホース8に流れるおそれがあるとして、その実行を禁止すべきと判定する。また、目標燃圧PFOBJを用いた微少量噴射用の燃圧制御を禁止するために、燃圧制御フラグF_ZFCPFを「0」に設定する(ステップ61)とともに、ステップ59および60を実行することなく、そのまま本処理を終了する。
以上のように、燃圧制御処理では、燃料温度TFUELが、目標燃圧PFOBJに応じて算出された判定温度TJUDよりも高い限り、ステップ57の答がNOになり、ステップ61の実行により燃圧制御フラグF_ZFCPFが「0」に設定され、当該目標燃圧PFOBJを用いた微少量噴射用の燃圧制御が禁止される。また、燃圧制御フラグF_ZFCPFが「0」に設定されることによって、前記ステップ41(F_ZFCPF=1?)の答がNOになる結果、前記ステップ42〜55による目標燃圧PFOBJおよび燃圧ステータスS_CPFの設定・変更が行われる。
以上により、目標燃圧PFOBJは、微少量噴射用の燃圧制御が許可されるまで、第1〜第5目標燃圧PFOBJ1〜5のうちのより低いものに順に変更される。その結果、目標燃圧PFOBJは、第1〜第5目標燃圧PFOBJ1〜5のうちの、微少量噴射用の燃圧制御が禁止されたときの目標燃圧PFOBJよりも低いものに、変更される。この場合、判定温度TJUDは、前述した目標燃圧PFOBJに応じた設定手法から明らかなように、目標燃圧PFOBJが最も低い第5目標燃圧PFOBJ5に設定されたときに、最も高い温度に設定される。その際、判定温度TJUDは、必ず燃料温度TFUELが判定温度TJUD以下になるように設定されており、それにより、少なくとも第5目標燃圧PFOBJ5を用いた微少量噴射用の燃圧制御が許可される。換言すれば、目標燃圧PFOBJが第5目標燃圧PFOBJ5に設定されたときには、微少量噴射用の燃圧制御が禁止されることはない。
図4に戻り、前記ステップ25に続くステップ26では、図5のステップ58または61で設定された燃圧制御フラグF_ZFCPFが「1」であるか否かを判別する。この答がNOで、微少量噴射用の燃圧制御の実行中でないときには、実行条件が成立していないと判定するとともに、前記ステップ22を実行することによって、実行条件成立フラグF_ZFCCONを「0」に設定し、本処理を終了する。
一方、上記ステップ26の答がYESで、微少量噴射用の燃圧制御の実行中であるときには、燃圧フラグF_PFが「1」であるか否かを判別する(ステップ27)。この燃圧フラグF_PFは、燃圧PFが目標燃圧PFOBJに収束しているときに、「1」に設定されるものである。この答がNOのときには、燃圧PFが目標燃圧PFOBJに収束しておらず、それにより、学習値QCLRNを適切に算出できないおそれがあるため、実行条件が成立していないと判定するとともに、前記ステップ22を実行し、本処理を終了する。
一方、上記ステップ27の答がYESのときには、燃圧フラグF_PFが「1」に設定されてから、所定時間TMPF(例えば1秒)が経過したか否かを判別する(ステップ28)。この答がNOのときには、燃圧PFが目標燃圧PFOBJに安定して収束した状態になっていないとして、それにより、学習値QCLRNを適切に算出できないおそれがあるため、実行条件が成立していないと判定するとともに、前記ステップ22を実行し、本処理を終了する。
一方、上記ステップ28の答がYESのときには、F/C運転および燃圧PFに関する実行条件の双方が成立していると判定し、そのことを表すために、実行条件成立フラグF_ZFCCONを「1」にセットする(ステップ29)とともに、本処理を終了する。
次に、図7および図8を参照しながら、前述した学習値算出処理について説明する。本処理では、学習値QCLRN(n)は、前述したように第1〜第5目標燃圧PFOBJ1〜5のそれぞれに対して算出されるとともに、気筒ごとに算出される。ここで、添字nは、気筒を識別するためのパラメータであり、本実施形態では、エンジン3が4気筒タイプであるため、値1〜4のいずれかに設定される。また、算出された学習値QCLRN(n)は、気筒と前述した燃圧ステータスS_CPFに対応させて、ECU2のRAMに記憶される。
また、本処理は、任意の気筒のピストンが圧縮行程中の所定のクランク角度位置に位置したときに実行され、当該気筒に対して学習値QCLRN(n)を算出する。以下、学習値QCLRN(n)の算出の対象となる気筒を「学習対象気筒」という。
まず、図7のステップ71では、図3のステップ13または14で設定された前条件成立フラグF_ZFCPRECONが「1」であるか否かを判別するとともに、ステップ72において、図4のステップ22または29で設定された実行条件成立フラグF_ZFCCONが「1」であるか否かを判別する。これらのステップ71および72の答のいずれかがNOで、前述した前条件が成立していないとき、または、前述したF/C運転および燃圧PFに関する実行条件の双方が成立していないときには、学習値QCLRNを算出せずに、そのまま本処理を終了する。
一方、ステップ71および72の答がいずれもYESで、前条件、F/C運転および燃圧PFに関する実行条件のすべてが成立しているときには、学習対象気筒において、微少量噴射を実行する(ステップ73)。具体的には、微少指令燃料噴射量QLCMD(n)に基づく制御入力を、学習対象気筒に対応する燃料噴射弁4に出力することによって、燃料噴射弁4から燃料を噴射させる。
次いで、瞬時回転速度に基づき、微少量噴射による回転速度上昇量DOMGを算出する(ステップ74)。この瞬時回転速度は、CRK信号の発生時間間隔を用いて他の処理で算出されるものであり、エンジン回転数NEは、瞬時回転速度の移動平均値に相当する。次に、ステップ74で算出された回転速度上昇量DOMGと、エンジン回転数NEに応じて、トルク増加量DTRQを算出する(ステップ75)。
次いで、燃圧PFに応じ、図9に示す所定のマップを検索することによって、燃圧補正係数CORPFを算出する(ステップ76)。このマップでは、燃圧補正係数CORPFは、後述する理由により、燃圧PFが所定値PFREFのときに値1.0に設定され、燃圧PF<所定値PFREFの範囲では、燃圧PFが低いほど、より大きな値に、燃圧PF>所定値PFREFの範囲では、燃圧PFが高いほど、より大きな値に、それぞれ設定されている。
次に、吸気温TAに応じ、図10に示す所定のマップを検索することによって、吸気温補正係数CORTAを算出する(ステップ77)。このマップでは、吸気温補正係数CORTAは、後述する理由により、吸気温TAが高いほど、より小さな値に設定されている。
次いで、上記ステップ76および77でそれぞれ算出された燃圧補正係数CORPFおよび吸気温補正係数CORTAを用いて、ステップ75で算出されたトルク増加量DTRQを補正する(ステップ78)。具体的には、両補正係数CORPF,CORTAをトルク増加量DTRQに乗算した値を、トルク増加量DTRQとして設定する。
次に、このステップ78で補正されたトルク増加量DTRQが所定増加量DTRQ0以上であるか否かを判別する(ステップ79)。この所定増加量DTRQ0は、燃料噴射弁4が経時劣化しているか否かを判定するためのものである。具体的には、所定増加量DTRQ0は、燃料噴射弁4が経時劣化しておらず、かつ、燃圧PFが前述した図9のマップにおける所定値PFREFである場合において微少量噴射を実行することにより得られたトルク増加量に相当し、実験により求められる。
したがって、燃料噴射弁4が経時劣化しておらず、かつ、燃圧PFが所定値PFREFであれば、トルク増加量DTRQは、所定増加量DTRQ0とほぼ等しくなる。また、前述したように、燃料噴射弁4が経時劣化している場合には、経時劣化していない新品の場合よりも実際の燃料噴射量が小さくなるため、同じ燃圧PFに対して、トルク増加量DTRQは所定増加量DTRQ0よりも小さくなる。
一方、微少量噴射による燃料は、燃圧PFが所定値PFREFよりも低いほど、その霧化の度合が低くなることによって、燃焼しにくくなる。このため、燃料噴射弁4が新品の場合でも、ステップ75で算出された実際のトルク増加量DTRQは、上述したように所定値PFREFに基づいて設定された所定増加量DTRQ0よりも小さくなる。また、微少量噴射による燃料は、燃圧PFが所定値PFREFよりも高いほど、噴射された燃料が壁面に付着する度合が高くなることによって、実際に燃焼する燃料量が小さくなる。このため、燃料噴射弁4が新品の場合でも、実際のトルク増加量DTRQは、所定増加量DTRQ0よりも小さくなる。
これに対して、前述したように、ステップ75で算出されたトルク増加量DTRQを補正するために乗算される燃圧補正係数CORPFが、燃圧PF=所定値PFREFで値1.0に、燃圧PF<所定値PFREFの範囲では、燃圧PFが低いほど、より大きな値に、燃圧PF>所定値PFREFの範囲では、燃圧PFが高いほど、より大きな値に、それぞれ設定されている。したがって、上述した燃圧PFに起因するトルク増加量DTRQの変化分を補償しながら、ステップ79による所定増加量DTRQ0を用いた燃料噴射弁4の経時劣化の有無の判定を適切に行うことができる。
また、微少量噴射による燃料は、吸気温TAが低いほど、燃焼しにくくなる。このため、燃料噴射弁4が新品の場合でも、ステップ75で算出された実際のトルク増加量DTRQは、所定増加量DTRQ0よりも小さくなる。これに対して、前述したように、トルク増加量DTRQを補正するために乗算される吸気温補正係数CORTAが、吸気温TAが低いほど、より大きな値に設定されている。したがって、上述した吸気温TAに起因するトルク増加量DTRQの変化分を補償しながら、ステップ79による所定増加量DTRQ0を用いた燃料噴射弁4の経時劣化の有無の判定を適切に行うことができる。
以上から、ステップ79の答がNOのときには、燃料噴射弁4が経時劣化しているとして、微少指令燃料噴射量QLCMD(n)を所定量α分、増量し(ステップ80)、本処理を終了する。このステップ80の実行により、微少量噴射で噴射される燃料量が増加することによって、トルク増加量DTRQが増大する。なお、微少指令燃料噴射量QLCMD(n)の初期値は、所定の微少量に設定されている。
そして、ステップ79の答がYESになり、トルク増加量DTRQが所定増加量DTRQ0以上になったときには、前述したように気筒および燃圧ステータスS_CPFに対応させて記憶されている学習値QCLRN(n)から、学習対象気筒と、図5のステップ44および52〜55のいずれかで設定された燃圧ステータスS_CPFすなわち今回の目標燃圧PFOBJとに対応するものを、読み出す(ステップ81)。
次いで、ステップ73における微少量噴射で用いられた微少指令燃料噴射量QLCMD(n)と、ステップ81で読み出された学習値QCLRN(n)を用い、次式(1)によって、学習値偏差DQLRN(n)を算出する(ステップ82)。
DQLRN(n)=QLCMD(n)−QCLRN(n) ……(1)
なお、学習値QCLRN(n)の初期値は、前記ステップ80の実行によって所定量α分、増量されていない微少指令燃料噴射量QLCMD(n)の初期値に設定されている。このことと、前述したトルク増加量DTRQと所定増加量DTRQ0の関係から明らかなように、燃料噴射弁4が新品の場合には、前記ステップ72の答がYESになった直後に、前記ステップ79の答がYESになるとともに、微少指令燃料噴射量QLCMD(n)および学習値QCLRN(n)が互いに等しくなり、上記ステップ82で算出される学習値偏差DQLRN(n)は、値0になる。
ステップ82に続くステップ83では、ステップ82で算出された学習値偏差DQLRN(n)に応じて、学習値QCLRN(n)を算出(更新)する。これにより、学習値QCLRN(n)は、燃料噴射弁4が新品の場合には、前回値、すなわち初期値に維持される。一方、燃料噴射弁4が経時劣化している場合には、学習値偏差DQLRN(n)が正値になり、学習値偏差DQLRN(n)が大きいほど、学習値QCLRN(n)は増大される。
次いで、上記ステップ83で更新された学習値QCLRN(n)を、気筒および燃圧ステータスS_CPFに対応させて、RAMに記憶する(ステップ84)。次に、今回の目標燃圧PFOBJに対する学習値QCLRNの算出が全ての気筒について終了したときに、今回の目標燃圧PFOBJを用いた微少量噴射用の燃圧制御を終了するために、燃圧制御フラグF_ZFCPFを「0」にリセットする(ステップ85)。
次いで、第1〜第5目標燃圧PFOBJ1〜5のすべてに対して、学習値QCLRNの算出(更新)が終了したか否かを判別する(ステップ86)。この答がNOのときには、そのまま本処理を終了する一方、YESのときには、学習値QCLRNの算出が完了したことを表すために、学習完了フラグF_ZFCENDを「1」に設定し(ステップ87)、本処理を終了する。
以上のように、燃圧制御処理および学習値算出処理では、第1〜第5目標燃圧PFOBJ1〜5のそれぞれに対して、微少量噴射が実行されるとともに、それらの実行中におけるトルク増加量DTRQに応じて学習値QCLRN(n)が算出される。
また、算出された学習値QCLRN(n)は、燃料噴射弁4による燃料噴射量の制御に、次のように用いられる。図11は、燃料噴射量を制御するための燃料噴射量制御処理を示している。本処理は、TDC信号の発生に同期して、気筒ごとに実行される。なお、以下の説明では、添字nを省略するものとする。また、今回の燃料噴射量の制御の対象となる気筒を「制御対象気筒」という。
まず、図11のステップ91では、エンジン回転数NEおよび要求トルクに応じ、所定のマップ(図示せず)を検索することによって、要求燃料噴射量QSETを算出する。この要求トルクは、要求トルク算出処理(図示せず)において、エンジン回転数NEおよびアクセル開度APに応じ、所定のマップ(図示せず)を検索することによって算出される。次いで、気筒および燃圧ステータスS_CPFに対応させて記憶されている学習値QCLRNから、今回の制御対象気筒と、そのときの燃圧PFとに対応する学習値QCLRNを読み出す(ステップ92)。
このステップ92では、燃圧PFに対応する学習値QCLRNの読出しは、次のように行われる。すなわち、前述した燃圧ステータスS_CPFの設定手法、および学習値QCLRNの学習手法から明らかなように、燃圧ステータスS_CPF=「1」〜「5」にそれぞれ対応する学習値QCLRNは、第1〜第5目標燃圧PFOBJ1〜5にそれぞれ対応している。ステップ92では、これらの学習値QCLRNから、第1〜第5目標燃圧PFOBJ1〜5のうちのそのときの燃圧PFに等しいものに対応する学習値QCLRNが、読み出される。この場合、そのときの燃圧PFが第1〜第5目標燃圧PFOBJ1〜5と一致しないときには、学習値QCLRNは、補間演算によって算出される。
ステップ92に続くステップ93では、上記ステップ91で算出された要求燃料噴射量QSETと、ステップ92で読み出された学習値QCLRNを用いて、指令燃料噴射量QCMDを算出する。具体的には、学習値QCLRNとその初期値との偏差を算出するとともに、算出された偏差を要求燃料噴射量QSETに加算することによって、指令燃料噴射量QCMDを算出する。
この場合、前述した学習値QCLRNの算出手法から明らかなように、燃料噴射弁4が新品の場合には、学習値QCLRNとその初期値との偏差は値0になり、その結果、上述したように算出される指令燃料噴射量QCMDは、要求燃料噴射量QSETになる。一方、燃料噴射弁4が経時劣化していることによって、実際の燃料噴射量が新品の場合よりも減少しているときには、学習値QCLRNとその初期値との偏差は、正値になり、燃料噴射弁4の経時劣化による燃料噴射量の減少分と等しくなる。その結果、指令燃料噴射量QCMDは、要求燃料噴射量QSETにこの減少分を加算した値に算出され、新品の場合よりも増大側に補正される。
上記ステップ93に続くステップ94では、上記ステップ93で算出された指令燃料噴射量QCMDに基づく制御入力を、制御対象気筒に対応する燃料噴射弁4に出力し、本処理を終了する。これにより、燃料噴射弁4による実際の燃料噴射量は、燃料噴射弁4の劣化状態にかかわらず、要求燃料噴射量QSETと等しくなる。
また、本実施形態における各種の要素と、本発明(特許請求の範囲に記載された発明)の各種の要素との対応関係は、次のとおりである。すなわち、本実施形態におけるECU2が、本発明における微少量噴射手段、回転変動検出手段、補正量算出手段、補正手段、目標燃圧設定手段、および判定手段に相当する。また、本実施形態における燃圧センサ31、クランク角センサ33および吸気温センサ36が、本発明における燃料噴射圧検出手段、回転変動検出手段および吸気温度検出手段にそれぞれ相当する。さらに、本実施形態における燃料温度センサ32が、本発明における燃料温度検出手段に相当する。
また、本実施形態における微少指令燃料噴射量QLCMD、指令燃料噴射量QCMDおよび学習値QCLRNが、本発明における所定の微少量、制御入力および補正量にそれぞれ相当する。さらに、本実施形態におけるトルク増加量DTRQ、燃圧PFおよび吸気温TAが、本発明における検出された内燃機関3の回転変動、燃料噴射圧および吸気温度にそれぞれ相当する。また、本実施形態における燃料温度TFUELが、本発明における検出された燃料の温度に相当する。
以上のように、本実施形態によれば、F/C運転中に、微少量噴射が実行されるとともに、この微少量噴射の実行中におけるトルク増加量DTRQが算出される。また、検出された燃圧PFに応じてトルク増加量DTRQが補正され、補正されたトルク増加量DTRQを用いて、学習値QCLRNが算出されるとともに、算出された学習値QCLRNに応じて、指令燃料噴射量QCMDが補正される。したがって、学習値QCLRNを、燃圧PFに起因するトルク増加量DTRQ(エンジン3の実際の回転変動)の変化分を補償しながら、燃圧PFに応じて適切に算出することができる。また、そのように適切に算出された学習値QCLRNを用いて、指令燃料噴射量QCMDを適切に補正でき、ひいては、燃料噴射弁4による燃料噴射量を精度良く制御することができる。
さらに、前述したように、トルク増加量DTRQが所定増加量DTRQ0を下回っているときに、前者DTRQが後者DTRQ0と等しくなるまで、微少指令燃料噴射量QLCMDが増量される。そして、トルク増加量DTRQが所定増加量DTRQ0に等しくなったときに、そのときの微少指令燃料噴射量QLCMDと、そのときに得られている学習値QCLRNとの偏差が学習値偏差DQLRNとして算出されるとともに、算出された学習値偏差DQLRNが大きいほど、学習値QCLRNが増大側に更新される。また、学習値QCLRNとその初期値との偏差を要求燃料噴射量QSETに加算することによって、指令燃料噴射量QCMDが補正される。
以上から明らかなように、学習値QCLRNは、トルク増加量DTRQが所定増加量DTRQ0に対して小さいほど、指令燃料噴射量QCMDをより大きくなるように補正する。これに対して、検出された吸気温TAが低いほど、吸気温補正係数CORTAがより大きくなるように算出されるとともに、トルク増加量DTRQに吸気温補正係数CORTAを乗算することによって、トルク増加量DTRQが増大側に補正される。その結果、吸気温TAが低いほど、学習値QCLRNで補正された指令燃料噴射量QCMDがより小さくなるように、学習値QCLRNが算出される。したがって、吸気温TAに起因するトルク増加量DTRQの変化分を補償しながら、学習値QCLRNを吸気温TAに応じて適切に算出でき、それにより、燃料噴射量をより精度良く制御することができる。
また、第1〜第5目標燃圧PFOBJ1〜5のそれぞれに対して、微少量噴射が実行されるとともに、それらの実行中におけるトルク増加量DTRQに応じて学習値QCLRNが算出されるので、燃圧PFの全領域に対して、学習値QCLRNを適切に算出することができる。したがって、燃圧PFの全領域に対して、そのように適切に算出された学習値QCLRNを用いて、指令燃料噴射量QCMDを適切に補正でき、ひいては、燃料噴射量を精度良く制御することができる。
さらに、判定温度TJUDが、微少量噴射に用いられる目標燃圧PFOBJが高いほど、より低くなるように算出されるとともに、検出された燃料温度TFUELが算出された判定温度TJUDよりも高いときに、当該判定温度TJUDに対応する目標燃圧PFOBJを用いた微少量噴射用の燃圧制御が禁止される。これにより、微少量噴射用の燃圧制御の実行に伴って過熱状態の燃料が第1リターンホース8に流れるのを回避することができ、したがって、燃料噴射制御装置1の寿命を延ばすことができる。
また、F/C運転中、目標燃圧PFOBJを用いた微少量噴射用の燃圧制御が一旦、禁止されたとしても、第1〜第5目標燃圧PFOBJ1〜5のうちのより低いものについて順に、上述した判定温度TJUDに基づく微少量噴射用の燃圧制御の実行の可否が判定され、その実行が許可された目標燃圧PFOBJを用いて、微少量噴射用の燃圧制御が実行される。したがって、学習値QCLRNの算出の実行頻度を高めることができるとともに、燃料噴射制御装置1の寿命を延ばすことができる。
なお、本発明は、説明した実施形態に限定されることなく、種々の態様で実施することができる。例えば、実施形態では、気筒内に燃料を噴射する燃料噴射弁4を用いているが、吸気ポートに燃料を噴射する燃料噴射弁を用いてもよい。また、実施形態では、本発明における内燃機関の回転変動は、トルク増加量DTRQであるが、クランクシャフトの回転速度の変化量でもよい。
さらに、学習値QCLRNは、内燃機関の回転変動および燃料噴射圧を用いるのであれば、実施形態以外の適当な算出手法で算出してもよい。例えば、前述したように、燃料噴射弁4が経時劣化している場合には、同じ燃圧PFに対して、トルク増加量DTRQは所定増加量DTRQ0よりも小さくなる。このため、実施形態のように燃圧PFを用いて補正されたトルク増加量DTRQと所定増加量DTRQ0との比較結果に応じて学習値QCLRNを算出するのではなく、燃圧PFに応じて所定増加量DTRQ0を補正するとともに、補正された所定増加量DTRQ0と、ステップ75で算出されたトルク増加量DTRQとの比較結果に応じて、学習値QCLRNを算出してもよい。あるいは、トルク増加量DTRQおよび所定増加量DTRQ0を燃圧PFで補正せずに学習値QCLRNを算出するとともに、そのように算出した学習値QCLRNを、燃圧PFに応じて補正してもよい。
以上のことは、吸気温TAに応じたトルク増加量DTRQの補正についても同様に当てはまる。すなわち、吸気温TAに応じて所定増加量DTRQ0を補正するとともに、補正された所定増加量DTRQ0と、ステップ75で算出されたトルク増加量DTRQとの比較結果に応じて、学習値QCLRNを算出してもよい。あるいは、トルク増加量DTRQおよび所定増加量DTRQ0を吸気温TAで補正せずに学習値QCLRNを算出するとともに、そのように算出した学習値QCLRNを、吸気温TAに応じて補正してもよい。
それに加え、学習値QCLRNを、学習値偏差DQLRNに代えて、次のようなパラメータに応じて算出してもよい。前述したように、トルク増加量DTRQと所定増加量DTRQ0との関係、すなわち、所定増加量DTRQ0に対するトルク増加量DTRQの乖離度合を表す乖離度合パラメータである後者と前者との偏差や比は、燃料噴射弁4の経時劣化による燃料噴射量の変化分を表す。このため、そのような乖離度合パラメータに応じたマップ検索、あるいは、乖離度合パラメータに応じた演算などによって、学習値QCLRNを算出してもよい。
また、実施形態では、微少量噴射用の燃圧制御および学習値QCLRNの算出を、第1〜第5目標燃圧PFOBJ1〜5ごとに実行しているが、所定の単一の燃圧に対して実行してもよい。さらに、実施形態では、学習値QCLRNによる制御入力の補正を、指令燃料噴射量QCMDを介して行っているが、制御入力に対して直接行ってもよい。また、実施形態は、本発明を、車両用の4気筒型のディーゼルエンジンであるエンジン3に適用した例であるが、本発明は、ガソリンエンジンや、CNG(Compressed Natural Gas)エンジン、クランク軸を鉛直方向に配置した船外機などのような船舶推進機用エンジンなど、産業用の各種の内燃機関に適用可能である。さらに、気筒の数は、4つに限らず、1つでも、4つ以外の複数でもよい。その他、本発明の趣旨の範囲内で、細部の構成を適宜、変更することが可能である。