(57)【特許請求の範囲】
【請求項１】
積分項を用いたアイドル回転数のフィードバック制御時に、フィードバック補正量の積分項をなまして第１の学習値として算出する第１の学習手段と、
所定の期間における、前記第１の学習値の最大値と最小値との差が所定値より小さいとき、該第１の学習値をなまして第２の学習値を算出する第２の学習手段と、
アイドル回転数のオープンループ制御時に、前記第２の学習値に基づいて決定される補正量を用いて内燃機関の絞り弁の開度を補正する補正手段と、
を備える内燃機関の絞り弁の開度を制御する電子制御装置。
【請求項２】
前記補正手段は、前記第２の学習値としきい値とを比較して、前記第２の学習値が該しきい値以下の場合はデフォルト値を用いて前記補正量を決定し、前記第２の学習値が該しきい値より大きい場合は、該第２の学習値を用いて前記補正量を決定する、請求項１に記載の電子制御装置。
【請求項３】
前記第１の学習手段は、前記第１の学習値を次式（１）に基づいて算出し、前記第２の学習手段は、前記第２の学習値を次式（２）に基づいて算出する、請求項１または２記載の電子制御装置。
IXREFN＝IAIN×なまし係数＋IXREFN(n-1)×（１−なまし係数）・・・（１）
IXREFDBW＝IXREFN×なまし係数＋IXREFDBW(n-1)×（１−なまし係数）・・・（２）
式（１）において、IXREFNは第１の学習値、IAINはPIDフィードバック制御の積分項、IXREFN(n-1)は第１の学習値の前回値であり、式（２）において、IXREFDBWは第２の学習値、IXREFNは第１の学習値、IXREFDBW(n-1)は第２の学習値の前回値である。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、内燃機関のアイドル回転数制御に関する。
【０００２】
【従来の技術】
従来より、車両の運転状態が所定のアイドル領域にあるときは、内燃機関の回転数をアイドル領域目標回転数になるようにフィードバック制御している。車両の運転状態がアイドル領域外に移行したとき（たとえば、車速やスロットル開度が所定値を超えたとき）は、内燃機関の回転数の下限を、前記のアイドル領域目標回転数とは別に設定されたアイドル領域外目標回転数にオープンループ制御するようにしている。
【０００３】
アイドル領域外目標回転数は、一般に、内燃機関の冷却水温度が低いときや、エアコンディショナーやパワーステアリングといった補機類の負荷が高いときときは、内燃機関の運転安定性を確保するため通常より高い回転数に設定される。
【０００４】
下記の特許公開公報には、アイドル領域目標回転数へのフィードバック制御を行いながら、フィードバック制御値に基づいてフィードバック補正量の学習値を算出することが記載されている。この学習値は、車両の運転状態によりフィードバック条件が成立しなくなり、オープンループ制御に移行したときに、フィードバック補正量に代えて使用される。こうしてオープンループ制御時のアイドル回転数の安定化が図られている。また、長年の使用によりスロットルバルブに潤滑油成分や燃焼生成物が付着し、いわゆるカーボン詰まり（デポジット）を生じることが知られている。カーボン詰まりが生じると、スロットルバルブの開口面積が減少する。同公報には、車両の使用初期における上記学習値に対する経年使用後の学習値の増大量に基づいてカーボン詰まり量による影響を検出し、このカーボン詰まり量による影響に応じてスロットルバルブ開度を補正することが記載されている。
【０００５】
【特許文献１】
特開平11-270389号公報
【０００６】
【発明が解決しようとする課題】
従来の手法によると、フィードバック補正量に基づいた学習値は、運転状態の影響を多分に含んでいる。したがって、使用初期の学習値と経年変化後の学習値との偏差をとることにより検出されるカーボン詰まり量による影響は、運転状態の影響を多く含んでいる。このカーボン詰まり量を反映したオープンループ制御は、フィードバック条件が成立しない運転状態、すなわちフィードバック制御時とは異なる運転状態、において実行される。したがって、運転状態の相違により、カーボン詰まり量による影響に基づく補正がオープンループ制御に適さず、適正なエアー補正をすることができない可能性がある。したがって、アイドル回転数制御において、オープンループ制御に適正なエアー補正をする技術に対する必要性が存在する。
【０００７】
【課題を解決するための手段】
この発明（請求項１）の内燃機関の絞り弁を制御する電子制御装置は、上記の課題を解決するため、アイドル回転数のフィードバック補正量に基づいて第１の学習値を算出する第１の学習手段と、前記第１の学習値が安定している状態において、該第１の学習値に基づく第２の学習値を算出する第２の学習手段と、アイドル回転数のオープンループ制御時に、前記第２の学習値を補正量として前記絞り弁の開度を補正する補正手段と、を備える。
【０００８】
この発明によると、第１の学習手段が算出した第１の学習値に基づいて、この学習値が安定している状態において、第２の学習値を算出する。第１の学習値が安定している状態は、フィードバック制御において運転状態が安定していることに対応する。したがって、第２の学習値は、運転状態の影響をほとんど受けない。こうして、吸気絞り弁に付着したカーボン詰まり量を反映した補正量として、運転状態の影響の小さい値を使用することができるので、適正なエアー補正をすることができる。
【０００９】
この発明の一形態（請求項２）によると、電子制御装置は、プロセッサを備え、このプロセッサは、アイドル回転数のフィードバック補正量に基づいて第１の学習値を算出し、前記第１の学習値が安定している状態において、該第１の学習値に基づく第２の学習値を算出し、アイドル回転数のオープンループ制御時に、前記第２の学習値を補正量として前記絞り弁の開度を補正するよう、プログラムされている。
【００１０】
この発明の一形態（請求項３）によると、上記発明において、前記第１の学習値が安定している状態は、該第１の学習値の最大値と最小値との差が所定値より小さいことに基づいて判定する。学習値の変化が小さい状態、すなわち運転状態が安定している状態で第２の学習値を算出する趣旨である。
【００１１】
【発明の実施の形態】
次に図面を参照して、この発明の実施の形態を説明する。図１は、内燃機関のアイドル回転数制御装置の全体的な構成を示すブロック図である。エンジン10は、たとえば４気筒の自動車エンジンである。吸気管12には主たる絞り弁であるスロットルバルブ14が配置されている。スロットルバルブ14は、電子制御装置（Electronic Control Unit, ECU）60からの制御信号に応じてアクチュエータ18によって駆動される。ＥＣＵ60は、図に示さないアクセルペダルの踏み込み量センサからの検出出力に応じて、スロットルバルブ14を開閉制御するための制御信号をアクチュエータ18に送る。この方式は、ドライブバイワイヤ方式と呼ばれており、他の方式には、ワイヤ16をアクセルペダルに接続してアクセルペダルにより直接的にスロットルバルブを制御する方式がある。スロットルバルブ14の近くにスロットルバルブ開度センサ20が設けられており、スロットル開度θTHに応じた信号を出力する。
【００１２】
スロットルバルブ14の下流のインテークマニホールドの直後の吸気ポート付近に、気筒ごとにインジェクタ（燃料噴射装置）24が設けられている。インジェクタ24は、燃料タンクに燃料供給管および燃料ポンプを介して接続され、ガソリン燃料の供給を受け、吸気ポート内に噴射する。
【００１３】
吸気管12には、スロットルバルブ14をバイパスするバイパス通路（２次空気通路）26が接続されている。バイパス通路26にはバイパス空気量を調整する制御バルブ(EACV)30が設けられている。制御バルブ30は、常閉型であり、電磁ソレノイドによって開閉駆動されるバルブを備えている。
【００１４】
吸気管12のスロットルバルブ14の下流には絶対圧センサ32および吸気温センサ34が備えられ、それぞれ吸気管内絶対圧PBAおよび吸気温TAを示す電気信号を出力する。
【００１５】
エンジン10のカムシャフトまたはクランクシャフトの付近に気筒判別センサ(CYL)40が設けられており、たとえば第１気筒の所定クランク角度一で気筒判別信号CYLを出力する。また、TDCセンサ42およびクランク角センサ(CRK)44が備えられており、前者は、各気筒のピストン上死点(TDC)位置に関連した所定のクランク角度位置でTDC信号を出力し、後者は、TDC信号よりも周期の短いクランク角度（たとえば30度）でCRK信号を出力する。
【００１６】
エンジン10は、エキゾーストマニホールドを介して排気管46に接続され、燃焼によって生じた排出ガスを触媒装置50で浄化し、外部に排出する。触媒装置50の上流には広域空燃比(LAF)センサ52が設けられ、リーンからリッチにわたる広範囲において排出ガス中の酸素濃度に比例する信号を出力する。
【００１７】
自動車の車輪を駆動するドライブシャフトの付近に車速センサ54が配置され、ドライブシャフトの所定回転ごとに信号を出力する。また、車両には大気圧センサ56が設けられ、大気圧に応じた信号を出力する。
【００１８】
これらのセンサの出力は、電子制御装置（ECU）60に送られる。ECU60は、マイクロコンピュータで構成されており、演算を行うプロセッサCPU60a、制御プログラムおよび各種データのリスト、テーブルを格納するROM60b、およびCPU60aによる演算結果などを一時記憶するRAM60cを有する。各種センサの出力は、ECU60の入力インターフェイス60dに入力される。入力インターフェイス60dは、入力信号を整形して電圧レベルを修正する回路、およびアナログ信号からディジタル信号に変換するA/D変換器を備えている。
【００１９】
CPU60aは、クランク角センサ44からのCRK信号をカウンタでカウントしてエンジン回転するNEを検出し、また、車速センサ54からの信号をカウントして車両の走行速度VPを検出する。CPU60aは、ROM60ｂに格納されたプログラムに従って演算を実行し、出力インターフェイス60eを介してインジェクタ24、点火装置（図示せず）、スロットルバルブ・アクチュエータ18などに駆動信号を送る。
【００２０】
次に図２を参照して、この発明の一実施形態における制御の概念を説明する。点線で示す第１学習値（IXREFN）は、後に図３を参照して説明するプロセスによって算出される値で、アイドル中のスロットルバルブ14の開度をPIDフィードバック制御するときの、積分項（IAIN）をなました値である。実線で示す第２学習値（IXREFDBW）は、後に図５を参照して説明するプロセスによって算出される値で、第１学習値をなました値である。所定値IXREFMは、第２学習値IXREFDBWのデフォルト値である。図２は、経年変化により、第１学習値および第２学習値が変化する様子をモデル的に示している。
【００２１】
後に図６を参照して説明するように、アイドル回転数のフィードバック制御条件が成立しなくなり、オープンループの制御に移行すると、第２学習値が図２のしきい値線より下にある場合は、第２学習値のデフォルト値IXREFMがアイドル回転数制御のフィードバック項IFBFとして使用される。経年変化により、第２学習値が図２のしきい線を超えるようになると、デフォルト値IXREFMに（第２学習値IXREFDBW − デフォルト値IXREFM）を上乗せした値、すなわち、第２学習値がアイドル回転数制御のフィードバック項IFBFとなる。このように、アイドル回転数のオープンループ制御では、アイドル回転数のフィードバック制御のフィードバック項に代えてデフォルト値IXREFMまたは第２学習値IXREFDBWが使用される。他の実施例では、第２学習値にデフォルト値を設けることなく、直接、第２学習値をフィードバック項として使用する。
【００２２】
次に図３を参照して上記の学習値を算出するプロセスを説明する。まず、車両の状態が学習許可領域にあるかどうか、すなわち車両の状態が学習値の算出に適しているかどうかをサブルーチンS101で判定し、ステップS103に進む。ステップS101の学習許可領域の判定プロセスは、後に図４を参照して説明する。
【００２３】
ステップS103では、なんらかのデバイスの故障を示すフラグが１にセットされているかどうか判定される。このフラグが１にセットされていなければ、ステップS105に進む。ステップS105では、学習許可フラグが１にセットされているかどうか判定される。学習許可フラグは、サブルーチンS101においてセットされる。学習許可フラグが１にセットされているならば、ステップS107でカウンタの値を１だけ減らして（デクリメントして）、ステップS109に進む。このカウンタは、学習値の算出間隔を設定するためのもので、後に説明するステップS111およびS119で初期値にセットされる。ステップS109でカウンタの値が０に達しているかどうか判定され、０になっていなければ、プロセスを終了し、所定時間後に再度ステップS101からプロセスを開始する。
【００２４】
ステップS109でカウンタが０になっているならば、このカウンタを初期値にセットし(S111)、第１学習値の算出ステップS113に進む。ここで、第１学習値IXREFNは、次に式で算出される。
【００２５】
【数１】
IXREFN = IAIN × なまし係数 ＋ IXREFN(n-1) ×（1−なまし係数）
【００２６】
IAINは、PIDフィードバック制御の積分項である。IXREFN(n-1)は、学習値IXREFNの前回値である。なまし係数は、たとえば、0.7である。この実施例では、なまし係数を用いて学習値を求めたが、他の実施例では、積分項IAINの移動平均を学習値とする。こうして算出された学習値は、RAM60cに記憶される。
【００２７】
次にプロセスは、後に図５を参照して説明する第２学習値算出プロセスS115に進む。上述したステップS103でデバイス故障フラグが１にセットされているときは、上述した所定のデフォルト値IXREFMを第１学習値IXREFNとし（S117）、学習値算出間隔を定めるカウンタに初期値をセットして（S119）、プロセスを終了する。
【００２８】
図４を参照して、図３に示した学習許可領域の判定ステップS101の詳細を説明する。まずステップS121において、車両がアイドル回転数をフィードバック制御するモードにあるかどうかを、車両の運転モードを示すステータスコードに基づいて判定する。否定のときは、学習許可フラグを０（不許可）にセットして（S137）、プロセスを終了する。肯定のときは、ステップS123に進み、エンジン始動から所定の時間が経過したことを示すフラグが１にセットされているかどうかを判定する。このフラグが１にセットされていないときは、学習許可フラグを０にセットして(S137)、プロセスを終了する。エンジン始動直後は、エンジンの状態が安定していないので、学習を禁止するのである。
【００２９】
エンジン始動から所定の時間が経過していると、ステップS125に進み、吸気管内の絶対圧PBAが所定値より大きいかどうかが判定される。PBAは、エンジンの負荷を反映しており、PBAが所定値より大きいことは、エンジン負荷が大きいことを意味し、学習値の算出に適さないので、ステップS137を経てプロセスを終了する。PBAが所定値以下であれば、ステップS127に進み、ゲージ圧PBGA、すなわち大気圧PAと吸気管内圧PBAとの差、が所定値より大きいかどうかが判定される。ゲージ圧PBGAが所定値より大きいことは、高負荷を意味し、学習値の算出に適さないので、学習許可フラグを０にセットして（S137）、プロセスを終了する。
【００３０】
ゲージ圧PBGAが所定値以下であれば、ステップS129に進み、エンジン回転するNEの変動が所定値より大きいかどうかが判定される。NEの変動が所定値より大きいときは、学習値の算出に適さないので、学習許可フラグを０にセットして(S137)、プロセスを終了する。NE変動が所定値以下であれば、ステップS131に進み、エンジンの目標回転数NOBJの今回値と前回値との差が所定値より大きいかどうかが判定される。NOBJの偏差が大きいことは、エンジン回転が安定していないことを意味し、学習値の算出に適さないので、学習許可フラグを０にセットして（S137）、プロセスを終了する。
【００３１】
NOBJ偏差が所定値以下であれば、ステップS133に進み、エンジン水温TWが所定値より低いかどうかが判定される。エンジン水温が所定値以下のときは、エンジンが不安定で学習値の算出に適さないので、学習許可フラグを０にセットして（S137）、プロセスを終了する。エンジン水温が所定値以上であれば、学習許可フラグを１にセットし（S135）、プロセスを終了する。
【００３２】
次に図５を参照して、図３のサブルーチンS115における第２学習値の算出プロセスを説明する。まず、ステップS141において吸気管圧力PBAが所定値以下であるかどうかを判定する。前述のようにPBAは、エンジン負荷に対応し、この値が小さいことはエンジン負荷が小さいことを意味する。PBAが所定値以下であると、ステップS143に進み、図３のステップS113で算出された第１学習値のうち、図５のステップS149で更新される最大値と、同様にステップS151で更新される最小値との差が所定値以下であるかどうかが判定される。ステップS159で設定されるタイマで決められる所与の期間における第１学習値の最大値と同期間における第１学習値の最小値との差が所定値以下の状態で第２学習値を算出する趣旨である。こうすることにより、エンジンの運転状態が安定している領域での学習値を得ることができる。
【００３３】
ステップS143での判定がノーのときは、ステップS157に進み、第１学習値の現在値を、IXREFN最大値およびIXREFN最小値にセット、ステップS159でタイマに所定値をセットして、プロセスを終了し、予め定めた周期で図３のプロセスから処理を繰り返す。ステップS159のタイマの作用については、後に説明する。
【００３４】
ステップS157を経てプロセスを終了した後、次回に図５のプロセスに入ると、ステップS157でIXREFN最大値およびIXREFN最小値が同じ値に設定されているから、S143における判定は、イエスになる。したがって、プロセスは、ステップS145に進み、図３のステップS113で算出された第１学習値IXREFNがステップS157で設定されRAM60cに記憶されているIXREFN最大値より大きいかどうかが判定され、大きければ、第１学習値の現在値でIXREFN最大値を置き換える（S149）。この判定がノーのときは、IXREFN現在値がIXREFN最小値より小さいかどうか判定され（S147）、小さければIXREFN現在値でIXREFN最小値を置き換える（S151）。これらの最大値、最小値の更新プロセスを終了すると、ステップS159で初期値に設定されるタイマが０になっているかどうか、すなわちIXREFN最大値とIXREFN最小値との差が所定値以下である状態がタイマで設定された期間続いたかどうかを判定し、タイマが０になっているとき、ステップS155に進み、第２学習値を算出する。タイマが０になっていないときは、プロセスを終了して予め定めた周期で図３のプロセスから開始する。
【００３５】
ステップS155では、第２学習値IXREFDBWが次に式に従って算出される。
【００３６】
【数２】
IXREFDBW = IXREFN × なまし係数 + IXREFDBW(n-1) × (1 − なまし係数)
【００３７】
なまし係数は、たとえば0.7であるが、第１学習値のなまし係数とは異なる値を使用してもよい。
【００３８】
次に図６を参照して、アイドル回転数フィーダバック項IFBFの決定プロセスを説明する。まず、ステップS161において第２学習値IXREFDBWが図２に一点鎖線で示すしきい値を超えたかどうかを判定する。このしきい値は、前述のデフォルト値IXREFMよりわずかに高い値に設定されている。第２学習値がしきい値を超えていれば第２学習値IXREFDBWとデフォルト値IXREFMとの差(IXREFDBW − IXREFM)を差分値として設定し（S163）、超えていなければ、差分値として０を設定し（S165）、ステップS167に進む。ステップS167ではエンジンが始動モードにあるかどうかを判定し、始動モードにあれば、ステップS177に進み、アイドル回転数フィードバック項IFBFとして、ITWF + IXREFM + 差分値  を設定する。ここで、ITWFは、エンジン水温に応じた補正項である。第２学習値がしきい値を超えているときの差分値は、IXREFDBW − IXREFM であるから、IFBFの値は、ITWF + IXREFDBWとなる。第２学習値がしきい値を超えていないときは、差分値は０であるから、IFBFの値は、ITWF + IXREFM となる。  他の実施例では、ITWFを０とし、第２学習値がしきい値を超えているかどうかによって、フィードバック項IFBFをIXREFDBWまたはIXREFMとする。
【００３９】
ステップS167でエンジンが始動モードでないと判定されると、ステップS169において、アイドル回転数のフィーダバック制御モードにあるかどうかをモードの識別子から判定し、フィードバック制御モードにあれば、ステップS175に進み、フィードバック項IFBFとして、フィードバック制御プログラムによって算出されるフィードバック項IFBを設定する。IFBの算出は、この発明の範囲でないので、説明を省略する。
【００４０】
ステップS169でフィードバック制御モードでないと判定されたときは、ステップS171に進み、アイドル回転数制御以外のオープンループ制御モードにあるかどうかをモード識別子から判定する。エンジンが低水温の暖機過程にあるなど、モードがアイドル回転中のオープンループ制御であることが示されると、ステップS173に進み、フィードバック項IFBFを設定する。ステップS173の内容は、前述したステップS177と同じである。
【００４１】
以上にこの発明を具体的な実施例について説明したが、この発明は、このような実施例に限定されるものではない。
【００４２】
【発明の効果】
この発明によると、カーボン付着による経年劣化に対応して絞り弁開度の適切な補正を行うことができ、その結果、アイドル回転数のオープンループ制御時に安定した回転数制御を行うことができる。また、運転状態の影響を排除して正確なカーボン詰まり量対応の学習値を算出することができる。
【図面の簡単な説明】
【図１】この発明の一実施例の自動車エンジンの電子制御装置の全体的な構成を示すブロック図。
【図２】この発明の一実施例における第１学習値IXREFN、第２学習値IXREFDBW、デフォルト値IXREFM、およびしきい値の関係を示す図。
【図３】学習値算出の全体的なプロセスを示すフローチャート。
【図４】学習許可領域判定プロセスのフローチャート。
【図５】第２学習値算出プロセスを示すフローチャート。
【図６】アイドル回転数フィードバック項算出プロセスを示すフローチャート。
【符号の説明】
１０      内燃機関（エンジン）
１４      スロットルバルブ（絞り弁）
６０      電子制御装置（ECU）
【図１】
0004056413.tif 000002
【図２】
0004056413.tif 000003
【図３】
0004056413.tif 000004
【図４】
0004056413.tif 000005
【図５】
0004056413.tif 000006
【図６】
0004056413.tif 000007