(57)【要約】【課題】エンジン回転停止クランク角を精度良く目標クランク角範囲内に制御する。【解決手段】エンジン回転が目標停止クランク角で停止するまでの回転挙動（以下「目標軌道」という）を算出し、エンジン回転を停止させる際に、実エンジン回転挙動を目標軌道に合わせるようにオルタネータの要求負荷トルクを算出して、この要求負荷トルクに応じた要求発電電流を算出すると共に、オルタネータの実発電電流を推定又は検出し、この実発電電流を要求発電電流に一致させるように発電指令値を算出してオルタネータの負荷トルクを制御する。これにより、環境変化等によってオルタネータの発電特性がばらついても、オルタネータの実発電電流を要求負荷トルクに対応した要求発電電流に精度良く制御して、オルタネータの負荷トルクを精度良く要求負荷トルクに制御することができ、エンジン回転停止クランク角を精度良く目標のクランク角範囲内に制御できる。【選択図】図７
2009215887.tif 000002
【特許請求の範囲】
【請求項１】
エンジン停止要求が発生したときに燃焼を停止させてエンジン回転を停止させるエンジン回転停止制御装置において、
エンジンで駆動される発電機と、
エンジン回転が目標停止クランク角で停止するまでの回転挙動（以下「目標軌道」という）を算出する目標軌道算出手段と、
エンジン回転を停止させる際に実エンジン回転挙動を前記目標軌道に合わせるように前記発電機の負荷を制御する停止制御手段とを備え、
前記停止制御手段は、
前記実エンジン回転挙動を前記目標軌道に合わせるように前記発電機の制御可能な最大負荷よりも小さい所定負荷を基準にして前記発電機の要求負荷を算出する要求負荷算出手段と、
前記発電機の要求負荷に応じた要求発電電流を算出する要求発電電流算出手段と、
前記発電機の実発電電流を推定又は検出する実発電電流判定手段と、
前記実発電電流を前記要求発電電流に一致させるように前記発電機の発電指令値を算出する発電指令値算出手段とを備えていることを特徴とするエンジン回転停止制御装置。
【請求項２】
前記発電機と車載電装品との間で電力の授受を行うバッテリと、
エンジン回転が停止した状態でバッテリ電圧とバッテリ電流とに基づいて前記車載電装品の消費電力を算出する消費電力算出手段とを備え、
前記実発電電流判定手段は、エンジン回転を停止させる際にバッテリ電圧とバッテリ電流と前記消費電力算出手段で事前に算出した前記車載電装品の消費電力とに基づいて前記発電機の実発電電流を算出することを特徴とする請求項１に記載のエンジン回転停止制御装置。
【請求項３】
前記発電機と車載電装品との間で電力の授受を行うバッテリと、
前記エンジン停止要求の発生直前に前記発電機の発電を停止させた状態でバッテリ電圧とバッテリ電流とに基づいて前記車載電装品の消費電力を算出する消費電力算出手段とを備え、
前記実発電電流判定手段は、エンジン回転を停止させる際にバッテリ電圧とバッテリ電流と前記消費電力算出手段で事前に算出した前記車載電装品の消費電力とに基づいて前記発電機の実発電電流を算出することを特徴とする請求項１に記載のエンジン回転停止制御装置。
【請求項４】
前記実発電電流判定手段は、前記消費電力算出手段で前記車載電装品の消費電力を算出したときの該車載電装品の稼働状態と、前記車載電装品の消費電力を用いて前記発電機の実発電電流を算出するときの該車載電装品の稼働状態とを比較して前記発電機の実発電電流を補正することを特徴とする請求項２又は３に記載のエンジン回転停止制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、エンジン回転停止クランク角を制御する機能を備えたエンジン回転停止制御装置に関する発明である。
【背景技術】
【０００２】
近年、特許文献１（特許第３７７２８９２号公報）に記載されているように、エンジン自動停止・始動システム（アイドルストップシステム）を搭載した車両では、再始動性を向上させるために、エンジン停止時にエンジン回転停止クランク角を始動に適したクランク角範囲に制御することを目的として、エンジンを自動停止させる際に、エンジン回転速度が所定値以下に低下するまでにオルタネータの目標発電電流をエンジン回転速度の低下状態に対応した値に設定するようにしたものがある。
【特許文献１】特許第３７７２８９２号公報（第１頁等）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
上記特許文献１に記載のエンジン回転停止制御装置は、エンジンを自動停止させる際にオルタネータの負荷を制御することでエンジン回転停止クランク角を目標のクランク角範囲に制御しようとするものであるが、実際の制御では、ピストンが圧縮上死点を通過する時点で検出されたエンジン回転速度が４８０ｒｐｍ〜５４０ｒｐｍ内であるときに、予め設定されたマップを用いてオルタネータの目標発電電流をその時点のエンジン回転速度に応じて設定するだけであるので（特許文献１の段落［００７２］参照）、オルタネータ負荷の制御が大雑把であり、エンジン停止過程のエンジン回転挙動のばらつきを十分に補償することが困難である。このため、上記特許文献１のものでは、エンジン回転停止クランク角のばらつきを十分に低減できず、再始動性向上の効果が少ないと思われる。
【０００４】
この対策として、本発明者は、エンジン回転が目標停止クランク角で停止するまでの回転挙動を目標軌道として算出し、エンジン回転を停止させる際に実エンジン回転挙動を目標軌道に合わせるように発電機（オルタネータ）の負荷トルクを制御する技術を研究している。具体的には、実エンジン回転挙動を目標軌道に合わせるように発電機の要求負荷トルクを算出し、発電機のトルク特性（発電指令値とトルクとの関係）を用いて要求負荷トルクに応じた発電指令値を算出し、この発電指令値で発電機の発電制御電流（フィールド電流）を制御して発電機の負荷トルクを制御する。
【０００５】
しかし、この研究過程で次ような新たな課題が判明した。
発電機の製造ばらつき、経時変化、環境変化（例えば温度変化）等により発電機のトルク特性（発電指令値とトルクとの関係）がばらつくため、予め設定された標準的なトルク特性を用いて発電指令値を算出して発電機を制御しても、発電機のトルク特性のばらつきの影響を受けて、発電機の実発電電流が要求負荷トルクに対応した発電電流からずれてしまい、発電機の負荷トルクを精度良く要求負荷トルクに制御することができず、エンジン回転停止制御の精度が低下してしまう可能性がある。
【０００６】
本発明はこのような事情を考慮してなされたものであり、従ってその目的は、エンジン停止過程の実エンジン回転挙動のばらつきを十分に補償することができて、エンジン回転停止クランク角を精度良く目標のクランク角範囲内に制御することができるエンジン回転停止制御装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、請求項１に係る発明は、エンジン停止要求が発生したときに燃焼を停止させてエンジン回転を停止させるエンジン回転停止制御装置において、エンジンで駆動される発電機と、エンジン回転が目標停止クランク角で停止するまでの回転挙動（以下「目標軌道」という）を算出する目標軌道算出手段と、エンジン回転を停止させる際に実エンジン回転挙動を目標軌道に合わせるように発電機の負荷を制御する停止制御手段とを備え、停止制御手段は、実エンジン回転挙動を目標軌道に合わせるように発電機の制御可能な最大負荷よりも小さい所定負荷を基準にして発電機の要求負荷を要求負荷算出手段により算出して、この発電機の要求負荷に応じた要求発電電流を要求発電電流算出手段により算出すると共に、発電機の実発電電流を実発電電流判定手段により推定又は検出し、実発電電流を要求発電電流に一致させるように発電機の発電指令値を発電指令値算出手段により算出するようにしたものである。
【０００８】
この構成では、発電機の実発電電流を発電機の要求負荷に対応した要求発電電流に一致させるように発電機の発電指令値を算出して発電機の負荷を制御することができるため、発電機の製造ばらつき、経時変化、環境変化等によって発電機の発電特性がばらついても、発電機の実発電電流を要求負荷に対応した要求発電電流に精度良く制御して、発電機の負荷を精度良く要求負荷に制御することができる。これにより、実エンジン回転挙動を目標軌道に合わせるように発電機の負荷を精度良く制御することができるため、エンジン停止過程の実エンジン回転挙動のばらつきを十分に補償することができて、エンジン回転停止クランク角を精度良く目標のクランク角範囲内に制御することができる。
【０００９】
しかも、本発明は、発電機の制御可能な最大負荷よりも小さい所定負荷（以下「基準負荷」という）を基準にして該発電機の要求負荷を算出するため、仮想的に発電機の負荷トルクを正負両方向に制御することが可能となり（基準負荷以下の負荷トルクを仮想的に負の負荷トルクとし、基準負荷以上の負荷トルクを正の負荷トルクとして発電機の負荷トルクを制御することが可能となり）、目標軌道への実エンジン回転挙動の追従性を向上できる。
【００１０】
ところで、実発電電流判定手段として発電機の実発電電流を検出するセンサを設けるようにしても良いが、請求項２のように、発電機と車載電装品との間で電力の授受を行うバッテリを備えている場合には、エンジン回転が停止した状態でバッテリ電圧とバッテリ電流とに基づいて車載電装品の消費電力を消費電力算出手段により算出し、実発電電流判定手段は、エンジン回転を停止させる際にバッテリ電圧とバッテリ電流と消費電力算出手段で事前（例えば前回のエンジン回転停止中）に算出した車載電装品の消費電力とに基づいて発電機の実発電電流を算出するようにしても良い。
【００１１】
エンジン回転が停止した状態（エンジン回転停止中）では、発電機の発電電力が０になるため、バッテリの放電電力が車載電装品の消費電力とほぼ等しくなる。従って、エンジン回転停止中に、バッテリ電圧とバッテリ電流とからバッテリの放電電力を求めることで車載電装品の消費電力を求めることができる。一方、エンジン回転を停止させる際には、発電機が発電しているため、車載電装品の消費電力と発電機の発電電力との差がバッテリの放電電力（又は充電電力）となる。従って、エンジン回転を停止させる際に、バッテリ電圧とバッテリ電流とから求めたバッテリの放電電力（又は充電電力）と、エンジン回転停止中に求めた車載電装品の消費電力とを用いれば、発電機の発電電力を求めることができ、この発電電力から実発電電流（＝発電電力／バッテリ電圧）を求めることができる。このようにすれば、エンジン回転を停止させる際に発電機の実発電電流を推定することができるため、発電機の実発電電流を検出するセンサを新たに設ける必要がなく、低コスト化することができる。
【００１２】
或は、請求項３のように、エンジン停止要求の発生直前に発電機の発電を停止させた状態でバッテリ電圧とバッテリ電流とに基づいて車載電装品の消費電力を消費電力算出手段により算出し、実発電電流判定手段により、エンジン回転を停止させる際にバッテリ電圧とバッテリ電流と消費電力算出手段で事前（エンジン停止要求の発生直前）に算出した車載電装品の消費電力とに基づいて発電機の実発電電流を算出するようにしても良い。このようにしても、エンジン回転を停止させる際に発電機の実発電電流を推定することができるため、発電機の実発電電流を検出するセンサを新たに設ける必要がなく、低コスト化することができる。
【００１３】
更に、請求項４のように、車載電装品の消費電力を算出したときの該車載電装品の稼働状態と、その車載電装品の消費電力を用いて発電機の実発電電流を算出するときの該車載電装品の稼働状態とを比較して発電機の実発電電流を補正するようにしても良い。このようにすれば、エンジン回転停止中やエンジン停止要求の発生直前に車載電装品の消費電力を算出したときと、その後、エンジン回転を停止させる際にその車載電装品の消費電力を用いて発電機の実発電電流を算出するときとの間で、車載電装品の稼働状態（例えばヘッドライトのオン／オフやブレーキランプのオン／オフ等）が変化して車載電装品の消費電力が変化した場合でも、その車載電装品の消費電力の変化分に応じて発電機の実発電電流を補正することができ、発電機の実発電電流を精度良く推定することができる。
【発明を実施するための最良の形態】
【００１４】
以下、本発明を実施するための最良の形態を具体化した一実施例を説明する。
まず、図１に基づいてエンジン制御システム全体の構成を概略的に説明する。
エンジン１１の吸気ポート１２に接続された吸気管１３の途中には、スロットルバルブ１４が設けられ、このスロットルバルブ１４の開度（スロットル開度）がスロットル開度センサ１５によって検出される。尚、スロットルバルブ１４をバイパスするバイパス通路を設け、このバイパス通路にアイドルスピードコントロールバルブを設けた構成としても良い。スロットルバルブ１４の下流側には、吸気管圧力を検出する吸気管圧力センサ１８が設けられ、各気筒の吸気ポート１２の近傍には、それぞれ燃料噴射弁１９が取り付けられている。
【００１５】
一方、エンジン１１の排気ポート２０に接続された排気管２１の途中には、排気ガス浄化用の触媒２２が設置されている。エンジン１１のシリンダブロックには、冷却水温を検出する冷却水温センサ２３が設けられている。エンジン１１のクランク軸２４に取り付けられたシグナルロータ２５の外周に対向してクランク角センサ２６が設置され、このクランク角センサ２６からシグナルロータ２５の回転に同期して所定クランク角毎（例えば３０℃Ａ毎）にクランクパルス信号が出力される。また、エンジン１１のカム軸２７に取り付けられたシグナルロータ２８の外周に対向してカム角センサ２９が設置され、このカム角センサ２９からシグナルロータ２８の回転に同期して所定のカム角でカムパルス信号が出力される。
【００１６】
また、オルタネータ３３（発電機）には、クランク軸２４に連結されたクランクプーリ３４の回転がベルト３５を介して伝達される。これにより、エンジン１１の動力でオルタネータ３３が回転駆動されて発電するようになっている。このオルタネータ３３の発電制御電流（フィールド電流）をデューティ制御することで、オルタネータ３３の負荷を制御することができる。
【００１７】
このオルタネータ３３の発電電力は、各種の車載電装品（例えば、空調装置、オーディオ装置、ヘッドライト、ブレーキランプ等）に供給される。その際、オルタネータ３３の発電電力が車載電装品の消費電力よりも大きいときには、その余剰分の電力がバッテリ３６に充電される。一方、オルタネータ３３の発電電力が車載電装品の消費電力よりも小さいときには、その不足分の電力がバッテリ３６から車載電装品に供給される。また、電圧センサ３７によってバッテリ電圧（バッテリ３６の電圧）が検出され、電流センサ３８によってバッテリ電流（バッテリ３６の充電電流や放電電流）が検出される。
【００１８】
上述した各種センサの出力は、エンジン制御回路（以下「ＥＣＵ」と表記する）３０に入力される。このＥＣＵ３０は、マイクロコンピュータを主体として構成され、各種センサで検出したエンジン運転状態に応じて、燃料噴射弁１９の燃料噴射量や噴射時期、点火プラグ３１の点火時期を制御すると共に、エンジン運転中に所定の自動停止条件（例えばアクセル全閉、ブレーキ操作中、アイドル運転中等の条件）が成立してエンジン停止要求が発生したときに、燃焼（点火及び／又は燃料噴射）を停止させてエンジン回転を停止させるアイドルストップを実行し、このアイドルストップによるエンジン回転停止中（アイドルストップ中）に運転者が車両発進のための準備操作（ブレーキ解除、シフトレバー操作等）や発進操作（アクセル踏み込み等）が行われたとき或は車載機器からの始動要求が発生したときに、所定の自動始動条件が成立してスタータ（図示せず）に通電してエンジン１１をクランキングして再始動させる。
【００１９】
更に、ＥＣＵ３０は、後述する図１０乃至図１３の各ルーチンを実行することで、エンジン回転が目標停止クランク角で停止するまでの回転挙動（以下「目標軌道」という）を算出する目標軌道算出手段として機能すると共に、エンジン回転を停止させる際に実エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷を制御する停止制御手段として機能する。
【００２０】
ここで、目標軌道は、目標停止クランク角に至るまでのクランク角と目標エンジン回転速度との関係を所定クランク角間隔で算出してテーブル（図示せず）に割り付けたものである。この目標軌道は、例えば、ロストルクを考慮したエネルギ保存則の関係式を用いて、目標停止クランク角を初期値としてクランク角を溯る方向に算出される（図２参照）。エネルギ保存則の関係式は次式で表される。
Ｎe(i+1)2 ＝Ｎe(i)2 −２／Ｊ×｛Ｔloss( θ(i) ) −Ｔref(Ne(i))｝
【００２１】
ここで、Ｎe(i+1)は、現時点(i) よりも所定クランク角前の時点(i+1) のエンジン回転速度、Ｎe(i)は現時点(i) のエンジン回転速度、Ｊはエンジン１１の慣性モーメント、Ｔloss( θ(i) ）は、現時点(i) のクランク角θ(i) におけるポンピングロスとフリクションロスを合計したロストルクであり、予め設定されたマップ等を用いて、現時点(i) のクランク角θ(i) に応じたロストルクＴloss( θ(i) ）が算出される。Ｔref(Ne(i))は、現時点(i) のエンジン回転速度Ｎe(i)におけるオルタネータ３３の基準負荷トルクである。      
【００２２】
上記エネルギ保存則の関係式において、「Ｔloss( θ(i) ）−Ｔref(Ne(i))」は、ポンピングロスとフリクションロスとオルタネータ３３の基準負荷トルクＴref(Ne(i))を合計したロストルクに相当する。
【００２３】
本実施例では、オルタネータ３３の基準負荷トルクＴref(Ne(i))は、図３に示すようにオルタネータ３３の制御可能な最大負荷の半分（１／２）に設定されている。このようにすれば、オルタネータ３３は、モータジェネレータと異なり、アシストトルクを出力できないという事情があっても、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となり（基準負荷Ｔref 以下の負荷トルクを仮想的に負の負荷トルクとし、基準負荷Ｔref 以上の負荷トルクを正の負荷トルクとしてオルタネータ３３の負荷トルクを制御することが可能となり）、目標軌道へのエンジン回転挙動の追従性を向上することができる。
【００２４】
尚、オルタネータ３３の基準負荷トルクＴref(Ne(i))は、最大負荷の半分（１／２）に限定されず、例えば、最大負荷の１／３、１／４、２／３、３／４等であっても良く、要は、オルタネータ３３の制御可能な最大負荷よりも小さく、０よりも大きい適宜の負荷を基準負荷トルクＴref(Ne(i))に設定すれば良い。
０＜Ｔref(Ne(i))＜最大負荷
【００２５】
図５（ａ）は、基準負荷トルクＴref(Ne(i))＝０に設定してエンジン回転停止制御を行った比較例を示している。この比較例では、オルタネータ３３の負荷トルクを正方向にしか制御できないため、実エンジン回転挙動がオーバーシュートした場合は、実エンジン回転挙動を目標軌道に一致させることができなくなる。
【００２６】
これに対して、本実施例のように、オルタネータ３３の基準負荷トルクＴref(Ne(i))を最大負荷よりも小さい適宜の負荷に設定すれば、図４に示すように、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となるため、図５（ｂ）に示すように、実回転挙動がオーバーシュートした場合でも、実回転挙動を目標軌道に一致させることができる。
【００２７】
更に、本実施例では、図６に示すように、目標軌道を算出する際に、オルタネータ３３の基準負荷トルクＴref(Ne(i))に応じた目標軌道を算出し、エンジン回転停止制御中は、エンジン回転速度Ｎe(i)に応じた基準負荷トルクＴref(Ne(i))を算出すると共に、現時点(i) のクランク角θ(i) における目標エンジン回転速度と実エンジン回転速度との偏差を小さくするようにベース負荷トルクを算出して、このベース負荷トルクに基準負荷トルクＴref(Ne(i))を加算して要求負荷トルクＴalt を求める（実際には、この要求負荷トルクＴalt にプーリ比Ｒatioを乗算して要求軸トルクＴalt.final に変換する）。
【００２８】
この後、図７に示すように、要求発電電流算出部３９（要求発電電流算出手段）で、オルタネータ３３の発電トルク特性（図８参照）を用いて、オルタネータ３３の要求負荷トルクＴalt に応じた要求発電電流を算出した後、発電指令値算出部４０で、オルタネータ３３の発電電流特性（図９参照）を用いて、オルタネータ３３の要求発電電流とエンジン回転速度Ｎe(i)に応じた発電指令値（デューティＤuty ）を算出する。尚、図９に示す発電電流特性は、オルタネータ３３の出力電圧が１３．５Ｖで一定の場合の特性であり、出力電圧毎に同様の特性が設定されている。
【００２９】
更に、実発電電流推定部４１（実発電電流判定手段）で、オルタネータ３３の実発電電流を次のようにして推定する。
アイドルストップ中（エンジン回転停止中）に、バッテリ電圧とバッテリ電流を用いて、次式により車載電装品の消費電力を算出してＥＣＵ３０のバックアップＲＡＭ３９に記憶する。ここで、バッテリ電流は充電方向をプラス値とする。
消費電力＝−（バッテリ電圧×バッテリ電流）
＝バッテリ放電電力
【００３０】
アイドルストップ中は、オルタネータ３３の発電電力が０になるため、バッテリ３６の放電電力が車載電装品の消費電力とほぼ等しくなる。従って、アイドルストップ中に、バッテリ電圧とバッテリ電流とを乗算してバッテリ３６の放電電力を求めることで車載電装品の消費電力を求めることができる。
【００３１】
また、このアイドルストップ中に車載電装品の消費電力を算出したときの車載電装品の稼働状態（例えばヘッドライトのオン／オフやブレーキランプのオン／オフ等）をＥＣＵ３０のバックアップＲＡＭ３９に記憶する。
【００３２】
そして、エンジン回転停止制御中（エンジン回転低下中）に、バッテリ電圧及びバッテリ電流、前回のアイドルストップ中に算出した車載電装品の消費電力を用いて、次式によりオルタネータ３３の実発電電流を算出する。ここで、バッテリ電流は充電方向をプラス値とする。
実発電電流＝｛−（バッテリ電圧×バッテリ電流）＋消費電力｝／バッテリ電圧
＝発電電力／バッテリ電圧
【００３３】
エンジン回転停止制御中は、オルタネータ３３が発電しているため、車載電装品の消費電力とオルタネータ３３の発電電力との差がバッテリ３６の放電電力（又は充電電力）となる。従って、エンジン回転停止制御中に、バッテリ電圧とバッテリ電流とを乗算して求めたバッテリ３６の放電電力（又は充電電力）と、アイドルストップ中に求めた車載電装品の消費電力とを用いれば、オルタネータ３３の発電電力を求めることができ、この発電電力から実発電電流（＝発電電力／バッテリ電圧）を求めることができる。
【００３４】
この際、前回のアイドルストップ中に車載電装品の消費電力を算出したときの該車載電装品の稼働状態（例えばヘッドライトのオン／オフやブレーキランプのオン／オフ等）と、エンジン回転停止制御中にその車載電装品の消費電力を用いてオルタネータ３３の実発電電流を算出するときの該車載電装品の稼働状態とを比較して、その比較結果から車載電装品の消費電力の変化量が所定値以上であるか否かを判定し、車載電装品の消費電力の変化量が所定値以上であると判定された場合には、その車載電装品の消費電力の変化分に応じてオルタネータ３３の実発電電流を補正する。
【００３５】
この後、電流フィードバック制御部４２で、オルタネータ３３の実発電電流を要求発電電流に一致させるようにＰＩ制御等により発電指令補正量を算出し、この発電指令補正量を発電指令値算出部４０で算出した発電指令値に加算することで発電指令値を補正して最終的な発電指令値（デューティＤuty ）を算出する。この発電指令値（デューティＤuty ）でオルタネータ３３の発電制御電流（フィールド電流）を制御してオルタネータ３３の負荷トルクを制御する。この場合、発電指令値算出部４０、電流フィードバック制御部４２等が発電指令値算出手段としての役割を果たす。
【００３６】
このようなオルタネータ３３の負荷トルクの制御を、エンジン回転速度がオルタネータ３３の発電限界回転速度Ｎelow（図３参照）以下に低下するまで所定クランク間隔で周期的に実行することで、エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷トルクをフィードバック制御する。
【００３７】
以上説明したエンジン回転停止制御は、ＥＣＵ３０によって図１０乃至図１３の各ルーチンに従って実行される。以下、これら各ルーチンの処理内容を説明する。
［目標軌道算出ルーチン］
図１０の目標軌道算出ルーチンは、ＥＣＵ３０の電源オン中に所定周期で実行される。本ルーチンが起動されると、まず、ステップ１０１で、目標軌道算出完了フラグが目標軌道の算出前を意味する「０」にセットされているか否かを判定し、この目標軌道算出完了フラグが目標軌道算出完了を意味する「１」にセットされていれば、以降の処理を行うことなく、本ルーチンを終了する。
【００３８】
一方、このステップ１０１で、目標軌道算出完了フラグ＝０（目標軌道の算出前）と判定されれば、ステップ１０２に進み、ロストルクＴloss( θ(i) ）とオルタネータ３３の基準負荷トルクＴref(Ne(i))を用いて、次式で表されるエネルギ保存則の関係式を用いて次の時点(i+1) の目標エンジン回転速度Ｎe(i+1)の二乗を算出する。
Ｎe(i+1)2 ＝Ｎe(i)2 −２／Ｊ×｛Ｔloss( θ(i) ）−Ｔref(Ne(i))｝
【００３９】
ここで、Ｊはエンジン１１の慣性モーメント、Ｔloss( θ(i) ）は、ポンピングロスとフリクションロスを合計したロストルクであり、予め設定されたマップ等を用いて、現時点(i) のクランク角θ(i) に応じたロストルクＴloss( θ(i) ）を算出する。
【００４０】
上記エネルギ保存則の関係式において、「Ｔloss( θ(i) ）−Ｔref(Ne(i))」は、ポンピングロスとフリクションロスとオルタネータ３３の基準負荷トルクＴref(Ne(i))を合計したロストルクに相当する。
【００４１】
初期値は、ｉ＝０、θ(0) ＝目標停止クランク角、Ｎe(0)＝０ｒｐｍ（停止時のエンジン回転速度）である。目標軌道は、目標停止クランク角θ(0) を初期値としてクランク角を溯る方向に所定クランク角毎（例えばＴＤＣ毎）に算出する。
【００４２】
この後、ステップ１０３に進み、目標エンジン回転速度Ｎe(i+1)の二乗がエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxの二乗を越えたか否かを判定し、まだ最大エンジン回転速度Ｎemaxの二乗を越えていなければ、ステップ１０４に進み、目標軌道算出完了フラグを「０」に維持する（セットし直す）。
【００４３】
この後、ステップ１０６に進み、目標エンジン回転速度Ｎe(i+1)の二乗の平方根を算出して目標エンジン回転速度Ｎe(i+1)を求め、これを目標軌道のテーブル（図示せず）に割り付けて、本ルーチンを終了する。尚、ＥＣＵ３０の演算負荷を低減するため、エンジン回転速度の二乗をそのままテーブルに割り付けても良い。目標軌道のテーブルは、ＥＣＵ３０のメモリに記憶される。
【００４４】
以上のような処理を繰り返して、目標停止クランク角θ(0) を初期値としてクランク角を溯る方向に所定クランク角毎（例えばＴＤＣ毎）に目標エンジン回転速度Ｎe(i+1)の二乗を算出して目標軌道のテーブルに目標エンジン回転速度Ｎe(i+1)を割り付ける処理を繰り返す。そして、上記ステップ１０３で、目標エンジン回転速度Ｎe(i+1)の二乗がエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxの二乗を越えたと判定された時点で、ステップ１０５に進み、目標軌道算出完了フラグを目標軌道算出完了を意味する「１」にセットして、ステップ１０６に進み、最後の目標エンジン回転速度Ｎe(i+1)の二乗の平方根を算出して目標エンジン回転速度Ｎe(i+1)を求め、これを目標軌道のテーブルに割り付けて、本ルーチンを終了する。
【００４５】
［要求負荷算出ルーチン］
図１１の要求負荷算出ルーチンは、ＥＣＵ３０の電源オン中に所定周期で実行される。本ルーチンが起動されると、まず、ステップ２０１で、エンジン停止要求（アイドルストップ信号）が発生したか否かを判定し、エンジン停止要求が発生していなければ、以降の処理を行うことなく、本ルーチンを終了して、エンジン運転（燃料噴射制御及び点火制御）を継続する。
【００４６】
その後、上記ステップ２０１で、エンジン停止要求が発生したと判定された時点で、ステップ２０２に進み、現在のクランク角θとエンジン回転速度Ｎe を算出する。この後、ステップ２０３に進み、現在のクランク角θがオルタネータ３３の負荷トルクの制御タイミング（例えばＴＤＣ）であるか否かを判定し、オルタネータ３３の負荷トルクの制御タイミングでなければ、以降の処理を行うことなく、本ルーチンを終了する。
【００４７】
上記ステップ２０３で、現在のクランク角θがオルタネータ３３の負荷トルクの制御タイミングであると判定されれば、ステップ２０４に進み、現在のエンジン回転速度Ｎe がエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxよりも低いか否かを判定し、現在のエンジン回転速度Ｎe が最大エンジン回転速度Ｎemax以上であれば、以降の処理を行うことなく、本ルーチンを終了する。
【００４８】
これに対して、上記ステップ２０４で、現在のエンジン回転速度Ｎe が最大エンジン回転速度Ｎemaxよりも低いと判定されれば、ステップ２０５に進み、停止制御実行フラグを「１」にセットした後、ステップ２０６に進み、目標軌道のテーブルを参照して、今回の制御タイミングに対応した目標エンジン回転速度Ｎetg を求める。ここで、車両がＭＴ車（マニュアルミッション車）の場合は、クラッチが開放状態かどうか判断し、クラッチ開放・継合状態に応じた目標軌道を選択することもできる。
【００４９】
この後、ステップ２０７に進み、現在のエンジン回転速度Ｎe と目標エンジン回転速度Ｎetg とオルタネータ３３の基準負荷トルクＴref(Ne) を用いて、次式により要求負荷トルクＴalt を算出する。
【００５０】
【数１】
2009215887.tif 000003
【００５１】
ここで、Ｊはエンジン１１の慣性モーメント、Ｋはフィードバックゲイン、Δθはクランク角変化量である。
この後、ステップ２０８に進み、要求負荷トルクＴalt にプーリ比Ｒatioを乗算して、オルタネータ３３の要求軸トルクＴalt.final に変換して、本ルーチンを終了する。
【００５２】
［電流制御ルーチン］
図１２の電流制御ルーチンは、ＥＣＵ３０の電源オン中に所定周期で実行される。本ルーチンが起動されると、まず、ステップ３０１で、停止制御実行フラグが「１」にセットされているか否かを判定し、停止制御実行フラグが「１」にセットされていなければ、以降の処理を行うことなく、本ルーチンを終了する。
【００５３】
その後、上記ステップ３０１で、停止制御実行フラグが「１」にセットされていると判定された時点で、ステップ３０２に進み、現在のエンジン回転速度Ｎe を検出した後、ステップ３０３に進み、現在のバッテリ電圧とバッテリ電流を検出する。
【００５４】
この後、ステップ３０４に進み、発電トルク特性マップ（図８参照）を用いて、現在のオルタネータ３３の要求軸トルクＴalt.final に応じた要求発電電流を算出した後、ステップ３０５に進み、バッテリ電圧毎に作成された複数の発電電流特性マップ（図９参照）の中から、現在のバッテリ電圧に対応する発電電流特性マップを選択して、現在の要求発電電流とエンジン回転速度Ｎe に応じた発電指令値（デューティＤuty ）を算出する。
【００５５】
この後、ステップ３０６に進み、現在のバッテリ電圧及びバッテリ電流、前回のアイドルストップ中に算出した車載電装品の消費電力を用いて、次式によりオルタネータ３３の実発電電流を算出する。ここで、バッテリ電流は充電方向をプラス値とする。
実発電電流＝｛−（バッテリ電圧×バッテリ電流）＋消費電力｝／バッテリ電圧
【００５６】
この際、前回のアイドルストップ中に車載電装品の消費電力を算出したときの該車載電装品の稼働状態（例えばヘッドライトのオン／オフやブレーキランプのオン／オフ等）と、現在の車載電装品の稼働状態とを比較して、その比較結果から車載電装品の消費電力の変化量が所定値以上であるか否かを判定し、車載電装品の消費電力の変化量が所定値以上であると判定された場合には、その車載電装品の消費電力の変化分に応じてオルタネータ３３の実発電電流を補正する。
【００５７】
この後、ステップ３０７に進み、オルタネータ３３の実発電電流を要求発電電流に一致させるようにＰＩ制御等により発電指令補正量を算出した後、ステップ３０８に進み、発電指令補正量を発電指令値に加算することで発電指令値を補正して最終的な発電指令値（デューティＤuty ）を算出する。
【００５８】
［消費電力算出ルーチン］
図１３の消費電力算出ルーチンは、ＥＣＵ３０の電源オン中に所定周期で実行され、特許請求の範囲でいう消費電力算出手段としての役割を果たす。本ルーチンが起動されると、まず、ステップ４０１で、アイドルストップ中（エンジン回転停止中）であるか否かを判定し、アイドルストップ中でなければ、以降の処理を行うことなく、本ルーチンを終了する。
【００５９】
その後、上記ステップ４０１で、アイドルストップ中であると判定されたときに、ステップ４０２に進み、現在のバッテリ電圧とバッテリ電流を検出した後、ステップ４０３に進み、現在のバッテリ電圧とバッテリ電流を用いて、次式により車載電装品の消費電力を算出してＥＣＵ３０のバックアップＲＡＭ３９に記憶する。ここで、バッテリ電流は充電方向をプラス値とする。
消費電力＝−（バッテリ電圧×バッテリ電流）
【００６０】
この後、ステップ４０４に進み、アイドルストップ中に車載電装品の消費電力を算出したときの該車載電装品の稼働状態（例えばヘッドライトのオン／オフやブレーキランプのオン／オフ等）をＥＣＵ３０のバックアップＲＡＭ３９に記憶する。
【００６１】
以上説明した本実施例では、エンジン回転が目標停止クランク角で停止するまでの回転挙動（目標軌道）を算出し、エンジン回転停止制御中は、実エンジン回転挙動を目標軌道に合わせるように（実エンジン回転速度と目標エンジン回転速度との偏差を小さくするように）オルタネータ３３の要求負荷トルクを算出して、この要求負荷トルクに応じた要求発電電流を算出すると共に、オルタネータ３３の実発電電流を推定し、この実発電電流を要求発電電流に一致させるように発電指令値を算出してオルタネータ３３の負荷トルクを制御するようにしたので、オルタネータ３３の製造ばらつき、経時変化、環境変化等によってオルタネータ３３の発電特性がばらついても、オルタネータ３３の実発電電流を要求負荷トルクに対応した要求発電電流に精度良く制御して、オルタネータ３３の負荷トルクを精度良く要求負荷トルクに制御することができる。これにより、実エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷トルクを精度良く制御することができるため、エンジン停止過程の実エンジン回転挙動のばらつきを十分に補償することができて、エンジン回転停止クランク角を精度良く目標のクランク角範囲内に制御することができる。
【００６２】
しかも、本実施例では、オルタネータ３３の制御可能な最大負荷の半分に設定された基準負荷トルクを基準にしてオルタネータ３３の要求負荷トルクを算出するようにしたので、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となり、目標軌道への実エンジン回転挙動の追従性を向上させることができる。
【００６３】
また、本実施例では、アイドルストップ中に、バッテリ電圧とバッテリ電流を用いて、車載電装品の消費電力を算出し、エンジン回転停止制御中に、バッテリ電圧及びバッテリ電流、前回のアイドルストップ中に算出した車載電装品の消費電力を用いて、オルタネータ３３の実発電電流を算出することで、オルタネータ３３の実発電電流を推定するようにしたので、オルタネータ３３の実発電電流を検出するセンサを新たに設ける必要がなく、低コスト化することができる。
【００６４】
更に、本実施例では、前回のアイドルストップ中に車載電装品の消費電力を算出したときの該車載電装品の稼働状態と、エンジン回転停止制御中にその車載電装品の消費電力を用いてオルタネータ３３の実発電電流を算出するときの該車載電装品の稼働状態とを比較して、その比較結果から車載電装品の消費電力の変化量が所定値以上であるか否かを判定し、車載電装品の消費電力の変化量が所定値以上であると判定された場合には、その車載電装品の消費電力の変化分に応じてオルタネータ３３の実発電電流を補正するようにしたので、アイドルストップ中に車載電装品の消費電力を算出したときと、その後、エンジン回転停止制御中にその車載電装品の消費電力を用いてオルタネータ３３の実発電電流を算出するときとの間で、車載電装品の稼働状態が変化して車載電装品の消費電力が変化した場合でも、オルタネータ３３の実発電電流を精度良く推定することができる。
【００６５】
尚、オルタネータ３３の実発電電流の推定方法を適宜変更しても良く、例えば、エンジン停止要求の発生直前にオルタネータ３３の発電を停止させた状態で、バッテリ電圧とバッテリ電流を用いて、車載電装品の消費電力を算出し、エンジン回転停止制御中に、バッテリ電圧及びバッテリ電流、エンジン停止要求の発生直前に算出した車載電装品の消費電力を用いて、オルタネータ３３の実発電電流を算出することで、オルタネータ３３の実発電電流を推定するようにしても良い。
【００６６】
しかしながら、本発明は、オルタネータ３３の実発電電流を推定する構成に限定されず、オルタネータ３３の実発電電流を検出する電流センサを設け、エンジン回転停止制御中に電流センサでオルタネータ３３の実発電電流を検出するようにしても良い。
【００６７】
また、上記実施例では、目標停止クランク角を初期値としてクランク角を溯る方向に目標軌道を求めるようにしたが、例えば、目標停止クランク角でエンジン回転が停止するように停止直前のエンジン回転速度とクランク角（例えばＴＤＣ）を初期値として設定しておき、そこからクランク角を溯る方向に目標軌道を求めるようにしても良い等、目標軌道の算出方法を適宜変更しても良い。
【００６８】
また、本発明の適用範囲は、車両の動力源としてエンジンのみを備えた一般的な車両に限定されず、車両の動力源としてエンジンとモータを備えたハイブリッド車に本発明を適用しても良い。
【図面の簡単な説明】
【００６９】
【図１】本発明の一実施例におけるエンジン制御システム全体の概略構成図である。
【図２】目標軌道の算出方法を説明する図である。
【図３】オルタネータ負荷特性を説明する図である。
【図４】エンジン回転停止制御時の見掛上のオルタネータ負荷特性を説明する図である。
【図５】（ａ）は準負荷トルクＴref(Ne(i))＝０に設定してエンジン回転停止制御を行った比較例を説明するタイムチャート、（ｂ）は基準負荷トルクＴref(Ne(i))を最大負荷の半分に設定してエンジン回転停止制御を行った実施例を説明するタイムチャートである。
【図６】ＥＣＵのエンジン回転停止制御機能を説明するブロック図である。
【図７】オルタネータ負荷特性モデルの構成を説明するブロック図である。
【図８】発電トルク特性のマップの一例を概略的に示す図である。
【図９】発電電流特性のマップの一例を概略的に示す図である。
【図１０】目標軌道算出ルーチンの処理の流れを示すフローチャートである。
【図１１】要求負荷算出ルーチンの処理の流れを示すフローチャートである。
【図１２】電流制御ルーチンの処理の流れを示すフローチャートである。
【図１３】消費電力算出ルーチンの処理の流れを示すフローチャートである。
【符号の説明】
【００７０】
１１…エンジン、１３…吸気管、１４…スロットルバルブ、１９…燃料噴射弁、２１…排気管、２６…クランク角センサ、２９…カム角センサ、３０…ＥＣＵ（目標軌道算出手段，停止制御手段，要求負荷算出手段，要求発電電流算出手段，実発電電流判定手段，発電指令値算出手段，消費電力算出手段）、３３…オルタネータ（発電機）、３６…バッテリ、３７…電圧センサ、３８…電流センサ
【図１】
2009215887.tif 000004
【図２】
2009215887.tif 000005
【図３】
2009215887.tif 000006
【図４】
2009215887.tif 000007
【図５】
2009215887.tif 000008
【図６】
2009215887.tif 000009
【図７】
2009215887.tif 000010
【図８】
2009215887.tif 000011
【図９】
2009215887.tif 000012
【図１０】
2009215887.tif 000013
【図１１】
2009215887.tif 000014
【図１２】
2009215887.tif 000015
【図１３】
2009215887.tif 000016