(57)【要約】【課題】エンジン回転停止クランク角を目標クランク角範囲内に制御する際に必要となるロストルク特性を学習する。【解決手段】ＥＣＵ３０は、エンジン回転が目標停止クランク角で停止するまでの回転挙動（以下「目標軌道」という）を算出し、エンジン回転を停止させる際にエンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷を制御する。目標軌道は、目標停止クランク角に至るまでのクランク角と目標エンジン回転速度との関係をロストルク特性を考慮して所定クランク角間隔で算出したものである。エンジン停止要求に応じて燃焼が停止されてからエンジン回転停止制御が開始されるまでの期間にオルタネータ３３の駆動を停止して惰性回転する実エンジン回転挙動から所定クランク角間でロストルクにより消費されたエネルギを算出し、その消費エネルギに基づいてロストルク特性を学習する。【選択図】図１
2008215182.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)におけるオルタネータ３３の基準負荷トルクである。
【００２３】
本実施例１では、オルタネータ３３の基準負荷トルクＴref(Ne(i))は、図４に示すように、オルタネータ３３の制御可能な最大負荷の半分（１／２）に設定されている。このようにすれば、オルタネータ３３は、モータジェネレータと異なり、アシストトルクを出力できないという事情があっても、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となり（基準負荷Ｔref 以下の負荷トルクを仮想的に負の負荷トルクとし、基準負荷Ｔref 以上の負荷トルクを正の負荷トルクとしてオルタネータ３３の負荷トルクを制御することが可能となり）、目標軌道へのエンジン回転挙動の追従性を向上することができる。
【００２４】
尚、オルタネータ３３の基準負荷トルクＴref(Ne(i))は、最大負荷の半分（１／２）に限定されず、例えば、最大負荷の１／３、１／４、２／３、３／４等であっても良く、要は、オルタネータ３３の制御可能な最大負荷よりも小さく、０よりも大きい適宜の負荷を基準負荷トルクＴref(Ne(i))に設定すれば良い。
０＜Ｔref(Ne(i))＜最大負荷
【００２５】
図６（ａ）は、基準負荷トルクＴref(Ne(i))＝０に設定してエンジン回転停止制御を行った比較例を示している。この比較例では、オルタネータ３３の負荷トルクを正方向にしか制御できないため、実エンジン回転挙動がオーバーシュートした場合は、実エンジン回転挙動を目標軌道に一致させることができなくなる。
【００２６】
これに対して、本実施例１のように、オルタネータ３３の基準負荷トルクＴref(Ne(i))を最大負荷よりも小さい適宜の負荷に設定すれば、図５に示すように、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となるため、図６（ｂ）に示すように、実回転挙動がオーバーシュートした場合でも、実回転挙動を目標軌道に一致させることができる。
【００２７】
更に、本実施例１では、図７に示すように、目標軌道を算出する際に、ロストルクＴloss( θ(i) ）を用いて、オルタネータ３３の基準負荷トルクＴref(Ne(i))に応じた目標軌道を算出し、エンジン回転停止制御中は、エンジン回転速度Ｎe(i)に応じた基準負荷トルクＴref(Ne(i))を算出すると共に、現時点(i) のクランク角θ(i) における目標エンジン回転速度と実エンジン回転速度との偏差を小さくするようにベース負荷トルクを算出し、このベース負荷トルクに基準負荷トルクＴref(Ne(i))を加算して要求負荷トルクＴalt を求める（実際には、この要求負荷トルクＴalt にプーリ比Ｒatioを乗算して要求軸トルクＴalt.final に変換する）。そして、図８に示す要求負荷トルク特性を用いて、現時点(i) の要求負荷トルクＴalt （要求軸トルクＴalt.final ）とエンジン回転速度Ｎe(i)に応じた発電指令（デューティＤuty ）を算出し、この発電指令（デューティＤuty ）でオルタネータ３３の発電制御電流（フィールド電流）を制御してオルタネータ３３の負荷トルクを制御する。
【００２８】
このようなオルタネータ３３の負荷トルクの制御を、実エンジン回転速度がオルタネータ３３の発電限界回転速度Ｎelow（図４参照）以下に低下するまで所定クランク間隔（例えば３０ＣＡ間隔）で周期的に実行することで、実エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷トルクをフィードバック制御する。
尚、図８に示す要求負荷トルク特性は、オルタネータ３３の出力電圧が１３．５Ｖで一定の場合の特性であり、出力電圧毎に同様の特性が設定されている。
【００２９】
ところで、目標軌道を算出する際に用いるロストルクＴloss( θ(i) ）の特性は、エンジン１１の製造ばらつきや経時変化等によって変化するため、予め設定された標準的なロストルク特性を用いて目標軌道を算出すると、エンジン１１の製造ばらつきや経時変化や油温の変化等によって実際のロストルク特性と標準的なロストルク特性との間にずれが生じている場合に、目標軌道の算出精度が低下する。
【００３０】
この対策として、本実施例１では、ロストルク特性の変化の影響が実エンジン回転挙動に現れることに着目して、ロストルク特性を実エンジン回転挙動に基づいて学習してバックアップＲＡＭ３２に更新記憶し、このロストルク特性を用いて目標軌道を算出するようにしている。
【００３１】
本実施例１では、エンジン停止要求（アイドルストップ信号）に応じて燃焼が停止されてからエンジン回転停止制御が開始されるまでの期間にオルタネータ３３の駆動を停止して惰性回転する実エンジン回転挙動から所定クランク角間（例えばＴＤＣ間）でロストルクにより消費されたエネルギを算出し、その消費エネルギに基づいてロストルク特性を学習するようにしている。つまり、エンジン停止要求に応じて燃焼が停止されると、エンジン１１が惰性回転しながら、ロストルク（ポンピングロスやフリクションロス）による消費エネルギによって実エンジン回転速度が低下していくため、この期間にオルタネータ３３の駆動を停止すれば、実エンジン回転挙動から所定クランク角間（例えばＴＤＣ間）でロストルクにより消費されたエネルギを精度良く算出することができ、このロストルクによる消費エネルギに基づいてロストルク特性を精度良く学習することができる。
【００３２】
以上説明した本実施例１のロストルク特性の学習とエンジン回転停止制御は、ＥＣＵ３０によって図９、図１０、図１３〜図１５の各ルーチンに従って実行される。以下、これら各ルーチンの処理内容を説明する。
【００３３】
［エンジン回転停止学習制御メインルーチン］
図９のエンジン回転停止学習制御メインルーチンは、エンジン運転中に所定周期で実行される。本ルーチンが起動されると、まずステップ１００で、後述する図１０のロストルク特性学習ルーチンを実行して、学習実行条件が成立しているときにロストルク特性を学習する。この後、ステップ２００に進み、後述する図１３の目標軌道算出ルーチンを実行して、図１０のロストルク特性学習ルーチンで学習したロストルク特性を用いて、オルタネータ３３の基準負荷トルクＴref(Ne(i))に応じた目標軌道を算出する。
【００３４】
この後、ステップ３００に進み、後述する図１４及び図１５のエンジン回転停止制御ルーチンを実行して、エンジン回転を停止させる際に実エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷トルクをフィードバック制御する。
【００３５】
［ロストルク特性学習ルーチン］
図１０のロストルク特性学習ルーチンは、図９のエンジン回転停止学習制御メインルーチンのステップ１００で実行されるサブルーチンであり、特許請求の範囲でいうロストルク特性学習手段としての役割を果たす。
【００３６】
本ルーチンが起動されると、まずステップ１０１で、所定の学習実行条件が成立しているか否かを判定する。ここで、学習実行条件は、例えばエンジン１１の暖機完了後で冷却水温が１００℃に達した後の最初のアイドルストップ時であることを条件とする。尚、最初のアイドルストップ時に限定せず、２回目以降のアイドルストップ時にも学習するようにしても良い。或は、所定アイドルストップ回数毎、所定走行回数毎、所定積算走行距離毎、所定期間経過毎のいずれかの間隔で適宜のアイドルストップ時に学習するようにしても良い。このステップ１０１で、学習実行条件が成立していないと判定されれば、以降の学習処理を行うことなく、本ルーチンを終了する。
【００３７】
一方、このステップ１０１で、学習実行条件が成立していると判定されれば、ステップ１０２に進み、オルタネータ３３の駆動を停止した後、ステップ１０３に進み、カム角センサ２９とクランク角センサ２６の出力パルスに基づいて現在のクランク角θとエンジン回転速度を算出する。この際、クランク角θは吸気ＡＴＤＣで表現する。
【００３８】
この後、ステップ１０４に進み、現在のクランク角θが学習値算出タイミングであるＡＴＤＣ０ＣＡ（つまりＴＤＣ）であるか否かを判定し、ＡＴＤＣ０ＣＡでなければ、以降の学習処理を行うことなく、本ルーチンを終了する。
【００３９】
これに対して、上記ステップ１０４で、現在のクランク角θがＡＴＤＣ０ＣＡ（つまりＴＤＣ）であると判定されれば、ステップ１０５に進み、上記ステップ１０２で算出したエンジン回転速度を、今回のＴＤＣにおけるエンジン回転速度Ｎe(j)としてＥＣＵ３０のＲＡＭ（図示せず）に記憶する。
【００４０】
この後、ステップ１０６に進み、ＴＤＣ間（１８０ＣＡ間）でロストルクにより消費されたエネルギ消費量ΔＥを次式により算出する。
ΔＥ＝１／２・Ｊ・Ｎe(j-1)2 −１／２・Ｊ・Ｎe(j)2
ここで、Ｊはエンジン１１の慣性モーメント、Ｎe(j-1)は、前回のＴＤＣにおけるエンジン回転速度である。
【００４１】
この後、ステップ１０７に進み、上記ステップ１０６で算出したＴＤＣ間のロストルクによるエネルギ消費量ΔＥを用いて、仮の学習補正トルクＴggを次式により算出する。
Ｔgg＝（ΔＥ−ΔＥtarget）／Δθ
ここで、ΔＥtargetは、前回の目標軌道の算出に使用したＴＤＣ間のロストルクによるエネルギ消費量である。本実施例１では、Δθは、ＴＤＣ間のクランク角（１８０ＣＡ）である。
【００４２】
この後、ステップ１０８に進み、上述したステップ１０７で算出した仮の学習補正トルクＴggを例えば次式によりなまし処理して学習補正トルクＴg を求める。
Ｔg(今回値) ＝｛ａ×Ｔg(前回値）＋ｂ×Ｔgg｝／（ａ＋ｂ）
ここで、ａ，ｂは係数である。これにより、図１２に示すようにＴＤＣ間（１８０ＣＡ間）で一定の学習補正トルクＴg が求められる。
【００４３】
この後、ステップ１０９に進み、前回の目標軌道の算出に使用したロストルクＴloss( θ(i) ）に学習補正トルクＴg を加算することで、前回のロストルクＴloss( θ(i) ）を学習補正トルクＴg で補正し、これをＥＣＵ３０のバックアップＲＡＭ３２に更新記憶する。これにより、バックアップＲＡＭ３２に記憶されている図１１のロストルク特性の学習マップを学習補正する。
【００４４】
［目標軌道算出ルーチン］
図１３の目標軌道算出ルーチンは、図９のエンジン回転停止学習制御メインルーチンのステップ２００で実行されるサブルーチンであり、特許請求の範囲でいう目標軌道算出手段としての役割を果たす。本ルーチンが起動されると、まずステップ２０１で、目標軌道算出完了フラグが目標軌道の算出前を意味する「０」にセットされているか否かを判定し、この目標軌道算出完了フラグが目標軌道算出完了を意味する「１」にセットされていれば、以降の処理を行うことなく、本ルーチンを終了する。
【００４５】
一方、このステップ２０１で、目標軌道算出完了フラグ＝０（目標軌道の算出前）と判定されれば、ステップ２０２に進み、ロストルクＴ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) ）を算出する。
【００４７】
初期値は、ｉ＝０、θ(0) ＝６０ＣＡ（目標停止クランク角）、Ｎe(0)＝０ｒｐｍ（停止時のエンジン回転速度）である。目標軌道は、目標停止クランク角（θ(0) ＝６０ＣＡ）を初期値としてクランク角を溯る方向に所定クランク角毎（本実施例では３０ＣＡ毎）に算出する。クランク角は、吸気ＡＴＤＣで表現する。従って、θ(1) ＝３０ＣＡ、θ(2) ＝０ＣＡ、θ(3) ＝１５０ＣＡ、θ(4) ＝１２０ＣＡ、θ(5) ＝９０ＣＡ、θ(6) ＝６０ＣＡ、θ(7) ＝３０ＣＡ、θ(8) ＝０ＣＡ、θ(9) ＝１５０ＣＡ、……の順序で目標エンジン回転速度Ｎe(i+1)の二乗が算出される。
【００４８】
この後、ステップ２０３に進み、目標エンジン回転速度Ｎe(i+1)の二乗がエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxの二乗を越えたか否かを判定し、まだ最大エンジン回転速度Ｎemaxの二乗を越えていなければ、ステップ２０４に進み、目標軌道算出完了フラグを「０」に維持する（セットし直す）。
【００４９】
この後、ステップ２０５に進み、現在のクランク角θ(i) から演算間隔である３０ＣＡを差し引いて次のクランク角θ(i+1) を求める。
θ(i+1) ＝θ(i) −３０
【００５０】
この後、ステップ２０６に進み、次のクランク角θ(i+1) が「−３０」であるか否かを判定し、次のクランク角θ(i+1) が「−３０」であれば、次のクランク角θ(i+1) がＴＤＣを越えると判断して、ステップ２０７に進み、次のクランク角θ(i+1) を吸気ＡＴＤＣ表現で「１５０」に書き替えると共に、目標停止クランク角θ(0) に至るまでのＴＤＣの乗り越え回数をカウントするカウンタｎをインクリメントして（ｎ＝ｎ＋１）、ステップ２０９に進む。
【００５１】
一方、上記ステップ２０６で、次のクランク角θ(i+1) が「−３０」でないと判定されれば、次のクランク角θ(i+1) がまだＴＤＣを越えないと判断して、ステップ２０７の処理を行わず、上記ステップ２０５で算出した次のクランク角θ(i+1) を変更せずに用いる。この後、ステップ２０９に進み、目標エンジン回転速度Ｎe(i+1)の二乗の平方根を算出して目標エンジン回転速度Ｎe(i+1)を求め、これを図３の目標軌道のテーブルに割り付けて、本ルーチンを終了する。尚、ＥＣＵ３０の演算負荷低減のため、エンジン回転速度の二乗をそのままテーブルに割り付けても良い。図３の目標軌道のテーブルは、ＥＣＵ３０のＲＡＭに記憶される。
【００５２】
以上のような処理を繰り返して、目標停止クランク角（θ(0) ＝６０ＣＡ）を初期値としてクランク角を溯る方向に３０ＣＡ毎に目標エンジン回転速度Ｎe(i+1)の二乗を算出して図３の目標軌道のテーブルに目標エンジン回転速度Ｎe(i+1)を割り付ける処理を繰り返す。そして、上記ステップ２０３で、目標エンジン回転速度Ｎe(i+1)の二乗がエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxの二乗を越えたと判定された時点で、ステップ２０８に進み、目標軌道算出完了フラグを目標軌道算出完了を意味する「１」にセットして、ステップ２０９に進み、最後の目標エンジン回転速度Ｎe(i+1)の二乗の平方根を算出して目標エンジン回転速度Ｎe(i+1)を求め、これを図３の目標軌道のテーブルに割り付けて、本ルーチンを終了する。
【００５３】
［エンジン回転停止制御ルーチン］
図１４及び図１５のエンジン回転停止制御ルーチンは、図９のエンジン回転停止学習制御メインルーチンのステップ３００で実行されるサブルーチンであり、特許請求の範囲でいう停止制御手段としての役割を果たす。本ルーチンが起動されると、まずステップ３０１で、エンジン停止要求（アイドルストップ信号）が発生したか否かを判定し、エンジン停止要求が発生していなければ、以降の処理を行うことなく、本ルーチンを終了して、エンジン運転（燃料噴射制御及び点火制御）を継続する。
【００５４】
その後、上記ステップ３０１で、エンジン停止要求が発生したと判定された時点で、ステップ３０２に進み、現在のクランク角θとエンジン回転速度Ｎe を算出する。この後、ステップ３０３に進み、現在のクランク角θがオルタネータ３３の負荷トルクの制御タイミング（吸気ＡＴＤＣ表現で０、３０、６０、９０、１２０、１５０ＣＡのいずれか）であるか否かを判定し、オルタネータ３３の負荷トルクの制御タイミングでなければ、以降の処理を行うことなく、本ルーチンを終了する。
【００５５】
上記ステップ３０３で、現在のクランク角θがオルタネータ３３の負荷トルクの制御タイミングであると判定されれば、ステップ３０４に進み、現在のクランク角θがエンジン回転停止制御を実行可能な最大エンジン回転速度Ｎemaxよりも低いか否かを判定し、現在のクランク角θが最大エンジン回転速度Ｎemax以上であれば、以降の処理を行うことなく、本ルーチンを終了する。
【００５６】
これに対して、上記ステップ３０４で、現在のクランク角θが最大エンジン回転速度Ｎemaxよりも低いと判定されれば、ステップ３０５に進み、初期値設定完了フラグが目標軌道の初期値ｉの設定完了前を意味する「０」にセットされているか否かを判定し、この初期値設定完了フラグが「０」にセットされていれば、ステップ３０６に進み、目標軌道の初期値ｉを設定する。この際、図３の目標軌道のテーブルを参照して、現在のクランク角θとエンジン回転速度Ｎe に最も近い目標エンジン回転速度Ｎetg に対応するｉ（目標停止クランク角までの算出回数）を目標軌道の初期値ｉとして設定する。
【００５７】
この後、ステップ３０７に進み、初期値設定完了フラグを初期値ｉの設定完了を意味する「１」にセットし、次のステップ３０８で、図３の目標軌道のテーブルを参照して、初期値ｉに対応する目標エンジン回転速度Ｎetg を今回のエンジン回転停止制御における目標エンジン回転速度の初期値に設定して、図１５のステップ３０９に進む。
【００５８】
尚、上記ステップ３０５で、初期値設定完了フラグが初期値設定完了を意味する「１」にセットされていると判定されれば、上記ステップ３０６〜３０８の処理を飛び越して図１１のステップ３０９に進む。
【００５９】
このステップ３０９では、現在のエンジン回転速度Ｎe と目標エンジン回転速度Ｎetg とオルタネータ３３の基準負荷トルクＴref(Ne) を用いて、次式により要求負荷トルクＴalt を算出する。
【００６０】
【数１】
2008215182.tif 000003
【００６１】
ここで、Ｊはエンジン１１の慣性モーメント、Ｋはフィードバックゲイン、Δθはクランク角変化量（３０ＣＡ）である。
この後、ステップ３１０に進み、要求負荷トルクＴalt にプーリ比Ｒatioを乗算して、オルタネータ３３の要求軸トルクＴalt.final に変換した後、ステップ３１１に進み、バッテリ電圧を検出する。
【００６２】
この後、ステップ３１２に進み、バッテリ電圧毎に作成された複数の要求負荷トルク特性マップ（図８参照）の中から、現在のバッテリ電圧に対応する要求負荷トルク特性マップを選択して、現在の要求軸トルクＴalt.final とエンジン回転速度Ｎe に応じた発電指令（デューティＤuty ）を算出する。この後、ステップ３１３に進み、ｉカウンタの値をデクリメントして（ｉ＝ｉ−１）、Δθ（３０ＣＡ）変化後の次の演算タイミングを設定して、本ルーチンを終了する。
【００６３】
以上説明した本実施例１のエンジン回転停止制御の一例を図１６に示す。
本実施例１では、オルタネータ３３の制御可能な最大負荷の半分に設定された基準負荷トルクＴref に応じた目標軌道を算出し、エンジン回転停止制御中は、エンジン回転速度Ｎe に応じた基準負荷トルクＴref を算出して、この基準負荷トルクＴref を基準にして目標エンジン回転速度と実エンジン回転速度との偏差を小さくするように要求負荷トルクＴalt を算出する。算出した要求負荷トルクＴalt が基準負荷トルクＴref よりも小さい領域では、仮想的に負の負荷トルクとなり、要求負荷トルクＴalt が基準負荷トルクＴref よりも大きい領域では、正の負荷トルクとなる。このようにすれば、オルタネータ３３は、モータジェネレータと異なり、アシストトルクを出力できないという事情があっても、仮想的にオルタネータ３３の負荷トルクを正負両方向に制御することが可能となり、目標軌道へのエンジン回転挙動の追従性を向上させることができる。
【００６４】
更に、本実施例１では、目標軌道を算出する際に用いるロストルクＴloss( θ(i) ）の特性がエンジン１１の製造ばらつきや経時変化等によって変化することを考慮して、ロストルクＴloss( θ(i) ）の特性を実エンジン回転挙動に基づいて学習してバックアップＲＡＭ３２に更新記憶し、このロストルクＴloss( θ(i) ）の特性を用いて目標軌道を算出するようにしたので、エンジン１１の製造ばらつきや経時変化や油温の変化等によって実際のロストルク特性と標準的なロストルク特性との間にずれが生じても、そのロストルク特性のずれを学習によって補償することができ、目標軌道の算出精度を向上できる。これにより、本実施例１のように、エンジン回転を停止させる際に実エンジン回転挙動を目標軌道に合わせるようにオルタネータ３３の負荷トルクを制御すれば、エンジン停止過程の実エンジン回転挙動のばらつきを十分に補償することができて、エンジン回転停止位置を精度良く目標のクランク角範囲内に制御することができる。
【実施例２】
【００６５】
上記実施例１では、ＴＤＣ間（１８０ＣＡ間）のロストルクによるエネルギ消費量ΔＥを用いてロストルクＴlossの特性を学習補正するようにしたが、本発明の実施例２では、図１７のロストルク特性学習ルーチンを実行することで、例えば３０ＣＡ間のロストルクによるエネルギ消費量ΔＥを用いてロストルクＴlossの特性を学習補正するようにしている。要するに、学習のクランク角間隔は、任意に設定可能である。
【００６６】
図１７のロストルク特性学習ルーチンでは、まずステップ１１１で、前記実施例１と同様の学習実行条件が成立しているか否かを判定する。このステップ１１１で、学習実行条件が成立していないと判定されれば、以降の学習処理を行うことなく、本ルーチンを終了する。
【００６７】
一方、このステップ１１１で、学習実行条件が成立していると判定されれば、ステップ１１２に進み、オルタネータ３３の駆動を停止した後、ステップ１１３に進み、カム角センサ２９とクランク角センサ２６の出力パルスに基づいて現在のクランク角θとエンジン回転速度を算出する。この際、クランク角θは吸気ＡＴＤＣで表現する。
【００６８】
この後、ステップ１１４に進み、現在のクランク角θが学習値算出タイミング（吸気ＡＴＤＣ表現で０、３０、６０、９０、１２０、１５０のいずれか）であるか否かを判定し、学習値算出タイミングでなければ、以降の学習処理を行うことなく、本ルーチンを終了する。
【００６９】
これに対して、上記ステップ１１４で、現在のクランク角θが学習値算出タイミングのクランク角であると判定されれば、ステップ１１５に進み、上記ステップ１１２で算出したエンジン回転速度を、現在のクランク角θにおけるエンジン回転速度Ｎe(j)としてＥＣＵ３０のＲＡＭ（図示せず）に記憶する。
【００７０】
この後、ステップ１１６に進み、３０ＣＡ間でロストルクにより消費されたエネルギ消費量ΔＥを次式により算出する。
ΔＥ＝１／２・Ｊ・Ｎe(j-1)2 −１／２・Ｊ・Ｎe(j)2
ここで、Ｊはエンジン１１の慣性モーメント、Ｎe(j-1)は、現在よりも３０ＣＡ前のクランク角におけるエンジン回転速度である。
【００７１】
この後、ステップ１１７に進み、上記ステップ１１６で算出した３０ＣＡ間のロストルクによるエネルギ消費量ΔＥを用いて、仮のロストルクＴlossg の学習値を次式により算出する。
Ｔlossg ＝ΔＥ／Δθ
ここで、Δθは、３０ＣＡである。
【００７２】
この後、ステップ１１８に進み、上述したステップ１１７で算出した仮のロストルクＴlossg の学習値を例えば下記の式によりなまし処理してロストルクＴlossの学習値を求め、この学習値をＥＣＵ３０のバックアップＲＡＭ３２に更新記憶する。これにより、バックアップＲＡＭ３２に記憶されている図１１のロストルク特性の学習マップを学習補正する。
Ｔloss（今回値) ＝｛ａ×Ｔloss（前回値）＋ｂ×Ｔlossg ｝／（ａ＋ｂ）
ここで、ａ，ｂは係数である。
【００７３】
これ以外の処理は、前記実施例１と同じである。
以上説明した本実施例２では、３０ＣＡ間のロストルクによるエネルギ消費量ΔＥを用いてロストルクＴlossの特性を学習補正するようにしているので、ＴＤＣ間で学習する前記実施例１よりも細かいクランク角間隔でロストルクＴlossの特性を学習補正することができ、ロストルクＴlossの特性の学習精度を向上することができる。
【００７４】
尚、上記各実施例１，２では、エンジン停止要求（アイドルストップ信号）に応じて燃焼が停止されてからエンジン回転停止制御が開始されるまでの期間にオルタネータ３３の駆動を停止して惰性回転する実エンジン回転挙動から所定クランク角間（例えばＴＤＣ間又は３０ＣＡ間）でロストルクにより消費されたエネルギΔＥを算出し、その消費エネルギΔＥに基づいてロストルクＴlossの特性を学習するようにしたが、オルタネータ３３の負荷トルクが発生しない所定回転速度以下（約４００ｒｐｍ以下）のエンジン低回転領域で、惰性回転する実エンジン回転挙動から所定クランク角間で消費されたエネルギΔＥを算出し、その消費エネルギΔＥに基づいてロストルクＴlossの特性を学習するようにしても良い。このようにしても、オルタネータ３３の負荷トルクの影響を受けることなく、ロストルクＴlossの特性を精度良く学習することができる。
【００７５】
その他、本発明は、エンジン停止要求に応じて燃焼が停止されてからエンジン回転が停止するまでの期間に、ロストルクＴlossの特性を学習するためにエンジン回転停止制御を中止してオルタネータ３３の駆動を停止し、惰性回転する実エンジン回転挙動から所定クランク角間でロストルクにより消費されたエネルギΔＥを算出し、その消費エネルギΔＥに基づいてロストルクＴlossの特性を学習するようにしても良い。
【実施例３】
【００７６】
上記実施例１，２では、エンジン１１を停止させる際にロストルクＴlossの特性を学習するようにしたが、本発明の実施例３では、図１８のロストルク特性学習ルーチンを実行することで、エンジン１１をスタータ（図示せず）でクランキングして始動する際にロストルクＴlossの特性を学習するようにしている。
【００７７】
クランキング時の実エンジン回転の上昇は、スタータからエンジン１１に加えられるクランキングエネルギ（クランキングトルク）によって発生し、スタータで発生するクランキングエネルギ（クランキングトルク）はスタータの通電電流から推定できる。スタータで発生するクランキングエネルギ（クランキングトルク）は、その一部がロストルクによって消費され、その残りのエネルギで実エンジン回転が上昇されることになる。従って、スタータの通電電流から算出したスタータ出力エネルギ（又はスタータ出力トルク）と実エンジン回転の上昇挙動から算出したクランキングエネルギ（又はクランキングトルク）との差分は、ロストルクによる消費エネルギに相当するため、当該差分からロストルク特性を学習することができる。
【００７８】
図１８のロストルク特性学習ルーチンでは、まずステップ１２１で、所定の学習実行条件が成立しているか否かを判定する。ここで、学習実行条件は、例えばエンジン１１の暖機完了後で冷却水温が１００℃に達した後の最初のアイドルストップの再始動時（クランキング時）であることを条件とする。尚、最初のアイドルストップの再始動時に限定せず、２回目以降のアイドルストップの再始動時にも学習するようにしても良い。或は、所定アイドルストップ回数毎、所定走行回数毎、所定積算走行距離毎、所定期間経過毎のいずれかの間隔で適宜の再始動時に学習するようにしても良い。このステップ１２１で、学習実行条件が成立していないと判定されれば、以降の学習処理を行うことなく、本ルーチンを終了する。
【００７９】
一方、このステップ１２１で、学習実行条件が成立していると判定されれば、ステップ１２２に進み、カム角センサ２９とクランク角センサ２６の出力パルスに基づいて現在のクランク角θとエンジン回転速度を算出する。この際、クランク角θは吸気ＡＴＤＣで表現する。
【００８０】
この後、ステップ１２３に進み、現在のクランク角θが学習値算出タイミング（ＡＴＤＣ表現で０、３０、６０、９０、１２０、１５０のいずれか）であるか否かを判定し、学習値算出タイミングでなければ、以降の学習処理を行うことなく、本ルーチンを終了する。
【００８１】
これに対して、上記ステップ１２３で、現在のクランク角θが学習値算出タイミングのクランク角であると判定されれば、ステップ１２４に進み、上記ステップ１２２で算出したエンジン回転速度を、現在のクランク角θにおけるエンジン回転速度Ｎe(j)としてＥＣＵ３０のＲＡＭに記憶する。
【００８２】
この後、ステップ１２５に進み、３０ＣＡ間のエンジン回転の上昇に使われたクランキングトルクＴinput を次式により算出する。
Ｔinput ＝１／Δθ・｛１／２・Ｊ・Ｎe(j)2 −１／２・Ｊ・Ｎe(j-1)2 ｝
ここで、Δθは３０ＣＡ、Ｊはエンジン１１の慣性モーメント、Ｎe(j-1)は、現在よりも３０ＣＡ前のクランク角におけるエンジン回転速度ある。
【００８３】
この後、ステップ１２６に進み、３０ＣＡ間のスタータの通電電流からスタータ出力トルクＴstarter を予め設定されたマップ等により算出する。そして、次のステップ１２７で、３０ＣＡ間のエンジン回転の上昇に使われたクランキングトルクＴinput からスタータ出力トルクＴstarter を差し引いて、仮のロストルクＴlossg の学習値を求める。
Ｔlossg ＝Ｔinput −Ｔstarter
【００８４】
この後、ステップ１２８に進み、上述したステップ１２７で算出した仮のロストルクＴlossg の学習値を例えば下記の式によりなまし処理してロストルクＴlossの学習値を求め、この学習値をＥＣＵ３０のバックアップＲＡＭ３２に更新記憶する。これにより、バックアップＲＡＭ３２に記憶されている図１１のロストルク特性の学習マップを学習補正する。
Ｔloss（今回値) ＝｛ａ×Ｔloss（前回値）＋ｂ×Ｔlossg ｝／（ａ＋ｂ）
ここで、ａ，ｂは係数である。
【００８５】
これ以外の処理は、前記実施例１と同じである。
以上説明した本実施例３では、エンジン１１をスタータでクランキングして始動する際にロストルクＴlossの特性を学習することができる。
【００８６】
尚、本発明は、エンジン回転停止制御中にオルタネータ３３（発電機）の負荷を制御する構成に限定されず、オルタネータ３３以外の補機、例えば空調装置のコンプレッサ等の負荷を制御するようにしても良い。
【図面の簡単な説明】
【００８７】
【図１】本発明の実施例１におけるエンジン制御システム全体の概略構成図である。
【図２】目標軌道の算出方法を説明する図である。
【図３】目標軌道のテーブルを説明する図である。
【図４】オルタネータ負荷特性を説明する図である。
【図５】エンジン回転停止制御時の見掛上のオルタネータ負荷特性を説明する図である。
【図６】（ａ）は準負荷トルクＴref(Ne(i))＝０に設定してエンジン回転停止制御を行った比較例を説明するタイムチャート、（ｂ）は基準負荷トルクＴref(Ne(i))を最大負荷の半分に設定してエンジン回転停止制御を行った実施例を説明するタイムチャートである。
【図７】ＥＣＵのエンジン回転停止制御機能を説明するブロック図である。
【図８】要求負荷トルク特性のマップの一例を概略的に示す図である。
【図９】実施例１のエンジン回転停止学習制御メインルーチンの処理の流れを示すフローチャートである。
【図１０】実施例１のロストルク特性学習ルーチンの処理の流れを示すフローチャートである。
【図１１】ロストルク特性の学習マップの一例を概略的に示す図である。
【図１２】学習補正トルクＴg の一例を概略的に示す図である。
【図１３】実施例１の目標軌道算出ルーチンの処理の流れを示すフローチャートである。
【図１４】実施例１のエンジン回転停止制御ルーチンの処理の流れを示すフローチャートである（その１）。
【図１５】実施例１のエンジン回転停止制御ルーチンの処理の流れを示すフローチャートである（その２）。
【図１６】実施例１のエンジン回転停止制御実行時における要求負荷トルクＴalt とエンジン回転速度Ｎe の挙動を示すタイムチャートである。
【図１７】実施例２のロストルク特性学習ルーチンの処理の流れを示すフローチャートである。
【図１８】実施例３のロストルク特性学習ルーチンの処理の流れを示すフローチャートである。
【符号の説明】
【００８８】
１１…エンジン、１３…吸気管、１４…スロットルバルブ、１９…燃料噴射弁、２１…排気管、２６…クランク角センサ、２９…カム角センサ、３０…ＥＣＵ（目標軌道算出手段，停止制御手段、ロストルク特性学習手段）、３２…バックアップＲＡＭ（記憶手段）、３３…オルタネータ（補機）
【図１】
2008215182.tif 000004
【図２】
2008215182.tif 000005
【図３】
2008215182.tif 000006
【図４】
2008215182.tif 000007
【図５】
2008215182.tif 000008
【図６】
2008215182.tif 000009
【図７】
2008215182.tif 000010
【図８】
2008215182.tif 000011
【図９】
2008215182.tif 000012
【図１０】
2008215182.tif 000013
【図１１】
2008215182.tif 000014
【図１２】
2008215182.tif 000015
【図１３】
2008215182.tif 000016
【図１４】
2008215182.tif 000017
【図１５】
2008215182.tif 000018
【図１６】
2008215182.tif 000019
【図１７】
2008215182.tif 000020
【図１８】
2008215182.tif 000021