(57)【特許請求の範囲】
【請求項１】
エンジン始動後一度も車輌走行状態を検出しないときにはエンジン暖機を促進しエンジン冷却水温度の上昇に伴い順次値が減少する放置暖機用目標回転数により目標回転数を設定し、車輌走行状態を検出したときには、以後、上記放置暖機用目標回転数よりも暖機途上の値が低い走行暖機用目標回転数により目標回転数を設定し、アイドル時に、上記目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定しアイドル回転数を制御するエンジンのアイドル回転数制御装置において、
エンジン冷却水温度に基づいて上記放置暖機用目標回転数を設定する放置暖機用目標回転数設定手段と、
エンジン冷却水温度に基づいて上記走行暖機用目標回転数を設定する走行暖機用目標回転数設定手段と、
エンジン始動後のエンジン冷却水温度の最大値を検出する冷却水温最大値検出手段と、
上記冷却水温最大値と現在のエンジン冷却水温度により冷却水温低下量を算出し、該冷却水温低下量が所定量以上のとき、冷却水温低下と判定する水温低下判定手段と、
冷却水温低下判定時には、上記放置暖機用目標回転数により目標回転数を設定し、一方、冷却水温低下と判定されていないときには、エンジン始動後一度も車輌走行状態を検出しない場合は上記放置暖機用目標回転数により目標回転数を設定し、車輌走行状態を検出した場合は、以後、上記走行暖機用目標回転数により目標回転数を設定する目標回転数設定手段と、
アイドル時、上記目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定する制御量設定手段とを備えたことを特徴とするエンジンのアイドル回転数制御装置。
【請求項２】
上記冷却水温最大値検出手段は、エンジン始動後所定時間を経過するまでは、上記冷却水温最大値を実際には有り得ない予め設定された低水温値に固定することを特徴とする請求項１記載のエンジンのアイドル回転数制御装置。
【請求項３】
上記冷却水温最大値検出手段は、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上のとき、該暖機完了水温により上記冷却水温最大値を設定することを特徴とする請求項１記載のエンジンのアイドル回転数制御装置。
【請求項４】
上記水温低下判定手段は、上記冷却水温低下量が所定量以上、且つ、このときのエンジン冷却水温度が設定値以上のとき、冷却水温低下と判定することを特徴とする請求項１記載のエンジンのアイドル回転数制御装置。
【請求項５】
上記水温低下判定手段は、冷却水温低下と判定した後、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上となったとき、冷却水温の低下判定を解除することを特徴とする請求項１或いは請求項４記載のエンジンのアイドル回転数制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、エンジン暖機性能を確保するエンジンのアイドル回転数制御装置に関する。
【０００２】
【従来の技術】
従来から、スロットル弁をバイパスするバイパス通路にアイドル回転数制御弁（ＩＳＣ弁）を設け、電子制御装置によりエンジン冷却水温度に応じた目標回転数を設定し、アイドル時のエンジン回転数を目標回転数に収束するようＩＳＣ弁の弁開度を制御するアイドル回転数制御装置が採用されている。
【０００３】
そして、特開平５−１７１９７５号公報等に開示されているように、低水温域では冷却水温度の上昇を早めエンジンの暖機を促進すべく比較的高い値の目標回転数を設定すると共に、エンジン暖機完了の常温域ではエンジン騒音の低減による静粛性、及び燃費の向上を図るため比較的低い値の目標回転数を設定し、また、低水温域から常温域に至るまでのエンジン暖機途上においては、エンジン冷却水温度の上昇に応じて目標回転数の値を順次減少するようにしている。
【０００４】
また、このエンジンのアイドル回転数制御においては、目標回転数をエンジン暖機促進を向上するための放置暖機用目標回転数と静粛性を重視した走行暖機用目標回転数との２種類に分けて設定し、放置暖機用目標回転数に対し走行暖機用目標回転数は、暖機途上の値が低く設定されている。
【０００５】
そして、エンジン始動後一度も車輌走行状態を検出していない場合は、放置暖機と判定し、上記放置暖機用目標回転数により高い目標回転数を設定し、走行状態を検出した場合には、走行暖機と判定し、以後、上記走行暖機用目標回転数によって低い目標回転数を設定し、アイドル時のエンジン回転数（アイドル回転数）を、この目標回転数に収束するようＩＳＣ弁に対する制御量を設定してＩＳＣ弁の弁開度を制御し、エンジン暖機特性と静粛性とを両立するようにしている。
【０００６】
ここで、放置暖機と走行暖機の判定は、車速、スロットル開度、ニュートラル状態等を検出し、走行と判定できる状態になったことが有るか否かにより行っており、一旦、走行暖機となると放置暖機に戻らず、走行暖機用目標回転数によりアイドル回転数制御が行われ、低い回転数のままとなる。
【０００７】
【発明が解決しようとする課題】
しかし、上記先行例では、車輌走行状態の検出後は、走行暖機用目標回転数によりアイドル回転数が低いままとなり、寒冷地使用等、外気温度が低い場合には、走行暖機用目標回転数による静粛性を重視した低いアイドル回転数のままでは暖機能力が不足し、エンジン暖機どころか逆に冷却水温が低下しエンジン温度が低下してしまう虞がある。
【０００８】
また、自動車等の車輌においては、エンジン冷却水を車輌室内の暖房にも使用しており、冷却水温度の低下により暖房効果も悪化してしまう。
【０００９】
特に、エンジンを車輌後方に配置し、ラジエータが車輌前方にあるようなレイアウトの車輌では、エンジンとラジエータ間の冷却水送出のためのラジエータホースが長くなり、冷却水が冷え易く上記不都合が顕著となる。
【００１０】
これに対処するに、寒冷地使用を考慮して走行暖機用目標回転数を高くすると、静粛性が悪化し、放置暖機用目標回転数と走行暖機用目標回転数とを分けるメリットが無くなり、エンジン暖機特性と静粛性、燃費とを両立させることができない。
【００１１】
本発明は、上記事情に鑑み、エンジン冷却水温の低下によるエンジン暖機性能の不足を解消し、しかもエンジン暖機特性と静粛性、燃費とを両立させることが可能なエンジンのアイドル回転数制御装置を提供することを目的とする。
【００１２】
【課題を解決するための手段】
上記目的を達成するため、請求項１記載の発明は、エンジン始動後一度も車輌走行状態を検出しないときにはエンジン暖機を促進しエンジン冷却水温度の上昇に伴い順次値が減少する放置暖機用目標回転数により目標回転数を設定し、車輌走行状態を検出したときには、以後、上記放置暖機用目標回転数よりも暖機途上の値が低い走行暖機用目標回転数により目標回転数を設定し、アイドル時に、上記目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定しアイドル回転数を制御するエンジンのアイドル回転数制御装置において、図１の基本構成図に示すように、エンジン冷却水温度に基づいて上記放置暖機用目標回転数を設定する放置暖機用目標回転数設定手段と、エンジン冷却水温度に基づいて上記走行暖機用目標回転数を設定する走行暖機用目標回転数設定手段と、エンジン始動後のエンジン冷却水温度の最大値を検出する冷却水温最大値検出手段と、上記冷却水温最大値と現在のエンジン冷却水温度により冷却水温低下量を算出し、該冷却水温低下量が所定量以上のとき、冷却水温低下と判定する水温低下判定手段と、冷却水温低下判定時には、上記放置暖機用目標回転数により目標回転数を設定し、一方、冷却水温低下と判定されていないときには、エンジン始動後一度も車輌走行状態を検出しない場合は上記放置暖機用目標回転数により目標回転数を設定し、車輌走行状態を検出した場合は、以後、上記走行暖機用目標回転数により目標回転数を設定する目標回転数設定手段と、アイドル時、上記目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定する制御量設定手段とを備えたことを特徴とする。
【００１３】
請求項２記載の発明は、請求項１記載の発明において、上記冷却水温最大値検出手段は、エンジン始動後所定時間を経過するまでは、上記冷却水温最大値を実際には有り得ない予め設定された低水温値に固定することを特徴とする。
【００１４】
請求項３記載の発明は、請求項１記載の発明において、上記冷却水温最大値検出手段は、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上のとき、該暖機完了水温により上記冷却水温最大値を設定することを特徴とする。
【００１５】
請求項４記載の発明は、請求項１記載の発明において、上記水温低下判定手段は、上記冷却水温低下量が所定量以上、且つ、このときのエンジン冷却水温度が設定値以上のとき、冷却水温低下と判定することを特徴とする。
【００１６】
請求項５記載の発明は、請求項１或いは請求項４記載の発明において、上記水温低下判定手段は、冷却水温低下と判定した後、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上となったとき、冷却水温の低下判定を解除することを特徴とする。
【００１７】
すなわち、請求項１記載の発明では、エンジン暖機促進を目的とした暖機途上の値が高い放置暖機用目標回転数と、静粛性、燃費を重視した暖機途上の値が低い走行暖機用目標回転数とをそれぞれエンジン冷却水温度に基づいて設定すると共に、エンジン始動後のエンジン冷却水温度の最大値を検出し、この冷却水温最大値と現在のエンジン冷却水温度により冷却水温低下量を算出して、該冷却水温低下量が所定量以上のとき、冷却水温低下と判定する。そして、冷却水温低下判定時には、暖機途上の値が高い上記放置暖機用目標回転数により目標回転数を設定し、アイドル時、この目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定し、車輌走行後のアイドル時において走行暖機用目標回転数により低いアイドル回転数に制御している状況下であっても冷却水温低下によるエンジン暖機性能の不足時は、放置暖機用目標回転数による目標回転数の設定に移行してアイドル回転数を高くし、エンジンの暖機促進を向上する。また、冷却水温低下と判定されていないときには、エンジン始動後一度も車輌走行状態を検出しない場合は暖機途上の値が高い上記放置暖機用目標回転数により目標回転数を設定し、この目標回転数とアイドル時のエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定して、エンジン暖機途上のアイドル回転数を高く制御してエンジンの暖機を促進し、車輌走行状態を検出した場合は、以後、静粛性、燃費を重視した暖機途上の値が低い走行暖機用目標回転数により目標回転数を設定し、この目標回転数に応じてアイドル回転数を低く制御して、静粛性及び燃費を向上する。
【００１８】
また、上記冷却水温最大値の検出に際し、請求項２記載の発明では、エンジン始動後所定時間を経過するまでの間、上記冷却水温最大値を実際には有り得ない予め設定された低水温値に固定し、また、請求項３記載の発明では、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上のとき、上記冷却水温最大値を暖機完了水温により設定する。
【００１９】
さらに、水温低下判定に際し、請求項４記載の発明では、上記冷却水温低下量が所定量以上、且つ、このときのエンジン冷却水温度が設定値以上のとき、冷却水温低下と判定する。また、請求項５記載の発明では、冷却水温低下と判定した後、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上となったとき、冷却水温の低下判定を解除する。
【００２０】
【発明の実施の形態】
以下、図２〜図１４に基づいて本発明の実施の一形態を説明する。
【００２１】
先ず、図１２に基づきエンジンの概略構成について説明する。同図において、符号１は自動車等の車輌用のエンジン（図においては、直列多気筒エンジン）であり、シリンダヘッド２に各気筒に対応してそれぞれ吸気ポート２ａと排気ポート２ｂが形成されている。
【００２２】
このエンジン１の吸気系は、各吸気ポート２ａにインテークマニホルド３が連通され、このインテークマニホルド３に各気筒の吸気通路が集合するエアチャンバ４を介してスロットルチャンバ５が連通され、更に、このスロットルチャンバ５の上流側に吸気管６を介してエアクリーナ７が取り付けられ、このエアクリーナ７がエアインテークチャンバ８に連通されている。
【００２３】
また、上記スロットルチャンバ５には、アクセルペダルに連動するスロットル弁５ａが設けられている。上記吸気管６には、スロットル弁５ａをバイパスするバイパス通路９が接続され、このバイパス通路９に、その弁開度により該バイパス通路９を流れるバイパス空気量を調整することでアイドル回転数を制御するアイドル回転数制御弁（ＩＳＣ弁）１０と、エアコンの作動時に開弁することによってバイパス空気量を増加しアイドル回転数をアップするためのＦＩＣＤバルブ１１とが並列に介装されている。
【００２４】
上記ＩＳＣ弁１０及びＦＩＣＤバルブ１１は電子制御装置（ＥＣＵ）４０により制御され、本形態においては、ＩＳＣ弁１０は、ＥＣＵ４０から出力される駆動信号のデューティ比が大きいほど弁開度が増加して、バイパス空気量を増し、アイドル回転数を上昇させ、デューティ比が小さいほど弁開度が減少してバイパス空気量の減少によりアイドル回転数を低下する。
【００２５】
また、このエンジン１の排気系としては、上記シリンダヘッド２の各排気ポート２ｂに連通するエキゾーストマニホルド１２の集合部に排気管１３が連通され、この排気管１３に触媒コンバータ１４が介装されてマフラ１５に連通されている。
【００２６】
一方、上記インテークマニホールド３の各吸気ポート２ａの直上流にはインジェクタ１６が臨まされている。さらに、上記シリンダヘッド２の各気筒毎に、先端の放電電極を燃焼室に露呈する点火プラグ１７が取り付けられており、この点火プラグ１７がエンジン１のカムシャフトに連設するディストリビュータ１８を介して点火コイル１９の二次側に接続され、この点火コイル１９の一次側がイグナイタ２０に接続されている。そして、イグニッションスイッチ（図１２においてはＩＧで示す）のＯＮによって電源リレー２１がＯＮすることによりＥＣＵ４０が起動し、このＥＣＵ４０によりエンジン運転状態に応じて点火時期が演算され、この点火時期に対応する点火信号が上記電子制御装置４０からイグナイタ２０に出力されると、イグナイタ２０によって点火コイル１９の一次側がＯＮ，ＯＦＦされ、点火コイル１９の二次側に誘起された高電圧がディストリビュータ１８を介し点火対象気筒の点火プラグ１７に配電され、該当気筒の点火プラグ１７が点火される。
【００２７】
さらに、エンジン運転状態を検出するための各種センサ類が配設されており、これらセンサ類について説明すると、上記スロットル弁５ａにスロットル開度センサ２２ａとスロットル弁５ａの全閉でＯＮするアイドルスイッチ２２ｂとを内蔵したスロットルセンサ２２が連設されている。また、上記エアチャンバ４に吸気温センサ２３が臨まされると共に、スロットル弁５ａ下流の吸気管圧力を絶対圧で検出する吸気管圧力センサ２４が取付けられている。
【００２８】
また、エンジン１のシリンダブロック１ａにノックセンサ２５が取付けられ、上記シリンダヘッド２に形成された冷却水通路２ｃに冷却水温センサ２６が臨まされ、更に、上記触媒コンバータ１４の上流にＯ2センサ２７が配設されている。
【００２９】
また、上記ディストリビュータ１８内に、カムシャフトに連設するシグナルロータ２８と、このシグナルロータ２８に対設するクランク角検出及び気筒判別用のクランク角センサ２９とが内蔵されている。
【００３０】
上記シグナルロータ２８は、図１３に示すように、その外周にクランク角度を判別するための角度判別用突起２８ａが、＃１，＃３，＃４，＃２気筒の圧縮上死点前（ＢＴＤＣ）θ１の位置に９０度間隔で形成されており、さらに、気筒判別用突起２８ｂが、＃１気筒の圧縮上死点後（ＡＴＤＣ）θ２の位置に形成されている。本形態では、θ１＝ＢＴＤＣ１０°ＣＡであり、θ２＝ＡＴＤＣ２０°ＣＡである。
【００３１】
そして、エンジン１の運転に伴いカムシャフトが回転し、これに伴い上記シグナルロータ２８が回転して、このシグナルロータ２８の各突起が磁気センサ（電磁ピックアップ等）からなる上記クランク角センサ２９によって検出されると、クランク角センサ２９からＥＣＵ４０に、図１１のタイムチャートに示すように、角度判別用突起２８ａによるθ１パルスがエンジン１／２回転毎（１８０°ＣＡ毎）に出力され、＃１気筒のθ１パルスと＃３気筒のθ１パルスとの間で気筒判別用突起２８ｂによるθ２パルスが出力される。
【００３２】
後述するように、ＥＣＵ４０では、上記クランク角センサ２９から出力されるθ１パルスの入力間隔時間Ｔθに基づいてエンジン回転数ＮEを算出し、また、θ２パルスの入力によって次に圧縮上死点を迎える＃３気筒を判別し、各気筒の燃焼行程順（＃１気筒→＃３気筒→＃４気筒→＃２気筒）に基づいて燃料噴射対象気筒等の気筒判別を行う。
【００３３】
上記ＩＳＣ弁１０、ＦＩＣＤバルブ１１、インジェクタ１６、イグナイタ２０等のアクチュエータ類に対する制御量の演算、この制御量に対応する駆動信号の出力、すなわち、アイドル回転数制御、燃料噴射制御、点火時期制御等のエンジン制御は、ＥＣＵ４０によって行われる。
【００３４】
上記ＥＣＵ４０は、図１４に示すように、ＣＰＵ４１、ＲＯＭ４２、ＲＡＭ４３、バックアップＲＡＭ４４、カウンタ・タイマ群４５、及びＩ／Ｏインターフェイス４６がバスラインを介して互いに接続されたマイクロコンピュータを中心として構成され、その他、各部に安定化電源を供給する定電圧回路４７、上記Ｉ／Ｏインターフェイス４６に接続される駆動回路４８、及びＡ／Ｄ変換器４９等の周辺回路が内蔵されている。
【００３５】
なお、上記カウンタ・タイマ群４５は、フリーランカウンタ等の各種カウンタ、燃料噴射用タイマ、点火用タイマ、定期割込みを発生させるための定期割込み用タイマ、クランク角センサ２９から入力されるパルス信号の入力間隔時間計時用タイマ、及びシステム異常監視用のウオッチドッグタイマ等の各種タイマを便宜上総称するものであり、その他、各種のソフトウエアカウンタ・タイマが用いられる。
【００３６】
上記定電圧回路４７は、２回路のリレー接点を有する上記電源リレー２１の第１のリレー接点を介してバッテリ５０に接続され、このバッテリ５０に、イグニッションスイッチ５１を介して上記電源リレー２１のリレーコイルの一端が接続され、このリレーコイルの他端が上記Ｉ／Ｏインターフェイス４６の入力ポートに接続されている。
【００３７】
また、上記定電圧回路４７は、上記電源リレー２１の第１のリレー接点を介して上記バッテリ５０に接続されているのみならず、直接、上記バッテリ５０に接続されており、上記イグニッションスイッチ５１がＯＮされて上記電源リレー２１のリレー接点が閉となるとＥＣＵ４０内の各部に電源を供給する一方、上記イグニッションスイッチ５１のＯＮ，ＯＦＦに拘らず、常時、上記バックアップＲＡＭ４４にバックアップ用の電源を供給する。なお、上記電源リレー２１の第２のリレー接点からは、各アクチュエータへの電源線が延出されている。
【００３８】
上記Ｉ／Ｏインターフェイスの入力ポートには、上記アイドルスイッチ２２ｂ、ノックセンサ２５、クランク角センサ２９、車速センサ３０、及び、エンジン始動状態、エアコン作動状態を検出するためにスタータスイッチ３１、エアコンスイッチ３２が接続されており、更に、上記Ａ／Ｄ変換器４９を介して、スロットル開度センサ２２ａ、吸気温センサ２３、吸気管圧力センサ２４、冷却水温センサ２６、及びＯ2センサ２７が接続されると共に、上記イグニッションスイッチ５１、電源リレー２１を介してのバッテリ電圧ＶBが入力されてモニタされる。
【００３９】
一方、上記Ｉ／Ｏインターフェイス４６の出力ポートには、ＩＳＣ弁１０、ＦＩＣＤバルブ１１、インジェクタ１６が上記駆動回路４８を介して接続されると共に、イグナイタ２０が接続されている。
【００４０】
上記ＣＰＵ４１では、ＲＯＭ４２に記憶されている制御プログラムに従って、Ｉ／Ｏインターフェイス４６を介して入力されるセンサ・スイッチ類からの検出信号、及びバッテリ電圧等を処理し、ＲＡＭ４３に格納される各種データ、バックアップＲＡＭ４４に格納されている各種学習値データ、及び、ＲＯＭ４２に記憶されている固定データ等に基づき、ＩＳＣ弁１０に対する駆動信号のデューティ比、燃料噴射量、点火時期等を演算し、アイドル回転数制御、燃料噴射制御、点火時期制御等のエンジン制御を行う。
【００４１】
この場合、アイドル回転数制御においては、エンジン冷却水温度の低下によるエンジン暖機性能の不足を解消し、エンジン暖機性能を確保するため、エンジン始動後のエンジン冷却水温度の最大値を検出し、この冷却水温最大値と現在のエンジン冷却水温度により冷却水温低下量を算出して、該冷却水温低下量が所定量以上のとき、冷却水温低下と判定し、そして、冷却水温低下判定時には、エンジン暖機促進を目的とした暖機途上の値が高い放置暖機用目標回転数によって目標回転数を設定し、アイドル時のエンジン回転数と、この放置暖機用目標回転数による目標回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定する。
【００４２】
これにより、車輌走行後のアイドル時において走行暖機用目標回転数により低いアイドル回転数に制御している状況下であっても、エンジン冷却水温度が低下しエンジン暖機性能が不足する場合には、暖機途上の値が高い放置暖機用目標回転数による目標回転数の設定に移行させ、直ちにアイドル回転数を上昇させて、このアイドル回転数の上昇によりエンジン暖機を促進し、エンジン暖機性能の不足を解消する。
【００４３】
また、冷却水温低下と判定されていないときには、エンジン始動後一度も車輌走行状態を検出しない場合は暖機途上の値が高い上記放置暖機用目標回転数により目標回転数を設定し、この目標回転数とアイドル時のエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定して、エンジン暖機途上のアイドル回転数を高く制御してエンジンの暖機促進を向上する。また、車輌走行状態を検出した場合は、以後、静粛性、燃費を重視した暖機途上の値が低い走行暖機用目標回転数により目標回転数を設定し、この目標回転数に応じてアイドル回転数を低く制御して、静粛性及び燃費を向上し、これにより、エンジン暖機特性と静粛性、燃費とを両立する。
【００４４】
すなわち、ＥＣＵ４０によって、本発明に係る放置暖機用目標回転数設定手段、走行暖機用目標回転数設定手段、冷却水温最大値検出手段、水温低下判定手段、目標回転数設定手段、制御量設定手段の各機能が実現される。
【００４５】
以下、上記ＥＣＵ４０によって実行される本発明に係る具体的な制御処理について、図２〜図６に示すフローチャートに従って説明する。
【００４６】
イグニッションスイッチ５１がＯＮされ、ＥＣＵ４０に電源が投入されると、システムがイニシャライズされ、バックアップＲＡＭ４４に格納されている各種学習値等のデータを除く、各フラグ、各カウンタ類が初期化される。そして、スタータスイッチ３１がＯＮされてエンジン１が起動すると、カムシャフトの回転に伴いシグナルロータ２８が回転して、このシグナルロータ２８の各突起２８ａ，２８ｂがクランク角センサ２９によって検出され、ＥＣＵ４０では、クランク角センサ２９からのクランクパルス（θ１パルス，θ２パルス）入力毎に、図２に示すエンジン回転数算出ルーチンを実行し、パルス入力間隔時間に基づきエンジン回転数ＮEを算出すると共に、気筒判別を行う。
【００４７】
このエンジン回転数算出ルーチンでは、先ず、ステップS1で、今回入力したクランクパルスがクランク角検出のためのθ１パルスか気筒判別のためのθ２パルスかを識別する。すなわち、上記気筒判別用突起２８ｂによるθ２パルス入力時には、図１１のタイムチャートに示すように、前回のクランクパルス（θ１パルス）入力からの時間、すなわちパルス入力間隔時間がθ１パルス同士の入力間隔時間よりも極端に短くなる。従って、クランクパルス入力毎に実行される本ルーチンの実行周期をタイマによって計時し、前回と今回とのルーチン実行周期を比較することで、θ１パルス入力かθ２パルス入力かを識別する。そして、θ２パルスと識別したときには、次回入力されるクランクパルスは＃３気筒のＢＴＤＣθ１パルスであり、これから圧縮上死点を迎える気筒は＃３気筒と判別することができ、燃焼行程順（本形態では、＃１気筒→＃３気筒→＃４気筒→＃２気筒）により次の気筒以降も識別することができる。なお、この気筒判別結果は、ここでは詳述しないが、燃料噴射制御等に反映される。
【００４８】
続くステップS2では、上記タイマによって計時された本ルーチンの実行周期、すなわち、前回のクランクパルス入力から今回のクランクパルス入力までの時間を読み出し、パルス入力間隔時間Ｔθを検出する。
【００４９】
次いでステップS3に進み、今回識別したクランクパルスに対応するクランクパルス間角度を読み出し、このクランクパルス間角度と上記パルス入力間隔時間Ｔθとに基づいて現在のエンジン回転数ＮEを算出しＲＡＭ４３の所定アドレスにストアして、ルーチンを抜ける。なお、上記クランクパルス間角度は既知であり、予めＲＯＭ４２に固定データとして記憶されているものであり、本形態においては、各θ１パルス間の角度は１８０°ＣＡであり、θ１パルスからθ２パルス間の角度は３０°ＣＡ、θ２パルスからθ１パルス間の角度は１５０°ＣＡである。
【００５０】
そして、エアコンの作動状態を示すエアコンスイッチ３２のＯＮにより上記ＦＩＣＤバルブ１１が開弁されてアイドルアップが行われ、エアコンスイッチ３２のＯＦＦによりＦＩＣＤバルブ１１が閉弁されると共に、上記エンジン回転数算出ルーチンによって算出されたエンジン回転数ＮEが、図３に示すアイドル回転数制御ルーチンにおいて読み出され、ＩＳＣ弁１０に対する制御量の設定、すなわちアイドル回転数制御に用いられる。
【００５１】
図３に示すアイドル回転数制御ルーチンは、システムイニシャライズ後、所定時間（例えば、１０ms）毎に実行され、先ず、ステップS11〜S12で、始動判定を行う。
【００５２】
すなわち、ステップS11でスタータスイッチ３１の作動状態を判断して、ステップS12で現在のエンジン回転数ＮEを判断し、スタータスイッチ３１がＯＮのエンジン始動時、或いはＮE＝０のエンスト時には、ステップS13へ進み、エンスト或いはエンジン始動に対応した始動時制御を行う。
【００５３】
ステップS13では、冷却水温センサ２６によるエンジン冷却水温度ＴWNに基づいて始動時特性値テーブルを参照し、エンスト或いは始動時におけるＩＳＣ弁１０に対する制御量を定める始動時特性値ＤＵＴＹSTを設定する。
【００５４】
上記始動時特性値テーブルは、エンジン運転に備えＩＳＣ弁１０の適正弁開度を得るＩＳＣ弁１０に対する駆動信号のデューティ比を冷却水温度ＴWN毎に予め実験等により求め、このデューティ比を始動時特性値ＤＵＴＹSTとして冷却水温度ＴWNをパラメータとするテーブルとして設定し、ＲＯＭ４２の一連のアドレスにメモリされているものであり、この始動時特性値テーブルの一例をステップS13中に示す。ステップS13中に示すように、冷却水温度ＴWNの低いエンジン冷態時には、ＩＳＣ弁１０の弁開度を増加し、エンジン運転に移行後、直ちにバイパス空気量を増してアイドル回転数を高め、燃焼性の悪化を防止すると共にエンジン１の暖機を促進すべく高い値の始動時特性値ＤＵＴＹSTが格納されており、冷却水温度ＴWNが上昇するに従いＩＳＣ弁１０の弁開度を減少してエンジン運転に移行後のアイドル回転数を減少し、エンジン暖機完了の常温域ではエンジン騒音の低減および燃費の向上を目的として低いアイドル回転数を得る始動時特性値ＤＵＴＹSTが格納されている。
【００５５】
そして、ステップS14で、上記始動時特性値ＤＵＴＹSTをＩＳＣ弁１０に対する制御量を定めるデューティ比ＤＵＴＹとして設定し（ＤＵＴＹ←ＤＵＴＹST）、このデューティ比ＤＵＴＹを、ステップS15でセットして、ルーチンを抜ける。
【００５６】
その結果、上記デューティ比ＤＵＴＹの駆動信号がＥＣＵ４０からＩＳＣ弁１０に出力されて、エンジン運転に備え、エンジン始動時或いはエンスト時のＩＳＣ弁１０の弁開度がエンジン冷却水温度ＴWNに応じ適正値に保持される。
【００５７】
一方、ステップS11，S12で、スタータスイッチ３１がＯＦＦ、且つＮE≠０のエンジン始動後のときには、ステップS16へ進み、図４に示す目標アイドル回転数算出サブルーチンを実行して、アイドル時のエンジン回転数（アイドル回転数）の目標値となる目標回転数ＲＰＭＳＥＴを算出する。
【００５８】
この目標アイドル回転数算出サブルーチンにおいては、ステップS21で、冷却水温センサ２６による現在のエンジン冷却水温度ＴWNを読み出し、この冷却水温度ＴWNに基づいて放置暖機用目標回転数テーブルを検索し、補間計算により放置暖機用目標回転数ＲＰＭＳＴ１を設定する。この放置暖機用目標回転数ＲＰＭＳＴ１は、エンジン１の暖機促進を目的としたものである。
【００５９】
すなわち、上記放置暖機用目標回転数テーブルは、エンジン暖機を促進するためエンジン１の暖機状態を表すエンジン冷却水温度ＴWNに対応してアイドル回転数の最適値を求め、この最適値を放置暖機用目標回転数ＲＰＭＳＴ１として、冷却水温度ＴWNをパラメータとするテーブルとして設定し、ＲＯＭ４２の一連のアドレスにメモリされているものであり、この放置暖機用目標回転数テーブルの一例、及び放置暖機用目標回転数テーブルをグラフ化した特性図をそれぞれ図７、図８に示す。同図に示すように、放置暖機用目標回転数テーブルには、エンジン冷態状態の低水温域（図においては、０°Ｃ以下）ではエンジン冷却水温度の上昇を早めエンジン１の暖機を促進すべく比較的高い値の目標回転数ＲＰＭＳＴ１が格納されており、エンジン暖機完了の常温域（図においては、８０°Ｃ以上）ではエンジン騒音の低減による静粛性、及び燃費の向上を図るため比較的低い値の目標回転数ＲＰＭＳＴ１が格納され、また、低水温域から常温域に至るまでのエンジン暖機途上においては、エンジン冷却水温度ＴWNの上昇に応じて目標回転数ＲＰＭＳＴ１の値が順次減少される。
【００６０】
続くステップS22では、現在のエンジン冷却水温度ＴWNに基づいて走行暖機用目標回転数テーブルを検索し、補間計算により走行暖機用目標回転数ＲＰＭＳＴ２を設定する。この走行暖機用目標回転数ＲＰＭＳＴ２は、上記放置暖機用目標回転数ＲＰＭＳＴ１に対し、走行後のアイドル時における静粛性、及び燃費を重視したものであり、エンジン１の暖機途上においては、上記放置暖機用目標回転数ＲＰＭＳＴ１よりも低い値に設定される。
【００６１】
すなわち、上記走行暖機用目標回転数テーブルは、走行後のアイドル時におけるエンジンの静粛性、及び燃費を重視したアイドル回転数の適正値を、エンジン１の暖機状態を表すエンジン冷却水温度ＴWNに対応して予め実験等により求め、この値を走行暖機用目標回転数ＲＰＭＳＴ２として、冷却水温度ＴWNをパラメータとするテーブルとして設定し、ＲＯＭ４２の一連のアドレスにメモリされているものであり、図７及び図８に示すように、走行暖機用目標回転数テーブルには、上記放置暖機用目標回転数テーブルに対し、暖機途上において低い目標回転数値が格納されている。
【００６２】
次いで、ステップS23へ進み、図５に示す水温低下判定ルーチンを実行して、エンジン始動後のエンジン冷却水温度ＴWNの最大値すなわち冷却水温最大値ＴWNMAXを検出すると共に、この冷却水温最大値ＴWNMAXと現在のエンジン冷却水温度ＴWNにより冷却水温低下量（ＴWNMAX−ＴWN）を算出し、エンジン始動後においてエンジン暖機完了状態と見なし得る温度までエンジン冷却水温度ＴWNが上昇したにも関わらず、外気低温の寒冷地使用等に起因して再び冷却水温度ＴWNが低下したかを判断する。
【００６３】
この水温低下判定ルーチンについて説明すると、先ずステップS31で、エンジン始動後の経過時間が所定時間ＫＴＡＦＳＴＡ（例えば、８０sec）以上経過したかを判断する。
【００６４】
そして、エンジン始動後の経過時間が所定時間ＫＴＡＦＳＴＡ未満のときには、ステップS32へ進み、エンジン始動後の冷却水温度ＴWNの最大値を表しＲＡＭ４３の所定アドレスにストアされる冷却水温最大値ＴWNMAXを、実際には有り得ない予め設定された低水温値ＴWNMAXST（例えば、−５０°Ｃ）に固定して（ＴWNMAX←ＴWNMAXST）、ステップS37へ進む。
【００６５】
ここで、車輌においてはエンジン暖機完了状態でエンジン１を停止すると、エンジン停止後、エンジン房内のエンジン冷却水温度ＴWNが低下するが、ラジエータ部分、このラジエータとエンジン１間の冷却水送出のためのラジエータホース部分は直接外気に当たるため、このラジエータ内、及びラジエータホース内の冷却水は、エンジン房内のエンジン冷却水温度ＴWNよりも水温の低下が早い。長時間エンジン停止による停車の時は、エンジン房内、ラジエータ内、及びラジエータホース内の何れの冷却水も外気温度近くまでその冷却水温度が低下するため問題ないが、エンジン房内のエンジン冷却水温度ＴWNがさほど低下していない数十分程度の停車後のエンジン再始動時には、略エンジン暖機完了状態のままにあり、図９のタイムチャートに示すように、冷却水温センサ２６によって最初にこのエンジン暖機完了状態のエンジン冷却水温度ＴWNが検出され、その後、エンジン１の稼働に伴い冷却水が循環して、ラジエータ内、ラジエータホース内の冷えた冷却水がエンジン１に流れ込み、冷却水温センサ２６によって検出されるエンジン冷却水温度ＴWNが一時的に急速に低下し、略エンジン暖機完了状態にあるにも関わらず、冷却水温低下量（ＴWNMAX−ＴWN）が後述する冷却水温低下判定のための設定値ＫDTWFB以上となって冷却水温低下すなわちエンジン暖機性の悪化と誤判定してしまう。
【００６６】
従って、エンジン始動後、上記所定時間ＫＴＡＦＳＴＡを経過するまでは、上記冷却水温最大値ＴWNMAXを、実際には有り得ない予め設定された低水温値ＴWNMAXSTに固定することで、この間は、実質的に（ＴWNMAX−ＴWN）≧ＫDTWFBの条件が成立しないようにし、誤判定を防止する。
【００６７】
一方、上記ステップS31で、エンジン始動後、所定時間ＫＴＡＦＳＴＡを経過しているときには、ステップS33へ進み、現在のエンジン冷却水温度ＴWNをＲＡＭ４３の所定アドレスにストアされている冷却水温最大値ＴWNMAXと比較し、ＴWN＜ＴWNMAXのときには、そのままステップS37へ進み、ＴWN≧ＴWNMAXのときには、ステップS34へ進む。
【００６８】
ステップS34では、現在のエンジン冷却水温度ＴWNを、エンジン１の暖機が完了したと見なし得る予め設定された暖機完了水温ＫTWMAXGD（例えば、７６°Ｃ）と比較する。そして、ＴWN＜ＫTWMAXGD、すなわち、エンジン始動後所定時間ＫＴＡＦＳＴＡを経過し、このときのエンジン冷却水温度ＴWNがＲＡＭ４３にストアされている冷却水温最大値ＴWNMAX以上で、且つ上記暖機完了水温ＫTWMAXGD以下のときは、ステップS35へ進み、現在のエンジン冷却水温度ＴWNによってＲＡＭ４３にストアされている冷却水温最大値ＴWNMAXを更新し（ＴWNMAX←ＴWN）、ステップS37へ進む。従って、このときには、エンジン冷却水温度ＴWNの上昇に応じて、順次、冷却水温最大値ＴWNMAXが更新される。また、上記ステップS34において、ＴWN≧ＫTWMAXGDでエンジン冷却水温ＴWNが上記暖機完了水温ＫTWMAXGDに達しているときには、ステップS36へ進んで、暖機完了水温ＫTWMAXGDにより冷却水温最大値ＴWNMAXを更新して（ＴWNMAX←ＫTWMAXGD）、ステップS37へ進む。
【００６９】
すなわち、エンジン冷却水温度ＴWNがエンジン１の暖機が完了したと見なし得る上記暖機完了水温ＫTWMAXGD以上の時には、車輌の停止、走行等の状況変化に応じてエンジン冷却水温度ＴWNが変化し、このときエンジン冷却水温度ＴWNにより冷却水温最大値ＴWNMAXを更新すると、エンジン暖機完了状態であるのにも関わらず、車輌の走行、停止等による水温変動が冷却水温低下量（ＴWNMAX−ＴWN）として捕らえられてしまい、後述するステップS38での冷却水温低下量と冷却水温低下判定のための設定値ＫDTWFBとの比較により、冷却水温低下すなわちエンジン暖機性の悪化と誤判定してしまう。
【００７０】
従って、ＴWN≧ＫTWMAXGDのエンジン暖機完了状態のときには、上記冷却水温最大値ＴWNMAXを暖機完了水温ＫTWMAXGDによって設定することで、エンジン暖機完了状態での車輌の走行、停止等に起因する水温変動による誤判定を防止するのである。
【００７１】
そして、ステップS37へ進むと、冷却水温低下によるエンジン暖機性能の不足をフラグセット状態で示し上記放置暖機用目標回転数ＲＰＭＳＴ１による目標回転数の設定を指示する水温低下判定フラグＦDTWFBを参照し、ＦDTWFB＝０の水温低下判定ルーチンの初回実行時、或いは前回のルーチン実行時において、冷却水温の低下と判定されていないときには、ステップS38へ進み、エンジン冷却水温度ＴWNの低下を判断する。
【００７２】
ステップS38では、上記冷却水温最大値ＴWNMAXから現在のエンジン冷却水温度ＴWNを減算して冷却水温低下量（ＴWNMAX−ＴWN）を算出し、この冷却水温低下量を、冷却水温低下判定のために予め設定された水温低下判定値ＫDTWFB（例えば、５°Ｃ）と比較し、この冷却水温低下量に基づいてエンジン暖機性能の不足を判断する。
【００７３】
すなわち、走行暖機状態であれば、車輌走行中は、エンジン回転数ＮEが上昇し、エンジン負荷も大きくなるため、エンジン１の暖機が促進されてエンジン冷却水温度ＴWNも上昇するが、その後、車輌を停車すると、上記走行暖機用目標回転数ＲＰＭＳＴ２によるアイドル回転数制御によってアイドル回転数が低く制御され、このとき外気温度が低かったり、風が吹いていたりすると、エンジン１の発熱量よりもラジエータ等による放熱量の方が増えて、エンジン冷却水温度ＴWNが低下し、エンジン暖機性能が不足することがある。従って、この発熱量と放熱量とのバランスを上記冷却水温低下量により判断するのである。
【００７４】
そして、冷却水温低下量が水温低下判定値未満（（ＴWNMAX−ＴWN）＜ＫDTWFB）で、水温低下判定値ＫDTWFBによる所定量以上のエンジン冷却水温度の低下がないときには、水温低下判定ルーチンを抜けて、前記目標アイドル回転数算出サブルーチンのステップS24へ進み、また、冷却水温低下量が水温低下判定値以上（（ＴWNMAX−ＴWN）≧ＫDTWFB）で、水温低下判定値ＫDTWFBによる所定量以上、エンジン冷却水温度が低下したときには、ステップS39へ進んで、更に、現在のエンジン冷却水温度ＴWNを設定値ＫTWLFB（例えば、６０°Ｃ）と比較する。
【００７５】
ここで、車輌走行後のアイドル時における上記走行暖機用目標回転数ＲＰＭＳＴ２によるアイドル回転数制御下にあっては、エンジン冷却水温度ＴWNがある程度に上昇するまでは、走行暖機用目標回転数ＲＰＭＳＴ２が高めに設定されており（図７、図８参照）、アイドル回転数が比較的高い値に制御されるため、エンジン冷却水温度ＴWNが上昇傾向にある。
【００７６】
また、自動車等の車輌においては、エンジン冷却水をヒータに導きヒータによって熱交換された温風をヒータブロワによって車輌室内に送風し、エンジン冷却水を車輌室内の暖房に使用しており、エンジン冷却水温度ＴWNが低下すると、暖房効果が悪化する。このため、冷却水温度低下を防止する目的の一つとして、ヒータによる車輌室内の暖房性能を確保することが揚げられる。しかしながら、冷却水の低水温時には、元々暖房能力を有しておらず、このときアイドル回転数を無闇に上げてもエンジン騒音上不利となる。
【００７７】
従って、エンジン冷却水温度ＴWNを上記設定値ＫTWLFBと比較することによって、以上の状態を判断するのである。
【００７８】
そして、ＴWN≧ＫTWLFBのとき、すなわち、上記冷却水温低下量（ＴWNMAX−ＴWN）が水温低下判定値ＫDTWFBによる所定量以上、且つ、このときのエンジン冷却水温度ＴWNが設定値ＫTWLFB以上のとき、冷却水温低下によるエンジン暖機性能の不足と判断し、ステップS40へ進み、エンジン冷却水温度ＴWNが設定値ＫWNLFB（６０°Ｃ）以上の状態をシステムイニシャライズ後一度でも検出したことを示す水温条件フラグＦTWLFBをセットし（ＦTWLFB←１）、ステップS41で、冷却水温低下によるエンジン暖機性能の不足を示しエンジン暖機途上の値が高い上記放置暖機用目標回転数ＲＰＭＳＴ１による目標回転数の設定を指示する水温低下判定フラグＦDTWFBをセットして（ＦDTWFB←１）、水温低下判定ルーチンを抜けて、前記目標アイドル回転数算出サブルーチンのステップS24へ進む。
【００７９】
また、上記ステップS39においてＴWN＜ＫTWLFBのときには、ステップS42へ進んで、水温条件フラグＦTWLFBを参照し、ＦTWLFB＝０でエンジン冷却水温度ＴWNが設定値ＫWNLFB（６０°Ｃ）以上の状態を、システムイニシャライズ後、一度も検出していないときには、そのまま水温低下判定ルーチンを抜けて、前記目標アイドル回転数算出サブルーチンのステップS24へ進み、ＦTWLFB＝１でエンジン冷却水温度ＴWNが設定値ＫWNLFB（６０°Ｃ）以上の状態を、システムイニシャライズ後一度でも検出しているときには、上記ステップS41で、冷却水温低下によるエンジン暖機性能の不足を示す水温低下判定フラグＦDTWFBをセットした後、水温低下判定ルーチンを抜けて、前記目標アイドル回転数算出サブルーチンのステップS24へ進む。
【００８０】
一方、上記ステップS37においてＦDTWFB＝１で、前回のルーチン実行時に冷却水温低下によるエンジン暖機性能の不足と判断されているときには、ステップS43へ進み、冷却水温の低下判定の解除を判断する。
【００８１】
ステップS43では、現在のエンジン冷却水温度ＴWNを上記暖機完了水温ＫTWMAXGD（例えば、７６°Ｃ）と比較する。
【００８２】
一旦、冷却水温の低下によるエンジン暖機性能の不足と判断し、暖機途上の値の高い上記放置暖機用目標回転数ＲＰＭＳＴ１によるアイドル回転数制御を行い、エンジン暖機完了前において、ある程度、エンジン冷却水温度ＴWNが上昇したからと云って冷却水温の低下判定を解除し、上記放置暖機用目標回転数ＲＰＭＳＴ１によるアイドル回転数制御から上記走行暖機用目標回転数ＲＰＭＳＴ２による低いアイドル回転数に戻すと、そのエンジン冷却水温度ＴWNを維持できず再びエンジン冷却水温度ＴWNが低下してしまい、この様な状況下では、アイドル回転数上昇→冷却水温上昇→アイドル回転数低下→冷却水温低下→アイドル回転数上昇→  …  という長い周期のハンチングを生じる虞がある。従って、冷却水温の低下判定の解除条件を、エンジン冷却水温度ＴWNが、エンジン暖機が完了したと見なし得る上記暖機完了水温ＫTWMAXGDに達したことで行い、上記ハンチングを防止する。
【００８３】
そして、ＴWN＜ＫTWMAXGDで、暖機途上の値の高い上記放置暖機用目標回転数ＲＰＭＳＴ１によるアイドル回転数制御から上記走行暖機用目標回転数ＲＰＭＳＴ２による低いアイドル回転数に戻すと、上記ハンチングが生じる虞があると判断されるときには、水温低下判定フラグＦDTWFBをセット状態（ＦDTWFB＝１）としたまま、水温低下判定ルーチンを抜けて、前記目標アイドル回転数算出サブルーチンのステップS24へ戻る。
【００８４】
また、ＴWN≧ＫTWMAXGDでエンジン暖機完了状態となり、冷却水温の低下判定の解除条件が成立したとき、ステップS44で、上記水温低下判定フラグＦDTWFBをクリア（ＦDTWFB←０）して冷却水温の低下判定を解除した後、水温低下判定ルーチンを抜けて目標アイドル回転数算出サブルーチンのステップS24へ戻る。これによって、車輌走行後のアイドル時において上記放置暖機用目標回転数ＲＰＭＳＴ１の強制選択によるアイドル回転数制御から、上記走行暖機用目標回転数ＲＰＭＳＴ２による通常のアイドル回転数制御に戻る。
【００８５】
水温低下判定ルーチンの終了により目標アイドル回転数算出サブルーチン（図４参照）に戻ると、ステップS24で、上記水温低下判定フラグＦDTWFBを参照し、ＦDTWFB＝１で冷却水温低下によるエンジン暖機性能の不足と判断されているときには、ステップS29へジャンプし、上記ステップS21において設定した暖機途上の値が高い上記放置暖機用目標回転数ＲＰＭＳＴ１によって目標回転数ＲＰＭＳＥＴを設定し（ＲＰＭＳＥＴ←ＲＰＭＳＴ１）、目標アイドル回転数算出サブルーチンを終了して、アイドル回転数制御ルーチンのステップS17へ進む。
【００８６】
従って、ＦDTWFB＝１で冷却水温低下によるエンジン暖機性能の不足と判断されているときには、エンジン始動後一度も車輌走行状態を検出していない場合のみならず、車輌走行後のアイドル時においても、上記放置暖機用目標回転数ＲＰＭＳＴ１により高い目標回転数ＲＰＭＳＥＴが設定され、後述するアイドル回転数制御フィードバック補正サブルーチンによってアイドル時のエンジン回転数（アイドル回転数）がこの目標回転数ＲＰＭＳＥＴに収束するようＩＳＣ弁１０に対する駆動信号のデューティ比ＤＵＴＹが設定されてＩＳＣ弁１０の弁開度が制御され、アイドル回転数の上昇によりエンジン暖機が促進される。
【００８７】
一方、上記ステップS24において、ＦDTWFB＝０のときには、ステップS25へ進み、ステップS25以降の処理により、エンジン始動後一度も車輌走行状態を検出していない場合は、暖機途上の値が高い上記放置暖機用目標回転数ＲＰＭＳＴ１によって目標回転数ＲＰＭＳＥＴを設定することで、エンジン暖機途上のアイドル回転数を高く制御してエンジン暖機促進を向上し、また、走行状態を検出した場合には、以後、暖機途上の値が低い上記走行暖機用目標回転数ＲＰＭＳＴ２によって目標回転数ＲＰＭＳＥＴを設定することで、アイドル回転数を低く制御して静粛性を向上し、エンジン暖機特性と静粛性とを両立する。
【００８８】
すなわち、ステップS25で、車速センサ３０による現在の車速ＶＳＰＭを読み込み、この車速ＶＳＰＭを車輌走行状態を判断するために予め設定された走行判定車速ＫSPDFB（例えば、１０km/h）と比較し、ＶＳＰＭ≧ＫSPDFBで車輌走行状態と判断されるときには、ステップS26へ進み、車輌走行状態をシステムイニシャライズ後一度でも検出したことを示す車速条件フラグＦSPDFBをセットし（ＦSPDFB←１）、ステップS27で、上記ステップS22において設定した暖機途上の値が低い上記走行暖機用目標回転数ＲＰＭＳＴ２によって目標回転数ＲＰＭＳＥＴを設定し（ＲＰＭＳＥＴ←ＲＰＭＳＴ２）、また、上記ステップS25でＶＳＰＭ＜ＫSPDFBのときには、ステップS28へ進んで、車速条件フラグＦSPDFBを参照し、ＦSPDFB＝１で車輌走行状態をシステムイニシャライズ後一度でも検出しているときには、同様にステップS27で走行暖機用目標回転数ＲＰＭＳＴ２によって目標回転数ＲＰＭＳＥＴを設定する。
【００８９】
また、上記ステップS28でＦSPDFB＝０で、車輌走行状態をシステムイニシャライズ後一度も検出していないときには、ステップS29へ進み、上記放置暖機用目標回転数ＲＰＭＳＴ１によって目標回転数ＲＰＭＳＥＴを設定し、目標アイドル回転数算出サブルーチンを終了する。
【００９０】
以上の目標回転数ＲＰＭＳＥＴの設定により目標アイドル回転数算出サブルーチンを終了すると、アイドル回転数制御ルーチンのステップS17へ進む（図３参照）。
【００９１】
ステップS17では、図６に示すアイドル回転数制御フィードバック補正サブルーチンを実行し、アイドル時、上記目標回転数ＲＰＭＳＥＴとエンジン回転数ＮEとの比較結果に応じてＩＳＣ弁１０に対する制御量としての駆動信号のデューティ比ＤＵＴＹを設定する。
【００９２】
次に、このアイドル回転数制御フィードバック補正サブルーチンについて説明すると、先ず、ステップS51でアイドル判定を行う。
【００９３】
すなわち、ステップS51ではアイドルスイッチ２２ｂの作動状態を判断し、アイドルスイッチ２２ｂがＯＦＦ（スロットル弁５ａが開弁状態）の非アイドル時には、そのままアイドル回転数制御ルーチンに戻り、ルーチンを抜ける。従って、非アイドル時には、ＩＳＣ弁１０の弁開度がそのまま保持される。
【００９４】
一方、アイドルスイッチ２２ｂがＯＮ（スロットル弁全閉）のアイドル時には、ステップS52へ進み、ステップS52以降の処理により、現在のエンジン回転数ＮEから上記目標回転数ＲＰＭＳＥＴを減算して算出した差回転ＤＥＬＴＡＮに基づいてフィードバック補正量ＤFBを設定し、このフィードバック補正量ＤFBにより前回設定したデューティ比ＤＵＴＹを補正してＩＳＣ弁１０に対する駆動信号のデューティ比ＤＵＴＹを設定し、アイドル時のエンジン回転数ＮEすなわちアイドル回転数が目標回転数ＲＰＭＳＥＴに収束するようフィードバック制御する。
【００９５】
ステップS52では、現在のエンジン回転数ＮEを読み出して、この現在のエンジン回転数ＮEから上記目標アイドル回転数算出サブルーチンにおいて設定された目標回転数ＲＰＭＳＥＴを減算して差回転ＤＥＬＴＡＮを算出し（ＤＥＬＴＡＮ←ＮE−ＲＰＭＳＥＴ）、ステップS53で、この差回転ＤＥＬＴＡＮと現在のエンジン回転数ＮEとに基づいてテーブル参照によりフィードバック補正量ＤFBを設定する。
【００９６】
このフィードバック補正量ＤFBは、アイドル時のエンジン回転数ＮEを目標回転数ＲＰＭＳＥＴへフィードバック制御する際のデューティ比ＤＵＴＹの補正値［％］であり、予め実験等によってアイドル時のエンジン回転数ＮE及び上記差回転ＤＥＬＴＡＮによる領域毎にフィードバック補正量ＤFBの最適値を求め、このフィードバック補正量ＤFBを、エンジン回転数ＮE及び差回転ＤＥＬＴＡＮをパラメータとするテーブルとして設定し、ＲＯＭ４２の一連のアドレスにメモリされているものである。このテーブルの一例をステップS53中に示す。
【００９７】
ステップS53中に示すように、上記テーブルには、差回転ＤＥＬＴＡＮが負の値のとき、すなわち、現在のエンジン回転数ＮEが目標回転数ＲＰＭＳＥＴよりも低いときには、差回転の絶対値が大きく且つエンジン回転数ＮEが高い程、デューティ比ＤＵＴＹをより増加補正してＩＳＣ弁１０の弁開度を増量補正し、バイパス空気量の増大によってエンジン１の吸入空気量を増加してエンジン回転数ＮEを高めるべく大きい値のフィードバック補正量ＤFBが格納されており、また、差回転ＤＥＬＴＡＮが正の値のとき、すなわち、現在のエンジン回転数ＮEが目標回転数ＲＰＭＳＥＴよりも高いときには、差回転ＤＥＬＴＡＮが大きく且つエンジン回転数ＮEが高い程、デューティ比ＤＵＴＹをより減少補正してＩＳＣ弁１０の弁開度を減量補正することで、バイパス空気量の減少により吸入空気量を減少しエンジン回転数ＮEを低下させるべく、よりマイナス側のフィードバック補正量ＤFBが格納されている。
【００９８】
そして、上記ステップS53からステップS54へ進み、前回ルーチン実行時に設定したデューティ比ＤＵＴＹに、上記ステップS53で設定したフィードバック補正量ＤFBを加算して今回のデューティ比ＤＵＴＹを設定し（ＤＵＴＹ←ＤＵＴＹ＋ＤFB）、続くステップS55で、このデューティ比ＤＵＴＹを制御下限を定める下限値ＤＵＴＹMIN（例えば、２５％）と比較し、ＤＵＴＹ＜ＤＵＴＹMINのときには、ステップS56で、今回のデューティ比ＤＵＴＹを下限値ＤＵＴＹMINによって再設定し（ＤＵＴＹ←ＤＵＴＹMIN）、また、ＤＵＴＹ≧ＤＵＴＹMINのときには、ステップS57へ進んで、今回のデューティ比ＤＵＴＹを制御上限を定める上限値ＤＵＴＹMAX（例えば、１００％）と比較する。そして、ＤＵＴＹ＞ＤＵＴＹMAXのときには、ステップS58で、今回のデューティ比ＤＵＴＹを上記上限値ＤＵＴＹMAXによって再設定し（ＤＵＴＹ←ＤＵＴＹMAX）、また、ＤＵＴＹ≦ＤＵＴＹMAXすなわちＤＵＴＹMIN≦ＤＵＴＹ≦ＤＵＴＹMAXで、上記ステップS54で設定した今回のデューティ比ＤＵＴＹが制御可能領域にあるときには、そのままルーチンを抜ける。
【００９９】
以上のデューティ比ＤＵＴＹの設定によりアイドル回転数制御フィードバック補正サブルーチンを終了すると、アイドル回転数制御ルーチン（図３参照）のステップS15へ進み、上記アイドル回転数制御フィードバック補正サブルーチンにおいて設定した今回のデューティ比ＤＵＴＹをセットして、ルーチンを抜ける。その結果、上記デューティ比ＤＵＴＹの駆動信号がＥＣＵ４０からＩＳＣ弁１０に出力されて、アイドル時のエンジン回転数ＮEが上記目標回転数ＰＲＭＳＥＴに収束するようフィードバック制御される。
【０１００】
以上のアイドル回転数制御によるアイドル回転数の挙動例を図１０に基づいて説明する。
【０１０１】
例えば、寒冷地使用等の外気温低温時でエンジン冷却水温度ＴWNの低温状態（図においては、−１５°Ｃ）でエンジンを始動すると、エンジン始動時には各フラグがクリア状態であり、先ず、エンジン暖機促進を目的とした暖機途上の値の高い放置暖機用目標回転数ＲＰＭＳＴ１によって目標回転数ＲＰＭＳＥＴが設定されて、アイドル時においてフィードバック制御によりエンジン回転数ＮEすなわちアイドル回転数が高く制御され、エンジン暖機促進が向上される。
【０１０２】
なお、エンジン始動後、所定時間ＫＴＡＦＳＴＡ（本形態においては、８０sec）を経過するまでは、水温低下判定ルーチンのステップS32で冷却水温最大値ＴWNMAXが実際には有り得ない低水温値ＴWNMAXSTに固定され、所定時間ＫＴＡＦＳＴＡの経過後、エンジン冷却水温度ＴWNが暖機完了水温ＫTWMAXGD（本形態では、７６°Ｃ）に達するまでの間、エンジン冷却水温度ＴWNの上昇に応じて冷却水温最大値ＴWNMAXが更新される（ステップS34，S35）。
【０１０３】
その後、車輌走行を開始すると（図においては、ＴWN＝１°Ｃの時点）、車輌走行状態が前記目標アイドル回転数算出サブルーチンのステップS25で検出されて車速条件フラグＦSPDFBがセットされ（ステップS26）、エンジン始動後すなわちイグニッションスイッチ５１のＯＮによるシステムイニシャライズ後、一度でも車輌走行状態が検出されると、この車速条件フラグＦSPDFBのセットによって、静粛性、燃費を重視した暖機途上の値が低い走行暖機用目標回転数ＲＰＭＳＴ２により目標回転数ＲＰＭＳＥＴが設定され（ステップS27）、フィードバック制御により走行暖機用目標回転数ＲＰＭＳＴ２による目標回転数ＲＰＭＳＥＴに収束するようアイドル回転数が低く制御されて、これによって静粛性、燃費が向上する。
【０１０４】
そして、エンジン冷却水温度ＴWNの上昇に応じて、走行暖機用目標回転数ＲＰＭＳＴ２により目標回転数ＲＰＭＳＥＴが漸次減少設定され、フィードバック制御によりこれに対応してアイドル回転数も低下する。
【０１０５】
この過程において、走行暖機状態であれば、車輌走行中は、エンジン回転数ＮEが上昇し、エンジン負荷も大きくなるため、エンジン１の暖機が促進されてエンジン冷却水温度ＴWNも上昇するが、その後、車輌を停車すると、上記走行暖機用目標回転数ＲＰＭＳＴ２によるアイドル回転数制御によってアイドル回転数が低く制御され、このとき寒冷地使用等で外気温度が低かったり、風が吹いていたりすると、エンジン１の発熱量よりもラジエータ等による放熱量の方が増えて、エンジン冷却水温度ＴWNが低下し、エンジン暖機性能が不足する。
【０１０６】
そして、水温低下判定ルーチンのステップS38で、冷却水温最大値ＴWNMAXから現在のエンジン冷却水温度ＴWNを減算して算出される水温低下量（ＴWNMAX−ＴWN）が水温低下判定値ＫDTWFB（本形態では、５°Ｃ）以上、すなわち、この水温低下判定値ＫDTWFBによる所定量以上、エンジン冷却水温度が低下し、且つこのとき、ステップS39で現在のエンジン冷却水温度ＴWNが設定値ＫTWLFB（本形態では、６０°Ｃ）以上のとき、冷却水温低下によるエンジン暖機性能の不足と判断し、ステップS41で、エンジン暖機途上の値が高い上記放置暖機用目標回転数ＲＰＭＳＴ１による目標回転数ＲＰＭＳＥＴの設定を指示する水温低下判定フラグＦDTWFBをセットし（ＦDTWFB←１）、この水温低下判定フラグＦDTWFBのセットにより車輌走行後のアイドル時であっても、暖機途上の値が高い上記放置暖機用目標回転数ＲＰＭＳＴ１によって目標回転数ＲＰＭＳＥＴが設定され(目標アイドル回転数算出サブルーチンのステップS24，S29）、これによって、アイドル回転数が高く制御されて、エンジン暖機性能不足時においてアイドル回転数の上昇によりエンジン暖機が促進される。
【０１０７】
ここで、エンジン冷却水温度ＴWNの低下を検出してアイドル回転数を上げているため、新たに外気温度検出用のセンサやスイッチ等を設けることなくコストアップを抑制して実現することが可能となる。
【０１０８】
その後、エンジン冷却水温度ＴWNがエンジン１の暖機が完了したと見なし得る上記暖機完了水温ＫTWMAXGD（７６°Ｃ）に達した時点で、上記水温低下フラグＦDTWFBがクリアされ（水温低下判定ルーチンのステップS43，S44）、冷却水温の低下判定が解除されて、走行暖機用目標回転数ＲＰＭＳＴ２によって目標回転数ＲＰＭＳＥＴを設定する通常のアイドル回転数制御に戻る。
【０１０９】
【発明の効果】
以上説明したように請求項１記載の発明によれば、エンジン始動後のエンジン冷却水温度の最大値を検出し、この冷却水温最大値と現在のエンジン冷却水温度により冷却水温低下量を算出して、該冷却水温低下量が所定量以上のとき、冷却水温低下と判定し、そして、冷却水温低下判定時には、エンジン暖機促進を目的とした暖機途上の値が高い放置暖機用目標回転数によって目標回転数を設定し、アイドル時、この放置暖機用目標回転数による目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定するので、車輌走行後のアイドル時において走行暖機用目標回転数により低いアイドル回転数に制御している状況下で、寒冷地使用による外気低温、或いは風等の影響に起因して、エンジンの発熱量よりもラジエータ等による放熱量の方が増えて、エンジン冷却水温度が低下しエンジン暖機性能が不足する場合には、暖機途上の値が高い放置暖機用目標回転数による目標回転数の設定に移行し、直ちにアイドル回転数を上昇させることができ、冷却水温低下によるエンジン暖機性能の不足時には、アイドル回転数の上昇によりエンジン暖機が促進され、エンジン暖機性能の不足を解消することができる。
【０１１０】
また、冷却水温低下と判定されていないときには、エンジン始動後一度も車輌走行状態を検出しない場合は上記放置暖機用目標回転数により目標回転数を設定し、車輌走行状態を検出した場合は、以後、静粛性、燃費を重視した暖機途上の値が低い走行暖機用目標回転数により目標回転数を設定し、アイドル時、上記目標回転数とエンジン回転数との比較結果に応じてアイドル回転数制御弁に対する制御量を設定するので、エンジン始動後一度も車輌走行状態を検出していない場合は、暖機途上の値が高い上記放置暖機用目標回転数による目標回転数により、エンジン暖機途上のアイドル回転数を高く制御してエンジン暖機を促進することができる。また、車輌走行状態を検出した場合には、以後、暖機途上の値が低い上記走行暖機用目標回転数による目標回転数により、アイドル回転数を低く制御して静粛性及び燃費を向上することができる。従って、エンジン暖機特性と静粛性、燃費とを両立することができる。
【０１１１】
また、冷却水温低下によるエンジン暖機性能の不足時には、放置暖機用目標回転数に移行するので、走行暖機用目標回転数を低く設定することができ、走行後のアイドル時における静粛性をより向上することができる。
【０１１２】
更に、エンジン冷却水温度の低下を検出してアイドル回転数を上げるので、新たに外気温度検出用のセンサやスイッチ等を設けることなくコストアップを抑制して実現することができる。
【０１１３】
請求項２記載の発明によれば、上記請求項１記載の発明の効果に加え、上記冷却水温最大値の検出に際し、エンジン始動後所定時間を経過するまでの間、上記冷却水温最大値を実際には有り得ない予め設定された低水温値に固定するので、エンジンが略暖機完了状態にある短時間停止後のエンジン再始動時におけるラジエータ部等の冷えた冷却水がエンジンに流れ込むことによる一時的なエンジン冷却水温度の低下による誤判定を防止することができ、制御性を向上することができる効果を有する。
【０１１４】
請求項３記載の発明によれば、上記請求項１記載の発明の効果に加え、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上のとき、上記冷却水温最大値を暖機完了水温により設定するので、エンジン暖機完了状態であるにも関わらずエンジン暖機完了状態での車輌の走行、停止等に起因する水温変動によって、冷却水温低下によるエンジン暖機性能の不足と誤判定されるのを防止することができる。
【０１１５】
請求項４記載の発明によれば、上記請求項１記載の発明の効果に加え、水温低下判定に際し、上記冷却水温低下量が所定量以上、且つ、このときのエンジン冷却水温度が設定値以上のとき、冷却水温低下と判定するので、車輌走行後のアイドル時における走行暖機用目標回転数によるアイドル回転数制御状況下においてエンジン冷却水温度がある程度に上昇するまでは、走行暖機用目標回転数が高めに設定されているため、アイドル回転数が比較的高い値に制御されており、従って、この状態をエンジン冷却水温度に基づいて判断して、このときの走行暖機用目標回転数による目標回転数の設定から放置暖機用目標回転数による目標回転数設定への不要な切換わりを防止することができる。
【０１１６】
請求項５記載の発明によれば、上記請求項１或いは請求項４記載の発明の効果に加え、冷却水温低下と判定した後、エンジン冷却水温度がエンジンの暖機完了と判断される暖機完了水温以上となったとき、冷却水温の低下判定を解除するので、エンジン暖機完了前において冷却水温の低下判定を解除することによって生じるエンジン冷却水温の上昇低下、及び、これに伴う放置暖機用目標回転数による目標回転数の設定と走行暖機用目標回転数による目標回転数設定との切換えに起因するアイドル回転数の上昇低下のハンチングを防止することができる。
【図面の簡単な説明】
【図１】本発明の基本構成図
【図２】エンジン回転数算出ルーチンのフローチャート
【図３】アイドル回転数制御ルーチンのフローチャート
【図４】目標アイドル回転数算出サブルーチンのフローチャート
【図５】水温低下判定ルーチンのフローチャート
【図６】アイドル回転数制御フィードバック補正サブルーチンのフローチャート
【図７】放置暖機用目標回転数テーブル及び走行暖機用目標回転数テーブルの説明図
【図８】放置暖機用目標回転数及び走行暖機用目標回転数の特性図
【図９】短時間エンジン停止後にエンジンを再始動したときのエンジン冷却水温度の挙動を示すタイムチャート
【図１０】本発明のアイドル回転数制御によるアイドル回転数の挙動例を示す説明図
【図１１】クランク角センサから出力されるパルス信号のタイムチャート
【図１２】エンジンの全体概略図
【図１３】クランク角センサとシグナルロータの正面図
【図１４】電子制御系の回路構成図
【符号の説明】
１  エンジン
１０  ＩＳＣ弁（アイドル回転数制御弁）
２６  冷却水温センサ
４０  電子制御装置（放置暖機用目標回転数設定手段、走行暖機用目標回転数設定手段、冷却水温最大値検出手段、水温低下判定手段、目標回転数設定手段、制御量設定手段）
ＴWN  エンジン冷却水温度
ＴWNMAX  冷却水温最大値
（ＴWNMAX−ＴWN）  冷却水温低下量
ＫDTWFB  水温低下判定値（所定量）
ＲＰＭＳＴ１  放置暖機用目標回転数
ＲＰＭＳＴ２  走行暖機用目標回転数
ＲＰＭＳＥＴ  目標回転数
ＮE  エンジン回転数
ＤＵＴＹ  デューティ比（制御量）
ＫＴＡＦＳＴＡ  所定時間
ＴWNMAXST  低水温値
ＫTWMAXGD  暖機完了水温
ＫTWLFB  設定値
【図１】
0003833752.tif 000002
【図２】
0003833752.tif 000003
【図３】
0003833752.tif 000004
【図４】
0003833752.tif 000005
【図５】
0003833752.tif 000006
【図６】
0003833752.tif 000007
【図７】
0003833752.tif 000008
【図８】
0003833752.tif 000009
【図９】
0003833752.tif 000010
【図１０】
0003833752.tif 000011
【図１１】
0003833752.tif 000012
【図１２】
0003833752.tif 000013
【図１３】
0003833752.tif 000014
【図１４】
0003833752.tif 000015