JPWO2011145223A1 - 内燃機関の制御装置 - Google Patents

内燃機関の制御装置 Download PDF

Info

Publication number
JPWO2011145223A1
JPWO2011145223A1 JP2012515702A JP2012515702A JPWO2011145223A1 JP WO2011145223 A1 JPWO2011145223 A1 JP WO2011145223A1 JP 2012515702 A JP2012515702 A JP 2012515702A JP 2012515702 A JP2012515702 A JP 2012515702A JP WO2011145223 A1 JPWO2011145223 A1 JP WO2011145223A1
Authority
JP
Japan
Prior art keywords
value
fuel injection
injection amount
deviation
oxygen concentration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012515702A
Other languages
English (en)
Other versions
JP5234225B2 (ja
Inventor
真介 青柳
真介 青柳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Application granted granted Critical
Publication of JP5234225B2 publication Critical patent/JP5234225B2/ja
Publication of JPWO2011145223A1 publication Critical patent/JPWO2011145223A1/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1444Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases
    • F02D41/146Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an NOx content or concentration
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/18Circuit arrangements for generating control signals by measuring intake air flow
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/18Circuit arrangements for generating control signals by measuring intake air flow
    • F02D41/182Circuit arrangements for generating control signals by measuring intake air flow for the control of a fuel injection device
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/02Input parameters for engine control the parameters being related to the engine
    • F02D2200/04Engine intake system parameters
    • F02D2200/0406Intake manifold pressure
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2200/00Input parameters for engine control
    • F02D2200/02Input parameters for engine control the parameters being related to the engine
    • F02D2200/06Fuel or fuel supply system parameters
    • F02D2200/0614Actual fuel mass or fuel injection amount
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D2250/00Engine control related to specific problems or objectives
    • F02D2250/36Control for minimising NOx emissions
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/0025Controlling engines characterised by use of non-liquid fuels, pluralities of fuels, or non-fuel substances added to the combustible mixtures
    • F02D41/0047Controlling exhaust gas recirculation [EGR]
    • F02D41/005Controlling exhaust gas recirculation [EGR] according to engine operating conditions
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1439Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the position of the sensor
    • F02D41/144Sensor in intake manifold
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1438Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor
    • F02D41/1444Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases
    • F02D41/1454Introducing closed-loop corrections using means for determining characteristics of the combustion gases; Sensors therefor characterised by the characteristics of the combustion gases the characteristics being an oxygen content or concentration or the air-fuel ratio
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D41/221Safety or indicating devices for abnormal conditions relating to the failure of actuators or electrically driven elements
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/22Safety or indicating devices for abnormal conditions
    • F02D41/222Safety or indicating devices for abnormal conditions relating to the failure of sensors or parameter detection devices
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02TCLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
    • Y02T10/00Road transport of goods or passengers
    • Y02T10/10Internal combustion engine [ICE] based vehicles
    • Y02T10/40Engine management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Mechanical Engineering (AREA)
  • General Engineering & Computer Science (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Abstract

燃料噴射量の目標値Qtgtと、所定のNOx参照濃度に対する排ガスのNOx濃度の測定値または推定値の差を表すNOx濃度ずれΔNOxと、の関係に基づいて燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つを判定する内燃機関の制御装置であって、燃料噴射量の目標値Qtgtが所定の範囲内にて増大したときのNOx濃度ずれΔNOxの変化量および燃料噴射量の目標値Qtgtが所定の第1の値Qtgt2であるときのNOx濃度ずれΔNOxを含む第1の判定指標等に基づき、燃料噴射量ずれがゼロ、正および負のいずれであるかを判定する状態判定手段を備えた制御装置。

Description

本発明は、内燃機関から排出される窒素酸化物(以下、「NOx」とも称呼する。)の量を制御する内燃機関の制御装置に関する。
火花点火式内燃機関およびディーゼル機関などの内燃機関(特に、ディーゼル機関)から排出されるガスには、NOxおよび微粒子状物質(以下、「PM」とも称呼する。)などの有害物質(以下、「エミッション」とも称呼する。)が含まれる。このエミッションの排出量は出来る限り低減されることが望ましい。この排ガスに含まれるNOx量を低減する方法として、例えば、EGR装置によって還流されるガスの量であるEGRガス量を内燃機関の運転状態に応じて制御する方法などが提案されている。
ところが、周知のように、排ガスに含まれるNOx量と、排ガスに含まれるPM量と、の間には二律背反の関係がある。すなわち、NOx量を減少させるように内燃機関が制御されるとPM量が増大し、PM量を減少させるように内燃機関が制御されるとNOx量が増大する。そのため、エミッションの排出量を総合的に低減する観点において、NOx量およびPM量の双方を考慮して内燃機関が制御されることが望ましい。
具体的に述べると、NOx量を出来る限り低減させると共にPM量が増大されることを抑制するためには、NOx量が内燃機関の運転状態に応じた所定の目標量に一致するように内燃機関が制御されることが望ましい。例えば、従来の内燃機関の制御装置の一つ(以下、「従来装置」とも称呼する。)は、気筒内に吸入されるガスの酸素濃度である吸気酸素濃度と、気筒内のガスの圧力である気筒内圧力と、気筒内に噴射される燃料の量、および、気筒内に燃料が噴射される時期などの運転パラメータの値を取得する。そして、従来装置は、それら運転パラメータの値を所定のNOx量推定モデルに適用することにより、排ガスに含まれるNOx量を推定するようになっている。さらに、この従来装置は、推定されたNOx量が所定の目標値であるNOx目標量に一致するように、EGRガス量などを制御するようになっている(例えば、特開2002−371893号公報を参照。)。
従来装置は、上述したように、所定の運転パラメータの値に基づいて推定されるNOx量が所定のNOx目標量に一致するようにEGRガス量などを制御するようになっている。すなわち、従来装置は、「取得された上記運転パラメータの値がそれら運転パラメータの実際の(現実の)値と一致している」こと(すなわち、取得された上記運転パラメータの値が正常であること)を前提としてEGRガス量などを制御している。しかしながら、上記運転パラメータの値に関与する部材(例えば、各種センサおよび燃料噴射装置など)には、様々な要因による破損および経年劣化などの異常が生じる場合がある。さらに、上記運転パラメータの値に関与する部材は、構成上のばらつき(製造の際に生じる同一種の部材間における寸法および性能などの差)を有する場合もある。以下、便宜上、破損および経年劣化などの異常と、構成上のばらつきと、を単に「異常」と総称する。
上記異常が生じている場合、従来装置が取得した上記運転パラメータの値は正常ではない虞がある。上記運転パラメータの値が正常ではない場合、従来装置は、NOx量を適切に制御することができない。さらに、上記運転パラメータの値が正常ではない場合であっても、従来装置は、取得された運転パラメータの値(すなわち、実際の(現実の)運転パラメータの値と異なる値)と、実際の(現実の)運転パラメータの値と、がどのように異なるかを確認することができない。
本発明の目的は、上記課題に鑑み、上記異常が生じた場合であっても、内燃機関の排ガスに含まれるNOx量に影響を与える運転パラメータの実際の(現実の)値と、その運転パラメータの取得された値と、がどのように異なるかを判定することができる内燃機関の制御装置を提供することにある。
上記課題を達成するための本発明による「第1の内燃機関の制御装置」は、
燃料噴射量目標値決定手段と、吸気酸素濃度関連パラメータ取得手段と、吸気酸素濃度取得手段と、NOx濃度取得手段と、状態判定手段と、を備える。以下、これら手段についてより詳細に説明する。
燃料噴射量目標値決定手段は、
前記内燃機関の運転状態に基づき、該内燃機関の気筒内に噴射(供給)される燃料の量である「燃料噴射量」の目標値を決定するようになっている。この内燃機関の運転状態として、燃料噴射量の目標値を決定するために必要な運転パラメータが適宜採用され得る。例えば、機関回転速度およびアクセルペダル開度などが、内燃機関の運転状態として採用され得る。
吸気酸素濃度関連パラメータ取得手段は、
前記気筒内に吸入されるガスの酸素濃度である吸気酸素濃度に関連するパラメータである「吸気酸素濃度関連パラメータ」の測定値、推定値または目標値を取得するようになっている。吸気酸素濃度関連パラメータとして、例えば、内燃機関に吸入される空気の量である吸入空気量、気筒内に噴射される燃料の量である燃料噴射量、機関回転速度、内燃機関の吸気通路内のガスの圧力、内燃機関の排気通路内のガスの圧力、および、気筒内に燃料を噴射する時期である燃料噴射時期などのうちの少なくとも1つが、採用され得る。さらに、排ガスを排気通路から吸気通路へ還流させる排気再循環(EGR)が行われている場合、「気筒内に吸入されるガス(すなわち、内燃機関の外部から吸入される空気と、排気再循環によって吸気通路へ還流される排ガス、の混合物)の量」に対する「排気再循環によって吸気通路へ還流される排ガスの量であるEGRガス量」の比であるEGR率が、吸気酸素濃度関連パラメータとして採用され得る。加えて、吸気通路の所定位置に吸気酸素濃度測定装置(例えば、酸素濃度センサなど)が設けられている場合、その吸気酸素濃度測定装置の出力値が、吸気酸素濃度関連パラメータとして採用され得る。
この「吸気酸素濃度関連パラメータの測定値、推定値または目標値」を取得する方法は、特に限定されない。例えば、所定の吸気酸素濃度関連パラメータを取得するための周知の測定方法、推定方法または目標値の決定方法が、その方法として採用され得る。
吸気酸素濃度取得手段は、
前記吸気酸素濃度関連パラメータに基づき、「前記吸気酸素濃度」を取得するようになっている。この「吸気酸素濃度」を取得する方法は、特に制限されない。例えば、所定の吸気酸素濃度関連パラメータと吸気酸素濃度との関係を表す関係式をあらかじめ定めると共に、その関係式に実際の吸気酸素濃度関連パラメータを適用することによって吸気酸素濃度を算出する方法が、その方法として採用され得る。さらに、例えば、上記吸気酸素濃度測定装置の出力値に基づいて吸気酸素濃度を取得する方法が、その方法として採用され得る。
上記「所定の関係式に実際の吸気酸素濃度関連パラメータを適用することによって吸気酸素濃度を算出する方法」は、特に限定されない。例えば、排気再循環(EGR)が行われている場合、EGR率と、理論空燃比(≒14.7)に対する実際の空燃比(実空燃比)の比である空気過剰率と、に基づいて吸気酸素濃度を算出する方法が、その方法として採用され得る。さらに、例えば、内燃機関の外部のガス(空気)の酸素濃度と、吸気通路内のガスの圧力と、に基づいて吸気酸素濃度を算出する方法が、その方法として採用され得る。
NOx濃度取得手段は、
前記気筒から排出されるガスの窒素酸化物濃度である「NOx濃度」の測定値または推定値を取得するようになっている。この「NOx濃度の測定値または推定値」を取得する方法は、特に限定されない。例えば、NOx濃度の測定値または推定値を取得する方法として、排気通路の所定位置にNOx濃度測定装置(例えば、NOx濃度センサなど)を設けると共に、そのNOx濃度測定装置の出力値に基づいてNOx濃度の「測定値」を取得する方法が、採用され得る。さらに、例えば、あらかじめ実験などによって所定の運転パラメータ(例えば、吸気酸素濃度および燃料噴射量など)とNOx濃度との関係(例えば、NOx濃度マップ)を取得すると共に、実際の運転パラメータをその関係に適用することによってNOx濃度の「推定値」を取得する方法が、その方法として採用され得る。加えて、例えば、所定の運転パラメータ(例えば、吸気酸素濃度および燃料噴射量など)に基づいてNOx濃度を推定するNOx濃度推定モデルに実際の運転パラメータを適用することによってNOx濃度の「推定値」を取得する方法が、その方法として採用され得る。
状態判定手段は、
「前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれ」が「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
「前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれ」が、「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
上記燃料噴射量ずれは、「燃料噴射量の目標値」を基準としてその「燃料噴射量の目標値」と「燃料噴射量の実際値」との差を表現することができる数値であればよく、特に制限されない。例えば、燃料噴射量ずれとして、「燃料噴射量の実際値から燃料噴射量の目標値を減算して得られる値」を「燃料噴射量の目標値」によって除算して得られる値(すなわち、燃料噴射量の目標値に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「燃料噴射量の実際値から燃料噴射量の目標値を減算して得られる値そのもの」が、燃料噴射量ずれとして採用され得る。
より具体的に述べると、燃料噴射量の目標値よりも燃料噴射量の実際値が大きいとき、燃料噴射量ずれは「正」である。さらに、燃料噴射量の目標値と燃料噴射量の実際値とが一致しているとき、燃料噴射量ずれは「ゼロ」である。加えて、燃料噴射量の目標値よりも燃料噴射量の実際値が小さいとき、燃料噴射量ずれは「負」である。
上記吸気酸素濃度関連パラメータずれは、「吸気酸素濃度関連パラメータの実際値」を基準としてその「吸気酸素濃度関連パラメータの実際値」と「吸気酸素濃度関連パラメータの測定値、推定値または目標値」との差を表現することができる数値であればよく、特に制限されない。例えば、吸気酸素濃度関連パラメータずれとして、「吸気酸素濃度関連パラメータの測定値、推定値または目標値から吸気酸素濃度関連パラメータの実際値を減算して得られる値」を「吸気酸素濃度関連パラメータの実際値」によって除算して得られる値(すなわち、吸気酸素濃度関連パラメータの実際値に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「吸気酸素濃度関連パラメータの測定値、推定値または目標値から吸気酸素濃度関連パラメータの実際値を減算して得られる値そのもの」が、吸気酸素濃度関連パラメータずれとして採用され得る。
より具体的に述べると、吸気酸素濃度関連パラメータの実際値よりも吸気酸素濃度関連パラメータの測定値、推定値または目標値が大きいとき、吸気酸素濃度関連パラメータずれは「正」である。さらに、吸気酸素濃度関連パラメータの実際値と吸気酸素濃度関連パラメータの測定値、推定値または目標値とが一致しているとき、吸気酸素濃度関連パラメータずれは「ゼロ」である。加えて、吸気酸素濃度関連パラメータの実際値よりも吸気酸素濃度関連パラメータの測定値、推定値または目標値が小さいとき、吸気酸素濃度関連パラメータずれは「負」である。
以下、便宜上、「燃料噴射量ずれの大きさがゼロ、正および負のいずれであるか、あるいは、ゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか」を、単に「燃料噴射量ずれの状態」とも称呼する。さらに、以下、便宜上、「吸気酸素濃度関連パラメータずれの大きさがゼロ、正および負のいずれであるか、あるいは、ゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか」を、単に「吸気酸素濃度関連パラメータずれの状態」とも称呼する。
燃料噴射量ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点において燃料噴射量ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。さらに、吸気酸素濃度関連パラメータずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点において吸気酸素濃度関連パラメータずれがゼロであるとみなし得る範囲であればよく、特に制限されない。これら「所定の範囲」は、内燃機関に要求されるエミッション排出量などに基づいて適宜定められ得る。
以下、便宜上、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値である」ことを、「燃料噴射量および吸気酸素濃度関連パラメータは正常である」とも称呼する。これに対し、以下、便宜上、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であること、および、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値であること、のうちの少なくとも一方が成立しない」ことを、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」とも称呼する。
上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態が判定される際に用いられる判定指標についてより具体的に述べると、状態判定手段は、
(1)「所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれ」の前記燃料噴射量の目標値が所定の範囲内にて増大したときの変化量、および、前記燃料噴射量の目標値が所定の「第1の値」であるときの前記NOx濃度ずれ、を含む第1の判定指標、
ならびに、
(2)前記吸気酸素濃度が所定の範囲内にて増大したときの前記NOx濃度ずれの変化量、および、前記吸気酸素濃度が所定の「第2の値」であるときの前記NOx濃度ずれ、を含む第2の判定指標、
のうちの少なくとも一方に基づき、上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つ、を判定するようになっている。
上記NOx濃度ずれは、「NOx参照濃度」を基準としてその「NOx参照濃度」と「NOx濃度の測定値または推定値」との差を表現することができる数値であればよく、特に制限されない。例えば、NOx濃度ずれとして、「NOx濃度の測定値または推定値からNOx参照濃度を減算して得られる値」を「NOx参照濃度」によって除算して得られる値(すなわち、NOx参照濃度に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「NOx濃度の測定値または推定値からNOx参照濃度を減算して得られる値そのもの」が、NOx濃度ずれとして採用され得る。
より具体的に述べると、NOx参照濃度よりもNOx濃度の測定値または推定値が大きいとき、NOx濃度ずれは「正」である。さらに、NOx参照濃度とNOx濃度の測定値または推定値とが一致しているとき、NOx濃度ずれは「ゼロ」である。加えて、NOx参照濃度よりもNOx濃度の測定値または推定値が小さいとき、NOx濃度ずれは「負」である。
上記「NOx参照濃度」は、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値であるときに取得されるNOx濃度」に相当する。換言すると、燃料噴射量および吸気酸素濃度関連パラメータが正常であるとき、NOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。
NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。この「所定の範囲」は、内燃機関に要求されるエミッション排出量などに基づいて適宜定められ得る。
上記NOx参照濃度を定める方法は、特に制限されない。NOx参照濃度を定める方法として、例えば、あらかじめ実験などによって「燃料噴射量および吸気酸素濃度関連パラメータが正常であることが確認されている内燃機関における、所定の運転パラメータ(例えば、燃料噴射量および吸気酸素濃度関連パラメータなど)とNOx濃度との関係」を取得すると共に、実際の運転パラメータをその関係に適用することによって得られるNOx濃度をNOx参照濃度として定める方法が、採用され得る。さらに、例えば、所定の運転パラメータ(例えば、燃料噴射量および吸気酸素濃度など)に基づいてNOx濃度を推定するNOx濃度推定モデルに実際の運転パラメータを適用することによって得られるNOx濃度をNOx参照濃度として定める方法が、その方法として採用され得る。
上記「第1の値」および上記「第2の値」は、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つを判定するために適切な値であればよく、特に制限されない。さらに、燃料噴射量の目標値に係る上記「所定の範囲」、および、吸気酸素濃度に係る上記「所定の範囲」は、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つを判定するために適切な範囲であればよく、特に制限されない。
上記「第1の判定指標」は、燃料噴射量の目標値が所定の範囲内にて増大したときのNOx濃度ずれの変化量および燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第1の判定指標」は、燃料噴射量の目標値が所定の範囲内にて増大したときのNOx濃度ずれの変化量および燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ、ならびに、それら「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
上記「第2の判定指標」は、吸気酸素濃度が所定の範囲内にて増大したときのNOx濃度ずれの変化量および吸気酸素濃度が第2の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第2の判定指標」は、吸気酸素濃度が所定の範囲内にて増大したときのNOx濃度ずれの変化量および吸気酸素濃度が第2の値であるときのNOx濃度ずれ、ならびに、それら「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
以下、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定する具体的な方法について述べる前に、内燃機関の運転パラメータと排ガスのNOx濃度との関係について説明する。
周知の燃焼モデル(サーマルNOx生成機構)の1つである拡大ゼルドヴィッチ機構によれば、燃焼過程において生成される窒素酸化物の濃度は、燃焼に供されるガスの窒素濃度および酸素濃度、ならびに、燃焼時の火炎温度の影響を受ける。発明者は、この拡大ゼルドヴィッチ機構をさらに詳細に検討した。発明者による種々の考察および種々の実験などによれば、内燃機関の排ガスに含まれるNOx量(すなわち、上記NOx濃度)と、内燃機関の気筒内に噴射(供給)される燃料の量(すなわち、上記燃料噴射量)と、その気筒内に吸入されるガスの酸素濃度(すなわち、上記吸気酸素濃度)と、の間に強い相関があることが確認された。さらに、発明者による上記考察および上記実験などによれば、「燃料噴射量とNOx濃度との相関の程度」と、「吸気酸素濃度とNOx濃度との相関の程度」と、が異なることが確認された。なお、この吸気酸素濃度は、上述したように、吸気酸素濃度関連パラメータに基づいて定められる値である。
したがって、「燃料噴射量ずれ」が生じた場合のNOx濃度ずれの程度と、「吸気酸素濃度関連パラメータずれ」が生じた場合のNOx濃度ずれの程度と、は異なる。さらに、燃料噴射量の目標値が所定の値であるときに「燃料噴射量ずれ」が生じた場合におけるNOx濃度ずれの程度と、燃料噴射量の目標値がその所定の値であるときに「吸気酸素濃度関連パラメータずれ」が生じた場合におけるNOx濃度ずれの程度と、は異なる。加えて、吸気酸素濃度が所定の値であるときに「燃料噴射量ずれ」が生じた場合におけるNOx濃度ずれの程度と、吸気酸素濃度がその所定の値であるときに「吸気酸素濃度関連パラメータずれ」が生じた場合におけるNOx濃度ずれの程度と、は異なる。
さらに、上述したように、NOx濃度ずれは、燃料噴射量および吸気酸素濃度関連パラメータが正常であるとき(すなわち、燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であるとき)ゼロまたはゼロを含む所定の範囲内の値となるように定められている。そのため、燃料噴射量ずれの大きさに応じてNOx濃度ずれは変化し、吸気酸素濃度関連パラメータずれの大きさに応じてNOx濃度ずれは変化する。
このように、NOx濃度と、燃料噴射量と、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれ、吸気酸素濃度関連パラメータずれと、の間には所定の相関がある。そこで、状態判定手段は、上記「第1の判定指標(すなわち、燃料噴射量とNOx濃度ずれとの関係)」および上記「第2の判定指標(すなわち、吸気酸素濃度とNOx濃度ずれとの関係)」を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定するようになっている。
すなわち、状態判定手段は、
上記第1の判定指標および上記第2の判定指標のうちの少なくとも一方に基づき、
(A)前記燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(B)前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
(C)前記吸気酸素濃度関連パラメータずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(D)前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
このように、本発明の第1の内燃機関の制御装置は、NOx濃度ずれを利用して「燃料噴射量ずれの状態」および「吸気酸素濃度関連パラメータずれの状態」のうちの少なくとも一方を判定することができる。すなわち、本発明の第1の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるかを判定することができる。
なお、状態判定手段によって燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、燃料噴射量に関与する部材が正常であると判定することもできる。さらに、状態判定手段によって吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、吸気酸素濃度関連パラメータに関与する部材が正常であると判定することもできる。
さらに、上記課題を達成するための本発明による「第2の内燃機関の制御装置」は、
燃料噴射量目標値決定手段と、吸気酸素濃度関連パラメータ取得手段と、吸気酸素濃度取得手段と、NOx濃度取得手段と、状態判定手段と、を備える。以下、これら手段についてより詳細に説明する。
燃料噴射量目標値決定手段、吸気酸素濃度関連パラメータ取得手段、吸気酸素濃度取得手段は、および、NOx濃度取得手段は、それぞれ、「第1の内燃機関の制御装置」の燃料噴射量目標値決定手段、吸気酸素濃度関連パラメータ取得手段、吸気酸素濃度取得手段は、および、NOx濃度取得手段と同じである。
状態判定手段は、
「前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれ」が「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
「前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれ」が、「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
上記燃料噴射量ずれ、および、上記吸気酸素濃度関連パラメータずれは、それぞれ、「第1の内燃機関の制御装置」に関連して説明した燃料噴射量ずれ、および、吸気酸素濃度関連パラメータずれと同じである。
以下、便宜上、「第1の内燃機関の制御装置」に関連して説明した「燃料噴射量ずれの状態」、「吸気酸素濃度関連パラメータずれの状態」、「燃料噴射量および吸気酸素濃度関連パラメータは正常である」、および、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」と同じ意味で、「燃料噴射量ずれの状態」、「吸気酸素濃度関連パラメータずれの状態」「燃料噴射量および吸気酸素濃度関連パラメータは正常である」、および、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」を使用する。
上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態が判定される際に用いられる判定指標についてより具体的に述べると、状態判定手段は、
(1)「所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれ」であって前記燃料噴射量の目標値が所定の「第1の値」であるときのNOx濃度ずれを含む第1の判定指標、
および、
(2)前記吸気酸素濃度が所定の「第2の値」であるときの前記NOx濃度ずれを含む第2の判定指標、
のうちの少なくとも一方に基づき、上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つ、を判定するようになっている。
上記「NOx濃度ずれ」は、上記「NOx参照濃度」、および、NOx濃度ずれに係る上記「所定の範囲」は、それぞれ、「第1の内燃機関の制御装置」に関連して説明した「NOx濃度ずれ」、「NOx参照濃度」、および、NOx濃度ずれに係る「所定の範囲」と同じである。
上記NOx参照濃度を定める方法は、特に制限されず、「第1の内燃機関の制御装置」に関連して説明した「NOx参照濃度を定める方法」と同様である。
上記「第1の判定指標」は、燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第1の判定指標」は、燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ、および、それ「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
上記「第2の判定指標」は、吸気酸素濃度が第2の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第2の判定指標」は、吸気酸素濃度が第2の値であるときのNOx濃度ずれ、および、それ「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
なお、「第2の内燃機関の制御装置」に関する内燃機関の運転パラメータと排ガスのNOx濃度との関係は、「第1の内燃機関の制御装置」に関する内燃機関の運転パラメータと排ガスのNOx濃度との関係と同じである。
したがって、NOx濃度と、燃料噴射量と、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれ、吸気酸素濃度関連パラメータずれと、の間には所定の相関がある。そこで、状態判定手段は、上記「第1の判定指標(すなわち、燃料噴射量とNOx濃度ずれとの関係)」および上記「第2の判定指標(すなわち、吸気酸素濃度とNOx濃度ずれとの関係)」を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定するようになっている。
すなわち、状態判定手段は、
上記第1の判定指標および上記第2の判定指標のうちの少なくとも一方に基づき、
(A)前記燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(B)前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
(C)前記吸気酸素濃度関連パラメータずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(D)前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
ここで、状態判定手段は、上記判定を行う際に利用する「第1の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
のうちの少なくとも一方、を採用するようになっている。
上述したように、「第1の値」は、燃料噴射量の目標値に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値(すなわち、燃料噴射量の目標値)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
さらに、状態判定手段は、上記判定を行う際に利用する「第2の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
のうちの少なくとも一方、を採用するようになっている。
上述したように、「第2の値」は、吸気酸素濃度に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値(すなわち、吸気酸素濃度)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
なお、上述したように、NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。
このように、本発明の第2の内燃機関の制御装置は、NOx濃度ずれを利用して「燃料噴射量ずれの状態」および「吸気酸素濃度関連パラメータずれの状態」のうちの少なくとも一方を判定することができる。すなわち、本発明の第2の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるかを判定することができる。
なお、状態判定手段によって燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、燃料噴射量に関与する部材に異常が生じていないと判定することもできる。さらに、状態判定手段によって吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、吸気酸素濃度関連パラメータに関与する部材が正常であると判定することもできる。
以下、便宜上、「本発明の第1の内燃機関の制御装置」および「本発明の第2の内燃機関の制御装置」を、単に「本発明の内燃機関の制御装置」と総称する。
本発明の内燃機関の制御装置の第1の態様として、
制御装置は、補正手段を備えるように構成され得る。
この補正手段は、
(1)前記燃料噴射量ずれが「正」または「前記所定の範囲内の最大値よりも大きい値」であると判定されていれば前記燃料噴射量の目標値を「第1補正量だけ減少する」ように補正し、
(2)前記燃料噴射量ずれが「負」または「前記所定の範囲内の最小値よりも小さい値」であると判定されていれば前記燃料噴射量の目標値を「第2補正量だけ増大する」ように補正し、
(3)前記吸気酸素濃度関連パラメータずれが「正」または「前記所定の範囲内の最大値よりも大きい値」であると判定されていれば「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第3補正量だけ減少する」ように補正し、
(4)前記吸気酸素濃度関連パラメータずれが「負」または「前記所定の範囲内の最小値よりも小さい値である」と判定されていれば「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第4補正量だけ増大する」ように補正する、
ように構成され得る。
上述したように、本発明の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるか(すなわち、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態)を判定することができる。
そこで、本態様における補正手段は、判定された燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態に応じて燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正する。これにより、「燃料噴射量ずれ」の大きさおよび「吸気酸素濃度関連パラメータずれ」の大きさが低減される。その結果、「NOx濃度ずれ」の大きさが低減される。
本発明の内燃機関の制御装置の第2の態様として、
前記状態判定手段は、
前記第1の判定指標および前記第2の判定指標の「双方」に基づき、前記燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する、ように構成され得る。
本態様における状態判定手段は、第1の判定指標および第2の判定指標の「双方」に基づいて燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも一方を判定する。したがって、本態様における状態判定手段は、第1の判定指標および第2の判定指標の「一方」に基づいてそれら状態を判定する場合に比べ、より正確にそれら状態を判定することができる。
本発明の内燃機関の制御装置の第3の態様として、
前記補正手段は、
「前記NOx濃度ずれの大きさ」に応じて前記第1補正量の大きさ、前記第2補正量の大きさ、前記第3補正量の大きさおよび前記第4補正量の大きさを決定する、
ように構成され得る。
上述したように、上記「第1の態様」における補正手段は、NOx濃度ずれの大きさに応じて燃料噴射量の目標値を所定の補正量(第1補正量または第2補正量)だけ補正するようになっている。さらに、この補正手段は、NOx濃度ずれの大きさに応じて吸気酸素濃度関連パラメータの測定値、推定値または目標値を所定の補正量(第3補正量または第4補正量)だけ補正するようになっている。
上述したように、NOx濃度と燃料噴射量と吸気酸素濃度との間には強い相関がある。そのため、NOx濃度ずれの大きさと、燃料噴射量ずれの大きさと、吸気酸素濃度関連パラメータずれの大きさと、の間にも相関があると考えられる。そこで、上記「第3の態様」における補正手段は、上記補正量の大きさをNOx濃度ずれの大きさに応じて決定するようになっている。これにより、本態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値をより適切に補正することができる。これにより、「燃料噴射量ずれ」の大きさおよび「吸気酸素濃度関連パラメータずれ」の大きさがより適切に低減される。その結果、「NOx濃度ずれ」の大きさがより適切に低減される。
本発明の内燃機関の制御装置の第4の態様として、
前記補正手段は、
(1)前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記燃料噴射量の目標値を補正することを繰り返し、
(2)前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正することを繰り返す、
ように構成され得る。
上述したように、上記「第1の態様」および上記「第3の態様」における補正手段は、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正するようになっている。
さらに、上記「第4の態様」における補正手段は、この補正を繰り返し実行するようになっている。これにより、本態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれを実質的にゼロ(ゼロまたは上記所定の範囲内の値)にまで低減することができる。その結果、「NOx濃度ずれ」の大きさが実質的にゼロ(ゼロまたは所定の範囲内の値)にまで低減される。
本発明の内燃機関の制御装置の第5の態様として、
制御装置は、異常判定手段を備えるように構成され得る。
この異常判定手段は、
「前記燃料が正常に噴射されているか否か」および「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されているか否か」のうちの少なくとも一方を判定する異常判定手段であって、
前記第1補正量および前記第2補正量のうちの少なくとも一方が所定の閾値よりも大きいときに「前記燃料が正常に噴射されていない」と判定し、前記第3補正量および前記第4補正量のうちの少なくとも一方が所定の閾値よりも大きいときに「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていない」と判定する、
ように構成され得る。
以下、便宜上、「前記燃料が正常に噴射されていない」ことを「燃料噴射量が異常である」とも称呼する。さらに、以下、便宜上、「吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていない」ことを「吸気酸素濃度関連パラメータが異常である」とも称呼する。
上述したように、上記第1の態様、上記第3の態様および上記第4の態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を所定の補正量だけ補正するようになっている。
さらに、上記「第5の態様」における異常判定手段は、これら補正量の大きさに基づき、燃料噴射量が異常であるか否か、および、吸気酸素濃度関連パラメータが異常であるか否か、を判定するようになっている。これにより、例えば、本発明の内燃機関の制御装置は、燃料噴射量が異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。さらに、例えば、本発明の内燃機関の制御装置は、吸気酸素濃度関連パラメータが異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。
第1補正量および第2補正量に係る上記「所定の閾値」は、第1補正量および第2補正量の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。さらに、第3補正量および第4補正量に係る上記「所定の閾値」は、第3補正量および第4補正量の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。
本発明の内燃機関の制御装置の第6の態様において、
前記異常判定手段は、
前記燃料噴射量の目標値が補正される毎に前記第1補正量を「積算」し、
前記燃料噴射量の目標値が補正される毎に前記第2補正量を「積算」し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第3補正量を「積算」し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第4補正量を「積算」すると共に、
「前記積算された第1補正量の値」および「前記積算された第2補正量の値」のうちの少なくとも一方が所定の閾値よりも大きいときに前記燃料が正常に噴射されていないと判定し、「前記積算された第3補正量の値」および「前記積算された第4補正量の値」のうちの少なくとも一方が所定の閾値よりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する、
ように構成され得る。
上述したように、上記「第4の態様」における補正手段は、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正することを繰り返すようになっている。
そこで、上記「第6の態様」における異常判定手段は、上記補正が行われる毎にその補正に用いられる補正量を積算すると共に、その積算された補正量の値に基づいて燃料噴射量が異常であるか否か、および、吸気酸素濃度関連パラメータが異常であるか否か、を判定するようになっている。これにより、上記同様、例えば、本発明の内燃機関の制御装置は、燃料噴射量が異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。さらに、例えば、本発明の内燃機関の制御装置は、吸気酸素濃度関連パラメータが異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。
積算された第1補正量の値および積算された第2補正量の値に係る上記「所定の閾値」は、積算された第1補正量の値および積算された第2補正量の値の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。さらに、積算された第3補正量の値および積算された第4補正量の値に係る上記「所定の閾値」は、積算された第3補正量の値および積算された第4補正量の値の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。
本発明の内燃機関の制御装置の第7の態様において、
前記状態判定手段は、「前記第1の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、のうちの少なくとも一方、を採用するように構成され得る。
上述したように、「第1の値」は、燃料噴射量の目標値に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値(すなわち、燃料噴射量の目標値)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、上述したように、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
さらに、第7の態様における前記状態判定手段は、「前記第2の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、のうちの少なくとも一方、を採用するように構成され得る。
上述したように、「第2の値」は、吸気酸素濃度に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値(すなわち、吸気酸素濃度)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、上述したように、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
なお、上述したように、NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。
本発明の内燃機関の制御装置の第8の態様として、
前記吸気酸素濃度関連パラメータ取得手段は、
前記内燃機関に吸入される空気の量である「吸入空気量」を前記吸気酸素濃度関連パラメータのうちの1つとして採用する、
ように構成され得る。
上記吸入空気量は、吸気酸素濃度に関連する代表的なパラメータの1つである。なお、吸気酸素濃度関連パラメータとして「吸入空気量」が採用されるとき、吸気酸素濃度関連パラメータ取得手段は「吸入空気量の測定値または推定値」を取得するように構成され得る。
この「吸入空気量の測定値または推定値」を取得する方法は、特に制限されない。吸入空気量の測定値または推定値を取得する方法として、例えば、吸気通路の所定位置に吸入空気量測定装置(例えば、熱線式エアフローメータおよびフラップ式エアフローメータなど)を設けると共に、その吸入空気量測定装置の出力値に基づいて吸入空気量の「測定値」を取得する方法が、採用され得る。さらに、例えば、機関回転速度、吸気通路内のガスの圧力、機関回転速度、および、スロットル弁の開度などの運転パラメータのうちの一または複数の運転パラメータに基づいて吸入空気量の「推定値」を取得する方法が、この方法として採用され得る。
本発明の内燃機関の制御装置の第9の態様において、
制御装置は、前記NOx参照濃度を、
前記燃料噴射量と、前記吸気酸素濃度と、に基づいて前記NOx濃度を推定する「NOx濃度推定モデル」を利用して定める、
ように構成され得る。
上述したように、発明者による種々の考察および種々の実験などによれば、NOx濃度と燃料噴射量と吸気酸素濃度との間に強い相関があることが確認されている。したがって、この相関に基づき、上記NOx濃度推定モデルが定められ得る。さらに、上述したように、NOx参照濃度は、燃料噴射量および吸気酸素濃度関連パラメータが正常であるときに取得されるNOx濃度に相当する。そこで、上記「第9の態様」におけるNOx参照濃度は、上記NOx濃度推定モデルを利用して定められるようになっている。これにより、例えば「実験などによってあらかじめ取得した所定の運転パラメータとNOx濃度との関係」を利用してNOx参照濃度を取得することに比べ、より簡便にNOx参照濃度を取得することができる。
本発明の内燃機関の制御装置の第10の態様において、
制御装置は、前記「第1の値」および前記「第2の値」を前記NOx濃度推定モデルに基づいて定める、ように構成され得る。
上述したように、本発明の内燃機関の制御装置(第1の内燃機関の制御装置および第2の内燃機関の制御装置の双方)は、「燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ」および「吸気酸素濃度が第2の値であるときのNOx濃度ずれ」のうちの少なくとも一方を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも一方を判定するようになっている。この第1の値および第2の値は、この判定を行うために出来る限り適切な値であることが望ましい。
上記NOx濃度推定モデルは、上述したように、燃料噴射量と吸気酸素濃度とNOx濃度との関係を表すモデルである。そこで、このNOx濃度推定モデルを利用することにより、「上記判定を行うために出来る限り適切な値である第1の値および第2の値」が容易に定められ得る。
例えば、「上記判定を行うために出来る限り適切な値」として、上記「第7の態様」において採用されている第1の値および第2の値が挙げられる。上述したように、この第1の値は所定の複数の要件が満たされるときの燃料噴射量であり、この第2の値は所定の複数の要件が満たされるときの吸気酸素濃度関連パラメータである。一般に、このように複数の要件が満たされるときの燃料噴射量および吸気酸素濃度関連パラメータを特定することは困難である。しかし、上記NOx濃度推定モデルを利用すれば、このような第1の値および第2の値であっても比較的容易に定められ得る。
図1は、本発明の第1実施形態に係る制御装置が適用される内燃機関の概略図である。
図2は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図3は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図4は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図5は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図6は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図7は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図8は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図9は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図10は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図11は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図12は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図13は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図14は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図15は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図16は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図17は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図18は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図19は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図20は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図21は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図22は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図23は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図24は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
以下、本発明による内燃機関の制御装置の各実施形態について、図面を参照しながら説明する。
(第1実施形態)
<装置の概要>
図1は、本発明の第1の実施形態に係る制御装置(以下、「第1装置」とも称呼する。)を内燃機関10に適用したシステムの概略構成を示している。内燃機関10は、第1気筒〜第4気筒の4つの気筒を有する4気筒ディーゼル機関である。以下、便宜上、「内燃機関」を単に「機関」とも称呼する。
この機関10は、図1に示すように、燃料噴射(供給)系統を含むエンジン本体20、エンジン本体20に空気を導入するための吸気系統30、エンジン本体20から排出されるガスを機関10の外部に放出するための排気系統40、排ガスを排気系統40から吸気系統30に還流させるためのEGR装置50、および、排ガスのエネルギによって駆動されてエンジン本体20に導入される空気を圧縮する過給装置60、を備えている。
エンジン本体20は、吸気系統30および排気系統40が連結されたシリンダヘッド21を有している。このシリンダヘッド21は、各気筒に対応するように各気筒の上部に設けられた複数の燃料噴射装置22を有している。各燃料噴射装置22は、図示しない燃料タンクと接続されており、電気制御装置80からの指示信号に応じて各気筒の燃焼室内に燃料を噴射するようになっている。
吸気系統30は、シリンダヘッド21に形成された図示しない吸気ポートを介して各気筒に連通されたインテークマニホールド31、インテークマニホールド31の上流側の集合部に接続された吸気管32、吸気管32内の開口断面積を可変とするスロットル弁(吸気絞り弁)33、電気制御装置80からの指示信号に応じてスロットル弁33を回転駆動するスロットル弁アクチュエータ33a、スロットル弁33の上流側において吸気管32に設けられたインタークーラ34、および、インタークーラ34の上流側に設けられた過給装置60よりも上流側の吸気管32の端部に設けられたエアクリーナ35、を有している。インテークマニホールド31および吸気管32は、吸気通路を構成している。
排気系統40は、シリンダヘッド21に形成された図示しない排気ポートを介して各気筒に連通されたエキゾーストマニホールド41、エキゾーストマニホールド41の下流側の集合部に接続された排気管42、および、排気管42に設けられた過給装置60よりも下流側の排気管42に設けられた排ガス浄化用触媒(DPNR)43、を有している。エキゾーストマニホールド41および排気管42は、排気通路を構成している。
EGR装置50は、排ガスをエキゾーストマニホールド41からインテークマニホールド31へと還流させる通路(EGR通路)を構成する排気還流管51、排気還流管51に介装されたEGRガス冷却装置(EGRクーラ)52、および、排気還流管51に介装されたEGR制御弁53、を有している。EGR制御弁53は、電気制御装置80からの指示信号に応じて還流される排ガス量(EGRガス量)を変更し得るようになっている。
過給装置60は、コンプレッサ61およびタービン62を有している。コンプレッサ61は吸気通路(吸気管32)に設けられている。タービン62は排気通路(排気管42)に設けられている。コンプレッサ61とタービン62とは、図示しないローターシャフトによって同軸回転可能に連結されている。これにより、タービン62が排ガスによって回転せしめられると、コンプレッサ61が回転すると共にコンプレッサ61に供給される空気が圧縮される(過給が行われる)。
この第1装置は、吸入空気量センサ71、吸気温度センサ72、吸気圧センサ73、クランクポジションセンサ74、NOx濃度センサ75、および、アクセル開度センサ76、を備えている。吸入空気量センサ71として、例えば、熱線式エアフローメータが採用され得る。
吸入空気量センサ71は、吸気通路(吸気管32)に設けられている。吸入空気量センサ71は、吸気管32内を流れると共に機関10に吸入される空気の質量流量である吸入空気量(すなわち、機関10に吸入される空気の質量)に応じた信号を出力するようになっている。この信号に基づき、吸入空気量の測定値Gamsrが取得される。
吸気温度センサ72は、吸気通路(吸気管32)に設けられている。吸気温度センサ72は、吸気管32内を流れると共に機関10に吸入される空気の温度である吸気温度に応じた信号を出力するようになっている。この信号に基づき、吸気温度が取得される。
吸気圧センサ73は、スロットル弁33の下流側において吸気管32に設けられている。吸気圧センサ73は、それが設けられている部位における吸気管32内の空気の圧力(すなわち、機関10の燃焼室に供給される空気の圧力。換言すると、過給装置60によってもたらされる過給圧)を表す信号を出力するようになっている。この信号に基づき、過給圧の測定値(以下、単に「過給圧Pim」とも称呼する。)が取得される。
クランクポジションセンサ74は、図示しないクランクシャフトの近傍に設けられている。クランクポジションセンサ74は、クランクシャフトが10°回転する毎に幅の狭いパルスを有する信号を出力すると共に、クランクシャフトが360°回転する毎に幅の広いパルスを有する信号を出力するようになっている。これら信号に基づき、クランクシャフトの単位時間あたりの回転数の測定値(以下、単に「機関回転速度NE」とも称呼される。)が取得される。
NOx濃度センサ75は、排ガス浄化用触媒(DPNR)43よりも上流側において排気通路(排気管42)に設けられている。NOx濃度センサ75は、排気管42を通過する排ガスのNOx濃度(質量濃度)に応じた信号を出力するようになっている。この信号に基づき、排ガスのNOx濃度の測定値NOxmsrが取得される。
アクセル開度センサ76は、機関10の操作者によって操作されるアクセルペダルAPに設けられている。アクセル開度センサ75は、このアクセルペダルAPの開度に応じた信号を出力するようになっている。この信号に基づき、アクセルペダル開度の測定値(以下、単に「アクセルペダル開度Accp」とも称呼する。)が取得される。
電気制御装置80は、CPU81、CPU81が実行するプログラム、テーブル(マップ)および定数などをあらかじめ記憶したROM82、CPU81が必要に応じて一時的にデータを格納するRAM83、電源が投入された状態でデータを格納すると共に格納したデータを電源が遮断されている間も保持するバックアップRAM84、ならびに、ADコンバータを含むインターフェース85、などを有する。CPU81、ROM82、RAM83、RAM84およびインターフェース85は、互いにバスで接続されている。
インターフェース85は、上記各センサなどと接続され、CPU81に上記各センサなどから出力される信号を供給するようになっている。さらに、インターフェース85は、CPU81の指示に応じて、燃料噴射装置22、スロットル弁アクチュエータ33a、および、EGR制御弁53などに駆動信号(指示信号)を送出するようになっている。
<装置の作動の概要>
以下、上述したように構成された第1装置の作動の概要について説明する。
まず、第1装置は、上記各センサから出力される信号に基づき、所定の運転パラメータ(吸入空気量の測定値Gamsr、過給圧Pim、機関回転速度NE、および、排ガスのNOx濃度の測定値NOxmsr)を取得する。さらに、第1装置は、所定の運転パラメータに基づいて定まるEGR率の目標値Regrtgtと、その実際値Regractと、が一致するように、スロットル弁33およびEGR制御弁53を制御する。加えて、第1装置は、所定の運転パラメータに基づき、「燃料噴射量の目標値Qtgt」を決定する。
次いで、第1装置は、吸入空気量の測定値Gamsr、EGR率の目標値Regrtgtおよび燃料噴射量の目標値Qtgtに基づき、気筒内に吸入されるガスの酸素濃度である吸気酸素濃度Oconを取得(算出)する。
一方、第1装置は、あらかじめ実験などによって「機関10と同一の構成を備える機関であって、燃料噴射量の目標値Qtgtとその実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrとその実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと吸気酸素濃度OconとNOx濃度との関係MapNOxref(Qtgt,Ocon)」を取得している。第1装置は、この関係MapNOxref(Qtgt,Ocon)に実際の燃料噴射量の目標値Qtgtおよび吸気酸素濃度Oconを適用することにより、NOx参照濃度NOxrefを取得する。
以下、便宜上、「燃料噴射量の目標値Qtgtとその実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrとその実際値Gaactとが一致している」ことを、「燃料噴射量および吸入空気量が正常である」とも称呼する。
そして、第1装置は、「NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値(NOxmsr−NOxref)」を「NOx参照濃度NOxref」によって除算して得られる値(すなわち、NOx参照濃度NOxrefに対する上記減算して得られる値NOxmsr−NOxrefの割合)を、「NOx濃度ずれΔNOx」として取得する。
第1装置は、機関10が運転されている期間中、燃料噴射量の目標値Qtgtと、NOx濃度ずれΔNOxと、を対応させながら取得し続ける。そして、第1装置は、取得されたこれら値に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。以下、便宜上、「燃料噴射量ずれの状態および吸入空気量ずれの状態の判定」を、単に「状態判定」とも称呼する。
第1装置において、燃料噴射量ずれとは、燃料噴射量の目標値Qtgtに対する燃料噴射量の実際値Gaactの差を意味する。具体的には、「燃料噴射量の実際値Qactから燃料噴射量の目標値Qtgtを減算して得られる値(Qact−Qtgt)」を「燃料噴射量の目標値Qtgt」によって除算して得られる値(すなわち、燃料噴射量の目標値Qtgtに対する上記減算して得られる値Qact−Qtgtの割合)が、「燃料噴射量ずれ」として取り扱われる。
さらに、第1装置において、吸入空気量ずれとは、吸入空気量の実際値Gaactに対する吸入空気量の測定値Gamsrの差を意味する。具体的には、「吸入空気量の測定値Gamsrから吸入空気量の実際値Gaactを減算して得られる値(Gamsr−Gaact)」を「吸入空気量の実際値Gaact」によって除算して得られる値(すなわち、吸入空気量の実際値Gaactに対する上記減算して得られる値Gamsr−Gaactの割合)が、「吸入空気量ずれ」として取り扱われる。
第1装置は、上記状態判定の結果に応じて、燃料噴射量ずれの大きさが小さくなるように燃料噴射量の目標値Qtgtを所定の補正量だけ補正する。さらに、第1装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさが小さくなるように吸入空気量の測定値Gamsrを所定の補正量だけ補正する。加えて、第1装置は、これら補正を、燃料噴射量ずれがゼロとなり且つ吸入空気量ずれがゼロとなるまで繰り返す。
第1装置は、燃料噴射量の目標値Qtgtの補正量の積算値が所定の閾値よりも大きくなると、「燃料噴射装置22が異常である」ことを表示装置など(図1において図示省略。)に表示する。さらに、第1装置は、吸入空気量の測定値Gamsrの補正量の積算値が所定の閾値よりも大きくなると、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第1装置の作動の概要である。
<内燃機関の制御方法>
次いで、第1装置の具体的な作動についての説明を行う前に、第1装置に採用されている機関10の制御方法につき、下記説明1−1〜1−4の順序に従って説明する。
(説明1−1)NOx濃度推定モデルについての説明
(説明1−2)吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明
(説明1−3)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
(説明1−4)状態判定の結果に応じた補正についての説明
(説明1−1)NOx濃度推定モデルについての説明
まず、周知のように、排気再循環(EGR)が行われる内燃機関における吸気酸素濃度Oconは、下記(1)式に示すように近似される。下記(1)式において、数値23.2は標準状態における空気の酸素濃度(質量パーセント濃度)を、RegrはEGR率を、λは空気過剰率を、表す。なお、周知のように、標準状態とは、温度がゼロ℃(273.15K)であり且つ圧力が1bar(10Pa)である状態を意味する。
Ocon=23.2(1−Regr/λ) ・・・(1)
上記(1)式において、空気過剰率λは下記(2)式に示すように定義される。下記(2)式において、abyfactは実際の空燃比を、abyfstoichは理論空燃比(≒14.7)を、表す。
λ=abyfact/abyfstoich ・・・(2)
上記(2)式において、実際の空燃比abyfactは下記(3)式に示すように定義される。下記(3)式において、Gaは吸入空気量を、Qは燃料噴射量を、表す。
abyfact=Ga/Q ・・・(3)
なお、周知のように、EGR率Regrは、下記(4)式に示すように定義される。下記(4)式において、Gcylは内燃機関の運転状態(機関回転速度および過給圧など)に応じて定まる気筒内に吸入されるガスの総量を、Gaは上述したように吸入空気量を、表す。
Regr=(Gcyl−Ga)/Gcyl ・・・(4)
このように、内燃機関における吸気酸素濃度Oconは、吸気酸素濃度に関連するパラメータ(すなわち、EGR率Regr、吸入空気量Ga、および、燃料噴射量Q)に基づいて定まる。
次いで、周知の燃焼モデル(サーマルNOx生成機構)の1つである拡大ゼルドヴィッチ機構によれば、燃焼過程において生成される窒素酸化物の濃度は、燃焼に供されるガスの窒素濃度および酸素濃度、ならびに、燃焼時の火炎温度の影響を受ける。発明者は、この拡大ゼルドヴィッチ機構をさらに詳細に検討した。具体的に述べると、この拡大ゼルドヴィッチ機構を内燃機関に適用する場合、燃焼過程における上記ガスの窒素濃度の変化量は非常に小さいので、このガスの窒素濃度は燃焼過程において実質的に変化しない(すなわち、所定の固定値とみなす)と仮定し得る。さらに、この場合、上記ガスの酸素濃度は、内燃機関の吸気酸素濃度Oconを所定の回数だけ累乗して得られる値に相当すると仮定し得る。加えて、この場合、上記燃焼時の火炎温度は、吸気酸素濃度Oconおよび燃料噴射量Qに比例すると仮定し得る。
なお、燃料に含まれる窒素分(窒素化合物)に起因して生成されるフューエルNOxの量、および、燃料に含まれる炭素分および水素分と空気に含まれる窒素とが反応して生成される中間体(シアン化水素など)に起因して生成されるプロンプトNOxの量は、上記窒素酸化物(サーマルNOx)の量に対して小さいので、実質的にゼロであると仮定し得る。
発明者は、これら仮定に基づいて種々の考察および種々の実験などを行った。それら考察および実験などによれば、内燃機関の排ガスのNOx濃度NOxconは下記(5)式にて表しめられることが確認された。下記(5)式において、eは自然対数の底(ネイピア数)を、Oconは上記(1)式にて示される吸気酸素濃度を、Qは上述したように燃料噴射量を、指数A、BおよびCのそれぞれは内燃機関の構造などに応じて定まる固定値を、表す。なお、指数A、BおよびCは、個別の内燃機関ごとに定まる固有の値であって、実験などによって定められ得る値である。
NOxcon=e×Ocon×Q ・・・(5)
このように、内燃機関の排ガスのNOx濃度NOxconと、吸気酸素濃度Oconと、燃料噴射量Qと、の間に強い相関があることが確認された。換言すると、内燃機関の排ガスのNOx濃度NOxconは吸気酸素濃度Oconおよび燃料噴射量Qに基づいて定まることが確認された。
さらに、発明者によるさらなる考察および実験などによれば、一般的な内燃機関において、「吸気酸素濃度OconとNOx濃度NOxconとの相関の程度を表す指数B」と「燃料噴射量QとNOx濃度NOxconとの相関の程度を表す指数C」とは異なることが確認された。換言すると、吸気酸素濃度OconがNOx濃度NOxconに与える影響は燃料噴射量QがNOx濃度NOxconに与える影響とは異なることが確認された。上記(5)式は、「NOx濃度推定モデル」として第1装置に採用される。
(説明1−2)吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明
上述したように、第1装置は、「燃料噴射量および吸入空気量が正常である」ことが確認されている機関の排ガスのNOx濃度を、NOx参照濃度NOxrefとして取得している。よって、機関10に吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じると、NOx濃度センサ75によって測定されるNOx濃度NOxconはこのNOx参照濃度NOxrefと一致しない。すなわち、「NOx濃度ずれΔNOx」が生じる。
より具体的に述べると、上記NOx濃度推定モデルに示すように、NOx濃度NOxconは、吸気酸素濃度Oconおよび燃料噴射量Qの影響を受ける(上記(5)式を参照。)。さらに、この吸気酸素濃度Oconは、EGR率Regr、吸入空気量Gaおよび燃料噴射量Qの影響を受ける(上記(1)式〜上記(4)式を参照。)。加えて、EGR率Regrは、吸入空気量Gaの影響を受ける(上記(4)式を参照。)。
「吸入空気量ずれ」が生じた場合、吸入空気量の測定値Gamsrは実際値Gaactと一致しない。そのため、見掛け上のEGR率(すなわち、上記(4)式にて算出されるEGR率の計算値)Regrappが目標値Regrtgtと一致しても、EGR率の実際値Regractは目標値Regrtgtと一致しない。このように、この場合、吸入空気量の測定値Gamsrが実際値Gaactと一致せず且つEGR率の実際値RegractがEGR率の目標値Regrtgtと一致しないので、見掛け上の吸気酸素濃度(すなわち、上記(1)式にて算出される吸気酸素濃度の計算値)Oconappは吸気酸素濃度の実際値Oconactと一致しない。
これらの結果、「吸気酸素濃度の実際値Oconact」および「燃料噴射量の実際値Qact」に基づいて定まる実際のNOx濃度(NOx濃度センサ75によって測定されるNOx濃度)NOxconは、「見掛け上の吸気酸素濃度Oconapp」および「燃料噴射量の目標値Qtgt」を上記関係MapNOxref(Qtgt,Ocon)に適用することによって定まるNOx参照濃度NOxrefと、一致しない。すなわち、NOx濃度ずれΔNOxが生じる。
一方、「燃料噴射量ずれ」が生じた場合、燃料噴射量の実際値Qactは目標値Qtgtと一致しない。この場合、EGR率と燃料噴射量とは直接的には関連しないので(上記(4)式を参照。)、EGR率の実際値Regractは目標値Regrtgtと一致する。ところが、この場合、燃料噴射量の実際値Qactが目標値Qtgtと一致しないので、見掛け上の吸気酸素濃度Oconappは吸気酸素濃度の実際値Oconactと一致しない。
この結果、「吸気酸素濃度の実際値Oconact」および「燃料噴射量の実際値Qact」に基づいて定まる実際のNOx濃度NOxconは、「見掛け上の吸気酸素濃度Oconapp」および「燃料噴射量の目標値Qtgt」を上記関係MapNOxref(Qtgt,Ocon)に適用することによって定まるNOx参照濃度NOxrefと、一致しない。すなわち、NOx濃度ずれΔNOxが生じる。
以上が、吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由である。
(説明1−3)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
上述したように、吸入空気量ずれおよび燃料噴射量ずれの双方がNOx濃度ずれに影響を与える。第1装置は、この影響に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態のうちの少なくとも一方を判定する。以下、上記NOx濃度推定モデルを用いて、下記条件1−A〜1−Dのうちの「一または複数」が成立する場合における「燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係」について説明する。
(条件1−A)吸入空気量の実際値Gaactが測定値Gamsrよりも小さい。
(条件1−B)吸入空気量の実際値Gaactが測定値Gamsrよりも大きい。
(条件1−C)燃料噴射量の実際値Qactが目標値Qtgtよりも小さい。
(条件1−D)燃料噴射量の実際値Qactが目標値Qtgtよりも大きい。
以下、条件1−Aに示す状態を「吸入空気量ずれが負である」と、条件1−Bに示す状態を「吸入空気量ずれが正である」と、条件1−Cに示す状態を「燃料噴射量ずれが負である」と、条件1−Dに示す状態を「燃料噴射量ずれが正である」と、称呼する。さらに、以下、便宜上、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係を「第1の関係R1(Qtgt,ΔNOx)」と称呼する。
さらに、この説明1−3において、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータ(例えば、気筒内に吸入されるガスの総量Gcylに影響を与える機関回転速度NEおよび過給圧Pim、EGR率の目標値Regrtgt、ならびに、気筒内に燃料を噴射する時期である燃料噴射時期など)は、所定の値に固定されていると仮定する。すなわち、吸入空気量ずれおよび燃料噴射量ずれ「のみ」がNOx濃度ずれΔNOxに影響を与えると仮定する。
まず、上記条件1−A〜1−Dのうちの「1つ」が成立する場合における第1の関係R1(Qtgt,ΔNOx)について説明する。
図2(A)は、条件1−A〜条件1−Dのうちの1つが成立する場合における第1の関係R1(Qtgt,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。NOx濃度推定モデルにおける指数A、BおよびC(上記(5)式を参照。)は、「機関10と同一の構成を有する機関であって、燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値NOxmsrと実際値Gaactとが一致していることが確認されている機関」を用いた実験によって定められた。
図2(A)において、Gamsr(−)は、条件1−Aが成立する場合(吸入空気量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)は、条件1−Bが成立する場合(吸入空気量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Qact(−)は、条件1−Cが成立する場合における(燃料噴射量ずれが負である場合)の第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Qact(+)は、条件1−Dが成立する場合(燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。
まず、「条件1−Aのみ」が成立する場合、曲線Gamsr(−)に示すように、少なくとも燃料噴射量の目標値Qtgtが所定値Aから所定値Bである範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件1−Bのみ」が成立する場合、曲線Gamsr(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
加えて、「条件1−Cのみ」が成立する場合、曲線Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件1−Dのみ」が成立する場合、曲線Qact(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
このように、条件1−Aが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Bが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Cが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Dが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、は異なる。
所定値Aおよび所定値Bのそれぞれは、上述したように条件1−A〜1−Dのうちの一の条件が成立した場合に得られる第1の関係R1(Qtgt,ΔNOx)がその一の条件とは異なる他の条件が成立した場合に得られる第1の関係R1(Qtgt,ΔNOx)と異なることとなる適値に設定されればよい。
以上、条件1−A〜1−Dのうちの「1つ」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明した。
次いで、上記条件1−A〜1−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明する。
図2(B)は、条件1−A〜1−Dのうちの複数が成立する場合における第1の関係R1(Qtgt,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。
図2(B)において、Gamsr(−)+Qact(+)は、条件1−Aおよび条件1−Dが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(−)+Qact(−)は、条件1−Aおよび条件1−Cが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(+)は、条件1−Bおよび条件1−Dが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(−)は、条件1−Bおよび条件1−Cが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。
なお、条件1−A(吸入空気量ずれが負である状態)と、条件1−B(吸入空気量ずれが正である状態)と、は同時に成立し得ない。さらに、条件1−C(燃料噴射量ずれが負である状態)と、条件1−D(燃料噴射量ずれが正である状態)と、は同時に成立し得ない。よって、図2(B)に示す4つの組み合わせが、成立し得る組み合わせの全てである。
まず、「条件1−Aおよび条件1−D」が成立する場合、曲線Gamsr(−)+Qact(+)に示すように、少なくとも燃料噴射量の目標値Qtgtが所定値Aから所定値Bである範囲内(A≦Qtgt≦B)において燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件1−Aおよび条件1−C」が成立する場合、曲線Gamsr(−)+Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
加えて、「条件1−Bおよび条件1−D」が成立する場合、曲線Gamsr(+)+Qact(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件1−Bおよび条件1−C」が成立する場合、曲線Gamsr(+)+Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
このように、条件1−Aおよび条件1−Dが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、条件1−Aおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。さらに、条件1−Bおよび条件1−Dが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、条件1−Bおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。加えて、条件1−Aおよび条件1−D、あるいは、条件1−Aおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)は、条件1−Bおよび条件1−D、あるいは、条件1−Bおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、異なる。
以上、条件1−A〜1−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明した。
なお、「条件1−A〜1−Dのいずれも成立しない」場合(すなわち、吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合)、実際のNOx濃度NOxconはNOx濃度NOxconと一致する。よって、この場合、NOx濃度ずれΔNOxは、燃料噴射量の目標値Qtgtにかかわらずゼロである。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「ゼロ」である。
ところで、機関10を構成する部材のうち「吸入空気量および燃料噴射量と関連しない部材」が正常に作動しない場合においても、NOx濃度ずれは生じ得る。例えば、NOx濃度センサ75が正常に作動しなし場合(実際のNOx濃度とは異なるNOx濃度を表す出力値を出力する場合)、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロであっても、NOx濃度ずれが生じる。以下、このような状態を「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と称呼する。
この場合、図3の曲線Other(+)または曲線Other(−)に示すように、燃料噴射量の目標値QtgtにかかわらずNOx濃度ずれΔNOxの大きさは変化しない。すなわち、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」または「負」である。
このように、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件1−Aおよび条件1−Bを参照。)、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件1−Cおよび条件1−Dを参照。)、により、第1の関係R1(Qtgt,ΔNOx)は異なる。換言すると、第1の関係R1(Qtgt,ΔNOx)に基づき、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、を判定することができる。さらに、第1の関係R1(Qtgt,ΔNOx)に基づき、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれ」が生じているか否か、を判定することができる。
具体的に述べると、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図2(A)の曲線Gamsr(−)、ならびに、図2(B)の曲線Gamsr(−)+Qact(+)および曲線Gamsr(−)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが負である」と判定することができる。
さらに、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図2(A)の曲線Gamsr(+)、ならびに、図2(B)の曲線Gamsr(+)+Qact(+)および曲線Gamsr(+)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが正である」と判定することができる。
加えて、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図2(A)の曲線Qact(+)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが正である」と判定することができる。
さらに加えて、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図2(A)の曲線Qact(−)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが負である」と判定することができる。
なお、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「ゼロ」である関係」である場合、「吸入空気量ずれがゼロであり、かつ、燃料噴射量ずれがゼロである」と判定することができる。
さらに、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」または「負」である関係」である場合、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定することができる。
このように、第1装置は、第1の関係R1(Qtgt,ΔNOx)に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。以下、上述した燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する方法を、「第1状態判定方法」とも称呼する。
(説明1−4)状態判定の結果に応じた補正についての説明
第1装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさを低減するように吸入空気量の測定値Gamsrを補正し、燃料噴射量ずれの大きさを低減するように燃料噴射量の目標値Qtgtを補正する。
具体的に述べると、第1装置は、吸入空気量ずれが「正」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「減少」するように補正する。一方、第1装置は、吸入空気量ずれが「負」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「増大」するように補正する。これら補正にて用いられる「補正量」はNOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図4(A)に示すように、燃料噴射量の目標値Qtgtが所定値AであるときのNOx濃度ずれΔNOx(A)および燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOx(B)の双方が「正」であって、NOx濃度ずれΔNOx(A)よりもNOx濃度ずれΔNOx(B)が大きい場合、第1装置は、上記説明1−3にて述べたように、「少なくとも吸入空気量ずれが負である」と判定する。
この場合、第1装置は、例えば、NOx濃度ずれΔNOx(A)とNOx濃度ずれΔNOx(B)との平均値に基づいて上記「補正量」を決定する。そして、第1装置は、吸入空気量の測定値Gamsrをこの補正量だけ「増大」するように補正する。具体的に述べると、第1装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、吸入空気量センサ71の出力値(出力電圧)と吸入空気量の測定値Gamsrとの関係(マップ)を、測定値Gamsrが増大されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
さらに、第1装置は、燃料噴射量ずれが「正」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「減少」するように補正する。一方、第1装置は、燃料噴射量ずれが「負」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「増大」するように補正する。これら補正において用いられる「補正量」は、NOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図4(B)に示すように、燃料噴射量の目標値Qtgtが所定値AであるときのNOx濃度ずれΔNOx(A)および燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOx(B)の双方が「正」であって、NOx濃度ずれΔNOx(A)よりもNOx濃度ずれΔNOx(B)が小さい場合、第1装置は、上記説明1−3にて述べたように、「燃料噴射量ずれが正である」と判定する。
この場合、第1装置は、例えば、NOx濃度ずれΔNOx(A)とNOx濃度ずれΔNOx(B)との平均値に基づいて上記「補正量」を決定する。そして、第1装置は、燃料噴射量の目標値Qtgtをこの補正量だけ「減少」するように補正する。具体的に述べると、第1装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、燃料噴射装置22の燃料噴射時間と燃料噴射量の目標値Qtgtとの関係(マップ)を、目標値Qtgtが減少されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
このように燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrが補正されることにより、NOx濃度ずれΔNOxの大きさが低減される。
ところで、上記説明1−3にて述べたように、第1装置は、所定の条件が成立する場合、「少なくとも」吸入空気量ずれが負であると判定する(条件1−Aが成立する場合、条件1−Aおよび条件1−Cが成立する場合、ならびに、条件1−Aおよび条件1−Dが成立する場合)。この場合、第1装置は、「吸入空気量ずれが負である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが正である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが負である」か、を区別して判定しない。すなわち、吸入空気量ずれ「のみ」が生じているか、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じているか、は判定されない。
しかし、上記説明1−4にて述べたように、上記いずれの条件が成立する場合であっても、第1装置は「吸入空気量ずれ」を低減するように吸入空気量の測定値Gamsrを補正する。そのため、吸入空気量ずれ「のみ」が生じている場合、この補正によってその吸入空気量ずれが低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、この補正によってその「双方」のうちの吸入空気量ずれが低減される。そして、例えば繰り返しこの補正が行われることによって吸入空気量ずれが十分に低減されれば、それら「双方」のうちの燃料噴射量ずれ「のみ」が残る。燃料噴射量ずれ「のみ」が残れば、第1装置は、燃料噴射量ずれが生じていると判定すると共にその燃料噴射量ずれを低減するように燃料噴射量の目標値Qtgtを補正する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
このように、上記いずれの場合(吸入空気量ずれ「のみ」が生じている場合、および、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合)であっても、第1装置が繰り返し補正を行うことにより、NOx濃度ずれΔNOxが低減される。なお、上記説明から理解されるように、第1装置が「少なくとも吸入空気量ずれが「正」である」と判定する場合であっても、上記同様、第1装置が繰り返し補正を行うことによってNOx濃度ずれΔNOxの大きさが低減される。
なお、第1装置は、「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。さらに、第1装置は、「燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。
以上、説明1−1〜1−4にて述べたように、第1装置は燃料噴射量ずれの状態および吸入空気量ずれの状態を判定すると共に、その判定の結果に応じてNOx濃度ずれΔNOxの大きさを低減するように機関10を制御する。
ところで、上述したように、上記NOx濃度推定モデルにおける指数A、BおよびCは、NOx濃度推定モデルが適用される内燃機関の構成等に応じて定められる。そのため、機関10と異なる構成を有する他の機関に上記NOx濃度推定モデルが適用される場合、他の機関における指数A、BおよびCは、機関10における指数A、BおよびCと異なる場合がある。この場合、機関10における第1の関係R1(Qtgt,ΔNOx)と、他の機関における第1の関係R1(Qtgt,ΔNOx)と、は異なる。しかし、上記説明から明らかなように、上記同様の考え方によって他の機関における燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
<実際の作動>
以下、第1装置の実際の作動について説明する。
第1装置において、CPU81は、図5〜図11にフローチャートによって示した各ルーチンを所定のタイミング毎に実行するようになっている。CPU81は、これらルーチンにおいて、第1燃料過多噴射フラグXQP1、第1燃料過少噴射フラグXQN1、第1吸入空気量過多検出フラグXGAP1、第1吸入空気量過少検出フラグXGAN1、および、第1他異常発生フラグXOTH1を用いる。
第1燃料過多噴射フラグXQP1は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第1燃料過多噴射フラグXQP1は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第1燃料過少噴射フラグXQN1は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第1燃料過少噴射フラグXQN1は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第1吸入空気量過多検出フラグXGAP1は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第1吸入空気量過多検出フラグXGAP1は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第1吸入空気量過少検出フラグXGAN1は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第1吸入空気量過多検出フラグXGAP1は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第1他異常発生フラグXOTH1は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第1他異常発生フラグXOTH1は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値は、バックアップRAM84に格納される。さらに、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。加えて、第1他異常発生フラグXOTH1の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第1初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図5にフローチャートによって示した「第1燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。以下、便宜上、クランク角が圧縮上死点前の所定クランク角θfに一致する圧縮行程中の気筒を、「燃料噴射気筒」とも称呼する。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図5に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図5のステップ500から処理を開始してステップ510に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ520に進み、現時点における第1燃料過多噴射フラグXQP1の値が「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ520にて「No」と判定してステップ530に進む。
CPU81は、ステップ530にて、現時点における第1燃料過少噴射フラグXQN1の値が「1」であるか否かを判定する。現時点における第1燃料過少噴射フラグXQN1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ530にて「No」と判定してステップ540に進む。
CPU81は、ステップ540にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図6にフローチャートによって示した「第1吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図6に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図6のステップ600から処理を開始してステップ610に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ620に進み、現時点における第1吸入空気量過多検出フラグXGAP1の値が「1」であるか否かを判定する。現時点における第1吸入空気量過多検出フラグXGAP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ620にて「No」と判定してステップ630に進む。
CPU81は、ステップ630にて、現時点における第1吸入空気量過少検出フラグXGAN1の値が「1」であるか否かを判定する。現時点における第1吸入空気量過少検出フラグXGAN1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ630にて「No」と判定してステップ695に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図7にフローチャートによって示した「EGR率制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、機関10の運転状態に応じてEGR率の目標値Regrtgtを決定する。さらに、CPU81は、このルーチンにて、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33およびEGR制御弁53を制御する。
具体的に述べると、CPU81は、所定のタイミングにて図7のステップ700から処理を開始してステップ710に進み、「アクセルペダル開度Accpと、機関回転速度NEと、EGR率の目標値Regrtgtと、の関係」をあらかじめ定めたEGR率目標値決定テーブルMapRegrtgt(NE,Accp)に現時点におけるアクセルペダル開度Accpと、機関回転速度NEと、を適用することにより、EGR率の目標値Regrtgtを決定する。このEGR率目標値決定テーブルMapRegrtgt(NE,Accp)において、EGR率の目標値Regrtgtは、エミッション排出量を出来る限り低減する観点における適値となるように、設計されている。
次いで、CPU81は、ステップ720に進み、EGR率の実際値Regractが上記目標値Regrtgtと一致するように、スロットル弁33の開度およびEGR制御弁53の開度を制御する。その後、CPU81は、ステップ795に進んで本ルーチンを一旦終了する。なお、EGR率の実際値Regractは、上記(4)式に示すように、機関回転速度NEおよび過給圧Pimなどに応じて定まる各気筒内に吸入されるガスの総量Gcylと、吸入空気量の測定値Gamsrと、に基づいて算出され得る。
さらに、CPU81は、所定時間が経過する毎に図8および図9に一連のフローチャートによって示した「第1状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、所定の条件が成立しているとき、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとを対応させながら取得する。さらに、CPU81は、このルーチンにより、所定の条件が成立しているとき、取得された燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、上記第1の関係R1(Qtgt,ΔNOx))に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
具体的に述べると、CPU81は、所定のタイミングにて図8のステップ800から処理を開始してステップ802に進み、現時点にて「NOx濃度を取得する条件(NOx濃度取得条件)」が成立するか否かを判定する。より具体的に述べると、CPU81は、ステップ802にて、以下の条件N−1−1〜N−1−5の全てが成立したとき、NOx濃度取得条件が成立すると判定する。換言すると、CPU81は、条件N−1−1〜N−1−5のうちの少なくとも1つが成立しないとき、NOx濃度取得条件が成立しないと判定する。
(条件N−1−1)NOx濃度センサ75の温度が所定の範囲内の値である。
(条件N−1−2)NOx濃度センサ75周辺のガスの圧力が所定の範囲内の値である。
(条件N−1−3)NOx濃度センサ75周辺の酸素濃度が所定の範囲内の値である。
(条件N−1−4)NOx濃度センサ75の出力値が所定の範囲内の値である。
(条件N−1−5)機関回転速度NE、過給圧Pim、EGR率の目標値Regrtgt、および、燃料噴射時期のそれぞれは、所定の固定値である。
条件N−1−1に係る所定の範囲は、NOx濃度センサ75が正常に作動することが可能である温度範囲に対応する。条件N−1−2に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能である圧力範囲に対応する。条件N−1−3に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能である酸素濃度範囲に対応する。条件N−1−4に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能であるNOx濃度の範囲に対応する。
条件N−1−5に挙げられている機関回転速度NE、過給圧Pim、EGR率の目標値Qtgtおよび燃料噴射時期は、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータである。これらパラメータが所定の固定値であれば、燃料噴射量ずれの状態および吸入空気量ずれの状態がより正確に判定せしめられる。
CPU81は、NOx濃度取得条件が「成立していない」とき、ステップ802にて「No」と判定し、接続指標Bを経由して図9のステップ895に直接進んで本ルーチンを一旦終了する。このように、NOx濃度取得条件が「成立していない」とき、NOx濃度の測定値NOxmsrは取得されない。
これに対し、CPU81は、NOx濃度取得条件が「成立している」とき、ステップ802にて「Yes」と判定してステップ804に進む。CPU81は、ステップ804にてNOx濃度センサ75の出力値に基づいてNOx濃度の測定値NOxmsrを取得し、ステップ806に進む。
CPU81は、ステップ806にて、「吸入空気量の測定値Gamsrと、燃料噴射量の目標値Qtgtと、空気過剰率λと、の関係」をあらかじめ定めた空気過剰率算出関数Fnλ(Gamsr,Qtgt)に、現時点における吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを適用することにより、空気過剰率λを算出する(上記(2)式および上記(3)式を参照。)。
次いで、CPU81は、ステップ808に進み、「EGR率の目標値Regrtgtと、空気過剰率λと、吸気酸素濃度Oconと、の関係」をあらかじめ定めた吸気酸素濃度算出関数FnOcon(Regrtgt,λ)に、現時点におけるEGR率の目標値Regrtgtと、空気過剰率λと、を適用することにより、吸気酸素濃度Oconを算出する(上記(1)式を参照。)。
次いで、CPU81は、ステップ810に進み、「燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrと実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、NOx濃度と、の関係」をあらかじめ定めたMapNOxref(Qtgt,Ocon)に、現時点における燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、を適用して得られる値を、NOx参照濃度NOxrefとして取得する。
次いで、CPU81は、ステップ812に進み、下記(6)式にNOx濃度の測定値NOxmsrとNOx参照濃度NOxrefとを適用することにより、NOx濃度ずれΔNOxを取得する。すなわち、ステップ812にて、「NOx参照濃度NOxrefに対する、NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値の、割合」が、NOx濃度ずれΔNOxとして取得される。
ΔNOx=(NOxmsr−NOxref)/NOxref ・・・(6)
さらに、CPU81は、上述したように取得したNOx濃度ずれΔNOxを、燃料噴射量の目標値Qtgtと対応させながら(すなわち、NOx濃度ずれΔNOxと燃料噴射量の目標値Qtgtとを組み合わせたデータを)、ROM82に格納する。
次いで、CPU81は、接続指標Aを経由して図9のステップ814に進み、現時点にて「燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する条件(状態判定条件)」が成立しているか否かを判定する。より具体的に述べると、CPU81は、ステップ814にて、以下の条件S−1が成立したとき、状態判定条件が成立すると判定する。換言すると、CPU81は、条件S−1が成立しないとき、状態判定条件が成立しないと判定する。
(条件S−1)NOx濃度ずれΔNOxと燃料噴射量の目標値Qtgtとを組み合わせたデータであって燃料噴射量の目標値Qtgtが所定の範囲内の値であるデータが、少なくとも2つ取得されている。
上記「所定の範囲」は、上述した第1状態判定方法における「所定範囲(A≦Qtgt≦B)」に相当する。燃料噴射量の目標値Qtgtがこの所定の範囲内の値であるデータが少なくとも2つ取得されていれば、第1状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
CPU81は、状態判定条件が「成立している」とき、ステップ814にて「Yes」と判定し、ステップ816に進む。そして、CPU81は、ステップ816〜ステップ842に示す処理によって燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。これに対し、CPU81は、状態判定条件が「成立していない」とき、ステップ814にて「No」と判定し、ステップ895に直接進んで本ルーチンを一旦終了する。このように、状態判定条件が「成立していない」とき、燃料噴射量ずれの状態および吸入空気量ずれの状態は判定されない。
以下、現時点にて、状態判定条件が「成立している」と仮定すると共に、ステップ816〜ステップ842にて実行される処理について場合を分けてより詳細に説明する。
以下の説明においては、条件S−1に該当するデータとして、燃料噴射量の目標値が「第1の目標値Qtgt1」であるデータ、および、その目標値が「第1の目標値Qtgtよりも大きい第2の目標値Qtgt2」であるデータが採用される。以下、燃料噴射量の目標値が第1の目標値Qtgt1であるときのNOx濃度ずれを「第1NOx濃度ずれΔNOx(Qtgt1)」と、燃料噴射量の目標値が第2の目標値Qtgt2(Qtgt2>Qtgt1)であるときのNOx濃度ずれを「第2NOx濃度ずれΔNOx(Qtgt2)」と、称呼する。なお、第1の目標値Qtgt1および第2の目標値Qtgt2は、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定するために適切な値となるように、上述したNOx濃度推定モデルに基づいて定められる。
(場合1−1)燃料噴射量ずれが「正」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「大きい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」である。
CPU81は、ステップ816にて、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は第2NOx濃度ずれΔNOx(Qtgt2)の値よりも大きいので、CPU81は、ステップ816にて「Yes」と判定してステップ818に進む。
CPU81は、ステップ818にて、第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」であるので、CPU81は、ステップ818にて「Yes」と判定してステップ820に進む。
CPU81は、ステップ820にて、第1燃料過多噴射フラグXQP1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図10にフローチャートによって示した「第1NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1NOx濃度ずれΔNOx(Qtgt1)の値と、第2NOx濃度ずれΔNOx(Qtgt2)の値と、の平均値を取得する。以下、便宜上、この平均値を「第1NOx濃度平均ずれΔNOxave1」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始してステップ1010に進み、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の少なくとも1つが「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定してステップ1020に進む。
CPU81は、ステップ1020にて、下記(7)式に第1NOx濃度ずれΔNOx(Qtgt1)の値および第2NOx濃度ずれΔNOx(Qtgt2)の値を適用することにより、第1NOx濃度平均ずれΔNOxave1を取得する。
ΔNOxave1={ΔNOx(Qtgt1)+ΔNOx(Qtgt2)}/2 ・・・(7)
その後、CPU81は、ステップ1095に進んで本ルーチンを一旦終了する。
なお、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の全てが「0」であれば、CPU81は、ステップ1010にて「No」と判定してステップ1095に進み、本ルーチンを一旦終了する。すなわち、第1NOx濃度平均ずれΔNOxave1は取得されない。
場合1−1の説明に戻ると、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510を経由してステップ520に進む。現時点における第1燃料過多噴射フラグXQP1の値は「1」であるので、CPU81は、ステップ520にて「Yes」と判定し、ステップ550に進む。
CPU81は、ステップ550にて、下記(8)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(8)式において、K1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=K1・|ΔNOxave1| ・・・(8)
次いで、CPU81は、ステップ560に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ570に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ580に進み、第1燃料過多噴射フラグXQP1の値に「0」を格納し、第1燃料過少噴射フラグXQN1の値に「0」を格納する。
次いで、CPU81は、ステップ540に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが正であるとき(すなわち、第1燃料過多噴射フラグXQP1の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが正である場合に実行される処理である。
(場合1−2)少なくとも吸入空気量ずれが「正」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「大きい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「負」である。
よって、この場合、CPU81は、図9のステップ816にて「Yes」と判定してステップ818に進む。さらに、CPU81は、ステップ818にて「No」と判定し、ステップ822に進む。
CPU81は、ステップ822にて、第1吸入空気量過多検出フラグXGAP1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定してステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610を経由してステップ620に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であるので、CPU81は、ステップ620にて「Yes」と判定してステップ640に進む。
CPU81は、ステップ640にて、下記(9)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(9)式において、K3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=K3・|ΔNOxave1| ・・・(9)
次いで、CPU81は、ステップ650に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ660に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ670に進み、第1吸入空気量過多検出フラグXGAP1の値に「0」を格納し、第1吸入空気量過少検出フラグXGAN1の値に「0」を格納する。その後、CPU81は、ステップ695に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが正であるとき(すなわち、第1吸入空気量過多検出フラグXGAP1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが正である場合に実行される処理である。
(場合1−3)少なくとも吸入空気量ずれが「負」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「小さい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」である。
よって、この場合、CPU81は、ステップ816にて「No」と判定してステップ824に進む。CPU81は、ステップ824にて、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも小さいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は第2NOx濃度ずれΔNOx(Qtgt2)の値よりも小さいので、CPU81は、ステップ824にて「Yes」と判定してステップ826に進む。
CPU81は、ステップ826にて、第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」であるので、CPU81は、ステップ826にて「Yes」と判定してステップ828に進む。
CPU81は、ステップ828にて、第1吸入空気量過少検出フラグXGAN1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定し、ステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610を経由してステップ620に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ620にて「No」と判定してステップ630に進む。
現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であるので、CPU81は、ステップ630にて「Yes」と判定してステップ680に進む。
CPU81は、ステップ680にて、下記(10)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(10)式において、K4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=K4・|ΔNOxave1| ・・・(10)
次いで、CPU81は、ステップ650に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ660に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ670に進み、第1吸入空気量過多検出フラグXGAP1の値に「0」を格納し、第1吸入空気量過少検出フラグXGAN1の値に「0」を格納する。その後、CPU81は、ステップ695に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが負であるとき(すなわち、第1吸入空気量過少検出フラグXGAN1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが負である場合に実行される処理である。
(場合1−4)燃料噴射量ずれが「負」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「小さい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「負」である。
よって、この場合、CPU81は、図9のステップ816およびステップ824を経由してステップ826に進み、ステップ826にて「No」と判定してステップ830に進む。
CPU81は、ステップ830にて、第1燃料過少噴射フラグXQN1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1燃料過少噴射フラグXQN1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定し、ステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510を経由してステップ520に進む。現時点における第1燃料過多噴射フラグXQP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ520にて「No」と判定し、ステップ530に進む。
現時点における第1燃料過少噴射フラグXQN1の値は「1」であるので、CPU81は、ステップ530にて「Yes」と判定してステップ590に進む。
CPU81は、ステップ590にて、下記(11)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(11)式において、K2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=K2・|ΔNOxave1| ・・・(11)
次いで、CPU81は、ステップ560に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ570に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ580に進み、第1燃料過多噴射フラグXQP1の値に「0」を格納し、第1燃料過少噴射フラグXQN1の値に「0」を格納する。
次いで、CPU81は、ステップ540に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが負であるとき(すなわち、第1燃料過少噴射フラグXQN1の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが負である場合に実行される処理である。
(場合1−5)吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「ゼロ」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は「ゼロ」であり、かつ、第2NOx濃度ずれΔNOx(Qtgt2)の値は「ゼロ」である。
よって、この場合、CPU81は、ステップ816およびステップ824を経由してステップ832に進む。CPU81は、ステップ832にて、第1NOx濃度ずれΔNOx(Qtgt1)の値がゼロであり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロであるか否かを判定する。この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は「ゼロ」であり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値は「ゼロ」であるので、CPU81は、ステップ832にて「Yes」と判定してステップ834に進む。
次いで、CPU81は、ステップ834〜ステップ840の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ834にて第1燃料過多噴射フラグXQP1の値に「0」を、ステップ836にて第1燃料過少噴射フラグXQN1の値に「0」を、ステップ838にて第1吸入空気量過多検出フラグXGAP1の値に「0」を、ステップ840にて第1吸入空気量過少検出フラグXGAN1の値に「0」を、格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の全ては、上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ1010にて「No」と判定してステップ1095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、現時点における第1燃料過多噴射フラグXQP1の値は「0」であり且つ第1燃料過少噴射フラグXQN1の値は「0」であるので、ステップ510、ステップ520、ステップ530およびステップ540を経由してステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、現時点における第1吸入空気量過多検出フラグXGAP1の値は「0」であり且つ第1吸入空気量過少検出フラグXGAN1の値は「0」であるので、ステップ610、ステップ620およびステップ630を経由してステップ695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが「ゼロ」であり且つ吸入空気量ずれが「ゼロ」であるとき(すなわち、第1燃料過多噴射フラグXQP1の値が「0」であり且つ第1燃料過少噴射フラグXQN1の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである場合に実行される処理である。
(場合1−6)吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」または「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値と「同一」である。さらに、第1NOx濃度ずれΔNOx(Qtgt1)の値はゼロではなく、第2NOx濃度ずれΔNOx(Qtgt2)の値はゼロではない。
よって、この場合、CPU81は、図9のステップ816およびステップ824を経由してステップ832に進み、ステップ832にて「No」と判定してステップ842に進む。
CPU81は、ステップ842にて、第1他異常発生フラグXOTH1の値に「1」を格納する。次いで、CPU81は、ステップ834〜ステップ840を経由してステップ895に進み、本ルーチンを一旦終了する。よって、この場合、第1燃料過多噴射フラグXQP1の値は「0」であり、第1燃料過少噴射フラグXQN1の値は「0」であり、第1吸入空気量過多検出フラグXGAP1の値は「0」であり、第1吸入空気量過少検出フラグXGAN1の値は「0」である。
ここで、CPU81は、図10のステップ1000から処理を開始すると、ステップ1000に続くステップ1010にて「No」と判定し、ステップ1095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510、ステップ520、ステップ530およびステップ540を経由してステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610、ステップ620およびステップ630を経由してステップ695に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じているとき(すなわち、第1他異常発生フラグXOTH1の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合に実行される処理である。
以上、場合1−1〜1−6に場合を分けて説明したように、第1装置は、「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」および「燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxの値」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。さらに、第1装置は、燃料噴射量ずれの状態および吸入空気量ずれの状態に応じて、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。
さらに、CPU81は、所定時間が経過する毎に、図11にフローチャートによって示した「異常通知ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量ずれの度合いが所定の度合いよりも大きいときに「吸入空気量センサ(エアフローメータ)71が異常である」旨を、図示しない表示装置上に警報ランプを点灯することなどによって表示する。さらに、CPU81は、このルーチンにより、燃料噴射量ずれの度合いが所定の度合いよりも大きいときに「燃料噴射装置(インジェクタ)22が異常である」旨を、上記同様に表示する。
具体的に述べると、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第1燃料過多噴射フラグXQP1の値および第1燃料過少噴射フラグXQN1の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図5のステップ580を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第1状態判定ルーチンが実行されたときに、第1燃料過多噴射フラグXQP1の値または第1燃料過少噴射フラグXQN1の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第1状態判定ルーチンが実行されたときに第1燃料過多噴射フラグXQP1の値および第1燃料過少噴射フラグXQN1の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第1装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第1吸入空気量過多検出フラグXGAP1の値および第1吸入空気量過少検出フラグXGAN1の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図6のステップ670を参照。)。上記説明から明らかなように、第1装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第1吸入空気量過多検出フラグXGAP1の値および第1吸入空気量過少検出フラグXGAN1の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第1装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
<装置の作用および効果>
第1装置は、排ガスのNOx濃度の測定値NOxmsrと、機関10の運転状態に基づいて定まるNOx参照濃度NOxrefと、を比較することにより、NOx濃度ずれΔNOxを取得する。さらに、第1装置は、このNOx濃度ずれΔNOxと、燃料噴射量の目標値Qtgtと、の関係(上記第1の関係R1(Qtgt,ΔNOx))に基づき、燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、吸入空気量ずれがゼロ、正および負のいずれであるか、を判定する。すなわち、第1装置は、NOx濃度ずれΔNOxが生じているとき、燃料噴射量の目標値Qtgtと実際値Qactとがどのように異なるかを判定することができる。さらに、第1装置は、NOx濃度ずれΔNOxが生じているとき、吸入空気量の測定値Gamsrと実際値Gaactとがどのように異なるかを判定することができる。
さらに、第1装置は、燃料噴射量ずれが生じているとき、NOx濃度ずれΔNOxの大きさ(第1NOx濃度ずれΔNOx(Qtgt1)および第2NOx濃度ずれΔNOx(Qtgt2)の平均値ΔNOxave)に応じて燃料噴射量の目標値Qtgtを補正する。一方、第1装置は、吸入空気量ずれが生じているとき、NOx濃度ずれΔNOxの大きさΔNOxaveに応じて吸入空気量の測定値Gamsrを補正する。さらに、第1装置は、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、これら補正を繰り返し実行する。これにより、燃料噴射量ずれの大きさおよび吸入空気量の大きさが適切に低減される。その結果、NOx濃度ずれが低減される。
加えて、第1装置は、燃料噴射量ずれを補正する際に用いられる補正量の積算値Qcsumが所定の閾値Qcsumthを超えると、「燃料噴射装置22が異常である」旨を表示装置に表示する。一方、第1装置は、吸入空気量ずれをを補正する際に用いられる補正量の積算値Gacsumが所定の閾値Gacsumthを超えると、「吸入空気量センサ71が異常である」旨を表示装置に表示する。
(第2実施形態)
次に、本発明の第2の実施形態に係る制御装置(以下、「第2装置」とも称呼する。)について説明する。
<装置の概要>
第2装置は、第1装置が適用される機関10と同様の構成を有する機関(図1を参照。以下、便宜上、「機関10」と称呼する。)に適用される。そこで、第2装置が適用される装置の概要についての詳細な説明は、省略される。
<装置の作動の概要>
以下、上述したように構成された第2装置の作動の概要について説明する。
第2装置は、第1装置における燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、第1の関係R1(Qtgt,ΔNOx))に代えて「吸気酸素濃度Oconと、NOx濃度ずれΔNOxと、の関係」に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する点においてのみ、第1装置と異なる。
具体的に述べると、第2装置は、第1装置と同様の手法にて「吸気酸素濃度Ocon」および「NOx濃度ずれΔNOx」を取得する。そして、第2装置は、機関10が運転されている期間中、吸気酸素濃度Oconと、NOx濃度ずれΔNOxと、を対応させながら取得し続ける。さらに、第2装置は、取得されたこれら値に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
第2装置は、上記状態判定の結果に応じて、燃料噴射量ずれの大きさが小さくなるように燃料噴射量の目標値Qtgtを所定の補正量だけ補正する。さらに、第2装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさが小さくなるように吸入空気量の測定値Gamsrを所定の補正量だけ補正する。加えて、第2装置は、これら補正を、燃料噴射量ずれがゼロとなり且つ吸入空気量ずれがゼロとなるまで繰り返す。
第2装置は、燃料噴射量の目標値Qtgtの補正量の積算値が所定の閾値よりも大きくなると、「燃料噴射装置22が異常である」ことを表示装置など(図1において図示省略。)に表示する。さらに、第2装置は、吸入空気量の測定値Gamsrの補正量の積算値が所定の閾値よりも大きくなると、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第2装置の作動の概要である。
<内燃機関の制御方法>
次いで、第2装置の具体的な作動についての説明を行う前に、第2装置に採用されている機関10の制御方法について述べる。第2装置は、第1装置と同じNOx濃度推定モデルを採用している。そこで、NOx濃度推定モデルについての説明(上記説明1−1を参照。)、および、吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明(上記説明1−2を参照。)は、省略される。以下、第2装置に採用されている制御方法につき、下記説明2−1〜2−2の順序に従って説明する。
(説明2−1)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
(説明2−2)状態判定の結果に応じた補正についての説明
(説明2−1)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
以下、上記NOx濃度推定モデルを用いて、下記条件2−A〜2−Dのうちの「一または複数」が成立する場合における「吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係」について説明する。
(条件2−A)吸入空気量の実際値Gaactが測定値Gamsrよりも小さい。
(条件2−B)吸入空気量の実際値Gaactが測定値Gamsrよりも大きい。
(条件2−C)燃料噴射量の実際値Qactが目標値Qtgtよりも小さい。
(条件2−D)燃料噴射量の実際値Qactが目標値Qtgtよりも大きい。
以下、条件2−Aに示す状態を「吸入空気量ずれが負である」と、条件2−Bに示す状態を「吸入空気量ずれが正である」と、条件2−Cに示す状態を「燃料噴射量ずれが負である」と、条件2−Dに示す状態を「燃料噴射量ずれが正である」と、称呼する。さらに、以下、便宜上、吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係を「第2の関係R2(Ocon,ΔNOx)」と称呼する。
さらに、この説明2−1において、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータ(例えば、気筒内に吸入されるガスの総量Gcylに影響を与える機関回転速度NEおよび過給圧Pim、EGR率の目標値Regrtgt、ならびに、気筒内に燃料を噴射する時期である燃料噴射時期など)は、所定の値に固定されていると仮定する。すなわち、吸入空気量ずれおよび燃料噴射量ずれ「のみ」がNOx濃度ずれΔNOxに影響を与えると仮定する。
まず、上記条件2−A〜2−Dのうちの「1つ」が成立する場合における第2の関係R2(Ocon,ΔNOx)について説明する。
図12(A)は、条件2−A〜条件2−Dのうちの1つが成立する場合における第2の関係R2(Ocon,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。NOx濃度推定モデルにおける指数A、BおよびCは(上記(5)式を参照。)、「機関10と同一の構成を有する機関であって、燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値NOxmsrと実際値Gaactとが一致していることが確認されている機関」を用いた実験によって定められた。
図12(A)において、Gamsr(−)は、条件2−Aが成立する場合(吸入空気量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)は、条件2−Bが成立する場合(吸入空気量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Qact(−)は、条件2−Cが成立する場合における(燃料噴射量ずれが負である場合)の第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Qact(+)は、条件2−Dが成立する場合(燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。
まず、「条件2−Aのみ」が成立する場合、曲線Gamsr(−)に示すように、少なくとも吸気酸素濃度Oconが所定値Cから所定値Dである範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件2−Bのみ」が成立する場合、曲線Gamsr(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
加えて、「条件2−Cのみ」が成立する場合、曲線Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件2−Dのみ」が成立する場合、曲線Qact(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
このように、条件2−Aが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Bが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Cが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Dが成立する場合における第2の関係R2(Ocon,ΔNOx)と、は異なる。
所定値Cおよび所定値Dのそれぞれは、上述したように条件2−A〜2−Dのうちの一の条件が成立した場合に得られる第2の関係R2(Ocon,ΔNOx)がその一の条件とは異なる他の条件が成立した場合に得られる第2の関係R2(Ocon,ΔNOx)と異なることとなる適値に設定されればよい。
以上、条件2−A〜2−Dのうちの「1つ」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明した。
次いで、上記条件2−A〜2−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明する。
図12(B)は、条件2−A〜2−Dのうちの複数が成立する場合における第2の関係R2(Ocon,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。
図12(B)において、Gamsr(−)+Qact(+)は、条件2−Aおよび条件2−Dが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(−)+Qact(−)は、条件2−Aおよび条件2−Cが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(+)は、条件2−Bおよび条件2−Dが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(−)は、条件2−Bおよび条件2−Cが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。
なお、条件2−A(吸入空気量ずれが負である状態)と、条件2−B(吸入空気量ずれが正である状態)と、は同時に成立し得ない。さらに、条件2−C(燃料噴射量ずれが負である状態)と、条件2−D(燃料噴射量ずれが正である状態)と、は同時に成立し得ない。よって、図12(B)に示す4つの組み合わせが、成立し得る組み合わせの全てである。
まず、「条件2−Aおよび条件2−D」が成立する場合、曲線Gamsr(−)+Qact(+)に示すように、少なくとも吸気酸素濃度Oconが所定値Cから所定値Dである範囲内(C≦Ocon≦D)において吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件2−Aおよび条件2−C」が成立する場合、曲線Gamsr(−)+Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
加えて、「条件2−Bおよび条件2−D」が成立する場合、曲線Gamsr(+)+Qact(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件2−Bおよび条件2−C」が成立する場合、曲線Gamsr(+)+Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
このように、条件2−Aおよび条件2−Dが成立する場合の第2の関係R2(Ocon,ΔNOx)と、条件2−Aおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。さらに、条件2−Bおよび条件2−Dが成立する場合の第2の関係R2(Ocon,ΔNOx)と、条件2−Bおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。加えて、条件2−Aおよび条件2−D、あるいは、条件2−Aおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)は、条件2−Bおよび条件2−D、あるいは、条件2−Bおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)と、異なる。
以上、条件2−A〜2−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明した。
なお、「条件2−A〜2−Dのいずれも成立しない」場合(すなわち、吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合)、実際のNOx濃度NOxconはNOx濃度NOxconと一致する。よって、この場合、NOx濃度ずれΔNOxは、吸気酸素濃度Oconにかからわずゼロである。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「ゼロ」である。
ところで、上述したように、機関10を構成する部材のうち「吸入空気量および燃料噴射量と関連しない部材」が正常に作動しない場合においても、NOx濃度ずれは生じ得る。例えば、NOx濃度センサ75が正常に作動しなし場合(実際のNOx濃度とは異なるNOx濃度を表す出力値を出力する場合)、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロであっても、NOx濃度ずれが生じる。以下、このような状態を「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と称呼する。
この場合、図13の曲線Other(+)または曲線Other(−)に示すように、吸気酸素濃度OconにかかわらずNOx濃度ずれΔNOxの大きさは変化しない。すなわち、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」または「負」である。
このように、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件2−Aおよび条件2−Bを参照。)、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件2−Cおよび条件2−Dを参照。)、により、第2の関係R2(Ocon,ΔNOx)は異なる。換言すると、第2の関係R2(Ocon,ΔNOx)に基づき、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、を判定することができる。さらに、第2の関係R2(Ocon,ΔNOx)に基づき、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれ」が生じているか否か、を判定することができる。
具体的に述べると、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図12(A)の曲線Gamsr(−)、ならびに、図12(B)の曲線Gamsr(−)+Qact(+)および曲線Gamsr(−)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが負である」と判定することができる。
さらに、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図12(A)の曲線Gamsr(+)、ならびに、図12(B)の曲線Gamsr(+)+Qact(+)および曲線Gamsr(+)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが正である」と判定することができる。
加えて、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図12(A)の曲線Qact(+)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが正である」と判定することができる。
さらに加えて、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図12(A)の曲線Qact(−)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが負である」と判定することができる。
なお、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「ゼロ」である関係」である場合、「吸入空気量ずれがゼロであり、かつ、燃料噴射量ずれがゼロである」と判定することができる。
さらに、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」または「負」である関係」である場合、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定することができる。
このように、第2装置は、第2の関係R2(Ocon,ΔNOx)に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。以下、上述した燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する方法を、「第2状態判定方法」とも称呼する。
(説明2−2)状態判定の結果に応じた補正についての説明
第2装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさを低減するように吸入空気量の測定値Gamsrを補正し、燃料噴射量ずれの大きさを低減するように燃料噴射量の目標値Qtgtを補正する。
具体的に述べると、第2装置は、吸入空気量ずれが「正」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「減少」するように補正する。一方、第2装置は、吸入空気量ずれが「負」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「増大」するように補正する。これら補正にて用いられる「補正量」はNOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図14(A)に示すように、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOx(C)および吸気酸素濃度Oconが所定値DであるときのNOx濃度ずれΔNOx(D)の双方が「正」であって、NOx濃度ずれΔNOx(C)よりもNOx濃度ずれΔNOx(D)が小さい場合、第2装置は、上記説明2−1にて述べたように、「少なくとも吸入空気量ずれが負である」と判定する。
この場合、第2装置は、例えば、NOx濃度ずれΔNOx(C)およびNOx濃度ずれΔNOx(D)の平均値に基づいて上記「補正量」を決定する。そして、第2装置は、吸入空気量の測定値Gamsrをこの補正量だけ「増大」するように補正する。具体的に述べると、第2装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、吸入空気量センサ71の出力値(出力電圧)と吸入空気量の測定値Gamsrとの関係(マップ)を、測定値Gamsrが増大されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
さらに、第2装置は、燃料噴射量ずれが「正」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「減少」するように補正する。一方、第2装置は、燃料噴射量ずれが「負」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「増大」するように補正する。これら補正において用いられる「補正量」は、NOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図14(B)に示すように、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOx(C)および吸気酸素濃度Oconが所定値DであるときのNOx濃度ずれΔNOx(D)の双方が「正」であって、NOx濃度ずれΔNOx(C)よりもNOx濃度ずれΔNOx(D)が大きい場合、第2装置は、上記説明2−1にて述べたように、「燃料噴射量ずれが正である」と判定する。
この場合、第2装置は、例えば、NOx濃度ずれΔNOx(C)とNOx濃度ずれΔNOx(D)との平均値に基づいて上記「補正量」を決定する。そして、第2装置は、燃料噴射量の目標値Qtgtをこの補正量だけ「減少」するように補正する。具体的に述べると、第2装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、燃料噴射装置22の燃料噴射時間と燃料噴射量の目標値Qtgtとの関係(マップ)を、目標値Qtgtが減少されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
このように燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrが補正されることにより、NOx濃度ずれΔNOxの大きさが低減される。
ところで、上記説明2−1にて述べたように、第2装置は、所定の条件が成立する場合、「少なくとも」吸入空気量ずれが負であると判定する(条件2−Aが成立する場合、条件2−Aおよび条件2−Cが成立する場合、ならびに、条件2−Aおよび条件2−Dが成立する場合)。この場合、第2装置は、「吸入空気量ずれが負である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが正である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが負である」か、を区別して判定しない。すなわち、吸入空気量ずれ「のみ」が生じているか、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じているか、は判定されない。
しかし、上記説明2−2にて述べたように、上記いずれの条件が成立する場合であっても、第2装置は「吸入空気量ずれ」を低減するように吸入空気量の測定値Gamsrを補正する。そのため、吸入空気量ずれ「のみ」が生じている場合、この補正によってその吸入空気量ずれが低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、この補正によってその「双方」のうちの吸入空気量ずれが低減される。そして、例えば繰り返しこの補正が行われることによって吸入空気量ずれが十分に低減されれば、それら「双方」のうちの燃料噴射量ずれ「のみ」が残る。燃料噴射量ずれ「のみ」が残れば、第2装置は、燃料噴射量ずれが生じていると判定すると共にその燃料噴射量ずれを低減するように燃料噴射量の目標値Qtgtを補正する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
このように、上記いずれの場合(吸入空気量ずれ「のみ」が生じている場合、および、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合)であっても、第2装置が繰り返し補正を行うことにより、NOx濃度ずれΔNOxが低減される。なお、上記説明から理解されるように、第2装置が「少なくとも吸入空気量ずれが「正」である」と判定する場合であっても、上記同様、第2装置が繰り返し補正を行うことによってNOx濃度ずれΔNOxの大きさが低減される。
なお、第2装置は、「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。さらに、第2装置は、「燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。
以上、説明2−1〜2−2にて述べたように、第2装置は燃料噴射量ずれの状態および吸入空気量ずれの状態を判定すると共に、その判定の結果に応じてNOx濃度ずれΔNOxの大きさを低減するように機関10を制御する。
ところで、上記第2状態判定方法において採用されている吸気酸素濃度Oconは、具体的には「上記(1)式にて算出される吸気酸素濃度の計算値(見掛け上の吸気酸素濃度)」である。そのため、燃料噴射量ずれおよび吸入空気量ずれの少なくとも一方が生じている場合、この見掛け上の吸気酸素濃度Oconと、吸気酸素濃度の実際値Oconactと、は一致しない(上記説明(1−2)を参照。)。よって、この場合、「判定の指標とされる第2の関係R2(Ocon,ΔNOx)そのもの」に何らかのずれが生じている。そこで、第2の関係R2(Ocon,ΔNOx)における見掛け上の吸気酸素濃度Oconを「吸気酸素濃度の実際値Oconact」に置き換えると、上記状態判定をより適切に行うことができるとも考えられる。
しかし、上述したように、第2の関係R2(Ocon,ΔNOx)における「NOx濃度ずれΔNOx」は、NOx濃度の測定値NOxmsrと、機関10の運転状態に応じて定まるNOx参照濃度NOxrefと、に基づいて定められる。そのため、図15に示すように、判定の指標として時点tにおける見掛け上の吸気酸素濃度Ocon(t)を用いた場合におけるNOx濃度ずれΔNOx(Ocon)と、判定の指標としてその時点tにおける吸気酸素濃度の実際値Oconact(t)を用いた場合におけるNOx濃度ずれΔNOx(Oconact)と、は一致する。よって、見掛け上の吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係(図中の実線)と、吸気酸素濃度の実際値OconactとNOx濃度ずれΔNOxとの関係(図中の破線)とは、単に図中横軸方向の位置が異なるに過ぎない。したがって、上記説明2−1〜2−2から理解されるように、所定の範囲(C≦Ocon≦D)が適切に選択されていれば、判定の指標として見掛け上の吸気酸素濃度Oconを用いた場合における上記状態判定の結果と、同指標として吸気酸素濃度の実際値Oconactを用いた場合における上記状態判定の結果と、は一致する。
このように、判定の指標として見掛け上の吸気酸素濃度Oconを用いても、同指標として吸気酸素濃度の実際値Oconactを用いても、所定の範囲(C≦Ocon≦D)が適切に選択されていれば、状態判定を適切に行うことができる。そこで、第2装置においては、判定の指標として見掛け上の吸気酸素濃度Oconが用いられている。
一方、上述したように、NOx濃度推定モデルにおける指数A、BおよびCは、NOx濃度推定モデルが適用される内燃機関の構成等に応じて定められる。そのため、機関10と異なる構成を有する他の機関にNOx濃度推定モデルが適用される場合、他の機関における指数A、BおよびCは、機関10における指数A、BおよびCと異なる場合がある。この場合、機関10における第2の関係R2(Ocon,ΔNOx)と、他の機関における第2の関係R2(Ocon,ΔNOx)と、は異なる。しかし、上記説明から明らかなように、上記同様の考え方によって他の機関における燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
<実際の作動>
以下、第2装置の実際の作動について説明する。
第2装置は、第1装置において図5および図6にフローチャートによって示した処理に代えて「図16および図17にフローチャートによって示した処理」を実行する点、および、第1装置において図8〜図10にフローチャートによって示した処理に代えて「図18〜図20にフローチャートによって示した処理」を実行する点においてのみ、第1装置と相違している。そこで、以下、これらの相違点を中心として説明する。
第2装置において、CPU81は、図7、図11、および、図16〜図20にフローチャートによって示した各ルーチンを所定のタイミング毎に実行するようになっている。CPU81は、これらルーチンにおいて、第2燃料過多噴射フラグXQP2、第2燃料過少噴射フラグXQN2、第2吸入空気量過多検出フラグXGAP2、第2吸入空気量過少検出フラグXGAN2、および、第2他異常発生フラグXOTH2を用いる。
第2燃料過多噴射フラグXQP2は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第2燃料過多噴射フラグXQP2は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第2燃料過少噴射フラグXQN2は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第2燃料過少噴射フラグXQN2は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第2吸入空気量過多検出フラグXGAP2は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第2吸入空気量過多検出フラグXGAP2は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第2吸入空気量過少検出フラグXGAN2は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第2吸入空気量過多検出フラグXGAP2は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第2他異常発生フラグXOTH2は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第2他異常発生フラグXOTH2は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値は、バックアップRAM84に格納される。さらに、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。加えて、第2他異常発生フラグXOTH2の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第2初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図16にフローチャートによって示した「第2燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図16に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始してステップ1610に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ1620に進み、現時点における第2燃料過多噴射フラグXQP2の値が「1」であるか否かを判定する。現時点における第2燃料過多噴射フラグXQP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1620にて「No」と判定してステップ1630に進む。
CPU81は、ステップ1630にて、現時点における第2燃料過少噴射フラグXQN2の値が「1」であるか否かを判定する。現時点における第2燃料過少噴射フラグXQN2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1630にて「No」と判定してステップ1640に進む。
CPU81は、ステップ1640にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図17にフローチャートによって示した「第2吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図17に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始してステップ1710に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ1720に進み、現時点における第2吸入空気量過多検出フラグXGAP2の値が「1」であるか否かを判定する。現時点における第2吸入空気量過多検出フラグXGAP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1720にて「No」と判定してステップ1730に進む。
CPU81は、ステップ1730にて、現時点における第2吸入空気量過少検出フラグXGAN2の値が「1」であるか否かを判定する。現時点における第2吸入空気量過少検出フラグXGAN2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1730にて「No」と判定してステップ1795に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図7のステップ700から処理を開始し、ステップ710およびステップ720を経由してステップ795に進み、本ルーチンを一旦終了する。これにより、EGR率の目標値Regrtgtが決定されると共に、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33の開度およびEGR制御弁53の開度が制御される。
さらに、CPU81は、所定時間が経過する毎に図18および図19に一連のフローチャートによって示した「第2状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、所定の条件が成立しているとき、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとを対応させながら取得する。さらに、CPU81は、このルーチンにより、所定の条件が成立しているとき、取得された燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、上記第2の関係R2(Ocon,ΔNOx))に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
具体的に述べると、CPU81は、所定のタイミングにて図18のステップ1800から処理を開始してステップ1802に進み、現時点にて「NOx濃度を取得する条件(NOx濃度取得条件)」が成立するか否かを判定する。このステップ1802におけるNOx濃度取得条件は、第1装置におけるNOx濃度取得条件と同一である(図8のステップ802を参照。)。よって、NOx濃度取得条件についての詳細な説明は、省略される。
CPU81は、NOx濃度取得条件が「成立していない」とき、ステップ1802にて「No」と判定し、接続指標Bを経由して図19のステップ1895に直接進んで本ルーチンを一旦終了する。このように、NOx濃度取得条件が「成立していない」とき、NOx濃度の測定値NOxmsrは取得されない。
これに対し、CPU81は、NOx濃度取得条件が「成立している」とき、ステップ1802にて「Yes」と判定してステップ1804に進む。CPU81は、ステップ1804にてNOx濃度センサ75の出力値に基づいてNOx濃度の測定値NOxmsrを取得し、ステップ1806に進む。
CPU81は、ステップ1806にて、「吸入空気量の測定値Gamsrと、燃料噴射量の目標値Qtgtと、空気過剰率λと、の関係」をあらかじめ定めた空気過剰率算出関数Fnλ(Gamsr,Qtgt)に、現時点における吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを適用することにより、空気過剰率λを算出する(上記(2)式および上記(3)式を参照。)。
次いで、CPU81は、ステップ1808に進み、「EGR率の目標値Regrtgtと、空気過剰率λと、吸気酸素濃度Oconと、の関係」をあらかじめ定めた吸気酸素濃度算出関数FnOcon(Regrtgt,λ)に、現時点におけるEGR率の目標値Regrtgtと、空気過剰率λと、を適用することにより、吸気酸素濃度Oconを算出する(上記(1)式を参照。)。
次いで、CPU81は、ステップ1810に進み、「燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrと実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、NOx濃度と、の関係」をあらかじめ定めたMapNOxref(Qtgt,Ocon)に、現時点における燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、を適用して得られる値を、NOx参照濃度NOxrefとして取得する。
次いで、CPU81は、ステップ1812に進み、第1装置と同一の上記(6)式にNOx濃度の測定値NOxmsrとNOx参照濃度NOxrefとを適用することにより、NOx濃度ずれΔNOxを取得する(図8のステップ812を参照。)。すなわち、ステップ1812にて、「NOx参照濃度NOxrefに対する、NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値の、割合」が、NOx濃度ずれΔNOxとして取得される。
さらに、CPU81は、上述したように取得したNOx濃度ずれΔNOxを、吸気酸素濃度Oconと対応させながら(すなわち、NOx濃度ずれΔNOxと吸気酸素濃度Oconとを組み合わせたデータを)、ROM82に格納する。
次いで、CPU81は、接続指標Aを経由して図19のステップ1814に進み、現時点にて「燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する条件(状態判定条件)」が成立しているか否かを判定する。より具体的に述べると、CPU81は、ステップ1814にて、以下の条件S−2が成立したとき、状態判定条件が成立すると判定する。換言すると、CPU81は、条件S−2が成立しないとき、状態判定条件が成立しないと判定する。
(条件S−2)NOx濃度ずれΔNOxと吸気酸素濃度Oconとを組み合わせたデータであって吸気酸素濃度Oconが所定の範囲内の値であるデータが、少なくとも2つ取得されている。
上記「所定の範囲」は、上述した第2状態判定方法における「所定範囲(C≦Ocon≦D)」に相当する。吸気酸素濃度Oconがこの所定の範囲内の値であるデータが少なくとも2つ取得されていれば、第2状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
CPU81は、状態判定条件が「成立している」とき、ステップ1814にて「Yes」と判定し、ステップ1816に進む。そして、CPU81は、ステップ1816〜ステップ1842に示す処理によって燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。これに対し、CPU81は、状態判定条件が「成立していない」とき、ステップ1814にて「No」と判定し、ステップ1895に直接進んで本ルーチンを一旦終了する。このように、状態判定条件が「成立していない」とき、燃料噴射量ずれの状態および吸入空気量ずれの状態は判定されない。
以下、現時点にて、状態判定条件が「成立している」と仮定すると共に、ステップ1816〜ステップ1842にて実行される処理について場合を分けてより詳細に説明する。
以下の説明においては、条件S−2に該当するデータとして、吸気酸素濃度が「第1の吸気酸素濃度Ocon1」であるデータ、および、吸気酸素濃度が「第1の吸気酸素濃度Ocon1よりも大きい第2の吸気酸素濃度Ocon2」であるデータが採用される。以下、吸気酸素濃度が第1の吸気酸素濃度Ocon1であるときのNOx濃度ずれを「第1NOx濃度ずれΔNOx(Ocon1)」と、吸気酸素濃度が第2の吸気酸素濃度(Ocon2>Ocon1)であるときのNOx濃度ずれを「第2NOx濃度ずれΔNOx(Ocon2)」と、称呼する。なお、第1の吸気酸素濃度Ocon1および第2の吸気酸素濃度Ocon2は、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定するために適切な値となるように、上述したNOx濃度推定モデルに基づいて定められる。
(場合2−1)少なくとも吸入空気量ずれが「負」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値よりも「大きい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」である。
CPU81は、ステップ1816にて、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は第2NOx濃度ずれΔNOx(Ocon2)の値よりも大きいので、CPU81は、ステップ1816にて「Yes」と判定してステップ1818に進む。
CPU81は、ステップ1818にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」であるので、CPU81は、ステップ1818にて「Yes」と判定してステップ1820に進む。
CPU81は、ステップ1820にて、第2吸入空気量過少検出フラグXGAN2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図20にフローチャートによって示した「第2NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1NOx濃度ずれΔNOx(Ocon1)の値と、第2NOx濃度ずれΔNOx(Ocon2)の値と、の平均値を取得する。以下、便宜上、この平均値を「第2NOx濃度平均ずれΔNOxave2」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始してステップ2010に進み、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の少なくとも1つが「1」であるか否かを判定する。現時点における第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定してステップ2020に進む。
CPU81は、ステップ2020にて、下記(12)式に第1NOx濃度ずれΔNOx(Ocon1)の値および第2NOx濃度ずれΔNOx(Ocon2)の値を適用することにより、第2NOx濃度平均ずれΔNOxave2を取得する。
ΔNOxave2={ΔNOx(Ocon1)+ΔNOx(Ocon2)}/2 ・・・(12)
その後、CPU81は、ステップ2095に進んで本ルーチンを一旦終了する。
なお、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の全てが「0」であれば、CPU81は、ステップ2010にて「No」と判定してステップ2095に進み、本ルーチンを一旦終了する。すなわち、第2NOx濃度平均ずれΔNOxave2は取得されない。
場合2−1の説明に戻ると、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710を経由してステップ1720に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1720にて「No」と判定してステップ1730に進む。
現時点における第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ1730にて「Yes」と判定してステップ1740に進む。
CPU81は、ステップ1740にて、下記(13)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(13)式において、L4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=L4・|ΔNOxave2| ・・・(13)
次いで、CPU81は、ステップ1750に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ1760に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ1770に進み、第2吸入空気量過多検出フラグXGAP2の値に「0」を格納し、第2吸入空気量過少検出フラグXGAN2の値に「0」を格納する。その後、CPU81は、ステップ1795に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが負であるとき(すなわち、第2吸入空気量過少検出フラグXGAN2の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが負である場合に実行される処理である。
(場合2−2)燃料噴射量ずれが「負」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値よりも「大きい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「負」である。
よって、この場合、CPU81は、図19のステップ1816にて「Yes」と判定してステップ1818に進む。さらに、CPU81は、ステップ1818にて「No」と判定し、ステップ1822に進む。
CPU81は、ステップ1822にて、第2燃料過少噴射フラグXQN2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定してステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610を経由してステップ1620に進む。現時点における第2燃料過多噴射フラグXQP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1620にて「No」と判定し、ステップ1630に進む。
現時点における第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ1630にて「Yes」と判定してステップ1650に進む。
CPU81は、ステップ1650にて、下記(14)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(14)式において、L2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=L2・|ΔNOxave2| ・・・(14)
次いで、CPU81は、ステップ1660に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ1670に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1680に進み、第2燃料過多噴射フラグXQP2の値に「0」を格納し、第2燃料過少噴射フラグXQN2の値に「0」を格納する。
次いで、CPU81は、ステップ1640に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが負であるとき(すなわち、第2燃料過少噴射フラグXQN2の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが負である場合に実行される処理である。
(場合2−3)燃料噴射量ずれが「正」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「小さい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」である。
よって、この場合、CPU81は、ステップ1816にて「No」と判定してステップ1824に進む。CPU81は、ステップ1824にて、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも小さいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は第2NOx濃度ずれΔNOx(Ocon2)の値よりも小さいので、CPU81は、ステップ1824にて「Yes」と判定してステップ1826に進む。
CPU81は、ステップ1826にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」であるので、CPU81は、ステップ1826にて「Yes」と判定してステップ1828に進む。
CPU81は、ステップ1828にて、第2燃料過多噴射フラグXQP2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定し、ステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610を経由してステップ1620に進む。現時点における第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ1620にて「Yes」と判定し、ステップ1690に進む。
CPU81は、ステップ1690にて、下記(15)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(15)式において、L1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=L1・|ΔNOxave2| ・・・(15)
次いで、CPU81は、ステップ1660に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ1670に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1680に進み、第2燃料過多噴射フラグXQP2の値に「0」を格納し、第2燃料過少噴射フラグXQN2の値に「0」を格納する。
次いで、CPU81は、ステップ1640に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが正であるとき(すなわち、第2燃料過多噴射フラグXQP2の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが正である場合に実行される処理である。
(場合2−4)少なくとも吸入空気量ずれが「正」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「小さい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「負」である。
よって、この場合、CPU81は、図19のステップ1816およびステップ1824を経由してステップ1826に進み、ステップ1826にて「No」と判定してステップ1830に進む。
CPU81は、ステップ1830にて、第2吸入空気量過多検出フラグXGAP2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定し、ステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710を経由してステップ1720に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ1720にて「Yes」と判定してステップ1780に進む。
CPU81は、ステップ1780にて、下記(16)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(16)式において、L3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=L3・|ΔNOxave2| ・・・(16)
次いで、CPU81は、ステップ1750に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ1760に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1770に進み、第2吸入空気量過多検出フラグXGAP2の値に「0」を格納し、第2吸入空気量過少検出フラグXGAN2の値に「0」を格納する。その後、CPU81は、ステップ1795に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれが正であるとき(すなわち、第2吸入空気量過多検出フラグXGAP2の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが正である場合に実行される処理である。
(場合2−5)吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「ゼロ」である。すなわち、第2NOx濃度ずれΔNOx(Ocon1)の値は「ゼロ」であり、かつ、第2NOx濃度ずれΔNOx(Ocon2)の値は「ゼロ」である。
よって、この場合、CPU81は、ステップ1816およびステップ1824を経由してステップ1832に進む。CPU81は、ステップ1832にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロであり且つ第2NOx濃度ずれΔNOx(Ocon2)の値がゼロであるか否かを判定する。この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「ゼロ」であり且つ第2NOx濃度ずれΔNOx(Ocon2)の値は「ゼロ」であるので、CPU81は、ステップ1832にて「Yes」と判定してステップ1834に進む。
次いで、CPU81は、ステップ1834〜ステップ1840の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ1834にて第2燃料過多噴射フラグXQP2の値に「0」を、ステップ1836にて第2燃料過少噴射フラグXQN2の値に「0」を、ステップ1838にて第2吸入空気量過多検出フラグXGAP2の値に「0」を、ステップ1840にて第2吸入空気量過少検出フラグXGAN2の値に「0」を、格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の全ては、上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ2010にて「No」と判定してステップ2095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、現時点における第2燃料過多噴射フラグXQP2の値は「0」であり且つ第2燃料過少噴射フラグXQN2の値は「0」であるので、ステップ1610、ステップ1620、ステップ1630およびステップ1640を経由してステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、現時点における第2吸入空気量過多検出フラグXGAP2の値は「0」であり且つ第2吸入空気量過少検出フラグXGAN2の値は「0」であるので、ステップ1710、ステップ1720およびステップ1730を経由してステップ1795に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが「ゼロ」であり且つ吸入空気量ずれが「ゼロ」であるとき(すなわち、第2燃料過多噴射フラグXQP2の値が「0」であり且つ第2燃料過少噴射フラグXQN2の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである場合に実行される処理である。
(場合2−6)吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」または「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値と「同一」である。さらに、第1NOx濃度ずれΔNOx(Ocon1)の値はゼロではなく、第2NOx濃度ずれΔNOx(Ocon2)の値はゼロではない。
よって、この場合、CPU81は、図19のステップ1816およびステップ1824を経由してステップ1832に進み、ステップ1832にて「No」と判定してステップ1842に進む。
CPU81は、ステップ1842にて、第2他異常発生フラグXOTH2の値に「1」を格納する。次いで、CPU81は、ステップ1834〜ステップ1840を経由してステップ1895に進み、本ルーチンを一旦終了する。よって、この場合、第2燃料過多噴射フラグXQP2の値は「0」であり、第2燃料過少噴射フラグXQN2の値は「0」であり、第2吸入空気量過多検出フラグXGAP2の値は「0」であり、第2吸入空気量過少検出フラグXGAN2の値は「0」である。
ここで、CPU81は、図20のステップ2000から処理を開始すると、ステップ2000に続くステップ2010にて「No」と判定し、ステップ2095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610、ステップ1620、ステップ1630およびステップ1640を経由してステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710、ステップ1720およびステップ1730を経由してステップ1795に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じているとき(すなわち、第2他異常発生フラグXOTH2の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合に実行される処理である。
以上、場合2−1〜2−6に場合を分けて説明したように、第2装置は、「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」および「吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxの値」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。さらに、第2装置は、燃料噴射量ずれの状態および吸入空気量ずれの状態に応じて、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。
さらに、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第2燃料過多噴射フラグXQP2の値および第2燃料過少噴射フラグXQN2の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図16のステップ1680を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第2状態判定ルーチンが実行されたときに、第2燃料過多噴射フラグXQP2の値または第2燃料過少噴射フラグXQN2の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第2状態判定ルーチンが実行されたときに第2燃料過多噴射フラグXQP2の値および第2燃料過少噴射フラグXQN2の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第2装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第2吸入空気量過多検出フラグXGAP2の値および第2吸入空気量過少検出フラグXGAN2の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図17のステップ1770を参照。)。上記説明から明らかなように、第2装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第2吸入空気量過多検出フラグXGAP2の値および第2吸入空気量過少検出フラグXGAN2の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第2装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
<装置の作用および効果>
第2装置は、排ガスのNOx濃度の測定値NOxmsrと、機関10の運転状態に基づいて定まるNOx参照濃度NOxrefと、を比較することにより、NOx濃度ずれΔNOxを取得する。さらに、第2装置は、このNOx濃度ずれΔNOxと、吸気酸素濃度Oconと、の関係(上記第2の関係R2(Ocon,ΔNOx))に基づき、燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、吸入空気量ずれがゼロ、正および負のいずれであるか、を判定する。すなわち、第2装置は、NOx濃度ずれΔNOxが生じているとき、燃料噴射量の目標値Qtgtと実際値Qactとがどのように異なるかを判定することができる。さらに、第2装置は、NOx濃度ずれΔNOxが生じているとき、吸入空気量の測定値Gamsrと実際値Gaactとがどのように異なるかを判定することができる。
さらに、第2装置は、燃料噴射量ずれが生じているとき、NOx濃度ずれΔNOxの大きさ(第1NOx濃度ずれΔNOx(Ocon1)および第2NOx濃度ずれΔNOx(Ocon2)の平均値ΔNOxave)に応じて燃料噴射量の目標値Qtgtを補正する。一方、第2装置は、吸入空気量ずれが生じているとき、NOx濃度ずれΔNOxの大きさΔNOxaveに応じて吸入空気量の測定値Gamsrを補正する。さらに、第2装置は、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、これら補正を繰り返し実行する。これにより、燃料噴射量ずれの大きさおよび吸入空気量の大きさが適切に低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。
加えて、第2装置は、燃料噴射量ずれを補正する際に用いられる補正量の積算値Qcsumが所定の閾値Qcsumthを超えると、「燃料噴射装置22が異常である」旨を表示装置に表示する。一方、第2装置は、吸入空気量ずれをを補正する際に用いられる補正量の積算値Gacsumが所定の閾値Gacsumthを超えると、「吸入空気量センサ71が異常である」旨を表示装置に表示する。
(第3実施形態)
次に、本発明の第3の実施形態に係る制御装置(以下、「第3装置」とも称呼する。)について説明する。
<装置の概要>
第3装置は、第1装置が適用される機関10と同様の構成を有する機関(図1を参照。以下、便宜上、「機関10」と称呼する。)に適用される。そこで、第3装置が適用される装置の概要についての詳細な説明は、省略される。
<装置の作動の概要>
以下、上述したように構成された第3装置の作動の概要について説明する。
第3装置は、第1装置における燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、第1の関係R1(Qtgt,ΔNOx))、および、第2装置における吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係(すなわち、第2の関係R2(Ocon,ΔNOx))の「双方」に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する点においてのみ、第1装置および第2装置と異なる。
具体的に述べると、第3装置は、第1装置と同様の手法により、第1状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を予備的に判定する。さらに、第3装置は、第2装置と同様の手法により、第2状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を予備的に判定する。そして、第3装置は、これら予備的な判定の結果の双方に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を最終的に判定する。
第3装置は、その最終的な状態判定の結果に応じて、第1装置および第2装置と同様に燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正する。さらに、第3装置は、第1装置および第2装置と同様、「燃料噴射装置22が異常である」こと、および、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第3装置の作動の概要である。
<内燃機関の制御方法>
上述したように、第3装置は、第1状態判定方法および第2状態判定方法に従って上記状態判定を行うと共に、第1装置および第2装置と同様に燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正する。そこで、第3装置における内燃機関の制御方法についての詳細な説明は、省略される。
<実際の作動>
以下、第3装置の実際の作動について説明する。
第3装置は、図7〜図11にフローチャートによって示した処理(第1装置にて実行される処理)、および、図18〜図20にフローチャートによって示した処理(第2装置にて実行される処理)に加えて、図21〜図24にフローチャートによって示した処理を実行する。
CPU81は、上記フローチャートによって示したルーチンにおいて、第1装置と同様の第1燃料過多噴射フラグXQP1、第1燃料過少噴射フラグXQN1、第1吸入空気量過多検出フラグXGAP1、第1吸入空気量過少検出フラグXGAN1および第1他異常発生フラグXOTH1、ならびに、第2装置と同様の第2燃料過多噴射フラグXQP2、第2燃料過少噴射フラグXQN2、第2吸入空気量過多検出フラグXGAP2、第2吸入空気量過少検出フラグXGAN2および第2他異常発生フラグXOTH2を用いる。
さらに、CPU81は、それらルーチンにおいて、第3燃料過多噴射フラグXQP3、第3燃料過少噴射フラグXQN3、第3吸入空気量過多検出フラグXGAP3、第3吸入空気量過少検出フラグXGAN3、および、第3他異常発生フラグXOTH3を用いる。
第3燃料過多噴射フラグXQP3は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第3燃料過多噴射フラグXQP3は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第3燃料過少噴射フラグXQN3は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第3燃料過少噴射フラグXQN3は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第3吸入空気量過多検出フラグXGAP3は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第3吸入空気量過多検出フラグXGAP3は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第3吸入空気量過少検出フラグXGAN3は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第3吸入空気量過多検出フラグXGAP3は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第3他異常発生フラグXOTH3は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第3他異常発生フラグXOTH3は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、第2他異常発生フラグXOTH2の値、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、第3吸入空気量過少検出フラグXGAN3の値、および、第3他異常発生フラグXOTH3の値は、バックアップRAM84に格納される。
さらに、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
加えて、第1他異常発生フラグXOTH1の値、第2他異常発生フラグXOTH2の値、および、第3他異常発生フラグXOTH3の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、第3吸入空気量過少検出フラグXGAN3の値、および、第3他異常発生フラグXOTH3の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第3初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図21にフローチャートによって示した「第3燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図21に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始してステップ2110に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ2120に進み、現時点における第3燃料過多噴射フラグXQP3の値が「1」であるか否かを判定する。現時点における第3燃料過多噴射フラグXQP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2120にて「No」と判定してステップ2130に進む。
CPU81は、ステップ2130にて、現時点における第3燃料過少噴射フラグXQN3の値が「1」であるか否かを判定する。現時点における第3燃料過少噴射フラグXQN3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2130にて「No」と判定してステップ2140に進む。
CPU81は、ステップ2140にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図22にフローチャートによって示した「第3吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図22に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始してステップ2210に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ2220に進み、現時点における第3吸入空気量過多検出フラグXGAP3の値が「1」であるか否かを判定する。現時点における第3吸入空気量過多検出フラグXGAP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2220にて「No」と判定してステップ2230に進む。
CPU81は、ステップ2230にて、現時点における第3吸入空気量過少検出フラグXGAN3の値が「1」であるか否かを判定する。現時点における第3吸入空気量過少検出フラグXGAN3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2230にて「No」と判定してステップ2295に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図7のステップ700から処理を開始し、ステップ710およびステップ720を経由してステップ795に進み、本ルーチンを一旦終了する。これにより、EGR率の目標値Regrtgtが決定されると共に、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33の開度およびEGR制御弁53の開度が制御される。
さらに、CPU81は、所定のタイミングにて図8および図9に一連のフローチャートによって示した「第1状態判定ルーチン」を繰り返し実行し、燃料噴射量ずれおよび吸入空気量ずれの状態を判定する。加えて、CPU81は、所定のタイミングにて図18および図19に一連のフローチャートによって示した「第2状態判定ルーチン」を繰り返し実行し、燃料噴射量ずれおよび吸入空気量ずれの状態を判定する。
以下、「上記第1状態判定ルーチンによる燃料噴射量ずれの状態および吸入空気量ずれの状態の判定が完了しており、かつ、上記第2状態判定ルーチンによる燃料噴射量ずれの状態および吸入空気量ずれの状態の判定が完了している」と仮定して、説明を続ける。
CPU81は、所定時間が経過する毎に図17にフローチャートによって示した「第3状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の双方に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。以下、場合を分けてより詳細に説明する。
(場合3−1)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されている場合
この場合、第1燃料過多噴射フラグXQP1の値は「1」に設定されており(上記場合1−1を参照。)、かつ、第2燃料過多噴射フラグXQP2の値は「1」に設定されている(上記場合2−3を参照)。
CPU81は、所定のタイミングにて図23のステップ2300から処理を開始してステップ2305に進み、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、の全てが「0」であるか否かを判定する。
上述したように、現時点における第1燃料過多噴射フラグXQP1の値は「1」であり且つ第2燃料過多噴射フラグXQP2の値は「1」である。よって、CPU81は、ステップ2305にて「No」と判定してステップ2310に進む。
CPU81は、ステップ2310にて、第1燃料過多噴射フラグXQP1の値が「1」であり且つ第2燃料過多噴射フラグXQP2の値が「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は「1」であり且つ第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ2310にて「Yes」と判定してステップ2315に進む。
CPU81は、ステップ2315にて、第3燃料過多噴射フラグXQP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図24にフローチャートによって示した「第3NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1状態判定ルーチンにおける第2NOx濃度ずれΔNOx(Qtgt2)の値と、第2状態判定ルーチンにおける第1NOx濃度ずれΔNOx(Ocon1)の値と、の平均値を取得する。以下、便宜上、この平均値を「第3NOx濃度平均ずれΔNOxave3」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始してステップ2410に進み、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値の少なくとも1つが「1」であるか否かを判定する。現時点における第3燃料過多噴射フラグXQP3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定してステップ2420に進む。
CPU81は、ステップ2420にて、下記(17)式に第1状態判定ルーチンにおける第2NOx濃度ずれΔNOx(Qtgt2)の値および第2状態判定ルーチンにおける第1NOx濃度ずれΔNOx(Ocon1)の値を適用することにより、第3NOx濃度平均ずれΔNOxave3を取得する。
ΔNOxave3={ΔNOx(Qtgt2)+ΔNOx(Ocon1)}/2 ・・・(17)
その後、CPU81は、ステップ2495に進んで本ルーチンを一旦終了する。
CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110を経由してステップ2120に進む。現時点における第3燃料過多噴射フラグXQP3の値は「1」であるので、CPU81は、ステップ2120にて「Yes」と判定し、ステップ2150に進む。
CPU81は、ステップ2150にて、下記(18)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(18)式において、M1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=M1・|ΔNOxave3| ・・・(18)
次いで、CPU81は、ステップ2160に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ2170に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2180に進み、第3燃料過多噴射フラグXQP3の値に「0」を格納し、第3燃料過少噴射フラグXQN3の値に「0」を格納する。
次いで、CPU81は、ステップ2140に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されているとき(すなわち、第3燃料過多噴射フラグXQP3の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されている場合に実行される処理である。
(場合3−2)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されている場合
この場合、第1燃料過少噴射フラグXQN1の値は「1」に設定されており(上記場合1−4を参照。)、かつ、第2燃料過少噴射フラグXQN2の値は「1」に設定されている(上記場合2−2を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305およびステップ2310を経由し、ステップ2320に進む。
CPU81は、ステップ2320にて第1燃料過少噴射フラグXQN1の値が「1」であり且つ第2燃料過少噴射フラグXQN2の値が「1」であるか否かを判定する。現時点における第1燃料過少噴射フラグXQN1の値は「1」であり且つ第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ2320にて「Yes」と判定してステップ2325に進む。
CPU81は、ステップ2325にて、第3燃料過少噴射フラグXQN3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3燃料過少噴射フラグXQN3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110を経由してステップ2120に進む。現時点における第3燃料過多噴射フラグXQP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2120にて「No」と判定し、ステップ2130に進む。
現時点における第3燃料過少噴射フラグXQN3の値は「1」であるので、CPU81は、ステップ2130にて「Yes」と判定してステップ2190に進む。
CPU81は、ステップ2190にて、下記(19)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(19)式において、M2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=M2・|ΔNOxave2| ・・・(19)
次いで、CPU81は、ステップ2160に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ2170に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2180に進み、第3燃料過多噴射フラグXQP3の値に「0」を格納し、第3燃料過少噴射フラグXQN3の値に「0」を格納する。
次いで、CPU81は、ステップ2140に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されているとき(すなわち、第3燃料過少噴射フラグXQN3の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されている場合に実行される処理である。
(場合3−3)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されている場合
この場合、第1吸入空気量過多検出フラグXGAP1の値は「1」に設定されており(上記場合1−2を参照。)、かつ、第2吸入空気量過多検出フラグXGAP2の値は「1」に設定されている(上記場合2−4を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310およびステップ2320を経由し、ステップ2330に進む。
CPU81は、ステップ2330にて第1吸入空気量過多検出フラグXGAP1の値が「1」であり且つ第2吸入空気量過多検出フラグXGAP2の値が「1」であるか否かを判定する。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であり且つ第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ2330にて「Yes」と判定してステップ2335に進む。
CPU81は、ステップ2335にて、第3吸入空気量過多検出フラグXGAP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、ステップ2210を経由してステップ2220に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は「1」であるので、CPU81は、ステップ2220にて「Yes」と判定してステップ2240に進む。
CPU81は、ステップ2240にて、下記(20)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(20)式において、M3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=M3・|ΔNOxave3| ・・・(20)
次いで、CPU81は、ステップ2250に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ2260に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2270に進み、第3吸入空気量過多検出フラグXGAP3の値に「0」を格納し、第3吸入空気量過少検出フラグXGAN3の値に「0」を格納する。その後、CPU81は、ステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されているとき(すなわち、第3吸入空気量過多検出フラグXGAP1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されている場合に実行される処理である。
(場合3−4)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが負である」と判定されている場合
この場合、第1吸入空気量過少検出フラグXGAN1の値は「1」に設定されており(上記場合1−3を参照。)、かつ、第2吸入空気量過少検出フラグXGAN2の値は「1」に設定されている(上記場合2−1を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310、ステップ2320およびステップ2330を経由し、ステップ2340に進む。
CPU81は、ステップ2340にて第1吸入空気量過少検出フラグXGAN1の値が「1」であり且つ第2吸入空気量過少検出フラグXGAN2の値が「1」であるか否かを判定する。現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であり且つ第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ2340にて「Yes」と判定してステップ2345に進む。
CPU81は、ステップ2345にて、第3吸入空気量過多検出フラグXGAP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3吸入空気量過少検出フラグXGAN3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図6のステップ2200から処理を開始すると、ステップ2210を経由してステップ2220に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2220にて「No」と判定してステップ2230に進む。
現時点における第3吸入空気量過少検出フラグXGAN3の値は「1」であるので、CPU81は、ステップ2230にて「Yes」と判定してステップ2280に進む。
CPU81は、ステップ2280にて、下記(21)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(21)式において、M4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=M4・|ΔNOxave3| ・・・(21)
次いで、CPU81は、ステップ2250に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ2260に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ2270に進み、第3吸入空気量過多検出フラグXGAP3の値に「0」を格納し、第3吸入空気量過少検出フラグXGAN3の値に「0」を格納する。その後、CPU81は、ステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて少なくとも吸入空気量ずれが負であると判定されているとき(すなわち、第3吸入空気量過少検出フラグXGAN3の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて少なくとも吸入空気量ずれが負であると判定されている場合に実行される処理である。
(場合3−5)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されている場合
この場合、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値、の全ては「0」に設定されている(上記場合1−5を参照。)。さらに、この場合、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、の全ては「0」に設定されている(場合2−5を参照。)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2300に続くステップ2305にて「Yes」と判定し、ステップ2350に進む。
CPU81は、ステップ2350〜ステップ2365の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ2350にて第3燃料過多噴射フラグXQP3の値に「0」を、ステップ2355にて第3燃料過少噴射フラグXQN3の値に「0」を、ステップ2360にて第3吸入空気量過多検出フラグXGAP3の値に「0」を、ステップ2365にて第3吸入空気量過少検出フラグXGAN3の値に「0」を、格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値の全ては、上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2410にて「No」と判定してステップ2495に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、現時点における第3燃料過多噴射フラグXQP3の値は「0」であり且つ第3燃料過少噴射フラグXQN3の値は「0」であるので、ステップ2110、ステップ2120、ステップ2130およびステップ2140を経由してステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、現時点における第3吸入空気量過多検出フラグXGAP3の値は「0」であり且つ第3吸入空気量過少検出フラグXGAN3の値は「0」であるので、ステップ2210、ステップ2220およびステップ2230を経由してステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されているとき(すなわち、第3燃料過多噴射フラグXQP3の値が「0」であり且つ第3燃料過少噴射フラグXQN3の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されている場合に実行される処理である。
(場合3−6)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されている場合
この場合、第1他異常発生フラグXOTH1の値は「1」に設定されており(上記場合1−6を参照。)、かつ、第2他異常発生フラグXOTH2の値は「1」に設定されている(上記場合2−6を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310、ステップ2320、ステップ2330およびステップ2340を経由し、ステップ2370に進む。
CPU81は、ステップ2370にて、第3他異常発生フラグXOTH3の値に「1」を格納する。次いで、CPU81は、接続指標Aを経由してステップ2350に進む。CPU81は、ステップ2350〜ステップ2365を経由してステップ2395に進み、本ルーチンを一旦終了する。よって、この場合、第3燃料過多噴射フラグXQP3の値は「0」であり、第3燃料過少噴射フラグXQN3の値は「0」であり、第3吸入空気量過多検出フラグXGAP3の値は「0」であり、第3吸入空気量過少検出フラグXGAN3の値は「0」である。
ここで、CPU81は、図24のステップ2400から処理を開始すると、ステップ2400に続くステップ2410にて「No」と判定し、ステップ2495に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110、ステップ2120、ステップ2130およびステップ2140を経由してステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、ステップ2210、ステップ2220およびステップ2230を経由してステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されているとき(すなわち、第1他異常発生フラグXOTH1の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されている場合に実行される処理である。
(場合3−7)第1状態判定ルーチンによる判定の結果と、第2状態判定ルーチンによる判定の結果と、が異なる場合
この場合、例えば、第1状態判定ルーチンにて「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定されれば、第2状態判定ルーチンにて「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」とは判定されない。そのため、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、のうちの少なくとも1つは「1」である。
よって、CPU81は、図23のステップ2300から処理を開始ステップ2305に進むと、ステップ2305にて「No」と判定してステップ2310に進む。
この場合3−7において、第1燃料過多噴射フラグXQP1の値および第2燃料過多噴射フラグXQP2の値のうちの一方が「1」であれば、他方は「0」である。さらに、第1燃料過少噴射フラグXQN1の値および第2燃料過少噴射フラグXQN2の値のうちの一方が「1」であれば、他方は「0」である。加えて、第1吸入空気量過多検出フラグXGAP1の値および第2吸入空気量過多検出フラグXGAP2の値のうちの一方が「1」であれば、他方は「0」である。さらに加えて、第1吸入空気量過少検出フラグXGAN1の値および第2吸入空気量過少検出フラグXGAN2の値のうちの一方が「1」であれば、他方は「0」である。
よって、CPU81は、ステップ2310、ステップ2320、ステップ2330およびステップ2340の全てにて「No」と判定してステップ2370に進む。
CPU81は、ステップ2370にて第3他異常発生フラグXOTH3の値に「1」を格納し、接続指標Aを経由してステップ2350に進む。次いで、CPU81は、ステップ2350〜ステップ2365の処理をこの順に実行し、ステップ2395に進んで本ルーチンを一旦終了する。
このように、この場合3−7においては、上記場合3−6と同様、第3他異常発生フラグXOTH3の値は「1」であり、第3燃料過多噴射フラグXQP3の値は「0」であり、第3燃料過少噴射フラグXQN3の値は「0」であり、第3吸入空気量過多検出フラグXGAP3の値は「0」であり、第3吸入空気量過少検出フラグXGAN3の値は「0」である。
したがって、上記場合3−6にて説明したように、この場合において燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンによる判定の結果と第2状態判定ルーチンによる判定の結果とが異なる場合に実行される処理である。
以上、場合3−1〜3−7に場合を分けて説明したように、第3装置は、第1状態判定方法に基づく判定の結果と第2状態判定方法に基づく判定の結果とが「一致している」とき、それら判定の結果に応じて吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。一方、第3装置は、第1状態判定方法に基づく判定の結果と第2状態判定方法に基づく判定の結果とが「異なる」とき、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正しない。
さらに、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第3燃料過多噴射フラグXQP3の値および第3燃料過少噴射フラグXQN3の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図21のステップ2180を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第3状態判定ルーチンが実行されたときに、第3燃料過多噴射フラグXQP3の値または第3燃料過少噴射フラグXQN3の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第3状態判定ルーチンが実行されたときに第3燃料過多噴射フラグXQP3の値および第3燃料過少噴射フラグXQN3の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第3装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第3吸入空気量過多検出フラグXGAP3の値および第3吸入空気量過少検出フラグXGAN3の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図22のステップ2270を参照。)。上記説明から明らかなように、第3装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第3吸入空気量過多検出フラグXGAP3の値および第3吸入空気量過少検出フラグXGAN3の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第3装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。
<装置の作用および効果>
第3装置は、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の「双方」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。したがって、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の「一方」に基づいてそれら状態を判定する場合に比べ、より正確にそれら状態を判定することができる。
ところで、上述したように、上記第1実施形態〜第3実施形態の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロ」、「正」および「負」のいずれであるかを判定すると共に、その判定の結果に応じて燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrのうちの少なくとも一方を補正するように構成されている。すなわち、これら実施形態の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロ以外」であれば、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrのうちの少なくとも一方を補正する。
しかし、例えば、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロを含む所定の範囲内の値」であることがエミッション排出量を低減する観点において許される場合、本発明の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロを含む所定の範囲内の値」、「その所定の範囲内の最大値よりも大きい値」および「その所定の範囲内の最小値よりも小さい値」のいずれであるかを判定するように構成されてもよい。
このような制御装置は、例えば、図9のルーチンを、ステップ816にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「所定値以上」大きいか否か」が判定され、ステップ824にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「所定値以上」小さいか否か」が判定され、ステップ832にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が「ゼロを含む所定の範囲内の値」であり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値が「ゼロを含む所定の範囲内の値」であるか否か」が判定されるように変更することにより、構成され得る。さらに、このような制御装置は、例えば、図9のルーチンを、ステップ818およびステップ826にて「第2NOx濃度ずれΔNOx(Qtgt2)の値が「所定値以上」であるか否か」が判定されるように変更することにより、構成され得る。
加えて、このような制御装置は、例えば、図19のルーチンを、ステップ1816にて「第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「所定値以上」大きいか否か」が判定され、ステップ1824にて「第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「所定値以上」小さいか否か」が判定され、ステップ1832にて「第1NOx濃度ずれΔNOx(Ocon1)の値が「ゼロを含む所定の範囲内の値」であり且つ第2NOx濃度ずれΔNOx(Ocon2)の値が「ゼロを含む所定の範囲内の値」であるか否か」が判定されるように変更することにより、構成され得る。さらに、このような制御装置は、例えば、図19のルーチンを、ステップ1818およびステップ1826にて「第1NOx濃度ずれΔNOx(Ocon1)の値が「所定値以上」であるか否か」が判定されるように変更することにより、構成され得る。
ところで、図2に示す上記第1の関係R1(Qtgt,ΔNOx)から推定されるように、「燃料噴射量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない燃料噴射量の目標値Qtgt」が存在し得る。換言すると、「吸入空気量ずれがゼロまたは所定の範囲内の値であり且つ燃料噴射量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれΔNOxがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量が、存在し得る。以下、便宜上、この燃料噴射量を「特異燃料噴射量」とも称呼する。
燃料噴射量の目標値Qtgtが「特異燃料噴射量」であるときにNOx濃度ずれが生じた場合、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、そのNOx濃度ずれは「吸入空気量ずれ」に起因すると一義的に判定することができる。すなわち、この場合、上記第1実施形態において用いられている「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく、燃料噴射量の目標値Qtgtが所定値(特異燃料噴射量)であるときのNOx濃度ずれΔNOx「のみ」に基づき、状態判定を行うことができる。
さらに、上記同様、「吸入空気量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない燃料噴射量の目標値Qtgt」が存在し得る。換言すると、「燃料噴射量ずれがゼロまたは範囲内の値であり且つ吸入空気量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量が、存在し得る。上記同様、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、この燃料噴射量を利用することによって「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができる。
なお、このような制御装置は、例えば、図9のルーチンを、ステップ816、ステップ824、ステップ832およびステップ842を削除するように変更することにより、構成され得る。
加えて、図12に示す上記第2の関係R2(Ocon,ΔNOx)から推定されるように、「燃料噴射量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない吸気酸素濃度Ocon」が存在し得る。換言すると、「吸入空気量ずれがゼロまたは所定の範囲内の値であり且つ燃料噴射量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれΔNOxがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度が、存在し得る。以下、便宜上、この吸気酸素濃度を「特異吸気酸素濃度」とも称呼する。
吸気酸素濃度Oconが「特異吸気酸素濃度」であるときにNOx濃度ずれが生じた場合、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、そのNOx濃度ずれは「吸入空気量ずれ」に起因すると一義的に判定することができる。すなわち、この場合、上記第2実施形態において用いられている「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく、吸気酸素濃度Oconが所定値(特異吸気酸素濃度)であるときのNOx濃度ずれΔNOx「のみ」に基づき、状態判定を行うことができる。
さらに、上記同様、「吸入空気量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない吸気酸素濃度Ocon」が存在し得る。換言すると、「燃料噴射量ずれがゼロまたは範囲内の値であり且つ吸入空気量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度が、存在し得る。上記同様、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、この吸気酸素濃度を利用することによって「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができる。
なお、このような制御装置は、例えば、図19のルーチンを、ステップ1816、ステップ1824、ステップ1832およびステップ1842を削除するように変更することにより、構成され得る。
(実施形態の総括)
以上、説明したように、本発明の第1実施形態〜第3実施形態に係る制御装置は、
燃料噴射量の目標値Qtgtを決定する燃料噴射量目標値決定手段(図5、図16および図21のルーチン)と、
吸気酸素濃度関連パラメータの測定値、推定値または目標値(第1実施形態〜第3実施形態においては、吸入空気量の測定値Gamsr)を取得する吸気酸素濃度関連パラメータ取得手段(図6、図17および図22のルーチン)と、
前記吸気酸素濃度関連パラメータGamsrに基づいて前記吸気酸素濃度Oconを取得する吸気酸素濃度取得手段(図8のステップ808および図18のステップ1808)と、
NOx濃度の測定値または推定値(第1実施形態〜第3実施形態においては、NOx濃度の測定値NOxmsr)を取得するNOx濃度取得手段(図8のステップ804および図18のステップ1808)と、
所定のNOx参照濃度NOxrefに対する前記NOx濃度の測定値または推定値NOxmsrの差を表すNOx濃度ずれΔNOxの前記燃料噴射量の目標値Qtgtが所定の範囲内(第1実施形態におけるQtgt1≦Qtgt≦Qtgt2)にて増大したときの変化量および前記燃料噴射量の目標値Qtgtが所定の第1の値(第1実施形態におけるQtgt2)であるときの前記NOx濃度ずれΔNOx(Qtgt2)を含む第1の判定指標、ならびに、前記吸気酸素濃度Oconが所定の範囲内(第2実施形態におけるOcon1≦Qtgt≦Ocon2)にて増大したときの前記NOx濃度ずれΔNOxの変化量および前記吸気酸素濃度Oconが所定の第2の値(第2実施形態におけるOcon1)であるときの前記NOx濃度ずれΔNOx(Ocon1)を含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値Qtgtに対する該燃料噴射量の実際値Qactの差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値Gaactに対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrの差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段(図8および図9のルーチン、ならびに、図18および図19のルーチン)と、
を備える。
さらに、上述したように、本発明の第1実施形態〜第3実施形態に係る制御装置は、「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」および「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができるように構成され得る。
具体的に述べると、上記各実施形態に係る制御装置は、
燃料噴射量の目標値Qtgtを決定する燃料噴射量目標値決定手段(図5、図16および図21のルーチン)と、
吸気酸素濃度関連パラメータの測定値、推定値または目標値(第1実施形態〜第3実施形態においては、吸入空気量の測定値Gamsr)を取得する吸気酸素濃度関連パラメータ取得手段(図6、図17および図22のルーチン)と、
前記吸気酸素濃度関連パラメータGamsrに基づいて前記吸気酸素濃度Oconを取得する吸気酸素濃度取得手段(図8のステップ808および図18のステップ1808)と、
NOx濃度の測定値または推定値(第1実施形態〜第3実施形態においては、NOx濃度の測定値NOxmsr)を取得するNOx濃度取得手段(図8のステップ804および図18のステップ1808)と、
所定のNOx参照濃度NOxrefに対する前記NOx濃度の測定値または推定値NOxmsrの差を表すNOx濃度ずれΔNOxであって前記燃料噴射量の目標値Qtgtが所定の第1の値(特異燃料噴射量)であるときのNOx濃度ずれΔNOxを含む第1の判定指標、および、前記吸気酸素濃度Oconが所定の第2の値(特異吸気酸素濃度)であるときの前記NOx濃度ずれΔNOxを含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値Qtgtに対する該燃料噴射量の実際値Qactの差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値Gaactに対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrの差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段であって、
前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量(特異燃料噴射量)、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、のうちの少なくとも一方を前記第1の値として採用すると共に、
前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度(特異吸気酸素濃度)、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、のうちの少なくとも一方を前記第2の値として採用する状態判定手段(図9のルーチンからステップ816、ステップ824、ステップ832およびステップ842を削除して得られるルーチン、ならびに、図19のルーチンからステップ1816、ステップ1824、ステップ1832およびステップ1842を削除して得られるルーチン)と、
を備えるように構成され得る。
さらに、上記各実施形態に係る制御装置は、
前記燃料噴射量ずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記燃料噴射量の目標値Qtgtを第1補正量Qcだけ減少するように補正し、
前記燃料噴射量ずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記燃料噴射量の目標値Qtgtを第2補正量Qcだけ増大するように補正し、
前記吸気酸素濃度関連パラメータずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを第3補正量Gacだけ減少するように補正し、
前記吸気酸素濃度関連パラメータずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを第4補正量Gacだけ増大するように補正する補正手段(第1実施形態における図5および図6のルーチン、第2実施形態における図16および図17のルーチン、ならびに、第3実施形態における図21および図22のルーチン)、を備える。
加えて、上記実施形態(第3実施形態)に係る制御装置において、
前記状態判定手段は、
前記第1の判定指標および前記第2の判定指標の双方に基づき、前記燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する(図23のルーチン)、ように構成されている。
さらに加えて、上記各実施形態に係る制御装置において、
前記補正手段は、
前記NOx濃度ずれΔNOxの大きさに応じて前記第1補正量Qcの大きさ、前記第2補正量Qcの大きさ、前記第3補正量Gacの大きさおよび前記第4補正量Gacの大きさを決定する、ように構成されている。
さらに、上記各実施形態に係る制御装置において、
前記補正手段は、
前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記燃料噴射量の目標値Qtgtを補正することを繰り返し、前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを補正することを繰り返す、ように構成されている(図5のステップ580と図9のルーチンとの組み合わせ、図16のステップ1680と図19のルーチンとの組み合わせ、および、図21のステップ2180と図23のルーチンとの組み合わせ)。
加えて、上記各実施形態に係る制御装置は、
前記燃料が正常に噴射されているか否か、および、前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが正常に取得されているか否か、のうちの少なくとも一方を判定する異常判定手段であって、前記第1補正量Qcおよび前記第2補正量Qcのうちの少なくとも一方が所定の閾値Qcsumthよりも大きいときに前記燃料が正常に噴射されていないと判定し、前記第3補正量Gacおよび前記第4補正量Gacのうちの少なくとも一方が所定の閾値Gacsumthよりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する異常判定手段(図11のルーチン)を備えている。
より具体的に述べると、前記異常判定手段は、
前記燃料噴射量の目標値Qtgtが補正される毎に前記第1補正量Qcを積算し、
前記燃料噴射量の目標値Qtgtが補正される毎に前記第2補正量Qcを積算し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが補正される毎に前記第3補正量Gacを積算し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが補正される毎に前記第4補正量Gacを積算すると共に、
前記積算された第1補正量の値Qcsumおよび前記積算された第2補正量の値Qcsumのうちの少なくとも一方が所定の閾値Qcsumthよりも大きいときに前記燃料が正常に噴射されていないと判定し、前記積算された第3補正量の値Gacsumおよび前記積算された第4補正量の値Gacsumのうちの少なくとも一方が所定の閾値Gacsumthよりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが正常に取得されていないと判定する、ように構成されている(図11のルーチン)。
なお、上述したように、上記各実施形態に係る制御装置において、
前記吸気酸素濃度関連パラメータ取得手段は、
内燃機関10に吸入される空気の量である吸入空気量Gaを前記吸気酸素濃度関連パラメータのうちの1つとして採用する、ように構成されている(図6、図17および図22のルーチン)。
さらに、上記各実施形態に係る制御装置において、
前記第1の値Qtgt2および前記第2の値Ocon1は、
前記吸気酸素濃度と前記燃料噴射量とに基づいて前記NOx濃度を推定するNOx濃度推定モデル(上記(5)式を参照。)を利用して定められる、ように構成されている。
以上、本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変形や修正を加えることができることは当業者にとって明らかである。
例えば、上記各実施形態の制御装置は、「あらかじめ定められている、機関10の運転状態とNOx濃度との関係(マップ)」に基づいてNOx参照濃度を取得している。しかし、本発明の制御装置は、上記「NOx濃度推定モデル」を利用してNOx参照濃度を定めるように構成され得る。
さらに、上記各実施形態の制御装置は、NOx参照濃度NOxrefとNOx濃度の測定値NOxmsrとに基づいてNOx濃度ずれを定めている。しかし、本発明の制御装置は、NOx参照濃度NOxrefとNOx濃度の「推定値」とに基づいてNOx濃度ずれΔNOxを定めるように構成され得る。
加えて、上記各実施形態の制御装置は、吸気酸素濃度関連パラメータとして「吸入空気量」を採用している。しかし、本発明の制御装置は、吸気酸素濃度関連パラメータとして、燃料噴射量、機関回転速度、吸気通路内のガスの圧力、排気通路内のガスの圧力、燃料噴射時期、EGR率、および、吸気酸素濃度測定装置の出力値などのうちの少なくとも1つを採用するように構成され得る。そして、これらの測定値、推定値または目標値を用いて上記状態判定が行われる。
さらに、上記各実施形態の制御装置は、第1の判定指標に係る「第1の値」として上記所定の範囲(Qtgt1≦Qtgt≦Qtgt2)の最大値(Qtgt2)を採用している。しかし、第1の値は、この値に限定されない。例えば、本発明の制御装置は、上記所定の範囲に含まれる任意の値を「第1の値」として採用するように構成され得る。さらに、本発明の制御装置は、上記状態判定を行うために適切な値であれば、上記所定の範囲に含まれない値を「第1の値」として採用するように構成され得る。
さらに、本発明の制御装置は、「第1の値」として、「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量」を採用するように構成され得る。「第1の値」としてこの値が採用されれば、燃料噴射量ずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
さらに、本発明の制御装置は、「第1の値」として、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量」を採用するように構成され得る。「第1の値」としてこの値が採用されれば、吸気酸素濃度関連パラメータずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
加えて、上記各実施形態の制御装置は、第2の判定指標に係る「第2の値」として上記所定の範囲(Ocon1≦Ocon≦Ocon2)の最小値(Ocon1)を採用している。しかし、第1の値は、この値に限定されない。例えば、本発明の制御装置は、上記所定の範囲に含まれる任意の値を「第2の値」として採用するように構成され得る。さらに、本発明の制御装置は、上記状態判定を行うために適切な値であれば上記所定の範囲に含まれない値であっても、その値を「第2の値」として採用するように構成され得る。
加えて、本発明の制御装置は、「第2の値」として、「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度」を採用するように構成され得る。「第2の値」としてこの値が採用されれば、燃料噴射量ずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
さらに、本発明の制御装置は、「第2の値」として、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度」を採用するように構成され得る。「第2の値」としてこの値が採用されれば、吸気酸素濃度関連パラメータずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
加えて、上記各実施形態の制御装置は、燃料噴射量の補正量および吸入空気量の補正量を「第1NOx濃度ずれの値および第2NOx濃度ずれの値の平均値」に基づいて定めている。しかし、本発明の制御装置は、これら補正量を「第1NOx濃度ずれの値、および、第2NOx濃度ずれの値のいずれか一方」に基づいて定めるように構成され得る。さらに、本発明の制御装置は、これら補正量を上記NOx濃度推定モデルに基づいて定めるように構成され得る。さらに加えて、本発明の制御装置は、これら補正量を「あらかじめ取得されている、NOx濃度ずれの値と補正量との関係(マップ)」に基づいて定めるように構成され得る。
さらに、上記各実施形態の制御装置は、NOx濃度ずれの変化量およびNOx濃度ずれの値「のみ」に基づいて上記状態判定を行うように構成されている。しかし、本発明の制御装置は、NOx濃度ずれの変化量およびNOx濃度ずれの値、ならびに、それら「以外」のパラメータであって上記状態判定に影響を与え得るパラメータ、に基づいて上記状態判定を行うように構成され得る。
本発明は、内燃機関から排出される窒素酸化物(以下、「NOx」とも称呼する。)の量を制御する内燃機関の制御装置に関する。
火花点火式内燃機関およびディーゼル機関などの内燃機関(特に、ディーゼル機関)から排出されるガスには、NOxおよび微粒子状物質(以下、「PM」とも称呼する。)などの有害物質(以下、「エミッション」とも称呼する。)が含まれる。このエミッションの排出量は出来る限り低減されることが望ましい。この排ガスに含まれるNOx量を低減する方法として、例えば、EGR装置によって還流されるガスの量であるEGRガス量を内燃機関の運転状態に応じて制御する方法などが提案されている。
ところが、周知のように、排ガスに含まれるNOx量と、排ガスに含まれるPM量と、の間には二律背反の関係がある。すなわち、NOx量を減少させるように内燃機関が制御されるとPM量が増大し、PM量を減少させるように内燃機関が制御されるとNOx量が増大する。そのため、エミッションの排出量を総合的に低減する観点において、NOx量およびPM量の双方を考慮して内燃機関が制御されることが望ましい。
具体的に述べると、NOx量を出来る限り低減させると共にPM量が増大されることを抑制するためには、NOx量が内燃機関の運転状態に応じた所定の目標量に一致するように内燃機関が制御されることが望ましい。例えば、従来の内燃機関の制御装置の一つ(以下、「従来装置」とも称呼する。)は、気筒内に吸入されるガスの酸素濃度である吸気酸素濃度と、気筒内のガスの圧力である気筒内圧力と、気筒内に噴射される燃料の量、および、気筒内に燃料が噴射される時期などの運転パラメータの値を取得する。そして、従来装置は、それら運転パラメータの値を所定のNOx量推定モデルに適用することにより、排ガスに含まれるNOx量を推定するようになっている。さらに、この従来装置は、推定されたNOx量が所定の目標値であるNOx目標量に一致するように、EGRガス量などを制御するようになっている(例えば、特開2002−371893号公報を参照。)。
従来装置は、上述したように、所定の運転パラメータの値に基づいて推定されるNOx量が所定のNOx目標量に一致するようにEGRガス量などを制御するようになっている。すなわち、従来装置は、「取得された上記運転パラメータの値がそれら運転パラメータの実際の(現実の)値と一致している」こと(すなわち、取得された上記運転パラメータの値が正常であること)を前提としてEGRガス量などを制御している。しかしながら、上記運転パラメータの値に関与する部材(例えば、各種センサおよび燃料噴射装置など)には、様々な要因による破損および経年劣化などの異常が生じる場合がある。さらに、上記運転パラメータの値に関与する部材は、構成上のばらつき(製造の際に生じる同一種の部材間における寸法および性能などの差)を有する場合もある。以下、便宜上、破損および経年劣化などの異常と、構成上のばらつきと、を単に「異常」と総称する。
上記異常が生じている場合、従来装置が取得した上記運転パラメータの値は正常ではない虞がある。上記運転パラメータの値が正常ではない場合、従来装置は、NOx量を適切に制御することができない。さらに、上記運転パラメータの値が正常ではない場合であっても、従来装置は、取得された運転パラメータの値(すなわち、実際の(現実の)運転パラメータの値と異なる値)と、実際の(現実の)運転パラメータの値と、がどのように異なるかを確認することができない。
本発明の目的は、上記課題に鑑み、上記異常が生じた場合であっても、内燃機関の排ガスに含まれるNOx量に影響を与える運転パラメータの実際の(現実の)値と、その運転パラメータの取得された値と、がどのように異なるかを判定することができる内燃機関の制御装置を提供することにある。
上記課題を達成するための本発明による「第1の内燃機関の制御装置」は、
燃料噴射量目標値決定手段と、吸気酸素濃度関連パラメータ取得手段と、吸気酸素濃度取得手段と、NOx濃度取得手段と、状態判定手段と、を備える。以下、これら手段についてより詳細に説明する。
燃料噴射量目標値決定手段は、
前記内燃機関の運転状態に基づき、該内燃機関の気筒内に噴射(供給)される燃料の量である「燃料噴射量」の目標値を決定するようになっている。この内燃機関の運転状態として、燃料噴射量の目標値を決定するために必要な運転パラメータが適宜採用され得る。例えば、機関回転速度およびアクセルペダル開度などが、内燃機関の運転状態として採用され得る。
吸気酸素濃度関連パラメータ取得手段は、
前記気筒内に吸入されるガスの酸素濃度である吸気酸素濃度に関連するパラメータである「吸気酸素濃度関連パラメータ」の測定値、推定値または目標値を取得するようになっている。吸気酸素濃度関連パラメータとして、例えば、内燃機関に吸入される空気の量である吸入空気量、気筒内に噴射される燃料の量である燃料噴射量、機関回転速度、内燃機関の吸気通路内のガスの圧力、内燃機関の排気通路内のガスの圧力、および、気筒内に燃料を噴射する時期である燃料噴射時期などのうちの少なくとも1つが、採用され得る。さらに、排ガスを排気通路から吸気通路へ還流させる排気再循環(EGR)が行われている場合、「気筒内に吸入されるガス(すなわち、内燃機関の外部から吸入される空気と、排気再循環によって吸気通路へ還流される排ガス、の混合物)の量」に対する「排気再循環によって吸気通路へ還流される排ガスの量であるEGRガス量」の比であるEGR率が、吸気酸素濃度関連パラメータとして採用され得る。加えて、吸気通路の所定位置に吸気酸素濃度測定装置(例えば、酸素濃度センサなど)が設けられている場合、その吸気酸素濃度測定装置の出力値が、吸気酸素濃度関連パラメータとして採用され得る。
この「吸気酸素濃度関連パラメータの測定値、推定値または目標値」を取得する方法は、特に限定されない。例えば、所定の吸気酸素濃度関連パラメータを取得するための周知の測定方法、推定方法または目標値の決定方法が、その方法として採用され得る。
吸気酸素濃度取得手段は、
前記吸気酸素濃度関連パラメータに基づき、「前記吸気酸素濃度」を取得するようになっている。この「吸気酸素濃度」を取得する方法は、特に制限されない。例えば、所定の吸気酸素濃度関連パラメータと吸気酸素濃度との関係を表す関係式をあらかじめ定めると共に、その関係式に実際の吸気酸素濃度関連パラメータを適用することによって吸気酸素濃度を算出する方法が、その方法として採用され得る。さらに、例えば、上記吸気酸素濃度測定装置の出力値に基づいて吸気酸素濃度を取得する方法が、その方法として採用され得る。
上記「所定の関係式に実際の吸気酸素濃度関連パラメータを適用することによって吸気酸素濃度を算出する方法」は、特に限定されない。例えば、排気再循環(EGR)が行われている場合、EGR率と、理論空燃比(≒14.7)に対する実際の空燃比(実空燃比)の比である空気過剰率と、に基づいて吸気酸素濃度を算出する方法が、その方法として採用され得る。さらに、例えば、内燃機関の外部のガス(空気)の酸素濃度と、吸気通路内のガスの圧力と、に基づいて吸気酸素濃度を算出する方法が、その方法として採用され得る。
NOx濃度取得手段は、
前記気筒から排出されるガスの窒素酸化物濃度である「NOx濃度」の測定値または推定値を取得するようになっている。この「NOx濃度の測定値または推定値」を取得する方法は、特に限定されない。例えば、NOx濃度の測定値または推定値を取得する方法として、排気通路の所定位置にNOx濃度測定装置(例えば、NOx濃度センサなど)を設けると共に、そのNOx濃度測定装置の出力値に基づいてNOx濃度の「測定値」を取得する方法が、採用され得る。さらに、例えば、あらかじめ実験などによって所定の運転パラメータ(例えば、吸気酸素濃度および燃料噴射量など)とNOx濃度との関係(例えば、NOx濃度マップ)を取得すると共に、実際の運転パラメータをその関係に適用することによってNOx濃度の「推定値」を取得する方法が、その方法として採用され得る。加えて、例えば、所定の運転パラメータ(例えば、吸気酸素濃度および燃料噴射量など)に基づいてNOx濃度を推定するNOx濃度推定モデルに実際の運転パラメータを適用することによってNOx濃度の「推定値」を取得する方法が、その方法として採用され得る。
状態判定手段は、
「前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれ」が「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
「前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれ」が、「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
上記燃料噴射量ずれは、「燃料噴射量の目標値」を基準としてその「燃料噴射量の目標値」と「燃料噴射量の実際値」との差を表現することができる数値であればよく、特に制限されない。例えば、燃料噴射量ずれとして、「燃料噴射量の実際値から燃料噴射量の目標値を減算して得られる値」を「燃料噴射量の目標値」によって除算して得られる値(すなわち、燃料噴射量の目標値に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「燃料噴射量の実際値から燃料噴射量の目標値を減算して得られる値そのもの」が、燃料噴射量ずれとして採用され得る。
より具体的に述べると、燃料噴射量の目標値よりも燃料噴射量の実際値が大きいとき、燃料噴射量ずれは「正」である。さらに、燃料噴射量の目標値と燃料噴射量の実際値とが一致しているとき、燃料噴射量ずれは「ゼロ」である。加えて、燃料噴射量の目標値よりも燃料噴射量の実際値が小さいとき、燃料噴射量ずれは「負」である。
上記吸気酸素濃度関連パラメータずれは、「吸気酸素濃度関連パラメータの実際値」を基準としてその「吸気酸素濃度関連パラメータの実際値」と「吸気酸素濃度関連パラメータの測定値、推定値または目標値」との差を表現することができる数値であればよく、特に制限されない。例えば、吸気酸素濃度関連パラメータずれとして、「吸気酸素濃度関連パラメータの測定値、推定値または目標値から吸気酸素濃度関連パラメータの実際値を減算して得られる値」を「吸気酸素濃度関連パラメータの実際値」によって除算して得られる値(すなわち、吸気酸素濃度関連パラメータの実際値に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「吸気酸素濃度関連パラメータの測定値、推定値または目標値から吸気酸素濃度関連パラメータの実際値を減算して得られる値そのもの」が、吸気酸素濃度関連パラメータずれとして採用され得る。
より具体的に述べると、吸気酸素濃度関連パラメータの実際値よりも吸気酸素濃度関連パラメータの測定値、推定値または目標値が大きいとき、吸気酸素濃度関連パラメータずれは「正」である。さらに、吸気酸素濃度関連パラメータの実際値と吸気酸素濃度関連パラメータの測定値、推定値または目標値とが一致しているとき、吸気酸素濃度関連パラメータずれは「ゼロ」である。加えて、吸気酸素濃度関連パラメータの実際値よりも吸気酸素濃度関連パラメータの測定値、推定値または目標値が小さいとき、吸気酸素濃度関連パラメータずれは「負」である。
以下、便宜上、「燃料噴射量ずれの大きさがゼロ、正および負のいずれであるか、あるいは、ゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか」を、単に「燃料噴射量ずれの状態」とも称呼する。さらに、以下、便宜上、「吸気酸素濃度関連パラメータずれの大きさがゼロ、正および負のいずれであるか、あるいは、ゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか」を、単に「吸気酸素濃度関連パラメータずれの状態」とも称呼する。
燃料噴射量ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点において燃料噴射量ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。さらに、吸気酸素濃度関連パラメータずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点において吸気酸素濃度関連パラメータずれがゼロであるとみなし得る範囲であればよく、特に制限されない。これら「所定の範囲」は、内燃機関に要求されるエミッション排出量などに基づいて適宜定められ得る。
以下、便宜上、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値である」ことを、「燃料噴射量および吸気酸素濃度関連パラメータは正常である」とも称呼する。これに対し、以下、便宜上、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であること、および、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値であること、のうちの少なくとも一方が成立しない」ことを、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」とも称呼する。
上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態が判定される際に用いられる判定指標についてより具体的に述べると、状態判定手段は、
(1)「所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれ」の前記燃料噴射量の目標値が所定の範囲内にて増大したときの変化量、および、前記燃料噴射量の目標値が所定の「第1の値」であるときの前記NOx濃度ずれ、を含む第1の判定指標、
ならびに、
(2)前記吸気酸素濃度が所定の範囲内にて増大したときの前記NOx濃度ずれの変化量、および、前記吸気酸素濃度が所定の「第2の値」であるときの前記NOx濃度ずれ、を含む第2の判定指標、
のうちの少なくとも一方に基づき、上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つ、を判定するようになっている。
上記NOx濃度ずれは、「NOx参照濃度」を基準としてその「NOx参照濃度」と「NOx濃度の測定値または推定値」との差を表現することができる数値であればよく、特に制限されない。例えば、NOx濃度ずれとして、「NOx濃度の測定値または推定値からNOx参照濃度を減算して得られる値」を「NOx参照濃度」によって除算して得られる値(すなわち、NOx参照濃度に対する上記減算して得られる値の割合)が、採用され得る。さらに、例えば、「NOx濃度の測定値または推定値からNOx参照濃度を減算して得られる値そのもの」が、NOx濃度ずれとして採用され得る。
より具体的に述べると、NOx参照濃度よりもNOx濃度の測定値または推定値が大きいとき、NOx濃度ずれは「正」である。さらに、NOx参照濃度とNOx濃度の測定値または推定値とが一致しているとき、NOx濃度ずれは「ゼロ」である。加えて、NOx参照濃度よりもNOx濃度の測定値または推定値が小さいとき、NOx濃度ずれは「負」である。
上記「NOx参照濃度」は、「燃料噴射量ずれがゼロまたは上記所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたは上記所定の範囲内の値であるときに取得されるNOx濃度」に相当する。換言すると、燃料噴射量および吸気酸素濃度関連パラメータが正常であるとき、NOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。
NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。この「所定の範囲」は、内燃機関に要求されるエミッション排出量などに基づいて適宜定められ得る。
上記NOx参照濃度を定める方法は、特に制限されない。NOx参照濃度を定める方法として、例えば、あらかじめ実験などによって「燃料噴射量および吸気酸素濃度関連パラメータが正常であることが確認されている内燃機関における、所定の運転パラメータ(例えば、燃料噴射量および吸気酸素濃度関連パラメータなど)とNOx濃度との関係」を取得すると共に、実際の運転パラメータをその関係に適用することによって得られるNOx濃度をNOx参照濃度として定める方法が、採用され得る。さらに、例えば、所定の運転パラメータ(例えば、燃料噴射量および吸気酸素濃度など)に基づいてNOx濃度を推定するNOx濃度推定モデルに実際の運転パラメータを適用することによって得られるNOx濃度をNOx参照濃度として定める方法が、その方法として採用され得る。
上記「第1の値」および上記「第2の値」は、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つを判定するために適切な値であればよく、特に制限されない。さらに、燃料噴射量の目標値に係る上記「所定の範囲」、および、吸気酸素濃度に係る上記「所定の範囲」は、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つを判定するために適切な範囲であればよく、特に制限されない。
上記「第1の判定指標」は、燃料噴射量の目標値が所定の範囲内にて増大したときのNOx濃度ずれの変化量および燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第1の判定指標」は、燃料噴射量の目標値が所定の範囲内にて増大したときのNOx濃度ずれの変化量および燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ、ならびに、それら「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
上記「第2の判定指標」は、吸気酸素濃度が所定の範囲内にて増大したときのNOx濃度ずれの変化量および吸気酸素濃度が第2の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第2の判定指標」は、吸気酸素濃度が所定の範囲内にて増大したときのNOx濃度ずれの変化量および吸気酸素濃度が第2の値であるときのNOx濃度ずれ、ならびに、それら「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
以下、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定する具体的な方法について述べる前に、内燃機関の運転パラメータと排ガスのNOx濃度との関係について説明する。
周知の燃焼モデル(サーマルNOx生成機構)の1つである拡大ゼルドヴィッチ機構によれば、燃焼過程において生成される窒素酸化物の濃度は、燃焼に供されるガスの窒素濃度および酸素濃度、ならびに、燃焼時の火炎温度の影響を受ける。発明者は、この拡大ゼルドヴィッチ機構をさらに詳細に検討した。発明者による種々の考察および種々の実験などによれば、内燃機関の排ガスに含まれるNOx量(すなわち、上記NOx濃度)と、内燃機関の気筒内に噴射(供給)される燃料の量(すなわち、上記燃料噴射量)と、その気筒内に吸入されるガスの酸素濃度(すなわち、上記吸気酸素濃度)と、の間に強い相関があることが確認された。さらに、発明者による上記考察および上記実験などによれば、「燃料噴射量とNOx濃度との相関の程度」と、「吸気酸素濃度とNOx濃度との相関の程度」と、が異なることが確認された。なお、この吸気酸素濃度は、上述したように、吸気酸素濃度関連パラメータに基づいて定められる値である。
したがって、「燃料噴射量ずれ」が生じた場合のNOx濃度ずれの程度と、「吸気酸素濃度関連パラメータずれ」が生じた場合のNOx濃度ずれの程度と、は異なる。さらに、燃料噴射量の目標値が所定の値であるときに「燃料噴射量ずれ」が生じた場合におけるNOx濃度ずれの程度と、燃料噴射量の目標値がその所定の値であるときに「吸気酸素濃度関連パラメータずれ」が生じた場合におけるNOx濃度ずれの程度と、は異なる。加えて、吸気酸素濃度が所定の値であるときに「燃料噴射量ずれ」が生じた場合におけるNOx濃度ずれの程度と、吸気酸素濃度がその所定の値であるときに「吸気酸素濃度関連パラメータずれ」が生じた場合におけるNOx濃度ずれの程度と、は異なる。
さらに、上述したように、NOx濃度ずれは、燃料噴射量および吸気酸素濃度関連パラメータが正常であるとき(すなわち、燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であり、かつ、吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であるとき)ゼロまたはゼロを含む所定の範囲内の値となるように定められている。そのため、燃料噴射量ずれの大きさに応じてNOx濃度ずれは変化し、吸気酸素濃度関連パラメータずれの大きさに応じてNOx濃度ずれは変化する。
このように、NOx濃度と、燃料噴射量と、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれ、吸気酸素濃度関連パラメータずれと、の間には所定の相関がある。そこで、状態判定手段は、上記「第1の判定指標(すなわち、燃料噴射量とNOx濃度ずれとの関係)」および上記「第2の判定指標(すなわち、吸気酸素濃度とNOx濃度ずれとの関係)」を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定するようになっている。
すなわち、状態判定手段は、
上記第1の判定指標および上記第2の判定指標のうちの少なくとも一方に基づき、
(A)前記燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(B)前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
(C)前記吸気酸素濃度関連パラメータずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(D)前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
このように、本発明の第1の内燃機関の制御装置は、NOx濃度ずれを利用して「燃料噴射量ずれの状態」および「吸気酸素濃度関連パラメータずれの状態」のうちの少なくとも一方を判定することができる。すなわち、本発明の第1の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるかを判定することができる。
なお、状態判定手段によって燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、燃料噴射量に関与する部材が正常であると判定することもできる。さらに、状態判定手段によって吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、吸気酸素濃度関連パラメータに関与する部材が正常であると判定することもできる。
さらに、上記課題を達成するための本発明による「第2の内燃機関の制御装置」は、
燃料噴射量目標値決定手段と、吸気酸素濃度関連パラメータ取得手段と、吸気酸素濃度取得手段と、NOx濃度取得手段と、状態判定手段と、を備える。以下、これら手段についてより詳細に説明する。
燃料噴射量目標値決定手段、吸気酸素濃度関連パラメータ取得手段、吸気酸素濃度取得手段は、および、NOx濃度取得手段は、それぞれ、「第1の内燃機関の制御装置」の燃料噴射量目標値決定手段、吸気酸素濃度関連パラメータ取得手段、吸気酸素濃度取得手段は、および、NOx濃度取得手段と同じである。
状態判定手段は、
「前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれ」が「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
「前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれ」が、「ゼロ」、「正」および「負」のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
上記燃料噴射量ずれ、および、上記吸気酸素濃度関連パラメータずれは、それぞれ、「第1の内燃機関の制御装置」に関連して説明した燃料噴射量ずれ、および、吸気酸素濃度関連パラメータずれと同じである。
以下、便宜上、「第1の内燃機関の制御装置」に関連して説明した「燃料噴射量ずれの状態」、「吸気酸素濃度関連パラメータずれの状態」、「燃料噴射量および吸気酸素濃度関連パラメータは正常である」、および、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」と同じ意味で、「燃料噴射量ずれの状態」、「吸気酸素濃度関連パラメータずれの状態」「燃料噴射量および吸気酸素濃度関連パラメータは正常である」、および、「燃料噴射量および吸気酸素濃度関連パラメータが異常である」を使用する。
上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態が判定される際に用いられる判定指標についてより具体的に述べると、状態判定手段は、
(1)「所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれ」であって前記燃料噴射量の目標値が所定の「第1の値」であるときのNOx濃度ずれを含む第1の判定指標、
および、
(2)前記吸気酸素濃度が所定の「第2の値」であるときの前記NOx濃度ずれを含む第2の判定指標、
のうちの少なくとも一方に基づき、上記燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも1つ、を判定するようになっている。
上記「NOx濃度ずれ」は、上記「NOx参照濃度」、および、NOx濃度ずれに係る上記「所定の範囲」は、それぞれ、「第1の内燃機関の制御装置」に関連して説明した「NOx濃度ずれ」、「NOx参照濃度」、および、NOx濃度ずれに係る「所定の範囲」と同じである。
上記NOx参照濃度を定める方法は、特に制限されず、「第1の内燃機関の制御装置」に関連して説明した「NOx参照濃度を定める方法」と同様である。
上記「第1の判定指標」は、燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第1の判定指標」は、燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ、および、それ「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
上記「第2の判定指標」は、吸気酸素濃度が第2の値であるときのNOx濃度ずれ「のみ」を含むように構成され得る。さらに、上記「第2の判定指標」は、吸気酸素濃度が第2の値であるときのNOx濃度ずれ、および、それ「以外」のパラメータであって上記判定に影響を与え得るパラメータ、を含むように構成され得る。
なお、「第2の内燃機関の制御装置」に関する内燃機関の運転パラメータと排ガスのNOx濃度との関係は、「第1の内燃機関の制御装置」に関する内燃機関の運転パラメータと排ガスのNOx濃度との関係と同じである。
したがって、NOx濃度と、燃料噴射量と、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれ、吸気酸素濃度関連パラメータずれと、の間には所定の相関がある。そこで、状態判定手段は、上記「第1の判定指標(すなわち、燃料噴射量とNOx濃度ずれとの関係)」および上記「第2の判定指標(すなわち、吸気酸素濃度とNOx濃度ずれとの関係)」を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態を判定するようになっている。
すなわち、状態判定手段は、
上記第1の判定指標および上記第2の判定指標のうちの少なくとも一方に基づき、
(A)前記燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(B)前記燃料噴射量ずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
ならびに、
(C)前記吸気酸素濃度関連パラメータずれが「ゼロ」、「正」および「負」のいずれであるか、
あるいは、
(D)前記吸気酸素濃度関連パラメータずれが「ゼロを含む所定の範囲内の値」、「該所定の範囲内の最大値よりも大きい値」および「該所定の範囲内の最小値よりも小さい値」のいずれであるか、
のうちの少なくとも1つ、を判定するようになっている。
ここで、状態判定手段は、上記判定を行う際に利用する「第1の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
のうちの少なくとも一方、を採用するようになっている。
上述したように、「第1の値」は、燃料噴射量の目標値に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値(すなわち、燃料噴射量の目標値)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
さらに、状態判定手段は、上記判定を行う際に利用する「第2の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
のうちの少なくとも一方、を採用するようになっている。
上述したように、「第2の値」は、吸気酸素濃度に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値(すなわち、吸気酸素濃度)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
なお、上述したように、NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。
このように、本発明の第2の内燃機関の制御装置は、NOx濃度ずれを利用して「燃料噴射量ずれの状態」および「吸気酸素濃度関連パラメータずれの状態」のうちの少なくとも一方を判定することができる。すなわち、本発明の第2の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるかを判定することができる。
なお、状態判定手段によって燃料噴射量ずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、燃料噴射量に関与する部材に異常が生じていないと判定することもできる。さらに、状態判定手段によって吸気酸素濃度関連パラメータずれがゼロまたはゼロを含む所定の範囲内の値であると判定されれば、吸気酸素濃度関連パラメータに関与する部材が正常であると判定することもできる。
以下、便宜上、「本発明の第1の内燃機関の制御装置」および「本発明の第2の内燃機関の制御装置」を、単に「本発明の内燃機関の制御装置」と総称する。
本発明の内燃機関の制御装置の第1の態様として、
制御装置は、補正手段を備えるように構成され得る。
この補正手段は、
(1)前記燃料噴射量ずれが「正」または「前記所定の範囲内の最大値よりも大きい値」であると判定されていれば前記燃料噴射量の目標値を「第1補正量だけ減少する」ように補正し、
(2)前記燃料噴射量ずれが「負」または「前記所定の範囲内の最小値よりも小さい値」であると判定されていれば前記燃料噴射量の目標値を「第2補正量だけ増大する」ように補正し、
(3)前記吸気酸素濃度関連パラメータずれが「正」または「前記所定の範囲内の最大値よりも大きい値」であると判定されていれば「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第3補正量だけ減少する」ように補正し、
(4)前記吸気酸素濃度関連パラメータずれが「負」または「前記所定の範囲内の最小値よりも小さい値である」と判定されていれば「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第4補正量だけ増大する」ように補正する、
ように構成され得る。
上述したように、本発明の内燃機関の制御装置は、NOx濃度ずれが生じているとき、燃料噴射量および吸気酸素濃度関連パラメータの実際の値と、それらの取得された値と、がどのように異なるか(すなわち、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態)を判定することができる。
そこで、本態様における補正手段は、判定された燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態に応じて燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正する。これにより、「燃料噴射量ずれ」の大きさおよび「吸気酸素濃度関連パラメータずれ」の大きさが低減される。その結果、「NOx濃度ずれ」の大きさが低減される。
本発明の内燃機関の制御装置の第2の態様として、
前記状態判定手段は、
前記第1の判定指標および前記第2の判定指標の「双方」に基づき、前記燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する、ように構成され得る。
本態様における状態判定手段は、第1の判定指標および第2の判定指標の「双方」に基づいて燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも一方を判定する。したがって、本態様における状態判定手段は、第1の判定指標および第2の判定指標の「一方」に基づいてそれら状態を判定する場合に比べ、より正確にそれら状態を判定することができる。
本発明の内燃機関の制御装置の第3の態様として、
前記補正手段は、
「前記NOx濃度ずれの大きさ」に応じて前記第1補正量の大きさ、前記第2補正量の大きさ、前記第3補正量の大きさおよび前記第4補正量の大きさを決定する、
ように構成され得る。
上述したように、上記「第1の態様」における補正手段は、NOx濃度ずれの大きさに応じて燃料噴射量の目標値を所定の補正量(第1補正量または第2補正量)だけ補正するようになっている。さらに、この補正手段は、NOx濃度ずれの大きさに応じて吸気酸素濃度関連パラメータの測定値、推定値または目標値を所定の補正量(第3補正量または第4補正量)だけ補正するようになっている。
上述したように、NOx濃度と燃料噴射量と吸気酸素濃度との間には強い相関がある。そのため、NOx濃度ずれの大きさと、燃料噴射量ずれの大きさと、吸気酸素濃度関連パラメータずれの大きさと、の間にも相関があると考えられる。そこで、上記「第3の態様」における補正手段は、上記補正量の大きさをNOx濃度ずれの大きさに応じて決定するようになっている。これにより、本態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値をより適切に補正することができる。これにより、「燃料噴射量ずれ」の大きさおよび「吸気酸素濃度関連パラメータずれ」の大きさがより適切に低減される。その結果、「NOx濃度ずれ」の大きさがより適切に低減される。
本発明の内燃機関の制御装置の第4の態様として、
前記補正手段は、
(1)前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記燃料噴射量の目標値を補正することを繰り返し、
(2)前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正することを繰り返す、
ように構成され得る。
上述したように、上記「第1の態様」および上記「第3の態様」における補正手段は、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正するようになっている。
さらに、上記「第4の態様」における補正手段は、この補正を繰り返し実行するようになっている。これにより、本態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれを実質的にゼロ(ゼロまたは上記所定の範囲内の値)にまで低減することができる。その結果、「NOx濃度ずれ」の大きさが実質的にゼロ(ゼロまたは所定の範囲内の値)にまで低減される。
本発明の内燃機関の制御装置の第5の態様として、
制御装置は、異常判定手段を備えるように構成され得る。
この異常判定手段は、
「前記燃料が正常に噴射されているか否か」および「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されているか否か」のうちの少なくとも一方を判定する異常判定手段であって、
前記第1補正量および前記第2補正量のうちの少なくとも一方が所定の閾値よりも大きいときに「前記燃料が正常に噴射されていない」と判定し、前記第3補正量および前記第4補正量のうちの少なくとも一方が所定の閾値よりも大きいときに「前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていない」と判定する、
ように構成され得る。
以下、便宜上、「前記燃料が正常に噴射されていない」ことを「燃料噴射量が異常である」とも称呼する。さらに、以下、便宜上、「吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていない」ことを「吸気酸素濃度関連パラメータが異常である」とも称呼する。
上述したように、上記第1の態様、上記第3の態様および上記第4の態様における補正手段は、燃料噴射量ずれおよび吸気酸素濃度関連パラメータずれのうちの少なくとも一方が生じた場合、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を所定の補正量だけ補正するようになっている。
さらに、上記「第5の態様」における異常判定手段は、これら補正量の大きさに基づき、燃料噴射量が異常であるか否か、および、吸気酸素濃度関連パラメータが異常であるか否か、を判定するようになっている。これにより、例えば、本発明の内燃機関の制御装置は、燃料噴射量が異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。さらに、例えば、本発明の内燃機関の制御装置は、吸気酸素濃度関連パラメータが異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。
第1補正量および第2補正量に係る上記「所定の閾値」は、第1補正量および第2補正量の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。さらに、第3補正量および第4補正量に係る上記「所定の閾値」は、第3補正量および第4補正量の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。
本発明の内燃機関の制御装置の第6の態様において、
前記異常判定手段は、
前記燃料噴射量の目標値が補正される毎に前記第1補正量を「積算」し、
前記燃料噴射量の目標値が補正される毎に前記第2補正量を「積算」し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第3補正量を「積算」し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第4補正量を「積算」すると共に、
「前記積算された第1補正量の値」および「前記積算された第2補正量の値」のうちの少なくとも一方が所定の閾値よりも大きいときに前記燃料が正常に噴射されていないと判定し、「前記積算された第3補正量の値」および「前記積算された第4補正量の値」のうちの少なくとも一方が所定の閾値よりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する、
ように構成され得る。
上述したように、上記「第4の態様」における補正手段は、燃料噴射量の目標値および吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正することを繰り返すようになっている。
そこで、上記「第6の態様」における異常判定手段は、上記補正が行われる毎にその補正に用いられる補正量を積算すると共に、その積算された補正量の値に基づいて燃料噴射量が異常であるか否か、および、吸気酸素濃度関連パラメータが異常であるか否か、を判定するようになっている。これにより、上記同様、例えば、本発明の内燃機関の制御装置は、燃料噴射量が異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。さらに、例えば、本発明の内燃機関の制御装置は、吸気酸素濃度関連パラメータが異常であると判定されたときにその旨を内燃機関の操作者に対して通知し得る。
積算された第1補正量の値および積算された第2補正量の値に係る上記「所定の閾値」は、積算された第1補正量の値および積算された第2補正量の値の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。さらに、積算された第3補正量の値および積算された第4補正量の値に係る上記「所定の閾値」は、積算された第3補正量の値および積算された第4補正量の値の少なくとも一方がその閾値よりも大きいときのエミッション排出量が内燃機関のエミッション排出量を出来る限り低減する観点において許容することができない量となる適値として定められ得る。
本発明の内燃機関の制御装置の第7の態様において、
前記状態判定手段は、「前記第1の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量、のうちの少なくとも一方、を採用するように構成され得る。
上述したように、「第1の値」は、燃料噴射量の目標値に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値(すなわち、燃料噴射量の目標値)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、上述したように、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第1の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第1の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
さらに、第7の態様における前記状態判定手段は、「前記第2の値」として、
「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、
および、
「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でない」ときに「前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度、のうちの少なくとも一方、を採用するように構成され得る。
上述したように、「第2の値」は、吸気酸素濃度に対応する値である。「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値(すなわち、吸気酸素濃度)として採用されている場合、吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であれば、燃料噴射量ずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、燃料噴射量ずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「吸気酸素濃度関連パラメータずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
一方、上述したように、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される値が第2の値として採用されている場合、燃料噴射量ずれがゼロまたは前記所定の範囲内の値であれば、吸気酸素濃度関連パラメータずれの大きさにかかわらずNOx濃度ずれはゼロまたはゼロを含む所定の範囲内の値となる。すなわち、この場合、吸気酸素濃度関連パラメータずれはNOx濃度ずれに影響を与えない。換言すると、この場合、「燃料噴射量ずれのみ」がNOx濃度ずれに影響を与える。よって、状態判定手段は、この場合におけるNOx濃度ずれ(すなわち、上記第2の判定指標)を用いることにより、さらに適切に燃料噴射量ずれの状態を判定することができる。
なお、上述したように、NOx濃度ずれに係る上記「所定の範囲」は、内燃機関のエミッション排出量を出来る限り低減する観点においてNOx濃度ずれがゼロであるとみなし得る範囲であればよく、特に制限されない。
本発明の内燃機関の制御装置の第8の態様として、
前記吸気酸素濃度関連パラメータ取得手段は、
前記内燃機関に吸入される空気の量である「吸入空気量」を前記吸気酸素濃度関連パラメータのうちの1つとして採用する、
ように構成され得る。
上記吸入空気量は、吸気酸素濃度に関連する代表的なパラメータの1つである。なお、吸気酸素濃度関連パラメータとして「吸入空気量」が採用されるとき、吸気酸素濃度関連パラメータ取得手段は「吸入空気量の測定値または推定値」を取得するように構成され得る。
この「吸入空気量の測定値または推定値」を取得する方法は、特に制限されない。吸入空気量の測定値または推定値を取得する方法として、例えば、吸気通路の所定位置に吸入空気量測定装置(例えば、熱線式エアフローメータおよびフラップ式エアフローメータなど)を設けると共に、その吸入空気量測定装置の出力値に基づいて吸入空気量の「測定値」を取得する方法が、採用され得る。さらに、例えば、機関回転速度、吸気通路内のガスの圧力、機関回転速度、および、スロットル弁の開度などの運転パラメータのうちの一または複数の運転パラメータに基づいて吸入空気量の「推定値」を取得する方法が、この方法として採用され得る。
本発明の内燃機関の制御装置の第9の態様において、
制御装置は、前記NOx参照濃度を、
前記燃料噴射量と、前記吸気酸素濃度と、に基づいて前記NOx濃度を推定する「NOx濃度推定モデル」を利用して定める、
ように構成され得る。
上述したように、発明者による種々の考察および種々の実験などによれば、NOx濃度と燃料噴射量と吸気酸素濃度との間に強い相関があることが確認されている。したがって、この相関に基づき、上記NOx濃度推定モデルが定められ得る。さらに、上述したように、NOx参照濃度は、燃料噴射量および吸気酸素濃度関連パラメータが正常であるときに取得されるNOx濃度に相当する。そこで、上記「第9の態様」におけるNOx参照濃度は、上記NOx濃度推定モデルを利用して定められるようになっている。これにより、例えば「実験などによってあらかじめ取得した所定の運転パラメータとNOx濃度との関係」を利用してNOx参照濃度を取得することに比べ、より簡便にNOx参照濃度を取得することができる。
本発明の内燃機関の制御装置の第10の態様において、
制御装置は、前記「第1の値」および前記「第2の値」を前記NOx濃度推定モデルに基づいて定める、ように構成され得る。
上述したように、本発明の内燃機関の制御装置(第1の内燃機関の制御装置および第2の内燃機関の制御装置の双方)は、「燃料噴射量の目標値が第1の値であるときのNOx濃度ずれ」および「吸気酸素濃度が第2の値であるときのNOx濃度ずれ」のうちの少なくとも一方を利用し、燃料噴射量ずれの状態および吸気酸素濃度関連パラメータずれの状態のうちの少なくとも一方を判定するようになっている。この第1の値および第2の値は、この判定を行うために出来る限り適切な値であることが望ましい。
上記NOx濃度推定モデルは、上述したように、燃料噴射量と吸気酸素濃度とNOx濃度との関係を表すモデルである。そこで、このNOx濃度推定モデルを利用することにより、「上記判定を行うために出来る限り適切な値である第1の値および第2の値」が容易に定められ得る。
例えば、「上記判定を行うために出来る限り適切な値」として、上記「第7の態様」において採用されている第1の値および第2の値が挙げられる。上述したように、この第1の値は所定の複数の要件が満たされるときの燃料噴射量であり、この第2の値は所定の複数の要件が満たされるときの吸気酸素濃度関連パラメータである。一般に、このように複数の要件が満たされるときの燃料噴射量および吸気酸素濃度関連パラメータを特定することは困難である。しかし、上記NOx濃度推定モデルを利用すれば、このような第1の値および第2の値であっても比較的容易に定められ得る。
図1は、本発明の第1実施形態に係る制御装置が適用される内燃機関の概略図である。
図2は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図3は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図4は、図1の内燃機関における、燃料噴射量の目標値と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図5は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図6は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図7は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図8は、本発明の第1実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図9は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図10は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図11は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図12は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図13は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図14は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図15は、本発明の第2実施形態に係る制御装置が適用される内燃機関における、吸気酸素濃度と、NOx濃度ずれと、燃料噴射量ずれの状態と、吸入空気量ずれの状態と、の関係を示すグラフである。
図16は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図17は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図18は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図19は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図20は、本発明の第2実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図21は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図22は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図23は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
図24は、本発明の第3実施形態に係る制御装置のCPUが実行するルーチンを示したフローチャートである。
以下、本発明による内燃機関の制御装置の各実施形態について、図面を参照しながら説明する。
(第1実施形態)
<装置の概要>
図1は、本発明の第1の実施形態に係る制御装置(以下、「第1装置」とも称呼する。)を内燃機関10に適用したシステムの概略構成を示している。内燃機関10は、第1気筒〜第4気筒の4つの気筒を有する4気筒ディーゼル機関である。以下、便宜上、「内燃機関」を単に「機関」とも称呼する。
この機関10は、図1に示すように、燃料噴射(供給)系統を含むエンジン本体20、エンジン本体20に空気を導入するための吸気系統30、エンジン本体20から排出されるガスを機関10の外部に放出するための排気系統40、排ガスを排気系統40から吸気系統30に還流させるためのEGR装置50、および、排ガスのエネルギによって駆動されてエンジン本体20に導入される空気を圧縮する過給装置60、を備えている。
エンジン本体20は、吸気系統30および排気系統40が連結されたシリンダヘッド21を有している。このシリンダヘッド21は、各気筒に対応するように各気筒の上部に設けられた複数の燃料噴射装置22を有している。各燃料噴射装置22は、図示しない燃料タンクと接続されており、電気制御装置80からの指示信号に応じて各気筒の燃焼室内に燃料を噴射するようになっている。
吸気系統30は、シリンダヘッド21に形成された図示しない吸気ポートを介して各気筒に連通されたインテークマニホールド31、インテークマニホールド31の上流側の集合部に接続された吸気管32、吸気管32内の開口断面積を可変とするスロットル弁(吸気絞り弁)33、電気制御装置80からの指示信号に応じてスロットル弁33を回転駆動するスロットル弁アクチュエータ33a、スロットル弁33の上流側において吸気管32に設けられたインタークーラ34、および、インタークーラ34の上流側に設けられた過給装置60よりも上流側の吸気管32の端部に設けられたエアクリーナ35、を有している。インテークマニホールド31および吸気管32は、吸気通路を構成している。
排気系統40は、シリンダヘッド21に形成された図示しない排気ポートを介して各気筒に連通されたエキゾーストマニホールド41、エキゾーストマニホールド41の下流側の集合部に接続された排気管42、および、排気管42に設けられた過給装置60よりも下流側の排気管42に設けられた排ガス浄化用触媒(DPNR)43、を有している。エキゾーストマニホールド41および排気管42は、排気通路を構成している。
EGR装置50は、排ガスをエキゾーストマニホールド41からインテークマニホールド31へと還流させる通路(EGR通路)を構成する排気還流管51、排気還流管51に介装されたEGRガス冷却装置(EGRクーラ)52、および、排気還流管51に介装されたEGR制御弁53、を有している。EGR制御弁53は、電気制御装置80からの指示信号に応じて還流される排ガス量(EGRガス量)を変更し得るようになっている。
過給装置60は、コンプレッサ61およびタービン62を有している。コンプレッサ61は吸気通路(吸気管32)に設けられている。タービン62は排気通路(排気管42)に設けられている。コンプレッサ61とタービン62とは、図示しないローターシャフトによって同軸回転可能に連結されている。これにより、タービン62が排ガスによって回転せしめられると、コンプレッサ61が回転すると共にコンプレッサ61に供給される空気が圧縮される(過給が行われる)。
この第1装置は、吸入空気量センサ71、吸気温度センサ72、吸気圧センサ73、クランクポジションセンサ74、NOx濃度センサ75、および、アクセル開度センサ76、を備えている。吸入空気量センサ71として、例えば、熱線式エアフローメータが採用され得る。
吸入空気量センサ71は、吸気通路(吸気管32)に設けられている。吸入空気量センサ71は、吸気管32内を流れると共に機関10に吸入される空気の質量流量である吸入空気量(すなわち、機関10に吸入される空気の質量)に応じた信号を出力するようになっている。この信号に基づき、吸入空気量の測定値Gamsrが取得される。
吸気温度センサ72は、吸気通路(吸気管32)に設けられている。吸気温度センサ72は、吸気管32内を流れると共に機関10に吸入される空気の温度である吸気温度に応じた信号を出力するようになっている。この信号に基づき、吸気温度が取得される。
吸気圧センサ73は、スロットル弁33の下流側において吸気管32に設けられている。吸気圧センサ73は、それが設けられている部位における吸気管32内の空気の圧力(すなわち、機関10の燃焼室に供給される空気の圧力。換言すると、過給装置60によってもたらされる過給圧)を表す信号を出力するようになっている。この信号に基づき、過給圧の測定値(以下、単に「過給圧Pim」とも称呼する。)が取得される。
クランクポジションセンサ74は、図示しないクランクシャフトの近傍に設けられている。クランクポジションセンサ74は、クランクシャフトが10°回転する毎に幅の狭いパルスを有する信号を出力すると共に、クランクシャフトが360°回転する毎に幅の広いパルスを有する信号を出力するようになっている。これら信号に基づき、クランクシャフトの単位時間あたりの回転数の測定値(以下、単に「機関回転速度NE」とも称呼される。)が取得される。
NOx濃度センサ75は、排ガス浄化用触媒(DPNR)43よりも上流側において排気通路(排気管42)に設けられている。NOx濃度センサ75は、排気管42を通過する排ガスのNOx濃度(質量濃度)に応じた信号を出力するようになっている。この信号に基づき、排ガスのNOx濃度の測定値NOxmsrが取得される。
アクセル開度センサ76は、機関10の操作者によって操作されるアクセルペダルAPに設けられている。アクセル開度センサ75は、このアクセルペダルAPの開度に応じた信号を出力するようになっている。この信号に基づき、アクセルペダル開度の測定値(以下、単に「アクセルペダル開度Accp」とも称呼する。)が取得される。
電気制御装置80は、CPU81、CPU81が実行するプログラム、テーブル(マップ)および定数などをあらかじめ記憶したROM82、CPU81が必要に応じて一時的にデータを格納するRAM83、電源が投入された状態でデータを格納すると共に格納したデータを電源が遮断されている間も保持するバックアップRAM84、ならびに、ADコンバータを含むインターフェース85、などを有する。CPU81、ROM82、RAM83、RAM84およびインターフェース85は、互いにバスで接続されている。
インターフェース85は、上記各センサなどと接続され、CPU81に上記各センサなどから出力される信号を供給するようになっている。さらに、インターフェース85は、CPU81の指示に応じて、燃料噴射装置22、スロットル弁アクチュエータ33a、および、EGR制御弁53などに駆動信号(指示信号)を送出するようになっている。
<装置の作動の概要>
以下、上述したように構成された第1装置の作動の概要について説明する。
まず、第1装置は、上記各センサから出力される信号に基づき、所定の運転パラメータ(吸入空気量の測定値Gamsr、過給圧Pim、機関回転速度NE、および、排ガスのNOx濃度の測定値NOxmsr)を取得する。さらに、第1装置は、所定の運転パラメータに基づいて定まるEGR率の目標値Regrtgtと、その実際値Regractと、が一致するように、スロットル弁33およびEGR制御弁53を制御する。加えて、第1装置は、所定の運転パラメータに基づき、「燃料噴射量の目標値Qtgt」を決定する。
次いで、第1装置は、吸入空気量の測定値Gamsr、EGR率の目標値Regrtgtおよび燃料噴射量の目標値Qtgtに基づき、気筒内に吸入されるガスの酸素濃度である吸気酸素濃度Oconを取得(算出)する。
一方、第1装置は、あらかじめ実験などによって「機関10と同一の構成を備える機関であって、燃料噴射量の目標値Qtgtとその実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrとその実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと吸気酸素濃度OconとNOx濃度との関係MapNOxref(Qtgt,Ocon)」を取得している。第1装置は、この関係MapNOxref(Qtgt,Ocon)に実際の燃料噴射量の目標値Qtgtおよび吸気酸素濃度Oconを適用することにより、NOx参照濃度NOxrefを取得する。
以下、便宜上、「燃料噴射量の目標値Qtgtとその実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrとその実際値Gaactとが一致している」ことを、「燃料噴射量および吸入空気量が正常である」とも称呼する。
そして、第1装置は、「NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値(NOxmsr−NOxref)」を「NOx参照濃度NOxref」によって除算して得られる値(すなわち、NOx参照濃度NOxrefに対する上記減算して得られる値NOxmsr−NOxrefの割合)を、「NOx濃度ずれΔNOx」として取得する。
第1装置は、機関10が運転されている期間中、燃料噴射量の目標値Qtgtと、NOx濃度ずれΔNOxと、を対応させながら取得し続ける。そして、第1装置は、取得されたこれら値に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。以下、便宜上、「燃料噴射量ずれの状態および吸入空気量ずれの状態の判定」を、単に「状態判定」とも称呼する。
第1装置において、燃料噴射量ずれとは、燃料噴射量の目標値Qtgtに対する燃料噴射量の実際値Gaactの差を意味する。具体的には、「燃料噴射量の実際値Qactから燃料噴射量の目標値Qtgtを減算して得られる値(Qact−Qtgt)」を「燃料噴射量の目標値Qtgt」によって除算して得られる値(すなわち、燃料噴射量の目標値Qtgtに対する上記減算して得られる値Qact−Qtgtの割合)が、「燃料噴射量ずれ」として取り扱われる。
さらに、第1装置において、吸入空気量ずれとは、吸入空気量の実際値Gaactに対する吸入空気量の測定値Gamsrの差を意味する。具体的には、「吸入空気量の測定値Gamsrから吸入空気量の実際値Gaactを減算して得られる値(Gamsr−Gaact)」を「吸入空気量の実際値Gaact」によって除算して得られる値(すなわち、吸入空気量の実際値Gaactに対する上記減算して得られる値Gamsr−Gaactの割合)が、「吸入空気量ずれ」として取り扱われる。
第1装置は、上記状態判定の結果に応じて、燃料噴射量ずれの大きさが小さくなるように燃料噴射量の目標値Qtgtを所定の補正量だけ補正する。さらに、第1装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさが小さくなるように吸入空気量の測定値Gamsrを所定の補正量だけ補正する。加えて、第1装置は、これら補正を、燃料噴射量ずれがゼロとなり且つ吸入空気量ずれがゼロとなるまで繰り返す。
第1装置は、燃料噴射量の目標値Qtgtの補正量の積算値が所定の閾値よりも大きくなると、「燃料噴射装置22が異常である」ことを表示装置など(図1において図示省略。)に表示する。さらに、第1装置は、吸入空気量の測定値Gamsrの補正量の積算値が所定の閾値よりも大きくなると、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第1装置の作動の概要である。
<内燃機関の制御方法>
次いで、第1装置の具体的な作動についての説明を行う前に、第1装置に採用されている機関10の制御方法につき、下記説明1−1〜1−4の順序に従って説明する。
(説明1−1)NOx濃度推定モデルについての説明
(説明1−2)吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明
(説明1−3)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
(説明1−4)状態判定の結果に応じた補正についての説明
(説明1−1)NOx濃度推定モデルについての説明
まず、周知のように、排気再循環(EGR)が行われる内燃機関における吸気酸素濃度Oconは、下記(1)式に示すように近似される。下記(1)式において、数値23.2は標準状態における空気の酸素濃度(質量パーセント濃度)を、RegrはEGR率を、λは空気過剰率を、表す。なお、周知のように、標準状態とは、温度がゼロ℃(273.15K)であり且つ圧力が1bar(10Pa)である状態を意味する。
Ocon=23.2(1−Regr/λ) ・・・(1)
上記(1)式において、空気過剰率λは下記(2)式に示すように定義される。下記(2)式において、abyfactは実際の空燃比を、abyfstoichは理論空燃比(≒14.7)を、表す。
λ=abyfact/abyfstoich ・・・(2)
上記(2)式において、実際の空燃比abyfactは下記(3)式に示すように定義される。下記(3)式において、Gaは吸入空気量を、Qは燃料噴射量を、表す。
abyfact=Ga/Q ・・・(3)
なお、周知のように、EGR率Regrは、下記(4)式に示すように定義される。下記(4)式において、Gcylは内燃機関の運転状態(機関回転速度および過給圧など)に応じて定まる気筒内に吸入されるガスの総量を、Gaは上述したように吸入空気量を、表す。
Regr=(Gcyl−Ga)/Gcyl ・・・(4)
このように、内燃機関における吸気酸素濃度Oconは、吸気酸素濃度に関連するパラメータ(すなわち、EGR率Regr、吸入空気量Ga、および、燃料噴射量Q)に基づいて定まる。
次いで、周知の燃焼モデル(サーマルNOx生成機構)の1つである拡大ゼルドヴィッチ機構によれば、燃焼過程において生成される窒素酸化物の濃度は、燃焼に供されるガスの窒素濃度および酸素濃度、ならびに、燃焼時の火炎温度の影響を受ける。発明者は、この拡大ゼルドヴィッチ機構をさらに詳細に検討した。具体的に述べると、この拡大ゼルドヴィッチ機構を内燃機関に適用する場合、燃焼過程における上記ガスの窒素濃度の変化量は非常に小さいので、このガスの窒素濃度は燃焼過程において実質的に変化しない(すなわち、所定の固定値とみなす)と仮定し得る。さらに、この場合、上記ガスの酸素濃度は、内燃機関の吸気酸素濃度Oconを所定の回数だけ累乗して得られる値に相当すると仮定し得る。加えて、この場合、上記燃焼時の火炎温度は、吸気酸素濃度Oconおよび燃料噴射量Qに比例すると仮定し得る。
なお、燃料に含まれる窒素分(窒素化合物)に起因して生成されるフューエルNOxの量、および、燃料に含まれる炭素分および水素分と空気に含まれる窒素とが反応して生成される中間体(シアン化水素など)に起因して生成されるプロンプトNOxの量は、上記窒素酸化物(サーマルNOx)の量に対して小さいので、実質的にゼロであると仮定し得る。
発明者は、これら仮定に基づいて種々の考察および種々の実験などを行った。それら考察および実験などによれば、内燃機関の排ガスのNOx濃度NOxconは下記(5)式にて表しめられることが確認された。下記(5)式において、eは自然対数の底(ネイピア数)を、Oconは上記(1)式にて示される吸気酸素濃度を、Qは上述したように燃料噴射量を、指数A、BおよびCのそれぞれは内燃機関の構造などに応じて定まる固定値を、表す。なお、指数A、BおよびCは、個別の内燃機関ごとに定まる固有の値であって、実験などによって定められ得る値である。
NOxcon=e^A×Ocon^B×Q^C ・・・(5)
このように、内燃機関の排ガスのNOx濃度NOxconと、吸気酸素濃度Oconと、燃料噴射量Qと、の間に強い相関があることが確認された。換言すると、内燃機関の排ガスのNOx濃度NOxconは吸気酸素濃度Oconおよび燃料噴射量Qに基づいて定まることが確認された。
さらに、発明者によるさらなる考察および実験などによれば、一般的な内燃機関において、「吸気酸素濃度OconとNOx濃度NOxconとの相関の程度を表す指数B」と「燃料噴射量QとNOx濃度NOxconとの相関の程度を表す指数C」とは異なることが確認された。換言すると、吸気酸素濃度OconがNOx濃度NOxconに与える影響は燃料噴射量QがNOx濃度NOxconに与える影響とは異なることが確認された。上記(5)式は、「NOx濃度推定モデル」として第1装置に採用される。
(説明1−2)吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明
上述したように、第1装置は、「燃料噴射量および吸入空気量が正常である」ことが確認されている機関の排ガスのNOx濃度を、NOx参照濃度NOxrefとして取得している。よって、機関10に吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じると、NOx濃度センサ75によって測定されるNOx濃度NOxconはこのNOx参照濃度NOxrefと一致しない。すなわち、「NOx濃度ずれΔNOx」が生じる。
より具体的に述べると、上記NOx濃度推定モデルに示すように、NOx濃度NOxconは、吸気酸素濃度Oconおよび燃料噴射量Qの影響を受ける(上記(5)式を参照。)。さらに、この吸気酸素濃度Oconは、EGR率Regr、吸入空気量Gaおよび燃料噴射量Qの影響を受ける(上記(1)式〜上記(4)式を参照。)。加えて、EGR率Regrは、吸入空気量Gaの影響を受ける(上記(4)式を参照。)。
「吸入空気量ずれ」が生じた場合、吸入空気量の測定値Gamsrは実際値Gaactと一致しない。そのため、見掛け上のEGR率(すなわち、上記(4)式にて算出されるEGR率の計算値)Regrappが目標値Regrtgtと一致しても、EGR率の実際値Regractは目標値Regrtgtと一致しない。このように、この場合、吸入空気量の測定値Gamsrが実際値Gaactと一致せず且つEGR率の実際値RegractがEGR率の目標値Regrtgtと一致しないので、見掛け上の吸気酸素濃度(すなわち、上記(1)式にて算出される吸気酸素濃度の計算値)Oconappは吸気酸素濃度の実際値Oconactと一致しない。
これらの結果、「吸気酸素濃度の実際値Oconact」および「燃料噴射量の実際値Qact」に基づいて定まる実際のNOx濃度(NOx濃度センサ75によって測定されるNOx濃度)NOxconは、「見掛け上の吸気酸素濃度Oconapp」および「燃料噴射量の目標値Qtgt」を上記関係MapNOxref(Qtgt,Ocon)に適用することによって定まるNOx参照濃度NOxrefと、一致しない。すなわち、NOx濃度ずれΔNOxが生じる。
一方、「燃料噴射量ずれ」が生じた場合、燃料噴射量の実際値Qactは目標値Qtgtと一致しない。この場合、EGR率と燃料噴射量とは直接的には関連しないので(上記(4)式を参照。)、EGR率の実際値Regractは目標値Regrtgtと一致する。ところが、この場合、燃料噴射量の実際値Qactが目標値Qtgtと一致しないので、見掛け上の吸気酸素濃度Oconappは吸気酸素濃度の実際値Oconactと一致しない。
この結果、「吸気酸素濃度の実際値Oconact」および「燃料噴射量の実際値Qact」に基づいて定まる実際のNOx濃度NOxconは、「見掛け上の吸気酸素濃度Oconapp」および「燃料噴射量の目標値Qtgt」を上記関係MapNOxref(Qtgt,Ocon)に適用することによって定まるNOx参照濃度NOxrefと、一致しない。すなわち、NOx濃度ずれΔNOxが生じる。
以上が、吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由である。
(説明1−3)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
上述したように、吸入空気量ずれおよび燃料噴射量ずれの双方がNOx濃度ずれに影響を与える。第1装置は、この影響に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態のうちの少なくとも一方を判定する。以下、上記NOx濃度推定モデルを用いて、下記条件1−A〜1−Dのうちの「一または複数」が成立する場合における「燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係」について説明する。
(条件1−A)吸入空気量の実際値Gaactが測定値Gamsrよりも小さい。
(条件1−B)吸入空気量の実際値Gaactが測定値Gamsrよりも大きい。
(条件1−C)燃料噴射量の実際値Qactが目標値Qtgtよりも小さい。
(条件1−D)燃料噴射量の実際値Qactが目標値Qtgtよりも大きい。
以下、条件1−Aに示す状態を「吸入空気量ずれが負である」と、条件1−Bに示す状態を「吸入空気量ずれが正である」と、条件1−Cに示す状態を「燃料噴射量ずれが負である」と、条件1−Dに示す状態を「燃料噴射量ずれが正である」と、称呼する。さらに、以下、便宜上、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係を「第1の関係R1(Qtgt,ΔNOx)」と称呼する。
さらに、この説明1−3において、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータ(例えば、気筒内に吸入されるガスの総量Gcylに影響を与える機関回転速度NEおよび過給圧Pim、EGR率の目標値Regrtgt、ならびに、気筒内に燃料を噴射する時期である燃料噴射時期など)は、所定の値に固定されていると仮定する。すなわち、吸入空気量ずれおよび燃料噴射量ずれ「のみ」がNOx濃度ずれΔNOxに影響を与えると仮定する。
まず、上記条件1−A〜1−Dのうちの「1つ」が成立する場合における第1の関係R1(Qtgt,ΔNOx)について説明する。
図2(A)は、条件1−A〜条件1−Dのうちの1つが成立する場合における第1の関係R1(Qtgt,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。NOx濃度推定モデルにおける指数A、BおよびC(上記(5)式を参照。)は、「機関10と同一の構成を有する機関であって、燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値NOxmsrと実際値Gaactとが一致していることが確認されている機関」を用いた実験によって定められた。
図2(A)において、Gamsr(−)は、条件1−Aが成立する場合(吸入空気量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)は、条件1−Bが成立する場合(吸入空気量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Qact(−)は、条件1−Cが成立する場合における(燃料噴射量ずれが負である場合)の第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Qact(+)は、条件1−Dが成立する場合(燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。
まず、「条件1−Aのみ」が成立する場合、曲線Gamsr(−)に示すように、少なくとも燃料噴射量の目標値Qtgtが所定値Aから所定値Bである範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件1−Bのみ」が成立する場合、曲線Gamsr(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
加えて、「条件1−Cのみ」が成立する場合、曲線Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件1−Dのみ」が成立する場合、曲線Qact(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
このように、条件1−Aが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Bが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Cが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、条件1−Dが成立する場合における第1の関係R1(Qtgt,ΔNOx)と、は異なる。
所定値Aおよび所定値Bのそれぞれは、上述したように条件1−A〜1−Dのうちの一の条件が成立した場合に得られる第1の関係R1(Qtgt,ΔNOx)がその一の条件とは異なる他の条件が成立した場合に得られる第1の関係R1(Qtgt,ΔNOx)と異なることとなる適値に設定されればよい。
以上、条件1−A〜1−Dのうちの「1つ」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明した。
次いで、上記条件1−A〜1−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明する。
図2(B)は、条件1−A〜1−Dのうちの複数が成立する場合における第1の関係R1(Qtgt,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。
図2(B)において、Gamsr(−)+Qact(+)は、条件1−Aおよび条件1−Dが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(−)+Qact(−)は、条件1−Aおよび条件1−Cが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(+)は、条件1−Bおよび条件1−Dが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが正である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(−)は、条件1−Bおよび条件1−Cが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが負である場合)における第1の関係R1(Qtgt,ΔNOx)を示す曲線を表す。
なお、条件1−A(吸入空気量ずれが負である状態)と、条件1−B(吸入空気量ずれが正である状態)と、は同時に成立し得ない。さらに、条件1−C(燃料噴射量ずれが負である状態)と、条件1−D(燃料噴射量ずれが正である状態)と、は同時に成立し得ない。よって、図2(B)に示す4つの組み合わせが、成立し得る組み合わせの全てである。
まず、「条件1−Aおよび条件1−D」が成立する場合、曲線Gamsr(−)+Qact(+)に示すように、少なくとも燃料噴射量の目標値Qtgtが所定値Aから所定値Bである範囲内(A≦Qtgt≦B)において燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件1−Aおよび条件1−C」が成立する場合、曲線Gamsr(−)+Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」である。
加えて、「条件1−Bおよび条件1−D」が成立する場合、曲線Gamsr(+)+Qact(+)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件1−Bおよび条件1−C」が成立する場合、曲線Gamsr(+)+Qact(−)に示すように、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「負」である。
このように、条件1−Aおよび条件1−Dが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、条件1−Aおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。さらに、条件1−Bおよび条件1−Dが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、条件1−Bおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。加えて、条件1−Aおよび条件1−D、あるいは、条件1−Aおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)は、条件1−Bおよび条件1−D、あるいは、条件1−Bおよび条件1−Cが成立する場合の第1の関係R1(Qtgt,ΔNOx)と、異なる。
以上、条件1−A〜1−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第1の関係R1(Qtgt,ΔNOx)について説明した。
なお、「条件1−A〜1−Dのいずれも成立しない」場合(すなわち、吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合)、実際のNOx濃度NOxconはNOx濃度NOxconと一致する。よって、この場合、NOx濃度ずれΔNOxは、燃料噴射量の目標値Qtgtにかかわらずゼロである。すなわち、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「ゼロ」である。
ところで、機関10を構成する部材のうち「吸入空気量および燃料噴射量と関連しない部材」が正常に作動しない場合においても、NOx濃度ずれは生じ得る。例えば、NOx濃度センサ75が正常に作動しなし場合(実際のNOx濃度とは異なるNOx濃度を表す出力値を出力する場合)、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロであっても、NOx濃度ずれが生じる。以下、このような状態を「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と称呼する。
この場合、図3の曲線Other(+)または曲線Other(−)に示すように、燃料噴射量の目標値QtgtにかかわらずNOx濃度ずれΔNOxの大きさは変化しない。すなわち、少なくとも上記範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」である。さらに、この場合、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxは「正」または「負」である。
このように、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件1−Aおよび条件1−Bを参照。)、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件1−Cおよび条件1−Dを参照。)、により、第1の関係R1(Qtgt,ΔNOx)は異なる。換言すると、第1の関係R1(Qtgt,ΔNOx)に基づき、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、を判定することができる。さらに、第1の関係R1(Qtgt,ΔNOx)に基づき、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれ」が生じているか否か、を判定することができる。
具体的に述べると、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図2(A)の曲線Gamsr(−)、ならびに、図2(B)の曲線Gamsr(−)+Qact(+)および曲線Gamsr(−)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが負である」と判定することができる。
さらに、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図2(A)の曲線Gamsr(+)、ならびに、図2(B)の曲線Gamsr(+)+Qact(+)および曲線Gamsr(+)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが正である」と判定することができる。
加えて、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図2(A)の曲線Qact(+)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが正である」と判定することができる。
さらに加えて、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図2(A)の曲線Qact(−)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが負である」と判定することができる。
なお、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「ゼロ」である関係」である場合、「吸入空気量ずれがゼロであり、かつ、燃料噴射量ずれがゼロである」と判定することができる。
さらに、第1の関係R1(Qtgt,ΔNOx)が「所定範囲内(A≦Qtgt≦B)において、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOxが「正」または「負」である関係」である場合、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定することができる。
このように、第1装置は、第1の関係R1(Qtgt,ΔNOx)に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。以下、上述した燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する方法を、「第1状態判定方法」とも称呼する。
(説明1−4)状態判定の結果に応じた補正についての説明
第1装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさを低減するように吸入空気量の測定値Gamsrを補正し、燃料噴射量ずれの大きさを低減するように燃料噴射量の目標値Qtgtを補正する。
具体的に述べると、第1装置は、吸入空気量ずれが「正」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「減少」するように補正する。一方、第1装置は、吸入空気量ずれが「負」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「増大」するように補正する。これら補正にて用いられる「補正量」はNOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図4(A)に示すように、燃料噴射量の目標値Qtgtが所定値AであるときのNOx濃度ずれΔNOx(A)および燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOx(B)の双方が「正」であって、NOx濃度ずれΔNOx(A)よりもNOx濃度ずれΔNOx(B)が大きい場合、第1装置は、上記説明1−3にて述べたように、「少なくとも吸入空気量ずれが負である」と判定する。
この場合、第1装置は、例えば、NOx濃度ずれΔNOx(A)とNOx濃度ずれΔNOx(B)との平均値に基づいて上記「補正量」を決定する。そして、第1装置は、吸入空気量の測定値Gamsrをこの補正量だけ「増大」するように補正する。具体的に述べると、第1装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、吸入空気量センサ71の出力値(出力電圧)と吸入空気量の測定値Gamsrとの関係(マップ)を、測定値Gamsrが増大されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
さらに、第1装置は、燃料噴射量ずれが「正」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「減少」するように補正する。一方、第1装置は、燃料噴射量ずれが「負」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「増大」するように補正する。これら補正において用いられる「補正量」は、NOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図4(B)に示すように、燃料噴射量の目標値Qtgtが所定値AであるときのNOx濃度ずれΔNOx(A)および燃料噴射量の目標値Qtgtが所定値BであるときのNOx濃度ずれΔNOx(B)の双方が「正」であって、NOx濃度ずれΔNOx(A)よりもNOx濃度ずれΔNOx(B)が小さい場合、第1装置は、上記説明1−3にて述べたように、「燃料噴射量ずれが正である」と判定する。
この場合、第1装置は、例えば、NOx濃度ずれΔNOx(A)とNOx濃度ずれΔNOx(B)との平均値に基づいて上記「補正量」を決定する。そして、第1装置は、燃料噴射量の目標値Qtgtをこの補正量だけ「減少」するように補正する。具体的に述べると、第1装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、燃料噴射装置22の燃料噴射時間と燃料噴射量の目標値Qtgtとの関係(マップ)を、目標値Qtgtが減少されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
このように燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrが補正されることにより、NOx濃度ずれΔNOxの大きさが低減される。
ところで、上記説明1−3にて述べたように、第1装置は、所定の条件が成立する場合、「少なくとも」吸入空気量ずれが負であると判定する(条件1−Aが成立する場合、条件1−Aおよび条件1−Cが成立する場合、ならびに、条件1−Aおよび条件1−Dが成立する場合)。この場合、第1装置は、「吸入空気量ずれが負である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが正である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが負である」か、を区別して判定しない。すなわち、吸入空気量ずれ「のみ」が生じているか、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じているか、は判定されない。
しかし、上記説明1−4にて述べたように、上記いずれの条件が成立する場合であっても、第1装置は「吸入空気量ずれ」を低減するように吸入空気量の測定値Gamsrを補正する。そのため、吸入空気量ずれ「のみ」が生じている場合、この補正によってその吸入空気量ずれが低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、この補正によってその「双方」のうちの吸入空気量ずれが低減される。そして、例えば繰り返しこの補正が行われることによって吸入空気量ずれが十分に低減されれば、それら「双方」のうちの燃料噴射量ずれ「のみ」が残る。燃料噴射量ずれ「のみ」が残れば、第1装置は、燃料噴射量ずれが生じていると判定すると共にその燃料噴射量ずれを低減するように燃料噴射量の目標値Qtgtを補正する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
このように、上記いずれの場合(吸入空気量ずれ「のみ」が生じている場合、および、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合)であっても、第1装置が繰り返し補正を行うことにより、NOx濃度ずれΔNOxが低減される。なお、上記説明から理解されるように、第1装置が「少なくとも吸入空気量ずれが「正」である」と判定する場合であっても、上記同様、第1装置が繰り返し補正を行うことによってNOx濃度ずれΔNOxの大きさが低減される。
なお、第1装置は、「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。さらに、第1装置は、「燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。
以上、説明1−1〜1−4にて述べたように、第1装置は燃料噴射量ずれの状態および吸入空気量ずれの状態を判定すると共に、その判定の結果に応じてNOx濃度ずれΔNOxの大きさを低減するように機関10を制御する。
ところで、上述したように、上記NOx濃度推定モデルにおける指数A、BおよびCは、NOx濃度推定モデルが適用される内燃機関の構成等に応じて定められる。そのため、機関10と異なる構成を有する他の機関に上記NOx濃度推定モデルが適用される場合、他の機関における指数A、BおよびCは、機関10における指数A、BおよびCと異なる場合がある。この場合、機関10における第1の関係R1(Qtgt,ΔNOx)と、他の機関における第1の関係R1(Qtgt,ΔNOx)と、は異なる。しかし、上記説明から明らかなように、上記同様の考え方によって他の機関における燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
<実際の作動>
以下、第1装置の実際の作動について説明する。
第1装置において、CPU81は、図5〜図11にフローチャートによって示した各ルーチンを所定のタイミング毎に実行するようになっている。CPU81は、これらルーチンにおいて、第1燃料過多噴射フラグXQP1、第1燃料過少噴射フラグXQN1、第1吸入空気量過多検出フラグXGAP1、第1吸入空気量過少検出フラグXGAN1、および、第1他異常発生フラグXOTH1を用いる。
第1燃料過多噴射フラグXQP1は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第1燃料過多噴射フラグXQP1は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第1燃料過少噴射フラグXQN1は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第1燃料過少噴射フラグXQN1は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第1吸入空気量過多検出フラグXGAP1は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第1吸入空気量過多検出フラグXGAP1は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第1吸入空気量過少検出フラグXGAN1は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第1吸入空気量過多検出フラグXGAP1は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第1他異常発生フラグXOTH1は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第1他異常発生フラグXOTH1は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値は、バックアップRAM84に格納される。さらに、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。加えて、第1他異常発生フラグXOTH1の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第1初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図5にフローチャートによって示した「第1燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。以下、便宜上、クランク角が圧縮上死点前の所定クランク角θfに一致する圧縮行程中の気筒を、「燃料噴射気筒」とも称呼する。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図5に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図5のステップ500から処理を開始してステップ510に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ520に進み、現時点における第1燃料過多噴射フラグXQP1の値が「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ520にて「No」と判定してステップ530に進む。
CPU81は、ステップ530にて、現時点における第1燃料過少噴射フラグXQN1の値が「1」であるか否かを判定する。現時点における第1燃料過少噴射フラグXQN1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ530にて「No」と判定してステップ540に進む。
CPU81は、ステップ540にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図6にフローチャートによって示した「第1吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図6に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図6のステップ600から処理を開始してステップ610に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ620に進み、現時点における第1吸入空気量過多検出フラグXGAP1の値が「1」であるか否かを判定する。現時点における第1吸入空気量過多検出フラグXGAP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ620にて「No」と判定してステップ630に進む。
CPU81は、ステップ630にて、現時点における第1吸入空気量過少検出フラグXGAN1の値が「1」であるか否かを判定する。現時点における第1吸入空気量過少検出フラグXGAN1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ630にて「No」と判定してステップ695に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図7にフローチャートによって示した「EGR率制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、機関10の運転状態に応じてEGR率の目標値Regrtgtを決定する。さらに、CPU81は、このルーチンにて、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33およびEGR制御弁53を制御する。
具体的に述べると、CPU81は、所定のタイミングにて図7のステップ700から処理を開始してステップ710に進み、「アクセルペダル開度Accpと、機関回転速度NEと、EGR率の目標値Regrtgtと、の関係」をあらかじめ定めたEGR率目標値決定テーブルMapRegrtgt(NE,Accp)に現時点におけるアクセルペダル開度Accpと、機関回転速度NEと、を適用することにより、EGR率の目標値Regrtgtを決定する。このEGR率目標値決定テーブルMapRegrtgt(NE,Accp)において、EGR率の目標値Regrtgtは、エミッション排出量を出来る限り低減する観点における適値となるように、設計されている。
次いで、CPU81は、ステップ720に進み、EGR率の実際値Regractが上記目標値Regrtgtと一致するように、スロットル弁33の開度およびEGR制御弁53の開度を制御する。その後、CPU81は、ステップ795に進んで本ルーチンを一旦終了する。なお、EGR率の実際値Regractは、上記(4)式に示すように、機関回転速度NEおよび過給圧Pimなどに応じて定まる各気筒内に吸入されるガスの総量Gcylと、吸入空気量の測定値Gamsrと、に基づいて算出され得る。
さらに、CPU81は、所定時間が経過する毎に図8および図9に一連のフローチャートによって示した「第1状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、所定の条件が成立しているとき、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとを対応させながら取得する。さらに、CPU81は、このルーチンにより、所定の条件が成立しているとき、取得された燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、上記第1の関係R1(Qtgt,ΔNOx))に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
具体的に述べると、CPU81は、所定のタイミングにて図8のステップ800から処理を開始してステップ802に進み、現時点にて「NOx濃度を取得する条件(NOx濃度取得条件)」が成立するか否かを判定する。より具体的に述べると、CPU81は、ステップ802にて、以下の条件N−1−1〜N−1−5の全てが成立したとき、NOx濃度取得条件が成立すると判定する。換言すると、CPU81は、条件N−1−1〜N−1−5のうちの少なくとも1つが成立しないとき、NOx濃度取得条件が成立しないと判定する。
(条件N−1−1)NOx濃度センサ75の温度が所定の範囲内の値である。
(条件N−1−2)NOx濃度センサ75周辺のガスの圧力が所定の範囲内の値である。
(条件N−1−3)NOx濃度センサ75周辺の酸素濃度が所定の範囲内の値である。
(条件N−1−4)NOx濃度センサ75の出力値が所定の範囲内の値である。
(条件N−1−5)機関回転速度NE、過給圧Pim、EGR率の目標値Regrtgt、および、燃料噴射時期のそれぞれは、所定の固定値である。
条件N−1−1に係る所定の範囲は、NOx濃度センサ75が正常に作動することが可能である温度範囲に対応する。条件N−1−2に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能である圧力範囲に対応する。条件N−1−3に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能である酸素濃度範囲に対応する。条件N−1−4に係る所定の範囲は、NOx濃度センサ75がNOx濃度を適切に測定することが可能であるNOx濃度の範囲に対応する。
条件N−1−5に挙げられている機関回転速度NE、過給圧Pim、EGR率の目標値Qtgtおよび燃料噴射時期は、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータである。これらパラメータが所定の固定値であれば、燃料噴射量ずれの状態および吸入空気量ずれの状態がより正確に判定せしめられる。
CPU81は、NOx濃度取得条件が「成立していない」とき、ステップ802にて「No」と判定し、接続指標Bを経由して図9のステップ895に直接進んで本ルーチンを一旦終了する。このように、NOx濃度取得条件が「成立していない」とき、NOx濃度の測定値NOxmsrは取得されない。
これに対し、CPU81は、NOx濃度取得条件が「成立している」とき、ステップ802にて「Yes」と判定してステップ804に進む。CPU81は、ステップ804にてNOx濃度センサ75の出力値に基づいてNOx濃度の測定値NOxmsrを取得し、ステップ806に進む。
CPU81は、ステップ806にて、「吸入空気量の測定値Gamsrと、燃料噴射量の目標値Qtgtと、空気過剰率λと、の関係」をあらかじめ定めた空気過剰率算出関数Fnλ(Gamsr,Qtgt)に、現時点における吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを適用することにより、空気過剰率λを算出する(上記(2)式および上記(3)式を参照。)。
次いで、CPU81は、ステップ808に進み、「EGR率の目標値Regrtgtと、空気過剰率λと、吸気酸素濃度Oconと、の関係」をあらかじめ定めた吸気酸素濃度算出関数FnOcon(Regrtgt,λ)に、現時点におけるEGR率の目標値Regrtgtと、空気過剰率λと、を適用することにより、吸気酸素濃度Oconを算出する(上記(1)式を参照。)。
次いで、CPU81は、ステップ810に進み、「燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrと実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、NOx濃度と、の関係」をあらかじめ定めたMapNOxref(Qtgt,Ocon)に、現時点における燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、を適用して得られる値を、NOx参照濃度NOxrefとして取得する。
次いで、CPU81は、ステップ812に進み、下記(6)式にNOx濃度の測定値NOxmsrとNOx参照濃度NOxrefとを適用することにより、NOx濃度ずれΔNOxを取得する。すなわち、ステップ812にて、「NOx参照濃度NOxrefに対する、NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値の、割合」が、NOx濃度ずれΔNOxとして取得される。
ΔNOx=(NOxmsr−NOxref)/NOxref ・・・(6)
さらに、CPU81は、上述したように取得したNOx濃度ずれΔNOxを、燃料噴射量の目標値Qtgtと対応させながら(すなわち、NOx濃度ずれΔNOxと燃料噴射量の目標値Qtgtとを組み合わせたデータを)、ROM82に格納する。
次いで、CPU81は、接続指標Aを経由して図9のステップ814に進み、現時点にて「燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する条件(状態判定条件)」が成立しているか否かを判定する。より具体的に述べると、CPU81は、ステップ814にて、以下の条件S−1が成立したとき、状態判定条件が成立すると判定する。換言すると、CPU81は、条件S−1が成立しないとき、状態判定条件が成立しないと判定する。
(条件S−1)NOx濃度ずれΔNOxと燃料噴射量の目標値Qtgtとを組み合わせたデータであって燃料噴射量の目標値Qtgtが所定の範囲内の値であるデータが、少なくとも2つ取得されている。
上記「所定の範囲」は、上述した第1状態判定方法における「所定範囲(A≦Qtgt≦B)」に相当する。燃料噴射量の目標値Qtgtがこの所定の範囲内の値であるデータが少なくとも2つ取得されていれば、第1状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
CPU81は、状態判定条件が「成立している」とき、ステップ814にて「Yes」と判定し、ステップ816に進む。そして、CPU81は、ステップ816〜ステップ842に示す処理によって燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。これに対し、CPU81は、状態判定条件が「成立していない」とき、ステップ814にて「No」と判定し、ステップ895に直接進んで本ルーチンを一旦終了する。このように、状態判定条件が「成立していない」とき、燃料噴射量ずれの状態および吸入空気量ずれの状態は判定されない。
以下、現時点にて、状態判定条件が「成立している」と仮定すると共に、ステップ816〜ステップ842にて実行される処理について場合を分けてより詳細に説明する。
以下の説明においては、条件S−1に該当するデータとして、燃料噴射量の目標値が「第1の目標値Qtgt1」であるデータ、および、その目標値が「第1の目標値Qtgtよりも大きい第2の目標値Qtgt2」であるデータが採用される。以下、燃料噴射量の目標値が第1の目標値Qtgt1であるときのNOx濃度ずれを「第1NOx濃度ずれΔNOx(Qtgt1)」と、燃料噴射量の目標値が第2の目標値Qtgt2(Qtgt2>Qtgt1)であるときのNOx濃度ずれを「第2NOx濃度ずれΔNOx(Qtgt2)」と、称呼する。なお、第1の目標値Qtgt1および第2の目標値Qtgt2は、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定するために適切な値となるように、上述したNOx濃度推定モデルに基づいて定められる。
(場合1−1)燃料噴射量ずれが「正」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「大きい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」である。
CPU81は、ステップ816にて、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は第2NOx濃度ずれΔNOx(Qtgt2)の値よりも大きいので、CPU81は、ステップ816にて「Yes」と判定してステップ818に進む。
CPU81は、ステップ818にて、第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」であるので、CPU81は、ステップ818にて「Yes」と判定してステップ820に進む。
CPU81は、ステップ820にて、第1燃料過多噴射フラグXQP1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図10にフローチャートによって示した「第1NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1NOx濃度ずれΔNOx(Qtgt1)の値と、第2NOx濃度ずれΔNOx(Qtgt2)の値と、の平均値を取得する。以下、便宜上、この平均値を「第1NOx濃度平均ずれΔNOxave1」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始してステップ1010に進み、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の少なくとも1つが「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定してステップ1020に進む。
CPU81は、ステップ1020にて、下記(7)式に第1NOx濃度ずれΔNOx(Qtgt1)の値および第2NOx濃度ずれΔNOx(Qtgt2)の値を適用することにより、第1NOx濃度平均ずれΔNOxave1を取得する。
ΔNOxave1={ΔNOx(Qtgt1)+ΔNOx(Qtgt2)}/2 ・・・(7)
その後、CPU81は、ステップ1095に進んで本ルーチンを一旦終了する。
なお、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の全てが「0」であれば、CPU81は、ステップ1010にて「No」と判定してステップ1095に進み、本ルーチンを一旦終了する。すなわち、第1NOx濃度平均ずれΔNOxave1は取得されない。
場合1−1の説明に戻ると、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510を経由してステップ520に進む。現時点における第1燃料過多噴射フラグXQP1の値は「1」であるので、CPU81は、ステップ520にて「Yes」と判定し、ステップ550に進む。
CPU81は、ステップ550にて、下記(8)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(8)式において、K1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=K1・|ΔNOxave1| ・・・(8)
次いで、CPU81は、ステップ560に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ570に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ580に進み、第1燃料過多噴射フラグXQP1の値に「0」を格納し、第1燃料過少噴射フラグXQN1の値に「0」を格納する。
次いで、CPU81は、ステップ540に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが正であるとき(すなわち、第1燃料過多噴射フラグXQP1の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが正である場合に実行される処理である。
(場合1−2)少なくとも吸入空気量ずれが「正」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「大きい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「負」である。
よって、この場合、CPU81は、図9のステップ816にて「Yes」と判定してステップ818に進む。さらに、CPU81は、ステップ818にて「No」と判定し、ステップ822に進む。
CPU81は、ステップ822にて、第1吸入空気量過多検出フラグXGAP1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定してステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610を経由してステップ620に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であるので、CPU81は、ステップ620にて「Yes」と判定してステップ640に進む。
CPU81は、ステップ640にて、下記(9)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(9)式において、K3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=K3・|ΔNOxave1| ・・・(9)
次いで、CPU81は、ステップ650に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ660に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ670に進み、第1吸入空気量過多検出フラグXGAP1の値に「0」を格納し、第1吸入空気量過少検出フラグXGAN1の値に「0」を格納する。その後、CPU81は、ステップ695に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが正であるとき(すなわち、第1吸入空気量過多検出フラグXGAP1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが正である場合に実行される処理である。
(場合1−3)少なくとも吸入空気量ずれが「負」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「小さい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」である。
よって、この場合、CPU81は、ステップ816にて「No」と判定してステップ824に進む。CPU81は、ステップ824にて、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも小さいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は第2NOx濃度ずれΔNOx(Qtgt2)の値よりも小さいので、CPU81は、ステップ824にて「Yes」と判定してステップ826に進む。
CPU81は、ステップ826にて、第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第2NOx濃度ずれΔNOx(Qtgt2)の値は「正」であるので、CPU81は、ステップ826にて「Yes」と判定してステップ828に進む。
CPU81は、ステップ828にて、第1吸入空気量過少検出フラグXGAN1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定し、ステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610を経由してステップ620に進む。現時点における第1吸入空気量過多検出フラグXGAP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ620にて「No」と判定してステップ630に進む。
現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であるので、CPU81は、ステップ630にて「Yes」と判定してステップ680に進む。
CPU81は、ステップ680にて、下記(10)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(10)式において、K4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=K4・|ΔNOxave1| ・・・(10)
次いで、CPU81は、ステップ650に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ660に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ670に進み、第1吸入空気量過多検出フラグXGAP1の値に「0」を格納し、第1吸入空気量過少検出フラグXGAN1の値に「0」を格納する。その後、CPU81は、ステップ695に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが負であるとき(すなわち、第1吸入空気量過少検出フラグXGAN1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが負である場合に実行される処理である。
(場合1−4)燃料噴射量ずれが「負」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「小さい」。さらに、上記所定値として第2の目標値Qtgt2を採用すると、第2NOx濃度ずれΔNOx(Qtgt2)の値は「負」である。
よって、この場合、CPU81は、図9のステップ816およびステップ824を経由してステップ826に進み、ステップ826にて「No」と判定してステップ830に進む。
CPU81は、ステップ830にて、第1燃料過少噴射フラグXQN1の値に「1」を格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1燃料過少噴射フラグXQN1の値は「1」であるので、CPU81は、ステップ1010にて「Yes」と判定し、ステップ1020に進む。CPU81は、ステップ1020にて第1NOx濃度平均ずれΔNOxave1を取得し、ステップ1095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510を経由してステップ520に進む。現時点における第1燃料過多噴射フラグXQP1の値は上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ520にて「No」と判定し、ステップ530に進む。
現時点における第1燃料過少噴射フラグXQN1の値は「1」であるので、CPU81は、ステップ530にて「Yes」と判定してステップ590に進む。
CPU81は、ステップ590にて、下記(11)式に第1NOx濃度平均ずれΔNOxave1の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(11)式において、K2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=K2・|ΔNOxave1| ・・・(11)
次いで、CPU81は、ステップ560に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ570に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ580に進み、第1燃料過多噴射フラグXQP1の値に「0」を格納し、第1燃料過少噴射フラグXQN1の値に「0」を格納する。
次いで、CPU81は、ステップ540に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ595に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが負であるとき(すなわち、第1燃料過少噴射フラグXQN1の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが負である場合に実行される処理である。
(場合1−5)吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「ゼロ」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は「ゼロ」であり、かつ、第2NOx濃度ずれΔNOx(Qtgt2)の値は「ゼロ」である。
よって、この場合、CPU81は、ステップ816およびステップ824を経由してステップ832に進む。CPU81は、ステップ832にて、第1NOx濃度ずれΔNOx(Qtgt1)の値がゼロであり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値がゼロであるか否かを判定する。この場合、第1NOx濃度ずれΔNOx(Qtgt1)の値は「ゼロ」であり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値は「ゼロ」であるので、CPU81は、ステップ832にて「Yes」と判定してステップ834に進む。
次いで、CPU81は、ステップ834〜ステップ840の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ834にて第1燃料過多噴射フラグXQP1の値に「0」を、ステップ836にて第1燃料過少噴射フラグXQN1の値に「0」を、ステップ838にて第1吸入空気量過多検出フラグXGAP1の値に「0」を、ステップ840にて第1吸入空気量過少検出フラグXGAN1の値に「0」を、格納する。その後、CPU81は、ステップ895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図10のステップ1000から処理を開始すると、ステップ1010に進む。現時点における第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、および、第1吸入空気量過少検出フラグXGAN1の値の全ては、上記第1初期設定仮定に従えば「0」であるので、CPU81は、ステップ1010にて「No」と判定してステップ1095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、現時点における第1燃料過多噴射フラグXQP1の値は「0」であり且つ第1燃料過少噴射フラグXQN1の値は「0」であるので、ステップ510、ステップ520、ステップ530およびステップ540を経由してステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、現時点における第1吸入空気量過多検出フラグXGAP1の値は「0」であり且つ第1吸入空気量過少検出フラグXGAN1の値は「0」であるので、ステップ610、ステップ620およびステップ630を経由してステップ695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが「ゼロ」であり且つ吸入空気量ずれが「ゼロ」であるとき(すなわち、第1燃料過多噴射フラグXQP1の値が「0」であり且つ第1燃料過少噴射フラグXQN1の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである場合に実行される処理である。
(場合1−6)吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合
この場合、上述したように、燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxは「正」または「負」である。すなわち、第1NOx濃度ずれΔNOx(Qtgt1)の値は、第2NOx濃度ずれΔNOx(Qtgt2)の値と「同一」である。さらに、第1NOx濃度ずれΔNOx(Qtgt1)の値はゼロではなく、第2NOx濃度ずれΔNOx(Qtgt2)の値はゼロではない。
よって、この場合、CPU81は、図9のステップ816およびステップ824を経由してステップ832に進み、ステップ832にて「No」と判定してステップ842に進む。
CPU81は、ステップ842にて、第1他異常発生フラグXOTH1の値に「1」を格納する。次いで、CPU81は、ステップ834〜ステップ840を経由してステップ895に進み、本ルーチンを一旦終了する。よって、この場合、第1燃料過多噴射フラグXQP1の値は「0」であり、第1燃料過少噴射フラグXQN1の値は「0」であり、第1吸入空気量過多検出フラグXGAP1の値は「0」であり、第1吸入空気量過少検出フラグXGAN1の値は「0」である。
ここで、CPU81は、図10のステップ1000から処理を開始すると、ステップ1000に続くステップ1010にて「No」と判定し、ステップ1095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図5のステップ500から処理を開始すると、ステップ510、ステップ520、ステップ530およびステップ540を経由してステップ595に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図6のステップ600から処理を開始すると、ステップ610、ステップ620およびステップ630を経由してステップ695に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じているとき(すなわち、第1他異常発生フラグXOTH1の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合に実行される処理である。
以上、場合1−1〜1−6に場合を分けて説明したように、第1装置は、「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」および「燃料噴射量の目標値Qtgtが所定値であるときのNOx濃度ずれΔNOxの値」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。さらに、第1装置は、燃料噴射量ずれの状態および吸入空気量ずれの状態に応じて、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。
さらに、CPU81は、所定時間が経過する毎に、図11にフローチャートによって示した「異常通知ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量ずれの度合いが所定の度合いよりも大きいときに「吸入空気量センサ(エアフローメータ)71が異常である」旨を、図示しない表示装置上に警報ランプを点灯することなどによって表示する。さらに、CPU81は、このルーチンにより、燃料噴射量ずれの度合いが所定の度合いよりも大きいときに「燃料噴射装置(インジェクタ)22が異常である」旨を、上記同様に表示する。
具体的に述べると、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第1燃料過多噴射フラグXQP1の値および第1燃料過少噴射フラグXQN1の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図5のステップ580を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第1状態判定ルーチンが実行されたときに、第1燃料過多噴射フラグXQP1の値または第1燃料過少噴射フラグXQN1の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第1状態判定ルーチンが実行されたときに第1燃料過多噴射フラグXQP1の値および第1燃料過少噴射フラグXQN1の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第1装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第1吸入空気量過多検出フラグXGAP1の値および第1吸入空気量過少検出フラグXGAN1の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図6のステップ670を参照。)。上記説明から明らかなように、第1装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第1吸入空気量過多検出フラグXGAP1の値および第1吸入空気量過少検出フラグXGAN1の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第1装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
<装置の作用および効果>
第1装置は、排ガスのNOx濃度の測定値NOxmsrと、機関10の運転状態に基づいて定まるNOx参照濃度NOxrefと、を比較することにより、NOx濃度ずれΔNOxを取得する。さらに、第1装置は、このNOx濃度ずれΔNOxと、燃料噴射量の目標値Qtgtと、の関係(上記第1の関係R1(Qtgt,ΔNOx))に基づき、燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、吸入空気量ずれがゼロ、正および負のいずれであるか、を判定する。すなわち、第1装置は、NOx濃度ずれΔNOxが生じているとき、燃料噴射量の目標値Qtgtと実際値Qactとがどのように異なるかを判定することができる。さらに、第1装置は、NOx濃度ずれΔNOxが生じているとき、吸入空気量の測定値Gamsrと実際値Gaactとがどのように異なるかを判定することができる。
さらに、第1装置は、燃料噴射量ずれが生じているとき、NOx濃度ずれΔNOxの大きさ(第1NOx濃度ずれΔNOx(Qtgt1)および第2NOx濃度ずれΔNOx(Qtgt2)の平均値ΔNOxave)に応じて燃料噴射量の目標値Qtgtを補正する。一方、第1装置は、吸入空気量ずれが生じているとき、NOx濃度ずれΔNOxの大きさΔNOxaveに応じて吸入空気量の測定値Gamsrを補正する。さらに、第1装置は、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、これら補正を繰り返し実行する。これにより、燃料噴射量ずれの大きさおよび吸入空気量の大きさが適切に低減される。その結果、NOx濃度ずれが低減される。
加えて、第1装置は、燃料噴射量ずれを補正する際に用いられる補正量の積算値Qcsumが所定の閾値Qcsumthを超えると、「燃料噴射装置22が異常である」旨を表示装置に表示する。一方、第1装置は、吸入空気量ずれをを補正する際に用いられる補正量の積算値Gacsumが所定の閾値Gacsumthを超えると、「吸入空気量センサ71が異常である」旨を表示装置に表示する。
(第2実施形態)
次に、本発明の第2の実施形態に係る制御装置(以下、「第2装置」とも称呼する。)について説明する。
<装置の概要>
第2装置は、第1装置が適用される機関10と同様の構成を有する機関(図1を参照。以下、便宜上、「機関10」と称呼する。)に適用される。そこで、第2装置が適用される装置の概要についての詳細な説明は、省略される。
<装置の作動の概要>
以下、上述したように構成された第2装置の作動の概要について説明する。
第2装置は、第1装置における燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、第1の関係R1(Qtgt,ΔNOx))に代えて「吸気酸素濃度Oconと、NOx濃度ずれΔNOxと、の関係」に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する点においてのみ、第1装置と異なる。
具体的に述べると、第2装置は、第1装置と同様の手法にて「吸気酸素濃度Ocon」および「NOx濃度ずれΔNOx」を取得する。そして、第2装置は、機関10が運転されている期間中、吸気酸素濃度Oconと、NOx濃度ずれΔNOxと、を対応させながら取得し続ける。さらに、第2装置は、取得されたこれら値に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
第2装置は、上記状態判定の結果に応じて、燃料噴射量ずれの大きさが小さくなるように燃料噴射量の目標値Qtgtを所定の補正量だけ補正する。さらに、第2装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさが小さくなるように吸入空気量の測定値Gamsrを所定の補正量だけ補正する。加えて、第2装置は、これら補正を、燃料噴射量ずれがゼロとなり且つ吸入空気量ずれがゼロとなるまで繰り返す。
第2装置は、燃料噴射量の目標値Qtgtの補正量の積算値が所定の閾値よりも大きくなると、「燃料噴射装置22が異常である」ことを表示装置など(図1において図示省略。)に表示する。さらに、第2装置は、吸入空気量の測定値Gamsrの補正量の積算値が所定の閾値よりも大きくなると、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第2装置の作動の概要である。
<内燃機関の制御方法>
次いで、第2装置の具体的な作動についての説明を行う前に、第2装置に採用されている機関10の制御方法について述べる。第2装置は、第1装置と同じNOx濃度推定モデルを採用している。そこで、NOx濃度推定モデルについての説明(上記説明1−1を参照。)、および、吸入空気量ずれおよび燃料噴射量ずれの少なくとも一方が生じた場合にNOx濃度ずれが生じる理由についての説明(上記説明1−2を参照。)は、省略される。以下、第2装置に採用されている制御方法につき、下記説明2−1〜2−2の順序に従って説明する。
(説明2−1)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
(説明2−2)状態判定の結果に応じた補正についての説明
(説明2−1)燃料噴射量ずれの状態および吸入空気量ずれの状態の判定方法についての説明
以下、上記NOx濃度推定モデルを用いて、下記条件2−A〜2−Dのうちの「一または複数」が成立する場合における「吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係」について説明する。
(条件2−A)吸入空気量の実際値Gaactが測定値Gamsrよりも小さい。
(条件2−B)吸入空気量の実際値Gaactが測定値Gamsrよりも大きい。
(条件2−C)燃料噴射量の実際値Qactが目標値Qtgtよりも小さい。
(条件2−D)燃料噴射量の実際値Qactが目標値Qtgtよりも大きい。
以下、条件2−Aに示す状態を「吸入空気量ずれが負である」と、条件2−Bに示す状態を「吸入空気量ずれが正である」と、条件2−Cに示す状態を「燃料噴射量ずれが負である」と、条件2−Dに示す状態を「燃料噴射量ずれが正である」と、称呼する。さらに、以下、便宜上、吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係を「第2の関係R2(Ocon,ΔNOx)」と称呼する。
さらに、この説明2−1において、吸入空気量および燃料噴射量「以外」のNOx濃度に影響を与え得る運転パラメータ(例えば、気筒内に吸入されるガスの総量Gcylに影響を与える機関回転速度NEおよび過給圧Pim、EGR率の目標値Regrtgt、ならびに、気筒内に燃料を噴射する時期である燃料噴射時期など)は、所定の値に固定されていると仮定する。すなわち、吸入空気量ずれおよび燃料噴射量ずれ「のみ」がNOx濃度ずれΔNOxに影響を与えると仮定する。
まず、上記条件2−A〜2−Dのうちの「1つ」が成立する場合における第2の関係R2(Ocon,ΔNOx)について説明する。
図12(A)は、条件2−A〜条件2−Dのうちの1つが成立する場合における第2の関係R2(Ocon,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。NOx濃度推定モデルにおける指数A、BおよびCは(上記(5)式を参照。)、「機関10と同一の構成を有する機関であって、燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値NOxmsrと実際値Gaactとが一致していることが確認されている機関」を用いた実験によって定められた。
図12(A)において、Gamsr(−)は、条件2−Aが成立する場合(吸入空気量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)は、条件2−Bが成立する場合(吸入空気量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Qact(−)は、条件2−Cが成立する場合における(燃料噴射量ずれが負である場合)の第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Qact(+)は、条件2−Dが成立する場合(燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。
まず、「条件2−Aのみ」が成立する場合、曲線Gamsr(−)に示すように、少なくとも吸気酸素濃度Oconが所定値Cから所定値Dである範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件2−Bのみ」が成立する場合、曲線Gamsr(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
加えて、「条件2−Cのみ」が成立する場合、曲線Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件2−Dのみ」が成立する場合、曲線Qact(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、燃料噴射量の目標値Qtgtが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
このように、条件2−Aが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Bが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Cが成立する場合における第2の関係R2(Ocon,ΔNOx)と、条件2−Dが成立する場合における第2の関係R2(Ocon,ΔNOx)と、は異なる。
所定値Cおよび所定値Dのそれぞれは、上述したように条件2−A〜2−Dのうちの一の条件が成立した場合に得られる第2の関係R2(Ocon,ΔNOx)がその一の条件とは異なる他の条件が成立した場合に得られる第2の関係R2(Ocon,ΔNOx)と異なることとなる適値に設定されればよい。
以上、条件2−A〜2−Dのうちの「1つ」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明した。
次いで、上記条件2−A〜2−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明する。
図12(B)は、条件2−A〜2−Dのうちの複数が成立する場合における第2の関係R2(Ocon,ΔNOx)を上記「NOx濃度推定モデル」を用いて表したグラフである。
図12(B)において、Gamsr(−)+Qact(+)は、条件2−Aおよび条件2−Dが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(−)+Qact(−)は、条件2−Aおよび条件2−Cが成立する場合(吸入空気量ずれが負であり且つ燃料噴射量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(+)は、条件2−Bおよび条件2−Dが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが正である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。Gamsr(+)+Qact(−)は、条件2−Bおよび条件2−Cが成立する場合(吸入空気量ずれが正であり且つ燃料噴射量ずれが負である場合)における第2の関係R2(Ocon,ΔNOx)を示す曲線を表す。
なお、条件2−A(吸入空気量ずれが負である状態)と、条件2−B(吸入空気量ずれが正である状態)と、は同時に成立し得ない。さらに、条件2−C(燃料噴射量ずれが負である状態)と、条件2−D(燃料噴射量ずれが正である状態)と、は同時に成立し得ない。よって、図12(B)に示す4つの組み合わせが、成立し得る組み合わせの全てである。
まず、「条件2−Aおよび条件2−D」が成立する場合、曲線Gamsr(−)+Qact(+)に示すように、少なくとも吸気酸素濃度Oconが所定値Cから所定値Dである範囲内(C≦Ocon≦D)において吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
さらに、「条件2−Aおよび条件2−C」が成立する場合、曲線Gamsr(−)+Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は小さくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」である。
加えて、「条件2−Bおよび条件2−D」が成立する場合、曲線Gamsr(+)+Qact(+)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
さらに加えて、「条件2−Bおよび条件2−C」が成立する場合、曲線Gamsr(+)+Qact(−)に示すように、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大するにつれてNOx濃度ずれΔNOxの値は大きくなる。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「負」である。
このように、条件2−Aおよび条件2−Dが成立する場合の第2の関係R2(Ocon,ΔNOx)と、条件2−Aおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。さらに、条件2−Bおよび条件2−Dが成立する場合の第2の関係R2(Ocon,ΔNOx)と、条件2−Bおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)とは、上記範囲内におけるNOx濃度ずれΔNOxの大きさが異なることを除いて同一である。加えて、条件2−Aおよび条件2−D、あるいは、条件2−Aおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)は、条件2−Bおよび条件2−D、あるいは、条件2−Bおよび条件2−Cが成立する場合の第2の関係R2(Ocon,ΔNOx)と、異なる。
以上、条件2−A〜2−Dのうちの「複数」が成立する場合(すなわち、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じた場合)における第2の関係R2(Ocon,ΔNOx)について説明した。
なお、「条件2−A〜2−Dのいずれも成立しない」場合(すなわち、吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合)、実際のNOx濃度NOxconはNOx濃度NOxconと一致する。よって、この場合、NOx濃度ずれΔNOxは、吸気酸素濃度Oconにかからわずゼロである。すなわち、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「ゼロ」である。
ところで、上述したように、機関10を構成する部材のうち「吸入空気量および燃料噴射量と関連しない部材」が正常に作動しない場合においても、NOx濃度ずれは生じ得る。例えば、NOx濃度センサ75が正常に作動しなし場合(実際のNOx濃度とは異なるNOx濃度を表す出力値を出力する場合)、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロであっても、NOx濃度ずれが生じる。以下、このような状態を「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と称呼する。
この場合、図13の曲線Other(+)または曲線Other(−)に示すように、吸気酸素濃度OconにかかわらずNOx濃度ずれΔNOxの大きさは変化しない。すなわち、少なくとも上記範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」である。さらに、この場合、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxは「正」または「負」である。
このように、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件2−Aおよび条件2−Bを参照。)、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか(条件2−Cおよび条件2−Dを参照。)、により、第2の関係R2(Ocon,ΔNOx)は異なる。換言すると、第2の関係R2(Ocon,ΔNOx)に基づき、吸入空気量ずれが「ゼロ」、「正」および「負」のいずれであるか、あるいは、燃料噴射量ずれが「ゼロ」、「正」および「負」のいずれであるか、を判定することができる。さらに、第2の関係R2(Ocon,ΔNOx)に基づき、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれ」が生じているか否か、を判定することができる。
具体的に述べると、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図12(A)の曲線Gamsr(−)、ならびに、図12(B)の曲線Gamsr(−)+Qact(+)および曲線Gamsr(−)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが負である」と判定することができる。
さらに、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図12(A)の曲線Gamsr(+)、ならびに、図12(B)の曲線Gamsr(+)+Qact(+)および曲線Gamsr(+)+Qact(−)に示される関係に相当する。すなわち、この場合、「少なくとも吸入空気量ずれが正である」と判定することができる。
加えて、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「正」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」である関係」である場合、その関係は、図12(A)の曲線Qact(+)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが正である」と判定することができる。
さらに加えて、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「負」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「負」である関係」である場合、その関係は、図12(A)の曲線Qact(−)に示される関係に相当する。すなわち、この場合、「燃料噴射量ずれが負である」と判定することができる。
なお、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「ゼロ」である関係」である場合、「吸入空気量ずれがゼロであり、かつ、燃料噴射量ずれがゼロである」と判定することができる。
さらに、第2の関係R2(Ocon,ΔNOx)が「所定範囲内(C≦Ocon≦D)において、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量が「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOxが「正」または「負」である関係」である場合、「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定することができる。
このように、第2装置は、第2の関係R2(Ocon,ΔNOx)に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。以下、上述した燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する方法を、「第2状態判定方法」とも称呼する。
(説明2−2)状態判定の結果に応じた補正についての説明
第2装置は、上記状態判定の結果に応じて、吸入空気量ずれの大きさを低減するように吸入空気量の測定値Gamsrを補正し、燃料噴射量ずれの大きさを低減するように燃料噴射量の目標値Qtgtを補正する。
具体的に述べると、第2装置は、吸入空気量ずれが「正」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「減少」するように補正する。一方、第2装置は、吸入空気量ずれが「負」であると判定した場合、吸入空気量の測定値Gamsrを所定の補正量だけ「増大」するように補正する。これら補正にて用いられる「補正量」はNOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図14(A)に示すように、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOx(C)および吸気酸素濃度Oconが所定値DであるときのNOx濃度ずれΔNOx(D)の双方が「正」であって、NOx濃度ずれΔNOx(C)よりもNOx濃度ずれΔNOx(D)が小さい場合、第2装置は、上記説明2−1にて述べたように、「少なくとも吸入空気量ずれが負である」と判定する。
この場合、第2装置は、例えば、NOx濃度ずれΔNOx(C)およびNOx濃度ずれΔNOx(D)の平均値に基づいて上記「補正量」を決定する。そして、第2装置は、吸入空気量の測定値Gamsrをこの補正量だけ「増大」するように補正する。具体的に述べると、第2装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、吸入空気量センサ71の出力値(出力電圧)と吸入空気量の測定値Gamsrとの関係(マップ)を、測定値Gamsrが増大されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
さらに、第2装置は、燃料噴射量ずれが「正」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「減少」するように補正する。一方、第2装置は、燃料噴射量ずれが「負」であると判定した場合、燃料噴射量の目標値Qtgtを所定の補正量だけ「増大」するように補正する。これら補正において用いられる「補正量」は、NOx濃度ずれΔNOxの大きさに応じて決定される。
例えば、図14(B)に示すように、吸気酸素濃度Oconが所定値CであるときのNOx濃度ずれΔNOx(C)および吸気酸素濃度Oconが所定値DであるときのNOx濃度ずれΔNOx(D)の双方が「正」であって、NOx濃度ずれΔNOx(C)よりもNOx濃度ずれΔNOx(D)が大きい場合、第2装置は、上記説明2−1にて述べたように、「燃料噴射量ずれが正である」と判定する。
この場合、第2装置は、例えば、NOx濃度ずれΔNOx(C)とNOx濃度ずれΔNOx(D)との平均値に基づいて上記「補正量」を決定する。そして、第2装置は、燃料噴射量の目標値Qtgtをこの補正量だけ「減少」するように補正する。具体的に述べると、第2装置は、例えば、上記平均値に所定の係数を乗じて得られる値に応じて、燃料噴射装置22の燃料噴射時間と燃料噴射量の目標値Qtgtとの関係(マップ)を、目標値Qtgtが減少されるように変更(学習)する。これにより、吸入空気量ずれが低減される。
このように燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrが補正されることにより、NOx濃度ずれΔNOxの大きさが低減される。
ところで、上記説明2−1にて述べたように、第2装置は、所定の条件が成立する場合、「少なくとも」吸入空気量ずれが負であると判定する(条件2−Aが成立する場合、条件2−Aおよび条件2−Cが成立する場合、ならびに、条件2−Aおよび条件2−Dが成立する場合)。この場合、第2装置は、「吸入空気量ずれが負である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが正である」か、「吸入空気量ずれが負であり、かつ、燃料噴射量ずれが負である」か、を区別して判定しない。すなわち、吸入空気量ずれ「のみ」が生じているか、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じているか、は判定されない。
しかし、上記説明2−2にて述べたように、上記いずれの条件が成立する場合であっても、第2装置は「吸入空気量ずれ」を低減するように吸入空気量の測定値Gamsrを補正する。そのため、吸入空気量ずれ「のみ」が生じている場合、この補正によってその吸入空気量ずれが低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、この補正によってその「双方」のうちの吸入空気量ずれが低減される。そして、例えば繰り返しこの補正が行われることによって吸入空気量ずれが十分に低減されれば、それら「双方」のうちの燃料噴射量ずれ「のみ」が残る。燃料噴射量ずれ「のみ」が残れば、第2装置は、燃料噴射量ずれが生じていると判定すると共にその燃料噴射量ずれを低減するように燃料噴射量の目標値Qtgtを補正する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
このように、上記いずれの場合(吸入空気量ずれ「のみ」が生じている場合、および、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合)であっても、第2装置が繰り返し補正を行うことにより、NOx濃度ずれΔNOxが低減される。なお、上記説明から理解されるように、第2装置が「少なくとも吸入空気量ずれが「正」である」と判定する場合であっても、上記同様、第2装置が繰り返し補正を行うことによってNOx濃度ずれΔNOxの大きさが低減される。
なお、第2装置は、「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。さらに、第2装置は、「燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている」と判定した場合、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正しない。
以上、説明2−1〜2−2にて述べたように、第2装置は燃料噴射量ずれの状態および吸入空気量ずれの状態を判定すると共に、その判定の結果に応じてNOx濃度ずれΔNOxの大きさを低減するように機関10を制御する。
ところで、上記第2状態判定方法において採用されている吸気酸素濃度Oconは、具体的には「上記(1)式にて算出される吸気酸素濃度の計算値(見掛け上の吸気酸素濃度)」である。そのため、燃料噴射量ずれおよび吸入空気量ずれの少なくとも一方が生じている場合、この見掛け上の吸気酸素濃度Oconと、吸気酸素濃度の実際値Oconactと、は一致しない(上記説明(1−2)を参照。)。よって、この場合、「判定の指標とされる第2の関係R2(Ocon,ΔNOx)そのもの」に何らかのずれが生じている。そこで、第2の関係R2(Ocon,ΔNOx)における見掛け上の吸気酸素濃度Oconを「吸気酸素濃度の実際値Oconact」に置き換えると、上記状態判定をより適切に行うことができるとも考えられる。
しかし、上述したように、第2の関係R2(Ocon,ΔNOx)における「NOx濃度ずれΔNOx」は、NOx濃度の測定値NOxmsrと、機関10の運転状態に応じて定まるNOx参照濃度NOxrefと、に基づいて定められる。そのため、図15に示すように、判定の指標として時点tにおける見掛け上の吸気酸素濃度Ocon(t)を用いた場合におけるNOx濃度ずれΔNOx(Ocon)と、判定の指標としてその時点tにおける吸気酸素濃度の実際値Oconact(t)を用いた場合におけるNOx濃度ずれΔNOx(Oconact)と、は一致する。よって、見掛け上の吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係(図中の実線)と、吸気酸素濃度の実際値OconactとNOx濃度ずれΔNOxとの関係(図中の破線)とは、単に図中横軸方向の位置が異なるに過ぎない。したがって、上記説明2−1〜2−2から理解されるように、所定の範囲(C≦Ocon≦D)が適切に選択されていれば、判定の指標として見掛け上の吸気酸素濃度Oconを用いた場合における上記状態判定の結果と、同指標として吸気酸素濃度の実際値Oconactを用いた場合における上記状態判定の結果と、は一致する。
このように、判定の指標として見掛け上の吸気酸素濃度Oconを用いても、同指標として吸気酸素濃度の実際値Oconactを用いても、所定の範囲(C≦Ocon≦D)が適切に選択されていれば、状態判定を適切に行うことができる。そこで、第2装置においては、判定の指標として見掛け上の吸気酸素濃度Oconが用いられている。
一方、上述したように、NOx濃度推定モデルにおける指数A、BおよびCは、NOx濃度推定モデルが適用される内燃機関の構成等に応じて定められる。そのため、機関10と異なる構成を有する他の機関にNOx濃度推定モデルが適用される場合、他の機関における指数A、BおよびCは、機関10における指数A、BおよびCと異なる場合がある。この場合、機関10における第2の関係R2(Ocon,ΔNOx)と、他の機関における第2の関係R2(Ocon,ΔNOx)と、は異なる。しかし、上記説明から明らかなように、上記同様の考え方によって他の機関における燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
<実際の作動>
以下、第2装置の実際の作動について説明する。
第2装置は、第1装置において図5および図6にフローチャートによって示した処理に代えて「図16および図17にフローチャートによって示した処理」を実行する点、および、第1装置において図8〜図10にフローチャートによって示した処理に代えて「図18〜図20にフローチャートによって示した処理」を実行する点においてのみ、第1装置と相違している。そこで、以下、これらの相違点を中心として説明する。
第2装置において、CPU81は、図7、図11、および、図16〜図20にフローチャートによって示した各ルーチンを所定のタイミング毎に実行するようになっている。CPU81は、これらルーチンにおいて、第2燃料過多噴射フラグXQP2、第2燃料過少噴射フラグXQN2、第2吸入空気量過多検出フラグXGAP2、第2吸入空気量過少検出フラグXGAN2、および、第2他異常発生フラグXOTH2を用いる。
第2燃料過多噴射フラグXQP2は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第2燃料過多噴射フラグXQP2は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第2燃料過少噴射フラグXQN2は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第2燃料過少噴射フラグXQN2は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第2吸入空気量過多検出フラグXGAP2は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第2吸入空気量過多検出フラグXGAP2は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第2吸入空気量過少検出フラグXGAN2は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第2吸入空気量過多検出フラグXGAP2は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第2他異常発生フラグXOTH2は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第2他異常発生フラグXOTH2は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値は、バックアップRAM84に格納される。さらに、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。加えて、第2他異常発生フラグXOTH2の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第2初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図16にフローチャートによって示した「第2燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図16に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始してステップ1610に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ1620に進み、現時点における第2燃料過多噴射フラグXQP2の値が「1」であるか否かを判定する。現時点における第2燃料過多噴射フラグXQP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1620にて「No」と判定してステップ1630に進む。
CPU81は、ステップ1630にて、現時点における第2燃料過少噴射フラグXQN2の値が「1」であるか否かを判定する。現時点における第2燃料過少噴射フラグXQN2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1630にて「No」と判定してステップ1640に進む。
CPU81は、ステップ1640にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図17にフローチャートによって示した「第2吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図17に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始してステップ1710に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ1720に進み、現時点における第2吸入空気量過多検出フラグXGAP2の値が「1」であるか否かを判定する。現時点における第2吸入空気量過多検出フラグXGAP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1720にて「No」と判定してステップ1730に進む。
CPU81は、ステップ1730にて、現時点における第2吸入空気量過少検出フラグXGAN2の値が「1」であるか否かを判定する。現時点における第2吸入空気量過少検出フラグXGAN2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1730にて「No」と判定してステップ1795に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図7のステップ700から処理を開始し、ステップ710およびステップ720を経由してステップ795に進み、本ルーチンを一旦終了する。これにより、EGR率の目標値Regrtgtが決定されると共に、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33の開度およびEGR制御弁53の開度が制御される。
さらに、CPU81は、所定時間が経過する毎に図18および図19に一連のフローチャートによって示した「第2状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、所定の条件が成立しているとき、燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとを対応させながら取得する。さらに、CPU81は、このルーチンにより、所定の条件が成立しているとき、取得された燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、上記第2の関係R2(Ocon,ΔNOx))に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。
具体的に述べると、CPU81は、所定のタイミングにて図18のステップ1800から処理を開始してステップ1802に進み、現時点にて「NOx濃度を取得する条件(NOx濃度取得条件)」が成立するか否かを判定する。このステップ1802におけるNOx濃度取得条件は、第1装置におけるNOx濃度取得条件と同一である(図8のステップ802を参照。)。よって、NOx濃度取得条件についての詳細な説明は、省略される。
CPU81は、NOx濃度取得条件が「成立していない」とき、ステップ1802にて「No」と判定し、接続指標Bを経由して図19のステップ1895に直接進んで本ルーチンを一旦終了する。このように、NOx濃度取得条件が「成立していない」とき、NOx濃度の測定値NOxmsrは取得されない。
これに対し、CPU81は、NOx濃度取得条件が「成立している」とき、ステップ1802にて「Yes」と判定してステップ1804に進む。CPU81は、ステップ1804にてNOx濃度センサ75の出力値に基づいてNOx濃度の測定値NOxmsrを取得し、ステップ1806に進む。
CPU81は、ステップ1806にて、「吸入空気量の測定値Gamsrと、燃料噴射量の目標値Qtgtと、空気過剰率λと、の関係」をあらかじめ定めた空気過剰率算出関数Fnλ(Gamsr,Qtgt)に、現時点における吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを適用することにより、空気過剰率λを算出する(上記(2)式および上記(3)式を参照。)。
次いで、CPU81は、ステップ1808に進み、「EGR率の目標値Regrtgtと、空気過剰率λと、吸気酸素濃度Oconと、の関係」をあらかじめ定めた吸気酸素濃度算出関数FnOcon(Regrtgt,λ)に、現時点におけるEGR率の目標値Regrtgtと、空気過剰率λと、を適用することにより、吸気酸素濃度Oconを算出する(上記(1)式を参照。)。
次いで、CPU81は、ステップ1810に進み、「燃料噴射量の目標値Qtgtと実際値Qactとが一致しており且つ吸入空気量の測定値Gamsrと実際値Gaactとが一致していることが確認されている機関における、燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、NOx濃度と、の関係」をあらかじめ定めたMapNOxref(Qtgt,Ocon)に、現時点における燃料噴射量の目標値Qtgtと、吸気酸素濃度Oconと、を適用して得られる値を、NOx参照濃度NOxrefとして取得する。
次いで、CPU81は、ステップ1812に進み、第1装置と同一の上記(6)式にNOx濃度の測定値NOxmsrとNOx参照濃度NOxrefとを適用することにより、NOx濃度ずれΔNOxを取得する(図8のステップ812を参照。)。すなわち、ステップ1812にて、「NOx参照濃度NOxrefに対する、NOx濃度の測定値NOxmsrからNOx参照濃度NOxrefを減算して得られる値の、割合」が、NOx濃度ずれΔNOxとして取得される。
さらに、CPU81は、上述したように取得したNOx濃度ずれΔNOxを、吸気酸素濃度Oconと対応させながら(すなわち、NOx濃度ずれΔNOxと吸気酸素濃度Oconとを組み合わせたデータを)、ROM82に格納する。
次いで、CPU81は、接続指標Aを経由して図19のステップ1814に進み、現時点にて「燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する条件(状態判定条件)」が成立しているか否かを判定する。より具体的に述べると、CPU81は、ステップ1814にて、以下の条件S−2が成立したとき、状態判定条件が成立すると判定する。換言すると、CPU81は、条件S−2が成立しないとき、状態判定条件が成立しないと判定する。
(条件S−2)NOx濃度ずれΔNOxと吸気酸素濃度Oconとを組み合わせたデータであって吸気酸素濃度Oconが所定の範囲内の値であるデータが、少なくとも2つ取得されている。
上記「所定の範囲」は、上述した第2状態判定方法における「所定範囲(C≦Ocon≦D)」に相当する。吸気酸素濃度Oconがこの所定の範囲内の値であるデータが少なくとも2つ取得されていれば、第2状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を判定することができる。
CPU81は、状態判定条件が「成立している」とき、ステップ1814にて「Yes」と判定し、ステップ1816に進む。そして、CPU81は、ステップ1816〜ステップ1842に示す処理によって燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。これに対し、CPU81は、状態判定条件が「成立していない」とき、ステップ1814にて「No」と判定し、ステップ1895に直接進んで本ルーチンを一旦終了する。このように、状態判定条件が「成立していない」とき、燃料噴射量ずれの状態および吸入空気量ずれの状態は判定されない。
以下、現時点にて、状態判定条件が「成立している」と仮定すると共に、ステップ1816〜ステップ1842にて実行される処理について場合を分けてより詳細に説明する。
以下の説明においては、条件S−2に該当するデータとして、吸気酸素濃度が「第1の吸気酸素濃度Ocon1」であるデータ、および、吸気酸素濃度が「第1の吸気酸素濃度Ocon1よりも大きい第2の吸気酸素濃度Ocon2」であるデータが採用される。以下、吸気酸素濃度が第1の吸気酸素濃度Ocon1であるときのNOx濃度ずれを「第1NOx濃度ずれΔNOx(Ocon1)」と、吸気酸素濃度が第2の吸気酸素濃度(Ocon2>Ocon1)であるときのNOx濃度ずれを「第2NOx濃度ずれΔNOx(Ocon2)」と、称呼する。なお、第1の吸気酸素濃度Ocon1および第2の吸気酸素濃度Ocon2は、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定するために適切な値となるように、上述したNOx濃度推定モデルに基づいて定められる。
(場合2−1)少なくとも吸入空気量ずれが「負」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値よりも「大きい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」である。
CPU81は、ステップ1816にて、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は第2NOx濃度ずれΔNOx(Ocon2)の値よりも大きいので、CPU81は、ステップ1816にて「Yes」と判定してステップ1818に進む。
CPU81は、ステップ1818にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」であるので、CPU81は、ステップ1818にて「Yes」と判定してステップ1820に進む。
CPU81は、ステップ1820にて、第2吸入空気量過少検出フラグXGAN2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図20にフローチャートによって示した「第2NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1NOx濃度ずれΔNOx(Ocon1)の値と、第2NOx濃度ずれΔNOx(Ocon2)の値と、の平均値を取得する。以下、便宜上、この平均値を「第2NOx濃度平均ずれΔNOxave2」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始してステップ2010に進み、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の少なくとも1つが「1」であるか否かを判定する。現時点における第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定してステップ2020に進む。
CPU81は、ステップ2020にて、下記(12)式に第1NOx濃度ずれΔNOx(Ocon1)の値および第2NOx濃度ずれΔNOx(Ocon2)の値を適用することにより、第2NOx濃度平均ずれΔNOxave2を取得する。
ΔNOxave2={ΔNOx(Ocon1)+ΔNOx(Ocon2)}/2 ・・・(12)
その後、CPU81は、ステップ2095に進んで本ルーチンを一旦終了する。
なお、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の全てが「0」であれば、CPU81は、ステップ2010にて「No」と判定してステップ2095に進み、本ルーチンを一旦終了する。すなわち、第2NOx濃度平均ずれΔNOxave2は取得されない。
場合2−1の説明に戻ると、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710を経由してステップ1720に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1720にて「No」と判定してステップ1730に進む。
現時点における第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ1730にて「Yes」と判定してステップ1740に進む。
CPU81は、ステップ1740にて、下記(13)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(13)式において、L4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=L4・|ΔNOxave2| ・・・(13)
次いで、CPU81は、ステップ1750に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ1760に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ1770に進み、第2吸入空気量過多検出フラグXGAP2の値に「0」を格納し、第2吸入空気量過少検出フラグXGAN2の値に「0」を格納する。その後、CPU81は、ステップ1795に進んで本ルーチンを一旦終了する。
このように、少なくとも吸入空気量ずれが負であるとき(すなわち、第2吸入空気量過少検出フラグXGAN2の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが負である場合に実行される処理である。
(場合2−2)燃料噴射量ずれが「負」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「負」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値よりも「大きい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「負」である。
よって、この場合、CPU81は、図19のステップ1816にて「Yes」と判定してステップ1818に進む。さらに、CPU81は、ステップ1818にて「No」と判定し、ステップ1822に進む。
CPU81は、ステップ1822にて、第2燃料過少噴射フラグXQN2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定してステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610を経由してステップ1620に進む。現時点における第2燃料過多噴射フラグXQP2の値は上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ1620にて「No」と判定し、ステップ1630に進む。
現時点における第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ1630にて「Yes」と判定してステップ1650に進む。
CPU81は、ステップ1650にて、下記(14)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(14)式において、L2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=L2・|ΔNOxave2| ・・・(14)
次いで、CPU81は、ステップ1660に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ1670に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1680に進み、第2燃料過多噴射フラグXQP2の値に「0」を格納し、第2燃料過少噴射フラグXQN2の値に「0」を格納する。
次いで、CPU81は、ステップ1640に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが負であるとき(すなわち、第2燃料過少噴射フラグXQN2の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが負である場合に実行される処理である。
(場合2−3)燃料噴射量ずれが「正」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「小さい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」である。
よって、この場合、CPU81は、ステップ1816にて「No」と判定してステップ1824に進む。CPU81は、ステップ1824にて、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも小さいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は第2NOx濃度ずれΔNOx(Ocon2)の値よりも小さいので、CPU81は、ステップ1824にて「Yes」と判定してステップ1826に進む。
CPU81は、ステップ1826にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロよりも大きいか否かを判定する。上述したように、この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「正」であるので、CPU81は、ステップ1826にて「Yes」と判定してステップ1828に進む。
CPU81は、ステップ1828にて、第2燃料過多噴射フラグXQP2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定し、ステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610を経由してステップ1620に進む。現時点における第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ1620にて「Yes」と判定し、ステップ1690に進む。
CPU81は、ステップ1690にて、下記(15)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(15)式において、L1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=L1・|ΔNOxave2| ・・・(15)
次いで、CPU81は、ステップ1660に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ1670に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1680に進み、第2燃料過多噴射フラグXQP2の値に「0」を格納し、第2燃料過少噴射フラグXQN2の値に「0」を格納する。
次いで、CPU81は、ステップ1640に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ1695に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが正であるとき(すなわち、第2燃料過多噴射フラグXQP2の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、燃料噴射量ずれが正である場合に実行される処理である。
(場合2−4)少なくとも吸入空気量ずれが「正」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「正」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「小さい」。さらに、上記所定値として第1の吸気酸素濃度Ocon1を採用すると、第1NOx濃度ずれΔNOx(Ocon1)の値は「負」である。
よって、この場合、CPU81は、図19のステップ1816およびステップ1824を経由してステップ1826に進み、ステップ1826にて「No」と判定してステップ1830に進む。
CPU81は、ステップ1830にて、第2吸入空気量過多検出フラグXGAP2の値に「1」を格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ2010にて「Yes」と判定し、ステップ2020に進む。CPU81は、ステップ2020にて第2NOx濃度平均ずれΔNOxave2を取得し、ステップ2095に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710を経由してステップ1720に進む。現時点における第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ1720にて「Yes」と判定してステップ1780に進む。
CPU81は、ステップ1780にて、下記(16)式に第2NOx濃度平均ずれΔNOxave2の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(16)式において、L3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=L3・|ΔNOxave2| ・・・(16)
次いで、CPU81は、ステップ1750に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ1760に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ1770に進み、第2吸入空気量過多検出フラグXGAP2の値に「0」を格納し、第2吸入空気量過少検出フラグXGAN2の値に「0」を格納する。その後、CPU81は、ステップ1795に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれが正であるとき(すなわち、第2吸入空気量過多検出フラグXGAP2の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、少なくとも吸入空気量ずれが正である場合に実行される処理である。
(場合2−5)吸入空気量ずれが「ゼロ」であり、かつ、燃料噴射量ずれが「ゼロ」である場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「ゼロ」である。すなわち、第2NOx濃度ずれΔNOx(Ocon1)の値は「ゼロ」であり、かつ、第2NOx濃度ずれΔNOx(Ocon2)の値は「ゼロ」である。
よって、この場合、CPU81は、ステップ1816およびステップ1824を経由してステップ1832に進む。CPU81は、ステップ1832にて、第1NOx濃度ずれΔNOx(Ocon1)の値がゼロであり且つ第2NOx濃度ずれΔNOx(Ocon2)の値がゼロであるか否かを判定する。この場合、第1NOx濃度ずれΔNOx(Ocon1)の値は「ゼロ」であり且つ第2NOx濃度ずれΔNOx(Ocon2)の値は「ゼロ」であるので、CPU81は、ステップ1832にて「Yes」と判定してステップ1834に進む。
次いで、CPU81は、ステップ1834〜ステップ1840の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ1834にて第2燃料過多噴射フラグXQP2の値に「0」を、ステップ1836にて第2燃料過少噴射フラグXQN2の値に「0」を、ステップ1838にて第2吸入空気量過多検出フラグXGAP2の値に「0」を、ステップ1840にて第2吸入空気量過少検出フラグXGAN2の値に「0」を、格納する。その後、CPU81は、ステップ1895に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図20のステップ2000から処理を開始すると、ステップ2010に進む。現時点における第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、および、第2吸入空気量過少検出フラグXGAN2の値の全ては、上記第2初期設定仮定に従えば「0」であるので、CPU81は、ステップ2010にて「No」と判定してステップ2095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、現時点における第2燃料過多噴射フラグXQP2の値は「0」であり且つ第2燃料過少噴射フラグXQN2の値は「0」であるので、ステップ1610、ステップ1620、ステップ1630およびステップ1640を経由してステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、現時点における第2吸入空気量過多検出フラグXGAP2の値は「0」であり且つ第2吸入空気量過少検出フラグXGAN2の値は「0」であるので、ステップ1710、ステップ1720およびステップ1730を経由してステップ1795に進んで本ルーチンを一旦終了する。
このように、燃料噴射量ずれが「ゼロ」であり且つ吸入空気量ずれが「ゼロ」であるとき(すなわち、第2燃料過多噴射フラグXQP2の値が「0」であり且つ第2燃料過少噴射フラグXQN2の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである場合に実行される処理である。
(場合2−6)吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合
この場合、上述したように、吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量は「ゼロ」であり、かつ、吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxは「正」または「負」である。すなわち、第1NOx濃度ずれΔNOx(Ocon1)の値は、第2NOx濃度ずれΔNOx(Ocon2)の値と「同一」である。さらに、第1NOx濃度ずれΔNOx(Ocon1)の値はゼロではなく、第2NOx濃度ずれΔNOx(Ocon2)の値はゼロではない。
よって、この場合、CPU81は、図19のステップ1816およびステップ1824を経由してステップ1832に進み、ステップ1832にて「No」と判定してステップ1842に進む。
CPU81は、ステップ1842にて、第2他異常発生フラグXOTH2の値に「1」を格納する。次いで、CPU81は、ステップ1834〜ステップ1840を経由してステップ1895に進み、本ルーチンを一旦終了する。よって、この場合、第2燃料過多噴射フラグXQP2の値は「0」であり、第2燃料過少噴射フラグXQN2の値は「0」であり、第2吸入空気量過多検出フラグXGAP2の値は「0」であり、第2吸入空気量過少検出フラグXGAN2の値は「0」である。
ここで、CPU81は、図20のステップ2000から処理を開始すると、ステップ2000に続くステップ2010にて「No」と判定し、ステップ2095に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図16のステップ1600から処理を開始すると、ステップ1610、ステップ1620、ステップ1630およびステップ1640を経由してステップ1695に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図17のステップ1700から処理を開始すると、ステップ1710、ステップ1720およびステップ1730を経由してステップ1795に進んで本ルーチンを一旦終了する。
このように、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じているとき(すなわち、第2他異常発生フラグXOTH2の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている場合に実行される処理である。
以上、場合2−1〜2−6に場合を分けて説明したように、第2装置は、「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」および「吸気酸素濃度Oconが所定値であるときのNOx濃度ずれΔNOxの値」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。さらに、第2装置は、燃料噴射量ずれの状態および吸入空気量ずれの状態に応じて、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。
さらに、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第2燃料過多噴射フラグXQP2の値および第2燃料過少噴射フラグXQN2の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図16のステップ1680を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第2状態判定ルーチンが実行されたときに、第2燃料過多噴射フラグXQP2の値または第2燃料過少噴射フラグXQN2の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第2状態判定ルーチンが実行されたときに第2燃料過多噴射フラグXQP2の値および第2燃料過少噴射フラグXQN2の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第2装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第2吸入空気量過多検出フラグXGAP2の値および第2吸入空気量過少検出フラグXGAN2の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図17のステップ1770を参照。)。上記説明から明らかなように、第2装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第2吸入空気量過多検出フラグXGAP2の値および第2吸入空気量過少検出フラグXGAN2の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第2装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。その結果、NOx濃度ずれΔNOxの大きさが低減される。
<装置の作用および効果>
第2装置は、排ガスのNOx濃度の測定値NOxmsrと、機関10の運転状態に基づいて定まるNOx参照濃度NOxrefと、を比較することにより、NOx濃度ずれΔNOxを取得する。さらに、第2装置は、このNOx濃度ずれΔNOxと、吸気酸素濃度Oconと、の関係(上記第2の関係R2(Ocon,ΔNOx))に基づき、燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、吸入空気量ずれがゼロ、正および負のいずれであるか、を判定する。すなわち、第2装置は、NOx濃度ずれΔNOxが生じているとき、燃料噴射量の目標値Qtgtと実際値Qactとがどのように異なるかを判定することができる。さらに、第2装置は、NOx濃度ずれΔNOxが生じているとき、吸入空気量の測定値Gamsrと実際値Gaactとがどのように異なるかを判定することができる。
さらに、第2装置は、燃料噴射量ずれが生じているとき、NOx濃度ずれΔNOxの大きさ(第1NOx濃度ずれΔNOx(Ocon1)および第2NOx濃度ずれΔNOx(Ocon2)の平均値ΔNOxave)に応じて燃料噴射量の目標値Qtgtを補正する。一方、第2装置は、吸入空気量ずれが生じているとき、NOx濃度ずれΔNOxの大きさΔNOxaveに応じて吸入空気量の測定値Gamsrを補正する。さらに、第2装置は、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、これら補正を繰り返し実行する。これにより、燃料噴射量ずれの大きさおよび吸入空気量の大きさが適切に低減される。その結果、NOx濃度ずれΔNOxの大きさが低減される。
加えて、第2装置は、燃料噴射量ずれを補正する際に用いられる補正量の積算値Qcsumが所定の閾値Qcsumthを超えると、「燃料噴射装置22が異常である」旨を表示装置に表示する。一方、第2装置は、吸入空気量ずれをを補正する際に用いられる補正量の積算値Gacsumが所定の閾値Gacsumthを超えると、「吸入空気量センサ71が異常である」旨を表示装置に表示する。
(第3実施形態)
次に、本発明の第3の実施形態に係る制御装置(以下、「第3装置」とも称呼する。)について説明する。
<装置の概要>
第3装置は、第1装置が適用される機関10と同様の構成を有する機関(図1を参照。以下、便宜上、「機関10」と称呼する。)に適用される。そこで、第3装置が適用される装置の概要についての詳細な説明は、省略される。
<装置の作動の概要>
以下、上述したように構成された第3装置の作動の概要について説明する。
第3装置は、第1装置における燃料噴射量の目標値QtgtとNOx濃度ずれΔNOxとの関係(すなわち、第1の関係R1(Qtgt,ΔNOx))、および、第2装置における吸気酸素濃度OconとNOx濃度ずれΔNOxとの関係(すなわち、第2の関係R2(Ocon,ΔNOx))の「双方」に基づいて燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する点においてのみ、第1装置および第2装置と異なる。
具体的に述べると、第3装置は、第1装置と同様の手法により、第1状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を予備的に判定する。さらに、第3装置は、第2装置と同様の手法により、第2状態判定方法に従って燃料噴射量ずれの状態および吸入空気量ずれの状態を予備的に判定する。そして、第3装置は、これら予備的な判定の結果の双方に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を最終的に判定する。
第3装置は、その最終的な状態判定の結果に応じて、第1装置および第2装置と同様に燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正する。さらに、第3装置は、第1装置および第2装置と同様、「燃料噴射装置22が異常である」こと、および、「吸入空気量センサ71が異常である」ことを上記表示装置などに表示する。以上が第3装置の作動の概要である。
<内燃機関の制御方法>
上述したように、第3装置は、第1状態判定方法および第2状態判定方法に従って上記状態判定を行うと共に、第1装置および第2装置と同様に燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrを補正する。そこで、第3装置における内燃機関の制御方法についての詳細な説明は、省略される。
<実際の作動>
以下、第3装置の実際の作動について説明する。
第3装置は、図7〜図11にフローチャートによって示した処理(第1装置にて実行される処理)、および、図18〜図20にフローチャートによって示した処理(第2装置にて実行される処理)に加えて、図21〜図24にフローチャートによって示した処理を実行する。
CPU81は、上記フローチャートによって示したルーチンにおいて、第1装置と同様の第1燃料過多噴射フラグXQP1、第1燃料過少噴射フラグXQN1、第1吸入空気量過多検出フラグXGAP1、第1吸入空気量過少検出フラグXGAN1および第1他異常発生フラグXOTH1、ならびに、第2装置と同様の第2燃料過多噴射フラグXQP2、第2燃料過少噴射フラグXQN2、第2吸入空気量過多検出フラグXGAP2、第2吸入空気量過少検出フラグXGAN2および第2他異常発生フラグXOTH2を用いる。
さらに、CPU81は、それらルーチンにおいて、第3燃料過多噴射フラグXQP3、第3燃料過少噴射フラグXQN3、第3吸入空気量過多検出フラグXGAP3、第3吸入空気量過少検出フラグXGAN3、および、第3他異常発生フラグXOTH3を用いる。
第3燃料過多噴射フラグXQP3は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きくないこと(すなわち、Qact≦Qtgt)を表す。一方、第3燃料過多噴射フラグXQP3は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが大きいこと(すなわち、Qact>Qtgt)を表す。
第3燃料過少噴射フラグXQN3は、その値が「0」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さくないこと(すなわち、Qact≧Qtgt)を表す。一方、第3燃料過少噴射フラグXQN3は、その値が「1」であるとき、燃料噴射量の目標値Qtgtよりも燃料噴射量の実際値Qactが小さいこと(すなわち、Qact<Qtgt)を表す。
第3吸入空気量過多検出フラグXGAP3は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きくないこと(すなわち、Gamsr≦Gaact)を表す。一方、第3吸入空気量過多検出フラグXGAP3は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが大きいこと(すなわち、Gamsr>Gaact)を表す。
第3吸入空気量過少検出フラグXGAN3は、その値が「0」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さくないこと(すなわち、Gamsr≧Gaact)を表す。一方、第3吸入空気量過多検出フラグXGAP3は、その値が「1」であるとき、吸入空気量の実際値Gaactよりも吸入空気量の測定値Gamsrが小さいこと(すなわち、Gamsr<Gaact)を表す。
第3他異常発生フラグXOTH3は、その値が「0」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことを表す。一方、第3他異常発生フラグXOTH3は、その値が「1」であるとき、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていることを表す。
第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、第2他異常発生フラグXOTH2の値、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、第3吸入空気量過少検出フラグXGAN3の値、および、第3他異常発生フラグXOTH3の値は、バックアップRAM84に格納される。
さらに、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22および吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
加えて、第1他異常発生フラグXOTH1の値、第2他異常発生フラグXOTH2の値、および、第3他異常発生フラグXOTH3の値は、上記工場出荷時およびサービス点検実施時などにおいて、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じている原因を解消する処置がなされた際に電気制御装置80に対して所定の操作がなされたとき、「0」に設定されるようになっている。
以下、CPU81が実行する各ルーチンについて詳細に説明する。
まず、現時点における、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、第3吸入空気量過少検出フラグXGAN3の値、および、第3他異常発生フラグXOTH3の値は、全て「0」に設定されていると仮定する。以下、便宜上、この仮定を「第3初期設定仮定」とも称呼する。
CPU81は、機関10が始動されると、任意の気筒のクランク角が圧縮上死点前の所定クランク角度(例えば、圧縮上死点前90度クランク角)θfに一致する毎に、図21にフローチャートによって示した「第3燃料噴射制御ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、燃料噴射量の目標値Qtgtを決定すると共に、その目標値Qtgtだけの燃料を各気筒内に噴射させる。さらに、CPU81は、このルーチンにより、燃料噴射量の実際値Qactが目標値Qtgtと一致していないと判定された場合にその目標値Qtgtを補正すると共に、補正された目標値Qtgtだけの燃料を各気筒内に噴射させる。
具体的に述べると、CPU81は、このルーチンにより、機関10の運転状態に応じて燃料噴射量の目標値Qtgtを決定する。さらに、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが大きいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ減少させる。一方、CPU81は、燃料噴射量の目標値Qtgtよりも実際値Qactが小さいと判定されている場合、その目標値Qtgtを所定の燃料噴射量補正量Qcだけ増大させる。
CPU81は、図21に示すルーチンにおいて、燃料噴射量補正量Qcの積算値Qcsumを算出する。この積算値Qcsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて燃料噴射装置22に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始してステップ2110に進み、「アクセルペダル開度Accpと、機関回転速度NEと、燃料噴射量の目標値Qtgtと、の関係」をあらかじめ定めた燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)に現時点におけるアクセルペダル開度Accpと機関回転速度NEとを適用することにより、燃料噴射量の目標値Qtgtを決定する。この燃料噴射量目標値決定テーブルMapQtgt(Accp,NE)において、燃料噴射量の目標値Qtgtは、アクセルペダル開度Accpおよび機関回転速度NEに基づいて定まる要求トルクに応じた適値となるように、設計されている。
次いで、CPU81は、ステップ2120に進み、現時点における第3燃料過多噴射フラグXQP3の値が「1」であるか否かを判定する。現時点における第3燃料過多噴射フラグXQP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2120にて「No」と判定してステップ2130に進む。
CPU81は、ステップ2130にて、現時点における第3燃料過少噴射フラグXQN3の値が「1」であるか否かを判定する。現時点における第3燃料過少噴射フラグXQN3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2130にて「No」と判定してステップ2140に進む。
CPU81は、ステップ2140にて、上記目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、上記目標値Qtgtの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定時間が経過する毎に、図22にフローチャートによって示した「第3吸入空気量取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、吸入空気量の測定値Gamsrを取得する。さらに、CPU81は、このルーチンにより、吸入空気量の実際値Gaactが測定値Gamsrと一致していないと判定された場合、その測定値Gamsrを補正する。
具体的に述べると、CPU81は、このルーチンにより、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値NOxmsrを取得する。さらに、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが大きいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ減少させる。一方、CPU81は、吸入空気量の測定値NOxmsrよりも実際値Gaactが小さいと判定されている場合、その測定値NOxmsrを所定の吸入空気量補正量Gacだけ増大させる。
CPU81は、図22に示すルーチンにおいて、吸入空気量補正量Gacの積算値Gacsumを算出する。この積算値Gacsumの値は、機関10を搭載した車両の工場出荷時およびサービス点検実施時などにおいて吸入空気量センサ71に異常がないことが確認された際に電気制御装置80に対して所定の操作がなされたとき、ゼロに設定されるようになっている。
より具体的に述べると、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始してステップ2210に進み、吸入空気量センサ71の出力値に基づいて吸入空気量の測定値Gamsrを取得する。
次いで、CPU81は、ステップ2220に進み、現時点における第3吸入空気量過多検出フラグXGAP3の値が「1」であるか否かを判定する。現時点における第3吸入空気量過多検出フラグXGAP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2220にて「No」と判定してステップ2230に進む。
CPU81は、ステップ2230にて、現時点における第3吸入空気量過少検出フラグXGAN3の値が「1」であるか否かを判定する。現時点における第3吸入空気量過少検出フラグXGAN3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2230にて「No」と判定してステップ2295に直接進み、本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図7のステップ700から処理を開始し、ステップ710およびステップ720を経由してステップ795に進み、本ルーチンを一旦終了する。これにより、EGR率の目標値Regrtgtが決定されると共に、EGR率の実際値Regractが目標値Regrtgtと一致するようにスロットル弁33の開度およびEGR制御弁53の開度が制御される。
さらに、CPU81は、所定のタイミングにて図8および図9に一連のフローチャートによって示した「第1状態判定ルーチン」を繰り返し実行し、燃料噴射量ずれおよび吸入空気量ずれの状態を判定する。加えて、CPU81は、所定のタイミングにて図18および図19に一連のフローチャートによって示した「第2状態判定ルーチン」を繰り返し実行し、燃料噴射量ずれおよび吸入空気量ずれの状態を判定する。
以下、「上記第1状態判定ルーチンによる燃料噴射量ずれの状態および吸入空気量ずれの状態の判定が完了しており、かつ、上記第2状態判定ルーチンによる燃料噴射量ずれの状態および吸入空気量ずれの状態の判定が完了している」と仮定して、説明を続ける。
CPU81は、所定時間が経過する毎に図17にフローチャートによって示した「第3状態判定ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の双方に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。以下、場合を分けてより詳細に説明する。
(場合3−1)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されている場合
この場合、第1燃料過多噴射フラグXQP1の値は「1」に設定されており(上記場合1−1を参照。)、かつ、第2燃料過多噴射フラグXQP2の値は「1」に設定されている(上記場合2−3を参照)。
CPU81は、所定のタイミングにて図23のステップ2300から処理を開始してステップ2305に進み、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、の全てが「0」であるか否かを判定する。
上述したように、現時点における第1燃料過多噴射フラグXQP1の値は「1」であり且つ第2燃料過多噴射フラグXQP2の値は「1」である。よって、CPU81は、ステップ2305にて「No」と判定してステップ2310に進む。
CPU81は、ステップ2310にて、第1燃料過多噴射フラグXQP1の値が「1」であり且つ第2燃料過多噴射フラグXQP2の値が「1」であるか否かを判定する。現時点における第1燃料過多噴射フラグXQP1の値は「1」であり且つ第2燃料過多噴射フラグXQP2の値は「1」であるので、CPU81は、ステップ2310にて「Yes」と判定してステップ2315に進む。
CPU81は、ステップ2315にて、第3燃料過多噴射フラグXQP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
次いで、CPU81は、所定時間が経過する毎に、図24にフローチャートによって示した「第3NOx濃度平均ずれ取得ルーチン」を繰り返し実行するようになっている。CPU81は、このルーチンにより、第1状態判定ルーチンにおける第2NOx濃度ずれΔNOx(Qtgt2)の値と、第2状態判定ルーチンにおける第1NOx濃度ずれΔNOx(Ocon1)の値と、の平均値を取得する。以下、便宜上、この平均値を「第3NOx濃度平均ずれΔNOxave3」とも称呼する。
具体的に述べると、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始してステップ2410に進み、第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値の少なくとも1つが「1」であるか否かを判定する。現時点における第3燃料過多噴射フラグXQP3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定してステップ2420に進む。
CPU81は、ステップ2420にて、下記(17)式に第1状態判定ルーチンにおける第2NOx濃度ずれΔNOx(Qtgt2)の値および第2状態判定ルーチンにおける第1NOx濃度ずれΔNOx(Ocon1)の値を適用することにより、第3NOx濃度平均ずれΔNOxave3を取得する。
ΔNOxave3={ΔNOx(Qtgt2)+ΔNOx(Ocon1)}/2 ・・・(17)
その後、CPU81は、ステップ2495に進んで本ルーチンを一旦終了する。
CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110を経由してステップ2120に進む。現時点における第3燃料過多噴射フラグXQP3の値は「1」であるので、CPU81は、ステップ2120にて「Yes」と判定し、ステップ2150に進む。
CPU81は、ステップ2150にて、下記(18)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(18)式において、M1は所定の負の係数である。そのため、燃料噴射量補正量Qcは負の数となる。
Qc=M1・|ΔNOxave3| ・・・(18)
次いで、CPU81は、ステップ2160に進み、燃料噴射量の目標値Qtgtに上記燃料噴射量補正量Qcを加算する。燃料噴射量補正量Qcは負の数であるので、実際には、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ減少せしめられる。
次いで、CPU81は、ステップ2170に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは負の数であるので、実際には減算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2180に進み、第3燃料過多噴射フラグXQP3の値に「0」を格納し、第3燃料過少噴射フラグXQN3の値に「0」を格納する。
次いで、CPU81は、ステップ2140に進み、上述したように補正された目標値Qtgtだけの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、その燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtだけの燃料が燃料噴射気筒内に噴射される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されているとき(すなわち、第3燃料過多噴射フラグXQP3の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(減少)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが正である」と判定されている場合に実行される処理である。
(場合3−2)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されている場合
この場合、第1燃料過少噴射フラグXQN1の値は「1」に設定されており(上記場合1−4を参照。)、かつ、第2燃料過少噴射フラグXQN2の値は「1」に設定されている(上記場合2−2を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305およびステップ2310を経由し、ステップ2320に進む。
CPU81は、ステップ2320にて第1燃料過少噴射フラグXQN1の値が「1」であり且つ第2燃料過少噴射フラグXQN2の値が「1」であるか否かを判定する。現時点における第1燃料過少噴射フラグXQN1の値は「1」であり且つ第2燃料過少噴射フラグXQN2の値は「1」であるので、CPU81は、ステップ2320にて「Yes」と判定してステップ2325に進む。
CPU81は、ステップ2325にて、第3燃料過少噴射フラグXQN3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3燃料過少噴射フラグXQN3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110を経由してステップ2120に進む。現時点における第3燃料過多噴射フラグXQP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2120にて「No」と判定し、ステップ2130に進む。
現時点における第3燃料過少噴射フラグXQN3の値は「1」であるので、CPU81は、ステップ2130にて「Yes」と判定してステップ2190に進む。
CPU81は、ステップ2190にて、下記(19)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、燃料噴射量を補正するための燃料噴射量補正量Qcを取得する。下記(19)式において、M2は所定の正の係数である。そのため、燃料噴射量補正量Qcは正の数となる。
Qc=M2・|ΔNOxave2| ・・・(19)
次いで、CPU81は、ステップ2160に進み、燃料噴射量の目標値Qtgtに燃料噴射量補正量Qcを加算する。上述したように燃料噴射量補正量Qcは正の数であるので、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ増大せしめられる。
次いで、CPU81は、ステップ2170に進み、燃料噴射量補正量の積算値Qcsumに燃料噴射量補正量Qcを加算する(Qcは正の数であるので、実際に加算する)ことにより、新たな燃料噴射量補正量の積算値Qcsumを取得(更新)する。取得(更新)された燃料噴射量補正量の積算値Qcsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2180に進み、第3燃料過多噴射フラグXQP3の値に「0」を格納し、第3燃料過少噴射フラグXQN3の値に「0」を格納する。
次いで、CPU81は、ステップ2140に進み、補正された目標値Qtgtの燃料を燃料噴射気筒に設けられている燃料噴射装置22から噴射するように、燃料噴射装置22に指示を与える。すなわち、このとき、補正された目標値Qtgtの燃料が燃料噴射装置22に噴射(噴射)される。その後、CPU81は、ステップ2195に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されているとき(すなわち、第3燃料過少噴射フラグXQN3の値が「1」であるとき)、燃料噴射量の目標値Qtgtは燃料噴射量補正量Qcだけ補正(増大)せしめられる。この結果、燃料噴射量の実際値Qactは目標値Qtgtに近づけられるので、燃料噴射量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「燃料噴射量ずれが負である」と判定されている場合に実行される処理である。
(場合3−3)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されている場合
この場合、第1吸入空気量過多検出フラグXGAP1の値は「1」に設定されており(上記場合1−2を参照。)、かつ、第2吸入空気量過多検出フラグXGAP2の値は「1」に設定されている(上記場合2−4を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310およびステップ2320を経由し、ステップ2330に進む。
CPU81は、ステップ2330にて第1吸入空気量過多検出フラグXGAP1の値が「1」であり且つ第2吸入空気量過多検出フラグXGAP2の値が「1」であるか否かを判定する。現時点における第1吸入空気量過多検出フラグXGAP1の値は「1」であり且つ第2吸入空気量過多検出フラグXGAP2の値は「1」であるので、CPU81は、ステップ2330にて「Yes」と判定してステップ2335に進む。
CPU81は、ステップ2335にて、第3吸入空気量過多検出フラグXGAP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、ステップ2210を経由してステップ2220に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は「1」であるので、CPU81は、ステップ2220にて「Yes」と判定してステップ2240に進む。
CPU81は、ステップ2240にて、下記(20)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(20)式において、M3は所定の負の係数である。そのため、吸入空気量補正量Gacは負の数となる。
Gac=M3・|ΔNOxave3| ・・・(20)
次いで、CPU81は、ステップ2250に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは負の数であるので、実際には、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ減少せしめられる。
次いで、CPU81は、ステップ2260に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは負の数であるので、実際には減算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、ステップ2270に進み、第3吸入空気量過多検出フラグXGAP3の値に「0」を格納し、第3吸入空気量過少検出フラグXGAN3の値に「0」を格納する。その後、CPU81は、ステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されているとき(すなわち、第3吸入空気量過多検出フラグXGAP1の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(減少)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが正である」と判定されている場合に実行される処理である。
(場合3−4)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「少なくとも吸入空気量ずれが負である」と判定されている場合
この場合、第1吸入空気量過少検出フラグXGAN1の値は「1」に設定されており(上記場合1−3を参照。)、かつ、第2吸入空気量過少検出フラグXGAN2の値は「1」に設定されている(上記場合2−1を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310、ステップ2320およびステップ2330を経由し、ステップ2340に進む。
CPU81は、ステップ2340にて第1吸入空気量過少検出フラグXGAN1の値が「1」であり且つ第2吸入空気量過少検出フラグXGAN2の値が「1」であるか否かを判定する。現時点における第1吸入空気量過少検出フラグXGAN1の値は「1」であり且つ第2吸入空気量過少検出フラグXGAN2の値は「1」であるので、CPU81は、ステップ2340にて「Yes」と判定してステップ2345に進む。
CPU81は、ステップ2345にて、第3吸入空気量過多検出フラグXGAP3の値に「1」を格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3吸入空気量過少検出フラグXGAN3の値は「1」であるので、CPU81は、ステップ2410にて「Yes」と判定し、ステップ2420に進む。CPU81は、ステップ2420にて第3NOx濃度平均ずれΔNOxave3を取得し、ステップ2495に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図6のステップ2200から処理を開始すると、ステップ2210を経由してステップ2220に進む。現時点における第3吸入空気量過多検出フラグXGAP3の値は上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2220にて「No」と判定してステップ2230に進む。
現時点における第3吸入空気量過少検出フラグXGAN3の値は「1」であるので、CPU81は、ステップ2230にて「Yes」と判定してステップ2280に進む。
CPU81は、ステップ2280にて、下記(21)式に第3NOx濃度平均ずれΔNOxave3の値を適用することにより、吸入空気量を補正するための吸入空気量補正量Gacを取得する。下記(21)式において、M4は所定の正の係数である。そのため、吸入空気量補正量Gacは正の数となる。
Gac=M4・|ΔNOxave3| ・・・(21)
次いで、CPU81は、ステップ2250に進み、吸入空気量の測定値Gamsrに吸入空気量補正量Gacを加算する。吸入空気量補正量Gacは正の数であるので、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ増大せしめられる。
次いで、CPU81は、ステップ2260に進み、吸入空気量補正量の積算値Gacsumに吸入空気量補正量Gacを加算する(Gacは正の数であるので、実際に加算する)ことにより、新たな吸入空気量補正量の積算値Gacsumを取得(更新)する。取得(更新)された吸入空気量補正量の積算値Gacsumの値は、バックアップRAM84に格納される。
次いで、CPU81は、CPU81は、ステップ2270に進み、第3吸入空気量過多検出フラグXGAP3の値に「0」を格納し、第3吸入空気量過少検出フラグXGAN3の値に「0」を格納する。その後、CPU81は、ステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて少なくとも吸入空気量ずれが負であると判定されているとき(すなわち、第3吸入空気量過少検出フラグXGAN3の値が「1」であるとき)、吸入空気量の測定値Gamsrは吸入空気量補正量Gacだけ補正(増大)せしめられる。この結果、吸入空気量の測定値Gamsrは実際値Gaactに近づけられるので、吸入空気量ずれの大きさが低減される。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて少なくとも吸入空気量ずれが負であると判定されている場合に実行される処理である。
(場合3−5)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されている場合
この場合、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、および、第1他異常発生フラグXOTH1の値、の全ては「0」に設定されている(上記場合1−5を参照。)。さらに、この場合、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、の全ては「0」に設定されている(場合2−5を参照。)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2300に続くステップ2305にて「Yes」と判定し、ステップ2350に進む。
CPU81は、ステップ2350〜ステップ2365の処理をこの順に実行する。具体的に述べると、CPU81は、ステップ2350にて第3燃料過多噴射フラグXQP3の値に「0」を、ステップ2355にて第3燃料過少噴射フラグXQN3の値に「0」を、ステップ2360にて第3吸入空気量過多検出フラグXGAP3の値に「0」を、ステップ2365にて第3吸入空気量過少検出フラグXGAN3の値に「0」を、格納する。その後、CPU81は、ステップ2395に進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図24のステップ2400から処理を開始すると、ステップ2410に進む。現時点における第3燃料過多噴射フラグXQP3の値、第3燃料過少噴射フラグXQN3の値、第3吸入空気量過多検出フラグXGAP3の値、および、第3吸入空気量過少検出フラグXGAN3の値の全ては、上記第3初期設定仮定に従えば「0」であるので、CPU81は、ステップ2410にて「No」と判定してステップ2495に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、現時点における第3燃料過多噴射フラグXQP3の値は「0」であり且つ第3燃料過少噴射フラグXQN3の値は「0」であるので、ステップ2110、ステップ2120、ステップ2130およびステップ2140を経由してステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、現時点における第3吸入空気量過多検出フラグXGAP3の値は「0」であり且つ第3吸入空気量過少検出フラグXGAN3の値は「0」であるので、ステップ2210、ステップ2220およびステップ2230を経由してステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されているとき(すなわち、第3燃料過多噴射フラグXQP3の値が「0」であり且つ第3燃料過少噴射フラグXQN3の値が「0」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれがゼロであり且つ燃料噴射量ずれがゼロである」と判定されている場合に実行される処理である。
(場合3−6)第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されている場合
この場合、第1他異常発生フラグXOTH1の値は「1」に設定されており(上記場合1−6を参照。)、かつ、第2他異常発生フラグXOTH2の値は「1」に設定されている(上記場合2−6を参照)。
よって、この場合、CPU81は、図23のステップ2300から処理を開始すると、ステップ2305、ステップ2310、ステップ2320、ステップ2330およびステップ2340を経由し、ステップ2370に進む。
CPU81は、ステップ2370にて、第3他異常発生フラグXOTH3の値に「1」を格納する。次いで、CPU81は、接続指標Aを経由してステップ2350に進む。CPU81は、ステップ2350〜ステップ2365を経由してステップ2395に進み、本ルーチンを一旦終了する。よって、この場合、第3燃料過多噴射フラグXQP3の値は「0」であり、第3燃料過少噴射フラグXQN3の値は「0」であり、第3吸入空気量過多検出フラグXGAP3の値は「0」であり、第3吸入空気量過少検出フラグXGAN3の値は「0」である。
ここで、CPU81は、図24のステップ2400から処理を開始すると、ステップ2400に続くステップ2410にて「No」と判定し、ステップ2495に直接進んで本ルーチンを一旦終了する。
ここで、CPU81は、所定のタイミングにて図21のステップ2100から処理を開始すると、ステップ2110、ステップ2120、ステップ2130およびステップ2140を経由してステップ2195に進んで本ルーチンを一旦終了する。
さらに、CPU81は、所定のタイミングにて図22のステップ2200から処理を開始すると、ステップ2210、ステップ2220およびステップ2230を経由してステップ2295に進んで本ルーチンを一旦終了する。
このように、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されているとき(すなわち、第1他異常発生フラグXOTH1の値が「1」であるとき)、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンおよび第2状態判定ルーチンの双方にて「吸入空気量ずれおよび燃料噴射量ずれ以外のずれが生じている」と判定されている場合に実行される処理である。
(場合3−7)第1状態判定ルーチンによる判定の結果と、第2状態判定ルーチンによる判定の結果と、が異なる場合
この場合、例えば、第1状態判定ルーチンにて「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」と判定されれば、第2状態判定ルーチンにて「燃料噴射量ずれがゼロであり且つ吸入空気量ずれがゼロである」とは判定されない。そのため、第1燃料過多噴射フラグXQP1の値、第1燃料過少噴射フラグXQN1の値、第1吸入空気量過多検出フラグXGAP1の値、第1吸入空気量過少検出フラグXGAN1の値、第1他異常発生フラグXOTH1の値、第2燃料過多噴射フラグXQP2の値、第2燃料過少噴射フラグXQN2の値、第2吸入空気量過多検出フラグXGAP2の値、第2吸入空気量過少検出フラグXGAN2の値、および、第2他異常発生フラグXOTH2の値、のうちの少なくとも1つは「1」である。
よって、CPU81は、図23のステップ2300から処理を開始ステップ2305に進むと、ステップ2305にて「No」と判定してステップ2310に進む。
この場合3−7において、第1燃料過多噴射フラグXQP1の値および第2燃料過多噴射フラグXQP2の値のうちの一方が「1」であれば、他方は「0」である。さらに、第1燃料過少噴射フラグXQN1の値および第2燃料過少噴射フラグXQN2の値のうちの一方が「1」であれば、他方は「0」である。加えて、第1吸入空気量過多検出フラグXGAP1の値および第2吸入空気量過多検出フラグXGAP2の値のうちの一方が「1」であれば、他方は「0」である。さらに加えて、第1吸入空気量過少検出フラグXGAN1の値および第2吸入空気量過少検出フラグXGAN2の値のうちの一方が「1」であれば、他方は「0」である。
よって、CPU81は、ステップ2310、ステップ2320、ステップ2330およびステップ2340の全てにて「No」と判定してステップ2370に進む。
CPU81は、ステップ2370にて第3他異常発生フラグXOTH3の値に「1」を格納し、接続指標Aを経由してステップ2350に進む。次いで、CPU81は、ステップ2350〜ステップ2365の処理をこの順に実行し、ステップ2395に進んで本ルーチンを一旦終了する。
このように、この場合3−7においては、上記場合3−6と同様、第3他異常発生フラグXOTH3の値は「1」であり、第3燃料過多噴射フラグXQP3の値は「0」であり、第3燃料過少噴射フラグXQN3の値は「0」であり、第3吸入空気量過多検出フラグXGAP3の値は「0」であり、第3吸入空気量過少検出フラグXGAN3の値は「0」である。
したがって、上記場合3−6にて説明したように、この場合において燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrは補正されない。以上が、第1状態判定ルーチンによる判定の結果と第2状態判定ルーチンによる判定の結果とが異なる場合に実行される処理である。
以上、場合3−1〜3−7に場合を分けて説明したように、第3装置は、第1状態判定方法に基づく判定の結果と第2状態判定方法に基づく判定の結果とが「一致している」とき、それら判定の結果に応じて吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正する。一方、第3装置は、第1状態判定方法に基づく判定の結果と第2状態判定方法に基づく判定の結果とが「異なる」とき、吸入空気量の測定値Gamsrおよび燃料噴射量の目標値Qtgtを補正しない。
さらに、CPU81は、所定のタイミングにて図11のステップ1100から処理を開始すると、ステップ1110に進み、吸入空気量補正量の積算値Gacsumが所定の閾値Gacsumthよりも大きいか否かを判定する。
吸入空気量補正量の積算値Gacsumが上記閾値Gacsumthよりも大きければ、CPU81は、ステップ1110にて「Yes」と判定してステップ1120に進む。CPU81は、ステップ1120にて「吸入空気量センサ71が異常である」旨を図示しない表示装置に表示させ、ステップ1130に進む。
これに対し、吸入空気量補正量の積算値Gacsumが上記閾値Gacsumth以下であれば、CPU81は、ステップ1110にて「No」と判定してステップ1130に直接進む。すなわち、「吸入空気量センサ71が異常である」旨の表示はなされない。
CPU81は、ステップ1130にて、燃料噴射量補正量の積算値Qcsumが所定の閾値Qcsumthよりも大きいか否かを判定する。
燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumthよりも大きければ、CPU81は、ステップ1130にて「Yes」と判定してステップ1140に進む。CPU81は、ステップ1140にて「燃料噴射装置22が異常である」旨を図示しない表示装置に表示させ、ステップ1195に進んで本ルーチンを一旦終了する。
これに対し、燃料噴射量補正量の積算値Qcsumが上記閾値Qcsumth以下であれば、CPU81は、ステップ1130にて「No」と判定してステップ1195に直接進んで本ルーチンを一旦終了する。すなわち、「燃料噴射装置22が異常である」旨の表示はなされない。
ところで、上述したように、第3燃料過多噴射フラグXQP3の値および第3燃料過少噴射フラグXQN3の値は、燃料噴射量の目標値Qtgtが補正された後に「0」に再設定される(図21のステップ2180を参照。)。そのため、例えば燃料噴射量ずれ「のみ」が生じている場合、一の時点において上記処理が実行されることによって燃料噴射量ずれが十分に補正されなければ(すなわち、燃料噴射量ずれがゼロにならなければ)、その一の時点以降の他の時点において第3状態判定ルーチンが実行されたときに、第3燃料過多噴射フラグXQP3の値または第3燃料過少噴射フラグXQN3の値が「1」に再び設定される。その結果、上記他の時点においても燃料噴射量の目標値Qtgtが補正される。
一方、上記一の時点において燃料噴射量ずれが十分に補正されれば、上記他の時点において第3状態判定ルーチンが実行されたときに第3燃料過多噴射フラグXQP3の値および第3燃料過少噴射フラグXQN3の値が「1」に設定されない。その結果、他の時点において燃料噴射量の目標値Qtgtは補正されない。このように、第3装置は、燃料噴射量ずれ「のみ」が生じている場合、燃料噴射量ずれが十分に補正されるまで燃料噴射量の目標値Qtgtを繰り返し補正する。
さらに、第3吸入空気量過多検出フラグXGAP3の値および第3吸入空気量過少検出フラグXGAN3の値は、吸入空気量の測定値Gamsrが補正された後に「0」に再設定される(図22のステップ2270を参照。)。上記説明から明らかなように、第3装置は、吸入空気量ずれ「のみ」が生じている場合、吸入空気量ずれが十分に補正されるまで吸入空気量の測定値Gamsrを補正することを繰り返す。
一方、吸入空気量ずれおよび燃料噴射量ずれの「双方」が生じている場合、例えば上記一の時点において「少なくとも吸入空気量ずれが生じている」と判定されれば、吸入空気量の測定値Gamsrが補正された後に第3吸入空気量過多検出フラグXGAP3の値および第3吸入空気量過少検出フラグXGAN3の値が「0」に再設定される。この補正によって吸入空気量ずれが十分に補正されなければ、上記他の時点において再び「少なくとも吸入空気量ずれが生じている」と判定され、吸入空気量の測定値Gamsrが補正される。
一方、上記一の時点において実行された補正によって吸入空気量ずれが十分に補正されれば、上記他の時点において「燃料噴射量ずれが生じている」と判定され、燃料噴射量の目標値Qtgtが補正される。その後、燃料噴射量ずれが十分に補正されるまで、燃料噴射量の目標値Qtgtが補正されることが繰り返される。
このように、第3装置は、吸入空気量ずれおよび燃料噴射量ずれの「一方」が生じている場合であっても、それらの「双方」が生じている場合であっても、燃料噴射量ずれおよび吸入空気量ずれが十分に補正されるまで、上記補正を繰り返し実行する。
<装置の作用および効果>
第3装置は、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の「双方」に基づき、燃料噴射量ずれの状態および吸入空気量ずれの状態を判定する。したがって、第1状態判定ルーチンによる判定の結果および第2状態判定ルーチンによる判定の結果の「一方」に基づいてそれら状態を判定する場合に比べ、より正確にそれら状態を判定することができる。
ところで、上述したように、上記第1実施形態〜第3実施形態の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロ」、「正」および「負」のいずれであるかを判定すると共に、その判定の結果に応じて燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrのうちの少なくとも一方を補正するように構成されている。すなわち、これら実施形態の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロ以外」であれば、燃料噴射量の目標値Qtgtおよび吸入空気量の測定値Gamsrのうちの少なくとも一方を補正する。
しかし、例えば、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロを含む所定の範囲内の値」であることがエミッション排出量を低減する観点において許される場合、本発明の制御装置は、燃料噴射量ずれおよび吸入空気量ずれのうちの少なくとも一方が「ゼロを含む所定の範囲内の値」、「その所定の範囲内の最大値よりも大きい値」および「その所定の範囲内の最小値よりも小さい値」のいずれであるかを判定するように構成されてもよい。
このような制御装置は、例えば、図9のルーチンを、ステップ816にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「所定値以上」大きいか否か」が判定され、ステップ824にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が第2NOx濃度ずれΔNOx(Qtgt2)の値よりも「所定値以上」小さいか否か」が判定され、ステップ832にて「第1NOx濃度ずれΔNOx(Qtgt1)の値が「ゼロを含む所定の範囲内の値」であり且つ第2NOx濃度ずれΔNOx(Qtgt2)の値が「ゼロを含む所定の範囲内の値」であるか否か」が判定されるように変更することにより、構成され得る。さらに、このような制御装置は、例えば、図9のルーチンを、ステップ818およびステップ826にて「第2NOx濃度ずれΔNOx(Qtgt2)の値が「所定値以上」であるか否か」が判定されるように変更することにより、構成され得る。
加えて、このような制御装置は、例えば、図19のルーチンを、ステップ1816にて「第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「所定値以上」大きいか否か」が判定され、ステップ1824にて「第1NOx濃度ずれΔNOx(Ocon1)の値が第2NOx濃度ずれΔNOx(Ocon2)の値よりも「所定値以上」小さいか否か」が判定され、ステップ1832にて「第1NOx濃度ずれΔNOx(Ocon1)の値が「ゼロを含む所定の範囲内の値」であり且つ第2NOx濃度ずれΔNOx(Ocon2)の値が「ゼロを含む所定の範囲内の値」であるか否か」が判定されるように変更することにより、構成され得る。さらに、このような制御装置は、例えば、図19のルーチンを、ステップ1818およびステップ1826にて「第1NOx濃度ずれΔNOx(Ocon1)の値が「所定値以上」であるか否か」が判定されるように変更することにより、構成され得る。
ところで、図2に示す上記第1の関係R1(Qtgt,ΔNOx)から推定されるように、「燃料噴射量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない燃料噴射量の目標値Qtgt」が存在し得る。換言すると、「吸入空気量ずれがゼロまたは所定の範囲内の値であり且つ燃料噴射量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれΔNOxがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量が、存在し得る。以下、便宜上、この燃料噴射量を「特異燃料噴射量」とも称呼する。
燃料噴射量の目標値Qtgtが「特異燃料噴射量」であるときにNOx濃度ずれが生じた場合、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、そのNOx濃度ずれは「吸入空気量ずれ」に起因すると一義的に判定することができる。すなわち、この場合、上記第1実施形態において用いられている「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく、燃料噴射量の目標値Qtgtが所定値(特異燃料噴射量)であるときのNOx濃度ずれΔNOx「のみ」に基づき、状態判定を行うことができる。
さらに、上記同様、「吸入空気量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない燃料噴射量の目標値Qtgt」が存在し得る。換言すると、「燃料噴射量ずれがゼロまたは範囲内の値であり且つ吸入空気量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される燃料噴射量が、存在し得る。上記同様、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、この燃料噴射量を利用することによって「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができる。
なお、このような制御装置は、例えば、図9のルーチンを、ステップ816、ステップ824、ステップ832およびステップ842を削除するように変更することにより、構成され得る。
加えて、図12に示す上記第2の関係R2(Ocon,ΔNOx)から推定されるように、「燃料噴射量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない吸気酸素濃度Ocon」が存在し得る。換言すると、「吸入空気量ずれがゼロまたは所定の範囲内の値であり且つ燃料噴射量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれΔNOxがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度が、存在し得る。以下、便宜上、この吸気酸素濃度を「特異吸気酸素濃度」とも称呼する。
吸気酸素濃度Oconが「特異吸気酸素濃度」であるときにNOx濃度ずれが生じた場合、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、そのNOx濃度ずれは「吸入空気量ずれ」に起因すると一義的に判定することができる。すなわち、この場合、上記第2実施形態において用いられている「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく、吸気酸素濃度Oconが所定値(特異吸気酸素濃度)であるときのNOx濃度ずれΔNOx「のみ」に基づき、状態判定を行うことができる。
さらに、上記同様、「吸入空気量ずれがNOx濃度ずれΔNOxに実質的に影響を与えない吸気酸素濃度Ocon」が存在し得る。換言すると、「燃料噴射量ずれがゼロまたは範囲内の値であり且つ吸入空気量ずれがゼロまたは所定の範囲内の値でないときにNOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となる」ものと推定される吸気酸素濃度が、存在し得る。上記同様、燃料噴射量ずれおよび吸入空気量ずれ以外のずれが生じていないことがあらかじめ確認されていれば、この吸気酸素濃度を利用することによって「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができる。
なお、このような制御装置は、例えば、図19のルーチンを、ステップ1816、ステップ1824、ステップ1832およびステップ1842を削除するように変更することにより、構成され得る。
(実施形態の総括)
以上、説明したように、本発明の第1実施形態〜第3実施形態に係る制御装置は、
燃料噴射量の目標値Qtgtを決定する燃料噴射量目標値決定手段(図5、図16および図21のルーチン)と、
吸気酸素濃度関連パラメータの測定値、推定値または目標値(第1実施形態〜第3実施形態においては、吸入空気量の測定値Gamsr)を取得する吸気酸素濃度関連パラメータ取得手段(図6、図17および図22のルーチン)と、
前記吸気酸素濃度関連パラメータGamsrに基づいて前記吸気酸素濃度Oconを取得する吸気酸素濃度取得手段(図8のステップ808および図18のステップ1808)と、
NOx濃度の測定値または推定値(第1実施形態〜第3実施形態においては、NOx濃度の測定値NOxmsr)を取得するNOx濃度取得手段(図8のステップ804および図18のステップ1808)と、
所定のNOx参照濃度NOxrefに対する前記NOx濃度の測定値または推定値NOxmsrの差を表すNOx濃度ずれΔNOxの前記燃料噴射量の目標値Qtgtが所定の範囲内(第1実施形態におけるQtgt1≦Qtgt≦Qtgt2)にて増大したときの変化量および前記燃料噴射量の目標値Qtgtが所定の第1の値(第1実施形態におけるQtgt2)であるときの前記NOx濃度ずれΔNOx(Qtgt2)を含む第1の判定指標、ならびに、前記吸気酸素濃度Oconが所定の範囲内(第2実施形態におけるOcon1≦Qtgt≦Ocon2)にて増大したときの前記NOx濃度ずれΔNOxの変化量および前記吸気酸素濃度Oconが所定の第2の値(第2実施形態におけるOcon1)であるときの前記NOx濃度ずれΔNOx(Ocon1)を含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値Qtgtに対する該燃料噴射量の実際値Qactの差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値Gaactに対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrの差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段(図8および図9のルーチン、ならびに、図18および図19のルーチン)と、
を備える。
さらに、上述したように、本発明の第1実施形態〜第3実施形態に係る制御装置は、「燃料噴射量の目標値Qtgtが増大したときのNOx濃度ずれΔNOxの変化量」および「吸気酸素濃度Oconが増大したときのNOx濃度ずれΔNOxの変化量」を用いることなく状態判定を行うことができるように構成され得る。
具体的に述べると、上記各実施形態に係る制御装置は、
燃料噴射量の目標値Qtgtを決定する燃料噴射量目標値決定手段(図5、図16および図21のルーチン)と、
吸気酸素濃度関連パラメータの測定値、推定値または目標値(第1実施形態〜第3実施形態においては、吸入空気量の測定値Gamsr)を取得する吸気酸素濃度関連パラメータ取得手段(図6、図17および図22のルーチン)と、
前記吸気酸素濃度関連パラメータGamsrに基づいて前記吸気酸素濃度Oconを取得する吸気酸素濃度取得手段(図8のステップ808および図18のステップ1808)と、
NOx濃度の測定値または推定値(第1実施形態〜第3実施形態においては、NOx濃度の測定値NOxmsr)を取得するNOx濃度取得手段(図8のステップ804および図18のステップ1808)と、
所定のNOx参照濃度NOxrefに対する前記NOx濃度の測定値または推定値NOxmsrの差を表すNOx濃度ずれΔNOxであって前記燃料噴射量の目標値Qtgtが所定の第1の値(特異燃料噴射量)であるときのNOx濃度ずれΔNOxを含む第1の判定指標、および、前記吸気酸素濃度Oconが所定の第2の値(特異吸気酸素濃度)であるときの前記NOx濃度ずれΔNOxを含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値Qtgtに対する該燃料噴射量の実際値Qactの差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値Gaactに対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrの差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段であって、
前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量(特異燃料噴射量)、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、のうちの少なくとも一方を前記第1の値として採用すると共に、
前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度(特異吸気酸素濃度)、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、のうちの少なくとも一方を前記第2の値として採用する状態判定手段(図9のルーチンからステップ816、ステップ824、ステップ832およびステップ842を削除して得られるルーチン、ならびに、図19のルーチンからステップ1816、ステップ1824、ステップ1832およびステップ1842を削除して得られるルーチン)と、
を備えるように構成され得る。
さらに、上記各実施形態に係る制御装置は、
前記燃料噴射量ずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記燃料噴射量の目標値Qtgtを第1補正量Qcだけ減少するように補正し、
前記燃料噴射量ずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記燃料噴射量の目標値Qtgtを第2補正量Qcだけ増大するように補正し、
前記吸気酸素濃度関連パラメータずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを第3補正量Gacだけ減少するように補正し、
前記吸気酸素濃度関連パラメータずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを第4補正量Gacだけ増大するように補正する補正手段(第1実施形態における図5および図6のルーチン、第2実施形態における図16および図17のルーチン、ならびに、第3実施形態における図21および図22のルーチン)、を備える。
加えて、上記実施形態(第3実施形態)に係る制御装置において、
前記状態判定手段は、
前記第1の判定指標および前記第2の判定指標の双方に基づき、前記燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する(図23のルーチン)、ように構成されている。
さらに加えて、上記各実施形態に係る制御装置において、
前記補正手段は、
前記NOx濃度ずれΔNOxの大きさに応じて前記第1補正量Qcの大きさ、前記第2補正量Qcの大きさ、前記第3補正量Gacの大きさおよび前記第4補正量Gacの大きさを決定する、ように構成されている。
さらに、上記各実施形態に係る制御装置において、
前記補正手段は、
前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記燃料噴射量の目標値Qtgtを補正することを繰り返し、前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrを補正することを繰り返す、ように構成されている(図5のステップ580と図9のルーチンとの組み合わせ、図16のステップ1680と図19のルーチンとの組み合わせ、および、図21のステップ2180と図23のルーチンとの組み合わせ)。
加えて、上記各実施形態に係る制御装置は、
前記燃料が正常に噴射されているか否か、および、前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが正常に取得されているか否か、のうちの少なくとも一方を判定する異常判定手段であって、前記第1補正量Qcおよび前記第2補正量Qcのうちの少なくとも一方が所定の閾値Qcsumthよりも大きいときに前記燃料が正常に噴射されていないと判定し、前記第3補正量Gacおよび前記第4補正量Gacのうちの少なくとも一方が所定の閾値Gacsumthよりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する異常判定手段(図11のルーチン)を備えている。
より具体的に述べると、前記異常判定手段は、
前記燃料噴射量の目標値Qtgtが補正される毎に前記第1補正量Qcを積算し、
前記燃料噴射量の目標値Qtgtが補正される毎に前記第2補正量Qcを積算し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが補正される毎に前記第3補正量Gacを積算し、
前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが補正される毎に前記第4補正量Gacを積算すると共に、
前記積算された第1補正量の値Qcsumおよび前記積算された第2補正量の値Qcsumのうちの少なくとも一方が所定の閾値Qcsumthよりも大きいときに前記燃料が正常に噴射されていないと判定し、前記積算された第3補正量の値Gacsumおよび前記積算された第4補正量の値Gacsumのうちの少なくとも一方が所定の閾値Gacsumthよりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値Gamsrが正常に取得されていないと判定する、ように構成されている(図11のルーチン)。
なお、上述したように、上記各実施形態に係る制御装置において、
前記吸気酸素濃度関連パラメータ取得手段は、
内燃機関10に吸入される空気の量である吸入空気量Gaを前記吸気酸素濃度関連パラメータのうちの1つとして採用する、ように構成されている(図6、図17および図22のルーチン)。
さらに、上記各実施形態に係る制御装置において、
前記第1の値Qtgt2および前記第2の値Ocon1は、
前記吸気酸素濃度と前記燃料噴射量とに基づいて前記NOx濃度を推定するNOx濃度推定モデル(上記(5)式を参照。)を利用して定められる、ように構成されている。
以上、本発明を詳細にまた特定の実施態様を参照して説明したが、本発明の精神と範囲を逸脱することなく様々な変形や修正を加えることができることは当業者にとって明らかである。
例えば、上記各実施形態の制御装置は、「あらかじめ定められている、機関10の運転状態とNOx濃度との関係(マップ)」に基づいてNOx参照濃度を取得している。しかし、本発明の制御装置は、上記「NOx濃度推定モデル」を利用してNOx参照濃度を定めるように構成され得る。
さらに、上記各実施形態の制御装置は、NOx参照濃度NOxrefとNOx濃度の測定値NOxmsrとに基づいてNOx濃度ずれを定めている。しかし、本発明の制御装置は、NOx参照濃度NOxrefとNOx濃度の「推定値」とに基づいてNOx濃度ずれΔNOxを定めるように構成され得る。
加えて、上記各実施形態の制御装置は、吸気酸素濃度関連パラメータとして「吸入空気量」を採用している。しかし、本発明の制御装置は、吸気酸素濃度関連パラメータとして、燃料噴射量、機関回転速度、吸気通路内のガスの圧力、排気通路内のガスの圧力、燃料噴射時期、EGR率、および、吸気酸素濃度測定装置の出力値などのうちの少なくとも1つを採用するように構成され得る。そして、これらの測定値、推定値または目標値を用いて上記状態判定が行われる。
さらに、上記各実施形態の制御装置は、第1の判定指標に係る「第1の値」として上記所定の範囲(Qtgt1≦Qtgt≦Qtgt2)の最大値(Qtgt2)を採用している。しかし、第1の値は、この値に限定されない。例えば、本発明の制御装置は、上記所定の範囲に含まれる任意の値を「第1の値」として採用するように構成され得る。さらに、本発明の制御装置は、上記状態判定を行うために適切な値であれば、上記所定の範囲に含まれない値を「第1の値」として採用するように構成され得る。
さらに、本発明の制御装置は、「第1の値」として、「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量」を採用するように構成され得る。「第1の値」としてこの値が採用されれば、燃料噴射量ずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
さらに、本発明の制御装置は、「第1の値」として、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量」を採用するように構成され得る。「第1の値」としてこの値が採用されれば、吸気酸素濃度関連パラメータずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
加えて、上記各実施形態の制御装置は、第2の判定指標に係る「第2の値」として上記所定の範囲(Ocon1≦Ocon≦Ocon2)の最小値(Ocon1)を採用している。しかし、第1の値は、この値に限定されない。例えば、本発明の制御装置は、上記所定の範囲に含まれる任意の値を「第2の値」として採用するように構成され得る。さらに、本発明の制御装置は、上記状態判定を行うために適切な値であれば上記所定の範囲に含まれない値であっても、その値を「第2の値」として採用するように構成され得る。
加えて、本発明の制御装置は、「第2の値」として、「前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度」を採用するように構成され得る。「第2の値」としてこの値が採用されれば、燃料噴射量ずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
さらに、本発明の制御装置は、「第2の値」として、「前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度」を採用するように構成され得る。「第2の値」としてこの値が採用されれば、吸気酸素濃度関連パラメータずれがNOx濃度ずれに実質的に影響を与えないので、より適切に吸気酸素濃度関連パラメータずれの状態を判定することができる。
加えて、上記各実施形態の制御装置は、燃料噴射量の補正量および吸入空気量の補正量を「第1NOx濃度ずれの値および第2NOx濃度ずれの値の平均値」に基づいて定めている。しかし、本発明の制御装置は、これら補正量を「第1NOx濃度ずれの値、および、第2NOx濃度ずれの値のいずれか一方」に基づいて定めるように構成され得る。さらに、本発明の制御装置は、これら補正量を上記NOx濃度推定モデルに基づいて定めるように構成され得る。さらに加えて、本発明の制御装置は、これら補正量を「あらかじめ取得されている、NOx濃度ずれの値と補正量との関係(マップ)」に基づいて定めるように構成され得る。
さらに、上記各実施形態の制御装置は、NOx濃度ずれの変化量およびNOx濃度ずれの値「のみ」に基づいて上記状態判定を行うように構成されている。しかし、本発明の制御装置は、NOx濃度ずれの変化量およびNOx濃度ずれの値、ならびに、それら「以外」のパラメータであって上記状態判定に影響を与え得るパラメータ、に基づいて上記状態判定を行うように構成され得る。

Claims (12)

  1. 内燃機関の運転状態に基づいて該内燃機関の気筒内に噴射される燃料の量である燃料噴射量の目標値を決定する燃料噴射量目標値決定手段と、
    前記気筒内に吸入されるガスの酸素濃度である吸気酸素濃度に関連するパラメータである吸気酸素濃度関連パラメータの測定値、推定値または目標値を取得する吸気酸素濃度関連パラメータ取得手段と、
    前記吸気酸素濃度関連パラメータに基づいて前記吸気酸素濃度を取得する吸気酸素濃度取得手段と、
    前記気筒から排出されるガスの窒素酸化物濃度であるNOx濃度の測定値または推定値を取得するNOx濃度取得手段と、
    所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれの前記燃料噴射量の目標値が所定の範囲内にて増大したときの変化量および前記燃料噴射量の目標値が所定の第1の値であるときの前記NOx濃度ずれを含む第1の判定指標、ならびに、前記吸気酸素濃度が所定の範囲内にて増大したときの前記NOx濃度ずれの変化量および前記吸気酸素濃度が所定の第2の値であるときの前記NOx濃度ずれを含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段と、
    を備えた内燃機関の制御装置。
  2. 内燃機関の運転状態に基づいて該内燃機関の気筒内に噴射される燃料の量である燃料噴射量の目標値を決定する燃料噴射量目標値決定手段と、
    前記気筒内に吸入されるガスの酸素濃度である吸気酸素濃度に関連するパラメータである吸気酸素濃度関連パラメータの測定値、推定値または目標値を取得する吸気酸素濃度関連パラメータ取得手段と、
    前記吸気酸素濃度関連パラメータに基づいて前記吸気酸素濃度を取得する吸気酸素濃度取得手段と、
    前記気筒から排出されるガスの窒素酸化物濃度であるNOx濃度の測定値または推定値を取得するNOx濃度取得手段と、
    所定のNOx参照濃度に対する前記NOx濃度の測定値または推定値の差を表すNOx濃度ずれであって前記燃料噴射量の目標値が所定の第1の値であるときのNOx濃度ずれを含む第1の判定指標、および、前記吸気酸素濃度が所定の第2の値であるときの前記NOx濃度ずれを含む第2の判定指標、のうちの少なくとも一方に基づき、前記燃料噴射量の目標値に対する該燃料噴射量の実際値の差を表す燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータの実際値に対する該吸気酸素濃度関連パラメータの測定値、推定値または目標値の差を表す吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する状態判定手段であって、
    前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、のうちの少なくとも一方を前記第1の値として採用すると共に、
    前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、のうちの少なくとも一方を前記第2の値として採用する状態判定手段と、
    を備えた内燃機関の制御装置。
  3. 請求の範囲1または請求の範囲2に記載の制御装置であって、
    前記燃料噴射量ずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記燃料噴射量の目標値を第1補正量だけ減少するように補正し、
    前記燃料噴射量ずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記燃料噴射量の目標値を第2補正量だけ増大するように補正し、
    前記吸気酸素濃度関連パラメータずれが正または前記所定の範囲内の最大値よりも大きい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第3補正量だけ減少するように補正し、
    前記吸気酸素濃度関連パラメータずれが負または前記所定の範囲内の最小値よりも小さい値であると判定されていれば前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を第4補正量だけ増大するように補正する補正手段、
    を備えた内燃機関の制御装置。
  4. 請求の範囲1〜請求の範囲3のいずれか一項に記載の制御装置において、
    前記状態判定手段は、
    前記第1の判定指標および前記第2の判定指標の双方に基づき、前記燃料噴射量ずれがゼロ、正および負のいずれであるか、あるいは、前記燃料噴射量ずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、ならびに、前記吸気酸素濃度関連パラメータずれがゼロ、正および負のいずれであるか、あるいは、前記吸気酸素濃度関連パラメータずれがゼロを含む所定の範囲内の値、該所定の範囲内の最大値よりも大きい値および該所定の範囲内の最小値よりも小さい値のいずれであるか、のうちの少なくとも1つを判定する、ように構成された内燃機関の制御装置。
  5. 請求の範囲3または請求の範囲4のいずれか一項に記載の制御装置において、
    前記補正手段は、
    前記NOx濃度ずれの大きさに応じて前記第1補正量の大きさ、前記第2補正量の大きさ、前記第3補正量の大きさおよび前記第4補正量の大きさを決定する、ように構成された内燃機関の制御装置。
  6. 請求の範囲3〜請求の範囲5のいずれか一項に記載の制御装置において、
    前記補正手段は、
    前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記燃料噴射量の目標値を補正することを繰り返し、前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であると判定されるまで前記吸気酸素濃度関連パラメータの測定値、推定値または目標値を補正することを繰り返す、ように構成された内燃機関の制御装置。
  7. 請求の範囲3〜請求の範囲6のいずれか一項に記載の制御装置であって、
    前記燃料が正常に噴射されているか否か、および、前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されているか否か、のうちの少なくとも一方を判定する異常判定手段であって、前記第1補正量および前記第2補正量のうちの少なくとも一方が所定の閾値よりも大きいときに前記燃料が正常に噴射されていないと判定し、前記第3補正量および前記第4補正量のうちの少なくとも一方が所定の閾値よりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する異常判定手段、を備えた内燃機関の制御装置。
  8. 請求の範囲6または請求の範囲7に記載の制御装置において、
    前記異常判定手段は、
    前記燃料噴射量の目標値が補正される毎に前記第1補正量を積算し、
    前記燃料噴射量の目標値が補正される毎に前記第2補正量を積算し、
    前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第3補正量を積算し、
    前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が補正される毎に前記第4補正量を積算すると共に、
    前記積算された第1補正量の値および前記積算された第2補正量の値のうちの少なくとも一方が所定の閾値よりも大きいときに前記燃料が正常に噴射されていないと判定し、前記積算された第3補正量の値および前記積算された第4補正量の値のうちの少なくとも一方が所定の閾値よりも大きいときに前記吸気酸素濃度関連パラメータの測定値、推定値または目標値が正常に取得されていないと判定する、ように構成された内燃機関の制御装置。
  9. 請求の範囲1および請求の範囲3〜請求の範囲8のいずれか一項に記載の制御装置において、
    前記状態判定手段は、
    前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される燃料噴射量、のうちの少なくとも一方を前記第1の値として採用し、
    前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値であり且つ前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、および、前記燃料噴射量ずれがゼロまたは前記所定の範囲内の値であり且つ前記吸気酸素濃度関連パラメータずれがゼロまたは前記所定の範囲内の値でないときに前記NOx濃度ずれがゼロまたはゼロを含む所定の範囲内の値となるものと推定される吸気酸素濃度、のうちの少なくとも一方を前記第2の値として採用する、ように構成された内燃機関の制御装置。
  10. 請求の範囲1〜請求の範囲9のいずれか一項に記載の制御装置において、
    前記吸気酸素濃度関連パラメータ取得手段は、
    前記内燃機関に吸入される空気の量である吸入空気量を前記吸気酸素濃度関連パラメータのうちの1つとして採用する、ように構成された内燃機関の制御装置。
  11. 請求の範囲1〜請求の範囲10のいずれか一項に記載の制御装置において、
    前記NOx参照濃度は、
    前記燃料噴射量と前記吸気酸素濃度とに基づいて前記NOx濃度を推定するNOx濃度推定モデルを利用して定められる、ように構成された内燃機関の制御装置。
  12. 請求の範囲1〜請求の範囲11に記載の制御装置において、
    前記第1の値および前記第2の値は、
    前記NOx濃度推定モデルを利用して定められる、ように構成された内燃機関の制御装置。
JP2012515702A 2010-05-17 2010-05-17 内燃機関の制御装置 Expired - Fee Related JP5234225B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/058684 WO2011145223A1 (ja) 2010-05-17 2010-05-17 内燃機関の制御装置

Publications (2)

Publication Number Publication Date
JP5234225B2 JP5234225B2 (ja) 2013-07-10
JPWO2011145223A1 true JPWO2011145223A1 (ja) 2013-07-22

Family

ID=44991347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012515702A Expired - Fee Related JP5234225B2 (ja) 2010-05-17 2010-05-17 内燃機関の制御装置

Country Status (5)

Country Link
US (1) US9080528B2 (ja)
EP (1) EP2573370A4 (ja)
JP (1) JP5234225B2 (ja)
CN (1) CN102893003B (ja)
WO (1) WO2011145223A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012032617A1 (ja) * 2010-09-08 2012-03-15 トヨタ自動車株式会社 流量検出装置
KR101234638B1 (ko) * 2010-11-18 2013-02-19 현대자동차주식회사 질소산화물의 양을 예측하는 방법 및 이를 이용한 배기 장치
KR101234637B1 (ko) * 2010-11-18 2013-02-19 현대자동차주식회사 질소산화물의 양을 예측하는 방법 및 이를 이용한 배기 장치
US9777659B2 (en) * 2011-05-13 2017-10-03 Toyota Jidosha Kabushiki Kaisha Control device of internal combustion engine
US9157390B2 (en) 2011-09-21 2015-10-13 GM Global Technology Operations LLC Selective exhaust gas recirculation diagnostic systems and methods
US9103294B2 (en) * 2011-12-02 2015-08-11 Cummins Inc. Fuel drift estimation and compensation for operation of an internal combustion engine
US9249764B2 (en) 2012-03-06 2016-02-02 GM Global Technology Operations LLC Engine control systems and methods with humidity sensors
US10066564B2 (en) 2012-06-07 2018-09-04 GM Global Technology Operations LLC Humidity determination and compensation systems and methods using an intake oxygen sensor
US9932917B2 (en) 2012-03-21 2018-04-03 GM Global Technology Operations LLC Exhaust gas recirculation control systems and methods
US9341133B2 (en) 2013-03-06 2016-05-17 GM Global Technology Operations LLC Exhaust gas recirculation control systems and methods
US9631567B2 (en) 2013-08-15 2017-04-25 GM Global Technology Operations LLC Sensor based measurement and purge control of fuel vapors in internal combustion engines
US9605613B2 (en) 2014-05-13 2017-03-28 Southwest Research Institute Coordinated control of engine and after treatment systems
JP6436291B2 (ja) * 2014-09-26 2018-12-12 三菱自動車工業株式会社 内燃機関の制御装置
US10508606B2 (en) 2014-10-22 2019-12-17 Ge Global Sourcing Llc Method and systems for airflow control
EP3192997B1 (en) * 2016-01-13 2019-08-07 Winterthur Gas & Diesel Ltd. Method and system for optimizing the fuel consumption of a two-stroke turbocharged slow running diesel engine
US20170314498A1 (en) * 2016-04-28 2017-11-02 General Electric Company System and method for fuel injection control
JP2019124140A (ja) * 2018-01-12 2019-07-25 日本碍子株式会社 車両用エンジンにおける燃焼制御方法および車両用エンジンシステム
CN110159414B (zh) * 2019-05-28 2020-07-14 中国第一汽车股份有限公司 一种发动机水温传感器故障的诊断方法
CN113530695B (zh) * 2021-08-12 2022-09-13 安徽江淮汽车集团股份有限公司 一种发动机egr的闭环控制方法及系统
CN115407739B (zh) * 2022-10-31 2023-01-20 天津有容蒂康通讯技术有限公司 一种电缆制造的生产设备控制方法及系统
CN117307343B (zh) * 2023-11-30 2024-04-16 潍柴动力股份有限公司 一种发动机排放的修正方法及装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2595663B2 (ja) * 1988-06-23 1997-04-02 日本電装株式会社 燃料噴射装置用故障診断装置
US5341643A (en) 1993-04-05 1994-08-30 Ford Motor Company Feedback control system
KR100335900B1 (ko) * 1999-12-28 2002-05-08 이계안 차량 연료 시스템의 모니터링 방법
JP4706134B2 (ja) 2001-06-15 2011-06-22 トヨタ自動車株式会社 内燃機関の制御装置
JP2003049685A (ja) * 2001-08-02 2003-02-21 Nissan Motor Co Ltd エンジンの排気浄化装置
JP2007127004A (ja) 2005-11-01 2007-05-24 Toyota Central Res & Dev Lab Inc 内燃機関の状態量推定装置、内燃機関の制御装置、及び内燃機関の状態量推定方法
JP4561667B2 (ja) 2006-03-28 2010-10-13 トヨタ自動車株式会社 内燃機関の燃料供給制御装置
JP4830912B2 (ja) * 2007-03-05 2011-12-07 トヨタ自動車株式会社 内燃機関の制御装置
JP4537417B2 (ja) * 2007-03-06 2010-09-01 トヨタ自動車株式会社 NOxセンサの異常診断装置

Also Published As

Publication number Publication date
EP2573370A1 (en) 2013-03-27
US9080528B2 (en) 2015-07-14
EP2573370A4 (en) 2018-02-21
CN102893003B (zh) 2015-04-29
WO2011145223A1 (ja) 2011-11-24
JP5234225B2 (ja) 2013-07-10
US20130054122A1 (en) 2013-02-28
CN102893003A (zh) 2013-01-23

Similar Documents

Publication Publication Date Title
JP5234225B2 (ja) 内燃機関の制御装置
JP4450083B2 (ja) セタン価推定方法
JP5093406B1 (ja) 内燃機関の制御装置
JP5282849B2 (ja) 内燃機関の制御装置
JP2008175101A (ja) エンジンの燃料噴射制御装置及び燃焼装置
JP2009275691A (ja) 内燃機関の燃焼制御方法および制御装置
US20080051943A1 (en) Apparatus for calculating detection error of fresh air quantity detection device
US10393054B2 (en) Engine controller for detecting failure of fuel injector
JP5234299B2 (ja) 内燃機関のすす排出量推定装置
JP6860313B2 (ja) エンジンの制御方法、及び、エンジン
JP5387914B2 (ja) 内燃機関の筒内流入egrガス流量推定装置
JP2011085081A (ja) エンジンの失火判定方法
US20130247883A1 (en) Control device for internal combustion engine
JP2013133734A (ja) 内燃機関の制御装置
WO2013069488A1 (ja) エンジンの制御装置
US10221804B2 (en) Fuel injection control device
JP5695878B2 (ja) 内燃機関の燃焼制御装置及び方法
JP2011052579A (ja) 内燃機関の燃料供給制御装置
JP6283959B2 (ja) エンジンの制御装置
JP5146367B2 (ja) 内燃機関の操作対象パラメータの適合装置、及び適合方法
WO2014083626A1 (ja) 内燃機関の制御装置
JP5760924B2 (ja) 内燃機関の筒内圧推定装置
JP5517110B2 (ja) 内燃機関のegr制御装置
JP2005180219A (ja) 内燃機関のNOx発生量推定モデルの学習方法
JP4705866B2 (ja) 内燃機関の制御装置

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20130226

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160405

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees