(57)【特許請求の範囲】
【請求項１】
車両の運転状態に応じてキャタライザを備えたエンジンの自動停止及び自動始動を行うエンジン自動始動停止制御装置において、
外気温を検出する外気温検出手段と、
前記エンジンのエンジン水温を検出するエンジン水温検出手段と、
前記外気温検出手段と前記エンジン水温検出手段とにより検出された外気温及びエンジン水温に基づいて前記キャタライザの温度が低下しないよう前記エンジンの停止の可否を判断する判別手段とを備え、
前記判別手段は、前記外気温が低いときに対応した前記エンジン水温のエンジン停止可否判断閾値が、前記外気温が高いときに対応した前記エンジン水温のエンジン停止可否判断閾値に比べて、高い値に設定されることを特徴とするエンジン自動始動停止制御装置。
【請求項２】
前記エンジンの吸気通路内に吸入空気の温度を検出する吸気温検出手段を備え、
前記外気温検出手段は、車両が走行してから所定時間経過後の吸気温検出手段により求められた吸気温から推定して前記外気温を得ることを特徴とする請求項１記載のエンジン自動始動停止制御装置。
【請求項３】
前記車両は、車室内の空調を制御する空調制御装置を備え、
前記判別手段は、前記空調制御装置の動作状態を判別し、前記空調制御装置が動作状態と判別したら、前記外気温が第１所定値以下であるかまたは前記第１所定値より大きい第２所定値以上である場合には、前記エンジン水温にかかわらず、前記エンジンを停止しないと判断することを特徴とする請求項１又は請求項２に記載のエンジン自動始動停止制御装置。
【請求項４】
前記判別手段は、前記空調制御装置が動作状態と判別したら、前記外気温が前記第１所定値を超え且つ前記第２所定値未満の場合には、前記エンジン水温が所定値以下の場合のみに、前記エンジンを停止しないと判断することを特徴とする請求項３に記載のエンジン自動始動停止制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジン自動始動停止制御装置に係り、特に所定の条件が成立したときにアイドリング動作を停止するようエンジンを制御するエンジン自動始動停止制御装置に関する。
【０００２】
【従来の技術】
近年、温暖化問題等の環境問題が注目され、二酸化炭素等の排出量を低減するために電気自動車やハイブリッド車両の開発が盛んに行われている。電気自動車は、排出ガス量がゼロであるため上記環境問題を鑑みた場合には最も好ましいが、一度の充電で走行することのできる距離が短く、内燃機関を用いた車両の実用性がこれからの課題とされている。
【０００３】
一方、ハイブリッド車両は、エンジン及びモータを備え、エンジンの回転によってバッテリを充電しつつ、二酸化炭素等の排出量が比較的多いエンジン回転数の低い領域ではモータ単独走行若しくはエンジンとモータの併用による走行を行うことで二酸化炭素の排出量を低減させることが可能である。ハイブリッド車両は従来の車両特性（走行距離や運転性）を維持しながらも二酸化炭素の排出量を少なくでき、遠距離走行も可能とし近年実用化されている。
【０００４】
【発明が解決しようとする課題】
このような背景の下、アイドリング時にエンジンの停止を行い燃料燃焼による排出ガスの低減や燃料消費そのものを低減することを目的とし、ドライバーによりエンジンの停止をさせるのではなく自動的に停止を行う技術が注目されている。しかしながら、アイドリングの停止を行うと燃焼された高温の排出ガスは当然ながらエンジンから排出されなくなるが、この排出ガスが排出されなくなるとキャタライザの温度自体が下がることになる。キャタライザはある温度下において、排出ガスの化学反応を促進して、ＮＯx等の排出ガス量を低減するものである。よって、燃料燃焼による排出ガス量の低減に着目してエンジンのアイドリングを停止した場合、キャタライザの温度が低下し、その結果エンジンを再始動した場合に排出ガスの量がかえって増加するという問題があった。
【０００５】
本発明は上記事情に鑑みてなされたものであり、アイドリングを停止したときにキャタライザの温度低下を防止し、その結果排出ガス量を低減することのできるエンジン自動始動停止制御装置を提供することを目的とする。
【０００６】
【課題を解決するための手段】
上記課題を解決するために、本発明は、車両の運転状態に応じてキャタライザを備えたエンジンの自動停止及び自動始動を行うエンジン自動始動停止制御装置において、外気温を検出する外気温検出手段（１８、Ｓ１００〜Ｓ１１４）と、前記エンジンのエンジン水温を検出するエンジン水温検出手段（１８、Ｓ２００）と、前記外気温検出手段と前記エンジン水温検出手段とにより検出された外気温及びエンジン水温に基づいて前記キャタライザの温度が低下しないよう前記エンジンの停止の可否を判断する判別手段（１８、ＳＡ２０、ＳＡ２２、ＳＣ１８，ＳＣ２０、Ｓ１０６〜Ｓ１１４）とを備え、前記判別手段は、前記外気温が低いときに対応した前記エンジン水温のエンジン停止可否判断閾値（ＴＷ２）が、前記外気温が高いときに対応した前記エンジン水温のエンジン停止可否判断閾値（ＴＷ１）に比べて、高い値に設定されることを特徴としている。
本発明は、エンジンの停止の判断を行う場合に、判別手段が外気温及びエンジン水温を考慮して行う点を根本としているためキャタライザの温度低下を防止してキャタライザの性能維持を図り、その結果排出ガス量を低減することができる。
また、本発明は、前記車両は、車室内の空調を制御する空調制御装置（２１）を備え、前記判別手段は、前記空調制御装置の動作状態を判別し、前記空調制御装置が動作状態と判別したら、前記外気温が第１所定値（ＴＡ０）以下であるかまたは前記第１所定値より大きい第２所定値（ＴＡ３）以上である場合には、前記エンジン水温にかかわらず、前記エンジンを停止しないと判断することを特徴とする。
また、本発明は、前記判別手段は、前記空調制御装置が動作状態と判別したら、前記外気温が前記第１所定値（ＴＡ０）を超え且つ前記第２所定値（ＴＡ３）未満の場合には、前記エンジン水温が所定値（ＴＷ２）以下の場合のみに、前記エンジンを停止しないと判断することを特徴とする
この発明によれば、外気温が所定の範囲内にある場合には、エンジン水温が予め設定された温度以上でなければ前記エンジンのアイドル停止が行われなくなるので、外気温が低いためにキャタライザの温度低下が速く、キャタライザの性能が急速に低下するという事態を防止することができる結果、寒冷地においても有効に排出ガス量を低減することができる。
【０００７】
【発明の実施の形態】
以下、図面を参照して本発明の実施形態によるエンジン自動始動停止制御装置について詳細に説明する。
図１は、本発明の実施形態によるエンジン自動始動停止制御装置の概略構成を示すブロック図である。本発明の実施形態によるエンジン自動始動停止制御装置は、エンジンＥＣＵ（エンジン自動始動停止制御装置）１が図示しないエンジンへの燃料供給の有無、エンジンの始動や停止を制御している。エンジンＥＣＵ１は、基本的に符号Ｐ１を付して示した各種センサーから出力される信号及び各種スイッチから出力される信号に基づき上記エンジンの制御を行う。
【０００８】
各種センサーから出力される信号及び各種スイッチから出力される信号は、車速を表す信号、アクセルペダルの開度を示す信号、エンジン水温を示す信号、エンジン吸気温を示す信号、イグニッションＳＷのＯＮ／ＯＦＦを示す信号、ブレーキが踏み込まれたか否かを示す信号、シフト位置を示す信号、クラッチが踏み込まれたか否かを示す信号（ＭＴを備える車両の場合）、倍力機構を備えるブレーキのマスターパワー負圧を示す信号等がある。
【０００９】
このとき、ＣＶＴを備える車両であればＣＶＴ ＥＣＵ２に対してアイドル停止実施要求を出力し、ＣＶＴ ＥＣＵ２からＣＶＴがアイドル停止を行う準備が完了した旨を示す信号が出力された場合にのみエンジン制御を行う。これは、ＣＶＴの機構上の理由からである。この詳細については後述する。尚、本明細書及び図面中の語句「アイドル停止」とは、エンジンのアイドリングを停止することをいう。
【００１０】
また、モータを有するハイブリッド車両の場合には、モータの電源となるバッテリの状態（残容量、温度等）を制御するバッテリＥＣＵ４及びモータの状態（モータ回転数等）を制御するモータＥＣＵ３が設けられ、バッテリＥＣＵ４から出力されるバッテリ残容量ＳＯＣ（State Of Charge）及びモータの状態を示す信号（例えば、モータで始動できるか否かを示す信号）に基づきエンジンの制御を行う。これらを考慮するのは、例えばハイブリッド車両においてはエンジンがアイドル停止により自動的に停止されている場合にもバッテリから各部（ＥＣＵ、ヘッドライト、ウインカ等）への電力の供給がなされており、これらにより電力を消費し過ぎるとエンジンの再始動を行えなくなったり始動後のモータによる駆動ができなくなってしまう虞があるからである。
【００１１】
更に、一般の車両は、エンジンの駆動力を利用したエアーコンディショナ（以下、エアコンという）を備えている。従って、アイドル停止を制御する車両においてアイドル停止実行中はエアコンが使えなくなる。よって、外気温が高い場合や低い場合に、車速やエンジン回転数等の車両の状態のみに基づいてエンジン制御を行っていたのでは快適なドライビングが確保できない場合が考えられる。そこで、エアコンを制御するエアコンＥＣＵ５を備え、運転者が設定したエアコンの稼働状態に基づきエンジン制御を行う。
【００１２】
〔第１実施形態〕
次に、本発明の第１実施形態によるエンジン自動始動停止制御装置について図面を参照して詳細に説明する。
図２は、本発明の第１実施形態によるエンジン自動始動停止制御装置の構成を示すブロック図である。この第１実施形態においては、マニュアルトランスミッションを備えるハイブリッド車両に適用した場合について説明する。
【００１３】
図２において、１０はエンジンであり、その駆動力はマニュアルトランスミッション１２を介して車輪１４，１４に伝達される。車輪１４には、図示は省略しているが、回転する度にパルスを発生するパルス発生器が設けられており、後述のエンジンＥＣＵ１８がパルス間隔から車速を求める。また、エンジン１０と並列に例えば三相交流で動作するモータ／発電機１６が設けられている。モータ／発電機１６の回転軸とエンジン１０の回転軸とは直結されている。このモータ／発電機１６は、エンジン１０が停止している場合には、その駆動力がマニュアルトランスミッション１２を介して車輪１４，１４に伝達され、エンジン１０が駆動している状態では、エンジン１０によって回転されて発電機の役割を果たす。
【００１４】
１８は、エンジンＥＣＵであり、信号線１０ａを介してエンジン１０から出力されるエンジン回転数Ｎe、吸気管負圧Ｐb、水温ＴＷ、吸気温等を示す信号が入力されるとともに、信号線２０ａを介してペダル２０を踏み込んだか否かを示す信号が入力され、これらの信号の値に応じて信号線１８ａを介してエンジン１０に供給する燃料及び点火時期を制御する信号を出力する。エンジンの吸気温を測定する温度センサ（吸気温検出手段）は例えばエアクリーナ（図示省略）とエンジン１０との間の吸気通路内に配置されている。上記ペダル２０は、アクセルペダル、クラッチペダル、及びブレーキペダルであり、アクセルペダルの場合には、上記信号とともにや踏み込み角度を示す信号θThが出力される。また、１９はシフトレバーであり、運転者の操作に応じて設定されたギアの段数を示す信号がエンジンＥＣＵ１８へ出力される。２１はエアコンＥＣＵであり、運転者の設定に応じてアイドル停止の許可／不許可を示す信号をエンジンＥＣＵ１８へ出力する。
【００１５】
また、エンジンＥＣＵ１８は信号線１８ｂ，２２ａを介してモータＥＣＵ２２と接続されている。エンジンＥＣＵ１８からモータＥＣＵ２２へは信号線１８ｂを介してモータ／発電機１６の動作開始や出力パワーを指示する制御信号が出力される。また、モータＥＣＵ２２からエンジンＥＣＵ１８へは信号線２２ａを介して後述するバッテリ２６の残容量及びバッテリ２６の出力電流の値がそれぞれ出力される。
【００１６】
２４はモータ／発電機１６に接続されたパワードライブユニットであり、モータＥＣＵ２２から信号線２２ｂを介して出力される制御信号に基づいてバッテリ２６から供給される電力を所定の値を有する三相交流に変換し、モータ／発電機１６に供給する。また、パワードライブユニット２４は、モータ／発電機１６を流れる相電流及び全電流を検出しており、検出された相電流及び全電流は、信号線２４ａを介してモータＥＣＵ２２へ出力される。モータＥＣＵ２２は、前述のエンジンＥＣＵ１８から信号線１８ｂを介して出力される制御信号で指示されるモータの出力パワーが実際に得られるよう、パワードライブユニット２４から信号線２４ａを介して入力される相電流及び全電流を考慮して、モータ／発電機１６へ供給する電力指示量を演算し、信号線２２ｂを介して制御信号として出力する。
【００１７】
バッテリ２６とパワードライブユニット２４との間にはバッテリ２６の出力電流を検出する電流検出器３１が設けられ、その検出値はバッテリＥＣＵ３２へ出力される。また、バッテリ２６は電圧検出器及び温度検出器（各々図示省略）が設けられ、それらの検出電圧及び検出温度は信号線２６ａを介して各々バッテリＥＣＵ３２へ出力される。
【００１８】
更に、パワードライブユニット２４とバッテリ２６との間にはダウンバータ２８が接続されている。このダウンバータ２８はパワードライブユニット２４又はバッテリ２６から出力される直流電圧を例えば１２［Ｖ］に変換して出力する。ダウンバータ２８にはバッテリ３０（出力電圧は、例えば１２［Ｖ］）が接続されるとともに電気負荷２９が接続されている。こ電気負荷２６は、例えばワイパー、ヘッドライト及びエンジンＥＣＵ１８、モータＥＣＵ２２、バッテリＥＣＵ３２等の制御装置も含まれる。バッテリ３０には電圧検出器及び電流検出器（各々図示省略）が設けられ、それらの検出電圧及び検出電流は信号線３０ａを介して各々バッテリＥＣＵ３２へ出力される。
【００１９】
バッテリＥＣＵ３２は、バッテリ２６及びバッテリ３０の状態、例えば残容量、温度、電流値を監視しており、信号線３２ａを介してバッテリ２６の残容量及び出力電流並びにバッテリ３０の出力電流をモータＥＣＵ２２へ出力する。
また、３４はエンジン１０がアイドル停止状態にあるか否かを運転者に警告する警告装置であり、例えば運転席の表示パネルに設けられる。この警告装置３４は、例えば、車両が停止している状態でアイドル停止制御が行われた場合、クラッチペダルから足が離されたとき、つまりクラッチペダルが全閉状態となったときにランプ等を点滅する。エンジン動作が再開される場合は、運転者の意志のみではなく、例えばバッテリ２６の残容量が低下した場合にも行われる。この場合にクラッチペダルを踏み込まないとエンジンの再始動が行われないので、クラッチ踏み込みによりエンジンの再始動要求を運転者に通知する。また、警告装置３４は、アイドル停止中にドアが開状態となった場合に警告音等や停止状態である旨を示すランプによりアイドル停止中である旨を運転者に通知する。
【００２０】
次に、上記構成における本発明の第１実施形態によるエンジン自動始動停止制御装置が備えられた車両の全体の動作について概説する。
まず、エンジン１０によって走行する場合について説明する。
運転者がペダル２０を踏み込むと、踏み込んだペダル２０の種類に応じた信号が信号線２０ａを介して出力され、これらの信号に応じてエンジンＥＣＵ１８は信号線１８ａを介してエンジンに供給する燃料を制御する信号及び点火時期を制御してエンジン１０の動作を制御する。
【００２１】
エンジン１０からは信号線１０ａを介して出力されるエンジン回転数、吸気管負圧、及び水温を示す信号がそれぞれ出力され、エンジンＥＣＵ１８は、これらの信号に基づき、エンジン１０を制御する。一方、エンジン１０の回転によってモータ／発電機１６が発電を行う。モータ／発電機１６によって発電された電力は、パワードライブユニット２４を介してバッテリ２６へ供給されてバッテリ２６の充電が行われ、ダウンバータ２８を介してバッテリ３０も充電される。また、電流検出器３１はパワードライブユニット２４からバッテリ２６へ流れる電流の値を検出しバッテリＥＣＵ３２へ出力する。
【００２２】
次に、モータ／発電機１６の駆動力によって走行する場合について説明する。
この場合は運転者がペダル２０を踏み込むと、エンジンＥＣＵ１８はバッテリ２６の残容量が所定の値以上であればアクセルペダルの踏み込み角度を示す信号に基づいた制御信号をモータＥＣＵ２２へ出力する。モータＥＣＵ２２はパワードライブユニット２４へ制御信号を出力しモータ／発電機１６の回転を制御する。
【００２３】
以上、エンジン１０のみによって駆動を開始する場合及びモータ／発電機１６のみによって駆動を開始する場合の動作の概略について説明したが、エンジンＥＣＵ１８は各種センサーから出力される信号及び各種スイッチから出力される信号並びにエアコンＥＣＵ２１，モータＥＣＵ２２、バッテリＥＣＵ３２から出力される信号によって所定の条件が成立した場合に前述したエンジンのアイドリングを停止し、また所定の条件が成立した場合にエンジンのアイドリングを開始する。
【００２４】
以下、アイドリングの停止及び開始を行う制御について説明する。
本実施形態では以下の場合にアイドル停止又は再開を行い、排出ガス量の低減を図るとともに、運転性（使い勝手）の向上を図っている。
（１）減速中からのエンジン停止
車速が所定値以下であって、ブレーキの踏み込みが継続され、且つエンジン回転数が所定値以下の場合であってクラッチが踏み込まれたときに運転者が車両を停止する意志があると判断してエンジンを停止する。例えば車速が３０ｋｍ／ｈ以下の場合にブレーキの踏み込みが継続され、エンジン回転数が１０００ｒｐｍ以下となった場合であってクラッチが踏み込まれたときにエンジンを停止する。また、この条件が成立してエンジンを停止した場合であってもギアチェンジがされた場合にはエンジンの再始動を行う。これは車両が完全に停止せず走行を継続していた場合でも行う。
【００２５】
（２）停車時のアイドル停止
車速が所定値以下でクラッチが踏み込まれた場合又はギアがニュートラルにされた場合に、車両が停止されると判断してエンジンを停止する。例えば、車速が５ｋｍ／ｈ以下であってクラッチが踏み込まれている場合又はギアがニュートラルにされた場合にエンジンを停止する。また、この条件が成立してエンジンを停止した場合であってもギアチェンジがされた場合にはエンジンの再始動を行う。これは車両が完全に停止せず走行を継続していた場合でも行う。この制御は上記（１）と別個に行われ、上記（１）の制御でエンジンを停止した後にエンジンを始動し、（２）の制御によってエンジンを再び停止するという制御をする訳ではない。この制御は、例えば、車速が４０ｋｍ／ｈからクラッチのみを踏み込んだまま減速を行うという特殊な操作を行い上記（１）の条件が成立しない場合であってもエンジンを停止させる制御を行うためのものである。
【００２６】
（３）再始動後のアイドル停止禁止
インギア状態で再始動した後、再度ギアをニュートラルにした場合は、１度はアイドル停止を許可するが、この操作を２度以上行った場合には所定の車速、例えば３ｋｍ／ｈになるまでアイドル停止を禁止する。渋滞ではインギア状態で低速で僅かな距離を走行しギアをニュートラルにして停車するといった動作が繰り返されるが、この動作がエンジン停止状態で継続されると、バッテリ電力の消費が大となる。よって、インギア状態で始動した後に所定の車速に達せずにギアをニュートラルにした場合は原則としてアイドル停止動作を行うが、再度インギア状態で始動し、所定の車速に達する前に再びギアがニュートラルにされた場合にはアイドル停止を禁止するものである。
【００２７】
以上がアイドル停止／再開の基本的な制御であるが、更に以下に示した詳細な制御を行う。
（４）急加速対応
アイドル停止中にアイドル停止解除条件が整い、運転者の意志に関わらず車両が発進することを防止するものである。アイドル停止中にエンジンを再始動を許可する条件は、アイドル停止中にクラッチが踏み込まれており且つギアがニュートラルである場合に、アクセルが踏み込まれ、若しくはバッテリの残容量が低下し、又はエアコンからの要求があった場合である。ギアがニュートラルである場合のみを条件としていないのは、ニュートラルを検出するスイッチが何らかの原因で故障し、常時ニュートラルであるである旨の信号を出力している場合の車両の発進を防止するためである。
【００２８】
（５）アイドル停止通知
アイドル停止を行っている旨を運転者に通知するために、図２に示した警報装置３４を設け、アイドル停止時にはランプ点滅等を行う。
この警告装置３４は、例えば、車両が停止している状態でアイドル停止制御が行われた場合、クラッチペダルから足が離されたとき、つまりクラッチペダルが全閉状態となったときにランプ等を点滅する。エンジン動作が再開される場合は、運転者の意志のみではなく、上記（４）で示したように、例えばバッテリ２６の残容量が低下した場合にも行われる。この場合にクラッチペダルを踏み込まないとエンジンの再始動が行われないので、クラッチ踏み込みによりエンジンの再始動要求を運転者に通知する。
【００２９】
（６）警告音
アイドル停止中に運転者が誤って車両が完全に停止していると誤認し、車両から離れてしまうことが想定される。この場合、ドアが開状態となった場合に警告音等や停止状態である旨を示すランプによりアイドル停止中である旨を運転者に通知する。
【００３０】
（７）エアコンとの協調
エアコンの操作状態に応じてアイドル停止を行うか否かを制御する。例えば、車室内温度が高い場合や低い場合に、運転者は早急に車室内温度を低下又は上昇させたいときがある。この場合、アイドル停止によりエアコンが稼働していない状態を優先すると、快適性が損なわれるので、エアコンの操作状態に応じてアイドル停止を行うか否かを制御する。
【００３１】
（８）ブレーキマスターパワー負圧センサの検出結果に基づいた制御
現在の車両には一般的に倍力装置が設けられ、運転者がブレーキを踏むのに要する力を低減している。エンジンが停止している状態でブレーキペダルを踏み続けると倍力装置の負圧源が低下し、運転者がブレーキを踏むのに要する力が大となる。この場合に、エンジンを始動して負圧を確保するよう制御する。
【００３２】
（９）使い勝手の向上
イグニッションスイッチをオン状態にした後、所定時間（例えば２分間）はアイドル停止を禁止するよう制御する。また、リバースインギア時にはアイドル停止を禁止する制御を行う。前者は、例えば車両を駐車場に停車して一時間程度の間はエンジンが暖まっておりアイドル停止を行うことができるが、一般に駐車場では徐行等が多いためアイドル停止及び再開が繰り返され使い勝手が悪いという理由である。また、後者は例えば車庫入れを行う場合には、車両の前進及び後退が繰り返し行われるが、前進及び後退の度にアイドル停止を行うと使い勝手が悪いという理由である。
【００３３】
図３は、本実施形態のアイドル停止条件及び再始動条件を要約した図であり（ａ）がアイドル停止条件を、（ｂ）が再始動条件をそれぞれ示す。
図３（ａ）示されたように、条件ＣＡ１３〜ＣＡ１５がアンド演算子ＯＰ３で論理的に結合されている。また、条件ＣＡ１２とアンド演算子ＯＰ３の出力端とがオア演算子ＯＰ２によって論理的に結合され、オア演算子ＯＰ２の出力端と条件ＣＡ１〜ＣＡ１１がアンド演算子ＯＰ１で論理的に結合されている。アンド演算子ＯＰ１の出力端からアイドル停止を実施する信号が出力される。つまり、条件ＣＡ１〜ＣＡ１１が成立し、かつ、条件ＣＡ１３〜ＣＡ１５が成立するか又は条件ＣＡ１２が成立した場合にアイドル停止が実施される。
【００３４】
条件ＣＡ１は、スタータスイッチがオン状態となってから所定時間（例えば２分）経過したことを示す条件である。この条件は、上記（９）で示した制御を行うための条件である。条件ＣＡ２は、図２中のモータ／発電機１６のみによって始動が可能であるかを示す条件である。ハイブリッド車両では、アイドル停止後エンジンを再始動する場合には排出ガス低減のためモータ／発電機１６のみで行う場合が多いため、アイドル停止の前提条件となる。
【００３５】
条件ＣＡ３は、バッテリ２６の残容量（以下、バッテリ残容量と称する）が所定の範囲内にあるか否かの条件である。所定の範囲として、例えば３０％〜４０％のバッテリ残容量が挙げられる。上記条件ＣＡ３と同様に、ハイブリッド車両では、アイドル停止後エンジンを再始動する場合には排出ガス低減のためモータ／発電機１６のみで行う場合が多いため、アイドル停止の前提条件となる。
ここで、バッテリ残容量について説明する。バッテリ２６の特性として一般的に、残容量が多い（例えば８０％以上）場合、バッテリ２６の出力電圧が残容量にほぼ比例して上昇し、逆に残容量が少ない（例えば２０％）場合、バッテリの出力電圧が残容量にほぼ比例して減少する。残容量が適当な場合（例えば２０％〜８０％）は、出力電圧はほぼ一定であり、実際の使用の際にはこの領域が用いられる。このように、バッテリの残容量に応じてバッテリの使用領域が設けられたが、本実施形態においては制御を容易にするためバッテリ残容量及びバッテリ３０の電力消費量に応じて３つの異なる制御領域を設けている。
【００３６】
図４は、バッテリの残容量に応じた制御領域を説明するための図であって、（ａ）は通常走行時においてアイドル停止を行うか否かを判定する図であり、（ｂ）はアイドル停止を行っている場合にエンジンの再始動を行うか否かを判定する図である。
図４（ａ）を参照すると、アイドル停止を行うか否かはバッテリの残容量及びバッテリ３０の電力消費量に応じて３つの領域に大別されている。第１はバッテリ残容量が多いのでアイドル停止を許可する領域（図４（ａ）中符号Ｚ1が付された領域）と、バッテリ２６の電力消費量は少ないがバッテリ残容量が比較的少ないので、アイドル停止を禁止する領域（図４（ａ）中符号Ｚ2が付された領域）と、バッテリ３０の電力消費量が多いのでアイドル停止を禁止する領域（図４（ａ）中符号Ｚ3が付された領域）である。
【００３７】
図４（ａ）において、残容量Ｓ１はバッテリの使用領域の下限（例えば２０％）を定めており、残容量Ｓ２はバッテリ３０の電力消費量が少ない場合にアイドル停止を行うか否かを定めるものである。また、残容量Ｓ２，Ｓ３及び電力消費値Ｉ1，Ｉ2はバッテリＳ３０の電力消費量が多い場合にアイドル停止を行うか否かを定める。図４（ａ）に示したように、バッテリ３０の電力消費量が多い場合に４つのパラメータを用いてアイドル停止を行っている。これは、バッテリ３０の電力消費量が多いと短時間でバッテリ残容量が少なくなるので、アイドル停止許可を与える条件を厳しくし、より多い残容量のときにアイドル停止許可を許可してバッテリ残容量の短時間内の低下を極力防止するためである。
【００３８】
図３に戻り、条件ＣＡ４及び条件ＣＡ５は、エアコンの動作有無に応じて外気温ＴＡと水温ＴＷとが所定の値の場合にアイドル停止を許可する条件である。エアコンが動作状態である場合は、運転者が意図して運転席の温度を設定しているため、エアコンの動作状態に関わらずアイドル停止することは車室内の快適性を損なうことになるため条件ＣＡ５が設けられている。また、アイドル停止を行うと燃焼された高温の排出ガスがエンジンから排出されなくなりキャタライザの温度自体が下がるが、キャタライザの温度が低下すると排出ガスの量が増加する。よって、この条件ＣＡ４は、排出ガスの増加を引き起こさないためにキャタライザの温度低下を防止するものである。この条件は前述の（７）の制御を行うための条件である。
【００３９】
図５は、条件ＣＡ４と条件ＣＡ５との関係を説明するための図であり、（ａ）はエアコンが運転者の操作によって停止状態にある場合にアイドル停止を実施するか否かの条件を示しており、（ｂ）はエアコンが運転状態にある場合にアイドル停止を行うか否かの条件を示している。図５（ａ），（ｂ）において符号Ｚ11が付されている領域がアイドル停止を実施する領域であり、符号Ｚ12が付されている領域はアイドル停止を許可しない領域である。
【００４０】
エアコンが停止状態にある場合には、アイドル停止を行ってエアコンのコンプレッサを停止状態にしても車室内の快適性という観点からは問題がないと考えられる。よって、この場合はキャタライザの温度低下を考慮して制御を行う。つまりエンジン水温が水温ＴＷ１以下である場合にはアイドル停止を実施せずにエンジン１０を稼働状態とするのが基本的な制御である。しかし、外気温が所定の外気温ＴＡ１よりも低いと、時間経過によるキャタライザの温度低下が速いため、外気温ＴＡ１以下の場合には水温ＴＷ１よりも高いエンジン水温ＴＷ２を設定し、エンジン水温がこのエンジン水温ＴＷ２以上である場合にアイドル停止を実施するようにする。そして外気温がＴＡ２からＴＡ１へ下がる領域についてはエンジン水温ＴＷ１からＴＷ２へとアイドル停止可能領域を狭めてエンジン稼働時間を増やしキャタライザの温度低下を抑える。図５中の外気温ＴＡ１，ＴＡ２の値としては例えば１５℃〜２０℃程度であり、エンジン水温ＴＷ１，ＴＷ２の値は例えばそれぞれ５０℃、７５℃程度である。
【００４１】
次に、エアコンが稼働状態にある場合は、車室内の快適性及びキャタライザの温度低下の双方を考慮して制御しなければならない。つまり、外気温が低すぎる場合（ＴＡ０以下）や高すぎる場合（ＴＡ３以上）には車室内の快適性を考慮してアイドル停止制御を行わない。また、エンジン水温がＴＷ２以下の場合にはキャタライザの温度低下を考慮してアイドル停止制御を行わない。図５（ｂ）中の外気温ＴＡ０，ＴＡ３は、例えばそれぞれ１０℃、３０℃である。
【００４２】
再び図３（ａ）に戻り、条件ＣＡ６は、ギアがリバースギア以外であることの条件である。前述のように、車庫入れ等の場合には車両の前進後退動作が繰り返し行われる。よって、この後退の度にエンジン１０が停止していたのでは使い勝手が悪いため、ギアがリバースギアである場合にはアイドル停止を行わず、リバースギア以外の場合にのみアイドル停止を許可する。この条件は前述の（９）の制御を行うときの条件である。
【００４３】
条件ＣＡ７は、アクセルルペダルが全閉であるか否か、つまり運転者がアクセルペダルを踏んでいないか否かである。アクセルペダルが踏み込まれていると運転者に加速意志があると判断してエンジン１０を動作させなければならない。しかし、アクセルペダルが全閉であれば車両の停止を意図している条件の１つと判断し、アイドル停止条件の１つとする。条件ＣＡ８はエアコンから動作要求信号が出力されていないかである。つまり、エアコンは設定によっては車室内の温度を所定に設定することを最優先で動作する場合がある。この場合、エアコンＥＣＵ２１からエンジンＥＣＵ１８に対してエンジン１０の動作要求信号が出力される。この信号が出力されるとエンジン１０を動作させてコンプレッサを稼働させなければならず、したがってアイドル停止を行うことはできなくなる。この条件は、前述の（７）の制御を行う条件の１つである。
【００４４】
条件ＣＡ９は、ニュートラルペダル、クラッチペダル、及びブレーキペダルのスイッチが正常に動作しているかである。これらのスイッチが故障していると、車両が運転者の意志に反して動作することになるため、エンジン回転数、ギアチェンジ、車速等からこれらのスイッチが正常に動作しているか否かを判断する。この条件は、前述の（４）の制御を行う場合の条件の１つである。
【００４５】
条件ＣＡ１０は車速を示すパルス信号が正常に出力されているか否かである。前述のように車輪１４には、回転する度にパルスを発生するパルス発生器が設けられており、エンジンＥＣＵ１８がパルス間隔から車速を求めている。アイドル停止は車両が停車している場合にも行われる。よって、この条件はパルス器の故障によって車両が加速中であってもエンジンＥＣＵ１８が停車中であると判断してアイドル停止動作を行うといった誤動作を防止するために定められる条件である。条件ＣＡ１１は車速が所定値（例えば３ｋｍ／ｈ）以下であるか否かである。これは車両が停止していることを判定するための条件である。
【００４６】
条件ＣＡ１２は、ギアがニュートラルであるか否かであり、条件ＣＡ１３は、クラッチを踏んでいるか否かである。車両を停止させる場合には、ギアをニュートラルにし、クラッチペダルを踏んでいる場合が多いので、アイドリング停止の条件の１つとしている。
条件ＣＡ１４，ＣＡ１５は一速以外のギアが使用されたか否かである。前述の（３）再始動後のアイドル停止禁止制御では、インギア状態で始動した後車速が所定値に達せず再度ギアをニュートラル状態にするという動作が繰り返し行われる場合にはアイドル停止を行わない制御を行う。よって、アイドル停止を実施するには一速以上のギアが使用されたか否か及び車速が所定以上になったか否かの判断が必要となるため用いられる。
【００４７】
次に、図３（ｂ）を参照してアイドル停止を行っている状態でエンジンを再始動する場合の条件について説明する。
図３（ｂ）示されたように、条件ＣＢ６〜ＣＢ１０がオア演算子ＯＰ１５で論理的に結合されている。また、オア演算子ＯＰ１５の出力端と条件ＣＢ４，ＣＢ５とがアンド演算子ＯＰ１４とによって論理的に結合され、条件ＣＢ２と条件ＣＢ３とのアンド演算子ＯＰ１２による論理的結合、オア演算子ＯＰ１４の出力端、及び条件ＣＢ１１とがオア演算子ＯＰ１３によって論理的に結合されている。最後に条件ＣＢ１とオア演算子ＯＰ１３の出力端と条件ＣＢ１２とがアンド演算子ＯＰ１１によって論理的に結合されている。そして、アンド演算子ＯＰ１１の出力端からエンジンを再始動する信号が出力される。
【００４８】
条件ＣＢ１は、アイドル停止中であるか否かである。エンジン再始動はアイドル停止からエンジンを停止する動作であるので当然の条件である。条件ＣＢ２はクラッチを踏んでいるか否かであり、条件ＣＢ３はギアチェンジがあることである。これらの条件は、エンジン始動時にはクラッチが踏み込まれ、ギアチェンジ動作が行われることに着目してエンジン再開の条件に挙げられている。
条件ＣＢ４は、クラッチを踏んでいるか否かであり、条件ＣＢ５は、ギアがニュートラルであるか否かである。
【００４９】
条件ＣＢ６はアクセルペダルが開状態であるか否かである。この条件は、条件ＣＢ４及び条件ＣＢ５とアンド演算子ＯＰ１４によって論理的に結合されている、つまり、アイドル停止状態で、運転者がクラッチを踏み、かつギアがニュートラル状態である場合に、アクセルペダルを踏み込んだときは運転者が意識的にエンジン１０の運転を開始させたと判断してエンジン１０の運転を再開させる。また、運転者がこれらの操作を行ってもエンジン１０が始動しない場合には、運転者はエンジン１０が故障であると感ずる場合があるので、使い勝手の面からもこれらの条件が成立した場合にはエンジン１０の再始動制御を行う。
【００５０】
条件ＣＢ７は、停車後車速が所定以上になったか否かである。所定の車速としては例えば３ｋｍ／ｈが定められる。条件ＣＢ８はポンピングブレーキを実施したか否かである。この条件はアイドル停止中にポンピングブレーキ動作が行われると、倍力装置の負圧源が低下し、運転者がブレーキを踏むのに要する力が大となることを防止するために設けられる。この条件は上記（８）の制御を実施するためものである。
【００５１】
条件ＣＢ８は、バッテリ残容量が所定値以下、例えば２５％以下であるか否かである。バッテリの残容量が少ない状態ではアイドル停止動作を継続すると、図２中の電気負荷２９によってバッテリ３０が消費され、バッテリ３０の残容量維持のためにバッテリ２６からダウンバータ２８を介して充電が行われる。この動作が長期間に亘って継続されると、バッテリ２６の残容量が少なくなり、エンジン１０の再始動を行えなくなることが考えられる。よって、この不具合を防止するため、バッテリ残容量の低下がエンジン再始動の条件の１つとして挙げられている。この条件は、前述の（４）に示した制御を行う条件の１つである。
【００５２】
ここで、図４（ｂ）を参照し、エンジン再始動時のバッテリ残容量について説明する。図４（ｂ）に示したように、バッテリ残容量に応じて３種類の制御領域が定められている。図４（ｂ）中で符号ＺCが付された領域はバッテリ残容量が少ないため強制的にエンジンの再始動を行う領域である。符号ＺBが付された領域はエンジンが強制的に再始動され、バッテリ２６が充電されて強制的にエンジンの再始動が行われなくなった場合であってもアイドル停止制御を禁止する領域である。この領域は強制的にエンジンが再始動され、残容量Ｓ１を越えて充電された場合であってもアイドル停止を行うとエンジンが強制的に再始動されるまでの時間が短いと考えられ、頻繁にアイドル停止及びエンジン再始動が行われるため操作性が悪くなる虞があるためアイドル停止を禁止している。符号ＺAが付された領域はエンジンが強制的に再始動された場合であってもアイドル停止を許可する領域である。この領域はバッテリ残容量が多いため、アイドル停止を行っても頻繁にエンジン１０の停止及び再始動が繰り返される虞が少ないためアイドル停止を許可する。
【００５３】
条件ＣＢ１０エアコンからエンジンの再始動要求があるか否かである。この条件は、車室内の快適性維持の制御、つまり前述の（４）の制御を行う条件の１つである。条件ＣＢ１１は、ブレーキペダルが踏み込まれている状態で、クラッチペダルが踏み込まれているとき又はギアがニュートラル状態にあるときにブレーキマスターパワー負圧がゲージ圧で所定値以上となったか否かである。負圧の一例としては−２５０ｍｍＨｇが挙げられる。この条件は、前述の（８）の制御を行う条件である。
【００５４】
条件ＣＢ１２は、運転者がクラッチペダルから足を離してインギア状態とした後、クラッチペダルを踏み込んだか否かである。一般的に車両の発進時にはクラッチペダルを踏み込んだ後にインギア状態としてクラッチペダルを離しながらアクセルペダルを踏み込む操作を行うが、操作を急いでいる場合にはクラッチペダルを離す動作とインギア状態にする動作とはほぼ同時に行われることが多い。このような状態にエンジンが始動されないと発進時の充分な加速が得られないことが考えられるため、運転者がクラッチペダルから足を離してインギア状態とした後、クラッチペダルを踏み込んだ場合には運転者の操作ミスとしてエンジンの再始動を許可するものである。
【００５５】
以上がアイドル停止を行うか否か又はエンジン再始動を行うか否かの条件であるが、燃費向上のため減速中にはエンジン１０への燃料停止制御（フューエルカット：以下、減速Ｆ／Ｃと称する）が行われる。以下、燃料停止制御を行う場合の条件について説明する。
図６は、本実施形態の燃料停止制御条件及び復帰条件を要約した図であり（ａ）が燃料停止制御条件を、（ｂ）が復帰条件をそれぞれ示す。
図６（ａ）を参照すると、条件ＣＣ１２〜条件ＣＣ１６がアンド演算子ＯＰ２２によって論理的に結合され、アンド演算子ＯＰ２２の出力端と条件ＣＣ１〜条件ＣＣ１１がアンド演算子ＯＰ２１によって論理的に結合されている。つまり、条件ＣＣ１〜条件ＣＣ１６が全て成立した場合に減速Ｆ／Ｃが行われ又は継続される。
【００５６】
条件ＣＣ１〜ＣＣ１０は、図３（ａ）中に示した条件ＣＡ１〜ＣＡ１０各々と同様の条件である。条件ＣＣ１１は車速が所定値以下であるか否かである。ここで定められる車速は、例えば３０ｋｍ／ｈが挙げられる。ＣＣ１２は減速度が所定値以上であるか否かである。減速度の一例として０．０５Ｇが挙げられる。この条件は、車両が減速しているか否かを判断するものである。条件ＣＣ１３はクラッチペダルが踏み込まれているか否かである。停車を行おうとする場合にはクラッチペダルを踏み込む操作が行われるのが一般的であるため、停止操作であるか否かを判断するための条件として挙げられている。
【００５７】
条件ＣＣ１４は、ギアが一速以外のギアであるか否かである。ギアが一速である場合には、条件ＣＣ１〜ＣＣ１２が成立している状態であって、運転者が車両の停止を意図しない場合にも用いられるのでこの場合には減速として減速Ｆ／Ｃを行わないために定められる。条件ＣＣ１５は、ブレーキペダルが踏み込まれているか否かである。停車を行おうとする場合にはブレーキペダルを踏み込む操作が行われるのが一般的であるため、停止操作であるか否かを判断するための条件として挙げられている。条件ＣＣ１６は、エンジンのアイドル回転以下でクラッチペダルが離されたか否かである。
【００５８】
次に、図６（ｂ）を参照して減速Ｆ／Ｃ動作の復帰条件について説明する。
図６（ｂ）示されたように、条件ＣＤ６〜ＣＤ１０がオア演算子ＯＰ３５で論理的に結合されている。また、オア演算子ＯＰ３５の出力端と条件ＣＤ４，ＣＤ５とがアンド演算子ＯＰ３４とによって論理的に結合され、条件ＣＤ２と条件ＣＤ３とのアンド演算子ＯＰ３２による論理的結合、オア演算子ＯＰ３４の出力端、及び条件ＣＤ１１とがオア演算子ＯＰ３３によって論理的に結合されている。最後に条件ＣＤ１とオア演算子ＯＰ３３の出力端とがアンド演算子ＯＰ３１によって論理的に結合されている。そして、アンド演算子ＯＰ３１の出力端から減速Ｆ／Ｃ動作から復帰してエンジンを再始動する信号が出力される。
【００５９】
条件ＣＤ１は、減速Ｆ／Ｃ継続中であるか否かである。条件ＣＤ２はクラッチを踏んでいるか否かであり、条件ＣＤ３はギアチェンジがあることである。これらの条件は、エンジン始動時にはクラッチが踏み込まれ、ギアチェンジ動作が行われることに着目してエンジン再始動の条件に挙げられている。
条件ＣＤ４は、クラッチを踏んでいるか否かであり、条件ＣＤ５は、ギアがニュートラルであるか否かである。
【００６０】
条件ＣＤ６はギアチェンジがあるか否かである。条件ＣＤ７はアクセルペダルが開状態であるか否かである。この条件は、条件ＣＤ４及び条件ＣＤ５とアンド演算子ＯＰ３４によって論理的に結合されている、つまり、減速Ｆ／Ｃ継続中で、運転者がクラッチを踏み、かつギアがニュートラル状態である場合に、アクセルペダルを踏み込んだときは運転者が意識的にエンジン１０の運転を開始させたと判断して減速Ｆ／Ｃから復帰してエンジン１０の運転を再開させる。また、運転者がこれらの操作を行ってもエンジン１０が始動しない場合には、運転者はエンジン１０が故障であると感ずる場合があるので、使い勝手の面からもこれらの条件が成立した場合には減速Ｆ／Ｃ継続から復帰する。
【００６１】
条件ＣＤ８は、ブレーキペダルから足が離されたか否かである。条件ＣＤ９は、バッテリ残容量が所定値以下、例えば２５％以下であるか否かである。バッテリの残容量が少ない状態ではアイドル停止動作を継続すると、図２中の電気負荷２９によってバッテリ３０が消費され、バッテリ３０の残容量維持のためにバッテリ２６からダウンバータ２８を介して充電が行われる。この動作が長期間に亘って継続されると、バッテリ２６の残容量が少なくなり、エンジン１０の再始動を行えなくなることが考えられる。よって、この不具合を防止するため、バッテリ残容量の低下が減速Ｆ／Ｃから復帰する条件の１つとして挙げられている。
【００６２】
条件ＣＤ１０エアコンからエンジンの再始動要求があるか否かである。この条件は、車室内の快適性維持の制御、つまり前述の（４）の制御を行う条件の１つである。条件ＣＤ１１は、ブレーキペダルが踏み込まれている状態で、クラッチペダルが踏み込まれているとき又はギアがニュートラル状態にあるときにブレーキマスターパワー負圧がゲージ圧で所定値以上となったか否かである。負圧の一例としては−２５０ｍｍＨｇが挙げられる。この条件は、前述の（８）の制御を行う条件である。
【００６３】
次に、図３に示したアイドル停止及びエンジン再始動条件及び図６に示した減速Ｆ／Ｃ継続及び復帰制御の条件が実際に適用される制御フローについて説明する。
図７及び図８は、本発明の第１実施形態においてアイドル停止を実施するか否かを判定する処理を示すフローチャートである。図７及び図８に示したフローは、一定時間間隔、例えば１０ｍｓｅｃ毎に図示しないメインルーチンから呼び出されることにより行われ、図２中のエンジンＥＣＵ１８によって行われる。アイドル停止を実施するか否かは、図７及び図８中のフラグＦ＿ＦＣＭＧの値を「１」に設定するか否かによって行われる。つまりフラグＦ＿ＦＣＭＧの値が「１」であればメインルーチンに戻ったときにアイドル停止制御が行われ、「０」の場合には行われない。フラグＦ＿ＦＣＭＧの初期値は「０」に設定されている。
【００６４】
メインルーチンから図７に示した処理が呼び出されて処理が開始すると、ステップＳＡ１０において、スタータスイッチがオン状態となってから所定時間経過したか否かが判断される。ステップＳＡ１０中の変数＃ＴＭＩＤＬＳＴには上記所定時間として１２０秒（２分）が設定されており、この値とタイマＴ２０ＡＣＲＳＴの値との大小関係が比較されることにより、所定時間経過したか否かが判断される。タイマＴ２０ＡＣＲＳＴは、スタータスイッチがオン状態となってからカウントを開始するタイマである。ステップＳＡ１０の判断結果が「ＮＯ」である場合、つまりスタータスイッチがオン状態となってから所定時間経過していないと判断された場合には、処理がステップＳＡ５２に進みフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、メインルーチンに戻る。ここで、フラグＦ＿ＦＣＢＲＫは減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグである。
【００６５】
ステップＳＡ１０の判断結果が「ＹＥＳ」である場合には、処理はステップＳＡ１２へ進み、フラグＦ＿ＦＣＭＧの値が「１」であるか否かが判断される。図７及び図８に示した処理は、フラグＦ＿ＦＣＭＧの値を「１」に設定してアイドル停止を行う処理であり、ステップＳＡ１２においてフラグＦ＿ＦＣＭＧの値が既に「１」である場合には以下の処理が無意味となるので、判断結果が「ＹＥＳ」の場合には処理がメインルーチンに戻る。
一方、ステップＳＡ１２の判断結果が「ＮＯ」である場合、つまりフラグＦ＿ＦＣＭＧの値が「０」である場合には、ステップＳＡ１４へ進む。
【００６６】
ステップＳＡ１４では、変数ＭＯＴＩＮＦＯの２ビットが「１」であるか否かの判断が行われる。この変数ＭＯＴＩＮＦＯの２ビットはバッテリ２６の温度が０℃以下であるか否かを示すものであり、０℃以下の場合にバッテリＥＣＵ３２で設定される。この判断結果が「ＹＥＳ」である場合、つまりバッテリ２６の温度が０℃以下である場合には、処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。
一方、ステップＳＡ１４の判断結果が「ＮＯ」の場合、つまりバッテリ２６の温度が０℃より高いと判断された場合には、ステップＳＡ１６へ進む。
【００６７】
ステップＳＡ１６では、フラグＦ＿ＭＯＴＳＴＢの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＭＯＴＳＴＢはモータ／発電機１６で始動することができるか否かを示すフラグであり、その値はモータ／発電機１６の状態に応じてモータＥＣＵ２２により設定される。この判断結果が「ＮＯ」の場合には処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。
一方、ステップＳＡ１６の判断結果が「ＹＥＳ」の場合には、処理はステップＳＡ１８へ進む。
【００６８】
ステップＳＡ１８では、フラグＦ＿ＥＳＺＯＮＥＣの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＥＳＺＯＮＥＣはバッテリ２６の残容量が図４（ｂ）に示した領域ＺB又はＺCにあり、アイドル停止が禁止される状態にあることを示すフラグであり、図２中のバッテリＥＣＵ３２によって設定される。この判断結果が「ＹＥＳ」である場合にはアイドル停止を行わないので、処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。
一方、ステップＳＡ１８の判断結果が「ＮＯ」であり、バッテリ２６の残容量がアイドル停止を実施できる程度に充電されていると判断した場合には、ステップＳＡ２０へ進む。
【００６９】
ステップＳＡ２０では、フラグＦ＿ＴＷＦＣＭＧの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＴＷＦＣＭＧは、アイドル停止を実施できる程度にエンジン水温が高いか否かを示すフラグであり、その値はエンジンＥＣＵ１８によって設定される。ここで、アイドル停止を行うか否かは図５（ａ）（ｂ）に示したように、エンジン水温と外気温とによって定められる。以下、これらの定め方について説明する。
【００７０】
本実施形態では、所定時間走行後のエンジン吸気温を測定して外気温を推定する処理を行っており、推定して得られた外気温を用いてアイドル停止を行うことができる水温を算出し、この水温と実際のエンジン水温とを比較してフラグＦ＿ＴＷＦＣＭＧの値を「１」又は「０」に設定している。以下、この処理の詳細について説明する。
図９は、推定処理によって得られた外気温が、アイドル停止を行っても良い温度であるか否かを判断する処理を示すフローチャートである。この処理は、図７，図８に示した処理と別個に並列して所定時間間隔（例えば１０ｍｓｅｃ）でエンジンＥＣＵ１８によって行われる。
【００７１】
図９に示した処理が開始すると、ステップＳ１００において、変数ＶＰが「０」であるか否かが判断される。ここで変数ＶＰは、前述した車輪１４に設けられたパルス発生器から所定時間内に出力されるパルスの数を格納する変数、つまり車速を示す変数である。つまり、ステップＳ１００の処理は、変数ＶＰの値に基づき車両が停止中であるか否かを判断している。この判断結果が「ＹＥＳ」の場合には、処理はステップＳ１０２へ進み、変数＃ＴＭＴＡＦＣＭＧの値を変数ＴＭＴＡＦＣＭＧに代入する処理が行われる。ここで、変数ＴＭＴＡＦＣＭＧは、車両が走行してから所定時間が経過したか否かを判断する際に用いられる変数であり、値が設定されると、時間経過に応じてその値が減算される。また変数＃ＴＭＴＡＦＣＭＧは変数ＴＭＴＡＦＣＭＧに代入する値を格納するものである。つまり、ステップＳ１０２の処理は、変数ＴＭＴＡＦＣＭＧを初期化する処理である。ステップＳ１０２の処理が終了するとメインルーチンに戻る。
【００７２】
一方、ステップＳ１００の判断結果が「ＮＯ」である場合、つまり車両が走行していると判断した場合には。ステップＳ１０４へ進み、変数ＴＭＴＡＦＣＭＧの値が「０」であるか否か、つまり車両が走行してから所定時間経過したか否かが判断される。この判断結果が「ＮＯ」である場合には、処理がメインルーチンに戻り、「ＹＥＳ」の場合には処理がステップＳ１０６へ進む。
【００７３】
ステップＳ１０６では、外気温（ここでは、外気温＝エンジン吸気温としている）ＴＡが変数＃ＴＡＦＣＭＧＬ以上であるか否かが判断される。ここで変数＃ＴＡＦＣＭＧＬは、アイドル停止を許可する温度条件の下限値であり、例えば−１０℃を示す値に設定されている。この判断結果が「ＮＯ」である場合、つまりアイドル停止を実施するには外気温が低すぎると判断した場合には処理がステップＳ１０８へ進み、フラグＦ＿ＴＡＦＣＭＧの値を「０」に設定する処理が行われメインルーチンに戻る。ここでフラグＦ＿ＴＡＦＣＭＧは、アイドル停止を許可するか否かの温度条件を示すフラグであり、値が「１」の場合はアイドル停止許可を意味し、「０」の場合は不許可を意味する。
一方、ステップＳ１０６における判断結果が「ＹＥＳ」の場合には、ステップＳ１１０へ進む。
【００７４】
ステップＳ１１０では、外気温ＴＡが変数ＴＡＦＣＭＧＨ以下であるか否かが判断される。ここで変数＃ＴＡＦＣＭＧＨは、アイドル停止を許可する温度条件の上限値であり、例えば８０℃を示す値に設定されている。この判断結果が「ＮＯ」である場合、つまりアイドル停止を実施するには外気温が高すぎると判断した場合には処理がステップＳ１０８へ進み、フラグＦ＿ＴＡＦＣＭＧの値を「０」に設定する処理が行われメインルーチンに戻る。一方、ステップＳ１１０の判断結果が「ＹＥＳ」の場合には、ステップＳ１１２へ進む。
【００７５】
ステップＳ１１２では、変数ＴＡＦＣＭＧに外気温ＴＡを示す値を代入する処理が行われる。ここで、変数ＴＡＦＣＭＧは、後述のようにアイドル停止を実施するか否かの条件の１つであるエンジン水温条件を判断する場合に用いられる変数である。ステップＳ１１２が終了すると、ステップＳ１１４において、アイドル停止を許可するか否かの温度条件を示すフラグＦ＿ＴＡＦＣＭＧの値を「１」に設定する処理が行われる。ステップＳ１１４の処理が終了すると、メインルーチンに戻る。
【００７６】
次に、以上説明した外気温推定処理によって得られた外気温を示す変数ＴＡＦＣＭＧを用いてエンジン水温がアイドル停止を行う水温であるか否かを判断する処理が行われる。
図１０は、エンジン水温がアイドル停止を行っても良い水温であるか否かを判断する処理を示すフローチャートである。この処理は、図７〜図９に示した処理と別個に並列して所定時間間隔（例えば１０ｍｓｅｃ）でエンジンＥＣＵ１８によって行われる。
【００７７】
処理が開始すると、まずステップＳ２００においてアイドル停止を行うか否かを定めるエンジン水温と外気温との関係を示すテーブルに基づき、図９に示したフローにより得られた変数ＴＡＦＣＭＧを、アイドル停止を行うか否かの条件の１つであるエンジン水温を示す変数ＴＷＦＣＭＧに変換する処理が行われる。図１１は、アイドル停止を行うか否かを定めるエンジン水温と外気温との関係を示すテーブルの例を示す図である。図１１において、変数ＴＡＦＣＭＧと変数ＴＷＦＣＭＧとの関係が符号Ｚ21を付した領域にある場合にアイドル停止が許可され、領域Ｚ22に付した領域にある場合にはアイドル停止が禁止される。領域Ｚ21と領域Ｚ22との境界が、符号ＢＤを付した曲線に設定されるのは、図５（ａ）（ｂ）で示した制御を実現するためである。例えば、図１０に示した処理で、変数ＴＡＦＣＭＧの値が図１１中符号ＴＡxで示す値であれば、変数ＴＷＦＣＭＧの値は符号ＴＷxで示す値となる。
【００７８】
ステップＳ２００の処理が終了すると処理はステップＳ２０２へ進み、エンジン水温ＴＷがステップＳ２００の処理で得られた変数ＴＷＦＣＭＧの値以上であるか否かが判断される。つまり、この処理はエンジン水温が図１１に示した領域Ｚ21にあるか否かが判断される。この判断結果が「ＮＯ」である場合には、ステップＳ２０４へ進み、フラグＦ＿ＴＷＦＣＭＧの値を「０」に設定する処理が行われる。このフラグＦ＿ＴＷＦＣＭＧの値が「１」の場合は、アイドル停止許可を意味し、「０」の場合は不許可を意味する。ステップＳ２０４の処理が終了すると、処理はメインルーチンに戻る。
一方、ステップＳ２０２の判断結果が「ＹＥＳ」である場合には、処理がステップＳ２０６へ進みフラグＦ＿ＴＷＦＣＭＧの値を「１」に設定する処理が行われる。
【００７９】
図７に戻り、ステップＳＡ２０の判断結果が「ＮＯ」である場合には、処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。
一方、ステップＳＡ２０における判断結果が「ＹＥＳ」の場合には、ステップＳ２２へ進み、フラグＦ＿ＴＡＦＣＭＧが「１」であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。また、判断結果が「ＹＥＳ」である場合には、処理はステップＳＡ２４へ進む。以上のステップＳＡ２０及びステップＳＡ２２の判断処理により、外気温及びエンジン水温がアイドル停止を行う条件であるか否かが判断される。
【００８０】
ステップＳＡ２４では、フラグＦ＿ＲＶＳＳＷの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＲＶＳＳＷはリバースギアが入っている状態ｑｆで「１」となり、それ以外では「０」となるフラグである。この判断結果が「ＹＥＳ」の場合にはステップＳＡ２６へ進み、フラグＦ＿ＲＶＳＲＥＳＴの値を「１」に設定する処理が行われる。ここで、フラグＦ＿ＲＶＳＲＥＳＴは車両が前進動作を行ってから、後退動作に変わったことを示すフラグであり、値が「１」に設定された場合、所定の車速になるまでその値が保持される。つまり、このフラグＦ＿ＲＶＳＲＥＳＴの値が「１」である場合には、後退動作中であるのでアイドル停止が禁止される。よって、処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。一方、ステップＳＡ２４の判断結果が「ＮＯ」の場合には、ステップＳＡ２８へ進む。
【００８１】
ステップＳＡ２８では、フラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＴＨＩＤＬＭＧは、アクセルペダルの状態を格納するフラグであり、全開（踏まれている）場合に値が「１」となり、全閉（踏み込まれていない）場合に値が「０」となる。この判断結果が「ＹＥＳ」の場合には、アクセルが踏まれている状態であり、アイドル停止を禁止するため処理がステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「０」に設定する処理が行われ、処理はメインルーチンに戻る。
一方、ステップＳＡ２８の判断結果が「ＮＯ」の場合には、ステップＳＡ３０へ進む。
【００８２】
ステップＳＡ３０では、フラグＦ＿ＨＴＲＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＨＴＲＭＧは、エアコンから出力されるアイドル停止を禁止する旨を格納するフラグであり、アイドル停止が禁止される場合には値が「１」となり、許可される場合には値が「０」となる。この判断結果が「ＹＥＳ」である場合には、処理がステップＳＡ３２へ進む。
【００８３】
ステップＳＡ３２では、車速を示す変数ＶＰが変数＃ＶＩＤＬＳＴ以上であるか否かが判断される。前述のように、変数ＶＰは車速に応じたパルスであり、従って、この処理では車速が所定の車速以上であるか否かが判断され、この判断結果が「ＹＥＳ」の場合にはステップＳＡ５２を介して処理がメインルーチンに戻り、「ＮＯ」の場合にはステップＳＡ３４において、フラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理が行われる。フラグＦ＿ＩＤＬＲＥＳＴは停車時のアイドル停止を禁止するフラグである。つまり、ステップＳＡ３２，ＳＡ３４の処理では、アイドル停止中においてエアコンがアイドル停止を禁止している場合には、走行状態になるまでアイドル停止を禁止する処理を行う。
ステップＳＡ３４の処理が終了すると、ステップＳＡ５２を介してメインルーチンに戻る。
【００８４】
一方、ステップＳＡ３０の判断結果が「ＮＯ」である場合には、ステップＳＡ３６へ進み、フラグＦ＿ＦＣＭＧＢＡＴの値が「１」であるか否かが判断される。ここでフラグＦ＿ＦＣＭＧＢＡＴは、バッテリ２６の残容量が図４（ａ）中の領域Ｚ1である場合に値が「１」となり、それ以外では「０」となるフラグであって、バッテリＥＣＵ３２によって設定される。ステップＳＡ３６の判断結果が「ＮＯ」の場合には、ステップＳＡ５２を介してメインルーチンに戻り、「ＹＥＳ」の場合にはステップＳＡ３８へ進む。
【００８５】
ステップＳＡ３８では、フラグＦ＿ＯＫＮＳＷの値が「１」であるか否かが判断され、ステップＳＡ３９では、フラグＦ＿ＯＫＣＬＳＷの値が「１」であるか否かが判断され、ステップＳＡ４０では、フラグＦ＿ＯＫＢＲＫＳＷの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＯＫＮＳＷ、フラグＦ＿ＯＫＣＬＳＷ、フラグＦ＿ＯＫＢＲＫＳＷは、それぞれ、ニュートラルギアのオン／オフ状態、クラッチペダルのオン／オフ状態、ブレーキペダルのオン／オフ状態が検出されているかを示すフラグである。これらのフラグの値はエンジン回転数、車速、ギアシフト等を考慮して設定される。ステップＳＡ３６〜ステップＳＡ４０の判断結果の何れかが「ＮＯ」である場合には、ステップＳＡ５２を介してメインルーチンに戻り、全ての判断結果が「ＹＥＳ」である場合にのみステップＳＡ４２へ進む。
【００８６】
ステップＳＡ４２では、フラグＦ＿ＶＰＦＣＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＶＰＦＣＭＧは、車輪１４に設けられたパルス発生器から出力されるパルスの異常があった場合に「１」となる。例えば、走行中に１秒間１００パルスが出力されており、ある瞬間に出力パルス数が０となった場合に異常と判断し、フラグＦ＿ＶＰＦＣＭＧの値は「１」となる。ステップＳＡ４２の判断結果が「ＹＥＳ」の場合にはステップＳＡ５２を介してメインルーチンに戻り、「ＮＯ」の場合にはステップＳＡ４４へ進む。
【００８７】
ステップＳＡ４４では、車速を示す変数ＶＰが所定の車速を示す値が格納された変数＃ＶＩＤＬＳＴの値（例えば３ｋｍ／ｈ）以上であるか否かが判断され、この判断結果に応じてて処理は２つに分かれる。ステップＳＡ４４の判断結果が「ＹＥＳ」である場合にはステップＳＡ４６以降の処理で減速Ｆ／Ｃ処理を行うか否かの判断が行われ、判断結果が「ＮＯ」の場合にはアイドル停止判断処理が行われる。
【００８８】
ステップＳＡ４４における判断結果が「ＹＥＳ」である場合、つまり車速が所定以上になり、車両が発進したと判断した場合には、ステップＳＡ４６へ進み、減速Ｆ／Ｃ継続を行うか否かの処理が開始される。まず、ステップＳＡ４６では、フラグＦ＿ＦＣＭＧＶの値を「１」に、停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「０」に、及び変数ＣＮＴＬの値を「０」に設定する処理が行われる。ここで、フラグＦ＿ＦＣＭＧＶは、一度車速が高くなった場合にその値が「１」となるフラグであり、つまり一度車両が発進したことを示すフラグである。つまり、ステップＳＡ４４において、車両が発進したと判断されたので、このフラグＦ＿ＦＣＭＧＶの値が「１」に設定される。また、変数ＣＮＴＬは車両の再始動を計数した値を格納する変数であり、車両の再始動はインギア状態としたか否かにより判断する。
【００８９】
次に、ステップＳＡ４８では、車速を示す変数ＶＰが所定の車速を示す値が格納された変数＃ＶＦＣＭＧＳＴの値（例えば３０ｋｍ／ｈ）以上であるか否かが判断され、この判断結果が「ＹＥＳ」の場合には処理がステップＳＡ５０へ進み、後退動作中であることを示すフラグＦ＿ＲＶＳＲＥＳＴの値が「０」に設定され、その後ステップＳＡ５２へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値が「０」に設定されて処理はメインルーチンに戻る。
【００９０】
一方、ステップＳＡ４８の判断結果が「ＮＯ」である場合にはステップＳＡ５４へ進み、減速Ｆ／Ｃ継続を行うか否かの判断が行われる。ステップＳＡ５４ではフラグＦ＿ＶＤＥＣの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＶＤＥＣは減速度中であることを示すフラグである。このフラグは減速度が所定値（例えば、０．０５Ｇ）以上である場合にその値が「１」となる。この判断結果が「ＮＯ」であり、減速中でないと判断された場合には、処理がメインルーチンに戻る。一方、判断結果が「ＹＥＳ」の場合には処理がステップＳＡ５６へ進む。
【００９１】
ステップＳＡ５６では、フラグＦ＿ＮＤＬＹの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＮＤＬＹは車速の偏差が所定値以上であればその値が「１」となるフラグである。この判断結果が「ＹＥＳ」の場合には、処理がステップＳＡ６８へ進み、フラグＦ＿ＦＣＭＧの値が「１」に設定され、処理がメインルーチンに戻ってアイドル停止が実施される。
【００９２】
一方、ステップＳＡ５６の判断結果が「ＮＯ」である場合にはステップＳＡ５８〜ステップＳＡ６６の処理にて順次フラグＦ＿ＮＧＲＭＧ、フラグＦ＿ＣＬＮＥ、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫ、フラグＦ＿ＢＫＳＷ、及びフラグＦ＿ＣＬＯＮの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＮＧＲＭＧは、一速以外のギアが使用された場合にその値が「１」となるフラグであり、フラグＦ＿ＣＬＮＥはクラッチペダルを踏むときのエンジン回転数が所定値（例えば、１０００ｒｐｍ）以下である場合に、その値が「１」に設定されるフラグである。またフラグＦ＿ＢＫＳＷは、現在ブレーキを踏んでいることを示すフラグであり、フラグＦ＿ＣＬＯＮはクラッチがオンとなった場合にその値が「１」となるフラグである。
【００９３】
ステップＳＡ６２の判断結果が「ＹＥＳ」であるか、ステップＳＡ５８，ＳＡ６０，ＳＡ６４，ＳＡ６６の判断結果の何れかが「ＮＯ」である場合には、処理がメインルーチンに戻る。一方、ステップＳＡ６２の判断結果が「ＮＯ」であり、且つステップＳＡ５８，ＳＡ６０，ＳＡ６４，ＳＡ６６の判断結果の全てが「ＹＥＳ」である場合には、処理がステップＳＡ６８へ進み、フラグＦ＿ＦＣＭＧの値が「１」に設定され、処理がメインルーチンに戻ってアイドル停止が実施される。
【００９４】
一方、ステップＳＡ４４における判断結果が「ＮＯ」である場合、つまり車速が所定以上になっていないと判断した場合には、ステップＳＡ７０へ進み、アイドル停止判断処理が行われる。ステップＳＡ７０では車両の再始動を計数した値を格納する変数ＣＮＴＬの値が、変数＃ＣＮＴＬＦＣＭＧの値以上であるか否かが判断される。変数ＣＮＴＬは車両の再始動を計数した値を格納する変数であり、車両の再始動はインギア状態としたか否かにより判断する。変数＃ＣＮＴＬＦＣＭＧには例えば「２」が設定されている。ステップＳＡ７０の判断結果が「ＹＥＳ」である場合には、メインルーチンに戻る。
【００９５】
一方、判断結果が「ＮＯ」である場合には、処理がステップＳＡ７２へ進む。ステップＳＡ７２では、車両が前進動作から後退動作に変化したことを示すフラグＦ＿ＲＶＳＲＥＳＴの値が「１」であるか否かが判断される。ステップＳＡ７２の判断結果が「ＹＥＳ」である場合には、処理はメインルーチンに戻り、「ＮＯ」の場合にはステップＳＡ７４へ進む。ステップＳＡ７４では停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」である場合には、処理はメインルーチンに戻り、「ＮＯ」の場合にはステップＳＡ７６へ進む。
【００９６】
ステップＳＡ７６ではフラグＦ＿ＦＮＤＬＹの値が「１」であるか否かが判断される。このフラグＦ＿ＦＮＤＬＹはギアのニュートラル状態がある時間継続されると値が「１」に設定されるフラグである。この判断結果が「ＹＥＳ」である場合には、処理はステップＳＡ６８へ進み、フラグＦ＿ＦＣＭＧの値が「１」に設定され、処理がメインルーチンに戻ってアイドル停止が実施される。
一方、ステップＳＡ７６の判断結果が「ＮＯ」である場合にはステップＳＡ７８以下の処理が行われる。
【００９７】
ステップＳＡ７８では、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「１」であるか否かが判断され、ステップＳＡ８０ではフラグＦ＿ＮＧＲＭＧの値が「１」であるか否かが判断され、ステップＳＡ８２では、クラッチがオンとなったことを示すフラグＦ＿ＣＬＯＮの値が「１」であるか否かが判断される。
ステップＳＡ７８における判断結果の何れかが「ＮＯ」である場合には処理がメインルーチンに戻り、すべての判断結果が「ＹＥＳ」であれば処理がステップＳＡ６８へ進み、アイドル停止を許可するフラグＦ＿ＦＣＭＧの値が「１」に設定され、メインルーチンに戻ってアイドル停止処理が行われる。
【００９８】
以上がアイドル停止を実施するか否かを示す処理フローである。
次に、アイドル停止している場合にエンジン１０の再始動を行うか否かの判定処理について詳細に説明する。
図１２及び図１３は、本発明の第１実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。図１２及び図１３に示したフローは、一定時間間隔、例えば１０ｍｓｅｃ毎に図示しないメインルーチンから呼び出されることにより行われ、図２中のエンジンＥＣＵ１８によって行われる。エンジンを再始動するか否かは、図１２及び図１３中のフラグＦ＿ＦＣＭＧの値を「０」に設定するか否かによって行われる。図７及び図８に示したフローはフラグＦ＿ＦＣＭＧの値を「１」にしてアイドル停止を行う処理を行っていたが、図１２及び図１３では、値が「１」に設定されているフラグＦ＿ＦＣＭＧの値を「０」にしてエンジンを始動する処理が示されている。
【００９９】
メインルーチンから図１２に示した処理が呼び出されて処理が開始すると、ステップＳＢ１０において、フラグＦ＿ＦＣＭＧの値が「１」であるか否かが判断される。これは、図１２及び図１３に示した処理がフラグＦ＿ＦＣＭＧの値を「１」から「０」に設定する処理であり、この処理が開始されたとき既にフラグＦ＿ＦＣＭＧの値が「０」である場合に無駄な処理を行わないようにするため設けられている。ステップＳＢ１０の判断結果が「ＮＯ」である場合には、ステップＳＢ１２へ進む。
【０１００】
ステップＳＢ１２では、フラグＦ＿ＭＥＯＦの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＭＥＯＦはエンジン回転が０の場合にその値が「１」となるフラグである。つまり、この処理ではエンスト判定を行っている。即ち、フラグＦ＿ＦＣＭＧの値が「０」である場合にはアイドル停止が禁止されている状態であり、エンジンは動いているので処理をステップＳＢ４４へ進め、ステップＳＢ４４ではフラグＦ＿ＶＳＴＰの値を「０」に設定する処理が行われ、ステップＳＢ４６でフラグＦ＿ＩＮＧＭＧの値を「０」に設定する処理が行われてメインルーチンに戻している（ステップＳＢ１２の判断結果が「ＮＯ」の場合）。尚、フラグＦ＿ＶＳＴＰとフラグＦ＿ＩＮＧＭＧについては詳述する。
【０１０１】
しかしながら、アイドル停止が禁止されている状態でエンジン回転が０であることを示すフラグＦ＿ＭＥＯＦの値が「１」である（エンジン回転数が０である）場合にはエンストを起こしているとステップＳＢ１２では判断し（ステップＳＢ１２の判断結果が「ＹＥＳ」の場合）、再始動判定を実行してエンジンを再始動させるため処理をステップＳＢ１４へ進める。このような状態、即ちアイドル停止が禁止されている状態でエンジンの回転数が０となる状態が生じるのは、運転者がギアをつないだまま車両を停止させるよう操作した等の不用意な操作を行った場合であるので、自動的なアイドル停止又はエンジン再始動の動作を行うことで車両始動を行うようにしておく。
【０１０２】
ステップＳＢ１４では、フラグＦ＿ＶＣＬＲＵＮの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＶＣＬＲＵＮは車輪が回転しているか否かを示すフラグであり、車輪が回転している場合にはその値が「１」となる。この判断結果が「ＹＥＳ」の場合には処理はステップＳＢ１８へ進む。一方、ステップＳＢ１４の判断結果が「ＮＯ」である場合にはステップＳＢ１６で車両が停止したか否かを示すフラグＦ＿ＶＳＴＰの値を「１」に設定する処理が行われる。ここで、フラグＦ＿ＶＳＴＰは、車両が停止したか否かを示すフラグであり、車両が停止している場合には、その値が「１」に設定される。このフラグＦ＿ＶＳＴＰの値を参照することで、過去に車両が停止したか否か及びその回数を知ることができる。
【０１０３】
ステップＳＢ１８では、フラグＦ＿ＣＬＳＷの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＣＬＳＷはクラッチが断状態（クラッチペダルが踏み込まれている状態）にあるか否かを示すフラグであり、断状態にある場合にその値が「１」となる。この判断結果が「ＹＥＳ」である場合にはステップＳＢ２０へ進み、スタータスイッチがオン状態となったか否かが判断される。この判断結果が「ＮＯ」の場合にはステップＳＢ３６へ進み停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理が行われる。この処理は、車両が発進してフラグＦ＿ＩＤＬＲＥＳＴの値が「０」に設定されるまでアイドル停止を行わないようにする処理である。ステップＳＢ３６の処理が終了すると、ステップＳＢ３８，ＳＢ４０を介してステップＳＢ４２へ進み、フラグＦ＿ＦＣＭＧの値を０に設定する処理が行われ、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。
【０１０４】
一方、ステップＳＢ２０における判断結果が「ＮＯ」である場合には、ステップＳＢ２２へ進み、フラグＦ＿ＩＮＧＭＧの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＩＮＧＭＧは、ギアがニュートラルにある状態からクラッチがつながった状態（クラッチペダルから足を離した状態）でインギア操作を行ったか否かを示すフラグであり、このような操作を行うとフラグＦ＿ＩＮＧＭＧの値が「１」となる。ステップＳＢ２２の判断結果が「ＹＥＳ」の場合にはステップＳＢ３６へ進み停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理が行われる。
【０１０５】
つまり、ステップＳＢ２２からステップＳＢ３６へ進む処理では、スタータスイッチがオン状態ではなく、クラッチがニュートラル状態からクラッチペダルを踏んでいない状態でインギア状態とした場合にアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理を行っている。アイドル停止／再始動制御の基本的な思想は、クラッチペダルが踏み込まれ、ギアチェンジがあったときにエンジンを始動するというものであるが、運転動作を急いでいる場合にはクラッチペダルが踏み込まれるのが早いのか、インギア状態とするのが早いのかが運転者には分からない場合がある。クラッチペダルが踏み込まれる前にインギア状態となったのが実際の操作であるが、運転者がクラッチペダルを踏み込んでからインギア状態にしたと認識しているときには、エンジンがからず故障と認識される場合が考えられる。ステップＳＢ２２からステップＳＢ３６へ進む処理は、このような場合に使い勝手を向上させるため、再びクラッチペダルを踏み込んだ場合にエンジンを再始動させるために設けられる処理である。
【０１０６】
ステップＳＢ２２の判断結果が「ＮＯ」である場合には、処理がステップＳＢ２４へ進み、車両が停止したか否かを示すフラグＦ＿ＶＳＴＰが「１」であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理はステップＳＢ２６へ進む。ステップＳＢ２４の判断結果が「ＮＯ」である場合の状態は、クラッチペダルが踏み込まれており停車履歴が無い状態であるので、車両が惰行している状態である。ステップＳＢ２６では、アクセルペダルの状態を格納するフラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合、つまり、クラッチペダルが踏み込まれた場合には、処理がステップＳＢ４０へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「１」に設定する処理が行われ、ステップＳＢ４２においてフラグＦ＿ＦＣＭＧの値を０に設定する処理が行われ、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。つまり、アクセルペダルを踏み込んで惰行している場合にアクセルペダルが踏み込まれるとエンジンの再始動が行われる。
【０１０７】
一方、ステップＳＢ２６における判断結果が「ＮＯ」の場合、つまり停車履歴があると判断された場合、又は惰行している状態であってアクセルペダルが踏み込まれていない場合にはフラグＦ＿ＮＳＷの前回の処理の時の値が「１」であるか否かが判断される（ステップＳＢ２８）。ここで、フラグＦ＿ＮＳＷは、ギアがニュートラル状態にあるか否かを示すフラグであり、ニュートラル状態にある場合にはその値が「１」となる。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ３０へ進み今回の処理におけるフラグＦ＿ＮＳＷの値が「１」である場合にはステップＳＢ３２へ進む。ステップＳＢ２８〜ステップＳＢ３２へ進む場合は、クラッチペダルを踏み込んでインギア状態とした場合である。つまり、この状態は、クラッチペダルが踏み込まれ、ギアチェンジがあったときにエンジンを始動するというアイドル停止／再始動制御の基本的な操作が行われたことになる。
【０１０８】
ステップＳＢ３２では、車両の再始動を計数した値を格納する変数ＣＮＴＬの値をインクリメントする処理が行われる。ステップＳＢ３４では、車両の再始動を計数した値を格納する変数ＣＮＴＬの値が、変数＃ＣＮＴＬＦＣＭＧの値以上であるか否かが判断される。変数＃ＣＮＴＬＦＣＭＧには例えば「２」が設定されている。
【０１０９】
ステップＳＢ３４の判断結果が「ＹＥＳ」の場合には、ステップＳＢ３８へ進み、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶ、一速以外のギアが使用されたことを示すフラグＦ＿ＮＧＲＭＧ、クラッチがオンとなったことを示すフラグＦ＿ＣＬＯＮ、及びクラッチペダルを踏むときのエンジン回転数が所定値以下であることを示すフラグＦ＿ＣＬＮＥの値を全て「０」に設定する処理が行われる。ステップＳＢ３８の処理が終了した後、又はステップＳＢ３４の判断結果が「ＮＯ」である場合にはステップＳＢ４０へ進む。
【０１１０】
ステップＳＢ４０では減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値を「１」に設定する処理が行われる。
ステップＳＢ４０の処理が終了するとステップＳＢ４２において、エンジンを再始動するフラグＦ＿ＦＣＭＧの値が「０」に設定され、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン再始動制御が行われる。
【０１１１】
また、ステップＳＢ２８の判断結果が「ＹＥＳ」であり、且つステップＳＢ３０の判断結果が「ＹＥＳ」の場合、つまり、ギアが前回の処理時にニュートラル状態であって、今回の処理時においてもニュートラル状態である場合には、ステップＳＢ５８の処理へ進む。ステップＳＢ５８ではフラグＦ＿ＥＳＺＯＮＥＣの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合、つまり、バッテリ２６の残容量が図４（ｂ）に示した領域ＺB又はＺCにあり、アイドル停止が禁止される状態にある場合には処理はステップＳＢ３６へ進み、停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理が行われ、ステップＳＢ３８，ＳＢ４０を介してステップＳＢ４２へ進み、フラグＦ＿ＦＣＭＧの値を０に設定する処理が行われ、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。
【０１１２】
一方、ステップＳＢ５８の判断結果が「ＮＯ」である場合には、ステップＳＢ６０へ進み、アクセルペダルの状態を格納するフラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
ステップＳＢ６０の判断結果が「ＮＯ」である場合には、ステップＳＢ５２へ進み、変数ＭＰＧＡの値が変数＃ＭＰＦＣＭＧの値以上であるか否かが判断される。ここで、変数ＭＰＧＡは倍力装置のマスターパワーの負圧を示す値を格納する変数であり、変数＃ＭＰＦＣＭＧはマスターパワーの負圧が低下したときにエンジン再始動を開始する値を格納する変数である。つまり、ステップＳＢ５２の処理はマスターパワーの負圧がなくなるとブレーキペダルの反力が強くなりブレーキがききづらいと感じるため早めにエンジンを再始動して負圧を確保するために行われる処理である。ステップＳＢ５２の判断結果が「ＮＯ」の場合には、ステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
【０１１３】
ステップＳＢ５２の判断結果が「ＮＯ」である場合には、ステップＳＢ５４へ進み、変数Ｆ＿ＰＢＲＫの値が「１」であるか否かが判断される。ここで、変数Ｆ＿ＰＢＲＫはブレーキペダルのオンオフ回数が所定の回数以上である場合にその値が「１」となるフラグであり、いわゆるポンピングブレーキが行われたか否かを示すフラグである。ステップＳＢ５４の処理は、運転者がポンピングブレーキを多用するとブレーキ負圧が低下してしまうため、ブレーキ負圧低下防止のために行われる処理である。この判断結果が「ＹＥＳ」の場合にはステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
一方、ステップＳＢ５４における判断結果が「ＮＯ」の場合には処理がメインルーチンに戻る。
【０１１４】
次に、再始動判定処理が開始され、ステップＳＢ１８における判断結果が「ＮＯ」の場合、つまりクラッチペダルが踏み込まれてないと判断された場合であって、ステップＳＢ４８の判断結果が「ＹＥＳ」の場合、つまりギアがニュートラル状態にあると判断された場合にはステップＳＢ５０の処理に進む。また、ステップＳＢ２８の処理における判断結果が「ＮＯ」の場合にもステップＳＢ５０へ進む。
【０１１５】
ステップＳＢ５０では現在ブレーキを踏んでいることを示すフラグＦ＿ＢＫＳＷの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ５２の処理に進み、前述した処理と同様の処理が行われる。一方、ステップＳＢ５０の判断結果が「ＮＯ」の場合、つまりブレーキペダルが踏み込まれていないと判断した場合にはステップＳＢ５６へ進む。ステップＳＢ５６では、車両が停止したか否かを示すフラグＦ＿ＶＳＴＰが「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、処理がメインルーチンに戻り、「ＮＯ」の場合にはステップＳＢ４０へ進み、ステップＳＢ４０を介してステップＳＢ４２においてフラグＦ＿ＦＣＭＧの値が「０」に設定され、ステップＳＢ４４，ＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。
【０１１６】
ステップＳＢ５６において判断結果が「ＮＯ」になるときの運転者の操作状態はクラッチペダルを踏み込んでおらず、ギアがニュートラルであって、ブレーキペダルも踏んでおらず、車両の停止履歴がないという状態であり、この状態は運転者が真に惰行を行う意志がある場合であると考えられる。運転者が車両を惰行させている場合には、運転者の車両停止の意志が不明（停止の意志が無い場合がある）であるため、次の動作（例えば加速動作）に備えてエンジンを再始動する制御を行うため、処理をステップＳＢ４０へ進めている。
【０１１７】
また、再始動判定処理が開始され、ステップＳＢ１８における判断結果が「ＮＯ」の場合、つまりクラッチペダルが踏み込まれてない場合には、ステップＳＢ４８へ進む。ステップＳＢ４８ではギアがニュートラル状態にあるか否かを示すフラグＦ＿ＮＳＷの値が「１」であるか否かが判断される。この判断結果が「ＮＯ」であり、ギアの状態がインギアであると判断された場合にはステップＳＢ６２へ進む。ステップＳＢ６２では、前回の処理におけるギアがニュートラル状態にあるか否かを示すフラグＦ＿ＮＳＷの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ６４において、ギアがニュートラルにある状態からクラッチがつながった状態でインギア操作を行ったか否かを示すフラグＦ＿ＩＮＧＭＧの値を「１」に設定する処理が行われ、ステップＳＢ６６の処理に進む。一方、ステップＳＢ６２の判断結果が「ＮＯ」の場合にはステップＳＢ６４の処理は行われず、ステップＳＢ６６の処理に進む。
【０１１８】
ステップＳＢ６６では、車速を示す変数ＶＰが所定の車速を示す値が格納された変数＃ＶＩＤＬＳＴの値（例えば３ｋｍ／ｈ）以上であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理はメインルーチンに戻る。これは、車両が変数＃ＶＩＤＬＳＴで示される所定の速度に達していないため、エンジンの再始動を行わないよう制御するためである。一方、ステップＳＢ６６の判断結果が「ＹＥＳ」の場合にはステップＳＢ６８へ進みエンジン回転数を示す変数ＮＥが変数＃ＮＥＩＤＬＳＴの値（例えば２５０ｒｐｍ）以上であるか否かが判断される。この判断結果が「ＮＯ」の場合にはメインルーチンに戻る。
【０１１９】
一方、ステップＳＢ６８の判断結果が「ＹＥＳ」の場合には、処理が、ステップＳＢ４０へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値が「１」に設定する処理が行われ、ステップＳＢ４２において、エンジンを再始動するフラグＦ＿ＦＣＭＧの値が「０」に設定され、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン再始動制御が行われる。
【０１２０】
ステップＳＢ６８における判断が「ＹＥＳ」となる状態は、クラッチペダルが踏み込まれておらず、ギアがインギアであり、車速が高く、且つエンジン回転も高いという状態である。この状態においても減速Ｆ／Ｃ継続が行われているがこのままであると、押しがけ状態になる場合が考えられる。例えばギアが二速で惰行を行っている状態でアイドル停止を実施した場合であって、無理にクラッチをつないだときが考えられる。このような押しがけ状態を防止するために、エンジンの再始動を行っている。
【０１２１】
〔第２実施形態〕
次に、本発明の第２実施形態によるエンジン自動始動停止制御装置について図面を参照して詳細に説明する。
図１４は、本発明の第２実施形態によるエンジン自動始動停止制御装置の構成を示すブロック図である。
図１４に示した本発明の第２実施形態によるエンジン自動始動停止制御装置が図２に示した本発明の第１実施形態によるエンジン自動始動停止制御装置と異なる点は、図２中のマニュアルトランスミッション１２に代えてＣＶＴ１３が設けられるとともに、ＣＶＴ１３の制御を行うＣＶＴ ＥＣＵ３６が設けられた点である。ＣＶＴ ＥＣＵ３６とエンジンＥＣＵは互いに通信を行い、特にエンジンＥＣＵ１８がＣＶＴ ＥＣＵ３６に対してアイドル停止実施要求を出力し、この要求に対してＣＶＴ ＥＣＵ３６がＣＶＴ１３の状態を監視し、アイドル停止実施準備が完了した場合にはエンジンＥＣＵ１８対してＣＶＴ準備完了の信号を出力する。
【０１２２】
以下、アイドリングの停止及び開始を行う制御について説明する。
本実施形態おいても第１実施形態と同様に、前述した（１）〜（９）の場合にアイドル停止又は再開を行い、排出ガス量の低減を図るとともに、運転性（使い勝手）の向上を図っている。以下では、第１実施形態と異なる箇所のみについて説明する。
（１）減速中からのエンジン停止
ブレーキの踏み込みがされ、且つＣＶＴ ＥＣＵ３６からＣＶＴ準備完了の信号が出力された場合にエンジン１０を停止する。ただし、運転者が急ブレーキをかけた場合、つまりいわゆるパニックブレーキを行った場合にはアイドル停止を行わない。その理由は、パニックブレーキを行い減速時間が十分でない場合には、ＣＶＴ１３のレシオがローレシオまで戻らないというＣＶＴの機構上の制約があり、上記ＣＶＴ準備完了の信号が出力されないからである。ＣＶＴのレシオがローレシオに戻ってからアイドル停止を行うのは、車両発進時にＣＶＴのレシオがオーレシオに戻っていないと、十分な加速度が得られない場合があるからである。また、エンジンの再始動は、運転者がブレーキペダルから足を離したときに行う。
【０１２３】
（２）停車時のアイドル停止
ブレーキの踏み込みがされ、且つＣＶＴ ＥＣＵ３６からＣＶＴ準備完了の信号が出力された場合にエンジンを停止する。また、エンジンの再始動は、運転者がブレーキペダルから足を離したときに行う。この制御は上記（１）と別個に行われ、上記（１）の制御でエンジンを停止した後にエンジンを始動し、（２）の制御によってエンジンを再び停止するという制御をする訳ではない。この制御は、上記（１）の条件が成立しない場合であってもエンジンを停止させる制御を行うためのものである。
【０１２４】
（３）再始動後のアイドル停止禁止
運転者がブレーキペダルから足を離してエンジンを再始動させた後、再度ブレーキペダルを踏み込む操作を行った場合は、１度はアイドル停止を許可するが、この操作を２度以上行った場合には所定の車速、例えば１５ｋｍ／ｈになるまでアイドル停止を禁止する。渋滞ではブレーキペダルから足を離して低速で僅かな距離を走行し再度ブレーキペダルを踏んで停車するといった動作が繰り返されるが、この動作がエンジン停止状態で継続されると、バッテリ電力の消費が大となる。よって、ブレーキペダルから足が離されて始動した後に所定の車速に達せずにブレーキペダルを踏んだ場合は原則としてアイドル停止動作を行うが、再度ブレーキペダルから足を離して始動し、所定の車速に達する前に再びブレーキペダルが踏まれた場合にはアイドル停止を禁止するものである。また、ＣＶＴ１３を備える車両では、停車を行うときにブレーキペダルを踏み込んだり離したりして車間距離を調整する動作を行う。アイドル停止が行われていると、推進力が得られないため車間距離の調整をうまく行えなくなる虞がある。この事態を防止するためにも再始動後のアイドル停止禁止して推進力を確保する必要がある。
【０１２５】
以上がアイドル停止／再開の基本的な制御であるが、更に以下に示した詳細な制御を行う。
（４）急加速対応
アイドル停止中にエンジンを再始動を許可する条件は、アイドル停止中にブレーキが踏み込まれており且つＣＶＴ１３がニュートラルである場合に、アクセルが踏み込まれ、バッテリの残容量が低下し、又はエアコンからの要求があった場合である。ＣＶＴ１３がニュートラルである場合のみを条件としていないのは、ニュートラルを検出するスイッチが何らかの原因で故障し、常時ニュートラルであるである旨の信号を出力している場合の車両の発進を防止するためである。
（５）アイドル停止通知、（６）警告音、（７）エアコンとの協調、（８）ブレーキマスターパワー負圧センサの検出結果に基づいた制御、（９）使い勝手の向上については、第１実施形態と同様である。
【０１２６】
図１５は、本発明の第２実施形態によるアイドル停止条件及び再始動条件を要約した図であり（ａ）がアイドル停止条件を、（ｂ）が再始動条件をそれぞれ示す。
図１５（ａ）示されたように、条件ＣＥ１〜ＣＥ１４全てがアンド演算子ＯＰ４０で論理的に結合されている。つまり、条件ＣＥ１〜ＣＥ１４全てが成立した場合にアイドル停止が実施される。
【０１２７】
条件ＣＥ１〜条件ＣＥ５は、図３（ａ）中の条件ＣＡ１〜条件ＣＡ５とそれぞれ同様の条件である。
【０１２８】
条件ＣＥ６は、本実施形態特有の条件であり、運転モードがＤレンジ（ドライブモード）又はＮレンジ（ニュートラルモード）にあるか否かである。詳細は割愛するが本実施形態では、運転者の操作に応じてＣＶＴ制御を変化させて運転性を変える制御モードを複数備えており、Ｄレンジ（ドライブモード）は、通常の運転動作を行うときに用いられ、Ｎレンジ（ニュートラルモード）は長時間停車を行う場合等に用いられる。その他Ｓレンジ（スポーツモード）を備えている。このＳレンジ（スポーツモード）は、例えば他の運転モードよりも発進時のトルク力を高く設定して高い加速度が得られるようにしたり、高速運転時にＣＶＴのレシオをより高く設定する等の制御を行う。このように制御することで運転性の向上を図る。
【０１２９】
条件ＣＥ７〜ＣＥ１０は図３（ａ）中の条件ＣＡ７〜ＣＡ１０とほぼ同じ条件である。ただし、条件ＣＥ９は条件ＣＡ９と異なり、ブレーキペダルのスイッチが正常に動作しているか否かのみが挙げられている。
条件ＣＥ１１はブレーキペダルが踏み込まれているか否かである。ＣＶＴを備える車両のアイドル停止は、基本的にブレーキペダルが踏み込まれているか否かを判断して実施するからである。
【０１３０】
条件ＣＥ１２は、ＣＶＴ ＥＣＵ３６からＣＶＴ１３のアイドル停止を行う準備が完了したか否かを示す信号が出力されたか否かである。この信号は、ＣＶＴ１３のレシオがローレシオに戻っている場合はＳ／Ｃ切り離しが行われた場合に出力される。前述したように、ＣＶＴ１３のレシオがローレシオに戻ってからアイドル停止を行うのは、車両発進時にＣＶＴ１３のレシオがオーレシオに戻っていないと、十分な加速度が得られない場合があるからである。
条件ＣＥ１３は、ブレーキマスターパワー負圧がゲージ圧で所定値以上となったか否かである。負圧の一例としては−２５０ｍｍＨｇが挙げられる。この条件は、前述の（８）の制御を行う条件である。条件ＣＥ１４はエンジンの再始動後、一度車速が所定値以上（例えば１５ｋｍ／ｈ以上）になったか否かである。
【０１３１】
次に、図１５（ｂ）を参照してアイドル停止を行っている状態でエンジンを再始動する場合の条件について説明する。
図１５（ｂ）示されたように、条件ＣＦ３と条件ＣＦ４とがアンド演算子ＯＰ５２によって論理的に結合され、条件ＣＦ５と条件ＣＦ６とがアンド演算子ＯＰ５３によって論理的に結合され、条件ＣＦ７〜ＣＦ１０がオア演算子ＯＰ５５で論理的に結合されている。また、アンド演算子ＯＰ５３の出力端とオア演算子ＯＰ５５の出力端とがアンド演算子ＯＰ５４によって論理的に結合され、条件ＣＦ２、アンド演算子ＯＰ５２の出力端、アンド演算子ＯＰ５４の出力端、及び条件ＣＦ１１がオア演算子ＯＰ５１によって論理的に結合され、最後に条件ＣＦ１とオア演算子ＯＰ５１の出力端とがアンド演算子ＯＰ５０によって論理的に結合されている。そして、アンド演算子ＯＰ５０の出力端からエンジンを再始動する信号が出力される。
【０１３２】
条件ＣＦ１は、図３（ｂ）中の条件ＣＢ１と同様の条件である。条件ＣＦ２は運転者がブレーキペダルを踏み込んでいないか否かであり、条件ＣＦ３は逆に運転者がブレーキペダルを踏み込んでいるか否かである。ＣＶＴ１３を備える車両のアイドル停止制御は、運転者がブレーキペダルを踏み込んだ場合にアイドル停止を行って、ブレーキペダルから足を離した場合にエンジンの再始動を行うことを基本的な考え方としているからである。
【０１３３】
条件ＣＦ４は、ＣＶＴ１３の状態がＲインギア（リバース）状態、Ｐインギア（パーキング）状態、Ｓインギア（セカンドギア）状態、又はＬインギア（ローギア）状態であるか否かである。ＣＶＴは周知のように、マニュアルトランスミッション等のように段階的なギアチェンジを行わず、車速等に応じて線形的な変化を行うものであるが、運転者の操作によっては意識的にＣＶＴのレシオを設定する場合があり、これらが上記のように設定された場合にはエンジンの再始動を行う際の条件の１つに挙げている。
条件ＣＦ５は、ブレーキペダルが踏み込まれているか否かである。条件ＣＦ６〜条件ＣＦ８は図３（ｂ）中の条件ＣＢ５〜ＣＢ７と同様の条件であり、条件ＣＦ９〜条件ＣＦ１１は図３（ｂ）中の条件ＣＢ９〜条件ＣＢ１１と同様の条件である。
以上がアイドル停止を行うか否か又はエンジン再始動を行うか否かの条件である。
【０１３４】
次に、図１５に示したアイドル停止及びエンジン再始動条件が実際に適用される制御フローについて説明する。
図１６及び図１７は、本発明の第２実施形態によるアイドル停止を実施するか否かを判定する処理を示すフローチャートである。図１６及び図１７に示したフローは、一定時間間隔、例えば１０ｍｓｅｃ毎に図示しないメインルーチンから呼び出されることにより行われ、図１４中のエンジンＥＣＵ１８によって行われる。アイドル停止を実施するか否かは、図１６及び図１７中のフラグＦ＿ＦＣＭＧの値を「１」に設定するか否かによって行われる。つまりフラグＦ＿ＦＣＭＧの値が「１」であればメインルーチンに戻ったときにアイドル停止制御が行われ、「０」の場合には行われない。フラグＦ＿ＦＣＭＧの初期値は「０」に設定されている。
【０１３５】
メインルーチンから図１６に示した処理が呼び出されて処理が開始すると、ステップＳＣ１０において、フラグＦ＿ＦＣＭＧの値が「１」であるか否かが判断される。図１６及び図１７に示した処理は、フラグＦ＿ＦＣＭＧの値を「１」に設定してアイドル停止を行う処理であり、ステップＳＣ１０においてフラグＦ＿ＦＣＭＧの値が既に「１」である場合には以下の処理が無意味となるので、判断結果が「ＹＥＳ」の場合には処理がメインルーチンに戻る。一方、ステップＳＣ１０の判断結果が「ＮＯ」である場合にはステップＳＣ１２の処理へ進む。
【０１３６】
ステップＳＣ１２では、スタータスイッチがオン状態となってから所定時間経過したか否かが判断される。ステップＳＣ１０中の変数＃ＴＭＩＤＬＳＴには上記所定時間として１２０秒（２分）が設定されており、この値とタイマＴ２０ＡＣＲＳＴの値との大小関係が比較されることにより、所定時間経過したか否かが判断される。タイマＴ２０ＡＣＲＳＴは、スタータスイッチがオン状態となってからカウントを開始するタイマである。
【０１３７】
ステップＳＣ１２の判断結果が「ＮＯ」である場合には、処理はステップＳＣ４６へ進み、フラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。ここで、フラグＦ＿ＦＣＭＧＳＴＢはエンジンＥＣＵ１８がＣＶＴ ＥＣＵ３６に対してアイドル停止要求を示す信号を出力しているか否かを示すフラグである。つまり、このフラグＦ＿ＦＣＭＧＳＴＢの値が「１」である場合には、エンジンＥＣＵ１８がＣＶＴ ＥＣＵ３６に対してアイドル停止要求を出力していること意味する。
一方、ステップＳＣ１２の判断結果が「ＹＥＳ」である場合、つまりスタータスイッチがオン状態となってから変数＃ＴＭＩＤＬＳＴＣに設定された時間が経過したと判断された場合にはステップＳＣ１４の処理へ進む。
【０１３８】
ステップＳＣ１４では、変数ＭＯＴＩＮＦＯの２ビットが「１」であるか否かの判断が行われる。この変数ＭＯＴＩＮＦＯの２ビットはバッテリ２６の温度が０℃以下であるか否かを示すものであり、バッテリ２６の温度状態に応じてバッテリＥＣＵ３２で設定される。この判断結果が「ＹＥＳ」である場合、つまりバッテリ２６の温度が０℃以下である場合には、処理がステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。
一方、ステップＳＣ１４の判断結果が「ＮＯ」の場合、つまりバッテリ２６の温度が０℃より高いと判断された場合には、ステップＳＣ１６へ進む。
【０１３９】
ステップＳＣ１６では、フラグＦ＿ＭＯＴＳＴＢの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＭＯＴＳＴＢはモータ／発電機１６で始動することができるか否かを示すフラグであり、その値はモータ／発電機１６の状態に応じてモータＥＣＵ２２により設定される。この判断結果が「ＮＯ」の場合には処理がステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。
一方、ステップＳＣ１６の判断結果が「ＹＥＳ」の場合には、処理はステップＳＣ１８へ進む。
【０１４０】
ステップＳＣ１８では、フラグＦ＿ＴＷＦＣＭＧの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＴＷＦＣＭＧは、アイドル停止を実施できる程度にエンジン水温が高いか否かを示すフラグであり、その値はエンジンＥＣＵ１８によって設定される。ここで、アイドル停止を行うか否かは図５（ａ）（ｂ）に示したように、エンジン水温と外気温とによって定められる。この処理は、図９〜図１１を用いて説明した処理と同様の処理である。
【０１４１】
ステップＳＣ１８の判断結果が「ＮＯ」である場合には、処理がステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。
一方、ステップＳＣ１８における判断結果が「ＹＥＳ」の場合には、ステップＳＣ２０へ進み、フラグＦ＿ＴＡＦＣＭＧが「１」であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理がステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。一方、ステップＳＣ２０の判断結果が「ＹＥＳ」である場合には、ステップＳＣ２２の処理へ進む。
【０１４２】
ステップＳＣ２２では、フラグＦ＿ＥＭＢの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＥＭＢは、緊急のブレーキ操作があったか否かを示すフラグであり、この操作があった場合には値が「１」となる。緊急のブレーキ操作があったか否かは、ブレーキペダルが踏み込まれた時の減速度が予め定められた閾値よりも大であるか否かによって判断する。ステップＳＣ２２の判断結果が「ＹＥＳ」である場合には、ＣＶＴ１３のレシオをローレシオに戻すためにアイドル停止を禁止する必要があるため、ステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。
【０１４３】
ステップＳＣ２２の判断結果が「ＮＯ」である場合には、ステップＳＣ２４へ進み、フラグＦ＿ＯＫＢＲＫＳＷの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＯＫＢＲＫＳＷは、ブレーキペダルのオン／オフ状態が検出されているかを示すフラグである。つまり、ステップＳＣ２４では、ブレーキペダルに設けられたスイッチのオン／オフ状態が正常に検出されているか否かを判断している。この判断結果が「ＮＯ」の場合には、ステップＳＣ４６へ進み、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値に「０」を設定する処理が行われ、メインルーチンに戻る。
【０１４４】
ステップＳＣ２４の判断結果が「ＹＥＳ」の場合にはステップＳＣ２６の処理に進む。ステップＳＣ２６では、フラグＦ＿ＶＰＦＣＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＶＰＦＣＭＧは、車輪１４に設けられたパルス発生器から出力されるパルスの異常があった場合に「１」となる。例えば、走行中に１秒間１００パルスが出力されており、ある瞬間に出力パルス数が０となった場合に異常と判断し、フラグＦ＿ＶＰＦＣＭＧの値は「１」となる。ステップＳＣ２６の判断結果が「＝１」の場合にはステップＳＣ４６を介してメインルーチンに戻り、「＝０」の場合にはステップＳＣ２８へ進む。
【０１４５】
ステップＳＣ２８では、フラグＦ＿ＦＣＭＧＶの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＦＣＭＧＶは、一度車速が所定値以上高くなった場合にその値が「１」となるフラグであり、つまり一度車両が発進したことを示すフラグである。上記所定値は例えば１５ｋｍ／ｈに設定される。この判断結果が「＝０」の場合はステップＳＣ３０へ進む。ステップＳＣ３０では変数ＶＰが変数ＶＩＤＬＳＴＣの値以上であるか否かが判断される。ここで変数ＶＰは、前述した車輪１４に設けられたパルス発生器から所定時間内に出力されるパルスの数を格納する変数、つまり車速を示す変数である。変数ＶＩＤＬＳＴＣは例えば１５ｋｍ／ｈに設定されている。
【０１４６】
ステップＳＣ３０の判断結果が「ＮＯ」である場合には、ステップＳＣ４６を介してメインルーチンに戻り、「ＹＥＳ」の場合には、ステップＳＣ３２へ進み、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値を「１」に設定するとともに、変数ＣＢＲＳＴの値を「０」に設定する処理が行われる。ここで、変数ＣＢＲＳＴは車両の再始動を計数した値を格納する変数であり、車両の再始動はブレーキペダルから運転者の足が離されてオフ状態となったか否かにより判断する。
【０１４７】
ステップＳＣ３２の処理が終了すると、ステップＳＣ３４の処理に進む。
一方、ステップＳＣ２８において、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「＝１」と判断された場合にはステップＳＣ３０，ＳＣ３２の処理を行わず、ステップＳＣ３４へ進む。
ステップＳＣ３４では、フラグＦ＿ＦＣＭＧＢＡＴの値が「１」であるか否かが判断される。ここでフラグＦ＿ＦＣＭＧＢＡＴは、バッテリ２６の残容量が図４（ａ）中の領域Ｚ1である場合に値が「１」となり、それ以外では「０」となるフラグであって、バッテリＥＣＵ３２によって設定される。ステップＳＣ３４の判断結果が「ＮＯ」の場合には、ステップＳＣ４６を介してメインルーチンに戻り、「ＹＥＳ」の場合にはステップＳＣ３６へ進む。
【０１４８】
ステップＳＣ３６では、フラグＦ＿ＥＳＺＯＮＥＣの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＥＳＺＯＮＥＣはバッテリ２６の残容量が図４（ｂ）に示した領域ＺB又はＺCにあり、アイドル停止が禁止される状態にあることを示すフラグであり、図１４中のバッテリＥＣＵ３２によって設定される。この判断結果が「ＹＥＳ」である場合にはアイドル停止を行わないので、処理がステップＳＣ４６を介してメインルーチンに戻る。
一方、ステップＳＣ３６の判断結果が「ＮＯ」であり、バッテリ２６の残容量がアイドル停止を実施できる程度に充電されていると判断した場合には、ステップＳＣ３８へ進む。
【０１４９】
ステップＳＣ３８では、シフト位置がニュートラル（Ｎ）、パーキング（Ｐ）、又はニュートラルパーキング（ＮＰ）であるか否かが判断される。ステップＳＣ３８の判断結果が「ＮＯ」である場合には、ステップＳＣ４２の処理へ進む。ステップＳＣ４２では、フラグＦ＿ＣＶＴＥＤの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＣＶＴＥＤは、ＣＶＴ１３がＤレンジ（ドライブモード）であるか否かを示すフラグであり、図１４中のＣＶＴ ＥＣＵ３６によって設定される。ステップＳＣ４２の判断結果が「ＮＯ」である場合には、アイドル停止を行わないため、処理はステップＳＣ４６を介してメインルーチンに戻る。
【０１５０】
ステップＳＣ３８の判断結果が「ＹＥＳ」である場合には、ステップＳＣ４０へ進み、フラグＦ＿ＳＴＳの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＳＴＳは、スタータスイッチがオン状態にされたか否かを示すフラグである。この判断結果が「ＹＥＳ」である場合には、処理がステップＳＣ４６を介してメインルーチンに戻る。一方、ステップＳＣ４０の判断結果が「ＮＯ」である場合はステップＳＣ４４の処理へ進む。また、ステップＳＣ４２における判断結果が「ＹＥＳ」である場合、つまりＣＶＴ１３がＤレンジ（ドライブモード）である場合にもステップＳＣ４４の処理へ進む。
【０１５１】
ステップＳＣ４４では、ブレーキスイッチＢＲＫＳＷがオン状態であるか又はオフ状態であるか否かが判断される。ブレーキスイッチＢＲＫＳＷがオフ状態である場合には、アイドル停止を行わないので、ステップＳＣ４６の処理を介してメインルーチンに戻る。一方、ステップＳＣ４４において、ブレーキスイッチＢＲＫＳＷがオン状態であると判断された場合には、ステップＳＣ４８の処理へ進む。
【０１５２】
ステップＳＣ４８では、フラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＴＨＩＤＬＭＧは、アクセルペダルの状態を格納するフラグであり、全開（踏まれている）場合に値が「１」となり、全閉（踏み込まれていない）場合に値が「０」となる。この判断結果が「ＹＥＳ」の場合には、アクセルが踏まれている状態であり、アイドル停止を禁止するため処理がステップＳＣ４６を介してメインルーチンに戻る。一方、ステップＳＣ４８の判断結果が「ＮＯ」である場合には。ステップＳＣ５０の処理へ進む。
【０１５３】
ステップＳＣ５０では、変数ＭＰＧＡの値が変数＃ＭＰＦＣＭＧの値以上であるか否かが判断される。ここで、変数ＭＰＧＡは倍力装置マスターパワーの負圧を示す値を格納する変数であり、変数＃ＭＰＦＣＭＧはマスターパワーの負圧が低下したときにエンジン再始動を開始する値を格納する変数である。この判断結果が「ＮＯ」である場合には、アイドル停止を禁止するために処理がステップＳＣ４６を介してメインルーチンに戻る。一方、ステップＳＣ５０の判断結果が「ＹＥＳ」である場合にはステップＳＣ５２の処理へ進む。
【０１５４】
ステップＳＣ５２では、フラグＦ＿ＨＴＲＭＧの値が「１」であるか否かが判断される。このフラグＦ＿ＨＴＲＭＧは、エアコンから出力されるアイドル停止を禁止する旨を格納するフラグであり、アイドル停止が禁止される場合には値が「１」となり、許可される場合には値が「０」となる。この判断結果が「ＮＯ」である場合には、ステップＳＣ５４の処理へ進む。
【０１５５】
ステップＳＣ５４では、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値を「１」に設定する処理が行われる。ステップＳＣ５４の処理が終了すると、ＣＶＴ ＥＣＵ３６からエンジンＥＣＵ１８へ、ＣＶＴ準備完了の信号が出力されたか否かを示すフラグＦ＿ＣＶＴＯＫの値が「１」であるか「０」であるかが判断される。
【０１５６】
ステップＳＣ５６の判断結果が「＝０」である場合には、アイドル停止を実施するのにＣＶＴ１３の準備が完了していないため、処理はメインルーチンへ戻る。一方、ステップＳＣ５６の判断結果が「＝１」の場合には、ＣＶＴ１３がアイドル停止を行う準備が完了した場合であるので、フラグＦ＿ＦＣＭＧの値を「１」に設定する処理が行われ（ステップＳＣ５８）、メインルーチンに戻りアイドル停止を実施する制御が行われる。
【０１５７】
一方、ステップＳＣ５２の判断結果が「ＹＥＳ」である場合、つまり、エアコンからアイドル停止が禁止される旨の信号が出力されている場合にはステップＳＣ６０の処理へ進む。ステップＳＣ６０では、車速を示す変数ＶＰが変数＃ＶＩＤＬＳＴ（例えば、１５ｋｍ／ｈ）以上であるか否かが判断される。この判断結果が「ＹＥＳ」である場合には、処理がステップＳＣ４６を介してメインルーチンへ戻る。
【０１５８】
一方、判断結果が「ＮＯ」である場合にはステップＳＣ６２において一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値を「０」に設定する処理が行われ、その後処理はステップＳＣ４６を介してメインルーチンに戻る。一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「０」である場合には、図１６及び図１７を参照すると、必ずステップＳＣ５８の処理が行われず、アイドル停止が実施されない。よって、ステップＳＣ６０，ＳＣ６２の処理は、車速が低い場合にはアイドル停止を禁止するための処理である。
【０１５９】
以上がアイドル停止を実施するか否かを示す処理フローである。
次に、アイドル停止している場合にエンジン１０の再始動を行うか否かの判定処理について詳細に説明する。
図１８は、本発明の第２実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。図１８に示したフローは、一定時間間隔、例えば１０ｍｓｅｃ毎に図示しないメインルーチンから呼び出されることにより行われ、図１４中のエンジンＥＣＵ１８によって行われる。エンジンを再始動するか否かは、図１８中のフラグＦ＿ＦＣＭＧの値を「０」に設定するか否かによって行われる。図１６及び図１７に示したフローはフラグＦ＿ＦＣＭＧの値を「１」にしてアイドル停止を行う処理を行っていたが、図１８では、値が「１」に設定されているフラグＦ＿ＦＣＭＧの値を「０」にしてエンジンを始動する処理が示されている。
【０１６０】
メインルーチンから図１８に示した処理が呼び出されて処理が開始すると、ステップＳＤ１０において、フラグＦ＿ＦＣＭＧの値が「１」であるか否かが判断される。これは、図１６及び図１７に示した処理がフラグＦ＿ＦＣＭＧの値を「１」から「０」に設定する処理であり、この処理が開始されたとき既にフラグＦ＿ＦＣＭＧの値が「０」である場合に無駄な処理を行わないようにするため設けられている。ステップＳＤ１０の判断結果が「ＮＯ」である場合には、ステップＳＤ１２へ進む。
【０１６１】
ステップＳＤ１２では、フラグＦ＿ＭＥＯＦの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＭＥＯＦはエンジン回転が０の場合にその値が「１」となるフラグである。つまり、この処理ではエンスト判定を行っている。即ち、フラグＦ＿ＦＣＭＧの値が「０」である場合にはアイドル停止が禁止されている状態であり、エンジンは動いているので、処理をメインルーチンに戻している（ステップＳＤ１２の判断結果が「ＮＯ」の場合）。
【０１６２】
しかしながら、アイドル停止が禁止されている状態でエンジン回転が０であることを示すフラグＦ＿ＭＥＯＦの値が「１」である（エンジン回転数が０である）場合にはエンストを起こしているとステップＳＤ１２では判断し（ステップＳＤ１２の判断結果が「ＹＥＳ」の場合）、再始動判定を実行してエンジンを再始動させるため処理をステップＳＤ１４へ進める。このような状態、即ちアイドル停止が禁止されている状態でエンジンの回転数が０となる状態が生じるのは、運転者がギアをつないだまま車両を停止させるよう操作した等の不用意な操作を行った場合である。
【０１６３】
ステップＳＤ１４では、シフト位置がニュートラル（Ｎ）、パーキング（Ｐ）、又はニュートラルパーキング（ＮＰ）であるか否かが判断される。ステップＳＤ１４の判断結果が「ＮＯ」である場合には、ステップＳＤ１８へ進む。ステップＤ１８では、ＣＶＴ１３がＤレンジ（ドライブモード）であるか否かを示すフラグＦ＿ＣＶＴＥＤの値が「１」であるか否かが判断される。この判断結果が「ＮＯ」である場合、つまりＤレンジ（ドライブモード）でないと判断された場合にはステップＳＤ２０へ進み、フラグＦ＿ＭＳＰＯの値が「１」であるか否かが判断される。ここで、フラグＦ＿ＭＳＰＯは、運転モードがＳレンジ（スポーツモード）であるか否かを示すフラグであり、その値はＳレンジ（スポーツモード）である場合に「１」となる。
【０１６４】
ステップＳＤ２０の判断結果が「ＮＯ」である場合には、ステップＳＤ２８の処理へ進む。ステップＳＤ２８では、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「０」に設定される。ステップＳＤ２８の処理が終了すると、ステップＳＤ３０において、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値を「０」に設定し、アイドル停止を解除する信号をＣＶＴ ＥＣＵ３６へ出力する。ステップＳＤ３０の処理が終了すると、ステップＳＤ３２へ進み、フラグＦ＿ＦＣＭＧの値を「０」に設定する処理が行われる。その後、処理はメインルーチンに戻り、フラグＦ＿ＦＣＭＧの値が「０」であるのでエンジン再始動の処理が行われる。
【０１６５】
一方、ステップＳＤ１４における判断が「ＹＥＳ」である場合、つまりシフト位置がシフト位置がニュートラル（Ｎ）、パーキング（Ｐ）、又はニュートラルパーキング（ＮＰ）の何れかであると判断された場合には、処理がステップＳＤ１６へ進む。ステップＳＤ１６では、スタータスイッチがオン状態にされたか否かを示すフラグＦ＿ＳＴＳの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」である場合には、ステップＳＤ４２へ進む。ステップＳＤ４２では、一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「０」に設定される。ステップＳＤ４２の処理が終了すると、ステップＳＤ３０において、エンジンＥＣＵ１８からＣＶＴ ＥＣＵ３６へアイドル停止要求を示す信号を出力しているか否かを示すフラグＦ＿ＦＣＭＧＳＴＢの値を「０」に設定し、アイドル停止を解除する信号をＣＶＴ ＥＣＵ３６へ出力する処理が行われ、次にステップＳＤ３２においてフラグＦ＿ＦＣＭＧの値が「０」に設定する処理が行われる。その後、処理はメインルーチンに戻り、フラグＦ＿ＦＣＭＧの値が「０」であるのでエンジン再始動の処理が行われる。
【０１６６】
一方、ステップＳＤ１６における判断結果が「ＮＯ」である場合、つまりスタータスイッチがオン状態になってないと判断された場合には、ステップＳＤ２２の処理へ進む。また、ステップＳＤ１８における判断結果が「ＹＥＳ」の場合、つまり運転モードがＤレンジ（ドライブモード）であると判断された場合、又はステップＳＤ２０における判断結果が「ＹＥＳ」の場合、つまり運転モードがＳレンジ（スポーツモード）であると判断された場合にもステップＳＤ２２へ進む。
【０１６７】
ここで、ステップＳＤ２０からステップＳＤ２２へ処理が進む理由について説明する。仮にステップＳ２０を設けないとした場合、ステップＳＤ１８において「ＮＯ」である場合は、ステップＳＤ２８〜ステップＳＤ３２を介してエンジンの再始動が行われる。よって、運転モードがＳレンジ（スポーツモード）に設定された場合にはステップＳＤ１４及びステップＳＤ１８における判断結果が共に「ＮＯ」となるため、エンジンが再始動される。つまり、運転者が運転モードをＤレンジ（ドライブモード）からＳレンジ（スポーツモード）へ変更する操作を行った時にエンジンの再始動が行われる結果となる。前述のように、ＣＶＴ１３を備える車両のアイドル停止及びエンジンの再始動制御は、車両の走行状態のある条件が成立している場合に運転者がブレーキペダルを踏み込んだり、離したりすることによって行うことを基本としている。よって、運転モードの切り換え操作によってエンジンの再始動制御が行われることは好ましくない。そこで、ステップＳＤ２０を設け、ステップＳＤ２０の処理からステップＳＤ２２の処理（ブレーキペダルの踏み込みがあるか否かを判断する処理）を行うこととしている。
【０１６８】
ステップＳＤ２２では、運転者によってブレーキペダルが踏み込まれ、ブレーキスイッチＢＲＫＳＷがオン状態となったか否かが判断される。この処理において運転者によってブレーキペダルが踏み込まれたと判断された場合にはステップＳＤ２４の処理へ進む。ステップＳＤ２４では変数ＣＢＲＳＴの値をインクリメントする処理が行われる。ここで、変数ＣＢＲＳＴは車両の再始動を計数した値を格納する変数であり、車両の再始動はブレーキペダルから運転者の足が離されてオフ状態となったか否かにより判断する。
【０１６９】
ステップＳＤ２４の処理が終了するとステップＳＤ２６の処理へ進む。ステップＳＤ２６では、車両の再始動を計数した値を格納する変数ＣＢＲＳＴの値が変数＃ＣＢＲＳＴの値以上であるか否かが判断される。ここで、変数＃ＣＢＲＳＴの値は例えば「２」に設定されている。ステップＳＤ２６の判断結果が「ＹＥＳ」である場合には、ステップＳＤ２８へ進みフラグＦ＿ＦＣＭＧＶの値を「０」に設定する処理が行われる。つまり、車両の再始動が所定回数以上行われた場合には一度車両が発進したことを示すフラグＦ＿ＦＣＭＧＶの値が「０」に設定されるので、車速が所定の車速（例えば、１５ｋｍ／ｈ）を越えるまではアイドル停止が禁止されることになる。そして、ステップＳＤ３０，ＳＤ３２を介してメインルーチンに戻り、エンジンの再始動が行われる。
【０１７０】
一方、ステップＳＤ２６における判断結果が「ＮＯ」である場合には、ステップＳＤ３０へ進む。これは、車両の再始動が所定回数以上行われていないので、エンジンの再始動後アイドル停止を許可するためである。ステップＳＤ３０，ＳＤ３２の処理が終了すると、処理がメインルーチンに戻りエンジンの再始動が行われる。
【０１７１】
次に、ステップＳＤ２２において、運転者によってブレーキペダルが踏まれていると判断された場合には処理がステップＳＤ３４へ進む。ステップＳＤ３４では倍力装置マスターパワーの負圧を示す値を格納する変数ＭＰＧＡの値が変数＃ＭＰＦＣＭＧの値以上であるか否かが判断される。この判断結果が「ＮＯ」である場合は、マスターパワーの負圧が小さい場合であるので、ステップＳＤ４２，ＳＤ３０，ＳＤ３２の処理を介してメインルーチンに戻りマスターパワーの負圧を上昇させるためエンジンの再始動が行われる。
【０１７２】
一方、ステップＳＤ３４の判断結果が「ＹＥＳ」である場合、つまりマスターパワーの負圧が高い場合にはステップＳＤ３６へ進み、シフト位置がニュートラル（Ｎ）、パーキング（Ｐ）、又はニュートラルパーキング（ＮＰ）であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理がメインルーチンに戻り、アイドル停止が継続される。一方、ステップＳＤ３６の判断結果が「ＹＥＳ」である場合にはステップＳＤ３８の処理へ進む。
【０１７３】
ステップＳＤ３８では、フラグＦ＿ＥＳＺＯＮＥＣの値が「１」であるか否かが判断される。つまり、シフト位置がニュートラル（Ｎ）、パーキング（Ｐ）、又はニュートラルパーキング（ＮＰ）であって、バッテリ２６の残容量が少ない場合には、強制的にエンジンを再始動させるため、ステップＳＤ４２，ＳＤ３０，ＳＤ３２の処理を行ってメインルーチンへ戻り、エンジン再始動制御を行う（ステップＳＤ３８の判断結果が「ＹＥＳ」の場合）。一方、ステップＳＤ３８の判断結果が「ＮＯ」場合にはステップＳＤ４０の処理へ進む。
【０１７４】
ステップＳＤ４０ではアクセルペダルの状態を格納するフラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」である場合にはステップＳＤ４２，ＳＤ３０，ＳＤ３２の処理を行ってメインルーチンへ戻り、エンジン再始動制御を行う。この場合は、運転者によってブレーキが踏まれ、アクセルペダルが踏まれている状態であるのでエンジンの再始動を行う。一方、ステップＳＤ４０における判断結果が「ＮＯ」である場合には、メインルーチンへ戻り、アイドル停止が継続される。
【０１７５】
以上、本発明の実施形態について説明したが、本発明は上記実施形態に制限されず、本発明の範囲内で自由に変更が可能である。例えば、上記実施形態では、ハイブリッド車両を例に挙げて説明したが、当然ながらエンジン動作をアシストするモータを備えない通常の車両にも本発明を適用することができる。また、図１６に示した処理では、所定時間走行した後、エンジン吸気温から外気温を推定するようにしていたが、外気温を測定する温度センサを設けた場合にはこの処理が省略されることになる。
また、上記実施形態では、マニュアルトランスミッション１２を備える場合及びＣＶＴ１３を備える場合を例に挙げて説明したが、本発明は当然ながら、オートマチックトランスミッション（ＡＴ）を備える車両にも適用できる。
【０１７６】
【発明の効果】
以上説明したように、本発明によれば、エンジンの停止の判断を行う場合に、判別手段が外気温及びエンジン水温を考慮して行う点を根本としているためキャタライザの温度低下を防止してしてキャタライザの性能維持を図り、その結果排出ガス量を低減することができるという効果がある。
また、外気温吸気手段がエンジン吸気温から推定して外気温とすることで、外気温測定のためのセンサを個別に設ける必要がないという効果がある。
また、外気温が所定の範囲内にある場合には、エンジン水温が予め設定された温度以上でなければ前記エンジンのアイドル停止が行われなくなるので、外気温が低いためにキャタライザの温度低下が速く、キャタライザの性能が急速に低下するという事態を防止することができる結果、寒冷地においても有効に排出ガス量を低減することができるという効果がある。
更に、空調制御装置の動作状態に応じてエンジンの停止を許可される閾値である設定温度が変更されるため、運転者の車室内における居住性を損なうことなく快適なドライビングを行うことができるという効果がある。
【図面の簡単な説明】
【図１】  本発明の実施形態によるエンジン自動始動停止制御装置の概略構成を示すブロック図である。
【図２】  本発明の第１実施形態によるエンジン自動始動停止制御装置の構成を示すブロック図である。
【図３】  本実施形態のアイドル停止条件及び再始動条件を要約した図であり（ａ）がアイドル停止条件を、（ｂ）が再始動条件をそれぞれ示す。
【図４】  バッテリの残容量に応じた制御領域を説明するための図であって、（ａ）は通常走行時においてアイドル停止を行うか否かを判定する図であり、（ｂ）はアイドル停止を行っている場合にエンジンの再始動を行うか否かを判定する図である。
【図５】  条件ＣＡ４と条件ＣＡ５との関係を説明するための図であり、（ａ）はエアコンが運転者の操作によって停止状態にある場合にアイドル停止を実施するか否かの条件を示しており、（ｂ）はエアコンが運転状態にある場合にアイドル停止を行うか否かの条件を示している。
【図６】  本実施形態の燃料停止制御条件及び復帰条件を要約した図であり（ａ）が燃料停止制御条件を、（ｂ）が復帰条件をそれぞれ示す。
【図７】  本発明の第１実施形態においてアイドル停止を実施するか否かを判定する処理を示すフローチャートである。
【図８】  本発明の第１実施形態においてアイドル停止を実施するか否かを判定する処理を示すフローチャートである。
【図９】  推定処理によって得られた外気温が、アイドル停止を行っても良い温度であるか否かを判断する処理を示すフローチャートである。
【図１０】  エンジン水温がアイドル停止を行っても良い水温であるか否かを判断する処理を示すフローチャートである。
【図１１】  アイドル停止を行うか否かを定めるエンジン水温と外気温との関係を示すテーブルの例を示す図である。
【図１２】  本発明の第１実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。
【図１３】  本発明の第１実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。
【図１４】  本発明の第２実施形態によるエンジン自動始動停止制御装置の構成を示すブロック図である。
【図１５】  本発明の第２実施形態によるアイドル停止条件及び再始動条件を要約した図であり（ａ）がアイドル停止条件を、（ｂ）が再始動条件をそれぞれ示す。
【図１６】  本発明の第２実施形態によるアイドル停止を実施するか否かを判定する処理を示すフローチャートである。
【図１７】  本発明の第２実施形態によるアイドル停止を実施するか否かを判定する処理を示すフローチャートである。
【図１８】  本発明の第２実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。
【符号の説明】
１０    エンジン
１８    エンジンＥＣＵ（外気温検出手段、エンジン水温検出手段、判別手段）
２１    エアコンＥＣＵ（空調制御装置）
【図１】
0003880752.tif 000002
【図２】
0003880752.tif 000003
【図３】
0003880752.tif 000004
【図４】
0003880752.tif 000005
【図５】
0003880752.tif 000006
【図６】
0003880752.tif 000007
【図７】
0003880752.tif 000008
【図８】
0003880752.tif 000009
【図９】
0003880752.tif 000010
【図１０】
0003880752.tif 000011
【図１１】
0003880752.tif 000012
【図１２】
0003880752.tif 000013
【図１３】
0003880752.tif 000014
【図１４】
0003880752.tif 000015
【図１５】
0003880752.tif 000016
【図１６】
0003880752.tif 000017
【図１７】
0003880752.tif 000018
【図１８】
0003880752.tif 000019