以下、本発明の一形態に係る制御装置が組み込まれたハイブリッド車両を説明する。図1は、ハイブリッド車両1を概略的に示している。車両1は、内燃機関(以下、エンジンと称することがある。)11と、第1モータ・ジェネレータ(以下、第1MGと略称することがある。)12と、第2モータ・ジェネレータ(以下、第2MGと略称することがある。)13とを備えている。エンジン11は、一列に並ぶ3つの気筒11aを備えている。すなわち、エンジン11は直列3気筒の内燃機関として構成されている。このエンジン11は、ハイブリッド車両に搭載される周知の内燃機関であるため、詳細な説明を省略する。第1MG12及び第2MG13は、電動機及び発電機として機能する周知のモータ・ジェネレータである。
エンジン11のクランク軸11b及び第1MG12の出力軸12aは、動力分割機構14と接続されている。動力分割機構14には、車両1の駆動輪2に動力を伝達するための出力部15も接続されている。出力部15は、第1ドライブギヤ16と、第1ドライブギヤ16と噛み合うとともにカウンタ軸17に固定されたカウンタギヤ18と、カウンタ軸17に固定された出力ギヤ19とを備えている。出力ギヤ19は、デファレンシャル機構20のケースに設けられたリングギヤ20aと噛み合っている。デファレンシャル機構20は、リングギヤ20aに伝達された動力を左右の駆動輪2に分配する周知の機構である。なお、図1では左右の駆動輪2のうちの一方のみを示す。
動力分割機構14は、差動機構としての遊星歯車機構21を備えている。遊星歯車機構21は、シングルピニオン型の遊星歯車機構であり、外歯歯車であるサンギヤSuと、そのサンギヤSuに対して同軸的に配置された内歯歯車としてのリングギヤRiと、これらのギヤSu、Riに噛み合うピニオンギヤPiを自転可能かつサンギヤSuの周囲を公転可能に保持するキャリアCaとを備えている。サンギヤSuは、第1MG12の出力軸12aと連結されている。キャリアCaは、エンジン11のクランク軸11bと連結されている。リングギヤRiは、第1ドライブギヤ16と連結されている。そのため、サンギヤSuが本発明の第2回転要素に、キャリアCaが本発明の第1回転要素に、リングギヤRiが本発明の第3回転要素にそれぞれ相当する。
この図に示すように第2MG13の出力軸13aには、第2ドライブギヤ22が設けられている。第2ドライブギヤ22は、カウンタギヤ18と噛み合っている。第1MG12及び第2MG13は、不図示のインバータ及び昇圧コンバータを介してバッテリ23と電気的に接続されている。
エンジン11、第1MG12、及び第2MG13の動作は、車両制御装置30にて制御される。車両制御装置30は、マイクロプロセッサ及びその動作に必要なRAM、ROM等の周辺機器を含んだコンピュータユニットとして構成されている。車両制御装置30は、例えばエンジン11の吸入空気量を調整するためのスロットルバルブ(不図示)及び各気筒11aに燃料を供給するためのインジェクタ(不図示)などを制御してエンジン11の動作を制御する。また、車両1の速度(車速)及びバッテリ23の充電状態に応じて各MG12、13の動作を制御する。車両制御装置30には、車両1に係る情報を取得するための種々のセンサが接続されている。車両制御装置30には、例えば車速センサ31、クランク角センサ32、スロットル開度センサ33、及び冷却水温センサ34が接続されている。車速センサ31は、車速に対応した信号を出力する。クランク角センサ32は、エンジン11のクランク角に対応した信号を出力する。スロットル開度センサ33は、スロットルバルブの開度(スロットル開度)に対応した信号を出力する。冷却水温センサ34は、エンジン11の冷却水の温度に対応した信号を出力する。この他にも車両制御装置30には種々のセンサやスイッチ等が接続されているが、それらの図示は省略した。
車両制御装置30は、所定の停止条件が成立した場合に、各気筒11aへの燃料供給を停止して燃焼を停止させ、これによりエンジン11を停止させる。この車両1では、車速が予め設定した所定の判定速度以下になると第2MG13のみで車両1を走行させる。そのため、停止条件は、例えば車速がこの判定速度以下になった場合に成立したと判定される。
また、車両制御装置30は、エンジン11を停止させる場合に、予め設定した所定の目標クランク角でエンジン1が停止するように、スロットル開度及び第1MG12を制御する。なお、目標クランク角には、例えばエンジン11の始動時に最も振動を抑制することが可能なクランク角が設定される。具体的には、例えばいずれかの気筒11aが圧縮行程の上死点になるクランク角が目標クランク角に設定される。図2を参照してエンジン11を停止させる際に行う停止制御の概要について説明する。図2は、停止制御を実行してエンジン11を停止させたときのエンジン11の回転数、クランク角、エンジン11の運転モード、インジェクタからの燃料噴射量、スロットル開度、及び第1MG12の指令トルクの時間変化の一例を示している。なお、第1MG12の指令トルクは、車両制御装置30から第1MG12に出力される指令値である。また、正の指令トルクは、クランク軸11bを正転方向(エンジン11の運転時に回転する方向)に回転させるトルクであり、負の指令トルクは、クランク軸11bを制動するトルクである。
この停止制御では、各気筒11aへの燃料供給を停止した後、エンジン11の回転数が所定の第1回転数Ne1からそれより低い所定の第2回転数Ne2に達するまでの単位時間当たりのエンジン11の回転数の低下量を算出する。この算出は、エンジン11の回転数が第2回転数Ne2に達した時点で行われる。また、車両制御装置30は、この時点におけるクランク角CRKn2を取得する。低下量は、例えば以下に示す(1)式を用いて算出すればよい。
X=ΔNe/ΔT=(Ne2−Ne1)/(T2−T1) ・・・(1)
なお、この式中のXは単位時間当たりのエンジン11の回転数の低下量である。T1はエンジン11の回転数が第1回転数Ne1になったときの時間であり、T2はエンジン11の回転数が第2回転数Ne2になったときの時間である。ΔNeは、第2回転数Ne2と第1回転数Ne1の差である。ΔTは、時間T2と時間T1の差すなわち図2の期間P1の長さである。なお、この図に示すように期間P1では、スロットル開度が気筒11aへの燃料供給を停止したときの開度(以下、供給停止時開度と称することがある。)にほぼ維持される。
次に算出した低下量Xに基づいて、スロットル開度を供給停止時開度に維持した状態で、エンジン11の回転数が第3回転数Ne3に達したと仮定したときになると予想されるクランク角(以下、推定クランク角と称することがある。)CRKを算出する。なお、図3に示すように第3回転数Ne3は、第2回転数Ne2より低い回転数である。推定クランク角CRKは、例えば以下に示す(2)〜(4)式を用いて算出すればよい。
ΔT’=(Ne2−Ne3)/X ・・・(2)
ΔC=Ne2/60×ΔT’×360 ・・・(3)
CRK=CRKn2+ΔC ・・・(4)
なお、これらの式中のΔT’はエンジン11の回転数が第2回転数Ne2から第3回転数Ne3に低下するまでに掛かると予想される時間、すなわち図2の期間P2の長さである。ΔCは、エンジン11の回転数が第2回転数Ne2から第3回転数Ne3に低下するまでにクランク角が移動すると予想される移動量である。
その後、この停止制御では、算出した推定クランク角CRKと、予め設定した判定クランク角Cとを比較する。判定クランク角Cは、エンジン11の回転数が第3回転数Ne3に達したときにエンジン11のクランク角がこの判定クランク角Cであれば、第1MG12から所定のトルク範囲内のトルクを出力することでエンジン11を目標クランク角で停止させることが可能なクランク角が設定される。なお、このトルク範囲には、冷間時など第1MG12から出力可能なトルクが制限されたときの制限範囲が設定される。すなわち、この停止制御では、第1MG12から制限範囲内のトルクを出力すればエンジン11を目標クランク角で停止できる。
そして、判定クランク角Cに対して推定クランク角CRKが進んでいた場合は、図2に破線Laで一例を示したようにスロットル開度を供給停止時開度より小さくする。この際、スロットル開度をどの程度小さくするかは、判定クランク角Cと推定クランク角CRKとの差に応じて設定すればよい。例えば、この差が大きいほどスロットル開度の変化量を大きくする、言い換えればこの差が大きいほどスロットル開度をより小さくすればよい。一方、判定クランク角Cに対して推定クランク角CRKが遅れていた場合には、図2に破線Lbで一例を示したようにスロットル開度を供給停止時開度より大きくする。スロットル開度をどの程度大きくするかは、判定クランク角Cと推定クランク角CRKとの差に応じて設定すればよい。例えば、この差が大きいほどスロットル開度の変化量を大きくする、言い換えればこの差が大きいほどスロットル開度をより大きくすればよい。そして、判定クランク角Cと推定クランク角CRKがほぼ同じ場合には、図2に破線Lcで一例を示したようにスロットル開度を供給停止時開度に維持する。以降では、このように調整した後のスロットル開度を調整スロットル開度と称することがある。
その後、エンジン11の回転数が実際に第3回転数Ne3に達すると第1MG12からトルクを出力してエンジン11を目標クランク角で停止させる。この停止制御では、この際に実行される第1MG12の制御として回転数引き下げ制御、位置合わせ制御、トルク抜き制御、及び逆回転防止制御が設けられている。これらの制御は、回転数引き下げ制御、位置合わせ制御、トルク抜き制御、逆回転防止制御の順番で実行される。
回転数引き下げ制御は、エンジン11の回転数が予め設定した所定の第4回転数Ne4以下になるまで実行される。この第4回転数Ne4は、位置合わせ制御を開始する回転数である。エンジン11の回転数が第4回転数Ne4以下になると、位置合わせ制御が開始される。この位置合わせ制御では、エンジン11が停止したときにクランク軸11bが予め設定した目標クランク角になるように第1MG12からトルクを出力する。
位置合わせ制御は、エンジン11の回転数が予め設定した所定の第5回転数Ne5以下になるまで実行される。この第5回転数Ne5は、トルク抜き制御を開始する回転数である。エンジン11の回転数が第5回転数Ne5以下になるとトルク抜き制御が開始される。このトルク抜き制御では、第1MG12のトルクをゼロに低下させる。トルク抜き制御は、エンジン11の回転数が第6回転数Ne6以下になるまで実行される。この第6回転数Ne6は、逆回転防止制御を開始する回転数である。なお、第4回転数Ne4、第5回転数Ne5、及び第6回転数Ne6の大小関係は、Ne6<Ne5<Ne4<アイドル回転数である。
エンジン11の回転数が第6回転数Ne6以下になると逆回転防止制御が実行される。この逆回転防止制御では、クランク軸11bがエンジン11の運転時に回転する正転方向とは逆の逆転方向に回転せず、かつクランク軸11bが目標クランク角に停止するように第1MG12からトルクを出力する。この逆回転防止制御は、エンジン11が停止するまで実行される。エンジン11が停止した場合には第1MG12も停止させる。
図3及び図4は、車両制御装置30がこのようにスロットル開度及び第1MG11を制御するために実行する機関停止制御ルーチンを示している。なお、図4は図3に続く制御ルーチンである。この制御ルーチンはエンジン11の運転中に所定の周期で繰り返し実行される。また、この制御ルーチンは車両制御装置30が実行する他の制御ルーチンと並行に実行される。この制御ルーチンを実行することにより、車両制御装置30が本発明の制御手段として機能する。
この制御ルーチンにおいて車両制御装置30は、まずステップS11で車両1の状態を取得する。車両1の状態としては、車速、クランク角、スロットル開度、及び冷却水温が取得される。また、この処理では、クランク角センサ32の出力信号に基づいてエンジン11の回転数も取得される。次のステップS12において車両制御装置30は、上述した停止条件が成立したか否か判定する。停止条件が不成立と判定した場合は今回の制御ルーチンを終了する。
一方、停止条件が成立したと判定した場合はステップS13に進み、車両制御装置30は燃焼停止制御を実行する。この燃焼停止制御では、インジェクタを制御して各気筒11aへの燃料供給を停止し、エンジン11の燃焼を停止させる。続くステップS14において車両制御装置30は、第2回転数Ne2を設定する。なお、図2に示したようにこの第2回転数Ne2は、スロットル開度の調整を開始する回転数である。第2回転数Ne2は、例えば停止条件が成立したときのエンジン11の回転数及び冷却水温に基づいて設定される。第2回転数Ne2は、停止条件が成立したときのエンジン11の回転数よりも低い回転数であり、かつ第1回転数Ne1より低い回転数が設定される。また、第2回転数Ne2には、冷却水温が低いほど低い回転数が設定される。なお、エンジン11が、一部の気筒11aを休止させ、残りの気筒11aのみで運転可能な可変気筒エンジンである場合には、停止条件が成立したときに稼働している気筒11aの数に応じて第2回転数Ne2を変更してもよい。例えば、第2回転数Ne2には、稼働気筒11aの数が多いほど低い回転数を設定すればよい。
次のステップS15において車両制御装置30は、エンジン11の回転数が第2回転数Ne2以下になったか否か判定する。エンジン11の回転数が第2回転数Ne2より高いと判定した場合はステップS15に戻り、車両制御装置30はエンジン11の回転数が第2回転数Ne2以下になるまでステップS15を繰り返し実行する。
一方、エンジン11の回転数が第2回転数Ne2以下になったと判定した場合はステップS16に進み、車両制御装置30はこの時点におけるクランク角CRKn2を取得する。続くステップS17において車両制御装置30は、上述した方法にてエンジン11の回転数が第1回転数Ne1から第2回転数Ne2に達するまでの単位時間当たりのエンジン11の回転数の低下量Xを算出する。次のステップS18において車両制御装置30は、上述した方法にて推定クランク角CRKを算出する。次のステップS19において車両制御装置30は、判定クランク角C及び推定クランク角CRKに基づいて上述した方法で調整スロットル開度を算出する。その後、ステップS20において車両制御装置30は、スロットル開度を算出した調整スロットル開度に調整する。
次のステップS21において車両制御装置30は、エンジン11の回転数が第3回転数Ne3以下になったか否か判定する。エンジン11の回転数が第3回転数Ne3より高いと判定した場合はステップS21に戻り、車両制御装置30はエンジン11の回転数が第3回転数Ne3以下になるまでステップS21を繰り返し実行する。
一方、エンジン11の回転数が第3回転数Ne3以下になったと判定した場合はステップS22に進み、車両制御装置30はスロットル開度の調整を終了する。この際、車両制御装置30は、スロットル開度を調整前の開度(供給停止時開度)に戻す。次の図4のステップS23において、車両制御装置30はこの時点のエンジン11の回転数に基づいて回転数引き下げトルクを設定する。この回転数引き下げトルクは、エンジン11の回転数を速やかに引き下げるために第1MG12から出力するトルクである。エンジン11の回転数が高いほどエンジン11の回転数を引き下げるために必要なトルクが大きくなる。そこで、回転数引き下げトルクには、エンジン11の回転数が大きいほど大きい値が設定される。なお、この関係は予め実験や数値計算等により求めて車両制御装置30のROMにマップとして記憶させておけばよい。
次のステップS24において車両制御装置30は、回転数引き下げ制御を実行する。この回転数引き下げ制御では、設定した回転数引き下げトルクを第1MG12から出力してエンジン11の回転数を引き下げる。次のステップS25において車両制御装置30は、エンジン11の回転数が第4回転数Ne4以下になったか否か判定する。エンジン11の回転数が第4回転数Ne4より高いと判定した場合はステップS24に戻り、車両制御装置30はエンジン11の回転数が第4回転数Ne4以下になるまでステップS24及びS25を繰り返し実行する。
一方、エンジン11の回転数が第4回転数Ne4以下になったと判定した場合はステップS26に進み、車両制御装置30はエンジン11の回転数が第4回転数Ne4以下になったと判定したときのクランク角(以下、位置合わせ制御開始時クランク角と称することがある。)に基づいて位置合わせトルクを設定する。この位置合わせトルクは、エンジン11が第4回転数Ne4以下になった時にクランク軸11bが上述した目標クランク角になるように第1MG12から出力するトルクである。エンジン11の回転数が第4回転数Ne4から第5回転数Ne5になるまで、第1MG12から回転数引き下げトルクを継続して出力したと仮定する。この場合にエンジン11の停止時のクランク角が目標クランク角になる位置合わせ制御開始時クランク角は、目標クランク角及びエンジン11の仕様に応じて求まる。以下、このような位置合わせ制御開始時クランク角を第1基準クランク角と称することがある。そして、エンジン11の停止時のクランク角を目標クランク角にするためには、位置合わせ制御開始時クランク角と第1基準クランク角との差が大きいほど第1MG12から出力するトルクを大きくする必要がある。そこで、位置合わせトルクには、位置合わせ制御開始時クランク角と第1基準クランク角との差が大きいほど大きい値を設定する。この位置合わせ制御開始時クランク角と第1基準クランク角との差と位置合わせトルクとの関係は、予め実験や数値計算等により求めて車両制御装置30のROMにマップとして記憶させておけばよい。そして、このマップと位置合わせ制御開始時クランク角とに基づいて位置合わせトルクを設定すればよい。
次のステップS27において車両制御装置30は、位置合わせ制御を実行する。この位置合わせ制御では、回転数引き下げトルクと位置合わせトルクとを合計したトルクが第1MG12から出力される。続くステップS28において車両制御装置30は、エンジン11の回転数が第5回転数Ne5以下になったか否か判定する。エンジン11の回転数が第5回転数Ne5より高いと判定した場合はステップS27に戻り、車両制御装置30はエンジン11の回転数が第5回転数Ne5以下になるまでステップS27及びS28を繰り返し実行する。
一方、エンジン11の回転数が第5回転数Ne5以下になったと判定した場合はステップS29に進み、車両制御装置30は、トルク抜き制御を実行する。このトルク抜き制御では、第1MG12のトルクが予め設定した所定のトルク抜きレートで低下するように第1MG12が制御される。続くステップS30において車両制御装置30は、エンジン11の回転数が第6回転数Ne6以下になったか否か判定する。エンジン11の回転数が第6回転数Ne6より高いと判定した場合はステップS29に戻り、車両制御装置30はエンジン11の回転数が第6回転数Ne6以下になるまでステップS29及びS30を繰り返し実行する。
一方、エンジン11の回転数が第6回転数Ne6以下になったと判定した場合はステップS31に進み、車両制御装置30は第1MG12のトルクがゼロになったときのクランク角(以下、逆回転防止制御開始時クランク角と称することがある。)に基づいて逆回転防止トルクを設定する。この逆回転防止トルクは、クランク軸11bが逆転方向に回転することを防止しつつクランク軸11bを目標クランク角に停止させるために第1MG12から出力するトルクである。エンジン11の回転数が第6回転数Ne6からゼロになるまで、第1MG12の出力トルクをゼロにしたと仮定する。この場合にエンジン11の停止時のクランク角が目標クランク角になる逆回転防止制御開始時クランク角は、目標クランク角及びエンジン11の仕様に応じて求まる。以下、このような逆回転防止制御開始時クランク角を第2基準クランク角と称することがある。そして、エンジン11の停止時のクランク角を目標クランク角にするためには、逆回転防止制御開始時クランク角と第2基準クランク角との差が大きいほど第1MG12から出力するトルクを大きくする必要がある。そこで、逆回転防止トルクには、逆回転防止制御開始時クランク角と第2基準クランク角との差が大きいほど大きい値を設定する。この逆回転防止制御開始時クランク角と第2基準クランク角との差と逆回転防止トルクとの関係は、予め実験や数値計算等により求めて車両制御装置30のROMにマップとして記憶させておけばよい。そして、このマップと逆回転防止制御開始時クランク角とに基づいて逆回転防止トルクを設定すればよい。
次のステップS32において車両制御装置30は、逆回転防止制御を実行する。この逆回転防止制御では、設定した逆回転防止トルクが第1MG12から出力される。続くステップS33において車両制御装置30は、エンジン11が停止したか否か、すなわちエンジン11の回転数がゼロになったか否か判定する。エンジン11が停止していないと判定した場合はステップS32に戻り、車両制御装置30はエンジン11が停止するまでステップS32及びS33を繰り返し実行する。
一方、エンジン11が停止したと判定した場合はステップS34に進み、車両制御装置30は第1MG停止制御を実行する。この第1MG停止制御では、第1MG12の出力トルクをゼロにして第1MG12を停止させる。その後、今回の制御ルーチンを終了する。
以上に説明したように、この形態によれば、エンジン11を停止させる際に、まずエンジン11の回転数が第3回転数Ne3に達したときにクランク角が判定クランク角Cになるようにスロットル開度を調整する。そのため、精度良く所定回転数、所定クランク角から第1MG12のトルクを出力することができる。したがって、冷間時など第1MG12から出力可能なトルクが制限される場合であっても、目標クランク角でエンジン11を停止させることができる。また、このようにエンジン11を停止させることにより、エンジン11を停止させる際に第1MG12から出力するトルクを低減できるので、エネルギ効率を向上できる。そして、このように目標クランク角でエンジン11を停止させることにより、次回のエンジン11の始動時の振動を低減できる。
上述した形態では、第1MG12が本発明の回転電機に相当する。図3及び図4の制御ルーチンを実行することにより、車両制御装置30が本発明の停止制御手段として機能する。回転数引き下げ制御、位置合わせ制御、トルク抜き制御、及び逆回転防止制御が本発明のトルク制御に相当する。
なお、上述した停止制御は、冷間時など第1MG12の出力トルクが制限される場合に用い、第1MG12の出力トルクが制限されない場合には他の停止制御でエンジン11を停止させてもよい。図5〜図7を参照してこのように停止制御を切り替える方法について説明する。なお、図7は図6に続く制御ルーチンである。図5〜図7において上述した図3、4と共通の処理には同一の符号を付して説明を省略する。
図5は、第1MG12の出力トルクが制限されているか否かに応じて停止制御を切り替えるために車両制御装置30が実行する停止制御切替ルーチンを示している。このルーチンは、エンジン11の運転中に所定の周期で繰り返し実行される。また、このルーチンは車両制御装置30が実行する他の制御ルーチンと並行に実行される。
このルーチンにおいて車両制御装置30は、まずステップS11で車両1の状態を取得する。次のステップS12において車両制御装置30は、停止条件が成立したか否か判定する。停止条件が不成立と判定した場合は今回のルーチンを終了する。
一方、停止条件が成立したと判定した場合はステップS41に進み、車両制御装置30は第1MG12の出力トルクが制限されているか否か判定する。上述したように第1MG12の出力トルクは、冷間時などに制限される。そのため、この判定は、例えばエンジン11の冷却水温などに基づいて行えばよい。第1MG12の出力トルクが制限されると判定した場合はステップS42に進み、車両制御装置30は制限時停止制御を実行する。この処理では、図3及び図4に示した停止制御が実行される。なお、この場合には図3のステップS12の処理を省略してもよい。その後、今回のルーチンを終了する。
一方、第1MG12の出力トルクが制限されていないと判定した場合はステップS43に進み、車両制御装置30は通常時停止制御を実行する。この処理では、図6及び図7に示した通常時停止制御が実行される。その後、今回のルーチンを終了する。
図6及び図7に示した通常時停止制御ルーチンは、車両制御装置30が実行する他の制御ルーチンと並行に実行される。この通常時停止制御ルーチンでは、ステップS11〜S13まで図3の停止制御ルーチンと同様に処理を進める。次のステップS51において車両制御装置30は、燃料供給を停止したときのエンジン11の回転数に基づいて回転数引き下げトルクを設定する。上述したようにエンジン11の回転数が高いほどエンジン11の回転数を引き下げるために必要なトルクが大きくなる。そのため、回転数引き下げトルクには、エンジン11の燃焼を停止させたときのエンジン11の回転数が大きいほど大きい値が設定される。その後、車両制御装置30は、ステップS24〜S28まで図3及び図4に示した制御ルーチンと同様に処理を進める。
ステップS28においてエンジン11の回転数が第5回転数Ne5以下になったと判定した場合は図7のステップS52に進み、車両制御装置30は、エンジン11の回転数が第5回転数Ne5以下になったと判定されたときの第1MG12のトルク、すなわち位置合わせ制御の終了時の第1MG12のトルク(以下、制御最終値と称することがある。)に基づいてトルク抜きレートを設定する。このトルク抜きレートは、トルク抜き制御において第1MG12のトルクを制御最終値からゼロにする際の単位時間当たりのトルクの変化量である。トルク抜きレートには、制御最終値の絶対値が大きいほど大きい値が設定される。なお、この関係は、制御最終値が異なっていてもトルク抜き制御で第1MG12のトルクをゼロにしたときのエンジン11の回転数が同じ回転数になるように設定される。この関係は予め実験や数値計算等により求めて車両制御装置30のROMにマップとして記憶させておけばよい。そして、このマップと制御最終値とに基づいてトルク抜きレートを設定すればよい。
次のステップS53において車両制御装置30は、トルク抜き制御を実行する。このトルク抜き制御では、第1MG12のトルクが設定したトルク抜きレートで低下するように第1MG12が制御される。その後、ステップS30に進み、以降は図3及び図4に示した制御ルーチンと同様に処理を進める。その後、今回の制御ルーチンを終了する。
このように第1MG12の出力トルクが制限されない場合には、第1MG12のトルクのみで停止時のエンジン11のクランク角を目標クランク角にすることにより、制御を簡略化できる。そのため、車両制御装置30に掛かる負荷を軽減できる。一方、第1MG12の出力トルクが制限されている場合には、図3及び図4に示した停止制御方法でエンジン11を停止させる。そのため、冷間時など第1MG12から出力可能なトルクが制限される場合であっても、目標クランク角でエンジン11を停止させることができる。
本発明は、上述した形態に限定されることなく、種々の形態にて実施することができる。例えば、本発明が適用される内燃機関は3気筒の内燃機関に限定されない。2気筒の内燃機関、又は4つ以上の気筒を有する内燃機関に本発明を適用してよい。また、内燃機関のクランク軸には、回転電機として電動機が動力伝達可能に接続されてもよい。この際、電動機はクランク軸と直接接続されていてもよい。