(57)【特許請求の範囲】
【請求項１】
車両の駆動源として吸気弁と排気弁の運転を休止する気筒休止運転手段を備えたエンジンと、車両の運転状態に応じてエンジンの駆動補助を行うモータとを備え、前記エンジンと前記モータが直列に直結されたハイブリッド車両におけるアシスト制御装置において、
前記エンジンが気筒休止運転から通常運転へ移行する際に前記モータによるエンジンの駆動補助の可否を判定する気筒休止復帰アシスト判定手段を備え、
前記気筒休止復帰アシスト判定手段が、気筒休止からの復帰を判定したとき、スロットル開度が所定値より小さいと判定した場合は前記エンジンにより駆動力を発生し、スロットル開度が所定値以上と判定した場合は前記エンジンにより駆動力を発生すると共に前記モータによりエンジンを駆動補助することを特徴とするハイブリッド車両におけるアシスト制御装置。
【請求項２】
前記ハイブリッド車両は自動変速機を備えており、前記気筒休止復帰アシスト判定手段は、スロットル開度と、車速に基づいて駆動補助の可否判定を行うことを特徴とする請求項１記載のハイブリッド車両におけるアシスト制御装置。
【請求項３】
前記ハイブリッド車両は手動変速機を備えており、前記気筒休止復帰アシスト判定手段は、スロットル開度と、エンジン回転数に基づいて駆動補助の可否判定を行うことを特徴とする請求項１記載のハイブリッド車両におけるアシスト制御装置。
【請求項４】
前記モータによる駆動補助量は、エンジン回転数とスロットル開度により設定されることを特徴とする請求項１記載のハイブリッド車両におけるアシスト制御装置。
【請求項５】
前記モータによる駆動補助は、気筒休止から復帰した後、燃料噴射量が徐々に加算され規定値に達してから所定時間継続されることを特徴とする請求項１記載のハイブリッド車両におけるアシスト制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、気筒休止可能なハイブリッド車両におけるアシスト制御装置に関するものであり、特に、気筒休止運転から通常運転への移行をスムーズに行うことができるハイブリッド車両におけるアシスト制御装置に係るものである。
【０００２】
【従来の技術】
従来から、車両走行用の駆動源としてエンジンの他にモータを備えたハイブリッド車両が知られており、このハイブリッド車両の一種に、エンジンの出力をモータにより駆動補助（アシスト）するパラレルハイブリッド車両がある。
前記パラレルハイブリッド車両は、加速時においてはモータによってエンジンの出力を駆動補助し、減速時においては減速回生によってバッテリ等への充電を行なうなどの様々な制御を行い、バッテリの残容量（電気エネルギー）を確保しつつ運転者の要求を満足できるようになっている。また、構造的にはエンジンとモータとが直列に配置される機構で構成されるため、構造がシンプル化できシステム全体の重量が少なくて済み、車両搭載の自由度が高い利点がある。
【０００３】
ここで、前記パラレルハイブリッド車両には、減速回生時のエンジンのフリクション（エンジンブレーキ）の影響をなくすために、エンジンとモータとの間にクラッチを設けたもの（例えば、特開２０００−９７０６８号公報参照）や、極限までシンプル化を図るために、エンジン、モータ、トランスミッションを直列に直結にした構造のもの（例えば、特開２０００−１２５４０５号公報参照）がある。
【０００４】
【発明が解決しようとする課題】
しかしながら、前者のエンジンとモータとの間にクラッチを設けた構造のものは、クラッチを設ける分だけ構造が複雑化し、搭載性が悪化すると同時に、クラッチを使用するため、走行中も含めて動力伝達系の伝達効率が低下するという欠点を有する。一方、後者のエンジン、モータ、トランスミッションを直列に直結した構造のものは、前述したエンジンのフリクションがある分だけ回生量が少なくなるため、回生により確保できる電気エネルギーが少なくなり、したがって、モータにより駆動補助量（アシスト量）などが制限されるという問題がある。
また、前者のタイプにおいて減速時のエンジンのフリクションを低減させる手法として、電子制御スロットル機構を用いて減速時にスロットル弁を開き側に制御し、ポンピングロスを大幅に低減して回生量を増加させる手法もあるが、減速時に新気がそのまま排気系に多量に流れ込むため、触媒やＡ／Ｆセンサ−の温度を低下させてしまい、排ガス適正制御に悪影響を与えるという問題がある。
そこで、この発明は、気筒休止運転を可能としてエンジンフリクションを低減させた分だけ大幅に燃費向上を図ることができると共に、気筒休止運転から通常運転にスムーズに移行することができるハイブリッド車両におけるアシスト制御装置を提供するものである。
【０００５】
【課題を解決するための手段】
請求項１に記載した発明は、車両の駆動源として吸気弁と排気弁の運転を休止する気筒休止運転手段を備えたエンジン（例えば、実施形態におけるエンジンＥ）と、車両の運転状態に応じてエンジンの駆動補助を行うモータ（例えば、実施形態におけるモータＭ）とを備え、前記エンジンと前記モータが直列に直結されたハイブリッド車両におけるアシスト制御装置において、前記エンジンが気筒休止運転から通常運転へ移行する際に前記モータによるエンジンの駆動補助の可否を判定する気筒休止復帰アシスト判定手段（例えば、実施形態におけるステップＳ３１０）を備え、前記気筒休止復帰アシスト判定手段が、気筒休止からの復帰を判定したとき（例えば、実施形態におけるステップＳ４０１、Ｓ４０２）、スロットル開度が所定値より小さいと判定した場合は前記エンジンにより駆動力を発生し、スロットル開度が所定値以上と判定した場合（例えば、実施形態におけるステップＳ４０５、Ｓ４０９）は前記エンジンにより駆動力を発生すると共に前記モータによりエンジンを駆動補助することを特徴とする。
このように構成することで、気筒休止復帰アシスト判定手段が筒休止運転から通常運転への移行を判定し、かつ、スロットル開度が所定以上であると判定した場合に、気筒休止により不足しているエンジンの駆動力をモータにより駆動補助することができる。
【０００６】
請求項２に記載した発明は、前記ハイブリッド車両は自動変速機を備えており、前記気筒休止復帰アシスト判定手段は、スロットル開度（例えば、実施形態におけるスロットル開度ＴＨＥＭ）と、車速（例えば、実施形態における車速ＶＰ）に基づいて駆動補助の可否判定を行うことを特徴とする。
このように構成することで、気筒休止を行っている関係で判定の基準とできない吸気管負圧に替えて、スロットル開度と車速とにより運転者の加速意思を把握できる。
【０００７】
請求項３に記載した発明は、前記ハイブリッド車両は手動変速機を備えており、前記気筒休止復帰アシスト判定手段は、スロットル開度と、エンジン回転数に基づいて駆動補助の可否判定を行うことを特徴とする。
このように構成することで、気筒休止を行っている関係で判定の基準とできない吸気管負圧に替えて、スロットル開度とエンジン回転数とにより運転者の加速意思を把握できる。
【０００８】
請求項４に記載した発明は、前記モータによる駆動補助量は、エンジン回転数とスロットル開度により設定されることを特徴とする。
このように構成することで、通常運転において用いられると同等のエンジン出力を発生させることができるような設定が可能となる。
【０００９】
請求項５に記載した発明は、前記モータによる駆動補助は、気筒休止から復帰した後、燃料噴射量が徐々に加算され規定値に達してから所定時間継続されることを特徴とする。
このように構成することで、気筒休止から復帰して燃料噴射量が所定量になった後に、エンジンが通常の出力を発生するまでの間、モータによる駆動補助を行うことができる。
【００１０】
【発明の実施の形態】
以下、この発明の実施形態を図面と共に説明する。
図１はこの発明の実施形態のパラレルハイブリッド車両を示し、エンジンＥ、モータＭ、トランスミッションＴを直列に直結した構造のものである。エンジンＥ及びモータＭの両方の駆動力は、オートマチックトランスミッションあるいはマニュアルトランスミッションよりなるトランスミッションＴを介して駆動輪たる前輪Ｗｆ，Ｗｆに伝達される。また、ハイブリッド車両の減速時に前輪Ｗｆ，Ｗｆ側からモータＭ側に駆動力が伝達されると、モータＭは発電機として機能していわゆる回生制動力を発生し、車体の運動エネルギーを電気エネルギーとして回収する。尚、Ｗｒは後輪を示す。
【００１１】
モータＭの駆動及び回生作動は、モータＥＣＵ１からの制御指令を受けてパワードライブユニット２により行われる。パワードライブユニット２にはモータＭと電気エネルギーの授受を行う高圧系のバッテリ３が接続されており、バッテリ３は、例えば、複数のセルを直列に接続したモジュールを１単位として更に複数個のモジュールを直列に接続したものである。ハイブリッド車両には各種補機類を駆動するための１２ボルトの補助バッテリ４が搭載されており、この補助バッテリ４はバッテリ３にダウンバータ５を介して接続される。ＦＩＥＣＵ１１により制御されるダウンバータ５は、バッテリ３の電圧を降圧して補助バッテリ４を充電する。
【００１２】
ＦＩＥＣＵ１１は、前記モータＥＣＵ１及び前記ダウンバータ５に加えて、エンジンＥへの燃料供給量を制御する燃料供給量制御手段６の作動と、スタータモータ７の作動の他、点火時期等の制御を行う。そのために、ＦＩＥＣＵ１１には、ミッションの駆動軸の回転数に基づいて車速Ｖを検出する車速センサＳ１からの信号と、エンジン回転数ＮＥを検出するエンジン回転数センサＳ２からの信号と、トランスミッションＴのシフトポジションを検出するシフトポジションセンサＳ３からの信号と、ブレーキペダル８の操作を検出するブレーキスイッチＳ４からの信号と、クラッチペダル９の操作を検出するクラッチスイッチＳ５からの信号と、スロットル開度ＴＨを検出するスロットル開度センサＳ６からの信号と、吸気管負圧ＰＢＧＡを検出する吸気管負圧センサＳ７からの信号とが入力される。３１は、バッテリ３を保護し、バッテリ３の残容量ＱＢＡＴを算出するバッテリＥＣＵを示す。尚、図１に鎖線で示すようにＣＶＴ車の場合にはＣＶＴ制御用のＣＶＴＥＣＵ２１が設けられる。
【００１３】
ＢＳはブレーキペダル８に連係された倍力装置を示し、この倍力装置ＢＳにはブレーキマスターパワー内負圧（ＭＰＧＡ）を検出する負圧センサＳ８が設けられている。
尚、この負圧センサＳ８はエンジンＥＣＵ１１に接続されている。
【００１４】
ここで、上記エンジンＥは全ての気筒を稼働する全気筒運転（通常運転）と、全ての気筒を休止する全気筒休止運転とに切り換え自在な休筒エンジンである。図１に模式的に示すように、エンジンＥの各気筒の吸気弁ＩＶと排気弁ＥＶは、可変バルブタイミング機構ＶＴにより運転の休止をできる構造となっている。ここで可変バルブタイミング機構ＶＴはエンジンＥＣＵ１１に接続されている。
【００１５】
具体的に図２、図３によって説明する。
図２は、例えば、ＳＯＨＣ型のエンジンに全気筒休止運転のための可変バルブタイミング機構ＶＴを適用した一例を示す。図示しないシリンダには吸気弁ＩＶと排気弁ＥＶが設けられ、これら吸気弁ＩＶと排気弁ＥＶは弁スプリング５１，５１により図示しない吸気、排気ポートを閉じる方向に付勢されている。一方、５２はカムシャフト５３に設けられたリフトカムであり、このリフトカム５２には、吸気弁側、排気弁側ロッカーアームシャフト５３ａ，５３ｂを介して回動可能に支持された吸気弁側、排気弁側カムリフト用ロッカーアーム５４ａ，５４ｂが連係している。
【００１６】
また、各ロッカーアームシャフト５３ａ，５３ｂにはカムリフト用ロッカーアーム５４ａ，５４ｂに隣接して弁駆動用ロッカーアーム５５ａ，５５ｂが回動可能に支持されている。そして、弁駆動用ロッカーアーム５５ａ，５５ｂの回動端が前記吸気弁ＩＶ、排気弁ＥＶの上端を押圧して吸気弁ＩＶ、排気弁ＥＶを開弁作動させるようになっている。尚、弁駆動用のロッカーアーム５５ａ，５５ｂの基端側（弁当接部分とは反対側）はカムシャフト５３に設けられた真円カム５３１に摺接可能に構成されている。
【００１７】
図３は、排気弁側を例にして、前記カムリフト用ロッカーアーム５４ｂと弁駆動用ロッカーアーム５５ｂを示したものである。
図３（ａ）、図３（ｂ）において、カムリフト用ロッカーアーム５４ｂと弁駆動用ロッカーアーム５５ｂには、排気弁側ロッカーアームシャフト５３ｂを中心にしてリフトカム５２と反対側に、カムリフト用ロッカーアーム５４ｂと弁駆動用ロッカーアーム５５ｂとに渡る油圧室５６が形成されている。油圧室５６内にはピン５７がスライド自在に設けられ、このピン５７は、ピンスプリング５８を介してカムリフト用ロッカーアーム５４ｂ側に付勢されている。
一方、排気弁側ロッカーアームシャフト５３ｂの内部には油圧供給路５９が形成され、この油圧供給路５９は、油圧供給路５９の開口部６０、カムリフト用ロッカーアーム５４ｂの連通路６１を介して、油圧室５６に連通している。前記油圧供給路５９には、アクチュエータとしてのスプールバルブＳＶを切り換えることでオイルポンプＰからの作動油が供給される。このスプールバルブＳＶのソレノイドがエンジンＥＣＵ１１に接続されている。
【００１８】
ここで、油圧供給路５９から油圧が作用しない場合は、図３（ａ）に示すように、前記ピン５７は、ピンスプリング５８により前記カムリフト用ロッカーアーム５４ｂと弁駆動用ロッカーアーム５５ｂとの双方に跨る位置となり、一方、気筒休止信号により油圧供給路５９から油圧が作用した場合は、図３（ｂ）に示すように、前記ピン５７はピンスプリング５８に抗して弁駆動用ロッカーアーム５５ｂ側にスライドして、前記カムリフト用ロッカーアーム５４ｂと弁駆動用ロッカーアーム５５ｂとの連結を解除する。尚、吸気弁側も同様の構成である。
【００１９】
したがって、後述する全休筒実施前条件を満たし、全休筒解除条件が成立しない場合に、エンジンＥＣＵ１１からの信号により前記スプールバルブＳＶのソレノイドがＯＮ作動し（Ｆ＿ＡＬＣＳ＝１）、吸気弁側及び排気弁側の双方で前記油圧供給路５９から油圧室５６に油圧が作用する。すると、それまでカムリフト用ロッカーアーム５４ａ，５４ｂと弁駆動用ロッカーアーム５５ａ，５５ｂとを一体にしていたピン５７，５７は弁駆動用ロッカーアーム５５ａ，５５ｂ側へスライドし、カムリフト用ロッカーアーム５４ａ，５４ｂと弁駆動用ロッカーアーム５５ａ，５５ｂとの連結が解除される。
よって、リフトカム５２の回転運動によりカムリフト用ロッカーアーム５４ａ，５４ｂは駆動するが、ピン５７によるカムリフト用ロッカーアーム５４ａ，５４ｂとの連結が解除された弁駆動用ロッカーアーム５５ａ，５５ｂは空転する真円カム５３１によっても駆動せず、カムリフト用ロッカーアーム５４ａ，５４ｂによっても駆動されないため、各弁ＩＶ，ＥＶの開弁には寄与できない。これにより、各弁ＩＶ、ＥＶは閉じたままとなり、全気筒休止運転を可能としている。
【００２０】
「ＭＡ（モータ）基本モード」
次に、前記モータＭをどのようなモードで運転するのかを決定するＭＡ（モータ）基本モードを、図４、図５に示すフローチャートに基づいて説明する。
尚、この処理は所定周期で繰り返される。
ここで、このＭＡ（モータ）基本モードには、「アイドルモード」、「アイドル停止モード」、「減速モード」、「クルーズモード」及び「加速モード」の各モードがある。アイドルモードでは、燃料カットに続く燃料供給が再開されてエンジンＥがアイドル状態に維持され、アイドル停止モードでは、例えば車両の停止時等に一定の条件でエンジンが停止される。また、減速モードでは、モータＭによる回生制動が実行され、加速モードでは、エンジンＥがモータＭにより駆動補助され、クルーズモードでは、モータＭが駆動せず車両がエンジンＥの駆動力で走行する。上記減速モードにおいて、全気筒休止が行われる。
【００２１】
図４のステップＳ０５１においてＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（ＣＶＴ車）である場合はステップＳ０６０に進み、判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ０５２に進む。
ステップＳ０６０において、ＣＶＴ用インギア判定フラグＦ＿ＡＴＮＰが「１」か否かを判定する。判定結果が「ＹＥＳ」（Ｎ，Ｐレンジ）である場合はステップＳ０８３に進み、判定結果が「ＮＯ」（インギア）である場合はステップＳ０６０Ａに進む。
【００２２】
ステップＳ０６０Ａでは、スイッチバック中（シフトレバー操作中でシフト位置が特定できない）か否かをスイッチバックフラグＦ＿ＶＳＷＢが「１」か否かで判定する。判定結果が「ＹＥＳ」（スイッチバック中）である場合はステップＳ０８５に進み、「アイドルモード」に移行して制御を終了する。アイドルモードでは、エンジンＥがアイドル状態に維持される。ステップＳ０６０Ａにおける判定結果が「ＮＯ」（スイッチバック中でない）場合はステップＳ０５３Ａに進む。
【００２３】
ステップＳ０８３において、エンジン停止制御実施フラグＦ＿ＦＣＭＧが「１」か否かを判定する。ステップＳ０８３における判定結果が「ＮＯ」である場合はステップＳ０８５の「アイドルモード」に移行して制御を終了する。ステップＳ０８３における判定結果が「ＹＥＳ」である場合はステップＳ０８４に進み、「アイドル停止モード」に移行して制御を終了する。アイドル停止モードでは、例えば車両の停止時等に一定の条件でエンジンが停止される。
【００２４】
ステップＳ０５２において、ニュートラルポジション判定フラグＦ＿ＮＳＷが「１」か否かを判定する。判定結果が「ＹＥＳ」（ニュートラルポジション）である場合はステップＳ０８３に進み、判定結果が「ＮＯ」（インギア）である場合はステップＳ０５３に進む。
ステップＳ０５３では、クラッチ接続判定フラグＦ＿ＣＬＳＷが「１」か否かを判定する。判定結果が「ＹＥＳ」（クラッチ断）である場合はステップＳ０８３に進み、判定結果が「ＮＯ」（クラッチ接）である場合はステップＳ０５３Ａに進む。
【００２５】
ステップＳ０５３Ａでは、バッテリ残容量ＱＢＡＴが低速発進判定バッテリ残容量ＱＢＪＡＭ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ０５４に進み、判定結果が「ＮＯ」である場合はステップＳ０５３Ｂに進む。
ステップＳ０５３Ｂでは、低速発進判定フラグＦ＿ＪＡＭＳＴが「１」か否かを判定する。この低速発進判定フラグＦ＿ＪＡＭＳＴは、低速で発進して速度が上がらないでのろのろ走行している場合にフラグ値が「１」となるフラグである。ステップＳ０５３Ｂにおける判定結果が「ＹＥＳ」である場合はステップＳ０８３に進む。ステップＳ０５３Ｂにおける判定結果が「ＮＯ」の場合はステップＳ０５４に進む。つまり、バッテリの残容量も少なく、かつ、のろのろ発進している場合は、加速意思がなくバッテリを保護する意味でも、アイドルモードかアイドル停止モード（アイドルにて発電させるか、上記エンジン停止判断にてエンジンを停止させる）の方が良いからである。
【００２６】
ステップＳ０５４において、ＩＤＬＥ判定フラグＦ＿ＴＨＩＤＬＭＧが「１」か否かを判定する。判定結果が「ＮＯ」である場合（全閉）はステップＳ０６１に進み、判定結果が「ＹＥＳ」である場合（全閉でない）はステップＳ０５４Ａに進む。
ステップＳ０５４Ａでは、半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰに「０」をセットし、ステップＳ０５５に進む。尚、この半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰについては後述する。
【００２７】
ステップＳ０５５において、モータアシスト判定フラグＦ＿ＭＡＳＴが「１」か否かを判定する。このフラグはモータＭによりエンジンをアシストするか否かを判定するフラグであり、「１」である場合はアシスト要求があり、「０」である場合はアシスト要求がないことを意味する。尚、このモータアシスト判定フラグはアシストトリガ判定処理により設定される。
ステップＳ０５５における判定結果が「ＮＯ」である場合はステップＳ０６１に進む。ステップＳ０５５における判定結果が「ＹＥＳ」である場合はステップＳ０５６に進む。
【００２８】
ステップＳ０６１において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ０６３に進み、判定結果が「ＹＥＳ」（ＣＶＴ車）である場合はステップＳ０６２に進む。ステップＳ０６２において、リバースポジション判定フラグＦ＿ＡＴＰＲが「１」か否かを判定する。判定結果が「ＹＥＳ」（リバースポジション）である場合はステップＳ０８５に進み、判定結果が「ＮＯ」（リバースポジション以外）である場合はステップＳ０６３に進む。
【００２９】
ステップＳ０５６において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（ＣＶＴ車）である場合はステップＳ０５７に進み、判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ０６７Ａに進む。
ステップＳ０５７において、ブレーキＯＮ判定フラグＦ＿ＢＫＳＷが「１」か否かを判定する。判定結果が「ＹＥＳ」（ブレーキＯＮ）である場合はステップＳ０６３に進み、判定結果が「ＮＯ」（ブレーキＯＦＦ）である場合はステップＳ０５７Ａに進む。
【００３０】
ステップＳ０６３において、車速ＶＰが「０」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ０８３に進み、判定結果が「ＮＯ」である場合はステップＳ０６４に進む。
ステップＳ０６４において、エンジン停止制御実施フラグＦ＿ＦＣＭＧが「１」か否かを判定する。判定結果が「ＮＯ」である場合は、ステップＳ０６５に進み、判定結果が「ＹＥＳ」である場合はステップＳ０８４に進む。
【００３１】
ステップＳ０６５において、シフトチェンジ強制ＲＥＧＥＮ解除判定処理ディレータイマＴＮＥＲＧＮが「０」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ０６６に進み、判定結果が「ＮＯ」である場合はステップＳ０６８に進む。
ステップＳ０６６において、エンジン回転数の変化率ＤＮＥが、ＤＮＥによるＲＥＧＥＮ抜き判定エンジン回転数＃ＤＮＲＧＮＣＵＴのマイナス値より小さいか否かを判定する。ここでＤＮＥによるＲＥＧＥＮ抜き判定エンジン回転数＃ＤＮＲＧＮＣＵＴは、エンジン回転数の変化率ＤＮＥに応じて発電量の減算を行うか否かの判定の基準となるエンジン回転数ＮＥの変化率ＤＮＥである。
【００３２】
ステップＳ０６６における判定の結果、エンジン回転数ＮＥのダウン（低下率）が大きいと判定された場合（ＹＥＳ）はステップＳ０８２に進む。ステップＳ０８２において、半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰに「１」をセットしてステップＳ０８５に進む。
ここで、この半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰを設けているのは以下の理由からである。半クラッチでエンジン回転数ＮＥが変化する毎に、後述するステップＳ０７０における判定が頻繁に切り替わるハンチングを防止するため、半クラッチ時においては半クラッチ判断時のエンジン回転数を引き上げる。これを明確にするために半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰをセットするのである。
【００３３】
ステップＳ０６６における判定の結果、エンジン回転数ＮＥがアップ（上昇）したり、エンジン回転数ＮＥのダウン（低下率）が小さい場合（ＮＯ）はステップＳ０６７に進む。
ステップＳ０６７において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ０７９に進み、判定結果が「ＹＥＳ」（ＣＶＴ車）である場合はステップＳ０６８に進む。ステップＳ０７９において、半クラッチ判断フラグＦ＿ＮＧＲＨＣＬが「１」か否かを判定する。判定の結果、半クラッチ判断がされた場合（ＹＥＳ）はステップＳ０８２に進む。また、半クラッチ判断がされない場合（ＮＯ）はステップＳ０８０に進む。
ステップＳ０８０において、前回ギア位置ＮＧＲと今回ギア位置ＮＧＲ１とを比較し、今回と前回とのギアポジションを比較してシフトアップがあったか否かを判定する。
【００３４】
ステップＳ０８０における判定の結果、ギアポジションがシフトアップした場合は（ＮＯ）ステップＳ０８２に進む。ステップＳ０８０における判定の結果、今回と前回でギアポジションがシフトアップしていない場合（ＹＥＳ）はステップＳ０６８に進む。このように、半クラッチの場合にステップＳ０８２に移行しその後アイドルモードとなるのは、半クラッチ状態で回生が行われるとエンジンをストールさせてしまう可能性が有るためである。また、シフトアップの場合にステップＳ０８２に移行してその後アイドルモードとなるのは、シフトアップによるエンジン回転数の低下時に回生を行うとエンジンをストールさせてしまう可能性が有るためである。
【００３５】
ステップＳ０６８において、半クラッチ判断時のエンジン回転数引き上げフラグＦ＿ＮＥＲＧＮＵＰが「１」か否かを判定する。判定の結果、半クラッチ判断時のエンジン回転数引き上げの必要がありフラグがセット（＝１）されている場合（ＹＥＳ）はステップＳ０８１に進み、ギア毎に設定された充電用エンジン回転数下限値＃ＮＥＲＧＮＬｘにハンチング防止のための引き上げ回転数＃ＤＮＥＲＧＮＵＰを加算し、この加算値を充電用エンジン回転数下限値ＮＥＲＧＮＬにセットしステップＳ０７０に進む。ステップＳ０６８における判定の結果、半クラッチ判断時のエンジン回転数引き上げの必要がなくフラグがリセット（＝０）されている場合（ＮＯ）は、ステップＳ０６９に進み、ギア毎に設定された充電用エンジン回転数下限値＃ＮＥＲＧＮＬｘを充電用エンジン回転数下限値ＮＥＲＧＮＬにセットしステップＳ０７０に進む。
【００３６】
そして、ステップＳ０７０において、エンジン回転数ＮＥが充電用エンジン回転数下限値ＮＥＲＧＮＬ以下か否かを判定する。判定の結果、低回転である場合（ＮＥ≦ＮＥＲＧＮＬ、ＹＥＳ）はステップＳ０８２に進む。判定の結果、高回転である場合（ＮＥ＞ＮＥＲＧＮＬ、ＮＯ）はステップＳ０７１に進む。
【００３７】
ステップＳ０５７Ａにおいて、スクランブルアシスト要求フラグＦ＿ＭＡＳＴＳＣＲが「１」か否かを判定する。このスクランブルアシストは加速時に一時的にアシスト量を増量することにより加速感を向上させるためのものである。基本的にはスロットルの変化量が大きいときにはスクランブルアシスト要求フラグＦ＿ＭＡＳＴＳＣＲに「１」をセットするようになっている。
ステップＳ０５７Ａにおける判定結果が「ＮＯ」である場合はステップＳ０５７Ｂで加速時ＲＥＧＥＮＦ処理を行いステップＳ０５７Ｄに進む。また、ステップＳ０５７Ａにおける判定結果が「ＹＥＳ」である場合は、ステップＳ０５７Ｃで最終充電指令値ＲＥＧＥＮＦの減算処理を行いステップＳ０５８に進む。
【００３８】
ステップＳ０５７Ｄにおいて、加速時ＲＥＧＥＮ処理フラグＦ＿ＡＣＣＲＧＮが「１」か否かを判定する。判定結果が「ＹＥＳ」場合（処理が行われている）はステップＳ０５８に進み、判定結果が「ＮＯ」場合（処理が行われていない）はステップＳ０５７Ｃに進む。
【００３９】
ステップＳ０５８において、最終充電指令値ＲＥＧＥＮＦが「０」以下か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ０５９の「加速モード」に進む。加速モードでは、エンジンＥがモータＭにより駆動補助され、ステップＳ０５９Ａに進む。ステップＳ０５８における判定結果が「ＮＯ」である場合は制御を終了する。
【００４０】
ステップＳ０５９Ａにおいて、アシスト許可フラグＦ＿ＡＣＣＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合は制御を終了し、判定結果が「ＮＯ」である場合はステップＳ０５９Ｂに進む。
ステップＳ０５９Ｂにおいて、発進アシスト許可フラグＦ＿ＳＴＲＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合は制御を終了し、判定結果が「ＮＯ」である場合はステップＳ０５９Ｃに進む。
ステップＳ０５９Ｃにおいて、スクランブルアシスト許可フラグＦ＿ＳＣＲＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合は制御を終了し、判定結果が「ＮＯ」である場合はステップＳ０５９Ｄに進む。
ステップＳ０５９Ｄにおいて、気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合は制御を終了し、判定結果が「ＮＯ」である場合はステップＳ０６３に進む。ここで、気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴが「１」である場合は後述する全気筒休止運転から全気筒（通常）運転へ移行する際のモータによる駆動補助が許可されていることを意味する。
【００４１】
ステップＳ０７１において、車速ＶＰが減速モードブレーキ判断下限車速＃ＶＲＧＮＢＫ以下か否かを判定する。尚、この減速モードブレーキ判断下限車速＃ＶＲＧＮＢＫはヒステリシスを持つ値である。判定の結果、車速ＶＰ≦減速モードブレーキ判断下限車速＃ＶＲＧＮＢＫ、である場合（ＹＥＳ）はステップＳ０７４に進む。ステップＳ０７１における判定の結果、車速ＶＰ＞減速モードブレーキ判断下限車速＃ＶＲＧＮＢＫ、である場合（ＮＯ）はステップＳ０７２に進む。
ステップＳ０７２において、ブレーキＯＮ判定フラグＦ＿ＢＫＳＷが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ０７３に進み、判定結果が「ＮＯ」である場合はステップＳ０７４に進む。
【００４２】
ステップＳ０７３において、ＩＤＬＥ判定フラグＦ＿ＴＨＩＤＬＭＧが「１」か否かを判定する。判定の結果が「ＮＯ」（スロットルが全閉）である場合はステップＳ０７８の「減速モード」に進み、ステップＳ０７７Ａにおいて加速時ＲＥＧＥＮ処理を行って制御を終了する。尚、減速モードではモータＭによる回生制動が実行されるが、この減速モードで全気筒休止がなされるため、エンジンのフリクションの低減分だけモータＭによる回生量を増量できる。ステップＳ０７３における判定結果が「ＹＥＳ」（スロットルが全閉でない）である場合はステップＳ０７４に進む。
【００４３】
ステップＳ０７４において、燃料カットフラグＦ＿ＦＣが「１」か否かを判定する。このフラグはステップＳ０７８の「減速モード」でモータＭによる回生が行われている時に「１」となり燃料カットを行う燃料カット判断フラグである。ステップＳ０７４における判定の結果、減速燃料カット中である場合（ＹＥＳ）はステップＳ０７８に進む。ステップＳ０７４における判定の結果燃料カット中でない場合（ＮＯ）は、ステップＳ０７５に進み最終アシスト指令値ＡＳＴＰＷＲＦの減算処理を行い、ステップＳ０７６に進む。
【００４４】
ステップＳ０７６において、最終アシスト指令値ＡＳＴＰＷＲＦが「０」以下か否かを判定する。判定結果が「ＹＥＳ」である場合は、ステップＳ０７７の「クルーズモード」に移行し、次に、ステップＳ０７７Ａの加速時ＲＥＧＥＮ処理を行い制御を終了する。クルーズモードではモータＭは駆動せずに車両はエンジンＥの駆動力で走行する。また、車両の運転状態に応じてモータＭを回生作動させたり発電機として使用してバッテリ３への充電を行う場合もある。
ステップＳ０７６における判定結果が「ＮＯ」である場合は制御を終了する。
【００４５】
「全気筒休止運転切替実行処理」
次に、図６に基づいて、全気筒休止運転切替実行処理を説明する。
ここで全気筒休止運転とは、一定の条件で減速回生時に前記可変バルブタイミング機構ＶＴにより吸気弁、排気弁を閉鎖する運転を意味し、エンジンフリクションを低減させ減速回生量を増加させるために行われる。以下に示すフローチャートでは、この全気筒休止運転と全気筒休止を行わない通常運転とを切り替えるためのフラグ（全気筒休止実施フラグＦ＿ＡＬＣＳ）のセット・リセットを所定周期で行っている。
【００４６】
ステップＳ１０１において、指定Ｆ／Ｓ（フェールセーフ）検知済みか否かを判定する。判定結果が「ＮＯ」である場合はステップＳ１０２に進み、判定結果が「ＹＥＳ」である場合はステップＳ１１４に進む。何らかの異常がある場合は全気筒休止をするべきではないからである。
ステップＳ１０２において、全気筒休止運転中であるか否かを、全気筒休止実施フラグＦ＿ＡＬＣＳが「１」か否かで判定する。この全気筒休止実施フラグＦ＿ＡＬＣＳは、このフローチャートにより設定されるフラグであり、フラグ値が「１」である場合は全気筒休止運転が実施され、「０」である場合は全気筒休止は行われず、通常運転が行われる。
【００４７】
ステップＳ１０２における判定結果が「ＹＥＳ」であり、全気筒休止実施中である場合はステップＳ１０５に進む。したがって、後述する全気筒休止実施前条件判断により全気筒休止実施中（Ｆ＿ＡＬＣＳ＝１）となると、全気筒休止前条件判断はなされない。ステップＳ１０２における判定結果が「ＮＯ」であり、全気筒休止実施中でない場合はステップＳ１０３において後述する全気筒休止実施前条件判断（Ｆ＿ＡＬＣＳＳＴＢ＿ＪＵＤ）を行いステップＳ１０４に進む。この全気筒休止実施前条件判断により前条件が成立した場合に限り全気筒休止運転が実施される。
【００４８】
ステップＳ１０４において、全気筒休止スタンバイフラグＦ＿ＡＬＣＳＳＴＢが「１」か否かを判定する。このフラグはステップＳ１０３における判定により前条件が成立するとフラグ値が「１」となり、成立しないと「０」となるフラグである。このフラグにより、車両の運転状態に応じて気筒休止の実施可否が判別される。ステップＳ１０４における判定結果が「ＹＥＳ」の場合は、前条件が成立しているためステップＳ１０５に進む。ステップＳ１０４における判定結果が「ＮＯ」の場合は、前条件が成立していないためステップＳ１１４に進む。
【００４９】
ステップＳ１０５において、後述する全気筒休止解除条件判断（Ｆ＿ＡＬＣＳＳＴＰ＿ＪＵＤ）を行いステップＳ１０６に進む。この全気筒休止解除条件判断により解除条件が成立した場合は全気筒休止運転は実施されない。この全気筒休止解除条件判断は全気筒休止前条件判断とは異なり、図６の処理を行う場合に常に行われる。
ステップＳ１０６において、全気筒休止解除条件成立フラグＦ＿ＡＬＣＳＳＴＰが「１」か否かを判定する。このフラグはステップＳ１０５における判定により解除条件が成立するとフラグ値が「１」となり、成立しないと「０」となるフラグである。このフラグにより、エンジンの休筒運転中に車両の運転状態に応じて気筒休止の解除可否が判別される。ステップＳ１０６における判定結果が「ＹＥＳ」の場合は、解除条件が成立しているためステップＳ１１４に進む。ステップＳ１０６における判定結果が「ＮＯ」の場合は、解除条件が成立していないためステップＳ１０７に進む。
【００５０】
ステップＳ１０７において、前記スプールバルブＳＶ用のソレノイドＯＦＦディレータイマＴＡＬＣＳＤＬＹ２に所定値＃ＴＭＡＬＣＳ２をセットしてステップＳ１０８に進む。全気筒休止運転から通常運転に移行する場合に、ステップＳ１０５の判定が終了してから後述するステップＳ１１６の前記スプールバルブＳＶのソレノイドのＯＦＦ作動を完了させるまでの間に一定の時間を確保するためである。
ステップＳ１０８において、後述するソレノイドＯＮディレータイマＴＡＬＣＳＤＬＹ１が「０」か否かを判定する。判定結果が「ＹＥＳ」の場合は、一定の時間が経過しているのでステップＳ１０９に進む。ステップＳ１０８における判定結果が「ＮＯ」の場合は、一定の時間が経過していないのでステップＳ１１６に進む。
【００５１】
ステップＳ１０９では全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬに「１」をセットし（スプールバルブＳＶの全気筒休止用ソレノイドをＯＮ）ステップＳ１１０に進む。
ステップＳ１１０において、全気筒休止のための前記ソレノイドのＯＮ作動により、油圧が実際に発生しているか否かを油圧センサにより判定する。具体的にはエンジン油圧ＰＯＩＬが全気筒休止運転実行判定油圧＃ＰＯＩＬＣＳＨ（例えば、１３７ｋＰａ（＝１．４ｋｇ／ｃｍ２））以上であるか否かを判定する。判定結果が「ＹＥＳ」で高圧側である場合は、ステップＳ１１１に進む。判定結果が「ＮＯ」（ヒステリシスがある）である場合は、ステップＳ１１８に進む。尚、油圧センサに代えて油圧スイッチを用いて判定することも可能である。
【００５２】
ステップＳ１１１において、スプールバルブＳＶがＯＮ作動してから油圧が印加されるまでの時間を確保するために全気筒休止運転実行ディレータイマＴＣＳＤＬＹ１が「０」か否かを判定する。判定結果が「ＹＥＳ」の場合はステップＳ１１２に進む。判定結果が「ＮＯ」である場合はステップＳ１２０に進む。
ステップＳ１１２において、油温センサにより測定した油温ＴＯＩＬに応じてタイマ値＃ＴＭＯＣＳＤＬ２をテーブル検索し、全気筒休止運転解除ディレータイマＴＣＳＤＬＹ２をセットする。油温が低いと油圧の立ち上がりが遅れるなど、油温は作動遅れに影響を与えるからである。よって、このタイマ値＃ＴＭＯＣＳＤＬ２は油温ＴＯＩＬが低いほど大きくなる値である。
そして、ステップＳ１１３において全気筒休止実施フラグＦ＿ＡＬＣＳに「１」をセットし制御を終了する。尚、ステップＳ１１２において、油温に代えてエンジン水温に基づき前記タイマ値を検索しても良い。
【００５３】
ステップＳ１１４において、スプールバルブＳＶのソレノイドＯＮディレータイマＴＡＬＣＳＤＬＹ１に所定値＃ＴＭＡＬＣＳ１をセットしてステップＳ１１５に進む。通常運転から全気筒休止運転に移行する場合に、ステップＳ１０５の判定が終了してからステップＳ１０９のスプールバルブＳＶのソレノイドをＯＮ作動させるまでの間に一定の時間を確保するためである。
ステップＳ１１５において、ソレノイドＯＦＦディレータイマＴＡＬＣＳＤＬＹ２が「０」か否かを判定する。判定結果が「ＹＥＳ」の場合は、一定の時間が経過しているのでステップＳ１１６に進む。ステップＳ１１５における判定結果が「ＮＯ」の場合は、一定の時間が経過していないのでステップＳ１０９に進む。
【００５４】
ステップＳ１１６では全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬに「０」をセットし（スプールバルブＳＶの全気筒休止用ソレノイドをＯＦＦ）ステップＳ１１７に進む。
ステップＳ１１７において、全気筒休止解除のための前記ソレノイドのＯＦＦ作動により、油圧が実際に解除されているか否かを油圧センサにより判定する。具体的には油圧ＰＯＩＬが全気筒休止運転解除判定油圧＃ＰＯＩＬＣＳＬ（例えば、９８ｋＰａ（＝１．０ｋｇ／ｃｍ２））以下であるか否かを判定する。判定結果が「ＹＥＳ」で低圧側である場合は、ステップＳ１１８に進む。判定結果が「ＮＯ」（ヒステリシスがある）である場合は、ステップＳ１１１に進む。この場合も油圧センサに代えて油圧スイッチを使用することができる。
【００５５】
ステップＳ１１８において、スプールバルブＳＶがＯＦＦ作動してから油圧が解除されるまでの時間を確保するために全気筒休止運転解除ディレータイマＴＣＳＤＬＹ２が「０」か否かを判定する。判定結果が「ＹＥＳ」の場合はステップＳ１１９に進む。判定結果が「ＮＯ」である場合はステップＳ１１３に進む。
ステップＳ１１９において、油温センサにより測定した油温ＴＯＩＬに応じてタイマ値＃ＴＭＯＣＳＤＬ１をテーブル検索し、全気筒休止運転実行ディレータイマＴＣＳＤＬＹ１をセットする。油温が低いと油圧の立ち上がりが遅れるなど、油温は作動遅れに影響を与えるからである。よって、このタイマ値＃ＴＭＯＣＳＤＬ１は油温ＴＯＩＬが低いほど大きくなる値である。
そして、ステップＳ１２０において全気筒休止実施フラグＦ＿ＡＬＣＳに「０」をセットし制御を終了する。尚、ステップＳ１１９において、油温に代えてエンジン水温に基づき前記タイマ値を検索しても良い。
【００５６】
「全気筒休止前条件実施判断処理」
次に、図７に基づいて、図６のステップＳ１０３における全気筒休止前条件実施判断処理を説明する。尚、この処理は所定周期で繰り返される。
ステップＳ１３１において、吸気管負圧ＰＢＧＡが全気筒休止実施上限負圧＃ＰＢＧＡＬＣＳ（例えば、−４０ｋＰａ（＝−３００ｍｍＨｇ））以上の大気圧側であるか否かを判定する。エンジン負荷が大きい場合に全気筒休止を行うのは好ましくないからである。ステップＳ１３１の判定結果が「ＹＥＳ」（低負荷）である場合はステップＳ１３２に進み、判定結果が「ＮＯ」である場合はステップＳ１３８に進む。
ステップＳ１３８では、全気筒休止前条件が不成立となるため、全気筒休止スタンバイフラグＦ＿ＡＬＣＳＳＴＢに「０」をセットして制御を終了する。
【００５７】
ステップＳ１３２において、外気温ＴＡが所定の範囲内（全気筒休止実施下限外気温＃ＴＡＡＬＣＳＬ（例えば、０℃）≦ＴＡ≦全気筒休止実施上限外気温＃ＴＡＡＬＣＳＨ（例えば、５０℃））にあるか否かを判定する。ステップＳ１３２における判定の結果、外気温ＴＡが所定の範囲内にあると判定された場合はステップＳ１３３に進む。外気温ＴＡが所定の範囲から外れている場合はステップＳ１３８に進む。外気温ＴＡが全気筒休止実施下限外気温＃ＴＡＡＬＣＳＬを下回ったり、全気筒休止実施上限外気温＃ＴＡＡＬＣＳＨを上回っている場合には、全気筒休止を行うとエンジンが不安定となるからである。
【００５８】
ステップＳ１３３では、冷却水温ＴＷが所定の範囲内（全気筒休止実施下限冷却水温＃ＴＷＡＬＣＳＬ（例えば、７０℃）≦ＴＷ≦全気筒休止実施上限冷却水温＃ＴＷＡＬＣＳＨ（例えば、１００℃））にあるか否かを判定する。ステップＳ１３３における判定の結果、冷却水温ＴＷが所定の範囲内にあると判定された場合はステップＳ１３４に進む。所定の範囲から外れている場合はステップＳ１３８に進む。冷却水温ＴＷが全気筒休止実施下限冷却水温＃ＴＷＡＬＣＳＬを下回ったり、全気筒休止実施上限冷却水温＃ＴＷＡＬＣＳＨを上回っている場合には、全気筒休止を行うとエンジンが不安定となるからである。
【００５９】
ステップＳ１３４において、大気圧ＰＡが全気筒休止実施上限大気圧＃ＰＡＡＬＣＳ（例えば、７７．３ｋＰａ（＝５８０ｍｍＨｇ））以上であるか否かを判定する。ステップＳ１３４の判定結果が「ＹＥＳ」（高気圧）である場合はステップＳ１３５に進み、判定結果が「ＮＯ」である場合はステップＳ１３８に進む。大気圧が低い場合に全気筒休止を行うのは好ましくないからである（例えば、ブレーキのマスターパワー負圧をブレーキ作動時に十分な状態で確保できていない可能性もある為）。
【００６０】
ステップＳ１３５において、１２ボルトの補助バッテリ４の電圧（駆動源電圧）ＶＢが全気筒休止実施上限電圧＃ＶＢＡＬＣＳ（例えば、１０．５Ｖ）以上であるか否かを判定する。判定結果が「ＹＥＳ」（電圧大）である場合はステップＳ１３６に進み、判定結果が「ＮＯ」である場合はステップＳ１３８に進む。１２ボルトの補助バッテリ４の電圧ＶＢが所定値より小さい場合には、スプールバルブＳＶの応答性が悪くなるからである。低温環境下のバッテリ電圧低下やバッテリ劣化時における対策のためである。
【００６１】
ステップＳ１３６では、油温ＴＯＩＬが所定の範囲内（全気筒休止実施下限油温＃ＴＯＡＬＣＳＬ（例えば、７０℃）≦ＴＯＩＬ≦全気筒休止実施上限油温＃ＴＯＡＬＣＳＨ（例えば、１００℃））にあるか否かを判定する。ステップＳ１３６における判定の結果、油温ＴＯＩＬが所定の範囲内にあると判定された場合はステップＳ１３７に進む。所定の範囲から外れている場合はステップＳ１３８に進む。油温ＴＯＩＬが全気筒休止実施下限油温＃ＴＯＡＬＣＳＬを下回ったり、全気筒休止実施上限油温＃ＴＯＡＬＣＳＨを上回っている場合に全気筒休止を行うとエンジン作動時と全気筒休止時の切り替えの応答性が安定しないからである。
ステップＳ１３７において、全気筒休止前条件が成立するため、全気筒休止スタンバイフラグＦ＿ＡＬＣＳＳＴＢに「１」をセットして制御を終了する。
【００６２】
「全気筒休止解除条件判断処理」
次に、図８に基づいて、図６のステップＳ１０５における全気筒休止解除条件判断処理を説明する。尚、この処理は所定周期で繰り返される。
ステップＳ１４１において、燃料カットフラグＦ＿ＦＣが「１」か否かを判定する。ステップＳ１４１の判定結果が「ＹＥＳ」である場合はステップＳ１４２に進み、判定結果が「ＮＯ」である場合はステップＳ１５７に進む。この判定があるのは全気筒休止は、減速燃料カット時におけるエンジンのフリクションを低減してその低減分の回生量を増量することを目的としているからである。
ステップＳ１５７では、全気筒休止解除条件が成立するため、全気筒休止解除条件成立フラグＦ＿ＡＬＣＳＳＴＰに「１」をセットして制御を終了する。
【００６３】
ステップＳ１４２において、減速回生中か否かを判定する。ステップＳ１４１の判定結果が「ＹＥＳ」である場合はステップＳ１４３に進み、判定結果が「ＮＯ」である場合はステップＳ１５７に進む。
ステップＳ１４３において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ１４４に進む。判定結果が「ＹＥＳ」（ＡＴ／ＣＶＴ車）である場合はステップＳ１５５に進む。
【００６４】
ステップＳ１５５において、インギア判定フラグＦ＿ＡＴＮＰが「１」か否かを判定する。判定結果が「ＮＯ」（インギア）である場合はステップＳ１５６に進む。判定結果が「ＹＥＳ」（Ｎ／Ｐレンジ）である場合はステップＳ１５７に進む。
ステップＳ１５６において、リバースポジション判定フラグＦ＿ＡＴＰＲが「１」か否かを判定する。判定結果が「ＹＥＳ」（リバースポジション）である場合はステップＳ１５７に進む。判定結果が「ＮＯ」（リバースポジション以外）である場合はステップＳ１４６に進む。
これらステップＳ１５５、ステップＳ１５６の処理によりＮ／Ｐレンジ、リバースポジションでの全気筒休止は解除される。
【００６５】
ステップＳ１４４において、前回ギア位置ＮＧＲが全気筒休止継続下限ギア位置＃ＮＧＲＡＬＣＳ（例えば、３速でこの位置を含む）よりＨｉギア側か否かを判定する。判定結果が「ＹＥＳ」（Ｈｉギア側）である場合はステップＳ１４５に進み、判定結果が「ＮＯ」（Ｌｏギア側）である場合はステップＳ１５７に進む。これは、低速ギヤでは回生率の低下や、渋滞状態等で頻繁に気筒休止の切り替えが行われることを防止するためである。
ステップＳ１４５において、半クラッチ判断フラグＦ＿ＮＧＲＨＣＬが「１」（半クラッチ）か否かを判定する。判定結果が「ＹＥＳ」である場合（半クラッチ）はステップＳ１５７に進み、判定結果が「ＮＯ」である場合はステップＳ１５６に進む。よって、例えば、車両停止のために半クラッチになった場合におけるエンジンストールや、加速時にギヤチェンジのために半クラッチ状態になった場合に運転者の加速要求に対応できないような不具合が起きる不要な気筒休止を防止できる。
【００６６】
ステップＳ１４６において、エンジン回転数の変化率ＤＮＥが全気筒休止継続実行上限エンジン回転数変化率＃ＤＮＥＡＬＣＳのマイナス値（例えば、−１００ｒｐｍ）以下か否かを判定する。判定結果が「ＹＥＳ」（エンジン回転数の低下率が大きい）である場合はステップＳ１５７に進み、判定結果が「ＮＯ」である場合はステップＳ１４８に進む。エンジン回転数の低下率が大きい場合に全気筒休止を行った場合のエンジンストールを防止するためである。
【００６７】
ステップＳ１４８において、車速ＶＰが所定の範囲内（全気筒休止継続実行下限車速＃ＶＰＡＬＣＳＬ（例えば、１０ｋｍ／ｈ）≦ＶＰ≦全気筒休止継続実行上限車速＃ＶＰＡＬＣＳＨ（例えば、６０ｋｍ／ｈ））にあるか否かを判定する。ステップＳ１４８における判定の結果、車速ＶＰが所定の範囲内にあると判定された場合はステップＳ１４９に進む。車速ＶＰが所定の範囲から外れている場合はステップＳ１５７に進む。車速ＶＰが全気筒休止継続実行下限車速＃ＶＰＡＬＣＳＬを下回ったり、全気筒休止継続実行上限車速＃ＶＰＡＬＣＳＨを上回っている場合には全気筒休止は解除される。
ステップＳ１４９において、エンジン回転数ＮＥが所定の範囲内（全気筒休止継続実行下限エンジン回転数＃ＮＡＬＣＳＬ（例えば、８００ｒｐｍ）≦ＮＥ≦全気筒休止継続実行上限エンジン回転数＃ＮＡＬＣＳＨ（例えば、３０００ｒｐｍ））にあるか否かを判定する。ステップＳ１４９における判定の結果、エンジン回転数ＮＥが所定の範囲内にあると判定された場合はステップＳ１５０に進む。エンジン回転数ＮＥが所定の範囲から外れている場合はステップＳ１５７に進む。エンジン回転数ＮＥが全気筒休止継続実行下限エンジン回転数＃ＮＡＬＣＳＬを下回ったり、全気筒休止継続実行上限エンジン回転数＃ＮＡＬＣＳＨを上回っている場合には全気筒休止は解除される。エンジン回転数ＮＥが低いと回生効率が低かったり、全気筒休止のための切り替え油圧が確保できない可能性が有り、また、エンジン回転数ＮＥが高過ぎると高回転で油圧が高くなり過ぎ気筒休止の切り替えができなくなる可能性が有り、また、気筒休止用作動油の消費悪化の可能性が有るからである。
【００６８】
ステップＳ１５０では、ブレーキマスターパワー内負圧ＭＰＧＡが全気筒休止実施継続実行上限負圧＃ＭＰＡＬＣＳ（例えば、−２６．７ｋＰａ（＝−２００ｍｍＨｇ））以上か否かを判定する。ステップＳ１５０における判定の結果、ブレーキマスターパワー内負圧ＭＰＧＡが全気筒休止継続実行上限負圧＃ＭＰＡＬＣＳ以上の大気圧側にある場合（ＭＰＧＡ≧＃ＭＰＡＣＬＳ、ＹＥＳ）はステップＳ１５１に進む。ステップＳ１５０における判定の結果、ブレーキマスターパワー内負圧ＭＰＧＡが全気筒休止継続実行上限負圧＃ＭＰＡＣＬＳより小さい負圧側にある場合（ＭＰＧＡ＜＃ＭＰＦＣＭＧ、ＮＯ）はステップＳ１５７に進む。ブレーキマスターパワー内負圧ＭＰＧＡが十分に得られない場合に全気筒休止を継続することは好ましくないからである。
【００６９】
ステップＳ１５１において、バッテリ残容量ＱＢＡＴが所定の範囲内（全気筒休止継続実行下限残容量＃ＱＢＡＬＣＳＬ（例えば、３０％）≦ＱＢＡＴ≦全気筒休止継続実行上限残容量＃ＱＢＡＬＣＳＨ（例えば、８０％））にあるか否かを判定する。ステップＳ１５１における判定の結果、バッテリ残容量ＱＢＡＴが所定の範囲内にあると判定された場合はステップＳ１５２に進む。バッテリ残容量ＱＢＡが所定の範囲から外れている場合はステップＳ１５７に進む。バッテリ残容量ＱＢＡが全気筒休止継続実行下限残容量＃ＱＢＡＬＣＳＬを下回ったり、全気筒休止継続実行上限残容量＃ＱＢＡＬＣＳＨを上回っている場合には全気筒休止は解除される。バッテリ残容量ＱＢＡＴが少な過ぎると全気筒休止から復帰する場合に行われるモータＭによるエンジン駆動補助のためのエネルギーが確保できないからである。また、バッテリ残容量ＱＢＡＴが多過ぎると回生を取れないからである。
【００７０】
ステップＳ１５２において、ＩＤＬＥ判定フラグＦ＿ＴＨＩＤＬＭＧが「１」か否かを判定する。判定結果が「ＹＥＳ」（全閉ではない）である場合はステップＳ１５７に進み、判定結果が「ＮＯ」（全閉状態）である場合はステップＳ１５３に進む。スロットル全閉状態からスロットルが少しでも開いた場合には全気筒休止の継続を解除して商品性を高めるためである。
ステップＳ１５３において、エンジン油圧ＰＯＩＬが全気筒休止継続実行下限油圧＃ＰＯＡＬＣＳ（例えば、９８〜１３７ｋＰａ（１．０〜１．４ｋｇ／ｃｍ２）のヒステリシス付き）以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ１５４に進み、判定結果が「ＮＯ」である場合はステップＳ１５７に進む。エンジン油圧ＰＯＩＬが全気筒休止継続実行下限油圧＃ＰＯＡＬＣＳより低い場合には、気筒休止を実施させる油圧（例えば、スプールバルブＳＶを作動させる油圧）が確保できないからである。
【００７１】
ステップＳ１５４では、全気筒休止解除の条件が成立しないので、全気筒休止を継続するため、全気筒休止解除条件成立フラグＦ＿ＡＬＣＳＳＴＰに「０」をセットして制御を終了する。
【００７２】
「燃料カット実行判定処理」
次に、図９に基づいて燃料カット実行判定処理について説明する。尚、この処理は所定周期で繰り返される。
通常、エンジン保護、燃費向上を目的として一定の条件が成立した場合に燃料カットが行われるが、この燃料カットを行うか否かの判定処理の中に全気筒休止に関係する条件を加えている。
【００７３】
ステップＳ２０１において、高回転燃料カット実行判定処理を行いステップＳ２０２に進む。これはエンジンが高回転（例えば、エンジン回転数ＮＥが６２００ｒｐｍ以上）である場合にエンジン保護のために行われる燃料カットであり、この処理で高回転燃料カットフラグＦ＿ＨＮＦＣのセット・リセットが行われる。
【００７４】
ステップＳ２０２において、高回転燃料カットフラグＦ＿ＨＮＦＣが「１」か否かを判定する。判定結果が「ＹＥＳ」（高回転燃料カット成立）である場合はステップＳ２１２に進み、判定結果が「ＮＯ」である場合はステップＳ２０３に進む。
ステップＳ２１２では燃料カットフラグＦ＿ＦＣに「１」をセットし制御を終了する。尚、燃料カットフラグＦ＿ＦＣが「１」の場合には燃料噴射を行わない。
【００７５】
ステップＳ２０３において、高車速燃料カット実行判定処理を行いステップＳ２０４に進む。これは車両が高車速（例えば、１８０ｋｍ／ｈ以上）である場合に速度制限の見地から行われる燃料カットであり、この処理で高車速燃料カットフラグＦ＿ＨＶＦＣのセット・リセットが行われる。
ステップＳ２０４において、高車速燃料カットフラグＦ＿ＨＶＦＣが「１」か否かを判定する。判定結果が「ＹＥＳ」（高車速燃料カット成立）である場合はステップＳ２１２に進み、判定結果が「ＮＯ」である場合はステップＳ２０５に進む。
【００７６】
ステップＳ２０５において、減速燃料カット実行判定処理を行いステップＳ２０６に進む。これは車両が減速している場合に燃費向上のために行われる燃料カットであり、この処理で減速燃料カットフラグＦ＿ＦＣのセット・リセットが行われる。
ステップＳ２０６において、燃料カットフラグＦ＿ＦＣが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ２１２に進み、判定結果が「ＮＯ」である場合はステップＳ２０７に進む。尚、減速モードに入り燃料カットフラグＦ＿ＦＣが「１」となった場合は、燃料カットが実行される。
【００７７】
ステップＳ２０７において、全気筒休止実施フラグＦ＿ＡＬＣＳが「１」か否かを判定する。判定結果が「ＹＥＳ」（全気筒休止中）である場合はステップＳ２１２に進み、判定結果が「ＮＯ」である場合はステップＳ２０８に進む。
ステップＳ２０８において、全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「１」か否かを判定する。判定結果が「ＹＥＳ」（全気筒休止用ソレノイドＯＮ）である場合はステップＳ２１２に進み、判定結果が「ＮＯ」である場合はステップＳ２０９に進む。
したがって、全気筒休止運転中（Ｆ＿ＡＬＣＳ＝１）で吸気弁、排気弁が閉じている場合（ステップＳ２０７）、全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「１」の場合（ステップＳ２０８）には燃料カットが継続されることになる。
そして、全気筒休止運転から通常運転に復帰する場合に全気筒休止実施フラグＦ＿ＡＬＣＳが「０」となっても、後述する全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「０」、つまり全気筒休止用ソレノイドがＯＦＦになって完全に復帰するまでの間は気筒が休止している可能性があるのでステップＳ２０８の全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬによる判定を加え、全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「０」になった場合に燃料カットを解除する（Ｆ＿ＦＣ＝０）ようにしている。
ステップＳ２０９では燃料カットフラグＦ＿ＦＣに「０」をセットして燃料カットを解除し制御を終了する。
【００７８】
「アシストトリガ判定処理」
次に、図１０、図１１に示すフローチャートに基づいてアシストトリガ判定処理について説明する。このアシストトリガ判定処理は、アシストモードかクルーズモードかを判定する処理であり、ここでモータアシスト判定フラグＦ＿ＭＡＳＴのセット・リセットを行う。このアシストトリガ判定処理において全気筒休止運転中にアクセルペダルを踏み込んだ場合に、通常運転に復帰するまでの間モータによるアシストを行うことができるように、全気筒休止復帰アシストに関する判別等を設けている。
ステップＳ３０１において、ガス欠判定フラグＦ＿ＧＡＳＥＭＰが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３０４に進み、判定結果が「ＮＯ」である場合はステップＳ３０２に進む。
【００７９】
ステップＳ３０４において、クルーズ発電量減算係数ＫＴＲＧＲＧＮに「１．０」をセットし、ステップＳ３３３においてモータアシスト判定フラグＦ＿ＭＡＳＴに「０」をセットして処理を繰り返す。この場合、エンジンはモータにより駆動補助されない。」
ステップＳ３０２において、車速ＶＰがアシストトリガ検索上限車速＃ＶＭＡＳＴＨＧ以下か否かを判定する。尚、この値＃ＶＭＡＳＴＨＧはヒステリシスを持つ値である。判定結果が「ＹＥＳ」である場合はステップＳ３０５に進み、判定結果が「ＮＯ」である場合はステップＳ３０３に進む。
【００８０】
ステップＳ３０３において、車速ＶＰに応じて高車速域のクルーズ発電量補正係数ＫＴＲＧＲＧＮにテーブル検索により求めた係数＃ＫＶＴＲＧＲＮをセットしてステップＳ３３３に進む。尚、係数＃ＫＶＴＲＧＲＮは車速ＶＰに応じて増加する傾向にある係数であり、低車速域、高車速域では一定になっている。
ステップＳ３０５において、発進アシストトリガ判定を行いステップＳ３０６に進む。この発進アシストトリガ判定は発進性能の向上を目的として、吸気管負圧ＰＢが所定圧以上の高負圧の発進時にアシストトリガ値とアシスト量とを通常のアシスト量とは別に算出するための処理であり、その処理の結果、発進アシスト制御が必要と判定された場合には、発進アシスト要求フラグＦ＿ＭＡＳＴＳＴＲに「１」がセットされる。
ステップＳ３０６において、エネルギーストレージゾーンＣフラグＦ＿ＥＳＺＯＮＥＣ（残容量が約２０％以下）が「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３０７に進み、判定結果が「ＮＯ」である場合はステップＳ３０９に進む。
【００８１】
ステップＳ３０７において、発進アシスト要求フラグＦ＿ＭＡＳＴＳＴＲが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３０８に進む。ステップＳ３４７において、クルーズ発電量減算係数ＫＴＲＧＲＧＮに「０」をセットし、ステップＳ３４８においてモータアシスト判定フラグＦ＿ＭＡＳＴに「１」をセットして処理を繰り返す。これによりモータによりエンジンが駆動補助される。
ステップＳ３０８において、最終アシスト指令値ＡＳＴＰＷＲＦが０以下か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３０４に進み、判定結果が「ＮＯ」である場合はステップＳ３０９に進む。
【００８２】
ステップＳ３０９において、スクランブルアシストトリガ判定を行いステップＳ３１０に進む。このスクランブルアシストトリガ判定は、加速時に一時的にアシスト量を増量することにより、加速感を向上させるための判定であり、基本的にはスロットルの変化量が大きいときにはスクランブルアシスト要求フラグＦ＿ＭＡＳＴＳＣＲに「１」をセットするようになっている。
ステップＳ３１０（気筒休止復帰アシスト判定手段）において、後述する全気筒休止復帰アシストトリガ判定を行いステップＳ３１１に進む。この全気筒休止復帰アシストトリガ判定は、全気筒休止を行っている状態から、運転者がアクセルペダルを踏み込んだ場合にエンジンが復帰するまでの間にモータでエンジンを駆動補助して全気筒休止から通常走行への移行を違和感なくスムーズに行うための判定である。この判定がなされると全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳに「１」がセットされる。
【００８３】
ステップＳ３１１において、スロットルアシストトリガ補正値ＤＴＨＡＳＴの算出処理が行いステップＳ１１２に進む。この補正値算出処理は、バッテリの残容量が少ない場合やエアコン等による負荷がある場合に、アシストトリガ閾値の持ち上げ量を求めるためのものである。
ステップＳ３１２において、スロットルアシストトリガテーブルからスロットルアシストトリガの基準となる閾値＃ＭＴＨＡＳＴＮを検索してステップＳ３１３に進む。このスロットルアシストトリガテーブルは、図１６に示すように、エンジン回転数ＮＥに対して、モータアシストするか否かの判定の基準となるスロットル開度の閾値ＭＴＨＡＳＴＮを定めたものである。
【００８４】
ステップＳ３１３において、前記ステップＳ３１２で求められたスロットルアシストトリガの基準閾値ＭＴＨＡＳＴＮに前述のステップＳ３１１で算出された補正値ＤＴＨＡＳＴを加えて、高スロットルアシストトリガ閾値ＭＴＨＡＳＴＨを求めステップＳ３１４に進む。
ステップＳ３１４において、スロットルアシストトリガ上限値ＭＴＨＨＡＳＴＮに、エンジン回転数ＮＥに応じてスロットルアシストトリガ上限リミットテーブルにより上限値＃ＭＴＨＨＡＳＴを検索してセットしてステップＳ３１５に進む。
ステップＳ３１５において、高スロットルアシストトリガ閾値ＭＴＨＡＳＴＨがスロットルアシストトリガ上限値ＭＴＨＨＡＳＴＮ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３１６に進み、判定結果が「ＮＯ」である場合はステップＳ３１７に進む。
【００８５】
ステップＳ３１６において、高スロットルアシストトリガ閾値ＭＴＨＡＳＴＨにスロットルアシストトリガ上限値ＭＴＨＨＡＳＴＮを代入してステップＳ３１７に進む。
ステップＳ３１７において、高スロットルアシストトリガ閾値ＭＴＨＡＳＴＨからヒステリシスを設定するための差分＃ＤＭＴＨＡＳＴを引いて、低スロットルアシストトリガ閾値ＭＴＨＡＳＴＬを求めステップＳ３１８に進む。
【００８６】
ステップＳ３１８において、スロットル開度の現在値ＴＨＥＭがスロットルアシストトリガ閾値ＭＴＨＡＳＴ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３３４に進み、判定結果が「ＮＯ」である場合はステップＳ３１９に進む。この場合のスロットルアシストトリガ閾値ＭＴＨＡＳＴはヒステリシスを持った値である。
ステップＳ３３４では、スロットルモータアシスト判定フラグＦ＿ＭＡＳＴＴＨに「１」をセットしてステップＳ３４７に進み、ステップＳ３１９では、スロットルモータアシスト判定フラグＦ＿ＭＡＳＴＴＨに「０」をセットしてステップＳ３２０に進む。スロットルモータアシスト判定フラグＦ＿ＭＡＳＴＴＨが「１」の場合は、スロットル開度ＴＨがモータアシストを要求する開度であることを意味し、スロットルモータアシスト判定フラグＦ＿ＭＡＳＴＴＨが「０」の場合は、スロットル開度ＴＨがモータアシストを要求する開度ではないことを意味している。尚、スロットルモータアシスト判定フラグＦ＿ＭＡＳＴＴＨが「０」の場合は、更に以後において吸気管負圧ＰＢによりアシストをするか否かの判定を行う。
【００８７】
ステップＳ３２０において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（ＣＶＴ車）である場合はステップＳ３３５に進み、判定結果が「ＮＯ」（ＭＴ車）である場合はステップＳ３２１に進む。ステップＳ３２１において、吸気管負圧アシストトリガ補正値ＤＰＢＡＳＴの算出処理が行われステップＳ３２２に進む。この処理は大気圧に応じて、１２Ｖ消費電力が大きい場合に応じてアシストトリガ閾値を持ち上げるための処理である。
【００８８】
ステップＳ３２２において、吸気管負圧アシストトリガテーブルから吸気管負圧アシストトリガの閾値ＭＡＳＴＬ／Ｈ（ＭＴ用）を検索してステップＳ３２３に進む。この吸気管負圧アシストトリガテーブルは、図１７に２本の実線で示すように、エンジン回転数ＮＥに対して、モータアシストするか否かの判定のための高吸気管負圧アシストトリガ閾値ＭＡＳＴＨと、低吸気管負圧アシストトリガ閾値ＭＡＳＴＬとを定めたものである。ステップＳ３２２の検索処理においては、吸気管負圧ＰＢＡの増加に応じて、あるいはエンジン回転数ＮＥの減少に応じて図１７の高閾値ラインＭＡＳＴＨを下から上に通過すると、モータアシスト判定フラグＦ＿ＭＡＳＴを「０」から「１」にセットし、逆に吸気管負圧ＰＢＡの減少に応じて、あるいはエンジン回転数ＮＥの増加に応じて低閾値ラインＭＡＳＴＬを上から下に通過すると、モータアシスト判定フラグＦ＿ＭＡＳＴを「１」から「０」にセットするようになっている。尚、図１７は各ギア毎に、またストイキ／リーンバーン毎に持ち替えを行っている。
【００８９】
ステップＳ３２３において、モータアシスト判定フラグＦ＿ＭＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３２４に進み、判定結果が「ＮＯ」である場合はステップＳ３２５に進む。
ステップＳ３２４においは、吸気管アシストトリガ閾値ＭＡＳＴを、ステップＳ３２２で検索した吸気管負圧アシストトリガの低閾値ＭＡＳＴＬとステップＳ３２１で算出された補正値ＤＰＢＡＳＴとを加えた値として算出してステップＳ３２６に進む。
ステップＳ３２５において、吸気管アシストトリガ閾値ＭＡＳＴを、ステップＳ３２２で検索した吸気管負圧アシストトリガの高閾値ＭＡＳＴＨとステップＳ３２１で算出された補正値ＤＰＢＡＳＴとを加えた値として算出し、ステップＳ３２６に進む。
【００９０】
ステップＳ３２６において、吸気管負圧の現在値ＰＢＡが、ステップＳ３２４あるいはステップＳ３２５で求めた吸気管アシストトリガ閾値ＭＡＳＴ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３２７に進む。
ステップＳ３２７において、発進アシスト要求フラグＦ＿ＭＡＳＴＳＴＲが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３２８に進む。
ステップＳ３２８において、スクランブルアシスト要求フラグＦ＿ＭＡＳＴＳＣＲが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３２９に進む。
【００９１】
ステップＳ３２９において、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３３０に進む。これにより、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳが「１」の場合には、ステップＳ３４８においてモータによりエンジンが駆動補助されるため、不足しているエンジンの駆動力をモータにより駆動補助して違和感をなくすことができる。
ステップＳ３３０において、図１８に示すように上記吸気管負圧アシストトリガ閾値ＭＡＳＴから、所定の吸気管負圧のデルタ値＃ＤＣＲＳＰＢを引くことで、最終吸気管負圧アシストトリガ下限閾値ＭＡＳＴＦＬを求めてステップＳ３３１に進む。
ステップＳ３３１において、最終吸気管負圧アシストトリガ下限閾値ＭＡＳＴＦＬと吸気管負圧アシストトリガ閾値ＭＡＳＴを、図１９に示すように吸気管負圧の現在値ＰＢＡで補間算出して、クルーズ発電量減算係数テーブル値ＫＰＢＲＧＮを求め、ステップＳ３３２においてクルーズ発電量減算係数テーブル値ＫＰＢＲＧＮをクルーズ発電量減算係数ＫＴＲＧＲＧＮにセットしステップＳ３３３に進む。
【００９２】
ステップＳ３３５において、吸気管負圧アシストトリガ補正値ＤＰＢＡＳＴＴＨの算出処理が行われステップＳ３３６に進む。この処理は大気圧に応じて、１２Ｖ消費電力が大きい場合に応じてアシストトリガ閾値を持ち上げるための処理である。
【００９３】
ステップＳ３３６において、吸気管負圧アシストトリガテーブルから吸気管負圧アシストトリガの閾値ＭＡＳＴＴＨＬ／Ｈ（ＣＶＴ用）を検索してステップＳ３３７に進む。この吸気管負圧アシストトリガテーブルは、図２０に２本の実線で示すように、車速ＶＰに対して、モータアシストするか否かの判定のための高吸気管負圧アシストトリガ閾値ＭＡＳＴＴＨＨと、低吸気管負圧アシストトリガ閾値ＭＡＳＴＴＨＬとを定めたものである。
【００９４】
ステップＳ３３６の検索処理においては、スロットル開度ＴＨの増加に応じて、あるいは車速ＶＰの減少に応じて図２０の高閾値ラインＭＡＳＴＴＨＨを下から上に通過すると、モータアシスト判定フラグＦ＿ＭＡＳＴを「０」から「１」にセットし、逆にスロットル開度ＴＨの減少に応じて、あるいは車速ＶＰの増加に応じて低閾値ラインＭＡＳＴＴＨＬを上から下に通過すると、モータアシスト判定フラグＦ＿ＭＡＳＴを「１」から「０」にセットするようになっている。尚、図２０は各ギア毎に、またストイキ／リーンバーン毎に持ち替えを行っている。
【００９５】
ステップＳ３３７において、モータアシスト判定フラグＦ＿ＭＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３３８に進み、判定結果が「ＮＯ」である場合はステップＳ３３９に進む。
ステップＳ３３８においは、吸気管アシストトリガ閾値ＭＡＳＴＴＨを、ステップＳ３３６で検索した吸気管負圧アシストトリガの低閾値ＭＡＳＴＴＨＬとステップＳ３３５で算出された補正値ＤＰＢＡＳＴＴＨとを加えた値として算出してステップＳ３４０に進む。
ステップＳ３３９において、吸気管アシストトリガ閾値ＭＡＳＴＴＨを、ステップＳ３３６で検索した吸気管負圧アシストトリガの高閾値ＭＡＳＴＴＨＨとステップＳ３３５で算出された補正値ＤＰＢＡＳＴＴＨとを加えた値として算出しステップＳ３４０に進む。
【００９６】
ステップＳ３４０において、スロットル開度の現在値ＴＨＥＭが、ステップＳ３３８あるいはステップＳ３３９で求めた吸気管アシストトリガ閾値ＭＡＳＴＴＨ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３４１に進む。
ステップＳ３４１において、発進アシスト要求フラグＦ＿ＭＡＳＴＳＴＲが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３４２に進む。
ステップＳ３４２において、スクランブルアシスト要求フラグＦ＿ＭＡＳＴＳＣＲが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３４３に進む。
【００９７】
ステップＳ３４３において、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ３４７に進み、判定結果が「ＮＯ」である場合はステップＳ３４４に進む。これにより、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳが「１」の場合には、ステップＳ３４８においてモータによりエンジンが駆動補助されるため、不足しているエンジンの駆動力をモータにより駆動補助して違和感をなくすことができる。
ステップＳ３４４において、図１８に示すように上記吸気管負圧アシストトリガ閾値ＭＡＳＴＴＨから、所定の吸気管負圧のデルタ値＃ＤＣＲＳＴＨＶを引くことで、最終吸気管負圧アシストトリガ下限閾値ＭＡＳＴＴＨＦＬを求めてステップＳ３４５に進む。
【００９８】
ステップＳ３４５において、最終吸気管負圧アシストトリガ下限閾値ＭＡＳＴＴＨＦＬと吸気管負圧アシストトリガ閾値ＭＡＳＴＴＨを、図１９に示すようにスロットル開度の現在値ＴＨＥＭで補間算出して、クルーズ発電量減算係数テーブル値ＫＰＢＲＧＴＨを求め、ステップＳ３４６においてクルーズ発電量減算係数テーブル値ＫＰＢＲＧＴＨをクルーズ発電量減算係数ＫＴＲＧＲＧＮにセットしステップＳ３３３に進む。
【００９９】
「ＣＳ（全気筒休止）復帰アシストトリガ判定」
次に、図１２に基づいて、全気筒休止復帰アシストトリガ判定について説明する。全気筒休止復帰アシストとは、全気筒休止を行っている状態から運転者がアクセルペダルを踏み込んだ場合に、エンジンが復帰するまでの間モータでエンジンを駆動補助して全気筒休止から再加速した場合などの通常走行への移行をスムーズに行うためのものである。全気筒休止復帰アシストトリガ判定ではこのアシストを行うか否かを決定する全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳのセット・リセットが行われる。尚、この処理は所定周期で繰り返される。
【０１００】
ステップＳ４０１において、全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬの前回値が「１」か否かを判定する。判定結果が「ＹＥＳ」（スプールバルブＳＶの全気筒休止用ソレノイドがＯＮ）である場合はステップＳ４０２に進み、判定結果が「ＮＯ」（スプールバルブＳＶの全気筒休止用ソレノイドがＯＦＦ）である場合はステップＳ４０７に進む。
【０１０１】
ステップＳ４０２において、全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「１」か否かを判定する。判定結果が「ＹＥＳ」（スプールバルブＳＶの全気筒休止用ソレノイドがＯＮ）である場合はステップＳ４０７に進み、判定結果が「ＮＯ」（スプールバルブＳＶの全気筒休止用ソレノイドがＯＦＦ）である場合はステップＳ４０３に進む。
このようにステップＳ４０１において全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「１」で、かつ、ステップＳ４０２において全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬが「０」である場合が前提となって、ステップＳ４０６において全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳがセットされる。
【０１０２】
ステップＳ４０３において、全気筒休止復帰アシスト継続タイマＴＲＣＳＨＬＤに所定値＃ＴＭＲＣＳＨＬＤをセットしてステップＳ４０４に進む。
ステップＳ４０４において、ＭＴ／ＣＶＴ判定フラグＦ＿ＡＴが「１」か否かを判定する。判定結果が「ＮＯ」（ＭＴ車）、つまり手動変速機を備えたハイブリッド車両である場合はステップＳ４０５に進む。判定結果が「ＹＥＳ」（ＡＴ／ＣＶＴ車）、つまり自動変速機を備えたハイブリッド車両である場合はステップＳ４０９に進む。
【０１０３】
ステップＳ４０５において、スロットル開度の現在値ＴＨＥＭが所定以上、つまり全気筒休止復帰アシストトリガ判定ＴＨテーブルにおけるスロットル開度の閾値＃ＴＨＲＣＳＭ以上か否かを判定する。判定結果が「ＹＥＳ」（高負荷）である場合はステップＳ４０６に進み、判定結果が「ＮＯ」である場合はステップＳ４１０に進む。尚、閾値＃ＴＨＲＣＳＭはヒステリシスを持った値（＃ＴＨＲＣＳＭＨ／＃ＴＨＲＣＳＭＬ）であり図２１に示すようにエンジン回転数ＮＥに応じて設定される。ここで、スロットル開度ＴＨＥＭとエンジン回転数ＮＥに基づいて判定を行うのは、全気筒休止においては吸気弁ＩＶ、排気弁ＥＶが閉じているので吸気管負圧が発生せず、これを基準にはできないからである。
ステップＳ４０６では、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳに「１」をセットして制御を終了する。これによりエンジンがモータにより駆動補助される。
ステップＳ４１０では、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳに「０」をセットして制御を終了する。
【０１０４】
ステップＳ４０９において、スロットル開度の現在値ＴＨＥＭが所定以上、つまり全気筒休止復帰アシストトリガ判定ＴＨテーブルにおけるスロットル開度の閾値＃ＴＨＲＣＳＣ以上か否かを判定する。判定結果が「ＹＥＳ」（高開度）である場合はステップＳ４０６に進み、判定結果が「ＮＯ」である場合はステップＳ４１０に進む。尚、閾値＃ＴＨＲＣＳＣはヒステリシスを持った値（＃ＴＨＲＣＳＣＨ／＃ＴＨＲＣＳＣＬ）であり図２２に示すように車速ＶＰに応じて設定される。この場合も、ここで、スロットル開度ＴＨＥＭと車速ＶＰに基づいて判定を行うのは、全気筒休止においては吸気弁ＩＶ、排気弁ＥＶが閉じているので吸気管負圧が発生せず、これを基準にはできないからである。
【０１０５】
ステップＳ４０７において、燃料復帰時の燃料徐々加算係数ＫＡＡＬＣＳが「１．０」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ４０８に進み、判定結果が「ＮＯ」である場合はステップＳ４０３に進む。この燃料復帰後の燃料徐加算係数ＫＡＡＬＣＳが「１．０」（燃料噴射量の規定値に対応する係数）になると通常の燃料噴射量となる。つまり、この燃料徐々加算係数ＫＡＡＬＣＳが「１．０」になるまでは全気筒休止復帰アシストを継続し、燃料徐々加算係数ＫＡＡＬＣＳが「１．０」になった場合に全気筒休止復帰アシストを停止することになる。ここで、前記燃料徐々加算係数ＫＡＡＬＣＳは前記全気筒休止実施フラグＦ＿ＡＬＣＳが「１」となった場合に、スロットル開度ＴＨに応じて定められる加算量で徐々に「１」に近づく係数である。
【０１０６】
ステップＳ４０８において、全気筒休止復帰アシスト継続タイマＴＲＣＳＨＬＤ（所定値）が「０」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ４１０に進み、判定結果が「ＮＯ」である場合はステップＳ４０４に進む。このように全気筒休止復帰アシスト継続タイマＴＲＣＳＨＬＤを設けているため、全気筒休止から復帰して燃料噴射量が所定量になった後に、エンジンが通常の出力を発生するまでの間はモータによる駆動補助を行って、通常運転へのスムーズな移行を確実なものとしている。
【０１０７】
「加速モード」
次に、図１３、図１４に基づいて、加速モードについて説明する。この加速モードにおいては、最終アシスト指令値ＡＳＴＰＷＲＦを設定する。尚、この処理は所定周期で繰り返される。
ステップＳ５０１において、加速モードか否かを判定する。判定結果が「ＹＥＳ」（加速モード）である場合はステップＳ５０３に進み、判定結果が「ＮＯ」（加速モード以外）である場合はステップＳ５０２に進む。
ステップＳ５０３では最終通常アシスト演算値ＡＣＣＡＳＴＦに最終アシスト指令値ＡＳＴＰＷＲＦをセットしてステップＳ５０４に進む。
ステップＳ５０２では最終アシスト指令値ＡＳＴＰＷＲＦに「０」をセットしてステップＳ５０４に進む。
【０１０８】
ステップＳ５０４において、通常アシスト算出処理（ＡＣＣＡＳＴ＿ＣＡＬ）がなされ、ステップＳ５０５において、発進アシスト算出処理（ＳＴＲＡＳＴ＿ＣＡＬ）がなされ、ステップＳ５０６において、スクランブルアシスト算出処理（ＳＣＲＡＳＴ＿ＣＡＬ）がなされてステップＳ５０７に進む。ここで、発進アシストは、発進時に一時的にアシスト量を増量することにより発進性能を向上させるものであり、スクランブルアシストは加速時に一時的にアシスト量を増量することにより加速感を向上させるものである。
ステップＳ５０７において、発進アシスト許可フラグＦ＿ＳＴＲＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（発進アシスト許可）である場合はステップＳ５０８に進み、判定結果が「ＮＯ」である場合はステップＳ５２３に進む。
ステップＳ５０８において、スクランブルアシスト許可フラグＦ＿ＳＣＲＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（スクランブルアシスト許可）である場合はステップＳ５０９に進み、判定結果が「ＮＯ」である場合はステップＳ５１０に進む。
【０１０９】
ステップＳ５０９において、最終発進アシスト演算値ＳＴＲＡＳＴＦが最終スクランブルアシスト演算値ＳＣＲＡＳＴＦより小さいか否かを判定する。判定結果が「ＹＥＳ」（ＳＴＲＡＳＴＦ＜ＳＣＲＡＳＴＦ）である場合はステップＳ５２４に進み、判定結果が「ＮＯ」（ＳＴＲＡＳＴＦ≧ＳＣＲＡＳＴＦ）である場合はステップＳ５１０に進む。
ステップＳ５１０において、最終発進アシスト演算値ＳＴＲＡＳＴＦが最終通常アシスト演算値ＡＣＣＡＳＴＦより小さいか否かを判定する。判定結果が「ＹＥＳ」（ＳＴＲＡＳＴＦ＜ＡＣＣＡＳＴＦ）である場合はステップＳ５１８に進み、判定結果が「ＮＯ」（ＳＴＲＡＳＴＦ≧ＡＣＣＡＳＴＦ）である場合はステップＳ５１１に進む。
【０１１０】
ステップＳ５１１では最終アシスト指令値ＡＳＴＰＷＲＦに最終発進アシスト演算値ＳＴＲＡＳＴＦを代入し、ステップＳ５１２で発進アシストをセットしてステップＳ５１３に進む。
ステップＳ５１８では最終アシスト指令値ＡＳＴＰＷＲＦに最終通常アシスト演算値ＡＣＣＡＳＴＦを代入し、ステップＳ５１９で通常アシストをセットしてステップＳ５１３に進む。
ステップＳ５２３において、スクランブルアシスト許可フラグＦ＿ＳＣＲＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（スクランブルアシスト許可）である場合はステップＳ５２４に進む。ステップＳ５２３における判定結果が「ＮＯ」である場合はステップＳ５１８に進む。
【０１１１】
ステップＳ５２４において、最終スクランブルアシスト演算値ＳＴＲＡＳＴＦが最終通常アシスト演算値ＡＣＣＡＳＴＦより小さいか否かを判定する。判定結果が「ＹＥＳ」（ＳＣＲＡＳＴＦ＜ＡＣＣＡＳＴＦ）である場合はステップＳ５１８に進み、判定結果が「ＮＯ」（ＳＣＲＡＳＴＦ≧ＡＣＣＡＳＴＦ）である場合はステップＳ５２５に進む。
ステップＳ５２５では最終アシスト指令値ＡＳＴＰＷＲＦに最終スクランブルアシスト演算値ＳＣＲＡＳＴＦを代入し、ステップＳ５２６でスクランブルアシストをセットしてステップＳ５１３に進む。
したがって、その前段階での判定により、最終発進アシスト演算値ＳＴＲＡＳＴＦ、最終通常アシスト演算値ＡＣＣＡＳＴＦ、最終スクランブルアシスト演算値ＳＣＲＡＳＴＦのうちで、もっとも大きい数値が最終アシスト指令値ＡＳＴＰＷＲＦにセットされることとなる。
【０１１２】
ステップＳ５１３において、車速ＶＰに応じてテーブル（図示せず）検索により求めた所定値＃ＡＳＴＶＨＧをアシスト量上限値ＡＳＴＶＨＧにセットしてステップＳ５１４に進む。
ステップＳ５１４では最終アシスト指令値ＡＳＴＰＷＲＦがアシスト量上限値ＡＳＴＶＨＧ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ５２０に進み、判定結果が「ＮＯ」である場合はステップＳ５１５に進む。ステップＳ５１５において、全気筒休止復帰アシスト算出処理（ＲＣＳＡＳＴ＿ＣＡＬ）がなされステップＳ５１６に進む。
ステップＳ５２０において、最終アシスト指令値ＡＳＴＰＷＲＦにアシスト量上限値ＡＳＴＶＨＧを代入してステップＳ５１５に進む。
ステップＳ５１６において、気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴが「１」か否かを判定する。判定結果が「ＹＥＳ」（全気筒休止復帰アシスト許可）である場合はステップＳ５２１に進み、判定結果が「ＮＯ」である場合はステップＳ５１７に進む。
ステップＳ５１７では最終充電指令値ＲＥＧＥＮＦに「０」をセットして処理を繰り返す。
【０１１３】
ステップＳ５２１において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦが最終アシスト指令値ＡＳＴＰＷＲＦ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ５２２に進み、判定結果が「ＮＯ」である場合はステップＳ５１７に進む。
ステップＳ５２２では最終アシスト指令値ＡＳＴＰＷＲＦに最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦをセットしてステップＳ５１７に進む。
したがって、上記最終発進アシスト演算値ＳＴＲＡＳＴＦ、最終通常アシスト演算値ＡＣＣＡＳＴＦ、最終スクランブルアシスト演算値ＳＣＲＡＳＴＦ、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦのうちでもっとも大きい数値が最終アシスト指令値ＡＳＴＰＷＲＦにセットされることとなる。
【０１１４】
「全気筒休止復帰アシスト算出処理」
次に、図１５に基づいて、図１４のステップＳ５１５の全気筒休止復帰アシスト算出処理について説明する。この処理では全気筒休止から通常運転に移行した場合にアシストを行うか否かを判定すると共にアシスト量の設定を行う。具体的には気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴのセット・リセットと最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦの算出を行う処理である。尚、この処理は所定周期で繰り返される。
ステップＳ６０１において、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳが「１」か否かを判定する。判定結果が「ＹＥＳ」である場合、つまり全気筒休止中でアシスト要求があった場合はステップＳ６０２に進み、判定結果が「ＮＯ」である場合はステップＳ６１２に進む。
【０１１５】
ステップＳ６１２では気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴに「０」をセットし、ステップＳ６１３において最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦに「０」をセットして制御を終了する。
ステップＳ６０２において、例えば、予め定められたマップによりアシスト量＃ＲＣＳＡＳＴＭを求めて全気筒休止復帰アシスト演算値ＲＣＳＡＳＴにセットしステップＳ６０３に進む。ここで、このマップはエンジン回転数ＮＥと、スロットル開度の現在値ＴＨＥＭにより定められたものでありエンジンの通常出力と同等、又は近い値がセットされている。尚、このマップはＭＴ車とＣＶＴ車で共通である。
【０１１６】
ステップＳ６０３において、徐々加算徐々減算更新タイマＴＲＣＳＡＳＴが「０」か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ６０４に進み、判定結果が「ＮＯ」である場合はステップＳ６０８に進む。
ステップＳ６０４において、徐々加算徐々減算更新タイマＴＲＣＳＡＳＴにタイマ値＃ＴＭＲＣＳＡＳＴをセットしてステップＳ６０５に進む。
ステップＳ６０５において、全気筒休止復帰アシスト演算値ＲＣＳＡＳＴが最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ６０６に進み、判定結果が「ＮＯ」である場合はステップＳ６０９に進む。
【０１１７】
ステップＳ６０６において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦにアシスト量の徐々加算項＃ＤＲＣＳＡＳＴＰを加えてステップＳ６０７に進む。
ステップＳ６０７において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦが全気筒休止復帰アシスト演算値ＲＣＳＡＳＴ以下か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ６０８に進み、判定結果が「ＮＯ」である場合はステップＳ６１１に進む。ステップＳ６１１では、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦに全気筒休止復帰アシスト演算値ＲＣＳＡＳＴをセットしてステップＳ６０８に進む。
ステップＳ６０８では気筒休止復帰アシスト許可フラグＦ＿ＲＣＳＡＳＴに「１」をセットして制御を終了する。
【０１１８】
ステップＳ６０９において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦからアシスト量の徐々減算項＃ＤＲＣＳＡＳＴＭを減算してステップＳ６１０に進む。
ステップＳ６１０において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦが全気筒休止復帰アシスト演算値ＲＣＳＡＳＴ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ６０８に進み、判定結果が「ＮＯ」である場合はステップＳ６１１に進む。
ステップＳ６０７において、最終全気筒休止復帰アシスト演算値ＲＣＳＡＳＴＦが全気筒休止復帰アシスト演算値ＲＣＳＡＳＴ以上か否かを判定する。判定結果が「ＹＥＳ」である場合はステップＳ６０８に進み、判定結果が「ＮＯ」である場合はステップＳ６１１に進む。
【０１１９】
次に作用について説明する。
したがって、車両が減速モード以外で走行している場合には、図８のステップＳ１４１において燃料カットフラグＦ＿ＦＣが「０」となり、全気筒休止解除条件が成立し（Ｆ＿ＡＬＣＳＳＴＰ＝１）、図６のステップＳ１０６における判別は「ＹＥＳ」となる。よって、ステップＳ１２０において全気筒休止実施フラグＦ＿ＡＬＣＳが「０」となり、全気筒休止は行われない。
一方、走行している車両が減速回生モード（減速回生許可フラグＦ＿ＭＡＤＥＣＲＧＮ＝１）に入ると、図８のステップＳ１４１において燃料カットフラグＦ＿ＦＣが「１」となり、図９のステップＳ２１２で燃料カットフラグＦ＿ＦＣ＝１となる。これにより、図６のステップＳ１０４において全気筒休止の前条件が成立し、ステップＳ１０６において全休筒解除条件が不成立となると、この時点から所定時間（ＴＡＬＣＳＤＬＹ１）経過後に、ステップＳ１０９においてスプールバルブＳＶのソレノイドがＯＮ作動する。そして、油圧（ＰＯＩＬ）が所定値（＃ＰＯＩＬＣＳＨ）以上となり、さらに所定時間（ＴＣＳＤＬＹ１）経過後にステップＳ１１３において全気筒休止実施フラグＦ＿ＡＬＣＳが「１」となり全気筒休止運転がなされる。
その結果、図２３のタイムチャートで、燃料カットフラグＦ＿ＦＣと、減速回生許可フラグＦ＿ＭＡＤＥＣＲＧＮが「１」になってから、全気筒休止実施フラグＦ＿ＡＬＣＳが「１」となる。
【０１２０】
そして、全気筒休止運転中に、図６のステップＳ１０６において全休筒解除条件が成立すると、この時点から所定時間（ＴＡＬＣＳＤＬＹ２）経過後に、ステップＳ１１６においてスプールバルブＳＶのソレノイドがＯＦＦ作動する。そして、油圧（ＰＯＩＬ）が所定値（＃ＰＯＩＬＣＳＬ）以下となり、さらに所定時間（ＴＣＳＤＬＹ２）経過後にステップＳ１２０において全気筒休止実施フラグＦ＿ＡＬＣＳが「０」となり通常運転となる。よって、図９に示すように全気筒休止実施フラグＦ＿ＡＬＣＳと全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬとが「０」となった後に、図２３のタイムチャートで示すように燃料カットフラグＦ＿ＦＣ（及び減速回生許可フラグＦ＿ＭＡＤＥＣＲＧＮ）が「０」、つまり燃料カットが解除され通常運転となる。
【０１２１】
また、例えば、全気筒休止運転中に、加速するために運転者がアクセルペダルを踏み込み、そのスロットル開度ＴＨＥＭがスロットル開度の閾値（ＭＴ車の場合は閾値＃ＴＨＲＣＳＭ、ＣＶＴ車の場合は＃ＴＨＲＣＳＣ）以上である場合（図１２のステップＳ４０５，Ｓ４０９）には、全気筒休止復帰アシスト要求フラグＦ＿ＭＡＳＴＲＣＳがセット（ステップＳ４０６）されるため、ステップＳ３２９，Ｓ３４３における判定が「ＹＥＳ」となり、図１１のステップＳ３４８においてモータによりエンジンが駆動補助される。
ここで、全気筒休止を行っている場合には吸気管負圧が発生しない関係で、この吸気管負圧を判定の基準とできないが、これに替えてＣＶＴ車の場合にはスロットル開度ＴＨＥＭと車速ＶＰ（図２２に対応するステップＳ４０９）、ＭＴ車の場合にはスロットル開度ＴＨＥＭとエンジン回転数ＮＥ（図２１に対応するステップＳ４０５）とにより運転者の加速意思を把握することができる。
また、全気筒休止中にアクセルペダルを踏み込んで加速する場合に、エンジンＥを駆動補助するモータＭの駆動補助量はエンジン回転数ＮＥとスロットル開度ＴＨＥＭのマップにより定められたものであるため、エンジンの通常出力と同等、又は近い値をセットできる。
そして、全気筒休止復帰アシスト継続タイマＴＲＣＳＨＬＤ（ステップＳ４０８）を設けているため、全気筒休止から復帰して燃料噴射量が徐々に加算され所定量になった後に、エンジンＥが通常の出力を発生するまでの間はモータＭによる駆動補助を行うことができる。
【０１２２】
上記実施形態によれば、基本的に減速燃料カット時に全気筒休止実施フラグＦ＿ＡＬＣＳ（＝１）により全気筒休止が判別されると、可変バルブタイミング機構ＶＴによって休筒運転が可能となるため、燃料カットと共に全気筒休止を行って燃料消費量を抑え燃費向上を図ることができる。
前記全気筒休止実施フラグＦ＿ＡＬＣＳ（＝０）により全気筒休止の解除を判別し、前記全気筒休止用ソレノイドフラグＦ＿ＡＬＣＳＳＯＬにより可変バルブタイミング機構ＶＴの非作動状態を検出した場合に、エンジンへの燃料供給停止を解除しその後再開することが可能となるため、全気筒休止中に燃料が供給されることはなく全気筒休止運転から通常運転への移行を燃料を無駄にせずスムーズに行うことができる。
【０１２３】
また、ＣＶＴ車の場合にはスロットル開度ＴＨＥＭと車速ＶＰ、ＭＴ車の場合にはスロットル開度ＴＨＥＭとエンジン回転数ＮＥとにより運転者の加速意思を把握することができるため、運転者の意思に的確に対応して気筒休止運転から通常運転への移行を違和感なくスムーズに行うことができる。
また、全気筒休止中にアクセルペダルを踏み込んで加速する場合に、エンジンＥを駆動補助するモータＭの駆動補助量はエンジン回転数ＮＥとスロットル開度ＴＨＥＭのマップにより定められたものであるため、エンジンの通常出力と同等、又は近い値をセットでき、その結果、通常運転の際の加速感と同等の感覚を付与し違和感なく通常運転に移行できる。
そして、全気筒休止復帰アシスト継続タイマＴＲＣＳＨＬＤ（ステップＳ４０８）を設けているため、全気筒休止から復帰して燃料噴射量が徐々に加算され所定量になった後に、エンジンＥが通常の出力を発生するまでの間はモータＭによる駆動補助を行うことができ、したがって、通常運転へのスムーズな移行が確実なものとなる。
【０１２４】
【発明の効果】
以上説明してきたように、請求項１に記載した発明によれば、気筒休止復帰アシスト判定手段が筒休止運転から通常運転への移行を判定し、かつ、スロットル開度が所定以上であると判定した場合に、気筒休止により不足しているエンジンの駆動力をモータにより駆動補助することができるため、気筒休止運転から通常運転への移行を違和感なくスムーズに行うことができる効果がある。
【０１２５】
請求項２に記載した発明によれば、気筒休止を行っている関係で判定の基準とできない吸気管負圧に替えて、スロットル開度と車速とにより運転者の加速意思を把握できるため、自動変速機を備えたハイブリッド車両において運転者の意思に的確に対応することができる効果がある。
【０１２６】
請求項３に記載した発明によれば、気筒休止を行っている関係で判定の基準とできない吸気管負圧に替えて、スロットル開度とエンジン回転数とにより運転者の加速意思を把握できるため、手動変速機を備えたハイブリッド車両において運転者の意思に的確に対応することができる効果がある。
【０１２７】
請求項４に記載した発明によれば、通常運転において用いられると同等のエンジン出力を発生させることができるような設定が可能となるため、通常運転の際の加速感と同等の感覚を付与し違和感なく通常運転に移行できる効果がある。
【０１２８】
請求項５に記載した発明によれば、気筒休止から復帰して燃料噴射量が所定量になった後に、エンジンが通常の出力を発生するまでの間、モータによる駆動補助を行うことができるため、通常運転へのスムーズな移行が確実なものとなるという効果がある。
【図面の簡単な説明】
【図１】  実施形態のパラレルハイブリッド車両を示す概略構成図である。
【図２】  実施形態の可変バルブタイミング機構を示す正面図である。
【図３】  実施形態の可変バルブタイミング機構を示し、（ａ）は全気筒運転状態での可変バルブタイミング機構の要部断面図、（ｂ）は全気筒休止運転状態での可変バルブタイミング機構の要部断面図である。
【図４】  実施形態のＭＡ（モータ）基本モードを示すフローチャート図である。
【図５】  実施形態のＭＡ（モータ）基本モードを示すフローチャート図である。
【図６】  実施形態の全気筒休止運転切替実行処理を示すフローチャート図である。
【図７】  実施形態の全気筒休止前条件実施判断処理を示すフローチャート図である。
【図８】  実施形態の全気筒休止解除条件判断処理を示すフローチャート図である。
【図９】  実施形態の燃料カット実行判定処理を示すフローチャート図である。
【図１０】  実施形態のアシストトリガ判定のフローチャート図である。
【図１１】  実施形態のアシストトリガ判定のフローチャート図である。
【図１２】  実施形態の全気筒休止アシストトリガ判定のフローチャート図である。
【図１３】  実施形態の加速モードのフローチャート図である。
【図１４】  実施形態の加速モードのフローチャート図である。
【図１５】  実施形態の全気筒休止復帰アシスト算出処理のフローチャート図である。
【図１６】  実施形態のスロットルアシストトリガテーブルを示すグラフ図である。
【図１７】  実施形態の吸気管負圧アシストモードにおけるＭＴ車の閾値のグラフ図である。
【図１８】  実施形態のステップＳ３３０とステップＳ３４４の数値を求めるためのグラフ図である。
【図１９】  実施形態のステップＳ３３１とステップＳ３４５における算出のためのグラフ図である。
【図２０】  実施形態の吸気管負圧アシストモードにおけるＣＶＴ車の閾値のグラフ図である。
【図２１】  実施形態のＭＴ車の全気筒休止復帰アシストトリガ判定テーブルを示すグラフ図である。
【図２２】  実施形態のＣＶＴ車の全気筒休止復帰アシストトリガ判定テーブルを示すグラフ図である。
【図２３】  この発明の実施形態のタイムチャート図である。
【符号の説明】
Ｅ  エンジン
Ｍ  モータ
Ｓ３１０  気筒休止復帰アシスト判定手段
【図１】
0003701568.tif 000002
【図２】
0003701568.tif 000003
【図３】
0003701568.tif 000004
【図４】
0003701568.tif 000005
【図５】
0003701568.tif 000006
【図６】
0003701568.tif 000007
【図７】
0003701568.tif 000008
【図８】
0003701568.tif 000009
【図９】
0003701568.tif 000010
【図１０】
0003701568.tif 000011
【図１１】
0003701568.tif 000012
【図１２】
0003701568.tif 000013
【図１３】
0003701568.tif 000014
【図１４】
0003701568.tif 000015
【図１５】
0003701568.tif 000016
【図１６】
0003701568.tif 000017
【図１７】
0003701568.tif 000018
【図１８】
0003701568.tif 000019
【図１９】
0003701568.tif 000020
【図２０】
0003701568.tif 000021
【図２１】
0003701568.tif 000022
【図２２】
0003701568.tif 000023
【図２３】
0003701568.tif 000024