JP3442795B2 - エンジンのiscバルブ制御方法 - Google Patents

エンジンのiscバルブ制御方法

Info

Publication number
JP3442795B2
JP3442795B2 JP02390592A JP2390592A JP3442795B2 JP 3442795 B2 JP3442795 B2 JP 3442795B2 JP 02390592 A JP02390592 A JP 02390592A JP 2390592 A JP2390592 A JP 2390592A JP 3442795 B2 JP3442795 B2 JP 3442795B2
Authority
JP
Japan
Prior art keywords
value
correction
air conditioner
process proceeds
proceed
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP02390592A
Other languages
English (en)
Other versions
JPH05222973A (ja
Inventor
能之 十川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Subaru Corp
Original Assignee
Fuji Jukogyo KK
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fuji Jukogyo KK filed Critical Fuji Jukogyo KK
Priority to JP02390592A priority Critical patent/JP3442795B2/ja
Publication of JPH05222973A publication Critical patent/JPH05222973A/ja
Application granted granted Critical
Publication of JP3442795B2 publication Critical patent/JP3442795B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Control Of Vehicle Engines Or Engines For Specific Uses (AREA)
  • Electrical Control Of Air Or Fuel Supplied To Internal-Combustion Engine (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ISCバルブの開度を
フィードバック制御し、またこのフィードバック制御さ
れたISCバルブの開度設定値の許容幅をエンジン状態
に応じて可変設定するエンジンのISCバルブ制御方法
に関する。
【0002】
【従来の技術】一般に、エンジンのISC(アイドルス
ピードコントロール)バルブの開度制御は、始動時制御
(クランキング時)→オープンループ制御(暖機運転時
など)→クローズドループ(フィードバック)制御(通
常時)の順に実行し、エンジン状態に応じた最適なエン
ジン制御を実現している。
【0003】例えば特開昭58−158343号公報に
は、ISCバルブの開度設定値(例えばデューティ比)
を学習し、この学習値とフィードバック制御により補正
した開度設定値とが異なる値になり、アイドル回転数が
アイドル目標回転数と異なる値を示したとき、このアイ
ドル回転数とアイドル目標回転数との差に対応する補正
値で上記学習値を更新し、次回始動後のフィードバック
制御開始時に当該学習値を初期値として用い、オープン
ループ制御からクローズドループ制御へ移行した直後、
すなわち、フィードバック制御開始直後の制御性の改善
を図っている。しかし、従来はエンジン状態に応じて上
述した各制御が各々独立して実行されていたため、始動
時制御からオープンループ制御へ移行する際には、初爆
はするが完爆へ移行し難くなりエンジン回転数の立上り
にもたつきが生じやすく、また、オープンループ制御か
らクローズドループ制御へ移行する際に、上述した先行
技術のごとくフィードバック制御の初期値として前回の
運転時に学習した学習値を用いても、オープンループ制
御時の制御値と上記学習値とが独立して設定されている
ため、オープンループ制御時の上記ISCバルブの開度
を設定する開度設定値とクローズドループ制御初期値と
の間に段差が生じ、フィードバック補正値が収束するま
でに時間がかかり、その間、エンジン回転数が不安定に
なってしまう問題があった。
【0004】一方、上記ISCバルブの開度設定値、お
よび、フィードバック補正値が無限に増大あるいは減少
(負側をふくむ)するのを防止するため、上記フィード
バック補正値および開度設定値には、それぞれ上限値、
下限値が設定されている。例えば、上述した先行技術に
は、上記学習値と予め設定した上限値および下限値とを
比較し、この学習値が上限値と下限値との間の許容範囲
に収まっていない場合には、この上限値、あるいは、下
限値で上記学習値を更新する技術が開示されている。
【0005】しかし、この上限値あるいは下限値が固定
値であるため、例えば、エアコンコンプレッサが駆動し
エンジン負荷が増大しても上限値にて規制されるため吸
入空気量を充分に供給することが困難となる。
【0006】これに対処するに、例えば特開平1−24
7728号公報には、開度設定値の上限値をエアコンコ
ンプレッサの容量に応じて可変設定する技術が開示され
ている。
【0007】しかし、エンジン状態により、このエンジ
ンにかかる負荷は冷却水温度を代表とするエンジン温度
などにより見かけ上変化するもので、したがって、エア
コンコンプレッサの容量のみで上限値、および、下限値
を決定しても、過回転、あるいは、エンジンストールを
招くなど適切な制御が困難となる場合がある。
【0008】
【発明が解決しようとする課題】このように、従来、始
動時制御から通常時制御へ至る一連の制御が各々独立し
たかたちで実行されていたため、始動時制御からオープ
ンループ制御へ移行する際にはエンジン回転数の立上り
にもたつきが生じやすくなり、また、オープンループ制
御からクローズドループ制御へ移行する際には、制御の
繋がりに段差が生じてしまい、フィードバック補正値が
収束するまでに時間がかかり、エンジン回転数の不安定
化を招くなどの問題があった。
【0009】
【0010】本発明は上記事情に鑑み、オープンループ
制御からクローズドループ制御へ移行した際のフィード
バック補正値の収束時間を短縮してエンジン回転数の安
定化を図ることのできるエンジンのISCバルブ制御方
法を提供することを目的とする。
【0011】
【0012】
【0013】
【0014】
【0015】
【課題を解決するための手段】上記目的を達成するた
め、請求項1記載の発明は、始動時制御から通常時制御
へ移行した直後にエンジン温度に基づき始動後補正初期
値テーブルを参照して始動後補正を設定する手順と、こ
の始動後補正を、ゼロになるまで設定時間毎に設定値
つ減算した値で更新する手順と、オープンループ制御か
アイドル目標回転数とエンジン回転数との差回転を設
定範囲に収めるクローズドループ制御に移行した場合に
始動後補正実行中のときには上記差回転に基づいて設定
するフィードバック補正値に上記始動後補正を加算して
該フィードバック補正値を更新し、さらに上記始動後補
正をクリアする手順と、エンジン温度に基づいてスロッ
トルバルブをバイパスするエアバイパス通路に介装した
ISCバルブの基本的な開度を示す基本特性値を設定す
る手順と、上記フィードバック補正値で、少なくとも
基本特性値を補正して上記ISCバルブの開度を設定
する手順とを備えたことを特徴とする。
【0016】請求項2記載の発明は、請求項1記載の発
明において、上記フィードバック補正値を積分制御のみ
で設定したことを特徴とする。
【0017】
【0018】
【0019】
【0020】
【0021】
【作用】請求項1記載の発明は、始動時制御から通常時
制御へ移行した直後にエンジン温度に基づき始動後補正
初期値テーブルを参照して始動後補正を設定する。そし
て、この始動後補正をゼロになるまで設定時間毎に設定
値ずつ減算した値で更新する。また、オープンループ制
御からアイドル目標回転数とエンジン回転数との差回転
を設定範囲に収めるクローズドループ制御へ移行した場
合に始動後補正実行中のときには上記差回転に基づいて
設定するフィードバック補正値に上記始動後補正を加算
して該フィードバック補正値を更新し、さらに上記始動
後補正をクリアする。また、エンジン温度に基づいてス
ロットルバルブをバイパスするエアバイパス通路に介装
したISCバルブの基本的な開度を示す基本特性値を設
定する。そして、フィードバック補正値で、少なくと
本特性値を補正してISCバルブの開度を設定する。
【0022】すなわち、オープンループ制御からクロー
ズドループ制御へ移行した際に、始動後補正をフィード
バック補正値に移行させることで、オープンループ制御
からクローズドループ制御への繋がりが良くなり、フィ
ードバック補正値の収束時間が短縮し、このときのエン
ジン回転数の変動が防止される。
【0023】請求項2記載の発明は、フィードバック補
正値の設定に際し、フィードバック補正値を積分制御の
みで設定する。
【0024】
【0025】
【0026】
【0027】
【0028】
【0029】
【0030】
【0031】
【0032】
【0033】
【0034】
【0035】
【0036】
【0037】
【0038】
【0039】
【0040】
【実施例】以下、図面に基づいて本発明の実施例を説明
する。図面は本発明の一実施例を示し、図1,図2はI
SCバルブ制御手順を示すフローチャート、図3は補正
値設定手順を示すフローチャート、図4は基本特性値設
定手順を示すフローチャート、図5はアイドル目標回転
数設定手順を示すフローチャート、図6はクローズド/
オープンループ制御判別手順を示すフローチャート、図
7,図8はエアコン補正値設定手順を示すフローチャー
ト、図9はエアコンスイッチOFF→ON時のエアコン
補正学習手順を示すフローチャート、図10はエアコン
スイッチON→OFF時のエアコン補正学習手順を示す
フローチャート、図11,図12はAT車走行レンジ補
正値設定手順を示すフローチャート、図13,図14は
加減速補正設定手順を示すフローチャート、図15はダ
ッシュポット補正値設定手順を示すフローチャート、図
16はダッシュポット補正値更新手順を示すフローチャ
ート、図17はラジファン補正設定手順を示すフローチ
ャート、図18、図19はパワステ補正値設定手順を示
すフローチャート、図20はエアコンクラッチ補正値設
定手順を示すフローチャート、図21は始動後補正初期
値設定手順を示すフローチャート、図22は始動後補正
設定手順を示すフローチャート、図23〜図25はクロ
ーズドループ補正I分更新手順を示すフローチャート、
図26はクローズドループ補正I分学習手順を示すフロ
ーチャート、図27はエンジン制御系の概略図、図28
は制御装置の構成図、図29はエアコンスイッチとエア
コン補正値とエンジン回転数の関係を示すタイムチャー
ト、図30は走行レンジ、またはN,Pレンジと、AT
車走行レンジ補正とエンジン回転数の関係を示すタイム
チャート、図31はアイドルスイッチとスロットル開度
と加減速補正とエンジン回転数の関係を示すタイムチャ
ート、図32はアイドルスイッチとエンジン回転数とダ
ッシュポット補正値の関係を示すタイムチャート、図3
3はラジエータファンON/OFFとラジファン補正の
関係を示すタイムチャート、図34はアイドル判別回転
数を設定する際のヒステリシスを示すタイムチャート、
図35はパワステ転舵スイッチとパワステ補正値とエン
ジン回転数の関係を示すタイムチャート、図36はエア
コンスイッチとエアコンクラッチリレーとエアコンコン
プレッサの容量とエアコンクラッチ補正値とエンジン回
転数の関係を示すタイムチャート、図37は始動後補正
の変化を示すタイムチャート、図38はデューティ比の
変化を示すタイムチャート、図39は始動後補正値のク
ローズドループ補正I分への移行を示すタイムチャー
ト、図40はクローズドループ補正I分の補正量と差回
転との関係を示す説明図、図41はエンジン回転数とク
ローズドループ補正I分の補正量とクローズドループ補
正I分との関係を示すタイムチャート、図42はクロー
ズドループ補正I分の学習値の使用状況を示すタイムチ
ャートである。
【0041】[エンジン制御系の構成]図27におい
て、図中の符号1はエンジン本体で、図においては6気
筒水平対向型エンジンを示す。このエンジン本体1は、
シリンダブロック2がクランクシャフト1aを中心とし
て両側のバンク(図の右側が左バンク、左側が右バン
ク)に2分割されており、例えば、右バンクに#1,#
3,#5気筒の気筒群が配置され、左バンクに#2,#
4,#6気筒の気筒群が配置されている。
【0042】上記各バンクの各シリンダヘッド3には、
それぞれ吸気ポート4が形成され、各吸気ポート4にイ
ンテークマニホルド5が連通されている。また、このイ
ンテークマニホルド5の上流に、各バンクに対応して共
鳴管6a,6bが連通され、この各共鳴管6a,6b間
を結ぶ通路6cに可変吸気バルブ11cが介装されてい
る。なお、この共鳴管6a,6b、通路6c、および、
可変吸気バルブ11cで可変共鳴過給システムが構成さ
れている。
【0043】さらに、上記各共鳴管6a,6bの上流が
スロットルチャンバ11a,11bを開してサージタン
ク7に連通されている。
【0044】上記サージタンク7の上流側に、吸気管8
を介してエアクリーナ9が取付けられており、このエア
クリーナ9の直下流に吸入空気量センサ(図において
は、ホットフィルム式エアフローメータ)10が介装さ
れている。
【0045】また、上記各スロットルチャンバ11a,
11bに、スロットルバルブ11d,11e(いわゆ
る、ツインスロットルバルブ)が介装され、一方のスロ
ットルバルブ11eにスロットル開度センサ12aとス
ロットルバルブ全閉を検出するアイドルスイッチ12b
とが連設されている。
【0046】さらに、上記スロットルチャンバ11a,
11bのスロットルバルブ11d,11eの下流側が通
路6dによって連通され、この通路6dと上記サージタ
ンク7とを連通するエアーバイパス通路6eに、アイド
ルスピードコントロール(ISC)バルブ13が介装さ
れている。
【0047】また、上記インテークマニホルド5の各気
筒の各吸気ポート4の直上流側にインジェクタ14が配
設され、さらに、上記各シリンダヘッド3の各気筒毎
に、その先端を燃焼室に露呈する点火プラグ15が取付
けられている。この点火プラグ15の端子部には、点火
コイル15aが直接取付けられ、イグナイタ16に接続
されている。
【0048】上記インジェクタ14には、燃料タンク1
7内に設けられたインタンク式の燃料ポンプ18から燃
料フィルタ19を経て燃料が圧送され、プレッシャレギ
ュレータ20にて調圧させる。
【0049】また、上記シリンダブロック2に形成され
た冷却水通路(図示せず)にエンジン温度の一例として
冷却水温TW を検出する冷却水温センサ21が臨まされ
るとともに、上記シリンダブロック2の各バンクに、そ
れぞれ、右バンクノックセンサ22a、左バンクノック
センサ22bが取付けられており、上記各シリンダヘッ
ド3の各排気ポート23から、各バンク毎に設けられた
各排気管24a,24bが連通されている。
【0050】上記各排気管24a,24bには、それぞ
れ、右バンクO2 センサ25a,左バンクO2 センサ2
5bが臨まされ、各O2 センサ25a,25bの下流側
に、それぞれ、触媒コンバータ26a,26bが介装さ
れ、さらに、各触媒コンバータ26a,26bの下流側
合流部に、触媒コンバータ27が介装されている。
【0051】一方、エンジン本体1のクランクシャフト
1aに、クランク角検出用クランクロータ29とグルー
プ気筒判別用クランクロータ30とが所定間隔を開けて
軸着されている。また、この各クランクロータ29,3
0の外周に被検出体である突起を検出する電磁ピックア
ップなどからなる第一のクランク角センサ31,第二の
クランク角センサ32がそれぞれ対設されている。ま
た、カムシャフト33に軸着したカムロータ33aの外
周にカム角センサ34が対設されている。このカム角セ
ンサ34は特定気筒の圧縮上死点を判別するもので、こ
のカム角センサ34からのカムパルスと第2のクランク
角センサ32からのグループ判別パルスとで個々の気筒
を判別する。
【0052】なお、上記各クランクロータ29,30、
上記カムロータ33aの外周には突起の代りにスリット
を設けてもよく、また、両クランク角センサ31,3
2、カム角センサ34は電磁ピックアップなどの電磁セ
ンサに限らず光センサなどでも良い。
【0053】[制御装置の回路構成]一方、図28にお
いて、符号40はマイクロコンピュータからなる制御装
置(ECU)で、このECU40は点火時期制御、燃料
噴射制御などを行うメインコンピュータ41と、ノック
検出処理を行う専用のサブコンピュータ42との2つの
コンピュータから構成されている。
【0054】また、上記ECU40内には定電圧回路4
3が内蔵され、この定電圧回路43から各部へ安定化電
圧が供給される。この定電圧回路43は、ECUリレー
44のリレー接点を介してバッテリ45に接続され、上
記ECUリレー44のリレーコイルがキースイッチ46
を介して上記バッテリ45に接続されている。また、上
記バッテリ45に燃料ポンプリレー47のリレー接点を
介して燃料ポンプ18が接続されている。
【0055】上記メインコンピュータ41は、メインC
PU48、ROM49、RAM50、記憶手段としての
バックアップRAM50a、タイマ51、シリアルイン
ターフェース(SCI)52、及び、I/Oインターフ
ェース53がバスライン54を介して互いに接続されて
いる。また、上記バックアップRAM50aには上記定
電圧回路43を介して常時バックアップ電圧が印加され
ている。
【0056】上記I/Oインターフェース53の入力ポ
ートには、吸入空気量センサ10,スロットル開度セン
サ12a、冷却水温センサ21、右バンクO2 センサ2
5a、左バンクO2 センサ25b、大気圧センサ55、
及び車速センサ56がA/D変換器57aを介して接続
されているとともに、アイドルスイッチ12b、第1,
第2のクランク角センサ31,32、カム角センサ34
が接続され、また、上記バッテリ45が接続されてバッ
テリ電圧がモニタされる。
【0057】さらに、上記I/Oインターフェース53
の入力ポートには、転舵状態を検出するパワーステアリ
ング転舵スイッチ58、オートマチックトランスミッシ
ョンのセレクトレバーがニュートラルにセットされてい
るかを検出するニュートラルスイッチ59、パーキング
にセットされているかを検出するパーキングスイッチ6
0、始動状態を検出するスタータスイッチ61が接続さ
れている。
【0058】また、上記I/Oインターフェース53の
出力ポートには、イグナイタ16が接続され、さらにI
SCバルブ13、インジェクタ14、ラジエータファン
62の駆動を制御するラジエータファンリレー63のリ
レーコイル、可変容量エアコンコンプレッサ64のマグ
ネットクラッチ64aの接/断を操作するエアコンクラ
ッチリレー65のリレーコイルが駆動回路57bを介し
て接続されている。
【0059】一方、サブコンピュータ42は、サブCP
U66、ROM67、RAM68、タイマ69、SCI
70、及び、I/Oインターフェース71がバスライン
72を介して互いに接続されて構成されている。
【0060】上記I/Oインターフェース71の入力ポ
ートには、上記第1,第2のクランク角センサ31,3
2、カム角センサ34が接続されているとともに、右バ
ンクノックセンサ22a、左バンクノックセンサ22b
が、それぞれアンプ73、周波数フィルタ74、A/D
変換器75を介して接続されている。
【0061】上記各ノックセンサ22a,22bは、例
えばノック振動とほぼ同じ固有周波数を持つ振動子と、
この振動子の振動加速度を検知して電気信号に変換する
圧電素子とから構成される共振形のノックセンサで、エ
ンジンの爆発行程における燃焼圧力波によりシリンダブ
ロックなどに伝わる振動を検出し、その振動波形をノッ
ク信号として出力する。
【0062】このノック信号は上記アンプ73により所
定のレベルに増幅された後、上記周波数フィルタ74に
より必要な周波数成分が抽出され、A/D変換器75で
アナログデータからデジタルデータに変換される。
【0063】上記メインコンピュータ41と上記サブコ
ンピュータ42とは、SCI52,70を介したシリア
ル回線により接続されているとともに、上記サブコンピ
ュータ42のI/Oインターフェース71の出力ポート
が、上記メインコンピュータ41のI/Oインターフェ
ース53の入力ポートに接続されている。
【0064】上記メインコンピュータ41では、クラン
クパルスに基づいて点火時期などを演算し、所定の点火
時期に達すると、該当気筒に点火信号を出力し、一方、
上記サブコンピュータ42では、クランクパルスの入力
間隔からエンジン回転数を算出し、このエンジン回転数
とエンジン負荷とに基づいて各ノックセンサ22a,2
2bからのノック信号のサンプル区間を設定し、このサ
ンプル区間で各ノックセンサ22a,22bからのノッ
ク信号を高速にA/D変換して振動波形を忠実にデジタ
ルデータに変換し、ノック発生の有無を判定する。
【0065】このノック発生の有無の判定結果は、サブ
コンピュータ42のI/Oインターフェース71に出力
され、ノック発生の場合には、SCI70,52を介し
たシリアル回線を通じてサブコンピュータ42から上記
メインコンピュータ41にノックデータが読込まれ、上
記メインコンピュータ41では、このノックデータに基
づいて直ちに該当気筒の点火時期を遅らせ、ノックを回
避する。
【0066】また、符号81はエアコン制御ユニット
で、CPU82、ROM83、RAM84、I/Oイン
ターフェース85がバスライン86を介して接続され、
イグニッションスイッチ87を介してバッテリ45に接
続する定電圧回路88から各部に安定化電圧が供給され
る。
【0067】上記I/Oインターフェース85の入力ポ
ートには、エアコンスイッチ89、上記メインコンピュ
ータ41のI/Oインターフェース53が接続されてお
り、上記メインコンピュータ41から上記エアコン制御
ユニット81へ上記可変容量エアコンコンプレッサ64
に対する要求容量(DUTY)信号を出力する。
【0068】また、上記I/Oインターフェース85の
出力ポートには、上記可変容量エアコンコンプレッサ6
4に設けた可変容量制御バルブ((図示せず)が接続さ
れて、容量(DUTY)信号を出力するとともに、メイ
ンコンピュータ41のI/Oインターフェース53の入
力ポートに接続されて、エアコンスイッチ89がONし
たかどうかの信号が出力される。
【0069】[動作]次に、上記構成による実施例のI
SCバルブ13の制御動作について説明する。
【0070】(ISCバルブ制御メインルーチン)図
1,図2はメインコンピュータ41で実行するISCバ
ルブ制御手順を示すメインルーチンで、所定演算周期ご
とに実行される。
【0071】まず、ステップ(以下「S」と略称)101
で、モニタしたバッテリ電圧に基づきバッテリ電圧補正
値ISCVBを設定する。バッテリ電圧が低いとISCバ
ルブ13が所定開度に達しなくなるため、上記バッテリ
電圧補正値ISCVBはバッテリ電圧が低いほど大きな値
に設定される。
【0072】そして、S102で大気圧補正係数KALT を設
定する。大気圧が低いと吸入空気流量も相対的に低くな
るため、上記大気圧補正係数KALT は大気圧が低いほど
大きな値に設定される。
【0073】その後、S103へ進むと、始動判別を行うべ
くスタータスイッチ61がONかを判断し、ONの場合
始動中と判断してS104へ進み、OFFの場合エンジン停
止あるいはエンジン稼動中と判断してS105へ進む。
【0074】S105では第1のクランク角センサ31出力
により検出したエンジン回転数NEに基づきエンジン停
止中かを判断し、NE =0(エンジン停止中)の場合S1
04へ進み、NE ≠0(エンジン稼動中)の場合S114へ進
む。
【0075】S103あるいはS105で、始動中あるいはエン
ジン停止中と判断された場合には、S104へ進み、始動時
制御処理が実行される。S104へ進むと、冷却水温センサ
21で検出した冷却水温TW に基づき始動時特性値テー
ブルTISCSTを補間計算付きで参照して始動時特性
値ISCSTを設定する。
【0076】そして、S106へ進み、上記始動時特性値I
SCSTとバッテリ電圧補正値ISCVBとを加算した値に
上記大気圧補正係数KALT を乗算してISCバルブ13
の開度設定値であるデューティ比ISCONを設定する
(ISCON←(ISCST+ISCVB)×KALT )。
【0077】その後、S107で、後述するクローズド/オ
ープンループ制御判別サブルーチンで用いるエンジン始
動後の経過時間が設定時間TMASI[SEC ]に達した
かを判別するための始動後経過時間判別カウント値CO
UNTST(ダウンカウンタ)に、設定時間TMASIに
相当する設定値COUNTSTをセット(COUNTST←
COUNTTMASI )した後、S108へ進み、後述する始動
後補正ISCSD、クローズドループ補正I分設定の際に
用いる始動時/通常時制御判別フラグFLAGSTを、現
在始動時制御を実行していることを示すためセット(F
LAGST←1)した後S109へ進む。
【0078】S109では、上記デューティ比ISCONとオ
ープンループ制御時の下限値IMINOPとを比較し、I
SCON≦IMINOPの場合、設定したデューティ比IS
CONが下限値以下であるため、S110で、上記デューティ
比ISCONを上記下限値IMINOPで設定し(ISCON
←IMINOP)、S138へ進む。
【0079】一方、上記S109で、ISCON>IMINOP
の場合にはS111へ進み、上記冷却水温TW に基づき上限
値テーブルTBMXOPを参照して上限値IMAXOP を設
定する。この上限値テーブルTBMXOPには、冷却水
温TW が低ければ始動性がより困難になるため高い値の
上限値IMAXOP が格納されている。
【0080】そして、S112で上記デューティ比ISCON
と上記上限値IMAXOP とを比較し、ISCON≧IMAXOP
の場合、S113へ進み、デューティ比ISCONを上記上限
値IMAXOP で固定し(ISCON←IMAXOP )、S138へ進
む。また、ISCON<IMAXOP の場合、そのままS138へ
進む。
【0081】一方、上記S105で、NE ≠0(エンジン稼
動中)と判断された場合にはS114へ進み、通常時制御処
理が実行される。S114へ進むと、始動時/通常時制御判
別フラグFLAGSTをクリア(FLAGST←0、通常時
制御)し、S115で基本特性値設定サブルーチン(詳細は
後述する)を実行して基本特性値ISCTWを設定し、S1
16でアイドル目標回転数設定サブルーチン(詳細は後述
する)を実行してアイドル目標回転数NSET を設定し、
S117でクローズド/オープンループ制御判別サブルーチ
ン(詳細は後述する)を実行してクローズドループ制御
かオープンループ制御かを判別した後、S118へ進む。
【0082】S118では、後述する補正値設定ルーチン
(51.2msec毎に割込み実行)で設定したエアコン補正値
ISCACを読出し、S119で上記補正値設定ルーチンで設
定したAT車走行レンジ補正値ISCATDSにて当該メイ
ンルーチンで使用するギヤ位置補正値ISCATを設定し
(ISCAT←ISCATDS)、S120で上記補正値設定ルー
チンで設定した加減速補正DSHPTで加減速補正値I
SCTRを設定し(ISCTR←DSHPT)、S121で始動後補
正値ISCASを後述する各割込みルーチンで設定した始
動後補正ISCSDで設定し(ISCAS←ISCSD)、S1
22で上記補正値設定ルーチンで更新したダッシュポット
補正値DHENBを読出し、S123で後述するクローズド
ループ補正I分更新手順(10msec毎に割込み実行)で設
定したフィードバック補正値としてのクローズドループ
補正I分ISCI にて当該メインルーチンで使用するク
ローズドループ補正値ISCCLを設定する(ISCCL←
ISCI )。
【0083】そして、S124で上記補正値設定ルーチンで
設定したラジファン補正ISCRASにて、当該メインル
ーチンで使用するラジファン補正値ISCRAを設定し
(ISCRA←ISCRAS )、また、S125で上記補正値設
定ルーチンで設定したパワステ補正値ISCPSを読出
し、S126で上記補正値設定ルーチンで設定したエアコン
クラッチ補正値ISCCLH を読み出す。
【0084】その後、S127で上記基本特性値ISCTW、
エアコン補正値ISCAC、ギヤ位置補正値ISCAT、加
減速補正値ISCTR、始動後補正値ISCAS、ダッシュ
ポット補正値DHENB、クローズドループ補正値IS
CCL、ラジファン補正値ISCRA、パワステ補正値IS
CPS、エアコンクラッチ補正値ISCCLH 、バッテリ電
圧補正値ISCVBを加算した値に大気圧補正係数KALT
を乗算してデューティ比ISCONを次式に示す如く設定
する。
【0085】ISCON←(ISCTW+ISCAC+ISC
AT+ISCTR+ISCAS+DHENB+ISCCL+IS
CRA+ISCPS+ISCCLH +ISCVB)×KALT そして、S128でクローズドループ制御選択時に1にセッ
トされるクローズド/オープンループ制御判別フラグF
LAGCLの値を参照し、FLAGCL=1でクローズドル
ープ制御が選択されている場合S129へ進み、FLAGCL
=0でオープンループ制御が選択されている場合には、
始動時と同様のデューティ制限を実行すべくS109へ戻
る。
【0086】S129へ進むと、上記デューティ比ISCON
とクローズドループ制御時の下限値IMINCLとを比較
し、ISCON≦IMINCLの場合S130へ進み上記デュー
ティ比ISCONを上記下限値IMINCLに設定して(I
SCON←IMINCL)、S138へ進む。上記下限値IMI
NCL、あるいはIMINOPは、デューティ比ISCONが
不必要に低下してISCバルブ13の開度が低下しIS
Cバルブ13による空気流量低下に伴いアイドル回転数
が低下することによるフィーリングの悪化およびエンス
トを防止するために設定するものである。
【0087】一方、S129で、ISCON>IMINCLと判
断されてS131へ進むと、冷却水温TW に基づきテーブル
TBMXCLを補間計算付で参照して上限基本値IMAX を
設定する。この上限基本値IMAX はデューティ比ISC
ONが不必要に大きくなり、アイドル回転数が過回転にな
るのを防止するために設定するもので、テーブル上にお
いては、冷却水温TW が高いほど基本特性値ISCTWが
小さくなり、したがってデューティ比ISCONも小さく
なるため、上限基本値IMAX も冷却水温TW が高くなる
に従い小さな値が格納されている。
【0088】その後、S132へ進むとエアコンスイッチ8
9がONかを判断し、ON状態の場合S133へ進み上限基
本値エアコン補正ID1を設定値ISCBAC で設定し(ID1
←ISCBAC )、また、OFF状態の場合S134へ進み上限
基本値エアコン補正ID1を0に設定する(ID1←0)。
【0089】そして、S135で上記上限基本値IMAX に上
限基本値エアコン補正ID1を加算して上限値IMAXCL を
設定する(IMAXCL ←IMAX +ID1)。エアコンが駆動
状態ではアイドルアップされているために上限値IMAXC
L も上限基本値エアコン補正ID1(設定値ISCBAC )分
だけ高く設定する。
【0090】そして、S136で上記デューティ比ISCON
と上記上限値IMAXCL とを比較し、ISCON≧IMAXCL
の場合S137へ進みデューティ比ISCONを上記上限値I
MAXCL に設定して(ISCON←IMAXCL )、S138へ進
む。また、ISCON<IMAXCLの場合、デューティ比I
SCONが許容範囲に収まっている(IMINCL<ISC
ON<IMAXCL )ためそのままS138へ進む。
【0091】その後、S110,S113,S130,S136 、あるい
は、S137からS138へ進むと、上記各ステップで設定した
デューティ比ISCONに対応するデューティ信号DUT
YをISCバルブ13のコイルへ出力して(DUTY←
ISCON)、ルーチンを抜ける。
【0092】なお、ISCバルブ13に対するデューテ
ィ信号DUTYは、次回ルーチン実行時に新たにデュー
ティ信号DUTYが設定されるまでの間、出力保持され
る。 (補正値設定ルーチン)図3は設定時間毎、例えば51.2
msec毎に割込み実行される補正値設定ルーチンである。
【0093】まず、S201でエアコン補正値設定サブルー
チン(詳細は後述)を実行してエアコン補正値ISCAC
を設定し、S202でAT車走行レンジ補正値設定サブルー
チン(詳細は後述する)を実行してAT車走行レンジ補
正値ISCATDSを設定し、S203で加減速補正設定サブル
ーチン(詳細は後述)を実行して加減速補正DSHPTを設
定し、S204でダッシュポット補正値更新サブルーチン
(詳細は後述)を実行してダッシュポット補正値DHE
NBを更新し、S205でラジファン補正設定サブルーチン
(詳細は後述)を実行してラジファン補正ISCRAS を
設定し、S206でパワステ補正値設定サブルーチン(詳細
は後述)を実行してパワステ補正値ISCPSを設定し、
S207でエアコンクラッチ補正値設定サブルーチン(詳細
は後述)を実行してエアコンクラッチ補正値ISCCLH
を設定してルーチンを抜ける。
【0094】(基本特性値設定サブルーチン)図4はメ
インルーチンにおいて実行(S115参照)される基本特性
値ISCTW設定のサブルーチンで、基本特性値ISCTW
を放置(停車状態)暖機と走行暖機とに区別して設定す
る。
【0095】まず、S301〜S303で車輌が完全に停車状態
かどうかを判断する。S301ではアイドルスイッチ12b
がONかどうかを判断し、ON(スロットルバルブ11
d,11eが全閉)の場合S302へ進み、OFF(スロッ
トルバルブ11d,11eが開)の場合S305へ進む。
【0096】S302ではパーキングスイッチ60がON
(セレクトレバーがPレンジにセットされている状態)
の場合S303へ進み、OFFの場合S305へ進む。
【0097】S303では車速センサ56で検出した車速V
SPに基づき車速VSPが0かを判断し、VSP=0
(停車状態)の場合S304へ進み、VSP≠0(走行状
態)の場合S305へ進む。
【0098】S304へ進むと、放置/走行暖機判別フラグ
FLAGTIS をセットし(FLAGTIS ←1,放置暖
機)、S306で冷却水温TW に基づき放置暖機基本特性値
テーブルTISTWSを補間計算付きで参照して基本特
性値ISCTWを設定した後、ルーチンを抜ける。
【0099】放置暖機の基本特性値ISCTWは、変速機
がPレンジにシフトされており、完全に車輌が停止した
状態であるため、ISCバルブ13の開度を大きくして
ISCバルブ13によって吸入空気量を増大させエンジ
ン回転数を高めエンジン暖機完了時間を短縮させるため
走行暖機よりも高い値に設定されている。なお、燃料消
費率およびフィーリングを考慮しておのずと上限がある
が、実験などから最適な基本特性値ISCTWを冷却水温
TW をパラメータとして求めテーブル化してROM49
にストアしておく。
【0100】一方、S301,S302 ,あるいは、S303からS3
05へ進むと放置/走行暖機判別フラグFLAGTIS をク
リアし(FLAGTIS ←0、走行暖機)、S307で冷却水
温TW に基づき走行暖機基本特性値テーブルTISTW
Rを補間計算付きで参照して基本特性値ISCTWを設定
した後、ルーチンを抜ける。
【0101】走行暖機は、変速機がDレンジ(1速,2
速…を含む)、あるいは、Nレンジにシフトされた状態
であり、アクセル踏込み、および走行時の違和感を防ぐ
ため実験により走行暖機時の最適な基本特性値ISCTW
を冷却水温TW をパラメータとして求めROM49にテ
ーブル化してストアしておくもので、放置暖機よりも低
い値に設定されている。
【0102】(アイドル目標回転数設定サブルーチン)
図5はメインルーチンにおいて実行(S116参照)される
アイドル目標回転数NSET 設定のサブルーチンである。
【0103】まず、S401で放置/走行暖機判別フラグF
LAGTIS の値を参照し、FLAGTIS =1(放置暖
機)の場合S402へ進み、FLAGTIS =0(走行暖機)
の場合S403へ進む。
【0104】S402へ進むと、冷却水温TW に基づき放置
暖機時目標回転数テーブルTNSETSを補間計算付き
で参照して放置暖機時目標回転数NSETSを設定し、S404
でRAM50の所定アドレスに格納されているアイドル
目標回転数NSET を上記放置暖機時目標回転数NSETSに
て設定した後(NSET ←NSETS)、S406へ進む。
【0105】上記放置暖機時目標回転数テーブルTNS
ETSはROM49に格納されているもので、各領域に
は予め実験などから求めた最適な目標回転数NSETSが格
納されている。また、上記放置暖機時は変速機がPレン
ジにシフトされており、完全に車輌が停止した状態であ
るため、暖機時間を短縮すべく各領域の目標回転数NSE
TSは後述する走行暖機時目標回転数NSETRよりも高い値
に設定されている。
【0106】一方、上記S401で走行暖機(FLAGTIS
=0)と判断されてS403へ進むと、冷却水温TW に基づ
き走行暖機時目標回転数テーブルTNSETRを補間計
算付きで参照して走行暖機時の目標回転数NSETRを設定
し、S405へ進みRAM50の所定アドレスに格納されて
いるアイドル目標回転数NSET を上記走行暖機時目標回
転数NSETRに設定した後(NSET ←NSETR)、S406へ進
む。
【0107】上記走行暖機時目標回転数テーブルTNS
ETRはROM49に格納されているもので、目標回転
数NSETRを冷却水温TW をパラメータとして求めたもの
であり、放置暖機よりも低い値に設定されている。
【0108】そして、S404あるいはS405からS406へ進む
と、ニュートラルスイッチ59がOFF(セレクトレバ
ーがNレンジ以外にセット)かを判断し、OFFの場合
S407へ進み、ONの場合変速機に動力が伝達されておら
ずエンジン1に負荷がかかってないためS409へ進む。
【0109】また、S407へ進むとパーキングスイッチ6
0がOFF(セレクトレバーがPレンジ以外にセット)
かを判断し、OFFの場合セレクトレバーがDレンジ、
1速、2速などの走行レンジにシフトされてエンジンに
負荷がかかっていると判断してS408へ進み、また、ON
の場合セレクトレバーがPレンジにシフトされており、
エンジン1に負荷がかかっていないためS409へ進む。
【0110】上記S407からS408へ進むと、放置/走行暖
機判別フラグFLAGTIS の値を参照し、FLAGTIS
=0(走行暖機)の場合S410へ進み、FLAGTIS =1
(放置暖機)の場合S411へジャンプする。
【0111】S410へ進むと、走行中であるためアイドル
目標回転数NSET を設定値DNAT分シフトアップすべ
く、上記S403で設定した目標回転数NSETRに設定値DN
ATを加算した値でRAM50の所定アドレスに格納さ
れている上記アイドル目標回転数NSET を設定し(NSE
T ←NSETR+DNAT)、S411へ進む。
【0112】S411へ進むとエアコンスイッチ89がON
かを判断し、ONの場合S412へ進み、予め設定した走行
レンジエアコンON時目標回転数下限値DARCONと
上記アイドル目標回転数NSET とを比較し、NSET ≦D
ARCONの場合S413へ進み、上記アイドル目標回転数
NSET をエアコン負荷に対処するための下限リミッタで
ある上記走行レンジエアコンON時目標回転数下限値D
ARCONにて設定した後(NSET ←DARCON)、
ルーチンを抜ける。
【0113】また、上記S411でエアコンスイッチ89が
OFFと判断され、あるいはS412でNSET >DARCO
Nと判断された場合にはそのままルーチンを抜ける。
【0114】一方、S406あるいはS407からS409へ進む
と、エアコンスイッチ89がONかを判断し、ONの場
合S414へ進みアイドル目標回転数NSET と予め設定した
N,PレンジエアコンON時目標回転数下限値NARC
ONとを比較し、NSET ≦NARCONの場合S415へ進
み、上記アイドル目標回転数NSET をエアコンON時の
負荷に対処するための下限リミッタであるN,Pレンジ
エアコンON時目標回転数NARCONにて設定した後
(NSET ←NARCON)、ルーチンを抜ける。また、
S409でエアコンスイッチ89がOFFと判断され、ある
いは、S414でNSET >NARCONと判断された場合、
そのままルーチンを抜ける。
【0115】(クローズド/オープンループ制御判別サ
ブルーチン)図6はメインルーチンにおいて実行(S117
参照)されるクローズド/オープンループ制御判別サブ
ルーチンである。まず、S501で始動後設定時間TMAS
I[SEC ]経過したかを判別すべく、始動後経過時間判
別カウント値COUNTSTの値を参照し、COUNTST
=0の場合、即ち、始動後設定時間経過したと判断した
場合S502へ進み、COUNTST≠0の場合S503へ進み、
始動後経過時間判別カウント値COUNTSTをカウント
ダウンし(COUNTST←COUNTST−1)、エンジ
ン始動後、設定時間を経過しておらずエンジン回転数が
未だ不安定と推定されるためオープンループ制御を選択
すべくS527へジャンプしてクローズド/オープンループ
制御判別フラグFLAGCLをクリアしてルーチンを抜け
る。
【0116】一方、S502へ進むとアイドルスイッチ12
bがONかを判断し、ON(スロットルバルブ11d,
11eが全閉)の場合S504へ進み、OFF(スロットル
バルブ11d,11eが開)の場合、オープンループ制
御を選択すべくS527へジャンプする。
【0117】また、上記S502からS504へ進むとニュート
ラルスイッチ59がONかを判断し、OFFの場合S505
へ進みパーキングスイッチ60がONかを判別し、ON
の場合S509へ進み、OFFの場合S506へ進む。
【0118】S504およびS505でニュートラルスイッチ5
9、パーキングスイッチ60が共にOFFであり、セレ
クトレバーがNレンジ、Pレンジ以外のレンジ、すなわ
ち、走行レンジにセットされていると判断されてS506へ
進むと、ニュートラルスイッチ59、あるいは、パーキ
ングスイッチ60がON後、すなわち、P,Nレンジ移
行後の経過時間が設定時間ATC[SEC ]に達したかを
判別するためのP,Nレンジ移行後経過時間判別カウン
ト値COUNTAT(ダウンカウンタ)に、上記設定時間
ATCに相当する設定値COUNTATC をセットした後
S507へ進み、車速センサ56で検出した車速VSPと予
め設定した走行時クローズド/オープンループ制御を判
別する車速VSPFBA とを比較し、VSP<VSPFBA
の場合S508へ進み、VSP≧VSPFBA の場合オープン
ループ制御を選択すべくS527へ進む。そして、S508へ進
むと第1のクランク角センサ31出力に基づき検出した
エンジン回転数NE と予め設定したクローズド/オープ
ンループ制御判別エンジン回転数RPMFBとを比較し、
NE <RPMFBの場合S513へ進み、NE ≧RPMFBの場
合オープンループ制御を選択すべくS527へ進む。
【0119】また、Nレンジ、あるいはPレンジと判別
されて上記S504あるいはS505からS509へ進むとP,Nレ
ンジ移行後経過時間判別カウント値COUNTATの値を
参照し、COUNTAT=0の場合走行レンジからPレン
ジ、あるいは、Nレンジに移行した後設定時間ATC
[SEC ]経過したと判断してS510へ進む。
【0120】一方、S509でCOUNTAT≠0と判断され
てS511へ進むと上記P,Nレンジ移行後経過時間判別カ
ウント値COUNTATをカウントダウンし(COUNT
AT←COUNTAT−1)、走行レンジからP,Nレンジ
へ移行後、設定時間が経過しておらず、エンジン負荷急
変に伴い未だエンジン回転数が安定していないと推定
し、S527へジャンプしてオープンループ制御を選択す
る。
【0121】また、S509でCOUNTAT=0と判断され
てS510へ進むと車速センサ56で検出した車速VSPと
予め設定した停車時クローズド/オープンループ制御を
判断する車速VSPOPA とを比較し、VSP≧VSPOP
A の場合S512へ進み、上記エンジン回転数NE と前述の
アイドル目標回転数設定サブルーチンで設定したアイド
ル目標回転数NSET に設定値NCLOPを加算した値と
を比較し、NE <NSET +NCLOPの場合S513へ進
み、また、NE ≧NSET +NCLOPの場合、$オープ
ンループ制御を選択すべくS527へジャンプする。
【0122】また、上記S510でVSP<VSPOPA の場
合、あるいは、S512でNE <NSET+NCLOPの場合
には、S513へ進み、エンジン回転数NE とアイドル目標
回転数NSET に設定値DNACFを減算した値とを比較
し、NE <NSET −DNACFの場合にはS517へ進み、
NE ≧NSET −DNACFの場合にはS514へ進む。S514
ではエアコンスイッチ89がOFFか否かを判別し、エ
アコンスイッチ89がONの場合には、S515で、エアコ
ンON→OFF後の経過時間が設定時間AOFF[SEC
]に達したかを判別するためのエアコンON→OFF
後経過時間判別カウント値COUNTA (ダウンカウン
タ)に、上記設定時間AOFFに相当する設定値COU
NTAOFFをセットし(COUNTA ←COUNTAOF
F)、現在エアコンスイッチ89がONでエアコン補正
過渡時のため、オープンループ制御を実行すべくS527へ
ジャンプする。
【0123】一方、S514でエアコンスイッチ89がOF
Fと判断されてS516へ進むと、上記エアコンON→OF
F後経過時間判別カウント値COUNTA の値を参照
し、COUNTA =0の場合、エアコンスイッチ89が
ON→OFF後設定時間AOFF[SEC ]経過したと判
断しS517へ進む。また、COUNTA ≠0の場合S518へ
進み、エアコンON→OFF後経過時間判別カウント値
COUNTA をカウントダウンし(COUNTA ←CO
UNTA −1)、オープンループ制御を選択すべくS527
へ進む。
【0124】そして、上記S513あるいS516からS517へ進
むと、上記アイドル目標回転数NSET からエンジン回転
数NE を減算して差回転ΔNを求め、S519で、上記差回
転ΔNと設定値NDPSとを比較し、ΔN≧NDPSの場合
S520へ進み、ΔN<NDPSの場合S527へ進む。
【0125】S520へ進むと、上記差回転ΔNと設定値D
NFB(但し、DNFB≧NDPS)とを比較し、ΔN≦
DNFBの場合S521へ進み、ΔN>DNFBの場合クロ
ーズドループ制御条件成立と判断してS525へ進み、クロ
ーズドループ制御を選択すべく、クローズド/オープン
ループ制御判別フラグFLAGCLをセットしてルーチン
を抜ける。
【0126】S521へ進むと、後述する加減速補正設定サ
ブルーチンで設定される加減速補正DSHPTの値を参照
し、DSHPT=0の場合S522へ進み、DSHPT≠0の場合S5
23へ進む。
【0127】S522へ進むと後述するダッシュポット補正
値設定ルーチンで設定されるダッシュポット補正値DH
ENBの値を参照し、DHENB≠0の場合S523へ進
み、DHENB=0の場合S524へ進む。
【0128】S523では、加減速補正DSHPT=0、およ
び、ダッシュポット補正値DHENB=0の状態が設定
時間CLSD[sec ]経過したかを判別するための定常
状態移行判別カウント値COUNTCL(ダウンカウン
タ)に上記設定時間CLSDに相当する設定値COUN
TCLSDをセットし(COUNTCL←COUNTCLSD)、
現在、加減速補正あるいはダッシュポット補正が実行さ
れている過渡状態のためオープンループ制御を選択すべ
くS527へ進む。
【0129】一方、S522からS524へ進むと上記定常状態
移行判別カウント値COUNTCLの値を参照し、COU
NTCL=0の場合定常状態でありクローズドループ制御
条件成立と判断し、クローズドループ制御を選択すべく
S525へ進み、COUNTCL≠0の場合S526へ進み、定常
状態移行判別カウント値COUNTCLをカウントダウン
した後(COUNTCL←COUNTCL−1)、S527へ進
む。
【0130】そして、S520あるいはS524からS525へ進む
とクローズド/オープンループ制御判別フラグFLAG
CLをセット(FLAGCL←1、クローズドループ制御選
択)し、ルーチンを抜ける。
【0131】また、S502,S503,S507,S508,S511,S512,S5
15,S518,S519,S523 あるいは、S526からS527へ進むとク
ローズド/オープンループ制御判別フラグFLAGCLを
クリア(FLAGCL←0、オープンループ制御選択)
し、ルーチンを抜ける。
【0132】なお、上記フローチャートによるクローズ
ドループ制御条件をまとめれば以下の〈1〉〜〈7〉の
通りであり、それ以外ではオープンループ制御となる。
【0133】〈1〉始動後、所定時間TMASI[sec
]経過していること 〈2〉アイドルスイッチ12bがONであること 〈3〉(i)ニュートラルスイッチ59、または、パー
キングスイッチ60がONで、車速VSP<VSPOPA
であること 又は(ii)ニュートラルスイッチ59、またはパーキ
ングスイッチ60がONで、VSP≧VSPOPA [Km/
h]ではあるが、エンジン回転数NE <(NSET+NCL
OP)[rpm ]であること 又は(iii)ニュートラルスイッチ59、およびパー
キングスイッチ60がともにOFFで、車速VSP<V
SPFBA [Km/h]、かつ、エンジン回転数NE<RPMF
B[rpm ]であること 〈4〉(i)エアコンスイッチ89がONで、エアコン
過渡補正値ISCACF=0、あるいは、ISCACF ≠0
[%]であっても、エンジン回転数NE <(NNSET −
DNACF)[rpm ]であること 又は(ii)エアコンスイッチ89がOFFで、ON→
OFF後所定時間AOFF[sec ]経過後、あるいは、
エンジン回転数NE <(NSET −DNACF)[rpm ]
であること 〈5〉ニュートラルスイッチ59、あるいは、パーキン
グスイッチ60がONで、OFF→ON後所定時間AT
C[sec ]経過後であること 〈6〉パワステ補正値ISCPS=0、あるいは、ISC
PS≠0[%]であっても、差回転ΔN≧NDPS[rpm ]
であること 〈7〉(i)〈1〉〜〈6〉を全て満たし、かつ、加減
速補正DSHPT=0[%]およびダッシュポット補正DH
ENB=0[%]の状態が所定時間CLSD[sec ]継
続しているか、または、所定時間CLSD[sec ]継続
していない場合でも差回転ΔN>DNFB[rpm ]であ
ること 又は(ii)〈1〉〜〈6〉を全て満たし、かつ、加減
速補正DSHPT≠0[%]およびダッシュポット補正DH
ENB≠0[%]でも、差回転ΔN>DNFB[rpm ]
であること (エアコン補正値設定サブルーチン)図7,図8は、5
1.2msec毎に割込み実行される補正値設定ルーチンにお
いて実行(S201参照)されるエアコン補正値ISCAC設
定のサブルーチンである。
【0134】まず、S601でニュートラルスイッチ59が
ONかどうかを判断し、OFFの場合S602へ進み、ON
の場合Nレンジと判断してS603へ進む。
【0135】S602へ進むとパーキングスイッチ60がO
Nかを判断し、ONの場合、Pレンジと判断してS603へ
進み、OFFの場合、走行レンジと判断してS604へ進
む。
【0136】S603へ進むと走行レンジ判別フラグFLA
GATをクリア(FLAGAT←0、NまたはPレンジ)し
S605へ進み、また、S604へ進むと走行レンジ判別フラグ
FLAGATをセット(FLAGAT←1、走行レンジ)し
S605へ進む。
【0137】S605ではエアコンスイッチ89がONかを
判断し、ONの場合S606へ進み、OFFの場合S607へ進
み、エアコンスイッチ89がONしたときから設定時間
AON[sec ]経過したかを判別するためのエアコン過
渡補正終了判別カウント値COUNTAC(ダウンカウン
タ)に、上記設定時間AONに相当する設定値COUN
TAON をセット(COUNTAC←COUNTAON )し、
S620へ進む。
【0138】上記S605でエアコンスイッチ89がONと
判断されてS606へ進むと、エアコン過渡補正終了判別カ
ウント値COUNTACの値を参照し、COUNTAC≠0
の場合、エアコンスイッチOFF→ON後設定時間AO
N経過していないと判断し、S608へ進み、また、COU
NTAC=0の場合エアコンスイッチOFF→ON後設定
時間AON経過したと判断してS611へ進む。
【0139】S608へ進むとエアコン過渡補正終了判別カ
ウント値COUNTACをカウントダウンした後(COU
NTAC←COUNTAC−1)、S609へ進みエンジン回転
数NE とアイドル目標回転数NSET に設定値DNACを
加算した設定上限値とを比較しNE ≦NSET +DNAC
の場合エンジン回転数NE が設定回転数より低いと判断
しS610へ進み、また、NE >NSET +DNACの場合エ
ンジン回転数NE が設定回転数より高いと判断してS611
へ進む。
【0140】S610へ進むと走行レンジ判別フラグFLA
GATの値を参照し、FLAGAT=1(走行レンジ)の場
合S612へ進み、FLAGAT=0(NまたはPレンジ)の
場合S613へ進む。
【0141】S612へ進むとエアコン過渡補正値ISCAC
F を設定値ACFFDにて初期値設定した後(ISCAC
F ←ACFFD[%])、S616へ進む。また、S613へ進
むとエアコン過渡補正値ISCACF を設定値ACFFN
にて初期値設定した後(ISCACF ←ACFFN
[%])、S616へ進む。
【0142】一方、上記S606あるいはS609からS611へ進
むと、エアコン過渡補正値ISCACF が0[%]以下か
を判断し、ISCACF ≦0の場合S614へ進み、上記エア
コン過渡補正値ISCACF を0[%]に設定した後(I
SCACF ←0)、S616へ進む。また、ISCACF >0の
場合、エアコン過渡補正値ISCACF から設定値DAC
FFを減算した値で上記エアコン過渡補正値ISCACF
を更新した後(ISCACF ←ISCACF −DACF
F)、S616へ進む。
【0143】上記S612〜S615のいずれかからS616へ進む
と走行レンジ判別フラグFLAGATの値を参照し、FL
AGAT=1、(走行レンジ)の場合S617へ進み、FLA
GAT=0(P,Nレンジ)の場合S618へ進む。
【0144】S617へ進むとエアコン定常補正値ISCAC
S を設定値ACDTYで設定した後(ISCACS ←AC
DTY)、S619へ進む。また、S618へ進むとエアコン定
常補正値ISCACS をバックアップRAM50aの所定
アドレスから読出したエアコン学習補正値MACDTY
(後述するエアコン補正学習ルーチンで設定される)で
設定した後(ISCACS ←MACDTY)、S619へ進
む。
【0145】上記S617あるいはS618からS619へ進むと、
上記エアコン過渡補正値ISCACFに上記エアコン定常
補正値ISCACS を加算した値でエアコン補正値ISC
AC[%]を設定し(ISCAC←ISCACF +ISCACS
)、ルーチンを抜ける。
【0146】一方、上記S607からS620へ進むと、エアコ
ン補正値ISCACを読出し、エアコン補正値ISCACが
0[%]以下かを判断し、ISCAC≦0の場合S621へ進
みエアコン補正値ISCACを0[%]に設定した後(I
SCAC←0)、ルーチンを抜ける。
【0147】また、ISCAC>0の場合S622へ進み、上
記エアコン補正値ISCACと設定値ISCACD [%]
(0%に近い値)とを比較し、ISCAC≧ISCACD の
場合S623へ進み、ISCAC<ISCACD の場合エアコン
補正値ISCACが0[%]に近づいているため制御ハン
チングを防止し収束性を良くするため減算量を少くすべ
く、S624へ進む。
【0148】S623へ進むと走行レンジ判別フラグFLA
GATの値を参照し、FLAGAT=1(走行レンジ)の場
合S626へ進み減量値DSACを設定値DSAC1D
[%]で設定して(DSAC←DSAC1D)、S630へ
進む。また、FLAGAT=0(P,Nレンジ)の場合S6
27へ進み減量値DSACを設定値DSAC1Nで設定し
て(DSAC←DSAC1N)、S630へ進む。
【0149】また、上記S622からS624へ進むと走行レン
ジ判別フラグFLAGATの値を参照し、FLAGAT=1
(走行レンジ)の場合S628へ進み減量値DSACを設定
値DSAC2D(但し、DSAC1D>DSAC2D)
で設定し(DSAC←DSAC2D)、S630へ進む。ま
た、FLAGAT=0(P,Nレンジ)の場合S629へ進
み、減量値DSACを設定値DSAC2N(但し、DS
AC1N>DSAC2N)で設定した後(DSAC←D
SAC2N)、S630へ進む。
【0150】上記S626〜S629の何れかからS630へ進むと
エアコン補正値ISCACを上記減量値DSACで減算し
た後(ISCAC←ISCAC−DSAC)、ルーチンを抜
ける。
【0151】上記エアコン補正値設定の代表例を図29
のタイムチャートにしたがって説明する。
【0152】エアコンスイッチ89をOFFからONに
セットすると、設定時間AON[sec ]の間エアコン補
正値ISCACが予め設定されたエアコン定常補正値IS
CACS (ACDTY,あるいは、MACDTY)とエア
コン過渡補正値ISCACF (ACFFD、あるいは、A
CFFN)とを加算した値に設定され(経過時間t1〜2
)、設定時間AON[sec ]の間、エンジン回転数NE
がアイドル目標回転数NSET に設定値DNACを加算
した回転数に近づくように制御される。
【0153】すなわち、エアコン補正値ISCACがエア
コン過渡補正値ISCACF を加算していない値で設定さ
れると、エアコンスイッチ89をONした直後にエアコ
ンコンプレッサ駆動による負荷が急にエンジンにかかる
ため、図(c)の破線で示すようにエンジン回転数が大
きく変動しフィーリングが悪化する。
【0154】したがって、エアコンスイッチ89がON
後、設定時間AONの間、エアコン過渡補正値ISCAC
F によりエアコン補正値ISCACを大きくしてISCバ
ルブ13に対するデューティ比ISCONを大きくし、I
SCバルブ13の開度を増大させて空気量を増加させる
ことで、エアコンスイッチON直後のエアコンコンプレ
ッサ駆動による急激な負荷変動に伴うエンジン回転数N
E の落ち込みを防止し、図(c)の実線で示すように安
定したフィーリングを得ることができる。
【0155】そして、設定時間AON[sec ]経過する
と、上記エアコン過渡補正値ISCACF を0になるまで
演算サイクルごとに設定値DACFFずつ減量する(経
過時間t2 〜t3 )。このように、エアコン過渡補正値
ISCACF を経時的に徐々に減少させることで、エアコ
ン駆動時のアイドルアップ回転数へエンジン回転数NE
をスムーズに移行させることができる。
【0156】その後、上記エアコンスイッチ89をOF
Fすると(経過時間t4 )、上記エアコン補正値ISC
ACを演算サイクルごとに設定値DSAC1DあるいはD
SAC1Nだけ、上記エアコン補正値ISCACを設定値
ISCACDになるまで減量する。
【0157】そして、上記エアコン補正値ISCACが設
定値ISCACDに達したら(経過時間t5 )、上記エ
アコン補正値ISCACを演算サイクルごとに設定値DS
AC2DあるいはDSAC2Nずつ0になるまで減量す
る。
【0158】すなわち、エアコンスイッチ89をONか
らOFFにしたとき、上記エアコン補正値ISCACをい
きなり0にすると、特に可変容量エアコンコンプレッサ
64を用いているため、エアコンスイッチON→OFF
後所定時間内はエアコンクラッチリレー65が未だON
(接続)しており、かつ、エアコン容量制御により、エ
アコンコンプレッサ駆動によるエンジンに対する負荷が
残っているため、図(c)の破線で示すようにエンジン
回転数落ちが生じてしまう。
【0159】また、エアコンスイッチ89のOFF後、
大きいままの減量値で上記エアコン補正値ISCACを減
量すると図(c)の一点鎖線で示すようにISCAC=0
近傍におけるエンジン回転数NE の収束性が悪くなる。
【0160】従って、エアコンスイッチ89のOFF
後、エアコン補正値ISCACが設定値ISCACDに低
下するまでの間、エアコン補正値ISCACを演算周期ご
とに第1の減算値ずつ減量し、ISCバルブ13の開度
を徐々に減じて空気量を徐々に減少させることで、エア
コンスイッチをOFFした直後に残っているエアコンコ
ンプレッサ64からのフリクションによるエンジン回転
数落ちを防止し、その後、エアコン補正値ISCACが設
定値ISCACD以下に低下したら、エアコン補正値I
SCACを演算周期ごとに第1の減算値よりも小さい第2
の減算値ずつ0になるまで減量し、エアコン補正値IS
CACを用いて設定されるデューティ比ISCONの減少率
を小さくしてISCバルブ13の開度減少率を小さくす
ることで、エアコンOFF時のアイドル目標回転数NSE
T に近付く際のエンジン回転数NEの低下速度を減少さ
せてエンジン回転数NE の目標回転数に対する収束性を
向上する。
【0161】(エアコン補正学習ルーチン)図9はエア
コンスイッチ89のOFF→ON時に割込み実行するル
ーチンで、まず、S101でクローズド/オープンループ制
御判別フラグFLAGCLの値を参照し、FLAGCL=1
(クローズドループ制御中)の場合S702へ進み、FLA
GCL=0(オープンループ制御中)の場合S707へ進む。
【0162】S702へ進むと、後述するクローズドループ
補正I分更新ルーチンで設定される現在のフィードバッ
ク補正値であるクローズドループ補正I分ISCI を読
出しRAM50の所定アドレスに現在のフィードバック
制御値MISCIとして格納し(MISCI←IS
I )、S703でタイマTIMERLRN をスタートさせ、
S704でエアコンスイッチ89がONかを判断し、ONの
場合S705へ進み、OFFの場合S707へ進む。S705へ進む
とクローズド/オープンループ制御判別フラグFLAG
CLの値を参照し、FLAGCL=1(クローズドループ制
御中)の場合S706へ進み、FLAGCL=0(オープンル
ープ制御中)の場合S707へ進む。
【0163】S706へ進むとタイマTIMERLRN の計時
と予め設定した時間TACLRNとを比較し、TIME
RLRN ≧TACLRNの場合、エアコンスイッチ89が
ONの状態がクローズドループ制御中で設定時間経過し
たと判断してS708へ進み、また、TIMERLRN <TA
CLRNの場合S704へ戻る。
【0164】一方、上記S701,S704あるいは、S705から
S707へ進むとタイマTIMERLRNをリセット(TIM
ERLRN ←0)した後、ルーチンを抜ける。
【0165】また、上記S708へ進むとタイマTIMER
LRN をリセット(TIMERLRN ←0)した後、S709で
現時点のクローズドループ補正I分ISCI を読出し、
RAM50の所定アドレスに設定時間TACLRN経過
後のフィードバック制御値LISCI として格納する。
【0166】そして、S710へ進み、バックアップRAM
50aの所定アドレスに格納されているエアコン補正学
習値MACDTYを次式から求めた値で更新し、ルーチ
ンを抜ける。
【0167】MACDTY←MACDTY+[(LIS
CI −MISCI)×KACON] KACON:I分移行率 図10はエアコンスイッチ89のON→OFF時に割込
み実行するルーチンで、まず、S801でクローズド/オー
プンループ制御判別フラグFLAGCLの値を参照し、F
LAGCL=1(クローズドループ制御中)の場合S802へ
進み、FLAGCL=0(オープンループ制御中)の場
合、そのままルーチンを抜ける。
【0168】S802へ進むとRAM50の所定アドレスに
格納されているフィードバック制御値MISCI(エア
コンスイッチ89がOFF→ON時の値)、を読出し、
S803で現在のクローズドループ補正I分ISCI を読出
し、RAM50の所定のアドレスに現在のフィードバッ
ク制御値LISCI として格納する(LISCI ←IS
I )。
【0169】そして、S804へ進み、バックアップRAM
50aの所定アドレスに格納されているエアコン補正学
習値MACDTYを次式から求めた値で更新し、ルーチ
ンを抜ける。
【0170】MACDTY←MACDTY+[(LIS
CI −MISCI)×KACON] 以上のように、エアコンON時、クローズドループ制御
中の場合、そのときのフィードバック制御値MISCI
とその後同一条件(クローズドループ制御中、かつ、エ
アコンスイッチ89がONの状態)が設定時間TACL
RN継続した時のフィードバック制御値LISCIとの
差に基づきエアコン補正学習値MACDTYを設定し、
前述のエアコン補正値設定サブルーチンにおいてP,N
レンジにおけるエアコン補正値ISCACを設定する際
に、エアコン定常補正値ISCACSとしてエアコン補正
学習値MACDTYを用いることでISCバルブ13の
経年劣化などを補償し、エアコンON時において所定の
アイドルアップを常に行うことができる。なお、走行レ
ンジ時においてはエンジン負荷がN,Pレンジに較べて
相対的に大きくなるためISCバルブ13の劣化の影響
は少なく、したがって、学習補正値を用いる必要はな
い。
【0171】また、エアコンスイッチ89がOFF→O
N時の割込みのみならず、ON→OFF時の割込みをも
実行することで、その後に上記エアコンスイッチ89が
OFF→ON時に実行する割込みルーチンで設定するエ
アコン補正学習値MACDTYと前回のOFF→ON時
に設定したエアコン補正学習値MACDTYとの間のず
れを補償することができる。
【0172】(AT車走行レンジ補正値設定サブルーチ
ン)図11,図12は51.2msec毎に割込み実行される補
正値設定ルーチンにおいて実行(S202参照)されるAT
車走行レンジ補正値ISCATDS設定のサブルーチンであ
る。
【0173】まず、S901で前述したエアコン補正値設定
サブルーチンで設定される走行レンジ判別フラグFLA
GATの値を参照し、FLAGAT=1(走行レンジ)の場
合S902へ進み、FLAGAT=0(P,Nレンジ)の場合
S903へ進む。 S902へ進むと、後述するS913で設定する
P,Nレンジから走行レンジへシフトした際の遅れ時間
ISCAT1[sec ]に相当する走行レンジ移行判別カ
ウント値COUNTAT1 (ダウンカウンタ)の値を参照
し、COUNTAT1 =0の場合S904へ進む。さらに、C
OUNTAT1 ≠0の場合S905へ進み、走行レンジ移行判
別カウント値COUNTAT1 をカウントダウンして(C
OUNTAT1 ←COUNTAT1 −1)S908へ進む。
【0174】また、上記S902で走行レンジ状態(ニュー
トラルスイッチ59、パーキングスイッチ60が共にO
FF)が遅れ時間ISCAT1以上継続した(COUN
TAT1 =0)と判断してS904へ進むと、RAM50の所
定アドレスに格納されているAT車走行レンジ補正値I
SCATDSと設定値DRGDTYとを比較し、ISCATDS
≧DRGDTYの場合、S906へ進み上記AT車走行レン
ジ補正値ISCATDSを上記設定値DRGDTYで設定し
て(ISCATDS←DRGDTY)、S908へ進む。また、
ISCATDS<DRGDTYの場合、S907へ進み上記AT
車走行レンジ補正値ISCATDSに小量設定値DLTAT
1(但し、DLTAT1<DRGDTY)を加算した値
で上記AT車走行レンジ補正値ISCATDSを更新して
(ISCATDS←ISCATDS+DLTAT1)、S908へ進
む。
【0175】そして、S905,S906、あるいは、S907から
S908へ進むと走行レンジからN,Pレンジへシフトした
際の遅れ時間ISCAT2 [sec ]に相当する設定値CO
UNTISCAT2でN,Pレンジ移行判別カウント値COU
NTAT2 (ダウンカウンタ)をセットして(COUNT
AT2 ←COUNTISCAT2)、ルーチンを抜ける。
【0176】一方、S901でN,Pレンジ(FLAGAT=
0)と判断されてS903へ進むと、N,Pレンジ移行判別
カウント値COUNTAT2 の値を参照し、COUNTAT
2 ≠0の場合S909へ進み、上記カウント値COUNTAT
2 をカウントダウンして(COUNTAT2 ←COUNT
AT2 −1)、S913へ進む。
【0177】また、上記S903でCOUNTAT2 =0と判
断されてS910へ進むと、上記AT車走行レンジ補正値I
SCATDSが0以下かを判断し、ISCATDS>0の場合S9
11へ進みAT車走行レンジ補正値ISCATDS小量から設
定値DLTAT2を減算した値で上記AT車走行レンジ
補正値ISCATDSを設定して(ISCATDS←ISCATDS
−DLTAT2)、S913へ進む。また、ISCATDS≦0
の場合S912へ進み上記AT車走行レンジ補正値ISCAT
DSを0[%]に設定(ISCATDS←0)して、S913へ進
む。
【0178】そして、S909,S911、あるいは、S912から
S913へ進むと、N,Pレンジから走行レンジへシフトし
た際の遅れ時間ISCAT1[sec ]に相当するカウン
ト値COUNTISCAT1で走行レンジ移行判別カウント値
COUNTAT1 をセットした後(COUNTAT1 ←CO
UNTISCAT1)、ルーチンを抜ける。
【0179】上記AT車走行レンジ補正値設定の代表例
を図30のタイムチャートに従って説明する。
【0180】N,Pレンジ(FLAGAT=0)から走行
レンジ(FLAGAT=1)にシフトすると(経過時間t
1 )、所定遅れ時間ISCAT1[sec ]の計時が開始
され、この遅れ時間ISCAT1[sec ]経過後、演算
サイクルごとに小量の設定値DLTAT1[%]を加算
し(ISCATDS←ISCATDS+DLTAT1)、AT車
走行レンジ補正値ISCATDS[%]が設定値DRGDT
Y[%]に達したら(経過時間t2 )、上記AT車走行
レンジ補正値ISCATDS[%]を上記設定値DRGDT
Y[%]で固定する(経過時間t2 〜t3 )。
【0181】N,Pレンジから走行レンジへシフトした
際、微小の遅れ時間をもってエンジンに負荷がかかるた
め、ただちにAT車走行レンジ補正値ISCATDSを0→
設定値DRGDTY[%]に設定すると図(c)の破線
で示すようにエンジン回転数NE が一時的に上昇してフ
ィーリングが悪化する。
【0182】また、AT車走行レンジ補正を行わないと
N,Pレンジから走行レンジにシフトしたとき急激にエ
ンジン負荷がかかり、図(c)の二点鎖線で示すように
エンジン回転数が低下してしまい、クローズドループ補
正I分ISCI によってエンジン回転数が収束するまで
に時間がかかってしまう。
【0183】従って、走行レンジにシフトした際、エン
ジン負荷の伝達遅れ時間に相当する所定遅れ時間ISC
AT1 経過後に、AT車走行レンジ補正値ISCATDSを設
定値DRGDTYに達するまで徐々に増加させてAT車
走行レンジ補正値ISCATDSを用いて設定されるデュー
ティ比ISCONを徐々に増加し、ISCバルブ13によ
り空気量を徐々に増加させることで、エンジン回転数変
動が防止され、フィーリングが向上する。
【0184】一方、走行レンジ(FLAGAT=1)から
N,Pレンジ(FLAGAT=0)にシフトすると(経過
時間t3 )、所定遅れ時間ISCAT2[sec ]の計時
が開始され、この遅れ時間ISCAT2[sec ]経過
後、AT車走行レンジ補正値ISCATDSを演算サイクル
ごとに小量の設定値DLTAT2[%]で0になるまで
減算する(ISCATDS←ISCATDS−DLTAT2、経
過時間t4 )。
【0185】走行レンジからN,Pレンジへシフトした
際、微小の遅れ時間をもってエンジン負荷が急減するた
め、直ちにAT車走行レンジ補正値ISCATDSを0にす
ると、変速機側のエンジンへの負荷が完全にはなくなっ
ていないので、図(c)の破線で示すようにエンジン回
転数が一時的に低下しフィーリングが悪化する。
【0186】また、AT車走行レンジ補正を行わないと
走行レンジからN,Pレンジへシフトした際、急激にエ
ンジン負荷が減少するため頭(c)の二点鎖線で示すよ
うにエンジン回転数の吹上りを生じフィーリングが悪く
なる。
【0187】従って、N,Pレンジへシフトした際、所
定遅れ時間ISCAT2 経過後に、AT車走行レンジ補正
値ISCATDSを0[%]になるまで徐々に減少させてデ
ューティ比ISCONを徐々に減じ、ISCバルブ13に
より空気量を徐々に減少させることで、このときのエン
ジン回転数変動を防止し、フィーリングを向上する。
(加減速補正設定サブルーチン)図13,図14は51.2
msec毎に割込み実行される補正値設定ルーチンにおいて
実行(S203参照)される加減速補正DSHPT設定のサ
ブルーチンである。
【0188】まず、S1001 でアイドルスイッチ12bが
OFFかを判断し、OFF(スロットルバルブ11d,
11eが開)の場合S1002 へ進み、ON(スロットルバ
ルブ11d,11eが全閉)の場合S1003 へ進む。
【0189】S1002 へ進むと走行レンジ判別フラグFL
AGATの値を参照し、FLAGAT=0(N,Pレンジ)
の場合S1004 へ進み、FLAGAT=1(走行レンジ)の
場合S1005 へ進む。
【0190】S1004 へ進むとスロットル開度センサ12
aで検出したスロットル開度THVに基づきROM49
の一連のアドレスに格納されているN,Pレンジ用加減
速補正テーブルTDASHNを補間計算付きで参照して
加減速補正DSHPT[%]を設定した後S1006 へ進
む。
【0191】また、S1002 からS1005 へ進むと上記スロ
ットル開度THVに基づきROM49の一連のアドレス
に格納されている走行レンジ用加減速補正テーブルTD
ASHDを補間計算付きで参照して加減速補正DSHP
T[%]を設定した後S1006へ進む。
【0192】セレクトレバーがNレンジあるいはPレン
ジにシフトされている状態ではエンジンに負荷がかかっ
ておらず、スロットルバルブ11d,11eが開となる
場合はレーシング、空吹かしなどの状態であり、スロッ
トル開度変化に応じるエンジン回転数NE の変化が走行
レンジのときよりも大きい。
【0193】したがって、N,Pレンジ用加減速補正テ
ーブルTDASHNの各領域に格納されているスロット
ル開度THVに対応する加減速補正DSHPTは、走行
レンジ時に採用する走行レンジ用加減速補正テーブルT
DASHDに格納されている加減速補正DSHPTに比
し大きな値に設定されており、これにより、エンジン負
荷に応じた制御性を得ることができる。
【0194】そして、S1004 あるいはS1005 からS1006
へ進むと上記加減速補正DSHPTでRAM50の所定
アドレスに格納されている今回の加減速補正(DSHP
T)NEW を設定する((DSHPT)NEW ←DSHP
T)。
【0195】その後、S1007 へ進むと、上記今回の加減
速補正(DSHPT)NEW と、前回のルーチンで設定し
た加減速補正(DSHPT)OLD とを比較し、(DSH
PT)NEW <(DSHPT)OLD (スロットル開度減
少)の場合S1008 へ進み、(DSHPT)NEW ≧(DS
HPT)OLD (スロットル開度増加あるいは変化なし)
の場合S1030 へジャンプする。
【0196】S1008 へ進むと走行レンジ判別フラグFL
AGATの値を参照し、FLAGAT=0(N,Pレンジ)
の場合S1009 へ進み、FLAGAT=1(走行レンジ)の
場合S1010 へ進む。
【0197】S1009 へ進むと設定値DDASHNで減量
値DDASH[%]を設定して(DDASH←DDAS
HN)、S1011 へ進む。また、S1010 へ進むと設定値D
DASHD(但し、DDASHN>DDASHD)で減
量値DDASH[%]を設定して(DDASH←DDA
SHD)、S1011 へ進む。
【0198】なお、スロットル開度減少時のエンジン回
転数落ちは走行レンジの際よりも無負荷状態であるN,
Pレンジの方が敏速であるため、(DSHPT)NEW <
(DSHPT)OLD のときの加減速補正値DSHPTの
減量値DDASHをN,Pレンジのときには走行レンジ
に比し大きく設定している。
【0199】そして、S1011 へ進むと前回の加減速補正
(DSHPT)OLD から上記減量値DDASHを減算し
た値で加減速補正値DSHPTを設定する(DSHPT
←(DSHPT)OLD −DDASH)。
【0200】一方、上記S1001 でアイドルスイッチ12
bがONのスロットル全閉状態と判断されてS1003 へ進
むと、走行レンジ判別フラグFLAGATの値を参照し、
FLAGAT=0(N,Pレンジ)の場合S1012 へ進み、
FLAGAT=1(走行レンジ)の場合S1013 へ進む。
【0201】S1012 へ進むと設定値NDASHN[%]
でオフセット値NDASHを設定し(NDASH←ND
ASHN)、また、S1013 へ進むと設定値NDASHD
(但し、NDASHN>NDASHD)[%]でオフセ
ット値NDASHを設定し(NDASH←NDASH
D)、その後、それぞれS1014 へ進む。
【0202】そして、S1014 へ進むとエンジン回転数N
E とアイドル目標回転数NSET に上記オフセット値ND
ASHを加算した値とを比較し、NE ≧NSET +NDA
SHの場合S1015 へ進み、NE <NSET +NDASHの
場合S1016 へ進む。
【0203】S1015 へ進むと走行レンジ判別フラグFL
AGATの値を参照し、FLAGAT=0(N,Pレンジ)
の場合S1017 へ進みダッシュポット保持値RDASHを
予め設定した設定値RDASHN[%]で設定し(RD
ASH←RDASHN)、また、FLAGAT=1(走行
レンジ)の場合S1018 へ進みダッシュポット保持値RD
ASHを予め設定した設定値RDASHD[%]で設定
し(RDASH←RDASHD)、その後、S1019 へそ
れぞれ進む。
【0204】そして、S1019 へ進むとRAM50の所定
アドレスに格納されている現時点の加減速補正DSHP
Tを読出し、この加減速補正DSHPTと上記ダッシュ
ポット保持値RDASHとを比較し、DSHPT≦RD
ASHの場合S1020 へ進み、上記ダッシュポット保持値
RDASHにて加減速補正DSHPTを設定し(DSH
PT←RDASH)、S1030 へ進む。
【0205】また、S1019 でDSHPT>RDASHと
判断されてS1021 へ進むと走行レンジ判別フラグFLA
GATの値を参照し、FLAGAT=0(N,Pレンジ)の
場合S1022 へ進み、FLAGAT=1(走行レンジ)の場
合S1023 へ進む。
【0206】S1022 へ進むと設定値DDSH1N[%]
で第1の減量値DDSH1を設定し(DDSH1←DD
SH1N)、また、S1023 へ進むと設定値DDSH1D
(但し、DDSH1D<DDSH1N)[%]で第1の
減量値DDSH1を設定し(DDSH1←DDSH1
D)、その後、S1024 へそれぞれ進む。
【0207】そして、S1024 へ進むと加減速補正DSH
PTから上記第1の減量値DDSH1を減算した値で上
記加減速補正DSHPTを更新し(DSHPT←DSH
PT−DDSH1)、S1030 へ進む。
【0208】一方、S1014 でNE <NSET +NDASH
と判断されてS1016 へ進むと、加減速補正DSHPTが
0以下かを判断し、DSHPT≦0の場合S1025 へ進
み、加減速補正DSHPTを0に固定(DSHPT←
0)した後、S1030 へ進む。また、DSHPT>0の場
合S1026 へ進む。
【0209】S1026 へ進むと、走行レンジ判別フラグF
LAGATの値を参照し、FLAGAT=0(N,Pレン
ジ)の場合S1027 へ進み、FLAGAT=1(走行レン
ジ)の場合1028へ進む。
【0210】S1027 へ進むと設定値DDSH2N(但
し、DDSH1N>DDSH2N)[%]で第2の減量
値DDSH2を設定し(DDSH2←DDSH2N)、
また、S1028 へ進むと設定値DDSH2D(但し、DD
SH1D>DDSH2D)[%]で第2の減量値DDS
H2を設定し(DDSH2←DDSH2D)、それぞれ
S1029 へ進む。
【0211】S1029 では加減速補正DSHPTから上記
第2の減量値DDSH2を減算した値で上記加減速補正
DSHPTを更新した後(DSHPT←DSHPT−D
DSH2)、S1030 へ進む。
【0212】上記第1,第2の減量値DDSH1,DD
SH2を設定する各設定値DDSH1N,DDSH2
N,DDSH1D,DDSH2DをDDSH1N>DD
SH2N,DDSH1D>DDSH2Dに設定したこと
で、スロットル全閉時エンジン回転数NE がアイドル目
標回転数NSET に低下する際に、エンジン回転数NE が
アイドル目標回転数NSET に近付いたら加減速補正DS
HPTに対する減量値を小さな値とすることにより、エ
ンジン回転数NE のアイドル目標回転数NSET への収束
性がよくなり、制御ハンチングを防止することができ
る。
【0213】そして、S1007,S1011,S1020,S1024,S1025
あるいは、S1029 からS1030 へ進むと、S1004,S1005,S1
011,S1020,S1024,S1025,あるいは、S1029 で設定した加
減速補正DSHPTでRAM50の所定アドレスに格納
されている前回の加減速補正(DSHPT)OLD を更新
し((DSHPT)OLD ←DSHPT)、ルーチンを抜
ける。
【0214】上記加減速補正設定の代表例を図31のタ
イムチャートに従って説明する。
【0215】アイドルスイッチ12bがON(スロット
ルバルブ11d,11eが全閉)からOFF(スロット
ルバルブ11d,11eが開)になり(経過時間t1
)、スロットル開度THVが次第に大きくなる加速運
転では、エンジン回転数NE がスロットル開度THVに
応じて上昇する。このとき、スロットル開度THVに基
づいて設定する加減速補正DSHPTが演算周期ごとに
上昇し、この加減速補正DSHPT(ISCTR)を取入
れて設定するISCバルブ13のデューティ比ISCON
が大きくなり、ISCバルブ13の開度が増大される
(経過時間t1 〜t2およびt3 〜t4 )。
【0216】また、スロットル開度THVがほぼ一定の
定常運転では上記加減速補正DSHPTが一定になる
(経過時間t2 〜t3 、およびt4 〜t5 )。
【0217】スロットルバルブ11d,11eが急閉す
ると吸気管圧力が急速に低下し、吸気ポート4、およ
び、インテークマニホルド5の内壁面等に付着していた
付着燃料が燃焼室に一気に吸込まれると共に、スロット
ルバルブ11d,11eの急閉に伴う吸入空気量の減少
により空燃比のオーバーリッチが生起されるが、スロッ
トルバルブ11d,11eの閉弁移行時(経過時間t5
)において、スロットル開度THVに応じて加減速補
正DSHPTが設定されており、この加減速補正DSH
PT分、デューティ比ISCONが大きく設定されること
により、スロットル開度THVに比例してISCバルブ
13の開度が確保され、スロットルバルブ11d,11
eの閉弁移行後、アイドルスイッチ12bがON(スロ
ットル全閉)するまでの間(経過時間t5 〜t6 )、加
減速補正DSHPTはスロットルバルブ11d,11e
の閉弁速度に拘らず、演算周期(51.2msec)毎に設定値
DDASHずつ減少されるため、この間、ISCバルブ
13によって空気量が確保されると共に、吸気管圧力の
低下が補償され、空燃比のオーバーリッチが防止され
る。これによって、スロットルバルブ急閉直後の空燃比
オーバーリッチに起因する失火、異常燃焼が防止され
て、排気エミッションが改善される。
【0218】なお、スロットル開弁状態からスロットル
全閉状態に移行する際の加減速補正DSHPTは、スロ
ットル開度THVに応じた値に設定されているので、ス
ロットル全閉移行後のダッシュポット期間が常に適正に
得られる。
【0219】そして、アイドルスイッチ12bがONす
るとダッシュポット保持値RDASHまで上記加減速補
正DSHPTを演算周期ごとに第1の設定値DDSH1
(但し、DDASH>DDSH1>DDSH2)ずつ減
少させる(経過時間t6 〜t7 )。これにより、スロッ
トル全閉移行時には加減速補正DSHPTの減少率が比
較的大きくなり、目標回転数への復帰時間が短縮され
る。
【0220】その後、加減速補正DSHPTが上記ダッ
シュポット保持値RDASHに達したら、この値を、上
記エンジン回転数NE がアイドル目標回転数NSET にオ
フセット値NDASHを加算した値に低下するまで維持
し(経過時間t7 〜t8 )、エンジン回転数NE がアイ
ドル目標回転数NSET にオフセット値NDASHを加算
した値により低下したら、上記エンジン回転数NE がア
イドル目標回転数NSET に達するまで、上記第1の減量
値DDSH1より小さい値の第2の減量値DDSH2で
上記加減速補正DSHPTを演算周期ごとに減算する
(経過時間t8 以後)。
【0221】その結果、アイドルスイッチ12bのON
後、エンジン回転数NE がアイドル目標回転数NSET に
達するまでの間、上記加減速補正DSHPTを用いて設
定されるデューティ比ISCONの減少率が順次小さくな
り、ISCバルブ13の開度減少率も順次小さくなる。
これにより、アイドル目標回転数NSET に近付く際のエ
ンジン回転数NE の低下速度を減少させ、エンストを防
止すると共に、エンジン回転数NE のアイドル目標回転
数NSET への収束性を向上する。
【0222】(ダッシュポット補正値設定割込みルーチ
ン)図15は設定時間毎、例えば100msec 毎に割込み実
行するダッシュポット補正値設定ルーチンである。
【0223】まず、S1101 でアイドルスイッチ12bが
ONかを判断し、ON(スロットルバルブ11d,11
eが全閉)の場合S1102 へ進み、OFF(スロットルバ
ルブ11d,11eが開)の場合S1104 へ進む。
【0224】S1102 ではエンジン回転数NE と予め設定
したダッシュポット判別回転数DHEKNとを比較し、
NE <DHEKNの場合S1103 へ進み、NE ≧DHEK
Nの場合S1104 へ進む。このダッシュポット判別回転数
DHEKNはエアコン補正などのアイドルアップを加味
したアイドル回転数近傍の値(例えば1900rpm )であ
る。
【0225】S1101 あるいはS1102 からS1104 へ進むと
ダッシュポット補正値DHENBを0に設定(DHEN
B←0)した後、S1113 へ進む。
【0226】また、S1102 からS1103 へ進むと前回のル
ーチン実行時(100msec 前)に設定しRAM50の所定
アドレスに格納したエンジン回転数(NE )OLD を読出
し、S1105 で、前回のエンジン回転数(NE )OLD と現
在のエンジン回転数NE との差から設定時間(100msec
)におけるエンジン回転数低下量NDOWNを算出する
(NDOWN←(NE )OLD −NE )。
【0227】そして、S1106 で上記エンジン回転数低下
量NDOWNと設定値DNES1とを比較し、NDOWN<DN
ES1の場合S1107 へ進み、エンジン回転数低下量が少
ない状態(緩減速)であることを示すエンジン回転数低
下量判別フラグFLAGDHをセット(FLAGDH←1)
し、S1114 へ進む。
【0228】また、S1106 でNDOWN≧DNES1と判断
されてS1108 へ進むと、上記エンジン回転数低下量NDO
WNと設定値DNES2(但し、DNES1<DNES
2)とを比較し、NDOWN<DNES2の場合S1109 へ進
みダッシュポット補正値DHENBを設定値DHNEB
1[%]で設定し(DHENB←DHNEB1)、S111
3 へ進む。また、NDOWN≧DNES2の場合S1110 へ進
む。
【0229】S1110 では、上記エンジン回転数低下量N
DOWNと設定値DNES3(但し、DNES2<DNES
3)とを比較し、NDOWN<DNES3の場合S111へ進み
ダッシュポット補正値DHENBを設定値DHNEB2
(但し、DHNEB1<DHNEB2)[%]で設定し
(DHENB←DHNEB2)、S1113 へ進む。また、
NDOWN≧DNES3の場合S1112 へ進みダッシュポット
補正値DHENBを設定値DHNEB3(但し、DHN
EB2<DHNEB3)[%]で設定し(DHENB←
DHNEB3)、S1113 へ進む。
【0230】上記S1104,S1109,S1111,S1112 からS1113
へ進むとエンジン回転数低下量判別フラグFLAGDHを
クリア(FLAGDH←0、低下量大)し、S1114 へ進
む。
【0231】そして、S1107 あるいはS1113 からS1114
へ進むと、現在のエンジン回転数NE でRAM50の所
定アドレスに格納されている前回のエンジン回転数(N
E )OLD を更新((NE )OLD ←NE )し、ルーチンを
抜ける。
【0232】また、図16は51.2msec毎に割込み実行さ
れる補正値設定ルーチンにおいて実行(S204参照)され
るダッシュポット補正値更新サブルーチンである。
【0233】まず、S1201 でエンジン回転数低下量判別
フラグFLAGDHの値を参照し、FLAGDH=1(低下
量小)の場合S1202 へ進み、FLAGDH=0(低下量
大)の場合ルーチンを抜ける。
【0234】S1202 へ進むとダッシュポット補正値DH
ENB[%]が0以下かを判別し、DHENB≦0の場
合S1203 へ進みダッシュポット補正値DHENBを0
[%]に設定(DHENB←0)した後、ルーチンを抜
ける。
【0235】また、S1202 でDHENB>0と判断され
てS1204 へ進むと、上記ダッシュポット補正値DHEN
Bから設定値DDFEB(微小値)で減算した値で、こ
のダッシュポット補正値DHENBを更新(DHENB
←DHENB−DDFEB)し、ルーチンを抜ける。
【0236】図32にダッシュポット補正値設定の代表
例のタイムチャートを示す。
【0237】スロットルバルブ11d,11eの急閉に
よる急減速時等、アイドルスイッチ12bがOFF状態
からON状態(スロットルバルブ11d,11eが全閉
状態)へ移行してエンジン回転数NE が急激に低下し、
ダッシュポット判別回転数DHEKN(例えば、1900rp
m )以下になり、エンジン回転数低下量NDOWNの比較的
大きい(DNES3≦NDOWN)区間(経過時間t1 〜t
2 )では大きな値の設定値DHNEB3[%]でダッシ
ュポット補正値DHENBを設定する。
【0238】エンジン回転数NE が急激に落ち込んだと
きにダッシュポット補正を行わないと、図の破線で示す
ように、エンジン回転数がそのまま落込みエンストして
しまう。そのため、スロットルバルブ11d,11eが
開の状態から全閉状態へ移行したときに、エンジン回転
数NE がアイドル回転数近傍の設定値DHEKN(例え
ば、1900rpm )以下に急激に低下した際、エンジン回転
数の低下量NDOWN(=(NE )OLD −NE )が大きいほ
どダッシュポット補正値DHENBを大きくすること
で、ISCバルブ13に対するデューティ比ISCONを
大きくし、このISCバルブ13の開度を大きくして空
気量を増加させてエンジン回転数NE の落込みを防ぐ。
【0239】その後、エンジン回転数低下量NDOWNが、
DNES2≦NDOWN<DNES3の区間(経過時間t2
〜t3 )では中間の値の設定値DHNEB2[%]でダ
ッシュポット補正値DHENBを設定する。
【0240】次いで、エンジン回転数低下量NDOWNが、
DNES1≦NDOWN<DNES2の区間(経過時間t3
〜t4 )では比較的小さな値の設定値DHNEB1
[%]でダッシュポット補正値DHENBを設定する。
【0241】エンジン回転数低下量NDOWNが比較的小さ
くなった状態でもダッシュポット補正値DHENBを設
定値DHNEB3のままにしておくと、図の一点鎖線で
示すように回転変動を生じアイドル回転数への収束性が
悪くなる。
【0242】そして、上記エンジン回転数低下量NDOWN
が、NDOWN<DNES1の区間(経過時間t4 以後)で
は上記ダッシュポット補正値DHENBを0になるまで
演算周期(51.2msec)毎に微小な設定値DDFEBずつ
減算する。
【0243】すなわち、経過時間t4 のときにダッシュ
ポット補正値DHENBを0にするとISCバルブ13
に対するデューティ比ISCONが急減するためにエンジ
ン回転数NE が、図の破線で示すように落込んでしまい
アイドル回転数への収束性が悪くなってしまう。したが
って、エンジン回転数NE の低下量NDOWNの減少に伴
い、ダッシュポット補正値DHENBを減少させること
でアイドル回転数への収束性を良くする。
【0244】(ラジファン補正設定サブルーチン)図1
7は51.2msec毎に割込み実行される補正値設定ルーチン
において実行(S205参照)されるラジファン補正ISC
RAS 設定のサブルーチンである。
【0245】まず、S1301 で、メインコンピュータ41
内のデータに基づいてラジエータファン62の動作を制
御するラジエータファンリレー63がONかを判別し、
ONの場合S1302 へ進み、OFFの場合S1303 へ進む。
【0246】S1302 へ進むとRAM50の所定アドレス
に格納されているラジファン補正ISCRAS を設定値R
AS[%]で設定し(ISCRAS ←RAS)、ルーチン
を抜ける。また、S1303 へ進むと上記ラジファン補正I
SCRAS を0[%]に設定し(ISCRAS ←0)、ルー
チンを抜ける。
【0247】なお、上記ラジファン補正ISCRAS の設
定をタイムチャートによって示せば図33の通りであ
る。
【0248】ラジエータファン62が作動しているとき
は、ラジエータファンモータにより消費電流が大きく、
オルタネータ(発電機)の発電量も大きくなるため、エ
ンジン1にかかる負荷もこれに相応する分大きくなりエ
ンジン回転数NE が低下しようとするが、ラジエータフ
ァン62がONのとき、ISCバルブ13に対するデュ
ーティ比ISCONをラジファン補正ISCRAS によって
大きくして、ISCバルブ13の開度を増大させること
によりエンジン回転数NE の低下を防止する。(パワス
テ補正値設定サブルーチン)図18,図19は51.2msec
毎に割込み実行される補正値設定ルーチンにおいて実行
(S206参照)されるパワステ補正値ISCPS設定のサブ
ルーチンである。このサブルーチンで設定されるパワス
テ補正値ISCPSは、転舵角が大きくパワーステアリン
グオイルポンプを駆動するエンジン1の負荷が大きくな
り、エンジン回転数NE が低下するのを補償するもので
ある。
【0249】まず、S1401 でパワーステアリング転舵ス
イッチ58(以下「パワステ転舵スイッチ」と略称す
る)がONかを判断し、ON(転舵角大)の場合S1402
へ進み、OFF(転舵角小)の場合S1409 へ進む。
【0250】S1402 へ進むと車速センサ56で検出した
車速VSPと設定値VSPPS[Km/h]とを比較し、VS
P≦VSPPSの場合S1403 へ進み、VSP>VSPPSの
場合S1409 へ進む。
【0251】S1403 へ進むと、冷却水温センサ21で検
出した冷却水温TW と設定値TWPS[℃]とを比較し、
TW ≧TWPS の場合S1404 へ進み、TW <TWPS の場合
S1409 へ進む。
【0252】上記S1402 において、車速VSPが設定値
VSPPS以上のときには走行によるエンジン負荷が大き
いためパワステオイルポンプを駆動するエンジン負荷が
相対的に小さくなる。したがって、パワステ補正値IS
CPSによる補償が不要になる。 また、S1403 におい
て、暖機未完(TW <TWPS )のときには基本特性値I
SCTWが大きく設定されるので相対的にパワステオイル
ポンプを駆動するためのエンジン負荷が小さくなり、パ
ワステ補正値ISCPSによる補償が不要になる。
【0253】S1404 へ進むと、前回ルーチン実行時にア
イドル状態の場合に1にセットされているアイドル回転
数判別フラグFLAGPSの値を参照し、FLAGPS=1
(前回アイドル状態)の場合S1405 へ進み、FLAGPS
=0(前回アイドル解除状態)の場合S1406 へ進む。
【0254】S1405 へ進むと設定値ISPSNH[rpm
]でアイドル判別回転数ISPSNを設定し(ISP
SN←ISPSNH)、S1407 へ進む。また、S1406 へ
進むと設定値ISPSNL(但し、ISPSNL<IS
PSNH)[rpm ]でアイドル判別回転数ISPSNを
設定し(ISPSN←ISPSNL)、S1407 へ進む。
図34に示すように、アイドル判別回転数ISPSNを
設定する際にアイドル状態(FLAGPS=1)とアイド
ル解除状態(FLAGPS=0)とでヒステリシスを設け
ることにより、S1407 におけるアイドル状態判別の制御
ハンチングを防止するようにしているS1407 へ進むとエ
ンジン回転数NE とアイドル判別回転数ISPSNとを
比較し、NE >ISPSNの場合、アイドル解除状態と
判断しS1408 へ進みアイドル回転数判別フラグFLAG
PSをクリア(FLAGPS←0)した後S1409 へ進む。ま
た、NE ≦ISPSNの場合アイドル状態と判断し、S1
410 へ進む。
【0255】S1410 ではエアコンスイッチ89がOFF
かを判断し、OFFの場合S1411 へ進み、ONの場合S1
412 へ進む。
【0256】S1411 へ進むと、メインコンピュータ41
で演算したISCバルブ13に対するデューティ比IS
CONに基づき、エアコンOFF時のパワステ補正値IS
CPSをテーブル参照あるいは演算により設定し、S1413
へ進む。また、S1412 へ進むとメインコンピュータ41
で演算したISCバルブ13に対するデューティ比IS
CONに基づきエアコンON時のパワステ補正値ISCPS
をテーブル参照あるいは演算により設定しS1413 へ進
む。
【0257】図35(b)に示すように、実線で示すエ
アコンOFF時のパワステ補正値ISCPSは、一点鎖線
で示すエアコンON時のパワステ補正値ISCPSよりも
大きく設定する。すなわち、エアコンON時には、エア
コン補正値ISCACによりデューティ比ISCONが大き
く設定されるため、相対的にパワステによるエンジン負
荷が少くなり、よって、エアコンOFF時よりもパワス
テ補正値ISCPSを小さく設定している。
【0258】また、S1411 あるいはS1412 で設定するパ
ワステ補正値ISCPSは、デューティ比ISCONが大き
い(小さい)ときにはエンジン1への負荷が大きく(小
さく)、ISCバルブ13の開度を大きく(小さく)し
て空気量を増加(減少)させ、エンジン回転数NE の低
下(上昇)を防止しているが、このときのエンジンにか
かっている全負荷に対してパワステポンプによる負荷は
相対的に小さい(大きい)ため小さく(大きく)設定し
ている。
【0259】そして、上記S1411 あるいはS1412 からS1
413 へ進むと、アイドル回転数判別フラグFLAGPSを
セット(FLAGPS←1)した後、ルーチンを抜ける。
【0260】また、S1401,S1402,S1403,あるいは、S140
8 からS1409 へ進むと、パワステ補正値ISCPSが0以
下かを判別し、ISCPS≦0の場合S1414 へ進みパワス
テ補正値ISCPSを0[%]に設定した後(ISCPS←
0)、ルーチンを抜ける。ISCPS>0の場合にはS141
5 へ進み、パワステ補正値ISCPSから設定値DISC
PSを減算してパワステ補正値ISCPSを更新した後
(ISCPS←ISCPS−DISCPS)、ルーチンを抜
ける。
【0261】図35にパワステ補正値設定の代表的なタ
イムチャートを示す。
【0262】暖機完了後のアイドル時、転舵角が大とな
りパワステ転舵スイッチ58がONすると、デューティ
比ISCONに応じたパワステ補正値ISCPS(エアコン
スイッチ89がOFFのときとONのときによって相違
する)が設定される(経過時間t1 )。
【0263】これにより、転舵角大に伴うパワステオイ
ルポンプ駆動負荷が増大した際に、パワステ補正値IS
CPSによりISCバルブ13に対するデューティ比IS
CONを大きくし、ISCバルブ13の開度を大きくして
空気量を増加させることでエンジン回転数の落込みが防
止される。
【0264】また、転舵角が小さくなり、パワステ転舵
スイッチ58がONからOFFに切換った直後(経過時
間t2 )、直ちにパワステ補正値ISCPSを0[%]に
すると、ISCバルブ13に対するデューティ比ISC
ONがパワステ補正値ISCPS分、急減し、かつ、低下し
てはいるがパワステオイルポンプ駆動負荷が存在するた
め、図(c)の二点鎖線で示すようにエンジン回転数N
E が大きく変動してしまうが、上記パワステ補正値IS
CPSが0になるまで、演算周期(51.2msec)毎に上記パ
ワステ補正値ISCPSを設定値DISCPSずつ減算す
ることで、ISCバルブ13の開度を徐々に減少させて
空気量を補償し、これによって、図(c)の実線で示す
ようにエンジン回転数NE の変動が防止される。
【0265】(エアコンクラッチ補正値設定サブルーチ
ン)図20は51.2msec毎に割込み実行される補正値設定
ルーチンにおいて実行(S207参照)されるエアコンクラ
ッチ補正値ISCCLH 設定のサブルーチンである。ま
ず、S1501 でエアコンスイッチ89がONかを判断し、
ONの場合S1502 へ進み、OFFの場合S1503 へ進む。
【0266】S1502 へ進むとエアコンスイッチ89がO
N→OFF後設定時間TCLH[SEC ]経過したかを判
別するためのエアコンON→OFF後経過時間判別カウ
ント値COUNTCLH (ダウンカウンタ)を、上記設定
時間TCLHに相当する設定値TACCLHで設定し
(COUNTCLH ←TACCLH)、S1505 へ進む。
【0267】また、S1503 へ進むとエアコンON→OF
F後経過時間判別カウント値COUNTCLH の値を参照
し、COUNTCLH ≠0の場合S1504 へ進み、カウント
ダウン(COUNTCLH ←COUNTCLH −1)した
後、S1505 へ進む。
【0268】S1502 あるいはS1504 からS1505 へ進むと
エアコンクラッチ補正値ISCCLHを設定値DISCL
H[%]で設定した後(ISCCLH ←DISCLH)、
ルーチンを抜ける。
【0269】一方、S1503 でCOUNTCLH1=0であ
り、エアコンスイッチ89をON→OFF後、設定時間
TCLH[SEC5]経過したと判断してS1506 へ進むと上
記エアコンクラッチ補正値ISCCLH を0[%]に設定
した後(ISCCLH ←0)、ルーチンを抜ける。
【0270】図36に上記エアコンクラッチ補正値IS
CCLH の設定と、エアコンスイッチ89のON/OF
F、エアコンクラッチリレー65のON/OFF、可変
容量エアコンコンプレッサ64の容量制御、および、エ
ンジン回転数NE との関係を示す。
【0271】まず、可変容量エアコンコンプレッサ64
に対する容量制御について述べる。エアコンスイッチ8
9をONするとメインコンピュータ41により、設定遅
れ時間ACENT(例えば、0.3sec)経過後、エアコン
クラッチリレー65がONされて可変容量エアコンコン
プレッサ64のマグネットクラッチ64aが接続し、コ
ンプレッサ64が駆動され、メインコンピュータ41か
らの要求容量信号に従いエアコン制御ユニット81から
コンプレッサ64へコンプレッサ容量(DUTY)信号
が出力され、コンプレッサ64の容量が最小容量(MI
N)から設定容量に次第に増加される。そして、エアコ
ンスイッチ89をOFFすると、上記可変容量エアコン
コンプレッサ64に対するコンプレッサ容量(DUT
Y)により、コンプレッサ64の容量が最少容量(MI
N)に次第に減少され、エアコンスイッチ89のOFF
後、エアコンコンプレッサ64の容量が最小容量(MI
N)に到達したと看做し得る十分な時間ACCLTM
(例えば、8sec )経過後エアコンクラッチリレー65
がOFFされる。
【0272】このため、エアコンススイッチ89のON
と同時に(経過時間t1 )、エアコンクラッチ補正値I
SCCLH を設定値DISCLH に設定し、ISCバルブ1
3に対するデューティ比ISCONを上記エアコンクラッ
チ補正分ISCCLH 分増大させてISCバルブ13の開
度を増大させ、空気量を増加させることでエンジン回転
数NE を上昇させてエアコンクラッチリレー65のON
によるコンプレッサ64駆動のエンジン負荷増大に伴う
エンジン回転数低下を防止する。
【0273】その後、エアコンスイッチ89をOFFす
ると(経過時間t2 )、上記可変容量エアコンコンプレ
ッサ64の容量が次第に低下されると共に、前述のエア
コン補正値ISCACが次第に減少され(図7,8、及び
図29参照)、これに伴いISCバルブ13に対するデ
ューティ比ISCONが減少することでISCバルブ13
の開度が減少して空気量が減少し、エンジン回転数NE
がエアコンOFF時の目標回転数に復帰される。
【0274】可変容量コンプレッサ64の容量が下がり
きったとき(経過時間t3 )からマグネットクラッチ6
4aが切れるまで(エアコンクラッチリレー65がOF
Fするまで)の間T1 は、クラッチのフリクションが残
っている。このため、可変容量エアコンコンプレッサ6
4のマグネットクラッチ64aが切れた瞬間にクラッチ
によるフリクションが急になくるため図(e)に破線で
示すように一時的な回転数の吹上がりによる回転変動が
生じフィーリングが悪化してしまう。
【0275】エアコンクラッチ補正はこのクラッチのフ
リクションによるエンジン負荷を補償するためのもので
あり、エアコンスイッチ89をONしてから、エアコン
スイッチ89のOFF後、設定時間ACCLTM経過後
エアコンクラッチリレー65がOFFし、可変容量エア
コンコンプレットサ64のマグネットクラッチ64aが
完全に切れるまで、すなわち、エアコンスイッチ89の
OFF後、設定時間TCLH(TCLH>ACCLT
M)を経過するまでの間、エアコンクラッチ補正値IS
CCLH を設定値DISCLHに設定してISCバルブ1
3に対するディーティ比ISCONをこの間大きくし、エ
アコンクラッチ64aが切れたときエアコンクラッチ補
正ISCCLH を0にすることで、エアコンクラッチ64
aが切れた瞬間にクラッチによるフリクションがなくな
りエンジン負荷が減少した分、ISCONを減少させてI
SCバルブ13の開度を減少させ空気量を減じ、このと
きの回転変動を防止する。これにより、図(e)の実線
で示すように、エアコンクラッチ764aが切れた直後
の一時的な回転数の吹上りによる回転変動が解消し、フ
ィーリングが向上する。
【0276】(始動後補正設定割込みルーチン)図21
はISCバルブ制御メインルーチンにおいて設定する始
動時/通常時制御判別フラグFLAGSTが1→0になっ
た時点で割込み実行する始動後補正初期値設定ルーチン
である。
【0277】始動時/通常時制御判別フラグFLAGST
がFLAGST=1(始動時制御)からFLAGST=0
(通常時制御)に移行した直後、すなわち、スタータス
イッチ61がON→OFFで、かつ、エンジン回転数N
E がNE ≠0のときである始動時制御終了直後に割込み
スタートすると、まず、S1601 で冷却水温TW に基づき
始動後補正初期値テーブルTISCSD(冷却水温TW が
低いほど大きな値が格納されている)を補間計算付で参
照して始動後補正ISCSDの初期値を設定する。
【0278】次いで、S1602 で冷却水温TW に基づき始
動後補正更新割込時間テーブルTTDISC(冷却水温TW
が低いほど長い時間の値が格納されている)を補間計算
付で参照して始動後補正更新割込時間TDISCを設定す
る。
【0279】そして、S1603 で上記始動後補正更新割込
時間TDISC毎の割込を許可してルーチンを抜ける。
【0280】図22は始動後補正更新割込時間毎に割込
み実行される始動後補正設定ルーチンで、始動時制御か
ら通常時制御へのデューティ比ISCONのつながりを良
くし、始動性を向上させるものである。
【0281】まず、S1701 でRAM50の所定アドレス
に格納されている始動後補正ISCSDが0以下かを判断
し、ISCSD>0の場合S1702 へ進み上記始動後補正I
SCSDを設定値DISCSDで減算した値で更新し(I
SCSD←ISCSD−DISCSD)、ルーチンを抜け
る。
【0282】一方、S1701 でISCSD≦0と判断されて
S1703 へ進むと、RAM50の所定アドレスに格納され
ている始動後補正ISCSDを0[%]に固定して(IS
CSD←0)、S1704 へ進み、始動後補正更新割込時間T
DISCごとの割込みを禁止し、ルーチンを抜ける。
【0283】始動後補正設定の代表例を図37のタイム
チャートに従って説明する。
【0284】スタータスイッチ61がON、あるいは、
エンジン回転数NE が0のとき(始動時/通常時制御判
別フラグFLAGST=1)始動後補正プログラムは実行
されず(経過時間t0 〜t1 )、スタータスイッチ61
がON→OFF直後で、エンジン回転数NE がNE ≠0
のとき始動後補正ISCSDの初期値が設定される(経過
時間t1 )。
【0285】次いで、上記始動後補正ISCSDを0にな
るまで始動後補正更新割込時間TDISC毎に設定値DIS
CSDずつ減少させる。
【0286】また、図38にISCバルブ13を制御す
るデューティ比ISCONの変化と始動後補正ISCSDと
の関係を示す。
【0287】始動時制御(FLAGST=1)時において
はISCバルブ制御のメインルーチンにおいて設定する
デューティ比ISCONが比較的大きな値に設定されてお
り、通常時制御へ移行すると(経過時間t1)、各種補正
項により緻密に制御されるため図の一点鎖線で示すよう
につながりが悪くなり始動性が低下する。
【0288】始動後補正ISCSDはこれを補償するため
のものであり、始動時制御において設定されるデューテ
ィ比ISCONは、冷却水温TW に基づき設定される始動
時特性値ISCSTが大部分を占め、冷却水温TW が低い
ほど始動時特性値ISCSTが大きく設定されるため(図
1参照)、始動時制御から通常時制御に移行する際のI
SCバルブ13に対するデューティ比ISCONの段差が
大きくなる。
【0289】このため、冷却水温TW が低いほど、図3
7の実線で示すように始動後補正ISCSDの初期値を大
きく設定すると共に、始動後補正割込時間TDISCを長く
設定して始動後補正ISCSDが0になるまでの時間を長
くし(経過時間t1 〜t3 )、一方、冷却水温TW が高
いほど、図37の破線で示すように始動後補正ISCSD
の初期値を小さくし、かつ、始動後補正割込時間TDISC
を短く設定して始動後補正ISCSDが0になるまでの時
間を短くすることで(経過時間t1 〜t2 )、如何なる
温度条件下においても始動時制御から通常時制御に移行
する際のISCバルブ13に対するデューティ比ISC
ONのつながりを、図38の実線で示すようにスムーズに
し、ISCバルブ13の開度変化の段差を解消してIS
Cバルブ13による空気流量の急変を防止し、始動性を
向上する。
【0290】(クローズドループ補正I分更新ルーチ
ン)図23〜図25は設定時間毎、例えば10msec毎に割
込み実行されるクローズドループ補正I分更新手順を示
すフローチャートである。
【0291】まず、S1801 でISCバルブ制御メインル
ーチンにおいて設定する始動時/通常時制御判別フラグ
FLAGSTの値を参照し、FLAGST=1(始動時ある
いはエンスト中)の場合S1802 へ進み、FLAGST=0
(通常時)の場合S1803 へ進む。
【0292】S1802 へ進むと始動後通常運転(通常時制
御)へ移行してから設定時間LRNISS[SEC ]経過
したかを判断するための通常時制御移行時間判別カウン
ト値COUNTSTI (ダウンカウンタ)に、上記設定時
間LRNISSに相当する設定値COUNTLRNISSをセ
ットし(COUNTSTI ←COUNTLRNISS)、S1858
へ進み、クローズドループ補正I分ISCI を0[%]
に設定してS1859 に進む。
【0293】また、S1803 へ進むと上記通常時制御移行
時間判別カウント値COUNTSTIの値を参照し、CO
UNTSTI ≠0の場合、通常時制御へ移行した後、設定
時間LRNISS経過していないと判断してS1804 へ進
み、カウント値COUNTSTI をカウントダウンし(C
OUNTSTI ←COUNTSTI −1)、S1805 へ進む。
一方、COUNTSTI =0の場合、通常時制御へ移行し
てから設定時間経過したと判断し、S1805 へ進む。
【0294】S1805 へ進むと冷却水温TW と設定温度L
RNITW[℃]とを比較し、TW≧LRNITWの場
合S1806 へ進み、TW <LRNITWの場合S1810 へ進
む。S1806 へ進むと前回のルーチン時に読出した始動時
/通常時制御判別フラグ(FLAGST)OLD の値を参照
し、(FLAGST)OLD =1(前回ルーチン実行時、始
動時制御)の場合、通常時制御移行初回と判断してクロ
ーズドループ補正I分初期設定すべくS1807 へ進み、
(FLAGST)OLD =0の場合S1810 へ進む。
【0295】S1807 ではエアコンスイッチ89がONか
どうかを判断し、ONの場合S1808へ進み、OFFの場
合S1809 へ進む。
【0296】S1808 へ進むとバックアップRAM50a
に格納されているエアコンON時のI分学習値ACON
Iを読出してクローズドループ補正I分ISCI をエア
コンON時のI分学習値ACONIで初期設定し、ま
た、S1809 へ進むと、クローズドループ補正I分ISC
I をバックアップRAM50aに格納されているエアコ
ンOFF時のI分学習値ACOFFIで初期設定し、そ
れぞれS1810 へ進む。
【0297】上記各I分学習値ACONI,ACOFF
Iは後述するクローズドループ補正I分学習値学習サブ
ルーチンで更新され、バックアップRAM50aの所定
アドレスに格納されているもので、スタータスイッチ6
1がON→OFF(始動時制御から通常時制御)へ移行
した直後の1回だけ、前回のエンジン運転時にエアコン
作動状態に応じて学習したI分学習値ACONIあるい
はACOFFIによりクローズドループ補正I分ISC
I を初期設定する。これによりクローズドループ補正I
分が直ちに補償され、制御性が向上する。
【0298】また、上記各学習値ACONI、ACOF
FIをエアコンの作動状態別に設定しているので、エン
ジン負荷に応じたクローズドループ補正I分ISCI を
初期設定することができ、エンジン回転をスムーズに立
上げることができる。
【0299】そして、S1810 へ進むと前述のクローズド
/オープンループ制御判別サブルーチンで設定したクロ
ーズド/オープンループ制御判別フラグFLAGCLの値
を参照し、FLAGCL=1(クローズドループ制御)の
場合S1811 へ進み、FLAGCL=0(オープンループ制
御)の場合、後述の補正量ΔIを更新することなくS181
2 へ進む。
【0300】S1811 へ進むと、始動後補正ISCSDの値
を参照して始動後補正実行中(ISCSD≠0)かを判断
し、ISCSD≠0の場合S1813 へ進み、ISCSD=0の
場合S1817 へ進む。S1813 へ進むと冷却水温TW と設定
温度TWAS[℃]とを比較し、TW ≧TWAS(暖機
完了)の場合S1814 へ進み、TW <TWAS(暖機中)
の場合S1817 へ進む。S1814 へ進むと、車速VSPと設
定値VSAS[Km/h]とを比較し、VSP<VSAS
(停車)の場合S1815 へ進み、VSP≧VSAS(走
行)の場合S1817 へ進む。
【0301】その後、S1815 へ進むとクローズドループ
補正I分ISCI に始動後補正ISCSDを加算した値で
上記クローズドループ補正I分ISCI を更新し(IS
I←ISCI +ISCSD)、S1816 へ進み上記始動後
補正ISCSDを上記クローズドループ補正I分に移行さ
せた分、この始動後補正ISCSDをクリアし(ISCSD
←0)、S1817 へ進む。
【0302】図39の(a),(b)に示すようにオー
プンループ制御からクローズドループ制御へ移行した
際、始動後補正ISCSD(ISCAS)のクローズドルー
プ補正I分ISCI への移行を行わず前述した始動後補
正設定ルーチン(図22)を始動後補正ISCSDが0に
なるまで実行するとすれば、このクローズドループ補正
I分ISCI が収束するまでの間、デューティ比ISC
ONに段差が生じエンジン回転数NE が変動してしまう。
この対策として後述する補正量ΔIを大きくすることも
考えられるが、この補正量ΔIを極端に大きくすると収
束性が悪化しエンジン回転数NE にハンチングが生じ
る。
【0303】これに対し、図39の(c),(d)に示
すように所定条件成立時(TW ≧TWAS、且つ、VS
P<VSAS)、オープンループ制御からクローズドル
ープ制御に移行した際、始動後補正ISCSD(ISCA
S)がISCSD≠0のとき、始動後補正ISCSD(IS
CAS)をクローズドループ補正I分ISCI に移行させ
ているので、増量分をクローズドループ補正I分ISC
I で補うようになり、オープンループ制御からクローズ
ドループ制御へのつながりが良くなり、このときのエン
ジン回転数NE の変動が防止される。
【0304】その後、上記S1811,S1813,S1814 あるい
は、S1816 からS1817 へ進むとアイドル目標回転数NSE
T とエンジン回転数NE との差回転ΔNを求め(ΔN←
NSET−NE )、S1818 へ進みエアコンスイッチ89が
ONかを判断し、ONの場合S1819 へ進み、OFFの場
合S1820 へ進む。
【0305】S1819 へ進むと上記差回転ΔNと設定値N
IH3(NIH3<0)とを比較し、ΔN≦NIH3の
場合S1826 へ進み、補正量ΔIを設定値TIPTAH3
(TIPTAH3<0)に設定し(ΔI←TIPTAH
3)、S1845 へ進む。
【0306】また、上記S1819 でΔN>NIH3の場合
にはS1821 へ進み、上記差回転ΔNと設定値NIH2
(但し、NIH3<NIH2<0)とを比較し、ΔN≦
NIH2の場合、S1827 へ進み補正値ΔIを設定値TI
PTAH2(但し、TIPTAH3<TIPATAH2
<0)に設定し(ΔI←TIPTAH2)、S1845 へ進
む。また、ΔN>NIH2の場合S1822 へ進み差回転Δ
Nと設定値NIH1(但し、NIH2<NIH1<0)
とを比較し、ΔN≦NIH1の場合S1828 へ進み補正量
ΔIを設定値TIPTAH1(但し、TIPTAH2<
TIPTAH1<0)で設定し(ΔI←TIPTAH
1)、S1845 へ進む。
【0307】また、上記S1822 でΔN>NIH1と判断
されてS1823 へ進むと差回転ΔNと0とを比較し、ΔN
≦0の場合S1829 へ進み補正量ΔIを設定値TIPTA
H(但し、TIPTAH1<TIPTAH,TIPAT
H=0[%])で設定し(ΔI←TIPTAH)、S184
5 へ進む。また、ΔN>0の場合S1824 へ進む。 S182
4 へ進むと差回転ΔNと設定値NIL1(但し、0<N
IL1)とを比較し、ΔN≦NIL1の場合S1830 へ進
み、補正量ΔIを設定値TIPTAL(但し、TIPT
AH≦TIPATL)で設定し(ΔI←TIPTA
L)、S1845 へ進む。また、ΔN>NIL1の場合S182
5 へ進む。
【0308】S1825 へ進むと、差回転ΔNと設定値NI
L2(但し、NIL1<NIL2)とを比較し、ΔN≦
NIL2の場合S1831 へ進み、補正量ΔIをTIPTA
L1(但し、TIPTAL<TIPTAL1)で設定し
(ΔI←TIPTAL1)、S1845 へ進む。また、ΔN
>NIL2の場合S1832 へ進み補正量ΔIを設定値TI
PTAL2(但し、TIPTAL1<TIPTAL2)
で設定し(ΔI←TIPTAL2)、S1845 へ進む。
【0309】図40に補正量ΔIと差回転ΔNとの関係
を示す。図からも分かるように差回転ΔNが小さければ
補正量ΔIも小さく設定される。これによりアイドル目
標回転数NSET に対するエンジン回転数NE の収束性が
よくなる。
【0310】一方、上記S1818 でエアコンスイッチ89
がOFFと判断されてS1820 へ進むと、このS1820,S183
3 〜S1837 において、差回転ΔNと設定値NIH3,N
IH2,NIH1,0,NIL1,NIL2とを上述と
同様に比較し、S1820 でΔN≦NIH3と判断されてS1
838 へ進むと補正量ΔIを設定値TIPRTH3で(但
し、TIPRTH3<0)設定し(ΔI←TIPRTH
3)、S1845 へ進む。
【0311】S1833 でΔN≦NIH2と判断されてS183
9 へ進むと補正量ΔIを設定値TIPRTH2(但し、
TIPRTH3<TIPRTH2<0)で設定し(ΔI
←TIPRTH2)、S1845 へ進む。
【0312】S1834 でΔN≦NIH1と判断されてS184
0 へ進むと補正量ΔIを設定値TIPRTH1(但し、
TIPRTH2<TIPRTH1<0)で設定し(ΔI
←TIPRTH)、S1845 へ進む。
【0313】S1835 でΔN≦0と判断されてS1841 へ進
むと補正量ΔIを設定値TIPRTH(但し、TIPR
TH1<TIPRTH,TIPRTH=0[%])で設
定し(ΔI←TIPRTH)、S1845 へ進む。
【0314】S1836 でΔN≦NIL1と判断されてS184
2 へ進むと補正量ΔIを設定値TIPRTL(但し、T
IPRTH≦TIPRTL)で設定し(ΔI←TIPR
TL)、S1845 へ進む。
【0315】S1837 でΔN≦NIL2と判断されてS184
3 へ進むと補正量ΔIを設定値TIPRTL1(但し、
TIPRTL<TIPRTL1)で設定し(ΔI←TI
PRTL1)、S1845 へ進む。また、S1837 でΔN>N
IL2と判断されてS1844 へ進むと、補正量ΔIを設定
値TIPRTL2(但し、TIPRTL1<TIPRT
L2)で設定し(ΔI←TIPRTL2)、S1845 へ進
む。
【0316】そして、S1826 〜S1832 ,あるいは、S183
8 〜S1844 のいずれかからS1845 へ進むと、RAM50
の所定アドレスに格納されているクローズドループ補正
I分ISCI をこのクローズドループ補正I分ISCI
に上記S1826 〜S1832 ,S1838 〜S1844 のいずれかで設
定した補正量ΔIを加算した値で更新し(ISCI ←I
SCI +ΔI)、S1846 へ進む。
【0317】図41にアイドル目標回転数NSET に対す
るエンジン回転数NE の変動と、補正量ΔIおよびクロ
ーズドループ補正I分ISCI との関係をタイムチャー
トによって示す。
【0318】[経過時間t0 〜t1 ]アイドル目標回転
数NSET に対しエンジン回転数NE が設定値NIH3以
上であるため(ΔN≦NIH3)、エンジン回転数NE
を下げるべく補正量ΔIを最小の設定値TIPTAH3
で設定する(S1826 )。
【0319】その結果、クローズドループ補正I分IS
CI が上記設定値TIPTAH3だけ低い値になり、そ
の分、ISCバルブ13に対するディーティ比ISCON
が低下してISCバルブ13の開度が減少し、エンジン
回転数NE が低下する。
【0320】[経過時間t1 〜t2 ]次いで、差回転Δ
Nが設定値NIH3とNIH2との間に収まると、補正
量ΔIが設定値TIPTAH2で設定され(S1827 )、
クローズドループ補正I分ISCI が設定値TIPTA
H2分だけ更に低くなる。
【0321】[経過時間t2 〜t3 ]その後、差回転Δ
Nが設定値NIH2とNIH1との間に収まると、補正
量ΔIが設定値TIPTAH1で設定され(S1828 )、
クローズドループ補正I分ISCI が設定値TIPTA
H1分だけ低くなり、エンジン回転数NE が低下する。
【0322】そして、差回転ΔNが設定値NIH1と0
との間に収まると補正量ΔIが設定値TIPTAH(0
[%])で設定され(S1829 )、したがって、クローズ
ドループ補正I分ISCI は変化しない。
【0323】その後、差回転ΔNが設定値0とNIL1
との間に収まると補正量ΔIが設定値TIPTAL(T
IPTAH≦TIPTAL)で設定される(S1830 )。
【0324】[経過時間t3 〜t4 ]次いで、差回転Δ
Nが設定値NIL1とNIL2との間に収まると補正量
ΔIが設定値TIPTAL1で設定され(S1831 )、ク
ローズドループ補正I分ISCI が上記設定値TIPT
AL1分だけ高くなる。
【0325】[経過時間t4 〜t5 ]その後、エンジン
回転数NE がアイドル目標回転数NSET に対して設定値
NIL2より低くなると(ΔN>NIL2)補正量ΔI
が設定値TIPTAL2で設定され(S1832 )、クロー
ズドループ補正I分ISCI が上記設定値TIPTAL
2だけ高くなる。
【0326】[経過時間t5 〜t6 ]また、差回転ΔN
が設定値NIL2とNIL1との間に収まると補正量Δ
Iが設定値TIPTAL1で設定され(S1831 )、クロ
ーズドループ補正I分ISCI が設定値TIPTAL1
だけ高くなる。
【0327】そして、差回転ΔNが設定値NIL1とN
IH1との間に収まっている間は設定値TIPTALと
TIPTAHとが0[%]であるためクローズドループ
補正I分ISCI は変化しない。
【0328】[経過時間t6 以後]一方、差回転ΔNが
設定値NIH1とNIH2との間に収まると補正量ΔI
が設定値TIPTAH1で設定され、その後、差回転Δ
Nが設定値NIH1とNIL1との間に収束し、補正量
ΔIが設定値TIPTAL,TIPTAH(いずれも0
[%])に設定されるため、クローズドループ補正I分
ISCI は一定となる。
【0329】上記S1845 でクローズドループ補正I分I
SCI を設定した後、S1846 へ進むと、クローズドルー
プ補正I分の学習サブルーチン(詳細は後述する)が実
行される。
【0330】次いで、S1847 で通常時制御移行時間判別
カウント値COUNTSTI の値を参照し、COUNTST
I ≠0(始動後設定時間LRNISS内)の場合S1848
へ進み、COUNTSTI=0の場合S1850 へ進む。
【0331】S1848 へ進むと、冷却水温TW と暖機再始
動かどうかを判断する予め設定された暖機完了判定値L
RNITW とを比較し、TW ≧LRNITW (暖機再始
動)の場合S1849 へ進み、TW <LRNITW (エンジ
ン冷態状態)の場合S1850 へ進む。
【0332】S1849 へ進むと、クローズドループ補正I
分ISCI と下限値IMINBLとを比較し、ISCI
≦IMINBLの場合S1853 へ進み、上記クローズドル
ープ補正I分ISCI を上記下限値IMINBLで設定
してS1859 へ進む。
【0333】一方、S1849 でISCI >IMINBLと
判断されるとS1851 へ進み、上記クローズドループ補正
I分ISCI と上限値IMAXBLとを比較し、ISC
I ≧IMAXBLの場合、S1854 へ進み、上記クローズ
ドループ補正I分ISCI を上記上限値IMAXBLで
設定しS1859 へ進む。また、ISCI <IMAXBLの
場合、上記クローズドループ補正I分ISCI が許容範
囲(IMAXBL>ISCI >IMINBL)に収まっ
ていると判断し、そのままS1859 へ進む。
【0334】また、S1847 ,あるいは、S1848 からS185
0 へ進むと、上記クローズドループ補正I分ISC
I と、前述のISCバルブ制御メインルーチンで設定し
たデューティ制限下限値IMINCLから前述の基本特性
値設定サブルーチンで設定した基本特性値ISCTWを減
算した値(下限値)とを比較し、ISCI ≦(IMIN
CL−ISCTW)の場合S1855 へ進み、上記クローズドル
ープ補正I分ISCI を上記下限値(IMINCL−IS
CTW)で設定し(ISCI ←IMINCL−ISCTW)、
S1859 へ進む。
【0335】また、S1850 でISCI >(IMINCL−
ISCTW)の場合にはS1852 へ進み、クローズドループ
補正I分ISCI と、ISCバルブ制御メインルーチン
で設定したデューティ制限上限値IMAXCL から基本特性
値ISCTWを減算した値(上限値)とを比較し、ISC
I ≧(IMINCL−ISCTW)の場合にはS1856 へ進
み、上記クローズドループ補正I分ISCI を上記上限
値(IMAXCL −ISCTW)で設定し(ISCI ←IMI
NCL−ISCTW)、S1859 へ進む。S1852 でISCI
(IMINCL−ISCTW)の場合には、上記クローズド
ループ補正I分ISCI が許容範囲((IMINCL−I
SCTW)<ISCI <(IMAXCL −ISCTW))に収ま
っていると判断し、そのままS1859 へ進む。
【0336】ISCバルブ13に対するデューティ比I
SCONの大部分は基本特性値ISCTWであり、デューテ
ィ制限下限値IMINCLから基本特性値ISCTWを減算
することで、基本特性値ISCTW以外の補正項に対する
下限値を設定し、また、デューティ制限上限値IMAXCL
から基本特性値ISCTWを減算することで上限値を設定
する。
【0337】但し、〈1〉始動後、所定時間LRNIS
S[sec ]以内の場合(S1847 )、且つ、〈2〉冷却水
温TW と暖機再始動かを判断する暖機完了判定値LRN
ITWとがTW ≧LRNITWの場合(S1848 )、暖機
再始動時と判断し、オープンループ、クローズドループ
制御を問わず IMINBL≦ISCI ≦IMAXBL とする。
【0338】暖機再始動において通常時制御に移行した
とき、クローズドループ補正I分ISCI の初期設定の
際に(S1808 、あるいは、S1809 )、クローズドループ
補正I分ISCI が小さな値(負の値を含む)の学習値
ACONI(エアコンスイッチ89がON時)、あるい
は、学習値ACOFFI(エアコンスイッチ89がOF
F時)で更新されるとエンジン回転数NE が低下してし
まい、著しい場合はエンストしてしまう。このため、上
限値、下限値をそれぞれ設定値IMINBL,IMAX
BLとして、クローズドループ補正I分ISCI の上限
値、下限値をシフトアップさせることで再始動性を改善
させている(図41(c)参照)。
【0339】一方、上記S1810 でFLAGCL=0(オー
プンループ制御)と判断されてS1812 へ進むと冷却水温
TW と、オープンループ制御中の冷却水温TW が低水温
かを判断する設定値TWCL [℃]とを比較し、TW ≦T
WCL の場合S1857 へ進み、TW >TWCL の場合既述した
S1847 へ進む。
【0340】S1857 へ進むとクローズドループ補正I分
ISCI の値を参照し、ISCI <0の場合S1858 へ進
み、上記クローズドループ補正I分ISCI を0に設定
した後(ISCI ←0)、S1859 へ進む。また、ISC
I ≧0の場合上記S1847 へ進む。
【0341】このように、オープンループ制御中(FL
AGCL=0)の冷却水温TW が低水温時(TW ≦TWCL
)で、かつ、クローズドループ補正I分ISCI が負
側にあるとき(ISCI <0)には、このクローズドル
ープ補正I分ISCI を0に設定している(ISCI
0)。すなわち、後述する学習値ACONIあるいはA
COFFIにより設定したクローズドループ補正I分I
SCI が負側のときにはデューティ比ISCONが小さく
なり、ISCバルブ13の開度が減少してエンジン回転
数NE が低下する方向に作用し、これを防止するため、
スタータスイッチ61がONからOFF(始動時制御→
通常時制御)へ移行した直後に学習値ACONIあるい
はACOFFIにより設定されるクローズドループ補正
I分ISCI の下限値を0としている。
【0342】そして、S1853 〜S1856 ,あるいは、S185
8 のいずれかからS1859 へ進むと、今回の始動時/通常
時制御判別フラグFLAGSTでRAM50の所定アドレ
スに格納されている次回のルーチンで使用する前回の始
動時/通常時制御判別フラグ(FLAGST)OLD を更新
し((FLAGST)OLD ←FLAGST)、ルーチンを抜
ける。
【0343】なお、本実施例においてはクローズドルー
プ補正I分ISCI を、比例積分制御(PI 制御)を用
いずに積分制御(I制御)のみで設定しているので、緻
密なフィードバック制御が実行される。
【0344】(クローズドループ補正I分学習サブルー
チン)図26はクローズドループ補正I分更新手順にお
いて実行(S1846 参照)されるクローズドループ補正I
分学習サブルーチンである。
【0345】まず、S1901 〜S1908 で学習条件が成立し
ているかを判断する。
【0346】すなわち、S1901 では、冷却水温TW と暖
機完了判定値LRNITW [℃]とを比較し、TW ≧L
RNITW (エンジン暖機完了状態)の場合S1902 へ進
み、TW <LRNITW (エンジン冷態状態)の場合S1
913 へ進む。
【0347】S1902 へ進むとパワステ補正値ISCPSの
値を参照)し、ISCPS=0(パワーステアリング転舵
角小)の場合S1903 へ進み、ISCPS≠0の場合S1913
へ進む。
【0348】S1903 へ進むと、エアコンスイッチ89が
OFFかを判断し、OFFの場合S1904 へ進み、ONの
場合S1905 へ進む。
【0349】S1904 へ進むと、ラジファン補正値ISC
RAの値を参照し、ISCRA=0(ラジエータファン62
がOFF)の場合S1905 へ進み、ISCRA≠0の場合S1
913へ進む。
【0350】そして、S1903 あるいはS1904 からS1905
へ進むと、加減速補正DSHPTの値を参照し、DSHPT=0
の場合S1906 へ進み、DSHPT≠0の場合S1913 へ進む。
【0351】S1906 へ進むとダッシュポット補正値DH
ENBの値を参照し、DHENB=0の場合、すなわ
ち、DSHPT=0、且つ、DHENB=0でアイドル
定常状態と判断される場合には、S1907 へ進み、DHE
NB≠0の場合S1913 へ進む。
【0352】S1907 へ進むと、クローズドループ補正I
分ISCI の補正量ΔIを参照し、ΔI=0(エンジン
回転数NE がアイドル目標回転数NSET の許容範囲内視
鏡に収束している状態)の場合S1908 へ進み、ΔI≠0
の場合S1913 へ進む。
【0353】S1908 へ進むと、学習可能な状態が所定時
間以上継続しているかどうかを判別すべく、所定時間に
相当する設定値LRISCTと学習条件成立判別カウン
ト値COUNTISCIとを比較し、COUNTISCI≧LR
ISCTの場合、学習条件成立と判断してS1909 へ進
む。また、COUNTISCI<LRISCTの場合、S191
0 へ進みカウント値COUNTISCIをカウントアップし
(COUNTISCI←COUNTISCI+1)、ルーチンを
抜ける。
【0354】一方、S1909 へ進むと、エアコンスイッチ
89がONかを判断し、ONの場合S1911 へ進みバック
アップRAM50aの所定アドレスに格納されているエ
アコンON時のI分学習値ACONIを現時点における
クローズドループ補正I分ISCI の値で更新し(AC
ONI←ISCI )、S1913 へ進む。OFFの場合S191
2 へ進み、バックアップRAM50aの所定アドレスに
格納されているエアコンOFF時のI分学習値ACOF
FIを現時点におけるクローズドループ補正I分ISC
I の値で更新し(ACOFFI←ISCI )、S1913 へ
進む。
【0355】そして、S1901 ,S1902 ,S1904 〜S1907
,S1911 、あるいは、S1912 のいずれかからS1913 へ
進むと上記カウント値COUNTISCIをクリアし(CO
UNTISCI←0)、ルーチンを抜ける。
【0356】ところで、図42(a)に破線で示すよう
に、クローズドループ補正I分ISCI を設定する際に
I分学習値ACONIあるいはACOFFIを使用しな
いと、始動時制御からオープンループ制御を介してクロ
ーズドループ制御へ移行するまでの間に差分が生じる。
その結果、図42(b)に破線で示すように、初爆はす
るが完爆へはなかなか移行せず、始動時制御からオープ
ンループ制御へ移行するときにエンジン回転数NE の立
上りにもたつきが生じる。
【0357】一方、図42(a)に実線で示すようにク
ローズドループ補正I分にI分学習値ACONIあるい
はACOFFIを加味することで始動時制御からクロー
ズドループ制御へ移行するまでの間の差分が改善され図
42(b)に実線で示すように初爆から完爆へ直ちに移
行し、エンジン回転数NE の立上りがスムーズになり始
動性が向上する。
【0358】
【発明の効果】以上説明したように請求項1記載の発明
によれば、オープンループ制御からクローズドループ制
御へ移行した際に、始動後補正をフィードバック補正値
に移行させているので、オープンループ制御からクロー
ズドループ制御への繋がりが良くなりフィードバック補
正値の収束時間を短縮することができ、この時のエンジ
ン回転数の変動が防止され、制御性が大幅に向上する。
【0359】請求項2記載に記載したように、フィード
バック補正値を積分制御のみで設定するようにすれば、
上記請求項1記載の発明の効果に加え、より緻密なフィ
ードバック制御を実行することができる効果を有する。
【0360】
【0361】
【0362】
【0363】
【0364】
【0365】
【図面の簡単な説明】
【図1】図1,図2はISCバルブ制御手順を示すフロ
ーチャート。
【図2】同上
【図3】補正値設定手順を示すフローチャート。
【図4】基本特性値設定手順を示すフローチャート。
【図5】アイドル目標回転数設定手順を示すフローチャ
ート。
【図6】クローズド/オープンループ制御判別手順を示
すフローチャート。
【図7】図7,図8はエアコン補正値設定手順を示すフ
ローチャート。
【図8】同上
【図9】エアコンスイッチOFF→ON時のエアコン補
正学習手順を示すフローチャート。
【図10】エアコンスイッチON→OFF時のエアコン
補正学習手順を示すフローチャート。
【図11】図11,図12はAT車走行レンジ補正値設
定手順を示すフローチャート。
【図12】同上
【図13】図13,図14は加減速補正設定手順を示す
フローチャート。
【図14】同上
【図15】ダッシュポット補正値設定手順を示すフロー
チャート。
【図16】ダッシュポット補正値更新手順を示すフロー
チャート。
【図17】ラジファン補正設定手順を示すフローチャー
ト。
【図18】図18,図19はパワステ補正値設定手順を
示すフローチャート。
【図19】同上
【図20】エアコンクラッチ補正値設定手順を示すフロ
ーチャート。
【図21】始動後補正初期値設定手順を示すフローチャ
ート。
【図22】始動後補正設定手順を示すフローチャート。
【図23】図23〜図25はクローズドループ補正I分
更新手順を示すフローチャート。
【図24】同上
【図25】同上
【図26】クローズドループ補正I分学習手順を示すフ
ローチャート。
【図27】エンジン制御系の概略図。
【図28】制御装置の構成図。
【図29】エアコンスイッチとエアコン補正値とエンジ
ン回転数の関係を示すタイムチャート。
【図30】走行レンジ、またはN,Pレンジと、AT車
走行レンジ補正とエンジン回転数の関係を示すタイムチ
ャート。
【図31】アイドルスイッチとスロットル開度と加減速
補正とエンジン回転数の関係を示すタイムチャート。
【図32】アイドルスイッチとエンジン回転数とダッシ
ュポット補正値の関係を示すタイムチャート。
【図33】ラジエータファンON/OFFとラジファン
補正の関係を示すタイムチャート。
【図34】アイドル判別回転数を設定する際のヒステリ
シスを示すタイムチャート。
【図35】パワステ転舵スイッチとパワステ補正値とエ
ンジン回転数の関係を示すタイムチャート。
【図36】エアコンスイッチとエアコンクラッチリレー
とエアコンコンプレッサの容量とエアコンクラッチ補正
値とエンジン回転数の関係を示すタイムチャート。
【図37】始動後補正の変化を示すタイムチャート。
【図38】デューティ比の変化を示すタイムチャート。
【図39】始動後補正値のクローズドループ補正I分へ
の移行を示すタイムチャート。
【図40】クローズドループ補正I分の補正量と差回転
との関係を示す説明図。
【図41】エンジン回転数とクローズドループ補正I分
の補正量とクローズドループ補正I分との関係を示すタ
イムチャート。
【図42】クローズドループ補正I分の学習値の使用状
況を示すタイムチャートである。
【符号の説明】
6e…エアバイパス通路 11d,11e…スロットルバルブ 13…ISCバルブ 50a…記憶手段(バックアップRAM) 89…エアコンスイッチ ACOFFI…エアコンオフ時学習値 ACONI…エアコンオン時学習値 DISCSD,ISCBAC …設定値 IMAXCL −ISCTW,IMAXBL ,IMAXCL …上限値 IMINCL −ISCTW,IMINBL …下限値 IMAX …上限基本値 ISC…フィードバック補正値(クローズドループ
補正I分) ISCON…開度設定値(デューティ比) ISCSD…始動後補正 ISCTW…基本特性値 NE …エンジン回転数 NSET …アイドル目標回転数 △N…差(差回転) TDISC…設定時間(始動後補正更新割込時間) TISCSD…始動後補正初期値テーブル TW …エンジン温度(冷却水温度)
フロントページの続き (56)参考文献 特開 昭62−101863(JP,A) 特開 平2−245443(JP,A) 特開 昭62−251447(JP,A) 特開 昭59−122759(JP,A) 特開 昭55−156227(JP,A) 特開 昭55−160138(JP,A) 特開 昭58−174144(JP,A) 特開 昭61−277841(JP,A) 特開 昭55−160137(JP,A) 特開 昭61−16246(JP,A) 実開 平4−27136(JP,U) (58)調査した分野(Int.Cl.7,DB名) F02D 41/00 - 45/00 F02D 29/00

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】始動時制御から通常時制御へ移行した直後
    にエンジン温度に基づき始動後補正初期値テーブルを参
    照して始動後補正を設定する手順と、 この始動後補正を、ゼロになるまで設定時間毎に設定値
    つ減算した値で更新する手順と、 オープンループ制御からアイドル目標回転数とエンジン
    回転数との差回転を設定範囲に収めるクローズドループ
    制御に移行した場合に始動後補正実行中のときには上記
    差回転に基づいて設定するフィードバック補正値に上記
    始動後補正を加算して該フィードバック補正値を更新
    し、さらに上記始動後補正をクリアする手順と、エンジン温度に基づいてスロットルバルブをバイパスす
    るエアバイパス通路に介装したISCバルブの基本的な
    開度を示す基本特性値を設定する手順と、 上記フィードバック補正値で、少なくとも上記基本特性
    値を補正して上記ISCバルブの開度を設定する手順
    を備えたことを特徴とするエンジンのISCバルブ制御
    方法。
  2. 【請求項2】上記フィードバック補正値を積分制御のみ
    で設定したことを特徴とする請求項1記載のエンジンの
    ISCバルブ制御方法。
JP02390592A 1992-02-10 1992-02-10 エンジンのiscバルブ制御方法 Expired - Fee Related JP3442795B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02390592A JP3442795B2 (ja) 1992-02-10 1992-02-10 エンジンのiscバルブ制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02390592A JP3442795B2 (ja) 1992-02-10 1992-02-10 エンジンのiscバルブ制御方法

Related Child Applications (2)

Application Number Title Priority Date Filing Date
JP2001107633A Division JP2001349227A (ja) 2001-04-05 2001-04-05 エンジンのiscバルブ制御方法
JP2001107632A Division JP3612286B2 (ja) 2001-04-05 2001-04-05 エンジンのiscバルブ制御方法

Publications (2)

Publication Number Publication Date
JPH05222973A JPH05222973A (ja) 1993-08-31
JP3442795B2 true JP3442795B2 (ja) 2003-09-02

Family

ID=12123487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02390592A Expired - Fee Related JP3442795B2 (ja) 1992-02-10 1992-02-10 エンジンのiscバルブ制御方法

Country Status (1)

Country Link
JP (1) JP3442795B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107850874A (zh) * 2015-11-30 2018-03-27 欧姆龙株式会社 控制装置

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3595112B2 (ja) * 1997-07-04 2004-12-02 株式会社日立ユニシアオートモティブ エンジンのアイドル回転学習制御装置
JPH1150888A (ja) * 1997-07-31 1999-02-23 Suzuki Motor Corp 内燃機関の空燃比制御装置
JP5126023B2 (ja) * 2008-11-26 2013-01-23 トヨタ自動車株式会社 内燃機関装置、それを搭載した車両および内燃機関装置の制御方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107850874A (zh) * 2015-11-30 2018-03-27 欧姆龙株式会社 控制装置
CN107850874B (zh) * 2015-11-30 2020-12-11 欧姆龙株式会社 控制装置

Also Published As

Publication number Publication date
JPH05222973A (ja) 1993-08-31

Similar Documents

Publication Publication Date Title
US4653452A (en) Method and apparatus for controlling fuel supply of internal combustion engine
JP3442795B2 (ja) エンジンのiscバルブ制御方法
JPH08114142A (ja) エンジンのアイドル制御方法
US4491922A (en) Method and apparatus for controlling stepping motor in idling rotational speed control
US4688534A (en) Idling speed control device of an internal combustion engine
JP3196902B2 (ja) エンジンのiscバルブ制御方法
JP3064606B2 (ja) エンジンのiscバルブ制御方法
JP3612286B2 (ja) エンジンのiscバルブ制御方法
JP3075436B2 (ja) エンジンのiscバルブ制御方法
JPH05195832A (ja) エンジンのiscバルブ制御方法
JP2001349227A (ja) エンジンのiscバルブ制御方法
JP3769213B2 (ja) Iscバルブ制御方法
JP3891786B2 (ja) 内燃機関の吸気制御装置
JP3586975B2 (ja) 内燃機関のアイドル回転数制御装置
JP3560264B2 (ja) エンジンの燃料噴射制御装置
JPH0680306B2 (ja) 内燃機関の点火時期制御装置
JP2001235019A (ja) 無段変速機の制御装置
JP3384498B2 (ja) エンジンの点火制御における処理遅れ解消方法
US5501204A (en) Assist air control apparatus for internal combustion engine
JPS58174144A (ja) アイドル回転数制御装置
JPH0320581B2 (ja)
JPS6210433A (ja) 内燃機関のアイドル回転数制御方法
JPS59206642A (ja) 内燃機関のアイドル回転数制御方法
JPS6116242A (ja) 内燃機関の燃料供給量制御方法
JPH0543872B2 (ja)

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees