(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にあり、アイドル停止が禁止される状態にある場合には処理はステップＳＢ３６へ進み、停車時のアイドル停止を禁止するフラグＦ＿ＩＤＬＲＥＳＴの値を「１」に設定する処理が行われ、ステップＳＢ３８，ＳＢ４０を介してステップＳＢ４２へ進み、フラグＦ＿ＦＣＭＧの値を０に設定する処理が行われ、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。
【０１１１】
一方、ステップＳＢ５８の判断結果が「ＮＯ」である場合には、ステップＳＢ６０へ進み、アクセルペダルの状態を格納するフラグＦ＿ＴＨＩＤＬＭＧの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
ステップＳＢ６０の判断結果が「ＮＯ」である場合には、ステップＳＢ５２へ進み、変数ＭＰＧＡの値が変数＃ＭＰＦＣＭＧの値以上であるか否かが判断される。ここで、変数ＭＰＧＡは倍力装置のマスターパワーの負圧を示す値を格納する変数であり、変数＃ＭＰＦＣＭＧはマスターパワーの負圧が低下したときにエンジン再始動を開始する値を格納する変数である。つまり、ステップＳＢ５２の処理はマスターパワーの負圧がなくなるとブレーキペダルの反力が強くなりブレーキがききづらいと感じるため早めにエンジンを再始動して負圧を確保するために行われる処理である。ステップＳＢ５２の判断結果が「ＮＯ」の場合には、ステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
【０１１２】
ステップＳＢ５２の判断結果が「ＮＯ」である場合には、ステップＳＢ５４へ進み、変数Ｆ＿ＰＢＲＫの値が「１」であるか否かが判断される。ここで、変数Ｆ＿ＰＢＲＫはブレーキペダルのオンオフ回数が所定の回数以上である場合にその値が「１」となるフラグであり、いわゆるポンピングブレーキが行われたか否かを示すフラグである。ステップＳＢ５４の処理は、運転者がポンピングブレーキを多用するとブレーキ負圧が低下してしまうため、ブレーキ負圧低下防止のために行われる処理である。この判断結果が「ＹＥＳ」の場合にはステップＳＢ５８の判断結果が「ＹＥＳ」の時に行われる処理と同様の処理が行われる。
一方、ステップＳＢ５４における判断結果が「ＮＯ」の場合には処理がメインルーチンに戻る。
【０１１３】
次に、再始動判定処理が開始され、ステップＳＢ１８における判断結果が「ＮＯ」の場合、つまりクラッチペダルが踏み込まれてないと判断された場合であって、ステップＳＢ４８の判断結果が「ＹＥＳ」の場合、つまりギアがニュートラル状態にあると判断された場合にはステップＳＢ５０の処理に進む。また、ステップＳＢ２８の処理における判断結果が「ＮＯ」の場合にもステップＳＢ５０へ進む。
【０１１４】
ステップＳＢ５０では現在ブレーキを踏んでいることを示すフラグＦ＿ＢＫＳＷの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ５２の処理に進み、前述した処理と同様の処理が行われる。一方、ステップＳＢ５０の判断結果が「ＮＯ」の場合、つまりブレーキペダルが踏み込まれていないと判断した場合にはステップＳＢ５６へ進む。ステップＳＢ５６では、車両が停止したか否かを示すフラグＦ＿ＶＳＴＰが「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、処理がメインルーチンに戻り、「ＮＯ」の場合にはステップＳＢ４０へ進み、ステップＳＢ４０を介してステップＳＢ４２においてフラグＦ＿ＦＣＭＧの値が「０」に設定され、ステップＳＢ４４，ＳＢ４６を介してメインルーチンに戻り、エンジン１０の再始動制御が行われる。
【０１１５】
ステップＳＢ５６において判断結果が「ＮＯ」になるときの運転者の操作状態はクラッチペダルを踏み込んでおらず、ギアがニュートラルであって、ブレーキペダルも踏んでおらず、車両の停止履歴がないという状態であり、この状態は運転者が真に惰行を行う意志がある場合であると考えられる。運転者が車両を惰行させている場合には、運転者の車両停止の意志が不明（停止の意志が無い場合がある）であるため、次の動作（例えば加速動作）に備えてエンジンを再始動する制御を行うため、処理をステップＳＢ４０へ進めている。
【０１１６】
また、再始動判定処理が開始され、ステップＳＢ１８における判断結果が「ＮＯ」の場合、つまりクラッチペダルが踏み込まれてない場合には、ステップＳＢ４８へ進む。ステップＳＢ４８ではギアがニュートラル状態にあるか否かを示すフラグＦ＿ＮＳＷの値が「１」であるか否かが判断される。この判断結果が「ＮＯ」であり、ギアの状態がインギアであると判断された場合にはステップＳＢ６２へ進む。ステップＳＢ６２では、前回の処理におけるギアがニュートラル状態にあるか否かを示すフラグＦ＿ＮＳＷの値が「１」であるか否かが判断される。この判断結果が「ＹＥＳ」の場合には、ステップＳＢ６４において、ギアがニュートラルにある状態からクラッチがつながった状態でインギア操作を行ったか否かを示すフラグＦ＿ＩＮＧＭＧの値を「１」に設定する処理が行われ、ステップＳＢ６６の処理に進む。一方、ステップＳＢ６２の判断結果が「ＮＯ」の場合にはステップＳＢ６４の処理は行われず、ステップＳＢ６６の処理に進む。
【０１１７】
ステップＳＢ６６では、車速を示す変数ＶＰが所定の車速を示す値が格納された変数＃ＶＩＤＬＳＴの値（例えば３ｋｍ／ｈ）以上であるか否かが判断される。この判断結果が「ＮＯ」である場合には、処理はメインルーチンに戻る。これは、車両が変数＃ＶＩＤＬＳＴで示される所定の速度に達していないため、エンジンの再始動を行わないよう制御するためである。一方、ステップＳＢ６６の判断結果が「ＹＥＳ」の場合にはステップＳＢ６８へ進みエンジン回転数を示す変数ＮＥが変数＃ＮＥＩＤＬＳＴの値（例えば２５０ｒｐｍ）以上であるか否かが判断される。この判断結果が「ＮＯ」の場合にはメインルーチンに戻る。
【０１１８】
一方、ステップＳＢ６８の判断結果が「ＹＥＳ」の場合には、処理が、ステップＳＢ４０へ進み、減速Ｆ／Ｃ継続中にブレーキがＯＦＦされたことを示すフラグＦ＿ＦＣＢＲＫの値が「１」に設定する処理が行われ、ステップＳＢ４２において、エンジンを再始動するフラグＦ＿ＦＣＭＧの値が「０」に設定され、ステップＳＢ４４及びステップＳＢ４６を介してメインルーチンに戻り、エンジン再始動制御が行われる。
【０１１９】
ステップＳＢ６８における判断が「ＹＥＳ」となる状態は、クラッチペダルが踏み込まれておらず、ギアがインギアであり、車速が高く、且つエンジン回転も高いという状態である。この状態においても減速Ｆ／Ｃ継続が行われているがこのままであると、押しがけ状態になる場合が考えられる。例えばギアが二速で惰行を行っている状態でアイドル停止を実施した場合であって、無理にクラッチをつないだときが考えられる。このような押しがけ状態を防止するために、エンジンの再始動を行っている。
【０１２０】
以上、本発明の一実施形態について説明したが、本発明は上記実施形態に制限されず、本発明の範囲内で自由に変更が可能である。例えば、上記実施形態では、ハイブリッド車両を例に挙げて説明したが、当然ながらエンジン動作をアシストするモータを備えない通常の車両にも本発明を適用することができる。また、図９に示した処理では、所定時間走行した後、エンジン吸気温から外気温を推定するようにしていたが、外気温を測定する温度センサを設けた場合にはこの処理が省略されることになる。
【０１２１】
【発明の効果】
本発明によれば、エンジンが自動停止状態にある場合に運転者がクラッチペダルを踏み込んでおりエンジン自動停止中の停車履歴が無い場合、つまり運転者が車両を惰行させている場合にアクセルペダルの踏み込みが運転者によってなされた場合にエンジンの自動停止状態が解除されてエンジンが再始動される。よって、運転者がクラッチペダルから足を離した場合にエンジンからの駆動力が得られるため運転性が向上する。
また、エンジンの自動停止状態の検出が車両減速時の燃料供給停止によって行われているので、エンジンの自動停止時に燃料そのものを供給しないエンジンの制御を行っている車両についても上記と同様に運転性の向上を図ることができるという効果がある。
【図面の簡単な説明】
【図１】  本発明の実施形態によるエンジン自動始動停止制御装置の概略構成を示すブロック図である。
【図２】  本発明の一実施形態によるエンジン自動始動停止制御装置の構成を示すブロック図である。
【図３】  本実施形態のアイドル停止条件及び再始動条件を要約した図であり（ａ）がアイドル停止条件を、（ｂ）が再始動条件をそれぞれ示す。
【図４】  バッテリの残容量に応じた制御領域を説明するための図であって、（ａ）は通常走行時においてアイドル停止を行うか否かを判定する図であり、（ｂ）はアイドル停止を行っている場合にエンジンの再始動を行うか否かを判定する図である。
【図５】  条件ＣＡ４と条件ＣＡ５との関係を説明するための図であり、（ａ）はエアコンが運転者の操作によって停止状態にある場合にアイドル停止を実施するか否かの条件を示しており、（ｂ）はエアコンが運転状態にある場合にアイドル停止を行うか否かの条件を示している。
【図６】  本実施形態の燃料供給停止制御条件及び復帰条件を要約した図であり（ａ）が燃料供給停止制御条件を、（ｂ）が復帰条件をそれぞれ示す。
【図７】  本発明の一実施形態においてアイドル停止を実施するか否かを判定する処理を示すフローチャートである。
【図８】  本発明の一実施形態においてアイドル停止を実施するか否かを判定する処理をステップＳＢ４０へを示すフローチャートである。
【図９】  推定処理によって得られた外気温が、アイドル停止を行っても良い温度であるか否かを判断する処理を示すフローチャートである。
【図１０】  エンジン水温がアイドル停止を行っても良い水温であるか否かを判断する処理を示すフローチャートである。
【図１１】  アイドル停止を行うか否かを定めるエンジン水温と外気温との関係を示すテーブルの例を示す図である。
【図１２】  本発明の一実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。
【図１３】  本発明の一実施形態によるエンジン１０の再始動を行うか否かの判定処理を示すフローチャートである。
【符号の説明】
１０    エンジン
１８    エンジンＥＣＵ（自動停止検出手段、停車履歴検出手段、自動始動手段）
【図１】
0003836275.tif 000002
【図２】
0003836275.tif 000003
【図３】
0003836275.tif 000004
【図４】
0003836275.tif 000005
【図５】
0003836275.tif 000006
【図６】
0003836275.tif 000007
【図７】
0003836275.tif 000008
【図８】
0003836275.tif 000009
【図９】
0003836275.tif 000010
【図１０】
0003836275.tif 000011
【図１１】
0003836275.tif 000012
【図１２】
0003836275.tif 000013
【図１３】
0003836275.tif 000014