(57)【要約】【課題】キャニスタモデルの較正エラーに伴いパージ分補正量にエラーが生じていても空燃比フィードバック補正量の補正代を残しつつ理論空燃比からの空燃比偏差が小さくなるようにする。【解決手段】コントローラ１１は、キャニスタモデルを用いてパージ処理時にキャニスタ２４から脱離する燃料量を推定し、この脱離燃料量に基づき目標パージ率でパージ処理を行うことによる理論空燃比からの空燃比偏差が小さくなるようにパージ分補正量を演算し、このパージ分補正量でエンジンへの供給燃料量を補正する。さらに空燃比フィードバック補正量が第１リミッタを含んで中心値の側に収まるように当該補正量を制限すると共に、第１リミッタよりも当該補正量の中心値までの幅が狭い第２リミッタを設定し、当該補正量が第２リミッタを含んで中心値の側に収まらないとき、目標パージ率を低下させる処理を行う。【選択図】　　　　図１
2004092450.tif 000002
【特許請求の範囲】
【請求項１】
排気中の空燃比を検出する空燃比検出手段と、
この空燃比検出手段により検出される排気空燃比が理論空燃比と一致するように空燃比フィードバック補正量を演算する空燃比フィードバック補正量演算手段と、
空燃比フィードバック補正量の中心値より所定の幅を有する第１リミッタを設定する第１リミッタ設定手段と、
空燃比フィードバック補正量が第１リミッタを含んで中心値の側に収まるように、演算される空燃比フィードバック補正量を制限する空燃比フィードバック補正量制限手段と、
この制限された空燃比フィードバック補正量でエンジンへの供給燃料量を補正する空燃比フィードバック補正手段と
を備えるエンジンの空燃比制御装置において、
燃料タンクで発生する蒸発燃料を吸着するキャニスタと、
キャニスタとエンジンの吸気通路とを連通する配管を開閉するパージバルブと、
目標パージ率が得られるようにパージバルブを制御するパージバルブ制御手段と、
少なくとも、
（ａ）　キャニスタに吸着されている燃料量の前回値及びキャニスタから脱離する燃料量の前回値に基づきキャニスタに吸着されている燃料量を演算する吸着燃料量演算式と、
（ｂ）吸着燃料量演算式によって演算された吸着燃料量と、目標パージ率とに基づきキャニスタから脱離する燃料量を演算する脱離燃料量演算式と
で構成されるキャニスタモデルと、
目標パージ率でパージ処理を行うことによる、理論空燃比からの空燃比偏差が小さくなるように、キャニスタモデルを用いて演算される脱離燃料量に基づいてパージ分補正量を演算するパージ分補正量演算手段と、
このパージ分補正量でエンジンへの供給燃料量を補正するパージ分補正手段と、
第１リミッタよりも空燃比フィードバック補正量の中心値までの幅が狭い第２リミッタを設定する手段と、
演算される空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まらないとき、目標パージ率を低下させる処理を行うパージ率低下処理手段と
を備えることを特徴とするエンジンの空燃比制御装置。
【請求項２】
パージ率低下処理を行ったことにより、空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まったとき、パージ率低下処理を中止することを特徴とする請求項１に記載のエンジンの空燃比制御装置。
【請求項３】
第２リミッタにヒステリシスを設けることを特徴とする請求項１または２に記載のエンジンの空燃比制御装置。
【請求項４】
目標パージ率を所定時間間隔で所定値ずつ低下させることを特徴とする請求項１または２に記載のエンジンの空燃比制御装置。
【請求項５】
空燃比学習値を格納する空燃比学習値格納手段と、
この空燃比学習値を運転条件に応じて読み出す空燃比学習値読み出し手段と、この読み出した空燃比学習値でエンジンへの供給燃料量を補正する空燃比補正手段と、
排気中の空燃比を検出する空燃比検出手段と、
この空燃比検出手段により検出される排気空燃比が理論空燃比と一致するように空燃比フィードバック補正量を演算する空燃比フィードバック補正量演算手段と、
空燃比フィードバック補正量の中心値より所定の幅を有する第１リミッタを設定する第１リミッタ設定手段と、
空燃比フィードバック補正量が第１リミッタを含んで中心値の側に収まるように、演算される空燃比フィードバック補正量を制限する空燃比フィードバック補正量制限手段と、
この制限された空燃比フィードバック補正量でエンジンへの供給燃料量を補正する空燃比フィードバック補正手段と
を備えるエンジンの空燃比制御装置において、
燃料タンクで発生する蒸発燃料を吸着するキャニスタと、
キャニスタとエンジンの吸気通路とを連通する配管を開閉するパージバルブと、
目標パージ率が得られるようにパージバルブを制御するパージバルブ制御手段と、
第１リミッタよりも空燃比フィードバック補正量の中心値までの幅が狭い第２リミッタを設定する手段と、
演算される空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まらないとき、目標パージ率をゼロに向かって低下させる処理を行うパージ率低下処理手段と、
このパージ率低下処理により目標パージ率が続けてゼロとなっている期間が所定値となったときベース空燃比エラーであると判定するベース空燃比エラー判定手段と
を備えることを特徴とするエンジンの空燃比制御装置。
【請求項６】
エンジン始動後にパージ処理が終了してから空燃比学習を開始させるようにしている場合に、ベース空燃比エラーであると判定したとき、パージ処理を停止し即座に空燃比学習を開始させることを特徴とする請求項５に記載のエンジンの空燃比制御装置。
【請求項７】
空燃比学習値を燃料系システムの故障診断に用いている場合に、ベース空燃比エラーであると判定したとき、パージ処理を停止し空燃比学習値の更新の禁止を解除して空燃比学習値の更新を許可することを特徴とする請求項５に記載のエンジンの空燃比制御装置。
【請求項８】
空燃比学習値を燃料系システムの故障診断に用いている場合は、空燃比学習値が所定値以上となったとき燃料系システムの故障であると診断する場合であることを特徴とする請求項７に記載のエンジンの空燃比制御装置。
【請求項９】
ベース空燃比エラーであるか否かを判定する運転領域は吸入空気流量の大きい領域であることを特徴とする請求項５から８までのいずれか一つに記載のエンジンの空燃比制御装置。
【請求項１０】
少なくとも、
（ａ）　キャニスタに吸着されている燃料量の前回値及びキャニスタから脱離する燃料量の前回値に基づきキャニスタに吸着されている燃料量を演算する吸着燃料量演算式と、
（ｂ）吸着燃料量演算式によって演算された吸着燃料量と、目標パージ率とに基づきキャニスタから脱離する燃料量を演算する脱離燃料量演算式と
で構成されるキャニスタモデルと、
目標パージ率でパージ処理を行うことによる、理論空燃比からの空燃比偏差が小さくなるように、キャニスタモデルを用いて演算される脱離燃料量に基づいてパージ分補正量を演算するパージ分補正量演算手段と、
このパージ分補正量でエンジンへの供給燃料量を補正するパージ分補正手段と
を備えることを特徴とする請求項５から９までのいずれか一つに記載のエンジンの空燃比制御装置。
【請求項１１】
キャニスタモデルの脱離燃料量演算式が、吸着燃料量演算式によって演算された吸着燃料量と、目標パージ率と、キャニスタ内の燃料吸着剤の温度とに基づきキャニスタから脱離する燃料量を演算する式であることを特徴とする請求項１、２、３、４、１０のいずれか一つに記載のエンジンの空燃比制御装置。
【請求項１２】
キャニスタモデルが、さらに、キャニスタから脱離する燃料量に基づき燃料吸着剤の温度降下量を演算し、この温度降下量に基づき燃料吸着剤の温度を演算する吸着剤温度演算式を含んで構成されることを特徴とする請求項１１に記載のエンジンの空燃比制御装置。
【請求項１３】
理論空燃比からの空燃比偏差をパージ処理によるものとみなしてキャニスタから脱離した燃料量を推定する手段と、推定された脱離燃料量からキャニスタに吸着されていた燃料量を逆算する手段と、キャニスタモデル内の内部変数である吸着燃料量の値を前記逆算した吸着燃料量の値で較正する手段とをさらに備えたことを特徴とする請求項１１または１２に記載のエンジンの空燃比制御装置。
【請求項１４】
キャニスタに吸着していた燃料量を逆算する手段が、キャニスタモデルの脱離燃料量演算式の逆演算によって前記推定された脱離燃料量からキャニスタに吸着していた燃料量を演算することを特徴とする請求項１３に記載のエンジンの空燃比制御装置。
【請求項１５】
脱離燃料量を推定する手段が、パージ以外の外乱による理論空燃比からの空燃比偏差が生じないときの理論空燃比からの空燃比偏差に基づきキャニスタからの脱離燃料量を推定することを特徴とする請求項１３または１４に記載のエンジンの空燃比制御装置。
【請求項１６】
脱離燃料量を推定する手段が、パージ空燃比が所定値よりも濃く、パージによる理論空燃比からの空燃比偏差が十分に表れるときの理論空燃比からの空燃比偏差よりキャニスタからの脱離燃料量を推定することを特徴とする請求項１３から１５までのいずれか一つに記載のエンジンの空燃比制御装置。
【請求項１７】
脱離燃料量を推定する手段が、パージ率が所定値よりも高く、パージによる理論空燃比からの空燃比偏差が十分に表れるときの理論空燃比からの空燃比偏差よりキャニスタからの脱離燃料量を推定することを特徴とする請求項１３から１６までのいずれか一つに記載のエンジンの空燃比制御装置。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
この発明は、エンジンの空燃比制御装置、特に蒸発燃料処理装置を備えるものに関する。
【０００２】
【従来の技術】
エンジンには、エンジン停止中に燃料タンク内で発生した蒸発燃料をキャニスタ内の活性炭に一旦吸着させておき、エンジン始動後の所定の運転条件で吸気管圧力（大気圧より低い圧力）を利用して活性炭に吸着した燃料を脱離させ、吸気絞り弁下流の吸気通路に導き燃焼処理する蒸発燃料処理装置を備えている（特開平７−１６６９７８号公報参照）。
【０００３】
以下では、キャニスタに吸着させている燃料を脱離させてエンジンに供給することを「パージ」あるいは「パージ処理」、キャニスタから脱離する燃料を「パージ燃料」、パージ燃料だけでなくパージ燃料と共にエンジンに供給される新気をも併せて「パージガス」ということがある。
【０００４】
こうした従来装置にあっては、パージによる排気空燃比への影響は外乱として扱い、その外乱により排気空燃比が理論空燃比を外れることがあっても、排気通路に設けた酸素濃度センサを用いた空燃比フィードバック制御を行って排気空燃比を理論空燃比へと戻し、これによって排気通路に設けた三元触媒の転化効率が低下することがないようにしている。
【０００５】
【発明が解決しようとしている問題点】
ところで、パージ燃料がエンジンに供給されることによる空燃比フィードバック補正係数α（空燃比フィードバック補正量）の変化を予測できるので、この予測可能な空燃比フィードバック補正係数αをパージ分補正係数ＦＨＯＳ（パージ分補正量）として新たに導入し、パージによる理論空燃比からの空燃比偏差が小さくなるようにこのパージ分補正係数ＦＨＯＳでエンジンへの供給燃料量の基本値を補正すると共に、
（１）キャニスタに吸着されている燃料量を演算する式と、
（２）この吸着燃料量と目標パージ率とに基づいてキャニスタから脱離する燃
料量を演算する式と
で構成されるキャニスタモデルを用いてキャニスタから脱離する燃料量を推定し、この脱離燃料量、目標パージ率及び吸入空気質量に基づいて上記のパージ分補正係数ＦＨＯＳを演算するようにした装置を本願と同一の出願人が先に提案している（特願２００１−７１５６２号参照）。
【０００６】
この先願装置によるパージ処理（モデル規範パージ処理）によれば、パージによる外乱は専らこのパージ分補正係数ＦＨＯＳが対応することになり、ベース空燃比エラーがなくかつＦＨＯＳが正確に演算されていさいすれば空燃比フィードバック制御を行わなくとも、排気空燃比が理論空燃比へと制御される。すなわち、パージ処理中に空燃比フィードバック制御条件が成立して空燃比フィードバック制御を開始したとき、空燃比フィードバック補正係数αはパージがないときのように動く。
【０００７】
空燃比フィードバック補正係数αに対しては補正代の限界を定める第１リミッタが例えば±２５％と予め設けられ、αの中心値である１００％より１２５％（上限リミッタ）までがαを大きくする側のフルの補正代、また１００％より７５％（下限リミッタ）がαを小さくする側のフルの補正代となるところ、従来装置によれば、パージによる排気空燃比への影響を空燃比フィードバック補正係数αが補償していたためにその分だけ外乱に対するαの補正代が目減りしていたわけであるが、先願装置によれば、空燃比フィードバック補正係数αがパージに対してフリーになり、αが有している補正代をパージ以外の外乱に対してフルに使用可能となった。
【０００８】
また、目標パージ率として、パージバルブの流量等による一定の制限の範囲内で最大のパージ率を設定することで、エンジン始動直後より早期にかつ大量のパージを行うことができている。
【０００９】
さて、その後にこうした先願装置に改良の余地が生まれた。これについて具体的に説明すると、キャニスタモデルは、あくまで近似モデルであるため、これを用いて演算される値（脱離量、吸着量等）は実際の値から幾らかずれた値となる。また、キャニスタモデルは後述するように漸化式であるので、モデル動作時間が長くなるにつれて誤差が積分されて演算値と実際値とのずれが拡大する。このため、このずれを較正しキャニスタモデルの演算精度を高く維持するため、較正処理タイミングになると、キャニスタモデルの内部変数の一つであるキャニスタの吸着量の値を較正している。
【００１０】
しかしながら、キャニスタモデルの較正処理にはエラーが伴うので、この較正エラーの影響を受けてパージ分補正係数ＦＨＯＳにもエラーが生じる。こうしてパージ分補正係数ＦＨＯＳにエラーが生じた場合であっても、空燃比フィードバック制御中であれば空燃比フィードバック補正係数αによってパージによる理論空燃比からの空燃比偏差がなくされる。
【００１１】
このことは、先願装置によればパージによる排気空燃比への影響をパージ分補正係数ＦＨＯＳによって補償することにより、空燃比フィードバック補正係数αの補正代をフルに使用可能としたはずなのに、パージ分補正係数ＦＨＯＳにエラーが生じると再び空燃比フィードバック補正係数αの補正代が狭くなってしまうことを意味する。
【００１２】
この場合に、パージ分補正係数ＦＨＯＳは、目標パージ率（吸入空気流量に占めるパージガス流量の割合）と比例する関係にある。このため目標パージ率を低下させればパージ分補正係数ＦＨＯＳも低下し、誤ったパージ分補正係数ＦＨＯＳによる排気空燃比への影響も小さなものとなる。
【００１３】
そこで本発明は、先願装置を前提として、空燃比フィードバック補正係数αの中心値と、もともとある空燃比フィードバック補正係数αに対するリミッタ（第１リミッタ）との間にパージ用のリミッタとして第２リミッタを設け、空燃比フィードバック補正係数αが中心値の側からこの第２リミッタを横切って外れた場合に目標パージ率を徐々に（所定時間当たり所定値ずつ）低下させる処理を行い、このパージ率低下処理により空燃比フィードバック補正係数αが第２リミッタを横切って中心値の側へと戻ったときにはパージ率低下処理は不要として中止することにより、キャニスタモデルの較正エラーに伴いパージ分補正係数にエラーが生じていても、第２リミッタから第１リミッタまでの間を空燃比フィードバック補正係数の補正代として残しつつパージによる理論空燃比からの空燃比偏差を小さくし、残した補正代でパージ以外の外乱に対するロバスト性を確保することを目的とする。
【００１４】
一方、エアフローメータや燃料噴射弁などの構成部品の経時劣化やバラツキ、燃料噴射弁の噴射パルス幅−流量特性の非直線性などによるベース空燃比の理論空燃比からの偏差をベース空燃比エラーといい、このベース空燃比エラーを無くすため、ストイキ運転時（理論空燃比を目標空燃比とする運転時のこと）には空燃比の学習制御が行われている。
【００１５】
こうした空燃比学習制御に対して先願装置のようにエンジン始動直後より大量のパージを行うパージ処理とが組み合わされる場合には、次のような問題が生じる。すなわち、ベース空燃比エラーがあっても空燃比学習制御が正常に働いていれば、ベース空燃比エラーを空燃比学習値が吸収するためベース空燃比エラーが存在しないのと同じ状態になるが、何らかの原因により、エンジン始動直後に大幅なベース空燃比エラーが存在する場合には、空燃比フィードバック補正係数αによる補正代だけでは補正代が足りずに補正しきれない場合が考えられる。補正しきない場合、つまりパージによる理論空燃比からの空燃比偏差が大きくある場合には排気エミッションの悪化につながる。
【００１６】
その一方で、パージは、パージによる排気エミッションの悪化低減を目的として始動後に大量に流すことが要求されているため、先願装置のようにパージ処理の開始を早期に行うことが望ましい。
【００１７】
従って、始動後速やかに大量のパージを開始した後には、空燃比フィードバック制御中において排気空燃比に現れる影響がパージによるものであるのか、それともベース空燃比エラーによるものであるのかを判定することは難しい。
【００１８】
この場合に、パージ処理の開始前にベース空燃比エラーを検出することが考えられるが、パージ開始前のようにエンジンの暖機が完了していない状態において短時間でベース空燃比エラーを判定することは外乱などを考慮すると困難である。また、パージ実行中にパージ処理を所定時間カットしそのカット中にベース空燃比のエラーを検出することも可能ではあるが、この方法ではパージカット中はパージガスを流し続けることができないので、始動後速やかにかつ大量のパージ処理を行うという、パージ処理に対する本来の要求にそぐわない。
【００１９】
そこで本発明は、空燃比学習制御に対して先願装置のようにエンジン始動後速やかにかつ大量のパージを行うパージ処理とが組み合わされる場合を前提として、空燃比フィードバック補正係数αの中心値と、もともとある空燃比フィードバック補正係数αに対するリミッタ（第１リミッタ）との間にパージ用のリミッタとして第２リミッタを設け、空燃比フィードバック補正係数αが中心値の側からこの第２リミッタを横切って外れた場合に目標パージ率を徐々に（所定時間当たり所定値ずつ）低下させる処理を行い、このパージ率低下処理で目標パージ率がゼロとなっても第２リミッタを横切って外れた状態が続けばその継続する時間を計測し、その時間が所定値となった場合にベース空燃比エラーがあると判定することにより、第２リミッタから第１リミッタまでの間を空燃比フィードバック補正係数の補正代として残しつつベース空燃比エラーの検出を可能とし、残した補正代でパージ以外の外乱に対するロバスト性を確保することを目的とする。
【００２０】
【問題点を解決するための手段】
請求項１に記載の発明は、排気中の空燃比を検出する空燃比検出手段と、この空燃比検出手段により検出される排気空燃比が理論空燃比と一致するように空燃比フィードバック補正量を演算する空燃比フィードバック補正量演算手段と、空燃比フィードバック補正量の中心値より所定の幅を有する第１リミッタを設定する第１リミッタ設定手段と、空燃比フィードバック補正量が第１リミッタを含んで中心値の側に収まるように、演算される空燃比フィードバック補正量を制限する空燃比フィードバック補正量制限手段と、この制限された空燃比フィードバック補正量でエンジンへの供給燃料量を補正する空燃比フィードバック補正手段とを備えるエンジンの空燃比制御装置において、燃料タンクで発生する蒸発燃料を吸着するキャニスタと、キャニスタとエンジンの吸気通路とを連通する配管を開閉するパージバルブと、目標パージ率が得られるようにパージバルブを制御するパージバルブ制御手段と、
少なくとも、
（ａ）　キャニスタに吸着されている燃料量の前回値及びキャニスタから脱離する燃料量の前回値に基づきキャニスタに吸着されている燃料量を演算する吸着燃料量演算式と、
（ｂ）吸着燃料量演算式によって演算された吸着燃料量と、目標パージ率とに基づきキャニスタから脱離する燃料量を演算する脱離燃料量演算式と
で構成されるキャニスタモデルと、
目標パージ率でパージ処理を行うことによる、理論空燃比からの空燃比偏差が小さくなるように、キャニスタモデルを用いて演算される脱離燃料量に基づいてパージ分補正量を演算するパージ分補正量演算手段と、このパージ分補正量でエンジンへの供給燃料量を補正するパージ分補正手段と、第１リミッタよりも空燃比フィードバック補正量の中心値までの幅が狭い第２リミッタを設定する手段と、演算される空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まらないとき、目標パージ率を低下させる処理を行うパージ率低下処理手段とを備える。
【００２１】
請求項５に記載の発明は、空燃比学習値を格納する空燃比学習値格納手段と、この空燃比学習値を運転条件に応じて読み出す空燃比学習値読み出し手段と、この読み出した空燃比学習値でエンジンへの供給燃料量を補正する空燃比補正手段と、排気中の空燃比を検出する空燃比検出手段と、この空燃比検出手段により検出される排気空燃比が理論空燃比と一致するように空燃比フィードバック補正量を演算する空燃比フィードバック補正量演算手段と、空燃比フィードバック補正量の中心値より所定の幅を有する第１リミッタを設定する第１リミッタ設定手段と、空燃比フィードバック補正量が第１リミッタを含んで中心値の側に収まるように、演算される空燃比フィードバック補正量を制限する空燃比フィードバック補正量制限手段と、この制限された空燃比フィードバック補正量でエンジンへの供給燃料量を補正する空燃比フィードバック補正手段とを備えるエンジンの空燃比制御装置において、燃料タンクで発生する蒸発燃料を吸着するキャニスタと、キャニスタとエンジンの吸気通路とを連通する配管を開閉するパージバルブと、目標パージ率が得られるようにパージバルブを制御するパージバルブ制御手段と、第１リミッタよりも空燃比フィードバック補正量の中心値までの幅が狭い第２リミッタを設定する手段と、演算される空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まらないとき、目標パージ率をゼロに向かって低下させる処理を行うパージ率低下処理手段と、このパージ率低下処理により目標パージ率が続けてゼロとなっている期間が所定値となったときベース空燃比エラーであると判定するベース空燃比エラー判定手段とを備える。
【００２２】
【作用及び効果】
パージ分補正量が正しく演算されているときには、空燃比フィードバック補正量はパージを行っていない場合と同じになるのであるが、キャニスタモデルの較正処理にはエラーが伴うので、この較正エラーの影響を受けてパージ分補正量にもエラーが生じる。こうしてパージ分補正量にエラーが生じた場合であっても、空燃比フィードバック補正量によって理論空燃比からの空燃比偏差が小さくされる。このことは、パージによる排気空燃比への影響をパージ分補正量によって補償することにより、空燃比フィードバック補正量の補正代をフルに使用可能としたはずなのに、パージ分補正量にエラーが生じると再び空燃比フィードバック補正量の補正代が狭くなってしまうことを意味する。
【００２３】
これに対して請求項１に記載の発明では、空燃比フィードバック補正量の中心値と、もともとある空燃比フィードバック補正量に対するリミッタ（第１リミッタ）との間にパージ用のリミッタとして第２リミッタを設け、空燃比フィードバック補正量が中心値の側からこの第２リミッタを横切って外れた場合に目標パージ率を徐々に低下させる処理を行うので、パージによる排気空燃比への影響が低下すると共にパージ分補正量そのものも小さくなるため、空燃比フィードバック補正量が第２リミッタを横切って第１リミッタに移動するまで何もしない場合より空燃比フィードバック補正量の補正代が拡大する。
【００２４】
このようにして、請求項１に記載の発明によれば、キャニスタモデルの較正エラーに伴いパージ分補正量にエラーが生じていても、第２リミッタから第１リミッタまでの間を空燃比フィードバック補正量の補正代として残しつつ理論空燃比からの空燃比偏差を小さくし、残した補正代でパージ以外の外乱に対するロバスト性を確保することができる。
【００２５】
次に、パージ実行中に排気空燃比が理論空燃比から外れているので、これを理論空燃比へ戻そうと空燃比フィードバック補正量を第１リミッタまで移動させたのでは、空燃比フィードバック補正量の補正代がなくなり、空燃比フィードバック制御中における、パージ以外の外乱に対するロバスト性が低下してしまうが、請求項５に記載の発明によれば、演算される空燃比フィードバック補正量が第２リミッタを含んで中心値の側に収まらないとき、パージ率低下処理により目標パージ率がゼロに向かって低下していくので、パージによる排気空燃比への影響が低下し、これによって空燃比フィードバック補正量に補正代が残される。
【００２６】
そして、パージ率低下処理を続けて目標パージ率がゼロになると、パージによる空燃比への影響を完全に排除した状態となり、この状態ではベース空燃比エラーを検出することが可能となる。
【００２７】
このように請求項５に記載の発明によれば、第２リミッタから第１リミッタまでの間を空燃比フィードバック補正量の補正代として残しつつベース空燃比エラーの検出を可能とし、残した補正代でパージ以外の外乱に対するロバスト性を確保することができる。また、ベース空燃比エラーと大量のパージとが重なった場合の排気エミッションの悪化を防止できてもいる。
【００２８】
【発明の実施の形態】
以下、添付図面に基づき本発明の実施の形態について説明する。
【００２９】
図１は、蒸発燃料処理装置を備えるエンジンの全体構成を示したものである。
【００３０】
１はエンジン本体で、吸気通路２には吸気絞り弁３の下流に位置して気筒別に燃料噴射弁４が設けられ、エンジンコントローラ１１からの噴射信号により運転条件に応じて所定の空燃比となるように、吸気中に燃料を噴射供給する。詳細には、クランク角センサ１２からの信号、エアフローメータ１３からの吸入空気流量の信号、水温センサ１４からのエンジン冷却水温の信号等が、主にマイクロコンピュータからなるエンジンコントローラ１１に入力され、エンジンコントローラ１１ではこれらの信号に基づいて基本空燃比（理論空燃比）の混合気が得られる基本噴射パルス幅Ｔｐを算出し、これに水温増量などの各種の補正を行って燃料噴射パルス幅Ｔｉを求め、所定のタイミングでこのＴｉに対応する期間だけ燃料噴射弁４を開く。
【００３１】
排気通路５には三元触媒（図示しない）を備える。三元触媒は排気中の空燃比が理論空燃比を中心とする狭い範囲にあるとき最大の転化効率をもって排気中のＮＯｘの還元とＨＣ、ＣＯの酸化を行う。このため、エンジンコントローラ１１では空燃比センサ１５により検出される排気中の空燃比が理論空燃比と一致するように空燃比フィードバック補正係数αを演算し、この空燃比フィードバック補正係数α（空燃比フィードバック補正量）で上記の基本噴射パルス幅Ｔｐ（エンジンへの供給燃料量の基本値）を補正することにより空燃比のフィードバック制御を行う。
【００３２】
この場合に、空燃比フィードバック補正係数αに対して、αが動きうる範囲としてαの中心値（１００％）を中心として所定幅を有する第１リミッタ±ＬＭＴ１（±２５％）が予め設けられ、演算されるαが中心値から大きくなって上限リミッタである１００＋ＬＭＴ１を超えるときにはこの上限リミッタに、また演算されるαが中心値より小さくなって下限リミッタである１００−ＬＭＴ１を下回るときにはこの下限リミッタに制限される。
【００３３】
一方、蒸発燃料処理装置は燃料タンク２１内で発生する蒸発燃料を処理するためのもので、キャニスタ２４と、キャニスタ２４および燃料タンク２１を連通する配管２２と、キャニスタ２４およびエンジンの吸気絞り弁３下流の吸気通路２を連通する配管２６と、配管２６を開閉するパージバルブ２７とを備える。
【００３４】
燃料タンク２１内に発生した蒸発燃料は、配管２２を介してキャニスタ２４に導かれ、燃料成分だけがキャニスタ２４内の燃料吸着剤（活性炭）２４ａに吸着され、残りの空気は大気解放口２５より外部に放出される。活性炭２４ａに吸着された燃料を燃焼処理するため、パージバルブ２７を開き、吸気絞り弁３下流に発達する吸気管圧力（大気より低い圧力）を利用して大気解放口２５からキャニスタ２４内に新気を導入する。これによって新気により活性炭２４ａに吸着されていた燃料が脱離し、新気とともに配管２６を介してエンジン１の吸気通路２内に導入される。
【００３５】
キャニスタ２４に吸着させている燃料を脱離させてエンジンに供給する処理（パージ処理）を行うに際して、エンジンコントローラ２１ではエンジンの燃焼安定性、排気エミッションを悪化させない範囲で可能な限り高い目標パージ率（吸入空気流量に対するパージ流量の比率）を設定し、エンジン始動後よりその目標パージ率が実現されるようにパージバルブ２７の開度を制御する。
【００３６】
さらに、パージ処理を開始した後にはパージが外乱となり、理論空燃比からの空燃比偏差が生じる。パージの初期であれば排気空燃比が理論空燃比よりリッチ側に外れるので、その外れた空燃比が理論空燃比に戻るまで空燃比フィードバック補正係数αが中心値より小さくなる側に動き、特にエンジン始動後より可能な限り高い目標パージ率を設定し、大量のパージを行うときにはαがαの下限リミッタである７５％の近くまで動く。
【００３７】
その場合にパージ以外の外乱が生じて排気空燃比が理論空燃比を外れてリッチ側になったとすれば、αはさらに小さくなる側へと動くが、すぐに下限リミッタに達してそれ以上は小さくならない。すなわち、既にパージによる外乱に対してαを小さくする側へのαの補正代をほとんど使い果たしているので、パージ以外の外乱に対して補正代がわずかしか残っておらず、そのためわずかな補正代を用いても排気空燃比を理論空燃比に戻すことができなければ排気エミッションが悪化する。
【００３８】
このため、エンジンコンロトローラ１１では、後述するキャニスタモデルを用いてキャニスタからの脱離燃料量を推定し、その推定した脱離燃料量Ｄｇ、目標パージ率、吸入空気質量に基づいてパージ分補正係数ＦＨＯＳを演算し、このパージ分補正係数ＦＨＯＳで基本噴射パルス幅Ｔｐを補正することにより、エンジン始動後より可能な限り高い目標パージ率を設定して大量のパージが行われても、理論空燃比からの空燃比偏差が小さくなるようにする。すなわち、パージによる排気空燃比への影響はパージ分補正係数ＦＨＯＳが補償することになるので、空燃比フィードバック補正係数αはパージがないのと同じ動きをすることになり、これによってαはパージによる外乱に対して補正代を使う必要がなくなり補正代がフルで残り、パージ以外の外乱に対して強いロバスト性を有することになる。
【００３９】
後述するように、キャニスタモデルにより算出した脱離量Ｄｇがエンジンに供給されることにより空燃比フィードバック補正係数αの変化を予測することができるが、この予測されるαがパージ分補正係数ＦＨＯＳである。従ってこの予測されるαは目標パージ率が大きくなるほど大きくなり、脱離量Ｄｇが多くなるほど大きくなり、吸入空気質量Ｑｇが多くなるほど小さくなる。従って、パージ分補正係数ＦＨＯＳも、目標パージ率が大きくなるほど大きくなり、脱離量Ｄｇが多くなるほど大きくなり、吸入空気質量Ｑｇが多くなるほど小さくなる。
【００４０】
また、キャニスタモデルに対して較正処理を行う必要があり、その際に較正エラーが生じると、パージ分補正係数ＦＨＯＳが正しく演算されず、この結果、誤ったパージ分補正係数ＦＨＯＳにより理論空燃比からの空燃比偏差が生じたときには、空燃比フィードバック補正係数αが補正代を使って理論空燃比からの空燃比偏差が小さくなるようにする。これによってαの補正代が少なくなるので、エンジンコントローラ１１では、第１リミッタ±ＬＭＴ１よりも空燃比フィードバック補正量の中心値までの幅が狭い第２リミッタ±ＬＭＴ２を設定し、演算される空燃比フィードバック補正係数αが第２リミッタを含んで中心値の側に収まらないとき、目標パージ率を低下させる処理を行う。
【００４１】
一方、エアフローメータ１３や燃料噴射弁４などの構成部品の経時劣化やバラツキ、燃料噴射弁４の噴射パルス幅−流量特性の非直線性などに伴うベース空燃比エラーを無くすため、エンジンコントローラ１１では、ストイキ運転時（理論空燃比を目標空燃比とする運転時のこと）に空燃比の学習制御を行っているが、何らかの原因により、エンジン始動直後に大幅なベース空燃比エラーが存在する場合には、空燃比フィードバック補正係数αによる補正代だけでは補正代が足りずに補正しきれない場合が考えられる。しかも、このとき大量のパージが開始されていれば、排気空燃比に現れる影響が大量パージによるものであるのか、ベース空燃比エラーによるものであるのかを判定することは難しい。
【００４２】
このため、エンジンコントローラ１１では、空燃比フィードバック補正係数αがその中心値の側から第２リミッタを横切って外れた場合に目標パージ率を徐々に低下させる処理を行い、このパージ率低下処理で目標パージ率がゼロとなっても第２リミッタを横切って外れた状態が続けばその継続する時間を計測し、その時間が所定値となった場合にベース空燃比エラーがあると判定する。
【００４３】
なお、配管２２には燃料タンク２１側の通路内が大気圧よりも低くなると開かれるバキュームカットバルブ２３を迂回するバイパスバルブ２９が、配管２６には配管内の圧力を測定する圧力センサ３０が、またキャニスタ２４の大気解放口２５にはドレンカットバルブ２８がそれぞれ設けられているが、これらは蒸発処理装置の診断のために必要となるものであり、パージ処理とは直接関係がない。
【００４４】
エンジンコントローラ１１が行うこうした制御を図２、図３に示すブロック図によりまず概説する。
【００４５】
図２はパージ処理及び空燃比制御に関連する部分の概要をブロック図で示したものである。図２において目標パージ率設定部Ｂ１ではパージ処理に関連する部品の性能限界等に基づき現在の運転領域で設定可能な最大パージ率を演算し、この最大パージ率に追従するように目標パージ率を設定する。ただし、パージ率の急激な変化は排気空燃比の大きな変動（理論空燃比からの空燃比偏差が大きくなること）を招き、排気エミッションの悪化等の原因となるので、パージ率を急激に変化させないようにパージ率の変化量は所定量（パージ率変化量制限値）以下に制限している。
【００４６】
また、デューティ比演算部Ｂ２では目標パージ率を実現するために必要なパージバルブ２７のデューティ比を演算し、パージバルブ駆動部Ｂ３ではデューティ比演算部Ｂ２で演算されたデューティ比でパージバルブ２７を駆動する。
【００４７】
一方、脱離量演算部Ｂ４では、すぐ後に述べるキャニスタ２４の物理モデル（以下、キャニスタモデル」という。）を用いて上記目標パージ率でパージを行った場合にキャニスタ２４から脱離してくる燃料量を演算する。
【００４８】
パージ分補正係数演算部Ｂ５ではこの推定された脱離量（脱離燃料量）、目標パージ率、吸入空気流量に基づきパージによる理論空燃比からの空燃比偏差が小さくなるようにパージ分補正係数ＦＨＯＳを演算する。遅れ補正部Ｂ６ではこのパージ分補正係数ＦＨＯＳに対して、吸入空気流量を考慮した無駄時間補正及びなまし処理からなる遅れ補正を施し、遅れ補正後の補正係数を改めてパージ分補正係数ＦＨＯＳとする。
【００４９】
基本噴射パルス幅演算部Ｂ７では吸入空気流量とエンジン回転速度から基本噴射パルス幅Ｔｐを、また空燃比フィードバック補正係数演算部Ｂ８では実際の排気空燃比に基づいて空燃比フィードバック補正係数αをそれぞれ演算し、燃料噴射パルス幅演算部Ｂ９では、基本噴射パルス幅Ｔｐに対して、上記のように各種の補正や空燃比フィードバック補正係数αによる補正を行うほか、遅れ補正後のパージ分補正係数ＦＨＯＳによる補正を行い、最終的な燃料噴射パルス幅Ｔｉを演算する。燃料噴射弁駆動部Ｂ１０ではこのようにして演算した燃料噴射パルス幅Ｔｉで燃料噴射弁４を駆動する。
【００５０】
上記のキャニスタモデルは、図３に示したように吸着量演算部Ｂ２１、基準脱離量演算部Ｂ２２、パージ流量相当脱離量演算部Ｂ２３、活性炭温度演算部Ｂ２４からなっており、サンプリング周期Δｔ毎に各演算を行っている。
【００５１】
吸着量演算部Ｂ２１では、次の式によりキャニスタ２４に吸着されている燃料量の今回値Ｙを演算する。
【００５２】
［吸着量演算式］
Ｙ＝Ｙｚ−Ｄｇｚ…（１）
ただし、Ｙ　　：吸着量の今回値、
Ｙｚ　：吸着量の前回値、
Ｄｇｚ：脱離量の前回値、
この吸着量演算式は、吸着量（吸着燃料量）の前回値Ｙｚから前回脱離した燃料量であるＤｇｚを差し引いて現在（今回）の吸着量Ｙ［ｇ］を演算するものである。
【００５３】
基準脱離量演算部Ｂ２２では次の式により基準パージ流量時の脱離量Ｄｇｋ［ｇ］を演算する。
【００５４】
［基準パージ流量での脱離量演算式］
Ｄｇｋ＝（Ｙ／Ａ）＾ｎ（Ｔ）…（２）
ただし、Ｙ　　　：吸着量、
Ａ　　　：脱離定数、
ｎ（Ｔ）：脱離指数、
Ｔ　　　：活性炭温度、
この式は吸着脱離現象（フロイントリッヒ（Ｆｒｅｕｎｄｌｉｃｈの式）の考え方をキャニスタ２４からの燃料脱離現象に応用したものであり、これによってキャニスタ２４からの燃料脱離特性をほぼ正確に表現することができる。なお、フロイントリッヒの式に関しては「表面における理論ＩＩ」（丸善、塚田著）のｐ．２５〜ｐ．２７、ｐ．１０８〜ｐ．１１５に記載がある。
【００５５】
パージ流量相当脱離量演算部Ｂ２３では次式より脱離量Ｄｇ［ｇ］を演算する。
【００５６】
［パージ流量に応じた脱離量演算式］
Ｄｇ＝Ｋ×ＰＱ×Ｄｇｋ…（３）
ただし、Ｋ　　：定数、
ＰＱ　：パージ流量（＝目標パージ率×吸入空気流量）、
Ｄｇｋ：基準流量時脱離量、
このパージ流量ＰＱに応じた脱離量演算式は、パージ流量ＰＱと脱離量とがほぼ比例することから、直線近似により脱離量を演算するものである。なお、ここでは（２）式によって基準流量時の脱離量Ｄｇｋを求め、（３）式でこれにパージ流量ＰＱを乗算することによって脱離量Ｄｇを演算しているが、（２）式、（３）式を一つの式にまとめてもよい。
【００５７】
活性炭温度演算部Ｂ２４では次式により活性炭温度Ｔ［Ｋ］を演算する。
【００５８】
［活性炭温度演算式］
Ｔ＝Ｔｚ−Ｋｔ１×（Ｙｚ２−Ｙｚ）＋Ｋｔ２×（Ｔｚ−Ｔａ）…（４）
ただし、Ｔ　　：活性炭温度の今回値、
Ｔｚ　：活性炭温度の前回値、
Ｋｔ１：吸熱分係数、
Ｙｚ２：吸着量の前々回値、
Ｙｚ　：吸着量の前回値、
Ｋｔ２：熱伝達分係数、
Ｔａ　：キャニスタ雰囲気温度、
この活性炭温度演算式は、過去の温度（右辺第１項）と、脱離量（Ｙｚ２−Ｙｚ）に比例する温度低下分（右辺第２項）と、熱伝達による温度上昇分（右辺第３項）とで構成されている。このように活性炭温度Ｔを演算するのは、（２）式中の脱離指数ｎ（Ｔ）が活性炭温度Ｔの影響を受け、特に脱離量が多いときには活性炭温度Ｔの降下量が大きく、これがキャニスタ２４における燃料の脱離特性に与える影響を無視することができないからである。
【００５９】
したがって、キャニスタモデルは上記（１）式から（４）式の４つの式で、また（２）式と（３）式とをまとめた場合には３つの式で構成されることになる。
【００６０】
図２に戻り、このようにキャニスタモデルはキャニスタの脱離特性を高い精度で表現するものであるが、あくまで近似モデルであるため、これを用いて演算される値（脱離量、吸着量等）は実際の値から幾らかずれた値となる。また、キャニスタモデルは上記（１）式に示したように前回の演算結果を用いる漸化式であるので、モデル動作時間が長くなるにつれて誤差が積分されて演算値と実際値とのずれが拡大する。
【００６１】
そこで、このずれを較正しキャニスタモデルの演算精度を高く維持するため、較正タイミング判定部Ｂ１１が較正処理実行可能タイミングであると判定すると、較正処理部Ｂ１２がキャニスタモデルの内部変数の一つであるキャニスタ４の吸着量の値を較正する。具体的には、較正タイミング判定部Ｂ１１では、空燃比フィードバック制御中の空燃比フィードバック補正係数αの中心値（１００％）からの偏差がほぼ全てパージによるものとみなすことができる条件が成立したときに較正処理実行可能タイミングであると判定してスイッチＢ１３をＯＮにし、較正処理部Ｂ１２ではそのタイミングでの空燃比フィードバック補正係数αの中心値からの全空燃比補正係数（α×ＦＨＯＳ）の偏差、目標パージ率、吸入空気流量に基づいてキャニスタ２４からの燃料の脱離量を推定し、推定された脱離量から吸着量を逆算する。そして、この値でキャニスタモデルが持っている吸着量の値の較正を行う。
【００６２】
以下、エンジンコントローラ１１が行うパージ処理及び空燃比制御の具体的内容を図４、図６、図７、図８、図１２、図１３、図１６、図１９、図２０、図２２、図２４、図２５、図２６に示すフローチャートに従って説明する。
【００６３】
図４はパージ分補正係数を演算するためのもので、一定時間毎（例えば１０ｍｓｅｃ毎）に実行する。
【００６４】
ステップ１ではパージ許可条件にあるか否かを判定する。パージ許可条件になければステップ２に進んでパージ分補正係数ＦＨＯＳ＝１．０として今回の処理を終了する。
【００６５】
パージ許可条件にあるときにはステップ３に進みキャニスタモデルの内部変数である吸着量の較正処理が実行可能なタイミングであるか否かを判定する。パージ以外の要因による外乱が小さく、かつパージによる空燃比フィードバック補正係数αへの影響が比較的大きい場合、すなわち空燃比フィードバック補正係数αの中心値からの偏差がほぼ全てパージによる影響とみなすことができる場合に較正処理実行可能タイミングであると判断する。
【００６６】
具体的には、図５に示す、「定常条件」、「パージバルブ精度条件」、「パージ影響度条件」全てが成立した場合に較正処理実行可能タイミングであると判断し、これらの条件のうち一つでも成立していないと較正処理実行不可と判断する。この判定処理は図２中の較正タイミング判定部Ｂ１１における処理に対応する。
【００６７】
図５に示すように、「定常条件」としては、失火条件（エンジンが失火を起こしていないこと）、燃料カット条件（燃料カットを行っていないこと）、ブローバイ条件（ブローバイガスがないこと）、ＥＧＲ条件（排気還流率が一定であること）、吸気絞り弁開口面積及びエンジン回転速度条件（吸気絞り弁開口面積、エンジン回転速度が一定であること）、パージ率条件（パージ率が一定であること）といった条件を設定している。そして、これらの条件が全て成立し、パージ以外の外乱が小さいと判断した場合に定常条件が成立したと判断する。
【００６８】
また、「パージバルブ精度条件」としてはパージ流量条件（パージ流量が所定量以上であること）を設定している。パージ流量が少ないときはパージ流量の制御精度が落ち、後述する較正処理における演算精度が落ちることから、パージ流量が所定量よりも小さい場合にはパージバルブ精度条件が不成立であると判断する。
【００６９】
また、「パージ影響度条件」としては、パージ成立条件（パージを行っていること）、パージ濃度条件（パージガスの濃度が所定濃度より濃い、例えば、パージ率１％当たりのα変化量が１％以上）、パージ率条件（パージ率が所定値以上、例えば、パージ率が３０％以上）を設定している。これらの条件がすべて成立し、パージによる空燃比への影響が比較的大きいと判断した場合にパージ影響度条件が成立したと判断する。
【００７０】
このようにしてステップ１で較正処理実行可能タイミングであると判断すれば、ステップ４に進んで較正処理を実行する。この較正処理を図６のフローにより説明すると、較正処理は、空燃比フィードバック補正係数αの変化よりキャニスタ２４から脱離した燃料量を推定し、さらに推定した脱離量から逆演算によってキャニスタ２４に吸着していた燃料量を演算し、キャニスタモデルの内部変数である吸着量の値をこの逆演算によって求めた吸着量の値に較正するもので、この較正処理は、図２中の較正処理部Ｂ１２における処理に対応する。
【００７１】
ステップ３１ではパージ実行中かどうかを判定する。このようにパージ実行中かどうかを判定するのは、後に続くステップ３２、３３における演算処理がパージ実行中であることを前提としているので、パージ非実行時にこれらの処理を行ってしまうと正しい較正ができなくなるからである。したがって、パージ実行中でないときには本ルーチンを終了し較正処理は行わない。
【００７２】
パージ実行中であると判定したときにはステップ３２へと進み、吸入空気流量Ｑと吸気温度等から求まる吸入空気質量Ｑｇ［ｇ］、目標パージ率ＭＰＲ、パージ分補正係数ＦＨＯＳ、空燃比フィードバック補正係数αから、
Ｄｇ＝Ｋ１×（１−ＤＬＴ＋Ｋ２×ＭＰＲ）×Ｑｇ…（５）
ただし、Ｄｇ　：脱離量、
ＤＬＴ：全空燃比補正係数（＝α×ＦＨＯＳ）、
ＭＰＲ：目標パージ率、
Ｋ１　：係数（脱離燃料の性質により決まる定数）、
Ｋ２　：係数（空気の性質により決まる定数）、
Ｑｇ　：吸入空気重量、
の式により脱離量Ｄｇ［ｇ］を演算する。
【００７３】
この式は、１．０（中心値）からの全空燃比補正係数の偏差（右辺第１項及び第２項）、そのときの目標パージ率ＭＰＲ（右辺第３項）及び吸入空気質量Ｑｇより、キャニスタ４から脱離する燃料量Ｄｇを演算する式である。すなわち、空燃比フィードバック補正係数αとパージ分補正係数ＦＨＯＳとはいずれも１．０を中心値とする値であり、これらαとＦＨＯＳを掛け合わせた値である全空燃比補正係数ＤＬＴの中心値（１．０）からのずれをすべてパージによるものとみなして脱離量を推定している。
【００７４】
そして、ステップ３３では、ステップ３２で演算した脱離量Ｄｇから、
Ｙｒ＝ＫＤ×Ｄｇ＾（１／ｎ（Ｔ））…（６）
ただし、ｎ（Ｔ）：脱離指数、
ＫＤ　　：脱離係数、
Ｔ　　　：活性炭温度、
の式により、キャニスタ２４の吸着量Ｙｒ（質量）を演算する。（６）式は前述のキャニスタモデルを構成する式の一つである（２）式の逆演算である。
【００７５】
ステップ３４では、キャニスタモデルに基づき脱離量Ｄｇを演算する際に使用する吸着量Ｙを、ステップ３３で演算した吸着量Ｙｒに置き換える。これにより、キャニスタモデルで用いる吸着量の値を正しい値に較正することができ、以後の脱離量Ｄｇの演算精度を向上させることできる。
【００７６】
このようにして較正処理を終了したら図４に戻り、ステップ６ではキャニスタモデルを用いてキャニスタ４からの脱離量Ｄｇを演算する。この脱離量Ｄｇの演算については図７のフローにより説明する。この処理は図２の脱離量演算部Ｂ４における処理に相当する。
【００７７】
ステップ４１では、上記（１）式によりキャニスタに吸着されている燃料量の今回値Ｙを演算する。ただし、図６に示した較正処理を実行した場合は、（１）式の演算は行わず、あるいは（１）式で演算した値は無視し、以後の演算では上記較正処理によって演算した吸着量Ｙｒを吸着量Ｙとして用いる。
【００７８】
ステップ４２では吸着量Ｙから上記（２）式により基準パージ流量時の脱離量Ｄｇｋを演算し、ステップ４３ではこの基準脱離量Ｄｇｋとパージ流量ＰＱとから上記（３）式により脱離量Ｄｇを演算する。ステップ４４ではこの脱離量Ｄｇから上記（４）式により活性炭温度Ｔを演算する。
【００７９】
このようにして脱離量Ｄｇ及び活性炭温度Ｔの演算を終了したら図４に戻り、ステップ７では脱離量Ｄｇ、吸入空気質量Ｑｇのほか目標パージ率に基づいてもパージ分補正係数ＦＨＯＳを演算する。演算したパージ分補正係数ＦＨＯＳはエンジンコントローラ１１内の所定のデータ格納場所（図１１参照）に順次格納する。
【００８０】
キャニスタモデルにより算出した脱離量Ｄｇがエンジンに供給されることにより空燃比フィードバック補正係数αの変化を予測することができるが、この予測されるαがパージ分補正係数ＦＨＯＳである。従って、ＦＨＯＳはαと同じ単位であり、ＦＨＯＳの中心値もαと同じ１．０（＝１００％）である。例えば、キャニスタ２４からの脱離量Ｄｇ多くなってあるいは目標パージ率が大きくなってエンジンに供給される燃料量が多くなると、排気の空燃比は理論空燃比よりリッチ側にシフトし、これを元に戻そうと空燃比フィードバック補正係数αは１００％より小さくなる側に変化すると予想されることから、これに対応してパージ分補正係数ＦＨＯＳは１００％より小さくなる側に変化する。また、脱離量Ｄｇと目標パージ率が同じでも吸入空気質量Ｑｇが大きくなると、排気の空燃比は理論空燃比よりリーン側にシフトし、これを元に戻そうと空燃比フィードバック補正係数αは大きくなる側に変化すると予想されることから、これに対応してパージ分補正係数ＦＨＯＳは大きくなる側に変化する。
【００８１】
ステップ８ではパージ分補正係数ＦＨＯＳに対して無駄時間補正及びなまし処理で構成される遅れ補正を施す。無駄時間補正を行うのは、パージバルブ２７が開かれてからパージガスがエンジンのシリンダに到達するまでにパージガスの移行速度及びパージバルブ２７とエンジンのシリンダ間の距離に応じた遅れがあるからであり、また、なまし処理を行うのはキャニスタ２４から脱離した燃料がエンジンのシリンダに到達するまでに燃料の拡散があるからである。
【００８２】
この遅れ補正を図８のフローにより説明すると、遅れ補正は図２中の遅れ補正部Ｂ６における処理に対応する。
【００８３】
ステップ５１ではエアフローメータ１３の出力から吸入空気流量を演算し、ステップ５２、５３ではそれぞれ図９、図１０を内容とするテーブルを検索することにより無駄時間及びなまし係数を求める。吸入空気流量が多くなるほど吸気流速は速くなるので無駄時間に吸入空気流量が多くなるほど小さくなる値を、また、吸入空気流量が多くなって吸気流速が速くなると、脱離した燃料が拡散する速度も速くなることからなまし係数に吸入空気流量が多くなるほど大きくなる値を設定している。
【００８４】
ステップ５４では無駄時間からパージガスの移動速度相当値を演算する。このパージガス移動速度相当値はステップ２２で求めた無駄時間の逆数として演算する。
【００８５】
ステップ５５では、パージバルブ２７とエンジンのシリンダの間の距離に相当するエンジンコントローラ１１内のデータ格納場所（図１１参照）に格納されているパージ分補正係数ＦＨＯＳを読み込み、ステップ５６で前記パージガスの移動速度相当値分だけデータをシリンダ側にシフトする。ステップ５７ではデータのシフトにより上記データ格納場所からオーバーフローしたデータの平均値を求める。
【００８６】
ステップ５８では、ステップ５７で求めたオーバーフローデータの平均値に対して、ステップ５２で求めたなまし係数を用いてなまし処理を施し、なまし処理後の値を改めてパージ分補正係数ＦＨＯＳとする。なお、なまし処理は一般的な一次遅れ系によるなまし処理であり、なまし係数が小さくなるほどなましの度合いが大きくなる。
【００８７】
図１１は遅れ補正における無駄時間補正の概要を示した図であり、図中黒丸、白丸はそれぞれ上記データシフト前のデータ、データシフト後のデータを示す。
【００８８】
これに示すように、エンジンコントローラ１１のメモリにはパージバルブ２７からエンジンのシリンダ間の距離に相当するデータ格納場所が用意されており、キャニスタ２４から脱離する燃料量に応じて演算されるパージ分補正係数ＦＨＯＳが順次格納場所に格納される。上記無駄時間補正では、これらのデータがパージガスの移行速度相当分（無駄時間の逆数）だけシリンダ側にシフトされ、このデータシフトによりデータ格納場所からオーバーフローした分がシリンダ内に到達、供給されたパージガスに対応する補正係数とされる。そして、このオーバーフローしたデータの平均値に対してなまし処理を施した値が、後述する燃料噴射パルス幅Ｔｉの補正に用いられる。このように、無駄時間補正となまし処理を組み合わせることによりパージガスの到達遅れを正確に補正できる。
【００８９】
このようにして遅れ補正を終了したら図４に戻り、これで較正実行可能タイミングでの処理を終了する。
【００９０】
一方、ステップ３で較正処理実行不可と判断した場合にはステップ５に進み、過去に較正処理を実行したことがあるか否かを判定する。このような判定を行うのは、較正処理を一度も行ったことがない場合にキャニスタモデルを動作させるのに必要な初期値（初期吸着量）がまだ存在しないので、そのような場合にはキャニスタモデルに基づくパージ処理を行わないようにするためである。判定の結果、過去に較正処理を一度でも行っていればステップ６〜８の操作を実行し、これに対して一度も較正処理を行っていない場合にはステップ２の操作を行ったあと本ルーチンを終了する。
【００９１】
なお、一度も較正処理を行っていない場合にパージが行われないというわけでなく、後述するキャニスタモデルを用いないパージ処理（図１６、ブートアップ制御）によってパージ処理を実行する。
【００９２】
このようにして演算されたパージ分補正係数ＦＨＯＳを用い、図示しない燃料噴射パルス幅Ｔｉの演算ルーチンにおいて、
2004092450.tif 000003
ただし、Ｔｐ：基本噴射パルス幅［ｍｓｅｃ］、
Ｔｆｂｙａ：目標当量比［無名数］、
Ｋａｔｈｏｓ：過渡補正量［ｍｓｅｃ］、
ＦＨＯＳ：パージ分補正係数（遅れなまし処理後の値）、
α：空燃比フィードバック補正係数、
αｍ：空燃比学習値、
Ｔｓ：無効パルス幅［ｍｓｅｃ］、
の式により燃料噴射弁４に与える燃料噴射パルス幅Ｔｉ［ｍｓｅｃ］を演算する。この演算は図２中の基本噴射パルス幅演算部Ｂ７、空燃比フィードバック補正係数演算部８、燃料噴射パルス幅演算部Ｂ９における処理に対応する。
【００９３】
ここで、パージ分補正係数ＦＨＯＳで過渡補正量Ｋａｔｈｏｓを除いた部分（Ｔｐ×Ｔｆｂｙａ）を補正することにしているのは、パージにより供給される燃料は気体燃料であるため壁流補正を行う必要がないためである。
【００９４】
基本噴射パルス幅Ｔｐはほぼ理論空燃比の得られる噴射パルス幅で、吸入空気流量Ｑとエンジン回転速度Ｎから求めている。
【００９５】
目標当量比Ｔｆｂｙａは１．０を中心とする値で、冷却水温が低いときやエンジン始動直後には１．０より大きな値となる。エンジンの暖機完了後はＴｆｂｙａ＝１．０である。
【００９６】
空燃比フィードバック補正係数αは排気空燃比が理論空燃比を中心とするいわゆるウィンドウに収まるように空燃比センサ１５の出力に基づいて演算される値である。具体的には１００％を中心とする値で、定常偏差（ベース空燃比エラー）がないとした場合、検出された空燃比が理論空燃比よりもリッチ側にあるとき１００％よりも小さな値に、検出された空燃比が理論空燃比よりもリーン側にあるときに１００％よりも大きな値になる。
【００９７】
空燃比学習値αｍは空燃比フィードバック補正係数αに基づいて演算される値で、主に定常偏差を補償するために導入されている。
【００９８】
燃料噴射弁４から噴射された燃料の一部は吸気ポート壁や吸気弁傘裏部に壁流燃料を形成し、この壁流燃料は加速や減速といった過渡時に大きな応答遅れを有してシリンダに流入する。過渡補正量Ｋａｔｈｏｓはこの過渡時の壁流燃料の応答遅れ分を補償するための値である。
【００９９】
無効パルス幅Ｔｓは、燃料噴射弁４が所定のタイミングで噴射信号を受けてから実際に開弁するまでの作動遅れを補償するための値である。
【０１００】
また、（７）式はシーケンシャル噴射（４気筒ではエンジン２回転毎に１回、各気筒の点火順序に合わせて噴射）の場合の式であるため、数字の２が入っている。
【０１０１】
図１２、図１３は目標パージ率ＭＰＲを設定するためのもので、一定時間毎（例えば１０ｍｓｅｃ毎）に実行する。この演算は図２中の目標パージ率設定部Ｂ１における処理に対応する。
【０１０２】
ステップ６１では初回の較正処理後であるか否かを判定する。これは初回の較正処理の前後で目標パージ率の設定方法が異なるためである。初回の較正処理前であるときにはそのまま今回の処理を終了する。なお、初回の較正処理前の目標パージ率の設定については、後述するブートアップ制御のところで説明する。
【０１０３】
初回の較正処理後であるときにはステップ６２に進み、キャニスタモデルに基づき演算された脱離量Ｄｇ（図４ステップ６により演算されている）とパージ流量ＰＱとに基づきパージガスの空燃比（パージ空燃比）を演算する。ここで、パージ流量ＰＱは目標パージ率と吸入空気流量Ｑとの積であり、この場合の目標パージ率には前回値を用いる。
【０１０４】
このパージ空燃比に対しては次のような補正を施してもかまわない。すなわち、運転状態、例えばエンジン回転速度、エンジン負荷、吸入空気流量などのパラメータから、パージ空燃比の誤差を推定する。例えば、図１４を内容とするテーブルを検索することにより求める。図示のように吸入空気流量が少なくなるほど、またパージ率が小さくなるほどパージ空燃比誤差は大きくなる値である。あるいは、パージ空燃比誤差を、図１５に示すようにパージ空燃比とパージ空燃比誤差の関係を規定したテーブルを検索することにより求めるようにしてもよい。パージ空燃比誤差が求まったら、ステップ６２で求めたパージ空燃比をこの誤差に基づいて補正する。
【０１０５】
なお、パージ空燃比はＨＣセンサによって検出するようにしてもよいが、キャニスタモデルに基づき演算される脱離量等に基づき演算によって求めればパージ空燃比を安価かつ正確に演算することができる。
【０１０６】
ステップ６３ではこのようにして求めた（あるいは誤差補正後の）パージ空燃比に基づきパージ率変化量制限値を演算する。パージ率が変化すると排気空燃比が変化するが、このときの理論空燃比からの空燃比偏差が許容幅以内に収まるようにパージ率変化量制限値を演算する。理論空燃比からの空燃比偏差の許容幅は空燃比フィードバック制御により吸収可能な、排気エミッションを悪化させない幅に設定する。
【０１０７】
ステップ６４では、パージバルブ２７のサイズから規定されるパージ率上限値ＰＶＭＸを演算する。このようなパージ率上限値ＰＶＭＸを求めるのは、目標パージ率がパージバルブ２７を最大開度として得られるパージ率よりも大きな値に設定されてしまうと、パージ率と目標パージ率との不一致が生じ、ＦＨＯＳの演算の誤差が大きくなるため、理論空燃比からの空燃比偏差が増加する。これにより、排気エミッション悪化等の問題が生じるからである。具体的には、パージバルブ２７のサイズが一定の場合、パージバルブ２７の前後差圧が大きいほど流せるパージガスの流量も多くなることから、パージバルブ２７の前後差圧が大きいときにパージ率上限値ＰＶＭＸとして大きな値を演算する。
【０１０８】
ステップ６５では、燃料噴射弁４の性能に応じて決まる最小噴射パルス幅、目標パージ率の前回値、パージ分補正係数との関係から燃料噴射弁４の性能に基づくパージ率上限値ＴＩＭＮＭＸを演算する。パージ率が高くなるとパージによってエンジンに供給される燃料量が増加するので、燃料噴射弁４からの燃料噴射量がその分だけ減らされるように燃料噴射パルス幅を補正するが、燃料噴射弁４の噴射精度を確保するためには噴射パルス幅は所定の最小パルス幅よりも大きくなくてはならない。言い換えれば、燃料噴射パルス幅を最小パルス幅より大きくするためにはパージ率はある値よりも小さくしなくてはならない。このような理由から、燃料噴射弁４の噴射性能によってもパージ率の上限を規定する。
【０１０９】
また、ステップ６６では、現在の運転領域から想定しうる全ての運転領域を想定し、その中での最小パージ率を予測し、この最小パージ率とパージ率変化量制限値とからパージ率上限値ＰＲＭＮＭＸを演算する。例えば、アクセルペダルをあるだけ踏み込んでで加速した場合に目標パージ率はごく小さな値に設定するが、このアクセルペダルをあるだけ踏み込む直前に目標パージ率が大きな値に設定していると、パージ率の変化量が変化量制限値以下に制限されていることからパージ率を目標パージ率に追従させることができなくなる。この追従遅れは排気エミッション増大の原因等となることから、こうした追従遅れを生じないように想定しうる最小パージ率からもパージ率の上限を規定する必要がある。
【０１１０】
また、ステップ６７では、空燃比フィードバック補正係数αをモニターし、所定値以下であれば空燃比フィードバック補正係数αを所定値以上とするパージ率のうち最も大きな値をパージ率上限値ＡＬＰＭＸとして演算する。このような上限値ＡＬＰＭＸを設けるのは、空燃比フィードバック制御では空燃比フィードバック補正係数αは１００±２５％に収まるように制御されているが、空燃比フィードバック補正係数αが前記制限値近傍（例えば８０％）で制御されているような場合は、大量のパージを行っているとパージ以外の外乱を受けて前記制御範囲から外れやすくなるからである。
【０１１１】
ステップ６８では上記４つの上限値ＰＶＭＸ、ＴＩＭＮＭＸ、ＰＲＭＮＭＸ、ＡＬＰＭＸから最も小さい値を選択し、その値を最大パージ率ＰＲＭＡＸとして設定する。
【０１１２】
ステップ６９、７０では目標パージ率の前回値と最大パージ率ＰＲＭＡＸとを比較し、目標パージ率の前回値と最大パージ率ＰＲＭＡＸとが等しいときにはステップ６９よりステップ７３に進んで目標パージ率を前回値のままとし、目標パージ率の前回値が最大パージ率ＰＲＭＡＸよりも大きいときにはステップ６９、７０よりステップ７２に進んで目標パージ率をその前回値からパージ率変化量制限値を引いた値とし、目標パージ率の前回値が最大パージ率ＰＲＭＡＸよりも小さいときにはステップ６９、７０よりステップ７１に進んで目標パージ率をその前回値にパージ率変化量制限値を加えた値とする。
【０１１３】
図１３のステップ７４〜８１については本願発明により追加した部分であり、後述する。
【０１１４】
このようにして、目標パージ率は、最大パージ率ＰＲＭＡＸを目標としてパージ率変化量制限値の範囲内でこれに追従するように設定され、排気エミッションを悪化させずに大量のパージを行う上で最良のパージ率が設定される。また、最大パージ率ＰＲＭＡＸを設定する際に、物理的な制限、現在の運転領域等で決まる上限値ＰＶＭＸ、ＴＩＭＮＭＸ、ＡＬＰＭＸだけでなく、運転領域が変化した場合でも遅れなくその領域での最大パージ率に移行できるように決定される上限値ＰＲＭＮＭＸをも考慮しているので、運転条件が変化しても排気エミッションを悪化させずに大量パージを行う上で最良のパージ率を設定することができる。
【０１１５】
このようにして設定された目標パージ率はパージバルブへのデューティ比に変換され、パージバルブ２７に出力される。
【０１１６】
ところで、キャニスタモデルに基づくパージ処理（モデル規範パージ処理）は、エンジン始動後に較正処理が一度も行われておらずキャニスタモデルで用いる初期値（初期吸着量）が存在しない間は、実行することができない。しかし、エンジン始動後より大量パージを実現するためには、たとえ較正処理前であってもパージ処理を実行する必要がある。そこで初回の較正処理が実行されるまでは、キャニスタモデルに基づくパージ処理に代えて次に示す制御（図１６に示すブートアップ制御）により目標パージ率を設定し、設定された目標パージ率でパージ処理を実行する。なお、このブートアップ制御では、パージによる排気空燃比への影響は空燃比フィードバック補正係数αによって吸収し、燃料噴射パルス幅の補正は行わない（ＦＨＯＳ＝１．０）。
【０１１７】
図１６はブートアップ制御を行うためのもので、一定時間毎（例えば１０ｍｓｅｃ毎）に実行する。このブートアップ制御は図２中のブートアップ制御部Ｂ１４、切換スイッチＢ１５における処理に対応する。
【０１１８】
ステップ９１で吸入空気流量Ｑを読み込み、ステップ９２で初回の較正処理前であるか否かを判定する。初回の較正処理前である場合には、ステップ９３で積算パージ流量（パージを開始してからの総パージ流量）ＳＱＰとパージ配管容積（キャニスタ２４からパージバルブ２７までの配管の容積）を比較する。積算パージ流量ＳＱＰがパージ配管容積を超えているときにはステップ９４に進み、これに対して超えていないときにはステップ９７に進む。
【０１１９】
ステップ９７では目標パージ率ＭＰＲとして初期パージ率（１％以下の小さな値）を設定する。このような小さな値に設定するのは、積算パージ流量ＳＱＰがパージ配管容積に達してない場合はパージ開始前にパージ配管内のガスがエンジンに供給されることになるが、このパージ配管内のガスの空燃比が不明であり、このままステップ９４〜９６に示す目標パージ率設定処理を行うとエンジンの燃焼安定性悪化等の問題を生じるからである。
【０１２０】
つまり、パージ開始時にパージ配管中に存在する低濃度のパージガスが供給され、これによる理論空燃比からの空燃比偏差が小さいと、さらに大量のパージが可能であると判断されて大きな目標パージ率ＭＰＲが設定されるが、このようにして大きな目標パージ率ＭＰＲが設定されてしまうと、配管内の低濃度のガスが全て供給されて本来の高濃度のパージガスが供給されるときに大量の脱離燃料が突然供給されることになり、エンジンの燃焼安定性等を悪化させる原因となるからである。
【０１２１】
積算パージ流量ＳＱＰが配管容積を超えたらステップ９４に進み実空燃比フィードバック偏差と目標空燃比フィードバック偏差との差を演算する。
【０１２２】
ここで、目標空燃比フィードバック偏差とは、空燃比フィードバック補正係数の目標値ｔαと空燃比フィードバック補正係数の中心値（１００％）との偏差（＝｜ｔα−１００｜％）をいい、実空燃比フィードバック偏差とは実際の空燃比フィードバック補正係数αと空燃比フィードバック補正係数の中心値との偏差（＝｜α−１００｜％）をいう。例えば、パージによる理論空燃比からの空燃比偏差を空燃比フィードバック制御で十分吸収できる範囲内で大量のパージ流量を確保することを目的として空燃比フィードバック補正係数αの目標値ｔαが８０％に設定されると、目標空燃比フィードバック偏差は｜８０−１００｜＝２０％に設定される。
【０１２３】
ステップ９５では図１７を内容とするテーブルを検索することにより上記目標空燃比フィードバック偏差と実空燃比フィードバック偏差との差に応じたパージ率変化量を算出する。パージ率変化量は、目標空燃比フィードバック偏差と実空燃比フィードバック偏差の差の絶対値が大きくなるほど大きな値を設定して、目標値への収束性を高めるのであるが、目標空燃比フィードバック偏差と実空燃比フィードバック偏差の差の正負によって、偏差の絶対値が同じであっても異なる値を設定し、空燃比フィードバック偏差の差が負側にずれた場合の方が大きな値（絶対値）をパージ率変化量に設定する。
【０１２４】
このようにパージ率変化量を空燃比フィードバック偏差の正負で異なる特性とするのは、空燃比フィードバック偏差の差が負側にずれている場合には空燃比フィードバック補正係数αが目標とする８０％よりも小さな値になっており、逆の正側にずれている場合と比べてパージ以外の外乱によってエンジン安定性、排気エミッションの悪化を招きやすく、不利な状態あるといえるからである。つまり、パージ率変化量を空燃比フィードバック偏差の差の正負に応じて特性を変えるのは、エンジンの燃焼安定性及び排気エミッション悪化防止の観点から、制御点を速やかに安全側に復帰させるためである。
【０１２５】
以上のようにしてパージ率変化量を演算したらステップ９６に進み、本ルーチン前回実行時に求めた目標パージ率に対して、ステップ９５で演算したパージ率変化量を付加し、新たな目標パージ率ＭＰＲを演算する。
【０１２６】
ステップ９８ではこのようにして得た目標パージ率ＭＰＲと吸入空気流量Ｑからパージ流量ＰＱを求め、これをステップ９９において積算パージ流量の前回値であるＳＱＰｚに加算することにより積算パージ流量ＳＱＰを更新する。
【０１２７】
したがって、ステップ９４〜９６の処理によると、キャニスタ２４の吸着状態によらず、最適な目標パージ率ＭＰＲを設定することができ、また、想定以上の濃度のパージガスが供給された場合でも、それによる排気空燃比の変化を受けて目標パージ率ＭＰＲが適宜変更され、常に最適な目標パージ率ＭＰＲを設定することができる。
【０１２８】
一方、初回の較正処理後にはステップ９２よりステップ１００以降に進み、積算パージ流量ＳＱＰに基づいてパージ処理が終了したか否かを判定する。すなわち、ステップ１００でパージ終了判定フラグ（ゼロに初期設定）をみる。エンジン始動直後にはパージ終了判定フラグ＝０であるので、ステップ１０１に進み脱離量Ｄｇ（図４のステップ６で演算されている）と目標パージ率ＭＰＲ（図１２、図１３により演算されている）を読み込む。ステップ１０２では、この読み込んだ目標パージ率ＭＰＲと吸入空気流量Ｑとからパージ流量ＱＰを算出し、これをステップ１０３において積算パージ流量の前回値であるＳＱＰｚに加算することにより積算パージ流量ＳＱＰを更新する。
【０１２９】
ステップ１０４では初回の較正処理タイミングであるか否かを判定する。ここで、初回の較正処理タイミングはステップ９２で初回の較正処理前でなくなった初めてのタイミングであるので、このときだけステップ１０５に進み、ステップ１０２で演算されているパージ流量ＰＱとステップ１０１で読み込んでいる脱離量Ｄｇとに基づいてパージ空燃比を演算し、このパージ空燃比からステップ１０６において図１８を内容とするテーブルを検索することにより、パージ終了判定値ＳＬＳＱＰを演算する。
【０１３０】
ここで、パージ終了判定値ＳＬＳＱＰはキャニスタ２４からのパージガス中にほぼ脱離燃料がなくなったと思われる積算パージ流量である。図１８のように、この判定値ＳＬＳＱＰはパージ空燃比が大きくなるほど小さくなる。
【０１３１】
ステップ１０７ではこのパージ終了判定値ＳＬＳＱＰと積算パージ流量ＳＱＰとを比較する。積算パージ流量ＳＱＰがパージ終了判定値ＳＬＳＱＰ未満であればそのまま今回の処理を終了する。やがて積算パージ流量ＳＱＰがパージ終了判定値ＳＬＳＱＰ以上になればキャニスタ２４からのパージガス中にほぼ脱離燃料がなくなったと判断し、パージが終了したことを表すためステップ１０８に進んでパージ終了判定フラグ＝１とする。
【０１３２】
パージ終了判定フラグ＝１になると次回からはステップ９１、９２、１００と流れてもステップ１０１以降に進むことができないので、そのまま処理を終了する。
【０１３３】
次に、パージ処理を行うことによる本実施形態の全体的な作用について先に説明する。
【０１３４】
パージ処理時、目標パージ率ＭＰＲはエンジン燃焼安定性低下、排気エミッション増大を起こさない範囲でできる限り大きな値が設定され、この目標パージ率ＭＰＲが実現されるようにパージバルブ２７が開かれる（図１２ステップ６１〜７３）。
【０１３５】
パージ処理中はキャニスタ２４から脱離した燃料を含んだパージガスがエンジンに供給されることになるので、エンジンコントローラ１１ではキャニスタ２４から脱離してくる燃料量Ｄｇを推定し、この脱離量Ｄｇ、目標パージ率、吸入吸気質量Ｑｇに基づいて、パージ燃料によって生じる空燃比フィードバック補正係数αの変化を予測する値であるパージ分補正係数ＦＨＯＳを演算し（図４ステップ１、３、４、６、７、８またはステップ１、３、５、６、７、８）、このパージ分補正係数ＦＨＯＳにより基本噴射パルス幅Ｔｐを補正することで、パージによる理論空燃比からの空燃比偏差が小さなものに抑えられる。
【０１３６】
このときキャニスタ２４からの脱離量Ｄｇは、（１）式から（４）式で表されるキャニスタモデルを用いて推定され、脱離量Ｄｇは短時間でかつ正確に推定される。ここで、キャニスタモデルに基づき演算される脱離量Ｄｇ等は誤差を含んでおり、キャニスタモデルの動作時間が長くなるにつれこの誤差が積算され大きくなるので、エンジンコントローラ１１は空燃比フィードバック補正係数αの変化よりキャニスタ２４から脱離された燃料量を推定し、この推定した脱離量から逆演した吸着量Ｙｒでキャニスタモデルの内部変数である吸着量の値を較正する。この較正処理は、パージ以外の外乱が小さく空燃比フィードバック係数αの変化をほぼ全てパージによるものとみなすことができ、かつ、パージによる排気空燃比への影響が比較的大きいときに実行される。
【０１３７】
また、パージバルブ２７が開かれてから脱離燃料がエンジンのシリンダに到達するまでに遅れがあり、また到達するまでに燃料の拡散もあるので、この遅れとなまし作用を考慮して上記のパージ分補正係数ＦＨＯＳに対して遅れ補正が施されている。
【０１３８】
また、上記キャニスタモデルを用いたパージ処理（モデル規範パージ処理）は、較正処理によって吸着量の初期値が求まるまではその効果を発揮することができないが、キャニスタモデルの初期値が演算されるまでは目標空燃比フィードバック偏差と実空燃比フィードバック偏差との差に応じて目標パージ率が設定され、この目標パージ率が実現されるようにパージバルブ２７が開かれる。これにより、較正処理によって初期値が演算される前であってもパージ処理を行うことができ、全領域で効果的なパージを行うことができる。
【０１３９】
これで先願装置（特願２００１−７１５６２号参照）におけるパージ処理と同様の部分の説明を終了し、次には本願発明で追加した図１３、図１９、図２０、図２２、図２４、図２５、図２６に示すフローチャートを説明する。
【０１４０】
まず図１３においてステップ７４では目標パージ率を変数ＭＰＲ０に移す。
【０１４１】
ステップ７５ではパージ用リミッタ判定フラグをみる。このパージ用リミッタ判定フラグにはパージ用下限リミッタ判定フラグとパージ用上限リミッタ判定フラグの２つがあり、これら２つのフラグの設定については図１９、図２０のフローより説明する。
【０１４２】
図１９はパージ用下限リミッタ判定フラグを、また図２０はパージ用上限リミッタ判定フラグを設定するためのもので、いずれも一定時間毎（例えば１０ｍｓｅｃ毎）に実行する。
【０１４３】
空燃比フィードバック補正係数αには、従来よりαによる制御範囲を限定するため図２７に示したように、αの中心値（１００％）を中心として上下に第１リミッタ±ＬＭＴ１（例えば±２５％）を設けている。すなわち、αの第１上限リミッタは１２５％（＝１００＋ＬＭＴ１）、αの第１下限リミッタは７５％（＝１００−ＬＭＴ１）であり、演算されたαが、αの第１上限リミッタである１２５％を超えるときには、このαを１２５％に制限し、この逆に演算されたαが、αの第１下限リミッタである７５％を下回るときには、このαを７５％に制限している。
【０１４４】
本実施形態では、この第１リミッタ±ＬＭＴ１とは別にパージ用にこれより小さい第２リミッタ±ＬＭＴ２を新たに導入している。すなわち、第２下限リミッタは１００−ＬＭＴ２、第２上限リミッタは１００＋ＬＭＴ２であり、図２７において、αの中心値である１００％と第１下限リミッタである１００−ＬＭＴ１との間に、１００−ＬＭＴ１からある程度の余裕代を持たせた位置に第２下限リミッタである１００−ＬＭＴ２がくるようにしている。すなわち、１００−ＬＭ２（第２下限リミッタ）と１００−ＬＭＴ１（第１下限リミッタ）の間をαの補正代として残し、パージ以外の外乱があった場合に、この残したαの補正代により理論空燃比からの空燃比偏差を小さなものとする。
【０１４５】
そして、αが第２下限リミッタ以下の領域にあるか否かあるいは第２上限リミッタ以上の領域にあるか否かを示すため、フラグを設定する。すなわち、演算されたαが第２下限リミッタである１００−ＬＭＴ２以下になるとパージ用下限リミッタ設定フラグ＝１とし、この逆に演算されたαが第２上限リミッタである１００＋ＬＭＴ２以上となるとパージ用上限リミッタ設定フラグ＝１とする。
【０１４６】
ただし、第２下限リミッタ、第２上限リミッタにはそれぞれヒステリシスＨＹＳを設けている。これは、αが各リミッタ付近にいることにより各フラグがゼロとなったり１となったりを頻繁に繰り返すことを防止するためである。
【０１４７】
具体的に図１９から説明すると、ステップ１１１では空燃比フィードバック制御中であるか否かを判定する。空燃比フィードバック制御中でなければそのまま今回の処理を終了する。
【０１４８】
空燃比フィードバック制御中であるときには、ステップ１１２に進んで空燃比フィードバック補正係数αを読み込む。
【０１４９】
このαは図示しないフローにおいて空燃比センサ１５に基づいて演算している。ここでは、簡単のため比例動作の場合で説明すると、空燃比センサ１５により検出される実際の排気空燃比と理論空燃比との偏差を求め、この偏差に比例ゲインを乗算することにより求めればよい。このときαの波形は、実際の排気空燃比が理論空燃比よりリッチ側にあるあいだは、実際の排気空燃比を理論空燃比へと戻すため制御周期毎にαが階段状に小さくなってゆき（図２７参照）、この逆に実際の排気空燃比が理論空燃比よりリーン側にあるあいだは、実際の空燃比を理論空燃比へと戻すため制御周期毎にαが階段状に大きくなってゆく。
【０１５０】
ステップ１１３ではパージ用下限リミッタ判定フラグ（エンジン始動時にゼロに初期設定）をみる。始動直後であればパージ用下限リミッタ判定フラグ＝０であることよりステップ１１４に進みαとパージ用下限リミッタである１００−ＬＭ２とを比較する。αが１００−ＬＭＴ２を超えているときにはそのまま今回の処理を終了し、αが１００−ＬＭＴ２以下になると、ステップ１１５に進んでパージ用下限リミッタ判定フラグ＝１として今回の処理を終了する。
【０１５１】
このパージ用下限リミッタ判定フラグ＝１により次回にはステップ１１３よりステップ１１６に進みαと１００−ＬＭ２＋ＨＹＳ（ＨＹＳは正の一定値）を比較する。αが１００−ＬＭ２＋ＨＹＳ以下であればステップ１１５に進んでパージ用下限リミッタ判定フラグ＝１のままとし、αが１００−ＬＭ２＋ＨＹＳを超えるとステップ１１７に進んでパージ用下限リミッタ判定フラグ＝０とする。
【０１５２】
図２０に移ると、ステップ１２１、１２２は図１９のステップ１１１、１１２と同様である。
【０１５３】
ステップ１２３ではαのパージ用上限リミッタ判定フラグ（エンジン始動時にゼロに初期設定）をみる。始動直後であればパージ用上限リミッタ判定フラグ＝０であることよりステップ１２４に進みαとパージ用上限リミッタである１００＋ＬＭ２とを比較する。αが１００＋ＬＭＴ２未満であるときにはそのまま今回の処理を終了し、αが１００＋ＬＭＴ２以上になると、ステップ１２５に進んでパージ用上限リミッタ判定フラグ＝１として今回の処理を終了する。
【０１５４】
このパージ用上限リミッタ判定フラグ＝１により次回にはステップ１２３よりステップ１２６に進みαと１００＋ＬＭ２−ＨＹＳ（ＨＹＳは正の一定値）を比較する。αが１００＋ＬＭ２−ＨＹＳ以上であれステップ１２５に進んでパージ用上限リミッタ判定フラグ＝１のままとし、αが１００＋ＬＭ２−ＨＹＳ未満になるとステップ１２７に進んでパージ用上限リミッタ判定フラグ＝０とする。
【０１５５】
図１３のステップ７５に戻り、パージ用リミッタ判定フラグ（パージ用下限リミッタ判定フラグまたはパージ用上限リミッタ判定フラグ）＝０であるときにはステップ７６に進みＭＰＲ０の値をそのまま目標パージ率ＭＰＲとして設定する。
【０１５６】
これに対してパージ用リミッタ判定フラグ＝１であるときにはステップ７７に進みパージ率低下処理を行う。
【０１５７】
このパージ率低下処理は図２１に示したように、例えばパージ用下限リミッタ判定フラグが０から１へと切換わったタイミングでの目標パージ率（図１２のステップ６１〜７３で演算されている）を初期値として所定時間Δｔ当たり所定値Δずつ減らしてゆく制御である。ただし、目標パージ率がゼロ未満になったときにはゼロに制限する。
【０１５８】
図２２（図１３ステップ７７のサブルーチン）はこのパージ率低下処理を行うためのものである。
【０１５９】
図２２において、ステップ１３１、１３２では今回と前回のパージ用リミッタ判定フラグをみる。今回にパージ用リミッタ判定フラグ＝１かつ前回にパージ用リミッタ判定フラグ＝０（つまりパージ用リミッタ判定フラグが０より１へと切換わった直後）のときステップ１３３に進みそのときのＭＰＲ０の値を変数ＭＰＲ１に移す。これは、パージ用リミッタ判定フラグ０より１へと切換わったタイミングでの目標パージ率を初期値としてサンプリングするためである。
【０１６０】
ステップ１３４ではタイマ１をいったんゼロにクリアした後、ステップ１３５でインクリメントを開始する。
【０１６１】
今回、前回ともパージ用リミッタ判定フラグ＝１であるときにはステップ１３３、１３４を飛ばしてステップ１３５の操作を実行する。
【０１６２】
ステップ１３６ではタイマ１値と所定時間Δｔを比較する。タイマ１値が所定時間Δｔ以上になると、ステップ１３７、１３８に進み、タイマ１値をゼロにクリアすると共に、
ＭＰＲ１＝ＭＰＲ１ｚ−Δ…（８）
ただし、ＭＰＲ１ｚ：ＭＰＲ１の前回値、
の式により変数ＭＰＲ１を所定値Δ（正の値）だけ小さくする。タイマ１値が所定時間Δｔ未満のときにはステップ１３９に進み現在のＭＰＲ１を維持する。
【０１６３】
ステップ１３６〜１３９の操作により、ＭＰＲ１は所定時間Δｔが経過する毎に所定値Δずつ小さくなってゆく。
【０１６４】
ここで、パージ率を急激に低下させると排気空燃比が変化し運転性や排気エミッションに影響するので、そうならないように所定時間Δｔと所定値Δの値は目標パージ率を設定する際のパージ率変化量制限値を用いて、またはこれに基づいて定めればよい。
【０１６５】
ステップ１４０ではＭＰＲ１とゼロを比較する。ＭＰＲ１がゼロ以上であればステップ１４２に進みＭＰＲ１を目標パージ率ＭＰＲとして、これに対してＭＰＲ１が負の値になったときにはステップ１４１に進みゼロを目標パージ率ＭＰＲとして設定する。
【０１６６】
このようにしてパージ率低下処理を終了したら図１３に戻り、ステップ７８でパージ終了判定フラグ（図１６により設定されている）をみる。パージ終了判定フラグ＝１のときには、空燃比学習を開始するためステップ７９に進み空燃比学習用のパージ率を目標パージ率ＭＰＲに入れる。これによって空燃比学習を開始するときには図２３に示したように目標パージ率ＭＰＲが小さくなる。
【０１６７】
一方、パージ終了判定フラグ＝０のときにはステップ８０に進みベース空燃比エラー判定フラグをみる。このベース空燃比エラー判定フラグの設定については図２４のフローにより説明する。
【０１６８】
図２４はベース空燃比エラー判定フラグを設定するためのもので、一定時間毎（例えば１００ｍｓｅｃ毎）に実行する。
【０１６９】
ステップ１５１ではベース空燃比エラー判定フラグ（始動時にゼロに初期設定）をみる。始動直後にはベース空燃比エラー判定フラグ＝０であるので、ステップ１５２以降に進む。
【０１７０】
ステップ１５２〜１５４はベース空燃比エラー判定のための条件が成立しているか否かを判定する部分である。パージ実行中かつ吸入空気流量Ｑが大きい領域であるときかつ実パージ率＝０％ときにはベース空燃比エラー判定のための条件が成立したと判断しステップ１５５に進んでタイマ２（ゼロに初期設定）をインクリメントする。このタイマ２はパージ中のパージ率低下処理によりパージ率がゼロになったタイミングからの経過時間を計測するためのものである。
【０１７１】
吸入空気流量Ｑが大きい領域であることをベース空燃比エラー判定のための条件とするのは、Ｑが小さいときにはブローバイガスによる排気空燃比への影響が大きいので、これを避けるためである。
【０１７２】
ステップ１５４では実際のパージ率をパージバルブ２７に与えるデューティ比からみているが実パージ率に代えて目標パージ率を用いることもできる。
【０１７３】
ステップ１５６ではタイマ２値と所定値（一定値）を比較する。タイマ２値が所定値以上になるとステップ１５７に進みベース空燃比エラー判定フラグ＝１とする。
【０１７４】
なお、ステップ１５２〜１５４での条件が総て成立し、ステップ１５５でのタイマ２のインクリメントを開始していても、その後に例えば吸入空気流量Ｑが小さくなると、ステップ１５８に進みタイマ２をゼロにクリアする。すなわち、ベース空燃比エラーであると判定するためにはベース空燃比エラー判定のための条件が、途中でとぎれることなく連続して成立している必要がある。
【０１７５】
図１３のステップ８０に戻り、ベース空燃比エラー判定フラグ＝１であるときにはステップ８１に進み目標パージ率＝０とする。ベース空燃比エラーが生じているときには即座に空燃比学習を開始させるが、目標パージ率＝０とするのは、空燃比学習値の更新を精度良く行わせるにはパージカットの状態であることが必要だからである。
【０１７６】
図２５は空燃比学習開始フラグを設定するためのもので、一定時間毎（例えば１０ｍｓｅｃ毎）に実行する。
【０１７７】
ステップ１７１では空燃比学習開始フラグ（ゼロに初期設定）をみる。エンジン始動直後であれば空燃比学習開始フラグ＝０であることよりステップ１７２、１７３に進み、パージ終了判定フラグ（図１６により設定されている）、ベース空燃比エラー判定フラグ（図２４により設定されている）をみる。
【０１７８】
パージ終了判定フラグ＝１であるときと、パージ終了判定フラグ＝０であってもベース空燃比エラー判定フラグ＝１であるときとには空燃比学習を開始させるためステップ１７４に進み空燃比学習開始フラグ＝１とする。
【０１７９】
図２６は空燃比学習値の更新を行うためのもので、所定のタイミング毎（例えば所定のエンジン回転速度の間隔毎）に実行する。
【０１８０】
ステップ１８１では空燃比学習開始フラグをみる。空燃比学習開始フラグ＝１であるときにはステップ１８２に進み空燃比学習許可条件が成立しているか否かを判定する。空燃比学習許可条件は従来と同様である。例えば空燃比フィードバック制御中であることや空燃比フィードバック制御に関わる空燃比センサ１５等に故障がないことなどを総て満足するときに空燃比学習許可条件が成立していると判断し、ステップ１８３に進んで空燃比学習値を更新する。この空燃比学習値の更新方法には次式によって更新する方法がある。
【０１８１】
αｍ＝αｍｚ＋（α−１００）×Ｍ…（９）
ただし、αｍ　：更新後の空燃比学習値、
αｍｚ：更新前の空燃比学習値、
Ｍ　　：学習割合（一定値）、
なお、実施形態は空燃比センサ１５に基づく空燃比フィードバック制御であるが、これに代えてＯ２センサに基づく空燃比フィードバック制御であってもよく、この場合には、Ｏ２センサの反転タイミングを空燃比学習値の更新タイミングとすればよい。
【０１８２】
ここで、本実施形態のパージ実行中の作用を図２７、図２８の波形図を参照しながら説明する。
【０１８３】
図２７はベース空燃比エラーがない状態でのエンジン始動後において、初回の較正処理が行われた後のｔ１でアクセルペダルを踏み込み、その踏み込み量をしばらく一定に保ち、ｔ２でアクセルペダルを戻した場合をモデル的に示している。ただし、空燃比学習は外した状態で考えている。
【０１８４】
ｔ１でのアクセルペダルの踏み込みにより最大パージ率がステップ的に大きくなり、この最大パージ率に対して目標パージ率がパージ率変化量制限値により規制された所定のスピードで近づいてゆく。目標パージ率がｔ１以前より大きくなると、それだけパージガス燃料が多くなり、排気空燃比が理論空燃比よりリッチ側に傾くので、これを見越してパージ分補正係数ＦＨＯＳがｔ１より階段状に小さくなってゆくはずであるが（細線参照）、実際にはＦＨＯＳはｔ１より階段状に大きくなっており（太線参照）、このことは初回の較正エラーに起因してＦＨＯＳが正しく演算されていないことを示している。
【０１８５】
この正しくないＦＨＯＳにより（７）式の燃料噴射パルス幅Ｔｉが増量されるので、排気空燃比はリッチ側に傾き、このリッチ側に傾いた排気空燃比を理論空燃比に戻そうと空燃比フィードバック補正係数αがｔ１より階段状に小さくなってゆく。
【０１８６】
そして、小さくなってゆくαが第２下限リミッタである１００−ＬＭＴ２の付近まで小さくなった後には、１００−ＬＭＴ２の付近で周期的に変化している。このことは排気空燃比が理論空燃比の付近に保たれていることを意味する。すなわち、ＦＨＯＳが正しく演算されていなくても、最終的にはαにより排気空燃比が理論空燃比付近へと制御されている。
【０１８７】
その理由を具体的に説明すると、αが１００−ＬＭＴ２を横切って小さくなったタイミングでパージ用下限リミッタ判定フラグが０から１に切換わる（図１９ステップ１１３、１１４、１１５）。パージ用下限リミッタ判定フラグ＝１になるとパージ率低下処理が働いて目標パージ率が減らされる（図１３ステップ７５、７７、図２２）と共にＦＨＯＳも小さくなる。排気空燃比がリーン側に向かうのでαが今度は１００−ＬＭＴ２を横切って大きくなる側に変化する。そして、１００−ＬＭＴ２を越えていても１００−ＬＭＴ２＋ＨＹＳ以下にある間は、パージ用下限リミッタ判定フラグ＝１のままであり（図１９ステップ１１３、１１６、１１５）、αが１００−ＬＭＴ２＋ＨＹＳより大きくなったタイミングでパージ用下限リミッタ判定フラグが１から０に切換わる（図１９ステップ１１３、１１６、１１７）。パージ用下限リミッタ判定フラグ＝０になるとパージ率低下処理が中止され、パージ率低下処理前の目標パージ率へと戻される（図１３ステップ７５、７６）。すると、排気空燃比がリッチ側に向かうのでαが再び１００−ＬＭＴ２を横切って小さくなり、パージ用下限リミッタ判定フラグが０から１に切換わる（図１９ステップ１１３、１１４、１１５）。パージ用下限リミッタ判定フラグ＝１になるとパージ率低下処理が働いて目標パージ率が減らされる図１３ステップ７５、７７、図２２）と共にＦＨＯＳも小さくなる。。
【０１８８】
このような繰り返しにより、αが第２下限リミッタである１００−ＬＭＴ２の付近で周期的に変化しているわけである。
【０１８９】
これにより次のメリットが得られている。
【０１９０】
（１）較正エラーに起因してパージ分補正係数ＦＨＯＳが正しく演算されていなくても、空燃比フィードバック補正係数αにより理論空燃比からの空燃比偏差を小さなものにできている。
【０１９１】
（２）この場合に、空燃比フィードバック補正係数αには第２下限リミッタでる１００−ＬＭＴ２と第１下限リミッタである１００−ＬＭＴ１までの間に補正代を残しており、この状態でパージ以外の外乱があっても、残っている補正代を用いて理論空燃比からの空燃比偏差を小さなものにすることが可能である。
【０１９２】
すなわち、本実施形態（請求項１に記載の発明）によれば、空燃比フィードバック補正係数αの中心値と、もともとある空燃比フィードバック補正係数αに対するリミッタ（第１リミッタ）±ＬＭＴ１との間にパージ用のリミッタとして第２リミッタ±ＬＭＴ２を設け、空燃比フィードバック補正係数αが、中心値の側からこの第２リミッタを横切って外れた場合に目標パージ率を徐々に低下させる処理を行うので、パージによる排気空燃比への影響が低下すると共にパージ分補正係数ＦＨＯＳも小さくなるため、空燃比フィードバック補正係数αが第２リミッタを横切って第１リミッタに移動するまで何もしない場合より空燃比フィードバック補正係数αの補正代が拡大することから、
キャニスタモデルの較正エラーに伴いパージ分補正係数ＦＨＯＳにエラーが生じていても、第２リミッタ±ＬＭＴ２から第１リミッタ±ＬＭＴ１までの間を空燃比フィードバック補正係数の補正代として残しつつ理論空燃比からの空燃比偏差を小さなものにすることができ、残した補正代でパージ以外の外乱に対するロバスト性を確保することができる。
【０１９３】
一方、図２８は吸入空気流量Ｑが大きな領域にあってベース空燃比エラーが判定される場合をモデル的に示している。ただし、この場合も空燃比学習は外した状態で考えている。
【０１９４】
ここで、ベース空燃比とはパージなど外乱のない場合の空燃比ことで、燃料噴射弁４の目詰まりやエアフローメータ１３の流量特性の異常などによりベース空燃比エラーが生じ得る。例えば、エアフローメータ１３が実際の流量を外れて多めの出力をするようになると、このエアフローメータ出力を用いて演算される基本噴射パルス幅Ｔｐは、実際の吸入空気流量に対するよりも大きな値になる。このため、排気空燃比が理論空燃比を外れてリッチ側に傾き、このリッチ側に傾いた排気空燃比を理論空燃比に戻そうと空燃比フィードバック補正係数αが小さくなり、図示のように、αが第２下限リミッタである１００−ＬＭＴ２と第１下限リミッタである１００−ＬＭＴ１との間で周期的に変化している。
【０１９５】
なお、図示しないが、αのこの周期的変化はｔ３以前においても継続しており、ｔ３以前での作用を説明すると、αが第２下限リミッタである１００−ＬＭＴ２を横切って小さくなったタイミングでパージ用下限リミッタ判定フラグが０から１へと切換わり（図１９ステップ１１３、１１４、１１５）、ベース空燃比エラーが大きいためにそれ以後、パージ用下限リミッタ判定フラグ＝１のままが継続している。パージ用下限リミッタ判定フラグ＝１であればパージ率低下処理が働いて目標パージ率が所定時間Δｔ当たり所定値Δずつ低下してゆき、やがてゼロになる（図１３ステップ７５、７７、図２２）。目標パージ率＝０になると、タイマ２のインクリメントによりタイマ２値が徐々に増えてゆく（図２４ステップ１５１〜１５５）。そして、タイマ２のインクリメントが開始されてすぐのタイミングがｔ３であり、このときタイマ２値はまだ所定値に達していない。
【０１９６】
図２８に示すｔ３以降に移ると、タイマ２値のインクリメントはｔ３からも続きｔ４を経過しても続く。そしてタイマ２値が所定値と一致するｔ５のタイミングでベース空燃比エラー判定フラグが０から１へと切換わる（図２４ステップ１５６、１５７）。
【０１９７】
すなわち、パージ実行中に大きなベース空燃比エラーの存在により排気空燃比が理論空燃比から外れてリッチ側になるので、これを理論空燃比に戻そうと空燃比フィードバック補正係数αを第１下限リミッタである７５％まで移動させたのでは、空燃比フィードバック補正係数αの補正代がなくなり、この状態におけるパージ以外の外乱に対するロバスト性が低下してしまうのであるが、本実施形態（請求項５に記載の発明）によれば、演算される空燃比フィードバック補正係数αが第２下限リミッタである１００−ＬＭＴ２を含んで中心値（１００％）の側に収まらないとき、パージ率低下処理により目標パージ率がゼロに向かって低下してゆき、同時にＦＨＯＳも小さくなり、これによってパージによる排気空燃比への影響が小さくなるので、空燃比フィードバック補正係数αに第１下限リミッタである７５％までの補正代が残される。
【０１９８】
そして、パージ率低下処理を続けて目標パージ率がゼロになると、パージによる排気空燃比への影響を完全に排除した状態となり、この状態ではベース空燃比エラーを精度良く検出することが可能となる。
【０１９９】
このように本実施形態（請求項５に記載の発明）によれば、第２リミッタから第１リミッタまでの間を空燃比フィードバック補正係数αの補正代として残しつつベース空燃比エラーの精度の良い検出を可能とし、残したαの補正代でパージ以外の外乱に対するロバスト性を確保することができる。また、ベース空燃比エラーとパージ処理とが重なった場合の排気エミッションの悪化を防止できてもいる。
【０２００】
また、大きなベース空燃比エラーがあると、空燃比フィードバック補正係数αの追従遅れや空燃比フィードバック補正係数αの第１リミッタへの貼り付き等により排気エミッションの悪化要因となるが、本実施形態（請求項６に記載の発明）によれば、ベース空燃比エラーがあると判定したとき、パージカットを行い（図１３ステップ８０、８１）、即座に空燃比学習を開始させるので（図２５ステップ１７３、１７４）、ベース空燃比エラー状態を速やかに解消できる。また、エンジン始動後にパージ処理が終了するまで空燃比学習を開始しないようにしている場合に比べて学習開始までの時間を短縮できる。
【０２０１】
また、実施形態では図示しなかったが、空燃比学習値を燃料系システムの故障診断に用いているものがある。このものでは、ベース空燃比エラーが生じている場合、その原因として燃料系システムに故障が生じている可能性がある。従ってエンジン始動後に空燃比学習の開始が遅れると燃料系システムの故障診断も遅れることとなる。このとき本実施形態（請求項７に記載の発明）を適用し、ベース空燃比エラーであると判定したとき、速やかに空燃比学習を開始させることで、、燃料系システムに故障があった場合でも故障診断を早期に行うことができる。
【０２０２】
また、吸入空気流量Ｑが小さい領域では、ブローバイガスの影響で理論空燃比からの空燃比偏差が大きくなることがあり、このとき誤まってベース空燃比エラーであると判定されてしまうのであるが、本実施形態（請求項９に記載の発明）によれば、ベース空燃比エラーであるか否かを判定する運転領域を、ブローバイガスの影響が小さくなる吸入空気流量の大きい領域に限定するので、ブローバイガスの影響を受けた場合に誤まってベース空燃比エラーであると判定することを防止できる。
【０２０３】
さらに、キャニスタ２４からの燃料の脱離特性は、キャニスタ内の燃料吸着剤（活性炭等）の温度の影響を受けるので、脱離量演算式は吸着剤温度と脱離量の関係を考慮した式とする（請求項１１に記載の発明）。脱離量が多い領域では脱離量の演算誤差が排気空燃比に及ぼす影響が大きく特に高い演算精度が要求され、しかも、キャニスタ２４からの燃料の脱離現象が吸熱反応であるため、大量の脱離が行われるときはキャニスタ内の吸着剤温度が低下し脱離特性も変化する。そのため、吸着剤温度と脱離量の関係を考慮しないと脱離量が多い領域では脱離量の演算精度が低下するが、吸着剤温度も考慮に入れて脱離量を演算するようにキャニスタモデルを構成すれば、脱離量の演算精度の悪化を抑え、演算精度の悪化に起因する排気エミッション悪化等を防止できる。
【０２０４】
なお、吸着燃料量とパージ率と吸着剤温度とに基づき脱離燃料量を演算する脱離量演算式としては、フロイントリッヒ（Ｆｒｅｕｎｄｌｉｃｈ）の式をベースにキャニスタ２４の脱離現象に応用した式を用いることができる。また、吸着剤温度はキャニスタ２４からの燃料の脱離量に基づき吸着剤温度の降下量を求めることによって求めることができる（請求項１２に記載の発明）。
【０２０５】
また、本実施形態（請求項１３に記載の発明）によれば、キャニスタモデルの内部変数であるキャニスタ吸着量の較正処理も行われる。キャニスタモデルは近似モデルであり、それによって演算される値は幾らかの誤差を含んだものとなり、また、キャニスタモデルは前回値を用いて新たな値を演算するため、その動作時間が長くなるにつれ誤差が積分され大きくなるが、このような較正処理を行うことで誤差を適宜修正し、高い演算精度を保つことができる。なお、この較正処理は、理論空燃比からの空燃比偏差から推定される脱離量から吸着量を逆算し、内部変数の吸着量をこの逆算された吸着量で較正するというものであり、特殊なシーケンスを踏む必要が無く、パージ率を落とす必要もない。なお、吸着量はキャニスタモデルにおける脱離量演算式の逆演算によって求めることができる（請求項１４に記載の発明）。
【０２０６】
上記較正処理はパージ以外の外乱による理論空燃比からの空燃比偏差が生じないときに行われ、理論空燃比からの空燃比偏差を全てパージによるものとみなしてキャニスタからの燃料の脱離量を推定し、この推定脱離量から逆算したキャニスタ２４の実吸着量に基づき較正が行われるので、較正処理の精度が確保できる（請求項１５に記載の発明）。
【０２０７】
また、本実施形態（請求項１６、１７に記載の発明）によれば、脱離量の演算精度を高めるべく、較正処理はパージによる理論空燃比からの空燃比偏差が比較的大きなとき（パージ率が高く、パージ空燃比が濃いとき）に行われる。運転領域によっては十分な較正処理の演算精度が得られない場合があるが、このように十分な精度が得られる領域のみで較正処理を実行することにより、較正処理の精度を向上させ、キャニスタモデルの精度をさらに向上させることができる。
【０２０８】
以上、本発明の実施の形態について説明したが、上記実施形態の構成は本発明が適用される構成の一例を示したものであり、本発明の範囲を上記構成に限定するものではない。上述した通り、上記実施形態においては、キャニスタモデルによるパージ処理が可能となるまでは、図１６に示したパージ処理が補助的に実行されるが、図１６に示したパージ処理を継続して用いるようにしてもよい。
【０２０９】
また、請求項５に記載の発明は、先願装置のパージ処理を行うものに限らず、始動直後より通常のパージ処理を行うものにも適用があることはいうまでもない。
【図面の簡単な説明】
【図１】本発明に係る蒸発燃料処理装置の全体構成図。
【図２】エンジンコントローラにおけるパージ処理の概要を示したブロック図。
【図３】キャニスタモデルの構成を示したブロック図。
【図４】パージ分補正係数の演算を説明するためのフローチャート。
【図５】較正処理可能条件を示したフローチャート。
【図６】較正処理を説明するためのフローチャート。
【図７】キャニスタモデルに基づく脱離量の演算を説明するためのフローチャート。
【図８】遅れ補正を説明するためのフローチャート。
【図９】吸入空気流量と無駄時間の関係を示す特性図。
【図１０】吸入空気流量となまし係数の関係を示す特性図。
【図１１】遅れ補正における無駄時間処理の概要を示した図。
【図１２】目標パージ率の設定を説明するためのフローチャート。
【図１３】目標パージ率の設定を説明するためのフローチャート。
【図１４】吸入空気流量及びパージ率に対するパージ空燃比誤差の関係を示す特性図。
【図１５】パージ空燃比に対するパージ空燃比誤差の関係を示す特性図。
【図１６】ブートアップ制御を説明するためのフローチャート。
【図１７】空燃比フィードバック偏差の差（＝目標空燃比フィードバック偏差−実空燃比フィードバック偏差）とパージ率変化量の関係を示す特性図。
【図１８】パージ空燃比に対するパージ終了判定値の関係を示す特性図。
【図１９】パージ用下限リミッタ判定フラグの設定を説明するためのフローチャート。
【図２０】パージ用上限リミッタ判定フラグの設定を説明するためのフローチャート。
【図２１】パージ率低下処理を説明するための波形図。
【図２２】パージ率低下処理を説明するためのフローチャート。
【図２３】パージ終了が判定されたときの目標パージ率の変化を示す波形図。
【図２４】ベース空燃比エラー判定フラグの設定を説明するためのフローチャート。
【図２５】空燃比学習開始フラグの設定を説明するためのフローチャート。
【図２６】空燃比学習値の更新を説明するためのフローチャート。
【図２７】空燃比学習は外した状態で初回の較正エラーに起因してパージ分補正係数が正しく演算されていない場合をモデル的に示した波形図。
【図２８】空燃比学習は外した状態でベース空燃比エラーが判定される場合をモデル的に示した波形図。
【符号の説明】
４　燃料噴射弁
５　排気通路
８　吸気通路
１１　エンジンコントローラ
１３　エアフローメータ
１５　空燃比センサ（空燃比検出手段）
２１　燃料タンク
２２　配管
２４　キャニスタ
２６　配管
２７　パージバルブ
【図１】
2004092450.tif 000004
【図２】
2004092450.tif 000005
【図３】
2004092450.tif 000006
【図４】
2004092450.tif 000007
【図５】
2004092450.tif 000008
【図６】
2004092450.tif 000009
【図７】
2004092450.tif 000010
【図８】
2004092450.tif 000011
【図９】
2004092450.tif 000012
【図１０】
2004092450.tif 000013
【図１１】
2004092450.tif 000014
【図１２】
2004092450.tif 000015
【図１３】
2004092450.tif 000016
【図１４】
2004092450.tif 000017
【図１５】
2004092450.tif 000018
【図１６】
2004092450.tif 000019
【図１７】
2004092450.tif 000020
【図１８】
2004092450.tif 000021
【図１９】
2004092450.tif 000022
【図２０】
2004092450.tif 000023
【図２１】
2004092450.tif 000024
【図２２】
2004092450.tif 000025
【図２３】
2004092450.tif 000026
【図２４】
2004092450.tif 000027
【図２５】
2004092450.tif 000028
【図２６】
2004092450.tif 000029
【図２７】
2004092450.tif 000030
【図２８】
2004092450.tif 000031