以下、本発明の実施の形態について図面を参照して説明する。本実施の形態は一例として、本発明を車両に搭載されたガソリンエンジンに適用する場合について説明する。
−エンジンの概要−
図1にはエンジン1の概略構成を示すが、本実施の形態のエンジン1は4気筒ガソリンエンジンであって、第1〜第4の4つの気筒2(図には1つのみ示す)のそれぞれには燃焼室11を区画するようにピストン12が収容されている。ピストン12とクランクシャフト13はコンロッド14によって連結されており、そのクランクシャフト13の回転角(クランク角)を検出するためのクランク角センサ101が設けられている。
詳しくは、前記クランクシャフト13にはシグナルロータ17が取り付けられており、その外周面に複数の歯17aが設けられている。一方、クランク角センサ101は、例えば2つの電磁ピックアップを備えており、クランクシャフト13の回転によってシグナルロータ17の歯17aが通過する都度、それぞれの電磁ピックアップからパルス信号が出力されるようになっている。
前記2つの電磁ピックアップのうち一方から出力される信号がクランク信号であり、他方から出力される信号は、クランク信号と所定の位相差を有している。このため、一方の電磁ピックアップからの信号の立ち上がり時または立ち下がり時に、他方の信号がロー、ハイのいずれであるかによって、クランクシャフト13が正回転中か否か(逆転動作中か)判定することができる。
また、図示はしないがクランクシャフト13の端部には、一体に回転するようにフライホイールが取り付けられており、その外周に形成されたリングギヤにピニオンギヤを噛み合わせて、回転させることができるようにスタータモータ18(図1には模式的に示す)が配設されている。このスタータモータ18は、エンジン1の通常の始動の際に、後述するようにECU100からの信号を受けて動作する。
また、シリンダブロック15の上部にはシリンダヘッド16が載置されており、各気筒2毎にインジェクタ19が配設されて、燃焼室11に臨んでいる。例えば気筒2の吸気行程でインジェクタ19から噴射された燃料は、気筒2内の吸気の流動に乗って拡散しながら混合気を形成する。こうして形成される混合気に点火するために、シリンダヘッド16には点火プラグ20も配設され、イグナイタ21からの電力の供給を受けて火花放電するようになっている。
さらに、シリンダヘッド16には、各気筒2内の燃焼室11に連通するように吸気ポート30および排気ポート40が形成されており、それぞれの気筒2内に臨む開口部が吸気バルブ31および排気バルブ41によって開閉されるようになっている。これら吸気バルブ31および排気バルブ41を動作させる動弁系は、吸気および排気の2本のカムシャフト32,42を備え、図示しないタイミングチェーンおよびスプロケットを介して、クランクシャフト13により回転される。
また、吸気カムシャフト32の近傍には、いずれかの気筒2が所定クランク角位置(例えば第1気筒2が上死点)にあるときにパルス信号(以下、カム信号という)を出力するように、カム角センサ102が設けられている。吸気カムシャフト32はクランクシャフト13の半分の速度で回転するので、クランクシャフト13が2回転(クランク角で720°変化)する毎に、カム角センサ102は少なくとも1回、カム信号を出力する。
また、前記吸気ポート30の上流側(吸気の流れの上流側)に連通する吸気通路3には、エアフローメータ103、吸気温センサ104(エアフローメータ103に内蔵)、および、電子制御式のスロットルバルブ33が配設されている。このスロットルバルブ33はスロットルモータ34によって駆動され、吸気の流れを絞ってエンジン1の吸気量を調整するようになっている。
そのようにスロットルバルブ33によって流量調整された吸気の流れが吸気ポート30から各気筒2内に流入し、前記のようにインジェクタ19から噴射された燃料と混じり合って混合気を形成する。そして、圧縮行程の後半に点火プラグ20により点火されて燃焼し、これにより発生したガスが気筒2の排気行程で排気ポート40に流出する。この排気ポート40の下流側(排気の流れの下流側)に連通する排気通路4には、排気浄化用の触媒43が配設され、その上流側には空燃比センサ105が配設されている。
−ECU−
以上のように構成されたエンジン1はECU100によって制御される。ECU100は、公知の電子制御ユニット(Electronic Control Unit)からなり、図示は省略するが、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)およびバックアップRAMなどを備えている。CPUは、ROMに記憶された制御プログラムやマップに基づいて各種の演算処理を実行する。また、RAMは、CPUでの演算結果や各センサから入力されたデータ等を一時的に記憶し、バックアップRAMは例えばエンジン1の停止時に保存すべきデータ等を記憶する。
そして、ECU100には、前記したクランク角センサ101、カム角センサ102、エアフローメータ103、吸気温センサ104、空燃比センサ105などの他に、アクセルペダルの操作量(アクセル開度)を検出するアクセルセンサ106、ブレーキペダルの操作を検出するブレーキスイッチ(ブレーキSW)107、スタータモータ18を動作させるためのスタータスイッチ(スタータSW)108などが接続されている。
そして、それらの各種センサおよびスイッチ101〜108から入力する信号に基づいてECU100は、種々の制御プログラムを実行することにより、エンジン1の運転状態を制御する。例えばECU100は、インジェクタ19による燃料噴射制御(噴射量および噴射時期の制御)、イグナイタ21による点火制御(点火プラグ20のよる点火時期の制御)、およびスロットルモータ34によるスロットルバルブ33の制御(即ち、吸気量の制御)などを実行する。
そのような燃料噴射制御や点火制御は各気筒2毎に好適なタイミングで行われるものであり、そのために、クランクシャフト13の2回転(クランク角で720°)を1周期とするクランクカウンタが生成される。図2に一例を示すようにクランクカウンタは、例えば第1気筒2の上死点(#1TDC)を基準として生成され、図2の下段に示すように時刻t1にカム信号の入力に応じてリセットされて、カウント値が零(0)になった後に、クランク信号の入力に応じてカウントアップされてゆく。
また、ECU100は、スタータSW108がオン操作されるとスタータモータ18を動作させ、クランクシャフト13を回転させる(クランキング)とともに、始動時の燃料噴射および点火の制御を実行して、エンジン1を始動(通常の始動)させる。さらに、以下に説明するようにECU100は、車両の停止時など所定の状況下において自動的にエンジン1を停止させるとともに、その後の運転者の所定操作に応じて、スタータモータ18を用いずにエンジン1を再始動させる、アイドリングストップ制御も実行する。
−アイドリングストップ制御−
図3にはアイドリングストップ制御ルーチンの全体的な処理の流れを示している。このルーチンは、ECU100において所定のタイミングで繰り返し実行されるものであり、まず、ステップST101において、エンジン1の運転中に所定の自動停止条件が成立したか否か判定する。そして、否定判定(NO)であればリターンする一方、肯定判定(YES)になればステップST102に進んでエンジン1の自動停止処理を実行する。
なお、前記の自動停止条件としては、一例としてエンジン1が運転中であること、アクセルオフ(アクセル開度が所定閾値以下でほぼ0)であること、ブレーキオン(ブレーキ踏力が所定の閾値以上)であること、車速が所定閾値以下であること(停止直前と考えられる場合、および実質、停止していると考えられる場合)などを含むように設定すればよい。
前記ステップST102の自動停止処理により、インジェクタ19からの燃料噴射と点火プラグ20による点火とを停止させると、前記の図2に表れているようにクランクシャフト13の回転速度が徐々に低下してゆく。このときにスロットル開度θは、後述するようにクランク回転速度(クランクシャフト13の回転速度をなました値であり、図2には一点鎖線で示す)の低下度合いに応じて制御する。
また、そうしてクランクシャフト13の回転速度が低下してゆくときには、例えばオルタネータやエアコンのコンプレッサなど、エンジン1の外部負荷となる補機の動作を停止させることが好ましい。そして、以下に詳述するようにクランクシャフト13の回転の停止が判定され(ステップST103)、否定判定(NO)であれば後述のステップST108に進んで、所定の再始動条件が成立したか否か判定する。
このステップST108においても否定判定(NO)すれば前記ステップST102に戻る一方、肯定判定(YES)すればステップST109に進み、エンジン1の着火始動処理を行ってルーチンを終了する(END)。詳しい説明は省略するが、着火始動処理というのは、クランクシャフト13の回転の慣性を利用して、スタータモータ18を使用せずにエンジン1を再始動する処理である。
すなわち、アイドリングストップ制御によってエンジン1が自動停止するのは通常、運転者が車両を停止させようとしているときであるが、エンジン1が完全に停止する直前に運転者の心変わり(Change Of Mind:COM)によって、再びエンジン1を始動することがある。このときに運転者は例えばブレーキペダルを離して、アクセルペダルを踏み込むので、エンジン1の再始動条件が成立する。
このときには、圧縮行程にある気筒2(例えば図2を参照して上述した時刻t1〜t2であれば第3気筒2)が上死点(#3TDC)を越えて膨張行程に移行したときに、インジェクタ19により燃料を噴射させ、これにより混合気が形成されるのを待って点火プラグ20により点火する。これによりクランクシャフト13に回転力を付与することができ、スタータモータ18を用いずにエンジン1を始動させることができる。
一方、前記のステップST103においてクランクシャフト13の回転が停止したと肯定判定(YES)すれば、即ちエンジン1の停止過程が終了すれば、ステップST104に進んで所定のデータをバックアップRAMに記憶する。そして、ステップST105に進んでエンジン1の再始動条件が成立したか否か判定し、否定判定(NO)であればステップST106に進んで、例えば車両のイグニッションスイッチがオフされたなど、アイドリングストップ制御の終了条件が成立したか否か判定する。
そして、その終了条件が成立して肯定判定(YES)すれば、ルーチンを終了する(END)一方、終了条件が成立しておらず否定判定(NO)すれば、前記のステップST105に戻って、再び再始動条件の成立について判定する。こうして待機している間に、再始動条件が成立して肯定判定(YES)すれば、ステップST107に進んでエンジン1の通常の再始動処理を実行する。
なお、前記ステップST105,ST108におけるエンジン1の再始動条件としては例えば、ブレーキペダルの踏力が緩められて所定の閾値よりも小さくなったこと、アクセル踏み操作がなされたこと、シフトレバーの所定の操作がなされたこと、などを含むように設定すればよい。
また、前記通常の再始動処理について詳細な説明は省略するが、例えばスタータモータ18を作動させてクランキングを開始するとともに、インジェクタ19による燃料の噴射を開始させ、さらに点火プラグ20による点火も開始する。これにより、いずれかの気筒2において燃焼が始まり(初爆)、エンジン回転数が所定値まで上昇すれば(始動完了)、ルーチンを終了する(END)。
−エンジンの停止判定−
次に、前記フローのステップST103におけるクランクシャフト13の回転停止の判定について詳細に説明すると、まず、エンジン1が停止するときには、前記図2の上段に表れているようにエンジン回転数が低下するが、このときには、同図の中段に示すようにクランクシャフト13の回転速度も全体として低下してゆく。また、クランク信号の入力する間隔が長くなってゆくことから、同図の下段に示すようにクランクカウンタのグラフの傾斜は徐々に緩やかになってゆく。
このようにエンジン1の停止する過程においてクランクシャフト13の回転は、各気筒2毎の圧縮行程において上昇する筒内圧によって減速され、図の中段に表れているように上死点(TDC)に近づくに連れて、クランクシャフト13の回転速度が低下する。一方、上死点を越えて膨張行程に移行すれば、今度は筒内圧によってクランクシャフト13の回転が加速されるので、その回転速度は上昇する。
すなわち、クランクシャフト13の回転速度は、各気筒2の上死点(#1TDC、#3TDC、#4TDC、…)の前後で低下および上昇を繰り返しながら、図2には一点鎖線で示すように全体としては徐々に低下してゆく。これにより回転の慣性力が小さくなってゆき、図示の例では時刻t2において第3気筒2の上死点(#3TDC)を越えた後に、時刻t3において第4気筒2の筒内圧に抗して上死点(#4TDC)を越えることができなくなる。
このためクランクシャフト13は、上死点の手前で一瞬、停止した後に逆転動作し、その後、再び正回転の向きに少しだけ動作する、という揺り戻しの期間を経て完全に停止するようになる。このとき、時刻t3の少し手前でクランクシャフト13が逆転動作した後は、クランク信号に応じてクランクカウンタが減少し、また、時刻t4において再び正回転の向きになれば、時刻t5においてクランクカウンタは増大する。
そうして揺り戻し期間を経て停止するまでの間にクランクシャフト13の回動する角度が小さくなると、クランク角センサ101からはクランク信号が出力されなくなる。そして、時刻t5〜t6のようにクランク信号の入力しない時間が予め設定した時間Δtになると(時刻t6)、クランクシャフト13の回転が停止した(即ちエンジン1が完全に停止した)と判定される。
−エンジンの停止過程におけるスロットル制御−
ところで、前記の着火始動のように、スタータモータ18を用いずにエンジン1を始動させるためには、最初に点火される第3気筒2において十分な新気の量を確保し、大きな燃焼トルクを得ることが望ましい。そのためには、エンジン1が停止する過程において、予め再始動に備えてスロットルバルブ33を或る程度、開いておくことも考えられるが、こうすると各気筒2の圧縮反力が大きくなる結果として、エンジン1の振動なども大きくなるおそれがある。
すなわち、図2を参照して上述したように、エンジン1が停止するときにクランクシャフト13の回転速度は、全体として低下しながら各気筒2の上死点(TDC)の前後で変動する。また、そのようにクランクシャフト13の回転速度が低下するときには、これに伴い吸気通路3の負圧が小さく(圧力は高く)なってゆき、各気筒2への充填効率が高くなるので、その圧縮反力が大きくなって前記の回転変動が大きくなりやすい。
つまり、前記のようにエンジン1の再始動に備えてスロットル開度θを大きくすると、各気筒2の圧縮反力の増大によって、図2には点線のグラフで示すように回転変動が大きくなってしまい、エンジン1の停止過程における振動が増大してしまう。また、停止間際のクランクシャフト13の逆転動作およびその後の正転動作(揺り戻し)も大きくなって、エンジン1が大きく揺動することにもなる。
以上、要するにエンジン1の停止過程における振動の低減と、その後の再始動性の確保とは相反する要求であり、最適なバランスが求められるが、前記のようにクランクシャフト13の回転速度が低下するときには、回転部分のイナーシャやフリクションの個体ばらつき、オルタネータなどの動作による負荷の変化、エンジンオイルの性状、さらにはシフトポジションの影響も受けて、前記の最適なバランスが変化してしまう。
そこで、本実施の形態では、前記の最適なバランスを実現できるようなクランク回転速度を予め実験やシミュレーションなどによって求めて、これを基準値として設定しておく。そして、エンジン1の停止過程において、クランク信号に基づいて実際のクランク回転速度の低下度合いを算出し、これが前記の基準値になるようにスロットル開度θをフィードバック補正するようにしている。
以下では図4のフローチャートを参照して、アイドリングストップ制御時のスロットル制御ルーチンについて具体的に説明する。このルーチンは、図3を参照して上述したエンジン1の自動停止処理(ステップST102)が行われて、クランクシャフト13の回転速度が低下するときに、所定のタイミングで(例えば前記自動停止処理の実行を示すフラグがオンになったときに)開始される。
そして、まず、ステップST201では、自動停止処理の開始直後のクランク回転速度の低下度合いを表す最初の回転減速度α0を算出する。すなわち、前記図2の中段に一点鎖線で示すようにクランク回転速度は、クランク信号から算出されるクランクシャフト13の回転速度をなまして、回転変動の影響を除去したものであり、このクランク回転速度の所定時間当たりの減少量(絶対値)を、回転減速度αとして算出する。
なお、本実施の形態ではクランク回転速度は、図2の上段に示すエンジン回転数よりも短い時間における平均値としているが、これに限らず、エンジン回転数を算出するための時間と同じ時間における平均値としてもよい。そして、前記のように自動停止処理の開始と同時に算出した回転減速度α0に対応する所定開度θ0になるように、ステップST202においてスロットル開度θを制御する。
この所定開度θ0は、エンジン1の自動停止処理においてインジェクタ19による燃料の噴射を停止した直後の回転減速度α0に対応付けて、その後、速やかに回転減速度αを前記の基準値α*に近づけるような値を、予め実験やシミュレーションによって設定したものであり、例えばマップとしてECU100のROMに記録されている。このマップにおいては一例として、回転減速度α0が大きいほど所定開度θ0が大きくなるように設定されている。
そこで、前記のステップST202において所定開度θ0になるようにスロットル開度θを制御した後のステップST203では、前記のステップST201と同様にして現在の回転減速度αを算出する。そして、これが基準値α*よりも大きか否かステップST204で判定して、大きい場合(肯定判定:YES)はステップST205へ進み、スロットル開度θを開き側に補正した上で、後述のステップST208へ進む。
一方、回転減速度αが基準値α*よりも大きくない場合は、前記のステップST204で否定判定(NO)してステップST206へ進み、今度は回転減速度αが基準値α*よりも小さいか否か判定する。そして、小さい場合(肯定判定:YES)はステップST207へ進んで、スロットル開度θを閉じ側に補正してから前記ステップST208へ進む一方、小さくない場合(否定判定:NO)はそのままステップST208へ進む。
なお、前記のようなスロットル開度θの補正量は、例えば開き側に補正する場合と閉じ側に補正する場合とでそれぞれ一定値として、予め実験やシミュレーションによって設定すればよい。また、前記の所定開度θ0と同様にマップとしてECU100のROMに記録させてもよい。このマップとしては、例えば回転減速度αの基準値α*からの偏差が大きいほど、補正量が大きくなるように設定すればよい。
このようにクランク回転速度の低下の度合い(回転減速度α)に応じて、それが基準値α*に近づくようにスロットル開度θを補正しながら、ステップST208においては、自動停止処理の開始から所定時間が経過したか、またはクランクシャフト13が所定数、回転したか、或いはクランク回転速度が所定値以下まで低下したか、さらにはエンジン1の再始動条件が成立したか、といったいくつかの条件の成立について判定する。
そして、それらの条件がいずれも成立していなければ否定判定(NO)し、前記のステップST203に戻って再び回転減速度αを算出した上で、ステップST204〜ST207の処理を繰り返す。一方、いずれか一つの条件でも成立すれば肯定判定(YES)し、ステップST209に進んでスロットル開度θを始動に必要な開度θ1またはオープナ開度θ2に戻して、ルーチンを終了する(エンド)。
前記図4のフローのステップST203を実行することによってECU100は、自動停止条件の成立によってエンジン1の燃料供給が停止後に、クランクシャフト13の回転速度(クランク回転速度)が低下するとき、その低下度合いである回転減速度αを算出する回転低下度合い算出手段を構成する。
また、ステップST204〜ST207を実行することによってECU100は、回転減速度αが基準値α*よりも大きい場合は、スロットル開度θを開き側に補正する一方、基準値α*よりも小さい場合は閉じ側に補正することにより、回転減速度αが基準値α*に近づくようにする、スロットル制御手段を構成する。
以上、説明したように本実施の形態では、アイドリングストップ制御によって車両のエンジン1を自動停止させる際に、図5に模式的に示すように時刻t0においてインジェクタ19による燃料噴射が停止された直後の回転減速度α0に応じて、スロットル開度θが所定開度θ0に制御されるとともに、その後は回転減速度αの変化に応じてスロットル開度θがフィードバック補正される。例えば、図5には破線で示すようにエンジン1の回転落ちが速いときには、算出される回転減速度αが基準値α*よりも大きくなるので、スロットル開度θは開き側に補正される。
これにより吸気のポンピングロスが小さくなるので、時刻t1〜t2に表れているように回転減速度αが小さくなって、基準値α*に近づくようになるとともに、気筒2への吸気の充填効率が高くなり、また、掃気が促進されることによって、気筒2内への新気の充填量が増大する。このことで、エンジン1の再始動性が向上する一方で、振動はやや増大することになるが、図示のように回転減速度αが基準値α*に近づいている間は、両者の最適なバランスに近づくことになる。
反対に、図5には一点鎖線で示すようにエンジン1の回転落ちが遅いときには、回転減速度αが基準値α*よりも小さいので、スロットル開度θが閉じ側に補正され、ポンピングロスの増大によって回転減速度αが大きくなってゆく。このときには気筒2への吸気の充填効率が低くなり、その分、圧縮反力が小さくなることで、回転変動による振動が低減される。一方で、このときには気筒2内への新気の充填量が減少し、再始動性はやや低下することになるが、図示のように回転減速度αが基準値α*に近づいている間は、両者の最適なバランスに近づくことになる。
つまり、エンジンの自動停止の際に、惰性で回転するクランクシャフト13が停止するまでの間、その回転低下度合い(回転減速度α)が所定の基準値α*に収束するように、スロットル開度θをフィードバック補正することによって、停止時の振動の低減とその後の再始動性の確保という相反する要求の最適なバランスが図られる。
しかも、そうして実際の回転低下度合い(回転減速度α)に応じてスロットル開度θをフィードバック補正していることから、エンジン1の個体ばらつきや補機の動作状態など影響によって最適なバランスが変化しても、これを安定的に実現することができる。
また、本実施の形態ではフィードバック補正前のスロットル開度θの初期値θ0を、最初の回転減速度α0に応じて設定しているので、実際の回転減速度αの基準値α*からのズレに応じてスロットル開度θが変化するようになって、実際の回転減速度αをより速やかに基準値α*に収束させることができる。よって、上述した作用効果がより有効なものとなる。
−他の実施の形態−
以上、説明した実施の形態の記載は例示に過ぎず、本発明の構成や用途などについても限定することを意図しない。例えば前記実施の形態では、アイドリングストップ制御によって車両のエンジン1を自動停止させる際に、まず、燃料噴射の停止直後の回転減速度α0に応じてスロットル開度θを所定開度θ0に制御し、その後、回転減速度αの変化に応じてフィードバック補正するようにしている。
これに限らず、前記の所定開度θ0は予め設定した一定値としてもよいし、エンジン1の運転状態に応じて設定するようにしてもよい。また、前記の自動停止時における回転減速度αの変化に基づいて学習補正することも可能である。さらに、例えば燃料噴射の停止直後はスロットル開度θを維持しておいて、その後、回転減速度αの変化に応じてフィードバック補正するようにしてもよいし、一旦、全閉にしてからフィードバック補正するようにしてもよい。
また、前記実施の形態では自動停止条件として、車速が所定閾値以下であること(停止直前と考えられる場合、および実質、停止していると考えられる場合)などを含むように設定しているが、これにも限定されず、車両の走行中にエンジン1を自動で停止させ、再始動する場合にも、本発明を適用することができる。
さらに、前記実施の形態では、車両に搭載された筒内噴射式のガソリンエンジン1に本発明を適用した場合について説明しているが、これにも限定されず本発明は、ポート噴射式のガソリンエンジンにも適用可能である。また、ガソリンエンジンにも限定されず、ディーゼルエンジンやアルコールエンジン、或いはガスエンジンなどにも本発明は適用可能である。