(57)【特許請求の範囲】
【請求項１】
内燃エンジンの供給混合気の空燃比制御動作を理論空燃比付近に制御する第１空燃比制御動作と理論空燃比よりもリーンに制御する第２空燃比制御動作とのいずれか一方に前記エンジンの運転状態に応じて選択的に切り換える空燃比制御装置であって、
前記第１及び第２空燃比制御動作間の切り換えを検出する切換検出手段と、
前記内燃エンジンの気筒内の圧力に応じた筒内圧検出信号を生成する筒内圧検出手段と、前記筒内圧検出信号を積分して積分値を得る積分手段と、
前記切換検出手段による前記第１及び第２空燃比制御動作間の切り換え検出前後の前記積分値がほぼ一致するようにその切り換え検出直後のエンジン出力を制御するエンジン出力制御手段と、を備え、
前記エンジン出力制御手段は、前記第１及び第２空燃比制御動作間の切り換え検出前後の前記積分値の差の大きさが所定値以下のときには前記切り換え検出直後のエンジン出力制御を実施しないことを特徴とする空燃比制御装置。
【請求項２】
前記エンジン出力制御手段は、前記積分値とエンジン回転数とに対応したスロットル弁の開度データをデータマップとして記憶したメモリと、
前記エンジンのエンジン回転数を検出する回転数検出手段と、
前記切換検出手段によって前記第１及び第２空燃比制御動作間の切り換えが検出されると、
前記積分値の今回値と前記回転数検出手段によって検出されたエンジン回転数の今回値とに対応した記憶位置の１の開度データを前記データマップから検索して設定する手段と、
前記１の開度データに応じて前記スロットル弁の開度を制御し、その後、前記切換検出手段による前記第１及び第２空燃比制御動作間の切り換え検出直前の前記積分値と前記積分値の今回値との差の大きさが所定値以下になるように前記スロットル弁の開度を増減するスロットル弁調整手段と、を有することを特徴とする請求項１記載の空燃比制御装置。
【請求項３】
前記第１及び第２空燃比制御動作間の切り換え検出直前の前記積分値と前記積分値の今回値との差の大きさが所定値以下になったときにはそのときの前記スロットル弁の開度を示す開度データで前記データマップの記憶位置を更新記憶させることを特徴とする請求項２記載の空燃比制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃エンジンに供給する混合気の空燃比を制御する空燃比制御装置に関する。
【０００２】
【従来の技術】
内燃エンジンに供給する混合気の空燃比をフィードバック制御によって理論空燃比に制御するストイキ制御動作と、燃費の向上を図るために空燃比を理論空燃比よりリーン（希薄）に制御するリーンバーン制御動作とを運転状態に応じて切り換える空燃比制御装置がある。ストイキ制御動作では、排気ガス中の酸素濃度を酸素濃度センサによって検出し、酸素濃度センサの出力に応じて供給混合気の空燃比を制御することが行なわれる。一方、リーンバーン制御動作では、気筒内の圧力、すなわち筒内圧を筒内圧センサによって検出し、その筒内圧に基づいて空燃比をリーン化制御することが行なわれる。例えば、特開昭６２−１５００５８号公報には、排気酸素センサの出力信号に応じて供給混合気の空燃比を理論空燃比に制御し、筒内圧センサによって検出した筒内圧の最大値と最小値との比に応じて空燃比をリーン制御することが開示されている。
【０００３】
【発明が解決しようとする課題】
しかしながら、かかる従来の空燃比制御装置においては、エンジンが例えば、クルーズ運転のような定常運転状態にあるため空燃比制御動作が例えば、ストイキ制御動作からリークバーン制御動作に切り換えられた場合には、燃焼状態の急変によりエンジン出力が低下するので、ショック（衝撃）が生じて運転性能が悪化するという問題点があった。
【０００４】
そこで、本発明の目的は、空燃比制御動作の切り換え直後のエンジンのショックを低減させることができる内燃エンジンの空燃比制御装置を提供することである。
【０００５】
【課題を解決するための手段】
本発明の空燃比制御装置は、内燃エンジンの供給混合気の空燃比制御動作を理論空燃比付近に制御する第１空燃比制御動作と理論空燃比よりもリーンに制御する第２空燃比制御動作とのいずれか一方に前記エンジンの運転状態に応じて選択的に切り換える空燃比制御装置であって、第１及び第２空燃比制御動作間の切り換えを検出する切換検出手段と、内燃エンジンの気筒内の圧力に応じた筒内圧検出信号を生成する筒内圧検出手段と、筒内圧検出信号を積分して積分値を得る積分手段と、切換検出手段による第１及び第２空燃比制御動作間の切り換え検出前後の積分値がほぼ一致するようにその切り換え検出直後のエンジン出力を制御するエンジン出力制御手段とを備え、エンジン出力制御手段は、第１及び第２空燃比制御動作間の切り換え検出前後の積分値の差の大きさが所定値以下のときには切り換え検出直後のエンジン出力制御を実施しないことを特徴としている。
【０００６】
すなわち、本発明によれば、空燃比制御動作の切り換え検出前後の筒内圧検出信号の積分値がほぼ一致するように空燃比制御動作の切り換え検出直後のエンジン出力を制御するので、空燃比制御動作の切り換え直後もエンジン出力を維持するように動作する故、エンジンのショックを低減させることができ、運転性能の悪化を回避させることができる。
【０００７】
また、エンジン出力制御手段は、積分値とエンジン回転数とに対応したスロットル弁の開度データをデータマップとして記憶したメモリと、エンジンのエンジン回転数を検出する回転数検出手段と、切換検出手段によって第１及び第２空燃比制御動作間の切り換えが検出されると、積分値の今回値と回転数検出手段によって検出されたエンジン回転数の今回値とに対応した記憶位置の１の開度データをデータマップから検索して設定する手段と、１の開度データに応じてスロットル弁の開度を制御し、その後、切換検出手段による第１及び第２空燃比制御動作間の切り換え検出直前の積分値と積分値の今回値との差の大きさが所定値以下になるようにスロットル弁の開度を増減するスロットル弁調整手段とを有する。
【０００８】
このエンジン出力制御手段の構成により、空燃比制御動作が切り換えられたときに直ちにスロットル弁が予め定められた適切な開度に制御されるので、エンジン出力の急低下を防止することができる。
更に、第１及び第２空燃比制御動作間の切り換え検出直前の積分値と積分値の今回値との差の大きさが所定値以下になったときにはそのときのスロットル弁の開度を示す開度データでデータマップの記憶位置が更新記憶される。
【０００９】
これにより、データマップの各開度データが学習制御されるので、エンジンの経時変化に対応することができる。
【００１０】
【発明の実施の形態】
以下、本発明の実施例を図面を参照しつつ詳細に説明する。
図１は本発明による空燃比制御装置が適用された車載内燃エンジン本体を示している。内燃エンジン本体は、４つのシリンダ１〜４を有し、各シリンダ１〜４には吸気管１６及び排気管１７が連結されている。吸気管１６は４つに分岐してシリンダ１〜４に連結しており、その分岐路１６ａ〜１６ｄ各々にスロットル弁１８ａ〜１８ｄが設けられている。スロットル弁１８ａ〜１８ｄ各々は図示しないアクセルペダルの操作に連動して開弁すると共に、後述の駆動回路３５によってモータを含むスロットル弁アクチュエータ１９ａ〜１９ｄを介して開弁駆動される。排気管１７には排気中の酸素濃度を検出する酸素濃度センサ２０が設けられている。
【００１１】
各シリンダ１〜４のシリンダヘッドにはシリンダ内の圧力を検出する筒内圧検出手段である筒内圧センサ５〜８が設けられている。筒内圧センサ５〜８各々は具体的には、図２に示すように、圧電素子からなるセンサ素子部９と、そのセンサ素子部９から生成された電圧を積分（或いは平均化）して増幅する増幅部１０とを有している。
【００１２】
また、図２に示すように、エンジン本体の各シリンダヘッド１１のネジ孔１２に点火プラグ１３がねじ込まれて固定されており、シリンダヘッド１１の点火プラグ取り付け座面１４とその点火プラグ座金部１３ａとの間に筒内圧センサのセンサ素子部９がワッシャ１５と共に挟み込まれて圧着固定されている。
筒内圧センサ５〜８各々の検出出力はＥＣＵ（エンジンコントロールユニット）２１に供給されるようになっている。ＥＣＵ２１は、図３に示すようにＣＰＵ３１、ＲＯＭ３２、ＲＡＭ３３、Ａ／Ｄ変換器３４、駆動回路３５及びカウンタ３７を少なくとも備えており、それらは共通バスで互いに接続されている。Ａ／Ｄ変換器３４には上記の筒内圧センサ５〜８及び酸素濃度センサ２０が接続され、駆動回路３５には上記のアクチュエータ１９ａ〜１９ｄと共に４つのインジェクタ４１〜４４が接続されている。インジェクタ４１〜４４はシリンダ毎に吸気ポート近傍の吸気管１６に設けられ、駆動回路３５による駆動動作によって燃料を噴射する。
【００１３】
Ａ／Ｄ変換器３４には他のセンサとして、スロットル弁１８ａ〜１８ｄ下流の分岐路１６ａ〜１６ｄ内の圧力を検出する吸気管内圧センサ３９ａ〜３９ｄ、内燃エンジンの冷却水の温度ＴWを検出する冷却水温センサ４０、スロットル弁の開度を検出するスロットル開度センサ（図示せず）等のエンジンパラメータセンサがある。Ａ／Ｄ変換器３４はクランク角センサ３８の出力パルスをサンプリングタイミングとしている。クランク角センサ３８はクランクシャフトが例えば、１度回転する毎にクランクパルスを生成するので、Ａ／Ｄ変換器３４はクランク角センサ３８の出力クランクパルスに同期して各センサのアナログ出力電圧を所定の順番にディジタル値に変換してセンサ毎に出力し、そのディジタル値を繰り返し更新する。カウンタ３７はクランク角センサ３８から出力されるクランクパルスの発生間隔をクロックパルスの発生数の計数により測定してエンジン回転数Ｎｅを示す信号を生成する。なお、クランク角センサ３８はクランクシャフトの回転角度が所定角度位置にある時点を示す基準位置信号と共に各気筒のピストンの上死点時点を示すＴＤＣ信号も発生し、それらはＣＰＵ３１に供給される。
【００１４】
ＥＣＵ２１のＣＰＵ３１は、エンジンのシリンダ１〜４内に燃料をインジェクタ４１〜４４によって供給するために燃料噴射制御動作をＲＯＭ３２に予め記憶されたプログラムに従って気筒毎にＴＤＣ信号に同期して行なう。いずれの気筒についても同様の燃料噴射制御動作が行なわれるので、次に、シリンダ１について燃料噴射制御動作を説明する。また、燃料噴射制御動作にはその中で実行される空燃比制御動作としてストイキ制御動作（第１空燃比制御動作）と、リーンバーン制御動作（第２空燃比制御動作）とがあるので、先ず、ストイキ制御動作を行なう燃料噴射制御動作を説明する。
【００１５】
ストイキ制御動作を行なう燃料噴射制御動作は後述する空燃比選択フラグＦが０であるときにＴＤＣ信号に応じて割り込み実行され、ＣＰＵ３１は、図４に示すように先ず、基準燃料噴射時間Ｔｉをエンジン回転数Ｎｅ及び吸気管内圧力ＰBとに応じて設定する（ステップＳ１）。基準燃料噴射時間Ｔｉは例えば、ＲＯＭ３２に予め記憶されたＴｉデータマップからエンジン回転数Ｎｅと吸気管内圧力ＰBとに応じて検索設定される。エンジン回転数Ｎｅはカウンタ３７から得られ、吸気管内圧力ＰBは吸気管内圧センサ３９ａによって検出されたものであり、Ａ／Ｄ変換器３４から得られる。
【００１６】
基準燃料噴射時間Ｔｉの設定後、酸素濃度センサ２０の出力信号レベルをＡ／Ｄ変換器３４から読み取って空燃比が理論空燃比に対してリッチ及びリーンのいずれであるか否かを判別する（ステップＳ２）。酸素濃度センサ２０の出力信号レベルは、空燃比が理論空燃比よりリーンであるとき低レベルとなり、空燃比が理論空燃比よりリッチであるとき高レベルとなるので、酸素濃度センサ２０の出力信号レベルから実際の空燃比のリッチ・リーンを判別することができる。ステップＳ２において空燃比がリッチと判別した場合には、供給混合気の空燃比をリーン化させるために空燃比フィードバック補正係数ＫO2を所定値Ｉ（例えば、０．０５）だけ減少させる（ステップＳ３）。一方、空燃比がリーンと判別した場合には、供給混合気の空燃比をリッチ化させるために空燃比フィードバック補正係数ＫO2を所定値Ｉだけ増大させる（ステップＳ４）。よって、リッチの空燃比状態が継続すれば、空燃比フィードバック補正係数ＫO2が徐々に減少し、リーンの空燃比状態が継続すれば、空燃比フィードバック補正係数ＫO2が徐々に増大する。なお、空燃比フィードバック補正係数ＫO2の初期値は１．０である。また、空燃比がリッチからリーンに反転した直後には空燃比フィードバック補正係数ＫO2を所定値Ｉより大なる所定値Ｐだけ減少させ、リーンからリッチに反転した直後には空燃比フィードバック補正係数ＫO2を所定値Ｐだけ増大させても良い。
【００１７】
ＣＰＵ３１は、空燃比フィードバック補正係数ＫO2を設定すると、燃料噴射時間Ｔｐを算出する（ステップＳ５）。燃料噴射時間ＴｐはステップＳ１で得た基準燃料噴射時間ＴｉとステップＳ３又はＳ４で得た空燃比フィードバック補正係数ＫO2とをＴｉ×ＫO2の如く乗算することにより求められる。燃料噴射時間Ｔｐをの算出後、駆動回路３５に対してインジェクタ４１の燃料噴射時間Ｔｐの駆動指令を発する（ステップＳ６）。駆動回路３５はＴＤＣ信号に同期して特定の時点（例えば、吸気行程直前）から燃料噴射時間Ｔｐだけインジェクタ４１を駆動して燃料を噴射供給させる。
【００１８】
一方、リーンバーン制御動作をなす燃料噴射制御動作は空燃比選択フラグＦが１であるときにＴＤＣ信号に応じて割り込み実行され、ＣＰＵ３１は、図５に示すように先ず、ステップＳ１と同様に、基準燃料噴射時間Ｔｉをエンジン回転数Ｎｅ及び吸気管内圧力ＰBとに応じて設定する（ステップＳ１１）。
基準燃料噴射時間Ｔｉの設定後、筒内圧センサ５から得られた１サイクル分の筒内圧Ｐｉのデータに基づいて正味平均有効圧Ｐｍｅを算出する（ステップＳ１２）。
【００１９】
正味平均有効圧Ｐｍｅは式(1)に示すように図示平均有効圧ＰｍｉとポンピングロスＰｍｆとの差である。
【００２０】
【数１】
Ｐｍｅ＝Ｐｍｉ−Ｐｍｆ      …(1)
図示平均有効圧Ｐｍｉは、
【００２１】
【数２】
0004150097.tif 000002
【００２２】
のように算出される。ここで、ＴＤＣは上死点位置でのシリンダ容量であり、ＢＤＣは下死点位置でのシリンダ容量である。また、ｄＶはシリング容量変化量である。筒内圧Ｐｉとシリンダ容量Ｖとの関係は吸気、圧縮、爆発及び排気からなる１サイクルにおいて図６に示すように図示することができる。図示平均有効圧Ｐｍｉは図６の符号Ａで示した範囲に相当する。式(2)の第１積分項は図６の１−２−３−４−５−１で囲まれた面積に対応し、第２積分項は図６の１−２−３'−４'−５−１で囲まれた面積に対応する。
【００２３】
ポンピングロスＰｍｆは、
【００２４】
【数３】
0004150097.tif 000003
【００２５】
のように算出される。ポンピングロスＰｍｆは図６の符号Ｂで示した範囲に相当する。式(3)の第１積分項は図６の１−２−３−６−１で囲まれた面積に対応し、第２積分項は図６の１−２−３'−６'−１で囲まれた面積に対応する。
ＣＰＵ３１は、正味平均有効圧Ｐｍｅを算出すると、閾値ａ(Ｎｅ)を設定し（ステップＳ１３）、正味平均有効圧Ｐｍｅが閾値ａ(Ｎｅ)以上であるか否かを判別する（ステップＳ１４）。閾値ａ(Ｎｅ)はエンジン回転数Ｎｅに応じて設定される。例えば、エンジン回転数Ｎｅが高いほど閾値ａ(Ｎｅ)は小さく設定される。ステップＳ１４の判別によりＰｍｅ≧ａ(Ｎｅ)の場合には、供給混合気の空燃比をリーン化させるために空燃比リーン化補正係数ＫAFを所定値Ｉだけ減少させる（ステップＳ１５）。一方、Ｐｍｅ＜ａ(Ｎｅ)の場合には、供給混合気の空燃比をリッチ化させるために空燃比リーン化補正係数ＫAFを所定値Ｉだけ増大させる（ステップＳ１６）。よって、Ｐｍｅ≧ａ(Ｎｅ)の状態が継続すれば、空燃比リーン化補正係数ＫAFが徐々に減少し、Ｐｍｅ＜ａ(Ｎｅ)の状態が継続すれば、空燃比リーン化補正係数ＫAFが徐々に増大する。なお、空燃比リーン化補正係数ＫAFの初期値は１．０である。
【００２６】
ＣＰＵ３１は、空燃比リーン化補正係数ＫAFを設定すると、ステップＳ５と同様に、燃料噴射時間Ｔｐを算出する（ステップＳ１７）。この燃料噴射時間ＴｐはステップＳ１１で得た基準燃料噴射時間ＴｉとステップＳ１５又はＳ１６で得た空燃比リーン化補正係数ＫAFとをＴｉ×ＫAFの如く乗算することにより求められる。燃料噴射時間Ｔｐの算出後、駆動回路３５に対してインジェクタ４１の燃料噴射時間Ｔｐの駆動指令を発する（ステップＳ１８）。駆動回路３５はＴＤＣ信号に同期して特定の時点（例えば、吸気行程直前）から燃料噴射時間Ｔｐだけインジェクタ４１を駆動して燃料を噴射供給させる。ここで、リーンバーン制御動作を行なう場合には、前述の空燃比フィードバック補正係数ＫO2は固定値（例えば、１．０）に固定されている。
【００２７】
このようなリーンバーン制御動作をなす燃料噴射制御動作を行なうことにより、Ｐｍｅ≧ａ(Ｎｅ)の状態ではエンジン燃焼が失火せず良好に行われているので、供給混合気の空燃比がリーン化され、これによりリーン燃焼が行なわれる。Ｐｍｅ＜ａ(Ｎｅ)の状態が検出されると、失火を生じさせないように空燃比をリッチ化して過度のリーン化を防止することが行なわれるのである。内燃エンジンの燃焼が正常であれば、圧縮行程より爆発行程における膨張時の方が筒内圧は高くなり、内燃エンジンは正の仕事をすることになる。しかしながら、燃焼異常で失火となった場合には図６の５−４−３のラインが３'−４'−５のラインとほぼ等しくなるか又はそのラインより高くならず、図示平均有効圧Ｐｍｉは正常燃焼時に比べて小さくなる。よって、正味平均有効圧Ｐｍｅ（又は図示平均有効圧Ｐｍｉ）を閾値と比較することにより、異常燃焼を防止しつつ空燃比をリーン化させることができる。また、この燃料噴射制御動作は気筒毎に行なわれるので、適正なリーン燃焼がいずれの気筒でも可能になる。
【００２８】
なお、ステップＳ１４では正味平均有効圧Ｐｍｅと閾値ａ(Ｎｅ)とを比較し、その比較結果に応じて空燃比方向を設定しているが、今回算出した正味平均有効圧Ｐｍｅnと１サイクル前に算出した正味平均有効圧Ｐｍｅn-1との差ΔＰｍｅと閾値α(Ｎｅ)とを比較し、その比較結果に応じて空燃比方向を設定しても良い。この閾値α(Ｎｅ)はエンジン回転数Ｎｅに応じて設定される。
【００２９】
更に、閾値ａ(Ｎｅ)はエンジン回転数Ｎｅに応じて設定されるが、エンジン回転数以外の例えば、スロットル弁開度等のエンジンパラメータに応じて閾値を設定しても良い。
上記の燃料噴射制御動作を実行するに当たってＣＰＵ３１はエンジンの運転状態に応じてストイキ制御動作とリーンバーン制御動作のうちのいずれの空燃比制御動作を選択的に実行すべきか判別する。すなわち、ＣＰＵ３１は、図７に示すように、空燃比制御動作をストイキ制御動作及びリーンバーン制御動作のいずれにすべきか判別し（ステップＳ２１）、ストイキ制御動作と判別した場合にはステップＳ１に進んで空燃比制御動作をストイキ制御動作とする燃料噴射制御動作を行なうために空燃比選択フラグＦを０とする（ステップＳ２２）、リーンバーン制御動作と判別した場合にはステップＳ１１に進んで空燃比制御動作をリーンバーン制御動作とする燃料噴射制御動作を行なうために空燃比選択フラグＦを１とする（ステップＳ２３）。ステップＳ２１の判別としてＣＰＵ３１は、例えば、エンジン回転数Ｎｅが継続して所定の回転数範囲にあって安定したエンジン運転状態にあるときには、リーンバーン制御動作による燃料噴射制御動作と選択し、それ以外はストイキ制御動作による燃料噴射制御動作を選択する。なお、この空燃比制御選択動作はクロックパルス又はクランク角センサ３８から出力されるクランクパルスに同期して繰り返し実行しても良い。
【００３０】
ＣＰＵ３１は、ストイキ制御動作からリーンバーン制御動作の空燃比制御動作に移行する際の燃焼状態の急変によりエンジンに生じるショックを低減させるためにエンジン出力制御手段としてスロットル弁制御動作を行なう。なお、このスロットル弁制御動作は気筒毎に行なわれ、各気筒のスロットル弁制御動作は同一であるので、シリンダ１についてスロットル弁制御動作を次に説明する。
【００３１】
このスロットル弁制御動作においてＣＰＵ３１は、図８に示すように、先ず、筒内圧センサ５から得られた１サイクル分の筒内圧Ｐｉのデータに基づいて正味平均有効圧Ｐｍｅを算出する（ステップＳ３１）。これはステップＳ１２と同様であり、ステップＳ１２で得たものを用いても良い。算出された正味平均有効圧ＰｍｅはＲＡＭ３２にＰｍｅ１として記憶される。ステップＳ３１の実行後、ストイキ制御動作からリーンバーン制御動作への切り換え時か否かを判別する（ステップＳ３２）。この判別は、上記の空燃比選択フラグＦが０から１に変化した直後であることを検出することにより行なわれる。
【００３２】
ストイキ制御動作からリーンバーン制御動作への切り換え時にならば、エンジン回転数Ｎｅ及び正味平均有効圧Ｐｍｅ１に応じてスロットル開度ＴＨを設定し（ステップＳ３３）、スロットル弁１８ａの開度がそのスロットル開度ＴＨになるように駆動回路３５にスロットル弁駆動指令を発生する（ステップＳ３４）。ＲＯＭ３２にはエンジン回転数Ｎｅ及び正味平均有効圧Ｐｍｅに対応するスロットル開度ＴＨがＴＨデータマップとして予め記憶されているので、ＣＰＵ３１はそのときのエンジン回転数Ｎｅ及び算出した正味平均有効圧Ｐｍｅ１に対応するスロットル開度ＴＨ（開度データ）をそのＲＯＭ３２のＴＨデータマップから検索して読み出す。駆動回路３５はスロットル弁駆動指令に応答してスロットル弁１８ａを駆動してその開度がそのスロットル開度ＴＨに等しくなるようにする。
【００３３】
ステップＳ３４の実行後、筒内圧センサ５から新たに得られた１サイクル分の筒内圧Ｐｉのデータに基づいて正味平均有効圧Ｐｍｅを今回値Ｐｍｅ２として算出する（ステップＳ３５）。これはステップＳ１２又はＳ３１と同様に算出する。正味平均有効圧Ｐｍｅ１とＰｍｅ２との差の絶対値｜Ｐｍｅ１−Ｐｍｅ２｜が所定値ａより大であるか否かを判別する（ステップＳ３６）。｜Ｐｍｅ１−Ｐｍｅ２｜＞ａならば、正味平均有効圧Ｐｍｅ１とＰｍｅ２との差Ｐｍｅ１−Ｐｍｅ２が０より大であるか否かを判別する（ステップＳ３７）。すなわち、Ｐｍｅ１＞Ｐｍｅ２ならば、スロットル開度ＴＨを所定開度Δθだけ減少させ（ステップＳ３８）、スロットル弁１８ａの開度が新たなスロットル開度ＴＨとなるように駆動回路３５にスロットル弁駆動指令を発生する（ステップＳ３９）。一方、Ｐｍｅ１≦Ｐｍｅ２ならば、スロットル開度ＴＨを所定開度Δθだけ増大させ（ステップＳ４０）、ステップＳ２９に進んでスロットル弁１８ａの開度が新たなスロットル開度ＴＨとなるように駆動回路３５にスロットル弁駆動指令を発生する。
【００３４】
ステップＳ３９の実行後、ＣＰＵ３１はステップＳ３５に戻り、ステップＳ３５以降の動作を繰り返す。ステップＳ３６にて｜Ｐｍｅ１−Ｐｍｅ２｜≦ａと判別した場合には本スロットル弁制御動作を終了する。
このようにスロットル弁１８ａの開度を制御することにより、空燃比制御動作をストイキ制御動作からリーンバーン制御動作へ切り換えた際に正味平均有効圧Ｐｍｅ２が切り換え前のＰｍｅ１に等しくなるようにスロットル弁１８ａの開度が制御される。この結果、ストイキ制御動作からリーンバーン制御動作への切り換えによるエンジン出力変動を防止することができる。
【００３５】
なお、この実施例におけるステップＳ３１のＣＰＵ３１による実行が積分手段に相当し、ステップＳ３２の判別が切換検出手段に相当し、ステップＳ３３〜Ｓ４０のＣＰＵ３１による実行並びに駆動回路３５及びアクチュエータ１９ａ〜１９ｄがエンジン出力制御手段に相当する。
また、ＲＡＭ３３を不揮発性メモリとしてＴＨデータマップを形成し、ステップＳ３３にてＲＡＭ３３のＴＨデータマップを用いてエンジン回転数Ｎｅ及び正味平均有効圧Ｐｍｅに応じてスロットル開度ＴＨを設定することができる。このように構成すれば、ＴＨデータマップのスロットル開度ＴＨを学習制御することができる。すなわち、図９に示すように、ステップＳ３６にて｜Ｐｍｅ１−Ｐｍｅ２｜≦ａと判別した場合に、ステップＳ４１に進んで、そのときのスロットル開度ＴＨをＴＨデータマップのエンジン回転数Ｎｅ及び正味平均有効圧Ｐｍｅに対応する記憶位置に書き込むのである。
【００３６】
また、上記した実施例においては、スロットル弁１８ａの開度を増大又は減少させたが、他の気筒に対応するスロットル弁１８ｂ〜１８ｄについても上記したスロットル弁制御動作によってその開度が増大又は減少される。更に、正味平均有効圧Ｐｍｅを調整するためにスロットル弁開度を変化させることに代わって、別のエンジン出力制御手段として点火時期を変化させても良い。すなわち、図１０に示すようにステップＳ３７にてＰｍｅ１＞Ｐｍｅ２と判別した場合には、ステップＳ４２に移行して点火時期を所定角度だけ遅角させ、Ｐｍｅ１≦Ｐｍｅ２と判別した場合にはステップＳ４３に移行して点火時期を所定角度だけ進角させるのである。
【００３７】
上記の各実施例においては、空燃比制御動作の切り換えとしてストイキ制御動作からリーンバーン制御動作への切り換えの際のスロットル弁開度又は点火時期の制御ついて説明したが、リーンバーン制御動作からストイキ制御動作への切換の際のスロットル弁開度又は点火時期の制御についても同様に行なうことができる。
【００３８】
更に、上記した実施例においては、筒内圧検出信号の積分値として正味平均有効圧Ｐｍｅを得ているが、積分値として図示平均有効圧Ｐｍｉを用いても良い。また、上記した実施例においては、スロットル弁１８ａ〜１８ｄが各気筒毎に設けられているが、吸気管１６に各気筒共通のスロットル弁を設けた内燃エンジンにも本発明は適用することができる。
【００３９】
【発明の効果】
以上の如く、本発明によれば、空燃比制御動作の切り換えを検出し、気筒内の圧力に応じた筒内圧検出信号を生成してその筒内圧検出信号を積分して積分値を求め、空燃比制御動作の切り換え検出前後の積分値がほぼ一致するようにその切り換え検出直後のスロットル弁の開度、点火時期等によりエンジン出力を制御することが行なわれる。よって、ストイキ制御動作からリーンバーン制御動作への切り換えるような空燃比制御動作の切り換え直後もエンジン出力を維持するように動作する故、エンジンのショックを低減させることができ、運転性能の悪化を回避させることができる。
【００４０】
また、筒内圧検出信号の積分値とエンジン回転数とに対応したスロットル弁の開度データをデータマップとしてメモリに記憶し、エンジンのエンジン回転数を検出し、空燃比制御動作の切り換えが検出されると積分値の今回値と検出されたエンジン回転数の今回値とに対応した記憶位置の１の開度データをデータマップから検索して設定し、その１の開度データに応じてスロットル弁の開度を制御し、その後、空燃比制御動作の切り換え検出直前の積分値と積分値の今回値との差の大きさが所定値以下になるようにスロットル弁の開度を増減することにより、空燃比制御動作を切り換えたときに直ちにスロットル弁が予め定められた適切な開度に制御されるので、エンジン出力の急低下を防止することができる。
【００４１】
更に、空燃比制御動作の切り換え検出直前の積分値と積分値の今回値との差の大きさが所定値以下になったときにはそのときのスロットル弁の開度を示す開度データでデータマップの記憶位置を更新記憶することにより、データマップの各開度データが学習制御されるので、エンジンの経時変化に対応することができる。
【図面の簡単な説明】
【図１】内燃エンジン本体を示す図である。
【図２】筒内圧センサの構成を示す図である。
【図３】ＥＣＵの構成を示すブロック図である。
【図４】ストイキ制御による燃料噴射制御動作を示すフローチャートである。
【図５】リーンバーン制御による燃料噴射制御動作を示すフローチャートである。
【図６】筒内圧とシリンダ容積との関係を示す図である。
【図７】空燃比制御選択動作を示すフローチャートである。
【図８】スロットル弁制御動作を示すフローチャートである。
【図９】他のスロットル弁制御動作を示すフローチャートである。
【図１０】他のスロットル弁制御動作を示すフローチャートである。
【主要部分の符号の説明】
１〜４  シリンダ
５〜８  筒内圧センサ
１６  吸気管
１７  排気管
２１  ＥＣＵ
３８  クランク角センサ
３９ａ〜３９ｄ  吸気管内圧センサ
４０  冷却水温センサ
４１〜４４  インジェクタ
【図１】
0004150097.tif 000004
【図２】
0004150097.tif 000005
【図３】
0004150097.tif 000006
【図４】
0004150097.tif 000007
【図５】
0004150097.tif 000008
【図６】
0004150097.tif 000009
【図７】
0004150097.tif 000010
【図８】
0004150097.tif 000011
【図９】
0004150097.tif 000012
【図１０】
0004150097.tif 000013