図1は、本発明の一実施例としてのハイブリッド自動車20の構成の概略を示す構成図である。実施例のハイブリッド自動車20は、図示するように、ガソリンや軽油などを燃料として動力を出力するエンジン22と、エンジン22を駆動制御するエンジン用電子制御ユニット(以下、エンジンECUという)24と、エンジン22の出力軸としてのクランクシャフト26にダンパ28を介して複数のピニオンギヤ33を連結したキャリア34が接続されると共に駆動輪63a,63bにデファレンシャルギヤ62とギヤ機構60とを介して連結された駆動軸としてのリングギヤ軸32aにリングギヤ32が接続されたプラネタリギヤ30と、例えば周知の同期発電電動機として構成されてプラネタリギヤ30のサンギヤ31に回転子が接続されたモータMG1と、例えば周知の同期発電電動機として構成されて駆動軸としてのリングギヤ軸32aに減速ギヤ35を介して回転子が接続されたモータMG2と、モータMG1,MG2を駆動するためのインバータ41,42と、インバータ41,42のスイッチング素子を制御することによってモータMG1,MG2を駆動制御するモータ用電子制御ユニット(以下、モータECUという)40と、例えばリチウムイオン二次電池として構成されてインバータ41,42を介してモータMG1,MG2と電力をやりとりするバッテリ50と、バッテリ50を管理するバッテリ用電子制御ユニット(以下、バッテリECUという)52と、車両全体を制御するハイブリッド用電子制御ユニット(以下、HVECUという)70と、を備える。
エンジンECU24は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。エンジンECU24には、エンジン22の運転状態を検出する各種センサから信号、例えば、クランクシャフト26の回転位置を検出するクランクポジションセンサからのクランクポジションθcrやエンジン22の冷却水の温度を検出する水温センサからの冷却水温Tw,燃焼室内に取り付けられた圧力センサからの筒内圧力Pin,燃焼室へ吸排気を行なう吸気バルブや排気バルブを開閉するカムシャフトの回転位置を検出するカムポジションセンサからのカムポジションθca,スロットルバルブのポジションを検出するスロットルバルブポジションセンサからのスロットル開度TH,吸気管に取り付けられたエアフローメータからの吸入空気量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も演算している。
バッテリECU52は、図示しないが、CPUを中心とするマイクロプロセッサとして構成されており、CPUの他に、処理プログラムを記憶するROMやデータを一時的に記憶するRAM,入出力ポート,通信ポートを備える。バッテリECU52には、バッテリ50を管理するのに必要な信号、例えば、バッテリ50の端子間に設置された電圧センサからの端子間電圧Vbやバッテリ50の出力端子に接続された電力ラインに取り付けられた電流センサからの充放電電流Ib(バッテリ50から放電するときが正の値),バッテリ50に取り付けられた温度センサ51からの電池温度Tbなどが入力されており、必要に応じてバッテリ50の状態に関するデータを通信によりHVECU70に送信する。また、バッテリECU52は、バッテリ50を管理するために、電流センサにより検出された充放電電流Ibの積算値に基づいてそのときのバッテリ50から放電可能な電力の容量の全容量に対する割合である蓄電割合SOCを演算したり、演算した蓄電割合SOCと電池温度Tbとに基づいてバッテリ50を充放電してもよい最大許容入出力電力である入出力制限Win,Woutを演算したりしている。なお、バッテリ50の入出力制限Win,Woutは、電池温度Tbに基づいて入出力制限Win,Woutの基本値としての基本入出力制限Wintmp,Wouttmpを設定し、バッテリ50の蓄電割合SOCに基づいて入出力制限用補正係数kin,koutを設定し、設定した基本入出力制限Wintmp,Wouttmpに入出力制限用補正係数kin,koutを乗じる、ことによって設定することができる。電池温度Tbと基本入出力制限Wintmp,Wouttmpとの関係の一例を図2に示し、バッテリ50の蓄電割合SOCと出力制限用補正係数kout,入力制限用補正係数kinとの関係の一例を図3に示す。
図2に示すように、基本入出力制限Wintmp,Wouttmpは、電池温度Tbが所定温度Tb1(例えば、48℃や50℃,52℃など)以下の領域では値−W1,W1が設定され、電池温度Tbが所定温度Tb1より高い領域では電池温度Tbが高いほど絶対値が値W1から値0に向けて小さくなり値0で一定となるよう設定される。図3に示すように、出力制限用補正係数koutは、蓄電割合SOCが所定割合S1(例えば、35%や40%,45%など)以上の領域では値1が設定され、蓄電割合SOCが所定割合S1未満の領域では蓄電割合SOCが小さいほど値1から値0に向けて小さくなり値0で一定となるよう設定される。また、入力制限用補正係数kinは、蓄電割合SOCが所定割合S2(例えば、55%や60%,65%など)以下の領域では値1が設定され、蓄電割合SOCが所定割合S2より大きい領域では蓄電割合SOCが大きいほど値1から値0に向けて小さくなり値0で一定となるよう設定される。したがって、出力制限Woutは、電池温度Tbが所定温度Tb1以下で蓄電割合SOCが所定割合S1以上の領域では値W1となり、電池温度Tbが所定温度Tb1より高い領域で高くなったり蓄電割合SOCが所定割合S1より小さい領域で小さくなったりするほど絶対値が小さくなる。また、入力制限Winは、電池温度Tbが所定温度Tb1以下で蓄電割合SOCが所定割合S2以下の領域では値−W1となり、電池温度Tbが所定温度Tb1より高い領域で高くなったり蓄電割合SOCが所定割合S2より大きい領域で大きくなったりするほど絶対値が小さくなる。
HVECU70は、CPU72を中心とするマイクロプロセッサとして構成されており、CPU72の他に、処理プログラムを記憶するROM74やデータを一時的に記憶するRAM76,入出力ポート,通信ポートを備える。HVECU70には、イグニッションスイッチ80からのイグニッション信号やシフトレバー81の操作位置を検出するシフトポジションセンサ82からのシフトポジションSP,アクセルペダル83の踏み込み量を検出するアクセルペダルポジションセンサ84からのアクセル開度Acc,ブレーキペダル85の踏み込み量を検出するブレーキペダルポジションセンサ86からのブレーキペダルポジションBP,車速センサ88からの車速Vなどが入力ポートを介して入力されている。HVECU70は、上述したように、エンジンECU24やモータECU40,バッテリECU52と通信ポートを介して接続されており、エンジンECU24やモータECU40,バッテリECU52と各種制御信号やデータのやりとりを行なっている。
こうして構成された実施例のハイブリッド自動車20では、運転者によるアクセルペダルの踏み込み量に対応するアクセル開度Accと車速Vとに基づいて駆動軸としてのリングギヤ軸32aに出力すべき要求トルクTr*を計算し、この要求トルクTr*に対応する要求動力がリングギヤ軸32aに出力されるように、エンジン22とモータMG1とモータMG2とを運転制御する。エンジン22とモータMG1とモータMG2との運転制御としては、要求動力に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にエンジン22から出力される動力のすべてがプラネタリギヤ30とモータMG1とモータMG2とによってトルク変換されてリングギヤ軸32aに出力されるようモータMG1およびモータMG2を駆動制御するトルク変換運転モードや、要求動力とバッテリ50の充放電に必要な電力との和に見合う動力がエンジン22から出力されるようにエンジン22を運転制御すると共にバッテリ50の充放電を伴ってエンジン22から出力される動力の全部またはその一部がプラネタリギヤ30とモータMG1とモータMG2とによるトルク変換を伴って要求動力がリングギヤ軸32aに出力されるようモータMG1およびモータMG2を駆動制御する充放電運転モード,エンジン22の運転を停止してモータMG2からの要求動力に見合う動力をリングギヤ軸32aに出力するよう運転制御するモータ運転モードなどがある。
次に、こうして構成された実施例のハイブリッド自動車20の動作について説明する。図4は、実施例のHVECU70により実行される駆動制御ルーチンの一例を示すフローチャートである。このルーチンは、所定時間毎(例えば数msec毎)に繰り返し実行される。
駆動制御ルーチンが実行されると、HVECU70のCPU72は、まず、アクセルペダルポジションセンサ84からのアクセル開度Accや車速センサ88からの車速V,モータMG1,MG2の回転数Nm1,Nm2,バッテリ50の入出力制限Win,Woutなど制御に必要なデータを入力する(ステップS100)。ここで、モータMG1,MG2の回転数Nm1,Nm2は、回転位置検出センサ43,44により検出されたモータMG1,MG2の回転子の回転位置θm1,θm2に基づいて演算されたものをモータECU40から通信により入力するものとした。また、バッテリ50の入出力制限Win,Woutは、バッテリ50の電池温度Tbとバッテリ50の蓄電割合SOCとに基づいて設定されたものをバッテリECU52から通信により入力するものとした。
こうしてデータを入力すると、入力したアクセル開度Accと車速Vとに基づいて走行に要求される(駆動軸としてのリングギヤ軸32aに出力すべき)要求トルクTr*を設定し、設定した要求トルクTr*にリングギヤ軸32aの回転数Nrを乗じて走行に要求される走行用パワーPdrv*を計算し、計算した走行用パワーPdrv*からバッテリ50の蓄電割合SOCに基づく充放電要求パワーPb*(バッテリ50から放電するときが正の値)を減じて車両に要求される(エンジン22から出力すべき)要求パワーPe*を計算する(ステップS110)。ここで、要求トルクTr*は、実施例では、アクセル開度Accと車速Vと要求トルクTr*との関係を予め定めて要求トルク設定用マップとしてROM74に記憶しておき、アクセル開度Accと車速Vとが与えられると記憶したマップから対応する要求トルクTr*を導出して設定するものとした。要求トルク設定用マップの一例を図5に示す。また、リングギヤ軸32aの回転数Nrは、モータMG2の回転数Nm2を減速ギヤ35のギヤ比Grで除して計算したり、車速Vに換算係数を乗じて計算したりすることができる。
続いて、後述の目標運転ポイント設定処理により、エンジン22の目標回転数Ne*と目標トルクTe*とを設定する(ステップS120)。そして、前回に本ルーチンを実行しときに後述のステップS170の処理で設定したモータMG1のトルク指令(前回Tm1*)とプラネタリギヤ30のギヤ比(サンギヤ31の歯数/リングギヤ32の歯数)ρとを用いて次式(1)によりエンジン22から出力されていると推定されるトルクとしての出力トルクTeestを計算し(ステップS130)、エンジン22の目標回転数Ne*とリングギヤ軸32aの回転数Nr(=Nm2/Gr)とプラネタリギヤ30のギヤ比ρとを用いて式(2)によりモータMG1の目標回転数Nm1*を計算すると共に計算したモータMG1の目標回転数Nm1*と入力したモータMG1の回転数Nm1とエンジン22の出力トルクTeとプラネタリギヤ30のギヤ比ρとを用いて式(3)によりモータMG1のトルク指令Tm1*の仮の値としての仮トルクTm1tmpを計算する(ステップS140)。図6は、エンジン22からパワーを出力しながら走行しているときのプラネタリギヤ30の回転要素における回転数とトルクとの力学的な関係を示す共線図の一例を示す説明図である。図中、左のS軸はモータMG1の回転数Nm1であるサンギヤ31の回転数を示し、C軸はエンジン22の回転数Neであるキャリア34の回転数を示し、R軸はモータMG2の回転数Nm2を減速ギヤ35のギヤ比Grで除して得られるリングギヤ32(リングギヤ軸32a)の回転数Nrを示す。また、R軸上の2つの太線矢印は、モータMG1から出力されてプラネタリギヤ30を介してリングギヤ軸32aに作用するトルクと、モータMG2から出力されて減速ギヤ35を介してリングギヤ軸32aに作用するトルクとを示す。式(1),式(2)は、この共線図を用いれば容易に導くことができる。また、式(3)は、モータMG1を目標回転数Nm1*で回転させる(エンジン22を目標回転数Ne*で回転させる)ためのフィードバック制御における関係式であり、式(3)中、右辺第1項はフィードフォワード項であり、右辺第2項,第3項はフィードバックの比例項,積分項である。右辺第1項は、共線図を用いれば容易に導くことができる。また、右辺第2項の「k1」は比例項のゲインであり、右辺第3項の「k2」は積分項のゲインである。
Teest=(1+ρ)・前回Tm1*/ρ (1)
Nm1*=Ne*・(1+ρ)/ρ-Nm2/(Gr・ρ) (2)
Tm1tmp=-ρ・Teest/(1+ρ)+k1・(Nm1*-Nm1)+k2・∫(Nm1*-Nm1)dt (3)
続いて、次式(4)に示すように、要求トルクTr*にモータMG1のトルク指令Tm1*をプラネタリギヤ30のギヤ比ρで除したものを加えて更に減速ギヤ35のギヤ比Grで除してモータMG2のトルク指令Tm2*の仮の値としての仮トルクTm2tmpを計算する(ステップS150)。ここで、式(3)は、図6の共線図を用いれば容易に導くことができる。
Tm2tmp=(Tr*+Tm1*/ρ)/Gr (4)
そして、次式(5)および式(6)を共に満たすモータMG1から出力してもよいトルクの上下限としてのトルク制限Tm1min,Tm1maxを設定する(ステップS160)。ここで、式(5)は、モータMG1とモータMG2とからリングギヤ軸32aに出力されるトルクの総和が値0から要求トルクTr*までの範囲内となる関係であり、式(6)は、モータMG1とモータMG2とによって入出力される電力の総和がバッテリ50の入出力制限Win,Woutの範囲内となる関係である。図7は、モータMG1のトルク制限Tm1min,Tm1maxの一例を示す説明図である。トルク制限Tm1min,Tm1maxは、図中斜線で示した領域における仮トルクTm1tmpの最大値および最小値として求めることができる。図7から分かるように、要求トルクTr*が正の値のときには、モータMG1とモータMG2とからリングギヤ軸32aに出力されるトルクの総和が要求トルクTr*となる関係とモータMG1とモータMG2とによって入出力される電力の総和がバッテリ50の入力制限Winとなる関係とを満たすモータMG1の駆動点をトルク制限Tm1minに設定する即ち式(5)と式(6)とから得られる式(7)によりトルク制限Tm1minを計算すると共に、モータMG1とモータMG2とからリングギヤ軸32aに出力されるトルクの総和が値0となる関係とモータMG1とモータMG2とによって入出力される電力の総和がバッテリ50の出力制限Woutとなる関係とを満たすモータMG1の駆動点をトルク制限Tm1maxに設定する即ち式(5)と式(6)とから得られる式(8)によりトルク制限Tm1maxを計算することになる。
0≦-Tm1tmp/ρ+Tm2tmp・Gr≦Tr* (5)
Win≦Tm1tmp・Nm1+Tm2tmp・Nm2≦Wout (6)
Tm1min=(Win・Gr-Tr*・Nm2)/(Nm1・Gr+Nm2/ρ) (7)
Tm1max=Wout・Gr/(Nm1・Gr+Nm2/ρ) (8)
こうしてトルク制限Tm1min,Tm1maxを設定すると、次式(9)に示すように、モータMG1の仮トルクTm1tmpをトルク制限Tm1min,Tm1maxで制限してモータMG1のトルク指令Tm1*を設定する(ステップS170)。
Tm1*=max(min(Tm1tmp,Tm1max),Tm1min) (9)
そして、次式(10)および式(11)に示すように、バッテリ50の入出力制限Win,WoutとモータMG1のトルク指令Tm1*にモータMG1の現在の回転数Nm1を乗じて得られるモータMG1の消費電力(発電電力)との差分をモータMG2の回転数Nm2で除して、モータMG2から出力してもよいトルクの上下限としてのトルク制限Tm2min,Tm2maxを計算し(ステップS180)、式(12)に示すように、モータMG2の仮トルクTm2tmpをトルク制限Tm2min,Tm2maxで制限してモータMG2のトルク指令Tm2*を設定する(ステップS190)。
Tm2min=(Win-Tm1*・Nm1)/Nm2 (10)
Tm2max=(Wout-Tm1*・Nm1)/Nm2 (11)
Tm2*=max(min(Tm2tmp,Tm2max),Tm2min) (12)
こうしてエンジン22の目標回転数Ne*や目標トルクTe*,モータMG1,MG2のトルク指令Tm1*,Tm2*を設定すると、エンジン22の目標回転数Ne*と目標トルクTe*とについてはエンジンECU24に、モータMG1,MG2のトルク指令Tm1*,Tm2*についてはモータECU40にそれぞれ送信して(ステップS200)、本ルーチンを終了する。エンジン22の目標回転数Ne*と目標トルクTe*とを受信したエンジンECU24は、エンジン22が目標回転数Ne*と目標トルクTe*とからなる運転ポイントで運転されるようエンジン22の吸入空気量制御や燃料噴射制御,点火制御などを行なう。また、モータMG1,MG2のトルク指令Tm1*,Tm2*を受信したモータECU40は、モータMG1,MG2がトルク指令Tm1*,Tm2*で駆動されるようインバータ41,42のスイッチング素子のスイッチング制御を行なう。こうした処理により、エンジン22を目標回転数Ne*と目標トルクTe*とからなる運転ポイントで運転しながらバッテリ50の入出力制限Win,Woutの範囲内で要求トルクTr*(走行用パワーPdrv*)をリングギヤ軸32aに出力して走行することができる。
次に、上述の図2の駆動制御ルーチンのステップS120の処理、即ち、エンジン22の目標回転数Ne*と目標トルクTe*とを設定する処理について図8の目標運転ポイント設定処理を用いて説明する。図8の目標運転ポイント設定処理では、HVECU70のCPU72は、まず、要求パワーPe*とエンジン22を効率よく動作させる燃費動作ラインとに基づいて、エンジン22を効率よく運転する運転ポイント(以下、燃費運転ポイントという)としての燃費回転数Neefおよび燃費トルクTeefを設定する(ステップS300)。エンジン22の動作ラインの一例と燃費回転数Neefおよび燃費トルクTeefを設定する様子とを図9に示す。燃費回転数Neefおよび燃費トルクTeefは、図示するように、燃費動作ラインと要求パワーPe*が一定の曲線(要求パワーPe*の等パワーライン)との交点として求めることができる。
続いて、アクセル開度Accを閾値Arefと比較する(ステップS310)。ここで、閾値Arefは、運転者に加速フィーリングを与えるためにエンジン22の回転数を徐々に増加させる加速フィーリング演出処理を実行するか否かを判定するのに用いられるものであり、例えば、50%や60%,70%などを用いることができる。
アクセル開度Accが閾値Aref未満のときには、加速フィーリング演出処理を実行しないと判断し、燃費回転数Neefおよび燃費トルクTeefをエンジン22の目標回転数Ne*および目標トルクTe*に設定して(ステップS320)、目標運転ポイント設定処理を終了する。こうした処理により、燃費回転数Neefおよび燃費トルクTeefからなる燃費運転ポイントでエンジン22を運転しながらバッテリ50の入出力制限Win,Woutの範囲内で要求トルクTr*(走行用パワーPdrv*)をリングギヤ軸32aに出力して走行することができる。
アクセル開度Accが閾値Aref以上のときには、加速フィーリング演出処理を実行すると判断し、前回に駆動制御ルーチンを実行したときに入力したアクセル開度(前回Acc)を閾値Arefと比較する(ステップS330)。この処理は、アクセル開度Accが閾値Aref未満から閾値Aref以上に至った直後であるか否か、即ち、加速フィーリング演出処理の初回実行時(開始時)であるか否かを判定する処理である。
前回のアクセル開度(前回Acc)が閾値Aref未満のときには、加速フィーリング演出処理の初回実行時(開始時)であると判断し、アクセル開度Accと車速Vとに基づいて、これらに対応するエンジン22の回転数の目標値としてのアクセル対応回転数Neaccを設定し(ステップS340)、設定したアクセル対応回転数Neaccをエンジン22の目標回転数Ne*の仮の値としての仮目標回転数Netmpに設定する(ステップS350)。ここで、アクセル対応回転数Neaccは、実施例では、アクセル開度Accと車速Vとアクセル対応回転数Neaccとの関係を予め定めてアクセル対応回転数設定用マップとしてROM74に記憶しておき、アクセル開度Accと車速Vとが与えられると記憶したマップから対応するアクセル対応回転数Neaccを導出して設定するものとした。アクセル対応回転数設定用マップの一例を図10に示す。図10の例では、アクセル対応回転数Neaccは、運転者に与える加速フィーリングを考慮して、アクセル開度Accが大きいほど且つ車速Vが高いほど大きくなる傾向に設定するものとした。このアクセル対応回転数Neacc、即ち、加速フィーリング演出処理の初回実行時の仮目標回転数Netmp(以下、初期仮目標回転数Netmp0という)は、燃費回転数Neefに比してある程度小さな値(且つ、アクセル開度Accが閾値Aref以上に至る前の燃費回転数Neefより大きな値)となるよう設定される。これは、加速フィーリング演出処理による加速フィーリングを運転者が感じやすいようにするためである。
前回のアクセル開度(前回Acc)が閾値Aref以上のときには、加速フィーリング演出処理の初回実行時でない(2回目以降の実行時すなわち継続中である)と判断し、上述のアクセル対応回転数Neaccが前回に駆動制御ルーチンを実行したときから変化していないと仮定したときの、エンジン22の回転数上昇勾配(駆動制御ルーチン(目標運転ポイント設定処理)の実行間隔におけるエンジン22の回転数上昇量)の目標値としての目標上昇量ΔNeを設定する(ステップS360〜S390)。
この目標上昇量ΔNeの設定処理は、今回に駆動制御ルーチンを実行したときに入力した車速Vから前回に駆動制御ルーチンを実行したときに入力した車速(前回V)を減じて、駆動制御ルーチンの実行間隔における車速上昇量ΔVを計算し(ステップS360)、アクセル開度Accと車速Vとに基づいて、プラネタリギヤ30の仮想減速比(エンジン22(プラネタリギヤ30のキャリア34)の回転数/リングギヤ軸32a(プラネタリギヤ30のリングギヤ32)の回転数)の目標値としての目標仮想減速比γを設定し(ステップS370)、設定した目標仮想減速比γに車速上昇量ΔVを乗じて、車速上昇量ΔVに対応するエンジン22の回転数上昇勾配の目標値としての車速対応上昇量ΔNevを計算し(ステップS380)、計算した車速対応上昇量ΔNevと、時間経過に対応するエンジン22の回転数上昇勾配の目標値としての時間対応上昇量ΔNetと、のうち大きい方を目標上昇量ΔNeに設定する(ステップS390)、ことによって行なうものとした。
ここで、目標加速減速比γは、実施例では、アクセル開度Accと車速Vと目標仮想減速比γとの関係を予め定めて目標仮想減速比設定用マップとしてROM74に記憶しておき、アクセル開度Accと車速Vとが与えられると記憶したマップから対応する目標仮想減速比γを導出して設定するものとした。目標仮想減速比設定用マップの一例を図11に示す。図11の例では、目標仮想減速比γは、運転者に与える加速フィーリングを考慮して、アクセル開度Accが大きいほど且つ車速Vが高いほど大きくなる傾向に設定するものとした。
また、時間対応上昇量ΔNetは、実施例では、加速フィーリング演出処理を実行するときに、平坦路や降坂路の走行中など運転者のアクセルペダル83の踏み込みに応じて車速Vが上昇しやすい場合の車速対応上昇量ΔNevより小さくなり且つ登坂路の走行時など運転者のアクセルペダル83の踏み込みに対して車速Vが上昇しにくい場合の車速対応上昇量ΔNevより大きくなる程度の値に設定されており、例えば、平坦路や降坂路で運転者に加速フィーリングを与えず(目標上昇量ΔNeに設定されず)且つ登坂路で運転者に加速フィーリングを与えることが可能な回転数上昇勾配などを予め実験や解析によって定めて用いることができる。
続いて、アクセル変化勾配(駆動制御ルーチンの実行間隔におけるアクセル開度Accの変化量)に対応するエンジン22の回転数変化勾配の目標値としてのアクセル対応変化量ΔNeaccを設定する(ステップS400)。アクセル対応変化量ΔNeaccは、実施例では、アクセル開度Accと車速Vとに基づいて上述のステップS340の処理と同様にアクセル対応回転数Neaccを設定し、設定したアクセル対応回転数Neaccから前回に駆動制御ルーチンを実行したときに設定したアクセル対応回転数(前回Neacc)を減じて計算するものとした。
こうして目標上昇量ΔNeやアクセル対応変化量ΔNeaccを設定すると、前回に駆動制御ルーチンを実行したときに設定した目標回転数(前回Ne*)にアクセル対応変化量ΔNeaccと目標上昇量ΔNeとを加えてエンジン22の目標回転数Ne*の仮の値としての仮目標回転数Netmpを計算する(ステップS410)。
このようにして、加速フィーリング演出処理の初回実行時(開始時)にはステップS340,S350の処理によって仮目標回転数Netmpを設定し、2回目以降の実行時(継続中)にはステップS360〜S410処理によって仮目標回転数Netmpを設定することにより、アクセル対応回転数Neaccを一定とする(アクセル対応目標変化量ΔNeaccを考慮しない)と共に仮目標回転数Netmpを目標回転数Ne*に設定するときを考えれば、仮目標回転数Netmp(目標回転数Ne*)は、燃費回転数Neefより小さな初期仮目標回転数Netmp0から、車速対応上昇量ΔNevと時間対応上昇量ΔNetとのうち大きい方を設定した目標上昇量ΔNe(目標上昇勾配)で徐々に増加することになる。
次に、モータMG1の性能上の上下限回転数Nm1max,Nm1minに対応するエンジン22の上下限回転数Nemax(mg1),Nemin(mg1)や、プラネタリギヤ30のピニオンギヤ33の性能上の上下限回転数Npinmax,Npinminに対応するエンジン22の上下限回転数Nemax(pin),Nemin(pin),バッテリ50の電池温度Tbと蓄電割合SOCとに対応するエンジン22の上下限回転数Nemax(bat),Nemin(bat)を設定する(ステップS420〜S440)。
ここで、エンジン22の上下限回転数Nemax(mg1),Nemin(mg1)は、モータMG1の性能上の上下限回転数Nm1max,Nm1minとリングギヤ軸32aの回転数Nr(=Nm2/Gr)とプラネタリギヤ30のギヤ比ρとを用いて次式(13)および式(14)により計算することができる。モータMG1の性能上の上下限回転数Nm1max,Nm1minは、モータMG1の定格値における正回転側としての上限回転数と負回転側としての下限回転数である。また、式(13)および式(14)は、図6の共線図を用いれば容易に導くことができる。
Nemax(mg1)=ρ・Nm1max/(1+ρ)+Nm2/(Gr・(1+ρ)) (13)
Nemin(mg1)=ρ・Nm1min/(1+ρ)+Nm2/(Gr・(1+ρ)) (14)
また、エンジン22の上下限回転数Nemax(pin),Nemin(pin)は、プラネタリギヤ30のピニオンギヤ33の性能上の上下限回転数Npinmax,Npinminとリングギヤ軸32aの回転数Nr(=Nm2/Gr)とプラネタリギヤ30におけるピニオンギヤ33に対するギヤ比(ピニオンギヤの歯数/リングギヤの歯数)ρpとを用いて次式(15)および式(16)によりエンジン22の上下限回転数Nemax(pin),Nemin(pin)を計算することができる。ピニオンギヤ33の性能上の上下限回転数Npinmax,Npinminは、プラネタリギヤ30の構造上の定格値における正回転側としての上限回転数と負回転側としての下限回転数である。
Nemax(pin)=Nm2/Gr+ρp・Npinmax (15)
Nemin(pin)=Nm2/Gr+ρp・Npinmin (16)
さらに、エンジン22の上下限回転数Nemax(bat),Nemin(bat)は、実施例では、電池温度Tbに基づいて上下限回転数Nemax(bat),Nemin(bat)の基本値としての基本上下限回転数Nemaxtmp(bat),Nemintmp(bat)を設定し、バッテリ50の蓄電割合SOCに基づいて上下限用補正係数kmax,kminを設定し、次式(17)および式(18)に示すように、基本上下限回転数Nemaxtmp(bat),Nemintmp(bat)と燃費回転数Neefとの差分に上下限用補正係数kmax,kminを乗じてこれを燃費回転数Neefに加える、ことによって設定するものとした。
Nemax(bat)=Neef+(Nemaxtmp(bat)-Neef)・kmax (17)
Nemin(bat)=Neef+(Nemintmp(bat)-Neef)・kmin (18)
電池温度Tbとエンジン22の上下限回転数Nemax(bat),Nemin(bat)との関係の一例を図12に示し、蓄電割合SOCと上限用補正係数kmax,下限用補正係数kminとの関係の一例を図13に示す。なお、図12の所定温度Tb1,図13の所定割合S1,S2については上述した。
図12に示すように、基本上下限回転数Nemaxtmp(bat),Nemintmp(bat)は、電池温度Tbが所定温度(Tb1−ΔTb)以下の領域では燃費回転数Neefに対して上側,下側に一定の余裕αを持たせた値に設定され、電池温度Tbが所定温度(Tb1−ΔTb)より高く所定温度Tb1未満の領域では電池温度Tbが所定温度Tb1に近づくほど燃費回転数Neefに対して上側,下側の余裕が小さくなるよう(燃費回転数Neefに近づくよう)設定され、電池温度Tbが所定温度Tb1以上の領域では共に燃費回転数Neefに設定される。ここで、マージンΔTbは、例えば、5℃や7℃,10℃などを用いることができる。
図13に示すように、上限用補正係数kmaxは、蓄電割合SOCが所定割合(S2−ΔS2)以下の領域では値1が設定され、蓄電割合SOCが所定割合(S2−ΔS2)より大きく所定割合S2未満の領域では蓄電割合SOCが所定割合S2に近づくほど値1から値0に向けて小さくなるよう設定され、蓄電割合SOCが所定割合S2以上の領域では値0が設定される。また、下限用補正係数kminは、蓄電割合SOCが所定割合(S1+ΔS1)以上の領域では値1が設定され、蓄電割合SOCが所定割合(S1+ΔS1)未満で所定割合S1より大きい領域では蓄電割合SOCが所定割合S1に近づくほど値1から値0に向けて小さくなるよう設定され、蓄電割合SOCが所定割合S1以下の領域では値0が設定される。ここで、マージンΔS1,ΔS2は、それぞれ、例えば、3%や5%,7%などを用いることができる。
したがって、エンジン22の上限回転数Nemax(bat)は、電池温度Tbが所定温度(Tb1−ΔTb)以下で且つ蓄電割合SOCが所定割合(S2−ΔS2)以下のときには燃費回転数Neefより一定の余裕分αだけ大きな値となり、電池温度Tbが所定温度Tb1以上のときや蓄電割合SOCが所定割合S2以上のときには燃費回転数Neefとなり、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S2−ΔS2)から所定割合S2までの間のときには電池温度Tbが所定温度Tb1に近いほど且つ蓄電割合SOCが所定割合S2に近いほど燃費回転数Neefに近い値となる。また、エンジン22の下限回転数Nemin(bat)は、電池温度Tbが所定温度(Tb1−ΔTb)以下で且つ蓄電割合SOCが所定割合(S1+ΔS1)以上のときには燃費回転数Neefより一定の余裕分だけ小さな値となり、電池温度Tbが所定温度Tb1以上のときや蓄電割合SOCが所定割合S1以下のときには燃費回転数Neefとなり、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S1+ΔS1)から所定割合S1までの間のときには電池温度Tbが所定温度Tb1に近いほど且つ蓄電割合SOCが所定割合S1に近いほど燃費回転数Neefに近い値となる。このようにエンジン22の上下限回転数Nemax(bat),Nemin(bat)を設定する理由については後述する。
こうしてエンジン22の上下限回転数Nemax(mg1),Nemin(mg1),Nemax(pin),Nemin(pin),Nemax(bat),Nemin(bat)を設定すると、次式(19)に示すように、エンジン22の上限回転数Nemax(mg1),Nemax(pin),Nemax(bat)と、ドライバビリティ(例えば、エンジン22の吹き上がりの抑制など)を考慮したエンジン22の上限回転数Nemax(dr)と、のうち最小値をエンジン22の許容上限回転数Nemaxに設定すると共に、式(20)に示すように、エンジン22の下限回転数Nemin(mg1),Nemin(pin),Nemax(bat)のうち最大値をエンジン22の許容下限回転数Neminに設定する(ステップS450)。
Nemax=min(Nemax(mg1),Nemax(pin),Nemax(bat),Nemax(dr)) (19)
Nemin=max(Nemin(mg1),Nemin(pin),Nemin(bat)) (20)
そして、次式(21)に示すように、エンジン22の仮目標回転数Netmpを許容上限回転数Nemaxおよび許容下限回転数Neminで制限してエンジン22の目標回転数Ne*を設定すると共に(ステップS460)、設定した目標回転数Ne*と上述の燃費動作ラインとに基づいてエンジン22の目標トルクTe*を設定して(ステップS470)、目標運転ポイント設定処理を終了する。ここで、エンジン22の目標トルクTe*は、目標回転数Ne*と燃費動作ラインとの交点として求めることができる(図9参照)。したがって、バッテリ50の充放電要求パワーPb*を値0とすれば、目標回転数Ne*が燃費回転数Neefより小さいときには、エンジン22からのパワー(回転数Ne*,トルクTe*)の走行用パワーPdrv*(要求パワーPe*)に対する不足分がバッテリ50から放電され、目標回転数Ne*が燃費回転数Neefより大きいときには、エンジン22からのパワーの走行用パワーPdrv*に対する超過分がバッテリ50に充電されると考えられる。そして、目標回転数Ne*が燃費回転数Neefに対して小さいほどバッテリ50から大きな電力が出力され(電池温度Tbの上昇や蓄電割合SOCの低下が迅速になり)、目標回転数Ne*が燃費回転数Neefに対して大きいほどバッテリ50に大きな電力が入力される(電池温度Tbや蓄電割合SOCの上昇が迅速になる)と考えられる。
Ne*=max(min(Netmp,Nemax),Nemin) (21)
実施例では、上述したように、アクセル対応回転数Neaccを一定とする(アクセル対応目標変化量ΔNeaccを考慮しない)と共に仮目標回転数Netmpを目標回転数Ne*に設定する(仮目標回転数Netmpが許容上下限回転数Nemax,Neminの範囲内となる)ときを考えれば、目標回転数Ne*は、燃費回転数Neefより小さな初期仮目標回転数Netmp0から、車速対応上昇量ΔNevと時間対応上昇量ΔNetとのうち大きい方を設定した目標上昇量ΔNe(目標上昇勾配)で徐々に増加する。これにより、平坦路や降坂路での走行時などアクセルペダル83の踏み込みに応じて車速Vが上昇しやすいときには車速対応上昇量ΔNevを用いて、登坂路での走行時などアクセルペダル83の踏み込みに対して車速Vが上昇しにくいときには時間対応上昇量ΔNetを用いて、エンジン22の回転数を上昇させて、加速フィーリングを運転者に与えることができる。この結果、アクセルペダル83の踏み込みに対して車速Vが上昇しにくいときでも、加速フィーリングを運転者に与えることができ、ドライバビリティが悪化するのを抑制することができる。そして、実施例では、アクセル対応目標変化量ΔNeaccを用いて仮目標回転数Netmpひいては目標回転数Ne*を設定するから、アクセル開度Accの変化を反映した加速フィーリングを運転者に与えることができる。
ここで、加速フィーリング演出処理として、エンジン22の回転数を、燃費回転数Neefより小さな初期回転数Ne0から燃費回転数Neefを跨いでそれより大きな回転数まで徐々に増加させるときを考える。なお、初期回転数Ne0は、初期仮目標回転数Netmp0と許容下限回転数Neminとのうち大きい方の回転数である。また、ここでは、エンジン22の上限回転数Nemax(mg1),Nemax(pin),Nemax(dr)が上限回転数Nemax(bat)に比して大きく且つエンジン22の下限回転数Nemin(mg1),Nemin(pin)が下限回転数Nemax(bat)にして小さいとき、即ち、エンジン22の上下限回転数Nemax(bat),Nemin(bat)が許容上下限回転数Nemax,Neminに設定されるときを考えるものとした。
このときの加速フィーリング演出処理において、第1段階(仮目標回転数Netmpが燃費回転数Neefより小さい範囲)では、仮目標回転数Netmpと許容下限回転数Neminとのうち大きい方を目標回転数Ne*に設定し、第2段階(仮目標回転数Netmpが燃費回転数Neefより大きい範囲)では、仮目標回転数Netmpと許容上限回転数Nemaxとのうち小さい方を目標回転数Ne*に設定することになる。また、上述したように、目標回転数Ne*が燃費回転数Neefに対して小さいほどバッテリ50から大きな電力が出力され(電池温度Tbの上昇や蓄電割合SOCの低下が迅速になり)、目標回転数Ne*が燃費回転数Neefに対して大きいほどバッテリ50に大きな電力が入力される(電池温度Tbや蓄電割合SOCの上昇が迅速になる)と考えられる。
加速フィーリング演出処理の第1段階に、バッテリ50の電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S1以下に至ったりすると、バッテリ50の出力制限Woutの絶対値が値W1より小さくなって(図2,図3参照)モータMG2のトルク制限Tm2maxの絶対値が小さくなる(図7,式(11)参照)ことにより、車両の加速度が低下する可能性がある。これを踏まえて、実施例では、上述の傾向(図12,図13参照)にエンジン22の下限回転数Nemin(bat)を設定するものとした。これにより、加速フィーリング演出処理の第1段階において、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S1+ΔS1)から所定割合S1までの間のときに、電池温度Tbが所定温度(Tb1−ΔTb)以下で且つ蓄電割合SOCが所定割合(S1+ΔS1)以上のときに比して目標回転数Ne*が燃費回転数Neefに近づくようにすることができるから、バッテリ50から大きな電力が出力されるのを抑制して、電池温度Tbの上昇や蓄電割合SOCの低下を抑制(緩やかに)することができる。この結果、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S1以下に至ったりするのを抑制することができ、車両の加速度が低下するのを抑制することができる。
また、加速フィーリング演出処理の第2段階に、バッテリ50の電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S2以上に至ったりすると、バッテリ50の入力制限Winの絶対値が値W1より小さくなって(図2,図3参照)モータMG1のトルク制限Tm1minの絶対値が小さくなる(図7,式(7)参照)ことにより、エンジン22の回転数が変動する可能性がある。これを踏まえて、実施例では、上述の傾向(図12,図13参照)にエンジン22の上限回転数Nemax(bat)を設定するものとした。これにより、加速フィーリング演出処理の第2段階において、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S2−ΔS2)から所定割合S2までの間のときに、電池温度Tbが所定温度(Tb1−ΔTb)以下で且つ蓄電割合SOCが所定割合(S2−ΔS2)以下のときに比して目標回転数Ne*が燃費回転数Neefに近づくようにすることができるから、バッテリ50に大きな電力が入力されるのを抑制して、電池温度Tbや蓄電割合SOCの上昇を抑制(緩やかに)することができる。この結果、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S2以上に至ったりするのを抑制することができ、エンジン22の回転数が変動する(加速フィーリング演出処理を適正に行なえなくなる)のを抑制することができる。
図14は、加速フィーリング演出処理を実行するときのエンジン22の目標回転数Ne*の時間変化の様子の一例を示す説明図である。図中、時刻t1〜t3がアクセル開度Accが閾値Aref以上の区間を示し、時刻t1〜t2が加速フィーリング演出処理の第1段階を示し、時刻t2〜t3が加速フィーリング演出処理の第2段階を示す。また、許容上下限回転数Nemax,Neminは、目標回転数Ne*の設定に影響を及ぼしそうな部分だけを示した。図示するように、時刻t1〜t3において、エンジン22の回転数を燃費回転数Neefより小さな初期回転数Ne0から目標上昇量ΔNe(目標上昇勾配)とアクセル対応目標変化量ΔNeaccと、に応じて徐々に変化させる。ここで、目標上昇量ΔNeに、車速対応上昇量ΔNevと時間対応上昇量ΔNetとのうち大きい方を設定することにより、平坦路や降坂路での走行時などアクセルペダル83の踏み込みに応じて車速Vが上昇しやすいときには車速対応上昇量ΔNevを用いて、登坂路での走行時などアクセルペダル83の踏み込みに対して車速Vが上昇しにくいときには時間対応上昇量ΔNetを用いて、エンジン22の回転数を上昇させて、運転者に加速フィーリングを与えることができる。また、時刻t1〜t2において、上述の傾向に設定した許容下限回転数Nemin以上の範囲内で目標回転数Ne*を設定することにより、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S1以下に至ったりするのを抑制することができ、モータMG2のトルク制限Tm2maxの絶対値が小さくなることに起因して車両の加速度が低下するのを抑制することができる。さらに、時刻t2〜t3において、上述の傾向に設定した上限回転数Nemax(bat)以下の範囲内で目標回転数Ne*を設定することにより、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S2以上に至ったりするのを抑制することができ、モータMG1のトルク制限Tm1minの絶対値が小さくなることに起因してエンジン22の回転数が変動する(加速フィーリング演出処理を適正に行なえなくなる)のを抑制することができる。
以上説明した実施例のハイブリッド自動車20によれば、アクセル開度Accが閾値Aref以上のとき(加速フィーリング演出処理を実行するとき)に、車速対応上昇量ΔNevと時間対応上昇量ΔNetとの大きい方を目標上昇量ΔNeに設定すると共にこの目標上昇量ΔNeを用いてエンジン22の目標回転数Ne*を設定し、エンジン22が目標回転数Ne*で運転されながら走行するようエンジン22とモータMG1,MG2とを制御するから、登坂路の走行時など車速Vが上昇しにくいときでも加速フィーリングを運転者に与えることができ、ドライバビリティが悪化するのを抑制することができる。
また、実施例のハイブリッド自動車20によれば、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S1+ΔS1)から所定割合S1までの間のときには電池温度Tbが所定温度Tb1に近いほど且つ蓄電割合SOCが所定割合S1に近いほど燃費回転数Neefに近い値となるようエンジン22の下限回転数Nemin(bat)を設定し、この下限回転数Nemin(bat)に基づく許容下限回転数Nemin以上の範囲内でエンジン22の目標回転数Ne*を設定する(徐々に上昇させる)から、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S1以下に至ったりする(出力制限Woutの絶対値が値W1より小さくなる)のを抑制することができ、モータMG2のトルク制限Tm2maxの絶対値が小さくなることに起因して車両の加速度が低下するのを抑制することができる。
さらに、実施例のハイブリッド自動車20によれば、電池温度Tbが所定温度(Tb1−ΔTb)から所定温度Tb1までの間や蓄電割合SOCが所定割合(S2−ΔS2)から所定割合S2までの間のときには電池温度Tbが所定温度Tb1に近いほど且つ蓄電割合SOCが所定割合S2に近いほど燃費回転数Neefに近い値となるようエンジン22の上限回転数Nemax(bat)を設定し、この上限回転数Nemax(bat)に基づく許容上限回転数Nemax以下の範囲内でエンジン22の目標回転数Ne*を設定する(徐々に上昇させる)から、電池温度Tbが所定温度Tb1以上に至ったり蓄電割合SOCが所定割合S2以上に至ったりする(入力制限Winの絶対値が値W1より小さくなる)のを抑制することができ、モータMG1のトルク制限Tm1minの絶対値が小さくなることに起因してエンジン22の回転数が変動するのを抑制することができる。
加えて、実施例のハイブリッド自動車20によれば、目標上昇量ΔNeとアクセル対応目標変化量ΔNeaccとを用いてエンジン22の目標回転数Ne*を設定するから、アクセル開度Accの変化を反映して加速フィーリングを運転者に与えることができる。
実施例のハイブリッド自動車20では、バッテリ50の電池温度Tbと蓄電割合SOCとに対応するエンジン22の上限回転数Nemax(bat)を用いてエンジン22の許容上限回転数Nemaxを設定するものとしたが、上限回転数Nemax(bat)を用いずに、許容上限回転数Nemaxを設定するものとしてもよい。この場合、上限回転数Nemax(bat)に代えて、バッテリ50の電池温度Tbに対応する(蓄電割合SOCを考慮しない)エンジン22の上限回転数Nemax(Tb)や、バッテリ50の蓄電割合SOCに対応する(電池温度Tbを考慮しない)エンジン22の上限回転数Nemax(SOC)を用いるものとしてもよい。また、バッテリ50の入力制限Winに対応するエンジン22の上限回転数Nemax(Win)を用いてエンジン22の許容上限回転数Nemaxを設定するものとしてもよい。
実施例のハイブリッド自動車20では、バッテリ50の電池温度Tbと蓄電割合SOCとに対応するエンジン22の下限回転数Nemin(bat)を用いてエンジン22の許容下限回転数Neminを設定するものとしたが、下限回転数Nemin(bat)を用いずに、許容下限回転数Neminを設定するものとしてもよい。この場合、下限回転数Nemin(bat)に代えて、バッテリ50の電池温度Tbに対応する(蓄電割合SOCを考慮しない)エンジン22の下限回転数Nemin(Tb)や、バッテリ50の蓄電割合SOCに対応する(電池温度Tbを考慮しない)エンジン22の下限回転数Nemin(SOC)を用いるものとしてもよい。また、バッテリ50の出力制限Woutに対応するエンジン22の下限回転数Nemin(Wout)を用いてエンジン22の許容下限回転数Neminを設定するものとしてもよい。
実施例のハイブリッド自動車20では、目標上昇量ΔNeとアクセル対応目標変化量ΔNeaccとを用いてエンジン22の目標回転数Ne*を設定するものとしたが、アクセル対応目標変化量ΔNeaccを用いずに目標上昇量ΔNeだけを用いてエンジン22の目標回転数Ne*を設定するものとしてもよい。
実施例のハイブリッド自動車20では、前回のエンジン22の目標回転数(前回Ne*)にアクセル対応変化量ΔNeaccと目標上昇量ΔNeとを加えて仮目標回転数Netmpを計算するものとしたが、前回の目標回転数(前回Ne*)に代えて、前回の仮目標回転数(前回Netmp)を用いるものとしてもよい。
実施例では、本発明を、エンジン22と、モータMG1と、駆動輪63a,63bに連結された駆動軸としてのリングギヤ軸32aとエンジン22のクランクシャフト26とモータMG1の回転子とに接続されたプラネタリギヤ30と、リングギヤ軸32aに回転子が接続されたモータMG2と、モータMG1,MG2と電力をやりとりするバッテリ50と、を備えるハイブリッド自動車20に適用するものとして説明したが、図15の変形例のハイブリッド自動車120に例示するように、エンジン22と、エンジン22にクラッチ129を介して接続されると共に駆動輪63a,63bに接続された無段変速機(CVT)130と、無段変速機130の入力軸に接続されたモータMGと、を備えるハイブリッド自動車120に適用するものとしてもよいし、図16に示すように、エンジン22と、エンジン22に接続されると共に駆動輪63a,63bに接続された無段変速機(CVT)230と、を備える自動車220に適用するものとしてもよい。
実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係について説明する。実施例では、エンジン22が「エンジン」に相当し、モータMG1とプラネタリギヤ30とが「変速伝達手段」に相当し、図2の駆動制御ルーチン(図8の目標運転ポイント設定処理を含む)を実行するHVECU70と、HVECU70からの目標回転数Ne*と目標トルクTe*とに基づいてエンジン22を制御するエンジンECU24と、HVECU70からのトルク指令Tm1*,Tm2*に基づいてモータMG1,MG2を制御するモータECU40と、が「制御手段」に相当する。
ここで、「エンジン」としては、ガソリンや軽油などを燃料として動力を出力するエンジン22に限定されるものではなく、如何なるタイプのエンジンであっても構わない。「変速伝達手段」としては、モータMG1とプラネタリギヤ30とからなる組合せによって構成されるものに限定されるものではなく、無段変速機(CVT)など、エンジンからの動力を無段階に変速して車軸に連結された駆動軸に伝達するものであれば如何なるものとしても構わない。「制御手段」としては、HVECU70とエンジンECU24とモータECU40とからなる組み合わせによって構成されるものに限定されるものではなく、単一の電子制御ユニットによって構成されるものなどとしてもよい。また、「制御手段」としては、アクセル開度Accが閾値Aref以上のとき(加速フィーリング演出処理を実行するとき)に、車速対応上昇量ΔNevと時間対応上昇量ΔNetとの大きい方を目標上昇量ΔNeに設定すると共にこの目標上昇量ΔNeを用いてエンジン22の目標回転数Ne*を設定し、エンジン22が目標回転数Ne*で運転されながら走行するようエンジン22とモータMG1,MG2とを制御するものに限定されるものではなく、所定の加速要求時には、車速上昇に対応するエンジンの回転数の上昇勾配である車速対応上昇勾配と、時間経過に対応するエンジンの回転数の上昇勾配である時間対応上昇勾配と、のうち大きい方を目標上昇勾配に設定し、設定した目標上昇勾配を用いてエンジンの回転数が上昇しながら走行するようエンジンと変速伝達手段とを制御するものであれば如何なるものとしても構わない。
なお、実施例の主要な要素と課題を解決するための手段の欄に記載した発明の主要な要素との対応関係は、実施例が課題を解決するための手段の欄に記載した発明を実施するための形態を具体的に説明するための一例であることから、課題を解決するための手段の欄に記載した発明の要素を限定するものではない。即ち、課題を解決するための手段の欄に記載した発明についての解釈はその欄の記載に基づいて行なわれるべきものであり、実施例は課題を解決するための手段の欄に記載した発明の具体的な一例に過ぎないものである。
以上、本発明を実施するための形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において、種々なる形態で実施し得ることは勿論である。