(57)【要約】【課題】一部気筒運転と全筒運転を切り換える内燃機関における有効スロットル弁開度をより正確に算出し、機関の燃料供給量や点火時期の制御精度を向上させることができる内燃機関の制御装置を提供する。【解決手段】全筒運転中は、全筒運転用のテーブルをエンジン回転数ＮＥに応じて検索し、有効スロットル弁開度ＴＨＡＣＣＨＸを算出する（Ｓ５３，Ｓ５４）。一部気筒運転中は、一部気筒運転用のテーブルをエンジン回転数ＮＥに応じて検索し、有効スロットル弁開度ＴＨＡＣＣＨＸを算出する（Ｓ５５，Ｓ５６）。有効スロットル弁開度ＴＨＡＣＣＨＸを用いて、予測吸気管内圧力ＨＰＢが算出され、その予測吸気管内圧力ＨＰＢを用いて燃料供給量及び点火時期が算出される。【選択図】  図８
2005002934.tif 000002
【特許請求の範囲】
【請求項１】
複数気筒を有し、前記複数気筒の全てを作動させる全筒運転と、前記複数気筒のうち一部気筒の作動を休止させる一部気筒運転とを切換える切換手段を備えた内燃機関の制御装置において、
前記機関の回転数及び前記機関の吸気系に設けられたスロットル弁の開度を含む、前記機関の運転パラメータを検出する運転パラメータ検出手段と、
前記運転パラメータ検出手段により検出される運転パラメータに応じて前記全筒運転または一部気筒運転を前記切換手段に指令する指令手段と、
前記スロットル弁開度の変化に対する前記機関の吸気管内圧力の変化率が所定変化率以下となる、前記スロットル弁の有効開度を、前記指令手段による指令及び前記機関回転数に応じて算出する有効開度算出手段と、
前記有効開度と前記スロットル弁開度との比較結果に応じて、前記機関を制御する制御手段を備えることを特徴とする内燃機関の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、内燃機関の制御装置に関し、特に複数気筒を有する内燃機関の一部気筒の作動を休止させる気筒休止機構を備えた内燃機関の制御装置に関する。
【０００２】
【従来の技術】
特許文献１には、機関回転数に応じて有効スロットル弁開度を算出し、スロットル弁開度が有効スロットル弁開度より大きいときは、検出したスロットル弁開度を有効スロットル弁開度に置き換えて、吸気管内圧力の予測値を算出する手法が示されている。有効スロットル弁開度は、スロットル弁開度ＴＨの変化に対する吸気管内圧力ＰＢＡの変化率が所定変化率以下となる最小のスロットル弁開度として定義される。図１１は、スロットル弁開度ＴＨと吸気管内圧力ＰＢＡとの関係の一例を示す図であり、３つラインＬ１，Ｌ２，Ｌ３は、それぞれ機関回転数が異なる運転状態に対応する。この図においては、各機関回転数に対応するＴＨ１，ＴＨ２，及びＴＨ３が、有効スロットル弁開度であり、スロットル弁開度ＴＨが有効スロットル弁開度以上となると、吸気管内圧力ＰＢＡの変化率は非常に小さくなる。なお、吸気管内圧力の予測値は、スロットル弁開度が変化する過渡状態における燃料量供給量の制御などに使用される。
【０００３】
また特許文献２には、気筒休止機構を備えた内燃機関が示されており、複数気筒の一部の気筒を休止させる一部気筒運転と、全気筒を作動させる全筒運転とが、機関運転状態に応じて切り換えられる。
【特許文献１】
特開平７−９１３０７号公報
【特許文献２】
特開２００１−２３４７９２号公報
【０００４】
【発明が解決しようとする課題】
気筒休止機構を備えた機関においては、機関回転数を一定としたときの、スロットル弁開度と、吸気管内圧力との関係は、図１２に示すようになる。同図において、実線が一部気筒運転に対応し、破線が全筒運転に対応する。すなわち、スロットル弁開度が比較的小さい範囲では、スロットル弁開度が同一であれば、一部気筒運転中の吸気管内圧力は、全筒運転時の吸気管内圧力より高くなり、全筒運転時に比べてより小さい開度で飽和する。そのため、特許文献１に示された吸気管内圧力の予測手法を、そのまま適用すると、正確な吸気管内圧力の予測値を得ることができないという課題がある。
【０００５】
本発明はこの点に着目してなされたものであり、一部気筒運転と全筒運転を切り換える内燃機関における有効スロットル弁開度をより正確に算出し、機関の過渡運転状態における燃料供給量や点火時期の制御精度を向上させることができる内燃機関の制御装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記目的を達成するため請求項１に記載の発明は、複数気筒を有し、前記複数気筒の全てを作動させる全筒運転と、前記複数気筒のうち一部気筒の作動を休止させる一部気筒運転とを切換える切換手段（３０）を備えた内燃機関の制御装置において、前記機関の回転数（ＮＥ）及び前記機関の吸気系に設けられたスロットル弁の開度（ＴＨ）を含む、前記機関の運転パラメータ（ＴＨ，ＮＥ，ＴＷ，ＴＡ）を検出する運転パラメータ検出手段と、前記運転パラメータ検出手段により検出される運転パラメータに応じて前記全筒運転または一部気筒運転を前記切換手段に指令する指令手段と、前記スロットル弁開度（ＴＨ）の変化に対する前記機関の吸気管内圧力（ＰＢＡ）の変化率が所定変化率以下となる、前記スロットル弁の有効開度（ＴＨＡＣＣＨＸ）を、前記指令手段による指令（ＦＣＹＬＳＴＰ）及び前記機関の回転数（ＮＥ）に応じて算出する有効開度算出手段と、前記有効開度（ＴＨＡＣＣＨＸ）と前記スロットル弁開度（ＴＨ）との比較結果に応じて、前記機関を制御する制御手段を備えることを特徴とする。
【０００７】
この構成によれば、スロットル弁の有効開度が、指令手段による指令（全筒運転か一部気筒運転か）及び機関回転数に応じて算出され、この有効開度と検出スロットル弁開度との比較結果に応じて、前記機関が制御される。したがって、作動気筒数によって異なるスロットル弁の有効開度を正確に算出し、例えば機関の過渡運転状態における燃料供給量や点火時期の制御精度を向上させることができる。
【０００８】
前記制御手段は、前記有効開度（ＴＨＡＣＣＨＸ）を用いて前記吸気管内圧力の予測値（ＨＰＢ）を算出し、その予測値（ＨＰＢ）を用いて前記機関に供給する燃料量（ＴＯＵＴ）を制御することが望ましい。また、前記制御手段は、前記有効開度（ＴＨＡＣＣＨＸ）を用いて、前記機関の加速時における点火時期（ＩＧＬＯＧ）の補正を行うことが望ましい。
【０００９】
【発明の実施の形態】
以下本発明の実施の形態を図面を参照して説明する。
図１は本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。Ｖ型６気筒の内燃機関（以下単に「エンジン」という）１は、＃１，＃２及び＃３気筒が設けられた右バンクと、＃４，＃５及び＃６気筒が設けられた左バンクとを備え、右バンクには＃１〜＃３気筒を一時的に休止させるための気筒休止機構３０が設けられている。図２は、気筒休止機構３０を油圧駆動するための油圧回路とその制御系を示す図であり、この図も図１と合わせて参照する。
【００１０】
エンジン１の吸気管２の途中にはスロットル弁３が配されている。スロットル弁３には、スロットル弁３の開度ＴＨを検出するスロットル弁開度センサ４が設けられており、その検出信号が電子制御ユニット（以下「ＥＣＵ」という）５に供給される。
【００１１】
燃料噴射弁６は図示しない吸気弁の少し上流側に各気筒毎に設けられており、各噴射弁は図示しない燃料ポンプに接続されていると共にＥＣＵ５に電気的に接続されて当該ＥＣＵ５からの信号により燃料噴射弁６の開弁時間が制御される。
【００１２】
スロットル弁３の直ぐ下流には吸気管内絶対圧（ＰＢＡ）センサ７が設けられており、この絶対圧センサ７により電気信号に変換された絶対圧信号はＥＣＵ５に供給される。また、吸気管内絶対圧センサ７の下流には吸気温（ＴＡ）センサ８が取付けられており、吸気温ＴＡを検出して対応する電気信号をＥＣＵ５に供給する。
【００１３】
エンジン１の本体に装着されたエンジン水温（ＴＷ）センサ９はサーミスタ等から成り、エンジン水温（冷却水温）ＴＷを検出して対応する温度信号を出力してＥＣＵ５に供給する。
ＥＣＵ５には、エンジン１のクランク軸（図示せず）の回転角度を検出するクランク角度位置センサ１０が接続されており、クランク軸の回転角度に応じた信号がＥＣＵ５に供給される。クランク角度位置センサ１０は、エンジン１の特定の気筒の所定クランク角度位置でパルス（以下「ＣＹＬパルス」という）を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点（ＴＤＣ）に関し所定クランク角度前のクランク角度位置で（６気筒エンジンではクランク角１２０度毎に）ＴＤＣパルスを出力するＴＤＣセンサ及びＴＤＣパルスより短い一定クランク角周期（例えば３０度周期）でＣＲＫパルスを発生するＣＲＫセンサから成り、ＣＹＬパルス、ＴＤＣパルス及びＣＲＫパルスがＥＣＵ５に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御及びエンジン回転数（エンジン回転速度）ＮＥの検出に使用される。
【００１４】
気筒休止機構３０は、エンジン１の潤滑油を作動油として使用し、油圧駆動される。オイルポンプ３１により加圧された作動油は、油路３２及び吸気側油路３３ｉ，排気側油路３３ｅを介して、気筒休止機構３０に供給される。油路３２と、油路３３ｉ及び３３ｅとの間に、吸気側電磁弁３５ｉ及び排気側電磁弁３５ｅが設けられており、これらの電磁弁３５ｉ，３５ｅはＥＣＵ５に接続されてその作動がＥＣＵ５により制御される。
【００１５】
油路３３ｉ，３３ｅには、作動油圧が所定閾値より低下するとオンする油圧スイッチ３４ｉ，３４ｅが設けられており、その検出信号は、ＥＣＵ５に供給される。また、油路３２の途中には、作動油温ＴＯＩＬを検出する作動油温センサ３３が設けられており、その検出信号がＥＣＵ５に供給される。
【００１６】
気筒休止機構３０の具体的な構成例は、例えば特開平１０−１０３０９７号公報に示されており、本実施形態でも同様の機構を用いている。この機構によれば、電磁弁３５ｉ，３５ｅが閉弁され、油路３３ｉ，３３ｅ内の作動油圧が低いときは、各気筒（＃１〜＃３）の吸気弁及び排気弁が通常の開閉作動を行う一方、電磁弁３５ｉ，３５ｅが開弁され、油路３３ｉ，３３ｅ内の作動油圧が高くなると、各気筒（＃１〜＃３）の吸気弁及び排気弁が閉弁状態を維持する。すなわち、電磁弁３５ｉ，３５ｅの閉弁中は、全ての気筒を作動させる全気筒運転が行われ、電磁弁３５ｉ，３５ｅを開弁させると、＃１〜＃３気筒を休止させ、＃４〜＃６気筒のみ作動させる一部気筒運転が行われる。
【００１７】
吸気管２のスロットル弁３の下流側と、排気管１３との間には、排気還流通路２１が設けられており、排気還流通路２１の途中には排気還流量を制御する排気還流弁（以下「ＥＧＲ弁」という）２２が設けられている。ＥＧＲ弁２２は、ソレノイドを有する電磁弁であり、その弁開度はＥＣＵ５により制御される。ＥＧＲ弁２２には、その弁開度（弁リフト量）ＬＡＣＴを検出するリフトセンサ２３が設けられており、その検出信号はＥＣＵ５に供給される。排気還流通路２１及びＥＧＲ弁２２より、排気還流機構が構成される。
【００１８】
エンジン１の各気筒毎に設けられた点火プラグ１２は、ＥＣＵ５に接続されており、点火プラグ１２の駆動信号、すなわち点火信号がＥＣＵ５から供給される。
ＥＣＵ５には大気圧ＰＡを検出する大気圧センサ１４、エンジン１により駆動される車両の走行速度（車速）ＶＰを検出する車速センサ１５、及び当該車両の変速機のギヤ位置ＧＰを検出するギヤ位置センサ１６が接続されており、これらのセンサの検出信号がＥＣＵ５に供給される。
【００１９】
ＥＣＵ５は、各種センサからの入力信号波形を整形し、電圧レベルを所定レベルに修正し、アナログ信号値をデジタル信号値に変換する等の機能を有する入力回路、中央演算処理回路（以下「ＣＰＵ」という）、ＣＰＵで実行される各種演算プログラム及び演算結果等を記憶する記憶回路、前記燃料噴射弁６に駆動信号を供給する出力回路等から構成される。ＥＣＵ５は、各種センサの検出信号に基づいて、燃料噴射弁６の開弁時間、及び点火時期を制御するとともに、電磁弁３５ｉ，３５ｅの開閉を行って、エンジン１の全筒運転と、一部気筒運転との切り換え制御を行う。
【００２０】
ＥＣＵ５のＣＰＵは、上述した各種センサの検出信号に基づいて、種々のエンジン運転状態を判別するとともに、該判別されたエンジン運転状態に応じて、次式（１）に基づき、ＴＤＣ信号パルスに同期して開弁作動する燃料噴射弁６による燃料噴射時間ＴＯＵＴを演算する。
ＴＯＵＴ＝ＴＩ×ＫＣＭＤ×ＫＬＡＦ×Ｋ１＋Ｋ２              （１）
ここに、ＴＩは燃料噴射弁６の基本燃料噴射時間であり、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて設定されたＴＩマップを検索して決定される。ＴＩマップは、マップ上のエンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに対応する運転状態において、エンジン１に供給される混合気の空燃比がほぼ理論空燃比になるように設定されている。
【００２１】
ＫＣＭＤは目標空燃比係数であり、エンジン回転数ＮＥ、吸気管内絶対圧ＰＢＡ、エンジン水温ＴＷ等のエンジン運転パラメータに応じて設定される。目標空燃比係数ＫＣＭＤは、空燃比Ａ／Ｆの逆数、すなわち燃空比Ｆ／Ａに比例し、理論空燃比のとき値１．０をとるので、目標当量比ともいう。
【００２２】
ＫＬＡＦは、排気管１３に設けられる空燃比センサ（図示せず）の検出空燃比から算出される検出当量比ＫＡＣＴが目標当量比ＫＣＭＤに一致するように算出される空燃比補正係数である。なお、空燃比センサの検出空燃比に応じたフィードバック制御を行わないときは、無補正値（１．０）または学習値に設定される。
Ｋ１及びＫ２は夫々各種エンジンパラメータ信号に応じて演算される他の補正係数および補正変数であり、エンジン運転状態に応じた燃費特性、エンジン加速特性等の諸特性の最適化が図れるような所定値に決定される。
【００２３】
ＥＣＵ５のＣＰＵは、下記式（２）により点火時期ＩＧＬＯＧを算出し、算出された点火時期ＩＧＬＯＧに応じた点火信号を点火プラグ１２に供給する。点火時期ＩＧＬＯＧは、上死点から進角量として定義される。
ＩＧＬＯＧ＝ＩＧＭＡＰ−ＩＧＫＡＲＩ＋ＩＧＣＲ              （２）
【００２４】
ここで、ＩＧＭＡＰは、エンジン回転数ＮＥ及び吸気管内絶対圧ＰＢＡに応じて設定された基本点火時期マップを検索することにより算出される基本点火時期である。ＩＧＫＡＲＩは、エンジン１の加速時（スロットル弁３が急に開いたとき）に、ノッキングを防止するために遅角補正を行う加速リタード補正項である。ＩＧＣＲは、加速リタード補正項以外の他の補正項の和である。
【００２５】
また、ＥＣＵ５のＣＰＵは、スロットル弁開度ＴＨ及びエンジン回転数ＮＥに応じて、吸気管内絶対圧ＰＢＡの予測値である予測吸気管内圧力ＨＰＢを算出し、予測吸気管内圧力ＨＰＢを用いて、基本点火時期ＩＧＭＡＰや燃料噴射弁６による基本燃料噴射時間ＴＯＵＴを算出する。エンジン１が加速または減速される過渡状態においては、検出される吸気管内絶対圧ＰＢＡは実際の吸気管内圧力より変化が遅れるので、予測吸気管内圧力ＨＰＢを使用することにより、正確な点火時期制御及び燃料供給量制御を行うことができる。定常的な運転状態では、予測吸気管内圧力ＨＰＢは、検出吸気管内絶対圧ＰＢＡと一致する。
【００２６】
図３は、一部の気筒を休止させる気筒休止（一部気筒運転）の実行条件を判定する処理のフローチャートである。この処理はＥＣＵ５のＣＰＵで所定時間（例えば１０ミリ秒）毎に実行される。
ステップＳ１１では、始動モードフラグＦＳＴＭＯＤが「１」であるか否かを判別し、ＦＳＴＭＯＤ＝１であってエンジン１の始動（クランキング）中であるときは、検出したエンジン水温ＴＷを始動モード水温ＴＷＳＴＭＯＤとして記憶する（ステップＳ１３）。次いで、始動モード水温ＴＷＳＴＭＯＤに応じて図４に示すＴＭＴＷＣＳＤＬＹテーブルを検索し、遅延時間ＴＭＴＷＣＳＤＬＹを算出する。ＴＭＴＷＣＳＤＬＹテーブルは、始動モード水温ＴＷＳＴＭＯＤが第１所定水温ＴＷ１（例えば４０℃）以下の範囲では、遅延時間ＴＭＴＷＣＳＤＬＹが所定遅延時間ＴＤＬＹ１（例えば２５０秒）に設定され、始動モード水温ＴＷＳＴＭＯＤが第１所定水温ＴＷ１（例えば４０℃）より高く第２所定水温ＴＷ２（例えば６０℃）以下の範囲では、始動モード水温ＴＷＳＴＭＯＤが高くなるほど遅延時間ＴＭＴＷＣＳＤＬＹが減少するように設定され、始動モード水温ＴＷＳＴＭＯＤが第２所定水温ＴＷ２より高い範囲では、遅延時間ＴＭＴＷＣＳＤＬＹは「０」に設定されている。
【００２７】
続くステップＳ１５では、ダウンカウントタイマＴＣＳＷＡＩＴを遅延時間ＴＭＴＷＣＳＤＬＹに設定してスタートさせ、気筒休止フラグＦＣＹＬＳＴＰを「０」に設定する（ステップＳ２５）。これは気筒休止の実行条件が不成立であることを示す。
【００２８】
ステップＳ１１でＦＳＴＭＯＤ＝０であって通常運転モードであるときは、エンジン水温ＴＷが気筒休止判定温度ＴＷＣＳＴＰ（例えば７５℃）より高いか否かを判別する（ステップＳ１２）。ＴＷ≦ＴＷＣＳＴＰであるときは、実行条件不成立と判定し、前記ステップＳ１４に進む。エンジン水温ＴＷが気筒休止判定温度ＴＷＣＳＴＰより高いときは、ステップＳ１２からステップＳ１６に進み、ステップＳ１５でスタートしたタイマＴＣＳＷＡＩＴの値が「０」であるか否かを判別する。ＴＣＳＷＡＩＴ＞０である間は、前記ステップＳ２５に進み、ＴＣＳＷＡＩＴ＝０となると、ステップＳ１７に進む。
【００２９】
ステップＳ１７では、車速ＶＰ及びギヤ位置ＧＰに応じて図５に示すＴＨＣＳテーブルを検索し、ステップＳ１８の判別に使用する上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬを算出する。図５において、実線が上側閾値ＴＨＣＳＨに対応し、破線が下側閾値ＴＨＣＳＬに対応する。ＴＨＣＳテーブルは、ギヤ位置ＧＰ毎に設定されており、各ギヤ位置（２速〜５速）において、大まかには車速ＶＰが増加するほど、上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬが増加するように設定されている。ただし、ギヤ位置ＧＰが２速のときは、車速ＶＰが変化しても上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬは一定に維持される領域が設けられている。またギヤ位置ＧＰが１速のときは、常に全筒運転を行うので、上側閾値ＴＨＣＳＨ及び下側閾値ＴＨＣＳＬは例えば「０」に設定される。また車速ＶＰが同一であれば、低速側ギヤ位置ＧＰに対応する閾値（ＴＨＣＳＨ，ＴＨＣＳＬ）の方が、高速側ギヤ位置ＧＰに対応する閾値（ＴＨＣＳＨ，ＴＨＣＳＬ）より大きな値に設定されている。
【００３０】
ステップＳ１８では、スロットル弁開度ＴＨが閾値ＴＨＣＳより小さいか否かの判別をヒステリシスを伴って行う。具体的には、気筒休止フラグＦＣＹＬＳＴＰが「１」であるときは、スロットル弁開度ＴＨが増加して上側閾値ＴＨＣＳＨに達すると、ステップＳ１８の答が否定（ＮＯ）となり、気筒休止フラグＦＣＹＬＳＴＰが「０」であるときは、スロットル弁開度ＴＨが減少して下側閾値ＴＨＣＳＬを下回ると、ステップＳ１８の答が肯定（ＹＥＳ）となる。
【００３１】
ステップＳ１８の答が肯定（ＹＥＳ）であるときは、大気圧ＰＡが所定圧ＰＡＣＳ（例えば８６．６ｋＰａ（６５０ｍｍＨｇ））以上であるか否かを判別し（ステップＳ１９）、その答が肯定（ＹＥＳ）であるとき、吸気温ＴＡが所定下限温度ＴＡＣＳＬ（例えば−１０℃）以上であるか否かを判別し（ステップＳ２０）、その答が肯定（ＹＥＳ）であるときは、吸気温ＴＡが所定上限温度ＴＡＣＳＨ（例えば４５℃）より低いか否かを判別し（ステップＳ２１）、その答が肯定（ＹＥＳ）であるときは、エンジン水温ＴＷが所定上限水温ＴＷＣＳＨ（例えば１２０℃）より低いか否かを判別し（ステップＳ２２）、その答が肯定（ＹＥＳ）であるときは、エンジン回転数ＮＥが所定回転数ＮＥＣＳより低いか否かを判別する（ステップＳ２３）。
【００３２】
ステップＳ２３の判別は、ステップＳ１８と同様にヒステリシスを伴って行われる。すなわち、気筒休止フラグＦＣＹＬＳＴＰが「１」であるときは、エンジン回転数ＮＥが増加して上側回転数ＮＥＣＳＨ（例えば３５００ｒｐｍ）に達すると、ステップＳ２３の答が否定（ＮＯ）となり、気筒休止フラグＦＣＹＬＳＴＰが「０」であるときは、エンジン回転数ＮＥが減少して下側回転数ＮＥＣＳＬ（例えば３３００ｒｐｍ）を下回ると、ステップＳ２３の答が肯定（ＹＥＳ）となる。
【００３３】
ステップＳ１８〜Ｓ２３の何れかの答が否定（ＮＯ）であるときは、気筒休止の実行条件が不成立と判定し、前記ステップＳ２５に進む。一方ステップＳ１８〜Ｓ２３の答がすべて肯定（ＹＥＳ）であるときは、気筒休止の実行条件が成立していると判定し、気筒休止フラグＦＣＹＬＳＴＰを「１」に設定する（ステップＳ２４）。
【００３４】
気筒休止フラグＦＣＹＬＳＴＰが「１」に設定されているときは、＃１〜＃３気筒を休止させ、＃４〜＃６気筒を作動させる一部気筒運転が実行され、気筒休止フラグＦＣＹＬＳＴＰが「０」に設定されているときは、全気筒＃１〜＃６を作動させる全筒運転が実行される。
【００３５】
図６は、予測吸気管内圧力ＨＰＢを算出する処理のフローチャートである。この処理は、ＥＣＵ５のＣＰＵでＴＤＣパルスの発生に同期して実行される。
ステップＳ３１では、図７に示すＤＴＨＡＣＣ算出処理を実行し、スロットル弁開度ＴＨの変化量ＤＴＨＡＣＣ（１ＴＤＣ期間当たりの変化量、１ＴＤＣ期間は、隣合うＴＤＣパルスの時間間隔）を算出する。この処理では、有効スロットル弁開度ＴＨＡＣＣＨＸが算出され、スロットル弁開度変化量ＤＴＨＡＣＣの算出に使用される。
【００３６】
ステップＳ３２では、始動モードフラグＦＳＴＭＯＤが「１」であるか否かを判別し、ＦＳＴＭＯＤ＝１であってエンジン１の始動中であるときは、予測吸気管内圧力ＨＰＢを、検出した吸気管内絶対圧ＰＢＡに設定する（ステップＳ４１）。ＦＳＴＭＯＤ＝０であって通常運転中であるときは、ステップＳ３１で算出されるスロットル弁開度変化量ＤＴＨＡＣＣの絶対値が、所定変化量ＤＴＨＧＬより大きいか否かを判別する（ステップＳ３３）。このステップＳ３３の判別は、ヒステリシスを伴って行われる。すなわち、スロットル弁開度変化量ＤＴＨＡＣＣの絶対値が小さい定常的な運転状態から増加していくときは、所定上側変化量ＤＴＨＧＬＨ（例えば１ＴＤＣ期間当たり０．６ｄｅｇ）が適用され、スロットル弁開度変化量ＤＴＨＡＣＣの絶対値が大きい過渡的な運転状態から減少していくときは、所定下側変化量ＤＴＨＧＬＬ（例えば１ＴＤＣ期間当たり０．２ｄｅｇ）が適用される。図６の処理は、ＴＤＣパルスの発生に同期して実行されるため、エンジン回転数ＮＥが高くなるほど、スロットル弁開度変化量ＤＴＨＡＣＣの算出周期が短くなる。したがって、所定変化量ＤＴＨＧＬは、エンジン回転数ＮＥが高くなるほど実質的に大きな値になる。
【００３７】
ステップＳ３３の答が否定（ＮＯ）であって、スロットル弁開度ＴＨの変化量が小さいときは、前記ステップＳ４１に進む。ステップＳ３３で、｜ＤＴＨＡＣＣ｜＞ＤＴＨＧＬが成立するときは、スロットル弁開度変化量ＤＴＨＡＣＣが正の値であるか否かを判別する（ステップＳ３４）。この答が肯定（ＹＥＳ）であって、エンジン１の加速時であるときは、エンジン回転数ＮＥに応じて図７に示すＫＴＨＰＨ１テーブルを検索し、加速用補正係数ＫＴＨＰＨ１を算出する（ステップＳ３５）。ＫＴＨＰＨ１テーブルは、大まかにはエンジン回転数ＮＥが増加するほど、加速用補正係数ＫＴＨＰＨ１が増加するように、「１．０」より小さい値に設定されている。図７においてＮＥ１，ＮＥ２，及びＮＥ３は、それぞれ例えば１０００ｒｐｍ、２０００ｒｐｍ、及び５０００ｒｐｍ程度である。次いで、補正係数ＫＴＨＰＨを加速用補正係数ＫＴＨＰＨ１に設定し（ステップＳ３６）、ステップＳ３９に進む。
【００３８】
一方スロットル弁開度変化量ＤＴＨＡＣＣが負の値であって、エンジン１の減速時であるときは、エンジン回転数ＮＥに応じて図７に示すＫＴＨＰＨ２テーブルを検索し、減速用補正係数ＫＴＨＰＨ２を算出する（ステップＳ３７）。ＫＴＨＰＨ２テーブルは、大まかにはエンジン回転数ＮＥが増加するほど、減速用補正係数ＫＴＨＰＨ２が増加するように、加速用補正係数ＫＴＨＰＨ１より小さな値に設定されている。次いで、補正係数ＫＴＨＰＨを減速用補正係数ＫＴＨＰＨ２に設定し（ステップＳ３８）、ステップＳ３９に進む。
【００３９】
ステップＳ３９では、スロットル弁開度変化量ＤＴＨＡＣＣに応じて、ＤＰＢＡＴＨテーブル（図示せず）を検索し、吸気管内圧力変化量ＤＰＢＡＴＨを算出する。ＤＴＰＢＡＴＨテーブルは、吸気管内圧力変化量ＤＰＢＡＴＨがスロットル弁開度変化量ＤＴＨＡＣＣにほぼ比例するように設定されている。
【００４０】
ステップＳ４０では、下記式（３）に補正係数ＫＴＨＰＨ及び吸気管内圧力変化量ＤＰＢＡＴＨを適用し、予測吸気管内圧力ＨＰＢを算出する。
ＨＰＢ＝ＨＰＢＷ＋ＫＴＨＰＨ×ＤＰＢＡＴＨ                    （３）
ここで、ＨＰＢＷは、予測吸気管内圧力ＨＰＢの前回値である。
【００４１】
図８は、図６のステップＳ３１で実行されるＤＴＨＡＣＣ算出処理のフローチャートである。
ステップＳ５２では、気筒休止フラグＦＣＹＬＳＴＰが「１」であるか否かを判別する（ステップＳ５２）。ＦＣＹＬＳＴＰ＝０であって全筒運転中であるときは、エンジン回転数ＮＥに応じて図９に示すＴＨＡＣＣＨテーブルを検索し、全筒運転用の有効スロットル弁開度ＴＨＡＣＣＨを算出する（ステップＳ５３）。ＴＨＡＣＣＨテーブルは、エンジン回転数ＮＥが高くなるほど、有効スロットル弁開度ＴＨＡＣＣＨが大きくなるように設定されている。続くステップＳ５４では、有効スロットル弁開度ＴＨＡＣＣＨＸを、全筒運転用の有効スロットル弁開度ＴＨＡＣＣＨに設定し（ステップＳ５４）、ステップＳ５７に進む。
【００４２】
一方ＦＣＹＬＳＴＰ＝１であって一部気筒運転中であるときは、エンジン回転数ＮＥに応じて図９に示すＴＨＡＣＣＨＣＳテーブルを検索し、一部気筒運転用の有効スロットル弁開度ＴＨＡＣＣＨＣＳを算出する（ステップＳ５５）。ＴＨＡＣＣＨＣＳテーブルは、エンジン回転数ＮＥが高くなるほど、有効スロットル弁開度ＴＨＡＣＣＨＣＳが大きくなるように設定されている。また、ＴＨＡＣＣＨＣＳテーブルの設定値は、同一のエンジン回転数ＮＥにおいては、ＴＨＡＣＣＨテーブルの設定値より大きくなるように設定されている。続くステップＳ５６では、有効スロットル弁開度ＴＨＡＣＣＨＸを、一部気筒運転用の有効スロットル弁開度ＴＨＡＣＣＨＣＳに設定し、ステップＳ５７に進む。
【００４３】
ステップＳ５７では、前回算出された予測処理用スロットル弁開度ＴＨＡＣＣを、前回値ＴＨＡＣＣＺとして記憶する。次いで、始動モードフラグＦＳＴＭＯＤが「１」であるか否かを判別し（ステップＳ５８）、ＦＳＴＭＯＤ＝１であってエンジン１の始動中は、予測処理用スロットル弁開度ＴＨＡＣＣを、検出したスロットル弁開度ＴＨに設定する（ステップＳ５９）。
【００４４】
ステップＳ５８でＦＳＴＭＯＤ＝０であって通常運転中であるときは、スロットル弁開度ＴＨが、有効スロットル弁開度ＴＨＡＣＣＨＸより大きいか否かを判別する。ＴＨ≦ＴＨＡＣＣＨＸであるときは、予測処理用スロットル弁開度ＴＨＡＣＣを、検出したスロットル弁開度ＴＨに設定し（ステップＳ６１）、無効開度フラグＦＴＨＡＣＣＨを「０」に設定する（ステップＳ６２）。その後、ステップＳ６７に進み、下記式（４）によりスロットル弁開度変化量ＤＴＨＡＣＣを算出する。
ＤＴＨＡＣＣ＝ＴＨＡＣＣ−ＴＨＡＣＣＺ                    （４）
【００４５】
ステップＳ６０で、スロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸより大きいときは、予測処理用スロットル弁開度ＴＨＡＣＣを有効スロットル弁開度ＴＨＡＣＣＨＸに設定する（ステップＳ６３）。次いで、無効開度フラグＦＴＨＡＣＣＨが「１」であるか否かを判別し（ステップＳ６４）、無効開度フラグＦＴＨＡＣＣＨが「０」であるときは、無効開度フラグＦＴＨＡＣＣＨを「１」に設定して（ステップＳ６５）、前記ステップＳ６７に進む。ステップＳ６５で無効開度フラグＦＴＨＡＣＣＨが「１」に設定されると、本処理の次回以降の実行時には、ステップＳ６４からステップＳ６６に進み、スロットル弁開度変化量ＤＴＨＡＣＣを「０」に設定する。
【００４６】
図８の処理によれば、全筒運転時は全筒運転用の有効スロットル弁開度ＴＨＡＣＣＨが算出され、一部気筒運転時は一部気筒運転用の有効スロットル弁開度ＴＨＡＣＣＨＣＳが算出される。したがって、それぞれの運転状態に適した有効スロットル弁開度ＴＨＡＣＣＨＸ及びスロットル弁開度変化量ＤＴＨＡＣＣを得ることができる。
【００４７】
図１０は、前記式（２）に適用される点火時期の加速リタード補正項ＩＧＫＡＲＩを算出する処理のフローチャートである。この処理は、ＥＣＵ５のＣＰＵでＴＤＣパルスの発生に同期して実行される。
ステップＳ７２では、指定故障検知フラグＦＦＳＰＫＡＲＩが「１」であるか否かを判別する。指定故障検知フラグＦＦＳＰＫＡＲＩは、予め決められた故障が検出されているとき「１」に設定される。ＦＦＳＰＫＡＲＩ＝０であるときは、エンジン水温ＴＷが所定水温ＴＷＫＡＲＩ（例えば６０℃）以上であるか否かを判別する（ステップＳ７３）。ステップＳ７２の答が肯定（ＹＥＳ）、またはステップＳ７３の答が否定（ＮＯ）であるときは、ステップＳ７４に進み、カウンタＣＫＡＲＩの値を「０」に設定する。カウンタＣＫＡＲＩは、ステップＳ８６で所定カウント値ＣＫＡＲＩＸに設定され、ステップＳ８５でデクリメントされるカウンタである。続くステップＳ７５では、加速リタード補正項ＩＧＫＡＲＩを「０」に設定し、本処理を終了する。
【００４８】
ステップＳ７３の答が肯定（ＹＥＳ）であるときは、ステップＳ７７に進み、スロットル弁開度の検出変化量ＤＴＨが、加速判定閾値ＤＴＨＫＡＲＩ（例えば１ＴＤＣ期間当たり１ｄｅｇ）以上であるか否かを判別する。検出変化量ＤＴＨは、検出スロットル弁開度ＴＨの今回値ＴＨ（ｎ）と、前回値ＴＨ（ｎ−１）との差（ＤＴＨ（ｎ）−ＤＴＨ（ｎ−１））として算出される。図８の処理は、ＴＤＣパルスの発生に同期して実行されるため、エンジン回転数ＮＥが高くなるほど、スロットル弁開度の検出変化量ＤＴＨの算出周期が短くなる。したがって、加速判定閾値ＤＴＨＫＡＲＩは、エンジン回転数ＮＥが高くなるほど実質的に相対的に大きな値になる。
【００４９】
ステップＳ７７の答が肯定（ＹＥＳ）であって、エンジン１の加速時と判定されたときは、エンジン回転数ＮＥが所定回転数ＮＥＫＡＲＩＨ（例えば６０００ｒｐｍ）以下か否かを判別する（ステップＳ７９）。この答が肯定（ＹＥＳ）であるときは、さらにスロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸ以下であるか否かを判別する（ステップＳ８０）。
【００５０】
ステップＳ８０の答が肯定（ＹＥＳ）であって、スロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸ以下であるときは、減算項ＤＩＧＫＡＲＩを所定減算値ＤＩＧＫＡＲＩＸ（例えば０．８ｄｅｇ）に設定する（ステップＳ８７）とともに、加速リタード補正項ＩＧＫＡＲＩを所定リタード値ＩＧＫＡＲＩＩ（例えば４ｄｅｇ）に設定する（ステップＳ８８）。これにより、加速リタード補正が行われる。
【００５１】
ステップＳ７９またはＳ８０の答が否定（ＮＯ）であるとき、すなわちエンジン回転数ＮＥが所定回転数ＮＥＫＡＲＩＨを越えたとき、またはスロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸを越えたときは、カウンタＣＫＡＲＩの値が「０」であるか否かを判別する（ステップＳ８１）。ステップＳ７９またはＳ８０の答が否定（ＮＯ）となった直後は、ステップＳ８１の答は否定（ＮＯ）となり、カウンタＣＫＡＲＩの値を「１」だけデクリメントし（ステップＳ８５）、前記ステップＳ８７に進む。
【００５２】
その後、ＣＫＡＲＩ＝０となると、ステップＳ８１からステップＳ８２に進み、下記式（５）に減算項ＤＩＧＫＡＲＩを適用し、加速リタード補正項ＩＧＫＡＲＩを漸減させる。
ＩＧＫＡＲＩ＝ＩＧＫＡＲＩ−ＤＩＧＫＡＲＩ                    （５）
【００５３】
続くステップＳ８３では、加速リタード補正項ＩＧＫＡＲＩが「０」より小さいか否かを判別し、ＩＧＫＡＲＩ≧０であるときは直ちに本処理を終了する。加速リタード補正項ＩＧＫＡＲＩが「０」より小さいときは、「０」に設定する（ステップＳ８４）。
【００５４】
またスロットル弁開度ＴＨの増加が終わり、ステップＳ７７の答が否定（ＮＯ）となったときは、カウンタＣＫＡＲＩの値を「０」に設定し（ステップＳ７８）、前記ステップＳ８２に進む。
【００５５】
図１０の処理によれば、スロットル弁開度ＴＨが増加する加速時において、エンジン回転数ＮＥが所定回転数ＮＥＫＡＲＩＨ以下であり、かつスロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸ以下であるとき、加速リタード補正項ＩＧＫＡＲＩが所定リタード値ＩＧＫＡＲＩＩに設定され、点火時期の加速リタード補正が行われる。スロットル弁開度ＴＨが有効スロットル弁開度ＴＨＡＣＣＨＸを越えると、加速リタード補正項ＩＧＫＡＲＩは「０」となるまで漸減される。
【００５６】
以上のように本実施形態では、作動気筒数（全筒運転か一部気筒運転か）及びエンジン回転数ＮＥに応じて算出される有効スロットル弁開度ＴＨＡＣＣＨＸを用いて、予測吸気管内圧力ＨＰＢが算出され、予測吸気管内圧力ＨＰＢ及びエンジン回転数ＮＥに応じて基本燃料噴射時間ＴＩ、あるいは基本点火時期ＩＧＭＡＰが算出される。有効スロットル弁開度ＴＨＡＣＣＨＸは、全気筒運転及び一部気筒運転のそれぞれに適したものが得られるため、全気筒運転及び一部気筒運転のいずれにおいても、過渡的な運転状態において適切な燃料供給量制御及び点火時期制御を行うことができる。
【００５７】
さらに点火時期の加速リタード補正項ＩＧＫＡＲＩも、上記有効スロットル弁開度ＴＨＡＣＣＨＸを用いて算出されるので（図１０、ステップＳ８０）、全気筒運転及び一部気筒運転のいずれにおいても適切な加速リタード補正を行うことができる。
【００５８】
本実施形態では、気筒休止機構３０が切換手段を構成し、スロットル弁開度センサ４、吸気温センサ８、エンジン水温センサ９、及びクランク角度位置センサ１０が運転パラメータ検出手段を構成し、ＥＣＵ５が、指令手段、有効開度算出手段、及び制御手段を構成する。より具体的には、図３の処理が指令手段に相当し、図８のステップＳ５２〜Ｓ５６が有効開度算出手段に相当し、図８のステップＳ５７〜Ｓ６７、図６のステップＳ３２〜Ｓ４１及び図１０の処理、並びに式（１）及び（２）による燃料噴射時間ＴＯＵＴ及び点火時期ＩＧＬＯＧの算出処理（図示せず）が、制御手段に相当する。
【００５９】
なお本発明は上述した実施形態に限るものではなく、種々の変形が可能である。例えば、上述した実施形態では、６気筒のエンジンを示したが、本発明は、４気筒エンジンあるいは８気筒エンジンなどにも適用可能である。また、休止させる気筒数は、３気筒に限るものではなく、例えば４気筒エンジンでは１気筒あるいは２気筒を休止させ、８気筒エンジンでは４気筒を休止させるようにしてもよい。
【００６０】
また本発明は、クランク軸を鉛直方向とした船外機などのような船舶推進機用エンジンなどの制御にも適用が可能である。
【００６１】
【発明の効果】
以上詳述したように請求項１に記載の発明によれば、スロットル弁の有効開度が、指令手段による指令（全筒運転か一部気筒運転か）及び機関回転数に応じて算出され、この有効開度と検出スロットル弁開度との比較結果に応じて、前記機関が制御される。したがって、作動気筒数によって異なるスロットル弁の有効開度を正確に算出し、例えば機関の過渡運転状態における燃料供給量や点火時期の制御精度を向上させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態にかかる内燃機関及びその制御装置の構成を示す図である。
【図２】気筒休止機構の油圧制御系の構成を示す図である。
【図３】気筒休止条件を判定する処理のフローチャートである。
【図４】図３の処理で使用されるＴＭＴＷＣＳＤＬＹテーブルを示す図である。
【図５】図３の処理で使用されるＴＨＣＳテーブルを示す図である。
【図６】予測吸気管内圧力（ＨＰＢ）を算出する処理のフローチャートである。
【図７】図６の処理で使用されるテーブルを示す図である。
【図８】図６の処理で実行される、スロットル弁開度変化量（ＤＴＨＡＣＣ）を算出する処理のフローチャートである。
【図９】図８の処理で使用されるテーブルを示す図である。
【図１０】点火時期の加速リタード補正項（ＩＧＫＡＲＩ）を算出する処理のフローチャートである。
【図１１】有効スロットル弁開度を説明するための図である。
【図１２】スロットル弁開度（ＴＨ）と吸気管内圧力（ＰＢＡ）との関係を示す図である。
【符号の説明】
１  内燃機関
２  吸気管
４  スロットル弁開度センサ（運転パラメータ検出手段）
５  電子制御ユニット（指令手段、有効開度算出手段、制御手段）
８  吸気温センサ（運転パラメータ検出手段）
９  エンジン水温センサ（運転パラメータ検出手段）
１０  クランク角度位置センサ（運転パラメータ検出手段）
３０  気筒休止機構（切換手段）
【図１】
2005002934.tif 000003
【図２】
2005002934.tif 000004
【図３】
2005002934.tif 000005
【図４】
2005002934.tif 000006
【図５】
2005002934.tif 000007
【図６】
2005002934.tif 000008
【図７】
2005002934.tif 000009
【図８】
2005002934.tif 000010
【図９】
2005002934.tif 000011
【図１０】
2005002934.tif 000012
【図１１】
2005002934.tif 000013
【図１２】
2005002934.tif 000014