JP2016145546A - 内燃機関の制御装置 - Google Patents
内燃機関の制御装置 Download PDFInfo
- Publication number
- JP2016145546A JP2016145546A JP2015022863A JP2015022863A JP2016145546A JP 2016145546 A JP2016145546 A JP 2016145546A JP 2015022863 A JP2015022863 A JP 2015022863A JP 2015022863 A JP2015022863 A JP 2015022863A JP 2016145546 A JP2016145546 A JP 2016145546A
- Authority
- JP
- Japan
- Prior art keywords
- air
- purge
- learning
- fuel
- amount
- 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.)
- Pending
Links
Images
Landscapes
- Supplying Secondary Fuel Or The Like To Fuel, Air Or Fuel-Air Mixtures (AREA)
- Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
- Combined Controls Of Internal Combustion Engines (AREA)
Abstract
【課題】空燃比学習制御の学習領域の移行時の空燃比制御を制度良く行う。【解決手段】空燃比を目標空燃比と一致させるために排ガスの空燃比に基づいて燃料噴射量を補正するための補正値を学習する空燃比学習をそれぞれが吸入空気量に対応する複数の領域規定値により規定される複数の学習領域毎に行う。更にスロットル弁通過空気量に関連する指標値が学習が完了している学習領域に属するか否かを判定する領域判定を行う。指標値が学習が完了している学習領域に属すると判定された場合、パージの実行を許可し、指標値が学習が完了していない学習領域に属すると判定された場合、パージを停止する。パージ停止中はスロットル弁通過空気量を指標値として用いて領域判定を行い、パージ実行中はパージによって吸気通路に導入される蒸発燃料とともに導入される空気の量をスロットル弁通過空気量に加えた値を指標値として用いて領域判定を行う。【選択図】図10
Description
本発明は、燃料タンクにおいて発生した蒸発燃料の吸気通路への導入(パージ)を制御するための内燃機関の制御装置に関する。
燃料タンクにおいて発生した蒸発燃料(ベーパ)をスロットル弁の下流位置にて吸気通路に導入する蒸発燃料処理装置を備えた内燃機関の制御装置が特許文献1に記載されている。この制御装置(以下、「従来装置」と称呼する。)は、所定条件が成立した場合、蒸発燃料処理装置によって蒸発燃料を吸気通路に導入する。
更に、従来装置は、スロットル弁の上流位置に配設されたエアフローメータによって吸入空気量(スロットル弁を通過する空気の量であるスロットル弁通過空気量)を取得する。
加えて、従来装置は、「吸入空気量に応じて分割された複数の領域(学習領域)」それぞれにおいて空燃比フィードバック学習(以下、「空燃比学習」と称呼する。)を行う。この空燃比学習は、空燃比を目標空燃比と一致させるために排ガスの空燃比に基づいて燃料噴射量をフィードバック制御したときの定常偏差を演算し記憶しておく制御である。従来装置は、そのときのスロットル弁通過空気量が属する学習領域が「既に空燃比学習が完了している学習領域」である場合、吸気通路への蒸発燃料の導入(パージ)を実行する。
ところで、パージが開始されるとスロットル弁下流の負圧(吸気負圧)の大きさが小さくなり、その結果、スロットル弁通過空気量が少なくなる。このとき、スロットル弁通過空気量が属する学習領域が「パージ開始前にスロットル弁通過空気量が属していた学習領域」から「別の学習領域」に移行することがある。この場合において、前記別の学習領域が「空燃比学習が完了していない領域」であると、パージが停止される。
パージが停止されると吸気負圧の大きさが大きくなり、その結果、スロットル弁通過空気量が多くなる。このとき、スロットル弁通過空気量が属する学習領域が「パージ停止前にスロットル弁通過空気量が属していた学習領域」から「元の学習領域」に移行することがある。この場合、元の学習領域は「既に空燃比学習が完了している領域」であるので、再び、パージが開始される。
このように、各時点におけるスロットル弁通過空気量が「空燃比学習が完了している学習領域」に属しているか否かによってパージの実行の有無を判断するようになっている場合、パージの開始と停止とが短い時間間隔で繰り返されてしまう事態が発生する場合がある。その結果、空燃比が変動する可能性が高まる。
特に、パージの開始に伴ってスロットル弁開度を減少させるようにしている内燃機関では、上記事態が頻繁に発生する可能性が高い。尚、パージの開始に伴ってスロットル弁開度を減少させる理由は以下のとおりである。
パージの開始に伴い、パージ管を通して蒸発燃料のみならず空気も機関に供給される。このとき、スロットル弁下流の負圧の大きさの減少によるスロットル弁通過空気量の減少量よりもパージ管を通して機関に供給される空気の増加量の方が大きい。よって、パージが開始されると、スロットル弁開度が変化しないにも関わらず「機関に実際に吸入される空気量」が増大する。従って、パージの開始に伴い、スロットル弁開度を減少させてスロットル弁通過空気量を減少させ、それにより「機関に実際に吸入される空気量」が大きく増大することを防ぐことができる。これが「パージの開始に伴ってスロットル弁開度を減少させる理由」である。
本発明は、上述した課題に対処するためになされたものである。即ち、本発明の目的の1つは、パージの開始と停止とが繰り返されることを防止することができるようにパージを制御する内燃機関の制御装置を提供することにある。
本発明の制御装置(以下、「本発明装置」と称呼する。)は、
(1)燃焼室に燃料を供給するための燃料噴射弁、
(2)燃焼室に吸入される空気の量を制御するためのスロットル弁、
(3)燃料を貯留するための燃料タンク、
(4)前記燃料タンクにて発生した蒸発燃料を貯留するためのキャニスタ、
(5)前記キャニスタに貯留されている蒸発燃料を前記スロットル弁下流において吸気通路に導入するためのパージ管、及び、
(6)前記パージ管を介して前記吸気通路に導入される蒸発燃料の量を制御するためのパージ制御弁、
を備えた内燃機関に適用される。
(1)燃焼室に燃料を供給するための燃料噴射弁、
(2)燃焼室に吸入される空気の量を制御するためのスロットル弁、
(3)燃料を貯留するための燃料タンク、
(4)前記燃料タンクにて発生した蒸発燃料を貯留するためのキャニスタ、
(5)前記キャニスタに貯留されている蒸発燃料を前記スロットル弁下流において吸気通路に導入するためのパージ管、及び、
(6)前記パージ管を介して前記吸気通路に導入される蒸発燃料の量を制御するためのパージ制御弁、
を備えた内燃機関に適用される。
本発明装置は、前記燃料噴射弁、前記スロットル弁、及び、前記パージ制御弁の作動を制御する制御部を有する。
前記制御部は、燃焼室に形成される混合気の空燃比を目標空燃比と一致させるために排ガスの空燃比に基づいて前記燃料噴射弁から前記燃焼室に供給される燃料の量を補正するための補正値を学習する空燃比学習を、それぞれが前記機関の吸入空気量に対応する複数の領域規定値により規定される複数の学習領域毎に行う。
更に、前記制御部は、前記スロットル弁を通過する空気の量であるスロットル弁通過空気量に関連する指標値が前記複数の学習領域のうち前記空燃比学習が完了している学習領域に属するか否かを判定する学習完了領域判定を行う。
前記制御部は、前記指標値が前記空燃比学習が完了している学習領域に属すると判定された場合には前記パージ制御弁を開弁することによって前記パージ管を介して前記吸気通路へ蒸発燃料を導入するパージの実行を許可する。一方、前記制御部は、前記指標値が前記空燃比学習が完了していない学習領域に属すると判定された場合には前記パージ制御弁を全閉することによって前記パージを停止する。
前記制御部は、前記パージが停止されている場合、前記スロットル弁通過空気量を前記指標値として用いて前記学習完了領域判定を行う。一方、前記制御部は、前記パージが実行されている場合、前記パージによって前記吸気通路に導入される蒸発燃料とともに導入される空気の量を前記スロットル弁通過空気量に加えた値を前記指標値として用いて前記学習完了領域判定を行う。
本発明装置は、各時点における前記指標値が属する学習領域に対応する空燃比学習が完了すると、パージを開始する。このとき、パージ管を介して吸気通路に導入される蒸発燃料とともに空気も吸気通路に導入される。従って、スロットル弁下流の吸気通路内の負圧の大きさが小さくなる。その結果、スロットル弁通過空気量が少なくなる。
ここで、前記指標値としてスロットル弁通過空気量のみを用いていると、そのスロットル弁通過空気量が属する学習領域が別の学習領域に移行する場合がある。このとき、その移行した学習領域に対応する空燃比学習が完了していない場合、パージが停止される。このとき、パージ管を介して吸気通路に導入される空気の量が「0」になる。従って、スロットル弁下流の吸気通路内の負圧の大きさが大きくなる。その結果、スロットル弁通過空気量が多くなる。
このとき、そのスロットル弁通過空気量が属する学習領域が元の学習領域に移行する可能性がある。このとき、その移行した元の学習領域に対応する空燃比学習は完了しているので、再び、パージが開始される。
このように、前記指標値としてスロットル弁通過空気量のみを用いている場合、パージの開始と停止とが繰り返し行われる可能性がある。
これに対し、本発明装置は、パージを開始した場合、前記指標値として「パージによって吸気通路に導入される空気の量」を「スロットル弁通過空気量」に加えた値を用いる。従って、パージが開始されてスロットル弁通過空気量が少なくなったとしても、前記指標値はパージを開始する前の指標値と同じ値(又は略同じ値)である。このため、パージが開始されたとしても、前記指標値が属する学習領域が別の学習領域に移行することは殆どない。
更に、本発明装置は、パージを停止した場合、前記指標値として「スロットル弁通過空気量」を用いる。従って、パージが停止されてスロットル弁通過空気量が多くなったとしても、前記指標値はパージを停止する前の指標値と同じ値(又は略同じ値)である。このため、パージが停止されたとしても、前記指標値が属する学習領域が別の学習領域に移行することは殆どない。
従って、本発明装置によれば、パージの開始と停止とが繰り返し行われることを防止することができる。
以下、図面を参照しながら、本発明の実施形態に係る「内燃機関の制御装置(以下、「本制御装置」と称呼する。)」について説明する。
(構成)
本制御装置は、図1に示した内燃機関(機関)10に適用される。機関10は、多気筒(本例では直列4気筒)・4サイクル・ピストン往復動型・火花点火式ガソリン機関である。図1は、1つの気筒のみを示しているが、他の気筒も同様な構成を備えている。
本制御装置は、図1に示した内燃機関(機関)10に適用される。機関10は、多気筒(本例では直列4気筒)・4サイクル・ピストン往復動型・火花点火式ガソリン機関である。図1は、1つの気筒のみを示しているが、他の気筒も同様な構成を備えている。
内燃機関10は、シリンダブロック、シリンダブロックロワーケース及びオイルパン等を含むシリンダブロック部20、シリンダブロック部20の上に固定されるシリンダヘッド部30、シリンダブロック部20に燃料と空気とからなる混合気を供給するための吸気システム40、及び、シリンダブロック部20からの排ガスを外部に放出するための排気システム50、を備えている。
シリンダブロック部20は、シリンダ21、ピストン22、コンロッド23、及び、クランクシャフト24を備えている。ピストン22は、シリンダ21内を往復動する。ピストン22の往復動は、コンロッド23を介してクランクシャフト24に伝達され、これにより、クランクシャフト24が回転するようになっている。シリンダ21、ピストン22及びシリンダヘッド部30は、燃焼室(気筒)25を形成している。
シリンダヘッド部30は、燃焼室25に連通した吸気ポート31、吸気ポート31を開閉する吸気弁32、燃焼室25に連通した排気ポート33、排気ポート33を開閉する排気弁34、燃焼室25内の燃料に点火する点火装置35、及び、燃料を吸気ポート31内に噴射する燃料噴射弁39を備えている。
燃料噴射弁39は、後述するエンジンECU(電子制御ユニット)80の指示に応答して開弁し、吸気ポート31に燃料を噴射するようになっている。
点火装置35は、点火プラグ37、及び、点火プラグ37に与える高電圧を発生するイグニッションコイルを含むイグナイタ38を含む。イグナイタ38は、後述するECU80の指示に応答してイグニッションコイルによって高電圧を発生するようになっている。この高電圧は点火プラグ37に与えられ、点火プラグ37によって火花が生成される。
吸気システム40は、吸気ポート31に連通したインテークマニホールド41、インテークマニホールド41に連通したサージタンク42、及び、サージタンク42に一端が接続された吸気管43を備えている。吸気ポート31、インテークマニホールド41、サージタンク42及び吸気管43は、吸気通路を構成している。
更に、吸気システム40は、吸気管43の他端から下流(サージタンク42)に向けて順に、吸気管43に配設されたエアフィルタ44、スロットル弁45及びスロットル弁アクチュエータ45aを備えている。
スロットル弁45は、吸気管43に回転可能に支持され、スロットル弁アクチュエータ45aによって駆動されることにより開度が調整されるようになっている。これにより、スロットル弁45は、吸気管43の通路断面積を可変とするようになっている。スロットル弁45の開度(スロットル弁開度)TAは、通路断面積を最小とする状態におけるスロットル弁45の位置から回転した角度により定義される。
スロットル弁アクチュエータ45aは、DCモータからなり、ECU80の指示に応答してスロットル弁45を駆動するようになっている。
排気システム50は、排気ポート33に連通するエキゾーストマニホールド51、及び、エキゾーストマニホールド51に接続された排気管52を備えている。排気ポート33、エキゾーストマニホールド51及び排気管52は、排気通路を構成している。
更に、排気システム50は、排気管52に配設された三元触媒53を備えている。三元触媒53は、所謂、白金等の貴金属からなる活性成分を担持する三元触媒装置(排気浄化触媒)である。三元触媒53は、そこに流入するガスの空燃比が理論空燃比であるとき、HC、CO、H2等の未燃成分を酸化するとともに、NOx(窒素酸化物)を還元する機能を有する。
更に、三元触媒53は、酸素を吸蔵(貯蔵)する酸素吸蔵機能を有し、この酸素吸蔵機能により空燃比が理論空燃比から偏移したとしても、未燃成分及びNOxを浄化することができる。この酸素吸蔵機能は、三元触媒53に担持されているセリア(CeO2)によってもたらされる。
更に、内燃機関10は、液体ガソリン燃料を貯留する燃料タンク60、燃料タンク60内にて発生した蒸発燃料を吸蔵(貯留)可能なキャニスタ61、前記蒸発燃料を含むガスを燃料タンク60からキャニスタ61へと導くためのベーパ捕集管62、キャニスタ61から脱離した蒸発燃料を「蒸発燃料ガス」としてサージタンク42に導入するためのパージ管63、及び、パージ管63に配設されたパージ制御弁64を備えている。
燃料タンク60に貯留された燃料は、燃料ポンプ65及び燃料供給管66等を通して燃料噴射弁39に供給されるようになっている。ベーパ捕集管62及びパージ管63は、蒸発燃料ガスをサージタンク42へ供給するためのパージ通路を構成している。
パージ制御弁64は、指示信号であるデューティ比Dprgを表す駆動信号により開度(開弁期間)が調節されることにより、パージ管63の通路断面積を変更するようになっている。パージ制御弁64は、デューティ比Dprgが「0」であるときにパージ管63を完全に閉じるようになっている。即ち、パージ制御弁64は、パージ通路に配設されるとともに指示信号に応答して開度が変更されるように構成されている。
キャニスタ61は周知のチャコールキャニスタである。キャニスタ61は、ベーパ捕集管62に接続されたタンクポート61aと、パージ管63に接続されたパージポート61bと、大気に曝されている大気ポート61cと、が形成された筐体を備える。キャニスタ61は、その筐体内に、蒸発燃料を吸着するための吸着剤61dを収納している。
キャニスタ61は、パージ制御弁64が完全に閉じられている期間において燃料タンク60内で発生した蒸発燃料を吸蔵するようになっている。一方、キャニスタ61は、パージ制御弁64が開かれている期間において、吸蔵した蒸発燃料を蒸発燃料ガスとしてパージ管63を通してサージタンク42(スロットル弁45よりも下流の吸気通路)に放出するようになっている。これにより、蒸発燃料ガスは機関10の吸気通路を通して各燃焼室25へ供給される。即ち、パージ制御弁64が開かれることにより、蒸発燃料ガスパージ(又は、エバポパージ)が行われる。
ECU80は、周知のマイクロコンピュータを含む電子回路であり、CPU、ROM、RAM、バックアップRAM及びインターフェース等を含む。ECU80は、以下に述べるセンサ類と接続されていて、これらのセンサからの信号を受信(入力)するようになっている。更に、ECU80は、各種アクチュエータ(スロットル弁アクチュエータ45a、燃料噴射弁39及びパージ制御弁64等)に指示(駆動)信号を送出するようになっている。
ECU80は、エアフローメータ71、スロットルポジションセンサ72、水温センサ73、クランク角度センサ74、アクセル操作量センサ75、空燃比センサ76、空燃比センサ77、及び、車速センサ78と接続されている。
エアフローメータ71は、吸気管43に配設されている。このエアフローメータ71は、そこを通過する空気の質量流量、即ち、スロットル弁45を通過する空気の質量流量(以下、「スロットル弁通過空気量」と称呼する。)を測定し、そのスロットル弁通過空気量GAthを表す信号を出力する。
スロットルポジションセンサ72は、スロットル弁45に近接して吸気管43に配設されている。このスロットルポジションセンサ72は、スロットル弁45の開度(スロットル弁開度)を検出し、スロットル弁開度TAを表す信号を出力するようになっている。
水温センサ73は、シリンダブロック部20に配設されている。この水温センサ73は、機関10を冷却する冷却水の温度を測定し、その温度(冷却水温)THAを表す信号を出力するようになっている。
水温センサ73は、シリンダブロック部20に配設されている。この水温センサ73は、機関10を冷却する冷却水の温度を測定し、その温度(冷却水温)THAを表す信号を出力するようになっている。
クランク角度センサ74は、シリンダブロック部20に配設されている。このクランク角度センサ74は、クランクシャフト24の回転位置(即ち、クランク角度)に応じた信号を出力する。ECU80は、このクランク角度センサ74及び図示しないカムポジションセンサからの信号に基づいて、所定の気筒の圧縮上死点を基準とした機関10のクランク角度(絶対クランク角度)を取得する。更に、ECU80は、クランク角度センサ74からの信号に基づいて、機関回転速度NEを取得する。
アクセル操作量センサ75は、アクセルペダル91の操作量を検出し、この操作量Accpを表す信号を出力する。
空燃比センサ76は、エキゾーストマニホールド51の集合部(排気集合部)と三元触媒53との間の位置において排気管52に配設されている。この空燃比センサ(以下、「上流側空燃比センサ」と称呼する。)76は、「拡散抵抗層を備える限界電流式広域空燃比センサ」である。上流側空燃比センサ76は、そこに到達するガスの空燃比を測定し、その空燃比を表す「電流(即ち、限界電流)」を電圧に変換した値VMを出力する。
この出力値VMは、図2に示したように、上流側空燃比センサ76に到達するガスの空燃比が大きくなるほど(リーンとなるほど)増大する。即ち、出力値VMは、上流側空燃比センサ76に到達している排ガスの空燃比AFmに実質的に比例する。
ECU80は、図2に示した空燃比変換テーブル(マップ)MapAFm(VM)を記憶していて、上流側空燃比センサ76の出力値VMを空燃比変換テーブルMapAFm(VM)に適用することにより、実際の空燃比AFmを検出する(即ち、検出空燃比AFmを取得する)。
空燃比センサ77は、三元触媒53よりも下流側の排気管52に配設されている。この空燃比センサ(以下、「下流側空燃比センサ」と称呼する。)77は、周知の起電力式の酸素濃度センサ(安定化ジルコニアを用いた周知の濃淡電池型の酸素濃度センサ)である。下流側空燃比センサ77は、三元触媒53から流出するガスの空燃比(機関10に供給される混合気の空燃比の時間的平均値)を測定し、その空燃比を表す出力値VSを出力する。
この出力値VSは、図3に示したように、下流側空燃比センサ77に到達するガス(被検出ガス)の空燃比が理論空燃比よりもリッチのときに最大出力値VSmax(例えば、約0.9V)となり、被検出ガスの空燃比が理論空燃比よりもリーンのときに最小出力値VSmin(例えば、約0.1V)となる。更に、出力値VSは、被検出ガスの空燃比が理論空燃比であるときに最大出力値VSmaxと最小出力値VSminの略中間の電圧VSst(中間電圧VSst、例えば、約0.5V)となる。
加えて、出力値VSは、被検出ガスの空燃比が理論空燃比よりもリッチな空燃比からリーンな空燃比へと変化する際に最大出力値VSmaxから最小出力値VSminへと急変し、被検出ガスの空燃比が理論空燃比よりもリーンな空燃比からリッチな空燃比へと変化する際に最小出力値VSminから最大出力値VSmaxへと急変する。
ECU80は、図3に示した空燃比変換テーブル(マップ)MapAFs(VS)を記憶していて、下流側空燃比センサ77の出力値VSを空燃比変換テーブルMapAFs(VS)に適用することにより、被検出ガスの空燃比AFsを取得する。
車速センサ78は、機関10が搭載された車両の速度を測定し、この速度(車速)を表す信号SPDを出力する。
(燃料噴射量制御)
次に、図4を参照しながら、本制御装置が実行する「燃料噴射弁39から噴射する燃料の量(燃料噴射量)の制御」について説明する。ECU80のCPUは、図4にフローチャートにより示した燃料噴射量制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図4のステップ400から処理を開始し、以下に述べるステップ405乃至ステップ430の処理を順に行い、ステップ495に進んで本ルーチンを一旦終了する。
次に、図4を参照しながら、本制御装置が実行する「燃料噴射弁39から噴射する燃料の量(燃料噴射量)の制御」について説明する。ECU80のCPUは、図4にフローチャートにより示した燃料噴射量制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図4のステップ400から処理を開始し、以下に述べるステップ405乃至ステップ430の処理を順に行い、ステップ495に進んで本ルーチンを一旦終了する。
ステップ405:CPUは、スロットル弁通過空気量GAth及び機関回転速度NEをルックアップテーブルMapMC(GAth,NE)に適用することにより、筒内吸入空気量MCを取得する。ルックアップテーブルMapMC(GAth,NE)によれば、筒内吸入空気量MCは、スロットル弁通過空気量GAthが大きいほど大きい値として取得され、機関回転速度NEが大きいほど大きい値として取得される。
ステップ410:CPUは、下記の(1)式に従って基本燃料噴射量QFBを取得する。(1)式において、「MC」は筒内吸入空気量であり、「AFtgt」は目標空燃比であり、本例においては、理論空燃比である。
QFB=MC/AFtgt …(1)
QFB=MC/AFtgt …(1)
ステップ415:CPUは、下記の(2)式に従ってパージ補正係数Kprgを取得する。(2)式において、「RPtgt」は後述する図10のルーチンにより決定される目標パージ率であり、「KGP」は後述する図7のルーチンにより取得されるパージ濃度学習値である。
Kprg=1+RPtgt・(1−KGP) …(2)
Kprg=1+RPtgt・(1−KGP) …(2)
ステップ420:CPUは、スロットル弁通過空気量GAthをルックアップテーブルMapKGM(N)(GAth)に適用することにより、メインフィードバック学習値KGM(N)を取得する。
ルックアップテーブルMapKGM(N)(GAth)によれば、スロットル弁通過空気量GAthが「0」以上であり且つ第1空気量GAth1よりも小さい場合(0≦GAth<GAth1)、メインフィードバック学習値KGM(1)が取得され、空気量GAthが第1空気量GAth1以上であり且つ第2空気量GAth2よりも小さい場合(GAth1≦GAth<GAth2)、学習値KGM(2)が取得される。第2空気量GAth2は第1空気量GAth1よりも大きい(GAth1<GAth2)。
更に、スロットル弁通過空気量GAthが第2空気量GAth2以上であり且つ第3空気量GAth3よりも小さい場合(GAth2≦GAth<GAth3)、メインフィードバック学習値KGM(3)が取得され、空気量GAthが第3空気量GAth3以上である場合(GAth3≦GAth)、学習値KGM(4)が取得される。第3空気量GAth3は第2空気量GAth2よりも大きく、第4空気量GAth4は第3空気量GAth3よりも大きい(GAth2<GAth3<GAth4)。
ステップ425:CPUは、下記の(3)式に従って指示燃料噴射量QFIを取得する。(3)式において、「FAF」は、後述する図5のルーチンにより取得されるメインフィードバック係数である。
QFI=KGM(N)・Kprg・FAF・QFB …(3)
QFI=KGM(N)・Kprg・FAF・QFB …(3)
メインフィードバック係数FAFは、メインフィードバック制御条件が成立しているときに、上流側空燃比センサ76の出力値VMにより表される空燃比(検出空燃比AFm)が目標空燃比AFtgtよりも小さい(リッチである)とき、次第に減少され、検出空燃比AFmが目標空燃比AFtgtよりも大きい(リーンである)とき、次第に増大されるように算出される。
ステップ430:CPUは、指示燃料噴射量QFIの燃料が燃料噴射弁39から噴射されるように、燃料噴射弁39に指示信号を送出する。
(メインフィードバック制御)
更に、CPUは、図5にフローチャートにより示したメインフィードバック制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、ステップ500から処理を開始してステップ505に進み、メインフィードバック制御条件が成立しているか否かを判定する。メインフィードバック制御条件は、例えば、フューエルカット中ではなく、機関10の冷却水温THWが第1所定温度以上であり、機関負荷KLが所定値以下であり、且つ、上流側空燃比センサ76が活性化しているときに成立する。
更に、CPUは、図5にフローチャートにより示したメインフィードバック制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、ステップ500から処理を開始してステップ505に進み、メインフィードバック制御条件が成立しているか否かを判定する。メインフィードバック制御条件は、例えば、フューエルカット中ではなく、機関10の冷却水温THWが第1所定温度以上であり、機関負荷KLが所定値以下であり、且つ、上流側空燃比センサ76が活性化しているときに成立する。
CPUがステップ505の処理を実行する時点においてメインフィードバック制御条件が成立している場合、CPUはそのステップ505にて「Yes」と判定し、以下に述べるステップ510乃至ステップ545の処理を順に実行する。その後、CPUは、ステップ595に進み、本ルーチンを一旦終了する。
ステップ510:CPUは、下記の(4)式に従ってフィードバック制御用出力値VCを取得する。(4)式において、「VM」は上流側空燃比センサ76の出力値であり、「VB」は後述する図8のルーチンにより取得されるサブフィードバック量である。
VC=VM+VB …(4)
VC=VM+VB …(4)
ステップ515:CPUは、フィードバック制御用出力値VCをルックアップテーブルMapAFm(VC)に適用することにより、フィードバック制御用空燃比AFmを取得する。ルックアップテーブルMapAFm(VC)によれば、空燃比AFmは出力値VCが大きいほど大きい値として取得される。
ステップ520:CPUは、下記の(5)式に従って「現時点よりもNサイクル前の時点において燃焼室25に実際に供給された燃料の量(筒内燃料供給量)QFC」を取得する。(5)式において、「MC」は図4のルーチンにより取得される「現時点よりもNサイクル前の時点における筒内吸入空気量」である。
QFC=MC/AFm …(5)
QFC=MC/AFm …(5)
ステップ525:CPUは、下記の(6)式に従って「現時点よりもNサイクル前の時点において燃焼室25に供給されるべきであった燃料の量(目標筒内燃料供給量)QFCtgt」を取得する。(6)式において、「MC」は図4のルーチンにより取得される「現時点よりもNサイクル前の時点における筒内吸入空気量」であり、「AFtgt」は目標空燃比である。
QFCtgt=MC/AFtgt …(6)
QFCtgt=MC/AFtgt …(6)
ステップ530:CPUは、下記の(7)式に従って筒内燃料供給量偏差Dqfcを取得する。
Dqfc=QFCtgt−QFC …(7)
Dqfc=QFCtgt−QFC …(7)
ステップ535:CPUは、下記の(8)式に従ってメインフィードバック値Dqfiを取得する。(8)式において、「Gp」は予め設定された比例ゲイン、「Gi」は予め設定された積分ゲインであり、「Sdqfc」は筒内燃料供給量偏差Dqfcの時間積分値である。
Dqfi=Gp・Dqfc+Gi・Sdqfc …(8)
Dqfi=Gp・Dqfc+Gi・Sdqfc …(8)
ステップ540:CPUは、下記の(9)式に従ってメインフィードバック係数FAFを取得する。(9)式において、「QFB」は基本燃料噴射量である。
FAF=(QFB+Dqfc)/QFB …(9)
FAF=(QFB+Dqfc)/QFB …(9)
ステップ545:CPUは、下記の(10)式に従ってメインフィードバック係数FAFの加重平均値をメインフィードバック係数平均FAFaveとして取得する。(10)式において、「q」は「0」よりも大きく且つ「1」よりも小さい定数である。
FAFave=q・FAF+(1−q)・FAFave …(10)
FAFave=q・FAF+(1−q)・FAFave …(10)
これに対し、CPUがステップ505の処理を実行する時点においてメインフィードバック制御条件が成立していない場合、CPUはそのステップ505にて「No」と判定し、以下に述べるステップ550乃至ステップ565の処理を順に実行する。その後、CPUは、ステップ595に進み、本ルーチンを一旦終了する。
ステップ550:CPUは、メインフィードバック値Dqfiの値を「0」に設定する。
ステップ555:CPUは、筒内燃料供給量偏差Dqfcの時間積分値Sdqfcの値を「0」に設定する。
ステップ560:CPUは、メインフィードバック係数FAFの値を「1」に設定する。
ステップ565:CPUは、メインフィードバック係数平均FAFaveの値を「1」に設定する。
ステップ555:CPUは、筒内燃料供給量偏差Dqfcの時間積分値Sdqfcの値を「0」に設定する。
ステップ560:CPUは、メインフィードバック係数FAFの値を「1」に設定する。
ステップ565:CPUは、メインフィードバック係数平均FAFaveの値を「1」に設定する。
以上が本制御装置によるメインフィードバック制御である。
(メインフィードバック学習)
更に、CPUは、メインフィードバック学習値KGM(N)の更新を行うために、図6にフローチャートにより示したメインフィードバック学習(空燃比学習)ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、ステップ600から処理を開始し、以下に述べるステップ605及びステップ610の処理を順に実行し、その後、ステップ615に進む。
更に、CPUは、メインフィードバック学習値KGM(N)の更新を行うために、図6にフローチャートにより示したメインフィードバック学習(空燃比学習)ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、ステップ600から処理を開始し、以下に述べるステップ605及びステップ610の処理を順に実行し、その後、ステップ615に進む。
ステップ605:CPUは、スロットル弁通過空気量GAthを取得する。このスロットル弁通過空気量GAthは、CPUが別途実行する処理によりエアフローメータ71の信号に基づいて取得され、ECU80のバックアップRAMに格納されている。
ステップ610:CPUは、スロットル弁通過空気量GAthをルックアップテーブルMapR(N)(GAth)に適用することにより、学習領域R(N)を取得する。
ルックアップテーブルMapR(N)(GAth)によれば、スロットル弁通過空気量GAthが前記第1空気量GAth1よりも小さい場合(GAth<GAth1)、学習領域R(1)が取得され、空気量GAthが前記第1空気量GAth1以上であり且つ前記第2空気量GAth2よりも小さい場合(GAth1≦GAth<GAth2)、学習領域R(2)が取得される。
更に、スロットル弁通過空気量GAthが前記第2空気量GAth2以上であり且つ前記第3空気量GAth3よりも小さい場合(GAth2≦GAth<GAth3)、学習領域R(3)が取得され、空気量GAthが前記第3空気量GAth3以上である場合(GAth3≦GAth)、学習領域R(4)が取得される。
CPUは、ステップ615に進むと、メインフィードバック制御が実行中であるか否かを判定する。このとき、メインフィードバック制御が実行中ではない場合、CPUはそのステップ615にて「No」と判定し、以下に述べるステップ650の処理を実行し、その後、ステップ695に進み、本ルーチンを一旦終了する。この場合、メインフィードバック学習値KGM(N)の更新は行われない。
ステップ650:CPUは、先に述べたステップ610にて決定した学習領域R(N)に対応するメインフィードバック学習値KGM(N)の学習(空燃比学習)が完了したことを表すメインフィードバック学習完了フラグXkgm(N)の値を「0」に設定する。
これに対し、CPUがステップ615の処理を実行する時点においてメインフィードバック制御が実行中である場合、CPUはそのステップ615にて「Yes」と判定してステップ620に進み、パージ制御が実行中ではないか否か(具体的には、後述する図10のルーチンにより決定される「目標パージ率RPtgt又はデューティ比Dprgの値」が「0」ではないか否か)を判定する。
パージ制御が実行中である場合、CPUはそのステップ620にて「No」と判定してステップ695に進み、本ルーチンを一旦終了する。この場合、メインフィードバック学習値KGM(N)の更新は行われない。
これに対し、CPUがステップ620の処理を実行する時点においてパージ制御が実行中ではない場合、CPUはそのステップ620にて「Yes」と判定してステップ625に進み、メインフィードバック係数平均FAFaveが値1+α(αは「0」よりも大きく、「1」よりも小さい微少な所定値であり、例えば、0.02)以上であるか否かを判定する。
メインフィードバック係数平均FAFaveが値1+α以上である場合、CPUは、以下に述べるステップ630及びステップ645の処理を順に実行し、その後、ステップ695に進み、本ルーチンを一旦終了する。
ステップ630:CPUは、先に述べたステップ610の処理により取得した学習領域R(N)に対応するメインフィードバック学習値KGM(N)を正の所定値ΔKGMだけ増大させる。
ステップ645:CPUは、先に述べたステップ610にて決定した学習領域R(N)に対応するメインフィードバック学習値KGM(N)の学習が完了したことを表す空燃比学習完了フラグXkgm(N)の値を「1」に設定する。
これに対し、CPUがステップ625の処理を実行する時点においてメインフィードバック係数平均FAFaveが値1+αよりも小さい場合、CPUはそのステップ625にて「No」と判定してステップ635に進み、メインフィードバック係数平均FAFaveが値1−α以下であるか否かを判定する。メインフィードバック係数平均FAFaveが値1−α以下である場合、以下に述べるステップ640及び先に述べたステップ645を順に実行し、その後、ステップ695に進み、本ルーチンを一旦終了する。
ステップ640:CPUは、先に述べたステップ610の処理により取得した学習領域R(N)に対応するメインフィードバック学習値KGM(N)を正の所定値ΔKGMだけ減少させる。
これに対し、CPUがステップ635の処理を実行する時点においてメインフィードバック係数平均FAFaveが値1−αよりも大きい場合、CPUはそのステップ635にて「No」と判定してステップ695に進み、本ルーチンを一旦終了する。この場合、メインフィードバック学習値KGM(N)の更新は行われない。
(パージ濃度学習)
更に、CPUは、パージ濃度学習値KGPの更新を行うために、図7にフローチャートにより示したパージ濃度学習ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図7のステップ700から処理を開始し、ステップ705に進み、メインフィードバック制御が実行中であるか否かを判定する。
更に、CPUは、パージ濃度学習値KGPの更新を行うために、図7にフローチャートにより示したパージ濃度学習ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図7のステップ700から処理を開始し、ステップ705に進み、メインフィードバック制御が実行中であるか否かを判定する。
メインフィードバック制御が実行中ではない場合、CPUはそのステップ705にて「No」と判定してステップ795に進み、本ルーチンを一旦終了する。この場合、パージ濃度学習値KGPの更新は行われない。
これに対し、CPUがステップ705の処理を実行する時点においてメインフィードバック制御が実行中である場合、CPUはそのステップ705にて「Yes」と判定してステップ710に進み、パージ制御が実行中であるか否か(具体的には、後述する図10のルーチンにより決定される「目標パージ率RPtgt又はデューティ比Dprgの値」が「0」であるか否か)を判定する。
CPUがステップ710の処理を実行する時点においてパージ制御が実行中ではない場合、CPUはそのステップ710にて「No」と判定してステップ795に進み、本ルーチンを一旦終了する。この場合、パージ濃度学習値KGPの更新は行われない。
これに対し、CPUがステップ710の処理を実行する時点においてパージ制御が実行中である場合、CPUはそのステップ710にて「Yes」と判定してステップ715に進み、値FAF−1が所定閾値βよりも大きいか否かを判定する。
CPUがステップ715の処理を実行する時点において値FAF−1が所定閾値βよりも大きい場合、CPUはそのステップ715にて「Yes」と判定し、以下に述べるステップ720及びステップ730の処理を順に実行する。その後、CPUは、ステップ795に進み、本ルーチンを一旦終了する。
これに対し、CPUがステップ715の処理を実行する時点において値FAF−1が所定閾値β以下である場合、CPUはそのステップ715にて「No」と判定し、以下に述べるステップ725及びステップ730の処理を順に実行する。その後、CPUは、ステップ795に進み、本ルーチンを一旦終了する。
ステップ720:CPUは、下記の(11)式に従ってパージ濃度学習値KGPを更新するための更新値ΔKGPを取得する。
ΔKGP=(FAF−1)/RPtgt …(11)
ΔKGP=(FAF−1)/RPtgt …(11)
ステップ725:CPUは、パージ濃度学習値KGPを更新するための更新値ΔKGPの値を「0」に設定する。
ステップ730:CPUは、下記の(12)式に従ってパージ濃度学習値KGPを取得(更新)する。
KGP=KGP+ΔKGP …(12)
ステップ730:CPUは、下記の(12)式に従ってパージ濃度学習値KGPを取得(更新)する。
KGP=KGP+ΔKGP …(12)
以上が本制御装置によるパージ濃度学習である。
更に、CPUは、図8にフローチャートにより示したサブフィードバック量算出ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図8のステップ800から処理を開始してステップ805に進み、サブフィードバック制御条件が成立しているか否かを判定する。サブフィードバック制御条件は、例えば、先に述べた図5のステップ505におけるメインフィードバック制御条件が成立し、目標空燃比AFtgtが理論空燃比に設定され、機関10の冷却水温THWが前記第1所定温度よりも高い第2所定温度以上であり、且つ、下流側空燃比センサ77が活性化しているときに成立する。
CPUがステップ805の処理を実行する時点においてサブフィードバック制御条件が成立している場合、CPUはそのステップ805にて「Yes」と判定し、以下に述べるステップ810乃至ステップ830の処理を順に実行する。その後、CPUは、ステップ895に進み、本ルーチンを一旦終了する。
ステップ810:CPUは、下記の(13)式に従って下流側目標値VSstと下流側空燃比センサ77の出力値VSとの差である出力偏差量Dvsを取得する。(13)式において、「下流側目標値VSst」は、理論空燃比に対応する下流側空燃比センサ77の出力値VSである。
Dvs=VSst−VS …(13)
Dvs=VSst−VS …(13)
ステップ815:CPUは、下記の(14)式に従ってサブフィードバック量VBを取得する。(14)式において、「Kp」は予め設定された比例ゲイン、「Ki」は予め設定された積分ゲイン、「Kd」は予め設定された微分ゲインである。更に、「Sdvs」は出力偏差量Dvsの時間積分値であり、「Ddvs」は出力偏差量Dvsの時間微分値である。
VB=Kp・Dvs+Ki・Sdvs+Kd・Ddvs …(14)
VB=Kp・Dvs+Ki・Sdvs+Kd・Ddvs …(14)
ステップ820:CPUは、「その時点における出力偏差量の時間積分値Sdvs」に「上記ステップ810にて取得した出力偏差量Dvs」を加えることにより、新たな出力偏差量の時間積分値Sdvsを取得する。
ステップ825:CPUは、「上記ステップ810にて取得した出力偏差量Dvs」から「本ルーチンを前回実行した際に取得した出力偏差量である前回出力偏差量Dvs_old」を減じることにより、新たな出力偏差量の時間微分値Ddvsを取得する。
ステップ830:CPUは、「上記ステップ810にて取得した出力偏差量Dvs」を「前回出力偏差量Dvs_old」としてECU80のバックアップRAMに格納する。
これに対し、CPUがステップ805の処理を実行する時点においてサブフィードバック制御条件が成立していない場合、CPUはそのステップ805にて「No」と判定し、以下に述べるステップ840及びステップ845の処理を順に実行する。その後、CPUは、ステップ895に進み、本ルーチンを一旦終了する。
ステップ840:CPUは、サブフィードバック量VBの値を「0」に設定する。
ステップ845:CPUは、出力偏差量の時間積分値Sdvsの値を「0」に設定する。
ステップ845:CPUは、出力偏差量の時間積分値Sdvsの値を「0」に設定する。
以上が本制御装置によるサブフィードバック量の算出である。
(スロットル弁開度制御)
次に、本制御装置によるスロットル弁通過空気量制御について説明する。CPUは、図9にフローチャートにより示したスロットル弁通過空気量制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図9のステップ900から処理を開始し、以下に述べるステップ905及びステップ910の処理を順に実行し、その後、ステップ915に進む。
次に、本制御装置によるスロットル弁通過空気量制御について説明する。CPUは、図9にフローチャートにより示したスロットル弁通過空気量制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図9のステップ900から処理を開始し、以下に述べるステップ905及びステップ910の処理を順に実行し、その後、ステップ915に進む。
ステップ905:CPUは、アクセルペダル操作量Accp及び車速SPDを取得する。アクセルペダル操作量Accpは、CPUが別途実行する処理によりアクセルペダル操作量センサ75の信号に基づいて取得され、ECU80のバックアップRAMに格納されている。車速SPDは、CPUが別途実行する処理により車速センサ78の信号に基づいて取得され、ECU80のバックアップRAMに格納されている。
ステップ910:CPUは、アクセルペダル操作量Accp及び車速SPDをルックアップテーブルMapTAb(Accp,SPD)に適用することにより、基準スロットル弁開度TAbを決定する。ルックアップテーブルMapTAb(Accp,SPD)によれば、基準スロットル弁開度TAbは、アクセルペダル操作量Accpが大きいほど大きい値として決定され、車速SPDが大きいほど大きい値として決定される。
CPUは、ステップ915に進むと、パージ実行フラグXprgの値が「1」であるか否かを判定する。パージ実行フラグXprgは、パージ管63を介した吸気通路への蒸発燃料(ベーパ)の導入であるパージが実行されているか否かを表すフラグであって、後述する図10のルーチンにおいて「1」又は「0」が入力されるフラグである。パージ実行フラグXprgの値が「1」である場合、パージが実行されており、パージ実行フラグXprgの値が「0」である場合、パージが実行されていない。
CPUがステップ915の処理を実行する時点においてパージ実行フラグXprgの値が「1」である場合、CPUは、以下に述べるステップ920乃至ステップ940の処理を順に実行する。その後、CPUは、ステップ995に進み、本ルーチンを一旦終了する。
これに対し、CPUがステップ915の処理を実行する時点においてパージ実行フラグXprgの値が「0」である場合、CPUは以下に述べるステップ945及びステップ940の処理を順に実行する。その後、CPUは、ステップ995に進み、本ルーチンを一旦終了する。
ステップ920:CPUは、スロットル弁通過空気量GAthを取得する。
ステップ925:CPUは、下記の(14)式に従ってパージ空気量GAprgを推定する。このパージ空気量GAprgは、パージ管63を介して蒸発燃料とともにサージタンク42に導入される空気の量である。更に、(14)式において、「RPtgt」は、後述する図10のルーチンにより決定される目標パージ率である。
GAprg=GAth・RPtgt …(14)
ステップ925:CPUは、下記の(14)式に従ってパージ空気量GAprgを推定する。このパージ空気量GAprgは、パージ管63を介して蒸発燃料とともにサージタンク42に導入される空気の量である。更に、(14)式において、「RPtgt」は、後述する図10のルーチンにより決定される目標パージ率である。
GAprg=GAth・RPtgt …(14)
ステップ930:CPUは、パージ空気量GAprg及びその時点におけるスロットル弁開度TAをルックアップテーブルMapKta(GAprg,TA)に適用することにより、スロットル弁開度補正値Ktaを決定する。
ルックアップテーブルMapKta(GAprg,TA)によれば、スロットル弁開度補正値Ktaは、パージ空気量GAprgが大きいほど大きい正の値として決定され、スロットル弁開度TAから定まる単位スロットル弁通過空気量変化値が大きいほど小さい値として決定される。単位スロットル弁通過空気量変化値は、スロットル弁開度TAを「1°」変化させたときのスロットル弁通過空気量GAthの変化量であり、実験等により予め求められ、ECU80のROMに記憶されている。
ステップ935:CPUは、下記の(15)式に従って目標スロットル弁開度TAtgtを決定する。即ち、基準スロットル弁開度TAbをスロットル弁開度補正値Ktaによって補正することにより、目標スロットル弁開度TAtgtを決定する。
TAtgt=TAb−Kta …(15)
TAtgt=TAb−Kta …(15)
このステップ935の処理は、パージ空気量GAprgの分だけスロットル弁通過空気量GAthを減らすことによって燃焼室25に供給される空気の量を目標量とするために行われる。
ステップ940:CPUは、スロットル弁開度TAを目標スロットル弁開度TAtgtと一致させるための駆動指示信号をスロットル弁45に送出する。
ステップ945:CPUは、基準スロットル弁開度TAbを目標スロットル弁開度TAtgtに設定する。
ステップ945:CPUは、基準スロットル弁開度TAbを目標スロットル弁開度TAtgtに設定する。
以上が本制御装置によるスロットル弁通過空気量制御である。
次に、本制御装置によるパージ制御について説明する。CPUは、図10にフローチャートにより示したパージ制御ルーチンを所定時間が経過する毎に実行するようになっている。従って、CPUは、所定のタイミングになると、図10のステップ1000から処理を開始し、以下に述べるステップ1002乃至ステップ1005の処理を順に実行し、その後、ステップ1010に進む。
ステップ1002:CPUは、下記の(16)式に従ってパージ空気量GAprgを推定する。(16)式において、「GAth」はスロットル弁通過空気量であり、「RPprg」は本ルーチンを前回実行したときに決定された目標パージ率である。
GAprg=GAth・RPtgt …(16)
GAprg=GAth・RPtgt …(16)
ステップ1004:CPUは、スロットル弁通過空気量GAthとパージ空気量GAprgとを合算することにより、筒内吸入空気量GAtotalを取得する(GAtotal=GAth+GAprg)。
ステップ1005:CPUは、筒内吸入空気量GAtotalをルックアップテーブルMapXkgm(N)(GAtotal)に適用することにより、メインフィードバック学習完了フラグXkgm(N)を取得する。
このメインフィードバック学習完了フラグXkgm(N)は、図6のルーチンにより「1」又は「0」が入力されるフラグである。スロットル弁通過空気量GAthは、CPUが別途実行する処理によりによりエアフローメータ71の出力値に基づいて取得され、ECU80のバックアップRAMに記憶されている。パージ空気量GAprgは、先に述べた図9のルーチンにより推定されるパージ空気量である。
ルックアップテーブルMapXkgm(N)(GAtotal)によれば、筒内吸入空気量GAtotalが「0」以上であり且つ前記第1空気量GAth1よりも小さい場合(0≦GAtotal<GAth1)、フラグXkgm(1)が取得され、空気量GAtotalが前記第1空気量GAth1以上であり且つ前記第2空気量GAth2よりも小さい場合(GAth1≦GAtotal<GAth2)、フラグXkgm(2)が取得される。
更に、筒内吸入空気量GAtotalが前記第2空気量GAth2以上であり且つ前記第3空気量GAth3よりも小さい場合(GAth2≦GAtotal<GAth3)、フラグXkgm(3)が取得され、空気量GAtotalが前記第3空気量GAth3以上である場合(GAth3≦GAtotal)、フラグXkgm(4)が取得される。
CPUは、ステップ1010に進むと、パージ制御条件が成立しているか否かを判定する。本例において、パージ制御条件は、
(1)メインフィードバック学習完了フラグXkgm(N)の値が「1」であり(即ち、その時点における筒内吸入空気量GAtotalが属する学習領域R(N)に対応するメインフィードバック学習値KGM(N)の学習(更新)が完了しており)、且つ、
(2)メインフィードバック制御条件が成立しており、且つ、
(3)機関10が定常運転されているとき(例えば、スロットル弁開度TAの単位時間あたりの変化量が所定閾値以下であるとき)、
に成立する。
(1)メインフィードバック学習完了フラグXkgm(N)の値が「1」であり(即ち、その時点における筒内吸入空気量GAtotalが属する学習領域R(N)に対応するメインフィードバック学習値KGM(N)の学習(更新)が完了しており)、且つ、
(2)メインフィードバック制御条件が成立しており、且つ、
(3)機関10が定常運転されているとき(例えば、スロットル弁開度TAの単位時間あたりの変化量が所定閾値以下であるとき)、
に成立する。
CPUがステップ1010の処理を実行する時点においてパージ制御条件が成立している場合、CPUはそのステップ1010にて「Yes」と判定し、以下に述べるステップ1015乃至ステップ1035の処理を順に実行する。その後、CPUは、ステップ1095に進み、本ルーチンを一旦終了する。
これに対し、CPUがステップ1010の処理を実行する時点においてパージ制御条件が成立していない場合、CPUはそのステップ1010にて「No」と判定し、以下に述べるステップ1040、ステップ1045及びステップ1035の処理を順に実行する。その後、CPUは、ステップ1095に進み、本ルーチンを一旦終了する。
ステップ1015:CPUは、機関負荷KLをルックアップテーブルMapRPtgt(KL)に適用することにより、目標パージ率RPtgtを決定する。ルックアップテーブルMapRPtgt(KL)によれば、目標パージ率RPtgtは、機関負荷KLが大きいほど大きい値として決定される。
ステップ1020:CPUは、機関回転速度NE及び機関負荷KLをルックアップテーブルMapRPmax(NE,KL)に適用することにより、全開パージ率RPmaxを取得する。全開パージ率RPmaxは、パージ制御弁64の開度を最大開度とした場合のパージ率である。ルックアップテーブルMapRPmax(NE,KL)によれば、全開パージ率RPmaxは、機関回転速度NEが大きいほど大きい値として取得され、機関負荷KLが大きいほど大きい値として取得される。
ステップ1025:CPUは、下記の(17)式に従ってパージデューティ比Dprgを決定する。このパージデューティ比Dprgは、パージ制御弁64への電力供給に用いられるデューティ比である。
Dprg=(RPtgt/RPmax)・100 …(17)
Dprg=(RPtgt/RPmax)・100 …(17)
ステップ1030:CPUは、パージ実行フラグXprgの値を「1」に設定する。
ステップ1035:CPUは、パージデューティ比Dprgに従ってパージ制御弁64に駆動信号を送出する。
ステップ1040:CPUは、パージデューティ比Dprgの値を「0」に設定する。
ステップ1045:CPUは、パージ実行フラグXprgの値を「0」に設定する。
ステップ1035:CPUは、パージデューティ比Dprgに従ってパージ制御弁64に駆動信号を送出する。
ステップ1040:CPUは、パージデューティ比Dprgの値を「0」に設定する。
ステップ1045:CPUは、パージ実行フラグXprgの値を「0」に設定する。
以上が本制御装置によるパージ制御である。
次に、図11及び図12を参照しながら、上述した本制御装置によるパージ制御により得られる効果について説明する。
図11は、本制御装置によるパージ制御条件の成立の有無の判断が行われた場合におけるパージ制御条件の成立・不成立等を示している。より具体的に述べると、図11は、先に述べた図10のステップ1010において、メインフィードバック学習完了フラグXkgm(N)を取得するために用いるパラメータとして「筒内吸入空気量GAtotal(スロットル弁通過空気量GAthとパージ空気量GAprgとの合計)」を用いた場合におけるパージ制御条件の成立・不成立等を示している。
一方、図12は、本制御装置によるパージ制御条件の成立の有無の判断とは異なる判断が行われた場合におけるパージ制御条件の成立・不成立等を示している。より具体的に述べると、図12は、先に述べた図10のステップ1010において、メインフィードバック学習完了フラグXkgm(N)を取得するために用いるパラメータとして「スロットル弁通過空気量GAth」を用いた場合におけるパラメータ制御条件の成立・不成立等を示している。
更に、図11及び図12に示した例においては、メインフィードバック学習が完了しているか否か以外のパージ制御条件(即ち、メインフィードバック制御条件が成立しており、且つ、機関10が定常運転されているという条件)は成立しているものとする。
加えて、図11に示した例においては、時刻t0以前の筒内吸入空気量GAtotalは学習領域R(3)に属しており、この学習領域R(3)に対応するメインフィードバック学習は時刻t0までは完了しておらず時刻t0において完了するものとする。一方、図12に示した例においては、時刻t1以前のスロットル弁通過空気量GAthは学習領域R(3)に属しており、この学習領域R(3)に対応するメインフィードバック学習は時刻t1までは完了しておらず時刻t1において完了するものとする。更に、図11及び図12に示した例においては、学習領域R(2)に対応するメインフィードバック学習は完了していないものとする。
まず、図12に示した例においては、時刻t1以前において、スロットル弁通過空気量GAthは学習領域R(3)に属しており、この学習領域R(3)に対応するメインフィードバック学習は完了していない。従って、パージ制御条件が成立しないので、パージ空気量GAprgは「0」である。
時刻t1において、学習領域R(3)に対応するメインフィードバック学習が完了すると、パージ制御条件が成立する。その結果、パージ制御弁64の開度が増大されるとともにスロットル弁45の開度が減少される。これにより、パージ空気量GAprgが増大するとともにスロットル弁通過空気量GAthが減少する。このとき、時刻t2において、スロットル弁通過空気量GAthが属する学習領域R(N)は学習領域R(3)から学習領域R(2)に移行する。
この学習領域R(2)に対応するメインフィードバック学習は完了していないので、時刻t2において、パージ制御条件が不成立となる。その結果、パージ制御弁64の開度が「0」とされるとともにスロットル弁45の開度が増大される。これにより、パージ空気量GAprgが「0」になるとともにスロットル弁通過空気量GAthが増大する。このとき、時刻t3において、スロットル弁通過空気量GAthが属する学習領域R(N)は学習領域R(2)から学習領域R(3)に移行する。
この学習領域R(3)に対応するメインフィードバック学習は完了しているので、時刻t3において、パージ制御条件が成立する。以降、「パージ制御弁64の開度の増大及びスロットル弁45の開度の減少」と「パージ制御弁64の開度の減少及びスロットル弁45の開度の増大」とが繰り返され、その結果、パージ制御条件の成立(時刻t5、時刻t7及び時刻t9を参照。)と不成立(時刻t4、時刻t6及び時刻t8を参照。)とが繰り返される。このため、パージの実行と停止とが繰り返されてしまう。
これに対し、図11に示した例においては、時刻t0以前において、筒内吸入空気量GAtotalは学習領域R(3)に属しており、この学習領域R(3)に対応するメインフィードバック学習は完了していない。従って、パージ制御条件は成立しないので、パージ空気量GAprgは「0」である。
時刻t0において、学習領域R(3)に対応するメインフィードバック学習が完了する。これにより、パージ制御条件が成立する。その結果、パージ制御弁64の開度が増大されるとともにスロットル弁45の開度が減少される。これにより、パージ空気量GAprgが増大するとともにスロットル弁通過空気量GAthが減少する。このとき、筒内吸入空気量GAtotalは学習領域R(3)に属したままである。従って、時刻t0以降も、パージ制御条件が成立するので、パージが継続して実行される。
このように、本制御装置によれば、パージの実行と停止との繰り返しを防止することができる。
10…内燃機関、39…燃料噴射弁、45…スロットル弁、60…燃料タンク、61…キャニスタ、63…-パージ管、64…パージ制御弁、71…エアフローメータ、80…電子制御装置(ECU)
Claims (1)
- 燃焼室に燃料を供給するための燃料噴射弁、
燃焼室に吸入される空気の量を制御するためのスロットル弁、
燃料を貯留するための燃料タンク、
前記燃料タンクにて発生した蒸発燃料を貯留するためのキャニスタ、
前記キャニスタに貯留されている蒸発燃料を前記スロットル弁下流において吸気通路に導入するためのパージ管、及び、
前記パージ管を介して前記吸気通路に導入される蒸発燃料の量を制御するためのパージ制御弁、
を備えた内燃機関に適用され、
前記燃料噴射弁、前記スロットル弁、及び、前記パージ制御弁の作動を制御する制御部を有し、
前記制御部は、
燃焼室に形成される混合気の空燃比を目標空燃比と一致させるために排ガスの空燃比に基づいて前記燃料噴射弁から前記燃焼室に供給される燃料の量を補正するための補正値を学習する空燃比学習を、それぞれが前記機関の吸入空気量に対応する複数の領域規定値により規定される複数の学習領域毎に行い、
前記スロットル弁を通過する空気の量であるスロットル弁通過空気量に関連する指標値が前記複数の学習領域のうちの前記空燃比学習が完了している学習領域に属するか否かを判定する学習完了領域判定を行い、
前記指標値が前記空燃比学習が完了している学習領域に属すると判定された場合には前記パージ制御弁を開弁することによって前記パージ管を介して前記吸気通路へ蒸発燃料を導入するパージの実行を許可し、
前記指標値が前記空燃比学習が完了していない学習領域に属すると判定された場合には前記パージ制御弁を全閉することによって前記パージを停止する、
内燃機関の制御装置において、
前記制御部は、
前記パージが停止されている場合、前記スロットル弁通過空気量を前記指標値として用いて前記習完了領域判定を行い、
前記パージが実行されている場合、前記パージによって前記吸気通路に導入される蒸発燃料とともに導入される空気の量を前記スロットル弁通過空気量に加えた値を前記指標値として用いて前記学習完了領域判定を行う、
制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015022863A JP2016145546A (ja) | 2015-02-09 | 2015-02-09 | 内燃機関の制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015022863A JP2016145546A (ja) | 2015-02-09 | 2015-02-09 | 内燃機関の制御装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016145546A true JP2016145546A (ja) | 2016-08-12 |
Family
ID=56685383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015022863A Pending JP2016145546A (ja) | 2015-02-09 | 2015-02-09 | 内燃機関の制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016145546A (ja) |
-
2015
- 2015-02-09 JP JP2015022863A patent/JP2016145546A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8600647B2 (en) | Air-fuel ratio control apparatus of a multi-cylinder internal combustion engine | |
US8370043B2 (en) | Apparatus for determining an air-fuel ratio imbalance among cylinders of an internal combustion engine | |
JP4656092B2 (ja) | 内燃機関の制御装置 | |
JP5093542B2 (ja) | 内燃機関の空燃比気筒間インバランス判定装置 | |
US8725387B2 (en) | Apparatus for determining an air-fuel ratio imbalance among cylinders of an internal combustion engine | |
US8904762B2 (en) | Control apparatus for an internal combustion engine | |
US8887491B2 (en) | Control apparatus for an internal combustion engine | |
JP5293889B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2012225308A (ja) | 内燃機関の制御装置 | |
JP4349438B2 (ja) | 内燃機関の空燃比制御装置 | |
JP2016145546A (ja) | 内燃機関の制御装置 | |
JP2009264115A (ja) | 多気筒内燃機関の制御装置 | |
JP3612785B2 (ja) | 内燃機関の制御装置 | |
JP2017115802A (ja) | 内燃機関の空燃比制御装置 | |
JP2005207286A (ja) | 触媒劣化判定装置 | |
JP5555496B2 (ja) | 内燃機関の制御装置 | |
JPH09287503A (ja) | 蒸発燃料処理装置を備える内燃機関の空燃比制御装置 | |
JP2012189058A (ja) | 多気筒内燃機関の燃料噴射制御装置 | |
JP2003155947A (ja) | 内燃機関の空燃比制御装置 | |
JP2008014280A (ja) | 内燃機関の空燃比制御装置 | |
JP2013253548A (ja) | 内燃機関の制御装置 |