(57)【要約】    【課題】  空燃比センサ出力に含まれる排気圧力変動による誤差を排除又は十分に小さくして、空燃比センサ出力の補正精度を向上させる。    【解決手段】  予め設計データや実験データ等に基づいてセンサ出力補正量のマップを設定し、このセンサ出力補正量のマップをＥＣＵ３８のＲＯＭに記憶しておく。そして、エンジン運転中に、センサ出力補正量のマップを用いて、排気圧力情報となるエンジン運転状態（例えば、エンジン負荷やエンジン回転速度等）と供給空燃比λ0 とに応じたセンサ出力補正量を算出することで、排気圧力変動による空燃比センサ出力の変化分（つまり空燃比センサ出力に含まれる排気圧力変動による誤差）に相当するセンサ出力補正量を算出する。このセンサ出力補正量を用いて空燃比センサ出力を補正することで、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する又は十分に小さくする。    【選択図】  図１
2006009674.tif 000002
【特許請求の範囲】
【請求項１】
内燃機関の排出ガスの空燃比を検出する空燃比センサを備えた内燃機関の制御装置において、
内燃機関の排気圧力又はそれに相関する情報（以下「排気圧力情報」と総称する）に基づいて前記空燃比センサの出力の補正量（以下「センサ出力補正量」という）を算出する補正量算出手段と、
前記センサ出力補正量を用いて前記空燃比センサの出力を補正するセンサ出力補正手段とを備えていることを特徴とする内燃機関の制御装置。
【請求項２】
前記補正量算出手段は、前記排気圧力情報と、供給空燃比又はそれに相関する情報（以下「供給空燃比情報」と総称する）とに基づいて前記センサ出力補正量を算出することを特徴とする請求項１に記載の内燃機関の制御装置。
【請求項３】
予め前記排気圧力情報と前記供給空燃比情報とに応じた前記センサ出力補正量のデータが記憶された補正量記憶手段を備え、
前記補正量算出手段は、前記補正量記憶手段の記憶データに基づいて前記センサ出力補正量を算出することを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項４】
内燃機関の運転中に前記排気圧力情報と前記供給空燃比情報とに応じた前記センサ出力補正量のデータを学習する補正量学習手段を備え、
前記補正量算出手段は、前記補正量学習手段の学習データに基づいて前記センサ出力補正量を算出することを特徴とする請求項２に記載の内燃機関の制御装置。
【請求項５】
前記補正量学習手段は、内燃機関の運転状態が所定の高負荷領域又は所定の高排気圧領域のときに燃料噴射量を強制的に変化させることで供給空燃比を理論空燃比又はその近傍とそれ以外の空燃比との間で変化させ、そのときの前記空燃比センサの出力の挙動に基づいて前記センサ出力補正量のデータを学習することを特徴とする請求項４に記載の内燃機関の制御装置。
【請求項６】
前記センサ出力補正量を用いて補正された前記空燃比センサの出力に基づいて気筒間の空燃比ばらつきの情報（以下「気筒間空燃比ばらつき情報」という）を算出する気筒間空燃比ばらつき算出手段と、
前記気筒間空燃比ばらつき情報に基づいて各気筒の燃料噴射量を補正する気筒別燃料噴射量補正手段とを備えていることを特徴とする請求項１乃至５のいずれかに記載の内燃機関の制御装置。
【請求項７】
前記補正量算出手段は、前記排気圧力情報として内燃機関の運転状態に基づいて算出した推定排気圧力を用いることを特徴とする請求項１乃至６のいずれかに記載の内燃機関の制御装置。
【請求項８】
内燃機関の排出ガスの運動エネルギで排気タービンを駆動することでコンプレッサを駆動して吸入空気を過給する排気タービン式過給機を備えていることを特徴とする請求項１乃至７のいずれかに記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、内燃機関の排出ガスの空燃比を検出する空燃比センサを備えた内燃機関の制御装置に関するものである。
【背景技術】
【０００２】
近年、車両に搭載される内燃機関においては、排気管に排出ガスの空燃比を検出する空燃比センサを配置し、この空燃比センサの出力に基づいて空燃比制御（燃料噴射量等の制御）を行うようにしている。
【０００３】
ところが、図２に示すように、一般に、空燃比センサの出力は、排気圧力に応じて変化するという特性をもっているため、空燃比センサの出力には、排気圧力変動による誤差が含まれてしまう。
【０００４】
そこで、空燃比センサの出力を補正する技術として、例えば、特許文献１（特開平１−２０６２５１号公報）に記載されているように、空燃比センサの出力信号を排気圧力の脈動周期の整数倍の期間にわたって積分して出力することで、空燃比センサの出力に含まれる排気圧力脈動の影響を少なくするようにしたものがある。
【特許文献１】特開平１−２０６２５１号公報（第１頁等）
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかし、上記特許文献１の技術は、空燃比センサの出力信号を積分することで、空燃比センサの出力に含まれる排気圧力変動による誤差を単に平均化するだけであるため、空燃比センサの出力に含まれる排気圧力変動による誤差を十分に小さくすることができず、空燃比センサ出力の補正精度が悪いという欠点がある。
【０００６】
本発明は、このような事情を考慮してなされたものであり、従って本発明の目的は、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ことができ、空燃比センサ出力の補正精度を向上させることができる内燃機関の制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の請求項１に記載の内燃機関の制御装置は、内燃機関の排出ガスの空燃比を検出する空燃比センサを備えたシステムにおいて、内燃機関の排気圧力又はそれに相関する情報（以下「排気圧力情報」と総称する）に基づいて空燃比センサの出力の補正量（以下「センサ出力補正量」という）を補正量算出手段により算出し、そのセンサ出力補正量を用いて空燃比センサの出力をセンサ出力補正手段により補正するようにしたものである。
【０００８】
内燃機関の排気圧力に応じて空燃比センサの出力が変化するため、排気圧力情報に応じてセンサ出力補正量を算出すれば、排気圧力変動による空燃比センサ出力の変化分（つまり空燃比センサ出力に含まれる排気圧力変動による誤差）に相当するセンサ出力補正量を算出することができる。このセンサ出力補正量を用いて空燃比センサの出力を補正すれば、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ことができ、空燃比センサ出力の補正精度を向上させることができる。
【０００９】
図２に示すように、空燃比センサ出力の排気圧力変動による誤差は、空燃比によっても変化する傾向がある。そこで、請求項２のように、排気圧力情報と、供給空燃比又はそれに相関する情報（以下「供給空燃比情報」と総称する）とに基づいてセンサ出力補正量を算出するようにしても良い。このようにすれば、空燃比センサ出力の排気圧力変動による誤差が空燃比によって変化することも考慮してセンサ出力補正量を算出することができ、センサ出力補正量の算出精度を向上させることができる。
【００１０】
また、センサ出力補正量の具体的な算出方法は、請求項３のように、予め排気圧力情報と供給空燃比情報とに応じたセンサ出力補正量のデータを記憶しておき、その記憶データに基づいてセンサ出力補正量を算出するようにしても良い。このようにすれば、予め設計データや実験データ等に基づいて作成したセンサ出力補正量のデータ（例えばセンサ出力補正量のマップ）を用いてセンサ出力補正量を算出することができる。
【００１１】
或は、請求項４のように、内燃機関の運転中に排気圧力情報と供給空燃比情報とに応じたセンサ出力補正量のデータを学習し、その学習データに基づいてセンサ出力補正量を算出するようにしても良い。このようにすれば、内燃機関の運転中にセンサ出力補正量のデータ（例えばセンサ出力補正量のマップ）を随時更新して修正することができるので、空燃比センサやシステムの製造ばらつき（個体差）や経時変化等の影響を受けずにセンサ出力補正量を算出することができる。
【００１２】
一般に、内燃機関の運転状態が高負荷領域や高排気圧領域のときには排気圧力変動が大きくなる傾向がある。また、図２に示すように、空燃比センサの出力は、理論空燃比付近で排気圧力変動による誤差がほぼ０になるという特性がある。
【００１３】
これらの事情を考慮に入れて、請求項５のように、内燃機関の運転状態が所定の高負荷領域又は所定の高排気圧領域のときに燃料噴射量を強制的に変化させることで供給空燃比を理論空燃比又はその近傍とそれ以外の空燃比との間で変化させ、そのときの空燃比センサの出力の挙動に基づいてセンサ出力補正量のデータを学習するようにしても良い。このようにすれば、排気圧力変動が大きくなる運転領域において、排気圧力変動による誤差がほとんど含まれないセンサ出力と、排気圧力変動による誤差が含まれるセンサ出力とを用いてセンサ出力補正量データ（つまり空燃比センサ出力の排気圧力変動による誤差に相当する値）を学習することができ、センサ出力補正量データの学習精度を向上させることができる。
【００１４】
また、請求項６のように、センサ出力補正量を用いて補正された空燃比センサの出力に基づいて気筒間の空燃比ばらつきの情報（以下「気筒間空燃比ばらつき情報」という）を算出し、この気筒間空燃比ばらつき情報に基づいて各気筒の燃料噴射量を補正するようにしても良い。このようにすれば、排気圧力変動による誤差がほぼ排除された空燃比センサ出力に基づいて気筒間空燃比ばらつき情報を精度良く算出することができ、この気筒間空燃比ばらつき情報に基づいて各気筒の燃料噴射量を補正することで、気筒間の空燃比ばらつきを精度良く補正することができる。これにより、気筒間のトルクばらつきを低減してトルク変動を低減することができ、ドライバビリティを向上させることができる。
【００１５】
また、請求項７のように、センサ出力補正量を算出する際には、排気圧力情報として内燃機関の運転状態に基づいて算出した推定排気圧力を用いるようにしても良い。内燃機関の運転状態に応じて排気圧力が変化するため、内燃機関の運転状態を用いれば、排気圧力を精度良く推定することができ、この推定排気圧力を用いてセンサ出力補正量を算出すれば、センサ出力補正量を精度良く算出することができる。
【００１６】
また、本発明は、請求項８のように、内燃機関の排出ガスの運動エネルギで排気タービンを駆動することでコンプレッサを駆動して吸入空気を過給する排気タービン式過給機を備えたシステムに適用すると、大きな効果が得られる。つまり、排気タービン式過給機（いわゆるターボチャージャ）を搭載したシステムでは、排気圧力が高くなって排気圧力変動が大きくなるため、空燃比センサ出力に含まれる排気圧力変動による誤差が大きくなる傾向があるが、本発明を適用することで、排気タービン式過給機を搭載したシステムの場合でも、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ことができる。
【発明を実施するための最良の形態】
【００１７】
以下、本発明を実施するための最良の形態を、次の２つの実施例１，２を用いて説明する。
【実施例１】
【００１８】
本発明の実施例１を図１乃至図５に基づいて説明する。
まず、図１に基づいてエンジン制御システム全体の概略構成を説明する。内燃機関であるエンジン１１の吸気管１２の最上流部には、エアクリーナ１３が設けられ、このエアクリーナ１３の下流側に、吸入空気量を検出するエアフローメータ１４が設けられている。このエアフローメータ１４の下流側には、ＤＣモータ等によって開度調節されるスロットルバルブ１５と、スロットル開度を検出するスロットル開度センサ１６とが設けられている。
【００１９】
更に、スロットルバルブ１５の下流側には、サージタンク１７が設けられ、このサージタンク１７には、吸気管圧力を検出する吸気管圧力センサ１８が設けられている。また、サージタンク１７には、エンジン１１の各気筒に空気を導入する吸気マニホールド１９が設けられ、各気筒の吸気マニホールド１９の吸気ポート近傍に、それぞれ燃料を噴射する燃料噴射弁２０が取り付けられている。また、エンジン１１のシリンダヘッドには、各気筒毎に点火プラグ２１が取り付けられ、各点火プラグ２１の火花放電によって筒内の混合気に着火される。
【００２０】
一方、エンジン１１の排気管２２には、排出ガス中のＣＯ，ＨＣ，ＮＯｘ等を浄化する三元触媒等の触媒２３が設けられ、この触媒２３の上流側に、排出ガスの空燃比を検出する空燃比センサ２４が設けられている。
【００２１】
また、エンジン１１には、排気タービン式過給機２５が搭載されている。この過給機２５は、排気管２２のうちの空燃比センサ２４と触媒２３との間に、排気タービン２６が配置され、吸気管１２のうちのエアフローメータ１４とスロットルバルブ１５との間に、コンプレッサ２７が配置されている。過給機２５は、排気タービン２６とコンプレッサ２７とが連結され、排出ガスの運動エネルギで排気タービン２６を回転駆動することでコンプレッサ２７を回転駆動して吸入空気を過給するようになっている。
【００２２】
更に、吸気管１２には、コンプレッサ２７をバイパスする吸気バイパス通路２８が設けられ、この吸気バイパス通路２８の途中に、吸気バイパス通路２８を開閉するエアバイパスバルブ（以下「ＡＢＶ」と表記する）２９が設けられている。このＡＢＶ２９は、ＡＢＶ用バキュームスイッチングバルブ３０を制御することでＡＢＶ２９の開度が制御されるようになっている。また、吸気管１２のうちのコンプレッサ２７とスロットルバルブ１５との間には、過給機２５で加圧された吸入空気を冷却するインタークーラー３１が設けられている。
【００２３】
一方、排気管２２には、排気タービン２６をバイパスする排気バイパス通路３２が設けられ、この排気バイパス通路３２の途中に、排気バイパス通路３２を開閉するウェイストゲートバルブ（以下「ＷＧＶ」と表記する）３３が設けられている。このＷＧＶ３３は、ＷＧＶ用バキュームスイッチングバルブ３４を制御してダイヤフラム式のアクチュエータ３５を制御することでＷＧＶ３３の開度が制御されるようになっている。
【００２４】
また、エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ３６や、エンジン１１のクランク軸が所定クランク角回転する毎にパルス信号を出力するクランク角センサ３７が取り付けられている。このクランク角センサ３７の出力信号に基づいてクランク角やエンジン回転速度が検出される。
【００２５】
これら各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）３８に入力される。このＥＣＵ３８は、マイクロコンピュータを主体として構成され、内蔵されたＲＯＭ（記憶媒体）に記憶された各種のエンジン制御プログラムを実行することで、エンジン運転状態に応じて燃料噴射弁２０の燃料噴射量や点火プラグ２１の点火時期を制御する。
【００２６】
以下の説明では、理論空燃比に対する実空燃比の比率である空気過剰率λを「空燃比」の情報として用いる。
一般に、図２に示すように、空燃比センサ２４の出力は、排気圧力に応じて変化するという特性をもっているため、空燃比センサ２４の出力には、排気圧力変動による誤差が含まれる。更に、空燃比センサ２４の出力に含まれる排気圧力変動による誤差は、空燃比によっても変化する傾向がある。
【００２７】
そこで、ＥＣＵ３８は、後述する図３に示す空燃比センサ出力補正プログラムを実行して、排気圧力情報となるエンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 とに応じたセンサ出力補正量Ｃmpを算出することで、排気圧力変動による空燃比センサ出力の変化分（つまり空燃比センサ出力に含まれる排気圧力変動による誤差）に相当するセンサ出力補正量Ｃmpを算出し、このセンサ出力補正量Ｃmpを用いて空燃比センサ出力を補正することで、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ようにしている。尚、供給空燃比λ0 は、燃料噴射量と吸入空気量から求めることができる。
【００２８】
以下、本実施例１でＥＣＵ３８が実行する図３に示す空燃比センサ出力補正プログラムの処理内容を説明する。
図３に示す空燃比センサ出力補正プログラムは、エンジン運転中に所定周期で実行される。本プログラムが起動されると、まず、ステップ１０１で、所定期間（例えば排気圧力の脈動周期に相当する期間）における空燃比センサ２４のセンサ出力最大値Ｍaxとセンサ出力最小値Ｍin（図５の上段参照）を算出する。
【００２９】
この後、ステップ１０２に進み、図４に示すセンサ出力補正量Ｃmpのマップを用いて、排気圧力情報となるエンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 とに応じたセンサ出力補正量Ｃmpを算出し、このセンサ出力補正量Ｃmpを、例えばセンサ出力最大値Ｍaxとセンサ出力最小値Ｍinとの関係を用いて補正して最大値用のセンサ出力補正量ＭaxＣmpと最小値用のセンサ出力補正量ＭinＣmpを求める。最大値用のセンサ出力補正量ＭaxＣmpは、センサ出力最大値Ｍaxに含まれる排気圧力変動による誤差に相当し、最小値用のセンサ出力補正量ＭinＣmpは、センサ出力最小値Ｍinに含まれる排気圧力変動による誤差に相当する。このステップ１０２の処理が特許請求の範囲でいう補正量算出手段としての役割を果たす。
【００３０】
図４に示すセンサ出力補正量Ｃmpのマップは、予め設計データや実験データ等に基づいて設定され、ＥＣＵ３８のＲＯＭ（不揮発性メモリ）に記憶されている。この場合、ＥＣＵ３８のＲＯＭが特許請求の範囲でいう補正量記憶手段としての役割を果たす。
【００３１】
この後、ステップ１０３に進み、センサ出力最大値Ｍaxとセンサ出力最小値Ｍinを、それぞれ最大値用のセンサ出力補正量ＭaxＣmpと最小値用のセンサ出力補正量ＭinＣmpで補正することで、排気圧力変動による誤差をほぼ排除したセンサ出力最大値ＭaxＦinalとセンサ出力最小値ＭinＦinalを求める（図５の下段参照）。このステップ１０３の処理が特許請求の範囲でいうセンサ出力補正手段としての役割を果たす。
ＭaxＦinal＝Ｍax−ＭaxＣmp
ＭinＦinal＝Ｍin−ＭinＣmp
【００３２】
この後、ステップ１０４に進み、補正後のセンサ出力最大値ＭaxＦinalと補正後のセンサ出力最小値ＭinＦinalとを用いて平均空燃比λave を算出する。
λave ＝（ＭaxＦinal＋ＭinＦinal）／２
【００３３】
以上説明した本実施例１では、排気圧力に応じて空燃比センサ出力が変化することを考慮して、排気圧力情報となるエンジン運転状態に応じてセンサ出力補正量Ｃmp（空燃比センサ出力に含まれる排気圧力変動による誤差に相当する値）を算出し、このセンサ出力補正量Ｃmpを用いて空燃比センサ出力を補正するようにしたので、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ことができ、空燃比センサ出力の補正精度を向上させることができる。
【００３４】
しかも、本実施例１では、排気圧力情報となるエンジン運転状態と供給空燃比λ0 とに応じてセンサ出力補正量Ｃmpを算出するようにしたので、空燃比センサ出力の排気圧力変動による誤差が空燃比によって変化することも考慮してセンサ出力補正量Ｃmpを算出することができ、センサ出力補正量Ｃmpの算出精度を向上させることができる。
【００３５】
また、排気タービン式過給機２５を搭載したシステムでは、排気圧力が高くなって排気圧力変動が大きくなるため、空燃比センサ出力に含まれる排気圧力変動による誤差が大きくなる傾向があるが、本実施例１のように、センサ出力補正量Ｃmpを用いて空燃比センサ出力を補正することで、排気タービン式過給機２５を搭載したシステムの場合でも、空燃比センサ出力に含まれる排気圧力変動による誤差を排除する（又は十分に小さくする）ことが可能となる。
【実施例２】
【００３６】
次に、図６及び図７を用いて本発明の実施例２を説明する。
本実施例２では、図６に示すセンサ出力補正量学習プログラムを実行して、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）のときに燃料噴射量を強制的に増量することで供給空燃比λ0 を理論空燃比又はその近傍からそれよりもリッチな空燃比に変化させ、そのときの空燃比センサ２４の出力の偏差に基づいてセンサ出力補正量の学習値ＤevＣmpを算出する。そして、センサ出力補正量Ｃmpのマップ（図４参照）において、今回の学習時のエンジン運転状態と供給空燃比λ0 におけるセンサ出力補正量Ｃmpを、今回のセンサ出力補正量の学習値ＤevＣmpで更新し、更新後のセンサ出力補正量のマップＣmpをＥＣＵ３８のバックアップＲＡＭ等の書き換え可能な不揮発性メモリに記憶する。
【００３７】
更に、図７に示す気筒別燃料噴射制御プログラムを実行することで、排気圧力情報となるエンジン運転状態と供給空燃比λ0 とに応じたセンサ出力補正量Ｃmpを算出し、このセンサ出力補正量Ｃmpを用いて補正された空燃比センサ出力に基づいて各気筒の空燃比偏差Ｄevλを算出し、各気筒の空燃比偏差Ｄevλを用いて各気筒の燃料噴射量を補正する。
【００３８】
以下、本実施例２でＥＣＵ３８が実行する図６に示すセンサ出力補正量学習プログラム及び図７に示す気筒別燃料噴射制御プログラムの処理内容を説明する。
図６に示すセンサ出力補正量学習プログラムは、エンジン運転中に所定周期で実行され、特許請求の範囲でいう補正量学習手段としての役割を果たす。本プログラムが起動されると、まず、ステップ２０１で、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）であるか否か、つまり、排気圧力変動が大きくなる領域であるか否かを判定する。その結果、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）ではないと判定された場合には、そのまま本プログラムを終了する。
【００３９】
その後、上記ステップ２０１で、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）であると判定されたときに、ステップ２０２に進み、現在の燃料増量率が５％より低いか否か、つまり、供給空燃比λ0 が理論空燃比付近であるか否かを判定する。その結果、燃料増量率が５％以上であると判定された場合には、これ以上は燃料を増量しない方が良いと判断して、そのまま本プログラムを終了する。
【００４０】
一方、上記ステップ２０１で、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）であると判定され、且つ、上記ステップ２０２で、燃料増量率が５％よりも低いと判定された場合には、次のようにしてセンサ出力補正量Ｃmpを学習する。
【００４１】
まず、ステップ２０３で、供給空燃比λ0 が理論空燃比付近のときの所定期間（例えば排気圧力の脈動周期に相当する期間）における空燃比センサ２４のセンサ出力最大値ＭaxＳとセンサ出力最小値ＭinＳを算出すると共に、排気圧力情報となるエンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 を読み込む。
【００４２】
この後、ステップ２０４に進み、供給空燃比λ0 が理論空燃比付近のときのセンサ出力最大値ＭaxＳとセンサ出力最小値ＭinＳを所定回数計測したか否かを判定し、所定回数計測していなければ、ステップ２０２〜２０４の処理を繰り返す。
【００４３】
その後、上記ステップ２０４で、供給空燃比λ0 が理論空燃比付近のときのセンサ出力最大値ＭaxＳとセンサ出力最小値ＭinＳを所定回数計測したと判定された時点で、ステップ２０５に進み、センサ出力最大値ＭaxＳの所定回数分の平均値である平均センサ出力最大値ＭaxＳ(ave) と、センサ出力最小値ＭinＳの所定回数分の平均値である平均センサ出力最小値ＭinＳ(ave) を算出し、これらの平均センサ出力最大値ＭaxＳ(ave) と平均センサ出力最小値ＭinＳ(ave) とを用いて供給空燃比λ0 が理論空燃比付近のときのセンサ出力偏差ＤevＳを次式により算出する。
【００４４】
ＤevＳ＝ＭaxＳ(ave) −ＭinＳ(ave)
この後、ステップ２０６に進み、燃料噴射量を強制的に例えば１０％だけ増量して、供給空燃比λ0 を理論空燃比又はその近傍からそれよりもリッチな空燃比に変化させる。
【００４５】
この後、ステップ２０７に進み、供給空燃比λ0 をリッチにした後の所定期間における空燃比センサ２４のセンサ出力最大値ＭaxＲとセンサ出力最小値ＭinＲを算出すると共に、エンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 を読み込む。
【００４６】
この後、ステップ２０８に進み、供給空燃比λ0 をリッチにした後のセンサ出力最大値ＭaxＲとセンサ出力最小値ＭinＲを所定回数計測したか否かを判定し、所定回数計測していなければ、ステップ２０７，２０８の処理を繰り返す。
【００４７】
その後、上記ステップ２０８で、供給空燃比λ0 をリッチにした後のセンサ出力最大値ＭaxＲとセンサ出力最小値ＭinＲを所定回数計測したと判定された時点で、ステップ２０９に進み、センサ出力最大値ＭaxＲの所定回数分の平均値である平均センサ出力最大値ＭaxＲ(ave) と、センサ出力最小値ＭinＲの所定回数分の平均値である平均センサ出力最小値ＭinＲ(ave) を算出し、これらの平均センサ出力最大値ＭaxＲ(ave) と平均センサ出力最小値ＭinＲ(ave) とを用いて供給空燃比λ0 をリッチにした後のセンサ出力偏差ＤevＲを次式により算出する。
ＤevＲ＝ＭaxＲ(ave) −ＭinＲ(ave)
【００４８】
この後、ステップ２１０に進み、燃料噴射量の１０％増量を解除した後、ステップ２１１に進み、供給空燃比λ0 をリッチにした後のセンサ出力偏差ＤevＲと、供給空燃比λ0 が理論空燃比付近のときのセンサ出力偏差ＤevＳとを用いてセンサ出力補正量の学習値ＤevＣmpを次式により求める。
ＤevＣmp＝ＤevＲ−ＤevＳ
【００４９】
この後、ステップ２１２に進み、センサ出力補正量Ｃmpのマップ（図４参照）において、今回の学習時のエンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 におけるセンサ出力補正量Ｃmpを、今回のセンサ出力補正量の学習値ＤevＣmpで更新し、更新後のセンサ出力補正量ＣmpのマップをＥＣＵ３８のバックアップＲＡＭ等の書き換え可能な不揮発性メモリに記憶する。
【００５０】
図７に示す気筒別燃料噴射制御プログラムは、エンジン運転中に所定周期で実行される。本プログラムが起動されると、まず、ステップ３０１で、各気筒の排気行程に対応する期間毎に空燃比センサ２４のセンサ出力最大値Ｍax(#i)とセンサ出力最小値Ｍin(#i)を算出する。ここで、(#i)は気筒番号であり、ｎ気筒の場合には(#1)〜(#n)のいずれかを意味する。
【００５１】
この後、ステップ３０２に進み、センサ出力補正量Ｃmpのマップ（図４参照）を用いて、排気圧力情報となるエンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）と供給空燃比λ0 とに応じたセンサ出力補正量Ｃmpを算出する。
【００５２】
この後、ステップ３０３に進み、気筒毎にセンサ出力最大値Ｍax(#i)とセンサ出力最小値Ｍin(#i)を、それぞれセンサ出力補正量Ｃmpで補正することで、排気圧力変動による誤差をほぼ排除したセンサ出力最大値ＭaxＦinal(#i)とセンサ出力最小値ＭinＦinal(#i)を求める。
ＭaxＦinal(#i)＝Ｍax(#i)−Ｃmp
ＭinＦinal(#i)＝Ｍin(#i)−Ｃmp
【００５３】
この後、ステップ３０４に進み、各気筒の補正後のセンサ出力最大値ＭaxＦinal(#i)と補正後のセンサ出力最小値ＭinＦinal(#i)とを用いて各気筒の平均空燃比λave(#i) を次式により算出する。
λave(#i) ＝｛ＭaxＦinal(#i)＋ＭinＦinal(#i)｝／２
【００５４】
この後、ステップ３０５に進み、全気筒の平均空燃比λave(all)を次式により算出する。
λave(all)＝｛λave(#1) ＋・・・・・・・＋λave(#n) ｝／ｎ
【００５５】
この後、ステップ３０６に進み、各気筒の空燃比偏差Ｄevλ(#i)を次式により算出する。このステップ３０６の処理が特許請求の範囲でいう気筒間空燃比ばらつき算出手段としての役割を果たす。
Ｄevλ(#i)＝λave(#i) −λave(all)
【００５６】
この後、ステップ３０７に進み、気筒毎に空燃比偏差Ｄevλ(#i)に基づいて基本燃料噴射量Ｆbaseを補正することで、各気筒の燃料噴射量Ｆ(#i)を求める。このステップ３０７の処理が特許請求の範囲でいう気筒別燃料噴射量補正手段としての役割を果たす。
Ｆ(#i)＝Ｆbase×｛１−Ｄevλ(#i)｝
【００５７】
以上説明した本実施例２では、エンジン運転中にセンサ出力補正量の学習値ＤevＣmpを算出し、このセンサ出力補正量の学習値ＤevＣmpを用いてセンサ出力補正量Ｃmpのマップを更新するようにしたので、エンジン運転中にセンサ出力補正量Ｃmpのマップを随時更新して修正することができ、空燃比センサ２４やシステムの製造ばらつき（個体差）や経時変化等の影響を受けずにセンサ出力補正量Ｃmpを算出することができる。
【００５８】
一般に、エンジン運転状態が高負荷領域や高排気圧領域のときには排気圧力変動が大きくなる傾向がある。また、図２に示すように、空燃比センサ２４の出力は、理論空燃比付近で排気圧力変動による誤差がほぼ０になるという特徴がある。
【００５９】
これらの事情を考慮に入れて、本実施例２では、エンジン運転状態が所定の高負荷領域（又は所定の高排気圧領域）のときに燃料噴射量を強制的に増量することで供給空燃比λ0 を理論空燃比又はその近傍からそれよりもリッチな空燃比に変化させ、そのときの空燃比センサ２４の出力の偏差に基づいてセンサ出力補正量の学習値ＤevＣmpを算出するようにしたので、排気圧力変動が大きくなる運転領域において、排気圧力変動による誤差がほとんど含まれないセンサ出力と、排気圧力変動による誤差が含まれるセンサ出力との偏差に基づいてセンサ出力補正量の学習値ＤevＣmp（空燃比センサ出力の排気圧力変動による誤差に相当する値）を学習することができ、センサ出力補正量の学習値ＤevＣmpの学習精度、ひいてはセンサ出力補正量Ｃmpのマップの学習精度を向上させることができる。
【００６０】
また、本実施例２では、センサ出力補正量Ｃmpを用いて補正された空燃比センサ出力に基づいて各気筒の空燃比偏差Ｄevλを算出するようにしたので、排気圧力変動による誤差がほぼ排除された空燃比センサ出力に基づいて各気筒の空燃比偏差Ｄevλを精度良く算出することができる。更に、各気筒の空燃比偏差Ｄevλを用いて各気筒の燃料噴射量を補正するようにしたので、気筒間の空燃比ばらつきを精度良く補正することができる。これにより、気筒間のトルクばらつきを低減してトルク変動を低減することができ、ドライバビリティを向上させることができる。
【００６１】
以上説明した各実施例１，２では、排気圧力情報となるエンジン運転状態に応じてセンサ出力補正量Ｃmpを算出するようにしたが、図８に示す推定排気圧力のマップを用いて、エンジン運転状態（例えば、吸入空気量、吸気管圧力等のエンジン負荷やエンジン回転速度等）に応じた推定排気圧力を算出し、この推定排気圧力に応じてセンサ出力補正量Ｃmpを算出するようにしても良い。エンジン運転状態に応じて排気圧力が変化するため、エンジン運転状態を用いれば、排気圧力を精度良く推定することができ、この推定排気圧力を用いてセンサ出力補正量Ｃmpを算出すれば、センサ出力補正量Ｃmpを精度良く算出することができる。
【００６２】
その他、本発明は、過給機２５を搭載したシステムに限定されず、過給機２５を搭載していないシステムに適用しても良く、また、センサ出力補正量の算出方法を適宜変更しても良い等、種々変更して実施できる。
【図面の簡単な説明】
【００６３】
【図１】本発明の実施例１におけるエンジン制御システム全体の概略構成図である。
【図２】空燃比センサの出力特性図である。
【図３】実施例１の空燃比センサ出力補正プログラムの処理の流れを示すフローチャートである。
【図４】センサ出力補正量のマップの一例を概念的に示す図である。
【図５】空燃比センサ出力の補正方法を説明するためのタイムチャートである。
【図６】実施例２のセンサ出力補正量学習プログラムの処理の流れを示すフローチャートである。
【図７】実施例２の気筒別燃料噴射制御プログラムの処理の流れを示すフローチャートである。
【図８】その他の実施例における推定排気圧のマップの一例を概念的に示す図である。
【符号の説明】
【００６４】
１１…エンジン（内燃機関）、１２…吸気管、１５…スロットルバルブ、２０…燃料噴射弁、２１…点火プラグ、２２…排気管、２４…空燃比センサ、２５…過給機、２６…排気タービン、２７…コンプレッサ、３８…ＥＣＵ（補正量算出手段，センサ出力補正手段，補正量記憶手段，補正量学習手段，気筒間空燃比ばらつき算出手段，気筒別燃料噴射量補正手段）
【図１】
2006009674.tif 000003
【図２】
2006009674.tif 000004
【図３】
2006009674.tif 000005
【図４】
2006009674.tif 000006
【図５】
2006009674.tif 000007
【図６】
2006009674.tif 000008
【図７】
2006009674.tif 000009
【図８】
2006009674.tif 000010