図1は、本発明の一実施例としてのハイブリッド自動車20の構成の概略を示す構成図である。実施例のハイブリッド自動車20は、図示するように、ガソリンや軽油などを燃料として動力を出力するエンジン22と、エンジン22を駆動制御するエンジン用電子制御ユニット(以下、エンジンECUという)24と、エンジン22のクランクシャフト26にキャリアが接続されると共に駆動輪38a,38bにデファレンシャルギヤ37を介して連結された駆動軸36にリングギヤが接続されたシングルピニオン式のプラネタリギヤ30と、例えば同期発電電動機として構成されて回転子がプラネタリギヤ30のサンギヤに接続されたモータMG1と、例えば同期発電電動機として構成されて回転子が機械的機構としての減速ギヤ35を介して駆動軸36に接続されたモータMG2と、モータMG1,MG2を駆動するためのインバータ41,42と、インバータ41,42の図示しないスイッチング素子をスイッチング制御することによってモータMG1,MG2を駆動制御するモータ用電子制御ユニット(以下、モータECUという)40と、例えばリチウムイオン二次電池として構成されてインバータ41,42を介してモータMG1,MG2と電力をやりとりするバッテリ50と、バッテリ50を管理するバッテリ用電子制御ユニット(以下、バッテリECUという)52と、駆動輪38a,38bや従動輪39a、39bのブレーキを制御するためのブレーキアクチュエータ92と、ブレーキアクチュエータ92を駆動制御するブレーキ用電子制御ユニット(以下、ブレーキECUという)94と、車両全体を制御するハイブリッド用電子制御ユニット(以下、HVECUという)70と、を備える。
エンジンECU24は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。エンジンECU24には、エンジン22の運転状態を検出する各種センサから信号、例えば、クランクシャフト26の回転位置を検出するクランクポジションセンサからのクランクポジションθcrやエンジン22の冷却水の温度を検出する水温センサからの冷却水温Tw,燃焼室内に取り付けられた圧力センサからの筒内圧力Pin,燃焼室へ吸排気を行なう吸気バルブや排気バルブを開閉するカムシャフトの回転位置を検出するカムポジションセンサからのカムポジションθca,スロットルバルブのポジションを検出するスロットルバルブポジションセンサからのスロットルポジションTP,吸気管に取り付けられたエアフローメータからの吸入空気量Qa,同じく吸気管に取り付けられた温度センサからの吸気温Ta,排気系に取り付けられた空燃比センサからの空燃比AF,同じく排気系に取り付けられた酸素センサからの酸素信号O2などが入力ポートを介して入力されており、エンジンECU24からは、エンジン22を駆動するための種々の制御信号、例えば、燃料噴射弁への駆動信号やスロットルバルブのポジションを調節するスロットルモータへの駆動信号,イグナイタと一体化されたイグニッションコイルへの制御信号,吸気バルブの開閉タイミングの変更可能な可変バルブタイミング機構への制御信号などが出力ポートを介して出力されている。また、エンジンECU24は、HVECU70と通信しており、HVECU70からの制御信号によりエンジン22を運転制御すると共に必要に応じてエンジン22の運転状態に関するデータをHVECU70に出力する。なお、エンジンECU24は、クランクシャフト26に取り付けられた図示しないクランクポジションセンサからの信号に基づいてクランクシャフト26の回転数、即ちエンジン22の回転数Neも演算している。
モータECU40は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。モータECU40には、モータMG1,MG2を駆動制御するために必要な信号、例えばモータMG1,MG2の回転子の回転位置を検出する回転位置検出センサ43,44からの回転位置θm1,θm2や図示しない電流センサにより検出されるモータMG1,MG2に印加される相電流などが入力ポートを介して入力されており、モータECU40からは、インバータ41,42の図示しないスイッチング素子へのスイッチング制御信号などが出力ポートを介して出力されている。また、モータECU40は、HVECU70と通信しており、HVECU70からの制御信号によってモータMG1,MG2を駆動制御すると共に必要に応じてモータMG1,MG2の運転状態に関するデータをHVECU70に出力する。なお、モータECU40は、回転位置検出センサ43,44からのモータMG1,MG2の回転子の回転位置θm1,θm2に基づいてモータMG1,MG2の回転角速度ωm1,ωm2や回転数Nm1,Nm2を演算したり、モータMG2の回転角速度ωm2に基づいて駆動軸36に換算した駆動輪38a,38bの回転角速度としての駆動輪回転角速度ωbを演算したりしている。なお、駆動輪回転角速度ωbは、モータMG2から駆動輪38a,38bの間の特性に限定することにより得られる2慣性系の制御系設計モデルに対して制御サンプル時間で0次ホールドを用いて離散化したモデルを用いて演算するものとしたり、駆動輪38a,38bに取り付けられた車輪速センサからの車輪速Vfl,Vfrに基づいて演算するものとしたりすることができる。
バッテリECU52は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。バッテリECU52には、バッテリ50を管理するのに必要な信号、例えば、バッテリ50の端子間に設置された電圧センサ51aからの端子間電圧Vbやバッテリ50の出力端子に接続された電力ラインに取り付けられた電流センサ51bからの充放電電流Ib,バッテリ50に取り付けられた温度センサ51cからの電池温度Tbなどが入力されており、必要に応じてバッテリ50の状態に関するデータを通信によりHVECU70に送信する。また、バッテリECU52は、バッテリ50を管理するために、電流センサ51bにより検出された充放電電流Ibの積算値に基づいてそのときのバッテリ50から放電可能な電力の容量の全容量に対する割合である蓄電割合SOCを演算したり、演算した蓄電割合SOCと電池温度Tbとに基づいてバッテリ50を充放電してもよい許容入出力電力である入出力制限Win,Woutを演算したりしている。なお、バッテリ50の入出力制限Win,Woutは、電池温度Tbに基づいて入出力制限Win,Woutの基本値を設定し、バッテリ50の蓄電割合SOCに基づいて出力制限用補正係数と入力制限用補正係数とを設定し、設定した入出力制限Win,Woutの基本値に補正係数を乗じることにより設定することができる。
ブレーキアクチュエータ92は、ブレーキペダル85の踏み込みに応じて生じるブレーキマスターシリンダ90の圧力(ブレーキ圧)と車速Vとに基づいて、車両に作用させる制動力におけるブレーキの分担分に応じた制動力が駆動輪38a,38bや従動輪39a,39bに作用するようブレーキホイールシリンダ96a〜96dの油圧を調整したり、ブレーキペダル85の踏み込みとは無関係に、駆動輪38a,38bや従動輪39a,39bに制動力が作用するようブレーキホイールシリンダ96a〜96dの油圧を調整したりすることができるように構成されている。以下、ブレーキアクチュエータ92の作動により駆動輪38a,38bや従動輪39a,39bに作用させる制動力を油圧ブレーキと称する。
ブレーキECU94は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。ブレーキECU94には、ブレーキアクチュエータ92を駆動制御するために必要な信号、例えば、駆動輪38a,38bや従動輪39a、39bに取り付けられた車輪速センサからの車輪速Vfl,Vfr,Vrl,Vrrや、操舵角センサからの操舵角などが入力されている。ブレーキECU94は、運転者がブレーキペダル85を踏み込んだときに駆動輪38a,38bや従動輪39a、39bのいずれかがロックによってスリップするのを防止するアンチロックブレーキシステム(ABS)制御や運転者がアクセルペダル83を踏み込んだときに駆動輪38a,38bや従動輪39a,39bのいずれかが空転によってスリップするのを防止するトラクションコントロール(TRC),車両が旋回走行しているときに姿勢を保持する姿勢保持制御(VSC)なども行なう。ブレーキECU94は、HVECU70と通信しており、HVECU70からの制御信号によってブレーキアクチュエータ92を駆動制御すると共に必要に応じてブレーキアクチュエータ92の状態に関するデータをHVECU70に出力する。
HVECU70は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。HVECU70には、イグニッションスイッチ80からのイグニッション信号やシフトレバー81の操作位置を検出するシフトポジションセンサ82からのシフトポジションSP,アクセルペダル83の踏み込み量を検出するアクセルペダルポジションセンサ84からのアクセル開度Acc,ブレーキペダル85の踏み込み量を検出するブレーキペダルポジションセンサ86からのブレーキペダルポジションBP,車速センサ88からの車速Vなどが入力ポートを介して入力されている。HVECU70は、前述したように、エンジンECU24やモータECU40,バッテリECU52,ブレーキECU94と通信ポートを介して接続されており、エンジンECU24やモータECU40,バッテリECU52,ブレーキECU94と各種制御信号やデータのやりとりを行なっている。
こうして構成された実施例のハイブリッド自動車20では、運転者によるアクセルペダルの踏み込み量に対応するアクセル開度Accと車速Vとに基づいて駆動軸36に出力すべき要求トルクTr*を計算し、この要求トルクTr*に対応する要求動力が駆動軸36に出力されるように、エンジン22とモータMG1とモータMG2とが運転制御される。エンジン22とモータMG1とモータMG2との運転制御としては、要求動力に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にエンジン22から出力される動力のすべてがプラネタリギヤ30とモータMG1とモータMG2とによってトルク変換されて駆動軸36に出力されるようモータMG1およびモータMG2を駆動制御するトルク変換運転モードや、要求動力とバッテリ50の充放電に必要な電力との和に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にバッテリ50の充放電を伴ってエンジン22から出力される動力の全部またはその一部がプラネタリギヤ30とモータMG1とモータMG2とによるトルク変換を伴って要求動力が駆動軸36に出力されるようモータMG1およびモータMG2を駆動制御する充放電運転モード,エンジン22の運転を停止してモータMG2からの要求動力に見合う動力を駆動軸36に出力するよう運転制御するモータ運転モードなどがある。なお、トルク変換運転モードと充放電運転モードとは、いずれもエンジン22の運転を伴って要求動力が駆動軸36に出力されるようエンジン22とモータMG1とモータMG2とを制御するモードであり、実質的な制御における差異はないため、以下、両者を合わせてエンジン運転モードという。
次に、こうして構成された実施例のハイブリッド自動車20の動作、特に、走行中にブレーキペダル85が踏み込まれてエンジン22を運転しながら減速するときの動作について説明する。図2は、実施例のHVECU70により実行される運転減速時制御ルーチンの一例を示すフローチャートである。このルーチンは、エンジン22を運転しながら減速するときに所定時間毎(例えば、数msec毎)に繰り返し実行される。なお、エンジン22を運転しながら減速するときには、実施例では、図2の運転減速時制御ルーチンの実行と並行して、エンジン22がアイドル回転数Nidl(例えば、1000rpmや1200rpmなど)でアイドル運転(自立運転)されると共にモータMG1からトルクが出力されないようエンジンECU24によるエンジン22の制御とモータECU40によるモータMG1の制御とを実行するものとした。このエンジン22とモータMG1との制御については、本発明の中核をなさないから、これ以上の詳細な説明は省略する。
運転減速時制御ルーチンが実行されると、HVECU70は、まず、ブレーキペダルポジションセンサ86からのブレーキペダルポジションBPや車速センサ88からの車速V,モータMG2の回転数Nm2,バッテリ50の入力制限Winなどのデータを入力する(ステップS100)。ここで、モータMG2の回転数Nm2は、回転位置検出センサ44により検出されたモータMG2の回転子の回転位置θm2に基づいて演算されたものをモータECU40から通信により入力するものとした。また、バッテリ50の入力制限Winは、バッテリ50の電池温度Tbとバッテリ50の蓄電割合SOCとに基づいて設定されたものをバッテリECU52から通信により入力するものとした。
こうしてデータを入力すると、入力したブレーキペダルポジションBPと車速Vとに基づいて車両に要求される(駆動軸36に出力すべき)要求制動トルクTr*を設定する(ステップS110)。ここで、要求制動トルクTr*は、実施例では、ブレーキペダルポジションBPと車速Vと要求制動トルクTr*との関係を予め定めて要求制動トルク設定用マップとして図示しないROMに記憶しておき、ブレーキペダルポジションBPと車速Vとが与えられると記憶したマップから対応する要求制動トルクTr*を導出して設定するものとした。要求制動トルク設定用マップの一例を図3に示す。なお、実施例では、制動トルクは、負のトルクとして用いるものとした。したがって、モータMG2から出力される制動トルクや油圧ブレーキによる制動力は、数式では、負の値として用いることになる。
続いて、バッテリ50の入力制限WinをモータMG2の回転数Nm2で除してモータMG2から出力してもよいトルクの下限としてのトルク制限Tm2minを計算する(ステップS120)。そして、車速Vを閾値Vrefと比較する(ステップS130)。ここで、閾値Vrefは、エンジン22を運転しながら減速するときにモータMG2からの制動トルクを油圧ブレーキによる制動力にすり替えるすり替え処理を実行する上限車速として定められ、例えば、9km/hや10km/hなどを用いることができる。
車速Vが閾値Vrefより高いときには、すり替え処理を実行しないと判断し、要求制動トルクTr*を減速ギヤ35のギヤ比Grで除してモータMG2から出力すべきトルクの仮の値としての仮トルクTm2tmpを計算し(ステップS140)、次式(1)に示すように、計算した仮トルクTm2tmpを負の所定トルクTref1とトルク制限Tm2minとで制限してモータMG2から出力すべきトルクとしてのトルク指令Tm2*を設定する(ステップS160)。ここで、所定トルクTref1は、減速ギヤ35などで歯打ちによる異音が生じ得る異音範囲の下限より若干小さな(絶対値としては大きな)値として定められ、例えば、−4Nmや−5Nmなどを用いることができる。モータMG2からのトルクが値0近傍で推移すると、エンジン22の運転によるトルク脈動が駆動軸36に伝達されることなどによって減速ギヤ35などで歯打ちによる異音を生じる場合がある。モータMG2のトルク指令Tm2*を設定する際に所定トルクTref1を上限ガード(絶対値としては下限ガード)として用いるのは、減速ギヤ35などでこうした異音が生じるのを抑制するためである。
Tm2*=max(min(Tm2tmp,Tref1),Tm2min) (1)
こうしてモータMG2のトルク指令Tm2*を設定すると、次式(2)に示すように、モータMG2のトルク指令Tm2*に減速ギヤ35のギヤ比Grを乗じたものを要求制動トルクTr*から減じた値を、駆動軸36に換算したときの油圧ブレーキに要求されるブレーキトルク指令Tb*に設定し(ステップS170)、モータMG2のトルク指令Tm2*についてはモータECU40に、ブレーキトルク指令Tb*についてはブレーキECU94に送信して(ステップS180)、本ルーチンを終了する。トルク指令Tm2*を受信したモータECU40は、図4に例示する運転減速時モータ制御ルーチンにより、モータMG2からトルク指令Tm2*に基づく実行用トルクT2*に相当するトルクが出力されるようインバータ42のスイッチング素子をスイッチング制御する。また、ブレーキトルク指令Tb*を受信したブレーキECU94は、ブレーキホイールシリンダ96a〜96dによる制動力が駆動軸36に換算したときにブレーキトルク指令Tb*に相当するトルクとなるようブレーキアクチュエータ92を駆動制御する。図4の運転減速時モータ制御ルーチンについては後述する。
Tb*=Tr*-Tm2*・Gr (2)
ステップS130で車速Vが閾値Vref以下のときには、すり替え処理を実行すると判断し、次式(3)に示すように、前回に本ルーチンを実行したときに設定した仮トルク(前回Tm2tmp)に所定値αを加えた値を値0で制限してモータMG2の仮トルクTm2tmpを設定し(ステップS150)、上述の式(1)によりモータMG2のトルク指令Tm2*を設定し(ステップS160)、上述の式(2)によりブレーキトルク指令Tb*に設定し(ステップS170)、モータMG2のトルク指令Tm2*についてはモータECU40に、ブレーキトルク指令Tb*についてはブレーキECU94に送信して(ステップS180)、本ルーチンを終了する。ここで、所定値αは、モータMG2の仮トルクTm2tmpを本ルーチンの実行間隔で大きく(絶対値としては小さく)する程度を示すものであり、これに応じて油圧ブレーキによる制動力を変化させることを考慮して、油圧ブレーキを制御することができる程度の値として定められる。ステップS150,S160の処理は、モータMG2のトルク指令Tm2*を、所定トルクTref1に向けて徐々に大きく(絶対値としては小さく)して所定トルクTref1で保持する処理となる。したがって、車速Vが閾値Vref以下のときには、トルク指令Tm2*が所定トルクTref1に向けて徐々に大きく(絶対値としては小さく)なって所定トルクTref1で保持されると共に要求制動トルクTr*に対するトルク指令Tm2*の不足分が油圧ブレーキによって賄われるよう、即ち、モータMG2からの制動トルクが油圧ブレーキによる制動力に徐々にすり替えられるよう、モータMG2のトルク指令Tm2*と油圧ブレーキのブレーキトルク指令Tb*とを設定することになる。
Tm2tmp=min(前回Tm2tmp+α,0) (3)
以上、図2の運転減速時制御ルーチンについて説明した。次に、図4の運転減速時モータ制御ルーチンについて説明する。このルーチンは、エンジン22を運転しながら減速するときに所定時間毎(例えば、数msec毎)に繰り返し実行される。
運転減速時モータ制御ルーチンが実行されると、モータECU40は、まず、車速VやモータMG2のトルク指令Tm2*,モータMG2の回転角速度ωm2,駆動軸36に換算した駆動輪38a,38bの回転角速度としての駆動輪回転角速度ωbなど制御に必要なデータを入力する(ステップS200)。ここで、車速Vは、車速センサ88により検出されたものをHVECU70から通信により入力するものとした。また、モータMG2のトルク指令Tm2*は、図2の運転減速時制御ルーチンにより設定されたものをHVECU70から通信により入力するものとした。さらに、モータMG2の回転角速度ωm2や駆動輪回転角速度ωbは、回転位置検出センサ44により検出されたモータMG2の回転子の回転位置θm2に基づいて演算されたものを入力するものとした。
こうしてデータを入力すると、モータMG2のトルク指令Tm2*を負の閾値Tref2と比較する(ステップS210)。ここで、閾値Tref2は、モータMG2による制振制御(車両の振動を抑制するための制御)を実行する上限トルクとして定められ、上述の所定トルクTref1より小さな(絶対値としては大きな)値、例えば、−9Nmや−10Nmなどを用いることができる。
モータMG2のトルク指令Tm2*が閾値Tref2以下のときには、モータMG2による制振制御を実行すると判断し、次式(4)に示すように、駆動輪回転各速度ωbとモータMG2の回転角速度ωm2を減速ギヤ35のギヤ比Grで除したものとの差分に制御ゲインkvを乗じて、モータMG2によって車両の振動を抑制するための制振トルクTvの仮の値としての仮制振トルクTvtmpを計算し(ステップS220)、式(5)に示すように、仮制振トルクTvtmpを制限トルクTlim,−Tlimで制限して制振トルクTvを設定し(ステップS230)、設定した制振トルクTvをモータMG2のトルク指令Tm2*に加えてモータMG2の実行用トルクT2*を計算し(ステップS240)、計算した実行用トルクT2*に相当するトルクがモータMG2から出力されるようインバータ42のスイッチング素子をスイッチング制御して(ステップS260)、本ルーチンを終了する。ここで、制限トルクTlim,−Tlimは、車両の振動を抑制することができる程度で且つモータMG2から出力する実行トルクT2*がバッテリ50の入力制限Winを超えない程度に制振トルクTvの大きさ(正側および負側の大きさ)を制限するために用いられるものであり、予め実験や解析などによって定めることができる。こうしたインバータ42の制御により、車両に生じる振動を抑制することができる。
Tvtmp=kv・(ωb-ωm2) (4)
Tv=max(min(Tvtmp,Tlim),-Tlim) (5)
一方、モータMG2のトルク指令Tm2*が閾値Tref2より大きい(絶対値としては小さい)ときには、モータMG2による制振制御を実行しないと判断し、モータMG2のトルク指令Tm2*を実行用トルクT2*に設定し(ステップS250)、設定した実行用トルクT2*に相当するトルクがモータMG2から出力されるようインバータ42のスイッチング素子をスイッチング制御して(ステップS260)、本ルーチンを終了する。
ここで、モータMG2のトルク指令Tm2*が閾値Tref2より大きい(絶対値としては小さい)ときにモータMG2による制振制御を実行しない理由について説明する。いま、バッテリ50の入力制限Winが十分に小さい(モータMG2からの制動トルクだけで要求制動トルクTr*に対応することができる)状態での走行中(車速Vが閾値Vref2より高いとき)にブレーキペダル85がある程度大きく踏み込まれて減速するときを考える。図5は、このときの車速V,モータMG2のトルク指令Tm2*,制振制御のオンオフ,実行用トルクT2*,ブレーキトルク指令Tb*の時間変化の様子の一例を示す説明図である。図示するように、車速Vが閾値Vref以下に至る時刻t1までは、モータMG2からの制動トルクだけで要求制動トルクTr*に対応し、時刻t1にすり替え処理を開始して、モータMG2トルク指令Tm2*を所定トルクTref1に向かって徐々に大きく(絶対値としては小さく)すると共に油圧ブレーキのブレーキトルク指令Tb*を徐々に小さく(絶対値としては大きく)する。こうしたすり替え処理の実行中に車両が振動するのを抑制するためには、モータMG2による制振制御を実行するのが好ましい。しかしながら、モータMG2のトルク指令Tm2*が所定トルクTref1やそれより若干小さい(絶対値としては若干大きい)ときにモータMG2による制振制御を実行する(トルク指令Tm2*と制振トルクTvとの和を実行用トルクT2*に設定してモータMG2を制御する)と、モータMG2からのトルクが所定トルクTref1より大きく(絶対値としては小さく)なって減速ギヤ35などで歯打ちによる異音を生じる場合がある。これを踏まえて、実施例では、モータMG2のトルク指令Tm2*が所定トルクTref1より小さな(絶対値としては大きな)閾値Tref2より大きくなる時刻t2まではモータMG2による制振制御を実行し、時刻t2後はモータMG2による制振制御を実行しない(トルク指令Tm2*を実行用トルクT2*に設定してモータMG2を制御する)ものとした。これにより、減速ギヤ35などで歯打ちによる異音が生じるのを抑制することができる。そして、閾値Tref2は、制振トルクTvの設定処理(ステップS220,S230)を踏まえると、所定トルクTref1より制限トルクTlimだけ小さな値(Tref1−Tlim)やそれより若干小さな値などを用いればよい。なお、エンジン22を運転しながら減速するときについての実験や解析などにより、すり替え処理を開始して(油圧ブレーキによる制動力をすり替えのために増加させ始めて)からモータMG2のトルク指令Tm2*がある程度大きく(油圧ブレーキによる制動力がある程度小さく)なるまでは、車両にある程度大きな振動が生じやすいが、すり替え処理を開始するまでやモータMG2のトルク指令Tm2*が十分に大きく(絶対値としては小さく)なっているときには、車両に大きな振動が生じる(運転者に違和感を与える)可能性が低いことが分かった。したがって、モータMG2のトルク指令Tm2*が所定トルクTref1以下で閾値Tref2より大きいときに、モータMG2による制振制御を実行しないことによる不都合はそれほど生じないと考えられる。
以上説明した実施例のハイブリッド自動車20によれば、エンジン22を運転しながら減速するときに、モータMG2の制御に用いるトルク指令Tm2*を所定トルクTref1に向けて徐々に大きく(絶対値としては小さく)すると共に油圧ブレーキの制御に用いるブレーキトルク指令Tb*を徐々に小さく(絶対値としては大きく)するものにおいて、モータMG2のトルク指令Tm2*が所定トルクTref1より小さな閾値Tref2以下のときにはモータMG2による制振制御を実行し(トルク指令Tm2*と制振トルクTvとの和を実行用トルクT2*に設定してモータMG2を制御し)、モータMG2のトルク指令Tm2*が閾値Tref2より大きいときには、モータMG2による制振制御を実行しない(トルク指令Tm2*を実行用トルクT2*に設定してモータMG2を制御する)から、減速ギヤ35などで歯打ちによる異音が生じるのを抑制することができる。
実施例のハイブリッド自動車20では、エンジン22を運転しながら減速するときには、車速Vに拘わらず、モータMG2のトルク指令Tm2*が所定トルクTref1より小さな閾値Tref2以下のときにはモータMG2による制振制御を実行し、モータMG2のトルク指令Tm2*が閾値Tref2より大きいときには、モータMG2による制振制御を実行しないものとしたが、モータMG2のトルク指令Tm2*が閾値Tref2以下のときでも、車速Vが閾値Vref以上の閾値Vref2以上のときには、モータMG2による制振制御を実行しないものとしてもよい。これにより、モータMG2からのトルクの脈動(バッテリ50に入力される電力の脈動)を抑制することができる。なお、上述したように、エンジン22を運転しながら減速するときについての実験や解析などにより、すり替え処理を開始するまでは、車両に大きな振動が生じる(運転者に違和感を与える)可能性が低いことが分かったことから、車速Vが閾値Vref2以上のときにモータMG2による制振制御を実行しないことによる不都合はそれほど生じないと考えられる。
実施例のハイブリッド自動車20では、ブレーキペダル85が踏み込まれて減速して車速Vが閾値Vref以下に至ったときに、すり替え処理を開始するものとしたが、ブレーキペダル85が踏み込まれてから所定時間が経過したときや、バッテリ50の充電の継続に従ってバッテリ50を保護するために入力制限Winを大きく(絶対値として小さく)するものにおいて入力制限Winが閾値Winref以上に至ったときなどに、すり替え処理を開始するものとしてもよい。
実施例のハイブリッド自動車20では、仮制振トルクTvtmpを制限トルクTlim,−Tlimで制限して制振トルクTvを設定すると共に設定した制振トルクTvをトルク指令Tm2*に加えて実行用トルクT2*を設定してモータMG2を制御するものとしたが、仮制振トルクTvtmpをそのまま制振トルクTvに設定すると共に設定した制振トルクTvをトルク指令Tm2*に加えて実行用トルクT2*を設定してモータMG2を制御するものとしてもよい。
実施例のハイブリッド自動車20では、閾値Tref2は、所定トルクTref1より制限トルクTlimだけ小さな値(Tref1−Tlim)やそれより若干小さな値などを用いるものとしたが、値(Tref1−Tlim)より若干大きな値を用いるものとしてもよい。
実施例のハイブリッド自動車20では、運転減速時制御ルーチンを繰り返し実行しているときには、エンジン22をアイドル回転数Nidlでアイドル運転(自立運転)すると共にモータMG1からトルクを出力しないものとしたが、エンジン22をアイドル回転数Nidl以外の回転数、例えば、車速Vが高いほど大きくなる傾向の回転数で自立運転するものとしてもよい。また、運転減速時制御ルーチンの繰り返しの実行を開始するときに、バッテリ50の蓄電割合SOCがバッテリ50の強制充電を開始する閾値Sref(例えば、30%や35%など)以下のときには、バッテリ50の蓄電割合SOCが強制充電を終了する閾値Sref2(例えば、40%や45%など)以上に至るまで、エンジン22を負荷運転すると共にモータMG1によって発電を行なうものとしてもよい。
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、エンジン22が「エンジン」に相当し、モータMG1が「第1モータ」に相当し、プラネタリギヤ30が「プラネタリギヤ」に相当し、モータMG2が「第2モータ」に相当し、バッテリ50が「バッテリ」に相当し、ブレーキアクチュエータ92やブレーキホイールシリンダ96a〜96dが「制動力付与装置」に相当し、図2の運転減速時制御ルーチンを実行するHVECU70と、図4の運転減速時モータ制御ルーチンを実行するモータECU40と、HVECU70からのブレーキトルク指令Tb*に基づいてブレーキアクチュエータ92を制御するブレーキECU94と、が「運転減速時制御手段」に相当する。
ここで、「エンジン」としては、ガソリンや軽油などを燃料として動力を出力するエンジン22に限定されるものではなく、水素エンジンなど、如何なるタイプのエンジンであっても構わない。「第1モータ」としては、同期発電電動機として構成されたモータMG1に限定されるものではなく、誘導電動機など、如何なるタイプのモータであっても構わない。「プラネタリギヤ」としては、プラネタリギヤ30(シングルピニオン式のプラネタリギヤ)に限定されるものではなく、ダブルピニオン式のプラネタリギヤや、複数のプラネタリギヤの組み合わせによって構成されたものなど、車軸に連結された駆動軸とエンジンの出力軸と第1モータの回転軸とに3つの回転要素が接続されたものであれば如何なるタイプのプラネタリギヤであっても構わない。「第2モータ」としては、同期発電電動機として構成されたモータMG2に限定されるものではなく、誘導電動機など、駆動軸に機械的機構を介して回転軸が接続されたものであれば如何なるタイプのモータであっても構わない。「バッテリ」としては、リチウムイオン二次電池として構成されたバッテリ50に限定されるものではなく、ニッケル水素二次電池やニッケルカドミウム二次電池,鉛蓄電池など、第1モータおよび第2モータと電力をやりとりするものであれば如何なるタイプのバッテリであっても構わない。「制動力付与装置」としては、ブレーキアクチュエータ92やブレーキホイールシリンダ96a〜96dに限定されるものではなく、油圧駆動によって車両に制動力を付与可能なものであれば如何なるものとしても構わない。「運転減速時制御手段」としては、HVECU70とモータECU40とブレーキECU94との組み合わせによって構成されるものに限定されるものではなく、単一の電子制御ユニットによって構成されるものなどとしてもよい。また、「運転減速時制御手段」としては、エンジン22を運転しながら減速するときに、モータMG2の制御に用いるトルク指令Tm2*を所定トルクTref1に向けて徐々に大きく(絶対値としては小さく)すると共に油圧ブレーキの制御に用いるブレーキトルク指令Tb*を徐々に小さく(絶対値としては大きく)するものにおいて、モータMG2のトルク指令Tm2*が所定トルクTref1より小さな閾値Tref2以下のときにはモータMG2による制振制御を実行し(トルク指令Tm2*と制振トルクTvとの和を実行用トルクT2*に設定してモータMG2を制御し)、モータMG2のトルク指令Tm2*が閾値Tref2より大きいときには、モータMG2による制振制御を実行しない(トルク指令Tm2*を実行用トルクT2*に設定してモータMG2を制御する)ものに限定されるものではなく、エンジンを運転しながら減速するときに、第2モータについては制動トルクが機械的機構で異音を生じ得る異音範囲より大きな第1所定制動トルクに向けて徐々に小さくなるようトルク指令を設定して制御し、制動力付与装置については制動力が徐々に大きくなるよう制動力指令を設定して制御する、所定すり替え処理を実行するものにおいて、第2モータについては、トルク指令が第1所定制動トルクより大きな第2所定制動トルク以上のときには、制振制御が行なわれるよう制御し、トルク指令が第2所定制動トルクより小さいときには、制振制御が行なわれないよう制御するものであれば如何なるものとしても構わない。
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。