(57)【要約】      （修正有）【課題】気筒休止運転から全気筒運転へと切り換えるときに、吸入空気量の変化の遅れを発生させないエンジンの制御装置を提供する。【解決手段】車両に搭載され、休止運転と全気筒運転とを切り換え可能な内燃機関の制御装置が提供される。この内燃機関の制御装置は、内燃機関の運転状態を検出する検出手段と、アクセルペダルとは独立して駆動可能なスロットル弁と、運転状態に基づいて、休止運転の領域から全気筒運転の領域への切り換えを規定する第１のしきい値を設定するしきい値設定手段と、スロットル弁の開度が、第１のしきい値と、該第１のしきい値より高負荷側に設定された第２のしきい値との間に存在するとき、休止運転を所定時間継続させる制御手段と、所定時間にわたり、休止運転が継続したならば、該休止運転を前記全気筒運転に切り換える切り換え手段と、を備える。該制御手段は、該所定時間の間は、スロットル弁の開度について上限値を設定する。【選択図】図１０
2006283720.tif 000002
【特許請求の範囲】
【請求項１】
車両に搭載され、複数の気筒のうち一部の気筒の運転を休止させる休止運転と、前記複数の気筒の全てを作動させる全気筒運転とを切り換えることができる内燃機関の制御装置であって、
前記車両の運転状態を検出する検出手段と、
アクセルペダルとは独立して駆動可能なスロットル弁と、
前記運転状態に基づいて、前記休止運転から前記全気筒運転への切り換えを規定する第１のしきい値を設定するしきい値設定手段と、
前記スロットル弁の開度が、前記第１のしきい値と、該第１のしきい値より高負荷側に設定された第２のしきい値との間に存在するとき、前記休止運転を所定時間継続させる制御手段と、
前記所定時間にわたり、前記休止運転が継続したならば、該休止運転を前記全気筒運転に切り換える切り換え手段と、を備え、
前記制御手段は、前記所定時間の間、前記スロットル弁の開度について上限値を設定する、
内燃機関の制御装置。
【請求項２】
前記制御手段は、前記内燃機関の回転数に応じて前記上限値を設定する、請求項１に記載の内燃機関の制御装置。
【請求項３】
前記切り換え手段によって前記休止運転から前記全気筒運転に切り換えるとき、前記内燃機関の出力を所定量ずつ段階的に前記全気筒運転の出力へと移行させる手段をさらに備える、
請求項１に記載の内燃機関の制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は内燃機関の制御装置に関し、特に、一部気筒の休止が可能な内燃機関においてスロットル開度を制御する内燃機関の制御装置に関する。
【背景技術】
【０００２】
低出力で運転可能なときに内燃機関の一部の気筒の運転を休止させ燃費向上を図ることができる内燃機関が開発されている。この内燃機関は、運転状態に応じて一部の気筒の運転を休止（以降、気筒休止運転と記述）するように制御されるが、全気筒運転と気筒休止運転との切換時にエンジンの出力トルクが変動しトルクショックを発生させることがある。
【０００３】
全気筒運転から気筒休止運転へと切り換えるときのこのような不具合を解消するため、特許文献１には、運転状態が所定の運転領域に入ったとき、トルク変動が少なくなるようにスロットル開度を気筒休止運転用の開度に近づく方向に所定量変化させ、気筒休止運転に切り換える制御手法が記載されている。
【特許文献１】特開平１１−３３６５７５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
一方、気筒休止運転から全気筒運転への切換時には、気筒休止運転における最大トルクになるように一時的にスロットルを制御する。すなわち、気筒休止運転における最大トルクにするために、スロットルをほぼ全開にまで開く制御を行う。しかしながら、このようにスロットルをほぼ全開にまで開いてから全気筒運転に切り換えを行うと、全気筒運転の開度へとスロットルを絞るのに時間を要してしまい、切換時における吸入空気量の変化に遅れを生じてしまう。
【０００５】
本発明は、以上のような事情に基づいてなされたものであり、気筒休止運転から全気筒運転へと切り換えるときに、吸入空気量の変化の遅れを発生させないエンジンの制御装置を提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明の内燃機関の制御装置は、発明の一形態（請求項１）によると、車両に搭載され、複数の気筒のうち一部の気筒の運転を休止させる休止運転と、複数の気筒の全てを作動させる全気筒運転とを切り換えることができる内燃機関の制御装置であって、内燃機関の運転状態を検出する検出手段と、アクセルペダルとは独立して駆動可能なスロットル弁と、該運転状態に基づいて、休止運転から全気筒運転への切り換えを規定する第１のしきい値(THCSH)を設定するしきい値設定手段と、スロットル弁の開度が、該第１のしきい値と、該第１のしきい値より高負荷側に設定された第２のしきい値(THCSH+α)との間に存在するとき、休止運転を所定時間（TTHCSH）継続させる制御手段と、該所定時間にわたり、該休止運転が継続したならば、該休止運転を全気筒運転に切り換える切り換え手段と、を備える。該制御手段は、さらに、該所定時間の間は、スロットル弁の開度について上限値（THMAX）を設定する。
【０００７】
この発明によると、休止運転から全気筒運転に切り換える所定時間の間は、スロットル弁の開度に上限値を設けるので、スロットル弁が必要以上に開くことがない。よって、一部気筒休止運転から全気筒運転への切り換え時においてスロットル弁を絞るときに、速やかに目標のスロットル開度に移動することができる。そして、吸入空気量の応答遅れを低減することができる。
【０００８】
さらに、スロットル弁の開度が第１のしきい値と第２のしきい値の間に入った状態が所定時間より長く継続しないと全気筒運転に切り替らないので、第１のしきい値の近傍で切り換えが頻繁に発生することを抑制して燃費を向上させることができる。
【０００９】
また、この発明のもう一つの形態（請求項２）による内燃機関の制御装置においては、上記の上限値は、内燃機関の回転数に応じて設定される。
【００１０】
この発明によると、出力トルクはエンジン回転数により変化するので、エンジン回転数に応じて上記の上限値を可変に設定することでトルクの上限に対応するスロットル弁の開度の上限値を適切に設定することができる。
【００１１】
また、この発明のもう一つの形態（請求項３）による内燃機関の制御装置においては、休止運転から全気筒運転に切り換えるとき、内燃機関の出力を所定量ずつ段階的に全気筒運転の出力へと移行させる。
【００１２】
この発明によると、休止運転から全気筒運転に切り換えるときに内燃機関の出力を段階的に全気筒運転の出力へと戻すので、切り換え時のトルクショックを減らすことができる。
【発明を実施するための最良の形態】
【００１３】
１．装置構成
次に図面を参照してこの発明の実施の形態を説明する。図１は、この発明の実施形態に従う、内燃機関（エンジン）およびその制御装置の全体構成図である。
【００１４】
電子制御ユニット（以下、「ＥＣＵ」）という）100は、車両の各部から送られてくるデータを受け入れる入力インターフェース100a、車両の各部の制御を行うための演算を実行するＣＰＵ100b、読み取り専用メモリ（ＲＯＭ）およびランダムアクセスメモリ（ＲＡＭ）を有するメモリ100ｃ、および車両の各部に制御信号を送る出力インターフェース100dを備えている。メモリ100cのＲＯＭには、車両の各部の制御を行うためのプログラム、テーブル、およびマップなどの各種のデータが格納されている。この発明に従うスロットル開度算出プロセスのプログラム、気筒休止決定プロセスのプログラム、および該プログラムの実行の際に用いるデータは、このＲＯＭに格納されている。ＲＯＭは、ＥＰＲＯＭのような書き換え可能なＲＯＭでもよい。ＲＡＭには、ＣＰＵ100bによる演算のための作業領域が設けられる。車両の各部から送られてくるデータおよび車両の各部に送り出す制御信号は、ＲＡＭに一時的に記憶される。
【００１５】
各種センサからの入力信号はＥＣＵ100の入力インターフェース100aに渡される。入力インターフェース100aは、受け取ったアナログ信号をデジタル信号に変換する。ＣＰＵ100bは、変換されたデジタル信号を処理し、メモリ100cに格納されているプログラムに従って演算を実行し、車の各部の装置に送る制御信号を作り出す。この制御信号は出力インターフェース100dに送られ、出力インターフェース100dは、電子制御スロットル103、燃料噴射弁106、気筒休止機構130を制御する電磁弁135e,iに制御信号を送る。
【００１６】
本実施形態におけるエンジン101は、Ｖ型６気筒のエンジンであり、１番から３番の気筒が設けられた第１バンクと、４番から６番の気筒が設けられた第２バンクとを有する。そして、第１バンクの１番から３番の気筒を一時的に休止させ一部気筒休止運転させるための気筒休止機構130が設けられている。本実施形態において、気筒休止は、片側バンクの吸気側と排気側のバルブリフトを停止させることにより行っている。
【００１７】
気筒休止機構130は、たとえばエンジン101の潤滑油を作動油として使用し、油圧駆動される。オイルポンプ131によって加圧された作動油は、油路132および吸気側の休止用油路210、排気側の休止用油路220を介して、気筒休止機構130に供給される。油路132と、吸気側の休止用油路210および排気側の休止用油路220との間に、吸気側電磁弁135iおよび排気側電磁弁135eが設けられており、これらの電磁弁はＥＣＵ100に接続されて、その作動がＥＣＵ100により制御される。また、通常運転用油路210が、気筒休止機構130に接続されており、気筒休止機構130の作動油をエンジン101のオイルパンに逃がすことができるようになっている。
【００１８】
図１および図２を参照して一実施形態における気筒休止エンジンの吸気バルブリフト停止の構造を説明する。本実施例における気筒休止エンジンは、気筒休止作動時において排気バルブリフトも同時に停止させる構造となっているが、この休止機構は吸気バルブリフト停止機構と同様の機構であるため説明を省略する。
【００１９】
吸気ロッカーシャフト206には吸気ロッカーアーム207と、その両側に位置する一対の休止用ロッカーアーム208とがロッカーシャフト206の円周方向に揺動可能に支持されている。吸気ロッカーアーム207の基端部には、前記吸気カムに当接可能なローラ209が設けられるとともに、休止用ロッカーアーム208の基端部には図示しない休止用カムに当接可能なローラが設けられる。そして、一対の休止用ロッカーアーム208の先端は、気筒の一対の吸気弁の図示しないステムエンドに当接する。
【００２０】
吸気ロッカーアーム207および一対の休止用ロッカーアーム208を同軸に貫通するシリンダ孔の内部に、ピストンＡ201、ピストンＢ202およびピストンＣ203が摺動自在に支持される。ピストンＡ201は休止用ロッカーアーム208aのシリンダ孔の内部に配置され、吸気ロッカーシャフト206の内部に形成した油路210から供給される油圧によってスプリング204を押し下げる方向に駆動される。ピストンＡ201に隣接して配置されたピストンＢ202は、休止用ロッカーアーム208のシリンダ孔および吸気ロッカーアーム207のシリンダ孔にまたがる連結位置と、休止用ロッカーアーム208aのシリンダ孔から吸気ロッカーアーム207のシリンダ孔に押し出された連結解除位置との間を移動可能である。ピストンＢ202に隣接して配置され、吸気ロッカーアーム207と休止用ロッカーアーム208bのシリンダ孔内に収納されたピストンＣ203は、スプリング204および通常運転用油路211からの油圧によってピストンＢ202に当接する方向に押し当てられる。
【００２１】
上記構成により、ＥＣＵ100による電磁弁135iの制御により吸気ロッカーシャフト206の休止用油路210に油圧が供給されていないとき、スプリング204および通常運転用油路211からの油圧によって押し当てられたピストンＢ202およびピストンＣ203は図２(a)に示した連結位置にあり、吸気ロッカーアーム207を一対の休止用ロッカーアーム208に一体に結合させている。従って、カムシャフトに設けた吸気カムにローラ209を当接させた吸気ロッカーアーム207が吸気ロッカーシャフト206周りに揺動すると、それと一体に結合された一対の休止用ロッカーアーム208が揺動して吸気弁を開閉駆動する。
【００２２】
一方、ＥＣＵ100による電磁弁135iの制御により吸気ロッカーシャフト206の休止用油路210に油圧を供給し、ピストンＡ201、ピストンＢ202およびピストンＣ203がスプリングに抗し、スプリングが配置されている領域205に充填されていたオイルが通常運転用油路211へとリークして図２(b)の位置に移動し、ピストンＢ202が連結解除位置に達して吸気ロッカーアーム207と休止用ロッカーアーム208との連結が解除される。その結果、吸気ロッカーアーム207の揺動は休止用ロッカーアーム208に伝達されなくなり、休止用ロッカーアーム208は揺動を停止し、吸気弁は閉弁状態に保持される。
【００２３】
吸気ロッカーシャフト206の休止用油路210の油圧の供給を絶つと、ピストンＣ203がスプリング204の弾発力で図２(a)の位置に移動し、ピストンＢも連結位置に達して吸気ロッカーアーム207と休止用ロッカーアーム208とが連結される。その結果、吸気ロッカーアーム207の揺動が休止用ロッカーアーム208に伝達されるようになり、吸気ロッカーアーム207の揺動に伴って吸気弁は再び開閉駆動される。
【００２４】
次にエンジン101の周辺の各装置について説明する。ＥＣＵ100には、エンジン101のクランク軸（図示せず）の回転角度を検出するクランク角度位置センサ117が接続されており、クランク軸の回転角度に応じた信号がＥＣＵ100に供給される。クランク角度位置センサ117は、エンジン101の特定の気筒の所定クランク角度位置でパルス（以下「ＣＹＬパルス」という）を出力する気筒判別センサ、各気筒の吸入行程開始時の上死点（ＴＤＣ）に関し所定クランク角度前のクランク角度位置で（６気筒エンジンではクランク１２０度ごとに）ＴＤＣパルスを出力するＴＤＣセンサ、およびＴＤＣパルスより短い一定クランク角周期（例えば３０度周期）でＣＲＫパルスを発生するＣＲＫセンサから成り、ＣＹＬパルス、ＴＤＣパルス、およびＣＲＫパルスがＥＣＵ100に供給される。これらの信号パルスは、燃料噴射時期、点火時期等の各種タイミング制御およびエンジン回転数NEの検出に使用される。
【００２５】
エンジン101には、吸気管102が連結されている。吸気管102の上流側には電子制御式のスロットル弁（ＤＢＷ）103が配されている。このスロットル弁103は、ＥＣＵ100からの信号によりスロットル弁に連結されたモータが回転し目標のスロットル開度となるように構成されている。スロットル弁103は、アクセルペダルとは独立してＥＣＵ100により駆動されることができる。また、スロットル弁103に連結されたスロットル弁開度センサ（θＴＨ）104は、スロットル弁103の開度（スロットル開度）に応じた電気信号を出力してＥＣＵ100に供給する。
【００２６】
吸気管圧力（ＰＢ）センサ113は、スロットル弁103の下流側に装着されており、吸気管圧力ＰＢ検出しＥＣＵ100に送る。
【００２７】
車速（ＶＰ）センサ122が図示しないトランスミッション出力軸に取り付けられている。そして、車速センサの出力がＥＣＵ100に接続されており、車両の速度VPを検出しＥＣＵ100に送る。
【００２８】
図示しないアクセルペダルには、アクセルの踏み込み量を検知するアクセルペダルセンサ（ＡＰ）125が取り付けられており、アクセルペダルの踏み込み量APに対応する信号がＥＣＵ100に送られる。
【００２９】
エンジン101には、たとえば図示しないオートマチック式の５段階変速機が連結されており、該変速機は、選択された変速比に従い、エンジン101の駆動力を車両の駆動輪に伝達する。本実施形態では、周知のオートマチックトランスミッションを使用することとして説明する。
【００３０】
エンジン101には排気管112が接続され、排気管112の途中に設けられた排気ガス浄化装置である三元触媒141を介して排気する。
【００３１】
その他、エンジン101を運転するために必要なセンサ類（エンジン水温センサ（ＴＷ）118、ＬＡＦセンサ（広域空燃比センサ）119）が取り付けられる。また、エンジン101を運転するために必要な装置である図示しない点火装置なども取り付けられている。
【００３２】
２．切り換え動作
次に、図１０を参照しつつ本発明の一実施形態における気筒休止運転と全気筒運転との間の切換動作の概要を説明する。図１０では、スロットル開度によってＡからＤの４つの領域に分けられている。領域ＡとＢとを分けているラインは、全気筒運転から気筒休止運転への切り換えラインであり、スロットル開度THCSLにより規定される。また、領域ＢとＣとを分けているラインは、気筒休止運転から全気筒運転へのタイマ条件付きの切り換えラインであり、スロットル開度THCSHにより規定される。またTHCSHの右側に描かれている領域ＣとＤとを分ける破線は、気筒休止運転から全気筒運転への切り換えラインであり、スロットル開度THCSH2により規定される。
【００３３】
THCSHは、後述するようにエンジン回転数NE、車速VP、およびギヤ段値に基づいて求められる。THCSLは、THCSHを基準としてこれよりα（たとえば、２(deg)）だけ小さな値として定義される。また、THCSH2は、基準となるTHCSHよりα（たとえば、２(deg)）だけ大きな値として定義される。このように、Ｃ領域は、基準のスロットル開度THCSHと、それよりも高負荷側に設定されたスロットル開度THCSH2により規定される。
【００３４】
図１０において、領域Ａの「気筒休止運転許可ゾーン」は、気筒休止運転を行う領域である。一方、領域Ｄの「気筒休止運転禁止ゾーン」は、全気筒運転を行う領域である。よって、スロットル開度が領域Ａに入ったときには、全気筒運転から気筒休止運転へと切り換える。また、スロットル開度が領域Ｄに入ったときには、気筒休止運転から全気筒運転へと切り換える。
【００３５】
領域Ｃの範囲は、気筒休止運転から全気筒運転への切り換えを、所定のタイマの値に基づいて制御する領域である。本発明の一実施形態では、スロットル開度が気筒休止運転の領域から領域Ｃに入ったとき、所定のタイマにタイマ値が設定され、タイマのカウントダウンを開始する。そして、スロットル開度が領域Ｃに入っていても、このタイマ値が０にならない限りは気筒休止運転から全気筒運転へは切り換えない。その後、タイマ値が０になり、依然としてスロットル開度が領域Ｃにあるとき、気筒休止運転から全気筒運転へと切り換える。このように、所定時間の間残留しなければ全気筒運転へと切り換えない領域Ｃを設けることで、THCSHの左の領域からTHCSHのラインをわずかに超えるスロットル操作が頻繁に発生した場合であっても、気筒休止運転から全気筒運転へと頻繁に切り換えることを防止して、燃費を向上させることができる。
【００３６】
本発明の一実施形態では、図１０に示すようにトルクリミットラインが設けられている。また、図１０に描かれている気筒休止運転トルクラインは、気筒休止運転中のスロットル開度に対するトルクの特性を表しており、全気筒運転トルクラインは、全気筒運転中のスロットル開度に対するトルクの特性を表している。
【００３７】
気筒休止運転トルクラインは、スロットル開度を全開にする以前にほぼ気筒休止運転トルクの最大値になってしまう。特に、気筒休止運転から全気筒運転への切換領域（領域Ｃ）では、気筒休止運転トルクは、すでにほぼ最大トルクに近づいており、スロットルを大きく変化させても得られるトルク変化は小さい。
【００３８】
このような領域で必要以上にスロットルを開けてしまうことは、切換後に全気筒運転のトルクラインに乗せるように、たとえば「ａ」に対応するスロットル開度にまでスロットル弁を戻すときに時間を要してしまい、吸入空気の応答遅れを発生させてしまう。このような理由から、本発明の一実施形態では、トルクリミットラインを設けておき、気筒休止運転時に、これ以上のトルクを要求するときであっても、トルクリミットラインとの交点「ｃ」に対応するスロットル開度THMAXよりスロットル弁を開けないように、該上限値THMAXを設けて制御する。
【００３９】
スロットル開度が領域Ｃにとどまり、タイマが０となりＥＣＵ100からの信号により、電磁弁135i,eを制御して気筒休止運転から全気筒運転への機械的な切換をするとき、要求トルク値から所定値を差し引いたトルクになるように全気筒運転時のスロットル開度を制御する。気筒休止運転から全気筒運転への切換時、全気筒運転におけるドライバ要求トルクに対応するスロットル開度へと制御せず（たとえば、該ドライバ要求トルクが、トルクリミットラインで規定される値を持つとき、「ｃ」に対応するスロットル開度THMAXから「ａ」に対応するスロットル開度THCSHに移るようには制御せず）、これよりも低いトルクとなるようにスロットル開度を制御するのは、気筒休止運転から全気筒運転へと切り換える際、上記の上限値から急激にスロットルを絞るため、吸入空気のもつ慣性力が低下しておらず、想定するよりも多くの空気が吸入されるためである。全気筒運転のトルクラインは、全気筒が連続運転中であることを前提として求められたトルクラインである。よって、切換時は吸入空気が慣性を多く有している分、全気筒運転トルクラインから求められるトルクより大きいトルクが出力されてしまう。このため、このような切り換えを行うと、ドライバの感じるショックが大きくなるので、制御するトルク値を所定量だけ差し引いて切り換えを行うようにしている。このようにして気筒休止運転から全気筒運転へと移行するとき、ドライバが実際に求めているドライバ要求トルクの値（たとえば、「ａ」に対応するトルク）より下げたトルク値になるようにスロットル開度を制御する。
【００４０】
次に、実際に要求トルク値に戻すようにスロットル開度を制御することとなるが、すぐに要求トルク値へとスロットル開度を戻したのでは、結局、切換時のトルクショックが発生することとなり上述の制御が無駄となってしまう。よって、本発明の一実施形態では、ドライバ要求トルクに対応するスロットル開度へと段階的に移行するよう、スロットル弁を所定量ずつ段階的に開くように制御している。
【００４１】
上述したTHCSHは可変であることができ、後述するように車速VPとギヤ段との関係に応じて所定のテーブル（図１２）を検索することにより求めることができる。また、上述したトルクリミットラインも可変であることができ、後述するようにTHCSHとエンジン回転数NEに応じて所定のテーブル（図９）を検索することにより求めることができる。
【００４２】
３．実行プロセス
次に、図３から図８のフローチャート、およびスロットル開度とトルクとの関係を示した図１０を参照しつつ、本発明の一実施形態における実行プロセスについて説明する。本実施形態において、以下のプロセスの演算周期は、たとえば１０(msec)のサイクルで実行される。
【００４３】
図３に示すスロットル開度算出プロセスCAL_THOについて説明する。スロットル開度算出プロセスCAL_THOがメインプログラムから呼び出されると、ＥＣＵ100は、トルクリミット算出プロセスSRCH_TRQENGを呼び出す（S301）。トルクリミット算出プロセスSRCH_TRQENG（図４）が呼び出されると、ＥＣＵ100は、エンジンの運転状態に応じて決定された目標スロットル開度THONLにて、ドライバ要求トルクTRQBASEを求める。
【００４４】
ＥＣＵ100のＲＯＭには、エンジン回転数NEに関連して、複数のテーブルが用意されている。テーブルの特性は図９に示すようなものであり、目標スロットル開度THONLに対してドライバ要求トルクTRQBASEが求められるようになっている。よって、ＥＣＵ100は、エンジン回転数NEを取得し、エンジン回転数NEに対応するテーブルを検索する。そして、エンジン回転数NEに対応するテーブルから目標スロットル開度THONLに基づいて、ドライバ要求トルクTRQBASEを求める。また、このテーブルは、所定のエンジン回転数おきに離散的に用意されているので、エンジン回転数NEに基づいて各テーブル間で補間したテーブルを作成して使用することとしてもよい。
【００４５】
次に、ＥＣＵ100は、全気筒運転切換開度THCSHに基づいて、トルクリミット値TRQENGLMを求める。具体的には、エンジン回転数NE、車速VP、およびギヤ段値を取得する。そして、取得した速度VPとギヤ段値とから図１２にテーブルを参照して、全気筒運転切換開度THCSHを求める。この発明の一実施形態において、図１１のような特性を有するテーブルがエンジン回転数NEに対応して予め用意されている。そして、全気筒運転切換開度THCSHに対してトルクリミット値TRQENGLMが求められるようになっている。よって、ＥＣＵ100は、エンジン回転数NEに基づいて対応するテーブル（図１１）を検索し、求めた全気筒運転切換開度THCSHに基づいてトルクリミット値TRQENGLMを求める。また、このテーブルは所定のエンジン回転数おきに離散的に用意されているので、エンジン回転数NEに基づいて各テーブル間で補間したテーブルを作成して使用することとしてもよい。
【００４６】
トルクリミット値TRQENGLMを求めるとトルクリミット算出プロセスを終了して、スロットル開度算出プロセス（図３）のS302に戻り、ＥＣＵ100は、トルク要求値算出プロセスCAL_TRQENGT（図５）を呼び出す。トルク要求値算出プロセスCAL_TRQENGTを呼び出すと、ＥＣＵ100は、切換フラグF_THOP10Mが１であるか否かについて判定する（S501）。ここで、切換フラグF_THOP10Mは、１が設定されているときは、気筒休止運転中、または気筒休止運転から全気筒運転への切換制御中であることを示す。また、全気筒運転への切換処理が終了すると０が設定され、全気筒運転中は０が維持される。
【００４７】
S501において切換フラグF_THOP10Mが１のとき、気筒休止時トルク算出プロセスCAL_TRQENCSを呼び出す（S502）。
【００４８】
気筒休止時のトルク算出プロセスCAL_TRQENCS（図６）が呼び出されると、ＥＣＵ100は、ドライバ要求トルクTRQBASEがトルクリミット値TRQENGLM以上であるか否かについて判定する。ドライバ要求トルクTRQBASEがトルクリミット値TRQENGLM以上ではないとき（すなわちトルクリミット値未満であるとき）、ＥＣＵ100は、気筒休止時トルクTRQENCSにドライバ要求トルクTRQBASEを代入する（S602）。そして、本プロセスを終了する。
【００４９】
S601において、ドライバ要求トルクTRQBASEがトルクリミット値TRQENGLM以上のとき、ＥＣＵ100は、気筒休止時トルクTRQENCSにトルクリミット値TRQENGLMを代入する（S603）。そして、本プロセスを終了する。
【００５０】
気筒休止時トルク算出プロセスCAL_TRQENCSのプロセスが終了すると、ＥＣＵ100は、トルク要求値算出プロセスCAL_TRQENGTのS503に戻り、要求トルク値TRQENGTに気筒休止時トルクTRQENCSを代入する（S503）。そして、トルク要求値算出プロセスを終了する。
【００５１】
こうして、気筒休止中、および気筒休止から全気筒への切り換え制御中（図１０の領域Ａ〜Ｃ）は、要求トルク値TRQENGTを、トルクリミットTRQENGLMを超えないよう制御し、これにより、スロットル開度が、上限値THMAXを超えないよう制御される。
【００５２】
S501において、切換フラグF_THOP10Mが１ではないとき、ＥＣＵ100は、全気筒時トルク算出プロセスCAL_TRQENNOを呼び出す（S504）。全気筒時トルク算出プロセスCAL_TRQENNO（図７）が呼び出されると、ＥＣＵ100は、判別フラグF_THOP10MZが１であるか否かについて判定する（S701）。ここで、判別フラグF_THOP10MZに１が設定されているときは、前回のサイクルでは、気筒休止運転中または気筒休止運転から全気筒運転への切り換え制御中であったことを示す。すなわち、今回のサイクルから、全気筒運転が開始されることを示す。
【００５３】
判別フラグF_THOP10MZが１のとき、ＥＣＵ100は、ドライバ要求トルクTRQBASEがトルクリミット値TRQENGLMより大きいか否かについて判定する（S702）。ドライバ要求トルクTRQBASEがトルクリミット値TRQENGLMより大きいとき、ＥＣＵ100は、トルクリミット値TRQENGLMからトルク補正用の所定値DCSTRQDを差し引いた値を全気筒トルクTRQENNOに代入する（S704）。そして、全気筒時トルク算出プロセスを終了する。
【００５４】
S702において、ドライバ要求トルクTRQBASEよりトルクリミット値TRQENGLMが大きくはないとき、ＥＣＵ100は、ドライバ要求トルクTRQBASEからトルク補正用の所定値DCSTRQDを差し引いた値を全気筒トルクTRQENNOに代入する（S703）。そして、全気筒時トルク算出プロセスを終了する。このように所定値を差し引くことにより、全気筒へ切り換えるときのトルクショックを軽減している。
【００５５】
S701において、判別フラグF_THOP10MZが１ではないとき、ＥＣＵ100は、戻し制御フラグF_CSTPDWが１であるか否かを判定する（S705）。ここで、戻し制御フラグF_CSTPDWは、切換時にトルクショックが発生しないようにトルク補正用の所定値を差し引いてトルクの設定を下げたが、該下げたトルクを、本来の差し引く前のトルク値に徐々に戻す制御（以下、戻し制御と記述）を行っているかどうかを示すフラグである。１が設定されているときは戻し制御中であり、０が設定されているときは戻し制御を終了することを示す。この戻し制御フラグF_CSTPDWは、ＥＣＵ100により、電磁弁135e,iを切り換えて気筒休止運転から全気筒運転へと切り換え、補正用の上記所定値DCSTRQDを差し引いたトルクになる開度へのスロットルの制御が完了したときに他のルーチンによって１が設定される。戻し制御フラグF_CSTPDWが１のとき、切換時に一時的にトルク値を下げたものの、徐々に本来の要求されたトルク値に戻す処理を行わせるように、ＥＣＵ100は、全気筒トルクTRQENNOに所定値DTRQENGUを加算して、この値を全気筒トルクTRQENNOに代入する（S706）。そして、ＥＣＵ100は、全気筒トルクTRQENNOがドライバ要求トルクTRQBASEより小さいか否かについて判定する（S707）。ここで、全気筒トルクTRQENNOがドライバ要求トルクTRQBASEより小さいとき、ＥＣＵはこの全気筒トルク算出プロセスを終了する。
【００５６】
一方、全気筒トルクTRQENNOがドライバ要求トルクTRQBASEより小さくはないとき、ＥＣＵ100は、戻し制御フラグF_CSTPDWに０を設定して（S708）全気筒トルク算出プロセスを終了する。
【００５７】
また、S705において戻し制御フラグが１ではないとき、ＥＣＵ100はプロセスをS708に進め、戻し制御フラグF_CSTPDWの値をゼロに設定する。
【００５８】
このようにして、全気筒時トルク算出プロセスCAL_TRQENNOが終了すると、ＥＣＵ100はトルク要求値算出プロセス（図５）のS505に戻り、要求トルク値TRQENGTに全気筒トルクTRQENNOを代入する。そして、トルク要求値算出プロセスCAL_TRQENNOを終了する。
【００５９】
トルク要求値算出プロセスを終了すると、ＥＣＵ100はS303に進み、切換フラグF_THOP10Mが１であるか否かを判定する。切換フラグF_THOP10Mが１のとき、ＥＣＵ100は、要求トルク値TRQENGTに基づいて、図１０に示すような気筒休止運転トルクラインを参照し、対応するスロットル開度THTRQを求める（S305）。S307において、最終目標スロットル開度thoに、求めたスロットル開度THTRQを設定する。
【００６０】
一方、S303において、切換フラグF_THOP10Mが１ではないとき、ＥＣＵ100は、戻し制御フラグF_CSTPDWが１であるか否かを判定する（S304）。S304において、戻し制御フラグF_CSTPDWが１のとき、ＥＣＵ100は、要求トルク値TRQENGTに基づいて、図１０に示すような全気筒運転トルクラインを参照し、対応するスロットル開度THTRQを求める（S306）。S307において、最終目標スロットル開度thoに、求めたスロットル開度THTRQを設定する。こうして、戻し制御中は、全気筒運転トルクラインに沿ってトルクが戻るようにする。
【００６１】
一方、S304において、戻し制御フラグF_CSTPWが１ではないとき、ＥＣＵ100は、スロットル開度thoに最終目標スロットル開度THONLを代入する（S308）。こうして、全気筒運転中は、ドライバ要求トルクが生成されるようにする。そして、スロットル開度算出プロセスCAL_THOを終了する。
【００６２】
このようにして求められた最終目標スロットル開度thoにしたがって、ＥＣＵ100は、電子制御式スロットルのモータを制御する。
【００６３】
次に、メインプログラムは、気筒休止決定プロセス（図８）を呼び出す。気筒休止決定プロセスが呼び出されると、ＥＣＵ100は、ドライバ要求トルクTRQBASEが（トルクリミット値＋Δトルク）より大きいか否かについて判定する（S801）。ここで、Δトルクは、トルクリミットラインから、THCSHラインより２(deg)大きい図１０に示した破線と全気筒運転トルクラインとの交点までのトルク値である。
【００６４】
ドライバ要求トルクTRQBASEが（トルクリミット値＋Δトルク）値より大きいとき、ＥＣＵ100は、切換フラグF_THOP10Mに１を設定する。こうして、全気筒運転が実施される。切換フラグF_THOP10Mに１を設定すると、ＥＣＵ100は、本プロセスを終了する。
【００６５】
一方、S801においてドライバ要求トルクTRQBASEが（トルクリミット値＋Δトルク）値より大きくないとき、ＥＣＵ100は、タイマTTHCSHが０であるか否かについて判定する（S802）。タイマTTHCSHは、気筒休止運転時において、スロットル開度が図１０に示すＡ領域にいる時は、所定のタイマ設定値が維持され、Ｃ領域に入ったときに、他のルーチンによって該所定のタイマ設定値の減算が開始されるようになっている。Ｃ領域中では、該減算が時間の経過とともに自動的に行われる。S802において、タイマTTHCSHが０のときは、プロセスがS803へと進められ、全気筒運転を実施する。
【００６６】
S802において、タイマTTHCSHが０でないとき、ＥＣＵ100は、切換フラグF_THOP10Mに０を設定する。そして、本プロセスを終了する。
【００６７】
このようにすることで、スロットル開度が領域Ｃに所定時間より長い期間存在するときに気筒休止運転を全気筒運転へと切り換える制御とすることができる。
【００６８】
このように、トルクリミット値に基づいて一部気筒休止運転時のスロットル開度に上限値を設けるので、切換時においてスロットルが必要以上に開くことがない。よって、気筒休止運転から全気筒運転への切換時において、スロットルを全気筒運転のスロットル開度に絞るときにすばやく目標のスロットル開度に移動することができ、吸入空気の応答遅れの低減を図ることができる。また、出力トルクはエンジン回転数により変化するので、エンジン回転数に応じてトルクリミットを求めることで適切にスロットル開度の上限値を求めることができる。また、領域Ｃに入った状態が所定時間継続したことに基づいて全気筒運転へと切り換えることとするので、切換領域近傍で切り換えが頻繁に発生することを抑制して燃費を向上させることができる。さらに、切換時のエンジン出力を徐々に変化させることで、トルクショックを抑えることができる。
【図面の簡単な説明】
【００６９】
【図１】この発明の一実施形態に従う、エンジンおよびその制御装置の概略図。
【図２】この発明の一実施形態に従う、気筒休止機構の油圧制御を説明するためのブロック図。
【図３】この発明の一実施例に従う、スロットル開度算出プロセスのフローチャート。
【図４】この発明の一実施例に従う、トルクリミット算出プロセスのフローチャート。
【図５】この発明の一実施例に従う、トルク要求値算出プロセスのフローチャート。
【図６】この発明の一実施例に従う、気筒休止時トルク算出プロセスのフローチャート。
【図７】この発明の一実施例に従う、全気筒時トルク算出プロセスのフローチャート。
【図８】この発明の一実施例に従う、気筒休止決定プロセスのフローチャート。
【図９】この発明の一実施例に従う、トルクリミットラインを決定するためのテーブルを表す図。
【図１０】この発明の一実施例に従う、気筒休止時のトルクと全気筒運転時のトルクとトルクリミットラインとの関係を表す図。
【図１１】この発明の一実施例に従う、トルクリミット値を求めるためのテーブル。
【図１２】この発明の一実施例に従う、全気筒運転切換開度THCSHを求めるためのテーブル。
【符号の説明】
【００７０】
１００  内燃機関
１０１  ＥＣＵ
１３０  気筒休止機構
【図１】
2006283720.tif 000003
【図２】
2006283720.tif 000004
【図３】
2006283720.tif 000005
【図４】
2006283720.tif 000006
【図５】
2006283720.tif 000007
【図６】
2006283720.tif 000008
【図７】
2006283720.tif 000009
【図８】
2006283720.tif 000010
【図９】
2006283720.tif 000011
【図１０】
2006283720.tif 000012
【図１１】
2006283720.tif 000013
【図１２】
2006283720.tif 000014